trepur_components 2.3.8 → 2.3.9

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 (424) hide show
  1. package/package.json +3 -2
  2. package/src/components/Accordion/Accordion.stories.tsx +23 -100
  3. package/src/components/Accordion/const.tsx +34 -0
  4. package/src/components/Accordion/index.tsx +18 -17
  5. package/src/components/AlertBar/AlertBar.stories.tsx +79 -85
  6. package/src/components/AlertBar/index.tsx +69 -100
  7. package/src/components/Avatar/Avatar.stories.tsx +3 -8
  8. package/src/components/Avatar/index.tsx +31 -31
  9. package/src/components/Breadcrumbs/Breadcrumbs.stories.tsx +17 -34
  10. package/src/components/Breadcrumbs/index.tsx +78 -29
  11. package/src/components/Button/Button.stories.tsx +11 -137
  12. package/src/components/Button/index.tsx +47 -92
  13. package/src/components/Calendar/Calendar.stories.tsx +12 -73
  14. package/src/components/Calendar/index.tsx +54 -34
  15. package/src/components/Card/Card.stories.tsx +3 -64
  16. package/src/components/Card/index.tsx +23 -80
  17. package/src/components/Carousel/Carousel.stories.tsx +32 -439
  18. package/src/components/Carousel/index.tsx +205 -286
  19. package/src/components/Carousel/utils.ts +53 -0
  20. package/src/components/CarouselThumbnail/CarouselThumbnail.stories.tsx +16 -337
  21. package/src/components/CarouselThumbnail/const.ts +17 -0
  22. package/src/components/CarouselThumbnail/index.tsx +92 -216
  23. package/src/components/CarouselThumbnail/utils.ts +87 -0
  24. package/src/components/Checkbox/Checkbox.stories.tsx +12 -19
  25. package/src/components/Checkbox/index.tsx +37 -34
  26. package/src/components/Collapsible/Collapsible.stories.tsx +50 -50
  27. package/src/components/Collapsible/index.tsx +151 -110
  28. package/src/components/Counter/Counter.stories.tsx +10 -9
  29. package/src/components/Counter/index.tsx +81 -25
  30. package/src/components/DetailUpdater/DetailUpdater.stories.tsx +11 -69
  31. package/src/components/DetailUpdater/index.tsx +7 -8
  32. package/src/components/Dialog/Dialog.stories.tsx +13 -78
  33. package/src/components/Dialog/index.tsx +5 -69
  34. package/src/components/Dropdown/Dropdown.stories.tsx +22 -0
  35. package/src/components/Dropdown/index.tsx +117 -0
  36. package/src/components/Dropdown/utils.ts +15 -0
  37. package/src/components/FileUploader/FilePreview.tsx +2 -2
  38. package/src/components/FileUploader/FileUploader.stories.tsx +10 -8
  39. package/src/components/FileUploader/index.tsx +113 -68
  40. package/src/components/Footer/Footer.stories.tsx +38 -50
  41. package/src/components/Footer/index.tsx +84 -36
  42. package/src/components/FooterNav/FooterNav.stories.tsx +14 -104
  43. package/src/components/FooterNav/index.tsx +71 -45
  44. package/src/components/Form/Form.stories.tsx +9 -9
  45. package/src/components/Form/index.tsx +10 -15
  46. package/src/components/Gallery/Gallery.stories.tsx +39 -0
  47. package/src/components/Gallery/index.tsx +31 -0
  48. package/src/components/Greeting/Greeting.stories.tsx +6 -31
  49. package/src/components/Greeting/index.tsx +44 -25
  50. package/src/components/HamburgerIcon/HamburgerIcon.stories.tsx +3 -21
  51. package/src/components/HamburgerIcon/index.tsx +40 -62
  52. package/src/components/Icon/Icon.stories.tsx +30 -11
  53. package/src/components/Icon/index.tsx +28 -20
  54. package/src/components/Image/Image.stories.tsx +5 -75
  55. package/src/components/Image/index.tsx +17 -119
  56. package/src/components/ImageCard/ImageCard.stories.tsx +29 -0
  57. package/src/components/ImageCard/index.tsx +75 -0
  58. package/src/components/Input/Input.stories.tsx +12 -71
  59. package/src/components/Input/index.tsx +107 -98
  60. package/src/components/MenuButton/MenuButton.stories.tsx +5 -5
  61. package/src/components/MenuButton/index.tsx +4 -4
  62. package/src/components/Modal/Modal.stories.tsx +7 -7
  63. package/src/components/Modal/index.tsx +4 -4
  64. package/src/components/Nav/Nav.stories.tsx +80 -0
  65. package/src/components/Nav/index.tsx +171 -0
  66. package/src/components/NavItem/NavItem.stories.tsx +7 -80
  67. package/src/components/NavItem/index.tsx +34 -38
  68. package/src/components/Pill/Pill.stories.tsx +42 -35
  69. package/src/components/Pill/index.tsx +64 -49
  70. package/src/components/Search/Search.stories.tsx +8 -8
  71. package/src/components/Search/index.tsx +3 -3
  72. package/src/components/Select/Select.stories.tsx +5 -5
  73. package/src/components/Select/index.tsx +8 -9
  74. package/src/components/Showcase/Showcase.stories.tsx +3 -3
  75. package/src/components/Showcase/index.tsx +12 -19
  76. package/src/components/SideNav/SideNav.stories.tsx +7 -7
  77. package/src/components/SideNav/index.tsx +2 -2
  78. package/src/components/SocialButton/SocialButton.stories.tsx +11 -11
  79. package/src/components/SocialButton/index.tsx +6 -7
  80. package/src/components/SplitCard/SplitCard.stories.tsx +34 -0
  81. package/src/components/SplitCard/index.tsx +132 -0
  82. package/src/components/Stars/Star.stories.tsx +18 -0
  83. package/src/components/Stars/index.tsx +38 -0
  84. package/src/components/Testimonial/Testimonial.stories.tsx +25 -97
  85. package/src/components/Testimonial/index.tsx +121 -53
  86. package/src/components/TextArea/TextArea.stories.tsx +11 -42
  87. package/src/components/TextArea/index.tsx +104 -95
  88. package/src/components/Timeline/Timeline.stories.tsx +32 -79
  89. package/src/components/Timeline/index.tsx +55 -246
  90. package/src/components/Tubestops/Tubestops.stories.tsx +10 -30
  91. package/src/components/Tubestops/index.tsx +125 -47
  92. package/src/components/Video/Video.stories.tsx +47 -12
  93. package/src/components/Video/assets/example.mp4 +0 -0
  94. package/src/components/Video/assets/example.ogv +0 -0
  95. package/src/components/Video/assets/example.webm +0 -0
  96. package/src/components/Video/index.tsx +83 -36
  97. package/src/components/index.ts +7 -53
  98. package/src/custom.d.ts +14 -0
  99. package/src/documentation/Colours.mdx +33 -33
  100. package/src/documentation/Introduction.mdx +9 -5
  101. package/src/documentation/assets/index.ts +3 -0
  102. package/src/documentation/assets/trepurComponentsLogo.svg +32 -0
  103. package/src/{components → documentation}/typography/Fonts/Fonts.stories.tsx +1 -1
  104. package/src/{components → documentation}/typography/Fonts/Fonts.tsx +20 -21
  105. package/src/styles/global.css +1 -1
  106. package/src/styles/themes/local.css +61 -9
  107. package/src/styles/themes/test.css +28 -0
  108. package/src/utils/screens.ts +1 -1
  109. package/tailwind/colors.ts +53 -385
  110. package/tailwind/preset.ts +4 -0
  111. package/tailwind.config.ts +12 -80
  112. package/archive/theme.ts +0 -39
  113. package/lib/_virtual/react.js +0 -4
  114. package/lib/components/Accordion/Accordion.stories.d.ts +0 -95
  115. package/lib/components/Accordion/index.d.ts +0 -6
  116. package/lib/components/Accordion/index.js +0 -6
  117. package/lib/components/AlertBar/AlertBar.stories.d.ts +0 -163
  118. package/lib/components/AlertBar/index.d.ts +0 -12
  119. package/lib/components/AlertBar/index.js +0 -49
  120. package/lib/components/Avatar/Avatar.stories.d.ts +0 -44
  121. package/lib/components/Avatar/index.d.ts +0 -3
  122. package/lib/components/Breadcrumbs/Breadcrumbs.stories.d.ts +0 -62
  123. package/lib/components/Breadcrumbs/index.d.ts +0 -9
  124. package/lib/components/Breadcrumbs/index.js +0 -12
  125. package/lib/components/BreadcrumbsBordered/BreadcrumbsBordered.stories.d.ts +0 -67
  126. package/lib/components/BreadcrumbsBordered/index.d.ts +0 -6
  127. package/lib/components/BreadcrumbsBordered/index.js +0 -28
  128. package/lib/components/BreadcrumbsItem/BreadcrumbsItem.stories.d.ts +0 -74
  129. package/lib/components/BreadcrumbsItem/index.d.ts +0 -10
  130. package/lib/components/BreadcrumbsItem/index.js +0 -117
  131. package/lib/components/Button/Button.stories.d.ts +0 -192
  132. package/lib/components/Button/index.d.ts +0 -19
  133. package/lib/components/Button/index.js +0 -66
  134. package/lib/components/Calendar/Calendar.stories.d.ts +0 -136
  135. package/lib/components/Calendar/index.d.ts +0 -15
  136. package/lib/components/Calendar/index.js +0 -46
  137. package/lib/components/Calendar/style.css.js +0 -1
  138. package/lib/components/Card/Card.stories.d.ts +0 -108
  139. package/lib/components/Card/index.d.ts +0 -17
  140. package/lib/components/Card/index.js +0 -51
  141. package/lib/components/CardWithTopImage/CardWithTopImage.stories.d.ts +0 -83
  142. package/lib/components/CardWithTopImage/index.d.ts +0 -9
  143. package/lib/components/CardWithTopImage/index.js +0 -28
  144. package/lib/components/Carousel/Carousel.stories.d.ts +0 -562
  145. package/lib/components/Carousel/index.d.ts +0 -77
  146. package/lib/components/Carousel/index.js +0 -248
  147. package/lib/components/CarouselThumbnail/CarouselThumbnail.stories.d.ts +0 -546
  148. package/lib/components/CarouselThumbnail/index.d.ts +0 -50
  149. package/lib/components/CarouselThumbnail/index.js +0 -205
  150. package/lib/components/Checkbox/Checkbox.stories.d.ts +0 -52
  151. package/lib/components/Checkbox/index.d.ts +0 -7
  152. package/lib/components/Checkbox/index.js +0 -31
  153. package/lib/components/Collapsible/Collapsible.stories.d.ts +0 -82
  154. package/lib/components/Collapsible/index.d.ts +0 -12
  155. package/lib/components/Collapsible/index.js +0 -88
  156. package/lib/components/Column/Column.stories.d.ts +0 -116
  157. package/lib/components/Column/index.d.ts +0 -10
  158. package/lib/components/Column/index.js +0 -8
  159. package/lib/components/ComponentWrapper/ComponentWrapper.stories.d.ts +0 -77
  160. package/lib/components/ComponentWrapper/index.d.ts +0 -14
  161. package/lib/components/ComponentWrapper/index.js +0 -27
  162. package/lib/components/Container/Container.stories.d.ts +0 -75
  163. package/lib/components/Container/index.d.ts +0 -7
  164. package/lib/components/Container/index.js +0 -12
  165. package/lib/components/Counter/Counter.stories.d.ts +0 -45
  166. package/lib/components/Counter/index.d.ts +0 -6
  167. package/lib/components/Counter/index.js +0 -31
  168. package/lib/components/DetailUpdater/DetailUpdater.stories.d.ts +0 -104
  169. package/lib/components/DetailUpdater/index.d.ts +0 -18
  170. package/lib/components/DetailUpdater/index.js +0 -63
  171. package/lib/components/Dialog/Dialog.stories.d.ts +0 -145
  172. package/lib/components/Dialog/index.d.ts +0 -12
  173. package/lib/components/Dialog/index.js +0 -78
  174. package/lib/components/DropdownMenu/DropdownMenu.stories.d.ts +0 -76
  175. package/lib/components/DropdownMenu/index.d.ts +0 -14
  176. package/lib/components/DropdownMenu/index.js +0 -27
  177. package/lib/components/DynamicTextSection/DynamicTextSection.stories.d.ts +0 -100
  178. package/lib/components/DynamicTextSection/index.d.ts +0 -11
  179. package/lib/components/DynamicTextSection/index.js +0 -18
  180. package/lib/components/FileUploader/FilePreview.d.ts +0 -8
  181. package/lib/components/FileUploader/FileUploader.stories.d.ts +0 -50
  182. package/lib/components/FileUploader/index.d.ts +0 -9
  183. package/lib/components/FilterItem/FilterItem.stories.d.ts +0 -57
  184. package/lib/components/FilterItem/index.d.ts +0 -8
  185. package/lib/components/FilterItem/index.js +0 -60
  186. package/lib/components/Footer/Footer.stories.d.ts +0 -105
  187. package/lib/components/Footer/index.d.ts +0 -10
  188. package/lib/components/Footer/index.js +0 -36
  189. package/lib/components/FooterNav/FooterNav.stories.d.ts +0 -135
  190. package/lib/components/FooterNav/index.d.ts +0 -13
  191. package/lib/components/FooterNav/index.js +0 -28
  192. package/lib/components/FooterNavItem/FooterNavItem.stories.d.ts +0 -93
  193. package/lib/components/FooterNavItem/index.d.ts +0 -16
  194. package/lib/components/FooterNavItem/index.js +0 -27
  195. package/lib/components/Form/Form.stories.d.ts +0 -117
  196. package/lib/components/Form/index.d.ts +0 -13
  197. package/lib/components/Form/index.js +0 -28
  198. package/lib/components/FyreCard/FyreCard.stories.d.ts +0 -58
  199. package/lib/components/FyreCard/index.d.ts +0 -12
  200. package/lib/components/FyreCard/index.js +0 -27
  201. package/lib/components/Greeting/Greeting.stories.d.ts +0 -83
  202. package/lib/components/Greeting/index.d.ts +0 -8
  203. package/lib/components/Greeting/index.js +0 -13
  204. package/lib/components/HamburgerIcon/HamburgerIcon.stories.d.ts +0 -64
  205. package/lib/components/HamburgerIcon/index.d.ts +0 -7
  206. package/lib/components/HamburgerIcon/index.js +0 -93
  207. package/lib/components/HorizontalLine/HorizontalLine.stories.d.ts +0 -96
  208. package/lib/components/HorizontalLine/index.d.ts +0 -11
  209. package/lib/components/HorizontalLine/index.js +0 -24
  210. package/lib/components/Icon/Icon.stories.d.ts +0 -47
  211. package/lib/components/Icon/index.d.ts +0 -10
  212. package/lib/components/Icon/index.js +0 -15
  213. package/lib/components/IconCard/IconCard.stories.d.ts +0 -51
  214. package/lib/components/IconCard/index.d.ts +0 -13
  215. package/lib/components/IconCard/index.js +0 -27
  216. package/lib/components/Image/Image.stories.d.ts +0 -158
  217. package/lib/components/Image/index.d.ts +0 -15
  218. package/lib/components/Image/index.js +0 -99
  219. package/lib/components/ImageInfo/ImageInfo.stories.d.ts +0 -69
  220. package/lib/components/ImageInfo/index.d.ts +0 -14
  221. package/lib/components/ImageLink/ImageLink.stories.d.ts +0 -63
  222. package/lib/components/ImageLink/index.d.ts +0 -14
  223. package/lib/components/ImageLink/index.js +0 -39
  224. package/lib/components/ImageLinkList/ImageLinkList.stories.d.ts +0 -48
  225. package/lib/components/ImageLinkList/index.d.ts +0 -8
  226. package/lib/components/ImageLinkList/index.js +0 -18
  227. package/lib/components/InformationIcon/InformationIcon.stories.d.ts +0 -54
  228. package/lib/components/InformationIcon/index.d.ts +0 -12
  229. package/lib/components/InformationIcon/index.js +0 -65
  230. package/lib/components/InformationIconBlock/InformationIconBlock.stories.d.ts +0 -55
  231. package/lib/components/InformationIconBlock/index.d.ts +0 -12
  232. package/lib/components/Input/Input.stories.d.ts +0 -114
  233. package/lib/components/Input/index.d.ts +0 -29
  234. package/lib/components/Input/index.js +0 -89
  235. package/lib/components/Jumbotron/Jumbotron.stories.d.ts +0 -48
  236. package/lib/components/Jumbotron/index.d.ts +0 -8
  237. package/lib/components/Jumbotron/index.js +0 -9
  238. package/lib/components/MenuButton/MenuButton.stories.d.ts +0 -76
  239. package/lib/components/MenuButton/index.d.ts +0 -14
  240. package/lib/components/MenuButton/index.js +0 -56
  241. package/lib/components/Modal/Modal.stories.d.ts +0 -67
  242. package/lib/components/Modal/index.d.ts +0 -10
  243. package/lib/components/Modal/index.js +0 -45
  244. package/lib/components/NavItem/NavItem.stories.d.ts +0 -154
  245. package/lib/components/NavItem/index.d.ts +0 -16
  246. package/lib/components/NavItem/index.js +0 -25
  247. package/lib/components/NavOld/NavOld.stories.d.ts +0 -290
  248. package/lib/components/NavOld/StickyNav.d.ts +0 -22
  249. package/lib/components/NavOld/StickyNav.js +0 -135
  250. package/lib/components/NavOld/index.d.ts +0 -26
  251. package/lib/components/NavOld/index.js +0 -187
  252. package/lib/components/NavTwo/Dropdown.d.ts +0 -7
  253. package/lib/components/NavTwo/Dropdown.js +0 -21
  254. package/lib/components/NavTwo/Nav.stories.d.ts +0 -62
  255. package/lib/components/NavTwo/Sidebar.d.ts +0 -7
  256. package/lib/components/NavTwo/Sidebar.js +0 -21
  257. package/lib/components/NavTwo/StickyNav.d.ts +0 -7
  258. package/lib/components/NavTwo/StickyNav.js +0 -20
  259. package/lib/components/NavTwo/index.d.ts +0 -13
  260. package/lib/components/NavTwo/index.js +0 -28
  261. package/lib/components/NewsCard/NewsCard.stories.d.ts +0 -102
  262. package/lib/components/NewsCard/index.d.ts +0 -13
  263. package/lib/components/NewsCard/index.js +0 -26
  264. package/lib/components/Pill/Pill.stories.d.ts +0 -84
  265. package/lib/components/Pill/index.d.ts +0 -8
  266. package/lib/components/Pill/index.js +0 -31
  267. package/lib/components/ProductCard/ProductCard.stories.d.ts +0 -86
  268. package/lib/components/ProductCard/index.d.ts +0 -18
  269. package/lib/components/ProductCard/index.js +0 -69
  270. package/lib/components/ProductCardV2/ProductCardV2.stories.d.ts +0 -75
  271. package/lib/components/ProductCardV2/index.d.ts +0 -21
  272. package/lib/components/ProductCardV2/index.js +0 -67
  273. package/lib/components/Proficiencies/Proficiencies.stories.d.ts +0 -51
  274. package/lib/components/Proficiencies/index.d.ts +0 -12
  275. package/lib/components/Profile/Profile.stories.d.ts +0 -80
  276. package/lib/components/Profile/index.d.ts +0 -17
  277. package/lib/components/Profile/index.js +0 -78
  278. package/lib/components/Row/Row.stories.d.ts +0 -62
  279. package/lib/components/Row/index.d.ts +0 -6
  280. package/lib/components/Row/index.js +0 -9
  281. package/lib/components/Search/Search.stories.d.ts +0 -86
  282. package/lib/components/Search/index.d.ts +0 -12
  283. package/lib/components/Search/index.js +0 -42
  284. package/lib/components/Select/Select.stories.d.ts +0 -56
  285. package/lib/components/Select/index.d.ts +0 -11
  286. package/lib/components/Select/index.js +0 -68
  287. package/lib/components/Showcase/Showcase.stories.d.ts +0 -55
  288. package/lib/components/Showcase/index.d.ts +0 -15
  289. package/lib/components/SideNav/SideNav.stories.d.ts +0 -80
  290. package/lib/components/SideNav/index.d.ts +0 -12
  291. package/lib/components/SocialBlock/SocialBlock.stories.d.ts +0 -101
  292. package/lib/components/SocialBlock/index.d.ts +0 -14
  293. package/lib/components/SocialBlock/index.js +0 -37
  294. package/lib/components/SocialButton/SocialButton.stories.d.ts +0 -130
  295. package/lib/components/SocialButton/index.d.ts +0 -12
  296. package/lib/components/SocialButton/index.js +0 -37
  297. package/lib/components/StarRating/StarRating.stories.d.ts +0 -49
  298. package/lib/components/StarRating/index.d.ts +0 -9
  299. package/lib/components/StarRating/index.js +0 -47
  300. package/lib/components/Testimonial/Testimonial.stories.d.ts +0 -172
  301. package/lib/components/Testimonial/index.d.ts +0 -16
  302. package/lib/components/Testimonial/index.js +0 -42
  303. package/lib/components/TextAndTitle/TextAndTitle.stories.d.ts +0 -97
  304. package/lib/components/TextAndTitle/index.d.ts +0 -25
  305. package/lib/components/TextAndTitle/index.js +0 -70
  306. package/lib/components/TextArea/TextArea.stories.d.ts +0 -85
  307. package/lib/components/TextArea/index.d.ts +0 -26
  308. package/lib/components/TextArea/index.js +0 -86
  309. package/lib/components/Timeline/Timeline.stories.d.ts +0 -81
  310. package/lib/components/Timeline/index.d.ts +0 -17
  311. package/lib/components/Timeline/index.js +0 -172
  312. package/lib/components/TimelineV2/TimelineV2.stories.d.ts +0 -87
  313. package/lib/components/TimelineV2/index.d.ts +0 -20
  314. package/lib/components/Tubestops/Tubestops.stories.d.ts +0 -54
  315. package/lib/components/Tubestops/index.d.ts +0 -8
  316. package/lib/components/Tubestops/index.js +0 -44
  317. package/lib/components/UserIcon/UserIcon.stories.d.ts +0 -81
  318. package/lib/components/UserIcon/index.d.ts +0 -10
  319. package/lib/components/UserIcon/index.js +0 -34
  320. package/lib/components/Video/Video.stories.d.ts +0 -49
  321. package/lib/components/Video/index.d.ts +0 -15
  322. package/lib/components/Video/index.js +0 -34
  323. package/lib/components/index.d.ts +0 -60
  324. package/lib/components/typography/Fonts/Fonts.d.ts +0 -2
  325. package/lib/components/typography/Fonts/Fonts.stories.d.ts +0 -10
  326. package/lib/index.d.ts +0 -1
  327. package/lib/index.js +0 -118
  328. package/lib/node_modules/keen-slider/keen-slider.min.css.js +0 -1
  329. package/lib/node_modules/keen-slider/react.js +0 -591
  330. package/lib/style.css +0 -1
  331. package/lib/styles/global.css +0 -75
  332. package/lib/styles/themes/local.css +0 -40
  333. package/lib/styles/themes/palette.css +0 -131
  334. package/lib/tailwind/boxShadow.ts +0 -9
  335. package/lib/tailwind/colors.ts +0 -410
  336. package/lib/tailwind/container.ts +0 -11
  337. package/lib/tailwind/preset.ts +0 -88
  338. package/lib/tailwind/spacing.ts +0 -14
  339. package/lib/utils/controls.d.ts +0 -36
  340. package/lib/utils/matchMedia.d.ts +0 -2
  341. package/lib/utils/matchMedia.js +0 -9
  342. package/lib/utils/screens.d.ts +0 -7
  343. package/src/components/BreadcrumbsBordered/BreadcrumbsBordered.stories.tsx +0 -52
  344. package/src/components/BreadcrumbsBordered/index.tsx +0 -41
  345. package/src/components/BreadcrumbsItem/BreadcrumbsItem.stories.tsx +0 -40
  346. package/src/components/BreadcrumbsItem/index.tsx +0 -147
  347. package/src/components/CardWithTopImage/CardWithTopImage.stories.tsx +0 -50
  348. package/src/components/CardWithTopImage/index.tsx +0 -35
  349. package/src/components/Column/Column.stories.tsx +0 -89
  350. package/src/components/Column/index.tsx +0 -18
  351. package/src/components/ComponentWrapper/ComponentWrapper.stories.tsx +0 -40
  352. package/src/components/ComponentWrapper/index.tsx +0 -48
  353. package/src/components/Container/Container.stories.tsx +0 -40
  354. package/src/components/Container/index.tsx +0 -21
  355. package/src/components/DropdownMenu/DropdownMenu.stories.tsx +0 -59
  356. package/src/components/DropdownMenu/index.tsx +0 -45
  357. package/src/components/DynamicTextSection/DynamicTextSection.stories.tsx +0 -76
  358. package/src/components/DynamicTextSection/index.tsx +0 -32
  359. package/src/components/FilterItem/FilterItem.stories.tsx +0 -33
  360. package/src/components/FilterItem/index.tsx +0 -97
  361. package/src/components/FooterNavItem/FooterNavItem.stories.tsx +0 -53
  362. package/src/components/FooterNavItem/index.tsx +0 -58
  363. package/src/components/Form/style.module.css +0 -0
  364. package/src/components/FyreCard/FyreCard.stories.tsx +0 -31
  365. package/src/components/FyreCard/index.tsx +0 -44
  366. package/src/components/HorizontalLine/HorizontalLine.stories.tsx +0 -54
  367. package/src/components/HorizontalLine/index.tsx +0 -32
  368. package/src/components/IconCard/IconCard.stories.tsx +0 -26
  369. package/src/components/IconCard/index.tsx +0 -54
  370. package/src/components/ImageInfo/ImageInfo.stories.tsx +0 -38
  371. package/src/components/ImageInfo/index.tsx +0 -84
  372. package/src/components/ImageLink/ImageLink.stories.tsx +0 -36
  373. package/src/components/ImageLink/index.tsx +0 -58
  374. package/src/components/ImageLinkList/ImageLinkList.stories.tsx +0 -34
  375. package/src/components/ImageLinkList/index.tsx +0 -28
  376. package/src/components/InformationIcon/InformationIcon.stories.tsx +0 -29
  377. package/src/components/InformationIcon/index.tsx +0 -105
  378. package/src/components/InformationIconBlock/InformationIconBlock.stories.tsx +0 -38
  379. package/src/components/InformationIconBlock/index.tsx +0 -56
  380. package/src/components/Jumbotron/Jumbotron.stories.tsx +0 -21
  381. package/src/components/Jumbotron/index.tsx +0 -19
  382. package/src/components/NavOld/NavOld.stories.tsx +0 -193
  383. package/src/components/NavOld/StickyNav.tsx +0 -187
  384. package/src/components/NavOld/index.tsx +0 -265
  385. package/src/components/NavTwo/Dropdown.tsx +0 -30
  386. package/src/components/NavTwo/Nav.stories.tsx +0 -32
  387. package/src/components/NavTwo/Sidebar.tsx +0 -30
  388. package/src/components/NavTwo/StickyNav.tsx +0 -29
  389. package/src/components/NavTwo/index.tsx +0 -37
  390. package/src/components/NewsCard/NewsCard.stories.tsx +0 -72
  391. package/src/components/NewsCard/index.tsx +0 -44
  392. package/src/components/ProductCard/ProductCard.stories.tsx +0 -61
  393. package/src/components/ProductCard/index.tsx +0 -110
  394. package/src/components/ProductCardV2/ProductCardV2.stories.tsx +0 -50
  395. package/src/components/ProductCardV2/index.tsx +0 -98
  396. package/src/components/Proficiencies/Proficiencies.stories.tsx +0 -50
  397. package/src/components/Proficiencies/index.tsx +0 -51
  398. package/src/components/Profile/Profile.stories.tsx +0 -49
  399. package/src/components/Profile/index.tsx +0 -103
  400. package/src/components/Row/Row.stories.tsx +0 -53
  401. package/src/components/Row/index.tsx +0 -17
  402. package/src/components/SocialBlock/SocialBlock.stories.tsx +0 -58
  403. package/src/components/SocialBlock/index.tsx +0 -59
  404. package/src/components/StarRating/StarRating.stories.tsx +0 -23
  405. package/src/components/StarRating/index.tsx +0 -65
  406. package/src/components/TextAndTitle/TextAndTitle.stories.tsx +0 -71
  407. package/src/components/TextAndTitle/index.tsx +0 -119
  408. package/src/components/TimelineV2/TimelineV2.stories.tsx +0 -95
  409. package/src/components/TimelineV2/index.tsx +0 -70
  410. package/src/components/UserIcon/UserIcon.stories.tsx +0 -52
  411. package/src/components/UserIcon/index.tsx +0 -43
  412. package/src/styles/themes/palette.css +0 -131
  413. package/svg.d.ts +0 -4
  414. /package/src/{components/fonts → fonts}/Sora/OFL.txt +0 -0
  415. /package/src/{components/fonts → fonts}/Sora/README.txt +0 -0
  416. /package/src/{components/fonts → fonts}/Sora/Sora-VariableFont_wght.ttf +0 -0
  417. /package/src/{components/fonts → fonts}/Sora/static/Sora-Bold.ttf +0 -0
  418. /package/src/{components/fonts → fonts}/Sora/static/Sora-ExtraBold.ttf +0 -0
  419. /package/src/{components/fonts → fonts}/Sora/static/Sora-ExtraLight.ttf +0 -0
  420. /package/src/{components/fonts → fonts}/Sora/static/Sora-Light.ttf +0 -0
  421. /package/src/{components/fonts → fonts}/Sora/static/Sora-Medium.ttf +0 -0
  422. /package/src/{components/fonts → fonts}/Sora/static/Sora-Regular.ttf +0 -0
  423. /package/src/{components/fonts → fonts}/Sora/static/Sora-SemiBold.ttf +0 -0
  424. /package/src/{components/fonts → fonts}/Sora/static/Sora-Thin.ttf +0 -0
