@kickstartds/ds-agency-premium 1.0.1

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 (301) hide show
  1. package/README.md +96 -0
  2. package/dist/ButtonProps-03ff6d21.d.ts +41 -0
  3. package/dist/CtaProps-93230a76.d.ts +113 -0
  4. package/dist/FaqProps-ad618cd5.d.ts +35 -0
  5. package/dist/FeaturesProps-79dea880.d.ts +284 -0
  6. package/dist/GalleryProps-76e7de44.d.ts +331 -0
  7. package/dist/HeadlineProps-d413a2cc.d.ts +48 -0
  8. package/dist/HeroProps-cf82a16d.d.ts +104 -0
  9. package/dist/ImageStoryProps-03ff6d21.d.ts +70 -0
  10. package/dist/ImageTextProps-9286cca4.d.ts +38 -0
  11. package/dist/LogosProps-8af8b3c7.d.ts +929 -0
  12. package/dist/MosaicProps-aacb9422.d.ts +84 -0
  13. package/dist/SliderProps-69b2f1d7.d.ts +43 -0
  14. package/dist/SplitProps-89ef39c4.d.ts +9 -0
  15. package/dist/StatsProps-afa48599.d.ts +41 -0
  16. package/dist/TeaserCardProps-b52479e5.d.ts +49 -0
  17. package/dist/TestimonialsProps-d27ae4b4.d.ts +54 -0
  18. package/dist/TextProps-a23170d2.d.ts +31 -0
  19. package/dist/VideoCurtainProps-6c625a69.d.ts +82 -0
  20. package/dist/components/blog-aside/blog-aside.css +9 -0
  21. package/dist/components/blog-aside/blog-aside.schema.dereffed.json +130 -0
  22. package/dist/components/blog-aside/blog-aside.schema.json +99 -0
  23. package/dist/components/blog-aside/index.d.ts +76 -0
  24. package/dist/components/blog-aside/index.js +55 -0
  25. package/dist/components/blog-head/blog-head.css +3 -0
  26. package/dist/components/blog-head/blog-head.schema.dereffed.json +54 -0
  27. package/dist/components/blog-head/blog-head.schema.json +40 -0
  28. package/dist/components/blog-head/index.d.ts +34 -0
  29. package/dist/components/blog-head/index.js +11 -0
  30. package/dist/components/blog-teaser/blog-teaser.css +58 -0
  31. package/dist/components/blog-teaser/blog-teaser.schema.dereffed.json +135 -0
  32. package/dist/components/blog-teaser/blog-teaser.schema.json +102 -0
  33. package/dist/components/blog-teaser/index.d.ts +81 -0
  34. package/dist/components/blog-teaser/index.js +37 -0
  35. package/dist/components/button/button.css +67 -0
  36. package/dist/components/button/button.schema.dereffed.json +63 -0
  37. package/dist/components/button/button.schema.json +48 -0
  38. package/dist/components/button/index.d.ts +6 -0
  39. package/dist/components/button/index.js +18 -0
  40. package/dist/components/button-group/button-group.schema.dereffed.json +115 -0
  41. package/dist/components/button-group/button-group.schema.json +27 -0
  42. package/dist/components/button-group/index.d.ts +40 -0
  43. package/dist/components/button-group/index.js +30 -0
  44. package/dist/components/component-teaser/component-teaser.schema.dereffed.json +43 -0
  45. package/dist/components/component-teaser/component-teaser.schema.json +40 -0
  46. package/dist/components/cta/cta.css +100 -0
  47. package/dist/components/cta/cta.schema.dereffed.json +158 -0
  48. package/dist/components/cta/cta.schema.json +127 -0
  49. package/dist/components/cta/index.d.ts +4 -0
  50. package/dist/components/cta/index.js +40 -0
  51. package/dist/components/faq/faq.css +17 -0
  52. package/dist/components/faq/faq.schema.dereffed.json +48 -0
  53. package/dist/components/faq/faq.schema.json +36 -0
  54. package/dist/components/faq/index.d.ts +4 -0
  55. package/dist/components/faq/index.js +9 -0
  56. package/dist/components/feature/index.d.ts +49 -0
  57. package/dist/components/feature/index.js +23 -0
  58. package/dist/components/features/features.css +115 -0
  59. package/dist/components/features/features.schema.dereffed.json +121 -0
  60. package/dist/components/features/features.schema.json +93 -0
  61. package/dist/components/features/index.d.ts +4 -0
  62. package/dist/components/features/index.js +32 -0
  63. package/dist/components/footer/footer.css +53 -0
  64. package/dist/components/footer/footer.schema.dereffed.json +178 -0
  65. package/dist/components/footer/footer.schema.json +47 -0
  66. package/dist/components/footer/index.d.ts +22 -0
  67. package/dist/components/footer/index.js +11 -0
  68. package/dist/components/gallery/gallery.css +50 -0
  69. package/dist/components/gallery/gallery.schema.dereffed.json +84 -0
  70. package/dist/components/gallery/gallery.schema.json +62 -0
  71. package/dist/components/gallery/index.d.ts +4 -0
  72. package/dist/components/gallery/index.js +35 -0
  73. package/dist/components/header/header.css +78 -0
  74. package/dist/components/header/header.schema.dereffed.json +188 -0
  75. package/dist/components/header/header.schema.json +25 -0
  76. package/dist/components/header/index.d.ts +26 -0
  77. package/dist/components/header/index.js +16 -0
  78. package/dist/components/headline/headline.css +78 -0
  79. package/dist/components/headline/headline.schema.dereffed.json +86 -0
  80. package/dist/components/headline/headline.schema.json +60 -0
  81. package/dist/components/headline/index.d.ts +11 -0
  82. package/dist/components/headline/index.js +18 -0
  83. package/dist/components/hero/hero.css +95 -0
  84. package/dist/components/hero/hero.schema.dereffed.json +166 -0
  85. package/dist/components/hero/hero.schema.json +79 -0
  86. package/dist/components/hero/index.d.ts +4 -0
  87. package/dist/components/hero/index.js +55 -0
  88. package/dist/components/image/image.css +12 -0
  89. package/dist/components/image/image.schema.dereffed.json +105 -0
  90. package/dist/components/image/image.schema.json +95 -0
  91. package/dist/components/image/index.d.ts +87 -0
  92. package/dist/components/image/index.js +11 -0
  93. package/dist/components/image-story/image-story.css +26 -0
  94. package/dist/components/image-story/image-story.schema.dereffed.json +165 -0
  95. package/dist/components/image-story/image-story.schema.json +81 -0
  96. package/dist/components/image-story/index.d.ts +4 -0
  97. package/dist/components/image-story/index.js +39 -0
  98. package/dist/components/image-text/image-text.css +4 -0
  99. package/dist/components/image-text/image-text.schema.dereffed.json +68 -0
  100. package/dist/components/image-text/image-text.schema.json +46 -0
  101. package/dist/components/image-text/index.d.ts +5 -0
  102. package/dist/components/image-text/index.js +20 -0
  103. package/dist/components/logos/index.d.ts +4 -0
  104. package/dist/components/logos/index.js +12 -0
  105. package/dist/components/logos/logos.css +91 -0
  106. package/dist/components/logos/logos.schema.dereffed.json +131 -0
  107. package/dist/components/logos/logos.schema.json +106 -0
  108. package/dist/components/mosaic/index.d.ts +4 -0
  109. package/dist/components/mosaic/index.js +33 -0
  110. package/dist/components/mosaic/mosaic.css +35 -0
  111. package/dist/components/mosaic/mosaic.schema.dereffed.json +122 -0
  112. package/dist/components/mosaic/mosaic.schema.json +86 -0
  113. package/dist/components/nav-main/index.d.ts +26 -0
  114. package/dist/components/nav-main/index.js +17 -0
  115. package/dist/components/nav-main/js/NavToggle.client.d.ts +16 -0
  116. package/dist/components/nav-main/js/NavToggle.client.js +57 -0
  117. package/dist/components/nav-main/js/body.client.d.ts +5 -0
  118. package/dist/components/nav-main/js/body.client.js +41 -0
  119. package/dist/components/nav-main/js/navMainEvents.client.d.ts +5 -0
  120. package/dist/components/nav-main/js/navMainEvents.client.js +13 -0
  121. package/dist/components/nav-main/nav-main.css +170 -0
  122. package/dist/components/nav-main/nav-main.schema.dereffed.json +182 -0
  123. package/dist/components/nav-main/nav-main.schema.json +53 -0
  124. package/dist/components/nav-main/nav-toggle.css +85 -0
  125. package/dist/components/page/page.schema.dereffed.json +1945 -0
  126. package/dist/components/page/page.schema.json +58 -0
  127. package/dist/components/page-intro/index.d.ts +17 -0
  128. package/dist/components/page-intro/index.js +18 -0
  129. package/dist/components/page-intro/page-intro.css +8 -0
  130. package/dist/components/page-intro/page-intro.schema.dereffed.json +30 -0
  131. package/dist/components/page-intro/page-intro.schema.json +26 -0
  132. package/dist/components/page-wrapper/index.d.ts +2 -0
  133. package/dist/components/page-wrapper/index.js +28 -0
  134. package/dist/components/page-wrapper/tokens.css +1556 -0
  135. package/dist/components/picture/picture.schema.json +88 -0
  136. package/dist/components/providers/index.d.ts +6 -0
  137. package/dist/components/providers/index.js +38 -0
  138. package/dist/components/raw-page-wrapper/index.d.ts +3 -0
  139. package/dist/components/raw-page-wrapper/index.js +492 -0
  140. package/dist/components/section/index.d.ts +147 -0
  141. package/dist/components/section/index.js +48 -0
  142. package/dist/components/section/js/Section.client.d.ts +2 -0
  143. package/dist/components/section/js/Section.client.js +26 -0
  144. package/dist/components/section/js/spotlight.client.d.ts +2 -0
  145. package/dist/components/section/js/spotlight.client.js +14 -0
  146. package/dist/components/section/section.css +110 -0
  147. package/dist/components/section/section.schema.dereffed.json +1875 -0
  148. package/dist/components/section/section.schema.json +222 -0
  149. package/dist/components/slider/index.d.ts +4 -0
  150. package/dist/components/slider/index.js +7 -0
  151. package/dist/components/slider/slider.css +24 -0
  152. package/dist/components/slider/slider.schema.dereffed.json +54 -0
  153. package/dist/components/slider/slider.schema.json +30 -0
  154. package/dist/components/split/index.d.ts +4 -0
  155. package/dist/components/split/index.js +7 -0
  156. package/dist/components/split/split.css +24 -0
  157. package/dist/components/split/split.schema.dereffed.json +20 -0
  158. package/dist/components/split/split.schema.json +13 -0
  159. package/dist/components/stats/index.d.ts +4 -0
  160. package/dist/components/stats/index.js +11 -0
  161. package/dist/components/stats/stats.css +49 -0
  162. package/dist/components/stats/stats.schema.dereffed.json +71 -0
  163. package/dist/components/stats/stats.schema.json +49 -0
  164. package/dist/components/teaser-card/index.d.ts +6 -0
  165. package/dist/components/teaser-card/index.js +25 -0
  166. package/dist/components/teaser-card/teaser-card.css +98 -0
  167. package/dist/components/teaser-card/teaser-card.schema.dereffed.json +69 -0
  168. package/dist/components/teaser-card/teaser-card.schema.json +58 -0
  169. package/dist/components/teaser-component/component-teaser.css +33 -0
  170. package/dist/components/teaser-component/index.d.ts +41 -0
  171. package/dist/components/teaser-component/index.js +18 -0
  172. package/dist/components/testimonials/index.d.ts +9 -0
  173. package/dist/components/testimonials/index.js +22 -0
  174. package/dist/components/testimonials/testimonials.css +63 -0
  175. package/dist/components/testimonials/testimonials.schema.dereffed.json +93 -0
  176. package/dist/components/testimonials/testimonials.schema.json +71 -0
  177. package/dist/components/text/index.d.ts +4 -0
  178. package/dist/components/text/index.js +13 -0
  179. package/dist/components/text/text.css +15 -0
  180. package/dist/components/text/text.schema.dereffed.json +50 -0
  181. package/dist/components/text/text.schema.json +39 -0
  182. package/dist/components/video-curtain/index.d.ts +4 -0
  183. package/dist/components/video-curtain/index.js +47 -0
  184. package/dist/components/video-curtain/video-curtain.css +51 -0
  185. package/dist/components/video-curtain/video-curtain.schema.dereffed.json +123 -0
  186. package/dist/components/video-curtain/video-curtain.schema.json +67 -0
  187. package/dist/global-35f78d6d.js +1 -0
  188. package/dist/global.client.d.ts +2 -0
  189. package/dist/global.client.js +8 -0
  190. package/dist/global.css +564 -0
  191. package/dist/static/.gitkeep +0 -0
  192. package/dist/static/favicon/.gitkeep +0 -0
  193. package/dist/static/favicon/android-chrome-192x192.png +0 -0
  194. package/dist/static/favicon/android-chrome-512x512.png +0 -0
  195. package/dist/static/favicon/apple-touch-icon.png +0 -0
  196. package/dist/static/favicon/browserconfig.xml +9 -0
  197. package/dist/static/favicon/favicon-16x16.png +0 -0
  198. package/dist/static/favicon/favicon-192-192.png +20 -0
  199. package/dist/static/favicon/favicon-32x32.png +0 -0
  200. package/dist/static/favicon/favicon.ico +0 -0
  201. package/dist/static/favicon/mstile-144x144.png +0 -0
  202. package/dist/static/favicon/mstile-150x150.png +0 -0
  203. package/dist/static/favicon/mstile-310x150.png +0 -0
  204. package/dist/static/favicon/mstile-310x310.png +0 -0
  205. package/dist/static/favicon/mstile-70x70.png +0 -0
  206. package/dist/static/favicon/safari-pinned-tab.svg +30 -0
  207. package/dist/static/favicon/site.webmanifest +19 -0
  208. package/dist/static/fonts/dsa/Fredoka-Bold.woff +0 -0
  209. package/dist/static/fonts/dsa/Fredoka-Bold.woff2 +0 -0
  210. package/dist/static/fonts/dsa/Fredoka-Light.woff +0 -0
  211. package/dist/static/fonts/dsa/Fredoka-Light.woff2 +0 -0
  212. package/dist/static/fonts/dsa/Fredoka-Medium.woff +0 -0
  213. package/dist/static/fonts/dsa/Fredoka-Medium.woff2 +0 -0
  214. package/dist/static/fonts/dsa/Fredoka-Regular.woff +0 -0
  215. package/dist/static/fonts/dsa/Fredoka-Regular.woff2 +0 -0
  216. package/dist/static/fonts/dsa/Fredoka-SemiBold.woff +0 -0
  217. package/dist/static/fonts/dsa/Fredoka-SemiBold.woff2 +0 -0
  218. package/dist/static/fonts/dsa/Mulish-300.woff +0 -0
  219. package/dist/static/fonts/dsa/Mulish-300.woff2 +0 -0
  220. package/dist/static/fonts/dsa/Mulish-600.woff +0 -0
  221. package/dist/static/fonts/dsa/Mulish-600.woff2 +0 -0
  222. package/dist/static/fonts/dsa/Mulish-800.woff +0 -0
  223. package/dist/static/fonts/dsa/Mulish-800.woff2 +0 -0
  224. package/dist/static/fonts/dsa/Mulish-Regular.woff +0 -0
  225. package/dist/static/fonts/dsa/Mulish-Regular.woff2 +0 -0
  226. package/dist/static/fonts/google/google-sans-18pt.woff2 +0 -0
  227. package/dist/static/fonts/google/google-sans-display.woff2 +0 -0
  228. package/dist/static/fonts/google/google-sans-text-medium.woff2 +0 -0
  229. package/dist/static/fonts/google/google-sans-text.woff2 +0 -0
  230. package/dist/static/fonts/lughausen/novelpro-regular.woff +0 -0
  231. package/dist/static/fonts/lughausen/novelsanspro-bold.woff +0 -0
  232. package/dist/static/fonts/lughausen/novelsanspro-regular.woff +0 -0
  233. package/dist/static/fonts/telekom/teleneo-bold-woff-data.woff +0 -0
  234. package/dist/static/fonts/telekom/teleneo-extrabold-woff-data.woff +0 -0
  235. package/dist/static/fonts/telekom/teleneo-medium-woff-data.woff +0 -0
  236. package/dist/static/fonts/telekom/teleneo-thin-woff-data.woff +0 -0
  237. package/dist/static/img/02.jpg +0 -0
  238. package/dist/static/img/angled-image.png +0 -0
  239. package/dist/static/img/bg_dot-carpet-blue.svg +346 -0
  240. package/dist/static/img/close-up-young-business-team-working.png +0 -0
  241. package/dist/static/img/colleagues-work-office-using-computers-looking-aside.png +0 -0
  242. package/dist/static/img/colored-square.png +0 -0
  243. package/dist/static/img/contact-person.png +0 -0
  244. package/dist/static/img/full-shot-different-people-working-together.png +0 -0
  245. package/dist/static/img/grid-bg.svg +19 -0
  246. package/dist/static/img/logos/castaway.svg +111 -0
  247. package/dist/static/img/logos/logoipsum-212.svg +12 -0
  248. package/dist/static/img/logos/logoipsum-217.svg +4 -0
  249. package/dist/static/img/logos/logoipsum-239.svg +16 -0
  250. package/dist/static/img/logos/logoipsum-244.svg +19 -0
  251. package/dist/static/img/logos/logoipsum-250.svg +21 -0
  252. package/dist/static/img/logos/logoipsum-286.svg +20 -0
  253. package/dist/static/img/low-angle-tall-building-with-many-windows_23-2148230392.png +0 -0
  254. package/dist/static/img/mosaic-1.png +0 -0
  255. package/dist/static/img/mosaic-2.png +0 -0
  256. package/dist/static/img/mosaic-2_1.svg +34 -0
  257. package/dist/static/img/mosaic-2_2.svg +25 -0
  258. package/dist/static/img/mosaic-2_3.svg +32 -0
  259. package/dist/static/img/mosaic-3.png +0 -0
  260. package/dist/static/img/office-divider-image.png +0 -0
  261. package/dist/static/img/offset-image.png +0 -0
  262. package/dist/static/img/people/author-alex.png +0 -0
  263. package/dist/static/img/people/author-emily.png +0 -0
  264. package/dist/static/img/people/author-john.png +0 -0
  265. package/dist/static/img/people-brainstorming-work-meeting.png +0 -0
  266. package/dist/static/img/responsive_image-1680.png +0 -0
  267. package/dist/static/img/responsive_image-420.png +0 -0
  268. package/dist/static/img/responsive_image-980.png +0 -0
  269. package/dist/static/img/showcases/audio_bg.svg +10 -0
  270. package/dist/static/img/showcases/comp_audio01.jpg +0 -0
  271. package/dist/static/img/showcases/comp_audio04.png +0 -0
  272. package/dist/static/img/showcases/comp_eco01.jpg +0 -0
  273. package/dist/static/img/showcases/comp_eco01.png +0 -0
  274. package/dist/static/img/showcases/comp_eco02.png +0 -0
  275. package/dist/static/img/showcases/comp_eco03.png +0 -0
  276. package/dist/static/img/showcases/comp_eco04.jpg +0 -0
  277. package/dist/static/img/showcases/comp_eco04.png +0 -0
  278. package/dist/static/img/showcases/comp_tfe01.jpg +0 -0
  279. package/dist/static/img/showcases/eco_bg.png +0 -0
  280. package/dist/static/img/showcases/preview_audio.png +0 -0
  281. package/dist/static/img/showcases/preview_eco.png +0 -0
  282. package/dist/static/img/showcases/preview_tfe.png +0 -0
  283. package/dist/static/img/showcases/tfe_bg.svg +48 -0
  284. package/dist/static/img/top-view-desk-with-keyboard-drawing-pad.png +0 -0
  285. package/dist/static/img/videos/handshake-bw.mp4 +0 -0
  286. package/dist/static/img/videos/video-720.mp4 +0 -0
  287. package/dist/static/img/videos/video-agency.mp4 +0 -0
  288. package/dist/static/img/view-modern-office.jpg +0 -0
  289. package/dist/static/logo-google.svg +1 -0
  290. package/dist/static/logo-lughausen.svg +27 -0
  291. package/dist/static/logo-telekom.svg +8 -0
  292. package/dist/static/logo.svg +26 -0
  293. package/dist/static/tokens-google.css +1553 -0
  294. package/dist/static/tokens-lughausen.css +1549 -0
  295. package/dist/static/tokens-telekom.css +1549 -0
  296. package/dist/static/tokens.css +1554 -0
  297. package/dist/tokens/IconSprite.js +467 -0
  298. package/dist/tokens/icon-sprite.html +37 -0
  299. package/dist/tokens/tokens.css +1554 -0
  300. package/dist/tokens/tokens.js +652 -0
  301. package/package.json +138 -0
