@ilo-org/react 0.14.0 → 0.15.0

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 (416) hide show
  1. package/lib/cjs/components/Cards/CardGroup/CardGroup.js +7 -4
  2. package/lib/cjs/components/Cards/CardGroup/index.js +9 -8
  3. package/lib/cjs/components/Cards/DetailCard/DetailCard.js +2 -2
  4. package/lib/cjs/components/Cards/FactlistCard/FactListCard.js +2 -2
  5. package/lib/cjs/components/Cards/FeatureCard/FeatureCard.js +2 -2
  6. package/lib/cjs/components/Cards/MultilinkCard/MultiLinkCard.js +2 -2
  7. package/lib/cjs/components/Cards/PromoCard/PromoCard.js +2 -2
  8. package/lib/cjs/components/Cards/StatCard/StatCard.js +2 -2
  9. package/lib/cjs/components/Cards/TextCard/TextCard.js +2 -2
  10. package/lib/cjs/components/LogoGrid/LogoGrid.js +1 -1
  11. package/lib/cjs/components/Navigation/Navigation.js +34 -8
  12. package/lib/cjs/components/SocialMedia/SocialMedia.js +1 -1
  13. package/lib/cjs/hooks/index.js +0 -2
  14. package/lib/esm/components/Cards/CardGroup/CardGroup.js +7 -4
  15. package/lib/esm/components/Cards/CardGroup/index.js +9 -8
  16. package/lib/esm/components/Cards/DetailCard/DetailCard.js +2 -2
  17. package/lib/esm/components/Cards/FactlistCard/FactListCard.js +2 -2
  18. package/lib/esm/components/Cards/FeatureCard/FeatureCard.js +2 -2
  19. package/lib/esm/components/Cards/MultilinkCard/MultiLinkCard.js +2 -2
  20. package/lib/esm/components/Cards/PromoCard/PromoCard.js +2 -2
  21. package/lib/esm/components/Cards/StatCard/StatCard.js +2 -2
  22. package/lib/esm/components/Cards/TextCard/TextCard.js +2 -2
  23. package/lib/esm/components/LogoGrid/LogoGrid.js +1 -1
  24. package/lib/esm/components/Navigation/Navigation.js +35 -9
  25. package/lib/esm/components/SocialMedia/SocialMedia.js +1 -1
  26. package/lib/esm/hooks/index.js +0 -1
  27. package/lib/types/react/src/components/Cards/CardGroup/CardGroup.props.d.ts +28 -2
  28. package/lib/types/react/src/components/Cards/DetailCard/DetailCard.props.d.ts +5 -1
  29. package/lib/types/react/src/components/Cards/FactlistCard/FactListCard.props.d.ts +5 -1
  30. package/lib/types/react/src/components/Cards/FeatureCard/FeatureCard.props.d.ts +5 -1
  31. package/lib/types/react/src/components/Cards/MultilinkCard/MultilinkCard.props.d.ts +5 -1
  32. package/lib/types/react/src/components/Cards/PromoCard/PromoCard.props.d.ts +5 -1
  33. package/lib/types/react/src/components/Cards/StatCard/StatCard.props.d.ts +8 -1
  34. package/lib/types/react/src/components/Cards/TextCard/TextCard.props.d.ts +5 -1
  35. package/lib/types/react/src/hooks/index.d.ts +0 -1
  36. package/lib/types/react/src/types/index.d.ts +1 -0
  37. package/package.json +14 -11
  38. package/.eslintrc.cjs +0 -39
  39. package/.storybook/main.ts +0 -41
  40. package/.storybook/manager-head.html +0 -92
  41. package/.storybook/manager.ts +0 -6
  42. package/.storybook/preview-head.html +0 -5
  43. package/.storybook/preview.tsx +0 -81
  44. package/.storybook/styles.scss +0 -25
  45. package/.storybook/theme.ts +0 -46
  46. package/.turbo/turbo-build:lib.log +0 -15
  47. package/CHANGELOG.md +0 -884
  48. package/lib/cjs/hooks/useVideoPlayer.js +0 -75
  49. package/lib/esm/hooks/useVideoPlayer.js +0 -73
  50. package/lib/types/react/src/hooks/useVideoPlayer.d.ts +0 -12
  51. package/public/fao-logo.svg +0 -195
  52. package/public/favicon.ico +0 -0
  53. package/public/hero.jpg +0 -0
  54. package/public/ilo-dg.jpg +0 -0
  55. package/public/ilo-headquarters.jpg +0 -0
  56. package/public/large.jpg +0 -0
  57. package/public/media-file-poster.jpg +0 -0
  58. package/public/medium.jpg +0 -0
  59. package/public/react.svg +0 -8
  60. package/public/small.jpg +0 -0
  61. package/public/unhcr-logo.svg +0 -1
  62. package/public/unicef-logo.png +0 -0
  63. package/public/video-example.mp4 +0 -0
  64. package/public/wfp-logo.svg +0 -1
  65. package/public/who-logo.svg +0 -1
  66. package/public/youtube-video-poster.avif +0 -0
  67. package/rollup.config.mjs +0 -72
  68. package/src/__tests__/Accordion.test.tsx +0 -16
  69. package/src/__tests__/Button.test.tsx +0 -60
  70. package/src/__tests__/Callout.test.tsx +0 -43
  71. package/src/__tests__/ContextMenu.test.tsx +0 -19
  72. package/src/__tests__/Dropdown.test.tsx +0 -38
  73. package/src/__tests__/Heading.test.tsx +0 -51
  74. package/src/__tests__/Image.test.tsx +0 -21
  75. package/src/__tests__/LinkList.test.tsx +0 -17
  76. package/src/__tests__/List.test.tsx +0 -25
  77. package/src/__tests__/Loading.test.tsx +0 -33
  78. package/src/__tests__/Notification.test.tsx +0 -39
  79. package/src/__tests__/Pagination.test.tsx +0 -58
  80. package/src/__tests__/Profile.test.tsx +0 -48
  81. package/src/__tests__/ReadMore.test.tsx +0 -43
  82. package/src/__tests__/RichText.test.tsx +0 -16
  83. package/src/__tests__/SearchField.test.tsx +0 -35
  84. package/src/__tests__/TableOfContents.test.tsx +0 -12
  85. package/src/__tests__/Tag.test.tsx +0 -10
  86. package/src/components/Accordion/Accordion.args.ts +0 -16
  87. package/src/components/Accordion/Accordion.props.ts +0 -41
  88. package/src/components/Accordion/Accordion.tsx +0 -62
  89. package/src/components/Accordion/AccordionButton.props.ts +0 -13
  90. package/src/components/Accordion/AccordionButton.tsx +0 -58
  91. package/src/components/Accordion/AccordionCtx.ts +0 -9
  92. package/src/components/Accordion/AccordionItem.props.ts +0 -25
  93. package/src/components/Accordion/AccordionItem.tsx +0 -27
  94. package/src/components/Accordion/AccordionPanel.props.ts +0 -25
  95. package/src/components/Accordion/AccordionPanel.tsx +0 -46
  96. package/src/components/Accordion/index.ts +0 -4
  97. package/src/components/Breadcrumb/Breadcrumb.args.ts +0 -61
  98. package/src/components/Breadcrumb/Breadcrumb.props.ts +0 -13
  99. package/src/components/Breadcrumb/Breadcrumb.tsx +0 -82
  100. package/src/components/Breadcrumb/index.ts +0 -1
  101. package/src/components/Button/Button.args.ts +0 -35
  102. package/src/components/Button/Button.props.ts +0 -89
  103. package/src/components/Button/Button.tsx +0 -77
  104. package/src/components/Button/index.ts +0 -2
  105. package/src/components/Callout/Callout.args.ts +0 -38
  106. package/src/components/Callout/Callout.props.ts +0 -60
  107. package/src/components/Callout/Callout.tsx +0 -80
  108. package/src/components/Callout/index.ts +0 -2
  109. package/src/components/Cards/CardGroup/CardGroup.args.ts +0 -807
  110. package/src/components/Cards/CardGroup/CardGroup.props.ts +0 -78
  111. package/src/components/Cards/CardGroup/CardGroup.tsx +0 -54
  112. package/src/components/Cards/CardGroup/index.tsx +0 -3
  113. package/src/components/Cards/DataCard/DataCard.args.ts +0 -69
  114. package/src/components/Cards/DataCard/DataCard.props.ts +0 -60
  115. package/src/components/Cards/DataCard/DataCard.tsx +0 -107
  116. package/src/components/Cards/DataCard/index.tsx +0 -3
  117. package/src/components/Cards/DetailCard/DetailCard.args.ts +0 -17
  118. package/src/components/Cards/DetailCard/DetailCard.props.ts +0 -43
  119. package/src/components/Cards/DetailCard/DetailCard.tsx +0 -62
  120. package/src/components/Cards/DetailCard/index.tsx +0 -3
  121. package/src/components/Cards/FactlistCard/FactListCard.args.ts +0 -14
  122. package/src/components/Cards/FactlistCard/FactListCard.props.ts +0 -19
  123. package/src/components/Cards/FactlistCard/FactListCard.tsx +0 -42
  124. package/src/components/Cards/FactlistCard/index.tsx +0 -3
  125. package/src/components/Cards/FeatureCard/FeatureCard.args.ts +0 -30
  126. package/src/components/Cards/FeatureCard/FeatureCard.props.ts +0 -38
  127. package/src/components/Cards/FeatureCard/FeatureCard.tsx +0 -69
  128. package/src/components/Cards/FeatureCard/index.tsx +0 -3
  129. package/src/components/Cards/MultilinkCard/MultiLinkCard.tsx +0 -76
  130. package/src/components/Cards/MultilinkCard/MultilinkCard.args.ts +0 -33
  131. package/src/components/Cards/MultilinkCard/MultilinkCard.props.ts +0 -30
  132. package/src/components/Cards/MultilinkCard/index.tsx +0 -3
  133. package/src/components/Cards/PromoCard/PromoCard.args.ts +0 -19
  134. package/src/components/Cards/PromoCard/PromoCard.props.ts +0 -36
  135. package/src/components/Cards/PromoCard/PromoCard.tsx +0 -60
  136. package/src/components/Cards/PromoCard/index.tsx +0 -3
  137. package/src/components/Cards/StatCard/StatCard.args.ts +0 -14
  138. package/src/components/Cards/StatCard/StatCard.props.ts +0 -21
  139. package/src/components/Cards/StatCard/StatCard.tsx +0 -36
  140. package/src/components/Cards/StatCard/index.tsx +0 -3
  141. package/src/components/Cards/TextCard/TextCard.args.ts +0 -21
  142. package/src/components/Cards/TextCard/TextCard.props.ts +0 -32
  143. package/src/components/Cards/TextCard/TextCard.tsx +0 -62
  144. package/src/components/Cards/TextCard/index.tsx +0 -3
  145. package/src/components/Checkbox/Checkbox.args.ts +0 -42
  146. package/src/components/Checkbox/Checkbox.props.ts +0 -5
  147. package/src/components/Checkbox/Checkbox.tsx +0 -94
  148. package/src/components/Checkbox/index.ts +0 -2
  149. package/src/components/Collapse/Collapse.props.ts +0 -92
  150. package/src/components/Collapse/Collapse.tsx +0 -130
  151. package/src/components/Collapse/index.ts +0 -1
  152. package/src/components/ContextMenu/ContextMenu.args.ts +0 -62
  153. package/src/components/ContextMenu/ContextMenu.props.ts +0 -28
  154. package/src/components/ContextMenu/ContextMenu.tsx +0 -32
  155. package/src/components/ContextMenu/index.ts +0 -1
  156. package/src/components/Credit/Credit.args.ts +0 -14
  157. package/src/components/Credit/Credit.props.ts +0 -11
  158. package/src/components/Credit/Credit.tsx +0 -41
  159. package/src/components/Credit/index.ts +0 -1
  160. package/src/components/DatePicker/DatePicker.args.ts +0 -56
  161. package/src/components/DatePicker/DatePicker.props.ts +0 -26
  162. package/src/components/DatePicker/DatePicker.tsx +0 -80
  163. package/src/components/DatePicker/index.ts +0 -1
  164. package/src/components/Dropdown/Dropdown.args.ts +0 -70
  165. package/src/components/Dropdown/Dropdown.props.ts +0 -53
  166. package/src/components/Dropdown/Dropdown.tsx +0 -95
  167. package/src/components/Dropdown/index.ts +0 -1
  168. package/src/components/Empty/Empty.props.ts +0 -13
  169. package/src/components/Empty/Empty.tsx +0 -16
  170. package/src/components/Empty/index.ts +0 -1
  171. package/src/components/Fieldset/Fieldset.props.ts +0 -33
  172. package/src/components/Fieldset/Fieldset.tsx +0 -96
  173. package/src/components/Fieldset/index.ts +0 -1
  174. package/src/components/FileUpload/FileUpload.args.ts +0 -60
  175. package/src/components/FileUpload/FileUpload.props.ts +0 -21
  176. package/src/components/FileUpload/FileUpload.tsx +0 -116
  177. package/src/components/FileUpload/index.ts +0 -1
  178. package/src/components/Footer/Footer.args.ts +0 -74
  179. package/src/components/Footer/Footer.props.ts +0 -60
  180. package/src/components/Footer/Footer.tsx +0 -99
  181. package/src/components/Footer/index.ts +0 -1
  182. package/src/components/Form/Form.args.ts +0 -5
  183. package/src/components/Form/Form.props.ts +0 -8
  184. package/src/components/Form/Form.tsx +0 -23
  185. package/src/components/Form/index.ts +0 -2
  186. package/src/components/FormControl/FormControl.props.ts +0 -72
  187. package/src/components/FormControl/FormControl.tsx +0 -169
  188. package/src/components/FormControl/index.ts +0 -2
  189. package/src/components/FormElement/FormElement.props.ts +0 -60
  190. package/src/components/FormElement/FormElement.tsx +0 -19
  191. package/src/components/FormElement/index.ts +0 -1
  192. package/src/components/GlobalProvider/GlobalCtx.ts +0 -6
  193. package/src/components/GlobalProvider/GlobalProvider.props.ts +0 -15
  194. package/src/components/GlobalProvider/GlobalProvider.tsx +0 -21
  195. package/src/components/GlobalProvider/index.ts +0 -2
  196. package/src/components/Heading/Heading.args.ts +0 -49
  197. package/src/components/Heading/Heading.props.ts +0 -24
  198. package/src/components/Heading/Heading.tsx +0 -28
  199. package/src/components/Heading/index.ts +0 -1
  200. package/src/components/Hero/Hero.args.ts +0 -136
  201. package/src/components/Hero/Hero.props.ts +0 -62
  202. package/src/components/Hero/Hero.tsx +0 -94
  203. package/src/components/Hero/HeroCard.props.ts +0 -54
  204. package/src/components/Hero/HeroCard.tsx +0 -65
  205. package/src/components/Hero/index.ts +0 -2
  206. package/src/components/Icon/Icon.args.ts +0 -15
  207. package/src/components/Icon/Icon.props.ts +0 -16
  208. package/src/components/Icon/Icon.tsx +0 -25
  209. package/src/components/Icon/index.ts +0 -1
  210. package/src/components/Image/Image.args.ts +0 -29
  211. package/src/components/Image/Image.props.ts +0 -43
  212. package/src/components/Image/Image.tsx +0 -51
  213. package/src/components/Image/index.ts +0 -1
  214. package/src/components/Input/Input.args.ts +0 -139
  215. package/src/components/Input/Input.props.ts +0 -65
  216. package/src/components/Input/Input.tsx +0 -65
  217. package/src/components/Input/index.ts +0 -1
  218. package/src/components/Link/Link.props.ts +0 -39
  219. package/src/components/Link/Link.tsx +0 -42
  220. package/src/components/Link/index.ts +0 -1
  221. package/src/components/LinkList/LinkList.args.ts +0 -193
  222. package/src/components/LinkList/LinkList.props.ts +0 -52
  223. package/src/components/LinkList/LinkList.tsx +0 -59
  224. package/src/components/LinkList/index.ts +0 -1
  225. package/src/components/List/List.args.ts +0 -34
  226. package/src/components/List/List.props.ts +0 -29
  227. package/src/components/List/List.tsx +0 -36
  228. package/src/components/List/ListItem.props.ts +0 -18
  229. package/src/components/List/ListItem.tsx +0 -17
  230. package/src/components/List/index.ts +0 -2
  231. package/src/components/Loading/Loading.args.ts +0 -55
  232. package/src/components/Loading/Loading.props.ts +0 -23
  233. package/src/components/Loading/Loading.tsx +0 -24
  234. package/src/components/Loading/index.ts +0 -1
  235. package/src/components/LocalNav/LocalNav.args.ts +0 -64
  236. package/src/components/LocalNav/LocalNav.props.ts +0 -56
  237. package/src/components/LocalNav/LocalNav.tsx +0 -181
  238. package/src/components/LocalNav/index.ts +0 -1
  239. package/src/components/Logo/Logo.args.ts +0 -45
  240. package/src/components/Logo/Logo.props.ts +0 -67
  241. package/src/components/Logo/Logo.tsx +0 -247
  242. package/src/components/Logo/index.ts +0 -1
  243. package/src/components/LogoGrid/LogoGrid.args.ts +0 -50
  244. package/src/components/LogoGrid/LogoGrid.props.ts +0 -28
  245. package/src/components/LogoGrid/LogoGrid.tsx +0 -53
  246. package/src/components/LogoGrid/index.ts +0 -1
  247. package/src/components/Navigation/Navigation.args.ts +0 -113
  248. package/src/components/Navigation/Navigation.props.ts +0 -120
  249. package/src/components/Navigation/Navigation.tsx +0 -246
  250. package/src/components/Navigation/index.ts +0 -1
  251. package/src/components/Notification/Notification.args.ts +0 -157
  252. package/src/components/Notification/Notification.props.ts +0 -67
  253. package/src/components/Notification/Notification.tsx +0 -78
  254. package/src/components/Notification/index.ts +0 -1
  255. package/src/components/NumberPicker/NumberPicker.args.ts +0 -50
  256. package/src/components/NumberPicker/NumberPicker.props.ts +0 -26
  257. package/src/components/NumberPicker/NumberPicker.tsx +0 -88
  258. package/src/components/NumberPicker/index.ts +0 -1
  259. package/src/components/Pagination/Pagination.args.ts +0 -43
  260. package/src/components/Pagination/Pagination.props.ts +0 -66
  261. package/src/components/Pagination/Pagination.tsx +0 -115
  262. package/src/components/Pagination/index.ts +0 -1
  263. package/src/components/Profile/Profile.args.ts +0 -58
  264. package/src/components/Profile/Profile.props.ts +0 -55
  265. package/src/components/Profile/Profile.tsx +0 -51
  266. package/src/components/Profile/index.ts +0 -1
  267. package/src/components/Radio/Radio.args.ts +0 -15
  268. package/src/components/Radio/Radio.props.ts +0 -6
  269. package/src/components/Radio/Radio.tsx +0 -102
  270. package/src/components/Radio/index.ts +0 -2
  271. package/src/components/ReadMore/ReadMore.args.ts +0 -23
  272. package/src/components/ReadMore/ReadMore.props.ts +0 -38
  273. package/src/components/ReadMore/ReadMore.tsx +0 -55
  274. package/src/components/ReadMore/index.ts +0 -1
  275. package/src/components/RichText/RichText.props.ts +0 -11
  276. package/src/components/RichText/RichText.tsx +0 -22
  277. package/src/components/RichText/index.ts +0 -1
  278. package/src/components/RichText/richText.args.ts +0 -38
  279. package/src/components/SearchField/SearchField.args.ts +0 -73
  280. package/src/components/SearchField/SearchField.props.ts +0 -35
  281. package/src/components/SearchField/SearchField.tsx +0 -83
  282. package/src/components/SearchField/index.ts +0 -1
  283. package/src/components/SocialMedia/SocialMedia.args.ts +0 -54
  284. package/src/components/SocialMedia/SocialMedia.props.ts +0 -45
  285. package/src/components/SocialMedia/SocialMedia.tsx +0 -46
  286. package/src/components/SocialMedia/index.ts +0 -3
  287. package/src/components/TableOfContents/TableOfContents.args.ts +0 -35
  288. package/src/components/TableOfContents/TableOfContents.props.ts +0 -23
  289. package/src/components/TableOfContents/TableOfContents.tsx +0 -32
  290. package/src/components/TableOfContents/index.ts +0 -1
  291. package/src/components/Tabs/Tabs.args.tsx +0 -201
  292. package/src/components/Tabs/Tabs.props.ts +0 -13
  293. package/src/components/Tabs/Tabs.tsx +0 -60
  294. package/src/components/Tabs/index.ts +0 -1
  295. package/src/components/Tag/Tag.args.ts +0 -15
  296. package/src/components/Tag/Tag.props.ts +0 -34
  297. package/src/components/Tag/Tag.tsx +0 -104
  298. package/src/components/Tag/TagCtx.ts +0 -4
  299. package/src/components/Tag/TagSet.args.ts +0 -37
  300. package/src/components/Tag/TagSet.props.ts +0 -37
  301. package/src/components/Tag/TagSet.tsx +0 -61
  302. package/src/components/Tag/index.ts +0 -2
  303. package/src/components/TextInput/TextInput.args.ts +0 -75
  304. package/src/components/TextInput/TextInput.props.ts +0 -20
  305. package/src/components/TextInput/TextInput.tsx +0 -71
  306. package/src/components/TextInput/index.ts +0 -2
  307. package/src/components/Textarea/Textarea.args.ts +0 -34
  308. package/src/components/Textarea/Textarea.props.ts +0 -45
  309. package/src/components/Textarea/Textarea.tsx +0 -52
  310. package/src/components/Textarea/index.ts +0 -3
  311. package/src/components/Toggle/Toggle.args.ts +0 -62
  312. package/src/components/Toggle/Toggle.props.ts +0 -27
  313. package/src/components/Toggle/Toggle.tsx +0 -85
  314. package/src/components/Toggle/index.ts +0 -3
  315. package/src/components/Tooltip/Tooltip.args.ts +0 -39
  316. package/src/components/Tooltip/Tooltip.props.ts +0 -38
  317. package/src/components/Tooltip/Tooltip.tsx +0 -119
  318. package/src/components/Tooltip/index.ts +0 -1
  319. package/src/components/Video/Video.args.ts +0 -47
  320. package/src/components/Video/Video.props.ts +0 -35
  321. package/src/components/Video/Video.tsx +0 -34
  322. package/src/components/Video/VideoPlayer.props.ts +0 -51
  323. package/src/components/Video/VideoPlayer.tsx +0 -71
  324. package/src/components/Video/index.ts +0 -1
  325. package/src/components/Video/media-file-poster.jpg +0 -0
  326. package/src/components/index.ts +0 -46
  327. package/src/declarations.d.ts +0 -36
  328. package/src/hooks/index.ts +0 -2
  329. package/src/hooks/useGlobalSettings.ts +0 -13
  330. package/src/hooks/usePrevious.ts +0 -15
  331. package/src/hooks/useVideoPlayer.ts +0 -85
  332. package/src/index.ts +0 -1
  333. package/src/setup.ts +0 -6
  334. package/src/stories/Accordion/Accordion.stories.tsx +0 -145
  335. package/src/stories/Breadcrumb/Breadcrumb.mdx +0 -17
  336. package/src/stories/Breadcrumb/Breadcrumb.stories.tsx +0 -20
  337. package/src/stories/Button/Button.mdx +0 -94
  338. package/src/stories/Button/Button.stories.tsx +0 -68
  339. package/src/stories/Callout/Callout.mdx +0 -35
  340. package/src/stories/Callout/Callout.stories.tsx +0 -43
  341. package/src/stories/Card/DataCard.stories.tsx +0 -45
  342. package/src/stories/Card/DetailCard.stories.tsx +0 -41
  343. package/src/stories/Card/FactlistCard.stories.tsx +0 -48
  344. package/src/stories/Card/FeatureCard.stories.tsx +0 -56
  345. package/src/stories/Card/MultilinkCard.stories.tsx +0 -48
  346. package/src/stories/Card/PromoCard.stories.tsx +0 -48
  347. package/src/stories/Card/StatCard.stories.tsx +0 -45
  348. package/src/stories/Card/TextCard.stories.tsx +0 -45
  349. package/src/stories/CardGroup/CardGroup.mdx +0 -17
  350. package/src/stories/CardGroup/CardGroup.stories.tsx +0 -50
  351. package/src/stories/Checkbox/Checkbox.stories.tsx +0 -118
  352. package/src/stories/ContextMenu/ContextMenu.stories.tsx +0 -83
  353. package/src/stories/DatePicker/DatePicker.stories.tsx +0 -110
  354. package/src/stories/Dropdown/Dropdown.stories.tsx +0 -145
  355. package/src/stories/Empty/Empty.stories.tsx +0 -53
  356. package/src/stories/Fieldset/Fieldset.stories.tsx +0 -167
  357. package/src/stories/FileUpload/FileUpload.stories.tsx +0 -103
  358. package/src/stories/Footer/Footer.mdx +0 -17
  359. package/src/stories/Footer/Footer.stories.tsx +0 -15
  360. package/src/stories/Form/Form.mdx +0 -58
  361. package/src/stories/Form/Form.stories.tsx +0 -162
  362. package/src/stories/GetStarted.mdx +0 -57
  363. package/src/stories/Heading/Heading.stories.tsx +0 -193
  364. package/src/stories/Hero/Hero.stories.tsx +0 -68
  365. package/src/stories/Image/Image.stories.tsx +0 -50
  366. package/src/stories/Link/Link.stories.tsx +0 -81
  367. package/src/stories/LinkList/LinkList.args.ts +0 -190
  368. package/src/stories/LinkList/LinkList.stories.tsx +0 -60
  369. package/src/stories/List/List.stories.tsx +0 -167
  370. package/src/stories/Loading/Loading.stories.tsx +0 -97
  371. package/src/stories/LocalNav/LocalNav.mdx +0 -17
  372. package/src/stories/LocalNav/LocalNav.stories.tsx +0 -15
  373. package/src/stories/Logo/Logo.stories.tsx +0 -172
  374. package/src/stories/LogoGrid/LogoGrid.stories.tsx +0 -59
  375. package/src/stories/Navigation/Navigation.mdx +0 -17
  376. package/src/stories/Navigation/Navigation.stories.tsx +0 -15
  377. package/src/stories/Notification/Notification.stories.tsx +0 -187
  378. package/src/stories/NumberPicker/NumberPicker.stories.tsx +0 -69
  379. package/src/stories/Pagination/Pagination.stories.tsx +0 -86
  380. package/src/stories/Profile/Profile.stories.tsx +0 -64
  381. package/src/stories/Radio/Radio.stories.tsx +0 -232
  382. package/src/stories/ReadMore/ReadMore.stories.tsx +0 -59
  383. package/src/stories/RichText/RichText.stories.tsx +0 -63
  384. package/src/stories/SearchField/SearchField.stories.tsx +0 -91
  385. package/src/stories/SocialMedia/SocialMedia.stories.tsx +0 -60
  386. package/src/stories/TableOfContents/TableOfContents.stories.tsx +0 -55
  387. package/src/stories/Tabs/Tabs.mdx +0 -17
  388. package/src/stories/Tabs/Tabs.stories.tsx +0 -25
  389. package/src/stories/Tag/Tag.stories.tsx +0 -130
  390. package/src/stories/TextInput/TextInput.stories.tsx +0 -100
  391. package/src/stories/Textarea/Textarea.stories.tsx +0 -147
  392. package/src/stories/Toggle/Toggle.stories.tsx +0 -99
  393. package/src/stories/Tooltip/Tooltip.stories.tsx +0 -82
  394. package/src/stories/Video/Video.stories.tsx +0 -71
  395. package/src/stories/Welcome.stories.mdx +0 -37
  396. package/src/stories/assets/code-brackets.svg +0 -1
  397. package/src/stories/assets/colors.svg +0 -1
  398. package/src/stories/assets/comments.svg +0 -1
  399. package/src/stories/assets/direction.svg +0 -1
  400. package/src/stories/assets/flow.svg +0 -1
  401. package/src/stories/assets/plugin.svg +0 -1
  402. package/src/stories/assets/repo.svg +0 -1
  403. package/src/stories/assets/stackalt.svg +0 -1
  404. package/src/stories/welcome.scss +0 -133
  405. package/src/types/forms.args.ts +0 -288
  406. package/src/types/index.ts +0 -137
  407. package/src/types/temp.d.ts +0 -9
  408. package/src/utils/checkArrayDuplicates.ts +0 -3
  409. package/src/utils/createChainedFunction.ts +0 -31
  410. package/src/utils/getDefaultDimensionValue.ts +0 -28
  411. package/src/utils/hoursMinutesSeconds.ts +0 -8
  412. package/src/utils/index.ts +0 -6
  413. package/src/utils/transitionEndListener.ts +0 -29
  414. package/src/utils/triggerBrowserReflow.ts +0 -4
  415. package/tsconfig.build.json +0 -19
  416. package/tsconfig.json +0 -8
