hr-design-system-handlebars 1.36.2 → 1.37.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/.storybook/preview-head.html +1 -0
- package/CHANGELOG.md +25 -0
- package/dist/assets/brand/_default/conf/locatags.json +2 -0
- package/dist/assets/brand/you-fm/icons/logo/svgmap.min.svg +1 -1
- package/dist/assets/icons/icons/svgmap/pause.svg +2 -2
- package/dist/assets/icons/icons/svgmap/play-wide.svg +1 -1
- package/dist/assets/icons/icons/svgmap.min.svg +1 -1
- package/dist/assets/index.css +9 -7
- package/dist/assets/js/components/article/components/podcast/podcastChannelRemainingEpisodesLoader.feature.js +47 -0
- package/dist/views/components/article/components/podcast/podcast_episode_article.hbs +40 -0
- package/dist/views/components/article/components/podcast/podcast_playlist-inline.hbs +1 -0
- package/dist/views/components/article/components/podcast/podcast_playlist_all_episodes.hbs +45 -0
- package/dist/views/components/article/components/podcast/podcast_playlist_article.hbs +60 -0
- package/dist/views/components/podcast/components/podcast_player_shorttext.hbs +1 -1
- package/dist/views/components/podcast/podcast_playlist_player-inline.hbs +22 -0
- package/dist/views/components/podcast/podcast_playlist_player.hbs +3 -21
- package/dist/views/components/podcast/podcast_playlist_player_all_episodes.hbs +65 -0
- package/dist/views/components/teaser/podcast/podcast-playlist.hbs +1 -1
- package/dist/views_static/components/article/components/podcast/podcast_episode_article.hbs +40 -0
- package/dist/views_static/components/article/components/podcast/podcast_playlist-inline.hbs +1 -0
- package/dist/views_static/components/article/components/podcast/podcast_playlist_all_episodes.hbs +45 -0
- package/dist/views_static/components/article/components/podcast/podcast_playlist_article.hbs +60 -0
- package/dist/views_static/components/podcast/components/podcast_player_shorttext.hbs +1 -1
- package/dist/views_static/components/podcast/podcast_playlist_player-inline.hbs +22 -0
- package/dist/views_static/components/podcast/podcast_playlist_player.hbs +3 -21
- package/dist/views_static/components/podcast/podcast_playlist_player_all_episodes.hbs +65 -0
- package/dist/views_static/components/teaser/podcast/podcast-playlist.hbs +1 -1
- package/package.json +1 -1
- package/src/assets/brand/_default/conf/locatags.json +2 -0
- package/src/assets/brand/hessenschau/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr-bigband/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr-fernsehen/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr-inforadio/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr-rundfunkrat/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr-sinfonieorchester/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr-werbung/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr1/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr2/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr3/conf/locatags.merged.json +2 -0
- package/src/assets/brand/hr4/conf/locatags.merged.json +2 -0
- package/src/assets/brand/you-fm/conf/locatags.merged.json +2 -0
- package/src/assets/brand/you-fm/icons/logo/svgmap.min.svg +1 -1
- package/src/assets/fixtures/article/components/podcast/podcast_player_episode.json +1 -1
- package/src/assets/fixtures/article/components/podcast/podcast_player_playlist.json +142 -0
- package/src/assets/icons/icons/svgmap/pause.svg +2 -2
- package/src/assets/icons/icons/svgmap/play-wide.svg +1 -1
- package/src/assets/icons/icons/svgmap.min.svg +1 -1
- package/src/stories/views/components/article/components/podcast/fixtures/podcast_player_episode.json +1 -1
- package/src/stories/views/components/article/components/podcast/fixtures/podcast_player_playlist.json +1 -0
- package/src/stories/views/components/article/components/podcast/podcastChannelRemainingEpisodesLoader.feature.js +47 -0
- package/src/stories/views/components/article/components/podcast/podcast_episode_article.hbs +40 -0
- package/src/stories/views/components/article/components/podcast/{podcast_player_episode.mdx → podcast_episode_article.mdx} +2 -2
- package/src/stories/views/components/article/components/podcast/{podcast_player_episode.stories.js → podcast_episode_article.stories.js} +2 -2
- package/src/stories/views/components/article/components/podcast/podcast_playlist-inline.hbs +1 -0
- package/src/stories/views/components/article/components/podcast/podcast_playlist_all_episodes.hbs +45 -0
- package/src/stories/views/components/article/components/podcast/podcast_playlist_article.hbs +60 -0
- package/src/stories/views/components/article/components/podcast/podcast_playlist_article.mdx +21 -0
- package/src/stories/views/components/article/components/podcast/podcast_playlist_article.stories.js +18 -0
- package/src/stories/views/components/podcast/components/podcast_player_shorttext.hbs +1 -1
- package/src/stories/views/components/podcast/podcast_playlist_player-inline.hbs +22 -0
- package/src/stories/views/components/podcast/podcast_playlist_player.hbs +3 -21
- package/src/stories/views/components/podcast/podcast_playlist_player_all_episodes.hbs +65 -0
- package/src/stories/views/components/teaser/podcast/podcast-playlist.hbs +1 -1
- package/dist/views/components/article/components/podcast/podcast_player_episode.hbs +0 -13
- package/dist/views/components/article/components/podcast/podcast_player_playlist.hbs +0 -0
- package/dist/views_static/components/article/components/podcast/podcast_player_episode.hbs +0 -13
- package/dist/views_static/components/article/components/podcast/podcast_player_playlist.hbs +0 -0
- package/src/stories/views/components/article/components/podcast/podcast_player_episode.hbs +0 -13
- package/src/stories/views/components/article/components/podcast/podcast_player_playlist.hbs +0 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
<article class="grid grid-page">
|
|
2
|
+
<div class="col-span-12 my-6 bg-highlight-1 rounded-tl-hr rounded-br-hr" >
|
|
3
|
+
{{> components/podcast/podcast_player _linkTitle="true" _isSinglePage=false _type="podcastEpisodePlayer"}}
|
|
4
|
+
</div>
|
|
5
|
+
<div class="order-1 col-span-8 px-5">
|
|
6
|
+
{{> components/podcast/components/podcast_player_shorttext }}
|
|
7
|
+
</div>
|
|
8
|
+
<div class="order-3 col-span-8">
|
|
9
|
+
{{> components/content/content_footer/content_footer
|
|
10
|
+
_author=this.audioAuthor
|
|
11
|
+
_showDate=this.hasDwellTime
|
|
12
|
+
_date=this.airdateDate
|
|
13
|
+
_copyright=this.copyright
|
|
14
|
+
_isArchiveContent=this.isArchiveContent
|
|
15
|
+
_posterCopyright="poster_copyright"}}
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
<aside class="order-4 col-full md:order-2 md:col-span-4"
|
|
19
|
+
aria-label='{{loca "appendix_title"}}'>
|
|
20
|
+
<div class="c-appendix">
|
|
21
|
+
{{#unless _webview}}
|
|
22
|
+
{{~#with this.backLinkUrl ~}}
|
|
23
|
+
{{~> components/base/link/backlink _addClass="appendix__backlink" ~}}
|
|
24
|
+
{{~/with~}}
|
|
25
|
+
|
|
26
|
+
{{~#with this.geotag ~}}
|
|
27
|
+
{{~> modules/geotag/geotag-list ~}}
|
|
28
|
+
{{~/with~}}
|
|
29
|
+
|
|
30
|
+
{{~#with this.topictags ~}}
|
|
31
|
+
{{~> modules/topictag/topictag-list ~}}
|
|
32
|
+
{{~/with~}}
|
|
33
|
+
|
|
34
|
+
{{~#with this.socialSharing ~}}
|
|
35
|
+
{{~> modules/socialmedia/shareit ~}}
|
|
36
|
+
{{~/with~}}
|
|
37
|
+
{{/unless}}
|
|
38
|
+
</div>
|
|
39
|
+
</aside>
|
|
40
|
+
</article>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{{> components/podcast/podcast_playlist_player-inline }}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<article class="grid grid-page">
|
|
2
|
+
<div class="grid grid-cols-12 col-full sm:col-main gap-x-6 gap-y-10 md:gap-y-14">
|
|
3
|
+
<div class="order-1 w-full col-span-12 my-6 md:col-span-9 bg-highlight-1 rounded-tl-hr rounded-br-hr" >
|
|
4
|
+
{{> components/podcast/podcast_playlist_player_all_episodes _isArticlePlayer=true}}
|
|
5
|
+
</div>
|
|
6
|
+
<aside class="grid order-2 col-span-3" aria-label='{{loca "appendix_title"}}'>
|
|
7
|
+
<div class="c-appendix">
|
|
8
|
+
{{#unless _webview}}
|
|
9
|
+
{{~#with this.backLinkUrl ~}}
|
|
10
|
+
{{~> base/link/backlink _addClass="appendix__backlink" ~}}
|
|
11
|
+
{{~/with~}}
|
|
12
|
+
|
|
13
|
+
{{~#with this.socialSharing ~}}
|
|
14
|
+
{{~> modules/socialmedia/shareit ~}}
|
|
15
|
+
{{~/with~}}
|
|
16
|
+
{{/unless}}
|
|
17
|
+
{{~#with this.programReference~}}
|
|
18
|
+
{{~#if this.hasReference~}}
|
|
19
|
+
<div class="appendix__entry">
|
|
20
|
+
{{> modules/program_reference/program_reference }}
|
|
21
|
+
</div>
|
|
22
|
+
{{~/if~}}
|
|
23
|
+
{{~/with~}}
|
|
24
|
+
{{~#with this.appendixLinks~}}
|
|
25
|
+
|
|
26
|
+
<div class="appendix__entry">
|
|
27
|
+
<div class="o-layout">
|
|
28
|
+
<h4 class="appendix__headline text__headline">{{../this.appendixLinksTitle}}</h4>
|
|
29
|
+
<ul class="list -appendix -vertical">
|
|
30
|
+
{{#each this}}
|
|
31
|
+
<li class="list__item -noIndent">
|
|
32
|
+
{{#decorator "base/link/link" _cssClasses="touchArea"}}
|
|
33
|
+
{{this.content.title}}{{~#if
|
|
34
|
+
this.hasIcon}}{{~> components/base/image/icon _icon=this.iconName _addClass="icon--primary icon--textRight" _iconmap="icons"~}}{{/if~}}
|
|
35
|
+
{{/decorator}}
|
|
36
|
+
</li>
|
|
37
|
+
{{/each}}
|
|
38
|
+
</ul>
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
{{~/with~}}
|
|
42
|
+
</div>
|
|
43
|
+
</aside>
|
|
44
|
+
</div>
|
|
45
|
+
</article>
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
<article class="grid grid-page">
|
|
2
|
+
<div class="grid grid-cols-12 col-full sm:col-main gap-x-6 gap-y-10 md:gap-y-14">
|
|
3
|
+
<div class="order-1 w-full col-span-12 my-6 md:col-span-9 bg-highlight-1 rounded-tl-hr rounded-br-hr" >
|
|
4
|
+
{{> components/podcast/podcast_playlist_player _isArticlePlayer=true}}
|
|
5
|
+
|
|
6
|
+
{{~#if this.remainingPlaylistItems}}
|
|
7
|
+
<div class="flex items-center justify-center pb-5 js-load"
|
|
8
|
+
data-hr-podcast-channel-remaining-episodes-loader='{"dynLoadTrigSelector":".js-load-remaining-items-button","dynLoadReplaceSelector":".js-placeholder-reload", "url":"{{this.reloadUrl}}"}'>
|
|
9
|
+
{{#> components/button/link_button _size="lg" _title="Weitere Episoden laden" _type="button" _css="js-load-remaining-items-button" _link=this.allEpisodeUrl }}
|
|
10
|
+
{{> components/button/components/button_label _label="Weitere Episoden laden"}}
|
|
11
|
+
{{> components/button/components/button_icon _icon="reload" _iconmap="icons"}}
|
|
12
|
+
{{/components/button/link_button}}
|
|
13
|
+
{{#*inline "htmlProperties"}}
|
|
14
|
+
data-hr-click-tracking='{"settings": [{"type": "uxAction", "clickLabel": "weitereEpisodenLaden:ButtonClick"}]}'
|
|
15
|
+
{{/inline}}
|
|
16
|
+
</div>
|
|
17
|
+
<div class="js-placeholder-reload"></div>
|
|
18
|
+
{{~/if~}}
|
|
19
|
+
</div>
|
|
20
|
+
|
|
21
|
+
<aside class="grid order-2 col-span-3 py-6" aria-label='{{loca "appendix_title"}}'>
|
|
22
|
+
<div class="c-appendix">
|
|
23
|
+
{{#unless _webview}}
|
|
24
|
+
{{~#with this.backLinkUrl ~}}
|
|
25
|
+
{{~> base/link/backlink _addClass="appendix__backlink" ~}}
|
|
26
|
+
{{~/with~}}
|
|
27
|
+
|
|
28
|
+
{{~#with this.socialSharing ~}}
|
|
29
|
+
{{~> modules/socialmedia/shareit ~}}
|
|
30
|
+
{{~/with~}}
|
|
31
|
+
{{/unless}}
|
|
32
|
+
{{~#with this.programReference~}}
|
|
33
|
+
{{~#if this.hasReference~}}
|
|
34
|
+
<div class="appendix__entry">
|
|
35
|
+
{{> modules/program_reference/program_reference }}
|
|
36
|
+
</div>
|
|
37
|
+
{{~/if~}}
|
|
38
|
+
{{~/with~}}
|
|
39
|
+
{{~#with this.appendixLinks~}}
|
|
40
|
+
|
|
41
|
+
<div class="appendix__entry">
|
|
42
|
+
<div class="o-layout">
|
|
43
|
+
<h4 class="appendix__headline text__headline">{{../this.appendixLinksTitle}}</h4>
|
|
44
|
+
<ul class="list -appendix -vertical">
|
|
45
|
+
{{#each this}}
|
|
46
|
+
<li class="list__item -noIndent">
|
|
47
|
+
{{#decorator "base/link/link" _cssClasses="touchArea"}}
|
|
48
|
+
{{this.content.title}}{{~#if
|
|
49
|
+
this.hasIcon}}{{~> components/base/image/icon _icon=this.iconName _addClass="icon--primary icon--textRight" _iconmap="icons"~}}{{/if~}}
|
|
50
|
+
{{/decorator}}
|
|
51
|
+
</li>
|
|
52
|
+
{{/each}}
|
|
53
|
+
</ul>
|
|
54
|
+
</div>
|
|
55
|
+
</div>
|
|
56
|
+
{{~/with~}}
|
|
57
|
+
</div>
|
|
58
|
+
</aside>
|
|
59
|
+
</div>
|
|
60
|
+
</article>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{{#unless _isSinglePage}}
|
|
2
2
|
{{#unless this.hideShortText}}
|
|
3
3
|
{{~#with this.shorttext}}
|
|
4
|
-
<div class="col-span-12
|
|
4
|
+
<div class="col-span-12 text-sm md:text-base font-copy c-podcastEpisodePlayer__shortText">
|
|
5
5
|
<span class="c-teaser__shorttext"> {{this}} </span>
|
|
6
6
|
</div>
|
|
7
7
|
{{/with~}}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{{~#with this.remainingPlaylistItems}}
|
|
2
|
+
|
|
3
|
+
<div class="flex flex-col col-span-12 gap-5 px-5"
|
|
4
|
+
x-data="playaudio()"
|
|
5
|
+
x-init="listenToGlobalStop()"
|
|
6
|
+
ax-load
|
|
7
|
+
x-ignore
|
|
8
|
+
ax-load-src={{resourceUrl "assets/js/vendor/podcast_player.alpine.js" }}>
|
|
9
|
+
{{#each this}}
|
|
10
|
+
<div class="flex pb-5 {{#if @first}}pt-5 border-t border-white {{/if}}{{#unless @last}}border-white border-b{{/unless}}">
|
|
11
|
+
{{> components/podcast/components/podcast_player_ui
|
|
12
|
+
_isPlaylistPlayer=true
|
|
13
|
+
_podcastDuration=this.duration
|
|
14
|
+
_title=this.title
|
|
15
|
+
_id=(nextRandom)
|
|
16
|
+
_first=@first
|
|
17
|
+
}}
|
|
18
|
+
</div>
|
|
19
|
+
{{/each}}
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
{{/with~}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<div class="flex
|
|
1
|
+
<div class="flex w-full py-5 border-b border-white">
|
|
2
2
|
<div class="flex flex-col grow">
|
|
3
3
|
{{!-- First Row --}}
|
|
4
4
|
<div class="flex flex-row px-5 md:pl-5 {{#if ../_ordered}} pl-8 {{/if}} ">
|
|
@@ -18,25 +18,17 @@
|
|
|
18
18
|
{{> components/podcast/components/podcast_title _title=this.title _teaserSize=this.realTeaserSize _addClass="" }}
|
|
19
19
|
</div>
|
|
20
20
|
|
|
21
|
-
{{!-- {{#switch this.realTeaserSize }}
|
|
22
|
-
{{#case "100"}}
|
|
23
|
-
{{> components/podcast/components/podcast_playlist_shorttext}}
|
|
24
|
-
{{/case}}
|
|
25
|
-
{{/switch}} --}}
|
|
26
|
-
|
|
27
21
|
{{> components/podcast/components/podcast_playlist_shorttext}}
|
|
28
22
|
|
|
29
23
|
{{!-- Abo-Dropdown --}}
|
|
30
24
|
{{#if this.isSingleChannel}}
|
|
31
|
-
|
|
32
25
|
{{> components/podcast/components/podcast_subscribe_button}}
|
|
33
|
-
|
|
34
26
|
{{/if}}
|
|
35
27
|
</div>
|
|
36
28
|
|
|
37
29
|
{{!-- Podcast Image --}}
|
|
38
30
|
<div class="flex flex-col pb-5">
|
|
39
|
-
<div class="w-22 {{inline-switch this.realTeaserSize '["100","50"]' '["md:w-32 lg:w-42","md:w-22 lg:w-32", ""]'}}">
|
|
31
|
+
<div class="w-22 {{#if _isArticlePlayer}} md:w-32 lg:w-42{{else}}{{inline-switch this.realTeaserSize '["100","50"]' '["md:w-32 lg:w-42","md:w-22 lg:w-32", ""]'}}{{/if}} ">
|
|
40
32
|
{{> components/base/image/responsive_image this.teaseritem
|
|
41
33
|
_type="podcastEpisodePlayer"
|
|
42
34
|
_variant="default"
|
|
@@ -47,21 +39,11 @@
|
|
|
47
39
|
</div>
|
|
48
40
|
</div>
|
|
49
41
|
</div>
|
|
50
|
-
|
|
51
|
-
{{!-- {{#switch this.realTeaserSize }}
|
|
52
|
-
{{#case "50"}}
|
|
53
|
-
<div class="flex flex-row w-full px-5 md:pl-5">
|
|
54
|
-
{{> components/podcast/components/podcast_playlist_shorttext}}
|
|
55
|
-
</div>
|
|
56
|
-
{{/case}}
|
|
57
|
-
{{/switch}} --}}
|
|
58
|
-
|
|
59
|
-
|
|
60
42
|
</div>
|
|
61
43
|
</div>
|
|
62
44
|
|
|
63
45
|
{{!-- Player UI --}}
|
|
64
|
-
<div class="flex flex-col col-span-12 gap-5 px-5"
|
|
46
|
+
<div class="flex flex-col col-span-12 gap-5 px-5 {{#if _isArticlePlayer }}pt-5 {{/if}} "
|
|
65
47
|
x-data="playaudio()"
|
|
66
48
|
x-init="listenToGlobalStop()"
|
|
67
49
|
ax-load
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
<div class="flex w-full pb-5 border-b border-white">
|
|
2
|
+
<div class="flex flex-col grow">
|
|
3
|
+
{{!-- First Row --}}
|
|
4
|
+
<div class="flex flex-row px-5 md:pl-5 {{#if ../_ordered}} pl-8 {{/if}} ">
|
|
5
|
+
<div class="flex flex-col pr-5 grow">
|
|
6
|
+
<div class="flex max-h-6">
|
|
7
|
+
{{!-- Label / Airdate --}}
|
|
8
|
+
{{#with label}}
|
|
9
|
+
<span
|
|
10
|
+
class='sb-label mr-2 rounded px-1.5 pt-px inline-block tracking-wide text-white text-base leading-5.5 font-heading bg-labelMedia'>
|
|
11
|
+
{{ loca this.loca }}
|
|
12
|
+
</span>
|
|
13
|
+
{{/with}}
|
|
14
|
+
</div>
|
|
15
|
+
|
|
16
|
+
{{!-- Überschrift: --}}
|
|
17
|
+
<div class="flex pb-5 pr-2 md:pr-5">
|
|
18
|
+
{{> components/podcast/components/podcast_title _title=this.title _teaserSize=this.realTeaserSize _addClass="" }}
|
|
19
|
+
</div>
|
|
20
|
+
|
|
21
|
+
{{> components/podcast/components/podcast_playlist_shorttext}}
|
|
22
|
+
|
|
23
|
+
{{!-- Abo-Dropdown --}}
|
|
24
|
+
{{#if this.isSingleChannel}}
|
|
25
|
+
{{> components/podcast/components/podcast_subscribe_button}}
|
|
26
|
+
{{/if}}
|
|
27
|
+
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
{{!-- Podcast Image --}}
|
|
31
|
+
<div class="flex flex-col pb-5">
|
|
32
|
+
<div class="w-22 {{inline-switch this.realTeaserSize '["100","50"]' '["md:w-32 lg:w-42","md:w-22 lg:w-32", ""]'}}">
|
|
33
|
+
{{> components/base/image/responsive_image this.teaseritem
|
|
34
|
+
_type="podcastEpisodePlayer"
|
|
35
|
+
_variant="default"
|
|
36
|
+
_addClass="overflow-hidden"
|
|
37
|
+
_noDelay=this.dontLazyload
|
|
38
|
+
_addClassImg="w-full block"
|
|
39
|
+
}}
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
|
|
47
|
+
{{!-- Player UI --}}
|
|
48
|
+
<div class="flex flex-col col-span-12 gap-5 px-5"
|
|
49
|
+
x-data="playaudio()"
|
|
50
|
+
x-init="listenToGlobalStop()"
|
|
51
|
+
ax-load
|
|
52
|
+
x-ignore
|
|
53
|
+
ax-load-src={{resourceUrl "assets/js/vendor/podcast_player.alpine.js" }}>
|
|
54
|
+
{{#each this.allPlaylistItems}}
|
|
55
|
+
<div class="flex pb-5 {{#unless @last}}border-white border-b{{/unless}}">
|
|
56
|
+
{{> components/podcast/components/podcast_player_ui
|
|
57
|
+
_isPlaylistPlayer=true
|
|
58
|
+
_podcastDuration=this.duration
|
|
59
|
+
_title=this.title
|
|
60
|
+
_id=(nextRandom)
|
|
61
|
+
_first=@first
|
|
62
|
+
}}
|
|
63
|
+
</div>
|
|
64
|
+
{{/each}}
|
|
65
|
+
</div>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<div class="
|
|
1
|
+
<div class="flex gap-y-6 relative gap-x-4 flex-col mx-5 sm:mx-0 bg-highlight-1 rounded-tl-hr rounded-br-hr col-span-12{{inline-switch this.teaserSize '["50"]' '[" md:col-span-6",""]'}}" >
|
|
2
2
|
{{> components/podcast/podcast_playlist_player _linkTitle="true" _isSinglePage=false _type="podcastPlaylistPlayerTeaser" }}
|
|
3
3
|
</div>
|
|
4
4
|
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
<article class="grid grid-page">
|
|
2
|
+
<div class="col-span-12 my-6 bg-highlight-1 rounded-tl-hr rounded-br-hr" >
|
|
3
|
+
{{> components/podcast/podcast_player _linkTitle="true" _isSinglePage=false _type="podcastEpisodePlayer"}}
|
|
4
|
+
</div>
|
|
5
|
+
<div class="order-1 col-span-8 px-5">
|
|
6
|
+
{{> components/podcast/components/podcast_player_shorttext }}
|
|
7
|
+
</div>
|
|
8
|
+
<div class="order-3 col-span-8">
|
|
9
|
+
{{> components/content/content_footer/content_footer
|
|
10
|
+
_author=this.audioAuthor
|
|
11
|
+
_showDate=this.hasDwellTime
|
|
12
|
+
_date=this.airdateDate
|
|
13
|
+
_copyright=this.copyright
|
|
14
|
+
_isArchiveContent=this.isArchiveContent
|
|
15
|
+
_posterCopyright="poster_copyright"}}
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
<aside class="order-4 col-full md:order-2 md:col-span-4"
|
|
19
|
+
aria-label='{{loca "appendix_title"}}'>
|
|
20
|
+
<div class="c-appendix">
|
|
21
|
+
{{#unless _webview}}
|
|
22
|
+
{{~#with this.backLinkUrl ~}}
|
|
23
|
+
{{~> components/base/link/backlink _addClass="appendix__backlink" ~}}
|
|
24
|
+
{{~/with~}}
|
|
25
|
+
|
|
26
|
+
{{~#with this.geotag ~}}
|
|
27
|
+
{{~> modules/geotag/geotag-list ~}}
|
|
28
|
+
{{~/with~}}
|
|
29
|
+
|
|
30
|
+
{{~#with this.topictags ~}}
|
|
31
|
+
{{~> modules/topictag/topictag-list ~}}
|
|
32
|
+
{{~/with~}}
|
|
33
|
+
|
|
34
|
+
{{~#with this.socialSharing ~}}
|
|
35
|
+
{{~> modules/socialmedia/shareit ~}}
|
|
36
|
+
{{~/with~}}
|
|
37
|
+
{{/unless}}
|
|
38
|
+
</div>
|
|
39
|
+
</aside>
|
|
40
|
+
</article>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{{> components/podcast/podcast_playlist_player-inline }}
|
package/dist/views_static/components/article/components/podcast/podcast_playlist_all_episodes.hbs
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<article class="grid grid-page">
|
|
2
|
+
<div class="grid grid-cols-12 col-full sm:col-main gap-x-6 gap-y-10 md:gap-y-14">
|
|
3
|
+
<div class="order-1 w-full col-span-12 my-6 md:col-span-9 bg-highlight-1 rounded-tl-hr rounded-br-hr" >
|
|
4
|
+
{{> components/podcast/podcast_playlist_player_all_episodes _isArticlePlayer=true}}
|
|
5
|
+
</div>
|
|
6
|
+
<aside class="grid order-2 col-span-3" aria-label='{{loca "appendix_title"}}'>
|
|
7
|
+
<div class="c-appendix">
|
|
8
|
+
{{#unless _webview}}
|
|
9
|
+
{{~#with this.backLinkUrl ~}}
|
|
10
|
+
{{~> base/link/backlink _addClass="appendix__backlink" ~}}
|
|
11
|
+
{{~/with~}}
|
|
12
|
+
|
|
13
|
+
{{~#with this.socialSharing ~}}
|
|
14
|
+
{{~> modules/socialmedia/shareit ~}}
|
|
15
|
+
{{~/with~}}
|
|
16
|
+
{{/unless}}
|
|
17
|
+
{{~#with this.programReference~}}
|
|
18
|
+
{{~#if this.hasReference~}}
|
|
19
|
+
<div class="appendix__entry">
|
|
20
|
+
{{> modules/program_reference/program_reference }}
|
|
21
|
+
</div>
|
|
22
|
+
{{~/if~}}
|
|
23
|
+
{{~/with~}}
|
|
24
|
+
{{~#with this.appendixLinks~}}
|
|
25
|
+
|
|
26
|
+
<div class="appendix__entry">
|
|
27
|
+
<div class="o-layout">
|
|
28
|
+
<h4 class="appendix__headline text__headline">{{../this.appendixLinksTitle}}</h4>
|
|
29
|
+
<ul class="list -appendix -vertical">
|
|
30
|
+
{{#each this}}
|
|
31
|
+
<li class="list__item -noIndent">
|
|
32
|
+
{{#decorator "base/link/link" _cssClasses="touchArea"}}
|
|
33
|
+
{{this.content.title}}{{~#if
|
|
34
|
+
this.hasIcon}}{{~> components/base/image/icon _icon=this.iconName _addClass="icon--primary icon--textRight" _iconmap="icons"~}}{{/if~}}
|
|
35
|
+
{{/decorator}}
|
|
36
|
+
</li>
|
|
37
|
+
{{/each}}
|
|
38
|
+
</ul>
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
{{~/with~}}
|
|
42
|
+
</div>
|
|
43
|
+
</aside>
|
|
44
|
+
</div>
|
|
45
|
+
</article>
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
<article class="grid grid-page">
|
|
2
|
+
<div class="grid grid-cols-12 col-full sm:col-main gap-x-6 gap-y-10 md:gap-y-14">
|
|
3
|
+
<div class="order-1 w-full col-span-12 my-6 md:col-span-9 bg-highlight-1 rounded-tl-hr rounded-br-hr" >
|
|
4
|
+
{{> components/podcast/podcast_playlist_player _isArticlePlayer=true}}
|
|
5
|
+
|
|
6
|
+
{{~#if this.remainingPlaylistItems}}
|
|
7
|
+
<div class="flex items-center justify-center pb-5 js-load"
|
|
8
|
+
data-hr-podcast-channel-remaining-episodes-loader='{"dynLoadTrigSelector":".js-load-remaining-items-button","dynLoadReplaceSelector":".js-placeholder-reload", "url":"{{this.reloadUrl}}"}'>
|
|
9
|
+
{{#> components/button/link_button _size="lg" _title="Weitere Episoden laden" _type="button" _css="js-load-remaining-items-button" _link=this.allEpisodeUrl }}
|
|
10
|
+
{{> components/button/components/button_label _label="Weitere Episoden laden"}}
|
|
11
|
+
{{> components/button/components/button_icon _icon="reload" _iconmap="icons"}}
|
|
12
|
+
{{/components/button/link_button}}
|
|
13
|
+
{{#*inline "htmlProperties"}}
|
|
14
|
+
data-hr-click-tracking='{"settings": [{"type": "uxAction", "clickLabel": "weitereEpisodenLaden:ButtonClick"}]}'
|
|
15
|
+
{{/inline}}
|
|
16
|
+
</div>
|
|
17
|
+
<div class="js-placeholder-reload"></div>
|
|
18
|
+
{{~/if~}}
|
|
19
|
+
</div>
|
|
20
|
+
|
|
21
|
+
<aside class="grid order-2 col-span-3 py-6" aria-label='{{loca "appendix_title"}}'>
|
|
22
|
+
<div class="c-appendix">
|
|
23
|
+
{{#unless _webview}}
|
|
24
|
+
{{~#with this.backLinkUrl ~}}
|
|
25
|
+
{{~> base/link/backlink _addClass="appendix__backlink" ~}}
|
|
26
|
+
{{~/with~}}
|
|
27
|
+
|
|
28
|
+
{{~#with this.socialSharing ~}}
|
|
29
|
+
{{~> modules/socialmedia/shareit ~}}
|
|
30
|
+
{{~/with~}}
|
|
31
|
+
{{/unless}}
|
|
32
|
+
{{~#with this.programReference~}}
|
|
33
|
+
{{~#if this.hasReference~}}
|
|
34
|
+
<div class="appendix__entry">
|
|
35
|
+
{{> modules/program_reference/program_reference }}
|
|
36
|
+
</div>
|
|
37
|
+
{{~/if~}}
|
|
38
|
+
{{~/with~}}
|
|
39
|
+
{{~#with this.appendixLinks~}}
|
|
40
|
+
|
|
41
|
+
<div class="appendix__entry">
|
|
42
|
+
<div class="o-layout">
|
|
43
|
+
<h4 class="appendix__headline text__headline">{{../this.appendixLinksTitle}}</h4>
|
|
44
|
+
<ul class="list -appendix -vertical">
|
|
45
|
+
{{#each this}}
|
|
46
|
+
<li class="list__item -noIndent">
|
|
47
|
+
{{#decorator "base/link/link" _cssClasses="touchArea"}}
|
|
48
|
+
{{this.content.title}}{{~#if
|
|
49
|
+
this.hasIcon}}{{~> components/base/image/icon _icon=this.iconName _addClass="icon--primary icon--textRight" _iconmap="icons"~}}{{/if~}}
|
|
50
|
+
{{/decorator}}
|
|
51
|
+
</li>
|
|
52
|
+
{{/each}}
|
|
53
|
+
</ul>
|
|
54
|
+
</div>
|
|
55
|
+
</div>
|
|
56
|
+
{{~/with~}}
|
|
57
|
+
</div>
|
|
58
|
+
</aside>
|
|
59
|
+
</div>
|
|
60
|
+
</article>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{{#unless _isSinglePage}}
|
|
2
2
|
{{#unless this.hideShortText}}
|
|
3
3
|
{{~#with this.shorttext}}
|
|
4
|
-
<div class="col-span-12
|
|
4
|
+
<div class="col-span-12 text-sm md:text-base font-copy c-podcastEpisodePlayer__shortText">
|
|
5
5
|
<span class="c-teaser__shorttext"> {{this}} </span>
|
|
6
6
|
</div>
|
|
7
7
|
{{/with~}}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{{~#with this.remainingPlaylistItems}}
|
|
2
|
+
|
|
3
|
+
<div class="flex flex-col col-span-12 gap-5 px-5"
|
|
4
|
+
x-data="playaudio()"
|
|
5
|
+
x-init="listenToGlobalStop()"
|
|
6
|
+
ax-load
|
|
7
|
+
x-ignore
|
|
8
|
+
ax-load-src={{resourceUrl "assets/js/vendor/podcast_player.alpine.js" }}>
|
|
9
|
+
{{#each this}}
|
|
10
|
+
<div class="flex pb-5 {{#if @first}}pt-5 border-t border-white {{/if}}{{#unless @last}}border-white border-b{{/unless}}">
|
|
11
|
+
{{> components/podcast/components/podcast_player_ui
|
|
12
|
+
_isPlaylistPlayer=true
|
|
13
|
+
_podcastDuration=this.duration
|
|
14
|
+
_title=this.title
|
|
15
|
+
_id=(nextRandom)
|
|
16
|
+
_first=@first
|
|
17
|
+
}}
|
|
18
|
+
</div>
|
|
19
|
+
{{/each}}
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
{{/with~}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<div class="flex
|
|
1
|
+
<div class="flex w-full py-5 border-b border-white">
|
|
2
2
|
<div class="flex flex-col grow">
|
|
3
3
|
{{!-- First Row --}}
|
|
4
4
|
<div class="flex flex-row px-5 md:pl-5 {{#if ../_ordered}} pl-8 {{/if}} ">
|
|
@@ -18,25 +18,17 @@
|
|
|
18
18
|
{{> components/podcast/components/podcast_title _title=this.title _teaserSize=this.realTeaserSize _addClass="" }}
|
|
19
19
|
</div>
|
|
20
20
|
|
|
21
|
-
{{!-- {{#switch this.realTeaserSize }}
|
|
22
|
-
{{#case "100"}}
|
|
23
|
-
{{> components/podcast/components/podcast_playlist_shorttext}}
|
|
24
|
-
{{/case}}
|
|
25
|
-
{{/switch}} --}}
|
|
26
|
-
|
|
27
21
|
{{> components/podcast/components/podcast_playlist_shorttext}}
|
|
28
22
|
|
|
29
23
|
{{!-- Abo-Dropdown --}}
|
|
30
24
|
{{#if this.isSingleChannel}}
|
|
31
|
-
|
|
32
25
|
{{> components/podcast/components/podcast_subscribe_button}}
|
|
33
|
-
|
|
34
26
|
{{/if}}
|
|
35
27
|
</div>
|
|
36
28
|
|
|
37
29
|
{{!-- Podcast Image --}}
|
|
38
30
|
<div class="flex flex-col pb-5">
|
|
39
|
-
<div class="w-22 {{inline-switch this.realTeaserSize '["100","50"]' '["md:w-32 lg:w-42","md:w-22 lg:w-32", ""]'}}">
|
|
31
|
+
<div class="w-22 {{#if _isArticlePlayer}} md:w-32 lg:w-42{{else}}{{inline-switch this.realTeaserSize '["100","50"]' '["md:w-32 lg:w-42","md:w-22 lg:w-32", ""]'}}{{/if}} ">
|
|
40
32
|
{{> components/base/image/responsive_image this.teaseritem
|
|
41
33
|
_type="podcastEpisodePlayer"
|
|
42
34
|
_variant="default"
|
|
@@ -47,21 +39,11 @@
|
|
|
47
39
|
</div>
|
|
48
40
|
</div>
|
|
49
41
|
</div>
|
|
50
|
-
|
|
51
|
-
{{!-- {{#switch this.realTeaserSize }}
|
|
52
|
-
{{#case "50"}}
|
|
53
|
-
<div class="flex flex-row w-full px-5 md:pl-5">
|
|
54
|
-
{{> components/podcast/components/podcast_playlist_shorttext}}
|
|
55
|
-
</div>
|
|
56
|
-
{{/case}}
|
|
57
|
-
{{/switch}} --}}
|
|
58
|
-
|
|
59
|
-
|
|
60
42
|
</div>
|
|
61
43
|
</div>
|
|
62
44
|
|
|
63
45
|
{{!-- Player UI --}}
|
|
64
|
-
<div class="flex flex-col col-span-12 gap-5 px-5"
|
|
46
|
+
<div class="flex flex-col col-span-12 gap-5 px-5 {{#if _isArticlePlayer }}pt-5 {{/if}} "
|
|
65
47
|
x-data="playaudio()"
|
|
66
48
|
x-init="listenToGlobalStop()"
|
|
67
49
|
ax-load
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
<div class="flex w-full pb-5 border-b border-white">
|
|
2
|
+
<div class="flex flex-col grow">
|
|
3
|
+
{{!-- First Row --}}
|
|
4
|
+
<div class="flex flex-row px-5 md:pl-5 {{#if ../_ordered}} pl-8 {{/if}} ">
|
|
5
|
+
<div class="flex flex-col pr-5 grow">
|
|
6
|
+
<div class="flex max-h-6">
|
|
7
|
+
{{!-- Label / Airdate --}}
|
|
8
|
+
{{#with label}}
|
|
9
|
+
<span
|
|
10
|
+
class='sb-label mr-2 rounded px-1.5 pt-px inline-block tracking-wide text-white text-base leading-5.5 font-heading bg-labelMedia'>
|
|
11
|
+
{{ loca this.loca }}
|
|
12
|
+
</span>
|
|
13
|
+
{{/with}}
|
|
14
|
+
</div>
|
|
15
|
+
|
|
16
|
+
{{!-- Überschrift: --}}
|
|
17
|
+
<div class="flex pb-5 pr-2 md:pr-5">
|
|
18
|
+
{{> components/podcast/components/podcast_title _title=this.title _teaserSize=this.realTeaserSize _addClass="" }}
|
|
19
|
+
</div>
|
|
20
|
+
|
|
21
|
+
{{> components/podcast/components/podcast_playlist_shorttext}}
|
|
22
|
+
|
|
23
|
+
{{!-- Abo-Dropdown --}}
|
|
24
|
+
{{#if this.isSingleChannel}}
|
|
25
|
+
{{> components/podcast/components/podcast_subscribe_button}}
|
|
26
|
+
{{/if}}
|
|
27
|
+
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
{{!-- Podcast Image --}}
|
|
31
|
+
<div class="flex flex-col pb-5">
|
|
32
|
+
<div class="w-22 {{inline-switch this.realTeaserSize '["100","50"]' '["md:w-32 lg:w-42","md:w-22 lg:w-32", ""]'}}">
|
|
33
|
+
{{> components/base/image/responsive_image this.teaseritem
|
|
34
|
+
_type="podcastEpisodePlayer"
|
|
35
|
+
_variant="default"
|
|
36
|
+
_addClass="overflow-hidden"
|
|
37
|
+
_noDelay=this.dontLazyload
|
|
38
|
+
_addClassImg="w-full block"
|
|
39
|
+
}}
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
|
|
47
|
+
{{!-- Player UI --}}
|
|
48
|
+
<div class="flex flex-col col-span-12 gap-5 px-5"
|
|
49
|
+
x-data="playaudio()"
|
|
50
|
+
x-init="listenToGlobalStop()"
|
|
51
|
+
ax-load
|
|
52
|
+
x-ignore
|
|
53
|
+
ax-load-src={{resourceUrl "assets/js/vendor/podcast_player.alpine.js" }}>
|
|
54
|
+
{{#each this.allPlaylistItems}}
|
|
55
|
+
<div class="flex pb-5 {{#unless @last}}border-white border-b{{/unless}}">
|
|
56
|
+
{{> components/podcast/components/podcast_player_ui
|
|
57
|
+
_isPlaylistPlayer=true
|
|
58
|
+
_podcastDuration=this.duration
|
|
59
|
+
_title=this.title
|
|
60
|
+
_id=(nextRandom)
|
|
61
|
+
_first=@first
|
|
62
|
+
}}
|
|
63
|
+
</div>
|
|
64
|
+
{{/each}}
|
|
65
|
+
</div>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<div class="
|
|
1
|
+
<div class="flex gap-y-6 relative gap-x-4 flex-col mx-5 sm:mx-0 bg-highlight-1 rounded-tl-hr rounded-br-hr col-span-12{{inline-switch this.teaserSize '["50"]' '[" md:col-span-6",""]'}}" >
|
|
2
2
|
{{> components/podcast/podcast_playlist_player _linkTitle="true" _isSinglePage=false _type="podcastPlaylistPlayerTeaser" }}
|
|
3
3
|
</div>
|
|
4
4
|
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"repository": "https://github.com/szuelch/hr-design-system-handlebars",
|
|
9
|
-
"version": "1.
|
|
9
|
+
"version": "1.37.0",
|
|
10
10
|
"scripts": {
|
|
11
11
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
12
12
|
"storybook": "storybook dev -p 6006 public",
|
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
"anchor_sectionNav": "Bereichsnavigation anspringen",
|
|
6
6
|
"anchor_serviceNav": "Servicenavigation anspringen",
|
|
7
7
|
"anchor_subNav": "Subnavigation des Bereichs {0} anspringen",
|
|
8
|
+
"appendix_title": "Zusatzinformationen",
|
|
9
|
+
"appendix_links_title": "Weitere Hinweise",
|
|
8
10
|
"archive_content": "Dieser Inhalt ist zeitlich unbegrenzt verfügbar.",
|
|
9
11
|
"close_button_alpine_click": "avStart = false; $dispatch('player_closed',{playerId: {0}})",
|
|
10
12
|
"play_button_alpine_click": "playAndStop({0});/* $dispatch('stopotherplayers',{playerId: {0}}) */",
|