@kickstartds/ds-agency-premium 1.2.10--canary.171.76273d8.0 → 1.2.10--canary.178.33c3c92.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/dist/BlogAsideProps-e1cbd5d3.d.ts +74 -0
  2. package/dist/BlogHeadProps-f9a49428.d.ts +31 -0
  3. package/dist/BlogTeaserProps-525f7f9f.d.ts +79 -0
  4. package/dist/FeatureProps-f8a75850.d.ts +52 -0
  5. package/dist/FeaturesProps-b05859d6.d.ts +34 -0
  6. package/dist/SeoProps-f2d6dcaa.d.ts +36 -0
  7. package/dist/{TeaserCardProps-3fce7be4.d.ts → TeaserCardProps-b9c28e78.d.ts} +1 -1
  8. package/dist/components/blog-aside/blog-aside.css +33 -5
  9. package/dist/components/blog-aside/blog-aside.schema.dereffed.json +5 -3
  10. package/dist/components/blog-aside/blog-aside.schema.json +5 -3
  11. package/dist/components/blog-aside/index.d.ts +6 -76
  12. package/dist/components/blog-aside/index.js +17 -10
  13. package/dist/components/blog-head/blog-head.css +22 -2
  14. package/dist/components/blog-head/blog-head.schema.dereffed.json +2 -1
  15. package/dist/components/blog-head/blog-head.schema.json +2 -1
  16. package/dist/components/blog-head/index.d.ts +6 -34
  17. package/dist/components/blog-head/index.js +10 -4
  18. package/dist/components/blog-overview/blog-overview.schema.dereffed.json +18 -0
  19. package/dist/components/blog-overview/index.d.ts +39 -0
  20. package/dist/components/blog-overview/index.js +17 -0
  21. package/dist/components/blog-post/blog-post.schema.dereffed.json +7 -4
  22. package/dist/components/blog-post/index.d.ts +39 -0
  23. package/dist/components/blog-post/index.js +24 -0
  24. package/dist/components/blog-teaser/blog-teaser.css +49 -25
  25. package/dist/components/blog-teaser/blog-teaser.schema.dereffed.json +6 -0
  26. package/dist/components/blog-teaser/blog-teaser.schema.json +6 -0
  27. package/dist/components/blog-teaser/index.d.ts +6 -81
  28. package/dist/components/blog-teaser/index.js +25 -16
  29. package/dist/components/button/button.css +109 -59
  30. package/dist/components/button/index.js +2 -1
  31. package/dist/components/cta/cta.css +1 -1
  32. package/dist/components/faq/faq.css +27 -14
  33. package/dist/components/faq/faq.schema.dereffed.json +2 -0
  34. package/dist/components/faq/faq.schema.json +2 -0
  35. package/dist/components/faq/index.d.ts +6 -3
  36. package/dist/components/faq/index.js +8 -4
  37. package/dist/components/feature/feature.css +99 -0
  38. package/dist/components/feature/feature.schema.dereffed.json +91 -0
  39. package/dist/components/feature/feature.schema.json +67 -0
  40. package/dist/components/feature/index.d.ts +7 -49
  41. package/dist/components/feature/index.js +19 -15
  42. package/dist/components/features/features.css +7 -93
  43. package/dist/components/features/features.schema.dereffed.json +36 -2
  44. package/dist/components/features/features.schema.json +3 -47
  45. package/dist/components/features/index.d.ts +7 -4
  46. package/dist/components/features/index.js +13 -20
  47. package/dist/components/footer/footer.css +21 -17
  48. package/dist/components/footer/footer.schema.dereffed.json +4 -83
  49. package/dist/components/footer/footer.schema.json +33 -2
  50. package/dist/components/footer/index.d.ts +23 -5
  51. package/dist/components/footer/index.js +1 -1
  52. package/dist/components/gallery/gallery.css +31 -23
  53. package/dist/components/gallery/gallery.schema.dereffed.json +2 -0
  54. package/dist/components/gallery/gallery.schema.json +2 -0
  55. package/dist/components/gallery/index.d.ts +6 -3
  56. package/dist/components/gallery/index.js +11 -6
  57. package/dist/components/header/header.css +19 -43
  58. package/dist/components/header/header.schema.dereffed.json +18 -93
  59. package/dist/components/header/header.schema.json +31 -1
  60. package/dist/components/header/index.d.ts +24 -5
  61. package/dist/components/header/index.js +1 -1
  62. package/dist/components/headline/headline.css +76 -46
  63. package/dist/components/headline/index.d.ts +1 -1
  64. package/dist/components/headline/index.js +1 -1
  65. package/dist/components/hero/hero.css +30 -16
  66. package/dist/components/image/image.css +12 -6
  67. package/dist/components/image/image.schema.dereffed.json +4 -4
  68. package/dist/components/image/image.schema.json +4 -4
  69. package/dist/components/image/index.d.ts +7 -7
  70. package/dist/components/image-text/image-text.css +14 -3
  71. package/dist/components/image-text/image-text.schema.dereffed.json +2 -0
  72. package/dist/components/image-text/image-text.schema.json +2 -0
  73. package/dist/components/image-text/index.d.ts +7 -4
  74. package/dist/components/image-text/index.js +19 -13
  75. package/dist/components/logo/index.d.ts +27 -0
  76. package/dist/components/logo/index.js +12 -0
  77. package/dist/components/logo/logo.schema.dereffed.json +38 -0
  78. package/dist/components/logo/logo.schema.json +31 -0
  79. package/dist/components/mosaic/mosaic.css +2 -2
  80. package/dist/components/nav-main/index.d.ts +2 -0
  81. package/dist/components/nav-main/index.js +3 -2
  82. package/dist/components/nav-main/nav-main.css +67 -64
  83. package/dist/components/nav-main/nav-main.schema.dereffed.json +17 -11
  84. package/dist/components/nav-main/nav-main.schema.json +15 -12
  85. package/dist/components/nav-main/nav-toggle.css +12 -7
  86. package/dist/components/page/page.schema.dereffed.json +46 -5
  87. package/dist/components/page/page.schema.json +1 -1
  88. package/dist/components/page-wrapper/index.d.ts +2 -3
  89. package/dist/components/page-wrapper/index.js +7 -472
  90. package/dist/components/page-wrapper/tokens.css +1 -1
  91. package/dist/components/providers/index.js +1 -1
  92. package/dist/components/raw-page-wrapper/index.d.ts +3 -0
  93. package/dist/components/raw-page-wrapper/index.js +492 -0
  94. package/dist/components/section/index.d.ts +2 -2
  95. package/dist/components/section/section.schema.dereffed.json +45 -4
  96. package/dist/components/settings/settings.schema.dereffed.json +22 -176
  97. package/dist/components/stat/index.d.ts +32 -0
  98. package/dist/components/stat/index.js +11 -0
  99. package/dist/components/stat/stat.schema.dereffed.json +64 -0
  100. package/dist/components/stat/stat.schema.json +48 -0
  101. package/dist/components/teaser-card/index.d.ts +4 -2
  102. package/dist/components/teaser-card/index.js +16 -13
  103. package/dist/components/teaser-card/teaser-card.css +68 -40
  104. package/dist/components/teaser-card/teaser-card.schema.dereffed.json +2 -2
  105. package/dist/components/teaser-card/teaser-card.schema.json +2 -2
  106. package/dist/components/testimonial/index.d.ts +44 -0
  107. package/dist/components/testimonial/index.js +19 -0
  108. package/dist/components/testimonial/testimonial.schema.dereffed.json +60 -0
  109. package/dist/components/testimonial/testimonial.schema.json +46 -0
  110. package/dist/components/text/index.d.ts +6 -3
  111. package/dist/components/text/index.js +10 -4
  112. package/dist/components/text/text.css +19 -9
  113. package/dist/components/text/text.schema.dereffed.json +1 -0
  114. package/dist/components/text/text.schema.json +1 -0
  115. package/dist/components/video-curtain/video-curtain.css +1 -1
  116. package/dist/global.css +238 -88
  117. package/dist/static/tokens-business.css +1 -1
  118. package/dist/static/tokens-google.css +1 -1
  119. package/dist/static/tokens-ngo.css +1 -1
  120. package/dist/static/tokens-telekom.css +1 -1
  121. package/dist/static/tokens.css +1 -1
  122. package/dist/tokens/tokens.css +1 -1
  123. package/dist/tokens/tokens.js +1 -1
  124. package/package.json +1 -1
  125. package/dist/FeaturesProps-32f5bc0d.d.ts +0 -284
  126. /package/dist/static/fonts/{lughausen → business}/novelpro-regular.woff +0 -0
  127. /package/dist/static/fonts/{lughausen → business}/novelsanspro-bold.woff +0 -0
  128. /package/dist/static/fonts/{lughausen → business}/novelsanspro-regular.woff +0 -0
  129. /package/dist/static/{logo-lughausen.svg → logo-business.svg} +0 -0
