@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.
- package/README.md +96 -0
- package/dist/ButtonProps-03ff6d21.d.ts +41 -0
- package/dist/CtaProps-93230a76.d.ts +113 -0
- package/dist/FaqProps-ad618cd5.d.ts +35 -0
- package/dist/FeaturesProps-79dea880.d.ts +284 -0
- package/dist/GalleryProps-76e7de44.d.ts +331 -0
- package/dist/HeadlineProps-d413a2cc.d.ts +48 -0
- package/dist/HeroProps-cf82a16d.d.ts +104 -0
- package/dist/ImageStoryProps-03ff6d21.d.ts +70 -0
- package/dist/ImageTextProps-9286cca4.d.ts +38 -0
- package/dist/LogosProps-8af8b3c7.d.ts +929 -0
- package/dist/MosaicProps-aacb9422.d.ts +84 -0
- package/dist/SliderProps-69b2f1d7.d.ts +43 -0
- package/dist/SplitProps-89ef39c4.d.ts +9 -0
- package/dist/StatsProps-afa48599.d.ts +41 -0
- package/dist/TeaserCardProps-b52479e5.d.ts +49 -0
- package/dist/TestimonialsProps-d27ae4b4.d.ts +54 -0
- package/dist/TextProps-a23170d2.d.ts +31 -0
- package/dist/VideoCurtainProps-6c625a69.d.ts +82 -0
- package/dist/components/blog-aside/blog-aside.css +9 -0
- package/dist/components/blog-aside/blog-aside.schema.dereffed.json +130 -0
- package/dist/components/blog-aside/blog-aside.schema.json +99 -0
- package/dist/components/blog-aside/index.d.ts +76 -0
- package/dist/components/blog-aside/index.js +55 -0
- package/dist/components/blog-head/blog-head.css +3 -0
- package/dist/components/blog-head/blog-head.schema.dereffed.json +54 -0
- package/dist/components/blog-head/blog-head.schema.json +40 -0
- package/dist/components/blog-head/index.d.ts +34 -0
- package/dist/components/blog-head/index.js +11 -0
- package/dist/components/blog-teaser/blog-teaser.css +58 -0
- package/dist/components/blog-teaser/blog-teaser.schema.dereffed.json +135 -0
- package/dist/components/blog-teaser/blog-teaser.schema.json +102 -0
- package/dist/components/blog-teaser/index.d.ts +81 -0
- package/dist/components/blog-teaser/index.js +37 -0
- package/dist/components/button/button.css +67 -0
- package/dist/components/button/button.schema.dereffed.json +63 -0
- package/dist/components/button/button.schema.json +48 -0
- package/dist/components/button/index.d.ts +6 -0
- package/dist/components/button/index.js +18 -0
- package/dist/components/button-group/button-group.schema.dereffed.json +115 -0
- package/dist/components/button-group/button-group.schema.json +27 -0
- package/dist/components/button-group/index.d.ts +40 -0
- package/dist/components/button-group/index.js +30 -0
- package/dist/components/component-teaser/component-teaser.schema.dereffed.json +43 -0
- package/dist/components/component-teaser/component-teaser.schema.json +40 -0
- package/dist/components/cta/cta.css +100 -0
- package/dist/components/cta/cta.schema.dereffed.json +158 -0
- package/dist/components/cta/cta.schema.json +127 -0
- package/dist/components/cta/index.d.ts +4 -0
- package/dist/components/cta/index.js +40 -0
- package/dist/components/faq/faq.css +17 -0
- package/dist/components/faq/faq.schema.dereffed.json +48 -0
- package/dist/components/faq/faq.schema.json +36 -0
- package/dist/components/faq/index.d.ts +4 -0
- package/dist/components/faq/index.js +9 -0
- package/dist/components/feature/index.d.ts +49 -0
- package/dist/components/feature/index.js +23 -0
- package/dist/components/features/features.css +115 -0
- package/dist/components/features/features.schema.dereffed.json +121 -0
- package/dist/components/features/features.schema.json +93 -0
- package/dist/components/features/index.d.ts +4 -0
- package/dist/components/features/index.js +32 -0
- package/dist/components/footer/footer.css +53 -0
- package/dist/components/footer/footer.schema.dereffed.json +178 -0
- package/dist/components/footer/footer.schema.json +47 -0
- package/dist/components/footer/index.d.ts +22 -0
- package/dist/components/footer/index.js +11 -0
- package/dist/components/gallery/gallery.css +50 -0
- package/dist/components/gallery/gallery.schema.dereffed.json +84 -0
- package/dist/components/gallery/gallery.schema.json +62 -0
- package/dist/components/gallery/index.d.ts +4 -0
- package/dist/components/gallery/index.js +35 -0
- package/dist/components/header/header.css +78 -0
- package/dist/components/header/header.schema.dereffed.json +188 -0
- package/dist/components/header/header.schema.json +25 -0
- package/dist/components/header/index.d.ts +26 -0
- package/dist/components/header/index.js +16 -0
- package/dist/components/headline/headline.css +78 -0
- package/dist/components/headline/headline.schema.dereffed.json +86 -0
- package/dist/components/headline/headline.schema.json +60 -0
- package/dist/components/headline/index.d.ts +11 -0
- package/dist/components/headline/index.js +18 -0
- package/dist/components/hero/hero.css +95 -0
- package/dist/components/hero/hero.schema.dereffed.json +166 -0
- package/dist/components/hero/hero.schema.json +79 -0
- package/dist/components/hero/index.d.ts +4 -0
- package/dist/components/hero/index.js +55 -0
- package/dist/components/image/image.css +12 -0
- package/dist/components/image/image.schema.dereffed.json +105 -0
- package/dist/components/image/image.schema.json +95 -0
- package/dist/components/image/index.d.ts +87 -0
- package/dist/components/image/index.js +11 -0
- package/dist/components/image-story/image-story.css +26 -0
- package/dist/components/image-story/image-story.schema.dereffed.json +165 -0
- package/dist/components/image-story/image-story.schema.json +81 -0
- package/dist/components/image-story/index.d.ts +4 -0
- package/dist/components/image-story/index.js +39 -0
- package/dist/components/image-text/image-text.css +4 -0
- package/dist/components/image-text/image-text.schema.dereffed.json +68 -0
- package/dist/components/image-text/image-text.schema.json +46 -0
- package/dist/components/image-text/index.d.ts +5 -0
- package/dist/components/image-text/index.js +20 -0
- package/dist/components/logos/index.d.ts +4 -0
- package/dist/components/logos/index.js +12 -0
- package/dist/components/logos/logos.css +91 -0
- package/dist/components/logos/logos.schema.dereffed.json +131 -0
- package/dist/components/logos/logos.schema.json +106 -0
- package/dist/components/mosaic/index.d.ts +4 -0
- package/dist/components/mosaic/index.js +33 -0
- package/dist/components/mosaic/mosaic.css +35 -0
- package/dist/components/mosaic/mosaic.schema.dereffed.json +122 -0
- package/dist/components/mosaic/mosaic.schema.json +86 -0
- package/dist/components/nav-main/index.d.ts +26 -0
- package/dist/components/nav-main/index.js +17 -0
- package/dist/components/nav-main/js/NavToggle.client.d.ts +16 -0
- package/dist/components/nav-main/js/NavToggle.client.js +57 -0
- package/dist/components/nav-main/js/body.client.d.ts +5 -0
- package/dist/components/nav-main/js/body.client.js +41 -0
- package/dist/components/nav-main/js/navMainEvents.client.d.ts +5 -0
- package/dist/components/nav-main/js/navMainEvents.client.js +13 -0
- package/dist/components/nav-main/nav-main.css +170 -0
- package/dist/components/nav-main/nav-main.schema.dereffed.json +182 -0
- package/dist/components/nav-main/nav-main.schema.json +53 -0
- package/dist/components/nav-main/nav-toggle.css +85 -0
- package/dist/components/page/page.schema.dereffed.json +1945 -0
- package/dist/components/page/page.schema.json +58 -0
- package/dist/components/page-intro/index.d.ts +17 -0
- package/dist/components/page-intro/index.js +18 -0
- package/dist/components/page-intro/page-intro.css +8 -0
- package/dist/components/page-intro/page-intro.schema.dereffed.json +30 -0
- package/dist/components/page-intro/page-intro.schema.json +26 -0
- package/dist/components/page-wrapper/index.d.ts +2 -0
- package/dist/components/page-wrapper/index.js +28 -0
- package/dist/components/page-wrapper/tokens.css +1556 -0
- package/dist/components/picture/picture.schema.json +88 -0
- package/dist/components/providers/index.d.ts +6 -0
- package/dist/components/providers/index.js +38 -0
- package/dist/components/raw-page-wrapper/index.d.ts +3 -0
- package/dist/components/raw-page-wrapper/index.js +492 -0
- package/dist/components/section/index.d.ts +147 -0
- package/dist/components/section/index.js +48 -0
- package/dist/components/section/js/Section.client.d.ts +2 -0
- package/dist/components/section/js/Section.client.js +26 -0
- package/dist/components/section/js/spotlight.client.d.ts +2 -0
- package/dist/components/section/js/spotlight.client.js +14 -0
- package/dist/components/section/section.css +110 -0
- package/dist/components/section/section.schema.dereffed.json +1875 -0
- package/dist/components/section/section.schema.json +222 -0
- package/dist/components/slider/index.d.ts +4 -0
- package/dist/components/slider/index.js +7 -0
- package/dist/components/slider/slider.css +24 -0
- package/dist/components/slider/slider.schema.dereffed.json +54 -0
- package/dist/components/slider/slider.schema.json +30 -0
- package/dist/components/split/index.d.ts +4 -0
- package/dist/components/split/index.js +7 -0
- package/dist/components/split/split.css +24 -0
- package/dist/components/split/split.schema.dereffed.json +20 -0
- package/dist/components/split/split.schema.json +13 -0
- package/dist/components/stats/index.d.ts +4 -0
- package/dist/components/stats/index.js +11 -0
- package/dist/components/stats/stats.css +49 -0
- package/dist/components/stats/stats.schema.dereffed.json +71 -0
- package/dist/components/stats/stats.schema.json +49 -0
- package/dist/components/teaser-card/index.d.ts +6 -0
- package/dist/components/teaser-card/index.js +25 -0
- package/dist/components/teaser-card/teaser-card.css +98 -0
- package/dist/components/teaser-card/teaser-card.schema.dereffed.json +69 -0
- package/dist/components/teaser-card/teaser-card.schema.json +58 -0
- package/dist/components/teaser-component/component-teaser.css +33 -0
- package/dist/components/teaser-component/index.d.ts +41 -0
- package/dist/components/teaser-component/index.js +18 -0
- package/dist/components/testimonials/index.d.ts +9 -0
- package/dist/components/testimonials/index.js +22 -0
- package/dist/components/testimonials/testimonials.css +63 -0
- package/dist/components/testimonials/testimonials.schema.dereffed.json +93 -0
- package/dist/components/testimonials/testimonials.schema.json +71 -0
- package/dist/components/text/index.d.ts +4 -0
- package/dist/components/text/index.js +13 -0
- package/dist/components/text/text.css +15 -0
- package/dist/components/text/text.schema.dereffed.json +50 -0
- package/dist/components/text/text.schema.json +39 -0
- package/dist/components/video-curtain/index.d.ts +4 -0
- package/dist/components/video-curtain/index.js +47 -0
- package/dist/components/video-curtain/video-curtain.css +51 -0
- package/dist/components/video-curtain/video-curtain.schema.dereffed.json +123 -0
- package/dist/components/video-curtain/video-curtain.schema.json +67 -0
- package/dist/global-35f78d6d.js +1 -0
- package/dist/global.client.d.ts +2 -0
- package/dist/global.client.js +8 -0
- package/dist/global.css +564 -0
- package/dist/static/.gitkeep +0 -0
- package/dist/static/favicon/.gitkeep +0 -0
- package/dist/static/favicon/android-chrome-192x192.png +0 -0
- package/dist/static/favicon/android-chrome-512x512.png +0 -0
- package/dist/static/favicon/apple-touch-icon.png +0 -0
- package/dist/static/favicon/browserconfig.xml +9 -0
- package/dist/static/favicon/favicon-16x16.png +0 -0
- package/dist/static/favicon/favicon-192-192.png +20 -0
- package/dist/static/favicon/favicon-32x32.png +0 -0
- package/dist/static/favicon/favicon.ico +0 -0
- package/dist/static/favicon/mstile-144x144.png +0 -0
- package/dist/static/favicon/mstile-150x150.png +0 -0
- package/dist/static/favicon/mstile-310x150.png +0 -0
- package/dist/static/favicon/mstile-310x310.png +0 -0
- package/dist/static/favicon/mstile-70x70.png +0 -0
- package/dist/static/favicon/safari-pinned-tab.svg +30 -0
- package/dist/static/favicon/site.webmanifest +19 -0
- package/dist/static/fonts/dsa/Fredoka-Bold.woff +0 -0
- package/dist/static/fonts/dsa/Fredoka-Bold.woff2 +0 -0
- package/dist/static/fonts/dsa/Fredoka-Light.woff +0 -0
- package/dist/static/fonts/dsa/Fredoka-Light.woff2 +0 -0
- package/dist/static/fonts/dsa/Fredoka-Medium.woff +0 -0
- package/dist/static/fonts/dsa/Fredoka-Medium.woff2 +0 -0
- package/dist/static/fonts/dsa/Fredoka-Regular.woff +0 -0
- package/dist/static/fonts/dsa/Fredoka-Regular.woff2 +0 -0
- package/dist/static/fonts/dsa/Fredoka-SemiBold.woff +0 -0
- package/dist/static/fonts/dsa/Fredoka-SemiBold.woff2 +0 -0
- package/dist/static/fonts/dsa/Mulish-300.woff +0 -0
- package/dist/static/fonts/dsa/Mulish-300.woff2 +0 -0
- package/dist/static/fonts/dsa/Mulish-600.woff +0 -0
- package/dist/static/fonts/dsa/Mulish-600.woff2 +0 -0
- package/dist/static/fonts/dsa/Mulish-800.woff +0 -0
- package/dist/static/fonts/dsa/Mulish-800.woff2 +0 -0
- package/dist/static/fonts/dsa/Mulish-Regular.woff +0 -0
- package/dist/static/fonts/dsa/Mulish-Regular.woff2 +0 -0
- package/dist/static/fonts/google/google-sans-18pt.woff2 +0 -0
- package/dist/static/fonts/google/google-sans-display.woff2 +0 -0
- package/dist/static/fonts/google/google-sans-text-medium.woff2 +0 -0
- package/dist/static/fonts/google/google-sans-text.woff2 +0 -0
- package/dist/static/fonts/lughausen/novelpro-regular.woff +0 -0
- package/dist/static/fonts/lughausen/novelsanspro-bold.woff +0 -0
- package/dist/static/fonts/lughausen/novelsanspro-regular.woff +0 -0
- package/dist/static/fonts/telekom/teleneo-bold-woff-data.woff +0 -0
- package/dist/static/fonts/telekom/teleneo-extrabold-woff-data.woff +0 -0
- package/dist/static/fonts/telekom/teleneo-medium-woff-data.woff +0 -0
- package/dist/static/fonts/telekom/teleneo-thin-woff-data.woff +0 -0
- package/dist/static/img/02.jpg +0 -0
- package/dist/static/img/angled-image.png +0 -0
- package/dist/static/img/bg_dot-carpet-blue.svg +346 -0
- package/dist/static/img/close-up-young-business-team-working.png +0 -0
- package/dist/static/img/colleagues-work-office-using-computers-looking-aside.png +0 -0
- package/dist/static/img/colored-square.png +0 -0
- package/dist/static/img/contact-person.png +0 -0
- package/dist/static/img/full-shot-different-people-working-together.png +0 -0
- package/dist/static/img/grid-bg.svg +19 -0
- package/dist/static/img/logos/castaway.svg +111 -0
- package/dist/static/img/logos/logoipsum-212.svg +12 -0
- package/dist/static/img/logos/logoipsum-217.svg +4 -0
- package/dist/static/img/logos/logoipsum-239.svg +16 -0
- package/dist/static/img/logos/logoipsum-244.svg +19 -0
- package/dist/static/img/logos/logoipsum-250.svg +21 -0
- package/dist/static/img/logos/logoipsum-286.svg +20 -0
- package/dist/static/img/low-angle-tall-building-with-many-windows_23-2148230392.png +0 -0
- package/dist/static/img/mosaic-1.png +0 -0
- package/dist/static/img/mosaic-2.png +0 -0
- package/dist/static/img/mosaic-2_1.svg +34 -0
- package/dist/static/img/mosaic-2_2.svg +25 -0
- package/dist/static/img/mosaic-2_3.svg +32 -0
- package/dist/static/img/mosaic-3.png +0 -0
- package/dist/static/img/office-divider-image.png +0 -0
- package/dist/static/img/offset-image.png +0 -0
- package/dist/static/img/people/author-alex.png +0 -0
- package/dist/static/img/people/author-emily.png +0 -0
- package/dist/static/img/people/author-john.png +0 -0
- package/dist/static/img/people-brainstorming-work-meeting.png +0 -0
- package/dist/static/img/responsive_image-1680.png +0 -0
- package/dist/static/img/responsive_image-420.png +0 -0
- package/dist/static/img/responsive_image-980.png +0 -0
- package/dist/static/img/showcases/audio_bg.svg +10 -0
- package/dist/static/img/showcases/comp_audio01.jpg +0 -0
- package/dist/static/img/showcases/comp_audio04.png +0 -0
- package/dist/static/img/showcases/comp_eco01.jpg +0 -0
- package/dist/static/img/showcases/comp_eco01.png +0 -0
- package/dist/static/img/showcases/comp_eco02.png +0 -0
- package/dist/static/img/showcases/comp_eco03.png +0 -0
- package/dist/static/img/showcases/comp_eco04.jpg +0 -0
- package/dist/static/img/showcases/comp_eco04.png +0 -0
- package/dist/static/img/showcases/comp_tfe01.jpg +0 -0
- package/dist/static/img/showcases/eco_bg.png +0 -0
- package/dist/static/img/showcases/preview_audio.png +0 -0
- package/dist/static/img/showcases/preview_eco.png +0 -0
- package/dist/static/img/showcases/preview_tfe.png +0 -0
- package/dist/static/img/showcases/tfe_bg.svg +48 -0
- package/dist/static/img/top-view-desk-with-keyboard-drawing-pad.png +0 -0
- package/dist/static/img/videos/handshake-bw.mp4 +0 -0
- package/dist/static/img/videos/video-720.mp4 +0 -0
- package/dist/static/img/videos/video-agency.mp4 +0 -0
- package/dist/static/img/view-modern-office.jpg +0 -0
- package/dist/static/logo-google.svg +1 -0
- package/dist/static/logo-lughausen.svg +27 -0
- package/dist/static/logo-telekom.svg +8 -0
- package/dist/static/logo.svg +26 -0
- package/dist/static/tokens-google.css +1553 -0
- package/dist/static/tokens-lughausen.css +1549 -0
- package/dist/static/tokens-telekom.css +1549 -0
- package/dist/static/tokens.css +1554 -0
- package/dist/tokens/IconSprite.js +467 -0
- package/dist/tokens/icon-sprite.html +37 -0
- package/dist/tokens/tokens.css +1554 -0
- package/dist/tokens/tokens.js +652 -0
- package/package.json +138 -0
|
@@ -0,0 +1,147 @@
|
|
|
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
|
+
import { HeroProps } from "../../HeroProps-cf82a16d.js";
|
|
10
|
+
import { CtaProps } from "../../CtaProps-93230a76.js";
|
|
11
|
+
import { MosaicProps } from "../../MosaicProps-aacb9422.js";
|
|
12
|
+
import { FaqProps } from "../../FaqProps-ad618cd5.js";
|
|
13
|
+
import { FeaturesProps } from "../../FeaturesProps-79dea880.js";
|
|
14
|
+
import { GalleryProps } from "../../GalleryProps-76e7de44.js";
|
|
15
|
+
import { HeadlineProps } from "../../HeadlineProps-d413a2cc.js";
|
|
16
|
+
import { ImageStoryProps } from "../../ImageStoryProps-03ff6d21.js";
|
|
17
|
+
import { SplitProps } from "../../SplitProps-89ef39c4.js";
|
|
18
|
+
import { StatsProps } from "../../StatsProps-afa48599.js";
|
|
19
|
+
import { TeaserCardProps } from "../../TeaserCardProps-b52479e5.js";
|
|
20
|
+
import { TestimonialsProps } from "../../TestimonialsProps-d27ae4b4.js";
|
|
21
|
+
import { TextProps } from "../../TextProps-a23170d2.js";
|
|
22
|
+
import { VideoCurtainProps } from "../../VideoCurtainProps-6c625a69.js";
|
|
23
|
+
import { ImageTextProps } from "../../ImageTextProps-9286cca4.js";
|
|
24
|
+
import { LogosProps } from "../../LogosProps-8af8b3c7.js";
|
|
25
|
+
import { ButtonProps } from "../../ButtonProps-03ff6d21.js";
|
|
26
|
+
/**
|
|
27
|
+
* Width of section to use
|
|
28
|
+
*/
|
|
29
|
+
type Width = "full" | "max" | "wide" | "default" | "narrow";
|
|
30
|
+
/**
|
|
31
|
+
* Style of background
|
|
32
|
+
*/
|
|
33
|
+
type Style = "stagelights" | "horizontalGradient" | "verticalGradient" | "accentTransition" | "boldTransition" | "symmetricGlow" | "anchorGlow";
|
|
34
|
+
/**
|
|
35
|
+
* Color of background
|
|
36
|
+
*/
|
|
37
|
+
type Style1 = "default" | "accent" | "bold";
|
|
38
|
+
/**
|
|
39
|
+
* Show spotlight behind cursor
|
|
40
|
+
*/
|
|
41
|
+
type Spotlight = boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Amount of spacing before the section
|
|
44
|
+
*/
|
|
45
|
+
type SpaceBefore = "default" | "small" | "none";
|
|
46
|
+
/**
|
|
47
|
+
* Amount of spacing after the section
|
|
48
|
+
*/
|
|
49
|
+
type SpaceAfter = "default" | "small" | "none";
|
|
50
|
+
/**
|
|
51
|
+
* Whether to invert the section
|
|
52
|
+
*/
|
|
53
|
+
type Inverted = boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Reserve additional spacing for a floating header
|
|
56
|
+
*/
|
|
57
|
+
type HeaderSpacing = boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Headline Text for the section
|
|
60
|
+
*/
|
|
61
|
+
type Headline = string;
|
|
62
|
+
/**
|
|
63
|
+
* Make the headline larger
|
|
64
|
+
*/
|
|
65
|
+
type LargeHeadline = boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Width of headline to use
|
|
68
|
+
*/
|
|
69
|
+
type HeadlineWidth = "unset" | "narrow" | "default" | "wide";
|
|
70
|
+
/**
|
|
71
|
+
* Choose the text alignment for the headline
|
|
72
|
+
*/
|
|
73
|
+
type HeadlineTextAlignment = "left" | "center" | "right";
|
|
74
|
+
/**
|
|
75
|
+
* Choose an alignment for positioning the headline
|
|
76
|
+
*/
|
|
77
|
+
type HeadlineAlignment = "left" | "center" | "right";
|
|
78
|
+
/**
|
|
79
|
+
* Subheadline for the section
|
|
80
|
+
*/
|
|
81
|
+
type Subheadline = string;
|
|
82
|
+
/**
|
|
83
|
+
* Switch the order of headline and subheadline
|
|
84
|
+
*/
|
|
85
|
+
type SwitchHeadlineOrder = boolean;
|
|
86
|
+
/**
|
|
87
|
+
* Width of content to use
|
|
88
|
+
*/
|
|
89
|
+
type ContentWidth = "unset" | "narrow" | "default" | "wide";
|
|
90
|
+
/**
|
|
91
|
+
* Choose an alignment for the content
|
|
92
|
+
*/
|
|
93
|
+
type ContentAlignment = "left" | "center" | "right";
|
|
94
|
+
/**
|
|
95
|
+
* Size of gutter to use
|
|
96
|
+
*/
|
|
97
|
+
type Gutter = "large" | "default" | "small" | "none";
|
|
98
|
+
/**
|
|
99
|
+
* Layout mode used for section contents
|
|
100
|
+
*/
|
|
101
|
+
type Mode = "default" | "tile" | "list" | "slider";
|
|
102
|
+
/**
|
|
103
|
+
* Set min-width for the tiles in the grid
|
|
104
|
+
*/
|
|
105
|
+
type TileWidth = "control" | "card" | "narrow" | "medium" | "wide";
|
|
106
|
+
/**
|
|
107
|
+
* Allowed components for content
|
|
108
|
+
*/
|
|
109
|
+
type Content = (HeroProps | CtaProps | MosaicProps | FaqProps | FeaturesProps | GalleryProps | HeadlineProps | ImageStoryProps | SplitProps | StatsProps | TeaserCardProps | TestimonialsProps | TextProps | VideoCurtainProps | ImageTextProps | LogosProps)[];
|
|
110
|
+
/**
|
|
111
|
+
* Buttons of the Button Group
|
|
112
|
+
*/
|
|
113
|
+
type Buttons = ButtonProps[];
|
|
114
|
+
/**
|
|
115
|
+
* Component used to layout components into pages
|
|
116
|
+
*/
|
|
117
|
+
interface SectionProps {
|
|
118
|
+
width?: Width;
|
|
119
|
+
style?: Style;
|
|
120
|
+
backgroundColor?: Style1;
|
|
121
|
+
spotlight?: Spotlight;
|
|
122
|
+
spaceBefore?: SpaceBefore;
|
|
123
|
+
spaceAfter?: SpaceAfter;
|
|
124
|
+
inverted?: Inverted;
|
|
125
|
+
headerSpacing?: HeaderSpacing;
|
|
126
|
+
headline?: {
|
|
127
|
+
text?: Headline;
|
|
128
|
+
large?: LargeHeadline;
|
|
129
|
+
width?: HeadlineWidth;
|
|
130
|
+
textAlign?: HeadlineTextAlignment;
|
|
131
|
+
align?: HeadlineAlignment;
|
|
132
|
+
sub?: Subheadline;
|
|
133
|
+
switchOrder?: SwitchHeadlineOrder;
|
|
134
|
+
};
|
|
135
|
+
content?: {
|
|
136
|
+
width?: ContentWidth;
|
|
137
|
+
align?: ContentAlignment;
|
|
138
|
+
gutter?: Gutter;
|
|
139
|
+
mode?: Mode;
|
|
140
|
+
tileWidth?: TileWidth;
|
|
141
|
+
};
|
|
142
|
+
components?: Content;
|
|
143
|
+
buttons?: Buttons;
|
|
144
|
+
}
|
|
145
|
+
declare const Section: import("react").ForwardRefExoticComponent<SectionProps & Omit<HTMLAttributes<HTMLElement>, "style" | "content"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
146
|
+
declare const SectionProvider: FC<PropsWithChildren<any>>;
|
|
147
|
+
export { Section, SectionProvider };
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import "./section.css";
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
import classnames from 'classnames';
|
|
5
|
+
import { useKsComponent } from '@kickstartds/core/lib/react';
|
|
6
|
+
import { SectionContextDefault, SectionContext } from '@kickstartds/base/lib/section';
|
|
7
|
+
import { identifier } from './js/Section.client.js';
|
|
8
|
+
import '@kickstartds/core/lib/component';
|
|
9
|
+
|
|
10
|
+
const Section = forwardRef(({ headline, content, headerSpacing, width = "default", style = "default", spotlight = false, backgroundColor = "default", spaceBefore = "default", spaceAfter = "default", className, inverted, buttons = [], ...props }, ref) => {
|
|
11
|
+
const { large: headlineLarge = false, ...headlineRest } = {
|
|
12
|
+
align: "left",
|
|
13
|
+
...headline,
|
|
14
|
+
};
|
|
15
|
+
const componentProps = useKsComponent(identifier, ref, [
|
|
16
|
+
spotlight,
|
|
17
|
+
content?.mode === "slider",
|
|
18
|
+
]);
|
|
19
|
+
return (jsx(SectionContextDefault, { ...props, ...componentProps, className: classnames(style !== "default" &&
|
|
20
|
+
`l-section-style--${style === "verticalGradient"
|
|
21
|
+
? "vertical-gradient"
|
|
22
|
+
: style === "horizontalGradient"
|
|
23
|
+
? "horizontal-gradient"
|
|
24
|
+
: style === "accentTransition"
|
|
25
|
+
? "accent-transition"
|
|
26
|
+
: style === "boldTransition"
|
|
27
|
+
? "bold-transition"
|
|
28
|
+
: style === "symmetricGlow"
|
|
29
|
+
? "symmetric-glow"
|
|
30
|
+
: style === "anchorGlow"
|
|
31
|
+
? "anchor-glow"
|
|
32
|
+
: style}`, headerSpacing && "l-section--header-spacing", spotlight && "l-section--spotlight", content?.tileWidth && `l-section--tiles-${content?.tileWidth}`, className), background: backgroundColor, content: content, headline: {
|
|
33
|
+
...headlineRest,
|
|
34
|
+
spaceAfter: "large",
|
|
35
|
+
// @ts-expect-error
|
|
36
|
+
content: headlineRest.text,
|
|
37
|
+
level: "h2",
|
|
38
|
+
style: headlineLarge ? "h1" : "h2",
|
|
39
|
+
}, buttons: {
|
|
40
|
+
buttons,
|
|
41
|
+
// @ts-expect-error
|
|
42
|
+
items: buttons,
|
|
43
|
+
}, width: width, spaceBefore: spaceBefore, spaceAfter: spaceAfter, inverted: inverted, ref: ref, children: props.children }));
|
|
44
|
+
});
|
|
45
|
+
Section.displayName = "Section";
|
|
46
|
+
const SectionProvider = (props) => (jsx(SectionContext.Provider, { ...props, value: Section }));
|
|
47
|
+
|
|
48
|
+
export { Section, SectionProvider };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { define, Component } from '@kickstartds/core/lib/component';
|
|
2
|
+
|
|
3
|
+
const identifier = "dsa.section";
|
|
4
|
+
class Section extends Component {
|
|
5
|
+
constructor(element) {
|
|
6
|
+
super(element);
|
|
7
|
+
if (element.classList.contains("l-section--spotlight")) {
|
|
8
|
+
import('./spotlight.client.js').then((mod) => {
|
|
9
|
+
const cleanup = mod.initSpotlight(element);
|
|
10
|
+
this.onDisconnect(cleanup);
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
const sliderContainer = element.querySelector(".l-section__slider");
|
|
14
|
+
if (sliderContainer) {
|
|
15
|
+
import('@kickstartds/base/lib/section/Section')
|
|
16
|
+
.then((mod) => mod.getSectionSlider())
|
|
17
|
+
.then((initSectionSlider) => {
|
|
18
|
+
const cleanup = initSectionSlider(sliderContainer);
|
|
19
|
+
this.onDisconnect(cleanup);
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
define(identifier, Section);
|
|
25
|
+
|
|
26
|
+
export { identifier };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
function onMousemove(event) {
|
|
2
|
+
this.style.setProperty("--l-section--spotlight-top", `${event.clientY - this.getBoundingClientRect().top}px`);
|
|
3
|
+
this.style.setProperty("--l-section--spotlight-left", `${event.clientX - this.getBoundingClientRect().left}px`);
|
|
4
|
+
}
|
|
5
|
+
const initSpotlight = (element) => {
|
|
6
|
+
element.addEventListener("mousemove", onMousemove, { passive: true });
|
|
7
|
+
return () => {
|
|
8
|
+
element.style.removeProperty("--l-section--spotlight-top");
|
|
9
|
+
element.style.removeProperty("--l-section--spotlight-left");
|
|
10
|
+
element.removeEventListener("mousemove", onMousemove, { passive: true });
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export { initSpotlight };
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
.l-section {
|
|
2
|
+
--l-section--background-color: var(--ks-background-color-default);
|
|
3
|
+
--l-section--tile-width-control: 14rem;
|
|
4
|
+
--l-section--tile-width-card: 20rem;
|
|
5
|
+
--l-section--tile-width-narrow: var(--l-section--content-width-narrow);
|
|
6
|
+
--l-section--tile-width-medium: var(--l-section--content-width-default);
|
|
7
|
+
--l-section--tile-width-wide: var(--l-section--content-width-wide);
|
|
8
|
+
--l-section_slider-arrow--color: var(--ks-text-color-interface-interactive);
|
|
9
|
+
}
|
|
10
|
+
.l-section--accent {
|
|
11
|
+
--l-section--background-color: var(--ks-background-color-accent);
|
|
12
|
+
}
|
|
13
|
+
.l-section--bold {
|
|
14
|
+
--l-section--background-color: var(--ks-background-color-bold);
|
|
15
|
+
}
|
|
16
|
+
.l-section-style--stagelights {
|
|
17
|
+
--l-section--background-image: radial-gradient(
|
|
18
|
+
50% 150% at 100% -50%,
|
|
19
|
+
var(--ks-color-primary-inverted-alpha-3) 0%,
|
|
20
|
+
transparent 100%
|
|
21
|
+
),
|
|
22
|
+
radial-gradient(50% 150% at 0% -50%, var(--ks-color-primary-alpha-3) 0%, transparent 100%);
|
|
23
|
+
}
|
|
24
|
+
.l-section-style--anchor-glow {
|
|
25
|
+
--l-section--background-image: radial-gradient(
|
|
26
|
+
50% 50% at 50% 100%,
|
|
27
|
+
var(--ks-color-secondary-alpha-5) 0%,
|
|
28
|
+
transparent 100%
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
.l-section-style--symmetric-glow {
|
|
32
|
+
--l-section--background-image: radial-gradient(
|
|
33
|
+
20% 50% at 100% 50%,
|
|
34
|
+
var(--ks-color-primary-alpha-5) 0%,
|
|
35
|
+
transparent 100%
|
|
36
|
+
),
|
|
37
|
+
radial-gradient(20% 50% at 0% 50%, var(--ks-color-primary-inverted-alpha-5) 0%, transparent 100%);
|
|
38
|
+
}
|
|
39
|
+
.l-section-style--accent-transition {
|
|
40
|
+
--l-section--background-image: linear-gradient(180deg, transparent 0%, var(--ks-background-color-accent) 100%);
|
|
41
|
+
}
|
|
42
|
+
.l-section-style--bold-transition {
|
|
43
|
+
--l-section--background-image: linear-gradient(180deg, transparent 0%, var(--ks-background-color-bold) 100%);
|
|
44
|
+
}
|
|
45
|
+
.l-section-style--vertical-gradient {
|
|
46
|
+
--l-section--background-image: linear-gradient(
|
|
47
|
+
0deg,
|
|
48
|
+
var(--ks-color-primary-alpha-5) 0%,
|
|
49
|
+
var(--ks-color-secondary-alpha-5) 100%
|
|
50
|
+
);
|
|
51
|
+
}
|
|
52
|
+
.l-section-style--horizontal-gradient {
|
|
53
|
+
--l-section--background-image: linear-gradient(
|
|
54
|
+
90deg,
|
|
55
|
+
var(--ks-color-primary-alpha-5) 0%,
|
|
56
|
+
var(--ks-color-secondary-alpha-5) 100%
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
.l-section--spotlight {
|
|
60
|
+
--l-section--spotlight-left: 0;
|
|
61
|
+
--l-section--spotlight-top: 0;
|
|
62
|
+
--l-section--spotlight-color: var(--ks-color-primary-alpha-5);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
:root .l-section {
|
|
66
|
+
background-image: var(--l-section--background-image);
|
|
67
|
+
background-color: var(--l-section--background-color);
|
|
68
|
+
position: relative;
|
|
69
|
+
}
|
|
70
|
+
:root .l-section--header-spacing {
|
|
71
|
+
padding-top: calc(var(--g-header-height) + var(--l-section--space-default));
|
|
72
|
+
}
|
|
73
|
+
:root .l-section--header-spacing.l-section--space-before-none {
|
|
74
|
+
padding-top: var(--g-header-height);
|
|
75
|
+
}
|
|
76
|
+
:root .l-section--header-spacing.l-section--space-before-small {
|
|
77
|
+
padding-top: calc(var(--g-header-height) + var(--l-section--space-small));
|
|
78
|
+
}
|
|
79
|
+
:root .l-section--tiles-control .l-section__content {
|
|
80
|
+
--l-section_col--min-width: var(--l-section--tile-width-control);
|
|
81
|
+
}
|
|
82
|
+
:root .l-section--tiles-card .l-section__content {
|
|
83
|
+
--l-section_col--min-width: var(--l-section--tile-width-card);
|
|
84
|
+
}
|
|
85
|
+
:root .l-section--tiles-narrow .l-section__content {
|
|
86
|
+
--l-section_col--min-width: var(--l-section--tile-width-narrow);
|
|
87
|
+
}
|
|
88
|
+
:root .l-section--tiles-medium .l-section__content {
|
|
89
|
+
--l-section_col--min-width: var(--l-section--tile-width-medium);
|
|
90
|
+
}
|
|
91
|
+
:root .l-section--tiles-wide .l-section__content {
|
|
92
|
+
--l-section_col--min-width: var(--l-section--tile-width-wide);
|
|
93
|
+
}
|
|
94
|
+
:root .l-section--spotlight {
|
|
95
|
+
position: relative;
|
|
96
|
+
}
|
|
97
|
+
:root .l-section--spotlight:hover::before {
|
|
98
|
+
opacity: 1;
|
|
99
|
+
}
|
|
100
|
+
:root .l-section--spotlight::before {
|
|
101
|
+
transition: opacity var(--ks-transition-fade);
|
|
102
|
+
opacity: 0;
|
|
103
|
+
top: 0;
|
|
104
|
+
left: 0;
|
|
105
|
+
content: "";
|
|
106
|
+
width: 100%;
|
|
107
|
+
height: 100%;
|
|
108
|
+
position: absolute;
|
|
109
|
+
background-image: radial-gradient(650px circle at var(--l-section--spotlight-left) var(--l-section--spotlight-top), var(--l-section--spotlight-color), transparent 80%);
|
|
110
|
+
}
|