@udixio/ui-react 0.4.2 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (354) hide show
  1. package/.eslintrc.mjs +22 -0
  2. package/.storybook/main.ts +20 -0
  3. package/.storybook/preview.ts +1 -0
  4. package/CHANGELOG.md +63 -0
  5. package/dist/index.cjs +5 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +2811 -0
  8. package/dist/lib/components/Button.d.ts +9 -0
  9. package/dist/lib/components/Button.d.ts.map +1 -0
  10. package/{src → dist}/lib/components/Card.d.ts +5 -0
  11. package/dist/lib/components/Card.d.ts.map +1 -0
  12. package/{src → dist}/lib/components/Carousel.d.ts +6 -0
  13. package/dist/lib/components/Carousel.d.ts.map +1 -0
  14. package/{src → dist}/lib/components/CarouselItem.d.ts +4 -0
  15. package/dist/lib/components/CarouselItem.d.ts.map +1 -0
  16. package/dist/lib/components/Divider.d.ts +9 -0
  17. package/dist/lib/components/Divider.d.ts.map +1 -0
  18. package/dist/lib/components/Fab.d.ts +9 -0
  19. package/dist/lib/components/Fab.d.ts.map +1 -0
  20. package/dist/lib/components/IconButton.d.ts +10 -0
  21. package/dist/lib/components/IconButton.d.ts.map +1 -0
  22. package/{src → dist}/lib/components/NavigationRail.d.ts +5 -0
  23. package/dist/lib/components/NavigationRail.d.ts.map +1 -0
  24. package/{src → dist}/lib/components/NavigationRailItem.d.ts +9 -1
  25. package/dist/lib/components/NavigationRailItem.d.ts.map +1 -0
  26. package/dist/lib/components/ProgressIndicator.d.ts +8 -0
  27. package/dist/lib/components/ProgressIndicator.d.ts.map +1 -0
  28. package/{src → dist}/lib/components/Slider.d.ts +5 -0
  29. package/dist/lib/components/Slider.d.ts.map +1 -0
  30. package/dist/lib/components/Snackbar.d.ts +9 -0
  31. package/dist/lib/components/Snackbar.d.ts.map +1 -0
  32. package/{src → dist}/lib/components/Switch.d.ts +5 -0
  33. package/dist/lib/components/Switch.d.ts.map +1 -0
  34. package/{src → dist}/lib/components/Tab.d.ts +4 -0
  35. package/dist/lib/components/Tab.d.ts.map +1 -0
  36. package/{src → dist}/lib/components/Tabs.d.ts +5 -0
  37. package/dist/lib/components/Tabs.d.ts.map +1 -0
  38. package/{src → dist}/lib/components/TextField.d.ts +5 -0
  39. package/dist/lib/components/TextField.d.ts.map +1 -0
  40. package/{src → dist}/lib/components/ToolTip.d.ts +5 -0
  41. package/dist/lib/components/ToolTip.d.ts.map +1 -0
  42. package/{src → dist}/lib/components/index.d.ts +1 -1
  43. package/dist/lib/components/index.d.ts.map +1 -0
  44. package/dist/lib/effects/SyncedFixedWrapper.d.ts.map +1 -0
  45. package/dist/lib/effects/custom-scroll/custom-scroll.effect.d.ts.map +1 -0
  46. package/dist/lib/effects/custom-scroll/custom-scroll.interface.d.ts.map +1 -0
  47. package/dist/lib/effects/custom-scroll/custom-scroll.style.d.ts.map +1 -0
  48. package/dist/lib/effects/custom-scroll/index.d.ts.map +1 -0
  49. package/dist/lib/effects/index.d.ts.map +1 -0
  50. package/dist/lib/effects/ripple/RippleEffect.d.ts.map +1 -0
  51. package/dist/lib/effects/ripple/index.d.ts.map +1 -0
  52. package/dist/lib/effects/smooth-scroll.effect.d.ts.map +1 -0
  53. package/dist/lib/icon/icon.d.ts.map +1 -0
  54. package/dist/lib/icon/index.d.ts.map +1 -0
  55. package/dist/lib/index.d.ts.map +1 -0
  56. package/{src → dist}/lib/interfaces/button.interface.d.ts +9 -3
  57. package/dist/lib/interfaces/button.interface.d.ts.map +1 -0
  58. package/{src → dist}/lib/interfaces/card.interface.d.ts +2 -0
  59. package/dist/lib/interfaces/card.interface.d.ts.map +1 -0
  60. package/dist/lib/interfaces/carousel-item.interface.d.ts.map +1 -0
  61. package/{src → dist}/lib/interfaces/carousel.interface.d.ts +3 -2
  62. package/dist/lib/interfaces/carousel.interface.d.ts.map +1 -0
  63. package/dist/lib/interfaces/divider.interface.d.ts.map +1 -0
  64. package/{src → dist}/lib/interfaces/fab.interface.d.ts +2 -1
  65. package/dist/lib/interfaces/fab.interface.d.ts.map +1 -0
  66. package/{src → dist}/lib/interfaces/icon-button.interface.d.ts +3 -2
  67. package/dist/lib/interfaces/icon-button.interface.d.ts.map +1 -0
  68. package/dist/lib/interfaces/index.d.ts.map +1 -0
  69. package/{src → dist}/lib/interfaces/navigation-rail-item.interface.d.ts +1 -0
  70. package/dist/lib/interfaces/navigation-rail-item.interface.d.ts.map +1 -0
  71. package/dist/lib/interfaces/navigation-rail.interface.d.ts.map +1 -0
  72. package/dist/lib/interfaces/progress-indicator.interface.d.ts.map +1 -0
  73. package/dist/lib/interfaces/slider.interface.d.ts.map +1 -0
  74. package/{src → dist}/lib/interfaces/snackbar.interface.d.ts +1 -1
  75. package/dist/lib/interfaces/snackbar.interface.d.ts.map +1 -0
  76. package/dist/lib/interfaces/switch.interface.d.ts.map +1 -0
  77. package/dist/lib/interfaces/tab.interface.d.ts.map +1 -0
  78. package/{src → dist}/lib/interfaces/tabs.interface.d.ts +1 -1
  79. package/dist/lib/interfaces/tabs.interface.d.ts.map +1 -0
  80. package/dist/lib/interfaces/text-field.interface.d.ts.map +1 -0
  81. package/dist/lib/interfaces/tooltip.interface.d.ts.map +1 -0
  82. package/{src → dist}/lib/styles/button.style.d.ts +22 -8
  83. package/dist/lib/styles/button.style.d.ts.map +1 -0
  84. package/{src → dist}/lib/styles/card.style.d.ts +2 -0
  85. package/dist/lib/styles/card.style.d.ts.map +1 -0
  86. package/dist/lib/styles/carousel-item.style.d.ts.map +1 -0
  87. package/{src → dist}/lib/styles/carousel.style.d.ts +1 -1
  88. package/dist/lib/styles/carousel.style.d.ts.map +1 -0
  89. package/dist/lib/styles/divider.style.d.ts.map +1 -0
  90. package/{src → dist}/lib/styles/fab.style.d.ts +6 -2
  91. package/dist/lib/styles/fab.style.d.ts.map +1 -0
  92. package/{src → dist}/lib/styles/icon-button.style.d.ts +9 -5
  93. package/dist/lib/styles/icon-button.style.d.ts.map +1 -0
  94. package/dist/lib/styles/index.d.ts.map +1 -0
  95. package/{src → dist}/lib/styles/navigation-rail-item.style.d.ts +2 -0
  96. package/dist/lib/styles/navigation-rail-item.style.d.ts.map +1 -0
  97. package/dist/lib/styles/navigation-rail.style.d.ts.map +1 -0
  98. package/dist/lib/styles/progress-indicator.style.d.ts.map +1 -0
  99. package/dist/lib/styles/slider.style.d.ts.map +1 -0
  100. package/{src → dist}/lib/styles/snackbar.style.d.ts +2 -2
  101. package/dist/lib/styles/snackbar.style.d.ts.map +1 -0
  102. package/dist/lib/styles/switch.style.d.ts.map +1 -0
  103. package/{src → dist}/lib/styles/tab.style.d.ts +1 -1
  104. package/dist/lib/styles/tab.style.d.ts.map +1 -0
  105. package/{src → dist}/lib/styles/tabs.style.d.ts +1 -1
  106. package/dist/lib/styles/tabs.style.d.ts.map +1 -0
  107. package/dist/lib/styles/text-field.style.d.ts.map +1 -0
  108. package/dist/lib/styles/tooltip.style.d.ts.map +1 -0
  109. package/dist/lib/utils/component-helper.d.ts.map +1 -0
  110. package/{src → dist}/lib/utils/component.d.ts +1 -1
  111. package/dist/lib/utils/component.d.ts.map +1 -0
  112. package/dist/lib/utils/index.d.ts.map +1 -0
  113. package/dist/lib/utils/string.d.ts.map +1 -0
  114. package/dist/lib/utils/styles/classnames.d.ts.map +1 -0
  115. package/dist/lib/utils/styles/get-classname.d.ts.map +1 -0
  116. package/dist/lib/utils/styles/index.d.ts.map +1 -0
  117. package/package.json +31 -8
  118. package/postcss.config.mjs +5 -0
  119. package/src/index.css +4 -0
  120. package/src/index.ts +1 -0
  121. package/src/lib/components/Button.tsx +174 -0
  122. package/src/lib/components/Card.tsx +36 -0
  123. package/src/lib/components/Carousel.tsx +196 -0
  124. package/src/lib/components/CarouselItem.tsx +58 -0
  125. package/src/lib/components/Divider.tsx +18 -0
  126. package/src/lib/components/Fab.tsx +122 -0
  127. package/src/lib/components/IconButton.tsx +155 -0
  128. package/src/lib/components/NavigationRail.tsx +177 -0
  129. package/src/lib/components/NavigationRailItem.tsx +211 -0
  130. package/src/lib/components/ProgressIndicator.tsx +154 -0
  131. package/src/lib/components/Slider.tsx +366 -0
  132. package/src/lib/components/Snackbar.tsx +71 -0
  133. package/src/lib/components/Switch.tsx +99 -0
  134. package/src/lib/components/Tab.tsx +114 -0
  135. package/src/lib/components/Tabs.tsx +90 -0
  136. package/src/lib/components/TextField.tsx +274 -0
  137. package/src/lib/components/ToolTip.tsx +232 -0
  138. package/src/lib/components/index.ts +19 -0
  139. package/src/lib/effects/SyncedFixedWrapper.tsx +62 -0
  140. package/src/lib/effects/custom-scroll/custom-scroll.effect.tsx +287 -0
  141. package/src/lib/effects/custom-scroll/custom-scroll.interface.ts +25 -0
  142. package/src/lib/effects/custom-scroll/custom-scroll.style.ts +32 -0
  143. package/src/lib/effects/custom-scroll/index.ts +3 -0
  144. package/src/lib/effects/index.ts +4 -0
  145. package/src/lib/effects/ripple/RippleEffect.tsx +103 -0
  146. package/src/lib/effects/ripple/index.tsx +1 -0
  147. package/src/lib/effects/smooth-scroll.effect.tsx +91 -0
  148. package/src/lib/icon/icon.tsx +47 -0
  149. package/src/lib/icon/index.ts +1 -0
  150. package/src/lib/index.ts +6 -0
  151. package/src/lib/interfaces/button.interface.ts +54 -0
  152. package/src/lib/interfaces/card.interface.ts +11 -0
  153. package/src/lib/interfaces/carousel-item.interface.ts +11 -0
  154. package/src/lib/interfaces/carousel.interface.ts +22 -0
  155. package/src/lib/interfaces/divider.interface.ts +7 -0
  156. package/src/lib/interfaces/fab.interface.ts +20 -0
  157. package/src/lib/interfaces/icon-button.interface.ts +36 -0
  158. package/src/lib/interfaces/index.ts +16 -0
  159. package/src/lib/interfaces/navigation-rail-item.interface.ts +39 -0
  160. package/src/lib/interfaces/navigation-rail.interface.ts +39 -0
  161. package/src/lib/interfaces/progress-indicator.interface.ts +35 -0
  162. package/src/lib/interfaces/slider.interface.ts +27 -0
  163. package/src/lib/interfaces/snackbar.interface.ts +13 -0
  164. package/src/lib/interfaces/switch.interface.ts +14 -0
  165. package/src/lib/interfaces/tab.interface.ts +30 -0
  166. package/src/lib/interfaces/tabs.interface.ts +22 -0
  167. package/src/lib/interfaces/text-field.interface.ts +48 -0
  168. package/src/lib/interfaces/tooltip.interface.ts +35 -0
  169. package/src/lib/styles/button.style.ts +142 -0
  170. package/src/lib/styles/card.style.ts +21 -0
  171. package/src/lib/styles/carousel-item.style.ts +11 -0
  172. package/src/lib/styles/carousel.style.ts +12 -0
  173. package/src/lib/styles/divider.style.ts +17 -0
  174. package/src/lib/styles/fab.style.ts +55 -0
  175. package/src/lib/styles/icon-button.style.ts +167 -0
  176. package/src/lib/styles/index.ts +15 -0
  177. package/src/lib/styles/navigation-rail-item.style.ts +44 -0
  178. package/src/lib/styles/navigation-rail.style.ts +20 -0
  179. package/src/lib/styles/progress-indicator.style.ts +43 -0
  180. package/src/lib/styles/slider.style.ts +27 -0
  181. package/src/lib/styles/snackbar.style.ts +14 -0
  182. package/src/lib/styles/switch.style.ts +51 -0
  183. package/src/lib/styles/tab.style.ts +68 -0
  184. package/src/lib/styles/tabs.style.ts +13 -0
  185. package/src/lib/styles/text-field.style.ts +104 -0
  186. package/src/lib/styles/tooltip.style.ts +37 -0
  187. package/src/lib/utils/component-helper.ts +134 -0
  188. package/src/lib/utils/component.ts +34 -0
  189. package/src/lib/utils/index.ts +7 -0
  190. package/src/lib/utils/string.ts +9 -0
  191. package/src/lib/utils/styles/classnames.ts +49 -0
  192. package/src/lib/utils/styles/get-classname.ts +73 -0
  193. package/src/lib/utils/styles/index.ts +3 -0
  194. package/src/stories/action/button.stories.tsx +86 -0
  195. package/src/stories/action/fab.stories.tsx +54 -0
  196. package/src/stories/action/icon-button.stories.tsx +134 -0
  197. package/src/stories/assets/accessibility.png +0 -0
  198. package/src/stories/assets/accessibility.svg +5 -0
  199. package/src/stories/assets/addon-library.png +0 -0
  200. package/src/stories/assets/assets.png +0 -0
  201. package/src/stories/assets/context.png +0 -0
  202. package/src/stories/assets/discord.svg +15 -0
  203. package/src/stories/assets/docs.png +0 -0
  204. package/src/stories/assets/figma-plugin.png +0 -0
  205. package/src/stories/assets/github.svg +3 -0
  206. package/src/stories/assets/share.png +0 -0
  207. package/src/stories/assets/styling.png +0 -0
  208. package/src/stories/assets/testing.png +0 -0
  209. package/src/stories/assets/theming.png +0 -0
  210. package/src/stories/assets/tutorials.svg +12 -0
  211. package/src/stories/assets/youtube.svg +4 -0
  212. package/src/stories/communication/ProgressIndicator.stories.tsx +57 -0
  213. package/src/stories/communication/SnackBar.stories.tsx +32 -0
  214. package/src/stories/communication/tool-tip.stories.tsx +133 -0
  215. package/src/stories/containment/card.stories.tsx +42 -0
  216. package/src/stories/containment/carousel.stories.tsx +65 -0
  217. package/src/stories/containment/divider.stories.tsx +35 -0
  218. package/src/stories/effect/smooth-scroll.stories.tsx +45 -0
  219. package/src/stories/navigation/navigation-rail/navigation-rail-item.stories.tsx +65 -0
  220. package/src/stories/navigation/navigation-rail/navigation-rail.stories.tsx +122 -0
  221. package/src/stories/navigation/tabs/tab.stories.tsx +57 -0
  222. package/src/stories/navigation/tabs/tabs.stories.tsx +102 -0
  223. package/src/stories/selection/slider.stories.tsx +85 -0
  224. package/src/stories/selection/switch.stories.tsx +46 -0
  225. package/src/stories/text-inputs/text-field.stories.tsx +135 -0
  226. package/src/tests/Button.spec.tsx +67 -0
  227. package/src/udixio.css +120 -0
  228. package/theme.config.ts +7 -0
  229. package/tsconfig.json +22 -0
  230. package/tsconfig.lib.json +51 -0
  231. package/tsconfig.spec.json +37 -0
  232. package/tsconfig.storybook.json +38 -0
  233. package/vite.config.ts +77 -0
  234. package/index.js +0 -5
  235. package/index.mjs +0 -2823
  236. package/src/index.d.ts.map +0 -1
  237. package/src/lib/components/Button.d.ts +0 -7
  238. package/src/lib/components/Button.d.ts.map +0 -1
  239. package/src/lib/components/Card.d.ts.map +0 -1
  240. package/src/lib/components/Carousel.d.ts.map +0 -1
  241. package/src/lib/components/CarouselItem.d.ts.map +0 -1
  242. package/src/lib/components/Divided.d.ts +0 -4
  243. package/src/lib/components/Divided.d.ts.map +0 -1
  244. package/src/lib/components/Fab.d.ts +0 -4
  245. package/src/lib/components/Fab.d.ts.map +0 -1
  246. package/src/lib/components/IconButton.d.ts +0 -5
  247. package/src/lib/components/IconButton.d.ts.map +0 -1
  248. package/src/lib/components/NavigationRail.d.ts.map +0 -1
  249. package/src/lib/components/NavigationRailItem.d.ts.map +0 -1
  250. package/src/lib/components/ProgressIndicator.d.ts +0 -4
  251. package/src/lib/components/ProgressIndicator.d.ts.map +0 -1
  252. package/src/lib/components/Slider.d.ts.map +0 -1
  253. package/src/lib/components/Snackbar.d.ts +0 -4
  254. package/src/lib/components/Snackbar.d.ts.map +0 -1
  255. package/src/lib/components/Switch.d.ts.map +0 -1
  256. package/src/lib/components/Tab.d.ts.map +0 -1
  257. package/src/lib/components/Tabs.d.ts.map +0 -1
  258. package/src/lib/components/TextField.d.ts.map +0 -1
  259. package/src/lib/components/ToolTip.d.ts.map +0 -1
  260. package/src/lib/components/index.d.ts.map +0 -1
  261. package/src/lib/effects/SyncedFixedWrapper.d.ts.map +0 -1
  262. package/src/lib/effects/custom-scroll/custom-scroll.effect.d.ts.map +0 -1
  263. package/src/lib/effects/custom-scroll/custom-scroll.interface.d.ts.map +0 -1
  264. package/src/lib/effects/custom-scroll/custom-scroll.style.d.ts.map +0 -1
  265. package/src/lib/effects/custom-scroll/index.d.ts.map +0 -1
  266. package/src/lib/effects/index.d.ts.map +0 -1
  267. package/src/lib/effects/ripple/RippleEffect.d.ts.map +0 -1
  268. package/src/lib/effects/ripple/index.d.ts.map +0 -1
  269. package/src/lib/effects/smooth-scroll.effect.d.ts.map +0 -1
  270. package/src/lib/icon/icon.d.ts.map +0 -1
  271. package/src/lib/icon/index.d.ts.map +0 -1
  272. package/src/lib/index.d.ts.map +0 -1
  273. package/src/lib/interfaces/button.interface.d.ts.map +0 -1
  274. package/src/lib/interfaces/card.interface.d.ts.map +0 -1
  275. package/src/lib/interfaces/carousel-item.interface.d.ts.map +0 -1
  276. package/src/lib/interfaces/carousel.interface.d.ts.map +0 -1
  277. package/src/lib/interfaces/divider.interface.d.ts.map +0 -1
  278. package/src/lib/interfaces/fab.interface.d.ts.map +0 -1
  279. package/src/lib/interfaces/icon-button.interface.d.ts.map +0 -1
  280. package/src/lib/interfaces/index.d.ts.map +0 -1
  281. package/src/lib/interfaces/navigation-rail-item.interface.d.ts.map +0 -1
  282. package/src/lib/interfaces/navigation-rail.interface.d.ts.map +0 -1
  283. package/src/lib/interfaces/progress-indicator.interface.d.ts.map +0 -1
  284. package/src/lib/interfaces/slider.interface.d.ts.map +0 -1
  285. package/src/lib/interfaces/snackbar.interface.d.ts.map +0 -1
  286. package/src/lib/interfaces/switch.interface.d.ts.map +0 -1
  287. package/src/lib/interfaces/tab.interface.d.ts.map +0 -1
  288. package/src/lib/interfaces/tabs.interface.d.ts.map +0 -1
  289. package/src/lib/interfaces/text-field.interface.d.ts.map +0 -1
  290. package/src/lib/interfaces/tooltip.interface.d.ts.map +0 -1
  291. package/src/lib/styles/button.style.d.ts.map +0 -1
  292. package/src/lib/styles/card.style.d.ts.map +0 -1
  293. package/src/lib/styles/carousel-item.style.d.ts.map +0 -1
  294. package/src/lib/styles/carousel.style.d.ts.map +0 -1
  295. package/src/lib/styles/divider.style.d.ts.map +0 -1
  296. package/src/lib/styles/fab.style.d.ts.map +0 -1
  297. package/src/lib/styles/icon-button.style.d.ts.map +0 -1
  298. package/src/lib/styles/index.d.ts.map +0 -1
  299. package/src/lib/styles/navigation-rail-item.style.d.ts.map +0 -1
  300. package/src/lib/styles/navigation-rail.style.d.ts.map +0 -1
  301. package/src/lib/styles/progress-indicator.style.d.ts.map +0 -1
  302. package/src/lib/styles/slider.style.d.ts.map +0 -1
  303. package/src/lib/styles/snackbar.style.d.ts.map +0 -1
  304. package/src/lib/styles/switch.style.d.ts.map +0 -1
  305. package/src/lib/styles/tab.style.d.ts.map +0 -1
  306. package/src/lib/styles/tabs.style.d.ts.map +0 -1
  307. package/src/lib/styles/text-field.style.d.ts.map +0 -1
  308. package/src/lib/styles/tooltip.style.d.ts.map +0 -1
  309. package/src/lib/utils/component-helper.d.ts.map +0 -1
  310. package/src/lib/utils/component.d.ts.map +0 -1
  311. package/src/lib/utils/index.d.ts.map +0 -1
  312. package/src/lib/utils/string.d.ts.map +0 -1
  313. package/src/lib/utils/styles/classnames.d.ts.map +0 -1
  314. package/src/lib/utils/styles/get-classname.d.ts.map +0 -1
  315. package/src/lib/utils/styles/index.d.ts.map +0 -1
  316. /package/{LICENSE → dist/LICENSE} +0 -0
  317. /package/{src → dist}/index.d.ts +0 -0
  318. /package/{src → dist}/lib/effects/SyncedFixedWrapper.d.ts +0 -0
  319. /package/{src → dist}/lib/effects/custom-scroll/custom-scroll.effect.d.ts +0 -0
  320. /package/{src → dist}/lib/effects/custom-scroll/custom-scroll.interface.d.ts +0 -0
  321. /package/{src → dist}/lib/effects/custom-scroll/custom-scroll.style.d.ts +0 -0
  322. /package/{src → dist}/lib/effects/custom-scroll/index.d.ts +0 -0
  323. /package/{src → dist}/lib/effects/index.d.ts +0 -0
  324. /package/{src → dist}/lib/effects/ripple/RippleEffect.d.ts +0 -0
  325. /package/{src → dist}/lib/effects/ripple/index.d.ts +0 -0
  326. /package/{src → dist}/lib/effects/smooth-scroll.effect.d.ts +0 -0
  327. /package/{src → dist}/lib/icon/icon.d.ts +0 -0
  328. /package/{src → dist}/lib/icon/index.d.ts +0 -0
  329. /package/{src → dist}/lib/index.d.ts +0 -0
  330. /package/{src → dist}/lib/interfaces/carousel-item.interface.d.ts +0 -0
  331. /package/{src → dist}/lib/interfaces/divider.interface.d.ts +0 -0
  332. /package/{src → dist}/lib/interfaces/index.d.ts +0 -0
  333. /package/{src → dist}/lib/interfaces/navigation-rail.interface.d.ts +0 -0
  334. /package/{src → dist}/lib/interfaces/progress-indicator.interface.d.ts +0 -0
  335. /package/{src → dist}/lib/interfaces/slider.interface.d.ts +0 -0
  336. /package/{src → dist}/lib/interfaces/switch.interface.d.ts +0 -0
  337. /package/{src → dist}/lib/interfaces/tab.interface.d.ts +0 -0
  338. /package/{src → dist}/lib/interfaces/text-field.interface.d.ts +0 -0
  339. /package/{src → dist}/lib/interfaces/tooltip.interface.d.ts +0 -0
  340. /package/{src → dist}/lib/styles/carousel-item.style.d.ts +0 -0
  341. /package/{src → dist}/lib/styles/divider.style.d.ts +0 -0
  342. /package/{src → dist}/lib/styles/index.d.ts +0 -0
  343. /package/{src → dist}/lib/styles/navigation-rail.style.d.ts +0 -0
  344. /package/{src → dist}/lib/styles/progress-indicator.style.d.ts +0 -0
  345. /package/{src → dist}/lib/styles/slider.style.d.ts +0 -0
  346. /package/{src → dist}/lib/styles/switch.style.d.ts +0 -0
  347. /package/{src → dist}/lib/styles/text-field.style.d.ts +0 -0
  348. /package/{src → dist}/lib/styles/tooltip.style.d.ts +0 -0
  349. /package/{src → dist}/lib/utils/component-helper.d.ts +0 -0
  350. /package/{src → dist}/lib/utils/index.d.ts +0 -0
  351. /package/{src → dist}/lib/utils/string.d.ts +0 -0
  352. /package/{src → dist}/lib/utils/styles/classnames.d.ts +0 -0
  353. /package/{src → dist}/lib/utils/styles/get-classname.d.ts +0 -0
  354. /package/{src → dist}/lib/utils/styles/index.d.ts +0 -0
