hr-design-system-handlebars 1.1.3 → 1.1.5
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/CHANGELOG.md +24 -0
- package/dist/assets/index.css +98 -55
- package/dist/assets/js/components/event/filtererDs.feature.js +42 -38
- package/dist/views/components/button/button_round_classes.hbs +8 -8
- package/dist/views/components/event/calendar/event_calendar_event_teaser.hbs +2 -2
- package/dist/views/components/geoTag/geoTag.hbs +1 -1
- package/dist/views/components/grid/grid_group_highlight.hbs +1 -1
- package/dist/views/components/grid/grid_group_tabbed.hbs +1 -1
- package/dist/views/components/grid/grid_group_wrapper_classes.hbs +1 -1
- package/dist/views/components/teaser/teaser_stage.hbs +1 -1
- package/package.json +1 -1
- package/src/assets/css/custom-utilities.css +46 -33
- package/src/stories/views/components/button/button_round_classes.hbs +8 -8
- package/src/stories/views/components/event/calendar/event_calendar_components.stories.mdx +1 -1
- package/src/stories/views/components/event/calendar/event_calendar_event_teaser.hbs +2 -2
- package/src/stories/views/components/event/filtererDs.feature.js +42 -38
- package/src/stories/views/components/geoTag/geoTag.hbs +1 -1
- package/src/stories/views/components/grid/grid_group_highlight.hbs +1 -1
- package/src/stories/views/components/grid/grid_group_tabbed.hbs +1 -1
- package/src/stories/views/components/grid/grid_group_wrapper_classes.hbs +1 -1
- package/src/stories/views/components/teaser/cluster/teaser_cluster.stories.mdx +10 -12
- package/src/stories/views/components/teaser/content_nav/teaser_content_nav.stories.mdx +4 -5
- package/src/stories/views/components/teaser/group_teaser/group.stories.mdx +51 -59
- package/src/stories/views/components/teaser/podcast/podcast.stories.mdx +26 -28
- package/src/stories/views/components/teaser/teaser_alternativ.stories.mdx +15 -6
- package/src/stories/views/components/teaser/teaser_alternativ_av.stories.mdx +1 -1
- package/src/stories/views/components/teaser/teaser_event_calendar.stories.mdx +1 -1
- package/src/stories/views/components/teaser/teaser_indextext.stories.mdx +26 -14
- package/src/stories/views/components/teaser/teaser_logic/teaser_logic.stories.mdx +17 -17
- package/src/stories/views/components/teaser/teaser_poster.stories.mdx +38 -19
- package/src/stories/views/components/teaser/teaser_stage.hbs +1 -1
- package/src/stories/views/components/teaser/teaser_standard.stories.mdx +40 -26
- package/src/stories/views/components/teaser/teaser_standard_av.stories.mdx +3 -3
- package/src/stories/views/components/teaser/teaser_standard_event.stories.mdx +3 -3
- package/tailwind.config.js +1 -0
|
@@ -1,19 +1,18 @@
|
|
|
1
|
-
import { ArgsTable, Meta, Story, Canvas, Preview } from
|
|
1
|
+
import { ArgsTable, Meta, Story, Canvas, Preview } from '@storybook/addon-docs'
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import teaserGroup100 from '../fixtures/teaser_group_100.json'
|
|
3
|
+
import groupTeaser from './group_teaser.hbs'
|
|
4
|
+
import groupTeaserAccented from './group_teaser_accented.hbs'
|
|
5
|
+
import teaserGroup100 from '../fixtures/teaser_group_100.json'
|
|
7
6
|
import teaserGroupRelatedContent100 from '../fixtures/teaser_group_related_content_100.json'
|
|
8
|
-
import teaserGroup100highlight from '../fixtures/teaser_group_100_highlight.json'
|
|
7
|
+
import teaserGroup100highlight from '../fixtures/teaser_group_100_highlight.json'
|
|
9
8
|
import teaserGroup100highlight2 from '../fixtures/teaser_group_100_highlight_2.json'
|
|
10
|
-
|
|
11
|
-
import teaserGroup100contentnav from '../fixtures/teaser_group_100_contentnav.json'
|
|
9
|
+
|
|
10
|
+
import teaserGroup100contentnav from '../fixtures/teaser_group_100_contentnav.json'
|
|
12
11
|
|
|
13
12
|
<Meta
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
title="Komponenten/Teaser/Gruppen"
|
|
14
|
+
argTypes={{
|
|
15
|
+
teaserSize: {
|
|
17
16
|
control: {
|
|
18
17
|
type: 'select',
|
|
19
18
|
options: ['100', '66', '50', '33', '25'],
|
|
@@ -25,69 +24,62 @@ import teaserGroup100contentnav from '../fixtures/teaser_group_100_contentnav.js
|
|
|
25
24
|
},
|
|
26
25
|
},
|
|
27
26
|
},
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
}}
|
|
28
|
+
parameters={{
|
|
30
29
|
layout: 'fullscreen',
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
<div class="grid grid-cols-12 py-6 bg-white sm:px-
|
|
30
|
+
}}
|
|
31
|
+
decorators={[
|
|
32
|
+
(Story) => {
|
|
33
|
+
return `<div class="grid my-5 grid-page">
|
|
34
|
+
<div class="grid grid-cols-12 py-6 bg-white sm:px-9.5 col-full sm:col-main gap-x-6 md:gap-y-14 gap-y-6">
|
|
36
35
|
${Story()}
|
|
37
36
|
</div>
|
|
38
37
|
</div>`
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
},
|
|
39
|
+
]}
|
|
41
40
|
/>
|
|
42
41
|
|
|
43
42
|
export const groupTeaserTemplate = ({ text, ...args }) => {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}
|
|
48
|
-
|
|
43
|
+
// You can either use a function to create DOM elements or use a plain html string!
|
|
44
|
+
// return `<div>${label}</div>`;
|
|
45
|
+
return groupTeaser({ text, ...args })
|
|
46
|
+
}
|
|
49
47
|
|
|
50
48
|
export const groupTeaserAccentedTemplate = ({ text, ...args }) => {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
49
|
+
// You can either use a function to create DOM elements or use a plain html string!
|
|
50
|
+
// return `<div>${label}</div>`;
|
|
51
|
+
return groupTeaserAccented({ text, ...args })
|
|
52
|
+
}
|
|
55
53
|
|
|
56
54
|
# Button
|
|
57
55
|
|
|
58
56
|
Ein toller Einleitungstext für unsere `Teaser Gruppen` Komponente:
|
|
59
57
|
|
|
60
58
|
<Preview withToolbar>
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
<Story
|
|
86
|
-
name="100% Gruppe mit Related Content"
|
|
87
|
-
args={teaserGroupRelatedContent100.includeModel}
|
|
88
|
-
>
|
|
89
|
-
{groupTeaserTemplate.bind({})}
|
|
90
|
-
</Story>
|
|
59
|
+
<Story name="100% Gruppe mit Überschrift" args={teaserGroup100.includeModel}>
|
|
60
|
+
{groupTeaserTemplate.bind({})}
|
|
61
|
+
</Story>
|
|
62
|
+
<Story
|
|
63
|
+
name="100% Gruppe mit Überschrift Highlight 1"
|
|
64
|
+
args={teaserGroup100highlight.includeModel}
|
|
65
|
+
>
|
|
66
|
+
{groupTeaserTemplate.bind({})}
|
|
67
|
+
</Story>
|
|
68
|
+
<Story
|
|
69
|
+
name="100% Gruppe mit Überschrift Highlight 2"
|
|
70
|
+
args={teaserGroup100highlight2.includeModel}
|
|
71
|
+
>
|
|
72
|
+
{groupTeaserTemplate.bind({})}
|
|
73
|
+
</Story>
|
|
74
|
+
<Story
|
|
75
|
+
name="100% Gruppe mit Content Navigation Aufklapp"
|
|
76
|
+
args={teaserGroup100contentnav.includeModel}
|
|
77
|
+
>
|
|
78
|
+
{groupTeaserAccentedTemplate.bind({})}
|
|
79
|
+
</Story>
|
|
80
|
+
<Story name="100% Gruppe mit Related Content" args={teaserGroupRelatedContent100.includeModel}>
|
|
81
|
+
{groupTeaserTemplate.bind({})}
|
|
82
|
+
</Story>
|
|
91
83
|
</Preview>
|
|
92
84
|
|
|
93
85
|
<ArgsTable story="main" />
|
|
@@ -7,27 +7,26 @@ import episodeJson50 from '../fixtures/teaser_podcast_50.json'
|
|
|
7
7
|
import playlistJson100 from '../fixtures/teaser_podcast_playlist.json'
|
|
8
8
|
import playlistJson50 from '../fixtures/teaser_podcast_playlist_50.json'
|
|
9
9
|
|
|
10
|
-
<Meta
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
10
|
+
<Meta
|
|
11
|
+
title="Komponenten/Teaser/Podcast"
|
|
12
|
+
parameters={{
|
|
13
|
+
chromatic: {
|
|
14
|
+
viewports: [360, 768, 1024],
|
|
15
|
+
diffThreshold: 0.5,
|
|
16
|
+
},
|
|
17
|
+
layout: 'fullscreen',
|
|
18
|
+
}}
|
|
19
|
+
argTypes={{}}
|
|
20
|
+
decorators={[
|
|
21
21
|
(Story) => {
|
|
22
22
|
return `<div class="grid grid-page">
|
|
23
|
-
<div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-
|
|
23
|
+
<div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
|
|
24
24
|
${Story()}
|
|
25
25
|
</div>
|
|
26
26
|
</div>`
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
/>
|
|
27
|
+
},
|
|
28
|
+
]}
|
|
29
|
+
/>
|
|
31
30
|
|
|
32
31
|
export const episodeTemplate = (args, { globals: { customConditionalToolbar } }) => {
|
|
33
32
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
@@ -45,18 +44,17 @@ export const playlistTemplate = (args, { globals: { customConditionalToolbar } }
|
|
|
45
44
|
return podcastPlaylist({ brand, ...args })
|
|
46
45
|
}
|
|
47
46
|
|
|
48
|
-
|
|
49
|
-
<
|
|
50
|
-
|
|
51
|
-
|
|
47
|
+
<Preview withToolbar>
|
|
48
|
+
<Story name="100% Episode Player" args={episodeJson.logicItem.includeModel}>
|
|
49
|
+
{episodeTemplate.bind({})}
|
|
50
|
+
</Story>
|
|
51
|
+
<Story name="50% Episode Player" args={episodeJson50.logicItem.includeModel}>
|
|
52
|
+
{episodeTemplate.bind({})}
|
|
52
53
|
</Story>
|
|
53
|
-
<Story
|
|
54
|
-
{
|
|
55
|
-
</Story>
|
|
56
|
-
<Story name="100% Channel Player" args={playlistJson100.logicItem.includeModel}>
|
|
57
|
-
{playlistTemplate.bind({})}
|
|
54
|
+
<Story name="100% Channel Player" args={playlistJson100.logicItem.includeModel}>
|
|
55
|
+
{playlistTemplate.bind({})}
|
|
58
56
|
</Story>
|
|
59
|
-
|
|
60
|
-
{playlistTemplate.bind({})}
|
|
57
|
+
<Story name="50% Channel Player" args={playlistJson50.logicItem.includeModel}>
|
|
58
|
+
{playlistTemplate.bind({})}
|
|
61
59
|
</Story>
|
|
62
|
-
</Preview>
|
|
60
|
+
</Preview>
|
|
@@ -21,7 +21,7 @@ import teaser50Download from './fixtures/teaser_alternative_50_serif_download.js
|
|
|
21
21
|
layout: 'fullscreen',
|
|
22
22
|
chromatic: {
|
|
23
23
|
viewports: [360, 1024],
|
|
24
|
-
diffThreshold: 0.5
|
|
24
|
+
diffThreshold: 0.5,
|
|
25
25
|
},
|
|
26
26
|
}}
|
|
27
27
|
argTypes={{
|
|
@@ -40,7 +40,7 @@ import teaser50Download from './fixtures/teaser_alternative_50_serif_download.js
|
|
|
40
40
|
}}
|
|
41
41
|
decorators={[
|
|
42
42
|
(Story) => {
|
|
43
|
-
return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-
|
|
43
|
+
return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
|
|
44
44
|
${Story()}
|
|
45
45
|
</div></div>`
|
|
46
46
|
},
|
|
@@ -123,10 +123,16 @@ Die Alternativ-Teaser-Komponente wird in handlebars wie folgt eingebaut:
|
|
|
123
123
|
<Story name="Alternativ Hero mit Label" args={heroTeaserWithLabel.logicItem.includeModel}>
|
|
124
124
|
{Template.bind({})}
|
|
125
125
|
</Story>
|
|
126
|
-
<Story
|
|
126
|
+
<Story
|
|
127
|
+
name="Alternativ Hero mit externen Link Dokument"
|
|
128
|
+
args={heroTeaserLink.logicItem.includeModel}
|
|
129
|
+
>
|
|
127
130
|
{Template.bind({})}
|
|
128
131
|
</Story>
|
|
129
|
-
<Story
|
|
132
|
+
<Story
|
|
133
|
+
name="Alternativ Hero mit Sendungsdokument"
|
|
134
|
+
args={heroTeaserProgram.logicItem.includeModel}
|
|
135
|
+
>
|
|
130
136
|
{Template.bind({})}
|
|
131
137
|
</Story>
|
|
132
138
|
<b>Alternativ 100%</b>
|
|
@@ -141,10 +147,13 @@ Die Alternativ-Teaser-Komponente wird in handlebars wie folgt eingebaut:
|
|
|
141
147
|
<Story name="Alternativ 50" args={teaser50.logicItem.includeModel}>
|
|
142
148
|
{Template.bind({})}
|
|
143
149
|
</Story>
|
|
144
|
-
<Story
|
|
150
|
+
<Story
|
|
151
|
+
name="Alternativ 50 ohne Teaserbild"
|
|
152
|
+
args={teaser50WithoutTeaserImage.logicItem.includeModel}
|
|
153
|
+
>
|
|
145
154
|
{Template.bind({})}
|
|
146
155
|
</Story>
|
|
147
|
-
|
|
156
|
+
<b>Alternativ 50% mit externem Link</b>
|
|
148
157
|
<Story name="Alternativ 50 mit externem Link" args={teaser50Link.logicItem.includeModel}>
|
|
149
158
|
{Template.bind({})}
|
|
150
159
|
</Story>
|
|
@@ -37,7 +37,7 @@ import teaser50_live from './fixtures/teaser_alternative_50_serif_live.json'
|
|
|
37
37
|
}}
|
|
38
38
|
decorators={[
|
|
39
39
|
(Story) => {
|
|
40
|
-
return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-
|
|
40
|
+
return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
|
|
41
41
|
${Story()}
|
|
42
42
|
</div></div>`
|
|
43
43
|
},
|
|
@@ -24,7 +24,7 @@ import teaserEventCalendarWithNoFutureEventsData from './fixtures/teaser_event_c
|
|
|
24
24
|
}}
|
|
25
25
|
decorators={[
|
|
26
26
|
(Story) => {
|
|
27
|
-
return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-
|
|
27
|
+
return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
|
|
28
28
|
${Story()}
|
|
29
29
|
</div></div>`
|
|
30
30
|
},
|
|
@@ -38,7 +38,7 @@ import dataTeserIndextext50Accented from './fixtures/teaser_indextext_50_accente
|
|
|
38
38
|
}}
|
|
39
39
|
decorators={[
|
|
40
40
|
(Story) => {
|
|
41
|
-
return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-
|
|
41
|
+
return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
|
|
42
42
|
${Story()}
|
|
43
43
|
</div></div>`
|
|
44
44
|
},
|
|
@@ -53,47 +53,59 @@ export const Template = (args, { globals: { customConditionalToolbar } }) => {
|
|
|
53
53
|
return teaser({ brand, ...args })
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
# Indextext-Teaser
|
|
56
|
+
# Indextext-Teaser
|
|
57
57
|
|
|
58
58
|
## Beschreibung
|
|
59
59
|
|
|
60
|
-
|
|
61
60
|
## Props
|
|
62
61
|
|
|
63
62
|
Die Indextext-Teaser-Komponente benötigt die folgenden json-Daten (enthalten im Teaser-Json im Objekt <b>logicItem.includeModel</b>):
|
|
64
63
|
|
|
65
64
|
<ul>
|
|
66
|
-
<li
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
<li
|
|
65
|
+
<li>
|
|
66
|
+
<b>title</b>
|
|
67
|
+
</li>
|
|
68
|
+
<li>
|
|
69
|
+
<b>shorttext</b>
|
|
70
|
+
</li>
|
|
71
|
+
<li>
|
|
72
|
+
<b>teaserSize</b>
|
|
73
|
+
</li>
|
|
74
|
+
<li>
|
|
75
|
+
<b>teaserType</b>
|
|
76
|
+
</li>
|
|
70
77
|
</ul>
|
|
71
78
|
|
|
72
|
-
|
|
73
79
|
## Verwendung
|
|
74
80
|
|
|
75
81
|
Die Indextext-Teaser-Komponente wird in handlebars wie folgt eingebaut:
|
|
76
82
|
|
|
77
83
|
```html
|
|
78
|
-
{{> components/teaser/teaser_indextext}}
|
|
84
|
+
{{> components/teaser/teaser_indextext}}
|
|
79
85
|
```
|
|
80
86
|
|
|
81
|
-
|
|
82
87
|
<Preview withToolbar>
|
|
83
|
-
<Story
|
|
88
|
+
<Story
|
|
89
|
+
name="Text mit Hintergrund 100"
|
|
90
|
+
args={dataTeserIndextext100Accented.logicItem.includeModel}
|
|
91
|
+
>
|
|
84
92
|
{Template.bind({})}
|
|
85
93
|
</Story>
|
|
86
94
|
<Story name="Text mit Box 100" args={dataTeserIndextext100Boxed.logicItem.includeModel}>
|
|
87
95
|
{Template.bind({})}
|
|
88
96
|
</Story>
|
|
89
97
|
<Story
|
|
90
|
-
name="Hintergrund orange 100"
|
|
98
|
+
name="Hintergrund orange 100"
|
|
99
|
+
args={dataTeserIndextext100Highlighted.logicItem.includeModel}
|
|
91
100
|
>
|
|
92
101
|
{Template.bind({})}
|
|
93
102
|
</Story>
|
|
94
|
-
<Story
|
|
103
|
+
<Story
|
|
104
|
+
name="Text mit Hintergrund 50"
|
|
105
|
+
args={dataTeserIndextext50Accented.logicItem.includeModel}
|
|
106
|
+
>
|
|
95
107
|
{Template.bind({})}
|
|
96
108
|
</Story>
|
|
97
109
|
</Preview>
|
|
98
110
|
|
|
99
|
-
<ArgsTable story="Text mit Hintergrund 100" />
|
|
111
|
+
<ArgsTable story="Text mit Hintergrund 100" />
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
import { ArgsTable, Meta, Story, Canvas, Preview } from '@storybook/addon-docs'
|
|
2
2
|
|
|
3
3
|
import teaser from './teaser_logic.hbs'
|
|
4
|
-
import index_site from '../fixtures/teaser_index.json'
|
|
4
|
+
import index_site from '../fixtures/teaser_index.json'
|
|
5
5
|
|
|
6
|
-
<Meta
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
<div class="grid grid-cols-12 py-6 bg-white sm:px-
|
|
6
|
+
<Meta
|
|
7
|
+
title="Komponenten/Teaser/Logic"
|
|
8
|
+
parameters={{
|
|
9
|
+
layout: 'fullscreen',
|
|
10
|
+
}}
|
|
11
|
+
argTypes={{}}
|
|
12
|
+
decorators={[
|
|
13
|
+
(Story) => {
|
|
14
|
+
return `<div class="grid bg-white grid-page">
|
|
15
|
+
<div class="grid grid-cols-12 py-6 bg-white sm:px-9.5 col-full sm:col-main gap-x-6 gap-y-6">
|
|
16
16
|
${Story()}
|
|
17
17
|
</div>
|
|
18
18
|
</div>`
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
},
|
|
20
|
+
]}
|
|
21
|
+
/>
|
|
22
22
|
|
|
23
23
|
export const Template = (args, { globals: { customConditionalToolbar } }) => {
|
|
24
24
|
// You can either use a function to create DOM elements or use a plain html string!
|
|
@@ -33,7 +33,7 @@ export const Template = (args, { globals: { customConditionalToolbar } }) => {
|
|
|
33
33
|
Ein toller Einleitungstext für unsere `Teaser` Komponente:
|
|
34
34
|
|
|
35
35
|
<Preview withToolbar>
|
|
36
|
-
<Story
|
|
37
|
-
{Template.bind({})}
|
|
38
|
-
</Story>
|
|
36
|
+
<Story name="logic" args={index_site}>
|
|
37
|
+
{Template.bind({})}
|
|
38
|
+
</Story>
|
|
39
39
|
</Preview>
|
|
@@ -9,7 +9,7 @@ import teserPosterMdLabel from './fixtures/teaser_poster_md_label.json'
|
|
|
9
9
|
parameters={{
|
|
10
10
|
layout: 'fullscreen',
|
|
11
11
|
chromatic: {
|
|
12
|
-
diffThreshold: 0.5
|
|
12
|
+
diffThreshold: 0.5,
|
|
13
13
|
},
|
|
14
14
|
}}
|
|
15
15
|
argTypes={{
|
|
@@ -28,7 +28,7 @@ import teserPosterMdLabel from './fixtures/teaser_poster_md_label.json'
|
|
|
28
28
|
}}
|
|
29
29
|
decorators={[
|
|
30
30
|
(Story) => {
|
|
31
|
-
return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-
|
|
31
|
+
return `<div class="grid grid-page"><div class="grid grid-cols-12 py-6 col-full gap-x-6 gap-y-6 sm:px-9.5 sm:col-main">
|
|
32
32
|
${Story()}
|
|
33
33
|
</div></div>`
|
|
34
34
|
},
|
|
@@ -43,7 +43,7 @@ export const Template = (args, { globals: { customConditionalToolbar } }) => {
|
|
|
43
43
|
return teaser({ brand, ...args })
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
# Poster-Teaser
|
|
46
|
+
# Poster-Teaser
|
|
47
47
|
|
|
48
48
|
## Beschreibung
|
|
49
49
|
|
|
@@ -60,40 +60,59 @@ Inhalt dieses spans: Zusatztext + ": " + Titel
|
|
|
60
60
|
|
|
61
61
|
Der Poster-Teaser soll nur als 50%- bzw. 33%-Teaser verwendet werden. Diese Restriktion muss cms-seitig implementiert werden.
|
|
62
62
|
|
|
63
|
-
|
|
64
63
|
## Sub-Komponenten
|
|
65
64
|
|
|
66
65
|
Die Poster-Teaser-Komponente inkludiert folgende Komponenten:
|
|
67
66
|
|
|
68
67
|
<ul>
|
|
69
|
-
<li>
|
|
70
|
-
|
|
71
|
-
|
|
68
|
+
<li>
|
|
69
|
+
components/base/image/<b>responsive_image</b>
|
|
70
|
+
</li>
|
|
71
|
+
<li>
|
|
72
|
+
components/base/<b>link</b>
|
|
73
|
+
</li>
|
|
74
|
+
<li>
|
|
75
|
+
components/teaser/components/<b>teaser_heading</b>
|
|
76
|
+
</li>
|
|
72
77
|
</ul>
|
|
73
78
|
|
|
74
|
-
|
|
75
79
|
## Props
|
|
76
80
|
|
|
77
81
|
Die Poster-Teaser-Komponente benötigt die folgenden json-Daten (enthalten im Teaser-Json im Objekt <b>logicItem.includeModel</b>):
|
|
78
82
|
|
|
79
83
|
<ul>
|
|
80
|
-
<li
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
<li
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
<li
|
|
87
|
-
|
|
84
|
+
<li>
|
|
85
|
+
<b>topline</b>
|
|
86
|
+
</li>
|
|
87
|
+
<li>
|
|
88
|
+
<b>title</b>
|
|
89
|
+
</li>
|
|
90
|
+
<li>
|
|
91
|
+
<b>teaserSize</b>
|
|
92
|
+
</li>
|
|
93
|
+
<li>
|
|
94
|
+
<b>teaserType</b>
|
|
95
|
+
</li>
|
|
96
|
+
<li>
|
|
97
|
+
<b>teaserImage</b>
|
|
98
|
+
</li>
|
|
99
|
+
<li>
|
|
100
|
+
<b>content.imageVariant</b>
|
|
101
|
+
</li>
|
|
102
|
+
<li>
|
|
103
|
+
<b>isSerifHeading</b>
|
|
104
|
+
</li>
|
|
105
|
+
<li>
|
|
106
|
+
<b>link.readMoreText.readMoreLong</b>
|
|
107
|
+
</li>
|
|
88
108
|
</ul>
|
|
89
109
|
|
|
90
|
-
|
|
91
110
|
## Verwendung
|
|
92
111
|
|
|
93
112
|
Die Poster-Teaser-Komponente wird in handlebars wie folgt eingebaut:
|
|
94
113
|
|
|
95
114
|
```html
|
|
96
|
-
{{> components/teaser/teaser_poster}}
|
|
115
|
+
{{> components/teaser/teaser_poster}}
|
|
97
116
|
```
|
|
98
117
|
|
|
99
118
|
<Preview withToolbar>
|
|
@@ -108,4 +127,4 @@ Die Poster-Teaser-Komponente wird in handlebars wie folgt eingebaut:
|
|
|
108
127
|
</Story>
|
|
109
128
|
</Preview>
|
|
110
129
|
|
|
111
|
-
<ArgsTable story="Poster 50" />
|
|
130
|
+
<ArgsTable story="Poster 50" />
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
{{> components/base/image/responsive_image this.teaserImage _type="stage" _variant="default" _addClassImg="w-full blur-2xl"}}
|
|
7
7
|
</div>
|
|
8
8
|
{{/unless}}
|
|
9
|
-
<div class="col-full lg:col-main lg:px-
|
|
9
|
+
<div class="col-full lg:col-main lg:px-9.5 relative">
|
|
10
10
|
<div class="relative max-h-stage overflow-visible before:content-[''] before:block before:w-full before:pt-3/4 sm:before:pt-stage">
|
|
11
11
|
<div class="{{#if this.isWide}}lg:absolute lg:h-full lg:w-full-hd lg:left-1/2 lg:top-0 lg:-ml-240{{else}}absolute h-full w-full top-0{{/if}}">
|
|
12
12
|
{{#if this.isWide}}
|