hr-design-system-handlebars 1.60.2 → 1.60.3
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 +13 -0
- package/dist/assets/index.css +13 -3
- package/dist/views/components/externalService/data_policy_link.hbs +8 -0
- package/dist/views/components/externalService/external_service.hbs +17 -0
- package/dist/views/components/externalService/external_service_caption.hbs +3 -0
- package/dist/views/components/externalService/external_service_data_policy.hbs +42 -0
- package/dist/views/components/externalService/external_service_form_checkbox.hbs +17 -0
- package/dist/views/components/externalService/external_service_load_content_button.hbs +4 -0
- package/dist/views/components/externalService/external_service_settings_button.hbs +8 -0
- package/dist/views_static/components/externalService/data_policy_link.hbs +8 -0
- package/dist/views_static/components/externalService/external_service.hbs +17 -0
- package/dist/views_static/components/externalService/external_service_caption.hbs +3 -0
- package/dist/views_static/components/externalService/external_service_data_policy.hbs +42 -0
- package/dist/views_static/components/externalService/external_service_form_checkbox.hbs +17 -0
- package/dist/views_static/components/externalService/external_service_load_content_button.hbs +4 -0
- package/dist/views_static/components/externalService/external_service_settings_button.hbs +8 -0
- package/package.json +1 -1
- package/src/assets/brand/_default/conf/locatags.json +1 -1
- package/src/stories/views/components/externalService/data_policy_link.hbs +8 -0
- package/src/stories/views/components/externalService/external_service.data.js +8 -0
- package/src/stories/views/components/externalService/external_service.hbs +17 -0
- package/src/stories/views/components/externalService/external_service.mdx +27 -0
- package/src/stories/views/components/externalService/external_service.stories.js +30 -0
- package/src/stories/views/components/externalService/external_service_caption.hbs +3 -0
- package/src/stories/views/components/externalService/external_service_data_policy.hbs +42 -0
- package/src/stories/views/components/externalService/external_service_form_checkbox.hbs +17 -0
- package/src/stories/views/components/externalService/external_service_load_content_button.hbs +4 -0
- package/src/stories/views/components/externalService/external_service_settings_button.hbs +8 -0
- package/src/stories/views/components/externalService/fixtures/external_service.json +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
# v1.60.3 (Wed Mar 13 2024)
|
|
2
|
+
|
|
3
|
+
#### 🐛 Bug Fix
|
|
4
|
+
|
|
5
|
+
- Dpe 2962- Externe Dienste Dummy Template [#881](https://github.com/mumprod/hr-design-system-handlebars/pull/881) ([@Paul-Atreidis](https://github.com/Paul-Atreidis) [@hanswurstsalat](https://github.com/hanswurstsalat))
|
|
6
|
+
|
|
7
|
+
#### Authors: 2
|
|
8
|
+
|
|
9
|
+
- [@Paul-Atreidis](https://github.com/Paul-Atreidis)
|
|
10
|
+
- Geraldo ([@hanswurstsalat](https://github.com/hanswurstsalat))
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
1
14
|
# v1.60.2 (Wed Mar 13 2024)
|
|
2
15
|
|
|
3
16
|
#### 🐛 Bug Fix
|
package/dist/assets/index.css
CHANGED
|
@@ -1963,6 +1963,10 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
1963
1963
|
-moz-column-gap: 0.5rem;
|
|
1964
1964
|
column-gap: 0.5rem;
|
|
1965
1965
|
}
|
|
1966
|
+
.gap-x-3 {
|
|
1967
|
+
-moz-column-gap: 0.75rem;
|
|
1968
|
+
column-gap: 0.75rem;
|
|
1969
|
+
}
|
|
1966
1970
|
.gap-x-4 {
|
|
1967
1971
|
-moz-column-gap: 1rem;
|
|
1968
1972
|
column-gap: 1rem;
|
|
@@ -1992,6 +1996,12 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
1992
1996
|
.gap-y-9 {
|
|
1993
1997
|
row-gap: 2.25rem;
|
|
1994
1998
|
}
|
|
1999
|
+
.space-y-6 > :not([hidden]) ~ :not([hidden]) {
|
|
2000
|
+
--tw-space-y-reverse: 0;
|
|
2001
|
+
margin-top: calc(1.5rem * (1 - var(--tw-space-y-reverse)));
|
|
2002
|
+
margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
|
|
2003
|
+
margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
|
|
2004
|
+
}
|
|
1995
2005
|
.divide-y > :not([hidden]) ~ :not([hidden]) {
|
|
1996
2006
|
--tw-divide-y-reverse: 0;
|
|
1997
2007
|
border-top-width: calc(1px * (1 - var(--tw-divide-y-reverse)));
|
|
@@ -3316,7 +3326,7 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
3316
3326
|
border-bottom-color: var(--color-secondary-ds);
|
|
3317
3327
|
}
|
|
3318
3328
|
.counter-reset {
|
|
3319
|
-
counter-reset:
|
|
3329
|
+
counter-reset: cnt1710352958873;
|
|
3320
3330
|
}
|
|
3321
3331
|
.hyphens-auto {
|
|
3322
3332
|
-webkit-hyphens: auto;
|
|
@@ -3622,7 +3632,7 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
3622
3632
|
--tw-ring-color: rgba(255, 255, 255, 0.5);
|
|
3623
3633
|
}
|
|
3624
3634
|
.-ordered {
|
|
3625
|
-
counter-increment:
|
|
3635
|
+
counter-increment: cnt1710352958873 1;
|
|
3626
3636
|
}
|
|
3627
3637
|
.-ordered::before {
|
|
3628
3638
|
position: absolute;
|
|
@@ -3638,7 +3648,7 @@ article.indexTextDS .indexTextHighlighted .link {
|
|
|
3638
3648
|
letter-spacing: .0125em;
|
|
3639
3649
|
--tw-text-opacity: 1;
|
|
3640
3650
|
color: rgba(0, 0, 0, var(--tw-text-opacity));
|
|
3641
|
-
content: counter(
|
|
3651
|
+
content: counter(cnt1710352958873);
|
|
3642
3652
|
}
|
|
3643
3653
|
/*! ****************************/
|
|
3644
3654
|
/*! DataPolicy stuff */
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{{#>components/base/link _link=this.link _css="relative inline text-link z-20 ds-focus"}}
|
|
2
|
+
<span class="hover:underline decoration-1 font-copy">Datenschutzbestimmungen
|
|
3
|
+
{{> components/base/image/icon _icon="extern" _iconmap="icons" _addClass="inline -mt-0.5 w-5 h-5 fill-current ml-1"}}
|
|
4
|
+
</span>
|
|
5
|
+
{{/components/base/link}}
|
|
6
|
+
{{#*inline "htmlProperties"~}}
|
|
7
|
+
{{~/inline}}
|
|
8
|
+
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<div class="grid">
|
|
2
|
+
{{~> components/base/a11y/hiddenText _locaTag="story_externalservice_intro_sr" ~}}
|
|
3
|
+
<div class="c-externalService c-externalService__{{this.externalServiceConfig.externalServiceId}} js-load"
|
|
4
|
+
data-hr-external-service='{"id":"{{this.externalServiceConfig.externalServiceId}}","embedCode":"{{this.serviceUrl}}", "embedType": "{{this.externalServiceConfig.externalServiceEmbedType}}", "dataPolicyCheck": true,"iFrameConfig": {"heightClass":"ar_iframe"{{#if
|
|
5
|
+
this.fixedHeight}},"fixedHeight":"{{this.fixedHeight}}", "fixedHeightClass":"-fixedHeight"{{else}},{{#if
|
|
6
|
+
this.aspectRatio}}"aspectRatio":"{{this.aspectRatio}}"{{else}}"aspectRatio":"16x9"{{/if}}{{/if}},"noResponsiveIframe":"{{{this.setResponsiveIframe}}}","refreshContent":"{{{this.setTimedReloadIframe}}}","refreshIntervall":"{{this.setTimeForReload}}"}}'>
|
|
7
|
+
{{~> components/externalService/external_service_data_policy ~}}
|
|
8
|
+
</div>
|
|
9
|
+
{{~> components/externalService/external_service_caption ~}}
|
|
10
|
+
{{~> components/base/a11y/hiddenText _locaTag="story_externalservice_outro_sr" ~}}
|
|
11
|
+
<div >
|
|
12
|
+
<div class="float-right">
|
|
13
|
+
{{~> components/externalService/external_service_settings_button ~}}
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
</div>
|
|
17
|
+
{{~> components/dataPolicySettings/data_policy_settings ~}}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<div id="service--{{nextRandom}}" class="p-10 sm:mx-0 col-span-12 grid bg-highlight-1 rounded-tl-hr rounded-br-hr js-datapolicy">
|
|
2
|
+
<h3 class="text-2xl font-headingSerif">
|
|
3
|
+
{{loca "ext_service_datapolicy_headline" this.externalServiceConfig.externalServiceName}}
|
|
4
|
+
</h3>
|
|
5
|
+
<div class="">
|
|
6
|
+
<p class="pt-4 text-base font-copy">
|
|
7
|
+
{{loca "ext_service_datapolicy_text" this.externalServiceConfig.externalServiceName}}
|
|
8
|
+
{{~> components/externalService/data_policy_link ~}}
|
|
9
|
+
</p>
|
|
10
|
+
<div class="pt-4">
|
|
11
|
+
{{~> components/externalService/external_service_form_checkbox ~}}
|
|
12
|
+
</div>
|
|
13
|
+
<div class="pt-4 float-right">
|
|
14
|
+
{{#with this}}
|
|
15
|
+
<div class="inline-flex">
|
|
16
|
+
{{~> components/externalService/external_service_settings_button ~}}
|
|
17
|
+
{{#*inline "htmlProperties"}}
|
|
18
|
+
data-piano-tracking='{"label":"DSGVO-Overlay"}'
|
|
19
|
+
data-a11y-dialog-show="datapolicy-settings-dialog"
|
|
20
|
+
{{/inline}}
|
|
21
|
+
</div>
|
|
22
|
+
{{/with}}
|
|
23
|
+
<div class="inline-flex">
|
|
24
|
+
{{~> components/externalService/external_service_load_content_button ~}}
|
|
25
|
+
{{#*inline "htmlProperties"}}{{/inline}}
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
<noscript>
|
|
30
|
+
<p class="pt-4 text-base font-copy">
|
|
31
|
+
{{loca "ext_service_datapolicy_no_js_text" this.externalServiceConfig.externalServiceName}}
|
|
32
|
+
</p>
|
|
33
|
+
{{#>components/base/link _link=this.link _css="relative inline text-link z-20 ds-focus"}}
|
|
34
|
+
<span class="hover:underline decoration-1 font-copy">
|
|
35
|
+
{{loca "ext_service_datapolicy_no_js_link" this.content.externalServiceConfig.externalServiceName}}
|
|
36
|
+
{{> components/base/image/icon _icon="extern" _iconmap="icons" _addClass="inline -mt-0.5 w-5 h-5 fill-current ml-1"}}
|
|
37
|
+
</span>
|
|
38
|
+
{{/components/base/link}}
|
|
39
|
+
{{#*inline "htmlProperties"~}}
|
|
40
|
+
{{~/inline}}
|
|
41
|
+
</noscript>
|
|
42
|
+
</div>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<fieldset>
|
|
2
|
+
<div class="mt-6 space-y-6">
|
|
3
|
+
<div class="relative flex gap-x-3">
|
|
4
|
+
<div class="flex h-6 items-center">
|
|
5
|
+
<input id="dataPolicyAcceptPermanently-{{getRandom}}" name="dataPolicyAcceptPermanently"
|
|
6
|
+
title="Externe Inhalte von {{this.externalServiceConfig.externalServiceName}} zukünftig immer laden."
|
|
7
|
+
placeholder="Externe Inhalte von {{this.externalServiceConfig.externalServiceName}} zukünftig immer laden."
|
|
8
|
+
value="0" required="" type="checkbox" class="h-6 w-6 rounded border-gray text-indigo focus:ring-indigo">
|
|
9
|
+
</div>
|
|
10
|
+
<div class="text-sm leading-6">
|
|
11
|
+
<label for="dataPolicyAcceptPermanently-{{getRandom}}" class="text-base font-copy">
|
|
12
|
+
{{loca "ext_service_datapolicy_accept_permanently_text" this.externalServiceConfig.externalServiceName}}
|
|
13
|
+
</label>
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
</fieldset>
|
|
17
|
+
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{{#> components/button/button _size="md" _variant="tertiary" _css="" _type="button"}}
|
|
2
|
+
{{> components/button/components/button_label _label="Einstellungen"}}
|
|
3
|
+
{{> components/button/components/button_icon _icon="settings" _iconmap="icons"}}
|
|
4
|
+
{{/components/button/button}}
|
|
5
|
+
{{#*inline "htmlProperties"}}
|
|
6
|
+
data-piano-tracking='{"label":"","secondLevelId":}'
|
|
7
|
+
data-a11y-dialog-show="datapolicy-settings-dialog"
|
|
8
|
+
{{/inline}}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{{#>components/base/link _link=this.link _css="relative inline text-link z-20 ds-focus"}}
|
|
2
|
+
<span class="hover:underline decoration-1 font-copy">Datenschutzbestimmungen
|
|
3
|
+
{{> components/base/image/icon _icon="extern" _iconmap="icons" _addClass="inline -mt-0.5 w-5 h-5 fill-current ml-1"}}
|
|
4
|
+
</span>
|
|
5
|
+
{{/components/base/link}}
|
|
6
|
+
{{#*inline "htmlProperties"~}}
|
|
7
|
+
{{~/inline}}
|
|
8
|
+
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<div class="grid">
|
|
2
|
+
{{~> components/base/a11y/hiddenText _locaTag="story_externalservice_intro_sr" ~}}
|
|
3
|
+
<div class="c-externalService c-externalService__{{this.externalServiceConfig.externalServiceId}} js-load"
|
|
4
|
+
data-hr-external-service='{"id":"{{this.externalServiceConfig.externalServiceId}}","embedCode":"{{this.serviceUrl}}", "embedType": "{{this.externalServiceConfig.externalServiceEmbedType}}", "dataPolicyCheck": true,"iFrameConfig": {"heightClass":"ar_iframe"{{#if
|
|
5
|
+
this.fixedHeight}},"fixedHeight":"{{this.fixedHeight}}", "fixedHeightClass":"-fixedHeight"{{else}},{{#if
|
|
6
|
+
this.aspectRatio}}"aspectRatio":"{{this.aspectRatio}}"{{else}}"aspectRatio":"16x9"{{/if}}{{/if}},"noResponsiveIframe":"{{{this.setResponsiveIframe}}}","refreshContent":"{{{this.setTimedReloadIframe}}}","refreshIntervall":"{{this.setTimeForReload}}"}}'>
|
|
7
|
+
{{~> components/externalService/external_service_data_policy ~}}
|
|
8
|
+
</div>
|
|
9
|
+
{{~> components/externalService/external_service_caption ~}}
|
|
10
|
+
{{~> components/base/a11y/hiddenText _locaTag="story_externalservice_outro_sr" ~}}
|
|
11
|
+
<div >
|
|
12
|
+
<div class="float-right">
|
|
13
|
+
{{~> components/externalService/external_service_settings_button ~}}
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
</div>
|
|
17
|
+
{{~> components/dataPolicySettings/data_policy_settings ~}}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<div id="service--{{nextRandom}}" class="p-10 sm:mx-0 col-span-12 grid bg-highlight-1 rounded-tl-hr rounded-br-hr js-datapolicy">
|
|
2
|
+
<h3 class="text-2xl font-headingSerif">
|
|
3
|
+
{{loca "ext_service_datapolicy_headline" this.externalServiceConfig.externalServiceName}}
|
|
4
|
+
</h3>
|
|
5
|
+
<div class="">
|
|
6
|
+
<p class="pt-4 text-base font-copy">
|
|
7
|
+
{{loca "ext_service_datapolicy_text" this.externalServiceConfig.externalServiceName}}
|
|
8
|
+
{{~> components/externalService/data_policy_link ~}}
|
|
9
|
+
</p>
|
|
10
|
+
<div class="pt-4">
|
|
11
|
+
{{~> components/externalService/external_service_form_checkbox ~}}
|
|
12
|
+
</div>
|
|
13
|
+
<div class="pt-4 float-right">
|
|
14
|
+
{{#with this}}
|
|
15
|
+
<div class="inline-flex">
|
|
16
|
+
{{~> components/externalService/external_service_settings_button ~}}
|
|
17
|
+
{{#*inline "htmlProperties"}}
|
|
18
|
+
data-piano-tracking='{"label":"DSGVO-Overlay"}'
|
|
19
|
+
data-a11y-dialog-show="datapolicy-settings-dialog"
|
|
20
|
+
{{/inline}}
|
|
21
|
+
</div>
|
|
22
|
+
{{/with}}
|
|
23
|
+
<div class="inline-flex">
|
|
24
|
+
{{~> components/externalService/external_service_load_content_button ~}}
|
|
25
|
+
{{#*inline "htmlProperties"}}{{/inline}}
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
<noscript>
|
|
30
|
+
<p class="pt-4 text-base font-copy">
|
|
31
|
+
{{loca "ext_service_datapolicy_no_js_text" this.externalServiceConfig.externalServiceName}}
|
|
32
|
+
</p>
|
|
33
|
+
{{#>components/base/link _link=this.link _css="relative inline text-link z-20 ds-focus"}}
|
|
34
|
+
<span class="hover:underline decoration-1 font-copy">
|
|
35
|
+
{{loca "ext_service_datapolicy_no_js_link" this.content.externalServiceConfig.externalServiceName}}
|
|
36
|
+
{{> components/base/image/icon _icon="extern" _iconmap="icons" _addClass="inline -mt-0.5 w-5 h-5 fill-current ml-1"}}
|
|
37
|
+
</span>
|
|
38
|
+
{{/components/base/link}}
|
|
39
|
+
{{#*inline "htmlProperties"~}}
|
|
40
|
+
{{~/inline}}
|
|
41
|
+
</noscript>
|
|
42
|
+
</div>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<fieldset>
|
|
2
|
+
<div class="mt-6 space-y-6">
|
|
3
|
+
<div class="relative flex gap-x-3">
|
|
4
|
+
<div class="flex h-6 items-center">
|
|
5
|
+
<input id="dataPolicyAcceptPermanently-{{getRandom}}" name="dataPolicyAcceptPermanently"
|
|
6
|
+
title="Externe Inhalte von {{this.externalServiceConfig.externalServiceName}} zukünftig immer laden."
|
|
7
|
+
placeholder="Externe Inhalte von {{this.externalServiceConfig.externalServiceName}} zukünftig immer laden."
|
|
8
|
+
value="0" required="" type="checkbox" class="h-6 w-6 rounded border-gray text-indigo focus:ring-indigo">
|
|
9
|
+
</div>
|
|
10
|
+
<div class="text-sm leading-6">
|
|
11
|
+
<label for="dataPolicyAcceptPermanently-{{getRandom}}" class="text-base font-copy">
|
|
12
|
+
{{loca "ext_service_datapolicy_accept_permanently_text" this.externalServiceConfig.externalServiceName}}
|
|
13
|
+
</label>
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
</fieldset>
|
|
17
|
+
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{{#> components/button/button _size="md" _variant="tertiary" _css="" _type="button"}}
|
|
2
|
+
{{> components/button/components/button_label _label="Einstellungen"}}
|
|
3
|
+
{{> components/button/components/button_icon _icon="settings" _iconmap="icons"}}
|
|
4
|
+
{{/components/button/button}}
|
|
5
|
+
{{#*inline "htmlProperties"}}
|
|
6
|
+
data-piano-tracking='{"label":"","secondLevelId":}'
|
|
7
|
+
data-a11y-dialog-show="datapolicy-settings-dialog"
|
|
8
|
+
{{/inline}}
|
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.60.
|
|
9
|
+
"version": "1.60.3",
|
|
10
10
|
"scripts": {
|
|
11
11
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
12
12
|
"storybook": "storybook dev -p 6006 public",
|
|
@@ -149,7 +149,7 @@
|
|
|
149
149
|
"ext_service_datapolicy_accept_permanently_text": "Externe Inhalte von <b>{0}</b> zukünftig immer anzeigen.",
|
|
150
150
|
"ext_service_datapolicy_accept_button_text": "Inhalt anzeigen",
|
|
151
151
|
"ext_service_datapolicy_headline": "Externen Inhalt von {0} anzeigen?",
|
|
152
|
-
"ext_service_datapolicy_text": "An dieser Stelle befindet sich ein von unserer Redaktion empfohlener Inhalt von <b>{0}</b>. Beim Laden des Inhalts werden Daten an den Anbieter und ggf. weitere Dritte übertragen. Nähere Informationen erhalten Sie in unseren
|
|
152
|
+
"ext_service_datapolicy_text": "An dieser Stelle befindet sich ein von unserer Redaktion empfohlener Inhalt von <b>{0}</b>. Beim Laden des Inhalts werden Daten an den Anbieter und ggf. weitere Dritte übertragen. Nähere Informationen erhalten Sie in unseren ",
|
|
153
153
|
"ext_service_datapolicy_no_js_text": "An dieser Stelle befindet sich ein von unserer Redaktion empfohlener Inhalt von <b>{0}</b>. Da Sie in Ihrem Browser Javascript deaktiviert haben, kann dieser hier nicht angezeigt werden. Der nachfolgende Link öffnet den Inhalt auf der Seite des Anbieters.",
|
|
154
154
|
"ext_service_datapolicy_no_js_link": "{0}-Inhalt öffnen",
|
|
155
155
|
"story_infobox_intro_sr": "Weitere Informationen",
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{{#>components/base/link _link=this.link _css="relative inline text-link z-20 ds-focus"}}
|
|
2
|
+
<span class="hover:underline decoration-1 font-copy">Datenschutzbestimmungen
|
|
3
|
+
{{> components/base/image/icon _icon="extern" _iconmap="icons" _addClass="inline -mt-0.5 w-5 h-5 fill-current ml-1"}}
|
|
4
|
+
</span>
|
|
5
|
+
{{/components/base/link}}
|
|
6
|
+
{{#*inline "htmlProperties"~}}
|
|
7
|
+
{{~/inline}}
|
|
8
|
+
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import structuredClone from 'core-js-pure/actual/structured-clone'
|
|
2
|
+
import externalServiceContent from './fixtures/external_service.json'
|
|
3
|
+
|
|
4
|
+
const ExternalServiceContent = structuredClone(
|
|
5
|
+
Object.assign({}, externalServiceContent)
|
|
6
|
+
)
|
|
7
|
+
|
|
8
|
+
export { ExternalServiceContent }
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<div class="grid">
|
|
2
|
+
{{~> components/base/a11y/hiddenText _locaTag="story_externalservice_intro_sr" ~}}
|
|
3
|
+
<div class="c-externalService c-externalService__{{this.externalServiceConfig.externalServiceId}} js-load"
|
|
4
|
+
data-hr-external-service='{"id":"{{this.externalServiceConfig.externalServiceId}}","embedCode":"{{this.serviceUrl}}", "embedType": "{{this.externalServiceConfig.externalServiceEmbedType}}", "dataPolicyCheck": true,"iFrameConfig": {"heightClass":"ar_iframe"{{#if
|
|
5
|
+
this.fixedHeight}},"fixedHeight":"{{this.fixedHeight}}", "fixedHeightClass":"-fixedHeight"{{else}},{{#if
|
|
6
|
+
this.aspectRatio}}"aspectRatio":"{{this.aspectRatio}}"{{else}}"aspectRatio":"16x9"{{/if}}{{/if}},"noResponsiveIframe":"{{{this.setResponsiveIframe}}}","refreshContent":"{{{this.setTimedReloadIframe}}}","refreshIntervall":"{{this.setTimeForReload}}"}}'>
|
|
7
|
+
{{~> components/externalService/external_service_data_policy ~}}
|
|
8
|
+
</div>
|
|
9
|
+
{{~> components/externalService/external_service_caption ~}}
|
|
10
|
+
{{~> components/base/a11y/hiddenText _locaTag="story_externalservice_outro_sr" ~}}
|
|
11
|
+
<div >
|
|
12
|
+
<div class="float-right">
|
|
13
|
+
{{~> components/externalService/external_service_settings_button ~}}
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
</div>
|
|
17
|
+
{{~> components/dataPolicySettings/data_policy_settings ~}}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ArgsTable, Meta, Story, Canvas, Preview } from '@storybook/blocks'
|
|
2
|
+
import * as ExternalServiceStories from './external_service.stories'
|
|
3
|
+
|
|
4
|
+
<Meta of={ExternalServiceStories} />
|
|
5
|
+
|
|
6
|
+
# Externe Dienste
|
|
7
|
+
|
|
8
|
+
## Platzhalter (Dummy) für externe Dienste gemäß DSGVO
|
|
9
|
+
|
|
10
|
+
Der hier beschriebene "Dummy" ist ein visueller Platzhalter für Content der von externen Anbietern kommt und an der Stelle des Platzhalters dargestellt werden soll.
|
|
11
|
+
Aus rechtlichen (z.B.DSGVO) Gründen, werden diese Inhalte aber nicht permanent dargestellt sondern nur durch eine explizite "Freischaltung" durch den Nutzer.
|
|
12
|
+
<p>Hierbei kann der Nutzer entscheiden ob er den Inhalt des Anbieters einmalig oder dauerhaft angezeigt bekommen möchte.</p>
|
|
13
|
+
<p>Zu den klassischen Anbietern zählen z.B. Video-Inhalte von Youtube, Social-Media-Inhalte von Instagram, Facebook und Co aber auch animierte GIFs oder Datengrafiken, die
|
|
14
|
+
nicht im CMS des HR eingegeben / gepflegt wurden.</p>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
# Grundaufbau
|
|
18
|
+
Der Dummy setzt sich aus Titel, einem kurzen Erklärtext und interaktiven Auswahlelementen zusammen.
|
|
19
|
+
Titel und Erklärtext stellen den Namen des jeweiligen - noch nicht aktivierten - externen Dienstes dar, bis der Nutzer diesen dauerhaft oder einmalig aktiviert hat.
|
|
20
|
+
Die interaktiven Elemente sind:
|
|
21
|
+
<ul>
|
|
22
|
+
<li> eine Checkbox um entsprechenden Dienst DAUERHAFT zu aktivieren. Der Status wird im Cookie "hrSettings" gespeichert.</li>
|
|
23
|
+
<li> einen Einstellungs-Button, der den globalen Einstellungsdialog als Overlay öffnet und DAUERHAFT aktivierte Dienste anzeigt.</li>
|
|
24
|
+
<li> einen Aktions-Button, der den Inhalt einmalig, bis zum nächsten Refresh oder erneuten Besuch der Seite anzeigt.</li>
|
|
25
|
+
</ul>
|
|
26
|
+
|
|
27
|
+
<Story of={ExternalServiceStories.ExterneDienste} />
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ExternalServiceContent
|
|
3
|
+
} from './external_service.data.js'
|
|
4
|
+
import externalService from './external_service.hbs'
|
|
5
|
+
|
|
6
|
+
const TemplatePageExternalService = (args, { globals: { theme } }) => {
|
|
7
|
+
// You can either use a function to create DOM elements or use a plain html string!
|
|
8
|
+
// return `<div>${label}</div>`;
|
|
9
|
+
let brand = undefined !== theme ? theme : 'hessenschau'
|
|
10
|
+
return externalService({ brand, ...args })
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export default {
|
|
14
|
+
title: 'Komponenten/Externe Dienste',
|
|
15
|
+
argTypes: {},
|
|
16
|
+
|
|
17
|
+
parameters: {
|
|
18
|
+
layout: 'fullscreen',
|
|
19
|
+
docs: {
|
|
20
|
+
inlineStories: false,
|
|
21
|
+
iframeHeight: 400,
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export const ExterneDienste = {
|
|
27
|
+
render: TemplatePageExternalService.bind({}),
|
|
28
|
+
name: 'Externe Dienste',
|
|
29
|
+
args: ExternalServiceContent,
|
|
30
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<div id="service--{{nextRandom}}" class="p-10 sm:mx-0 col-span-12 grid bg-highlight-1 rounded-tl-hr rounded-br-hr js-datapolicy">
|
|
2
|
+
<h3 class="text-2xl font-headingSerif">
|
|
3
|
+
{{loca "ext_service_datapolicy_headline" this.externalServiceConfig.externalServiceName}}
|
|
4
|
+
</h3>
|
|
5
|
+
<div class="">
|
|
6
|
+
<p class="pt-4 text-base font-copy">
|
|
7
|
+
{{loca "ext_service_datapolicy_text" this.externalServiceConfig.externalServiceName}}
|
|
8
|
+
{{~> components/externalService/data_policy_link ~}}
|
|
9
|
+
</p>
|
|
10
|
+
<div class="pt-4">
|
|
11
|
+
{{~> components/externalService/external_service_form_checkbox ~}}
|
|
12
|
+
</div>
|
|
13
|
+
<div class="pt-4 float-right">
|
|
14
|
+
{{#with this}}
|
|
15
|
+
<div class="inline-flex">
|
|
16
|
+
{{~> components/externalService/external_service_settings_button ~}}
|
|
17
|
+
{{#*inline "htmlProperties"}}
|
|
18
|
+
data-piano-tracking='{"label":"DSGVO-Overlay"}'
|
|
19
|
+
data-a11y-dialog-show="datapolicy-settings-dialog"
|
|
20
|
+
{{/inline}}
|
|
21
|
+
</div>
|
|
22
|
+
{{/with}}
|
|
23
|
+
<div class="inline-flex">
|
|
24
|
+
{{~> components/externalService/external_service_load_content_button ~}}
|
|
25
|
+
{{#*inline "htmlProperties"}}{{/inline}}
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
<noscript>
|
|
30
|
+
<p class="pt-4 text-base font-copy">
|
|
31
|
+
{{loca "ext_service_datapolicy_no_js_text" this.externalServiceConfig.externalServiceName}}
|
|
32
|
+
</p>
|
|
33
|
+
{{#>components/base/link _link=this.link _css="relative inline text-link z-20 ds-focus"}}
|
|
34
|
+
<span class="hover:underline decoration-1 font-copy">
|
|
35
|
+
{{loca "ext_service_datapolicy_no_js_link" this.content.externalServiceConfig.externalServiceName}}
|
|
36
|
+
{{> components/base/image/icon _icon="extern" _iconmap="icons" _addClass="inline -mt-0.5 w-5 h-5 fill-current ml-1"}}
|
|
37
|
+
</span>
|
|
38
|
+
{{/components/base/link}}
|
|
39
|
+
{{#*inline "htmlProperties"~}}
|
|
40
|
+
{{~/inline}}
|
|
41
|
+
</noscript>
|
|
42
|
+
</div>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<fieldset>
|
|
2
|
+
<div class="mt-6 space-y-6">
|
|
3
|
+
<div class="relative flex gap-x-3">
|
|
4
|
+
<div class="flex h-6 items-center">
|
|
5
|
+
<input id="dataPolicyAcceptPermanently-{{getRandom}}" name="dataPolicyAcceptPermanently"
|
|
6
|
+
title="Externe Inhalte von {{this.externalServiceConfig.externalServiceName}} zukünftig immer laden."
|
|
7
|
+
placeholder="Externe Inhalte von {{this.externalServiceConfig.externalServiceName}} zukünftig immer laden."
|
|
8
|
+
value="0" required="" type="checkbox" class="h-6 w-6 rounded border-gray text-indigo focus:ring-indigo">
|
|
9
|
+
</div>
|
|
10
|
+
<div class="text-sm leading-6">
|
|
11
|
+
<label for="dataPolicyAcceptPermanently-{{getRandom}}" class="text-base font-copy">
|
|
12
|
+
{{loca "ext_service_datapolicy_accept_permanently_text" this.externalServiceConfig.externalServiceName}}
|
|
13
|
+
</label>
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
</fieldset>
|
|
17
|
+
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{{#> components/button/button _size="md" _variant="tertiary" _css="" _type="button"}}
|
|
2
|
+
{{> components/button/components/button_label _label="Einstellungen"}}
|
|
3
|
+
{{> components/button/components/button_icon _icon="settings" _iconmap="icons"}}
|
|
4
|
+
{{/components/button/button}}
|
|
5
|
+
{{#*inline "htmlProperties"}}
|
|
6
|
+
data-piano-tracking='{"label":"","secondLevelId":}'
|
|
7
|
+
data-a11y-dialog-show="datapolicy-settings-dialog"
|
|
8
|
+
{{/inline}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{}
|