@dnanpm/ui-components 0.8.0 → 0.10.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 (249) hide show
  1. package/README.md +13 -0
  2. package/dist/components/Accordion/Accordion.css +9 -2
  3. package/dist/components/AccordionItem/AccordionItem.cjs +4 -4
  4. package/dist/components/AccordionItem/AccordionItem.cjs.map +1 -1
  5. package/dist/components/AccordionItem/AccordionItem.css +8 -2
  6. package/dist/components/AccordionItem/AccordionItem.d.ts.map +1 -1
  7. package/dist/components/AccordionItem/AccordionItem.js +2 -2
  8. package/dist/components/AccordionItem/AccordionItem.js.map +1 -1
  9. package/dist/components/Avatar/Avatar.cjs +83 -0
  10. package/dist/components/Avatar/Avatar.cjs.map +1 -0
  11. package/dist/components/Avatar/Avatar.css +188 -0
  12. package/dist/components/Avatar/Avatar.d.ts +3 -0
  13. package/dist/components/Avatar/Avatar.d.ts.map +1 -0
  14. package/dist/components/Avatar/Avatar.js +83 -0
  15. package/dist/components/Avatar/Avatar.js.map +1 -0
  16. package/dist/components/Avatar/Avatar.module.css.cjs +40 -0
  17. package/dist/components/Avatar/Avatar.module.css.cjs.map +1 -0
  18. package/dist/components/Avatar/Avatar.module.css.js +40 -0
  19. package/dist/components/Avatar/Avatar.module.css.js.map +1 -0
  20. package/dist/components/Avatar/Avatar.types.d.ts +66 -0
  21. package/dist/components/Avatar/Avatar.types.d.ts.map +1 -0
  22. package/dist/components/Avatar/Avatar.utils.cjs +17 -0
  23. package/dist/components/Avatar/Avatar.utils.cjs.map +1 -0
  24. package/dist/components/Avatar/Avatar.utils.d.ts +6 -0
  25. package/dist/components/Avatar/Avatar.utils.d.ts.map +1 -0
  26. package/dist/components/Avatar/Avatar.utils.js +17 -0
  27. package/dist/components/Avatar/Avatar.utils.js.map +1 -0
  28. package/dist/components/Avatar/index.d.ts +3 -0
  29. package/dist/components/Avatar/index.d.ts.map +1 -0
  30. package/dist/components/Breadcrumb/Breadcrumb.cjs +9 -12
  31. package/dist/components/Breadcrumb/Breadcrumb.cjs.map +1 -1
  32. package/dist/components/Breadcrumb/Breadcrumb.css +20 -17
  33. package/dist/components/Breadcrumb/Breadcrumb.d.ts.map +1 -1
  34. package/dist/components/Breadcrumb/Breadcrumb.js +2 -5
  35. package/dist/components/Breadcrumb/Breadcrumb.js.map +1 -1
  36. package/dist/components/Breadcrumb/Breadcrumb.module.css.cjs +5 -8
  37. package/dist/components/Breadcrumb/Breadcrumb.module.css.cjs.map +1 -1
  38. package/dist/components/Breadcrumb/Breadcrumb.module.css.js +5 -8
  39. package/dist/components/Breadcrumb/Breadcrumb.module.css.js.map +1 -1
  40. package/dist/components/Button/Button.cjs +29 -3
  41. package/dist/components/Button/Button.cjs.map +1 -1
  42. package/dist/components/Button/Button.css +76 -30
  43. package/dist/components/Button/Button.d.ts +1 -1
  44. package/dist/components/Button/Button.d.ts.map +1 -1
  45. package/dist/components/Button/Button.js +28 -2
  46. package/dist/components/Button/Button.js.map +1 -1
  47. package/dist/components/Button/Button.module.css.cjs +19 -11
  48. package/dist/components/Button/Button.module.css.cjs.map +1 -1
  49. package/dist/components/Button/Button.module.css.js +19 -11
  50. package/dist/components/Button/Button.module.css.js.map +1 -1
  51. package/dist/components/Button/Button.types.d.ts +20 -3
  52. package/dist/components/Button/Button.types.d.ts.map +1 -1
  53. package/dist/components/Button/index.d.ts +1 -1
  54. package/dist/components/Button/index.d.ts.map +1 -1
  55. package/dist/components/ButtonCard/ButtonCard.cjs +19 -14
  56. package/dist/components/ButtonCard/ButtonCard.cjs.map +1 -1
  57. package/dist/components/ButtonCard/ButtonCard.css +62 -20
  58. package/dist/components/ButtonCard/ButtonCard.d.ts +2 -1
  59. package/dist/components/ButtonCard/ButtonCard.d.ts.map +1 -1
  60. package/dist/components/ButtonCard/ButtonCard.js +17 -12
  61. package/dist/components/ButtonCard/ButtonCard.js.map +1 -1
  62. package/dist/components/ButtonCard/ButtonCard.module.css.cjs +14 -12
  63. package/dist/components/ButtonCard/ButtonCard.module.css.cjs.map +1 -1
  64. package/dist/components/ButtonCard/ButtonCard.module.css.js +14 -12
  65. package/dist/components/ButtonCard/ButtonCard.module.css.js.map +1 -1
  66. package/dist/components/ButtonCard/ButtonCard.types.d.ts +3 -2
  67. package/dist/components/ButtonCard/ButtonCard.types.d.ts.map +1 -1
  68. package/dist/components/Checkbox/Checkbox.cjs +105 -0
  69. package/dist/components/Checkbox/Checkbox.cjs.map +1 -0
  70. package/dist/components/Checkbox/Checkbox.css +323 -0
  71. package/dist/components/Checkbox/Checkbox.d.ts +3 -0
  72. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -0
  73. package/dist/components/Checkbox/Checkbox.js +105 -0
  74. package/dist/components/Checkbox/Checkbox.js.map +1 -0
  75. package/dist/components/Checkbox/Checkbox.module.css.cjs +35 -0
  76. package/dist/components/Checkbox/Checkbox.module.css.cjs.map +1 -0
  77. package/dist/components/Checkbox/Checkbox.module.css.js +35 -0
  78. package/dist/components/Checkbox/Checkbox.module.css.js.map +1 -0
  79. package/dist/components/Checkbox/Checkbox.types.d.ts +47 -0
  80. package/dist/components/Checkbox/Checkbox.types.d.ts.map +1 -0
  81. package/dist/components/Checkbox/index.d.ts +3 -0
  82. package/dist/components/Checkbox/index.d.ts.map +1 -0
  83. package/dist/components/ContentCard/ContentCard.cjs +97 -0
  84. package/dist/components/ContentCard/ContentCard.cjs.map +1 -0
  85. package/dist/components/ContentCard/ContentCard.css +254 -0
  86. package/dist/components/ContentCard/ContentCard.d.ts +3 -0
  87. package/dist/components/ContentCard/ContentCard.d.ts.map +1 -0
  88. package/dist/components/ContentCard/ContentCard.js +97 -0
  89. package/dist/components/ContentCard/ContentCard.js.map +1 -0
  90. package/dist/components/ContentCard/ContentCard.module.css.cjs +24 -0
  91. package/dist/components/ContentCard/ContentCard.module.css.cjs.map +1 -0
  92. package/dist/components/ContentCard/ContentCard.module.css.js +25 -0
  93. package/dist/components/ContentCard/ContentCard.module.css.js.map +1 -0
  94. package/dist/components/ContentCard/ContentCard.types.d.ts +100 -0
  95. package/dist/components/ContentCard/ContentCard.types.d.ts.map +1 -0
  96. package/dist/components/ContentCard/index.d.ts +3 -0
  97. package/dist/components/ContentCard/index.d.ts.map +1 -0
  98. package/dist/components/Drawer/Drawer.cjs +15 -7
  99. package/dist/components/Drawer/Drawer.cjs.map +1 -1
  100. package/dist/components/Drawer/Drawer.css +47 -45
  101. package/dist/components/Drawer/Drawer.d.ts.map +1 -1
  102. package/dist/components/Drawer/Drawer.js +12 -4
  103. package/dist/components/Drawer/Drawer.js.map +1 -1
  104. package/dist/components/Drawer/Drawer.module.css.cjs +16 -16
  105. package/dist/components/Drawer/Drawer.module.css.js +16 -16
  106. package/dist/components/Footer/Footer.cjs +8 -9
  107. package/dist/components/Footer/Footer.cjs.map +1 -1
  108. package/dist/components/Footer/Footer.css +91 -84
  109. package/dist/components/Footer/Footer.d.ts.map +1 -1
  110. package/dist/components/Footer/Footer.js +1 -2
  111. package/dist/components/Footer/Footer.js.map +1 -1
  112. package/dist/components/Footer/Footer.module.css.cjs +39 -39
  113. package/dist/components/Footer/Footer.module.css.js +39 -39
  114. package/dist/components/FunctionButton/FunctionButton.cjs +2 -2
  115. package/dist/components/FunctionButton/FunctionButton.cjs.map +1 -1
  116. package/dist/components/FunctionButton/FunctionButton.css +5 -2
  117. package/dist/components/FunctionButton/FunctionButton.js +1 -1
  118. package/dist/components/FunctionButton/FunctionButton.js.map +1 -1
  119. package/dist/components/Hero/Hero.cjs +30 -29
  120. package/dist/components/Hero/Hero.cjs.map +1 -1
  121. package/dist/components/Hero/Hero.css +86 -74
  122. package/dist/components/Hero/Hero.d.ts +1 -1
  123. package/dist/components/Hero/Hero.d.ts.map +1 -1
  124. package/dist/components/Hero/Hero.js +30 -29
  125. package/dist/components/Hero/Hero.js.map +1 -1
  126. package/dist/components/Hero/Hero.module.css.cjs +20 -17
  127. package/dist/components/Hero/Hero.module.css.cjs.map +1 -1
  128. package/dist/components/Hero/Hero.module.css.js +20 -17
  129. package/dist/components/Hero/Hero.module.css.js.map +1 -1
  130. package/dist/components/Hero/Hero.types.d.ts +2 -6
  131. package/dist/components/Hero/Hero.types.d.ts.map +1 -1
  132. package/dist/components/IconButton/IconButton.cjs +3 -4
  133. package/dist/components/IconButton/IconButton.cjs.map +1 -1
  134. package/dist/components/IconButton/IconButton.css +5 -2
  135. package/dist/components/IconButton/IconButton.d.ts.map +1 -1
  136. package/dist/components/IconButton/IconButton.js +1 -2
  137. package/dist/components/IconButton/IconButton.js.map +1 -1
  138. package/dist/components/Label/Label.css +5 -2
  139. package/dist/components/MainNavigation/MainNavigation.cjs +556 -191
  140. package/dist/components/MainNavigation/MainNavigation.cjs.map +1 -1
  141. package/dist/components/MainNavigation/MainNavigation.css +297 -170
  142. package/dist/components/MainNavigation/MainNavigation.d.ts +1 -1
  143. package/dist/components/MainNavigation/MainNavigation.d.ts.map +1 -1
  144. package/dist/components/MainNavigation/MainNavigation.js +526 -161
  145. package/dist/components/MainNavigation/MainNavigation.js.map +1 -1
  146. package/dist/components/MainNavigation/MainNavigation.module.css.cjs +80 -68
  147. package/dist/components/MainNavigation/MainNavigation.module.css.cjs.map +1 -1
  148. package/dist/components/MainNavigation/MainNavigation.module.css.js +80 -68
  149. package/dist/components/MainNavigation/MainNavigation.module.css.js.map +1 -1
  150. package/dist/components/MainNavigation/MainNavigation.types.d.ts +55 -21
  151. package/dist/components/MainNavigation/MainNavigation.types.d.ts.map +1 -1
  152. package/dist/components/MainNavigation/MainNavigation.utils.cjs +28 -4
  153. package/dist/components/MainNavigation/MainNavigation.utils.cjs.map +1 -1
  154. package/dist/components/MainNavigation/MainNavigation.utils.d.ts +11 -1
  155. package/dist/components/MainNavigation/MainNavigation.utils.d.ts.map +1 -1
  156. package/dist/components/MainNavigation/MainNavigation.utils.js +28 -4
  157. package/dist/components/MainNavigation/MainNavigation.utils.js.map +1 -1
  158. package/dist/components/MainNavigation/index.d.ts +1 -1
  159. package/dist/components/MainNavigation/index.d.ts.map +1 -1
  160. package/dist/components/Modal/Modal.cjs +14 -6
  161. package/dist/components/Modal/Modal.cjs.map +1 -1
  162. package/dist/components/Modal/Modal.css +43 -40
  163. package/dist/components/Modal/Modal.d.ts.map +1 -1
  164. package/dist/components/Modal/Modal.js +12 -4
  165. package/dist/components/Modal/Modal.js.map +1 -1
  166. package/dist/components/Modal/Modal.module.css.cjs +18 -18
  167. package/dist/components/Modal/Modal.module.css.js +18 -18
  168. package/dist/components/Notification/Notification.cjs +3 -2
  169. package/dist/components/Notification/Notification.cjs.map +1 -1
  170. package/dist/components/Notification/Notification.css +20 -12
  171. package/dist/components/Notification/Notification.d.ts.map +1 -1
  172. package/dist/components/Notification/Notification.js +2 -1
  173. package/dist/components/Notification/Notification.js.map +1 -1
  174. package/dist/components/Notification/Notification.module.css.cjs +9 -9
  175. package/dist/components/Notification/Notification.module.css.js +9 -9
  176. package/dist/components/Pagination/Pagination.cjs +142 -0
  177. package/dist/components/Pagination/Pagination.cjs.map +1 -0
  178. package/dist/components/Pagination/Pagination.css +256 -0
  179. package/dist/components/Pagination/Pagination.d.ts +3 -0
  180. package/dist/components/Pagination/Pagination.d.ts.map +1 -0
  181. package/dist/components/Pagination/Pagination.js +142 -0
  182. package/dist/components/Pagination/Pagination.js.map +1 -0
  183. package/dist/components/Pagination/Pagination.module.css.cjs +34 -0
  184. package/dist/components/Pagination/Pagination.module.css.cjs.map +1 -0
  185. package/dist/components/Pagination/Pagination.module.css.js +34 -0
  186. package/dist/components/Pagination/Pagination.module.css.js.map +1 -0
  187. package/dist/components/Pagination/Pagination.types.d.ts +20 -0
  188. package/dist/components/Pagination/Pagination.types.d.ts.map +1 -0
  189. package/dist/components/Pagination/Pagination.utils.cjs +76 -0
  190. package/dist/components/Pagination/Pagination.utils.cjs.map +1 -0
  191. package/dist/components/Pagination/Pagination.utils.d.ts +21 -0
  192. package/dist/components/Pagination/Pagination.utils.d.ts.map +1 -0
  193. package/dist/components/Pagination/Pagination.utils.js +76 -0
  194. package/dist/components/Pagination/Pagination.utils.js.map +1 -0
  195. package/dist/components/Pagination/index.d.ts +3 -0
  196. package/dist/components/Pagination/index.d.ts.map +1 -0
  197. package/dist/components/Pictograph/Pictograph.css +9 -2
  198. package/dist/components/Pictograph/PictographItem.css +9 -2
  199. package/dist/components/Quote/Quote.css +5 -2
  200. package/dist/components/Spinner/Spinner.css +9 -2
  201. package/dist/design-tokens/dist/tokens.cjs +5 -0
  202. package/dist/design-tokens/dist/tokens.cjs.map +1 -0
  203. package/dist/design-tokens/dist/tokens.js +5 -0
  204. package/dist/design-tokens/dist/tokens.js.map +1 -0
  205. package/dist/index.cjs +8 -0
  206. package/dist/index.cjs.map +1 -1
  207. package/dist/index.d.ts +10 -2
  208. package/dist/index.d.ts.map +1 -1
  209. package/dist/index.js +8 -0
  210. package/dist/index.js.map +1 -1
  211. package/dist/styles/utilities.css +6 -0
  212. package/dist/styles/utils/elevation.css +34 -26
  213. package/dist/styles/utils/focus.css +63 -65
  214. package/dist/styles/utils/index.cjs +33 -0
  215. package/dist/styles/utils/index.cjs.map +1 -0
  216. package/dist/styles/utils/index.d.ts +20 -0
  217. package/dist/styles/utils/index.d.ts.map +1 -0
  218. package/dist/styles/utils/index.js +33 -0
  219. package/dist/styles/utils/index.js.map +1 -0
  220. package/dist/styles/utils/overlay.css +35 -28
  221. package/dist/styles/utils/text-decoration.css +19 -12
  222. package/dist/styles.css +46 -12
  223. package/dist/utils/index.d.ts +1 -0
  224. package/dist/utils/index.d.ts.map +1 -1
  225. package/dist/utils/isRenderable/index.d.ts +2 -0
  226. package/dist/utils/isRenderable/index.d.ts.map +1 -0
  227. package/dist/utils/isRenderable/isRenderable.cjs +5 -0
  228. package/dist/utils/isRenderable/isRenderable.cjs.map +1 -0
  229. package/dist/utils/isRenderable/isRenderable.d.ts +4 -0
  230. package/dist/utils/isRenderable/isRenderable.d.ts.map +1 -0
  231. package/dist/utils/isRenderable/isRenderable.js +5 -0
  232. package/dist/utils/isRenderable/isRenderable.js.map +1 -0
  233. package/package.json +12 -4
  234. package/dist/styles/utils/elevation.module.css.cjs +0 -16
  235. package/dist/styles/utils/elevation.module.css.cjs.map +0 -1
  236. package/dist/styles/utils/elevation.module.css.js +0 -16
  237. package/dist/styles/utils/elevation.module.css.js.map +0 -1
  238. package/dist/styles/utils/focus.module.css.cjs +0 -16
  239. package/dist/styles/utils/focus.module.css.cjs.map +0 -1
  240. package/dist/styles/utils/focus.module.css.js +0 -16
  241. package/dist/styles/utils/focus.module.css.js.map +0 -1
  242. package/dist/styles/utils/overlay.module.css.cjs +0 -13
  243. package/dist/styles/utils/overlay.module.css.cjs.map +0 -1
  244. package/dist/styles/utils/overlay.module.css.js +0 -13
  245. package/dist/styles/utils/overlay.module.css.js.map +0 -1
  246. package/dist/styles/utils/text-decoration.module.css.cjs +0 -13
  247. package/dist/styles/utils/text-decoration.module.css.cjs.map +0 -1
  248. package/dist/styles/utils/text-decoration.module.css.js +0 -13
  249. package/dist/styles/utils/text-decoration.module.css.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.js","sources":["../../../src/components/Footer/Footer.tsx"],"sourcesContent":["import { useId } from 'react';\nimport { ArrowRight } from '@dnanpm/icons';\nimport { AccordionItem } from '../AccordionItem';\nimport { IconButton } from '../IconButton';\nimport { cn } from '../../utils/cn';\nimport focusStyles from '../../styles/utils/focus.module.css';\nimport textDecorationStyles from '../../styles/utils/text-decoration.module.css';\nimport appStoreBadge from './assets/app-store-badge.svg';\nimport googlePlayBadge from './assets/google-play-badge.svg';\nimport styles from './Footer.module.css';\nimport {\n defaultAppStoreAriaLabel,\n defaultCopyrightLabel,\n defaultGooglePlayAriaLabel,\n defaultRenderLink,\n defaultSocialAriaLabel,\n resolveSocialIcon,\n resolveTopSectionIcon,\n} from './Footer.utils';\nimport type {\n FooterAppLink,\n FooterLink,\n FooterLinkProps,\n FooterProps,\n FooterRenderLink,\n} from './Footer.types';\n\nconst linkClasses = (extra?: string) =>\n cn(styles.footer__link, textDecorationStyles.underlineLink, focusStyles.focusable, extra);\n\nconst renderNavLink = (link: FooterLink, renderLink: FooterRenderLink) =>\n renderLink(\n {\n href: link.href,\n className: linkClasses(),\n 'aria-label': link.ariaLabel,\n children: link.label,\n },\n { external: link.external ?? false },\n );\n\nconst renderBadge = (\n link: FooterAppLink,\n src: string,\n renderLink: FooterRenderLink,\n fallbackAriaLabel: string,\n) =>\n renderLink(\n {\n href: link.href,\n className: cn(styles.footer__badge, focusStyles.focusable),\n 'aria-label': link.ariaLabel ?? fallbackAriaLabel,\n children: <img src={src} alt=\"\" aria-hidden=\"true\" />,\n },\n { external: true },\n );\n\nexport const Footer = ({\n topSection,\n navigation,\n socialLinks,\n organizations,\n currentOrganizationId,\n languages,\n currentLanguageCode,\n appLinks,\n mandatoryLinks,\n copyrightLabel,\n renderLink = defaultRenderLink,\n onChatOpen,\n onCookieSettingsClick,\n navigationLabel = 'Footer linkit',\n socialLabel = 'DNA sosiaalisessa mediassa',\n organizationsLabel = 'Valitse sivusto',\n languagesLabel = 'Valitse kieli',\n mandatoryLinksLabel = 'Lakisääteiset linkit',\n className,\n ref,\n ...props\n}: FooterProps) => {\n const visibleMandatoryLinks = (mandatoryLinks ?? []).filter(\n (link) => !link.opensCookieSettings || onCookieSettingsClick,\n );\n\n const hasBadges = Boolean(appLinks?.appStore || appLinks?.googlePlay);\n const topSectionHeadingId = useId();\n\n return (\n <footer\n ref={ref}\n data-color-scheme=\"dark\"\n className={cn(styles.footer, className)}\n {...props}\n >\n {topSection && topSection.length > 0 && (\n <div className={styles.footer__top}>\n <div className={cn(styles.footer__inner, styles['footer__top-row'])}>\n {topSection.map((group, index) => {\n const Icon = resolveTopSectionIcon(group.icon);\n const links = group.links.filter(\n (link) => !link.opensChat || onChatOpen,\n );\n // Names the section as a landmark so it is discoverable alongside the main nav.\n const headingId = `${topSectionHeadingId}-${index}`;\n\n return (\n <section\n key={group.title}\n aria-labelledby={headingId}\n className={styles['footer__top-column']}\n >\n <div className={styles['footer__top-heading']}>\n {Icon && (\n <Icon\n className={styles['footer__top-icon']}\n aria-hidden=\"true\"\n />\n )}\n <h2 id={headingId} className={styles['footer__top-title']}>\n {group.title}\n </h2>\n </div>\n {links.length > 0 && (\n <ul className={styles['footer__top-links']}>\n {links.map((link) => (\n <li key={link.label}>\n {link.opensChat ? (\n <IconButton\n icon={ArrowRight}\n onClick={onChatOpen}\n className={styles['footer__top-link']}\n labelBehavior=\"wrap\"\n >\n {link.label}\n </IconButton>\n ) : (\n <IconButton\n icon={ArrowRight}\n href={link.href}\n aria-label={link.ariaLabel}\n className={styles['footer__top-link']}\n labelBehavior=\"wrap\"\n renderLink={(linkProps) =>\n renderLink(\n linkProps as FooterLinkProps,\n {\n external:\n link.external ?? false,\n },\n )\n }\n >\n {link.label}\n </IconButton>\n )}\n </li>\n ))}\n </ul>\n )}\n </section>\n );\n })}\n </div>\n </div>\n )}\n\n <div className={styles.footer__bottom}>\n <div className={cn(styles.footer__inner, styles.footer__container)}>\n {navigation && navigation.length > 0 && (\n <nav aria-label={navigationLabel}>\n {/* Accordions below 768px; the columns branch is display:none here. */}\n <div className={styles['footer__nav-accordions']}>\n {navigation.map((group) => (\n <AccordionItem\n key={group.heading}\n variant=\"panel\"\n label={group.heading}\n className={styles.footer__accordion}\n >\n <ul className={styles['footer__link-list']}>\n {group.links.map((link) => (\n <li key={link.label}>\n {renderNavLink(link, renderLink)}\n </li>\n ))}\n </ul>\n </AccordionItem>\n ))}\n </div>\n\n <div className={styles['footer__nav-columns']}>\n {navigation.map((group) => (\n <div key={group.heading} className={styles.footer__column}>\n <h2 className={styles['footer__column-heading']}>\n {group.heading}\n </h2>\n <ul className={styles['footer__link-list']}>\n {group.links.map((link) => (\n <li key={link.label}>\n {renderNavLink(link, renderLink)}\n </li>\n ))}\n </ul>\n </div>\n ))}\n </div>\n </nav>\n )}\n\n {/* The bottom bar always renders: it carries the copyright. */}\n <div\n className={cn(\n styles.footer__divider,\n Boolean(navigation?.length) && styles['footer__divider--after-nav'],\n )}\n />\n\n <div className={styles.footer__meta}>\n {languages && languages.length > 0 && (\n <ul\n className={styles['footer__language-list']}\n aria-label={languagesLabel}\n >\n {languages.map((language) => {\n const isCurrent = language.code === currentLanguageCode;\n\n return (\n <li key={language.code}>\n {renderLink(\n {\n href: language.href,\n className: cn(\n styles.footer__language,\n isCurrent &&\n styles['footer__language--current'],\n focusStyles.focusable,\n ),\n 'aria-label': language.ariaLabel,\n 'aria-current': isCurrent ? 'true' : undefined,\n children: language.label,\n },\n { external: language.external ?? false },\n )}\n </li>\n );\n })}\n </ul>\n )}\n\n <div className={styles['footer__meta-center']}>\n {socialLinks && socialLinks.length > 0 && (\n <ul\n className={styles['footer__social-list']}\n aria-label={socialLabel}\n >\n {socialLinks.map((social) => {\n const Icon = resolveSocialIcon(social.platform);\n\n return (\n <li key={social.platform}>\n {renderLink(\n {\n href: social.href,\n className: cn(\n styles['footer__social-link'],\n focusStyles.focusable,\n ),\n 'aria-label':\n social.ariaLabel ??\n defaultSocialAriaLabel(social.platform),\n children: Icon ? (\n <Icon\n className={\n styles['footer__social-icon']\n }\n aria-hidden=\"true\"\n />\n ) : null,\n },\n { external: true },\n )}\n </li>\n );\n })}\n </ul>\n )}\n\n {organizations && organizations.length > 0 && (\n <ul\n className={styles['footer__organization-list']}\n aria-label={organizationsLabel}\n >\n {organizations.map((organization) => {\n const isCurrent = organization.id === currentOrganizationId;\n\n return (\n <li key={organization.id}>\n {renderLink(\n {\n href: organization.href,\n className: cn(\n styles.footer__organization,\n isCurrent &&\n styles[\n 'footer__organization--current'\n ],\n focusStyles.focusable,\n ),\n 'aria-current': isCurrent\n ? 'true'\n : undefined,\n children: organization.label,\n },\n {\n external: organization.external ?? false,\n },\n )}\n </li>\n );\n })}\n </ul>\n )}\n\n <ul\n className={styles['footer__legal-list']}\n aria-label={mandatoryLinksLabel}\n >\n {visibleMandatoryLinks.map((link) => (\n <li key={link.label}>\n {link.opensCookieSettings ? (\n <button\n type=\"button\"\n onClick={onCookieSettingsClick}\n className={linkClasses(styles.footer__action)}\n >\n {link.label}\n </button>\n ) : (\n renderNavLink(link, renderLink)\n )}\n </li>\n ))}\n <li className={styles.footer__copyright}>\n {copyrightLabel ?? defaultCopyrightLabel()}\n </li>\n </ul>\n </div>\n\n {hasBadges && (\n <div className={styles.footer__apps}>\n {appLinks?.title && (\n <span className={styles['footer__apps-title']}>\n {appLinks.title}\n </span>\n )}\n <div className={styles.footer__badges}>\n {appLinks?.appStore &&\n renderBadge(\n appLinks.appStore,\n appStoreBadge,\n renderLink,\n defaultAppStoreAriaLabel,\n )}\n {appLinks?.googlePlay &&\n renderBadge(\n appLinks.googlePlay,\n googlePlayBadge,\n renderLink,\n defaultGooglePlayAriaLabel,\n )}\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n </footer>\n );\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Footer.js","sources":["../../../src/components/Footer/Footer.tsx"],"sourcesContent":["import { useId } from 'react';\nimport { ArrowRight } from '@dnanpm/icons';\nimport { AccordionItem } from '../AccordionItem';\nimport { IconButton } from '../IconButton';\nimport { cn } from '../../utils/cn';\nimport { focusStyles, textDecorationStyles } from '../../styles/utils';\nimport appStoreBadge from './assets/app-store-badge.svg';\nimport googlePlayBadge from './assets/google-play-badge.svg';\nimport styles from './Footer.module.css';\nimport {\n defaultAppStoreAriaLabel,\n defaultCopyrightLabel,\n defaultGooglePlayAriaLabel,\n defaultRenderLink,\n defaultSocialAriaLabel,\n resolveSocialIcon,\n resolveTopSectionIcon,\n} from './Footer.utils';\nimport type {\n FooterAppLink,\n FooterLink,\n FooterLinkProps,\n FooterProps,\n FooterRenderLink,\n} from './Footer.types';\n\nconst linkClasses = (extra?: string) =>\n cn(styles.footer__link, textDecorationStyles.underlineLink, focusStyles.focusable, extra);\n\nconst renderNavLink = (link: FooterLink, renderLink: FooterRenderLink) =>\n renderLink(\n {\n href: link.href,\n className: linkClasses(),\n 'aria-label': link.ariaLabel,\n children: link.label,\n },\n { external: link.external ?? false },\n );\n\nconst renderBadge = (\n link: FooterAppLink,\n src: string,\n renderLink: FooterRenderLink,\n fallbackAriaLabel: string,\n) =>\n renderLink(\n {\n href: link.href,\n className: cn(styles.footer__badge, focusStyles.focusable),\n 'aria-label': link.ariaLabel ?? fallbackAriaLabel,\n children: <img src={src} alt=\"\" aria-hidden=\"true\" />,\n },\n { external: true },\n );\n\nexport const Footer = ({\n topSection,\n navigation,\n socialLinks,\n organizations,\n currentOrganizationId,\n languages,\n currentLanguageCode,\n appLinks,\n mandatoryLinks,\n copyrightLabel,\n renderLink = defaultRenderLink,\n onChatOpen,\n onCookieSettingsClick,\n navigationLabel = 'Footer linkit',\n socialLabel = 'DNA sosiaalisessa mediassa',\n organizationsLabel = 'Valitse sivusto',\n languagesLabel = 'Valitse kieli',\n mandatoryLinksLabel = 'Lakisääteiset linkit',\n className,\n ref,\n ...props\n}: FooterProps) => {\n const visibleMandatoryLinks = (mandatoryLinks ?? []).filter(\n (link) => !link.opensCookieSettings || onCookieSettingsClick,\n );\n\n const hasBadges = Boolean(appLinks?.appStore || appLinks?.googlePlay);\n const topSectionHeadingId = useId();\n\n return (\n <footer\n ref={ref}\n data-color-scheme=\"dark\"\n className={cn(styles.footer, className)}\n {...props}\n >\n {topSection && topSection.length > 0 && (\n <div className={styles.footer__top}>\n <div className={cn(styles.footer__inner, styles['footer__top-row'])}>\n {topSection.map((group, index) => {\n const Icon = resolveTopSectionIcon(group.icon);\n const links = group.links.filter(\n (link) => !link.opensChat || onChatOpen,\n );\n // Names the section as a landmark so it is discoverable alongside the main nav.\n const headingId = `${topSectionHeadingId}-${index}`;\n\n return (\n <section\n key={group.title}\n aria-labelledby={headingId}\n className={styles['footer__top-column']}\n >\n <div className={styles['footer__top-heading']}>\n {Icon && (\n <Icon\n className={styles['footer__top-icon']}\n aria-hidden=\"true\"\n />\n )}\n <h2 id={headingId} className={styles['footer__top-title']}>\n {group.title}\n </h2>\n </div>\n {links.length > 0 && (\n <ul className={styles['footer__top-links']}>\n {links.map((link) => (\n <li key={link.label}>\n {link.opensChat ? (\n <IconButton\n icon={ArrowRight}\n onClick={onChatOpen}\n className={styles['footer__top-link']}\n labelBehavior=\"wrap\"\n >\n {link.label}\n </IconButton>\n ) : (\n <IconButton\n icon={ArrowRight}\n href={link.href}\n aria-label={link.ariaLabel}\n className={styles['footer__top-link']}\n labelBehavior=\"wrap\"\n renderLink={(linkProps) =>\n renderLink(\n linkProps as FooterLinkProps,\n {\n external:\n link.external ?? false,\n },\n )\n }\n >\n {link.label}\n </IconButton>\n )}\n </li>\n ))}\n </ul>\n )}\n </section>\n );\n })}\n </div>\n </div>\n )}\n\n <div className={styles.footer__bottom}>\n <div className={cn(styles.footer__inner, styles.footer__container)}>\n {navigation && navigation.length > 0 && (\n <nav aria-label={navigationLabel}>\n {/* Accordions below 768px; the columns branch is display:none here. */}\n <div className={styles['footer__nav-accordions']}>\n {navigation.map((group) => (\n <AccordionItem\n key={group.heading}\n variant=\"panel\"\n label={group.heading}\n className={styles.footer__accordion}\n >\n <ul className={styles['footer__link-list']}>\n {group.links.map((link) => (\n <li key={link.label}>\n {renderNavLink(link, renderLink)}\n </li>\n ))}\n </ul>\n </AccordionItem>\n ))}\n </div>\n\n <div className={styles['footer__nav-columns']}>\n {navigation.map((group) => (\n <div key={group.heading} className={styles.footer__column}>\n <h2 className={styles['footer__column-heading']}>\n {group.heading}\n </h2>\n <ul className={styles['footer__link-list']}>\n {group.links.map((link) => (\n <li key={link.label}>\n {renderNavLink(link, renderLink)}\n </li>\n ))}\n </ul>\n </div>\n ))}\n </div>\n </nav>\n )}\n\n {/* The bottom bar always renders: it carries the copyright. */}\n <div\n className={cn(\n styles.footer__divider,\n Boolean(navigation?.length) && styles['footer__divider--after-nav'],\n )}\n />\n\n <div className={styles.footer__meta}>\n {languages && languages.length > 0 && (\n <ul\n className={styles['footer__language-list']}\n aria-label={languagesLabel}\n >\n {languages.map((language) => {\n const isCurrent = language.code === currentLanguageCode;\n\n return (\n <li key={language.code}>\n {renderLink(\n {\n href: language.href,\n className: cn(\n styles.footer__language,\n isCurrent &&\n styles['footer__language--current'],\n focusStyles.focusable,\n ),\n 'aria-label': language.ariaLabel,\n 'aria-current': isCurrent ? 'true' : undefined,\n children: language.label,\n },\n { external: language.external ?? false },\n )}\n </li>\n );\n })}\n </ul>\n )}\n\n <div className={styles['footer__meta-center']}>\n {socialLinks && socialLinks.length > 0 && (\n <ul\n className={styles['footer__social-list']}\n aria-label={socialLabel}\n >\n {socialLinks.map((social) => {\n const Icon = resolveSocialIcon(social.platform);\n\n return (\n <li key={social.platform}>\n {renderLink(\n {\n href: social.href,\n className: cn(\n styles['footer__social-link'],\n focusStyles.focusable,\n ),\n 'aria-label':\n social.ariaLabel ??\n defaultSocialAriaLabel(social.platform),\n children: Icon ? (\n <Icon\n className={\n styles['footer__social-icon']\n }\n aria-hidden=\"true\"\n />\n ) : null,\n },\n { external: true },\n )}\n </li>\n );\n })}\n </ul>\n )}\n\n {organizations && organizations.length > 0 && (\n <ul\n className={styles['footer__organization-list']}\n aria-label={organizationsLabel}\n >\n {organizations.map((organization) => {\n const isCurrent = organization.id === currentOrganizationId;\n\n return (\n <li key={organization.id}>\n {renderLink(\n {\n href: organization.href,\n className: cn(\n styles.footer__organization,\n isCurrent &&\n styles[\n 'footer__organization--current'\n ],\n focusStyles.focusable,\n ),\n 'aria-current': isCurrent\n ? 'true'\n : undefined,\n children: organization.label,\n },\n {\n external: organization.external ?? false,\n },\n )}\n </li>\n );\n })}\n </ul>\n )}\n\n <ul\n className={styles['footer__legal-list']}\n aria-label={mandatoryLinksLabel}\n >\n {visibleMandatoryLinks.map((link) => (\n <li key={link.label}>\n {link.opensCookieSettings ? (\n <button\n type=\"button\"\n onClick={onCookieSettingsClick}\n className={linkClasses(styles.footer__action)}\n >\n {link.label}\n </button>\n ) : (\n renderNavLink(link, renderLink)\n )}\n </li>\n ))}\n <li className={styles.footer__copyright}>\n {copyrightLabel ?? defaultCopyrightLabel()}\n </li>\n </ul>\n </div>\n\n {hasBadges && (\n <div className={styles.footer__apps}>\n {appLinks?.title && (\n <span className={styles['footer__apps-title']}>\n {appLinks.title}\n </span>\n )}\n <div className={styles.footer__badges}>\n {appLinks?.appStore &&\n renderBadge(\n appLinks.appStore,\n appStoreBadge,\n renderLink,\n defaultAppStoreAriaLabel,\n )}\n {appLinks?.googlePlay &&\n renderBadge(\n appLinks.googlePlay,\n googlePlayBadge,\n renderLink,\n defaultGooglePlayAriaLabel,\n )}\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n </footer>\n );\n};\n"],"names":[],"mappings":"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"}
@@ -1,61 +1,61 @@
1
1
  require('./Footer.css');
2
2
  "use strict";
3
3
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
4
- const footer = "_footer_1lum3_8";
5
- const footer__inner = "_footer__inner_1lum3_31";
6
- const footer__top = "_footer__top_1lum3_36";
7
- const footer__bottom = "_footer__bottom_1lum3_37";
8
- const footer__container = "_footer__container_1lum3_122";
9
- const footer__column = "_footer__column_1lum3_156";
10
- const footer__link = "_footer__link_1lum3_111";
11
- const footer__action = "_footer__action_1lum3_191";
12
- const footer__accordion = "_footer__accordion_1lum3_224";
13
- const footer__divider = "_footer__divider_1lum3_235";
14
- const footer__meta = "_footer__meta_1lum3_249";
15
- const footer__language = "_footer__language_1lum3_276";
16
- const footer__organization = "_footer__organization_1lum3_346";
17
- const footer__copyright = "_footer__copyright_1lum3_407";
18
- const footer__apps = "_footer__apps_1lum3_413";
19
- const footer__badges = "_footer__badges_1lum3_431";
20
- const footer__badge = "_footer__badge_1lum3_431";
4
+ const footer = "_footer_1iwfy_8";
5
+ const footer__inner = "_footer__inner_1iwfy_31";
6
+ const footer__top = "_footer__top_1iwfy_36";
7
+ const footer__bottom = "_footer__bottom_1iwfy_37";
8
+ const footer__container = "_footer__container_1iwfy_122";
9
+ const footer__column = "_footer__column_1iwfy_156";
10
+ const footer__link = "_footer__link_1iwfy_111";
11
+ const footer__action = "_footer__action_1iwfy_191";
12
+ const footer__accordion = "_footer__accordion_1iwfy_224";
13
+ const footer__divider = "_footer__divider_1iwfy_235";
14
+ const footer__meta = "_footer__meta_1iwfy_249";
15
+ const footer__language = "_footer__language_1iwfy_276";
16
+ const footer__organization = "_footer__organization_1iwfy_346";
17
+ const footer__copyright = "_footer__copyright_1iwfy_407";
18
+ const footer__apps = "_footer__apps_1iwfy_413";
19
+ const footer__badges = "_footer__badges_1iwfy_431";
20
+ const footer__badge = "_footer__badge_1iwfy_431";
21
21
  const styles = {
22
22
  footer,
23
23
  footer__inner,
24
24
  footer__top,
25
25
  footer__bottom,
26
- "footer__top-row": "_footer__top-row_1lum3_61",
27
- "footer__top-column": "_footer__top-column_1lum3_76",
28
- "footer__top-heading": "_footer__top-heading_1lum3_84",
29
- "footer__top-icon": "_footer__top-icon_1lum3_91",
30
- "footer__top-title": "_footer__top-title_1lum3_97",
31
- "footer__top-links": "_footer__top-links_1lum3_102",
32
- "footer__link-list": "_footer__link-list_1lum3_111",
33
- "footer__top-link": "_footer__top-link_1lum3_102",
26
+ "footer__top-row": "_footer__top-row_1iwfy_61",
27
+ "footer__top-column": "_footer__top-column_1iwfy_76",
28
+ "footer__top-heading": "_footer__top-heading_1iwfy_84",
29
+ "footer__top-icon": "_footer__top-icon_1iwfy_91",
30
+ "footer__top-title": "_footer__top-title_1iwfy_97",
31
+ "footer__top-links": "_footer__top-links_1iwfy_102",
32
+ "footer__link-list": "_footer__link-list_1iwfy_111",
33
+ "footer__top-link": "_footer__top-link_1iwfy_102",
34
34
  footer__container,
35
- "footer__nav-accordions": "_footer__nav-accordions_1lum3_135",
36
- "footer__nav-columns": "_footer__nav-columns_1lum3_139",
35
+ "footer__nav-accordions": "_footer__nav-accordions_1iwfy_135",
36
+ "footer__nav-columns": "_footer__nav-columns_1iwfy_139",
37
37
  footer__column,
38
- "footer__column-heading": "_footer__column-heading_1lum3_164",
38
+ "footer__column-heading": "_footer__column-heading_1iwfy_164",
39
39
  footer__link,
40
40
  footer__action,
41
41
  footer__accordion,
42
42
  footer__divider,
43
- "footer__divider--after-nav": "_footer__divider--after-nav_1lum3_242",
43
+ "footer__divider--after-nav": "_footer__divider--after-nav_1iwfy_242",
44
44
  footer__meta,
45
- "footer__meta-center": "_footer__meta-center_1lum3_265",
46
- "footer__language-list": "_footer__language-list_1lum3_276",
45
+ "footer__meta-center": "_footer__meta-center_1iwfy_265",
46
+ "footer__language-list": "_footer__language-list_1iwfy_276",
47
47
  footer__language,
48
- "footer__language--current": "_footer__language--current_1lum3_303",
49
- "footer__social-list": "_footer__social-list_1lum3_315",
50
- "footer__social-link": "_footer__social-link_1lum3_323",
51
- "footer__social-icon": "_footer__social-icon_1lum3_338",
52
- "footer__organization-list": "_footer__organization-list_1lum3_346",
48
+ "footer__language--current": "_footer__language--current_1iwfy_303",
49
+ "footer__social-list": "_footer__social-list_1iwfy_315",
50
+ "footer__social-link": "_footer__social-link_1iwfy_323",
51
+ "footer__social-icon": "_footer__social-icon_1iwfy_338",
52
+ "footer__organization-list": "_footer__organization-list_1iwfy_346",
53
53
  footer__organization,
54
- "footer__organization--current": "_footer__organization--current_1lum3_370",
55
- "footer__legal-list": "_footer__legal-list_1lum3_383",
54
+ "footer__organization--current": "_footer__organization--current_1iwfy_370",
55
+ "footer__legal-list": "_footer__legal-list_1iwfy_383",
56
56
  footer__copyright,
57
57
  footer__apps,
58
- "footer__apps-title": "_footer__apps-title_1lum3_427",
58
+ "footer__apps-title": "_footer__apps-title_1iwfy_427",
59
59
  footer__badges,
60
60
  footer__badge
61
61
  };
@@ -1,59 +1,59 @@
1
1
  import './Footer.css';
2
- const footer = "_footer_1lum3_8";
3
- const footer__inner = "_footer__inner_1lum3_31";
4
- const footer__top = "_footer__top_1lum3_36";
5
- const footer__bottom = "_footer__bottom_1lum3_37";
6
- const footer__container = "_footer__container_1lum3_122";
7
- const footer__column = "_footer__column_1lum3_156";
8
- const footer__link = "_footer__link_1lum3_111";
9
- const footer__action = "_footer__action_1lum3_191";
10
- const footer__accordion = "_footer__accordion_1lum3_224";
11
- const footer__divider = "_footer__divider_1lum3_235";
12
- const footer__meta = "_footer__meta_1lum3_249";
13
- const footer__language = "_footer__language_1lum3_276";
14
- const footer__organization = "_footer__organization_1lum3_346";
15
- const footer__copyright = "_footer__copyright_1lum3_407";
16
- const footer__apps = "_footer__apps_1lum3_413";
17
- const footer__badges = "_footer__badges_1lum3_431";
18
- const footer__badge = "_footer__badge_1lum3_431";
2
+ const footer = "_footer_1iwfy_8";
3
+ const footer__inner = "_footer__inner_1iwfy_31";
4
+ const footer__top = "_footer__top_1iwfy_36";
5
+ const footer__bottom = "_footer__bottom_1iwfy_37";
6
+ const footer__container = "_footer__container_1iwfy_122";
7
+ const footer__column = "_footer__column_1iwfy_156";
8
+ const footer__link = "_footer__link_1iwfy_111";
9
+ const footer__action = "_footer__action_1iwfy_191";
10
+ const footer__accordion = "_footer__accordion_1iwfy_224";
11
+ const footer__divider = "_footer__divider_1iwfy_235";
12
+ const footer__meta = "_footer__meta_1iwfy_249";
13
+ const footer__language = "_footer__language_1iwfy_276";
14
+ const footer__organization = "_footer__organization_1iwfy_346";
15
+ const footer__copyright = "_footer__copyright_1iwfy_407";
16
+ const footer__apps = "_footer__apps_1iwfy_413";
17
+ const footer__badges = "_footer__badges_1iwfy_431";
18
+ const footer__badge = "_footer__badge_1iwfy_431";
19
19
  const styles = {
20
20
  footer,
21
21
  footer__inner,
22
22
  footer__top,
23
23
  footer__bottom,
24
- "footer__top-row": "_footer__top-row_1lum3_61",
25
- "footer__top-column": "_footer__top-column_1lum3_76",
26
- "footer__top-heading": "_footer__top-heading_1lum3_84",
27
- "footer__top-icon": "_footer__top-icon_1lum3_91",
28
- "footer__top-title": "_footer__top-title_1lum3_97",
29
- "footer__top-links": "_footer__top-links_1lum3_102",
30
- "footer__link-list": "_footer__link-list_1lum3_111",
31
- "footer__top-link": "_footer__top-link_1lum3_102",
24
+ "footer__top-row": "_footer__top-row_1iwfy_61",
25
+ "footer__top-column": "_footer__top-column_1iwfy_76",
26
+ "footer__top-heading": "_footer__top-heading_1iwfy_84",
27
+ "footer__top-icon": "_footer__top-icon_1iwfy_91",
28
+ "footer__top-title": "_footer__top-title_1iwfy_97",
29
+ "footer__top-links": "_footer__top-links_1iwfy_102",
30
+ "footer__link-list": "_footer__link-list_1iwfy_111",
31
+ "footer__top-link": "_footer__top-link_1iwfy_102",
32
32
  footer__container,
33
- "footer__nav-accordions": "_footer__nav-accordions_1lum3_135",
34
- "footer__nav-columns": "_footer__nav-columns_1lum3_139",
33
+ "footer__nav-accordions": "_footer__nav-accordions_1iwfy_135",
34
+ "footer__nav-columns": "_footer__nav-columns_1iwfy_139",
35
35
  footer__column,
36
- "footer__column-heading": "_footer__column-heading_1lum3_164",
36
+ "footer__column-heading": "_footer__column-heading_1iwfy_164",
37
37
  footer__link,
38
38
  footer__action,
39
39
  footer__accordion,
40
40
  footer__divider,
41
- "footer__divider--after-nav": "_footer__divider--after-nav_1lum3_242",
41
+ "footer__divider--after-nav": "_footer__divider--after-nav_1iwfy_242",
42
42
  footer__meta,
43
- "footer__meta-center": "_footer__meta-center_1lum3_265",
44
- "footer__language-list": "_footer__language-list_1lum3_276",
43
+ "footer__meta-center": "_footer__meta-center_1iwfy_265",
44
+ "footer__language-list": "_footer__language-list_1iwfy_276",
45
45
  footer__language,
46
- "footer__language--current": "_footer__language--current_1lum3_303",
47
- "footer__social-list": "_footer__social-list_1lum3_315",
48
- "footer__social-link": "_footer__social-link_1lum3_323",
49
- "footer__social-icon": "_footer__social-icon_1lum3_338",
50
- "footer__organization-list": "_footer__organization-list_1lum3_346",
46
+ "footer__language--current": "_footer__language--current_1iwfy_303",
47
+ "footer__social-list": "_footer__social-list_1iwfy_315",
48
+ "footer__social-link": "_footer__social-link_1iwfy_323",
49
+ "footer__social-icon": "_footer__social-icon_1iwfy_338",
50
+ "footer__organization-list": "_footer__organization-list_1iwfy_346",
51
51
  footer__organization,
52
- "footer__organization--current": "_footer__organization--current_1lum3_370",
53
- "footer__legal-list": "_footer__legal-list_1lum3_383",
52
+ "footer__organization--current": "_footer__organization--current_1iwfy_370",
53
+ "footer__legal-list": "_footer__legal-list_1iwfy_383",
54
54
  footer__copyright,
55
55
  footer__apps,
56
- "footer__apps-title": "_footer__apps-title_1lum3_427",
56
+ "footer__apps-title": "_footer__apps-title_1iwfy_427",
57
57
  footer__badges,
58
58
  footer__badge
59
59
  };
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
- const focus_module = require("../../styles/utils/focus.module.css.cjs");
4
+ const index = require("../../styles/utils/index.cjs");
5
5
  const FunctionButton_module = require("./FunctionButton.module.css.cjs");
6
6
  const cn = require("../../utils/cn/cn.cjs");
7
7
  const FunctionButton = ({
@@ -22,7 +22,7 @@ const FunctionButton = ({
22
22
  FunctionButton_module["function-button"],
23
23
  FunctionButton_module[`function-button--${variant}`],
24
24
  { [FunctionButton_module["function-button--large"]]: size === "large" },
25
- focus_module.default.focusable,
25
+ index.focusStyles.focusable,
26
26
  className
27
27
  ),
28
28
  ...props,
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionButton.cjs","sources":["../../../src/components/FunctionButton/FunctionButton.tsx"],"sourcesContent":["import { cn } from '../../utils/cn';\nimport focusStyles from '../../styles/utils/focus.module.css';\nimport styles from './FunctionButton.module.css';\nimport type { FunctionButtonProps } from './FunctionButton.types';\n\nexport const FunctionButton = ({\n icon: Icon,\n variant = 'default',\n size = 'default',\n className,\n type = 'button',\n ref,\n ...props\n}: FunctionButtonProps) => {\n return (\n <button\n ref={ref}\n type={type}\n className={cn(\n styles['function-button'],\n styles[`function-button--${variant}`],\n { [styles['function-button--large']]: size === 'large' },\n focusStyles.focusable,\n className,\n )}\n {...props}\n >\n <Icon aria-hidden=\"true\" />\n </button>\n );\n};\n"],"names":["jsx","cn","styles","focusStyles"],"mappings":";;;;;;AAKO,MAAM,iBAAiB,CAAC;AAAA,EAC3B,MAAM;AAAA,EACN,UAAU;AAAA,EACV,OAAO;AAAA,EACP;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,GAAG;AACP,MAA2B;AACvB,SACIA,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACG;AAAA,MACA;AAAA,MACA,WAAWC,GAAAA;AAAAA,QACPC,sBAAO,iBAAiB;AAAA,QACxBA,sBAAO,oBAAoB,OAAO,EAAE;AAAA,QACpC,EAAE,CAACA,sBAAO,wBAAwB,CAAC,GAAG,SAAS,QAAA;AAAA,QAC/CC,aAAAA,QAAY;AAAA,QACZ;AAAA,MAAA;AAAA,MAEH,GAAG;AAAA,MAEJ,UAAAH,2BAAAA,IAAC,MAAA,EAAK,eAAY,OAAA,CAAO;AAAA,IAAA;AAAA,EAAA;AAGrC;;"}
1
+ {"version":3,"file":"FunctionButton.cjs","sources":["../../../src/components/FunctionButton/FunctionButton.tsx"],"sourcesContent":["import { cn } from '../../utils/cn';\nimport { focusStyles } from '../../styles/utils';\nimport styles from './FunctionButton.module.css';\nimport type { FunctionButtonProps } from './FunctionButton.types';\n\nexport const FunctionButton = ({\n icon: Icon,\n variant = 'default',\n size = 'default',\n className,\n type = 'button',\n ref,\n ...props\n}: FunctionButtonProps) => {\n return (\n <button\n ref={ref}\n type={type}\n className={cn(\n styles['function-button'],\n styles[`function-button--${variant}`],\n { [styles['function-button--large']]: size === 'large' },\n focusStyles.focusable,\n className,\n )}\n {...props}\n >\n <Icon aria-hidden=\"true\" />\n </button>\n );\n};\n"],"names":["jsx","cn","styles","focusStyles"],"mappings":";;;;;;AAKO,MAAM,iBAAiB,CAAC;AAAA,EAC3B,MAAM;AAAA,EACN,UAAU;AAAA,EACV,OAAO;AAAA,EACP;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,GAAG;AACP,MAA2B;AACvB,SACIA,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACG;AAAA,MACA;AAAA,MACA,WAAWC,GAAAA;AAAAA,QACPC,sBAAO,iBAAiB;AAAA,QACxBA,sBAAO,oBAAoB,OAAO,EAAE;AAAA,QACpC,EAAE,CAACA,sBAAO,wBAAwB,CAAC,GAAG,SAAS,QAAA;AAAA,QAC/CC,MAAAA,YAAY;AAAA,QACZ;AAAA,MAAA;AAAA,MAEH,GAAG;AAAA,MAEJ,UAAAH,2BAAAA,IAAC,MAAA,EAAK,eAAY,OAAA,CAAO;AAAA,IAAA;AAAA,EAAA;AAGrC;;"}
@@ -1,4 +1,4 @@
1
- @layer dds-components {._function-button_kp4nc_1 {
1
+ @layer dds-base, dds-components;@layer dds-components { @layer fallback, components; }@layer dds-components.components{._function-button_kp4nc_1 {
2
2
  display: inline-flex;
3
3
  align-items: center;
4
4
  justify-content: center;
@@ -122,4 +122,7 @@
122
122
  color: GrayText;
123
123
  }
124
124
  }
125
- }
125
+
126
+ /**
127
+ * Do not edit directly, this file was auto-generated.
128
+ */ }
@@ -1,5 +1,5 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import focusStyles from "../../styles/utils/focus.module.css.js";
2
+ import { focusStyles } from "../../styles/utils/index.js";
3
3
  import styles from "./FunctionButton.module.css.js";
4
4
  import { cn } from "../../utils/cn/cn.js";
5
5
  const FunctionButton = ({
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionButton.js","sources":["../../../src/components/FunctionButton/FunctionButton.tsx"],"sourcesContent":["import { cn } from '../../utils/cn';\nimport focusStyles from '../../styles/utils/focus.module.css';\nimport styles from './FunctionButton.module.css';\nimport type { FunctionButtonProps } from './FunctionButton.types';\n\nexport const FunctionButton = ({\n icon: Icon,\n variant = 'default',\n size = 'default',\n className,\n type = 'button',\n ref,\n ...props\n}: FunctionButtonProps) => {\n return (\n <button\n ref={ref}\n type={type}\n className={cn(\n styles['function-button'],\n styles[`function-button--${variant}`],\n { [styles['function-button--large']]: size === 'large' },\n focusStyles.focusable,\n className,\n )}\n {...props}\n >\n <Icon aria-hidden=\"true\" />\n </button>\n );\n};\n"],"names":[],"mappings":";;;;AAKO,MAAM,iBAAiB,CAAC;AAAA,EAC3B,MAAM;AAAA,EACN,UAAU;AAAA,EACV,OAAO;AAAA,EACP;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,GAAG;AACP,MAA2B;AACvB,SACI;AAAA,IAAC;AAAA,IAAA;AAAA,MACG;AAAA,MACA;AAAA,MACA,WAAW;AAAA,QACP,OAAO,iBAAiB;AAAA,QACxB,OAAO,oBAAoB,OAAO,EAAE;AAAA,QACpC,EAAE,CAAC,OAAO,wBAAwB,CAAC,GAAG,SAAS,QAAA;AAAA,QAC/C,YAAY;AAAA,QACZ;AAAA,MAAA;AAAA,MAEH,GAAG;AAAA,MAEJ,UAAA,oBAAC,MAAA,EAAK,eAAY,OAAA,CAAO;AAAA,IAAA;AAAA,EAAA;AAGrC;"}
1
+ {"version":3,"file":"FunctionButton.js","sources":["../../../src/components/FunctionButton/FunctionButton.tsx"],"sourcesContent":["import { cn } from '../../utils/cn';\nimport { focusStyles } from '../../styles/utils';\nimport styles from './FunctionButton.module.css';\nimport type { FunctionButtonProps } from './FunctionButton.types';\n\nexport const FunctionButton = ({\n icon: Icon,\n variant = 'default',\n size = 'default',\n className,\n type = 'button',\n ref,\n ...props\n}: FunctionButtonProps) => {\n return (\n <button\n ref={ref}\n type={type}\n className={cn(\n styles['function-button'],\n styles[`function-button--${variant}`],\n { [styles['function-button--large']]: size === 'large' },\n focusStyles.focusable,\n className,\n )}\n {...props}\n >\n <Icon aria-hidden=\"true\" />\n </button>\n );\n};\n"],"names":[],"mappings":";;;;AAKO,MAAM,iBAAiB,CAAC;AAAA,EAC3B,MAAM;AAAA,EACN,UAAU;AAAA,EACV,OAAO;AAAA,EACP;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,GAAG;AACP,MAA2B;AACvB,SACI;AAAA,IAAC;AAAA,IAAA;AAAA,MACG;AAAA,MACA;AAAA,MACA,WAAW;AAAA,QACP,OAAO,iBAAiB;AAAA,QACxB,OAAO,oBAAoB,OAAO,EAAE;AAAA,QACpC,EAAE,CAAC,OAAO,wBAAwB,CAAC,GAAG,SAAS,QAAA;AAAA,QAC/C,YAAY;AAAA,QACZ;AAAA,MAAA;AAAA,MAEH,GAAG;AAAA,MAEJ,UAAA,oBAAC,MAAA,EAAK,eAAY,OAAA,CAAO;AAAA,IAAA;AAAA,EAAA;AAGrC;"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const react = require("react");
5
- const elevation_module = require("../../styles/utils/elevation.module.css.cjs");
5
+ const index = require("../../styles/utils/index.cjs");
6
6
  const Hero_module = require("./Hero.module.css.cjs");
7
7
  const Hero_utils = require("./Hero.utils.cjs");
8
8
  const cn = require("../../utils/cn/cn.cjs");
@@ -17,8 +17,7 @@ const Hero = ({
17
17
  LogoImage,
18
18
  logoImageProps,
19
19
  backgroundColor,
20
- primaryCta,
21
- secondaryCta,
20
+ actions,
22
21
  className,
23
22
  ref,
24
23
  ...props
@@ -29,7 +28,7 @@ const Hero = ({
29
28
  const image = ResolvedImage != null ? /* @__PURE__ */ jsxRuntime.jsx(ResolvedImage, { ...imageProps }) : void 0;
30
29
  const logoImage = ResolvedLogoImage != null ? /* @__PURE__ */ jsxRuntime.jsx(ResolvedLogoImage, { ...logoImageProps }) : void 0;
31
30
  const HeadingLevel = headingLevel;
32
- const hasActions = primaryCta != null || secondaryCta != null;
31
+ const hasActions = actions != null && typeof actions !== "boolean";
33
32
  const backgroundStyle = image == null && backgroundColor != null ? { backgroundColor } : void 0;
34
33
  const ariaLabelledBy = props["aria-label"] ? void 0 : props["aria-labelledby"] || headingId;
35
34
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -43,34 +42,36 @@ const Hero = ({
43
42
  children: [
44
43
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__background, style: backgroundStyle, children: [
45
44
  image != null && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__backgroundImageComponent, "aria-hidden": "true", children: image }),
46
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__overlay, "aria-hidden": "true" })
45
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__overlay, "aria-hidden": "true" }),
46
+ logoImage != null && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__logoImageWrap, "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__logoImage, children: logoImage }) })
47
47
  ] }),
48
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__content, children: [
49
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn.cn(Hero_module.default.hero__card, elevation_module.default.elevationHigh), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__main, children: [
50
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__text, children: [
51
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__header, children: [
52
- label != null && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__label, children: label }),
53
- /* @__PURE__ */ jsxRuntime.jsx(
54
- HeadingLevel,
55
- {
56
- id: headingId,
57
- className: cn.cn(
58
- Hero_module.default.hero__heading,
59
- Hero_utils.headingClassByStyle[headingStyle]
60
- ),
61
- children: heading
62
- }
63
- )
48
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__content, children: /* @__PURE__ */ jsxRuntime.jsx(
49
+ "div",
50
+ {
51
+ className: cn.cn(Hero_module.default.hero__card, index.elevationStyles.elevationHigh),
52
+ "data-color-scheme": "light",
53
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__main, children: [
54
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__text, children: [
55
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__header, children: [
56
+ label != null && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__label, children: label }),
57
+ /* @__PURE__ */ jsxRuntime.jsx(
58
+ HeadingLevel,
59
+ {
60
+ id: headingId,
61
+ className: cn.cn(
62
+ Hero_module.default.hero__heading,
63
+ Hero_utils.headingClassByStyle[headingStyle]
64
+ ),
65
+ children: heading
66
+ }
67
+ )
68
+ ] }),
69
+ description != null && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn.cn(Hero_module.default.hero__description, "dds-prose"), children: description })
64
70
  ] }),
65
- description != null && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn.cn(Hero_module.default.hero__description, "dds-prose"), children: description })
66
- ] }),
67
- hasActions && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__actions, children: [
68
- primaryCta != null && primaryCta,
69
- secondaryCta != null && secondaryCta
71
+ hasActions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__actions, children: actions })
70
72
  ] })
