@ilo-org/react 0.12.0 → 0.13.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 (159) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/lib/cjs/components/Cards/CardGroup/CardGroup.js +42 -0
  3. package/lib/cjs/components/Cards/CardGroup/index.js +759 -0
  4. package/lib/cjs/components/Cards/DataCard/DataCard.js +27 -0
  5. package/lib/cjs/components/Cards/DataCard/index.js +73 -19
  6. package/lib/cjs/components/Cards/DetailCard/DetailCard.js +20 -0
  7. package/lib/cjs/components/Cards/DetailCard/index.js +17 -12
  8. package/lib/cjs/components/Cards/FactlistCard/FactListCard.js +23 -0
  9. package/lib/cjs/components/Cards/FactlistCard/index.js +16 -14
  10. package/lib/cjs/components/Cards/FeatureCard/FeatureCard.js +24 -0
  11. package/lib/cjs/components/Cards/FeatureCard/index.js +31 -16
  12. package/lib/cjs/components/Cards/MultilinkCard/MultiLinkCard.js +24 -0
  13. package/lib/cjs/components/Cards/MultilinkCard/index.js +35 -16
  14. package/lib/cjs/components/Cards/PromoCard/PromoCard.js +23 -0
  15. package/lib/cjs/components/Cards/PromoCard/index.js +18 -15
  16. package/lib/cjs/components/Cards/StatCard/StatCard.js +21 -0
  17. package/lib/cjs/components/Cards/StatCard/index.js +15 -13
  18. package/lib/cjs/components/Cards/TextCard/TextCard.js +23 -0
  19. package/lib/cjs/components/Cards/TextCard/index.js +22 -17
  20. package/lib/cjs/components/Footer/Footer.js +1 -1
  21. package/lib/cjs/components/Navigation/Navigation.js +3 -3
  22. package/lib/cjs/components/Pagination/Pagination.js +1 -1
  23. package/lib/cjs/components/index.js +10 -12
  24. package/lib/cjs/index.js +10 -12
  25. package/lib/esm/components/Cards/CardGroup/CardGroup.js +40 -0
  26. package/lib/esm/components/Cards/CardGroup/index.js +756 -0
  27. package/lib/esm/components/Cards/DataCard/DataCard.js +25 -0
  28. package/lib/esm/components/Cards/DataCard/index.js +72 -19
  29. package/lib/esm/components/Cards/DetailCard/DetailCard.js +18 -0
  30. package/lib/esm/components/Cards/DetailCard/index.js +16 -12
  31. package/lib/esm/components/Cards/FactlistCard/FactListCard.js +21 -0
  32. package/lib/esm/components/Cards/FactlistCard/index.js +15 -14
  33. package/lib/esm/components/Cards/FeatureCard/FeatureCard.js +22 -0
  34. package/lib/esm/components/Cards/FeatureCard/index.js +30 -16
  35. package/lib/esm/components/Cards/MultilinkCard/MultiLinkCard.js +22 -0
  36. package/lib/esm/components/Cards/MultilinkCard/index.js +34 -16
  37. package/lib/esm/components/Cards/PromoCard/PromoCard.js +21 -0
  38. package/lib/esm/components/Cards/PromoCard/index.js +17 -15
  39. package/lib/esm/components/Cards/StatCard/StatCard.js +19 -0
  40. package/lib/esm/components/Cards/StatCard/index.js +14 -13
  41. package/lib/esm/components/Cards/TextCard/TextCard.js +21 -0
  42. package/lib/esm/components/Cards/TextCard/index.js +21 -17
  43. package/lib/esm/components/Footer/Footer.js +1 -1
  44. package/lib/esm/components/Navigation/Navigation.js +3 -3
  45. package/lib/esm/components/Pagination/Pagination.js +1 -1
  46. package/lib/esm/components/index.js +9 -10
  47. package/lib/esm/index.js +9 -10
  48. package/lib/types/react/src/components/Cards/CardGroup/CardGroup.args.d.ts +13 -0
  49. package/lib/types/react/src/components/Cards/CardGroup/CardGroup.props.d.ts +58 -0
  50. package/lib/types/react/src/components/Cards/CardGroup/index.d.ts +3 -0
  51. package/lib/types/react/src/components/Cards/DataCard/DataCard.args.d.ts +2 -0
  52. package/lib/types/react/src/components/Cards/DataCard/DataCard.d.ts +4 -0
  53. package/lib/types/react/src/components/Cards/DataCard/DataCard.props.d.ts +50 -0
  54. package/lib/types/react/src/components/Cards/DataCard/index.d.ts +3 -4
  55. package/lib/types/react/src/components/Cards/DetailCard/DetailCard.args.d.ts +3 -0
  56. package/lib/types/react/src/components/Cards/DetailCard/DetailCard.d.ts +4 -0
  57. package/lib/types/react/src/components/Cards/DetailCard/DetailCard.props.d.ts +35 -0
  58. package/lib/types/react/src/components/Cards/DetailCard/index.d.ts +3 -4
  59. package/lib/types/react/src/components/Cards/FactlistCard/FactListCard.args.d.ts +3 -0
  60. package/lib/types/react/src/components/Cards/FactlistCard/FactListCard.d.ts +4 -0
  61. package/lib/types/react/src/components/Cards/FactlistCard/FactListCard.props.d.ts +16 -0
  62. package/lib/types/react/src/components/Cards/FactlistCard/index.d.ts +3 -4
  63. package/lib/types/react/src/components/Cards/FeatureCard/FeatureCard.args.d.ts +3 -0
  64. package/lib/types/react/src/components/Cards/FeatureCard/FeatureCard.d.ts +4 -0
  65. package/lib/types/react/src/components/Cards/FeatureCard/FeatureCard.props.d.ts +31 -0
  66. package/lib/types/react/src/components/Cards/FeatureCard/index.d.ts +3 -4
  67. package/lib/types/react/src/components/Cards/MultilinkCard/MultiLinkCard.d.ts +4 -0
  68. package/lib/types/react/src/components/Cards/MultilinkCard/MultilinkCard.args.d.ts +2 -0
  69. package/lib/types/react/src/components/Cards/MultilinkCard/MultilinkCard.props.d.ts +25 -0
  70. package/lib/types/react/src/components/Cards/MultilinkCard/index.d.ts +3 -4
  71. package/lib/types/react/src/components/Cards/PromoCard/PromoCard.args.d.ts +3 -0
  72. package/lib/types/react/src/components/Cards/PromoCard/PromoCard.d.ts +4 -0
  73. package/lib/types/react/src/components/Cards/PromoCard/PromoCard.props.d.ts +30 -0
  74. package/lib/types/react/src/components/Cards/PromoCard/index.d.ts +3 -4
  75. package/lib/types/react/src/components/Cards/StatCard/StatCard.args.d.ts +3 -0
  76. package/lib/types/react/src/components/Cards/StatCard/StatCard.d.ts +4 -0
  77. package/lib/types/react/src/components/Cards/StatCard/StatCard.props.d.ts +18 -0
  78. package/lib/types/react/src/components/Cards/StatCard/index.d.ts +3 -4
  79. package/lib/types/react/src/components/Cards/TextCard/TextCard.args.d.ts +3 -0
  80. package/lib/types/react/src/components/Cards/TextCard/TextCard.d.ts +4 -0
  81. package/lib/types/react/src/components/Cards/TextCard/TextCard.props.d.ts +26 -0
  82. package/lib/types/react/src/components/Cards/TextCard/index.d.ts +3 -4
  83. package/lib/types/react/src/components/index.d.ts +1 -1
  84. package/lib/types/react/src/types/index.d.ts +4 -0
  85. package/package.json +2 -2
  86. package/src/components/Cards/{CardGroup.args.ts → CardGroup/CardGroup.args.ts} +196 -373
  87. package/src/components/Cards/CardGroup/CardGroup.props.ts +78 -0
  88. package/src/components/Cards/CardGroup/CardGroup.tsx +54 -0
  89. package/src/components/Cards/CardGroup/index.tsx +3 -0
  90. package/src/components/Cards/DataCard/DataCard.args.ts +69 -0
  91. package/src/components/Cards/DataCard/DataCard.props.ts +60 -0
  92. package/src/components/Cards/DataCard/DataCard.tsx +107 -0
  93. package/src/components/Cards/DataCard/index.tsx +3 -107
  94. package/src/components/Cards/DetailCard/DetailCard.args.ts +17 -0
  95. package/src/components/Cards/DetailCard/DetailCard.props.ts +43 -0
  96. package/src/components/Cards/DetailCard/DetailCard.tsx +62 -0
  97. package/src/components/Cards/DetailCard/index.tsx +3 -62
  98. package/src/components/Cards/FactlistCard/FactListCard.args.ts +14 -0
  99. package/src/components/Cards/FactlistCard/FactListCard.props.ts +19 -0
  100. package/src/components/Cards/FactlistCard/FactListCard.tsx +42 -0
  101. package/src/components/Cards/FactlistCard/index.tsx +3 -42
  102. package/src/components/Cards/FeatureCard/FeatureCard.args.ts +30 -0
  103. package/src/components/Cards/FeatureCard/FeatureCard.props.ts +38 -0
  104. package/src/components/Cards/FeatureCard/FeatureCard.tsx +69 -0
  105. package/src/components/Cards/FeatureCard/index.tsx +3 -69
  106. package/src/components/Cards/MultilinkCard/MultiLinkCard.tsx +76 -0
  107. package/src/components/Cards/MultilinkCard/MultilinkCard.args.ts +33 -0
  108. package/src/components/Cards/MultilinkCard/MultilinkCard.props.ts +30 -0
  109. package/src/components/Cards/MultilinkCard/index.tsx +3 -76
  110. package/src/components/Cards/PromoCard/PromoCard.args.ts +19 -0
  111. package/src/components/Cards/PromoCard/PromoCard.props.ts +36 -0
  112. package/src/components/Cards/PromoCard/PromoCard.tsx +60 -0
  113. package/src/components/Cards/PromoCard/index.tsx +3 -60
  114. package/src/components/Cards/StatCard/StatCard.args.ts +14 -0
  115. package/src/components/Cards/StatCard/StatCard.props.ts +21 -0
  116. package/src/components/Cards/StatCard/StatCard.tsx +36 -0
  117. package/src/components/Cards/StatCard/index.tsx +3 -36
  118. package/src/components/Cards/TextCard/TextCard.args.ts +21 -0
  119. package/src/components/Cards/TextCard/TextCard.props.ts +32 -0
  120. package/src/components/Cards/TextCard/TextCard.tsx +62 -0
  121. package/src/components/Cards/TextCard/index.tsx +3 -63
  122. package/src/components/Footer/Footer.args.ts +4 -16
  123. package/src/components/Footer/Footer.tsx +41 -37
  124. package/src/components/Navigation/Navigation.tsx +5 -5
  125. package/src/components/Pagination/Pagination.tsx +2 -1
  126. package/src/components/index.ts +1 -1
  127. package/src/types/index.ts +6 -0
  128. package/lib/cjs/components/Cards/Card.js +0 -40
  129. package/lib/cjs/components/Cards/CardGroup.js +0 -33
  130. package/lib/cjs/components/Cards/index.js +0 -37
  131. package/lib/esm/components/Cards/Card.js +0 -38
  132. package/lib/esm/components/Cards/CardGroup.js +0 -31
  133. package/lib/esm/components/Cards/index.js +0 -22
  134. package/lib/types/react/src/components/Cards/Card.d.ts +0 -4
  135. package/lib/types/react/src/components/Cards/Card.props.d.ts +0 -307
  136. package/lib/types/react/src/components/Cards/CardGroup.props.d.ts +0 -16
  137. package/lib/types/react/src/components/Cards/index.d.ts +0 -11
  138. package/public/fao-logo.svg +0 -195
  139. package/public/favicon.ico +0 -0
  140. package/public/hero.jpg +0 -0
  141. package/public/ilo-dg.jpg +0 -0
  142. package/public/ilo-headquarters.jpg +0 -0
  143. package/public/large.jpg +0 -0
  144. package/public/media-file-poster.jpg +0 -0
  145. package/public/medium.jpg +0 -0
  146. package/public/small.jpg +0 -0
  147. package/public/unhcr-logo.svg +0 -1
  148. package/public/unicef-logo.png +0 -0
  149. package/public/video-example.mp4 +0 -0
  150. package/public/wfp-logo.svg +0 -1
  151. package/public/who-logo.svg +0 -1
  152. package/public/youtube-video-poster.avif +0 -0
  153. package/src/components/Cards/Card.args.ts +0 -220
  154. package/src/components/Cards/Card.props.ts +0 -382
  155. package/src/components/Cards/Card.tsx +0 -36
  156. package/src/components/Cards/CardGroup.props.ts +0 -19
  157. package/src/components/Cards/CardGroup.tsx +0 -54
  158. package/src/components/Cards/index.ts +0 -22
  159. /package/lib/types/react/src/components/Cards/{CardGroup.d.ts → CardGroup/CardGroup.d.ts} +0 -0
