tharaday 0.1.1

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 (247) hide show
  1. package/.gitignore +30 -0
  2. package/.prettierrc.json +10 -0
  3. package/.storybook/main.ts +8 -0
  4. package/.storybook/preview.ts +50 -0
  5. package/.versionrc.json +6 -0
  6. package/README.md +73 -0
  7. package/dist/components/Accordion/Accordion.d.ts +2 -0
  8. package/dist/components/Accordion/Accordion.stories.d.ts +14 -0
  9. package/dist/components/Accordion/Accordion.types.d.ts +18 -0
  10. package/dist/components/Avatar/Avatar.d.ts +2 -0
  11. package/dist/components/Avatar/Avatar.stories.d.ts +14 -0
  12. package/dist/components/Avatar/Avatar.types.d.ts +10 -0
  13. package/dist/components/Badge/Badge.d.ts +2 -0
  14. package/dist/components/Badge/Badge.stories.d.ts +33 -0
  15. package/dist/components/Badge/Badge.types.d.ts +9 -0
  16. package/dist/components/Box/Box.d.ts +2 -0
  17. package/dist/components/Box/Box.stories.d.ts +38 -0
  18. package/dist/components/Box/Box.types.d.ts +49 -0
  19. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +3 -0
  20. package/dist/components/Breadcrumbs/Breadcrumbs.stories.d.ts +13 -0
  21. package/dist/components/Breadcrumbs/Breadcrumbs.types.d.ts +11 -0
  22. package/dist/components/Button/Button.d.ts +2 -0
  23. package/dist/components/Button/Button.stories.d.ts +22 -0
  24. package/dist/components/Button/Button.types.d.ts +12 -0
  25. package/dist/components/Card/Card.d.ts +5 -0
  26. package/dist/components/Card/Card.stories.d.ts +27 -0
  27. package/dist/components/Card/Card.types.d.ts +15 -0
  28. package/dist/components/Checkbox/Checkbox.d.ts +2 -0
  29. package/dist/components/Checkbox/Checkbox.stories.d.ts +17 -0
  30. package/dist/components/Checkbox/Checkbox.types.d.ts +6 -0
  31. package/dist/components/Dropdown/Dropdown.d.ts +2 -0
  32. package/dist/components/Dropdown/Dropdown.stories.d.ts +12 -0
  33. package/dist/components/Dropdown/Dropdown.types.d.ts +24 -0
  34. package/dist/components/Header/Header.d.ts +2 -0
  35. package/dist/components/Header/Header.stories.d.ts +18 -0
  36. package/dist/components/Header/Header.types.d.ts +14 -0
  37. package/dist/components/Input/Input.d.ts +2 -0
  38. package/dist/components/Input/Input.stories.d.ts +29 -0
  39. package/dist/components/Input/Input.types.d.ts +8 -0
  40. package/dist/components/Loader/Loader.d.ts +2 -0
  41. package/dist/components/Loader/Loader.stories.d.ts +25 -0
  42. package/dist/components/Loader/Loader.types.d.ts +8 -0
  43. package/dist/components/Modal/Modal.d.ts +2 -0
  44. package/dist/components/Modal/Modal.stories.d.ts +22 -0
  45. package/dist/components/Modal/Modal.types.d.ts +12 -0
  46. package/dist/components/NavBar/NavBar.d.ts +6 -0
  47. package/dist/components/NavBar/NavBar.stories.d.ts +8 -0
  48. package/dist/components/NavBar/NavBar.types.d.ts +34 -0
  49. package/dist/components/Notification/Notification.d.ts +2 -0
  50. package/dist/components/Notification/Notification.stories.d.ts +26 -0
  51. package/dist/components/Notification/Notification.types.d.ts +8 -0
  52. package/dist/components/Pagination/Pagination.d.ts +2 -0
  53. package/dist/components/Pagination/Pagination.stories.d.ts +21 -0
  54. package/dist/components/Pagination/Pagination.types.d.ts +34 -0
  55. package/dist/components/ProgressBar/ProgressBar.d.ts +2 -0
  56. package/dist/components/ProgressBar/ProgressBar.stories.d.ts +32 -0
  57. package/dist/components/ProgressBar/ProgressBar.types.d.ts +12 -0
  58. package/dist/components/RadioButton/RadioButton.d.ts +2 -0
  59. package/dist/components/RadioButton/RadioButton.stories.d.ts +30 -0
  60. package/dist/components/RadioButton/RadioButton.types.d.ts +8 -0
  61. package/dist/components/Select/Select.d.ts +2 -0
  62. package/dist/components/Select/Select.stories.d.ts +29 -0
  63. package/dist/components/Select/Select.types.d.ts +15 -0
  64. package/dist/components/Skeleton/Skeleton.d.ts +2 -0
  65. package/dist/components/Skeleton/Skeleton.stories.d.ts +15 -0
  66. package/dist/components/Skeleton/Skeleton.types.d.ts +8 -0
  67. package/dist/components/Stepper/Step.d.ts +2 -0
  68. package/dist/components/Stepper/Step.types.d.ts +17 -0
  69. package/dist/components/Stepper/Stepper.d.ts +2 -0
  70. package/dist/components/Stepper/Stepper.stories.d.ts +15 -0
  71. package/dist/components/Stepper/Stepper.types.d.ts +13 -0
  72. package/dist/components/Stepper/stepper.utils.d.ts +3 -0
  73. package/dist/components/Switch/Switch.d.ts +2 -0
  74. package/dist/components/Switch/Switch.stories.d.ts +16 -0
  75. package/dist/components/Switch/Switch.types.d.ts +5 -0
  76. package/dist/components/Table/Table.d.ts +8 -0
  77. package/dist/components/Table/Table.stories.d.ts +27 -0
  78. package/dist/components/Table/Table.types.d.ts +17 -0
  79. package/dist/components/Tabs/Tabs.d.ts +2 -0
  80. package/dist/components/Tabs/Tabs.stories.d.ts +14 -0
  81. package/dist/components/Tabs/Tabs.types.d.ts +16 -0
  82. package/dist/components/Text/Text.d.ts +2 -0
  83. package/dist/components/Text/Text.stories.d.ts +35 -0
  84. package/dist/components/Text/Text.types.d.ts +21 -0
  85. package/dist/components/Textarea/Textarea.d.ts +2 -0
  86. package/dist/components/Textarea/Textarea.stories.d.ts +29 -0
  87. package/dist/components/Textarea/Textarea.types.d.ts +9 -0
  88. package/dist/components/Tooltip/Tooltip.d.ts +2 -0
  89. package/dist/components/Tooltip/Tooltip.stories.d.ts +10 -0
  90. package/dist/components/Tooltip/Tooltip.types.d.ts +12 -0
  91. package/dist/ds.css +1 -0
  92. package/dist/ds.js +1930 -0
  93. package/dist/ds.umd.cjs +1 -0
  94. package/dist/index.d.ts +63 -0
  95. package/dist/layouts/AppLayout/AppLayout.d.ts +8 -0
  96. package/dist/layouts/AppLayout/AppLayout.stories.d.ts +19 -0
  97. package/dist/layouts/AppLayout/AppLayout.types.d.ts +50 -0
  98. package/dist/layouts/AuthLayout/AuthLayout.d.ts +2 -0
  99. package/dist/layouts/AuthLayout/AuthLayout.stories.d.ts +12 -0
  100. package/dist/layouts/AuthLayout/AuthLayout.types.d.ts +7 -0
  101. package/dist/layouts/DashboardLayout/DashboardLayout.d.ts +2 -0
  102. package/dist/layouts/DashboardLayout/DashboardLayout.stories.d.ts +17 -0
  103. package/dist/layouts/DashboardLayout/DashboardLayout.types.d.ts +15 -0
  104. package/dist/layouts/SettingsLayout/SettingsLayout.d.ts +2 -0
  105. package/dist/layouts/SettingsLayout/SettingsLayout.stories.d.ts +17 -0
  106. package/dist/layouts/SettingsLayout/SettingsLayout.types.d.ts +14 -0
  107. package/eslint.config.js +45 -0
  108. package/package.json +100 -0
  109. package/src/components/Accordion/Accordion.module.css +158 -0
  110. package/src/components/Accordion/Accordion.stories.tsx +133 -0
  111. package/src/components/Accordion/Accordion.tsx +68 -0
  112. package/src/components/Accordion/Accordion.types.ts +21 -0
  113. package/src/components/Avatar/Avatar.module.css +58 -0
  114. package/src/components/Avatar/Avatar.stories.tsx +41 -0
  115. package/src/components/Avatar/Avatar.tsx +64 -0
  116. package/src/components/Avatar/Avatar.types.ts +12 -0
  117. package/src/components/Badge/Badge.module.css +98 -0
  118. package/src/components/Badge/Badge.stories.tsx +108 -0
  119. package/src/components/Badge/Badge.tsx +22 -0
  120. package/src/components/Badge/Badge.types.ts +11 -0
  121. package/src/components/Box/Box.module.css +638 -0
  122. package/src/components/Box/Box.stories.tsx +109 -0
  123. package/src/components/Box/Box.tsx +95 -0
  124. package/src/components/Box/Box.types.ts +65 -0
  125. package/src/components/Breadcrumbs/Breadcrumbs.module.css +41 -0
  126. package/src/components/Breadcrumbs/Breadcrumbs.stories.tsx +40 -0
  127. package/src/components/Breadcrumbs/Breadcrumbs.tsx +54 -0
  128. package/src/components/Breadcrumbs/Breadcrumbs.types.ts +13 -0
  129. package/src/components/Button/Button.module.css +247 -0
  130. package/src/components/Button/Button.stories.tsx +93 -0
  131. package/src/components/Button/Button.tsx +31 -0
  132. package/src/components/Button/Button.types.ts +14 -0
  133. package/src/components/Card/Card.module.css +112 -0
  134. package/src/components/Card/Card.stories.tsx +86 -0
  135. package/src/components/Card/Card.tsx +70 -0
  136. package/src/components/Card/Card.types.ts +20 -0
  137. package/src/components/Checkbox/Checkbox.module.css +88 -0
  138. package/src/components/Checkbox/Checkbox.stories.tsx +65 -0
  139. package/src/components/Checkbox/Checkbox.tsx +57 -0
  140. package/src/components/Checkbox/Checkbox.types.ts +7 -0
  141. package/src/components/Dropdown/Dropdown.module.css +140 -0
  142. package/src/components/Dropdown/Dropdown.stories.tsx +86 -0
  143. package/src/components/Dropdown/Dropdown.tsx +251 -0
  144. package/src/components/Dropdown/Dropdown.types.ts +27 -0
  145. package/src/components/Header/Header.module.css +38 -0
  146. package/src/components/Header/Header.stories.tsx +53 -0
  147. package/src/components/Header/Header.tsx +49 -0
  148. package/src/components/Header/Header.types.ts +15 -0
  149. package/src/components/Input/Input.module.css +87 -0
  150. package/src/components/Input/Input.stories.tsx +101 -0
  151. package/src/components/Input/Input.tsx +41 -0
  152. package/src/components/Input/Input.types.ts +10 -0
  153. package/src/components/Loader/Loader.module.css +49 -0
  154. package/src/components/Loader/Loader.stories.tsx +75 -0
  155. package/src/components/Loader/Loader.tsx +15 -0
  156. package/src/components/Loader/Loader.types.ts +9 -0
  157. package/src/components/Modal/Modal.module.css +88 -0
  158. package/src/components/Modal/Modal.stories.tsx +94 -0
  159. package/src/components/Modal/Modal.tsx +115 -0
  160. package/src/components/Modal/Modal.types.ts +13 -0
  161. package/src/components/NavBar/NavBar.module.css +77 -0
  162. package/src/components/NavBar/NavBar.stories.tsx +55 -0
  163. package/src/components/NavBar/NavBar.tsx +50 -0
  164. package/src/components/NavBar/NavBar.types.ts +36 -0
  165. package/src/components/Notification/Notification.module.css +72 -0
  166. package/src/components/Notification/Notification.stories.tsx +81 -0
  167. package/src/components/Notification/Notification.tsx +34 -0
  168. package/src/components/Notification/Notification.types.ts +10 -0
  169. package/src/components/Pagination/Pagination.module.css +31 -0
  170. package/src/components/Pagination/Pagination.stories.tsx +128 -0
  171. package/src/components/Pagination/Pagination.tsx +245 -0
  172. package/src/components/Pagination/Pagination.types.ts +37 -0
  173. package/src/components/ProgressBar/ProgressBar.module.css +67 -0
  174. package/src/components/ProgressBar/ProgressBar.stories.tsx +91 -0
  175. package/src/components/ProgressBar/ProgressBar.tsx +49 -0
  176. package/src/components/ProgressBar/ProgressBar.types.ts +13 -0
  177. package/src/components/RadioButton/RadioButton.module.css +162 -0
  178. package/src/components/RadioButton/RadioButton.stories.tsx +114 -0
  179. package/src/components/RadioButton/RadioButton.tsx +43 -0
  180. package/src/components/RadioButton/RadioButton.types.ts +10 -0
  181. package/src/components/Select/Select.module.css +88 -0
  182. package/src/components/Select/Select.stories.tsx +99 -0
  183. package/src/components/Select/Select.tsx +51 -0
  184. package/src/components/Select/Select.types.ts +18 -0
  185. package/src/components/Skeleton/Skeleton.module.css +71 -0
  186. package/src/components/Skeleton/Skeleton.stories.tsx +54 -0
  187. package/src/components/Skeleton/Skeleton.tsx +32 -0
  188. package/src/components/Skeleton/Skeleton.types.ts +10 -0
  189. package/src/components/Stepper/Step.module.css +162 -0
  190. package/src/components/Stepper/Step.tsx +62 -0
  191. package/src/components/Stepper/Step.types.ts +19 -0
  192. package/src/components/Stepper/Stepper.module.css +39 -0
  193. package/src/components/Stepper/Stepper.stories.tsx +88 -0
  194. package/src/components/Stepper/Stepper.tsx +47 -0
  195. package/src/components/Stepper/Stepper.types.ts +16 -0
  196. package/src/components/Stepper/stepper.utils.ts +41 -0
  197. package/src/components/Switch/Switch.module.css +74 -0
  198. package/src/components/Switch/Switch.stories.tsx +56 -0
  199. package/src/components/Switch/Switch.tsx +36 -0
  200. package/src/components/Switch/Switch.types.ts +6 -0
  201. package/src/components/Table/Table.module.css +78 -0
  202. package/src/components/Table/Table.stories.tsx +124 -0
  203. package/src/components/Table/Table.tsx +75 -0
  204. package/src/components/Table/Table.types.ts +29 -0
  205. package/src/components/Tabs/Tabs.module.css +74 -0
  206. package/src/components/Tabs/Tabs.stories.tsx +48 -0
  207. package/src/components/Tabs/Tabs.tsx +113 -0
  208. package/src/components/Tabs/Tabs.types.ts +18 -0
  209. package/src/components/Text/Text.module.css +126 -0
  210. package/src/components/Text/Text.stories.tsx +128 -0
  211. package/src/components/Text/Text.tsx +50 -0
  212. package/src/components/Text/Text.types.ts +43 -0
  213. package/src/components/Textarea/Textarea.module.css +82 -0
  214. package/src/components/Textarea/Textarea.stories.tsx +99 -0
  215. package/src/components/Textarea/Textarea.tsx +43 -0
  216. package/src/components/Textarea/Textarea.types.ts +11 -0
  217. package/src/components/Tooltip/Tooltip.module.css +125 -0
  218. package/src/components/Tooltip/Tooltip.stories.tsx +68 -0
  219. package/src/components/Tooltip/Tooltip.tsx +87 -0
  220. package/src/components/Tooltip/Tooltip.types.ts +14 -0
  221. package/src/index.ts +132 -0
  222. package/src/layouts/AppLayout/AppLayout.module.css +17 -0
  223. package/src/layouts/AppLayout/AppLayout.stories.tsx +124 -0
  224. package/src/layouts/AppLayout/AppLayout.tsx +46 -0
  225. package/src/layouts/AppLayout/AppLayout.types.ts +50 -0
  226. package/src/layouts/AuthLayout/AuthLayout.module.css +49 -0
  227. package/src/layouts/AuthLayout/AuthLayout.stories.tsx +109 -0
  228. package/src/layouts/AuthLayout/AuthLayout.tsx +27 -0
  229. package/src/layouts/AuthLayout/AuthLayout.types.tsx +8 -0
  230. package/src/layouts/DashboardLayout/DashboardLayout.module.css +37 -0
  231. package/src/layouts/DashboardLayout/DashboardLayout.stories.tsx +144 -0
  232. package/src/layouts/DashboardLayout/DashboardLayout.tsx +41 -0
  233. package/src/layouts/DashboardLayout/DashboardLayout.types.tsx +14 -0
  234. package/src/layouts/SettingsLayout/SettingsLayout.module.css +39 -0
  235. package/src/layouts/SettingsLayout/SettingsLayout.stories.tsx +103 -0
  236. package/src/layouts/SettingsLayout/SettingsLayout.tsx +37 -0
  237. package/src/layouts/SettingsLayout/SettingsLayout.types.tsx +13 -0
  238. package/src/styles/ds.css +12 -0
  239. package/src/styles/semantic.css +56 -0
  240. package/src/styles/themes/dark.css +58 -0
  241. package/src/styles/themes/light.css +58 -0
  242. package/src/styles/themes/retro.css +58 -0
  243. package/src/styles/tokens.css +138 -0
  244. package/tsconfig.app.json +28 -0
  245. package/tsconfig.json +7 -0
  246. package/tsconfig.node.json +26 -0
  247. package/vite.config.ts +33 -0
