@kickstartds/ds-agency-premium 1.6.68--canary.45.1675.0 → 1.6.68--canary.45.1680.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/{BlogOverviewProps-9f207f1c.d.ts → BlogOverviewProps-7caa223c.d.ts} +1 -1
- package/dist/{BlogPostProps-6b3cff22.d.ts → BlogPostProps-d9decb7c.d.ts} +1 -1
- package/dist/EventDetailProps-63f63768.d.ts +387 -0
- package/dist/{EventListAppointmentProps-d438cdc6.d.ts → EventListAppointmentProps-da54c3b9.d.ts} +16 -1
- package/dist/{PageProps-aa29c554.d.ts → PageProps-7caa223c.d.ts} +1 -1
- package/dist/{SectionProps-7caa223c.d.ts → SectionProps-03ff6d21.d.ts} +1 -1
- package/dist/components/blog-overview/blog-overview.schema.dereffed.json +4 -2
- package/dist/components/blog-overview/index.d.ts +1 -1
- package/dist/components/blog-post/blog-post.schema.dereffed.json +4 -2
- package/dist/components/blog-post/index.d.ts +1 -1
- package/dist/components/event-detail/event-detail.schema.dereffed.json +111 -8
- package/dist/components/event-detail/event-detail.schema.json +22 -19
- package/dist/components/event-detail/index.d.ts +1 -1
- package/dist/components/event-detail/index.js +23 -11
- package/dist/components/event-header/event-header.css +6 -0
- package/dist/components/event-header/event-header.schema.dereffed.json +38 -0
- package/dist/components/event-header/event-header.schema.json +34 -0
- package/dist/components/event-header/index.d.ts +35 -0
- package/dist/components/event-header/index.js +20 -0
- package/dist/components/event-list-appointment/event-list-appointment.css +52 -0
- package/dist/components/event-list-appointment/event-list-appointment.schema.dereffed.json +19 -0
- package/dist/components/event-list-appointment/event-list-appointment.schema.json +19 -0
- package/dist/components/event-list-appointment/index.d.ts +4 -4
- package/dist/components/event-list-appointment/index.js +2 -5
- package/dist/components/event-list-entry/event-list-entry.css +42 -0
- package/dist/components/event-list-entry/event-list-entry.schema.dereffed.json +19 -0
- package/dist/components/event-list-entry/index.d.ts +1 -1
- package/dist/components/event-list-entry/index.js +3 -5
- package/dist/components/gallery/gallery.schema.dereffed.json +2 -1
- package/dist/components/gallery/gallery.schema.json +2 -1
- package/dist/components/gallery/index.js +1 -1
- package/dist/components/image-story/index.d.ts +1 -1
- package/dist/components/index/index.d.ts +4 -4
- package/dist/components/page/index.d.ts +1 -1
- package/dist/components/page/page.schema.dereffed.json +4 -2
- package/dist/components/page-wrapper/tokens.css +1 -1
- package/dist/components/presets.json +124 -32
- package/dist/components/section/index.d.ts +1 -1
- package/dist/components/section/section.schema.dereffed.json +4 -2
- package/dist/components/slider/slider.schema.dereffed.json +2 -1
- package/dist/tokens/themes.css +4 -4
- package/dist/tokens/tokens.css +1 -1
- package/dist/tokens/tokens.js +1 -1
- package/package.json +1 -1
- package/dist/EventDetailProps-ba701353.d.ts +0 -56
- package/dist/components/event-detail/event-detail.css +0 -19
- /package/dist/{ImageStoryProps-e853e1e7.d.ts → ImageStoryProps-03ff6d21.d.ts} +0 -0
|
@@ -37,6 +37,9 @@
|
|
|
37
37
|
"$ref": "http://schema.mydesignsystem.com/event-list-appointment.schema.json"
|
|
38
38
|
}
|
|
39
39
|
},
|
|
40
|
+
"downloads": {
|
|
41
|
+
"$ref": "http://schema.mydesignsystem.com/downloads.schema.json#/properties/downloads"
|
|
42
|
+
},
|
|
40
43
|
"description": {
|
|
41
44
|
"title": "Description",
|
|
42
45
|
"description": "Description of the event",
|
|
@@ -44,26 +47,26 @@
|
|
|
44
47
|
"format": "markdown"
|
|
45
48
|
},
|
|
46
49
|
"images": {
|
|
47
|
-
"
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
"
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
50
|
+
"$ref": "http://schema.mydesignsystem.com/gallery.schema.json#/properties/images"
|
|
51
|
+
},
|
|
52
|
+
"button": {
|
|
53
|
+
"title": "Button",
|
|
54
|
+
"description": "Button at the bottom of the event detail",
|
|
55
|
+
"type": "object",
|
|
56
|
+
"properties": {
|
|
57
|
+
"label": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"title": "Label",
|
|
60
|
+
"description": "Label of the button",
|
|
61
|
+
"examples": ["See all Events"]
|
|
62
|
+
},
|
|
63
|
+
"target": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"title": "Target",
|
|
66
|
+
"description": "URL the button links to",
|
|
67
|
+
"format": "uri"
|
|
64
68
|
}
|
|
65
|
-
}
|
|
66
|
-
"additionalProperties": false
|
|
69
|
+
}
|
|
67
70
|
}
|
|
68
71
|
},
|
|
69
72
|
"additionalProperties": false
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FC, PropsWithChildren } from "react";
|
|
2
|
-
import { EventDetailProps } from "../../EventDetailProps-
|
|
2
|
+
import { EventDetailProps } from "../../EventDetailProps-63f63768.js";
|
|
3
3
|
declare const EventDetail: FC<PropsWithChildren<EventDetailProps>>;
|
|
4
4
|
export type { EventDetailProps };
|
|
5
5
|
export { EventDetail };
|
|
@@ -1,20 +1,32 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
|
-
import { Headline } from '../headline/index.js';
|
|
4
|
-
import { Text } from '../text/index.js';
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
5
2
|
import { RichText } from '@kickstartds/base/lib/rich-text';
|
|
6
|
-
import { TagLabel } from '@kickstartds/base/lib/tag-label';
|
|
7
3
|
import { EventListEntry } from '../event-list-entry/index.js';
|
|
8
|
-
import '
|
|
4
|
+
import { Section } from '../section/index.js';
|
|
5
|
+
import { EventHeader } from '../event-header/index.js';
|
|
6
|
+
import { Gallery } from '../gallery/index.js';
|
|
7
|
+
import { Downloads } from '../downloads/index.js';
|
|
9
8
|
import 'react';
|
|
10
|
-
import 'markdown-to-jsx';
|
|
11
|
-
import '@kickstartds/base/lib/headline';
|
|
12
9
|
import '@kickstartds/base/lib/icon';
|
|
13
10
|
import '../event-list-appointment/index.js';
|
|
14
|
-
import '
|
|
15
|
-
import '@kickstartds/
|
|
11
|
+
import 'classnames';
|
|
12
|
+
import '@kickstartds/core/lib/react';
|
|
13
|
+
import '@kickstartds/base/lib/section';
|
|
14
|
+
import '../section/js/Section.client.js';
|
|
15
|
+
import '@kickstartds/core/lib/component';
|
|
16
|
+
import '../headline/index.js';
|
|
17
|
+
import 'markdown-to-jsx';
|
|
18
|
+
import '@kickstartds/base/lib/headline';
|
|
19
|
+
import '../text/index.js';
|
|
20
|
+
import '@kickstartds/base/lib/tag-label';
|
|
21
|
+
import '@kickstartds/base/lib/text-media';
|
|
22
|
+
import '@kickstartds/base/lib/picture';
|
|
16
23
|
|
|
17
|
-
const EventDetail = ({ title, categories, intro,
|
|
24
|
+
const EventDetail = ({ title, categories, appointments, description, intro, images, downloads, }) => (jsxs(Fragment, { children: [jsx(Section, { width: "narrow", spaceAfter: "none", children: jsx(EventHeader, { title: title, categories: categories, intro: intro }) }), appointments && appointments.length > 0 && (jsx(Section, { width: "narrow", content: { mode: "list" }, children: appointments.map((appointment, index) => (jsx(EventListEntry, { ...appointment }, index))) })), description && (jsx(Section, { width: "narrow", spaceBefore: "none", children: jsx(RichText, { className: "dsa-event__description", text: description }) })), jsx(Section, { spaceBefore: "none", children: jsx(Gallery, { images: images, aspectRatio: "wide", layout: "smallTiles", lightbox: true }) }), downloads && downloads.length > 0 && (jsx(Section, { width: "narrow", spaceBefore: "none", spaceAfter: "none", children: jsx(Downloads, { downloads: downloads }) })), jsx(Section, { width: "narrow", buttons: [
|
|
25
|
+
{
|
|
26
|
+
label: "See all Events",
|
|
27
|
+
target: "/#",
|
|
28
|
+
},
|
|
29
|
+
] })] }));
|
|
18
30
|
EventDetail.displayName = "EventDetail";
|
|
19
31
|
|
|
20
32
|
export { EventDetail };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "http://schema.mydesignsystem.com/event-header.schema.json",
|
|
4
|
+
"title": "Event Header",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"title": {
|
|
8
|
+
"title": "Title",
|
|
9
|
+
"description": "Title of the event",
|
|
10
|
+
"type": "string"
|
|
11
|
+
},
|
|
12
|
+
"categories": {
|
|
13
|
+
"title": "Categories",
|
|
14
|
+
"description": "Categories associated with the event",
|
|
15
|
+
"type": "array",
|
|
16
|
+
"items": {
|
|
17
|
+
"type": "object",
|
|
18
|
+
"properties": {
|
|
19
|
+
"label": {
|
|
20
|
+
"title": "Label",
|
|
21
|
+
"description": "Label of the category",
|
|
22
|
+
"type": "string"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"additionalProperties": false
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"intro": {
|
|
29
|
+
"title": "Intro",
|
|
30
|
+
"description": "Introductory text for the event",
|
|
31
|
+
"type": "string"
|
|
32
|
+
},
|
|
33
|
+
"type": {
|
|
34
|
+
"const": "event-header"
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"additionalProperties": false
|
|
38
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "http://schema.mydesignsystem.com/event-header.schema.json",
|
|
4
|
+
"title": "Event Header",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"title": {
|
|
8
|
+
"title": "Title",
|
|
9
|
+
"description": "Title of the event",
|
|
10
|
+
"type": "string"
|
|
11
|
+
},
|
|
12
|
+
"categories": {
|
|
13
|
+
"title": "Categories",
|
|
14
|
+
"description": "Categories associated with the event",
|
|
15
|
+
"type": "array",
|
|
16
|
+
"items": {
|
|
17
|
+
"type": "object",
|
|
18
|
+
"properties": {
|
|
19
|
+
"label": {
|
|
20
|
+
"title": "Label",
|
|
21
|
+
"description": "Label of the category",
|
|
22
|
+
"type": "string"
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"intro": {
|
|
28
|
+
"title": "Intro",
|
|
29
|
+
"description": "Introductory text for the event",
|
|
30
|
+
"type": "string"
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"additionalProperties": false
|
|
34
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/// <reference types="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
|
+
* Title of the event
|
|
10
|
+
*/
|
|
11
|
+
type Title = string;
|
|
12
|
+
/**
|
|
13
|
+
* Label of the category
|
|
14
|
+
*/
|
|
15
|
+
type Label = string;
|
|
16
|
+
/**
|
|
17
|
+
* Categories associated with the event
|
|
18
|
+
*/
|
|
19
|
+
type Categories = {
|
|
20
|
+
label?: Label;
|
|
21
|
+
}[];
|
|
22
|
+
/**
|
|
23
|
+
* Introductory text for the event
|
|
24
|
+
*/
|
|
25
|
+
type Intro = string;
|
|
26
|
+
interface EventHeaderProps {
|
|
27
|
+
title?: Title;
|
|
28
|
+
categories?: Categories;
|
|
29
|
+
intro?: Intro;
|
|
30
|
+
}
|
|
31
|
+
declare const EventHeaderContextDefault: import("react").ForwardRefExoticComponent<EventHeaderProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
32
|
+
declare const EventHeaderContext: import("react").Context<import("react").ForwardRefExoticComponent<EventHeaderProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
33
|
+
declare const EventHeader: import("react").ForwardRefExoticComponent<EventHeaderProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
34
|
+
export type { EventHeaderProps };
|
|
35
|
+
export { EventHeaderContextDefault, EventHeaderContext, EventHeader };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import "./event-header.css";
|
|
2
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { forwardRef, createContext, useContext } from 'react';
|
|
4
|
+
import { Headline } from '../headline/index.js';
|
|
5
|
+
import { Text } from '../text/index.js';
|
|
6
|
+
import { TagLabel } from '@kickstartds/base/lib/tag-label';
|
|
7
|
+
import 'classnames';
|
|
8
|
+
import 'markdown-to-jsx';
|
|
9
|
+
import '@kickstartds/base/lib/headline';
|
|
10
|
+
import '@kickstartds/base/lib/rich-text';
|
|
11
|
+
|
|
12
|
+
const EventHeaderContextDefault = forwardRef(({ title, categories, intro }, ref) => (jsxs("div", { className: "dsa-event-header", ref: ref, children: [categories && categories.length > 0 && (jsx("div", { className: "dsa-event-header__categories", children: categories.map((category, index) => (jsx(TagLabel, { className: "dsa-event__category", label: category?.label }, index))) })), jsx(Headline, { text: title, level: "h1" }), intro && jsx(Text, { highlightText: true, text: intro })] })));
|
|
13
|
+
const EventHeaderContext = createContext(EventHeaderContextDefault);
|
|
14
|
+
const EventHeader = forwardRef((props, ref) => {
|
|
15
|
+
const Component = useContext(EventHeaderContext);
|
|
16
|
+
return jsx(Component, { ...props, ref: ref });
|
|
17
|
+
});
|
|
18
|
+
EventHeader.displayName = "EventHeader";
|
|
19
|
+
|
|
20
|
+
export { EventHeader, EventHeaderContext, EventHeaderContextDefault };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
.dsa-event-list-appointment {
|
|
2
|
+
--g-link--text-decoration: none;
|
|
3
|
+
--g-link--text-decoration-hover: none;
|
|
4
|
+
--g-link--color: var(--ks-text-color-interface-interactive);
|
|
5
|
+
--g-link--color-hover: var(--ks-text-color-interface-interactive);
|
|
6
|
+
--g-link--border-radius: var(--ks-border-radius-control);
|
|
7
|
+
--g-link--background: var(--ks-background-color-default);
|
|
8
|
+
--g-link--background-hover: var(--ks-background-color-default);
|
|
9
|
+
display: flex;
|
|
10
|
+
flex-direction: row;
|
|
11
|
+
flex-wrap: wrap;
|
|
12
|
+
justify-content: space-between;
|
|
13
|
+
gap: var(--ks-spacing-inline-s);
|
|
14
|
+
padding: var(--ks-spacing-inset-s);
|
|
15
|
+
border: var(--ks-border-width-default) solid var(--ks-border-color-interface-interactive);
|
|
16
|
+
flex-grow: 0;
|
|
17
|
+
}
|
|
18
|
+
.dsa-event-list-appointment:hover {
|
|
19
|
+
border-color: var(--ks-border-color-interface-interactive-hover);
|
|
20
|
+
}
|
|
21
|
+
.dsa-event-list-appointment__info {
|
|
22
|
+
display: flex;
|
|
23
|
+
gap: var(--ks-spacing-xxs);
|
|
24
|
+
font: var(--ks-font-interface-s);
|
|
25
|
+
text-decoration: none;
|
|
26
|
+
align-items: center;
|
|
27
|
+
}
|
|
28
|
+
.dsa-event-list-appointment__infos {
|
|
29
|
+
flex-direction: column;
|
|
30
|
+
display: flex;
|
|
31
|
+
gap: var(--ks-spacing-stack-xs);
|
|
32
|
+
}
|
|
33
|
+
.dsa-event-list-appointment__label {
|
|
34
|
+
display: flex;
|
|
35
|
+
align-items: center;
|
|
36
|
+
color: var(--ks-text-color-primary);
|
|
37
|
+
font: var(--ks-font-interface-s);
|
|
38
|
+
align-self: flex-end;
|
|
39
|
+
font-weight: var(--ks-font-weight-semi-bold);
|
|
40
|
+
}
|
|
41
|
+
.dsa-event-list-appointment__label .icon {
|
|
42
|
+
width: 1.75em;
|
|
43
|
+
height: 1.75em;
|
|
44
|
+
}
|
|
45
|
+
.dsa-event-list-appointment__icon {
|
|
46
|
+
color: var(--ks-text-color-primary);
|
|
47
|
+
width: 1.75em;
|
|
48
|
+
height: 1.75em;
|
|
49
|
+
}
|
|
50
|
+
.dsa-event-list-appointment .l-container--rich-text {
|
|
51
|
+
container-type: normal;
|
|
52
|
+
}
|
|
@@ -20,6 +20,25 @@
|
|
|
20
20
|
"description": "Label for the call to action button",
|
|
21
21
|
"type": "string"
|
|
22
22
|
},
|
|
23
|
+
"href": {
|
|
24
|
+
"title": "Href",
|
|
25
|
+
"description": "URL for the call to action button",
|
|
26
|
+
"type": "string",
|
|
27
|
+
"format": "uri",
|
|
28
|
+
"default": "#"
|
|
29
|
+
},
|
|
30
|
+
"newTab": {
|
|
31
|
+
"title": "Open in New Tab",
|
|
32
|
+
"description": "Whether the link should open in a new tab",
|
|
33
|
+
"type": "boolean",
|
|
34
|
+
"default": true
|
|
35
|
+
},
|
|
36
|
+
"ariaLabel": {
|
|
37
|
+
"title": "Aria Label",
|
|
38
|
+
"description": "Aria label for the link",
|
|
39
|
+
"type": "string",
|
|
40
|
+
"default": "Event Appointment"
|
|
41
|
+
},
|
|
23
42
|
"type": {
|
|
24
43
|
"const": "event-list-appointment"
|
|
25
44
|
}
|
|
@@ -19,6 +19,25 @@
|
|
|
19
19
|
"title": "CTA Label",
|
|
20
20
|
"description": "Label for the call to action button",
|
|
21
21
|
"type": "string"
|
|
22
|
+
},
|
|
23
|
+
"href": {
|
|
24
|
+
"title": "Href",
|
|
25
|
+
"description": "URL for the call to action button",
|
|
26
|
+
"type": "string",
|
|
27
|
+
"format": "uri",
|
|
28
|
+
"default": "#"
|
|
29
|
+
},
|
|
30
|
+
"newTab": {
|
|
31
|
+
"title": "Open in New Tab",
|
|
32
|
+
"description": "Whether the link should open in a new tab",
|
|
33
|
+
"type": "boolean",
|
|
34
|
+
"default": true
|
|
35
|
+
},
|
|
36
|
+
"ariaLabel": {
|
|
37
|
+
"title": "Aria Label",
|
|
38
|
+
"description": "Aria label for the link",
|
|
39
|
+
"type": "string",
|
|
40
|
+
"default": "Event Appointment"
|
|
22
41
|
}
|
|
23
42
|
},
|
|
24
43
|
"additionalProperties": false
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { EventListAppointmentProps } from "../../EventListAppointmentProps-
|
|
3
|
-
declare const EventListAppointmentContextDefault: import("react").ForwardRefExoticComponent<EventListAppointmentProps & import("react").RefAttributes<
|
|
4
|
-
declare const EventListAppointmentContext: import("react").Context<import("react").ForwardRefExoticComponent<EventListAppointmentProps & import("react").RefAttributes<
|
|
5
|
-
declare const EventListAppointment: import("react").ForwardRefExoticComponent<EventListAppointmentProps & import("react").RefAttributes<
|
|
2
|
+
import { EventListAppointmentProps } from "../../EventListAppointmentProps-da54c3b9.js";
|
|
3
|
+
declare const EventListAppointmentContextDefault: import("react").ForwardRefExoticComponent<EventListAppointmentProps & import("react").RefAttributes<HTMLAnchorElement>>;
|
|
4
|
+
declare const EventListAppointmentContext: import("react").Context<import("react").ForwardRefExoticComponent<EventListAppointmentProps & import("react").RefAttributes<HTMLAnchorElement>>>;
|
|
5
|
+
declare const EventListAppointment: import("react").ForwardRefExoticComponent<EventListAppointmentProps & import("react").RefAttributes<HTMLAnchorElement>>;
|
|
6
6
|
export type { EventListAppointmentProps };
|
|
7
7
|
export { EventListAppointmentContextDefault, EventListAppointmentContext, EventListAppointment };
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
+
import "./event-list-appointment.css";
|
|
1
2
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
3
|
import { forwardRef, createContext, useContext } from 'react';
|
|
3
|
-
import { RichText } from '@kickstartds/base/lib/rich-text';
|
|
4
4
|
import { Icon } from '@kickstartds/base/lib/icon';
|
|
5
|
-
import { Button } from '../button/index.js';
|
|
6
|
-
import 'classnames';
|
|
7
|
-
import '@kickstartds/base/lib/button';
|
|
8
5
|
|
|
9
|
-
const EventListAppointmentContextDefault = forwardRef(({ date, time, label,
|
|
6
|
+
const EventListAppointmentContextDefault = forwardRef(({ date, time, label, href, newTab, ariaLabel }, ref) => (jsxs("a", { className: "dsa-event-list-appointment", target: newTab ? "_blank" : "_self", "aria-label": ariaLabel, href: href, ref: ref, children: [jsxs("span", { className: "dsa-event-list-appointment__infos", children: [date && (jsxs("span", { className: "dsa-event-list-appointment__info", children: [jsx(Icon, { className: "dsa-event-list-appointment__icon", "aria-label": "Date", icon: "date" }), date] })), time && (jsxs("span", { className: "dsa-event-list-appointment__info", children: [jsx(Icon, { className: "dsa-event-list-appointment__icon", "aria-label": "Time", icon: "time" }), time] }))] }), jsxs("span", { className: "dsa-event-list-appointment__label", children: [label, jsx(Icon, { icon: "chevron-right" })] })] })));
|
|
10
7
|
const EventListAppointmentContext = createContext(EventListAppointmentContextDefault);
|
|
11
8
|
const EventListAppointment = forwardRef((props, ref) => {
|
|
12
9
|
const Component = useContext(EventListAppointmentContext);
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
.dsa-event-list-entry {
|
|
2
|
+
--dsa-event-list-entry__icon--size: calc(var(--ks-font-size-copy-m) * var(--ks-line-height-copy-m));
|
|
3
|
+
flex-wrap: wrap;
|
|
4
|
+
display: flex;
|
|
5
|
+
flex-direction: row;
|
|
6
|
+
justify-content: space-between;
|
|
7
|
+
gap: var(--ks-spacing-stack-s) var(--ks-spacing-inline-m);
|
|
8
|
+
background-color: var(--ks-background-color-accent);
|
|
9
|
+
padding: var(--ks-spacing-inset-m);
|
|
10
|
+
border-radius: var(--ks-border-radius-surface);
|
|
11
|
+
}
|
|
12
|
+
.dsa-event-list-entry__icon {
|
|
13
|
+
width: 2rem;
|
|
14
|
+
height: 2rem;
|
|
15
|
+
}
|
|
16
|
+
.dsa-event-list-entry__row {
|
|
17
|
+
display: flex;
|
|
18
|
+
flex-direction: row;
|
|
19
|
+
gap: var(--ks-spacing-inline-m);
|
|
20
|
+
flex-wrap: wrap;
|
|
21
|
+
flex-shrink: 0;
|
|
22
|
+
flex-grow: 1;
|
|
23
|
+
flex-basis: 200px;
|
|
24
|
+
}
|
|
25
|
+
.dsa-event-list-entry__icon {
|
|
26
|
+
color: var(--ks-text-color-primary);
|
|
27
|
+
width: var(--dsa-event-list-entry__icon--size);
|
|
28
|
+
height: var(--dsa-event-list-entry__icon--size);
|
|
29
|
+
}
|
|
30
|
+
.dsa-event-list-entry__item {
|
|
31
|
+
display: flex;
|
|
32
|
+
gap: var(--ks-spacing-stack-xs);
|
|
33
|
+
}
|
|
34
|
+
.dsa-event-list-entry__appointments {
|
|
35
|
+
display: flex;
|
|
36
|
+
flex-direction: column;
|
|
37
|
+
gap: var(--ks-spacing-stack-s);
|
|
38
|
+
flex-grow: 1;
|
|
39
|
+
}
|
|
40
|
+
.dsa-event-list-entry .l-container--rich-text {
|
|
41
|
+
container-type: normal;
|
|
42
|
+
}
|
|
@@ -30,6 +30,25 @@
|
|
|
30
30
|
"description": "Label for the call to action button",
|
|
31
31
|
"type": "string"
|
|
32
32
|
},
|
|
33
|
+
"href": {
|
|
34
|
+
"title": "Href",
|
|
35
|
+
"description": "URL for the call to action button",
|
|
36
|
+
"type": "string",
|
|
37
|
+
"format": "uri",
|
|
38
|
+
"default": "#"
|
|
39
|
+
},
|
|
40
|
+
"newTab": {
|
|
41
|
+
"title": "Open in New Tab",
|
|
42
|
+
"description": "Whether the link should open in a new tab",
|
|
43
|
+
"type": "boolean",
|
|
44
|
+
"default": true
|
|
45
|
+
},
|
|
46
|
+
"ariaLabel": {
|
|
47
|
+
"title": "Aria Label",
|
|
48
|
+
"description": "Aria label for the link",
|
|
49
|
+
"type": "string",
|
|
50
|
+
"default": "Event Appointment"
|
|
51
|
+
},
|
|
33
52
|
"type": {
|
|
34
53
|
"const": "event-list-appointment"
|
|
35
54
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
6
6
|
* and run json-schema-to-typescript to regenerate this file.
|
|
7
7
|
*/
|
|
8
|
-
import { EventListAppointmentProps } from "../../EventListAppointmentProps-
|
|
8
|
+
import { EventListAppointmentProps } from "../../EventListAppointmentProps-da54c3b9.js";
|
|
9
9
|
/**
|
|
10
10
|
* List of dates of the event
|
|
11
11
|
*/
|
|
@@ -1,13 +1,11 @@
|
|
|
1
|
+
import "./event-list-entry.css";
|
|
2
|
+
import { forwardRef, createElement, createContext, useContext } from 'react';
|
|
1
3
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { forwardRef, createContext, useContext } from 'react';
|
|
3
4
|
import { RichText } from '@kickstartds/base/lib/rich-text';
|
|
4
5
|
import { Icon } from '@kickstartds/base/lib/icon';
|
|
5
6
|
import { EventListAppointment } from '../event-list-appointment/index.js';
|
|
6
|
-
import '../button/index.js';
|
|
7
|
-
import 'classnames';
|
|
8
|
-
import '@kickstartds/base/lib/button';
|
|
9
7
|
|
|
10
|
-
const EventListEntryContextDefault = forwardRef(({ address, dates, ...rest }, ref) => (jsxs("div", { className: "dsa-event-list-entry", ...rest, ref: ref, children: [address && (jsx("div", { className: "dsa-event-list-entry__row", children: jsxs("address", { className: "dsa-event-list-entry__item dsa-event-list-entry__address", children: [jsx(Icon, { className: "dsa-event-list-entry__icon", icon: "map-pin" }), jsx(RichText, { text: address })] }) })), dates && dates.length > 0 && (jsx("div", { className: "dsa-event-list-entry__appointments", children: dates.map((item, index) => (
|
|
8
|
+
const EventListEntryContextDefault = forwardRef(({ address, dates, ...rest }, ref) => (jsxs("div", { className: "dsa-event-list-entry", ...rest, ref: ref, children: [address && (jsx("div", { className: "dsa-event-list-entry__row", children: jsxs("address", { className: "dsa-event-list-entry__item dsa-event-list-entry__address", children: [jsx(Icon, { "aria-label": "Address", className: "dsa-event-list-entry__icon", icon: "map-pin" }), jsx(RichText, { text: address })] }) })), dates && dates.length > 0 && (jsx("div", { className: "dsa-event-list-entry__appointments", children: dates.map((item, index) => (createElement(EventListAppointment, { ...item, key: index }))) }))] })));
|
|
11
9
|
const EventListEntryContext = createContext(EventListEntryContextDefault);
|
|
12
10
|
const EventListEntry = forwardRef((props, ref) => {
|
|
13
11
|
const Component = useContext(EventListEntryContext);
|
|
@@ -43,7 +43,8 @@
|
|
|
43
43
|
"type": "string",
|
|
44
44
|
"title": "Layout",
|
|
45
45
|
"description": "The layout of the gallery images",
|
|
46
|
-
"enum": ["stack", "smallTiles", "largeTiles"]
|
|
46
|
+
"enum": ["stack", "smallTiles", "largeTiles"],
|
|
47
|
+
"default": "smallTiles"
|
|
47
48
|
},
|
|
48
49
|
"aspectRatio": {
|
|
49
50
|
"type": "string",
|
|
@@ -4,7 +4,7 @@ import { forwardRef, useMemo, createContext, useContext } from 'react';
|
|
|
4
4
|
import classnames from 'classnames';
|
|
5
5
|
import { TextMedia } from '@kickstartds/base/lib/text-media';
|
|
6
6
|
|
|
7
|
-
const GalleryContextDefault = forwardRef(({ lightbox = false, layout = "
|
|
7
|
+
const GalleryContextDefault = forwardRef(({ lightbox = false, layout = "smallTiles", aspectRatio = "square", images = [], ...rest }, ref) => {
|
|
8
8
|
const galleryId = useMemo(() => `gallery-${Date.now()}`, []);
|
|
9
9
|
return (jsx("div", { ...rest, ref: ref, className: `dsa-gallery`, children: jsx("div", { className: classnames(`dsa-gallery__grid`, `dsa-gallery__grid--${layout === "smallTiles"
|
|
10
10
|
? "small-tiles"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { HTMLAttributes } from "react";
|
|
3
|
-
import { ImageStoryProps } from "../../ImageStoryProps-
|
|
3
|
+
import { ImageStoryProps } from "../../ImageStoryProps-03ff6d21.js";
|
|
4
4
|
declare const ImageStoryContextDefault: import("react").ForwardRefExoticComponent<ImageStoryProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
|
|
5
5
|
declare const ImageStoryContext: import("react").Context<import("react").ForwardRefExoticComponent<ImageStoryProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>>;
|
|
6
6
|
declare const ImageStory: import("react").ForwardRefExoticComponent<ImageStoryProps & HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -29,8 +29,8 @@ interface SettingsProps {
|
|
|
29
29
|
seo: SeoProps;
|
|
30
30
|
iconSprite?: IconSprite;
|
|
31
31
|
}
|
|
32
|
-
export * from "../../BlogPostProps-
|
|
33
|
-
export * from "../../BlogOverviewProps-
|
|
34
|
-
export * from "../../PageProps-
|
|
32
|
+
export * from "../../BlogPostProps-d9decb7c.js";
|
|
33
|
+
export * from "../../BlogOverviewProps-7caa223c.js";
|
|
34
|
+
export * from "../../PageProps-7caa223c.js";
|
|
35
35
|
export { IconSprite, SettingsProps };
|
|
36
|
-
export * from "../../EventDetailProps-
|
|
36
|
+
export * from "../../EventDetailProps-63f63768.js";
|
|
@@ -695,7 +695,8 @@
|
|
|
695
695
|
"stack",
|
|
696
696
|
"smallTiles",
|
|
697
697
|
"largeTiles"
|
|
698
|
-
]
|
|
698
|
+
],
|
|
699
|
+
"default": "smallTiles"
|
|
699
700
|
},
|
|
700
701
|
"aspectRatio": {
|
|
701
702
|
"type": "string",
|
|
@@ -1907,7 +1908,8 @@
|
|
|
1907
1908
|
"stack",
|
|
1908
1909
|
"smallTiles",
|
|
1909
1910
|
"largeTiles"
|
|
1910
|
-
]
|
|
1911
|
+
],
|
|
1912
|
+
"default": "smallTiles"
|
|
1911
1913
|
},
|
|
1912
1914
|
"aspectRatio": {
|
|
1913
1915
|
"type": "string",
|