@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,246 +0,0 @@
1
- import { FC, useState } from "react";
2
- import useGlobalSettings from "../../hooks/useGlobalSettings";
3
- import { ContextMenu } from "../ContextMenu";
4
- import { SearchField } from "../SearchField";
5
- import { NavigationProps } from "./Navigation.props";
6
- import classnames from "classnames";
7
-
8
- const Navigation: FC<NavigationProps> = ({
9
- logo,
10
- mobilelogo,
11
- siteurl,
12
- tagline,
13
- primarynav,
14
- subnav,
15
- menulabel,
16
- menucloselabel,
17
- searchlabel,
18
- searchfield,
19
- languagelabel,
20
- languagecontextmenu,
21
- }) => {
22
- const { prefix } = useGlobalSettings();
23
-
24
- const [toggleMenuOpen, setMenuToggleOpen] = useState(false);
25
- const [toggleSearchOpen, setSearchToggleOpen] = useState(false);
26
- const [toggleSubnavOpen, setSubnavToggleOpen] = useState(false);
27
- const [toggleLanguageOpen, setLanguageToggleOpen] = useState(false);
28
-
29
- const baseClass = `${prefix}--header`;
30
- const NavigationClasses = classnames(baseClass, {
31
- [`${prefix}--mobile--open`]: toggleMenuOpen,
32
- [`${prefix}--select--open`]: toggleLanguageOpen,
33
- [`${prefix}--search--open`]: toggleSearchOpen,
34
- [`${prefix}--subnav--open`]: toggleSubnavOpen,
35
- });
36
-
37
- const handleMenuToggle = () => {
38
- setMenuToggleOpen(!toggleMenuOpen);
39
- };
40
-
41
- const handleLanguageToggle = () => {
42
- setLanguageToggleOpen(!toggleLanguageOpen);
43
- };
44
-
45
- const handleSearchToggle = () => {
46
- setSearchToggleOpen(!toggleSearchOpen);
47
- };
48
-
49
- const handleSubnavToggle = () => {
50
- setSubnavToggleOpen(!toggleSubnavOpen);
51
- };
52
-
53
- return (
54
- <header className={NavigationClasses}>
55
- <div className={`${baseClass}--utility-bar`}>
56
- <div className={`${prefix}--language-switcher`}>
57
- <div className={`${prefix}--language-switcher--wrap`}>
58
- <button
59
- className={`${prefix}--language-switcher--button`}
60
- type="button"
61
- >
62
- {languagelabel}
63
- </button>
64
- <ContextMenu links={languagecontextmenu?.links}></ContextMenu>
65
- </div>
66
- </div>
67
- </div>
68
- <div className={`${baseClass}--logo-bar`}>
69
- <div className={`${baseClass}--inner ${prefix}--container`}>
70
- <a href={siteurl} className={`${baseClass}--logo-link`}>
71
- <img className={`${baseClass}--logo`} src={logo} alt="ILO Logo" />
72
- </a>
73
- <p className={`${baseClass}--logo-tagline`}>
74
- {tagline?.tag}
75
- <span className={`${baseClass}--logo-tagline--small`}>
76
- {tagline?.small}
77
- </span>
78
- </p>
79
- <button className={`${baseClass}--menu`} onClick={handleMenuToggle}>
80
- {menulabel}
81
- </button>
82
- </div>
83
- </div>
84
- <div className={`${baseClass}--navigation`}>
85
- <div className={`${baseClass}--inner ${prefix}--container`}>
86
- <div className={`${prefix}--mobile--nav`}>
87
- <div className={`${prefix}--mobile--nav--logo`}>
88
- <a href={siteurl} className={`${baseClass}--logo-link`}>
89
- <img
90
- className={`${baseClass}--logo`}
91
- src={mobilelogo}
92
- alt="ILO Logo"
93
- />
94
- </a>
95
- <button
96
- className={`${baseClass}--menu--close`}
97
- onClick={handleMenuToggle}
98
- >
99
- {menucloselabel}
100
- </button>
101
- </div>
102
- <div className={`${prefix}--mobile--nav--search`}>
103
- <SearchField
104
- input={searchfield?.input}
105
- action={searchfield?.action}
106
- ></SearchField>
107
- </div>
108
- <div className={`${prefix}--mobile--nav--language--switcher`}>
109
- <button
110
- className={`${prefix}--mobile--nav--language--switcher--button`}
111
- onClick={handleLanguageToggle}
112
- type="button"
113
- >
114
- {languagelabel}
115
- </button>
116
- </div>
117
- <div className={`${prefix}--mobile--nav--language--select`}>
118
- <div className={`${baseClass}--inner ${prefix}--container`}>
119
- <div className={`${prefix}--mobile--subnav--menu`}>
120
- <button
121
- className={`${prefix}--mobile--subnav--back`}
122
- onClick={handleLanguageToggle}
123
- type="button"
124
- >
125
- {subnav?.mobilebacklabel}
126
- </button>
127
- <button
128
- className={`${baseClass}--menu--close`}
129
- onClick={handleMenuToggle}
130
- >
131
- {subnav?.mobilecloselabel}
132
- </button>
133
- <h6 className={`${prefix}--mobile--subnav--label`}>
134
- {languagelabel}
135
- </h6>
136
- </div>
137
- <ul className={`${prefix}--nav--set`}>
138
- {languagecontextmenu?.links &&
139
- languagecontextmenu.links.map((item, index) => (
140
- <li className={`${prefix}--nav--items`} key={index}>
141
- <a
142
- href={item.url}
143
- className={`${prefix}--nav--link ${prefix}--nav--language`}
144
- >
145
- {item.label}
146
- </a>
147
- </li>
148
- ))}
149
- </ul>
150
- </div>
151
- </div>
152
- </div>
153
- <nav
154
- className={`${prefix}--nav`}
155
- aria-labelledby="primary-navigation"
156
- >
157
- <h2 className={`${prefix}--nav--label`} id="primary-navigation">
158
- {primarynav?.navlabel}
159
- </h2>
160
- <ul className={`${prefix}--nav--set`}>
161
- {primarynav?.items &&
162
- primarynav.items.map((item, index) => (
163
- <li className={`${prefix}--nav--items`} key={index}>
164
- <a href={item.url} className={`${prefix}--nav--link`}>
165
- {item.label}
166
- </a>
167
- </li>
168
- ))}
169
- {subnav && (
170
- <li className={`${prefix}--nav--items`}>
171
- <button
172
- className={`${prefix}--nav--trigger`}
173
- onClick={handleSubnavToggle}
174
- >
175
- {subnav.buttonlabel}
176
- </button>
177
- </li>
178
- )}
179
- </ul>
180
- </nav>
181
- <div className={`${prefix}--search`}>
182
- <button
183
- className={`${prefix}--search--button`}
184
- type="button"
185
- onClick={handleSearchToggle}
186
- >
187
- {searchlabel}
188
- </button>
189
- </div>
190
- </div>
191
- {subnav && (
192
- <nav
193
- className={`${prefix}--subnav`}
194
- aria-labelledby="secondary-navigation"
195
- >
196
- <div className={`${prefix}--subnav--inner ${prefix}--container`}>
197
- <div className={`${prefix}--mobile--subnav`}>
198
- <div className={`${prefix}--mobile--subnav--menu`}>
199
- <button
200
- className={`${prefix}--mobile--subnav--back`}
201
- onClick={handleSubnavToggle}
202
- type="button"
203
- >
204
- {subnav.mobilebacklabel}
205
- </button>
206
- <button
207
- className={`${prefix}--header--menu--close`}
208
- onClick={handleMenuToggle}
209
- >
210
- {subnav.mobilecloselabel}
211
- </button>
212
- <h6 className={`${prefix}--mobile--subnav--label`}>
213
- {subnav.buttonlabel}
214
- </h6>
215
- </div>
216
- </div>
217
- <h2 className={`${prefix}--nav--label`} id="secondary-navigation">
218
- {subnav.navlabel}
219
- </h2>
220
- <ul className={`${prefix}--subnav--set`}>
221
- {subnav?.items &&
222
- subnav.items.map((item, index) => (
223
- <li className={`${prefix}--subnav--items`} key={index}>
224
- <a href={item.url} className={`${prefix}--subnav--link`}>
225
- {item.label}
226
- </a>
227
- </li>
228
- ))}
229
- </ul>
230
- </div>
231
- </nav>
232
- )}
233
- <div className={`${prefix}--search-box`}>
234
- <div className={`${prefix}--header--inner ${prefix}--container`}>
235
- <SearchField
236
- input={searchfield?.input}
237
- action={searchfield?.action}
238
- ></SearchField>
239
- </div>
240
- </div>
241
- </div>
242
- </header>
243
- );
244
- };
245
-
246
- export default Navigation;
@@ -1 +0,0 @@
1
- export { default as Navigation } from "./Navigation";
@@ -1,157 +0,0 @@
1
- import { NotificationProps } from "./Notification.props";
2
-
3
- const hascta: NotificationProps = {
4
- className: "storybook",
5
- closelabel: "Close",
6
- copy: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
7
- cta: {
8
- label: "Optional CTA",
9
- url: "http://www.google.com",
10
- },
11
- headline: "With CTA",
12
- placement: "inline",
13
- type: "info",
14
- timestamp: {
15
- human: "Dec 7, 2022",
16
- unix: "1670389200",
17
- },
18
- };
19
-
20
- const nocta: NotificationProps = {
21
- className: "storybook",
22
- closelabel: "Close",
23
- copy: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
24
- headline: "Notification Info",
25
- placement: "inline",
26
- type: "info",
27
- timestamp: {
28
- human: "Dec 7, 2022",
29
- unix: "1670389200",
30
- },
31
- };
32
-
33
- const error: NotificationProps = {
34
- className: "storybook",
35
- closelabel: "Close",
36
- copy: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
37
- headline: "Notification Error",
38
- placement: "inline",
39
- type: "error",
40
- timestamp: {
41
- human: "Dec 7, 2022",
42
- unix: "1670389200",
43
- },
44
- };
45
-
46
- const success: NotificationProps = {
47
- className: "storybook",
48
- closelabel: "Close",
49
- copy: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
50
- headline: "Notification Success",
51
- placement: "inline",
52
- type: "success",
53
- timestamp: {
54
- human: "Dec 7, 2022",
55
- unix: "1670389200",
56
- },
57
- };
58
-
59
- const warning: NotificationProps = {
60
- className: "storybook",
61
- closelabel: "Close",
62
- copy: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
63
- headline: "Notification Warning",
64
- placement: "inline",
65
- type: "warning",
66
- timestamp: {
67
- human: "Dec 7, 2022",
68
- unix: "1670389200",
69
- },
70
- };
71
-
72
- const hasctadialog: NotificationProps = {
73
- className: "storybook",
74
- closelabel: "Close",
75
- copy: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
76
- cta: {
77
- label: "Optional CTA",
78
- url: "http://www.google.com",
79
- },
80
- headline: "Notification With CTA",
81
- placement: "dialog",
82
- type: "info",
83
- timestamp: {
84
- human: "Dec 7, 2022",
85
- unix: "1670389200",
86
- },
87
- };
88
-
89
- const infodialog: NotificationProps = {
90
- className: "storybook",
91
- closelabel: "Close",
92
- copy: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
93
- headline: "Notification Info",
94
- placement: "dialog",
95
- type: "info",
96
- timestamp: {
97
- human: "Dec 7, 2022",
98
- unix: "1670389200",
99
- },
100
- };
101
-
102
- const errordialog: NotificationProps = {
103
- className: "storybook",
104
- closelabel: "Close",
105
- copy: "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.",
106
- headline: "Notification Error",
107
- placement: "dialog",
108
- type: "error",
109
- timestamp: {
110
- human: "Dec 7, 2022",
111
- unix: "1670389200",
112
- },
113
- };
114
-
115
- const successdialog: NotificationProps = {
116
- className: "storybook",
117
- closelabel: "Close",
118
- copy: "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.",
119
- headline: "Notification Success",
120
- placement: "dialog",
121
- type: "success",
122
- timestamp: {
123
- human: "Dec 7, 2022",
124
- unix: "1670389200",
125
- },
126
- };
127
-
128
- const warningdialog: NotificationProps = {
129
- className: "storybook",
130
- closelabel: "Close",
131
- copy: "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.",
132
- headline: "Notification Warning",
133
- placement: "dialog",
134
- type: "warning",
135
- timestamp: {
136
- human: "Dec 7, 2022",
137
- unix: "1670389200",
138
- },
139
- };
140
-
141
- /**
142
- * Sample prop definitions for Notification's enumerable properties (imported in stories and test)
143
- */
144
- const NotificationArgs = {
145
- error,
146
- errordialog,
147
- hascta,
148
- hasctadialog,
149
- infodialog,
150
- nocta,
151
- success,
152
- successdialog,
153
- warning,
154
- warningdialog,
155
- };
156
-
157
- export default NotificationArgs;
@@ -1,67 +0,0 @@
1
- import { NotificationPlacement, NotificationTypes } from "../../types";
2
-
3
- interface CTAProps {
4
- /**
5
- * Specify the label of the CTA
6
- */
7
- label?: string;
8
-
9
- /**
10
- * Specify the url of the CTA
11
- */
12
- url?: string;
13
- }
14
-
15
- interface TimeStampProps {
16
- /**
17
- * Specify the human-readable time
18
- */
19
- human?: string;
20
-
21
- /**
22
- * Specify the UNIX timestamp
23
- */
24
- unix?: string;
25
- }
26
-
27
- export interface NotificationProps {
28
- /**
29
- * Specify an optional className to be added to your Notification component.
30
- */
31
- className?: string;
32
-
33
- /**
34
- * Specify the label for the close button
35
- */
36
- closelabel?: Required<string>;
37
-
38
- /**
39
- * Specify the copy
40
- */
41
- copy?: Required<string>;
42
-
43
- /**
44
- * Specify the settings for an option CTA
45
- */
46
- cta?: CTAProps;
47
-
48
- /**
49
- * Specify the headline
50
- */
51
- headline?: Required<string>;
52
-
53
- /**
54
- * Specify whether the notification is inline in the DOM or absolutely-positioned at a higher z-index
55
- */
56
- placement?: Required<NotificationPlacement>;
57
-
58
- /**
59
- * Specify an optional timestamp
60
- */
61
- timestamp?: TimeStampProps;
62
-
63
- /**
64
- * Specify the icon for the Notification
65
- */
66
- type?: NotificationTypes;
67
- }
@@ -1,78 +0,0 @@
1
- import { FC, useState } from "react";
2
- import classNames from "classnames";
3
- import useGlobalSettings from "../../hooks/useGlobalSettings";
4
- import { NotificationProps } from "./Notification.props";
5
- import { ButtonProps } from "../Button/Button.props";
6
- import { Button } from "../Button";
7
-
8
- const Notification: FC<NotificationProps> = ({
9
- className,
10
- closelabel,
11
- copy,
12
- cta,
13
- headline,
14
- placement,
15
- timestamp,
16
- type,
17
- }) => {
18
- const { prefix } = useGlobalSettings();
19
-
20
- const [display, setDisplay] = useState(true);
21
-
22
- const baseClass = `${prefix}--notification`;
23
- const notificationClasses = classNames(className, {
24
- [baseClass]: true,
25
- [`${baseClass}--${placement}`]: placement,
26
- [`icon icon--${type}`]: type,
27
- });
28
-
29
- const ctaprops: ButtonProps = {
30
- callback: () => {},
31
- className: `${baseClass}--cta`,
32
- children: false,
33
- label: cta?.label,
34
- size: "small",
35
- type: "secondary",
36
- url: cta?.url,
37
- };
38
-
39
- /**
40
- * On click, close
41
- */
42
- const handleClick = () => {
43
- setDisplay(false);
44
- };
45
-
46
- return (
47
- <>
48
- {display && (
49
- <div
50
- className={notificationClasses}
51
- role="status"
52
- aria-live="polite"
53
- aria-relevant="additions"
54
- >
55
- <div className={`${baseClass}--content`}>
56
- <h2 className={`${baseClass}--headline`}>{headline}</h2>
57
- <p className={`${baseClass}--copy`}>{copy}</p>
58
- {timestamp && (
59
- <time className={`${baseClass}--date`} dateTime={timestamp.unix}>
60
- {timestamp.human}
61
- </time>
62
- )}
63
- {cta && <Button {...ctaprops} />}
64
- </div>
65
- <button
66
- className={`${baseClass}--close`}
67
- type="button"
68
- onClick={() => handleClick()}
69
- >
70
- <span>{closelabel}</span>
71
- </button>
72
- </div>
73
- )}
74
- </>
75
- );
76
- };
77
-
78
- export default Notification;
@@ -1 +0,0 @@
1
- export { default as Notification } from "./Notification";
@@ -1,50 +0,0 @@
1
- import { LabelledNumberPickerProps } from "./NumberPicker.props";
2
-
3
- const basic: LabelledNumberPickerProps = {
4
- label: "How many items would you like?",
5
- id: "numberpicker",
6
- disabled: false,
7
- error: false,
8
- name: "text",
9
- placeholder: "Select a number",
10
- required: false,
11
- };
12
-
13
- const hashelper: LabelledNumberPickerProps = {
14
- label: "How many items would you like?",
15
- id: "numberpicker",
16
- disabled: false,
17
- error: false,
18
- name: "text",
19
- placeholder: "Select a number",
20
- required: false,
21
- };
22
-
23
- const haserror: LabelledNumberPickerProps = {
24
- label: "How many items would you like?",
25
- id: "numberpicker",
26
- disabled: false,
27
- error: true,
28
- name: "text",
29
- placeholder: "Select a number",
30
- required: false,
31
- };
32
-
33
- const hastooltip: LabelledNumberPickerProps = {
34
- label: "How many items would you like?",
35
- id: "numberpicker",
36
- disabled: false,
37
- error: false,
38
- name: "text",
39
- placeholder: "Select a number",
40
- required: false,
41
- };
42
-
43
- const NumberPickerArgs = {
44
- basic,
45
- hashelper,
46
- haserror,
47
- hastooltip,
48
- };
49
-
50
- export default NumberPickerArgs;
@@ -1,26 +0,0 @@
1
- import { FormFieldProps } from "../../types";
2
- import { LabelledFormFieldProps } from "../../types";
3
- export interface NumberPickerProps extends FormFieldProps<HTMLInputElement> {
4
- /**
5
- * The placeholder text when the input is empty.
6
- */
7
- placeholder?: string;
8
-
9
- /**
10
- * The minimum value of the input.
11
- */
12
- min?: number;
13
-
14
- /**
15
- * The maximum value of the input.
16
- * */
17
- max?: number;
18
-
19
- /**
20
- * The step value of the input.
21
- * */
22
- step?: number;
23
- }
24
-
25
- export type LabelledNumberPickerProps =
26
- LabelledFormFieldProps<NumberPickerProps>;