@kickstartds/ds-agency-premium 1.6.69 → 1.6.70--canary.45.1743.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 (199) hide show
  1. package/dist/{BlogAsideProps-d9decb7c.d.ts → BlogAsideProps-c760fd2a.d.ts} +5 -5
  2. package/dist/{BlogAuthorProps-88a11566.d.ts → BlogAuthorProps-fb0241df.d.ts} +7 -2
  3. package/dist/BlogOverviewProps-9f207f1c.d.ts +2 -2
  4. package/dist/{BlogPostProps-d9decb7c.d.ts → BlogPostProps-6b3cff22.d.ts} +3 -3
  5. package/dist/{ButtonProps-03ff6d21.d.ts → ButtonProps-00ddee3a.d.ts} +4 -4
  6. package/dist/{CtaProps-93230a76.d.ts → CtaProps-babe4ee6.d.ts} +21 -11
  7. package/dist/EventAppointmentProps-443cd1ce.d.ts +38 -0
  8. package/dist/EventDetailProps-42a7eebe.d.ts +387 -0
  9. package/dist/EventLatestTeaserProps-fc9d3281.d.ts +58 -0
  10. package/dist/EventLocationProps-871bc198.d.ts +41 -0
  11. package/dist/{FeaturesProps-e58616a5.d.ts → FeaturesProps-a9041d97.d.ts} +9 -4
  12. package/dist/{FooterProps-171a3067.d.ts → FooterProps-a0a104ca.d.ts} +2 -2
  13. package/dist/{HeaderProps-e22382f1.d.ts → HeaderProps-72763967.d.ts} +2 -2
  14. package/dist/{HeroProps-f704d270.d.ts → HeroProps-40f6c7f5.d.ts} +9 -4
  15. package/dist/ImageStoryProps-e853e1e7.d.ts +1 -1
  16. package/dist/MosaicProps-d52c7151.d.ts +4 -4
  17. package/dist/PageProps-aa29c554.d.ts +1 -1
  18. package/dist/{SectionProps-1cfcf6e8.d.ts → SectionProps-7caa223c.d.ts} +14 -9
  19. package/dist/{SliderProps-93230a76.d.ts → SliderProps-babe4ee6.d.ts} +4 -4
  20. package/dist/{StatProps-79109ad0.d.ts → StatProps-12a3eae0.d.ts} +1 -1
  21. package/dist/StatsProps-bf5ef578.d.ts +1 -1
  22. package/dist/{TeaserCardProps-b9c28e78.d.ts → TeaserCardProps-994cb119.d.ts} +4 -4
  23. package/dist/{VideoCurtainProps-6c625a69.d.ts → VideoCurtainProps-a2c0cc7f.d.ts} +5 -5
  24. package/dist/components/blog-aside/blog-aside.schema.dereffed.json +16 -8
  25. package/dist/components/blog-aside/blog-aside.schema.json +4 -4
  26. package/dist/components/blog-aside/index.d.ts +1 -1
  27. package/dist/components/blog-aside/index.js +1 -1
  28. package/dist/components/blog-author/blog-author.schema.dereffed.json +12 -4
  29. package/dist/components/blog-author/index.d.ts +1 -1
  30. package/dist/components/blog-overview/blog-overview.schema.dereffed.json +178 -85
  31. package/dist/components/blog-post/blog-post.schema.dereffed.json +194 -93
  32. package/dist/components/blog-post/index.d.ts +1 -1
  33. package/dist/components/blog-teaser/index.js +5 -7
  34. package/dist/components/button/button.css +2 -2
  35. package/dist/components/button/button.schema.dereffed.json +3 -3
  36. package/dist/components/button/button.schema.json +3 -3
  37. package/dist/components/button/index.d.ts +1 -1
  38. package/dist/components/button/index.js +1 -1
  39. package/dist/components/button-group/button-group.schema.dereffed.json +3 -3
  40. package/dist/components/button-group/index.d.ts +1 -1
  41. package/dist/components/contact/contact.schema.dereffed.json +13 -5
  42. package/dist/components/contact/contact.schema.json +11 -5
  43. package/dist/components/contact/index.d.ts +6 -1
  44. package/dist/components/contact/index.js +1 -1
  45. package/dist/components/cta/cta.css +44 -56
  46. package/dist/components/cta/cta.schema.dereffed.json +28 -11
  47. package/dist/components/cta/cta.schema.json +23 -10
  48. package/dist/components/cta/index.d.ts +1 -1
  49. package/dist/components/cta/index.js +25 -26
  50. package/dist/components/downloads/downloads.css +153 -0
  51. package/dist/components/downloads/downloads.schema.dereffed.json +55 -0
  52. package/dist/components/downloads/downloads.schema.json +44 -0
  53. package/dist/components/downloads/index.d.ts +41 -0
  54. package/dist/components/downloads/index.js +18 -0
  55. package/dist/components/event-appointment/event-appointment.css +62 -0
  56. package/dist/components/event-appointment/event-appointment.schema.dereffed.json +56 -0
  57. package/dist/components/event-appointment/event-appointment.schema.json +47 -0
  58. package/dist/components/event-appointment/index.d.ts +7 -0
  59. package/dist/components/event-appointment/index.js +14 -0
  60. package/dist/components/event-detail/event-detail.schema.dereffed.json +287 -0
  61. package/dist/components/event-detail/event-detail.schema.json +74 -0
  62. package/dist/components/event-detail/index.d.ts +5 -0
  63. package/dist/components/event-detail/index.js +36 -0
  64. package/dist/components/event-header/event-header.css +6 -0
  65. package/dist/components/event-header/event-header.schema.dereffed.json +38 -0
  66. package/dist/components/event-header/event-header.schema.json +34 -0
  67. package/dist/components/event-header/index.d.ts +35 -0
  68. package/dist/components/event-header/index.js +20 -0
  69. package/dist/components/event-latest/event-latest.css +5 -0
  70. package/dist/components/event-latest/event-latest.schema.dereffed.json +142 -0
  71. package/dist/components/event-latest/event-latest.schema.json +46 -0
  72. package/dist/components/event-latest/index.d.ts +30 -0
  73. package/dist/components/event-latest/index.js +19 -0
  74. package/dist/components/event-latest-teaser/event-latest-teaser.css +128 -0
  75. package/dist/components/event-latest-teaser/event-latest-teaser.schema.dereffed.json +97 -0
  76. package/dist/components/event-latest-teaser/event-latest-teaser.schema.json +73 -0
  77. package/dist/components/event-latest-teaser/index.d.ts +8 -0
  78. package/dist/components/event-latest-teaser/index.js +18 -0
  79. package/dist/components/event-location/event-location.css +71 -0
  80. package/dist/components/event-location/event-location.schema.dereffed.json +126 -0
  81. package/dist/components/event-location/event-location.schema.json +61 -0
  82. package/dist/components/event-location/index.d.ts +7 -0
  83. package/dist/components/event-location/index.js +18 -0
  84. package/dist/components/feature/feature.schema.dereffed.json +13 -3
  85. package/dist/components/feature/feature.schema.json +11 -3
  86. package/dist/components/feature/index.d.ts +8 -3
  87. package/dist/components/feature/index.js +2 -3
  88. package/dist/components/features/features.css +15 -35
  89. package/dist/components/features/features.schema.dereffed.json +13 -3
  90. package/dist/components/features/features.schema.json +5 -2
  91. package/dist/components/features/index.d.ts +1 -1
  92. package/dist/components/features/index.js +2 -2
  93. package/dist/components/footer/footer.css +1 -1
  94. package/dist/components/footer/footer.schema.dereffed.json +12 -12
  95. package/dist/components/footer/index.d.ts +1 -1
  96. package/dist/components/footer/index.js +1 -1
  97. package/dist/components/gallery/gallery.schema.dereffed.json +2 -1
  98. package/dist/components/gallery/gallery.schema.json +2 -1
  99. package/dist/components/gallery/index.js +1 -1
  100. package/dist/components/header/header.css +47 -9
  101. package/dist/components/header/header.schema.dereffed.json +12 -12
  102. package/dist/components/header/index.d.ts +1 -1
  103. package/dist/components/header/index.js +5 -5
  104. package/dist/components/headline/headline.css +2 -2
  105. package/dist/components/hero/hero.css +61 -25
  106. package/dist/components/hero/hero.schema.dereffed.json +9 -3
  107. package/dist/components/hero/hero.schema.json +8 -2
  108. package/dist/components/hero/index.d.ts +1 -1
  109. package/dist/components/hero/index.js +39 -39
  110. package/dist/components/image-story/image-story.css +5 -2
  111. package/dist/components/image-story/image-story.schema.dereffed.json +3 -3
  112. package/dist/components/index/index.d.ts +4 -3
  113. package/dist/components/logos/index.js +1 -1
  114. package/dist/components/mosaic/index.js +1 -1
  115. package/dist/components/mosaic/mosaic.css +1 -1
  116. package/dist/components/mosaic/mosaic.schema.dereffed.json +3 -3
  117. package/dist/components/nav-dropdown/index.d.ts +1 -1
  118. package/dist/components/nav-dropdown/index.js +2 -2
  119. package/dist/components/nav-dropdown/nav-dropdown.css +12 -3
  120. package/dist/components/nav-dropdown/nav-dropdown.schema.dereffed.json +1 -1
  121. package/dist/components/nav-flyout/index.d.ts +2 -2
  122. package/dist/components/nav-flyout/index.js +6 -8
  123. package/dist/components/nav-flyout/nav-flyout.css +29 -15
  124. package/dist/components/nav-flyout/nav-flyout.schema.dereffed.json +12 -12
  125. package/dist/components/nav-main/index.d.ts +5 -5
  126. package/dist/components/nav-main/index.js +0 -2
  127. package/dist/components/nav-main/nav-main.schema.dereffed.json +15 -15
  128. package/dist/components/nav-main/nav-main.schema.json +14 -14
  129. package/dist/components/nav-toggle/index.js +1 -1
  130. package/dist/components/nav-topbar/index.d.ts +2 -2
  131. package/dist/components/nav-topbar/index.js +2 -2
  132. package/dist/components/nav-topbar/nav-topbar.css +15 -2
  133. package/dist/components/nav-topbar/nav-topbar.schema.dereffed.json +12 -12
  134. package/dist/components/page/page.schema.dereffed.json +150 -74
  135. package/dist/components/page-wrapper/index.js +42 -0
  136. package/dist/components/page-wrapper/tokens.css +425 -729
  137. package/dist/components/pagination/index.d.ts +47 -0
  138. package/dist/components/pagination/index.js +52 -0
  139. package/dist/components/pagination/pagination.css +66 -0
  140. package/dist/components/pagination/pagination.schema.dereffed.json +70 -0
  141. package/dist/components/pagination/pagination.schema.json +63 -0
  142. package/dist/components/presets.json +832 -259
  143. package/dist/components/section/index.d.ts +1 -1
  144. package/dist/components/section/index.js +11 -3
  145. package/dist/components/section/section.css +38 -58
  146. package/dist/components/section/section.schema.dereffed.json +150 -74
  147. package/dist/components/section/section.schema.json +8 -10
  148. package/dist/components/settings/settings.schema.dereffed.json +24 -24
  149. package/dist/components/slider/index.d.ts +1 -1
  150. package/dist/components/slider/slider.schema.dereffed.json +59 -26
  151. package/dist/components/split/split.css +2 -2
  152. package/dist/components/stat/index.d.ts +1 -1
  153. package/dist/components/stat/index.js +3 -12
  154. package/dist/components/stat/stat.schema.dereffed.json +3 -4
  155. package/dist/components/stat/stat.schema.json +2 -2
  156. package/dist/components/stats/stats.schema.dereffed.json +3 -4
  157. package/dist/components/teaser-card/index.d.ts +1 -1
  158. package/dist/components/teaser-card/index.js +9 -9
  159. package/dist/components/teaser-card/teaser-card.css +67 -47
  160. package/dist/components/teaser-card/teaser-card.schema.dereffed.json +4 -4
  161. package/dist/components/teaser-card/teaser-card.schema.json +4 -4
  162. package/dist/components/testimonials/index.d.ts +1 -1
  163. package/dist/components/tile/tile.schema.dereffed.json +3 -3
  164. package/dist/components/tile/tile.schema.json +2 -2
  165. package/dist/components/video-curtain/index.d.ts +1 -1
  166. package/dist/components/video-curtain/index.js +12 -4
  167. package/dist/components/video-curtain/video-curtain.css +52 -29
  168. package/dist/components/video-curtain/video-curtain.schema.dereffed.json +6 -4
  169. package/dist/components/video-curtain/video-curtain.schema.json +3 -3
  170. package/dist/global.css +283 -59
  171. package/dist/static/fonts/systemics/Montserrat-Bold.woff2 +0 -0
  172. package/dist/static/fonts/systemics/Montserrat-Light.woff2 +0 -0
  173. package/dist/static/fonts/systemics/Montserrat-Medium.woff2 +0 -0
  174. package/dist/static/fonts/systemics/Montserrat-Regular.woff2 +0 -0
  175. package/dist/static/fonts/systemics/Montserrat-SemiBold.woff2 +0 -0
  176. package/dist/static/img/about/angled-image.png +0 -0
  177. package/dist/static/img/about/cta.png +0 -0
  178. package/dist/static/img/about/cutout.png +0 -0
  179. package/dist/static/img/about/disclaimer.png +0 -0
  180. package/dist/static/img/about/purpose.png +0 -0
  181. package/dist/static/img/about/spoiler.png +0 -0
  182. package/dist/static/img/kickstartDS/CMS-Starter producthunt-slide-01.svg +72 -0
  183. package/dist/static/img/kickstartDS/CMS-Starter producthunt-slide-02.svg +112 -0
  184. package/dist/static/img/kickstartDS/CMS-Starter producthunt-slide-03.svg +197 -0
  185. package/dist/static/img/kickstartDS/CMS-Starter producthunt-slide-04.svg +76 -0
  186. package/dist/static/img/kickstartDS/CMS-Starter producthunt-slide-05.svg +82 -0
  187. package/dist/static/img/kickstartDS/CMS-Starter producthunt-slide-06.svg +219 -0
  188. package/dist/static/img/kickstartDS/CMS-Starter producthunt-slide-07.svg +85 -0
  189. package/dist/static/logo-dark.svg +13 -0
  190. package/dist/static/logo-dsa-inverted.svg +26 -0
  191. package/dist/static/logo-dsa.svg +26 -0
  192. package/dist/static/logo-inverted.svg +12 -25
  193. package/dist/static/logo.svg +12 -25
  194. package/dist/tokens/IconSprite.js +42 -0
  195. package/dist/tokens/icon-sprite.html +16 -0
  196. package/dist/tokens/themes.css +4 -4
  197. package/dist/tokens/tokens.css +425 -729
  198. package/dist/tokens/tokens.js +628 -730
  199. package/package.json +1 -1