@@ -30,12 +30,15 @@ const cardMapper = {
30
30
  factlist: components_Cards_FactlistCard_FactListCard,
31
31
  data: components_Cards_DataCard_DataCard,
32
32
  };
33
- const CardGroup = ({ cards, cardCount, cta, type }) => {
34
- const Cards = cardMapper[type];
33
+ const CardGroup = ({ cards, titleLevel = "p", cardCount, cta, type, alignment, size, theme, collapsed = false, }) => {
34
+ const Card = cardMapper[type];
35
35
  const { prefix } = hooks_useGlobalSettings();
36
36
  const baseClass = `${prefix}--cardgroup`;
37
- const cardGroupClasses = classNames(baseClass, `${baseClass}__count__${cardCount}`);
38
- return (jsxRuntime.jsxs("div", Object.assign({ className: cardGroupClasses }, { children: [jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--inner` }, { children: cards && cards.map((card, index) => jsxRuntime.jsx(Cards, Object.assign({}, card), index)) })), cta && (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--button-wrap` }, { children: jsxRuntime.jsx("a", Object.assign({ className: `${prefix}--button ${prefix}--button--medium ${prefix}--button--secondary`, href: cta.url }, { children: jsxRuntime.jsx("span", Object.assign({ className: "button__label" }, { children: cta.label })) })) })))] })));
37
+ const cardGroupClasses = classNames(baseClass, `${baseClass}__count__${cardCount}`, {
38
+ [`${baseClass}__collapsed`]: collapsed,
39
+ });
40
+ return (jsxRuntime.jsxs("div", Object.assign({ className: cardGroupClasses }, { children: [jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--inner` }, { children: cards &&
41
+ cards.map((card, index) => (jsxRuntime.jsx(Card, Object.assign({}, card, { size: size, theme: theme, alignment: alignment, titleLevel: titleLevel }), index))) })), cta && (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--button-wrap` }, { children: jsxRuntime.jsx("a", Object.assign({ className: `${prefix}--button ${prefix}--button--medium ${prefix}--button--secondary`, href: cta.url }, { children: jsxRuntime.jsx("span", Object.assign({ className: "button__label" }, { children: cta.label })) })) })))] })));
39
42
  };