@@ -1,57 +1,45 @@
1
- import { action } from '@storybook/addon-actions';
2
- import { Meta, type StoryObj } from '@storybook/react';
3
- import { idAndClassName } from '@utils/controls';
4
-
5
- import { Footer } from '.';
1
+ import { Footer } from './';
2
+ import { Meta, StoryObj } from '@storybook/react';
6
3
 
7
4
  const meta = {
8
- title: 'Components/Footer',
5
+ title: 'V2Components/Footer',
9
6
  component: Footer,
10
- parameters: {},
11
- argTypes: {
12
- ...idAndClassName,
13
- text: {
14
- type: { name: 'string', required: false },
15
- description: 'The text to show on the component',
16
- table: {
17
- type: { summary: 'default' },
18
- },
19
- defaultValue: { summary: 'undefined' },
20
- },
21
- buttonProps: {
22
- type: { name: 'other', value: 'object' },
23
- description:
24
- 'The props to pass to the button to display on the component',
25
- table: {
26
- type: {
27
- summary: 'object',
28
- },
29
- defaultValue: { summary: 'undefined' },
30
- }
31
- },
32
- variant: {
33
- type: { name: 'string', required: false },
34
- options: ['dark', 'light'],
35
- description: 'The variant of button to render',
36
- table: {
37
- type: { summary: 'light' },
38
- defaultValue: { summary: 'light' },
39
- },
40
- defaultValue: 'light',
41
- control: { type: 'radio' },
42
- }
43
- },
44
7
  args: {
45
- text: 'Copyright All rights reserved',
46
- variant: 'dark',
47
- buttonProps: {
48
- children: 'Admin Panel',
49
- onClick: action('button clicked'),
50
- href: '/',
51
- target: '_blank',
52
- }
53
- }
54
- };
8
+ children: [
9
+ <Footer.Section>
10
+ <Footer.Column>
11
+ <Footer.Title>Title</Footer.Title>
12
+ <Footer.Text>
13
+ Lorem ipsum dolor sit, amet consectetur adipisicing elit. Iure hic
14
+ itaque dolore doloribus ducimus iste qui totam. Adipisci recusandae
15
+ sed voluptatum odio consequuntur, amet sint totam libero quasi
16
+ tenetur expedita?
17
+ </Footer.Text>
18
+ </Footer.Column>
19
+ <Footer.Column>
20
+ <Footer.Title>Title</Footer.Title>
21
+ <Footer.Text>
22
+ Lorem ipsum dolor sit, amet consectetur adipisicing elit. Iure hic
23
+ itaque dolore doloribus ducimus iste qui totam. Adipisci recusandae
24
+ sed voluptatum odio consequuntur, amet sint totam libero quasi
25
+ tenetur expedita?
26
+ </Footer.Text>
27
+ </Footer.Column>
28
+ <Footer.Column>
29
+ <Footer.Title>Title</Footer.Title>
30
+ <Footer.Text>
31
+ Lorem ipsum dolor sit, amet consectetur adipisicing elit. Iure hic
32
+ itaque dolore doloribus ducimus iste qui totam. Adipisci recusandae
33
+ sed voluptatum odio consequuntur, amet sint totam libero quasi
34
+ tenetur expedita?
35
+ </Footer.Text>
36
+ </Footer.Column>
37
+ </Footer.Section>,
38
+ <Footer.Bar>All right reserved</Footer.Bar>,
39
+ ],
40
+ },
41
+ } satisfies Meta<typeof Footer>;
42
+
55
43
  export default meta;
