@stacksjs/components 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (342) hide show
  1. package/README.md +477 -0
  2. package/dist/Accordion-x2gjedap.stx +108 -0
  3. package/dist/Audio-0fk6p9tn.stx +50 -0
  4. package/dist/Avatar-5m0v0s4x.stx +88 -0
  5. package/dist/Badge-ynes82vv.stx +70 -0
  6. package/dist/Breadcrumb-h9n427sk.stx +79 -0
  7. package/dist/Button-7xtrzn14.stx +89 -0
  8. package/dist/Calendar-egvx1pma.stx +232 -0
  9. package/dist/Card-r9w7vy1a.stx +74 -0
  10. package/dist/Checkbox-m8v46pmx.stx +92 -0
  11. package/dist/Checkout-vcnnr176.stx +39 -0
  12. package/dist/CodeBlock-mwex82cm.stx +57 -0
  13. package/dist/Combobox-npb08vkp.stx +13 -0
  14. package/dist/ComboboxButton-vcdyq4zw.stx +13 -0
  15. package/dist/ComboboxInput-c9d2p02m.stx +25 -0
  16. package/dist/ComboboxOption-7d0h9ash.stx +52 -0
  17. package/dist/ComboboxOptions-4dtqc0qa.stx +12 -0
  18. package/dist/CommandPalette-ah00bf8v.stx +39 -0
  19. package/dist/CommandPaletteItem-2yx0gvtj.stx +32 -0
  20. package/dist/DefaultPaymentMethod-emw5fg8s.stx +62 -0
  21. package/dist/Dialog-1w4rz7x0.stx +19 -0
  22. package/dist/DialogBackdrop-qbm3y5ab.stx +9 -0
  23. package/dist/DialogDescription-01w5j74b.stx +11 -0
  24. package/dist/DialogPanel-brsszrrs.stx +16 -0
  25. package/dist/DialogTitle-3rxhwg21.stx +11 -0
  26. package/dist/Drawer-yfaz8q7f.stx +137 -0
  27. package/dist/Dropdown-ng7nx556.stx +24 -0
  28. package/dist/DropdownButton-vc4zpyrb.stx +23 -0
  29. package/dist/DropdownItem-z491y23c.stx +43 -0
  30. package/dist/DropdownItems-7ykf29sj.stx +18 -0
  31. package/dist/EmailInput-bfshpj92.stx +41 -0
  32. package/dist/Footer-xdaf02nr.stx +66 -0
  33. package/dist/Form-z4f7w6r1.stx +209 -0
  34. package/dist/Hero-9vvp7pxf.stx +25 -0
  35. package/dist/Image-ktk0451c.stx +197 -0
  36. package/dist/Installation-33bj4rm7.stx +39 -0
  37. package/dist/Listbox-xcejcmyc.stx +14 -0
  38. package/dist/ListboxButton-nx5kmw19.stx +17 -0
  39. package/dist/ListboxLabel-aky8a73n.stx +11 -0
  40. package/dist/ListboxOption-6h4hsdz5.stx +57 -0
  41. package/dist/ListboxOptions-2sacdtm5.stx +16 -0
  42. package/dist/Login-s2jkvd9y.stx +163 -0
  43. package/dist/Navigator-tqqdgdkw.stx +138 -0
  44. package/dist/Notification-sry8egea.stx +71 -0
  45. package/dist/NumberInput-zm93ddfw.stx +138 -0
  46. package/dist/Pagination-yza9v4qw.stx +183 -0
  47. package/dist/PasswordInput-4xnndp5y.stx +155 -0
  48. package/dist/PaymentMethods-jxba6kek.stx +113 -0
  49. package/dist/Popover-scbqatjq.stx +24 -0
  50. package/dist/PopoverButton-rbxhzj4k.stx +23 -0
  51. package/dist/PopoverPanel-9ng1rm6e.stx +23 -0
  52. package/dist/Portal-j111yvqp.stx +74 -0
  53. package/dist/Progress-gbmw3akr.stx +142 -0
  54. package/dist/Radio-1n9qamv1.stx +81 -0
  55. package/dist/RadioGroup-12dw2vhk.stx +13 -0
  56. package/dist/RadioGroupDescription-bjm3mdht.stx +11 -0
  57. package/dist/RadioGroupLabel-aky8a73n.stx +11 -0
  58. package/dist/RadioGroupOption-9pcxgwmd.stx +51 -0
  59. package/dist/SearchInput-g240e2nq.stx +63 -0
  60. package/dist/Select-p9f94b20.stx +89 -0
  61. package/dist/Sidebar-gwxw8q38.stx +288 -0
  62. package/dist/SidebarFooter-887kxret.stx +95 -0
  63. package/dist/SidebarHeader-qjeyx0hv.stx +100 -0
  64. package/dist/SidebarItem-4dpwtmb4.stx +118 -0
  65. package/dist/SidebarSection-kh92fk4m.stx +108 -0
  66. package/dist/Signup-3nxq5zag.stx +161 -0
  67. package/dist/Skeleton-g0nx1njm.stx +48 -0
  68. package/dist/Spinner-w4zj58xp.stx +109 -0
  69. package/dist/Stepper-rwc5actp.stx +17 -0
  70. package/dist/StepperStep-h0k657nm.stx +53 -0
  71. package/dist/SubscriptionCheckout-4cbxdg7w.stx +353 -0
  72. package/dist/Switch-kjq8qd2p.stx +74 -0
  73. package/dist/Table-59j9qwp0.stx +14 -0
  74. package/dist/TableBody-reka2gwv.stx +10 -0
  75. package/dist/TableCell-j7nh4sgr.stx +10 -0
  76. package/dist/TableHead-ecbrwpqm.stx +10 -0
  77. package/dist/TableHeader-jn2shwsv.stx +13 -0
  78. package/dist/TableRow-xz8rrxhc.stx +11 -0
  79. package/dist/Tabs-kb6ex6m7.stx +145 -0
  80. package/dist/Teleport-819cg9zm.stx +101 -0
  81. package/dist/TextInput-zx9kgr79.stx +146 -0
  82. package/dist/Textarea-5xvmrb0z.stx +119 -0
  83. package/dist/Tooltip-5ehqsy49.stx +76 -0
  84. package/dist/Transition-2j39s044.stx +174 -0
  85. package/dist/TwoFactorChallenge-2q4gg89m.stx +125 -0
  86. package/dist/Video-6aq4shh4.stx +45 -0
  87. package/dist/VirtualList-weh5qtm1.stx +83 -0
  88. package/dist/VirtualTable-59a1eskc.stx +113 -0
  89. package/dist/components/index.d.ts +4 -0
  90. package/dist/composables/index.d.ts +4 -0
  91. package/dist/composables/index.js +3 -0
  92. package/dist/composables/useCopyCode.d.ts +19 -0
  93. package/dist/composables/useDarkMode.d.ts +25 -0
  94. package/dist/composables/useSEO.d.ts +36 -0
  95. package/dist/composables/utilities/index.d.ts +5 -0
  96. package/dist/composables/utilities/useClickOutside.d.ts +28 -0
  97. package/dist/composables/utilities/useFocusTrap.d.ts +34 -0
  98. package/dist/composables/utilities/useKeyboard.d.ts +55 -0
  99. package/dist/composables/utilities/useLocalStorage.d.ts +33 -0
  100. package/dist/composables/utilities/useMediaQuery.d.ts +64 -0
  101. package/dist/index.d.ts +86 -0
  102. package/dist/index.js +19 -0
  103. package/dist/ui/accordion/index.d.ts +12 -0
  104. package/dist/ui/audio/index.d.ts +12 -0
  105. package/dist/ui/auth/index.d.ts +29 -0
  106. package/dist/ui/avatar/index.d.ts +11 -0
  107. package/dist/ui/badge/index.d.ts +9 -0
  108. package/dist/ui/breadcrumb/index.d.ts +13 -0
  109. package/dist/ui/button/index.d.ts +45 -0
  110. package/dist/ui/calendar/index.d.ts +13 -0
  111. package/dist/ui/card/index.d.ts +12 -0
  112. package/dist/ui/checkbox/index.d.ts +15 -0
  113. package/dist/ui/combobox/index.d.ts +35 -0
  114. package/dist/ui/command-palette/index.d.ts +13 -0
  115. package/dist/ui/dialog/index.d.ts +27 -0
  116. package/dist/ui/drawer/index.d.ts +8 -0
  117. package/dist/ui/dropdown/index.d.ts +25 -0
  118. package/dist/ui/form/index.d.ts +48 -0
  119. package/dist/ui/image/index.d.ts +21 -0
  120. package/dist/ui/input/index.d.ts +73 -0
  121. package/dist/ui/listbox/index.d.ts +34 -0
  122. package/dist/ui/navigator/index.d.ts +18 -0
  123. package/dist/ui/notification/index.d.ts +11 -0
  124. package/dist/ui/pagination/index.d.ts +10 -0
  125. package/dist/ui/payment/index.d.ts +53 -0
  126. package/dist/ui/popover/index.d.ts +19 -0
  127. package/dist/ui/portal/index.d.ts +5 -0
  128. package/dist/ui/progress/index.d.ts +11 -0
  129. package/dist/ui/radio/index.d.ts +14 -0
  130. package/dist/ui/radio-group/index.d.ts +26 -0
  131. package/dist/ui/select/index.d.ts +19 -0
  132. package/dist/ui/sidebar/index.d.ts +129 -0
  133. package/dist/ui/skeleton/index.d.ts +10 -0
  134. package/dist/ui/spinner/index.d.ts +8 -0
  135. package/dist/ui/stepper/index.d.ts +17 -0
  136. package/dist/ui/storage/index.d.ts +40 -0
  137. package/dist/ui/switch/index.d.ts +9 -0
  138. package/dist/ui/table/index.d.ts +29 -0
  139. package/dist/ui/tabs/index.d.ts +14 -0
  140. package/dist/ui/teleport/index.d.ts +6 -0
  141. package/dist/ui/textarea/index.d.ts +19 -0
  142. package/dist/ui/tooltip/index.d.ts +9 -0
  143. package/dist/ui/transition/index.d.ts +24 -0
  144. package/dist/ui/video/index.d.ts +15 -0
  145. package/dist/ui/virtual-list/index.d.ts +9 -0
  146. package/dist/ui/virtual-table/index.d.ts +19 -0
  147. package/dist/utils/accessibility.d.ts +285 -0
  148. package/dist/utils/animation/easing.d.ts +112 -0
  149. package/dist/utils/animation/helpers.d.ts +119 -0
  150. package/dist/utils/animation/index.d.ts +3 -0
  151. package/dist/utils/animation/keyframes.d.ts +334 -0
  152. package/dist/utils/error-handling.d.ts +182 -0
  153. package/dist/utils/highlighter.d.ts +27 -0
  154. package/dist/utils/highlighter.js +2 -0
  155. package/dist/utils/i18n.d.ts +245 -0
  156. package/dist/utils/keep-alive.d.ts +171 -0
  157. package/dist/utils/lazy-loading.d.ts +174 -0
  158. package/dist/utils/prop-validation.d.ts +106 -0
  159. package/dist/utils/theme.d.ts +234 -0
  160. package/package.json +69 -0
  161. package/src/components/CodeBlock.stx +57 -0
  162. package/src/components/Footer.stx +66 -0
  163. package/src/components/Hero.stx +25 -0
  164. package/src/components/Installation.stx +39 -0
  165. package/src/components/index.ts +4 -0
  166. package/src/composables/index.ts +4 -0
  167. package/src/composables/useCopyCode.ts +73 -0
  168. package/src/composables/useDarkMode.ts +100 -0
  169. package/src/composables/useSEO.ts +229 -0
  170. package/src/composables/utilities/index.ts +7 -0
  171. package/src/composables/utilities/useClickOutside.ts +72 -0
  172. package/src/composables/utilities/useFocusTrap.ts +159 -0
  173. package/src/composables/utilities/useKeyboard.ts +124 -0
  174. package/src/composables/utilities/useLocalStorage.ts +132 -0
  175. package/src/composables/utilities/useMediaQuery.ts +118 -0
  176. package/src/index.ts +99 -0
  177. package/src/stx.d.ts +4 -0
  178. package/src/ui/accordion/Accordion.stx +108 -0
  179. package/src/ui/accordion/index.ts +14 -0
  180. package/src/ui/audio/Audio.stx +50 -0
  181. package/src/ui/audio/README.md +42 -0
  182. package/src/ui/audio/index.ts +13 -0
  183. package/src/ui/auth/Login.stx +163 -0
  184. package/src/ui/auth/README.md +145 -0
  185. package/src/ui/auth/Signup.stx +161 -0
  186. package/src/ui/auth/TwoFactorChallenge.stx +125 -0
  187. package/src/ui/auth/index.ts +32 -0
  188. package/src/ui/avatar/Avatar.stx +88 -0
  189. package/src/ui/avatar/index.ts +12 -0
  190. package/src/ui/badge/Badge.stx +70 -0
  191. package/src/ui/badge/index.ts +10 -0
  192. package/src/ui/breadcrumb/Breadcrumb.stx +79 -0
  193. package/src/ui/breadcrumb/index.ts +15 -0
  194. package/src/ui/button/Button.stx +89 -0
  195. package/src/ui/button/README.md +100 -0
  196. package/src/ui/button/index.ts +85 -0
  197. package/src/ui/calendar/Calendar.stx +232 -0
  198. package/src/ui/calendar/README.md +254 -0
  199. package/src/ui/calendar/index.ts +14 -0
  200. package/src/ui/card/Card.stx +74 -0
  201. package/src/ui/card/index.ts +13 -0
  202. package/src/ui/checkbox/Checkbox.stx +92 -0
  203. package/src/ui/checkbox/index.ts +16 -0
  204. package/src/ui/combobox/Combobox.stx +13 -0
  205. package/src/ui/combobox/ComboboxButton.stx +13 -0
  206. package/src/ui/combobox/ComboboxInput.stx +25 -0
  207. package/src/ui/combobox/ComboboxOption.stx +52 -0
  208. package/src/ui/combobox/ComboboxOptions.stx +12 -0
  209. package/src/ui/combobox/README.md +154 -0
  210. package/src/ui/combobox/index.ts +40 -0
  211. package/src/ui/command-palette/CommandPalette.stx +39 -0
  212. package/src/ui/command-palette/CommandPaletteItem.stx +32 -0
  213. package/src/ui/command-palette/README.md +42 -0
  214. package/src/ui/command-palette/index.ts +15 -0
  215. package/src/ui/dialog/Dialog.stx +19 -0
  216. package/src/ui/dialog/DialogBackdrop.stx +9 -0
  217. package/src/ui/dialog/DialogDescription.stx +11 -0
  218. package/src/ui/dialog/DialogPanel.stx +16 -0
  219. package/src/ui/dialog/DialogTitle.stx +11 -0
  220. package/src/ui/dialog/README.md +133 -0
  221. package/src/ui/dialog/index.ts +32 -0
  222. package/src/ui/drawer/Drawer.stx +137 -0
  223. package/src/ui/drawer/README.md +110 -0
  224. package/src/ui/drawer/index.ts +9 -0
  225. package/src/ui/dropdown/Dropdown.stx +24 -0
  226. package/src/ui/dropdown/DropdownButton.stx +23 -0
  227. package/src/ui/dropdown/DropdownItem.stx +43 -0
  228. package/src/ui/dropdown/DropdownItems.stx +18 -0
  229. package/src/ui/dropdown/README.md +142 -0
  230. package/src/ui/dropdown/index.ts +29 -0
  231. package/src/ui/form/Form.stx +209 -0
  232. package/src/ui/form/index.ts +67 -0
  233. package/src/ui/heatmap/Heatmap.stx +315 -0
  234. package/src/ui/image/Image.stx +197 -0
  235. package/src/ui/image/README.md +171 -0
  236. package/src/ui/image/index.ts +22 -0
  237. package/src/ui/input/EmailInput.stx +41 -0
  238. package/src/ui/input/NumberInput.stx +138 -0
  239. package/src/ui/input/PasswordInput.stx +155 -0
  240. package/src/ui/input/SearchInput.stx +63 -0
  241. package/src/ui/input/TextInput.stx +146 -0
  242. package/src/ui/input/index.ts +180 -0
  243. package/src/ui/listbox/Listbox.stx +14 -0
  244. package/src/ui/listbox/ListboxButton.stx +17 -0
  245. package/src/ui/listbox/ListboxLabel.stx +11 -0
  246. package/src/ui/listbox/ListboxOption.stx +57 -0
  247. package/src/ui/listbox/ListboxOptions.stx +16 -0
  248. package/src/ui/listbox/README.md +143 -0
  249. package/src/ui/listbox/index.ts +39 -0
  250. package/src/ui/navigator/Navigator.stx +138 -0
  251. package/src/ui/navigator/README.md +352 -0
  252. package/src/ui/navigator/index.ts +20 -0
  253. package/src/ui/notification/Notification.stx +71 -0
  254. package/src/ui/notification/README.md +118 -0
  255. package/src/ui/notification/index.ts +12 -0
  256. package/src/ui/pagination/Pagination.stx +183 -0
  257. package/src/ui/pagination/index.ts +11 -0
  258. package/src/ui/payment/Checkout.stx +39 -0
  259. package/src/ui/payment/DefaultPaymentMethod.stx +62 -0
  260. package/src/ui/payment/PaymentMethods.stx +113 -0
  261. package/src/ui/payment/README.md +427 -0
  262. package/src/ui/payment/SubscriptionCheckout.stx +353 -0
  263. package/src/ui/payment/index.ts +59 -0
  264. package/src/ui/popover/Popover.stx +24 -0
  265. package/src/ui/popover/PopoverButton.stx +23 -0
  266. package/src/ui/popover/PopoverPanel.stx +23 -0
  267. package/src/ui/popover/README.md +95 -0
  268. package/src/ui/popover/index.ts +22 -0
  269. package/src/ui/portal/Portal.stx +74 -0
  270. package/src/ui/portal/index.ts +6 -0
  271. package/src/ui/progress/Progress.stx +142 -0
  272. package/src/ui/progress/index.ts +12 -0
  273. package/src/ui/radio/Radio.stx +81 -0
  274. package/src/ui/radio/index.ts +15 -0
  275. package/src/ui/radio-group/README.md +145 -0
  276. package/src/ui/radio-group/RadioGroup.stx +13 -0
  277. package/src/ui/radio-group/RadioGroupDescription.stx +11 -0
  278. package/src/ui/radio-group/RadioGroupLabel.stx +11 -0
  279. package/src/ui/radio-group/RadioGroupOption.stx +51 -0
  280. package/src/ui/radio-group/index.ts +30 -0
  281. package/src/ui/select/README.md +204 -0
  282. package/src/ui/select/Select.stx +89 -0
  283. package/src/ui/select/index.ts +21 -0
  284. package/src/ui/sidebar/Sidebar.stx +288 -0
  285. package/src/ui/sidebar/SidebarFooter.stx +95 -0
  286. package/src/ui/sidebar/SidebarHeader.stx +100 -0
  287. package/src/ui/sidebar/SidebarItem.stx +118 -0
  288. package/src/ui/sidebar/SidebarSection.stx +108 -0
  289. package/src/ui/sidebar/index.ts +175 -0
  290. package/src/ui/skeleton/Skeleton.stx +48 -0
  291. package/src/ui/skeleton/index.ts +11 -0
  292. package/src/ui/spinner/Spinner.stx +109 -0
  293. package/src/ui/spinner/index.ts +9 -0
  294. package/src/ui/stepper/README.md +36 -0
  295. package/src/ui/stepper/Stepper.stx +17 -0
  296. package/src/ui/stepper/StepperStep.stx +53 -0
  297. package/src/ui/stepper/index.ts +19 -0
  298. package/src/ui/storage/README.md +193 -0
  299. package/src/ui/storage/index.ts +347 -0
  300. package/src/ui/switch/README.md +133 -0
  301. package/src/ui/switch/Switch.stx +74 -0
  302. package/src/ui/switch/index.ts +10 -0
  303. package/src/ui/table/README.md +39 -0
  304. package/src/ui/table/Table.stx +14 -0
  305. package/src/ui/table/TableBody.stx +10 -0
  306. package/src/ui/table/TableCell.stx +10 -0
  307. package/src/ui/table/TableHead.stx +10 -0
  308. package/src/ui/table/TableHeader.stx +13 -0
  309. package/src/ui/table/TableRow.stx +11 -0
  310. package/src/ui/table/index.ts +35 -0
  311. package/src/ui/tabs/Tabs.stx +145 -0
  312. package/src/ui/tabs/index.ts +16 -0
  313. package/src/ui/teleport/Teleport.stx +101 -0
  314. package/src/ui/teleport/index.ts +7 -0
  315. package/src/ui/textarea/Textarea.stx +119 -0
  316. package/src/ui/textarea/index.ts +20 -0
  317. package/src/ui/tooltip/Tooltip.stx +76 -0
  318. package/src/ui/tooltip/index.ts +10 -0
  319. package/src/ui/transition/README.md +30 -0
  320. package/src/ui/transition/Transition.stx +174 -0
  321. package/src/ui/transition/index.ts +25 -0
  322. package/src/ui/video/README.md +48 -0
  323. package/src/ui/video/Video.stx +45 -0
  324. package/src/ui/video/index.ts +16 -0
  325. package/src/ui/virtual-list/VirtualList.stx +83 -0
  326. package/src/ui/virtual-list/index.ts +10 -0
  327. package/src/ui/virtual-table/VirtualTable.stx +113 -0
  328. package/src/ui/virtual-table/index.ts +21 -0
  329. package/src/utils/PROP_VALIDATION.md +458 -0
  330. package/src/utils/THEME_SYSTEM.md +702 -0
  331. package/src/utils/accessibility.ts +841 -0
  332. package/src/utils/animation/easing.ts +368 -0
  333. package/src/utils/animation/helpers.ts +223 -0
  334. package/src/utils/animation/index.ts +5 -0
  335. package/src/utils/animation/keyframes.ts +230 -0
  336. package/src/utils/error-handling.ts +473 -0
  337. package/src/utils/highlighter.ts +93 -0
  338. package/src/utils/i18n.ts +634 -0
  339. package/src/utils/keep-alive.ts +818 -0
  340. package/src/utils/lazy-loading.ts +530 -0
  341. package/src/utils/prop-validation.ts +478 -0
  342. package/src/utils/theme.ts +626 -0
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Hook for responsive media queries
3
+ *
4
+ * @param query - Media query string
5
+ * @param options - Configuration options
6
+ * @returns Object with matches boolean and updateMatches function
7
+ */
8
+ export declare function useMediaQuery(query: string, options?: UseMediaQueryOptions): { matches: boolean, updateMatches: () => void };
9
+ /**
10
+ * Use a predefined breakpoint
11
+ * @param breakpoint - Breakpoint name from Breakpoints constant
12
+ */
13
+ export declare function useBreakpoint(breakpoint: keyof typeof Breakpoints): { matches: boolean, updateMatches: () => void };
14
+ /**
15
+ * Check if viewport is mobile (max-width: 767px)
16
+ */
17
+ export declare function useIsMobile(): { matches: boolean, updateMatches: () => void };
18
+ /**
19
+ * Check if viewport is desktop (min-width: 1024px)
20
+ */
21
+ export declare function useIsDesktop(): { matches: boolean, updateMatches: () => void };
22
+ /**
23
+ * Check if user prefers dark color scheme
24
+ */
25
+ export declare function useIsDarkMode(): { matches: boolean, updateMatches: () => void };
26
+ /**
27
+ * Check if user prefers reduced motion
28
+ */
29
+ export declare function usePrefersReducedMotion(): { matches: boolean, updateMatches: () => void };
30
+ /**
31
+ * Common responsive breakpoints
32
+ */
33
+ export declare const Breakpoints: {
34
+ 'xs': '(min-width: 320px)';
35
+ 'sm': '(min-width: 640px)';
36
+ 'md': '(min-width: 768px)';
37
+ 'lg': '(min-width: 1024px)';
38
+ 'xl': '(min-width: 1280px)';
39
+ '2xl': '(min-width: 1536px)';
40
+ 'mobile': '(max-width: 767px)';
41
+ 'tablet': '(min-width: 768px) and (max-width: 1023px)';
42
+ 'desktop': '(min-width: 1024px)';
43
+ 'dark': '(prefers-color-scheme: dark)';
44
+ 'light': '(prefers-color-scheme: light)';
45
+ 'reducedMotion': '(prefers-reduced-motion: reduce)';
46
+ 'portrait': '(orientation: portrait)';
47
+ 'landscape': '(orientation: landscape)'
48
+ };
49
+ /**
50
+ * Hook for responsive media queries
51
+ *
52
+ * @example
53
+ * ```ts
54
+ * const { matches } = useMediaQuery('(min-width: 768px)')
55
+ * const { matches: isDark } = useIsDarkMode()
56
+ * const { matches: isMobile } = useIsMobile()
57
+ * ```
58
+ */
59
+ /**
60
+ * Options for useMediaQuery hook
61
+ */
62
+ export declare interface UseMediaQueryOptions {
63
+ defaultValue?: boolean
64
+ }
@@ -0,0 +1,86 @@
1
+ // Types
2
+ export declare interface ComponentProps {
3
+ className?: string
4
+ }
5
+ export declare interface CodeBlockProps extends ComponentProps {
6
+ code: string
7
+ language?: string
8
+ theme?: 'light' | 'dark' | 'auto'
9
+ lineNumbers?: boolean
10
+ copyable?: boolean
11
+ }
12
+ export declare interface HeroProps extends ComponentProps {
13
+ title?: string
14
+ description?: string
15
+ githubUrl?: string
16
+ }
17
+ export declare interface FooterProps extends ComponentProps {
18
+ author?: string
19
+ authorUrl?: string
20
+ project?: string
21
+ projectUrl?: string
22
+ twitterUrl?: string
23
+ sponsorUrl?: string
24
+ coffeeUrl?: string
25
+ }
26
+ export declare interface InstallationProps extends ComponentProps {
27
+ packageName?: string
28
+ }
29
+ export { default as CodeBlock } from './components/CodeBlock.stx';
30
+ export { default as Footer } from './components/Footer.stx';
31
+ export { default as Hero } from './components/Hero.stx';
32
+ export { default as Installation } from './components/Installation.stx';
33
+ export * from './composables';
34
+ export * from './ui/accordion';
35
+ export * from './ui/audio';
36
+ export * from './ui/auth';
37
+ export * from './ui/avatar';
38
+ export * from './ui/badge';
39
+ export * from './ui/breadcrumb';
40
+ export * from './ui/button';
41
+ export * from './ui/calendar';
42
+ export * from './ui/card';
43
+ export * from './ui/checkbox';
44
+ export * from './ui/combobox';
45
+ export * from './ui/command-palette';
46
+ export * from './ui/dialog';
47
+ export * from './ui/drawer';
48
+ export * from './ui/dropdown';
49
+ export * from './ui/form';
50
+ export * from './ui/image';
51
+ export * from './ui/input';
52
+ export * from './ui/listbox';
53
+ export * from './ui/navigator';
54
+ export * from './ui/notification';
55
+ export * from './ui/pagination';
56
+ export * from './ui/payment';
57
+ export * from './ui/popover';
58
+ export * from './ui/portal';
59
+ export * from './ui/progress';
60
+ export * from './ui/radio';
61
+ export * from './ui/radio-group';
62
+ export * from './ui/select';
63
+ export * from './ui/sidebar';
64
+ export * from './ui/skeleton';
65
+ export * from './ui/spinner';
66
+ export * from './ui/stepper';
67
+ export * from './ui/storage';
68
+ export * from './ui/switch';
69
+ export * from './ui/table';
70
+ export * from './ui/tabs';
71
+ export * from './ui/teleport';
72
+ export * from './ui/textarea';
73
+ export * from './ui/tooltip';
74
+ export * from './ui/transition';
75
+ export * from './ui/video';
76
+ export * from './ui/virtual-list';
77
+ export * from './ui/virtual-table';
78
+ export * from './utils/accessibility';
79
+ export * from './utils/animation';
80
+ export * from './utils/error-handling';
81
+ export * from './utils/highlighter';
82
+ export * from './utils/i18n';
83
+ export * from './utils/keep-alive';
84
+ export * from './utils/lazy-loading';
85
+ export * from './utils/prop-validation';
86
+ export * from './utils/theme';
package/dist/index.js ADDED
@@ -0,0 +1,19 @@
1
+ // @bun
2
+ var de="./CodeBlock-mwex82cm.stx";var pe="./Footer-xdaf02nr.stx";var ue="./Hero-9vvp7pxf.stx";var xe="./Installation-33bj4rm7.stx";function zo(e){let{code:s,onSuccess:t,onError:r,timeout:o=2000}=e,a=!1,i=null;return{copied:a,copy:async()=>{try{if(!navigator.clipboard)throw Error("Clipboard API not available");await navigator.clipboard.writeText(s),a=!0,t?.(),i=setTimeout(()=>{a=!1,i=null},o)}catch(c){let u=c instanceof Error?c:Error("Failed to copy code");r?.(u),console.error("Failed to copy code:",u)}},reset:()=>{if(a=!1,i)clearTimeout(i),i=null}}}async function Mo(e){try{return await navigator.clipboard.writeText(e),!0}catch(s){return console.error("Failed to copy to clipboard:",s),!1}}function be(){if(typeof window>"u")return"light";return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function X(e){return e==="system"?be():e}function Lo(e={}){let{storageKey:s="theme",defaultTheme:t="system"}=e,r=t;if(typeof window<"u"&&typeof localStorage<"u"){let d=localStorage.getItem(s);if(d)r=d}let o=X(r)==="dark",a=(d)=>{let c=X(d);if(typeof document<"u")if(c==="dark")document.documentElement.classList.add("dark");else document.documentElement.classList.remove("dark");if(typeof localStorage<"u")localStorage.setItem(s,d)},i=(d)=>{r=d,a(d)},n=()=>{let c=X(r)==="dark"?"light":"dark";i(c)};if(a(r),typeof window<"u"&&r==="system")window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",(d)=>{if(r==="system")a("system")});return{isDark:o,theme:r,toggle:n,setTheme:i}}function me(e,s){if(typeof document>"u")return;document.title=s?s.replace("%s",e):e}function S(e,s,t=!1){if(typeof document>"u")return;let r=t?"property":"name",o=document.querySelector(`meta[${r}="${e}"]`);if(!o)o=document.createElement("meta"),o.setAttribute(r,e),document.head.appendChild(o);o.setAttribute("content",s)}function he(e,s){if(typeof document>"u")return;let t=document.querySelector(`link[rel="${e}"]`);if(!t)t=document.createElement("link"),t.setAttribute("rel",e),document.head.appendChild(t);t.setAttribute("href",s)}function To(e){let{title:s,description:t,author:r,keywords:o,ogImage:a,ogImageWidth:i,ogImageHeight:n,twitterCard:d="summary_large_image",twitterSite:c,twitterCreator:u,canonical:p}=e;if(s)me(s),S("og:title",s,!0),S("twitter:title",s);if(t)S("description",t),S("og:description",t,!0),S("twitter:description",t);if(r)S("author",r);if(o&&o.length>0)S("keywords",o.join(", "));if(a)S("og:image",a,!0),S("twitter:image",a);if(i)S("og:image:width",i,!0);if(n)S("og:image:height",n,!0);if(S("twitter:card",d),c)S("twitter:site",c);if(u)S("twitter:creator",u);if(p)he("canonical",p);if(S("og:type","website",!0),typeof window<"u")S("og:url",window.location.href,!0)}function Bo(e){let s=[],{title:t,description:r,author:o,keywords:a,ogImage:i,ogImageWidth:n,ogImageHeight:d,twitterCard:c="summary_large_image",twitterSite:u,twitterCreator:p,canonical:b}=e;if(t)s.push(`<title>${N(t)}</title>`),s.push(`<meta property="og:title" content="${N(t)}" />`),s.push(`<meta name="twitter:title" content="${N(t)}" />`);if(r)s.push(`<meta name="description" content="${N(r)}" />`),s.push(`<meta property="og:description" content="${N(r)}" />`),s.push(`<meta name="twitter:description" content="${N(r)}" />`);if(o)s.push(`<meta name="author" content="${N(o)}" />`);if(a&&a.length>0)s.push(`<meta name="keywords" content="${N(a.join(", "))}" />`);if(i)s.push(`<meta property="og:image" content="${N(i)}" />`),s.push(`<meta name="twitter:image" content="${N(i)}" />`);if(n)s.push(`<meta property="og:image:width" content="${N(n)}" />`);if(d)s.push(`<meta property="og:image:height" content="${N(d)}" />`);if(s.push(`<meta name="twitter:card" content="${N(c)}" />`),u)s.push(`<meta name="twitter:site" content="${N(u)}" />`);if(p)s.push(`<meta name="twitter:creator" content="${N(p)}" />`);if(b)s.push(`<link rel="canonical" href="${N(b)}" />`);return s.push('<meta property="og:type" content="website" />'),s.join(`
3
+ `)}function N(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function jo(e,s,t={}){let{enabled:r=!0,ignore:o=[]}=t,a=(i)=>{if(!r||!e)return;let n=i.target;if(!e.contains(n)){if(!o.some((c)=>{let u=document.querySelectorAll(c);return Array.from(u).some((p)=>p.contains(n))}))s(i)}};if(typeof document<"u")document.addEventListener("mousedown",a),document.addEventListener("touchstart",a);return()=>{if(typeof document<"u")document.removeEventListener("mousedown",a),document.removeEventListener("touchstart",a)}}function Ho(e,s={}){let{enabled:t=!0,initialFocus:r=null,returnFocus:o=!0,fallbackFocus:a=null}=s,i=null,n=!1;function d(){if(!e)return[];let f=["a[href]","button:not([disabled])","textarea:not([disabled])","input:not([disabled])","select:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(",");return Array.from(e.querySelectorAll(f))}function c(f){if(!t||!n||!e)return;let C=d();if(C.length===0){f.preventDefault();return}let v=C[0],k=C[C.length-1];if(f.shiftKey){if(document.activeElement===v||document.activeElement===e)f.preventDefault(),k.focus()}else if(document.activeElement===k)f.preventDefault(),v.focus()}function u(f){if(f.key==="Escape"&&t&&n)b()}function p(){if(!t||!e||n)return;if(i=document.activeElement,r)r.focus();else{let f=d();if(f.length>0)f[0].focus();else if(a)a.focus();else e.focus()}document.addEventListener("keydown",c),document.addEventListener("keydown",u),n=!0}function b(){if(!n)return;if(document.removeEventListener("keydown",c),document.removeEventListener("keydown",u),o&&i)i.focus();n=!1}return{activate:p,deactivate:b}}function Eo(e,s={}){let{enabled:t=!0,preventDefault:r=!0,stopPropagation:o=!1,target:a=typeof document<"u"?document:null}=s,i=Array.isArray(e)?e:[e],n=(d)=>{if(!t)return;i.forEach((c)=>{if(!(Array.isArray(c.key)?c.key:[c.key]).some((b)=>b.toLowerCase()===d.key.toLowerCase()))return;if(c.ctrl!==void 0&&c.ctrl!==d.ctrlKey)return;if(c.shift!==void 0&&c.shift!==d.shiftKey)return;if(c.alt!==void 0&&c.alt!==d.altKey)return;if(c.meta!==void 0&&c.meta!==d.metaKey)return;if(r)d.preventDefault();if(o)d.stopPropagation();c.handler(d)})};if(a)a.addEventListener("keydown",n);return()=>{if(a)a.removeEventListener("keydown",n)}}var Ao={ESCAPE:"Escape",ENTER:"Enter",SPACE:" ",TAB:"Tab",ARROW_UP:"ArrowUp",ARROW_DOWN:"ArrowDown",ARROW_LEFT:"ArrowLeft",ARROW_RIGHT:"ArrowRight",HOME:"Home",END:"End",PAGE_UP:"PageUp",PAGE_DOWN:"PageDown"};function Fo(e,s,t={}){let{serializer:r=JSON.stringify,deserializer:o=JSON.parse,onError:a=console.error}=t,i=s;try{if(typeof window<"u"){let p=window.localStorage.getItem(e);if(p!==null)i=o(p)}}catch(p){a(p)}let n=i,d=new Set;function c(p){try{let b=typeof p==="function"?p(n):p;if(n=b,typeof window<"u")window.localStorage.setItem(e,r(b));d.forEach((f)=>f(b))}catch(b){a(b)}}function u(){try{if(n=s,typeof window<"u")window.localStorage.removeItem(e);d.forEach((p)=>p(s))}catch(p){a(p)}}if(typeof window<"u"){let p=(b)=>{if(b.key===e&&b.newValue!==null)try{let f=o(b.newValue);n=f,d.forEach((C)=>C(f))}catch(f){a(f)}else if(b.key===e&&b.newValue===null)n=s,d.forEach((f)=>f(s))};window.addEventListener("storage",p)}return{value:n,setValue:c,removeValue:u}}function j(e,s={}){let{defaultValue:t=!1}=s,r=t,o=null;if(typeof window<"u"&&"matchMedia"in window){o=window.matchMedia(e),r=o.matches;let i=(n)=>{r=n.matches};if(o.addEventListener)o.addEventListener("change",i);else o.addListener(i)}function a(){if(o)r=o.matches}return{matches:r,updateMatches:a}}var q={xs:"(min-width: 320px)",sm:"(min-width: 640px)",md:"(min-width: 768px)",lg:"(min-width: 1024px)",xl:"(min-width: 1280px)","2xl":"(min-width: 1536px)",mobile:"(max-width: 767px)",tablet:"(min-width: 768px) and (max-width: 1023px)",desktop:"(min-width: 1024px)",dark:"(prefers-color-scheme: dark)",light:"(prefers-color-scheme: light)",reducedMotion:"(prefers-reduced-motion: reduce)",portrait:"(orientation: portrait)",landscape:"(orientation: landscape)"};function Go(e){return j(q[e])}function Yo(){return j(q.mobile)}function Wo(){return j(q.desktop)}function _o(){return j(q.dark)}function Vo(){return j(q.reducedMotion)}var Ce="./Accordion-x2gjedap.stx";var we="./Audio-0fk6p9tn.stx";var ke="./Login-s2jkvd9y.stx";var Ne="./Signup-3nxq5zag.stx";var Me="./TwoFactorChallenge-2q4gg89m.stx";var Le="./Avatar-5m0v0s4x.stx";var Te="./Badge-ynes82vv.stx";var Pe="./Breadcrumb-h9n427sk.stx";import H from"process";var je="https://stacksjs.com/components";class z extends Error{component;context;constructor(e,s,t={}){let r=z.formatMessage(e,s,t);super(r);if(this.name="ComponentError",this.component=e,this.context={component:e,...t},Error.captureStackTrace)Error.captureStackTrace(this,z)}static formatMessage(e,s,t){let r=`[${e}] ${s}`;if(t.prop)r+=`
4
+ Prop: "${t.prop}"`;if(t.received!==void 0)r+=`
5
+ Received: ${JSON.stringify(t.received)}`;if(t.expected!==void 0){let o=Array.isArray(t.expected)?t.expected.map((a)=>JSON.stringify(a)).join(", "):JSON.stringify(t.expected);r+=`
6
+ Expected: ${o}`}if(t.details)r+=`
7
+ Details: ${t.details}`;if(t.docsUrl)r+=`
8
+ Documentation: ${t.docsUrl}`;else if(e)r+=`
9
+ Documentation: ${je}/${e.toLowerCase()}`;return r}toJSON(){return{name:this.name,message:this.message,component:this.component,context:this.context,stack:this.stack}}}var P={invalidProp(e,s,t,r){return new z(e,`Invalid prop value for "${s}"`,{prop:s,received:t,expected:r,details:Array.isArray(r)?`The "${s}" prop must be one of the allowed values`:`The "${s}" prop does not match the expected type`})},requiredProp(e,s){return new z(e,`Required prop "${s}" is missing`,{prop:s,details:`The "${s}" prop is required for ${e} to function correctly`})},invalidType(e,s,t,r){return new z(e,`Invalid type for prop "${s}"`,{prop:s,received:typeof t,expected:r,details:`Expected "${s}" to be of type ${r}, but received ${typeof t}`})},componentNotFound(e){return new z("ComponentLoader",`Component "${e}" not found`,{component:e,details:"Make sure the component is properly imported and registered"})},invalidChildren(e,s,t){return new z(e,"Invalid children",{received:typeof s,expected:t,details:`${e} expects ${t} as children`})},stateUpdate(e,s,t){return new z(e,`Failed to update state "${s}"`,{details:t.message})},eventHandler(e,s,t){return new z(e,`Error in "${s}" event handler`,{details:t.message})},render(e,s){return new z(e,"Failed to render component",{details:s.message})}},A=null;function va(e){A=e}function Ca(){A=null}function O(e,s={}){let{throwError:t=!0,logError:r=!0}=s;if(r&&H.env.NODE_ENV!=="production"){if(console.error("Component Error:",e),e instanceof z)console.group("Error Details"),console.log("Component:",e.component),console.log("Context:",e.context),console.groupEnd()}if(A)try{A(e)}catch(o){console.error("Error in error handler:",o)}if(t)throw e}function re(e,s,t){return(...r)=>{try{let o=e(...r);if(o instanceof Promise)return o.catch((a)=>{let i=P.eventHandler(s,t,a);throw O(i,{throwError:!1}),i});return o}catch(o){let a=P.eventHandler(s,t,o);throw O(a,{throwError:!1}),a}}}function qe(e,s){if(!e)throw s}function He(e,s,t={}){if(H.env.NODE_ENV==="production")return;let r=z.formatMessage(e,s,t);console.warn(`\u26A0\uFE0F ${r}`)}function ya(e,s){if(H.env.NODE_ENV==="production")return;qe(e,s)}function wa(e){let s=typeof H<"u"&&H.env.DEBUG==="true";return{log(...t){if(s)console.log(`[${e}]`,...t)},warn(t,r){He(e,t,r)},error(t,r){let o=new z(e,t,r);O(o,{throwError:!1})}}}function $a(e,s,t){try{return s()}catch(r){let o=P.render(e,r);return O(o,{throwError:!1}),t}}import Re from"process";var F=Re.env.NODE_ENV!=="production";class ${validate;message;isRequired;constructor(e,s,t=!1){this.validate=e;this.message=s;this.isRequired=t}get required(){return new $(this.validate,this.message,!0)}}var l={string:new $((e)=>typeof e==="string",(e,s,t)=>`Invalid prop \`${s}\` of type \`${typeof e}\` supplied to \`${t}\`, expected \`string\`.`),number:new $((e)=>typeof e==="number"&&!Number.isNaN(e),(e,s,t)=>`Invalid prop \`${s}\` of type \`${typeof e}\` supplied to \`${t}\`, expected \`number\`.`),boolean:new $((e)=>typeof e==="boolean",(e,s,t)=>`Invalid prop \`${s}\` of type \`${typeof e}\` supplied to \`${t}\`, expected \`boolean\`.`),func:new $((e)=>typeof e==="function",(e,s,t)=>`Invalid prop \`${s}\` of type \`${typeof e}\` supplied to \`${t}\`, expected \`function\`.`),object:new $((e)=>typeof e==="object"&&e!==null&&!Array.isArray(e),(e,s,t)=>`Invalid prop \`${s}\` of type \`${typeof e}\` supplied to \`${t}\`, expected \`object\`.`),array:new $((e)=>Array.isArray(e),(e,s,t)=>`Invalid prop \`${s}\` of type \`${typeof e}\` supplied to \`${t}\`, expected \`array\`.`),any:new $(()=>!0,()=>""),oneOf(e){return new $((s)=>e.includes(s),(s,t,r)=>`Invalid prop \`${t}\` of value \`${s}\` supplied to \`${r}\`, expected one of [${e.map((o)=>JSON.stringify(o)).join(", ")}].`)},oneOfType(e){return new $((s,t,r)=>e.some((o)=>o.validate(s,t,r)),(s,t,r)=>`Invalid prop \`${t}\` supplied to \`${r}\`, expected one of the specified types.`)},arrayOf(e){return new $((s,t,r)=>{if(!Array.isArray(s))return!1;return s.every((o,a)=>e.validate(o,`${t}[${a}]`,r))},(s,t,r)=>`Invalid prop \`${t}\` supplied to \`${r}\`, expected array of specified type.`)},shape(e){return new $((s,t,r)=>{if(typeof s!=="object"||s===null||Array.isArray(s))return!1;for(let[o,a]of Object.entries(e)){if(a.isRequired&&!(o in s))return!1;if(o in s&&!a.validate(s[o],`${t}.${o}`,r))return!1}return!0},(s,t,r)=>`Invalid prop \`${t}\` supplied to \`${r}\`, expected object matching specified shape.`)},instanceOf(e){return new $((s)=>s instanceof e,(s,t,r)=>`Invalid prop \`${t}\` supplied to \`${r}\`, expected instance of \`${e.name}\`.`)},custom(e,s){return new $(e,typeof s==="string"?()=>s:s)},min(e){return new $((s)=>typeof s==="number"&&s>=e,(s,t,r)=>`Invalid prop \`${t}\` of value \`${s}\` supplied to \`${r}\`, expected value >= ${e}.`)},max(e){return new $((s)=>typeof s==="number"&&s<=e,(s,t,r)=>`Invalid prop \`${t}\` of value \`${s}\` supplied to \`${r}\`, expected value <= ${e}.`)},range(e,s){return new $((t)=>typeof t==="number"&&t>=e&&t<=s,(t,r,o)=>`Invalid prop \`${r}\` of value \`${t}\` supplied to \`${o}\`, expected value between ${e} and ${s}.`)},pattern(e){return new $((s)=>typeof s==="string"&&e.test(s),(s,t,r)=>`Invalid prop \`${t}\` of value \`${s}\` supplied to \`${r}\`, expected value matching pattern ${e}.`)},email:new $((e)=>typeof e==="string"&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e),(e,s,t)=>`Invalid prop \`${s}\` of value \`${e}\` supplied to \`${t}\`, expected valid email address.`),url:new $((e)=>{if(typeof e!=="string")return!1;try{let s=new URL(e);return!0}catch{return!1}},(e,s,t)=>`Invalid prop \`${s}\` of value \`${e}\` supplied to \`${t}\`, expected valid URL.`)};function Ee(e,s,t,r={}){let{throwOnError:o=!1,logWarnings:a=F}=r,i=[];if(!F)return{valid:!0,errors:[]};for(let[n,d]of Object.entries(t)){let c=s[n],u=c===void 0;if(d.isRequired&&u){let p=`Required prop \`${n}\` was not specified in \`${e}\`.`;i.push(p);continue}if(u)continue;if(!d.validate(c,n,e)){let p=d.message(c,n,e);i.push(p)}}if(i.length>0){if(a)console.group(`\u26A0\uFE0F Prop validation failed for \`${e}\``),i.forEach((n)=>console.warn(n)),console.groupEnd();if(o)throw Error(`Prop validation failed for \`${e}\`:
10
+ ${i.join(`
11
+ `)}`)}return{valid:i.length===0,errors:i}}function L(e,s,t){return(r)=>Ee(e,r,s,t)}function Na(e,s,t="value"){if(!F)return;if(!s.validate(e,t,"assertion"))throw Error(s.message(e,t,"assertion"))}function za(e,s,t="value"){if(!F)return;if(!s.validate(e,t,"warning"))console.warn(s.message(e,t,"warning"))}var Oe="./Button-7xtrzn14.stx";var Fe={variant:l.oneOf(["primary","secondary","outline","ghost","danger"]),size:l.oneOf(["xs","sm","md","lg","xl"]),disabled:l.boolean,loading:l.boolean,type:l.oneOf(["button","submit","reset"]),fullWidth:l.boolean,leftIcon:l.string,rightIcon:l.string,className:l.string,onClick:l.func},Ta=L("Button",Fe);function Ba(e){return re(e,"Button","onClick")}function Pa(e){if(e&&!["primary","secondary","outline","ghost","danger"].includes(e))throw P.invalidProp("Button","variant",e,["primary","secondary","outline","ghost","danger"])}function ja(e){if(e&&!["xs","sm","md","lg","xl"].includes(e))throw P.invalidProp("Button","size",e,["xs","sm","md","lg","xl"])}var Ge="./Calendar-egvx1pma.stx";var We="./Card-r9w7vy1a.stx";var Ve="./Checkbox-m8v46pmx.stx";var Xe="./Combobox-npb08vkp.stx";var Ke="./ComboboxButton-vcdyq4zw.stx";var es="./ComboboxInput-c9d2p02m.stx";var ts="./ComboboxOption-7d0h9ash.stx";var os="./ComboboxOptions-4dtqc0qa.stx";var is="./CommandPalette-ah00bf8v.stx";var ls="./CommandPaletteItem-2yx0gvtj.stx";var cs="./Dialog-1w4rz7x0.stx";var gs="./DialogBackdrop-qbm3y5ab.stx";var fs="./DialogDescription-01w5j74b.stx";var bs="./DialogPanel-brsszrrs.stx";var hs="./DialogTitle-3rxhwg21.stx";var Cs="./Drawer-yfaz8q7f.stx";var ws="./Dropdown-ng7nx556.stx";var ks="./DropdownButton-vc4zpyrb.stx";var Ns="./DropdownItem-z491y23c.stx";var Ms="./DropdownItems-7ykf29sj.stx";var Ls="./Form-z4f7w6r1.stx";var Is={action:l.string,method:l.oneOf(["GET","POST","PUT","DELETE","PATCH"]),validationSchema:l.object,initialValues:l.object,validateOnChange:l.boolean,validateOnBlur:l.boolean,onSubmit:l.func,onError:l.func,className:l.string},Pi=L("Form",Is);var Bs="./Image-ktk0451c.stx";var js="./EmailInput-bfshpj92.stx";var Hs="./NumberInput-zm93ddfw.stx";var Es="./PasswordInput-4xnndp5y.stx";var Os="./SearchInput-g240e2nq.stx";var Us="./TextInput-zx9kgr79.stx";var Gs={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string},Ys={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,leftIcon:l.string,rightIcon:l.string,clearable:l.boolean,maxLength:l.number,showCount:l.boolean},Ws={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,min:l.number,max:l.number,step:l.number,showControls:l.boolean},_s={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,showStrength:l.boolean},Vs={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,onSearch:l.func,loading:l.boolean},Wi=L("TextInput",Ys),_i=L("EmailInput",Gs),Vi=L("PasswordInput",_s),Zi=L("NumberInput",Ws),Xi=L("SearchInput",Vs);var Xs="./Listbox-xcejcmyc.stx";var Ks="./ListboxButton-nx5kmw19.stx";var et="./ListboxLabel-aky8a73n.stx";var tt="./ListboxOption-6h4hsdz5.stx";var ot="./ListboxOptions-2sacdtm5.stx";var it="./Navigator-tqqdgdkw.stx";var lt="./Notification-sry8egea.stx";var ct="./Pagination-yza9v4qw.stx";var gt="./Checkout-vcnnr176.stx";var ft="./DefaultPaymentMethod-emw5fg8s.stx";var bt="./PaymentMethods-jxba6kek.stx";var ht="./SubscriptionCheckout-4cbxdg7w.stx";var Ct="./Popover-scbqatjq.stx";var wt="./PopoverButton-rbxhzj4k.stx";var kt="./PopoverPanel-9ng1rm6e.stx";var Nt="./Portal-j111yvqp.stx";var Mt="./Progress-gbmw3akr.stx";var Lt="./Radio-1n9qamv1.stx";var Tt="./RadioGroup-12dw2vhk.stx";var Pt="./RadioGroupDescription-bjm3mdht.stx";var qt="./RadioGroupLabel-aky8a73n.stx";var Rt="./RadioGroupOption-9pcxgwmd.stx";var At="./Select-p9f94b20.stx";var Ft="./Sidebar-gwxw8q38.stx";var Gt="./SidebarSection-kh92fk4m.stx";var Wt="./SidebarItem-4dpwtmb4.stx";var Vt="./SidebarHeader-qjeyx0hv.stx";var Xt="./SidebarFooter-887kxret.stx";var Kt="./Skeleton-g0nx1njm.stx";var er="./Spinner-w4zj58xp.stx";var tr="./Stepper-rwc5actp.stx";var or="./StepperStep-h0k657nm.stx";class U{storage;namespace;watchers=new Map;encryptionKey="stx-storage-key";constructor(e="local",s=""){if(this.storage=e==="local"?globalThis.localStorage:globalThis.sessionStorage,this.namespace=s,typeof window<"u")window.addEventListener("storage",this.handleStorageEvent.bind(this))}handleStorageEvent(e){if(!e.key)return;let s=this.namespace&&e.key.startsWith(`${this.namespace}:`)?e.key.slice(this.namespace.length+1):e.key,t=this.watchers.get(s);if(t){let r=e.oldValue?JSON.parse(e.oldValue).value:null,o=e.newValue?JSON.parse(e.newValue).value:null;t.forEach((a)=>a(o,r,s))}}encrypt(e){let s="";for(let t=0;t<e.length;t++)s+=String.fromCharCode(e.charCodeAt(t)^this.encryptionKey.charCodeAt(t%this.encryptionKey.length));return btoa(s)}decrypt(e){try{let s=atob(e),t="";for(let r=0;r<s.length;r++)t+=String.fromCharCode(s.charCodeAt(r)^this.encryptionKey.charCodeAt(r%this.encryptionKey.length));return t}catch{return e}}compress(e){if(e.length<100)return e;let s={},t=256,r=[],o="";for(let a=0;a<e.length;a++){let i=e.charAt(a),n=o+i;if(s[n]!==void 0)o=n;else r.push(o.length>1?s[o]:o.charCodeAt(0)),s[n]=t++,o=i}if(o!=="")r.push(o.length>1?s[o]:o.charCodeAt(0));return JSON.stringify(r)}decompress(e){try{let s=JSON.parse(e);if(!Array.isArray(s))return e;let t={},r=256,o=String.fromCharCode(s[0]),a=o;for(let i=1;i<s.length;i++){let n=s[i],d;if(t[n]!==void 0)d=t[n];else if(n===r)d=o+o.charAt(0);else return e;a+=d,t[r++]=o+d.charAt(0),o=d}return a}catch{return e}}getKey(e){return this.namespace?`${this.namespace}:${e}`:e}set(e,s,t){let r=this.getKey(e),o=this.get(e),a={value:s,timestamp:Date.now(),expire:t?.expire,encrypted:t?.encrypt||!1,compressed:t?.compress||!1};try{let i=JSON.stringify(a);if(t?.compress)i=this.compress(i);if(t?.encrypt)i=this.encrypt(i);this.storage.setItem(r,i),this.notifyWatchers(e,s,o)}catch(i){console.error("Storage set error:",i)}}get(e){let s=this.getKey(e);try{let t=this.storage.getItem(s);if(!t)return null;if(t.match(/^[A-Z0-9+/]+=*$/i))try{t=this.decrypt(t)}catch{}if(t.startsWith("["))try{t=this.decompress(t)}catch{}let r=JSON.parse(t);if(r.expire&&Date.now()-r.timestamp>r.expire)return this.remove(e),null;return r.value}catch(t){return console.error("Storage get error:",t),null}}watch(e,s){if(!this.watchers.has(e))this.watchers.set(e,new Set);return this.watchers.get(e).add(s),()=>{let t=this.watchers.get(e);if(t){if(t.delete(s),t.size===0)this.watchers.delete(e)}}}notifyWatchers(e,s,t){let r=this.watchers.get(e);if(r)r.forEach((o)=>o(s,t,e))}remove(e){let s=this.getKey(e),t=this.get(e);this.storage.removeItem(s),this.notifyWatchers(e,null,t)}clear(){if(this.namespace)this.keys().forEach((s)=>this.remove(s));else this.storage.clear()}has(e){return this.get(e)!==null}keys(){let e=Object.keys(this.storage);if(this.namespace){let s=`${this.namespace}:`;return e.filter((t)=>t.startsWith(s)).map((t)=>t.slice(s.length))}return e}size(){return this.keys().length}getQuota(){if("storage"in navigator&&"estimate"in navigator.storage)return null;try{let e=0;for(let t=0;t<this.storage.length;t++){let r=this.storage.key(t);if(r){let o=this.storage.getItem(r)||"";e+=r.length+o.length}}let s=5242880;return{usage:e*2,quota:s,percentage:e*2/s*100}}catch{return null}}setMany(e,s){Object.entries(e).forEach(([t,r])=>{this.set(t,r,s)})}getMany(e){let s={};return e.forEach((t)=>{s[t]=this.get(t)}),s}removeMany(e){e.forEach((s)=>this.remove(s))}}var Dl={local:new U("local"),session:new U("session")};function Ll(e="local",s){return new U(e,s)}var ir="./Switch-kjq8qd2p.stx";var lr="./Table-59j9qwp0.stx";var cr="./TableBody-reka2gwv.stx";var gr="./TableCell-j7nh4sgr.stx";var fr="./TableHead-ecbrwpqm.stx";var br="./TableHeader-jn2shwsv.stx";var hr="./TableRow-xz8rrxhc.stx";var Cr="./Tabs-kb6ex6m7.stx";var wr="./Teleport-819cg9zm.stx";var kr="./Textarea-5xvmrb0z.stx";var Nr="./Tooltip-5ehqsy49.stx";var Mr="./Transition-2j39s044.stx";var Lr="./Video-6aq4shh4.stx";var Tr="./VirtualList-weh5qtm1.stx";var Pr="./VirtualTable-59a1eskc.stx";var jr=0;function oe(e="a11y"){return`${e}-${++jr}-${Date.now()}`}function hd(e,s,t={}){let{visible:r=!1,id:o=oe("label")}=t,a=document.createElement(r?"label":"span");if(a.id=o,a.textContent=e,!r)Object.assign(a.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"});if(s)if(s.setAttribute("aria-labelledby",o),s.parentElement)s.parentElement.insertBefore(a,s);else document.body.appendChild(a);return o}function vd(e,s){let t=oe("desc"),r=document.createElement("span");if(r.id=t,r.textContent=e,Object.assign(r.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"}),s)if(s.setAttribute("aria-describedby",t),s.parentElement)s.parentElement.insertBefore(r,s);else document.body.appendChild(r);return t}function Cd(e,s="polite"){let t=document.createElement("div");t.setAttribute("role","status"),t.setAttribute("aria-live",s),t.setAttribute("aria-atomic","true"),Object.assign(t.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"}),document.body.appendChild(t),setTimeout(()=>{t.textContent=e},100),setTimeout(()=>{document.body.removeChild(t)},1000)}function J(e){let s=["a[href]","area[href]",'input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","button:not([disabled])","iframe","object","embed","[contenteditable]",'[tabindex]:not([tabindex="-1"])'].join(",");return Array.from(e.querySelectorAll(s)).filter((t)=>t.offsetParent!==null)}function yd(e,s={}){let{initialFocus:t,returnFocus:r,escapeDeactivates:o=!0,clickOutsideDeactivates:a=!0,allowOutsideClick:i=!1,onActivate:n,onDeactivate:d}=s,c=!1,u=!1,p=null,b=(h)=>{if(u)return;if(o&&h.key==="Escape"){h.preventDefault(),v();return}if(h.key==="Tab"){let w=J(e);if(w.length===0){h.preventDefault();return}let M=w[0],T=w[w.length-1];if(h.shiftKey){if(document.activeElement===M)h.preventDefault(),T.focus()}else if(document.activeElement===T)h.preventDefault(),M.focus()}},f=(h)=>{if(u)return;if(!e.contains(h.target)){if(typeof i==="function"){if(!i(h)&&a)v()}else if(!i&&a)v()}};function C(){if(c)return;c=!0,p=document.activeElement;let h=t||J(e)[0];if(h&&typeof h.focus==="function")h.focus();document.addEventListener("keydown",b),document.addEventListener("click",f),n?.()}function v(){if(!c)return;c=!1;let h=r||p;if(h&&typeof h.focus==="function")h.focus();document.removeEventListener("keydown",b),document.removeEventListener("click",f),d?.()}function k(){u=!0}function m(){u=!1}return{activate:C,deactivate:v,pause:k,unpause:m}}function wd(e,s={}){let{selector:t='[role="option"], [role="menuitem"], [role="tab"], button',initialIndex:r=0,orientation:o="both",loop:a=!0,onFocusChange:i}=s,n=r,d=()=>{return Array.from(e.querySelectorAll(t))},c=(p)=>{let b=d();if(p<0||p>=b.length)return;b.forEach((f,C)=>{if(C===p){if(f.setAttribute("tabindex","0"),typeof f.focus==="function")f.focus()}else f.setAttribute("tabindex","-1")}),n=p,i?.(p,b[p])},u=(p)=>{let f=d().length-1,C=!1,v=n;switch(p.key){case"ArrowRight":if(o==="horizontal"||o==="both"){if(v=n+1,v>f)v=a?0:f;C=!0}break;case"ArrowLeft":if(o==="horizontal"||o==="both"){if(v=n-1,v<0)v=a?f:0;C=!0}break;case"ArrowDown":if(o==="vertical"||o==="both"){if(v=n+1,v>f)v=a?0:f;C=!0}break;case"ArrowUp":if(o==="vertical"||o==="both"){if(v=n-1,v<0)v=a?f:0;C=!0}break;case"Home":v=0,C=!0;break;case"End":v=f,C=!0;break}if(C)p.preventDefault(),c(v)};return c(r),e.addEventListener("keydown",u),()=>{e.removeEventListener("keydown",u)}}var $d={Enter:"Enter",Space:" ",Escape:"Escape",ArrowUp:"ArrowUp",ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowRight:"ArrowRight",Tab:"Tab",Home:"Home",End:"End",PageUp:"PageUp",PageDown:"PageDown"};function kd(e){return document.activeElement===e}function Sd(e,s){let t=s||document.activeElement,r=J(document.body),o=r.indexOf(t);if(o===-1)return;let a=e==="next"?o+1:o-1,i=r[a];if(i)i.focus()}function Nd(e){if(e.getAttribute("aria-hidden")==="true")return!1;let s=window.getComputedStyle(e);if(s.display==="none"||s.visibility==="hidden")return!1;return!0}var zd={setExpanded(e,s){e.setAttribute("aria-expanded",String(s))},setSelected(e,s){e.setAttribute("aria-selected",String(s))},setChecked(e,s){e.setAttribute("aria-checked",String(s))},setDisabled(e,s){if(e.setAttribute("aria-disabled",String(s)),s)e.setAttribute("tabindex","-1");else e.removeAttribute("tabindex")},setHidden(e,s){if(s)e.setAttribute("aria-hidden","true");else e.removeAttribute("aria-hidden")},setPressed(e,s){e.setAttribute("aria-pressed",String(s))},setInvalid(e,s){e.setAttribute("aria-invalid",String(s))},setRequired(e,s){e.setAttribute("aria-required",String(s))},setLive(e,s){e.setAttribute("aria-live",s)},setBusy(e,s){e.setAttribute("aria-busy",String(s))}};function Md(e){let s=document.createElement("span");return s.textContent=e,s.className="sr-only",Object.assign(s.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"}),s}function Dd(){if(typeof window.matchMedia==="function")return window.matchMedia("(prefers-reduced-motion: reduce)").matches;return!1}function Ld(){if(typeof window.matchMedia==="function")return window.matchMedia("(prefers-contrast: high)").matches;return!1}function Id(){if(typeof window.matchMedia==="function"){if(window.matchMedia("(prefers-color-scheme: dark)").matches)return"dark";if(window.matchMedia("(prefers-color-scheme: light)").matches)return"light"}return null}function Td(e,s="Skip to main content"){let t=document.createElement("a");return t.href=`#${e}`,t.textContent=s,t.className="skip-link",Object.assign(t.style,{position:"absolute",top:"-40px",left:"0",background:"#000",color:"#fff",padding:"8px",textDecoration:"none",zIndex:"100"}),t.addEventListener("focus",()=>{t.style.top="0"}),t.addEventListener("blur",()=>{t.style.top="-40px"}),t}function Bd(e){let s=[],t=(r)=>{let o=e.getAttribute(r);if(o){let a=o.split(" ");for(let i of a)if(!document.getElementById(i))s.push(`${r} references non-existent ID: ${i}`)}};return t("aria-labelledby"),t("aria-describedby"),t("aria-controls"),t("aria-owns"),t("aria-activedescendant"),s}var qr=(e,s,t,r)=>{return t*e/r+s},Hr=(e,s,t,r)=>{return e/=r,t*e*e+s},Rr=(e,s,t,r)=>{return e/=r,-t*e*(e-2)+s},Er=(e,s,t,r)=>{if(e/=r/2,e<1)return t/2*e*e+s;return e--,-t/2*(e*(e-2)-1)+s},Ar=(e,s,t,r)=>{return e/=r,t*e*e*e+s},Or=(e,s,t,r)=>{return e/=r,e--,t*(e*e*e+1)+s},Fr=(e,s,t,r)=>{if(e/=r/2,e<1)return t/2*e*e*e+s;return e-=2,t/2*(e*e*e+2)+s},Ur=(e,s,t,r)=>{return e/=r,t*e*e*e*e+s},Gr=(e,s,t,r)=>{return e/=r,e--,-t*(e*e*e*e-1)+s},Yr=(e,s,t,r)=>{if(e/=r/2,e<1)return t/2*e*e*e*e+s;return e-=2,-t/2*(e*e*e*e-2)+s},Wr=(e,s,t,r)=>{return e/=r,t*e*e*e*e*e+s},_r=(e,s,t,r)=>{return e/=r,e--,t*(e*e*e*e*e+1)+s},Vr=(e,s,t,r)=>{if(e/=r/2,e<1)return t/2*e*e*e*e*e+s;return e-=2,t/2*(e*e*e*e*e+2)+s},Zr=(e,s,t,r)=>{return-t*Math.cos(e/r*(Math.PI/2))+t+s},Xr=(e,s,t,r)=>{return t*Math.sin(e/r*(Math.PI/2))+s},Jr=(e,s,t,r)=>{return-t/2*(Math.cos(Math.PI*e/r)-1)+s},Kr=(e,s,t,r)=>{return e===0?s:t*2**(10*(e/r-1))+s},Qr=(e,s,t,r)=>{return e===r?s+t:t*(-(2**(-10*e/r))+1)+s},eo=(e,s,t,r)=>{if(e===0)return s;if(e===r)return s+t;if(e/=r/2,e<1)return t/2*2**(10*(e-1))+s;return e--,t/2*(-(2**(-10*e))+2)+s},so=(e,s,t,r)=>{return e/=r,-t*(Math.sqrt(1-e*e)-1)+s},to=(e,s,t,r)=>{return e/=r,e--,t*Math.sqrt(1-e*e)+s},ro=(e,s,t,r)=>{if(e/=r/2,e<1)return-t/2*(Math.sqrt(1-e*e)-1)+s;return e-=2,t/2*(Math.sqrt(1-e*e)+1)+s},oo=(e,s,t,r)=>{let o=1.70158,a=0,i=t;if(e===0)return s;if(e/=r,e===1)return s+t;if(!a)a=r*0.3;if(i<Math.abs(t))i=t,o=a/4;else o=a/(2*Math.PI)*Math.asin(t/i);return e-=1,-(i*2**(10*e)*Math.sin((e*r-o)*(2*Math.PI)/a))+s},ao=(e,s,t,r)=>{let o=1.70158,a=0,i=t;if(e===0)return s;if(e/=r,e===1)return s+t;if(!a)a=r*0.3;if(i<Math.abs(t))i=t,o=a/4;else o=a/(2*Math.PI)*Math.asin(t/i);return i*2**(-10*e)*Math.sin((e*r-o)*(2*Math.PI)/a)+t+s},io=(e,s,t,r)=>{let o=1.70158,a=0,i=t;if(e===0)return s;if(e/=r/2,e===2)return s+t;if(!a)a=r*0.44999999999999996;if(i<Math.abs(t))i=t,o=a/4;else o=a/(2*Math.PI)*Math.asin(t/i);if(e<1)return e-=1,-0.5*(i*2**(10*e)*Math.sin((e*r-o)*(2*Math.PI)/a))+s;return e-=1,i*2**(-10*e)*Math.sin((e*r-o)*(2*Math.PI)/a)*0.5+t+s},no=(e,s,t,r)=>{return e/=r,t*e*e*(2.70158*e-1.70158)+s},lo=(e,s,t,r)=>{return e/=r,e--,t*(e*e*(2.70158*e+1.70158)+1)+s},co=(e,s,t,r)=>{let o=1.70158;if(e/=r/2,e<1)return o*=1.525,t/2*(e*e*((o+1)*e-o))+s;return e-=2,o*=1.525,t/2*(e*e*((o+1)*e+o)+2)+s},K=(e,s,t,r)=>{if(e/=r,e<0.36363636363636365)return t*(7.5625*e*e)+s;else if(e<0.7272727272727273)return e-=0.5454545454545454,t*(7.5625*e*e+0.75)+s;else if(e<0.9090909090909091)return e-=0.8181818181818182,t*(7.5625*e*e+0.9375)+s;else return e-=0.9545454545454546,t*(7.5625*e*e+0.984375)+s},ae=(e,s,t,r)=>{return t-K(r-e,0,t,r)+s},po=(e,s,t,r)=>{if(e<r/2)return ae(e*2,0,t,r)*0.5+s;return K(e*2-r,0,t,r)*0.5+t*0.5+s},jd={linear:qr,easeInQuad:Hr,easeOutQuad:Rr,easeInOutQuad:Er,easeInCubic:Ar,easeOutCubic:Or,easeInOutCubic:Fr,easeInQuart:Ur,easeOutQuart:Gr,easeInOutQuart:Yr,easeInQuint:Wr,easeOutQuint:_r,easeInOutQuint:Vr,easeInSine:Zr,easeOutSine:Xr,easeInOutSine:Jr,easeInExpo:Kr,easeOutExpo:Qr,easeInOutExpo:eo,easeInCirc:so,easeOutCirc:to,easeInOutCirc:ro,easeInElastic:oo,easeOutElastic:ao,easeInOutElastic:io,easeInBack:no,easeOutBack:lo,easeInOutBack:co,easeInBounce:ae,easeOutBounce:K,easeInOutBounce:po};function go(e,s={}){let{duration:t="1s",timing:r="ease",delay:o="0s",iteration:a="1",direction:i="normal",fill:n="both",playState:d="running"}=s;return`${e} ${t} ${r} ${o} ${a} ${i} ${n} ${d}`}function ie(e,s,t={}){e.style.animation=go(s,t)}function Hd(e){e.style.animation=""}function uo(e){return new Promise((s)=>{let t=()=>{e.removeEventListener("animationend",t),s()};e.addEventListener("animationend",t)})}function Rd(e,s,t={}){let{stagger:r=100,...o}=t;e.forEach((a,i)=>{let n=`${i*r}ms`;ie(a,s,{...o,delay:n})})}async function Ed(e,s){for(let t of s)ie(e,t.name,t.options),await uo(e)}var Ad={fadeIn:"animate-fade-in",fadeOut:"animate-fade-out",slideInUp:"animate-slide-in-up",slideInDown:"animate-slide-in-down",slideInLeft:"animate-slide-in-left",slideInRight:"animate-slide-in-right",zoomIn:"animate-zoom-in",zoomOut:"animate-zoom-out",bounce:"animate-bounce",spin:"animate-spin",ping:"animate-ping",pulse:"animate-pulse"};function Od(e,s,t=1000){return new Promise((r)=>{e.classList.add(s),setTimeout(()=>{e.classList.remove(s),r()},t)})}function Fd(e,s){let t=`
12
+ @keyframes ${e} {
13
+ ${Object.entries(s).map(([o,a])=>{let i=Object.entries(a).map(([n,d])=>`${n}: ${d};`).join(" ");return`${o} { ${i} }`}).join(`
14
+ `)}
15
+ }
16
+ `,r=document.createElement("style");r.textContent=t,document.head.appendChild(r)}function fo(e,s,t={}){if(typeof e.animate!=="function")return console.warn("Web Animations API not supported"),null;let{duration:r=1000,easing:o="ease",delay:a=0,iterations:i=1,direction:n="normal",fill:d="both"}=t;return e.animate([...s],{duration:r,easing:o,delay:a,iterations:i,direction:n,fill:d})}var xo={fadeIn:[{offset:0,opacity:0},{offset:1,opacity:1}],fadeOut:[{offset:0,opacity:1},{offset:1,opacity:0}],slideInUp:[{offset:0,transform:"translateY(100%)",opacity:0},{offset:1,transform:"translateY(0)",opacity:1}],slideInDown:[{offset:0,transform:"translateY(-100%)",opacity:0},{offset:1,transform:"translateY(0)",opacity:1}],slideInLeft:[{offset:0,transform:"translateX(-100%)",opacity:0},{offset:1,transform:"translateX(0)",opacity:1}],slideInRight:[{offset:0,transform:"translateX(100%)",opacity:0},{offset:1,transform:"translateX(0)",opacity:1}],slideOutUp:[{offset:0,transform:"translateY(0)",opacity:1},{offset:1,transform:"translateY(-100%)",opacity:0}],slideOutDown:[{offset:0,transform:"translateY(0)",opacity:1},{offset:1,transform:"translateY(100%)",opacity:0}],slideOutLeft:[{offset:0,transform:"translateX(0)",opacity:1},{offset:1,transform:"translateX(-100%)",opacity:0}],slideOutRight:[{offset:0,transform:"translateX(0)",opacity:1},{offset:1,transform:"translateX(100%)",opacity:0}],zoomIn:[{offset:0,transform:"scale(0)",opacity:0},{offset:0.5,opacity:1},{offset:1,transform:"scale(1)"}],zoomOut:[{offset:0,transform:"scale(1)",opacity:1},{offset:0.5,opacity:1},{offset:1,transform:"scale(0)",opacity:0}],rotate:[{offset:0,transform:"rotate(0deg)"},{offset:1,transform:"rotate(360deg)"}],bounce:[{offset:0,transform:"translateY(0)"},{offset:0.2,transform:"translateY(0)"},{offset:0.4,transform:"translateY(-30px)"},{offset:0.43,transform:"translateY(-30px)"},{offset:0.53,transform:"translateY(0)"},{offset:0.7,transform:"translateY(-15px)"},{offset:0.8,transform:"translateY(0)"},{offset:0.9,transform:"translateY(-4px)"},{offset:1,transform:"translateY(0)"}],pulse:[{offset:0,transform:"scale(1)"},{offset:0.5,transform:"scale(1.05)"},{offset:1,transform:"scale(1)"}],shake:[{offset:0,transform:"translateX(0)"},{offset:0.1,transform:"translateX(-10px)"},{offset:0.2,transform:"translateX(10px)"},{offset:0.3,transform:"translateX(-10px)"},{offset:0.4,transform:"translateX(10px)"},{offset:0.5,transform:"translateX(-10px)"},{offset:0.6,transform:"translateX(10px)"},{offset:0.7,transform:"translateX(-10px)"},{offset:0.8,transform:"translateX(10px)"},{offset:0.9,transform:"translateX(-10px)"},{offset:1,transform:"translateX(0)"}],swing:[{offset:0,transform:"rotate(0deg)"},{offset:0.2,transform:"rotate(15deg)"},{offset:0.4,transform:"rotate(-10deg)"},{offset:0.6,transform:"rotate(5deg)"},{offset:0.8,transform:"rotate(-5deg)"},{offset:1,transform:"rotate(0deg)"}],flip:[{offset:0,transform:"perspective(400px) rotateY(0)",animationTimingFunction:"ease-out"},{offset:0.4,transform:"perspective(400px) translateZ(150px) rotateY(170deg)",animationTimingFunction:"ease-out"},{offset:0.5,transform:"perspective(400px) translateZ(150px) rotateY(190deg)",animationTimingFunction:"ease-in"},{offset:0.8,transform:"perspective(400px) rotateY(360deg)",animationTimingFunction:"ease-in"},{offset:1,transform:"perspective(400px)",animationTimingFunction:"ease-in"}],rubberBand:[{offset:0,transform:"scale(1)"},{offset:0.3,transform:"scaleX(1.25) scaleY(0.75)"},{offset:0.4,transform:"scaleX(0.75) scaleY(1.25)"},{offset:0.5,transform:"scaleX(1.15) scaleY(0.85)"},{offset:0.65,transform:"scaleX(0.95) scaleY(1.05)"},{offset:0.75,transform:"scaleX(1.05) scaleY(0.95)"},{offset:1,transform:"scale(1)"}],heartbeat:[{offset:0,transform:"scale(1)"},{offset:0.14,transform:"scale(1.3)"},{offset:0.28,transform:"scale(1)"},{offset:0.42,transform:"scale(1.3)"},{offset:0.7,transform:"scale(1)"}]};function Gd(e,s,t={}){return fo(e,xo[s],t)}import{createHighlighter as bo}from"ts-syntax-highlighter";var Q=null;async function mo(){if(!Q)Q=await bo({theme:"github-light"});return Q}async function _d(e,s={}){let{theme:t="auto",language:r="typescript",lineNumbers:o=!1,wrapLines:a=!0}=s,i=await mo(),n=t==="auto"?globalThis.matchMedia?.("(prefers-color-scheme: dark)").matches?"github-dark":"github-light":t==="dark"?"github-dark":"github-light",d=await i.highlight(e,r);return{html:typeof d==="string"?d:String(d),language:r,theme:n}}function Vd(e){if(e.includes("<!DOCTYPE")||e.includes("<html"))return"html";if(e.includes("<?php"))return"php";if(e.includes("import")&&e.includes("from"))return"typescript";if(e.includes("function")||e.includes("const"))return"javascript";if(e.includes("{")&&e.includes("}"))return"json";if(e.includes("$")&&e.includes("|"))return"bash";if(e.includes("#")&&e.includes("##"))return"markdown";return"typescript"}function Zd(e,s){return`<div class="${s?`rounded-md overflow-auto text-sm leading-relaxed font-mono ${s}`:"rounded-md overflow-auto text-sm leading-relaxed font-mono"}">${e}</div>`}var I=null,ho=(e)=>{return e===1?0:1};function G(e,s){return s.split(".").reduce((t,r)=>t?.[r],e)}function ee(e,s={}){return e.replace(/\{(\w+)\}/g,(t,r)=>{return s[r]!==void 0?String(s[r]):t})}function Jd(e){let{locale:s,fallbackLocale:t="en",messages:r,pluralRules:o={},dateTimeFormats:a={},numberFormats:i={},missing:n,warnMissing:d=!0}=e;function c(m,h={}){let w=G(r[s],m);if(w===void 0&&t)w=G(r[t],m);if(w===void 0){if(n){let M=n(s,m);if(M)return ee(M,h)}if(d&&typeof console<"u")console.warn(`[i18n] Missing translation for key "${m}" in locale "${s}"`);return m}if(typeof w==="string")return ee(w,h);return String(w)}function u(m,h,w={}){let M=c(m,{...w,count:h});if(M.includes("|")){let T=M.split("|").map((Z)=>Z.trim()),_=(o[s]||ho)(h,s),V=T[_]||T[T.length-1];return ee(V,{...w,count:h})}return M}function p(m,h="default"){let w=typeof m==="number"?new Date(m):m,M=a[h]||a.default||{};return new Intl.DateTimeFormat(s,M).format(w)}function b(m,h="default"){let w=i[h]||i.default||{};return new Intl.NumberFormat(s,w).format(m)}function f(m){if(G(r[s],m)!==void 0)return!0;if(t)return G(r[t],m)!==void 0;return!1}function C(m){if(!r[m]){console.warn(`[i18n] Locale "${m}" not found. Available locales: ${Object.keys(r).join(", ")}`);return}s=m}function v(m,h){if(!r[m])r[m]={};r[m]={...r[m],...h}}function k(m){delete r[m]}return{get locale(){return s},get availableLocales(){return Object.keys(r)},setLocale:C,t:c,tc:u,d:p,n:b,te:f,addMessages:v,removeLocale:k}}function Kd(e){I=e}function Qd(){return I}function ec(e,s){if(!I)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),e;return I.t(e,s)}function sc(e,s,t){if(!I)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),e;return I.tc(e,s,t)}function tc(e,s){if(!I)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),String(e);return I.d(e,s)}function rc(e,s){if(!I)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),String(e);return I.n(e,s)}var oc={en:(e)=>e===1?0:1,de:(e)=>e===1?0:1,nl:(e)=>e===1?0:1,sv:(e)=>e===1?0:1,fr:(e)=>e===0||e===1?0:1,pt_BR:(e)=>e===0||e===1?0:1,ru:(e)=>{if(e%10===1&&e%100!==11)return 0;if(e%10>=2&&e%10<=4&&(e%100<10||e%100>=20))return 1;return 2},pl:(e)=>{if(e===1)return 0;if(e%10>=2&&e%10<=4&&(e%100<10||e%100>=20))return 1;return 2},cs:(e)=>{if(e===1)return 0;if(e>=2&&e<=4)return 1;return 2},ar:(e)=>{if(e===0)return 0;if(e===1)return 1;if(e===2)return 2;if(e%100>=3&&e%100<=10)return 3;if(e%100>=11)return 4;return 5},ja:()=>0,ko:()=>0,zh:()=>0,th:()=>0,vi:()=>0},ac={short:{year:"numeric",month:"numeric",day:"numeric"},long:{year:"numeric",month:"long",day:"numeric"},full:{weekday:"long",year:"numeric",month:"long",day:"numeric"},time:{hour:"numeric",minute:"numeric"},datetime:{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric"}},ic={decimal:{style:"decimal",minimumFractionDigits:2,maximumFractionDigits:2},currency:{style:"currency",currency:"USD"},percent:{style:"percent",minimumFractionDigits:0,maximumFractionDigits:2},compact:{notation:"compact"}};function nc(e){let s=["ar","he","fa","ur","yi"],t=e.split("-")[0].toLowerCase();return s.includes(t)}async function lc(e,s){try{return await s()}catch(t){return console.error(`[i18n] Failed to load messages for locale "${e}":`,t),{}}}var dc={en:{common:{loading:"Loading...",error:"Error",retry:"Retry",cancel:"Cancel",confirm:"Confirm",close:"Close",save:"Save",delete:"Delete",edit:"Edit",search:"Search",clear:"Clear",submit:"Submit",reset:"Reset"},form:{required:"This field is required",invalid:"Invalid value",tooShort:"Value is too short (minimum {min} characters)",tooLong:"Value is too long (maximum {max} characters)",invalidEmail:"Invalid email address",invalidUrl:"Invalid URL"},pagination:{previous:"Previous",next:"Next",page:"Page {page}",of:"of {total}"}},es:{common:{loading:"Cargando...",error:"Error",retry:"Reintentar",cancel:"Cancelar",confirm:"Confirmar",close:"Cerrar",save:"Guardar",delete:"Eliminar",edit:"Editar",search:"Buscar",clear:"Limpiar",submit:"Enviar",reset:"Restablecer"},form:{required:"Este campo es obligatorio",invalid:"Valor inv\xE1lido",tooShort:"El valor es demasiado corto (m\xEDnimo {min} caracteres)",tooLong:"El valor es demasiado largo (m\xE1ximo {max} caracteres)",invalidEmail:"Direcci\xF3n de correo electr\xF3nico inv\xE1lida",invalidUrl:"URL inv\xE1lida"},pagination:{previous:"Anterior",next:"Siguiente",page:"P\xE1gina {page}",of:"de {total}"}},fr:{common:{loading:"Chargement...",error:"Erreur",retry:"R\xE9essayer",cancel:"Annuler",confirm:"Confirmer",close:"Fermer",save:"Enregistrer",delete:"Supprimer",edit:"Modifier",search:"Rechercher",clear:"Effacer",submit:"Soumettre",reset:"R\xE9initialiser"},form:{required:"Ce champ est obligatoire",invalid:"Valeur invalide",tooShort:"La valeur est trop courte (minimum {min} caract\xE8res)",tooLong:"La valeur est trop longue (maximum {max} caract\xE8res)",invalidEmail:"Adresse e-mail invalide",invalidUrl:"URL invalide"},pagination:{previous:"Pr\xE9c\xE9dent",next:"Suivant",page:"Page {page}",of:"sur {total}"}}};function pc(e={}){let{max:s=10,ttl:t=0,include:r,exclude:o,hooks:a,debug:i=!1}=e,n=new Map,d=0,c=0;function u(...g){if(i)console.log("[KeepAlive]",...g)}function p(g){if(o){if(o instanceof RegExp&&o.test(g))return!1;if(Array.isArray(o)&&o.includes(g))return!1}if(r){if(r instanceof RegExp&&!r.test(g))return!1;if(Array.isArray(r)&&!r.includes(g))return!1}return!0}function b(g){if(!t||!g.expiresAt)return!1;return Date.now()>g.expiresAt}function f(g){let x=n.get(g);if(x)x.lastAccessedAt=Date.now(),x.accessCount++,x.instance.lastAccessedAt=x.lastAccessedAt,n.delete(g),n.set(g,x),u(`Touched: ${g} (access count: ${x.accessCount})`)}function C(){if(n.size===0)return!1;let g=n.keys().next().value;if(!g)return!1;let x=n.get(g);if(x){u(`Evicting LRU: ${g}`);let y=x.instance.hooks;if(y?.onDeactivate)y.onDeactivate(x.instance);if(a?.onDeactivate)a.onDeactivate(x.instance);return n.delete(g),!0}return!1}function v(g,x,y){if(!p(x.type))return u(`Type not cacheable: ${x.type}`),x;if(n.size>=s)C();let D=Date.now(),E={instance:{...x,hooks:y||x.hooks,createdAt:x.createdAt||D,lastAccessedAt:D},accessCount:0,createdAt:D,lastAccessedAt:D,expiresAt:t?D+t:void 0};if(n.set(g,E),u(`Cached: ${g} (size: ${n.size}/${s})`),y?.onMount)y.onMount(E.instance);if(a?.onMount)a.onMount(E.instance);return E.instance}function k(g){let x=n.get(g);if(!x)return c++,u(`Miss: ${g}`),null;if(b(x))return u(`Expired: ${g}`),n.delete(g),c++,null;return d++,f(g),u(`Hit: ${g}`),x.instance}function m(g){let x=n.get(g);if(!x)return!1;if(b(x))return n.delete(g),!1;return!0}function h(g){let x=n.get(g);if(!x)return!1;u(`Removing: ${g}`);let y=x.instance.hooks;if(y?.onUnmount)y.onUnmount(x.instance);if(a?.onUnmount)a.onUnmount(x.instance);return n.delete(g)}function w(){u("Clearing cache"),n.forEach((g)=>{let x=g.instance.hooks;if(x?.onUnmount)x.onUnmount(g.instance);if(a?.onUnmount)a.onUnmount(g.instance)}),n.clear(),d=0,c=0}function M(){let g=0,x=Date.now();for(let[y,D]of n.entries())if(b(D))u(`Pruning expired: ${y}`),h(y),g++;while(n.size>s)if(C())g++;else break;if(g>0)u(`Pruned ${g} entries`);return g}function T(g){let x=k(g);if(!x)return null;u(`Activating: ${g}`);let y=x.hooks;if(y?.onActivate)y.onActivate(x);if(a?.onActivate)a.onActivate(x);if(x.state&&y?.onRestore)y.onRestore(x,x.state);return x}function te(g){let x=n.get(g);if(!x)return!1;u(`Deactivating: ${g}`);let y=x.instance,D=y.hooks;if(D?.onSave)y.state=D.onSave(y);if(D?.onDeactivate)D.onDeactivate(y);if(a?.onDeactivate)a.onDeactivate(y);return!0}function _(){let g=d+c;return{hits:d,misses:c,size:n.size,max:s,hitRate:g>0?d/g:0,keys:Array.from(n.keys())}}function V(){return Array.from(n.keys())}function Z(){return n.size}return{cache:v,get:k,has:m,remove:h,clear:w,prune:M,activate:T,deactivate:te,getStats:_,keys:V,size:Z}}function gc(e){let s=new Map;return{set(t,r){if(s.has(t))s.delete(t);if(s.set(t,r),s.size>e){let o=s.keys().next().value;if(o)s.delete(o)}},get(t){if(!s.has(t))return;let r=s.get(t);return s.delete(t),s.set(t,r),r},has(t){return s.has(t)},delete(t){return s.delete(t)},clear(){s.clear()},get size(){return s.size},keys(){return Array.from(s.keys())},values(){return Array.from(s.values())},forEach(t){s.forEach(t)}}}function uc(){let e=new Map;return{save(s,t){e.set(s,JSON.parse(JSON.stringify(t)))},restore(s){let t=e.get(s);return t?JSON.parse(JSON.stringify(t)):null},has(s){return e.has(s)},remove(s){return e.delete(s)},clear(){e.clear()},keys(){return Array.from(e.keys())},get size(){return e.size}}}function fc(e,s={}){let{maxSize:t=100,reset:r}=s,o=[];return{acquire(){if(o.length>0)return o.pop();return e()},release(a){if(o.length<t){if(r)r(a);o.push(a)}},clear(){o.length=0},get size(){return o.length},get maxSize(){return t}}}var B=new Map;async function Y(e,s){let t=s||e.toString();if(B.has(t))return B.get(t);let r=e();B.set(t,r);try{return await r}catch(o){throw B.delete(t),o}}function bc(e,s={}){let{retryAttempts:t=3,retryDelay:r=1000,onLoading:o,onLoaded:a,onError:i}=s,n="idle",d,c,u=async(p=0)=>{try{if(n==="loading"||n==="loaded"){if(d)return d}n="loading",o?.();let b=await Y(e);return d=b,n="loaded",a?.(b),b}catch(b){let f=b;if(p<t)return await new Promise((C)=>setTimeout(C,r*(p+1))),u(p+1);throw n="error",c=f,i?.(f),f}};return{get state(){return n},get module(){return d},get error(){return c},load:()=>u(),preload:()=>u()}}function vo(e,s,t={}){if(!e)return console.warn("lazyLoad: element is null"),()=>{};let{root:r=null,rootMargin:o="0px",threshold:a=0.01,placeholder:i,errorContent:n,onLoading:d,onLoaded:c,onError:u}=t,p=!1,b=null;if(i)if(typeof i==="string")e.innerHTML=i;else e.innerHTML="",e.appendChild(i);return b=new IntersectionObserver(async(C)=>{for(let v of C)if(v.isIntersecting&&!p){p=!0,b?.disconnect();try{d?.();let k=await Y(s);if(c?.(k),k&&typeof k.default?.render==="function"){let m=await k.default.render();e.innerHTML=m}}catch(k){let m=k;if(u?.(m),n)if(typeof n==="string")e.innerHTML=n;else e.innerHTML="",e.appendChild(n);else e.innerHTML=`<div style="color: red;">Failed to load component: ${m.message}</div>`}}},{root:r,rootMargin:o,threshold:a}),b.observe(e),()=>{b?.disconnect(),b=null}}function mc(e,s,t={}){let r=[],o=Array.from(e);for(let a of o){let i=typeof s==="function"&&s.length>0?()=>s(a):s,n=vo(a,i,t);r.push(n)}return()=>{r.forEach((a)=>a())}}function Co(e){return Y(e)}function hc(e){return Promise.all(e.map((s)=>Co(s)))}function vc(e){if(e)B.delete(e);else B.clear()}function Cc(){return{size:B.size,keys:Array.from(B.keys())}}function yc(e){return{async load(s){let t=e[s];if(!t)throw Error(`No route found for path: ${s}`);return Y(t,`route:${s}`)},async preload(s){return this.load(s)},async preloadRoutes(s){return Promise.all(s.map((t)=>this.preload(t)))}}}function yo(e,s,t={}){if(!e)return()=>{};let{root:r=null,rootMargin:o="50px",threshold:a=0.01,placeholder:i,onLoading:n,onLoaded:d,onError:c}=t;if(i&&typeof i==="string")e.src=i;let u=!1,p=null;return p=new IntersectionObserver((f)=>{for(let C of f)if(C.isIntersecting&&!u)u=!0,p?.disconnect(),n?.(),e.src=s,e.addEventListener("load",()=>{d?.(e),e.classList.add("loaded")},{once:!0}),e.addEventListener("error",(v)=>{let k=Error(`Failed to load image: ${s}`);c?.(k),e.classList.add("error")},{once:!0})},{root:r,rootMargin:o,threshold:a}),p.observe(e),()=>{p?.disconnect(),p=null}}function wc(e=document,s={}){let t=e.querySelectorAll("img[data-lazy-src]"),r=[];return t.forEach((o)=>{let a=o.getAttribute("data-lazy-src");if(a){let i=yo(o,a,s);r.push(i)}}),()=>{r.forEach((o)=>o())}}var se={colors:{primary:"#3b82f6",secondary:"#8b5cf6",success:"#10b981",warning:"#f59e0b",danger:"#ef4444",info:"#06b6d4",gray:"#6b7280",white:"#ffffff",black:"#000000"},typography:{fontFamily:{sans:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',serif:'Georgia, Cambria, "Times New Roman", Times, serif',mono:'Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},fontSize:{xs:"0.75rem",sm:"0.875rem",base:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem"},fontWeight:{light:"300",normal:"400",medium:"500",semibold:"600",bold:"700"},lineHeight:{tight:"1.25",normal:"1.5",relaxed:"1.75"}},spacing:{xs:"0.25rem",sm:"0.5rem",md:"1rem",lg:"1.5rem",xl:"2rem","2xl":"3rem","3xl":"4rem","4xl":"6rem"},borderRadius:{none:"0",sm:"0.125rem",md:"0.375rem",lg:"0.5rem",full:"9999px"},shadows:{sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",xl:"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)","2xl":"0 25px 50px -12px rgba(0, 0, 0, 0.25)",none:"none"},components:{button:{borderRadius:"0.375rem",padding:"0.5rem 1rem",fontSize:"0.875rem",fontWeight:"500"},input:{borderRadius:"0.375rem",padding:"0.5rem 0.75rem",fontSize:"0.875rem",borderWidth:"1px"},card:{borderRadius:"0.5rem",padding:"1.5rem",shadow:"0 1px 3px 0 rgba(0, 0, 0, 0.1)"}}};function ne(e,s){let t={...e};for(let r in s)if(s[r]instanceof Object&&r in e)t[r]=ne(e[r],s[r]);else t[r]=s[r];return t}function R(e){return ne(se,e)}var W=se;function kc(){return W}function wo(e){let s=[];if(e.colors)Object.entries(e.colors).forEach(([t,r])=>{if(r)s.push(`--color-${t}: ${r};`)});if(e.typography?.fontFamily)Object.entries(e.typography.fontFamily).forEach(([t,r])=>{if(r)s.push(`--font-${t}: ${r};`)});if(e.typography?.fontSize)Object.entries(e.typography.fontSize).forEach(([t,r])=>{if(r)s.push(`--text-${t}: ${r};`)});if(e.typography?.fontWeight)Object.entries(e.typography.fontWeight).forEach(([t,r])=>{if(r)s.push(`--font-weight-${t}: ${r};`)});if(e.typography?.lineHeight)Object.entries(e.typography.lineHeight).forEach(([t,r])=>{if(r)s.push(`--leading-${t}: ${r};`)});if(e.spacing)Object.entries(e.spacing).forEach(([t,r])=>{if(r)s.push(`--spacing-${t}: ${r};`)});if(e.borderRadius)Object.entries(e.borderRadius).forEach(([t,r])=>{if(r)s.push(`--radius-${t}: ${r};`)});if(e.shadows)Object.entries(e.shadows).forEach(([t,r])=>{if(r)s.push(`--shadow-${t}: ${r};`)});if(e.components?.button)Object.entries(e.components.button).forEach(([t,r])=>{if(r)s.push(`--button-${t.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${r};`)});if(e.components?.input)Object.entries(e.components.input).forEach(([t,r])=>{if(r)s.push(`--input-${t.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${r};`)});if(e.components?.card)Object.entries(e.components.card).forEach(([t,r])=>{if(r)s.push(`--card-${t.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${r};`)});return`:root {
17
+ ${s.join(`
18
+ `)}
19
+ }`}function Sc(e,s){if(W=e,typeof document>"u")return;let t=s||document.documentElement;if(e.colors)Object.entries(e.colors).forEach(([r,o])=>{if(o)t.style.setProperty(`--color-${r}`,o)});if(e.typography?.fontFamily)Object.entries(e.typography.fontFamily).forEach(([r,o])=>{if(o)t.style.setProperty(`--font-${r}`,o)});if(e.typography?.fontSize)Object.entries(e.typography.fontSize).forEach(([r,o])=>{if(o)t.style.setProperty(`--text-${r}`,o)});if(e.typography?.fontWeight)Object.entries(e.typography.fontWeight).forEach(([r,o])=>{if(o)t.style.setProperty(`--font-weight-${r}`,o)});if(e.typography?.lineHeight)Object.entries(e.typography.lineHeight).forEach(([r,o])=>{if(o)t.style.setProperty(`--leading-${r}`,o)});if(e.spacing)Object.entries(e.spacing).forEach(([r,o])=>{if(o)t.style.setProperty(`--spacing-${r}`,o)});if(e.borderRadius)Object.entries(e.borderRadius).forEach(([r,o])=>{if(o)t.style.setProperty(`--radius-${r}`,o)});if(e.shadows)Object.entries(e.shadows).forEach(([r,o])=>{if(o)t.style.setProperty(`--shadow-${r}`,o)});if(e.components?.button)Object.entries(e.components.button).forEach(([r,o])=>{if(o)t.style.setProperty(`--button-${r.replace(/([A-Z])/g,"-$1").toLowerCase()}`,o)});if(e.components?.input)Object.entries(e.components.input).forEach(([r,o])=>{if(o)t.style.setProperty(`--input-${r.replace(/([A-Z])/g,"-$1").toLowerCase()}`,o)});if(e.components?.card)Object.entries(e.components.card).forEach(([r,o])=>{if(o)t.style.setProperty(`--card-${r.replace(/([A-Z])/g,"-$1").toLowerCase()}`,o)})}function Nc(){return W}function zc(e){let s=e.split("."),t=W;for(let r of s)if(t&&typeof t==="object"&&r in t)t=t[r];else return;return t}var Mc={default:se,purple:R({colors:{primary:"#8b5cf6",secondary:"#a78bfa"}}),green:R({colors:{primary:"#10b981",secondary:"#34d399"}}),orange:R({colors:{primary:"#f97316",secondary:"#fb923c"}}),dark:R({colors:{primary:"#60a5fa",secondary:"#a78bfa",gray:"#9ca3af",white:"#1f2937",black:"#f9fafb"}}),minimal:R({borderRadius:{none:"0",sm:"0",md:"0.125rem",lg:"0.25rem",full:"0.25rem"},shadows:{sm:"none",md:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",lg:"0 1px 3px 0 rgba(0, 0, 0, 0.1)",xl:"0 4px 6px -1px rgba(0, 0, 0, 0.1)","2xl":"0 10px 15px -3px rgba(0, 0, 0, 0.1)",none:"none"}})};function Dc(e){return wo(e)}export{re as wrapErrorHandler,za as warnProp,He as warn,uo as waitForAnimation,Pa as validateVariant,Wi as validateTextInputProps,ja as validateSize,Xi as validateSearchInputProps,Ee as validateProps,Vi as validatePasswordInputProps,Zi as validateNumberInputProps,Pi as validateFormProps,_i as validateEmailInputProps,Ta as validateButtonProps,Bd as validateAriaRelationships,Nc as useTheme,To as useSEO,Vo as usePrefersReducedMotion,j as useMediaQuery,Fo as useLocalStorage,Eo as useKeyboard,Yo as useIsMobile,Wo as useIsDesktop,_o as useIsDarkMode,Ho as useFocusTrap,Lo as useDarkMode,zo as useCopyCode,jo as useClickOutside,Go as useBreakpoint,wo as themeToCSSProperties,Mc as themePresets,Ys as textInputPropSchema,sc as tc,ec as t,Dl as storage,Rd as staggerAnimation,me as setTitle,S as setMeta,he as setLink,Kd as setI18n,va as setErrorHandler,Ed as sequenceAnimations,Hd as removeAnimation,hc as preloadModules,Co as preloadModule,Dd as prefersReducedMotion,Ld as prefersHighContrast,oc as pluralRules,Ws as numberInputPropSchema,ic as numberFormats,rc as n,Sd as moveFocus,lc as loadLocaleMessages,qr as linear,Y as lazyLoadModule,wc as lazyLoadImages,yo as lazyLoadImage,bc as lazyLoadComponent,mc as lazyLoadAll,vo as lazyLoad,Nd as isVisibleToScreenReader,nc as isRTL,_d as highlight,kd as hasFocus,O as handleError,zc as getThemeValue,kc as getTheme,be as getSystemTheme,Qd as getI18n,mo as getHighlighter,J as getFocusableElements,X as getEffectiveTheme,Id as getColorSchemePreference,Cc as getCacheStats,Dc as generateThemeCSS,Bo as generateSEOTags,oe as generateId,Is as formPropSchema,$a as errorBoundary,Xr as easeOutSine,_r as easeOutQuint,Gr as easeOutQuart,Rr as easeOutQuad,Qr as easeOutExpo,ao as easeOutElastic,Or as easeOutCubic,to as easeOutCirc,K as easeOutBounce,lo as easeOutBack,Zr as easeInSine,Wr as easeInQuint,Ur as easeInQuart,Hr as easeInQuad,Jr as easeInOutSine,Vr as easeInOutQuint,Yr as easeInOutQuart,Er as easeInOutQuad,eo as easeInOutExpo,io as easeInOutElastic,Fr as easeInOutCubic,ro as easeInOutCirc,po as easeInOutBounce,co as easeInOutBack,Kr as easeInExpo,oo as easeInElastic,Ar as easeInCubic,so as easeInCirc,ae as easeInBounce,no as easeInBack,ya as devAssert,Vd as detectLanguage,se as defaultTheme,ac as dateTimeFormats,tc as d,go as cssAnimation,R as createTheme,Ll as createStorage,uc as createStateManager,Td as createSkipLink,Md as createScreenReaderText,Ba as createSafeClickHandler,wd as createRovingTabindex,yc as createRouteLoader,L as createPropValidator,gc as createLRUCache,Fd as createKeyframes,fo as createKeyframeAnimation,pc as createKeepAlive,Jd as createI18n,yd as createFocusTrap,wa as createDebugger,fc as createComponentPool,hd as createAriaLabel,vd as createAriaDescription,Mo as copyToClipboard,dc as componentMessages,vc as clearModuleCache,Ca as clearErrorHandler,Fe as buttonPropSchema,Na as assertProp,qe as assert,zd as aria,Sc as applyTheme,Zd as applyHeadwindClasses,ie as applyAnimation,Cd as announceToScreenReader,Od as animateWithClass,Gd as animate,Pr as VirtualTable,Tr as VirtualList,Lr as Video,Me as TwoFactorChallenge,Mr as Transition,Nr as Tooltip,kr as Textarea,Us as TextInput,wr as Teleport,Cr as Tabs,hr as TableRow,br as TableHeader,fr as TableHead,gr as TableCell,cr as TableBody,lr as Table,ir as Switch,ht as SubscriptionCheckout,U as StorageManager,or as StepperStep,tr as Stepper,er as Spinner,Kt as Skeleton,Ne as Signup,Gt as SidebarSection,Wt as SidebarItem,Vt as SidebarHeader,Xt as SidebarFooter,Ft as Sidebar,At as Select,Os as SearchInput,Rt as RadioGroupOption,qt as RadioGroupLabel,Pt as RadioGroupDescription,Tt as RadioGroup,Lt as Radio,l as PropTypes,Mt as Progress,Nt as Portal,kt as PopoverPanel,wt as PopoverButton,Ct as Popover,bt as PaymentMethods,Es as PasswordInput,ct as Pagination,Hs as NumberInput,lt as Notification,it as Navigator,ke as Login,ot as ListboxOptions,tt as ListboxOption,et as ListboxLabel,Ks as ListboxButton,Xs as Listbox,xo as KeyframeAnimations,Ao as KeyboardShortcuts,$d as KeyboardKeys,xe as Installation,Bs as Image,ue as Hero,Ls as Form,pe as Footer,P as ErrorTypes,js as EmailInput,jd as Easing,Ms as DropdownItems,Ns as DropdownItem,ks as DropdownButton,ws as Dropdown,Cs as Drawer,hs as DialogTitle,bs as DialogPanel,fs as DialogDescription,gs as DialogBackdrop,cs as Dialog,ft as DefaultPaymentMethod,z as ComponentError,ls as CommandPaletteItem,is as CommandPalette,os as ComboboxOptions,ts as ComboboxOption,es as ComboboxInput,Ke as ComboboxButton,Xe as Combobox,de as CodeBlock,gt as Checkout,Ve as Checkbox,We as Card,Ge as Calendar,Oe as Button,q as Breakpoints,Pe as Breadcrumb,Te as Badge,Le as Avatar,we as Audio,Ad as AnimationClasses,Ce as Accordion};
@@ -0,0 +1,12 @@
1
+ export declare interface AccordionItem {
2
+ title: string
3
+ content: string
4
+ }
5
+ export declare interface AccordionProps {
6
+ items: AccordionItem[]
7
+ allowMultiple?: boolean
8
+ defaultOpen?: number[]
9
+ onChange?: (openItems: number[]) => void
10
+ className?: string
11
+ }
12
+ export { default as Accordion } from './Accordion.stx';
@@ -0,0 +1,12 @@
1
+ export declare interface AudioProps {
2
+ src: string
3
+ autoplay?: boolean
4
+ loop?: boolean
5
+ muted?: boolean
6
+ controls?: boolean
7
+ preload?: 'none' | 'metadata' | 'auto'
8
+ className?: string
9
+ showWaveform?: boolean
10
+ title?: string
11
+ }
12
+ export { default as Audio } from './Audio.stx';
@@ -0,0 +1,29 @@
1
+ export declare interface LoginProps {
2
+ showLogo?: boolean
3
+ headingText?: string
4
+ showSocialLogin?: boolean
5
+ showRememberMe?: boolean
6
+ showForgotPassword?: boolean
7
+ showSignup?: boolean
8
+ signupText?: string
9
+ onSubmit?: (data: { email: string, password: string }) => void
10
+ className?: string
11
+ }
12
+ export declare interface SignupProps {
13
+ headingText?: string
14
+ showSocialSignup?: boolean
15
+ onSubmit?: (data: { name: string, email: string, password: string }) => void
16
+ className?: string
17
+ }
18
+ export declare interface TwoFactorChallengeProps {
19
+ headingText?: string
20
+ labelText?: string
21
+ instructionText?: string
22
+ codeLength?: number
23
+ onSubmit?: (code: string) => void
24
+ onUseRecoveryCode?: () => void
25
+ className?: string
26
+ }
27
+ export { default as Login } from './Login.stx';
28
+ export { default as Signup } from './Signup.stx';
29
+ export { default as TwoFactorChallenge } from './TwoFactorChallenge.stx';
@@ -0,0 +1,11 @@
1
+ export declare interface AvatarProps {
2
+ src?: string
3
+ alt?: string
4
+ initials?: string
5
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl'
6
+ shape?: 'circle' | 'square'
7
+ status?: 'online' | 'offline' | 'away' | 'busy' | ''
8
+ onError?: (event: Event) => void
9
+ className?: string
10
+ }
11
+ export { default as Avatar } from './Avatar.stx';
@@ -0,0 +1,9 @@
1
+ export declare interface BadgeProps {
2
+ variant?: 'default' | 'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'info'
3
+ size?: 'sm' | 'md' | 'lg'
4
+ dot?: boolean
5
+ removable?: boolean
6
+ onRemove?: () => void
7
+ className?: string
8
+ }
9
+ export { default as Badge } from './Badge.stx';
@@ -0,0 +1,13 @@
1
+ export declare interface BreadcrumbItem {
2
+ label: string
3
+ href: string
4
+ icon?: string
5
+ collapsed?: boolean
6
+ }
7
+ export declare interface BreadcrumbProps {
8
+ items: BreadcrumbItem[]
9
+ separator?: '/' | '>' | 'arrow' | string
10
+ maxItems?: number
11
+ className?: string
12
+ }
13
+ export { default as Breadcrumb } from './Breadcrumb.stx';
@@ -0,0 +1,45 @@
1
+ import type { PropSchema, ValidationResult } from '../../utils/prop-validation';
2
+ /**
3
+ * Create a safe onClick handler that catches and reports errors
4
+ *
5
+ * @param handler - Click handler function
6
+ * @returns Wrapped handler with error handling
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const safeHandler = createSafeClickHandler(() => {
11
+ * // Your click logic
12
+ * })
13
+ * ```
14
+ */
15
+ export declare function createSafeClickHandler(handler: (event: Event) => void): (event: Event) => void;
16
+ /**
17
+ * Helper to validate button variant
18
+ */
19
+ export declare function validateVariant(variant?: string): void;
20
+ /**
21
+ * Helper to validate button size
22
+ */
23
+ export declare function validateSize(size?: string): void;
24
+ /**
25
+ * Button prop validation schema
26
+ */
27
+ export declare const buttonPropSchema: PropSchema;
28
+ /**
29
+ * Validate Button component props
30
+ * Only runs in development mode
31
+ */
32
+ export declare const validateButtonProps: (props: Record<string, any>) => ValidationResult;
33
+ export declare interface ButtonProps {
34
+ variant?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger'
35
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'
36
+ disabled?: boolean
37
+ loading?: boolean
38
+ type?: 'button' | 'submit' | 'reset'
39
+ fullWidth?: boolean
40
+ leftIcon?: string
41
+ rightIcon?: string
42
+ className?: string
43
+ onClick?: (event: Event) => void
44
+ }
45
+ export { default as Button } from './Button.stx';
@@ -0,0 +1,13 @@
1
+ export declare interface CalendarProps {
2
+ value?: Date
3
+ onChange?: (date: Date) => void
4
+ minDate?: Date
5
+ maxDate?: Date
6
+ disabledDates?: Date[]
7
+ locale?: string
8
+ firstDayOfWeek?: number
9
+ showToday?: boolean
10
+ highlightToday?: boolean
11
+ className?: string
12
+ }
13
+ export { default as Calendar } from './Calendar.stx';
@@ -0,0 +1,12 @@
1
+ export declare interface CardProps {
2
+ variant?: 'default' | 'outlined' | 'elevated' | 'flat'
3
+ padding?: 'none' | 'sm' | 'default' | 'lg'
4
+ hover?: boolean
5
+ clickable?: boolean
6
+ image?: string
7
+ imageAlt?: string
8
+ imagePosition?: 'top' | 'bottom'
9
+ onClick?: (event: Event) => void
10
+ className?: string
11
+ }
12
+ export { default as Card } from './Card.stx';
@@ -0,0 +1,15 @@
1
+ export declare interface CheckboxProps {
2
+ checked?: boolean
3
+ onChange?: (checked: boolean) => void
4
+ disabled?: boolean
5
+ indeterminate?: boolean
6
+ size?: 'sm' | 'md' | 'lg'
7
+ label?: string
8
+ description?: string
9
+ error?: boolean
10
+ required?: boolean
11
+ value?: string
12
+ name?: string
13
+ className?: string
14
+ }
15
+ export { default as Checkbox } from './Checkbox.stx';
@@ -0,0 +1,35 @@
1
+ export declare interface ComboboxProps {
2
+ value?: any
3
+ onChange?: (value: any) => void
4
+ className?: string
5
+ as?: string
6
+ }
7
+ export declare interface ComboboxInputProps {
8
+ displayValue?: any
9
+ onChange?: (value: string) => void
10
+ className?: string
11
+ placeholder?: string
12
+ disabled?: boolean
13
+ }
14
+ export declare interface ComboboxButtonProps {
15
+ className?: string
16
+ as?: string
17
+ }
18
+ export declare interface ComboboxOptionsProps {
19
+ className?: string
20
+ as?: string
21
+ static?: boolean
22
+ }
23
+ export declare interface ComboboxOptionProps {
24
+ value: any
25
+ disabled?: boolean
26
+ className?: string
27
+ as?: string
28
+ currentValue?: any
29
+ onChange?: (value: any) => void
30
+ }
31
+ export { default as Combobox } from './Combobox.stx';
32
+ export { default as ComboboxButton } from './ComboboxButton.stx';
33
+ export { default as ComboboxInput } from './ComboboxInput.stx';
34
+ export { default as ComboboxOption } from './ComboboxOption.stx';
35
+ export { default as ComboboxOptions } from './ComboboxOptions.stx';
@@ -0,0 +1,13 @@
1
+ export declare interface CommandPaletteProps {
2
+ open?: boolean
3
+ onClose?: () => void
4
+ query?: string
5
+ onQueryChange?: (query: string) => void
6
+ className?: string
7
+ }
8
+ export declare interface CommandPaletteItemProps {
9
+ className?: string
10
+ onClick?: () => void
11
+ }
12
+ export { default as CommandPalette } from './CommandPalette.stx';
13
+ export { default as CommandPaletteItem } from './CommandPaletteItem.stx';
@@ -0,0 +1,27 @@
1
+ export declare interface DialogProps {
2
+ open?: boolean
3
+ onClose?: (value: boolean) => void
4
+ className?: string
5
+ as?: string
6
+ }
7
+ export declare interface DialogBackdropProps {
8
+ className?: string
9
+ as?: string
10
+ }
11
+ export declare interface DialogPanelProps {
12
+ className?: string
13
+ as?: string
14
+ }
15
+ export declare interface DialogTitleProps {
16
+ className?: string
17
+ as?: string
18
+ }
19
+ export declare interface DialogDescriptionProps {
20
+ className?: string
21
+ as?: string
22
+ }
23
+ export { default as Dialog } from './Dialog.stx';
24
+ export { default as DialogBackdrop } from './DialogBackdrop.stx';
25
+ export { default as DialogDescription } from './DialogDescription.stx';
26
+ export { default as DialogPanel } from './DialogPanel.stx';
27
+ export { default as DialogTitle } from './DialogTitle.stx';
@@ -0,0 +1,8 @@
1
+ export declare interface DrawerProps {
2
+ open?: boolean
3
+ onClose?: () => void
4
+ position?: 'right' | 'left' | 'top' | 'bottom'
5
+ title?: string
6
+ className?: string
7
+ }
8
+ export { default as Drawer } from './Drawer.stx';
@@ -0,0 +1,25 @@
1
+ export declare interface DropdownProps {
2
+ className?: string
3
+ as?: string
4
+ }
5
+ export declare interface DropdownButtonProps {
6
+ className?: string
7
+ as?: string
8
+ disabled?: boolean
9
+ onClick?: (e: Event) => void
10
+ }
11
+ export declare interface DropdownItemsProps {
12
+ className?: string
13
+ as?: string
14
+ static?: boolean
15
+ }
16
+ export declare interface DropdownItemProps {
17
+ className?: string
18
+ as?: string
19
+ disabled?: boolean
20
+ onClick?: (e: Event) => void
21
+ }
22
+ export { default as Dropdown } from './Dropdown.stx';
23
+ export { default as DropdownButton } from './DropdownButton.stx';
24
+ export { default as DropdownItem } from './DropdownItem.stx';
25
+ export { default as DropdownItems } from './DropdownItems.stx';