40
43
 
41
44
  module.exports = CardGroup;
@@ -90,6 +90,7 @@ const textCardGroup = {
90
90
  ],
91
91
  cardCount: "three",
92
92
  type: "text",
93
+ size: "narrow",
93
94
  cta: {
94
95
  label: "Discover our unique mission",
95
96
  url: "https://www.ilo.org",
@@ -135,6 +136,7 @@ const statCardGroup = {
135
136
  },
136
137
  ],
137
138
  cardCount: "three",
139
+ size: "narrow",
138
140
  type: "stat",
139
141
  cta: {
140
142
  label: "Discover our unique mission",
@@ -262,6 +264,7 @@ const multilinkCardGroup = {
262
264
  ],
263
265
  type: "multilink",
264
266
  cardCount: "three",
267
+ size: "standard",
265
268
  cta: {
266
269
  label: "Discover our unique mission",
267
270
  url: "https://www.ilo.org",
@@ -270,7 +273,6 @@ const multilinkCardGroup = {
270
273
  const promoCardGroup = {
271
274
  cards: [
272
275
  {
273
- size: "standard",
274
276
  title: "ILO welcomes first global agreement on working conditions",
275
277
  eyebrow: "Report",
276
278
  theme: "dark",
@@ -283,7 +285,6 @@ const promoCardGroup = {
283
285
  },
284
286
  },
285
287
  {
286
- size: "standard",
287
288
  title: "Renewable energy jobs hits 12.7 million globally",
288
289
  eyebrow: "High-level meeting",
289
290
  theme: "dark",
@@ -296,7 +297,6 @@ const promoCardGroup = {
296
297
  },
297
298
  },
298
299
  {
299
- size: "standard",
300
300
  title: "ILO welcomes G7 call to make a just transition",
301
301
  eyebrow: "Podcast",
302
302
  theme: "dark",
@@ -309,7 +309,6 @@ const promoCardGroup = {
309
309
  },
310
310
  },
311
311
  {
312
- size: "standard",
313
312
  title: "Telangana and Andhra Pradesh launch pre-departure handbook",
314
313
  eyebrow: "High-level meeting",
315
314
  theme: "dark",
@@ -324,6 +323,7 @@ const promoCardGroup = {
324
323
  ],
325
324
  type: "promo",
326
325
  cardCount: "three",
326
+ size: "standard",
327
327
  cta: {
328
328
  label: "Discover our unique mission",
329
329
  url: "https://www.ilo.org",
@@ -418,6 +418,7 @@ const featureCardGroup = {
418
418
  ],
419
419
  cardCount: "three",
420
420
  type: "feature",
421
+ size: "narrow",
421
422
  cta: {
422
423
  label: "Discover our unique mission",
423
424
  url: "https://www.ilo.org",
@@ -476,6 +477,7 @@ const detailCardGroup = {
476
477
  ],
477
478
  type: "detail",
478
479
  cardCount: "three",
480
+ size: "narrow",
479
481
  cta: {
480
482
  label: "Discover our unique mission",
481
483
  url: "https://www.ilo.org",
@@ -522,6 +524,7 @@ const factListCardGroup = {
522
524
  ],
523
525
  type: "factlist",
524
526
  cardCount: "three",
527
+ size: "narrow",
525
528
  cta: {
526
529
  label: "Discover our unique mission",
527
530
  url: "https://www.ilo.org",
@@ -530,7 +533,7 @@ const factListCardGroup = {
530
533
  const dataCardGroup = {
531
534
  cards: [
532
535
  {
533
- size: "standard",
536
+ size: "narrow",
534
537
  eyebrow: "Press release",
535
538
  image: "/small.jpg",
536
539
  columns: "one",
@@ -593,7 +596,6 @@ const dataCardGroup = {
593
596
  },
594
597
  },
595
598
  {
596
- size: "standard",
597
599
  eyebrow: "Report",
598
600
  image: "/small.jpg",
599
601
  columns: "one",
@@ -652,7 +654,6 @@ const dataCardGroup = {
652
654
  },
653
655
  },
654
656
  {
655
- size: "standard",
656
657
  eyebrow: "Meeting",
657
658
  image: "/small.jpg",
658
659
  columns: "one",
@@ -707,7 +708,6 @@ const dataCardGroup = {
707
708
  },
708
709
  },
709
710
  {
710
- size: "standard",
711
711
  eyebrow: "Meeting",
712
712
  image: "/small.jpg",
713
713
  columns: "one",
@@ -776,6 +776,7 @@ const dataCardGroup = {
776
776
  ],
777
777
  cardCount: "three",
778
778
  type: "data",
779
+ size: "narrow",
779
780
  cta: {
780
781
  label: "Discover our unique mission",
781
782
  url: "https://www.ilo.org",
@@ -7,14 +7,14 @@ require('tslib');
7
7
  require('react');
8
8
  require('../../../GlobalCtx-10114bdd.js');
9
9
 
10
- const DetailCard = ({ eyebrow, title, size = "narrow", intro, date, eventdetails, link, image, }) => {
10
+ const DetailCard = ({ eyebrow, title, size = "narrow", intro, date, eventdetails, link, image, titleLevel: TitleElement, }) => {
11
11
  const { prefix } = hooks_useGlobalSettings();
12
12
  const baseClass = `${prefix}--card`;
13
13
  const cardClasses = classNames(baseClass, `${baseClass}__type__detail`, {
14
14
  [`${baseClass}__action`]: link,
15
15
  [`${baseClass}__size__${size}`]: size,
16
16
  });
17
- return (jsxRuntime.jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--wrap` }, { children: [image && (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--image--wrapper` }, { children: jsxRuntime.jsx("picture", { children: jsxRuntime.jsx("img", { className: `${baseClass}--picture`, src: image, alt: title }) }) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && jsxRuntime.jsx("h5", Object.assign({ className: `${baseClass}--title` }, { children: title })), intro && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--intro` }, { children: intro })), date && (jsxRuntime.jsx("time", Object.assign({ className: `${baseClass}--date`, dateTime: date.unix }, { children: date.human }))), eventdetails && (jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--date-extra` }, { children: eventdetails })))] }))] }))] })));
17
+ return (jsxRuntime.jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--wrap` }, { children: [image && (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--image--wrapper` }, { children: jsxRuntime.jsx("picture", { children: jsxRuntime.jsx("img", { className: `${baseClass}--picture`, src: image, alt: title }) }) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && TitleElement ? (jsxRuntime.jsx(TitleElement, Object.assign({ className: `${baseClass}--title` }, { children: title }))) : (jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--title` }, { children: title }))), intro && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--intro` }, { children: intro })), date && (jsxRuntime.jsx("time", Object.assign({ className: `${baseClass}--date`, dateTime: date.unix }, { children: date.human }))), eventdetails && (jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--date-extra` }, { children: eventdetails })))] }))] }))] })));
18
18
  };
19
19
 
20
20
  module.exports = DetailCard;
@@ -9,14 +9,14 @@ require('tslib');
9
9
  require('react');
10
10
  require('../../../GlobalCtx-10114bdd.js');
11
11
 
12
- const FactlistCard = ({ title, theme = "narrow", size, list, }) => {
12
+ const FactlistCard = ({ title, theme, size = "narrow", list, titleLevel: TitleElement, }) => {
13
13
  const { prefix } = hooks_useGlobalSettings();
14
14
  const baseClass = `${prefix}--card`;
15
15
  const cardClasses = classNames(baseClass, `${baseClass}__type__factlist`, {
16
16
  [`${baseClass}__size__${size}`]: size,
17
17
  [`${baseClass}__theme__${theme}`]: theme,
18
18
  });
19
- return (jsxRuntime.jsx("div", Object.assign({ className: cardClasses }, { children: jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--wrap` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [title && jsxRuntime.jsx("h5", Object.assign({ className: `${baseClass}--title` }, { children: title })), list && (jsxRuntime.jsx(components_List_List, Object.assign({ alignment: "default", ordered: "unordered" }, { children: list.map((item, index) => (jsxRuntime.jsx(components_List_ListItem, Object.assign({ id: `list${index}` }, { children: jsxRuntime.jsx("p", { children: item }) })))) })))] })) })) })));
19
+ return (jsxRuntime.jsx("div", Object.assign({ className: cardClasses }, { children: jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--wrap` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [title && TitleElement ? (jsxRuntime.jsx(TitleElement, Object.assign({ className: `${baseClass}--title` }, { children: title }))) : (jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--title` }, { children: title }))), list && (jsxRuntime.jsx(components_List_List, Object.assign({ alignment: "default", ordered: "unordered" }, { children: list.map((item, index) => (jsxRuntime.jsx(components_List_ListItem, Object.assign({ id: `list${index}` }, { children: jsxRuntime.jsx("p", { children: item }) })))) })))] })) })) })));
20
20
  };
