@digital-b2c/coreui-kit 0.5.2 → 0.5.3

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.
package/dist/index.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as React$1 from 'react';
3
- import React__default, { ImgHTMLAttributes, ReactNode, Ref, AnchorHTMLAttributes, HTMLAttributes, FC, PropsWithChildren } from 'react';
2
+ import * as react from 'react';
3
+ import react__default, { ImgHTMLAttributes, ReactNode, AnchorHTMLAttributes, HTMLAttributes, FC, PropsWithChildren } from 'react';
4
4
 
5
5
  interface IPicture {
6
6
  src: string;
@@ -19,6 +19,26 @@ type ResponsiveSources = {
19
19
  };
20
20
  type PictureProps = ImgHTMLAttributes<HTMLImageElement> & (SrcOnly | ResponsiveSources);
21
21
 
22
+ interface ICta {
23
+ label: string;
24
+ url: string;
25
+ isExternal?: boolean;
26
+ }
27
+ interface ICtaLogo extends ICta {
28
+ logo?: IPicture;
29
+ }
30
+
31
+ interface BrandsStripProps {
32
+ className?: string;
33
+ variant?: 'light' | 'dark';
34
+ title?: string;
35
+ logos?: PictureProps[];
36
+ cta?: ICta;
37
+ size?: 'small';
38
+ }
39
+
40
+ declare const BrandsStrip: ({ className, variant, title, logos, cta, size, }: BrandsStripProps) => react_jsx_runtime.JSX.Element;
41
+
22
42
  declare const svgs: {
23
43
  ads: string;
24
44
  book: string;
@@ -73,34 +93,11 @@ declare const svgs: {
73
93
  xWhite: string;
74
94
  };
75
95
  type IconType = keyof typeof svgs;
76
- interface IconProps extends React__default.ComponentPropsWithRef<'svg'> {
96
+ interface IconProps extends react__default.ComponentPropsWithRef<'svg'> {
77
97
  type: IconType;
78
98
  size?: number;
79
99
  }
80
- declare const Icon: React__default.FC<IconProps>;
81
-
82
- interface ICta {
83
- label?: string;
84
- url: string;
85
- isExternal?: boolean;
86
- }
87
- interface ICtaLogo extends ICta {
88
- logo?: IPicture;
89
- }
90
- interface ICtaIcon extends ICta {
91
- icon?: IconType;
92
- }
93
-
94
- interface BrandsStripProps {
95
- className?: string;
96
- variant?: 'light' | 'dark';
97
- title?: string;
98
- logos?: PictureProps[];
99
- cta?: ICta;
100
- size?: 'small';
101
- }
102
-
103
- declare const BrandsStrip: ({ className, variant, title, logos, cta, size, }: BrandsStripProps) => react_jsx_runtime.JSX.Element;
100
+ declare const Icon: react__default.FC<IconProps>;
104
101
 
105
102
  declare const ButtonVariantReadOnly: readonly ["primary", "secondary", "ghost", "nofill", "grey", "nofillblack", "shiny"];
106
103
  type TButtonVariant = (typeof ButtonVariantReadOnly)[number];
@@ -129,15 +126,11 @@ interface CardProps {
129
126
  subtitle?: ReactNode;
130
127
  icon?: IconType;
131
128
  logo?: IPicture;
132
- cta?: ICtaLogo & ICtaIcon;
129
+ cta?: ICta;
133
130
  children?: ReactNode;
134
- ref?: Ref<HTMLDivElement>;
135
131
  }
136
132
 
137
- declare const Card: {
138
- ({ className, title, subtitle, cta, icon, logo, children, ref }: CardProps): react_jsx_runtime.JSX.Element;
139
- displayName: string;
140
- } & {
133
+ declare const Card: react.ForwardRefExoticComponent<CardProps & react.RefAttributes<HTMLDivElement>> & {
141
134
  Title: ({ children }: CardTitleProps) => react_jsx_runtime.JSX.Element;
142
135
  Subtitle: ({ children }: CardSubtitleProps) => react_jsx_runtime.JSX.Element;
143
136
  };
@@ -213,7 +206,7 @@ interface ContainerProps extends HTMLAttributes<HTMLDivElement> {
213
206
  children: ReactNode;
214
207
  }
215
208
 
216
- declare const Container: React$1.ForwardRefExoticComponent<ContainerProps & React$1.RefAttributes<HTMLDivElement>>;
209
+ declare const Container: react.ForwardRefExoticComponent<ContainerProps & react.RefAttributes<HTMLDivElement>>;
217
210
 
218
211
  type ConditionalWrapperProps = {
219
212
  condition: boolean;
@@ -237,7 +230,7 @@ type CardCollectionTitleProps = {
237
230
 
238
231
  interface CardCollectionProps {
239
232
  className?: string;
240
- variant?: 'default' | 'threeCols' | 'fourCols' | 'examCard' | 'cardCarousel';
233
+ variant?: 'default' | 'threeCols' | 'examCard' | 'cardCarousel';
241
234
  title?: ReactNode;
242
235
  subtitle?: ReactNode;
243
236
  cards?: CardProps[];
@@ -487,25 +480,24 @@ declare const TextEvent: ((props: TextEventProps) => react_jsx_runtime.JSX.Eleme
487
480
  RichText: ({ children }: TextEventRichTextProps) => react_jsx_runtime.JSX.Element;
488
481
  };
489
482
 
490
- type TextCenterCtaInBottomSubtitleProps = {
483
+ type TextBodyBodyProps = {
491
484
  children: ReactNode;
492
485
  };
493
486
 
494
- type TextCenterCtaInBottomTitleProps = {
487
+ type TextBodyTitleProps = {
495
488
  children: ReactNode;
496
489
  };
497
490
 
498
- interface TextCenterCtaInBottomProps {
491
+ interface TextBodyProps {
499
492
  className?: string;
500
- title?: ReactNode;
501
- subtitle?: ReactNode;
502
- ctas?: ICtaLogo[];
493
+ title?: string;
494
+ body?: ReactNode;
503
495
  children?: ReactNode;
504
496
  }
505
497
 
506
- declare const TextCenterCtaInBottom: (({ className, title, subtitle, ctas, children, }: TextCenterCtaInBottomProps) => react_jsx_runtime.JSX.Element) & {
507
- Title: ({ children }: TextCenterCtaInBottomTitleProps) => react_jsx_runtime.JSX.Element;
508
- Subtitle: ({ children }: TextCenterCtaInBottomSubtitleProps) => react_jsx_runtime.JSX.Element;
498
+ declare const TextBody: ((props: TextBodyProps) => react_jsx_runtime.JSX.Element) & {
499
+ Title: ({ children }: TextBodyTitleProps) => react_jsx_runtime.JSX.Element;
500
+ Body: ({ children }: TextBodyBodyProps) => react_jsx_runtime.JSX.Element;
509
501
  };
510
502
 
511
503
  type IntersectionObserverOptions = {
@@ -531,4 +523,4 @@ type SlotMap = Record<string, SlotComponent>;
531
523
  */
532
524
  declare function resolveCompoundSlots(children: ReactNode, slots: SlotMap): Record<string, ReactNode>;
533
525
 
534
- export { Anchor, type AnchorProps, BrandsStrip, type BrandsStripProps, Button, type ButtonProps, Card, CardCollection, type CardCollectionProps, type CardProps, ConditionalWrapper, type ConditionalWrapperProps, ContactModule, type ContactModuleProps, Container, type ContainerProps, CountingCard, type CountingCardProps, EventList, type EventListProps, Footer, type FooterProps, HeroBanner, type HeroBannerProps, type ICta, type ICtaIcon, type ICtaLogo, type IPicture, Icon, type IconType, InfoCard, type InfoCardProps, MiniBanner, type MiniBannerProps, MiniSectionCta, type MiniSectionCtaProps, Pagination, type PaginationProps, Picture, type PictureProps, PracticeCard, type PracticeCardProps, PracticePathCards, type PracticePathCardsProps, Teaser5050With3Text, type Teaser5050With3TextProps, Teaser5050WithCta, type Teaser5050WithCtaProps, TextCenterCtaInBottom, type TextCenterCtaInBottomProps, TextEvent, type TextEventProps, resolveCompoundSlots, svgs, useIntersectionObserver };
526
+ export { Anchor, type AnchorProps, BrandsStrip, type BrandsStripProps, Button, type ButtonProps, Card, CardCollection, type CardCollectionProps, type CardProps, ConditionalWrapper, type ConditionalWrapperProps, ContactModule, type ContactModuleProps, Container, type ContainerProps, CountingCard, type CountingCardProps, EventList, type EventListProps, Footer, type FooterProps, HeroBanner, type HeroBannerProps, type ICta, type ICtaLogo, type IPicture, Icon, type IconType, InfoCard, type InfoCardProps, MiniBanner, type MiniBannerProps, MiniSectionCta, type MiniSectionCtaProps, Pagination, type PaginationProps, Picture, type PictureProps, PracticeCard, type PracticeCardProps, PracticePathCards, type PracticePathCardsProps, Teaser5050With3Text, type Teaser5050With3TextProps, Teaser5050WithCta, type Teaser5050WithCtaProps, TextBody, type TextBodyProps, TextEvent, type TextEventProps, resolveCompoundSlots, svgs, useIntersectionObserver };
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as React$1 from 'react';
3
- import React__default, { ImgHTMLAttributes, ReactNode, Ref, AnchorHTMLAttributes, HTMLAttributes, FC, PropsWithChildren } from 'react';
2
+ import * as react from 'react';
3
+ import react__default, { ImgHTMLAttributes, ReactNode, AnchorHTMLAttributes, HTMLAttributes, FC, PropsWithChildren } from 'react';
4
4
 
5
5
  interface IPicture {
6
6
  src: string;
@@ -19,6 +19,26 @@ type ResponsiveSources = {
19
19
  };
20
20
  type PictureProps = ImgHTMLAttributes<HTMLImageElement> & (SrcOnly | ResponsiveSources);
21
21
 
22
+ interface ICta {
23
+ label: string;
24
+ url: string;
25
+ isExternal?: boolean;
26
+ }
27
+ interface ICtaLogo extends ICta {
28
+ logo?: IPicture;
29
+ }
30
+
31
+ interface BrandsStripProps {
32
+ className?: string;
33
+ variant?: 'light' | 'dark';
34
+ title?: string;
35
+ logos?: PictureProps[];
36
+ cta?: ICta;
37
+ size?: 'small';
38
+ }
39
+
40
+ declare const BrandsStrip: ({ className, variant, title, logos, cta, size, }: BrandsStripProps) => react_jsx_runtime.JSX.Element;
41
+
22
42
  declare const svgs: {
23
43
  ads: string;
24
44
  book: string;
@@ -73,34 +93,11 @@ declare const svgs: {
73
93
  xWhite: string;
74
94
  };
75
95
  type IconType = keyof typeof svgs;
76
- interface IconProps extends React__default.ComponentPropsWithRef<'svg'> {
96
+ interface IconProps extends react__default.ComponentPropsWithRef<'svg'> {
77
97
  type: IconType;
78
98
  size?: number;
79
99
  }
80
- declare const Icon: React__default.FC<IconProps>;
81
-
82
- interface ICta {
83
- label?: string;
84
- url: string;
85
- isExternal?: boolean;
86
- }
87
- interface ICtaLogo extends ICta {
88
- logo?: IPicture;
89
- }
90
- interface ICtaIcon extends ICta {
91
- icon?: IconType;
92
- }
93
-
94
- interface BrandsStripProps {
95
- className?: string;
96
- variant?: 'light' | 'dark';
97
- title?: string;
98
- logos?: PictureProps[];
99
- cta?: ICta;
100
- size?: 'small';
101
- }
102
-
103
- declare const BrandsStrip: ({ className, variant, title, logos, cta, size, }: BrandsStripProps) => react_jsx_runtime.JSX.Element;
100
+ declare const Icon: react__default.FC<IconProps>;
104
101
 
105
102
  declare const ButtonVariantReadOnly: readonly ["primary", "secondary", "ghost", "nofill", "grey", "nofillblack", "shiny"];
106
103
  type TButtonVariant = (typeof ButtonVariantReadOnly)[number];
@@ -129,15 +126,11 @@ interface CardProps {
129
126
  subtitle?: ReactNode;
130
127
  icon?: IconType;
131
128
  logo?: IPicture;
132
- cta?: ICtaLogo & ICtaIcon;
129
+ cta?: ICta;
133
130
  children?: ReactNode;
134
- ref?: Ref<HTMLDivElement>;
135
131
  }
136
132
 
137
- declare const Card: {
138
- ({ className, title, subtitle, cta, icon, logo, children, ref }: CardProps): react_jsx_runtime.JSX.Element;
139
- displayName: string;
140
- } & {
133
+ declare const Card: react.ForwardRefExoticComponent<CardProps & react.RefAttributes<HTMLDivElement>> & {
141
134
  Title: ({ children }: CardTitleProps) => react_jsx_runtime.JSX.Element;
142
135
  Subtitle: ({ children }: CardSubtitleProps) => react_jsx_runtime.JSX.Element;
143
136
  };
@@ -213,7 +206,7 @@ interface ContainerProps extends HTMLAttributes<HTMLDivElement> {
213
206
  children: ReactNode;
214
207
  }
215
208
 
216
- declare const Container: React$1.ForwardRefExoticComponent<ContainerProps & React$1.RefAttributes<HTMLDivElement>>;
209
+ declare const Container: react.ForwardRefExoticComponent<ContainerProps & react.RefAttributes<HTMLDivElement>>;
217
210
 
218
211
  type ConditionalWrapperProps = {
219
212
  condition: boolean;
@@ -237,7 +230,7 @@ type CardCollectionTitleProps = {
237
230
 
238
231
  interface CardCollectionProps {
239
232
  className?: string;
240
- variant?: 'default' | 'threeCols' | 'fourCols' | 'examCard' | 'cardCarousel';
233
+ variant?: 'default' | 'threeCols' | 'examCard' | 'cardCarousel';
241
234
  title?: ReactNode;
242
235
  subtitle?: ReactNode;
243
236
  cards?: CardProps[];
@@ -487,25 +480,24 @@ declare const TextEvent: ((props: TextEventProps) => react_jsx_runtime.JSX.Eleme
487
480
  RichText: ({ children }: TextEventRichTextProps) => react_jsx_runtime.JSX.Element;
488
481
  };
489
482
 
490
- type TextCenterCtaInBottomSubtitleProps = {
483
+ type TextBodyBodyProps = {
491
484
  children: ReactNode;
492
485
  };
493
486
 
494
- type TextCenterCtaInBottomTitleProps = {
487
+ type TextBodyTitleProps = {
495
488
  children: ReactNode;
496
489
  };
497
490
 
498
- interface TextCenterCtaInBottomProps {
491
+ interface TextBodyProps {
499
492
  className?: string;
500
- title?: ReactNode;
501
- subtitle?: ReactNode;
502
- ctas?: ICtaLogo[];
493
+ title?: string;
494
+ body?: ReactNode;
503
495
  children?: ReactNode;
504
496
  }
505
497
 
506
- declare const TextCenterCtaInBottom: (({ className, title, subtitle, ctas, children, }: TextCenterCtaInBottomProps) => react_jsx_runtime.JSX.Element) & {
507
- Title: ({ children }: TextCenterCtaInBottomTitleProps) => react_jsx_runtime.JSX.Element;
508
- Subtitle: ({ children }: TextCenterCtaInBottomSubtitleProps) => react_jsx_runtime.JSX.Element;
498
+ declare const TextBody: ((props: TextBodyProps) => react_jsx_runtime.JSX.Element) & {
499
+ Title: ({ children }: TextBodyTitleProps) => react_jsx_runtime.JSX.Element;
500
+ Body: ({ children }: TextBodyBodyProps) => react_jsx_runtime.JSX.Element;
509
501
  };
510
502
 
511
503
  type IntersectionObserverOptions = {
@@ -531,4 +523,4 @@ type SlotMap = Record<string, SlotComponent>;
531
523
  */
532
524
  declare function resolveCompoundSlots(children: ReactNode, slots: SlotMap): Record<string, ReactNode>;
533
525
 
534
- export { Anchor, type AnchorProps, BrandsStrip, type BrandsStripProps, Button, type ButtonProps, Card, CardCollection, type CardCollectionProps, type CardProps, ConditionalWrapper, type ConditionalWrapperProps, ContactModule, type ContactModuleProps, Container, type ContainerProps, CountingCard, type CountingCardProps, EventList, type EventListProps, Footer, type FooterProps, HeroBanner, type HeroBannerProps, type ICta, type ICtaIcon, type ICtaLogo, type IPicture, Icon, type IconType, InfoCard, type InfoCardProps, MiniBanner, type MiniBannerProps, MiniSectionCta, type MiniSectionCtaProps, Pagination, type PaginationProps, Picture, type PictureProps, PracticeCard, type PracticeCardProps, PracticePathCards, type PracticePathCardsProps, Teaser5050With3Text, type Teaser5050With3TextProps, Teaser5050WithCta, type Teaser5050WithCtaProps, TextCenterCtaInBottom, type TextCenterCtaInBottomProps, TextEvent, type TextEventProps, resolveCompoundSlots, svgs, useIntersectionObserver };
526
+ export { Anchor, type AnchorProps, BrandsStrip, type BrandsStripProps, Button, type ButtonProps, Card, CardCollection, type CardCollectionProps, type CardProps, ConditionalWrapper, type ConditionalWrapperProps, ContactModule, type ContactModuleProps, Container, type ContainerProps, CountingCard, type CountingCardProps, EventList, type EventListProps, Footer, type FooterProps, HeroBanner, type HeroBannerProps, type ICta, type ICtaLogo, type IPicture, Icon, type IconType, InfoCard, type InfoCardProps, MiniBanner, type MiniBannerProps, MiniSectionCta, type MiniSectionCtaProps, Pagination, type PaginationProps, Picture, type PictureProps, PracticeCard, type PracticeCardProps, PracticePathCards, type PracticePathCardsProps, Teaser5050With3Text, type Teaser5050With3TextProps, Teaser5050WithCta, type Teaser5050WithCtaProps, TextBody, type TextBodyProps, TextEvent, type TextEventProps, resolveCompoundSlots, svgs, useIntersectionObserver };
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import clsx19 from 'clsx';
2
2
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
3
- import React52, { forwardRef, useRef, useState, useCallback, Children, isValidElement, useMemo, useEffect } from 'react';
3
+ import React52, { forwardRef, Children, isValidElement, useRef, useState, useCallback, useMemo, useEffect } from 'react';
4
4
  import gsap$1, { gsap } from 'gsap';
5
5
  import { useGSAP } from '@gsap/react';
6
6
  import { ScrollTrigger } from 'gsap/ScrollTrigger';
@@ -665,54 +665,40 @@ function resolveCompoundSlots(children, slots) {
665
665
  return resolved;
666
666
  }
667
667
 
668
- // src/components/primitives/Container/Container.module.scss
669
- var Container_module_default = {
670
- container: "Container_module_container"
671
- };
672
- var Container = forwardRef(
673
- (_a, ref) => {
674
- var _b = _a, { children, className } = _b, props = __objRest(_b, ["children", "className"]);
675
- return /* @__PURE__ */ jsx("div", __spreadProps(__spreadValues({ ref, className: clsx19(Container_module_default.container, className) }, props), { children }));
676
- }
677
- );
678
- Container.displayName = "Container";
679
-
680
668
  // src/components/Card/Card.module.scss
681
669
  var Card_module_default = {
682
670
  card: "Card_module_card",
683
671
  logo: "Card_module_logo",
684
672
  subtitle: "Card_module_subtitle"
685
673
  };
686
- var Card = ({ className, title, subtitle, cta, icon, logo, children, ref }) => {
687
- var _a, _b;
688
- const { url: href, label, isExternal } = cta != null ? cta : {};
689
- const slots = resolveCompoundSlots(children, {
690
- title: CardTitle,
691
- subtitle: CardSubtitle
692
- });
693
- const titleNode = (_a = slots.title) != null ? _a : title;
694
- const subtitleNode = (_b = slots.subtitle) != null ? _b : subtitle;
695
- console.log(href && !label, href, !label);
696
- return /* @__PURE__ */ jsxs(
697
- ConditionalWrapper,
698
- __spreadProps(__spreadValues({
699
- ref,
700
- className: clsx19(Card_module_default.card, className),
701
- wrapper: Anchor,
702
- fallback: "div",
703
- condition: href && !label
704
- }, href ? { href, isExternal } : {}), {
705
- children: [
706
- (logo == null ? void 0 : logo.src) ? /* @__PURE__ */ jsx(Picture, __spreadValues({ className: Card_module_default.logo }, logo)) : icon && /* @__PURE__ */ jsx(Icon, { type: icon, className: Card_module_default.logo }),
707
- /* @__PURE__ */ jsxs("div", { className: Card_module_default.content, children: [
708
- titleNode && /* @__PURE__ */ jsx("h3", { className: "h4", children: titleNode }),
709
- subtitleNode && /* @__PURE__ */ jsx("div", { className: Card_module_default.subtitle, children: subtitleNode })
710
- ] }),
711
- (cta == null ? void 0 : cta.label) && /* @__PURE__ */ jsx(Button, { href: cta.url, isExternal: cta.isExternal, variant: "secondary", icon: cta.icon, children: cta.label })
712
- ]
713
- })
714
- );
715
- };
674
+ var Card = forwardRef(
675
+ ({ className, title, subtitle, cta, icon, logo, children }, ref) => {
676
+ var _a, _b;
677
+ const slots = resolveCompoundSlots(children, {
678
+ title: CardTitle,
679
+ subtitle: CardSubtitle
680
+ });
681
+ const titleNode = (_a = slots.title) != null ? _a : title;
682
+ const subtitleNode = (_b = slots.subtitle) != null ? _b : subtitle;
683
+ return /* @__PURE__ */ jsxs("div", { ref, className: clsx19(Card_module_default.card, className), children: [
684
+ (logo == null ? void 0 : logo.src) ? /* @__PURE__ */ jsx(Picture, __spreadValues({ className: Card_module_default.logo }, logo)) : icon && /* @__PURE__ */ jsx(Icon, { type: icon, className: Card_module_default.logo }),
685
+ /* @__PURE__ */ jsxs("div", { className: Card_module_default.content, children: [
686
+ titleNode && /* @__PURE__ */ jsx("h3", { className: "h4", children: titleNode }),
687
+ subtitleNode && /* @__PURE__ */ jsx("div", { className: Card_module_default.subtitle, children: subtitleNode })
688
+ ] }),
689
+ cta && /* @__PURE__ */ jsx(
690
+ Button,
691
+ {
692
+ href: cta.url,
693
+ isExternal: cta.isExternal,
694
+ variant: "secondary",
695
+ icon: cta.url ? "rightBlack" : void 0,
696
+ children: cta.label
697
+ }
698
+ )
699
+ ] });
700
+ }
701
+ );
716
702
  Card.displayName = "Card";
717
703
 
718
704
  // src/components/Card/index.ts
@@ -875,6 +861,18 @@ var Pagination = ({
875
861
  ] });
876
862
  };
877
863
 
864
+ // src/components/primitives/Container/Container.module.scss
865
+ var Container_module_default = {
866
+ container: "Container_module_container"
867
+ };
868
+ var Container = forwardRef(
869
+ (_a, ref) => {
870
+ var _b = _a, { children, className } = _b, props = __objRest(_b, ["children", "className"]);
871
+ return /* @__PURE__ */ jsx("div", __spreadProps(__spreadValues({ ref, className: clsx19(Container_module_default.container, className) }, props), { children }));
872
+ }
873
+ );
874
+ Container.displayName = "Container";
875
+
878
876
  // src/components/PracticeCard/PracticeCard.module.scss
879
877
  var PracticeCard_module_default = {
880
878
  "practice-card": "PracticeCard_module_practice-card",
@@ -923,7 +921,6 @@ var CardCollection_module_default = {
923
921
  wrapper: "CardCollection_module_wrapper",
924
922
  cardWrapper: "CardCollection_module_cardWrapper",
925
923
  threeCols: "CardCollection_module_threeCols",
926
- fourCols: "CardCollection_module_fourCols",
927
924
  examCard: "CardCollection_module_examCard",
928
925
  "reveal-wrapper": "CardCollection_module_reveal-wrapper",
929
926
  "reveal-inner": "CardCollection_module_reveal-inner",
@@ -1779,71 +1776,38 @@ var TextEvent2 = Object.assign(TextEvent, {
1779
1776
  Title: TextEventTitle,
1780
1777
  RichText: TextEventRichText
1781
1778
  });
1782
- var TextCenterCtaInBottomTitle = ({ children }) => {
1779
+
1780
+ // src/widgets/TextBody/TextBody.module.scss
1781
+ var TextBody_module_default = {
1782
+ textBody: "TextBody_module_textBody",
1783
+ body: "TextBody_module_body",
1784
+ title: "TextBody_module_title"
1785
+ };
1786
+ var TextBodyTitle = ({ children }) => {
1783
1787
  return /* @__PURE__ */ jsx(Fragment, { children });
1784
1788
  };
1785
- var TextCenterCtaInBottomSubtitle = ({ children }) => {
1789
+ var TextBodyBody = ({ children }) => {
1786
1790
  return /* @__PURE__ */ jsx(Fragment, { children });
1787
1791
  };
1788
-
1789
- // src/widgets/TextCenterCtaInBottom/TextCenterCtaInBottom.module.scss
1790
- var TextCenterCtaInBottom_module_default = {
1791
- textCenterCta: "TextCenterCtaInBottom_module_textCenterCta",
1792
- container: "TextCenterCtaInBottom_module_container",
1793
- content: "TextCenterCtaInBottom_module_content",
1794
- title: "TextCenterCtaInBottom_module_title",
1795
- subtitle: "TextCenterCtaInBottom_module_subtitle",
1796
- ctaWrapper: "TextCenterCtaInBottom_module_ctaWrapper",
1797
- iconOnly: "TextCenterCtaInBottom_module_iconOnly",
1798
- cta: "TextCenterCtaInBottom_module_cta"
1799
- };
1800
- var TextCenterCtaInBottom = ({
1801
- className,
1802
- title,
1803
- subtitle,
1804
- ctas,
1805
- children
1806
- }) => {
1792
+ var TextBody = (props) => {
1807
1793
  var _a, _b;
1794
+ const { className, body, title, children } = props;
1808
1795
  const slots = resolveCompoundSlots(children, {
1809
- title: TextCenterCtaInBottomTitle,
1810
- subtitle: TextCenterCtaInBottomSubtitle
1796
+ title: TextBodyTitle,
1797
+ body: TextBodyBody
1811
1798
  });
1812
1799
  const titleNode = (_a = slots.title) != null ? _a : title;
1813
- const subtitleNode = (_b = slots.subtitle) != null ? _b : subtitle;
1814
- return /* @__PURE__ */ jsx("div", { className: clsx19(TextCenterCtaInBottom_module_default.textCenterCta, className), children: /* @__PURE__ */ jsxs(Container, { className: TextCenterCtaInBottom_module_default.container, children: [
1815
- /* @__PURE__ */ jsxs("div", { className: TextCenterCtaInBottom_module_default.content, children: [
1816
- titleNode && /* @__PURE__ */ jsx("div", { className: TextCenterCtaInBottom_module_default.title, children: titleNode }),
1817
- subtitleNode && /* @__PURE__ */ jsx("div", { className: TextCenterCtaInBottom_module_default.subtitle, children: subtitleNode })
1818
- ] }),
1819
- (ctas == null ? void 0 : ctas.length) && /* @__PURE__ */ jsx(
1820
- "div",
1821
- {
1822
- className: clsx19(
1823
- TextCenterCtaInBottom_module_default.ctaWrapper,
1824
- ctas.every((cta) => !cta.label && cta.logo) && TextCenterCtaInBottom_module_default.iconOnly
1825
- ),
1826
- children: ctas.map((cta, key) => /* @__PURE__ */ jsx(
1827
- Button,
1828
- {
1829
- className: TextCenterCtaInBottom_module_default.cta,
1830
- variant: "secondary",
1831
- href: cta == null ? void 0 : cta.url,
1832
- isExternal: cta == null ? void 0 : cta.isExternal,
1833
- logo: cta.logo,
1834
- children: cta == null ? void 0 : cta.label
1835
- },
1836
- key
1837
- ))
1838
- }
1839
- )
1840
- ] }) });
1800
+ const bodyNode = (_b = slots.body) != null ? _b : body;
1801
+ return /* @__PURE__ */ jsxs(Container, { className: clsx19(TextBody_module_default.textBody, className), children: [
1802
+ titleNode && /* @__PURE__ */ jsx(Text, { tag: "h2", className: TextBody_module_default.title, children: titleNode }),
1803
+ /* @__PURE__ */ jsx("div", { className: TextBody_module_default.body, children: bodyNode })
1804
+ ] });
1841
1805
  };
1842
1806
 
1843
- // src/widgets/TextCenterCtaInBottom/index.ts
1844
- var TextCenterCtaInBottom2 = Object.assign(TextCenterCtaInBottom, {
1845
- Title: TextCenterCtaInBottomTitle,
1846
- Subtitle: TextCenterCtaInBottomSubtitle
1807
+ // src/widgets/TextBody/index.ts
1808
+ var TextBody2 = Object.assign(TextBody, {
1809
+ Title: TextBodyTitle,
1810
+ Body: TextBodyBody
1847
1811
  });
1848
1812
  function useIntersectionObserver({
1849
1813
  animateOnce = false,
@@ -1874,6 +1838,6 @@ function useIntersectionObserver({
1874
1838
  return { observeRef, isVisible };
1875
1839
  }
1876
1840
 
1877
- export { Anchor, BrandsStrip, Button, Card2 as Card, CardCollection2 as CardCollection, ConditionalWrapper, ContactModule2 as ContactModule, Container, CountingCard2 as CountingCard, EventList2 as EventList, Footer, HeroBanner2 as HeroBanner, Icon, InfoCard2 as InfoCard, MiniBanner2 as MiniBanner, MiniSectionCta2 as MiniSectionCta, Pagination, Picture, PracticeCard, PracticePathCards2 as PracticePathCards, Teaser5050With3Text2 as Teaser5050With3Text, Teaser5050WithCta2 as Teaser5050WithCta, TextCenterCtaInBottom2 as TextCenterCtaInBottom, TextEvent2 as TextEvent, resolveCompoundSlots, svgs, useIntersectionObserver };
1841
+ export { Anchor, BrandsStrip, Button, Card2 as Card, CardCollection2 as CardCollection, ConditionalWrapper, ContactModule2 as ContactModule, Container, CountingCard2 as CountingCard, EventList2 as EventList, Footer, HeroBanner2 as HeroBanner, Icon, InfoCard2 as InfoCard, MiniBanner2 as MiniBanner, MiniSectionCta2 as MiniSectionCta, Pagination, Picture, PracticeCard, PracticePathCards2 as PracticePathCards, Teaser5050With3Text2 as Teaser5050With3Text, Teaser5050WithCta2 as Teaser5050WithCta, TextBody2 as TextBody, TextEvent2 as TextEvent, resolveCompoundSlots, svgs, useIntersectionObserver };
1878
1842
  //# sourceMappingURL=index.mjs.map
1879
1843
  //# sourceMappingURL=index.mjs.map