@ilo-org/react 0.13.0 → 0.14.1

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 (290) hide show
  1. package/lib/cjs/components/Cards/CardGroup/CardGroup.js +0 -1
  2. package/lib/cjs/components/Cards/CardGroup/index.js +197 -160
  3. package/lib/cjs/components/Cards/FactlistCard/FactListCard.js +0 -1
  4. package/lib/cjs/components/Cards/FactlistCard/index.js +0 -1
  5. package/lib/cjs/components/Cards/TextCard/TextCard.js +1 -1
  6. package/lib/cjs/components/List/List.js +9 -11
  7. package/lib/cjs/components/List/ListItem.js +4 -7
  8. package/lib/cjs/components/List/index.js +1 -2
  9. package/lib/cjs/components/index.js +0 -1
  10. package/lib/cjs/index.js +0 -1
  11. package/lib/esm/components/Cards/CardGroup/CardGroup.js +0 -1
  12. package/lib/esm/components/Cards/CardGroup/index.js +197 -160
  13. package/lib/esm/components/Cards/FactlistCard/FactListCard.js +0 -1
  14. package/lib/esm/components/Cards/FactlistCard/index.js +0 -1
  15. package/lib/esm/components/Cards/TextCard/TextCard.js +1 -1
  16. package/lib/esm/components/List/List.js +10 -12
  17. package/lib/esm/components/List/ListItem.js +4 -7
  18. package/lib/esm/components/List/index.js +1 -2
  19. package/lib/esm/components/index.js +0 -1
  20. package/lib/esm/index.js +0 -1
  21. package/lib/types/react/src/components/List/List.props.d.ts +2 -9
  22. package/lib/types/react/src/components/List/ListItem.props.d.ts +0 -6
  23. package/lib/types/react/src/types/index.d.ts +0 -2
  24. package/package.json +35 -12
  25. package/.eslintrc.cjs +0 -39
  26. package/CHANGELOG.md +0 -858
  27. package/lib/cjs/ListCtx-14aa546f.js +0 -9
  28. package/lib/esm/ListCtx-da435fdf.js +0 -6
  29. package/lib/types/react/src/components/List/ListCtx.d.ts +0 -4
  30. package/rollup.config.mjs +0 -70
  31. package/src/components/Accordion/Accordion.args.ts +0 -16
  32. package/src/components/Accordion/Accordion.props.ts +0 -41
  33. package/src/components/Accordion/Accordion.tsx +0 -62
  34. package/src/components/Accordion/AccordionButton.props.ts +0 -13
  35. package/src/components/Accordion/AccordionButton.tsx +0 -58
  36. package/src/components/Accordion/AccordionCtx.ts +0 -9
  37. package/src/components/Accordion/AccordionItem.props.ts +0 -25
  38. package/src/components/Accordion/AccordionItem.tsx +0 -27
  39. package/src/components/Accordion/AccordionPanel.props.ts +0 -25
  40. package/src/components/Accordion/AccordionPanel.tsx +0 -46
  41. package/src/components/Accordion/index.ts +0 -4
  42. package/src/components/Breadcrumb/Breadcrumb.args.ts +0 -61
  43. package/src/components/Breadcrumb/Breadcrumb.props.ts +0 -13
  44. package/src/components/Breadcrumb/Breadcrumb.tsx +0 -82
  45. package/src/components/Breadcrumb/index.ts +0 -1
  46. package/src/components/Button/Button.args.ts +0 -35
  47. package/src/components/Button/Button.props.ts +0 -89
  48. package/src/components/Button/Button.tsx +0 -77
  49. package/src/components/Button/index.ts +0 -2
  50. package/src/components/Callout/Callout.args.ts +0 -38
  51. package/src/components/Callout/Callout.props.ts +0 -60
  52. package/src/components/Callout/Callout.tsx +0 -80
  53. package/src/components/Callout/index.ts +0 -2
  54. package/src/components/Cards/CardGroup/CardGroup.args.ts +0 -768
  55. package/src/components/Cards/CardGroup/CardGroup.props.ts +0 -78
  56. package/src/components/Cards/CardGroup/CardGroup.tsx +0 -54
  57. package/src/components/Cards/CardGroup/index.tsx +0 -3
  58. package/src/components/Cards/DataCard/DataCard.args.ts +0 -69
  59. package/src/components/Cards/DataCard/DataCard.props.ts +0 -60
  60. package/src/components/Cards/DataCard/DataCard.tsx +0 -107
  61. package/src/components/Cards/DataCard/index.tsx +0 -3
  62. package/src/components/Cards/DetailCard/DetailCard.args.ts +0 -17
  63. package/src/components/Cards/DetailCard/DetailCard.props.ts +0 -43
  64. package/src/components/Cards/DetailCard/DetailCard.tsx +0 -62
  65. package/src/components/Cards/DetailCard/index.tsx +0 -3
  66. package/src/components/Cards/FactlistCard/FactListCard.args.ts +0 -14
  67. package/src/components/Cards/FactlistCard/FactListCard.props.ts +0 -19
  68. package/src/components/Cards/FactlistCard/FactListCard.tsx +0 -42
  69. package/src/components/Cards/FactlistCard/index.tsx +0 -3
  70. package/src/components/Cards/FeatureCard/FeatureCard.args.ts +0 -30
  71. package/src/components/Cards/FeatureCard/FeatureCard.props.ts +0 -38
  72. package/src/components/Cards/FeatureCard/FeatureCard.tsx +0 -69
  73. package/src/components/Cards/FeatureCard/index.tsx +0 -3
  74. package/src/components/Cards/MultilinkCard/MultiLinkCard.tsx +0 -76
  75. package/src/components/Cards/MultilinkCard/MultilinkCard.args.ts +0 -33
  76. package/src/components/Cards/MultilinkCard/MultilinkCard.props.ts +0 -30
  77. package/src/components/Cards/MultilinkCard/index.tsx +0 -3
  78. package/src/components/Cards/PromoCard/PromoCard.args.ts +0 -19
  79. package/src/components/Cards/PromoCard/PromoCard.props.ts +0 -36
  80. package/src/components/Cards/PromoCard/PromoCard.tsx +0 -60
  81. package/src/components/Cards/PromoCard/index.tsx +0 -3
  82. package/src/components/Cards/StatCard/StatCard.args.ts +0 -14
  83. package/src/components/Cards/StatCard/StatCard.props.ts +0 -21
  84. package/src/components/Cards/StatCard/StatCard.tsx +0 -36
  85. package/src/components/Cards/StatCard/index.tsx +0 -3
  86. package/src/components/Cards/TextCard/TextCard.args.ts +0 -21
  87. package/src/components/Cards/TextCard/TextCard.props.ts +0 -32
  88. package/src/components/Cards/TextCard/TextCard.tsx +0 -62
  89. package/src/components/Cards/TextCard/index.tsx +0 -3
  90. package/src/components/Checkbox/Checkbox.args.ts +0 -42
  91. package/src/components/Checkbox/Checkbox.props.ts +0 -5
  92. package/src/components/Checkbox/Checkbox.tsx +0 -94
  93. package/src/components/Checkbox/index.ts +0 -2
  94. package/src/components/Collapse/Collapse.props.ts +0 -92
  95. package/src/components/Collapse/Collapse.tsx +0 -130
  96. package/src/components/Collapse/index.ts +0 -1
  97. package/src/components/ContextMenu/ContextMenu.args.ts +0 -62
  98. package/src/components/ContextMenu/ContextMenu.props.ts +0 -28
  99. package/src/components/ContextMenu/ContextMenu.tsx +0 -32
  100. package/src/components/ContextMenu/index.ts +0 -1
  101. package/src/components/Credit/Credit.args.ts +0 -14
  102. package/src/components/Credit/Credit.props.ts +0 -11
  103. package/src/components/Credit/Credit.tsx +0 -41
  104. package/src/components/Credit/index.ts +0 -1
  105. package/src/components/DatePicker/DatePicker.args.ts +0 -56
  106. package/src/components/DatePicker/DatePicker.props.ts +0 -26
  107. package/src/components/DatePicker/DatePicker.tsx +0 -80
  108. package/src/components/DatePicker/index.ts +0 -1
  109. package/src/components/Dropdown/Dropdown.args.ts +0 -70
  110. package/src/components/Dropdown/Dropdown.props.ts +0 -53
  111. package/src/components/Dropdown/Dropdown.tsx +0 -95
  112. package/src/components/Dropdown/index.ts +0 -1
  113. package/src/components/Empty/Empty.props.ts +0 -13
  114. package/src/components/Empty/Empty.tsx +0 -16
  115. package/src/components/Empty/index.ts +0 -1
  116. package/src/components/Fieldset/Fieldset.props.ts +0 -33
  117. package/src/components/Fieldset/Fieldset.tsx +0 -96
  118. package/src/components/Fieldset/index.ts +0 -1
  119. package/src/components/FileUpload/FileUpload.args.ts +0 -60
  120. package/src/components/FileUpload/FileUpload.props.ts +0 -21
  121. package/src/components/FileUpload/FileUpload.tsx +0 -116
  122. package/src/components/FileUpload/index.ts +0 -1
  123. package/src/components/Footer/Footer.args.ts +0 -74
  124. package/src/components/Footer/Footer.props.ts +0 -60
  125. package/src/components/Footer/Footer.tsx +0 -99
  126. package/src/components/Footer/index.ts +0 -1
  127. package/src/components/Form/Form.args.ts +0 -5
  128. package/src/components/Form/Form.props.ts +0 -8
  129. package/src/components/Form/Form.tsx +0 -23
  130. package/src/components/Form/index.ts +0 -2
  131. package/src/components/FormControl/FormControl.props.ts +0 -72
  132. package/src/components/FormControl/FormControl.tsx +0 -169
  133. package/src/components/FormControl/index.ts +0 -2
  134. package/src/components/FormElement/FormElement.props.ts +0 -60
  135. package/src/components/FormElement/FormElement.tsx +0 -19
  136. package/src/components/FormElement/index.ts +0 -1
  137. package/src/components/GlobalProvider/GlobalCtx.ts +0 -6
  138. package/src/components/GlobalProvider/GlobalProvider.props.ts +0 -15
  139. package/src/components/GlobalProvider/GlobalProvider.tsx +0 -21
  140. package/src/components/GlobalProvider/index.ts +0 -2
  141. package/src/components/Heading/Heading.args.ts +0 -49
  142. package/src/components/Heading/Heading.props.ts +0 -24
  143. package/src/components/Heading/Heading.tsx +0 -28
  144. package/src/components/Heading/index.ts +0 -1
  145. package/src/components/Hero/Hero.args.ts +0 -136
  146. package/src/components/Hero/Hero.props.ts +0 -62
  147. package/src/components/Hero/Hero.tsx +0 -94
  148. package/src/components/Hero/HeroCard.props.ts +0 -54
  149. package/src/components/Hero/HeroCard.tsx +0 -65
  150. package/src/components/Hero/index.ts +0 -2
  151. package/src/components/Icon/Icon.args.ts +0 -15
  152. package/src/components/Icon/Icon.props.ts +0 -16
  153. package/src/components/Icon/Icon.tsx +0 -25
  154. package/src/components/Icon/index.ts +0 -1
  155. package/src/components/Image/Image.args.ts +0 -29
  156. package/src/components/Image/Image.props.ts +0 -43
  157. package/src/components/Image/Image.tsx +0 -51
  158. package/src/components/Image/index.ts +0 -1
  159. package/src/components/Input/Input.args.ts +0 -139
  160. package/src/components/Input/Input.props.ts +0 -65
  161. package/src/components/Input/Input.tsx +0 -65
  162. package/src/components/Input/index.ts +0 -1
  163. package/src/components/Link/Link.props.ts +0 -39
  164. package/src/components/Link/Link.tsx +0 -42
  165. package/src/components/Link/index.ts +0 -1
  166. package/src/components/LinkList/LinkList.args.ts +0 -193
  167. package/src/components/LinkList/LinkList.props.ts +0 -52
  168. package/src/components/LinkList/LinkList.tsx +0 -59
  169. package/src/components/LinkList/index.ts +0 -1
  170. package/src/components/List/List.args.ts +0 -34
  171. package/src/components/List/List.props.ts +0 -37
  172. package/src/components/List/List.tsx +0 -41
  173. package/src/components/List/ListCtx.ts +0 -7
  174. package/src/components/List/ListItem.props.ts +0 -25
  175. package/src/components/List/ListItem.tsx +0 -22
  176. package/src/components/List/index.ts +0 -2
  177. package/src/components/Loading/Loading.args.ts +0 -55
  178. package/src/components/Loading/Loading.props.ts +0 -23
  179. package/src/components/Loading/Loading.tsx +0 -24
  180. package/src/components/Loading/index.ts +0 -1
  181. package/src/components/LocalNav/LocalNav.args.ts +0 -64
  182. package/src/components/LocalNav/LocalNav.props.ts +0 -56
  183. package/src/components/LocalNav/LocalNav.tsx +0 -181
  184. package/src/components/LocalNav/index.ts +0 -1
  185. package/src/components/Logo/Logo.args.ts +0 -45
  186. package/src/components/Logo/Logo.props.ts +0 -67
  187. package/src/components/Logo/Logo.tsx +0 -247
  188. package/src/components/Logo/index.ts +0 -1
  189. package/src/components/LogoGrid/LogoGrid.args.ts +0 -50
  190. package/src/components/LogoGrid/LogoGrid.props.ts +0 -28
  191. package/src/components/LogoGrid/LogoGrid.tsx +0 -53
  192. package/src/components/LogoGrid/index.ts +0 -1
  193. package/src/components/Navigation/Navigation.args.ts +0 -113
  194. package/src/components/Navigation/Navigation.props.ts +0 -120
  195. package/src/components/Navigation/Navigation.tsx +0 -246
  196. package/src/components/Navigation/index.ts +0 -1
  197. package/src/components/Notification/Notification.args.ts +0 -157
  198. package/src/components/Notification/Notification.props.ts +0 -67
  199. package/src/components/Notification/Notification.tsx +0 -78
  200. package/src/components/Notification/index.ts +0 -1
  201. package/src/components/NumberPicker/NumberPicker.args.ts +0 -50
  202. package/src/components/NumberPicker/NumberPicker.props.ts +0 -26
  203. package/src/components/NumberPicker/NumberPicker.tsx +0 -88
  204. package/src/components/NumberPicker/index.ts +0 -1
  205. package/src/components/Pagination/Pagination.args.ts +0 -43
  206. package/src/components/Pagination/Pagination.props.ts +0 -66
  207. package/src/components/Pagination/Pagination.tsx +0 -115
  208. package/src/components/Pagination/index.ts +0 -1
  209. package/src/components/Profile/Profile.args.ts +0 -58
  210. package/src/components/Profile/Profile.props.ts +0 -55
  211. package/src/components/Profile/Profile.tsx +0 -51
  212. package/src/components/Profile/index.ts +0 -1
  213. package/src/components/Radio/Radio.args.ts +0 -15
  214. package/src/components/Radio/Radio.props.ts +0 -6
  215. package/src/components/Radio/Radio.tsx +0 -102
  216. package/src/components/Radio/index.ts +0 -2
  217. package/src/components/ReadMore/ReadMore.args.ts +0 -23
  218. package/src/components/ReadMore/ReadMore.props.ts +0 -38
  219. package/src/components/ReadMore/ReadMore.tsx +0 -55
  220. package/src/components/ReadMore/index.ts +0 -1
  221. package/src/components/RichText/RichText.props.ts +0 -11
  222. package/src/components/RichText/RichText.tsx +0 -22
  223. package/src/components/RichText/index.ts +0 -1
  224. package/src/components/RichText/richText.args.ts +0 -38
  225. package/src/components/SearchField/SearchField.args.ts +0 -73
  226. package/src/components/SearchField/SearchField.props.ts +0 -35
  227. package/src/components/SearchField/SearchField.tsx +0 -83
  228. package/src/components/SearchField/index.ts +0 -1
  229. package/src/components/SocialMedia/SocialMedia.args.ts +0 -54
  230. package/src/components/SocialMedia/SocialMedia.props.ts +0 -45
  231. package/src/components/SocialMedia/SocialMedia.tsx +0 -46
  232. package/src/components/SocialMedia/index.ts +0 -3
  233. package/src/components/TableOfContents/TableOfContents.args.ts +0 -35
  234. package/src/components/TableOfContents/TableOfContents.props.ts +0 -23
  235. package/src/components/TableOfContents/TableOfContents.tsx +0 -32
  236. package/src/components/TableOfContents/index.ts +0 -1
  237. package/src/components/Tabs/Tabs.args.tsx +0 -201
  238. package/src/components/Tabs/Tabs.props.ts +0 -13
  239. package/src/components/Tabs/Tabs.tsx +0 -60
  240. package/src/components/Tabs/index.ts +0 -1
  241. package/src/components/Tag/Tag.args.ts +0 -15
  242. package/src/components/Tag/Tag.props.ts +0 -34
  243. package/src/components/Tag/Tag.tsx +0 -104
  244. package/src/components/Tag/TagCtx.ts +0 -4
  245. package/src/components/Tag/TagSet.args.ts +0 -37
  246. package/src/components/Tag/TagSet.props.ts +0 -37
  247. package/src/components/Tag/TagSet.tsx +0 -61
  248. package/src/components/Tag/index.ts +0 -2
  249. package/src/components/TextInput/TextInput.args.ts +0 -75
  250. package/src/components/TextInput/TextInput.props.ts +0 -20
  251. package/src/components/TextInput/TextInput.tsx +0 -71
  252. package/src/components/TextInput/index.ts +0 -2
  253. package/src/components/Textarea/Textarea.args.ts +0 -34
  254. package/src/components/Textarea/Textarea.props.ts +0 -45
  255. package/src/components/Textarea/Textarea.tsx +0 -52
  256. package/src/components/Textarea/index.ts +0 -3
  257. package/src/components/Toggle/Toggle.args.ts +0 -62
  258. package/src/components/Toggle/Toggle.props.ts +0 -27
  259. package/src/components/Toggle/Toggle.tsx +0 -85
  260. package/src/components/Toggle/index.ts +0 -3
  261. package/src/components/Tooltip/Tooltip.args.ts +0 -39
  262. package/src/components/Tooltip/Tooltip.props.ts +0 -38
  263. package/src/components/Tooltip/Tooltip.tsx +0 -119
  264. package/src/components/Tooltip/index.ts +0 -1
  265. package/src/components/Video/Video.args.ts +0 -47
  266. package/src/components/Video/Video.props.ts +0 -35
  267. package/src/components/Video/Video.tsx +0 -34
  268. package/src/components/Video/VideoPlayer.props.ts +0 -51
  269. package/src/components/Video/VideoPlayer.tsx +0 -71
  270. package/src/components/Video/index.ts +0 -1
  271. package/src/components/Video/media-file-poster.jpg +0 -0
  272. package/src/components/index.ts +0 -46
  273. package/src/declarations.d.ts +0 -36
  274. package/src/hooks/index.ts +0 -2
  275. package/src/hooks/useGlobalSettings.ts +0 -13
  276. package/src/hooks/usePrevious.ts +0 -15
  277. package/src/hooks/useVideoPlayer.ts +0 -85
  278. package/src/index.ts +0 -1
  279. package/src/types/forms.args.ts +0 -288
  280. package/src/types/index.ts +0 -139
  281. package/src/types/temp.d.ts +0 -9
  282. package/src/utils/checkArrayDuplicates.ts +0 -3
  283. package/src/utils/createChainedFunction.ts +0 -31
  284. package/src/utils/getDefaultDimensionValue.ts +0 -28
  285. package/src/utils/hoursMinutesSeconds.ts +0 -8
  286. package/src/utils/index.ts +0 -6
  287. package/src/utils/transitionEndListener.ts +0 -29
  288. package/src/utils/triggerBrowserReflow.ts +0 -4
  289. package/tsconfig.build.json +0 -19
  290. package/tsconfig.json +0 -8