21
21
 
22
22
  module.exports = FactlistCard;
@@ -8,7 +8,7 @@ require('tslib');
8
8
  require('react');
9
9
  require('../../../GlobalCtx-10114bdd.js');
10
10
 
11
- const FeatureCard = ({ isvideo, eyebrow, title, theme, size = "narrow", date, link, linklist, image, }) => {
11
+ const FeatureCard = ({ isvideo, eyebrow, title, theme, size = "narrow", date, link, linklist, image, titleLevel: TitleElement, }) => {
12
12
  const { prefix } = hooks_useGlobalSettings();
13
13
  const baseClass = `${prefix}--card`;
14
14
  const cardClasses = classNames(baseClass, `${baseClass}__type__feature`, {
@@ -18,7 +18,7 @@ const FeatureCard = ({ isvideo, eyebrow, title, theme, size = "narrow", date, li
18
18
  [`${baseClass}__linklist`]: linklist,
19
19
  [`${baseClass}__theme__${theme}`]: theme,
20
20
  });
21
- return (jsxRuntime.jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--wrap` }, { children: [image && (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--image--wrapper` }, { children: jsxRuntime.jsx("picture", { children: jsxRuntime.jsx("img", { className: `${baseClass}--picture`, src: image, alt: title }) }) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && jsxRuntime.jsx("h5", Object.assign({ className: `${baseClass}--title` }, { children: title })), date && (jsxRuntime.jsx("time", Object.assign({ className: `${baseClass}--date`, dateTime: date.unix }, { children: date.human }))), linklist && (jsxRuntime.jsx(components_LinkList_LinkList, { headline: linklist.headline, linkgroup: linklist.linkgroup }))] }))] }))] })));
21
+ return (jsxRuntime.jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--wrap` }, { children: [image && (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--image--wrapper` }, { children: jsxRuntime.jsx("picture", { children: jsxRuntime.jsx("img", { className: `${baseClass}--picture`, src: image, alt: title }) }) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && TitleElement ? (jsxRuntime.jsx(TitleElement, Object.assign({ className: `${baseClass}--title` }, { children: title }))) : (jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--title` }, { children: title }))), date && (jsxRuntime.jsx("time", Object.assign({ className: `${baseClass}--date`, dateTime: date.unix }, { children: date.human }))), linklist && (jsxRuntime.jsx(components_LinkList_LinkList, { headline: linklist.headline, linkgroup: linklist.linkgroup }))] }))] }))] })));
22
22
  };
23
23
 
24
24
  module.exports = FeatureCard;
@@ -8,7 +8,7 @@ require('tslib');
8
8
  require('react');
9
9
  require('../../../GlobalCtx-10114bdd.js');
10
10
 
11
- const MultilinkCard = ({ isvideo, eyebrow, title, size = "narrow", alignment, intro, link, linklist, image, }) => {
11
+ const MultilinkCard = ({ isvideo, eyebrow, title, size = "standard", alignment, intro, link, linklist, image, titleLevel: TitleElement, }) => {
12
12
  const { prefix } = hooks_useGlobalSettings();
13
13
  const baseClass = `${prefix}--card`;
14
14
  const cardClasses = classNames(baseClass, `${baseClass}__type__multilink`, {
@@ -18,7 +18,7 @@ const MultilinkCard = ({ isvideo, eyebrow, title, size = "narrow", alignment, in
18
18
  [`${baseClass}__isvideo`]: isvideo,
19
19
  [`${baseClass}__linklist`]: linklist,
20
20
  });
21
- return (jsxRuntime.jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--wrap` }, { children: [image && (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--image--wrapper` }, { children: jsxRuntime.jsx("picture", { children: jsxRuntime.jsx("img", { className: `${baseClass}--picture`, src: image, alt: title }) }) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && jsxRuntime.jsx("h5", Object.assign({ className: `${baseClass}--title` }, { children: title })), image && (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--image--wrapper` }, { children: jsxRuntime.jsx("picture", { children: jsxRuntime.jsx("img", { className: `${baseClass}--picture`, src: image, alt: title }) }) }))), intro && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--intro` }, { children: intro })), linklist && (jsxRuntime.jsx(components_LinkList_LinkList, { headline: linklist.headline, linkgroup: linklist.linkgroup }))] }))] }))] })));
21
+ return (jsxRuntime.jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--wrap` }, { children: [image && (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--image--wrapper` }, { children: jsxRuntime.jsx("picture", { children: jsxRuntime.jsx("img", { className: `${baseClass}--picture`, src: image, alt: title }) }) }))), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && TitleElement ? (jsxRuntime.jsx(TitleElement, Object.assign({ className: `${baseClass}--title` }, { children: title }))) : (jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--title` }, { children: title }))), image && (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--image--wrapper` }, { children: jsxRuntime.jsx("picture", { children: jsxRuntime.jsx("img", { className: `${baseClass}--picture`, src: image, alt: title }) }) }))), intro && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--intro` }, { children: intro })), linklist && (jsxRuntime.jsx(components_LinkList_LinkList, { headline: linklist.headline, linkgroup: linklist.linkgroup }))] }))] }))] })));
22
22
  };
