@dnanpm/ui-components 0.8.0 → 0.9.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 (75) hide show
  1. package/dist/components/Accordion/Accordion.css +6 -3
  2. package/dist/components/AccordionItem/AccordionItem.css +6 -3
  3. package/dist/components/Breadcrumb/Breadcrumb.css +6 -3
  4. package/dist/components/Button/Button.css +2 -3
  5. package/dist/components/ButtonCard/ButtonCard.css +2 -3
  6. package/dist/components/ContentCard/ContentCard.cjs +96 -0
  7. package/dist/components/ContentCard/ContentCard.cjs.map +1 -0
  8. package/dist/components/ContentCard/ContentCard.css +249 -0
  9. package/dist/components/ContentCard/ContentCard.d.ts +3 -0
  10. package/dist/components/ContentCard/ContentCard.d.ts.map +1 -0
  11. package/dist/components/ContentCard/ContentCard.js +96 -0
  12. package/dist/components/ContentCard/ContentCard.js.map +1 -0
  13. package/dist/components/ContentCard/ContentCard.module.css.cjs +24 -0
  14. package/dist/components/ContentCard/ContentCard.module.css.cjs.map +1 -0
  15. package/dist/components/ContentCard/ContentCard.module.css.js +25 -0
  16. package/dist/components/ContentCard/ContentCard.module.css.js.map +1 -0
  17. package/dist/components/ContentCard/ContentCard.types.d.ts +99 -0
  18. package/dist/components/ContentCard/ContentCard.types.d.ts.map +1 -0
  19. package/dist/components/ContentCard/index.d.ts +3 -0
  20. package/dist/components/ContentCard/index.d.ts.map +1 -0
  21. package/dist/components/Drawer/Drawer.css +2 -3
  22. package/dist/components/Footer/Footer.css +6 -3
  23. package/dist/components/FunctionButton/FunctionButton.css +2 -3
  24. package/dist/components/Hero/Hero.cjs +24 -26
  25. package/dist/components/Hero/Hero.cjs.map +1 -1
  26. package/dist/components/Hero/Hero.css +81 -74
  27. package/dist/components/Hero/Hero.js +24 -26
  28. package/dist/components/Hero/Hero.js.map +1 -1
  29. package/dist/components/Hero/Hero.module.css.cjs +20 -17
  30. package/dist/components/Hero/Hero.module.css.cjs.map +1 -1
  31. package/dist/components/Hero/Hero.module.css.js +20 -17
  32. package/dist/components/Hero/Hero.module.css.js.map +1 -1
  33. package/dist/components/IconButton/IconButton.css +2 -3
  34. package/dist/components/Label/Label.css +2 -3
  35. package/dist/components/MainNavigation/MainNavigation.cjs +407 -96
  36. package/dist/components/MainNavigation/MainNavigation.cjs.map +1 -1
  37. package/dist/components/MainNavigation/MainNavigation.css +255 -151
  38. package/dist/components/MainNavigation/MainNavigation.d.ts +1 -1
  39. package/dist/components/MainNavigation/MainNavigation.d.ts.map +1 -1
  40. package/dist/components/MainNavigation/MainNavigation.js +409 -98
  41. package/dist/components/MainNavigation/MainNavigation.js.map +1 -1
  42. package/dist/components/MainNavigation/MainNavigation.module.css.cjs +78 -68
  43. package/dist/components/MainNavigation/MainNavigation.module.css.cjs.map +1 -1
  44. package/dist/components/MainNavigation/MainNavigation.module.css.js +78 -68
  45. package/dist/components/MainNavigation/MainNavigation.module.css.js.map +1 -1
  46. package/dist/components/MainNavigation/MainNavigation.types.d.ts +64 -17
  47. package/dist/components/MainNavigation/MainNavigation.types.d.ts.map +1 -1
  48. package/dist/components/MainNavigation/MainNavigation.utils.cjs +20 -0
  49. package/dist/components/MainNavigation/MainNavigation.utils.cjs.map +1 -1
  50. package/dist/components/MainNavigation/MainNavigation.utils.d.ts +10 -1
  51. package/dist/components/MainNavigation/MainNavigation.utils.d.ts.map +1 -1
  52. package/dist/components/MainNavigation/MainNavigation.utils.js +20 -0
  53. package/dist/components/MainNavigation/MainNavigation.utils.js.map +1 -1
  54. package/dist/components/MainNavigation/index.d.ts +1 -1
  55. package/dist/components/MainNavigation/index.d.ts.map +1 -1
  56. package/dist/components/Modal/Modal.css +2 -3
  57. package/dist/components/Notification/Notification.css +6 -3
  58. package/dist/components/Pictograph/Pictograph.css +6 -3
  59. package/dist/components/Pictograph/PictographItem.css +6 -3
  60. package/dist/components/Quote/Quote.css +2 -3
  61. package/dist/components/Spinner/Spinner.css +6 -3
  62. package/dist/index.cjs +2 -0
  63. package/dist/index.cjs.map +1 -1
  64. package/dist/index.d.ts +3 -1
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js +2 -0
  67. package/dist/index.js.map +1 -1
  68. package/dist/styles/utils/elevation.css +2 -3
  69. package/dist/styles/utils/focus.css +25 -22
  70. package/dist/styles/utils/focus.module.css.cjs +3 -3
  71. package/dist/styles/utils/focus.module.css.js +3 -3
  72. package/dist/styles/utils/overlay.css +2 -3
  73. package/dist/styles/utils/text-decoration.css +2 -3
  74. package/dist/styles.css +17 -7
  75. package/package.json +1 -1
