@tenerife.music/ui 0.0.6 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/README.md +168 -136
  2. package/dist/applyMode-Bh7sEqT6.js +144 -0
  3. package/dist/applyMode-DCenL-Bg.cjs +2 -0
  4. package/dist/brand-C5R2semX.js +45 -0
  5. package/dist/brand-DQb18Frh.cjs +2 -0
  6. package/dist/colors-BGRiFoSZ.cjs +2 -0
  7. package/dist/colors-ClemXPPi.js +377 -0
  8. package/dist/components/admin/Dashboard.d.ts.map +1 -1
  9. package/dist/components/admin/UserManagement.d.ts.map +1 -1
  10. package/dist/components/auth/LoginForm.d.ts.map +1 -1
  11. package/dist/components/auth/ProfileCard.d.ts.map +1 -1
  12. package/dist/components/auth/RegisterForm.d.ts.map +1 -1
  13. package/dist/components/cards/EventCard.d.ts.map +1 -1
  14. package/dist/components/cards/VenueCard.d.ts.map +1 -1
  15. package/dist/components/controls/LanguageSelector.d.ts.map +1 -1
  16. package/dist/components/data/List.d.ts.map +1 -1
  17. package/dist/components/data/Table.d.ts +2 -2
  18. package/dist/components/data/Table.d.ts.map +1 -1
  19. package/dist/components/data/Timeline.d.ts.map +1 -1
  20. package/dist/components/feedback/Alert.d.ts +1 -1
  21. package/dist/components/feedback/Alert.d.ts.map +1 -1
  22. package/dist/components/feedback/ConsentBanner.d.ts.map +1 -1
  23. package/dist/components/feedback/Progress.d.ts.map +1 -1
  24. package/dist/components/feedback/Skeleton.d.ts.map +1 -1
  25. package/dist/components/filters/DateRangePicker.d.ts.map +1 -1
  26. package/dist/components/filters/FilterBar.d.ts +14 -1
  27. package/dist/components/filters/FilterBar.d.ts.map +1 -1
  28. package/dist/components/filters/FilterSelect.d.ts +2 -2
  29. package/dist/components/filters/FilterSelect.d.ts.map +1 -1
  30. package/dist/components/filters/PriceRangeSlider.d.ts.map +1 -1
  31. package/dist/components/filters/SearchFilters.d.ts.map +1 -1
  32. package/dist/components/filters/SearchInput.d.ts +1 -1
  33. package/dist/components/filters/SearchInput.d.ts.map +1 -1
  34. package/dist/components/filters/types.d.ts +9 -9
  35. package/dist/components/filters/types.d.ts.map +1 -1
  36. package/dist/components/forms/FormInput.d.ts +3 -7
  37. package/dist/components/forms/FormInput.d.ts.map +1 -1
  38. package/dist/components/forms/FormSelect.d.ts.map +1 -1
  39. package/dist/components/forms/FormTextarea.d.ts +2 -6
  40. package/dist/components/forms/FormTextarea.d.ts.map +1 -1
  41. package/dist/components/icons/TrendingIcon.d.ts.map +1 -1
  42. package/dist/components/image/Image.d.ts +49 -0
  43. package/dist/components/image/Image.d.ts.map +1 -0
  44. package/dist/components/layout/Container.d.ts +2 -2
  45. package/dist/components/layout/Container.d.ts.map +1 -1
  46. package/dist/components/layout/Flex.d.ts +1 -1
  47. package/dist/components/layout/Flex.d.ts.map +1 -1
  48. package/dist/components/layout/Footer.d.ts.map +1 -1
  49. package/dist/components/layout/Grid.d.ts +3 -3
  50. package/dist/components/layout/Grid.d.ts.map +1 -1
  51. package/dist/components/layout/ModeHero.d.ts.map +1 -1
  52. package/dist/components/layout/Navbar.d.ts.map +1 -1
  53. package/dist/components/layout/Section.d.ts +2 -2
  54. package/dist/components/layout/Section.d.ts.map +1 -1
  55. package/dist/components/layout/Stack.d.ts +1 -1
  56. package/dist/components/layout/Stack.d.ts.map +1 -1
  57. package/dist/components/menus/DropdownMenu.d.ts +2 -2
  58. package/dist/components/menus/DropdownMenu.d.ts.map +1 -1
  59. package/dist/components/menus/NavigationMenu.d.ts +2 -2
  60. package/dist/components/menus/NavigationMenu.d.ts.map +1 -1
  61. package/dist/components/menus/Tabs.d.ts +2 -2
  62. package/dist/components/menus/Tabs.d.ts.map +1 -1
  63. package/dist/components/modals/ConfirmDialog.d.ts.map +1 -1
  64. package/dist/components/modals/CustomDialog.d.ts +1 -2
  65. package/dist/components/modals/CustomDialog.d.ts.map +1 -1
  66. package/dist/components/modals/Modal.d.ts +2 -2
  67. package/dist/components/modals/Modal.d.ts.map +1 -1
  68. package/dist/components/modals/ModalProvider.d.ts +2 -2
  69. package/dist/components/modals/ModalProvider.d.ts.map +1 -1
  70. package/dist/components/modals/SimpleModal.d.ts +1 -2
  71. package/dist/components/modals/SimpleModal.d.ts.map +1 -1
  72. package/dist/components/navigation/Breadcrumbs.d.ts.map +1 -1
  73. package/dist/components/navigation/Pagination.d.ts.map +1 -1
  74. package/dist/components/overlays/OverlayPortal.d.ts +3 -3
  75. package/dist/components/overlays/OverlayPortal.d.ts.map +1 -1
  76. package/dist/components/overlays/Popover.d.ts +11 -11
  77. package/dist/components/overlays/Popover.d.ts.map +1 -1
  78. package/dist/components/overlays/Tooltip.d.ts +9 -9
  79. package/dist/components/overlays/Tooltip.d.ts.map +1 -1
  80. package/dist/components/primitives/Badge.d.ts +1 -1
  81. package/dist/components/primitives/Badge.d.ts.map +1 -1
  82. package/dist/components/primitives/Button.d.ts +1 -1
  83. package/dist/components/primitives/Button.d.ts.map +1 -1
  84. package/dist/components/primitives/Card.d.ts +1 -1
  85. package/dist/components/primitives/Card.d.ts.map +1 -1
  86. package/dist/components/primitives/Divider.d.ts.map +1 -1
  87. package/dist/components/primitives/Link.d.ts +2 -2
  88. package/dist/components/primitives/Link.d.ts.map +1 -1
  89. package/dist/components/primitives/ThemeSwitch.d.ts.map +1 -1
  90. package/dist/components/primitives/Typography.d.ts +4 -4
  91. package/dist/components/primitives/Typography.d.ts.map +1 -1
  92. package/dist/components/search/SearchBar.d.ts.map +1 -1
  93. package/dist/components/sections/ArticlesSection.d.ts.map +1 -1
  94. package/dist/components/sections/TrendingSection.d.ts +7 -3
  95. package/dist/components/sections/TrendingSection.d.ts.map +1 -1
  96. package/dist/components/skeletons/EventCardSkeleton.d.ts.map +1 -1
  97. package/dist/components/skeletons/VenueCardSkeleton.d.ts.map +1 -1
  98. package/dist/components/toasts/Toast.d.ts +2 -2
  99. package/dist/components/toasts/Toast.d.ts.map +1 -1
  100. package/dist/components/toasts/ToastProvider.d.ts +3 -3
  101. package/dist/components/toasts/ToastProvider.d.ts.map +1 -1
  102. package/dist/components/ui/button.d.ts +2 -2
  103. package/dist/components/ui/button.d.ts.map +1 -1
  104. package/dist/components/ui/card.d.ts +1 -1
  105. package/dist/components/ui/card.d.ts.map +1 -1
  106. package/dist/components/ui/dialog.d.ts +2 -2
  107. package/dist/components/ui/dialog.d.ts.map +1 -1
  108. package/dist/components/ui/input.d.ts.map +1 -1
  109. package/dist/components/ui/label.d.ts +1 -1
  110. package/dist/components/ui/label.d.ts.map +1 -1
  111. package/dist/components/ui/toast.d.ts +3 -3
  112. package/dist/components/ui/toast.d.ts.map +1 -1
  113. package/dist/components/ui/toaster.d.ts.map +1 -1
  114. package/dist/components/ui/tooltip.d.ts +2 -2
  115. package/dist/components/ui/tooltip.d.ts.map +1 -1
  116. package/dist/dark-Cvoy1uFT.js +30 -0
  117. package/dist/dark-OOhiqt1q.cjs +2 -0
  118. package/dist/default-BKgH1D9-.js +8 -0
  119. package/dist/default-Ddg7Haf2.cjs +2 -0
  120. package/dist/hooks/use-toast.d.ts +3 -3
  121. package/dist/hooks/use-toast.d.ts.map +1 -1
  122. package/dist/hooks/useDebounce.d.ts +20 -0
  123. package/dist/hooks/useDebounce.d.ts.map +1 -0
  124. package/dist/hooks/useModal.d.ts +5 -5
  125. package/dist/hooks/useModal.d.ts.map +1 -1
  126. package/dist/hooks/useToast.d.ts +2 -2
  127. package/dist/hooks/useToast.d.ts.map +1 -1
  128. package/dist/index.cjs +1 -1
  129. package/dist/index.d.ts +18 -17
  130. package/dist/index.d.ts.map +1 -1
  131. package/dist/index.mjs +2378 -2267
  132. package/dist/preset.cjs +1 -1
  133. package/dist/preset.d.ts.map +1 -1
  134. package/dist/preset.mjs +1 -1
  135. package/dist/radius-CAu4qr9R.js +185 -0
  136. package/dist/radius-Cz6tayZG.cjs +2 -0
  137. package/dist/theme/ThemeProvider.d.ts +45 -0
  138. package/dist/theme/ThemeProvider.d.ts.map +1 -0
  139. package/dist/theme/applyMode.d.ts +31 -0
  140. package/dist/theme/applyMode.d.ts.map +1 -1
  141. package/dist/theme/index.cjs +1 -1
  142. package/dist/theme/index.d.ts +2 -1
  143. package/dist/theme/index.d.ts.map +1 -1
  144. package/dist/theme/index.mjs +102 -97
  145. package/dist/theme/motion.d.ts.map +1 -1
  146. package/dist/theme/typography.d.ts.map +1 -1
  147. package/dist/themes/brand.d.ts +7 -0
  148. package/dist/themes/brand.d.ts.map +1 -0
  149. package/dist/themes/dark.d.ts +7 -0
  150. package/dist/themes/dark.d.ts.map +1 -0
  151. package/dist/themes/default.d.ts +7 -0
  152. package/dist/themes/default.d.ts.map +1 -0
  153. package/dist/themes/index.d.ts +22 -0
  154. package/dist/themes/index.d.ts.map +1 -0
  155. package/dist/themes/types.d.ts +64 -0
  156. package/dist/themes/types.d.ts.map +1 -0
  157. package/dist/tokens/colors.d.ts +260 -38
  158. package/dist/tokens/colors.d.ts.map +1 -1
  159. package/dist/tokens/css-variables.d.ts +250 -0
  160. package/dist/tokens/css-variables.d.ts.map +1 -0
  161. package/dist/tokens/index.cjs +4 -1
  162. package/dist/tokens/index.d.ts +4 -1
  163. package/dist/tokens/index.d.ts.map +1 -1
  164. package/dist/tokens/index.mjs +1025 -167
  165. package/dist/tokens/motion.d.ts +358 -0
  166. package/dist/tokens/motion.d.ts.map +1 -0
  167. package/dist/tokens/radius.d.ts +130 -2
  168. package/dist/tokens/radius.d.ts.map +1 -1
  169. package/dist/tokens/shadows.d.ts +172 -0
  170. package/dist/tokens/shadows.d.ts.map +1 -0
  171. package/dist/tokens/spacing.d.ts +155 -1
  172. package/dist/tokens/spacing.d.ts.map +1 -1
  173. package/dist/tokens/typography.d.ts +285 -21
  174. package/dist/tokens/typography.d.ts.map +1 -1
  175. package/package.json +53 -18
  176. package/dist/radius-CuOZD6Mk.cjs +0 -2
  177. package/dist/radius-NOytgRst.js +0 -22
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ee=require("./tokens/index.cjs"),Cr=require("./radius-CuOZD6Mk.cjs"),a=require("react/jsx-runtime"),y=require("react"),Qe=require("@radix-ui/react-slot"),z=require("class-variance-authority"),Sr=require("clsx"),Er=require("tailwind-merge"),Dr=require("@radix-ui/react-label"),C=require("lucide-react"),Tr=require("@radix-ui/react-dialog"),Pr=require("@radix-ui/react-dropdown-menu"),qr=require("@radix-ui/react-navigation-menu"),Rr=require("@radix-ui/react-tabs"),Or=require("@radix-ui/react-select"),Fr=require("@radix-ui/react-tooltip"),Vr=require("@radix-ui/react-popover"),Wr=require("react-dom");function X(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const u=X(y),Je=X(Dr),M=X(Tr),k=X(Pr),F=X(qr),ae=X(Rr),E=X(Or),fe=X(Fr),ie=X(Vr);function l(...e){return Er.twMerge(Sr.clsx(e))}function Ke(e){return new Intl.DateTimeFormat("en-US",{month:"long",day:"numeric",year:"numeric"}).format(new Date(e))}function Ze(e){return new Intl.DateTimeFormat("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).format(new Date(e))}function zr(e){return`${Ke(e)} at ${Ze(e)}`}function Ir(){return Math.random().toString(36).substr(2,9)}function Lr(e,t){let r;return(...n)=>{clearTimeout(r),r=setTimeout(()=>e(...n),t)}}function Br(e,t){let r;return(...n)=>{r||(e(...n),r=!0,setTimeout(()=>r=!1,t))}}const et=z.cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),O=u.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},s)=>{const i=n?Qe.Slot:"button";return a.jsx(i,{className:l(et({variant:t,size:r,className:e})),ref:s,...o})});O.displayName="Button";const tt=z.cva("inline-flex items-center justify-center whitespace-nowrap text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"text-primary hover:text-primary/80 underline-offset-4 hover:underline",destructive:"text-destructive hover:text-destructive/80 underline-offset-4 hover:underline",ghost:"text-foreground hover:text-accent-foreground hover:bg-accent rounded-md px-3 py-2",secondary:"text-secondary-foreground underline-offset-4 hover:underline",button:"bg-primary text-primary-foreground hover:bg-primary/90 rounded-md","button-outline":"border border-input bg-background hover:bg-accent hover:text-accent-foreground rounded-md","button-secondary":"bg-secondary text-secondary-foreground hover:bg-secondary/80 rounded-md"},size:{default:"h-10 px-4 py-2",sm:"h-9 px-3",lg:"h-11 px-8",icon:"h-10 w-10",none:"h-auto px-0 py-0"}},defaultVariants:{variant:"default",size:"none"}}),Z=u.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},s)=>{const i=n?Qe.Slot:"a";return a.jsx(i,{className:l(tt({variant:t,size:r,className:e})),ref:s,...o})});Z.displayName="Link";const de=u.forwardRef(({className:e,type:t,...r},n)=>a.jsx("input",{type:t,className:l("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:n,...r}));de.displayName="Input";const Y=u.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("rounded-xl border bg-card text-card-foreground shadow",e),...t}));Y.displayName="Card";const rt=u.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("flex flex-col space-y-1.5 p-6",e),...t}));rt.displayName="CardHeader";const at=u.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("font-semibold leading-none tracking-tight",e),...t}));at.displayName="CardTitle";const nt=u.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("text-sm text-muted-foreground",e),...t}));nt.displayName="CardDescription";const $=u.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("p-6 pt-0",e),...t}));$.displayName="CardContent";const ot=u.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("flex items-center p-6 pt-0",e),...t}));ot.displayName="CardFooter";const st=z.cva("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function _r({className:e,variant:t,...r}){return a.jsx("div",{className:l(st({variant:t}),e),...r})}const it=u.forwardRef(({className:e,orientation:t="horizontal",variant:r="solid",...n},o)=>{const s={solid:"border-solid",dashed:"border-dashed",dotted:"border-dotted"};return a.jsx("div",{ref:o,className:l("border-border",t==="horizontal"?`w-full border-t ${s[r]}`:`h-full border-l ${s[r]}`,e),...n})});it.displayName="Divider";const Yr=z.cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),K=u.forwardRef(({className:e,...t},r)=>a.jsx(Je.Root,{ref:r,className:l(Yr(),e),...t}));K.displayName=Je.Root.displayName;const $r="data-mode",Ar="data-theme",Be="dark",Hr={day:{"--background":"#ffffff","--foreground":"#171717","--popover":"#ffffff","--tm-primary":"#00bfa6","--tm-secondary":"#f4f4f5","--tm-accent":"#e5e7eb"},night:{"--background":"#0b0b10","--foreground":"#e5e7eb","--popover":"#0e1016","--tm-primary":"#7b5eff","--tm-secondary":"#12121b","--tm-accent":"#1a1a26"}};function dt(e){if(typeof document>"u")return;const t=document.documentElement;t.setAttribute($r,e),t.setAttribute(Ar,e),e==="night"?t.classList.add(Be):t.classList.remove(Be);const r=Hr[e];Object.entries(r).forEach(([o,s])=>{s?t.style.setProperty(o,s):t.style.removeProperty(o)});const n=document.body;if(n){n.dataset.mode=e;const o=r["--background"],s=r["--foreground"];o?n.style.backgroundColor=o:n.style.removeProperty("background-color"),s?n.style.color=s:n.style.removeProperty("color")}}const lt="tm_mode",ct="tm_mode",ut="theme",mt="data-mode",ft="data-theme",Gr="dark";function pt(e){var o,s;if(((s=(o=globalThis.process)==null?void 0:o.env)==null?void 0:s.NODE_ENV)==="production"||typeof document>"u")return;const r=document.documentElement,n={"data-mode":r.getAttribute(mt),"data-theme":r.getAttribute(ft),darkClass:r.classList.contains(Gr),"--background":getComputedStyle(r).getPropertyValue("--background"),"--tm-primary":getComputedStyle(r).getPropertyValue("--tm-primary")};console.log("[theme-switch]",e,n)}function Xr(e){var n;if(typeof document>"u")return;const r=`; ${document.cookie}`.split(`; ${e}=`);if(r.length===2)return(n=r.pop())==null?void 0:n.split(";")[0]}function _e(){var n,o;if(typeof document>"u")return"day";const e=document.documentElement.getAttribute(mt);if(e==="day"||e==="night")return e;const t=document.documentElement.getAttribute(ft);if(t==="day"||t==="night")return t;try{const s=window.localStorage.getItem(ct);if(s==="day"||s==="night")return s;const i=window.localStorage.getItem(ut);if(i==="dark")return"night";if(i==="light")return"day"}catch{}const r=Xr(lt);return r==="day"||r==="night"?r:typeof window<"u"&&((o=(n=window.matchMedia)==null?void 0:n.call(window,"(prefers-color-scheme: dark)"))==null?void 0:o.matches)?"night":"day"}function Ye(e){dt(e);try{window.localStorage.setItem(ct,e),window.localStorage.setItem(ut,e==="night"?"dark":"light")}catch{}const t=new Date;t.setFullYear(t.getFullYear()+1),document.cookie=`${lt}=${e};expires=${t.toUTCString()};path=/;SameSite=Lax`,pt(`persist:${e}`)}const Ur=({className:e,size:t="md",variant:r="default"})=>{const[n,o]=y.useState(()=>_e());y.useEffect(()=>{const i=_e();o(i),Ye(i),pt(`initial:${i}`)},[]);const s=()=>{o(i=>{const d=i==="night"?"day":"night";return Ye(d),d})};return a.jsx(O,{onClick:s,variant:r,size:t==="sm"?"sm":t==="lg"?"lg":"default",className:l(t==="sm"?"h-8 w-8":t==="lg"?"h-12 w-12":"h-10 w-10",e),"aria-label":`Switch to ${n==="night"?"day":"night"} theme`,type:"button",children:n==="night"?a.jsx(C.Sun,{className:"h-4 w-4"}):a.jsx(C.Moon,{className:"h-4 w-4"})})},W=({className:e,children:t,as:r,level:n=1})=>{const o=r||`h${n}`,s={1:"text-4xl font-bold tracking-tight",2:"text-3xl font-bold tracking-tight",3:"text-2xl font-bold tracking-tight",4:"text-xl font-semibold tracking-tight",5:"text-lg font-semibold tracking-tight",6:"text-base font-semibold tracking-tight"};return a.jsx(o,{className:l(s[n],e),children:t})},N=({className:e,children:t,size:r="base",weight:n="normal",color:o="default"})=>{const s={xs:"text-xs",sm:"text-sm",base:"text-base",lg:"text-lg",xl:"text-xl"},i={normal:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold"},d={default:"text-foreground",muted:"text-muted-foreground",primary:"text-primary",destructive:"text-destructive"};return a.jsx("span",{className:l(s[r],i[n],d[o],e),children:t})},Qr=({className:e,children:t,...r})=>a.jsx("p",{className:l("leading-7 [&:not(:first-child)]:mt-6",e),children:a.jsx(N,{...r,children:t})}),Jr=({className:e,children:t})=>a.jsx("code",{className:l("relative rounded bg-muted px-[0.3rem] py-[0.2rem] font-mono text-sm font-semibold",e),children:t}),Kr=({className:e,children:t})=>a.jsx("blockquote",{className:l("mt-6 border-l-2 pl-6 italic",e),children:t}),ht=z.cva("flex",{variants:{direction:{row:"flex-row","row-reverse":"flex-row-reverse",column:"flex-col","column-reverse":"flex-col-reverse"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap","wrap-reverse":"flex-wrap-reverse"},justify:{start:"justify-start",end:"justify-end",center:"justify-center",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},align:{start:"items-start",end:"items-end",center:"items-center",baseline:"items-baseline",stretch:"items-stretch"},gap:{0:"gap-0",1:"gap-1",2:"gap-2",3:"gap-3",4:"gap-4",5:"gap-5",6:"gap-6",8:"gap-8",10:"gap-10",12:"gap-12",16:"gap-16",20:"gap-20",24:"gap-24"}},defaultVariants:{direction:"row",wrap:"nowrap",justify:"start",align:"start",gap:0}}),gt=u.forwardRef(({className:e,direction:t,wrap:r,justify:n,align:o,gap:s,...i},d)=>a.jsx("div",{ref:d,className:l(ht({direction:t,wrap:r,justify:n,align:o,gap:s,className:e})),...i}));gt.displayName="Flex";const xt=z.cva("grid",{variants:{cols:{1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6",12:"grid-cols-12",none:"grid-cols-none"},rows:{1:"grid-rows-1",2:"grid-rows-2",3:"grid-rows-3",4:"grid-rows-4",5:"grid-rows-5",6:"grid-rows-6",none:"grid-rows-none"},gap:{0:"gap-0",1:"gap-1",2:"gap-2",3:"gap-3",4:"gap-4",5:"gap-5",6:"gap-6",8:"gap-8",10:"gap-10",12:"gap-12",16:"gap-16",20:"gap-20",24:"gap-24"},flow:{row:"grid-flow-row",col:"grid-flow-col",dense:"grid-flow-dense","row-dense":"grid-flow-row-dense","col-dense":"grid-flow-col-dense"}},defaultVariants:{cols:1,rows:"none",gap:0,flow:"row"}}),bt=u.forwardRef(({className:e,cols:t,rows:r,gap:n,flow:o,...s},i)=>a.jsx("div",{ref:i,className:l(xt({cols:t,rows:r,gap:n,flow:o,className:e})),...s}));bt.displayName="Grid";const wt=z.cva("flex flex-col",{variants:{spacing:{0:"space-y-0",1:"space-y-1",2:"space-y-2",3:"space-y-3",4:"space-y-4",5:"space-y-5",6:"space-y-6",8:"space-y-8",10:"space-y-10",12:"space-y-12",16:"space-y-16",20:"space-y-20",24:"space-y-24"},align:{start:"items-start",end:"items-end",center:"items-center",stretch:"items-stretch"},justify:{start:"justify-start",end:"justify-end",center:"justify-center",between:"justify-between",around:"justify-around"}},defaultVariants:{spacing:4,align:"stretch",justify:"start"}}),yt=u.forwardRef(({className:e,spacing:t,align:r,justify:n,...o},s)=>a.jsx("div",{ref:s,className:l(wt({spacing:t,align:r,justify:n,className:e})),...o}));yt.displayName="Stack";const vt=z.cva("mx-auto px-4",{variants:{size:{sm:"max-w-sm",md:"max-w-md",lg:"max-w-lg",xl:"max-w-xl","2xl":"max-w-2xl","3xl":"max-w-3xl","4xl":"max-w-4xl","5xl":"max-w-5xl","6xl":"max-w-6xl","7xl":"max-w-7xl",full:"max-w-full"},padding:{none:"px-0",sm:"px-2",md:"px-4",lg:"px-6",xl:"px-8"}},defaultVariants:{size:"7xl",padding:"md"}}),jt=u.forwardRef(({className:e,size:t,padding:r,...n},o)=>a.jsx("div",{ref:o,className:l(vt({size:t,padding:r,className:e})),...n}));jt.displayName="Container";const Zr=({className:e,children:t,padding:r="md",background:n="default",as:o="section"})=>{const s={none:"",sm:"py-4",md:"py-8",lg:"py-12",xl:"py-16"},i={default:"",muted:"bg-muted",card:"bg-card"};return a.jsx(o,{className:l("w-full",s[r],i[n],e),children:t})},ea=({dayLabel:e,nightLabel:t,dayDescription:r,nightDescription:n,className:o})=>{if(!e||e.trim()==="")throw new Error('ModeHero: "dayLabel" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('ModeHero: "nightLabel" prop is required and cannot be empty');if(!r||r.trim()==="")throw new Error('ModeHero: "dayDescription" prop is required and cannot be empty');if(!n||n.trim()==="")throw new Error('ModeHero: "nightDescription" prop is required and cannot be empty');return a.jsx("div",{className:l("bg-gradient-to-r from-blue-500 to-purple-600 text-white p-8 rounded-lg",o),children:a.jsxs("div",{className:"max-w-4xl mx-auto text-center",children:[a.jsx(W,{level:1,className:"text-4xl font-bold mb-4",children:"Tenerife Music Platform"}),a.jsx(N,{size:"xl",className:"mb-8",children:"Discover amazing music events in Tenerife"}),a.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[a.jsx(Y,{className:"bg-white/10 backdrop-blur-sm border-white/20",children:a.jsxs($,{className:"p-6",children:[a.jsx(W,{level:3,className:"text-2xl font-semibold mb-2",children:e}),a.jsx(N,{className:"text-white/80",children:r})]})}),a.jsx(Y,{className:"bg-white/10 backdrop-blur-sm border-white/20",children:a.jsxs($,{className:"p-6",children:[a.jsx(W,{level:3,className:"text-2xl font-semibold mb-2",children:t}),a.jsx(N,{className:"text-white/80",children:n})]})})]})]})})},ta=({className:e,left:t,right:r,children:n})=>a.jsxs("nav",{className:l("flex items-center justify-between w-full px-4 py-3",e),children:[t&&a.jsx("div",{className:"flex items-center",children:t}),n&&a.jsx("div",{className:"flex items-center",children:n}),r&&a.jsx("div",{className:"flex items-center",children:r})]}),ra=({className:e,left:t,right:r,children:n})=>a.jsx("footer",{className:l("w-full border-t bg-background px-4 py-6",e),children:a.jsxs("div",{className:"flex items-center justify-between w-full",children:[t&&a.jsx("div",{className:"flex items-center",children:t}),n&&a.jsx("div",{className:"flex items-center",children:n}),r&&a.jsx("div",{className:"flex items-center",children:r})]})}),Nt=M.Root,aa=M.Trigger,kt=M.Portal,na=M.Close,ke=u.forwardRef(({className:e,...t},r)=>a.jsx(M.Overlay,{ref:r,className:l("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));ke.displayName=M.Overlay.displayName;const Me=u.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(kt,{children:[a.jsx(ke,{}),a.jsxs(M.Content,{ref:n,className:l("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",e),...r,children:[t,a.jsxs(M.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[a.jsx(C.X,{className:"h-4 w-4"}),a.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Me.displayName=M.Content.displayName;const Ce=({className:e,...t})=>a.jsx("div",{className:l("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});Ce.displayName="ModalHeader";const Se=({className:e,...t})=>a.jsx("div",{className:l("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});Se.displayName="ModalFooter";const Ee=u.forwardRef(({className:e,...t},r)=>a.jsx(M.Title,{ref:r,className:l("text-lg font-semibold leading-none tracking-tight",e),...t}));Ee.displayName=M.Title.displayName;const De=u.forwardRef(({className:e,...t},r)=>a.jsx(M.Description,{ref:r,className:l("text-sm text-muted-foreground",e),...t}));De.displayName=M.Description.displayName;function Mt({isOpen:e,onClose:t,onConfirm:r,title:n,description:o,confirmText:s,cancelText:i,loadingText:d,variant:c="default",isLoading:m=!1}){if(!n||n.trim()==="")throw new Error('ConfirmDialog: "title" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('ConfirmDialog: "description" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('ConfirmDialog: "confirmText" prop is required and cannot be empty');if(!i||i.trim()==="")throw new Error('ConfirmDialog: "cancelText" prop is required and cannot be empty');const f=()=>{r(),t()};return a.jsx(Nt,{open:e,onOpenChange:t,children:a.jsxs(Me,{children:[a.jsxs(Ce,{children:[a.jsx(Ee,{children:n}),a.jsx(De,{children:o})]}),a.jsxs(Se,{children:[a.jsx(O,{variant:"outline",onClick:t,disabled:m,children:i}),a.jsx(O,{variant:c,onClick:f,disabled:m,children:m&&d||s})]})]})})}function oa(){const[e,t]=u.useState({isOpen:!1}),r=u.useCallback(s=>{t({isOpen:!0,...s})},[]),n=u.useCallback(()=>{t({isOpen:!1})},[]),o=u.useMemo(()=>a.jsx(Mt,{isOpen:e.isOpen,onClose:n,onConfirm:e.onConfirm||(()=>{}),title:e.title||"",description:e.description||"",confirmText:e.confirmText||"",cancelText:e.cancelText||"",loadingText:e.loadingText,variant:e.variant}),[e,n]);return{showConfirm:r,hideConfirm:n,ConfirmDialog:o}}function sa(e=!1){const[t,r]=y.useState({isOpen:e,data:void 0}),n=y.useCallback(i=>{r({isOpen:!0,data:i})},[]),o=y.useCallback(()=>{r(i=>({...i,isOpen:!1}))},[]),s=y.useCallback(()=>{r(i=>({...i,isOpen:!i.isOpen}))},[]);return{isOpen:t.isOpen,data:t.data,open:n,close:o,toggle:s}}function Ct(){const[e,t]=y.useState({}),r=y.useCallback((d,c)=>{t(m=>({...m,[d]:{isOpen:!0,data:c}}))},[]),n=y.useCallback(d=>{t(c=>({...c,[d]:{isOpen:!1,data:void 0}}))},[]),o=y.useCallback(d=>{t(c=>{var m,f;return{...c,[d]:{isOpen:!((m=c[d])!=null&&m.isOpen),data:(f=c[d])==null?void 0:f.data}}})},[]),s=y.useCallback(d=>{var c;return((c=e[d])==null?void 0:c.isOpen)||!1},[e]),i=y.useCallback(d=>{var c;return(c=e[d])==null?void 0:c.data},[e]);return{openModal:r,closeModal:n,toggleModal:o,isModalOpen:s,getModalData:i}}const St=y.createContext(void 0);function ia({children:e}){const t=Ct();return a.jsx(St.Provider,{value:t,children:e})}function Et(){const e=y.useContext(St);if(e===void 0)throw new Error("useModalContext must be used within a ModalProvider");return e}function da(e,t){return function(n){const{openModal:o,closeModal:s,toggleModal:i,isModalOpen:d,getModalData:c}=Et(),m={[`${t}Open`]:()=>o(t),[`${t}Close`]:()=>s(t),[`${t}Toggle`]:()=>i(t),[`is${t}Open`]:d(t),[`${t}Data`]:c(t)};return a.jsx(e,{...n,...m})}}function la(e,t){if(e==null)return{};var r={},n=Object.keys(e),o,s;for(s=0;s<n.length;s++)o=n[s],!(t.indexOf(o)>=0)&&(r[o]=e[o]);return r}var ca=["color"],ua=y.forwardRef(function(e,t){var r=e.color,n=r===void 0?"currentColor":r,o=la(e,ca);return y.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),y.createElement("path",{d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:n,fillRule:"evenodd",clipRule:"evenodd"}))});const ma=M.Root,fa=M.Portal,Dt=u.forwardRef(({className:e,...t},r)=>a.jsx(M.Overlay,{ref:r,className:l("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));Dt.displayName=M.Overlay.displayName;const Tt=u.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(fa,{children:[a.jsx(Dt,{}),a.jsxs(M.Content,{ref:n,className:l("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",e),...r,children:[t,a.jsxs(M.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[a.jsx(ua,{className:"h-4 w-4"}),a.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Tt.displayName=M.Content.displayName;const Pt=({className:e,...t})=>a.jsx("div",{className:l("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});Pt.displayName="DialogHeader";const qt=u.forwardRef(({className:e,...t},r)=>a.jsx(M.Title,{ref:r,className:l("text-lg font-semibold leading-none tracking-tight",e),...t}));qt.displayName=M.Title.displayName;const Rt=u.forwardRef(({className:e,...t},r)=>a.jsx(M.Description,{ref:r,className:l("text-sm text-muted-foreground",e),...t}));Rt.displayName=M.Description.displayName;const pa=({isOpen:e,onClose:t,title:r,description:n,children:o,className:s})=>a.jsx(ma,{open:e,onOpenChange:i=>!i&&t(),children:a.jsxs(Tt,{className:l("max-w-md",s),children:[(r||n)&&a.jsxs(Pt,{children:[r&&a.jsx(qt,{children:r}),n&&a.jsx(Rt,{children:n})]}),o]})}),ha=({isOpen:e,onClose:t,title:r,children:n,className:o})=>e?a.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center",children:[a.jsx("div",{className:"fixed inset-0 bg-black/50",onClick:t}),a.jsxs("div",{className:l("relative bg-card border rounded-lg shadow-lg max-w-md w-full mx-4",o),children:[r&&a.jsx("div",{className:"p-6 border-b",children:a.jsx("h2",{className:"text-lg font-semibold",children:r})}),a.jsx("div",{className:"p-6",children:n})]})]}):null,ga=k.Root,xa=k.Trigger,ba=k.Group,wa=k.Portal,ya=k.Sub,va=k.RadioGroup,Ot=u.forwardRef(({className:e,inset:t,children:r,...n},o)=>a.jsxs(k.SubTrigger,{ref:o,className:l("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",t&&"pl-8",e),...n,children:[r,a.jsx(C.ChevronRight,{className:"ml-auto h-4 w-4"})]}));Ot.displayName=k.SubTrigger.displayName;const Ft=u.forwardRef(({className:e,...t},r)=>a.jsx(k.SubContent,{ref:r,className:l("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...t}));Ft.displayName=k.SubContent.displayName;const Vt=u.forwardRef(({className:e,sideOffset:t=4,...r},n)=>a.jsx(k.Portal,{children:a.jsx(k.Content,{ref:n,sideOffset:t,className:l("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...r})}));Vt.displayName=k.Content.displayName;const Wt=u.forwardRef(({className:e,inset:t,...r},n)=>a.jsx(k.Item,{ref:n,className:l("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",e),...r}));Wt.displayName=k.Item.displayName;const zt=u.forwardRef(({className:e,children:t,checked:r,...n},o)=>a.jsxs(k.CheckboxItem,{ref:o,className:l("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),checked:r,...n,children:[a.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:a.jsx(k.ItemIndicator,{children:a.jsx(C.Check,{className:"h-4 w-4"})})}),t]}));zt.displayName=k.CheckboxItem.displayName;const It=u.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(k.RadioItem,{ref:n,className:l("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[a.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:a.jsx(k.ItemIndicator,{children:a.jsx(C.Circle,{className:"h-2 w-2 fill-current"})})}),t]}));It.displayName=k.RadioItem.displayName;const Lt=u.forwardRef(({className:e,inset:t,...r},n)=>a.jsx(k.Label,{ref:n,className:l("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",e),...r}));Lt.displayName=k.Label.displayName;const Bt=u.forwardRef(({className:e,...t},r)=>a.jsx(k.Separator,{ref:r,className:l("-mx-1 my-1 h-px bg-muted",e),...t}));Bt.displayName=k.Separator.displayName;const _t=({className:e,...t})=>a.jsx("span",{className:l("ml-auto text-xs tracking-widest opacity-60",e),...t});_t.displayName="DropdownMenuShortcut";const Yt=u.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(F.Root,{ref:n,className:l("relative z-10 flex max-w-max flex-1 items-center justify-center",e),...r,children:[t,a.jsx(Te,{})]}));Yt.displayName=F.Root.displayName;const $t=u.forwardRef(({className:e,...t},r)=>a.jsx(F.List,{ref:r,className:l("group flex flex-1 list-none items-center justify-center space-x-1",e),...t}));$t.displayName=F.List.displayName;const ja=F.Item,At=z.cva("group inline-flex h-10 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[active]:bg-accent/50 data-[state=open]:bg-accent/50"),Ht=u.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(F.Trigger,{ref:n,className:l(At(),"group",e),...r,children:[t," ",a.jsx(C.ChevronDown,{className:"relative top-[1px] ml-1 h-3 w-3 transition duration-200 group-data-[state=open]:rotate-180","aria-hidden":"true"})]}));Ht.displayName=F.Trigger.displayName;const Gt=u.forwardRef(({className:e,...t},r)=>a.jsx(F.Content,{ref:r,className:l("left-0 top-0 w-full data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 md:absolute md:w-auto",e),...t}));Gt.displayName=F.Content.displayName;const Na=F.Link,Te=u.forwardRef(({className:e,...t},r)=>a.jsx("div",{className:l("absolute left-0 top-full flex justify-center"),children:a.jsx(F.Viewport,{className:l("origin-top-center relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 md:w-[var(--radix-navigation-menu-viewport-width)]",e),ref:r,...t})}));Te.displayName=F.Viewport.displayName;const Xt=u.forwardRef(({className:e,...t},r)=>a.jsx(F.Indicator,{ref:r,className:l("top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52",e),...t,children:a.jsx("div",{className:"relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md"})}));Xt.displayName=F.Indicator.displayName;const ka=ae.Root,Ut=u.forwardRef(({className:e,...t},r)=>a.jsx(ae.List,{ref:r,className:l("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",e),...t}));Ut.displayName=ae.List.displayName;const Qt=u.forwardRef(({className:e,...t},r)=>a.jsx(ae.Trigger,{ref:r,className:l("inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",e),...t}));Qt.displayName=ae.Trigger.displayName;const Jt=u.forwardRef(({className:e,...t},r)=>a.jsx(ae.Content,{ref:r,className:l("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));Jt.displayName=ae.Content.displayName;function ge({value:e,onChange:t,onClear:r,placeholder:n,showClearButton:o=!0,debounceMs:s=300,className:i,id:d,name:c,...m}){if(!n||n.trim()==="")throw new Error('SearchInput: "placeholder" prop is required and cannot be empty');const f=d||u.useId(),h=c||`search-input-${f}`,[w,p]=u.useState(e),g=u.useRef(null);u.useEffect(()=>{p(e)},[e]);const x=D=>{const b=D.target.value;p(b),g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{t(b)},s)},S=()=>{p(""),t(""),r==null||r()};return u.useEffect(()=>()=>{g.current&&clearTimeout(g.current)},[]),a.jsxs("div",{className:l("relative",i),children:[a.jsx(C.Search,{className:"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),a.jsx(de,{...m,id:f,name:h,value:w,onChange:x,placeholder:n,className:"pl-10 pr-10"}),o&&w&&a.jsx(O,{type:"button",variant:"ghost",size:"icon",className:"absolute right-1 top-1/2 h-6 w-6 -translate-y-1/2",onClick:S,children:a.jsx(C.X,{className:"h-3 w-3"})})]})}function Ma(e=""){const[t,r]=u.useState(e),[n,o]=u.useState(e);u.useEffect(()=>{const i=setTimeout(()=>{o(t)},300);return()=>clearTimeout(i)},[t]);const s=u.useCallback(()=>{r(""),o("")},[]);return{search:t,debouncedSearch:n,setSearch:r,clearSearch:s}}const Kt=E.Root,Ca=E.Group,Zt=E.Value,Pe=u.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(E.Trigger,{ref:n,className:l("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...r,children:[t,a.jsx(E.Icon,{asChild:!0,children:a.jsx(C.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));Pe.displayName=E.Trigger.displayName;const qe=u.forwardRef(({className:e,...t},r)=>a.jsx(E.ScrollUpButton,{ref:r,className:l("flex cursor-default items-center justify-center py-1",e),...t,children:a.jsx(C.ChevronUp,{className:"h-4 w-4"})}));qe.displayName=E.ScrollUpButton.displayName;const Re=u.forwardRef(({className:e,...t},r)=>a.jsx(E.ScrollDownButton,{ref:r,className:l("flex cursor-default items-center justify-center py-1",e),...t,children:a.jsx(C.ChevronDown,{className:"h-4 w-4"})}));Re.displayName=E.ScrollDownButton.displayName;const Oe=u.forwardRef(({className:e,children:t,position:r="popper",...n},o)=>a.jsx(E.Portal,{children:a.jsxs(E.Content,{ref:o,className:l("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:r,...n,children:[a.jsx(qe,{}),a.jsx(E.Viewport,{className:l("p-1",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),a.jsx(Re,{})]})}));Oe.displayName=E.Content.displayName;const er=u.forwardRef(({className:e,...t},r)=>a.jsx(E.Label,{ref:r,className:l("py-1.5 pl-8 pr-2 text-sm font-semibold",e),...t}));er.displayName=E.Label.displayName;const Fe=u.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(E.Item,{ref:n,className:l("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[a.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:a.jsx(E.ItemIndicator,{children:a.jsx(C.Check,{className:"h-4 w-4"})})}),a.jsx(E.ItemText,{children:t})]}));Fe.displayName=E.Item.displayName;const tr=u.forwardRef(({className:e,...t},r)=>a.jsx(E.Separator,{ref:r,className:l("-mx-1 my-1 h-px bg-muted",e),...t}));tr.displayName=E.Separator.displayName;function ue({value:e,onValueChange:t,options:r,placeholder:n,label:o,className:s}){if(!n||n.trim()==="")throw new Error('FilterSelect: "placeholder" prop is required and cannot be empty');const i=r.filter(d=>d.value!==""&&d.value!=null);return a.jsxs("div",{className:l("space-y-2",s),children:[o&&a.jsx("label",{className:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:o}),a.jsxs(Kt,{value:e||void 0,onValueChange:t,children:[a.jsx(Pe,{children:a.jsx(Zt,{placeholder:n})}),a.jsx(Oe,{children:i.map(d=>!d.value||d.value===""?null:a.jsx(Fe,{value:d.value,children:a.jsxs("div",{className:"flex items-center justify-between w-full",children:[a.jsx("span",{children:d.label}),d.count!==void 0&&a.jsxs("span",{className:"text-xs text-muted-foreground ml-2",children:["(",d.count,")"]})]})},d.value))})]})]})}function I(e){const t=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&t==="[object Date]"?new e.constructor(+e):typeof e=="number"||t==="[object Number]"||typeof e=="string"||t==="[object String]"?new Date(e):new Date(NaN)}function re(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}const rr=6048e5,Sa=864e5;let Ea={};function xe(){return Ea}function me(e,t){var d,c,m,f;const r=xe(),n=(t==null?void 0:t.weekStartsOn)??((c=(d=t==null?void 0:t.locale)==null?void 0:d.options)==null?void 0:c.weekStartsOn)??r.weekStartsOn??((f=(m=r.locale)==null?void 0:m.options)==null?void 0:f.weekStartsOn)??0,o=I(e),s=o.getDay(),i=(s<n?7:0)+s-n;return o.setDate(o.getDate()-i),o.setHours(0,0,0,0),o}function he(e){return me(e,{weekStartsOn:1})}function ar(e){const t=I(e),r=t.getFullYear(),n=re(e,0);n.setFullYear(r+1,0,4),n.setHours(0,0,0,0);const o=he(n),s=re(e,0);s.setFullYear(r,0,4),s.setHours(0,0,0,0);const i=he(s);return t.getTime()>=o.getTime()?r+1:t.getTime()>=i.getTime()?r:r-1}function $e(e){const t=I(e);return t.setHours(0,0,0,0),t}function Ae(e){const t=I(e),r=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return r.setUTCFullYear(t.getFullYear()),+e-+r}function Da(e,t){const r=$e(e),n=$e(t),o=+r-Ae(r),s=+n-Ae(n);return Math.round((o-s)/Sa)}function Ta(e){const t=ar(e),r=re(e,0);return r.setFullYear(t,0,4),r.setHours(0,0,0,0),he(r)}function Pa(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function qa(e){if(!Pa(e)&&typeof e!="number")return!1;const t=I(e);return!isNaN(Number(t))}function Ra(e){const t=I(e),r=re(e,0);return r.setFullYear(t.getFullYear(),0,1),r.setHours(0,0,0,0),r}const Oa={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Fa=(e,t,r)=>{let n;const o=Oa[e];return typeof o=="string"?n=o:t===1?n=o.one:n=o.other.replace("{{count}}",t.toString()),r!=null&&r.addSuffix?r.comparison&&r.comparison>0?"in "+n:n+" ago":n};function je(e){return(t={})=>{const r=t.width?String(t.width):e.defaultWidth;return e.formats[r]||e.formats[e.defaultWidth]}}const Va={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Wa={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},za={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Ia={date:je({formats:Va,defaultWidth:"full"}),time:je({formats:Wa,defaultWidth:"full"}),dateTime:je({formats:za,defaultWidth:"full"})},La={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Ba=(e,t,r,n)=>La[e];function le(e){return(t,r)=>{const n=r!=null&&r.context?String(r.context):"standalone";let o;if(n==="formatting"&&e.formattingValues){const i=e.defaultFormattingWidth||e.defaultWidth,d=r!=null&&r.width?String(r.width):i;o=e.formattingValues[d]||e.formattingValues[i]}else{const i=e.defaultWidth,d=r!=null&&r.width?String(r.width):e.defaultWidth;o=e.values[d]||e.values[i]}const s=e.argumentCallback?e.argumentCallback(t):t;return o[s]}}const _a={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Ya={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},$a={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Aa={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Ha={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Ga={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Xa=(e,t)=>{const r=Number(e),n=r%100;if(n>20||n<10)switch(n%10){case 1:return r+"st";case 2:return r+"nd";case 3:return r+"rd"}return r+"th"},Ua={ordinalNumber:Xa,era:le({values:_a,defaultWidth:"wide"}),quarter:le({values:Ya,defaultWidth:"wide",argumentCallback:e=>e-1}),month:le({values:$a,defaultWidth:"wide"}),day:le({values:Aa,defaultWidth:"wide"}),dayPeriod:le({values:Ha,defaultWidth:"wide",formattingValues:Ga,defaultFormattingWidth:"wide"})};function ce(e){return(t,r={})=>{const n=r.width,o=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth],s=t.match(o);if(!s)return null;const i=s[0],d=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(d)?Ja(d,h=>h.test(i)):Qa(d,h=>h.test(i));let m;m=e.valueCallback?e.valueCallback(c):c,m=r.valueCallback?r.valueCallback(m):m;const f=t.slice(i.length);return{value:m,rest:f}}}function Qa(e,t){for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t(e[r]))return r}function Ja(e,t){for(let r=0;r<e.length;r++)if(t(e[r]))return r}function Ka(e){return(t,r={})=>{const n=t.match(e.matchPattern);if(!n)return null;const o=n[0],s=t.match(e.parsePattern);if(!s)return null;let i=e.valueCallback?e.valueCallback(s[0]):s[0];i=r.valueCallback?r.valueCallback(i):i;const d=t.slice(o.length);return{value:i,rest:d}}}const Za=/^(\d+)(th|st|nd|rd)?/i,en=/\d+/i,tn={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},rn={any:[/^b/i,/^(a|c)/i]},an={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},nn={any:[/1/i,/2/i,/3/i,/4/i]},on={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},sn={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},dn={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},ln={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},cn={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},un={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},mn={ordinalNumber:Ka({matchPattern:Za,parsePattern:en,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:tn,defaultMatchWidth:"wide",parsePatterns:rn,defaultParseWidth:"any"}),quarter:ce({matchPatterns:an,defaultMatchWidth:"wide",parsePatterns:nn,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:on,defaultMatchWidth:"wide",parsePatterns:sn,defaultParseWidth:"any"}),day:ce({matchPatterns:dn,defaultMatchWidth:"wide",parsePatterns:ln,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:cn,defaultMatchWidth:"any",parsePatterns:un,defaultParseWidth:"any"})},fn={code:"en-US",formatDistance:Fa,formatLong:Ia,formatRelative:Ba,localize:Ua,match:mn,options:{weekStartsOn:0,firstWeekContainsDate:1}};function pn(e){const t=I(e);return Da(t,Ra(t))+1}function hn(e){const t=I(e),r=+he(t)-+Ta(t);return Math.round(r/rr)+1}function nr(e,t){var f,h,w,p;const r=I(e),n=r.getFullYear(),o=xe(),s=(t==null?void 0:t.firstWeekContainsDate)??((h=(f=t==null?void 0:t.locale)==null?void 0:f.options)==null?void 0:h.firstWeekContainsDate)??o.firstWeekContainsDate??((p=(w=o.locale)==null?void 0:w.options)==null?void 0:p.firstWeekContainsDate)??1,i=re(e,0);i.setFullYear(n+1,0,s),i.setHours(0,0,0,0);const d=me(i,t),c=re(e,0);c.setFullYear(n,0,s),c.setHours(0,0,0,0);const m=me(c,t);return r.getTime()>=d.getTime()?n+1:r.getTime()>=m.getTime()?n:n-1}function gn(e,t){var d,c,m,f;const r=xe(),n=(t==null?void 0:t.firstWeekContainsDate)??((c=(d=t==null?void 0:t.locale)==null?void 0:d.options)==null?void 0:c.firstWeekContainsDate)??r.firstWeekContainsDate??((f=(m=r.locale)==null?void 0:m.options)==null?void 0:f.firstWeekContainsDate)??1,o=nr(e,t),s=re(e,0);return s.setFullYear(o,0,n),s.setHours(0,0,0,0),me(s,t)}function xn(e,t){const r=I(e),n=+me(r,t)-+gn(r,t);return Math.round(n/rr)+1}function j(e,t){const r=e<0?"-":"",n=Math.abs(e).toString().padStart(t,"0");return r+n}const J={y(e,t){const r=e.getFullYear(),n=r>0?r:1-r;return j(t==="yy"?n%100:n,t.length)},M(e,t){const r=e.getMonth();return t==="M"?String(r+1):j(r+1,2)},d(e,t){return j(e.getDate(),t.length)},a(e,t){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.toUpperCase();case"aaa":return r;case"aaaaa":return r[0];case"aaaa":default:return r==="am"?"a.m.":"p.m."}},h(e,t){return j(e.getHours()%12||12,t.length)},H(e,t){return j(e.getHours(),t.length)},m(e,t){return j(e.getMinutes(),t.length)},s(e,t){return j(e.getSeconds(),t.length)},S(e,t){const r=t.length,n=e.getMilliseconds(),o=Math.trunc(n*Math.pow(10,r-3));return j(o,t.length)}},oe={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},He={G:function(e,t,r){const n=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return r.era(n,{width:"abbreviated"});case"GGGGG":return r.era(n,{width:"narrow"});case"GGGG":default:return r.era(n,{width:"wide"})}},y:function(e,t,r){if(t==="yo"){const n=e.getFullYear(),o=n>0?n:1-n;return r.ordinalNumber(o,{unit:"year"})}return J.y(e,t)},Y:function(e,t,r,n){const o=nr(e,n),s=o>0?o:1-o;if(t==="YY"){const i=s%100;return j(i,2)}return t==="Yo"?r.ordinalNumber(s,{unit:"year"}):j(s,t.length)},R:function(e,t){const r=ar(e);return j(r,t.length)},u:function(e,t){const r=e.getFullYear();return j(r,t.length)},Q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(n);case"QQ":return j(n,2);case"Qo":return r.ordinalNumber(n,{unit:"quarter"});case"QQQ":return r.quarter(n,{width:"abbreviated",context:"formatting"});case"QQQQQ":return r.quarter(n,{width:"narrow",context:"formatting"});case"QQQQ":default:return r.quarter(n,{width:"wide",context:"formatting"})}},q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(n);case"qq":return j(n,2);case"qo":return r.ordinalNumber(n,{unit:"quarter"});case"qqq":return r.quarter(n,{width:"abbreviated",context:"standalone"});case"qqqqq":return r.quarter(n,{width:"narrow",context:"standalone"});case"qqqq":default:return r.quarter(n,{width:"wide",context:"standalone"})}},M:function(e,t,r){const n=e.getMonth();switch(t){case"M":case"MM":return J.M(e,t);case"Mo":return r.ordinalNumber(n+1,{unit:"month"});case"MMM":return r.month(n,{width:"abbreviated",context:"formatting"});case"MMMMM":return r.month(n,{width:"narrow",context:"formatting"});case"MMMM":default:return r.month(n,{width:"wide",context:"formatting"})}},L:function(e,t,r){const n=e.getMonth();switch(t){case"L":return String(n+1);case"LL":return j(n+1,2);case"Lo":return r.ordinalNumber(n+1,{unit:"month"});case"LLL":return r.month(n,{width:"abbreviated",context:"standalone"});case"LLLLL":return r.month(n,{width:"narrow",context:"standalone"});case"LLLL":default:return r.month(n,{width:"wide",context:"standalone"})}},w:function(e,t,r,n){const o=xn(e,n);return t==="wo"?r.ordinalNumber(o,{unit:"week"}):j(o,t.length)},I:function(e,t,r){const n=hn(e);return t==="Io"?r.ordinalNumber(n,{unit:"week"}):j(n,t.length)},d:function(e,t,r){return t==="do"?r.ordinalNumber(e.getDate(),{unit:"date"}):J.d(e,t)},D:function(e,t,r){const n=pn(e);return t==="Do"?r.ordinalNumber(n,{unit:"dayOfYear"}):j(n,t.length)},E:function(e,t,r){const n=e.getDay();switch(t){case"E":case"EE":case"EEE":return r.day(n,{width:"abbreviated",context:"formatting"});case"EEEEE":return r.day(n,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(n,{width:"short",context:"formatting"});case"EEEE":default:return r.day(n,{width:"wide",context:"formatting"})}},e:function(e,t,r,n){const o=e.getDay(),s=(o-n.weekStartsOn+8)%7||7;switch(t){case"e":return String(s);case"ee":return j(s,2);case"eo":return r.ordinalNumber(s,{unit:"day"});case"eee":return r.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return r.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(o,{width:"short",context:"formatting"});case"eeee":default:return r.day(o,{width:"wide",context:"formatting"})}},c:function(e,t,r,n){const o=e.getDay(),s=(o-n.weekStartsOn+8)%7||7;switch(t){case"c":return String(s);case"cc":return j(s,t.length);case"co":return r.ordinalNumber(s,{unit:"day"});case"ccc":return r.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return r.day(o,{width:"narrow",context:"standalone"});case"cccccc":return r.day(o,{width:"short",context:"standalone"});case"cccc":default:return r.day(o,{width:"wide",context:"standalone"})}},i:function(e,t,r){const n=e.getDay(),o=n===0?7:n;switch(t){case"i":return String(o);case"ii":return j(o,t.length);case"io":return r.ordinalNumber(o,{unit:"day"});case"iii":return r.day(n,{width:"abbreviated",context:"formatting"});case"iiiii":return r.day(n,{width:"narrow",context:"formatting"});case"iiiiii":return r.day(n,{width:"short",context:"formatting"});case"iiii":default:return r.day(n,{width:"wide",context:"formatting"})}},a:function(e,t,r){const o=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"aaa":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return r.dayPeriod(o,{width:"narrow",context:"formatting"});case"aaaa":default:return r.dayPeriod(o,{width:"wide",context:"formatting"})}},b:function(e,t,r){const n=e.getHours();let o;switch(n===12?o=oe.noon:n===0?o=oe.midnight:o=n/12>=1?"pm":"am",t){case"b":case"bb":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"bbb":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return r.dayPeriod(o,{width:"narrow",context:"formatting"});case"bbbb":default:return r.dayPeriod(o,{width:"wide",context:"formatting"})}},B:function(e,t,r){const n=e.getHours();let o;switch(n>=17?o=oe.evening:n>=12?o=oe.afternoon:n>=4?o=oe.morning:o=oe.night,t){case"B":case"BB":case"BBB":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"BBBBB":return r.dayPeriod(o,{width:"narrow",context:"formatting"});case"BBBB":default:return r.dayPeriod(o,{width:"wide",context:"formatting"})}},h:function(e,t,r){if(t==="ho"){let n=e.getHours()%12;return n===0&&(n=12),r.ordinalNumber(n,{unit:"hour"})}return J.h(e,t)},H:function(e,t,r){return t==="Ho"?r.ordinalNumber(e.getHours(),{unit:"hour"}):J.H(e,t)},K:function(e,t,r){const n=e.getHours()%12;return t==="Ko"?r.ordinalNumber(n,{unit:"hour"}):j(n,t.length)},k:function(e,t,r){let n=e.getHours();return n===0&&(n=24),t==="ko"?r.ordinalNumber(n,{unit:"hour"}):j(n,t.length)},m:function(e,t,r){return t==="mo"?r.ordinalNumber(e.getMinutes(),{unit:"minute"}):J.m(e,t)},s:function(e,t,r){return t==="so"?r.ordinalNumber(e.getSeconds(),{unit:"second"}):J.s(e,t)},S:function(e,t){return J.S(e,t)},X:function(e,t,r){const n=e.getTimezoneOffset();if(n===0)return"Z";switch(t){case"X":return Xe(n);case"XXXX":case"XX":return te(n);case"XXXXX":case"XXX":default:return te(n,":")}},x:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"x":return Xe(n);case"xxxx":case"xx":return te(n);case"xxxxx":case"xxx":default:return te(n,":")}},O:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Ge(n,":");case"OOOO":default:return"GMT"+te(n,":")}},z:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Ge(n,":");case"zzzz":default:return"GMT"+te(n,":")}},t:function(e,t,r){const n=Math.trunc(e.getTime()/1e3);return j(n,t.length)},T:function(e,t,r){const n=e.getTime();return j(n,t.length)}};function Ge(e,t=""){const r=e>0?"-":"+",n=Math.abs(e),o=Math.trunc(n/60),s=n%60;return s===0?r+String(o):r+String(o)+t+j(s,2)}function Xe(e,t){return e%60===0?(e>0?"-":"+")+j(Math.abs(e)/60,2):te(e,t)}function te(e,t=""){const r=e>0?"-":"+",n=Math.abs(e),o=j(Math.trunc(n/60),2),s=j(n%60,2);return r+o+t+s}const Ue=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},or=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},bn=(e,t)=>{const r=e.match(/(P+)(p+)?/)||[],n=r[1],o=r[2];if(!o)return Ue(e,t);let s;switch(n){case"P":s=t.dateTime({width:"short"});break;case"PP":s=t.dateTime({width:"medium"});break;case"PPP":s=t.dateTime({width:"long"});break;case"PPPP":default:s=t.dateTime({width:"full"});break}return s.replace("{{date}}",Ue(n,t)).replace("{{time}}",or(o,t))},wn={p:or,P:bn},yn=/^D+$/,vn=/^Y+$/,jn=["D","DD","YY","YYYY"];function Nn(e){return yn.test(e)}function kn(e){return vn.test(e)}function Mn(e,t,r){const n=Cn(e,t,r);if(console.warn(n),jn.includes(e))throw new RangeError(n)}function Cn(e,t,r){const n=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${n} to the input \`${r}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Sn=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,En=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Dn=/^'([^]*?)'?$/,Tn=/''/g,Pn=/[a-zA-Z]/;function Ne(e,t,r){var f,h,w,p;const n=xe(),o=n.locale??fn,s=n.firstWeekContainsDate??((h=(f=n.locale)==null?void 0:f.options)==null?void 0:h.firstWeekContainsDate)??1,i=n.weekStartsOn??((p=(w=n.locale)==null?void 0:w.options)==null?void 0:p.weekStartsOn)??0,d=I(e);if(!qa(d))throw new RangeError("Invalid time value");let c=t.match(En).map(g=>{const x=g[0];if(x==="p"||x==="P"){const S=wn[x];return S(g,o.formatLong)}return g}).join("").match(Sn).map(g=>{if(g==="''")return{isToken:!1,value:"'"};const x=g[0];if(x==="'")return{isToken:!1,value:qn(g)};if(He[x])return{isToken:!0,value:g};if(x.match(Pn))throw new RangeError("Format string contains an unescaped latin alphabet character `"+x+"`");return{isToken:!1,value:g}});o.localize.preprocessor&&(c=o.localize.preprocessor(d,c));const m={firstWeekContainsDate:s,weekStartsOn:i,locale:o};return c.map(g=>{if(!g.isToken)return g.value;const x=g.value;(kn(x)||Nn(x))&&Mn(x,t,String(e));const S=He[x[0]];return S(d,x,o.localize,m)}).join("")}function qn(e){const t=e.match(Dn);return t?t[1].replace(Tn,"'"):e}function Ve({value:e,onChange:t,placeholder:r,selectDateRangeLabel:n,clearLabel:o,closeLabel:s,className:i,disabled:d=!1}){if(!r||r.trim()==="")throw new Error('DateRangePicker: "placeholder" prop is required and cannot be empty');if(!n||n.trim()==="")throw new Error('DateRangePicker: "selectDateRangeLabel" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('DateRangePicker: "clearLabel" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('DateRangePicker: "closeLabel" prop is required and cannot be empty');const[c,m]=u.useState(!1),f=p=>p.from?p.to?`${Ne(p.from,"LLL dd, y")} - ${Ne(p.to,"LLL dd, y")}`:Ne(p.from,"LLL dd, y"):r,h=p=>{if(!p){t({from:void 0,to:void 0});return}!e.from||e.from&&e.to?t({from:p,to:void 0}):e.from&&!e.to&&(p<e.from?t({from:p,to:e.from}):t({from:e.from,to:p}),m(!1))},w=()=>{t({from:void 0,to:void 0})};return a.jsxs("div",{className:l("relative",i),children:[a.jsxs(O,{variant:"outline",className:l("w-full justify-start text-left font-normal",!e.from&&"text-muted-foreground"),onClick:()=>m(!c),disabled:d,children:[a.jsx(C.Calendar,{className:"mr-2 h-4 w-4"}),f(e)]}),c&&a.jsx("div",{className:"absolute top-full left-0 z-50 mt-1 w-full rounded-md border bg-popover p-3 shadow-lg",children:a.jsxs("div",{className:"space-y-2",children:[a.jsx("div",{className:"text-sm font-medium",children:n}),a.jsxs("div",{className:"grid grid-cols-7 gap-1 text-xs",children:[["S","M","T","W","T","F","S"].map(p=>a.jsx("div",{className:"p-2 text-center font-medium text-muted-foreground",children:p},p)),Array.from({length:35},(p,g)=>{const x=new Date;x.setDate(x.getDate()-x.getDay()+g);const S=e.from&&x.toDateString()===e.from.toDateString()||e.to&&x.toDateString()===e.to.toDateString(),D=e.from&&e.to&&x>e.from&&x<e.to;return a.jsx("button",{className:l("h-8 w-8 rounded text-sm hover:bg-accent",S&&"bg-primary text-primary-foreground",D&&"bg-accent/50"),onClick:()=>h(x),children:x.getDate()},g)})]}),a.jsxs("div",{className:"flex justify-between pt-2",children:[a.jsx(O,{variant:"outline",size:"sm",onClick:w,children:o}),a.jsx(O,{variant:"outline",size:"sm",onClick:()=>m(!1),children:s})]})]})})]})}function Rn(e={from:void 0,to:void 0}){const[t,r]=u.useState(e),n=u.useCallback(i=>{r(i)},[]),o=u.useCallback(()=>{r({from:void 0,to:void 0})},[]),s=t.from&&t.to;return{range:t,setDateRange:n,clearRange:o,isRangeComplete:s}}function sr({value:e,onChange:t,min:r,max:n,step:o,currency:s,priceRangeLabel:i,minLabel:d,maxLabel:c,anyPriceLabel:m,clearLabel:f,minAriaLabel:h,maxAriaLabel:w,className:p}){var H,ne;if(typeof r!="number"||isNaN(r))throw new Error('PriceRangeSlider: "min" prop is required and must be a number');if(typeof n!="number"||isNaN(n))throw new Error('PriceRangeSlider: "max" prop is required and must be a number');if(typeof o!="number"||isNaN(o)||o<=0)throw new Error('PriceRangeSlider: "step" prop is required and must be a positive number');if(!s||s.trim()==="")throw new Error('PriceRangeSlider: "currency" prop is required and cannot be empty');if(!i||i.trim()==="")throw new Error('PriceRangeSlider: "priceRangeLabel" prop is required and cannot be empty');if(!d||d.trim()==="")throw new Error('PriceRangeSlider: "minLabel" prop is required and cannot be empty');if(!c||c.trim()==="")throw new Error('PriceRangeSlider: "maxLabel" prop is required and cannot be empty');if(!m||m.trim()==="")throw new Error('PriceRangeSlider: "anyPriceLabel" prop is required and cannot be empty');if(!f||f.trim()==="")throw new Error('PriceRangeSlider: "clearLabel" prop is required and cannot be empty');if(!h||h.trim()==="")throw new Error('PriceRangeSlider: "minAriaLabel" prop is required and cannot be empty');if(!w||w.trim()==="")throw new Error('PriceRangeSlider: "maxAriaLabel" prop is required and cannot be empty');const g=u.useId(),x=u.useId(),[S,D]=u.useState(((H=e.min)==null?void 0:H.toString())||""),[b,v]=u.useState(((ne=e.max)==null?void 0:ne.toString())||"");u.useEffect(()=>{var q,P;D(((q=e.min)==null?void 0:q.toString())||""),v(((P=e.max)==null?void 0:P.toString())||"")},[e.min,e.max]);const L=q=>{const P=q.target.value;D(P);const T=P===""?null:Math.max(r,parseInt(P)||r),R=e.max?Math.min(n,e.max):null;T!==null&&R!==null&&T>R?t({min:T,max:T}):t({min:T,max:R})},B=q=>{const P=q.target.value;v(P);const T=P===""?null:Math.min(n,parseInt(P)||n),R=e.min?Math.max(r,e.min):null;R!==null&&T!==null&&R>T?t({min:T,max:T}):t({min:R,max:T})},U=(q,P)=>{if(q==="min"){const T=Math.max(r,Math.min(n,P)),R=e.max?Math.max(T,e.max):null;t({min:T,max:R})}else{const T=Math.max(r,Math.min(n,P)),R=e.min?Math.min(T,e.min):null;t({min:R,max:T})}},Q=()=>{D(""),v(""),t({min:null,max:null})},_=e.min||r,A=e.max||n;return a.jsxs("div",{className:l("space-y-4",p),children:[a.jsxs("div",{className:"space-y-2",children:[a.jsx(K,{children:i}),a.jsxs("div",{className:"flex items-center space-x-2",children:[a.jsxs("div",{className:"flex-1",children:[a.jsx(K,{htmlFor:g,className:"text-xs text-muted-foreground",children:d}),a.jsxs("div",{className:"relative",children:[a.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground",children:s}),a.jsx(de,{id:g,name:`min-price-${g}`,type:"number",value:S,onChange:L,placeholder:r.toString(),min:r,max:n,step:o,className:"pl-8"})]})]}),a.jsxs("div",{className:"flex-1",children:[a.jsx(K,{htmlFor:x,className:"text-xs text-muted-foreground",children:c}),a.jsxs("div",{className:"relative",children:[a.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground",children:s}),a.jsx(de,{id:x,name:`max-price-${x}`,type:"number",value:b,onChange:B,placeholder:n.toString(),min:r,max:n,step:o,className:"pl-8"})]})]})]})]}),a.jsxs("div",{className:"space-y-2",children:[a.jsxs("div",{className:"relative",children:[a.jsx("input",{type:"range",id:`${g}-slider`,name:`min-price-slider-${g}`,min:r,max:n,step:o,value:_,onChange:q=>U("min",parseInt(q.target.value)),className:"absolute w-full h-2 bg-transparent appearance-none cursor-pointer slider-thumb","aria-label":h}),a.jsx("input",{type:"range",id:`${x}-slider`,name:`max-price-slider-${x}`,min:r,max:n,step:o,value:A,onChange:q=>U("max",parseInt(q.target.value)),className:"absolute w-full h-2 bg-transparent appearance-none cursor-pointer slider-thumb","aria-label":w}),a.jsx("div",{className:"h-2 bg-muted rounded-full",children:a.jsx("div",{className:"h-2 bg-primary rounded-full",style:{left:`${(_-r)/(n-r)*100}%`,width:`${(A-_)/(n-r)*100}%`}})})]}),a.jsxs("div",{className:"flex justify-between text-xs text-muted-foreground",children:[a.jsxs("span",{children:[s,r]}),a.jsxs("span",{children:[s,n]})]})]}),a.jsxs("div",{className:"flex justify-between items-center",children:[a.jsx("span",{className:"text-sm text-muted-foreground",children:e.min!==null||e.max!==null?`${s}${e.min||r} - ${s}${e.max||n}`:m}),a.jsx("button",{type:"button",onClick:Q,className:"text-xs text-muted-foreground hover:text-foreground",children:f})]})]})}function On(e={min:null,max:null}){const[t,r]=u.useState(e),n=u.useCallback(i=>{r(i)},[]),o=u.useCallback(()=>{r({min:null,max:null})},[]),s=t.min!==null||t.max!==null;return{range:t,setPriceRange:n,clearRange:o,isRangeSet:s}}const Fn=()=>(console.warn("useFilterManager: This is a mock implementation. Use the actual hook from apps/web/src/stores/useFiltersStore"),{search:"",category:"",tags:[],dateRange:{start:null,end:null},priceRange:{min:null,max:null},sortBy:"date",sortOrder:"desc",setSearch:e=>{},setCategory:e=>{},setTags:e=>{},addTag:e=>{},removeTag:e=>{},setDateRange:(e,t)=>{},setPriceRange:(e,t)=>{},setSorting:(e,t)=>{},resetFilters:()=>{},getActiveFiltersCount:()=>0,getFilterSummary:()=>[],hasActiveFilters:!1,clearAllFilters:()=>{}});function ir({className:e,showSearch:t=!0,showCategory:r=!0,showDateRange:n=!0,showPriceRange:o=!0,showSorting:s=!0,categories:i=[],sortOptions:d,searchPlaceholder:c,filtersLabel:m,clearAllLabel:f,categoryLabel:h,allCategoriesLabel:w,dateRangeLabel:p,anyDateLabel:g,dateSelectDateRangeLabel:x,dateClearLabel:S,dateCloseLabel:D,sortByLabel:b,sortAscLabel:v,sortDescLabel:L,sortByPlaceholder:B,activeFiltersLabel:U,priceRangeLabel:Q,priceMinLabel:_,priceMaxLabel:A,priceAnyLabel:H,priceClearLabel:ne,priceMinAriaLabel:q,priceMaxAriaLabel:P,onFiltersChange:T}){if(!d||d.length===0)throw new Error('FilterBar: "sortOptions" prop is required and cannot be empty');if(!c||c.trim()==="")throw new Error('FilterBar: "searchPlaceholder" prop is required and cannot be empty');if(!m||m.trim()==="")throw new Error('FilterBar: "filtersLabel" prop is required and cannot be empty');if(!f||f.trim()==="")throw new Error('FilterBar: "clearAllLabel" prop is required and cannot be empty');if(!h||h.trim()==="")throw new Error('FilterBar: "categoryLabel" prop is required and cannot be empty');if(!w||w.trim()==="")throw new Error('FilterBar: "allCategoriesLabel" prop is required and cannot be empty');if(!p||p.trim()==="")throw new Error('FilterBar: "dateRangeLabel" prop is required and cannot be empty');if(!g||g.trim()==="")throw new Error('FilterBar: "anyDateLabel" prop is required and cannot be empty');if(!x||x.trim()==="")throw new Error('FilterBar: "dateSelectDateRangeLabel" prop is required and cannot be empty');if(!S||S.trim()==="")throw new Error('FilterBar: "dateClearLabel" prop is required and cannot be empty');if(!D||D.trim()==="")throw new Error('FilterBar: "dateCloseLabel" prop is required and cannot be empty');if(!b||b.trim()==="")throw new Error('FilterBar: "sortByLabel" prop is required and cannot be empty');if(!v||v.trim()==="")throw new Error('FilterBar: "sortAscLabel" prop is required and cannot be empty');if(!L||L.trim()==="")throw new Error('FilterBar: "sortDescLabel" prop is required and cannot be empty');if(!B||B.trim()==="")throw new Error('FilterBar: "sortByPlaceholder" prop is required and cannot be empty');if(!U||U.trim()==="")throw new Error('FilterBar: "activeFiltersLabel" prop is required and cannot be empty');if(!Q||Q.trim()==="")throw new Error('FilterBar: "priceRangeLabel" prop is required and cannot be empty');if(!_||_.trim()==="")throw new Error('FilterBar: "priceMinLabel" prop is required and cannot be empty');if(!A||A.trim()==="")throw new Error('FilterBar: "priceMaxLabel" prop is required and cannot be empty');if(!H||H.trim()==="")throw new Error('FilterBar: "priceAnyLabel" prop is required and cannot be empty');if(!ne||ne.trim()==="")throw new Error('FilterBar: "priceClearLabel" prop is required and cannot be empty');if(!q||q.trim()==="")throw new Error('FilterBar: "priceMinAriaLabel" prop is required and cannot be empty');if(!P||P.trim()==="")throw new Error('FilterBar: "priceMaxAriaLabel" prop is required and cannot be empty');const{search:R,category:be,dateRange:pe,priceRange:we,sortBy:ye,sortOrder:ve,setSearch:yr,setCategory:vr,setDateRange:jr,setPriceRange:Nr,hasActiveFilters:Le}=Fn();u.useEffect(()=>{T&&T({search:R,category:be,dateRange:pe,priceRange:we,sortBy:ye,sortOrder:ve})},[R,be,pe,we,ye,ve,T]);const kr=V=>{jr(V.from||null,V.to||null)},Mr=V=>{Nr(V.min,V.max)};return a.jsxs("div",{className:l("space-y-4",e),children:[a.jsxs("div",{className:"flex flex-col sm:flex-row gap-4",children:[t&&a.jsx("div",{className:"flex-1",children:a.jsx(ge,{value:R,onChange:yr,placeholder:c})}),Le]}),a.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4",children:[r&&i.length>0&&a.jsx(ue,{value:be,onValueChange:vr,options:i,label:h,placeholder:w}),n&&a.jsxs("div",{className:"space-y-2",children:[a.jsx("label",{className:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:p}),a.jsx(Ve,{value:{from:pe.start||void 0,to:pe.end||void 0},onChange:kr,placeholder:g,selectDateRangeLabel:x,clearLabel:S,closeLabel:D})]}),o&&a.jsx(sr,{value:we,onChange:Mr,min:0,max:500,step:10,currency:"€",priceRangeLabel:Q,minLabel:_,maxLabel:A,anyPriceLabel:H,clearLabel:ne,minAriaLabel:q,maxAriaLabel:P}),s&&a.jsxs("div",{className:"space-y-2",children:[a.jsx("label",{className:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:b}),a.jsx(ue,{value:`${ye}-${ve}`,onValueChange:V=>{const[bo,wo]=V.split("-")},options:d.map(V=>({value:`${V.value}-asc`,label:`${V.label} ${v}`})).concat(d.map(V=>({value:`${V.value}-desc`,label:`${V.label} ${L}`}))),placeholder:B})]})]}),Le]})}function Vn({className:e,...t}){return a.jsx(ir,{className:l("space-y-2",e),...t})}const Wn=({searchLabel:e,searchPlaceholder:t,searchValue:r,onSearchChange:n,dateLabel:o,datePlaceholder:s,dateSelectDateRangeLabel:i,dateClearLabel:d,dateCloseLabel:c,dateValue:m,onDateChange:f,genreLabel:h,genrePlaceholder:w,genreOptions:p,genreValue:g,onGenreChange:x,venueLabel:S,venuePlaceholder:D,venueOptions:b,venueValue:v,onVenueChange:L,className:B})=>{if(!e||e.trim()==="")throw new Error('SearchFilters: "searchLabel" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('SearchFilters: "searchPlaceholder" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('SearchFilters: "dateLabel" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('SearchFilters: "datePlaceholder" prop is required and cannot be empty');if(!i||i.trim()==="")throw new Error('SearchFilters: "dateSelectDateRangeLabel" prop is required and cannot be empty');if(!d||d.trim()==="")throw new Error('SearchFilters: "dateClearLabel" prop is required and cannot be empty');if(!c||c.trim()==="")throw new Error('SearchFilters: "dateCloseLabel" prop is required and cannot be empty');if(!h||h.trim()==="")throw new Error('SearchFilters: "genreLabel" prop is required and cannot be empty');if(!w||w.trim()==="")throw new Error('SearchFilters: "genrePlaceholder" prop is required and cannot be empty');if(!p||p.length===0)throw new Error('SearchFilters: "genreOptions" prop is required and cannot be empty');if(!S||S.trim()==="")throw new Error('SearchFilters: "venueLabel" prop is required and cannot be empty');if(!D||D.trim()==="")throw new Error('SearchFilters: "venuePlaceholder" prop is required and cannot be empty');if(!b||b.length===0)throw new Error('SearchFilters: "venueOptions" prop is required and cannot be empty');return a.jsx("div",{className:l("bg-white dark:bg-gray-800 p-6 rounded-lg shadow-lg",B),children:a.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[a.jsxs("div",{children:[a.jsx("label",{className:"block text-sm font-medium mb-2",children:e}),a.jsx(ge,{placeholder:t,value:r,onChange:n})]}),a.jsxs("div",{children:[a.jsx("label",{className:"block text-sm font-medium mb-2",children:o}),a.jsx(Ve,{value:m,onChange:f,placeholder:s,selectDateRangeLabel:i,clearLabel:d,closeLabel:c})]}),a.jsxs("div",{children:[a.jsx("label",{className:"block text-sm font-medium mb-2",children:h}),a.jsx(ue,{placeholder:w,value:g,options:p,onValueChange:x})]}),a.jsxs("div",{children:[a.jsx("label",{className:"block text-sm font-medium mb-2",children:S}),a.jsx(ue,{placeholder:D,value:v,options:b,onValueChange:L})]})]})})};function zn(){const[e,t]=y.useState([]),r=y.useCallback(i=>{const d=Math.random().toString(36).substr(2,9),c={id:d,duration:5e3,...i};return t(m=>[...m,c]),c.duration&&c.duration>0&&setTimeout(()=>{n(d)},c.duration),d},[]),n=y.useCallback(i=>{t(d=>d.filter(c=>c.id!==i))},[]),o=y.useCallback(()=>{t([])},[]),s=y.useCallback((i,d)=>{t(c=>c.map(m=>m.id===i?{...m,...d}:m))},[]);return{toasts:e,toast:r,dismiss:n,dismissAll:o,updateToast:s}}const dr=z.cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-2 overflow-hidden rounded-md border p-4 pr-6 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{type:{default:"border bg-background text-foreground",success:"border-green-200 bg-green-50 text-green-900 dark:border-green-800 dark:bg-green-950 dark:text-green-100",error:"border-red-200 bg-red-50 text-red-900 dark:border-red-800 dark:bg-red-950 dark:text-red-100",warning:"border-yellow-200 bg-yellow-50 text-yellow-900 dark:border-yellow-800 dark:bg-yellow-950 dark:text-yellow-100",info:"border-blue-200 bg-blue-50 text-blue-900 dark:border-blue-800 dark:bg-blue-950 dark:text-blue-100"}},defaultVariants:{type:"default"}}),In=z.cva("h-4 w-4 flex-shrink-0",{variants:{type:{default:"text-foreground",success:"text-green-600 dark:text-green-400",error:"text-red-600 dark:text-red-400",warning:"text-yellow-600 dark:text-yellow-400",info:"text-blue-600 dark:text-blue-400"}},defaultVariants:{type:"default"}}),Ln=e=>{switch(e){case"success":return C.CheckCircle;case"error":return C.AlertCircle;case"warning":return C.AlertTriangle;case"info":return C.Info;default:return C.Info}},We=u.forwardRef(({className:e,toast:t,onDismiss:r,type:n=t.type,...o},s)=>{const i=Ln(t.type);return a.jsxs("div",{ref:s,className:l(dr({type:n,className:e})),...o,children:[a.jsxs("div",{className:"flex items-start space-x-3 flex-1",children:[a.jsx(i,{className:l(In({type:t.type}))}),a.jsxs("div",{className:"flex-1 space-y-1",children:[t.title&&a.jsx("div",{className:"text-sm font-semibold",children:t.title}),t.description&&a.jsx("div",{className:"text-sm opacity-90",children:t.description}),t.action&&a.jsx("div",{className:"mt-2",children:a.jsx(O,{variant:"outline",size:"sm",onClick:t.action.onClick,className:"h-8 px-2 text-xs",children:t.action.label})})]})]}),a.jsx(O,{variant:"ghost",size:"icon",className:"absolute right-1 top-1 h-6 w-6 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-1 group-hover:opacity-100",onClick:()=>r(t.id),children:a.jsx(C.X,{className:"h-4 w-4"})})]})});We.displayName="Toast";const lr=y.createContext(void 0);function Bn({children:e,position:t="top-right",maxToasts:r=5}){const n=zn(),{toasts:o,toast:s,dismiss:i,dismissAll:d,updateToast:c}=n,m=o.slice(-r),f={"top-left":"top-4 left-4","top-center":"top-4 left-1/2 -translate-x-1/2","top-right":"top-4 right-4","bottom-left":"bottom-4 left-4","bottom-center":"bottom-4 left-1/2 -translate-x-1/2","bottom-right":"bottom-4 right-4"};return a.jsxs(lr.Provider,{value:{toast:s,dismiss:i,dismissAll:d,updateToast:c},children:[e,a.jsx(Yn,{position:t,positionClasses:f[t],children:m.map(h=>a.jsx(We,{toast:h,onDismiss:i},h.id))})]})}function cr(){const e=y.useContext(lr);if(e===void 0)throw new Error("useToastContext must be used within a ToastProvider");return e}function _n(){const{toast:e,dismiss:t,dismissAll:r,updateToast:n}=cr();return{toast:e,dismiss:t,dismissAll:r,updateToast:n,success:o=>e({...o,type:"success"}),error:o=>e({...o,type:"error"}),warning:o=>e({...o,type:"warning"}),info:o=>e({...o,type:"info"})}}function Yn({children:e,positionClasses:t}){return a.jsx("div",{className:l("fixed z-[100] flex max-h-screen w-full flex-col-reverse p-0 sm:flex-col",t),style:{pointerEvents:"none"},children:a.jsx("div",{className:"pointer-events-auto flex flex-col gap-2",children:e})})}const ur=fe.Provider,mr=fe.Root,fr=fe.Trigger,pr=z.cva("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",{variants:{variant:{default:"bg-popover text-popover-foreground border-border",destructive:"border-destructive/50 text-destructive bg-destructive/10",warning:"border-yellow-500/50 text-yellow-700 bg-yellow-50",success:"border-green-500/50 text-green-700 bg-green-50",info:"border-blue-500/50 text-blue-700 bg-blue-50"}},defaultVariants:{variant:"default"}}),ze=u.forwardRef(({className:e,variant:t,sideOffset:r=4,...n},o)=>a.jsx(fe.Content,{ref:o,sideOffset:r,className:l(pr({variant:t,className:e})),...n}));ze.displayName=fe.Content.displayName;function $n({children:e,content:t,variant:r,side:n="top",align:o="center",sideOffset:s,alignOffset:i,delayDuration:d=400,skipDelayDuration:c=300,disableHoverableContent:m=!1,open:f,onOpenChange:h}){return a.jsx(ur,{delayDuration:d,skipDelayDuration:c,children:a.jsxs(mr,{open:f,onOpenChange:h,children:[a.jsx(fr,{asChild:!0,children:e}),a.jsx(ze,{variant:r,side:n,align:o,sideOffset:s,alignOffset:i,children:t})]})})}const hr=ie.Root,gr=ie.Trigger,An=ie.Anchor,xr=z.cva("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",{variants:{variant:{default:"bg-popover text-popover-foreground border-border",destructive:"border-destructive/50 text-destructive bg-destructive/10",warning:"border-yellow-500/50 text-yellow-700 bg-yellow-50",success:"border-green-500/50 text-green-700 bg-green-50",info:"border-blue-500/50 text-blue-700 bg-blue-50"},size:{sm:"w-48 p-3",md:"w-72 p-4",lg:"w-96 p-6",xl:"w-[32rem] p-8"}},defaultVariants:{variant:"default",size:"md"}}),Ie=u.forwardRef(({className:e,variant:t,size:r,align:n="center",sideOffset:o=4,...s},i)=>a.jsx(ie.Portal,{children:a.jsx(ie.Content,{ref:i,align:n,sideOffset:o,className:l(xr({variant:t,size:r,className:e})),...s})}));Ie.displayName=ie.Content.displayName;function Hn({children:e,content:t,variant:r,size:n,side:o="bottom",align:s="center",sideOffset:i,alignOffset:d,open:c,onOpenChange:m,modal:f=!0,closeOnInteractOutside:h=!0}){return a.jsxs(hr,{open:c,onOpenChange:m,modal:f,children:[a.jsx(gr,{asChild:!0,children:e}),a.jsx(Ie,{variant:r,size:n,side:o,align:s,sideOffset:i,alignOffset:d,onInteractOutside:h?void 0:w=>w.preventDefault(),children:t})]})}function Gn({children:e,container:t,className:r,style:n}){const[o,s]=u.useState(!1);if(u.useEffect(()=>{s(!0)},[]),!o)return null;const i=t||document.body;return Wr.createPortal(a.jsx("div",{className:l("fixed inset-0 z-50",r),style:n,children:e}),i)}function Xn({onClick:e,className:t,style:r}){return a.jsx("div",{className:l("absolute inset-0 bg-black/50 backdrop-blur-sm",t),style:r,onClick:e})}function Un({children:e,className:t,style:r,position:n="center"}){const o={center:"flex items-center justify-center",top:"flex justify-center pt-8",bottom:"flex justify-center pb-8",left:"flex items-center pl-8",right:"flex items-center pr-8","top-left":"flex justify-start items-start pt-8 pl-8","top-right":"flex justify-end items-start pt-8 pr-8","bottom-left":"flex justify-start items-end pb-8 pl-8","bottom-right":"flex justify-end items-end pb-8 pr-8"};return a.jsx("div",{className:l("relative w-full h-full min-h-screen",o[n],t),style:r,children:e})}const Qn=({variant:e="info",title:t,description:r,className:n})=>{const o={success:"bg-green-50 border-green-200 text-green-800",error:"bg-red-50 border-red-200 text-red-800",warning:"bg-yellow-50 border-yellow-200 text-yellow-800",info:"bg-blue-50 border-blue-200 text-blue-800"};return a.jsxs("div",{className:l("border rounded-lg p-4",o[e],n),children:[t&&a.jsx(W,{level:4,className:"font-semibold mb-2",children:t}),r&&a.jsx(N,{size:"sm",children:r})]})},Jn=({value:e,max:t=100,className:r})=>{const n=Math.min(100,Math.max(0,e/t*100));return a.jsx("div",{className:l("w-full bg-secondary rounded-full h-2",r),children:a.jsx("div",{className:"bg-primary h-2 rounded-full transition-all duration-300",style:{width:`${n}%`}})})},G=({className:e})=>a.jsx("div",{className:l("animate-pulse bg-gray-200 dark:bg-gray-700 rounded",e)}),Kn=({items:e,className:t})=>a.jsx("nav",{className:l("flex items-center space-x-2 text-sm",t),children:e.map((r,n)=>a.jsxs(y.Fragment,{children:[n>0&&a.jsx(C.ChevronRight,{className:"h-4 w-4 text-muted-foreground"}),r.href?a.jsx(Z,{href:r.href,className:"text-muted-foreground hover:text-foreground transition-colors",children:r.label}):a.jsx("span",{className:"text-foreground font-medium",children:r.label})]},n))}),Zn=({currentPage:e,totalPages:t,onPageChange:r,className:n})=>{const o=()=>{const i=[],d=[];for(let c=Math.max(2,e-2);c<=Math.min(t-1,e+2);c++)i.push(c);return e-2>2?d.push(1,"..."):d.push(1),d.push(...i),e+2<t-1?d.push("...",t):d.push(t),d};return a.jsxs("nav",{className:l("flex items-center space-x-1",n),children:[a.jsx("button",{onClick:()=>r(e-1),disabled:e===1,className:"p-2 rounded-md border border-input bg-background hover:bg-accent disabled:opacity-50 disabled:cursor-not-allowed",children:a.jsx(C.ChevronLeft,{className:"h-4 w-4"})}),o().map((s,i)=>a.jsx(y.Fragment,{children:s==="..."?a.jsx("span",{className:"px-3 py-2 text-muted-foreground",children:"..."}):a.jsx("button",{onClick:()=>r(s),className:l("px-3 py-2 rounded-md border transition-colors",s===e?"bg-primary text-primary-foreground border-primary":"border-input bg-background hover:bg-accent"),children:s})},i)),a.jsx("button",{onClick:()=>r(e+1),disabled:e===t,className:"p-2 rounded-md border border-input bg-background hover:bg-accent disabled:opacity-50 disabled:cursor-not-allowed",children:a.jsx(C.ChevronRight,{className:"h-4 w-4"})})]})},eo=({data:e,columns:t,rowKey:r,className:n})=>a.jsx("div",{className:l("overflow-x-auto",n),children:a.jsxs("table",{className:"w-full border-collapse",children:[a.jsx("thead",{children:a.jsx("tr",{className:"border-b",children:t.map(o=>a.jsx("th",{className:"text-left p-3 font-medium text-muted-foreground",children:o.title},String(o.key)))})}),a.jsx("tbody",{children:e.map(o=>a.jsx("tr",{className:"border-b hover:bg-muted/50",children:t.map(s=>a.jsx("td",{className:"p-3",children:s.render?s.render(o[s.key],o):String(o[s.key])},String(s.key)))},String(o[r])))})]})}),to=({items:e,className:t})=>a.jsx("div",{className:l("space-y-2",t),children:e.map(r=>a.jsxs("div",{className:"p-4 border rounded-lg hover:bg-muted/50 transition-colors",children:[a.jsx("h3",{className:"font-medium text-foreground",children:r.title}),r.description&&a.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:r.description})]},r.id))}),ro=({items:e,className:t})=>a.jsx("div",{className:l("space-y-6",t),children:e.map((r,n)=>a.jsxs("div",{className:"relative flex",children:[a.jsxs("div",{className:"flex flex-col items-center",children:[a.jsx("div",{className:"w-3 h-3 bg-primary rounded-full border-2 border-background"}),n<e.length-1&&a.jsx("div",{className:"w-px h-12 bg-border mt-2"})]}),a.jsxs("div",{className:"ml-4 flex-1",children:[a.jsx(W,{level:3,className:"font-medium",children:r.title}),a.jsx(N,{size:"sm",color:"muted",children:r.date}),r.description&&a.jsx(N,{size:"sm",color:"muted",className:"mt-1",children:r.description})]})]},r.id))}),ao=({event:e,className:t,featured:r,showImage:n,getTicketsLabel:o,trendingBadgeText:s})=>{var w,p,g,x,S,D,b,v,L,B,U,Q,_,A,H;if(typeof r!="boolean")throw new Error('EventCard: "featured" prop is required and must be a boolean');if(typeof n!="boolean")throw new Error('EventCard: "showImage" prop is required and must be a boolean');if(!o||o.trim()==="")throw new Error('EventCard: "getTicketsLabel" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('EventCard: "trendingBadgeText" prop is required and cannot be empty');const i=typeof(e==null?void 0:e.name)=="string"?e.name:((w=e==null?void 0:e.name)==null?void 0:w.en)||((p=e==null?void 0:e.name)==null?void 0:p.es)||((g=e==null?void 0:e.name)==null?void 0:g.ru);if(!i||i.trim()==="")throw new Error("EventCard: event.name is required and cannot be empty");const d=typeof(e==null?void 0:e.description)=="string"?e.description:((x=e==null?void 0:e.description)==null?void 0:x.en)||((S=e==null?void 0:e.description)==null?void 0:S.es)||((D=e==null?void 0:e.description)==null?void 0:D.ru);if(!d||d.trim()==="")throw new Error("EventCard: event.description is required and cannot be empty");const c=e==null?void 0:e.start_date;if(!c||c.trim()==="")throw new Error("EventCard: event.start_date is required and cannot be empty");const m=typeof((b=e==null?void 0:e.venue_id)==null?void 0:b.name)=="string"?e.venue_id.name:((L=(v=e==null?void 0:e.venue_id)==null?void 0:v.name)==null?void 0:L.en)||((U=(B=e==null?void 0:e.venue_id)==null?void 0:B.name)==null?void 0:U.es)||((_=(Q=e==null?void 0:e.venue_id)==null?void 0:Q.name)==null?void 0:_.ru);if(!m||m.trim()==="")throw new Error("EventCard: event.venue_id.name is required and cannot be empty");const f=typeof(e==null?void 0:e.price)=="string"?e.price:typeof(e==null?void 0:e.price)=="object"&&(e==null?void 0:e.price)!==null?`€${((A=e.price)==null?void 0:A.min)||0} - €${((H=e.price)==null?void 0:H.max)||"∞"}`:null;if(!f||f.trim()==="")throw new Error("EventCard: event.price is required and cannot be empty");const h=e==null?void 0:e.image;return a.jsxs(Y,{className:l("group relative overflow-hidden border-transparent hover:border-primary/20 shadow-md hover:shadow-xl transition-all duration-300 animate-fade-in-up",r&&"ring-2 ring-primary/50",t),children:[r&&a.jsx("div",{className:"absolute top-3 right-3 z-10",children:a.jsx("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-semibold bg-gradient-to-r from-orange-500 to-purple-600 text-white shadow-lg",children:s})}),n&&a.jsxs("div",{className:"relative w-full h-48 bg-gradient-to-br from-gray-200 to-gray-300 dark:from-gray-700 dark:to-gray-800 rounded-t-lg overflow-hidden",children:[h?a.jsx("img",{src:h,alt:i,className:"w-full h-full object-cover group-hover:scale-110 transition-transform duration-500"}):a.jsx("div",{className:"w-full h-full flex items-center justify-center",children:a.jsx("svg",{className:"w-16 h-16 text-gray-400 dark:text-gray-600",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 10l4.553-2.276A1 1 0 0121 8.618v6.764a1 1 0 01-1.447.894L15 14M5 18h8a2 2 0 002-2V8a2 2 0 00-2-2H5a2 2 0 00-2 2v8a2 2 0 002 2z"})})}),a.jsx("div",{className:"absolute inset-0 bg-gradient-to-t from-black/60 via-transparent to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-300"})]}),a.jsxs($,{className:"p-4",children:[a.jsx(W,{level:3,className:"text-lg font-bold mb-2 group-hover:text-primary transition-colors line-clamp-2",children:e!=null&&e.slug?a.jsx(Z,{href:`/events/${e.slug}`,variant:"ghost",size:"none",children:i}):i}),a.jsx(N,{size:"sm",color:"muted",className:"mb-3 line-clamp-2",children:d}),a.jsxs("div",{className:"flex flex-col gap-2 mb-3",children:[a.jsxs("div",{className:"flex items-center gap-2 text-xs text-gray-500",children:[a.jsx("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})}),a.jsx(N,{size:"xs",color:"muted",children:c})]}),a.jsxs("div",{className:"flex items-center gap-2 text-xs text-gray-500",children:[a.jsxs("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:[a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.827 0l-4.244-4.243a8 8 0 1111.314 0z"}),a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 11a3 3 0 11-6 0 3 3 0 016 0z"})]}),a.jsx(N,{size:"xs",color:"muted",className:"line-clamp-1",children:m})]})]}),a.jsx("div",{className:"pt-3 border-t border-gray-200 dark:border-gray-700",children:e!=null&&e.ticket_url?a.jsxs(Z,{href:e.ticket_url,className:"inline-flex items-center justify-center w-full py-2 px-4 bg-gradient-to-r from-orange-500 to-purple-600 hover:from-orange-600 hover:to-purple-700 text-white font-semibold transition-all duration-300 transform hover:scale-105 shadow-md hover:shadow-lg",target:"_blank",rel:"noopener noreferrer",children:[o,a.jsx("svg",{className:"ml-2 w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M14 5l7 7m0 0l-7 7m7-7H3"})})]}):a.jsx("div",{className:"text-right",children:a.jsx(N,{size:"lg",weight:"bold",className:"bg-gradient-to-r from-orange-500 to-purple-600 bg-clip-text text-transparent",children:f})})})]})]})},no=({venue:e,className:t,featured:r,showImage:n,eventsLabel:o,popularBadgeText:s,capacityLabel:i})=>{var p,g;if(typeof r!="boolean")throw new Error('VenueCard: "featured" prop is required and must be a boolean');if(typeof n!="boolean")throw new Error('VenueCard: "showImage" prop is required and must be a boolean');if(!o||o.trim()==="")throw new Error('VenueCard: "eventsLabel" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('VenueCard: "popularBadgeText" prop is required and cannot be empty');if(!i||i.trim()==="")throw new Error('VenueCard: "capacityLabel" prop is required and cannot be empty');const d=typeof(e==null?void 0:e.name)=="string"?e.name:(p=e==null?void 0:e.name)==null?void 0:p.en;if(!d||d.trim()==="")throw new Error("VenueCard: venue.name is required and cannot be empty");const c=typeof(e==null?void 0:e.description)=="string"?e.description:(g=e==null?void 0:e.description)==null?void 0:g.en;if(!c||c.trim()==="")throw new Error("VenueCard: venue.description is required and cannot be empty");const m=typeof(e==null?void 0:e.location)=="string"?e.location:e==null?void 0:e.address;if(!m||m.trim()==="")throw new Error("VenueCard: venue.location or venue.address is required and cannot be empty");const f=e==null?void 0:e.capacity;if(!f||f.trim()==="")throw new Error("VenueCard: venue.capacity is required and cannot be empty");const h=e==null?void 0:e.image,w=(e==null?void 0:e.events_count)||0;return a.jsxs(Y,{className:l("group relative overflow-hidden border-transparent hover:border-primary/20 shadow-md hover:shadow-xl transition-all duration-300 animate-fade-in-up",r&&"ring-2 ring-primary/50",t),children:[r&&a.jsx("div",{className:"absolute top-3 right-3 z-10",children:a.jsx("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-semibold bg-gradient-to-r from-purple-500 to-orange-500 text-white shadow-lg",children:s})}),n&&a.jsxs("div",{className:"relative w-full h-48 bg-gradient-to-br from-gray-200 to-gray-300 dark:from-gray-700 dark:to-gray-800 rounded-t-lg overflow-hidden",children:[h?a.jsx("img",{src:h,alt:d,className:"w-full h-full object-cover group-hover:scale-110 transition-transform duration-500"}):a.jsx("div",{className:"w-full h-full flex items-center justify-center",children:a.jsx("svg",{className:"w-16 h-16 text-gray-400 dark:text-gray-600",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"})})}),a.jsx("div",{className:"absolute inset-0 bg-gradient-to-t from-black/60 via-transparent to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-300"})]}),a.jsxs($,{className:"p-4",children:[a.jsx(W,{level:3,className:"text-lg font-bold mb-2 group-hover:text-primary transition-colors line-clamp-2",children:e!=null&&e.slug?a.jsx(Z,{href:`/venues/${e.slug}`,variant:"ghost",size:"none",children:d}):d}),a.jsx(N,{size:"sm",color:"muted",className:"mb-3 line-clamp-2",children:c}),a.jsx("div",{className:"flex flex-col gap-2 mb-3",children:a.jsxs("div",{className:"flex items-center gap-2 text-xs text-gray-500",children:[a.jsxs("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:[a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.827 0l-4.244-4.243a8 8 0 1111.314 0z"}),a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 11a3 3 0 11-6 0 3 3 0 016 0z"})]}),a.jsx(N,{size:"xs",color:"muted",className:"line-clamp-1",children:m})]})}),a.jsx("div",{className:"pt-3 border-t border-gray-200 dark:border-gray-700",children:a.jsxs("div",{className:"flex justify-between items-center text-xs",children:[w>0&&a.jsxs("div",{className:"flex items-center gap-1 text-primary font-medium",children:[a.jsx("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 10l4.553-2.276A1 1 0 0121 8.618v6.764a1 1 0 01-1.447.894L15 14M5 18h8a2 2 0 002-2V8a2 2 0 00-2-2H5a2 2 0 00-2 2v8a2 2 0 002 2z"})}),a.jsxs(N,{size:"xs",color:"primary",weight:"medium",children:[w," ",o]})]}),f&&a.jsxs("div",{className:"flex items-center gap-1 text-gray-500",children:[a.jsx("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0zm6 3a2 2 0 11-4 0 2 2 0 014 0zM7 10a2 2 0 11-4 0 2 2 0 014 0z"})}),a.jsxs(N,{size:"xs",color:"muted",children:[i," ",f]})]})]})})]})]})},se=({id:e,name:t,label:r,type:n="text",placeholder:o,value:s,onChange:i,error:d,helperText:c,className:m})=>{const f=s??"";return a.jsxs("div",{className:l("space-y-2",m),children:[r&&a.jsx(K,{htmlFor:e,className:"block",children:r}),a.jsx(de,{id:e,name:t,type:n,placeholder:o,value:f,onChange:h=>i==null?void 0:i(h.target.value)}),c&&!d&&a.jsx(N,{size:"sm",color:"muted",children:c}),d&&a.jsx(N,{size:"sm",color:"destructive",children:d})]})},oo=({id:e,name:t,label:r,placeholder:n,options:o=[],value:s,onChange:i,error:d,className:c})=>{const m=s??"";return a.jsxs("div",{className:l("space-y-2",c),children:[r&&a.jsx(K,{htmlFor:e,className:"block",children:r}),a.jsxs("select",{id:e,name:t,value:m,onChange:f=>i==null?void 0:i(f.target.value),className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-md bg-white dark:bg-gray-800",children:[n&&a.jsx("option",{value:"",disabled:!0,children:n}),o.map(f=>a.jsx("option",{value:f.value,children:f.label},f.value))]}),d&&a.jsx(N,{size:"sm",color:"destructive",children:d})]})},so=({id:e,name:t,label:r,placeholder:n,value:o,onChange:s,error:i,rows:d=4,className:c})=>{const m=o??"";return a.jsxs("div",{className:l("space-y-2",c),children:[r&&a.jsx(K,{htmlFor:e,className:"block",children:r}),a.jsx("textarea",{id:e,name:t,placeholder:n,value:m,onChange:f=>s==null?void 0:s(f.target.value),className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-md bg-white dark:bg-gray-800",rows:d}),i&&a.jsx(N,{size:"sm",color:"destructive",children:i})]})},io=({emailLabel:e,emailPlaceholder:t,passwordLabel:r,passwordPlaceholder:n,loginButtonText:o,className:s})=>{if(!e||e.trim()==="")throw new Error('LoginForm: "emailLabel" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('LoginForm: "emailPlaceholder" prop is required and cannot be empty');if(!r||r.trim()==="")throw new Error('LoginForm: "passwordLabel" prop is required and cannot be empty');if(!n||n.trim()==="")throw new Error('LoginForm: "passwordPlaceholder" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('LoginForm: "loginButtonText" prop is required and cannot be empty');return a.jsxs("div",{className:l("space-y-4",s),children:[a.jsx(se,{label:e,placeholder:t}),a.jsx(se,{label:r,placeholder:n}),a.jsx(O,{className:"w-full",children:o})]})},lo=({nameLabel:e,namePlaceholder:t,emailLabel:r,emailPlaceholder:n,passwordLabel:o,passwordPlaceholder:s,registerButtonText:i,className:d})=>{if(!e||e.trim()==="")throw new Error('RegisterForm: "nameLabel" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('RegisterForm: "namePlaceholder" prop is required and cannot be empty');if(!r||r.trim()==="")throw new Error('RegisterForm: "emailLabel" prop is required and cannot be empty');if(!n||n.trim()==="")throw new Error('RegisterForm: "emailPlaceholder" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('RegisterForm: "passwordLabel" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('RegisterForm: "passwordPlaceholder" prop is required and cannot be empty');if(!i||i.trim()==="")throw new Error('RegisterForm: "registerButtonText" prop is required and cannot be empty');return a.jsxs("div",{className:l("space-y-4",d),children:[a.jsx(se,{label:e,placeholder:t}),a.jsx(se,{label:r,placeholder:n}),a.jsx(se,{label:o,placeholder:s}),a.jsx(O,{className:"w-full",children:i})]})},co=({name:e,email:t,avatar:r,className:n})=>{if(!e||e.trim()==="")throw new Error('ProfileCard: "name" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('ProfileCard: "email" prop is required and cannot be empty');return a.jsx(Y,{className:l("shadow-md",n),children:a.jsxs($,{className:"p-4",children:[r&&a.jsx("div",{className:"w-16 h-16 bg-gray-200 dark:bg-gray-700 rounded-full mb-4"}),a.jsx(W,{level:3,className:"text-lg font-semibold mb-2",children:e}),a.jsx(N,{color:"muted",children:t})]})})},uo=({title:e,content:t,className:r})=>{if(!e||e.trim()==="")throw new Error('Dashboard: "title" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('Dashboard: "content" prop is required and cannot be empty');return a.jsx(Y,{className:l("shadow-md",r),children:a.jsxs($,{className:"p-6",children:[a.jsx(W,{level:2,className:"mb-4",children:e}),a.jsx(N,{color:"muted",children:t})]})})},mo=({title:e,content:t,className:r})=>{if(!e||e.trim()==="")throw new Error('UserManagement: "title" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('UserManagement: "content" prop is required and cannot be empty');return a.jsx(Y,{className:l("shadow-md",r),children:a.jsxs($,{className:"p-6",children:[a.jsx(W,{level:2,className:"mb-4",children:e}),a.jsx(N,{color:"muted",children:t})]})})},fo=({placeholder:e,className:t,onSearch:r,suggestions:n=[],onSuggestionSelect:o})=>{if(!e||e.trim()==="")throw new Error('SearchBar: "placeholder" prop is required and cannot be empty');const[s,i]=y.useState(""),[d,c]=y.useState(!1),[m,f]=y.useState(-1),h=y.useRef(null),w=b=>{i(b),f(-1),r&&r(b)},p=()=>{c(!0)},g=b=>{setTimeout(()=>{var v;(v=h.current)!=null&&v.contains(document.activeElement)||(c(!1),f(-1))},200)},x=b=>{if(n.length!==0)if(b.key==="ArrowDown")b.preventDefault(),f(v=>v<n.length-1?v+1:v);else if(b.key==="ArrowUp")b.preventDefault(),f(v=>v>0?v-1:-1);else if(b.key==="Enter"&&m>=0&&m<n.length){b.preventDefault();const v=n[m];v&&(i(v),w(v),o==null||o(v),c(!1))}else b.key==="Escape"&&(c(!1),f(-1))},S=b=>{i(b),w(b),o==null||o(b),c(!1)};y.useEffect(()=>{const b=v=>{h.current&&!h.current.contains(v.target)&&(c(!1),f(-1))};return document.addEventListener("mousedown",b),()=>document.removeEventListener("mousedown",b)},[]);const D=n.filter(b=>b.toLowerCase().includes(s.toLowerCase()));return a.jsxs("div",{ref:h,className:l("relative w-full max-w-sm",t),children:[a.jsx(ge,{placeholder:e,value:s,onChange:w,onFocus:p,onBlur:g,onKeyDown:x,className:l("transition-all duration-200","focus:ring-2 focus:ring-primary focus:ring-offset-2","hover:border-primary/50",d&&"border-primary shadow-sm")}),d&&D.length>0&&a.jsx("div",{className:"absolute z-50 w-full mt-1 bg-popover border rounded-md shadow-lg max-h-60 overflow-auto",children:D.map((b,v)=>a.jsx(O,{type:"button",variant:"ghost",onClick:()=>S(b),className:l("w-full justify-start px-4 py-2 text-sm",v===m&&"bg-accent text-accent-foreground"),children:b},b))})]})},po=({events:e,limit:t,loading:r,title:n,loadingText:o,contentText:s,className:i})=>{if(!Array.isArray(e))throw new Error('TrendingSection: "events" prop is required and must be an array');if(typeof t!="number"||isNaN(t)||t<0)throw new Error('TrendingSection: "limit" prop is required and must be a non-negative number');if(typeof r!="boolean")throw new Error('TrendingSection: "loading" prop is required and must be a boolean');if(!n||n.trim()==="")throw new Error('TrendingSection: "title" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('TrendingSection: "loadingText" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('TrendingSection: "contentText" prop is required and cannot be empty');return a.jsx(Y,{className:l("shadow-md",i),children:a.jsxs($,{className:"p-6",children:[a.jsx(W,{level:2,className:"mb-4",children:n}),r?a.jsx(N,{color:"muted",children:o}):a.jsx(N,{color:"muted",children:s})]})})},ho=({articles:e,readMoreLabel:t,className:r})=>{if(!t||t.trim()==="")throw new Error('ArticlesSection: "readMoreLabel" prop is required and cannot be empty');return a.jsx("div",{className:l("space-y-6",r),children:e.map(n=>a.jsxs("article",{className:"border rounded-lg p-6 hover:shadow-md transition-shadow",children:[n.image&&a.jsx("div",{className:"w-full h-48 bg-muted rounded-md mb-4"}),a.jsxs("div",{className:"space-y-2",children:[a.jsx(W,{level:2,className:"text-xl font-semibold",children:a.jsx(Z,{href:`/news/${n.slug}`,variant:"ghost",size:"none",className:"hover:text-primary",children:n.title})}),n.description&&a.jsx(N,{color:"muted",children:n.description}),n.date&&a.jsx(N,{size:"sm",color:"muted",children:n.date}),a.jsxs(Z,{href:`/news/${n.slug}`,variant:"default",size:"none",className:"inline-flex items-center",children:[t," →"]})]})]},n.slug))})},go=({className:e})=>a.jsx("div",{className:l("w-6 h-6 bg-primary rounded-full flex items-center justify-center",e),children:a.jsx("span",{className:"text-white text-sm",children:"↑"})}),xo=({ariaLabel:e,dataTestId:t,className:r,languages:n,value:o,defaultValue:s,disabled:i,onLanguageChange:d})=>{if(!e||e.trim()==="")throw new Error('LanguageSelector: "ariaLabel" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('LanguageSelector: "dataTestId" prop is required and cannot be empty');if(!n||n.length===0)throw new Error('LanguageSelector: "languages" prop is required and cannot be empty');const c=y.useMemo(()=>n,[n]),m=()=>{if(o!==void 0)return o;if(s&&c.some(p=>p.code===s))return s;if(c.length===0)throw new Error("LanguageSelector: languages array must contain at least one option");return c[0].code},[f,h]=y.useState(m);y.useEffect(()=>{o!==void 0&&o!==f&&h(o)},[o,f]);const w=p=>{const g=p.target.value;o===void 0&&h(g),d==null||d(g)};return a.jsx("select",{value:o??f,onChange:w,disabled:i,className:l("px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-md bg-white dark:bg-gray-800 text-sm",i&&"opacity-70 cursor-not-allowed",r),"aria-label":e,"data-testid":t,children:c.map(({code:p,label:g})=>a.jsx("option",{value:p,children:g},p))})},br=({className:e})=>a.jsxs("div",{className:l("bg-white dark:bg-gray-800 rounded-lg shadow-md p-4",e),children:[a.jsx(G,{className:"w-full h-48 mb-4"}),a.jsx(G,{className:"h-6 w-3/4 mb-2"}),a.jsx(G,{className:"h-4 w-full mb-2"}),a.jsx(G,{className:"h-4 w-1/2"})]}),wr=({className:e})=>a.jsxs("div",{className:l("bg-white dark:bg-gray-800 rounded-lg shadow-md p-4",e),children:[a.jsx(G,{className:"w-full h-48 mb-4"}),a.jsx(G,{className:"h-6 w-3/4 mb-2"}),a.jsx(G,{className:"h-4 w-full mb-2"}),a.jsx(G,{className:"h-4 w-1/2"})]});exports.cssVariableColorTokens=ee.cssVariableColorTokens;exports.fontFamily=ee.fontFamily;exports.fontSize=ee.fontSize;exports.fontWeight=ee.fontWeight;exports.letterSpacing=ee.letterSpacing;exports.lineHeight=ee.lineHeight;exports.spacing=ee.spacing;exports.tailwindThemeColors=ee.tailwindThemeColors;exports.borderRadius=Cr.borderRadius;exports.Alert=Qn;exports.ArticlesSection=ho;exports.Badge=_r;exports.Blockquote=Kr;exports.Breadcrumbs=Kn;exports.Button=O;exports.Card=Y;exports.CardContent=$;exports.CardDescription=nt;exports.CardFooter=ot;exports.CardHeader=rt;exports.CardTitle=at;exports.Code=Jr;exports.ConfirmDialog=Mt;exports.Container=jt;exports.CustomDialog=pa;exports.Dashboard=uo;exports.DateRangePicker=Ve;exports.Divider=it;exports.DropdownMenu=ga;exports.DropdownMenuCheckboxItem=zt;exports.DropdownMenuContent=Vt;exports.DropdownMenuGroup=ba;exports.DropdownMenuItem=Wt;exports.DropdownMenuLabel=Lt;exports.DropdownMenuPortal=wa;exports.DropdownMenuRadioGroup=va;exports.DropdownMenuRadioItem=It;exports.DropdownMenuSeparator=Bt;exports.DropdownMenuShortcut=_t;exports.DropdownMenuSub=ya;exports.DropdownMenuSubContent=Ft;exports.DropdownMenuSubTrigger=Ot;exports.DropdownMenuTrigger=xa;exports.EventCard=ao;exports.EventCardSkeleton=br;exports.EventCardSkeletonUI=br;exports.FilterBar=ir;exports.FilterBarCompact=Vn;exports.FilterSelect=ue;exports.Flex=gt;exports.Footer=ra;exports.FormInput=se;exports.FormSelect=oo;exports.FormTextarea=so;exports.Grid=bt;exports.Heading=W;exports.Input=de;exports.Label=K;exports.LanguageSelector=xo;exports.Link=Z;exports.List=to;exports.LoginForm=io;exports.Modal=Nt;exports.ModalClose=na;exports.ModalContent=Me;exports.ModalDescription=De;exports.ModalFooter=Se;exports.ModalHeader=Ce;exports.ModalOverlay=ke;exports.ModalPortal=kt;exports.ModalProvider=ia;exports.ModalTitle=Ee;exports.ModalTrigger=aa;exports.ModeHero=ea;exports.Navbar=ta;exports.NavigationMenu=Yt;exports.NavigationMenuContent=Gt;exports.NavigationMenuIndicator=Xt;exports.NavigationMenuItem=ja;exports.NavigationMenuLink=Na;exports.NavigationMenuList=$t;exports.NavigationMenuTrigger=Ht;exports.NavigationMenuViewport=Te;exports.OverlayBackdrop=Xn;exports.OverlayContainer=Un;exports.OverlayPortal=Gn;exports.Pagination=Zn;exports.Paragraph=Qr;exports.Popover=hr;exports.PopoverAnchor=An;exports.PopoverContent=Ie;exports.PopoverTrigger=gr;exports.PopoverWrapper=Hn;exports.PriceRangeSlider=sr;exports.ProfileCard=co;exports.Progress=Jn;exports.RegisterForm=lo;exports.SearchBar=fo;exports.SearchFilters=Wn;exports.SearchInput=ge;exports.Section=Zr;exports.Select=Kt;exports.SelectContent=Oe;exports.SelectGroup=Ca;exports.SelectItem=Fe;exports.SelectLabel=er;exports.SelectScrollDownButton=Re;exports.SelectScrollUpButton=qe;exports.SelectSeparator=tr;exports.SelectTrigger=Pe;exports.SelectValue=Zt;exports.SimpleModal=ha;exports.Skeleton=G;exports.Stack=yt;exports.Table=eo;exports.Tabs=ka;exports.TabsContent=Jt;exports.TabsList=Ut;exports.TabsTrigger=Qt;exports.Text=N;exports.ThemeSwitch=Ur;exports.Timeline=ro;exports.Toast=We;exports.ToastProvider=Bn;exports.Tooltip=mr;exports.TooltipContent=ze;exports.TooltipProvider=ur;exports.TooltipTrigger=fr;exports.TooltipWrapper=$n;exports.TrendingIcon=go;exports.TrendingSection=po;exports.UserManagement=mo;exports.VenueCard=no;exports.VenueCardSkeleton=wr;exports.VenueCardSkeletonUI=wr;exports.applyDocumentMode=dt;exports.badgeVariants=st;exports.buttonVariants=et;exports.cn=l;exports.containerVariants=vt;exports.debounce=Lr;exports.flexVariants=ht;exports.formatDate=Ke;exports.formatDateTime=zr;exports.formatTime=Ze;exports.generateId=Ir;exports.gridVariants=xt;exports.linkVariants=tt;exports.navigationMenuTriggerStyle=At;exports.popoverContentVariants=xr;exports.stackVariants=wt;exports.throttle=Br;exports.toastVariants=dr;exports.tooltipContentVariants=pr;exports.useConfirmDialog=oa;exports.useDateRange=Rn;exports.useModal=sa;exports.useModalContext=Et;exports.useModalManager=Ct;exports.usePriceRange=On;exports.useSearch=Ma;exports.useToast=_n;exports.useToastContext=cr;exports.withModal=da;
2
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ee=require("./colors-BGRiFoSZ.cjs"),j=require("./tokens/index.cjs"),Ce=require("./radius-Cz6tayZG.cjs"),a=require("react/jsx-runtime"),A=require("class-variance-authority"),g=require("react"),Tr=require("clsx"),Dr=require("tailwind-merge"),rt=require("@radix-ui/react-slot"),Er=require("@radix-ui/react-label"),E=require("lucide-react"),se=require("./applyMode-DCenL-Bg.cjs"),Pr=require("@radix-ui/react-dialog"),Rr=require("@radix-ui/react-dropdown-menu"),qr=require("@radix-ui/react-navigation-menu"),Or=require("@radix-ui/react-tabs"),Fr=require("@radix-ui/react-select"),Vr=require("react-dom"),Wr=require("@radix-ui/react-popover"),Ir=require("@radix-ui/react-tooltip");function te(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const m=te(g),at=te(Er),M=te(Pr),k=te(Rr),_=te(qr),le=te(Or),P=te(Fr),fe=te(Wr),je=te(Ir);function l(...e){return Dr.twMerge(Tr.clsx(e))}function nt(e){return new Intl.DateTimeFormat("en-US",{month:"long",day:"numeric",year:"numeric"}).format(new Date(e))}function ot(e){return new Intl.DateTimeFormat("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).format(new Date(e))}function zr(e){return`${nt(e)} at ${ot(e)}`}function Lr(){return Math.random().toString(36).substr(2,9)}function _r(e,t){let r;return(...n)=>{clearTimeout(r),r=setTimeout(()=>e(...n),t)}}function Br(e,t){let r;return(...n)=>{r||(e(...n),r=!0,setTimeout(()=>r=!1,t))}}const st=A.cva("inline-flex items-center rounded-full border px-xs py-xs text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function Yr({className:e,variant:t,...r}){return a.jsx("div",{className:l(st({variant:t}),e),...r})}const it=A.cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),L=m.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},s)=>{const i=n?rt.Slot:"button";return a.jsx(i,{className:l(it({variant:t,size:r,className:e})),ref:s,...o})});L.displayName="Button";const K=m.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("rounded-xl border bg-card text-card-foreground shadow",e),...t}));K.displayName="Card";const dt=m.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("flex flex-col space-y-xs p-lg",e),...t}));dt.displayName="CardHeader";const lt=m.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("font-semibold leading-none tracking-tight",e),...t}));lt.displayName="CardTitle";const ct=m.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("text-sm text-muted-foreground",e),...t}));ct.displayName="CardDescription";const Z=m.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("p-lg pt-0",e),...t}));Z.displayName="CardContent";const ut=m.forwardRef(({className:e,...t},r)=>a.jsx("div",{ref:r,className:l("flex items-center p-lg pt-0",e),...t}));ut.displayName="CardFooter";const mt=m.forwardRef(({className:e,orientation:t="horizontal",variant:r="solid",...n},o)=>{const s={solid:"border-solid",dashed:"border-dashed",dotted:"border-dotted"};return a.jsx("div",{ref:o,className:l("border-border",t==="horizontal"?`w-full border-t ${s[r]}`:`h-full border-l ${s[r]}`,e),...n})});mt.displayName="Divider";const pe=m.forwardRef(({className:e,type:t,...r},n)=>a.jsx("input",{type:t,className:l("flex h-9 w-full rounded-md border border-input bg-transparent px-sm py-xs text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:n,...r}));pe.displayName="Input";const $r=A.cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),ne=m.forwardRef(({className:e,...t},r)=>a.jsx(at.Root,{ref:r,className:l($r(),e),...t}));ne.displayName=at.Root.displayName;const ft=A.cva("inline-flex items-center justify-center whitespace-nowrap text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"text-primary hover:text-primary/80 underline-offset-4 hover:underline",destructive:"text-destructive hover:text-destructive/80 underline-offset-4 hover:underline",ghost:"text-foreground hover:text-accent-foreground hover:bg-accent rounded-md px-sm py-sm",secondary:"text-secondary-foreground underline-offset-4 hover:underline",button:"bg-primary text-primary-foreground hover:bg-primary/90 rounded-md","button-outline":"border border-input bg-background hover:bg-accent hover:text-accent-foreground rounded-md","button-secondary":"bg-secondary text-secondary-foreground hover:bg-secondary/80 rounded-md"},size:{default:"h-10 px-md py-sm",sm:"h-9 px-sm",lg:"h-11 px-8",icon:"h-10 w-10",none:"h-auto px-0 py-0"}},defaultVariants:{variant:"default",size:"none"}}),oe=m.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},s)=>{const i=n?rt.Slot:"a";return a.jsx(i,{className:l(ft({variant:t,size:r,className:e})),ref:s,...o})});oe.displayName="Link";const pt="tm_mode",ht="tm_mode",gt="theme",xt="data-mode",bt="data-theme",Hr="dark";function wt(e){var o,s;if(((s=(o=globalThis.process)==null?void 0:o.env)==null?void 0:s.NODE_ENV)==="production"||typeof document>"u")return;const r=document.documentElement,n={"data-mode":r.getAttribute(xt),"data-theme":r.getAttribute(bt),darkClass:r.classList.contains(Hr),"--background":getComputedStyle(r).getPropertyValue("--background"),"--tm-primary":getComputedStyle(r).getPropertyValue("--tm-primary")};console.log("[theme-switch]",e,n)}function Ar(e){var n;if(typeof document>"u")return;const r=`; ${document.cookie}`.split(`; ${e}=`);if(r.length===2)return(n=r.pop())==null?void 0:n.split(";")[0]}function Xe(){var n,o;if(typeof document>"u")return"day";const e=document.documentElement.getAttribute(xt);if(e==="day"||e==="night")return e;const t=document.documentElement.getAttribute(bt);if(t==="day"||t==="night")return t;try{const s=window.localStorage.getItem(ht);if(s==="day"||s==="night")return s;const i=window.localStorage.getItem(gt);if(i==="dark")return"night";if(i==="light")return"day"}catch{}const r=Ar(pt);return r==="day"||r==="night"?r:typeof window<"u"&&((o=(n=window.matchMedia)==null?void 0:n.call(window,"(prefers-color-scheme: dark)"))==null?void 0:o.matches)?"night":"day"}function Qe(e){se.applyDocumentMode(e);try{window.localStorage.setItem(ht,e),window.localStorage.setItem(gt,e==="night"?"dark":"light")}catch{}const t=new Date;t.setFullYear(t.getFullYear()+1),document.cookie=`${pt}=${e};expires=${t.toUTCString()};path=/;SameSite=Lax`,wt(`persist:${e}`)}const Gr=({className:e,size:t="md",variant:r="default"})=>{const[n,o]=g.useState(()=>Xe());g.useEffect(()=>{const i=Xe();o(i),Qe(i),wt(`initial:${i}`)},[]);const s=()=>{o(i=>{const d=i==="night"?"day":"night";return Qe(d),d})};return a.jsx(L,{onClick:s,variant:r,size:t==="sm"?"sm":t==="lg"?"lg":"default",className:l(t==="sm"?"h-8 w-8":t==="lg"?"h-12 w-12":"h-10 w-10",e),"aria-label":`Switch to ${n==="night"?"day":"night"} theme`,type:"button",children:n==="night"?a.jsx(E.Sun,{className:"h-4 w-4"}):a.jsx(E.Moon,{className:"h-4 w-4"})})},H=({className:e,children:t,as:r,level:n=1})=>{const o=r||`h${n}`,s={1:"text-4xl font-bold tracking-tight",2:"text-3xl font-bold tracking-tight",3:"text-2xl font-bold tracking-tight",4:"text-xl font-semibold tracking-tight",5:"text-lg font-semibold tracking-tight",6:"text-base font-semibold tracking-tight"};return a.jsx(o,{className:l(s[n],e),children:t})},C=({className:e,children:t,size:r="base",weight:n="normal",color:o="default"})=>{const s={xs:"text-xs",sm:"text-sm",base:"text-base",lg:"text-lg",xl:"text-xl"},i={normal:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold"},d={default:"text-foreground",muted:"text-muted-foreground",primary:"text-primary",destructive:"text-destructive"};return a.jsx("span",{className:l(s[r],i[n],d[o],e),children:t})},Xr=({className:e,children:t,...r})=>a.jsx("p",{className:l("leading-7 [&:not(:first-child)]:mt-lg",e),children:a.jsx(C,{...r,children:t})}),Qr=({className:e,children:t})=>a.jsx("code",{className:l("relative rounded bg-muted px-[0.3rem] py-[0.2rem] font-mono text-sm font-semibold",e),children:t}),Ur=({className:e,children:t})=>a.jsx("blockquote",{className:l("mt-lg border-l-2 pl-lg italic",e),children:t}),yt=A.cva("mx-auto px-md",{variants:{size:{sm:"max-w-sm",md:"max-w-md",lg:"max-w-lg",xl:"max-w-xl","2xl":"max-w-2xl","3xl":"max-w-3xl","4xl":"max-w-4xl","5xl":"max-w-5xl","6xl":"max-w-6xl","7xl":"max-w-7xl",full:"max-w-full"},padding:{none:"px-0",sm:"px-sm",md:"px-md",lg:"px-lg",xl:"px-xl"}},defaultVariants:{size:"7xl",padding:"md"}}),vt=m.forwardRef(({className:e,size:t,padding:r,...n},o)=>a.jsx("div",{ref:o,className:l(yt({size:t,padding:r,className:e})),...n}));vt.displayName="Container";const jt=A.cva("flex",{variants:{direction:{row:"flex-row","row-reverse":"flex-row-reverse",column:"flex-col","column-reverse":"flex-col-reverse"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap","wrap-reverse":"flex-wrap-reverse"},justify:{start:"justify-start",end:"justify-end",center:"justify-center",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},align:{start:"items-start",end:"items-end",center:"items-center",baseline:"items-baseline",stretch:"items-stretch"},gap:{0:"gap-0",1:"gap-xs",2:"gap-sm",3:"gap-sm",4:"gap-md",5:"gap-md",6:"gap-lg",8:"gap-xl",10:"gap-2xl",12:"gap-2xl",16:"gap-3xl",20:"gap-4xl",24:"gap-5xl"}},defaultVariants:{direction:"row",wrap:"nowrap",justify:"start",align:"start",gap:0}}),Nt=m.forwardRef(({className:e,direction:t,wrap:r,justify:n,align:o,gap:s,...i},d)=>a.jsx("div",{ref:d,className:l(jt({direction:t,wrap:r,justify:n,align:o,gap:s,className:e})),...i}));Nt.displayName="Flex";const Jr=({className:e,left:t,right:r,children:n})=>a.jsx("footer",{className:l("w-full border-t bg-background px-md py-lg",e),children:a.jsxs("div",{className:"flex w-full items-center justify-between",children:[t&&a.jsx("div",{className:"flex items-center",children:t}),n&&a.jsx("div",{className:"flex items-center",children:n}),r&&a.jsx("div",{className:"flex items-center",children:r})]})}),St=A.cva("grid",{variants:{cols:{1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6",12:"grid-cols-12",none:"grid-cols-none"},rows:{1:"grid-rows-1",2:"grid-rows-2",3:"grid-rows-3",4:"grid-rows-4",5:"grid-rows-5",6:"grid-rows-6",none:"grid-rows-none"},gap:{0:"gap-0",1:"gap-xs",2:"gap-sm",3:"gap-sm",4:"gap-md",5:"gap-md",6:"gap-lg",8:"gap-xl",10:"gap-2xl",12:"gap-2xl",16:"gap-3xl",20:"gap-4xl",24:"gap-5xl"},flow:{row:"grid-flow-row",col:"grid-flow-col",dense:"grid-flow-dense","row-dense":"grid-flow-row-dense","col-dense":"grid-flow-col-dense"}},defaultVariants:{cols:1,rows:"none",gap:0,flow:"row"}}),Ct=m.forwardRef(({className:e,cols:t,rows:r,gap:n,flow:o,...s},i)=>a.jsx("div",{ref:i,className:l(St({cols:t,rows:r,gap:n,flow:o,className:e})),...s}));Ct.displayName="Grid";const Kr=({dayLabel:e,nightLabel:t,dayDescription:r,nightDescription:n,className:o})=>{if(!e||e.trim()==="")throw new Error('ModeHero: "dayLabel" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('ModeHero: "nightLabel" prop is required and cannot be empty');if(!r||r.trim()==="")throw new Error('ModeHero: "dayDescription" prop is required and cannot be empty');if(!n||n.trim()==="")throw new Error('ModeHero: "nightDescription" prop is required and cannot be empty');return a.jsx("div",{className:l("rounded-lg bg-gradient-to-r from-blue-500 to-purple-600 p-8 text-white",o),children:a.jsxs("div",{className:"mx-auto max-w-4xl text-center",children:[a.jsx(H,{level:1,className:"mb-md text-4xl font-bold",children:"Tenerife Music Platform"}),a.jsx(C,{size:"xl",className:"mb-8",children:"Discover amazing music events in Tenerife"}),a.jsxs("div",{className:"grid grid-cols-1 gap-lg md:grid-cols-2",children:[a.jsx(K,{className:"border-white/20 bg-white/10 backdrop-blur-sm",children:a.jsxs(Z,{className:"p-lg",children:[a.jsx(H,{level:3,className:"mb-sm text-2xl font-semibold",children:e}),a.jsx(C,{className:"text-white/80",children:r})]})}),a.jsx(K,{className:"border-white/20 bg-white/10 backdrop-blur-sm",children:a.jsxs(Z,{className:"p-lg",children:[a.jsx(H,{level:3,className:"mb-sm text-2xl font-semibold",children:t}),a.jsx(C,{className:"text-white/80",children:n})]})})]})]})})},Zr=({className:e,left:t,right:r,children:n})=>a.jsxs("nav",{className:l("flex w-full items-center justify-between px-md py-sm",e),children:[t&&a.jsx("div",{className:"flex items-center",children:t}),n&&a.jsx("div",{className:"flex items-center",children:n}),r&&a.jsx("div",{className:"flex items-center",children:r})]}),ea=({className:e,children:t,padding:r="md",background:n="default",as:o="section"})=>{const s={none:"",sm:"py-md",md:"py-xl",lg:"py-3xl",xl:"py-4xl"},i={default:"",muted:"bg-muted",card:"bg-card"};return a.jsx(o,{className:l("w-full",s[r],i[n],e),children:t})},kt=A.cva("flex flex-col",{variants:{spacing:{0:"space-y-0",1:"space-y-xs",2:"space-y-sm",3:"space-y-sm",4:"space-y-md",5:"space-y-md",6:"space-y-lg",8:"space-y-xl",10:"space-y-2xl",12:"space-y-2xl",16:"space-y-3xl",20:"space-y-4xl",24:"space-y-5xl"},align:{start:"items-start",end:"items-end",center:"items-center",stretch:"items-stretch"},justify:{start:"justify-start",end:"justify-end",center:"justify-center",between:"justify-between",around:"justify-around"}},defaultVariants:{spacing:4,align:"stretch",justify:"start"}}),Mt=m.forwardRef(({className:e,spacing:t,align:r,justify:n,...o},s)=>a.jsx("div",{ref:s,className:l(kt({spacing:t,align:r,justify:n,className:e})),...o}));Mt.displayName="Stack";const Tt=M.Root,ta=M.Trigger,Dt=M.Portal,ra=M.Close,Pe=m.forwardRef(({className:e,...t},r)=>a.jsx(M.Overlay,{ref:r,className:l("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80",e),...t}));Pe.displayName=M.Overlay.displayName;const Re=m.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(Dt,{children:[a.jsx(Pe,{}),a.jsxs(M.Content,{ref:n,className:l("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-md border bg-background p-lg shadow-lg duration-200 sm:rounded-lg",e),...r,children:[t,a.jsxs(M.Close,{className:"absolute right-md top-md rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[a.jsx(E.X,{className:"h-4 w-4"}),a.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Re.displayName=M.Content.displayName;const qe=({className:e,...t})=>a.jsx("div",{className:l("flex flex-col space-y-xs text-center sm:text-left",e),...t});qe.displayName="ModalHeader";const Oe=({className:e,...t})=>a.jsx("div",{className:l("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-sm",e),...t});Oe.displayName="ModalFooter";const Fe=m.forwardRef(({className:e,...t},r)=>a.jsx(M.Title,{ref:r,className:l("text-lg font-semibold leading-none tracking-tight",e),...t}));Fe.displayName=M.Title.displayName;const Ve=m.forwardRef(({className:e,...t},r)=>a.jsx(M.Description,{ref:r,className:l("text-sm text-muted-foreground",e),...t}));Ve.displayName=M.Description.displayName;function Et({isOpen:e,onClose:t,onConfirm:r,title:n,description:o,confirmText:s,cancelText:i,loadingText:d,variant:c="default",isLoading:u=!1}){if(!n||n.trim()==="")throw new Error('ConfirmDialog: "title" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('ConfirmDialog: "description" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('ConfirmDialog: "confirmText" prop is required and cannot be empty');if(!i||i.trim()==="")throw new Error('ConfirmDialog: "cancelText" prop is required and cannot be empty');const f=()=>{r(),t()};return a.jsx(Tt,{open:e,onOpenChange:t,children:a.jsxs(Re,{children:[a.jsxs(qe,{children:[a.jsx(Fe,{children:n}),a.jsx(Ve,{children:o})]}),a.jsxs(Oe,{children:[a.jsx(L,{variant:"outline",onClick:t,disabled:u,children:i}),a.jsx(L,{variant:c,onClick:f,disabled:u,children:u&&d||s})]})]})})}function aa(){const[e,t]=m.useState({isOpen:!1}),r=m.useCallback(s=>{t({isOpen:!0,...s})},[]),n=m.useCallback(()=>{t({isOpen:!1})},[]),o=m.useMemo(()=>a.jsx(Et,{isOpen:e.isOpen,onClose:n,onConfirm:e.onConfirm||(()=>{}),title:e.title||"",description:e.description||"",confirmText:e.confirmText||"",cancelText:e.cancelText||"",loadingText:e.loadingText,variant:e.variant}),[e,n]);return{showConfirm:r,hideConfirm:n,ConfirmDialog:o}}function na(e,t){if(e==null)return{};var r={},n=Object.keys(e),o,s;for(s=0;s<n.length;s++)o=n[s],!(t.indexOf(o)>=0)&&(r[o]=e[o]);return r}var oa=["color"],sa=g.forwardRef(function(e,t){var r=e.color,n=r===void 0?"currentColor":r,o=na(e,oa);return g.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),g.createElement("path",{d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:n,fillRule:"evenodd",clipRule:"evenodd"}))});const ia=M.Root,da=M.Portal,Pt=m.forwardRef(({className:e,...t},r)=>a.jsx(M.Overlay,{ref:r,className:l("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80",e),...t}));Pt.displayName=M.Overlay.displayName;const Rt=m.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(da,{children:[a.jsx(Pt,{}),a.jsxs(M.Content,{ref:n,className:l("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-md border bg-background p-lg shadow-lg duration-200 sm:rounded-lg",e),...r,children:[t,a.jsxs(M.Close,{className:"absolute right-md top-md rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground","aria-label":"Close dialog",children:[a.jsx(sa,{className:"h-4 w-4","aria-hidden":"true"}),a.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Rt.displayName=M.Content.displayName;const qt=({className:e,...t})=>a.jsx("div",{className:l("flex flex-col space-y-xs text-center sm:text-left",e),...t});qt.displayName="DialogHeader";const Ot=m.forwardRef(({className:e,...t},r)=>a.jsx(M.Title,{ref:r,className:l("text-lg font-semibold leading-none tracking-tight",e),...t}));Ot.displayName=M.Title.displayName;const Ft=m.forwardRef(({className:e,...t},r)=>a.jsx(M.Description,{ref:r,className:l("text-sm text-muted-foreground",e),...t}));Ft.displayName=M.Description.displayName;const la=({isOpen:e,onClose:t,title:r,description:n,children:o,className:s,...i})=>a.jsx(ia,{open:e,onOpenChange:d=>!d&&t(),children:a.jsxs(Rt,{className:l("max-w-md",s),...i,children:[(r||n)&&a.jsxs(qt,{children:[r&&a.jsx(Ot,{children:r}),n&&a.jsx(Ft,{children:n})]}),o]})});function ca(e=!1){const[t,r]=g.useState({isOpen:e,data:void 0}),n=g.useCallback(i=>{r({isOpen:!0,data:i})},[]),o=g.useCallback(()=>{r(i=>({...i,isOpen:!1}))},[]),s=g.useCallback(()=>{r(i=>({...i,isOpen:!i.isOpen}))},[]);return{isOpen:t.isOpen,data:t.data,open:n,close:o,toggle:s}}function Vt(){const[e,t]=g.useState({}),r=g.useCallback((d,c)=>{t(u=>({...u,[d]:{isOpen:!0,data:c}}))},[]),n=g.useCallback(d=>{t(c=>({...c,[d]:{isOpen:!1,data:void 0}}))},[]),o=g.useCallback(d=>{t(c=>{var u,f;return{...c,[d]:{isOpen:!((u=c[d])!=null&&u.isOpen),data:(f=c[d])==null?void 0:f.data}}})},[]),s=g.useCallback(d=>{var c;return((c=e[d])==null?void 0:c.isOpen)||!1},[e]),i=g.useCallback(d=>{var c;return(c=e[d])==null?void 0:c.data},[e]);return{openModal:r,closeModal:n,toggleModal:o,isModalOpen:s,getModalData:i}}const Wt=g.createContext(void 0);function ua({children:e}){const t=Vt();return a.jsx(Wt.Provider,{value:t,children:e})}function It(){const e=g.useContext(Wt);if(e===void 0)throw new Error("useModalContext must be used within a ModalProvider");return e}function ma(e,t){return function(n){const{openModal:o,closeModal:s,toggleModal:i,isModalOpen:d,getModalData:c}=It(),u={[`${t}Open`]:()=>o(t),[`${t}Close`]:()=>s(t),[`${t}Toggle`]:()=>i(t),[`is${t}Open`]:d(t),[`${t}Data`]:c(t)};return a.jsx(e,{...n,...u})}}const fa=({isOpen:e,onClose:t,title:r,children:n,className:o,...s})=>e?a.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center",...s,children:[a.jsx("div",{className:"fixed inset-0 bg-black/50",onClick:t,"aria-label":"Close modal",role:"button",tabIndex:0,onKeyDown:i=>{(i.key==="Escape"||i.key==="Enter"||i.key===" ")&&(i.preventDefault(),t())}}),a.jsxs("div",{className:l("relative mx-4 w-full max-w-md rounded-lg border bg-card shadow-lg",o),children:[r&&a.jsx("div",{className:"border-b p-6",children:a.jsx("h2",{className:"text-lg font-semibold",children:r})}),a.jsx("div",{className:"p-6",children:n})]})]}):null,pa=k.Root,ha=k.Trigger,ga=k.Group,xa=k.Portal,ba=k.Sub,wa=k.RadioGroup,zt=m.forwardRef(({className:e,inset:t,children:r,...n},o)=>a.jsxs(k.SubTrigger,{ref:o,className:l("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",t&&"pl-8",e),...n,children:[r,a.jsx(E.ChevronRight,{className:"ml-auto h-4 w-4"})]}));zt.displayName=k.SubTrigger.displayName;const Lt=m.forwardRef(({className:e,...t},r)=>a.jsx(k.SubContent,{ref:r,className:l("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg",e),...t}));Lt.displayName=k.SubContent.displayName;const _t=m.forwardRef(({className:e,sideOffset:t=4,...r},n)=>a.jsx(k.Portal,{children:a.jsx(k.Content,{ref:n,sideOffset:t,className:l("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md",e),...r})}));_t.displayName=k.Content.displayName;const Bt=m.forwardRef(({className:e,inset:t,...r},n)=>a.jsx(k.Item,{ref:n,className:l("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",e),...r}));Bt.displayName=k.Item.displayName;const Yt=m.forwardRef(({className:e,children:t,checked:r,...n},o)=>a.jsxs(k.CheckboxItem,{ref:o,className:l("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),checked:r,...n,children:[a.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:a.jsx(k.ItemIndicator,{children:a.jsx(E.Check,{className:"h-4 w-4"})})}),t]}));Yt.displayName=k.CheckboxItem.displayName;const $t=m.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(k.RadioItem,{ref:n,className:l("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[a.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:a.jsx(k.ItemIndicator,{children:a.jsx(E.Circle,{className:"h-2 w-2 fill-current"})})}),t]}));$t.displayName=k.RadioItem.displayName;const Ht=m.forwardRef(({className:e,inset:t,...r},n)=>a.jsx(k.Label,{ref:n,className:l("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",e),...r}));Ht.displayName=k.Label.displayName;const At=m.forwardRef(({className:e,...t},r)=>a.jsx(k.Separator,{ref:r,className:l("-mx-1 my-1 h-px bg-muted",e),...t}));At.displayName=k.Separator.displayName;const Gt=({className:e,...t})=>a.jsx("span",{className:l("ml-auto text-xs tracking-widest opacity-60",e),...t});Gt.displayName="DropdownMenuShortcut";const Xt=m.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(_.Root,{ref:n,className:l("relative z-10 flex max-w-max flex-1 items-center justify-center",e),...r,children:[t,a.jsx(We,{})]}));Xt.displayName=_.Root.displayName;const Qt=m.forwardRef(({className:e,...t},r)=>a.jsx(_.List,{ref:r,className:l("group flex flex-1 list-none items-center justify-center space-x-xs",e),...t}));Qt.displayName=_.List.displayName;const ya=_.Item,Ut=A.cva("group inline-flex h-10 w-max items-center justify-center rounded-md bg-background px-md py-sm text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[active]:bg-accent/50 data-[state=open]:bg-accent/50"),Jt=m.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(_.Trigger,{ref:n,className:l(Ut(),"group",e),...r,children:[t," ",a.jsx(E.ChevronDown,{className:"relative top-[1px] ml-1 h-3 w-3 transition duration-200 group-data-[state=open]:rotate-180","aria-hidden":"true"})]}));Jt.displayName=_.Trigger.displayName;const Kt=m.forwardRef(({className:e,...t},r)=>a.jsx(_.Content,{ref:r,className:l("data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 left-0 top-0 w-full md:absolute md:w-auto",e),...t}));Kt.displayName=_.Content.displayName;const va=_.Link,We=m.forwardRef(({className:e,...t},r)=>a.jsx("div",{className:l("absolute left-0 top-full flex justify-center"),children:a.jsx(_.Viewport,{className:l("origin-top-center data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-lg md:w-[var(--radix-navigation-menu-viewport-width)]",e),ref:r,...t})}));We.displayName=_.Viewport.displayName;const Zt=m.forwardRef(({className:e,...t},r)=>a.jsx(_.Indicator,{ref:r,className:l("data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden",e),...t,children:a.jsx("div",{className:"relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md"})}));Zt.displayName=_.Indicator.displayName;const ja=le.Root,er=m.forwardRef(({className:e,...t},r)=>a.jsx(le.List,{ref:r,className:l("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",e),...t}));er.displayName=le.List.displayName;const tr=m.forwardRef(({className:e,...t},r)=>a.jsx(le.Trigger,{ref:r,className:l("inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",e),...t}));tr.displayName=le.Trigger.displayName;const rr=m.forwardRef(({className:e,...t},r)=>a.jsx(le.Content,{ref:r,className:l("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));rr.displayName=le.Content.displayName;function U(e){const t=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&t==="[object Date]"?new e.constructor(+e):typeof e=="number"||t==="[object Number]"||typeof e=="string"||t==="[object String]"?new Date(e):new Date(NaN)}function de(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}const ar=6048e5,Na=864e5;let Sa={};function ke(){return Sa}function ye(e,t){var d,c,u,f;const r=ke(),n=(t==null?void 0:t.weekStartsOn)??((c=(d=t==null?void 0:t.locale)==null?void 0:d.options)==null?void 0:c.weekStartsOn)??r.weekStartsOn??((f=(u=r.locale)==null?void 0:u.options)==null?void 0:f.weekStartsOn)??0,o=U(e),s=o.getDay(),i=(s<n?7:0)+s-n;return o.setDate(o.getDate()-i),o.setHours(0,0,0,0),o}function Se(e){return ye(e,{weekStartsOn:1})}function nr(e){const t=U(e),r=t.getFullYear(),n=de(e,0);n.setFullYear(r+1,0,4),n.setHours(0,0,0,0);const o=Se(n),s=de(e,0);s.setFullYear(r,0,4),s.setHours(0,0,0,0);const i=Se(s);return t.getTime()>=o.getTime()?r+1:t.getTime()>=i.getTime()?r:r-1}function Ue(e){const t=U(e);return t.setHours(0,0,0,0),t}function Je(e){const t=U(e),r=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return r.setUTCFullYear(t.getFullYear()),+e-+r}function Ca(e,t){const r=Ue(e),n=Ue(t),o=+r-Je(r),s=+n-Je(n);return Math.round((o-s)/Na)}function ka(e){const t=nr(e),r=de(e,0);return r.setFullYear(t,0,4),r.setHours(0,0,0,0),Se(r)}function Ma(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function Ta(e){if(!Ma(e)&&typeof e!="number")return!1;const t=U(e);return!isNaN(Number(t))}function Da(e){const t=U(e),r=de(e,0);return r.setFullYear(t.getFullYear(),0,1),r.setHours(0,0,0,0),r}const Ea={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Pa=(e,t,r)=>{let n;const o=Ea[e];return typeof o=="string"?n=o:t===1?n=o.one:n=o.other.replace("{{count}}",t.toString()),r!=null&&r.addSuffix?r.comparison&&r.comparison>0?"in "+n:n+" ago":n};function De(e){return(t={})=>{const r=t.width?String(t.width):e.defaultWidth;return e.formats[r]||e.formats[e.defaultWidth]}}const Ra={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},qa={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Oa={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Fa={date:De({formats:Ra,defaultWidth:"full"}),time:De({formats:qa,defaultWidth:"full"}),dateTime:De({formats:Oa,defaultWidth:"full"})},Va={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Wa=(e,t,r,n)=>Va[e];function be(e){return(t,r)=>{const n=r!=null&&r.context?String(r.context):"standalone";let o;if(n==="formatting"&&e.formattingValues){const i=e.defaultFormattingWidth||e.defaultWidth,d=r!=null&&r.width?String(r.width):i;o=e.formattingValues[d]||e.formattingValues[i]}else{const i=e.defaultWidth,d=r!=null&&r.width?String(r.width):e.defaultWidth;o=e.values[d]||e.values[i]}const s=e.argumentCallback?e.argumentCallback(t):t;return o[s]}}const Ia={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},za={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},La={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},_a={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Ba={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Ya={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},$a=(e,t)=>{const r=Number(e),n=r%100;if(n>20||n<10)switch(n%10){case 1:return r+"st";case 2:return r+"nd";case 3:return r+"rd"}return r+"th"},Ha={ordinalNumber:$a,era:be({values:Ia,defaultWidth:"wide"}),quarter:be({values:za,defaultWidth:"wide",argumentCallback:e=>e-1}),month:be({values:La,defaultWidth:"wide"}),day:be({values:_a,defaultWidth:"wide"}),dayPeriod:be({values:Ba,defaultWidth:"wide",formattingValues:Ya,defaultFormattingWidth:"wide"})};function we(e){return(t,r={})=>{const n=r.width,o=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth],s=t.match(o);if(!s)return null;const i=s[0],d=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(d)?Ga(d,p=>p.test(i)):Aa(d,p=>p.test(i));let u;u=e.valueCallback?e.valueCallback(c):c,u=r.valueCallback?r.valueCallback(u):u;const f=t.slice(i.length);return{value:u,rest:f}}}function Aa(e,t){for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t(e[r]))return r}function Ga(e,t){for(let r=0;r<e.length;r++)if(t(e[r]))return r}function Xa(e){return(t,r={})=>{const n=t.match(e.matchPattern);if(!n)return null;const o=n[0],s=t.match(e.parsePattern);if(!s)return null;let i=e.valueCallback?e.valueCallback(s[0]):s[0];i=r.valueCallback?r.valueCallback(i):i;const d=t.slice(o.length);return{value:i,rest:d}}}const Qa=/^(\d+)(th|st|nd|rd)?/i,Ua=/\d+/i,Ja={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},Ka={any:[/^b/i,/^(a|c)/i]},Za={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},en={any:[/1/i,/2/i,/3/i,/4/i]},tn={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},rn={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},an={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},nn={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},on={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},sn={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},dn={ordinalNumber:Xa({matchPattern:Qa,parsePattern:Ua,valueCallback:e=>parseInt(e,10)}),era:we({matchPatterns:Ja,defaultMatchWidth:"wide",parsePatterns:Ka,defaultParseWidth:"any"}),quarter:we({matchPatterns:Za,defaultMatchWidth:"wide",parsePatterns:en,defaultParseWidth:"any",valueCallback:e=>e+1}),month:we({matchPatterns:tn,defaultMatchWidth:"wide",parsePatterns:rn,defaultParseWidth:"any"}),day:we({matchPatterns:an,defaultMatchWidth:"wide",parsePatterns:nn,defaultParseWidth:"any"}),dayPeriod:we({matchPatterns:on,defaultMatchWidth:"any",parsePatterns:sn,defaultParseWidth:"any"})},ln={code:"en-US",formatDistance:Pa,formatLong:Fa,formatRelative:Wa,localize:Ha,match:dn,options:{weekStartsOn:0,firstWeekContainsDate:1}};function cn(e){const t=U(e);return Ca(t,Da(t))+1}function un(e){const t=U(e),r=+Se(t)-+ka(t);return Math.round(r/ar)+1}function or(e,t){var f,p,v,h;const r=U(e),n=r.getFullYear(),o=ke(),s=(t==null?void 0:t.firstWeekContainsDate)??((p=(f=t==null?void 0:t.locale)==null?void 0:f.options)==null?void 0:p.firstWeekContainsDate)??o.firstWeekContainsDate??((h=(v=o.locale)==null?void 0:v.options)==null?void 0:h.firstWeekContainsDate)??1,i=de(e,0);i.setFullYear(n+1,0,s),i.setHours(0,0,0,0);const d=ye(i,t),c=de(e,0);c.setFullYear(n,0,s),c.setHours(0,0,0,0);const u=ye(c,t);return r.getTime()>=d.getTime()?n+1:r.getTime()>=u.getTime()?n:n-1}function mn(e,t){var d,c,u,f;const r=ke(),n=(t==null?void 0:t.firstWeekContainsDate)??((c=(d=t==null?void 0:t.locale)==null?void 0:d.options)==null?void 0:c.firstWeekContainsDate)??r.firstWeekContainsDate??((f=(u=r.locale)==null?void 0:u.options)==null?void 0:f.firstWeekContainsDate)??1,o=or(e,t),s=de(e,0);return s.setFullYear(o,0,n),s.setHours(0,0,0,0),ye(s,t)}function fn(e,t){const r=U(e),n=+ye(r,t)-+mn(r,t);return Math.round(n/ar)+1}function N(e,t){const r=e<0?"-":"",n=Math.abs(e).toString().padStart(t,"0");return r+n}const ae={y(e,t){const r=e.getFullYear(),n=r>0?r:1-r;return N(t==="yy"?n%100:n,t.length)},M(e,t){const r=e.getMonth();return t==="M"?String(r+1):N(r+1,2)},d(e,t){return N(e.getDate(),t.length)},a(e,t){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.toUpperCase();case"aaa":return r;case"aaaaa":return r[0];case"aaaa":default:return r==="am"?"a.m.":"p.m."}},h(e,t){return N(e.getHours()%12||12,t.length)},H(e,t){return N(e.getHours(),t.length)},m(e,t){return N(e.getMinutes(),t.length)},s(e,t){return N(e.getSeconds(),t.length)},S(e,t){const r=t.length,n=e.getMilliseconds(),o=Math.trunc(n*Math.pow(10,r-3));return N(o,t.length)}},ue={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Ke={G:function(e,t,r){const n=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return r.era(n,{width:"abbreviated"});case"GGGGG":return r.era(n,{width:"narrow"});case"GGGG":default:return r.era(n,{width:"wide"})}},y:function(e,t,r){if(t==="yo"){const n=e.getFullYear(),o=n>0?n:1-n;return r.ordinalNumber(o,{unit:"year"})}return ae.y(e,t)},Y:function(e,t,r,n){const o=or(e,n),s=o>0?o:1-o;if(t==="YY"){const i=s%100;return N(i,2)}return t==="Yo"?r.ordinalNumber(s,{unit:"year"}):N(s,t.length)},R:function(e,t){const r=nr(e);return N(r,t.length)},u:function(e,t){const r=e.getFullYear();return N(r,t.length)},Q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(n);case"QQ":return N(n,2);case"Qo":return r.ordinalNumber(n,{unit:"quarter"});case"QQQ":return r.quarter(n,{width:"abbreviated",context:"formatting"});case"QQQQQ":return r.quarter(n,{width:"narrow",context:"formatting"});case"QQQQ":default:return r.quarter(n,{width:"wide",context:"formatting"})}},q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(n);case"qq":return N(n,2);case"qo":return r.ordinalNumber(n,{unit:"quarter"});case"qqq":return r.quarter(n,{width:"abbreviated",context:"standalone"});case"qqqqq":return r.quarter(n,{width:"narrow",context:"standalone"});case"qqqq":default:return r.quarter(n,{width:"wide",context:"standalone"})}},M:function(e,t,r){const n=e.getMonth();switch(t){case"M":case"MM":return ae.M(e,t);case"Mo":return r.ordinalNumber(n+1,{unit:"month"});case"MMM":return r.month(n,{width:"abbreviated",context:"formatting"});case"MMMMM":return r.month(n,{width:"narrow",context:"formatting"});case"MMMM":default:return r.month(n,{width:"wide",context:"formatting"})}},L:function(e,t,r){const n=e.getMonth();switch(t){case"L":return String(n+1);case"LL":return N(n+1,2);case"Lo":return r.ordinalNumber(n+1,{unit:"month"});case"LLL":return r.month(n,{width:"abbreviated",context:"standalone"});case"LLLLL":return r.month(n,{width:"narrow",context:"standalone"});case"LLLL":default:return r.month(n,{width:"wide",context:"standalone"})}},w:function(e,t,r,n){const o=fn(e,n);return t==="wo"?r.ordinalNumber(o,{unit:"week"}):N(o,t.length)},I:function(e,t,r){const n=un(e);return t==="Io"?r.ordinalNumber(n,{unit:"week"}):N(n,t.length)},d:function(e,t,r){return t==="do"?r.ordinalNumber(e.getDate(),{unit:"date"}):ae.d(e,t)},D:function(e,t,r){const n=cn(e);return t==="Do"?r.ordinalNumber(n,{unit:"dayOfYear"}):N(n,t.length)},E:function(e,t,r){const n=e.getDay();switch(t){case"E":case"EE":case"EEE":return r.day(n,{width:"abbreviated",context:"formatting"});case"EEEEE":return r.day(n,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(n,{width:"short",context:"formatting"});case"EEEE":default:return r.day(n,{width:"wide",context:"formatting"})}},e:function(e,t,r,n){const o=e.getDay(),s=(o-n.weekStartsOn+8)%7||7;switch(t){case"e":return String(s);case"ee":return N(s,2);case"eo":return r.ordinalNumber(s,{unit:"day"});case"eee":return r.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return r.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(o,{width:"short",context:"formatting"});case"eeee":default:return r.day(o,{width:"wide",context:"formatting"})}},c:function(e,t,r,n){const o=e.getDay(),s=(o-n.weekStartsOn+8)%7||7;switch(t){case"c":return String(s);case"cc":return N(s,t.length);case"co":return r.ordinalNumber(s,{unit:"day"});case"ccc":return r.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return r.day(o,{width:"narrow",context:"standalone"});case"cccccc":return r.day(o,{width:"short",context:"standalone"});case"cccc":default:return r.day(o,{width:"wide",context:"standalone"})}},i:function(e,t,r){const n=e.getDay(),o=n===0?7:n;switch(t){case"i":return String(o);case"ii":return N(o,t.length);case"io":return r.ordinalNumber(o,{unit:"day"});case"iii":return r.day(n,{width:"abbreviated",context:"formatting"});case"iiiii":return r.day(n,{width:"narrow",context:"formatting"});case"iiiiii":return r.day(n,{width:"short",context:"formatting"});case"iiii":default:return r.day(n,{width:"wide",context:"formatting"})}},a:function(e,t,r){const o=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"aaa":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return r.dayPeriod(o,{width:"narrow",context:"formatting"});case"aaaa":default:return r.dayPeriod(o,{width:"wide",context:"formatting"})}},b:function(e,t,r){const n=e.getHours();let o;switch(n===12?o=ue.noon:n===0?o=ue.midnight:o=n/12>=1?"pm":"am",t){case"b":case"bb":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"bbb":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return r.dayPeriod(o,{width:"narrow",context:"formatting"});case"bbbb":default:return r.dayPeriod(o,{width:"wide",context:"formatting"})}},B:function(e,t,r){const n=e.getHours();let o;switch(n>=17?o=ue.evening:n>=12?o=ue.afternoon:n>=4?o=ue.morning:o=ue.night,t){case"B":case"BB":case"BBB":return r.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"BBBBB":return r.dayPeriod(o,{width:"narrow",context:"formatting"});case"BBBB":default:return r.dayPeriod(o,{width:"wide",context:"formatting"})}},h:function(e,t,r){if(t==="ho"){let n=e.getHours()%12;return n===0&&(n=12),r.ordinalNumber(n,{unit:"hour"})}return ae.h(e,t)},H:function(e,t,r){return t==="Ho"?r.ordinalNumber(e.getHours(),{unit:"hour"}):ae.H(e,t)},K:function(e,t,r){const n=e.getHours()%12;return t==="Ko"?r.ordinalNumber(n,{unit:"hour"}):N(n,t.length)},k:function(e,t,r){let n=e.getHours();return n===0&&(n=24),t==="ko"?r.ordinalNumber(n,{unit:"hour"}):N(n,t.length)},m:function(e,t,r){return t==="mo"?r.ordinalNumber(e.getMinutes(),{unit:"minute"}):ae.m(e,t)},s:function(e,t,r){return t==="so"?r.ordinalNumber(e.getSeconds(),{unit:"second"}):ae.s(e,t)},S:function(e,t){return ae.S(e,t)},X:function(e,t,r){const n=e.getTimezoneOffset();if(n===0)return"Z";switch(t){case"X":return et(n);case"XXXX":case"XX":return ie(n);case"XXXXX":case"XXX":default:return ie(n,":")}},x:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"x":return et(n);case"xxxx":case"xx":return ie(n);case"xxxxx":case"xxx":default:return ie(n,":")}},O:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Ze(n,":");case"OOOO":default:return"GMT"+ie(n,":")}},z:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Ze(n,":");case"zzzz":default:return"GMT"+ie(n,":")}},t:function(e,t,r){const n=Math.trunc(e.getTime()/1e3);return N(n,t.length)},T:function(e,t,r){const n=e.getTime();return N(n,t.length)}};function Ze(e,t=""){const r=e>0?"-":"+",n=Math.abs(e),o=Math.trunc(n/60),s=n%60;return s===0?r+String(o):r+String(o)+t+N(s,2)}function et(e,t){return e%60===0?(e>0?"-":"+")+N(Math.abs(e)/60,2):ie(e,t)}function ie(e,t=""){const r=e>0?"-":"+",n=Math.abs(e),o=N(Math.trunc(n/60),2),s=N(n%60,2);return r+o+t+s}const tt=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},sr=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},pn=(e,t)=>{const r=e.match(/(P+)(p+)?/)||[],n=r[1],o=r[2];if(!o)return tt(e,t);let s;switch(n){case"P":s=t.dateTime({width:"short"});break;case"PP":s=t.dateTime({width:"medium"});break;case"PPP":s=t.dateTime({width:"long"});break;case"PPPP":default:s=t.dateTime({width:"full"});break}return s.replace("{{date}}",tt(n,t)).replace("{{time}}",sr(o,t))},hn={p:sr,P:pn},gn=/^D+$/,xn=/^Y+$/,bn=["D","DD","YY","YYYY"];function wn(e){return gn.test(e)}function yn(e){return xn.test(e)}function vn(e,t,r){const n=jn(e,t,r);if(console.warn(n),bn.includes(e))throw new RangeError(n)}function jn(e,t,r){const n=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${n} to the input \`${r}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Nn=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Sn=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Cn=/^'([^]*?)'?$/,kn=/''/g,Mn=/[a-zA-Z]/;function Ee(e,t,r){var f,p,v,h;const n=ke(),o=n.locale??ln,s=n.firstWeekContainsDate??((p=(f=n.locale)==null?void 0:f.options)==null?void 0:p.firstWeekContainsDate)??1,i=n.weekStartsOn??((h=(v=n.locale)==null?void 0:v.options)==null?void 0:h.weekStartsOn)??0,d=U(e);if(!Ta(d))throw new RangeError("Invalid time value");let c=t.match(Sn).map(x=>{const b=x[0];if(b==="p"||b==="P"){const S=hn[b];return S(x,o.formatLong)}return x}).join("").match(Nn).map(x=>{if(x==="''")return{isToken:!1,value:"'"};const b=x[0];if(b==="'")return{isToken:!1,value:Tn(x)};if(Ke[b])return{isToken:!0,value:x};if(b.match(Mn))throw new RangeError("Format string contains an unescaped latin alphabet character `"+b+"`");return{isToken:!1,value:x}});o.localize.preprocessor&&(c=o.localize.preprocessor(d,c));const u={firstWeekContainsDate:s,weekStartsOn:i,locale:o};return c.map(x=>{if(!x.isToken)return x.value;const b=x.value;(yn(b)||wn(b))&&vn(b,t,String(e));const S=Ke[b[0]];return S(d,b,o.localize,u)}).join("")}function Tn(e){const t=e.match(Cn);return t?t[1].replace(kn,"'"):e}function Ie({value:e,onChange:t,placeholder:r,selectDateRangeLabel:n,clearLabel:o,closeLabel:s,className:i,disabled:d=!1}){if(!r||r.trim()==="")throw new Error('DateRangePicker: "placeholder" prop is required and cannot be empty');if(!n||n.trim()==="")throw new Error('DateRangePicker: "selectDateRangeLabel" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('DateRangePicker: "clearLabel" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('DateRangePicker: "closeLabel" prop is required and cannot be empty');const[c,u]=m.useState(!1),f=h=>h.from?h.to?`${Ee(h.from,"LLL dd, y")} - ${Ee(h.to,"LLL dd, y")}`:Ee(h.from,"LLL dd, y"):r,p=h=>{if(!h){t({from:void 0,to:void 0});return}!e.from||e.from&&e.to?t({from:h,to:void 0}):e.from&&!e.to&&(h<e.from?t({from:h,to:e.from}):t({from:e.from,to:h}),u(!1))},v=()=>{t({from:void 0,to:void 0})};return a.jsxs("div",{className:l("relative",i),children:[a.jsxs(L,{variant:"outline",className:l("w-full justify-start text-left font-normal",!e.from&&"text-muted-foreground"),onClick:()=>u(!c),disabled:d,children:[a.jsx(E.Calendar,{className:"mr-sm h-4 w-4"}),f(e)]}),c&&a.jsx("div",{className:"absolute left-0 top-full z-50 mt-xs w-full rounded-md border bg-popover p-sm shadow-lg",children:a.jsxs("div",{className:"space-y-sm",children:[a.jsx("div",{className:"text-sm font-medium",children:n}),a.jsxs("div",{className:"grid grid-cols-7 gap-xs text-xs",children:[["S","M","T","W","T","F","S"].map(h=>a.jsx("div",{className:"p-sm text-center font-medium text-muted-foreground",children:h},h)),Array.from({length:35},(h,x)=>{const b=new Date;b.setDate(b.getDate()-b.getDay()+x);const S=e.from&&b.toDateString()===e.from.toDateString()||e.to&&b.toDateString()===e.to.toDateString(),T=e.from&&e.to&&b>e.from&&b<e.to;return a.jsx("button",{className:l("h-8 w-8 rounded text-sm hover:bg-accent",S&&"bg-primary text-primary-foreground",T&&"bg-accent/50"),onClick:()=>p(b),children:b.getDate()},x)})]}),a.jsxs("div",{className:"flex justify-between pt-sm",children:[a.jsx(L,{variant:"outline",size:"sm",onClick:v,children:o}),a.jsx(L,{variant:"outline",size:"sm",onClick:()=>u(!1),children:s})]})]})})]})}function Dn(e={from:void 0,to:void 0}){const[t,r]=m.useState(e),n=m.useCallback(i=>{r(i)},[]),o=m.useCallback(()=>{r({from:void 0,to:void 0})},[]),s=t.from&&t.to;return{range:t,setDateRange:n,clearRange:o,isRangeComplete:s}}const ir=P.Root,En=P.Group,dr=P.Value,ze=m.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(P.Trigger,{ref:n,className:l("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-sm py-sm text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...r,children:[t,a.jsx(P.Icon,{asChild:!0,children:a.jsx(E.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));ze.displayName=P.Trigger.displayName;const Le=m.forwardRef(({className:e,...t},r)=>a.jsx(P.ScrollUpButton,{ref:r,className:l("flex cursor-default items-center justify-center py-xs",e),...t,children:a.jsx(E.ChevronUp,{className:"h-4 w-4"})}));Le.displayName=P.ScrollUpButton.displayName;const _e=m.forwardRef(({className:e,...t},r)=>a.jsx(P.ScrollDownButton,{ref:r,className:l("flex cursor-default items-center justify-center py-xs",e),...t,children:a.jsx(E.ChevronDown,{className:"h-4 w-4"})}));_e.displayName=P.ScrollDownButton.displayName;const Be=m.forwardRef(({className:e,children:t,position:r="popper",...n},o)=>a.jsx(P.Portal,{children:a.jsxs(P.Content,{ref:o,className:l("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md",r==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:r,...n,children:[a.jsx(Le,{}),a.jsx(P.Viewport,{className:l("p-xs",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),a.jsx(_e,{})]})}));Be.displayName=P.Content.displayName;const lr=m.forwardRef(({className:e,...t},r)=>a.jsx(P.Label,{ref:r,className:l("py-xs pl-8 pr-sm text-sm font-semibold",e),...t}));lr.displayName=P.Label.displayName;const Ye=m.forwardRef(({className:e,children:t,...r},n)=>a.jsxs(P.Item,{ref:n,className:l("relative flex w-full cursor-default select-none items-center rounded-sm py-xs pl-8 pr-sm text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[a.jsx("span",{className:"absolute left-sm flex h-3.5 w-3.5 items-center justify-center",children:a.jsx(P.ItemIndicator,{children:a.jsx(E.Check,{className:"h-4 w-4"})})}),a.jsx(P.ItemText,{children:t})]}));Ye.displayName=P.Item.displayName;const cr=m.forwardRef(({className:e,...t},r)=>a.jsx(P.Separator,{ref:r,className:l("-mx-xs my-xs h-px bg-muted",e),...t}));cr.displayName=P.Separator.displayName;function ve({value:e,onValueChange:t,options:r,placeholder:n,label:o,className:s}){if(!n||n.trim()==="")throw new Error('FilterSelect: "placeholder" prop is required and cannot be empty');const i=r.filter(d=>d.value!==""&&d.value!==null);return a.jsxs("div",{className:l("space-y-sm",s),children:[o&&a.jsx("label",{className:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:o}),a.jsxs(ir,{value:e||void 0,onValueChange:t,children:[a.jsx(ze,{children:a.jsx(dr,{placeholder:n})}),a.jsx(Be,{children:i.map(d=>!d.value||d.value===""?null:a.jsx(Ye,{value:d.value,children:a.jsxs("div",{className:"flex w-full items-center justify-between",children:[a.jsx("span",{children:d.label}),d.count!==void 0&&a.jsxs("span",{className:"ml-sm text-xs text-muted-foreground",children:["(",d.count,")"]})]})},d.value))})]})]})}function ur({value:e,onChange:t,min:r,max:n,step:o,currency:s,priceRangeLabel:i,minLabel:d,maxLabel:c,anyPriceLabel:u,clearLabel:f,minAriaLabel:p,maxAriaLabel:v,className:h}){var G,z;if(typeof r!="number"||isNaN(r))throw new Error('PriceRangeSlider: "min" prop is required and must be a number');if(typeof n!="number"||isNaN(n))throw new Error('PriceRangeSlider: "max" prop is required and must be a number');if(typeof o!="number"||isNaN(o)||o<=0)throw new Error('PriceRangeSlider: "step" prop is required and must be a positive number');if(!s||s.trim()==="")throw new Error('PriceRangeSlider: "currency" prop is required and cannot be empty');if(!i||i.trim()==="")throw new Error('PriceRangeSlider: "priceRangeLabel" prop is required and cannot be empty');if(!d||d.trim()==="")throw new Error('PriceRangeSlider: "minLabel" prop is required and cannot be empty');if(!c||c.trim()==="")throw new Error('PriceRangeSlider: "maxLabel" prop is required and cannot be empty');if(!u||u.trim()==="")throw new Error('PriceRangeSlider: "anyPriceLabel" prop is required and cannot be empty');if(!f||f.trim()==="")throw new Error('PriceRangeSlider: "clearLabel" prop is required and cannot be empty');if(!p||p.trim()==="")throw new Error('PriceRangeSlider: "minAriaLabel" prop is required and cannot be empty');if(!v||v.trim()==="")throw new Error('PriceRangeSlider: "maxAriaLabel" prop is required and cannot be empty');const x=m.useId(),b=m.useId(),[S,T]=m.useState(((G=e.min)==null?void 0:G.toString())||""),[w,y]=m.useState(((z=e.max)==null?void 0:z.toString())||"");m.useEffect(()=>{var R,q;T(((R=e.min)==null?void 0:R.toString())||""),y(((q=e.max)==null?void 0:q.toString())||"")},[e.min,e.max]);const B=R=>{const q=R.target.value;T(q);const D=q===""?null:Math.max(r,parseInt(q)||r),O=e.max?Math.min(n,e.max):null;D!==null&&O!==null&&D>O?t({min:D,max:D}):t({min:D,max:O})},W=R=>{const q=R.target.value;y(q);const D=q===""?null:Math.min(n,parseInt(q)||n),O=e.min?Math.max(r,e.min):null;O!==null&&D!==null&&O>D?t({min:D,max:D}):t({min:O,max:D})},V=(R,q)=>{if(R==="min"){const D=Math.max(r,Math.min(n,q)),O=e.max?Math.max(D,e.max):null;t({min:D,max:O})}else{const D=Math.max(r,Math.min(n,q)),O=e.min?Math.min(D,e.min):null;t({min:O,max:D})}},Y=()=>{T(""),y(""),t({min:null,max:null})},F=e.min||r,I=e.max||n;return a.jsxs("div",{className:l("space-y-md",h),children:[a.jsxs("div",{className:"space-y-sm",children:[a.jsx(ne,{children:i}),a.jsxs("div",{className:"flex items-center space-x-sm",children:[a.jsxs("div",{className:"flex-1",children:[a.jsx(ne,{htmlFor:x,className:"text-xs text-muted-foreground",children:d}),a.jsxs("div",{className:"relative",children:[a.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground",children:s}),a.jsx(pe,{id:x,name:`min-price-${x}`,type:"number",value:S,onChange:B,placeholder:r.toString(),min:r,max:n,step:o,className:"pl-8"})]})]}),a.jsxs("div",{className:"flex-1",children:[a.jsx(ne,{htmlFor:b,className:"text-xs text-muted-foreground",children:c}),a.jsxs("div",{className:"relative",children:[a.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground",children:s}),a.jsx(pe,{id:b,name:`max-price-${b}`,type:"number",value:w,onChange:W,placeholder:n.toString(),min:r,max:n,step:o,className:"pl-8"})]})]})]})]}),a.jsxs("div",{className:"space-y-sm",children:[a.jsxs("div",{className:"relative",children:[a.jsx("input",{type:"range",id:`${x}-slider`,name:`min-price-slider-${x}`,min:r,max:n,step:o,value:F,onChange:R=>V("min",parseInt(R.target.value)),className:"slider-thumb absolute h-2 w-full cursor-pointer appearance-none bg-transparent","aria-label":p}),a.jsx("input",{type:"range",id:`${b}-slider`,name:`max-price-slider-${b}`,min:r,max:n,step:o,value:I,onChange:R=>V("max",parseInt(R.target.value)),className:"slider-thumb absolute h-2 w-full cursor-pointer appearance-none bg-transparent","aria-label":v}),a.jsx("div",{className:"h-2 rounded-full bg-muted",children:a.jsx("div",{className:"h-2 rounded-full bg-primary",style:{left:`${(F-r)/(n-r)*100}%`,width:`${(I-F)/(n-r)*100}%`}})})]}),a.jsxs("div",{className:"flex justify-between text-xs text-muted-foreground",children:[a.jsxs("span",{children:[s,r]}),a.jsxs("span",{children:[s,n]})]})]}),a.jsxs("div",{className:"flex items-center justify-between",children:[a.jsx("span",{className:"text-sm text-muted-foreground",children:e.min!==null||e.max!==null?`${s}${e.min||r} - ${s}${e.max||n}`:u}),a.jsx("button",{type:"button",onClick:Y,className:"text-xs text-muted-foreground hover:text-foreground",children:f})]})]})}function Pn(e={min:null,max:null}){const[t,r]=m.useState(e),n=m.useCallback(i=>{r(i)},[]),o=m.useCallback(()=>{r({min:null,max:null})},[]),s=t.min!==null||t.max!==null;return{range:t,setPriceRange:n,clearRange:o,isRangeSet:s}}function Rn(e,t){const[r,n]=g.useState(e);return g.useEffect(()=>{const o=setTimeout(()=>{n(e)},t);return()=>{clearTimeout(o)}},[e,t]),r}function Me({value:e,onChange:t,onClear:r,placeholder:n,showClearButton:o=!0,debounceMs:s=300,className:i,id:d,name:c,...u}){const f=m.useId(),p=d||f,v=c||`search-input-${p}`;if(!n||n.trim()==="")throw new Error('SearchInput: "placeholder" prop is required and cannot be empty');const[h,x]=m.useState(e),b=Rn(h,s);m.useEffect(()=>{x(e)},[e]),m.useEffect(()=>{t(b)},[b,t]);const S=w=>{const y=w.target.value;x(y)},T=()=>{x(""),t(""),r==null||r()};return a.jsxs("div",{className:l("relative",i),children:[a.jsx(E.Search,{className:"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground","aria-hidden":"true"}),a.jsx(pe,{...u,id:p,name:v,value:h,onChange:S,placeholder:n,className:"pl-10 pr-10"}),o&&h&&a.jsx(L,{type:"button",variant:"ghost",size:"icon",className:"absolute right-1 top-1/2 h-6 w-6 -translate-y-1/2",onClick:T,"aria-label":"Clear search",children:a.jsx(E.X,{className:"h-3 w-3","aria-hidden":"true"})})]})}function qn(e=""){const[t,r]=m.useState(e),[n,o]=m.useState(e);m.useEffect(()=>{const i=setTimeout(()=>{o(t)},300);return()=>clearTimeout(i)},[t]);const s=m.useCallback(()=>{r(""),o("")},[]);return{search:t,debouncedSearch:n,setSearch:r,clearSearch:s}}const On=()=>(console.warn("useFilterManager: This is a mock implementation. Use the actual hook from apps/web/src/stores/useFiltersStore"),{search:"",category:"",tags:[],dateRange:{start:null,end:null},priceRange:{min:null,max:null},sortBy:"date",sortOrder:"desc",setSearch:e=>{},setCategory:e=>{},setTags:e=>{},addTag:e=>{},removeTag:e=>{},setDateRange:(e,t)=>{},setPriceRange:(e,t)=>{},setSorting:(e,t)=>{},resetFilters:()=>{},getActiveFiltersCount:()=>0,getFilterSummary:()=>[],hasActiveFilters:!1,clearAllFilters:()=>{}});function mr({className:e,showSearch:t=!0,showCategory:r=!0,showDateRange:n=!0,showPriceRange:o=!0,showSorting:s=!0,categories:i=[],sortOptions:d,searchPlaceholder:c,filtersLabel:u,clearAllLabel:f,categoryLabel:p,allCategoriesLabel:v,dateRangeLabel:h,anyDateLabel:x,dateSelectDateRangeLabel:b,dateClearLabel:S,dateCloseLabel:T,sortByLabel:w,sortAscLabel:y,sortDescLabel:B,sortByPlaceholder:W,activeFiltersLabel:V,priceRangeLabel:Y,priceMinLabel:F,priceMaxLabel:I,priceAnyLabel:G,priceClearLabel:z,priceMinAriaLabel:R,priceMaxAriaLabel:q,onFiltersChange:D}){if(!d||d.length===0)throw new Error('FilterBar: "sortOptions" prop is required and cannot be empty');if(!c||c.trim()==="")throw new Error('FilterBar: "searchPlaceholder" prop is required and cannot be empty');if(!u||u.trim()==="")throw new Error('FilterBar: "filtersLabel" prop is required and cannot be empty');if(!f||f.trim()==="")throw new Error('FilterBar: "clearAllLabel" prop is required and cannot be empty');if(!p||p.trim()==="")throw new Error('FilterBar: "categoryLabel" prop is required and cannot be empty');if(!v||v.trim()==="")throw new Error('FilterBar: "allCategoriesLabel" prop is required and cannot be empty');if(!h||h.trim()==="")throw new Error('FilterBar: "dateRangeLabel" prop is required and cannot be empty');if(!x||x.trim()==="")throw new Error('FilterBar: "anyDateLabel" prop is required and cannot be empty');if(!b||b.trim()==="")throw new Error('FilterBar: "dateSelectDateRangeLabel" prop is required and cannot be empty');if(!S||S.trim()==="")throw new Error('FilterBar: "dateClearLabel" prop is required and cannot be empty');if(!T||T.trim()==="")throw new Error('FilterBar: "dateCloseLabel" prop is required and cannot be empty');if(!w||w.trim()==="")throw new Error('FilterBar: "sortByLabel" prop is required and cannot be empty');if(!y||y.trim()==="")throw new Error('FilterBar: "sortAscLabel" prop is required and cannot be empty');if(!B||B.trim()==="")throw new Error('FilterBar: "sortDescLabel" prop is required and cannot be empty');if(!W||W.trim()==="")throw new Error('FilterBar: "sortByPlaceholder" prop is required and cannot be empty');if(!V||V.trim()==="")throw new Error('FilterBar: "activeFiltersLabel" prop is required and cannot be empty');if(!Y||Y.trim()==="")throw new Error('FilterBar: "priceRangeLabel" prop is required and cannot be empty');if(!F||F.trim()==="")throw new Error('FilterBar: "priceMinLabel" prop is required and cannot be empty');if(!I||I.trim()==="")throw new Error('FilterBar: "priceMaxLabel" prop is required and cannot be empty');if(!G||G.trim()==="")throw new Error('FilterBar: "priceAnyLabel" prop is required and cannot be empty');if(!z||z.trim()==="")throw new Error('FilterBar: "priceClearLabel" prop is required and cannot be empty');if(!R||R.trim()==="")throw new Error('FilterBar: "priceMinAriaLabel" prop is required and cannot be empty');if(!q||q.trim()==="")throw new Error('FilterBar: "priceMaxAriaLabel" prop is required and cannot be empty');const{search:O,category:he,dateRange:ce,priceRange:ge,sortBy:X,sortOrder:Q,setSearch:xe,setCategory:re,setDateRange:Ne,setPriceRange:Te,hasActiveFilters:Ge}=On();m.useEffect(()=>{D&&D({search:O,category:he,dateRange:ce,priceRange:ge,sortBy:X,sortOrder:Q})},[O,he,ce,ge,X,Q,D]);const kr=$=>{Ne($.from||null,$.to||null)},Mr=$=>{Te($.min,$.max)};return a.jsxs("div",{className:l("space-y-md",e),children:[a.jsxs("div",{className:"flex flex-col gap-md sm:flex-row",children:[t&&a.jsx("div",{className:"flex-1",children:a.jsx(Me,{value:O,onChange:xe,placeholder:c})}),Ge]}),a.jsxs("div",{className:"grid grid-cols-1 gap-md sm:grid-cols-2 lg:grid-cols-4",children:[r&&i.length>0&&a.jsx(ve,{value:he,onValueChange:re,options:i,label:p,placeholder:v}),n&&a.jsxs("div",{className:"space-y-sm",children:[a.jsx("label",{className:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:h}),a.jsx(Ie,{value:{from:ce.start||void 0,to:ce.end||void 0},onChange:kr,placeholder:x,selectDateRangeLabel:b,clearLabel:S,closeLabel:T})]}),o&&a.jsx(ur,{value:ge,onChange:Mr,min:0,max:500,step:10,currency:"€",priceRangeLabel:Y,minLabel:F,maxLabel:I,anyPriceLabel:G,clearLabel:z,minAriaLabel:R,maxAriaLabel:q}),s&&a.jsxs("div",{className:"space-y-sm",children:[a.jsx("label",{className:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:w}),a.jsx(ve,{value:`${X}-${Q}`,onValueChange:$=>{const[yo,vo]=$.split("-")},options:d.map($=>({value:`${$.value}-asc`,label:`${$.label} ${y}`})).concat(d.map($=>({value:`${$.value}-desc`,label:`${$.label} ${B}`}))),placeholder:W})]})]}),Ge]})}function Fn({className:e,...t}){return a.jsx(mr,{className:l("space-y-sm",e),...t})}const Vn=({searchLabel:e,searchPlaceholder:t,searchValue:r,onSearchChange:n,dateLabel:o,datePlaceholder:s,dateSelectDateRangeLabel:i,dateClearLabel:d,dateCloseLabel:c,dateValue:u,onDateChange:f,genreLabel:p,genrePlaceholder:v,genreOptions:h,genreValue:x,onGenreChange:b,venueLabel:S,venuePlaceholder:T,venueOptions:w,venueValue:y,onVenueChange:B,className:W})=>{if(!e||e.trim()==="")throw new Error('SearchFilters: "searchLabel" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('SearchFilters: "searchPlaceholder" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('SearchFilters: "dateLabel" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('SearchFilters: "datePlaceholder" prop is required and cannot be empty');if(!i||i.trim()==="")throw new Error('SearchFilters: "dateSelectDateRangeLabel" prop is required and cannot be empty');if(!d||d.trim()==="")throw new Error('SearchFilters: "dateClearLabel" prop is required and cannot be empty');if(!c||c.trim()==="")throw new Error('SearchFilters: "dateCloseLabel" prop is required and cannot be empty');if(!p||p.trim()==="")throw new Error('SearchFilters: "genreLabel" prop is required and cannot be empty');if(!v||v.trim()==="")throw new Error('SearchFilters: "genrePlaceholder" prop is required and cannot be empty');if(!h||h.length===0)throw new Error('SearchFilters: "genreOptions" prop is required and cannot be empty');if(!S||S.trim()==="")throw new Error('SearchFilters: "venueLabel" prop is required and cannot be empty');if(!T||T.trim()==="")throw new Error('SearchFilters: "venuePlaceholder" prop is required and cannot be empty');if(!w||w.length===0)throw new Error('SearchFilters: "venueOptions" prop is required and cannot be empty');return a.jsx("div",{className:l("rounded-lg bg-background p-lg shadow-lg",W),children:a.jsxs("div",{className:"grid grid-cols-1 gap-md md:grid-cols-2 lg:grid-cols-4",children:[a.jsxs("div",{children:[a.jsx("label",{className:"mb-sm block text-sm font-medium",children:e}),a.jsx(Me,{placeholder:t,value:r,onChange:n})]}),a.jsxs("div",{children:[a.jsx("label",{className:"mb-sm block text-sm font-medium",children:o}),a.jsx(Ie,{value:u,onChange:f,placeholder:s,selectDateRangeLabel:i,clearLabel:d,closeLabel:c})]}),a.jsxs("div",{children:[a.jsx("label",{className:"mb-sm block text-sm font-medium",children:p}),a.jsx(ve,{placeholder:v,value:x,options:h,onValueChange:b})]}),a.jsxs("div",{children:[a.jsx("label",{className:"mb-sm block text-sm font-medium",children:S}),a.jsx(ve,{placeholder:T,value:y,options:w,onValueChange:B})]})]})})};function Wn(){const[e,t]=g.useState([]),r=g.useCallback(i=>{t(d=>d.filter(c=>c.id!==i))},[]),n=g.useCallback(i=>{const d=Math.random().toString(36).substr(2,9),c={id:d,duration:5e3,...i};return t(u=>[...u,c]),c.duration&&c.duration>0&&setTimeout(()=>{r(d)},c.duration),d},[r]),o=g.useCallback(()=>{t([])},[]),s=g.useCallback((i,d)=>{t(c=>c.map(u=>u.id===i?{...u,...d}:u))},[]);return{toasts:e,toast:n,dismiss:r,dismissAll:o,updateToast:s}}const fr=A.cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-sm overflow-hidden rounded-md border p-md pr-lg shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{type:{default:"border bg-background text-foreground",success:"border-success/20 bg-success/10 text-success-foreground",error:"border-error/20 bg-error/10 text-error-foreground",warning:"border-warning/20 bg-warning/10 text-warning-foreground",info:"border-info/20 bg-info/10 text-info-foreground"}},defaultVariants:{type:"default"}}),In=A.cva("h-4 w-4 flex-shrink-0",{variants:{type:{default:"text-foreground",success:"text-success",error:"text-error",warning:"text-warning",info:"text-info"}},defaultVariants:{type:"default"}}),zn=e=>{switch(e){case"success":return E.CheckCircle;case"error":return E.AlertCircle;case"warning":return E.AlertTriangle;case"info":return E.Info;default:return E.Info}},$e=m.forwardRef(({className:e,toast:t,onDismiss:r,type:n=t.type,...o},s)=>{const i=zn(t.type);return a.jsxs("div",{ref:s,className:l(fr({type:n,className:e})),...o,children:[a.jsxs("div",{className:"flex flex-1 items-start space-x-sm",children:[a.jsx(i,{className:l(In({type:t.type}))}),a.jsxs("div",{className:"flex-1 space-y-xs",children:[t.title&&a.jsx("div",{className:"text-sm font-semibold",children:t.title}),t.description&&a.jsx("div",{className:"text-sm opacity-90",children:t.description}),t.action&&a.jsx("div",{className:"mt-sm",children:a.jsx(L,{variant:"outline",size:"sm",onClick:t.action.onClick,className:"h-8 px-xs text-xs",children:t.action.label})})]})]}),a.jsx(L,{variant:"ghost",size:"icon",className:"absolute right-xs top-xs h-6 w-6 rounded-md p-xs text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-1 group-hover:opacity-100",onClick:()=>r(t.id),children:a.jsx(E.X,{className:"h-4 w-4"})})]})});$e.displayName="Toast";const pr=g.createContext(void 0);function Ln({children:e,position:t="top-right",maxToasts:r=5}){const n=Wn(),{toasts:o,toast:s,dismiss:i,dismissAll:d,updateToast:c}=n,u=o.slice(-r),f={"top-left":"top-4 left-4","top-center":"top-4 left-1/2 -translate-x-1/2","top-right":"top-4 right-4","bottom-left":"bottom-4 left-4","bottom-center":"bottom-4 left-1/2 -translate-x-1/2","bottom-right":"bottom-4 right-4"};return a.jsxs(pr.Provider,{value:{toast:s,dismiss:i,dismissAll:d,updateToast:c},children:[e,a.jsx(Bn,{position:t,positionClasses:f[t],children:u.map(p=>a.jsx($e,{toast:p,onDismiss:i},p.id))})]})}function hr(){const e=g.useContext(pr);if(e===void 0)throw new Error("useToastContext must be used within a ToastProvider");return e}function _n(){const{toast:e,dismiss:t,dismissAll:r,updateToast:n}=hr();return{toast:e,dismiss:t,dismissAll:r,updateToast:n,success:o=>e({...o,type:"success"}),error:o=>e({...o,type:"error"}),warning:o=>e({...o,type:"warning"}),info:o=>e({...o,type:"info"})}}function Bn({children:e,positionClasses:t}){return a.jsx("div",{className:l("fixed z-[100] flex max-h-screen w-full flex-col-reverse p-0 sm:flex-col",t),style:{pointerEvents:"none"},children:a.jsx("div",{className:"pointer-events-auto flex flex-col gap-2",children:e})})}function Yn({children:e,container:t,className:r,style:n}){const[o,s]=m.useState(!1);if(m.useEffect(()=>{s(!0)},[]),!o)return null;const i=t||document.body;return Vr.createPortal(a.jsx("div",{className:l("fixed inset-0 z-50",r),style:n,children:e}),i)}function $n({onClick:e,className:t,style:r}){return a.jsx("div",{className:l("absolute inset-0 bg-black/50 backdrop-blur-sm",t),style:r,onClick:e})}function Hn({children:e,className:t,style:r,position:n="center"}){const o={center:"flex items-center justify-center",top:"flex justify-center pt-8",bottom:"flex justify-center pb-8",left:"flex items-center pl-8",right:"flex items-center pr-8","top-left":"flex justify-start items-start pt-8 pl-8","top-right":"flex justify-end items-start pt-8 pr-8","bottom-left":"flex justify-start items-end pb-8 pl-8","bottom-right":"flex justify-end items-end pb-8 pr-8"};return a.jsx("div",{className:l("relative h-full min-h-screen w-full",o[n],t),style:r,children:e})}const gr=fe.Root,xr=fe.Trigger,An=fe.Anchor,br=A.cva("z-50 w-72 rounded-md border bg-popover p-md text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",{variants:{variant:{default:"bg-popover text-popover-foreground border-border",destructive:"border-destructive/50 text-destructive bg-destructive/10",warning:"border-warning/50 text-warning-foreground bg-warning/10",success:"border-success/50 text-success-foreground bg-success/10",info:"border-info/50 text-info-foreground bg-info/10"},size:{sm:"w-48 p-sm",md:"w-72 p-md",lg:"w-96 p-lg",xl:"w-[32rem] p-xl"}},defaultVariants:{variant:"default",size:"md"}}),He=m.forwardRef(({className:e,variant:t,size:r,align:n="center",sideOffset:o=4,...s},i)=>a.jsx(fe.Portal,{children:a.jsx(fe.Content,{ref:i,align:n,sideOffset:o,className:l(br({variant:t,size:r,className:e})),...s})}));He.displayName=fe.Content.displayName;function Gn({children:e,content:t,variant:r,size:n,side:o="bottom",align:s="center",sideOffset:i,alignOffset:d,open:c,onOpenChange:u,modal:f=!0,closeOnInteractOutside:p=!0}){return a.jsxs(gr,{open:c,onOpenChange:u,modal:f,children:[a.jsx(xr,{asChild:!0,children:e}),a.jsx(He,{variant:r,size:n,side:o,align:s,sideOffset:i,alignOffset:d,onInteractOutside:p?void 0:v=>v.preventDefault(),children:t})]})}const wr=je.Provider,yr=je.Root,vr=je.Trigger,jr=A.cva("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",{variants:{variant:{default:"bg-popover text-popover-foreground border-border",destructive:"border-destructive/50 text-destructive bg-destructive/10",warning:"border-warning/50 text-warning-foreground bg-warning/10",success:"border-success/50 text-success-foreground bg-success/10",info:"border-info/50 text-info-foreground bg-info/10"}},defaultVariants:{variant:"default"}}),Ae=m.forwardRef(({className:e,variant:t,sideOffset:r=4,...n},o)=>a.jsx(je.Content,{ref:o,sideOffset:r,className:l(jr({variant:t,className:e})),...n}));Ae.displayName=je.Content.displayName;function Xn({children:e,content:t,variant:r,side:n="top",align:o="center",sideOffset:s,alignOffset:i,delayDuration:d=400,skipDelayDuration:c=300,disableHoverableContent:u=!1,open:f,onOpenChange:p}){return a.jsx(wr,{delayDuration:d,skipDelayDuration:c,children:a.jsxs(yr,{open:f,onOpenChange:p,children:[a.jsx(vr,{asChild:!0,children:e}),a.jsx(Ae,{variant:r,side:n,align:o,sideOffset:s,alignOffset:i,children:t})]})})}const Qn=({variant:e="info",title:t,description:r,className:n})=>{const o={success:"bg-success/10 border-success/20 text-success-foreground",error:"bg-error/10 border-error/20 text-error-foreground",warning:"bg-warning/10 border-warning/20 text-warning-foreground",info:"bg-info/10 border-info/20 text-info-foreground"};return a.jsxs("div",{className:l("rounded-lg border p-4",o[e],n),children:[t&&a.jsx(H,{level:4,className:"mb-2 font-semibold",children:t}),r&&a.jsx(C,{size:"sm",children:r})]})},Un=({value:e,max:t=100,className:r})=>{const n=Math.min(100,Math.max(0,e/t*100));return a.jsx("div",{className:l("h-2 w-full rounded-full bg-secondary",r),children:a.jsx("div",{className:"h-2 rounded-full bg-primary transition-all duration-300",style:{width:`${n}%`}})})},J=({className:e})=>a.jsx("div",{className:l("animate-pulse rounded bg-muted",e)}),Jn={none:"rounded-none",sm:"rounded-sm",md:"rounded-md",lg:"rounded-lg",xl:"rounded-xl","2xl":"rounded-2xl","3xl":"rounded-3xl",full:"rounded-full"},Kn={none:"shadow-none",sm:"shadow-sm",base:"shadow",md:"shadow-md",lg:"shadow-lg",xl:"shadow-xl","2xl":"shadow-2xl",inner:"shadow-inner"},Zn={square:"aspect-square",video:"aspect-video",photo:"aspect-[4/3]",wide:"aspect-[16/9]"},Nr=g.forwardRef(({className:e,wrapperClassName:t,radius:r="none",shadow:n="none",aspectRatio:o,fallbackSrc:s,showSkeleton:i=!1,src:d,onLoadingComplete:c,onError:u,onLoad:f,fill:p,alt:v="",...h},x)=>{const[b,S]=g.useState(!1),[T,w]=g.useState(!1),[y,B]=g.useState(d),W=g.useRef(!1),V=g.useRef(0),Y=g.useRef(!0),F=g.useRef(null),I=d&&d.trim()!==""?d:void 0,G=s&&s.trim()!==""?s:void 0,z=G&&G!==I?G:void 0,R=g.useCallback(X=>{const Q=X.currentTarget,xe=V.current;if(!(!Y.current||!F.current||Q!==F.current)&&(S(!0),c))try{const re=Q.naturalWidth,Ne=Q.naturalHeight;if(V.current!==xe)return;if(re===0||Ne===0){if(w(!0),S(!1),!u)return;try{u(X)}catch(Te){console.error("Error in onError callback:",Te)}return}c({naturalWidth:re,naturalHeight:Ne})}catch(re){console.error("Error in onLoadingComplete callback:",re)}},[c,u]),q=g.useCallback(X=>{const Q=X.currentTarget,xe=V.current;if(!(!Y.current||!F.current||Q!==F.current)&&V.current===xe){if(z&&!W.current&&y!==z){W.current=!0,B(z),w(!1),S(!1),V.current+=1;return}if(w(!0),S(!1),u)try{u(X)}catch(re){console.error("Error in onError callback:",re)}}},[z,y,u]);g.useEffect(()=>{I!==y&&(B(I),S(!1),w(!1),W.current=!1,V.current+=1)},[I,y]),g.useEffect(()=>(Y.current=!0,()=>{Y.current=!1}),[]);const D=l("relative",r!=="none"&&Jn[r],n!=="none"&&Kn[n],r!=="none"&&"overflow-hidden",o&&(Zn[o]||(typeof o=="string"&&/^\d+\/\d+$/.test(o.trim())?`aspect-[${o.trim()}]`:o)),p&&"w-full h-full",t),O=l((p||r!=="none")&&"object-cover",p&&"absolute inset-0 w-full h-full",e),he=i&&!b&&!T&&y,ce=g.useCallback(X=>{if(R(X),f)try{f(X)}catch(Q){console.error("Error in onLoad callback:",Q)}},[R,f]),ge=y||z;return a.jsxs("div",{ref:x,className:D,children:[he&&a.jsx(J,{className:"absolute inset-0 z-10 h-full w-full"}),ge?a.jsx("img",{...h,ref:F,src:y,alt:v,className:O,onLoad:ce,onError:q}):null]})});Nr.displayName="Image";const eo=({items:e,className:t})=>a.jsx("nav",{className:l("flex items-center space-x-sm text-sm",t),children:e.map((r,n)=>a.jsxs(g.Fragment,{children:[n>0&&a.jsx(E.ChevronRight,{className:"h-4 w-4 text-muted-foreground"}),r.href?a.jsx(oe,{href:r.href,className:"text-muted-foreground transition-colors hover:text-foreground",children:r.label}):a.jsx("span",{className:"font-medium text-foreground",children:r.label})]},n))}),to=({currentPage:e,totalPages:t,onPageChange:r,className:n})=>{const o=()=>{const i=[],d=[];for(let c=Math.max(2,e-2);c<=Math.min(t-1,e+2);c++)i.push(c);return e-2>2?d.push(1,"..."):d.push(1),d.push(...i),e+2<t-1?d.push("...",t):d.push(t),d};return a.jsxs("nav",{className:l("flex items-center space-x-xs",n),children:[a.jsx("button",{onClick:()=>r(e-1),disabled:e===1,className:"rounded-md border border-input bg-background p-sm hover:bg-accent disabled:cursor-not-allowed disabled:opacity-50",children:a.jsx(E.ChevronLeft,{className:"h-4 w-4"})}),o().map((s,i)=>a.jsx(g.Fragment,{children:s==="..."?a.jsx("span",{className:"px-sm py-sm text-muted-foreground",children:"..."}):a.jsx("button",{onClick:()=>r(s),className:l("rounded-md border px-sm py-sm transition-colors",s===e?"border-primary bg-primary text-primary-foreground":"border-input bg-background hover:bg-accent"),children:s})},i)),a.jsx("button",{onClick:()=>r(e+1),disabled:e===t,className:"rounded-md border border-input bg-background p-sm hover:bg-accent disabled:cursor-not-allowed disabled:opacity-50",children:a.jsx(E.ChevronRight,{className:"h-4 w-4"})})]})},ro=({items:e,className:t})=>a.jsx("div",{className:l("space-y-sm",t),children:e.map(r=>a.jsxs("div",{className:"rounded-lg border p-md transition-colors hover:bg-muted/50",children:[a.jsx("h3",{className:"font-medium text-foreground",children:r.title}),r.description&&a.jsx("p",{className:"mt-xs text-sm text-muted-foreground",children:r.description})]},r.id))}),ao=({data:e,columns:t,rowKey:r,className:n})=>a.jsx("div",{className:l("overflow-x-auto",n),children:a.jsxs("table",{className:"w-full border-collapse",children:[a.jsx("thead",{children:a.jsx("tr",{className:"border-b",children:t.map(o=>a.jsx("th",{className:"p-sm text-left font-medium text-muted-foreground",children:o.title},String(o.key)))})}),a.jsx("tbody",{children:e.map(o=>a.jsx("tr",{className:"border-b hover:bg-muted/50",children:t.map(s=>a.jsx("td",{className:"p-sm",children:s.render?s.render(o[s.key],o):String(o[s.key])},String(s.key)))},String(o[r])))})]})}),no=({items:e,className:t})=>a.jsx("div",{className:l("space-y-lg",t),children:e.map((r,n)=>a.jsxs("div",{className:"relative flex",children:[a.jsxs("div",{className:"flex flex-col items-center",children:[a.jsx("div",{className:"h-3 w-3 rounded-full border-2 border-background bg-primary"}),n<e.length-1&&a.jsx("div",{className:"mt-sm h-12 w-px bg-border"})]}),a.jsxs("div",{className:"ml-md flex-1",children:[a.jsx(H,{level:3,className:"font-medium",children:r.title}),a.jsx(C,{size:"sm",color:"muted",children:r.date}),r.description&&a.jsx(C,{size:"sm",color:"muted",className:"mt-xs",children:r.description})]})]},r.id))}),oo=({event:e,className:t,featured:r,showImage:n,getTicketsLabel:o,trendingBadgeText:s})=>{var h,x,b,S,T,w,y,B,W,V,Y,F,I;const i=typeof(e==null?void 0:e.name)=="string"?e.name:((h=e==null?void 0:e.name)==null?void 0:h.en)||((x=e==null?void 0:e.name)==null?void 0:x.es)||((b=e==null?void 0:e.name)==null?void 0:b.ru)||"",d=typeof(e==null?void 0:e.description)=="string"?e.description:((S=e==null?void 0:e.description)==null?void 0:S.en)||((T=e==null?void 0:e.description)==null?void 0:T.es)||((w=e==null?void 0:e.description)==null?void 0:w.ru)||"",c=(e==null?void 0:e.start_date)||"",u=typeof((y=e==null?void 0:e.venue_id)==null?void 0:y.name)=="string"?e.venue_id.name:((W=(B=e==null?void 0:e.venue_id)==null?void 0:B.name)==null?void 0:W.en)||((Y=(V=e==null?void 0:e.venue_id)==null?void 0:V.name)==null?void 0:Y.es)||((I=(F=e==null?void 0:e.venue_id)==null?void 0:F.name)==null?void 0:I.ru)||"";let f="";const p=e==null?void 0:e.price;if(typeof p=="string")f=p;else if(typeof(e==null?void 0:e.price)=="object"&&(e==null?void 0:e.price)!==null){const G=e.price,{min:z=0,max:R="∞"}=G;f=`€${z} - €${R}`}const v=e==null?void 0:e.image;return a.jsxs(K,{className:l("animate-fade-in-up shadow-elevation-md hover:shadow-elevation-xl group relative overflow-hidden border-transparent transition-all duration-normal hover:border-primary/20",r&&"ring-2 ring-primary/50",t),children:[r&&a.jsx("div",{className:"absolute right-3 top-3 z-10",children:a.jsx("span",{className:"shadow-elevation-lg inline-flex items-center rounded-full bg-gradient-to-r from-accent-500 to-primary-600 px-xs py-xs text-xs font-semibold text-white",children:s})}),n&&a.jsxs("div",{className:"relative h-48 w-full overflow-hidden rounded-t-lg bg-gradient-to-br from-surface-elevated1 to-surface-elevated2",children:[v?a.jsx("img",{src:v,alt:i,className:"h-full w-full object-cover transition-transform duration-slow group-hover:scale-110"}):a.jsx("div",{className:"flex h-full w-full items-center justify-center",children:a.jsx("svg",{className:"h-16 w-16 text-muted-foreground",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 10l4.553-2.276A1 1 0 0121 8.618v6.764a1 1 0 01-1.447.894L15 14M5 18h8a2 2 0 002-2V8a2 2 0 00-2-2H5a2 2 0 00-2 2v8a2 2 0 002 2z"})})}),a.jsx("div",{className:"absolute inset-0 bg-gradient-to-t from-black/60 via-transparent to-transparent opacity-0 transition-opacity duration-normal group-hover:opacity-100"})]}),a.jsxs(Z,{className:"p-md",children:[a.jsx(H,{level:3,className:"mb-xs line-clamp-2 text-lg font-bold transition-colors group-hover:text-primary",children:e!=null&&e.slug?a.jsx(oe,{href:`/events/${e.slug}`,variant:"ghost",size:"none",children:i}):i}),a.jsx(C,{size:"sm",color:"muted",className:"mb-sm line-clamp-2",children:d}),a.jsxs("div",{className:"mb-sm flex flex-col gap-xs",children:[a.jsxs("div",{className:"flex items-center gap-xs text-xs text-muted-foreground",children:[a.jsx("svg",{className:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})}),a.jsx(C,{size:"xs",color:"muted",children:c})]}),a.jsxs("div",{className:"flex items-center gap-xs text-xs text-muted-foreground",children:[a.jsxs("svg",{className:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:[a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.827 0l-4.244-4.243a8 8 0 1111.314 0z"}),a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 11a3 3 0 11-6 0 3 3 0 016 0z"})]}),a.jsx(C,{size:"xs",color:"muted",className:"line-clamp-1",children:u})]})]}),a.jsx("div",{className:"border-t border-border pt-sm",children:e!=null&&e.ticket_url?a.jsxs(oe,{href:e.ticket_url,className:"shadow-elevation-md hover:shadow-elevation-lg inline-flex w-full transform items-center justify-center bg-gradient-to-r from-accent-500 to-primary-600 px-md py-xs font-semibold text-white transition-all duration-normal hover:scale-105 hover:from-accent-600 hover:to-primary-700",target:"_blank",rel:"noopener noreferrer",children:[o,a.jsx("svg",{className:"ml-xs h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M14 5l7 7m0 0l-7 7m7-7H3"})})]}):a.jsx("div",{className:"text-right",children:a.jsx(C,{size:"lg",weight:"bold",className:"bg-gradient-to-r from-accent-500 to-primary-600 bg-clip-text text-transparent",children:f})})})]})]})},so=({venue:e,className:t,featured:r,showImage:n,eventsLabel:o,popularBadgeText:s,capacityLabel:i})=>{var h,x;if(typeof r!="boolean")throw new Error('VenueCard: "featured" prop is required and must be a boolean');if(typeof n!="boolean")throw new Error('VenueCard: "showImage" prop is required and must be a boolean');if(!o||o.trim()==="")throw new Error('VenueCard: "eventsLabel" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('VenueCard: "popularBadgeText" prop is required and cannot be empty');if(!i||i.trim()==="")throw new Error('VenueCard: "capacityLabel" prop is required and cannot be empty');const d=typeof(e==null?void 0:e.name)=="string"?e.name:(h=e==null?void 0:e.name)==null?void 0:h.en;if(!d||d.trim()==="")throw new Error("VenueCard: venue.name is required and cannot be empty");const c=typeof(e==null?void 0:e.description)=="string"?e.description:(x=e==null?void 0:e.description)==null?void 0:x.en;if(!c||c.trim()==="")throw new Error("VenueCard: venue.description is required and cannot be empty");const u=typeof(e==null?void 0:e.location)=="string"?e.location:e==null?void 0:e.address;if(!u||u.trim()==="")throw new Error("VenueCard: venue.location or venue.address is required and cannot be empty");const f=e==null?void 0:e.capacity;if(!f||f.trim()==="")throw new Error("VenueCard: venue.capacity is required and cannot be empty");const p=e==null?void 0:e.image,v=(e==null?void 0:e.events_count)||0;return a.jsxs(K,{className:l("animate-fade-in-up group relative overflow-hidden border-transparent shadow-md transition-all duration-300 hover:border-primary/20 hover:shadow-xl",r&&"ring-2 ring-primary/50",t),children:[r&&a.jsx("div",{className:"absolute right-sm top-sm z-10",children:a.jsx("span",{className:"inline-flex items-center rounded-full bg-gradient-to-r from-accent to-primary px-xs py-xs text-xs font-semibold text-primary-foreground shadow-lg",children:s})}),n&&a.jsxs("div",{className:"relative h-48 w-full overflow-hidden rounded-t-lg bg-gradient-to-br from-muted to-muted/50",children:[p?a.jsx("img",{src:p,alt:d,className:"h-full w-full object-cover transition-transform duration-500 group-hover:scale-110"}):a.jsx("div",{className:"flex h-full w-full items-center justify-center",children:a.jsx("svg",{className:"h-16 w-16 text-muted",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","aria-hidden":"true",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 21V5a2 2 0 00-2-2H7a2 2 0 00-2 2v16m14 0h2m-2 0h-5m-9 0H3m2 0h5M9 7h1m-1 4h1m4-4h1m-1 4h1m-5 10v-5a1 1 0 011-1h2a1 1 0 011 1v5m-4 0h4"})})}),a.jsx("div",{className:"absolute inset-0 bg-gradient-to-t from-black/60 via-transparent to-transparent opacity-0 transition-opacity duration-300 group-hover:opacity-100"})]}),a.jsxs(Z,{className:"p-md",children:[a.jsx(H,{level:3,className:"mb-sm line-clamp-2 text-lg font-bold transition-colors group-hover:text-primary",children:e!=null&&e.slug?a.jsx(oe,{href:`/venues/${e.slug}`,variant:"ghost",size:"none",children:d}):d}),a.jsx(C,{size:"sm",color:"muted",className:"mb-sm line-clamp-2",children:c}),a.jsx("div",{className:"mb-sm flex flex-col gap-sm",children:a.jsxs("div",{className:"flex items-center gap-sm text-xs text-muted-foreground",children:[a.jsxs("svg",{className:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","aria-hidden":"true",children:[a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.827 0l-4.244-4.243a8 8 0 1111.314 0z"}),a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 11a3 3 0 11-6 0 3 3 0 016 0z"})]}),a.jsx(C,{size:"xs",color:"muted",className:"line-clamp-1",children:u})]})}),a.jsx("div",{className:"border-t border-border pt-sm",children:a.jsxs("div",{className:"flex items-center justify-between text-xs",children:[v>0&&a.jsxs("div",{className:"flex items-center gap-xs font-medium text-primary",children:[a.jsx("svg",{className:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 10l4.553-2.276A1 1 0 0121 8.618v6.764a1 1 0 01-1.447.894L15 14M5 18h8a2 2 0 002-2V8a2 2 0 00-2-2H5a2 2 0 00-2 2v8a2 2 0 002 2z"})}),a.jsxs(C,{size:"xs",color:"primary",weight:"medium",children:[v," ",o]})]}),f&&a.jsxs("div",{className:"flex items-center gap-xs text-muted-foreground",children:[a.jsx("svg",{className:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","aria-hidden":"true",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0zm6 3a2 2 0 11-4 0 2 2 0 014 0zM7 10a2 2 0 11-4 0 2 2 0 014 0z"})}),a.jsxs(C,{size:"xs",color:"muted",children:[i," ",f]})]})]})})]})]})},me=({id:e,name:t,label:r,type:n="text",placeholder:o,value:s,onChange:i,error:d,helperText:c,className:u,...f})=>{const p=s??"";return a.jsxs("div",{className:l("space-y-sm",u),children:[r&&a.jsx(ne,{htmlFor:e,className:"block",children:r}),a.jsx(pe,{id:e,name:t,type:n,placeholder:o,value:p,onChange:v=>i==null?void 0:i(v.target.value),...f}),c&&!d&&a.jsx(C,{size:"sm",color:"muted",children:c}),d&&a.jsx(C,{size:"sm",color:"destructive",children:d})]})},io=({id:e,name:t,label:r,placeholder:n,options:o=[],value:s,onChange:i,error:d,className:c})=>{const u=s??"";return a.jsxs("div",{className:l("space-y-sm",c),children:[r&&a.jsx(ne,{htmlFor:e,className:"block",children:r}),a.jsxs("select",{id:e,name:t,value:u,onChange:f=>i==null?void 0:i(f.target.value),className:"w-full rounded-md border border-input bg-background px-sm py-sm",children:[n&&a.jsx("option",{value:"",disabled:!0,children:n}),o.map(f=>a.jsx("option",{value:f.value,children:f.label},f.value))]}),d&&a.jsx(C,{size:"sm",color:"destructive",children:d})]})},lo=({id:e,name:t,label:r,placeholder:n,value:o,onChange:s,error:i,rows:d=4,className:c,...u})=>{const f=o??"";return a.jsxs("div",{className:l("space-y-sm",c),children:[r&&a.jsx(ne,{htmlFor:e,className:"block",children:r}),a.jsx("textarea",{id:e,name:t,placeholder:n,value:f,onChange:p=>s==null?void 0:s(p.target.value),className:"w-full rounded-md border border-input bg-background px-sm py-sm",rows:d,...u}),i&&a.jsx(C,{size:"sm",color:"destructive",children:i})]})},co=({emailLabel:e,emailPlaceholder:t,passwordLabel:r,passwordPlaceholder:n,loginButtonText:o,className:s})=>{if(!e||e.trim()==="")throw new Error('LoginForm: "emailLabel" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('LoginForm: "emailPlaceholder" prop is required and cannot be empty');if(!r||r.trim()==="")throw new Error('LoginForm: "passwordLabel" prop is required and cannot be empty');if(!n||n.trim()==="")throw new Error('LoginForm: "passwordPlaceholder" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('LoginForm: "loginButtonText" prop is required and cannot be empty');return a.jsxs("div",{className:l("space-y-md",s),children:[a.jsx(me,{label:e,placeholder:t}),a.jsx(me,{label:r,placeholder:n}),a.jsx(L,{className:"w-full",children:o})]})},uo=({name:e,email:t,avatar:r,className:n})=>{if(!e||e.trim()==="")throw new Error('ProfileCard: "name" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('ProfileCard: "email" prop is required and cannot be empty');return a.jsx(K,{className:l("shadow-md",n),children:a.jsxs(Z,{className:"p-md",children:[r&&a.jsx("div",{className:"mb-md h-16 w-16 rounded-full bg-muted"}),a.jsx(H,{level:3,className:"mb-sm text-lg font-semibold",children:e}),a.jsx(C,{color:"muted",children:t})]})})},mo=({nameLabel:e,namePlaceholder:t,emailLabel:r,emailPlaceholder:n,passwordLabel:o,passwordPlaceholder:s,registerButtonText:i,className:d})=>{if(!e||e.trim()==="")throw new Error('RegisterForm: "nameLabel" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('RegisterForm: "namePlaceholder" prop is required and cannot be empty');if(!r||r.trim()==="")throw new Error('RegisterForm: "emailLabel" prop is required and cannot be empty');if(!n||n.trim()==="")throw new Error('RegisterForm: "emailPlaceholder" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('RegisterForm: "passwordLabel" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('RegisterForm: "passwordPlaceholder" prop is required and cannot be empty');if(!i||i.trim()==="")throw new Error('RegisterForm: "registerButtonText" prop is required and cannot be empty');return a.jsxs("div",{className:l("space-y-md",d),children:[a.jsx(me,{label:e,placeholder:t}),a.jsx(me,{label:r,placeholder:n}),a.jsx(me,{label:o,placeholder:s}),a.jsx(L,{className:"w-full",children:i})]})},fo=({title:e,content:t,className:r})=>{if(!e||e.trim()==="")throw new Error('Dashboard: "title" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('Dashboard: "content" prop is required and cannot be empty');return a.jsx(K,{className:l("shadow-md",r),children:a.jsxs(Z,{className:"p-lg",children:[a.jsx(H,{level:2,className:"mb-md",children:e}),a.jsx(C,{color:"muted",children:t})]})})},po=({title:e,content:t,className:r})=>{if(!e||e.trim()==="")throw new Error('UserManagement: "title" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('UserManagement: "content" prop is required and cannot be empty');return a.jsx(K,{className:l("shadow-md",r),children:a.jsxs(Z,{className:"p-lg",children:[a.jsx(H,{level:2,className:"mb-md",children:e}),a.jsx(C,{color:"muted",children:t})]})})},ho=({placeholder:e,className:t,onSearch:r,suggestions:n=[],onSuggestionSelect:o})=>{if(!e||e.trim()==="")throw new Error('SearchBar: "placeholder" prop is required and cannot be empty');const[s,i]=g.useState(""),[d,c]=g.useState(!1),[u,f]=g.useState(-1),p=g.useRef(null),v=w=>{i(w),f(-1),r&&r(w)},h=()=>{c(!0)},x=w=>{setTimeout(()=>{var y;(y=p.current)!=null&&y.contains(document.activeElement)||(c(!1),f(-1))},200)},b=w=>{if(n.length!==0)if(w.key==="ArrowDown")w.preventDefault(),f(y=>y<n.length-1?y+1:y);else if(w.key==="ArrowUp")w.preventDefault(),f(y=>y>0?y-1:-1);else if(w.key==="Enter"&&u>=0&&u<n.length){w.preventDefault();const y=n[u];y&&(i(y),v(y),o==null||o(y),c(!1))}else w.key==="Escape"&&(c(!1),f(-1))},S=w=>{i(w),v(w),o==null||o(w),c(!1)};g.useEffect(()=>{const w=y=>{p.current&&!p.current.contains(y.target)&&(c(!1),f(-1))};return document.addEventListener("mousedown",w),()=>document.removeEventListener("mousedown",w)},[]);const T=n.filter(w=>w.toLowerCase().includes(s.toLowerCase()));return a.jsxs("div",{ref:p,className:l("relative w-full max-w-sm",t),children:[a.jsx(Me,{placeholder:e,value:s,onChange:v,onFocus:h,onBlur:x,onKeyDown:b,className:l("transition-all duration-200","focus:ring-2 focus:ring-primary focus:ring-offset-2","hover:border-primary/50",d&&"border-primary shadow-sm")}),d&&T.length>0&&a.jsx("div",{className:"absolute z-50 mt-1 max-h-60 w-full overflow-auto rounded-md border bg-popover shadow-lg",children:T.map((w,y)=>a.jsx(L,{type:"button",variant:"ghost",onClick:()=>S(w),className:l("w-full justify-start px-md py-sm text-sm",y===u&&"bg-accent text-accent-foreground"),children:w},w))})]})},go=({articles:e,readMoreLabel:t,className:r})=>{if(!t||t.trim()==="")throw new Error('ArticlesSection: "readMoreLabel" prop is required and cannot be empty');return a.jsx("div",{className:l("space-y-lg",r),children:e.map(n=>a.jsxs("article",{className:"rounded-lg border p-lg transition-shadow hover:shadow-md",children:[n.image&&a.jsx("div",{className:"mb-md h-48 w-full rounded-md bg-muted"}),a.jsxs("div",{className:"space-y-sm",children:[a.jsx(H,{level:2,className:"text-xl font-semibold",children:a.jsx(oe,{href:`/news/${n.slug}`,variant:"ghost",size:"none",className:"hover:text-primary",children:n.title})}),n.description&&a.jsx(C,{color:"muted",children:n.description}),n.date&&a.jsx(C,{size:"sm",color:"muted",children:n.date}),a.jsxs(oe,{href:`/news/${n.slug}`,variant:"default",size:"none",className:"inline-flex items-center",children:[t," →"]})]})]},n.slug))})},xo=({events:e,limit:t,loading:r,title:n,loadingText:o,contentText:s,className:i,...d})=>{if(!Array.isArray(e))throw new Error('TrendingSection: "events" prop is required and must be an array');if(typeof t!="number"||isNaN(t)||t<0)throw new Error('TrendingSection: "limit" prop is required and must be a non-negative number');if(typeof r!="boolean")throw new Error('TrendingSection: "loading" prop is required and must be a boolean');if(!n||n.trim()==="")throw new Error('TrendingSection: "title" prop is required and cannot be empty');if(!o||o.trim()==="")throw new Error('TrendingSection: "loadingText" prop is required and cannot be empty');if(!s||s.trim()==="")throw new Error('TrendingSection: "contentText" prop is required and cannot be empty');return a.jsx(K,{className:l("shadow-md",i),...d,children:a.jsxs(Z,{className:"p-lg",children:[a.jsx(H,{level:2,className:"mb-md",children:n}),r?a.jsx(C,{color:"muted",children:o}):a.jsx(C,{color:"muted",children:s})]})})},bo=({className:e})=>a.jsx("div",{className:l("flex h-6 w-6 items-center justify-center rounded-full bg-primary",e),children:a.jsx("span",{className:"text-sm text-white",children:"↑"})}),wo=({ariaLabel:e,dataTestId:t,className:r,languages:n,value:o,defaultValue:s,disabled:i,onLanguageChange:d})=>{if(!e||e.trim()==="")throw new Error('LanguageSelector: "ariaLabel" prop is required and cannot be empty');if(!t||t.trim()==="")throw new Error('LanguageSelector: "dataTestId" prop is required and cannot be empty');if(!n||n.length===0)throw new Error('LanguageSelector: "languages" prop is required and cannot be empty');const c=g.useMemo(()=>n,[n]),u=()=>{if(o!==void 0)return o;if(s&&c.some(h=>h.code===s))return s;if(c.length===0)throw new Error("LanguageSelector: languages array must contain at least one option");return c[0].code},[f,p]=g.useState(u);g.useEffect(()=>{o!==void 0&&o!==f&&p(o)},[o,f]);const v=h=>{const x=h.target.value;o===void 0&&p(x),d==null||d(x)};return a.jsx("select",{value:o??f,onChange:v,disabled:i,className:l("rounded-md border border-input bg-background px-sm py-sm text-sm",i&&"cursor-not-allowed opacity-70",r),"aria-label":e,"data-testid":t,children:c.map(({code:h,label:x})=>a.jsx("option",{value:h,children:x},h))})},Sr=({className:e})=>a.jsxs("div",{className:l("rounded-lg bg-background p-md shadow-md",e),children:[a.jsx(J,{className:"mb-md h-48 w-full"}),a.jsx(J,{className:"mb-sm h-6 w-3/4"}),a.jsx(J,{className:"mb-sm h-4 w-full"}),a.jsx(J,{className:"h-4 w-1/2"})]}),Cr=({className:e})=>a.jsxs("div",{className:l("rounded-lg bg-background p-md shadow-md",e),children:[a.jsx(J,{className:"mb-md h-48 w-full"}),a.jsx(J,{className:"mb-sm h-6 w-3/4"}),a.jsx(J,{className:"mb-sm h-4 w-full"}),a.jsx(J,{className:"h-4 w-1/2"})]});exports.accentColors=ee.accentColors;exports.baseColors=ee.baseColors;exports.colorCSSVariables=ee.colorCSSVariables;exports.cssVariableColorTokens=ee.cssVariableColorTokens;exports.primaryColors=ee.primaryColors;exports.secondaryColors=ee.secondaryColors;exports.semanticColors=ee.semanticColors;exports.surfaceColors=ee.surfaceColors;exports.tailwindThemeColors=ee.tailwindThemeColors;exports.textColors=ee.textColors;exports.accentColoredShadows=j.accentColoredShadows;exports.allCSSVariables=j.allCSSVariables;exports.allCSSVariablesCSS=j.allCSSVariablesCSS;exports.animations=j.animations;exports.componentShadowMapping=j.componentShadowMapping;exports.durations=j.durations;exports.easings=j.easings;exports.elevationShadows=j.elevationShadows;exports.focusRings=j.focusRings;exports.fontFamily=j.fontFamily;exports.fontSize=j.fontSize;exports.fontWeight=j.fontWeight;exports.generateCSSVariablesCSS=j.generateCSSVariablesCSS;exports.glowEffects=j.glowEffects;exports.keyframes=j.keyframes;exports.layoutSpacing=j.layoutSpacing;exports.letterSpacing=j.letterSpacing;exports.lineHeight=j.lineHeight;exports.motionCSSVariables=j.motionCSSVariables;exports.primaryColoredShadows=j.primaryColoredShadows;exports.reducedMotion=j.reducedMotion;exports.semanticSpacing=j.semanticSpacing;exports.shadowCSSVariables=j.shadowCSSVariables;exports.spacing=j.spacing;exports.spacingCSSVariables=j.spacingCSSVariables;exports.tailwindMotionConfig=j.tailwindMotionConfig;exports.tailwindShadowConfig=j.tailwindShadowConfig;exports.tailwindSpacingConfig=j.tailwindSpacingConfig;exports.tailwindTypographyConfig=j.tailwindTypographyConfig;exports.textStyles=j.textStyles;exports.tokenSystemSummary=j.tokenSystemSummary;exports.transitions=j.transitions;exports.typographyCSSVariables=j.typographyCSSVariables;exports.borderRadius=Ce.borderRadius;exports.componentRadius=Ce.componentRadius;exports.radiusCSSVariables=Ce.radiusCSSVariables;exports.tailwindRadiusConfig=Ce.tailwindRadiusConfig;exports.applyDocumentMode=se.applyDocumentMode;exports.applyDocumentTheme=se.applyDocumentTheme;exports.getInitialMode=se.getInitialMode;exports.getInitialTheme=se.getInitialTheme;exports.loadThemeOverride=se.loadThemeOverride;exports.persistMode=se.persistMode;exports.persistTheme=se.persistTheme;exports.Alert=Qn;exports.ArticlesSection=go;exports.Badge=Yr;exports.Blockquote=Ur;exports.Breadcrumbs=eo;exports.Button=L;exports.Card=K;exports.CardContent=Z;exports.CardDescription=ct;exports.CardFooter=ut;exports.CardHeader=dt;exports.CardTitle=lt;exports.Code=Qr;exports.ConfirmDialog=Et;exports.Container=vt;exports.CustomDialog=la;exports.Dashboard=fo;exports.DateRangePicker=Ie;exports.Divider=mt;exports.DropdownMenu=pa;exports.DropdownMenuCheckboxItem=Yt;exports.DropdownMenuContent=_t;exports.DropdownMenuGroup=ga;exports.DropdownMenuItem=Bt;exports.DropdownMenuLabel=Ht;exports.DropdownMenuPortal=xa;exports.DropdownMenuRadioGroup=wa;exports.DropdownMenuRadioItem=$t;exports.DropdownMenuSeparator=At;exports.DropdownMenuShortcut=Gt;exports.DropdownMenuSub=ba;exports.DropdownMenuSubContent=Lt;exports.DropdownMenuSubTrigger=zt;exports.DropdownMenuTrigger=ha;exports.EventCard=oo;exports.EventCardSkeleton=Sr;exports.EventCardSkeletonUI=Sr;exports.FilterBar=mr;exports.FilterBarCompact=Fn;exports.FilterSelect=ve;exports.Flex=Nt;exports.Footer=Jr;exports.FormInput=me;exports.FormSelect=io;exports.FormTextarea=lo;exports.Grid=Ct;exports.Heading=H;exports.Image=Nr;exports.Input=pe;exports.Label=ne;exports.LanguageSelector=wo;exports.Link=oe;exports.List=ro;exports.LoginForm=co;exports.Modal=Tt;exports.ModalClose=ra;exports.ModalContent=Re;exports.ModalDescription=Ve;exports.ModalFooter=Oe;exports.ModalHeader=qe;exports.ModalOverlay=Pe;exports.ModalPortal=Dt;exports.ModalProvider=ua;exports.ModalTitle=Fe;exports.ModalTrigger=ta;exports.ModeHero=Kr;exports.Navbar=Zr;exports.NavigationMenu=Xt;exports.NavigationMenuContent=Kt;exports.NavigationMenuIndicator=Zt;exports.NavigationMenuItem=ya;exports.NavigationMenuLink=va;exports.NavigationMenuList=Qt;exports.NavigationMenuTrigger=Jt;exports.NavigationMenuViewport=We;exports.OverlayBackdrop=$n;exports.OverlayContainer=Hn;exports.OverlayPortal=Yn;exports.Pagination=to;exports.Paragraph=Xr;exports.Popover=gr;exports.PopoverAnchor=An;exports.PopoverContent=He;exports.PopoverTrigger=xr;exports.PopoverWrapper=Gn;exports.PriceRangeSlider=ur;exports.ProfileCard=uo;exports.Progress=Un;exports.RegisterForm=mo;exports.SearchBar=ho;exports.SearchFilters=Vn;exports.SearchInput=Me;exports.Section=ea;exports.Select=ir;exports.SelectContent=Be;exports.SelectGroup=En;exports.SelectItem=Ye;exports.SelectLabel=lr;exports.SelectScrollDownButton=_e;exports.SelectScrollUpButton=Le;exports.SelectSeparator=cr;exports.SelectTrigger=ze;exports.SelectValue=dr;exports.SimpleModal=fa;exports.Skeleton=J;exports.Stack=Mt;exports.Table=ao;exports.Tabs=ja;exports.TabsContent=rr;exports.TabsList=er;exports.TabsTrigger=tr;exports.Text=C;exports.ThemeSwitch=Gr;exports.Timeline=no;exports.Toast=$e;exports.ToastProvider=Ln;exports.Tooltip=yr;exports.TooltipContent=Ae;exports.TooltipProvider=wr;exports.TooltipTrigger=vr;exports.TooltipWrapper=Xn;exports.TrendingIcon=bo;exports.TrendingSection=xo;exports.UserManagement=po;exports.VenueCard=so;exports.VenueCardSkeleton=Cr;exports.VenueCardSkeletonUI=Cr;exports.badgeVariants=st;exports.buttonVariants=it;exports.cn=l;exports.containerVariants=yt;exports.debounce=_r;exports.flexVariants=jt;exports.formatDate=nt;exports.formatDateTime=zr;exports.formatTime=ot;exports.generateId=Lr;exports.gridVariants=St;exports.linkVariants=ft;exports.navigationMenuTriggerStyle=Ut;exports.popoverContentVariants=br;exports.stackVariants=kt;exports.throttle=Br;exports.toastVariants=fr;exports.tooltipContentVariants=jr;exports.useConfirmDialog=aa;exports.useDateRange=Dn;exports.useModal=ca;exports.useModalContext=It;exports.useModalManager=Vt;exports.usePriceRange=Pn;exports.useSearch=qn;exports.useToast=_n;exports.useToastContext=hr;exports.withModal=ma;