23
23
 
24
24
  module.exports = MultilinkCard;
@@ -7,7 +7,7 @@ require('tslib');
7
7
  require('react');
8
8
  require('../../../GlobalCtx-10114bdd.js');
9
9
 
10
- const PromoCard = ({ eyebrow, title, theme, size = "narrow", cornercut, intro, link, cta, }) => {
10
+ const PromoCard = ({ eyebrow, title, theme, size = "narrow", cornercut, intro, link, cta, titleLevel: TitleElement, }) => {
11
11
  const { prefix } = hooks_useGlobalSettings();
12
12
  const baseClass = `${prefix}--card`;
13
13
  const wrapperClass = classNames(`${baseClass}--wrapper`, `${baseClass}--wrapper__type__promo ${baseClass}--wrapper__type__promo__size__${size}`);
@@ -17,7 +17,7 @@ const PromoCard = ({ eyebrow, title, theme, size = "narrow", cornercut, intro, l
17
17
  [`${baseClass}__size__${size}`]: size,
18
18
  [`${baseClass}__theme__${theme}`]: theme,
19
19
  });
20
- return (jsxRuntime.jsx("div", Object.assign({ className: wrapperClass }, { children: jsxRuntime.jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--wrap` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && jsxRuntime.jsx("h5", Object.assign({ className: `${baseClass}--title` }, { children: title })), intro && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--intro` }, { children: intro })), cta && cta.label && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--cta ${prefix}--button ${prefix}--button--medium ${prefix}--button--primary`, href: cta.url }, { children: jsxRuntime.jsx("span", Object.assign({ className: "link__label" }, { children: cta.label })) })))] })) }))] })) })));
20
+ return (jsxRuntime.jsx("div", Object.assign({ className: wrapperClass }, { children: jsxRuntime.jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--wrap` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && TitleElement ? (jsxRuntime.jsx(TitleElement, Object.assign({ className: `${baseClass}--title` }, { children: title }))) : (jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--title` }, { children: title }))), intro && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--intro` }, { children: intro })), cta && cta.label && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--cta ${prefix}--button ${prefix}--button--medium ${prefix}--button--primary`, href: cta.url }, { children: jsxRuntime.jsx("span", Object.assign({ className: "link__label" }, { children: cta.label })) })))] })) }))] })) })));
21
21
  };
22
22
 
23
23
  module.exports = PromoCard;
@@ -8,14 +8,14 @@ require('tslib');
8
8
  require('react');
9
9
  require('../../../GlobalCtx-10114bdd.js');
10
10
 
11
- const StatCard = ({ title, color, size = "standard", intro, source, }) => {
11
+ const StatCard = ({ title, color, size = "standard", intro, source, titleLevel: TitleElement, }) => {
12
12
  const { prefix } = hooks_useGlobalSettings();
13
13
  const baseClass = `${prefix}--card`;
14
14
  const cardClasses = classNames(baseClass, `${baseClass}__type__stat`, {
15
15
  [`${baseClass}__color__${color}`]: color,
16
16
  [`${baseClass}__size__${size}`]: size,
17
17
  });
18
- return (jsxRuntime.jsx("div", Object.assign({ className: cardClasses }, { children: jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--wrap` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [title && jsxRuntime.jsx("h5", Object.assign({ className: `${baseClass}--title` }, { children: title })), intro && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--intro` }, { children: intro })), source && jsxRuntime.jsx(components_Link_Link, Object.assign({ url: source.url }, { children: source.label }))] })) })) })));
18
+ return (jsxRuntime.jsx("div", Object.assign({ className: cardClasses }, { children: jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--wrap` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [title && TitleElement ? (jsxRuntime.jsx(TitleElement, Object.assign({ className: `${baseClass}--title` }, { children: title }))) : (jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--title` }, { children: title }))), intro && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--intro` }, { children: intro })), source && jsxRuntime.jsx(components_Link_Link, Object.assign({ url: source.url }, { children: source.label }))] })) })) })));
19
19
  };
20
20
 
21
21
  module.exports = StatCard;
@@ -8,7 +8,7 @@ require('tslib');
8
8
  require('react');
9
9
  require('../../../GlobalCtx-10114bdd.js');
10
10
 