56
44
 
57
45
  type Story = StoryObj<typeof Footer>;
@@ -1,48 +1,96 @@
1
- import { Button, type Props as buttonProps } from '@components/Button';
2
- import { Container } from '@components/Container';
3
- import classNames from 'classnames';
1
+ import { forwardRef, HTMLAttributes } from 'react';
2
+
3
+ import clsx from 'clsx';
4
4
 
5
5
  export interface Props {
6
6
  id?: string;
7
7
  className?: string;
8
- buttonProps?: buttonProps;
9
8
  text?: string;
10
9
  variant?: 'light' | 'dark';
11
10
  }
12
11
 
13
- export const Footer = ({
14
- id,
15
- className,
16
- text,
17
- buttonProps,
18
- variant,
19
- }: Props) => {
20
- const colours =
21
- variant === 'dark' ? 'bg-primary text-white' : 'bg-white text-primary';
22
- const classList = classNames(className, colours);
12
+ const FooterComponent = forwardRef<
13
+ HTMLDivElement,
14
+ HTMLAttributes<HTMLDivElement>
15
+ >(({ children, className }, ref) => {
16
+ return (
17
+ <div
18
+ ref={ref}
19
+ className={clsx(
20
+ 'grid grid-cols-1 gap-y-12 bg-footer-bg p-8 text-footer-text',
21
+ className,
22
+ )}
23
+ >
24
+ {children}
25
+ </div>
26
+ );
27
+ });
28
+
29
+ const FooterBar = forwardRef<
30
+ HTMLParagraphElement,
31
+ HTMLAttributes<HTMLParagraphElement>
32
+ >(({ children, className }, ref) => {
33
+ return (
34
+ <p ref={ref} className={clsx('text-center', className)}>
35
+ {children}
36
+ </p>
37
+ );
38
+ });
23
39
 
40
+ const FooterSection = forwardRef<
41
+ HTMLDivElement,
42
+ HTMLAttributes<HTMLDivElement>
43
+ >(({ children, className }, ref) => {
24
44
  return (
25
- <div id={id} className={classList}>
26
- <Container
27
- withPadding
28
- className="block h-auto flex-wrap items-center justify-between md:flex"
29
- >
30
- <p className="pb-4 pt-8 text-center md:my-8 md:pb-0 md:pt-0">{text}</p>
31
- <div className="pb-8 pt-4 text-center md:pb-0 md:pt-0">
32
- {buttonProps?.children !== undefined &&
33
- (buttonProps?.href !== undefined ||
34
- buttonProps?.onClick !== undefined) && (
35
- <Button
36
- variant={variant === 'dark' ? 'primary' : 'secondary'}
37
- rounded
38
- href={buttonProps?.href}
39
- onClick={buttonProps?.onClick}
40
- >
41
- {buttonProps?.children}
42
- </Button>
43
- )}
44
- </div>
45
- </Container>
45
+ <div ref={ref} className={clsx('grid grid-cols-3 gap-12', className)}>
46
+ {children}
46
47
  </div>
47
48
  );
48
- }
49
+ });
50
+
51
+ const FooterColumn = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(
52
+ ({ children, className }, ref) => {
53
+ return (
54
+ <div ref={ref} className={className}>
55
+ {children}
56
+ </div>
57
+ );
58
+ },
59
+ );
60
+
61
+ const FooterTitle = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(
62
+ ({ children, className }, ref) => {
63
+ return (
64
+ <div ref={ref} className={className}>
65
+ {children}
66
+ </div>
67
+ );
68
+ },
69
+ );
70
+
71
+ const FooterText = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(
72
+ ({ children, className }, ref) => {
73
+ return (
74
+ <div ref={ref} className={className}>
75
+ {children}
76
+ </div>
77
+ );
78
+ },
79
+ );
80
+
81
+ FooterComponent.displayName = 'Footer';
82
+ FooterBar.displayName = 'Footer.Bar';
83
+ FooterSection.displayName = 'Footer.Section';
84
+ FooterColumn.displayName = 'Footer.Column';
85
+ FooterTitle.displayName = 'Footer.Title';
86
+ FooterText.displayName = 'Footer.Text';
87
+
88
+ const Footer = Object.assign(FooterComponent, {
89
+ Bar: FooterBar,
90
+ Section: FooterSection,
91
+ Column: FooterColumn,
92
+ Title: FooterTitle,
93
+ Text: FooterText,
94
+ });
95
+
96
+ export { Footer };
@@ -1,3 +1,4 @@
1
+ import { FooterNav } from './';
1
2
  import {
2
3
  faHeart,
3
4
  faMoon,
@@ -6,115 +7,24 @@ import {
6
7
  faSun,
7
8
  } from '@fortawesome/fontawesome-free-solid';
8
9
  import { action } from '@storybook/addon-actions';
9
- import { Meta, type StoryObj } from '@storybook/react';
10
- import { idAndClassName } from '@utils/controls';
11
-
12
- import { FooterNav } from '.';
10
+ import { Meta, StoryObj } from '@storybook/react';
13
11
 
14
12
  const meta = {
15
- title: 'Components/Footer Nav',
13
+ title: 'V2Components/Footer Nav',
16
14
  component: FooterNav,
17
- argTypes: {
18
- ...idAndClassName,
19
- title: {
20
- type: { name: 'string', required: true },
21
- description: 'The title to display on the component',
22
- table: {
23
- type: { summary: 'string' },
24
- }
25
- },
26
- subtitle: {
27
- type: { name: 'string', value: 'string | number' },
28
- description: 'The subtitle to display on the component',
29
- table: {
30
- type: {
31
- summary: 'string',
32
- },
33
- defaultValue: { summary: 'undefined' },
34
- }
35
- },
36
- withAnimation: {
37
- type: { name: 'boolean', required: false },
38
- description: 'Enabled the counter animation on the component',
39
- table: {
40
- type: { summary: 'boolean' },
41
- },
42
- defaultValue: 'false',
43
- },
44
- withHoverEffect: {
45
- type: { name: 'boolean', required: false },
46
- description: 'Enabled the hover effect on the component',
47
- table: {
48
- type: { summary: 'boolean' },
49
- },
50
- defaultValue: 'true',
51
- },
52
- iconProps: {
53
- type: { name: 'iconProps', required: false },
54
- description: 'The props to pass to the icon to display on the component',
55
- table: {
56
- type: { summary: 'iconProps' },
57
- }
58
- },
59
-
60
- large: {
61
- description: 'Defines the top and bottom padding size',
62
- control: 'boolean',
63
- table: {
64
- type: { summary: 'boolean' },
65
- defaultValue: { summary: 'true' },
66
- },
67
- defaultValue: 'true',
68
- }
69
- },
70
15
  args: {
71
- backgroundColour: 'white',
72
- colour: 'grey',
73
- hoverColour: 'primary',
74
- footerItems: [
75
- {
76
- title: 'wishlists',
77
- href: '#',
78
- iconProps: {
79
- icon: faHeart,
80
- },
81
- onClick: action('clicked wishlist'),
82
- },
83
- {
84
- title: 'Profile',
85
- href: '#',
86
- iconProps: {
87
- icon: faStar,
88
- },
89
- onClick: action('clicked profile'),
90
- },
91
- {
92
- title: 'sun',
93
- href: '#',
94
- iconProps: {
95
- icon: faSun,
96
- },
97
- onClick: action('clicked sun'),
98
- },
99
- {
100
- title: 'moon',
101
- href: '#',
102
- iconProps: {
103
- icon: faMoon,
104
- },
105
- onClick: action('clicked moon'),
106
- },
107
- {
108
- title: 'snowflake',
109
- href: '#',
110
- iconProps: {
111
- icon: faSnowflake,
112
- },
113
- onClick: action('clicked snowflake'),
114
- }
115
- ]
16
+ children: [
17
+ <FooterNav.Item>
18
+ <FooterNav.Label>Item 1</FooterNav.Label>
19
+ <FooterNav.Icon icon={faHeart} />
20
+ </FooterNav.Item>,
21
+ <FooterNav.Item>
22
+ <FooterNav.Label>Item 2</FooterNav.Label>
23
+ <FooterNav.Icon icon={faMoon} />
24
+ </FooterNav.Item>,
25
+ ],
116
26
  },
117
- }
27
+ } satisfies Meta<typeof FooterNav>;
118
28
  export default meta;