package/dist/index.js ADDED
@@ -0,0 +1,2811 @@
1
+ import { jsx as u, jsxs as U, Fragment as re } from "react/jsx-runtime";
2
+ import { clsx as de } from "clsx";
3
+ import { extendTailwindMerge as we } from "tailwind-merge";
4
+ import _, { useState as R, useEffect as $, useRef as V, useLayoutEffect as fe, isValidElement as ee, cloneElement as le, useMemo as ve, Children as be, Fragment as Ne } from "react";
5
+ import { motion as j, AnimatePresence as z, useScroll as Le, useMotionValueEvent as se, motionValue as me, useTransform as oe } from "motion/react";
6
+ import { throttle as Ee } from "throttle-debounce";
7
+ import { createPortal as Ie } from "react-dom";
8
+ import ke from "react-textarea-autosize";
9
+ const pe = we({
10
+ override: {
11
+ classGroups: {
12
+ "text-color": [
13
+ {
14
+ text: [
15
+ (e) => !e.startsWith("display-") && !e.startsWith("headline-") && !e.startsWith("title-") && !e.startsWith("body-") && !e.startsWith("label-")
16
+ ]
17
+ }
18
+ ]
19
+ }
20
+ },
21
+ extend: {
22
+ classGroups: {
23
+ font: [
24
+ {
25
+ text: [
26
+ (e) => e.startsWith("display-") || e.startsWith("headline-") || e.startsWith("title-") || e.startsWith("body-") || e.startsWith("label-")
27
+ ]
28
+ }
29
+ ]
30
+ },
31
+ conflictingClassGroups: {
32
+ font: ["font"]
33
+ }
34
+ }
35
+ }), f = (...e) => pe(de(e)), Me = (...e) => pe(de(e));
36
+ function Re(e) {
37
+ return e.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "").replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "");
38
+ }
39
+ const Se = (e) => {
40
+ const t = {};
41
+ e.classNameList.forEach((l) => {
42
+ var r;
43
+ if (l)
44
+ if (typeof l == "string")
45
+ (t[r = e.default] ?? (t[r] = [])).push(l);
46
+ else {
47
+ const i = l(e.states);
48
+ Object.entries(i).map((c) => {
49
+ const [a, o] = c;
50
+ (t[a] ?? (t[a] = [])).push(o);
51
+ });
52
+ }
53
+ });
54
+ const n = t;
55
+ return Object.entries(t).map((l) => {
56
+ let [r, i] = l;
57
+ i = i.reverse(), r == e.default && i.unshift("relative"), i.unshift(Re(r)), n[r] = Me(...i);
58
+ }), n;
59
+ }, K = (e, t) => (n) => Se({
60
+ classNameList: [n.className, t],
61
+ default: e,
62
+ states: n
63
+ }), Be = K(
64
+ "button",
65
+ ({
66
+ variant: e,
67
+ disabled: t,
68
+ iconPosition: n,
69
+ icon: l,
70
+ isActive: r,
71
+ loading: i,
72
+ shape: c,
73
+ onToggle: a,
74
+ size: o,
75
+ allowShapeTransformation: d
76
+ }) => ({
77
+ button: f(
78
+ " relative cursor-pointer group outline-none inline-block flex justify-center items-center ",
79
+ o === "xSmall" && "text-label-large px-3 py-1.5 gap-1",
80
+ o === "small" && "text-label-large px-4 py-2.5 gap-2",
81
+ o === "medium" && "text-title-medium px-6 py-4 gap-2",
82
+ o === "large" && "text-headline-small px-12 py-8 gap-3",
83
+ o === "xLarge" && "text-headline-large px-16 py-12 gap-4",
84
+ c === "rounded" && {
85
+ "rounded-[30px]": o === "xSmall" || o == "small",
86
+ "rounded-[40px]": o === "medium",
87
+ "rounded-[70px]": o === "large" || o == "xLarge"
88
+ },
89
+ (c === "squared" || d && r) && {
90
+ "rounded-[12px]": o === "xSmall" || o == "small",
91
+ "rounded-[16px]": o === "medium",
92
+ "rounded-[28px]": o === "large" || o == "xLarge"
93
+ },
94
+ d && !t && {
95
+ "active:rounded-[12px]": o === "xSmall" || o == "small",
96
+ "active:rounded-[16px]": o === "medium",
97
+ "active:rounded-[28px]": o === "large" || o == "xLarge"
98
+ },
99
+ e === "elevated" && {
100
+ "shadow-1 hover:shadow-2": !t,
101
+ "bg-surface-container-low text-primary": !t && !r,
102
+ "bg-primary text-on-primary": !t && r,
103
+ "text-on-surface/[38%]": t
104
+ },
105
+ e === "filled" && {
106
+ "hover:shadow-1": !t,
107
+ "bg-surface-container text-on-surface-variant": !t && !r && a,
108
+ "bg-primary text-on-primary": !t && (r && a || !a),
109
+ "text-on-surface/[38%]": t
110
+ },
111
+ e === "tonal" && {
112
+ "hover:shadow-1": !t,
113
+ "bg-secondary-container text-on-secondary-container": !t && !r,
114
+ "bg-secondary text-on-secondary": !t && r,
115
+ "text-on-surface/[0.38]": t
116
+ },
117
+ e === "outlined" && [
118
+ " border",
119
+ {
120
+ "border-on-surface/[0.12] text-on-surface/[0.38]": t,
121
+ "text-primary border-outline focus:border-primary": !t && !r,
122
+ "text-inverse-on-surface bg-inverse-surface border-inverse-surface": !t && r
123
+ }
124
+ ],
125
+ e === "text" && [
126
+ "w-fit",
127
+ {
128
+ "text-primary": !t,
129
+ "text-on-surface/[0.38]": t
130
+ },
131
+ o === "xSmall" && "-mx-3 ",
132
+ o === "small" && "-mx-4 ",
133
+ o === "medium" && "-mx-6 ",
134
+ o === "large" && "-mx-12",
135
+ o === "xLarge" && "-mx-16 "
136
+ // size === 'small' && ' -my-2.5',
137
+ // size === 'medium' && ' -my-4',
138
+ // size === 'large' && '-my-8',
139
+ // size === 'xLarge' && ' -my-12',
140
+ ],
141
+ t && "cursor-default"
142
+ ),
143
+ touchTarget: f(
144
+ "absolute -translate-x-1/2 -translate-y-1/2 left-1/2 top-1/2 h-12 w-full"
145
+ ),
146
+ stateLayer: f(
147
+ "min-h-full min-w-full absolute top-0 left-0 overflow-hidden",
148
+ e === "elevated" && {
149
+ "bg-on-surface/[0.12]": t,
150
+ "group-state-primary": !t
151
+ },
152
+ e === "filled" && {
153
+ "bg-on-surface/[0.12]": t,
154
+ "group-state-on-primary": !t && !a,
155
+ "group-state-on-surface-variant": !t && a
156
+ },
157
+ c === "rounded" && {
158
+ "rounded-[30px]": o === "xSmall" || o == "small",
159
+ "rounded-[40px]": o === "medium",
160
+ "rounded-[70px]": o === "large" || o == "xLarge"
161
+ },
162
+ (c === "squared" || d && r) && {
163
+ "rounded-[12px]": o === "xSmall" || o == "small",
164
+ "rounded-[16px]": o === "medium",
165
+ "rounded-[28px]": o === "large" || o == "xLarge"
166
+ },
167
+ d && !t && {
168
+ "group-active:rounded-[12px]": o === "xSmall" || o == "small",
169
+ "group-active:rounded-[16px]": o === "medium",
170
+ "group-active:rounded-[28px]": o === "large" || o == "xLarge"
171
+ },
172
+ e === "tonal" && {
173
+ "bg-on-surface/[0.12]": t,
174
+ "group-state-on-secondary-container ": !t
175
+ },
176
+ e === "outlined" && {
177
+ "group-state-primary group-state-primary": !t
178
+ },
179
+ e === "text" && {
180
+ "group-state-primary": !t
181
+ }
182
+ ),
183
+ label: f({ invisible: i }),
184
+ icon: f(
185
+ { invisible: i },
186
+ o === "xSmall" && "size-5",
187
+ o === "small" && "size-5",
188
+ o === "medium" && "size-6",
189
+ o === "large" && "size-8",
190
+ o === "xLarge" && "size-10"
191
+ )
192
+ })
193
+ ), Ce = K(
194
+ "card",
195
+ ({ variant: e, isInteractive: t }) => ({
196
+ card: f(
197
+ "card group/card rounded-xl overflow-hidden z-10",
198
+ e === "outlined" && "bg-surface border border-outline-variant",
199
+ e === "elevated" && "bg-surface-container-low shadow-1",
200
+ e === "filled" && "bg-surface-container-highest"
201
+ ),
202
+ stateLayer: f([
203
+ "w-full top-0 left-0 h-full absolute -z-10",
204
+ {
205
+ " group-hover/card:hover-state-on-surface group-focus-visible/card:focus-state-on-surface": t
206
+ }
207
+ ])
208
+ })
209
+ ), We = K(
210
+ "carouselItem",
211
+ () => ({
212
+ carouselItem: f("rounded-[28px] overflow-hidden flex-none")
213
+ })
214
+ ), De = K(
215
+ "carousel",
216
+ () => ({
217
+ carousel: f(["w-full h-[400px]"]),
218
+ track: f(
219
+ "grid grid-flow-col h-full transition-transform ease-out w-fit"
220
+ )
221
+ })
222
+ ), Pe = K(
223
+ "divider",
224
+ ({ orientation: e }) => ({
225
+ divider: f(
226
+ "border-outline-variant ",
227
+ {
228
+ "h-fit w-full border-t": e === "horizontal"
229
+ },
230
+ {
231
+ "h-auto self-stretch w-fit border-l": e === "vertical"
232
+ }
233
+ )
234
+ })
235
+ ), $e = K(
236
+ "fab",
237
+ ({ size: e, variant: t, isExtended: n }) => ({
238
+ fab: f(
239
+ "flex shadow-3 hover:shadow-4 group overflow-hidden outline-none items-center cursor-pointer",
240
+ {
241
+ "rounded-[12px]": e == "small" && !n,
242
+ "rounded-[16px]": e == "medium" || n,
243
+ "rounded-[28px]": e == "large" && !n
244
+ },
245
+ {
246
+ "p-2": e == "small" && !n,
247
+ "p-4": e == "medium" || n,
248
+ "p-[30px]": e == "large" && !n
249
+ },
250
+ t === "surface" && "bg-surface-container",
251
+ t === "primary" && "bg-primary-container",
252
+ t === "secondary" && "bg-secondary-container",
253
+ t === "tertiary" && "bg-tertiary-container"
254
+ ),
255
+ stateLayer: f(
256
+ "absolute w-full h-full overflow-hidden left-1/2 top-1/2 transform -translate-y-1/2 -translate-x-1/2",
257
+ t === "surface" && "group-hover:hover-state-primary group-focus:focus-state-primary",
258
+ t === "primary" && "group-hover:hover-state-on-primary-container group-focus-visible:focus-state-on-primary-container",
259
+ t === "secondary" && "group-hover:hover-state-on-secondary-container group-focus-visible:focus-state-on-secondary-container",
260
+ t === "tertiary" && "group-hover:hover-state-on-tertiary-container group-focus-visible:focus-state-on-tertiary-container"
261
+ ),
262
+ icon: f(
263
+ {
264
+ "size-6": e == "small" || e == "medium" || n,
265
+ "size-9": e == "large" && !n
266
+ },
267
+ t === "surface" && "text-primary",
268
+ t === "primary" && "text-on-primary-container",
269
+ t === "secondary" && "text-on-secondary-container",
270
+ t === "tertiary" && "text-on-tertiary-container"
271
+ ),
272
+ label: f(
273
+ "text-title-medium text-nowrap",
274
+ t === "surface" && "text-primary",
275
+ t === "primary" && "text-on-primary-container",
276
+ t === "secondary" && "text-on-secondary-container",
277
+ t === "tertiary" && "text-on-tertiary-container"
278
+ )
279
+ })
280
+ ), Ve = K(
281
+ "iconButton",
282
+ ({
283
+ variant: e,
284
+ disabled: t,
285
+ onToggle: n,
286
+ isActive: l,
287
+ size: r,
288
+ width: i,
289
+ shape: c,
290
+ allowShapeTransformation: a
291
+ }) => ({
292
+ iconButton: f(
293
+ "rounded-full relative flex transition-all duration-300",
294
+ "group cursor-pointer",
295
+ {
296
+ "cursor-default": t
297
+ },
298
+ (c === "rounded" || c === "squared" && n && !t && l && a) && {
299
+ "rounded-[30px]": r === "xSmall" || r == "small",
300
+ "rounded-[40px]": r === "medium",
301
+ "rounded-[70px]": r === "large" || r == "xLarge"
302
+ },
303
+ (c === "squared" || c === "rounded" && n && !t && l && a) && {
304
+ "rounded-[12px]": r === "xSmall" || r == "small",
305
+ "rounded-[16px]": r === "medium",
306
+ "rounded-[28px]": r === "large" || r == "xLarge"
307
+ },
308
+ a && !t && {
309
+ "group-active:rounded-[12px]": r === "xSmall" || r == "small",
310
+ "group-active:rounded-[16px]": r === "medium",
311
+ "group-active:rounded-[28px]": r === "large" || r == "xLarge"
312
+ },
313
+ e === "filled" && [
314
+ !t && {
315
+ "bg-surface-container": !l && !!n,
316
+ "bg-primary": l || !n
317
+ },
318
+ !!t && "bg-on-surface/[0.12]"
319
+ ],
320
+ e === "tonal" && [
321
+ !t && {
322
+ "bg-surface-container": !l && !!n,
323
+ "bg-secondary-container": l || !n
324
+ },
325
+ !!t && "bg-on-surface/[0.12]"
326
+ ],
327
+ e === "outlined" && [
328
+ !t && {
329
+ "border border-outline": !l,
330
+ "border border-transparent bg-inverse-surface": l
331
+ },
332
+ !!t && {
333
+ "border border-on-surface/[0.12]": !l,
334
+ "border border-transparent bg-on-surface/[0.12]": l
335
+ }
336
+ ]
337
+ ),
338
+ touchTarget: f(
339
+ "absolute -translate-x-1/2 -translate-y-1/2 left-1/2 top-1/2 h-12 w-full"
340
+ ),
341
+ stateLayer: f(
342
+ "absolute top-0 left-0 h-full w-full overflow-hidden",
343
+ (c === "rounded" || c === "squared" && n && !t && l && a) && {
344
+ "rounded-[30px]": r === "xSmall" || r == "small",
345
+ "rounded-[40px]": r === "medium",
346
+ "rounded-[70px]": r === "large" || r == "xLarge"
347
+ },
348
+ (c === "squared" || c === "rounded" && n && !t && l && a) && {
349
+ "rounded-[12px]": r === "xSmall" || r == "small",
350
+ "rounded-[16px]": r === "medium",
351
+ "rounded-[28px]": r === "large" || r == "xLarge"
352
+ },
353
+ a && !t && {
354
+ "group-active:rounded-[12px]": r === "xSmall" || r == "small",
355
+ "group-active:rounded-[16px]": r === "medium",
356
+ "group-active:rounded-[28px]": r === "large" || r == "xLarge"
357
+ },
358
+ !t && [
359
+ e === "standard" && {
360
+ "state-on-surface-variant": !l,
361
+ "state-primary": l
362
+ },
363
+ e === "filled" && {
364
+ "state-primary": !l && !!n,
365
+ "state-inverse-on-surface": l || !n
366
+ },
367
+ e === "tonal" && {
368
+ "state-on-surface-variant": !l && !!n,
369
+ "state-on-secondary-container": l || !n
370
+ },
371
+ e === "outlined" && {
372
+ "state-on-surface-variant": !l,
373
+ "state-on-primary": l
374
+ }
375
+ ]
376
+ ),
377
+ icon: f(
378
+ " transition-all duration-300",
379
+ { "size-5 p-1.5": r === "xSmall" },
380
+ { "size-6 p-2": r === "small" },
381
+ { "size-6 p-4": r === "medium" },
382
+ { "size-8 p-8": r === "large" },
383
+ { "size-10 p-12": r === "xLarge" },
384
+ i == "narrow" && [
385
+ { "px-1": r === "xSmall" },
386
+ { "px-1": r === "small" },
387
+ { "px-3": r === "medium" },
388
+ { "px-4": r === "large" },
389
+ { "px-8": r === "xLarge" }
390
+ ],
391
+ i == "wide" && [
392
+ { "px-2.5": r === "xSmall" },
393
+ { "px-3.5": r === "small" },
394
+ { "px-6": r === "medium" },
395
+ { "px-12": r === "large" },
396
+ { "px-[72px]": r === "xLarge" }
397
+ ],
398
+ !t && [
399
+ e === "standard" && {
400
+ "text-on-surface-variant": !l,
401
+ "text-primary": l
402
+ },
403
+ e === "filled" && {
404
+ "text-primary": !l && !!n,
405
+ "text-on-primary": l || !n
406
+ },
407
+ e === "tonal" && {
408
+ "text-on-surface-variant": !l && !!n,
409
+ "text-on-secondary-container": l || !n
410
+ },
411
+ e === "outlined" && {
412
+ "text-on-surface-variant": !l,
413
+ "text-inverse-on-surface": l
414
+ }
415
+ ],
416
+ !!t && "text-on-surface/[0.38]"
417
+ )
418
+ })
419
+ ), Ue = K(
420
+ "progressIndicator",
421
+ ({ variant: e, isVisible: t }) => ({
422
+ progressIndicator: f(
423
+ (e === "linear-determinate" || e == "linear-indeterminate") && "flex w-full h-1"
424
+ ),
425
+ track: f("h-full rounded-full bg-primary rounded-l-full", {
426
+ "max-h-0": !t,
427
+ "max-h-full": t
428
+ }),
429
+ activeIndicator: f(
430
+ {
431
+ "max-h-0": !t,
432
+ "max-h-full": t
433
+ },
434
+ (e === "linear-determinate" || e == "linear-indeterminate") && "h-full flex-1 rounded-full bg-primary-container",
435
+ (e === "circular-determinate" || e == "circular-indeterminate") && [
436
+ "stroke-primary fill-transparent ",
437
+ {
438
+ "stroke-[4px]": t,
439
+ "stroke-[0px]": !t
440
+ }
441
+ ]
442
+ ),
443
+ stop: f(
444
+ "absolute top-1/2 -translate-y-1/2 right-0 bg-primary rounded-full size-1",
445
+ {
446
+ "max-h-0": !t,
447
+ "max-h-full": t
448
+ }
449
+ )
450
+ })
451
+ ), je = K(
452
+ "slider",
453
+ ({ isChanging: e }) => ({
454
+ slider: f([
455
+ "relative w-full h-11 flex items-center rounded gap-x-1.5 cursor-pointer"
456
+ ]),
457
+ activeTrack: f([
458
+ "h-4 relative transition-all duration-100 bg-primary overflow-hidden rounded-l-full "
459
+ ]),
460
+ inactiveTrack: f([
461
+ "h-4 relative transition-all duration-100 bg-primary-container rounded-r-full overflow-hidden"
462
+ ]),
463
+ handle: f([
464
+ "transform transition-all duration-100 bg-primary h-full rounded-full ",
465
+ { "w-0.5": e, "w-1": !e }
466
+ ]),
467
+ valueIndicator: f([
468
+ "absolute select-none bg-inverse-surface text-inverse-on-surface py-3 px-4 text-label-large rounded-full bottom-[calc(100%+4px)] transform left-1/2 -translate-x-1/2"
469
+ ]),
470
+ dot: f([
471
+ "h-1 w-1 absolute transform -translate-y-1/2 -translate-x-1/2 top-1/2 rounded-full"
472
+ ])
473
+ })
474
+ ), Fe = K(
475
+ "snackbar",
476
+ () => ({
477
+ snackbar: f(" rounded bg-inverse-surface "),
478
+ container: f(
479
+ "pl-4 pr-2 max-w-full py-1 flex items-center flex-wrap"
480
+ ),
481
+ supportingText: f("text-body-medium text-inverse-on-surface "),
482
+ icon: f(" ml-auto mr-0 text-inverse-on-surface block dark")
483
+ })
484
+ ), Xe = K(
485
+ "switch",
486
+ ({ isSelected: e, disabled: t, inactiveIcon: n }) => ({
487
+ switch: f(
488
+ "group w-[52px] h-[32px] outline-none rounded-full border-2 flex items-center",
489
+ { "bg-on-surface/[0.12] border-transparent": t },
490
+ !t && [
491
+ "cursor-pointer ",
492
+ { "bg-primary border-primary": e },
493
+ { "bg-surface-container border-outline": !e }
494
+ ]
495
+ // { 'justify-start': !isSelected },
496
+ // { 'justify-end': isSelected },
497
+ ),
498
+ handleContainer: f(
499
+ "flex items-center justify-center absolute",
500
+ { "left-[14px]": !e },
501
+ { "right-[14px]": e }
502
+ ),
503
+ handle: f(
504
+ "transition-all duration-100 z-10 rounded-full flex items-center justify-center",
505
+ { "w-[16px] h-[16px]": !e && !n },
506
+ { "w-[24px] h-[24px]": !(!e && !n) },
507
+ !t && [
508
+ "cursor-pointer group-active:h-[28px] group-active:w-[28px]",
509
+ { "bg-on-primary group-hover:bg-primary-container": e },
510
+ { "bg-outline group-hover:bg-on-surface-variant": !e }
511
+ ],
512
+ { "bg-surface": t }
513
+ ),
514
+ handleStateLayer: f(
515
+ "w-[40px] h-[40px] -z-10 rounded-full absolute",
516
+ { "group-state-primary": !t }
517
+ ),
518
+ icon: f(
519
+ "w-[16px] h-[16px]",
520
+ !t && [
521
+ { "text-on-primary-container": e },
522
+ { "text-on-primary": !e }
523
+ ],
524
+ { "text-on-surface/[0.38]": t }
525
+ )
526
+ })
527
+ ), Oe = K(
528
+ "tab",
529
+ ({ isSelected: e, icon: t, label: n, variant: l }) => ({
530
+ tab: f(
531
+ "bg-surface flex-1 group outline-none flex px-4 justify-center items-center cursor-pointer",
532
+ { "z-10": e },
533
+ !!(t && n) && l === "primary" && "h-16",
534
+ !(t && n && l === "primary") && "h-12"
535
+ ),
536
+ stateLayer: f(
537
+ "absolute w-full h-full overflow-hidden left-1/2 top-1/2 transform -translate-y-1/2 -translate-x-1/2",
538
+ l === "primary" && {
539
+ "group-hover:hover-state-on-surface group-focus-visible:focus-state-on-surface": !e,
540
+ "group-hover:hover-state-primary group-focus-visible:focus-state-primary": e
541
+ },
542
+ l === "secondary" && "group-hover:hover-state-on-surface group-focus-visible:focus-state-on-surface"
543
+ ),
544
+ content: f(
545
+ "flex gap-0.5 h-full justify-center",
546
+ {
547
+ relative: l == "primary"
548
+ },
549
+ {
550
+ "": !!(n && !t)
551
+ },
552
+ l === "primary" && "flex-col items-center",
553
+ l === "secondary" && {
554
+ "flex-col items-center": !(n && t),
555
+ "flex-row items-center gap-2": !!(n && t)
556
+ }
557
+ ),
558
+ icon: f(
559
+ "h-6 w-6 p-0.5 !box-border",
560
+ l === "primary" && {
561
+ "text-on-surface-variant": !e,
562
+ "text-primary": e
563
+ },
564
+ l === "secondary" && {
565
+ "text-on-surface-variant": !e,
566
+ "text-on-surface": e
567
+ }
568
+ ),
569
+ label: f(
570
+ "text-title-small text-nowrap",
571
+ l === "primary" && {
572
+ "text-on-surface-variant": !e,
573
+ "text-primary": e
574
+ },
575
+ l === "secondary" && {
576
+ "text-on-surface-variant": !e,
577
+ "text-on-surface": e
578
+ }
579
+ ),
580
+ underline: f(
581
+ "bg-primary absolute w-full left-0 bottom-0",
582
+ l === "primary" && "h-[3px] rounded-t",
583
+ l === "secondary" && "h-0.5"
584
+ )
585
+ })
586
+ ), qe = K(
587
+ "tabs",
588
+ ({ scrollable: e }) => ({
589
+ tabs: f(
590
+ "border-b border-surface-container-highest",
591
+ "flex relative ",
592
+ { "overflow-x-auto": e }
593
+ )
594
+ })
595
+ ), He = K(
596
+ "textField",
597
+ ({
598
+ disabled: e,
599
+ leadingIcon: t,
600
+ trailingIcon: n,
601
+ variant: l,
602
+ errorText: r,
603
+ isFocused: i,
604
+ value: c,
605
+ suffix: a,
606
+ textLine: o
607
+ }) => ({
608
+ textField: f({
609
+ "opacity-[.38]": e
610
+ }),
611
+ content: f(
612
+ "group transition-border duration-200 relative flex items-center ",
613
+ { "h-14": o == "singleLine" },
614
+ {
615
+ "border-on-surface-variant": !(r != null && r.length) && !i && l == "filled",
616
+ "border-outline": !(r != null && r.length) && !i && l == "outlined",
617
+ "border-primary": !(r != null && r.length) && i,
618
+ "border-error": !!(r != null && r.length)
619
+ },
620
+ { "bg-on-surface/[0.04]": e },
621
+ l == "filled" && [
622
+ "rounded-t overflow-hidden border-b",
623
+ { "bg-surface-container-highest": !e }
624
+ ],
625
+ l == "outlined" && [
626
+ "border rounded box-border",
627
+ {
628
+ "border-[3px]": i
629
+ }
630
+ ]
631
+ ),
632
+ stateLayer: f(
633
+ "absolute -z-10 w-full h-full top-0 left-0",
634
+ {
635
+ hidden: l == "outlined"
636
+ },
637
+ {
638
+ "group-state-on-surface": !e,
639
+ "focus-state-on-surface": i
640
+ }
641
+ ),
642
+ label: f(
643
+ "inline-flex outline-none whitespace-nowrap",
644
+ { "text-on-surface-variant": !e && !(r != null && r.length) },
645
+ { "text-on-surface": e },
646
+ { "text-error": !!(r != null && r.length) },
647
+ { "text-primary": !(r != null && r.length) && i }
648
+ ),
649
+ input: f(
650
+ "w-full resize-none px-4 text-body-large bg-[inherit] outline-none autofill:transition-colors autofill:duration-[5000000ms]",
651
+ {
652
+ " text-on-surface placeholder:text-on-surface-variant": !e,
653
+ "placeholder:text-on-surface text-on-surface": e
654
+ },
655
+ {
656
+ "pr-0": !!a
657
+ },
658
+ l == "filled" && " pb-2 pt-6",
659
+ l == "outlined" && "py-4 relative z-10"
660
+ ),
661
+ activeIndicator: f(
662
+ "absolute w-0 inset-x-0 border-rounded mx-auto bottom-0",
663
+ l == "filled" && [
664
+ "h-[2px] transition-all duration-300",
665
+ { "bg-primary": !(r != null && r.length) },
666
+ { "bg-error": !!(r != null && r.length) },
667
+ { "!w-full": i }
668
+ ]
669
+ ),
670
+ supportingText: f(
671
+ " text-body-small px-4 pt-1",
672
+ { "text-on-surface-variant": !e && !(r != null && r.length) },
673
+ { "text-on-surface": e },
674
+ { "!w-full": i },
675
+ { "text-error": !!(r != null && r.length) }
676
+ ),
677
+ leadingIcon: f([
678
+ "h-12 ml-3 flex items-center justify-center",
679
+ { "cursor-text": !_.isValidElement(t) }
680
+ ]),
681
+ trailingIcon: f("h-12 w-12 flex items-center justify-center", {
682
+ "cursor-text": !_.isValidElement(n)
683
+ }),
684
+ suffix: f(
685
+ "text-on-surface-variant pl-0 pr-4",
686
+ l == "filled" && " pb-2 pt-6",
687
+ l == "outlined" && "py-4 relative z-10"
688
+ )
689
+ })
690
+ ), Ke = K(
691
+ "toolTip",
692
+ ({ position: e, variant: t }) => ({
693
+ toolTip: f(
694
+ " pointer-events-auto w-max z-10 absolute m-1 w-max-content max-w-[312px]",
695
+ {
696
+ "bottom-full left-1/2 -translate-x-1/2": e == "top",
697
+ "top-full left-1/2 -translate-x-1/2": e == "bottom",
698
+ "right-full top-1/2 -translate-y-1/2": e == "left",
699
+ "left-full top-1/2 -translate-y-1/2": e == "right",
700
+ "bottom-full right-full": e == "top-left",
701
+ "bottom-full left-full": e == "top-right",
702
+ "top-full right-full": e == "bottom-left",
703
+ "top-full left-full": e == "bottom-right"
704
+ }
705
+ ),
706
+ container: f(
707
+ "pb-2",
708
+ t == "rich" && "bg-surface-container rounded-2xl text-on-surface-container px-4 pt-3 shadow-2",
709
+ t == "plain" && "bg-inverse-surface rounded text-inverse-on-surface px-2 py-1"
710
+ ),
711
+ actions: f(
712
+ "flex gap-10 px-1 mt-2",
713
+ t == "plain" && "hidden"
714
+ ),
715
+ subHead: f(
716
+ "text-title-small mb-1",
717
+ t == "plain" && "hidden"
718
+ ),
719
+ supportingText: f("")
720
+ })
721
+ ), Q = ({ icon: e, colors: t = [], className: n }) => {
722
+ const { icon: l } = e, [r, i, , , c] = l || [], a = (o) => {
723
+ switch (o.length) {
724
+ case 2:
725
+ return {
726
+ "--fa-primary-color": o[0] || "inherit",
727
+ "--fa-secondary-color": o[1] || "inherit"
728
+ };
729
+ case 1:
730
+ return { color: o[0] };
731
+ default:
732
+ return {};
733
+ }
734
+ };
735
+ return /* @__PURE__ */ u(
736
+ "svg",
737
+ {
738
+ className: f("size-5 box-content", n),
739
+ style: {
740
+ ...a(t)
741
+ },
742
+ xmlns: "http://www.w3.org/2000/svg",
743
+ viewBox: `0 0 ${r} ${i}`,
744
+ role: "img",
745
+ "aria-hidden": "true",
746
+ children: typeof c == "string" ? /* @__PURE__ */ u("path", { className: "fill-current", d: c }) : c.map((o, d) => /* @__PURE__ */ u("path", { d: o }, d))
747
+ }
748
+ );
749
+ }, Ge = ({
750
+ variant: e = "linear-determinate",
751
+ value: t = 0,
752
+ transitionDuration: n = 1e3,
753
+ className: l,
754
+ ...r
755
+ }) => {
756
+ const [i, c] = R(t), [a] = R(1.5);
757
+ $(() => {
758
+ t > 100 && (t = 100), t < 0 && (t = 0), c(t);
759
+ }, [t]);
760
+ const [o, d] = R(!0), h = () => o ? a : a * 0.5;
761
+ $(() => {
762
+ if ((e === "circular-indeterminate" || e === "linear-indeterminate") && i !== 100) {
763
+ const v = setInterval(() => {
764
+ c(o ? 10 : 90), d(!o);
765
+ }, h() * 1e3);
766
+ return () => clearInterval(v);
767
+ }
768
+ }, [e, o, i]);
769
+ const [g, s] = R(!1);
770
+ $(() => {
771
+ if (i >= 100) {
772
+ const v = setTimeout(() => {
773
+ s(!1);
774
+ }, n);
775
+ return () => {
776
+ clearTimeout(v);
777
+ };
778
+ } else
779
+ s(!0);
780
+ }, [i, n]);
781
+ const p = Ue({
782
+ className: l,
783
+ variant: e,
784
+ value: t,
785
+ transitionDuration: n,
786
+ isVisible: g
787
+ });
788
+ return /* @__PURE__ */ U(re, { children: [
789
+ (e === "linear-determinate" || e == "linear-indeterminate") && /* @__PURE__ */ U("div", { className: p.progressIndicator, ...r, children: [
790
+ /* @__PURE__ */ u(
791
+ "div",
792
+ {
793
+ style: {
794
+ width: `${i}%`,
795
+ transition: `width ${n}ms ease-in-out ${i == 100 ? ", max-height 200ms 0.5s ease-in-out" : ""}`
796
+ },
797
+ className: p.track
798
+ }
799
+ ),
800
+ /* @__PURE__ */ u(
801
+ "div",
802
+ {
803
+ style: {
804
+ marginLeft: i != 100 ? "6px" : "0px",
805
+ transition: `width ${n}ms ease-in-out ${i == 100 ? `, max-height 200ms 0.5s ease-in-out, margin-left ${n}ms ${n / 1.5}ms` : ""}`
806
+ },
807
+ className: p.activeIndicator
808
+ }
809
+ ),
810
+ /* @__PURE__ */ u(
811
+ "div",
812
+ {
813
+ style: {
814
+ width: "4 px",
815
+ transition: `width ${n}ms ease-in-out, max-height 200ms 0.5s ease-in-out`
816
+ },
817
+ className: p.stop
818
+ }
819
+ )
820
+ ] }),
821
+ (e === "circular-determinate" || e == "circular-indeterminate") && /* @__PURE__ */ u(
822
+ j.svg,
823
+ {
824
+ width: "48",
825
+ height: "48",
826
+ viewBox: "0 0 48 48",
827
+ initial: { rotate: -90 },
828
+ animate: { rotate: 270 },
829
+ transition: {
830
+ repeat: 1 / 0,
831
+ duration: h(),
832
+ ease: "linear"
833
+ },
834
+ className: p.progressIndicator,
835
+ ...r,
836
+ children: /* @__PURE__ */ u(
837
+ j.circle,
838
+ {
839
+ cx: "50%",
840
+ cy: "50%",
841
+ r: g ? "calc(50% - 2px)" : "50%",
842
+ style: {
843
+ strokeLinecap: "round"
844
+ },
845
+ initial: "hidden",
846
+ animate: "visible",
847
+ className: p.activeIndicator,
848
+ variants: {
849
+ hidden: {
850
+ pathLength: o ? 10 / 100 : 90 / 100
851
+ },
852
+ visible: {
853
+ pathLength: o ? 90 / 100 : 10 / 100
854
+ }
855
+ },
856
+ transition: {
857
+ pathLength: {
858
+ type: "tween",
859
+ ease: "linear",
860
+ duration: h(),
861
+ bounce: 0
862
+ }
863
+ }
864
+ }
865
+ )
866
+ },
867
+ o + ""
868
+ )
869
+ ] });
870
+ }, ne = ({
871
+ colorName: e = "on-surface",
872
+ triggerRef: t
873
+ }) => {
874
+ const n = {
875
+ initial: {
876
+ opacity: 0,
877
+ borderRadius: "50%",
878
+ width: "25%",
879
+ height: "25%"
880
+ },
881
+ animate: {
882
+ opacity: 1,
883
+ borderRadius: 0,
884
+ width: "200%",
885
+ height: "200%",
886
+ transition: {
887
+ duration: 0.3,
888
+ borderRadius: { duration: 0.3, delay: 0.3 }
889
+ }
890
+ }
891
+ }, [l, r] = R(!0), [i, c] = R(!1), [a, o] = R({ x: 0, y: 0 });
892
+ $(() => {
893
+ i && (r(!0), r(!1));
894
+ }, [i]), $(() => {
895
+ const s = t == null ? void 0 : t.current;
896
+ if (s)
897
+ return s.addEventListener("mousedown", d), s.addEventListener("mouseup", g), s.addEventListener("mouseleave", h), () => {
898
+ s.removeEventListener("mousedown", d), s.removeEventListener("mouseup", g), s.removeEventListener("mouseleave", h);
899
+ };
900
+ }, [t]);
901
+ const d = (s) => {
902
+ const p = t == null ? void 0 : t.current, v = p.getBoundingClientRect();
903
+ c(!0), o({
904
+ x: (s.clientX - v.left) / p.clientWidth * 100,
905
+ y: (s.clientY - v.top) / p.clientHeight * 100
906
+ });
907
+ }, h = (s) => {
908
+ c(!1);
909
+ }, g = (s) => {
910
+ c(!1);
911
+ };
912
+ return /* @__PURE__ */ u(z, { mode: "wait", children: (i || !i && !l) && /* @__PURE__ */ u(
913
+ j.div,
914
+ {
915
+ style: {
916
+ position: "absolute",
917
+ width: "100%",
918
+ height: "100%",
919
+ top: a.y + "%",
920
+ left: a.x + "%",
921
+ background: `color-mix(in srgb, var(--color-${e}) 12%, transparent)`,
922
+ pointerEvents: "none"
923
+ },
924
+ variants: n,
925
+ initial: "initial",
926
+ animate: "animate",
927
+ exit: { opacity: 0, transition: { duration: 0 } },
928
+ onAnimationComplete: () => r(!0),
929
+ className: "transform -translate-x-1/2 -translate-y-1/2"
930
+ }
931
+ ) });
932
+ }, Ye = K(
933
+ "customScroll",
934
+ ({ orientation: e, draggable: t, isDragging: n }) => ({
935
+ customScroll: f(
936
+ "flex h-full w-full",
937
+ t && [
938
+ "[&::-webkit-scrollbar-track]:rounded-full",
939
+ "[&::-webkit-scrollbar-track]:bg-transparent",
940
+ "[&::-webkit-scrollbar-thumb]:rounded-full",
941
+ {
942
+ "[&::-webkit-scrollbar-thumb]:bg-outline": n,
943
+ "[&::-webkit-scrollbar-thumb]:bg-transparent": !n
944
+ },
945
+ { "[&::-webkit-scrollbar]:h-2": e === "horizontal" },
946
+ { "[&::-webkit-scrollbar]:w-2": e === "vertical" }
947
+ ],
948
+ {
949
+ "overflow-y-scroll flex-col": e === "vertical",
950
+ "overflow-x-scroll flex-row": e === "horizontal",
951
+ "cursor-grab": t && !n,
952
+ "cursor-grabbing": t && n
953
+ }
954
+ ),
955
+ track: f("overflow-hidden flex-none sticky", {
956
+ "left-0 h-full": e === "horizontal",
957
+ "top-0 w-full": e === "vertical"
958
+ })
959
+ })
960
+ ), he = ({
961
+ children: e,
962
+ orientation: t = "vertical",
963
+ scrollSize: n,
964
+ onScroll: l,
965
+ className: r,
966
+ draggable: i = !1,
967
+ throttleDuration: c = 75
968
+ }) => {
969
+ var D, F;
970
+ const a = V(null), o = V(null), [d, h] = R({
971
+ width: null,
972
+ height: null
973
+ });
974
+ $(() => {
975
+ if (!a.current) return;
976
+ const k = new ResizeObserver((X) => {
977
+ for (const O of X)
978
+ O.target === a.current && h({
979
+ width: O.contentRect.width,
980
+ height: O.contentRect.height
981
+ // On observe aussi la hauteur maintenant
982
+ });
983
+ });
984
+ return k.observe(a.current), () => {
985
+ k.disconnect();
986
+ };
987
+ }, [a]);
988
+ const g = V(null), s = V(null), p = () => {
989
+ const k = o.current;
990
+ return k ? {
991
+ width: n ?? k.scrollWidth,
992
+ height: n ?? k.scrollHeight
993
+ } : null;
994
+ }, v = () => {
995
+ const k = a.current;
996
+ return k ? {
997
+ width: k.clientWidth,
998
+ height: k.clientHeight
999
+ // Correction ici pour retourner la bonne hauteur
1000
+ } : null;
1001
+ }, { scrollYProgress: b, scrollXProgress: L } = Le({
1002
+ container: a
1003
+ }), I = V(null);
1004
+ I.current || (I.current = Ee(
1005
+ c,
1006
+ (k, X) => {
1007
+ !s.current || !g.current || l && (t === "horizontal" && X === "x" && l({
1008
+ scrollProgress: k,
1009
+ scroll: k * g.current.width,
1010
+ scrollTotal: g.current.width,
1011
+ scrollVisible: s.current.width
1012
+ }), t === "vertical" && X === "y" && l({
1013
+ scrollProgress: k,
1014
+ scroll: k * g.current.height,
1015
+ scrollTotal: g.current.height,
1016
+ scrollVisible: s.current.height
1017
+ }));
1018
+ }
1019
+ ));
1020
+ const w = (k, X) => {
1021
+ I.current && I.current(k, X);
1022
+ };
1023
+ $(() => {
1024
+ d.width && w(L.get(), "x"), d.height && w(b.get(), "y");
1025
+ }, [d]), se(L, "change", (k) => {
1026
+ w(k, "x");
1027
+ }), se(b, "change", (k) => {
1028
+ w(k, "y");
1029
+ });
1030
+ const [B, N] = R(!1);
1031
+ fe(() => {
1032
+ B || !s.current || !g.current || !l || (l({
1033
+ scrollProgress: 0,
1034
+ scroll: 0,
1035
+ scrollTotal: t == "vertical" ? g.current.height : g.current.width,
1036
+ scrollVisible: t == "vertical" ? s.current.height : s.current.width
1037
+ }), N(!0));
1038
+ }, [s, g, l]), g.current = p(), s.current = v();
1039
+ const [E, S] = R(!1), P = Ye({
1040
+ isDragging: E,
1041
+ children: e,
1042
+ className: r,
1043
+ onScroll: l,
1044
+ orientation: t,
1045
+ scrollSize: n,
1046
+ draggable: i,
1047
+ throttleDuration: c
1048
+ }), [W, M] = R(0), [m, C] = R(0), Y = (k) => {
1049
+ if (!i) return;
1050
+ const X = a.current;
1051
+ if (!X || W == null) return;
1052
+ const J = (k.pageX - X.offsetLeft - W) * 1.5;
1053
+ X.scrollLeft = m - J;
1054
+ }, H = (k) => {
1055
+ const X = a.current;
1056
+ X && (S(!0), M(k.pageX - X.offsetLeft), C(X.scrollLeft));
1057
+ }, Z = (k) => {
1058
+ E && (k.preventDefault(), Y(k));
1059
+ }, q = () => {
1060
+ S(!1);
1061
+ }, A = () => {
1062
+ S(!1);
1063
+ }, x = (k) => {
1064
+ k.preventDefault();
1065
+ }, y = V(null);
1066
+ return $(() => () => {
1067
+ y.current && clearTimeout(y.current);
1068
+ }, []), /* @__PURE__ */ U(
1069
+ "div",
1070
+ {
1071
+ className: P.customScroll,
1072
+ ref: a,
1073
+ onMouseDown: H,
1074
+ onMouseMove: Z,
1075
+ onMouseUp: q,
1076
+ onMouseLeave: A,
1077
+ onDragStart: x,
1078
+ onScroll: (k) => {
1079
+ E || (M(null), S(!0), y.current && clearTimeout(y.current), y.current = setTimeout(() => {
1080
+ S(!1);
1081
+ }, 1e3));
1082
+ },
1083
+ children: [
1084
+ /* @__PURE__ */ u(
1085
+ "div",
1086
+ {
1087
+ ref: o,
1088
+ style: t === "vertical" ? { height: ((D = s == null ? void 0 : s.current) == null ? void 0 : D.height) ?? "100%" } : { width: ((F = s == null ? void 0 : s.current) == null ? void 0 : F.width) ?? "100%" },
1089
+ className: P.track,
1090
+ children: e
1091
+ }
1092
+ ),
1093
+ s.current && g.current && /* @__PURE__ */ U(re, { children: [
1094
+ t === "vertical" && g.current.height > s.current.height && /* @__PURE__ */ u(
1095
+ j.div,
1096
+ {
1097
+ className: "flex-none",
1098
+ style: {
1099
+ height: g.current.height - s.current.height
1100
+ }
1101
+ }
1102
+ ),
1103
+ t === "horizontal" && g.current.width > s.current.width && /* @__PURE__ */ u(
1104
+ j.div,
1105
+ {
1106
+ className: "flex-none",
1107
+ style: {
1108
+ width: g.current.width - s.current.width
1109
+ }
1110
+ }
1111
+ )
1112
+ ] })
1113
+ ]
1114
+ }
1115
+ );
1116
+ }, yt = ({
1117
+ children: e,
1118
+ transition: t = ".5s",
1119
+ orientation: n = "vertical",
1120
+ throttleDuration: l = 25,
1121
+ ...r
1122
+ }) => {
1123
+ const [i, c] = R(null), a = me((i == null ? void 0 : i.scrollProgress) ?? 0), o = oe(
1124
+ a,
1125
+ [0, 1],
1126
+ [0, 1 - ((i == null ? void 0 : i.scrollVisible) ?? 0) / ((i == null ? void 0 : i.scrollTotal) ?? 0)]
1127
+ ), d = oe(
1128
+ o,
1129
+ (s) => `${-s * 100}%`
1130
+ ), h = (s) => {
1131
+ a.set(s.scrollProgress), s.scrollTotal > 0 && c(s);
1132
+ }, g = V(null);
1133
+ return se(d, "change", (s) => {
1134
+ const p = performance.now();
1135
+ if (g.current !== null) {
1136
+ const v = p - g.current;
1137
+ console.log(`Delta temps : ${v} ms`);
1138
+ }
1139
+ g.current = p, console.log(s);
1140
+ }), /* @__PURE__ */ u(
1141
+ he,
1142
+ {
1143
+ onScroll: h,
1144
+ throttleDuration: l,
1145
+ ...r,
1146
+ children: /* @__PURE__ */ u(
1147
+ j.div,
1148
+ {
1149
+ className: f("transition-transform ease-out", {
1150
+ "w-fit h-full": n === "horizontal",
1151
+ "h-fit w-full": n === "vertical"
1152
+ }),
1153
+ style: {
1154
+ transitionDuration: t,
1155
+ ...n == "vertical" ? { y: d } : { x: d }
1156
+ },
1157
+ children: e
1158
+ }
1159
+ )
1160
+ }
1161
+ );
1162
+ }, _e = ({
1163
+ targetRef: e,
1164
+ children: t
1165
+ }) => {
1166
+ const [n, l] = R(null), r = V(null), i = () => {
1167
+ const c = e.current;
1168
+ if (!c) return;
1169
+ const a = c.getBoundingClientRect();
1170
+ l({
1171
+ position: "fixed",
1172
+ top: a.top,
1173
+ left: a.left,
1174
+ width: a.width,
1175
+ height: a.height,
1176
+ pointerEvents: "none",
1177
+ // si le wrapper ne doit pas capter les events
1178
+ zIndex: 999
1179
+ // personnalise si besoin
1180
+ });
1181
+ };
1182
+ return $(() => {
1183
+ const c = e.current;
1184
+ if (c)
1185
+ return i(), window.addEventListener("scroll", i, !0), window.addEventListener("resize", i), r.current = new ResizeObserver(i), r.current.observe(c), () => {
1186
+ var a;
1187
+ window.removeEventListener("scroll", i, !0), window.removeEventListener("resize", i), (a = r.current) == null || a.disconnect();
1188
+ };
1189
+ }, [e]), n ? Ie(/* @__PURE__ */ u("div", { style: n, children: t }), document.body) : null;
1190
+ }, Ze = ({
1191
+ variant: e = "filled",
1192
+ disabled: t = !1,
1193
+ icon: n,
1194
+ href: l,
1195
+ label: r,
1196
+ className: i,
1197
+ iconPosition: c = "left",
1198
+ loading: a = !1,
1199
+ shape: o = "rounded",
1200
+ onClick: d,
1201
+ onToggle: h,
1202
+ activated: g,
1203
+ ref: s,
1204
+ size: p = "medium",
1205
+ allowShapeTransformation: v = !0,
1206
+ transition: b,
1207
+ children: L,
1208
+ ...I
1209
+ }) => {
1210
+ if (L && (r = L), !r)
1211
+ throw new Error(
1212
+ "Button component requires either a label prop or children content"
1213
+ );
1214
+ const w = l ? "a" : "button", B = V(null), N = s || B, [E, S] = _.useState(g);
1215
+ $(() => {
1216
+ S(g);
1217
+ }, [g]), b = { duration: 0.3, ...b };
1218
+ let P;
1219
+ h ? h && (P = (m) => {
1220
+ t && m.preventDefault();
1221
+ const C = !E;
1222
+ S(C), h(C);
1223
+ }) : P = (m) => {
1224
+ t && m.preventDefault(), d && d(m);
1225
+ };
1226
+ const W = Be({
1227
+ allowShapeTransformation: v,
1228
+ size: p,
1229
+ shape: o,
1230
+ href: l,
1231
+ disabled: t,
1232
+ icon: n,
1233
+ iconPosition: c,
1234
+ loading: a,
1235
+ variant: e,
1236
+ transition: b,
1237
+ className: i,
1238
+ isActive: E ?? !1,
1239
+ onToggle: h,
1240
+ activated: E,
1241
+ label: r,
1242
+ children: r
1243
+ }), M = n ? /* @__PURE__ */ u(Q, { icon: n, className: W.icon }) : /* @__PURE__ */ u(re, {});
1244
+ return /* @__PURE__ */ U(
1245
+ w,
1246
+ {
1247
+ ref: N,
1248
+ href: l,
1249
+ className: W.button,
1250
+ ...I,
1251
+ onClick: P,
1252
+ disabled: t,
1253
+ "aria-pressed": h ? E : void 0,
1254
+ style: { transition: b.duration + "s" },
1255
+ children: [
1256
+ /* @__PURE__ */ u("div", { className: W.touchTarget }),
1257
+ /* @__PURE__ */ u(
1258
+ "div",
1259
+ {
1260
+ className: W.stateLayer,
1261
+ style: { transition: b.duration + "s" },
1262
+ children: !t && /* @__PURE__ */ u(
1263
+ ne,
1264
+ {
1265
+ colorName: e === "filled" && h && "on-surface-variant" || e === "filled" && !h && "on-primary" || e === "elevated" && "primary" || e === "tonal" && "on-secondary-container" || e === "outlined" && "primary" || e === "text" && "primary" || "",
1266
+ triggerRef: N
1267
+ }
1268
+ )
1269
+ }
1270
+ ),
1271
+ c === "left" && M,
1272
+ a && /* @__PURE__ */ u(
1273
+ "div",
1274
+ {
1275
+ className: "!absolute left-1/2 -translate-x-1/2 top-1/2 -translate-y-1/2",
1276
+ children: /* @__PURE__ */ u(
1277
+ Ge,
1278
+ {
1279
+ className: () => ({
1280
+ progressIndicator: "h-6 w-6",
1281
+ activeIndicator: f(
1282
+ {
1283
+ "!stroke-primary": e === "elevated" && !t,
1284
+ "!stroke-on-surface/[38%]": e === "elevated" && t
1285
+ },
1286
+ {
1287
+ "!stroke-on-primary": e === "filled" && !t,
1288
+ "!stroke-on-surface/[38%]": e === "filled" && t
1289
+ },
1290
+ {
1291
+ "!stroke-on-secondary-container": e === "tonal" && !t,
1292
+ "!stroke-on-surface/[38%]": e === "tonal" && t
1293
+ },
1294
+ {
1295
+ "!stroke-primary": e === "outlined" && !t,
1296
+ "!stroke-on-surface/[38%]": e === "outlined" && t
1297
+ },
1298
+ {
1299
+ "!stroke-primary": e === "text" && !t,
1300
+ "!stroke-on-surface/[38%]": e === "text" && t
1301
+ }
1302
+ )
1303
+ }),
1304
+ variant: "circular-indeterminate"
1305
+ }
1306
+ )
1307
+ }
1308
+ ),
1309
+ /* @__PURE__ */ u("span", { className: W.label, children: r }),
1310
+ c === "right" && M
1311
+ ]
1312
+ }
1313
+ );
1314
+ }, xt = ({
1315
+ variant: e = "outlined",
1316
+ className: t,
1317
+ children: n,
1318
+ isInteractive: l = !1,
1319
+ ref: r,
1320
+ ...i
1321
+ }) => {
1322
+ const c = Ce({ className: t, isInteractive: l, variant: e, children: n }), a = V(null), o = r || a;
1323
+ return /* @__PURE__ */ U("div", { ...i, ref: o, className: c.card, children: [
1324
+ /* @__PURE__ */ u("div", { className: c.stateLayer, children: l && /* @__PURE__ */ u(ne, { colorName: "on-surface", triggerRef: o }) }),
1325
+ n
1326
+ ] });
1327
+ }, Je = (e, t, n = [0, 1]) => {
1328
+ const [l, r] = t, [i, c] = n, o = (Math.max(l, Math.min(e, r)) - l) / (r - l);
1329
+ return i + o * (c - i);
1330
+ }, Qe = ({
1331
+ className: e,
1332
+ children: t,
1333
+ width: n = 1,
1334
+ index: l = 0,
1335
+ ref: r,
1336
+ ...i
1337
+ }) => {
1338
+ const c = V(null), a = r || c, o = We({
1339
+ className: e,
1340
+ index: l,
1341
+ width: n,
1342
+ children: t
1343
+ });
1344
+ return /* @__PURE__ */ u(
1345
+ j.div,
1346
+ {
1347
+ ref: a,
1348
+ animate: { width: n + "px" },
1349
+ transition: {
1350
+ duration: 0.5,
1351
+ ease: "linear"
1352
+ },
1353
+ className: o.carouselItem,
1354
+ ...i,
1355
+ children: t
1356
+ }
1357
+ );
1358
+ }, gt = ({
1359
+ variant: e = "hero",
1360
+ className: t,
1361
+ children: n,
1362
+ ref: l,
1363
+ marginPourcent: r = 0,
1364
+ inputRange: i = [0.21, 0.65],
1365
+ outputRange: c = [42, 300],
1366
+ gap: a = 8,
1367
+ onChange: o,
1368
+ scrollSensitivity: d = 1.25,
1369
+ ...h
1370
+ }) => {
1371
+ var q, A;
1372
+ const g = V(null), s = l || g, p = De({
1373
+ className: t,
1374
+ children: n,
1375
+ variant: e,
1376
+ inputRange: i,
1377
+ outputRange: c,
1378
+ marginPourcent: r,
1379
+ onChange: o,
1380
+ gap: a,
1381
+ scrollSensitivity: d
1382
+ }), v = _.Children.toArray(n).filter(
1383
+ (x) => _.isValidElement(x) && x.type === Qe
1384
+ ), b = V(null), [L, I] = R([]), [w, B] = R(null), N = () => {
1385
+ var X;
1386
+ if (!b.current || !s.current || !w) return [];
1387
+ const { scrollVisible: x, scrollProgress: y } = w;
1388
+ function D(O, J) {
1389
+ return O.map(
1390
+ (T) => (T - J) / Math.abs(O[1] - O[0])
1391
+ );
1392
+ }
1393
+ let F = v.map((O, J) => {
1394
+ if (!E[J].current || !b.current) return 0;
1395
+ let te = J / (v.length - 1);
1396
+ return te > 1 && (te = 1), te < 0 && (te = 0), te;
1397
+ });
1398
+ F = D(F, y);
1399
+ let k = ((((X = s.current) == null ? void 0 : X.clientWidth) ?? x) - (c[0] + a)) / (c[1] + a);
1400
+ return F.map((O, J) => ({ value: Math.abs(O), originalIndex: J })).sort((O, J) => O.value - J.value).forEach((O, J) => {
1401
+ J === 0 && P(O.originalIndex);
1402
+ let T = Je(k, [0, 1], [0, c[1]]);
1403
+ T < c[0] && (T = c[0]), k--, F[O.originalIndex] = T;
1404
+ }), F;
1405
+ }, E = V([]).current, [S, P] = R(0);
1406
+ $(() => {
1407
+ o && o(S);
1408
+ }, [S]), E.length !== v.length && v.forEach((x, y) => {
1409
+ E[y] || (E[y] = _.createRef());
1410
+ });
1411
+ const W = v.map((x, y) => _.cloneElement(
1412
+ x,
1413
+ {
1414
+ width: L[y],
1415
+ ref: E[y],
1416
+ key: y,
1417
+ index: y
1418
+ }
1419
+ )), M = me((w == null ? void 0 : w.scrollProgress) ?? 0), m = oe(
1420
+ M,
1421
+ [0, 1],
1422
+ [
1423
+ 0,
1424
+ 1 - (((q = s.current) == null ? void 0 : q.clientWidth) ?? 0) / (((A = b == null ? void 0 : b.current) == null ? void 0 : A.clientWidth) ?? 0)
1425
+ ]
1426
+ ), C = oe(
1427
+ m,
1428
+ (x) => `${-x * 100}%`
1429
+ ), Y = (x) => {
1430
+ x.scrollTotal > 0 && B(x);
1431
+ };
1432
+ $(() => {
1433
+ const x = N();
1434
+ I(x);
1435
+ }, [w]);
1436
+ const [H, Z] = R(0);
1437
+ return fe(() => {
1438
+ let x = c[1];
1439
+ w && x > w.scrollVisible && (x = w.scrollVisible);
1440
+ const y = (x + a) * W.length / d;
1441
+ Z(y);
1442
+ }, [s, E, w]), /* @__PURE__ */ u("div", { className: p.carousel, ref: s, ...h, children: /* @__PURE__ */ u(
1443
+ he,
1444
+ {
1445
+ draggable: !0,
1446
+ orientation: "horizontal",
1447
+ onScroll: Y,
1448
+ scrollSize: H,
1449
+ children: /* @__PURE__ */ u(
1450
+ j.div,
1451
+ {
1452
+ className: p.track,
1453
+ ref: b,
1454
+ style: {
1455
+ transitionDuration: "0.5s",
1456
+ transitionTimingFunction: "ease-out",
1457
+ gap: `${a}px`,
1458
+ x: C
1459
+ },
1460
+ children: W
1461
+ }
1462
+ )
1463
+ }
1464
+ ) });
1465
+ }, wt = ({
1466
+ orientation: e = "horizontal",
1467
+ className: t,
1468
+ ...n
1469
+ }) => {
1470
+ const l = Pe({ orientation: e, className: t });
1471
+ return /* @__PURE__ */ u("hr", { className: l.divider, ...n });
1472
+ }, G = [];
1473
+ for (let e = 0; e < 256; ++e)
1474
+ G.push((e + 256).toString(16).slice(1));
1475
+ function Ae(e, t = 0) {
1476
+ return (G[e[t + 0]] + G[e[t + 1]] + G[e[t + 2]] + G[e[t + 3]] + "-" + G[e[t + 4]] + G[e[t + 5]] + "-" + G[e[t + 6]] + G[e[t + 7]] + "-" + G[e[t + 8]] + G[e[t + 9]] + "-" + G[e[t + 10]] + G[e[t + 11]] + G[e[t + 12]] + G[e[t + 13]] + G[e[t + 14]] + G[e[t + 15]]).toLowerCase();
1477
+ }
1478
+ let ae;
1479
+ const ze = new Uint8Array(16);
1480
+ function Te() {
1481
+ if (!ae) {
1482
+ if (typeof crypto > "u" || !crypto.getRandomValues)
1483
+ throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
1484
+ ae = crypto.getRandomValues.bind(crypto);
1485
+ }
1486
+ return ae(ze);
1487
+ }
1488
+ const et = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), ie = { randomUUID: et };
1489
+ function ce(e, t, n) {
1490
+ var r;
1491
+ if (ie.randomUUID && !e)
1492
+ return ie.randomUUID();
1493
+ e = e || {};
1494
+ const l = e.random ?? ((r = e.rng) == null ? void 0 : r.call(e)) ?? Te();
1495
+ if (l.length < 16)
1496
+ throw new Error("Random bytes length must be >= 16");
1497
+ return l[6] = l[6] & 15 | 64, l[8] = l[8] & 63 | 128, Ae(l);
1498
+ }
1499
+ const ye = ({
1500
+ variant: e = "plain",
1501
+ buttons: t,
1502
+ className: n,
1503
+ children: l,
1504
+ title: r,
1505
+ text: i,
1506
+ position: c,
1507
+ targetRef: a,
1508
+ ref: o,
1509
+ trigger: d = ["hover", "focus"],
1510
+ ...h
1511
+ }) => {
1512
+ if (!l && !a)
1513
+ throw new Error("ToolTip must have a child or a targetRef");
1514
+ Array.isArray(d) || (d = [d]), t && !Array.isArray(t) && (t = [t]);
1515
+ const g = V(null), s = a || g, [p, v] = R(null), [b] = R(ce()), [L, I] = R(!1), w = V(null);
1516
+ $(() => {
1517
+ const m = (C) => {
1518
+ v(C.detail);
1519
+ };
1520
+ return document.addEventListener("tooltip-update", m), () => {
1521
+ document.removeEventListener(
1522
+ "tooltip-update",
1523
+ m
1524
+ );
1525
+ };
1526
+ }, []), $(() => {
1527
+ w.current && clearTimeout(w.current), p ? I(p === b) : w.current = setTimeout(() => {
1528
+ I(!1);
1529
+ }, 1200);
1530
+ }, [p, b]);
1531
+ const B = () => {
1532
+ if (d.includes("hover")) {
1533
+ const m = new CustomEvent("tooltip-update", { detail: b });
1534
+ document.dispatchEvent(m);
1535
+ }
1536
+ }, N = () => {
1537
+ if (d.includes("hover")) {
1538
+ const m = new CustomEvent("tooltip-update", { detail: null });
1539
+ document.dispatchEvent(m);
1540
+ }
1541
+ }, E = () => {
1542
+ if (d.includes("click")) {
1543
+ const m = new CustomEvent("tooltip-update", {
1544
+ detail: L ? null : b
1545
+ });
1546
+ document.dispatchEvent(m);
1547
+ }
1548
+ }, S = () => {
1549
+ if (d.includes("focus")) {
1550
+ const m = new CustomEvent("tooltip-update", { detail: b });
1551
+ document.dispatchEvent(m);
1552
+ }
1553
+ }, P = () => {
1554
+ if (d.includes("focus")) {
1555
+ const m = new CustomEvent("tooltip-update", { detail: null });
1556
+ document.dispatchEvent(m);
1557
+ }
1558
+ };
1559
+ $(() => {
1560
+ if (s != null && s.current) {
1561
+ const m = s.current;
1562
+ return m.addEventListener("mouseenter", B), m.addEventListener("mouseleave", N), m.addEventListener("click", E), m.addEventListener("focus", S), m.addEventListener("blur", P), () => {
1563
+ m.removeEventListener("mouseenter", B), m.removeEventListener("mouseleave", N), m.removeEventListener("click", E), m.removeEventListener("focus", S), m.removeEventListener("blur", P);
1564
+ };
1565
+ }
1566
+ }, [s, d, b, L]);
1567
+ const W = !a && ee(l) ? le(l, { ref: g }) : l;
1568
+ if (!c && typeof window < "u" && s != null && s.current && !c) {
1569
+ const m = s.current.getBoundingClientRect(), C = window.innerWidth, Y = window.innerHeight, H = m.left / C, Z = m.top / Y;
1570
+ e === "plain" ? H < 1 / 3 ? c = "right" : H > 2 / 3 ? c = "left" : c = Z > 0.5 ? "top" : "bottom" : H < 1 / 2 && Z < 1 / 2 ? c = "bottom-right" : H > 1 / 2 && Z < 1 / 2 ? c = "bottom-left" : H > 1 / 2 && Z > 1 / 2 ? c = "top-left" : H < 1 / 2 && Z > 1 / 2 && (c = "top-right");
1571
+ }
1572
+ const M = Ke({
1573
+ variant: e,
1574
+ buttons: t,
1575
+ className: n,
1576
+ title: r,
1577
+ text: i,
1578
+ position: c,
1579
+ trigger: d,
1580
+ targetRef: a,
1581
+ children: l
1582
+ });
1583
+ return /* @__PURE__ */ U(re, { children: [
1584
+ W,
1585
+ /* @__PURE__ */ u(z, { children: L && /* @__PURE__ */ u(_e, { targetRef: s, children: /* @__PURE__ */ u(
1586
+ j.div,
1587
+ {
1588
+ initial: { opacity: p ? 1 : 0 },
1589
+ animate: { opacity: 1 },
1590
+ transition: { duration: p ? 0 : 0.3 },
1591
+ exit: { opacity: p ? 1 : 0 },
1592
+ className: M.toolTip,
1593
+ ...h,
1594
+ onMouseEnter: B,
1595
+ onMouseLeave: N,
1596
+ children: /* @__PURE__ */ U(
1597
+ j.div,
1598
+ {
1599
+ className: M.container,
1600
+ layoutId: "tool-tip",
1601
+ transition: {
1602
+ type: "spring",
1603
+ stiffness: 200,
1604
+ damping: 20
1605
+ },
1606
+ children: [
1607
+ r && /* @__PURE__ */ u("div", { className: M.subHead, children: r }),
1608
+ /* @__PURE__ */ u("div", { className: M.supportingText, children: i }),
1609
+ t && /* @__PURE__ */ u("div", { className: M.actions, children: Array.isArray(t) && t.map((m, C) => /* @__PURE__ */ u(
1610
+ Ze,
1611
+ {
1612
+ size: "small",
1613
+ variant: "text",
1614
+ ...m
1615
+ },
1616
+ C
1617
+ )) })
1618
+ ]
1619
+ }
1620
+ )
1621
+ }
1622
+ ) }) })
1623
+ ] });
1624
+ }, ue = ({
1625
+ className: e,
1626
+ label: t,
1627
+ variant: n = "primary",
1628
+ size: l = "medium",
1629
+ href: r,
1630
+ type: i,
1631
+ icon: c,
1632
+ isExtended: a = !1,
1633
+ ref: o,
1634
+ transition: d,
1635
+ children: h,
1636
+ ...g
1637
+ }) => {
1638
+ if (h && (t = h), !t)
1639
+ throw new Error(
1640
+ "FAB component requires either a label prop or children content"
1641
+ );
1642
+ const s = r ? "a" : "button", p = $e({
1643
+ href: r,
1644
+ icon: c,
1645
+ isExtended: a,
1646
+ label: t,
1647
+ size: l,
1648
+ variant: n,
1649
+ className: e,
1650
+ transition: d,
1651
+ children: t
1652
+ });
1653
+ d = { duration: 0.3, ...d };
1654
+ const v = V(null), b = o || v, L = {
1655
+ visible: {
1656
+ width: "auto",
1657
+ marginLeft: 12,
1658
+ opacity: 1,
1659
+ transition: {
1660
+ ...d,
1661
+ opacity: {
1662
+ duration: d.duration / 2,
1663
+ delay: d.duration - d.duration / 2
1664
+ }
1665
+ }
1666
+ },
1667
+ hidden: {
1668
+ width: 0,
1669
+ marginLeft: 0,
1670
+ opacity: 0,
1671
+ transition: {
1672
+ ...d,
1673
+ marginLeft: {
1674
+ duration: d.duration / 2,
1675
+ delay: d.duration - d.duration / 2
1676
+ }
1677
+ }
1678
+ }
1679
+ };
1680
+ return /* @__PURE__ */ U(
1681
+ s,
1682
+ {
1683
+ ...g,
1684
+ ref: b,
1685
+ href: r,
1686
+ "aria-label": a ? void 0 : t,
1687
+ className: p.fab,
1688
+ children: [
1689
+ /* @__PURE__ */ u(
1690
+ ye,
1691
+ {
1692
+ trigger: a ? null : void 0,
1693
+ text: t,
1694
+ targetRef: b
1695
+ }
1696
+ ),
1697
+ /* @__PURE__ */ u("span", { className: p.stateLayer, children: /* @__PURE__ */ u(
1698
+ ne,
1699
+ {
1700
+ colorName: f({
1701
+ primary: n == "surface",
1702
+ "on-primary-container": n == "primary",
1703
+ "on-secondary-container": n == "secondary",
1704
+ "on-tertiary-container": n == "tertiary"
1705
+ }),
1706
+ triggerRef: b
1707
+ }
1708
+ ) }),
1709
+ /* @__PURE__ */ u(Q, { icon: c, className: p.icon }),
1710
+ /* @__PURE__ */ u(z, { children: a && /* @__PURE__ */ u(
1711
+ j.span,
1712
+ {
1713
+ variants: L,
1714
+ initial: "hidden",
1715
+ animate: "visible",
1716
+ exit: "hidden",
1717
+ className: p.label,
1718
+ children: t
1719
+ }
1720
+ ) })
1721
+ ]
1722
+ }
1723
+ );
1724
+ }, xe = ({
1725
+ variant: e = "standard",
1726
+ href: t,
1727
+ disabled: n = !1,
1728
+ type: l = "button",
1729
+ title: r,
1730
+ label: i,
1731
+ onToggle: c,
1732
+ activated: a = !1,
1733
+ onClick: o,
1734
+ icon: d,
1735
+ size: h = "medium",
1736
+ iconSelected: g,
1737
+ className: s,
1738
+ ref: p,
1739
+ width: v = "default",
1740
+ shape: b = "rounded",
1741
+ allowShapeTransformation: L = !0,
1742
+ transition: I,
1743
+ children: w,
1744
+ ...B
1745
+ }) => {
1746
+ if (w && (i = w), !i)
1747
+ throw new Error(
1748
+ "IconButton component requires either a label prop or children content to provide an accessible aria-label"
1749
+ );
1750
+ r || (r = i);
1751
+ const [N, E] = _.useState(a);
1752
+ let S;
1753
+ c ? c && (S = (C) => {
1754
+ n && C.preventDefault(), E(!N), c(!!N);
1755
+ }, d = N && g || d) : S = (C) => {
1756
+ n && C.preventDefault(), o && o(C);
1757
+ }, $(() => {
1758
+ E(a);
1759
+ }, [a]);
1760
+ const P = t ? "a" : "button", W = Ve({
1761
+ transition: I,
1762
+ shape: b,
1763
+ allowShapeTransformation: L,
1764
+ width: v,
1765
+ href: t,
1766
+ activated: N,
1767
+ label: i,
1768
+ iconSelected: g,
1769
+ isActive: N,
1770
+ onToggle: c,
1771
+ disabled: n,
1772
+ icon: d,
1773
+ variant: e,
1774
+ className: s,
1775
+ size: h,
1776
+ children: i,
1777
+ ...B
1778
+ }), M = V(null), m = p || M;
1779
+ return I = { duration: 0.3, ...I }, /* @__PURE__ */ U(
1780
+ P,
1781
+ {
1782
+ disabled: n,
1783
+ href: t,
1784
+ style: { transition: I.duration + "s" },
1785
+ className: W.iconButton,
1786
+ "aria-label": i,
1787
+ ...B,
1788
+ title: void 0,
1789
+ onClick: S,
1790
+ ref: m,
1791
+ children: [
1792
+ /* @__PURE__ */ u(
1793
+ ye,
1794
+ {
1795
+ targetRef: m,
1796
+ trigger: n ? null : void 0,
1797
+ text: r
1798
+ }
1799
+ ),
1800
+ /* @__PURE__ */ u("div", { className: W.touchTarget }),
1801
+ /* @__PURE__ */ u(
1802
+ "div",
1803
+ {
1804
+ className: W.stateLayer,
1805
+ style: { transition: I.duration + "s" },
1806
+ children: !n && /* @__PURE__ */ u(
1807
+ ne,
1808
+ {
1809
+ colorName: f(
1810
+ e === "standard" && {
1811
+ "on-surface-variant": !N,
1812
+ primary: N
1813
+ },
1814
+ e === "filled" && {
1815
+ primary: !N && !!c,
1816
+ "inverse-on-surface": N || !c
1817
+ },
1818
+ e === "tonal" && {
1819
+ "on-surface-variant": !N && !!c,
1820
+ "on-secondary-container": N || !c
1821
+ },
1822
+ e === "outlined" && {
1823
+ "on-surface-variant": !N,
1824
+ "on-primary": N
1825
+ }
1826
+ ),
1827
+ triggerRef: m
1828
+ }
1829
+ )
1830
+ }
1831
+ ),
1832
+ d && /* @__PURE__ */ u(Q, { icon: d, className: W.icon })
1833
+ ]
1834
+ }
1835
+ );
1836
+ }, vt = ({
1837
+ className: e,
1838
+ valueFormatter: t,
1839
+ step: n = 10,
1840
+ name: l,
1841
+ value: r = 0,
1842
+ min: i = 0,
1843
+ max: c = 100,
1844
+ marks: a = [
1845
+ {
1846
+ value: 0,
1847
+ label: "0"
1848
+ },
1849
+ {
1850
+ value: 100,
1851
+ label: "100"
1852
+ }
1853
+ ],
1854
+ ref: o,
1855
+ onChange: d,
1856
+ ...h
1857
+ }) => {
1858
+ const g = (x) => {
1859
+ const y = p(), D = s();
1860
+ return x === 1 / 0 ? 100 : x === -1 / 0 ? 0 : (x - y) / (D - y) * 100;
1861
+ }, s = (x = !1) => x ? c : c == 1 / 0 ? a[(a == null ? void 0 : a.length) - 1].value : c, p = (x = !1) => x ? i : i == -1 / 0 ? a[0].value : i, v = (x) => {
1862
+ const y = p(!1);
1863
+ return (s(!1) - y) * x / 100 + y;
1864
+ }, [b, L] = R(!1), I = V(null), w = o || I, [B, N] = R(r), [E, S] = R(g(r)), [P, W] = R(!1), M = (x) => {
1865
+ W(!0), L(!0), Y(x);
1866
+ }, m = () => {
1867
+ W(!1), L(!1);
1868
+ };
1869
+ $(() => (P ? (window.addEventListener("mouseup", m), window.addEventListener("mousemove", Y), window.addEventListener("touchend", m), window.addEventListener("touchmove", Y)) : (window.removeEventListener("mouseup", m), window.removeEventListener("mousemove", Y), window.removeEventListener("touchend", m), window.removeEventListener("touchmove", Y)), () => {
1870
+ window.removeEventListener("mouseup", m), window.removeEventListener("mousemove", Y), window.removeEventListener("touchend", m), window.removeEventListener("touchmove", Y);
1871
+ }), [P]);
1872
+ const C = je({
1873
+ className: e,
1874
+ isChanging: b,
1875
+ marks: a,
1876
+ max: c,
1877
+ min: i,
1878
+ name: l,
1879
+ step: n,
1880
+ value: B,
1881
+ valueFormatter: t,
1882
+ onChange: d
1883
+ }), Y = (x) => {
1884
+ const y = w == null ? void 0 : w.current;
1885
+ if (y) {
1886
+ const D = y.getBoundingClientRect().left, k = ((x.type === "touchmove" || x.type === "touchstart" ? x.touches[0].clientX : x.clientX) - D) / y.offsetWidth * 100;
1887
+ H({ pourcent: k });
1888
+ }
1889
+ }, H = ({
1890
+ pourcent: x,
1891
+ value: y
1892
+ }) => {
1893
+ if (x) {
1894
+ if (x >= 100) {
1895
+ N(s(!0)), S(100);
1896
+ return;
1897
+ }
1898
+ if (x <= 0) {
1899
+ N(p(!0)), S(0);
1900
+ return;
1901
+ }
1902
+ y = v(x), y == p() && (y = p(!0)), y == s() && (y = s(!0));
1903
+ } else if (y != null) {
1904
+ if (y >= s()) {
1905
+ N(s(!0)), S(100);
1906
+ return;
1907
+ }
1908
+ if (y <= p()) {
1909
+ N(p(!0)), S(0);
1910
+ return;
1911
+ }
1912
+ x = g(y);
1913
+ } else
1914
+ return;
1915
+ n != null ? y = Math.round((y - p()) / n) * n + p() : a && (y = a.reduce((D, F, k) => {
1916
+ let X = F.value === 1 / 0 ? s() : F.value === -1 / 0 ? p() : F.value, O = D.value === 1 / 0 ? s() : D.value === -1 / 0 ? p() : D.value;
1917
+ return X = Math.abs(X - y), O = Math.abs(O - y), X < O ? F : D;
1918
+ }).value), y >= s() && (y = s(!0)), y <= p() && (y = p(!0)), x = g(y), N(y), S(x), d && d(y);
1919
+ }, [Z, q] = R(0);
1920
+ return $(() => {
1921
+ const x = () => {
1922
+ w.current && q(w.current.offsetWidth);
1923
+ };
1924
+ return x(), window.addEventListener("resize", x), () => {
1925
+ window.removeEventListener("resize", x);
1926
+ };
1927
+ }, []), /* @__PURE__ */ U(
1928
+ "div",
1929
+ {
1930
+ tabIndex: 0,
1931
+ onKeyDown: (x) => {
1932
+ switch (x.key) {
1933
+ case "ArrowRight":
1934
+ if (n)
1935
+ H({ value: B + n });
1936
+ else if (a) {
1937
+ const y = a.find((D) => D.value > B);
1938
+ y && H({ value: y.value });
1939
+ }
1940
+ break;
1941
+ case "ArrowLeft":
1942
+ if (n)
1943
+ H({ value: B - n });
1944
+ else if (a) {
1945
+ const y = a.slice(0).reverse().find((D, F, k) => B === 1 / 0 ? F === 1 : D.value < B);
1946
+ y && H({ value: y.value });
1947
+ }
1948
+ break;
1949
+ default:
1950
+ return;
1951
+ }
1952
+ },
1953
+ role: "slider",
1954
+ "aria-valuemin": p(!0),
1955
+ "aria-valuemax": s(!0),
1956
+ "aria-valuenow": B,
1957
+ "aria-valuetext": B.toString(),
1958
+ className: C.slider,
1959
+ onMouseDown: M,
1960
+ onClick: Y,
1961
+ ref: w,
1962
+ onTouchStart: M,
1963
+ onDragStart: (x) => x.preventDefault(),
1964
+ ...h,
1965
+ children: [
1966
+ /* @__PURE__ */ u("input", { type: "hidden", name: l, value: B }),
1967
+ /* @__PURE__ */ u(
1968
+ "div",
1969
+ {
1970
+ className: C.activeTrack,
1971
+ style: { flex: E / 100 }
1972
+ }
1973
+ ),
1974
+ /* @__PURE__ */ u("div", { className: C.handle, children: /* @__PURE__ */ u(z, { children: b && /* @__PURE__ */ u(
1975
+ j.div,
1976
+ {
1977
+ className: C.valueIndicator,
1978
+ initial: "hidden",
1979
+ animate: "visible",
1980
+ exit: "hidden",
1981
+ style: {
1982
+ translate: "-50%",
1983
+ transformOrigin: "center bottom",
1984
+ textWrap: "nowrap"
1985
+ },
1986
+ variants: {
1987
+ visible: { opacity: 1, scale: 1 },
1988
+ hidden: { opacity: 1, scale: 0 }
1989
+ },
1990
+ transition: { duration: 0.1 },
1991
+ children: t ? t(B) : B
1992
+ }
1993
+ ) }) }),
1994
+ /* @__PURE__ */ u(
1995
+ "div",
1996
+ {
1997
+ className: C.inactiveTrack,
1998
+ style: { flex: 1 - E / 100 }
1999
+ }
2000
+ ),
2001
+ /* @__PURE__ */ u(
2002
+ "div",
2003
+ {
2004
+ className: "w-[calc(100%-12px)] h-full absolute -translate-x-1/2 transform left-1/2",
2005
+ children: a && a.map((x, y) => {
2006
+ let D = null;
2007
+ const F = (b ? 9 : 10) / Z * 100, k = g(x.value);
2008
+ return k <= E - F ? D = !0 : k >= E + F && (D = !1), /* @__PURE__ */ u(
2009
+ "div",
2010
+ {
2011
+ className: f(C.dot, {
2012
+ "bg-primary-container": D != null && D,
2013
+ "bg-primary": D != null && !D
2014
+ }),
2015
+ style: {
2016
+ left: `${g(x.value)}%`
2017
+ }
2018
+ },
2019
+ y
2020
+ );
2021
+ })
2022
+ }
2023
+ )
2024
+ ]
2025
+ }
2026
+ );
2027
+ };
2028
+ /*!
2029
+ * Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
2030
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
2031
+ * Copyright 2024 Fonticons, Inc.
2032
+ */
2033
+ const tt = {
2034
+ prefix: "fas",
2035
+ iconName: "bars",
2036
+ icon: [448, 512, ["navicon"], "f0c9", "M0 96C0 78.3 14.3 64 32 64l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 128C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 288c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32L32 448c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z"]
2037
+ }, rt = {
2038
+ prefix: "fas",
2039
+ iconName: "circle-exclamation",
2040
+ icon: [512, 512, ["exclamation-circle"], "f06a", "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24l0 112c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-112c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z"]
2041
+ }, ge = {
2042
+ prefix: "fas",
2043
+ iconName: "xmark",
2044
+ icon: [384, 512, [128473, 10005, 10006, 10060, 215, "close", "multiply", "remove", "times"], "f00d", "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"]
2045
+ }, bt = ({
2046
+ message: e,
2047
+ className: t,
2048
+ duration: n,
2049
+ closeIcon: l = ge,
2050
+ onClose: r,
2051
+ ...i
2052
+ }) => {
2053
+ const [c, a] = R(!0), o = Fe({
2054
+ className: t,
2055
+ closeIcon: l,
2056
+ duration: n,
2057
+ isVisible: c,
2058
+ onClose: r,
2059
+ message: e
2060
+ });
2061
+ $(() => {
2062
+ n && setTimeout(() => {
2063
+ d();
2064
+ }, n);
2065
+ }, [n]);
2066
+ const d = () => {
2067
+ a(!1), r == null || r();
2068
+ };
2069
+ return /* @__PURE__ */ u(z, { children: c && /* @__PURE__ */ u(
2070
+ j.div,
2071
+ {
2072
+ initial: { height: 0 },
2073
+ animate: { height: "auto" },
2074
+ exit: { height: 0 },
2075
+ transition: { duration: 0.1 },
2076
+ className: o.snackbar,
2077
+ ...i,
2078
+ children: /* @__PURE__ */ U("div", { className: o.container, children: [
2079
+ /* @__PURE__ */ u("p", { className: o.supportingText, children: e }),
2080
+ /* @__PURE__ */ u(
2081
+ xe,
2082
+ {
2083
+ onClick: () => d(),
2084
+ className: o.icon,
2085
+ icon: l,
2086
+ label: "close the snackbar"
2087
+ }
2088
+ )
2089
+ ] })
2090
+ }
2091
+ ) });
2092
+ }, Nt = ({
2093
+ selected: e = !1,
2094
+ className: t,
2095
+ activeIcon: n,
2096
+ disabled: l = !1,
2097
+ inactiveIcon: r,
2098
+ onChange: i,
2099
+ onClick: c,
2100
+ onKeyDown: a,
2101
+ ref: o,
2102
+ ...d
2103
+ }) => {
2104
+ const [h, g] = R(e), s = (w) => {
2105
+ l || (v(), c && c(w));
2106
+ }, p = (w) => {
2107
+ l || ((w.key === " " || w.key === "Enter") && (w.preventDefault(), v()), a && a(w));
2108
+ }, v = () => {
2109
+ g(!h), i == null || i(!h);
2110
+ }, b = Xe({
2111
+ className: t,
2112
+ isSelected: h,
2113
+ activeIcon: n,
2114
+ inactiveIcon: r,
2115
+ disabled: l,
2116
+ selected: h,
2117
+ onChange: i
2118
+ }), L = V(null), I = o || L;
2119
+ return /* @__PURE__ */ U(
2120
+ j.div,
2121
+ {
2122
+ role: "switch",
2123
+ "aria-checked": h,
2124
+ tabIndex: l ? -1 : 0,
2125
+ onKeyDown: p,
2126
+ onClick: s,
2127
+ ref: I,
2128
+ className: b.switch,
2129
+ ...d,
2130
+ children: [
2131
+ /* @__PURE__ */ u("input", { type: "hidden", value: h ? "1" : "0" }),
2132
+ /* @__PURE__ */ U(
2133
+ j.div,
2134
+ {
2135
+ layout: !0,
2136
+ style: { translate: h ? "50%" : "-50%" },
2137
+ transition: {
2138
+ type: "spring",
2139
+ stiffness: 700,
2140
+ damping: 30
2141
+ },
2142
+ className: b.handleContainer,
2143
+ children: [
2144
+ /* @__PURE__ */ u("div", { className: b.handle, children: (h ? n : r) && /* @__PURE__ */ u(
2145
+ Q,
2146
+ {
2147
+ className: b.icon,
2148
+ icon: h ? n : r
2149
+ }
2150
+ ) }),
2151
+ /* @__PURE__ */ u("div", { className: b.handleStateLayer })
2152
+ ]
2153
+ }
2154
+ )
2155
+ ]
2156
+ }
2157
+ );
2158
+ }, nt = ({
2159
+ className: e,
2160
+ onClick: t,
2161
+ label: n,
2162
+ variant: l = "primary",
2163
+ href: r,
2164
+ icon: i,
2165
+ selectedTab: c,
2166
+ setSelectedTab: a,
2167
+ tabsId: o,
2168
+ index: d,
2169
+ onTabSelected: h,
2170
+ scrollable: g = !1,
2171
+ selected: s = !1,
2172
+ ref: p,
2173
+ ...v
2174
+ }) => {
2175
+ const b = V(null), L = p || b, [I, w] = R(s);
2176
+ $(() => {
2177
+ s && c == null ? w(!0) : w(c == d && d != null);
2178
+ }, [c]), $(() => {
2179
+ c == d && h && h({
2180
+ ref: L,
2181
+ index: d || 0,
2182
+ label: n,
2183
+ icon: i
2184
+ });
2185
+ }, [c]);
2186
+ const B = r ? "a" : "button", N = (S) => {
2187
+ a && a(d ?? null), t && t(S);
2188
+ }, E = Oe({
2189
+ className: e,
2190
+ onTabSelected: h,
2191
+ scrollable: g,
2192
+ selectedTab: c,
2193
+ index: d,
2194
+ tabsId: o,
2195
+ selected: I,
2196
+ variant: l,
2197
+ icon: i,
2198
+ label: n,
2199
+ isSelected: I,
2200
+ setSelectedTab: a,
2201
+ href: r
2202
+ });
2203
+ return /* @__PURE__ */ U(
2204
+ B,
2205
+ {
2206
+ ...v,
2207
+ role: "tab",
2208
+ "aria-selected": I,
2209
+ ref: L,
2210
+ href: r,
2211
+ className: E.tab,
2212
+ onClick: N,
2213
+ ...v,
2214
+ children: [
2215
+ /* @__PURE__ */ u("span", { className: E.stateLayer, children: /* @__PURE__ */ u(
2216
+ ne,
2217
+ {
2218
+ colorName: l === "primary" && I ? "primary" : "on-surface",
2219
+ triggerRef: L
2220
+ }
2221
+ ) }),
2222
+ /* @__PURE__ */ U("span", { className: E.content, children: [
2223
+ i && /* @__PURE__ */ u(Q, { icon: i, className: E.icon }),
2224
+ /* @__PURE__ */ u("span", { className: E.label, children: n }),
2225
+ I && /* @__PURE__ */ u(
2226
+ j.span,
2227
+ {
2228
+ layoutId: `underline-${o}`,
2229
+ className: E.underline,
2230
+ transition: { duration: 0.3 }
2231
+ }
2232
+ )
2233
+ ] })
2234
+ ]
2235
+ }
2236
+ );
2237
+ }, Lt = ({
2238
+ variant: e = "primary",
2239
+ onTabSelected: t,
2240
+ children: n,
2241
+ className: l,
2242
+ selectedTab: r,
2243
+ setSelectedTab: i,
2244
+ scrollable: c = !1
2245
+ }) => {
2246
+ const [a, o] = R(
2247
+ null
2248
+ );
2249
+ let d;
2250
+ r == 0 || r != null ? d = r : d = a;
2251
+ const h = i || o, g = _.Children.toArray(n).filter(
2252
+ (L) => _.isValidElement(L) && L.type === nt
2253
+ ), s = _.useRef(null), p = (L) => {
2254
+ if (t == null || t(L), c) {
2255
+ const I = s.current, w = L.ref.current;
2256
+ if (I && w) {
2257
+ const B = w.offsetLeft + w.offsetWidth / 2 - I.offsetWidth / 2;
2258
+ I.scrollTo({ left: B, behavior: "smooth" });
2259
+ }
2260
+ }
2261
+ }, v = ve(() => ce(), []), b = qe({
2262
+ children: n,
2263
+ onTabSelected: t,
2264
+ scrollable: c,
2265
+ selectedTab: d,
2266
+ setSelectedTab: h,
2267
+ className: l,
2268
+ variant: e
2269
+ });
2270
+ return /* @__PURE__ */ u("div", { ref: s, role: "tablist", className: b.tabs, children: g.map((L, I) => _.cloneElement(L, {
2271
+ key: I,
2272
+ index: I,
2273
+ variant: e,
2274
+ selectedTab: d,
2275
+ setSelectedTab: h,
2276
+ tabsId: v,
2277
+ onTabSelected: p,
2278
+ scrollable: c
2279
+ })) });
2280
+ }, Et = ({
2281
+ variant: e = "filled",
2282
+ disabled: t = !1,
2283
+ errorText: n,
2284
+ placeholder: l,
2285
+ suffix: r,
2286
+ name: i,
2287
+ label: c,
2288
+ className: a,
2289
+ supportingText: o,
2290
+ trailingIcon: d,
2291
+ leadingIcon: h,
2292
+ type: g = "text",
2293
+ textLine: s = "singleLine",
2294
+ autoComplete: p = "on",
2295
+ onChange: v,
2296
+ value: b,
2297
+ showSupportingText: L = !1,
2298
+ ...I
2299
+ }) => {
2300
+ const [w, B] = R(b ?? ""), [N, E] = R(!1), [S, P] = R(!1), [W, M] = R(
2301
+ L
2302
+ );
2303
+ $(() => {
2304
+ B(b ?? "");
2305
+ }, [b]), $(() => {
2306
+ n != null && n.length ? P(!0) : P(!1);
2307
+ }, [n]), $(() => {
2308
+ L ? M(L) : o != null && o.length ? M(!0) : M(!1);
2309
+ }, [W, o]), $(() => {
2310
+ N && P(!1);
2311
+ }, [N]);
2312
+ const m = _.useRef(null), C = () => {
2313
+ m.current && !N && m.current.focus();
2314
+ }, Y = () => {
2315
+ E(!0);
2316
+ }, H = (D) => {
2317
+ const F = D.target.value;
2318
+ B(F), P(!1), typeof v == "function" && v(F);
2319
+ }, Z = () => {
2320
+ E(!1);
2321
+ }, q = He({
2322
+ showSupportingText: W,
2323
+ isFocused: N,
2324
+ showErrorIcon: S,
2325
+ disabled: t,
2326
+ name: i,
2327
+ label: c,
2328
+ autoComplete: p,
2329
+ className: a,
2330
+ onChange: v,
2331
+ placeholder: l,
2332
+ supportingText: o,
2333
+ type: g,
2334
+ leadingIcon: h,
2335
+ trailingIcon: d,
2336
+ variant: e,
2337
+ errorText: n,
2338
+ value: w,
2339
+ suffix: r,
2340
+ textLine: s
2341
+ }), [A] = R(ce());
2342
+ let x, y;
2343
+ switch (s) {
2344
+ case "multiLine":
2345
+ y = ke, x = {};
2346
+ break;
2347
+ case "textAreas":
2348
+ y = "textarea", x = {};
2349
+ break;
2350
+ case "singleLine":
2351
+ default:
2352
+ y = "input", x = { type: g };
2353
+ break;
2354
+ }
2355
+ return /* @__PURE__ */ U("div", { className: q.textField, ...I, children: [
2356
+ /* @__PURE__ */ U("fieldset", { onClick: C, className: q.content, children: [
2357
+ /* @__PURE__ */ u("div", { className: q.stateLayer }),
2358
+ h && /* @__PURE__ */ u("div", { className: q.leadingIcon, children: _.isValidElement(h) ? h : /* @__PURE__ */ u(Q, { className: "w-5 h-5", icon: h }) }),
2359
+ !(!N && !w.length || e == "filled") && /* @__PURE__ */ u(
2360
+ j.legend,
2361
+ {
2362
+ variants: {
2363
+ hidden: { width: 0, padding: 0 },
2364
+ visible: { width: "auto", padding: "0 8px" }
2365
+ },
2366
+ initial: "hidden",
2367
+ animate: !N && !w.length ? "hidden" : "visible",
2368
+ className: "max-w-full ml-2 px-2 text-body-small h-0",
2369
+ transition: { duration: 0.2 },
2370
+ children: /* @__PURE__ */ u("span", { className: "transform inline-flex -translate-y-1/2", children: /* @__PURE__ */ u(
2371
+ j.span,
2372
+ {
2373
+ className: q.label,
2374
+ transition: { duration: 0.3 },
2375
+ layoutId: A,
2376
+ children: c
2377
+ }
2378
+ ) })
2379
+ }
2380
+ ),
2381
+ /* @__PURE__ */ U("div", { className: "flex-1 relative", children: [
2382
+ (!N && !w.length || e == "filled") && /* @__PURE__ */ u(
2383
+ j.label,
2384
+ {
2385
+ htmlFor: i,
2386
+ className: f(
2387
+ "absolute left-4 transition-all duration-300",
2388
+ {
2389
+ "text-body-small top-2": e == "filled" && !(!N && !w.length),
2390
+ "text-body-large top-1/2 transform -translate-y-1/2": !(e == "filled" && !(!N && !w.length))
2391
+ }
2392
+ ),
2393
+ transition: { duration: 0.3 },
2394
+ children: /* @__PURE__ */ u(
2395
+ j.span,
2396
+ {
2397
+ className: q.label,
2398
+ transition: { duration: 0.3 },
2399
+ layoutId: e == "outlined" ? A : void 0,
2400
+ children: c
2401
+ }
2402
+ )
2403
+ }
2404
+ ),
2405
+ /* @__PURE__ */ u(
2406
+ y,
2407
+ {
2408
+ ref: m,
2409
+ value: w,
2410
+ onChange: H,
2411
+ className: q.input,
2412
+ id: i,
2413
+ name: i,
2414
+ placeholder: N ? l ?? void 0 : "",
2415
+ onFocus: Y,
2416
+ onBlur: Z,
2417
+ disabled: t,
2418
+ autoComplete: p,
2419
+ "aria-invalid": !!(n != null && n.length),
2420
+ "aria-label": c,
2421
+ ...x
2422
+ }
2423
+ )
2424
+ ] }),
2425
+ /* @__PURE__ */ u("div", { className: q.activeIndicator }),
2426
+ !S && /* @__PURE__ */ U(re, { children: [
2427
+ d && /* @__PURE__ */ u(
2428
+ "div",
2429
+ {
2430
+ onClick: (D) => {
2431
+ D.stopPropagation();
2432
+ },
2433
+ className: q.trailingIcon,
2434
+ children: _.isValidElement(d) ? d : /* @__PURE__ */ u(Q, { className: "h-5", icon: d })
2435
+ }
2436
+ ),
2437
+ !d && r && /* @__PURE__ */ u("span", { className: q.suffix, children: r })
2438
+ ] }),
2439
+ S && /* @__PURE__ */ u(
2440
+ "div",
2441
+ {
2442
+ className: f(q.trailingIcon, {
2443
+ " absolute right-0": !d
2444
+ }),
2445
+ children: /* @__PURE__ */ u(
2446
+ Q,
2447
+ {
2448
+ className: "h-5 text-error",
2449
+ icon: rt
2450
+ }
2451
+ )
2452
+ }
2453
+ )
2454
+ ] }),
2455
+ W && /* @__PURE__ */ u("p", { className: q.supportingText, children: n != null && n.length ? n : o != null && o.length ? o : " " })
2456
+ ] });
2457
+ }, lt = K(
2458
+ "navigationRailItem",
2459
+ ({ isSelected: e, icon: t, label: n, variant: l }) => ({
2460
+ navigationRailItem: f(" group flex flex-col pt-1 pb-1.5 cursor-pointer", {
2461
+ "text-on-surface-variant": !e,
2462
+ "text-on-secondary-container": e,
2463
+ "gap-2 h-[68px]": l == "vertical",
2464
+ "gap-0 h-[66px]": l == "horizontal"
2465
+ }),
2466
+ container: f(
2467
+ " w-fit flex justify-center relative rounded-full items-center mx-5",
2468
+ {
2469
+ "bg-secondary-container overflow-hidden": e,
2470
+ "gap-2 ": l == "horizontal",
2471
+ "gap-0 ": l == "vertical",
2472
+ "p-4": !n
2473
+ },
2474
+ n && [
2475
+ "px-4",
2476
+ {
2477
+ "py-1 ": l == "vertical",
2478
+ "py-4 ": l == "horizontal"
2479
+ }
2480
+ ]
2481
+ ),
2482
+ stateLayer: f(
2483
+ " absolute w-full rounded-full h-full left-0 top-0 ",
2484
+ {
2485
+ "group-state-on-surface": !e,
2486
+ "group-state-on-secondary-container": e
2487
+ }
2488
+ ),
2489
+ icon: f("size-6 flex"),
2490
+ label: f("w-fit mx-auto", {
2491
+ "text-label-large ": l == "horizontal",
2492
+ "text-label-medium": l == "vertical"
2493
+ })
2494
+ })
2495
+ ), ot = ({ label: e }) => /* @__PURE__ */ u("div", { className: " h-9 flex items-center mx-9 mt-3", children: /* @__PURE__ */ u("p", { className: "text-label-large text-on-surface-variant", children: e }) }), at = ({
2496
+ className: e,
2497
+ onClick: t,
2498
+ label: n,
2499
+ variant: l = "vertical",
2500
+ href: r,
2501
+ icon: i,
2502
+ selectedItem: c,
2503
+ setSelectedItem: a,
2504
+ index: o,
2505
+ onItemSelected: d,
2506
+ selected: h = !1,
2507
+ ref: g,
2508
+ transition: s,
2509
+ isExtended: p,
2510
+ iconSelected: v,
2511
+ style: b,
2512
+ extendedOnly: L,
2513
+ children: I,
2514
+ ...w
2515
+ }) => {
2516
+ I && (n = I);
2517
+ const B = V(null), N = g || B, [E, S] = R(h);
2518
+ $(() => {
2519
+ h && c == null ? S(!0) : S(c == o && o != null);
2520
+ }, [c]), $(() => {
2521
+ c == o && d && d({
2522
+ ref: N,
2523
+ index: o || 0,
2524
+ label: n,
2525
+ icon: i
2526
+ });
2527
+ }, [c]);
2528
+ const P = r ? "a" : "button", W = (m) => {
2529
+ a && a(o ?? null), t && t(m);
2530
+ }, M = lt({
2531
+ isExtended: p,
2532
+ extendedOnly: L,
2533
+ className: e,
2534
+ onItemSelected: d,
2535
+ selectedItem: c,
2536
+ index: o,
2537
+ transition: s,
2538
+ selected: E,
2539
+ variant: l,
2540
+ icon: i,
2541
+ label: n,
2542
+ isSelected: E,
2543
+ setSelectedItem: a,
2544
+ href: r,
2545
+ children: n,
2546
+ iconSelected: v
2547
+ });
2548
+ return s = { duration: 0.3, ...s }, L && !p ? null : (
2549
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
2550
+ // @ts-expect-error
2551
+ /* @__PURE__ */ U(
2552
+ P,
2553
+ {
2554
+ ...w,
2555
+ role: "tab",
2556
+ "aria-selected": E,
2557
+ ref: N,
2558
+ href: r,
2559
+ className: M.navigationRailItem,
2560
+ onClick: W,
2561
+ style: { transition: s.duration + "s", ...b },
2562
+ children: [
2563
+ /* @__PURE__ */ U(
2564
+ j.div,
2565
+ {
2566
+ style: {
2567
+ transition: l == "horizontal" ? s.duration + `s, gap ${s.duration / 2}s ${s.duration - s.duration / 2}s` : s.duration + `s, gap ${s.duration / 3}s ${s.duration - s.duration / 3}s`
2568
+ },
2569
+ transition: s,
2570
+ className: M.container,
2571
+ children: [
2572
+ /* @__PURE__ */ u(j.div, { layout: !0, className: M.stateLayer }),
2573
+ i && /* @__PURE__ */ u(
2574
+ Q,
2575
+ {
2576
+ icon: E ? v : i,
2577
+ className: M.icon
2578
+ }
2579
+ ),
2580
+ /* @__PURE__ */ u(z, { children: l == "horizontal" && (() => {
2581
+ const m = {
2582
+ width: 0,
2583
+ opacity: 0,
2584
+ transition: {
2585
+ ...s
2586
+ }
2587
+ }, C = {
2588
+ width: "auto",
2589
+ opacity: 1,
2590
+ transition: {
2591
+ ...s,
2592
+ opacity: {
2593
+ duration: s.duration / 2,
2594
+ delay: s.duration - s.duration / 2
2595
+ }
2596
+ }
2597
+ };
2598
+ return /* @__PURE__ */ u(
2599
+ j.span,
2600
+ {
2601
+ initial: m,
2602
+ animate: C,
2603
+ exit: m,
2604
+ className: M.label,
2605
+ children: n
2606
+ }
2607
+ );
2608
+ })() })
2609
+ ]
2610
+ }
2611
+ ),
2612
+ /* @__PURE__ */ u(z, { children: l == "vertical" && (() => {
2613
+ const m = {
2614
+ height: 0,
2615
+ opacity: 0,
2616
+ transition: {
2617
+ ...s,
2618
+ opacity: {
2619
+ duration: 0
2620
+ }
2621
+ }
2622
+ }, C = {
2623
+ height: "auto",
2624
+ opacity: 1,
2625
+ transition: {
2626
+ ...s,
2627
+ opacity: {
2628
+ duration: s.duration / 3,
2629
+ delay: s.duration - s.duration / 3
2630
+ }
2631
+ }
2632
+ };
2633
+ return /* @__PURE__ */ u(
2634
+ j.span,
2635
+ {
2636
+ initial: m,
2637
+ animate: C,
2638
+ exit: m,
2639
+ className: M.label,
2640
+ transition: s,
2641
+ children: n
2642
+ }
2643
+ );
2644
+ })() })
2645
+ ]
2646
+ }
2647
+ )
2648
+ );
2649
+ }, st = K(
2650
+ "navigationRail",
2651
+ ({ isExtended: e, alignment: t }) => ({
2652
+ navigationRail: f("flex flex-col left-0 h-full top-0 pt-11", {
2653
+ "w-fit max-w-24": !e,
2654
+ "w-fit min-w-[220px] max-w-[360px]": e,
2655
+ "justify-between": t == "middle",
2656
+ "justify-start": t == "top"
2657
+ }),
2658
+ header: f("flex flex-col gap-1 items-start"),
2659
+ menuIcon: "mx-5",
2660
+ segments: f(" flex flex-col overflow-auto min-w-full mt-10", {
2661
+ "w-full": !e,
2662
+ "w-fit items-start": e
2663
+ })
2664
+ })
2665
+ ), It = ({
2666
+ variant: e = "standard",
2667
+ onItemSelected: t,
2668
+ children: n,
2669
+ className: l,
2670
+ selectedItem: r,
2671
+ extended: i,
2672
+ alignment: c = "top",
2673
+ menu: a = {
2674
+ closed: {
2675
+ icon: tt,
2676
+ label: "Open menu"
2677
+ },
2678
+ opened: {
2679
+ icon: ge,
2680
+ label: "Close menu"
2681
+ }
2682
+ },
2683
+ style: o,
2684
+ onExtendedChange: d,
2685
+ transition: h,
2686
+ setSelectedItem: g
2687
+ }) => {
2688
+ const [s, p] = R(null), [v, b] = R(i);
2689
+ let L;
2690
+ r == 0 || r != null ? L = r : L = s;
2691
+ const I = g || p, w = V(null), B = (M) => {
2692
+ t == null || t(M);
2693
+ };
2694
+ function N(M) {
2695
+ const m = [];
2696
+ return be.forEach(M, (C) => {
2697
+ ee(C) && C.type === Ne ? m.push(...N(C.props.children)) : m.push(C);
2698
+ }), m;
2699
+ }
2700
+ const E = N(n), S = E.filter(
2701
+ (M) => ee(M) && M.type === ue
2702
+ ), P = st({
2703
+ children: n,
2704
+ onItemSelected: t,
2705
+ selectedItem: L,
2706
+ setSelectedItem: I,
2707
+ className: l,
2708
+ variant: e,
2709
+ extended: v,
2710
+ isExtended: v,
2711
+ alignment: c,
2712
+ menu: a,
2713
+ transition: h,
2714
+ onExtendedChange: d
2715
+ });
2716
+ h = { duration: 0.3, ...h };
2717
+ const W = V(!1);
2718
+ return W.current = !1, $(() => {
2719
+ d == null || d(v ?? !1);
2720
+ }, [v]), /* @__PURE__ */ U(
2721
+ "div",
2722
+ {
2723
+ style: { transition: h.duration + "s", ...o },
2724
+ ref: w,
2725
+ className: P.navigationRail,
2726
+ children: [
2727
+ /* @__PURE__ */ U("div", { className: P.header, children: [
2728
+ /* @__PURE__ */ u(
2729
+ xe,
2730
+ {
2731
+ onClick: () => b(!v),
2732
+ label: v ? a == null ? void 0 : a.opened.label : a == null ? void 0 : a.closed.label,
2733
+ className: P.menuIcon,
2734
+ icon: v ? a.opened.icon : a == null ? void 0 : a.closed.icon
2735
+ }
2736
+ ),
2737
+ S.length > 0 && le(S[0], {
2738
+ transition: h,
2739
+ isExtended: v,
2740
+ className: "!shadow-none mx-5 " + S[0].props.className
2741
+ })
2742
+ ] }),
2743
+ /* @__PURE__ */ u("div", { className: P.segments, children: (() => {
2744
+ let M = 0;
2745
+ return E.map((m) => ee(m) && m.type === at ? le(
2746
+ m,
2747
+ {
2748
+ key: M,
2749
+ index: M++,
2750
+ // Utilise et incrémente le compteur dédié
2751
+ variant: v ? "horizontal" : "vertical",
2752
+ selectedItem: L,
2753
+ setSelectedItem: I,
2754
+ onItemSelected: B,
2755
+ transition: h,
2756
+ extendedOnly: W.current,
2757
+ isExtended: v
2758
+ }
2759
+ ) : ee(m) && m.type === ue ? null : ee(m) && m.type === ot ? (W.current = !0, v ? le(m, {}) : null) : m);
2760
+ })() }),
2761
+ /* @__PURE__ */ u("div", { className: "flex-1 max-h-[160px]" })
2762
+ ]
2763
+ }
2764
+ );
2765
+ };
2766
+ export {
2767
+ Ze as Button,
2768
+ xt as Card,
2769
+ gt as Carousel,
2770
+ Qe as CarouselItem,
2771
+ he as CustomScroll,
2772
+ wt as Divider,
2773
+ ue as Fab,
2774
+ Q as Icon,
2775
+ xe as IconButton,
2776
+ It as NavigationRail,
2777
+ at as NavigationRailItem,
2778
+ ot as NavigationRailSection,
2779
+ Ge as ProgressIndicator,
2780
+ ne as RippleEffect,
2781
+ vt as Slider,
2782
+ yt as SmoothScroll,
2783
+ bt as Snackbar,
2784
+ Nt as Switch,
2785
+ _e as SyncedFixedWrapper,
2786
+ nt as Tab,
2787
+ Lt as Tabs,
2788
+ Et as TextField,
2789
+ ye as ToolTip,
2790
+ Be as buttonStyle,
2791
+ Ce as cardStyle,
2792
+ We as carouselItemStyle,
2793
+ De as carouselStyle,
2794
+ f as classNames,
2795
+ Me as classnames,
2796
+ Ye as customScrollStyle,
2797
+ K as defaultClassNames,
2798
+ Pe as dividerStyle,
2799
+ $e as fabStyle,
2800
+ Se as getClassNames,
2801
+ Ve as iconButtonStyle,
2802
+ Je as normalize,
2803
+ Ue as progressIndicatorStyle,
2804
+ je as sliderStyle,
2805
+ Fe as snackbarStyle,
2806
+ Xe as switchStyle,
2807
+ Oe as tabStyle,
2808
+ qe as tabsStyle,
2809
+ He as textFieldStyle,
2810
+ Ke as toolStyle
2811
+ };