11
- const TextCard = ({ eyebrow, title, theme, size, date, profile, link, }) => {
11
+ const TextCard = ({ eyebrow, title, theme, size, date, profile, link, titleLevel: TitleElement, }) => {
12
12
  const { prefix } = hooks_useGlobalSettings();
13
13
  const baseClass = `${prefix}--card`;
14
14
  const wrapperClass = classNames(`${baseClass}--wrapper`);
@@ -17,7 +17,7 @@ const TextCard = ({ eyebrow, title, theme, size, date, profile, link, }) => {
17
17
  [`${baseClass}__size__${size}`]: size,
18
18
  [`${baseClass}__theme__${theme}`]: theme,
19
19
  });
20
- return (jsxRuntime.jsx("div", Object.assign({ className: wrapperClass }, { children: jsxRuntime.jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--wrap` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && jsxRuntime.jsx("h5", Object.assign({ className: `${baseClass}--title` }, { children: title })), date && (jsxRuntime.jsx("time", Object.assign({ className: `${baseClass}--date`, dateTime: date.unix }, { children: date.human }))), profile && profile.avatar && (jsxRuntime.jsx(components_Profile_Profile, { avatar: profile.avatar, description: profile.description, link: profile.link, name: profile.name, role: profile.role, className: `${prefix}--profile__theme__${theme}` }))] })) }))] })) })));
20
+ return (jsxRuntime.jsx("div", Object.assign({ className: wrapperClass }, { children: jsxRuntime.jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsxRuntime.jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--wrap` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && TitleElement ? (jsxRuntime.jsx(TitleElement, Object.assign({ className: `${baseClass}--title` }, { children: title }))) : (jsxRuntime.jsx("p", Object.assign({ className: `${baseClass}--title` }, { children: title }))), date && (jsxRuntime.jsx("time", Object.assign({ className: `${baseClass}--date`, dateTime: date.unix }, { children: date.human }))), profile && profile.avatar && (jsxRuntime.jsx(components_Profile_Profile, { avatar: profile.avatar, description: profile.description, link: profile.link, name: profile.name, role: profile.role, className: `${prefix}--profile__theme__${theme}` }))] })) }))] })) })));
21
21
  };
22
22
 
23
23
  module.exports = TextCard;
@@ -3,8 +3,8 @@
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
4
  var classNames = require('classnames');
5
5
  var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
6
- require('react');
7
6
  require('tslib');
7
+ require('react');
8
8
  require('../../GlobalCtx-10114bdd.js');
9
9
 
