oddsgate-ds 1.0.169 → 1.0.174

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 (268) 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/esm/assets/components/quotes.svg +3 -3
  9. package/dist/public/assets/components/quotes.svg +3 -3
  10. package/dist/public/assets/empty-state.svg +28 -28
  11. package/dist/public/fonts/Nichrome/mdnichrome-bold-webfont.svg +241 -241
  12. package/dist/public/fonts/Nichrome/mdnichrome-regular-webfont.svg +241 -241
  13. package/dist/public/fonts/miewfont/miewfont.svg +38 -38
  14. package/package.json +103 -103
  15. package/prettier.config.js +7 -7
  16. package/public/assets/components/quotes.svg +3 -3
  17. package/public/assets/empty-state.svg +28 -28
  18. package/public/fonts/Nichrome/mdnichrome-bold-webfont.svg +241 -241
  19. package/public/fonts/Nichrome/mdnichrome-regular-webfont.svg +241 -241
  20. package/public/fonts/miewfont/miewfont.svg +38 -38
  21. package/rollup.config.js +98 -98
  22. package/src/components/atoms/Button/Button.component.tsx +60 -60
  23. package/src/components/atoms/Button/Button.interface.ts +29 -29
  24. package/src/components/atoms/Button/Button.stories.tsx +65 -65
  25. package/src/components/atoms/Button/Button.theme.ts +180 -180
  26. package/src/components/atoms/Button/index.ts +1 -1
  27. package/src/components/atoms/CardMarquee/CardMarquee.component.tsx +24 -24
  28. package/src/components/atoms/CardMarquee/CardMarquee.interface.ts +15 -15
  29. package/src/components/atoms/CardMarquee/CardMarquee.stories.tsx +21 -21
  30. package/src/components/atoms/CardMarquee/CardMarquee.theme.ts +48 -48
  31. package/src/components/atoms/CardMarquee/index.ts +1 -1
  32. package/src/components/atoms/Chip/Chip.component.tsx +30 -30
  33. package/src/components/atoms/Chip/Chip.interface.ts +14 -14
  34. package/src/components/atoms/Chip/Chip.stories.tsx +42 -42
  35. package/src/components/atoms/Chip/Chip.theme.ts +57 -57
  36. package/src/components/atoms/Chip/index.ts +1 -1
  37. package/src/components/atoms/CloseButton/CloseButton.component.tsx +17 -17
  38. package/src/components/atoms/CloseButton/CloseButton.interface.ts +9 -9
  39. package/src/components/atoms/CloseButton/CloseButton.stories.tsx +24 -24
  40. package/src/components/atoms/CloseButton/CloseButton.theme.ts +66 -66
  41. package/src/components/atoms/CloseButton/index.ts +1 -1
  42. package/src/components/atoms/Counter/Counter.component.tsx +99 -99
  43. package/src/components/atoms/Counter/Counter.interface.ts +10 -10
  44. package/src/components/atoms/Counter/Counter.stories.tsx +29 -29
  45. package/src/components/atoms/Counter/Counter.theme.ts +27 -27
  46. package/src/components/atoms/Counter/index.ts +1 -1
  47. package/src/components/atoms/EmptyState/EmptyState.component.tsx +27 -27
  48. package/src/components/atoms/EmptyState/EmptyState.interface.ts +10 -10
  49. package/src/components/atoms/EmptyState/EmptyState.stories.tsx +34 -34
  50. package/src/components/atoms/EmptyState/EmptyState.theme.ts +27 -27
  51. package/src/components/atoms/EmptyState/index.ts +1 -1
  52. package/src/components/atoms/Flex/Flex.component.tsx +30 -30
  53. package/src/components/atoms/Flex/Flex.interface.ts +24 -24
  54. package/src/components/atoms/Flex/Flex.theme.ts +12 -12
  55. package/src/components/atoms/Flex/index.ts +1 -1
  56. package/src/components/atoms/FlexGrid/FlexGrid.component.tsx +62 -62
  57. package/src/components/atoms/FlexGrid/FlexGrid.interface.ts +55 -55
  58. package/src/components/atoms/FlexGrid/FlexGrid.stories.tsx +59 -59
  59. package/src/components/atoms/FlexGrid/FlexGrid.theme.ts +82 -82
  60. package/src/components/atoms/FlexGrid/index.ts +1 -1
  61. package/src/components/atoms/FormField/CheckRadioField/CheckRadioField.component.tsx +24 -24
  62. package/src/components/atoms/FormField/CheckRadioField/CheckRadioField.interface.tsx +6 -6
  63. package/src/components/atoms/FormField/CheckRadioField/CheckRadioField.theme.ts +134 -134
  64. package/src/components/atoms/FormField/CheckRadioField/index.ts +1 -1
  65. package/src/components/atoms/FormField/FormField.component.tsx +37 -37
  66. package/src/components/atoms/FormField/FormField.interface.ts +10 -10
  67. package/src/components/atoms/FormField/FormField.stories.tsx +499 -499
  68. package/src/components/atoms/FormField/FormField.theme.tsx +136 -136
  69. package/src/components/atoms/FormField/index.ts +1 -1
  70. package/src/components/atoms/Heading/Heading.component.tsx +18 -18
  71. package/src/components/atoms/Heading/Heading.interface.tsx +21 -21
  72. package/src/components/atoms/Heading/Heading.theme.ts +17 -17
  73. package/src/components/atoms/Heading/index.ts +1 -1
  74. package/src/components/atoms/Icon/Icon.component.tsx +19 -19
  75. package/src/components/atoms/Icon/Icon.interface.ts +8 -8
  76. package/src/components/atoms/Icon/Icon.stories.tsx +26 -26
  77. package/src/components/atoms/Icon/Icon.theme.ts +115 -115
  78. package/src/components/atoms/Icon/index.ts +1 -1
  79. package/src/components/atoms/ImageWrapper/ImageWrapper.component.tsx +42 -42
  80. package/src/components/atoms/ImageWrapper/ImageWrapper.interface.ts +16 -16
  81. package/src/components/atoms/ImageWrapper/ImageWrapper.stories.tsx +27 -27
  82. package/src/components/atoms/ImageWrapper/ImageWrapper.theme.ts +50 -50
  83. package/src/components/atoms/ImageWrapper/index.ts +1 -1
  84. package/src/components/atoms/LegalLinks/LegalLinks.component.tsx +35 -35
  85. package/src/components/atoms/LegalLinks/LegalLinks.interface.ts +12 -12
  86. package/src/components/atoms/LegalLinks/LegalLinks.stories.tsx +43 -43
  87. package/src/components/atoms/LegalLinks/LegalLinks.theme.ts +33 -33
  88. package/src/components/atoms/LegalLinks/index.ts +1 -1
  89. package/src/components/atoms/Loader/Loader.component.tsx +26 -26
  90. package/src/components/atoms/Loader/Loader.interface.ts +10 -10
  91. package/src/components/atoms/Loader/Loader.stories.tsx +33 -33
  92. package/src/components/atoms/Loader/Loader.theme.ts +51 -51
  93. package/src/components/atoms/Loader/index.ts +1 -1
  94. package/src/components/atoms/Marquee/Marquee.component.tsx +32 -32
  95. package/src/components/atoms/Marquee/Marquee.interface.ts +10 -10
  96. package/src/components/atoms/Marquee/Marquee.stories.tsx +20 -20
  97. package/src/components/atoms/Marquee/Marquee.theme.ts +40 -40
  98. package/src/components/atoms/Marquee/index.ts +1 -1
  99. package/src/components/atoms/Quote/Quote.component.tsx +29 -29
  100. package/src/components/atoms/Quote/Quote.interface.ts +10 -10
  101. package/src/components/atoms/Quote/Quote.stories.tsx +25 -25
  102. package/src/components/atoms/Quote/Quote.theme.ts +26 -26
  103. package/src/components/atoms/Quote/index.ts +1 -1
  104. package/src/components/atoms/RichText/RichText.component.tsx +32 -32
  105. package/src/components/atoms/RichText/RichText.interface.ts +11 -11
  106. package/src/components/atoms/RichText/RichText.stories.tsx +73 -73
  107. package/src/components/atoms/RichText/RichText.theme.ts +34 -34
  108. package/src/components/atoms/RichText/index.ts +1 -1
  109. package/src/components/atoms/ScrollingNav/ScrollingNav.component.tsx +18 -18
  110. package/src/components/atoms/ScrollingNav/ScrollingNav.interface.ts +8 -8
  111. package/src/components/atoms/ScrollingNav/ScrollingNav.stories.tsx +44 -44
  112. package/src/components/atoms/ScrollingNav/ScrollingNav.theme.ts +58 -58
  113. package/src/components/atoms/ScrollingNav/index.ts +1 -1
  114. package/src/components/atoms/Separator/Separator.component.tsx +19 -19
  115. package/src/components/atoms/Separator/Separator.interface.tsx +10 -10
  116. package/src/components/atoms/Separator/Separator.stories.tsx +29 -29
  117. package/src/components/atoms/Separator/Separator.theme.ts +9 -9
  118. package/src/components/atoms/Separator/index.ts +1 -1
  119. package/src/components/atoms/SocialLinks/SocialLinks.component.tsx +42 -42
  120. package/src/components/atoms/SocialLinks/SocialLinks.interface.ts +8 -8
  121. package/src/components/atoms/SocialLinks/SocialLinks.stories.tsx +48 -48
  122. package/src/components/atoms/SocialLinks/SocialLinks.theme.ts +80 -80
  123. package/src/components/atoms/SocialLinks/index.ts +1 -1
  124. package/src/components/atoms/Spacer/Spacer.component.tsx +34 -34
  125. package/src/components/atoms/Spacer/Spacer.interface.ts +24 -24
  126. package/src/components/atoms/Spacer/Spacer.stories.tsx +99 -99
  127. package/src/components/atoms/Spacer/Spacer.theme.ts +33 -33
  128. package/src/components/atoms/Spacer/index.ts +1 -1
  129. package/src/components/atoms/Video/Video.component.tsx +116 -116
  130. package/src/components/atoms/Video/Video.interface.ts +13 -13
  131. package/src/components/atoms/Video/Video.stories.tsx +37 -37
  132. package/src/components/atoms/Video/Video.theme.ts +44 -44
  133. package/src/components/atoms/Video/index.ts +1 -1
  134. package/src/components/atoms/VideoEmbed/VideoEmbed.component.tsx +109 -109
  135. package/src/components/atoms/VideoEmbed/VideoEmbed.interface.ts +13 -13
  136. package/src/components/atoms/VideoEmbed/VideoEmbed.stories.tsx +23 -23
  137. package/src/components/atoms/VideoEmbed/VideoEmbed.theme.ts +45 -45
  138. package/src/components/atoms/VideoEmbed/index.ts +1 -1
  139. package/src/components/common/PortalComponent/PortalComponent.tsx +48 -48
  140. package/src/components/common/PortalComponent/index.ts +1 -1
  141. package/src/components/molecules/Accordion/Accordion.component.tsx +58 -58
  142. package/src/components/molecules/Accordion/Accordion.interface.ts +15 -15
  143. package/src/components/molecules/Accordion/Accordion.stories.tsx +100 -100
  144. package/src/components/molecules/Accordion/Accordion.theme.ts +93 -93
  145. package/src/components/molecules/Accordion/index.ts +1 -1
  146. package/src/components/molecules/BlogCard/BlogCard.component.tsx +48 -48
  147. package/src/components/molecules/BlogCard/BlogCard.interface.ts +10 -10
  148. package/src/components/molecules/BlogCard/BlogCard.stories.tsx +37 -37
  149. package/src/components/molecules/BlogCard/BlogCard.theme.ts +41 -41
  150. package/src/components/molecules/BlogCard/index.ts +1 -1
  151. package/src/components/molecules/Card/Card.component.tsx +15 -15
  152. package/src/components/molecules/Card/Card.interface.ts +11 -11
  153. package/src/components/molecules/Card/Card.theme.ts +54 -54
  154. package/src/components/molecules/Card/index.ts +1 -1
  155. package/src/components/molecules/CareersCard/CareersCard.component.tsx +27 -27
  156. package/src/components/molecules/CareersCard/CareersCard.interface.ts +7 -7
  157. package/src/components/molecules/CareersCard/CareersCard.stories.tsx +30 -30
  158. package/src/components/molecules/CareersCard/CareersCard.theme.ts +13 -13
  159. package/src/components/molecules/CareersCard/index.ts +1 -1
  160. package/src/components/molecules/Dropdown/Dropdown.component.tsx +67 -67
  161. package/src/components/molecules/Dropdown/Dropdown.interface.ts +26 -26
  162. package/src/components/molecules/Dropdown/Dropdown.stories.tsx +54 -54
  163. package/src/components/molecules/Dropdown/Dropdown.theme.ts +69 -69
  164. package/src/components/molecules/Dropdown/index.ts +1 -1
  165. package/src/components/molecules/EventsCard/EventsCard.component.tsx +40 -40
  166. package/src/components/molecules/EventsCard/EventsCard.interface.ts +9 -9
  167. package/src/components/molecules/EventsCard/EventsCard.stories.tsx +37 -37
  168. package/src/components/molecules/EventsCard/EventsCard.theme.ts +33 -33
  169. package/src/components/molecules/EventsCard/index.ts +1 -1
  170. package/src/components/molecules/IconBox/IconBox.component.tsx +29 -29
  171. package/src/components/molecules/IconBox/IconBox.interface.tsx +10 -10
  172. package/src/components/molecules/IconBox/IconBox.stories.tsx +23 -23
  173. package/src/components/molecules/IconBox/IconBox.theme.ts +25 -25
  174. package/src/components/molecules/IconBox/index.ts +1 -1
  175. package/src/components/molecules/IconTitle/IconTitle.component.tsx +24 -24
  176. package/src/components/molecules/IconTitle/IconTitle.interface.tsx +10 -10
  177. package/src/components/molecules/IconTitle/IconTitle.stories.tsx +49 -49
  178. package/src/components/molecules/IconTitle/IconTitle.theme.ts +10 -10
  179. package/src/components/molecules/IconTitle/index.ts +1 -1
  180. package/src/components/molecules/LicenseCard/LicenseCard.component.tsx +27 -27
  181. package/src/components/molecules/LicenseCard/LicenseCard.interface.ts +6 -6
  182. package/src/components/molecules/LicenseCard/LicenseCard.stories.tsx +42 -42
  183. package/src/components/molecules/LicenseCard/LicenseCard.theme.ts +28 -28
  184. package/src/components/molecules/LicenseCard/index.ts +1 -1
  185. package/src/components/molecules/LogosCard/LogosCard.component.tsx +14 -14
  186. package/src/components/molecules/LogosCard/LogosCard.interface.ts +8 -8
  187. package/src/components/molecules/LogosCard/LogosCard.stories.tsx +38 -38
  188. package/src/components/molecules/LogosCard/LogosCard.theme.ts +19 -19
  189. package/src/components/molecules/LogosCard/index.ts +1 -1
  190. package/src/components/molecules/Modal/Modal.component.tsx +70 -70
  191. package/src/components/molecules/Modal/Modal.interface.ts +11 -11
  192. package/src/components/molecules/Modal/Modal.stories.tsx +57 -57
  193. package/src/components/molecules/Modal/Modal.theme.ts +55 -55
  194. package/src/components/molecules/Modal/index.ts +1 -1
  195. package/src/components/molecules/NewsCard/NewsCard.component.tsx +55 -55
  196. package/src/components/molecules/NewsCard/NewsCard.interface.ts +9 -9
  197. package/src/components/molecules/NewsCard/NewsCard.stories.tsx +44 -44
  198. package/src/components/molecules/NewsCard/NewsCard.theme.ts +77 -77
  199. package/src/components/molecules/NewsCard/index.ts +1 -1
  200. package/src/components/molecules/OffCanvas/OffCanvas.component.tsx +55 -55
  201. package/src/components/molecules/OffCanvas/OffCanvas.interface.ts +12 -12
  202. package/src/components/molecules/OffCanvas/OffCanvas.stories.tsx +55 -55
  203. package/src/components/molecules/OffCanvas/OffCanvas.theme.ts +50 -50
  204. package/src/components/molecules/OffCanvas/index.ts +1 -1
  205. package/src/components/molecules/ProductCard/ProductCard.component.tsx +60 -60
  206. package/src/components/molecules/ProductCard/ProductCard.interface.ts +7 -7
  207. package/src/components/molecules/ProductCard/ProductCard.stories.tsx +42 -42
  208. package/src/components/molecules/ProductCard/ProductCard.theme.ts +26 -26
  209. package/src/components/molecules/ProductCard/index.ts +1 -1
  210. package/src/components/molecules/ShareModal/ShareModal.component.tsx +167 -167
  211. package/src/components/molecules/ShareModal/ShareModal.interface.ts +9 -9
  212. package/src/components/molecules/ShareModal/ShareModal.stories.tsx +33 -33
  213. package/src/components/molecules/ShareModal/ShareModal.theme.ts +103 -103
  214. package/src/components/molecules/ShareModal/index.ts +1 -1
  215. package/src/components/molecules/TeamCard/TeamCard.component.tsx +31 -31
  216. package/src/components/molecules/TeamCard/TeamCard.interface.ts +7 -7
  217. package/src/components/molecules/TeamCard/TeamCard.stories.tsx +33 -33
  218. package/src/components/molecules/TeamCard/TeamCard.theme.ts +12 -12
  219. package/src/components/molecules/TeamCard/index.ts +1 -1
  220. package/src/components/organisms/CircularSlider/CircularSlider.component.tsx +231 -231
  221. package/src/components/organisms/CircularSlider/CircularSlider.interface.ts +13 -13
  222. package/src/components/organisms/CircularSlider/CircularSlider.stories.tsx +138 -138
  223. package/src/components/organisms/CircularSlider/CircularSlider.theme.ts +126 -126
  224. package/src/components/organisms/CircularSlider/index.ts +1 -1
  225. package/src/components/organisms/Cover/Cover.component.tsx +46 -46
  226. package/src/components/organisms/Cover/Cover.interface.ts +14 -14
  227. package/src/components/organisms/Cover/Cover.stories.tsx +97 -97
  228. package/src/components/organisms/Cover/Cover.theme.ts +49 -49
  229. package/src/components/organisms/Cover/index.ts +1 -1
  230. package/src/components/organisms/ProductsSlider/ProductsSlider.component.tsx +216 -216
  231. package/src/components/organisms/ProductsSlider/ProductsSlider.interface.ts +12 -12
  232. package/src/components/organisms/ProductsSlider/ProductsSlider.stories.tsx +132 -132
  233. package/src/components/organisms/ProductsSlider/ProductsSlider.theme.ts +77 -77
  234. package/src/components/organisms/ProductsSlider/index.ts +1 -1
  235. package/src/components/organisms/ProductsSlider//306/222.js +164 -164
  236. package/src/components/organisms/Slider/Slider.component.tsx +154 -154
  237. package/src/components/organisms/Slider/Slider.interface.ts +19 -19
  238. package/src/components/organisms/Slider/Slider.stories.tsx +146 -146
  239. package/src/components/organisms/Slider/Slider.theme.ts +145 -145
  240. package/src/components/organisms/Slider/Slider.utils.tsx +19 -19
  241. package/src/components/organisms/Slider/index.ts +1 -1
  242. package/src/components/organisms/Tabs/Tabs.component.tsx +88 -88
  243. package/src/components/organisms/Tabs/Tabs.interface.ts +18 -18
  244. package/src/components/organisms/Tabs/Tabs.stories.tsx +118 -118
  245. package/src/components/organisms/Tabs/Tabs.theme.ts +115 -115
  246. package/src/components/organisms/Tabs/index.ts +1 -1
  247. package/src/helpers/clickOutsideToClose.tsx +17 -17
  248. package/src/helpers/events.ts +9 -9
  249. package/src/helpers/exportCSS.tsx +27 -27
  250. package/src/helpers/getIcons.ts +5 -5
  251. package/src/helpers/isTouchDevice.tsx +11 -11
  252. package/src/helpers/useInterval.ts +25 -25
  253. package/src/helpers/useMediaMatch.tsx +26 -26
  254. package/src/helpers/uuid.ts +5 -5
  255. package/src/iconsList.json +1 -1
  256. package/src/index.ts +68 -68
  257. package/src/reportWebVitals.js +13 -13
  258. package/src/stories/Documentation/Colors.stories.tsx +46 -46
  259. package/src/stories/Documentation/Headings.stories.tsx +24 -24
  260. package/src/stories/Documentation/Icons.stories.tsx +73 -73
  261. package/src/stories/Documentation/JWT.stories.tsx +60 -60
  262. package/src/stories/Documentation/Utilities.stories.tsx +65 -65
  263. package/src/styles/Global.ts +301 -301
  264. package/src/styles/grid.ts +70 -70
  265. package/src/styles/reset.ts +47 -47
  266. package/src/styles/utilities.ts +374 -374
  267. package/src/styles/variables.ts +180 -180
  268. package/tsconfig.json +31 -31
