oddsgate-ds 1.0.174 → 1.0.176

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 (305) hide show
  1. package/.babelrc.json +25 -25
  2. package/.editorconfig +12 -12
  3. package/.storybook/main.ts +58 -58
  4. package/.storybook/preview.ts +26 -26
  5. package/README.md +30 -30
  6. package/chromatic.config.json +6 -6
  7. package/dist/cjs/assets/components/quotes.svg +3 -3
  8. package/dist/cjs/index.js +1 -1
  9. package/dist/cjs/index.js.map +1 -1
  10. package/dist/cjs/types/components/atoms/AwardBadge/AwardBadge.component.d.ts +11 -0
  11. package/dist/cjs/types/components/atoms/AwardBadge/AwardBadge.interface.d.ts +4 -0
  12. package/dist/cjs/types/components/atoms/AwardBadge/AwardBadge.theme.d.ts +3 -0
  13. package/dist/cjs/types/components/atoms/AwardBadge/index.d.ts +1 -0
  14. package/dist/cjs/types/components/molecules/AwardCard/AwardCard.component.d.ts +15 -0
  15. package/dist/cjs/types/components/molecules/AwardCard/AwardCard.interface.d.ts +10 -0
  16. package/dist/cjs/types/components/molecules/AwardCard/AwardCard.theme.d.ts +6 -0
  17. package/dist/cjs/types/components/molecules/AwardCard/index.d.ts +1 -0
  18. package/dist/cjs/types/components/organisms/Slider/Slider.component.d.ts +1 -1
  19. package/dist/cjs/types/components/organisms/Slider/Slider.interface.d.ts +3 -0
  20. package/dist/cjs/types/index.d.ts +2 -0
  21. package/dist/esm/assets/components/quotes.svg +3 -3
  22. package/dist/esm/index.js +5 -5
  23. package/dist/esm/index.js.map +1 -1
  24. package/dist/esm/types/components/atoms/AwardBadge/AwardBadge.component.d.ts +11 -0
  25. package/dist/esm/types/components/atoms/AwardBadge/AwardBadge.interface.d.ts +4 -0
  26. package/dist/esm/types/components/atoms/AwardBadge/AwardBadge.theme.d.ts +3 -0
  27. package/dist/esm/types/components/atoms/AwardBadge/index.d.ts +1 -0
  28. package/dist/esm/types/components/molecules/AwardCard/AwardCard.component.d.ts +15 -0
  29. package/dist/esm/types/components/molecules/AwardCard/AwardCard.interface.d.ts +10 -0
  30. package/dist/esm/types/components/molecules/AwardCard/AwardCard.theme.d.ts +6 -0
  31. package/dist/esm/types/components/molecules/AwardCard/index.d.ts +1 -0
  32. package/dist/esm/types/components/organisms/Slider/Slider.component.d.ts +1 -1
  33. package/dist/esm/types/components/organisms/Slider/Slider.interface.d.ts +3 -0
  34. package/dist/esm/types/index.d.ts +2 -0
  35. package/dist/public/assets/components/quotes.svg +3 -3
  36. package/dist/public/assets/empty-state.svg +28 -28
  37. package/dist/public/fonts/Nichrome/mdnichrome-bold-webfont.svg +241 -241
  38. package/dist/public/fonts/Nichrome/mdnichrome-regular-webfont.svg +241 -241
  39. package/dist/public/fonts/miewfont/miewfont.svg +38 -38
  40. package/dist/types.d.ts +41 -2
  41. package/package.json +103 -103
  42. package/prettier.config.js +7 -7
  43. package/public/assets/components/quotes.svg +3 -3
  44. package/public/assets/empty-state.svg +28 -28
  45. package/public/fonts/Nichrome/mdnichrome-bold-webfont.svg +241 -241
  46. package/public/fonts/Nichrome/mdnichrome-regular-webfont.svg +241 -241
  47. package/public/fonts/miewfont/miewfont.svg +38 -38
  48. package/rollup.config.js +98 -98
  49. package/src/components/atoms/AwardBadge/AwardBadge.component.tsx +25 -0
  50. package/src/components/atoms/AwardBadge/AwardBadge.interface.ts +4 -0
  51. package/src/components/atoms/AwardBadge/AwardBadge.stories.tsx +48 -0
  52. package/src/components/atoms/AwardBadge/AwardBadge.theme.ts +28 -0
  53. package/src/components/atoms/AwardBadge/index.ts +1 -0
  54. package/src/components/atoms/Button/Button.component.tsx +60 -60
  55. package/src/components/atoms/Button/Button.interface.ts +29 -29
  56. package/src/components/atoms/Button/Button.stories.tsx +65 -65
  57. package/src/components/atoms/Button/Button.theme.ts +180 -180
  58. package/src/components/atoms/Button/index.ts +1 -1
  59. package/src/components/atoms/CardMarquee/CardMarquee.component.tsx +24 -24
  60. package/src/components/atoms/CardMarquee/CardMarquee.interface.ts +15 -15
  61. package/src/components/atoms/CardMarquee/CardMarquee.stories.tsx +21 -21
  62. package/src/components/atoms/CardMarquee/CardMarquee.theme.ts +48 -48
  63. package/src/components/atoms/CardMarquee/index.ts +1 -1
  64. package/src/components/atoms/Chip/Chip.component.tsx +30 -30
  65. package/src/components/atoms/Chip/Chip.interface.ts +14 -14
  66. package/src/components/atoms/Chip/Chip.stories.tsx +42 -42
  67. package/src/components/atoms/Chip/Chip.theme.ts +57 -57
  68. package/src/components/atoms/Chip/index.ts +1 -1
  69. package/src/components/atoms/CloseButton/CloseButton.component.tsx +17 -17
  70. package/src/components/atoms/CloseButton/CloseButton.interface.ts +9 -9
  71. package/src/components/atoms/CloseButton/CloseButton.stories.tsx +24 -24
  72. package/src/components/atoms/CloseButton/CloseButton.theme.ts +66 -66
  73. package/src/components/atoms/CloseButton/index.ts +1 -1
  74. package/src/components/atoms/Counter/Counter.component.tsx +99 -99
  75. package/src/components/atoms/Counter/Counter.interface.ts +10 -10
  76. package/src/components/atoms/Counter/Counter.stories.tsx +29 -29
  77. package/src/components/atoms/Counter/Counter.theme.ts +27 -27
  78. package/src/components/atoms/Counter/index.ts +1 -1
  79. package/src/components/atoms/EmptyState/EmptyState.component.tsx +27 -27
  80. package/src/components/atoms/EmptyState/EmptyState.interface.ts +10 -10
  81. package/src/components/atoms/EmptyState/EmptyState.stories.tsx +34 -34
  82. package/src/components/atoms/EmptyState/EmptyState.theme.ts +27 -27
  83. package/src/components/atoms/EmptyState/index.ts +1 -1
  84. package/src/components/atoms/Flex/Flex.component.tsx +30 -30
  85. package/src/components/atoms/Flex/Flex.interface.ts +24 -24
  86. package/src/components/atoms/Flex/Flex.theme.ts +12 -12
  87. package/src/components/atoms/Flex/index.ts +1 -1
  88. package/src/components/atoms/FlexGrid/FlexGrid.component.tsx +62 -62
  89. package/src/components/atoms/FlexGrid/FlexGrid.interface.ts +55 -55
  90. package/src/components/atoms/FlexGrid/FlexGrid.stories.tsx +59 -59
  91. package/src/components/atoms/FlexGrid/FlexGrid.theme.ts +82 -82
  92. package/src/components/atoms/FlexGrid/index.ts +1 -1
  93. package/src/components/atoms/FormField/CheckRadioField/CheckRadioField.component.tsx +24 -24
  94. package/src/components/atoms/FormField/CheckRadioField/CheckRadioField.interface.tsx +6 -6
  95. package/src/components/atoms/FormField/CheckRadioField/CheckRadioField.theme.ts +134 -134
  96. package/src/components/atoms/FormField/CheckRadioField/index.ts +1 -1
  97. package/src/components/atoms/FormField/FormField.component.tsx +37 -37
  98. package/src/components/atoms/FormField/FormField.interface.ts +10 -10
  99. package/src/components/atoms/FormField/FormField.stories.tsx +499 -499
  100. package/src/components/atoms/FormField/FormField.theme.tsx +136 -136
  101. package/src/components/atoms/FormField/index.ts +1 -1
  102. package/src/components/atoms/Heading/Heading.component.tsx +18 -18
  103. package/src/components/atoms/Heading/Heading.interface.tsx +21 -21
  104. package/src/components/atoms/Heading/Heading.theme.ts +17 -17
  105. package/src/components/atoms/Heading/index.ts +1 -1
  106. package/src/components/atoms/Icon/Icon.component.tsx +19 -19
  107. package/src/components/atoms/Icon/Icon.interface.ts +8 -8
  108. package/src/components/atoms/Icon/Icon.stories.tsx +26 -26
  109. package/src/components/atoms/Icon/Icon.theme.ts +115 -115
  110. package/src/components/atoms/Icon/index.ts +1 -1
  111. package/src/components/atoms/ImageWrapper/ImageWrapper.component.tsx +42 -42
  112. package/src/components/atoms/ImageWrapper/ImageWrapper.interface.ts +16 -16
  113. package/src/components/atoms/ImageWrapper/ImageWrapper.stories.tsx +27 -27
  114. package/src/components/atoms/ImageWrapper/ImageWrapper.theme.ts +50 -50
  115. package/src/components/atoms/ImageWrapper/index.ts +1 -1
  116. package/src/components/atoms/LegalLinks/LegalLinks.component.tsx +35 -35
  117. package/src/components/atoms/LegalLinks/LegalLinks.interface.ts +12 -12
  118. package/src/components/atoms/LegalLinks/LegalLinks.stories.tsx +43 -43
  119. package/src/components/atoms/LegalLinks/LegalLinks.theme.ts +33 -33
  120. package/src/components/atoms/LegalLinks/index.ts +1 -1
  121. package/src/components/atoms/Loader/Loader.component.tsx +26 -26
  122. package/src/components/atoms/Loader/Loader.interface.ts +10 -10
  123. package/src/components/atoms/Loader/Loader.stories.tsx +33 -33
  124. package/src/components/atoms/Loader/Loader.theme.ts +51 -51
  125. package/src/components/atoms/Loader/index.ts +1 -1
  126. package/src/components/atoms/Marquee/Marquee.component.tsx +32 -32
  127. package/src/components/atoms/Marquee/Marquee.interface.ts +10 -10
  128. package/src/components/atoms/Marquee/Marquee.stories.tsx +20 -20
  129. package/src/components/atoms/Marquee/Marquee.theme.ts +40 -40
  130. package/src/components/atoms/Marquee/index.ts +1 -1
  131. package/src/components/atoms/Quote/Quote.component.tsx +29 -29
  132. package/src/components/atoms/Quote/Quote.interface.ts +10 -10
  133. package/src/components/atoms/Quote/Quote.stories.tsx +25 -25
  134. package/src/components/atoms/Quote/Quote.theme.ts +26 -26
  135. package/src/components/atoms/Quote/index.ts +1 -1
  136. package/src/components/atoms/RichText/RichText.component.tsx +32 -32
  137. package/src/components/atoms/RichText/RichText.interface.ts +11 -11
  138. package/src/components/atoms/RichText/RichText.stories.tsx +73 -73
  139. package/src/components/atoms/RichText/RichText.theme.ts +34 -34
  140. package/src/components/atoms/RichText/index.ts +1 -1
  141. package/src/components/atoms/ScrollingNav/ScrollingNav.component.tsx +18 -18
  142. package/src/components/atoms/ScrollingNav/ScrollingNav.interface.ts +8 -8
  143. package/src/components/atoms/ScrollingNav/ScrollingNav.stories.tsx +44 -44
  144. package/src/components/atoms/ScrollingNav/ScrollingNav.theme.ts +58 -58
  145. package/src/components/atoms/ScrollingNav/index.ts +1 -1
  146. package/src/components/atoms/Separator/Separator.component.tsx +19 -19
  147. package/src/components/atoms/Separator/Separator.interface.tsx +10 -10
  148. package/src/components/atoms/Separator/Separator.stories.tsx +29 -29
  149. package/src/components/atoms/Separator/Separator.theme.ts +9 -9
  150. package/src/components/atoms/Separator/index.ts +1 -1
  151. package/src/components/atoms/SocialLinks/SocialLinks.component.tsx +42 -42
  152. package/src/components/atoms/SocialLinks/SocialLinks.interface.ts +8 -8
  153. package/src/components/atoms/SocialLinks/SocialLinks.stories.tsx +48 -48
  154. package/src/components/atoms/SocialLinks/SocialLinks.theme.ts +80 -80
  155. package/src/components/atoms/SocialLinks/index.ts +1 -1
  156. package/src/components/atoms/Spacer/Spacer.component.tsx +34 -34
  157. package/src/components/atoms/Spacer/Spacer.interface.ts +24 -24
  158. package/src/components/atoms/Spacer/Spacer.stories.tsx +99 -99
  159. package/src/components/atoms/Spacer/Spacer.theme.ts +33 -33
  160. package/src/components/atoms/Spacer/index.ts +1 -1
  161. package/src/components/atoms/Video/Video.component.tsx +116 -116
  162. package/src/components/atoms/Video/Video.interface.ts +13 -13
  163. package/src/components/atoms/Video/Video.stories.tsx +37 -37
  164. package/src/components/atoms/Video/Video.theme.ts +44 -44
  165. package/src/components/atoms/Video/index.ts +1 -1
  166. package/src/components/atoms/VideoEmbed/VideoEmbed.component.tsx +109 -109
  167. package/src/components/atoms/VideoEmbed/VideoEmbed.interface.ts +13 -13
  168. package/src/components/atoms/VideoEmbed/VideoEmbed.stories.tsx +23 -23
  169. package/src/components/atoms/VideoEmbed/VideoEmbed.theme.ts +45 -45
  170. package/src/components/atoms/VideoEmbed/index.ts +1 -1
  171. package/src/components/common/PortalComponent/PortalComponent.tsx +48 -48
  172. package/src/components/common/PortalComponent/index.ts +1 -1
  173. package/src/components/molecules/Accordion/Accordion.component.tsx +58 -58
  174. package/src/components/molecules/Accordion/Accordion.interface.ts +15 -15
  175. package/src/components/molecules/Accordion/Accordion.stories.tsx +100 -100
  176. package/src/components/molecules/Accordion/Accordion.theme.ts +93 -93
  177. package/src/components/molecules/Accordion/index.ts +1 -1
  178. package/src/components/molecules/AwardCard/AwardCard.component.tsx +51 -0
  179. package/src/components/molecules/AwardCard/AwardCard.interface.ts +10 -0
  180. package/src/components/molecules/AwardCard/AwardCard.stories.tsx +34 -0
  181. package/src/components/molecules/AwardCard/AwardCard.theme.ts +33 -0
  182. package/src/components/molecules/AwardCard/index.ts +1 -0
  183. package/src/components/molecules/BlogCard/BlogCard.component.tsx +48 -48
  184. package/src/components/molecules/BlogCard/BlogCard.interface.ts +10 -10
  185. package/src/components/molecules/BlogCard/BlogCard.stories.tsx +37 -37
  186. package/src/components/molecules/BlogCard/BlogCard.theme.ts +41 -41
  187. package/src/components/molecules/BlogCard/index.ts +1 -1
  188. package/src/components/molecules/Card/Card.component.tsx +15 -15
  189. package/src/components/molecules/Card/Card.interface.ts +11 -11
  190. package/src/components/molecules/Card/Card.theme.ts +54 -54
  191. package/src/components/molecules/Card/index.ts +1 -1
  192. package/src/components/molecules/CareersCard/CareersCard.component.tsx +27 -27
  193. package/src/components/molecules/CareersCard/CareersCard.interface.ts +7 -7
  194. package/src/components/molecules/CareersCard/CareersCard.stories.tsx +30 -30
  195. package/src/components/molecules/CareersCard/CareersCard.theme.ts +13 -13
  196. package/src/components/molecules/CareersCard/index.ts +1 -1
  197. package/src/components/molecules/Dropdown/Dropdown.component.tsx +67 -67
  198. package/src/components/molecules/Dropdown/Dropdown.interface.ts +26 -26
  199. package/src/components/molecules/Dropdown/Dropdown.stories.tsx +54 -54
  200. package/src/components/molecules/Dropdown/Dropdown.theme.ts +69 -69
  201. package/src/components/molecules/Dropdown/index.ts +1 -1
  202. package/src/components/molecules/EventsCard/EventsCard.component.tsx +40 -40
  203. package/src/components/molecules/EventsCard/EventsCard.interface.ts +9 -9
  204. package/src/components/molecules/EventsCard/EventsCard.stories.tsx +37 -37
  205. package/src/components/molecules/EventsCard/EventsCard.theme.ts +33 -33
  206. package/src/components/molecules/EventsCard/index.ts +1 -1
  207. package/src/components/molecules/IconBox/IconBox.component.tsx +29 -29
  208. package/src/components/molecules/IconBox/IconBox.interface.tsx +10 -10
  209. package/src/components/molecules/IconBox/IconBox.stories.tsx +23 -23
  210. package/src/components/molecules/IconBox/IconBox.theme.ts +25 -25
  211. package/src/components/molecules/IconBox/index.ts +1 -1
  212. package/src/components/molecules/IconTitle/IconTitle.component.tsx +24 -24
  213. package/src/components/molecules/IconTitle/IconTitle.interface.tsx +10 -10
  214. package/src/components/molecules/IconTitle/IconTitle.stories.tsx +49 -49
  215. package/src/components/molecules/IconTitle/IconTitle.theme.ts +10 -10
  216. package/src/components/molecules/IconTitle/index.ts +1 -1
  217. package/src/components/molecules/LicenseCard/LicenseCard.component.tsx +27 -27
  218. package/src/components/molecules/LicenseCard/LicenseCard.interface.ts +6 -6
  219. package/src/components/molecules/LicenseCard/LicenseCard.stories.tsx +42 -42
  220. package/src/components/molecules/LicenseCard/LicenseCard.theme.ts +28 -28
  221. package/src/components/molecules/LicenseCard/index.ts +1 -1
  222. package/src/components/molecules/LogosCard/LogosCard.component.tsx +14 -14
  223. package/src/components/molecules/LogosCard/LogosCard.interface.ts +8 -8
  224. package/src/components/molecules/LogosCard/LogosCard.stories.tsx +38 -38
  225. package/src/components/molecules/LogosCard/LogosCard.theme.ts +19 -19
  226. package/src/components/molecules/LogosCard/index.ts +1 -1
  227. package/src/components/molecules/Modal/Modal.component.tsx +70 -70
  228. package/src/components/molecules/Modal/Modal.interface.ts +11 -11
  229. package/src/components/molecules/Modal/Modal.stories.tsx +57 -57
  230. package/src/components/molecules/Modal/Modal.theme.ts +55 -55
  231. package/src/components/molecules/Modal/index.ts +1 -1
  232. package/src/components/molecules/NewsCard/NewsCard.component.tsx +55 -55
  233. package/src/components/molecules/NewsCard/NewsCard.interface.ts +9 -9
  234. package/src/components/molecules/NewsCard/NewsCard.stories.tsx +44 -44
  235. package/src/components/molecules/NewsCard/NewsCard.theme.ts +77 -77
  236. package/src/components/molecules/NewsCard/index.ts +1 -1
  237. package/src/components/molecules/OffCanvas/OffCanvas.component.tsx +55 -55
  238. package/src/components/molecules/OffCanvas/OffCanvas.interface.ts +12 -12
  239. package/src/components/molecules/OffCanvas/OffCanvas.stories.tsx +55 -55
  240. package/src/components/molecules/OffCanvas/OffCanvas.theme.ts +50 -50
  241. package/src/components/molecules/OffCanvas/index.ts +1 -1
  242. package/src/components/molecules/ProductCard/ProductCard.component.tsx +60 -60
  243. package/src/components/molecules/ProductCard/ProductCard.interface.ts +7 -7
  244. package/src/components/molecules/ProductCard/ProductCard.stories.tsx +42 -42
  245. package/src/components/molecules/ProductCard/ProductCard.theme.ts +26 -26
  246. package/src/components/molecules/ProductCard/index.ts +1 -1
  247. package/src/components/molecules/ShareModal/ShareModal.component.tsx +167 -167
  248. package/src/components/molecules/ShareModal/ShareModal.interface.ts +9 -9
  249. package/src/components/molecules/ShareModal/ShareModal.stories.tsx +33 -33
  250. package/src/components/molecules/ShareModal/ShareModal.theme.ts +103 -103
  251. package/src/components/molecules/ShareModal/index.ts +1 -1
  252. package/src/components/molecules/TeamCard/TeamCard.component.tsx +31 -31
  253. package/src/components/molecules/TeamCard/TeamCard.interface.ts +7 -7
  254. package/src/components/molecules/TeamCard/TeamCard.stories.tsx +33 -33
  255. package/src/components/molecules/TeamCard/TeamCard.theme.ts +12 -12
  256. package/src/components/molecules/TeamCard/index.ts +1 -1
  257. package/src/components/organisms/CircularSlider/CircularSlider.component.tsx +231 -231
  258. package/src/components/organisms/CircularSlider/CircularSlider.interface.ts +13 -13
  259. package/src/components/organisms/CircularSlider/CircularSlider.stories.tsx +138 -138
  260. package/src/components/organisms/CircularSlider/CircularSlider.theme.ts +126 -126
  261. package/src/components/organisms/CircularSlider/index.ts +1 -1
  262. package/src/components/organisms/Cover/Cover.component.tsx +46 -46
  263. package/src/components/organisms/Cover/Cover.interface.ts +14 -14
  264. package/src/components/organisms/Cover/Cover.stories.tsx +97 -97
  265. package/src/components/organisms/Cover/Cover.theme.ts +49 -49
  266. package/src/components/organisms/Cover/index.ts +1 -1
  267. package/src/components/organisms/ProductsSlider/ProductsSlider.component.tsx +216 -216
  268. package/src/components/organisms/ProductsSlider/ProductsSlider.interface.ts +12 -12
  269. package/src/components/organisms/ProductsSlider/ProductsSlider.stories.tsx +132 -132
  270. package/src/components/organisms/ProductsSlider/ProductsSlider.theme.ts +77 -77
  271. package/src/components/organisms/ProductsSlider/index.ts +1 -1
  272. package/src/components/organisms/ProductsSlider//306/222.js +164 -164
  273. package/src/components/organisms/Slider/Slider.component.tsx +156 -154
  274. package/src/components/organisms/Slider/Slider.interface.ts +23 -19
  275. package/src/components/organisms/Slider/Slider.stories.tsx +223 -146
  276. package/src/components/organisms/Slider/Slider.theme.ts +144 -145
  277. package/src/components/organisms/Slider/Slider.utils.tsx +19 -19
  278. package/src/components/organisms/Slider/index.ts +1 -1
  279. package/src/components/organisms/Tabs/Tabs.component.tsx +88 -88
  280. package/src/components/organisms/Tabs/Tabs.interface.ts +18 -18
  281. package/src/components/organisms/Tabs/Tabs.stories.tsx +118 -118
  282. package/src/components/organisms/Tabs/Tabs.theme.ts +115 -115
  283. package/src/components/organisms/Tabs/index.ts +1 -1
  284. package/src/helpers/clickOutsideToClose.tsx +17 -17
  285. package/src/helpers/events.ts +9 -9
  286. package/src/helpers/exportCSS.tsx +27 -27
  287. package/src/helpers/getIcons.ts +5 -5
  288. package/src/helpers/isTouchDevice.tsx +11 -11
  289. package/src/helpers/useInterval.ts +25 -25
  290. package/src/helpers/useMediaMatch.tsx +26 -26
  291. package/src/helpers/uuid.ts +5 -5
  292. package/src/iconsList.json +1 -1
  293. package/src/index.ts +70 -68
  294. package/src/reportWebVitals.js +13 -13
  295. package/src/stories/Documentation/Colors.stories.tsx +46 -46
  296. package/src/stories/Documentation/Headings.stories.tsx +24 -24
  297. package/src/stories/Documentation/Icons.stories.tsx +73 -73
  298. package/src/stories/Documentation/JWT.stories.tsx +60 -60
  299. package/src/stories/Documentation/Utilities.stories.tsx +65 -65
  300. package/src/styles/Global.ts +301 -301
  301. package/src/styles/grid.ts +70 -70
  302. package/src/styles/reset.ts +47 -47
  303. package/src/styles/utilities.ts +374 -374
  304. package/src/styles/variables.ts +180 -180
  305. package/tsconfig.json +31 -31