@@ -1,66 +1,116 @@
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);
1
+ .dsa-button {
2
+ --dsa-button--border-radius: var(--ks-border-radius-pill);
3
+ --dsa-button--padding: 0.75em 2em;
4
+ --dsa-button--font-weight: var(--ks-font-weight-semi-bold);
5
+ --dsa-button_primary--color: var(--dsa-text-color-on-primary);
6
+ --dsa-button_primary--color_hover: var(--dsa-text-color-on-primary);
7
+ --dsa-button_primary--color_active: var(--dsa-text-color-on-primary);
8
+ --dsa-button_primary--background-color: var(--ks-background-color-primary-interactive);
9
+ --dsa-button_primary--background-color_hover: var(--ks-background-color-primary-interactive-hover);
10
+ --dsa-button_primary_inverted--color: var(--ks-color-fg-inverted-alpha-2);
11
+ --dsa-button_primary_inverted--color_hover: var(--ks-color-fg-inverted);
12
+ --dsa-button_primary_inverted--color_active: var(--ks-color-fg-inverted);
13
+ --dsa-button_secondary--color: var(--ks-text-color-default);
14
+ --dsa-button_secondary--color_hover: var(--ks-text-color-default);
15
+ --dsa-button_secondary--color_active: var(--ks-text-color-default);
16
+ --dsa-button_secondary--border-color: transparent;
17
+ --dsa-button_secondary--border-color_hover: transparent;
18
+ --dsa-button_secondary--border-color_active: transparent;
19
+ --dsa-button_secondary--border-width: 2px;
20
+ --dsa-button_secondary--background-color: var(--ks-background-color-interface-interactive);
21
+ --dsa-button_secondary--background-color_hover: var(--ks-background-color-interface-interactive-hover);
22
+ --dsa-button_secondary--background-color_active: var(--ks-background-color-interface-interactive-active);
23
+ --dsa-button_terciary--color: var(--ks-text-color-default);
24
+ --dsa-button_terciary--color_hover: var(--ks-text-color-default);
25
+ --dsa-button_terciary--color_active: var(--ks-text-color-default);
26
+ --dsa-button_terciary--border-color: var(--ks-border-color-interface-interactive);
27
+ --dsa-button_terciary--border-color_hover: var(--ks-border-color-interface-interactive-hover);
28
+ --dsa-button_terciary--border-color_active: var(--ks-border-color-interface-interactive-active);
29
+ --dsa-button_terciary--background-color_hover: transparent;
30
+ --dsa-button_terciary--background-color_active: transparent;
6
31
  }
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: 0;
15
- --c-button--shadow-hover: 0;
16
- }
17
- [ks-inverted=true] a.c-button--solid,
18
- [ks-inverted=true] button.c-button--solid {
19
- --c-button--color: var(--ks-color-fg-inverted-alpha-2);
20
- --c-button--color-hover: var(--ks-color-fg-inverted);
21
- --c-button--color-active: var(--ks-color-fg-inverted);
22
- }
23
- a.c-button--clear,
24
- button.c-button--clear {
25
- --c-button--color: var(--ks-color-fg-alpha-2);
26
- --c-button--color-hover: var(--ks-color-fg);
27
- --c-button--color-active: var(--ks-color-fg);
28
- --c-button--border-color: transparent;
29
- --c-button--border-color-hover: transparent;
30
- --c-button--border-color-active: transparent;
31
- --c-button--border-width: 2px;
32
- --c-button--background-color: var(--ks-color-fg-alpha-8);
33
- --c-button--background-color-hover: var(--ks-color-fg-alpha-7);
34
- --c-button--background-color-active: var(--ks-color-fg-alpha-7);
35
- padding: var(--c-button--padding);
32
+
33
+ .dsa-button.c-button {
34
+ --c-button--border-radius: var(--dsa-button--border-radius, var(--ks-border-radius-control));
35
+ --c-button--padding: var(--dsa-button--padding, 0.75em 2em);
36
+ --c-button--font-weight: var(--dsa-button--font-weight, var(--ks-font-weight-semi-bold));
37
+ --c-button--border-width: var(--dsa-button--border-width, var(--ks-border-width-default));
38
+ transition-property: box-shadow, transform, background-color, color, border;
36
39
  }
37
- a.c-button--outline,
38
- button.c-button--outline {
39
- --c-button--color: var(--ks-color-fg-alpha-2);
40
- --c-button--color-hover: var(--ks-color-fg);
41
- --c-button--color-active: var(--ks-color-fg);
42
- --c-button--border-color: var(--ks-color-fg-alpha-6);
43
- --c-button--border-color-hover: var(--ks-color-fg);
44
- --c-button--border-color-active: var(--ks-color-fg);
45
- --c-button--background-color-hover: transparent;
46
- --c-button--background-color-active: transparent;
40
+ .dsa-button.c-button.c-button--solid {
41
+ --c-button--color: var(--dsa-button_primary--color, var(--dsa-text-color-on-primary));
42
+ --c-button--color-hover: var(--dsa-button_primary--color_hover, var(--dsa-text-color-on-primary));
43
+ --c-button--color-active: var(--dsa-button_primary--color_active, var(--dsa-text-color-on-primary));
44
+ --c-button--border-color: var(--dsa-button_primary--border-color, none);
45
+ --c-button--border-color-hover: var(--dsa-button_primary--border-color_hover, none);
46
+ --c-button--border-color-active: var(--dsa-button_primary--border-color_active, none);
47
+ --c-button--border-color-selected: var(--dsa-button_primary--border-color_selected, none);
48
+ --c-button--background-color: var(
49
+ --dsa-button_primary--background-color,
50
+ var(--ks-background-color-primary-interactive)
51
+ );
52
+ --c-button--background-color-hover: var(
53
+ --dsa-button_primary--background-color_hover,
54
+ var(--ks-background-color-primary-interactive-hover)
55
+ );
56
+ --c-button--background-color-active: var(
57
+ --dsa-button_primary--background-color_active,
58
+ var(--ks-background-color-primary-interactive-active)
59
+ );
60
+ --c-button--background-color-selected: var(
61
+ --dsa-button_primary--background-color_selected,
62
+ var(--ks-background-color-primary-interactive-selected)
63
+ );
47
64
  }
48
-
49
- [ks-inverted=true] .c-button--primary,
50
- [ks-inverted=true].c-button--primary {
51
- --c-button--shadow: 0px 0px 2px 1px var(--ks-color-primary-alpha-3-base),
52
- 0px 0px 13px 0px var(--ks-color-primary-alpha-5-base);
53
- --c-button--shadow-hover: 0px 0px 2px 1px var(--ks-color-primary-alpha-4-base),
54
- 0px 0px 13px 0px var(--ks-color-primary-alpha-3-base);
65
+ .dsa-button.c-button.c-button--clear {
66
+ padding: var(--dsa-button--padding);
67
+ --c-button--color: var(--dsa-button_secondary--color, var(--ks-text-color-default));
68
+ --c-button--color-hover: var(--dsa-button_secondary--color_hover, var(--ks-text-color-default));
69
+ --c-button--color-active: var(--dsa-button_secondary--color_active, var(--ks-text-color-default));
70
+ --c-button--border-color: var(--dsa-button_secondary--border-color, none);
71
+ --c-button--border-color-hover: var(--dsa-button_secondary--border-color_hover, none);
72
+ --c-button--border-color-active: var(--dsa-button_secondary--border-color_active, none);
73
+ --c-button--border-color-selected: var(--dsa-button_secondary--border-color_selected, none);
74
+ --c-button--background-color: var(
75
+ --dsa-button_secondary--background-color,
76
+ var(--ks-background-color-clear-interactive)
77
+ );
78
+ --c-button--background-color-hover: var(
79
+ --dsa-button_secondary--background-color_hover,
80
+ var(--ks-background-color-clear-interactive-hover)
81
+ );
82
+ --c-button--background-color-active: var(
83
+ --dsa-button_secondary--background-color_active,
84
+ var(--ks-background-color-clear-interactive-active)
85
+ );
86
+ --c-button--background-color-selected: var(
87
+ --dsa-button_secondary--background-color_selected,
88
+ var(--ks-background-color-clear-interactive-selected) ;
89
+ );
55
90
  }
56
-
57
- .c-button {
58
- box-shadow: var(--c-button--shadow);
59
- transition-property: box-shadow, transform, background-color, color, border;
91
+ .dsa-button.c-button.c-button--outline {
92
+ padding: var(--dsa-button--padding);
93
+ --c-button--color: var(--dsa-button_terciary--color, var(--ks-text-color-default));
94
+ --c-button--color-hover: var(--dsa-button_terciary--color_hover, var(--ks-text-color-default));
95
+ --c-button--color-active: var(--dsa-button_terciary--color_active, var(--ks-text-color-default));
96
+ --c-button--border-color: var(--dsa-button_terciary--border-color, var(--ks-border-color-interface-interactive));
97
+ --c-button--border-color-hover: var(
98
+ --dsa-button_terciary--border-color_hover,
99
+ var(--ks-border-color-interface-interactive-hover)
100
+ );
101
+ --c-button--border-color-active: var(
102
+ --dsa-button_terciary--border-color_active,
103
+ var(--ks-border-color-interface-interactive-active)
104
+ );
105
+ --c-button--border-color-selected: var(
106
+ --dsa-button_terciary--border-color-selected,
107
+ var(--ks-border-color-interface-interactive_selected)
108
+ );
109
+ --c-button--background-color: var(--dsa-button_terciary--background-color, none);
110
+ --c-button--background-color-hover: var(--dsa-button_terciary--background-color_hover, none);
111
+ --c-button--background-color-active: var(--dsa-button_terciary--background-color_active, none);
112
+ --c-button--background-color-selected: var(--dsa-button_terciary--background-color_selected, none);
60
113
  }
61
- .c-button:disabled {
114
+ .dsa-button.c-button:disabled {
62
115
  pointer-events: none;
63
- }
64
- .c-button:hover {
65
- box-shadow: var(--c-button--shadow-hover);
66
116
  }
@@ -1,9 +1,10 @@
1
1
  import "./button.css";
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import { forwardRef } from 'react';
4
+ import classnames from 'classnames';
4
5
  import { ButtonContextDefault, ButtonContext } from '@kickstartds/base/lib/button';
5
6
 
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
+ const Button = forwardRef(({ label, target, size = "medium", variant = "secondary", icon, disabled = false, className, ...props }, ref) => (jsx(ButtonContextDefault, { ...props, className: classnames("dsa-button", className), href: target, label: label, size: size, variant: variant === "primary"
7
8
  ? "solid"
8
9
  : variant === "secondary"
9
10
  ? "clear"
@@ -28,7 +28,7 @@
28
28
  .c-storytelling.c-cta--color-neutral.c-storytelling {
29
29
  --c-rich-text--color: var(--c-storytelling--text-color-neutral);
30
30
  }
31
- .c-storytelling.c-cta--color-neutral.c-storytelling .c-headline__subheadline {
31
+ .c-storytelling.c-cta--color-neutral.c-storytelling .dsa-headline__subheadline {
32
32
  --c-headline_subheadline--color: var(--c-storytelling--text-color-neutral);
33
33
  }
34
34
  .c-storytelling.c-cta.c-storytelling--full {
@@ -1,17 +1,30 @@
1
- .c-collapsible-box {
2
- --c-collapsible-box-summary--color: var(--g-headline--color);
3
- --c-collapsible-box-summary--font-weight: var(--g-headline--font-weight);
4
- --c-collapsible-box-summary--font: var(--ks-font-copy-l);
5
- --c-collapsible-box-icon--color: var(--ks-text-color-default);
6
- --c-collapsible-box_header--padding: 1em 0;
7
- --c-collapsible-box_content--padding: 0em 0em 1em 0em;
1
+ .c-faq {
2
+ --c-faq--border-color: var(--ks-border-color-accent);
3
+ --c-faq__summary--color: var(--dsa-topic--color);
4
+ --c-faq__summary--font-weight: var(--dsa-topic--font-weight);
5
+ --c-faq__summary--font: var(--dsa-topic--font);
6
+ --c-faq__summary--font-family: var(--dsa-topic--font-family);
7
+ --c-faq__answer--color: var(--dsa-headline--color);
8
+ --c-faq__answer--font: var(--dsa-topic-font);
9
+ --c-faq__icon--color: var(--ks-text-color-primary-interactive);
10
+ --c-faq_header--padding: 1em 0;
11
+ --c-faq_content--padding: 0em 0em 1em 0em;
8
12
  }
9
- .c-collapsible-box__header__text {
10
- color: var(--c-collapsible-box-summary--color);
11
- font: var(--c-collapsible-box-summary--font);
12
- font-weight: var(--c-collapsible-box-summary--font-weight);
13
- font-family: var(--ks-font-family-display);
13
+
14
+ .c-faq .c-collapsible-box {
15
+ --c-collapsible-box-summary--color: var(--c-faq__summary--color, var(--dsa-topic--color));
16
+ --c-collapsible-box-summary--font-weight: var(--c-faq__summary--font-weight), var(--dsa-topic--font-weight);
17
+ --c-collapsible-box-summary--font: var(--c-faq__summary--font, var(--dsa-topic--font));
18
+ --c-collapsible-box-icon--color: var(--c-faq-icon--color, var(--ks-text-color-primary));
19
+ --c-collapsible-box_header--padding: var(--c-faq_header--padding, 1em 0);
20
+ --c-collapsible-box_content--padding: var(--c-faq_content--padding, 0em 0em 1em 0em);
21
+ --c-collapsible-box--border-color: var(--c-faq--border-color, var(--ks-border-color-accent));
14
22
  }
15
- .c-collapsible-box__header__icon {
16
- color: var(--c-collapsible-box-icon--color);
23
+ .c-faq .c-collapsible-box__header__text {
24
+ color: var(--dsa-faq__summary--color, var(--dsa-topic--color));
25
+ font: var(--dsa-faq__summary--font, var(--dsa-topic--font));
26
+ font-weight: var(--dsa-faq__summary--font-weight, var(--dsa-topic--font-weight));
27
+ }
28
+ .c-faq .c-collapsible-box__header__icon {
29
+ color: var(--c-collapsible-box-icon--color, var(--ks-text-color-primary-interactive));
17
30
  }
@@ -14,6 +14,7 @@
14
14
  "properties": {
15
15
  "question": {
16
16
  "type": "string",
17
+ "format": "markdown",
17
18
  "title": "Question",
18
19
  "description": "The question",
19
20
  "examples": [
@@ -22,6 +23,7 @@
22
23
  },
23
24
  "answer": {
24
25
  "type": "string",
26
+ "format": "markdown",
25
27
  "title": "Answer",
26
28
  "description": "The answer to the question",
27
29
  "examples": [
@@ -14,12 +14,14 @@
14
14
  "properties": {
15
15
  "question": {
16
16
  "type": "string",
17
+ "format": "markdown",
17
18
  "title": "Question",
18
19
  "description": "The question",
19
20
  "examples": ["What is the product made of?"]
20
21
  },
21
22
  "answer": {
22
23
  "type": "string",
24
+ "format": "markdown",
23
25
  "title": "Answer",
24
26
  "description": "The answer to the question",
25
27
  "examples": ["The product is made of high-quality materials"]
@@ -1,4 +1,7 @@
1
- import { HTMLAttributes, FC } from "react";
1
+ /// <reference types="react" />
2
+ import { HTMLAttributes } from "react";
2
3
  import { FaqProps } from "../../FaqProps-ad618cd5.js";
3
- declare const Faq: FC<FaqProps & HTMLAttributes<HTMLElement>>;
4
- export { Faq };
4
+ declare const FaqContextDefault: import("react").ForwardRefExoticComponent<FaqProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
5
+ declare const FaqContext: import("react").Context<import("react").ForwardRefExoticComponent<FaqProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>>;
6
+ declare const Faq: import("react").ForwardRefExoticComponent<FaqProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
7
+ export { FaqContextDefault, FaqContext, Faq };
@@ -1,9 +1,13 @@
1
1
  import "./faq.css";
2
2
  import { jsx } from 'react/jsx-runtime';
3
+ import { forwardRef, createContext, useContext } from 'react';
3
4
  import { CollapsibleBox } from '@kickstartds/base/lib/collapsible-box';
4
5
 
5
- const Faq = ({ questions, }) => {
6
- return (jsx("div", { className: `c-faq`, children: questions.map((question, index) => (jsx(CollapsibleBox, { summary: question.question, text: question.answer }, index))) }));
7
- };
6
+ const FaqContextDefault = forwardRef(({ questions, ...rest }, ref) => (jsx("div", { ...rest, ref: ref, className: `c-faq`, children: questions.map((question, index) => (jsx(CollapsibleBox, { summary: question.question, text: question.answer }, index))) })));
7
+ const FaqContext = createContext(FaqContextDefault);
8
+ const Faq = forwardRef((props, ref) => {
9
+ const Component = useContext(FaqContext);
10
+ return jsx(Component, { ...props, ref: ref });
11
+ });
8
12
 
9
- export { Faq };
13
+ export { Faq, FaqContext, FaqContextDefault };
@@ -0,0 +1,99 @@
1
+ .c-feature {
2
+ --dsa-feature__title--color: var(--dsa-topic--color);
3
+ --dsa-feature__title--font: var(--ks-font-interface-m);
4
+ --dsa-feature__title--font-family: var(--dsa-topic--font-family);
5
+ --dsa-feature__copy--color: var(--dsa-rich-text--color);
6
+ --dsa-feature__copy--font: var(--ks-font-copy-s);
7
+ --dsa-feature__link-font: var(--ks-font-copy-s);
8
+ --dsa-feature__icon--color: var(--ks-text-color-primary);
9
+ --dsa-feature_small__icon--size: calc(var(--ks-line-height-interface-m) * var(--ks-font-size-interface-m));
10
+ --dsa-feature_large__icon--size: calc(var(--ks-font-size-copy-m) * 2.5);
11
+ --dsa-feature_small--gap: var(--ks-spacing-stack-xs);
12
+ --dsa-feature_large--gap: var(--ks-spacing-stack-s);
13
+ --dsa-feature_small__icon--gap: var(--ks-spacing-xs);
14
+ --dsa-feature_large__icon--gap: var(--ks-spacing-s);
15
+ }
16
+
17
+ .c-feature {
18
+ display: flex;
19
+ position: relative;
20
+ flex-direction: column;
21
+ gap: var(--dsa-feature--gap);
22
+ }
23
+ .c-feature--large {
24
+ --dsa-feature__icon--size: var(--dsa-feature_large__icon--size, calc(var(--ks-font-size-copy-m) * 2.5));
25
+ --dsa-feature__icon--gap: var(--dsa-feature_large__icon--gap, var(--ks-spacing-xs));
26
+ --dsa-feature--gap: var(--dsa-feature_large--gap, var(--ks-spacing-stack-s));
27
+ }
28
+ .c-feature--small {
29
+ --dsa-feature__icon--size: var(
30
+ --dsa-feature_small__icon--size,
31
+ calc(var(--ks-line-height-interface-m) * var(--ks-font-size-interface-m))
32
+ );
33
+ --dsa-feature__icon--gap: var(--dsa-feature_small__icon--gap, var(--ks-spacing-xs));
34
+ --dsa-feature--gap: var(--dsa-feature_small--gap, var(--ks-spacing-stack-xs));
35
+ }
36
+ .c-feature--beside {
37
+ padding-left: calc(var(--dsa-feature__icon--size) + var(--dsa-feature__icon--gap));
38
+ }
39
+ .c-feature--beside .c-feature__icon {
40
+ position: absolute;
41
+ top: 0;
42
+ left: 0;
43
+ }
44
+ .c-feature--stack .c-feature__header {
45
+ display: flex;
46
+ flex-direction: column;
47
+ align-items: flex-start;
48
+ }
49
+ .c-feature--centered .c-feature__header {
50
+ display: flex;
51
+ flex-direction: column;
52
+ align-items: center;
53
+ }
54
+ .c-feature--centered .c-feature__title,
55
+ .c-feature--centered .c-feature__text {
56
+ text-align: center;
57
+ }
58
+ .c-feature--centered .c-feature__cta {
59
+ display: flex;
60
+ justify-content: center;
61
+ }
62
+ .c-feature__header {
63
+ display: flex;
64
+ align-items: center;
65
+ gap: var(--dsa-feature__icon--gap);
66
+ }
67
+ .c-feature__title {
68
+ font: var(--dsa-feature__title--font, var(--ks-font-interface-m));
69
+ color: var(--dsa-feature__title--color, var(--ks-topic-color));
70
+ font-family: var(--dsa-feature__title--font-family, var(--ks-font-family-display));
71
+ font-weight: var(--dsa-feature__title--font-weight, var(--ks-font-weight-semi-bold));
72
+ }
73
+ .c-feature__text {
74
+ color: var(--dsa-feature__copy--color, var(--dsa-rich-text-color), var(--ks-text-color-default));
75
+ font: var(--dsa-feature__copy--font, var(--ks-font-copy-s));
76
+ margin: 0;
77
+ }
78
+ .c-feature__icon {
79
+ color: var(--dsa-feature__icon--color, var(--ks-text-color-primary));
80
+ width: var(--dsa-feature__icon--size);
81
+ height: var(--dsa-feature__icon--size);
82
+ }
83
+ .c-feature__cta {
84
+ margin-top: auto;
85
+ }
86
+ .c-feature__link {
87
+ font: var(--dsa-feature__link-font, var(--ks-font-copy-s));
88
+ display: flex;
89
+ align-items: center;
90
+ gap: var(--ks-spacing-xxs);
91
+ width: fit-content;
92
+ }
93
+ .c-feature__link .icon {
94
+ width: 1.125em;
95
+ height: 1.125em;
96
+ }
97
+ .c-feature__button {
98
+ margin-top: calc(var(--dsa-feature--gap) * 0.5);
99
+ }
@@ -0,0 +1,91 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/feature.schema.json",
4
+ "title": "Feature",
5
+ "description": "Partial Component used to display a feature",
6
+ "type": "object",
7
+ "properties": {
8
+ "icon": {
9
+ "type": "string",
10
+ "title": "Icon",
11
+ "description": "The icon for the feature",
12
+ "examples": [
13
+ "person"
14
+ ]
15
+ },
16
+ "title": {
17
+ "type": "string",
18
+ "title": "Title",
19
+ "description": "The title of the feature",
20
+ "examples": [
21
+ "Feature 1"
22
+ ]
23
+ },
24
+ "text": {
25
+ "type": "string",
26
+ "title": "Text",
27
+ "description": "The description of the feature",
28
+ "examples": [
29
+ "This is a feature"
30
+ ]
31
+ },
32
+ "style": {
33
+ "type": "string",
34
+ "enum": [
35
+ "intext",
36
+ "stack",
37
+ "centered",
38
+ "besideLarge",
39
+ "besideSmall"
40
+ ],
41
+ "default": "stack"
42
+ },
43
+ "cta": {
44
+ "type": "object",
45
+ "title": "Call to Action",
46
+ "description": "The call to action",
47
+ "properties": {
48
+ "target": {
49
+ "type": "string",
50
+ "title": "Call to Action target",
51
+ "description": "The CTA target",
52
+ "default": "#",
53
+ "format": "uri"
54
+ },
55
+ "label": {
56
+ "type": "string",
57
+ "title": "Link Label",
58
+ "description": "The text label displayed on the link",
59
+ "default": "See more",
60
+ "examples": [
61
+ "See all our partners"
62
+ ]
63
+ },
64
+ "toggle": {
65
+ "type": "boolean",
66
+ "title": "Call to Action Toggle",
67
+ "description": "Activate/disable the CTAs",
68
+ "default": true
69
+ },
70
+ "style": {
71
+ "type": "string",
72
+ "description": "Choose the style of the CTA",
73
+ "enum": [
74
+ "button",
75
+ "link",
76
+ "intext"
77
+ ],
78
+ "default": "link"
79
+ }
80
+ },
81
+ "additionalProperties": false
82
+ },
83
+ "type": {
84
+ "const": "feature"
85
+ }
86
+ },
87
+ "additionalProperties": false,
88
+ "required": [
89
+ "title"
90
+ ]
91
+ }
@@ -0,0 +1,67 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "http://schema.mydesignsystem.com/feature.schema.json",
4
+ "title": "Feature",
5
+ "description": "Partial Component used to display a feature",
6
+ "type": "object",
7
+ "properties": {
8
+ "icon": {
9
+ "type": "string",
10
+ "title": "Icon",
11
+ "description": "The icon for the feature",
12
+ "examples": ["person"]
13
+ },
14
+ "title": {
15
+ "type": "string",
16
+ "title": "Title",
17
+ "description": "The title of the feature",
18
+ "examples": ["Feature 1"]
19
+ },
20
+ "text": {
21
+ "type": "string",
22
+ "title": "Text",
23
+ "description": "The description of the feature",
24
+ "examples": ["This is a feature"]
25
+ },
26
+ "style": {
27
+ "type": "string",
28
+ "enum": ["intext", "stack", "centered", "besideLarge", "besideSmall"],
29
+ "default": "stack"
30
+ },
31
+ "cta": {
32
+ "type": "object",
33
+ "title": "Call to Action",
34
+ "description": "The call to action",
35
+ "properties": {
36
+ "target": {
37
+ "type": "string",
38
+ "title": "Call to Action target",
39
+ "description": "The CTA target",
40
+ "default": "#",
41
+ "format": "uri"
42
+ },
43
+ "label": {
44
+ "type": "string",
45
+ "title": "Link Label",
46
+ "description": "The text label displayed on the link",
47
+ "default": "See more",
48
+ "examples": ["See all our partners"]
49
+ },
50
+ "toggle": {
51
+ "type": "boolean",
52
+ "title": "Call to Action Toggle",
53
+ "description": "Activate/disable the CTAs",
54
+ "default": true
55
+ },
56
+ "style": {
57
+ "type": "string",
58
+ "description": "Choose the style of the CTA",
59
+ "enum": ["button", "link", "intext"],
60
+ "default": "link"
61
+ }
62
+ }
63
+ }
64
+ },
65
+ "additionalProperties": false,
66
+ "required": ["title"]
67
+ }
@@ -1,49 +1,7 @@
1
- import { HTMLAttributes, FC } from "react";
2
- /* eslint-disable */
3
- /**
4
- * This file was automatically generated by json-schema-to-typescript.
5
- * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
6
- * and run json-schema-to-typescript to regenerate this file.
7
- */
8
- /**
9
- * The icon for the feature
10
- */
11
- type Icon = string;
12
- /**
13
- * The title of the feature
14
- */
15
- type Title = string;
16
- /**
17
- * The description of the feature
18
- */
19
- type Text = string;
20
- /**
21
- * The CTA target
22
- */
23
- type CallToActionTarget = string;
24
- /**
25
- * The text label displayed on the link
26
- */
27
- type LinkLabel = string;
28
- /**
29
- * Activate/disable the CTAs
30
- */
31
- type CallToActionToggle = boolean;
32
- /**
33
- * Partial Component used to display a feature
34
- */
35
- interface FeatureProps {
36
- icon?: Icon;
37
- title: Title;
38
- text?: Text;
39
- style?: "intext" | "stack" | "centered" | "besideLarge" | "besideSmall";
40
- ctaTarget?: CallToActionTarget;
41
- ctaLabel?: LinkLabel;
42
- ctaToggle?: CallToActionToggle;
43
- /**
44
- * Choose the style of the CTA
45
- */
46
- ctaStyle?: "button" | "link" | "intext";
47
- }
48
- declare const Feature: FC<FeatureProps & HTMLAttributes<HTMLElement>>;
49
- export { Feature };
1
+ /// <reference types="react" />
2
+ import { HTMLAttributes } from "react";
3
+ import { FeatureProps } from "../../FeatureProps-f8a75850.js";
4
+ declare const FeatureContextDefault: import("react").ForwardRefExoticComponent<FeatureProps & Omit<HTMLAttributes<HTMLDivElement>, "style"> & import("react").RefAttributes<HTMLDivElement>>;
5
+ declare const FeatureContext: import("react").Context<import("react").ForwardRefExoticComponent<FeatureProps & Omit<HTMLAttributes<HTMLDivElement>, "style"> & import("react").RefAttributes<HTMLDivElement>>>;
6
+ declare const Feature: import("react").ForwardRefExoticComponent<FeatureProps & Omit<HTMLAttributes<HTMLDivElement>, "style"> & import("react").RefAttributes<HTMLDivElement>>;
7
+ export { FeatureContextDefault, FeatureContext, Feature };