@smitch/breeze 0.1.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 (473) hide show
  1. package/.npmignore +14 -0
  2. package/README.md +485 -0
  3. package/index.d.ts +1 -0
  4. package/index.js +1 -0
  5. package/lib/@hooks/useWindowWidth.js +17 -0
  6. package/lib/@hooks/useWindowWidth.js.map +1 -0
  7. package/lib/@utils/merge.js +35 -0
  8. package/lib/@utils/merge.js.map +1 -0
  9. package/lib/accordion/Accordion.js +28 -0
  10. package/lib/accordion/Accordion.js.map +1 -0
  11. package/lib/accordion/atoms/AccordionCard.js +9 -0
  12. package/lib/accordion/atoms/AccordionCard.js.map +1 -0
  13. package/lib/accordion/atoms/AccordionHead.js +23 -0
  14. package/lib/accordion/atoms/AccordionHead.js.map +1 -0
  15. package/lib/accordion/atoms/AccordionItem.js +10 -0
  16. package/lib/accordion/atoms/AccordionItem.js.map +1 -0
  17. package/lib/accordion/atoms/AccordionSection.js +8 -0
  18. package/lib/accordion/atoms/AccordionSection.js.map +1 -0
  19. package/lib/accordion/atoms/index.js +5 -0
  20. package/lib/accordion/atoms/index.js.map +1 -0
  21. package/lib/accordion/index.js +3 -0
  22. package/lib/accordion/index.js.map +1 -0
  23. package/lib/accordion/types/index.js +2 -0
  24. package/lib/accordion/types/index.js.map +1 -0
  25. package/lib/alert/Alert.js +42 -0
  26. package/lib/alert/Alert.js.map +1 -0
  27. package/lib/alert/index.js +2 -0
  28. package/lib/alert/index.js.map +1 -0
  29. package/lib/alert/types/index.js +2 -0
  30. package/lib/alert/types/index.js.map +1 -0
  31. package/lib/autocomplete/Autocomplete.js +9 -0
  32. package/lib/autocomplete/Autocomplete.js.map +1 -0
  33. package/lib/autocomplete/index.js +2 -0
  34. package/lib/autocomplete/index.js.map +1 -0
  35. package/lib/autocomplete/types/index.js +2 -0
  36. package/lib/autocomplete/types/index.js.map +1 -0
  37. package/lib/badge/Badge.js +57 -0
  38. package/lib/badge/Badge.js.map +1 -0
  39. package/lib/badge/index.js +2 -0
  40. package/lib/badge/index.js.map +1 -0
  41. package/lib/badge/types/index.js +2 -0
  42. package/lib/badge/types/index.js.map +1 -0
  43. package/lib/blockquote/Blockquote.js +22 -0
  44. package/lib/blockquote/Blockquote.js.map +1 -0
  45. package/lib/blockquote/index.js +2 -0
  46. package/lib/blockquote/index.js.map +1 -0
  47. package/lib/blockquote/types/index.js +2 -0
  48. package/lib/blockquote/types/index.js.map +1 -0
  49. package/lib/breadcrumbs/Breadcrumbs.js +47 -0
  50. package/lib/breadcrumbs/Breadcrumbs.js.map +1 -0
  51. package/lib/breadcrumbs/index.js +2 -0
  52. package/lib/breadcrumbs/index.js.map +1 -0
  53. package/lib/breadcrumbs/types/index.js +2 -0
  54. package/lib/breadcrumbs/types/index.js.map +1 -0
  55. package/lib/button/Button.js +76 -0
  56. package/lib/button/Button.js.map +1 -0
  57. package/lib/button/index.js +3 -0
  58. package/lib/button/index.js.map +1 -0
  59. package/lib/button/types/index.js +2 -0
  60. package/lib/button/types/index.js.map +1 -0
  61. package/lib/button/variants/CloseButton.js +18 -0
  62. package/lib/button/variants/CloseButton.js.map +1 -0
  63. package/lib/button/variants/index.js +2 -0
  64. package/lib/button/variants/index.js.map +1 -0
  65. package/lib/button/variants/types/index.js +2 -0
  66. package/lib/button/variants/types/index.js.map +1 -0
  67. package/lib/buttongroup/ButtonGroup.js +35 -0
  68. package/lib/buttongroup/ButtonGroup.js.map +1 -0
  69. package/lib/buttongroup/index.js +2 -0
  70. package/lib/buttongroup/index.js.map +1 -0
  71. package/lib/buttongroup/types/index.js +2 -0
  72. package/lib/buttongroup/types/index.js.map +1 -0
  73. package/lib/card/Card.js +32 -0
  74. package/lib/card/Card.js.map +1 -0
  75. package/lib/card/atoms/CardBody.js +8 -0
  76. package/lib/card/atoms/CardBody.js.map +1 -0
  77. package/lib/card/atoms/CardFooter.js +9 -0
  78. package/lib/card/atoms/CardFooter.js.map +1 -0
  79. package/lib/card/atoms/CardHeader.js +8 -0
  80. package/lib/card/atoms/CardHeader.js.map +1 -0
  81. package/lib/card/atoms/CardImage.js +16 -0
  82. package/lib/card/atoms/CardImage.js.map +1 -0
  83. package/lib/card/index.js +6 -0
  84. package/lib/card/index.js.map +1 -0
  85. package/lib/card/types/index.js +2 -0
  86. package/lib/card/types/index.js.map +1 -0
  87. package/lib/carousel/Carousel.js +147 -0
  88. package/lib/carousel/Carousel.js.map +1 -0
  89. package/lib/carousel/index.js +2 -0
  90. package/lib/carousel/index.js.map +1 -0
  91. package/lib/carousel/types/index.js +2 -0
  92. package/lib/carousel/types/index.js.map +1 -0
  93. package/lib/charts/BarChart.js +24 -0
  94. package/lib/charts/BarChart.js.map +1 -0
  95. package/lib/charts/BubbleChart.js +24 -0
  96. package/lib/charts/BubbleChart.js.map +1 -0
  97. package/lib/charts/ChartWrap.js +69 -0
  98. package/lib/charts/ChartWrap.js.map +1 -0
  99. package/lib/charts/DoughnutChart.js +20 -0
  100. package/lib/charts/DoughnutChart.js.map +1 -0
  101. package/lib/charts/LineChart.js +24 -0
  102. package/lib/charts/LineChart.js.map +1 -0
  103. package/lib/charts/MixedChart.js +24 -0
  104. package/lib/charts/MixedChart.js.map +1 -0
  105. package/lib/charts/PieChart.js +20 -0
  106. package/lib/charts/PieChart.js.map +1 -0
  107. package/lib/charts/PolarAreaChart.js +23 -0
  108. package/lib/charts/PolarAreaChart.js.map +1 -0
  109. package/lib/charts/RadarChart.js +23 -0
  110. package/lib/charts/RadarChart.js.map +1 -0
  111. package/lib/charts/ScatterChart.js +24 -0
  112. package/lib/charts/ScatterChart.js.map +1 -0
  113. package/lib/charts/index.js +10 -0
  114. package/lib/charts/index.js.map +1 -0
  115. package/lib/charts/types/index.js +2 -0
  116. package/lib/charts/types/index.js.map +1 -0
  117. package/lib/checkbox/Checkbox.js +9 -0
  118. package/lib/checkbox/Checkbox.js.map +1 -0
  119. package/lib/checkbox/index.js +2 -0
  120. package/lib/checkbox/index.js.map +1 -0
  121. package/lib/checkbox/types/index.js +2 -0
  122. package/lib/checkbox/types/index.js.map +1 -0
  123. package/lib/clock/Clock.js +99 -0
  124. package/lib/clock/Clock.js.map +1 -0
  125. package/lib/clock/index.js +2 -0
  126. package/lib/clock/index.js.map +1 -0
  127. package/lib/clock/types/index.js +2 -0
  128. package/lib/clock/types/index.js.map +1 -0
  129. package/lib/codeblock/Codeblock.js +21 -0
  130. package/lib/codeblock/Codeblock.js.map +1 -0
  131. package/lib/codeblock/index.js +2 -0
  132. package/lib/codeblock/index.js.map +1 -0
  133. package/lib/codeblock/types/index.js +2 -0
  134. package/lib/codeblock/types/index.js.map +1 -0
  135. package/lib/counter/Counter.js +39 -0
  136. package/lib/counter/Counter.js.map +1 -0
  137. package/lib/counter/index.js +2 -0
  138. package/lib/counter/index.js.map +1 -0
  139. package/lib/counter/types/index.js +2 -0
  140. package/lib/counter/types/index.js.map +1 -0
  141. package/lib/datatable/DataTable.js +44 -0
  142. package/lib/datatable/DataTable.js.map +1 -0
  143. package/lib/datatable/index.js +2 -0
  144. package/lib/datatable/index.js.map +1 -0
  145. package/lib/datatable/types/index.js +2 -0
  146. package/lib/datatable/types/index.js.map +1 -0
  147. package/lib/dialog/Dialog.js +45 -0
  148. package/lib/dialog/Dialog.js.map +1 -0
  149. package/lib/dialog/hooks/useDisableBack.js +16 -0
  150. package/lib/dialog/hooks/useDisableBack.js.map +1 -0
  151. package/lib/dialog/index.js +2 -0
  152. package/lib/dialog/index.js.map +1 -0
  153. package/lib/dialog/types/index.js +2 -0
  154. package/lib/dialog/types/index.js.map +1 -0
  155. package/lib/drawer/Drawer.js +39 -0
  156. package/lib/drawer/Drawer.js.map +1 -0
  157. package/lib/drawer/index.js +2 -0
  158. package/lib/drawer/index.js.map +1 -0
  159. package/lib/drawer/types/index.js +2 -0
  160. package/lib/drawer/types/index.js.map +1 -0
  161. package/lib/dropdown/Dropdown.js +40 -0
  162. package/lib/dropdown/Dropdown.js.map +1 -0
  163. package/lib/dropdown/index.js +2 -0
  164. package/lib/dropdown/index.js.map +1 -0
  165. package/lib/dropdown/types/index.js +2 -0
  166. package/lib/dropdown/types/index.js.map +1 -0
  167. package/lib/figure/Figure.js +42 -0
  168. package/lib/figure/Figure.js.map +1 -0
  169. package/lib/figure/index.js +2 -0
  170. package/lib/figure/index.js.map +1 -0
  171. package/lib/figure/types/index.js +2 -0
  172. package/lib/figure/types/index.js.map +1 -0
  173. package/lib/fileupload/FileUpload.js +52 -0
  174. package/lib/fileupload/FileUpload.js.map +1 -0
  175. package/lib/fileupload/Files.js +22 -0
  176. package/lib/fileupload/Files.js.map +1 -0
  177. package/lib/fileupload/index.js +2 -0
  178. package/lib/fileupload/index.js.map +1 -0
  179. package/lib/fileupload/types/index.js +25 -0
  180. package/lib/fileupload/types/index.js.map +1 -0
  181. package/lib/form/Fieldset.js +9 -0
  182. package/lib/form/Fieldset.js.map +1 -0
  183. package/lib/form/Form.js +64 -0
  184. package/lib/form/Form.js.map +1 -0
  185. package/lib/form/Legend.js +21 -0
  186. package/lib/form/Legend.js.map +1 -0
  187. package/lib/form/RegisterForm.js +19 -0
  188. package/lib/form/RegisterForm.js.map +1 -0
  189. package/lib/form/index.js +5 -0
  190. package/lib/form/index.js.map +1 -0
  191. package/lib/form/types/index.js +2 -0
  192. package/lib/form/types/index.js.map +1 -0
  193. package/lib/gallery/Gallery.js +12 -0
  194. package/lib/gallery/Gallery.js.map +1 -0
  195. package/lib/gallery/index.js +2 -0
  196. package/lib/gallery/index.js.map +1 -0
  197. package/lib/gallery/types/index.js +2 -0
  198. package/lib/gallery/types/index.js.map +1 -0
  199. package/lib/heading/Heading.js +38 -0
  200. package/lib/heading/Heading.js.map +1 -0
  201. package/lib/heading/index.js +2 -0
  202. package/lib/heading/index.js.map +1 -0
  203. package/lib/heading/types/index.js +2 -0
  204. package/lib/heading/types/index.js.map +1 -0
  205. package/lib/hero/Hero.js +72 -0
  206. package/lib/hero/Hero.js.map +1 -0
  207. package/lib/hero/index.js +2 -0
  208. package/lib/hero/index.js.map +1 -0
  209. package/lib/hero/types/index.js +2 -0
  210. package/lib/hero/types/index.js.map +1 -0
  211. package/lib/icon/Icon.js +37 -0
  212. package/lib/icon/Icon.js.map +1 -0
  213. package/lib/icon/index.js +2 -0
  214. package/lib/icon/index.js.map +1 -0
  215. package/lib/icon/types/index.js +2 -0
  216. package/lib/icon/types/index.js.map +1 -0
  217. package/lib/index.js +52 -0
  218. package/lib/index.js.map +1 -0
  219. package/lib/input/Input.js +37 -0
  220. package/lib/input/Input.js.map +1 -0
  221. package/lib/input/index.js +2 -0
  222. package/lib/input/index.js.map +1 -0
  223. package/lib/input/types/index.js +2 -0
  224. package/lib/input/types/index.js.map +1 -0
  225. package/lib/label/Label.js +36 -0
  226. package/lib/label/Label.js.map +1 -0
  227. package/lib/label/index.js +2 -0
  228. package/lib/label/index.js.map +1 -0
  229. package/lib/label/types/index.js +2 -0
  230. package/lib/label/types/index.js.map +1 -0
  231. package/lib/loading/Loading.js +71 -0
  232. package/lib/loading/Loading.js.map +1 -0
  233. package/lib/loading/index.js +3 -0
  234. package/lib/loading/index.js.map +1 -0
  235. package/lib/loading/spinners/Bars.js +7 -0
  236. package/lib/loading/spinners/Bars.js.map +1 -0
  237. package/lib/loading/spinners/Clock.js +7 -0
  238. package/lib/loading/spinners/Clock.js.map +1 -0
  239. package/lib/loading/spinners/Dots.js +7 -0
  240. package/lib/loading/spinners/Dots.js.map +1 -0
  241. package/lib/loading/spinners/Pulse.js +7 -0
  242. package/lib/loading/spinners/Pulse.js.map +1 -0
  243. package/lib/loading/spinners/Spindots.js +7 -0
  244. package/lib/loading/spinners/Spindots.js.map +1 -0
  245. package/lib/loading/spinners/Spinner.js +7 -0
  246. package/lib/loading/spinners/Spinner.js.map +1 -0
  247. package/lib/loading/spinners/Wifi.js +7 -0
  248. package/lib/loading/spinners/Wifi.js.map +1 -0
  249. package/lib/loading/spinners/index.js +8 -0
  250. package/lib/loading/spinners/index.js.map +1 -0
  251. package/lib/loading/types/index.js +2 -0
  252. package/lib/loading/types/index.js.map +1 -0
  253. package/lib/map/LazyMap.js +146 -0
  254. package/lib/map/LazyMap.js.map +1 -0
  255. package/lib/map/LazyMapCircle.js +14 -0
  256. package/lib/map/LazyMapCircle.js.map +1 -0
  257. package/lib/map/LazyMapLine.js +13 -0
  258. package/lib/map/LazyMapLine.js.map +1 -0
  259. package/lib/map/LazyMapMarker.js +72 -0
  260. package/lib/map/LazyMapMarker.js.map +1 -0
  261. package/lib/map/LazyMapPolygon.js +9 -0
  262. package/lib/map/LazyMapPolygon.js.map +1 -0
  263. package/lib/map/LazyMapRectangle.js +12 -0
  264. package/lib/map/LazyMapRectangle.js.map +1 -0
  265. package/lib/map/Map.js +34 -0
  266. package/lib/map/Map.js.map +1 -0
  267. package/lib/map/MapCircle.js +34 -0
  268. package/lib/map/MapCircle.js.map +1 -0
  269. package/lib/map/MapLine.js +34 -0
  270. package/lib/map/MapLine.js.map +1 -0
  271. package/lib/map/MapMarker.js +34 -0
  272. package/lib/map/MapMarker.js.map +1 -0
  273. package/lib/map/MapPolygon.js +34 -0
  274. package/lib/map/MapPolygon.js.map +1 -0
  275. package/lib/map/MapRectangle.js +34 -0
  276. package/lib/map/MapRectangle.js.map +1 -0
  277. package/lib/map/index.js +7 -0
  278. package/lib/map/index.js.map +1 -0
  279. package/lib/map/tileOptions.js +33 -0
  280. package/lib/map/tileOptions.js.map +1 -0
  281. package/lib/map/types/index.js +2 -0
  282. package/lib/map/types/index.js.map +1 -0
  283. package/lib/modal/Modal.js +33 -0
  284. package/lib/modal/Modal.js.map +1 -0
  285. package/lib/modal/hooks/useDisableBack.js +14 -0
  286. package/lib/modal/hooks/useDisableBack.js.map +1 -0
  287. package/lib/modal/index.js +2 -0
  288. package/lib/modal/index.js.map +1 -0
  289. package/lib/modal/types/index.js +2 -0
  290. package/lib/modal/types/index.js.map +1 -0
  291. package/lib/navbar/NavBar.js +17 -0
  292. package/lib/navbar/NavBar.js.map +1 -0
  293. package/lib/navbar/NavBrand.js +9 -0
  294. package/lib/navbar/NavBrand.js.map +1 -0
  295. package/lib/navbar/NavLinks.js +27 -0
  296. package/lib/navbar/NavLinks.js.map +1 -0
  297. package/lib/navbar/index.js +2 -0
  298. package/lib/navbar/index.js.map +1 -0
  299. package/lib/navbar/types/index.js +2 -0
  300. package/lib/navbar/types/index.js.map +1 -0
  301. package/lib/pagination/Pagination.js +42 -0
  302. package/lib/pagination/Pagination.js.map +1 -0
  303. package/lib/pagination/index.js +2 -0
  304. package/lib/pagination/index.js.map +1 -0
  305. package/lib/pagination/types/index.js +2 -0
  306. package/lib/pagination/types/index.js.map +1 -0
  307. package/lib/passwordinput/PasswordInput.js +22 -0
  308. package/lib/passwordinput/PasswordInput.js.map +1 -0
  309. package/lib/passwordinput/index.js +2 -0
  310. package/lib/passwordinput/index.js.map +1 -0
  311. package/lib/passwordinput/types/index.js +2 -0
  312. package/lib/passwordinput/types/index.js.map +1 -0
  313. package/lib/pictogram/Pictogram.js +21 -0
  314. package/lib/pictogram/Pictogram.js.map +1 -0
  315. package/lib/pictogram/index.js +2 -0
  316. package/lib/pictogram/index.js.map +1 -0
  317. package/lib/pictogram/types/index.js +2 -0
  318. package/lib/pictogram/types/index.js.map +1 -0
  319. package/lib/placeholder/PlaceHolder.js +28 -0
  320. package/lib/placeholder/PlaceHolder.js.map +1 -0
  321. package/lib/placeholder/index.js +2 -0
  322. package/lib/placeholder/index.js.map +1 -0
  323. package/lib/placeholder/types/index.js +2 -0
  324. package/lib/placeholder/types/index.js.map +1 -0
  325. package/lib/progress/Progress.js +26 -0
  326. package/lib/progress/Progress.js.map +1 -0
  327. package/lib/progress/index.js +2 -0
  328. package/lib/progress/index.js.map +1 -0
  329. package/lib/progress/types/index.js +2 -0
  330. package/lib/progress/types/index.js.map +1 -0
  331. package/lib/radiogroup/RadioGroup.js +28 -0
  332. package/lib/radiogroup/RadioGroup.js.map +1 -0
  333. package/lib/radiogroup/index.js +2 -0
  334. package/lib/radiogroup/index.js.map +1 -0
  335. package/lib/radiogroup/types/index.js +2 -0
  336. package/lib/radiogroup/types/index.js.map +1 -0
  337. package/lib/rangeinput/RangeInput.js +45 -0
  338. package/lib/rangeinput/RangeInput.js.map +1 -0
  339. package/lib/rangeinput/index.js +2 -0
  340. package/lib/rangeinput/index.js.map +1 -0
  341. package/lib/rangeinput/types/index.js +2 -0
  342. package/lib/rangeinput/types/index.js.map +1 -0
  343. package/lib/ratings/Ratings.js +25 -0
  344. package/lib/ratings/Ratings.js.map +1 -0
  345. package/lib/ratings/index.js +2 -0
  346. package/lib/ratings/index.js.map +1 -0
  347. package/lib/ratings/types/index.js +2 -0
  348. package/lib/ratings/types/index.js.map +1 -0
  349. package/lib/searchinput/SearchInput.js +22 -0
  350. package/lib/searchinput/SearchInput.js.map +1 -0
  351. package/lib/searchinput/index.js +2 -0
  352. package/lib/searchinput/index.js.map +1 -0
  353. package/lib/searchinput/types/index.js +2 -0
  354. package/lib/searchinput/types/index.js.map +1 -0
  355. package/lib/select/Select.js +34 -0
  356. package/lib/select/Select.js.map +1 -0
  357. package/lib/select/index.js +2 -0
  358. package/lib/select/index.js.map +1 -0
  359. package/lib/select/types/index.js +2 -0
  360. package/lib/select/types/index.js.map +1 -0
  361. package/lib/sidebar/Sidebar.js +56 -0
  362. package/lib/sidebar/Sidebar.js.map +1 -0
  363. package/lib/sidebar/index.js +2 -0
  364. package/lib/sidebar/index.js.map +1 -0
  365. package/lib/sidebar/types/index.js +2 -0
  366. package/lib/sidebar/types/index.js.map +1 -0
  367. package/lib/socialshare/SocialShare.js +64 -0
  368. package/lib/socialshare/SocialShare.js.map +1 -0
  369. package/lib/socialshare/buttons/BlueskyButton.js +18 -0
  370. package/lib/socialshare/buttons/BlueskyButton.js.map +1 -0
  371. package/lib/socialshare/buttons/EmailButton.js +16 -0
  372. package/lib/socialshare/buttons/EmailButton.js.map +1 -0
  373. package/lib/socialshare/buttons/FacebookButton.js +16 -0
  374. package/lib/socialshare/buttons/FacebookButton.js.map +1 -0
  375. package/lib/socialshare/buttons/LinkedinButton.js +16 -0
  376. package/lib/socialshare/buttons/LinkedinButton.js.map +1 -0
  377. package/lib/socialshare/buttons/PinterestButton.js +19 -0
  378. package/lib/socialshare/buttons/PinterestButton.js.map +1 -0
  379. package/lib/socialshare/buttons/RedditButton.js +19 -0
  380. package/lib/socialshare/buttons/RedditButton.js.map +1 -0
  381. package/lib/socialshare/buttons/SlackButton.js +17 -0
  382. package/lib/socialshare/buttons/SlackButton.js.map +1 -0
  383. package/lib/socialshare/buttons/TelegramButton.js +19 -0
  384. package/lib/socialshare/buttons/TelegramButton.js.map +1 -0
  385. package/lib/socialshare/buttons/WhatsappButton.js +16 -0
  386. package/lib/socialshare/buttons/WhatsappButton.js.map +1 -0
  387. package/lib/socialshare/buttons/XButton.js +19 -0
  388. package/lib/socialshare/buttons/XButton.js.map +1 -0
  389. package/lib/socialshare/index.js +12 -0
  390. package/lib/socialshare/index.js.map +1 -0
  391. package/lib/socialshare/types/index.js +2 -0
  392. package/lib/socialshare/types/index.js.map +1 -0
  393. package/lib/statbar/StatBar.js +15 -0
  394. package/lib/statbar/StatBar.js.map +1 -0
  395. package/lib/statbar/index.js +2 -0
  396. package/lib/statbar/index.js.map +1 -0
  397. package/lib/statbar/types/index.js +2 -0
  398. package/lib/statbar/types/index.js.map +1 -0
  399. package/lib/switch/Switch.js +55 -0
  400. package/lib/switch/Switch.js.map +1 -0
  401. package/lib/switch/index.js +2 -0
  402. package/lib/switch/index.js.map +1 -0
  403. package/lib/switch/types/index.js +2 -0
  404. package/lib/switch/types/index.js.map +1 -0
  405. package/lib/tabs/Tab.js +6 -0
  406. package/lib/tabs/Tab.js.map +1 -0
  407. package/lib/tabs/TabBar.js +18 -0
  408. package/lib/tabs/TabBar.js.map +1 -0
  409. package/lib/tabs/Tabs.js +59 -0
  410. package/lib/tabs/Tabs.js.map +1 -0
  411. package/lib/tabs/index.js +2 -0
  412. package/lib/tabs/index.js.map +1 -0
  413. package/lib/tabs/types/index.js +2 -0
  414. package/lib/tabs/types/index.js.map +1 -0
  415. package/lib/textarea/TextArea.js +17 -0
  416. package/lib/textarea/TextArea.js.map +1 -0
  417. package/lib/textarea/index.js +2 -0
  418. package/lib/textarea/index.js.map +1 -0
  419. package/lib/textarea/types/index.js +2 -0
  420. package/lib/textarea/types/index.js.map +1 -0
  421. package/lib/textinput/TextInput.js +18 -0
  422. package/lib/textinput/TextInput.js.map +1 -0
  423. package/lib/textinput/index.js +2 -0
  424. package/lib/textinput/index.js.map +1 -0
  425. package/lib/textinput/types/index.js +2 -0
  426. package/lib/textinput/types/index.js.map +1 -0
  427. package/lib/ticker/Ticker.js +21 -0
  428. package/lib/ticker/Ticker.js.map +1 -0
  429. package/lib/ticker/index.js +2 -0
  430. package/lib/ticker/index.js.map +1 -0
  431. package/lib/ticker/types/index.js +2 -0
  432. package/lib/ticker/types/index.js.map +1 -0
  433. package/lib/toast/Toast.js +76 -0
  434. package/lib/toast/Toast.js.map +1 -0
  435. package/lib/toast/index.js +2 -0
  436. package/lib/toast/index.js.map +1 -0
  437. package/lib/toast/types/index.js +2 -0
  438. package/lib/toast/types/index.js.map +1 -0
  439. package/lib/twitterembed/TwitterEmbed.js +123 -0
  440. package/lib/twitterembed/TwitterEmbed.js.map +1 -0
  441. package/lib/twitterembed/index.js +2 -0
  442. package/lib/twitterembed/index.js.map +1 -0
  443. package/lib/twitterembed/types/index.js +2 -0
  444. package/lib/twitterembed/types/index.js.map +1 -0
  445. package/lib/videoplayer/Video.js +130 -0
  446. package/lib/videoplayer/Video.js.map +1 -0
  447. package/lib/videoplayer/VideoControls.js +63 -0
  448. package/lib/videoplayer/VideoControls.js.map +1 -0
  449. package/lib/videoplayer/VideoPlayer.js +66 -0
  450. package/lib/videoplayer/VideoPlayer.js.map +1 -0
  451. package/lib/videoplayer/VideoTracks.js +9 -0
  452. package/lib/videoplayer/VideoTracks.js.map +1 -0
  453. package/lib/videoplayer/controls/CaptionsControl.js +15 -0
  454. package/lib/videoplayer/controls/CaptionsControl.js.map +1 -0
  455. package/lib/videoplayer/controls/FullscreenControl.js +8 -0
  456. package/lib/videoplayer/controls/FullscreenControl.js.map +1 -0
  457. package/lib/videoplayer/controls/PipControl.js +8 -0
  458. package/lib/videoplayer/controls/PipControl.js.map +1 -0
  459. package/lib/videoplayer/controls/SoundControl.js +8 -0
  460. package/lib/videoplayer/controls/SoundControl.js.map +1 -0
  461. package/lib/videoplayer/controls/index.js +5 -0
  462. package/lib/videoplayer/controls/index.js.map +1 -0
  463. package/lib/videoplayer/index.js +3 -0
  464. package/lib/videoplayer/index.js.map +1 -0
  465. package/lib/videoplayer/types/index.js +2 -0
  466. package/lib/videoplayer/types/index.js.map +1 -0
  467. package/lib/youtubeembed/YoutubeEmbed.js +33 -0
  468. package/lib/youtubeembed/YoutubeEmbed.js.map +1 -0
  469. package/lib/youtubeembed/index.js +2 -0
  470. package/lib/youtubeembed/index.js.map +1 -0
  471. package/lib/youtubeembed/types/index.js +2 -0
  472. package/lib/youtubeembed/types/index.js.map +1 -0
  473. package/package.json +39 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Form.js","sourceRoot":"","sources":["../../../src/ui/form/Form.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client'\n\nimport React, { useRef, useState, useCallback, useMemo } from 'react'\n\nimport { twMerge } from 'tailwind-merge'\n\nimport { Button } from '..'\n\nimport { FormProps } from './types'\n\nconst layouts = {\n\tcol: 'flex-col',\n\trow: 'flex-row flex-wrap',\n}\n\nconst Form = ({\n\tclassName = '',\n\tstyle,\n\tname = 'form',\n\tonsubmit,\n\tonCancel,\n\tlayout = 'col',\n\tshowCancel = false,\n\tactions = true,\n\tchildren,\n\tsubmitLabel = 'Submit',\n\tcancelLabel = 'Cancel',\n\tactionsLayout = 'row',\n\tactionsSpacing = '0',\n\tsubmitBackground = 'primary',\n\tsubmitColor = 'light',\n\tcancelBackground = 'transparent',\n\tcancelColor = 'current',\n\tsubmitOutline = false,\n\tsubmitOutlineColor = 'current',\n\tcancelOutline = false,\n\tcancelOutlineColor = 'current',\n\tbuttonTextcase = 'normal-case',\n\tbuttonShape = 'default',\n\tbuttonIsBold = false,\n\tseparator = false,\n}: FormProps) => {\n\tconst form = useRef<HTMLFormElement | null>(null)\n\tconst [valid, setValid] = useState(false)\n\tconst [formData, setFormData] = useState({})\n\tconst layoutClasses = useMemo(() => layouts[layout], [layout])\n\n\tconst handleSubmit = (e: React.FormEvent<HTMLFormElement>) => {\n\t\te.preventDefault()\n\t\tif (onsubmit) {\n\t\t\tonsubmit(formData)\n\t\t}\n\t}\n\n\tconst handleCancel = () => {\n\t\tif (onCancel) {\n\t\t\tonCancel()\n\t\t}\n\t}\n\n\tconst handleInputChange = useCallback((event: Event) => {\n\t\tconst target = event.target as HTMLInputElement\n\t\tconst { name, value } = target\n\t\tsetFormData((prevData) => {\n\t\t\tconst updatedData = {\n\t\t\t\t...prevData,\n\t\t\t\t[name]: value,\n\t\t\t}\n\t\t\treturn updatedData\n\t\t})\n\n\t\tif (form.current) {\n\t\t\tsetValid(form.current.checkValidity())\n\t\t}\n\t}, [])\n\n\tconst setFormRef = useCallback(\n\t\t(node: HTMLFormElement) => {\n\t\t\tif (node) {\n\t\t\t\tform.current = node\n\t\t\t\tnode.addEventListener('change', handleInputChange, true)\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tif (node) {\n\t\t\t\t\tnode.removeEventListener('change', handleInputChange, true)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[handleInputChange]\n\t)\n\n\treturn (\n\t\t<form\n\t\t\tclassName={twMerge(`form group flex ${layoutClasses} gap-8`, className)}\n\t\t\tstyle={style}\n\t\t\tname={name}\n\t\t\tid={name}\n\t\t\tref={setFormRef}\n\t\t\tonSubmit={handleSubmit}\n\t\t>\n\t\t\t{children}\n\t\t\t{actions && (\n\t\t\t\t<>\n\t\t\t\t\t{separator && <hr className='border-neutral border-t-2 opacity-70' />}\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={`form-actions mt-auto flex group justify-between flex-grow flex-${actionsLayout} gap-${actionsSpacing}`}\n\t\t\t\t\t>\n\t\t\t\t\t\t{showCancel ? (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\ttype='button'\n\t\t\t\t\t\t\t\tclassName={`!justify-center flex-grow`}\n\t\t\t\t\t\t\t\tbtnBackground={cancelBackground}\n\t\t\t\t\t\t\t\tbtnColor={cancelColor}\n\t\t\t\t\t\t\t\toutline={cancelOutline}\n\t\t\t\t\t\t\t\toutlineColor={cancelOutlineColor}\n\t\t\t\t\t\t\t\ttextcase={buttonTextcase}\n\t\t\t\t\t\t\t\tlayout={buttonShape}\n\t\t\t\t\t\t\t\tisBold={buttonIsBold}\n\t\t\t\t\t\t\t\tonClick={handleCancel}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{cancelLabel}\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ttype='submit'\n\t\t\t\t\t\t\tclassName={`!justify-center flex-grow`}\n\t\t\t\t\t\t\tbtnBackground={submitBackground}\n\t\t\t\t\t\t\tbtnColor={submitColor}\n\t\t\t\t\t\t\toutline={submitOutline}\n\t\t\t\t\t\t\toutlineColor={submitOutlineColor}\n\t\t\t\t\t\t\ttextcase={buttonTextcase}\n\t\t\t\t\t\t\tlayout={buttonShape}\n\t\t\t\t\t\t\tisBold={buttonIsBold}\n\t\t\t\t\t\t\tdisabled={!valid}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{submitLabel}\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</div>\n\t\t\t\t</>\n\t\t\t)}\n\t\t</form>\n\t)\n}\n\nexport default Form\n"]}
