hr-design-system-handlebars 1.50.41 → 1.51.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/CHANGELOG.md +13 -0
- package/dist/assets/brand/_default/conf/locatags.json +1 -0
- package/dist/assets/index.css +20 -13
- package/dist/assets/js/alpine.js +1 -0
- package/dist/assets/js/base/tracking/pianoHelper.subfeature.js +4 -4
- package/dist/assets/js/components/dataPolicySettings/dataPolicySettingsDs.feature.js +29 -59
- package/dist/views/components/dataPolicySettings/data_policy_settings.hbs +33 -24
- package/dist/views/components/forms/toggle_button.hbs +4 -2
- package/dist/views_static/components/dataPolicySettings/data_policy_settings.hbs +33 -24
- package/dist/views_static/components/forms/toggle_button.hbs +4 -2
- package/package.json +2 -1
- package/src/assets/brand/_default/conf/locatags.json +1 -0
- package/src/assets/brand/hessenschau/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr-bigband/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr-fernsehen/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr-inforadio/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr-rundfunkrat/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr-sinfonieorchester/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr-werbung/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr1/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr2/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr3/conf/locatags.merged.json +1 -0
- package/src/assets/brand/hr4/conf/locatags.merged.json +1 -0
- package/src/assets/brand/you-fm/conf/locatags.merged.json +1 -0
- package/src/assets/css/custom-utilities.css +4 -0
- package/src/assets/js/alpine.js +1 -0
- package/src/stories/views/base/tracking/pianoHelper.subfeature.js +4 -4
- package/src/stories/views/components/dataPolicySettings/dataPolicySettingsDs.feature.js +29 -59
- package/src/stories/views/components/dataPolicySettings/data_policy_settings.hbs +33 -24
- package/src/stories/views/components/forms/toggle_button.hbs +4 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
# v1.51.0 (Fri Dec 08 2023)
|
|
2
|
+
|
|
3
|
+
#### 🚀 Enhancement
|
|
4
|
+
|
|
5
|
+
- WIP: DPE-2582 Einstellungsmenü mit Screenreader bedienbar machen [#751](https://github.com/mumprod/hr-design-system-handlebars/pull/751) ([@Sunny1112358](https://github.com/Sunny1112358) [@szuelch](https://github.com/szuelch))
|
|
6
|
+
|
|
7
|
+
#### Authors: 2
|
|
8
|
+
|
|
9
|
+
- [@Sunny1112358](https://github.com/Sunny1112358)
|
|
10
|
+
- [@szuelch](https://github.com/szuelch)
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
1
14
|
# v1.50.41 (Thu Dec 07 2023)
|
|
2
15
|
|
|
3
16
|
#### 🐛 Bug Fix
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter":"{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
package/dist/assets/index.css
CHANGED
|
@@ -439,7 +439,7 @@ video {
|
|
|
439
439
|
--tw-gradient-to-position: ;
|
|
440
440
|
}
|
|
441
441
|
|
|
442
|
-
.btn--secondary, .ds-focus, .ds-focus:not(:focus-visible), .ds-button, .ds-button:not(:focus-visible), .ds-button-round, .ds-button-round:not(:focus-visible), .ds-link, .ds-link:not(:focus-visible), .ds-teaser-focus, .ds-teaser-focus::before, .ds-cta > *, .ds-teaser-focus:not(:focus-visible)::before, .-isOpen, .shadow-md, .shadow-xl, .before\:shadow-stage::before {
|
|
442
|
+
.btn--secondary, .ds-focus, .ds-focus:not(:focus-visible), .ds-button, .ds-button:not(:focus-visible), .ds-button-round, .ds-button-round:not(:focus-visible), .ds-link, .ds-link:not(:focus-visible), .ds-teaser-focus, .ds-teaser-focus::before, .ds-cta > *, .ds-teaser-focus:not(:focus-visible)::before, .-isOpen, .shadow-md, .shadow-xl, .toggleSwitch-label, .before\:shadow-stage::before {
|
|
443
443
|
--tw-ring-offset-shadow: 0 0 rgba(0,0,0,0);
|
|
444
444
|
--tw-ring-shadow: 0 0 rgba(0,0,0,0);
|
|
445
445
|
--tw-shadow: 0 0 rgba(0,0,0,0);
|
|
@@ -1205,9 +1205,6 @@ article.indexText ul {
|
|
|
1205
1205
|
.m-4 {
|
|
1206
1206
|
margin: 1rem;
|
|
1207
1207
|
}
|
|
1208
|
-
.m-auto {
|
|
1209
|
-
margin: auto;
|
|
1210
|
-
}
|
|
1211
1208
|
.mx-0 {
|
|
1212
1209
|
margin-left: 0px;
|
|
1213
1210
|
margin-right: 0px;
|
|
@@ -1466,9 +1463,6 @@ article.indexText ul {
|
|
|
1466
1463
|
.inline {
|
|
1467
1464
|
display: inline;
|
|
1468
1465
|
}
|
|
1469
|
-
.\!flex {
|
|
1470
|
-
display: flex !important;
|
|
1471
|
-
}
|
|
1472
1466
|
.flex {
|
|
1473
1467
|
display: flex;
|
|
1474
1468
|
}
|
|
@@ -1954,9 +1948,6 @@ article.indexText ul {
|
|
|
1954
1948
|
.overflow-visible {
|
|
1955
1949
|
overflow: visible;
|
|
1956
1950
|
}
|
|
1957
|
-
.overflow-scroll {
|
|
1958
|
-
overflow: scroll;
|
|
1959
|
-
}
|
|
1960
1951
|
.overflow-x-auto {
|
|
1961
1952
|
overflow-x: auto;
|
|
1962
1953
|
}
|
|
@@ -1966,6 +1957,9 @@ article.indexText ul {
|
|
|
1966
1957
|
.overflow-x-scroll {
|
|
1967
1958
|
overflow-x: scroll;
|
|
1968
1959
|
}
|
|
1960
|
+
.overflow-y-scroll {
|
|
1961
|
+
overflow-y: scroll;
|
|
1962
|
+
}
|
|
1969
1963
|
.scroll-smooth {
|
|
1970
1964
|
scroll-behavior: smooth;
|
|
1971
1965
|
}
|
|
@@ -3217,7 +3211,7 @@ article.indexText ul {
|
|
|
3217
3211
|
border-bottom-color: var(--color-secondary-ds);
|
|
3218
3212
|
}
|
|
3219
3213
|
.counter-reset {
|
|
3220
|
-
counter-reset:
|
|
3214
|
+
counter-reset: cnt1702024773161;
|
|
3221
3215
|
}
|
|
3222
3216
|
.hyphens-auto {
|
|
3223
3217
|
-webkit-hyphens: auto;
|
|
@@ -3478,7 +3472,7 @@ article.indexText ul {
|
|
|
3478
3472
|
--tw-ring-color: rgba(255, 255, 255, 0.5);
|
|
3479
3473
|
}
|
|
3480
3474
|
.-ordered {
|
|
3481
|
-
counter-increment:
|
|
3475
|
+
counter-increment: cnt1702024773161 1;
|
|
3482
3476
|
}
|
|
3483
3477
|
.-ordered::before {
|
|
3484
3478
|
position: absolute;
|
|
@@ -3494,7 +3488,7 @@ article.indexText ul {
|
|
|
3494
3488
|
letter-spacing: .0125em;
|
|
3495
3489
|
--tw-text-opacity: 1;
|
|
3496
3490
|
color: rgba(0, 0, 0, var(--tw-text-opacity));
|
|
3497
|
-
content: counter(
|
|
3491
|
+
content: counter(cnt1702024773161);
|
|
3498
3492
|
}
|
|
3499
3493
|
/*! ****************************/
|
|
3500
3494
|
/*! DataPolicy stuff */
|
|
@@ -3506,6 +3500,16 @@ article.indexText ul {
|
|
|
3506
3500
|
background-color: #2c7e13;
|
|
3507
3501
|
background-color: var(--color-toggle-confirmation);
|
|
3508
3502
|
}
|
|
3503
|
+
.toggleSwitch-checkbox:focus+.toggleSwitch-label {
|
|
3504
|
+
--tw-shadow: 0 0 0 0.25rem;
|
|
3505
|
+
--tw-shadow-colored: 0 0 0 0.25rem var(--tw-shadow-color);
|
|
3506
|
+
box-shadow: 0 0 rgba(0,0,0,0), 0 0 rgba(0,0,0,0), var(--tw-shadow);
|
|
3507
|
+
box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0,0,0,0)), var(--tw-ring-shadow, 0 0 rgba(0,0,0,0)), var(--tw-shadow);
|
|
3508
|
+
--tw-shadow-color: var(--color-focus-state);
|
|
3509
|
+
--tw-shadow: var(--tw-shadow-colored);
|
|
3510
|
+
outline: 2px solid transparent;
|
|
3511
|
+
outline-offset: 2px;
|
|
3512
|
+
}
|
|
3509
3513
|
.toggleSwitch-label::after {
|
|
3510
3514
|
position: absolute;
|
|
3511
3515
|
top: 2px;
|
|
@@ -5071,6 +5075,9 @@ article.indexText ul {
|
|
|
5071
5075
|
--tw-text-opacity: 1;
|
|
5072
5076
|
color: rgba(255, 255, 255, var(--tw-text-opacity));
|
|
5073
5077
|
}
|
|
5078
|
+
.aria-hidden\:hidden[aria-hidden="true"] {
|
|
5079
|
+
display: none;
|
|
5080
|
+
}
|
|
5074
5081
|
.before\:absolute::before {
|
|
5075
5082
|
position: absolute;
|
|
5076
5083
|
}
|
package/dist/assets/js/alpine.js
CHANGED
|
@@ -10,6 +10,7 @@ import mainNavigationHandler from 'components/site_header/mainNavigationHandler.
|
|
|
10
10
|
import flyoutHandler from 'components/site_header/flyoutHandler.alpine'
|
|
11
11
|
import overlayHandler from 'components/site_header/overlayHandler.alpine'
|
|
12
12
|
import dropdown from 'components/site_header/dropdown.alpine'
|
|
13
|
+
|
|
13
14
|
|
|
14
15
|
AsyncAlpine.init(Alpine)
|
|
15
16
|
.data('podcastPlayer', () => import('components/podcast/podcast_player.alpine.js'))
|
|
@@ -7,7 +7,7 @@ const isTrackingAllowed = () => {
|
|
|
7
7
|
|
|
8
8
|
const uxAction = (label, secondLevelId) => {
|
|
9
9
|
secondLevelId = secondLevelId || pageDisplayConfig.site_level2
|
|
10
|
-
if (pa && isTrackingAllowed()) {
|
|
10
|
+
if (typeof pa != "undefined" && pa != undefined && isTrackingAllowed()) {
|
|
11
11
|
pa.sendEvent('click.action', {
|
|
12
12
|
click: label,
|
|
13
13
|
site_level2: secondLevelId,
|
|
@@ -17,7 +17,7 @@ const uxAction = (label, secondLevelId) => {
|
|
|
17
17
|
|
|
18
18
|
const uxNavigation = (label, secondLevelId) => {
|
|
19
19
|
secondLevelId = secondLevelId || pageDisplayConfig.site_level2
|
|
20
|
-
if (pa && isTrackingAllowed()) {
|
|
20
|
+
if (typeof pa != "undefined" && pa != undefined && isTrackingAllowed()) {
|
|
21
21
|
pa.sendEvent('click.navigation', {
|
|
22
22
|
click: label,
|
|
23
23
|
site_level2: secondLevelId,
|
|
@@ -26,14 +26,14 @@ const uxNavigation = (label, secondLevelId) => {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
const pi = (label, secondLevelId) => {
|
|
29
|
-
if (pa && isTrackingAllowed()) {
|
|
29
|
+
if (typeof pa != "undefined" && pa != undefined && isTrackingAllowed()) {
|
|
30
30
|
pa.sendEvent('page.display', pageDisplayConfig)
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
const download = (label, secondLevelId) => {
|
|
35
35
|
secondLevelId = secondLevelId || pageDisplayConfig.site_level2
|
|
36
|
-
if (pa && isTrackingAllowed()) {
|
|
36
|
+
if (typeof pa != "undefined" && pa != undefined && isTrackingAllowed()) {
|
|
37
37
|
pa.sendEvent('click.download', {
|
|
38
38
|
click: label,
|
|
39
39
|
site_level2: secondLevelId,
|
|
@@ -3,25 +3,26 @@ import TrackingCookie from 'components/externalService/trackingCookie.subfeature
|
|
|
3
3
|
import { fireEvent, getJSONCookie, hr$, setJSONCookie, listen } from 'hrQuery'
|
|
4
4
|
import { uxAction } from 'base/tracking/pianoHelper.subfeature'
|
|
5
5
|
|
|
6
|
+
import A11yDialog from 'a11y-dialog'
|
|
7
|
+
|
|
6
8
|
const DataPolicySettings = function (context) {
|
|
7
9
|
const { options } = context,
|
|
8
10
|
{ element: rootElement } = context,
|
|
11
|
+
container = hr$('#datapolicy-settings-dialog',document)[0],
|
|
12
|
+
dialog = new A11yDialog(container),
|
|
9
13
|
settingsButtons = hr$('.js-data-policy-settings-button', document),
|
|
10
14
|
overlay = hr$('.js-data-policy-settings-overlay', rootElement)[0],
|
|
11
15
|
closeButton = hr$('.js-data-policy-settings-close-button', rootElement)[0],
|
|
12
16
|
bodyElement = document.getElementsByTagName('html')[0],
|
|
13
17
|
datapolicyCookie = new DatapolicyCookie(),
|
|
14
18
|
trackingCookie = new TrackingCookie(),
|
|
15
|
-
toggleSwitches = hr$('.js-toggleSwitch-checkbox',
|
|
16
|
-
toggleSwitchesExternal = hr$('.js-toggleSwitch-external',
|
|
17
|
-
toggleSwitchesTracking = hr$('.js-toggleSwitch-tracking',
|
|
18
|
-
toggleAllSwitch = hr$('.js-toggleSwitch-checkbox-all',
|
|
19
|
-
providerTitle = hr$('.js-providerTitle',
|
|
19
|
+
toggleSwitches = hr$('.js-toggleSwitch-checkbox', container),
|
|
20
|
+
toggleSwitchesExternal = hr$('.js-toggleSwitch-external', container),
|
|
21
|
+
toggleSwitchesTracking = hr$('.js-toggleSwitch-tracking', container),
|
|
22
|
+
toggleAllSwitch = hr$('.js-toggleSwitch-checkbox-all', container)[0],
|
|
23
|
+
providerTitle = hr$('.js-providerTitle', container)[0],
|
|
20
24
|
trackingCookieLifetime = 1000 * 60 * 60 * 24 * 365 * 10
|
|
21
|
-
|
|
22
|
-
isWebview = window.parent.document.documentElement.classList.contains('webview'),
|
|
23
|
-
//isWebview = window.location.href.match(/(app)(\.[a-zA-Z]*)(\.de)/i), //App URL ...app.hr.de
|
|
24
|
-
//isWebview = window.location.href.match(/(app)/i), //App URL ...app.hr.de
|
|
25
|
+
let isWebview = window.parent.document.documentElement.classList.contains('webview'),
|
|
25
26
|
cookie = {}
|
|
26
27
|
|
|
27
28
|
console.log('gelaaaadeeeeeeeen')
|
|
@@ -51,48 +52,28 @@ const DataPolicySettings = function (context) {
|
|
|
51
52
|
cookie = 'true'
|
|
52
53
|
setJSONCookie('hsAppSettingsButton', cookie, trackingCookieLifetime)
|
|
53
54
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
if (settingsButtons.length - i == 1) {
|
|
57
|
-
listen(
|
|
58
|
-
'click',
|
|
59
|
-
function () {
|
|
60
|
-
openDialog('Footer')
|
|
61
|
-
atiSecondLevelId = 1
|
|
62
|
-
},
|
|
63
|
-
settingsButtons[i]
|
|
64
|
-
)
|
|
65
|
-
} else {
|
|
66
|
-
if (!settingsButtons[i].getAttribute('listener')) {
|
|
67
|
-
listen(
|
|
68
|
-
'click',
|
|
69
|
-
function () {
|
|
70
|
-
openDialog('DSGVO-Overlay')
|
|
71
|
-
},
|
|
72
|
-
settingsButtons[i]
|
|
73
|
-
)
|
|
74
|
-
settingsButtons[i].setAttribute('listener', 'true')
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
const openDialog = function (settingsButtonLocation) {
|
|
80
|
-
overlay.classList.add('!flex')
|
|
55
|
+
|
|
56
|
+
const onDialogShow = function (event) {
|
|
81
57
|
bodyElement.classList.add('optionOpen')
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
58
|
+
const opener = event.detail == null && event.detail.target.closest('[data-a11y-dialog-show]') ? event.detail.target.closest('[data-a11y-dialog-show]') : null
|
|
59
|
+
const pianoTracking = null != opener && undefined !== opener.dataset.pianoTracking ? JSON.parse(opener.dataset.pianoTracking) : {label:"Datenschutzerklärung"}
|
|
60
|
+
if(undefined !== pianoTracking.secondLevelId){
|
|
61
|
+
console.log(pianoTracking)
|
|
62
|
+
uxAction('Einstellungsdialog geöffnet - ' + pianoTracking.label, pianoTracking.secondLevelId)
|
|
63
|
+
}else{
|
|
64
|
+
console.log(pianoTracking)
|
|
65
|
+
uxAction('Einstellungsdialog geöffnet - ' + pianoTracking.label)
|
|
66
|
+
}
|
|
87
67
|
}
|
|
88
|
-
|
|
89
|
-
|
|
68
|
+
|
|
69
|
+
const onDialogHide = function () {
|
|
70
|
+
console.log("Hide")
|
|
90
71
|
bodyElement.classList.remove('optionOpen')
|
|
91
72
|
}
|
|
92
73
|
const shouldDialogBeOpendOnLoad = function () {
|
|
93
74
|
const urlParam = getUrlVars()['openDialog']
|
|
94
75
|
if (typeof urlParam !== 'undefined' && urlParam === 'true') {
|
|
95
|
-
|
|
76
|
+
dialog.show()
|
|
96
77
|
}
|
|
97
78
|
}
|
|
98
79
|
const getUrlVars = function () {
|
|
@@ -253,33 +234,22 @@ const DataPolicySettings = function (context) {
|
|
|
253
234
|
return trackingCookie.isTrackingCookieExistent(trackingService)
|
|
254
235
|
}
|
|
255
236
|
const initializeEventListeners = function () {
|
|
256
|
-
listen('hr:settingsButtonInsideDataPolicyBoxClicked', function () {
|
|
257
|
-
openDialog('DSGVO-Overlay')
|
|
258
|
-
})
|
|
259
237
|
listen('change', toggleAll, toggleAllSwitch)
|
|
260
|
-
listen(
|
|
261
|
-
listen(
|
|
238
|
+
listen("show", onDialogShow, container)
|
|
239
|
+
listen("hide", onDialogHide, container)
|
|
262
240
|
}
|
|
263
241
|
// steuert die Darstellung des Buttons für die hs-App ///
|
|
264
242
|
showSettingsButton()
|
|
265
|
-
//// 1.
|
|
266
|
-
initializeSettingsButtons()
|
|
267
|
-
|
|
268
|
-
//// 2. Toggle States aller Switches setzen ////
|
|
243
|
+
//// 1. Toggle States aller Switches setzen ////
|
|
269
244
|
//// Cookies setzen usw. ////
|
|
270
245
|
initializeToggleStateExternal()
|
|
271
246
|
|
|
272
247
|
initializeToggleStateTracking()
|
|
273
248
|
|
|
274
|
-
////
|
|
249
|
+
//// 2. Event Listener initialisieren ////
|
|
275
250
|
initializeEventListeners()
|
|
276
251
|
|
|
277
252
|
shouldDialogBeOpendOnLoad()
|
|
278
|
-
|
|
279
|
-
//// 4. Funktion extern aufrufbar machen ////
|
|
280
|
-
return {
|
|
281
|
-
initializeSettingsButtons: initializeSettingsButtons,
|
|
282
|
-
}
|
|
283
253
|
}
|
|
284
254
|
|
|
285
255
|
export default DataPolicySettings
|
|
@@ -1,32 +1,42 @@
|
|
|
1
1
|
<div class="flex items-center justify-center mt-4 md:mt-2 md:justify-end js-load" data-hr-data-policy-settings-ds='{}'>
|
|
2
|
-
{{
|
|
3
|
-
{{
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
{{#with this}}
|
|
3
|
+
{{#> components/button/button _size="md" _id="globalSettingsButton" _css=" js-data-policy-settings-button" _variant="secondary" _onBackground=(configProperty "footer.onBackground") }}
|
|
4
|
+
{{> components/button/components/button_icon _icon="settings" _iconmap="icons" _css="w-5 h-5"}}
|
|
5
|
+
{{> components/button/components/button_label _label=(loca "cookies_setting_button_text")}}
|
|
6
|
+
{{/components/button/button}}
|
|
7
|
+
{{#*inline "htmlProperties"}}
|
|
8
|
+
data-piano-tracking='{"label":"Footer","secondLevelId":"1"}'
|
|
9
|
+
data-a11y-dialog-show="datapolicy-settings-dialog"
|
|
10
|
+
{{/inline}}
|
|
11
|
+
{{/with}}
|
|
12
|
+
</div>
|
|
13
|
+
<div id="datapolicy-settings-dialog"
|
|
14
|
+
aria-labelledby="datapolicy-settings-title"
|
|
15
|
+
aria-hidden="true" class="aria-hidden:hidden flex justify-center fixed inset-0 z-300 overflow-y-scroll">
|
|
16
|
+
<div class="fixed w-full h-full top-0 left-0 right-0 bottom-0 bg-black/[0.5] js-data-policy-settings-overlay{{#if _webview}} hidden{{/if}}" data-a11y-dialog-hide>
|
|
17
|
+
</div>
|
|
18
|
+
<div role="document" class="pt-0 max-w-[480px] z-300 bg-white mb-6">
|
|
9
19
|
<div class="flex w-full px-6 bg-primary z-100">
|
|
10
20
|
<span class="flex justify-start w-full py-4">
|
|
11
21
|
<span
|
|
12
22
|
class="pr-4 -ml-1 fill-white"> {{> components/base/image/icon _icon="settings" _addClass="h-7 w-7 inline" }}</span>
|
|
13
23
|
<span class="w-full text-2xl text-white font-headingSerif">Einstellungen</span>
|
|
14
|
-
<button class="text-white bg-transparent fill-current js-data-policy-settings-close-button">
|
|
24
|
+
<button type="button" "aria-label="Close dialog" class="link-focus-white text-white bg-transparent fill-current js-data-policy-settings-close-button" data-a11y-dialog-hide>
|
|
15
25
|
{{> components/base/image/icon _icon="close" _addClass="h-6 w-6 inline"}}
|
|
16
26
|
</button>
|
|
17
27
|
</span>
|
|
18
28
|
</div>
|
|
19
29
|
|
|
20
30
|
<div class="bg-[#d8e9f6] p-6 {{#if _webview}} hidden{{/if}}">
|
|
21
|
-
<span class="block text-lg text-black font-headingSerif">{{loca "cookies_setting_tracking_service_description_title"}}</span>
|
|
31
|
+
<span id="datapolicy-settings-title" class="block text-lg text-black font-headingSerif">{{loca "cookies_setting_tracking_service_description_title"}}</span>
|
|
22
32
|
<p class="mt-4 text-black">
|
|
23
33
|
{{#with this.footerMetadata}}
|
|
24
34
|
{{#with this.dataProtectionLink}}
|
|
25
35
|
{{loca "cookies_setting_tracking_service_description_text"}}
|
|
26
|
-
<a class="block mt-2 text-link hover:underline" target="_blank"
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
36
|
+
<a class="ds-link block mt-2 text-link hover:underline" target="_blank"
|
|
37
|
+
rel="noopener noreferrer" href="{{this.url}}"
|
|
38
|
+
title="Mehr Informationen zum Thema Datenschutz">Mehr Informationen zum Thema Datenschutz
|
|
39
|
+
{{#if this.targetBlank}}{{~> components/base/image/icon _icon="extern" _addClass="icon--primary icon--textRight" _iconmap="icons"~}}{{/if}}
|
|
30
40
|
</a>
|
|
31
41
|
{{/with}}
|
|
32
42
|
{{/with}}
|
|
@@ -40,19 +50,19 @@
|
|
|
40
50
|
<ul class="{{#if _webview}} hidden{{/if}}">
|
|
41
51
|
<li class="px-6 py-3 flex justify-between items-center bg-white border-t border-[#e3e3e3] tracking_1">
|
|
42
52
|
<span class="text-base text-black">AGF <a
|
|
43
|
-
class="mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
53
|
+
class="ds-link mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
44
54
|
href="https://www.agf.de/" title="AGF">(https://www.agf.de/)</a></span>
|
|
45
55
|
<div class="flex w-fit toggleSwitch">
|
|
46
|
-
{{> components/forms/toggle_button _id="agf" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false }}
|
|
56
|
+
{{> components/forms/toggle_button _id="agf" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false _screenReaderText="agf aktivieren/deaktivieren" }}
|
|
47
57
|
</div>
|
|
48
58
|
</li>
|
|
49
59
|
<li class="px-6 py-3 flex justify-between items-center bg-white border-t border-[#e3e3e3] tracking_2">
|
|
50
60
|
<span class="text-base text-black">AT Internet <a
|
|
51
|
-
class="mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
61
|
+
class="ds-link mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
52
62
|
href="https://www.atinternet.com/de/"
|
|
53
63
|
title="AT Internet">(https://www.atinternet.com/de/)</a></span>
|
|
54
64
|
<div class="flex w-fit toggleSwitch">
|
|
55
|
-
{{> components/forms/toggle_button _id="ati" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false }}
|
|
65
|
+
{{> components/forms/toggle_button _id="ati" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false _screenReaderText="at internet aktivieren/deaktivieren"}}
|
|
56
66
|
</div>
|
|
57
67
|
</li>
|
|
58
68
|
</ul>
|
|
@@ -63,10 +73,10 @@
|
|
|
63
73
|
{{#with this.footerMetadata}}
|
|
64
74
|
{{#with this.dataProtectionLink}}
|
|
65
75
|
{{loca "cookies_setting_description_text"}}
|
|
66
|
-
<a class=
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
76
|
+
<a class=ds-link block mt-2 text-link hover:underline" target="_blank"
|
|
77
|
+
rel="noopener noreferrer" href="{{this.url}}"
|
|
78
|
+
title="Mehr Informationen zum Thema Datenschutz">Mehr Informationen zum Thema Datenschutz
|
|
79
|
+
{{#if this.targetBlank}}{{~> components/base/image/icon _icon="extern" _addClass="icon--primary icon--textRight" _iconmap="icons"~}}{{/if}}
|
|
70
80
|
</a>
|
|
71
81
|
{{/with}}
|
|
72
82
|
{{/with}}
|
|
@@ -77,7 +87,7 @@
|
|
|
77
87
|
<div class="flex justify-between all">
|
|
78
88
|
<span class="inline-flex text-base text-black js-providerTitle">x</span>
|
|
79
89
|
<div class="flex float-right toggleSwitch">
|
|
80
|
-
{{> components/forms/toggle_button _id="all" _addClass="js-toggleSwitch-checkbox-all"}}
|
|
90
|
+
{{> components/forms/toggle_button _id="all" _addClass="js-toggleSwitch-checkbox-all" _screenReaderText="alle aktivieren/deaktivieren"}}
|
|
81
91
|
</div>
|
|
82
92
|
</div>
|
|
83
93
|
</div>
|
|
@@ -88,12 +98,11 @@
|
|
|
88
98
|
<li class="bg-white py-2.5 px-6 border-t border-[#e3e3e3] {{this.key}}">
|
|
89
99
|
<span class="inline-flex text-base leading-6 text-black align-text-top">{{this.value}}</span>
|
|
90
100
|
<div class="flex float-right toggleSwitch">
|
|
91
|
-
{{> components/forms/toggle_button _id=this.key _addClass="js-toggleSwitch-checkbox js-toggleSwitch-external" _isInitiallyHidden=this.isInitiallyHidden }}
|
|
101
|
+
{{> components/forms/toggle_button _id=this.key _addClass="js-toggleSwitch-checkbox js-toggleSwitch-external" _isInitiallyHidden=this.isInitiallyHidden _screenReaderText=(loca "screen_reader_text_external_anbieter" this.key)}}
|
|
92
102
|
</div>
|
|
93
103
|
</li>
|
|
94
104
|
{{/each}}
|
|
95
105
|
{{/with}}
|
|
96
106
|
</ul>
|
|
97
107
|
</div>
|
|
98
|
-
</div>
|
|
99
108
|
</div>
|
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
<input class="h-0 w-0
|
|
2
|
-
<label class="bg-toggle-default cursor-pointer w-[50px] h-[25px] block rounded-3xl relative toggleSwitch-label" for="{{_id}}">
|
|
1
|
+
<input class="h-0 w-0 opacity-0 toggleSwitch-checkbox {{_addClass}}" type="checkbox" id="{{_id}}" {{#unless _isInitiallyHidden}}initial="checked"{{/unless}}/>
|
|
2
|
+
<label class="bg-toggle-default cursor-pointer w-[50px] h-[25px] block rounded-3xl relative toggleSwitch-label" for="{{_id}}">
|
|
3
|
+
<span class="sr-only">{{_screenReaderText}}</span>
|
|
4
|
+
{{> components/base/image/icon _icon="check" _addClass="fill-white inline absolute h-[19px] w-[19px] left-[4px] top-[3px] toggleSwitch-labelIcon"}}</label>
|
|
@@ -1,32 +1,42 @@
|
|
|
1
1
|
<div class="flex items-center justify-center mt-4 md:mt-2 md:justify-end js-load" data-hr-data-policy-settings-ds='{}'>
|
|
2
|
-
{{
|
|
3
|
-
{{
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
{{#with this}}
|
|
3
|
+
{{#> components/button/button _size="md" _id="globalSettingsButton" _css=" js-data-policy-settings-button" _variant="secondary" _onBackground=(configProperty "footer.onBackground") }}
|
|
4
|
+
{{> components/button/components/button_icon _icon="settings" _iconmap="icons" _css="w-5 h-5"}}
|
|
5
|
+
{{> components/button/components/button_label _label=(loca "cookies_setting_button_text")}}
|
|
6
|
+
{{/components/button/button}}
|
|
7
|
+
{{#*inline "htmlProperties"}}
|
|
8
|
+
data-piano-tracking='{"label":"Footer","secondLevelId":"1"}'
|
|
9
|
+
data-a11y-dialog-show="datapolicy-settings-dialog"
|
|
10
|
+
{{/inline}}
|
|
11
|
+
{{/with}}
|
|
12
|
+
</div>
|
|
13
|
+
<div id="datapolicy-settings-dialog"
|
|
14
|
+
aria-labelledby="datapolicy-settings-title"
|
|
15
|
+
aria-hidden="true" class="aria-hidden:hidden flex justify-center fixed inset-0 z-300 overflow-y-scroll">
|
|
16
|
+
<div class="fixed w-full h-full top-0 left-0 right-0 bottom-0 bg-black/[0.5] js-data-policy-settings-overlay{{#if _webview}} hidden{{/if}}" data-a11y-dialog-hide>
|
|
17
|
+
</div>
|
|
18
|
+
<div role="document" class="pt-0 max-w-[480px] z-300 bg-white mb-6">
|
|
9
19
|
<div class="flex w-full px-6 bg-primary z-100">
|
|
10
20
|
<span class="flex justify-start w-full py-4">
|
|
11
21
|
<span
|
|
12
22
|
class="pr-4 -ml-1 fill-white"> {{> components/base/image/icon _icon="settings" _addClass="h-7 w-7 inline" }}</span>
|
|
13
23
|
<span class="w-full text-2xl text-white font-headingSerif">Einstellungen</span>
|
|
14
|
-
<button class="text-white bg-transparent fill-current js-data-policy-settings-close-button">
|
|
24
|
+
<button type="button" "aria-label="Close dialog" class="link-focus-white text-white bg-transparent fill-current js-data-policy-settings-close-button" data-a11y-dialog-hide>
|
|
15
25
|
{{> components/base/image/icon _icon="close" _addClass="h-6 w-6 inline"}}
|
|
16
26
|
</button>
|
|
17
27
|
</span>
|
|
18
28
|
</div>
|
|
19
29
|
|
|
20
30
|
<div class="bg-[#d8e9f6] p-6 {{#if _webview}} hidden{{/if}}">
|
|
21
|
-
<span class="block text-lg text-black font-headingSerif">{{loca "cookies_setting_tracking_service_description_title"}}</span>
|
|
31
|
+
<span id="datapolicy-settings-title" class="block text-lg text-black font-headingSerif">{{loca "cookies_setting_tracking_service_description_title"}}</span>
|
|
22
32
|
<p class="mt-4 text-black">
|
|
23
33
|
{{#with this.footerMetadata}}
|
|
24
34
|
{{#with this.dataProtectionLink}}
|
|
25
35
|
{{loca "cookies_setting_tracking_service_description_text"}}
|
|
26
|
-
<a class="block mt-2 text-link hover:underline" target="_blank"
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
36
|
+
<a class="ds-link block mt-2 text-link hover:underline" target="_blank"
|
|
37
|
+
rel="noopener noreferrer" href="{{this.url}}"
|
|
38
|
+
title="Mehr Informationen zum Thema Datenschutz">Mehr Informationen zum Thema Datenschutz
|
|
39
|
+
{{#if this.targetBlank}}{{~> components/base/image/icon _icon="extern" _addClass="icon--primary icon--textRight" _iconmap="icons"~}}{{/if}}
|
|
30
40
|
</a>
|
|
31
41
|
{{/with}}
|
|
32
42
|
{{/with}}
|
|
@@ -40,19 +50,19 @@
|
|
|
40
50
|
<ul class="{{#if _webview}} hidden{{/if}}">
|
|
41
51
|
<li class="px-6 py-3 flex justify-between items-center bg-white border-t border-[#e3e3e3] tracking_1">
|
|
42
52
|
<span class="text-base text-black">AGF <a
|
|
43
|
-
class="mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
53
|
+
class="ds-link mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
44
54
|
href="https://www.agf.de/" title="AGF">(https://www.agf.de/)</a></span>
|
|
45
55
|
<div class="flex w-fit toggleSwitch">
|
|
46
|
-
{{> components/forms/toggle_button _id="agf" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false }}
|
|
56
|
+
{{> components/forms/toggle_button _id="agf" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false _screenReaderText="agf aktivieren/deaktivieren" }}
|
|
47
57
|
</div>
|
|
48
58
|
</li>
|
|
49
59
|
<li class="px-6 py-3 flex justify-between items-center bg-white border-t border-[#e3e3e3] tracking_2">
|
|
50
60
|
<span class="text-base text-black">AT Internet <a
|
|
51
|
-
class="mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
61
|
+
class="ds-link mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
52
62
|
href="https://www.atinternet.com/de/"
|
|
53
63
|
title="AT Internet">(https://www.atinternet.com/de/)</a></span>
|
|
54
64
|
<div class="flex w-fit toggleSwitch">
|
|
55
|
-
{{> components/forms/toggle_button _id="ati" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false }}
|
|
65
|
+
{{> components/forms/toggle_button _id="ati" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false _screenReaderText="at internet aktivieren/deaktivieren"}}
|
|
56
66
|
</div>
|
|
57
67
|
</li>
|
|
58
68
|
</ul>
|
|
@@ -63,10 +73,10 @@
|
|
|
63
73
|
{{#with this.footerMetadata}}
|
|
64
74
|
{{#with this.dataProtectionLink}}
|
|
65
75
|
{{loca "cookies_setting_description_text"}}
|
|
66
|
-
<a class=
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
76
|
+
<a class=ds-link block mt-2 text-link hover:underline" target="_blank"
|
|
77
|
+
rel="noopener noreferrer" href="{{this.url}}"
|
|
78
|
+
title="Mehr Informationen zum Thema Datenschutz">Mehr Informationen zum Thema Datenschutz
|
|
79
|
+
{{#if this.targetBlank}}{{~> components/base/image/icon _icon="extern" _addClass="icon--primary icon--textRight" _iconmap="icons"~}}{{/if}}
|
|
70
80
|
</a>
|
|
71
81
|
{{/with}}
|
|
72
82
|
{{/with}}
|
|
@@ -77,7 +87,7 @@
|
|
|
77
87
|
<div class="flex justify-between all">
|
|
78
88
|
<span class="inline-flex text-base text-black js-providerTitle">x</span>
|
|
79
89
|
<div class="flex float-right toggleSwitch">
|
|
80
|
-
{{> components/forms/toggle_button _id="all" _addClass="js-toggleSwitch-checkbox-all"}}
|
|
90
|
+
{{> components/forms/toggle_button _id="all" _addClass="js-toggleSwitch-checkbox-all" _screenReaderText="alle aktivieren/deaktivieren"}}
|
|
81
91
|
</div>
|
|
82
92
|
</div>
|
|
83
93
|
</div>
|
|
@@ -88,12 +98,11 @@
|
|
|
88
98
|
<li class="bg-white py-2.5 px-6 border-t border-[#e3e3e3] {{this.key}}">
|
|
89
99
|
<span class="inline-flex text-base leading-6 text-black align-text-top">{{this.value}}</span>
|
|
90
100
|
<div class="flex float-right toggleSwitch">
|
|
91
|
-
{{> components/forms/toggle_button _id=this.key _addClass="js-toggleSwitch-checkbox js-toggleSwitch-external" _isInitiallyHidden=this.isInitiallyHidden }}
|
|
101
|
+
{{> components/forms/toggle_button _id=this.key _addClass="js-toggleSwitch-checkbox js-toggleSwitch-external" _isInitiallyHidden=this.isInitiallyHidden _screenReaderText=(loca "screen_reader_text_external_anbieter" this.key)}}
|
|
92
102
|
</div>
|
|
93
103
|
</li>
|
|
94
104
|
{{/each}}
|
|
95
105
|
{{/with}}
|
|
96
106
|
</ul>
|
|
97
107
|
</div>
|
|
98
|
-
</div>
|
|
99
108
|
</div>
|
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
<input class="h-0 w-0
|
|
2
|
-
<label class="bg-toggle-default cursor-pointer w-[50px] h-[25px] block rounded-3xl relative toggleSwitch-label" for="{{_id}}">
|
|
1
|
+
<input class="h-0 w-0 opacity-0 toggleSwitch-checkbox {{_addClass}}" type="checkbox" id="{{_id}}" {{#unless _isInitiallyHidden}}initial="checked"{{/unless}}/>
|
|
2
|
+
<label class="bg-toggle-default cursor-pointer w-[50px] h-[25px] block rounded-3xl relative toggleSwitch-label" for="{{_id}}">
|
|
3
|
+
<span class="sr-only">{{_screenReaderText}}</span>
|
|
4
|
+
{{> components/base/image/icon _icon="check" _addClass="fill-white inline absolute h-[19px] w-[19px] left-[4px] top-[3px] toggleSwitch-labelIcon"}}</label>
|
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.51.0",
|
|
10
10
|
"scripts": {
|
|
11
11
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
12
12
|
"storybook": "storybook dev -p 6006 public",
|
|
@@ -109,6 +109,7 @@
|
|
|
109
109
|
"@alpinejs/collapse": "^3.8.1",
|
|
110
110
|
"@alpinejs/intersect": "^3.13.3",
|
|
111
111
|
"@tailwindcss/line-clamp": "^0.4.2",
|
|
112
|
+
"a11y-dialog": "^8.0.4",
|
|
112
113
|
"alpinejs": "^3.8.1",
|
|
113
114
|
"async-alpine": "^1.0.0",
|
|
114
115
|
"dialog-polyfill": "^0.5.6",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter":"{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"share_whatsapp_linktitle": "Bei Whatsapp teilen",
|
|
123
123
|
"share_print_linktitle": "Seite ausdrucken",
|
|
124
124
|
"social_media_links_text": "Folgen Sie mir:",
|
|
125
|
+
"screen_reader_text_external_anbieter": "{0} aktivieren/deaktivieren",
|
|
125
126
|
"story_cite_author_sr": "Zitat von",
|
|
126
127
|
"story_cite_intro_sr": "Zitat",
|
|
127
128
|
"story_cite_outro_sr": "Zitat Ende",
|
|
@@ -228,6 +228,10 @@
|
|
|
228
228
|
.toggleSwitch-checkbox:checked+.toggleSwitch-label {
|
|
229
229
|
@apply bg-toggle-confirmation;
|
|
230
230
|
}
|
|
231
|
+
|
|
232
|
+
.toggleSwitch-checkbox:focus+.toggleSwitch-label {
|
|
233
|
+
@apply shadow-teaser-focus shadow-focus-state outline-none;
|
|
234
|
+
}
|
|
231
235
|
|
|
232
236
|
.toggleSwitch-label {
|
|
233
237
|
@apply after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:w-[21px] after:h-[21px] after:bg-white after:rounded-2xl after:transition-all after:duration-300
|
package/src/assets/js/alpine.js
CHANGED
|
@@ -10,6 +10,7 @@ import mainNavigationHandler from 'components/site_header/mainNavigationHandler.
|
|
|
10
10
|
import flyoutHandler from 'components/site_header/flyoutHandler.alpine'
|
|
11
11
|
import overlayHandler from 'components/site_header/overlayHandler.alpine'
|
|
12
12
|
import dropdown from 'components/site_header/dropdown.alpine'
|
|
13
|
+
|
|
13
14
|
|
|
14
15
|
AsyncAlpine.init(Alpine)
|
|
15
16
|
.data('podcastPlayer', () => import('components/podcast/podcast_player.alpine.js'))
|
|
@@ -7,7 +7,7 @@ const isTrackingAllowed = () => {
|
|
|
7
7
|
|
|
8
8
|
const uxAction = (label, secondLevelId) => {
|
|
9
9
|
secondLevelId = secondLevelId || pageDisplayConfig.site_level2
|
|
10
|
-
if (pa && isTrackingAllowed()) {
|
|
10
|
+
if (typeof pa != "undefined" && pa != undefined && isTrackingAllowed()) {
|
|
11
11
|
pa.sendEvent('click.action', {
|
|
12
12
|
click: label,
|
|
13
13
|
site_level2: secondLevelId,
|
|
@@ -17,7 +17,7 @@ const uxAction = (label, secondLevelId) => {
|
|
|
17
17
|
|
|
18
18
|
const uxNavigation = (label, secondLevelId) => {
|
|
19
19
|
secondLevelId = secondLevelId || pageDisplayConfig.site_level2
|
|
20
|
-
if (pa && isTrackingAllowed()) {
|
|
20
|
+
if (typeof pa != "undefined" && pa != undefined && isTrackingAllowed()) {
|
|
21
21
|
pa.sendEvent('click.navigation', {
|
|
22
22
|
click: label,
|
|
23
23
|
site_level2: secondLevelId,
|
|
@@ -26,14 +26,14 @@ const uxNavigation = (label, secondLevelId) => {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
const pi = (label, secondLevelId) => {
|
|
29
|
-
if (pa && isTrackingAllowed()) {
|
|
29
|
+
if (typeof pa != "undefined" && pa != undefined && isTrackingAllowed()) {
|
|
30
30
|
pa.sendEvent('page.display', pageDisplayConfig)
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
const download = (label, secondLevelId) => {
|
|
35
35
|
secondLevelId = secondLevelId || pageDisplayConfig.site_level2
|
|
36
|
-
if (pa && isTrackingAllowed()) {
|
|
36
|
+
if (typeof pa != "undefined" && pa != undefined && isTrackingAllowed()) {
|
|
37
37
|
pa.sendEvent('click.download', {
|
|
38
38
|
click: label,
|
|
39
39
|
site_level2: secondLevelId,
|
|
@@ -3,25 +3,26 @@ import TrackingCookie from 'components/externalService/trackingCookie.subfeature
|
|
|
3
3
|
import { fireEvent, getJSONCookie, hr$, setJSONCookie, listen } from 'hrQuery'
|
|
4
4
|
import { uxAction } from 'base/tracking/pianoHelper.subfeature'
|
|
5
5
|
|
|
6
|
+
import A11yDialog from 'a11y-dialog'
|
|
7
|
+
|
|
6
8
|
const DataPolicySettings = function (context) {
|
|
7
9
|
const { options } = context,
|
|
8
10
|
{ element: rootElement } = context,
|
|
11
|
+
container = hr$('#datapolicy-settings-dialog',document)[0],
|
|
12
|
+
dialog = new A11yDialog(container),
|
|
9
13
|
settingsButtons = hr$('.js-data-policy-settings-button', document),
|
|
10
14
|
overlay = hr$('.js-data-policy-settings-overlay', rootElement)[0],
|
|
11
15
|
closeButton = hr$('.js-data-policy-settings-close-button', rootElement)[0],
|
|
12
16
|
bodyElement = document.getElementsByTagName('html')[0],
|
|
13
17
|
datapolicyCookie = new DatapolicyCookie(),
|
|
14
18
|
trackingCookie = new TrackingCookie(),
|
|
15
|
-
toggleSwitches = hr$('.js-toggleSwitch-checkbox',
|
|
16
|
-
toggleSwitchesExternal = hr$('.js-toggleSwitch-external',
|
|
17
|
-
toggleSwitchesTracking = hr$('.js-toggleSwitch-tracking',
|
|
18
|
-
toggleAllSwitch = hr$('.js-toggleSwitch-checkbox-all',
|
|
19
|
-
providerTitle = hr$('.js-providerTitle',
|
|
19
|
+
toggleSwitches = hr$('.js-toggleSwitch-checkbox', container),
|
|
20
|
+
toggleSwitchesExternal = hr$('.js-toggleSwitch-external', container),
|
|
21
|
+
toggleSwitchesTracking = hr$('.js-toggleSwitch-tracking', container),
|
|
22
|
+
toggleAllSwitch = hr$('.js-toggleSwitch-checkbox-all', container)[0],
|
|
23
|
+
providerTitle = hr$('.js-providerTitle', container)[0],
|
|
20
24
|
trackingCookieLifetime = 1000 * 60 * 60 * 24 * 365 * 10
|
|
21
|
-
|
|
22
|
-
isWebview = window.parent.document.documentElement.classList.contains('webview'),
|
|
23
|
-
//isWebview = window.location.href.match(/(app)(\.[a-zA-Z]*)(\.de)/i), //App URL ...app.hr.de
|
|
24
|
-
//isWebview = window.location.href.match(/(app)/i), //App URL ...app.hr.de
|
|
25
|
+
let isWebview = window.parent.document.documentElement.classList.contains('webview'),
|
|
25
26
|
cookie = {}
|
|
26
27
|
|
|
27
28
|
console.log('gelaaaadeeeeeeeen')
|
|
@@ -51,48 +52,28 @@ const DataPolicySettings = function (context) {
|
|
|
51
52
|
cookie = 'true'
|
|
52
53
|
setJSONCookie('hsAppSettingsButton', cookie, trackingCookieLifetime)
|
|
53
54
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
if (settingsButtons.length - i == 1) {
|
|
57
|
-
listen(
|
|
58
|
-
'click',
|
|
59
|
-
function () {
|
|
60
|
-
openDialog('Footer')
|
|
61
|
-
atiSecondLevelId = 1
|
|
62
|
-
},
|
|
63
|
-
settingsButtons[i]
|
|
64
|
-
)
|
|
65
|
-
} else {
|
|
66
|
-
if (!settingsButtons[i].getAttribute('listener')) {
|
|
67
|
-
listen(
|
|
68
|
-
'click',
|
|
69
|
-
function () {
|
|
70
|
-
openDialog('DSGVO-Overlay')
|
|
71
|
-
},
|
|
72
|
-
settingsButtons[i]
|
|
73
|
-
)
|
|
74
|
-
settingsButtons[i].setAttribute('listener', 'true')
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
const openDialog = function (settingsButtonLocation) {
|
|
80
|
-
overlay.classList.add('!flex')
|
|
55
|
+
|
|
56
|
+
const onDialogShow = function (event) {
|
|
81
57
|
bodyElement.classList.add('optionOpen')
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
58
|
+
const opener = event.detail == null && event.detail.target.closest('[data-a11y-dialog-show]') ? event.detail.target.closest('[data-a11y-dialog-show]') : null
|
|
59
|
+
const pianoTracking = null != opener && undefined !== opener.dataset.pianoTracking ? JSON.parse(opener.dataset.pianoTracking) : {label:"Datenschutzerklärung"}
|
|
60
|
+
if(undefined !== pianoTracking.secondLevelId){
|
|
61
|
+
console.log(pianoTracking)
|
|
62
|
+
uxAction('Einstellungsdialog geöffnet - ' + pianoTracking.label, pianoTracking.secondLevelId)
|
|
63
|
+
}else{
|
|
64
|
+
console.log(pianoTracking)
|
|
65
|
+
uxAction('Einstellungsdialog geöffnet - ' + pianoTracking.label)
|
|
66
|
+
}
|
|
87
67
|
}
|
|
88
|
-
|
|
89
|
-
|
|
68
|
+
|
|
69
|
+
const onDialogHide = function () {
|
|
70
|
+
console.log("Hide")
|
|
90
71
|
bodyElement.classList.remove('optionOpen')
|
|
91
72
|
}
|
|
92
73
|
const shouldDialogBeOpendOnLoad = function () {
|
|
93
74
|
const urlParam = getUrlVars()['openDialog']
|
|
94
75
|
if (typeof urlParam !== 'undefined' && urlParam === 'true') {
|
|
95
|
-
|
|
76
|
+
dialog.show()
|
|
96
77
|
}
|
|
97
78
|
}
|
|
98
79
|
const getUrlVars = function () {
|
|
@@ -253,33 +234,22 @@ const DataPolicySettings = function (context) {
|
|
|
253
234
|
return trackingCookie.isTrackingCookieExistent(trackingService)
|
|
254
235
|
}
|
|
255
236
|
const initializeEventListeners = function () {
|
|
256
|
-
listen('hr:settingsButtonInsideDataPolicyBoxClicked', function () {
|
|
257
|
-
openDialog('DSGVO-Overlay')
|
|
258
|
-
})
|
|
259
237
|
listen('change', toggleAll, toggleAllSwitch)
|
|
260
|
-
listen(
|
|
261
|
-
listen(
|
|
238
|
+
listen("show", onDialogShow, container)
|
|
239
|
+
listen("hide", onDialogHide, container)
|
|
262
240
|
}
|
|
263
241
|
// steuert die Darstellung des Buttons für die hs-App ///
|
|
264
242
|
showSettingsButton()
|
|
265
|
-
//// 1.
|
|
266
|
-
initializeSettingsButtons()
|
|
267
|
-
|
|
268
|
-
//// 2. Toggle States aller Switches setzen ////
|
|
243
|
+
//// 1. Toggle States aller Switches setzen ////
|
|
269
244
|
//// Cookies setzen usw. ////
|
|
270
245
|
initializeToggleStateExternal()
|
|
271
246
|
|
|
272
247
|
initializeToggleStateTracking()
|
|
273
248
|
|
|
274
|
-
////
|
|
249
|
+
//// 2. Event Listener initialisieren ////
|
|
275
250
|
initializeEventListeners()
|
|
276
251
|
|
|
277
252
|
shouldDialogBeOpendOnLoad()
|
|
278
|
-
|
|
279
|
-
//// 4. Funktion extern aufrufbar machen ////
|
|
280
|
-
return {
|
|
281
|
-
initializeSettingsButtons: initializeSettingsButtons,
|
|
282
|
-
}
|
|
283
253
|
}
|
|
284
254
|
|
|
285
255
|
export default DataPolicySettings
|
|
@@ -1,32 +1,42 @@
|
|
|
1
1
|
<div class="flex items-center justify-center mt-4 md:mt-2 md:justify-end js-load" data-hr-data-policy-settings-ds='{}'>
|
|
2
|
-
{{
|
|
3
|
-
{{
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
{{#with this}}
|
|
3
|
+
{{#> components/button/button _size="md" _id="globalSettingsButton" _css=" js-data-policy-settings-button" _variant="secondary" _onBackground=(configProperty "footer.onBackground") }}
|
|
4
|
+
{{> components/button/components/button_icon _icon="settings" _iconmap="icons" _css="w-5 h-5"}}
|
|
5
|
+
{{> components/button/components/button_label _label=(loca "cookies_setting_button_text")}}
|
|
6
|
+
{{/components/button/button}}
|
|
7
|
+
{{#*inline "htmlProperties"}}
|
|
8
|
+
data-piano-tracking='{"label":"Footer","secondLevelId":"1"}'
|
|
9
|
+
data-a11y-dialog-show="datapolicy-settings-dialog"
|
|
10
|
+
{{/inline}}
|
|
11
|
+
{{/with}}
|
|
12
|
+
</div>
|
|
13
|
+
<div id="datapolicy-settings-dialog"
|
|
14
|
+
aria-labelledby="datapolicy-settings-title"
|
|
15
|
+
aria-hidden="true" class="aria-hidden:hidden flex justify-center fixed inset-0 z-300 overflow-y-scroll">
|
|
16
|
+
<div class="fixed w-full h-full top-0 left-0 right-0 bottom-0 bg-black/[0.5] js-data-policy-settings-overlay{{#if _webview}} hidden{{/if}}" data-a11y-dialog-hide>
|
|
17
|
+
</div>
|
|
18
|
+
<div role="document" class="pt-0 max-w-[480px] z-300 bg-white mb-6">
|
|
9
19
|
<div class="flex w-full px-6 bg-primary z-100">
|
|
10
20
|
<span class="flex justify-start w-full py-4">
|
|
11
21
|
<span
|
|
12
22
|
class="pr-4 -ml-1 fill-white"> {{> components/base/image/icon _icon="settings" _addClass="h-7 w-7 inline" }}</span>
|
|
13
23
|
<span class="w-full text-2xl text-white font-headingSerif">Einstellungen</span>
|
|
14
|
-
<button class="text-white bg-transparent fill-current js-data-policy-settings-close-button">
|
|
24
|
+
<button type="button" "aria-label="Close dialog" class="link-focus-white text-white bg-transparent fill-current js-data-policy-settings-close-button" data-a11y-dialog-hide>
|
|
15
25
|
{{> components/base/image/icon _icon="close" _addClass="h-6 w-6 inline"}}
|
|
16
26
|
</button>
|
|
17
27
|
</span>
|
|
18
28
|
</div>
|
|
19
29
|
|
|
20
30
|
<div class="bg-[#d8e9f6] p-6 {{#if _webview}} hidden{{/if}}">
|
|
21
|
-
<span class="block text-lg text-black font-headingSerif">{{loca "cookies_setting_tracking_service_description_title"}}</span>
|
|
31
|
+
<span id="datapolicy-settings-title" class="block text-lg text-black font-headingSerif">{{loca "cookies_setting_tracking_service_description_title"}}</span>
|
|
22
32
|
<p class="mt-4 text-black">
|
|
23
33
|
{{#with this.footerMetadata}}
|
|
24
34
|
{{#with this.dataProtectionLink}}
|
|
25
35
|
{{loca "cookies_setting_tracking_service_description_text"}}
|
|
26
|
-
<a class="block mt-2 text-link hover:underline" target="_blank"
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
36
|
+
<a class="ds-link block mt-2 text-link hover:underline" target="_blank"
|
|
37
|
+
rel="noopener noreferrer" href="{{this.url}}"
|
|
38
|
+
title="Mehr Informationen zum Thema Datenschutz">Mehr Informationen zum Thema Datenschutz
|
|
39
|
+
{{#if this.targetBlank}}{{~> components/base/image/icon _icon="extern" _addClass="icon--primary icon--textRight" _iconmap="icons"~}}{{/if}}
|
|
30
40
|
</a>
|
|
31
41
|
{{/with}}
|
|
32
42
|
{{/with}}
|
|
@@ -40,19 +50,19 @@
|
|
|
40
50
|
<ul class="{{#if _webview}} hidden{{/if}}">
|
|
41
51
|
<li class="px-6 py-3 flex justify-between items-center bg-white border-t border-[#e3e3e3] tracking_1">
|
|
42
52
|
<span class="text-base text-black">AGF <a
|
|
43
|
-
class="mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
53
|
+
class="ds-link mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
44
54
|
href="https://www.agf.de/" title="AGF">(https://www.agf.de/)</a></span>
|
|
45
55
|
<div class="flex w-fit toggleSwitch">
|
|
46
|
-
{{> components/forms/toggle_button _id="agf" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false }}
|
|
56
|
+
{{> components/forms/toggle_button _id="agf" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false _screenReaderText="agf aktivieren/deaktivieren" }}
|
|
47
57
|
</div>
|
|
48
58
|
</li>
|
|
49
59
|
<li class="px-6 py-3 flex justify-between items-center bg-white border-t border-[#e3e3e3] tracking_2">
|
|
50
60
|
<span class="text-base text-black">AT Internet <a
|
|
51
|
-
class="mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
61
|
+
class="ds-link mt-3 -mb-1 text-link" target="_blank" rel="noopener noreferrer"
|
|
52
62
|
href="https://www.atinternet.com/de/"
|
|
53
63
|
title="AT Internet">(https://www.atinternet.com/de/)</a></span>
|
|
54
64
|
<div class="flex w-fit toggleSwitch">
|
|
55
|
-
{{> components/forms/toggle_button _id="ati" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false }}
|
|
65
|
+
{{> components/forms/toggle_button _id="ati" _addClass="js-toggleSwitch-checkbox js-toggleSwitch-tracking" _isInitiallyHidden=false _screenReaderText="at internet aktivieren/deaktivieren"}}
|
|
56
66
|
</div>
|
|
57
67
|
</li>
|
|
58
68
|
</ul>
|
|
@@ -63,10 +73,10 @@
|
|
|
63
73
|
{{#with this.footerMetadata}}
|
|
64
74
|
{{#with this.dataProtectionLink}}
|
|
65
75
|
{{loca "cookies_setting_description_text"}}
|
|
66
|
-
<a class=
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
76
|
+
<a class=ds-link block mt-2 text-link hover:underline" target="_blank"
|
|
77
|
+
rel="noopener noreferrer" href="{{this.url}}"
|
|
78
|
+
title="Mehr Informationen zum Thema Datenschutz">Mehr Informationen zum Thema Datenschutz
|
|
79
|
+
{{#if this.targetBlank}}{{~> components/base/image/icon _icon="extern" _addClass="icon--primary icon--textRight" _iconmap="icons"~}}{{/if}}
|
|
70
80
|
</a>
|
|
71
81
|
{{/with}}
|
|
72
82
|
{{/with}}
|
|
@@ -77,7 +87,7 @@
|
|
|
77
87
|
<div class="flex justify-between all">
|
|
78
88
|
<span class="inline-flex text-base text-black js-providerTitle">x</span>
|
|
79
89
|
<div class="flex float-right toggleSwitch">
|
|
80
|
-
{{> components/forms/toggle_button _id="all" _addClass="js-toggleSwitch-checkbox-all"}}
|
|
90
|
+
{{> components/forms/toggle_button _id="all" _addClass="js-toggleSwitch-checkbox-all" _screenReaderText="alle aktivieren/deaktivieren"}}
|
|
81
91
|
</div>
|
|
82
92
|
</div>
|
|
83
93
|
</div>
|
|
@@ -88,12 +98,11 @@
|
|
|
88
98
|
<li class="bg-white py-2.5 px-6 border-t border-[#e3e3e3] {{this.key}}">
|
|
89
99
|
<span class="inline-flex text-base leading-6 text-black align-text-top">{{this.value}}</span>
|
|
90
100
|
<div class="flex float-right toggleSwitch">
|
|
91
|
-
{{> components/forms/toggle_button _id=this.key _addClass="js-toggleSwitch-checkbox js-toggleSwitch-external" _isInitiallyHidden=this.isInitiallyHidden }}
|
|
101
|
+
{{> components/forms/toggle_button _id=this.key _addClass="js-toggleSwitch-checkbox js-toggleSwitch-external" _isInitiallyHidden=this.isInitiallyHidden _screenReaderText=(loca "screen_reader_text_external_anbieter" this.key)}}
|
|
92
102
|
</div>
|
|
93
103
|
</li>
|
|
94
104
|
{{/each}}
|
|
95
105
|
{{/with}}
|
|
96
106
|
</ul>
|
|
97
107
|
</div>
|
|
98
|
-
</div>
|
|
99
108
|
</div>
|
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
<input class="h-0 w-0
|
|
2
|
-
<label class="bg-toggle-default cursor-pointer w-[50px] h-[25px] block rounded-3xl relative toggleSwitch-label" for="{{_id}}">
|
|
1
|
+
<input class="h-0 w-0 opacity-0 toggleSwitch-checkbox {{_addClass}}" type="checkbox" id="{{_id}}" {{#unless _isInitiallyHidden}}initial="checked"{{/unless}}/>
|
|
2
|
+
<label class="bg-toggle-default cursor-pointer w-[50px] h-[25px] block rounded-3xl relative toggleSwitch-label" for="{{_id}}">
|
|
3
|
+
<span class="sr-only">{{_screenReaderText}}</span>
|
|
4
|
+
{{> components/base/image/icon _icon="check" _addClass="fill-white inline absolute h-[19px] w-[19px] left-[4px] top-[3px] toggleSwitch-labelIcon"}}</label>
|