119
29
 
120
30
  type Story = StoryObj<typeof FooterNav>;
@@ -1,49 +1,75 @@
1
- import {
2
- FooterNavItem,
3
- type FooterNavItemProps,
4
- } from '@components/FooterNavItem';
5
- import { type Colours } from '@utils/controls';
6
- import classNames from 'classnames';
7
-
8
- export interface Props {
9
- id: string;
10
- className?: string;
11
- backgroundColour?: Colours;
12
- colour?: Colours;
13
- hoverColour?: Colours;
14
- hoverBgColour?: Colours;
15
- footerItems: FooterNavItemProps[];
16
- }
17
-
18
- export const FooterNav = ({
19
- id,
20
- className,
21
- backgroundColour = 'white',
22
- colour = 'black',
23
- hoverColour = 'black',
24
- hoverBgColour = 'black',
25
- footerItems,
26
- }: Props) => {
27
- const classList = classNames(
28
- className,
29
- 'fixed bottom-0 flex w-full justify-between px-4 border-t border-lightest-grey',
30
- )
1
+ import { forwardRef, HTMLAttributes } from 'react';
31
2
 
3
+ import { IconDefinition } from '@fortawesome/fontawesome-free-solid';
4
+ import { IconProp } from '@fortawesome/fontawesome-svg-core';
5
+ import clsx from 'clsx';
6
+
7
+ import { Icon } from '..';
8
+
9
+ const FooterNavComponent = forwardRef<
10
+ HTMLDivElement,
11
+ HTMLAttributes<HTMLDivElement>
12
+ >(({ className, children, ...props }, ref) => {
32
13
  return (
33
- <div id={id} className={classList}>
34
- {footerItems?.map((footerItem: any, i) => {
35
- footerItem.iconProps.colour = colour;
36
- footerItem.iconProps.hoverColour = hoverColour;
37
- footerItem.iconProps.hoverBgColour = hoverBgColour;
38
- footerItem.iconProps.size = 2;
39
- return (
40
- <FooterNavItem
41
- key={i}
42
- {...footerItem}
43
- backgroundColour={backgroundColour}
44
- />
45
- );
46
- })}
14
+ <div
15
+ className={clsx(
16
+ 'border-lightest-grey fixed bottom-0 flex w-full justify-between border-t px-4',
17
+ className,
18
+ )}
19
+ ref={ref}
20
+ {...props}
21
+ >
22
+ {children}
47
23
  </div>
48
24
  );
49
- }
25
+ });
26
+
27
+ const FooterNavItem = forwardRef<
28
+ HTMLDivElement,
29
+ HTMLAttributes<HTMLDivElement> & { href?: string; onClick?: any }
30
+ >(({ className, children, href, onClick, ...props }) => {
31
+ return (
32
+ <div
33
+ className={clsx(
34
+ 'group w-full cursor-pointer py-2 text-center transition-all duration-500',
35
+ className,
36
+ )}
37
+ {...props}
38
+ >
39
+ <a href={href} onClick={onClick}>
40
+ {children}
41
+ </a>
42
+ </div>
43
+ );
44
+ });
45
+
46
+ const FooterNavLabel = forwardRef<
47
+ HTMLDivElement,
48
+ HTMLAttributes<HTMLDivElement>
49
+ >(({ className, children, ...props }, ref) => {
50
+ return (
51
+ <p className={(clsx('font-regular pt-0.5 text-xs'), className)} {...props}>
52
+ {children}
53
+ </p>
54
+ );
55
+ });
56
+
57
+ const FooterNavIcon = forwardRef<
58
+ HTMLDivElement,
59
+ HTMLAttributes<HTMLDivElement> & { icon: IconDefinition | IconProp }
60
+ >(({ className, icon, ...props }) => {
61
+ return <Icon icon={icon} {...props} />;
62
+ });
63
+
64
+ FooterNavComponent.displayName = 'FooterNav';
65
+ FooterNavItem.displayName = 'FooterNav.Item';
66
+ FooterNavIcon.displayName = 'FooterNav.Icon';
67
+ FooterNavLabel.displayName = 'FooterNav.Label';
68
+
69
+ const FooterNav = Object.assign(FooterNavComponent, {
70
+ Item: FooterNavItem,
71
+ Label: FooterNavLabel,
72
+ Icon: FooterNavIcon,
73
+ });
74
+
75
+ export { FooterNav };
@@ -1,4 +1,4 @@
1
- import { Meta, type StoryObj } from '@storybook/react';
1
+ import { Meta, StoryObj } from '@storybook/react';
2
2
  import { idAndClassName } from '@utils/controls';