@@ -1,25 +1,30 @@
1
1
  'use strict';
2
2
 
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var classNames = require('classnames');
5
- var hooks_useGlobalSettings = require('../../../hooks/useGlobalSettings.js');
6
- var components_Profile_Profile = require('../../Profile/Profile.js');
3
+ var components_Cards_TextCard_TextCard = require('./TextCard.js');
4
+ require('react/jsx-runtime');
5
+ require('classnames');
6
+ require('../../../hooks/useGlobalSettings.js');
7
7
  require('tslib');
8
8
  require('react');
9
9
  require('../../../GlobalCtx-10114bdd.js');
10
+ require('../../Profile/Profile.js');
10
11
 
11
- const TextCard = ({ eyebrow, title, theme, size, date, profile, link, }) => {
12
- const { prefix } = hooks_useGlobalSettings();
13
- const baseClass = `${prefix}--card`;
14
- const wrapperClass = classNames(`${baseClass}--wrapper`);
15
- const cardClasses = classNames(baseClass, `${baseClass}__type__text`, {
16
- [`${baseClass}__action`]: link,
17
- [`${baseClass}__size__${size}`]: size,
18
- [`${baseClass}__theme__${theme}`]: theme,
19
- });
20
- console.log("heloo");
21
- console.log(profile);
22
- 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--contents--${theme}` }))] })) }))] })) })));
12
+ const TextCardArgs = {
13
+ title: "Why we need greater social justice",
14
+ eyebrow: "Podcast",
15
+ date: {
16
+ human: "20 September 2022",
17
+ unix: "1670389200",
18
+ },
19
+ theme: "light",
20
+ link: "https:/www.ilo.org",
21
+ profile: {
22
+ avatar: "/ilo-dg.jpg",
23
+ description: "Gilbert Houngbo is the Director-General of the International Labour Organization",
24
+ name: "Gilbert Houngbo",
25
+ role: "ILO Director-General",
26
+ },
23
27
  };
24
28
 
25
- module.exports = TextCard;
29
+ exports.TextCard = components_Cards_TextCard_TextCard;
30
+ exports.TextCardArgs = TextCardArgs;
@@ -18,7 +18,7 @@ const Footer = ({ className, logo, tagline, subtagline, address, linkgroup, soci
18
18
  const { prefix } = hooks_useGlobalSettings();
19
19
  const baseClass = `${prefix}--footer`;
20
20
  const footerClasses = classNames(className, baseClass);
21
- return (jsxRuntime.jsxs("footer", Object.assign({ className: footerClasses }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--main` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: "site--info" }, { children: [jsxRuntime.jsx("img", { className: `${baseClass}--logo`, src: logo, alt: "ILO Logo" }), jsxRuntime.jsx("h3", Object.assign({ className: `${baseClass}--headline` }, { children: tagline })), jsxRuntime.jsx("h4", Object.assign({ className: `${baseClass}--subhead` }, { children: subtagline }))] })), address && (jsxRuntime.jsx("div", Object.assign({ className: "address" }, { children: address.map((line, i) => (jsxRuntime.jsx("p", Object.assign({ className: "address--line" }, { children: line }), i))) }))), linkgroup && (jsxRuntime.jsx("nav", Object.assign({ className: "links" }, { children: jsxRuntime.jsx(components_LinkList_LinkList, { linkgroup: linkgroup, theme: "dark" }) }))), (socialmedia || subscribe) && (jsxRuntime.jsxs("div", Object.assign({ className: "connect" }, { children: [socialmedia && (jsxRuntime.jsx("div", Object.assign({ className: "social--links" }, { children: jsxRuntime.jsx(components_SocialMedia_SocialMedia, Object.assign({}, socialmedia, { theme: "dark" })) }))), subscribe && (jsxRuntime.jsx(components_Button_Button, { label: subscribe === null || subscribe === void 0 ? void 0 : subscribe.label, url: subscribe === null || subscribe === void 0 ? void 0 : subscribe.url, type: "primary", size: "large", target: "_blank" }))] })))] })), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--secondary` }, { children: [jsxRuntime.jsx("div", Object.assign({ className: "legal" }, { children: legal })), secondarylinks && (jsxRuntime.jsx("nav", Object.assign({ className: "secondarylinks" }, { children: jsxRuntime.jsx("ul", Object.assign({ className: "secondarylinks--list" }, { children: secondarylinks.map((link, i) => (jsxRuntime.jsx("li", Object.assign({ className: "secondarylinks--list--item" }, { children: jsxRuntime.jsx("a", Object.assign({ href: link.url, className: "secondarylinks--list--link" }, { children: link === null || link === void 0 ? void 0 : link.label }), i) })))) })) }))), jsxRuntime.jsx("a", Object.assign({ href: anchorlink === null || anchorlink === void 0 ? void 0 : anchorlink.url, className: "anchorlink" }, { children: anchorlink === null || anchorlink === void 0 ? void 0 : anchorlink.label }))] }))] })));
21
+ return (jsxRuntime.jsxs("footer", Object.assign({ className: footerClasses }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--main ${prefix}--container` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: "site--info" }, { children: [jsxRuntime.jsx("img", { className: `${baseClass}--logo`, src: logo, alt: "ILO Logo" }), jsxRuntime.jsx("h3", Object.assign({ className: `${baseClass}--headline` }, { children: tagline })), jsxRuntime.jsx("h4", Object.assign({ className: `${baseClass}--subhead` }, { children: subtagline }))] })), address && (jsxRuntime.jsx("div", Object.assign({ className: "address" }, { children: address.map((line, i) => (jsxRuntime.jsx("p", Object.assign({ className: "address--line" }, { children: line }), i))) }))), linkgroup && (jsxRuntime.jsx("nav", Object.assign({ className: "links" }, { children: jsxRuntime.jsx(components_LinkList_LinkList, { linkgroup: linkgroup, theme: "dark" }) }))), socialmedia && (jsxRuntime.jsx("div", Object.assign({ className: "connect" }, { children: jsxRuntime.jsx("div", Object.assign({ className: "social--links" }, { children: jsxRuntime.jsx(components_SocialMedia_SocialMedia, Object.assign({}, socialmedia, { theme: "dark" })) })) }))), subscribe && (jsxRuntime.jsx("div", Object.assign({ className: "subscribe" }, { children: jsxRuntime.jsx(components_Button_Button, { label: subscribe === null || subscribe === void 0 ? void 0 : subscribe.label, url: subscribe === null || subscribe === void 0 ? void 0 : subscribe.url, type: "primary", size: "large", target: "_blank" }) })))] })), jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--secondary` }, { children: jsxRuntime.jsxs("div", Object.assign({ className: `${prefix}--container` }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--secondary--details` }, { children: [jsxRuntime.jsx("div", Object.assign({ className: "legal" }, { children: legal })), secondarylinks && (jsxRuntime.jsx("nav", Object.assign({ className: "secondarylinks" }, { children: jsxRuntime.jsx("ul", Object.assign({ className: "secondarylinks--list" }, { children: secondarylinks.map((link, i) => (jsxRuntime.jsx("li", Object.assign({ className: "secondarylinks--list--item" }, { children: jsxRuntime.jsx("a", Object.assign({ href: link.url, className: "secondarylinks--list--link" }, { children: link === null || link === void 0 ? void 0 : link.label }), i) })))) })) })))] })), jsxRuntime.jsx("a", Object.assign({ href: anchorlink === null || anchorlink === void 0 ? void 0 : anchorlink.url, className: "anchorlink" }, { children: anchorlink === null || anchorlink === void 0 ? void 0 : anchorlink.label }))] })) }))] })));
22
22
  };
