@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,55 +0,0 @@
1
- import { FC, useState } from "react";
2
- import classNames from "classnames";
3
- import useGlobalSettings from "../../hooks/useGlobalSettings";
4
- import { ReadMoreProps } from "./ReadMore.props";
5
- import { RichText } from "../RichText";
6
-
7
- const ReadMore: FC<ReadMoreProps> = ({
8
- buttonlabel,
9
- className,
10
- excerpt,
11
- fulltext,
12
- openatstart,
13
- ...rest
14
- }) => {
15
- const { prefix } = useGlobalSettings();
16
- const baseClass = `${prefix}--read-more`;
17
- const [content, setContent] = useState(openatstart ? fulltext : excerpt);
18
- const [isopen, setOpen] = useState(openatstart);
19
-
20
- const readMoreClasses = classNames(className, {
21
- [baseClass]: true,
22
- [`${baseClass}--open`]: isopen,
23
- });
24
-
25
- const readmoreButtonClasses = classNames(className, {
26
- [`${baseClass}--button`]: true,
27
- [`${baseClass}--button--open`]: isopen,
28
- });
29
-
30
- /**
31
- * On click, toggle state vars
32
- */
33
- const handleClick = () => {
34
- const nextcontent = content === excerpt ? fulltext : excerpt;
35
- setContent(nextcontent);
36
- setOpen(!isopen);
37
- };
38
-
39
- return (
40
- <div className={readMoreClasses}>
41
- <RichText content={content} {...rest} />
42
- <button
43
- className={readmoreButtonClasses}
44
- aria-expanded={isopen}
45
- onClick={() => handleClick()}
46
- >
47
- {isopen
48
- ? `${buttonlabel && buttonlabel.opened}`
49
- : `${buttonlabel && buttonlabel.closed}`}
50
- </button>
51
- </div>
52
- );
53
- };
54
-
55
- export default ReadMore;
@@ -1 +0,0 @@
1
- export { default as ReadMore } from "./ReadMore";
@@ -1,11 +0,0 @@
1
- export interface RichTextProps {
2
- /**
3
- * Specify an optional className to be added to your RichText.
4
- */
5
- className?: string;
6
-
7
- /**
8
- * Specify the html content
9
- */
10
- content: string;
11
- }
@@ -1,22 +0,0 @@
1
- import { FC } from "react";
2
- import classNames from "classnames";
3
- import useGlobalSettings from "../../hooks/useGlobalSettings";
4
- import { RichTextProps } from "./RichText.props";
5
-
6
- const RichText: FC<RichTextProps> = ({ className, content }) => {
7
- const { prefix } = useGlobalSettings();
8
- const baseClass = `${prefix}--richtext`;
9
-
10
- const richTextClasses = classNames(className, {
11
- [baseClass]: true,
12
- });
13
-
14
- return (
15
- <div
16
- className={richTextClasses}
17
- dangerouslySetInnerHTML={{ __html: content }}
18
- />
19
- );
20
- };
21
-
22
- export default RichText;
@@ -1 +0,0 @@
1
- export { default as RichText } from "./RichText";
@@ -1,38 +0,0 @@
1
- import { RichTextProps } from "./RichText.props";
2
-
3
- const richtext: RichTextProps = {
4
- content: `<h2>International Labour Organization</h2>
5
-
6
- <p>The <b>International Labour Organization</b> (<b>ILO</b>) is a <a href='https://www.un.org'>United Nations</a> agency whose mandate is to advance social and economic justice by setting international labour standards. Founded in October 1919 under the League of Nations, it is the first and oldest specialised agency of the UN. The ILO has 187 member states: 186 out of 193 UN member states plus the Cook Islands.</p>
7
-
8
- <p>Whereas also the failure of any nation to adopt humane conditions of labour is an obstacle in the way of other nations which desire to improve the conditions in their own countries.</p>
9
-
10
- <figure><img alt='placeholder image' class='right' src='/ilo-headquarters.jpg'><figcaption>The ILO's headquarters in Geneva, Switzerland. ©Steiner SA</figcaption></figure>
11
-
12
- <h3>ILO Constitution</h3>
13
-
14
- <p>The driving forces for the ILO's creation arose from security, humanitarian, political and economic considerations.</p>
15
-
16
- <blockquote>
17
- <p>The fundamental ideas that forged the ILO one hundred and three years ago still underpin the global pledge to leave no one behind.</p>
18
- <cite>ILO Director-General Gilbert F. Houngbo</cite>
19
- </blockquote>
20
-
21
- Reflecting these ideas, the Preamble of the ILO Constitution states:</p>
22
-
23
- <ol>
24
- <li>Whereas universal and lasting peace can be established only if it is based upon social justice;</li>
25
- <li>And whereas conditions of labour exist involving such injustice, hardship and privation to large numbers of people as to produce unrest so great that the peace and harmony of the world are imperilled; and an improvement of those conditions is urgently required;</li>
26
- <li>Whereas also the failure of any nation to adopt humane conditions of labour is an obstacle in the way of other nations which desire to improve the conditions in their own countries.</li>
27
- </ol>
28
- `,
29
- };
30
-
31
- /**
32
- * Sample prop definitions for RichText's enumerable properties (imported in stories and tests).
33
- */
34
- const richTextArgs = {
35
- richtext,
36
- };
37
-
38
- export default richTextArgs;
@@ -1,73 +0,0 @@
1
- import { SearchFieldProps } from "./SearchField.props";
2
-
3
- const searchfield: SearchFieldProps = {
4
- callback: () => {},
5
- input: {
6
- callback: () => {},
7
- disabled: false,
8
- name: "search",
9
- placeholder: "Search Field",
10
- type: "search",
11
- value: "",
12
- },
13
- };
14
-
15
- const searchfielderror: SearchFieldProps = {
16
- callback: () => {},
17
- input: {
18
- callback: () => {},
19
- disabled: false,
20
- error: "Error message",
21
- name: "search",
22
- placeholder: "Search Field",
23
- type: "search",
24
- value: "",
25
- },
26
- };
27
-
28
- const searchfielddisabled: SearchFieldProps = {
29
- callback: () => {},
30
- input: {
31
- callback: () => {},
32
- disabled: true,
33
- name: "search",
34
- placeholder: "Search Field",
35
- type: "search",
36
- value: "",
37
- },
38
- };
39
-
40
- const searchfieldlabel: SearchFieldProps = {
41
- callback: () => {},
42
- input: {
43
- label: "Search Field",
44
- name: "search",
45
- placeholder: "Search Field",
46
- type: "search",
47
- value: "",
48
- },
49
- };
50
-
51
- const searchfieldhelper: SearchFieldProps = {
52
- callback: () => {},
53
- input: {
54
- helper: "Search Field Helper text",
55
- name: "search",
56
- placeholder: "Search Field",
57
- type: "search",
58
- value: "",
59
- },
60
- };
61
-
62
- /**
63
- * Sample prop definitions for SearchField's enumerable properties (imported in stories and test)
64
- */
65
- const SearchFieldArgs = {
66
- searchfield,
67
- searchfielderror,
68
- searchfielddisabled,
69
- searchfieldlabel,
70
- searchfieldhelper,
71
- };
72
-
73
- export default SearchFieldArgs;
@@ -1,35 +0,0 @@
1
- import { InputProps } from "../Input/Input.props";
2
-
3
- export interface ButtonProps {
4
- /**
5
- * The button's label.
6
- */
7
- label: Required<string>;
8
- }
9
-
10
- export interface SearchFieldProps {
11
- /**
12
- * Specify the action attribute for the search form
13
- */
14
- action?: string;
15
-
16
- /**
17
- * Specify the properties of the submit button
18
- */
19
- button?: Required<ButtonProps>;
20
-
21
- /**
22
- * The search field submit button's click function.
23
- */
24
- callback?: (e: React.MouseEvent<HTMLInputElement, MouseEvent>) => any;
25
-
26
- /**
27
- * Specify an optional className to be added to your Button.
28
- */
29
- className?: string;
30
-
31
- /**
32
- * Specify the properties of the search field input
33
- */
34
- input?: InputProps;
35
- }
@@ -1,83 +0,0 @@
1
- import { FC, useState } from "react";
2
- import classNames from "classnames";
3
- import useGlobalSettings from "../../hooks/useGlobalSettings";
4
- import { SearchFieldProps } from "./SearchField.props";
5
- import { Input } from "../Input";
6
- import { Icon } from "../Icon";
7
-
8
- const SearchField: FC<SearchFieldProps> = ({
9
- action,
10
- callback,
11
- className,
12
- input,
13
- }) => {
14
- const [searchValue, setSearchValue] = useState("");
15
-
16
- const { prefix } = useGlobalSettings();
17
- const baseClass = `${prefix}--searchfield`;
18
- const buttonClass = `${baseClass}--button`;
19
- const clearButtonClass = `${baseClass}--clear-button ${
20
- searchValue.trim() !== "" && "show"
21
- }`;
22
- const fieldSetClass = `${prefix}--fieldset`;
23
-
24
- const SearchFieldClasses = classNames(className, {
25
- [baseClass]: true,
26
- [`haslabel`]: input?.label,
27
- });
28
-
29
- const handleClick: React.MouseEventHandler<HTMLInputElement> = (e) => {
30
- if (callback) {
31
- callback(e);
32
- }
33
- };
34
-
35
- // handle click for clear button in search
36
- const handleClearButtonClick: React.MouseEventHandler<
37
- HTMLInputElement
38
- > = () => {
39
- setSearchValue("");
40
- };
41
-
42
- // Update search value on input
43
- const onKeyPress: React.ChangeEventHandler<HTMLInputElement> = (e) => {
44
- setSearchValue(e.target.value);
45
- };
46
-
47
- const inputHasType = !!input?.type;
48
-
49
- if (!inputHasType) {
50
- throw new Error("SearchField: Input must have type prop");
51
- }
52
-
53
- return inputHasType ? (
54
- <form className={SearchFieldClasses} action={action}>
55
- <div className={fieldSetClass}>
56
- <Input
57
- id={input?.id}
58
- name={input?.name}
59
- disabled={input?.disabled}
60
- callback={onKeyPress}
61
- error={input?.error}
62
- helper={input?.helper}
63
- label={input?.label}
64
- placeholder={input?.placeholder}
65
- type={input?.type}
66
- value={searchValue}
67
- className={`${prefix}--input`}
68
- />
69
- <span onClick={handleClearButtonClick} className={clearButtonClass}>
70
- <Icon name="close" hidden={true} />
71
- </span>
72
- </div>
73
- <input
74
- className={buttonClass}
75
- disabled={input?.disabled}
76
- type="submit"
77
- onClick={handleClick}
78
- />
79
- </form>
80
- ) : null;
81
- };
82
-
83
- export default SearchField;
@@ -1 +0,0 @@
1
- export { default as SearchField } from "./SearchField";
@@ -1,54 +0,0 @@
1
- import { SocialMediaProps } from "./SocialMedia.props";
2
-
3
- export const defaultArgs: SocialMediaProps = {
4
- headline: "Follow us on social media",
5
- theme: "light",
6
- justify: "start",
7
- icons: [
8
- {
9
- icon: "facebook",
10
- url: "https://www.facebook.com/ilo.org",
11
- label: "Facebook",
12
- },
13
- {
14
- icon: "twitter",
15
- url: "https://twitter.com/#!/ilo",
16
- label: "Twitter",
17
- },
18
- {
19
- icon: "instagram",
20
- url: "https://www.instagram.com/ilo.org/",
21
- label: "Instagram",
22
- },
23
- {
24
- icon: "linkedin",
25
- url: "https://www.linkedin.com/company/international-labour-organization-ilo",
26
- label: "LinkedIn",
27
- },
28
- {
29
- icon: "youtube",
30
- url: "https://www.youtube.com/channel/UCQsVmhSa4X-G3lHlUtejzLA",
31
- label: "YouTube",
32
- },
33
- {
34
- icon: "tiktok",
35
- url: "https://www.tiktok.com/@ilo",
36
- label: "TikTok",
37
- },
38
- {
39
- icon: "flickr",
40
- url: "https://www.flickr.com/photos/ilopictures/albums",
41
- label: "TikTok",
42
- },
43
- ],
44
- };
45
-
46
- export const darkArgs: SocialMediaProps = {
47
- ...defaultArgs,
48
- theme: "dark",
49
- };
50
-
51
- export const centredArgs: SocialMediaProps = {
52
- ...defaultArgs,
53
- justify: "center",
54
- };
@@ -1,45 +0,0 @@
1
- import { SocialTypes } from "../../types";
2
-
3
- export interface SocialMediaIcons {
4
- /**
5
- * The name of the icon to display
6
- */
7
- icon: SocialTypes;
8
-
9
- /**
10
- * The url to link to
11
- */
12
- url: string;
13
-
14
- /**
15
- * The alt text of the link
16
- */
17
- label: string;
18
- }
19
-
20
- export interface SocialMediaProps {
21
- /**
22
- * An optional headline to display above the icons
23
- */
24
- headline?: string;
25
-
26
- /**
27
- * Specify an optional className to be added to your SocialMedia.
28
- */
29
- className?: string;
30
-
31
- /**
32
- * Specify the theme of the SocialMedia.
33
- */
34
- theme?: "light" | "dark";
35
-
36
- /**
37
- * The justification of the icons
38
- */
39
- justify?: "start" | "center";
40
-
41
- /**
42
- * Specify the icons to display.
43
- */
44
- icons: SocialMediaIcons[];
45
- }
@@ -1,46 +0,0 @@
1
- import classnames from "classnames";
2
- import { useGlobalSettings } from "../../hooks";
3
- import { SocialMediaProps } from "./SocialMedia.props";
4
-
5
- const SocialMedia: React.FC<SocialMediaProps> = ({
6
- className,
7
- theme = "light",
8
- justify = "start",
9
- headline,
10
- icons,
11
- }) => {
12
- const { prefix } = useGlobalSettings();
13
-
14
- // Classes to be applied to the outer element
15
- const baseClass = `${prefix}--social-media`;
16
- const themeClass = `${baseClass}__theme__${theme}`;
17
- const justifyClass = `${baseClass}__justify__${justify}`;
18
- const classes = classnames(baseClass, themeClass, justifyClass, className);
19
-
20
- // Classes to be applied to inner elements
21
- const headlineClass = `${baseClass}--headline`;
22
- const listClass = `${baseClass}--list`;
23
- const listItemClass = `${listClass}--item`;
24
- const iconClass = `${listItemClass}--icon`;
25
-
26
- return (
27
- <div className={classes}>
28
- {headline && <h5 className={headlineClass}>{headline}</h5>}
29
- <ul className={listClass}>
30
- {icons.map((item) => (
31
- <li className={listItemClass}>
32
- <a
33
- title={item.label}
34
- className={classnames(iconClass, `${iconClass}__${item.icon}`)}
35
- href={item.url}
36
- >
37
- {item.label}
38
- </a>
39
- </li>
40
- ))}
41
- </ul>
42
- </div>
43
- );
44
- };
45
-
46
- export default SocialMedia;
@@ -1,3 +0,0 @@
1
- export { default as SocialMedia } from "./SocialMedia";
2
- export type { SocialMediaProps } from "./SocialMedia.props";
3
- export { defaultArgs } from "./SocialMedia.args";
@@ -1,35 +0,0 @@
1
- import { TableOfContentsProps } from "./TableOfContents.props";
2
-
3
- const toc: TableOfContentsProps = {
4
- items: [
5
- {
6
- href: "#example",
7
- label: "Item One",
8
- },
9
- {
10
- href: "#example",
11
- label: "Item Two",
12
- },
13
- {
14
- href: "#example",
15
- label: "Item Three",
16
- },
17
- {
18
- href: "#example",
19
- label: "Item Four",
20
- },
21
- {
22
- href: "#example",
23
- label: "Item Five",
24
- },
25
- ],
26
- };
27
-
28
- /**
29
- * Sample prop definitions for Lists's enumerable properties (imported in stories and test)
30
- */
31
- const TableOfContentsArgs = {
32
- toc,
33
- };
34
-
35
- export default TableOfContentsArgs;
@@ -1,23 +0,0 @@
1
- export interface AnchorLink {
2
- /**
3
- * Specify the label for the anchor link
4
- */
5
- label?: Required<string>;
6
-
7
- /**
8
- * Specify the href for the anchor link
9
- */
10
- href?: Required<string>;
11
- }
12
-
13
- export interface TableOfContentsProps {
14
- /**
15
- * Specify an optional className to be added to your accordion.
16
- */
17
- className?: string;
18
-
19
- /**
20
- * Specify the items in the table of contents
21
- */
22
- items?: Required<Array<AnchorLink>>;
23
- }
@@ -1,32 +0,0 @@
1
- import { FC } from "react";
2
- import classNames from "classnames";
3
- import useGlobalSettings from "../../hooks/useGlobalSettings";
4
- import { TableOfContentsProps } from "./TableOfContents.props";
5
-
6
- const TableOfContents: FC<TableOfContentsProps> = ({ className, items }) => {
7
- const { prefix } = useGlobalSettings();
8
- const baseClass = `${prefix}--table-of-contents`;
9
-
10
- const TableOfContentsClasses = classNames(className, {
11
- [baseClass]: true,
12
- });
13
-
14
- return (
15
- <nav className={TableOfContentsClasses}>
16
- <ul className={`${baseClass}--list`}>
17
- {items &&
18
- items.map((item: any, index: any) => {
19
- return (
20
- <li className={`${baseClass}--list--item`} key={index}>
21
- <a className={`${baseClass}--link`} href={item.href}>
22
- {item.label}
23
- </a>
24
- </li>
25
- );
26
- })}
27
- </ul>
28
- </nav>
29
- );
30
- };
31
-
32
- export default TableOfContents;
@@ -1 +0,0 @@
1
- export { default as TableOfContents } from "./TableOfContents";