3
3
 
4
4
  import { Form } from '.';
@@ -14,7 +14,7 @@ const meta = {
14
14
  table: {
15
15
  type: { summary: 'string' },
16
16
  defaultValue: { summary: 'undefined' },
17
- }
17
+ },
18
18
  },
19
19
  onSubmit: {
20
20
  type: { name: 'function', required: false },
@@ -25,7 +25,7 @@ const meta = {
25
25
  summary: 'function',
26
26
  },
27
27
  defaultValue: { summary: 'undefined' },
28
- }
28
+ },
29
29
  },
30
30
  ref: {
31
31
  type: { name: 'other', value: 'RefObject<TouchableOpacity>' },
@@ -35,7 +35,7 @@ const meta = {
35
35
  summary: 'object',
36
36
  },
37
37
  defaultValue: { summary: 'undefined' },
38
- }
38
+ },
39
39
  },
40
40
  components: {
41
41
  description: 'An array of component objects to pass to the component',
@@ -45,8 +45,8 @@ const meta = {
45
45
  summary: 'array',
46
46
  },
47
47
  defaultValue: { summary: 'undefined' },
48
- }
49
- }
48
+ },
49
+ },
50
50
  },
51
51
  args: {
52
52
  components: [
@@ -74,10 +74,10 @@ const meta = {
74
74
  {
75
75
  htmlType: 'Button',
76
76
  children: 'Submit',
77
- }
78
- ]
77
+ },
78
+ ],
79
79
  },