@@ -1,58 +1,58 @@
1
- import { IAccordion, IAccordionItem } from './Accordion.interface'
2
- import React, { useRef, useState } from 'react'
3
- import {
4
- StyledAccordion,
5
- StyledAccordionContent,
6
- StyledAccordionItem,
7
- StyledAccordionTitle
8
- } from './Accordion.theme'
9
-
10
- import Icon from '@/components/atoms/Icon/Icon.component'
11
- import Separator from '@/components/atoms/Separator/Separator.component'
12
-
13
- export const Accordion = ({ className, style, children }: IAccordion) => {
14
- return (
15
- <StyledAccordion className={className} style={style}>
16
- {children}
17
- </StyledAccordion>
18
- )
19
- }
20
-
21
- export const AccordionItem = ({
22
- title,
23
- className,
24
- style,
25
- children
26
- }: IAccordionItem) => {
27
- const [active, setActive] = useState(false)
28
- const contentEl = useRef<HTMLInputElement>(null)
29
-
30
- return (
31
- <StyledAccordionItem
32
- active={active ? true : undefined}
33
- className={className}
34
- style={style}
35
- >
36
- <StyledAccordionTitle
37
- className={`h4 fw-bold`}
38
- onClick={() => {
39
- setActive(!active)
40
- }}
41
- >
42
- <span>{title}</span>
43
- <Icon className={active ? 'icon-arrowDown' : 'icon-arrowUp'} />
44
- </StyledAccordionTitle>
45
- <StyledAccordionContent
46
- ref={contentEl}
47
- style={
48
- active
49
- ? { height: contentEl?.current?.scrollHeight }
50
- : { height: '0px' }
51
- }
52
- >
53
- <Separator height="1rem"></Separator>
54
- {children}
55
- </StyledAccordionContent>
56
- </StyledAccordionItem>
57
- )
58
- }
1
+ import { IAccordion, IAccordionItem } from './Accordion.interface'
2
+ import React, { useRef, useState } from 'react'
3
+ import {
4
+ StyledAccordion,
5
+ StyledAccordionContent,
6
+ StyledAccordionItem,
7
+ StyledAccordionTitle
8
+ } from './Accordion.theme'
9
+
10
+ import Icon from '@/components/atoms/Icon/Icon.component'
11
+ import Separator from '@/components/atoms/Separator/Separator.component'
12
+
13
+ export const Accordion = ({ className, style, children }: IAccordion) => {
14
+ return (
15
+ <StyledAccordion className={className} style={style}>
16
+ {children}
17
+ </StyledAccordion>
18
+ )
19
+ }
20
+
21
+ export const AccordionItem = ({
22
+ title,
23
+ className,
24
+ style,
25
+ children
26
+ }: IAccordionItem) => {
27
+ const [active, setActive] = useState(false)
28
+ const contentEl = useRef<HTMLInputElement>(null)
29
+
30
+ return (
31
+ <StyledAccordionItem
32
+ active={active ? true : undefined}
33
+ className={className}
34
+ style={style}
35
+ >
36
+ <StyledAccordionTitle
37
+ className={`h4 fw-bold`}
38
+ onClick={() => {
39
+ setActive(!active)
40
+ }}
41
+ >
42
+ <span>{title}</span>
43
+ <Icon className={active ? 'icon-arrowDown' : 'icon-arrowUp'} />
44
+ </StyledAccordionTitle>
45
+ <StyledAccordionContent
46
+ ref={contentEl}
47
+ style={
48
+ active
49
+ ? { height: contentEl?.current?.scrollHeight }
50
+ : { height: '0px' }
51
+ }
52
+ >
53
+ <Separator height="1rem"></Separator>
54
+ {children}
55
+ </StyledAccordionContent>
56
+ </StyledAccordionItem>
57
+ )
58
+ }
@@ -1,15 +1,15 @@
1
- import { CSSProperties } from 'react';
2
-
3
- export interface IAccordion {
4
- className?: string
5
- style?: CSSProperties
6
- children?: React.ReactNode;
7
- }
8
-
9
- export interface IAccordionItem {
10
- active?: boolean
11
- title?: string
12
- className?: string
13
- style?: CSSProperties
14
- children?: React.ReactNode;
15
- }
1
+ import { CSSProperties } from 'react';
2
+
3
+ export interface IAccordion {
4
+ className?: string
5
+ style?: CSSProperties
6
+ children?: React.ReactNode;
7
+ }
8
+
9
+ export interface IAccordionItem {
10
+ active?: boolean
11
+ title?: string
12
+ className?: string
13
+ style?: CSSProperties
14
+ children?: React.ReactNode;
15
+ }
@@ -1,100 +1,100 @@
1
- import { Accordion, AccordionItem } from './Accordion.component'
2
- import type { Meta, StoryObj } from '@storybook/react'
3
-
4
- import { IAccordion } from './Accordion.interface'
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/Accordion',
10
- component: Accordion,
11
- tags: ['autodocs']
12
- } as Meta
13
-
14
- export const Simple: StoryObj<IAccordion> = {
15
- render: args => (
16
- <Accordion {...args}>
17
- <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
18
- <p>
19
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
20
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
21
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
22
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
23
- </p>
24
- </AccordionItem>
25
- <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
26
- <p>
27
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
28
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
29
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
30
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
31
- </p>
32
- </AccordionItem>
33
- <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
34
- <p>
35
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
36
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
37
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
38
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
39
- </p>
40
- </AccordionItem>
41
- <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
42
- <p>
43
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
44
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
45
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
46
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
47
- </p>
48
- </AccordionItem>
49
- <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
50
- <p>
51
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
52
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
53
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
54
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
55
- </p>
56
- </AccordionItem>
57
- <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
58
- <p>
59
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
60
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
61
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
62
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
63
- </p>
64
- </AccordionItem>
65
- <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
66
- <p>
67
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
68
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
69
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
70
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
71
- </p>
72
- </AccordionItem>
73
- <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
74
- <p>
75
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
76
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
77
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
78
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
79
- </p>
80
- </AccordionItem>
81
- <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
82
- <p>
83
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
84
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
85
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
86
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
87
- </p>
88
- </AccordionItem>
89
- <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
90
- <p>
91
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
92
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
93
- Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
94
- ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
95
- </p>
96
- </AccordionItem>
97
- </Accordion>
98
- ),
99
- args: {}
100
- }
1
+ import { Accordion, AccordionItem } from './Accordion.component'
2
+ import type { Meta, StoryObj } from '@storybook/react'
3
+
4
+ import { IAccordion } from './Accordion.interface'
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/Accordion',
10
+ component: Accordion,
11
+ tags: ['autodocs']
12
+ } as Meta
13
+
14
+ export const Simple: StoryObj<IAccordion> = {
15
+ render: args => (
16
+ <Accordion {...args}>
17
+ <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
18
+ <p>
19
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
20
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
21
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
22
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
23
+ </p>
24
+ </AccordionItem>
25
+ <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
26
+ <p>
27
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
28
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
29
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
30
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
31
+ </p>
32
+ </AccordionItem>
33
+ <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
34
+ <p>
35
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
36
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
37
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
38
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
39
+ </p>
40
+ </AccordionItem>
41
+ <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
42
+ <p>
43
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
44
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
45
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
46
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
47
+ </p>
48
+ </AccordionItem>
49
+ <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
50
+ <p>
51
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
52
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
53
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
54
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
55
+ </p>
56
+ </AccordionItem>
57
+ <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
58
+ <p>
59
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
60
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
61
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
62
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
63
+ </p>
64
+ </AccordionItem>
65
+ <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
66
+ <p>
67
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
68
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
69
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
70
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
71
+ </p>
72
+ </AccordionItem>
73
+ <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
74
+ <p>
75
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
76
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
77
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
78
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
79
+ </p>
80
+ </AccordionItem>
81
+ <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
82
+ <p>
83
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
84
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
85
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
86
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
87
+ </p>
88
+ </AccordionItem>
89
+ <AccordionItem title="Lorem ipsum dolor sit amet, consectetur adipiscing elit.">
90
+ <p>
91
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
92
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique.
93
+ Cras vel facilisis tellus, id iaculis risus. Vestibulum non mollis
94
+ ipsum. Vestibulum faucibus nisl sit amet magna interdum tristique
95
+ </p>
96
+ </AccordionItem>
97
+ </Accordion>
98
+ ),
99
+ args: {}
100
+ }
@@ -1,93 +1,93 @@
1
- import { IAccordion, IAccordionItem } from './Accordion.interface';
2
- import { colors, easeOutExpo, responsiveMedia, responsiveMediaMax } from '@/styles/variables';
3
- import styled, { css } from 'styled-components';
4
-
5
- export const StyledAccordionTitle = styled.span<IAccordionItem>`
6
- display: block;
7
- position: relative;
8
-
9
- padding-right: 6rem;
10
-
11
- cursor: pointer;
12
- transition: font-weight .4s ease-in-out;
13
-
14
- & i {
15
- position: absolute;
16
- top: 50%;
17
- right: 8px;
18
-
19
- display: flex;
20
- align-items: center;
21
- justify-content: center;
22
-
23
- width: 4rem;
24
- height: 4rem;
25
- border-radius: 100%;
26
-
27
-
28
- font-size: 1.2rem;
29
- color: ${colors.secondary50};
30
- background: ${colors.third10};
31
-
32
- transform: translateY(-50%);
33
- transform-origin: center;
34
-
35
- transition: all 0.6s ${easeOutExpo};
36
- }
37
-
38
- `
39
-
40
- export const StyledAccordionContent = styled.div<IAccordionItem>`
41
- position: relative;
42
- display: grid;
43
- grid-template-rows: 0fr;
44
- overflow: hidden;
45
- transition: all 0.5s linear;
46
-
47
- ${({ active }) => active && `
48
- grid-template-rows: 1fr;
49
- `}
50
-
51
- @media only screen and (max-width: ${responsiveMediaMax}) {
52
- padding-right: 6rem;
53
- }
54
- `
55
-
56
- export const StyledAccordionItem = styled.li<IAccordionItem>`
57
- position: relative;
58
- width: 100%;
59
- padding: 2rem 2.4rem;
60
- border-radius: 50px;
61
- color: ${colors.third50};
62
- background-color: ${colors.secondary50};
63
- margin-bottom: 1rem;
64
- transition: all 0.6s ${easeOutExpo};
65
-
66
- &:hover{
67
- color: ${colors.primary50};
68
- & ${StyledAccordionTitle} {
69
- i{
70
- background: ${colors.primary50};
71
- }
72
- }
73
- }
74
-
75
- ${({ active }) => active && `
76
- color: ${colors.third10};
77
- & ${StyledAccordionTitle} {
78
- i{
79
- background: ${colors.third10};
80
- }
81
- }
82
- `}
83
-
84
- `
85
-
86
- export const StyledAccordion = styled.ul<IAccordion>`
87
- display: block;
88
- text-align: left;
89
- margin: auto;
90
- list-style: none;
91
- padding: 0;
92
- `;
93
-
1
+ import { IAccordion, IAccordionItem } from './Accordion.interface';
2
+ import { colors, easeOutExpo, responsiveMedia, responsiveMediaMax } from '@/styles/variables';
3
+ import styled, { css } from 'styled-components';
4
+
5
+ export const StyledAccordionTitle = styled.span<IAccordionItem>`
6
+ display: block;
7
+ position: relative;
8
+
9
+ padding-right: 6rem;
10
+
11
+ cursor: pointer;
12
+ transition: font-weight .4s ease-in-out;
13
+
14
+ & i {
15
+ position: absolute;
16
+ top: 50%;
17
+ right: 8px;
18
+
19
+ display: flex;
20
+ align-items: center;
21
+ justify-content: center;
22
+
23
+ width: 4rem;
24
+ height: 4rem;
25
+ border-radius: 100%;
26
+
27
+
28
+ font-size: 1.2rem;
29
+ color: ${colors.secondary50};
30
+ background: ${colors.third10};
31
+
32
+ transform: translateY(-50%);
33
+ transform-origin: center;
34
+
35
+ transition: all 0.6s ${easeOutExpo};
36
+ }
37
+
38
+ `
39
+
40
+ export const StyledAccordionContent = styled.div<IAccordionItem>`
41
+ position: relative;
42
+ display: grid;
43
+ grid-template-rows: 0fr;
44
+ overflow: hidden;
45
+ transition: all 0.5s linear;
46
+
47
+ ${({ active }) => active && `
48
+ grid-template-rows: 1fr;
49
+ `}
50
+
51
+ @media only screen and (max-width: ${responsiveMediaMax}) {
52
+ padding-right: 6rem;
53
+ }
54
+ `
55
+
56
+ export const StyledAccordionItem = styled.li<IAccordionItem>`
57
+ position: relative;
58
+ width: 100%;
59
+ padding: 2rem 2.4rem;
60
+ border-radius: 50px;
61
+ color: ${colors.third50};
62
+ background-color: ${colors.secondary50};
63
+ margin-bottom: 1rem;
64
+ transition: all 0.6s ${easeOutExpo};
65
+
66
+ &:hover{
67
+ color: ${colors.primary50};
68
+ & ${StyledAccordionTitle} {
69
+ i{
70
+ background: ${colors.primary50};
71
+ }
72
+ }
73
+ }
74
+
75
+ ${({ active }) => active && `
76
+ color: ${colors.third10};
77
+ & ${StyledAccordionTitle} {
78
+ i{
79
+ background: ${colors.third10};
80
+ }
81
+ }
82
+ `}
83
+
84
+ `
85
+
86
+ export const StyledAccordion = styled.ul<IAccordion>`
87
+ display: block;
88
+ text-align: left;
89
+ margin: auto;
90
+ list-style: none;
91
+ padding: 0;
92
+ `;
93
+
@@ -1 +1 @@
1
- export { Accordion, AccordionItem } from './Accordion.component'
1
+ export { Accordion, AccordionItem } from './Accordion.component'
@@ -1,48 +1,48 @@
1
- import Chip from '@/components/atoms/Chip/Chip.component'
2
- import Heading from '@/components/atoms/Heading'
3
- import { IBlogCard } from './BlogCard.interface'
4
- import Icon from '@/components/atoms/Icon/Icon.component'
5
- import ImageWrapper from '@/components/atoms/ImageWrapper'
6
- import React from 'react'
7
- import RichText from '@/components/atoms/RichText/RichText.component'
8
- import { StyledBlogCard } from './BlogCard.theme'
9
-
10
- const BlogCard = ({
11
- variant,
12
- date,
13
- category,
14
- title,
15
- imageElement,
16
- linkElement,
17
- description,
18
- author,
19
- ...props
20
- }: IBlogCard) => {
21
- return (
22
- <StyledBlogCard
23
- variant={variant}
24
- imageElement={
25
- <>
26
- {category && <Chip variant='light' className='font-epilogue'>{category}</Chip>}
27
- <ImageWrapper aspectRatioHeight={63}>{imageElement}</ImageWrapper>
28
- </>
29
- }
30
- >
31
- <Heading tag={'h3'} size={'h4'} className={'fw-bold textEllipsis'}>
32
- {title}
33
- </Heading>
34
- <Heading tag={'span'} size={'captions'} className={'textEllipsis mt-3'}>
35
- {description}
36
- </Heading>
37
- {date && (
38
- <RichText tag={'span'} className="d-block fw-bold mt-4">
39
- {date}
40
- </RichText>
41
- )}
42
-
43
- {linkElement}
44
- </StyledBlogCard>
45
- )
46
- }
47
-
48
- export default BlogCard
1
+ import Chip from '@/components/atoms/Chip/Chip.component'
2
+ import Heading from '@/components/atoms/Heading'
3
+ import { IBlogCard } from './BlogCard.interface'
4
+ import Icon from '@/components/atoms/Icon/Icon.component'
5
+ import ImageWrapper from '@/components/atoms/ImageWrapper'
6
+ import React from 'react'
7
+ import RichText from '@/components/atoms/RichText/RichText.component'
8
+ import { StyledBlogCard } from './BlogCard.theme'
9
+
10
+ const BlogCard = ({
11
+ variant,
12
+ date,
13
+ category,
14
+ title,
15
+ imageElement,
16
+ linkElement,
17
+ description,
18
+ author,
19
+ ...props
20
+ }: IBlogCard) => {
21
+ return (
22
+ <StyledBlogCard
23
+ variant={variant}
24
+ imageElement={
25
+ <>
26
+ {category && <Chip variant='light' className='font-epilogue'>{category}</Chip>}
27
+ <ImageWrapper aspectRatioHeight={63}>{imageElement}</ImageWrapper>
28
+ </>
29
+ }
30
+ >
31
+ <Heading tag={'h3'} size={'h4'} className={'fw-bold textEllipsis'}>
32
+ {title}
33
+ </Heading>
34
+ <Heading tag={'span'} size={'captions'} className={'textEllipsis mt-3'}>
35
+ {description}
36
+ </Heading>
37
+ {date && (
38
+ <RichText tag={'span'} className="d-block fw-bold mt-4">
39
+ {date}
40
+ </RichText>
41
+ )}
42
+
43
+ {linkElement}
44
+ </StyledBlogCard>
45
+ )
46
+ }
47
+
48
+ export default BlogCard
@@ -1,10 +1,10 @@
1
- import { ICard } from '../Card/Card.interface';
2
-
3
- export interface IBlogCard extends ICard {
4
- date?: string,
5
- category?: string
6
- title?: string
7
- description?: string | React.ReactElement
8
- author?: string,
9
- linkElement?: React.ReactElement
10
- }
1
+ import { ICard } from '../Card/Card.interface';
2
+
3
+ export interface IBlogCard extends ICard {
4
+ date?: string,
5
+ category?: string
6
+ title?: string
7
+ description?: string | React.ReactElement
8
+ author?: string,
9
+ linkElement?: React.ReactElement
10
+ }