@@ -11,10 +11,10 @@
11
11
  "description": "Text content to display inside the button",
12
12
  "examples": ["Book a meeting"]
13
13
  },
14
- "target": {
14
+ "url": {
15
15
  "type": "string",
16
- "title": "Target",
17
- "description": "Target that should be linked, makes the button behave like a link semantically",
16
+ "title": "URL",
17
+ "description": "The URL to link to when the button is clicked",
18
18
  "format": "uri"
19
19
  },
20
20
  "variant": {
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { HTMLAttributes, FC, PropsWithChildren } from "react";
3
- import { ButtonProps } from "../../ButtonProps-03ff6d21.js";
3
+ import { ButtonProps } from "../../ButtonProps-00ddee3a.js";
4
4
  declare const Button: import("react").ForwardRefExoticComponent<ButtonProps & HTMLAttributes<HTMLElement> & import("react").RefAttributes<HTMLAnchorElement | HTMLButtonElement>>;
5
5
  declare const ButtonProvider: FC<PropsWithChildren>;
6
6
  export type { ButtonProps };
@@ -4,7 +4,7 @@ import { forwardRef } from 'react';
4
4
  import classnames from 'classnames';
5
5
  import { ButtonContextDefault, ButtonContext } from '@kickstartds/base/lib/button';
6
6
 
7
- const Button = forwardRef(({ label, target, size = "medium", variant = "secondary", icon, disabled = false, className, ...props }, ref) => (jsx(ButtonContextDefault, { ...props, className: classnames("dsa-button", className), href: target, label: label, size: size, variant: variant === "primary"
7
+ const Button = forwardRef(({ label, url, size = "medium", variant = "secondary", icon, disabled = false, className, ...props }, ref) => (jsx(ButtonContextDefault, { ...props, className: classnames("dsa-button", className), href: url, label: label, size: size, variant: variant === "primary"
8
8
  ? "solid"
9
9
  : variant === "secondary"
10
10
  ? "clear"
@@ -23,10 +23,10 @@
23
23
  "Book a meeting"
24
24
  ]
25
25
  },
26
- "target": {
26
+ "url": {
27
27
  "type": "string",
28
- "title": "Target",
29
- "description": "Target that should be linked, makes the button behave like a link semantically",
28
+ "title": "URL",
29
+ "description": "The URL to link to when the button is clicked",
30
30
  "format": "uri"
31
31
  },
32
32
  "variant": {
@@ -6,7 +6,7 @@ import { FC, PropsWithChildren } from "react";
6
6
  * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
7
7
  * and run json-schema-to-typescript to regenerate this file.
8
8
  */
9
- import { ButtonProps } from "../../ButtonProps-03ff6d21.js";
9
+ import { ButtonProps } from "../../ButtonProps-00ddee3a.js";
10
10
  /**
11
11
  * Buttons of the Button Group
12
12
  */
@@ -22,7 +22,7 @@
22
22
  "title": "Alt Text",
23
23
  "description": "Alt text of the image",
24
24
  "examples": [
25
- "Picture of Jane Smith"
25
+ "Picture of Isabella Doe"
26
26
  ]
27
27
  },
28
28
  "fullWidth": {
@@ -50,7 +50,7 @@
50
50
  "description": "Name, company name, etc.",
51
51
  "type": "string",
52
52
  "examples": [
53
- "Jane Smith"
53
+ "Isabella Doe"
54
54
  ]
55
55
  },
56
56
  "subtitle": {
@@ -73,7 +73,7 @@
73
73
  "label": {
74
74
  "type": "string"
75
75
  },
76
- "href": {
76
+ "url": {
77
77
  "type": "string",
78
78
  "format": "uri"
79
79
  },
@@ -82,6 +82,14 @@
82
82
  "description": "Open link in new Tab",
83
83
  "type": "boolean",
84
84
  "default": false
85
+ },
86
+ "ariaLabel": {
87
+ "title": "Aria Label",
88
+ "description": "Aria label for the link",
89
+ "type": "string",
90
+ "examples": [
91
+ "Link to Isabella Doe's social media profile"
92
+ ]
85
93
  }
86
94
  },
87
95
  "additionalProperties": false
@@ -91,12 +99,12 @@
91
99
  {
92
100
  "icon": "phone",
93
101
  "label": "0228 / 688 966 20",
94
- "href": "tel:+4922868896620"
102
+ "url": "tel:+4922868896620"
95
103
  },
96
104
  {
97
105
  "icon": "email",
98
106
  "label": "mail@example.com",
99
- "href": "mailto:mail@example.com"
107
+ "url": "mailto:mail@example.com"
100
108
  }
101
109
  ]
102
110
  ]
@@ -19,7 +19,7 @@
19
19
  "type": "string",
20
20
  "title": "Alt Text",
21
21
  "description": "Alt text of the image",
22
- "examples": ["Picture of Jane Smith"]
22
+ "examples": ["Picture of Isabella Doe"]
23
23
  },
24
24
  "fullWidth": {
25
25
  "type": "boolean",
@@ -40,7 +40,7 @@
40
40
  "title": "Title",
41
41
  "description": "Name, company name, etc.",
42
42
  "type": "string",
43
- "examples": ["Jane Smith"]
43
+ "examples": ["Isabella Doe"]
44
44
  },
45
45
  "subtitle": {
46
46
  "title": "Subtitle",
@@ -60,7 +60,7 @@
60
60
  "label": {
61
61
  "type": "string"
62
62
  },
63
- "href": {
63
+ "url": {
64
64
  "type": "string",
65
65
  "format": "uri"
66
66
  },
@@ -69,6 +69,12 @@
69
69
  "description": "Open link in new Tab",
70
70
  "type": "boolean",
71
71
  "default": false
72
+ },
73
+ "ariaLabel": {
74
+ "title": "Aria Label",
75
+ "description": "Aria label for the link",
76
+ "type": "string",
77
+ "examples": ["Link to Isabella Doe's social media profile"]
72
78
  }
73
79
  },
74
80
  "additionalProperties": false
@@ -78,12 +84,12 @@
78
84
  {
79
85
  "icon": "phone",
80
86
  "label": "0228 / 688 966 20",
81
- "href": "tel:+4922868896620"
87
+ "url": "tel:+4922868896620"
82
88
  },
83
89
  {
84
90
  "icon": "email",
85
91
  "label": "mail@example.com",
86
- "href": "mailto:mail@example.com"
92
+ "url": "mailto:mail@example.com"
87
93
  }
88
94
  ]
89
95
  ]
@@ -34,6 +34,10 @@ type Subtitle = string;
34
34
  * Open link in new Tab
35
35
  */
36
36
  type OpenLinkInNewTab = boolean;
37
+ /**
38
+ * Aria label for the link
39
+ */
40
+ type AriaLabel = string;
37
41
  type CopyText = string;
38
42
  /**
39
43
  * Additional css classes attached to the wrapping element
@@ -58,8 +62,9 @@ interface ContactProps {
58
62
  links?: {
59
63
  icon?: string;
60
64
  label?: string;
61
- href?: string;
65
+ url?: string;
62
66
  newTab?: OpenLinkInNewTab;
67
+ ariaLabel?: AriaLabel;
63
68
  }[];
64
69
  copy?: CopyText;
65
70
  className?: Class;
@@ -9,7 +9,7 @@ import { Icon } from '@kickstartds/base/lib/icon';
9
9
  import { RichText } from '@kickstartds/base/lib/rich-text';
10
10
  import { Container } from '@kickstartds/core/lib/container';
11
11
 
12
- const ContactContextDefault = forwardRef(({ title, subtitle, image, links, copy, className, ...props }, ref) => (jsx(Container, { name: "contact", children: jsxs("address", { className: classnames("dsa-contact", image?.aspectRatio && `dsa-contact--image-${image?.aspectRatio}`, image?.fullWidth && `dsa-contact--image-full-width`, className), ref: ref, ...props, children: [image && image.src ? (jsx("div", { className: "dsa-contact__image-wrap", children: jsx(Picture, { src: image?.src, alt: image?.alt, className: "dsa-contact__image" }) })) : (""), jsxs("div", { className: "dsa-contact__body", children: [title && (jsxs("div", { className: "dsa-contact__header", children: [jsx("span", { className: "dsa-contact__title", children: title }), jsx("span", { className: "dsa-contact__subtitle", children: subtitle })] })), copy && jsx(RichText, { text: copy, className: "dsa-contact__copy" }), links && links.length ? (jsx("ul", { className: "dsa-contact__links", children: links.map(({ icon, href, label, newTab }, i) => (jsx("li", { children: jsxs(Link, { className: "dsa-contact__link", href: href, ...(newTab ? { target: "_blank", rel: "noopener" } : {}), children: [jsx(Icon, { icon: icon }), label] }) }, i))) })) : ("")] })] }) })));
12
+ const ContactContextDefault = forwardRef(({ title, subtitle, image, links, copy, className, ...props }, ref) => (jsx(Container, { name: "contact", children: jsxs("address", { className: classnames("dsa-contact", image?.aspectRatio && `dsa-contact--image-${image?.aspectRatio}`, image?.fullWidth && `dsa-contact--image-full-width`, className), ref: ref, ...props, children: [image && image.src && (jsx("div", { className: "dsa-contact__image-wrap", children: jsx(Picture, { src: image?.src, alt: image?.alt, className: "dsa-contact__image" }) })), jsxs("div", { className: "dsa-contact__body", children: [title && (jsxs("div", { className: "dsa-contact__header", children: [jsx("span", { className: "dsa-contact__title", children: title }), jsx("span", { className: "dsa-contact__subtitle", children: subtitle })] })), copy && jsx(RichText, { text: copy, className: "dsa-contact__copy" }), links && links.length && (jsx("ul", { className: "dsa-contact__links", children: links.map(({ icon, url, label, ariaLabel, newTab }, i) => (jsx("li", { children: jsxs(Link, { className: "dsa-contact__link", "aria-label": ariaLabel, href: url, ...(newTab && { target: "_blank", rel: "noopener" }), children: [jsx(Icon, { role: "presentation", focusable: "false", "aria-hidden": true, icon: icon }), label] }) }, i))) }))] })] }) })));
13
13
  const ContactContext = createContext(ContactContextDefault);
14
14
  const Contact = forwardRef((props, ref) => {
15
15
  const Component = useContext(ContactContext);
@@ -1,12 +1,16 @@
1
1
  .dsa-cta {
2
- --dsa-cta--vertical-padding: var(--l-section--space-default);
3
- --dsa-cta--horizontal-padding: var(--dsa-content--spacing);
2
+ --dsa-cta--gap: var(--ks-spacing-stack-l) var(--ks-spacing-inline-l);
3
+ --dsa-cta--border-radius: var(--ks-border-radius-surface);
4
+ --dsa-cta__content--vertical-padding: var(--dsa-content--vertical-spacing);
5
+ --dsa-cta__content--horizontal-padding: var(--dsa-content--horizontal-spacing);
6
+ --dsa-cta__content--max-width: var(--dsa-content--width_narrow);
4
7
  --dsa-cta__copy--font: var(--dsa-rich-text--font);
5
8
  --dsa-cta__copy--color: var(--ks-text-color-default);
6
9
  --dsa-cta__headline--color: var(--dsa-headline--color);
7
10
  --dsa-cta__headline--font: var(--dsa-headline_h2--font);
8
11
  --dsa-cta__subheadline--color: var(--dsa-headline__subheadline--color);
9
12
  --dsa-cta__subheadline--font: var(--dsa-headline_h2__subheadline--font);
13
+ --dsa-cta__image--padding: var(--ks-spacing-inset-m);
10
14
  --dsa-cta_color-neutral__headline--color: var(--ks-text-color-default);
11
15
  --dsa-cta_color-neutral__subheadline--color: var(--ks-text-color-default);
12
16
  --dsa-cta_color-neutral__copy--color: var(--ks-text-color-default);
@@ -16,11 +20,15 @@
16
20
  }
17
21
 
18
22
  .dsa-cta.c-storytelling {
19
- --c-storytelling--padding-ratio: 2;
20
- --c-storytelling--horizontal-padding: var(--dsa-content--spacing);
23
+ --c-storytelling--horizontal-padding: var(--dsa-cta__content--horizontal-padding);
24
+ --c-storytelling--vertical-padding: var(--dsa-cta__content--vertical-padding);
21
25
  justify-content: center;
22
26
  align-items: stretch;
23
- padding: 0;
27
+ gap: var(--dsa-cta--gap, var(--ks-spacing-inline-m));
28
+ border-radius: var(--dsa-cta--border-radius, var(--ks-border-radius-surface));
29
+ }
30
+ .dsa-cta.c-storytelling:not(.dsa-cta--no-padding) {
31
+ overflow: hidden;
24
32
  }
25
33
  .dsa-cta.c-storytelling.dsa-cta--color-neutral {
26
34
  --dsa-cta__copy--color: var(--dsa-cta_color-neutral__copy--color, var(--ks-text-color-default));
@@ -35,34 +43,22 @@
35
43
  var(--dsa-headline_h1__subheadline--font)
36
44
  );
37
45
  }
38
- .dsa-cta.c-storytelling.c-storytelling--full {
39
- --c-storytelling--padding-ratio: 1;
40
- }
41
- .dsa-cta.c-storytelling.c-storytelling--full.c-storytelling--order-desktop-image-last .c-storytelling__box {
42
- padding-left: var(--dsa-cta--horizontal-padding);
43
- }
44
- .dsa-cta.c-storytelling.dsa-cta--align-top {
45
- align-items: flex-start;
46
+ .dsa-cta.c-storytelling.dsa-cta--no-padding .c-storytelling__box {
47
+ padding: 0;
46
48
  }
47
- .dsa-cta.c-storytelling.dsa-cta--align-bottom {
48
- align-items: flex-end;
49
+ .dsa-cta.c-storytelling.dsa-cta--image-padding .c-storytelling__image {
50
+ padding: var(--dsa-cta__content--vertical-padding, var(--dsa-content--vertical-spacing)) var(--dsa-cta__content--horizontal-padding, var(--dsa-content--horizontal-spacing));
49
51
  }
50
- .dsa-cta.c-storytelling .c-storytelling__box {
51
- width: 100%;
52
- padding: var(--dsa-cta--vertical-padding, var(--l-section--space-default)) var(--dsa-cta--horizontal-padding, var(--dsa-content--spacing));
52
+ .dsa-cta.c-storytelling .c-storytelling__image img {
53
+ width: auto;
53
54
  }
54
- @container storytelling (max-width: 640px) {
55
- .dsa-cta.c-storytelling .c-storytelling__box {
56
- padding-top: calc(var(--dsa-cta--vertical-padding, var(--l-section--space-default)) / var(--c-storytelling--padding-ratio));
57
- }
58
- .dsa-cta.c-storytelling .c-storytelling__box:only-child {
59
- padding-top: var(--dsa-cta--vertical-padding, var(--l-section--space-default));
60
- }
55
+ .dsa-cta.c-storytelling .c-storytelling__box__content {
56
+ max-width: var(--dsa-cta__content--max-width, var(--dsa-content--width_narrow));
61
57
  }
62
58
  .dsa-cta.c-storytelling .c-storytelling__box:only-child {
63
- padding: var(--dsa-cta--vertical-padding, var(--l-section--space-default)) var(--dsa-cta--horizontal-padding, var(--dsa-content--spacing));
59
+ --c-storytelling--horizontal-padding: var(--dsa-cta__content--horizontal-padding);
64
60
  }
65
- .dsa-cta.c-storytelling .c-storytelling__box__content {
61
+ .dsa-cta.c-storytelling .c-storytelling__box:only-child .c-storytelling__box__content {
66
62
  max-width: 100%;
67
63
  }
68
64
  .dsa-cta.c-storytelling .c-storytelling__box .dsa-headline__headline {
@@ -79,50 +75,42 @@
79
75
  font: var(--dsa-cta__copy--font, var(--dsa-rich-text--font, var(--ks-font-copy-m)));
80
76
  color: var(--dsa-cta__copy--color, var(--dsa-rich-text--color, var(--ks-text-color-copy)));
81
77
  }
82
- .dsa-cta.c-storytelling .c-storytelling__box:only-child {
83
- --dsa-cta--horizontal-padding: var(--dsa-content--spacing);
84
- }
85
- .dsa-cta.c-storytelling .c-storytelling__image {
78
+ .dsa-cta.c-storytelling > .c-storytelling__image {
86
79
  margin: 0;
87
80
  }
88
- @container storytelling (min-width: 640px) {
89
- .dsa-cta.c-storytelling.c-storytelling--order-desktop-image-last .c-storytelling__image {
90
- padding-left: calc(var(--dsa-cta--horizontal-padding, var(--dsa-content--spacing)) / var(--c-storytelling--padding-ratio));
81
+ @container storytelling (max-width: 639.9px) {
82
+ .dsa-cta.c-storytelling.c-storytelling--order-mobile-image-last .c-storytelling__box {
83
+ padding-bottom: 0;
91
84
  }
92
- .dsa-cta.c-storytelling.c-storytelling--order-desktop-image-last .c-storytelling__box {
93
- padding-right: calc(var(--dsa-cta--horizontal-padding, var(--dsa-content--spacing)) / var(--c-storytelling--padding-ratio));
85
+ .dsa-cta.c-storytelling.c-storytelling--order-mobile-image-last .c-storytelling__image {
86
+ padding-top: 0;
94
87
  }
95
- .dsa-cta.c-storytelling .c-storytelling__box {
96
- padding-left: calc(var(--dsa-cta--horizontal-padding, var(--dsa-content--spacing)) / var(--c-storytelling--padding-ratio));
88
+ .dsa-cta.c-storytelling:not(.c-storytelling--order-mobile-image-last) .c-storytelling__box:not(:only-child) {
89
+ padding-top: 0;
97
90
  }
98
- .dsa-cta.c-storytelling .c-storytelling__box__content--center .c-button-group {
99
- justify-content: center;
91
+ .dsa-cta.c-storytelling:not(.c-storytelling--order-mobile-image-last) .c-storytelling__image {
92
+ padding-bottom: 0;
100
93
  }
101
- .dsa-cta.c-storytelling .c-storytelling__box:only-child {
102
- width: 100%;
103
- max-width: calc(var(--dsa-content--width_default) - var(--dsa-content--spacing) * var(--c-storytelling--padding-ratio));
104
- }
105
- .dsa-cta.c-storytelling > .c-storytelling__image {
106
- padding: var(--dsa-cta--vertical-padding, var(--l-section--space-default)) var(--dsa-cta--horizontal-padding, var(--dsa-content--spacing));
107
- padding-right: calc(var(--dsa-cta--horizontal-padding, var(--dsa-content--spacing)) / var(--c-storytelling--padding-ratio));
94
+ }
95
+ @container storytelling (min-width: 640px) {
96
+ .dsa-cta.c-storytelling.c-storytelling--order-desktop-image-last .c-storytelling__box:not(:only-child) {
97
+ padding-right: 0;
108
98
  }
109
- .dsa-cta.c-storytelling.c-storytelling--full > .c-storytelling__image {
110
- padding: 0;
99
+ .dsa-cta.c-storytelling.c-storytelling--order-desktop-image-last .c-storytelling__image {
100
+ padding-left: 0;
111
101
  }
112
- .dsa-cta.c-storytelling > .c-storytelling__image,
113
- .dsa-cta.c-storytelling > .c-storytelling__box {
114
- max-width: calc(var(--dsa-content--width_wide) / 2);
102
+ .dsa-cta.c-storytelling:not(.c-storytelling--order-desktop-image-last) .c-storytelling__box {
103
+ padding-left: 0;
115
104
  }
116
- .dsa-cta.c-storytelling.dsa-cta--full-width > .c-storytelling__image,
117
- .dsa-cta.c-storytelling.dsa-cta--full-width > .c-storytelling__box {
118
- max-width: 100%;
105
+ .dsa-cta.c-storytelling:not(.c-storytelling--order-desktop-image-last) .c-storytelling__image {
106
+ padding-right: 0;
119
107
  }
120
108
  }
121
109
 
122
110
  @media (min-width: 640px) {
123
111
  .dsa-header--floating + .l-container--storytelling .c-storytelling.dsa-cta,
124
112
  .dsa-header--floating + .l-section .l-container--storytelling:first-child .c-storytelling.dsa-cta {
125
- padding-top: calc(var(--dsa-header--height) + var(--dsa-cta--horizontal-padding, var(--dsa-content--spacing)));
113
+ padding-top: calc(var(--dsa-header--height) + var(--dsa-cta__content--horizontal-padding, var(--dsa-content--horizontal-spacing)));
126
114
  z-index: 1;
127
115
  }
128
116
  }
@@ -40,12 +40,6 @@
40
40
  "default": false,
41
41
  "type": "boolean"
42
42
  },
43
- "fullWidth": {
44
- "title": "Width",
45
- "description": "Set the width of the content to the full width of the element",
46
- "type": "boolean",
47
- "default": false
48
- },
49
43
  "buttons": {
50
44
  "type": "array",
51
45
  "items": {
@@ -66,10 +60,10 @@
66
60
  "title": "Icon",
67
61
  "description": "Choose an icon"
68
62
  },
69
- "target": {
63
+ "url": {
70
64
  "type": "string",
71
- "title": "Target",
72
- "description": "Target that should be linked, makes the button behave like a link semantically",
65
+ "title": "URL",
66
+ "description": "The URL to link to when the button is clicked",
73
67
  "format": "uri"
74
68
  }
75
69
  },
@@ -109,6 +103,17 @@
109
103
  "title": "Alt text",
110
104
  "description": "Image description",
111
105
  "type": "string"
106
+ },
107
+ "align": {
108
+ "title": "Vertical alignment of the image",
109
+ "description": "Select a vertical alignment for the image",
110
+ "type": "string",
111
+ "enum": [
112
+ "center",
113
+ "top",
114
+ "bottom"
115
+ ],
116
+ "default": "center"
112
117
  }
113
118
  },
114
119
  "additionalProperties": false
@@ -143,9 +148,9 @@
143
148
  "type": "string",
144
149
  "default": "left"
145
150
  },
146
- "contentAlign": {
151
+ "align": {
147
152
  "title": "Vertical alignment of the content",
148
- "description": "Select a vertical alignment for the image",
153
+ "description": "Select a vertical alignment for the content",
149
154
  "type": "string",
150
155
  "enum": [
151
156
  "center",
@@ -154,6 +159,18 @@
154
159
  ],
155
160
  "default": "center"
156
161
  },
162
+ "padding": {
163
+ "title": "Padding",
164
+ "description": "Toggle padding of the content",
165
+ "type": "boolean",
166
+ "default": false
167
+ },
168
+ "inverted": {
169
+ "title": "Inverted",
170
+ "description": "Toggle inversion of the component",
171
+ "type": "boolean",
172
+ "default": false
173
+ },
157
174
  "type": {
158
175
  "const": "cta"
159
176
  }
@@ -36,12 +36,6 @@
36
36
  "default": false,
37
37
  "type": "boolean"
38
38
  },
39
- "fullWidth": {
40
- "title": "Width",
41
- "description": "Set the width of the content to the full width of the element",
42
- "type": "boolean",
43
- "default": false
44
- },
45
39
  "buttons": {
46
40
  "type": "array",
47
41
  "items": {
@@ -54,8 +48,8 @@
54
48
  "icon": {
55
49
  "$ref": "http://schema.mydesignsystem.com/button.schema.json#/properties/icon"
56
50
  },
57
- "target": {
58
- "$ref": "http://schema.mydesignsystem.com/button.schema.json#/properties/target"
51
+ "url": {
52
+ "$ref": "http://schema.mydesignsystem.com/button.schema.json#/properties/url"
59
53
  }
60
54
  }
61
55
  }
@@ -87,6 +81,13 @@
87
81
  "title": "Alt text",
88
82
  "description": "Image description",
89
83
  "type": "string"
84
+ },
85
+ "align": {
86
+ "title": "Vertical alignment of the image",
87
+ "description": "Select a vertical alignment for the image",
88
+ "type": "string",
89
+ "enum": ["center", "top", "bottom"],
90
+ "default": "center"
90
91
  }
91
92
  },
92
93
  "additionalProperties": false
@@ -118,12 +119,24 @@
118
119
  "type": "string",
119
120
  "default": "left"
120
121
  },
121
- "contentAlign": {
122
+ "align": {
122
123
  "title": "Vertical alignment of the content",
123
- "description": "Select a vertical alignment for the image",
124
+ "description": "Select a vertical alignment for the content",
124
125
  "type": "string",
125
126
  "enum": ["center", "top", "bottom"],
126
127
  "default": "center"
128
+ },
129
+ "padding": {
130
+ "title": "Padding",
131
+ "description": "Toggle padding of the content",
132
+ "type": "boolean",
133
+ "default": false
134
+ },
135
+ "inverted": {
136
+ "title": "Inverted",
137
+ "description": "Toggle inversion of the component",
138
+ "type": "boolean",
139
+ "default": false
127
140
  }
128
141
  },
129
142
  "additionalProperties": false
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { HTMLAttributes } from "react";
3
- import { CtaProps } from "../../CtaProps-93230a76.js";
3
+ import { CtaProps } from "../../CtaProps-babe4ee6.js";
4
4
  declare const CtaContextDefault: import("react").ForwardRefExoticComponent<CtaProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
5
5
  declare const CtaContext: import("react").Context<import("react").ForwardRefExoticComponent<CtaProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>>;
6
6
  declare const Cta: import("react").ForwardRefExoticComponent<CtaProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,42 +1,41 @@
1
1
  import "./cta.css";
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import { forwardRef, createContext, useContext } from 'react';
4
- import { Storytelling } from '@kickstartds/content/lib/storytelling';
4
+ import { StorytellingContextDefault } from '@kickstartds/content/lib/storytelling';
5
5
  import { ButtonContext } from '@kickstartds/base/lib/button';
6
6
  import classnames from 'classnames';
7
7
  import { useButtonGroup } from '../button-group/index.js';
8
+ import { Container } from '@kickstartds/core/lib/container';
8
9
  import '@kickstartds/base/lib/button-group';
9
10
 
10
- const CtaContextDefault = forwardRef(({ headline, highlightText = false, sub, image, text, textAlign, backgroundImage, backgroundColor, colorNeutral, contentAlign, order, fullWidth = false, buttons = [], ...rest }, ref) => {
11
+ const CtaContextDefault = forwardRef(({ headline, highlightText = false, sub, image, text, textAlign, backgroundImage, backgroundColor, colorNeutral, align, padding, order, buttons = [], inverted = false, ...rest }, ref) => {
11
12
  const ButtonGroup = useButtonGroup();
12
13
  return (jsx(ButtonContext.Provider
13
14
  // @ts-expect-error
14
15
  , {
15
16
  // @ts-expect-error
16
- value: ButtonGroup, children: jsx(Storytelling, { ...rest, ref: ref, className: classnames("dsa-cta", fullWidth ? `dsa-cta--full-width` : "", highlightText ? `dsa-cta--highlight-text` : "", colorNeutral ? `dsa-cta--color-neutral` : "", contentAlign && contentAlign !== "center"
17
- ? `dsa-cta--align-${contentAlign}`
18
- : ""), backgroundImage: backgroundImage, backgroundColor: backgroundColor, full: image?.padding === false, image: {
19
- source: image?.src,
20
- order: order,
21
- vAlign: contentAlign,
22
- }, box: {
23
- text: text,
24
- textAlign: textAlign,
25
- vAlign: contentAlign,
26
- link: {
27
- buttons,
28
- colorNeutral: colorNeutral,
29
- arrangement: textAlign,
30
- },
31
- headline: {
32
- text: headline,
33
- level: "h2",
34
- style: highlightText === true ? "h1" : undefined,
35
- sub: sub,
36
- spaceAfter: highlightText === true ? "large" : undefined,
37
- align: textAlign,
38
- },
39
- } }) }));
17
+ value: ButtonGroup, children: jsx(Container, { name: "storytelling", children: jsx(StorytellingContextDefault, { ...rest, ref: ref, className: classnames("dsa-cta", highlightText ? `dsa-cta--highlight-text` : "", colorNeutral ? `dsa-cta--color-neutral` : "", image?.padding ? `dsa-cta--image-padding` : "", !padding ? `dsa-cta--no-padding` : "", align && align !== "center" ? `dsa-cta--align-${align}` : ""), backgroundImage: backgroundImage, backgroundColor: backgroundColor, full: true, image: {
18
+ source: image?.src,
19
+ order: order,
20
+ vAlign: image?.align,
21
+ }, box: {
22
+ text: text,
23
+ textAlign: textAlign,
24
+ vAlign: align,
25
+ link: {
26
+ buttons,
27
+ colorNeutral: colorNeutral,
28
+ arrangement: textAlign,
29
+ },
30
+ headline: {
31
+ text: headline,
32
+ level: "h2",
33
+ style: highlightText === true ? "h1" : undefined,
34
+ sub: sub,
35
+ spaceAfter: highlightText === true ? "large" : undefined,
36
+ align: textAlign,
37
+ },
38
+ } }) }) }));
40
39
  });
41
40
  const CtaContext = createContext(CtaContextDefault);
42
41
  const Cta = forwardRef((props, ref) => {