@@ -1,55 +1,55 @@
1
- import Chip from '@/components/atoms/Chip/Chip.component'
2
- import Heading from '@/components/atoms/Heading'
3
- import { INewsCard } from './NewsCard.interface'
4
- import ImageWrapper from '@/components/atoms/ImageWrapper'
5
- import React from 'react'
6
-
7
- import { StyledNewsCard } from './NewsCard.theme'
8
-
9
- const NewsCard = ({
10
- variant,
11
- date,
12
- category,
13
- title,
14
- imageElement,
15
- linkElement,
16
- description,
17
- ...props
18
- }: INewsCard) => {
19
- return (
20
- <StyledNewsCard
21
- $variant={variant}
22
- imageElement={
23
- <>
24
- <ImageWrapper aspectRatioHeight={63}>{imageElement}</ImageWrapper>
25
- </>
26
- }
27
- >
28
- <div>
29
- <Heading
30
- tag={'h3'}
31
- size={variant === 'featured' ? 'h3' : 'h4'}
32
- className={'fw-bold textEllipsis'}
33
- >
34
- {title}
35
- </Heading>
36
- <Heading tag={'span'} size={'captions'} className={'textEllipsis mt-3'}>
37
- {description}
38
- </Heading>
39
- </div>
40
- {date && (
41
- <Heading
42
- tag={'span'}
43
- size={variant === 'featured' ? 'h5' : 'texts'}
44
- className={'fw-bold mt-4'}
45
- >
46
- {date}
47
- </Heading>
48
- )}
49
-
50
- {linkElement}
51
- </StyledNewsCard>
52
- )
53
- }
54
-
55
- export default NewsCard
1
+ import Chip from '@/components/atoms/Chip/Chip.component'
2
+ import Heading from '@/components/atoms/Heading'
3
+ import { INewsCard } from './NewsCard.interface'
4
+ import ImageWrapper from '@/components/atoms/ImageWrapper'
5
+ import React from 'react'
6
+
7
+ import { StyledNewsCard } from './NewsCard.theme'
8
+
9
+ const NewsCard = ({
10
+ variant,
11
+ date,
12
+ category,
13
+ title,
14
+ imageElement,
15
+ linkElement,
16
+ description,
17
+ ...props
18
+ }: INewsCard) => {
19
+ return (
20
+ <StyledNewsCard
21
+ $variant={variant}
22
+ imageElement={
23
+ <>
24
+ <ImageWrapper aspectRatioHeight={63}>{imageElement}</ImageWrapper>
25
+ </>
26
+ }
27
+ >
28
+ <div>
29
+ <Heading
30
+ tag={'h3'}
31
+ size={variant === 'featured' ? 'h3' : 'h4'}
32
+ className={'fw-bold textEllipsis'}
33
+ >
34
+ {title}
35
+ </Heading>
36
+ <Heading tag={'span'} size={'captions'} className={'textEllipsis mt-3'}>
37
+ {description}
38
+ </Heading>
39
+ </div>
40
+ {date && (
41
+ <Heading
42
+ tag={'span'}
43
+ size={variant === 'featured' ? 'h5' : 'texts'}
44
+ className={'fw-bold mt-4'}
45
+ >
46
+ {date}
47
+ </Heading>
48
+ )}
49
+
50
+ {linkElement}
51
+ </StyledNewsCard>
52
+ )
53
+ }
54
+
55
+ export default NewsCard
@@ -1,9 +1,9 @@
1
- import { ICard } from '../Card/Card.interface';
2
-
3
- export interface INewsCard extends ICard {
4
- date?: string,
5
- category?: string
6
- title?: string
7
- description?: string | React.ReactElement
8
- linkElement?: React.ReactElement
9
- }
1
+ import { ICard } from '../Card/Card.interface';
2
+
3
+ export interface INewsCard extends ICard {
4
+ date?: string,
5
+ category?: string
6
+ title?: string
7
+ description?: string | React.ReactElement
8
+ linkElement?: React.ReactElement
9
+ }
@@ -1,44 +1,44 @@
1
- import type { Meta, StoryObj } from '@storybook/react'
2
-
3
- import { INewsCard } from './NewsCard.interface'
4
- import NewsCard from './NewsCard.component'
5
- import React from 'react'
6
-
7
- // More on default export: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
8
- export default {
9
- title: 'Components/NewsCard',
10
- component: NewsCard,
11
- tags: ['autodocs']
12
- } as Meta
13
-
14
- const image = (
15
- <img
16
- width="100%"
17
- height="100%"
18
- sizes="100vw"
19
- decoding="async"
20
- src="/assets/placeholder.png"
21
- alt="Empty state"
22
- />
23
- )
24
-
25
- export const Simple: StoryObj<INewsCard> = {
26
- render: args => <NewsCard {...args} style={{ maxWidth: '320px' }}></NewsCard>,
27
- args: {
28
- date: '24 nov 23',
29
- category: 'Category name',
30
- title: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
31
- imageElement: image,
32
- linkElement: <a href="#" className="linker"></a>
33
- }
34
- }
35
-
36
- export const Featured: StoryObj<INewsCard> = {
37
- render: args => (
38
- <NewsCard {...args} style={{ maxWidth: '620px' }}></NewsCard>
39
- ),
40
- args: {
41
- ...Simple.args,
42
- variant: "featured"
43
- }
44
- }
1
+ import type { Meta, StoryObj } from '@storybook/react'
2
+
3
+ import { INewsCard } from './NewsCard.interface'
4
+ import NewsCard from './NewsCard.component'
5
+ import React from 'react'
6
+
7
+ // More on default export: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
8
+ export default {
9
+ title: 'Components/NewsCard',
10
+ component: NewsCard,
11
+ tags: ['autodocs']
12
+ } as Meta
13
+
14
+ const image = (
15
+ <img
16
+ width="100%"
17
+ height="100%"
18
+ sizes="100vw"
19
+ decoding="async"
20
+ src="/assets/placeholder.png"
21
+ alt="Empty state"
22
+ />
23
+ )
24
+
25
+ export const Simple: StoryObj<INewsCard> = {
26
+ render: args => <NewsCard {...args} style={{ maxWidth: '320px' }}></NewsCard>,
27
+ args: {
28
+ date: '24 nov 23',
29
+ category: 'Category name',
30
+ title: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
31
+ imageElement: image,
32
+ linkElement: <a href="#" className="linker"></a>
33
+ }
34
+ }
35
+
36
+ export const Featured: StoryObj<INewsCard> = {
37
+ render: args => (
38
+ <NewsCard {...args} style={{ maxWidth: '620px' }}></NewsCard>
39
+ ),
40
+ args: {
41
+ ...Simple.args,
42
+ variant: "featured"
43
+ }
44
+ }
@@ -1,77 +1,77 @@
1
- import { colors, radius, responsiveMedia } from '@/styles/variables';
2
- import styled, { css } from 'styled-components';
3
-
4
- import Card from '../Card/Card.component';
5
- import { INewsCard } from './NewsCard.interface';
6
- import { StyledChip } from '@/components/atoms/Chip/Chip.theme';
7
-
8
- export const StyledNewsCard = styled(Card) <INewsCard>`
9
- padding: 1rem;
10
- color: ${colors.secondary50};
11
- background-color: ${colors.third50};
12
- border-radius: ${radius.md};
13
- text-align:left;
14
-
15
- ${StyledChip}{
16
- position: absolute;
17
- top: 2rem;
18
- left: 2rem;
19
- z-index: 10;
20
- }
21
-
22
- & picture{
23
- & img{
24
- opacity: 1 !important;
25
- }
26
- }
27
-
28
- & figcaption{
29
-
30
- }
31
-
32
- ${(props) => {
33
- switch (props.$variant) {
34
- case "primary": default:
35
- return css`
36
-
37
-
38
- `;
39
- case "featured":
40
- return css`
41
- @media only screen and (min-width: ${responsiveMedia}) {
42
-
43
- display: flex;
44
- align-items:stretch;
45
- justify-content: space-between;
46
- flex-flow: row-reverse;
47
-
48
- ${StyledChip}{
49
- position: relative;
50
- top: 0;
51
- left: 0;
52
- }
53
-
54
- & picture{
55
- width: 45%;
56
- }
57
- & figcaption{
58
- display: flex;
59
- flex-flow: column;
60
- justify-content: space-between;
61
-
62
- width: 45%;
63
- padding:1.6rem;
64
- }
65
- }
66
- `;
67
- }
68
- }}
69
-
70
-
71
- &:hover{
72
- & figcaption{
73
-
74
- }
75
- }
76
- `;
77
-
1
+ import { colors, radius, responsiveMedia } from '@/styles/variables';
2
+ import styled, { css } from 'styled-components';
3
+
4
+ import Card from '../Card/Card.component';
5
+ import { INewsCard } from './NewsCard.interface';
6
+ import { StyledChip } from '@/components/atoms/Chip/Chip.theme';
7
+
8
+ export const StyledNewsCard = styled(Card) <INewsCard>`
9
+ padding: 1rem;
10
+ color: ${colors.secondary50};
11
+ background-color: ${colors.third50};
12
+ border-radius: ${radius.md};
13
+ text-align:left;
14
+
15
+ ${StyledChip}{
16
+ position: absolute;
17
+ top: 2rem;
18
+ left: 2rem;
19
+ z-index: 10;
20
+ }
21
+
22
+ & picture{
23
+ & img{
24
+ opacity: 1 !important;
25
+ }
26
+ }
27
+
28
+ & figcaption{
29
+
30
+ }
31
+
32
+ ${(props) => {
33
+ switch (props.$variant) {
34
+ case "primary": default:
35
+ return css`
36
+
37
+
38
+ `;
39
+ case "featured":
40
+ return css`
41
+ @media only screen and (min-width: ${responsiveMedia}) {
42
+
43
+ display: flex;
44
+ align-items:stretch;
45
+ justify-content: space-between;
46
+ flex-flow: row-reverse;
47
+
48
+ ${StyledChip}{
49
+ position: relative;
50
+ top: 0;
51
+ left: 0;
52
+ }
53
+
54
+ & picture{
55
+ width: 45%;
56
+ }
57
+ & figcaption{
58
+ display: flex;
59
+ flex-flow: column;
60
+ justify-content: space-between;
61
+
62
+ width: 45%;
63
+ padding:1.6rem;
64
+ }
65
+ }
66
+ `;
67
+ }
68
+ }}
69
+
70
+
71
+ &:hover{
72
+ & figcaption{
73
+
74
+ }
75
+ }
76
+ `;
77
+
@@ -1 +1 @@
1
- export { default } from "./NewsCard.component";
1
+ export { default } from "./NewsCard.component";
@@ -1,55 +1,55 @@
1
- import React, { useMemo } from 'react'
2
-
3
- import CloseButton from '@/components/atoms/CloseButton/CloseButton.component'
4
- import { IOffCanvas } from './OffCanvas.interface'
5
- import PortalComponent from '../../common/PortalComponent'
6
- import { StyledOffCanvas } from './OffCanvas.theme'
7
- import { getId } from '@/helpers/uuid'
8
-
9
- const OffCanvas = ({
10
- isOpen,
11
- title,
12
- actions,
13
- children,
14
- className,
15
- onClose
16
- }: IOffCanvas) => {
17
- const wrapperId = useMemo(() => getId(), [])
18
-
19
- return (
20
- <PortalComponent wrapperId={wrapperId}>
21
- <StyledOffCanvas
22
- $isOpen={isOpen}
23
- className={className}
24
- data-lenis-prevent={true}
25
- >
26
- <div className="d-flex h-100">
27
- <div className="w-100 align-self-start">
28
- <div
29
- className={
30
- 'd-flex d-md-none w-100 align-items-center justify-content-between mb-3'
31
- }
32
- >
33
- {title}
34
- <CloseButton
35
- variant="sm"
36
- style={{ position: 'relative', top: 0, left: 0 }}
37
- onClick={onClose}
38
- ></CloseButton>
39
- </div>
40
- <div className={'w-100'}>{children}</div>
41
- </div>
42
- <div
43
- className={
44
- 'd-flex d-md-none w-100 align-self-end align-items-center justify-content-end mt-3'
45
- }
46
- >
47
- {actions}
48
- </div>
49
- </div>
50
- </StyledOffCanvas>
51
- </PortalComponent>
52
- )
53
- }
54
-
55
- export default OffCanvas
1
+ import React, { useMemo } from 'react'
2
+
3
+ import CloseButton from '@/components/atoms/CloseButton/CloseButton.component'
4
+ import { IOffCanvas } from './OffCanvas.interface'
5
+ import PortalComponent from '../../common/PortalComponent'
6
+ import { StyledOffCanvas } from './OffCanvas.theme'
7
+ import { getId } from '@/helpers/uuid'
8
+
9
+ const OffCanvas = ({
10
+ isOpen,
11
+ title,
12
+ actions,
13
+ children,
14
+ className,
15
+ onClose
16
+ }: IOffCanvas) => {
17
+ const wrapperId = useMemo(() => getId(), [])
18
+
19
+ return (
20
+ <PortalComponent wrapperId={wrapperId}>
21
+ <StyledOffCanvas
22
+ $isOpen={isOpen}
23
+ className={className}
24
+ data-lenis-prevent={true}
25
+ >
26
+ <div className="d-flex h-100">
27
+ <div className="w-100 align-self-start">
28
+ <div
29
+ className={
30
+ 'd-flex d-md-none w-100 align-items-center justify-content-between mb-3'
31
+ }
32
+ >
33
+ {title}
34
+ <CloseButton
35
+ variant="sm"
36
+ style={{ position: 'relative', top: 0, left: 0 }}
37
+ onClick={onClose}
38
+ ></CloseButton>
39
+ </div>
40
+ <div className={'w-100'}>{children}</div>
41
+ </div>
42
+ <div
43
+ className={
44
+ 'd-flex d-md-none w-100 align-self-end align-items-center justify-content-end mt-3'
45
+ }
46
+ >
47
+ {actions}
48
+ </div>
49
+ </div>
50
+ </StyledOffCanvas>
51
+ </PortalComponent>
52
+ )
53
+ }
54
+
55
+ export default OffCanvas
@@ -1,12 +1,12 @@
1
- import { CSSProperties } from "react";
2
-
3
- export interface IOffCanvas {
4
- isOpen?: boolean;
5
- $isOpen?: boolean;
6
- actions?: React.ReactNode;
7
- title?: React.ReactNode;
8
- className?: string;
9
- style?: CSSProperties
10
- children?: React.ReactNode;
11
- onClose?: () => void;
12
- };
1
+ import { CSSProperties } from "react";
2
+
3
+ export interface IOffCanvas {
4
+ isOpen?: boolean;
5
+ $isOpen?: boolean;
6
+ actions?: React.ReactNode;
7
+ title?: React.ReactNode;
8
+ className?: string;
9
+ style?: CSSProperties
10
+ children?: React.ReactNode;
11
+ onClose?: () => void;
12
+ };
@@ -1,55 +1,55 @@
1
- import type { Meta, StoryObj } from '@storybook/react'
2
- import React, { useState } from 'react'
3
-
4
- import Button from '../../atoms/Button'
5
- import Flex from '../../atoms/Flex'
6
- import { IOffCanvas } from './OffCanvas.interface'
7
- import OffCanvas from './OffCanvas.component'
8
- import RichText from '../../atoms/RichText'
9
-
10
- export default {
11
- title: 'Components/OffCanvas',
12
- component: OffCanvas,
13
- tags: ['autodocs']
14
- } as Meta
15
-
16
- export const Simple: StoryObj<IOffCanvas> = {
17
- render: args => {
18
- const [isOpen, setIsOpen] = useState(false)
19
- return (
20
- <div
21
- style={{
22
- width: '600px',
23
- minHeight: '400px',
24
- margin: 'auto'
25
- }}
26
- >
27
- <Button onClick={() => setIsOpen(true)}>Open</Button>
28
- <OffCanvas
29
- title={'Ainda não está registado?'}
30
- isOpen={isOpen}
31
- onClose={() => setIsOpen(false)}
32
- >
33
- <RichText style={{ color: '$gray400' }}>
34
- Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
35
- eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
36
- ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
37
- aliquip ex ea commodo consequat. Duis aute irure dolor in
38
- reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
39
- pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
40
- culpa qui officia deserunt mollit anim id est laborum.
41
- </RichText>
42
-
43
- <Flex style={{ marginTop: '$8' }} align={'center'}>
44
- <Button variant={'primary'}>Lorem ipsum</Button>
45
- <RichText style={{ fontWeight: '600' }}>ou</RichText>
46
- <Button outlined={true} variant={'primary'}>
47
- dolor sit amet
48
- </Button>
49
- </Flex>
50
- </OffCanvas>
51
- </div>
52
- )
53
- },
54
- args: {}
55
- }
1
+ import type { Meta, StoryObj } from '@storybook/react'
2
+ import React, { useState } from 'react'
3
+
4
+ import Button from '../../atoms/Button'
5
+ import Flex from '../../atoms/Flex'
6
+ import { IOffCanvas } from './OffCanvas.interface'
7
+ import OffCanvas from './OffCanvas.component'
8
+ import RichText from '../../atoms/RichText'
9
+
10
+ export default {
11
+ title: 'Components/OffCanvas',
12
+ component: OffCanvas,
13
+ tags: ['autodocs']
14
+ } as Meta
15
+
16
+ export const Simple: StoryObj<IOffCanvas> = {
17
+ render: args => {
18
+ const [isOpen, setIsOpen] = useState(false)
19
+ return (
20
+ <div
21
+ style={{
22
+ width: '600px',
23
+ minHeight: '400px',
24
+ margin: 'auto'
25
+ }}
26
+ >
27
+ <Button onClick={() => setIsOpen(true)}>Open</Button>
28
+ <OffCanvas
29
+ title={'Ainda não está registado?'}
30
+ isOpen={isOpen}
31
+ onClose={() => setIsOpen(false)}
32
+ >
33
+ <RichText style={{ color: '$gray400' }}>
34
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
35
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
36
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
37
+ aliquip ex ea commodo consequat. Duis aute irure dolor in
38
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
39
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
40
+ culpa qui officia deserunt mollit anim id est laborum.
41
+ </RichText>
42
+
43
+ <Flex style={{ marginTop: '$8' }} align={'center'}>
44
+ <Button variant={'primary'}>Lorem ipsum</Button>
45
+ <RichText style={{ fontWeight: '600' }}>ou</RichText>
46
+ <Button outlined={true} variant={'primary'}>
47
+ dolor sit amet
48
+ </Button>
49
+ </Flex>
50
+ </OffCanvas>
51
+ </div>
52
+ )
53
+ },
54
+ args: {}
55
+ }