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.
Files changed (29) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/assets/index.css +13 -3
  3. package/dist/views/components/externalService/data_policy_link.hbs +8 -0
  4. package/dist/views/components/externalService/external_service.hbs +17 -0
  5. package/dist/views/components/externalService/external_service_caption.hbs +3 -0
  6. package/dist/views/components/externalService/external_service_data_policy.hbs +42 -0
  7. package/dist/views/components/externalService/external_service_form_checkbox.hbs +17 -0
  8. package/dist/views/components/externalService/external_service_load_content_button.hbs +4 -0
  9. package/dist/views/components/externalService/external_service_settings_button.hbs +8 -0
  10. package/dist/views_static/components/externalService/data_policy_link.hbs +8 -0
  11. package/dist/views_static/components/externalService/external_service.hbs +17 -0
  12. package/dist/views_static/components/externalService/external_service_caption.hbs +3 -0
  13. package/dist/views_static/components/externalService/external_service_data_policy.hbs +42 -0
  14. package/dist/views_static/components/externalService/external_service_form_checkbox.hbs +17 -0
  15. package/dist/views_static/components/externalService/external_service_load_content_button.hbs +4 -0
  16. package/dist/views_static/components/externalService/external_service_settings_button.hbs +8 -0
  17. package/package.json +1 -1
  18. package/src/assets/brand/_default/conf/locatags.json +1 -1
  19. package/src/stories/views/components/externalService/data_policy_link.hbs +8 -0
  20. package/src/stories/views/components/externalService/external_service.data.js +8 -0
  21. package/src/stories/views/components/externalService/external_service.hbs +17 -0
  22. package/src/stories/views/components/externalService/external_service.mdx +27 -0
  23. package/src/stories/views/components/externalService/external_service.stories.js +30 -0
  24. package/src/stories/views/components/externalService/external_service_caption.hbs +3 -0
  25. package/src/stories/views/components/externalService/external_service_data_policy.hbs +42 -0
  26. package/src/stories/views/components/externalService/external_service_form_checkbox.hbs +17 -0
  27. package/src/stories/views/components/externalService/external_service_load_content_button.hbs +4 -0
  28. package/src/stories/views/components/externalService/external_service_settings_button.hbs +8 -0
  29. 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
@@ -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: cnt1710343007701;
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: cnt1710343007701 1;
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(cnt1710343007701);
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,3 @@
1
+ <div class="pt-4 text-base font-copy">
2
+ <span class="figcaption">Das ist ein Erklärtext</span>
3
+ </div>
@@ -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,4 @@
1
+ {{#> components/button/button _size="md" _variant="primary" _css="" _type="button"}}
2
+ {{> components/button/components/button_label _label="Inhalte anzeigen"}}
3
+ {{> components/button/components/button_icon _icon="reload" _iconmap="icons"}}
4
+ {{/components/button/button}}
@@ -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,3 @@
1
+ <div class="pt-4 text-base font-copy">
2
+ <span class="figcaption">Das ist ein Erklärtext</span>
3
+ </div>
@@ -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,4 @@
1
+ {{#> components/button/button _size="md" _variant="primary" _css="" _type="button"}}
2
+ {{> components/button/components/button_label _label="Inhalte anzeigen"}}
3
+ {{> components/button/components/button_icon _icon="reload" _iconmap="icons"}}
4
+ {{/components/button/button}}
@@ -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.2",
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 <a class='link c-dataPolicy__link' target='_blank' href=\"{<% hrcms.delivery.hr.baseurl %>}datenschutz/index.html\">Datenschutzbestimmungen<span class=\"unbreakable\"><svg class=\"icon icon--primary icon--textRight\" role=\"presentation\"><use xlink:href=\"{<% hrcms.delivery.current.assetBaseUrl %>}base/icons/icons/svgmap.min.svg#extern\"/></svg></span></a>.",
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,3 @@
1
+ <div class="pt-4 text-base font-copy">
2
+ <span class="figcaption">Das ist ein Erklärtext</span>
3
+ </div>
@@ -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,4 @@
1
+ {{#> components/button/button _size="md" _variant="primary" _css="" _type="button"}}
2
+ {{> components/button/components/button_label _label="Inhalte anzeigen"}}
3
+ {{> components/button/components/button_icon _icon="reload" _iconmap="icons"}}
4
+ {{/components/button/button}}
@@ -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}}