mgv-backoffice 1.36.0 → 1.36.2

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.
Files changed (60) hide show
  1. package/README.md +1794 -1719
  2. package/dist/components/BaseBadge.vue.d.ts +1 -11
  3. package/dist/components/BaseDropdown.vue.d.ts +1 -1
  4. package/dist/ui-lib.js +942 -925
  5. package/dist/ui-lib.umd.cjs +1 -1
  6. package/dist/utils/specForm.d.ts +1 -1
  7. package/package.json +54 -54
  8. package/src/components/BaseAlert.vue +104 -104
  9. package/src/components/BaseBadge.vue +12 -2
  10. package/src/components/BaseBarDistribution.test.ts +51 -51
  11. package/src/components/BaseBarDistribution.vue +73 -73
  12. package/src/components/BaseChipButton.vue +42 -42
  13. package/src/components/BaseCodeBlock.test.ts +70 -70
  14. package/src/components/BaseCodeBlock.vue +74 -74
  15. package/src/components/BaseCollapsibleSection.vue +113 -113
  16. package/src/components/BaseConfirmModal.vue +114 -114
  17. package/src/components/BaseCredentialsForm.test.ts +108 -108
  18. package/src/components/BaseCredentialsForm.vue +241 -241
  19. package/src/components/BaseDropdown.test.ts +87 -87
  20. package/src/components/BaseDropdown.vue +172 -172
  21. package/src/components/BaseEntityPickerModal.vue +330 -330
  22. package/src/components/BaseFileDropzone.vue +94 -94
  23. package/src/components/BaseFilterChip.test.ts +44 -44
  24. package/src/components/BaseFilterChip.vue +67 -67
  25. package/src/components/BaseModalShell.vue +209 -209
  26. package/src/components/BasePageHeader.vue +120 -120
  27. package/src/components/BasePillPickerModal.test.ts +95 -95
  28. package/src/components/BaseRemoveButton.vue +22 -22
  29. package/src/components/BaseSpecFields.test.ts +39 -0
  30. package/src/components/BaseSpecFields.vue +27 -3
  31. package/src/components/BaseStatBreakdown.test.ts +56 -56
  32. package/src/components/BaseStatBreakdown.vue +49 -49
  33. package/src/components/BaseStatusPill.vue +54 -54
  34. package/src/components/BaseTextInputModal.vue +140 -140
  35. package/src/components/BaseToolbarButton.test.ts +48 -48
  36. package/src/components/BaseToolbarButton.vue +94 -94
  37. package/src/composables/useFieldClasses.test.ts +55 -55
  38. package/src/composables/useFieldClasses.ts +56 -56
  39. package/src/composables/usePolling.test.ts +112 -112
  40. package/src/composables/usePolling.ts +102 -102
  41. package/src/composables/useQueryParamSync.test.ts +56 -56
  42. package/src/composables/useQueryParamSync.ts +42 -42
  43. package/src/composables/useThemeClasses.test.ts +34 -34
  44. package/src/composables/useThemeClasses.ts +137 -137
  45. package/src/index.ts +138 -138
  46. package/src/style.css +32 -32
  47. package/src/types/distribution.ts +7 -7
  48. package/src/types/pillPicker.ts +14 -14
  49. package/src/types/specField.ts +30 -30
  50. package/src/types/statBreakdown.ts +6 -6
  51. package/src/utils/format.test.ts +264 -264
  52. package/src/utils/format.ts +216 -216
  53. package/src/utils/httpColors.test.ts +100 -100
  54. package/src/utils/httpColors.ts +99 -99
  55. package/src/utils/kvRows.test.ts +47 -47
  56. package/src/utils/kvRows.ts +34 -34
  57. package/src/utils/specForm.test.ts +64 -53
  58. package/src/utils/specForm.ts +49 -48
  59. package/src/utils/validate.test.ts +82 -82
  60. package/src/utils/validate.ts +76 -76
@@ -1 +1 @@
1
- (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("vue"),require("@heroicons/vue/24/outline"),require("@heroicons/vue/24/solid"),require("vue-router")):typeof define==`function`&&define.amd?define([`exports`,`vue`,`@heroicons/vue/24/outline`,`@heroicons/vue/24/solid`,`vue-router`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UiLib={},e.Vue,e.HeroiconsOutline,e.HeroiconsSolid,e.VueRouter))})(this,function(e,t,n,r,i){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var a=function(e){return e.WARNING=`WARNING`,e.ERROR=`ERROR`,e.SUCCESS=`SUCCESS`,e.INFO=`INFO`,e}({}),o=(0,t.ref)(!1),s=!1,c=`mgv-theme`;function l(e){if(s){e!==c&&console.warn(`[ui-lib] useTheme: storage key "${e}" ignored — theme already initialized with "${c}". Call initTheme({ storageKey }) before mounting any component.`);return}if(s=!0,c=e,typeof window<`u`){let e=window.localStorage?.getItem(c);e?o.value=e===`dark`:typeof window.matchMedia==`function`&&(o.value=window.matchMedia(`(prefers-color-scheme: dark)`).matches)}typeof document<`u`&&(0,t.effectScope)(!0).run(()=>{(0,t.watch)(o,e=>{document.documentElement.classList.toggle(`dark`,e),window.localStorage?.setItem(c,e?`dark`:`light`)},{immediate:!0})})}function u(e){l(e?.storageKey??c)}function d(e){l(e?.storageKey??c);function t(){o.value=!o.value}return{isDark:o,toggleTheme:t}}var f={class:`min-w-0 flex-1`},p={key:0,class:`font-medium`},m=(0,t.defineComponent)({__name:`BaseAlert`,props:{title:{default:``},color:{default:a.ERROR},compact:{type:Boolean,default:!1}},setup(e){let r=e,{isDark:i}=d(),o={[a.ERROR]:{light:`bg-red-50 border-red-200 text-red-700`,dark:`bg-red-500/10 border-red-500/30 text-red-300`},[a.WARNING]:{light:`bg-amber-50 border-amber-200 text-amber-700`,dark:`bg-amber-500/10 border-amber-500/30 text-amber-300`},[a.SUCCESS]:{light:`bg-emerald-50 border-emerald-200 text-emerald-700`,dark:`bg-emerald-500/10 border-emerald-500/30 text-emerald-300`},[a.INFO]:{light:`bg-sky-50 border-sky-200 text-sky-700`,dark:`bg-sky-500/10 border-sky-500/30 text-sky-300`}},s=(0,t.computed)(()=>i.value?o[r.color].dark:o[r.color].light),c=(0,t.computed)(()=>{switch(r.color){case a.SUCCESS:return n.CheckCircleIcon;case a.WARNING:return n.ExclamationTriangleIcon;case a.INFO:return n.InformationCircleIcon;default:return n.ExclamationCircleIcon}}),l=(0,t.computed)(()=>{switch(r.color){case a.SUCCESS:return`text-emerald-500`;case a.WARNING:return`text-amber-500`;case a.INFO:return`text-sky-500`;default:return`text-red-500`}});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{role:`alert`,class:(0,t.normalizeClass)([`flex gap-3 mb-4 rounded-lg border text-sm transition-colors`,[e.compact?`items-start px-3 py-2 text-xs`:`items-start p-4`,s.value]])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(c.value),{class:(0,t.normalizeClass)([`shrink-0`,[e.compact?`w-4 h-4 mt-px`:`w-5 h-5 mt-0.5`,l.value]]),"aria-hidden":`true`},null,8,[`class`])),(0,t.createElementVNode)(`div`,f,[e.title?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,p,(0,t.toDisplayString)(e.title),1)):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(n.$slots,`default`)])],2))}}),h=function(e){return e.NONE=`NONE`,e.RED=`RED`,e.YELLOW=`YELLOW`,e.BLACK=`BLACK`,e.GRAY=`GRAY`,e.GREEN=`GREEN`,e.BLUE=`BLUE`,e}({}),g=`bg-red-100 text-red-700 border-red-200`,_=(0,t.defineComponent)({__name:`BaseBadge`,props:{color:{type:String,required:!1}},setup(e){let n=(0,t.useSlots)(),r=(0,t.computed)(()=>!!n.default),i=e,a={[h.RED]:`bg-red-100 text-red-700 border-red-200`,[h.GREEN]:`bg-green-100 text-green-700 border-green-200`,[h.BLUE]:`bg-blue-100 text-blue-700 border-blue-200`,[h.YELLOW]:`bg-yellow-100 text-yellow-700 border-yellow-200`,[h.GRAY]:`bg-gray-100 text-gray-700 border-gray-200`,[h.BLACK]:`bg-gray-800 text-gray-100 border-gray-700`,[h.NONE]:`bg-gray-50 text-gray-600 border-gray-200`},o=(0,t.computed)(()=>`inline-flex items-center gap-1 font-semibold text-xs leading-none px-3 py-1.5 rounded-full border ${i.color&&a[i.color]||g}`);return(e,n)=>r.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)(o.value)},[(0,t.renderSlot)(e.$slots,`default`)],2)):(0,t.createCommentVNode)(``,!0)}}),v={class:`flex px-5 py-3 text-gray-700 border border-gray-200 rounded-lg bg-gray-50 dark:bg-gray-800 dark:border-gray-700`,"aria-label":`Breadcrumb`},y={class:`inline-flex items-center space-x-1 md:space-x-3`},b={class:`inline-flex items-center`,style:{"margin-left":`0`}},x=(0,t.defineComponent)({__name:`BaseBreadcrumb`,props:{items:{type:Array,required:!1,default:void 0},path:{type:String,required:!1,default:void 0}},setup(e){let i=e,a=(0,t.computed)(()=>{if(i.items&&i.items.length>0)return i.items;let e=(i.path??(typeof window<`u`?window.location.pathname:`/`)).split(`/`).filter(e=>e!==``),t=``;return e.map(e=>(t+=`/`+e,{name:Number.isNaN(Number(e))?(e.charAt(0).toUpperCase()+e.slice(1)).replaceAll(`-`,` `):e,url:t}))});return(e,i)=>{let o=(0,t.resolveComponent)(`router-link`);return(0,t.openBlock)(),(0,t.createElementBlock)(`nav`,v,[(0,t.createElementVNode)(`ol`,y,[(0,t.createElementVNode)(`li`,b,[(0,t.createVNode)(o,{to:`/`,class:`inline-flex items-center text-sm font-medium text-gray-700 hover:text-blue-600 dark:text-gray-400 dark:hover:text-white transition-colors rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`},{default:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(r.HomeIcon),{class:`h-4 w-4 text-gray-500 mr-2`}),i[0]||=(0,t.createTextVNode)(` Home `,-1)]),_:1})]),((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(a.value,(e,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:r,class:`inline-flex items-center`,style:{"margin-left":`0`}},[(0,t.createVNode)((0,t.unref)(n.ChevronRightIcon),{class:`h-4 w-4 text-gray-500`}),(0,t.createVNode)(o,{to:e.url,class:`ml-1 text-sm font-medium text-gray-700 hover:text-blue-600 md:ml-2 dark:text-gray-400 dark:hover:text-white transition-colors rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.name),1)]),_:2},1032,[`to`])]))),128))])])}}}),S=function(e){return e.RED=`RED`,e.BLUE=`BLUE`,e.WHITE=`WHITE`,e.DARK=`DARK`,e.GREEN=`GREEN`,e.EMERALD=`EMERALD`,e.YELLOW=`YELLOW`,e.PURPLE=`PURPLE`,e.SKY=`SKY`,e.GRAY=`GRAY`,e.AMBER=`AMBER`,e}({}),C=function(e){return e.EXTRA_SMALL=`EXTRA_SMALL`,e.SMALL=`SMALL`,e.BASE=`BASE`,e.LARGE=`LARGE`,e.EXTRA_LARGE=`EXTRA_LARGE`,e}({}),ee=[`type`,`disabled`,`onClick`],te={key:0,class:`inline-flex items-center`},ne={key:1},re={key:2},ie=[`type`,`disabled`],ae={key:0,class:`inline-flex items-center`},oe={key:1},se={key:2},w=(0,t.defineComponent)({__name:`BaseButton`,props:{description:{type:String,required:!0},color:{type:String,required:!1,default:S.BLUE},to:{type:String,required:!1},type:{type:String,required:!1,default:`button`},iconLeft:{type:Boolean,required:!1,default:!1},isRounded:{type:Boolean,required:!1},outline:{type:Boolean,required:!1,default:!1},ghost:{type:Boolean,required:!1,default:!1},isDisable:{type:Boolean,required:!1},size:{type:String,required:!1},isLoading:{type:Boolean,required:!1}},setup(e){let{isDark:n}=d(),r=e;function i(){let e={[S.BLUE]:{light:`text-blue-700 border-blue-300 hover:bg-blue-50`,dark:`text-blue-400 border-blue-500/40 hover:bg-blue-500/10`},[S.GREEN]:{light:`text-green-700 border-green-300 hover:bg-green-50`,dark:`text-green-400 border-green-500/40 hover:bg-green-500/10`},[S.EMERALD]:{light:`text-emerald-700 border-emerald-300 hover:bg-emerald-50`,dark:`text-emerald-400 border-emerald-500/40 hover:bg-emerald-500/10`},[S.RED]:{light:`text-red-700 border-red-300 hover:bg-red-50`,dark:`text-red-400 border-red-500/40 hover:bg-red-500/10`},[S.YELLOW]:{light:`text-yellow-700 border-yellow-300 hover:bg-yellow-50`,dark:`text-yellow-400 border-yellow-500/40 hover:bg-yellow-500/10`},[S.PURPLE]:{light:`text-purple-700 border-purple-300 hover:bg-purple-50`,dark:`text-purple-400 border-purple-500/40 hover:bg-purple-500/10`},[S.SKY]:{light:`text-sky-700 border-sky-300 hover:bg-sky-50`,dark:`text-sky-400 border-sky-500/40 hover:bg-sky-500/10`},[S.AMBER]:{light:`text-amber-700 border-amber-300 hover:bg-amber-50`,dark:`text-amber-400 border-amber-500/40 hover:bg-amber-500/10`},[S.GRAY]:{light:`text-gray-700 border-gray-300 hover:bg-gray-50`,dark:`text-gray-300 border-gray-600 hover:bg-gray-800`},[S.DARK]:{light:`text-gray-700 border-gray-300 hover:bg-gray-50`,dark:`text-gray-300 border-gray-600 hover:bg-gray-800`},[S.WHITE]:{light:`text-gray-700 border-gray-300 hover:bg-gray-50`,dark:`text-gray-300 border-gray-600 hover:bg-gray-800`}},t=e[r.color]??e[S.BLUE],i=n.value?t.dark:t.light;return r.isDisable||r.isLoading?`border bg-transparent ${i} opacity-50 cursor-not-allowed`:`focus:outline-none focus-visible:ring-2 focus-visible:ring-current border bg-transparent ${i}`}function a(){let e={[S.BLUE]:{light:`text-blue-600 hover:bg-blue-50`,dark:`text-blue-400 hover:bg-blue-500/10`},[S.GREEN]:{light:`text-green-600 hover:bg-green-50`,dark:`text-green-400 hover:bg-green-500/10`},[S.EMERALD]:{light:`text-emerald-600 hover:bg-emerald-50`,dark:`text-emerald-400 hover:bg-emerald-500/10`},[S.SKY]:{light:`text-sky-600 hover:bg-sky-50`,dark:`text-sky-400 hover:bg-sky-500/10`},[S.RED]:{light:`text-red-500 hover:bg-red-50`,dark:`text-red-400 hover:bg-red-500/10`},[S.AMBER]:{light:`text-amber-700 hover:bg-amber-50`,dark:`text-amber-300 hover:bg-amber-500/10`},[S.YELLOW]:{light:`text-yellow-600 hover:bg-yellow-50`,dark:`text-yellow-400 hover:bg-yellow-500/10`},[S.PURPLE]:{light:`text-purple-600 hover:bg-purple-50`,dark:`text-purple-400 hover:bg-purple-500/10`},[S.GRAY]:{light:`text-gray-500 hover:bg-gray-100`,dark:`text-gray-400 hover:bg-gray-800`},[S.DARK]:{light:`text-gray-500 hover:bg-gray-100`,dark:`text-gray-400 hover:bg-gray-800`},[S.WHITE]:{light:`text-gray-500 hover:bg-gray-100`,dark:`text-gray-400 hover:bg-gray-800`}},t=e[r.color]??e[S.GRAY],i=n.value?t.dark:t.light;return r.isDisable||r.isLoading?`bg-transparent ${i} opacity-60 cursor-not-allowed`:`focus:outline-none focus-visible:ring-2 focus-visible:ring-current bg-transparent ${i} cursor-pointer`}function o(){let e=r.isDisable||r.isLoading,t=`inline-flex items-center transition-colors duration-150`;e||(t+=` cursor-pointer`);let n;switch(r.color){case S.BLUE:n=e?`text-white bg-blue-400 cursor-not-allowed`:`focus:outline-none text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:ring-blue-300`;break;case S.WHITE:n=e?`text-gray-900 bg-gray-200 border border-gray-200 cursor-not-allowed`:`focus:outline-none text-gray-900 bg-white border border-gray-200 hover:bg-gray-100 hover:text-blue-700 focus:z-10 focus:ring-4 focus:ring-gray-200`;break;case S.DARK:n=e?`text-white bg-gray-400 cursor-not-allowed`:`focus:outline-none text-white bg-gray-800 hover:bg-gray-900 focus:ring-4 focus:ring-gray-300`;break;case S.GREEN:n=e?`text-white bg-green-400 cursor-not-allowed`:`focus:outline-none text-white bg-green-700 hover:bg-green-800 focus:ring-4 focus:ring-green-300`;break;case S.EMERALD:n=e?`text-white bg-emerald-400 cursor-not-allowed`:`focus:outline-none text-white bg-emerald-600 hover:bg-emerald-700 focus:ring-4 focus:ring-emerald-300`;break;case S.RED:n=e?`text-white bg-red-400 cursor-not-allowed`:`focus:outline-none text-white bg-red-700 hover:bg-red-800 focus:ring-4 focus:ring-red-300`;break;case S.YELLOW:n=e?`text-white bg-yellow-300 cursor-not-allowed`:`focus:outline-none text-white bg-yellow-400 hover:bg-yellow-500 focus:ring-4 focus:ring-yellow-300`;break;case S.PURPLE:n=e?`text-white bg-purple-400 cursor-not-allowed`:`focus:outline-none text-white bg-purple-700 hover:bg-purple-800 focus:ring-4 focus:ring-purple-300`;break;case S.SKY:n=e?`text-white bg-sky-400 cursor-not-allowed`:`focus:outline-none text-white bg-sky-600 hover:bg-sky-700 focus:ring-4 focus:ring-sky-300`;break;case S.AMBER:n=e?`text-white bg-amber-300 cursor-not-allowed`:`focus:outline-none text-white bg-amber-500 hover:bg-amber-600 focus:ring-4 focus:ring-amber-300`;break;case S.GRAY:n=e?`text-white bg-gray-400 cursor-not-allowed`:`focus:outline-none text-white bg-gray-600 hover:bg-gray-700 focus:ring-4 focus:ring-gray-300`;break;default:n=e?`text-white bg-blue-400 cursor-not-allowed`:`focus:outline-none text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:ring-blue-300`;break}r.outline&&(n=i()),r.ghost&&(n=a());let o=`px-5 py-2.5 mr-2 mb-2 text-sm`;switch(r.size){case C.EXTRA_SMALL:o=`px-3 py-2 text-xs`;break;case C.SMALL:o=`px-3 py-2 text-sm`;break;case C.BASE:o=`px-5 py-2.5 text-sm`;break;case C.LARGE:o=`px-5 py-3 text-base`;break;case C.EXTRA_LARGE:o=`px-6 py-3.5 text-base`;break}let s=`rounded-lg`;return r.isRounded&&(s=`rounded-full`),t+` `+o+` `+n+` font-medium `+s}return(n,i)=>{let a=(0,t.resolveComponent)(`router-link`);return e.to?((0,t.openBlock)(),(0,t.createBlock)(a,{key:0,to:e.to,custom:``},{default:(0,t.withCtx)(({navigate:a})=>[(0,t.createElementVNode)(`button`,{type:r.type,class:(0,t.normalizeClass)(o()),disabled:e.isDisable||e.isLoading,onClick:a},[e.isLoading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,te,[...i[0]||=[(0,t.createElementVNode)(`svg`,{"aria-hidden":`true`,role:`status`,class:`inline w-4 h-4 me-3 animate-spin`,viewBox:`0 0 100 101`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`},[(0,t.createElementVNode)(`path`,{d:`M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z`,fill:`#E5E7EB`}),(0,t.createElementVNode)(`path`,{d:`M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z`,fill:`currentColor`})],-1)]])):(0,t.createCommentVNode)(``,!0),e.iconLeft?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,ne,(0,t.toDisplayString)(e.description),1)),(0,t.renderSlot)(n.$slots,`default`),e.iconLeft?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,re,(0,t.toDisplayString)(e.description),1)):(0,t.createCommentVNode)(``,!0)],10,ee)]),_:3},8,[`to`])):((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:1,type:r.type,class:(0,t.normalizeClass)(o()),disabled:e.isDisable||e.isLoading},[e.isLoading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,ae,[...i[1]||=[(0,t.createElementVNode)(`svg`,{"aria-hidden":`true`,role:`status`,class:`inline w-4 h-4 me-3 animate-spin`,viewBox:`0 0 100 101`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`},[(0,t.createElementVNode)(`path`,{d:`M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z`,fill:`#E5E7EB`}),(0,t.createElementVNode)(`path`,{d:`M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z`,fill:`currentColor`})],-1)]])):(0,t.createCommentVNode)(``,!0),e.iconLeft?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,oe,(0,t.toDisplayString)(e.description),1)),(0,t.renderSlot)(n.$slots,`default`),e.iconLeft?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,se,(0,t.toDisplayString)(e.description),1)):(0,t.createCommentVNode)(``,!0)],10,ie))}}}),T=function(e){return e.BASE=`BASE`,e.BASE_SHORTER=`BASE_SHORTER`,e.SQUARE=`SQUARE`,e}({}),ce={key:0,class:`h-px my-8 bg-gray-200 border-0 dark:bg-gray-700`},le={key:1,class:`w-48 h-1 mx-auto my-4 bg-gray-100 border-0 rounded md:my-10 dark:bg-gray-700`},ue={key:2,class:`w-8 h-8 mx-auto my-8 bg-gray-200 border-0 rounded md:my-12 dark:bg-gray-700`},de=(0,t.defineComponent)({__name:`BaseLine`,props:{mode:{type:String,required:!1,default:T.BASE}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,null,[e.mode===(0,t.unref)(T).BASE?((0,t.openBlock)(),(0,t.createElementBlock)(`hr`,ce)):(0,t.createCommentVNode)(``,!0),e.mode===(0,t.unref)(T).BASE_SHORTER?((0,t.openBlock)(),(0,t.createElementBlock)(`hr`,le)):(0,t.createCommentVNode)(``,!0),e.mode===(0,t.unref)(T).SQUARE?((0,t.openBlock)(),(0,t.createElementBlock)(`hr`,ue)):(0,t.createCommentVNode)(``,!0)],64))}}),E=function(e){return e.SMALL=`SMALL`,e.MEDIUM=`MEDIUM`,e.LARGE=`LARGE`,e}({}),fe=E,pe=[`height`,`width`],me=(0,t.defineComponent)({__name:`BaseLogo`,props:{size:{type:String,required:!1,default:E.MEDIUM}},setup(e){let n=e;function r(){let e=``;switch(n.size){case E.SMALL:e=`50px`;break;case E.MEDIUM:e=`100px`;break;case E.LARGE:e=`150px`;break}return e}return(e,n)=>{let i=(0,t.resolveComponent)(`router-link`);return(0,t.openBlock)(),(0,t.createBlock)(i,{to:`/`,class:`flex items-center mb-6 text-2xl font-semibold text-gray-900 dark:text-white`},{default:(0,t.withCtx)(()=>[((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,{height:r(),width:r(),viewBox:`33.6 130.6 499.7 242.9`,xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`},[...n[0]||=[(0,t.createElementVNode)(`linearGradient`,{id:`a`},[(0,t.createElementVNode)(`stop`,{offset:`.085`,"stop-color":`#469e43`}),(0,t.createElementVNode)(`stop`,{offset:`1`,"stop-color":`#132d13`})],-1),(0,t.createElementVNode)(`linearGradient`,{id:`b`,gradientUnits:`userSpaceOnUse`,x1:`64.863`,x2:`64.863`,"xlink:href":`#a`,y1:`288.291`,y2:`369.4`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`c`,gradientUnits:`userSpaceOnUse`,x1:`138.367`,x2:`138.367`,"xlink:href":`#a`,y1:`308.454`,y2:`370.601`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`d`,gradientUnits:`userSpaceOnUse`,x1:`195.475`,x2:`195.475`,"xlink:href":`#a`,y1:`288.291`,y2:`369.85`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`e`,gradientUnits:`userSpaceOnUse`,x1:`249.634`,x2:`249.634`,"xlink:href":`#a`,y1:`307.312`,y2:`369.511`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`f`,gradientUnits:`userSpaceOnUse`,x1:`302.884`,x2:`302.884`,"xlink:href":`#a`,y1:`288.291`,y2:`367.857`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`g`,gradientUnits:`userSpaceOnUse`,x1:`354.118`,x2:`354.118`,"xlink:href":`#a`,y1:`307.312`,y2:`369.511`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`h`,gradientUnits:`userSpaceOnUse`,x1:`428.02`,x2:`428.02`,"xlink:href":`#a`,y1:`306.156`,y2:`367.742`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`i`,gradientUnits:`userSpaceOnUse`,x1:`502.066`,x2:`502.066`,"xlink:href":`#a`,y1:`288.291`,y2:`369.4`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`j`,gradientUnits:`userSpaceOnUse`,x1:`283.264`,x2:`283.264`,"xlink:href":`#a`,y1:`131.629`,y2:`232.559`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`k`,gradientUnits:`userSpaceOnUse`,x1:`283.46`,x2:`283.46`,y1:`202.275`,y2:`183.785`},[(0,t.createElementVNode)(`stop`,{offset:`0`,"stop-color":`#969799`,"stop-opacity":`0`}),(0,t.createElementVNode)(`stop`,{offset:`1`,"stop-color":`#808183`})],-1),(0,t.createElementVNode)(`path`,{d:`m65 307.2c-6.8 0-13.1 2.2-18.2 5.9v-24.8h-13.2v81.1h31.4c17.2 0 31.1-13.9 31.1-31.1s-13.9-31.1-31.1-31.1zm0 49.3h-18.2v-18.2c0-10.1 8.2-18.2 18.2-18.2 10.1 0 18.2 8.2 18.2 18.2.1 10.1-8.1 18.2-18.2 18.2z`,fill:`url(#b)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m168.8 343.9h-46.7c1.4 7.1 6.6 12 14.1 12.7 6.4.6 12.9.1 19.9.1v11.9c-15.2 4.9-33.3.5-42.1-10.4-3.8-4.7-17.3-34.7 11.5-47.4 39-11.4 45.3 22.4 43.3 33.1zm-14.2-12.7c-1.7-8.1-8.8-12.9-17.9-12.3-7.6.5-14 5.8-14.5 12.3z`,fill:`url(#c)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m195.5 320.2c0 10.5-.2 20 .1 29.6.2 5.8 4.4 8.4 13.2 8.6v10.5c-13.8 3.9-26.2-4.5-26.4-18-.2-18.7-.1-43.9-.1-62.6h14.1l-.3 18.5 12.7-.1v13.4h-13.3z`,fill:`url(#d)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m249.6 307.3c-17.2 0-31.1 13.9-31.1 31.1s13.9 31.1 31.1 31.1h31.1v-31.1c0-17.2-13.9-31.1-31.1-31.1zm18.6 49.7h-18.5c-10.2 0-18.5-8.3-18.5-18.5s8.3-18.5 18.5-18.5 18.5 8.3 18.5 18.5z`,fill:`url(#e)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m296.4 288.3h13v79.6h-13z`,fill:`url(#f)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m354.1 307.3c-17.2 0-31.1 13.9-31.1 31.1s13.9 31.1 31.1 31.1h31.1v-31.1c0-17.2-13.9-31.1-31.1-31.1zm18.6 49.7h-18.5c-10.2 0-18.5-8.3-18.5-18.5s8.3-18.5 18.5-18.5 18.5 8.3 18.5 18.5z`,fill:`url(#g)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m442.2 367.7c0-12.3.2-23.6 0-34.9-.2-3.4-3.6-13.8-14.1-13.4-10.3-.3-14.4 10-14.3 12.7.1 10.2.5 35.1.5 35.1l-13.6.1s-.3-25.7.2-36.2c.6-14.1 12.7-25 27.5-25 14.7 0 26.2 10.4 26.7 24.9.4 10.4.5 36.3.5 36.3z`,fill:`url(#h)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m501.9 307.2c6.8 0 13.1 2.2 18.2 5.9v-24.8h13.2v81.1h-31.4c-17.2 0-31.1-13.9-31.1-31.1s13.9-31.1 31.1-31.1zm0 49.3h18.2v-18.2c0-10.1-8.2-18.2-18.2-18.2-10.1 0-18.2 8.2-18.2 18.2 0 10.1 8.1 18.2 18.2 18.2z`,fill:`url(#i)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m309.2 180.6h-24v-24c0-12.6 10.2-24.1 22.8-25 14.8-1 27.1 11.3 26.1 26.1-.8 12.7-12.3 22.9-24.9 22.9zm-50.7-48.9c-14.8-1-27.1 11.3-26.1 26.1.8 12.6 12.4 22.8 25 22.8h23.9v-24c0-12.6-10.3-24.1-22.8-24.9zm50.7 51.9h-24v23.9c0 12.6 10.2 24.1 22.8 25 14.8 1 27.1-11.3 26.1-26.1-.8-12.6-12.3-22.8-24.9-22.8zm-52.4 0c-14 0-25.3 11.8-24.4 26 .8 12.2 10.7 22.1 22.9 22.9 14.2.9 26-10.4 26-24.4v-24.5z`,fill:`url(#j)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m281.7 183.8h3.6v18.5h-3.6z`,fill:`url(#k)`},null,-1)]],8,pe))]),_:1})}}}),D=function(e){return e.DELETE=`DELETE`,e.SUCCESS=`SUCCESS`,e}({}),he={key:0,class:`p-6 text-center`},ge={class:`flex justify-center`},_e={key:1,class:`p-6 text-center`},ve={key:0,class:`mb-5 text-sm text-gray-500`},ye={class:`flex justify-center`},be=(0,t.defineComponent)({__name:`BaseModal`,props:{title:{type:String,required:!0},description:{type:String,required:!1},to:{type:String,required:!1,default:`/`},mode:{type:String,required:!1,default:D.SUCCESS}},emits:[`closeModal`,`confirmModal`],setup(e,{emit:r}){let i=r,a=`modal-title-${Math.random().toString(36).slice(2,9)}`;function o(e){e.key===`Escape`&&i(`closeModal`)}return(0,t.onMounted)(()=>{document.addEventListener(`keydown`,o)}),(0,t.onUnmounted)(()=>{document.removeEventListener(`keydown`,o)}),(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,null,[(0,t.createElementVNode)(`div`,{class:`fixed inset-0 w-full h-screen bg-black/75 z-40`,onClick:i[0]||=e=>r.$emit(`closeModal`)}),(0,t.createElementVNode)(`div`,{class:`fixed top-[20vh] left-1/2 -translate-x-1/2 w-96 z-50 rounded-xl shadow-lg bg-white overflow-hidden`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":a},[e.mode===(0,t.unref)(D).DELETE?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,he,[(0,t.createVNode)((0,t.unref)(n.ExclamationCircleIcon),{class:`w-12 h-12 text-gray-400 mx-auto mb-4`}),(0,t.createElementVNode)(`h3`,{id:a,class:`mb-5 text-lg font-normal text-gray-500 dark:text-gray-400`},` Are you sure you want to delete this `+(0,t.toDisplayString)(e.title)+`? `,1),(0,t.createElementVNode)(`div`,ge,[(0,t.createVNode)(w,{color:(0,t.unref)(S).RED,onClick:i[1]||=e=>r.$emit(`confirmModal`),description:`Yes, I'm sure`},null,8,[`color`]),(0,t.createVNode)(w,{color:(0,t.unref)(S).WHITE,onClick:i[2]||=e=>r.$emit(`closeModal`),description:`No, cancel`},null,8,[`color`])])])):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,_e,[(0,t.createVNode)((0,t.unref)(n.CheckCircleIcon),{class:`w-12 h-12 text-green-500 mx-auto mb-4`}),(0,t.createElementVNode)(`h3`,{id:a,class:`mb-2 text-lg font-medium text-gray-900`},(0,t.toDisplayString)(e.title),1),e.description?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,ve,(0,t.toDisplayString)(e.description),1)):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(r.$slots,`default`),(0,t.createElementVNode)(`div`,ye,[(0,t.createVNode)(w,{color:(0,t.unref)(S).BLUE,onClick:i[3]||=e=>r.$emit(`closeModal`),description:`OK`},null,8,[`color`])])]))])],64))}}),O=(0,t.defineComponent)({__name:`BaseRow`,props:{bgColor:{type:String,required:!1,default:`bg-white`}},setup(e){let n=e;function r(){return`block p-8 border border-gray-200 rounded-xl shadow-sm dark:bg-gray-800 dark:border-gray-700 `+n.bgColor}return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)(r())},[(0,t.renderSlot)(e.$slots,`default`)],2))}}),k=(0,t.defineComponent)({__name:`BaseSpinner`,props:{size:{default:`sm`},color:{default:`blue`}},setup(e){let n=e,r=(0,t.computed)(()=>({sm:`w-4 h-4 border-2`,md:`w-6 h-6 border-2`,lg:`w-8 h-8 border-4`,xl:`w-12 h-12 border-4`})[n.size]),i=(0,t.computed)(()=>({blue:`border-t-blue-500`,emerald:`border-t-emerald-500`,sky:`border-t-sky-500`,indigo:`border-t-indigo-500`,teal:`border-t-teal-500`,purple:`border-t-purple-500`,red:`border-t-red-500`,amber:`border-t-amber-500`})[n.color]);return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`border-gray-200 rounded-full animate-spin`,[r.value,i.value]]),role:`status`,"aria-label":`Loading`},null,2))}}),A=function(e){return e.SUCCESS=`SUCCESS`,e.WARNING=`WARNING`,e.ERROR=`ERROR`,e}({}),j=function(e){return e.TOP_LEFT=`TOP_LEFT`,e.TOP_RIGHT=`TOP_RIGHT`,e.BOTTOM_LEFT=`BOTTOM_LEFT`,e.BOTTOM_RIGHT=`BOTTOM_RIGHT`,e}({}),xe={class:`flex items-center w-full max-w-md p-4 mb-4 text-gray-500 bg-white rounded-lg shadow dark:text-gray-400 dark:bg-gray-800`},Se={class:`ml-3 text-sm font-normal`},Ce=(0,t.defineComponent)({__name:`BaseToast`,props:{mode:{type:String,required:!0},description:{type:String,required:!0},hasCloseIcon:{type:Boolean,required:!1,default:!0},positioning:{type:String,required:!1,default:j.TOP_RIGHT},duration:{type:Number,required:!1,default:5e3}},setup(e){let r=e,i=(0,t.ref)(!0),a=null;function o(){i.value=!1,a&&=(clearTimeout(a),null)}(0,t.onMounted)(()=>{a=setTimeout(()=>i.value=!1,r.duration)}),(0,t.onUnmounted)(()=>{a&&clearTimeout(a)});function s(){let e=``;switch(r.mode){case A.ERROR:e=`text-red-500 bg-red-100 dark:bg-red-800 dark:text-red-200`;break;case A.SUCCESS:e=`text-green-500 bg-green-100 dark:bg-green-800 dark:text-green-200`;break;case A.WARNING:e=`text-orange-500 bg-orange-100 dark:bg-orange-700 dark:text-orange-200`;break;default:e=`text-gray-500 bg-gray-100 dark:bg-gray-800 dark:text-gray-200`;break}return`inline-flex items-center justify-center flex-shrink-0 w-8 h-8 rounded-lg `+e}function c(){let e=`top-5 right-5`;switch(r.positioning){case j.BOTTOM_LEFT:e=`bottom-5 left-5`;break;case j.TOP_LEFT:e=`top-5 left-5`;break;case j.TOP_RIGHT:e=`top-5 right-5`;break;case j.BOTTOM_RIGHT:e=`bottom-5 right-5`;break}return`fixed flex items-center w-full max-w-md p-4 space-x-4 divide-x rounded-lg `+e}return(r,a)=>i.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,id:`toast-top-right`,class:(0,t.normalizeClass)(c()),role:`alert`},[(0,t.createElementVNode)(`div`,xe,[e.mode==(0,t.unref)(A).ERROR?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)(s())},[(0,t.createVNode)((0,t.unref)(n.ExclamationCircleIcon),{class:`h-6 w-6 text-red-500`}),a[0]||=(0,t.createElementVNode)(`span`,{class:`sr-only`},`Error icon`,-1)],2)):e.mode==(0,t.unref)(A).SUCCESS?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,class:(0,t.normalizeClass)(s())},[(0,t.createVNode)((0,t.unref)(n.CheckCircleIcon),{class:`h-6 w-6 text-green-500`}),a[1]||=(0,t.createElementVNode)(`span`,{class:`sr-only`},`Check icon`,-1)],2)):e.mode==(0,t.unref)(A).WARNING?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:2,class:(0,t.normalizeClass)(s())},[(0,t.createVNode)((0,t.unref)(n.ExclamationTriangleIcon),{class:`h-6 w-6 text-yellow-500`}),a[2]||=(0,t.createElementVNode)(`span`,{class:`sr-only`},`Warning icon`,-1)],2)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,Se,(0,t.toDisplayString)(e.description),1),e.hasCloseIcon?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:3,type:`button`,class:`ml-auto -mx-1.5 -my-1.5 bg-white text-gray-400 hover:text-gray-900 rounded-lg focus:ring-2 focus:ring-gray-300 p-1.5 hover:bg-gray-100 inline-flex items-center justify-center h-8 w-8 dark:text-gray-500 dark:hover:text-white dark:bg-gray-800 dark:hover:bg-gray-700 cursor-pointer`,"aria-label":`Close`,onClick:o},[a[3]||=(0,t.createElementVNode)(`span`,{class:`sr-only`},`Close`,-1),(0,t.createVNode)((0,t.unref)(n.XMarkIcon),{class:`h-6 w-6 text-gray-500`})])):(0,t.createCommentVNode)(``,!0)])],2)):(0,t.createCommentVNode)(``,!0)}}),we={class:`w-13`},Te=(0,t.defineComponent)({__name:`ColoredSquares`,props:{color:{type:String,required:!1}},setup(e){let n=e,r=[`bg-slate-300`,`bg-zinc-300`,`bg-neutral-300`,`bg-stone-300`,`bg-blue-300`,`bg-green-300`,`bg-yellow-300`,`bg-purple-300`,`bg-pink-300`],i=(0,t.ref)(r[Math.floor(Math.random()*r.length)]);function a(){let e=`gray`;switch(n.color){case h.GREEN:e=`green`;break;case h.RED:e=`red`;break;case h.BLUE:e=`blue`;break;case h.YELLOW:e=`yellow`;break;case h.NONE:return`font-bold text-xs mr-2 px-2.5 py-0.5 rounded-full`}return`font-bold text-xs mr-2 px-2.5 py-0.5 rounded-full bg-`+e+`-100 text-`+e+`-800`}return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,we,[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`border border-gray-300 relative aspect-square rounded-lg bg-white shadow-sm overflow-hidden flex items-center justify-center text-center`,a()])},[(0,t.renderSlot)(e.$slots,`default`),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`absolute bottom-0 left-0 h-1 w-full`,i.value])},null,2)],2)]))}}),Ee={class:`flex items-start justify-between`},De={class:`min-w-0`},Oe=(0,t.defineComponent)({__name:`EarningsCard`,props:{title:{default:`TOTAL EARNINGS`},amount:{default:0},subtitle:{default:`Lifetime commission`},badge:{default:``},currency:{default:`$`},decimals:{default:2},accent:{default:`orange`},signed:{type:Boolean,default:!1},compact:{type:Boolean,default:!1}},setup(e){let n=e,r={orange:{border:`border-orange-300 dark:border-orange-700`,badge:`bg-orange-100 text-orange-500 dark:bg-orange-900/40 dark:text-orange-400`,amount:`text-gray-400 dark:text-slate-300`,subtitle:`text-orange-400 dark:text-orange-400`,iconBox:`bg-orange-50 dark:bg-orange-900/30`,icon:`text-orange-400`},emerald:{border:`border-emerald-300 dark:border-emerald-700`,badge:`bg-emerald-100 text-emerald-600 dark:bg-emerald-900/40 dark:text-emerald-400`,amount:`text-emerald-500 dark:text-emerald-400`,subtitle:`text-emerald-500 dark:text-emerald-400`,iconBox:`bg-emerald-50 dark:bg-emerald-900/30`,icon:`text-emerald-500`},red:{border:`border-red-300 dark:border-red-700`,badge:`bg-red-100 text-red-600 dark:bg-red-900/40 dark:text-red-400`,amount:`text-red-500 dark:text-red-400`,subtitle:`text-red-500 dark:text-red-400`,iconBox:`bg-red-50 dark:bg-red-900/30`,icon:`text-red-500`}},i=(0,t.computed)(()=>{let e=Number(n.amount);return Number.isFinite(e)?e:0}),a=(0,t.computed)(()=>n.signed&&i.value<0),o=(0,t.computed)(()=>a.value?`red`:n.accent),s=(0,t.computed)(()=>r[o.value]),c=(0,t.computed)(()=>n.currency+i.value.toLocaleString(`en-US`,{minimumFractionDigits:n.decimals,maximumFractionDigits:n.decimals}));return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`relative rounded-xl border-2 border-dashed bg-white dark:bg-slate-800`,[s.value.border,e.compact?`p-3`:`p-6`]])},[e.badge?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`absolute right-4 top-4 rounded-md px-3 py-1 text-xs font-bold tracking-wide`,s.value.badge])},(0,t.toDisplayString)(e.badge),3)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,Ee,[(0,t.createElementVNode)(`div`,De,[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`font-bold tracking-wide text-gray-800 dark:text-slate-200`,e.compact?`pr-8 text-xs`:`text-sm`])},(0,t.toDisplayString)(e.title),3),(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`mt-1 font-bold truncate`,[s.value.amount,e.compact?`text-lg`:`text-4xl`]])},(0,t.toDisplayString)(c.value),3),(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`mt-1 font-medium`,[s.value.subtitle,e.compact?`text-xs`:`text-sm`]])},(0,t.toDisplayString)(e.subtitle),3)]),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex items-center justify-center`,[s.value.iconBox,e.compact?`absolute right-2 top-2 h-6 w-6 rounded-lg`:`mt-6 h-12 w-12 rounded-xl`]])},[((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,{class:(0,t.normalizeClass)([s.value.icon,e.compact?`h-3.5 w-3.5`:`h-6 w-6`]),viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[a.value?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[r[0]||=(0,t.createElementVNode)(`polyline`,{points:`22 17 13.5 8.5 8.5 13.5 2 7`},null,-1),r[1]||=(0,t.createElementVNode)(`polyline`,{points:`16 17 22 17 22 11`},null,-1)],64)):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[r[2]||=(0,t.createElementVNode)(`polyline`,{points:`22 7 13.5 15.5 8.5 10.5 2 17`},null,-1),r[3]||=(0,t.createElementVNode)(`polyline`,{points:`16 7 22 7 22 13`},null,-1)],64))],2))],2)])],2))}}),ke={key:0,class:`font-bold text-green-800 dark:text-green-400`},Ae={key:0},je={key:0},Me=`font-bold`,Ne=(0,t.defineComponent)({__name:`EuroAmount`,props:{amount:{type:Number,required:!1},beforeAmount:{type:Number,default:null,required:!1},showCurrency:{type:Boolean,default:!0,required:!1}},setup(e){let n=e,r=(0,t.computed)(()=>n.amount!==null&&n.amount!==void 0),i=(0,t.computed)(()=>r.value&&n.amount<0),a=(0,t.computed)(()=>n.beforeAmount===null||n.beforeAmount===void 0?!1:n.amount<n.beforeAmount),o=(0,t.computed)(()=>i.value||a.value),s=(0,t.computed)(()=>!i.value&&!a.value&&!(n.beforeAmount===null||n.beforeAmount===void 0));return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,null,[r.value&&s.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,ke,[(0,t.createTextVNode)((0,t.toDisplayString)(e.amount)+` `,1),e.showCurrency?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Ae,`€`)):(0,t.createCommentVNode)(``,!0)])):(0,t.createCommentVNode)(``,!0),r.value&&!s.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:1,class:(0,t.normalizeClass)([Me,o.value?`text-red-800 dark:text-red-400`:`text-gray-800 dark:text-gray-200`])},[(0,t.createTextVNode)((0,t.toDisplayString)(e.amount)+` `,1),e.showCurrency?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,je,`€`)):(0,t.createCommentVNode)(``,!0)],2)):(0,t.createCommentVNode)(``,!0)],64))}}),Pe={"aria-label":`Pagination`},Fe={class:`flex list-none p-0 m-0`},Ie=[`aria-current`,`aria-label`,`onClick`],Le={key:1,"aria-hidden":`true`,class:`inline-block border border-gray-300 dark:border-gray-600 rounded-lg p-3 text-black dark:text-gray-200 cursor-not-allowed`},Re=(0,t.defineComponent)({__name:`Pagination`,props:{totalItems:{type:Number,required:!0},itemsPerPage:{type:Number,default:20}},emits:[`page-changed`],setup(e,{emit:n}){let r=e,i=(0,t.ref)(1),a=(0,t.ref)(0),o=(0,t.ref)([]),s=n;function c(e){if(a.value<=5){o.value=Array.from({length:a.value},(e,t)=>t+1);return}let t=[],n=Math.max(1,e-2),r=Math.min(a.value,e+2);n>1&&(t.push(1),n>2&&t.push(0));for(let e=n;e<=r;e++)t.push(e);r<a.value&&(r<a.value-1&&t.push(0),t.push(a.value)),o.value=t}function l(e){e===i.value||e<1||e>a.value||(i.value=e,c(e),s(`page-changed`,e))}return(0,t.watch)(()=>[r.totalItems,r.itemsPerPage],()=>{a.value=Math.ceil(r.totalItems/r.itemsPerPage),i.value>a.value&&(i.value=Math.max(1,a.value)),c(i.value)},{immediate:!0}),(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`nav`,Pe,[(0,t.createElementVNode)(`ul`,Fe,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(o.value,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:n,class:`mr-1`},[e===0?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Le,`...`)):((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:0,type:`button`,"aria-current":e===i.value?`page`:void 0,"aria-label":`Go to page ${e}`,onClick:t=>l(e),class:(0,t.normalizeClass)([`inline-block min-w-[44px] border border-gray-300 dark:border-gray-600 rounded-lg p-3 text-black dark:text-gray-200 cursor-pointer transition-colors hover:bg-gray-300 dark:hover:bg-gray-700 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,{"active font-bold bg-gray-200 dark:bg-gray-700":e===i.value}])},(0,t.toDisplayString)(e),11,Ie))]))),128))])]))}}),ze={key:0},Be={key:0,class:`flex items-center space-x-2`},Ve={key:1,class:`flex items-center space-x-2`},He={key:2,class:`flex items-center space-x-2`},Ue=(0,t.defineComponent)({__name:`TrendArrow`,props:{number:{type:Number,required:!1},icon:{type:String,required:!1}},setup(e){let r=e,i=(0,t.computed)(()=>r.number!==null&&r.number!==void 0&&r.number<0),a=(0,t.computed)(()=>r.number===0);return(o,s)=>e.number!==null&&e.number!==void 0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,ze,[i.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Be,[(0,t.createVNode)(_,{color:(0,t.unref)(h).RED},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.number)+(0,t.toDisplayString)(r.icon),1)]),_:1},8,[`color`]),(0,t.createVNode)((0,t.unref)(n.ArrowDownIcon),{class:`h-5 w-5 text-red-500`})])):a.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Ve,[(0,t.createVNode)(_,{color:(0,t.unref)(h).GRAY},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.number)+(0,t.toDisplayString)(r.icon),1)]),_:1},8,[`color`]),(0,t.createVNode)((0,t.unref)(n.MinusIcon),{class:`h-5 w-5 text-gray-400`})])):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,He,[(0,t.createVNode)(_,{color:(0,t.unref)(h).GREEN},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.number)+(0,t.toDisplayString)(r.icon),1)]),_:1},8,[`color`]),(0,t.createVNode)((0,t.unref)(n.ArrowUpIcon),{class:`h-5 w-5 text-green-500`})]))])):(0,t.createCommentVNode)(``,!0)}});function M(){let{isDark:e}=d();return(0,t.reactive)({card:(0,t.computed)(()=>e.value?`bg-gray-800 border-gray-700`:`bg-white border-gray-200`),cardAlt:(0,t.computed)(()=>e.value?`bg-gray-900 border-gray-700`:`bg-white border-gray-200`),pageBg:(0,t.computed)(()=>e.value?`bg-gray-900`:`bg-gray-50`),border:(0,t.computed)(()=>e.value?`border-gray-700`:`border-gray-200`),divider:(0,t.computed)(()=>e.value?`border-gray-800`:`border-gray-100`),primaryText:(0,t.computed)(()=>e.value?`text-white`:`text-gray-900`),primaryTextSoft:(0,t.computed)(()=>e.value?`text-gray-100`:`text-gray-800`),bodyText:(0,t.computed)(()=>e.value?`text-gray-200`:`text-gray-700`),label:(0,t.computed)(()=>e.value?`text-gray-300`:`text-gray-700`),mutedText:(0,t.computed)(()=>e.value?`text-gray-400`:`text-gray-600`),subtleText:(0,t.computed)(()=>e.value?`text-gray-500`:`text-gray-600`),dimText:(0,t.computed)(()=>e.value?`text-gray-500`:`text-gray-400`),dimTextAlt:(0,t.computed)(()=>e.value?`text-gray-400`:`text-gray-500`),illustration:(0,t.computed)(()=>e.value?`text-gray-600`:`text-gray-300`),input:(0,t.computed)(()=>e.value?`bg-gray-700 border-gray-600 text-white`:`bg-gray-50 border-gray-300 text-gray-900`),inputWithPlaceholder:(0,t.computed)(()=>e.value?`bg-gray-700 border-gray-600 text-white placeholder-gray-400`:`bg-gray-50 border-gray-300 text-gray-900 placeholder-gray-500`),ghostButton:(0,t.computed)(()=>e.value?`bg-gray-800 text-gray-200 border-gray-600 hover:bg-gray-700`:`bg-white text-gray-700 border-gray-300 hover:bg-gray-50`),emeraldText:(0,t.computed)(()=>e.value?`text-emerald-400`:`text-emerald-600`),amberText:(0,t.computed)(()=>e.value?`text-amber-400`:`text-amber-600`),amberTextStrong:(0,t.computed)(()=>e.value?`text-amber-300`:`text-amber-700`),redText:(0,t.computed)(()=>e.value?`text-red-400`:`text-red-500`)})}function N(e){function n(t){t.key===`Escape`&&e()}(0,t.onMounted)(()=>document.addEventListener(`keydown`,n)),(0,t.onBeforeUnmount)(()=>document.removeEventListener(`keydown`,n))}var We={class:`flex items-start gap-4 min-w-0`},Ge={class:`flex-1 min-w-0`},Ke={class:`p-6 overflow-y-auto flex-1`},qe={class:`p-6`},Je={class:`flex items-start gap-4`},Ye={class:`flex-1`},Xe={class:`mt-4`},Ze={class:`mt-6 flex gap-3 justify-end`},P=(0,t.defineComponent)({__name:`BaseModalShell`,props:{title:{},icon:{},iconBgClass:{default:``},iconClass:{default:`text-emerald-600`},maxWidthClass:{default:`max-w-md`},manualClose:{type:Boolean,default:!1},scrollable:{type:Boolean,default:!1},subtitle:{default:``}},emits:[`cancel`,`backdrop`],setup(e,{emit:n}){let r=e,i=n,{isDark:a}=d(),o=M(),s=`modal-title-${Math.random().toString(36).slice(2,9)}`,c=(0,t.computed)(()=>a.value?`bg-gray-900 border border-gray-700`:`bg-white border border-gray-200`),l=(0,t.computed)(()=>r.iconBgClass||(a.value?`bg-emerald-900/30`:`bg-emerald-50`));function u(){i(`backdrop`),r.manualClose||i(`cancel`)}return N(()=>{r.manualClose||i(`cancel`)}),(n,r)=>((0,t.openBlock)(),(0,t.createBlock)(t.Teleport,{to:`body`},[(0,t.createElementVNode)(`div`,{class:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":s,onClick:u},[e.scrollable?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`relative w-full mx-4 rounded-lg shadow-xl max-h-[90vh] flex flex-col`,[e.maxWidthClass,c.value]]),onClick:r[0]||=(0,t.withModifiers)(()=>{},[`stop`])},[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex items-start justify-between gap-4 p-6 border-b shrink-0`,(0,t.unref)(o).border])},[(0,t.createElementVNode)(`div`,We,[(0,t.renderSlot)(n.$slots,`icon`,{},()=>[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex-shrink-0 flex h-12 w-12 items-center justify-center rounded-full`,l.value])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.icon),{class:(0,t.normalizeClass)([`h-6 w-6`,e.iconClass]),"aria-hidden":`true`},null,8,[`class`]))],2)]),(0,t.createElementVNode)(`div`,Ge,[(0,t.createElementVNode)(`h3`,{id:s,class:(0,t.normalizeClass)([`text-lg font-medium`,(0,t.unref)(o).primaryText])},(0,t.toDisplayString)(e.title),3),e.subtitle?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:0,class:(0,t.normalizeClass)([`text-sm mt-1 break-all`,(0,t.unref)(o).mutedText])},(0,t.toDisplayString)(e.subtitle),3)):(0,t.createCommentVNode)(``,!0)])]),(0,t.renderSlot)(n.$slots,`header-actions`)],2),(0,t.createElementVNode)(`div`,Ke,[(0,t.renderSlot)(n.$slots,`default`)]),n.$slots.footer?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`flex gap-3 justify-end p-6 border-t shrink-0`,(0,t.unref)(o).border])},[(0,t.renderSlot)(n.$slots,`footer`)],2)):(0,t.createCommentVNode)(``,!0)],2)):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,class:(0,t.normalizeClass)([`relative w-full mx-4 rounded-lg shadow-xl`,[e.maxWidthClass,c.value]]),onClick:r[1]||=(0,t.withModifiers)(()=>{},[`stop`])},[(0,t.createElementVNode)(`div`,qe,[(0,t.createElementVNode)(`div`,Je,[(0,t.renderSlot)(n.$slots,`icon`,{},()=>[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex-shrink-0 flex h-12 w-12 items-center justify-center rounded-full`,l.value])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.icon),{class:(0,t.normalizeClass)([`h-6 w-6`,e.iconClass]),"aria-hidden":`true`},null,8,[`class`]))],2)]),(0,t.createElementVNode)(`div`,Ye,[(0,t.createElementVNode)(`h3`,{id:s,class:(0,t.normalizeClass)([`text-lg font-medium`,(0,t.unref)(o).primaryText])},(0,t.toDisplayString)(e.title),3)])]),(0,t.createElementVNode)(`div`,Xe,[(0,t.renderSlot)(n.$slots,`default`)]),(0,t.createElementVNode)(`div`,Ze,[(0,t.renderSlot)(n.$slots,`footer`)])])],2))])]))}}),Qe=[`aria-expanded`],$e={class:`flex items-center gap-3`},et=(0,t.defineComponent)({__name:`BaseCollapsibleSection`,props:{title:{},collapsed:{type:Boolean},badge:{},bodyClass:{}},emits:[`toggle`],setup(e,{emit:n}){let r=e,i=n,{isDark:a}=d(),o=M(),s=(0,t.computed)(()=>a.value?`text-gray-100`:`text-gray-700`),c=(0,t.computed)(()=>a.value?`bg-gray-800/50 hover:bg-gray-800 border-gray-700`:`bg-gray-50 hover:bg-gray-100 border-gray-200`),l=(0,t.computed)(()=>a.value?`bg-emerald-500/15 text-emerald-400`:`bg-emerald-50 text-emerald-700`),u=(0,t.computed)(()=>r.bodyClass===void 0?a.value?`bg-gray-800`:`bg-white`:r.bodyClass);return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`section`,{class:(0,t.normalizeClass)([`rounded-xl border transition-colors`,(0,t.unref)(o).cardAlt])},[(0,t.createElementVNode)(`button`,{type:`button`,class:(0,t.normalizeClass)([`w-full flex items-center justify-between p-4 text-left transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500`,[c.value,e.collapsed?`rounded-xl`:`rounded-t-xl`]]),"aria-expanded":!e.collapsed,onClick:r[0]||=e=>i(`toggle`)},[(0,t.createElementVNode)(`div`,$e,[(0,t.createElementVNode)(`h2`,{class:(0,t.normalizeClass)([`text-base font-semibold`,s.value])},(0,t.toDisplayString)(e.title),3),e.badge?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)([`text-xs px-2 py-0.5 rounded-full`,l.value])},(0,t.toDisplayString)(e.badge),3)):(0,t.createCommentVNode)(``,!0)]),((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,{class:(0,t.normalizeClass)([`w-5 h-5 transition-transform`,[e.collapsed?``:`rotate-180`,(0,t.unref)(o).dimTextAlt]]),fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,"stroke-width":`2`,"aria-hidden":`true`},[...r[1]||=[(0,t.createElementVNode)(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M19 9l-7 7-7-7`},null,-1)]],2))],10,Qe),(0,t.withDirectives)((0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`p-6 border-t rounded-b-xl`,[(0,t.unref)(o).border,u.value]])},[(0,t.renderSlot)(n.$slots,`default`)],2),[[t.vShow,!e.collapsed]])],2))}}),tt=[`disabled`],nt=[`disabled`],rt={key:0,class:`w-4 h-4 animate-spin`,fill:`none`,viewBox:`0 0 24 24`,"aria-hidden":`true`},it=(0,t.defineComponent)({__name:`BaseConfirmModal`,props:{title:{},message:{},confirmText:{default:`Yes, I'm sure`},cancelText:{default:`No, cancel`},submittingText:{default:`Working...`},variant:{default:`danger`},submitting:{type:Boolean,default:!1}},emits:[`confirm`,`cancel`],setup(e,{emit:r}){let i=e,a=r,{isDark:o}=d(),s=M();function c(){i.submitting||a(`confirm`)}function l(){i.submitting||a(`cancel`)}return(r,i)=>((0,t.openBlock)(),(0,t.createBlock)(P,{title:e.title,icon:(0,t.unref)(n.ExclamationTriangleIcon),"icon-bg-class":e.variant===`danger`?(0,t.unref)(o)?`bg-red-900/30`:`bg-red-50`:(0,t.unref)(o)?`bg-amber-900/30`:`bg-amber-50`,"icon-class":e.variant===`danger`?`text-red-600`:`text-amber-600`,"manual-close":e.submitting,onCancel:l},{footer:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`button`,{type:`button`,disabled:e.submitting,class:(0,t.normalizeClass)([`inline-flex items-center justify-center px-4 py-2 border rounded-md shadow-sm text-sm font-medium transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[(0,t.unref)(s).ghostButton,e.submitting?`opacity-60 cursor-not-allowed`:`cursor-pointer`]]),onClick:l},(0,t.toDisplayString)(e.cancelText),11,tt),(0,t.createElementVNode)(`button`,{type:`button`,disabled:e.submitting,class:(0,t.normalizeClass)([`inline-flex items-center justify-center gap-2 px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2`,[e.variant===`danger`?`focus-visible:ring-red-500`:`focus-visible:ring-emerald-500`,e.variant===`danger`?e.submitting?`bg-red-400 cursor-not-allowed`:`bg-red-600 hover:bg-red-700 cursor-pointer`:e.submitting?`bg-emerald-400 cursor-not-allowed`:`bg-emerald-600 hover:bg-emerald-700 cursor-pointer`]]),onClick:c},[e.submitting?((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,rt,[...i[0]||=[(0,t.createElementVNode)(`circle`,{class:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,"stroke-width":`4`},null,-1),(0,t.createElementVNode)(`path`,{class:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8v4a4 4 0 00-4 4H4z`},null,-1)]])):(0,t.createCommentVNode)(``,!0),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.submitting?e.submittingText:e.confirmText),1)],10,nt)]),default:(0,t.withCtx)(()=>[(0,t.renderSlot)(r.$slots,`message`,{},()=>[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(o)?`text-gray-300`:`text-gray-600`])},(0,t.toDisplayString)(e.message),3)]),(0,t.renderSlot)(r.$slots,`default`)]),_:3},8,[`title`,`icon`,`icon-bg-class`,`icon-class`,`manual-close`]))}}),at={class:`mt-4`},ot=[`placeholder`],st=[`disabled`],ct=(0,t.defineComponent)({__name:`BaseTextInputModal`,props:{title:{},message:{},initialValue:{default:``},placeholder:{default:`Enter value...`},inputLabel:{default:`Name`},confirmText:{default:`Confirm`},cancelText:{default:`Cancel`},submittingText:{default:`Working...`},submitting:{type:Boolean,default:!1}},emits:[`confirm`,`cancel`],setup(e,{emit:r}){let i=e,a=r,{isDark:o}=d(),s=M(),c=(0,t.ref)(i.initialValue),l=(0,t.ref)(null);(0,t.onMounted)(async()=>{await(0,t.nextTick)(),l.value?.focus()});function u(){!c.value.trim()||i.submitting||a(`confirm`,c.value.trim())}function f(){a(`cancel`)}function p(){c.value.trim()===(i.initialValue??``).trim()&&f()}return N(f),(r,i)=>((0,t.openBlock)(),(0,t.createBlock)(P,{title:e.title,icon:(0,t.unref)(n.DocumentDuplicateIcon),"manual-close":``,onBackdrop:p},(0,t.createSlots)({footer:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`button`,{type:`button`,class:(0,t.normalizeClass)([`inline-flex items-center justify-center px-4 py-2 border rounded-md shadow-sm text-sm font-medium transition-colors duration-150 cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,(0,t.unref)(s).ghostButton]),onClick:f},(0,t.toDisplayString)(e.cancelText),3),(0,t.createElementVNode)(`button`,{type:`button`,disabled:!c.value.trim()||e.submitting,class:(0,t.normalizeClass)([`inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:ring-offset-2`,[!c.value.trim()||e.submitting?`bg-emerald-400 cursor-not-allowed`:`bg-emerald-600 hover:bg-emerald-700 cursor-pointer`]]),onClick:u},(0,t.toDisplayString)(e.submitting?e.submittingText:e.confirmText),11,st)]),default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(o)?`text-gray-300`:`text-gray-600`])},(0,t.toDisplayString)(e.message),3),(0,t.createElementVNode)(`div`,at,[(0,t.createElementVNode)(`label`,{class:(0,t.normalizeClass)([`block text-sm font-medium mb-1`,(0,t.unref)(s).label])},(0,t.toDisplayString)(e.inputLabel),3),(0,t.withDirectives)((0,t.createElementVNode)(`input`,{ref_key:`nameInput`,ref:l,"onUpdate:modelValue":i[0]||=e=>c.value=e,type:`text`,placeholder:e.placeholder,class:(0,t.normalizeClass)([`w-full px-3 py-2 rounded-md border text-sm transition-colors`,(0,t.unref)(o)?`bg-gray-800 border-gray-600 text-gray-100 placeholder-gray-500 focus:outline-none focus:border-emerald-500`:`bg-white border-gray-300 text-gray-900 placeholder-gray-400 focus:outline-none focus:border-emerald-500`]),onKeyup:(0,t.withKeys)(u,[`enter`])},null,42,ot),[[t.vModelText,c.value]])])]),_:2},[r.$slots.icon?{name:`icon`,fn:(0,t.withCtx)(()=>[(0,t.renderSlot)(r.$slots,`icon`)]),key:`0`}:void 0]),1032,[`title`,`icon`]))}}),lt={class:`flex items-center justify-center min-h-[60vh]`},ut={class:`text-center px-6`},dt=(0,t.defineComponent)({__name:`BaseNotFoundPage`,props:{code:{default:`404`},message:{default:`Page not found`},homeRouteName:{default:`home`},homeLabel:{default:`Go home`}},setup(e){let r=e,a=(0,i.useRouter)(),{isDark:o}=d(),s=M();function c(){a.push({name:r.homeRouteName})}return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,lt,[(0,t.createElementVNode)(`div`,ut,[(0,t.createVNode)((0,t.unref)(n.ExclamationTriangleIcon),{class:(0,t.normalizeClass)([`w-16 h-16 mx-auto mb-4`,(0,t.unref)(s).illustration])},null,8,[`class`]),(0,t.createElementVNode)(`h1`,{class:(0,t.normalizeClass)([`text-4xl font-bold mb-2`,(0,t.unref)(o)?`text-gray-200`:`text-gray-800`])},(0,t.toDisplayString)(e.code),3),(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-lg mb-6`,(0,t.unref)(s).dimTextAlt])},(0,t.toDisplayString)(e.message),3),(0,t.createElementVNode)(`button`,{onClick:c,class:(0,t.normalizeClass)([`inline-flex items-center gap-2 px-4 py-2 rounded-lg text-sm font-medium text-white transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:ring-offset-2`,(0,t.unref)(o)?`bg-emerald-600 hover:bg-emerald-500`:`bg-emerald-600 hover:bg-emerald-700`])},(0,t.toDisplayString)(e.homeLabel),3)])]))}}),F=(0,t.ref)(!1);function I(){function e(){F.value=!0}function t(){F.value=!1}function n(){F.value=!F.value}return{mobileOpen:F,open:e,close:t,toggle:n}}var L=(0,t.ref)(!1),R=!1,z=`mgv-sidebar-collapsed`;function ft(e){if(!R&&(R=!0,z=e,typeof window<`u`)){let e=window.localStorage?.getItem(z);e&&(L.value=e===`true`),(0,t.effectScope)(!0).run(()=>{(0,t.watch)(L,e=>{window.localStorage?.setItem(z,String(e))})})}}function B(e){ft(e?.storageKey??z);function t(){L.value=!0}function n(){L.value=!1}function r(){L.value=!L.value}return{collapsed:L,collapse:t,expand:n,toggle:r}}var V=(0,t.ref)([]),H=(0,t.ref)(!1),pt=(0,t.computed)(()=>V.value.filter(e=>!e.read).length);function U(){function e(){H.value=!0}function t(){H.value=!1}function n(){H.value=!H.value}function r(e){V.value=e}function i(e){V.value=[e,...V.value]}function a(e){V.value=V.value.filter(t=>t.id!==e)}function o(e){V.value=V.value.map(t=>t.id===e?{...t,read:!0}:t)}function s(){V.value=V.value.map(e=>e.read?e:{...e,read:!0})}function c(){V.value=[]}return{notifications:V,unreadCount:pt,open:H,openPanel:e,closePanel:t,togglePanel:n,setNotifications:r,add:i,remove:a,markRead:o,markAllRead:s,clear:c}}var mt=[`aria-label`,`aria-expanded`],ht={class:`flex flex-col h-full`},gt={class:`flex-1 overflow-y-auto px-3 space-y-6`},_t={class:`space-y-0.5`},vt=[`aria-current`,`title`,`onClick`],yt=[`aria-label`],bt={class:`relative shrink-0`},xt={key:0,class:`absolute -top-1.5 -right-1.5 min-w-4 h-4 px-1 rounded-full bg-red-500 text-white text-[10px] font-semibold leading-4 text-center`},St=[`title`,`aria-label`,`aria-pressed`],Ct=[`title`,`aria-label`,`aria-pressed`],wt=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})((0,t.defineComponent)({__name:`BaseSidebar`,props:{sections:{},homeRouteName:{default:`home`},appName:{default:``},version:{default:``},showThemeToggle:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},showNotifications:{type:Boolean,default:!1}},setup(e){let r=e,a=(0,i.useRouter)(),o=(0,i.useRoute)(),{isDark:s,toggleTheme:c}=d(),{mobileOpen:l,close:u,toggle:f}=I(),{collapsed:p,toggle:m}=B(),{unreadCount:h,togglePanel:g}=U(),_=(0,t.computed)(()=>r.collapsible&&p.value),v=(0,t.ref)(null),y=null;(0,t.watch)(l,async e=>{e?(y=document.activeElement instanceof HTMLElement?document.activeElement:null,await(0,t.nextTick)(),v.value?.focus()):(y?.focus(),y=null)});function b(){a.push({name:r.homeRouteName}),u()}function x(e){return o.name===e}function S(e){a.push({name:e}),u()}return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,null,[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`mobile-topbar fixed top-0 inset-x-0 z-30 flex items-center justify-between px-4 py-3 border-b transition-colors`,(0,t.unref)(s)?`bg-gray-900 border-gray-800`:`bg-white border-gray-200`])},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:b,class:`cursor-pointer rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,"aria-label":`Go to home`},[(0,t.renderSlot)(r.$slots,`logo`,{size:28},void 0,!0)]),(0,t.createElementVNode)(`button`,{type:`button`,onClick:i[0]||=(...e)=>(0,t.unref)(f)&&(0,t.unref)(f)(...e),class:(0,t.normalizeClass)([`p-2 rounded-lg cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,(0,t.unref)(s)?`text-gray-400 hover:bg-gray-800`:`text-gray-600 hover:bg-gray-100`]),"aria-label":(0,t.unref)(l)?`Close navigation menu`:`Open navigation menu`,"aria-expanded":(0,t.unref)(l)},[(0,t.unref)(l)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.XMarkIcon),{key:1,class:`w-6 h-6`,"aria-hidden":`true`})):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.Bars3Icon),{key:0,class:`w-6 h-6`,"aria-hidden":`true`}))],10,mt)],2),(0,t.unref)(l)?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:`mobile-overlay fixed inset-0 z-40 bg-black/50`,"aria-hidden":`true`,onClick:i[1]||=(...e)=>(0,t.unref)(u)&&(0,t.unref)(u)(...e)})):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`aside`,{role:`navigation`,"aria-label":`Main navigation`,class:(0,t.normalizeClass)([`fixed top-0 left-0 h-screen w-60 flex flex-col border-r transition-all duration-300 lg:pointer-events-auto`,[(0,t.unref)(s)?`bg-gray-900 border-gray-800`:`bg-white border-gray-200`,(0,t.unref)(l)?`translate-x-0 z-50`:`-translate-x-full max-lg:pointer-events-none lg:translate-x-0 z-50`,e.collapsible&&(0,t.unref)(p)?`lg:w-16`:`lg:w-60`]])},[(0,t.createElementVNode)(`div`,ht,[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`px-5 pt-5 pb-4 flex items-center justify-center relative`,{"lg:px-2":_.value}])},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:b,class:`cursor-pointer rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,"aria-label":`Go to home`},[(0,t.renderSlot)(r.$slots,`logo`,{size:_.value?36:52},void 0,!0)]),(0,t.createElementVNode)(`button`,{ref_key:`closeMobileButton`,ref:v,type:`button`,onClick:i[2]||=(...e)=>(0,t.unref)(u)&&(0,t.unref)(u)(...e),class:(0,t.normalizeClass)([`lg:hidden p-1.5 rounded-lg cursor-pointer absolute right-3 top-4 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,(0,t.unref)(s)?`text-gray-400 hover:bg-gray-800`:`text-gray-500 hover:bg-gray-100`]),"aria-label":`Close navigation menu`},[(0,t.createVNode)((0,t.unref)(n.XMarkIcon),{class:`w-5 h-5`,"aria-hidden":`true`})],2)],2),(0,t.createElementVNode)(`nav`,gt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.sections,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.title},[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`px-2 mb-2 text-[10px] font-semibold uppercase tracking-wider text-gray-500`,{"lg:hidden":_.value}])},(0,t.toDisplayString)(e.title),3),(0,t.createElementVNode)(`ul`,_t,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.items,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:e.name},[(0,t.createElementVNode)(`button`,{type:`button`,"aria-current":x(e.name)?`page`:void 0,title:_.value?e.label:void 0,onClick:t=>S(e.name),class:(0,t.normalizeClass)([`flex items-center gap-3 px-3 py-2.5 rounded-lg text-sm font-medium transition-colors w-full text-left cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[x(e.name)?(0,t.unref)(s)?`bg-emerald-500/15 text-emerald-300`:`bg-emerald-50 text-emerald-700`:(0,t.unref)(s)?`text-gray-400 hover:text-gray-100 hover:bg-gray-800`:`text-gray-600 hover:text-gray-900 hover:bg-gray-100`,{"lg:justify-center":_.value}]])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.icon),{class:`w-[18px] h-[18px] shrink-0`})),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},(0,t.toDisplayString)(e.label),3)],10,vt)]))),128))])]))),128))]),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`px-4 py-4 border-t transition-colors space-y-3`,(0,t.unref)(s)?`border-gray-800`:`border-gray-200`])},[e.showNotifications?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:0,type:`button`,onClick:i[3]||=(...e)=>(0,t.unref)(g)&&(0,t.unref)(g)(...e),title:`Notifications`,"aria-label":(0,t.unref)(h)>0?`Notifications, ${(0,t.unref)(h)} unread`:`Notifications`,class:(0,t.normalizeClass)([`relative flex items-center gap-3 w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[(0,t.unref)(s)?`text-gray-400 hover:text-gray-100 hover:bg-gray-800`:`text-gray-600 hover:text-gray-900 hover:bg-gray-100`,{"lg:justify-center":_.value}]])},[(0,t.createElementVNode)(`span`,bt,[(0,t.createVNode)((0,t.unref)(n.BellIcon),{class:`w-[18px] h-[18px]`,"aria-hidden":`true`}),(0,t.unref)(h)>0?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,xt,(0,t.toDisplayString)((0,t.unref)(h)>99?`99+`:(0,t.unref)(h)),1)):(0,t.createCommentVNode)(``,!0)]),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},`Notifications`,2)],10,yt)):(0,t.createCommentVNode)(``,!0),e.showThemeToggle?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:1,type:`button`,onClick:i[4]||=(...e)=>(0,t.unref)(c)&&(0,t.unref)(c)(...e),title:(0,t.unref)(s)?`Switch to light mode`:`Switch to dark mode`,"aria-label":(0,t.unref)(s)?`Switch to light mode`:`Switch to dark mode`,"aria-pressed":(0,t.unref)(s),class:(0,t.normalizeClass)([`flex items-center gap-3 w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[(0,t.unref)(s)?`text-gray-400 hover:text-gray-100 hover:bg-gray-800`:`text-gray-600 hover:text-gray-900 hover:bg-gray-100`,{"lg:justify-center":_.value}]])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)((0,t.unref)(s)?(0,t.unref)(n.SunIcon):(0,t.unref)(n.MoonIcon)),{class:(0,t.normalizeClass)([`hidden w-[18px] h-[18px] shrink-0`,{"lg:block":_.value}]),"aria-hidden":`true`},null,8,[`class`])),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},(0,t.toDisplayString)((0,t.unref)(s)?`Switch to light`:`Switch to dark`),3),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`ml-auto relative w-9 h-5 rounded-full transition-colors`,[(0,t.unref)(s)?`bg-emerald-600`:`bg-gray-300`,{"lg:hidden":_.value}]])},[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`absolute top-0.5 left-0.5 w-4 h-4 rounded-full bg-white shadow-sm transition-transform duration-300`,(0,t.unref)(s)?`translate-x-4`:`translate-x-0`])},null,2)],2)],10,St)):(0,t.createCommentVNode)(``,!0),e.collapsible?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:2,type:`button`,onClick:i[5]||=(...e)=>(0,t.unref)(m)&&(0,t.unref)(m)(...e),title:(0,t.unref)(p)?`Expand sidebar`:`Collapse sidebar`,"aria-label":(0,t.unref)(p)?`Expand sidebar`:`Collapse sidebar`,"aria-pressed":(0,t.unref)(p),class:(0,t.normalizeClass)([`hidden lg:flex items-center gap-3 w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[(0,t.unref)(s)?`text-gray-400 hover:text-gray-100 hover:bg-gray-800`:`text-gray-600 hover:text-gray-900 hover:bg-gray-100`,{"lg:justify-center":_.value}]])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)((0,t.unref)(p)?(0,t.unref)(n.ChevronDoubleRightIcon):(0,t.unref)(n.ChevronDoubleLeftIcon)),{class:`w-[18px] h-[18px] shrink-0`,"aria-hidden":`true`})),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},`Collapse`,2)],10,Ct)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},[(0,t.renderSlot)(r.$slots,`status`,{},void 0,!0)],2),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},[(0,t.renderSlot)(r.$slots,`footer`,{},()=>[e.appName||e.version?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`flex items-center justify-center gap-2 text-xs`,((0,t.unref)(s),`text-gray-500`)])},[(0,t.createElementVNode)(`span`,null,[(0,t.createTextVNode)((0,t.toDisplayString)(e.appName),1),e.appName&&e.version?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[],64)):(0,t.createCommentVNode)(``,!0),e.version?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[(0,t.createTextVNode)(`v`+(0,t.toDisplayString)(e.version),1)],64)):(0,t.createCommentVNode)(``,!0)])],2)):(0,t.createCommentVNode)(``,!0)],!0)],2)],2)])],2)]))}}),[[`__scopeId`,`data-v-452beaf2`]]),Tt={key:1,class:`mt-4 flex justify-center py-6`},Et={key:2,class:`mt-4 text-sm text-red-500`,role:`alert`},Dt={key:3,class:`mt-4`},Ot={class:`relative`},kt=[`placeholder`],At={key:4,class:`mt-3 max-h-64 overflow-y-auto`},jt=[`aria-pressed`,`onClick`],Mt={class:`flex-1 min-w-0`},Nt={key:0,class:`text-center py-6`},Pt={key:1,class:`text-center py-6`},Ft=[`disabled`],It=[`disabled`],Lt=(0,t.defineComponent)({__name:`BaseEntityPickerModal`,props:{title:{},message:{},items:{default:()=>[]},loader:{},excludeId:{},variant:{default:`emerald`},searchPlaceholder:{default:`Search...`},emptyMessage:{default:`No items available.`},noMatchMessage:{default:`No items match your search.`},confirmText:{default:`Select`},cancelText:{default:`Cancel`},submittingText:{default:`Working...`},submitting:{type:Boolean,default:!1}},emits:[`confirm`,`cancel`],setup(e,{emit:r}){let i=e,a=r,{isDark:o}=d(),s=M(),c=(0,t.ref)([]),l=(0,t.ref)(!1),u=(0,t.ref)(``),f=(0,t.ref)(null),p=(0,t.ref)(``),m=(0,t.ref)(null),h=(0,t.computed)(()=>{let e=i.loader?c.value:i.items;return i.excludeId?e.filter(e=>e.id!==i.excludeId):e}),g=(0,t.computed)(()=>h.value.filter(e=>e.label.toLowerCase().includes(p.value.toLowerCase()))),_={emerald:{iconBg:`bg-emerald-50`,iconText:`text-emerald-600`,inputFocus:`focus:border-emerald-500`,selectedRow:`bg-emerald-50 border border-emerald-200`,checkBg:`bg-emerald-600`,confirmActive:`bg-emerald-600 hover:bg-emerald-700 cursor-pointer`,confirmDisabled:`bg-emerald-400 cursor-not-allowed`},purple:{iconBg:`bg-purple-50`,iconText:`text-purple-600`,inputFocus:`focus:border-purple-500`,selectedRow:`bg-purple-50 border border-purple-200`,checkBg:`bg-purple-600`,confirmActive:`bg-purple-600 hover:bg-purple-700 cursor-pointer`,confirmDisabled:`bg-purple-400 cursor-not-allowed`},blue:{iconBg:`bg-blue-50`,iconText:`text-blue-600`,inputFocus:`focus:border-blue-500`,selectedRow:`bg-blue-50 border border-blue-200`,checkBg:`bg-blue-600`,confirmActive:`bg-blue-600 hover:bg-blue-700 cursor-pointer`,confirmDisabled:`bg-blue-400 cursor-not-allowed`},red:{iconBg:`bg-red-50`,iconText:`text-red-600`,inputFocus:`focus:border-red-500`,selectedRow:`bg-red-50 border border-red-200`,checkBg:`bg-red-600`,confirmActive:`bg-red-600 hover:bg-red-700 cursor-pointer`,confirmDisabled:`bg-red-400 cursor-not-allowed`},amber:{iconBg:`bg-amber-50`,iconText:`text-amber-600`,inputFocus:`focus:border-amber-500`,selectedRow:`bg-amber-50 border border-amber-200`,checkBg:`bg-amber-600`,confirmActive:`bg-amber-600 hover:bg-amber-700 cursor-pointer`,confirmDisabled:`bg-amber-400 cursor-not-allowed`}},v={emerald:{iconBg:`bg-emerald-900/30`,iconText:`text-emerald-400`,inputFocus:`focus:border-emerald-500`,selectedRow:`bg-emerald-500/15 border border-emerald-500/30`,checkBg:`bg-emerald-600`,confirmActive:`bg-emerald-600 hover:bg-emerald-700 cursor-pointer`,confirmDisabled:`bg-emerald-400 cursor-not-allowed`},purple:{iconBg:`bg-purple-900/30`,iconText:`text-purple-400`,inputFocus:`focus:border-purple-500`,selectedRow:`bg-purple-500/15 border border-purple-500/30`,checkBg:`bg-purple-600`,confirmActive:`bg-purple-600 hover:bg-purple-700 cursor-pointer`,confirmDisabled:`bg-purple-400 cursor-not-allowed`},blue:{iconBg:`bg-blue-900/30`,iconText:`text-blue-400`,inputFocus:`focus:border-blue-500`,selectedRow:`bg-blue-500/15 border border-blue-500/30`,checkBg:`bg-blue-600`,confirmActive:`bg-blue-600 hover:bg-blue-700 cursor-pointer`,confirmDisabled:`bg-blue-400 cursor-not-allowed`},red:{iconBg:`bg-red-900/30`,iconText:`text-red-400`,inputFocus:`focus:border-red-500`,selectedRow:`bg-red-500/15 border border-red-500/30`,checkBg:`bg-red-600`,confirmActive:`bg-red-600 hover:bg-red-700 cursor-pointer`,confirmDisabled:`bg-red-400 cursor-not-allowed`},amber:{iconBg:`bg-amber-900/30`,iconText:`text-amber-400`,inputFocus:`focus:border-amber-500`,selectedRow:`bg-amber-500/15 border border-amber-500/30`,checkBg:`bg-amber-600`,confirmActive:`bg-amber-600 hover:bg-amber-700 cursor-pointer`,confirmDisabled:`bg-amber-400 cursor-not-allowed`}},y=(0,t.computed)(()=>(o.value?v:_)[i.variant]);(0,t.onMounted)(async()=>{if(i.loader){l.value=!0;try{c.value=await i.loader()}catch{u.value=`Failed to load items`}finally{l.value=!1}}await(0,t.nextTick)(),m.value?.focus()});function b(){!f.value||i.submitting||a(`confirm`,f.value)}function x(){i.submitting||a(`cancel`)}return(r,i)=>((0,t.openBlock)(),(0,t.createBlock)(P,{title:e.title,icon:(0,t.unref)(n.FolderIcon),"icon-bg-class":y.value.iconBg,"icon-class":y.value.iconText,"manual-close":e.submitting,onCancel:x},(0,t.createSlots)({footer:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`button`,{type:`button`,disabled:e.submitting,class:(0,t.normalizeClass)([`inline-flex items-center justify-center px-4 py-2 border rounded-md shadow-sm text-sm font-medium transition-colors duration-150 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,(0,t.unref)(s).ghostButton]),onClick:x},(0,t.toDisplayString)(e.cancelText),11,Ft),(0,t.createElementVNode)(`button`,{type:`button`,disabled:!f.value||e.submitting,class:(0,t.normalizeClass)([`inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:ring-offset-2`,!f.value||e.submitting?y.value.confirmDisabled:y.value.confirmActive]),onClick:b},(0,t.toDisplayString)(e.submitting?e.submittingText:e.confirmText),11,It)]),default:(0,t.withCtx)(()=>[e.message?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:0,class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(o)?`text-gray-300`:`text-gray-600`])},(0,t.toDisplayString)(e.message),3)):(0,t.createCommentVNode)(``,!0),l.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Tt,[(0,t.createVNode)(k,{color:`emerald`})])):u.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Et,(0,t.toDisplayString)(u.value),1)):(0,t.createCommentVNode)(``,!0),!l.value&&!u.value&&h.value.length>0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Dt,[(0,t.createElementVNode)(`div`,Ot,[(0,t.createVNode)((0,t.unref)(n.MagnifyingGlassIcon),{class:(0,t.normalizeClass)([`absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4`,(0,t.unref)(s).dimText]),"aria-hidden":`true`},null,8,[`class`]),(0,t.withDirectives)((0,t.createElementVNode)(`input`,{ref_key:`searchInputRef`,ref:m,"onUpdate:modelValue":i[0]||=e=>p.value=e,type:`text`,placeholder:e.searchPlaceholder,class:(0,t.normalizeClass)([`w-full pl-9 pr-3 py-2 text-sm rounded-md border outline-none transition-colors`,[(0,t.unref)(o)?`bg-gray-800 border-gray-600 text-gray-200 placeholder-gray-500`:`bg-white border-gray-300 text-gray-700 placeholder-gray-400`,y.value.inputFocus]])},null,10,kt),[[t.vModelText,p.value]])])])):(0,t.createCommentVNode)(``,!0),!l.value&&!u.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,At,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(g.value,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:e.id,type:`button`,"aria-pressed":f.value===e.id,class:(0,t.normalizeClass)([`w-full text-left flex items-center gap-3 px-3 py-2.5 rounded-lg cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500`,[f.value===e.id?y.value.selectedRow:(0,t.unref)(o)?`hover:bg-gray-800 border border-transparent`:`hover:bg-gray-50 border border-transparent`]]),onClick:t=>f.value=e.id},[(0,t.createVNode)((0,t.unref)(n.FolderIcon),{class:(0,t.normalizeClass)([`w-5 h-5 flex-shrink-0`,(0,t.unref)(s).dimText])},null,8,[`class`]),(0,t.createElementVNode)(`div`,Mt,[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm font-medium truncate`,(0,t.unref)(s).bodyText])},(0,t.toDisplayString)(e.label),3)]),f.value===e.id?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`w-5 h-5 rounded-full flex items-center justify-center`,y.value.checkBg])},[...i[1]||=[(0,t.createElementVNode)(`svg`,{class:`w-3 h-3 text-white`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,"stroke-width":`3`,"aria-hidden":`true`},[(0,t.createElementVNode)(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M5 13l4 4L19 7`})],-1)]],2)):(0,t.createCommentVNode)(``,!0)],10,jt))),128)),h.value.length===0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Nt,[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(s).dimText])},(0,t.toDisplayString)(e.emptyMessage),3)])):g.value.length===0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Pt,[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(s).dimText])},(0,t.toDisplayString)(e.noMatchMessage),3)])):(0,t.createCommentVNode)(``,!0)])):(0,t.createCommentVNode)(``,!0)]),_:2},[r.$slots.icon?{name:`icon`,fn:(0,t.withCtx)(()=>[(0,t.renderSlot)(r.$slots,`icon`)]),key:`0`}:void 0]),1032,[`title`,`icon`,`icon-bg-class`,`icon-class`,`manual-close`]))}}),Rt={href:`#main-content`,class:`sr-only focus:not-sr-only focus:fixed focus:top-2 focus:left-2 focus:z-[100] focus:px-3 focus:py-2 focus:rounded-md focus:bg-emerald-600 focus:text-white focus:shadow-lg`},zt=[`inert`],Bt=(0,t.defineComponent)({__name:`BaseAppLayout`,props:{showSidebar:{type:Boolean,default:!0},skipLinkLabel:{default:`Skip to main content`}},setup(e){let n=e,{isDark:r}=d(),{mobileOpen:i}=I(),{collapsed:a}=B(),o=(0,t.computed)(()=>n.showSidebar);return(n,s)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`min-h-screen transition-colors duration-300`,(0,t.unref)(r)?`bg-gray-950 text-gray-100`:`bg-gray-50 text-gray-800`])},[(0,t.createElementVNode)(`a`,Rt,(0,t.toDisplayString)(e.skipLinkLabel),1),o.value?(0,t.renderSlot)(n.$slots,`sidebar`,{key:0}):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`main`,{id:`main-content`,tabindex:`-1`,inert:o.value&&(0,t.unref)(i)?!0:void 0,class:(0,t.normalizeClass)([`transition-all duration-300`,o.value?(0,t.unref)(a)?`pt-14 lg:pt-0 lg:ml-16`:`pt-14 lg:pt-0 lg:ml-60`:``])},[(0,t.renderSlot)(n.$slots,`default`)],10,zt)],2))}}),Vt={class:`flex items-center gap-3 min-w-0`},Ht={class:`flex items-center gap-2`},Ut=(0,t.defineComponent)({__name:`BasePageHeader`,props:{title:{},subtitle:{default:``},iconColor:{default:`emerald`},maxWidthClass:{default:`max-w-4xl`},align:{default:`center`},marginClass:{default:`mb-8`}},setup(e){let n=e,{isDark:r}=d(),i=M(),a=(0,t.computed)(()=>{let e={emerald:{dark:`bg-emerald-500/10`,light:`bg-emerald-50`},sky:{dark:`bg-sky-500/10`,light:`bg-sky-50`},red:{dark:`bg-red-500/10`,light:`bg-red-50`},amber:{dark:`bg-amber-500/10`,light:`bg-amber-50`}}[n.iconColor];return r.value?e.dark:e.light}),o=(0,t.computed)(()=>{let e={emerald:{dark:`text-emerald-400`,light:`text-emerald-600`},sky:{dark:`text-sky-400`,light:`text-sky-600`},red:{dark:`text-red-400`,light:`text-red-500`},amber:{dark:`text-amber-400`,light:`text-amber-600`}}[n.iconColor];return r.value?e.dark:e.light});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`header`,{class:(0,t.normalizeClass)(e.maxWidthClass?[`mx-auto px-4 sm:px-6`,e.maxWidthClass]:void 0)},[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex flex-wrap justify-between gap-3`,[e.align===`end`?`items-end`:`items-center`,e.marginClass]])},[(0,t.createElementVNode)(`div`,Vt,[n.$slots.icon?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`w-10 h-10 rounded-lg flex items-center justify-center`,a.value])},[(0,t.renderSlot)(n.$slots,`icon`,{iconClass:o.value})],2)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,null,[(0,t.createElementVNode)(`h1`,{class:(0,t.normalizeClass)([`text-2xl font-bold`,(0,t.unref)(i).primaryTextSoft])},(0,t.toDisplayString)(e.title),3),e.subtitle||n.$slots.subtitle?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:0,class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(i).dimTextAlt])},[(0,t.renderSlot)(n.$slots,`subtitle`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.subtitle),1)])],2)):(0,t.createCommentVNode)(``,!0)])]),(0,t.createElementVNode)(`div`,Ht,[(0,t.renderSlot)(n.$slots,`actions`)])],2)],2))}}),Wt=[`type`,`disabled`,`title`],Gt={key:0},W=(0,t.defineComponent)({__name:`BaseToolbarButton`,props:{label:{default:``},variant:{default:`neutral`},disabled:{type:Boolean,default:!1},title:{default:void 0},type:{default:`button`}},emits:[`click`],setup(e){let n=e,{isDark:r}=d(),i={neutral:`px-3 py-2 rounded-lg font-medium disabled:opacity-50`,danger:`px-3 py-2 rounded-lg font-medium disabled:opacity-50`,ghost:`h-9 px-4 rounded-md font-semibold disabled:opacity-40 disabled:hover:bg-slate-50 dark:disabled:hover:bg-slate-900`},a=(0,t.computed)(()=>{let e={neutral:{dark:`bg-gray-800 text-gray-100 border-gray-700 hover:bg-gray-700`,light:`bg-white text-gray-700 border-gray-200 hover:bg-gray-100`},danger:{dark:`bg-red-600 text-white border-red-600 hover:bg-red-500`,light:`bg-red-600 text-white border-red-600 hover:bg-red-700`},ghost:{dark:`border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-600 dark:text-slate-300 hover:bg-slate-100 dark:hover:bg-slate-800`,light:`border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-600 dark:text-slate-300 hover:bg-slate-100 dark:hover:bg-slate-800`}}[n.variant];return[i[n.variant],r.value?e.dark:e.light]});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:e.type,disabled:e.disabled,title:e.title,class:(0,t.normalizeClass)([`inline-flex shrink-0 items-center gap-2 text-sm border transition-colors cursor-pointer disabled:cursor-not-allowed whitespace-nowrap focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,a.value]),onClick:r[0]||=e=>n.$emit(`click`,e)},[(0,t.renderSlot)(n.$slots,`icon`,{iconClass:`w-4 h-4`}),e.label?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Gt,(0,t.toDisplayString)(e.label),1)):(0,t.createCommentVNode)(``,!0)],10,Wt))}}),Kt=[`type`,`disabled`,`title`,`aria-label`],qt={key:0},Jt=(0,t.defineComponent)({__name:`BaseActionButton`,props:{label:{default:``},color:{default:`emerald`},disabled:{type:Boolean,default:!1},fullWidth:{type:Boolean,default:!1},title:{default:void 0},ariaLabel:{default:void 0},type:{default:`button`}},emits:[`click`],setup(e){let n=e,{isDark:r}=d(),i=(0,t.computed)(()=>{let e={emerald:{dark:`text-emerald-400 hover:bg-emerald-500/10`,light:`text-emerald-600 hover:bg-emerald-50`},sky:{dark:`text-sky-400 hover:bg-sky-500/10`,light:`text-sky-600 hover:bg-sky-50`},indigo:{dark:`text-indigo-400 hover:bg-indigo-500/10`,light:`text-indigo-600 hover:bg-indigo-50`},teal:{dark:`text-teal-400 hover:bg-teal-500/10`,light:`text-teal-600 hover:bg-teal-50`},purple:{dark:`text-purple-400 hover:bg-purple-500/10`,light:`text-purple-600 hover:bg-purple-50`},red:{dark:`text-red-400 hover:bg-red-500/10`,light:`text-red-500 hover:bg-red-50`},amber:{dark:`text-amber-400 hover:bg-amber-500/10`,light:`text-amber-600 hover:bg-amber-50`},amberStrong:{dark:`text-amber-300 hover:bg-amber-500/10`,light:`text-amber-700 hover:bg-amber-50`}}[n.color];return r.value?e.dark:e.light}),a=(0,t.computed)(()=>{let e={emerald:{dark:`text-emerald-400`,light:`text-emerald-600`},sky:{dark:`text-sky-400`,light:`text-sky-600`},indigo:{dark:`text-indigo-400`,light:`text-indigo-600`},teal:{dark:`text-teal-400`,light:`text-teal-600`},purple:{dark:`text-purple-400`,light:`text-purple-600`},red:{dark:`text-red-400`,light:`text-red-500`},amber:{dark:`text-amber-400`,light:`text-amber-600`},amberStrong:{dark:`text-amber-300`,light:`text-amber-700`}}[n.color];return r.value?e.dark:e.light}),o=(0,t.computed)(()=>n.disabled?`${a.value} opacity-50 cursor-not-allowed`:`${i.value} cursor-pointer`);return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:e.type,disabled:e.disabled,title:e.title,"aria-label":e.ariaLabel,class:(0,t.normalizeClass)([`inline-flex items-center justify-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-medium transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-current`,[e.fullWidth?`flex-1`:``,o.value]]),onClick:r[0]||=e=>n.$emit(`click`,e)},[(0,t.renderSlot)(n.$slots,`icon`,{iconClass:`w-4 h-4`}),e.label?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,qt,(0,t.toDisplayString)(e.label),1)):(0,t.createCommentVNode)(``,!0)],10,Kt))}}),Yt=[`title`,`aria-label`],Xt=(0,t.defineComponent)({__name:`BaseCopyButton`,props:{text:{},label:{default:``},variant:{default:`ghost`},resetMs:{default:1500},iconClass:{default:`w-4 h-4`}},emits:[`copied`,`error`],setup(e,{emit:r}){let i=e,a=r,{isDark:o}=d(),s=(0,t.ref)(!1),c=null,l=(0,t.computed)(()=>s.value?`Copied!`:i.label?`Copy ${i.label}`:`Copy`),u=(0,t.computed)(()=>i.label?`Copy ${i.label}`:`Copy`),f=(0,t.computed)(()=>i.variant===`bordered`?`inline-flex items-center justify-center w-9 h-9 rounded-lg border transition-colors cursor-pointer shrink-0 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 ${s.value?o.value?`border-emerald-500/40 bg-emerald-500/10 text-emerald-400`:`border-emerald-300 bg-emerald-50 text-emerald-600`:o.value?`border-gray-600 text-gray-400 hover:text-gray-200 hover:bg-gray-800`:`border-gray-300 text-gray-400 hover:text-gray-600 hover:bg-gray-50`}`:`p-1 rounded transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 ${o.value?`text-gray-400 hover:text-emerald-300 hover:bg-emerald-500/10`:`text-gray-500 hover:text-emerald-600 hover:bg-emerald-50`}`);async function p(e){try{if(navigator.clipboard?.writeText){await navigator.clipboard.writeText(e);return}}catch{}let t=document.createElement(`textarea`);t.value=e,t.style.position=`fixed`,t.style.opacity=`0`,document.body.appendChild(t),t.select();let n=document.execCommand(`copy`);if(document.body.removeChild(t),!n)throw Error(`Copy command was rejected`)}async function m(){try{await p(i.text),s.value=!0,c&&clearTimeout(c),c=setTimeout(()=>{s.value=!1},i.resetMs),a(`copied`)}catch(e){a(`error`,e)}}return(0,t.onUnmounted)(()=>{c&&clearTimeout(c)}),(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:`button`,title:l.value,"aria-label":u.value,class:(0,t.normalizeClass)(f.value),onClick:m},[s.value?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.ClipboardDocumentCheckIcon),{key:0,class:(0,t.normalizeClass)(e.iconClass),"aria-hidden":`true`},null,8,[`class`])):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.ClipboardDocumentIcon),{key:1,class:(0,t.normalizeClass)(e.iconClass),"aria-hidden":`true`},null,8,[`class`]))],10,Yt))}}),Zt=[`disabled`,`aria-busy`],Qt={key:0,class:`w-5 h-5 animate-spin shrink-0`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`},$t={key:1,class:`w-5 h-5 shrink-0`,viewBox:`0 0 48 48`,"aria-hidden":`true`},G=(0,t.defineComponent)({__name:`BaseGoogleSignInButton`,props:{label:{default:`Sign in with Google`},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},block:{type:Boolean,default:!0}},emits:[`click`],setup(e,{emit:n}){let r=e,i=n,{isDark:a}=d(),o=(0,t.computed)(()=>r.disabled||r.loading);function s(){o.value||i(`click`)}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:`button`,disabled:o.value,"aria-busy":e.loading,onClick:s,class:(0,t.normalizeClass)([`inline-flex items-center justify-center gap-3 h-11 px-4 rounded-lg border text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 disabled:opacity-60 disabled:cursor-not-allowed`,[e.block?`w-full`:``,(0,t.unref)(a)?`bg-gray-900 border-gray-700 text-gray-100 hover:bg-gray-800`:`bg-white border-gray-300 text-gray-700 hover:bg-gray-50`]])},[e.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,Qt,[...r[0]||=[(0,t.createElementVNode)(`circle`,{class:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,"stroke-width":`4`},null,-1),(0,t.createElementVNode)(`path`,{class:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 0 1 8-8V0C5.4 0 0 5.4 0 12h4z`},null,-1)]])):((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,$t,[...r[1]||=[(0,t.createStaticVNode)(`<path fill="#EA4335" d="M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z"></path><path fill="#4285F4" d="M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z"></path><path fill="#FBBC05" d="M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z"></path><path fill="#34A853" d="M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z"></path><path fill="none" d="M0 0h48v48H0z"></path>`,5)]])),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(e.label),1)],10,Zt))}}),en={key:0,class:`flex justify-center mb-6`},tn={class:`mb-6 text-center`},nn={class:`flex items-center gap-3 my-5`},rn=[`disabled`],an={class:`flex items-center justify-between mb-1.5`},on={class:`relative`},sn=[`type`,`disabled`],cn=[`aria-label`,`aria-pressed`],ln=[`disabled`],un=[`disabled`,`aria-busy`],dn={key:0,class:`w-4 h-4 animate-spin`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`},fn=(0,t.defineComponent)({__name:`BaseLoginForm`,props:{title:{default:`Sign in`},subtitle:{default:``},submitLabel:{default:`Sign in`},loading:{type:Boolean,default:!1},googleLoading:{type:Boolean,default:!1},error:{default:``},showGoogle:{type:Boolean,default:!0},showRemember:{type:Boolean,default:!1}},emits:[`submit`,`google-sign-in`],setup(e,{emit:n}){let r=e,i=n,{isDark:a}=d(),o=M(),s=(0,t.ref)(``),c=(0,t.ref)(``),l=(0,t.ref)(!1),u=(0,t.ref)(!1),f=(0,t.computed)(()=>r.loading||r.googleLoading);function p(){f.value||i(`submit`,{email:s.value,password:c.value,...r.showRemember?{remember:l.value}:{}})}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`w-full max-w-sm mx-auto rounded-xl border shadow-sm p-6 sm:p-8`,(0,t.unref)(o).card])},[n.$slots.logo?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,en,[(0,t.renderSlot)(n.$slots,`logo`)])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,tn,[(0,t.createElementVNode)(`h1`,{class:(0,t.normalizeClass)([`text-xl font-semibold`,(0,t.unref)(o).primaryText])},(0,t.toDisplayString)(e.title),3),e.subtitle?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:0,class:(0,t.normalizeClass)([`mt-1 text-sm`,(0,t.unref)(o).mutedText])},(0,t.toDisplayString)(e.subtitle),3)):(0,t.createCommentVNode)(``,!0)]),e.error?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,role:`alert`,class:(0,t.normalizeClass)([`mb-4 rounded-lg border px-3 py-2 text-sm`,(0,t.unref)(a)?`bg-red-500/10 border-red-500/30 text-red-300`:`bg-red-50 border-red-200 text-red-700`])},(0,t.toDisplayString)(e.error),3)):(0,t.createCommentVNode)(``,!0),e.showGoogle?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:2},[(0,t.createVNode)(G,{loading:e.googleLoading,disabled:e.loading,onClick:r[0]||=e=>i(`google-sign-in`)},null,8,[`loading`,`disabled`]),(0,t.createElementVNode)(`div`,nn,[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`h-px flex-1`,(0,t.unref)(a)?`bg-gray-700`:`bg-gray-200`])},null,2),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`text-xs uppercase tracking-wider`,(0,t.unref)(o).dimTextAlt])},`or`,2),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`h-px flex-1`,(0,t.unref)(a)?`bg-gray-700`:`bg-gray-200`])},null,2)])],64)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`form`,{class:`space-y-4`,onSubmit:(0,t.withModifiers)(p,[`prevent`])},[(0,t.createElementVNode)(`div`,null,[(0,t.createElementVNode)(`label`,{for:`login-email`,class:(0,t.normalizeClass)([`block mb-1.5 text-sm font-medium`,(0,t.unref)(o).label])},` Email `,2),(0,t.withDirectives)((0,t.createElementVNode)(`input`,{id:`login-email`,"onUpdate:modelValue":r[1]||=e=>s.value=e,type:`email`,name:`email`,autocomplete:`email`,required:``,disabled:f.value,placeholder:`you@example.com`,class:(0,t.normalizeClass)([`w-full h-11 px-3 rounded-lg border text-sm transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 disabled:opacity-60`,(0,t.unref)(o).inputWithPlaceholder])},null,10,rn),[[t.vModelText,s.value]])]),(0,t.createElementVNode)(`div`,null,[(0,t.createElementVNode)(`div`,an,[(0,t.createElementVNode)(`label`,{for:`login-password`,class:(0,t.normalizeClass)([`block text-sm font-medium`,(0,t.unref)(o).label])},` Password `,2),(0,t.renderSlot)(n.$slots,`forgot`)]),(0,t.createElementVNode)(`div`,on,[(0,t.withDirectives)((0,t.createElementVNode)(`input`,{id:`login-password`,"onUpdate:modelValue":r[2]||=e=>c.value=e,type:u.value?`text`:`password`,name:`password`,autocomplete:`current-password`,required:``,disabled:f.value,placeholder:`••••••••`,class:(0,t.normalizeClass)([`w-full h-11 pl-3 pr-16 rounded-lg border text-sm transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 disabled:opacity-60`,(0,t.unref)(o).inputWithPlaceholder])},null,10,sn),[[t.vModelDynamic,c.value]]),(0,t.createElementVNode)(`button`,{type:`button`,onClick:r[3]||=e=>u.value=!u.value,"aria-label":u.value?`Hide password`:`Show password`,"aria-pressed":u.value,class:(0,t.normalizeClass)([`absolute inset-y-0 right-0 px-3 text-xs font-medium cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 rounded-r-lg`,(0,t.unref)(o).mutedText])},(0,t.toDisplayString)(u.value?`Hide`:`Show`),11,cn)])]),e.showRemember?((0,t.openBlock)(),(0,t.createElementBlock)(`label`,{key:0,class:(0,t.normalizeClass)([`flex items-center gap-2 text-sm cursor-pointer select-none`,(0,t.unref)(o).bodyText])},[(0,t.withDirectives)((0,t.createElementVNode)(`input`,{"onUpdate:modelValue":r[4]||=e=>l.value=e,type:`checkbox`,disabled:f.value,class:`w-4 h-4 rounded border-gray-300 text-emerald-600 focus:ring-emerald-500`},null,8,ln),[[t.vModelCheckbox,l.value]]),r[5]||=(0,t.createTextVNode)(` Remember me `,-1)],2)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`button`,{type:`submit`,disabled:f.value,"aria-busy":e.loading,class:`inline-flex items-center justify-center gap-2 w-full h-11 px-4 rounded-lg text-sm font-semibold text-white bg-emerald-600 hover:bg-emerald-700 transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 disabled:opacity-60 disabled:cursor-not-allowed`},[e.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,dn,[...r[6]||=[(0,t.createElementVNode)(`circle`,{class:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,"stroke-width":`4`},null,-1),(0,t.createElementVNode)(`path`,{class:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 0 1 8-8V0C5.4 0 0 5.4 0 12h4z`},null,-1)]])):(0,t.createCommentVNode)(``,!0),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.submitLabel),1)],8,un)],32),n.$slots.footer?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:3,class:(0,t.normalizeClass)([`mt-6 text-center text-sm`,(0,t.unref)(o).mutedText])},[(0,t.renderSlot)(n.$slots,`footer`)],2)):(0,t.createCommentVNode)(``,!0)],2))}}),pn=[`aria-label`],mn={class:`flex-1 overflow-y-auto`},hn={key:0,class:`flex flex-col items-center justify-center text-center px-6 py-16 gap-3`},gn=[`onClick`],_n={class:`min-w-0 flex-1`},vn={class:`flex items-baseline justify-between gap-2`},yn=(0,t.defineComponent)({__name:`BaseNotificationPanel`,props:{title:{default:`Notifications`},emptyText:{default:`You have no notifications.`},showMarkAllRead:{type:Boolean,default:!0}},emits:[`select`],setup(e,{emit:r}){let i=r,{isDark:a}=d(),o=M(),{notifications:s,unreadCount:c,open:l,closePanel:u,markAllRead:f,markRead:p}=U(),m={info:`bg-sky-500`,success:`bg-emerald-500`,warning:`bg-amber-500`,error:`bg-red-500`},h=(0,t.computed)(()=>s.value.length);function g(e){p(e),i(`select`,e)}return N(()=>{l.value&&u()}),(r,i)=>((0,t.openBlock)(),(0,t.createBlock)(t.Teleport,{to:`body`},[(0,t.createVNode)(t.Transition,{"enter-active-class":`transition-opacity duration-200`,"enter-from-class":`opacity-0`,"leave-active-class":`transition-opacity duration-200`,"leave-to-class":`opacity-0`},{default:(0,t.withCtx)(()=>[(0,t.unref)(l)?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:`fixed inset-0 z-[60] bg-black/50`,"aria-hidden":`true`,onClick:i[0]||=(...e)=>(0,t.unref)(u)&&(0,t.unref)(u)(...e)})):(0,t.createCommentVNode)(``,!0)]),_:1}),(0,t.createVNode)(t.Transition,{"enter-active-class":`transition-transform duration-300 ease-out`,"enter-from-class":`-translate-x-full`,"leave-active-class":`transition-transform duration-300 ease-in`,"leave-to-class":`-translate-x-full`},{default:(0,t.withCtx)(()=>[(0,t.unref)(l)?((0,t.openBlock)(),(0,t.createElementBlock)(`aside`,{key:0,role:`dialog`,"aria-modal":`true`,"aria-label":e.title,class:(0,t.normalizeClass)([`fixed top-0 left-0 z-[70] h-screen w-full max-w-sm flex flex-col border-r shadow-xl`,(0,t.unref)(a)?`bg-gray-900 border-gray-800`:`bg-white border-gray-200`])},[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex items-center justify-between gap-3 px-5 py-4 border-b shrink-0`,(0,t.unref)(o).border])},[(0,t.createElementVNode)(`h2`,{class:(0,t.normalizeClass)([`text-lg font-semibold flex items-center gap-2`,(0,t.unref)(o).primaryText])},[(0,t.createTextVNode)((0,t.toDisplayString)(e.title)+` `,1),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`text-sm font-normal`,(0,t.unref)(o).dimTextAlt])},`— `+(0,t.toDisplayString)(h.value),3)],2),(0,t.createElementVNode)(`button`,{type:`button`,onClick:i[1]||=(...e)=>(0,t.unref)(u)&&(0,t.unref)(u)(...e),"aria-label":`Close notifications`,class:(0,t.normalizeClass)([`p-1.5 rounded-lg cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,(0,t.unref)(a)?`text-gray-400 hover:bg-gray-800`:`text-gray-500 hover:bg-gray-100`])},[(0,t.createVNode)((0,t.unref)(n.XMarkIcon),{class:`w-5 h-5`,"aria-hidden":`true`})],2)],2),e.showMarkAllRead&&(0,t.unref)(c)>0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`px-5 py-2 border-b shrink-0 flex justify-end`,(0,t.unref)(o).border])},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:i[2]||=(...e)=>(0,t.unref)(f)&&(0,t.unref)(f)(...e),class:(0,t.normalizeClass)([`text-xs font-medium cursor-pointer transition-colors focus:outline-none focus-visible:underline`,(0,t.unref)(o).emeraldText])},` Mark all as read `,2)],2)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,mn,[h.value===0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,hn,[(0,t.createVNode)((0,t.unref)(n.BellIcon),{class:(0,t.normalizeClass)([`w-10 h-10`,(0,t.unref)(o).illustration]),"aria-hidden":`true`},null,8,[`class`]),(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(o).mutedText])},(0,t.toDisplayString)(e.emptyText),3)])):((0,t.openBlock)(),(0,t.createElementBlock)(`ul`,{key:1,class:(0,t.normalizeClass)([`divide-y`,(0,t.unref)(a)?`divide-gray-800`:`divide-gray-100`])},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(s),e=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:e.id},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:t=>g(e.id),class:(0,t.normalizeClass)([`w-full text-left px-5 py-4 flex gap-3 transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500`,[e.read?``:(0,t.unref)(a)?`bg-emerald-500/5`:`bg-emerald-50/60`,(0,t.unref)(a)?`hover:bg-gray-800`:`hover:bg-gray-50`]])},[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`mt-1.5 w-2 h-2 rounded-full shrink-0`,e.read?(0,t.unref)(a)?`bg-gray-700`:`bg-gray-300`:m[e.type??`info`]]),"aria-hidden":`true`},null,2),(0,t.createElementVNode)(`span`,_n,[(0,t.createElementVNode)(`span`,vn,[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`text-sm truncate`,[e.read?`font-medium`:`font-semibold`,(0,t.unref)(o).primaryTextSoft]])},(0,t.toDisplayString)(e.title),3),e.time?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)([`text-xs shrink-0`,(0,t.unref)(o).dimText])},(0,t.toDisplayString)(e.time),3)):(0,t.createCommentVNode)(``,!0)]),e.message?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)([`mt-0.5 block text-sm`,(0,t.unref)(o).mutedText])},(0,t.toDisplayString)(e.message),3)):(0,t.createCommentVNode)(``,!0)])],10,gn)]))),128))],2))])],10,pn)):(0,t.createCommentVNode)(``,!0)]),_:1})]))}}),bn=[`disabled`],xn=(0,t.defineComponent)({__name:`BaseChipButton`,props:{size:{default:`sm`},disabled:{type:Boolean,default:!1}},emits:[`click`],setup(e,{emit:n}){let r=n,{isDark:i}=d();return(n,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:`button`,disabled:e.disabled,class:(0,t.normalizeClass)([`inline-flex items-center gap-1 font-medium rounded-md border transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[e.size===`xs`?`text-xs px-2 py-0.5`:`text-xs px-2.5 py-1`,(0,t.unref)(i)?`text-emerald-300 border-emerald-700 bg-emerald-900/30 hover:bg-emerald-800/50`:`text-emerald-700 border-emerald-200 bg-emerald-50 hover:bg-emerald-100`]]),onClick:a[0]||=e=>r(`click`)},[(0,t.renderSlot)(n.$slots,`default`)],10,bn))}}),Sn=(0,t.defineComponent)({__name:`BaseRemoveButton`,emits:[`click`],setup(e,{emit:n}){let r=n;return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:`button`,class:`px-2 text-lg leading-none text-red-400 hover:text-red-600 transition-colors cursor-pointer rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-red-400 disabled:cursor-not-allowed disabled:text-gray-400 disabled:hover:text-gray-400`,onClick:n[0]||=e=>r(`click`)},` × `))}}),Cn={class:`relative flex h-2 w-2`},wn={key:0,class:`animate-ping absolute inline-flex h-full w-full rounded-full bg-emerald-400 opacity-75`,"aria-hidden":`true`},Tn=(0,t.defineComponent)({__name:`BaseStatusPill`,props:{status:{},label:{}},setup(e){let n=e,{isDark:r}=d(),i=(0,t.computed)(()=>{switch(n.status){case`ok`:return r.value?`bg-emerald-500/10 text-emerald-400`:`bg-emerald-50 text-emerald-700`;case`error`:return r.value?`bg-red-500/10 text-red-400`:`bg-red-50 text-red-700`;default:return r.value?`bg-gray-700 text-gray-400`:`bg-gray-100 text-gray-500`}}),a=(0,t.computed)(()=>{switch(n.status){case`ok`:return`bg-emerald-500`;case`error`:return`bg-red-500`;default:return`bg-gray-400`}});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`flex items-center gap-2 px-3 py-1.5 rounded-lg text-xs`,i.value])},[(0,t.createElementVNode)(`span`,Cn,[e.status===`ok`?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,wn)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`relative inline-flex rounded-full h-2 w-2`,a.value])},null,2)]),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.label),1)],2))}}),En={class:`text-sm font-medium`},Dn=[`accept`,`multiple`,`disabled`],On=(0,t.defineComponent)({__name:`BaseFileDropzone`,props:{label:{},hint:{default:``},accept:{default:``},multiple:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:[`files`],setup(e,{emit:n}){let r=e,i=n,{isDark:a}=d(),o=(0,t.ref)(!1);function s(e){let t=e.target,n=Array.from(t.files??[]);t.value=``,n.length&&i(`files`,n)}function c(){r.disabled||(o.value=!0)}function l(e){if(o.value=!1,r.disabled)return;let t=Array.from(e.dataTransfer?.files??[]);t.length&&i(`files`,r.multiple?t:t.slice(0,1))}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`label`,{class:(0,t.normalizeClass)([`flex flex-col items-center justify-center gap-2 rounded-lg border-2 border-dashed px-6 py-10 text-center transition-colors`,[e.disabled?`opacity-50 cursor-not-allowed`:`cursor-pointer`,o.value?(0,t.unref)(a)?`border-emerald-500 text-emerald-400`:`border-emerald-500 text-emerald-600`:(0,t.unref)(a)?`border-gray-700 hover:border-emerald-500 text-gray-400 hover:text-emerald-400`:`border-gray-300 hover:border-emerald-500 text-gray-500 hover:text-emerald-600`]]),onDragover:(0,t.withModifiers)(c,[`prevent`]),onDragleave:r[0]||=(0,t.withModifiers)(e=>o.value=!1,[`prevent`]),onDrop:(0,t.withModifiers)(l,[`prevent`])},[(0,t.renderSlot)(n.$slots,`icon`,{},()=>[r[1]||=(0,t.createElementVNode)(`svg`,{class:`w-10 h-10`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,"stroke-width":`1.5`,"aria-hidden":`true`},[(0,t.createElementVNode)(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m6.75 12-3-3m0 0-3 3m3-3v6m-1.5-15H5.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 0 0-9-9Z`})],-1)]),(0,t.createElementVNode)(`p`,En,(0,t.toDisplayString)(e.label),1),e.hint?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:0,class:(0,t.normalizeClass)([`text-xs`,(0,t.unref)(a)?`text-gray-500`:`text-gray-400`])},(0,t.toDisplayString)(e.hint),3)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`input`,{type:`file`,class:`hidden`,accept:e.accept,multiple:e.multiple,disabled:e.disabled,onChange:s},null,40,Dn)],34))}}),kn=(0,t.defineComponent)({__name:`BaseCodeBlock`,props:{code:{},variant:{default:`soft`},size:{default:`sm`},maxHeightClass:{default:``}},setup(e){let n=e,{isDark:r}=d(),i={soft:{dark:`bg-gray-800/70 text-gray-300`,light:`bg-gray-100 text-gray-700`},bordered:{dark:`border bg-gray-900 border-gray-700 text-gray-300`,light:`border bg-white border-gray-200 text-gray-700`}},a={sm:`text-sm px-5 py-4 rounded-lg`,xs:`text-xs p-3 rounded-lg`},o=(0,t.computed)(()=>{let e=i[n.variant];return r.value?e.dark:e.light}),s=(0,t.computed)(()=>a[n.size]);return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`pre`,{class:(0,t.normalizeClass)([`font-mono overflow-auto`,[s.value,o.value,e.maxHeightClass]])},(0,t.toDisplayString)(e.code),3))}}),An=[`value`,`type`],K=(0,t.defineComponent)({__name:`BaseInput`,props:{modelValue:{default:``},type:{default:`text`},size:{default:`md`},block:{type:Boolean,default:!0}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=n;function i(e){r(`update:modelValue`,e.target.value)}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`input`,{value:e.modelValue,type:e.type,class:(0,t.normalizeClass)([`rounded border border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-900 dark:text-slate-100 text-sm placeholder:text-slate-400 dark:placeholder:text-slate-500 transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:border-emerald-500 disabled:opacity-60 disabled:cursor-not-allowed`,[e.block?`w-full`:``,e.size===`sm`?`px-2 py-1.5`:`px-3 py-2`]]),onInput:i},null,42,An))}}),jn=[`value`],q=(0,t.defineComponent)({__name:`BaseSelect`,props:{modelValue:{default:void 0},size:{default:`sm`},block:{type:Boolean,default:!0}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=n;function i(e){r(`update:modelValue`,e.target.value)}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`select`,{value:e.modelValue,class:(0,t.normalizeClass)([`rounded border border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-900 dark:text-slate-100 text-sm cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:border-emerald-500 disabled:opacity-60 disabled:cursor-not-allowed`,[e.block?`w-full`:``,e.size===`md`?`px-3 py-2`:`px-2 py-1.5`]]),onChange:i},[(0,t.renderSlot)(n.$slots,`default`)],42,jn))}}),Mn=[`disabled`,`aria-label`,`aria-expanded`],Nn=[`aria-label`],Pn=[`aria-selected`,`title`],Fn=[`disabled`,`onClick`],In=(0,t.defineComponent)({__name:`BaseDropdown`,props:{options:{},modelValue:{default:null},placeholder:{default:`Select`},size:{default:`md`},block:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},ariaLabel:{default:``},triggerClass:{default:``},chevronClass:{default:`w-5 h-5 text-slate-500 dark:text-slate-400`}},emits:[`update:modelValue`],setup(e,{emit:r}){let i=e,a=r,o=(0,t.ref)(!1),s=(0,t.ref)(null),c=(0,t.computed)(()=>i.options.find(e=>e.value===i.modelValue)??null),l=(0,t.computed)(()=>i.triggerClass?`flex items-center justify-between gap-2 text-left transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed `+i.triggerClass:`flex items-center justify-between gap-2 text-left transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed rounded-lg border text-sm border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-900 text-slate-700 dark:text-slate-100 hover:bg-slate-50 dark:hover:bg-slate-800 `+(i.size===`sm`?`px-3 py-2`:`px-4 py-2.5`));function u(e){return`block w-full px-4 py-2 text-left text-sm transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500 disabled:opacity-50 disabled:cursor-not-allowed ${e.value===i.modelValue?`bg-emerald-500 text-white`:`text-slate-700 dark:text-slate-200 hover:bg-slate-100 dark:hover:bg-slate-800`}`}function d(){i.disabled||(o.value=!o.value)}function f(e){e.disabled||(a(`update:modelValue`,e.value),o.value=!1)}N(()=>{o.value=!1});function p(e){o.value&&s.value&&!s.value.contains(e.target)&&(o.value=!1)}return(0,t.onMounted)(()=>document.addEventListener(`click`,p)),(0,t.onBeforeUnmount)(()=>document.removeEventListener(`click`,p)),(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`rootEl`,ref:s,class:(0,t.normalizeClass)(e.block?`relative w-full`:`relative inline-block`)},[(0,t.createElementVNode)(`button`,{type:`button`,class:(0,t.normalizeClass)([l.value,e.block?`w-full`:``]),disabled:e.disabled,"aria-label":e.ariaLabel||void 0,"aria-haspopup":`listbox`,"aria-expanded":o.value,onClick:d},[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`min-w-0 truncate`,c.value?``:`text-slate-400 dark:text-slate-500`])},(0,t.toDisplayString)(c.value?c.value.label:e.placeholder),3),(0,t.createVNode)((0,t.unref)(n.ChevronDownIcon),{class:(0,t.normalizeClass)([`shrink-0 transition-transform`,[e.chevronClass,o.value?`rotate-180`:``]]),"aria-hidden":`true`},null,8,[`class`])],10,Mn),o.value?((0,t.openBlock)(),(0,t.createElementBlock)(`ul`,{key:0,role:`listbox`,"aria-label":e.ariaLabel||e.placeholder,class:`absolute z-20 mt-1 w-full min-w-max max-w-xs max-h-60 overflow-auto rounded-lg border border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-900 py-1 shadow-lg focus:outline-none`},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.options,n=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:String(n.value),role:`option`,"aria-selected":n.value===e.modelValue,title:n.title},[(0,t.createElementVNode)(`button`,{type:`button`,disabled:n.disabled,class:(0,t.normalizeClass)(u(n)),onClick:e=>f(n)},(0,t.toDisplayString)(n.label),11,Fn)],8,Pn))),128))],8,Nn)):(0,t.createCommentVNode)(``,!0)],2))}}),Ln=[`role`,`aria-label`],Rn=[`aria-pressed`,`title`,`onClick`],zn=`bg-slate-50 dark:bg-slate-900 text-slate-600 dark:text-slate-300 hover:bg-slate-100 dark:hover:bg-slate-800`,J=(0,t.defineComponent)({__name:`BaseSegmentedControl`,props:{options:{},modelValue:{},variant:{default:`base`},ariaLabel:{default:``},optionClass:{type:Function,default:void 0}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.computed)(()=>r.variant===`toolbar`?`inline-flex h-9 divide-x divide-slate-300 dark:divide-slate-600 rounded-md border border-slate-300 dark:border-slate-600 overflow-hidden`:`inline-flex rounded border border-slate-300 dark:border-slate-600 overflow-hidden`),o=(0,t.computed)(()=>r.variant===`toolbar`?`flex items-center px-3.5 text-xs font-semibold uppercase tracking-wide transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500`:`${r.variant===`wide`?`px-4 py-2`:`px-3 py-2`} text-sm font-medium transition-colors cursor-pointer border-l first:border-l-0 border-slate-300 dark:border-slate-600 focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500`),s=(0,t.computed)(()=>r.variant===`wide`?`bg-emerald-600 text-white`:`bg-emerald-500 text-white`);function c(e){let t=e.value===r.modelValue;return r.optionClass?r.optionClass(e,t):t?s.value:zn}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{role:e.ariaLabel?`group`:void 0,"aria-label":e.ariaLabel||void 0,class:(0,t.normalizeClass)(a.value)},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.options,n=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:String(n.value),type:`button`,class:(0,t.normalizeClass)([o.value,c(n)]),"aria-pressed":n.value===e.modelValue,title:n.title,onClick:e=>i(`update:modelValue`,n.value)},(0,t.toDisplayString)(n.label),11,Rn))),128))],10,Ln))}}),Bn={class:`w-full text-sm`},Vn={class:`bg-slate-50 dark:bg-slate-800/60 text-slate-600 dark:text-slate-300`},Hn={class:`text-left`},Un={key:0},Wn=[`colspan`],Gn=(0,t.defineComponent)({__name:`BaseTable`,props:{columns:{},empty:{type:Boolean,default:!1},emptyText:{default:`No rows.`}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`table`,Bn,[(0,t.createElementVNode)(`thead`,Vn,[(0,t.createElementVNode)(`tr`,Hn,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.columns,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`th`,{key:n,class:(0,t.normalizeClass)([`px-4 py-3`,e.align===`right`?`text-right`:``])},(0,t.toDisplayString)(e.label),3))),128))])]),(0,t.createElementVNode)(`tbody`,null,[e.empty?((0,t.openBlock)(),(0,t.createElementBlock)(`tr`,Un,[(0,t.createElementVNode)(`td`,{colspan:e.columns.length,class:`px-4 py-12 text-center text-slate-500`},[(0,t.renderSlot)(n.$slots,`empty`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.emptyText),1)])],8,Wn)])):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(n.$slots,`default`)])]))}}),Kn={class:`grid gap-3 md:grid-cols-2`},qn={key:0,class:`block text-[11px] uppercase tracking-wide text-slate-500 mb-1`},Jn=[`value`],Yn={key:2,class:`flex items-center gap-2 mt-4`},Xn=[`checked`,`onChange`],Zn={class:`text-sm text-slate-900 dark:text-slate-100`},Qn={key:4,class:`text-[11px] text-slate-400 mt-1`},$n=(0,t.defineComponent)({__name:`BaseSpecFields`,props:{specs:{},params:{}},emits:[`update`],setup(e,{emit:n}){let r=n;function i(e,t){r(`update`,e,t.target.checked)}function a(e,t){let n=parseFloat(t);r(`update`,e,Number.isNaN(n)?t:n)}return(n,o)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Kn,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.specs,o=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:o.key},[o.type===`boolean`?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`label`,qn,(0,t.toDisplayString)(o.label),1)),o.type===`select`?((0,t.openBlock)(),(0,t.createBlock)(q,{key:1,modelValue:String(e.params[o.key]??``),"onUpdate:modelValue":e=>r(`update`,o.key,e)},{default:(0,t.withCtx)(()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(o.options??[],e=>((0,t.openBlock)(),(0,t.createElementBlock)(`option`,{key:e,value:e},(0,t.toDisplayString)(e),9,Jn))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`])):o.type===`boolean`?((0,t.openBlock)(),(0,t.createElementBlock)(`label`,Yn,[(0,t.createElementVNode)(`input`,{checked:!!e.params[o.key],type:`checkbox`,class:`h-4 w-4`,onChange:e=>i(o.key,e)},null,40,Xn),(0,t.createElementVNode)(`span`,Zn,(0,t.toDisplayString)(o.label),1)])):((0,t.openBlock)(),(0,t.createBlock)(K,{key:3,modelValue:e.params[o.key],type:`number`,step:o.step??(o.type===`integer`?1:.01),min:o.min??void 0,"onUpdate:modelValue":e=>a(o.key,e)},null,8,[`modelValue`,`step`,`min`,`onUpdate:modelValue`])),o.help?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,Qn,(0,t.toDisplayString)(o.help),1)):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(n.$slots,`after`,{spec:o})]))),128))]))}}),er={class:`mt-1.5 space-y-0.5 px-1`},tr={class:`text-slate-400 dark:text-slate-500`},nr=(0,t.defineComponent)({__name:`BaseStatBreakdown`,props:{items:{},currency:{default:``},decimals:{default:2},signed:{type:Boolean,default:!1}},setup(e){let n=e;function r(e){return e==null?`—`:`${e<0?`-`:n.signed?`+`:``}${n.currency}${Math.abs(e).toFixed(n.decimals)}`}function i(e){return!n.signed||e==null?`text-slate-500 dark:text-slate-400`:e>=0?`text-emerald-600 dark:text-emerald-400`:`text-red-600 dark:text-red-400`}return(n,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,er,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.items,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.label,class:`flex items-center justify-between text-[11px]`},[(0,t.createElementVNode)(`span`,tr,(0,t.toDisplayString)(e.label),1),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`font-mono tabular-nums font-medium`,i(e.value)])},(0,t.toDisplayString)(r(e.value)),3)]))),128))]))}}),rr=[`disabled`,`title`,`aria-pressed`],ir=(0,t.defineComponent)({__name:`BaseFilterChip`,props:{label:{default:``},color:{default:`slate`},active:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},title:{default:void 0}},setup(e){let n={emerald:`border-emerald-300 dark:border-emerald-700/60 bg-emerald-50 dark:bg-emerald-900/20 text-emerald-700 dark:text-emerald-400 hover:bg-emerald-100 dark:hover:bg-emerald-900/30 focus-visible:ring-emerald-500`,sky:`border-sky-300 dark:border-sky-700/60 bg-sky-50 dark:bg-sky-900/20 text-sky-700 dark:text-sky-400 hover:bg-sky-100 dark:hover:bg-sky-900/30 focus-visible:ring-sky-500`,amber:`border-amber-300 dark:border-amber-700/60 bg-amber-50 dark:bg-amber-900/20 text-amber-700 dark:text-amber-400 hover:bg-amber-100 dark:hover:bg-amber-900/30 focus-visible:ring-amber-500`,red:`border-red-300 dark:border-red-700/60 bg-red-50 dark:bg-red-900/20 text-red-700 dark:text-red-400 hover:bg-red-100 dark:hover:bg-red-900/30 focus-visible:ring-red-500`,slate:`border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-600 dark:text-slate-300 hover:bg-slate-100 dark:hover:bg-slate-800 focus-visible:ring-emerald-500`},r={emerald:`border-emerald-500 bg-emerald-500 text-white hover:bg-emerald-600 focus-visible:ring-emerald-500`,sky:`border-sky-500 bg-sky-500 text-white hover:bg-sky-600 focus-visible:ring-sky-500`,amber:`border-amber-500 bg-amber-500 text-white hover:bg-amber-600 focus-visible:ring-amber-500`,red:`border-red-500 bg-red-500 text-white hover:bg-red-600 focus-visible:ring-red-500`,slate:`border-slate-600 bg-slate-600 text-white hover:bg-slate-700 focus-visible:ring-emerald-500`};return(i,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:`button`,disabled:e.disabled,title:e.title,"aria-pressed":e.active,class:(0,t.normalizeClass)([`whitespace-nowrap rounded-md border px-3 text-sm font-semibold text-center transition-colors focus:outline-none focus-visible:ring-2 disabled:opacity-50 disabled:cursor-not-allowed`,e.active?r[e.color]:n[e.color]])},[(0,t.renderSlot)(i.$slots,`default`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.label),1)])],10,rr))}}),ar={class:`flex items-center justify-between mb-4`},or={class:`text-lg font-semibold text-slate-900 dark:text-slate-100`},sr={key:0,class:`text-xs text-slate-500 dark:text-slate-400`},cr={key:0,class:`inline-flex items-center gap-2 text-xs text-slate-500`},lr={class:`grid gap-4 md:grid-cols-2`},ur={class:`md:col-span-2`},dr=[`for`],fr={class:`md:col-span-2`},pr=[`for`],mr={class:`text-[11px] text-slate-500 mt-1`},hr={class:`md:col-span-2`},gr=[`for`],_r={class:`md:col-span-2`},vr=[`for`],yr={class:`md:col-span-2`},Y=`placeholder:text-slate-400 dark:placeholder:text-slate-500 font-mono`,br=(0,t.defineComponent)({__name:`BaseCredentialsForm`,props:{title:{},subtitle:{default:``},idPrefix:{},keyLabel:{default:`API Key`},keyPlaceholder:{default:``},secretLabel:{default:`Secret Key`},secretPlaceholder:{default:`Enter secret key`},secretSetHint:{default:`A secret is currently set. Leave blank to keep it.`},permissionsHint:{default:``},requiredKeyMessage:{default:`API key is required.`},requiredSecretMessage:{default:`Secret key is required.`},savedMessage:{default:`Credentials saved.`},saveLabel:{default:`Save credentials`},fetchFn:{},updateFn:{},defaults:{}},emits:[`saved`,`error`,`load-error`],setup(e,{expose:n,emit:r}){let i=e,a=r,o=(0,t.ref)(!1),s=(0,t.ref)(!1),c=(0,t.reactive)({keyId:``,secretKey:``,baseUrl:i.defaults.baseUrl,dataUrl:i.defaults.dataUrl});async function l(){try{let e=await i.fetchFn();c.keyId=e.keyId??``,c.baseUrl=e.baseUrl||i.defaults.baseUrl,c.dataUrl=e.dataUrl||i.defaults.dataUrl,c.secretKey=``,s.value=e.hasSecret}catch(e){a(`load-error`,e instanceof Error?e.message:``)}}function u(e){return!e||!e.trim()}async function d(){if(!o.value){if(u(c.keyId)){a(`error`,i.requiredKeyMessage);return}if(!s.value&&u(c.secretKey)){a(`error`,i.requiredSecretMessage);return}if(u(c.baseUrl)||u(c.dataUrl)){a(`error`,`Base URL and Data URL are required.`);return}o.value=!0;try{s.value=(await i.updateFn({keyId:c.keyId.trim(),secretKey:u(c.secretKey)?void 0:c.secretKey.trim(),baseUrl:c.baseUrl.trim(),dataUrl:c.dataUrl.trim()})).hasSecret,c.secretKey=``,a(`saved`,i.savedMessage)}catch(e){a(`error`,e instanceof Error?e.message:`Failed to save`)}finally{o.value=!1}}}return(0,t.onMounted)(l),n({load:l}),(n,r)=>((0,t.openBlock)(),(0,t.createBlock)(O,{class:`!p-6`},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,ar,[(0,t.createElementVNode)(`div`,null,[(0,t.createElementVNode)(`h2`,or,(0,t.toDisplayString)(e.title),1),e.subtitle?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,sr,(0,t.toDisplayString)(e.subtitle),1)):(0,t.createCommentVNode)(``,!0)]),o.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,cr,[(0,t.createVNode)(k,{class:`!h-4 !w-4`}),r[4]||=(0,t.createTextVNode)(` Saving… `,-1)])):(0,t.createCommentVNode)(``,!0)]),(0,t.createElementVNode)(`div`,lr,[(0,t.createElementVNode)(`div`,ur,[(0,t.createElementVNode)(`label`,{for:`${e.idPrefix}-key-id`,class:`block text-xs uppercase tracking-wide text-slate-500 mb-1`},(0,t.toDisplayString)(e.keyLabel),9,dr),(0,t.createVNode)(K,{id:`${e.idPrefix}-key-id`,modelValue:c.keyId,"onUpdate:modelValue":r[0]||=e=>c.keyId=e,type:`text`,autocomplete:`off`,placeholder:e.keyPlaceholder,class:(0,t.normalizeClass)(Y)},null,8,[`id`,`modelValue`,`placeholder`])]),(0,t.createElementVNode)(`div`,fr,[(0,t.createElementVNode)(`label`,{for:`${e.idPrefix}-secret`,class:`block text-xs uppercase tracking-wide text-slate-500 mb-1`},(0,t.toDisplayString)(e.secretLabel),9,pr),(0,t.createVNode)(K,{id:`${e.idPrefix}-secret`,modelValue:c.secretKey,"onUpdate:modelValue":r[1]||=e=>c.secretKey=e,type:`password`,autocomplete:`new-password`,placeholder:s.value?`•••••••• (unchanged — type to replace)`:e.secretPlaceholder,class:(0,t.normalizeClass)(Y)},null,8,[`id`,`modelValue`,`placeholder`]),(0,t.createElementVNode)(`p`,mr,[s.value?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.createTextVNode)((0,t.toDisplayString)(e.secretSetHint),1)],64)):(0,t.renderSlot)(n.$slots,`no-secret-hint`,{key:1},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.permissionsHint),1)])])]),(0,t.createElementVNode)(`div`,hr,[(0,t.createElementVNode)(`label`,{for:`${e.idPrefix}-base-url`,class:`block text-xs uppercase tracking-wide text-slate-500 mb-1`},`Base URL (trading)`,8,gr),(0,t.createVNode)(K,{id:`${e.idPrefix}-base-url`,modelValue:c.baseUrl,"onUpdate:modelValue":r[2]||=e=>c.baseUrl=e,type:`text`,class:(0,t.normalizeClass)(Y)},null,8,[`id`,`modelValue`]),(0,t.renderSlot)(n.$slots,`base-url-extra`,{form:c})]),(0,t.createElementVNode)(`div`,_r,[(0,t.createElementVNode)(`label`,{for:`${e.idPrefix}-data-url`,class:`block text-xs uppercase tracking-wide text-slate-500 mb-1`},`Data URL (market data)`,8,vr),(0,t.createVNode)(K,{id:`${e.idPrefix}-data-url`,modelValue:c.dataUrl,"onUpdate:modelValue":r[3]||=e=>c.dataUrl=e,type:`text`,class:(0,t.normalizeClass)(Y)},null,8,[`id`,`modelValue`])]),(0,t.createElementVNode)(`div`,yr,[(0,t.createVNode)(w,{color:(0,t.unref)(S).GREEN,description:e.saveLabel,isDisable:o.value,isLoading:o.value,onClick:d},null,8,[`color`,`description`,`isDisable`,`isLoading`])])]),(0,t.renderSlot)(n.$slots,`footer`)]),_:3}))}}),xr={key:0,class:`text-sm text-slate-500 dark:text-slate-400`},Sr={class:`mb-3 flex flex-wrap items-center gap-2`},Cr={class:`relative min-w-[200px] flex-1`},wr=[`placeholder`],Tr={key:0,class:`text-sm text-slate-500 dark:text-slate-400`},Er={key:1,class:`flex flex-wrap gap-2`},Dr=[`title`,`onClick`],Or=`h-9 rounded-md border border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-900 dark:text-slate-100 text-sm focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,X=`\0all`,kr=(0,t.defineComponent)({__name:`BasePillPickerModal`,props:{title:{},items:{},groups:{},icon:{},subtitle:{},searchPlaceholder:{default:`Filter…`},emptyMessage:{default:`Nothing to pick from.`},noMatchMessage:{default:`No items match the current filter.`},mono:{type:Boolean,default:!1},maxWidthClass:{default:`max-w-2xl`},closeText:{default:`Close`},groupAriaLabel:{default:`Group`},allLabel:{default:`All`}},emits:[`pick`,`close`],setup(e,{emit:r}){let i=e,a=r,o=(0,t.computed)(()=>i.icon??n.MagnifyingGlassIcon),s=(0,t.ref)(``),c=(0,t.ref)(X),l=(0,t.computed)(()=>i.groups&&i.groups.length>0?[{value:X,label:i.allLabel},...i.groups]:[]),u=(0,t.computed)(()=>i.items.filter(e=>(c.value===X||e.group===c.value)&&e.label.toLowerCase().includes(s.value.trim().toLowerCase())));return(r,i)=>((0,t.openBlock)(),(0,t.createBlock)(P,{title:e.title,icon:o.value,subtitle:e.subtitle,scrollable:``,"max-width-class":e.maxWidthClass,onCancel:i[4]||=e=>a(`close`)},{footer:(0,t.withCtx)(()=>[(0,t.createVNode)(W,{variant:`ghost`,label:e.closeText,onClick:i[3]||=e=>a(`close`)},null,8,[`label`])]),default:(0,t.withCtx)(()=>[e.items.length===0?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,xr,(0,t.toDisplayString)(e.emptyMessage),1)):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[(0,t.createElementVNode)(`div`,Sr,[(0,t.createElementVNode)(`div`,Cr,[(0,t.createVNode)((0,t.unref)(n.MagnifyingGlassIcon),{class:`pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-slate-400`}),(0,t.withDirectives)((0,t.createElementVNode)(`input`,{"onUpdate:modelValue":i[0]||=e=>s.value=e,type:`text`,placeholder:e.searchPlaceholder,autocomplete:`off`,class:(0,t.normalizeClass)([Or,`w-full pl-9 pr-8 placeholder:text-slate-400 dark:placeholder:text-slate-500`,e.mono?`font-mono`:``])},null,10,wr),[[t.vModelText,s.value]]),s.value?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:0,type:`button`,"aria-label":`Clear the filter`,class:`absolute right-2 top-1/2 -translate-y-1/2 text-slate-400 hover:text-slate-600 dark:hover:text-slate-200`,onClick:i[1]||=e=>s.value=``},` ✕ `)):(0,t.createCommentVNode)(``,!0)]),l.value.length>0?((0,t.openBlock)(),(0,t.createBlock)(J,{key:0,modelValue:c.value,"onUpdate:modelValue":i[2]||=e=>c.value=e,options:l.value,"aria-label":e.groupAriaLabel},null,8,[`modelValue`,`options`,`aria-label`])):(0,t.createCommentVNode)(``,!0)]),u.value.length===0?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,Tr,(0,t.toDisplayString)(e.noMatchMessage),1)):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Er,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(u.value,n=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:n.id,type:`button`,title:n.title,class:(0,t.normalizeClass)([`h-8 shrink-0 rounded-md border border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 px-3 text-sm text-slate-700 dark:text-slate-200 transition-colors hover:border-emerald-500 hover:bg-emerald-50 hover:text-emerald-700 dark:hover:bg-emerald-500/10 dark:hover:text-emerald-400 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,e.mono?`font-mono`:``]),onClick:e=>a(`pick`,n)},(0,t.toDisplayString)(n.label),11,Dr))),128))]))],64))]),_:1},8,[`title`,`icon`,`subtitle`,`max-width-class`]))}}),Ar=[`aria-label`],jr=[`title`],Mr={class:`text-[10px] tabular-nums text-slate-400 dark:text-slate-500`},Nr=[`title`],Pr=(0,t.defineComponent)({__name:`BaseBarDistribution`,props:{bars:{},ariaLabel:{default:`Value distribution`},countNoun:{default:`item`},titlePrefix:{default:``},maxBarHeight:{default:56},barClass:{default:`bg-emerald-500/80 dark:bg-emerald-400/80`}},setup(e){let n=e,r=(0,t.computed)(()=>Math.max(1,...n.bars.map(e=>e.count))),i=e=>Math.max(3,Math.round(e.count/r.value*n.maxBarHeight)),a=e=>`${n.titlePrefix?`${n.titlePrefix} `:``}${e.label}: ${e.count} ${n.countNoun}${e.count===1?``:`s`}`;return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:`flex items-end gap-1.5 overflow-x-auto pb-1`,role:`img`,"aria-label":e.ariaLabel},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.bars,n=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:n.label,class:`flex min-w-7 flex-1 flex-col items-center gap-0.5`,title:a(n)},[(0,t.createElementVNode)(`span`,Mr,(0,t.toDisplayString)(n.count),1),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`w-full max-w-8 rounded-t`,e.barClass]),style:(0,t.normalizeStyle)({height:`${i(n)}px`})},null,6),(0,t.createElementVNode)(`span`,{class:`max-w-full truncate font-mono text-[10px] text-slate-500 dark:text-slate-400`,title:n.label},(0,t.toDisplayString)(n.label),9,Nr)],8,jr))),128))],8,Ar))}});function Fr(e,n=300){let r=(0,t.ref)(e.value),i=null;return(0,t.watch)(e,e=>{i&&clearTimeout(i),i=setTimeout(()=>{r.value=e,i=null},n)}),(0,t.onScopeDispose)(()=>{i&&=(clearTimeout(i),null)}),r}function Ir(e=3e3){let n=(0,t.ref)(!1),r=(0,t.ref)(``),i=(0,t.ref)(A.SUCCESS),a=null;function o(){a&&=(clearTimeout(a),null)}function s(t,s=A.SUCCESS,c=e){r.value=t,i.value=s,n.value=!0,o(),a=setTimeout(()=>{n.value=!1,a=null},c)}return(0,t.onScopeDispose)(()=>{o()}),{showToast:n,toastMessage:r,toastType:i,showToastMessage:s}}function Lr(){let e=(0,i.useRoute)(),t=(0,i.useRouter)();function n(t){let n=e.query[t];return typeof n==`string`?n:``}function r(e,t,r){let i=n(e);return t.includes(i)?i:r}function a(n){let r=e.query;Object.keys(n).length===Object.keys(r).length&&Object.entries(n).every(([e,t])=>r[e]===t)||t.replace({query:n})}return{qparam:n,qenum:r,replaceQuery:a}}function Rr(){let{isDark:e}=d(),n=(0,t.computed)(()=>e.value?`text-gray-300`:`text-gray-600`),r=(0,t.computed)(()=>e.value?`bg-gray-800 border-gray-600 text-gray-100 placeholder-gray-500 focus:ring-emerald-500 focus:border-emerald-500`:`bg-white border-gray-300 text-gray-800 focus:ring-emerald-500 focus:border-emerald-500`);function i(t){return t==null||String(t).trim()===``?e.value?`bg-gray-800 border-red-500 text-gray-100 placeholder-gray-500 focus:ring-red-500 focus:border-red-500 ring-1 ring-red-500/30`:`bg-white border-red-400 text-gray-800 focus:ring-red-500 focus:border-red-500 ring-1 ring-red-400/30`:r.value}return{label:n,input:r,requiredInput:i}}function zr(e,n,r={}){let{immediate:i=!0,pauseWhenHidden:a=!0}=r,o=null,s=(0,t.ref)(!1),c=!1;function l(){o!==null||n===null||(o=setInterval(()=>void e(),n))}function u(){o!==null&&(clearInterval(o),o=null)}function d(){c=!1,!s.value&&(s.value=!0,i&&e(),l())}function f(){c=!1,s.value=!1,u()}function p(){if(document.visibilityState===`visible`){if(!c)return;c=!1,s.value=!0,e(),l()}else{if(!s.value)return;s.value=!1,u(),c=!0}}return(0,t.onMounted)(()=>{d(),a&&document.addEventListener(`visibilitychange`,p)}),(0,t.onUnmounted)(()=>{f(),a&&document.removeEventListener(`visibilitychange`,p)}),{start:d,stop:f,active:(0,t.readonly)(s)}}var Br=function(e){return e.WIN=`WIN`,e.LOSE=`LOSE`,e}({});function Vr(e){let t=`red`;switch(e){case a.ERROR:t=`red`;break;case a.SUCCESS:t=`green`;break;case a.INFO:t=`gray`;break;case a.WARNING:t=`yellow`;break}return t}function Hr(e){let t=`red`;switch(e){case h.GREEN:t=`green`;break;case h.RED:t=`red`;break;case h.BLUE:t=`blue`;break;case h.YELLOW:t=`yellow`;break;case h.BLACK:t=`black`;break;case h.GRAY:t=`gray`;break;case h.NONE:t=``;break}return t}var Ur={GET:`bg-blue-600`,POST:`bg-emerald-600`,PUT:`bg-amber-600`,DELETE:`bg-red-600`,PATCH:`bg-purple-600`,HEAD:`bg-gray-600`},Wr={GET:`bg-blue-500`,POST:`bg-green-500`,PUT:`bg-yellow-500`,DELETE:`bg-red-500`,PATCH:`bg-purple-500`,HEAD:`bg-gray-500`};function Gr(e){return e?Ur[e.toUpperCase()]??`bg-gray-600`:`bg-gray-600`}function Kr(e){return e?Wr[e.toUpperCase()]??`bg-gray-500`:`bg-gray-500`}function qr(e){let t=e??0;return t>=200&&t<300?`bg-emerald-600`:t>=300&&t<400?`bg-blue-600`:t>=400&&t<500?`bg-amber-600`:t>=500?`bg-red-600`:`bg-gray-600`}function Jr(e,t){let n=(e||`ANY`).toUpperCase();return n===`GET`?t?`bg-blue-500/15 text-blue-400`:`bg-blue-100 text-blue-700`:n===`POST`?t?`bg-emerald-500/15 text-emerald-400`:`bg-emerald-100 text-emerald-700`:n===`PUT`?t?`bg-amber-500/15 text-amber-400`:`bg-amber-100 text-amber-700`:n===`DELETE`?t?`bg-red-500/15 text-red-400`:`bg-red-100 text-red-700`:n===`PATCH`?t?`bg-purple-500/15 text-purple-400`:`bg-purple-100 text-purple-700`:n===`HEAD`?t?`bg-sky-500/15 text-sky-400`:`bg-sky-100 text-sky-700`:t?`bg-gray-500/15 text-gray-400`:`bg-gray-100 text-gray-600`}function Yr(e,t){let n=e??200;return n>=200&&n<300?t?`bg-emerald-500/15 text-emerald-300`:`bg-emerald-100 text-emerald-700`:n>=300&&n<400?t?`bg-sky-500/15 text-sky-300`:`bg-sky-100 text-sky-700`:n>=400&&n<500?t?`bg-amber-500/15 text-amber-300`:`bg-amber-100 text-amber-700`:n>=500&&n<600?t?`bg-red-500/15 text-red-300`:`bg-red-100 text-red-700`:t?`bg-gray-800 text-gray-400`:`bg-gray-100 text-gray-600`}function Xr(e,t){let n=e??200;return t?n>=200&&n<300?`bg-green-500/15 text-green-400`:n>=300&&n<400?`bg-blue-500/15 text-blue-400`:n>=400&&n<500?`bg-yellow-500/15 text-yellow-400`:`bg-red-500/15 text-red-400`:n>=200&&n<300?`bg-green-100 text-green-800`:n>=300&&n<400?`bg-blue-100 text-blue-800`:n>=400&&n<500?`bg-yellow-100 text-yellow-800`:`bg-red-100 text-red-800`}function Zr(e){return!(e.key??``).trim()||e.matcherType===`absent`?!1:!(e.value??``).trim()}function Qr(e){return e.matcherType===`absent`||!(e.value??``).trim()?!1:!(e.key??``).trim()}var $r=new Set([`A`,`B`,`STRONG`,`I`,`EM`,`CODE`,`PRE`,`BR`,`P`,`UL`,`OL`,`LI`,`SPAN`,`DIV`]),ei=new Set([`SCRIPT`,`STYLE`,`IFRAME`,`OBJECT`,`EMBED`,`NOSCRIPT`,`TEMPLATE`]),ti={A:new Set([`href`,`title`])};function Z(e){let t=e.trim().toLowerCase();return t.startsWith(`http://`)||t.startsWith(`https://`)||t.startsWith(`mailto:`)||t.startsWith(`tel:`)||t.startsWith(`/`)||t.startsWith(`#`)||t===``}function Q(e){if(e.nodeType!==Node.ELEMENT_NODE)return;let t=e,n=t.tagName.toUpperCase();if(!$r.has(n)){ei.has(n)?t.remove():t.replaceWith(document.createTextNode(t.textContent??``));return}let r=ti[n]??new Set;for(let e of Array.from(t.attributes)){if(!r.has(e.name.toLowerCase())){t.removeAttribute(e.name);continue}n===`A`&&e.name.toLowerCase()===`href`&&!Z(e.value)&&t.removeAttribute(e.name)}n===`A`&&t.hasAttribute(`href`)&&(t.setAttribute(`rel`,`noopener noreferrer`),t.setAttribute(`target`,`_blank`));for(let e of Array.from(t.childNodes))Q(e)}function ni(e){if(!e)return``;let t=new DOMParser().parseFromString(`<div>${e}</div>`,`text/html`).body.firstElementChild;if(!t)return``;for(let e of Array.from(t.childNodes))Q(e);return t.innerHTML}var $=`—`;function ri(e,t=4){if(e==null||typeof e==`string`&&e.trim()===``)return $;let n=typeof e==`string`?Number(e):e;return isFinite(n)?n.toLocaleString(void 0,{minimumFractionDigits:t,maximumFractionDigits:t}):$}function ii(e){if(e==null||e===``)return $;let t=new Date(e);return isNaN(t.getTime())?String(e):t.toLocaleString()}function ai(e){return new Date(e).toLocaleString(void 0,{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}function oi(e){return new Date(e).toLocaleDateString(void 0,{month:`short`,day:`numeric`})}function si(e){try{return new Date(e).toLocaleString(void 0,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,fractionalSecondDigits:3,hour12:!1})}catch{return String(e)}}function ci(e){if(!isFinite(e)||e===0)return e.toFixed(2);let t=Math.abs(e),n=2;return t<1e-4?n=8:t<.01?n=6:t<1?n=4:t<100&&(n=3),e.toLocaleString(void 0,{minimumFractionDigits:n,maximumFractionDigits:n})}function li(e,t=2){return`${e>=0?`+`:``}${e.toFixed(t)}%`}function ui(e){return`${e<0?`-`:`+`}$${Math.abs(e).toFixed(2)}`}function di(e){if(e==null||e===``)return $;let t=new Date(e);return isNaN(t.getTime())?String(e):t.toLocaleDateString(`en-US`,{year:`numeric`,month:`short`,day:`numeric`})}function fi(e){if(e==null||e===``)return $;let t=new Date(e);return isNaN(t.getTime())?String(e):t.toLocaleDateString(`en-US`,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}function pi(e){if(typeof e!=`number`||!isFinite(e)||e<=0)return``;let t=e/1e3,n=t<1?3:2;return`= ${t.toFixed(n)} s`}function mi(e){return e?e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`:``}function hi(e){try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function gi(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function _i(e,t=2){if(e==null||!isFinite(e))return $;let n=Math.floor(Math.max(0,e)/6e4),r=Math.floor(n/1440),i=Math.floor(n%1440/60),a=n%60,o=[];return r>0&&o.push(`${r}d`),(r>0||i>0)&&o.push(`${i}h`),o.push(`${a}m`),o.slice(0,t).join(` `)}function vi(e){let t=(e??``).trim();if(!t)return!1;try{let e=new URL(t);return e.protocol===`http:`||e.protocol===`https:`}catch{return!1}}function yi(e){if(!e.trim())return!0;try{return JSON.parse(e),!0}catch{return!1}}function bi(e){if(!e.trim())return!0;try{return!new DOMParser().parseFromString(e,`application/xml`).getElementsByTagName(`parsererror`).length}catch{return!1}}function xi(e){if(!e.trim())return!0;let t=e.replace(/\s+/g,``);if(!t)return!0;if(t.length%4!=0||!/^[A-Za-z0-9+/]*={0,2}$/.test(t))return!1;try{return atob(t),!0}catch{return!1}}function Si(e,t){let n={};if(!e)return n;for(let r of e){let e=t[r.key];n[r.key]=e??r.default}return n}function Ci(e,t){if(!e)return null;for(let n of e)if(n.type===`decimal`||n.type===`integer`){let e=t[n.key],r=e===``||e==null;if(n.default===null&&r)continue;if(typeof e!=`number`||Number.isNaN(e))return n.label}return null}function wi(e){if(e.buyPrice==null||e.lastPrice==null||e.filledQty==null)return{pnlUsd:null,pnlPct:null};let t=Number(e.buyPrice),n=Number(e.lastPrice),r=Number(e.filledQty);return!isFinite(t)||!isFinite(n)||!isFinite(r)||t<=0||n<=0?{pnlUsd:null,pnlPct:null}:{pnlUsd:(n-t)*r,pnlPct:(n-t)/t*100}}e.AlertEnum=a,e.BaseActionButton=Jt,e.BaseAlert=m,e.BaseAppLayout=Bt,e.BaseBadge=_,e.BaseBadgeEnum=Br,e.BaseBarDistribution=Pr,e.BaseBreadcrumb=x,e.BaseButton=w,e.BaseButtonEnum=S,e.BaseButtonSizeEnum=C,e.BaseChipButton=xn,e.BaseCodeBlock=kn,e.BaseCollapsibleSection=et,e.BaseConfirmModal=it,e.BaseCopyButton=Xt,e.BaseCredentialsForm=br,e.BaseDropdown=In,e.BaseEntityPickerModal=Lt,e.BaseFileDropzone=On,e.BaseFilterChip=ir,e.BaseGoogleSignInButton=G,e.BaseInput=K,e.BaseLine=de,e.BaseLoginEnum=fe,e.BaseLoginForm=fn,e.BaseLogo=me,e.BaseLogoEnum=E,e.BaseModal=be,e.BaseModalEnum=D,e.BaseModalShell=P,e.BaseNotFoundPage=dt,e.BaseNotificationPanel=yn,e.BasePageHeader=Ut,e.BasePillPickerModal=kr,e.BaseRemoveButton=Sn,e.BaseRow=O,e.BaseSegmentedControl=J,e.BaseSelect=q,e.BaseSidebar=wt,e.BaseSpecFields=$n,e.BaseSpinner=k,e.BaseStatBreakdown=nr,e.BaseStatusPill=Tn,e.BaseTable=Gn,e.BaseTextInputModal=ct,e.BaseToast=Ce,e.BaseToastEnum=A,e.BaseToolbarButton=W,e.ColoredSquares=Te,e.ColorsEnums=h,e.EarningsCard=Oe,e.EuroAmount=Ne,e.LineEnum=T,e.Pagination=Re,e.PositioningEnum=j,e.TrendArrow=Ue,e.buildSpecParams=Si,e.computePnL=wi,e.firstInvalidNumericSpec=Ci,e.fmtBytes=mi,e.fmtCalendarDate=di,e.fmtCalendarDateTime=fi,e.fmtDate=ii,e.fmtDateShort=oi,e.fmtDateTime=ai,e.fmtDateTimeMs=si,e.fmtDuration=_i,e.fmtMsAsSeconds=pi,e.fmtNumber=ri,e.fmtPct=li,e.fmtPrice=ci,e.fmtUsd=ui,e.formatJson=hi,e.getBaseColor=Vr,e.getBaseColorOf=Hr,e.initTheme=u,e.isSafeHref=Z,e.isValidAbsoluteUrl=vi,e.isValidBase64=xi,e.isValidJson=yi,e.isValidXml=bi,e.methodBadgeBright=Kr,e.methodBadgeSolid=Gr,e.methodBadgeTinted=Jr,e.rowKeyMissing=Qr,e.rowValueMissing=Zr,e.sanitizeHtml=ni,e.statusBadgeSoft=Yr,e.statusBadgeSolid=qr,e.statusBadgeTinted=Xr,e.stringifyValue=gi,e.useDebouncedRef=Fr,e.useEscapeKey=N,e.useFieldClasses=Rr,e.useMobileSidebar=I,e.useNotifications=U,e.usePolling=zr,e.useQueryParamSync=Lr,e.useSidebarCollapse=B,e.useTheme=d,e.useThemeClasses=M,e.useToast=Ir});
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("vue"),require("@heroicons/vue/24/outline"),require("@heroicons/vue/24/solid"),require("vue-router")):typeof define==`function`&&define.amd?define([`exports`,`vue`,`@heroicons/vue/24/outline`,`@heroicons/vue/24/solid`,`vue-router`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UiLib={},e.Vue,e.HeroiconsOutline,e.HeroiconsSolid,e.VueRouter))})(this,function(e,t,n,r,i){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var a=function(e){return e.WARNING=`WARNING`,e.ERROR=`ERROR`,e.SUCCESS=`SUCCESS`,e.INFO=`INFO`,e}({}),o=(0,t.ref)(!1),s=!1,c=`mgv-theme`;function l(e){if(s){e!==c&&console.warn(`[ui-lib] useTheme: storage key "${e}" ignored — theme already initialized with "${c}". Call initTheme({ storageKey }) before mounting any component.`);return}if(s=!0,c=e,typeof window<`u`){let e=window.localStorage?.getItem(c);e?o.value=e===`dark`:typeof window.matchMedia==`function`&&(o.value=window.matchMedia(`(prefers-color-scheme: dark)`).matches)}typeof document<`u`&&(0,t.effectScope)(!0).run(()=>{(0,t.watch)(o,e=>{document.documentElement.classList.toggle(`dark`,e),window.localStorage?.setItem(c,e?`dark`:`light`)},{immediate:!0})})}function u(e){l(e?.storageKey??c)}function d(e){l(e?.storageKey??c);function t(){o.value=!o.value}return{isDark:o,toggleTheme:t}}var f={class:`min-w-0 flex-1`},p={key:0,class:`font-medium`},m=(0,t.defineComponent)({__name:`BaseAlert`,props:{title:{default:``},color:{default:a.ERROR},compact:{type:Boolean,default:!1}},setup(e){let r=e,{isDark:i}=d(),o={[a.ERROR]:{light:`bg-red-50 border-red-200 text-red-700`,dark:`bg-red-500/10 border-red-500/30 text-red-300`},[a.WARNING]:{light:`bg-amber-50 border-amber-200 text-amber-700`,dark:`bg-amber-500/10 border-amber-500/30 text-amber-300`},[a.SUCCESS]:{light:`bg-emerald-50 border-emerald-200 text-emerald-700`,dark:`bg-emerald-500/10 border-emerald-500/30 text-emerald-300`},[a.INFO]:{light:`bg-sky-50 border-sky-200 text-sky-700`,dark:`bg-sky-500/10 border-sky-500/30 text-sky-300`}},s=(0,t.computed)(()=>i.value?o[r.color].dark:o[r.color].light),c=(0,t.computed)(()=>{switch(r.color){case a.SUCCESS:return n.CheckCircleIcon;case a.WARNING:return n.ExclamationTriangleIcon;case a.INFO:return n.InformationCircleIcon;default:return n.ExclamationCircleIcon}}),l=(0,t.computed)(()=>{switch(r.color){case a.SUCCESS:return`text-emerald-500`;case a.WARNING:return`text-amber-500`;case a.INFO:return`text-sky-500`;default:return`text-red-500`}});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{role:`alert`,class:(0,t.normalizeClass)([`flex gap-3 mb-4 rounded-lg border text-sm transition-colors`,[e.compact?`items-start px-3 py-2 text-xs`:`items-start p-4`,s.value]])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(c.value),{class:(0,t.normalizeClass)([`shrink-0`,[e.compact?`w-4 h-4 mt-px`:`w-5 h-5 mt-0.5`,l.value]]),"aria-hidden":`true`},null,8,[`class`])),(0,t.createElementVNode)(`div`,f,[e.title?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,p,(0,t.toDisplayString)(e.title),1)):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(n.$slots,`default`)])],2))}}),h=function(e){return e.NONE=`NONE`,e.RED=`RED`,e.YELLOW=`YELLOW`,e.BLACK=`BLACK`,e.GRAY=`GRAY`,e.GREEN=`GREEN`,e.BLUE=`BLUE`,e}({}),g=`bg-red-100 text-red-700 border-red-200`,_=(0,t.defineComponent)({__name:`BaseBadge`,props:{color:{type:String,required:!1}},setup(e){let n=(0,t.useSlots)(),r=(0,t.computed)(()=>!!n.default),i=()=>(n.default?.()??[]).map(e=>e.type===t.Text&&typeof e.children==`string`?(0,t.createTextVNode)(e.children.replace(/_/g,` `)):e),a=e,o={[h.RED]:`bg-red-100 text-red-700 border-red-200`,[h.GREEN]:`bg-green-100 text-green-700 border-green-200`,[h.BLUE]:`bg-blue-100 text-blue-700 border-blue-200`,[h.YELLOW]:`bg-yellow-100 text-yellow-700 border-yellow-200`,[h.GRAY]:`bg-gray-100 text-gray-700 border-gray-200`,[h.BLACK]:`bg-gray-800 text-gray-100 border-gray-700`,[h.NONE]:`bg-gray-50 text-gray-600 border-gray-200`},s=(0,t.computed)(()=>`inline-flex items-center gap-1 font-semibold text-xs leading-none px-3 py-1.5 rounded-full border ${a.color&&o[a.color]||g}`);return(e,n)=>r.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)(s.value)},[(0,t.createVNode)(i)],2)):(0,t.createCommentVNode)(``,!0)}}),v={class:`flex px-5 py-3 text-gray-700 border border-gray-200 rounded-lg bg-gray-50 dark:bg-gray-800 dark:border-gray-700`,"aria-label":`Breadcrumb`},y={class:`inline-flex items-center space-x-1 md:space-x-3`},b={class:`inline-flex items-center`,style:{"margin-left":`0`}},x=(0,t.defineComponent)({__name:`BaseBreadcrumb`,props:{items:{type:Array,required:!1,default:void 0},path:{type:String,required:!1,default:void 0}},setup(e){let i=e,a=(0,t.computed)(()=>{if(i.items&&i.items.length>0)return i.items;let e=(i.path??(typeof window<`u`?window.location.pathname:`/`)).split(`/`).filter(e=>e!==``),t=``;return e.map(e=>(t+=`/`+e,{name:Number.isNaN(Number(e))?(e.charAt(0).toUpperCase()+e.slice(1)).replaceAll(`-`,` `):e,url:t}))});return(e,i)=>{let o=(0,t.resolveComponent)(`router-link`);return(0,t.openBlock)(),(0,t.createElementBlock)(`nav`,v,[(0,t.createElementVNode)(`ol`,y,[(0,t.createElementVNode)(`li`,b,[(0,t.createVNode)(o,{to:`/`,class:`inline-flex items-center text-sm font-medium text-gray-700 hover:text-blue-600 dark:text-gray-400 dark:hover:text-white transition-colors rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`},{default:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(r.HomeIcon),{class:`h-4 w-4 text-gray-500 mr-2`}),i[0]||=(0,t.createTextVNode)(` Home `,-1)]),_:1})]),((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(a.value,(e,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:r,class:`inline-flex items-center`,style:{"margin-left":`0`}},[(0,t.createVNode)((0,t.unref)(n.ChevronRightIcon),{class:`h-4 w-4 text-gray-500`}),(0,t.createVNode)(o,{to:e.url,class:`ml-1 text-sm font-medium text-gray-700 hover:text-blue-600 md:ml-2 dark:text-gray-400 dark:hover:text-white transition-colors rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.name),1)]),_:2},1032,[`to`])]))),128))])])}}}),S=function(e){return e.RED=`RED`,e.BLUE=`BLUE`,e.WHITE=`WHITE`,e.DARK=`DARK`,e.GREEN=`GREEN`,e.EMERALD=`EMERALD`,e.YELLOW=`YELLOW`,e.PURPLE=`PURPLE`,e.SKY=`SKY`,e.GRAY=`GRAY`,e.AMBER=`AMBER`,e}({}),C=function(e){return e.EXTRA_SMALL=`EXTRA_SMALL`,e.SMALL=`SMALL`,e.BASE=`BASE`,e.LARGE=`LARGE`,e.EXTRA_LARGE=`EXTRA_LARGE`,e}({}),ee=[`type`,`disabled`,`onClick`],te={key:0,class:`inline-flex items-center`},ne={key:1},re={key:2},ie=[`type`,`disabled`],ae={key:0,class:`inline-flex items-center`},oe={key:1},se={key:2},w=(0,t.defineComponent)({__name:`BaseButton`,props:{description:{type:String,required:!0},color:{type:String,required:!1,default:S.BLUE},to:{type:String,required:!1},type:{type:String,required:!1,default:`button`},iconLeft:{type:Boolean,required:!1,default:!1},isRounded:{type:Boolean,required:!1},outline:{type:Boolean,required:!1,default:!1},ghost:{type:Boolean,required:!1,default:!1},isDisable:{type:Boolean,required:!1},size:{type:String,required:!1},isLoading:{type:Boolean,required:!1}},setup(e){let{isDark:n}=d(),r=e;function i(){let e={[S.BLUE]:{light:`text-blue-700 border-blue-300 hover:bg-blue-50`,dark:`text-blue-400 border-blue-500/40 hover:bg-blue-500/10`},[S.GREEN]:{light:`text-green-700 border-green-300 hover:bg-green-50`,dark:`text-green-400 border-green-500/40 hover:bg-green-500/10`},[S.EMERALD]:{light:`text-emerald-700 border-emerald-300 hover:bg-emerald-50`,dark:`text-emerald-400 border-emerald-500/40 hover:bg-emerald-500/10`},[S.RED]:{light:`text-red-700 border-red-300 hover:bg-red-50`,dark:`text-red-400 border-red-500/40 hover:bg-red-500/10`},[S.YELLOW]:{light:`text-yellow-700 border-yellow-300 hover:bg-yellow-50`,dark:`text-yellow-400 border-yellow-500/40 hover:bg-yellow-500/10`},[S.PURPLE]:{light:`text-purple-700 border-purple-300 hover:bg-purple-50`,dark:`text-purple-400 border-purple-500/40 hover:bg-purple-500/10`},[S.SKY]:{light:`text-sky-700 border-sky-300 hover:bg-sky-50`,dark:`text-sky-400 border-sky-500/40 hover:bg-sky-500/10`},[S.AMBER]:{light:`text-amber-700 border-amber-300 hover:bg-amber-50`,dark:`text-amber-400 border-amber-500/40 hover:bg-amber-500/10`},[S.GRAY]:{light:`text-gray-700 border-gray-300 hover:bg-gray-50`,dark:`text-gray-300 border-gray-600 hover:bg-gray-800`},[S.DARK]:{light:`text-gray-700 border-gray-300 hover:bg-gray-50`,dark:`text-gray-300 border-gray-600 hover:bg-gray-800`},[S.WHITE]:{light:`text-gray-700 border-gray-300 hover:bg-gray-50`,dark:`text-gray-300 border-gray-600 hover:bg-gray-800`}},t=e[r.color]??e[S.BLUE],i=n.value?t.dark:t.light;return r.isDisable||r.isLoading?`border bg-transparent ${i} opacity-50 cursor-not-allowed`:`focus:outline-none focus-visible:ring-2 focus-visible:ring-current border bg-transparent ${i}`}function a(){let e={[S.BLUE]:{light:`text-blue-600 hover:bg-blue-50`,dark:`text-blue-400 hover:bg-blue-500/10`},[S.GREEN]:{light:`text-green-600 hover:bg-green-50`,dark:`text-green-400 hover:bg-green-500/10`},[S.EMERALD]:{light:`text-emerald-600 hover:bg-emerald-50`,dark:`text-emerald-400 hover:bg-emerald-500/10`},[S.SKY]:{light:`text-sky-600 hover:bg-sky-50`,dark:`text-sky-400 hover:bg-sky-500/10`},[S.RED]:{light:`text-red-500 hover:bg-red-50`,dark:`text-red-400 hover:bg-red-500/10`},[S.AMBER]:{light:`text-amber-700 hover:bg-amber-50`,dark:`text-amber-300 hover:bg-amber-500/10`},[S.YELLOW]:{light:`text-yellow-600 hover:bg-yellow-50`,dark:`text-yellow-400 hover:bg-yellow-500/10`},[S.PURPLE]:{light:`text-purple-600 hover:bg-purple-50`,dark:`text-purple-400 hover:bg-purple-500/10`},[S.GRAY]:{light:`text-gray-500 hover:bg-gray-100`,dark:`text-gray-400 hover:bg-gray-800`},[S.DARK]:{light:`text-gray-500 hover:bg-gray-100`,dark:`text-gray-400 hover:bg-gray-800`},[S.WHITE]:{light:`text-gray-500 hover:bg-gray-100`,dark:`text-gray-400 hover:bg-gray-800`}},t=e[r.color]??e[S.GRAY],i=n.value?t.dark:t.light;return r.isDisable||r.isLoading?`bg-transparent ${i} opacity-60 cursor-not-allowed`:`focus:outline-none focus-visible:ring-2 focus-visible:ring-current bg-transparent ${i} cursor-pointer`}function o(){let e=r.isDisable||r.isLoading,t=`inline-flex items-center transition-colors duration-150`;e||(t+=` cursor-pointer`);let n;switch(r.color){case S.BLUE:n=e?`text-white bg-blue-400 cursor-not-allowed`:`focus:outline-none text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:ring-blue-300`;break;case S.WHITE:n=e?`text-gray-900 bg-gray-200 border border-gray-200 cursor-not-allowed`:`focus:outline-none text-gray-900 bg-white border border-gray-200 hover:bg-gray-100 hover:text-blue-700 focus:z-10 focus:ring-4 focus:ring-gray-200`;break;case S.DARK:n=e?`text-white bg-gray-400 cursor-not-allowed`:`focus:outline-none text-white bg-gray-800 hover:bg-gray-900 focus:ring-4 focus:ring-gray-300`;break;case S.GREEN:n=e?`text-white bg-green-400 cursor-not-allowed`:`focus:outline-none text-white bg-green-700 hover:bg-green-800 focus:ring-4 focus:ring-green-300`;break;case S.EMERALD:n=e?`text-white bg-emerald-400 cursor-not-allowed`:`focus:outline-none text-white bg-emerald-600 hover:bg-emerald-700 focus:ring-4 focus:ring-emerald-300`;break;case S.RED:n=e?`text-white bg-red-400 cursor-not-allowed`:`focus:outline-none text-white bg-red-700 hover:bg-red-800 focus:ring-4 focus:ring-red-300`;break;case S.YELLOW:n=e?`text-white bg-yellow-300 cursor-not-allowed`:`focus:outline-none text-white bg-yellow-400 hover:bg-yellow-500 focus:ring-4 focus:ring-yellow-300`;break;case S.PURPLE:n=e?`text-white bg-purple-400 cursor-not-allowed`:`focus:outline-none text-white bg-purple-700 hover:bg-purple-800 focus:ring-4 focus:ring-purple-300`;break;case S.SKY:n=e?`text-white bg-sky-400 cursor-not-allowed`:`focus:outline-none text-white bg-sky-600 hover:bg-sky-700 focus:ring-4 focus:ring-sky-300`;break;case S.AMBER:n=e?`text-white bg-amber-300 cursor-not-allowed`:`focus:outline-none text-white bg-amber-500 hover:bg-amber-600 focus:ring-4 focus:ring-amber-300`;break;case S.GRAY:n=e?`text-white bg-gray-400 cursor-not-allowed`:`focus:outline-none text-white bg-gray-600 hover:bg-gray-700 focus:ring-4 focus:ring-gray-300`;break;default:n=e?`text-white bg-blue-400 cursor-not-allowed`:`focus:outline-none text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:ring-blue-300`;break}r.outline&&(n=i()),r.ghost&&(n=a());let o=`px-5 py-2.5 mr-2 mb-2 text-sm`;switch(r.size){case C.EXTRA_SMALL:o=`px-3 py-2 text-xs`;break;case C.SMALL:o=`px-3 py-2 text-sm`;break;case C.BASE:o=`px-5 py-2.5 text-sm`;break;case C.LARGE:o=`px-5 py-3 text-base`;break;case C.EXTRA_LARGE:o=`px-6 py-3.5 text-base`;break}let s=`rounded-lg`;return r.isRounded&&(s=`rounded-full`),t+` `+o+` `+n+` font-medium `+s}return(n,i)=>{let a=(0,t.resolveComponent)(`router-link`);return e.to?((0,t.openBlock)(),(0,t.createBlock)(a,{key:0,to:e.to,custom:``},{default:(0,t.withCtx)(({navigate:a})=>[(0,t.createElementVNode)(`button`,{type:r.type,class:(0,t.normalizeClass)(o()),disabled:e.isDisable||e.isLoading,onClick:a},[e.isLoading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,te,[...i[0]||=[(0,t.createElementVNode)(`svg`,{"aria-hidden":`true`,role:`status`,class:`inline w-4 h-4 me-3 animate-spin`,viewBox:`0 0 100 101`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`},[(0,t.createElementVNode)(`path`,{d:`M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z`,fill:`#E5E7EB`}),(0,t.createElementVNode)(`path`,{d:`M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z`,fill:`currentColor`})],-1)]])):(0,t.createCommentVNode)(``,!0),e.iconLeft?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,ne,(0,t.toDisplayString)(e.description),1)),(0,t.renderSlot)(n.$slots,`default`),e.iconLeft?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,re,(0,t.toDisplayString)(e.description),1)):(0,t.createCommentVNode)(``,!0)],10,ee)]),_:3},8,[`to`])):((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:1,type:r.type,class:(0,t.normalizeClass)(o()),disabled:e.isDisable||e.isLoading},[e.isLoading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,ae,[...i[1]||=[(0,t.createElementVNode)(`svg`,{"aria-hidden":`true`,role:`status`,class:`inline w-4 h-4 me-3 animate-spin`,viewBox:`0 0 100 101`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`},[(0,t.createElementVNode)(`path`,{d:`M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z`,fill:`#E5E7EB`}),(0,t.createElementVNode)(`path`,{d:`M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z`,fill:`currentColor`})],-1)]])):(0,t.createCommentVNode)(``,!0),e.iconLeft?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,oe,(0,t.toDisplayString)(e.description),1)),(0,t.renderSlot)(n.$slots,`default`),e.iconLeft?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,se,(0,t.toDisplayString)(e.description),1)):(0,t.createCommentVNode)(``,!0)],10,ie))}}}),T=function(e){return e.BASE=`BASE`,e.BASE_SHORTER=`BASE_SHORTER`,e.SQUARE=`SQUARE`,e}({}),ce={key:0,class:`h-px my-8 bg-gray-200 border-0 dark:bg-gray-700`},le={key:1,class:`w-48 h-1 mx-auto my-4 bg-gray-100 border-0 rounded md:my-10 dark:bg-gray-700`},ue={key:2,class:`w-8 h-8 mx-auto my-8 bg-gray-200 border-0 rounded md:my-12 dark:bg-gray-700`},de=(0,t.defineComponent)({__name:`BaseLine`,props:{mode:{type:String,required:!1,default:T.BASE}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,null,[e.mode===(0,t.unref)(T).BASE?((0,t.openBlock)(),(0,t.createElementBlock)(`hr`,ce)):(0,t.createCommentVNode)(``,!0),e.mode===(0,t.unref)(T).BASE_SHORTER?((0,t.openBlock)(),(0,t.createElementBlock)(`hr`,le)):(0,t.createCommentVNode)(``,!0),e.mode===(0,t.unref)(T).SQUARE?((0,t.openBlock)(),(0,t.createElementBlock)(`hr`,ue)):(0,t.createCommentVNode)(``,!0)],64))}}),E=function(e){return e.SMALL=`SMALL`,e.MEDIUM=`MEDIUM`,e.LARGE=`LARGE`,e}({}),fe=E,pe=[`height`,`width`],me=(0,t.defineComponent)({__name:`BaseLogo`,props:{size:{type:String,required:!1,default:E.MEDIUM}},setup(e){let n=e;function r(){let e=``;switch(n.size){case E.SMALL:e=`50px`;break;case E.MEDIUM:e=`100px`;break;case E.LARGE:e=`150px`;break}return e}return(e,n)=>{let i=(0,t.resolveComponent)(`router-link`);return(0,t.openBlock)(),(0,t.createBlock)(i,{to:`/`,class:`flex items-center mb-6 text-2xl font-semibold text-gray-900 dark:text-white`},{default:(0,t.withCtx)(()=>[((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,{height:r(),width:r(),viewBox:`33.6 130.6 499.7 242.9`,xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`},[...n[0]||=[(0,t.createElementVNode)(`linearGradient`,{id:`a`},[(0,t.createElementVNode)(`stop`,{offset:`.085`,"stop-color":`#469e43`}),(0,t.createElementVNode)(`stop`,{offset:`1`,"stop-color":`#132d13`})],-1),(0,t.createElementVNode)(`linearGradient`,{id:`b`,gradientUnits:`userSpaceOnUse`,x1:`64.863`,x2:`64.863`,"xlink:href":`#a`,y1:`288.291`,y2:`369.4`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`c`,gradientUnits:`userSpaceOnUse`,x1:`138.367`,x2:`138.367`,"xlink:href":`#a`,y1:`308.454`,y2:`370.601`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`d`,gradientUnits:`userSpaceOnUse`,x1:`195.475`,x2:`195.475`,"xlink:href":`#a`,y1:`288.291`,y2:`369.85`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`e`,gradientUnits:`userSpaceOnUse`,x1:`249.634`,x2:`249.634`,"xlink:href":`#a`,y1:`307.312`,y2:`369.511`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`f`,gradientUnits:`userSpaceOnUse`,x1:`302.884`,x2:`302.884`,"xlink:href":`#a`,y1:`288.291`,y2:`367.857`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`g`,gradientUnits:`userSpaceOnUse`,x1:`354.118`,x2:`354.118`,"xlink:href":`#a`,y1:`307.312`,y2:`369.511`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`h`,gradientUnits:`userSpaceOnUse`,x1:`428.02`,x2:`428.02`,"xlink:href":`#a`,y1:`306.156`,y2:`367.742`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`i`,gradientUnits:`userSpaceOnUse`,x1:`502.066`,x2:`502.066`,"xlink:href":`#a`,y1:`288.291`,y2:`369.4`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`j`,gradientUnits:`userSpaceOnUse`,x1:`283.264`,x2:`283.264`,"xlink:href":`#a`,y1:`131.629`,y2:`232.559`},null,-1),(0,t.createElementVNode)(`linearGradient`,{id:`k`,gradientUnits:`userSpaceOnUse`,x1:`283.46`,x2:`283.46`,y1:`202.275`,y2:`183.785`},[(0,t.createElementVNode)(`stop`,{offset:`0`,"stop-color":`#969799`,"stop-opacity":`0`}),(0,t.createElementVNode)(`stop`,{offset:`1`,"stop-color":`#808183`})],-1),(0,t.createElementVNode)(`path`,{d:`m65 307.2c-6.8 0-13.1 2.2-18.2 5.9v-24.8h-13.2v81.1h31.4c17.2 0 31.1-13.9 31.1-31.1s-13.9-31.1-31.1-31.1zm0 49.3h-18.2v-18.2c0-10.1 8.2-18.2 18.2-18.2 10.1 0 18.2 8.2 18.2 18.2.1 10.1-8.1 18.2-18.2 18.2z`,fill:`url(#b)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m168.8 343.9h-46.7c1.4 7.1 6.6 12 14.1 12.7 6.4.6 12.9.1 19.9.1v11.9c-15.2 4.9-33.3.5-42.1-10.4-3.8-4.7-17.3-34.7 11.5-47.4 39-11.4 45.3 22.4 43.3 33.1zm-14.2-12.7c-1.7-8.1-8.8-12.9-17.9-12.3-7.6.5-14 5.8-14.5 12.3z`,fill:`url(#c)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m195.5 320.2c0 10.5-.2 20 .1 29.6.2 5.8 4.4 8.4 13.2 8.6v10.5c-13.8 3.9-26.2-4.5-26.4-18-.2-18.7-.1-43.9-.1-62.6h14.1l-.3 18.5 12.7-.1v13.4h-13.3z`,fill:`url(#d)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m249.6 307.3c-17.2 0-31.1 13.9-31.1 31.1s13.9 31.1 31.1 31.1h31.1v-31.1c0-17.2-13.9-31.1-31.1-31.1zm18.6 49.7h-18.5c-10.2 0-18.5-8.3-18.5-18.5s8.3-18.5 18.5-18.5 18.5 8.3 18.5 18.5z`,fill:`url(#e)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m296.4 288.3h13v79.6h-13z`,fill:`url(#f)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m354.1 307.3c-17.2 0-31.1 13.9-31.1 31.1s13.9 31.1 31.1 31.1h31.1v-31.1c0-17.2-13.9-31.1-31.1-31.1zm18.6 49.7h-18.5c-10.2 0-18.5-8.3-18.5-18.5s8.3-18.5 18.5-18.5 18.5 8.3 18.5 18.5z`,fill:`url(#g)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m442.2 367.7c0-12.3.2-23.6 0-34.9-.2-3.4-3.6-13.8-14.1-13.4-10.3-.3-14.4 10-14.3 12.7.1 10.2.5 35.1.5 35.1l-13.6.1s-.3-25.7.2-36.2c.6-14.1 12.7-25 27.5-25 14.7 0 26.2 10.4 26.7 24.9.4 10.4.5 36.3.5 36.3z`,fill:`url(#h)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m501.9 307.2c6.8 0 13.1 2.2 18.2 5.9v-24.8h13.2v81.1h-31.4c-17.2 0-31.1-13.9-31.1-31.1s13.9-31.1 31.1-31.1zm0 49.3h18.2v-18.2c0-10.1-8.2-18.2-18.2-18.2-10.1 0-18.2 8.2-18.2 18.2 0 10.1 8.1 18.2 18.2 18.2z`,fill:`url(#i)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m309.2 180.6h-24v-24c0-12.6 10.2-24.1 22.8-25 14.8-1 27.1 11.3 26.1 26.1-.8 12.7-12.3 22.9-24.9 22.9zm-50.7-48.9c-14.8-1-27.1 11.3-26.1 26.1.8 12.6 12.4 22.8 25 22.8h23.9v-24c0-12.6-10.3-24.1-22.8-24.9zm50.7 51.9h-24v23.9c0 12.6 10.2 24.1 22.8 25 14.8 1 27.1-11.3 26.1-26.1-.8-12.6-12.3-22.8-24.9-22.8zm-52.4 0c-14 0-25.3 11.8-24.4 26 .8 12.2 10.7 22.1 22.9 22.9 14.2.9 26-10.4 26-24.4v-24.5z`,fill:`url(#j)`},null,-1),(0,t.createElementVNode)(`path`,{d:`m281.7 183.8h3.6v18.5h-3.6z`,fill:`url(#k)`},null,-1)]],8,pe))]),_:1})}}}),D=function(e){return e.DELETE=`DELETE`,e.SUCCESS=`SUCCESS`,e}({}),he={key:0,class:`p-6 text-center`},ge={class:`flex justify-center`},_e={key:1,class:`p-6 text-center`},ve={key:0,class:`mb-5 text-sm text-gray-500`},ye={class:`flex justify-center`},be=(0,t.defineComponent)({__name:`BaseModal`,props:{title:{type:String,required:!0},description:{type:String,required:!1},to:{type:String,required:!1,default:`/`},mode:{type:String,required:!1,default:D.SUCCESS}},emits:[`closeModal`,`confirmModal`],setup(e,{emit:r}){let i=r,a=`modal-title-${Math.random().toString(36).slice(2,9)}`;function o(e){e.key===`Escape`&&i(`closeModal`)}return(0,t.onMounted)(()=>{document.addEventListener(`keydown`,o)}),(0,t.onUnmounted)(()=>{document.removeEventListener(`keydown`,o)}),(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,null,[(0,t.createElementVNode)(`div`,{class:`fixed inset-0 w-full h-screen bg-black/75 z-40`,onClick:i[0]||=e=>r.$emit(`closeModal`)}),(0,t.createElementVNode)(`div`,{class:`fixed top-[20vh] left-1/2 -translate-x-1/2 w-96 z-50 rounded-xl shadow-lg bg-white overflow-hidden`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":a},[e.mode===(0,t.unref)(D).DELETE?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,he,[(0,t.createVNode)((0,t.unref)(n.ExclamationCircleIcon),{class:`w-12 h-12 text-gray-400 mx-auto mb-4`}),(0,t.createElementVNode)(`h3`,{id:a,class:`mb-5 text-lg font-normal text-gray-500 dark:text-gray-400`},` Are you sure you want to delete this `+(0,t.toDisplayString)(e.title)+`? `,1),(0,t.createElementVNode)(`div`,ge,[(0,t.createVNode)(w,{color:(0,t.unref)(S).RED,onClick:i[1]||=e=>r.$emit(`confirmModal`),description:`Yes, I'm sure`},null,8,[`color`]),(0,t.createVNode)(w,{color:(0,t.unref)(S).WHITE,onClick:i[2]||=e=>r.$emit(`closeModal`),description:`No, cancel`},null,8,[`color`])])])):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,_e,[(0,t.createVNode)((0,t.unref)(n.CheckCircleIcon),{class:`w-12 h-12 text-green-500 mx-auto mb-4`}),(0,t.createElementVNode)(`h3`,{id:a,class:`mb-2 text-lg font-medium text-gray-900`},(0,t.toDisplayString)(e.title),1),e.description?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,ve,(0,t.toDisplayString)(e.description),1)):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(r.$slots,`default`),(0,t.createElementVNode)(`div`,ye,[(0,t.createVNode)(w,{color:(0,t.unref)(S).BLUE,onClick:i[3]||=e=>r.$emit(`closeModal`),description:`OK`},null,8,[`color`])])]))])],64))}}),O=(0,t.defineComponent)({__name:`BaseRow`,props:{bgColor:{type:String,required:!1,default:`bg-white`}},setup(e){let n=e;function r(){return`block p-8 border border-gray-200 rounded-xl shadow-sm dark:bg-gray-800 dark:border-gray-700 `+n.bgColor}return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)(r())},[(0,t.renderSlot)(e.$slots,`default`)],2))}}),k=(0,t.defineComponent)({__name:`BaseSpinner`,props:{size:{default:`sm`},color:{default:`blue`}},setup(e){let n=e,r=(0,t.computed)(()=>({sm:`w-4 h-4 border-2`,md:`w-6 h-6 border-2`,lg:`w-8 h-8 border-4`,xl:`w-12 h-12 border-4`})[n.size]),i=(0,t.computed)(()=>({blue:`border-t-blue-500`,emerald:`border-t-emerald-500`,sky:`border-t-sky-500`,indigo:`border-t-indigo-500`,teal:`border-t-teal-500`,purple:`border-t-purple-500`,red:`border-t-red-500`,amber:`border-t-amber-500`})[n.color]);return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`border-gray-200 rounded-full animate-spin`,[r.value,i.value]]),role:`status`,"aria-label":`Loading`},null,2))}}),A=function(e){return e.SUCCESS=`SUCCESS`,e.WARNING=`WARNING`,e.ERROR=`ERROR`,e}({}),j=function(e){return e.TOP_LEFT=`TOP_LEFT`,e.TOP_RIGHT=`TOP_RIGHT`,e.BOTTOM_LEFT=`BOTTOM_LEFT`,e.BOTTOM_RIGHT=`BOTTOM_RIGHT`,e}({}),xe={class:`flex items-center w-full max-w-md p-4 mb-4 text-gray-500 bg-white rounded-lg shadow dark:text-gray-400 dark:bg-gray-800`},Se={class:`ml-3 text-sm font-normal`},Ce=(0,t.defineComponent)({__name:`BaseToast`,props:{mode:{type:String,required:!0},description:{type:String,required:!0},hasCloseIcon:{type:Boolean,required:!1,default:!0},positioning:{type:String,required:!1,default:j.TOP_RIGHT},duration:{type:Number,required:!1,default:5e3}},setup(e){let r=e,i=(0,t.ref)(!0),a=null;function o(){i.value=!1,a&&=(clearTimeout(a),null)}(0,t.onMounted)(()=>{a=setTimeout(()=>i.value=!1,r.duration)}),(0,t.onUnmounted)(()=>{a&&clearTimeout(a)});function s(){let e=``;switch(r.mode){case A.ERROR:e=`text-red-500 bg-red-100 dark:bg-red-800 dark:text-red-200`;break;case A.SUCCESS:e=`text-green-500 bg-green-100 dark:bg-green-800 dark:text-green-200`;break;case A.WARNING:e=`text-orange-500 bg-orange-100 dark:bg-orange-700 dark:text-orange-200`;break;default:e=`text-gray-500 bg-gray-100 dark:bg-gray-800 dark:text-gray-200`;break}return`inline-flex items-center justify-center flex-shrink-0 w-8 h-8 rounded-lg `+e}function c(){let e=`top-5 right-5`;switch(r.positioning){case j.BOTTOM_LEFT:e=`bottom-5 left-5`;break;case j.TOP_LEFT:e=`top-5 left-5`;break;case j.TOP_RIGHT:e=`top-5 right-5`;break;case j.BOTTOM_RIGHT:e=`bottom-5 right-5`;break}return`fixed flex items-center w-full max-w-md p-4 space-x-4 divide-x rounded-lg `+e}return(r,a)=>i.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,id:`toast-top-right`,class:(0,t.normalizeClass)(c()),role:`alert`},[(0,t.createElementVNode)(`div`,xe,[e.mode==(0,t.unref)(A).ERROR?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)(s())},[(0,t.createVNode)((0,t.unref)(n.ExclamationCircleIcon),{class:`h-6 w-6 text-red-500`}),a[0]||=(0,t.createElementVNode)(`span`,{class:`sr-only`},`Error icon`,-1)],2)):e.mode==(0,t.unref)(A).SUCCESS?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,class:(0,t.normalizeClass)(s())},[(0,t.createVNode)((0,t.unref)(n.CheckCircleIcon),{class:`h-6 w-6 text-green-500`}),a[1]||=(0,t.createElementVNode)(`span`,{class:`sr-only`},`Check icon`,-1)],2)):e.mode==(0,t.unref)(A).WARNING?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:2,class:(0,t.normalizeClass)(s())},[(0,t.createVNode)((0,t.unref)(n.ExclamationTriangleIcon),{class:`h-6 w-6 text-yellow-500`}),a[2]||=(0,t.createElementVNode)(`span`,{class:`sr-only`},`Warning icon`,-1)],2)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,Se,(0,t.toDisplayString)(e.description),1),e.hasCloseIcon?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:3,type:`button`,class:`ml-auto -mx-1.5 -my-1.5 bg-white text-gray-400 hover:text-gray-900 rounded-lg focus:ring-2 focus:ring-gray-300 p-1.5 hover:bg-gray-100 inline-flex items-center justify-center h-8 w-8 dark:text-gray-500 dark:hover:text-white dark:bg-gray-800 dark:hover:bg-gray-700 cursor-pointer`,"aria-label":`Close`,onClick:o},[a[3]||=(0,t.createElementVNode)(`span`,{class:`sr-only`},`Close`,-1),(0,t.createVNode)((0,t.unref)(n.XMarkIcon),{class:`h-6 w-6 text-gray-500`})])):(0,t.createCommentVNode)(``,!0)])],2)):(0,t.createCommentVNode)(``,!0)}}),we={class:`w-13`},Te=(0,t.defineComponent)({__name:`ColoredSquares`,props:{color:{type:String,required:!1}},setup(e){let n=e,r=[`bg-slate-300`,`bg-zinc-300`,`bg-neutral-300`,`bg-stone-300`,`bg-blue-300`,`bg-green-300`,`bg-yellow-300`,`bg-purple-300`,`bg-pink-300`],i=(0,t.ref)(r[Math.floor(Math.random()*r.length)]);function a(){let e=`gray`;switch(n.color){case h.GREEN:e=`green`;break;case h.RED:e=`red`;break;case h.BLUE:e=`blue`;break;case h.YELLOW:e=`yellow`;break;case h.NONE:return`font-bold text-xs mr-2 px-2.5 py-0.5 rounded-full`}return`font-bold text-xs mr-2 px-2.5 py-0.5 rounded-full bg-`+e+`-100 text-`+e+`-800`}return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,we,[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`border border-gray-300 relative aspect-square rounded-lg bg-white shadow-sm overflow-hidden flex items-center justify-center text-center`,a()])},[(0,t.renderSlot)(e.$slots,`default`),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`absolute bottom-0 left-0 h-1 w-full`,i.value])},null,2)],2)]))}}),Ee={class:`flex items-start justify-between`},De={class:`min-w-0`},Oe=(0,t.defineComponent)({__name:`EarningsCard`,props:{title:{default:`TOTAL EARNINGS`},amount:{default:0},subtitle:{default:`Lifetime commission`},badge:{default:``},currency:{default:`$`},decimals:{default:2},accent:{default:`orange`},signed:{type:Boolean,default:!1},compact:{type:Boolean,default:!1}},setup(e){let n=e,r={orange:{border:`border-orange-300 dark:border-orange-700`,badge:`bg-orange-100 text-orange-500 dark:bg-orange-900/40 dark:text-orange-400`,amount:`text-gray-400 dark:text-slate-300`,subtitle:`text-orange-400 dark:text-orange-400`,iconBox:`bg-orange-50 dark:bg-orange-900/30`,icon:`text-orange-400`},emerald:{border:`border-emerald-300 dark:border-emerald-700`,badge:`bg-emerald-100 text-emerald-600 dark:bg-emerald-900/40 dark:text-emerald-400`,amount:`text-emerald-500 dark:text-emerald-400`,subtitle:`text-emerald-500 dark:text-emerald-400`,iconBox:`bg-emerald-50 dark:bg-emerald-900/30`,icon:`text-emerald-500`},red:{border:`border-red-300 dark:border-red-700`,badge:`bg-red-100 text-red-600 dark:bg-red-900/40 dark:text-red-400`,amount:`text-red-500 dark:text-red-400`,subtitle:`text-red-500 dark:text-red-400`,iconBox:`bg-red-50 dark:bg-red-900/30`,icon:`text-red-500`}},i=(0,t.computed)(()=>{let e=Number(n.amount);return Number.isFinite(e)?e:0}),a=(0,t.computed)(()=>n.signed&&i.value<0),o=(0,t.computed)(()=>a.value?`red`:n.accent),s=(0,t.computed)(()=>r[o.value]),c=(0,t.computed)(()=>n.currency+i.value.toLocaleString(`en-US`,{minimumFractionDigits:n.decimals,maximumFractionDigits:n.decimals}));return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`relative rounded-xl border-2 border-dashed bg-white dark:bg-slate-800`,[s.value.border,e.compact?`p-3`:`p-6`]])},[e.badge?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`absolute right-4 top-4 rounded-md px-3 py-1 text-xs font-bold tracking-wide`,s.value.badge])},(0,t.toDisplayString)(e.badge),3)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,Ee,[(0,t.createElementVNode)(`div`,De,[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`font-bold tracking-wide text-gray-800 dark:text-slate-200`,e.compact?`pr-8 text-xs`:`text-sm`])},(0,t.toDisplayString)(e.title),3),(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`mt-1 font-bold truncate`,[s.value.amount,e.compact?`text-lg`:`text-4xl`]])},(0,t.toDisplayString)(c.value),3),(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`mt-1 font-medium`,[s.value.subtitle,e.compact?`text-xs`:`text-sm`]])},(0,t.toDisplayString)(e.subtitle),3)]),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex items-center justify-center`,[s.value.iconBox,e.compact?`absolute right-2 top-2 h-6 w-6 rounded-lg`:`mt-6 h-12 w-12 rounded-xl`]])},[((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,{class:(0,t.normalizeClass)([s.value.icon,e.compact?`h-3.5 w-3.5`:`h-6 w-6`]),viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[a.value?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[r[0]||=(0,t.createElementVNode)(`polyline`,{points:`22 17 13.5 8.5 8.5 13.5 2 7`},null,-1),r[1]||=(0,t.createElementVNode)(`polyline`,{points:`16 17 22 17 22 11`},null,-1)],64)):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[r[2]||=(0,t.createElementVNode)(`polyline`,{points:`22 7 13.5 15.5 8.5 10.5 2 17`},null,-1),r[3]||=(0,t.createElementVNode)(`polyline`,{points:`16 7 22 7 22 13`},null,-1)],64))],2))],2)])],2))}}),ke={key:0,class:`font-bold text-green-800 dark:text-green-400`},Ae={key:0},je={key:0},Me=`font-bold`,Ne=(0,t.defineComponent)({__name:`EuroAmount`,props:{amount:{type:Number,required:!1},beforeAmount:{type:Number,default:null,required:!1},showCurrency:{type:Boolean,default:!0,required:!1}},setup(e){let n=e,r=(0,t.computed)(()=>n.amount!==null&&n.amount!==void 0),i=(0,t.computed)(()=>r.value&&n.amount<0),a=(0,t.computed)(()=>n.beforeAmount===null||n.beforeAmount===void 0?!1:n.amount<n.beforeAmount),o=(0,t.computed)(()=>i.value||a.value),s=(0,t.computed)(()=>!i.value&&!a.value&&!(n.beforeAmount===null||n.beforeAmount===void 0));return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,null,[r.value&&s.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,ke,[(0,t.createTextVNode)((0,t.toDisplayString)(e.amount)+` `,1),e.showCurrency?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Ae,`€`)):(0,t.createCommentVNode)(``,!0)])):(0,t.createCommentVNode)(``,!0),r.value&&!s.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:1,class:(0,t.normalizeClass)([Me,o.value?`text-red-800 dark:text-red-400`:`text-gray-800 dark:text-gray-200`])},[(0,t.createTextVNode)((0,t.toDisplayString)(e.amount)+` `,1),e.showCurrency?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,je,`€`)):(0,t.createCommentVNode)(``,!0)],2)):(0,t.createCommentVNode)(``,!0)],64))}}),Pe={"aria-label":`Pagination`},Fe={class:`flex list-none p-0 m-0`},Ie=[`aria-current`,`aria-label`,`onClick`],Le={key:1,"aria-hidden":`true`,class:`inline-block border border-gray-300 dark:border-gray-600 rounded-lg p-3 text-black dark:text-gray-200 cursor-not-allowed`},Re=(0,t.defineComponent)({__name:`Pagination`,props:{totalItems:{type:Number,required:!0},itemsPerPage:{type:Number,default:20}},emits:[`page-changed`],setup(e,{emit:n}){let r=e,i=(0,t.ref)(1),a=(0,t.ref)(0),o=(0,t.ref)([]),s=n;function c(e){if(a.value<=5){o.value=Array.from({length:a.value},(e,t)=>t+1);return}let t=[],n=Math.max(1,e-2),r=Math.min(a.value,e+2);n>1&&(t.push(1),n>2&&t.push(0));for(let e=n;e<=r;e++)t.push(e);r<a.value&&(r<a.value-1&&t.push(0),t.push(a.value)),o.value=t}function l(e){e===i.value||e<1||e>a.value||(i.value=e,c(e),s(`page-changed`,e))}return(0,t.watch)(()=>[r.totalItems,r.itemsPerPage],()=>{a.value=Math.ceil(r.totalItems/r.itemsPerPage),i.value>a.value&&(i.value=Math.max(1,a.value)),c(i.value)},{immediate:!0}),(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`nav`,Pe,[(0,t.createElementVNode)(`ul`,Fe,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(o.value,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:n,class:`mr-1`},[e===0?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Le,`...`)):((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:0,type:`button`,"aria-current":e===i.value?`page`:void 0,"aria-label":`Go to page ${e}`,onClick:t=>l(e),class:(0,t.normalizeClass)([`inline-block min-w-[44px] border border-gray-300 dark:border-gray-600 rounded-lg p-3 text-black dark:text-gray-200 cursor-pointer transition-colors hover:bg-gray-300 dark:hover:bg-gray-700 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,{"active font-bold bg-gray-200 dark:bg-gray-700":e===i.value}])},(0,t.toDisplayString)(e),11,Ie))]))),128))])]))}}),ze={key:0},Be={key:0,class:`flex items-center space-x-2`},Ve={key:1,class:`flex items-center space-x-2`},He={key:2,class:`flex items-center space-x-2`},Ue=(0,t.defineComponent)({__name:`TrendArrow`,props:{number:{type:Number,required:!1},icon:{type:String,required:!1}},setup(e){let r=e,i=(0,t.computed)(()=>r.number!==null&&r.number!==void 0&&r.number<0),a=(0,t.computed)(()=>r.number===0);return(o,s)=>e.number!==null&&e.number!==void 0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,ze,[i.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Be,[(0,t.createVNode)(_,{color:(0,t.unref)(h).RED},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.number)+(0,t.toDisplayString)(r.icon),1)]),_:1},8,[`color`]),(0,t.createVNode)((0,t.unref)(n.ArrowDownIcon),{class:`h-5 w-5 text-red-500`})])):a.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Ve,[(0,t.createVNode)(_,{color:(0,t.unref)(h).GRAY},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.number)+(0,t.toDisplayString)(r.icon),1)]),_:1},8,[`color`]),(0,t.createVNode)((0,t.unref)(n.MinusIcon),{class:`h-5 w-5 text-gray-400`})])):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,He,[(0,t.createVNode)(_,{color:(0,t.unref)(h).GREEN},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.number)+(0,t.toDisplayString)(r.icon),1)]),_:1},8,[`color`]),(0,t.createVNode)((0,t.unref)(n.ArrowUpIcon),{class:`h-5 w-5 text-green-500`})]))])):(0,t.createCommentVNode)(``,!0)}});function M(){let{isDark:e}=d();return(0,t.reactive)({card:(0,t.computed)(()=>e.value?`bg-gray-800 border-gray-700`:`bg-white border-gray-200`),cardAlt:(0,t.computed)(()=>e.value?`bg-gray-900 border-gray-700`:`bg-white border-gray-200`),pageBg:(0,t.computed)(()=>e.value?`bg-gray-900`:`bg-gray-50`),border:(0,t.computed)(()=>e.value?`border-gray-700`:`border-gray-200`),divider:(0,t.computed)(()=>e.value?`border-gray-800`:`border-gray-100`),primaryText:(0,t.computed)(()=>e.value?`text-white`:`text-gray-900`),primaryTextSoft:(0,t.computed)(()=>e.value?`text-gray-100`:`text-gray-800`),bodyText:(0,t.computed)(()=>e.value?`text-gray-200`:`text-gray-700`),label:(0,t.computed)(()=>e.value?`text-gray-300`:`text-gray-700`),mutedText:(0,t.computed)(()=>e.value?`text-gray-400`:`text-gray-600`),subtleText:(0,t.computed)(()=>e.value?`text-gray-500`:`text-gray-600`),dimText:(0,t.computed)(()=>e.value?`text-gray-500`:`text-gray-400`),dimTextAlt:(0,t.computed)(()=>e.value?`text-gray-400`:`text-gray-500`),illustration:(0,t.computed)(()=>e.value?`text-gray-600`:`text-gray-300`),input:(0,t.computed)(()=>e.value?`bg-gray-700 border-gray-600 text-white`:`bg-gray-50 border-gray-300 text-gray-900`),inputWithPlaceholder:(0,t.computed)(()=>e.value?`bg-gray-700 border-gray-600 text-white placeholder-gray-400`:`bg-gray-50 border-gray-300 text-gray-900 placeholder-gray-500`),ghostButton:(0,t.computed)(()=>e.value?`bg-gray-800 text-gray-200 border-gray-600 hover:bg-gray-700`:`bg-white text-gray-700 border-gray-300 hover:bg-gray-50`),emeraldText:(0,t.computed)(()=>e.value?`text-emerald-400`:`text-emerald-600`),amberText:(0,t.computed)(()=>e.value?`text-amber-400`:`text-amber-600`),amberTextStrong:(0,t.computed)(()=>e.value?`text-amber-300`:`text-amber-700`),redText:(0,t.computed)(()=>e.value?`text-red-400`:`text-red-500`)})}function N(e){function n(t){t.key===`Escape`&&e()}(0,t.onMounted)(()=>document.addEventListener(`keydown`,n)),(0,t.onBeforeUnmount)(()=>document.removeEventListener(`keydown`,n))}var We={class:`flex items-start gap-4 min-w-0`},Ge={class:`flex-1 min-w-0`},Ke={class:`p-6 overflow-y-auto flex-1`},qe={class:`p-6`},Je={class:`flex items-start gap-4`},Ye={class:`flex-1`},Xe={class:`mt-4`},Ze={class:`mt-6 flex gap-3 justify-end`},P=(0,t.defineComponent)({__name:`BaseModalShell`,props:{title:{},icon:{},iconBgClass:{default:``},iconClass:{default:`text-emerald-600`},maxWidthClass:{default:`max-w-md`},manualClose:{type:Boolean,default:!1},scrollable:{type:Boolean,default:!1},subtitle:{default:``}},emits:[`cancel`,`backdrop`],setup(e,{emit:n}){let r=e,i=n,{isDark:a}=d(),o=M(),s=`modal-title-${Math.random().toString(36).slice(2,9)}`,c=(0,t.computed)(()=>a.value?`bg-gray-900 border border-gray-700`:`bg-white border border-gray-200`),l=(0,t.computed)(()=>r.iconBgClass||(a.value?`bg-emerald-900/30`:`bg-emerald-50`));function u(){i(`backdrop`),r.manualClose||i(`cancel`)}return N(()=>{r.manualClose||i(`cancel`)}),(n,r)=>((0,t.openBlock)(),(0,t.createBlock)(t.Teleport,{to:`body`},[(0,t.createElementVNode)(`div`,{class:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":s,onClick:u},[e.scrollable?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`relative w-full mx-4 rounded-lg shadow-xl max-h-[90vh] flex flex-col`,[e.maxWidthClass,c.value]]),onClick:r[0]||=(0,t.withModifiers)(()=>{},[`stop`])},[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex items-start justify-between gap-4 p-6 border-b shrink-0`,(0,t.unref)(o).border])},[(0,t.createElementVNode)(`div`,We,[(0,t.renderSlot)(n.$slots,`icon`,{},()=>[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex-shrink-0 flex h-12 w-12 items-center justify-center rounded-full`,l.value])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.icon),{class:(0,t.normalizeClass)([`h-6 w-6`,e.iconClass]),"aria-hidden":`true`},null,8,[`class`]))],2)]),(0,t.createElementVNode)(`div`,Ge,[(0,t.createElementVNode)(`h3`,{id:s,class:(0,t.normalizeClass)([`text-lg font-medium`,(0,t.unref)(o).primaryText])},(0,t.toDisplayString)(e.title),3),e.subtitle?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:0,class:(0,t.normalizeClass)([`text-sm mt-1 break-all`,(0,t.unref)(o).mutedText])},(0,t.toDisplayString)(e.subtitle),3)):(0,t.createCommentVNode)(``,!0)])]),(0,t.renderSlot)(n.$slots,`header-actions`)],2),(0,t.createElementVNode)(`div`,Ke,[(0,t.renderSlot)(n.$slots,`default`)]),n.$slots.footer?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`flex gap-3 justify-end p-6 border-t shrink-0`,(0,t.unref)(o).border])},[(0,t.renderSlot)(n.$slots,`footer`)],2)):(0,t.createCommentVNode)(``,!0)],2)):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,class:(0,t.normalizeClass)([`relative w-full mx-4 rounded-lg shadow-xl`,[e.maxWidthClass,c.value]]),onClick:r[1]||=(0,t.withModifiers)(()=>{},[`stop`])},[(0,t.createElementVNode)(`div`,qe,[(0,t.createElementVNode)(`div`,Je,[(0,t.renderSlot)(n.$slots,`icon`,{},()=>[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex-shrink-0 flex h-12 w-12 items-center justify-center rounded-full`,l.value])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.icon),{class:(0,t.normalizeClass)([`h-6 w-6`,e.iconClass]),"aria-hidden":`true`},null,8,[`class`]))],2)]),(0,t.createElementVNode)(`div`,Ye,[(0,t.createElementVNode)(`h3`,{id:s,class:(0,t.normalizeClass)([`text-lg font-medium`,(0,t.unref)(o).primaryText])},(0,t.toDisplayString)(e.title),3)])]),(0,t.createElementVNode)(`div`,Xe,[(0,t.renderSlot)(n.$slots,`default`)]),(0,t.createElementVNode)(`div`,Ze,[(0,t.renderSlot)(n.$slots,`footer`)])])],2))])]))}}),Qe=[`aria-expanded`],$e={class:`flex items-center gap-3`},et=(0,t.defineComponent)({__name:`BaseCollapsibleSection`,props:{title:{},collapsed:{type:Boolean},badge:{},bodyClass:{}},emits:[`toggle`],setup(e,{emit:n}){let r=e,i=n,{isDark:a}=d(),o=M(),s=(0,t.computed)(()=>a.value?`text-gray-100`:`text-gray-700`),c=(0,t.computed)(()=>a.value?`bg-gray-800/50 hover:bg-gray-800 border-gray-700`:`bg-gray-50 hover:bg-gray-100 border-gray-200`),l=(0,t.computed)(()=>a.value?`bg-emerald-500/15 text-emerald-400`:`bg-emerald-50 text-emerald-700`),u=(0,t.computed)(()=>r.bodyClass===void 0?a.value?`bg-gray-800`:`bg-white`:r.bodyClass);return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`section`,{class:(0,t.normalizeClass)([`rounded-xl border transition-colors`,(0,t.unref)(o).cardAlt])},[(0,t.createElementVNode)(`button`,{type:`button`,class:(0,t.normalizeClass)([`w-full flex items-center justify-between p-4 text-left transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500`,[c.value,e.collapsed?`rounded-xl`:`rounded-t-xl`]]),"aria-expanded":!e.collapsed,onClick:r[0]||=e=>i(`toggle`)},[(0,t.createElementVNode)(`div`,$e,[(0,t.createElementVNode)(`h2`,{class:(0,t.normalizeClass)([`text-base font-semibold`,s.value])},(0,t.toDisplayString)(e.title),3),e.badge?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)([`text-xs px-2 py-0.5 rounded-full`,l.value])},(0,t.toDisplayString)(e.badge),3)):(0,t.createCommentVNode)(``,!0)]),((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,{class:(0,t.normalizeClass)([`w-5 h-5 transition-transform`,[e.collapsed?``:`rotate-180`,(0,t.unref)(o).dimTextAlt]]),fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,"stroke-width":`2`,"aria-hidden":`true`},[...r[1]||=[(0,t.createElementVNode)(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M19 9l-7 7-7-7`},null,-1)]],2))],10,Qe),(0,t.withDirectives)((0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`p-6 border-t rounded-b-xl`,[(0,t.unref)(o).border,u.value]])},[(0,t.renderSlot)(n.$slots,`default`)],2),[[t.vShow,!e.collapsed]])],2))}}),tt=[`disabled`],nt=[`disabled`],rt={key:0,class:`w-4 h-4 animate-spin`,fill:`none`,viewBox:`0 0 24 24`,"aria-hidden":`true`},it=(0,t.defineComponent)({__name:`BaseConfirmModal`,props:{title:{},message:{},confirmText:{default:`Yes, I'm sure`},cancelText:{default:`No, cancel`},submittingText:{default:`Working...`},variant:{default:`danger`},submitting:{type:Boolean,default:!1}},emits:[`confirm`,`cancel`],setup(e,{emit:r}){let i=e,a=r,{isDark:o}=d(),s=M();function c(){i.submitting||a(`confirm`)}function l(){i.submitting||a(`cancel`)}return(r,i)=>((0,t.openBlock)(),(0,t.createBlock)(P,{title:e.title,icon:(0,t.unref)(n.ExclamationTriangleIcon),"icon-bg-class":e.variant===`danger`?(0,t.unref)(o)?`bg-red-900/30`:`bg-red-50`:(0,t.unref)(o)?`bg-amber-900/30`:`bg-amber-50`,"icon-class":e.variant===`danger`?`text-red-600`:`text-amber-600`,"manual-close":e.submitting,onCancel:l},{footer:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`button`,{type:`button`,disabled:e.submitting,class:(0,t.normalizeClass)([`inline-flex items-center justify-center px-4 py-2 border rounded-md shadow-sm text-sm font-medium transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[(0,t.unref)(s).ghostButton,e.submitting?`opacity-60 cursor-not-allowed`:`cursor-pointer`]]),onClick:l},(0,t.toDisplayString)(e.cancelText),11,tt),(0,t.createElementVNode)(`button`,{type:`button`,disabled:e.submitting,class:(0,t.normalizeClass)([`inline-flex items-center justify-center gap-2 px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2`,[e.variant===`danger`?`focus-visible:ring-red-500`:`focus-visible:ring-emerald-500`,e.variant===`danger`?e.submitting?`bg-red-400 cursor-not-allowed`:`bg-red-600 hover:bg-red-700 cursor-pointer`:e.submitting?`bg-emerald-400 cursor-not-allowed`:`bg-emerald-600 hover:bg-emerald-700 cursor-pointer`]]),onClick:c},[e.submitting?((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,rt,[...i[0]||=[(0,t.createElementVNode)(`circle`,{class:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,"stroke-width":`4`},null,-1),(0,t.createElementVNode)(`path`,{class:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8v4a4 4 0 00-4 4H4z`},null,-1)]])):(0,t.createCommentVNode)(``,!0),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.submitting?e.submittingText:e.confirmText),1)],10,nt)]),default:(0,t.withCtx)(()=>[(0,t.renderSlot)(r.$slots,`message`,{},()=>[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(o)?`text-gray-300`:`text-gray-600`])},(0,t.toDisplayString)(e.message),3)]),(0,t.renderSlot)(r.$slots,`default`)]),_:3},8,[`title`,`icon`,`icon-bg-class`,`icon-class`,`manual-close`]))}}),at={class:`mt-4`},ot=[`placeholder`],st=[`disabled`],ct=(0,t.defineComponent)({__name:`BaseTextInputModal`,props:{title:{},message:{},initialValue:{default:``},placeholder:{default:`Enter value...`},inputLabel:{default:`Name`},confirmText:{default:`Confirm`},cancelText:{default:`Cancel`},submittingText:{default:`Working...`},submitting:{type:Boolean,default:!1}},emits:[`confirm`,`cancel`],setup(e,{emit:r}){let i=e,a=r,{isDark:o}=d(),s=M(),c=(0,t.ref)(i.initialValue),l=(0,t.ref)(null);(0,t.onMounted)(async()=>{await(0,t.nextTick)(),l.value?.focus()});function u(){!c.value.trim()||i.submitting||a(`confirm`,c.value.trim())}function f(){a(`cancel`)}function p(){c.value.trim()===(i.initialValue??``).trim()&&f()}return N(f),(r,i)=>((0,t.openBlock)(),(0,t.createBlock)(P,{title:e.title,icon:(0,t.unref)(n.DocumentDuplicateIcon),"manual-close":``,onBackdrop:p},(0,t.createSlots)({footer:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`button`,{type:`button`,class:(0,t.normalizeClass)([`inline-flex items-center justify-center px-4 py-2 border rounded-md shadow-sm text-sm font-medium transition-colors duration-150 cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,(0,t.unref)(s).ghostButton]),onClick:f},(0,t.toDisplayString)(e.cancelText),3),(0,t.createElementVNode)(`button`,{type:`button`,disabled:!c.value.trim()||e.submitting,class:(0,t.normalizeClass)([`inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:ring-offset-2`,[!c.value.trim()||e.submitting?`bg-emerald-400 cursor-not-allowed`:`bg-emerald-600 hover:bg-emerald-700 cursor-pointer`]]),onClick:u},(0,t.toDisplayString)(e.submitting?e.submittingText:e.confirmText),11,st)]),default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(o)?`text-gray-300`:`text-gray-600`])},(0,t.toDisplayString)(e.message),3),(0,t.createElementVNode)(`div`,at,[(0,t.createElementVNode)(`label`,{class:(0,t.normalizeClass)([`block text-sm font-medium mb-1`,(0,t.unref)(s).label])},(0,t.toDisplayString)(e.inputLabel),3),(0,t.withDirectives)((0,t.createElementVNode)(`input`,{ref_key:`nameInput`,ref:l,"onUpdate:modelValue":i[0]||=e=>c.value=e,type:`text`,placeholder:e.placeholder,class:(0,t.normalizeClass)([`w-full px-3 py-2 rounded-md border text-sm transition-colors`,(0,t.unref)(o)?`bg-gray-800 border-gray-600 text-gray-100 placeholder-gray-500 focus:outline-none focus:border-emerald-500`:`bg-white border-gray-300 text-gray-900 placeholder-gray-400 focus:outline-none focus:border-emerald-500`]),onKeyup:(0,t.withKeys)(u,[`enter`])},null,42,ot),[[t.vModelText,c.value]])])]),_:2},[r.$slots.icon?{name:`icon`,fn:(0,t.withCtx)(()=>[(0,t.renderSlot)(r.$slots,`icon`)]),key:`0`}:void 0]),1032,[`title`,`icon`]))}}),lt={class:`flex items-center justify-center min-h-[60vh]`},ut={class:`text-center px-6`},dt=(0,t.defineComponent)({__name:`BaseNotFoundPage`,props:{code:{default:`404`},message:{default:`Page not found`},homeRouteName:{default:`home`},homeLabel:{default:`Go home`}},setup(e){let r=e,a=(0,i.useRouter)(),{isDark:o}=d(),s=M();function c(){a.push({name:r.homeRouteName})}return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,lt,[(0,t.createElementVNode)(`div`,ut,[(0,t.createVNode)((0,t.unref)(n.ExclamationTriangleIcon),{class:(0,t.normalizeClass)([`w-16 h-16 mx-auto mb-4`,(0,t.unref)(s).illustration])},null,8,[`class`]),(0,t.createElementVNode)(`h1`,{class:(0,t.normalizeClass)([`text-4xl font-bold mb-2`,(0,t.unref)(o)?`text-gray-200`:`text-gray-800`])},(0,t.toDisplayString)(e.code),3),(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-lg mb-6`,(0,t.unref)(s).dimTextAlt])},(0,t.toDisplayString)(e.message),3),(0,t.createElementVNode)(`button`,{onClick:c,class:(0,t.normalizeClass)([`inline-flex items-center gap-2 px-4 py-2 rounded-lg text-sm font-medium text-white transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:ring-offset-2`,(0,t.unref)(o)?`bg-emerald-600 hover:bg-emerald-500`:`bg-emerald-600 hover:bg-emerald-700`])},(0,t.toDisplayString)(e.homeLabel),3)])]))}}),F=(0,t.ref)(!1);function I(){function e(){F.value=!0}function t(){F.value=!1}function n(){F.value=!F.value}return{mobileOpen:F,open:e,close:t,toggle:n}}var L=(0,t.ref)(!1),R=!1,z=`mgv-sidebar-collapsed`;function ft(e){if(!R&&(R=!0,z=e,typeof window<`u`)){let e=window.localStorage?.getItem(z);e&&(L.value=e===`true`),(0,t.effectScope)(!0).run(()=>{(0,t.watch)(L,e=>{window.localStorage?.setItem(z,String(e))})})}}function B(e){ft(e?.storageKey??z);function t(){L.value=!0}function n(){L.value=!1}function r(){L.value=!L.value}return{collapsed:L,collapse:t,expand:n,toggle:r}}var V=(0,t.ref)([]),H=(0,t.ref)(!1),pt=(0,t.computed)(()=>V.value.filter(e=>!e.read).length);function U(){function e(){H.value=!0}function t(){H.value=!1}function n(){H.value=!H.value}function r(e){V.value=e}function i(e){V.value=[e,...V.value]}function a(e){V.value=V.value.filter(t=>t.id!==e)}function o(e){V.value=V.value.map(t=>t.id===e?{...t,read:!0}:t)}function s(){V.value=V.value.map(e=>e.read?e:{...e,read:!0})}function c(){V.value=[]}return{notifications:V,unreadCount:pt,open:H,openPanel:e,closePanel:t,togglePanel:n,setNotifications:r,add:i,remove:a,markRead:o,markAllRead:s,clear:c}}var mt=[`aria-label`,`aria-expanded`],ht={class:`flex flex-col h-full`},gt={class:`flex-1 overflow-y-auto px-3 space-y-6`},_t={class:`space-y-0.5`},vt=[`aria-current`,`title`,`onClick`],yt=[`aria-label`],bt={class:`relative shrink-0`},xt={key:0,class:`absolute -top-1.5 -right-1.5 min-w-4 h-4 px-1 rounded-full bg-red-500 text-white text-[10px] font-semibold leading-4 text-center`},St=[`title`,`aria-label`,`aria-pressed`],Ct=[`title`,`aria-label`,`aria-pressed`],wt=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})((0,t.defineComponent)({__name:`BaseSidebar`,props:{sections:{},homeRouteName:{default:`home`},appName:{default:``},version:{default:``},showThemeToggle:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},showNotifications:{type:Boolean,default:!1}},setup(e){let r=e,a=(0,i.useRouter)(),o=(0,i.useRoute)(),{isDark:s,toggleTheme:c}=d(),{mobileOpen:l,close:u,toggle:f}=I(),{collapsed:p,toggle:m}=B(),{unreadCount:h,togglePanel:g}=U(),_=(0,t.computed)(()=>r.collapsible&&p.value),v=(0,t.ref)(null),y=null;(0,t.watch)(l,async e=>{e?(y=document.activeElement instanceof HTMLElement?document.activeElement:null,await(0,t.nextTick)(),v.value?.focus()):(y?.focus(),y=null)});function b(){a.push({name:r.homeRouteName}),u()}function x(e){return o.name===e}function S(e){a.push({name:e}),u()}return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,null,[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`mobile-topbar fixed top-0 inset-x-0 z-30 flex items-center justify-between px-4 py-3 border-b transition-colors`,(0,t.unref)(s)?`bg-gray-900 border-gray-800`:`bg-white border-gray-200`])},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:b,class:`cursor-pointer rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,"aria-label":`Go to home`},[(0,t.renderSlot)(r.$slots,`logo`,{size:28},void 0,!0)]),(0,t.createElementVNode)(`button`,{type:`button`,onClick:i[0]||=(...e)=>(0,t.unref)(f)&&(0,t.unref)(f)(...e),class:(0,t.normalizeClass)([`p-2 rounded-lg cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,(0,t.unref)(s)?`text-gray-400 hover:bg-gray-800`:`text-gray-600 hover:bg-gray-100`]),"aria-label":(0,t.unref)(l)?`Close navigation menu`:`Open navigation menu`,"aria-expanded":(0,t.unref)(l)},[(0,t.unref)(l)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.XMarkIcon),{key:1,class:`w-6 h-6`,"aria-hidden":`true`})):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.Bars3Icon),{key:0,class:`w-6 h-6`,"aria-hidden":`true`}))],10,mt)],2),(0,t.unref)(l)?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:`mobile-overlay fixed inset-0 z-40 bg-black/50`,"aria-hidden":`true`,onClick:i[1]||=(...e)=>(0,t.unref)(u)&&(0,t.unref)(u)(...e)})):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`aside`,{role:`navigation`,"aria-label":`Main navigation`,class:(0,t.normalizeClass)([`fixed top-0 left-0 h-screen w-60 flex flex-col border-r transition-all duration-300 lg:pointer-events-auto`,[(0,t.unref)(s)?`bg-gray-900 border-gray-800`:`bg-white border-gray-200`,(0,t.unref)(l)?`translate-x-0 z-50`:`-translate-x-full max-lg:pointer-events-none lg:translate-x-0 z-50`,e.collapsible&&(0,t.unref)(p)?`lg:w-16`:`lg:w-60`]])},[(0,t.createElementVNode)(`div`,ht,[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`px-5 pt-5 pb-4 flex items-center justify-center relative`,{"lg:px-2":_.value}])},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:b,class:`cursor-pointer rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,"aria-label":`Go to home`},[(0,t.renderSlot)(r.$slots,`logo`,{size:_.value?36:52},void 0,!0)]),(0,t.createElementVNode)(`button`,{ref_key:`closeMobileButton`,ref:v,type:`button`,onClick:i[2]||=(...e)=>(0,t.unref)(u)&&(0,t.unref)(u)(...e),class:(0,t.normalizeClass)([`lg:hidden p-1.5 rounded-lg cursor-pointer absolute right-3 top-4 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,(0,t.unref)(s)?`text-gray-400 hover:bg-gray-800`:`text-gray-500 hover:bg-gray-100`]),"aria-label":`Close navigation menu`},[(0,t.createVNode)((0,t.unref)(n.XMarkIcon),{class:`w-5 h-5`,"aria-hidden":`true`})],2)],2),(0,t.createElementVNode)(`nav`,gt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.sections,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.title},[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`px-2 mb-2 text-[10px] font-semibold uppercase tracking-wider text-gray-500`,{"lg:hidden":_.value}])},(0,t.toDisplayString)(e.title),3),(0,t.createElementVNode)(`ul`,_t,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.items,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:e.name},[(0,t.createElementVNode)(`button`,{type:`button`,"aria-current":x(e.name)?`page`:void 0,title:_.value?e.label:void 0,onClick:t=>S(e.name),class:(0,t.normalizeClass)([`flex items-center gap-3 px-3 py-2.5 rounded-lg text-sm font-medium transition-colors w-full text-left cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[x(e.name)?(0,t.unref)(s)?`bg-emerald-500/15 text-emerald-300`:`bg-emerald-50 text-emerald-700`:(0,t.unref)(s)?`text-gray-400 hover:text-gray-100 hover:bg-gray-800`:`text-gray-600 hover:text-gray-900 hover:bg-gray-100`,{"lg:justify-center":_.value}]])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.icon),{class:`w-[18px] h-[18px] shrink-0`})),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},(0,t.toDisplayString)(e.label),3)],10,vt)]))),128))])]))),128))]),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`px-4 py-4 border-t transition-colors space-y-3`,(0,t.unref)(s)?`border-gray-800`:`border-gray-200`])},[e.showNotifications?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:0,type:`button`,onClick:i[3]||=(...e)=>(0,t.unref)(g)&&(0,t.unref)(g)(...e),title:`Notifications`,"aria-label":(0,t.unref)(h)>0?`Notifications, ${(0,t.unref)(h)} unread`:`Notifications`,class:(0,t.normalizeClass)([`relative flex items-center gap-3 w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[(0,t.unref)(s)?`text-gray-400 hover:text-gray-100 hover:bg-gray-800`:`text-gray-600 hover:text-gray-900 hover:bg-gray-100`,{"lg:justify-center":_.value}]])},[(0,t.createElementVNode)(`span`,bt,[(0,t.createVNode)((0,t.unref)(n.BellIcon),{class:`w-[18px] h-[18px]`,"aria-hidden":`true`}),(0,t.unref)(h)>0?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,xt,(0,t.toDisplayString)((0,t.unref)(h)>99?`99+`:(0,t.unref)(h)),1)):(0,t.createCommentVNode)(``,!0)]),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},`Notifications`,2)],10,yt)):(0,t.createCommentVNode)(``,!0),e.showThemeToggle?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:1,type:`button`,onClick:i[4]||=(...e)=>(0,t.unref)(c)&&(0,t.unref)(c)(...e),title:(0,t.unref)(s)?`Switch to light mode`:`Switch to dark mode`,"aria-label":(0,t.unref)(s)?`Switch to light mode`:`Switch to dark mode`,"aria-pressed":(0,t.unref)(s),class:(0,t.normalizeClass)([`flex items-center gap-3 w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[(0,t.unref)(s)?`text-gray-400 hover:text-gray-100 hover:bg-gray-800`:`text-gray-600 hover:text-gray-900 hover:bg-gray-100`,{"lg:justify-center":_.value}]])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)((0,t.unref)(s)?(0,t.unref)(n.SunIcon):(0,t.unref)(n.MoonIcon)),{class:(0,t.normalizeClass)([`hidden w-[18px] h-[18px] shrink-0`,{"lg:block":_.value}]),"aria-hidden":`true`},null,8,[`class`])),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},(0,t.toDisplayString)((0,t.unref)(s)?`Switch to light`:`Switch to dark`),3),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`ml-auto relative w-9 h-5 rounded-full transition-colors`,[(0,t.unref)(s)?`bg-emerald-600`:`bg-gray-300`,{"lg:hidden":_.value}]])},[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`absolute top-0.5 left-0.5 w-4 h-4 rounded-full bg-white shadow-sm transition-transform duration-300`,(0,t.unref)(s)?`translate-x-4`:`translate-x-0`])},null,2)],2)],10,St)):(0,t.createCommentVNode)(``,!0),e.collapsible?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:2,type:`button`,onClick:i[5]||=(...e)=>(0,t.unref)(m)&&(0,t.unref)(m)(...e),title:(0,t.unref)(p)?`Expand sidebar`:`Collapse sidebar`,"aria-label":(0,t.unref)(p)?`Expand sidebar`:`Collapse sidebar`,"aria-pressed":(0,t.unref)(p),class:(0,t.normalizeClass)([`hidden lg:flex items-center gap-3 w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[(0,t.unref)(s)?`text-gray-400 hover:text-gray-100 hover:bg-gray-800`:`text-gray-600 hover:text-gray-900 hover:bg-gray-100`,{"lg:justify-center":_.value}]])},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)((0,t.unref)(p)?(0,t.unref)(n.ChevronDoubleRightIcon):(0,t.unref)(n.ChevronDoubleLeftIcon)),{class:`w-[18px] h-[18px] shrink-0`,"aria-hidden":`true`})),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},`Collapse`,2)],10,Ct)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},[(0,t.renderSlot)(r.$slots,`status`,{},void 0,!0)],2),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)({"lg:hidden":_.value})},[(0,t.renderSlot)(r.$slots,`footer`,{},()=>[e.appName||e.version?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`flex items-center justify-center gap-2 text-xs`,((0,t.unref)(s),`text-gray-500`)])},[(0,t.createElementVNode)(`span`,null,[(0,t.createTextVNode)((0,t.toDisplayString)(e.appName),1),e.appName&&e.version?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[],64)):(0,t.createCommentVNode)(``,!0),e.version?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[(0,t.createTextVNode)(`v`+(0,t.toDisplayString)(e.version),1)],64)):(0,t.createCommentVNode)(``,!0)])],2)):(0,t.createCommentVNode)(``,!0)],!0)],2)],2)])],2)]))}}),[[`__scopeId`,`data-v-452beaf2`]]),Tt={key:1,class:`mt-4 flex justify-center py-6`},Et={key:2,class:`mt-4 text-sm text-red-500`,role:`alert`},Dt={key:3,class:`mt-4`},Ot={class:`relative`},kt=[`placeholder`],At={key:4,class:`mt-3 max-h-64 overflow-y-auto`},jt=[`aria-pressed`,`onClick`],Mt={class:`flex-1 min-w-0`},Nt={key:0,class:`text-center py-6`},Pt={key:1,class:`text-center py-6`},Ft=[`disabled`],It=[`disabled`],Lt=(0,t.defineComponent)({__name:`BaseEntityPickerModal`,props:{title:{},message:{},items:{default:()=>[]},loader:{},excludeId:{},variant:{default:`emerald`},searchPlaceholder:{default:`Search...`},emptyMessage:{default:`No items available.`},noMatchMessage:{default:`No items match your search.`},confirmText:{default:`Select`},cancelText:{default:`Cancel`},submittingText:{default:`Working...`},submitting:{type:Boolean,default:!1}},emits:[`confirm`,`cancel`],setup(e,{emit:r}){let i=e,a=r,{isDark:o}=d(),s=M(),c=(0,t.ref)([]),l=(0,t.ref)(!1),u=(0,t.ref)(``),f=(0,t.ref)(null),p=(0,t.ref)(``),m=(0,t.ref)(null),h=(0,t.computed)(()=>{let e=i.loader?c.value:i.items;return i.excludeId?e.filter(e=>e.id!==i.excludeId):e}),g=(0,t.computed)(()=>h.value.filter(e=>e.label.toLowerCase().includes(p.value.toLowerCase()))),_={emerald:{iconBg:`bg-emerald-50`,iconText:`text-emerald-600`,inputFocus:`focus:border-emerald-500`,selectedRow:`bg-emerald-50 border border-emerald-200`,checkBg:`bg-emerald-600`,confirmActive:`bg-emerald-600 hover:bg-emerald-700 cursor-pointer`,confirmDisabled:`bg-emerald-400 cursor-not-allowed`},purple:{iconBg:`bg-purple-50`,iconText:`text-purple-600`,inputFocus:`focus:border-purple-500`,selectedRow:`bg-purple-50 border border-purple-200`,checkBg:`bg-purple-600`,confirmActive:`bg-purple-600 hover:bg-purple-700 cursor-pointer`,confirmDisabled:`bg-purple-400 cursor-not-allowed`},blue:{iconBg:`bg-blue-50`,iconText:`text-blue-600`,inputFocus:`focus:border-blue-500`,selectedRow:`bg-blue-50 border border-blue-200`,checkBg:`bg-blue-600`,confirmActive:`bg-blue-600 hover:bg-blue-700 cursor-pointer`,confirmDisabled:`bg-blue-400 cursor-not-allowed`},red:{iconBg:`bg-red-50`,iconText:`text-red-600`,inputFocus:`focus:border-red-500`,selectedRow:`bg-red-50 border border-red-200`,checkBg:`bg-red-600`,confirmActive:`bg-red-600 hover:bg-red-700 cursor-pointer`,confirmDisabled:`bg-red-400 cursor-not-allowed`},amber:{iconBg:`bg-amber-50`,iconText:`text-amber-600`,inputFocus:`focus:border-amber-500`,selectedRow:`bg-amber-50 border border-amber-200`,checkBg:`bg-amber-600`,confirmActive:`bg-amber-600 hover:bg-amber-700 cursor-pointer`,confirmDisabled:`bg-amber-400 cursor-not-allowed`}},v={emerald:{iconBg:`bg-emerald-900/30`,iconText:`text-emerald-400`,inputFocus:`focus:border-emerald-500`,selectedRow:`bg-emerald-500/15 border border-emerald-500/30`,checkBg:`bg-emerald-600`,confirmActive:`bg-emerald-600 hover:bg-emerald-700 cursor-pointer`,confirmDisabled:`bg-emerald-400 cursor-not-allowed`},purple:{iconBg:`bg-purple-900/30`,iconText:`text-purple-400`,inputFocus:`focus:border-purple-500`,selectedRow:`bg-purple-500/15 border border-purple-500/30`,checkBg:`bg-purple-600`,confirmActive:`bg-purple-600 hover:bg-purple-700 cursor-pointer`,confirmDisabled:`bg-purple-400 cursor-not-allowed`},blue:{iconBg:`bg-blue-900/30`,iconText:`text-blue-400`,inputFocus:`focus:border-blue-500`,selectedRow:`bg-blue-500/15 border border-blue-500/30`,checkBg:`bg-blue-600`,confirmActive:`bg-blue-600 hover:bg-blue-700 cursor-pointer`,confirmDisabled:`bg-blue-400 cursor-not-allowed`},red:{iconBg:`bg-red-900/30`,iconText:`text-red-400`,inputFocus:`focus:border-red-500`,selectedRow:`bg-red-500/15 border border-red-500/30`,checkBg:`bg-red-600`,confirmActive:`bg-red-600 hover:bg-red-700 cursor-pointer`,confirmDisabled:`bg-red-400 cursor-not-allowed`},amber:{iconBg:`bg-amber-900/30`,iconText:`text-amber-400`,inputFocus:`focus:border-amber-500`,selectedRow:`bg-amber-500/15 border border-amber-500/30`,checkBg:`bg-amber-600`,confirmActive:`bg-amber-600 hover:bg-amber-700 cursor-pointer`,confirmDisabled:`bg-amber-400 cursor-not-allowed`}},y=(0,t.computed)(()=>(o.value?v:_)[i.variant]);(0,t.onMounted)(async()=>{if(i.loader){l.value=!0;try{c.value=await i.loader()}catch{u.value=`Failed to load items`}finally{l.value=!1}}await(0,t.nextTick)(),m.value?.focus()});function b(){!f.value||i.submitting||a(`confirm`,f.value)}function x(){i.submitting||a(`cancel`)}return(r,i)=>((0,t.openBlock)(),(0,t.createBlock)(P,{title:e.title,icon:(0,t.unref)(n.FolderIcon),"icon-bg-class":y.value.iconBg,"icon-class":y.value.iconText,"manual-close":e.submitting,onCancel:x},(0,t.createSlots)({footer:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`button`,{type:`button`,disabled:e.submitting,class:(0,t.normalizeClass)([`inline-flex items-center justify-center px-4 py-2 border rounded-md shadow-sm text-sm font-medium transition-colors duration-150 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,(0,t.unref)(s).ghostButton]),onClick:x},(0,t.toDisplayString)(e.cancelText),11,Ft),(0,t.createElementVNode)(`button`,{type:`button`,disabled:!f.value||e.submitting,class:(0,t.normalizeClass)([`inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white transition-colors duration-150 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:ring-offset-2`,!f.value||e.submitting?y.value.confirmDisabled:y.value.confirmActive]),onClick:b},(0,t.toDisplayString)(e.submitting?e.submittingText:e.confirmText),11,It)]),default:(0,t.withCtx)(()=>[e.message?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:0,class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(o)?`text-gray-300`:`text-gray-600`])},(0,t.toDisplayString)(e.message),3)):(0,t.createCommentVNode)(``,!0),l.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Tt,[(0,t.createVNode)(k,{color:`emerald`})])):u.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Et,(0,t.toDisplayString)(u.value),1)):(0,t.createCommentVNode)(``,!0),!l.value&&!u.value&&h.value.length>0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Dt,[(0,t.createElementVNode)(`div`,Ot,[(0,t.createVNode)((0,t.unref)(n.MagnifyingGlassIcon),{class:(0,t.normalizeClass)([`absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4`,(0,t.unref)(s).dimText]),"aria-hidden":`true`},null,8,[`class`]),(0,t.withDirectives)((0,t.createElementVNode)(`input`,{ref_key:`searchInputRef`,ref:m,"onUpdate:modelValue":i[0]||=e=>p.value=e,type:`text`,placeholder:e.searchPlaceholder,class:(0,t.normalizeClass)([`w-full pl-9 pr-3 py-2 text-sm rounded-md border outline-none transition-colors`,[(0,t.unref)(o)?`bg-gray-800 border-gray-600 text-gray-200 placeholder-gray-500`:`bg-white border-gray-300 text-gray-700 placeholder-gray-400`,y.value.inputFocus]])},null,10,kt),[[t.vModelText,p.value]])])])):(0,t.createCommentVNode)(``,!0),!l.value&&!u.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,At,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(g.value,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:e.id,type:`button`,"aria-pressed":f.value===e.id,class:(0,t.normalizeClass)([`w-full text-left flex items-center gap-3 px-3 py-2.5 rounded-lg cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500`,[f.value===e.id?y.value.selectedRow:(0,t.unref)(o)?`hover:bg-gray-800 border border-transparent`:`hover:bg-gray-50 border border-transparent`]]),onClick:t=>f.value=e.id},[(0,t.createVNode)((0,t.unref)(n.FolderIcon),{class:(0,t.normalizeClass)([`w-5 h-5 flex-shrink-0`,(0,t.unref)(s).dimText])},null,8,[`class`]),(0,t.createElementVNode)(`div`,Mt,[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm font-medium truncate`,(0,t.unref)(s).bodyText])},(0,t.toDisplayString)(e.label),3)]),f.value===e.id?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`w-5 h-5 rounded-full flex items-center justify-center`,y.value.checkBg])},[...i[1]||=[(0,t.createElementVNode)(`svg`,{class:`w-3 h-3 text-white`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,"stroke-width":`3`,"aria-hidden":`true`},[(0,t.createElementVNode)(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M5 13l4 4L19 7`})],-1)]],2)):(0,t.createCommentVNode)(``,!0)],10,jt))),128)),h.value.length===0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Nt,[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(s).dimText])},(0,t.toDisplayString)(e.emptyMessage),3)])):g.value.length===0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Pt,[(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(s).dimText])},(0,t.toDisplayString)(e.noMatchMessage),3)])):(0,t.createCommentVNode)(``,!0)])):(0,t.createCommentVNode)(``,!0)]),_:2},[r.$slots.icon?{name:`icon`,fn:(0,t.withCtx)(()=>[(0,t.renderSlot)(r.$slots,`icon`)]),key:`0`}:void 0]),1032,[`title`,`icon`,`icon-bg-class`,`icon-class`,`manual-close`]))}}),Rt={href:`#main-content`,class:`sr-only focus:not-sr-only focus:fixed focus:top-2 focus:left-2 focus:z-[100] focus:px-3 focus:py-2 focus:rounded-md focus:bg-emerald-600 focus:text-white focus:shadow-lg`},zt=[`inert`],Bt=(0,t.defineComponent)({__name:`BaseAppLayout`,props:{showSidebar:{type:Boolean,default:!0},skipLinkLabel:{default:`Skip to main content`}},setup(e){let n=e,{isDark:r}=d(),{mobileOpen:i}=I(),{collapsed:a}=B(),o=(0,t.computed)(()=>n.showSidebar);return(n,s)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`min-h-screen transition-colors duration-300`,(0,t.unref)(r)?`bg-gray-950 text-gray-100`:`bg-gray-50 text-gray-800`])},[(0,t.createElementVNode)(`a`,Rt,(0,t.toDisplayString)(e.skipLinkLabel),1),o.value?(0,t.renderSlot)(n.$slots,`sidebar`,{key:0}):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`main`,{id:`main-content`,tabindex:`-1`,inert:o.value&&(0,t.unref)(i)?!0:void 0,class:(0,t.normalizeClass)([`transition-all duration-300`,o.value?(0,t.unref)(a)?`pt-14 lg:pt-0 lg:ml-16`:`pt-14 lg:pt-0 lg:ml-60`:``])},[(0,t.renderSlot)(n.$slots,`default`)],10,zt)],2))}}),Vt={class:`flex items-center gap-3 min-w-0`},Ht={class:`flex items-center gap-2`},Ut=(0,t.defineComponent)({__name:`BasePageHeader`,props:{title:{},subtitle:{default:``},iconColor:{default:`emerald`},maxWidthClass:{default:`max-w-4xl`},align:{default:`center`},marginClass:{default:`mb-8`}},setup(e){let n=e,{isDark:r}=d(),i=M(),a=(0,t.computed)(()=>{let e={emerald:{dark:`bg-emerald-500/10`,light:`bg-emerald-50`},sky:{dark:`bg-sky-500/10`,light:`bg-sky-50`},red:{dark:`bg-red-500/10`,light:`bg-red-50`},amber:{dark:`bg-amber-500/10`,light:`bg-amber-50`}}[n.iconColor];return r.value?e.dark:e.light}),o=(0,t.computed)(()=>{let e={emerald:{dark:`text-emerald-400`,light:`text-emerald-600`},sky:{dark:`text-sky-400`,light:`text-sky-600`},red:{dark:`text-red-400`,light:`text-red-500`},amber:{dark:`text-amber-400`,light:`text-amber-600`}}[n.iconColor];return r.value?e.dark:e.light});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`header`,{class:(0,t.normalizeClass)(e.maxWidthClass?[`mx-auto px-4 sm:px-6`,e.maxWidthClass]:void 0)},[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex flex-wrap justify-between gap-3`,[e.align===`end`?`items-end`:`items-center`,e.marginClass]])},[(0,t.createElementVNode)(`div`,Vt,[n.$slots.icon?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`w-10 h-10 rounded-lg flex items-center justify-center`,a.value])},[(0,t.renderSlot)(n.$slots,`icon`,{iconClass:o.value})],2)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,null,[(0,t.createElementVNode)(`h1`,{class:(0,t.normalizeClass)([`text-2xl font-bold`,(0,t.unref)(i).primaryTextSoft])},(0,t.toDisplayString)(e.title),3),e.subtitle||n.$slots.subtitle?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:0,class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(i).dimTextAlt])},[(0,t.renderSlot)(n.$slots,`subtitle`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.subtitle),1)])],2)):(0,t.createCommentVNode)(``,!0)])]),(0,t.createElementVNode)(`div`,Ht,[(0,t.renderSlot)(n.$slots,`actions`)])],2)],2))}}),Wt=[`type`,`disabled`,`title`],Gt={key:0},W=(0,t.defineComponent)({__name:`BaseToolbarButton`,props:{label:{default:``},variant:{default:`neutral`},disabled:{type:Boolean,default:!1},title:{default:void 0},type:{default:`button`}},emits:[`click`],setup(e){let n=e,{isDark:r}=d(),i={neutral:`px-3 py-2 rounded-lg font-medium disabled:opacity-50`,danger:`px-3 py-2 rounded-lg font-medium disabled:opacity-50`,ghost:`h-9 px-4 rounded-md font-semibold disabled:opacity-40 disabled:hover:bg-slate-50 dark:disabled:hover:bg-slate-900`},a=(0,t.computed)(()=>{let e={neutral:{dark:`bg-gray-800 text-gray-100 border-gray-700 hover:bg-gray-700`,light:`bg-white text-gray-700 border-gray-200 hover:bg-gray-100`},danger:{dark:`bg-red-600 text-white border-red-600 hover:bg-red-500`,light:`bg-red-600 text-white border-red-600 hover:bg-red-700`},ghost:{dark:`border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-600 dark:text-slate-300 hover:bg-slate-100 dark:hover:bg-slate-800`,light:`border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-600 dark:text-slate-300 hover:bg-slate-100 dark:hover:bg-slate-800`}}[n.variant];return[i[n.variant],r.value?e.dark:e.light]});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:e.type,disabled:e.disabled,title:e.title,class:(0,t.normalizeClass)([`inline-flex shrink-0 items-center gap-2 text-sm border transition-colors cursor-pointer disabled:cursor-not-allowed whitespace-nowrap focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,a.value]),onClick:r[0]||=e=>n.$emit(`click`,e)},[(0,t.renderSlot)(n.$slots,`icon`,{iconClass:`w-4 h-4`}),e.label?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Gt,(0,t.toDisplayString)(e.label),1)):(0,t.createCommentVNode)(``,!0)],10,Wt))}}),Kt=[`type`,`disabled`,`title`,`aria-label`],qt={key:0},Jt=(0,t.defineComponent)({__name:`BaseActionButton`,props:{label:{default:``},color:{default:`emerald`},disabled:{type:Boolean,default:!1},fullWidth:{type:Boolean,default:!1},title:{default:void 0},ariaLabel:{default:void 0},type:{default:`button`}},emits:[`click`],setup(e){let n=e,{isDark:r}=d(),i=(0,t.computed)(()=>{let e={emerald:{dark:`text-emerald-400 hover:bg-emerald-500/10`,light:`text-emerald-600 hover:bg-emerald-50`},sky:{dark:`text-sky-400 hover:bg-sky-500/10`,light:`text-sky-600 hover:bg-sky-50`},indigo:{dark:`text-indigo-400 hover:bg-indigo-500/10`,light:`text-indigo-600 hover:bg-indigo-50`},teal:{dark:`text-teal-400 hover:bg-teal-500/10`,light:`text-teal-600 hover:bg-teal-50`},purple:{dark:`text-purple-400 hover:bg-purple-500/10`,light:`text-purple-600 hover:bg-purple-50`},red:{dark:`text-red-400 hover:bg-red-500/10`,light:`text-red-500 hover:bg-red-50`},amber:{dark:`text-amber-400 hover:bg-amber-500/10`,light:`text-amber-600 hover:bg-amber-50`},amberStrong:{dark:`text-amber-300 hover:bg-amber-500/10`,light:`text-amber-700 hover:bg-amber-50`}}[n.color];return r.value?e.dark:e.light}),a=(0,t.computed)(()=>{let e={emerald:{dark:`text-emerald-400`,light:`text-emerald-600`},sky:{dark:`text-sky-400`,light:`text-sky-600`},indigo:{dark:`text-indigo-400`,light:`text-indigo-600`},teal:{dark:`text-teal-400`,light:`text-teal-600`},purple:{dark:`text-purple-400`,light:`text-purple-600`},red:{dark:`text-red-400`,light:`text-red-500`},amber:{dark:`text-amber-400`,light:`text-amber-600`},amberStrong:{dark:`text-amber-300`,light:`text-amber-700`}}[n.color];return r.value?e.dark:e.light}),o=(0,t.computed)(()=>n.disabled?`${a.value} opacity-50 cursor-not-allowed`:`${i.value} cursor-pointer`);return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:e.type,disabled:e.disabled,title:e.title,"aria-label":e.ariaLabel,class:(0,t.normalizeClass)([`inline-flex items-center justify-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-medium transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-current`,[e.fullWidth?`flex-1`:``,o.value]]),onClick:r[0]||=e=>n.$emit(`click`,e)},[(0,t.renderSlot)(n.$slots,`icon`,{iconClass:`w-4 h-4`}),e.label?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,qt,(0,t.toDisplayString)(e.label),1)):(0,t.createCommentVNode)(``,!0)],10,Kt))}}),Yt=[`title`,`aria-label`],Xt=(0,t.defineComponent)({__name:`BaseCopyButton`,props:{text:{},label:{default:``},variant:{default:`ghost`},resetMs:{default:1500},iconClass:{default:`w-4 h-4`}},emits:[`copied`,`error`],setup(e,{emit:r}){let i=e,a=r,{isDark:o}=d(),s=(0,t.ref)(!1),c=null,l=(0,t.computed)(()=>s.value?`Copied!`:i.label?`Copy ${i.label}`:`Copy`),u=(0,t.computed)(()=>i.label?`Copy ${i.label}`:`Copy`),f=(0,t.computed)(()=>i.variant===`bordered`?`inline-flex items-center justify-center w-9 h-9 rounded-lg border transition-colors cursor-pointer shrink-0 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 ${s.value?o.value?`border-emerald-500/40 bg-emerald-500/10 text-emerald-400`:`border-emerald-300 bg-emerald-50 text-emerald-600`:o.value?`border-gray-600 text-gray-400 hover:text-gray-200 hover:bg-gray-800`:`border-gray-300 text-gray-400 hover:text-gray-600 hover:bg-gray-50`}`:`p-1 rounded transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 ${o.value?`text-gray-400 hover:text-emerald-300 hover:bg-emerald-500/10`:`text-gray-500 hover:text-emerald-600 hover:bg-emerald-50`}`);async function p(e){try{if(navigator.clipboard?.writeText){await navigator.clipboard.writeText(e);return}}catch{}let t=document.createElement(`textarea`);t.value=e,t.style.position=`fixed`,t.style.opacity=`0`,document.body.appendChild(t),t.select();let n=document.execCommand(`copy`);if(document.body.removeChild(t),!n)throw Error(`Copy command was rejected`)}async function m(){try{await p(i.text),s.value=!0,c&&clearTimeout(c),c=setTimeout(()=>{s.value=!1},i.resetMs),a(`copied`)}catch(e){a(`error`,e)}}return(0,t.onUnmounted)(()=>{c&&clearTimeout(c)}),(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:`button`,title:l.value,"aria-label":u.value,class:(0,t.normalizeClass)(f.value),onClick:m},[s.value?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.ClipboardDocumentCheckIcon),{key:0,class:(0,t.normalizeClass)(e.iconClass),"aria-hidden":`true`},null,8,[`class`])):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n.ClipboardDocumentIcon),{key:1,class:(0,t.normalizeClass)(e.iconClass),"aria-hidden":`true`},null,8,[`class`]))],10,Yt))}}),Zt=[`disabled`,`aria-busy`],Qt={key:0,class:`w-5 h-5 animate-spin shrink-0`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`},$t={key:1,class:`w-5 h-5 shrink-0`,viewBox:`0 0 48 48`,"aria-hidden":`true`},G=(0,t.defineComponent)({__name:`BaseGoogleSignInButton`,props:{label:{default:`Sign in with Google`},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},block:{type:Boolean,default:!0}},emits:[`click`],setup(e,{emit:n}){let r=e,i=n,{isDark:a}=d(),o=(0,t.computed)(()=>r.disabled||r.loading);function s(){o.value||i(`click`)}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:`button`,disabled:o.value,"aria-busy":e.loading,onClick:s,class:(0,t.normalizeClass)([`inline-flex items-center justify-center gap-3 h-11 px-4 rounded-lg border text-sm font-medium transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 disabled:opacity-60 disabled:cursor-not-allowed`,[e.block?`w-full`:``,(0,t.unref)(a)?`bg-gray-900 border-gray-700 text-gray-100 hover:bg-gray-800`:`bg-white border-gray-300 text-gray-700 hover:bg-gray-50`]])},[e.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,Qt,[...r[0]||=[(0,t.createElementVNode)(`circle`,{class:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,"stroke-width":`4`},null,-1),(0,t.createElementVNode)(`path`,{class:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 0 1 8-8V0C5.4 0 0 5.4 0 12h4z`},null,-1)]])):((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,$t,[...r[1]||=[(0,t.createStaticVNode)(`<path fill="#EA4335" d="M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z"></path><path fill="#4285F4" d="M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z"></path><path fill="#FBBC05" d="M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z"></path><path fill="#34A853" d="M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z"></path><path fill="none" d="M0 0h48v48H0z"></path>`,5)]])),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(e.label),1)],10,Zt))}}),en={key:0,class:`flex justify-center mb-6`},tn={class:`mb-6 text-center`},nn={class:`flex items-center gap-3 my-5`},rn=[`disabled`],an={class:`flex items-center justify-between mb-1.5`},on={class:`relative`},sn=[`type`,`disabled`],cn=[`aria-label`,`aria-pressed`],ln=[`disabled`],un=[`disabled`,`aria-busy`],dn={key:0,class:`w-4 h-4 animate-spin`,viewBox:`0 0 24 24`,fill:`none`,"aria-hidden":`true`},fn=(0,t.defineComponent)({__name:`BaseLoginForm`,props:{title:{default:`Sign in`},subtitle:{default:``},submitLabel:{default:`Sign in`},loading:{type:Boolean,default:!1},googleLoading:{type:Boolean,default:!1},error:{default:``},showGoogle:{type:Boolean,default:!0},showRemember:{type:Boolean,default:!1}},emits:[`submit`,`google-sign-in`],setup(e,{emit:n}){let r=e,i=n,{isDark:a}=d(),o=M(),s=(0,t.ref)(``),c=(0,t.ref)(``),l=(0,t.ref)(!1),u=(0,t.ref)(!1),f=(0,t.computed)(()=>r.loading||r.googleLoading);function p(){f.value||i(`submit`,{email:s.value,password:c.value,...r.showRemember?{remember:l.value}:{}})}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`w-full max-w-sm mx-auto rounded-xl border shadow-sm p-6 sm:p-8`,(0,t.unref)(o).card])},[n.$slots.logo?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,en,[(0,t.renderSlot)(n.$slots,`logo`)])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,tn,[(0,t.createElementVNode)(`h1`,{class:(0,t.normalizeClass)([`text-xl font-semibold`,(0,t.unref)(o).primaryText])},(0,t.toDisplayString)(e.title),3),e.subtitle?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:0,class:(0,t.normalizeClass)([`mt-1 text-sm`,(0,t.unref)(o).mutedText])},(0,t.toDisplayString)(e.subtitle),3)):(0,t.createCommentVNode)(``,!0)]),e.error?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,role:`alert`,class:(0,t.normalizeClass)([`mb-4 rounded-lg border px-3 py-2 text-sm`,(0,t.unref)(a)?`bg-red-500/10 border-red-500/30 text-red-300`:`bg-red-50 border-red-200 text-red-700`])},(0,t.toDisplayString)(e.error),3)):(0,t.createCommentVNode)(``,!0),e.showGoogle?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:2},[(0,t.createVNode)(G,{loading:e.googleLoading,disabled:e.loading,onClick:r[0]||=e=>i(`google-sign-in`)},null,8,[`loading`,`disabled`]),(0,t.createElementVNode)(`div`,nn,[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`h-px flex-1`,(0,t.unref)(a)?`bg-gray-700`:`bg-gray-200`])},null,2),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`text-xs uppercase tracking-wider`,(0,t.unref)(o).dimTextAlt])},`or`,2),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`h-px flex-1`,(0,t.unref)(a)?`bg-gray-700`:`bg-gray-200`])},null,2)])],64)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`form`,{class:`space-y-4`,onSubmit:(0,t.withModifiers)(p,[`prevent`])},[(0,t.createElementVNode)(`div`,null,[(0,t.createElementVNode)(`label`,{for:`login-email`,class:(0,t.normalizeClass)([`block mb-1.5 text-sm font-medium`,(0,t.unref)(o).label])},` Email `,2),(0,t.withDirectives)((0,t.createElementVNode)(`input`,{id:`login-email`,"onUpdate:modelValue":r[1]||=e=>s.value=e,type:`email`,name:`email`,autocomplete:`email`,required:``,disabled:f.value,placeholder:`you@example.com`,class:(0,t.normalizeClass)([`w-full h-11 px-3 rounded-lg border text-sm transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 disabled:opacity-60`,(0,t.unref)(o).inputWithPlaceholder])},null,10,rn),[[t.vModelText,s.value]])]),(0,t.createElementVNode)(`div`,null,[(0,t.createElementVNode)(`div`,an,[(0,t.createElementVNode)(`label`,{for:`login-password`,class:(0,t.normalizeClass)([`block text-sm font-medium`,(0,t.unref)(o).label])},` Password `,2),(0,t.renderSlot)(n.$slots,`forgot`)]),(0,t.createElementVNode)(`div`,on,[(0,t.withDirectives)((0,t.createElementVNode)(`input`,{id:`login-password`,"onUpdate:modelValue":r[2]||=e=>c.value=e,type:u.value?`text`:`password`,name:`password`,autocomplete:`current-password`,required:``,disabled:f.value,placeholder:`••••••••`,class:(0,t.normalizeClass)([`w-full h-11 pl-3 pr-16 rounded-lg border text-sm transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 disabled:opacity-60`,(0,t.unref)(o).inputWithPlaceholder])},null,10,sn),[[t.vModelDynamic,c.value]]),(0,t.createElementVNode)(`button`,{type:`button`,onClick:r[3]||=e=>u.value=!u.value,"aria-label":u.value?`Hide password`:`Show password`,"aria-pressed":u.value,class:(0,t.normalizeClass)([`absolute inset-y-0 right-0 px-3 text-xs font-medium cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 rounded-r-lg`,(0,t.unref)(o).mutedText])},(0,t.toDisplayString)(u.value?`Hide`:`Show`),11,cn)])]),e.showRemember?((0,t.openBlock)(),(0,t.createElementBlock)(`label`,{key:0,class:(0,t.normalizeClass)([`flex items-center gap-2 text-sm cursor-pointer select-none`,(0,t.unref)(o).bodyText])},[(0,t.withDirectives)((0,t.createElementVNode)(`input`,{"onUpdate:modelValue":r[4]||=e=>l.value=e,type:`checkbox`,disabled:f.value,class:`w-4 h-4 rounded border-gray-300 text-emerald-600 focus:ring-emerald-500`},null,8,ln),[[t.vModelCheckbox,l.value]]),r[5]||=(0,t.createTextVNode)(` Remember me `,-1)],2)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`button`,{type:`submit`,disabled:f.value,"aria-busy":e.loading,class:`inline-flex items-center justify-center gap-2 w-full h-11 px-4 rounded-lg text-sm font-semibold text-white bg-emerald-600 hover:bg-emerald-700 transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 disabled:opacity-60 disabled:cursor-not-allowed`},[e.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`svg`,dn,[...r[6]||=[(0,t.createElementVNode)(`circle`,{class:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,"stroke-width":`4`},null,-1),(0,t.createElementVNode)(`path`,{class:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 0 1 8-8V0C5.4 0 0 5.4 0 12h4z`},null,-1)]])):(0,t.createCommentVNode)(``,!0),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.submitLabel),1)],8,un)],32),n.$slots.footer?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:3,class:(0,t.normalizeClass)([`mt-6 text-center text-sm`,(0,t.unref)(o).mutedText])},[(0,t.renderSlot)(n.$slots,`footer`)],2)):(0,t.createCommentVNode)(``,!0)],2))}}),pn=[`aria-label`],mn={class:`flex-1 overflow-y-auto`},hn={key:0,class:`flex flex-col items-center justify-center text-center px-6 py-16 gap-3`},gn=[`onClick`],_n={class:`min-w-0 flex-1`},vn={class:`flex items-baseline justify-between gap-2`},yn=(0,t.defineComponent)({__name:`BaseNotificationPanel`,props:{title:{default:`Notifications`},emptyText:{default:`You have no notifications.`},showMarkAllRead:{type:Boolean,default:!0}},emits:[`select`],setup(e,{emit:r}){let i=r,{isDark:a}=d(),o=M(),{notifications:s,unreadCount:c,open:l,closePanel:u,markAllRead:f,markRead:p}=U(),m={info:`bg-sky-500`,success:`bg-emerald-500`,warning:`bg-amber-500`,error:`bg-red-500`},h=(0,t.computed)(()=>s.value.length);function g(e){p(e),i(`select`,e)}return N(()=>{l.value&&u()}),(r,i)=>((0,t.openBlock)(),(0,t.createBlock)(t.Teleport,{to:`body`},[(0,t.createVNode)(t.Transition,{"enter-active-class":`transition-opacity duration-200`,"enter-from-class":`opacity-0`,"leave-active-class":`transition-opacity duration-200`,"leave-to-class":`opacity-0`},{default:(0,t.withCtx)(()=>[(0,t.unref)(l)?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:`fixed inset-0 z-[60] bg-black/50`,"aria-hidden":`true`,onClick:i[0]||=(...e)=>(0,t.unref)(u)&&(0,t.unref)(u)(...e)})):(0,t.createCommentVNode)(``,!0)]),_:1}),(0,t.createVNode)(t.Transition,{"enter-active-class":`transition-transform duration-300 ease-out`,"enter-from-class":`-translate-x-full`,"leave-active-class":`transition-transform duration-300 ease-in`,"leave-to-class":`-translate-x-full`},{default:(0,t.withCtx)(()=>[(0,t.unref)(l)?((0,t.openBlock)(),(0,t.createElementBlock)(`aside`,{key:0,role:`dialog`,"aria-modal":`true`,"aria-label":e.title,class:(0,t.normalizeClass)([`fixed top-0 left-0 z-[70] h-screen w-full max-w-sm flex flex-col border-r shadow-xl`,(0,t.unref)(a)?`bg-gray-900 border-gray-800`:`bg-white border-gray-200`])},[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flex items-center justify-between gap-3 px-5 py-4 border-b shrink-0`,(0,t.unref)(o).border])},[(0,t.createElementVNode)(`h2`,{class:(0,t.normalizeClass)([`text-lg font-semibold flex items-center gap-2`,(0,t.unref)(o).primaryText])},[(0,t.createTextVNode)((0,t.toDisplayString)(e.title)+` `,1),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`text-sm font-normal`,(0,t.unref)(o).dimTextAlt])},`— `+(0,t.toDisplayString)(h.value),3)],2),(0,t.createElementVNode)(`button`,{type:`button`,onClick:i[1]||=(...e)=>(0,t.unref)(u)&&(0,t.unref)(u)(...e),"aria-label":`Close notifications`,class:(0,t.normalizeClass)([`p-1.5 rounded-lg cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,(0,t.unref)(a)?`text-gray-400 hover:bg-gray-800`:`text-gray-500 hover:bg-gray-100`])},[(0,t.createVNode)((0,t.unref)(n.XMarkIcon),{class:`w-5 h-5`,"aria-hidden":`true`})],2)],2),e.showMarkAllRead&&(0,t.unref)(c)>0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)([`px-5 py-2 border-b shrink-0 flex justify-end`,(0,t.unref)(o).border])},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:i[2]||=(...e)=>(0,t.unref)(f)&&(0,t.unref)(f)(...e),class:(0,t.normalizeClass)([`text-xs font-medium cursor-pointer transition-colors focus:outline-none focus-visible:underline`,(0,t.unref)(o).emeraldText])},` Mark all as read `,2)],2)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,mn,[h.value===0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,hn,[(0,t.createVNode)((0,t.unref)(n.BellIcon),{class:(0,t.normalizeClass)([`w-10 h-10`,(0,t.unref)(o).illustration]),"aria-hidden":`true`},null,8,[`class`]),(0,t.createElementVNode)(`p`,{class:(0,t.normalizeClass)([`text-sm`,(0,t.unref)(o).mutedText])},(0,t.toDisplayString)(e.emptyText),3)])):((0,t.openBlock)(),(0,t.createElementBlock)(`ul`,{key:1,class:(0,t.normalizeClass)([`divide-y`,(0,t.unref)(a)?`divide-gray-800`:`divide-gray-100`])},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(s),e=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:e.id},[(0,t.createElementVNode)(`button`,{type:`button`,onClick:t=>g(e.id),class:(0,t.normalizeClass)([`w-full text-left px-5 py-4 flex gap-3 transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500`,[e.read?``:(0,t.unref)(a)?`bg-emerald-500/5`:`bg-emerald-50/60`,(0,t.unref)(a)?`hover:bg-gray-800`:`hover:bg-gray-50`]])},[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`mt-1.5 w-2 h-2 rounded-full shrink-0`,e.read?(0,t.unref)(a)?`bg-gray-700`:`bg-gray-300`:m[e.type??`info`]]),"aria-hidden":`true`},null,2),(0,t.createElementVNode)(`span`,_n,[(0,t.createElementVNode)(`span`,vn,[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`text-sm truncate`,[e.read?`font-medium`:`font-semibold`,(0,t.unref)(o).primaryTextSoft]])},(0,t.toDisplayString)(e.title),3),e.time?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)([`text-xs shrink-0`,(0,t.unref)(o).dimText])},(0,t.toDisplayString)(e.time),3)):(0,t.createCommentVNode)(``,!0)]),e.message?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)([`mt-0.5 block text-sm`,(0,t.unref)(o).mutedText])},(0,t.toDisplayString)(e.message),3)):(0,t.createCommentVNode)(``,!0)])],10,gn)]))),128))],2))])],10,pn)):(0,t.createCommentVNode)(``,!0)]),_:1})]))}}),bn=[`disabled`],xn=(0,t.defineComponent)({__name:`BaseChipButton`,props:{size:{default:`sm`},disabled:{type:Boolean,default:!1}},emits:[`click`],setup(e,{emit:n}){let r=n,{isDark:i}=d();return(n,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:`button`,disabled:e.disabled,class:(0,t.normalizeClass)([`inline-flex items-center gap-1 font-medium rounded-md border transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,[e.size===`xs`?`text-xs px-2 py-0.5`:`text-xs px-2.5 py-1`,(0,t.unref)(i)?`text-emerald-300 border-emerald-700 bg-emerald-900/30 hover:bg-emerald-800/50`:`text-emerald-700 border-emerald-200 bg-emerald-50 hover:bg-emerald-100`]]),onClick:a[0]||=e=>r(`click`)},[(0,t.renderSlot)(n.$slots,`default`)],10,bn))}}),Sn=(0,t.defineComponent)({__name:`BaseRemoveButton`,emits:[`click`],setup(e,{emit:n}){let r=n;return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:`button`,class:`px-2 text-lg leading-none text-red-400 hover:text-red-600 transition-colors cursor-pointer rounded focus:outline-none focus-visible:ring-2 focus-visible:ring-red-400 disabled:cursor-not-allowed disabled:text-gray-400 disabled:hover:text-gray-400`,onClick:n[0]||=e=>r(`click`)},` × `))}}),Cn={class:`relative flex h-2 w-2`},wn={key:0,class:`animate-ping absolute inline-flex h-full w-full rounded-full bg-emerald-400 opacity-75`,"aria-hidden":`true`},Tn=(0,t.defineComponent)({__name:`BaseStatusPill`,props:{status:{},label:{}},setup(e){let n=e,{isDark:r}=d(),i=(0,t.computed)(()=>{switch(n.status){case`ok`:return r.value?`bg-emerald-500/10 text-emerald-400`:`bg-emerald-50 text-emerald-700`;case`error`:return r.value?`bg-red-500/10 text-red-400`:`bg-red-50 text-red-700`;default:return r.value?`bg-gray-700 text-gray-400`:`bg-gray-100 text-gray-500`}}),a=(0,t.computed)(()=>{switch(n.status){case`ok`:return`bg-emerald-500`;case`error`:return`bg-red-500`;default:return`bg-gray-400`}});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`flex items-center gap-2 px-3 py-1.5 rounded-lg text-xs`,i.value])},[(0,t.createElementVNode)(`span`,Cn,[e.status===`ok`?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,wn)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`relative inline-flex rounded-full h-2 w-2`,a.value])},null,2)]),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.label),1)],2))}}),En={class:`text-sm font-medium`},Dn=[`accept`,`multiple`,`disabled`],On=(0,t.defineComponent)({__name:`BaseFileDropzone`,props:{label:{},hint:{default:``},accept:{default:``},multiple:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:[`files`],setup(e,{emit:n}){let r=e,i=n,{isDark:a}=d(),o=(0,t.ref)(!1);function s(e){let t=e.target,n=Array.from(t.files??[]);t.value=``,n.length&&i(`files`,n)}function c(){r.disabled||(o.value=!0)}function l(e){if(o.value=!1,r.disabled)return;let t=Array.from(e.dataTransfer?.files??[]);t.length&&i(`files`,r.multiple?t:t.slice(0,1))}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`label`,{class:(0,t.normalizeClass)([`flex flex-col items-center justify-center gap-2 rounded-lg border-2 border-dashed px-6 py-10 text-center transition-colors`,[e.disabled?`opacity-50 cursor-not-allowed`:`cursor-pointer`,o.value?(0,t.unref)(a)?`border-emerald-500 text-emerald-400`:`border-emerald-500 text-emerald-600`:(0,t.unref)(a)?`border-gray-700 hover:border-emerald-500 text-gray-400 hover:text-emerald-400`:`border-gray-300 hover:border-emerald-500 text-gray-500 hover:text-emerald-600`]]),onDragover:(0,t.withModifiers)(c,[`prevent`]),onDragleave:r[0]||=(0,t.withModifiers)(e=>o.value=!1,[`prevent`]),onDrop:(0,t.withModifiers)(l,[`prevent`])},[(0,t.renderSlot)(n.$slots,`icon`,{},()=>[r[1]||=(0,t.createElementVNode)(`svg`,{class:`w-10 h-10`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,"stroke-width":`1.5`,"aria-hidden":`true`},[(0,t.createElementVNode)(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m6.75 12-3-3m0 0-3 3m3-3v6m-1.5-15H5.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 0 0-9-9Z`})],-1)]),(0,t.createElementVNode)(`p`,En,(0,t.toDisplayString)(e.label),1),e.hint?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:0,class:(0,t.normalizeClass)([`text-xs`,(0,t.unref)(a)?`text-gray-500`:`text-gray-400`])},(0,t.toDisplayString)(e.hint),3)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`input`,{type:`file`,class:`hidden`,accept:e.accept,multiple:e.multiple,disabled:e.disabled,onChange:s},null,40,Dn)],34))}}),kn=(0,t.defineComponent)({__name:`BaseCodeBlock`,props:{code:{},variant:{default:`soft`},size:{default:`sm`},maxHeightClass:{default:``}},setup(e){let n=e,{isDark:r}=d(),i={soft:{dark:`bg-gray-800/70 text-gray-300`,light:`bg-gray-100 text-gray-700`},bordered:{dark:`border bg-gray-900 border-gray-700 text-gray-300`,light:`border bg-white border-gray-200 text-gray-700`}},a={sm:`text-sm px-5 py-4 rounded-lg`,xs:`text-xs p-3 rounded-lg`},o=(0,t.computed)(()=>{let e=i[n.variant];return r.value?e.dark:e.light}),s=(0,t.computed)(()=>a[n.size]);return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`pre`,{class:(0,t.normalizeClass)([`font-mono overflow-auto`,[s.value,o.value,e.maxHeightClass]])},(0,t.toDisplayString)(e.code),3))}}),An=[`value`,`type`],K=(0,t.defineComponent)({__name:`BaseInput`,props:{modelValue:{default:``},type:{default:`text`},size:{default:`md`},block:{type:Boolean,default:!0}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=n;function i(e){r(`update:modelValue`,e.target.value)}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`input`,{value:e.modelValue,type:e.type,class:(0,t.normalizeClass)([`rounded border border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-900 dark:text-slate-100 text-sm placeholder:text-slate-400 dark:placeholder:text-slate-500 transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:border-emerald-500 disabled:opacity-60 disabled:cursor-not-allowed`,[e.block?`w-full`:``,e.size===`sm`?`px-2 py-1.5`:`px-3 py-2`]]),onInput:i},null,42,An))}}),jn=[`value`],q=(0,t.defineComponent)({__name:`BaseSelect`,props:{modelValue:{default:void 0},size:{default:`sm`},block:{type:Boolean,default:!0}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=n;function i(e){r(`update:modelValue`,e.target.value)}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`select`,{value:e.modelValue,class:(0,t.normalizeClass)([`rounded border border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-900 dark:text-slate-100 text-sm cursor-pointer transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 focus-visible:border-emerald-500 disabled:opacity-60 disabled:cursor-not-allowed`,[e.block?`w-full`:``,e.size===`md`?`px-3 py-2`:`px-2 py-1.5`]]),onChange:i},[(0,t.renderSlot)(n.$slots,`default`)],42,jn))}}),Mn=[`disabled`,`aria-label`,`aria-expanded`],Nn=[`aria-label`],Pn=[`aria-selected`,`title`],Fn=[`disabled`,`onClick`],In=(0,t.defineComponent)({__name:`BaseDropdown`,props:{options:{},modelValue:{default:null},placeholder:{default:`Select`},size:{default:`md`},block:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},ariaLabel:{default:``},triggerClass:{default:``},chevronClass:{default:`w-5 h-5 text-slate-500 dark:text-slate-400`}},emits:[`update:modelValue`],setup(e,{emit:r}){let i=e,a=r,o=(0,t.ref)(!1),s=(0,t.ref)(null),c=(0,t.computed)(()=>i.options.find(e=>e.value===i.modelValue)??null),l=(0,t.computed)(()=>i.triggerClass?`flex items-center justify-between gap-2 text-left transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed `+i.triggerClass:`flex items-center justify-between gap-2 text-left transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500 cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed rounded-lg border text-sm border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-900 text-slate-700 dark:text-slate-100 hover:bg-slate-50 dark:hover:bg-slate-800 `+(i.size===`sm`?`px-3 py-2`:`px-4 py-2.5`));function u(e){return`block w-full px-4 py-2 text-left text-sm transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500 disabled:opacity-50 disabled:cursor-not-allowed ${e.value===i.modelValue?`bg-emerald-500 text-white`:`text-slate-700 dark:text-slate-200 hover:bg-slate-100 dark:hover:bg-slate-800`}`}function d(){i.disabled||(o.value=!o.value)}function f(e){e.disabled||(a(`update:modelValue`,e.value),o.value=!1)}N(()=>{o.value=!1});function p(e){o.value&&s.value&&!s.value.contains(e.target)&&(o.value=!1)}return(0,t.onMounted)(()=>document.addEventListener(`click`,p)),(0,t.onBeforeUnmount)(()=>document.removeEventListener(`click`,p)),(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`rootEl`,ref:s,class:(0,t.normalizeClass)(e.block?`relative w-full`:`relative inline-block`)},[(0,t.createElementVNode)(`button`,{type:`button`,class:(0,t.normalizeClass)([l.value,e.block?`w-full`:``]),disabled:e.disabled,"aria-label":e.ariaLabel||void 0,"aria-haspopup":`listbox`,"aria-expanded":o.value,onClick:d},[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`min-w-0 truncate`,c.value?``:`text-slate-400 dark:text-slate-500`])},(0,t.toDisplayString)(c.value?c.value.label:e.placeholder),3),(0,t.createVNode)((0,t.unref)(n.ChevronDownIcon),{class:(0,t.normalizeClass)([`shrink-0 transition-transform`,[e.chevronClass,o.value?`rotate-180`:``]]),"aria-hidden":`true`},null,8,[`class`])],10,Mn),o.value?((0,t.openBlock)(),(0,t.createElementBlock)(`ul`,{key:0,role:`listbox`,"aria-label":e.ariaLabel||e.placeholder,class:`absolute z-20 mt-1 w-full min-w-max max-w-xs max-h-60 overflow-auto rounded-lg border border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-900 py-1 shadow-lg focus:outline-none`},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.options,n=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:String(n.value),role:`option`,"aria-selected":n.value===e.modelValue,title:n.title},[(0,t.createElementVNode)(`button`,{type:`button`,disabled:n.disabled,class:(0,t.normalizeClass)(u(n)),onClick:e=>f(n)},(0,t.toDisplayString)(n.label),11,Fn)],8,Pn))),128))],8,Nn)):(0,t.createCommentVNode)(``,!0)],2))}}),Ln=[`role`,`aria-label`],Rn=[`aria-pressed`,`title`,`onClick`],zn=`bg-slate-50 dark:bg-slate-900 text-slate-600 dark:text-slate-300 hover:bg-slate-100 dark:hover:bg-slate-800`,J=(0,t.defineComponent)({__name:`BaseSegmentedControl`,props:{options:{},modelValue:{},variant:{default:`base`},ariaLabel:{default:``},optionClass:{type:Function,default:void 0}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.computed)(()=>r.variant===`toolbar`?`inline-flex h-9 divide-x divide-slate-300 dark:divide-slate-600 rounded-md border border-slate-300 dark:border-slate-600 overflow-hidden`:`inline-flex rounded border border-slate-300 dark:border-slate-600 overflow-hidden`),o=(0,t.computed)(()=>r.variant===`toolbar`?`flex items-center px-3.5 text-xs font-semibold uppercase tracking-wide transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500`:`${r.variant===`wide`?`px-4 py-2`:`px-3 py-2`} text-sm font-medium transition-colors cursor-pointer border-l first:border-l-0 border-slate-300 dark:border-slate-600 focus:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-emerald-500`),s=(0,t.computed)(()=>r.variant===`wide`?`bg-emerald-600 text-white`:`bg-emerald-500 text-white`);function c(e){let t=e.value===r.modelValue;return r.optionClass?r.optionClass(e,t):t?s.value:zn}return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{role:e.ariaLabel?`group`:void 0,"aria-label":e.ariaLabel||void 0,class:(0,t.normalizeClass)(a.value)},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.options,n=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:String(n.value),type:`button`,class:(0,t.normalizeClass)([o.value,c(n)]),"aria-pressed":n.value===e.modelValue,title:n.title,onClick:e=>i(`update:modelValue`,n.value)},(0,t.toDisplayString)(n.label),11,Rn))),128))],10,Ln))}}),Bn={class:`w-full text-sm`},Vn={class:`bg-slate-50 dark:bg-slate-800/60 text-slate-600 dark:text-slate-300`},Hn={class:`text-left`},Un={key:0},Wn=[`colspan`],Gn=(0,t.defineComponent)({__name:`BaseTable`,props:{columns:{},empty:{type:Boolean,default:!1},emptyText:{default:`No rows.`}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`table`,Bn,[(0,t.createElementVNode)(`thead`,Vn,[(0,t.createElementVNode)(`tr`,Hn,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.columns,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`th`,{key:n,class:(0,t.normalizeClass)([`px-4 py-3`,e.align===`right`?`text-right`:``])},(0,t.toDisplayString)(e.label),3))),128))])]),(0,t.createElementVNode)(`tbody`,null,[e.empty?((0,t.openBlock)(),(0,t.createElementBlock)(`tr`,Un,[(0,t.createElementVNode)(`td`,{colspan:e.columns.length,class:`px-4 py-12 text-center text-slate-500`},[(0,t.renderSlot)(n.$slots,`empty`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.emptyText),1)])],8,Wn)])):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(n.$slots,`default`)])]))}}),Kn={class:`grid gap-3 md:grid-cols-2`},qn={key:0,class:`block text-[11px] uppercase tracking-wide text-slate-500 mb-1`},Jn=[`value`],Yn={key:2,class:`flex items-center gap-2 mt-4`},Xn=[`checked`,`onChange`],Zn={class:`text-sm text-slate-900 dark:text-slate-100`},Qn={key:4,class:`text-[11px] text-slate-400 mt-1`},$n=(0,t.defineComponent)({__name:`BaseSpecFields`,props:{specs:{},params:{}},emits:[`update`],setup(e,{emit:n}){let r=n;function i(e,t){r(`update`,e,t.target.checked)}function a(e,t){let n=parseFloat(t);if(Number.isNaN(n)){r(`update`,e.key,t);return}r(`update`,e.key,e.type===`integer`?Math.trunc(n):n)}function o(e){(e.key===`.`||e.key===`,`||e.key===`e`||e.key===`E`)&&e.preventDefault()}function s(e){let t=e.clipboardData?.getData(`text`)??``;/^-?\d*$/.test(t.trim())||e.preventDefault()}return(n,c)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Kn,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.specs,c=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:c.key},[c.type===`boolean`?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`label`,qn,(0,t.toDisplayString)(c.label),1)),c.type===`select`?((0,t.openBlock)(),(0,t.createBlock)(q,{key:1,modelValue:String(e.params[c.key]??``),"onUpdate:modelValue":e=>r(`update`,c.key,e)},{default:(0,t.withCtx)(()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(c.options??[],e=>((0,t.openBlock)(),(0,t.createElementBlock)(`option`,{key:e,value:e},(0,t.toDisplayString)(e),9,Jn))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`])):c.type===`boolean`?((0,t.openBlock)(),(0,t.createElementBlock)(`label`,Yn,[(0,t.createElementVNode)(`input`,{checked:!!e.params[c.key],type:`checkbox`,class:`h-4 w-4`,onChange:e=>i(c.key,e)},null,40,Xn),(0,t.createElementVNode)(`span`,Zn,(0,t.toDisplayString)(c.label),1)])):((0,t.openBlock)(),(0,t.createBlock)(K,{key:3,modelValue:e.params[c.key],type:`number`,step:c.step??(c.type===`integer`?1:.01),min:c.min??void 0,inputmode:c.type===`integer`?`numeric`:void 0,onKeydown:e=>c.type===`integer`&&o(e),onPaste:e=>c.type===`integer`&&s(e),"onUpdate:modelValue":e=>a(c,e)},null,8,[`modelValue`,`step`,`min`,`inputmode`,`onKeydown`,`onPaste`,`onUpdate:modelValue`])),c.help?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,Qn,(0,t.toDisplayString)(c.help),1)):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(n.$slots,`after`,{spec:c})]))),128))]))}}),er={class:`mt-1.5 space-y-0.5 px-1`},tr={class:`text-slate-400 dark:text-slate-500`},nr=(0,t.defineComponent)({__name:`BaseStatBreakdown`,props:{items:{},currency:{default:``},decimals:{default:2},signed:{type:Boolean,default:!1}},setup(e){let n=e;function r(e){return e==null?`—`:`${e<0?`-`:n.signed?`+`:``}${n.currency}${Math.abs(e).toFixed(n.decimals)}`}function i(e){return!n.signed||e==null?`text-slate-500 dark:text-slate-400`:e>=0?`text-emerald-600 dark:text-emerald-400`:`text-red-600 dark:text-red-400`}return(n,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,er,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.items,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.label,class:`flex items-center justify-between text-[11px]`},[(0,t.createElementVNode)(`span`,tr,(0,t.toDisplayString)(e.label),1),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`font-mono tabular-nums font-medium`,i(e.value)])},(0,t.toDisplayString)(r(e.value)),3)]))),128))]))}}),rr=[`disabled`,`title`,`aria-pressed`],ir=(0,t.defineComponent)({__name:`BaseFilterChip`,props:{label:{default:``},color:{default:`slate`},active:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},title:{default:void 0}},setup(e){let n={emerald:`border-emerald-300 dark:border-emerald-700/60 bg-emerald-50 dark:bg-emerald-900/20 text-emerald-700 dark:text-emerald-400 hover:bg-emerald-100 dark:hover:bg-emerald-900/30 focus-visible:ring-emerald-500`,sky:`border-sky-300 dark:border-sky-700/60 bg-sky-50 dark:bg-sky-900/20 text-sky-700 dark:text-sky-400 hover:bg-sky-100 dark:hover:bg-sky-900/30 focus-visible:ring-sky-500`,amber:`border-amber-300 dark:border-amber-700/60 bg-amber-50 dark:bg-amber-900/20 text-amber-700 dark:text-amber-400 hover:bg-amber-100 dark:hover:bg-amber-900/30 focus-visible:ring-amber-500`,red:`border-red-300 dark:border-red-700/60 bg-red-50 dark:bg-red-900/20 text-red-700 dark:text-red-400 hover:bg-red-100 dark:hover:bg-red-900/30 focus-visible:ring-red-500`,slate:`border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-600 dark:text-slate-300 hover:bg-slate-100 dark:hover:bg-slate-800 focus-visible:ring-emerald-500`},r={emerald:`border-emerald-500 bg-emerald-500 text-white hover:bg-emerald-600 focus-visible:ring-emerald-500`,sky:`border-sky-500 bg-sky-500 text-white hover:bg-sky-600 focus-visible:ring-sky-500`,amber:`border-amber-500 bg-amber-500 text-white hover:bg-amber-600 focus-visible:ring-amber-500`,red:`border-red-500 bg-red-500 text-white hover:bg-red-600 focus-visible:ring-red-500`,slate:`border-slate-600 bg-slate-600 text-white hover:bg-slate-700 focus-visible:ring-emerald-500`};return(i,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{type:`button`,disabled:e.disabled,title:e.title,"aria-pressed":e.active,class:(0,t.normalizeClass)([`whitespace-nowrap rounded-md border px-3 text-sm font-semibold text-center transition-colors focus:outline-none focus-visible:ring-2 disabled:opacity-50 disabled:cursor-not-allowed`,e.active?r[e.color]:n[e.color]])},[(0,t.renderSlot)(i.$slots,`default`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.label),1)])],10,rr))}}),ar={class:`flex items-center justify-between mb-4`},or={class:`text-lg font-semibold text-slate-900 dark:text-slate-100`},sr={key:0,class:`text-xs text-slate-500 dark:text-slate-400`},cr={key:0,class:`inline-flex items-center gap-2 text-xs text-slate-500`},lr={class:`grid gap-4 md:grid-cols-2`},ur={class:`md:col-span-2`},dr=[`for`],fr={class:`md:col-span-2`},pr=[`for`],mr={class:`text-[11px] text-slate-500 mt-1`},hr={class:`md:col-span-2`},gr=[`for`],_r={class:`md:col-span-2`},vr=[`for`],yr={class:`md:col-span-2`},Y=`placeholder:text-slate-400 dark:placeholder:text-slate-500 font-mono`,br=(0,t.defineComponent)({__name:`BaseCredentialsForm`,props:{title:{},subtitle:{default:``},idPrefix:{},keyLabel:{default:`API Key`},keyPlaceholder:{default:``},secretLabel:{default:`Secret Key`},secretPlaceholder:{default:`Enter secret key`},secretSetHint:{default:`A secret is currently set. Leave blank to keep it.`},permissionsHint:{default:``},requiredKeyMessage:{default:`API key is required.`},requiredSecretMessage:{default:`Secret key is required.`},savedMessage:{default:`Credentials saved.`},saveLabel:{default:`Save credentials`},fetchFn:{},updateFn:{},defaults:{}},emits:[`saved`,`error`,`load-error`],setup(e,{expose:n,emit:r}){let i=e,a=r,o=(0,t.ref)(!1),s=(0,t.ref)(!1),c=(0,t.reactive)({keyId:``,secretKey:``,baseUrl:i.defaults.baseUrl,dataUrl:i.defaults.dataUrl});async function l(){try{let e=await i.fetchFn();c.keyId=e.keyId??``,c.baseUrl=e.baseUrl||i.defaults.baseUrl,c.dataUrl=e.dataUrl||i.defaults.dataUrl,c.secretKey=``,s.value=e.hasSecret}catch(e){a(`load-error`,e instanceof Error?e.message:``)}}function u(e){return!e||!e.trim()}async function d(){if(!o.value){if(u(c.keyId)){a(`error`,i.requiredKeyMessage);return}if(!s.value&&u(c.secretKey)){a(`error`,i.requiredSecretMessage);return}if(u(c.baseUrl)||u(c.dataUrl)){a(`error`,`Base URL and Data URL are required.`);return}o.value=!0;try{s.value=(await i.updateFn({keyId:c.keyId.trim(),secretKey:u(c.secretKey)?void 0:c.secretKey.trim(),baseUrl:c.baseUrl.trim(),dataUrl:c.dataUrl.trim()})).hasSecret,c.secretKey=``,a(`saved`,i.savedMessage)}catch(e){a(`error`,e instanceof Error?e.message:`Failed to save`)}finally{o.value=!1}}}return(0,t.onMounted)(l),n({load:l}),(n,r)=>((0,t.openBlock)(),(0,t.createBlock)(O,{class:`!p-6`},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,ar,[(0,t.createElementVNode)(`div`,null,[(0,t.createElementVNode)(`h2`,or,(0,t.toDisplayString)(e.title),1),e.subtitle?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,sr,(0,t.toDisplayString)(e.subtitle),1)):(0,t.createCommentVNode)(``,!0)]),o.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,cr,[(0,t.createVNode)(k,{class:`!h-4 !w-4`}),r[4]||=(0,t.createTextVNode)(` Saving… `,-1)])):(0,t.createCommentVNode)(``,!0)]),(0,t.createElementVNode)(`div`,lr,[(0,t.createElementVNode)(`div`,ur,[(0,t.createElementVNode)(`label`,{for:`${e.idPrefix}-key-id`,class:`block text-xs uppercase tracking-wide text-slate-500 mb-1`},(0,t.toDisplayString)(e.keyLabel),9,dr),(0,t.createVNode)(K,{id:`${e.idPrefix}-key-id`,modelValue:c.keyId,"onUpdate:modelValue":r[0]||=e=>c.keyId=e,type:`text`,autocomplete:`off`,placeholder:e.keyPlaceholder,class:(0,t.normalizeClass)(Y)},null,8,[`id`,`modelValue`,`placeholder`])]),(0,t.createElementVNode)(`div`,fr,[(0,t.createElementVNode)(`label`,{for:`${e.idPrefix}-secret`,class:`block text-xs uppercase tracking-wide text-slate-500 mb-1`},(0,t.toDisplayString)(e.secretLabel),9,pr),(0,t.createVNode)(K,{id:`${e.idPrefix}-secret`,modelValue:c.secretKey,"onUpdate:modelValue":r[1]||=e=>c.secretKey=e,type:`password`,autocomplete:`new-password`,placeholder:s.value?`•••••••• (unchanged — type to replace)`:e.secretPlaceholder,class:(0,t.normalizeClass)(Y)},null,8,[`id`,`modelValue`,`placeholder`]),(0,t.createElementVNode)(`p`,mr,[s.value?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.createTextVNode)((0,t.toDisplayString)(e.secretSetHint),1)],64)):(0,t.renderSlot)(n.$slots,`no-secret-hint`,{key:1},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(e.permissionsHint),1)])])]),(0,t.createElementVNode)(`div`,hr,[(0,t.createElementVNode)(`label`,{for:`${e.idPrefix}-base-url`,class:`block text-xs uppercase tracking-wide text-slate-500 mb-1`},`Base URL (trading)`,8,gr),(0,t.createVNode)(K,{id:`${e.idPrefix}-base-url`,modelValue:c.baseUrl,"onUpdate:modelValue":r[2]||=e=>c.baseUrl=e,type:`text`,class:(0,t.normalizeClass)(Y)},null,8,[`id`,`modelValue`]),(0,t.renderSlot)(n.$slots,`base-url-extra`,{form:c})]),(0,t.createElementVNode)(`div`,_r,[(0,t.createElementVNode)(`label`,{for:`${e.idPrefix}-data-url`,class:`block text-xs uppercase tracking-wide text-slate-500 mb-1`},`Data URL (market data)`,8,vr),(0,t.createVNode)(K,{id:`${e.idPrefix}-data-url`,modelValue:c.dataUrl,"onUpdate:modelValue":r[3]||=e=>c.dataUrl=e,type:`text`,class:(0,t.normalizeClass)(Y)},null,8,[`id`,`modelValue`])]),(0,t.createElementVNode)(`div`,yr,[(0,t.createVNode)(w,{color:(0,t.unref)(S).GREEN,description:e.saveLabel,isDisable:o.value,isLoading:o.value,onClick:d},null,8,[`color`,`description`,`isDisable`,`isLoading`])])]),(0,t.renderSlot)(n.$slots,`footer`)]),_:3}))}}),xr={key:0,class:`text-sm text-slate-500 dark:text-slate-400`},Sr={class:`mb-3 flex flex-wrap items-center gap-2`},Cr={class:`relative min-w-[200px] flex-1`},wr=[`placeholder`],Tr={key:0,class:`text-sm text-slate-500 dark:text-slate-400`},Er={key:1,class:`flex flex-wrap gap-2`},Dr=[`title`,`onClick`],Or=`h-9 rounded-md border border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 text-slate-900 dark:text-slate-100 text-sm focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,X=`\0all`,kr=(0,t.defineComponent)({__name:`BasePillPickerModal`,props:{title:{},items:{},groups:{},icon:{},subtitle:{},searchPlaceholder:{default:`Filter…`},emptyMessage:{default:`Nothing to pick from.`},noMatchMessage:{default:`No items match the current filter.`},mono:{type:Boolean,default:!1},maxWidthClass:{default:`max-w-2xl`},closeText:{default:`Close`},groupAriaLabel:{default:`Group`},allLabel:{default:`All`}},emits:[`pick`,`close`],setup(e,{emit:r}){let i=e,a=r,o=(0,t.computed)(()=>i.icon??n.MagnifyingGlassIcon),s=(0,t.ref)(``),c=(0,t.ref)(X),l=(0,t.computed)(()=>i.groups&&i.groups.length>0?[{value:X,label:i.allLabel},...i.groups]:[]),u=(0,t.computed)(()=>i.items.filter(e=>(c.value===X||e.group===c.value)&&e.label.toLowerCase().includes(s.value.trim().toLowerCase())));return(r,i)=>((0,t.openBlock)(),(0,t.createBlock)(P,{title:e.title,icon:o.value,subtitle:e.subtitle,scrollable:``,"max-width-class":e.maxWidthClass,onCancel:i[4]||=e=>a(`close`)},{footer:(0,t.withCtx)(()=>[(0,t.createVNode)(W,{variant:`ghost`,label:e.closeText,onClick:i[3]||=e=>a(`close`)},null,8,[`label`])]),default:(0,t.withCtx)(()=>[e.items.length===0?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,xr,(0,t.toDisplayString)(e.emptyMessage),1)):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[(0,t.createElementVNode)(`div`,Sr,[(0,t.createElementVNode)(`div`,Cr,[(0,t.createVNode)((0,t.unref)(n.MagnifyingGlassIcon),{class:`pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-slate-400`}),(0,t.withDirectives)((0,t.createElementVNode)(`input`,{"onUpdate:modelValue":i[0]||=e=>s.value=e,type:`text`,placeholder:e.searchPlaceholder,autocomplete:`off`,class:(0,t.normalizeClass)([Or,`w-full pl-9 pr-8 placeholder:text-slate-400 dark:placeholder:text-slate-500`,e.mono?`font-mono`:``])},null,10,wr),[[t.vModelText,s.value]]),s.value?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:0,type:`button`,"aria-label":`Clear the filter`,class:`absolute right-2 top-1/2 -translate-y-1/2 text-slate-400 hover:text-slate-600 dark:hover:text-slate-200`,onClick:i[1]||=e=>s.value=``},` ✕ `)):(0,t.createCommentVNode)(``,!0)]),l.value.length>0?((0,t.openBlock)(),(0,t.createBlock)(J,{key:0,modelValue:c.value,"onUpdate:modelValue":i[2]||=e=>c.value=e,options:l.value,"aria-label":e.groupAriaLabel},null,8,[`modelValue`,`options`,`aria-label`])):(0,t.createCommentVNode)(``,!0)]),u.value.length===0?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,Tr,(0,t.toDisplayString)(e.noMatchMessage),1)):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Er,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(u.value,n=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:n.id,type:`button`,title:n.title,class:(0,t.normalizeClass)([`h-8 shrink-0 rounded-md border border-slate-300 dark:border-slate-600 bg-slate-50 dark:bg-slate-900 px-3 text-sm text-slate-700 dark:text-slate-200 transition-colors hover:border-emerald-500 hover:bg-emerald-50 hover:text-emerald-700 dark:hover:bg-emerald-500/10 dark:hover:text-emerald-400 focus:outline-none focus-visible:ring-2 focus-visible:ring-emerald-500`,e.mono?`font-mono`:``]),onClick:e=>a(`pick`,n)},(0,t.toDisplayString)(n.label),11,Dr))),128))]))],64))]),_:1},8,[`title`,`icon`,`subtitle`,`max-width-class`]))}}),Ar=[`aria-label`],jr=[`title`],Mr={class:`text-[10px] tabular-nums text-slate-400 dark:text-slate-500`},Nr=[`title`],Pr=(0,t.defineComponent)({__name:`BaseBarDistribution`,props:{bars:{},ariaLabel:{default:`Value distribution`},countNoun:{default:`item`},titlePrefix:{default:``},maxBarHeight:{default:56},barClass:{default:`bg-emerald-500/80 dark:bg-emerald-400/80`}},setup(e){let n=e,r=(0,t.computed)(()=>Math.max(1,...n.bars.map(e=>e.count))),i=e=>Math.max(3,Math.round(e.count/r.value*n.maxBarHeight)),a=e=>`${n.titlePrefix?`${n.titlePrefix} `:``}${e.label}: ${e.count} ${n.countNoun}${e.count===1?``:`s`}`;return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:`flex items-end gap-1.5 overflow-x-auto pb-1`,role:`img`,"aria-label":e.ariaLabel},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.bars,n=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:n.label,class:`flex min-w-7 flex-1 flex-col items-center gap-0.5`,title:a(n)},[(0,t.createElementVNode)(`span`,Mr,(0,t.toDisplayString)(n.count),1),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`w-full max-w-8 rounded-t`,e.barClass]),style:(0,t.normalizeStyle)({height:`${i(n)}px`})},null,6),(0,t.createElementVNode)(`span`,{class:`max-w-full truncate font-mono text-[10px] text-slate-500 dark:text-slate-400`,title:n.label},(0,t.toDisplayString)(n.label),9,Nr)],8,jr))),128))],8,Ar))}});function Fr(e,n=300){let r=(0,t.ref)(e.value),i=null;return(0,t.watch)(e,e=>{i&&clearTimeout(i),i=setTimeout(()=>{r.value=e,i=null},n)}),(0,t.onScopeDispose)(()=>{i&&=(clearTimeout(i),null)}),r}function Ir(e=3e3){let n=(0,t.ref)(!1),r=(0,t.ref)(``),i=(0,t.ref)(A.SUCCESS),a=null;function o(){a&&=(clearTimeout(a),null)}function s(t,s=A.SUCCESS,c=e){r.value=t,i.value=s,n.value=!0,o(),a=setTimeout(()=>{n.value=!1,a=null},c)}return(0,t.onScopeDispose)(()=>{o()}),{showToast:n,toastMessage:r,toastType:i,showToastMessage:s}}function Lr(){let e=(0,i.useRoute)(),t=(0,i.useRouter)();function n(t){let n=e.query[t];return typeof n==`string`?n:``}function r(e,t,r){let i=n(e);return t.includes(i)?i:r}function a(n){let r=e.query;Object.keys(n).length===Object.keys(r).length&&Object.entries(n).every(([e,t])=>r[e]===t)||t.replace({query:n})}return{qparam:n,qenum:r,replaceQuery:a}}function Rr(){let{isDark:e}=d(),n=(0,t.computed)(()=>e.value?`text-gray-300`:`text-gray-600`),r=(0,t.computed)(()=>e.value?`bg-gray-800 border-gray-600 text-gray-100 placeholder-gray-500 focus:ring-emerald-500 focus:border-emerald-500`:`bg-white border-gray-300 text-gray-800 focus:ring-emerald-500 focus:border-emerald-500`);function i(t){return t==null||String(t).trim()===``?e.value?`bg-gray-800 border-red-500 text-gray-100 placeholder-gray-500 focus:ring-red-500 focus:border-red-500 ring-1 ring-red-500/30`:`bg-white border-red-400 text-gray-800 focus:ring-red-500 focus:border-red-500 ring-1 ring-red-400/30`:r.value}return{label:n,input:r,requiredInput:i}}function zr(e,n,r={}){let{immediate:i=!0,pauseWhenHidden:a=!0}=r,o=null,s=(0,t.ref)(!1),c=!1;function l(){o!==null||n===null||(o=setInterval(()=>void e(),n))}function u(){o!==null&&(clearInterval(o),o=null)}function d(){c=!1,!s.value&&(s.value=!0,i&&e(),l())}function f(){c=!1,s.value=!1,u()}function p(){if(document.visibilityState===`visible`){if(!c)return;c=!1,s.value=!0,e(),l()}else{if(!s.value)return;s.value=!1,u(),c=!0}}return(0,t.onMounted)(()=>{d(),a&&document.addEventListener(`visibilitychange`,p)}),(0,t.onUnmounted)(()=>{f(),a&&document.removeEventListener(`visibilitychange`,p)}),{start:d,stop:f,active:(0,t.readonly)(s)}}var Br=function(e){return e.WIN=`WIN`,e.LOSE=`LOSE`,e}({});function Vr(e){let t=`red`;switch(e){case a.ERROR:t=`red`;break;case a.SUCCESS:t=`green`;break;case a.INFO:t=`gray`;break;case a.WARNING:t=`yellow`;break}return t}function Hr(e){let t=`red`;switch(e){case h.GREEN:t=`green`;break;case h.RED:t=`red`;break;case h.BLUE:t=`blue`;break;case h.YELLOW:t=`yellow`;break;case h.BLACK:t=`black`;break;case h.GRAY:t=`gray`;break;case h.NONE:t=``;break}return t}var Ur={GET:`bg-blue-600`,POST:`bg-emerald-600`,PUT:`bg-amber-600`,DELETE:`bg-red-600`,PATCH:`bg-purple-600`,HEAD:`bg-gray-600`},Wr={GET:`bg-blue-500`,POST:`bg-green-500`,PUT:`bg-yellow-500`,DELETE:`bg-red-500`,PATCH:`bg-purple-500`,HEAD:`bg-gray-500`};function Gr(e){return e?Ur[e.toUpperCase()]??`bg-gray-600`:`bg-gray-600`}function Kr(e){return e?Wr[e.toUpperCase()]??`bg-gray-500`:`bg-gray-500`}function qr(e){let t=e??0;return t>=200&&t<300?`bg-emerald-600`:t>=300&&t<400?`bg-blue-600`:t>=400&&t<500?`bg-amber-600`:t>=500?`bg-red-600`:`bg-gray-600`}function Jr(e,t){let n=(e||`ANY`).toUpperCase();return n===`GET`?t?`bg-blue-500/15 text-blue-400`:`bg-blue-100 text-blue-700`:n===`POST`?t?`bg-emerald-500/15 text-emerald-400`:`bg-emerald-100 text-emerald-700`:n===`PUT`?t?`bg-amber-500/15 text-amber-400`:`bg-amber-100 text-amber-700`:n===`DELETE`?t?`bg-red-500/15 text-red-400`:`bg-red-100 text-red-700`:n===`PATCH`?t?`bg-purple-500/15 text-purple-400`:`bg-purple-100 text-purple-700`:n===`HEAD`?t?`bg-sky-500/15 text-sky-400`:`bg-sky-100 text-sky-700`:t?`bg-gray-500/15 text-gray-400`:`bg-gray-100 text-gray-600`}function Yr(e,t){let n=e??200;return n>=200&&n<300?t?`bg-emerald-500/15 text-emerald-300`:`bg-emerald-100 text-emerald-700`:n>=300&&n<400?t?`bg-sky-500/15 text-sky-300`:`bg-sky-100 text-sky-700`:n>=400&&n<500?t?`bg-amber-500/15 text-amber-300`:`bg-amber-100 text-amber-700`:n>=500&&n<600?t?`bg-red-500/15 text-red-300`:`bg-red-100 text-red-700`:t?`bg-gray-800 text-gray-400`:`bg-gray-100 text-gray-600`}function Xr(e,t){let n=e??200;return t?n>=200&&n<300?`bg-green-500/15 text-green-400`:n>=300&&n<400?`bg-blue-500/15 text-blue-400`:n>=400&&n<500?`bg-yellow-500/15 text-yellow-400`:`bg-red-500/15 text-red-400`:n>=200&&n<300?`bg-green-100 text-green-800`:n>=300&&n<400?`bg-blue-100 text-blue-800`:n>=400&&n<500?`bg-yellow-100 text-yellow-800`:`bg-red-100 text-red-800`}function Zr(e){return!(e.key??``).trim()||e.matcherType===`absent`?!1:!(e.value??``).trim()}function Qr(e){return e.matcherType===`absent`||!(e.value??``).trim()?!1:!(e.key??``).trim()}var $r=new Set([`A`,`B`,`STRONG`,`I`,`EM`,`CODE`,`PRE`,`BR`,`P`,`UL`,`OL`,`LI`,`SPAN`,`DIV`]),ei=new Set([`SCRIPT`,`STYLE`,`IFRAME`,`OBJECT`,`EMBED`,`NOSCRIPT`,`TEMPLATE`]),ti={A:new Set([`href`,`title`])};function Z(e){let t=e.trim().toLowerCase();return t.startsWith(`http://`)||t.startsWith(`https://`)||t.startsWith(`mailto:`)||t.startsWith(`tel:`)||t.startsWith(`/`)||t.startsWith(`#`)||t===``}function Q(e){if(e.nodeType!==Node.ELEMENT_NODE)return;let t=e,n=t.tagName.toUpperCase();if(!$r.has(n)){ei.has(n)?t.remove():t.replaceWith(document.createTextNode(t.textContent??``));return}let r=ti[n]??new Set;for(let e of Array.from(t.attributes)){if(!r.has(e.name.toLowerCase())){t.removeAttribute(e.name);continue}n===`A`&&e.name.toLowerCase()===`href`&&!Z(e.value)&&t.removeAttribute(e.name)}n===`A`&&t.hasAttribute(`href`)&&(t.setAttribute(`rel`,`noopener noreferrer`),t.setAttribute(`target`,`_blank`));for(let e of Array.from(t.childNodes))Q(e)}function ni(e){if(!e)return``;let t=new DOMParser().parseFromString(`<div>${e}</div>`,`text/html`).body.firstElementChild;if(!t)return``;for(let e of Array.from(t.childNodes))Q(e);return t.innerHTML}var $=`—`;function ri(e,t=4){if(e==null||typeof e==`string`&&e.trim()===``)return $;let n=typeof e==`string`?Number(e):e;return isFinite(n)?n.toLocaleString(void 0,{minimumFractionDigits:t,maximumFractionDigits:t}):$}function ii(e){if(e==null||e===``)return $;let t=new Date(e);return isNaN(t.getTime())?String(e):t.toLocaleString()}function ai(e){return new Date(e).toLocaleString(void 0,{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}function oi(e){return new Date(e).toLocaleDateString(void 0,{month:`short`,day:`numeric`})}function si(e){try{return new Date(e).toLocaleString(void 0,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,fractionalSecondDigits:3,hour12:!1})}catch{return String(e)}}function ci(e){if(!isFinite(e)||e===0)return e.toFixed(2);let t=Math.abs(e),n=2;return t<1e-4?n=8:t<.01?n=6:t<1?n=4:t<100&&(n=3),e.toLocaleString(void 0,{minimumFractionDigits:n,maximumFractionDigits:n})}function li(e,t=2){return`${e>=0?`+`:``}${e.toFixed(t)}%`}function ui(e){return`${e<0?`-`:`+`}$${Math.abs(e).toFixed(2)}`}function di(e){if(e==null||e===``)return $;let t=new Date(e);return isNaN(t.getTime())?String(e):t.toLocaleDateString(`en-US`,{year:`numeric`,month:`short`,day:`numeric`})}function fi(e){if(e==null||e===``)return $;let t=new Date(e);return isNaN(t.getTime())?String(e):t.toLocaleDateString(`en-US`,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}function pi(e){if(typeof e!=`number`||!isFinite(e)||e<=0)return``;let t=e/1e3,n=t<1?3:2;return`= ${t.toFixed(n)} s`}function mi(e){return e?e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`:``}function hi(e){try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function gi(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function _i(e,t=2){if(e==null||!isFinite(e))return $;let n=Math.floor(Math.max(0,e)/6e4),r=Math.floor(n/1440),i=Math.floor(n%1440/60),a=n%60,o=[];return r>0&&o.push(`${r}d`),(r>0||i>0)&&o.push(`${i}h`),o.push(`${a}m`),o.slice(0,t).join(` `)}function vi(e){let t=(e??``).trim();if(!t)return!1;try{let e=new URL(t);return e.protocol===`http:`||e.protocol===`https:`}catch{return!1}}function yi(e){if(!e.trim())return!0;try{return JSON.parse(e),!0}catch{return!1}}function bi(e){if(!e.trim())return!0;try{return!new DOMParser().parseFromString(e,`application/xml`).getElementsByTagName(`parsererror`).length}catch{return!1}}function xi(e){if(!e.trim())return!0;let t=e.replace(/\s+/g,``);if(!t)return!0;if(t.length%4!=0||!/^[A-Za-z0-9+/]*={0,2}$/.test(t))return!1;try{return atob(t),!0}catch{return!1}}function Si(e,t){let n={};if(!e)return n;for(let r of e){let e=t[r.key];n[r.key]=e??r.default}return n}function Ci(e,t){if(!e)return null;for(let n of e)if(n.type===`decimal`||n.type===`integer`){let e=t[n.key],r=e===``||e==null;if(n.default===null&&r)continue;if(typeof e!=`number`||Number.isNaN(e)||n.type===`integer`&&!Number.isInteger(e))return n.label}return null}function wi(e){if(e.buyPrice==null||e.lastPrice==null||e.filledQty==null)return{pnlUsd:null,pnlPct:null};let t=Number(e.buyPrice),n=Number(e.lastPrice),r=Number(e.filledQty);return!isFinite(t)||!isFinite(n)||!isFinite(r)||t<=0||n<=0?{pnlUsd:null,pnlPct:null}:{pnlUsd:(n-t)*r,pnlPct:(n-t)/t*100}}e.AlertEnum=a,e.BaseActionButton=Jt,e.BaseAlert=m,e.BaseAppLayout=Bt,e.BaseBadge=_,e.BaseBadgeEnum=Br,e.BaseBarDistribution=Pr,e.BaseBreadcrumb=x,e.BaseButton=w,e.BaseButtonEnum=S,e.BaseButtonSizeEnum=C,e.BaseChipButton=xn,e.BaseCodeBlock=kn,e.BaseCollapsibleSection=et,e.BaseConfirmModal=it,e.BaseCopyButton=Xt,e.BaseCredentialsForm=br,e.BaseDropdown=In,e.BaseEntityPickerModal=Lt,e.BaseFileDropzone=On,e.BaseFilterChip=ir,e.BaseGoogleSignInButton=G,e.BaseInput=K,e.BaseLine=de,e.BaseLoginEnum=fe,e.BaseLoginForm=fn,e.BaseLogo=me,e.BaseLogoEnum=E,e.BaseModal=be,e.BaseModalEnum=D,e.BaseModalShell=P,e.BaseNotFoundPage=dt,e.BaseNotificationPanel=yn,e.BasePageHeader=Ut,e.BasePillPickerModal=kr,e.BaseRemoveButton=Sn,e.BaseRow=O,e.BaseSegmentedControl=J,e.BaseSelect=q,e.BaseSidebar=wt,e.BaseSpecFields=$n,e.BaseSpinner=k,e.BaseStatBreakdown=nr,e.BaseStatusPill=Tn,e.BaseTable=Gn,e.BaseTextInputModal=ct,e.BaseToast=Ce,e.BaseToastEnum=A,e.BaseToolbarButton=W,e.ColoredSquares=Te,e.ColorsEnums=h,e.EarningsCard=Oe,e.EuroAmount=Ne,e.LineEnum=T,e.Pagination=Re,e.PositioningEnum=j,e.TrendArrow=Ue,e.buildSpecParams=Si,e.computePnL=wi,e.firstInvalidNumericSpec=Ci,e.fmtBytes=mi,e.fmtCalendarDate=di,e.fmtCalendarDateTime=fi,e.fmtDate=ii,e.fmtDateShort=oi,e.fmtDateTime=ai,e.fmtDateTimeMs=si,e.fmtDuration=_i,e.fmtMsAsSeconds=pi,e.fmtNumber=ri,e.fmtPct=li,e.fmtPrice=ci,e.fmtUsd=ui,e.formatJson=hi,e.getBaseColor=Vr,e.getBaseColorOf=Hr,e.initTheme=u,e.isSafeHref=Z,e.isValidAbsoluteUrl=vi,e.isValidBase64=xi,e.isValidJson=yi,e.isValidXml=bi,e.methodBadgeBright=Kr,e.methodBadgeSolid=Gr,e.methodBadgeTinted=Jr,e.rowKeyMissing=Qr,e.rowValueMissing=Zr,e.sanitizeHtml=ni,e.statusBadgeSoft=Yr,e.statusBadgeSolid=qr,e.statusBadgeTinted=Xr,e.stringifyValue=gi,e.useDebouncedRef=Fr,e.useEscapeKey=N,e.useFieldClasses=Rr,e.useMobileSidebar=I,e.useNotifications=U,e.usePolling=zr,e.useQueryParamSync=Lr,e.useSidebarCollapse=B,e.useTheme=d,e.useThemeClasses=M,e.useToast=Ir});