trepur_components 2.3.7 → 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 (335) hide show
  1. package/.eslintrc.cjs +33 -4
  2. package/.prettierignore +10 -0
  3. package/README.md +1 -1
  4. package/package.json +9 -5
  5. package/src/components/Accordion/Accordion.stories.tsx +21 -98
  6. package/src/components/Accordion/const.tsx +34 -0
  7. package/src/components/Accordion/index.tsx +19 -25
  8. package/src/components/AlertBar/AlertBar.stories.tsx +78 -84
  9. package/src/components/AlertBar/index.tsx +69 -100
  10. package/src/components/Avatar/Avatar.stories.tsx +2 -7
  11. package/src/components/Avatar/index.tsx +4 -7
  12. package/src/components/Breadcrumbs/Breadcrumbs.stories.tsx +29 -0
  13. package/src/components/Breadcrumbs/index.tsx +89 -0
  14. package/src/components/Button/Button.stories.tsx +24 -0
  15. package/src/components/Button/index.tsx +59 -0
  16. package/src/components/Calendar/Calendar.stories.tsx +21 -0
  17. package/src/components/Calendar/index.tsx +92 -0
  18. package/src/components/Card/Card.stories.tsx +14 -0
  19. package/src/components/Card/index.tsx +39 -0
  20. package/src/components/Carousel/Carousel.stories.tsx +44 -0
  21. package/src/components/Carousel/index.tsx +301 -0
  22. package/src/components/Carousel/utils.ts +53 -0
  23. package/src/components/CarouselThumbnail/CarouselThumbnail.stories.tsx +29 -0
  24. package/src/components/CarouselThumbnail/const.ts +17 -0
  25. package/src/components/CarouselThumbnail/index.tsx +169 -0
  26. package/src/components/CarouselThumbnail/utils.ts +87 -0
  27. package/src/components/Checkbox/Checkbox.stories.tsx +27 -0
  28. package/src/components/Checkbox/index.tsx +44 -0
  29. package/src/components/Collapsible/Collapsible.stories.tsx +67 -0
  30. package/src/components/Collapsible/index.tsx +169 -0
  31. package/src/components/Counter/Counter.stories.tsx +20 -0
  32. package/src/components/Counter/index.tsx +98 -0
  33. package/src/components/DetailUpdater/DetailUpdater.stories.tsx +37 -0
  34. package/{archive → src/components}/DetailUpdater/index.tsx +20 -25
  35. package/src/components/Dialog/Dialog.stories.tsx +65 -0
  36. package/src/components/Dialog/index.tsx +29 -0
  37. package/src/components/Dropdown/Dropdown.stories.tsx +22 -0
  38. package/src/components/Dropdown/index.tsx +117 -0
  39. package/src/components/Dropdown/utils.ts +15 -0
  40. package/{archive → src/components}/FileUploader/FilePreview.tsx +11 -14
  41. package/src/components/FileUploader/FileUploader.stories.tsx +28 -0
  42. package/src/components/FileUploader/index.tsx +177 -0
  43. package/src/components/Footer/Footer.stories.tsx +47 -0
  44. package/src/components/Footer/index.tsx +96 -0
  45. package/src/components/FooterNav/FooterNav.stories.tsx +32 -0
  46. package/src/components/FooterNav/index.tsx +75 -0
  47. package/{archive → src/components}/Form/Form.stories.tsx +2 -2
  48. package/src/components/Form/index.tsx +41 -0
  49. package/src/components/Gallery/Gallery.stories.tsx +39 -0
  50. package/src/components/Gallery/index.tsx +31 -0
  51. package/src/components/Greeting/Greeting.stories.tsx +16 -0
  52. package/src/components/Greeting/index.tsx +49 -0
  53. package/src/components/HamburgerIcon/HamburgerIcon.stories.tsx +14 -0
  54. package/src/components/HamburgerIcon/index.tsx +75 -0
  55. package/src/components/Icon/Icon.stories.tsx +41 -0
  56. package/src/components/Icon/index.tsx +33 -0
  57. package/src/components/Image/Image.stories.tsx +17 -0
  58. package/src/components/Image/index.tsx +25 -0
  59. package/src/components/ImageCard/ImageCard.stories.tsx +29 -0
  60. package/src/components/ImageCard/index.tsx +75 -0
  61. package/src/components/Input/Input.stories.tsx +25 -0
  62. package/src/components/Input/index.tsx +139 -0
  63. package/{archive → src/components}/MenuButton/MenuButton.stories.tsx +2 -2
  64. package/src/components/MenuButton/index.tsx +66 -0
  65. package/{archive → src/components}/Modal/Modal.stories.tsx +4 -8
  66. package/{archive → src/components}/Modal/index.tsx +9 -12
  67. package/src/components/Nav/Nav.stories.tsx +80 -0
  68. package/src/components/Nav/index.tsx +171 -0
  69. package/src/components/NavItem/NavItem.stories.tsx +17 -0
  70. package/src/components/NavItem/index.tsx +39 -0
  71. package/src/components/Pill/Pill.stories.tsx +51 -0
  72. package/src/components/Pill/index.tsx +69 -0
  73. package/{archive → src/components}/Search/Search.stories.tsx +2 -2
  74. package/{archive → src/components}/Search/index.tsx +12 -16
  75. package/{archive → src/components}/Select/Select.stories.tsx +2 -3
  76. package/{archive → src/components}/Select/index.tsx +21 -30
  77. package/{archive → src/components}/Showcase/Showcase.stories.tsx +4 -3
  78. package/src/components/Showcase/index.tsx +62 -0
  79. package/{archive → src/components}/SideNav/SideNav.stories.tsx +2 -2
  80. package/{archive → src/components}/SideNav/index.tsx +8 -15
  81. package/{archive → src/components}/SocialButton/SocialButton.stories.tsx +2 -2
  82. package/{archive → src/components}/SocialButton/index.tsx +14 -22
  83. package/src/components/SplitCard/SplitCard.stories.tsx +34 -0
  84. package/src/components/SplitCard/index.tsx +132 -0
  85. package/src/components/Stars/Star.stories.tsx +18 -0
  86. package/src/components/Stars/index.tsx +38 -0
  87. package/src/components/Testimonial/Testimonial.stories.tsx +37 -0
  88. package/src/components/Testimonial/index.tsx +123 -0
  89. package/src/components/TextArea/TextArea.stories.tsx +24 -0
  90. package/src/components/TextArea/index.tsx +133 -0
  91. package/src/components/Timeline/Timeline.stories.tsx +45 -0
  92. package/src/components/Timeline/index.tsx +65 -0
  93. package/src/components/Tubestops/Tubestops.stories.tsx +22 -0
  94. package/src/components/Tubestops/index.tsx +132 -0
  95. package/src/components/Video/Video.stories.tsx +58 -0
  96. package/src/components/Video/assets/example.mp4 +0 -0
  97. package/src/components/Video/assets/example.ogv +0 -0
  98. package/src/components/Video/assets/example.webm +0 -0
  99. package/src/components/Video/index.tsx +92 -0
  100. package/src/components/index.ts +66 -112
  101. package/src/custom.d.ts +14 -0
  102. package/src/documentation/Colours.mdx +34 -34
  103. package/src/documentation/Introduction.mdx +9 -5
  104. package/src/documentation/assets/index.ts +3 -0
  105. package/src/documentation/assets/trepurComponentsLogo.svg +32 -0
  106. package/src/documentation/typography/Fonts/Fonts.stories.tsx +14 -0
  107. package/src/documentation/typography/Fonts/Fonts.tsx +73 -0
  108. package/src/styles/global.css +1 -1
  109. package/src/styles/themes/local.css +91 -39
  110. package/src/styles/themes/test.css +28 -0
  111. package/src/utils/screens.ts +1 -1
  112. package/tailwind/colors.ts +53 -385
  113. package/tailwind/preset.ts +4 -0
  114. package/tailwind.config.ts +12 -80
  115. package/tsconfig.json +8 -2
  116. package/archive/Breadcrumbs/Breadcrumbs.stories.tsx +0 -46
  117. package/archive/Breadcrumbs/index.tsx +0 -42
  118. package/archive/BreadcrumbsBordered/BreadcrumbsBordered.stories.tsx +0 -52
  119. package/archive/BreadcrumbsBordered/index.tsx +0 -44
  120. package/archive/BreadcrumbsItem/BreadcrumbsItem.stories.tsx +0 -40
  121. package/archive/BreadcrumbsItem/index.tsx +0 -149
  122. package/archive/Button/Button.stories.tsx +0 -150
  123. package/archive/Button/index.tsx +0 -111
  124. package/archive/Button/style.module.css +0 -76
  125. package/archive/Calendar/Calendar.stories.tsx +0 -82
  126. package/archive/Calendar/index.tsx +0 -76
  127. package/archive/Card/Card.stories.tsx +0 -75
  128. package/archive/Card/index.tsx +0 -102
  129. package/archive/Card/style.module.css +0 -75
  130. package/archive/CardWithTopImage/CardWithTopImage.stories.tsx +0 -50
  131. package/archive/CardWithTopImage/index.tsx +0 -39
  132. package/archive/CardWithTopImage/style.module.css +0 -11
  133. package/archive/Carousel/Carousel.stories.tsx +0 -451
  134. package/archive/Carousel/index.tsx +0 -388
  135. package/archive/Carousel/style.module.css +0 -99
  136. package/archive/CarouselThumbnail/CarouselThumbnail.stories.tsx +0 -350
  137. package/archive/CarouselThumbnail/index.tsx +0 -302
  138. package/archive/CarouselThumbnail/style.module.css +0 -67
  139. package/archive/Checkbox/Checkbox.stories.tsx +0 -34
  140. package/archive/Checkbox/index.tsx +0 -51
  141. package/archive/Checkbox/style.module.css +0 -15
  142. package/archive/Collapsible/Collapsible.stories.tsx +0 -67
  143. package/archive/Collapsible/index.tsx +0 -116
  144. package/archive/Collapsible/style.module.css +0 -47
  145. package/archive/Column/Column.stories.tsx +0 -89
  146. package/archive/Column/index.tsx +0 -119
  147. package/archive/Column/style.module.css +0 -151
  148. package/archive/ComponentWrapper/ComponentWrapper.stories.tsx +0 -40
  149. package/archive/ComponentWrapper/index.tsx +0 -55
  150. package/archive/ComponentWrapper/style.module.css +0 -40
  151. package/archive/Container/Container.stories.tsx +0 -40
  152. package/archive/Container/index.tsx +0 -24
  153. package/archive/Container/style.module.css +0 -4
  154. package/archive/Counter/Counter.stories.tsx +0 -19
  155. package/archive/Counter/index.tsx +0 -66
  156. package/archive/Counter/style.module.css +0 -19
  157. package/archive/DetailUpdater/DetailUpdater.stories.tsx +0 -96
  158. package/archive/DetailUpdater/style.module.css +0 -31
  159. package/archive/Dialog/Dialog.stories.tsx +0 -131
  160. package/archive/Dialog/index.tsx +0 -91
  161. package/archive/Dialog/style.module.css +0 -44
  162. package/archive/DropdownMenu/DropdownMenu.stories.tsx +0 -59
  163. package/archive/DropdownMenu/index.tsx +0 -51
  164. package/archive/DropdownMenu/style.module.css +0 -38
  165. package/archive/DynamicTextSection/DynamicTextSection.stories.tsx +0 -74
  166. package/archive/DynamicTextSection/index.tsx +0 -36
  167. package/archive/DynamicTextSection/style.module.css +0 -0
  168. package/archive/FileUploader/FileUploader.stories.tsx +0 -28
  169. package/archive/FileUploader/index.tsx +0 -135
  170. package/archive/FileUploader/style.module.css +0 -54
  171. package/archive/FilterItem/FilterItem.stories.tsx +0 -33
  172. package/archive/FilterItem/index.tsx +0 -101
  173. package/archive/FilterItem/style.module.css +0 -27
  174. package/archive/Footer/Footer.stories.tsx +0 -59
  175. package/archive/Footer/index.tsx +0 -50
  176. package/archive/Footer/style.module.css +0 -19
  177. package/archive/FooterNav/FooterNav.stories.tsx +0 -125
  178. package/archive/FooterNav/index.tsx +0 -57
  179. package/archive/FooterNav/style.module.css +0 -32
  180. package/archive/FooterNavItem/FooterNavItem.stories.tsx +0 -53
  181. package/archive/FooterNavItem/index.tsx +0 -80
  182. package/archive/FooterNavItem/style.module.css +0 -139
  183. package/archive/Form/index.tsx +0 -61
  184. package/archive/Form/style.module.css +0 -0
  185. package/archive/FyreCard/FyreCard.stories.tsx +0 -31
  186. package/archive/FyreCard/index.tsx +0 -52
  187. package/archive/FyreCard/style.module.css +0 -19
  188. package/archive/Greeting/Greeting.stories.tsx +0 -41
  189. package/archive/Greeting/index.tsx +0 -32
  190. package/archive/HamburgerIcon/HamburgerIcon.stories.tsx +0 -32
  191. package/archive/HamburgerIcon/index.tsx +0 -103
  192. package/archive/HamburgerIcon/style.module.css +0 -85
  193. package/archive/HorizontalLine/HorizontalLine.stories.tsx +0 -54
  194. package/archive/HorizontalLine/index.tsx +0 -40
  195. package/archive/HorizontalLine/style.module.css +0 -55
  196. package/archive/Icon/Icon.stories.tsx +0 -164
  197. package/archive/Icon/index.tsx +0 -115
  198. package/archive/Icon/style.module.css +0 -253
  199. package/archive/IconCard/IconCard.stories.tsx +0 -46
  200. package/archive/IconCard/index.tsx +0 -57
  201. package/archive/IconCard/style.module.css +0 -18
  202. package/archive/Image/Image.stories.tsx +0 -87
  203. package/archive/Image/index.tsx +0 -132
  204. package/archive/Image/style.module.css +0 -109
  205. package/archive/ImageInfo/ImageInfo.stories.tsx +0 -39
  206. package/archive/ImageInfo/index.tsx +0 -95
  207. package/archive/ImageInfo/style.module.css +0 -47
  208. package/archive/ImageLink/ImageLink.stories.tsx +0 -37
  209. package/archive/ImageLink/index.tsx +0 -49
  210. package/archive/ImageLink/style.module.css +0 -23
  211. package/archive/ImageLinkList/ImageLinkList.stories.tsx +0 -34
  212. package/archive/ImageLinkList/index.tsx +0 -33
  213. package/archive/ImageLinkList/style.module.css +0 -3
  214. package/archive/InformationIcon/InformationIcon.stories.tsx +0 -83
  215. package/archive/InformationIcon/index.tsx +0 -128
  216. package/archive/InformationIcon/style.module.css +0 -71
  217. package/archive/InformationIconBlock/InformationIconBlock.stories.tsx +0 -32
  218. package/archive/InformationIconBlock/index.tsx +0 -63
  219. package/archive/InformationIconBlock/style.module.css +0 -7
  220. package/archive/Input/Input.stories.tsx +0 -84
  221. package/archive/Input/index.tsx +0 -131
  222. package/archive/Input/style.module.css +0 -60
  223. package/archive/Jumbotron/Jumbotron.stories.tsx +0 -21
  224. package/archive/Jumbotron/index.tsx +0 -31
  225. package/archive/Jumbotron/style.module.css +0 -8
  226. package/archive/MenuButton/index.tsx +0 -82
  227. package/archive/MenuButton/style.module.css +0 -45
  228. package/archive/Modal/style.module.css +0 -35
  229. package/archive/NavItem/NavItem.stories.tsx +0 -90
  230. package/archive/NavItem/index.tsx +0 -65
  231. package/archive/NavItem/style.module.css +0 -71
  232. package/archive/NavOld/NavOld.stories.tsx +0 -193
  233. package/archive/NavOld/StickyNav.tsx +0 -191
  234. package/archive/NavOld/index.tsx +0 -273
  235. package/archive/NavOld/style.module.css +0 -156
  236. package/archive/NavTwo/Dropdown.tsx +0 -35
  237. package/archive/NavTwo/Nav.stories.tsx +0 -38
  238. package/archive/NavTwo/Sidebar.tsx +0 -34
  239. package/archive/NavTwo/StickyNav.tsx +0 -34
  240. package/archive/NavTwo/index.tsx +0 -45
  241. package/archive/NavTwo/style.module.css +0 -35
  242. package/archive/NewsCard/NewsCard.stories.tsx +0 -72
  243. package/archive/NewsCard/index.tsx +0 -57
  244. package/archive/NewsCard/style.module.css +0 -15
  245. package/archive/Pill/Pill.stories.tsx +0 -44
  246. package/archive/Pill/index.tsx +0 -64
  247. package/archive/Pill/style.module.css +0 -32
  248. package/archive/ProductCard/ProductCard.stories.tsx +0 -61
  249. package/archive/ProductCard/index.tsx +0 -111
  250. package/archive/ProductCard/style.module.css +0 -53
  251. package/archive/ProductCardV2/ProductCardV2.stories.tsx +0 -50
  252. package/archive/ProductCardV2/index.tsx +0 -119
  253. package/archive/ProductCardV2/style.module.css +0 -59
  254. package/archive/Proficiencies/Proficiencies.stories.tsx +0 -50
  255. package/archive/Proficiencies/index.tsx +0 -63
  256. package/archive/Proficiencies/style.module.css +0 -31
  257. package/archive/Profile/Profile.stories.tsx +0 -49
  258. package/archive/Profile/index.tsx +0 -103
  259. package/archive/Profile/style.module.css +0 -47
  260. package/archive/Row/Row.stories.tsx +0 -53
  261. package/archive/Row/index.tsx +0 -23
  262. package/archive/Row/style.module.css +0 -3
  263. package/archive/Search/style.module.css +0 -23
  264. package/archive/Select/style.module.css +0 -52
  265. package/archive/Showcase/index.tsx +0 -75
  266. package/archive/Showcase/style.module.css +0 -47
  267. package/archive/SideNav/style.module.css +0 -43
  268. package/archive/SocialBlock/SocialBlock.stories.tsx +0 -58
  269. package/archive/SocialBlock/index.tsx +0 -63
  270. package/archive/SocialButton/style.module.css +0 -77
  271. package/archive/StarRating/StarRating.stories.tsx +0 -23
  272. package/archive/StarRating/index.tsx +0 -71
  273. package/archive/Testimonial/Testimonial.stories.tsx +0 -110
  274. package/archive/Testimonial/index.tsx +0 -61
  275. package/archive/Testimonial/style.module.css +0 -27
  276. package/archive/TextAndTitle/TextAndTitle.stories.tsx +0 -70
  277. package/archive/TextAndTitle/index.tsx +0 -123
  278. package/archive/TextAndTitle/style.module.css +0 -75
  279. package/archive/TextArea/TextArea.stories.tsx +0 -55
  280. package/archive/TextArea/index.tsx +0 -125
  281. package/archive/TextArea/style.module.css +0 -60
  282. package/archive/Timeline/Timeline.stories.tsx +0 -92
  283. package/archive/Timeline/index.tsx +0 -254
  284. package/archive/Timeline/style.module.css +0 -134
  285. package/archive/TimelineV2/TimelineV2.stories.tsx +0 -95
  286. package/archive/TimelineV2/index.tsx +0 -70
  287. package/archive/TimelineV2/style.module.css +0 -28
  288. package/archive/Tubestops/Tubestops.stories.tsx +0 -42
  289. package/archive/Tubestops/index.tsx +0 -58
  290. package/archive/Tubestops/style.module.css +0 -54
  291. package/archive/UserIcon/UserIcon.stories.tsx +0 -52
  292. package/archive/UserIcon/index.tsx +0 -46
  293. package/archive/UserIcon/style.module.css +0 -19
  294. package/archive/Video/Video.stories.tsx +0 -23
  295. package/archive/Video/index.tsx +0 -47
  296. package/archive/theme.ts +0 -39
  297. package/archive/typography/Fonts/Fonts.stories.tsx +0 -14
  298. package/archive/typography/Fonts/Fonts.tsx +0 -181
  299. package/lib/components/Accordion/Accordion.stories.d.ts +0 -94
  300. package/lib/components/Accordion/index.d.ts +0 -8
  301. package/lib/components/Accordion/index.js +0 -15
  302. package/lib/components/AlertBar/AlertBar.stories.d.ts +0 -162
  303. package/lib/components/AlertBar/index.d.ts +0 -12
  304. package/lib/components/AlertBar/index.js +0 -49
  305. package/lib/components/Avatar/Avatar.stories.d.ts +0 -44
  306. package/lib/components/Avatar/index.d.ts +0 -4
  307. package/lib/components/index.d.ts +0 -4
  308. package/lib/index.d.ts +0 -1
  309. package/lib/index.js +0 -6
  310. package/lib/styles/global.css +0 -75
  311. package/lib/styles/themes/local.css +0 -40
  312. package/lib/styles/themes/palette.css +0 -131
  313. package/lib/tailwind/boxShadow.ts +0 -9
  314. package/lib/tailwind/colors.ts +0 -410
  315. package/lib/tailwind/container.ts +0 -11
  316. package/lib/tailwind/preset.ts +0 -88
  317. package/lib/tailwind/spacing.ts +0 -14
  318. package/lib/utils/controls.d.ts +0 -36
  319. package/lib/utils/matchMedia.d.ts +0 -2
  320. package/lib/utils/screens.d.ts +0 -7
  321. package/src/styles/themes/palette.css +0 -131
  322. package/svg.d.ts +0 -4
  323. /package/{archive → src/components}/Calendar/style.css +0 -0
  324. /package/{archive → src/components}/Checkbox/Checkbox.mdx +0 -0
  325. /package/{archive → src}/fonts/Sora/OFL.txt +0 -0
  326. /package/{archive → src}/fonts/Sora/README.txt +0 -0
  327. /package/{archive → src}/fonts/Sora/Sora-VariableFont_wght.ttf +0 -0
  328. /package/{archive → src}/fonts/Sora/static/Sora-Bold.ttf +0 -0
  329. /package/{archive → src}/fonts/Sora/static/Sora-ExtraBold.ttf +0 -0
  330. /package/{archive → src}/fonts/Sora/static/Sora-ExtraLight.ttf +0 -0
  331. /package/{archive → src}/fonts/Sora/static/Sora-Light.ttf +0 -0
  332. /package/{archive → src}/fonts/Sora/static/Sora-Medium.ttf +0 -0
  333. /package/{archive → src}/fonts/Sora/static/Sora-Regular.ttf +0 -0
  334. /package/{archive → src}/fonts/Sora/static/Sora-SemiBold.ttf +0 -0
  335. /package/{archive → src}/fonts/Sora/static/Sora-Thin.ttf +0 -0