@@ -0,0 +1,99 @@
1
+ import { ComponentPropsWithRef, ReactNode } from 'react';
2
+ export type ContentCardHeadingLevel = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
3
+ export type ContentCardMediaKind = 'image' | 'logo';
4
+ export type ContentCardMediaWidth = '1/3' | '1/2';
5
+ export type ContentCardMediaPosition = 'start' | 'end';
6
+ export type ContentCardAppearance = 'plain' | 'border' | 'elevated';
7
+ /**
8
+ * Approved logo-area background colours. Maps to DNA surface tokens; CMS names in
9
+ * parentheses: `white` (White), `sand-*` (Sand / SandE01 / SandE02),
10
+ * `pink-*` (Pink / PinkE01 / PinkE02), `plum-*` (Plum / PlumE01 / PlumE02).
11
+ */
12
+ export type ContentCardLogoBackground = 'white' | 'sand-soft' | 'sand-mid' | 'sand-strong' | 'pink-soft' | 'pink-mid' | 'pink-strong' | 'plum-soft' | 'plum-mid' | 'plum-strong';
13
+ type ContentCardBaseProps = {
14
+ /**
15
+ * Optional media slot (image or logo). The client renders the element and owns
16
+ * `alt`, loading, and optimisation (for example `next/image`). Mark decorative
17
+ * images with an empty `alt`.
18
+ */
19
+ readonly media?: ReactNode;
20
+ /**
21
+ * How the media area is rendered. `logo` centres the media in a 4:3 box over a
22
+ * filled background; `image` fills the area. Ignored when `media` is omitted.
23
+ * @default 'image'
24
+ */
25
+ readonly mediaKind?: ContentCardMediaKind;
26
+ /**
27
+ * Logo-area background colour, limited to approved DNA surface tokens. Only used
28
+ * with `mediaKind="logo"`; defaults to `sand-mid` when omitted.
29
+ */
30
+ readonly mediaBackground?: ContentCardLogoBackground;
31
+ /**
32
+ * Media width in the horizontal layout (1/3 or 1/2 of the card). Ignored in the
33
+ * vertical layout, where media is always full width.
34
+ * @default '1/3'
35
+ */
36
+ readonly mediaWidth?: ContentCardMediaWidth;
37
+ /**
38
+ * Media side in the horizontal layout (logical, RTL-safe). In the vertical
39
+ * layout media is always placed above the content.
40
+ * @default 'start'
41
+ */
42
+ readonly mediaPosition?: ContentCardMediaPosition;
43
+ /**
44
+ * Optional slot above the title for a single small element (for example a
45
+ * `Label`; intended uses: Label, Timestamp, Pretitle).
46
+ */
47
+ readonly titlePrefix?: ReactNode;
48
+ /** Card title. Required. */
49
+ readonly title: ReactNode;
50
+ /**
51
+ * HTML heading level for the title. The consumer owns the document outline.
52
+ * @default 'h3'
53
+ */
54
+ readonly headingLevel?: ContentCardHeadingLevel;
55
+ /**
56
+ * Optional body content. Wrap rich text so it can adopt `dds-prose` styling;
57
+ * pass React nodes rather than HTML strings.
58
+ */
59
+ readonly body?: ReactNode;
60
+ /**
61
+ * Optional actions (0..n `Button`/`IconButton` elements). Laid out in a row that
62
+ * wraps to a column when there is not enough width.
63
+ */
64
+ readonly actions?: ReactNode;
65
+ /**
66
+ * Card surface treatment.
67
+ * @default 'plain'
68
+ */
69
+ readonly appearance?: ContentCardAppearance;
70
+ };
71
+ export interface ContentCardArticleProps extends ContentCardBaseProps, Omit<ComponentPropsWithRef<'article'>, 'title' | 'children'> {
72
+ /**
73
+ * Root element (and role) to render. Use `li` for cards inside a `ul`/`ol`
74
+ * collection, `section` for a standalone page region (becomes a landmark, use
75
+ * sparingly), or `div` when a surrounding element already provides the
76
+ * semantics. The title is still linked as the accessible name via
77
+ * `aria-labelledby` (when not rendering as a generic div).
78
+ * @default 'article'
79
+ */
80
+ readonly as?: 'article';
81
+ }
82
+ export interface ContentCardLiProps extends ContentCardBaseProps, Omit<ComponentPropsWithRef<'li'>, 'title' | 'children'> {
83
+ readonly as: 'li';
84
+ }
85
+ export interface ContentCardSectionProps extends ContentCardBaseProps, Omit<ComponentPropsWithRef<'section'>, 'title' | 'children'> {
86
+ readonly as: 'section';
87
+ }
88
+ export interface ContentCardDivProps extends ContentCardBaseProps, Omit<ComponentPropsWithRef<'div'>, 'title' | 'children'> {
89
+ readonly as: 'div';
90
+ }
91
+ /**
92
+ * Props for the Content card. The `as` prop selects the root element and narrows
93
+ * the element-specific HTML attributes accordingly.
94
+ */
95
+ export type ContentCardProps = ContentCardArticleProps | ContentCardLiProps | ContentCardSectionProps | ContentCardDivProps;
96
+ /** Allowed root elements, derived from the props union. */
97
+ export type ContentCardElement = NonNullable<ContentCardProps['as']>;
98
+ export {};
99
+ //# sourceMappingURL=ContentCard.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentCard.types.d.ts","sourceRoot":"","sources":["../../../src/components/ContentCard/ContentCard.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE9D,MAAM,MAAM,uBAAuB,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC9E,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,MAAM,CAAC;AACpD,MAAM,MAAM,qBAAqB,GAAG,KAAK,GAAG,KAAK,CAAC;AAClD,MAAM,MAAM,wBAAwB,GAAG,OAAO,GAAG,KAAK,CAAC;AACvD,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEpE;;;;GAIG;AACH,MAAM,MAAM,yBAAyB,GAC/B,OAAO,GACP,WAAW,GACX,UAAU,GACV,aAAa,GACb,WAAW,GACX,UAAU,GACV,aAAa,GACb,WAAW,GACX,UAAU,GACV,aAAa,CAAC;AAEpB,KAAK,oBAAoB,GAAG;IACxB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,yBAAyB,CAAC;IACrD;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,qBAAqB,CAAC;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,wBAAwB,CAAC;IAClD;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC;IACjC,4BAA4B;IAC5B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,uBAAuB,CAAC;IAChD;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,qBAAqB,CAAC;CAC/C,CAAC;AAEF,MAAM,WAAW,uBACb,SAAQ,oBAAoB,EAAE,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAC1F;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,kBACb,SAAQ,oBAAoB,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACrF,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,uBACb,SAAQ,oBAAoB,EAAE,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAC1F,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;CAC1B;AAED,MAAM,WAAW,mBACb,SAAQ,oBAAoB,EAAE,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACtF,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GACtB,uBAAuB,GACvB,kBAAkB,GAClB,uBAAuB,GACvB,mBAAmB,CAAC;AAE1B,2DAA2D;AAC3D,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { ContentCard } from './ContentCard';
2
+ export type { ContentCardAppearance, ContentCardArticleProps, ContentCardDivProps, ContentCardElement, ContentCardHeadingLevel, ContentCardLiProps, ContentCardLogoBackground, ContentCardMediaKind, ContentCardMediaPosition, ContentCardMediaWidth, ContentCardProps, ContentCardSectionProps, } from './ContentCard.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ContentCard/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EACR,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,EAChB,uBAAuB,GAC1B,MAAM,qBAAqB,CAAC"}
@@ -1,4 +1,4 @@
1
- @layer dds-components {._drawer_zzxde_1 {
1
+ @layer dds-base, dds-components;@layer dds-components { @layer fallback, components; }@layer dds-components.components{._drawer_zzxde_1 {
2
2
  --_drawer-transition-duration-open: 400ms;
3
3
  --_drawer-transition-duration-close: 200ms;
4
4
  position: fixed;
@@ -215,5 +215,4 @@
215
215
  @starting-style {
216
216
  transform: translateX(0);
217
217
  }
218
- }
219
- }
218
+ } }
@@ -1,4 +1,8 @@
1
- @layer dds-components {/**
1
+ @layer dds-base, dds-components;
2
+
3
+ @layer dds-components { @layer fallback, components; }
4
+
5
+ @layer dds-components.components{/**
2
6
  * The root carries data-color-scheme="dark" because the light-scheme focus
3
7
  * ring puts focus-strong on the outer edge, which only reaches 2.42:1 against
4
8
  * the plum surface and fails SC 1.4.11. The dark scope swaps the ring order
@@ -469,5 +473,4 @@
469
473
  ._footer__organization--current_1lum3_370 {
470
474
  outline: 2px solid Highlight;
471
475
  }
472
- }
473
- }
476
+ } }
@@ -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;
@@ -121,5 +121,4 @@
121
121
  border-color: GrayText;
122
122
  color: GrayText;
123
123
  }
124
- }
125
- }
124
+ } }
@@ -43,34 +43,32 @@ const Hero = ({
43
43
  children: [
44
44
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__background, style: backgroundStyle, children: [
45
45
  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" })
46
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__overlay, "aria-hidden": "true" }),
47
+ 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
48
  ] }),
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
- )
64
- ] }),
65
- description != null && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn.cn(Hero_module.default.hero__description, "dds-prose"), children: description })
49
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__content, children: /* @__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
+ )
66
64
  ] }),
67
- hasActions && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: Hero_module.default.hero__actions, children: [
68
- primaryCta != null && primaryCta,
69
- secondaryCta != null && secondaryCta
70
- ] })
71
- ] }) }),
72
- logoImage != null && /* @__PURE__ */ jsxRuntime.jsx("div", { className: Hero_module.default.hero__logoImage, "aria-hidden": "true", children: logoImage })
73
- ] })
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
70
+ ] })
71
+ ] }) }) })
74
72
  ]