@@ -0,0 +1,67 @@
1
+ a.c-button,
2
+ button.c-button {
3
+ --c-button--border-radius: var(--ks-border-radius-pill);
4
+ --c-button--padding: 0.75em 2em;
5
+ --c-button--font-weight: var(--ks-font-weight-semi-bold);
6
+ }
7
+ a.c-button--solid,
8
+ button.c-button--solid {
9
+ --c-button--color: var(--ks-color-fg-alpha-2);
10
+ --c-button--color-hover: var(--ks-color-fg);
11
+ --c-button--color-active: var(--ks-color-fg);
12
+ --c-button--background-color: var(--ks-color-primary);
13
+ --c-button--background-color-hover: var(--ks-color-primary);
14
+ --c-button--shadow: 0px 0px 2px 1px var(--ks-color-fg-alpha-4-base),
15
+ 0px 0px 19px 2px var(--ks-color-primary-alpha-2);
16
+ --c-button--shadow-hover: 0px 0px 2px 1px var(--ks-color-fg-alpha-1-base), 0px 0px 19px 4px var(--ks-color-primary);
17
+ }
18
+ [ks-inverted=true] a.c-button--solid,
19
+ [ks-inverted=true] button.c-button--solid {
20
+ --c-button--color: var(--ks-color-fg-inverted-alpha-2);
21
+ --c-button--color-hover: var(--ks-color-fg-inverted);
22
+ --c-button--color-active: var(--ks-color-fg-inverted);
23
+ }
24
+ a.c-button--clear,
25
+ button.c-button--clear {
26
+ --c-button--color: var(--ks-color-fg-alpha-2);
27
+ --c-button--color-hover: var(--ks-color-fg);
28
+ --c-button--color-active: var(--ks-color-fg);
29
+ --c-button--border-color: transparent;
30
+ --c-button--border-color-hover: transparent;
31
+ --c-button--border-color-active: transparent;
32
+ --c-button--border-width: 2px;
33
+ --c-button--background-color: var(--ks-color-fg-alpha-8);
34
+ --c-button--background-color-hover: var(--ks-color-fg-alpha-7);
35
+ --c-button--background-color-active: var(--ks-color-fg-alpha-7);
36
+ padding: var(--c-button--padding);
37
+ }
38
+ a.c-button--outline,
39
+ button.c-button--outline {
40
+ --c-button--color: var(--ks-color-fg-alpha-2);
41
+ --c-button--color-hover: var(--ks-color-fg);
42
+ --c-button--color-active: var(--ks-color-fg);
43
+ --c-button--border-color: var(--ks-color-fg-alpha-6);
44
+ --c-button--border-color-hover: var(--ks-color-fg);
45
+ --c-button--border-color-active: var(--ks-color-fg);
46
+ --c-button--background-color-hover: transparent;
47
+ --c-button--background-color-active: transparent;
48
+ }
49
+
50
+ [ks-inverted=true] .c-button--primary,
51
+ [ks-inverted=true].c-button--primary {
52
+ --c-button--shadow: 0px 0px 2px 1px var(--ks-color-primary-alpha-3-base),
53
+ 0px 0px 13px 0px var(--ks-color-primary-alpha-5-base);
54
+ --c-button--shadow-hover: 0px 0px 2px 1px var(--ks-color-primary-alpha-4-base),
55
+ 0px 0px 13px 0px var(--ks-color-primary-alpha-3-base);
56
+ }
57
+
58
+ .c-button {
59
+ box-shadow: var(--c-button--shadow);
60
+ transition-property: box-shadow, transform, background-color, color, border;
61
+ }
62
+ .c-button:disabled {
63
+ pointer-events: none;
64
+ }
65
+ .c-button:hover {
66
+ box-shadow: var(--c-button--shadow-hover);
67
+ }
@@ -0,0 +1,63 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/button.schema.json",
4
+ "title": "Button",
5
+ "description": "Component used for user interaction",
6
+ "type": "object",
7
+ "properties": {
8
+ "label": {
9
+ "type": "string",
10
+ "title": "Label",
11
+ "description": "Text content to display inside the button",
12
+ "examples": [
13
+ "Book a meeting"
14
+ ]
15
+ },
16
+ "target": {
17
+ "type": "string",
18
+ "title": "Target",
19
+ "description": "Target that should be linked, makes the button behave like a link semantically",
20
+ "format": "uri"
21
+ },
22
+ "variant": {
23
+ "type": "string",
24
+ "title": "Variant",
25
+ "description": "Variant of button to be used",
26
+ "enum": [
27
+ "primary",
28
+ "secondary",
29
+ "tertiary"
30
+ ],
31
+ "default": "secondary"
32
+ },
33
+ "icon": {
34
+ "type": "string",
35
+ "title": "Icon",
36
+ "description": "Choose an icon"
37
+ },
38
+ "size": {
39
+ "type": "string",
40
+ "title": "Size",
41
+ "description": "Size of button to use",
42
+ "enum": [
43
+ "small",
44
+ "medium",
45
+ "large"
46
+ ],
47
+ "default": "medium"
48
+ },
49
+ "disabled": {
50
+ "type": "boolean",
51
+ "title": "Disabled?",
52
+ "description": "Whether the button should be disabled",
53
+ "default": false
54
+ },
55
+ "type": {
56
+ "const": "button"
57
+ }
58
+ },
59
+ "additionalProperties": false,
60
+ "required": [
61
+ "label"
62
+ ]
63
+ }
@@ -0,0 +1,48 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/button.schema.json",
4
+ "title": "Button",
5
+ "description": "Component used for user interaction",
6
+ "type": "object",
7
+ "properties": {
8
+ "label": {
9
+ "type": "string",
10
+ "title": "Label",
11
+ "description": "Text content to display inside the button",
12
+ "examples": ["Book a meeting"]
13
+ },
14
+ "target": {
15
+ "type": "string",
16
+ "title": "Target",
17
+ "description": "Target that should be linked, makes the button behave like a link semantically",
18
+ "format": "uri"
19
+ },
20
+ "variant": {
21
+ "type": "string",
22
+ "title": "Variant",
23
+ "description": "Variant of button to be used",
24
+ "enum": ["primary", "secondary", "tertiary"],
25
+ "default": "secondary"
26
+ },
27
+ "icon": {
28
+ "type": "string",
29
+ "title": "Icon",
30
+ "description": "Choose an icon"
31
+ },
32
+ "size": {
33
+ "type": "string",
34
+ "title": "Size",
35
+ "description": "Size of button to use",
36
+ "enum": ["small", "medium", "large"],
37
+ "default": "medium"
38
+ },
39
+ "disabled": {
40
+ "type": "boolean",
41
+ "title": "Disabled?",
42
+ "description": "Whether the button should be disabled",
43
+ "default": false
44
+ }
45
+ },
46
+ "additionalProperties": false,
47
+ "required": ["label"]
48
+ }
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import { HTMLAttributes, FC, PropsWithChildren } from "react";
3
+ import { ButtonProps } from "../../ButtonProps-03ff6d21.js";
4
+ declare const Button: import("react").ForwardRefExoticComponent<ButtonProps & HTMLAttributes<HTMLElement> & import("react").RefAttributes<HTMLAnchorElement | HTMLButtonElement>>;
5
+ declare const ButtonProvider: FC<PropsWithChildren>;
6
+ export { Button, ButtonProvider };
@@ -0,0 +1,18 @@
1
+ import "./button.css";
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { forwardRef } from 'react';
4
+ import { ButtonContextDefault, ButtonContext } from '@kickstartds/base/lib/button';
5
+
6
+ const Button = forwardRef(({ label, target, size = "medium", variant = "secondary", icon, disabled = false, ...props }, ref) => (jsx(ButtonContextDefault, { ...props, href: target, label: label, size: size, variant: variant === "primary"
7
+ ? "solid"
8
+ : variant === "secondary"
9
+ ? "clear"
10
+ : variant === "tertiary"
11
+ ? "outline"
12
+ : "solid", disabled: disabled, iconAfter: {
13
+ icon: icon,
14
+ }, ref: ref })));
15
+ Button.displayName = "Button";
16
+ const ButtonProvider = (props) => (jsx(ButtonContext.Provider, { ...props, value: Button }));
17
+
18
+ export { Button, ButtonProvider };
@@ -0,0 +1,115 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/button-group.schema.json",
4
+ "title": "Button Group",
5
+ "type": "object",
6
+ "properties": {
7
+ "buttons": {
8
+ "title": "Buttons",
9
+ "description": "Buttons of the Button Group",
10
+ "type": "array",
11
+ "items": {
12
+ "$schema": "http://json-schema.org/draft-07/schema#",
13
+ "$id": "http://schema.mydesignsystem.com/button.schema.json",
14
+ "title": "Button",
15
+ "description": "Component used for user interaction",
16
+ "type": "object",
17
+ "properties": {
18
+ "label": {
19
+ "type": "string",
20
+ "title": "Label",
21
+ "description": "Text content to display inside the button",
22
+ "examples": [
23
+ "Book a meeting"
24
+ ]
25
+ },
26
+ "target": {
27
+ "type": "string",
28
+ "title": "Target",
29
+ "description": "Target that should be linked, makes the button behave like a link semantically",
30
+ "format": "uri"
31
+ },
32
+ "variant": {
33
+ "type": "string",
34
+ "title": "Variant",
35
+ "description": "Variant of button to be used",
36
+ "enum": [
37
+ "primary",
38
+ "secondary",
39
+ "tertiary"
40
+ ],
41
+ "default": "secondary"
42
+ },
43
+ "icon": {
44
+ "type": "string",
45
+ "title": "Icon",
46
+ "description": "Choose an icon"
47
+ },
48
+ "size": {
49
+ "type": "string",
50
+ "title": "Size",
51
+ "description": "Size of button to use",
52
+ "enum": [
53
+ "small",
54
+ "medium",
55
+ "large"
56
+ ],
57
+ "default": "medium"
58
+ },
59
+ "disabled": {
60
+ "type": "boolean",
61
+ "title": "Disabled?",
62
+ "description": "Whether the button should be disabled",
63
+ "default": false
64
+ },
65
+ "type": {
66
+ "const": "button"
67
+ }
68
+ },
69
+ "additionalProperties": false,
70
+ "required": [
71
+ "label"
72
+ ]
73
+ }
74
+ },
75
+ "colorNeutral": {
76
+ "title": "Color Neutral",
77
+ "description": "Set the buttons to a color neutral variant",
78
+ "default": false,
79
+ "type": "boolean"
80
+ },
81
+ "size": {
82
+ "title": "Button Size",
83
+ "description": "Choose a size between small, medium and large",
84
+ "type": "string",
85
+ "enum": [
86
+ "small",
87
+ "medium",
88
+ "large"
89
+ ],
90
+ "default": "medium"
91
+ },
92
+ "arrangement": {
93
+ "title": "Button arrangement",
94
+ "description": "Vertical arrangement of the buttons",
95
+ "type": "string",
96
+ "enum": [
97
+ "left",
98
+ "center",
99
+ "right",
100
+ "space-between",
101
+ "grow"
102
+ ],
103
+ "default": "left"
104
+ },
105
+ "className": {
106
+ "title": "Additional Classes",
107
+ "description": "Add additional css classes that should be applied to the button",
108
+ "type": "string"
109
+ },
110
+ "type": {
111
+ "const": "button-group"
112
+ }
113
+ },
114
+ "additionalProperties": false
115
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/button-group.schema.json",
4
+ "title": "Button Group",
5
+ "type": "object",
6
+ "properties": {
7
+ "buttons": {
8
+ "$ref": "http://schema.kickstartds.com/base/button-group.schema.json#/properties/items"
9
+ },
10
+ "colorNeutral": {
11
+ "title": "Color Neutral",
12
+ "description": "Set the buttons to a color neutral variant",
13
+ "default": false,
14
+ "type": "boolean"
15
+ },
16
+ "size": {
17
+ "$ref": "http://schema.kickstartds.com/base/button.schema.json#/properties/size"
18
+ },
19
+ "arrangement": {
20
+ "$ref": "http://schema.kickstartds.com/base/button-group.schema.json#/properties/arrangement"
21
+ },
22
+ "className": {
23
+ "$ref": "http://schema.kickstartds.com/base/button-group.schema.json#/properties/className"
24
+ }
25
+ },
26
+ "additionalProperties": false
27
+ }
@@ -0,0 +1,40 @@
1
+ /// <reference types="react" />
2
+ import { FC, PropsWithChildren } from "react";
3
+ /* eslint-disable */
4
+ /**
5
+ * This file was automatically generated by json-schema-to-typescript.
6
+ * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
7
+ * and run json-schema-to-typescript to regenerate this file.
8
+ */
9
+ import { ButtonProps } from "../../ButtonProps-03ff6d21.js";
10
+ /**
11
+ * Buttons of the Button Group
12
+ */
13
+ type Buttons = ButtonProps[];
14
+ /**
15
+ * Set the buttons to a color neutral variant
16
+ */
17
+ type ColorNeutral = boolean;
18
+ /**
19
+ * Choose a size between small, medium and large
20
+ */
21
+ type ButtonSize = "small" | "medium" | "large";
22
+ /**
23
+ * Vertical arrangement of the buttons
24
+ */
25
+ type ButtonArrangement = "left" | "center" | "right" | "space-between" | "grow";
26
+ /**
27
+ * Add additional css classes that should be applied to the button
28
+ */
29
+ type AdditionalClasses = string;
30
+ interface ButtonGroupProps {
31
+ buttons?: Buttons;
32
+ colorNeutral?: ColorNeutral;
33
+ size?: ButtonSize;
34
+ arrangement?: ButtonArrangement;
35
+ className?: AdditionalClasses;
36
+ }
37
+ declare const ButtonGroup: import("react").ForwardRefExoticComponent<ButtonGroupProps & import("react").RefAttributes<HTMLDivElement>>;
38
+ declare const ButtonGroupProvider: FC<PropsWithChildren>;
39
+ declare const useButtonGroup: () => (props: ButtonGroupProps) => import("react/jsx-runtime").JSX.Element;
40
+ export { ButtonGroup, ButtonGroupProvider, useButtonGroup };
@@ -0,0 +1,30 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { forwardRef, useContext } from 'react';
3
+ import { ButtonContext } from '@kickstartds/base/lib/button';
4
+ import { ButtonGroupContextDefault, ButtonGroupContext } from '@kickstartds/base/lib/button-group';
5
+
6
+ const ButtonGroup = forwardRef(({ buttons, colorNeutral, size, ...props }, ref) => {
7
+ return buttons && buttons.length > 0 ? (jsx(ButtonGroupContextDefault, { ...props, items: buttons
8
+ .filter((button) => button.label)
9
+ .map((button, index) => ({
10
+ size: size,
11
+ ...button,
12
+ variant: colorNeutral
13
+ ? index === 0
14
+ ? "secondary"
15
+ : "tertiary"
16
+ : index === 0
17
+ ? "primary"
18
+ : index === 1
19
+ ? "secondary"
20
+ : "tertiary",
21
+ })), ref: ref })) : null;
22
+ });
23
+ const ButtonGroupProvider = (props) => (jsx(ButtonGroupContext.Provider, { ...props, value: ButtonGroup }));
24
+ // hook to create a ButtonGroup, that can be used as ButtonContext.Provider value
25
+ const useButtonGroup = () => {
26
+ const Button = useContext(ButtonContext);
27
+ return (props) => (jsx(ButtonContext.Provider, { value: Button, children: jsx(ButtonGroup, { ...props }) }));
28
+ };
29
+
30
+ export { ButtonGroup, ButtonGroupProvider, useButtonGroup };
@@ -0,0 +1,43 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/component-teaser.schema.json",
4
+ "title": "Component Teaser",
5
+ "description": "Component used to tease content",
6
+ "type": "object",
7
+ "properties": {
8
+ "title": {
9
+ "type": "string",
10
+ "title": "Headline",
11
+ "description": "Headline for the teaser card",
12
+ "format": "markdown"
13
+ },
14
+ "text": {
15
+ "type": "string",
16
+ "title": "Text",
17
+ "description": "Body text for the teaser card",
18
+ "format": "markdown"
19
+ },
20
+ "label": {
21
+ "type": "string",
22
+ "title": "Label",
23
+ "description": "Label for the Teaser Card"
24
+ },
25
+ "target": {
26
+ "type": "string",
27
+ "title": "Target",
28
+ "description": "Target that should be linked",
29
+ "format": "uri"
30
+ },
31
+ "image": {
32
+ "type": "string",
33
+ "title": "Image",
34
+ "description": "Image to display as cover",
35
+ "format": "uri"
36
+ },
37
+ "type": {
38
+ "const": "component-teaser"
39
+ }
40
+ },
41
+ "additionalProperties": false,
42
+ "required": []
43
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/component-teaser.schema.json",
4
+ "title": "Component Teaser",
5
+ "description": "Component used to tease content",
6
+ "type": "object",
7
+ "properties": {
8
+ "title": {
9
+ "type": "string",
10
+ "title": "Headline",
11
+ "description": "Headline for the teaser card",
12
+ "format": "markdown"
13
+ },
14
+ "text": {
15
+ "type": "string",
16
+ "title": "Text",
17
+ "description": "Body text for the teaser card",
18
+ "format": "markdown"
19
+ },
20
+ "label": {
21
+ "type": "string",
22
+ "title": "Label",
23
+ "description": "Label for the Teaser Card"
24
+ },
25
+ "target": {
26
+ "type": "string",
27
+ "title": "Target",
28
+ "description": "Target that should be linked",
29
+ "format": "uri"
30
+ },
31
+ "image": {
32
+ "type": "string",
33
+ "title": "Image",
34
+ "description": "Image to display as cover",
35
+ "format": "uri"
36
+ }
37
+ },
38
+ "additionalProperties": false,
39
+ "required": []
40
+ }
@@ -0,0 +1,100 @@
1
+ .c-cta.c-storytelling {
2
+ --c-storytelling--text-color-neutral: var(--ks-color-fg);
3
+ --c-storytelling--vertical-padding: var(--l-section--space-default);
4
+ --c-storytelling--horizontal-padding: var(--l-section--content-padding);
5
+ }
6
+ .c-cta.c-storytelling .c-storytelling__box:only-child {
7
+ --c-storytelling--horizontal-padding: var(--l-section--content-padding);
8
+ }
9
+ .c-cta.c-storytelling--color-neutral.c-storytelling .c-storytelling__box {
10
+ --c-storytelling_text--color: var(--c-storytelling--text-color-neutral);
11
+ --c-storytelling_subheadline--color: var(--c-storytelling--text-color-neutral);
12
+ }
13
+
14
+ @media (min-width: 640px) {
15
+ .c-header--floating + .l-container--storytelling .c-storytelling.c-cta,
16
+ .c-header--floating + .l-section .l-container--storytelling:first-child .c-storytelling.c-cta {
17
+ padding-top: calc(var(--g-header-height) + var(--c-storytelling--horizontal-padding));
18
+ z-index: 1;
19
+ }
20
+ }
21
+
22
+ .c-storytelling.c-cta {
23
+ --c-storytelling--padding-ratio: 2;
24
+ justify-content: center;
25
+ align-items: center;
26
+ padding: 0;
27
+ }
28
+ .c-storytelling.c-cta--color-neutral.c-storytelling {
29
+ --c-rich-text--color: var(--c-storytelling--text-color-neutral);
30
+ }
31
+ .c-storytelling.c-cta--color-neutral.c-storytelling .c-headline__subheadline {
32
+ --c-headline_subheadline--color: var(--c-storytelling--text-color-neutral);
33
+ }
34
+ .c-storytelling.c-cta.c-storytelling--full {
35
+ --c-storytelling--padding-ratio: 1;
36
+ }
37
+ .c-storytelling.c-cta.c-cta--align-top {
38
+ align-items: flex-start;
39
+ }
40
+ .c-storytelling.c-cta.c-cta--align-bottom {
41
+ align-items: flex-end;
42
+ }
43
+ .c-storytelling.c-cta.c-cta--highlight-text .c-storytelling__text {
44
+ font: var(--ks-font-copy-l);
45
+ color: var(--ks-color-fg);
46
+ }
47
+ .c-storytelling.c-cta .c-storytelling__box {
48
+ width: 100%;
49
+ padding: var(--c-storytelling--vertical-padding) var(--c-storytelling--horizontal-padding);
50
+ }
51
+ @container storytelling (max-width: 640px) {
52
+ .c-storytelling.c-cta .c-storytelling__box {
53
+ padding-top: calc(var(--c-storytelling--vertical-padding) / var(--c-storytelling--padding-ratio));
54
+ }
55
+ .c-storytelling.c-cta .c-storytelling__box:only-child {
56
+ padding-top: var(--c-storytelling--vertical-padding);
57
+ }
58
+ }
59
+ .c-storytelling.c-cta .c-storytelling__box:only-child {
60
+ padding: var(--c-storytelling--vertical-padding) var(--c-storytelling--horizontal-padding);
61
+ }
62
+ .c-storytelling.c-cta .c-storytelling__box__content {
63
+ max-width: 100%;
64
+ }
65
+ .c-storytelling.c-cta .c-storytelling__image {
66
+ margin: 0;
67
+ }
68
+ @container storytelling (min-width: 640px) {
69
+ .c-storytelling.c-cta.c-storytelling--order-desktop-image-last .c-storytelling__image {
70
+ padding-left: calc(var(--c-storytelling--horizontal-padding) / var(--c-storytelling--padding-ratio));
71
+ }
72
+ .c-storytelling.c-cta.c-storytelling--order-desktop-image-last .c-storytelling__box {
73
+ padding-right: calc(var(--c-storytelling--horizontal-padding) / var(--c-storytelling--padding-ratio));
74
+ }
75
+ .c-storytelling.c-cta .c-storytelling__box {
76
+ padding-left: calc(var(--c-storytelling--horizontal-padding) / var(--c-storytelling--padding-ratio));
77
+ }
78
+ .c-storytelling.c-cta .c-storytelling__box__content--center .c-button-group {
79
+ justify-content: center;
80
+ }
81
+ .c-storytelling.c-cta .c-storytelling__box:only-child {
82
+ width: 100%;
83
+ max-width: calc(var(--l-section--content-width-default) - var(--l-section--content-padding) * var(--c-storytelling--padding-ratio));
84
+ }
85
+ .c-storytelling.c-cta > .c-storytelling__image {
86
+ padding: var(--c-storytelling--vertical-padding) var(--c-storytelling--horizontal-padding);
87
+ padding-right: calc(var(--c-storytelling--horizontal-padding) / var(--c-storytelling--padding-ratio));
88
+ }
89
+ .c-storytelling.c-cta.c-storytelling--full > .c-storytelling__image {
90
+ padding: 0;
91
+ }
92
+ .c-storytelling.c-cta > .c-storytelling__image,
93
+ .c-storytelling.c-cta > .c-storytelling__box {
94
+ max-width: calc(var(--l-section--content-width-wide) / 2);
95
+ }
96
+ .c-storytelling.c-cta.c-cta--full-width > .c-storytelling__image,
97
+ .c-storytelling.c-cta.c-cta--full-width > .c-storytelling__box {
98
+ max-width: 100%;
99
+ }
100
+ }