@@ -1,76 +0,0 @@
1
- import React, { useState } from 'react';
2
-
3
- import classNames from 'classnames';
4
- import Calendar from 'react-calendar';
5
-
6
- import './style.css';
7
-
8
- export type Detail = 'month' | 'year' | 'decade' | 'century';
9
- export interface Props {
10
- id?: string;
11
- className?: string;
12
-
13
- onChange?: () => void;
14
- useRange?: boolean;
15
- minDetail?: Detail;
16
- minDate?: Date;
17
- maxDate?: Date;
18
- showNavigation?: true;
19
- disabledDates?: string[];
20
- showDoubleView?: boolean;
21
- }
22
-
23
- const CalendarComponent: React.FC<Props> = ({
24
- id = 'sdfghj',
25
- className,
26
- onChange,
27
-
28
- useRange = false,
29
- minDetail = 'month',
30
- minDate = new Date(),
31
- maxDate = new Date(new Date().setFullYear(new Date().getFullYear() + 1)),
32
- showNavigation = true,
33
- disabledDates = [],
34
- showDoubleView = true,
35
- }: Props): JSX.Element => {
36
- const [today, setToday] = useState(new Date());
37
-
38
- const calculateDisabledDates = (date: any, disabledDates: any): boolean => {
39
- const formattedDate = new Intl.DateTimeFormat('en-gb', {
40
- year: 'numeric',
41
- month: '2-digit',
42
- day: '2-digit',
43
- }).format(date?.date);
44
-
45
- return disabledDates.includes(formattedDate);
46
- };
47
-
48
- return (
49
- <div id={id} className={classNames(className, 'theme-local')}>
50
- <Calendar
51
- onActiveStartDateChange={({ value, activeStartDate, action }) => {
52
- const toFormat = activeStartDate !== null ? activeStartDate : today;
53
- if (action === 'next') {
54
- setToday(new Date(toFormat));
55
- }
56
- if (action === 'prev') {
57
- setToday(new Date(toFormat));
58
- }
59
- }}
60
- activeStartDate={today}
61
- onChange={onChange}
62
- selectRange={useRange}
63
- minDetail={minDetail}
64
- minDate={minDate}
65
- maxDate={maxDate}
66
- showNavigation={showNavigation}
67
- showDoubleView={showDoubleView}
68
- tileDisabled={(date: any) =>
69
- calculateDisabledDates(date, disabledDates)
70
- }
71
- />
72
- </div>
73
- );
74
- };
75
-
76
- export default CalendarComponent;
@@ -1,75 +0,0 @@
1
- import { Meta, StoryObj } from '@storybook/react';
2
- import { idAndClassName } from '@utils/controls';
3
-
4
- import Card from '.';
5
-
6
- const meta = {
7
- title: 'Components/Card',
8
- component: Card,
9
- argTypes: {
10
- ...idAndClassName,
11
- imageProps: {
12
- description: '',
13
- table: {},
14
- },
15
- videoProps: {
16
- description: '',
17
- table: {},
18
- },
19
- title: {
20
- description: 'The title to display on the component',
21
- table: {},
22
- },
23
- subTitle: {
24
- description: 'The subtitle to display on the component',
25
- table: {},
26
- },
27
- description: {
28
- description: 'The description to display on the component',
29
- table: {},
30
- },
31
- href: {
32
- description:
33
- 'The link to send the user to when clicking on the component',
34
- table: {},
35
- },
36
- target: {
37
- type: { name: 'string', required: false },
38
- options: ['_blank', '_self'],
39
- description: '',
40
- table: {
41
- type: { summary: '_blank' },
42
- defaultValue: { summary: '_blank' },
43
- },
44
- defaultValue: '_blank',
45
- control: { type: 'radio' },
46
- },
47
- buttonProps: {
48
- description: '',
49
- table: {},
50
- },
51
- },
52
- args: {
53
- imageProps: {
54
- src: 'https://picsum.photos/500/300',
55
- },
56
- title: 'This is a title',
57
- subTitle: 'This is a subtitle',
58
- description:
59
- 'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fuga excepturi itaque in. Debitis et velit explicabo id quo repellendus architecto hic quis repellat corporis cumque dolorem officiis animi, dicta praesentium.',
60
- href: '/',
61
- buttonProps: {
62
- children: 'Button Text',
63
- disabled: false,
64
- hoverText: 'buttonHoverText',
65
- href: '/',
66
- rounded: true,
67
- },
68
- },
69
- };
70
-
71
- export default meta;
72
-
73
- type Story = StoryObj<typeof meta>;
74
-
75
- export const Default: Story = {};
@@ -1,102 +0,0 @@
1
- import React from 'react';
2
-
3
- import Button, { type Props as buttonProps } from '@components/Button';
4
- import { type Props as imageProps } from '@components/Image';
5
- import Video, { type Props as videoProps } from '@components/Video';
6
- import classNames from 'classnames';
7
-
8
-
9
-
10
- interface AnchorAttributes
11
- extends Partial<
12
- Pick<JSX.IntrinsicElements['a'], 'href' | 'title' | 'target'>
13
- > {}
14
-
15
- export interface Props {
16
- id?: string;
17
- className?: string;
18
- title?: string;
19
- imageProps?: imageProps;
20
- videoProps?: videoProps;
21
- subTitle?: string;
22
- description?: string;
23
- href?: string;
24
- target?: string;
25
- buttonProps?: buttonProps;
26
- }
27
-
28
- const Card: React.FC<Props> = ({
29
- id,
30
- className,
31
- imageProps,
32
- videoProps,
33
- title,
34
- subTitle,
35
- description,
36
- href,
37
- target,
38
- buttonProps,
39
- }: Props): JSX.Element => {
40
- const cardTitleClasses = classNames(style.title);
41
- const cardSubTitleClassList = classNames(style.subtitle);
42
- const cardDescriptionClassList = classNames(style.description);
43
- const classList = classNames(className, style.classList, 'theme-local');
44
- const imageClassList = classNames(style.imageClassList);
45
- let Tag: keyof Pick<JSX.IntrinsicElements, 'a' | 'div'> = 'div';
46
- let attributes: AnchorAttributes = {};
47
-
48
- if (Boolean(href) || Boolean(target)) {
49
- Tag = 'a';
50
- attributes = { href, title, target };
51
- }
52
-
53
- const shouldDisplayButton =
54
- buttonProps?.children !== undefined &&
55
- (buttonProps.href !== undefined || buttonProps.onClick !== undefined) &&
56
- Tag === 'div';
57
-
58
- return (
59
- <Tag id={id} className={classList} {...attributes}>
60
- <div>
61
- {videoProps?.mp4File !== undefined ||
62
- videoProps?.webmFile !== undefined ||
63
- videoProps?.ogvFile !== undefined ? (
64
- <Video {...videoProps} />
65
- ) : (
66
- imageProps !== undefined && (
67
- <img
68
- className={imageClassList}
69
- title={`${title?.replace(/\s/g, '-') ?? 'a'}-logo`}
70
- alt={
71
- title !== undefined
72
- ? `${title?.replace(/\s/g, '-')}-image`
73
- : 'image'
74
- }
75
- {...imageProps}
76
- />
77
- )
78
- )}
79
- </div>
80
- <div className={style.contentWrapper}>
81
- <div className={style.movingContent}>
82
- {title !== undefined && <h3 className={cardTitleClasses}>{title}</h3>}
83
- {subTitle !== undefined && (
84
- <h4 className={cardSubTitleClassList}>{subTitle}</h4>
85
- )}
86
- </div>
87
- <div className={style.staticContent}>
88
- {description !== undefined && (
89
- <p className={cardDescriptionClassList}>{description}</p>
90
- )}
91
- {shouldDisplayButton && (
92
- <Button className={style.buttonClassList} {...buttonProps}>
93
- {buttonProps?.children}
94
- </Button>
95
- )}
96
- </div>
97
- </div>
98
- </Tag>
99
- );
100
- };
101
-
102
- export default Card;
@@ -1,75 +0,0 @@
1
- .classList {
2
- @apply flex flex-col;
3
- @apply rounded-lg;
4
- @apply shadow-xl;
5
- }
6
-
7
- a .classList:hover {
8
- @apply cursor-pointer;
9
- }
10
-
11
- .classList:hover .movingContent {
12
- @apply -mt-8;
13
- @apply transition-all duration-300;
14
- }
15
-
16
- .classList:hover .staticContent {
17
- @apply mt-8;
18
- @apply transition-all duration-300;
19
- }
20
-
21
- .classList:focus {
22
- @apply border-2 border-primary;
23
- border-radius: 10px;
24
- }
25
-
26
- .classList:focus .movingContent {
27
- @apply -mt-8;
28
- @apply transition-all duration-300;
29
- }
30
-
31
- .classList:focus .staticContent {
32
- @apply mt-8;
33
- @apply transition-all duration-300;
34
- }
35
-
36
- .imageClassList {
37
- @apply h-full w-full object-cover;
38
- @apply h-64 overflow-hidden object-cover;
39
- @apply rounded-t-lg;
40
- height: 256px;
41
- }
42
-
43
- .contentWrapper {
44
- @apply flex flex-col items-stretch justify-between;
45
- height: calc(100% - 256px);
46
- }
47
-
48
- .movingContent {
49
- @apply bg-white;
50
- @apply mt-0 px-6 pt-6;
51
- @apply rounded-b-lg;
52
- @apply transition-all duration-300;
53
- }
54
-
55
- .staticContent {
56
- @apply h-full p-6;
57
- @apply transition-all duration-300;
58
- @apply flex flex-col items-stretch justify-between;
59
- }
60
-
61
- .title {
62
- @apply text-md font-regular;
63
- }
64
-
65
- .subtitle {
66
- @apply text-sm font-regular text-ink;
67
- }
68
-
69
- .description {
70
- @apply flex-1 pb-6 text-sm font-light;
71
- }
72
-
73
- .buttonClassList {
74
- @apply w-full;
75
- }
@@ -1,50 +0,0 @@
1
- import { Meta, StoryObj } from '@storybook/react';
2
- import { idAndClassName } from '@utils/controls';
3
-
4
- import CardWithTopImage from '.';
5
-
6
- const meta = {
7
- title: 'Components/Card With Top Image',
8
- component: CardWithTopImage,
9
- argTypes: {
10
- ...idAndClassName,
11
- children: {
12
- type: { name: 'other', value: 'string | React.ReactNode' },
13
- description: 'The child elements to show in the component',
14
- table: {
15
- type: {
16
- summary: 'Array',
17
- },
18
- defaultValue: { summary: 'undefined' },
19
- },
20
- },
21
- imageProps: {
22
- type: { name: 'other', value: 'object' },
23
- description: 'The props to pass to the image on the component',
24
- table: {
25
- type: {
26
- summary: 'object',
27
- },
28
- defaultValue: { summary: 'undefined' },
29
- },
30
- },
31
- },
32
- args: {
33
- imageProps: {
34
- src: 'https://picsum.photos/500/300',
35
- roundedFull: true,
36
- width: 4,
37
- height: 4,
38
- },
39
- children: [
40
- <p key="1">This is a child</p>,
41
- <p key="2">This is another child</p>,
42
- ],
43
- },
44
- };
45
-
46
- export default meta;
47
-
48
- type Story = StoryObj<typeof meta>;
49
-
50
- export const Default: Story = {};
@@ -1,39 +0,0 @@
1
- import React from 'react';
2
-
3
- import Image, { type Props as imageProps } from '@components/Image';
4
- import classNames from 'classnames';
5
-
6
-
7
-
8
- export interface Props {
9
- id?: string;
10
- className?: string;
11
- children?: any;
12
- imageProps?: imageProps;
13
- }
14
-
15
- const CardWithTopImage = ({
16
- id,
17
- className,
18
- children,
19
- imageProps,
20
- }: Props): JSX.Element => {
21
- const src = imageProps?.src !== undefined ? imageProps.src : '';
22
- const cardClassList = classNames(className, style.cardClasses, 'theme-local');
23
- return (
24
- <div
25
- style={{
26
- filter: 'drop-shadow(0 4px 8px rgb(154, 154, 154))',
27
- }}
28
- id={id}
29
- className={cardClassList}
30
- >
31
- <div className={style.wrapperClassList}>
32
- <Image src={src} {...imageProps} />
33
- </div>
34
- <div className={style.contentClassList}>{children}</div>
35
- </div>
36
- );
37
- };
38
-
39
- export default CardWithTopImage;
@@ -1,11 +0,0 @@
1
- .cardClasses {
2
- max-width: 500px;
3
- }
4
-
5
- .wrapperClassList {
6
- @apply mx-auto max-w-max rounded-full bg-white p-4;
7
- }
8
-
9
- .contentClassList {
10
- @apply -mt-12 h-auto bg-white px-4 pb-16 pt-12 text-black;
11
- }