@@ -0,0 +1 @@
1
+ (function(b,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("react/jsx-runtime"),require("react"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom"],e):(b=typeof globalThis<"u"?globalThis:b||self,e(b.DesignSystem={},b.jsxRuntime,b.React,b.ReactDOM))})(this,(function(b,e,$,Ce){"use strict";function Ie(o){var a,t,s="";if(typeof o=="string"||typeof o=="number")s+=o;else if(typeof o=="object")if(Array.isArray(o)){var n=o.length;for(a=0;a<n;a++)o[a]&&(t=Ie(o[a]))&&(s&&(s+=" "),s+=t)}else for(t in o)o[t]&&(s&&(s+=" "),s+=t);return s}function d(){for(var o,a,t=0,s="",n=arguments.length;t<n;t++)(o=arguments[t])&&(a=Ie(o))&&(s&&(s+=" "),s+=a);return s}const D={root:"_root_1s3bz_1",default:"_default_1s3bz_8",bordered:"_bordered_1s3bz_14",item:"_item_1s3bz_14",separated:"_separated_1s3bz_24",ghost:"_ghost_1s3bz_34",header:"_header_1s3bz_34",sm:"_sm_1s3bz_65",md:"_md_1s3bz_70",lg:"_lg_1s3bz_75",icon:"_icon_1s3bz_97",iconExpanded:"_iconExpanded_1s3bz_102",contentWrapper:"_contentWrapper_1s3bz_106",contentExpanded:"_contentExpanded_1s3bz_113",content:"_content_1s3bz_106",contentBody:"_contentBody_1s3bz_121",contentBodyExpanded:"_contentBodyExpanded_1s3bz_134"},je=({items:o,allowMultiple:a=!1,defaultExpanded:t=[],variant:s="default",size:n="md",className:r,id:l})=>{const _=$.useId(),c=l??`ds-accordion-${_}`,[i,v]=$.useState(t),g=u=>{v(m=>m.includes(u)?m.filter(h=>h!==u):a?[...m,u]:[u])};return e.jsx("div",{id:c,className:d(D.root,D[s],D[n],r),children:o.map(u=>{const m=i.includes(u.id);return e.jsxs("div",{className:D.item,children:[e.jsxs("button",{type:"button",id:`${c}-header-${u.id}`,className:D.header,onClick:()=>g(u.id),disabled:u.isDisabled,"aria-expanded":m,"aria-controls":`${c}-content-${u.id}`,children:[e.jsx("span",{children:u.title}),e.jsx("span",{className:d(D.icon,m&&D.iconExpanded),children:"▼"})]}),e.jsx("div",{id:`${c}-content-${u.id}`,role:"region","aria-labelledby":`${c}-header-${u.id}`,className:d(D.contentWrapper,m&&D.contentExpanded),children:e.jsx("div",{className:D.content,children:e.jsx("div",{className:d(D.contentBody,m&&D.contentBodyExpanded),children:u.content})})})]},u.id)})})},X={root:"_root_17k2j_1",image:"_image_17k2j_14",defaultIcon:"_defaultIcon_17k2j_20",fallback:"_fallback_17k2j_24",xs:"_xs_17k2j_34",sm:"_sm_17k2j_39",md:"_md_17k2j_44",lg:"_lg_17k2j_49",xl:"_xl_17k2j_54"},Be=({src:o,alt:a,name:t,size:s="md",fallback:n,className:r,...l})=>{const[_,c]=$.useState(!1),i=a??t,v=u=>u.split(" ").map(m=>m[0]).slice(0,2).join(""),g=()=>o&&!_?e.jsx("img",{src:o,alt:i||"",className:X.image,onError:()=>c(!0)}):n?e.jsx("span",{className:X.fallback,children:n}):t?e.jsx("span",{className:X.fallback,children:v(t)}):e.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",className:d(X.image,X.defaultIcon),"aria-hidden":"true",focusable:"false",children:e.jsx("path",{d:"M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"})});return e.jsx("div",{className:d(X.root,X[s],r),...l,children:g()})},he={root:"_root_13wyx_1",sm:"_sm_13wyx_12",md:"_md_13wyx_18",lg:"_lg_13wyx_24",solid:"_solid_13wyx_31",neutral:"_neutral_13wyx_31",success:"_success_13wyx_35",warning:"_warning_13wyx_39",danger:"_danger_13wyx_43",info:"_info_13wyx_47",subtle:"_subtle_13wyx_53",outline:"_outline_13wyx_75"},qe=({variant:o="solid",size:a="md",intent:t="neutral",className:s,children:n,...r})=>e.jsx("span",{className:d(he.root,he[o],he[a],he[t],s),...r,children:n}),k={box:"_box_uaxav_1",fullWidth:"_fullWidth_uaxav_5","display-block":"_display-block_uaxav_10","display-flex":"_display-flex_uaxav_13","display-inline-flex":"_display-inline-flex_uaxav_16","display-grid":"_display-grid_uaxav_19","display-inline-block":"_display-inline-block_uaxav_22","display-none":"_display-none_uaxav_25","flexDirection-row":"_flexDirection-row_uaxav_30","flexDirection-column":"_flexDirection-column_uaxav_33","flexDirection-row-reverse":"_flexDirection-row-reverse_uaxav_36","flexDirection-column-reverse":"_flexDirection-column-reverse_uaxav_39","alignItems-stretch":"_alignItems-stretch_uaxav_44","alignItems-flex-start":"_alignItems-flex-start_uaxav_47","alignItems-center":"_alignItems-center_uaxav_50","alignItems-flex-end":"_alignItems-flex-end_uaxav_53","alignItems-baseline":"_alignItems-baseline_uaxav_56","justifyContent-flex-start":"_justifyContent-flex-start_uaxav_61","justifyContent-center":"_justifyContent-center_uaxav_64","justifyContent-flex-end":"_justifyContent-flex-end_uaxav_67","justifyContent-space-between":"_justifyContent-space-between_uaxav_70","justifyContent-space-around":"_justifyContent-space-around_uaxav_73","justifyContent-space-evenly":"_justifyContent-space-evenly_uaxav_76","flexWrap-nowrap":"_flexWrap-nowrap_uaxav_81","flexWrap-wrap":"_flexWrap-wrap_uaxav_84","flexWrap-wrap-reverse":"_flexWrap-wrap-reverse_uaxav_87","textAlign-left":"_textAlign-left_uaxav_92","textAlign-center":"_textAlign-center_uaxav_95","textAlign-right":"_textAlign-right_uaxav_98","textAlign-justify":"_textAlign-justify_uaxav_101","p-0":"_p-0_uaxav_106","p-1":"_p-1_uaxav_109","p-2":"_p-2_uaxav_112","p-3":"_p-3_uaxav_115","p-4":"_p-4_uaxav_118","p-6":"_p-6_uaxav_121","p-8":"_p-8_uaxav_124","p-12":"_p-12_uaxav_127","p-14":"_p-14_uaxav_130","px-0":"_px-0_uaxav_134","px-1":"_px-1_uaxav_138","px-2":"_px-2_uaxav_142","px-3":"_px-3_uaxav_146","px-4":"_px-4_uaxav_150","px-6":"_px-6_uaxav_154","px-8":"_px-8_uaxav_158","px-12":"_px-12_uaxav_162","px-14":"_px-14_uaxav_166","py-0":"_py-0_uaxav_171","py-1":"_py-1_uaxav_175","py-2":"_py-2_uaxav_179","py-3":"_py-3_uaxav_183","py-4":"_py-4_uaxav_187","py-6":"_py-6_uaxav_191","py-8":"_py-8_uaxav_195","py-12":"_py-12_uaxav_199","py-14":"_py-14_uaxav_203","pt-0":"_pt-0_uaxav_208","pt-1":"_pt-1_uaxav_211","pt-2":"_pt-2_uaxav_214","pt-3":"_pt-3_uaxav_217","pt-4":"_pt-4_uaxav_220","pt-6":"_pt-6_uaxav_223","pt-8":"_pt-8_uaxav_226","pt-12":"_pt-12_uaxav_229","pt-14":"_pt-14_uaxav_232","pb-0":"_pb-0_uaxav_236","pb-1":"_pb-1_uaxav_239","pb-2":"_pb-2_uaxav_242","pb-3":"_pb-3_uaxav_245","pb-4":"_pb-4_uaxav_248","pb-6":"_pb-6_uaxav_251","pb-8":"_pb-8_uaxav_254","pb-12":"_pb-12_uaxav_257","pb-14":"_pb-14_uaxav_260","pl-0":"_pl-0_uaxav_264","pl-1":"_pl-1_uaxav_267","pl-2":"_pl-2_uaxav_270","pl-3":"_pl-3_uaxav_273","pl-4":"_pl-4_uaxav_276","pl-6":"_pl-6_uaxav_279","pl-8":"_pl-8_uaxav_282","pl-12":"_pl-12_uaxav_285","pl-14":"_pl-14_uaxav_288","pr-0":"_pr-0_uaxav_292","pr-1":"_pr-1_uaxav_295","pr-2":"_pr-2_uaxav_298","pr-3":"_pr-3_uaxav_301","pr-4":"_pr-4_uaxav_304","pr-6":"_pr-6_uaxav_307","pr-8":"_pr-8_uaxav_310","pr-12":"_pr-12_uaxav_313","pr-14":"_pr-14_uaxav_316","gap-0":"_gap-0_uaxav_321","gap-1":"_gap-1_uaxav_324","gap-2":"_gap-2_uaxav_327","gap-3":"_gap-3_uaxav_330","gap-4":"_gap-4_uaxav_333","gap-6":"_gap-6_uaxav_336","gap-8":"_gap-8_uaxav_339","gap-12":"_gap-12_uaxav_342","gap-14":"_gap-14_uaxav_345","m-0":"_m-0_uaxav_350","m-1":"_m-1_uaxav_353","m-2":"_m-2_uaxav_356","m-3":"_m-3_uaxav_359","m-4":"_m-4_uaxav_362","m-6":"_m-6_uaxav_365","m-8":"_m-8_uaxav_368","m-12":"_m-12_uaxav_371","m-14":"_m-14_uaxav_374","mx-0":"_mx-0_uaxav_378","mx-1":"_mx-1_uaxav_382","mx-2":"_mx-2_uaxav_386","mx-3":"_mx-3_uaxav_390","mx-4":"_mx-4_uaxav_394","mx-6":"_mx-6_uaxav_398","mx-8":"_mx-8_uaxav_402","mx-12":"_mx-12_uaxav_406","mx-14":"_mx-14_uaxav_410","my-0":"_my-0_uaxav_415","my-1":"_my-1_uaxav_419","my-2":"_my-2_uaxav_423","my-3":"_my-3_uaxav_427","my-4":"_my-4_uaxav_431","my-6":"_my-6_uaxav_435","my-8":"_my-8_uaxav_439","my-12":"_my-12_uaxav_443","my-14":"_my-14_uaxav_447","mt-0":"_mt-0_uaxav_452","mt-1":"_mt-1_uaxav_455","mt-2":"_mt-2_uaxav_458","mt-3":"_mt-3_uaxav_461","mt-4":"_mt-4_uaxav_464","mt-6":"_mt-6_uaxav_467","mt-8":"_mt-8_uaxav_470","mt-12":"_mt-12_uaxav_473","mt-14":"_mt-14_uaxav_476","mb-0":"_mb-0_uaxav_480","mb-1":"_mb-1_uaxav_483","mb-2":"_mb-2_uaxav_486","mb-3":"_mb-3_uaxav_489","mb-4":"_mb-4_uaxav_492","mb-6":"_mb-6_uaxav_495","mb-8":"_mb-8_uaxav_498","mb-12":"_mb-12_uaxav_501","mb-14":"_mb-14_uaxav_504","ml-0":"_ml-0_uaxav_508","ml-1":"_ml-1_uaxav_511","ml-2":"_ml-2_uaxav_514","ml-3":"_ml-3_uaxav_517","ml-4":"_ml-4_uaxav_520","ml-6":"_ml-6_uaxav_523","ml-8":"_ml-8_uaxav_526","ml-12":"_ml-12_uaxav_529","ml-14":"_ml-14_uaxav_532","mr-0":"_mr-0_uaxav_536","mr-1":"_mr-1_uaxav_539","mr-2":"_mr-2_uaxav_542","mr-3":"_mr-3_uaxav_545","mr-4":"_mr-4_uaxav_548","mr-6":"_mr-6_uaxav_551","mr-8":"_mr-8_uaxav_554","mr-12":"_mr-12_uaxav_557","mr-14":"_mr-14_uaxav_560","bg-main":"_bg-main_uaxav_565","bg-subtle":"_bg-subtle_uaxav_568","bg-info-subtle":"_bg-info-subtle_uaxav_571","bg-success-subtle":"_bg-success-subtle_uaxav_574","bg-warning-subtle":"_bg-warning-subtle_uaxav_577","bg-danger-subtle":"_bg-danger-subtle_uaxav_580",border:"_border_uaxav_585",borderBottom:"_borderBottom_uaxav_588","borderColor-main":"_borderColor-main_uaxav_593","borderColor-subtle":"_borderColor-subtle_uaxav_596","borderColor-danger":"_borderColor-danger_uaxav_599","backgroundColor-none":"_backgroundColor-none_uaxav_604","backgroundColor-subtle":"_backgroundColor-subtle_uaxav_607","backgroundColor-danger-subtle":"_backgroundColor-danger-subtle_uaxav_610","backgroundColor-success-subtle":"_backgroundColor-success-subtle_uaxav_613","backgroundColor-warning-subtle":"_backgroundColor-warning-subtle_uaxav_616","backgroundColor-info-subtle":"_backgroundColor-info-subtle_uaxav_619","borderRadius-none":"_borderRadius-none_uaxav_624","borderRadius-sm":"_borderRadius-sm_uaxav_627","borderRadius-md":"_borderRadius-md_uaxav_630","borderRadius-lg":"_borderRadius-lg_uaxav_633","borderRadius-full":"_borderRadius-full_uaxav_636"},Y=({children:o,as:a="div",display:t,padding:s,paddingX:n,paddingY:r,paddingTop:l,paddingBottom:_,paddingLeft:c,paddingRight:i,m:v,mx:g,my:u,mt:m,mb:h,ml:w,mr:p,gap:x,flexDirection:j,alignItems:q,justifyContent:N,flexWrap:T,flexGrow:Q,flexShrink:K,flex:O,fullWidth:de,textAlign:ie,width:me,height:z,gridTemplateColumns:E,backgroundColor:f,border:y,borderBottom:Z,borderColor:pe,borderRadius:xe,className:we,style:I,...Ne})=>{const se={...I,flexGrow:Q,flexShrink:K,flex:O,width:me,height:z,gridTemplateColumns:E};return e.jsx(a,{className:d(k.box,t&&k[`display-${t}`],ie&&k[`textAlign-${ie}`],s!==void 0&&k[`p-${s}`],n!==void 0&&k[`px-${n}`],r!==void 0&&k[`py-${r}`],l!==void 0&&k[`pt-${l}`],_!==void 0&&k[`pb-${_}`],c!==void 0&&k[`pl-${c}`],i!==void 0&&k[`pr-${i}`],v!==void 0&&k[`m-${v}`],g!==void 0&&k[`mx-${g}`],u!==void 0&&k[`my-${u}`],m!==void 0&&k[`mt-${m}`],h!==void 0&&k[`mb-${h}`],w!==void 0&&k[`ml-${w}`],p!==void 0&&k[`mr-${p}`],x!==void 0&&k[`gap-${x}`],j&&k[`flexDirection-${j}`],q&&k[`alignItems-${q}`],N&&k[`justifyContent-${N}`],T&&k[`flexWrap-${T}`],f&&k[`bg-${f}`],y&&k.border,Z&&k.borderBottom,pe&&k[`borderColor-${pe}`],xe&&k[`borderRadius-${xe}`],de&&k.fullWidth,we),style:se,...Ne,children:o})},ne={root:"_root_10ujs_1",list:"_list_10ujs_6",item:"_item_10ujs_16",link:"_link_10ujs_21",current:"_current_10ujs_27",separator:"_separator_10ujs_38"},Le=({href:o,isCurrent:a,children:t,className:s,...n})=>{const r=o&&!a?"a":"span";return e.jsx("li",{className:ne.item,children:e.jsx(r,{href:o,className:d(ne.link,a&&ne.current,s),"aria-current":a?"page":void 0,...n,children:t})})},Se=({children:o,separator:a="/",className:t,...s})=>{const n=$.Children.toArray(o);return e.jsx("nav",{"aria-label":"Breadcrumbs",className:d(ne.root,t),...s,children:e.jsx("ol",{className:ne.list,children:n.map((r,l)=>e.jsxs($.Fragment,{children:[r,l<n.length-1&&e.jsx("li",{className:ne.separator,"aria-hidden":"true",children:a})]},l))})})},ue={root:"_root_1flxt_1",xs:"_xs_1flxt_31",sm:"_sm_1flxt_39",md:"_md_1flxt_46",lg:"_lg_1flxt_53",xl:"_xl_1flxt_60",solid:"_solid_1flxt_70",success:"_success_1flxt_82",warning:"_warning_1flxt_92",danger:"_danger_1flxt_102",info:"_info_1flxt_112",outline:"_outline_1flxt_123",subtle:"_subtle_1flxt_192",fullWidth:"_fullWidth_1flxt_245"},W=({size:o="md",variant:a="outline",intent:t="neutral",fullWidth:s=!1,className:n,children:r,...l})=>e.jsx("button",{type:"button",className:d(ue.root,ue[o],ue[a],ue[t],s&&ue.fullWidth,n),...l,children:r}),B={root:"_root_1k781_1",bordered:"_bordered_1k781_9",shadowNone:"_shadowNone_1k781_14",shadowSm:"_shadowSm_1k781_17",shadowMd:"_shadowMd_1k781_20","borderColor-main":"_borderColor-main_1k781_25","borderColor-subtle":"_borderColor-subtle_1k781_28","borderColor-danger":"_borderColor-danger_1k781_31","borderColor-success":"_borderColor-success_1k781_34","borderColor-info":"_borderColor-info_1k781_37","borderColor-warning":"_borderColor-warning_1k781_40","backgroundColor-none":"_backgroundColor-none_1k781_45","backgroundColor-subtle":"_backgroundColor-subtle_1k781_48","backgroundColor-danger-subtle":"_backgroundColor-danger-subtle_1k781_51","backgroundColor-success-subtle":"_backgroundColor-success-subtle_1k781_54","backgroundColor-warning-subtle":"_backgroundColor-warning-subtle_1k781_57","backgroundColor-info-subtle":"_backgroundColor-info-subtle_1k781_60",pNone:"_pNone_1k781_65",pSm:"_pSm_1k781_68",pMd:"_pMd_1k781_71",pLg:"_pLg_1k781_74",header:"_header_1k781_79",title:"_title_1k781_85",subtitle:"_subtitle_1k781_93",content:"_content_1k781_100",footer:"_footer_1k781_104"},Ee=({padding:o="md",shadow:a="sm",bordered:t=!0,borderColor:s,backgroundColor:n,className:r,children:l,..._})=>{const c={none:B.pNone,sm:B.pSm,md:B.pMd,lg:B.pLg}[o],i={none:B.shadowNone,sm:B.shadowSm,md:B.shadowMd}[a];return e.jsx("div",{className:d(B.root,c,i,t&&B.bordered,s&&B[`borderColor-${s}`],n&&B[`backgroundColor-${n}`],r),..._,children:l})},ze=({title:o,subtitle:a,className:t,children:s,...n})=>e.jsxs("div",{className:d(B.header,t),...n,children:[o&&e.jsx("h3",{className:B.title,children:o}),a&&e.jsx("p",{className:B.subtitle,children:a}),s]}),De=({className:o,children:a,...t})=>e.jsx("div",{className:d(B.content,o),...t,children:a}),We=({className:o,children:a,...t})=>e.jsx("div",{className:d(B.footer,o),...t,children:a}),F={wrapper:"_wrapper_1mupt_1",container:"_container_1mupt_7",disabled:"_disabled_1mupt_15",input:"_input_1mupt_20",control:"_control_1mupt_28",checkmark:"_checkmark_1mupt_57",label:"_label_1mupt_68",error:"_error_1mupt_75",helperText:"_helperText_1mupt_79",errorText:"_errorText_1mupt_86"},Me=({label:o,error:a,helperText:t,className:s,disabled:n,id:r,...l})=>{const _=$.useId(),c=r??`ds-checkbox-${_}`,i=t?`${c}-help`:void 0;return e.jsxs("div",{className:d(F.wrapper,s),children:[e.jsxs("label",{htmlFor:c,className:d(F.container,n&&F.disabled,a&&F.error),children:[e.jsx("input",{type:"checkbox",id:c,disabled:n,className:F.input,"aria-describedby":i,"aria-invalid":a||void 0,...l}),e.jsx("span",{className:F.control,children:e.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"4",strokeLinecap:"round",strokeLinejoin:"round",className:F.checkmark,children:e.jsx("polyline",{points:"20 6 9 17 4 12"})})}),o&&e.jsx("span",{className:F.label,children:o})]}),t&&e.jsx("span",{id:i,className:d(F.helperText,a&&F.errorText),children:t})]})},C={wrapper:"_wrapper_qhe61_1",fullWidth:"_fullWidth_qhe61_9",label:"_label_qhe61_13",container:"_container_qhe61_19",trigger:"_trigger_qhe61_23",error:"_error_qhe61_54",sm:"_sm_qhe61_58",lg:"_lg_qhe61_63",icon:"_icon_qhe61_68",isOpen:"_isOpen_qhe61_74",menu:"_menu_qhe61_78",option:"_option_qhe61_95",optionFocused:"_optionFocused_qhe61_104",optionSelected:"_optionSelected_qhe61_108",optionDisabled:"_optionDisabled_qhe61_118",optionLabel:"_optionLabel_qhe61_124",optionDescription:"_optionDescription_qhe61_128",helperText:"_helperText_qhe61_133",errorText:"_errorText_qhe61_138"},Ae=({options:o,value:a,defaultValue:t,onChange:s,placeholder:n="Select an option",label:r,helperText:l,error:_,disabled:c,size:i="md",className:v,id:g,fullWidth:u=!1})=>{const m=$.useId(),h=g??`ds-dropdown-${m}`,w=l?`${h}-help`:void 0,[p,x]=$.useState(!1),[j,q]=$.useState(t),[N,T]=$.useState(-1),Q=$.useRef(null),K=$.useRef(null),O=a!==void 0?a:j,de=o.find(f=>f.value===O),ie=N>=0?`${h}-opt-${N}`:void 0,me=()=>{if(!c){const f=!p;if(x(f),f){if(N===-1){const y=o.findIndex(Z=>Z.value===O);T(y>=0?y:0)}}else T(-1)}},z=(f,y)=>{f.disabled||(a===void 0&&q(f.value),s?.(f.value),x(!1),T(y),K.current?.focus())},E=f=>{if(!c)switch(f.key){case"ArrowDown":f.preventDefault(),p?T(y=>y<o.length-1?y+1:y):(x(!0),T(o.findIndex(y=>y.value===O)||0));break;case"ArrowUp":f.preventDefault(),p?T(y=>y>0?y-1:y):(x(!0),T(o.findIndex(y=>y.value===O)||o.length-1));break;case"Enter":case" ":f.preventDefault(),p?N>=0&&z(o[N],N):(x(!0),T(o.findIndex(y=>y.value===O)||0));break;case"Escape":p&&(f.preventDefault(),x(!1),T(-1),K.current?.focus());break;case"Tab":p&&(x(!1),T(-1));break;case"Home":p&&(f.preventDefault(),T(0));break;case"End":p&&(f.preventDefault(),T(o.length-1));break}};return $.useEffect(()=>{p&&N>=0&&document.getElementById(`${h}-opt-${N}`)?.scrollIntoView({block:"nearest"})},[N,p,h]),$.useEffect(()=>{const f=y=>{Q.current&&!Q.current.contains(y.target)&&(x(!1),T(-1))};return document.addEventListener("mousedown",f),()=>{document.removeEventListener("mousedown",f)}},[]),e.jsxs("div",{className:d(C.wrapper,C[i],u&&C.fullWidth,_&&C.error,v),ref:Q,children:[r&&e.jsx("label",{htmlFor:h,className:C.label,children:r}),e.jsxs("div",{className:C.container,children:[e.jsxs("button",{id:h,ref:K,type:"button",className:d(C.trigger,p&&C.isOpen),onClick:me,onKeyDown:E,disabled:c,"aria-haspopup":"listbox","aria-expanded":p,"aria-describedby":w,"aria-invalid":_||void 0,"aria-controls":p?`${h}-menu`:void 0,"aria-activedescendant":p?ie:void 0,children:[e.jsx("span",{className:C.selectedLabel,children:de?de.label:n}),e.jsx("span",{className:C.icon,"aria-hidden":"true",children:e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:e.jsx("path",{d:"M2.5 4.5L6 8L9.5 4.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})})]}),p&&e.jsx("ul",{id:`${h}-menu`,className:C.menu,role:"listbox","aria-labelledby":r?void 0:h,children:o.map((f,y)=>{const Z=f.value===O,pe=y===N;return e.jsxs("li",{id:`${h}-opt-${y}`,role:"option","aria-selected":Z,className:d(C.option,Z&&C.optionSelected,pe&&C.optionFocused,f.disabled&&C.optionDisabled),onClick:()=>z(f,y),onMouseEnter:()=>!f.disabled&&T(y),children:[e.jsx("span",{className:C.optionLabel,children:f.label}),f.description&&e.jsx("span",{className:C.optionDescription,children:f.description})]},f.value)})})]}),l&&e.jsx("span",{id:w,className:d(C.helperText,_&&C.errorText),children:l})]})},re={root:"_root_dlc85_1",container:"_container_dlc85_8",sideContainer:"_sideContainer_dlc85_17",title:"_title_dlc85_28",welcome:"_welcome_dlc85_36"},ve=({id:o,logo:a,title:t,user:s,onLogin:n,onLogout:r,onCreateAccount:l})=>{const _={size:"sm",intent:"info"};return e.jsx("header",{id:o,className:re.root,children:e.jsxs("div",{className:re.container,children:[e.jsxs("div",{className:re.sideContainer,children:[a,e.jsx("h1",{className:re.title,children:t})]}),e.jsx("div",{className:re.sideContainer,children:s?e.jsxs(e.Fragment,{children:[e.jsxs("span",{className:re.welcome,children:["Welcome, ",e.jsx("b",{children:s.name}),"!"]}),e.jsx(W,{..._,onClick:r,children:"Log out"})]}):e.jsxs(e.Fragment,{children:[e.jsx(W,{..._,onClick:n,children:"Log in"}),e.jsx(W,{size:"sm",intent:"info",variant:"solid",onClick:l,children:"Sign up"})]})})]})})},P={root:"_root_19xrh_1",container:"_container_19xrh_7",leftSection:"_leftSection_19xrh_16",nav:"_nav_19xrh_22",navList:"_navList_19xrh_28",navItem:"_navItem_19xrh_36",navLink:"_navLink_19xrh_41",disabled:"_disabled_19xrh_59",active:"_active_19xrh_63",rightSection:"_rightSection_19xrh_73"},Te=({id:o,items:a,activeId:t,logo:s,actions:n,onItemClick:r,className:l})=>e.jsx("nav",{id:o,className:d(P.root,l),children:e.jsxs("div",{className:P.container,children:[s&&e.jsx("div",{className:P.leftSection,children:s}),e.jsx("div",{className:P.nav,children:e.jsx("ul",{className:P.navList,children:a.map(_=>e.jsx("li",{className:P.navItem,children:e.jsx("button",{type:"button",className:d(P.navLink,t===_.id&&P.active,_.disabled&&P.disabled),onClick:()=>!_.disabled&&r?.(_.id),disabled:_.disabled,"aria-current":t===_.id?"page":void 0,children:_.label})},_.id))})}),n&&e.jsx("div",{className:P.rightSection,children:n})]})}),R={wrapper:"_wrapper_bh3e1_1",label:"_label_bh3e1_8",inputRoot:"_inputRoot_bh3e1_15",sm:"_sm_bh3e1_47",md:"_md_bh3e1_53",lg:"_lg_bh3e1_63",error:"_error_bh3e1_70",helperText:"_helperText_bh3e1_79",errorText:"_errorText_bh3e1_85"},Fe=({size:o="md",error:a,label:t,helperText:s,className:n,id:r,...l})=>{const _=$.useId(),c=r??`ds-input-${_}`,i=s?`${c}-help`:void 0;return e.jsxs("div",{className:d(R.wrapper,n),children:[t&&e.jsx("label",{htmlFor:c,className:R.label,children:t}),e.jsx("input",{id:c,className:d(R.inputRoot,R[o],a&&R.error),"aria-describedby":i,"aria-invalid":a||void 0,...l}),s&&e.jsx("span",{id:i,className:d(R.helperText,a&&R.errorText),children:s})]})},$e={loader:"_loader_wvz8q_1",spin:"_spin_wvz8q_1",neutral:"_neutral_wvz8q_10",info:"_info_wvz8q_13",success:"_success_wvz8q_16",warning:"_warning_wvz8q_19",danger:"_danger_wvz8q_22",sm:"_sm_wvz8q_27",md:"_md_wvz8q_33",lg:"_lg_wvz8q_39"},Pe=({id:o,size:a="md",intent:t="neutral",className:s})=>e.jsx("div",{id:o,className:d($e.loader,$e[a],$e[t],s),role:"status","aria-label":"Loading"}),H={overlay:"_overlay_1dgq2_1",modal:"_modal_1dgq2_15",header:"_header_1dgq2_27",title:"_title_1dgq2_35",closeButton:"_closeButton_1dgq2_42",content:"_content_1dgq2_50",footer:"_footer_1dgq2_56",sm:"_sm_1dgq2_67",md:"_md_1dgq2_70",lg:"_lg_1dgq2_73",xl:"_xl_1dgq2_76",full:"_full_1dgq2_79",loading:"_loading_1dgq2_85"},Oe=({isOpen:o,onClose:a,title:t,children:s,footer:n,size:r="md",isLoading:l=!1,className:_,id:c})=>{const i=$.useRef(null),v=$.useRef(null),g=$.useId(),u=c??`ds-modal-${g}`,m=`${u}-title`;return $.useEffect(()=>{const h=w=>{if(w.key==="Escape"&&!l){a();return}if(w.key==="Tab"&&i.current){const p=i.current.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'),x=p[0],j=p[p.length-1];w.shiftKey?document.activeElement===x&&(j.focus(),w.preventDefault()):document.activeElement===j&&(x.focus(),w.preventDefault())}};return o&&(v.current=document.activeElement,document.body.style.overflow="hidden",window.addEventListener("keydown",h),setTimeout(()=>{const w=i.current?.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');w&&w.length>0&&w[0].focus()},0)),()=>{document.body.style.overflow="unset",window.removeEventListener("keydown",h),v.current?.focus()}},[o,a,l]),o?Ce.createPortal(e.jsx("div",{className:H.overlay,onClick:()=>!l&&a(),children:e.jsxs("div",{id:u,className:d(H.modal,H[r],l&&H.loading,_),onClick:h=>h.stopPropagation(),role:"dialog","aria-modal":"true","aria-labelledby":t?m:void 0,ref:i,children:[e.jsxs("div",{className:H.header,children:[t&&e.jsx("h2",{id:m,className:H.title,children:t}),e.jsx(W,{variant:"subtle",size:"sm",onClick:a,className:H.closeButton,"aria-label":"Close modal",disabled:l,children:"✕"})]}),e.jsx("div",{className:H.content,children:s}),n&&e.jsx("div",{className:H.footer,children:n})]})}),document.body):null},_e={root:"_root_1x0nr_1",content:"_content_1x0nr_13",title:"_title_1x0nr_17",message:"_message_1x0nr_23",closeButton:"_closeButton_1x0nr_28",neutral:"_neutral_1x0nr_44",info:"_info_1x0nr_50",success:"_success_1x0nr_56",warning:"_warning_1x0nr_62",danger:"_danger_1x0nr_68"},He=({intent:o="neutral",title:a,children:t,onClose:s,className:n,...r})=>e.jsxs("div",{className:d(_e.root,_e[o],n),role:"alert",...r,children:[e.jsxs("div",{className:_e.content,children:[a&&e.jsx("div",{className:_e.title,children:a}),e.jsx("div",{className:_e.message,children:t})]}),s&&e.jsx(W,{variant:"subtle",size:"xs",onClick:s,className:_e.closeButton,"aria-label":"Close notification",children:"✕"})]}),L={root:"_root_o4mj7_1",list:"_list_o4mj7_6",item:"_item_o4mj7_15",ellipsis:"_ellipsis_o4mj7_19",pageButton:"_pageButton_o4mj7_29"},Ke=(o,a,t)=>Math.min(Math.max(o,a),t),be=(o,a)=>{const t=[];for(let s=o;s<=a;s+=1)t.push(s);return t},Ve=(o,a,t,s,n)=>{if(o<=0)return[];if(!n)return be(1,o);const l=t*2+1+s*2+2;if(o<=l)return be(1,o);const _=be(1,Math.min(s,o)),c=be(Math.max(o-s+1,s+1),o),i=Math.max(a-t,s+2),v=Math.min(a+t,o-s-1),g=i>s+2,u=v<o-s-1,m=[..._],h=g?i:s+1,w=u?v:o-s;return g&&m.push("ellipsis"),h<=w&&m.push(...be(h,w)),u&&m.push("ellipsis"),m.push(...c),m},Ge=({id:o,count:a,page:t,defaultPage:s=1,onPageChange:n,onFirstClick:r,onLastClick:l,onNextClick:_,onPrevClick:c,siblingCount:i=1,boundaryCount:v=1,showFirstLast:g=!0,showPrevNext:u=!0,showEllipsis:m=!0,disabled:h=!1,size:w="sm",variant:p="outline",intent:x="neutral",activeVariant:j="solid",activeIntent:q,labels:N,ariaLabel:T="Pagination",getPageLabel:Q,className:K})=>{const O=$.useId(),de=o??`ds-pagination-${O}`,[ie,me]=$.useState(s),z=Math.max(0,a),E=Ke(t??ie,1,Math.max(1,z)),f=$.useMemo(()=>Ve(z,E,i,v,m),[z,E,i,v,m]),y=I=>{h||I===E||(t===void 0&&me(I),n?.(I))},Z=()=>{y(1),r?.(1)},pe=()=>{const I=z;y(I),l?.(I)},xe=()=>{const I=Math.max(1,E-1);y(I),c?.(I)},we=()=>{const I=Math.min(z,E+1);y(I),_?.(I)};return z<=0?null:e.jsx("nav",{id:de,"aria-label":T,className:d(L.root,K),children:e.jsxs("ul",{className:L.list,children:[g&&e.jsx("li",{className:L.item,children:e.jsx(W,{size:w,variant:p,intent:x,className:L.pageButton,onClick:Z,disabled:h||E===1,"aria-label":"Go to first page",children:N?.first??"First"})}),u&&e.jsx("li",{className:L.item,children:e.jsx(W,{size:w,variant:p,intent:x,className:L.pageButton,onClick:xe,disabled:h||E===1,"aria-label":"Go to previous page",children:N?.prev??"Prev"})}),f.map((I,Ne)=>{if(I==="ellipsis")return e.jsx("li",{className:L.item,"aria-hidden":"true",children:e.jsx("span",{className:L.ellipsis,children:"…"})},`ellipsis-${Ne}`);const se=I===E,$o=Q?.(I,se)??`Page ${I}${se?", current page":""}`;return e.jsx("li",{className:L.item,children:e.jsx(W,{size:w,variant:se?j:p,intent:se?q??x:x,className:L.pageButton,onClick:()=>y(I),disabled:h,"aria-current":se?"page":void 0,"aria-label":$o,children:I})},I)}),u&&e.jsx("li",{className:L.item,children:e.jsx(W,{size:w,variant:p,intent:x,className:L.pageButton,onClick:we,disabled:h||E===z,"aria-label":"Go to next page",children:N?.next??"Next"})}),g&&e.jsx("li",{className:L.item,children:e.jsx(W,{size:w,variant:p,intent:x,className:L.pageButton,onClick:pe,disabled:h||E===z,"aria-label":"Go to last page",children:N?.last??"Last"})})]})})},V={wrapper:"_wrapper_16yvn_1",labelWrapper:"_labelWrapper_16yvn_8",label:"_label_16yvn_8",percentage:"_percentage_16yvn_21",progressRoot:"_progressRoot_16yvn_27",indicator:"_indicator_16yvn_34",sm:"_sm_16yvn_40",md:"_md_16yvn_44",lg:"_lg_16yvn_48",info:"_info_16yvn_53",success:"_success_16yvn_57",warning:"_warning_16yvn_61",danger:"_danger_16yvn_65"},Ue=({value:o,max:a=100,size:t="md",intent:s="info",showLabel:n=!1,label:r,className:l,id:_})=>{const c=$.useId(),i=_??`ds-progressbar-${c}`,v=a>0?a:0,g=Math.min(Math.max(0,o),v),u=v>0?Math.min(Math.max(0,g/v*100),100):0,m=r?`${i}-label`:void 0;return e.jsxs("div",{id:i,className:d(V.wrapper,V[t],V[s],l),children:[(r||n)&&e.jsxs("div",{className:V.labelWrapper,children:[r&&e.jsx("span",{id:m,className:V.label,children:r}),n&&e.jsxs("span",{className:V.percentage,children:[Math.round(u),"%"]})]}),e.jsx("div",{className:V.progressRoot,role:"progressbar","aria-valuenow":g,"aria-valuemin":0,"aria-valuemax":a,"aria-labelledby":m,"aria-label":r?void 0:"Progress",children:e.jsx("div",{className:V.indicator,style:{width:`${u}%`}})})]})},M={wrapper:"_wrapper_4v5ks_1",label:"_label_4v5ks_7",sm:"_sm_4v5ks_17",md:"_md_4v5ks_20",lg:"_lg_4v5ks_23",inputWrapper:"_inputWrapper_4v5ks_27",radioRoot:"_radioRoot_4v5ks_34",checkmark:"_checkmark_4v5ks_44",labelText:"_labelText_4v5ks_127",error:"_error_4v5ks_133",helperText:"_helperText_4v5ks_142",errorText:"_errorText_4v5ks_156"},Je=({size:o="md",label:a,helperText:t,error:s,className:n,id:r,...l})=>{const _=$.useId(),c=r??`ds-radio-${_}`,i=t?`${c}-help`:void 0;return e.jsxs("div",{className:d(M.wrapper,n),children:[e.jsxs("label",{htmlFor:c,className:d(M.label,M[o]),children:[e.jsxs("div",{className:M.inputWrapper,children:[e.jsx("input",{type:"radio",id:c,className:d(M.radioRoot,M[o],s&&M.error),"aria-describedby":i,"aria-invalid":s||void 0,...l}),e.jsx("span",{className:M.checkmark})]}),a&&e.jsx("span",{className:M.labelText,children:a})]}),t&&e.jsx("span",{id:i,className:d(M.helperText,s&&M.errorText),children:t})]})},ge={root:"_root_1qfdr_1",text:"_text_1qfdr_6",rectangular:"_rectangular_1qfdr_15",rounded:"_rounded_1qfdr_19",circular:"_circular_1qfdr_23",pulse:"_pulse_1qfdr_28",wave:"_wave_1qfdr_44"},Qe=({variant:o="rectangular",width:a,height:t,animation:s="pulse",className:n,style:r,"aria-hidden":l,..._})=>e.jsx(Y,{className:d(ge.root,ge[o],s!=="none"&&ge[s],n),width:a,height:t,style:r,"aria-hidden":l??!0,..._}),A={step:"_step_1z90u_1",stepRow:"_stepRow_1z90u_18",interactive:"_interactive_1z90u_28",marker:"_marker_1z90u_48",text:"_text_1z90u_67",label:"_label_1z90u_74",description:"_description_1z90u_83",connector:"_connector_1z90u_92",completed:"_completed_1z90u_110","connector-completed":"_connector-completed_1z90u_120",current:"_current_1z90u_124","connector-current":"_connector-current_1z90u_134",error:"_error_1z90u_138","connector-error":"_connector-error_1z90u_148",upcoming:"_upcoming_1z90u_152",disabled:"_disabled_1z90u_156"},Ze=({step:o,index:a,status:t,isInteractive:s,onStepClick:n,isLast:r,id:l})=>{const _=!!o.disabled,c=s?"button":"div",i=t==="error"?"!":String(a+1),v=()=>{s&&!_&&n?.(o,a)},g=u=>{s&&!_&&(u.key==="Enter"||u.key===" ")&&(u.preventDefault(),n?.(o,a))};return e.jsxs("li",{className:d(A.step,A[t],_&&A.disabled),children:[e.jsxs(c,{id:l,type:s?"button":void 0,className:d(A.stepRow,s&&A.interactive),onClick:v,onKeyDown:g,"aria-current":t==="current"?"step":void 0,"aria-disabled":_?!0:void 0,disabled:s&&_?!0:void 0,tabIndex:s&&!_?0:void 0,children:[e.jsx("span",{className:A.marker,"aria-hidden":"true",children:i}),e.jsxs("span",{className:A.text,children:[e.jsx("span",{className:A.label,children:o.label}),o.description&&e.jsx("span",{className:A.description,children:o.description})]})]}),!r&&e.jsx("span",{className:d(A.connector,A[`connector-${t}`]),"aria-hidden":"true"})]})},fe={root:"_root_cxvk2_1",sm:"_sm_cxvk2_15",lg:"_lg_cxvk2_22",horizontal:"_horizontal_cxvk2_29",vertical:"_vertical_cxvk2_35"},Xe=(o,a)=>Number.isNaN(o)||a<=0?-1:Math.min(Math.max(o,0),a-1),Ye=(o,a)=>typeof o=="number"?Xe(o,a.length):typeof o=="string"?a.findIndex(t=>t.id===o):a.findIndex(t=>t.status==="current"),Re=(o,a,t)=>t||(a===-1?"upcoming":o<a?"completed":o===a?"current":"upcoming"),eo=({steps:o,currentStep:a,orientation:t="horizontal",size:s="md",onStepClick:n,ariaLabel:r,className:l,id:_,...c})=>{const i=$.useId(),v=_??`ds-stepper-${i}`,g=Ye(a,o),u=r??"Progress";return e.jsx("ol",{id:v,className:d(fe.root,fe[t],fe[s],l),"aria-label":u,"data-orientation":t,...c,children:o.map((m,h)=>e.jsx(Ze,{id:`${v}-step-${m.id}`,step:m,index:h,status:Re(h,g,m.status),isInteractive:!!n,onStepClick:n,isLast:h===o.length-1},m.id))})},ee={wrapper:"_wrapper_6vjc4_1",label:"_label_6vjc4_8",selectRoot:"_selectRoot_6vjc4_15",sm:"_sm_6vjc4_49",md:"_md_6vjc4_56",lg:"_lg_6vjc4_63",error:"_error_6vjc4_71",helperText:"_helperText_6vjc4_80",errorText:"_errorText_6vjc4_86"},oo=({size:o="md",error:a,label:t,helperText:s,className:n,id:r,options:l,children:_,...c})=>{const i=$.useId(),v=r??`ds-select-${i}`,g=s?`${v}-help`:void 0;return e.jsxs("div",{className:d(ee.wrapper,n),children:[t&&e.jsx("label",{htmlFor:v,className:ee.label,children:t}),e.jsx("select",{id:v,className:d(ee.selectRoot,ee[o],a&&ee.error),"aria-describedby":g,"aria-invalid":a||void 0,...c,children:l?l.map(u=>e.jsx("option",{value:u.value,disabled:u.disabled,children:u.label},u.value)):_}),s&&e.jsx("span",{id:g,className:d(ee.helperText,a&&ee.errorText),children:s})]})},G={wrapper:"_wrapper_196po_1",container:"_container_196po_7",disabled:"_disabled_196po_15",input:"_input_196po_20",track:"_track_196po_27",thumb:"_thumb_196po_46",label:"_label_196po_62",helperText:"_helperText_196po_69"},ao=({label:o,helperText:a,className:t,disabled:s,id:n,...r})=>{const l=$.useId(),_=n??`ds-switch-${l}`,c=a?`${_}-help`:void 0;return e.jsxs("div",{className:d(G.wrapper,t),children:[e.jsxs("label",{htmlFor:_,className:d(G.container,s&&G.disabled),children:[e.jsx("input",{type:"checkbox",id:_,role:"switch",disabled:s,className:G.input,"aria-describedby":c,...r}),e.jsx("span",{className:G.track,children:e.jsx("span",{className:G.thumb})}),o&&e.jsx("span",{className:G.label,children:o})]}),a&&e.jsx("span",{id:c,className:G.helperText,children:a})]})},S={wrapper:"_wrapper_1w3cj_1",table:"_table_1w3cj_8",thead:"_thead_1w3cj_17",tbody:"_tbody_1w3cj_22",tr:"_tr_1w3cj_22",th:"_th_1w3cj_17",td:"_td_1w3cj_40",striped:"_striped_1w3cj_46",hoverable:"_hoverable_1w3cj_50",dense:"_dense_1w3cj_54","align-left":"_align-left_1w3cj_62","align-center":"_align-center_1w3cj_65","align-right":"_align-right_1w3cj_68","align-justify":"_align-justify_1w3cj_71",loading:"_loading_1w3cj_75"},to=({children:o,className:a,striped:t,hoverable:s,dense:n,isLoading:r,...l})=>e.jsx("div",{className:d(S.wrapper,r&&S.loading,a),children:e.jsx("table",{className:d(S.table,t&&S.striped,s&&S.hoverable,n&&S.dense),"aria-busy":r||void 0,...l,children:o})}),so=({children:o,className:a,...t})=>e.jsx("thead",{className:d(S.thead,a),...t,children:o}),no=({children:o,className:a,...t})=>e.jsx("tbody",{className:d(S.tbody,a),...t,children:o}),ro=({children:o,className:a,...t})=>e.jsx("tfoot",{className:d(S.tfoot,a),...t,children:o}),_o=({children:o,className:a,...t})=>e.jsx("tr",{className:d(S.tr,a),...t,children:o}),lo=({children:o,className:a,align:t,...s})=>e.jsx("th",{className:d(S.th,t&&S[`align-${t}`],a),...s,children:o}),co=({children:o,className:a,align:t,...s})=>e.jsx("td",{className:d(S.td,t&&S[`align-${t}`],a),...s,children:o}),U={root:"_root_1luck_1",tabList:"_tabList_1luck_8",tabItem:"_tabItem_1luck_16",disabled:"_disabled_1luck_27",active:"_active_1luck_27",pillList:"_pillList_1luck_52",pillItem:"_pillItem_1luck_60",tabPanel:"_tabPanel_1luck_72"},io=({items:o,defaultActiveId:a,activeId:t,onChange:s,className:n,variant:r="line",id:l})=>{const _=$.useId(),c=l??`ds-tabs-${_}`,[i,v]=$.useState(a||(o.length>0?o[0].id:"")),g=t!==void 0?t:i,u=$.useRef(null),m=(p,x)=>{x||(t===void 0&&v(p),s?.(p))},h=p=>{const x=o.filter(N=>!N.disabled),j=x.findIndex(N=>N.id===g);let q=-1;if(p.key==="ArrowRight"||p.key==="ArrowDown"?q=(j+1)%x.length:p.key==="ArrowLeft"||p.key==="ArrowUp"?q=(j-1+x.length)%x.length:p.key==="Home"?q=0:p.key==="End"&&(q=x.length-1),q!==-1){p.preventDefault();const N=x[q].id;m(N);const T=u.current?.querySelectorAll('[role="tab"]');Array.from(T||[]).find(K=>K.getAttribute("data-id")===N)?.focus()}},w=o.find(p=>p.id===g);return e.jsxs("div",{id:c,className:d(U.root,n),children:[e.jsx("div",{role:"tablist",ref:u,className:d(U.tabList,r==="pill"&&U.pillList),onKeyDown:h,children:o.map(p=>{const x=p.id===g,j=!!p.disabled,q=j?-1:x?0:-1;return e.jsx("button",{role:"tab",id:`${c}-tab-${p.id}`,"aria-selected":x,"aria-controls":`${c}-panel-${p.id}`,"aria-disabled":j,tabIndex:q,disabled:j,"data-id":p.id,className:d(U.tabItem,r==="pill"&&U.pillItem,x&&U.active,j&&U.disabled),onClick:()=>m(p.id,j),children:p.label},p.id)})}),e.jsx("div",{role:"tabpanel",id:`${c}-panel-${g}`,"aria-labelledby":`${c}-tab-${g}`,className:U.tabPanel,tabIndex:0,children:w?.content})]})},le={root:"_root_7o66o_1",h1:"_h1_7o66o_9",h2:"_h2_7o66o_15",h3:"_h3_7o66o_21",h4:"_h4_7o66o_27",h5:"_h5_7o66o_32",h6:"_h6_7o66o_37","body-lg":"_body-lg_7o66o_42","body-md":"_body-md_7o66o_46","body-sm":"_body-sm_7o66o_50",label:"_label_7o66o_54",code:"_code_7o66o_61",left:"_left_7o66o_70",center:"_center_7o66o_73",right:"_right_7o66o_76",justify:"_justify_7o66o_79",regular:"_regular_7o66o_84",medium:"_medium_7o66o_87",bold:"_bold_7o66o_90","color-main":"_color-main_7o66o_95","color-subtle":"_color-subtle_7o66o_98","color-on-brand":"_color-on-brand_7o66o_104","color-danger":"_color-danger_7o66o_107","color-success":"_color-success_7o66o_110","color-warning":"_color-warning_7o66o_113","color-info":"_color-info_7o66o_116",noWrap:"_noWrap_7o66o_121"},po={h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",h6:"h6","body-lg":"p","body-md":"p","body-sm":"p",label:"span",code:"code"},ye=({children:o,variant:a="body-md",as:t,align:s,weight:n,color:r,noWrap:l,className:_,...c})=>{const i=t||po[a]||"span";return e.jsx(i,{className:d(le.root,le[a],s&&le[s],n&&le[n],r&&le[`color-${r}`],l&&le.noWrap,_),...c,children:o})},oe={wrapper:"_wrapper_1229p_1",label:"_label_1229p_8",textareaRoot:"_textareaRoot_1229p_15",sm:"_sm_1229p_49",md:"_md_1229p_54",lg:"_lg_1229p_59",error:"_error_1229p_65",helperText:"_helperText_1229p_74",errorText:"_errorText_1229p_80"},uo=({size:o="md",error:a,label:t,helperText:s,className:n,id:r,rows:l=4,..._})=>{const c=$.useId(),i=r??`ds-textarea-${c}`,v=s?`${i}-help`:void 0;return e.jsxs("div",{className:d(oe.wrapper,n),children:[t&&e.jsx("label",{htmlFor:i,className:oe.label,children:t}),e.jsx("textarea",{id:i,rows:l,className:d(oe.textareaRoot,oe[o],a&&oe.error),"aria-describedby":v,"aria-invalid":a||void 0,..._}),s&&e.jsx("span",{id:v,className:d(oe.helperText,a&&oe.errorText),children:s})]})},ce={root:"_root_1kghr_1",trigger:"_trigger_1kghr_6",tooltip:"_tooltip_1kghr_10",dark:"_dark_1kghr_22",light:"_light_1kghr_27",visible:"_visible_1kghr_34",top:"_top_1kghr_39",bottom:"_bottom_1kghr_45",left:"_left_1kghr_51",right:"_right_1kghr_57"},bo=({content:o,children:a,position:t="top",variant:s="dark",delay:n=200,className:r,id:l})=>{const[_,c]=$.useState(!1),i=$.useRef(null),v=$.useId(),g=l??`ds-tooltip-${v}`,u=`${g}-content`,m=()=>{i.current=window.setTimeout(()=>{c(!0)},n)},h=()=>{i.current&&window.clearTimeout(i.current),c(!1)},w=x=>{x.key==="Escape"&&h()},p=$.isValidElement(a)?(()=>{const x=a;return $.cloneElement(x,{"aria-describedby":[x.props["aria-describedby"],u].filter(Boolean).join(" ")})})():a;return e.jsxs("div",{id:g,className:d(ce.root,r),onMouseEnter:m,onMouseLeave:h,onFocus:m,onBlur:h,onKeyDown:w,children:[e.jsx("div",{className:ce.trigger,children:p}),_&&e.jsx("div",{className:d(ce.tooltip,ce[t],ce[s],_&&ce.visible),id:u,role:"tooltip",children:o})]})},ke={root:"_root_1j5ko_1",main:"_main_1j5ko_8",container:"_container_1j5ko_13"},mo=({headerLogo:o,headerTitle:a="Tharaday",user:t,navItems:s,activeNavId:n,navActions:r,children:l,onLogin:_,onLogout:c,onCreateAccount:i,onNavItemClick:v})=>e.jsxs("div",{className:ke.root,children:[e.jsx(ve,{logo:o,title:a,user:t,onLogin:_,onLogout:c,onCreateAccount:i}),e.jsx(Te,{items:s,activeId:n,actions:r,onItemClick:v}),e.jsx("main",{className:ke.main,children:e.jsx("div",{className:ke.container,children:l})})]}),ae={root:"_root_416o7_1",card:"_card_416o7_11",header:"_header_416o7_21",logo:"_logo_416o7_26",title:"_title_416o7_32",description:"_description_416o7_39",content:"_content_416o7_45"},ho=({logo:o,title:a,description:t,children:s})=>e.jsx(Y,{className:ae.root,children:e.jsxs(Y,{className:ae.card,children:[e.jsxs(Y,{className:ae.header,children:[o&&e.jsx(Y,{className:ae.logo,children:o}),a&&e.jsx(ye,{variant:"h3",as:"h1",className:ae.title,children:a}),t&&e.jsx(ye,{variant:"body-sm",color:"subtle",className:ae.description,children:t})]}),e.jsx(Y,{className:ae.content,children:s})]})}),J={root:"_root_1vwxr_1",main:"_main_1vwxr_7",container:"_container_1vwxr_11",topBar:"_topBar_1vwxr_20",stats:"_stats_1vwxr_27",content:"_content_1vwxr_33"},vo=({headerLogo:o,headerTitle:a="Tharaday",breadcrumbs:t,actions:s,stats:n,children:r,user:l,onLogin:_,onLogout:c,onCreateAccount:i})=>e.jsxs("div",{className:J.root,children:[e.jsx(ve,{logo:o,title:a,user:l,onLogin:_,onLogout:c,onCreateAccount:i}),e.jsx("main",{className:J.main,children:e.jsxs("div",{className:J.container,children:[(t||s)&&e.jsxs("div",{className:J.topBar,children:[e.jsx("div",{className:J.breadcrumbs,children:t}),e.jsx("div",{className:J.actions,children:s})]}),n&&e.jsx("div",{className:J.stats,children:n}),e.jsx("div",{className:J.content,children:r})]})})]}),te={root:"_root_o4vai_1",main:"_main_o4vai_7",container:"_container_o4vai_11",layoutBody:"_layoutBody_o4vai_20",sidebar:"_sidebar_o4vai_26",content:"_content_o4vai_34"},xo=({headerLogo:o,headerTitle:a="Tharaday",breadcrumbs:t,sidebar:s,children:n,user:r,onLogin:l,onLogout:_,onCreateAccount:c})=>e.jsxs("div",{className:te.root,children:[e.jsx(ve,{logo:o,title:a,user:r,onLogin:l,onLogout:_,onCreateAccount:c}),e.jsx("main",{className:te.main,children:e.jsxs("div",{className:te.container,children:[t&&e.jsx("div",{className:te.breadcrumbs,children:t}),e.jsxs("div",{className:te.layoutBody,children:[s&&e.jsx("aside",{className:te.sidebar,children:s}),e.jsx("section",{className:te.content,children:n})]})]})})]});b.Accordion=je,b.AppLayout=mo,b.AuthLayout=ho,b.Avatar=Be,b.Badge=qe,b.Box=Y,b.BreadcrumbItem=Le,b.Breadcrumbs=Se,b.Button=W,b.Card=Ee,b.CardContent=De,b.CardFooter=We,b.CardHeader=ze,b.Checkbox=Me,b.DashboardLayout=vo,b.Dropdown=Ae,b.Header=ve,b.Input=Fe,b.Loader=Pe,b.Modal=Oe,b.NavBar=Te,b.Notification=He,b.Pagination=Ge,b.ProgressBar=Ue,b.RadioButton=Je,b.Select=oo,b.SettingsLayout=xo,b.Skeleton=Qe,b.Stepper=eo,b.Switch=ao,b.Table=to,b.TableBody=no,b.TableCell=co,b.TableFooter=ro,b.TableHead=lo,b.TableHeader=so,b.TableRow=_o,b.Tabs=io,b.Text=ye,b.Textarea=uo,b.Tooltip=bo,Object.defineProperty(b,Symbol.toStringTag,{value:"Module"})}));
@@ -0,0 +1,63 @@
1
+ export { Accordion } from './components/Accordion/Accordion.tsx';
2
+ export type { AccordionProps, AccordionItem } from './components/Accordion/Accordion.types.ts';
3
+ export { Avatar } from './components/Avatar/Avatar.tsx';
4
+ export type { AvatarProps, AvatarSize } from './components/Avatar/Avatar.types.ts';
5
+ export { Badge } from './components/Badge/Badge.tsx';
6
+ export type { BadgeProps, BadgeSize, BadgeIntent, BadgeVariant, } from './components/Badge/Badge.types.ts';
7
+ export { Box } from './components/Box/Box.tsx';
8
+ export type { BoxProps, BoxPadding, BoxGap, BoxDisplay, BoxFlexDirection, BoxAlignItems, BoxJustifyContent, } from './components/Box/Box.types.ts';
9
+ export { Breadcrumbs, BreadcrumbItem } from './components/Breadcrumbs/Breadcrumbs.tsx';
10
+ export type { BreadcrumbsProps, BreadcrumbItemProps, } from './components/Breadcrumbs/Breadcrumbs.types.ts';
11
+ export { Button } from './components/Button/Button.tsx';
12
+ export type { ButtonProps, ButtonSize, ButtonVariant, ButtonIntent, } from './components/Button/Button.types.ts';
13
+ export { Card, CardContent, CardFooter, CardHeader } from './components/Card/Card.tsx';
14
+ export type { CardProps, CardContentProps, CardFooterProps, CardHeaderProps, } from './components/Card/Card.types.ts';
15
+ export { Checkbox } from './components/Checkbox/Checkbox.tsx';
16
+ export type { CheckboxProps } from './components/Checkbox/Checkbox.types.ts';
17
+ export { Dropdown } from './components/Dropdown/Dropdown.tsx';
18
+ export type { DropdownProps, DropdownOption, DropdownSize, } from './components/Dropdown/Dropdown.types.ts';
19
+ export { Header } from './components/Header/Header.tsx';
20
+ export type { HeaderProps } from './components/Header/Header.types.ts';
21
+ export { NavBar } from './components/NavBar/NavBar.tsx';
22
+ export type { NavBarProps, NavBarItem } from './components/NavBar/NavBar.types.ts';
23
+ export { Input } from './components/Input/Input.tsx';
24
+ export type { InputProps } from './components/Input/Input.types.ts';
25
+ export { Loader } from './components/Loader/Loader.tsx';
26
+ export type { LoaderProps, LoaderSize } from './components/Loader/Loader.types.ts';
27
+ export { Modal } from './components/Modal/Modal.tsx';
28
+ export type { ModalProps } from './components/Modal/Modal.types.ts';
29
+ export { Notification } from './components/Notification/Notification.tsx';
30
+ export type { NotificationProps } from './components/Notification/Notification.types.ts';
31
+ export { Pagination } from './components/Pagination/Pagination.tsx';
32
+ export type { PaginationProps, PaginationLabels, } from './components/Pagination/Pagination.types.ts';
33
+ export { ProgressBar } from './components/ProgressBar/ProgressBar.tsx';
34
+ export type { ProgressBarProps, ProgressBarSize, ProgressBarIntent, } from './components/ProgressBar/ProgressBar.types.ts';
35
+ export { RadioButton } from './components/RadioButton/RadioButton.tsx';
36
+ export type { RadioButtonProps } from './components/RadioButton/RadioButton.types.ts';
37
+ export { Skeleton } from './components/Skeleton/Skeleton.tsx';
38
+ export type { SkeletonProps } from './components/Skeleton/Skeleton.types.ts';
39
+ export { Stepper } from './components/Stepper/Stepper.tsx';
40
+ export type { StepperProps, StepperOrientation, StepperSize, } from './components/Stepper/Stepper.types.ts';
41
+ export type { StepOptions, StepperStatus } from './components/Stepper/Step.types.ts';
42
+ export { Select } from './components/Select/Select.tsx';
43
+ export type { SelectProps, SelectOption, SelectSize } from './components/Select/Select.types.ts';
44
+ export { Switch } from './components/Switch/Switch.tsx';
45
+ export type { SwitchProps } from './components/Switch/Switch.types.ts';
46
+ export { Table, TableBody, TableCell, TableFooter, TableHead, TableHeader, TableRow, } from './components/Table/Table.tsx';
47
+ export type { TableProps, TableBodyProps, TableCellProps, TableFooterProps, TableHeadProps, TableRowProps, TableHeaderProps, } from './components/Table/Table.types.ts';
48
+ export { Tabs } from './components/Tabs/Tabs.tsx';
49
+ export type { TabsProps, TabItem } from './components/Tabs/Tabs.types.ts';
50
+ export { Text } from './components/Text/Text.tsx';
51
+ export type { TextProps, TextAlign, TextColor, TextVariant, FontWeight, } from './components/Text/Text.types.ts';
52
+ export { Textarea } from './components/Textarea/Textarea.tsx';
53
+ export type { TextareaProps, TextareaSize } from './components/Textarea/Textarea.types.ts';
54
+ export { Tooltip } from './components/Tooltip/Tooltip.tsx';
55
+ export type { TooltipProps, TooltipPosition } from './components/Tooltip/Tooltip.types.ts';
56
+ export { AppLayout } from './layouts/AppLayout/AppLayout.tsx';
57
+ export type { AppLayoutProps } from './layouts/AppLayout/AppLayout.types.ts';
58
+ export { AuthLayout } from './layouts/AuthLayout/AuthLayout.tsx';
59
+ export type { AuthLayoutProps } from './layouts/AuthLayout/AuthLayout.types.tsx';
60
+ export { DashboardLayout } from './layouts/DashboardLayout/DashboardLayout.tsx';
61
+ export type { DashboardLayoutProps } from './layouts/DashboardLayout/DashboardLayout.types.tsx';
62
+ export { SettingsLayout } from './layouts/SettingsLayout/SettingsLayout.tsx';
63
+ export type { SettingsLayoutProps } from './layouts/SettingsLayout/SettingsLayout.types.tsx';
@@ -0,0 +1,8 @@
1
+ import { AppLayoutProps } from './AppLayout.types.ts';
2
+ /**
3
+ * AppLayout provides a standard layout structure that includes both
4
+ * a Header (for branding and user state) and a NavBar (for navigation).
5
+ *
6
+ * This component demonstrates the distinct roles of Header and NavBar.
7
+ */
8
+ export declare const AppLayout: ({ headerLogo, headerTitle, user, navItems, activeNavId, navActions, children, onLogin, onLogout, onCreateAccount, onNavItemClick, }: AppLayoutProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,19 @@
1
+ import { StoryObj } from '@storybook/react-vite';
2
+ declare const meta: {
3
+ title: string;
4
+ component: ({ headerLogo, headerTitle, user, navItems, activeNavId, navActions, children, onLogin, onLogout, onCreateAccount, onNavItemClick, }: import('./AppLayout.types.ts').AppLayoutProps) => import("react/jsx-runtime").JSX.Element;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ args: {
9
+ headerTitle: string;
10
+ onLogin: import('@vitest/spy').Mock<(...args: any[]) => any>;
11
+ onLogout: import('@vitest/spy').Mock<(...args: any[]) => any>;
12
+ onCreateAccount: import('@vitest/spy').Mock<(...args: any[]) => any>;
13
+ onNavItemClick: import('@vitest/spy').Mock<(...args: any[]) => any>;
14
+ };
15
+ };
16
+ export default meta;
17
+ type Story = StoryObj<typeof meta>;
18
+ export declare const Default: Story;
19
+ export declare const LoggedOut: Story;
@@ -0,0 +1,50 @@
1
+ import { ReactNode } from 'react';
2
+ import { NavBarItem } from '../../components/NavBar/NavBar.types.ts';
3
+ export interface AppLayoutProps {
4
+ /**
5
+ * Header logo element
6
+ */
7
+ headerLogo?: ReactNode;
8
+ /**
9
+ * Header title
10
+ */
11
+ headerTitle?: string;
12
+ /**
13
+ * Current user object for the Header
14
+ */
15
+ user?: {
16
+ name: string;
17
+ };
18
+ /**
19
+ * NavBar navigation items
20
+ */
21
+ navItems: NavBarItem[];
22
+ /**
23
+ * Active NavBar item ID
24
+ */
25
+ activeNavId?: string;
26
+ /**
27
+ * NavBar actions (right side)
28
+ */
29
+ navActions?: ReactNode;
30
+ /**
31
+ * Content to display in the main area
32
+ */
33
+ children: ReactNode;
34
+ /**
35
+ * Callback for header login
36
+ */
37
+ onLogin?: () => void;
38
+ /**
39
+ * Callback for header logout
40
+ */
41
+ onLogout?: () => void;
42
+ /**
43
+ * Callback for header create account
44
+ */
45
+ onCreateAccount?: () => void;
46
+ /**
47
+ * Callback for nav item click
48
+ */
49
+ onNavItemClick?: (id: string) => void;
50
+ }
@@ -0,0 +1,2 @@
1
+ import { AuthLayoutProps } from './AuthLayout.types.tsx';
2
+ export declare const AuthLayout: ({ logo, title, description, children }: AuthLayoutProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,12 @@
1
+ import { StoryObj } from '@storybook/react-vite';
2
+ declare const meta: {
3
+ title: string;
4
+ component: ({ logo, title, description, children }: import('./AuthLayout.types.tsx').AuthLayoutProps) => import("react/jsx-runtime").JSX.Element;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ };
9
+ export default meta;
10
+ type Story = StoryObj<typeof meta>;
11
+ export declare const Login: Story;
12
+ export declare const SignUp: Story;
@@ -0,0 +1,7 @@
1
+ import { ReactNode } from 'react';
2
+ export interface AuthLayoutProps {
3
+ logo?: ReactNode;
4
+ title?: string;
5
+ description?: string;
6
+ children: ReactNode;
7
+ }
@@ -0,0 +1,2 @@
1
+ import { DashboardLayoutProps } from './DashboardLayout.types.tsx';
2
+ export declare const DashboardLayout: ({ headerLogo, headerTitle, breadcrumbs, actions, stats, children, user, onLogin, onLogout, onCreateAccount, }: DashboardLayoutProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,17 @@
1
+ import { StoryObj } from '@storybook/react-vite';
2
+ declare const meta: {
3
+ title: string;
4
+ component: ({ headerLogo, headerTitle, breadcrumbs, actions, stats, children, user, onLogin, onLogout, onCreateAccount, }: import('./DashboardLayout.types.tsx').DashboardLayoutProps) => import("react/jsx-runtime").JSX.Element;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ args: {
9
+ headerTitle: string;
10
+ onLogin: import('@vitest/spy').Mock<(...args: any[]) => any>;
11
+ onLogout: import('@vitest/spy').Mock<(...args: any[]) => any>;
12
+ onCreateAccount: import('@vitest/spy').Mock<(...args: any[]) => any>;
13
+ };
14
+ };
15
+ export default meta;
16
+ type Story = StoryObj<typeof meta>;
17
+ export declare const Overview: Story;
@@ -0,0 +1,15 @@
1
+ import { ReactNode } from 'react';
2
+ export interface DashboardLayoutProps {
3
+ headerLogo?: ReactNode;
4
+ headerTitle?: string;
5
+ breadcrumbs?: ReactNode;
6
+ actions?: ReactNode;
7
+ stats?: ReactNode;
8
+ children: ReactNode;
9
+ user?: {
10
+ name: string;
11
+ };
12
+ onLogin?: () => void;
13
+ onLogout?: () => void;
14
+ onCreateAccount?: () => void;
15
+ }
@@ -0,0 +1,2 @@
1
+ import { SettingsLayoutProps } from './SettingsLayout.types.tsx';
2
+ export declare const SettingsLayout: ({ headerLogo, headerTitle, breadcrumbs, sidebar, children, user, onLogin, onLogout, onCreateAccount, }: SettingsLayoutProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,17 @@
1
+ import { StoryObj } from '@storybook/react-vite';
2
+ declare const meta: {
3
+ title: string;
4
+ component: ({ headerLogo, headerTitle, breadcrumbs, sidebar, children, user, onLogin, onLogout, onCreateAccount, }: import('./SettingsLayout.types.tsx').SettingsLayoutProps) => import("react/jsx-runtime").JSX.Element;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ args: {
9
+ headerTitle: string;
10
+ onLogin: import('@vitest/spy').Mock<(...args: any[]) => any>;
11
+ onLogout: import('@vitest/spy').Mock<(...args: any[]) => any>;
12
+ onCreateAccount: import('@vitest/spy').Mock<(...args: any[]) => any>;
13
+ };
14
+ };
15
+ export default meta;
16
+ type Story = StoryObj<typeof meta>;
17
+ export declare const ProfileSettings: Story;
@@ -0,0 +1,14 @@
1
+ import { ReactNode } from 'react';
2
+ export interface SettingsLayoutProps {
3
+ headerLogo?: ReactNode;
4
+ headerTitle?: string;
5
+ breadcrumbs?: ReactNode;
6
+ sidebar?: ReactNode;
7
+ children: ReactNode;
8
+ user?: {
9
+ name: string;
10
+ };
11
+ onLogin?: () => void;
12
+ onLogout?: () => void;
13
+ onCreateAccount?: () => void;
14
+ }
@@ -0,0 +1,45 @@
1
+ // For more info, see https://github.com/storybookjs/eslint-plugin-storybook#configuration-flat-config-format
2
+ import js from '@eslint/js';
3
+ import { defineConfig, globalIgnores } from 'eslint/config';
4
+ import importPlugin from 'eslint-plugin-import';
5
+ import react from 'eslint-plugin-react';
6
+ import reactHooks from 'eslint-plugin-react-hooks';
7
+ import reactRefresh from 'eslint-plugin-react-refresh';
8
+ import storybook from 'eslint-plugin-storybook';
9
+ import globals from 'globals';
10
+ import tseslint from 'typescript-eslint';
11
+ import prettierConfig from 'eslint-config-prettier';
12
+
13
+ export default defineConfig([
14
+ globalIgnores(['dist']),
15
+ prettierConfig,
16
+ {
17
+ files: ['**/*.{ts,tsx}'],
18
+ extends: [
19
+ js.configs.recommended,
20
+ tseslint.configs.recommended,
21
+ reactHooks.configs.flat.recommended,
22
+ reactRefresh.configs.vite,
23
+ ],
24
+ plugins: {
25
+ import: importPlugin,
26
+ react,
27
+ storybook,
28
+ },
29
+ languageOptions: {
30
+ ecmaVersion: 2020,
31
+ globals: globals.browser,
32
+ },
33
+ rules: {
34
+ curly: ['error', 'all'],
35
+ 'import/order': [
36
+ 'error',
37
+ {
38
+ groups: ['external', 'internal'],
39
+ 'newlines-between': 'always',
40
+ alphabetize: { order: 'asc', caseInsensitive: true },
41
+ },
42
+ ],
43
+ },
44
+ },
45
+ ]);
package/package.json ADDED
@@ -0,0 +1,100 @@
1
+ {
2
+ "name": "tharaday",
3
+ "version": "0.1.1",
4
+ "author": "Ania Wyroba",
5
+ "publishConfig": {
6
+ "access": "public",
7
+ "registry": "https://registry.npmjs.org/"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/wyrobowa/tharaday.git"
12
+ },
13
+ "type": "module",
14
+ "main": "./dist/ds.js",
15
+ "types": "./dist/index.d.ts",
16
+ "exports": {
17
+ ".": {
18
+ "import": "./dist/ds.js",
19
+ "types": "./dist/index.d.ts"
20
+ },
21
+ "./styles.css": "./dist/ds.css"
22
+ },
23
+ "dsCreator": {
24
+ "include": [
25
+ "package.json",
26
+ "README.md",
27
+ "src",
28
+ ".storybook",
29
+ "tsconfig.json",
30
+ "tsconfig.app.json",
31
+ "tsconfig.node.json",
32
+ "vite.config.ts",
33
+ "eslint.config.js",
34
+ ".prettierrc.json",
35
+ ".gitignore"
36
+ ]
37
+ },
38
+ "files": [
39
+ "dist",
40
+ "src",
41
+ ".storybook",
42
+ "package.json",
43
+ "README.md",
44
+ "tsconfig.json",
45
+ "tsconfig.app.json",
46
+ "tsconfig.node.json",
47
+ "vite.config.ts",
48
+ "eslint.config.js",
49
+ ".prettierrc.json",
50
+ ".versionrc.json",
51
+ ".gitignore"
52
+ ],
53
+ "scripts": {
54
+ "build": "tsc -b && vite build",
55
+ "lint": "eslint .",
56
+ "lint:fix": "eslint . --fix",
57
+ "storybook": "storybook dev -p 6006",
58
+ "build-storybook": "storybook build",
59
+ "format": "prettier . --check",
60
+ "format:fix": "prettier . --write",
61
+ "release": "standard-version",
62
+ "release:alpha": "standard-version --prerelease alpha",
63
+ "release:beta": "standard-version --prerelease beta",
64
+ "release:major": "standard-version --release-as major",
65
+ "release:minor": "standard-version --release-as minor",
66
+ "release:patch": "standard-version --release-as patch",
67
+ "publish:npm": "npm publish --access public --registry https://registry.npmjs.org --userconfig /dev/null",
68
+ "prepare": "husky"
69
+ },
70
+ "dependencies": {
71
+ "clsx": "^2.1.1",
72
+ "react": "^19.2.3",
73
+ "react-dom": "^19.2.3"
74
+ },
75
+ "devDependencies": {
76
+ "@eslint/js": "^9.39.2",
77
+ "@storybook/addon-a11y": "^10.2.1",
78
+ "@storybook/react-vite": "^10.2.1",
79
+ "@types/node": "^25.1.0",
80
+ "@types/react": "^19.2.10",
81
+ "@types/react-dom": "^19.2.3",
82
+ "@vitejs/plugin-react": "^5.1.2",
83
+ "eslint": "^9.39.2",
84
+ "eslint-config-prettier": "^10.1.8",
85
+ "eslint-plugin-import": "^2.32.0",
86
+ "eslint-plugin-react": "^7.37.5",
87
+ "eslint-plugin-react-hooks": "^7.0.1",
88
+ "eslint-plugin-react-refresh": "^0.4.26",
89
+ "eslint-plugin-storybook": "^10.2.1",
90
+ "globals": "^17.2.0",
91
+ "husky": "^9.1.7",
92
+ "prettier": "^3.8.1",
93
+ "standard-version": "^9.5.0",
94
+ "storybook": "^10.2.1",
95
+ "typescript": "~5.9.3",
96
+ "typescript-eslint": "^8.54.0",
97
+ "vite": "^7.3.1",
98
+ "vite-plugin-dts": "^4.5.4"
99
+ }
100
+ }