@kickstartds/ds-agency-premium 1.2.18 → 1.2.19
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/dist/{SectionProps-83d399b4.d.ts → SectionProps-93230a76.d.ts} +2 -2
- package/dist/{TestimonialsProps-4b94faa8.d.ts → TestimonialProps-94bdeac9.d.ts} +5 -16
- package/dist/TestimonialsProps-72bb9288.d.ts +22 -0
- package/dist/components/blog-overview/index.d.ts +1 -1
- package/dist/components/blog-post/index.d.ts +1 -1
- package/dist/components/feature/index.js +0 -1
- package/dist/components/features/features.css +98 -0
- package/dist/components/image-story/index.d.ts +1 -1
- package/dist/components/index/index.d.ts +3 -3
- package/dist/components/page/page.schema.dereffed.json +12 -6
- package/dist/components/page-wrapper/tokens.css +1 -1
- package/dist/components/presets.json +25 -181
- package/dist/components/section/index.d.ts +1 -1
- package/dist/components/section/section.schema.dereffed.json +12 -6
- package/dist/components/testimonial/index.d.ts +13 -41
- package/dist/components/testimonial/index.js +4 -11
- package/dist/components/testimonial/testimonial.schema.dereffed.json +7 -0
- package/dist/components/testimonial/testimonial.schema.json +7 -0
- package/dist/components/testimonials/index.d.ts +1 -1
- package/dist/components/testimonials/index.js +6 -7
- package/dist/components/testimonials/testimonials.schema.dereffed.json +12 -6
- package/dist/components/testimonials/testimonials.schema.json +3 -48
- package/dist/global.css +1 -1
- package/dist/static/tokens-business.css +1 -1
- package/dist/static/tokens-google.css +1 -1
- package/dist/static/tokens-ngo.css +1 -1
- package/dist/static/tokens-telekom.css +1 -1
- package/dist/static/tokens.css +1 -1
- package/dist/tokens/tokens.css +1 -1
- package/dist/tokens/tokens.js +1 -1
- package/package.json +2 -1
- package/dist/components/feature/feature.css +0 -99
- /package/dist/{BlogOverviewProps-525f7f9f.d.ts → BlogOverviewProps-f385fc47.d.ts} +0 -0
- /package/dist/{BlogPostProps-e1cbd5d3.d.ts → BlogPostProps-0910f130.d.ts} +0 -0
- /package/dist/{ImageStoryProps-03ff6d21.d.ts → ImageStoryProps-24e0335c.d.ts} +0 -0
|
@@ -8,14 +8,14 @@ import { FaqProps } from "./FaqProps-ad618cd5.js";
|
|
|
8
8
|
import { FeaturesProps } from "./FeaturesProps-b05859d6.js";
|
|
9
9
|
import { GalleryProps } from "./GalleryProps-76e7de44.js";
|
|
10
10
|
import { HeroProps } from "./HeroProps-cf82a16d.js";
|
|
11
|
-
import { ImageStoryProps } from "./ImageStoryProps-
|
|
11
|
+
import { ImageStoryProps } from "./ImageStoryProps-24e0335c.js";
|
|
12
12
|
import { ImageTextProps } from "./ImageTextProps-9286cca4.js";
|
|
13
13
|
import { LogosProps } from "./LogosProps-a8efd101.js";
|
|
14
14
|
import { MosaicProps } from "./MosaicProps-aacb9422.js";
|
|
15
15
|
import { SliderProps } from "./SliderProps-8cae490d.js";
|
|
16
16
|
import { StatsProps } from "./StatsProps-17b0743a.js";
|
|
17
17
|
import { TeaserCardProps } from "./TeaserCardProps-b9c28e78.js";
|
|
18
|
-
import { TestimonialsProps } from "./TestimonialsProps-
|
|
18
|
+
import { TestimonialsProps } from "./TestimonialsProps-72bb9288.js";
|
|
19
19
|
import { TextProps } from "./TextProps-a23170d2.js";
|
|
20
20
|
import { VideoCurtainProps } from "./VideoCurtainProps-6c625a69.js";
|
|
21
21
|
import { ButtonProps } from "./ButtonProps-03ff6d21.js";
|
|
@@ -6,11 +6,7 @@
|
|
|
6
6
|
/**
|
|
7
7
|
* The testimonial quote
|
|
8
8
|
*/
|
|
9
|
-
type Quote =
|
|
10
|
-
/**
|
|
11
|
-
* The testimonial quote
|
|
12
|
-
*/
|
|
13
|
-
type Quote1 = string;
|
|
9
|
+
type Quote = string;
|
|
14
10
|
/**
|
|
15
11
|
* The name of the quote author
|
|
16
12
|
*/
|
|
@@ -32,10 +28,10 @@ type AltText = string;
|
|
|
32
28
|
*/
|
|
33
29
|
type Rating = number;
|
|
34
30
|
/**
|
|
35
|
-
*
|
|
31
|
+
* Testimonial entry of Testimonials component
|
|
36
32
|
*/
|
|
37
|
-
|
|
38
|
-
quote:
|
|
33
|
+
interface TestimonialProps {
|
|
34
|
+
quote: Quote;
|
|
39
35
|
name: Name;
|
|
40
36
|
title?: Title;
|
|
41
37
|
image: {
|
|
@@ -43,12 +39,5 @@ type Items = {
|
|
|
43
39
|
alt?: AltText;
|
|
44
40
|
};
|
|
45
41
|
rating?: Rating;
|
|
46
|
-
}[];
|
|
47
|
-
/**
|
|
48
|
-
* Display testimonials with an optional image and rating
|
|
49
|
-
*/
|
|
50
|
-
interface TestimonialsProps {
|
|
51
|
-
layout?: Quote;
|
|
52
|
-
items?: Items;
|
|
53
42
|
}
|
|
54
|
-
export { Quote,
|
|
43
|
+
export { Quote, Name, Title, Source, AltText, Rating, TestimonialProps };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file was automatically generated by json-schema-to-typescript.
|
|
3
|
+
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
4
|
+
* and run json-schema-to-typescript to regenerate this file.
|
|
5
|
+
*/
|
|
6
|
+
import { TestimonialProps } from "./TestimonialProps-94bdeac9.js";
|
|
7
|
+
/**
|
|
8
|
+
* The testimonial quote
|
|
9
|
+
*/
|
|
10
|
+
type Quote = "slider" | "list" | "alternating";
|
|
11
|
+
/**
|
|
12
|
+
* Add testimonials featuring an image, a quote, a source and a rating
|
|
13
|
+
*/
|
|
14
|
+
type Testimonials = TestimonialProps[];
|
|
15
|
+
/**
|
|
16
|
+
* Display testimonials with an optional image and rating
|
|
17
|
+
*/
|
|
18
|
+
interface TestimonialsProps {
|
|
19
|
+
layout?: Quote;
|
|
20
|
+
testimonial?: Testimonials;
|
|
21
|
+
}
|
|
22
|
+
export { Quote, Testimonials, TestimonialsProps };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { BlogOverviewProps } from "../../BlogOverviewProps-
|
|
2
|
+
import { BlogOverviewProps } from "../../BlogOverviewProps-f385fc47.js";
|
|
3
3
|
declare const BlogOverview: ({ latest, more, }: BlogOverviewProps) => import("react/jsx-runtime").JSX.Element;
|
|
4
4
|
export { BlogOverview };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { BlogPostProps } from "../../BlogPostProps-
|
|
2
|
+
import { BlogPostProps } from "../../BlogPostProps-0910f130.js";
|
|
3
3
|
declare const BlogPost: ({ head, content, aside, cta }: BlogPostProps) => import("react/jsx-runtime").JSX.Element;
|
|
4
4
|
export { BlogPost };
|
|
@@ -1,6 +1,21 @@
|
|
|
1
1
|
.c-features {
|
|
2
2
|
--dsa-features--gap-vertical: var(--ks-spacing-stack-l);
|
|
3
3
|
--dsa-features--gap-horizontal: var(--ks-spacing-inline-m);
|
|
4
|
+
--dsa-feature__title--color: var(--dsa-topic--color);
|
|
5
|
+
--dsa-feature__title--font: var(--ks-font-interface-m);
|
|
6
|
+
--dsa-feature__title--font-family: var(--dsa-topic--font-family);
|
|
7
|
+
--dsa-feature__copy--color: var(--dsa-rich-text--color);
|
|
8
|
+
--dsa-feature__copy--font: var(--ks-font-copy-s);
|
|
9
|
+
--dsa-feature__link-font: var(--ks-font-copy-s);
|
|
10
|
+
--dsa-feature__icon--color: var(--ks-text-color-primary);
|
|
11
|
+
--dsa-feature_small__icon--size: calc(
|
|
12
|
+
var(--ks-line-height-interface-m) * var(--ks-font-size-interface-m)
|
|
13
|
+
);
|
|
14
|
+
--dsa-feature_large__icon--size: calc(var(--ks-font-size-copy-m) * 2.5);
|
|
15
|
+
--dsa-feature_small--gap: var(--ks-spacing-stack-xs);
|
|
16
|
+
--dsa-feature_large--gap: var(--ks-spacing-stack-s);
|
|
17
|
+
--dsa-feature_small__icon--gap: var(--ks-spacing-xs);
|
|
18
|
+
--dsa-feature_large__icon--gap: var(--ks-spacing-s);
|
|
4
19
|
}
|
|
5
20
|
|
|
6
21
|
.c-features {
|
|
@@ -26,4 +41,87 @@
|
|
|
26
41
|
}
|
|
27
42
|
.l-section--align-center .c-features--small-tiles {
|
|
28
43
|
justify-content: center;
|
|
44
|
+
}
|
|
45
|
+
.c-features .c-feature {
|
|
46
|
+
display: flex;
|
|
47
|
+
position: relative;
|
|
48
|
+
flex-direction: column;
|
|
49
|
+
gap: var(--dsa-feature--gap);
|
|
50
|
+
}
|
|
51
|
+
.c-features .c-feature--large {
|
|
52
|
+
--dsa-feature__icon--size: var(--dsa-feature_large__icon--size, calc(var(--ks-font-size-copy-m) * 2.5));
|
|
53
|
+
--dsa-feature__icon--gap: var(--dsa-feature_large__icon--gap, var(--ks-spacing-xs));
|
|
54
|
+
--dsa-feature--gap: var(--dsa-feature_large--gap, var(--ks-spacing-stack-s));
|
|
55
|
+
}
|
|
56
|
+
.c-features .c-feature--small {
|
|
57
|
+
--dsa-feature__icon--size: var(
|
|
58
|
+
--dsa-feature_small__icon--size,
|
|
59
|
+
calc(var(--ks-line-height-interface-m) * var(--ks-font-size-interface-m))
|
|
60
|
+
);
|
|
61
|
+
--dsa-feature__icon--gap: var(--dsa-feature_small__icon--gap, var(--ks-spacing-xs));
|
|
62
|
+
--dsa-feature--gap: var(--dsa-feature_small--gap, var(--ks-spacing-stack-xs));
|
|
63
|
+
}
|
|
64
|
+
.c-features .c-feature--beside {
|
|
65
|
+
padding-left: calc(var(--dsa-feature__icon--size) + var(--dsa-feature__icon--gap));
|
|
66
|
+
}
|
|
67
|
+
.c-features .c-feature--beside .c-feature__icon {
|
|
68
|
+
position: absolute;
|
|
69
|
+
top: 0;
|
|
70
|
+
left: 0;
|
|
71
|
+
}
|
|
72
|
+
.c-features .c-feature--stack .c-feature__header {
|
|
73
|
+
display: flex;
|
|
74
|
+
flex-direction: column;
|
|
75
|
+
align-items: flex-start;
|
|
76
|
+
}
|
|
77
|
+
.c-features .c-feature--centered .c-feature__header {
|
|
78
|
+
display: flex;
|
|
79
|
+
flex-direction: column;
|
|
80
|
+
align-items: center;
|
|
81
|
+
}
|
|
82
|
+
.c-features .c-feature--centered .c-feature__title,
|
|
83
|
+
.c-features .c-feature--centered .c-feature__text {
|
|
84
|
+
text-align: center;
|
|
85
|
+
}
|
|
86
|
+
.c-features .c-feature--centered .c-feature__cta {
|
|
87
|
+
display: flex;
|
|
88
|
+
justify-content: center;
|
|
89
|
+
}
|
|
90
|
+
.c-features .c-feature__header {
|
|
91
|
+
display: flex;
|
|
92
|
+
align-items: center;
|
|
93
|
+
gap: var(--dsa-feature__icon--gap);
|
|
94
|
+
}
|
|
95
|
+
.c-features .c-feature__title {
|
|
96
|
+
font: var(--dsa-feature__title--font, var(--ks-font-interface-m));
|
|
97
|
+
color: var(--dsa-feature__title--color, var(--ks-topic-color));
|
|
98
|
+
font-family: var(--dsa-feature__title--font-family, var(--ks-font-family-display));
|
|
99
|
+
font-weight: var(--dsa-feature__title--font-weight, var(--ks-font-weight-semi-bold));
|
|
100
|
+
}
|
|
101
|
+
.c-features .c-feature__text {
|
|
102
|
+
color: var(--dsa-feature__copy--color, var(--dsa-rich-text-color), var(--ks-text-color-default));
|
|
103
|
+
font: var(--dsa-feature__copy--font, var(--ks-font-copy-s));
|
|
104
|
+
margin: 0;
|
|
105
|
+
}
|
|
106
|
+
.c-features .c-feature__icon {
|
|
107
|
+
color: var(--dsa-feature__icon--color, var(--ks-text-color-primary));
|
|
108
|
+
width: var(--dsa-feature__icon--size);
|
|
109
|
+
height: var(--dsa-feature__icon--size);
|
|
110
|
+
}
|
|
111
|
+
.c-features .c-feature__cta {
|
|
112
|
+
margin-top: auto;
|
|
113
|
+
}
|
|
114
|
+
.c-features .c-feature__link {
|
|
115
|
+
font: var(--dsa-feature__link-font, var(--ks-font-copy-s));
|
|
116
|
+
display: flex;
|
|
117
|
+
align-items: center;
|
|
118
|
+
gap: var(--ks-spacing-xxs);
|
|
119
|
+
width: fit-content;
|
|
120
|
+
}
|
|
121
|
+
.c-features .c-feature__link .icon {
|
|
122
|
+
width: 1.125em;
|
|
123
|
+
height: 1.125em;
|
|
124
|
+
}
|
|
125
|
+
.c-features .c-feature__button {
|
|
126
|
+
margin-top: calc(var(--dsa-feature--gap) * 0.5);
|
|
29
127
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
5
5
|
* and run json-schema-to-typescript to regenerate this file.
|
|
6
6
|
*/
|
|
7
|
-
import { SectionProps } from "../../SectionProps-
|
|
7
|
+
import { SectionProps } from "../../SectionProps-93230a76.js";
|
|
8
8
|
import { SeoProps } from "../../SeoProps-f2d6dcaa.js";
|
|
9
9
|
/* eslint-disable */
|
|
10
10
|
/**
|
|
@@ -45,6 +45,6 @@ interface SettingsProps {
|
|
|
45
45
|
*/
|
|
46
46
|
seo: SeoProps;
|
|
47
47
|
}
|
|
48
|
-
export * from "../../BlogPostProps-
|
|
49
|
-
export * from "../../BlogOverviewProps-
|
|
48
|
+
export * from "../../BlogPostProps-0910f130.js";
|
|
49
|
+
export * from "../../BlogOverviewProps-f385fc47.js";
|
|
50
50
|
export { Sections, PageProps, SettingsProps };
|
|
@@ -1575,17 +1575,22 @@
|
|
|
1575
1575
|
],
|
|
1576
1576
|
"default": "slider"
|
|
1577
1577
|
},
|
|
1578
|
-
"
|
|
1578
|
+
"testimonial": {
|
|
1579
1579
|
"type": "array",
|
|
1580
|
-
"title": "
|
|
1580
|
+
"title": "Testimonials",
|
|
1581
1581
|
"description": "Add testimonials featuring an image, a quote, a source and a rating",
|
|
1582
1582
|
"items": {
|
|
1583
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
1584
|
+
"$id": "http://schema.mydesignsystem.com/testimonial.schema.json",
|
|
1585
|
+
"title": "Testimonial",
|
|
1586
|
+
"description": "Testimonial entry of Testimonials component",
|
|
1583
1587
|
"type": "object",
|
|
1584
1588
|
"properties": {
|
|
1585
1589
|
"quote": {
|
|
1586
1590
|
"title": "Quote",
|
|
1587
1591
|
"description": "The testimonial quote",
|
|
1588
1592
|
"type": "string",
|
|
1593
|
+
"format": "markdown",
|
|
1589
1594
|
"examples": [
|
|
1590
1595
|
"This product is amazing!"
|
|
1591
1596
|
]
|
|
@@ -1601,10 +1606,7 @@
|
|
|
1601
1606
|
"title": {
|
|
1602
1607
|
"title": "Title",
|
|
1603
1608
|
"description": "The title of the quote author",
|
|
1604
|
-
"type": "string"
|
|
1605
|
-
"examples": [
|
|
1606
|
-
"CEO"
|
|
1607
|
-
]
|
|
1609
|
+
"type": "string"
|
|
1608
1610
|
},
|
|
1609
1611
|
"image": {
|
|
1610
1612
|
"type": "object",
|
|
@@ -1613,6 +1615,7 @@
|
|
|
1613
1615
|
"title": "Source",
|
|
1614
1616
|
"description": "The image to display with the testimonial",
|
|
1615
1617
|
"type": "string",
|
|
1618
|
+
"format": "image",
|
|
1616
1619
|
"examples": [
|
|
1617
1620
|
"https://example.com/image.jpg"
|
|
1618
1621
|
]
|
|
@@ -1631,6 +1634,9 @@
|
|
|
1631
1634
|
"type": "integer",
|
|
1632
1635
|
"minimum": 1,
|
|
1633
1636
|
"maximum": 5
|
|
1637
|
+
},
|
|
1638
|
+
"type": {
|
|
1639
|
+
"const": "testimonial"
|
|
1634
1640
|
}
|
|
1635
1641
|
},
|
|
1636
1642
|
"additionalProperties": false,
|
|
@@ -2680,43 +2680,17 @@
|
|
|
2680
2680
|
"id": "components-testimonials--simple",
|
|
2681
2681
|
"group": "Components/Testimonials",
|
|
2682
2682
|
"name": "Simple",
|
|
2683
|
-
"code": "<Testimonials\n
|
|
2683
|
+
"code": "<Testimonials\n layout=\"slider\"\n testimonial={[\n {\n image: {\n alt: 'Alt Text Customer 1',\n src: 'img/people/author-emily.png'\n },\n name: 'Emily Johnson',\n quote: 'Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.',\n title: undefined\n }\n ]}\n/>",
|
|
2684
2684
|
"args": {
|
|
2685
2685
|
"layout": "slider",
|
|
2686
|
-
"items": [
|
|
2687
|
-
{
|
|
2688
|
-
"quote": "This product is amazing!",
|
|
2689
|
-
"name": "John Doe",
|
|
2690
|
-
"title": "CEO",
|
|
2691
|
-
"image": {
|
|
2692
|
-
"src": "https://example.com/image.jpg"
|
|
2693
|
-
}
|
|
2694
|
-
},
|
|
2695
|
-
{
|
|
2696
|
-
"quote": "This product is amazing!",
|
|
2697
|
-
"name": "John Doe",
|
|
2698
|
-
"title": "CEO",
|
|
2699
|
-
"image": {
|
|
2700
|
-
"src": "https://example.com/image.jpg"
|
|
2701
|
-
}
|
|
2702
|
-
},
|
|
2703
|
-
{
|
|
2704
|
-
"quote": "This product is amazing!",
|
|
2705
|
-
"name": "John Doe",
|
|
2706
|
-
"title": "CEO",
|
|
2707
|
-
"image": {
|
|
2708
|
-
"src": "https://example.com/image.jpg"
|
|
2709
|
-
}
|
|
2710
|
-
}
|
|
2711
|
-
],
|
|
2712
2686
|
"testimonial": [
|
|
2713
2687
|
{
|
|
2714
2688
|
"quote": "Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.",
|
|
2689
|
+
"name": "Emily Johnson",
|
|
2715
2690
|
"image": {
|
|
2716
2691
|
"src": "img/people/author-emily.png",
|
|
2717
2692
|
"alt": "Alt Text Customer 1"
|
|
2718
|
-
}
|
|
2719
|
-
"name": "Emily Johnson"
|
|
2693
|
+
}
|
|
2720
2694
|
}
|
|
2721
2695
|
]
|
|
2722
2696
|
},
|
|
@@ -2726,43 +2700,17 @@
|
|
|
2726
2700
|
"id": "components-testimonials--with-title",
|
|
2727
2701
|
"group": "Components/Testimonials",
|
|
2728
2702
|
"name": "WithTitle",
|
|
2729
|
-
"code": "<Testimonials\n
|
|
2703
|
+
"code": "<Testimonials\n layout=\"slider\"\n testimonial={[\n {\n image: {\n alt: 'Alt Text Customer 1',\n src: 'img/people/author-emily.png'\n },\n name: 'Emily Johnson',\n quote: 'Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.',\n title: 'Chief Marketing Officer at TechFusion Enterprises'\n }\n ]}\n/>",
|
|
2730
2704
|
"args": {
|
|
2731
2705
|
"layout": "slider",
|
|
2732
|
-
"items": [
|
|
2733
|
-
{
|
|
2734
|
-
"quote": "This product is amazing!",
|
|
2735
|
-
"name": "John Doe",
|
|
2736
|
-
"title": "CEO",
|
|
2737
|
-
"image": {
|
|
2738
|
-
"src": "https://example.com/image.jpg"
|
|
2739
|
-
}
|
|
2740
|
-
},
|
|
2741
|
-
{
|
|
2742
|
-
"quote": "This product is amazing!",
|
|
2743
|
-
"name": "John Doe",
|
|
2744
|
-
"title": "CEO",
|
|
2745
|
-
"image": {
|
|
2746
|
-
"src": "https://example.com/image.jpg"
|
|
2747
|
-
}
|
|
2748
|
-
},
|
|
2749
|
-
{
|
|
2750
|
-
"quote": "This product is amazing!",
|
|
2751
|
-
"name": "John Doe",
|
|
2752
|
-
"title": "CEO",
|
|
2753
|
-
"image": {
|
|
2754
|
-
"src": "https://example.com/image.jpg"
|
|
2755
|
-
}
|
|
2756
|
-
}
|
|
2757
|
-
],
|
|
2758
2706
|
"testimonial": [
|
|
2759
2707
|
{
|
|
2760
2708
|
"quote": "Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.",
|
|
2709
|
+
"name": "Emily Johnson",
|
|
2761
2710
|
"image": {
|
|
2762
2711
|
"src": "img/people/author-emily.png",
|
|
2763
2712
|
"alt": "Alt Text Customer 1"
|
|
2764
2713
|
},
|
|
2765
|
-
"name": "Emily Johnson",
|
|
2766
2714
|
"title": "Chief Marketing Officer at TechFusion Enterprises"
|
|
2767
2715
|
}
|
|
2768
2716
|
]
|
|
@@ -2773,63 +2721,37 @@
|
|
|
2773
2721
|
"id": "components-testimonials--list-layout",
|
|
2774
2722
|
"group": "Components/Testimonials",
|
|
2775
2723
|
"name": "ListLayout",
|
|
2776
|
-
"code": "<Testimonials\n
|
|
2724
|
+
"code": "<Testimonials\n layout=\"list\"\n testimonial={[\n {\n image: {\n alt: 'Alt Text Customer 1',\n src: 'img/people/author-emily.png'\n },\n name: 'Emily Johnson',\n quote: 'Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.',\n rating: 5,\n title: 'Chief Marketing Officer at TechFusion Enterprises'\n },\n {\n image: {\n alt: 'Alt Text Customer 2',\n src: 'img/people/author-john.png'\n },\n name: 'John Smith',\n quote: 'Systemics\\'s design system transformed our development process. The consistency it introduced across our platforms not only saved us time but also boosted our brand\\'s credibility. It\\'s a partnership that continues to pay dividends.',\n rating: 4,\n title: 'Director of Digital Strategy at EcoTech Solutions'\n },\n {\n image: {\n alt: 'Alt Text Customer 3',\n src: 'img/people/author-alex.png'\n },\n name: 'Alex Chen',\n quote: 'As a startup, we needed to hit the ground running. Systemics\\'s approach streamlined our dev and design process, allowing us to scale faster and focus on what truly matters - building a product that stands out in the market.',\n rating: 5,\n title: 'CEO of LaunchPad Innovations'\n }\n ]}\n/>",
|
|
2777
2725
|
"args": {
|
|
2778
2726
|
"layout": "list",
|
|
2779
|
-
"
|
|
2780
|
-
{
|
|
2781
|
-
"quote": "This product is amazing!",
|
|
2782
|
-
"name": "John Doe",
|
|
2783
|
-
"title": "CEO",
|
|
2784
|
-
"image": {
|
|
2785
|
-
"src": "https://example.com/image.jpg"
|
|
2786
|
-
}
|
|
2787
|
-
},
|
|
2788
|
-
{
|
|
2789
|
-
"quote": "This product is amazing!",
|
|
2790
|
-
"name": "John Doe",
|
|
2791
|
-
"title": "CEO",
|
|
2792
|
-
"image": {
|
|
2793
|
-
"src": "https://example.com/image.jpg"
|
|
2794
|
-
}
|
|
2795
|
-
},
|
|
2796
|
-
{
|
|
2797
|
-
"quote": "This product is amazing!",
|
|
2798
|
-
"name": "John Doe",
|
|
2799
|
-
"title": "CEO",
|
|
2800
|
-
"image": {
|
|
2801
|
-
"src": "https://example.com/image.jpg"
|
|
2802
|
-
}
|
|
2803
|
-
}
|
|
2804
|
-
],
|
|
2805
|
-
"testimonials": [
|
|
2727
|
+
"testimonial": [
|
|
2806
2728
|
{
|
|
2807
2729
|
"quote": "Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.",
|
|
2730
|
+
"name": "Emily Johnson",
|
|
2808
2731
|
"image": {
|
|
2809
2732
|
"src": "img/people/author-emily.png",
|
|
2810
2733
|
"alt": "Alt Text Customer 1"
|
|
2811
2734
|
},
|
|
2812
|
-
"name": "Emily Johnson",
|
|
2813
2735
|
"title": "Chief Marketing Officer at TechFusion Enterprises",
|
|
2814
2736
|
"rating": 5
|
|
2815
2737
|
},
|
|
2816
2738
|
{
|
|
2817
2739
|
"quote": "Systemics's design system transformed our development process. The consistency it introduced across our platforms not only saved us time but also boosted our brand's credibility. It's a partnership that continues to pay dividends.",
|
|
2740
|
+
"name": "John Smith",
|
|
2818
2741
|
"image": {
|
|
2819
2742
|
"src": "img/people/author-john.png",
|
|
2820
2743
|
"alt": "Alt Text Customer 2"
|
|
2821
2744
|
},
|
|
2822
|
-
"name": "John Smith",
|
|
2823
2745
|
"title": "Director of Digital Strategy at EcoTech Solutions",
|
|
2824
2746
|
"rating": 4
|
|
2825
2747
|
},
|
|
2826
2748
|
{
|
|
2827
2749
|
"quote": "As a startup, we needed to hit the ground running. Systemics's approach streamlined our dev and design process, allowing us to scale faster and focus on what truly matters - building a product that stands out in the market.",
|
|
2750
|
+
"name": "Alex Chen",
|
|
2828
2751
|
"image": {
|
|
2829
2752
|
"src": "img/people/author-alex.png",
|
|
2830
2753
|
"alt": "Alt Text Customer 3"
|
|
2831
2754
|
},
|
|
2832
|
-
"name": "Alex Chen",
|
|
2833
2755
|
"title": "CEO of LaunchPad Innovations",
|
|
2834
2756
|
"rating": 5
|
|
2835
2757
|
}
|
|
@@ -2841,61 +2763,35 @@
|
|
|
2841
2763
|
"id": "components-testimonials--slider-layout",
|
|
2842
2764
|
"group": "Components/Testimonials",
|
|
2843
2765
|
"name": "SliderLayout",
|
|
2844
|
-
"code": "<Testimonials\n
|
|
2766
|
+
"code": "<Testimonials\n layout=\"slider\"\n testimonial={[\n {\n image: {\n alt: 'Alt Text Customer 1',\n src: 'img/people/author-emily.png'\n },\n name: 'Emily Johnson',\n quote: 'Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.',\n title: 'Chief Marketing Officer at TechFusion Enterprises'\n },\n {\n image: {\n alt: 'Alt Text Customer 2',\n src: 'img/people/author-john.png'\n },\n name: 'John Smith',\n quote: 'Systemics\\'s design system transformed our development process. The consistency it introduced across our platforms not only saved us time but also boosted our brand\\'s credibility. It\\'s a partnership that continues to pay dividends.',\n title: 'Director of Digital Strategy at EcoTech Solutions'\n },\n {\n image: {\n alt: 'Alt Text Customer 3',\n src: 'img/people/author-alex.png'\n },\n name: 'Alex Chen',\n quote: 'As a startup, we needed to hit the ground running. Systemics\\'s approach streamlined our dev and design process, allowing us to scale faster and focus on what truly matters - building a product that stands out in the market.',\n title: 'CEO of LaunchPad Innovations'\n }\n ]}\n/>",
|
|
2845
2767
|
"args": {
|
|
2846
2768
|
"layout": "slider",
|
|
2847
|
-
"
|
|
2848
|
-
{
|
|
2849
|
-
"quote": "This product is amazing!",
|
|
2850
|
-
"name": "John Doe",
|
|
2851
|
-
"title": "CEO",
|
|
2852
|
-
"image": {
|
|
2853
|
-
"src": "https://example.com/image.jpg"
|
|
2854
|
-
}
|
|
2855
|
-
},
|
|
2856
|
-
{
|
|
2857
|
-
"quote": "This product is amazing!",
|
|
2858
|
-
"name": "John Doe",
|
|
2859
|
-
"title": "CEO",
|
|
2860
|
-
"image": {
|
|
2861
|
-
"src": "https://example.com/image.jpg"
|
|
2862
|
-
}
|
|
2863
|
-
},
|
|
2864
|
-
{
|
|
2865
|
-
"quote": "This product is amazing!",
|
|
2866
|
-
"name": "John Doe",
|
|
2867
|
-
"title": "CEO",
|
|
2868
|
-
"image": {
|
|
2869
|
-
"src": "https://example.com/image.jpg"
|
|
2870
|
-
}
|
|
2871
|
-
}
|
|
2872
|
-
],
|
|
2873
|
-
"testimonials": [
|
|
2769
|
+
"testimonial": [
|
|
2874
2770
|
{
|
|
2875
2771
|
"quote": "Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.",
|
|
2772
|
+
"name": "Emily Johnson",
|
|
2876
2773
|
"image": {
|
|
2877
2774
|
"src": "img/people/author-emily.png",
|
|
2878
2775
|
"alt": "Alt Text Customer 1"
|
|
2879
2776
|
},
|
|
2880
|
-
"name": "Emily Johnson",
|
|
2881
2777
|
"title": "Chief Marketing Officer at TechFusion Enterprises"
|
|
2882
2778
|
},
|
|
2883
2779
|
{
|
|
2884
2780
|
"quote": "Systemics's design system transformed our development process. The consistency it introduced across our platforms not only saved us time but also boosted our brand's credibility. It's a partnership that continues to pay dividends.",
|
|
2781
|
+
"name": "John Smith",
|
|
2885
2782
|
"image": {
|
|
2886
2783
|
"src": "img/people/author-john.png",
|
|
2887
2784
|
"alt": "Alt Text Customer 2"
|
|
2888
2785
|
},
|
|
2889
|
-
"name": "John Smith",
|
|
2890
2786
|
"title": "Director of Digital Strategy at EcoTech Solutions"
|
|
2891
2787
|
},
|
|
2892
2788
|
{
|
|
2893
2789
|
"quote": "As a startup, we needed to hit the ground running. Systemics's approach streamlined our dev and design process, allowing us to scale faster and focus on what truly matters - building a product that stands out in the market.",
|
|
2790
|
+
"name": "Alex Chen",
|
|
2894
2791
|
"image": {
|
|
2895
2792
|
"src": "img/people/author-alex.png",
|
|
2896
2793
|
"alt": "Alt Text Customer 3"
|
|
2897
2794
|
},
|
|
2898
|
-
"name": "Alex Chen",
|
|
2899
2795
|
"title": "CEO of LaunchPad Innovations"
|
|
2900
2796
|
}
|
|
2901
2797
|
]
|
|
@@ -2906,63 +2802,37 @@
|
|
|
2906
2802
|
"id": "components-testimonials--with-rating",
|
|
2907
2803
|
"group": "Components/Testimonials",
|
|
2908
2804
|
"name": "WithRating",
|
|
2909
|
-
"code": "<Testimonials\n
|
|
2805
|
+
"code": "<Testimonials\n layout=\"slider\"\n testimonial={[\n {\n image: {\n alt: 'Alt Text Customer 1',\n src: 'img/people/author-emily.png'\n },\n name: 'Emily Johnson',\n quote: 'Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.',\n rating: 5,\n title: 'Chief Marketing Officer at TechFusion Enterprises'\n },\n {\n image: {\n alt: 'Alt Text Customer 2',\n src: 'img/people/author-john.png'\n },\n name: 'John Smith',\n quote: 'Systemics\\'s design system transformed our development process. The consistency it introduced across our platforms not only saved us time but also boosted our brand\\'s credibility. It\\'s a partnership that continues to pay dividends.',\n rating: 4,\n title: 'Director of Digital Strategy at EcoTech Solutions'\n },\n {\n image: {\n alt: 'Alt Text Customer 3',\n src: 'img/people/author-alex.png'\n },\n name: 'Alex Chen',\n quote: 'As a startup, we needed to hit the ground running. Systemics\\'s approach streamlined our dev and design process, allowing us to scale faster and focus on what truly matters - building a product that stands out in the market.',\n rating: 5,\n title: 'CEO of LaunchPad Innovations'\n }\n ]}\n/>",
|
|
2910
2806
|
"args": {
|
|
2911
2807
|
"layout": "slider",
|
|
2912
|
-
"
|
|
2913
|
-
{
|
|
2914
|
-
"quote": "This product is amazing!",
|
|
2915
|
-
"name": "John Doe",
|
|
2916
|
-
"title": "CEO",
|
|
2917
|
-
"image": {
|
|
2918
|
-
"src": "https://example.com/image.jpg"
|
|
2919
|
-
}
|
|
2920
|
-
},
|
|
2921
|
-
{
|
|
2922
|
-
"quote": "This product is amazing!",
|
|
2923
|
-
"name": "John Doe",
|
|
2924
|
-
"title": "CEO",
|
|
2925
|
-
"image": {
|
|
2926
|
-
"src": "https://example.com/image.jpg"
|
|
2927
|
-
}
|
|
2928
|
-
},
|
|
2929
|
-
{
|
|
2930
|
-
"quote": "This product is amazing!",
|
|
2931
|
-
"name": "John Doe",
|
|
2932
|
-
"title": "CEO",
|
|
2933
|
-
"image": {
|
|
2934
|
-
"src": "https://example.com/image.jpg"
|
|
2935
|
-
}
|
|
2936
|
-
}
|
|
2937
|
-
],
|
|
2938
|
-
"testimonials": [
|
|
2808
|
+
"testimonial": [
|
|
2939
2809
|
{
|
|
2940
2810
|
"quote": "Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.",
|
|
2811
|
+
"name": "Emily Johnson",
|
|
2941
2812
|
"image": {
|
|
2942
2813
|
"src": "img/people/author-emily.png",
|
|
2943
2814
|
"alt": "Alt Text Customer 1"
|
|
2944
2815
|
},
|
|
2945
|
-
"name": "Emily Johnson",
|
|
2946
2816
|
"title": "Chief Marketing Officer at TechFusion Enterprises",
|
|
2947
2817
|
"rating": 5
|
|
2948
2818
|
},
|
|
2949
2819
|
{
|
|
2950
2820
|
"quote": "Systemics's design system transformed our development process. The consistency it introduced across our platforms not only saved us time but also boosted our brand's credibility. It's a partnership that continues to pay dividends.",
|
|
2821
|
+
"name": "John Smith",
|
|
2951
2822
|
"image": {
|
|
2952
2823
|
"src": "img/people/author-john.png",
|
|
2953
2824
|
"alt": "Alt Text Customer 2"
|
|
2954
2825
|
},
|
|
2955
|
-
"name": "John Smith",
|
|
2956
2826
|
"title": "Director of Digital Strategy at EcoTech Solutions",
|
|
2957
2827
|
"rating": 4
|
|
2958
2828
|
},
|
|
2959
2829
|
{
|
|
2960
2830
|
"quote": "As a startup, we needed to hit the ground running. Systemics's approach streamlined our dev and design process, allowing us to scale faster and focus on what truly matters - building a product that stands out in the market.",
|
|
2831
|
+
"name": "Alex Chen",
|
|
2961
2832
|
"image": {
|
|
2962
2833
|
"src": "img/people/author-alex.png",
|
|
2963
2834
|
"alt": "Alt Text Customer 3"
|
|
2964
2835
|
},
|
|
2965
|
-
"name": "Alex Chen",
|
|
2966
2836
|
"title": "CEO of LaunchPad Innovations",
|
|
2967
2837
|
"rating": 5
|
|
2968
2838
|
}
|
|
@@ -2974,63 +2844,37 @@
|
|
|
2974
2844
|
"id": "components-testimonials--alternating-layout",
|
|
2975
2845
|
"group": "Components/Testimonials",
|
|
2976
2846
|
"name": "AlternatingLayout",
|
|
2977
|
-
"code": "<Testimonials\n
|
|
2847
|
+
"code": "<Testimonials\n layout=\"alternating\"\n testimonial={[\n {\n image: {\n alt: 'Alt Text Customer 1',\n src: 'img/people/author-emily.png'\n },\n name: 'Emily Johnson',\n quote: 'Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.',\n rating: 5,\n title: 'Chief Marketing Officer at TechFusion Enterprises'\n },\n {\n image: {\n alt: 'Alt Text Customer 2',\n src: 'img/people/author-john.png'\n },\n name: 'John Smith',\n quote: 'Systemics\\'s design system transformed our development process. The consistency it introduced across our platforms not only saved us time but also boosted our brand\\'s credibility. It\\'s a partnership that continues to pay dividends.',\n rating: 4,\n title: 'Director of Digital Strategy at EcoTech Solutions'\n },\n {\n image: {\n alt: 'Alt Text Customer 3',\n src: 'img/people/author-alex.png'\n },\n name: 'Alex Chen',\n quote: 'As a startup, we needed to hit the ground running. Systemics\\'s approach streamlined our dev and design process, allowing us to scale faster and focus on what truly matters - building a product that stands out in the market.',\n rating: 5,\n title: 'CEO of LaunchPad Innovations'\n }\n ]}\n/>",
|
|
2978
2848
|
"args": {
|
|
2979
2849
|
"layout": "alternating",
|
|
2980
|
-
"
|
|
2981
|
-
{
|
|
2982
|
-
"quote": "This product is amazing!",
|
|
2983
|
-
"name": "John Doe",
|
|
2984
|
-
"title": "CEO",
|
|
2985
|
-
"image": {
|
|
2986
|
-
"src": "https://example.com/image.jpg"
|
|
2987
|
-
}
|
|
2988
|
-
},
|
|
2989
|
-
{
|
|
2990
|
-
"quote": "This product is amazing!",
|
|
2991
|
-
"name": "John Doe",
|
|
2992
|
-
"title": "CEO",
|
|
2993
|
-
"image": {
|
|
2994
|
-
"src": "https://example.com/image.jpg"
|
|
2995
|
-
}
|
|
2996
|
-
},
|
|
2997
|
-
{
|
|
2998
|
-
"quote": "This product is amazing!",
|
|
2999
|
-
"name": "John Doe",
|
|
3000
|
-
"title": "CEO",
|
|
3001
|
-
"image": {
|
|
3002
|
-
"src": "https://example.com/image.jpg"
|
|
3003
|
-
}
|
|
3004
|
-
}
|
|
3005
|
-
],
|
|
3006
|
-
"testimonials": [
|
|
2850
|
+
"testimonial": [
|
|
3007
2851
|
{
|
|
3008
2852
|
"quote": "Working with Systemics technology has been a game-changer for our brand. Their design system expertise brought harmony to our user experiences, making our digital platforms not just functional, but truly captivating.",
|
|
2853
|
+
"name": "Emily Johnson",
|
|
3009
2854
|
"image": {
|
|
3010
2855
|
"src": "img/people/author-emily.png",
|
|
3011
2856
|
"alt": "Alt Text Customer 1"
|
|
3012
2857
|
},
|
|
3013
|
-
"name": "Emily Johnson",
|
|
3014
2858
|
"title": "Chief Marketing Officer at TechFusion Enterprises",
|
|
3015
2859
|
"rating": 5
|
|
3016
2860
|
},
|
|
3017
2861
|
{
|
|
3018
2862
|
"quote": "Systemics's design system transformed our development process. The consistency it introduced across our platforms not only saved us time but also boosted our brand's credibility. It's a partnership that continues to pay dividends.",
|
|
2863
|
+
"name": "John Smith",
|
|
3019
2864
|
"image": {
|
|
3020
2865
|
"src": "img/people/author-john.png",
|
|
3021
2866
|
"alt": "Alt Text Customer 2"
|
|
3022
2867
|
},
|
|
3023
|
-
"name": "John Smith",
|
|
3024
2868
|
"title": "Director of Digital Strategy at EcoTech Solutions",
|
|
3025
2869
|
"rating": 4
|
|
3026
2870
|
},
|
|
3027
2871
|
{
|
|
3028
2872
|
"quote": "As a startup, we needed to hit the ground running. Systemics's approach streamlined our dev and design process, allowing us to scale faster and focus on what truly matters - building a product that stands out in the market.",
|
|
2873
|
+
"name": "Alex Chen",
|
|
3029
2874
|
"image": {
|
|
3030
2875
|
"src": "img/people/author-alex.png",
|
|
3031
2876
|
"alt": "Alt Text Customer 3"
|
|
3032
2877
|
},
|
|
3033
|
-
"name": "Alex Chen",
|
|
3034
2878
|
"title": "CEO of LaunchPad Innovations",
|
|
3035
2879
|
"rating": 5
|
|
3036
2880
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { HTMLAttributes, FC, PropsWithChildren } from "react";
|
|
3
|
-
import { SectionProps } from "../../SectionProps-
|
|
3
|
+
import { SectionProps } from "../../SectionProps-93230a76.js";
|
|
4
4
|
declare const Section: import("react").ForwardRefExoticComponent<SectionProps & Omit<HTMLAttributes<HTMLElement>, "style" | "content"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
5
5
|
declare const SectionProvider: FC<PropsWithChildren<any>>;
|
|
6
6
|
export { Section, SectionProvider };
|
|
@@ -1561,17 +1561,22 @@
|
|
|
1561
1561
|
],
|
|
1562
1562
|
"default": "slider"
|
|
1563
1563
|
},
|
|
1564
|
-
"
|
|
1564
|
+
"testimonial": {
|
|
1565
1565
|
"type": "array",
|
|
1566
|
-
"title": "
|
|
1566
|
+
"title": "Testimonials",
|
|
1567
1567
|
"description": "Add testimonials featuring an image, a quote, a source and a rating",
|
|
1568
1568
|
"items": {
|
|
1569
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
1570
|
+
"$id": "http://schema.mydesignsystem.com/testimonial.schema.json",
|
|
1571
|
+
"title": "Testimonial",
|
|
1572
|
+
"description": "Testimonial entry of Testimonials component",
|
|
1569
1573
|
"type": "object",
|
|
1570
1574
|
"properties": {
|
|
1571
1575
|
"quote": {
|
|
1572
1576
|
"title": "Quote",
|
|
1573
1577
|
"description": "The testimonial quote",
|
|
1574
1578
|
"type": "string",
|
|
1579
|
+
"format": "markdown",
|
|
1575
1580
|
"examples": [
|
|
1576
1581
|
"This product is amazing!"
|
|
1577
1582
|
]
|
|
@@ -1587,10 +1592,7 @@
|
|
|
1587
1592
|
"title": {
|
|
1588
1593
|
"title": "Title",
|
|
1589
1594
|
"description": "The title of the quote author",
|
|
1590
|
-
"type": "string"
|
|
1591
|
-
"examples": [
|
|
1592
|
-
"CEO"
|
|
1593
|
-
]
|
|
1595
|
+
"type": "string"
|
|
1594
1596
|
},
|
|
1595
1597
|
"image": {
|
|
1596
1598
|
"type": "object",
|
|
@@ -1599,6 +1601,7 @@
|
|
|
1599
1601
|
"title": "Source",
|
|
1600
1602
|
"description": "The image to display with the testimonial",
|
|
1601
1603
|
"type": "string",
|
|
1604
|
+
"format": "image",
|
|
1602
1605
|
"examples": [
|
|
1603
1606
|
"https://example.com/image.jpg"
|
|
1604
1607
|
]
|
|
@@ -1617,6 +1620,9 @@
|
|
|
1617
1620
|
"type": "integer",
|
|
1618
1621
|
"minimum": 1,
|
|
1619
1622
|
"maximum": 5
|
|
1623
|
+
},
|
|
1624
|
+
"type": {
|
|
1625
|
+
"const": "testimonial"
|
|
1620
1626
|
}
|
|
1621
1627
|
},
|
|
1622
1628
|
"additionalProperties": false,
|
|
@@ -1,44 +1,16 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { HTMLAttributes } from "react";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
type Name = string;
|
|
17
|
-
/**
|
|
18
|
-
* The title of the quote author
|
|
19
|
-
*/
|
|
20
|
-
type Title = string;
|
|
21
|
-
/**
|
|
22
|
-
* The image to display with the testimonial
|
|
23
|
-
*/
|
|
24
|
-
type Source = string;
|
|
25
|
-
/**
|
|
26
|
-
* The alt text of the image file
|
|
27
|
-
*/
|
|
28
|
-
type AltText = string;
|
|
29
|
-
/**
|
|
30
|
-
* Testimonial entry of Testimonials component
|
|
31
|
-
*/
|
|
32
|
-
interface TestimonialProps {
|
|
33
|
-
quote: Quote;
|
|
34
|
-
name: Name;
|
|
35
|
-
title?: Title;
|
|
36
|
-
image: {
|
|
37
|
-
src?: Source;
|
|
38
|
-
alt?: AltText;
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
declare const TestimonialContextDefault: import("react").ForwardRefExoticComponent<TestimonialProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
|
|
42
|
-
declare const TestimonialContext: import("react").Context<import("react").ForwardRefExoticComponent<TestimonialProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>>;
|
|
43
|
-
declare const Testimonial: import("react").ForwardRefExoticComponent<TestimonialProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
3
|
+
import { TestimonialProps } from "../../TestimonialProps-94bdeac9.js";
|
|
4
|
+
declare const TestimonialContextDefault: import("react").ForwardRefExoticComponent<{
|
|
5
|
+
layout: string;
|
|
6
|
+
index: number;
|
|
7
|
+
} & TestimonialProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
|
|
8
|
+
declare const TestimonialContext: import("react").Context<import("react").ForwardRefExoticComponent<{
|
|
9
|
+
layout: string;
|
|
10
|
+
index: number;
|
|
11
|
+
} & TestimonialProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>>;
|
|
12
|
+
declare const Testimonial: import("react").ForwardRefExoticComponent<{
|
|
13
|
+
layout: string;
|
|
14
|
+
index: number;
|
|
15
|
+
} & TestimonialProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
44
16
|
export { TestimonialContextDefault, TestimonialContext, Testimonial };
|
|
@@ -1,15 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { forwardRef, createElement, createContext, useContext } from 'react';
|
|
2
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { Quote } from '@kickstartds/content/lib/quote';
|
|
4
4
|
|
|
5
|
-
const TestimonialContextDefault = forwardRef(({ image, quote, name, title, ...rest }, ref) => (
|
|
6
|
-
{
|
|
7
|
-
image: {
|
|
8
|
-
src: image?.src,
|
|
9
|
-
alt: image?.alt,
|
|
10
|
-
},
|
|
11
|
-
},
|
|
12
|
-
], text: quote, renderText: () => (jsxs(Fragment, { children: ["\"", quote, "\"", jsx("br", {}), jsx("br", {}), jsx("b", { children: name }), jsx("br", {}), title] })) })));
|
|
5
|
+
const TestimonialContextDefault = forwardRef(({ image, quote, name, title, layout, index, rating, ...rest }, ref) => (createElement(Quote, { ...rest, ref: ref, className: layout === "alternating" && index % 2 === 1 ? "c-quote--reverse" : "", key: index, text: quote, source: name, byline: title, image: image.src, renderSource: () => (jsxs(Fragment, { children: [rating ? (jsx("div", { children: [...Array(rating)].map((_, index) => (jsx("span", { children: "\u2605" }, index))) })) : (""), jsx("div", { className: "c-quote__source", children: name })] })) })));
|
|
13
6
|
const TestimonialContext = createContext(TestimonialContextDefault);
|
|
14
7
|
const Testimonial = forwardRef((props, ref) => {
|
|
15
8
|
const Component = useContext(TestimonialContext);
|
|
@@ -47,6 +47,13 @@
|
|
|
47
47
|
},
|
|
48
48
|
"additionalProperties": false
|
|
49
49
|
},
|
|
50
|
+
"rating": {
|
|
51
|
+
"title": "Rating",
|
|
52
|
+
"description": "The rating of the testimonial, from 1 to 5",
|
|
53
|
+
"type": "integer",
|
|
54
|
+
"minimum": 1,
|
|
55
|
+
"maximum": 5
|
|
56
|
+
},
|
|
50
57
|
"type": {
|
|
51
58
|
"const": "testimonial"
|
|
52
59
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { HTMLAttributes, FC, PropsWithChildren } from "react";
|
|
2
|
-
import { TestimonialsProps } from "../../TestimonialsProps-
|
|
2
|
+
import { TestimonialsProps } from "../../TestimonialsProps-72bb9288.js";
|
|
3
3
|
import { SliderProps } from "../../SliderProps-8cae490d.js";
|
|
4
4
|
interface ConditionalSliderProps extends SliderProps {
|
|
5
5
|
layout: "slider" | "list" | "alternating";
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import "./testimonials.css";
|
|
2
|
-
import { jsx
|
|
3
|
-
import { Quote } from '@kickstartds/content/lib/quote';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
3
|
import { Slider } from '../slider/index.js';
|
|
4
|
+
import { Testimonial } from '../testimonial/index.js';
|
|
5
5
|
import '@kickstartds/content/lib/slider';
|
|
6
|
+
import 'react';
|
|
7
|
+
import '@kickstartds/content/lib/quote';
|
|
6
8
|
|
|
7
9
|
const ConditionalSlider = ({ layout, children, arrows, nav, ...props }) => {
|
|
8
10
|
if (layout === "slider") {
|
|
@@ -12,11 +14,8 @@ const ConditionalSlider = ({ layout, children, arrows, nav, ...props }) => {
|
|
|
12
14
|
return (jsx("div", { className: "dsa-testimonials dsa-testimonials--list", ...props, children: children }));
|
|
13
15
|
}
|
|
14
16
|
};
|
|
15
|
-
const Testimonials = ({
|
|
16
|
-
return (jsx(ConditionalSlider, { layout: layout, arrows: true, nav: true, ...props, children:
|
|
17
|
-
? "c-quote--reverse"
|
|
18
|
-
: "", text: item.quote, source: item.name, byline: item.title, image: item.image.src, renderSource: () => (jsxs(Fragment, { children: [item?.rating &&
|
|
19
|
-
(item?.rating ? (jsx("div", { children: [...Array(item?.rating)].map((_, index) => (jsx("span", { children: "\u2605" }, index))) })) : ("")), jsx("div", { className: "c-quote__source", children: item.name })] })) }, index))) }));
|
|
17
|
+
const Testimonials = ({ testimonial, layout = "slider", ...props }) => {
|
|
18
|
+
return (jsx(ConditionalSlider, { layout: layout, arrows: true, nav: true, ...props, children: testimonial.map((testimonial, index) => (jsx(Testimonial, { ...testimonial, index: index, layout: layout }))) }));
|
|
20
19
|
};
|
|
21
20
|
|
|
22
21
|
export { ConditionalSlider, Testimonials };
|
|
@@ -16,17 +16,22 @@
|
|
|
16
16
|
],
|
|
17
17
|
"default": "slider"
|
|
18
18
|
},
|
|
19
|
-
"
|
|
19
|
+
"testimonial": {
|
|
20
20
|
"type": "array",
|
|
21
|
-
"title": "
|
|
21
|
+
"title": "Testimonials",
|
|
22
22
|
"description": "Add testimonials featuring an image, a quote, a source and a rating",
|
|
23
23
|
"items": {
|
|
24
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
25
|
+
"$id": "http://schema.mydesignsystem.com/testimonial.schema.json",
|
|
26
|
+
"title": "Testimonial",
|
|
27
|
+
"description": "Testimonial entry of Testimonials component",
|
|
24
28
|
"type": "object",
|
|
25
29
|
"properties": {
|
|
26
30
|
"quote": {
|
|
27
31
|
"title": "Quote",
|
|
28
32
|
"description": "The testimonial quote",
|
|
29
33
|
"type": "string",
|
|
34
|
+
"format": "markdown",
|
|
30
35
|
"examples": [
|
|
31
36
|
"This product is amazing!"
|
|
32
37
|
]
|
|
@@ -42,10 +47,7 @@
|
|
|
42
47
|
"title": {
|
|
43
48
|
"title": "Title",
|
|
44
49
|
"description": "The title of the quote author",
|
|
45
|
-
"type": "string"
|
|
46
|
-
"examples": [
|
|
47
|
-
"CEO"
|
|
48
|
-
]
|
|
50
|
+
"type": "string"
|
|
49
51
|
},
|
|
50
52
|
"image": {
|
|
51
53
|
"type": "object",
|
|
@@ -54,6 +56,7 @@
|
|
|
54
56
|
"title": "Source",
|
|
55
57
|
"description": "The image to display with the testimonial",
|
|
56
58
|
"type": "string",
|
|
59
|
+
"format": "image",
|
|
57
60
|
"examples": [
|
|
58
61
|
"https://example.com/image.jpg"
|
|
59
62
|
]
|
|
@@ -72,6 +75,9 @@
|
|
|
72
75
|
"type": "integer",
|
|
73
76
|
"minimum": 1,
|
|
74
77
|
"maximum": 5
|
|
78
|
+
},
|
|
79
|
+
"type": {
|
|
80
|
+
"const": "testimonial"
|
|
75
81
|
}
|
|
76
82
|
},
|
|
77
83
|
"additionalProperties": false,
|
|
@@ -12,57 +12,12 @@
|
|
|
12
12
|
"enum": ["slider", "list", "alternating"],
|
|
13
13
|
"default": "slider"
|
|
14
14
|
},
|
|
15
|
-
"
|
|
15
|
+
"testimonial": {
|
|
16
16
|
"type": "array",
|
|
17
|
-
"title": "
|
|
17
|
+
"title": "Testimonials",
|
|
18
18
|
"description": "Add testimonials featuring an image, a quote, a source and a rating",
|
|
19
19
|
"items": {
|
|
20
|
-
"
|
|
21
|
-
"properties": {
|
|
22
|
-
"quote": {
|
|
23
|
-
"title": "Quote",
|
|
24
|
-
"description": "The testimonial quote",
|
|
25
|
-
"type": "string",
|
|
26
|
-
"examples": ["This product is amazing!"]
|
|
27
|
-
},
|
|
28
|
-
"name": {
|
|
29
|
-
"title": "Name",
|
|
30
|
-
"description": "The name of the quote author",
|
|
31
|
-
"type": "string",
|
|
32
|
-
"examples": ["John Doe"]
|
|
33
|
-
},
|
|
34
|
-
"title": {
|
|
35
|
-
"title": "Title",
|
|
36
|
-
"description": "The title of the quote author",
|
|
37
|
-
"type": "string",
|
|
38
|
-
"examples": ["CEO"]
|
|
39
|
-
},
|
|
40
|
-
"image": {
|
|
41
|
-
"type": "object",
|
|
42
|
-
"properties": {
|
|
43
|
-
"src": {
|
|
44
|
-
"title": "Source",
|
|
45
|
-
"description": "The image to display with the testimonial",
|
|
46
|
-
"type": "string",
|
|
47
|
-
"examples": ["https://example.com/image.jpg"]
|
|
48
|
-
},
|
|
49
|
-
"alt": {
|
|
50
|
-
"title": "Alt Text",
|
|
51
|
-
"description": "The alt text of the image file",
|
|
52
|
-
"type": "string"
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
"rating": {
|
|
57
|
-
"title": "Rating",
|
|
58
|
-
"description": "The rating of the testimonial, from 1 to 5",
|
|
59
|
-
"type": "integer",
|
|
60
|
-
"minimum": 1,
|
|
61
|
-
"maximum": 5
|
|
62
|
-
}
|
|
63
|
-
},
|
|
64
|
-
"additionalProperties": false,
|
|
65
|
-
"required": ["quote", "name", "image"]
|
|
20
|
+
"$ref": "http://schema.mydesignsystem.com/testimonial.schema.json"
|
|
66
21
|
}
|
|
67
22
|
}
|
|
68
23
|
},
|
package/dist/global.css
CHANGED
|
@@ -488,7 +488,7 @@ h3 {
|
|
|
488
488
|
var(--ks-border-color-interface-interactive-active)
|
|
489
489
|
);
|
|
490
490
|
--c-form-field--background: var(--dsa-form-field--background, var(--ks-background-color-interface-interactive));
|
|
491
|
-
--c-form-field_focus--shadow: var(--dsa-form-field--shadow_focus
|
|
491
|
+
--c-form-field_focus--shadow: var(--dsa-form-field--shadow_focus, 0 0 4px 0);
|
|
492
492
|
--c-form-field--background-disabled: var(
|
|
493
493
|
--ks-background-color-interface-interactive-disabled,
|
|
494
494
|
var(--ks-background-color-interface-interactive-disabled)
|
package/dist/static/tokens.css
CHANGED
package/dist/tokens/tokens.css
CHANGED
package/dist/tokens/tokens.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kickstartds/ds-agency-premium",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.19",
|
|
4
4
|
"description": "",
|
|
5
5
|
"homepage": "https://github.com/kickstartDS/ds-agency-premium#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -142,6 +142,7 @@
|
|
|
142
142
|
"peerDependencies": {
|
|
143
143
|
"@kickstartds/base": "2.3.0-beta.0",
|
|
144
144
|
"@kickstartds/blog": "2.3.0-beta.0",
|
|
145
|
+
"@kickstartds/content": "3.0.0-next.7",
|
|
145
146
|
"@kickstartds/core": "3.0.0-beta.0",
|
|
146
147
|
"@kickstartds/form": "2.3.0-beta.0",
|
|
147
148
|
"react": "^17 || ^18",
|
|
@@ -1,99 +0,0 @@
|
|
|
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
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|