23
23
 
24
24
  module.exports = Footer;
@@ -41,10 +41,10 @@ const Navigation = ({ logo, mobilelogo, siteurl, tagline, primarynav, subnav, me
41
41
  const handleSubnavToggle = () => {
42
42
  setSubnavToggleOpen(!toggleSubnavOpen);
43
43
  };
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` }, { 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` }, { 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` }, { 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) &&
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) &&
45
45
  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` }, { 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` }, { 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 }) })) }))] }))] })));
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 }) })) }))] }))] })));
48
48
  };
49
49
 
50
50
  module.exports = Navigation;
@@ -43,7 +43,7 @@ const Pagination = ({ className, callback, currentPage, firstPageUrl, firstPageT
43
43
  callback(e);
44
44
  }
45
45
  };
46
- return (jsxRuntime.jsxs("div", Object.assign({ className: paginationClasses }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--previous-set` }, { children: [jsxRuntime.jsx("a", Object.assign({ className: firstClasses, onClick: (e) => handleClick(e), href: firstPageUrl, title: firstPageTitle }, { children: firstPageTitle })), jsxRuntime.jsx("a", Object.assign({ className: prevClasses, onClick: (e) => handleClick(e), href: prevPageUrl, title: prevPageTitle }, { children: prevPageTitle }))] })), jsxRuntime.jsxs("p", Object.assign({ className: `${baseClass}--page` }, { children: [jsxRuntime.jsx("span", { children: currentPage + 1 }), " ", pageCountPreposition, " ", jsxRuntime.jsx("span", { children: totalPages })] })), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--next-set` }, { children: [jsxRuntime.jsx("a", Object.assign({ className: nextClasses, onClick: (e) => handleClick(e), href: nextPageUrl, title: nextPageTitle }, { children: nextPageTitle })), jsxRuntime.jsx("a", Object.assign({ className: lastClasses, onClick: (e) => handleClick(e), href: lastPageUrl, title: lastPageTitle }, { children: lastPageTitle }))] }))] })));
46
+ return (jsxRuntime.jsxs("div", Object.assign({ className: paginationClasses }, { children: [jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--previous-set` }, { children: [jsxRuntime.jsx("a", Object.assign({ className: firstClasses, onClick: (e) => handleClick(e), href: firstPageUrl, title: firstPageTitle }, { children: firstPageTitle })), jsxRuntime.jsx("a", Object.assign({ className: prevClasses, onClick: (e) => handleClick(e), href: prevPageUrl, title: prevPageTitle }, { children: prevPageTitle }))] })), jsxRuntime.jsxs("p", Object.assign({ className: `${baseClass}--page` }, { children: [jsxRuntime.jsx("span", { children: currentPage + 1 }), jsxRuntime.jsx("span", { children: pageCountPreposition }), jsxRuntime.jsx("span", { children: totalPages })] })), jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--next-set` }, { children: [jsxRuntime.jsx("a", Object.assign({ className: nextClasses, onClick: (e) => handleClick(e), href: nextPageUrl, title: nextPageTitle }, { children: nextPageTitle })), jsxRuntime.jsx("a", Object.assign({ className: lastClasses, onClick: (e) => handleClick(e), href: lastPageUrl, title: lastPageTitle }, { children: lastPageTitle }))] }))] })));
47
47
  };
48
48
 
49
49
  module.exports = Pagination;
@@ -52,8 +52,7 @@ var components_TableOfContents_TableOfContents = require('./TableOfContents/Tabl
52
52
  var components_Footer_Footer = require('./Footer/Footer.js');
53
53
  var components_LocalNav_LocalNav = require('./LocalNav/LocalNav.js');
54
54
  var components_Navigation_Navigation = require('./Navigation/Navigation.js');
55
- var components_Cards_Card = require('./Cards/Card.js');
56
- var components_Cards_CardGroup = require('./Cards/CardGroup.js');
55
+ var components_Cards_CardGroup_CardGroup = require('./Cards/CardGroup/CardGroup.js');
57
56
  var components_Breadcrumb_Breadcrumb = require('./Breadcrumb/Breadcrumb.js');
58
57
  var components_Tabs_Tabs = require('./Tabs/Tabs.js');
59
58
  require('../hooks/useGlobalSettings.js');
@@ -79,15 +78,15 @@ require('videojs-youtube');
79
78
  require('video.js');
80
79
  require('@ilo-org/icons-react');
81
80
  require('./Logo/Logo.js');
82
- require('./Cards/FeatureCard/index.js');
83
- require('./Cards/DataCard/index.js');
84
- require('./Cards/DetailCard/index.js');
85
- require('./Cards/FactlistCard/index.js');
81
+ require('./Cards/DataCard/DataCard.js');
82
+ require('./Cards/DetailCard/DetailCard.js');
83
+ require('./Cards/FactlistCard/FactListCard.js');
86
84
  require('./List/ListItem.js');
87
- require('./Cards/MultilinkCard/index.js');
88
- require('./Cards/PromoCard/index.js');
89
- require('./Cards/StatCard/index.js');
90
- require('./Cards/TextCard/index.js');
85
+ require('./Cards/FeatureCard/FeatureCard.js');
86
+ require('./Cards/MultilinkCard/MultiLinkCard.js');
87
+ require('./Cards/PromoCard/PromoCard.js');
88
+ require('./Cards/StatCard/StatCard.js');
89
+ require('./Cards/TextCard/TextCard.js');
91
90
 
92
91
 
93
92
 
@@ -132,7 +131,6 @@ exports.TableOfContents = components_TableOfContents_TableOfContents;
132
131
  exports.Footer = components_Footer_Footer;
133
132
  exports.LocalNav = components_LocalNav_LocalNav;
134
133
  exports.Navigation = components_Navigation_Navigation;
135
- exports.Card = components_Cards_Card;
136
- exports.CardGroup = components_Cards_CardGroup;
134
+ exports.CardGroup = components_Cards_CardGroup_CardGroup;
137
135
  exports.Breadcrumb = components_Breadcrumb_Breadcrumb;
138
136
  exports.Tabs = components_Tabs_Tabs;
package/lib/cjs/index.js CHANGED
@@ -52,8 +52,7 @@ var components_TableOfContents_TableOfContents = require('./components/TableOfCo
52
52
  var components_Footer_Footer = require('./components/Footer/Footer.js');
53
53
  var components_LocalNav_LocalNav = require('./components/LocalNav/LocalNav.js');
54
54
  var components_Navigation_Navigation = require('./components/Navigation/Navigation.js');
55
- var components_Cards_Card = require('./components/Cards/Card.js');
56
- var components_Cards_CardGroup = require('./components/Cards/CardGroup.js');
55
+ var components_Cards_CardGroup_CardGroup = require('./components/Cards/CardGroup/CardGroup.js');
57
56
  var components_Breadcrumb_Breadcrumb = require('./components/Breadcrumb/Breadcrumb.js');
58
57
  var components_Tabs_Tabs = require('./components/Tabs/Tabs.js');
59
58
  require('./hooks/useGlobalSettings.js');
@@ -79,15 +78,15 @@ require('./components/Video/VideoPlayer.js');
79
78
  require('videojs-youtube');
80
79
  require('video.js');
81
80
  require('./components/Logo/Logo.js');
82
- require('./components/Cards/FeatureCard/index.js');
83
- require('./components/Cards/DataCard/index.js');
84
- require('./components/Cards/DetailCard/index.js');
85
- require('./components/Cards/FactlistCard/index.js');
81
+ require('./components/Cards/DataCard/DataCard.js');
82
+ require('./components/Cards/DetailCard/DetailCard.js');
83
+ require('./components/Cards/FactlistCard/FactListCard.js');
86
84
  require('./components/List/ListItem.js');
87
- require('./components/Cards/MultilinkCard/index.js');
88
- require('./components/Cards/PromoCard/index.js');
89
- require('./components/Cards/StatCard/index.js');
90
- require('./components/Cards/TextCard/index.js');
85
+ require('./components/Cards/FeatureCard/FeatureCard.js');
86
+ require('./components/Cards/MultilinkCard/MultiLinkCard.js');
87
+ require('./components/Cards/PromoCard/PromoCard.js');
88
+ require('./components/Cards/StatCard/StatCard.js');
89
+ require('./components/Cards/TextCard/TextCard.js');
91
90
 
92
91
 
93
92
 
@@ -132,7 +131,6 @@ exports.TableOfContents = components_TableOfContents_TableOfContents;
132
131
  exports.Footer = components_Footer_Footer;
133
132
  exports.LocalNav = components_LocalNav_LocalNav;
134
133
  exports.Navigation = components_Navigation_Navigation;
135
- exports.Card = components_Cards_Card;
136
- exports.CardGroup = components_Cards_CardGroup;
134
+ exports.CardGroup = components_Cards_CardGroup_CardGroup;
137
135
  exports.Breadcrumb = components_Breadcrumb_Breadcrumb;
138
136
  exports.Tabs = components_Tabs_Tabs;
@@ -0,0 +1,40 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import classNames from 'classnames';
3
+ import useGlobalSettings from '../../../hooks/useGlobalSettings.js';
4
+ import DataCard from '../DataCard/DataCard.js';
5
+ import DetailCard from '../DetailCard/DetailCard.js';
6
+ import FactlistCard from '../FactlistCard/FactListCard.js';
7
+ import FeatureCard from '../FeatureCard/FeatureCard.js';
8
+ import MultilinkCard from '../MultilinkCard/MultiLinkCard.js';
9
+ import PromoCard from '../PromoCard/PromoCard.js';
10
+ import StatCard from '../StatCard/StatCard.js';
11
+ import TextCard from '../TextCard/TextCard.js';
12
+ import 'tslib';
13
+ import 'react';
14
+ import '../../../GlobalCtx-7fb23cfa.js';
15
+ import '../../Link/Link.js';
16
+ import '../../List/List.js';
17
+ import '../../../ListCtx-da435fdf.js';
18
+ import '../../List/ListItem.js';
19
+ import '../../LinkList/LinkList.js';
20
+ import '../../Profile/Profile.js';
21
+
22
+ const cardMapper = {
23
+ stat: StatCard,
24
+ multilink: MultilinkCard,
25
+ text: TextCard,
26
+ promo: PromoCard,
27
+ feature: FeatureCard,
28
+ detail: DetailCard,
29
+ factlist: FactlistCard,
30
+ data: DataCard,
31
+ };
32
+ const CardGroup = ({ cards, cardCount, cta, type }) => {
33
+ const Cards = cardMapper[type];
34
+ const { prefix } = useGlobalSettings();
35
+ const baseClass = `${prefix}--cardgroup`;
36
+ const cardGroupClasses = classNames(baseClass, `${baseClass}__count__${cardCount}`);
37
+ 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 })) })) })))] })));
38
+ };
39
+
40
+ export { CardGroup as default };