@kickstartds/ds-agency-premium 1.4.12 → 1.4.13--canary.15.811.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.
- package/dist/{BlogAsideProps-e1cbd5d3.d.ts → BlogAsideProps-99489f0b.d.ts} +11 -4
- package/dist/{BlogHeadProps-3f6e4072.d.ts → BlogHeadProps-f9a49428.d.ts} +1 -2
- package/dist/BlogOverviewProps-9f207f1c.d.ts +1 -1
- package/dist/{BlogPostProps-6b3cff22.d.ts → BlogPostProps-f9a49428.d.ts} +3 -3
- package/dist/{BlogTeaserProps-f5855e93.d.ts → BlogTeaserProps-525f7f9f.d.ts} +1 -2
- package/dist/components/blog-aside/blog-aside.css +8 -16
- package/dist/components/blog-aside/blog-aside.schema.dereffed.json +21 -7
- package/dist/components/blog-aside/blog-aside.schema.json +16 -5
- package/dist/components/blog-aside/index.d.ts +1 -1
- package/dist/components/blog-aside/index.js +2 -2
- package/dist/components/blog-head/blog-head.schema.dereffed.json +4 -18
- package/dist/components/blog-head/blog-head.schema.json +2 -1
- package/dist/components/blog-head/index.d.ts +1 -1
- package/dist/components/blog-head/index.js +1 -1
- package/dist/components/blog-overview/blog-overview.schema.dereffed.json +12 -54
- package/dist/components/blog-post/blog-post.schema.dereffed.json +25 -26
- package/dist/components/blog-post/blog-post.schema.json +1 -1
- package/dist/components/blog-post/index.d.ts +1 -1
- package/dist/components/blog-post/index.js +1 -1
- package/dist/components/blog-teaser/blog-teaser.schema.dereffed.json +4 -18
- package/dist/components/blog-teaser/blog-teaser.schema.json +2 -1
- package/dist/components/blog-teaser/index.d.ts +1 -1
- package/dist/components/blog-teaser/index.js +1 -1
- package/dist/components/contact/contact.css +125 -0
- package/dist/components/contact/contact.schema.dereffed.json +125 -0
- package/dist/components/contact/contact.schema.json +107 -0
- package/dist/components/contact/index.d.ts +70 -0
- package/dist/components/contact/index.js +16 -0
- package/dist/components/html/html.schema.json +25 -0
- package/dist/components/html/index.d.ts +26 -0
- package/dist/components/html/index.js +6 -0
- package/dist/components/index/index.d.ts +51 -4
- package/dist/components/nav-flyout/nav-flyout.css +6 -1
- package/dist/components/nav-main/index.js +0 -1
- package/dist/components/nav-toggle/nav-toggle.css +5 -0
- package/dist/components/nav-topbar/nav-topbar.css +7 -1
- package/dist/components/page-wrapper/index.js +6 -0
- package/dist/components/page-wrapper/tokens.css +9 -9
- package/dist/components/presets.json +197 -60
- package/dist/components/providers/index.js +7 -1
- package/dist/components/split/index.d.ts +2 -1
- package/dist/components/split/index.js +11 -1
- package/dist/components/split/split.css +36 -10
- package/dist/components/split/split.schema.dereffed.json +12 -3
- package/dist/components/split/split.schema.json +7 -1
- package/dist/static/img/people/author-john.png +0 -0
- package/dist/static/img/people/contact-jim.png +0 -0
- package/dist/static/img/people/contact-john.png +0 -0
- package/dist/static/img/people/portrait-young-girl-smiling.jpg +0 -0
- package/dist/tokens/themes.css +4 -4
- package/dist/tokens/tokens.css +9 -9
- package/dist/tokens/tokens.js +9 -9
- package/package.json +1 -1
- package/dist/BlogTagProps-f5855e93.d.ts +0 -16
- package/dist/PageProps-aa29c554.d.ts +0 -49
- package/dist/components/blog-tag/blog-tag.schema.dereffed.json +0 -21
- package/dist/components/blog-tag/blog-tag.schema.json +0 -16
- package/dist/components/nav-main/nav-main.css +0 -11
- package/dist/components/page/index.d.ts +0 -4
- package/dist/components/page/index.js +0 -6
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
.l-container--contact {
|
|
2
|
+
/* stylelint-disable-next-line property-no-unknown */
|
|
3
|
+
container-name: contact;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.dsa-contact {
|
|
7
|
+
--dsa-contact--gap-horizontal: var(--ks-spacing-inline-m);
|
|
8
|
+
--dsa-contact--gap-vertical: var(--ks-spacing-stack-m);
|
|
9
|
+
--dsa-contact__header--gap: 0;
|
|
10
|
+
--dsa-contact__image--flex-basis: 200px;
|
|
11
|
+
--dsa-contact__image--border-radius: var(--ks-border-radius-card);
|
|
12
|
+
--dsa-contact__body--gap: var(--ks-spacing-stack-xs);
|
|
13
|
+
--dsa-contact__body--flex-basis: 300px;
|
|
14
|
+
--dsa-contact__copy--font: var(--dsa-rich-text--font);
|
|
15
|
+
--dsa-contact__copy--color: var(--dsa-rich-text--color);
|
|
16
|
+
--dsa-contact__title--color: var(--ks-text-color-display);
|
|
17
|
+
--dsa-contact__title--font: var(--ks-font-copy-l);
|
|
18
|
+
--dsa-contact__title--font-weight: var(--ks-font-weight-bold);
|
|
19
|
+
--dsa-contact__subtitle--color: var(--ks-text-color-display);
|
|
20
|
+
--dsa-contact__subtitle--font: var(--ks-font-copy-m);
|
|
21
|
+
--dsa-contact__subtitle--font-weight: var(--ks-font-weight-regular);
|
|
22
|
+
--dsa-contact__links--gap: 0;
|
|
23
|
+
--dsa-contact__link--color: var(--dsa-link--color);
|
|
24
|
+
--dsa-contact__link--color_hover: var(--dsa-link--color_hover);
|
|
25
|
+
--dsa-contact__link--font: var(--ks-font-interface-m);
|
|
26
|
+
--dsa-contact__link--font-weight: var(--dsa-link--font-weight);
|
|
27
|
+
--dsa-contact__link__icon--margin-right: 0.5em;
|
|
28
|
+
--dsa-contact__link__icon--size: 1.5em;
|
|
29
|
+
--dsa-contact__link__icon--color: inherit;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.l-container--contact {
|
|
33
|
+
/* stylelint-disable-next-line property-no-unknown */
|
|
34
|
+
container-name: contact;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.dsa-contact {
|
|
38
|
+
display: flex;
|
|
39
|
+
flex-wrap: wrap;
|
|
40
|
+
gap: var(--dsa-contact--gap-horizontal) var(--dsa-contact--gap-vertical);
|
|
41
|
+
}
|
|
42
|
+
.dsa-contact__image-wrap, .dsa-contact__body {
|
|
43
|
+
flex-grow: 1;
|
|
44
|
+
}
|
|
45
|
+
.dsa-contact__body {
|
|
46
|
+
display: flex;
|
|
47
|
+
flex-grow: 1;
|
|
48
|
+
flex-shrink: 0;
|
|
49
|
+
flex-direction: column;
|
|
50
|
+
gap: var(--dsa-contact__body--gap);
|
|
51
|
+
flex-basis: var(--dsa-contact__body--flex-basis);
|
|
52
|
+
}
|
|
53
|
+
.dsa-contact__copy {
|
|
54
|
+
font: var(--dsa-contact__copy--font);
|
|
55
|
+
color: var(--dsa-contact__copy--color);
|
|
56
|
+
}
|
|
57
|
+
.dsa-contact__image-wrap {
|
|
58
|
+
flex: none;
|
|
59
|
+
flex-basis: var(--dsa-contact__image--flex-basis);
|
|
60
|
+
height: 100%;
|
|
61
|
+
width: 100%;
|
|
62
|
+
}
|
|
63
|
+
.dsa-contact--image-full-width .dsa-contact__image-wrap {
|
|
64
|
+
flex-grow: 1;
|
|
65
|
+
}
|
|
66
|
+
.dsa-contact--image-square .dsa-contact__image-wrap {
|
|
67
|
+
aspect-ratio: 1/1;
|
|
68
|
+
}
|
|
69
|
+
.dsa-contact--image-wide .dsa-contact__image-wrap {
|
|
70
|
+
aspect-ratio: 4/3;
|
|
71
|
+
}
|
|
72
|
+
.dsa-contact--image-vertical .dsa-contact__image-wrap {
|
|
73
|
+
aspect-ratio: 3/4;
|
|
74
|
+
}
|
|
75
|
+
.dsa-contact__image {
|
|
76
|
+
width: 100%;
|
|
77
|
+
object-fit: cover;
|
|
78
|
+
height: 100%;
|
|
79
|
+
border-radius: var(--dsa-contact__image--border-radius);
|
|
80
|
+
}
|
|
81
|
+
.dsa-contact__header {
|
|
82
|
+
display: flex;
|
|
83
|
+
flex-direction: column;
|
|
84
|
+
gap: var(--dsa-contact__header--gap);
|
|
85
|
+
}
|
|
86
|
+
.dsa-contact__title {
|
|
87
|
+
font: var(--dsa-contact__title--font);
|
|
88
|
+
color: var(--dsa-contact__title--color);
|
|
89
|
+
font-weight: var(--dsa-contact__title--font-weight);
|
|
90
|
+
}
|
|
91
|
+
.dsa-contact__subtitle {
|
|
92
|
+
font: var(--dsa-contact__subtitle--font);
|
|
93
|
+
color: var(--dsa-contact__subtitle--color);
|
|
94
|
+
font-weight: var(--dsa-contact__subtitle--font-weight);
|
|
95
|
+
}
|
|
96
|
+
.dsa-contact__links {
|
|
97
|
+
display: flex;
|
|
98
|
+
flex-direction: column;
|
|
99
|
+
gap: var(--dsa-contact__links--gap);
|
|
100
|
+
list-style: none;
|
|
101
|
+
padding: 0;
|
|
102
|
+
margin: 0;
|
|
103
|
+
}
|
|
104
|
+
.dsa-contact a.dsa-contact__link {
|
|
105
|
+
color: var(--dsa-contact__link--color);
|
|
106
|
+
font: var(--dsa-contact__link--font);
|
|
107
|
+
font-weight: var(--dsa-contact__link--font-weight);
|
|
108
|
+
}
|
|
109
|
+
.dsa-contact a.dsa-contact__link .icon {
|
|
110
|
+
width: var(--dsa-contact__link__icon--size);
|
|
111
|
+
height: var(--dsa-contact__link__icon--size);
|
|
112
|
+
color: var(--dsa-contact__link__icon--color);
|
|
113
|
+
margin-right: var(--dsa-contact__link__icon--margin-right);
|
|
114
|
+
}
|
|
115
|
+
.dsa-contact a.dsa-contact__link:hover {
|
|
116
|
+
color: var(--dsa-contact__link--color_hover);
|
|
117
|
+
}
|
|
118
|
+
.dsa-contact .c-headline {
|
|
119
|
+
--c-headline--color: var(--dsa-contact__headline--color);
|
|
120
|
+
--c-headline--font: var(--dsa-contact__headline--font);
|
|
121
|
+
--c-headline--font-weight: var(--dsa-contact__headline--font-weight);
|
|
122
|
+
--c-headline__subheadline--color: var(--dsa-contact__headline__subheadline--color);
|
|
123
|
+
--c-headline__subheadline--font: var(--dsa-contact__headline__subheadline--font);
|
|
124
|
+
--c-headline__subheadline--font-weight: var(--dsa-contact__headline__subheadline--font-weight);
|
|
125
|
+
}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "http://schema.mydesignsystem.com/contact.schema.json",
|
|
4
|
+
"title": "Contact",
|
|
5
|
+
"description": "Component used for user interaction",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"image": {
|
|
9
|
+
"type": "object",
|
|
10
|
+
"properties": {
|
|
11
|
+
"src": {
|
|
12
|
+
"type": "string",
|
|
13
|
+
"format": "image",
|
|
14
|
+
"title": "Image Source",
|
|
15
|
+
"description": "URL of the image to display",
|
|
16
|
+
"examples": [
|
|
17
|
+
"img/people/author-emily.png"
|
|
18
|
+
]
|
|
19
|
+
},
|
|
20
|
+
"alt": {
|
|
21
|
+
"type": "string",
|
|
22
|
+
"title": "Alt Text",
|
|
23
|
+
"description": "Alt text of the image",
|
|
24
|
+
"examples": [
|
|
25
|
+
"Picture of Jane Smith"
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
"fullWidth": {
|
|
29
|
+
"type": "boolean",
|
|
30
|
+
"title": "Full Width",
|
|
31
|
+
"description": "Image uses all the horizontal space vailable",
|
|
32
|
+
"default": false
|
|
33
|
+
},
|
|
34
|
+
"aspectRatio": {
|
|
35
|
+
"type": "string",
|
|
36
|
+
"title": "aspectRatio",
|
|
37
|
+
"description": "Aspect Ratio of the Images",
|
|
38
|
+
"enum": [
|
|
39
|
+
"wide",
|
|
40
|
+
"square",
|
|
41
|
+
"vertical"
|
|
42
|
+
],
|
|
43
|
+
"default": "square"
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"additionalProperties": false
|
|
47
|
+
},
|
|
48
|
+
"title": {
|
|
49
|
+
"title": "Title",
|
|
50
|
+
"description": "Name, company name, etc.",
|
|
51
|
+
"type": "string",
|
|
52
|
+
"examples": [
|
|
53
|
+
"Jane Smith"
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
"subtitle": {
|
|
57
|
+
"title": "Subtitle",
|
|
58
|
+
"description": "Position, profession, department, location, etc.",
|
|
59
|
+
"type": "string",
|
|
60
|
+
"examples": [
|
|
61
|
+
"CEO at Company"
|
|
62
|
+
]
|
|
63
|
+
},
|
|
64
|
+
"links": {
|
|
65
|
+
"type": "array",
|
|
66
|
+
"items": {
|
|
67
|
+
"type": "object",
|
|
68
|
+
"properties": {
|
|
69
|
+
"icon": {
|
|
70
|
+
"type": "string"
|
|
71
|
+
},
|
|
72
|
+
"label": {
|
|
73
|
+
"type": "string"
|
|
74
|
+
},
|
|
75
|
+
"href": {
|
|
76
|
+
"type": "string",
|
|
77
|
+
"format": "uri"
|
|
78
|
+
},
|
|
79
|
+
"newTab": {
|
|
80
|
+
"title": "Open link in new Tab",
|
|
81
|
+
"description": "Open link in new Tab",
|
|
82
|
+
"type": "boolean",
|
|
83
|
+
"default": false
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
"additionalProperties": false
|
|
87
|
+
},
|
|
88
|
+
"examples": [
|
|
89
|
+
[
|
|
90
|
+
{
|
|
91
|
+
"icon": "phone",
|
|
92
|
+
"label": "0228 / 688 966 20",
|
|
93
|
+
"href": "tel:+4922868896620"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"icon": "email",
|
|
97
|
+
"label": "mail@example.com",
|
|
98
|
+
"href": "mailto:mail@example.com"
|
|
99
|
+
}
|
|
100
|
+
]
|
|
101
|
+
]
|
|
102
|
+
},
|
|
103
|
+
"copy": {
|
|
104
|
+
"title": "Copy text",
|
|
105
|
+
"type": "string"
|
|
106
|
+
},
|
|
107
|
+
"className": {
|
|
108
|
+
"title": "Class",
|
|
109
|
+
"description": "Additional css classes attached to the wrapping element",
|
|
110
|
+
"type": "string"
|
|
111
|
+
},
|
|
112
|
+
"component": {
|
|
113
|
+
"title": "`ks-component` attribute",
|
|
114
|
+
"description": "Optional custom component identifier",
|
|
115
|
+
"type": "string"
|
|
116
|
+
},
|
|
117
|
+
"type": {
|
|
118
|
+
"const": "contact"
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
"additionalProperties": false,
|
|
122
|
+
"required": [
|
|
123
|
+
"name"
|
|
124
|
+
]
|
|
125
|
+
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "http://schema.mydesignsystem.com/contact.schema.json",
|
|
4
|
+
"title": "Contact",
|
|
5
|
+
"description": "Component used for user interaction",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"image": {
|
|
9
|
+
"type": "object",
|
|
10
|
+
"properties": {
|
|
11
|
+
"src": {
|
|
12
|
+
"type": "string",
|
|
13
|
+
"format": "image",
|
|
14
|
+
"title": "Image Source",
|
|
15
|
+
"description": "URL of the image to display",
|
|
16
|
+
"examples": ["img/people/author-emily.png"]
|
|
17
|
+
},
|
|
18
|
+
"alt": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"title": "Alt Text",
|
|
21
|
+
"description": "Alt text of the image",
|
|
22
|
+
"examples": ["Picture of Jane Smith"]
|
|
23
|
+
},
|
|
24
|
+
"fullWidth": {
|
|
25
|
+
"type": "boolean",
|
|
26
|
+
"title": "Full Width",
|
|
27
|
+
"description": "Image uses all the horizontal space vailable",
|
|
28
|
+
"default": false
|
|
29
|
+
},
|
|
30
|
+
"aspectRatio": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"title": "aspectRatio",
|
|
33
|
+
"description": "Aspect Ratio of the Images",
|
|
34
|
+
"enum": ["wide", "square", "vertical"],
|
|
35
|
+
"default": "square"
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
"title": {
|
|
40
|
+
"title": "Title",
|
|
41
|
+
"description": "Name, company name, etc.",
|
|
42
|
+
"type": "string",
|
|
43
|
+
"examples": ["Jane Smith"]
|
|
44
|
+
},
|
|
45
|
+
"subtitle": {
|
|
46
|
+
"title": "Subtitle",
|
|
47
|
+
"description": "Position, profession, department, location, etc.",
|
|
48
|
+
"type": "string",
|
|
49
|
+
"examples": ["CEO at Company"]
|
|
50
|
+
},
|
|
51
|
+
"links": {
|
|
52
|
+
"type": "array",
|
|
53
|
+
"items": {
|
|
54
|
+
"type": "object",
|
|
55
|
+
"properties": {
|
|
56
|
+
"icon": {
|
|
57
|
+
"type": "string"
|
|
58
|
+
},
|
|
59
|
+
"label": {
|
|
60
|
+
"type": "string"
|
|
61
|
+
},
|
|
62
|
+
"href": {
|
|
63
|
+
"type": "string",
|
|
64
|
+
"format": "uri"
|
|
65
|
+
},
|
|
66
|
+
"newTab": {
|
|
67
|
+
"title": "Open link in new Tab",
|
|
68
|
+
"description": "Open link in new Tab",
|
|
69
|
+
"type": "boolean",
|
|
70
|
+
"default": false
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
"additionalProperties": false
|
|
74
|
+
},
|
|
75
|
+
"examples": [
|
|
76
|
+
[
|
|
77
|
+
{
|
|
78
|
+
"icon": "phone",
|
|
79
|
+
"label": "0228 / 688 966 20",
|
|
80
|
+
"href": "tel:+4922868896620"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"icon": "email",
|
|
84
|
+
"label": "mail@example.com",
|
|
85
|
+
"href": "mailto:mail@example.com"
|
|
86
|
+
}
|
|
87
|
+
]
|
|
88
|
+
]
|
|
89
|
+
},
|
|
90
|
+
"copy": {
|
|
91
|
+
"title": "Copy text",
|
|
92
|
+
"type": "string"
|
|
93
|
+
},
|
|
94
|
+
"className": {
|
|
95
|
+
"title": "Class",
|
|
96
|
+
"description": "Additional css classes attached to the wrapping element",
|
|
97
|
+
"type": "string"
|
|
98
|
+
},
|
|
99
|
+
"component": {
|
|
100
|
+
"title": "`ks-component` attribute",
|
|
101
|
+
"description": "Optional custom component identifier",
|
|
102
|
+
"type": "string"
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
"additionalProperties": false,
|
|
106
|
+
"required": ["name"]
|
|
107
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { HTMLAttributes, FC, PropsWithChildren } from "react";
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* This file was automatically generated by json-schema-to-typescript.
|
|
6
|
+
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
7
|
+
* and run json-schema-to-typescript to regenerate this file.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* URL of the image to display
|
|
11
|
+
*/
|
|
12
|
+
type ImageSource = string;
|
|
13
|
+
/**
|
|
14
|
+
* Alt text of the image
|
|
15
|
+
*/
|
|
16
|
+
type AltText = string;
|
|
17
|
+
/**
|
|
18
|
+
* Image uses all the horizontal space vailable
|
|
19
|
+
*/
|
|
20
|
+
type FullWidth = boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Aspect Ratio of the Images
|
|
23
|
+
*/
|
|
24
|
+
type AspectRatio = "wide" | "square" | "vertical";
|
|
25
|
+
/**
|
|
26
|
+
* Name, company name, etc.
|
|
27
|
+
*/
|
|
28
|
+
type Title = string;
|
|
29
|
+
/**
|
|
30
|
+
* Position, profession, department, location, etc.
|
|
31
|
+
*/
|
|
32
|
+
type Subtitle = string;
|
|
33
|
+
/**
|
|
34
|
+
* Open link in new Tab
|
|
35
|
+
*/
|
|
36
|
+
type OpenLinkInNewTab = boolean;
|
|
37
|
+
type CopyText = string;
|
|
38
|
+
/**
|
|
39
|
+
* Additional css classes attached to the wrapping element
|
|
40
|
+
*/
|
|
41
|
+
type Class = string;
|
|
42
|
+
/**
|
|
43
|
+
* Optional custom component identifier
|
|
44
|
+
*/
|
|
45
|
+
type KsComponentAttribute = string;
|
|
46
|
+
/**
|
|
47
|
+
* Component used for user interaction
|
|
48
|
+
*/
|
|
49
|
+
interface ContactProps {
|
|
50
|
+
image?: {
|
|
51
|
+
src?: ImageSource;
|
|
52
|
+
alt?: AltText;
|
|
53
|
+
fullWidth?: FullWidth;
|
|
54
|
+
aspectRatio?: AspectRatio;
|
|
55
|
+
};
|
|
56
|
+
title?: Title;
|
|
57
|
+
subtitle?: Subtitle;
|
|
58
|
+
links?: {
|
|
59
|
+
icon?: string;
|
|
60
|
+
label?: string;
|
|
61
|
+
href?: string;
|
|
62
|
+
newTab?: OpenLinkInNewTab;
|
|
63
|
+
}[];
|
|
64
|
+
copy?: CopyText;
|
|
65
|
+
className?: Class;
|
|
66
|
+
component?: KsComponentAttribute;
|
|
67
|
+
}
|
|
68
|
+
declare const Contact: import("react").ForwardRefExoticComponent<ContactProps & HTMLAttributes<HTMLElement> & import("react").RefAttributes<HTMLAnchorElement>>;
|
|
69
|
+
declare const ContactProvider: FC<PropsWithChildren>;
|
|
70
|
+
export { Contact, ContactProvider };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import "./contact.css";
|
|
2
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
import classnames from 'classnames';
|
|
5
|
+
import { Picture } from '@kickstartds/base/lib/picture';
|
|
6
|
+
import { ContactContext } from '@kickstartds/base/lib/contact';
|
|
7
|
+
import { Link } from '@kickstartds/base/lib/link';
|
|
8
|
+
import { Icon } from '@kickstartds/base/lib/icon';
|
|
9
|
+
import { RichText } from '@kickstartds/base/lib/rich-text';
|
|
10
|
+
import { Container } from '@kickstartds/core/lib/container';
|
|
11
|
+
|
|
12
|
+
const Contact = forwardRef(({ title, subtitle, image, links, copy, className, ...props }, ref) => (jsx(Container, { name: "contact", children: jsxs("address", { className: classnames("dsa-contact", image?.aspectRatio && `dsa-contact--image-${image?.aspectRatio}`, image?.fullWidth && `dsa-contact--image-full-width`, className), ref: ref, ...props, children: [image && image.src ? (jsx("div", { className: "dsa-contact__image-wrap", children: jsx(Picture, { ...image, className: "dsa-contact__image" }) })) : (""), jsxs("div", { className: "dsa-contact__body", children: [title && (jsxs("div", { className: "dsa-contact__header", children: [jsx("span", { className: "dsa-contact__title", children: title }), jsx("span", { className: "dsa-contact__subtitle", children: subtitle })] })), copy && jsx(RichText, { text: copy, className: "dsa-contact__copy" }), links.length ? (jsx("ul", { className: "dsa-contact__links", children: links.map(({ icon, href, label, newTab }, i) => (jsx("li", { children: jsxs(Link, { className: "dsa-contact__link", href: href, ...(newTab ? { target: "_blank", rel: "noopener" } : {}), children: [jsx(Icon, { icon: icon }), label] }) }, i))) })) : ("")] })] }) })));
|
|
13
|
+
Contact.displayName = "Contact";
|
|
14
|
+
const ContactProvider = (props) => (jsx(ContactContext.Provider, { ...props, value: Contact }));
|
|
15
|
+
|
|
16
|
+
export { Contact, ContactProvider };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "http://schema.kickstartds.com/base/html.schema.json",
|
|
4
|
+
"title": "HTML",
|
|
5
|
+
"description": "Display raw HTML.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"html": {
|
|
9
|
+
"title": "HTML string",
|
|
10
|
+
"type": "string",
|
|
11
|
+
"examples": ["<p>Hello world!</p>"]
|
|
12
|
+
},
|
|
13
|
+
"className": {
|
|
14
|
+
"title": "Additional Classes",
|
|
15
|
+
"description": "Add additional css classes that should be applied to the element",
|
|
16
|
+
"type": "string"
|
|
17
|
+
},
|
|
18
|
+
"component": {
|
|
19
|
+
"title": "`ks-component` attribute",
|
|
20
|
+
"description": "Optional custom component identifier",
|
|
21
|
+
"type": "string"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"additionalProperties": false
|
|
25
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ForwardRefRenderFunction, HTMLAttributes } 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 `yarn run schema` to regenerate this file.
|
|
7
|
+
*/
|
|
8
|
+
type HTMLString = string;
|
|
9
|
+
/**
|
|
10
|
+
* Add additional css classes that should be applied to the element
|
|
11
|
+
*/
|
|
12
|
+
type AdditionalClasses = string;
|
|
13
|
+
/**
|
|
14
|
+
* Optional custom component identifier
|
|
15
|
+
*/
|
|
16
|
+
type KsComponentAttribute = string;
|
|
17
|
+
/**
|
|
18
|
+
* Display raw HTML.
|
|
19
|
+
*/
|
|
20
|
+
interface HTMLProps {
|
|
21
|
+
html?: HTMLString;
|
|
22
|
+
className?: AdditionalClasses;
|
|
23
|
+
component?: KsComponentAttribute;
|
|
24
|
+
}
|
|
25
|
+
declare const HtmlComponent: ForwardRefRenderFunction<HTMLDivElement, HTMLProps & HTMLAttributes<HTMLDivElement>>;
|
|
26
|
+
export { HTMLProps, HtmlComponent };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import classnames from 'classnames';
|
|
3
|
+
|
|
4
|
+
const HtmlComponent = ({ html, className, component, ...props }, ref) => (jsx("div", { className: classnames('c-html', className), dangerouslySetInnerHTML: { __html: html }, "ks-component": component, ref: ref, ...props }));
|
|
5
|
+
|
|
6
|
+
export { HtmlComponent };
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
/* eslint-disable */
|
|
2
|
+
/**
|
|
3
|
+
* This file was automatically generated by json-schema-to-typescript.
|
|
4
|
+
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
5
|
+
* and run json-schema-to-typescript to regenerate this file.
|
|
6
|
+
*/
|
|
7
|
+
import { SectionProps } from "../../SectionProps-83d399b4.js";
|
|
8
|
+
import { SeoProps } from "../../SeoProps-f2d6dcaa.js";
|
|
9
|
+
/* eslint-disable */
|
|
2
10
|
/**
|
|
3
11
|
* This file was automatically generated by json-schema-to-typescript.
|
|
4
12
|
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
@@ -6,7 +14,47 @@
|
|
|
6
14
|
*/
|
|
7
15
|
import { HeaderProps } from "../../HeaderProps-e22382f1.js";
|
|
8
16
|
import { FooterProps } from "../../FooterProps-171a3067.js";
|
|
9
|
-
|
|
17
|
+
/**
|
|
18
|
+
* Collection of sections (with their contents) to render on the page
|
|
19
|
+
*/
|
|
20
|
+
type Sections = SectionProps[];
|
|
21
|
+
/**
|
|
22
|
+
* Toggle default floating header behaviour set in global settings
|
|
23
|
+
*/
|
|
24
|
+
type ToggleFloating = boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Toggle default inverted header behaviour set in global settings
|
|
27
|
+
*/
|
|
28
|
+
type ToggleInverted = boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Toggle default inverted footer behaviour set in global settings
|
|
31
|
+
*/
|
|
32
|
+
type ToggleInverted1 = boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Abstracts a page concept into JSON schema
|
|
35
|
+
*/
|
|
36
|
+
interface PageProps {
|
|
37
|
+
section?: Sections;
|
|
38
|
+
header?: Header;
|
|
39
|
+
footer?: Footer;
|
|
40
|
+
/**
|
|
41
|
+
* Referenced component SeoProps
|
|
42
|
+
*/
|
|
43
|
+
seo: SeoProps;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Header settings for the page
|
|
47
|
+
*/
|
|
48
|
+
interface Header {
|
|
49
|
+
floating?: ToggleFloating;
|
|
50
|
+
inverted?: ToggleInverted;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Footer settings for the page
|
|
54
|
+
*/
|
|
55
|
+
interface Footer {
|
|
56
|
+
inverted?: ToggleInverted1;
|
|
57
|
+
}
|
|
10
58
|
/**
|
|
11
59
|
* Abstracts global settings made for a website into JSON Schema
|
|
12
60
|
*/
|
|
@@ -24,7 +72,6 @@ interface SettingsProps {
|
|
|
24
72
|
*/
|
|
25
73
|
seo: SeoProps;
|
|
26
74
|
}
|
|
27
|
-
export * from "../../BlogPostProps-
|
|
75
|
+
export * from "../../BlogPostProps-f9a49428.js";
|
|
28
76
|
export * from "../../BlogOverviewProps-9f207f1c.js";
|
|
29
|
-
export
|
|
30
|
-
export { SettingsProps };
|
|
77
|
+
export { Sections, ToggleFloating, ToggleInverted, ToggleInverted1, PageProps, Header, Footer, SettingsProps };
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
.dsa-nav-flyout {
|
|
30
|
-
display:
|
|
30
|
+
display: none;
|
|
31
31
|
font: var(--dsa-nav-flyout__label--font);
|
|
32
32
|
flex-direction: column;
|
|
33
33
|
gap: var(--dsa-nav-flyout--gap);
|
|
@@ -47,6 +47,11 @@
|
|
|
47
47
|
-webkit-overflow-scrolling: touch;
|
|
48
48
|
max-width: var(--dsa-nav-flyout--max-width);
|
|
49
49
|
}
|
|
50
|
+
@media (max-width: 62rem) {
|
|
51
|
+
.dsa-nav-flyout {
|
|
52
|
+
display: flex;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
50
55
|
.dsa-nav-flyout ul {
|
|
51
56
|
padding: 0;
|
|
52
57
|
margin: 0;
|
|
@@ -23,6 +23,11 @@ button.dsa-nav-toggle {
|
|
|
23
23
|
transform: translateX(var(--dsa-header--spacing-horizontal));
|
|
24
24
|
--toggle__icon-bar--offset: 45%;
|
|
25
25
|
}
|
|
26
|
+
@media (min-width: 62em) {
|
|
27
|
+
button.dsa-nav-toggle {
|
|
28
|
+
display: none;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
26
31
|
button.dsa-nav-toggle .dsa-nav-toggle__label {
|
|
27
32
|
border: 0;
|
|
28
33
|
clip: rect(1px, 1px, 1px, 1px);
|
|
@@ -19,6 +19,12 @@
|
|
|
19
19
|
.dsa-nav-topbar {
|
|
20
20
|
--g-link--text-decoration: none;
|
|
21
21
|
--g-link--text-decoration_hover: none;
|
|
22
|
+
display: none;
|
|
23
|
+
}
|
|
24
|
+
@media (min-width: 62rem) {
|
|
25
|
+
.dsa-nav-topbar {
|
|
26
|
+
display: block;
|
|
27
|
+
}
|
|
22
28
|
}
|
|
23
29
|
.dsa-nav-topbar ul {
|
|
24
30
|
list-style: none;
|
|
@@ -44,7 +50,7 @@
|
|
|
44
50
|
display: flex;
|
|
45
51
|
align-items: stretch;
|
|
46
52
|
}
|
|
47
|
-
.dsa-nav-topbar .dsa-nav-topbar__item--dropdown:last-
|
|
53
|
+
.dsa-nav-topbar .dsa-nav-topbar__item--dropdown:last-child .dsa-nav-dropdown {
|
|
48
54
|
right: 0;
|
|
49
55
|
}
|
|
50
56
|
.dsa-nav-topbar .dsa-nav-topbar__item .dsa-nav-dropdown {
|
|
@@ -15,6 +15,12 @@ import '@kickstartds/core/lib/component';
|
|
|
15
15
|
import '../teaser-card/index.js';
|
|
16
16
|
import '@kickstartds/base/lib/teaser-box';
|
|
17
17
|
import '@kickstartds/core/lib/container';
|
|
18
|
+
import '../contact/index.js';
|
|
19
|
+
import '@kickstartds/base/lib/picture';
|
|
20
|
+
import '@kickstartds/base/lib/contact';
|
|
21
|
+
import '@kickstartds/base/lib/link';
|
|
22
|
+
import '@kickstartds/base/lib/icon';
|
|
23
|
+
import '@kickstartds/base/lib/rich-text';
|
|
18
24
|
import '../headline/index.js';
|
|
19
25
|
import 'markdown-to-jsx';
|
|
20
26
|
import '@kickstartds/base/lib/headline';
|