@@ -1,78 +0,0 @@
1
- import { LinkProps } from "../../LinkList/LinkList.props";
2
- import { StatCardProps } from "../StatCard";
3
- import { MultilinkCardProps } from "../MultilinkCard";
4
- import { TextCardProps } from "../TextCard";
5
- import { PromoCardProps } from "../PromoCard";
6
- import { FeatureCardProps } from "../FeatureCard";
7
- import { DetailCardProps } from "../DetailCard";
8
- import { FactlistCardProps } from "../FactlistCard";
9
- import { DataCardProps } from "../DataCard";
10
-
11
- export interface CommonCardGroupProps {
12
- /**
13
- * Number of cards in the group
14
- */
15
- cardCount: string;
16
-
17
- /**
18
- * A Button to display after all the cards in the group
19
- */
20
- cta?: LinkProps;
21
- }
22
-
23
- export interface StatCardGroup extends CommonCardGroupProps {
24
- /**
25
- * Represents different types of card groups:
26
- */
27
- type: "stat";
28
-
29
- /**
30
- * An array of card objects corresponding to the respective card type:
31
- */
32
- cards: StatCardProps[];
33
- }
34
-
35
- export interface MultilinkCardGroup extends CommonCardGroupProps {
36
- type: "multilink";
37
- cards: MultilinkCardProps[];
38
- }
39
-
40
- export interface TextCardGroup extends CommonCardGroupProps {
41
- type: "text";
42
- cards: TextCardProps[];
43
- }
44
-
45
- export interface PromoCardGroup extends CommonCardGroupProps {
46
- type: "promo";
47
- cards: PromoCardProps[];
48
- }
49
-
50
- export interface FeatureCardGroup extends CommonCardGroupProps {
51
- type: "feature";
52
- cards: FeatureCardProps[];
53
- }
54
-
55
- export interface DetailCardGroup extends CommonCardGroupProps {
56
- type: "detail";
57
- cards: DetailCardProps[];
58
- }
59
-
60
- export interface FactlistCardGroup extends CommonCardGroupProps {
61
- type: "factlist";
62
- cards: FactlistCardProps[];
63
- }
64
-
65
- export interface DataCardGroup extends CommonCardGroupProps {
66
- type: "data";
67
- cards: DataCardProps[];
68
- }
69
-
70
- export type CardGroupProps =
71
- | StatCardGroup
72
- | MultilinkCardGroup
73
- | TextCardGroup
74
- | PromoCardGroup
75
- | FeatureCardGroup
76
- | DetailCardGroup
77
- | FactlistCardGroup
78
- | DataCardGroup;
@@ -1,54 +0,0 @@
1
- import { FC } from "react";
2
- import classnames from "classnames";
3
- import useGlobalSettings from "../../../hooks/useGlobalSettings";
4
- import { CardGroupProps } from "./CardGroup.props";
5
- import { DataCard } from "../DataCard";
6
- import { DetailCard } from "../DetailCard";
7
- import { FactlistCard } from "../FactlistCard";
8
- import { FeatureCard } from "../FeatureCard";
9
- import { MultilinkCard } from "../MultilinkCard";
10
- import { PromoCard } from "../PromoCard";
11
- import { StatCard } from "../StatCard";
12
- import { TextCard } from "../TextCard";
13
-
14
- const cardMapper: Record<string, React.FC> = {
15
- stat: StatCard,
16
- multilink: MultilinkCard,
17
- text: TextCard,
18
- promo: PromoCard,
19
- feature: FeatureCard,
20
- detail: DetailCard,
21
- factlist: FactlistCard,
22
- data: DataCard,
23
- };
24
-
25
- const CardGroup: FC<CardGroupProps> = ({ cards, cardCount, cta, type }) => {
26
- const Cards = cardMapper[type];
27
- const { prefix } = useGlobalSettings();
28
-
29
- const baseClass = `${prefix}--cardgroup`;
30
- const cardGroupClasses = classnames(
31
- baseClass,
32
- `${baseClass}__count__${cardCount}`
33
- );
34
-
35
- return (
36
- <div className={cardGroupClasses}>
37
- <div className={`${baseClass}--inner`}>
38
- {cards && cards.map((card, index) => <Cards key={index} {...card} />)}
39
- </div>
40
- {cta && (
41
- <div className={`${baseClass}--button-wrap`}>
42
- <a
43
- className={`${prefix}--button ${prefix}--button--medium ${prefix}--button--secondary`}
44
- href={cta.url}
45
- >
46
- <span className="button__label">{cta.label}</span>
47
- </a>
48
- </div>
49
- )}
50
- </div>
51
- );
52
- };
53
-
54
- export default CardGroup;
@@ -1,3 +0,0 @@
1
- export { default as CardGroup } from "./CardGroup";
2
- export type { CardGroupProps } from "./CardGroup.props";
3
- export { default as CardGroupArgs } from "./CardGroup.args";
@@ -1,69 +0,0 @@
1
- import { DataCardProps } from ".";
2
-
3
- export const DataCardArgs: DataCardProps = {
4
- size: "wide",
5
- eyebrow: "Meeting",
6
- image: "/small.jpg",
7
- columns: "two",
8
- dataset: {
9
- content: {
10
- items: [
11
- {
12
- label: "Date",
13
- copy: "18 March 2023",
14
- },
15
- {
16
- label: "Event type",
17
- copy: "Technical meeting of experts",
18
- },
19
- ],
20
- },
21
- files: {
22
- headline: "Files",
23
- items: [
24
- {
25
- label: "Meeting agenda",
26
- url: "https://www.ilo.org",
27
- },
28
- {
29
- label: "Briefing notes",
30
- url: "https://www.ilo.org",
31
- },
32
- {
33
- label: "Practical info",
34
- url: "https://www.ilo.org",
35
- },
36
- ],
37
- },
38
- cta: {
39
- headline: "Read online",
40
- items: [
41
- {
42
- label: "HTML Version",
43
- url: "https://www.ilo.org",
44
- },
45
- {
46
- label: "InfoStories",
47
- url: "https://www.ilo.org/infostories/en-GB",
48
- },
49
- ],
50
- },
51
- links: {
52
- headline: "Languages",
53
- items: [
54
- {
55
- label: "English",
56
- url: "https://www.ilo.org",
57
- },
58
- {
59
- label: "Español",
60
- url: "https://www.ilo.org",
61
- },
62
- {
63
- label: "Français",
64
- url: "https://www.ilo.org",
65
- },
66
- ],
67
- },
68
- },
69
- };
@@ -1,60 +0,0 @@
1
- import { CardSize } from "../../../types";
2
- import { LinkProps } from "../../LinkList/LinkList.props";
3
-
4
- export type DataCardProps = {
5
- /**
6
- * A line of text that appears as a small heading at the top of the card
7
- */
8
- eyebrow?: string;
9
-
10
- /**
11
- * How big should the card be
12
- */
13
- size?: Omit<CardSize, "standard">;
14
-
15
- /**
16
- * The image to show in the card
17
- */
18
- image?: string;
19
-
20
- /**
21
- * Array of Content (label, copy), Files object (optional headline, array of items with label and url) and Links * * object (optional headline, array of items with label and url)
22
- */
23
- dataset?: CardDataset;
24
-
25
- /**
26
- * Make the content appear in one or two columns. Only applies when the size is set to `wide` or `fluid`
27
- */
28
- columns?: string;
29
- };
30
-
31
- interface CardDataset {
32
- content?: DataContent;
33
- files?: DataFile;
34
- links?: DataLink;
35
- cta?: Cta;
36
- }
37
-
38
- interface DataContent {
39
- items?: Array<ContentItem>;
40
- }
41
-
42
- interface ContentItem {
43
- label?: string;
44
- copy?: string;
45
- }
46
-
47
- interface DataFile {
48
- headline?: string;
49
- items?: Array<LinkProps>;
50
- }
51
-
52
- interface DataLink {
53
- headline?: string;
54
- items?: Array<LinkProps>;
55
- }
56
-
57
- interface Cta {
58
- headline?: string;
59
- items?: Array<LinkProps>;
60
- }
@@ -1,107 +0,0 @@
1
- import { FC } from "react";
2
- import classnames from "classnames";
3
- import useGlobalSettings from "../../../hooks/useGlobalSettings";
4
- import { DataCardProps } from "./DataCard.props";
5
- import { Link } from "../../Link";
6
-
7
- const DataCard: FC<DataCardProps> = ({
8
- eyebrow,
9
- size = "narrow",
10
- image,
11
- dataset,
12
- columns = "one",
13
- }) => {
14
- const { prefix } = useGlobalSettings();
15
-
16
- const baseClass = `${prefix}--card`;
17
-
18
- const cardClasses = classnames(baseClass, `${baseClass}__type__data`, {
19
- [`${baseClass}__size__${size}`]: size,
20
- [`${baseClass}__type__data__columns__${columns}`]: columns,
21
- });
22
-
23
- return (
24
- <div className={cardClasses}>
25
- <div className={`${baseClass}--wrap`}>
26
- {eyebrow && <p className={`${baseClass}--eyebrow`}>{eyebrow}</p>}
27
- <div className={`${baseClass}--content`}>
28
- {image && (
29
- <div className={`${baseClass}--image--wrapper`}>
30
- <picture>
31
- <img
32
- className={`${baseClass}--picture`}
33
- src={image}
34
- alt={eyebrow}
35
- />
36
- </picture>
37
- </div>
38
- )}
39
- {dataset &&
40
- dataset.content &&
41
- dataset.content.items &&
42
- dataset.content.items.map((item) => (
43
- <div className={`${baseClass}--area--content`}>
44
- <p className={`${baseClass}__type__data--content-label`}>
45
- {item.label}
46
- </p>
47
- <p className={`${baseClass}__type__data--content-copy`}>
48
- {item.copy}
49
- </p>
50
- </div>
51
- ))}
52
- {dataset && dataset.files && (
53
- <div className={`${baseClass}--data--content-files`}>
54
- <p className={`${baseClass}__type__data--content-label`}>
55
- {dataset.files.headline}
56
- </p>
57
- {dataset.files.items &&
58
- dataset.files.items.map((item) => (
59
- <a
60
- className={`${baseClass}--data--file ${prefix}--button ${prefix}--button--primary ${prefix}--button--small`}
61
- href={item.url}
62
- download
63
- >
64
- <span className="button__label">{item.label}</span>
65
- </a>
66
- ))}
67
- </div>
68
- )}
69
- {dataset && dataset.cta && (
70
- <div className={`${baseClass}--area--cta`}>
71
- <div className={`${baseClass}--data--content-cta`}>
72
- <p className={`${baseClass}__type__data--content-label`}>
73
- {dataset.cta.headline}
74
- </p>
75
- {dataset.cta.items &&
76
- dataset.cta.items.map((item) => (
77
- <a
78
- className={`${baseClass}--cta ${prefix}--button ${prefix}--button--medium ${prefix}--button--secondary`}
79
- href={item.url}
80
- >
81
- <span className="link__label">{item.label}</span>
82
- </a>
83
- ))}
84
- </div>
85
- </div>
86
- )}
87
- {dataset && dataset.links && (
88
- <div className={`${baseClass}--data--content-links`}>
89
- <p className={`${baseClass}__type__data--content-label`}>
90
- {dataset.links.headline}
91
- </p>
92
- {dataset.links.items &&
93
- dataset.links.items.map((item) => (
94
- <>
95
- <Link url={item.url}>{item.label}</Link>
96
- <span>&nbsp;&nbsp;</span>
97
- </>
98
- ))}
99
- </div>
100
- )}
101
- </div>
102
- </div>
103
- </div>
104
- );
105
- };
106
-
107
- export default DataCard;
@@ -1,3 +0,0 @@
1
- export { default as DataCard } from "./DataCard";
2
- export type { DataCardProps } from "./DataCard.props";
3
- export { DataCardArgs } from "./DataCard.args";
@@ -1,17 +0,0 @@
1
- import { DetailCardProps } from ".";
2
-
3
- export const DetailCardArgs: DetailCardProps = {
4
- title: "Technical meeting on digitalization in the construction sector",
5
- eyebrow: "Meeting",
6
- intro:
7
- "The purpose of the meeting will be to discuss opportunities and challenges for the future of work in the construction industry as a vehicle to ensure a human-centred economic recovery.",
8
- date: {
9
- human: "18 March 2023",
10
- unix: "1670389200",
11
- },
12
- image: "/medium.jpg",
13
- link: "https:/www.ilo.org",
14
- eventdetails: "8:30 - 12:00 CET | Geneva",
15
- };
16
-
17
- export default DetailCardArgs;
@@ -1,43 +0,0 @@
1
- import { CardSize, EventDate } from "../../../types";
2
-
3
- export type DetailCardProps = {
4
- /**
5
- * A line of text that appears as a small heading above the title of the card
6
- */
7
- eyebrow?: string;
8
-
9
- /**
10
- * The title of the card
11
- */
12
- title: string;
13
-
14
- /**
15
- * Introductory text in the card
16
- */
17
- intro?: string;
18
-
19
- /**
20
- * Specify the event Date, in both human and Unix format.
21
- */
22
- date?: EventDate;
23
-
24
- /**
25
- * Information about an event
26
- */
27
- eventdetails?: string;
28
-
29
- /**
30
- * A URL to link to
31
- */
32
- link?: string;
33
-
34
- /**
35
- * The image to show in the card
36
- */
37
- image?: string;
38
-
39
- /**
40
- * How big should the card be
41
- */
42
- size?: Omit<CardSize, "standard">;
43
- };
@@ -1,62 +0,0 @@
1
- import { FC } from "react";
2
- import classnames from "classnames";
3
- import useGlobalSettings from "../../../hooks/useGlobalSettings";
4
- import { DetailCardProps } from "./DetailCard.props";
5
-
6
- const DetailCard: FC<DetailCardProps> = ({
7
- eyebrow,
8
- title,
9
- size = "narrow",
10
- intro,
11
- date,
12
- eventdetails,
13
- link,
14
- image,
15
- }) => {
16
- const { prefix } = useGlobalSettings();
17
-
18
- const baseClass = `${prefix}--card`;
19
-
20
- const cardClasses = classnames(baseClass, `${baseClass}__type__detail`, {
21
- [`${baseClass}__action`]: link,
22
- [`${baseClass}__size__${size}`]: size,
23
- });
24
-
25
- return (
26
- <div className={cardClasses}>
27
- {link && (
28
- <a className={`${baseClass}--link`} href={link} title={title}>
29
- <span className={`${baseClass}--link--text`}>{title}</span>
30
- </a>
31
- )}
32
- <div className={`${baseClass}--wrap`}>
33
- {image && (
34
- <div className={`${baseClass}--image--wrapper`}>
35
- <picture>
36
- <img
37
- className={`${baseClass}--picture`}
38
- src={image}
39
- alt={title}
40
- />
41
- </picture>
42
- </div>
43
- )}
44
- <div className={`${baseClass}--content`}>
45
- {eyebrow && <p className={`${baseClass}--eyebrow`}>{eyebrow}</p>}
46
- {title && <h5 className={`${baseClass}--title`}>{title}</h5>}
47
- {intro && <p className={`${baseClass}--intro`}>{intro}</p>}
48
- {date && (
49
- <time className={`${baseClass}--date`} dateTime={date.unix}>
50
- {date.human}
51
- </time>
52
- )}
53
- {eventdetails && (
54
- <p className={`${baseClass}--date-extra`}>{eventdetails}</p>
55
- )}
56
- </div>
57
- </div>
58
- </div>
59
- );
60
- };
61
-
62
- export default DetailCard;
@@ -1,3 +0,0 @@
1
- export { default as DetailCard } from "./DetailCard";
2
- export type { DetailCardProps } from "./DetailCard.props";
3
- export { DetailCardArgs } from "./DetailCard.args";
@@ -1,14 +0,0 @@
1
- import { FactlistCardProps } from ".";
2
-
3
- export const FactlistCardArgs: FactlistCardProps = {
4
- title:
5
- "Economic slowdown likely to force workers to accept lower quality jobs",
6
- theme: "light",
7
- list: [
8
- "Global employment growth will be only 1.0 per cent in 2023, less than half the level in 2022.",
9
- "The labour market deterioration is mainly due to emerging geopolitical tensions and the Ukraine conflict.",
10
- "The current slowdown means that many workers will have to accept lower quality jobs, often at very low pay.",
11
- ],
12
- };
13
-
14
- export default FactlistCardArgs;
@@ -1,19 +0,0 @@
1
- import { ThemeTypes, CardSize } from "../../../types";
2
-
3
- export type FactlistCardProps = {
4
- /**
5
- * The title of the card
6
- */
7
- title: string;
8
-
9
- /**
10
- * Will render the card to appear on light or dark backgrounds
11
- */
12
- theme?: ThemeTypes;
13
-
14
- /**
15
- * How big should the card be
16
- */
17
- size?: Omit<CardSize, "standard">;
18
- list?: string[];
19
- };
@@ -1,42 +0,0 @@
1
- import { FC } from "react";
2
- import classnames from "classnames";
3
- import useGlobalSettings from "../../../hooks/useGlobalSettings";
4
- import { FactlistCardProps } from "./FactListCard.props";
5
- import { List, ListItem } from "../../List";
6
-
7
- const FactlistCard: FC<FactlistCardProps> = ({
8
- title,
9
- theme = "narrow",
10
- size,
11
- list,
12
- }) => {
13
- const { prefix } = useGlobalSettings();
14
-
15
- const baseClass = `${prefix}--card`;
16
-
17
- const cardClasses = classnames(baseClass, `${baseClass}__type__factlist`, {
18
- [`${baseClass}__size__${size}`]: size,
19
- [`${baseClass}__theme__${theme}`]: theme,
20
- });
21
-
22
- return (
23
- <div className={cardClasses}>
24
- <div className={`${baseClass}--wrap`}>
25
- <div className={`${baseClass}--content`}>
26
- {title && <h5 className={`${baseClass}--title`}>{title}</h5>}
27
- {list && (
28
- <List alignment="default" ordered="unordered">
29
- {list.map((item, index) => (
30
- <ListItem id={`list${index}`}>
31
- <p>{item}</p>
32
- </ListItem>
33
- ))}
34
- </List>
35
- )}
36
- </div>
37
- </div>
38
- </div>
39
- );
40
- };
41
-
42
- export default FactlistCard;
@@ -1,3 +0,0 @@
1
- export { default as FactlistCard } from "./FactListCard";
2
- export type { FactlistCardProps } from "./FactListCard.props";
3
- export { FactlistCardArgs } from "./FactListCard.args";
@@ -1,30 +0,0 @@
1
- import { FeatureCardProps } from ".";
2
-
3
- export const FeatureCardArgs: FeatureCardProps = {
4
- isvideo: false,
5
- title:
6
- "ILO welcomes G7 call to make a just transition to a green economy happen",
7
- eyebrow: "High-level meeting",
8
- theme: "light",
9
- date: {
10
- human: "18 March 2023",
11
- unix: "1670389200",
12
- },
13
- image: "/hero.jpg",
14
- link: "https:/www.ilo.org",
15
- linklist: {
16
- headline: "",
17
- linkgroup: [
18
- {
19
- links: [
20
- {
21
- label: "Read the press release",
22
- url: "http://www.google.com",
23
- },
24
- ],
25
- },
26
- ],
27
- },
28
- };
29
-
30
- export default FeatureCardArgs;
@@ -1,38 +0,0 @@
1
- import { ThemeTypes, CardSize, EventDate } from "../../../types";
2
-
3
- import { LinkListProps } from "../../LinkList/LinkList.props";
4
- export type FeatureCardProps = {
5
- isvideo?: boolean;
6
-
7
- /**
8
- * A line of text that appears as a small heading above the title of the card
9
- */
10
- eyebrow?: string;
11
-
12
- /**
13
- * The title of the card
14
- */
15
- title: string;
16
-
17
- /**
18
- * Will render the card to appear on light or dark backgrounds
19
- */
20
- theme?: ThemeTypes;
21
-
22
- /**
23
- * How big should the card be
24
- */
25
- size?: Omit<CardSize, "standard">;
26
-
27
- /**
28
- * Specify the event Date, in both human and Unix format.
29
- */
30
- date?: EventDate;
31
- link?: string;
32
- linklist?: LinkListProps;
33
-
34
- /**
35
- * The image to show in the card
36
- */
37
- image?: string;
38
- };