@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,105 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/image.schema.json",
4
+ "title": "Image",
5
+ "description": "Base component to display a picture",
6
+ "type": "object",
7
+ "properties": {
8
+ "src": {
9
+ "title": "Source",
10
+ "description": "Picture source",
11
+ "type": "string",
12
+ "format": "image",
13
+ "examples": [
14
+ "img/close-up-young-business-team-working.png"
15
+ ]
16
+ },
17
+ "srcSet": {
18
+ "title": "Picture sourceset",
19
+ "description": "Use a srcSet to display picture",
20
+ "type": "string",
21
+ "format": "image"
22
+ },
23
+ "alt": {
24
+ "title": "Alt text",
25
+ "description": "Alt text to display for picture",
26
+ "type": "string"
27
+ },
28
+ "width": {
29
+ "title": "Width",
30
+ "description": "Width of the picture",
31
+ "type": "integer",
32
+ "minimum": 0
33
+ },
34
+ "height": {
35
+ "title": "Height",
36
+ "description": "Height of the picture",
37
+ "type": "integer",
38
+ "minimum": 0
39
+ },
40
+ "aspectRatio": {
41
+ "type": "string",
42
+ "title": "Aspect Ratio",
43
+ "description": "The aspect ratio of the image",
44
+ "enum": [
45
+ "unset",
46
+ "square",
47
+ "wide",
48
+ "landscape"
49
+ ],
50
+ "default": "unset"
51
+ },
52
+ "className": {
53
+ "title": "Additional Classes",
54
+ "description": "Add additional css classes that should be applied to the button",
55
+ "type": "string"
56
+ },
57
+ "style": {
58
+ "title": "`style` attribute",
59
+ "description": "Define a style attribute for the picture",
60
+ "type": "string"
61
+ },
62
+ "lazy": {
63
+ "title": "Lazy",
64
+ "description": "Load the picture lazily",
65
+ "type": "boolean",
66
+ "default": true
67
+ },
68
+ "sources": {
69
+ "title": "Sources",
70
+ "description": "Additional sources. This will result in a `picture`-Element",
71
+ "type": "array",
72
+ "items": {
73
+ "type": "object",
74
+ "properties": {
75
+ "srcSet": {
76
+ "title": "Picture sourceset",
77
+ "description": "Use a srcSet to display picture",
78
+ "type": "string",
79
+ "format": "image"
80
+ },
81
+ "media": {
82
+ "title": "TODO MEDIA TITLE",
83
+ "description": "TODO MEDIA DESCRIPTION",
84
+ "type": "string"
85
+ },
86
+ "type": {
87
+ "title": "TODO TYPE TITLE",
88
+ "description": "TODO TYPE DESCRIPTION",
89
+ "type": "string"
90
+ }
91
+ },
92
+ "additionalProperties": false
93
+ }
94
+ },
95
+ "pictureClassName": {
96
+ "title": "`class` attribute",
97
+ "description": "Set additional class(es) to the picture",
98
+ "type": "string"
99
+ },
100
+ "type": {
101
+ "const": "image"
102
+ }
103
+ },
104
+ "additionalProperties": false
105
+ }
@@ -0,0 +1,95 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/image.schema.json",
4
+ "title": "Image",
5
+ "description": "Base component to display a picture",
6
+ "type": "object",
7
+ "properties": {
8
+ "src": {
9
+ "title": "Source",
10
+ "description": "Picture source",
11
+ "type": "string",
12
+ "format": "image",
13
+ "examples": ["img/close-up-young-business-team-working.png"]
14
+ },
15
+ "srcSet": {
16
+ "title": "Picture sourceset",
17
+ "description": "Use a srcSet to display picture",
18
+ "type": "string",
19
+ "format": "image"
20
+ },
21
+ "alt": {
22
+ "title": "Alt text",
23
+ "description": "Alt text to display for picture",
24
+ "type": "string"
25
+ },
26
+ "width": {
27
+ "title": "Width",
28
+ "description": "Width of the picture",
29
+ "type": "integer",
30
+ "minimum": 0
31
+ },
32
+ "height": {
33
+ "title": "Height",
34
+ "description": "Height of the picture",
35
+ "type": "integer",
36
+ "minimum": 0
37
+ },
38
+ "aspectRatio": {
39
+ "type": "string",
40
+ "title": "Aspect Ratio",
41
+ "description": "The aspect ratio of the image",
42
+ "enum": ["unset", "square", "wide", "landscape"],
43
+ "default": "unset"
44
+ },
45
+ "className": {
46
+ "title": "Additional Classes",
47
+ "description": "Add additional css classes that should be applied to the button",
48
+ "type": "string"
49
+ },
50
+ "style": {
51
+ "title": "`style` attribute",
52
+ "description": "Define a style attribute for the picture",
53
+ "type": "string"
54
+ },
55
+ "lazy": {
56
+ "title": "Lazy",
57
+ "description": "Load the picture lazily",
58
+ "type": "boolean",
59
+ "default": true
60
+ },
61
+ "sources": {
62
+ "title": "Sources",
63
+ "description": "Additional sources. This will result in a `picture`-Element",
64
+ "type": "array",
65
+ "items": {
66
+ "type": "object",
67
+ "properties": {
68
+ "srcSet": {
69
+ "title": "Picture sourceset",
70
+ "description": "Use a srcSet to display picture",
71
+ "type": "string",
72
+ "format": "image"
73
+ },
74
+ "media": {
75
+ "title": "TODO MEDIA TITLE",
76
+ "description": "TODO MEDIA DESCRIPTION",
77
+ "type": "string"
78
+ },
79
+ "type": {
80
+ "title": "TODO TYPE TITLE",
81
+ "description": "TODO TYPE DESCRIPTION",
82
+ "type": "string"
83
+ }
84
+ },
85
+ "additionalProperties": false
86
+ }
87
+ },
88
+ "pictureClassName": {
89
+ "title": "`class` attribute",
90
+ "description": "Set additional class(es) to the picture",
91
+ "type": "string"
92
+ }
93
+ },
94
+ "additionalProperties": false
95
+ }
@@ -0,0 +1,87 @@
1
+ /// <reference types="react" />
2
+ import { HTMLAttributes, 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
+ /**
10
+ * Picture source
11
+ */
12
+ type Source = string;
13
+ /**
14
+ * Use a srcSet to display picture
15
+ */
16
+ type PictureSourceset = string;
17
+ /**
18
+ * Alt text to display for picture
19
+ */
20
+ type AltText = string;
21
+ /**
22
+ * Width of the picture
23
+ */
24
+ type Width = number;
25
+ /**
26
+ * Height of the picture
27
+ */
28
+ type Height = number;
29
+ /**
30
+ * The aspect ratio of the image
31
+ */
32
+ type AspectRatio = "unset" | "square" | "wide" | "landscape";
33
+ /**
34
+ * Add additional css classes that should be applied to the button
35
+ */
36
+ type AdditionalClasses = string;
37
+ /**
38
+ * Define a style attribute for the picture
39
+ */
40
+ type StyleAttribute = string;
41
+ /**
42
+ * Load the picture lazily
43
+ */
44
+ type Lazy = boolean;
45
+ /**
46
+ * Use a srcSet to display picture
47
+ */
48
+ type PictureSourceset1 = string;
49
+ /**
50
+ * TODO MEDIA DESCRIPTION
51
+ */
52
+ type TODOMEDIATITLE = string;
53
+ /**
54
+ * TODO TYPE DESCRIPTION
55
+ */
56
+ type TODOTYPETITLE = string;
57
+ /**
58
+ * Additional sources. This will result in a `picture`-Element
59
+ */
60
+ type Sources = {
61
+ srcSet?: PictureSourceset1;
62
+ media?: TODOMEDIATITLE;
63
+ type?: TODOTYPETITLE;
64
+ }[];
65
+ /**
66
+ * Set additional class(es) to the picture
67
+ */
68
+ type ClassAttribute = string;
69
+ /**
70
+ * Base component to display a picture
71
+ */
72
+ interface ImageProps {
73
+ src?: Source;
74
+ srcSet?: PictureSourceset;
75
+ alt?: AltText;
76
+ width?: Width;
77
+ height?: Height;
78
+ aspectRatio?: AspectRatio;
79
+ className?: AdditionalClasses;
80
+ style?: StyleAttribute;
81
+ lazy?: Lazy;
82
+ sources?: Sources;
83
+ pictureClassName?: ClassAttribute;
84
+ }
85
+ declare const Image: import("react").ForwardRefExoticComponent<ImageProps & HTMLAttributes<HTMLElement> & import("react").RefAttributes<HTMLImageElement>>;
86
+ declare const ImageProvider: FC<PropsWithChildren>;
87
+ export { Image, ImageProvider };
@@ -0,0 +1,11 @@
1
+ import "./image.css";
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import classnames from 'classnames';
4
+ import { forwardRef } from 'react';
5
+ import { PictureContextDefault, PictureContext } from '@kickstartds/base/lib/picture';
6
+
7
+ const Image = forwardRef(({ src, srcSet, alt, width, height, aspectRatio, className, id, itemProp, style, lazy, sources, pictureClassName, ...props }, ref) => (jsx(PictureContextDefault, { ...props, src: src, srcSet: srcSet, alt: alt, width: width, height: height, id: id, itemProp: itemProp, style: style, lazy: lazy, sources: sources, pictureClassName: pictureClassName, ref: ref, className: classnames("c-image", aspectRatio !== "unset" && `c-image--${aspectRatio}`, className) })));
8
+ Image.displayName = "Image";
9
+ const ImageProvider = (props) => (jsx(PictureContext.Provider, { ...props, value: Image }));
10
+
11
+ export { Image, ImageProvider };
@@ -0,0 +1,26 @@
1
+ .c-image-story.c-storytelling {
2
+ --c-image-story--gap: var(--ks-spacing-m);
3
+ --c-storytelling--horizontal-padding: var(--l-section--content-padding);
4
+ }
5
+ .c-image-story.c-storytelling--full {
6
+ --c-storytelling--vertical-padding: 0px;
7
+ }
8
+
9
+ .c-storytelling.c-image-story {
10
+ gap: var(--c-storytelling--horizontal-padding);
11
+ }
12
+ .c-storytelling.c-image-story .c-storytelling__box__content {
13
+ max-width: var(--l-section--content-width-narrow);
14
+ }
15
+ .c-storytelling.c-image-story .c-storytelling__box,
16
+ .c-storytelling.c-image-story .c-storytelling__image {
17
+ padding: 0;
18
+ }
19
+ .c-storytelling.c-image-story .c-storytelling__image img {
20
+ position: sticky;
21
+ top: calc(var(--c-storytelling--vertical-padding) * 2);
22
+ }
23
+ .c-storytelling.c-image-story.c-storytelling--full .c-storytelling__image img {
24
+ padding-top: 0;
25
+ padding-bottom: 0;
26
+ }
@@ -0,0 +1,165 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/image-story.schema.json",
4
+ "title": "Image Story",
5
+ "type": "object",
6
+ "properties": {
7
+ "headline": {
8
+ "title": "Module Headline",
9
+ "description": "Headline for the module element",
10
+ "type": "string",
11
+ "examples": [
12
+ "Headline"
13
+ ]
14
+ },
15
+ "largeHeadline": {
16
+ "type": "boolean",
17
+ "title": "Large Headline",
18
+ "description": "Make the headline larger",
19
+ "default": false
20
+ },
21
+ "sub": {
22
+ "title": "Module Subheadline",
23
+ "description": "Subheadline below the module headline",
24
+ "type": "string",
25
+ "examples": [
26
+ "Subheadline"
27
+ ]
28
+ },
29
+ "text": {
30
+ "title": "Module Text",
31
+ "description": "Info text for the module element",
32
+ "type": "string"
33
+ },
34
+ "layout": {
35
+ "type": "string",
36
+ "title": "Layout",
37
+ "description": "Choose the layout for the component",
38
+ "enum": [
39
+ "textLeft",
40
+ "imageLeft"
41
+ ],
42
+ "default": "imageLeft"
43
+ },
44
+ "padding": {
45
+ "type": "boolean",
46
+ "title": "Padding",
47
+ "default": false,
48
+ "description": "Give the component padding"
49
+ },
50
+ "buttons": {
51
+ "title": "Buttons",
52
+ "description": "Buttons of the Button Group",
53
+ "type": "array",
54
+ "items": {
55
+ "$schema": "http://json-schema.org/draft-07/schema#",
56
+ "$id": "http://schema.mydesignsystem.com/button.schema.json",
57
+ "title": "Button",
58
+ "description": "Component used for user interaction",
59
+ "type": "object",
60
+ "properties": {
61
+ "label": {
62
+ "type": "string",
63
+ "title": "Label",
64
+ "description": "Text content to display inside the button",
65
+ "examples": [
66
+ "Book a meeting"
67
+ ]
68
+ },
69
+ "target": {
70
+ "type": "string",
71
+ "title": "Target",
72
+ "description": "Target that should be linked, makes the button behave like a link semantically",
73
+ "format": "uri"
74
+ },
75
+ "variant": {
76
+ "type": "string",
77
+ "title": "Variant",
78
+ "description": "Variant of button to be used",
79
+ "enum": [
80
+ "primary",
81
+ "secondary",
82
+ "tertiary"
83
+ ],
84
+ "default": "secondary"
85
+ },
86
+ "icon": {
87
+ "type": "string",
88
+ "title": "Icon",
89
+ "description": "Choose an icon"
90
+ },
91
+ "size": {
92
+ "type": "string",
93
+ "title": "Size",
94
+ "description": "Size of button to use",
95
+ "enum": [
96
+ "small",
97
+ "medium",
98
+ "large"
99
+ ],
100
+ "default": "medium"
101
+ },
102
+ "disabled": {
103
+ "type": "boolean",
104
+ "title": "Disabled?",
105
+ "description": "Whether the button should be disabled",
106
+ "default": false
107
+ },
108
+ "type": {
109
+ "const": "button"
110
+ }
111
+ },
112
+ "additionalProperties": false,
113
+ "required": [
114
+ "label"
115
+ ]
116
+ }
117
+ },
118
+ "image": {
119
+ "title": "Image",
120
+ "description": "Image displayed alongside the text content",
121
+ "type": "object",
122
+ "properties": {
123
+ "src": {
124
+ "title": "Image source",
125
+ "description": "Image source to use",
126
+ "type": "string",
127
+ "format": "image"
128
+ },
129
+ "ratio": {
130
+ "title": "Image aspect ratio",
131
+ "description": "Select an aspect ratio to use for cropping and displaying the image",
132
+ "type": "string",
133
+ "enum": [
134
+ "4:3",
135
+ "3:2",
136
+ "16:9",
137
+ "1:1",
138
+ "none"
139
+ ],
140
+ "default": "none"
141
+ },
142
+ "alt": {
143
+ "title": "Alt text",
144
+ "description": "Image description",
145
+ "type": "string"
146
+ }
147
+ },
148
+ "additionalProperties": false
149
+ },
150
+ "textAlign": {
151
+ "title": "Text Alignment",
152
+ "description": "Choose the alginment of the text",
153
+ "enum": [
154
+ "left",
155
+ "center"
156
+ ],
157
+ "type": "string",
158
+ "default": "left"
159
+ },
160
+ "type": {
161
+ "const": "image-story"
162
+ }
163
+ },
164
+ "additionalProperties": false
165
+ }
@@ -0,0 +1,81 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/image-story.schema.json",
4
+ "title": "Image Story",
5
+ "type": "object",
6
+ "properties": {
7
+ "headline": {
8
+ "title": "Module Headline",
9
+ "description": "Headline for the module element",
10
+ "type": "string",
11
+ "examples": ["Headline"]
12
+ },
13
+ "largeHeadline": {
14
+ "type": "boolean",
15
+ "title": "Large Headline",
16
+ "description": "Make the headline larger",
17
+ "default": false
18
+ },
19
+ "sub": {
20
+ "title": "Module Subheadline",
21
+ "description": "Subheadline below the module headline",
22
+ "type": "string",
23
+ "examples": ["Subheadline"]
24
+ },
25
+ "text": {
26
+ "title": "Module Text",
27
+ "description": "Info text for the module element",
28
+ "type": "string"
29
+ },
30
+ "layout": {
31
+ "type": "string",
32
+ "title": "Layout",
33
+ "description": "Choose the layout for the component",
34
+ "enum": ["textLeft", "imageLeft"],
35
+ "default": "imageLeft"
36
+ },
37
+ "padding": {
38
+ "type": "boolean",
39
+ "title": "Padding",
40
+ "default": false,
41
+ "description": "Give the component padding"
42
+ },
43
+ "buttons": {
44
+ "$ref": "http://schema.mydesignsystem.com/button-group.schema.json#/properties/buttons"
45
+ },
46
+ "image": {
47
+ "title": "Image",
48
+ "description": "Image displayed alongside the text content",
49
+ "type": "object",
50
+ "properties": {
51
+ "src": {
52
+ "title": "Image source",
53
+ "description": "Image source to use",
54
+ "type": "string",
55
+ "format": "image"
56
+ },
57
+ "ratio": {
58
+ "title": "Image aspect ratio",
59
+ "description": "Select an aspect ratio to use for cropping and displaying the image",
60
+ "type": "string",
61
+ "enum": ["4:3", "3:2", "16:9", "1:1", "none"],
62
+ "default": "none"
63
+ },
64
+ "alt": {
65
+ "title": "Alt text",
66
+ "description": "Image description",
67
+ "type": "string"
68
+ }
69
+ },
70
+ "additionalProperties": false
71
+ },
72
+ "textAlign": {
73
+ "title": "Text Alignment",
74
+ "description": "Choose the alginment of the text",
75
+ "enum": ["left", "center"],
76
+ "type": "string",
77
+ "default": "left"
78
+ }
79
+ },
80
+ "additionalProperties": false
81
+ }
@@ -0,0 +1,4 @@
1
+ import { FC } from "react";
2
+ import { ImageStoryProps } from "../../ImageStoryProps-03ff6d21.js";
3
+ declare const ImageStory: FC<ImageStoryProps>;
4
+ export { ImageStory };
@@ -0,0 +1,39 @@
1
+ import "./image-story.css";
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { Storytelling } from '@kickstartds/content/lib/storytelling';
4
+ import { ButtonContext } from '@kickstartds/base/lib/button';
5
+ import classnames from 'classnames';
6
+ import { useButtonGroup } from '../button-group/index.js';
7
+ import 'react';
8
+ import '@kickstartds/base/lib/button-group';
9
+
10
+ const ImageStory = ({ headline, largeHeadline = false, sub, image, padding = false, textAlign = "left", layout = "textLeft", buttons = [], text, }) => {
11
+ const ButtonGroup = useButtonGroup();
12
+ return (jsx(ButtonContext.Provider
13
+ // @ts-expect-error
14
+ , {
15
+ // @ts-expect-error
16
+ value: ButtonGroup, children: jsx(Storytelling, { className: classnames("c-image-story"), full: padding === false ? true : false, image: {
17
+ source: image?.src,
18
+ order: {
19
+ desktopImageLast: layout === "imageLeft" ? false : true,
20
+ },
21
+ vAlign: "top",
22
+ }, box: {
23
+ text: text,
24
+ textAlign: textAlign,
25
+ vAlign: "top",
26
+ // @ts-expect-error
27
+ link: { buttons },
28
+ headline: {
29
+ text: headline,
30
+ level: "h2",
31
+ style: largeHeadline === true ? "h1" : undefined,
32
+ sub: sub,
33
+ spaceAfter: largeHeadline === true ? "large" : undefined,
34
+ align: textAlign,
35
+ },
36
+ } }) }));
37
+ };
38
+
39
+ export { ImageStory };
@@ -0,0 +1,4 @@
1
+ .c-image-text--highlight {
2
+ --c-rich-text--font: var(--ks-font-copy-l);
3
+ --c-rich-text--color: var(--ks-color-fg);
4
+ }