10
10
  const LogoGridItem = ({ url, label, src }) => {
@@ -20,31 +20,57 @@ const Navigation = ({ logo, mobilelogo, siteurl, tagline, primarynav, subnav, me
20
20
  const { prefix } = hooks_useGlobalSettings();
21
21
  const [toggleMenuOpen, setMenuToggleOpen] = React.useState(false);
22
22
  const [toggleSearchOpen, setSearchToggleOpen] = React.useState(false);
23
+ const [searchTabbable, setSearchTabbable] = React.useState(false);
23
24
  const [toggleSubnavOpen, setSubnavToggleOpen] = React.useState(false);
25
+ const [subnavTabbable, setSubnavTabbable] = React.useState(false);
24
26
  const [toggleLanguageOpen, setLanguageToggleOpen] = React.useState(false);
25
27
  const baseClass = `${prefix}--header`;
26
28
  const NavigationClasses = classNames(baseClass, {
27
29
  [`${prefix}--mobile--open`]: toggleMenuOpen,
28
- [`${prefix}--select--open`]: toggleLanguageOpen,
29
30
  [`${prefix}--search--open`]: toggleSearchOpen,
30
31
  [`${prefix}--subnav--open`]: toggleSubnavOpen,
32
+ [`${prefix}--select--open`]: toggleLanguageOpen,
33
+ [`${prefix}--context--open`]: toggleLanguageOpen,
31
34
  });
32
35
  const handleMenuToggle = () => {
33
36
  setMenuToggleOpen(!toggleMenuOpen);
34
37
  };
35
- const handleLanguageToggle = () => {
38
+ const handleLanguageToggle = React.useCallback(() => {
36
39
  setLanguageToggleOpen(!toggleLanguageOpen);
37
- };
40
+ }, [toggleLanguageOpen]);
38
41
  const handleSearchToggle = () => {
39
- setSearchToggleOpen(!toggleSearchOpen);
42
+ if (toggleSearchOpen) {
43
+ setSearchToggleOpen(false);
44
+ setTimeout(() => setSearchTabbable(false), 225);
45
+ return;
46
+ }
47
+ setSearchTabbable(true);
48
+ setTimeout(() => setSearchToggleOpen(true), 10);
40
49
  };
41
50
  const handleSubnavToggle = () => {
42
- setSubnavToggleOpen(!toggleSubnavOpen);
51
+ if (toggleSubnavOpen) {
52
+ setSubnavToggleOpen(false);
53
+ setTimeout(() => setSubnavTabbable(false), 125);
54
+ return;
55
+ }
56
+ setSubnavTabbable(true);
57
+ setTimeout(() => setSubnavToggleOpen(true), 10);
43
58
  };
44
- return (jsxRuntime.jsxs("header", Object.assign({ className: NavigationClasses }, { children: [jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--utility-bar` }, { children: jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--language-switcher` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--language-switcher--wrap` }, { children: [jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--language-switcher--button`, type: "button" }, { children: languagelabel })), jsxRuntime.jsx(components_ContextMenu_ContextMenu, { links: languagecontextmenu === null || languagecontextmenu === void 0 ? void 0 : languagecontextmenu.links })] })) })) })), jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--logo-bar` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--inner ${prefix}--container` }, { children: [jsxRuntime.jsx("a", Object.assign({ href: siteurl, className: `${baseClass}--logo-link` }, { children: jsxRuntime.jsx("img", { className: `${baseClass}--logo`, src: logo, alt: "ILO Logo" }) })), jsxRuntime.jsxs("p", Object.assign({ className: `${baseClass}--logo-tagline` }, { children: [tagline === null || tagline === void 0 ? void 0 : tagline.tag, jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--logo-tagline--small` }, { children: tagline === null || tagline === void 0 ? void 0 : tagline.small }))] })), jsxRuntime.jsx("button", Object.assign({ className: `${baseClass}--menu`, onClick: handleMenuToggle }, { children: menulabel }))] })) })), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--navigation` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--inner ${prefix}--container` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--mobile--nav` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--mobile--nav--logo` }, { children: [jsxRuntime.jsx("a", Object.assign({ href: siteurl, className: `${baseClass}--logo-link` }, { children: jsxRuntime.jsx("img", { className: `${baseClass}--logo`, src: mobilelogo, alt: "ILO Logo" }) })), jsxRuntime.jsx("button", Object.assign({ className: `${baseClass}--menu--close`, onClick: handleMenuToggle }, { children: menucloselabel }))] })), jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--mobile--nav--search` }, { children: jsxRuntime.jsx(components_SearchField_SearchField, { input: searchfield === null || searchfield === void 0 ? void 0 : searchfield.input, action: searchfield === null || searchfield === void 0 ? void 0 : searchfield.action }) })), jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--mobile--nav--language--switcher` }, { children: jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--mobile--nav--language--switcher--button`, onClick: handleLanguageToggle, type: "button" }, { children: languagelabel })) })), jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--mobile--nav--language--select` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--inner ${prefix}--container` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--mobile--subnav--menu` }, { children: [jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--mobile--subnav--back`, onClick: handleLanguageToggle, type: "button" }, { children: subnav === null || subnav === void 0 ? void 0 : subnav.mobilebacklabel })), jsxRuntime.jsx("button", Object.assign({ className: `${baseClass}--menu--close`, onClick: handleMenuToggle }, { children: subnav === null || subnav === void 0 ? void 0 : subnav.mobilecloselabel })), jsxRuntime.jsx("h6", Object.assign({ className: `${prefix}--mobile--subnav--label` }, { children: languagelabel }))] })), jsxRuntime.jsx("ul", Object.assign({ className: `${prefix}--nav--set` }, { children: (languagecontextmenu === null || languagecontextmenu === void 0 ? void 0 : languagecontextmenu.links) &&
59
+ React.useEffect(() => {
60
+ if (window) {
61
+ if (toggleLanguageOpen) {
62
+ window.addEventListener("click", handleLanguageToggle);
63
+ }
64
+ else {
65
+ window.removeEventListener("click", handleLanguageToggle);
66
+ }
67
+ return () => window.removeEventListener("click", handleLanguageToggle);
68
+ }
69
+ }, [toggleLanguageOpen, handleLanguageToggle]);
70
+ return (jsxRuntime.jsxs("header", Object.assign({ className: NavigationClasses }, { children: [jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--utility-bar` }, { children: jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--language-switcher` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--language-switcher--wrap` }, { children: [jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--language-switcher--button`, type: "button", onClick: handleLanguageToggle }, { children: languagelabel })), jsxRuntime.jsx(components_ContextMenu_ContextMenu, { links: languagecontextmenu === null || languagecontextmenu === void 0 ? void 0 : languagecontextmenu.links })] })) })) })), jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--logo-bar` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--inner ${prefix}--container` }, { children: [jsxRuntime.jsx("a", Object.assign({ href: siteurl, className: `${baseClass}--logo-link` }, { children: jsxRuntime.jsx("img", { className: `${baseClass}--logo`, src: logo, alt: "ILO Logo" }) })), jsxRuntime.jsxs("p", Object.assign({ className: `${baseClass}--logo-tagline` }, { children: [tagline === null || tagline === void 0 ? void 0 : tagline.tag, jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--logo-tagline--small` }, { children: tagline === null || tagline === void 0 ? void 0 : tagline.small }))] })), jsxRuntime.jsx("button", Object.assign({ className: `${baseClass}--menu`, onClick: handleMenuToggle }, { children: menulabel }))] })) })), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--navigation` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--inner ${prefix}--container` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--mobile--nav` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--mobile--nav--logo` }, { children: [jsxRuntime.jsx("a", Object.assign({ href: siteurl, className: `${baseClass}--logo-link` }, { children: jsxRuntime.jsx("img", { className: `${baseClass}--logo`, src: mobilelogo, alt: "ILO Logo" }) })), jsxRuntime.jsx("button", Object.assign({ className: `${baseClass}--menu--close`, onClick: handleMenuToggle }, { children: menucloselabel }))] })), jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--mobile--nav--search` }, { children: jsxRuntime.jsx(components_SearchField_SearchField, { input: searchfield === null || searchfield === void 0 ? void 0 : searchfield.input, action: searchfield === null || searchfield === void 0 ? void 0 : searchfield.action }) })), jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--mobile--nav--language--switcher` }, { children: jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--mobile--nav--language--switcher--button`, onClick: handleLanguageToggle, type: "button" }, { children: languagelabel })) })), jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--mobile--nav--language--select` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--inner ${prefix}--container` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--mobile--subnav--menu` }, { children: [jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--mobile--subnav--back`, onClick: handleLanguageToggle, type: "button" }, { children: subnav === null || subnav === void 0 ? void 0 : subnav.mobilebacklabel })), jsxRuntime.jsx("button", Object.assign({ className: `${baseClass}--menu--close`, onClick: handleMenuToggle }, { children: subnav === null || subnav === void 0 ? void 0 : subnav.mobilecloselabel })), jsxRuntime.jsx("h6", Object.assign({ className: `${prefix}--mobile--subnav--label` }, { children: languagelabel }))] })), jsxRuntime.jsx("ul", Object.assign({ className: `${prefix}--nav--set` }, { children: (languagecontextmenu === null || languagecontextmenu === void 0 ? void 0 : languagecontextmenu.links) &&
45
71
  languagecontextmenu.links.map((item, index) => (jsxRuntime.jsx("li", Object.assign({ className: `${prefix}--nav--items` }, { children: jsxRuntime.jsx("a", Object.assign({ href: item.url, className: `${prefix}--nav--link ${prefix}--nav--language` }, { children: item.label })) }), index))) }))] })) }))] })), jsxRuntime.jsxs("nav", Object.assign({ className: `${prefix}--nav`, "aria-labelledby": "primary-navigation" }, { children: [jsxRuntime.jsx("h2", Object.assign({ className: `${prefix}--nav--label`, id: "primary-navigation" }, { children: primarynav === null || primarynav === void 0 ? void 0 : primarynav.navlabel })), jsxRuntime.jsxs("ul", Object.assign({ className: `${prefix}--nav--set` }, { children: [(primarynav === null || primarynav === void 0 ? void 0 : primarynav.items) &&
46
- primarynav.items.map((item, index) => (jsxRuntime.jsx("li", Object.assign({ className: `${prefix}--nav--items` }, { children: jsxRuntime.jsx("a", Object.assign({ href: item.url, className: `${prefix}--nav--link` }, { children: item.label })) }), index))), subnav && (jsxRuntime.jsx("li", Object.assign({ className: `${prefix}--nav--items` }, { children: jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--nav--trigger`, onClick: handleSubnavToggle }, { children: subnav.buttonlabel })) })))] }))] })), jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--search` }, { children: jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--search--button`, type: "button", onClick: handleSearchToggle }, { children: searchlabel })) }))] })), subnav && (jsxRuntime.jsx("nav", Object.assign({ className: `${prefix}--subnav`, "aria-labelledby": "secondary-navigation" }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--subnav--inner ${prefix}--container` }, { children: [jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--mobile--subnav` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--mobile--subnav--menu` }, { children: [jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--mobile--subnav--back`, onClick: handleSubnavToggle, type: "button" }, { children: subnav.mobilebacklabel })), jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--header--menu--close`, onClick: handleMenuToggle }, { children: subnav.mobilecloselabel })), jsxRuntime.jsx("h6", Object.assign({ className: `${prefix}--mobile--subnav--label` }, { children: subnav.buttonlabel }))] })) })), jsxRuntime.jsx("h2", Object.assign({ className: `${prefix}--nav--label`, id: "secondary-navigation" }, { children: subnav.navlabel })), jsxRuntime.jsx("ul", Object.assign({ className: `${prefix}--subnav--set` }, { children: (subnav === null || subnav === void 0 ? void 0 : subnav.items) &&
47
- subnav.items.map((item, index) => (jsxRuntime.jsx("li", Object.assign({ className: `${prefix}--subnav--items` }, { children: jsxRuntime.jsx("a", Object.assign({ href: item.url, className: `${prefix}--subnav--link` }, { children: item.label })) }), index))) }))] })) }))), jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--search-box` }, { children: jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--header--inner ${prefix}--container` }, { children: jsxRuntime.jsx(components_SearchField_SearchField, { input: searchfield === null || searchfield === void 0 ? void 0 : searchfield.input, action: searchfield === null || searchfield === void 0 ? void 0 : searchfield.action }) })) }))] }))] })));
72
+ primarynav.items.map((item, index) => (jsxRuntime.jsx("li", Object.assign({ className: `${prefix}--nav--items` }, { children: jsxRuntime.jsx("a", Object.assign({ href: item.url, className: `${prefix}--nav--link` }, { children: item.label })) }), index))), subnav && (jsxRuntime.jsx("li", Object.assign({ className: `${prefix}--nav--items` }, { children: jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--nav--trigger`, onClick: handleSubnavToggle }, { children: subnav.buttonlabel })) })))] }))] })), jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--search` }, { children: jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--search--button`, type: "button", onClick: handleSearchToggle }, { children: searchlabel })) }))] })), subnav && (jsxRuntime.jsx("nav", Object.assign({ style: { display: subnavTabbable ? "block" : "none" }, className: `${prefix}--subnav`, "aria-labelledby": "secondary-navigation" }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--subnav--inner ${prefix}--container` }, { children: [jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--mobile--subnav` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--mobile--subnav--menu` }, { children: [jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--mobile--subnav--back`, onClick: handleSubnavToggle, type: "button" }, { children: subnav.mobilebacklabel })), jsxRuntime.jsx("button", Object.assign({ className: `${prefix}--header--menu--close`, onClick: handleMenuToggle }, { children: subnav.mobilecloselabel })), jsxRuntime.jsx("h6", Object.assign({ className: `${prefix}--mobile--subnav--label` }, { children: subnav.buttonlabel }))] })) })), jsxRuntime.jsx("h2", Object.assign({ className: `${prefix}--nav--label`, id: "secondary-navigation" }, { children: subnav.navlabel })), jsxRuntime.jsx("ul", Object.assign({ className: `${prefix}--subnav--set` }, { children: (subnav === null || subnav === void 0 ? void 0 : subnav.items) &&
73
+ subnav.items.map((item, index) => (jsxRuntime.jsx("li", Object.assign({ className: `${prefix}--subnav--items` }, { children: jsxRuntime.jsx("a", Object.assign({ href: item.url, className: `${prefix}--subnav--link` }, { children: item.label })) }), index))) }))] })) }))), jsxRuntime.jsx("div", Object.assign({ style: { display: searchTabbable ? "block" : "none" }, className: `${prefix}--search-box` }, { children: jsxRuntime.jsx("div", Object.assign({ className: `${prefix}--header--inner ${prefix}--container` }, { children: jsxRuntime.jsx(components_SearchField_SearchField, { input: searchfield === null || searchfield === void 0 ? void 0 : searchfield.input, action: searchfield === null || searchfield === void 0 ? void 0 : searchfield.action }) })) }))] }))] })));
48
74
  };
49
75
 
50
76
  module.exports = Navigation;
@@ -3,8 +3,8 @@
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
4
  var classNames = require('classnames');
5
5
  var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
6
- require('react');
7
6
  require('tslib');
7
+ require('react');
8
8
  require('../../GlobalCtx-10114bdd.js');
9
9
 
10
10
  const SocialMedia = ({ className, theme = "light", justify = "start", headline, icons, }) => {
@@ -1,7 +1,6 @@
1
1
  'use strict';
2
2
 
3
3
  var hooks_useGlobalSettings = require('./useGlobalSettings.js');
4
- var hooks_useVideoPlayer = require('./useVideoPlayer.js');
5
4
  require('tslib');
6
5
  require('react');
7
6
  require('react/jsx-runtime');
@@ -10,4 +9,3 @@ require('../GlobalCtx-10114bdd.js');
10
9
 
11
10
 
12
11
  exports.useGlobalSettings = hooks_useGlobalSettings;
13
- exports.useVideoPlayer = hooks_useVideoPlayer;
@@ -28,12 +28,15 @@ const cardMapper = {
28
28
  factlist: FactlistCard,
29
29
  data: DataCard,
30
30
  };
31
- const CardGroup = ({ cards, cardCount, cta, type }) => {
32
- const Cards = cardMapper[type];
31
+ const CardGroup = ({ cards, titleLevel = "p", cardCount, cta, type, alignment, size, theme, collapsed = false, }) => {
32
+ const Card = cardMapper[type];
33
33
  const { prefix } = useGlobalSettings();
34
34
  const baseClass = `${prefix}--cardgroup`;
35
- const cardGroupClasses = classNames(baseClass, `${baseClass}__count__${cardCount}`);
36
- return (jsxs("div", Object.assign({ className: cardGroupClasses }, { children: [jsx("div", Object.assign({ className: `${baseClass}--inner` }, { children: cards && cards.map((card, index) => jsx(Cards, Object.assign({}, card), index)) })), cta && (jsx("div", Object.assign({ className: `${baseClass}--button-wrap` }, { children: jsx("a", Object.assign({ className: `${prefix}--button ${prefix}--button--medium ${prefix}--button--secondary`, href: cta.url }, { children: jsx("span", Object.assign({ className: "button__label" }, { children: cta.label })) })) })))] })));
35
+ const cardGroupClasses = classNames(baseClass, `${baseClass}__count__${cardCount}`, {
36
+ [`${baseClass}__collapsed`]: collapsed,
37
+ });
38
+ return (jsxs("div", Object.assign({ className: cardGroupClasses }, { children: [jsx("div", Object.assign({ className: `${baseClass}--inner` }, { children: cards &&
39
+ cards.map((card, index) => (jsx(Card, Object.assign({}, card, { size: size, theme: theme, alignment: alignment, titleLevel: titleLevel }), index))) })), cta && (jsx("div", Object.assign({ className: `${baseClass}--button-wrap` }, { children: jsx("a", Object.assign({ className: `${prefix}--button ${prefix}--button--medium ${prefix}--button--secondary`, href: cta.url }, { children: jsx("span", Object.assign({ className: "button__label" }, { children: cta.label })) })) })))] })));
37
40
  };
38
41
 
39
42
  export { CardGroup as default };
@@ -88,6 +88,7 @@ const textCardGroup = {
88
88
  ],
89
89
  cardCount: "three",
90
90
  type: "text",
91
+ size: "narrow",
91
92
  cta: {
92
93
  label: "Discover our unique mission",
93
94
  url: "https://www.ilo.org",
@@ -133,6 +134,7 @@ const statCardGroup = {
133
134
  },
134
135
  ],
135
136
  cardCount: "three",
137
+ size: "narrow",
136
138
  type: "stat",
137
139
  cta: {
138
140
  label: "Discover our unique mission",
@@ -260,6 +262,7 @@ const multilinkCardGroup = {
260
262
  ],
261
263
  type: "multilink",
262
264
  cardCount: "three",
265
+ size: "standard",
263
266
  cta: {
264
267
  label: "Discover our unique mission",
265
268
  url: "https://www.ilo.org",
@@ -268,7 +271,6 @@ const multilinkCardGroup = {
268
271
  const promoCardGroup = {
269
272
  cards: [
270
273
  {
271
- size: "standard",
272
274
  title: "ILO welcomes first global agreement on working conditions",
273
275
  eyebrow: "Report",
274
276
  theme: "dark",
@@ -281,7 +283,6 @@ const promoCardGroup = {
281
283
  },
282
284
  },
283
285
  {
284
- size: "standard",
285
286
  title: "Renewable energy jobs hits 12.7 million globally",
286
287
  eyebrow: "High-level meeting",
287
288
  theme: "dark",
@@ -294,7 +295,6 @@ const promoCardGroup = {
294
295
  },
295
296
  },
296
297
  {
297
- size: "standard",
298
298
  title: "ILO welcomes G7 call to make a just transition",
299
299
  eyebrow: "Podcast",
300
300
  theme: "dark",
@@ -307,7 +307,6 @@ const promoCardGroup = {
307
307
  },
308
308
  },
309
309
  {
310
- size: "standard",
311
310
  title: "Telangana and Andhra Pradesh launch pre-departure handbook",
312
311
  eyebrow: "High-level meeting",
313
312
  theme: "dark",
@@ -322,6 +321,7 @@ const promoCardGroup = {
322
321
  ],
323
322
  type: "promo",
324
323
  cardCount: "three",
324
+ size: "standard",
325
325
  cta: {
326
326
  label: "Discover our unique mission",
327
327
  url: "https://www.ilo.org",
@@ -416,6 +416,7 @@ const featureCardGroup = {
416
416
  ],
417
417
  cardCount: "three",
418
418
  type: "feature",
419
+ size: "narrow",
419
420
  cta: {
420
421
  label: "Discover our unique mission",
421
422
  url: "https://www.ilo.org",
@@ -474,6 +475,7 @@ const detailCardGroup = {
474
475
  ],
475
476
  type: "detail",
476
477
  cardCount: "three",
478
+ size: "narrow",
477
479
  cta: {
478
480
  label: "Discover our unique mission",
479
481
  url: "https://www.ilo.org",
@@ -520,6 +522,7 @@ const factListCardGroup = {
520
522
  ],
521
523
  type: "factlist",
522
524
  cardCount: "three",
525
+ size: "narrow",
523
526
  cta: {
524
527
  label: "Discover our unique mission",
525
528
  url: "https://www.ilo.org",
@@ -528,7 +531,7 @@ const factListCardGroup = {
528
531
  const dataCardGroup = {
529
532
  cards: [
530
533
  {
531
- size: "standard",
534
+ size: "narrow",
532
535
  eyebrow: "Press release",
533
536
  image: "/small.jpg",
534
537
  columns: "one",
@@ -591,7 +594,6 @@ const dataCardGroup = {
591
594
  },
592
595
  },
593
596
  {
594
- size: "standard",
595
597
  eyebrow: "Report",
596
598
  image: "/small.jpg",
597
599
  columns: "one",
@@ -650,7 +652,6 @@ const dataCardGroup = {
650
652
  },
651
653
  },
652
654
  {
653
- size: "standard",
654
655
  eyebrow: "Meeting",
655
656
  image: "/small.jpg",
656
657
  columns: "one",
@@ -705,7 +706,6 @@ const dataCardGroup = {
705
706
  },
706
707
  },
707
708
  {
708
- size: "standard",
709
709
  eyebrow: "Meeting",
710
710
  image: "/small.jpg",
711
711
  columns: "one",
@@ -774,6 +774,7 @@ const dataCardGroup = {
774
774
  ],
775
775
  cardCount: "three",
776
776
  type: "data",
777
+ size: "narrow",
777
778
  cta: {
778
779
  label: "Discover our unique mission",
779
780
  url: "https://www.ilo.org",
@@ -5,14 +5,14 @@ import 'tslib';
5
5
  import 'react';
6
6
  import '../../../GlobalCtx-7fb23cfa.js';
7
7
 
8
- const DetailCard = ({ eyebrow, title, size = "narrow", intro, date, eventdetails, link, image, }) => {
8
+ const DetailCard = ({ eyebrow, title, size = "narrow", intro, date, eventdetails, link, image, titleLevel: TitleElement, }) => {
9
9
  const { prefix } = useGlobalSettings();
10
10
  const baseClass = `${prefix}--card`;
11
11
  const cardClasses = classNames(baseClass, `${baseClass}__type__detail`, {
12
12
  [`${baseClass}__action`]: link,
13
13
  [`${baseClass}__size__${size}`]: size,
14
14
  });
15
- return (jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxs("div", Object.assign({ className: `${baseClass}--wrap` }, { children: [image && (jsx("div", Object.assign({ className: `${baseClass}--image--wrapper` }, { children: jsx("picture", { children: jsx("img", { className: `${baseClass}--picture`, src: image, alt: title }) }) }))), jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && jsx("h5", Object.assign({ className: `${baseClass}--title` }, { children: title })), intro && jsx("p", Object.assign({ className: `${baseClass}--intro` }, { children: intro })), date && (jsx("time", Object.assign({ className: `${baseClass}--date`, dateTime: date.unix }, { children: date.human }))), eventdetails && (jsx("p", Object.assign({ className: `${baseClass}--date-extra` }, { children: eventdetails })))] }))] }))] })));
15
+ return (jsxs("div", Object.assign({ className: cardClasses }, { children: [link && (jsx("a", Object.assign({ className: `${baseClass}--link`, href: link, title: title }, { children: jsx("span", Object.assign({ className: `${baseClass}--link--text` }, { children: title })) }))), jsxs("div", Object.assign({ className: `${baseClass}--wrap` }, { children: [image && (jsx("div", Object.assign({ className: `${baseClass}--image--wrapper` }, { children: jsx("picture", { children: jsx("img", { className: `${baseClass}--picture`, src: image, alt: title }) }) }))), jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [eyebrow && jsx("p", Object.assign({ className: `${baseClass}--eyebrow` }, { children: eyebrow })), title && TitleElement ? (jsx(TitleElement, Object.assign({ className: `${baseClass}--title` }, { children: title }))) : (jsx("p", Object.assign({ className: `${baseClass}--title` }, { children: title }))), intro && jsx("p", Object.assign({ className: `${baseClass}--intro` }, { children: intro })), date && (jsx("time", Object.assign({ className: `${baseClass}--date`, dateTime: date.unix }, { children: date.human }))), eventdetails && (jsx("p", Object.assign({ className: `${baseClass}--date-extra` }, { children: eventdetails })))] }))] }))] })));
16
16
  };
17
17
 
18
18
  export { DetailCard as default };
@@ -7,14 +7,14 @@ import 'tslib';
7
7
  import 'react';
8
8
  import '../../../GlobalCtx-7fb23cfa.js';
9
9
 
10
- const FactlistCard = ({ title, theme = "narrow", size, list, }) => {
10
+ const FactlistCard = ({ title, theme, size = "narrow", list, titleLevel: TitleElement, }) => {
11
11
  const { prefix } = useGlobalSettings();
12
12
  const baseClass = `${prefix}--card`;
13
13
  const cardClasses = classNames(baseClass, `${baseClass}__type__factlist`, {
14
14
  [`${baseClass}__size__${size}`]: size,
15
15
  [`${baseClass}__theme__${theme}`]: theme,
16
16
  });
17
- return (jsx("div", Object.assign({ className: cardClasses }, { children: jsx("div", Object.assign({ className: `${baseClass}--wrap` }, { children: jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [title && jsx("h5", Object.assign({ className: `${baseClass}--title` }, { children: title })), list && (jsx(List, Object.assign({ alignment: "default", ordered: "unordered" }, { children: list.map((item, index) => (jsx(ListItem, Object.assign({ id: `list${index}` }, { children: jsx("p", { children: item }) })))) })))] })) })) })));
17
+ return (jsx("div", Object.assign({ className: cardClasses }, { children: jsx("div", Object.assign({ className: `${baseClass}--wrap` }, { children: jsxs("div", Object.assign({ className: `${baseClass}--content` }, { children: [title && TitleElement ? (jsx(TitleElement, Object.assign({ className: `${baseClass}--title` }, { children: title }))) : (jsx("p", Object.assign({ className: `${baseClass}--title` }, { children: title }))), list && (jsx(List, Object.assign({ alignment: "default", ordered: "unordered" }, { children: list.map((item, index) => (jsx(ListItem, Object.assign({ id: `list${index}` }, { children: jsx("p", { children: item }) })))) })))] })) })) })));
18
18
  };
19
19
 
20
20
  export { FactlistCard as default };