@@ -0,0 +1,21 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useMemo } from 'react';
3
+ var sizes = {
4
+ sm: 'text-sm',
5
+ md: 'text-base',
6
+ lg: 'text-lg',
7
+ xl: 'text-2xl',
8
+ };
9
+ var alignments = {
10
+ left: 'text-left',
11
+ center: 'text-center',
12
+ right: 'text-right',
13
+ };
14
+ var Legend = function (_a) {
15
+ var text = _a.text, _b = _a.isBold, isBold = _b === void 0 ? false : _b, _c = _a.className, className = _c === void 0 ? '' : _c, _d = _a.align, align = _d === void 0 ? 'center' : _d, _e = _a.legendSize, legendSize = _e === void 0 ? 'md' : _e;
16
+ var sizeClasses = useMemo(function () { return sizes[legendSize]; }, [legendSize]);
17
+ var alignment = useMemo(function () { return alignments[align]; }, [align]);
18
+ return (_jsx("legend", { className: "legend ".concat(className, " ").concat(alignment, " ").concat(isBold ? 'font-bold' : 'font-normal', " text-").concat(align, " ").concat(sizeClasses, " text-dark dark:text-light mb-[1em]"), children: text }));
19
+ };
20
+ export default Legend;
21
+ //# sourceMappingURL=Legend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Legend.js","sourceRoot":"","sources":["../../../src/ui/form/Legend.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAItC,IAAM,KAAK,GAAG;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,UAAU;CACd,CAAA;AAED,IAAM,UAAU,GAAG;IAClB,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,YAAY;CACnB,CAAA;AAED,IAAM,MAAM,GAAG,UAAC,EAMF;QALb,IAAI,UAAA,EACJ,cAAc,EAAd,MAAM,mBAAG,KAAK,KAAA,EACd,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,aAAgB,EAAhB,KAAK,mBAAG,QAAQ,KAAA,EAChB,kBAAiB,EAAjB,UAAU,mBAAG,IAAI,KAAA;IAEjB,IAAM,WAAW,GAAG,OAAO,CAAC,cAAM,OAAA,KAAK,CAAC,UAAU,CAAC,EAAjB,CAAiB,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;IAClE,IAAM,SAAS,GAAG,OAAO,CAAC,cAAM,OAAA,UAAU,CAAC,KAAK,CAAC,EAAjB,CAAiB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAE3D,OAAO,CACN,iBACC,SAAS,EAAE,iBAAU,SAAS,cAAI,SAAS,cAC1C,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,mBAC5B,KAAK,cAAI,WAAW,wCAAqC,YAEjE,IAAI,GACG,CACT,CAAA;AACF,CAAC,CAAA;AAED,eAAe,MAAM,CAAA","sourcesContent":["import React, { useMemo } from 'react'\n\nimport { LegendProps } from './types'\n\nconst sizes = {\n\tsm: 'text-sm',\n\tmd: 'text-base',\n\tlg: 'text-lg',\n\txl: 'text-2xl',\n}\n\nconst alignments = {\n\tleft: 'text-left',\n\tcenter: 'text-center',\n\tright: 'text-right',\n}\n\nconst Legend = ({\n\ttext,\n\tisBold = false,\n\tclassName = '',\n\talign = 'center',\n\tlegendSize = 'md',\n}: LegendProps) => {\n\tconst sizeClasses = useMemo(() => sizes[legendSize], [legendSize])\n\tconst alignment = useMemo(() => alignments[align], [align])\n\n\treturn (\n\t\t<legend\n\t\t\tclassName={`legend ${className} ${alignment} ${\n\t\t\t\tisBold ? 'font-bold' : 'font-normal'\n\t\t\t} text-${align} ${sizeClasses} text-dark dark:text-light mb-[1em]`}\n\t\t>\n\t\t\t{text}\n\t\t</legend>\n\t)\n}\n\nexport default Legend\n"]}
@@ -0,0 +1,19 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useState } from 'react';
4
+ import { Form, Fieldset, TextInput, PasswordInput, Checkbox } from '..';
5
+ var RegisterForm = function (_a) {
6
+ var action = _a.action, _b = _a.actionsLayout, actionsLayout = _b === void 0 ? 'row' : _b, _c = _a.actionsSpacing, actionsSpacing = _c === void 0 ? '0' : _c, onCancel = _a.onCancel, onsubmit = _a.onsubmit, _d = _a.showCancel, showCancel = _d === void 0 ? true : _d, _e = _a.submitLabel, submitLabel = _e === void 0 ? 'Register' : _e, _f = _a.cancelLabel, cancelLabel = _f === void 0 ? 'Cancel' : _f, _g = _a.submitBackground, submitBackground = _g === void 0 ? 'primary' : _g, _h = _a.submitColor, submitColor = _h === void 0 ? 'light' : _h, _j = _a.submitOutlineColor, submitOutlineColor = _j === void 0 ? 'current' : _j, _k = _a.cancelBackground, cancelBackground = _k === void 0 ? 'transparent' : _k, _l = _a.cancelColor, cancelColor = _l === void 0 ? 'current' : _l, _m = _a.cancelOutlineColor, cancelOutlineColor = _m === void 0 ? 'current' : _m, _o = _a.separator, separator = _o === void 0 ? true : _o, _p = _a.name, name = _p === void 0 ? 'register' : _p, _q = _a.className, className = _q === void 0 ? '' : _q, style = _a.style, _r = _a.buttonOutline, buttonOutline = _r === void 0 ? false : _r, _s = _a.buttonTextcase, buttonTextcase = _s === void 0 ? 'normal-case' : _s, _t = _a.buttonShape, buttonShape = _t === void 0 ? 'default' : _t, _u = _a.buttonIsBold, buttonIsBold = _u === void 0 ? true : _u, _v = _a.legendText, legendText = _v === void 0 ? 'Register' : _v, _w = _a.legendisBold, legendisBold = _w === void 0 ? true : _w, _x = _a.legendAlign, legendAlign = _x === void 0 ? 'center' : _x, _y = _a.legendSize, legendSize = _y === void 0 ? 'md' : _y, _z = _a.spacing, spacing = _z === void 0 ? '4' : _z, _0 = _a.hasBorder, hasBorder = _0 === void 0 ? false : _0, userLabel = _a.userLabel, _1 = _a.userAutocomplete, userAutocomplete = _1 === void 0 ? 'email' : _1, userPlaceholder = _a.userPlaceholder, passwordLabel = _a.passwordLabel, passwordPlaceholder = _a.passwordPlaceholder, passwordPattern = _a.passwordPattern, passwordTitle = _a.passwordTitle, confirmLabel = _a.confirmLabel, confirmPlaceholder = _a.confirmPlaceholder, confirmTitle = _a.confirmTitle, _2 = _a.inputsLayout, inputsLayout = _2 === void 0 ? 'col' : _2, _3 = _a.inputsSize, inputsSize = _3 === void 0 ? 'md' : _3, _4 = _a.inputsRounded, inputsRounded = _4 === void 0 ? 'none' : _4, checkLabel = _a.checkLabel, checkLabelIsBold = _a.checkLabelIsBold, checkRounded = _a.checkRounded, checkHint = _a.checkHint;
7
+ var _5 = useState(''), newpassword = _5[0], setNewpassword = _5[1];
8
+ var handleCreatePassword = function (value) {
9
+ setNewpassword(value);
10
+ };
11
+ var handleCancel = function () {
12
+ if (onCancel) {
13
+ onCancel();
14
+ }
15
+ };
16
+ return (_jsx(Form, { action: action, actionsLayout: actionsLayout, actionsSpacing: actionsSpacing, onCancel: handleCancel, onsubmit: onsubmit, showCancel: showCancel, submitLabel: submitLabel, submitBackground: submitBackground, submitColor: submitColor, submitOutline: buttonOutline, submitOutlineColor: submitOutlineColor, cancelLabel: cancelLabel, cancelBackground: cancelBackground, cancelColor: cancelColor, cancelOutline: buttonOutline, cancelOutlineColor: cancelOutlineColor, separator: separator, name: name, method: 'POST', className: className, style: style, buttonTextcase: buttonTextcase, buttonShape: buttonShape, buttonIsBold: buttonIsBold, children: _jsxs(Fieldset, { legendText: legendText, legendSize: legendSize, isBold: legendisBold, spacing: spacing, legendAlign: legendAlign, hasBorder: hasBorder, children: [_jsx(TextInput, { label: userLabel, autocomplete: userAutocomplete, placeholder: userPlaceholder, name: 'user-name', id: 'user-name', required: true, layout: inputsLayout, size: inputsSize, rounded: inputsRounded }), _jsx(PasswordInput, { name: 'newpassword', label: passwordLabel, placeholder: passwordPlaceholder, title: passwordTitle, autocomplete: 'new-password', pattern: passwordPattern, onInputChange: handleCreatePassword, layout: inputsLayout, size: inputsSize, rounded: inputsRounded, required: true, hint: true }), _jsx(PasswordInput, { label: confirmLabel, autocomplete: 'new-password', placeholder: confirmPlaceholder, title: confirmTitle, name: 'confirmpassword', pattern: newpassword, layout: inputsLayout, size: inputsSize, rounded: inputsRounded, required: true, hint: true }), _jsx(Checkbox, { label: checkLabel, labelIsBold: checkLabelIsBold, size: inputsSize, rounded: checkRounded, name: 'terms', required: true, hint: checkHint })] }) }));
17
+ };
18
+ export default RegisterForm;
19
+ //# sourceMappingURL=RegisterForm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisterForm.js","sourceRoot":"","sources":["../../../src/ui/form/RegisterForm.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client'\n\nimport React, { useState } from 'react'\nimport { Form, Fieldset, TextInput, PasswordInput, Checkbox } from '..'\nimport { RegisterFormProps } from './types'\n\nconst RegisterForm = ({\n\taction,\n\tactionsLayout = 'row',\n\tactionsSpacing = '0',\n\tonCancel,\n\tonsubmit,\n\tshowCancel = true,\n\tsubmitLabel = 'Register',\n\tcancelLabel = 'Cancel',\n\tsubmitBackground = 'primary',\n\tsubmitColor = 'light',\n\tsubmitOutlineColor = 'current',\n\tcancelBackground = 'transparent',\n\tcancelColor = 'current',\n\tcancelOutlineColor = 'current',\n\tseparator = true,\n\tname = 'register',\n\tclassName = '',\n\tstyle,\n\tbuttonOutline = false,\n\tbuttonTextcase = 'normal-case',\n\tbuttonShape = 'default',\n\tbuttonIsBold = true,\n\tlegendText = 'Register',\n\tlegendisBold = true,\n\tlegendAlign = 'center',\n\tlegendSize = 'md',\n\tspacing = '4',\n\thasBorder = false,\n\tuserLabel,\n\tuserAutocomplete = 'email',\n\tuserPlaceholder,\n\tpasswordLabel,\n\tpasswordPlaceholder,\n\tpasswordPattern,\n\tpasswordTitle,\n\tconfirmLabel,\n\tconfirmPlaceholder,\n\tconfirmTitle,\n\tinputsLayout = 'col',\n\tinputsSize = 'md',\n\tinputsRounded = 'none',\n\tcheckLabel,\n\tcheckLabelIsBold,\n\tcheckRounded,\n\tcheckHint,\n}: RegisterFormProps) => {\n\tconst [newpassword, setNewpassword] = useState('')\n\n\tconst handleCreatePassword = (value: string) => {\n\t\tsetNewpassword(value)\n\t}\n\n\tconst handleCancel = () => {\n\t\tif (onCancel) {\n\t\t\tonCancel()\n\t\t}\n\t}\n\n\treturn (\n\t\t<Form\n\t\t\taction={action}\n\t\t\tactionsLayout={actionsLayout}\n\t\t\tactionsSpacing={actionsSpacing}\n\t\t\tonCancel={handleCancel}\n\t\t\tonsubmit={onsubmit}\n\t\t\tshowCancel={showCancel}\n\t\t\tsubmitLabel={submitLabel}\n\t\t\tsubmitBackground={submitBackground}\n\t\t\tsubmitColor={submitColor}\n\t\t\tsubmitOutline={buttonOutline}\n\t\t\tsubmitOutlineColor={submitOutlineColor}\n\t\t\tcancelLabel={cancelLabel}\n\t\t\tcancelBackground={cancelBackground}\n\t\t\tcancelColor={cancelColor}\n\t\t\tcancelOutline={buttonOutline}\n\t\t\tcancelOutlineColor={cancelOutlineColor}\n\t\t\tseparator={separator}\n\t\t\tname={name}\n\t\t\tmethod='POST'\n\t\t\tclassName={className}\n\t\t\tstyle={style}\n\t\t\tbuttonTextcase={buttonTextcase}\n\t\t\tbuttonShape={buttonShape}\n\t\t\tbuttonIsBold={buttonIsBold}\n\t\t>\n\t\t\t<Fieldset\n\t\t\t\tlegendText={legendText}\n\t\t\t\tlegendSize={legendSize}\n\t\t\t\tisBold={legendisBold}\n\t\t\t\tspacing={spacing}\n\t\t\t\tlegendAlign={legendAlign}\n\t\t\t\thasBorder={hasBorder}\n\t\t\t>\n\t\t\t\t<TextInput\n\t\t\t\t\tlabel={userLabel}\n\t\t\t\t\tautocomplete={userAutocomplete}\n\t\t\t\t\tplaceholder={userPlaceholder}\n\t\t\t\t\tname='user-name'\n\t\t\t\t\tid='user-name'\n\t\t\t\t\trequired\n\t\t\t\t\tlayout={inputsLayout}\n\t\t\t\t\tsize={inputsSize}\n\t\t\t\t\trounded={inputsRounded}\n\t\t\t\t/>\n\t\t\t\t<PasswordInput\n\t\t\t\t\tname='newpassword'\n\t\t\t\t\tlabel={passwordLabel}\n\t\t\t\t\tplaceholder={passwordPlaceholder}\n\t\t\t\t\ttitle={passwordTitle}\n\t\t\t\t\tautocomplete='new-password'\n\t\t\t\t\tpattern={passwordPattern}\n\t\t\t\t\tonInputChange={handleCreatePassword}\n\t\t\t\t\tlayout={inputsLayout}\n\t\t\t\t\tsize={inputsSize}\n\t\t\t\t\trounded={inputsRounded}\n\t\t\t\t\trequired\n\t\t\t\t\thint\n\t\t\t\t/>\n\t\t\t\t<PasswordInput\n\t\t\t\t\tlabel={confirmLabel}\n\t\t\t\t\tautocomplete='new-password'\n\t\t\t\t\tplaceholder={confirmPlaceholder}\n\t\t\t\t\ttitle={confirmTitle}\n\t\t\t\t\tname='confirmpassword'\n\t\t\t\t\tpattern={newpassword}\n\t\t\t\t\tlayout={inputsLayout}\n\t\t\t\t\tsize={inputsSize}\n\t\t\t\t\trounded={inputsRounded}\n\t\t\t\t\trequired\n\t\t\t\t\thint\n\t\t\t\t/>\n\t\t\t\t<Checkbox\n\t\t\t\t\tlabel={checkLabel}\n\t\t\t\t\tlabelIsBold={checkLabelIsBold}\n\t\t\t\t\tsize={inputsSize}\n\t\t\t\t\trounded={checkRounded}\n\t\t\t\t\tname='terms'\n\t\t\t\t\trequired\n\t\t\t\t\thint={checkHint}\n\t\t\t\t/>\n\t\t\t</Fieldset>\n\t\t</Form>\n\t)\n}\n\nexport default RegisterForm\n"]}
@@ -0,0 +1,5 @@
1
+ export { default as Form } from './Form';
2
+ export { default as Fieldset } from './Fieldset';
3
+ export { default as Legend } from './Legend';
4
+ export { default as RegisterForm } from './RegisterForm';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/form/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA","sourcesContent":["export { default as Form } from './Form'\nexport { default as Fieldset } from './Fieldset'\nexport { default as Legend } from './Legend'\nexport { default as RegisterForm } from './RegisterForm'\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/form/types/index.ts"],"names":[],"mappings":"","sourcesContent":["// Base Color Options\ntype BaseColorOption =\n\t| 'dark'\n\t| 'light'\n\t| 'info'\n\t| 'success'\n\t| 'warning'\n\t| 'danger'\n\t| 'primary'\n\t| 'secondary'\n\n// Extended Color Options\ntype ColorOption = BaseColorOption | 'current'\ntype OutlineColorOption = ColorOption | 'accent'\ntype BackgroundOption = BaseColorOption | 'transparent'\n\n// Spacing and Alignment Options\ntype SpacingOption = '0' | '1' | '2' | '4' | '8'\ntype AlignOption = 'left' | 'center' | 'right'\ntype SizeOption = 'sm' | 'md' | 'lg' | 'xl'\n\n// Common Props Interface\ninterface CommonFormProps {\n\tname?: string\n\taction?: string\n\tlayout?: 'col' | 'row'\n\tclassName?: string\n\tstyle?: React.CSSProperties\n\tonsubmit?: (formData: { [key: string]: string }) => void\n\tonCancel?: () => void\n\tshowCancel?: boolean\n\tactions?: boolean\n\tactionsLayout?: 'row' | 'row-reverse' | 'col' | 'col-reverse'\n\tactionsSpacing?: SpacingOption\n\tseparator?: boolean\n\tsubmitLabel?: string\n\tcancelLabel?: string\n\tsubmitBackground?: BackgroundOption\n\tsubmitColor?: ColorOption\n\tcancelBackground?: BackgroundOption\n\tcancelColor?: ColorOption\n\tsubmitOutline?: boolean\n\tsubmitOutlineColor?: OutlineColorOption\n\tcancelOutline?: boolean\n\tcancelOutlineColor?: ColorOption\n\tbuttonTextcase?: 'uppercase' | 'lowercase' | 'capitalize' | 'normal-case'\n\tbuttonShape?: 'default' | 'rounded' | 'pill'\n\tbuttonIsBold?: boolean\n}\n\n// Form Props Interface\nexport interface FormProps extends React.HTMLAttributes<HTMLFormElement>, CommonFormProps {\n\tmethod?: 'GET' | 'POST' | 'dialog' | string\n\tenctype?: 'application/x-www-form-urlencoded' | 'multipart/form-data' | 'text/plain' | string\n}\n\n// Fieldset Props Interface\nexport interface FieldsetProps extends React.FieldsetHTMLAttributes<HTMLFieldSetElement> {\n\tlegendText?: string\n\tdisabled?: boolean\n\tlegendAlign?: AlignOption\n\tlegendSize?: SizeOption\n\thasBorder?: boolean\n\tisBold?: boolean\n\tspacing?: '4' | '8'\n\tclassName?: string\n}\n\n// Legend Props Interface\nexport interface LegendProps extends React.HTMLProps<HTMLLegendElement> {\n\ttext: string\n\tisBold?: boolean\n\talign?: AlignOption\n\tlegendSize?: SizeOption\n}\n\n// Register Form Props Interface\nexport interface RegisterFormProps extends CommonFormProps {\n\tlegendText: string\n\tlegendisBold?: boolean\n\tlegendAlign?: AlignOption\n\tlegendSize?: SizeOption\n\tspacing?: '4' | '8'\n\thasBorder?: boolean\n\tbuttonOutline?: boolean\n\tuserLabel: string\n\tuserAutocomplete?: 'username' | 'email' | 'username email'\n\tuserPlaceholder?: string\n\tpasswordLabel: string\n\tpasswordPlaceholder?: string\n\tpasswordPattern?: string\n\tpasswordTitle?: string\n\tconfirmLabel: string\n\tconfirmPlaceholder?: string\n\tconfirmTitle?: string\n\tinputsLayout?: 'col' | 'row'\n\tinputsSize?: 'md' | 'lg' | 'xl'\n\tinputsRounded?: 'none' | 'md' | 'lg' | 'full'\n\tcheckLabel: string\n\tcheckLabelIsBold?: boolean\n\tcheckRounded?: 'none' | 'full'\n\tcheckHint?: React.ReactNode\n}\n"]}
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { twMerge } from "tailwind-merge";
3
+ import { Figure } from "..";
4
+ var getCaption = function (name, caption) {
5
+ return caption ? name : "";
6
+ };
7
+ var Gallery = function (_a) {
8
+ var _b = _a.className, className = _b === void 0 ? "" : _b, aspect = _a.aspect, data = _a.data, _c = _a.caption, caption = _c === void 0 ? true : _c, _d = _a.preloadImages, preloadImages = _d === void 0 ? false : _d, style = _a.style;
9
+ return (_jsx("div", { className: twMerge("gallery group min-w-full grid grid-cols-2 gap-2 md:grid-cols-3 lg:grid-cols-6 bg-slate-800 p-2", className), style: style, children: data.map(function (item, index) { return (_jsx(Figure, { src: item.src, alt: item.name, caption: getCaption(item.name, caption), aspect: aspect, preload: preloadImages }, index)); }) }));
10
+ };
11
+ export default Gallery;
12
+ //# sourceMappingURL=Gallery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Gallery.js","sourceRoot":"","sources":["../../../src/ui/gallery/Gallery.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAG5B,IAAM,UAAU,GAAG,UAAC,IAAY,EAAE,OAAgB;IAChD,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7B,CAAC,CAAC;AAEF,IAAM,OAAO,GAAG,UAAC,EAOF;QANb,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,MAAM,YAAA,EACN,IAAI,UAAA,EACJ,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EACd,qBAAqB,EAArB,aAAa,mBAAG,KAAK,KAAA,EACrB,KAAK,WAAA;IAEL,OAAO,CACL,cACE,SAAS,EAAE,OAAO,CAChB,gGAAgG,EAChG,SAAS,CACV,EACD,KAAK,EAAE,KAAK,YAEX,IAAI,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK,IAAK,OAAA,CACzB,KAAC,MAAM,IACL,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,GAAG,EAAE,IAAI,CAAC,IAAI,EACd,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAEvC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,IAFjB,KAAK,CAGV,CACH,EAT0B,CAS1B,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,OAAO,CAAC","sourcesContent":["import React from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { Figure } from \"..\";\nimport { GalleryProps } from \"./types\";\n\nconst getCaption = (name: string, caption: boolean): string => {\n return caption ? name : \"\";\n};\n\nconst Gallery = ({\n className = \"\",\n aspect,\n data,\n caption = true,\n preloadImages = false,\n style,\n}: GalleryProps) => {\n return (\n <div\n className={twMerge(\n `gallery group min-w-full grid grid-cols-2 gap-2 md:grid-cols-3 lg:grid-cols-6 bg-slate-800 p-2`,\n className\n )}\n style={style}\n >\n {data.map((item, index) => (\n <Figure\n src={item.src}\n alt={item.name}\n caption={getCaption(item.name, caption)}\n key={index}\n aspect={aspect}\n preload={preloadImages}\n />\n ))}\n </div>\n );\n};\n\nexport default Gallery;\n"]}
@@ -0,0 +1,2 @@
1
+ export { default as Gallery } from './Gallery';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/gallery/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAA","sourcesContent":["export { default as Gallery } from './Gallery'\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/gallery/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface DataProps {\n name: string;\n src: string;\n}\n\nexport interface GalleryProps extends React.HTMLAttributes<HTMLDivElement> {\n data: DataProps[];\n className?: string;\n style?: React.CSSProperties;\n aspect?: \"landscape\" | \"portrait\" | \"square\" | \"video\" | \"circle\" | \"phone\";\n caption?: boolean;\n preloadImages?: boolean;\n}\n"]}
@@ -0,0 +1,38 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { twMerge } from "tailwind-merge";
3
+ var headingStyles = {
4
+ 1: "h1 text-4xl md:text-5xl lg:text-6xl",
5
+ 2: "h2 text-3xl md:text-4xl lg:text-5xl",
6
+ 3: "h3 text-2xl md:text-3xl lg:text-4xl",
7
+ 4: "h4 text-xl md:text-2xl lg:text-3xl",
8
+ 5: "h5 text-lg md:text-xl lg:text-2xl",
9
+ 6: "h6 text-base md:text-lg lg:text-xl",
10
+ };
11
+ var headingWeights = {
12
+ bold: "font-bold opacity-95",
13
+ semibold: "font-semibold opacity-95",
14
+ medium: "font-medium",
15
+ normal: "font-normal",
16
+ light: "font-light",
17
+ };
18
+ var headingCase = {
19
+ normal: "normal-case",
20
+ capitalize: "capitalize",
21
+ uppercase: "uppercase",
22
+ lowercase: "lowercase",
23
+ };
24
+ var aligns = {
25
+ left: "text-left",
26
+ center: "text-center",
27
+ right: "text-right",
28
+ };
29
+ var getHeadingTag = function (level) {
30
+ return level ? "h".concat(level) : "h1";
31
+ };
32
+ var Heading = function (_a) {
33
+ var _b = _a.level, level = _b === void 0 ? 1 : _b, _c = _a.weight, weight = _c === void 0 ? "semibold" : _c, _d = _a.align, align = _d === void 0 ? "left" : _d, _e = _a.transform, transform = _e === void 0 ? "normal" : _e, children = _a.children, _f = _a.className, className = _f === void 0 ? "" : _f;
34
+ var Tag = getHeadingTag(level);
35
+ return (_jsx(Tag, { className: twMerge("".concat(headingStyles[level], " ").concat(headingWeights[weight], " ").concat(aligns[align], " ").concat(headingCase[transform], " ").concat(className, " mb-[.5em]"), className), role: "heading", children: children }));
36
+ };
37
+ export default Heading;
38
+ //# sourceMappingURL=Heading.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Heading.js","sourceRoot":"","sources":["../../../src/ui/heading/Heading.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAIzC,IAAM,aAAa,GAAG;IACpB,CAAC,EAAE,qCAAqC;IACxC,CAAC,EAAE,qCAAqC;IACxC,CAAC,EAAE,qCAAqC;IACxC,CAAC,EAAE,oCAAoC;IACvC,CAAC,EAAE,mCAAmC;IACtC,CAAC,EAAE,oCAAoC;CACxC,CAAC;AAEF,IAAM,cAAc,GAAG;IACrB,IAAI,EAAE,sBAAsB;IAC5B,QAAQ,EAAE,0BAA0B;IACpC,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF,IAAM,WAAW,GAAG;IAClB,MAAM,EAAE,aAAa;IACrB,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;CACvB,CAAC;AAEF,IAAM,MAAM,GAAG;IACb,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF,IAAM,aAAa,GAAG,UAAC,KAA4B;IACjD,OAAO,KAAK,CAAC,CAAC,CAAC,WAAI,KAAK,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACpC,CAAC,CAAC;AAEF,IAAM,OAAO,GAAG,UAAC,EAOF;QANb,aAAS,EAAT,KAAK,mBAAG,CAAC,KAAA,EACT,cAAmB,EAAnB,MAAM,mBAAG,UAAU,KAAA,EACnB,aAAc,EAAd,KAAK,mBAAG,MAAM,KAAA,EACd,iBAAoB,EAApB,SAAS,mBAAG,QAAQ,KAAA,EACpB,QAAQ,cAAA,EACR,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA;IAEd,IAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAEjC,OAAO,CACL,KAAC,GAAG,IACF,SAAS,EAAE,OAAO,CAChB,UAAG,aAAa,CAAC,KAAK,CAAC,cAAI,cAAc,CAAC,MAAM,CAAC,cAAI,MAAM,CAAC,KAAK,CAAC,cAAI,WAAW,CAAC,SAAS,CAAC,cAAI,SAAS,eAAY,EACrH,SAAS,CACV,EACD,IAAI,EAAC,SAAS,YAEb,QAAQ,GACL,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,OAAO,CAAC","sourcesContent":["import React, { JSX } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { HeadingProps } from \"./types\";\n\nconst headingStyles = {\n 1: \"h1 text-4xl md:text-5xl lg:text-6xl\",\n 2: \"h2 text-3xl md:text-4xl lg:text-5xl\",\n 3: \"h3 text-2xl md:text-3xl lg:text-4xl\",\n 4: \"h4 text-xl md:text-2xl lg:text-3xl\",\n 5: \"h5 text-lg md:text-xl lg:text-2xl\",\n 6: \"h6 text-base md:text-lg lg:text-xl\",\n};\n\nconst headingWeights = {\n bold: \"font-bold opacity-95\",\n semibold: \"font-semibold opacity-95\",\n medium: \"font-medium\",\n normal: \"font-normal\",\n light: \"font-light\",\n};\n\nconst headingCase = {\n normal: \"normal-case\",\n capitalize: \"capitalize\",\n uppercase: \"uppercase\",\n lowercase: \"lowercase\",\n};\n\nconst aligns = {\n left: \"text-left\",\n center: \"text-center\",\n right: \"text-right\",\n};\n\nconst getHeadingTag = (level: HeadingProps[\"level\"]): keyof JSX.IntrinsicElements => {\n return level ? `h${level}` : \"h1\";\n};\n\nconst Heading = ({\n level = 1,\n weight = \"semibold\",\n align = \"left\",\n transform = \"normal\",\n children,\n className = \"\",\n}: HeadingProps) => {\n const Tag = getHeadingTag(level);\n\n return (\n <Tag\n className={twMerge(\n `${headingStyles[level]} ${headingWeights[weight]} ${aligns[align]} ${headingCase[transform]} ${className} mb-[.5em]`,\n className\n )}\n role=\"heading\"\n >\n {children}\n </Tag>\n );\n};\n\nexport default Heading;\n"]}
@@ -0,0 +1,2 @@
1
+ export { default as Heading } from './Heading';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/heading/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAA","sourcesContent":["export { default as Heading } from './Heading'\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/heading/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface HeadingProps {\n\tlevel?: 1 | 2 | 3 | 4 | 5 | 6\n\tweight?: 'light' | 'normal' | 'medium' | 'semibold' | 'bold'\n\talign?: 'left' | 'center' | 'right'\n\ttransform?: 'normal' | 'capitalize' | 'uppercase' | 'lowercase'\n\tchildren: React.ReactNode\n\tclassName?: string\n\tstyle?: React.CSSProperties\n}\n"]}
@@ -0,0 +1,72 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useState, useMemo } from "react";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { Heading } from "..";
6
+ var randomImageEndpoint = "https://loremflickr.com";
7
+ var defaultCategoryTags = "abstract,nature,texture,pattern";
8
+ var themeClasses = {
9
+ responsive: "bg-white text-dark dark:bg-black dark:text-light",
10
+ dark: "dark bg-black text-light",
11
+ light: "bg-white text-dark",
12
+ };
13
+ var alignClasses = {
14
+ left: "text-left",
15
+ center: "text-center",
16
+ right: "text-right",
17
+ };
18
+ var layoutClasses = {
19
+ col: "grid-cols-1",
20
+ row: "grid-cols-1 md:grid-cols-2",
21
+ };
22
+ var grayscaleClasses = {
23
+ none: "",
24
+ grayscale: "grayscale",
25
+ sepia: "sepia",
26
+ };
27
+ var aspectRatios = {
28
+ auto: "aspect-auto",
29
+ square: "aspect-square",
30
+ video: "aspect-video",
31
+ landscape: "aspect-[4/3]",
32
+ };
33
+ var dimensions = {
34
+ auto: { width: 1200, height: 800 },
35
+ square: { width: 800, height: 800 },
36
+ video: { width: 1280, height: 720 },
37
+ landscape: { width: 1200, height: 900 },
38
+ };
39
+ var Hero = function (_a) {
40
+ var title = _a.title, body = _a.body, _b = _a.align, align = _b === void 0 ? "center" : _b, _c = _a.layout, layout = _c === void 0 ? "col" : _c, _d = _a.aspectRatio, aspectRatio = _d === void 0 ? "auto" : _d, _e = _a.titleLevel, titleLevel = _e === void 0 ? 1 : _e, titleTransform = _a.titleTransform, titleWeight = _a.titleWeight, _f = _a.theme, theme = _f === void 0 ? "responsive" : _f, bgImage = _a.bgImage, bgVideo = _a.bgVideo, bgVideoPoster = _a.bgVideoPoster, _g = _a.randomImage, randomImage = _g === void 0 ? false : _g, _h = _a.categoryTags, categoryTags = _h === void 0 ? defaultCategoryTags : _h, _j = _a.bgBlur, bgBlur = _j === void 0 ? false : _j, _k = _a.bgGrayscale, bgGrayscale = _k === void 0 ? "none" : _k, children = _a.children, _l = _a.className, className = _l === void 0 ? "" : _l, style = _a.style;
41
+ var _m = useState(), bgImageStyle = _m[0], setBgImageStyle = _m[1];
42
+ var _o = useState(), bgVideoSrc = _o[0], setBgVideoSrc = _o[1];
43
+ var generatedImage = useMemo(function () {
44
+ if (!randomImage)
45
+ return null;
46
+ var _a = dimensions[aspectRatio] || dimensions.auto, width = _a.width, height = _a.height;
47
+ return {
48
+ url: "".concat(randomImageEndpoint, "/").concat(width, "/").concat(height, "/").concat(categoryTags || defaultCategoryTags, "?random=").concat(Date.now()),
49
+ width: width,
50
+ height: height,
51
+ };
52
+ }, [randomImage, categoryTags, aspectRatio]);
53
+ useEffect(function () {
54
+ var finalImage = randomImage ? generatedImage === null || generatedImage === void 0 ? void 0 : generatedImage.url : bgImage;
55
+ if (finalImage) {
56
+ setBgImageStyle({
57
+ backgroundImage: "url(".concat(finalImage, ")"),
58
+ });
59
+ }
60
+ else {
61
+ setBgImageStyle(null);
62
+ }
63
+ }, [bgImage, generatedImage, randomImage]);
64
+ useEffect(function () {
65
+ if (bgVideo) {
66
+ setBgVideoSrc(bgVideo);
67
+ }
68
+ }, [bgVideo]);
69
+ return (_jsxs("div", { className: twMerge("hero relative overflow-hidden grid justify-between ".concat(aspectRatios[aspectRatio], " ").concat(layoutClasses[layout], " gap-x-4 gap-y-8 px-4 py-5 ").concat(themeClasses[theme]), className), style: style, children: [bgImageStyle ? (_jsx("div", { className: "bg-cover bg-no-repeat bg-center absolute inset-0 ".concat(bgBlur ? "blur-sm" : "", " ").concat(grayscaleClasses[bgGrayscale]), style: bgImageStyle })) : null, bgVideoSrc ? (_jsx("video", { className: "absolute inset-0 h-full w-full object-cover ".concat(bgBlur ? "blur-sm" : "", " ").concat(grayscaleClasses[bgGrayscale]), src: bgVideoSrc, poster: bgVideoPoster, loop: true, autoPlay: true, muted: true, controls: false, preload: "auto" })) : null, _jsxs("div", { className: "max-w-xl relative mx-auto z-10 w-full", children: [_jsx(Heading, { level: titleLevel, align: align, transform: titleTransform, weight: titleWeight, className: "mb-6 drop-shadow-lg", children: title }), body ? _jsx("div", { className: alignClasses[align], children: body }) : ""] }), children ? (_jsx("div", { className: "max-w-xl flex items-center ".concat(layout === "col" ? "mx-auto" : ""), children: children })) : null] }));
70
+ };
71
+ export default Hero;
72
+ //# sourceMappingURL=Hero.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Hero.js","sourceRoot":"","sources":["../../../src/ui/hero/Hero.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\n\nimport React, { useEffect, useState, useMemo } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { HeroProps } from \"./types\";\n\nimport { Heading } from \"..\";\n\nconst randomImageEndpoint = \"https://loremflickr.com\";\n\nconst defaultCategoryTags = \"abstract,nature,texture,pattern\";\n\nconst themeClasses = {\n responsive: \"bg-white text-dark dark:bg-black dark:text-light\",\n dark: \"dark bg-black text-light\",\n light: \"bg-white text-dark\",\n};\n\nconst alignClasses = {\n left: \"text-left\",\n center: \"text-center\",\n right: \"text-right\",\n};\n\nconst layoutClasses = {\n col: \"grid-cols-1\",\n row: \"grid-cols-1 md:grid-cols-2\",\n};\n\nconst grayscaleClasses = {\n none: \"\",\n grayscale: \"grayscale\",\n sepia: \"sepia\",\n};\n\nconst aspectRatios = {\n auto: \"aspect-auto\",\n square: \"aspect-square\",\n video: \"aspect-video\",\n landscape: \"aspect-[4/3]\",\n};\n\nconst dimensions = {\n auto: { width: 1200, height: 800 },\n square: { width: 800, height: 800 },\n video: { width: 1280, height: 720 },\n landscape: { width: 1200, height: 900 },\n};\n\nconst Hero = ({\n title,\n body,\n align = \"center\",\n layout = \"col\",\n aspectRatio = \"auto\",\n titleLevel = 1,\n titleTransform,\n titleWeight,\n theme = \"responsive\",\n bgImage,\n bgVideo,\n bgVideoPoster,\n randomImage = false,\n categoryTags = defaultCategoryTags,\n bgBlur = false,\n bgGrayscale = \"none\",\n children,\n className = \"\",\n style,\n}: HeroProps) => {\n const [bgImageStyle, setBgImageStyle] = useState<any | null>();\n const [bgVideoSrc, setBgVideoSrc] = useState<any | null>();\n\n const generatedImage = useMemo(() => {\n if (!randomImage) return null;\n\n const { width, height } = dimensions[aspectRatio] || dimensions.auto;\n\n return {\n url: `${randomImageEndpoint}/${width}/${height}/${\n categoryTags || defaultCategoryTags\n }?random=${Date.now()}`,\n width,\n height,\n };\n }, [randomImage, categoryTags, aspectRatio]);\n\n useEffect(() => {\n const finalImage = randomImage ? generatedImage?.url : bgImage;\n if (finalImage) {\n setBgImageStyle({\n backgroundImage: `url(${finalImage})`,\n });\n } else {\n setBgImageStyle(null);\n }\n }, [bgImage, generatedImage, randomImage]);\n\n useEffect(() => {\n if (bgVideo) {\n setBgVideoSrc(bgVideo);\n }\n }, [bgVideo]);\n\n return (\n <div\n className={twMerge(\n `hero relative overflow-hidden grid justify-between ${aspectRatios[aspectRatio]} ${layoutClasses[layout]} gap-x-4 gap-y-8 px-4 py-5 ${themeClasses[theme]}`,\n className\n )}\n style={style}\n >\n {bgImageStyle ? (\n <div\n className={`bg-cover bg-no-repeat bg-center absolute inset-0 ${bgBlur ? \"blur-sm\" : \"\"} ${\n grayscaleClasses[bgGrayscale]\n }`}\n style={bgImageStyle}\n ></div>\n ) : null}\n {bgVideoSrc ? (\n <video\n className={`absolute inset-0 h-full w-full object-cover ${bgBlur ? \"blur-sm\" : \"\"} ${\n grayscaleClasses[bgGrayscale]\n }`}\n src={bgVideoSrc}\n poster={bgVideoPoster}\n loop\n autoPlay\n muted\n controls={false}\n preload=\"auto\"\n />\n ) : null}\n\n <div className=\"max-w-xl relative mx-auto z-10 w-full\">\n <Heading\n level={titleLevel}\n align={align}\n transform={titleTransform}\n weight={titleWeight}\n className=\"mb-6 drop-shadow-lg\"\n >\n {title}\n </Heading>\n {body ? <div className={alignClasses[align]}>{body}</div> : \"\"}\n </div>\n {children ? (\n <div className={`max-w-xl flex items-center ${layout === \"col\" ? \"mx-auto\" : \"\"}`}>\n {children}\n </div>\n ) : null}\n </div>\n );\n};\n\nexport default Hero;\n"]}
@@ -0,0 +1,2 @@
1
+ export { default as Hero } from './Hero';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/hero/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAA","sourcesContent":["export { default as Hero } from './Hero'\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/hero/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface HeroProps {\n title: string;\n body?: React.ReactNode;\n theme?: \"dark\" | \"light\" | \"responsive\";\n align?: \"left\" | \"center\" | \"right\";\n layout?: \"col\" | \"row\";\n aspectRatio?: \"auto\" | \"square\" | \"landscape\" | \"video\";\n titleLevel?: 1 | 2 | 3 | 4;\n titleWeight?: \"light\" | \"normal\" | \"medium\" | \"semibold\" | \"bold\";\n titleTransform?: \"normal\" | \"capitalize\" | \"uppercase\" | \"lowercase\";\n bgImage?: string;\n bgVideo?: string;\n bgVideoPoster?: string;\n bgBlur?: boolean;\n bgGrayscale?: \"none\" | \"grayscale\" | \"sepia\";\n randomImage?: boolean;\n categoryTags?: string;\n children?: React.ReactNode;\n className?: string;\n style?: React.CSSProperties;\n}\n"]}
@@ -0,0 +1,37 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { twMerge } from "tailwind-merge";
3
+ var flipClasses = {
4
+ flipX: "scale-x-[-1]",
5
+ flipY: "scale-y-[-1]",
6
+ };
7
+ var rotateClasses = {
8
+ none: "",
9
+ 45: "rotate-45",
10
+ 90: "rotate-90",
11
+ 135: "rotate-[135deg]",
12
+ 180: "rotate-180",
13
+ 225: "rotate-[225deg]",
14
+ 270: "-rotate-90",
15
+ 315: "rotate-[315deg]",
16
+ };
17
+ var baseUrl = "https://img.icons8.com";
18
+ var Icon = function (_a) {
19
+ var iconName = _a.iconName, iconId = _a.iconId, altText = _a.altText, _b = _a.iconSize, iconSize = _b === void 0 ? 40 : _b, iconColor = _a.iconColor, iconStyle = _a.iconStyle, _c = _a.flipX, flipX = _c === void 0 ? false : _c, _d = _a.flipY, flipY = _d === void 0 ? false : _d, _e = _a.rotate, rotate = _e === void 0 ? "none" : _e, className = _a.className, style = _a.style;
20
+ var colorPath = iconStyle ? "".concat(iconStyle, "/") : iconColor ? "".concat(iconColor.replace("#", "")) : "";
21
+ var queryParams = new URLSearchParams({
22
+ size: iconSize.toString(),
23
+ id: iconId || "4516",
24
+ format: "png",
25
+ color: colorPath || "000000",
26
+ });
27
+ var iconUrl = "";
28
+ if (iconName) {
29
+ iconUrl = "".concat(baseUrl, "/").concat(colorPath, "/").concat(iconSize, "/").concat(iconName, ".png");
30
+ }
31
+ else {
32
+ iconUrl = "".concat(baseUrl, "?").concat(queryParams.toString());
33
+ }
34
+ return (_jsx("img", { src: iconUrl, alt: altText || iconName || "Icon ID: ".concat(iconId), width: iconSize, height: iconSize, className: twMerge("icon ".concat(flipX ? flipClasses.flipX : "", " ").concat(flipY ? flipClasses.flipY : "", " ").concat(rotateClasses[rotate]), className), style: style }));
35
+ };
36
+ export default Icon;
37
+ //# sourceMappingURL=Icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../../src/ui/icon/Icon.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC,IAAM,WAAW,GAAG;IAClB,KAAK,EAAE,cAAc;IACrB,KAAK,EAAE,cAAc;CACtB,CAAC;AAEF,IAAM,aAAa,GAAG;IACpB,IAAI,EAAE,EAAE;IACR,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,WAAW;IACf,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,iBAAiB;CACvB,CAAC;AAEF,IAAM,OAAO,GAAG,wBAAwB,CAAC;AAEzC,IAAM,IAAI,GAAG,UAAC,EAYF;QAXV,QAAQ,cAAA,EACR,MAAM,YAAA,EACN,OAAO,aAAA,EACP,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EACb,SAAS,eAAA,EACT,SAAS,eAAA,EACT,aAAa,EAAb,KAAK,mBAAG,KAAK,KAAA,EACb,aAAa,EAAb,KAAK,mBAAG,KAAK,KAAA,EACb,cAAe,EAAf,MAAM,mBAAG,MAAM,KAAA,EACf,SAAS,eAAA,EACT,KAAK,WAAA;IAEL,IAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,UAAG,SAAS,MAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEjG,IAAM,WAAW,GAAG,IAAI,eAAe,CAAC;QACtC,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE;QACzB,EAAE,EAAE,MAAM,IAAI,MAAM;QACpB,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,SAAS,IAAI,QAAQ;KAC7B,CAAC,CAAC;IAEH,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,GAAG,UAAG,OAAO,cAAI,SAAS,cAAI,QAAQ,cAAI,QAAQ,SAAM,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,UAAG,OAAO,cAAI,WAAW,CAAC,QAAQ,EAAE,CAAE,CAAC;IACnD,CAAC;IAED,OAAO,CACL,cACE,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,OAAO,IAAI,QAAQ,IAAI,mBAAY,MAAM,CAAE,EAChD,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,QAAQ,EAChB,SAAS,EAAE,OAAO,CAChB,eAAQ,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cAAI,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cACtE,aAAa,CAAC,MAAM,CAAC,CACrB,EACF,SAAS,CACV,EACD,KAAK,EAAE,KAAK,GACZ,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,IAAI,CAAC","sourcesContent":["import React from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { IconProps } from \"./types\";\n\nconst flipClasses = {\n flipX: \"scale-x-[-1]\",\n flipY: \"scale-y-[-1]\",\n};\n\nconst rotateClasses = {\n none: \"\",\n 45: \"rotate-45\",\n 90: \"rotate-90\",\n 135: \"rotate-[135deg]\",\n 180: \"rotate-180\",\n 225: \"rotate-[225deg]\",\n 270: \"-rotate-90\",\n 315: \"rotate-[315deg]\",\n};\n\nconst baseUrl = \"https://img.icons8.com\";\n\nconst Icon = ({\n iconName,\n iconId,\n altText,\n iconSize = 40,\n iconColor,\n iconStyle,\n flipX = false,\n flipY = false,\n rotate = \"none\",\n className,\n style,\n}: IconProps) => {\n const colorPath = iconStyle ? `${iconStyle}/` : iconColor ? `${iconColor.replace(\"#\", \"\")}` : \"\";\n\n const queryParams = new URLSearchParams({\n size: iconSize.toString(),\n id: iconId || \"4516\",\n format: \"png\",\n color: colorPath || \"000000\",\n });\n\n let iconUrl = \"\";\n if (iconName) {\n iconUrl = `${baseUrl}/${colorPath}/${iconSize}/${iconName}.png`;\n } else {\n iconUrl = `${baseUrl}?${queryParams.toString()}`;\n }\n\n return (\n <img\n src={iconUrl}\n alt={altText || iconName || `Icon ID: ${iconId}`}\n width={iconSize}\n height={iconSize}\n className={twMerge(\n `icon ${flipX ? flipClasses.flipX : \"\"} ${flipY ? flipClasses.flipY : \"\"} ${\n rotateClasses[rotate]\n }`,\n className\n )}\n style={style}\n />\n );\n};\n\nexport default Icon;\n"]}
@@ -0,0 +1,2 @@
1
+ export { default as Icon } from './Icon';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/icon/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAA","sourcesContent":["export { default as Icon } from './Icon'\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/icon/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface IconProps {\n\ticonName?: string\n\ticonId?: string\n\ticonSize?: number\n\ticonColor?: string\n\ticonStyle?: 'color' | 'fluency'\n\tflipX?: boolean\n\tflipY?: boolean\n\trotate?: 'none' | '45' | '90' | '135' | '180' | '225' | '270' | '315'\n\taltText?: string\n\tclassName?: string\n\tstyle?: React.CSSProperties\n}\n"]}
package/lib/index.js ADDED
@@ -0,0 +1,52 @@
1
+ export { Accordion, AccordionItem } from "./accordion";
2
+ export { Alert } from "./alert";
3
+ export { Autocomplete } from "./autocomplete";
4
+ export { Badge } from "./badge";
5
+ export { Blockquote } from "./blockquote";
6
+ export { Breadcrumbs } from "./breadcrumbs";
7
+ export { Button, CloseButton } from "./button";
8
+ export { ButtonGroup } from "./buttongroup";
9
+ export { Card, CardHeader, CardBody, CardImage, CardFooter } from "./card";
10
+ export { Carousel } from "./carousel";
11
+ export { Checkbox } from "./checkbox";
12
+ export { Clock } from "./clock";
13
+ export { Codeblock } from "./codeblock";
14
+ export { Counter } from "./counter";
15
+ export { DataTable } from "./datatable";
16
+ export { Dialog } from "./dialog";
17
+ export { Dropdown } from "./dropdown";
18
+ export { Figure } from "./figure";
19
+ export { FileUpload } from "./fileupload";
20
+ export { Form, Fieldset, RegisterForm } from "./form";
21
+ export { Gallery } from "./gallery";
22
+ export { Heading } from "./heading";
23
+ export { Hero } from "./hero";
24
+ export { Icon } from "./icon";
25
+ export { Input } from "./input";
26
+ export { Label } from "./label";
27
+ export { Loading, Spinner } from "./loading";
28
+ export { Modal } from "./modal";
29
+ export { NavBar } from "./navbar";
30
+ export { Pagination } from "./pagination";
31
+ export { PasswordInput } from "./passwordinput";
32
+ export { Pictogram } from "./pictogram";
33
+ export { PlaceHolder } from "./placeholder";
34
+ export { Progress } from "./progress";
35
+ export { RadioGroup } from "./radiogroup";
36
+ export { RangeInput } from "./rangeinput";
37
+ export { Ratings } from "./ratings";
38
+ export { Tabs } from "./tabs";
39
+ export { SearchInput } from "./searchinput";
40
+ export { Select } from "./select";
41
+ export { Sidebar } from "./sidebar";
42
+ export { SocialShare, FacebookButton, RedditButton, LinkedinButton, PinterestButton, SlackButton, TelegramButton, WhatsAppButton, XButton, BlueskyButton, } from "./socialshare";
43
+ export { StatBar } from "./statbar";
44
+ export { Switch } from "./switch";
45
+ export { TextInput } from "./textinput";
46
+ export { TextArea } from "./textarea";
47
+ export { Toast } from "./toast";
48
+ export { Ticker } from "./ticker";
49
+ export { TwitterEmbed } from "./twitterembed";
50
+ export { VideoPlayer, Video } from "./videoplayer";
51
+ export { YoutubeEmbed } from "./youtubeembed";
52
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"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","sourcesContent":["export { Accordion, AccordionItem } from \"./accordion\";\nexport { Alert } from \"./alert\";\nexport { Autocomplete } from \"./autocomplete\";\nexport { Badge } from \"./badge\";\nexport { Blockquote } from \"./blockquote\";\nexport { Breadcrumbs } from \"./breadcrumbs\";\nexport { Button, CloseButton } from \"./button\";\nexport { ButtonGroup } from \"./buttongroup\";\nexport { Card, CardHeader, CardBody, CardImage, CardFooter } from \"./card\";\nexport { Carousel } from \"./carousel\";\nexport { Checkbox } from \"./checkbox\";\nexport { Clock } from \"./clock\";\nexport { Codeblock } from \"./codeblock\";\nexport { Counter } from \"./counter\";\nexport { DataTable } from \"./datatable\";\nexport { Dialog } from \"./dialog\";\nexport { Dropdown } from \"./dropdown\";\nexport { Figure } from \"./figure\";\nexport { FileUpload } from \"./fileupload\";\nexport { Form, Fieldset, RegisterForm } from \"./form\";\nexport { Gallery } from \"./gallery\";\nexport { Heading } from \"./heading\";\nexport { Hero } from \"./hero\";\nexport { Icon } from \"./icon\";\nexport { Input } from \"./input\";\nexport { Label } from \"./label\";\nexport { Loading, Spinner } from \"./loading\";\nexport { Modal } from \"./modal\";\nexport { NavBar } from \"./navbar\";\nexport { Pagination } from \"./pagination\";\nexport { PasswordInput } from \"./passwordinput\";\nexport { Pictogram } from \"./pictogram\";\nexport { PlaceHolder } from \"./placeholder\";\nexport { Progress } from \"./progress\";\nexport { RadioGroup } from \"./radiogroup\";\nexport { RangeInput } from \"./rangeinput\";\nexport { Ratings } from \"./ratings\";\nexport { Tabs } from \"./tabs\";\nexport { SearchInput } from \"./searchinput\";\nexport { Select } from \"./select\";\nexport { Sidebar } from \"./sidebar\";\nexport {\n SocialShare,\n FacebookButton,\n RedditButton,\n LinkedinButton,\n PinterestButton,\n SlackButton,\n TelegramButton,\n WhatsAppButton,\n XButton,\n BlueskyButton,\n} from \"./socialshare\";\nexport { StatBar } from \"./statbar\";\nexport { Switch } from \"./switch\";\nexport { TextInput } from \"./textinput\";\nexport { TextArea } from \"./textarea\";\nexport { Toast } from \"./toast\";\nexport { Ticker } from \"./ticker\";\nexport { TwitterEmbed } from \"./twitterembed\";\nexport { VideoPlayer, Video } from \"./videoplayer\";\nexport { YoutubeEmbed } from \"./youtubeembed\";\n"]}
@@ -0,0 +1,37 @@
1
+ "use client";
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useMemo } from "react";
4
+ import { twMerge } from "tailwind-merge";
5
+ import { forwardRef } from "react";
6
+ var sizes = {
7
+ sm: "text-base",
8
+ md: "text-lg",
9
+ lg: "text-xl",
10
+ xl: "text-2xl",
11
+ };
12
+ var darkthemeClasses = "dark:bg-dark dark:text-light";
13
+ var typeClasses = function (type) {
14
+ return type === "checkbox"
15
+ ? "form-checkbox rounded-md w-[1.5em] h-[1.5em] cursor-pointer !check:dark:bg-dark !text-info border-neutral border-2"
16
+ : type === "radio"
17
+ ? "form-radio w-[1.5em] h-[1.5em] cursor-pointer bg-transparent !text-info border-2"
18
+ : type === "color"
19
+ ? "form-color cursor-pointer aspect-square w-[2em] h-[2em] border-neutral border-2"
20
+ : type === "number"
21
+ ? "form-input text-center ".concat(darkthemeClasses, " [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none me-4")
22
+ : type === "file"
23
+ ? "hidden"
24
+ : type === "range"
25
+ ? "appearance-none h-[.5em] w-full [&&::-webkit-slider-thumb]:cursor-grab [&&::-webkit-slider-thumb]:appearance-none [&&::-webkit-slider-thumb]:h-[1em] [&&::-webkit-slider-thumb]:w-[1em] [&&::-webkit-slider-thumb]:bg-current"
26
+ : "form-input w-full border-neutral ".concat(darkthemeClasses, " read-only:cursor-default read-only:bg-transparent read-only:!border-none");
27
+ };
28
+ var styles = {
29
+ required: "!bg-[var(--highlight-color)] !text-dark",
30
+ };
31
+ var Input = forwardRef(function Input(props, ref) {
32
+ var _a = props.type, type = _a === void 0 ? "text" : _a, _b = props.size, size = _b === void 0 ? "md" : _b, _c = props.autocomplete, autocomplete = _c === void 0 ? "off" : _c, _d = props.name, name = _d === void 0 ? "control-name" : _d, id = props.id, _e = props.className, className = _e === void 0 ? "" : _e, style = props.style, _f = props.rounded, rounded = _f === void 0 ? "md" : _f, _g = props.required, required = _g === void 0 ? false : _g, _h = props.readonly, readonly = _h === void 0 ? false : _h, _j = props.disabled, disabled = _j === void 0 ? false : _j, _k = props.hint, hint = _k === void 0 ? false : _k, tabindex = props.tabindex, min = props.min, max = props.max, minLength = props.minLength, maxLength = props.maxLength, step = props.step, pattern = props.pattern, title = props.title, value = props.value, defaultChecked = props.defaultChecked, accept = props.accept, multiple = props.multiple, placeholder = props.placeholder, list = props.list, onChange = props.onChange, onFocus = props.onFocus, onBlur = props.onBlur, hidden = props.hidden, ariaLabel = props.ariaLabel, autocorrect = props.autocorrect, spellcheck = props.spellcheck, _l = props.suppressHydrationWarning, suppressHydrationWarning = _l === void 0 ? false : _l;
33
+ var sizeClasses = useMemo(function () { return sizes[size]; }, [size]);
34
+ return (_jsxs(_Fragment, { children: [_jsx("input", { className: twMerge("input ".concat(typeClasses(type), " peer ").concat(sizeClasses, " rounded-").concat(rounded, " font-normal color-scheme:light dark:[color-scheme:dark] focus:outline-none focus-visible:outline-none focus-visible:border-info disabled:bg-neutral disabled:cursor-default disabled:text-dark disabled:border-transparent invalid:!border-warning-dark invalid:dark:!border-warning-light"), className), style: style, type: type, name: name, id: id, autoComplete: autocomplete, required: required, "aria-required": required, hidden: hidden, readOnly: readonly, tabIndex: tabindex, ref: ref, min: min, max: max, minLength: minLength, maxLength: maxLength, step: step, pattern: pattern, title: title, placeholder: placeholder, defaultValue: value, defaultChecked: defaultChecked, accept: accept, multiple: multiple, list: list, disabled: disabled, onChange: onChange, onInput: onChange, onFocus: onFocus, onBlur: onBlur, "data-testid": id || name, "aria-label": ariaLabel, autoCorrect: autocorrect, spellCheck: spellcheck, suppressHydrationWarning: suppressHydrationWarning }), hint && (_jsx("p", { className: "hint text-sm font-normal mt-[.5em] dark:text-light peer-invalid:text-warning-dark peer-invalid:dark:text-warning-light inline-block", children: title }))] }));
35
+ });
36
+ export default Input;
37
+ //# sourceMappingURL=Input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/ui/input/Input.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\n\nimport React, { useMemo } from \"react\";\n\nimport { twMerge } from \"tailwind-merge\";\n\nimport { forwardRef } from \"react\";\n\nimport { InputProps } from \"./types\";\n\nexport type InputRef = HTMLInputElement;\n\nconst sizes = {\n sm: \"text-base\",\n md: \"text-lg\",\n lg: \"text-xl\",\n xl: \"text-2xl\",\n};\n\nconst darkthemeClasses = \"dark:bg-dark dark:text-light\";\n\nconst typeClasses = (type: string) => {\n return type === \"checkbox\"\n ? `form-checkbox rounded-md w-[1.5em] h-[1.5em] cursor-pointer !check:dark:bg-dark !text-info border-neutral border-2`\n : type === \"radio\"\n ? \"form-radio w-[1.5em] h-[1.5em] cursor-pointer bg-transparent !text-info border-2\"\n : type === \"color\"\n ? \"form-color cursor-pointer aspect-square w-[2em] h-[2em] border-neutral border-2\"\n : type === \"number\"\n ? `form-input text-center ${darkthemeClasses} [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none me-4`\n : type === \"file\"\n ? \"hidden\"\n : type === \"range\"\n ? \"appearance-none h-[.5em] w-full [&&::-webkit-slider-thumb]:cursor-grab [&&::-webkit-slider-thumb]:appearance-none [&&::-webkit-slider-thumb]:h-[1em] [&&::-webkit-slider-thumb]:w-[1em] [&&::-webkit-slider-thumb]:bg-current\"\n : `form-input w-full border-neutral ${darkthemeClasses} read-only:cursor-default read-only:bg-transparent read-only:!border-none`;\n};\n\nconst styles = {\n required: \"!bg-[var(--highlight-color)] !text-dark\",\n};\n\nconst Input = forwardRef<InputRef, InputProps>(function Input(props, ref) {\n const {\n type = \"text\",\n size = \"md\",\n autocomplete = \"off\",\n name = \"control-name\",\n id,\n className = \"\",\n style,\n rounded = \"md\",\n required = false,\n readonly = false,\n disabled = false,\n hint = false,\n tabindex,\n min,\n max,\n minLength,\n maxLength,\n step,\n pattern,\n title,\n value,\n defaultChecked,\n accept,\n multiple,\n placeholder,\n list,\n onChange,\n onFocus,\n onBlur,\n hidden,\n ariaLabel,\n autocorrect,\n spellcheck,\n suppressHydrationWarning = false,\n } = props;\n\n const sizeClasses = useMemo(() => sizes[size], [size]);\n\n return (\n <>\n <input\n className={twMerge(\n `input ${typeClasses(\n type\n )} peer ${sizeClasses} rounded-${rounded} font-normal color-scheme:light dark:[color-scheme:dark] focus:outline-none focus-visible:outline-none focus-visible:border-info disabled:bg-neutral disabled:cursor-default disabled:text-dark disabled:border-transparent invalid:!border-warning-dark invalid:dark:!border-warning-light`,\n className\n )}\n style={style}\n type={type}\n name={name}\n id={id}\n autoComplete={autocomplete}\n required={required}\n aria-required={required}\n hidden={hidden}\n readOnly={readonly}\n tabIndex={tabindex}\n ref={ref}\n min={min}\n max={max}\n minLength={minLength}\n maxLength={maxLength}\n step={step}\n pattern={pattern}\n title={title}\n placeholder={placeholder}\n defaultValue={value}\n defaultChecked={defaultChecked}\n accept={accept}\n multiple={multiple}\n list={list}\n disabled={disabled}\n onChange={onChange}\n onInput={onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n data-testid={id || name}\n aria-label={ariaLabel}\n autoCorrect={autocorrect}\n spellCheck={spellcheck}\n suppressHydrationWarning={suppressHydrationWarning}\n />\n {hint && (\n <p className=\"hint text-sm font-normal mt-[.5em] dark:text-light peer-invalid:text-warning-dark peer-invalid:dark:text-warning-light inline-block\">\n {title}\n </p>\n )}\n </>\n );\n});\n\nexport default Input;\n"]}
@@ -0,0 +1,2 @@
1
+ export { default as Input } from './Input';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA","sourcesContent":["export { default as Input } from './Input'\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/input/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface InputProps {\n\tsize?: 'sm' | 'md' | 'lg' | 'xl'\n\ttype?:\n\t\t| 'text'\n\t\t| 'password'\n\t\t| 'number'\n\t\t| 'email'\n\t\t| 'tel'\n\t\t| 'date'\n\t\t| 'datetime-local'\n\t\t| 'checkbox'\n\t\t| 'radio'\n\t\t| 'file'\n\t\t| 'color'\n\t\t| 'range'\n\t\t| 'search'\n\t\t| 'url'\n\t\t| 'time'\n\t\t| 'month'\n\t\t| 'week'\n\tautocomplete?:\n\t\t| 'off'\n\t\t| 'on'\n\t\t| 'name'\n\t\t| 'honorific-prefix'\n\t\t| 'given-name'\n\t\t| 'additional-name'\n\t\t| 'family-name'\n\t\t| 'honorific-suffix'\n\t\t| 'nickname'\n\t\t| 'username'\n\t\t| 'email'\n\t\t| 'username email'\n\t\t| 'new-password'\n\t\t| 'current-password'\n\t\t| 'one-time-code'\n\t\t| 'organization-title'\n\t\t| 'organization'\n\t\t| 'street-address'\n\t\t| 'address-line1'\n\t\t| 'address-line2'\n\t\t| 'address-line3'\n\t\t| 'address-level4'\n\t\t| 'address-level3'\n\t\t| 'address-level2'\n\t\t| 'address-level1'\n\t\t| 'country'\n\t\t| 'country-name'\n\t\t| 'postal-code'\n\t\t| 'cc-name'\n\t\t| 'cc-given-name'\n\t\t| 'cc-additional-name'\n\t\t| 'cc-family-name'\n\t\t| 'cc-number'\n\t\t| 'cc-exp'\n\t\t| 'cc-exp-month'\n\t\t| 'cc-exp-year'\n\t\t| 'cc-csc'\n\t\t| 'cc-type'\n\t\t| 'transaction-currency'\n\t\t| 'transaction-amount'\n\t\t| 'language'\n\t\t| 'bday'\n\t\t| 'bday-day'\n\t\t| 'bday-month'\n\t\t| 'bday-year'\n\t\t| 'sex'\n\t\t| 'url'\n\t\t| 'tel'\n\t\t| string\n\tname?: string\n\tid?: string\n\ttitle?: string\n\tariaLabel?: string\n\tplaceholder?: string\n\tlist?: string\n\tpattern?: string\n\tclassName?: string\n\tstyle?: React.CSSProperties\n\tdisabled?: boolean\n\thint?: boolean\n\thidden?: boolean\n\trequired?: boolean\n\treadonly?: boolean\n\ttabindex?: number\n\tmin?: string | number\n\tmax?: string | number\n\tmaxLength?: number\n\tminLength?: number\n\tstep?: string\n\taccept?: string\n\tmultiple?: boolean\n\tvalue?: number | string\n\tchecked?: boolean\n\tdefaultChecked?: boolean\n\tonChange?: React.ChangeEventHandler<HTMLInputElement>\n\tonInput?: React.ChangeEventHandler<HTMLInputElement>\n\tonFocus?: React.ChangeEventHandler<HTMLInputElement>\n\tonBlur?: React.ChangeEventHandler<HTMLInputElement>\n\tautocorrect?: 'on' | 'off'\n\tspellcheck?: boolean\n\trounded?: 'none' | 'md' | 'lg' | 'full'\n\tsuppressHydrationWarning?: boolean\n}\n"]}
@@ -0,0 +1,36 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useMemo } from "react";
4
+ import { twMerge } from "tailwind-merge";
5
+ var fileClasses = "bg-dark text-light dark:bg-light dark:text-dark rounded-md p-[1em] flex items-center justify-center whitespace-nowrap !w-auto";
6
+ var requiredClasses = "after:text-warning-dark after:dark:text-warning-light after:content-['_*']";
7
+ var sizes = {
8
+ sm: "text-sm",
9
+ md: "text-base",
10
+ lg: "text-lg",
11
+ xl: "text-2xl",
12
+ };
13
+ var layouts = {
14
+ col: "flex flex-col items-start gap-2",
15
+ row: "grid grid-cols-3 items-start gap-4",
16
+ row_reverse: "flex flex-wrap justify-end flex-row-reverse gap-2 items-center",
17
+ };
18
+ var widthClasses = function (type) {
19
+ return type === "checkbox"
20
+ ? "w-auto"
21
+ : type === "radio"
22
+ ? "w-auto"
23
+ : type === "color"
24
+ ? "w-auto"
25
+ : type === "number"
26
+ ? "w-auto"
27
+ : "w-full";
28
+ };
29
+ var Label = function (_a) {
30
+ var forId = _a.forId, _b = _a.size, size = _b === void 0 ? "md" : _b, _c = _a.layout, layout = _c === void 0 ? "col" : _c, label = _a.label, _d = _a.isBold, isBold = _d === void 0 ? true : _d, required = _a.required, _e = _a.type, type = _e === void 0 ? "text" : _e, children = _a.children, _f = _a.className, className = _f === void 0 ? "" : _f, style = _a.style;
31
+ var sizeClasses = useMemo(function () { return sizes[size]; }, [size]);
32
+ var layoutClasses = useMemo(function () { return layouts[layout]; }, [layout]);
33
+ return (_jsxs("label", { className: twMerge("label group cursor-pointer w-full ".concat(sizeClasses, " ").concat(layoutClasses, " ").concat(isBold ? "font-semibold" : "font-nomal", " text-dark dark:text-light ").concat(type), className), "data-testid": "label", htmlFor: forId, style: style, children: [_jsxs("span", { className: "inline-block [&:has(svg)]:w-full ".concat(layout === "row" ? "pt-2" : "", " ").concat(type === "file" ? fileClasses : "", " ").concat(required ? requiredClasses : ""), children: [label, " ", type === "file" && _jsx("span", { className: "sr-only", children: "Upload file icon" })] }), _jsx("div", { className: "".concat(widthClasses(type), " col-span-2 [&:has(input.w-0)]:absolute [&:has(input.password)]:relative"), children: children })] }));
34
+ };
35
+ export default Label;
36
+ //# sourceMappingURL=Label.js.map