80
- }
80
+ };
81
81
 
82
82
  export default meta;
83
83
 
@@ -1,26 +1,26 @@
1
- import { Button, type Props as buttonProps } from '@components/Button';
2
- import { Container } from '@components/Container';
3
- import { Input, type Props as inputProps } from '@components/Input';
1
+ import { Button, ButtonProps } from '@components/Button';
2
+ import { Input, InputContextProps } from '@components/Input';
4
3
  import classNames from 'classnames';
5
4
 
5
+ import { Card } from '..';
6
+
6
7
  export interface Props {
7
8
  id?: string;
8
9
  className?: string;
9
10
  onSubmit?: () => void;
10
11
  ref?: string;
11
- components?: Array<inputProps & buttonProps & { htmlType: string }>;
12
+ components?: Array<InputContextProps & ButtonProps & { htmlType: string }>;
12
13
  }
13
14
 
14
15
  export const Form = ({ id, className, onSubmit, ref, components }: Props) => {
15
16
  return (
16
- <Container withPadding>
17
+ <Card>
17
18
  <form id={id} ref={ref} className={className} onSubmit={onSubmit}>
18
19
  {components?.map((component, i) => {
19
20
  if (component?.htmlType === 'Input') {
20
21
  return (
21
22
  <Input
22
23
  key={`input_${i + 0}`}
23
- className={classNames(component?.className)}
24
24
  label={component?.label}
25
25
  placeholder={component?.placeholder}
26
26
  type={component?.type}
@@ -29,18 +29,13 @@ export const Form = ({ id, className, onSubmit, ref, components }: Props) => {
29
29
  );
30
30
  } else if (component.htmlType === 'Button') {
31
31
  return (
32
- <Button
33
- key={`button_${i + 0}`}
34
- type={component?.type}
35
- onClick={component?.onClick}
36
- className={classNames(component?.className)}
37
- >
38
- {component?.children}
32
+ <Button key={`button_${i + 0}`} onClick={component?.onClick}>
33
+ <Button.Label></Button.Label>
39
34
  </Button>
40
35
  );
41
36
  } else return <></>;
42
37
  })}
43
38
  </form>
44
- </Container>
39
+ </Card>
45
40
  );
46
- }
41
+ };
@@ -0,0 +1,39 @@
1
+ import { Gallery } from './';
2
+ import { Meta, StoryObj } from '@storybook/react';
3
+
4
+ const meta = {
5
+ title: 'V2Components/Gallery',
6
+ component: Gallery,
7
+ args: {
8
+ className: 'grid-cols-7',
9
+ children: [
10
+ <Gallery.Item src="https://picsum.photos/200/200" />,
11
+ <Gallery.Item src="https://picsum.photos/201/200" />,
12
+ <Gallery.Item src="https://picsum.photos/202/200" />,
13
+ <Gallery.Item src="https://picsum.photos/203/200" />,
14
+ <Gallery.Item src="https://picsum.photos/204/200" />,
15
+ <Gallery.Item src="https://picsum.photos/205/200" />,
16
+ <Gallery.Item src="https://picsum.photos/206/200" />,
17
+ <Gallery.Item src="https://picsum.photos/207/200" />,
18
+ <Gallery.Item src="https://picsum.photos/208/200" />,
19
+ <Gallery.Item src="https://picsum.photos/209/200" />,
20
+ <Gallery.Item src="https://picsum.photos/210/200" />,
21
+ <Gallery.Item src="https://picsum.photos/200/201" />,
22
+ <Gallery.Item src="https://picsum.photos/200/202" />,
23
+ <Gallery.Item src="https://picsum.photos/200/203" />,
24
+ <Gallery.Item src="https://picsum.photos/200/204" />,
25
+ <Gallery.Item src="https://picsum.photos/200/205" />,
26
+ <Gallery.Item src="https://picsum.photos/200/206" />,
27
+ <Gallery.Item src="https://picsum.photos/200/207" />,
28
+ <Gallery.Item src="https://picsum.photos/200/208" />,
29
+ <Gallery.Item src="https://picsum.photos/200/209" />,
30
+ <Gallery.Item src="https://picsum.photos/200/210" />,
31
+ ],
32
+ },
33
+ } satisfies Meta<typeof Gallery>;
34
+
35
+ export default meta;
36
+
37
+ type Story = StoryObj<typeof Gallery>;
38
+
39
+ export const Default: Story = {};
@@ -0,0 +1,31 @@
1
+ import { forwardRef, HTMLAttributes } from 'react';
2
+
3
+ import { Image, ImageProps } from '@components/Image';
4
+ import clsx from 'clsx';
5
+
6
+ const GalleryComponent = forwardRef<
7
+ HTMLDivElement,
8
+ HTMLAttributes<HTMLDivElement>
9
+ >(({ className, children, ...props }, ref) => {
10
+ return (
11
+ <div className={clsx('grid', className)} ref={ref} {...props}>
12
+ {children}
13
+ </div>
14
+ );
15
+ });
16
+
17
+ const GalleryItem = forwardRef<
18
+ HTMLDivElement,
19
+ HTMLAttributes<HTMLDivElement> & ImageProps
20
+ >(({ src }) => {
21
+ return <Image className="aspect-square w-full" src={src} />;
22
+ });
23
+
24
+ GalleryComponent.displayName = 'Gallery';
25
+ GalleryItem.displayName = 'Gallery.Item';
26
+
27
+ const Gallery = Object.assign(GalleryComponent, {
28
+ Item: GalleryItem,
29
+ });
30
+
31
+ export { Gallery };