71
- ] }) }),
72
- logoImage != null && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__logoImage, "aria-hidden": "true", children: logoImage })
73
- ] })
73
+ }
74
+ ) })
74
75
  ]
75
76
  }
76
77
  );
@@ -1 +1 @@
1
- {"version":3,"file":"Hero.cjs","sources":["../../../src/components/Hero/Hero.tsx"],"sourcesContent":["import { useId } from 'react';\nimport { cn } from '../../utils/cn';\nimport elevationStyles from '../../styles/utils/elevation.module.css';\nimport styles from './Hero.module.css';\nimport type { HeroProps } from './Hero.types';\nimport { headingClassByStyle } from './Hero.utils';\n\nexport const Hero = ({\n label,\n heading,\n description,\n headingLevel = 'h1',\n headingStyle = 'default',\n Image,\n imageProps,\n LogoImage,\n logoImageProps,\n backgroundColor,\n primaryCta,\n secondaryCta,\n className,\n ref,\n ...props\n}: HeroProps) => {\n const headingId = useId();\n\n const ResolvedImage = Image ?? (imageProps != null ? 'img' : undefined);\n const ResolvedLogoImage = LogoImage ?? (logoImageProps != null ? 'img' : undefined);\n const image = ResolvedImage != null ? <ResolvedImage {...imageProps} /> : undefined;\n const logoImage =\n ResolvedLogoImage != null ? <ResolvedLogoImage {...logoImageProps} /> : undefined;\n const HeadingLevel = headingLevel;\n\n const hasActions = primaryCta != null || secondaryCta != null;\n const backgroundStyle =\n image == null && backgroundColor != null ? { backgroundColor } : undefined;\n const ariaLabelledBy = props['aria-label'] ? undefined : props['aria-labelledby'] || headingId;\n\n return (\n <section\n ref={ref}\n {...props}\n className={cn(styles.hero, className)}\n aria-label={props['aria-label']}\n aria-labelledby={ariaLabelledBy}\n >\n <div className={styles.hero__background} style={backgroundStyle}>\n {image != null && (\n <div className={styles.hero__backgroundImageComponent} aria-hidden=\"true\">\n {image}\n </div>\n )}\n <div className={styles.hero__overlay} aria-hidden=\"true\" />\n </div>\n\n <div className={styles.hero__content}>\n <div className={cn(styles.hero__card, elevationStyles.elevationHigh)}>\n <div className={styles.hero__main}>\n <div className={styles.hero__text}>\n <div className={styles.hero__header}>\n {label != null && <div className={styles.hero__label}>{label}</div>}\n <HeadingLevel\n id={headingId}\n className={cn(\n styles.hero__heading,\n headingClassByStyle[headingStyle],\n )}\n >\n {heading}\n </HeadingLevel>\n </div>\n {description != null && (\n <div className={cn(styles.hero__description, 'dds-prose')}>\n {description}\n </div>\n )}\n </div>\n\n {hasActions && (\n <div className={styles.hero__actions}>\n {primaryCta != null && primaryCta}\n {secondaryCta != null && secondaryCta}\n </div>\n )}\n </div>\n </div>\n {logoImage != null && (\n <div className={styles.hero__logoImage} aria-hidden=\"true\">\n {logoImage}\n </div>\n )}\n </div>\n </section>\n );\n};\n"],"names":["useId","jsxs","cn","styles","jsx","elevationStyles","headingClassByStyle"],"mappings":";;;;;;;;AAOO,MAAM,OAAO,CAAC;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf,eAAe;AAAA,EACf;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACP,MAAiB;AACb,QAAM,YAAYA,MAAAA,MAAA;AAElB,QAAM,gBAAgB,UAAU,cAAc,OAAO,QAAQ;AAC7D,QAAM,oBAAoB,cAAc,kBAAkB,OAAO,QAAQ;AACzE,QAAM,QAAQ,iBAAiB,sCAAQ,eAAA,EAAe,GAAG,YAAY,IAAK;AAC1E,QAAM,YACF,qBAAqB,sCAAQ,mBAAA,EAAmB,GAAG,gBAAgB,IAAK;AAC5E,QAAM,eAAe;AAErB,QAAM,aAAa,cAAc,QAAQ,gBAAgB;AACzD,QAAM,kBACF,SAAS,QAAQ,mBAAmB,OAAO,EAAE,oBAAoB;AACrE,QAAM,iBAAiB,MAAM,YAAY,IAAI,SAAY,MAAM,iBAAiB,KAAK;AAErF,SACIC,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACG;AAAA,MACC,GAAG;AAAA,MACJ,WAAWC,GAAAA,GAAGC,oBAAO,MAAM,SAAS;AAAA,MACpC,cAAY,MAAM,YAAY;AAAA,MAC9B,mBAAiB;AAAA,MAEjB,UAAA;AAAA,QAAAF,gCAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,kBAAkB,OAAO,iBAC3C,UAAA;AAAA,UAAA,SAAS,uCACL,OAAA,EAAI,WAAWA,oBAAO,gCAAgC,eAAY,QAC9D,UAAA,MAAA,CACL;AAAA,yCAEH,OAAA,EAAI,WAAWA,YAAAA,QAAO,eAAe,eAAY,OAAA,CAAO;AAAA,QAAA,GAC7D;AAAA,QAEAF,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,eACnB,UAAA;AAAA,UAAAC,2BAAAA,IAAC,OAAA,EAAI,WAAWF,GAAAA,GAAGC,YAAAA,QAAO,YAAYE,yBAAgB,aAAa,GAC/D,UAAAJ,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,YACnB,UAAA;AAAA,YAAAF,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,YACnB,UAAA;AAAA,cAAAF,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,cAClB,UAAA;AAAA,gBAAA,SAAS,QAAQC,2BAAAA,IAAC,OAAA,EAAI,WAAWD,YAAAA,QAAO,aAAc,UAAA,OAAM;AAAA,gBAC7DC,2BAAAA;AAAAA,kBAAC;AAAA,kBAAA;AAAA,oBACG,IAAI;AAAA,oBACJ,WAAWF,GAAAA;AAAAA,sBACPC,YAAAA,QAAO;AAAA,sBACPG,WAAAA,oBAAoB,YAAY;AAAA,oBAAA;AAAA,oBAGnC,UAAA;AAAA,kBAAA;AAAA,gBAAA;AAAA,cACL,GACJ;AAAA,cACC,eAAe,QACZF,+BAAC,OAAA,EAAI,WAAWF,MAAGC,YAAAA,QAAO,mBAAmB,WAAW,GACnD,UAAA,YAAA,CACL;AAAA,YAAA,GAER;AAAA,YAEC,cACGF,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,eAClB,UAAA;AAAA,cAAA,cAAc,QAAQ;AAAA,cACtB,gBAAgB,QAAQ;AAAA,YAAA,EAAA,CAC7B;AAAA,UAAA,EAAA,CAER,EAAA,CACJ;AAAA,UACC,aAAa,QACVC,+BAAC,OAAA,EAAI,WAAWD,oBAAO,iBAAiB,eAAY,QAC/C,UAAA,UAAA,CACL;AAAA,QAAA,EAAA,CAER;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGZ;;"}
1
+ {"version":3,"file":"Hero.cjs","sources":["../../../src/components/Hero/Hero.tsx"],"sourcesContent":["import { useId } from 'react';\nimport { cn } from '../../utils/cn';\nimport { elevationStyles } from '../../styles/utils';\nimport styles from './Hero.module.css';\nimport type { HeroProps } from './Hero.types';\nimport { headingClassByStyle } from './Hero.utils';\n\nexport const Hero = ({\n label,\n heading,\n description,\n headingLevel = 'h1',\n headingStyle = 'default',\n Image,\n imageProps,\n LogoImage,\n logoImageProps,\n backgroundColor,\n actions,\n className,\n ref,\n ...props\n}: HeroProps) => {\n const headingId = useId();\n\n const ResolvedImage = Image ?? (imageProps != null ? 'img' : undefined);\n const ResolvedLogoImage = LogoImage ?? (logoImageProps != null ? 'img' : undefined);\n const image = ResolvedImage != null ? <ResolvedImage {...imageProps} /> : undefined;\n const logoImage =\n ResolvedLogoImage != null ? <ResolvedLogoImage {...logoImageProps} /> : undefined;\n const HeadingLevel = headingLevel;\n\n const hasActions = actions != null && typeof actions !== 'boolean';\n const backgroundStyle =\n image == null && backgroundColor != null ? { backgroundColor } : undefined;\n const ariaLabelledBy = props['aria-label'] ? undefined : props['aria-labelledby'] || headingId;\n\n return (\n <section\n ref={ref}\n {...props}\n className={cn(styles.hero, className)}\n aria-label={props['aria-label']}\n aria-labelledby={ariaLabelledBy}\n >\n <div className={styles.hero__background} style={backgroundStyle}>\n {image != null && (\n <div className={styles.hero__backgroundImageComponent} aria-hidden=\"true\">\n {image}\n </div>\n )}\n <div className={styles.hero__overlay} aria-hidden=\"true\" />\n {logoImage != null && (\n <div className={styles.hero__logoImageWrap} aria-hidden=\"true\">\n <div className={styles.hero__logoImage}>{logoImage}</div>\n </div>\n )}\n </div>\n\n <div className={styles.hero__content}>\n <div\n className={cn(styles.hero__card, elevationStyles.elevationHigh)}\n data-color-scheme=\"light\"\n >\n <div className={styles.hero__main}>\n <div className={styles.hero__text}>\n <div className={styles.hero__header}>\n {label != null && <div className={styles.hero__label}>{label}</div>}\n <HeadingLevel\n id={headingId}\n className={cn(\n styles.hero__heading,\n headingClassByStyle[headingStyle],\n )}\n >\n {heading}\n </HeadingLevel>\n </div>\n {description != null && (\n <div className={cn(styles.hero__description, 'dds-prose')}>\n {description}\n </div>\n )}\n </div>\n\n {hasActions && <div className={styles.hero__actions}>{actions}</div>}\n </div>\n </div>\n </div>\n </section>\n );\n};\n"],"names":["useId","jsxs","cn","styles","jsx","elevationStyles","headingClassByStyle"],"mappings":";;;;;;;;AAOO,MAAM,OAAO,CAAC;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf,eAAe;AAAA,EACf;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACP,MAAiB;AACb,QAAM,YAAYA,MAAAA,MAAA;AAElB,QAAM,gBAAgB,UAAU,cAAc,OAAO,QAAQ;AAC7D,QAAM,oBAAoB,cAAc,kBAAkB,OAAO,QAAQ;AACzE,QAAM,QAAQ,iBAAiB,sCAAQ,eAAA,EAAe,GAAG,YAAY,IAAK;AAC1E,QAAM,YACF,qBAAqB,sCAAQ,mBAAA,EAAmB,GAAG,gBAAgB,IAAK;AAC5E,QAAM,eAAe;AAErB,QAAM,aAAa,WAAW,QAAQ,OAAO,YAAY;AACzD,QAAM,kBACF,SAAS,QAAQ,mBAAmB,OAAO,EAAE,oBAAoB;AACrE,QAAM,iBAAiB,MAAM,YAAY,IAAI,SAAY,MAAM,iBAAiB,KAAK;AAErF,SACIC,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACG;AAAA,MACC,GAAG;AAAA,MACJ,WAAWC,GAAAA,GAAGC,oBAAO,MAAM,SAAS;AAAA,MACpC,cAAY,MAAM,YAAY;AAAA,MAC9B,mBAAiB;AAAA,MAEjB,UAAA;AAAA,QAAAF,gCAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,kBAAkB,OAAO,iBAC3C,UAAA;AAAA,UAAA,SAAS,uCACL,OAAA,EAAI,WAAWA,oBAAO,gCAAgC,eAAY,QAC9D,UAAA,MAAA,CACL;AAAA,yCAEH,OAAA,EAAI,WAAWA,YAAAA,QAAO,eAAe,eAAY,QAAO;AAAA,UACxD,aAAa,QACVC,2BAAAA,IAAC,OAAA,EAAI,WAAWD,YAAAA,QAAO,qBAAqB,eAAY,QACpD,yCAAC,OAAA,EAAI,WAAWA,YAAAA,QAAO,iBAAkB,qBAAU,EAAA,CACvD;AAAA,QAAA,GAER;AAAA,QAEAC,2BAAAA,IAAC,OAAA,EAAI,WAAWD,YAAAA,QAAO,eACnB,UAAAC,2BAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACG,WAAWF,GAAAA,GAAGC,YAAAA,QAAO,YAAYE,MAAAA,gBAAgB,aAAa;AAAA,YAC9D,qBAAkB;AAAA,YAElB,UAAAJ,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,YACnB,UAAA;AAAA,cAAAF,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,YACnB,UAAA;AAAA,gBAAAF,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,cAClB,UAAA;AAAA,kBAAA,SAAS,QAAQC,2BAAAA,IAAC,OAAA,EAAI,WAAWD,YAAAA,QAAO,aAAc,UAAA,OAAM;AAAA,kBAC7DC,2BAAAA;AAAAA,oBAAC;AAAA,oBAAA;AAAA,sBACG,IAAI;AAAA,sBACJ,WAAWF,GAAAA;AAAAA,wBACPC,YAAAA,QAAO;AAAA,wBACPG,WAAAA,oBAAoB,YAAY;AAAA,sBAAA;AAAA,sBAGnC,UAAA;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACL,GACJ;AAAA,gBACC,eAAe,QACZF,+BAAC,OAAA,EAAI,WAAWF,MAAGC,YAAAA,QAAO,mBAAmB,WAAW,GACnD,UAAA,YAAA,CACL;AAAA,cAAA,GAER;AAAA,cAEC,cAAcC,2BAAAA,IAAC,OAAA,EAAI,WAAWD,YAAAA,QAAO,eAAgB,UAAA,QAAA,CAAQ;AAAA,YAAA,EAAA,CAClE;AAAA,UAAA;AAAA,QAAA,EACJ,CACJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGZ;;"}