75
73
  }
76
74
  );
@@ -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/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 {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 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 </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,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,uCAEC,OAAA,EAAI,WAAWA,oBAAO,eACnB,UAAAC,+BAAC,SAAI,WAAWF,GAAAA,GAAGC,oBAAO,YAAYE,iBAAAA,QAAgB,aAAa,GAC/D,0CAAC,OAAA,EAAI,WAAWF,oBAAO,YACnB,UAAA;AAAA,UAAAF,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,YACnB,UAAA;AAAA,YAAAF,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,cAClB,UAAA;AAAA,cAAA,SAAS,QAAQC,2BAAAA,IAAC,OAAA,EAAI,WAAWD,YAAAA,QAAO,aAAc,UAAA,OAAM;AAAA,cAC7DC,2BAAAA;AAAAA,gBAAC;AAAA,gBAAA;AAAA,kBACG,IAAI;AAAA,kBACJ,WAAWF,GAAAA;AAAAA,oBACPC,YAAAA,QAAO;AAAA,oBACPG,WAAAA,oBAAoB,YAAY;AAAA,kBAAA;AAAA,kBAGnC,UAAA;AAAA,gBAAA;AAAA,cAAA;AAAA,YACL,GACJ;AAAA,YACC,eAAe,QACZF,+BAAC,OAAA,EAAI,WAAWF,MAAGC,YAAAA,QAAO,mBAAmB,WAAW,GACnD,UAAA,YAAA,CACL;AAAA,UAAA,GAER;AAAA,UAEC,cACGF,2BAAAA,KAAC,OAAA,EAAI,WAAWE,YAAAA,QAAO,eAClB,UAAA;AAAA,YAAA,cAAc,QAAQ;AAAA,YACtB,gBAAgB,QAAQ;AAAA,UAAA,EAAA,CAC7B;AAAA,QAAA,EAAA,CAER,GACJ,EAAA,CACJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGZ;;"}
@@ -1,4 +1,4 @@
1
- @layer dds-components {._hero_1xib4_1 {
1
+ @layer dds-base, dds-components;@layer dds-components { @layer fallback, components; }@layer dds-components.components{._hero_1itry_1 {
2
2
  position: relative;
3
3
  display: flex;
4
4
  flex-direction: column;
@@ -6,9 +6,14 @@
6
6
  padding-top: var(--spacing-space-40);
7
7
  container-name: hero;
8
8
  container-type: inline-size;
9
+
10
+ /* Shared content-column geometry; the logo derives its position from these. */
11
+ --_hero-content-pad-start: var(--spacing-space-20);
12
+ --_hero-content-pad-end: var(--spacing-space-20);
13
+ --_hero-card-fraction: 1;
9
14
  }
10
15
 
11
- ._hero__background_1xib4_11 {
16
+ ._hero__background_1itry_16 {
12
17
  position: absolute;
13
18
  inset-inline: 0;
14
19
  top: 0;
@@ -17,21 +22,21 @@
17
22
  overflow: clip;
18
23
  }
19
24
 
20
- ._hero__backgroundImageComponent_1xib4_20 {
25
+ ._hero__backgroundImageComponent_1itry_25 {
21
26
  width: 100%;
22
27
  height: 100%;
23
28
  }
24
29
 
25
- ._hero__backgroundImageComponent_1xib4_20 > * {
30
+ ._hero__backgroundImageComponent_1itry_25 > * {
26
31
  width: 100%;
27
32
  height: 100%;
28
33
  }
29
34
 
30
- ._hero__backgroundImageComponent_1xib4_20 img,
31
- ._hero__backgroundImageComponent_1xib4_20 picture,
32
- ._hero__backgroundImageComponent_1xib4_20 video,
33
- ._hero__backgroundImageComponent_1xib4_20 canvas,
34
- ._hero__backgroundImageComponent_1xib4_20 svg {
35
+ ._hero__backgroundImageComponent_1itry_25 img,
36
+ ._hero__backgroundImageComponent_1itry_25 picture,
37
+ ._hero__backgroundImageComponent_1itry_25 video,
38
+ ._hero__backgroundImageComponent_1itry_25 canvas,
39
+ ._hero__backgroundImageComponent_1itry_25 svg {
35
40
  display: block;
36
41
  width: 100%;
37
42
  height: 100%;
@@ -39,24 +44,35 @@
39
44
  object-position: right center;
40
45
  }
41
46
 
42
- ._hero__logoImage_1xib4_42 {
47
+ ._hero__logoImageWrap_1itry_47 {
48
+ position: absolute;
49
+ inset: 0;
50
+ max-width: 1280px;
51
+ margin-inline: auto;
52
+ }
53
+
54
+ ._hero__logoImage_1itry_47 {
43
55
  position: absolute;
56
+ /* Insets bound the available area; padding provides the safety margins to those edges. */
44
57
  top: 0;
45
- left: 0;
46
58
  right: 0;
59
+ bottom: var(--spacing-space-40);
60
+ left: 0;
47
61
  display: flex;
48
62
  align-items: center;
49
63
  justify-content: center;
50
- height: 200px;
51
- padding-inline: var(--spacing-space-20);
64
+ max-width: 500px;
65
+ margin-inline: auto;
66
+ padding: var(--spacing-space-32) var(--spacing-space-40) var(--spacing-space-20);
52
67
  }
53
68
 
54
- ._hero__logoImage_1xib4_42 > * {
55
- height: auto;
56
- max-height: 80%;
69
+ ._hero__logoImage_1itry_47 > * {
70
+ max-width: 100%;
71
+ max-height: 100%;
72
+ object-fit: contain;
57
73
  }
58
74
 
59
- ._hero__overlay_1xib4_59 {
75
+ ._hero__overlay_1itry_75 {
60
76
  position: absolute;
61
77
  inset-inline: 0;
62
78
  bottom: 0;
@@ -68,7 +84,7 @@
68
84
  );
69
85
  }
70
86
 
71
- ._hero__content_1xib4_71 {
87
+ ._hero__content_1itry_87 {
72
88
  position: relative;
73
89
  z-index: 1;
74
90
  display: flex;
@@ -80,74 +96,74 @@
80
96
  width: 100%;
81
97
  margin-inline: auto;
82
98
  padding-top: 200px;
83
- padding-inline: var(--spacing-space-20);
99
+ padding-inline: var(--_hero-content-pad-start) var(--_hero-content-pad-end);
84
100
  }
85
101
 
86
- ._hero__card_1xib4_86 {
102
+ ._hero__card_1itry_102 {
87
103
  min-width: 0;
88
- width: 100%;
104
+ width: calc(var(--_hero-card-fraction) * 100%);
89
105
  background-color: var(--color-semantic-surface-base);
90
106
  border: var(--borderwidth-semantic-xs) solid var(--color-semantic-border-neutral-base);
91
107
  border-radius: var(--radius-semantic-md);
92
108
  padding: var(--spacing-space-20);
93
109
  }
94
110
 
95
- ._hero__main_1xib4_95 {
111
+ ._hero__main_1itry_111 {
96
112
  display: flex;
97
113
  flex-direction: column;
98
114
  gap: var(--spacing-space-40);
99
115
  }
100
116
 
101
- ._hero__text_1xib4_101 {
117
+ ._hero__text_1itry_117 {
102
118
  display: flex;
103
119
  flex-direction: column;
104
120
  gap: var(--spacing-space-20);
105
121
  }
106
122
 
107
- ._hero__header_1xib4_107 {
123
+ ._hero__header_1itry_123 {
108
124
  display: flex;
109
125
  flex-direction: column;
110
126
  gap: var(--spacing-space-8);
111
127
  }
112
128
 
113
- ._hero__label_1xib4_113 {
129
+ ._hero__label_1itry_129 {
114
130
  align-self: flex-start;
115
131
  }
116
132
 
117
- ._hero__heading_1xib4_117 {
133
+ ._hero__heading_1itry_133 {
118
134
  margin: 0;
119
135
  color: var(--color-semantic-foreground-default);
120
136
  text-wrap: balance;
121
137
  }
122
138
 
123
- ._hero__heading--default_1xib4_123 {
139
+ ._hero__heading--default_1itry_139 {
124
140
  font: var(--typography-heading-lg);
125
141
  }
126
142
 
127
- ._hero__heading--large_1xib4_127 {
143
+ ._hero__heading--large_1itry_143 {
128
144
  font: var(--typography-heading-xl);
129
145
  }
130
146
 
131
- ._hero__heading--small_1xib4_131 {
147
+ ._hero__heading--small_1itry_147 {
132
148
  font: var(--typography-heading-md);
133
149
  }
134
150
 
135
- ._hero__description_1xib4_135 {
151
+ ._hero__description_1itry_151 {
136
152
  margin: 0;
137
153
  color: var(--color-semantic-foreground-default);
138
154
  font: var(--typography-body-md);
139
155
  text-wrap: pretty;
140
156
  }
141
157
 
142
- ._hero__description_1xib4_135 p {
158
+ ._hero__description_1itry_151 p {
143
159
  margin: 0;
144
160
  }
145
161
 
146
- ._hero__description_1xib4_135 p + p {
162
+ ._hero__description_1itry_151 p + p {
147
163
  margin-top: var(--spacing-space-12);
148
164
  }
149
165
 
150
- ._hero__actions_1xib4_150 {
166
+ ._hero__actions_1itry_166 {
151
167
  display: flex;
152
168
  flex-direction: row;
153
169
  align-items: flex-start;
@@ -156,83 +172,74 @@
156
172
  }
157
173
 
158
174
  @container hero (min-width: 768px) {
159
- ._hero__background_1xib4_11 {
160
- height: 460px;
175
+ ._hero__content_1itry_87,
176
+ ._hero__background_1itry_16 {
177
+ --_hero-content-pad-start: var(--spacing-space-40);
178
+ --_hero-content-pad-end: var(--spacing-space-40);
179
+ --_hero-card-fraction: 0.5;
180
+ }
181
+
182
+ ._hero__background_1itry_16 {
183
+ height: auto;
184
+ bottom: var(--spacing-space-40);
161
185
  }
162
186
 
163
- ._hero__content_1xib4_71 {
187
+ ._hero__content_1itry_87 {
164
188
  flex-direction: row;
165
189
  align-items: flex-end;
166
190
  min-height: 460px;
167
191
  gap: var(--spacing-space-40);
168
192
  padding-top: 0;
169
- padding-inline: var(--spacing-space-40);
170
193
  }
171
194
 
172
- ._hero__card_1xib4_86 {
173
- width: 50%;
195
+ ._hero__card_1itry_102 {
174
196
  max-width: 650px;
175
197
  }
176
198
 
177
- ._hero__logoImage_1xib4_42 {
178
- position: static;
179
- flex: 1 1 auto;
180
- min-width: 0;
181
- height: auto;
182
- max-height: 460px;
183
- align-items: center;
184
- align-self: stretch;
185
- margin-top: calc(-1 * var(--spacing-space-40));
186
- padding-inline: 0;
187
- padding-top: 0;
188
- padding-bottom: 0;
189
- }
190
-
191
- ._hero__logoImage_1xib4_42 > * {
192
- width: auto;
193
- max-width: 90%;
194
- max-height: 100%;
199
+ ._hero__logoImage_1itry_47 {
200
+ bottom: 0;
201
+ padding: var(--spacing-space-40);
202
+ /* Inner edge sits at the card's right edge: pad-start + card-fraction of the content box. */
203
+ left: calc(
204
+ var(--_hero-content-pad-start) + var(--_hero-card-fraction) *
205
+ (100% - var(--_hero-content-pad-start) - var(--_hero-content-pad-end))
206
+ );
195
207
  }
196
208
  }
197
209
 
198
210
  @container hero (min-width: 1024px) {
199
- ._hero__background_1xib4_11 {
200
- height: 440px;
211
+ ._hero__content_1itry_87,
212
+ ._hero__background_1itry_16 {
213
+ --_hero-content-pad-start: var(--spacing-space-80);
214
+ --_hero-content-pad-end: var(--spacing-space-40);
215
+ --_hero-card-fraction: 0.6;
201
216
  }
202
217
 
203
- ._hero__content_1xib4_71 {
218
+ ._hero__content_1itry_87 {
204
219
  min-height: 440px;
205
- padding-left: var(--spacing-space-80);
206
- padding-right: var(--spacing-space-40);
207
220
  }
208
221
 
209
- ._hero__card_1xib4_86 {
210
- width: 60%;
222
+ ._hero__card_1itry_102 {
211
223
  max-width: initial;
212
224
  padding: var(--spacing-space-40);
213
225
  }
214
-
215
- ._hero__logoImage_1xib4_42 {
216
- max-height: 440px;
217
- }
218
226
  }
219
227
 
220
228
  @media (forced-colors: active) {
221
- ._hero__overlay_1xib4_59 {
229
+ ._hero__overlay_1itry_75 {
222
230
  display: none;
223
231
  }
224
232
 
225
- ._hero__background_1xib4_11 {
233
+ ._hero__background_1itry_16 {
226
234
  background-color: Canvas;
227
235
  }
228
236
 
229
- ._hero__card_1xib4_86 {
237
+ ._hero__card_1itry_102 {
230
238
  border: var(--borderwidth-semantic-xs) solid CanvasText;
231
239
  box-shadow: none;
232
240
  }
233
241
 
234
- ._hero__logoImage_1xib4_42 {
242
+ ._hero__logoImageWrap_1itry_47 {
235
243
  display: none;
236
244
  }
237
- }
238
- }
245
+ } }
@@ -41,34 +41,32 @@ const Hero = ({
41
41
  children: [
42
42
  /* @__PURE__ */ jsxs("div", { className: styles.hero__background, style: backgroundStyle, children: [
43
43
  image != null && /* @__PURE__ */ jsx("div", { className: styles.hero__backgroundImageComponent, "aria-hidden": "true", children: image }),
44
- /* @__PURE__ */ jsx("div", { className: styles.hero__overlay, "aria-hidden": "true" })
44
+ /* @__PURE__ */ jsx("div", { className: styles.hero__overlay, "aria-hidden": "true" }),
45
+ logoImage != null && /* @__PURE__ */ jsx("div", { className: styles.hero__logoImageWrap, "aria-hidden": "true", children: /* @__PURE__ */ jsx("div", { className: styles.hero__logoImage, children: logoImage }) })
45
46
  ] }),
46
- /* @__PURE__ */ jsxs("div", { className: styles.hero__content, children: [
47
- /* @__PURE__ */ jsx("div", { className: cn(styles.hero__card, elevationStyles.elevationHigh), children: /* @__PURE__ */ jsxs("div", { className: styles.hero__main, children: [
48
- /* @__PURE__ */ jsxs("div", { className: styles.hero__text, children: [
49
- /* @__PURE__ */ jsxs("div", { className: styles.hero__header, children: [
50
- label != null && /* @__PURE__ */ jsx("div", { className: styles.hero__label, children: label }),
51
- /* @__PURE__ */ jsx(
52
- HeadingLevel,
53
- {
54
- id: headingId,
55
- className: cn(
56
- styles.hero__heading,
57
- headingClassByStyle[headingStyle]
58
- ),
59
- children: heading
60
- }
61
- )
62
- ] }),
63
- description != null && /* @__PURE__ */ jsx("div", { className: cn(styles.hero__description, "dds-prose"), children: description })
47
+ /* @__PURE__ */ jsx("div", { className: styles.hero__content, children: /* @__PURE__ */ jsx("div", { className: cn(styles.hero__card, elevationStyles.elevationHigh), children: /* @__PURE__ */ jsxs("div", { className: styles.hero__main, children: [
48
+ /* @__PURE__ */ jsxs("div", { className: styles.hero__text, children: [
49
+ /* @__PURE__ */ jsxs("div", { className: styles.hero__header, children: [
50
+ label != null && /* @__PURE__ */ jsx("div", { className: styles.hero__label, children: label }),
51
+ /* @__PURE__ */ jsx(
52
+ HeadingLevel,
53
+ {
54
+ id: headingId,
55
+ className: cn(
56
+ styles.hero__heading,
57
+ headingClassByStyle[headingStyle]
58
+ ),
59
+ children: heading
60
+ }
61
+ )
64
62
  ] }),
65
- hasActions && /* @__PURE__ */ jsxs("div", { className: styles.hero__actions, children: [
66
- primaryCta != null && primaryCta,
67
- secondaryCta != null && secondaryCta
68
- ] })
69
- ] }) }),
70
- logoImage != null && /* @__PURE__ */ jsx("div", { className: styles.hero__logoImage, "aria-hidden": "true", children: logoImage })
71
- ] })
63
+ description != null && /* @__PURE__ */ jsx("div", { className: cn(styles.hero__description, "dds-prose"), children: description })
64
+ ] }),
65
+ hasActions && /* @__PURE__ */ jsxs("div", { className: styles.hero__actions, children: [
66
+ primaryCta != null && primaryCta,
67
+ secondaryCta != null && secondaryCta
68
+ ] })
69
+ ] }) }) })
72
70
  ]
73
71
  }
74
72
  );