Version Description
Download this release
Release Info
Developer | devowl |
Plugin | Real Cookie Banner: GDPR (DSGVO) & ePrivacy Cookie Consent |
Version | 3.0.1 |
Comparing to | |
See all releases |
Code changes from version 3.0.0 to 3.0.1
- CHANGELOG.md +27 -0
- README.txt +1 -1
- inc/Core.php +1 -0
- inc/base/others/cachebuster-lib.php +1 -1
- inc/base/others/cachebuster.php +13 -13
- inc/overrides/lite/Core.php +8 -2
- inc/presets/PresetIdentifierMap.php +1 -0
- inc/presets/free/blocker/YoutubePreset.php +3 -1
- inc/presets/pro/RankMathGA4Preset.php +43 -0
- inc/presets/pro/blocker/CalendlyPreset.php +2 -1
- inc/presets/pro/blocker/GoogleMapsPreset.php +4 -1
- inc/presets/pro/blocker/ProvenExpertWidgetPreset.php +2 -1
- inc/presets/pro/blocker/RankMathGA4Preset.php +35 -0
- inc/presets/pro/blocker/ThriveLeadsPreset.php +3 -1
- inc/presets/pro/blocker/VimeoPreset.php +3 -1
- inc/scanner/Scanner.php +2 -0
- inc/view/Banner.php +6 -1
- inc/view/BannerCustomize.php +5 -0
- inc/view/Blocker.php +18 -1
- inc/view/ConfigPage.php +10 -1
- inc/view/blocker/Plugin.php +18 -0
- index.php +1 -1
- languages/real-cookie-banner-de_AT.po +27 -27
- languages/real-cookie-banner-de_CH.po +27 -27
- languages/real-cookie-banner-de_CH_informal.po +27 -27
- languages/real-cookie-banner-de_DE.po +27 -27
- languages/real-cookie-banner-de_DE_formal.po +23 -23
- languages/real-cookie-banner.pot +2 -0
- public/dist/banner.lite.js +1 -1
- public/dist/banner.lite.js.map +1 -1
CHANGELOG.md
CHANGED
@@ -3,6 +3,33 @@
|
|
3 |
All notable changes to this project will be documented in this file.
|
4 |
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
# 3.0.0 (2022-06-13)
|
7 |
|
8 |
|
3 |
All notable changes to this project will be documented in this file.
|
4 |
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
5 |
|
6 |
+
## 3.0.1 (2022-07-06)
|
7 |
+
|
8 |
+
|
9 |
+
### chore
|
10 |
+
|
11 |
+
* send accepted group slugs to consent forwarding endpoints (CU-2mk0wyq)
|
12 |
+
|
13 |
+
|
14 |
+
### fix
|
15 |
+
|
16 |
+
* allow to block JSON in inline scripts granularly (e.g. inline translations, CU-2my9x5r)
|
17 |
+
* compatibility with autoptimize and aggregate inline CSS (CU-2m7jfhg)
|
18 |
+
* compatibility with Avada Fusion Builder video facade (lite-youtube-embed, CU-2nfkhc3)
|
19 |
+
* compatibility with Elementor Pro popups and visual content blocker (CU-2kp8vmg)
|
20 |
+
* compatibility with FacetWP and Maps add-on (CU-2p6az87)
|
21 |
+
* compatibility with latest Thrive Ledas ribbons
|
22 |
+
* compatibility with NitroPack (CU-232f9nh)
|
23 |
+
* compatibility with ProvenExpert badge (CU-2nv12n8)
|
24 |
+
* compatibility with RankMath SEO and Google Analytics GA4 property (CU-2je6juk)
|
25 |
+
* exclude rcb-calc-time from scanner result source url (CU-2my9x5r)
|
26 |
+
* text for list of services not changeable when WPML/PolyLang active (CU-2nfktuh)
|
27 |
+
* wrong notice in media library about services without privacy policy (CU-2jzg30c)
|
28 |
+
|
29 |
+
|
30 |
+
|
31 |
+
|
32 |
+
|
33 |
# 3.0.0 (2022-06-13)
|
34 |
|
35 |
|
README.txt
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
=== Real Cookie Banner: GDPR (DSGVO) & ePrivacy Cookie Consent ===
|
2 |
Contributors: devowl, mguenter, jankarres, mrguenter
|
3 |
Tags: cookie banner, cookie consent, cookie plugin, cookie scanner, gdpr, dsgvo, eprivacy, eu cookie law, cookie policy, cookie, consent, consent management
|
4 |
-
Stable tag: 3.0.
|
5 |
Requires at least: 5.2
|
6 |
Requires PHP: 7.2.0
|
7 |
Tested up to: 6.0
|
1 |
=== Real Cookie Banner: GDPR (DSGVO) & ePrivacy Cookie Consent ===
|
2 |
Contributors: devowl, mguenter, jankarres, mrguenter
|
3 |
Tags: cookie banner, cookie consent, cookie plugin, cookie scanner, gdpr, dsgvo, eprivacy, eu cookie law, cookie policy, cookie, consent, consent management
|
4 |
+
Stable tag: 3.0.1
|
5 |
Requires at least: 5.2
|
6 |
Requires PHP: 7.2.0
|
7 |
Tested up to: 6.0
|
inc/Core.php
CHANGED
@@ -341,6 +341,7 @@ class Core extends \DevOwl\RealCookieBanner\base\Core implements
|
|
341 |
// WP Grid builder refresh ajax action
|
342 |
add_filter('autoptimize_filter_html_before_minify', [$this->getBlocker(), 'replace']);
|
343 |
// Autoptimize
|
|
|
344 |
add_filter('litespeed_buffer_before', [$this->getBlocker(), 'replace'], 1);
|
345 |
// LiteSpeed Cache
|
346 |
add_filter('litespeed_ccss_url', [$this->getBlocker(), 'modifyUrlToSkipContentBlocker']);
|
341 |
// WP Grid builder refresh ajax action
|
342 |
add_filter('autoptimize_filter_html_before_minify', [$this->getBlocker(), 'replace']);
|
343 |
// Autoptimize
|
344 |
+
add_filter('autoptimize_filter_css_exclude', [$this->getBlocker(), 'autoptimize_filter_css_exclude']);
|
345 |
add_filter('litespeed_buffer_before', [$this->getBlocker(), 'replace'], 1);
|
346 |
// LiteSpeed Cache
|
347 |
add_filter('litespeed_ccss_url', [$this->getBlocker(), 'modifyUrlToSkipContentBlocker']);
|
inc/base/others/cachebuster-lib.php
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
<?php
|
2 |
-
/* This file was automatically generated (
|
3 |
return [
|
4 |
'animate.css' => '4.1.1',
|
5 |
'mobx' => '4.15.7',
|
1 |
<?php
|
2 |
+
/* This file was automatically generated (Wed Jul 06 2022 09:43:07 GMT+0000 (Coordinated Universal Time)). */
|
3 |
return [
|
4 |
'animate.css' => '4.1.1',
|
5 |
'mobx' => '4.15.7',
|
inc/base/others/cachebuster.php
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
<?php
|
2 |
-
/* This file was automatically generated (
|
3 |
return [
|
4 |
'src/public/dist/13.pro.js' => '6866a22bfe639345873e9415ddeca7f4',
|
5 |
'src/public/dist/18.lite.js' => 'ac7161e6dcd33daecfd4f83e56b0cf00',
|
@@ -24,7 +24,7 @@ return [
|
|
24 |
'src/public/dist/795.pro.js' => '0f2c5c70d9be03caab24126e536c3c3d',
|
25 |
'src/public/dist/812.lite.js' => '2b4a36a5d4162172ec25662893748524',
|
26 |
'src/public/dist/836.lite.js' => 'd896b66d63bfe9ef41031dcf1cc1271f',
|
27 |
-
'src/public/dist/861.pro.js' => '
|
28 |
'src/public/dist/914.lite.js' => 'e58092e06d5f33173282b43d04705d56',
|
29 |
'src/public/dist/914.pro.js' => '182de60076ce6b7f80084a25543f0e63',
|
30 |
'src/public/dist/933.lite.js' => 'e24ccdc9754ba2f74ef5394f29bf42f6',
|
@@ -34,17 +34,17 @@ return [
|
|
34 |
'src/public/dist/995.lite.js' => '4f9f4bd3e0ad7939ef90bc7e049d0ede',
|
35 |
'src/public/dist/995.pro.js' => 'dbe57fe203f1b050ddb42490c9589efa',
|
36 |
'src/public/dist/admin.lite.js' => '26b0bc016ef23056be3339d615e626f2',
|
37 |
-
'src/public/dist/admin.pro.js' => '
|
38 |
-
'src/public/dist/banner_tcf.pro.js' => '
|
39 |
-
'src/public/dist/banner.lite.js' => '
|
40 |
-
'src/public/dist/banner.pro.js' => '
|
41 |
-
'src/public/dist/blocker_tcf.pro.js' => '
|
42 |
-
'src/public/dist/blocker.lite.js' => '
|
43 |
-
'src/public/dist/blocker.pro.js' => '
|
44 |
'src/public/dist/chunk-config-tab-blocker.lite.js' => '5cb105a818b285e48a57b59bc61ab5fa',
|
45 |
'src/public/dist/chunk-config-tab-blocker.pro.js' => '8b792453095e244c7dc64721c2f3ad0b',
|
46 |
'src/public/dist/chunk-config-tab-consent.lite.js' => '88c1c6ee015eb350b9a296d5c86d0951',
|
47 |
-
'src/public/dist/chunk-config-tab-consent.pro.js' => '
|
48 |
'src/public/dist/chunk-config-tab-cookies.lite.js' => 'bb2781128dcd96923011cc45cf44a87b',
|
49 |
'src/public/dist/chunk-config-tab-cookies.pro.js' => '987209b0473b106357bfe1cbab4f6310',
|
50 |
'src/public/dist/chunk-config-tab-dashboard.lite.js' => '470e5e758f452c37d430d813b53fcd0e',
|
@@ -59,8 +59,8 @@ return [
|
|
59 |
'src/public/dist/chunk-config-tab-settings.pro.js' => '0727d7ef8d5f8fc66869d3fb39062a46',
|
60 |
'src/public/dist/chunk-config-tab-tcf.lite.js' => '0adcbf2f3ea0f9ab7ebc49bbdd415813',
|
61 |
'src/public/dist/chunk-config-tab-tcf.pro.js' => '7e87bb493095bd8024163e00e140e746',
|
62 |
-
'src/public/dist/customize_banner.lite.js' => '
|
63 |
-
'src/public/dist/customize_banner.pro.js' => '
|
64 |
'src/public/dist/customize.lite.js' => '74eea56813259c0dec291e20466fe0bc',
|
65 |
'src/public/dist/customize.pro.js' => 'b873769232874d709740555ca1fad624',
|
66 |
'src/public/dist/queue.lite.js' => '7b9c552c5049e1b529155a7c01b25aef',
|
@@ -68,7 +68,7 @@ return [
|
|
68 |
'src/public/dist/vendor-admin.lite.js' => 'f1c19a085c135d0f8d34f8678f9737df',
|
69 |
'src/public/dist/vendor-admin.pro.js' => 'a66ff8967c03ab9411bbbe3051ca0b94',
|
70 |
'src/public/dist/vendor-banner_tcf.pro.js' => '5f087cf149b75526844e11e03ba7ca32',
|
71 |
-
'src/public/dist/vendor-banner.lite.js' => '
|
72 |
'src/public/dist/vendor-banner.pro.js' => '7a72278ea147e6c777ef2c21d441214d',
|
73 |
'src/public/dist/vendor-customize_banner.lite.js' => '18020ebd4fd9ed4062a55152c7eeb6ae',
|
74 |
'src/public/dist/vendor-customize_banner.pro.js' => '17c03de8dd20b79d97cbc928b3b826f5',
|
1 |
<?php
|
2 |
+
/* This file was automatically generated (Wed Jul 06 2022 09:43:07 GMT+0000 (Coordinated Universal Time)). */
|
3 |
return [
|
4 |
'src/public/dist/13.pro.js' => '6866a22bfe639345873e9415ddeca7f4',
|
5 |
'src/public/dist/18.lite.js' => 'ac7161e6dcd33daecfd4f83e56b0cf00',
|
24 |
'src/public/dist/795.pro.js' => '0f2c5c70d9be03caab24126e536c3c3d',
|
25 |
'src/public/dist/812.lite.js' => '2b4a36a5d4162172ec25662893748524',
|
26 |
'src/public/dist/836.lite.js' => 'd896b66d63bfe9ef41031dcf1cc1271f',
|
27 |
+
'src/public/dist/861.pro.js' => '516c5baa12315fbd7f09469279781436',
|
28 |
'src/public/dist/914.lite.js' => 'e58092e06d5f33173282b43d04705d56',
|
29 |
'src/public/dist/914.pro.js' => '182de60076ce6b7f80084a25543f0e63',
|
30 |
'src/public/dist/933.lite.js' => 'e24ccdc9754ba2f74ef5394f29bf42f6',
|
34 |
'src/public/dist/995.lite.js' => '4f9f4bd3e0ad7939ef90bc7e049d0ede',
|
35 |
'src/public/dist/995.pro.js' => 'dbe57fe203f1b050ddb42490c9589efa',
|
36 |
'src/public/dist/admin.lite.js' => '26b0bc016ef23056be3339d615e626f2',
|
37 |
+
'src/public/dist/admin.pro.js' => 'a149028897f0a3b9e666f23d5549e2e7',
|
38 |
+
'src/public/dist/banner_tcf.pro.js' => '7257bbee87e9b41ff05dd79cc759e456',
|
39 |
+
'src/public/dist/banner.lite.js' => '5f9cd3cba6c265c05eabe436701e0e34',
|
40 |
+
'src/public/dist/banner.pro.js' => '70e504dbd2c331f807d4ce1b8b9fa2cf',
|
41 |
+
'src/public/dist/blocker_tcf.pro.js' => '8914c2b4a085ed43c9f52aaad7b3c482',
|
42 |
+
'src/public/dist/blocker.lite.js' => '2344ccd001835a656457eca14d0f29cb',
|
43 |
+
'src/public/dist/blocker.pro.js' => '7ee76d54ba9bf42cda35227487c061d5',
|
44 |
'src/public/dist/chunk-config-tab-blocker.lite.js' => '5cb105a818b285e48a57b59bc61ab5fa',
|
45 |
'src/public/dist/chunk-config-tab-blocker.pro.js' => '8b792453095e244c7dc64721c2f3ad0b',
|
46 |
'src/public/dist/chunk-config-tab-consent.lite.js' => '88c1c6ee015eb350b9a296d5c86d0951',
|
47 |
+
'src/public/dist/chunk-config-tab-consent.pro.js' => '8f67614fc58a026fb0c3c4f216bcc2e6',
|
48 |
'src/public/dist/chunk-config-tab-cookies.lite.js' => 'bb2781128dcd96923011cc45cf44a87b',
|
49 |
'src/public/dist/chunk-config-tab-cookies.pro.js' => '987209b0473b106357bfe1cbab4f6310',
|
50 |
'src/public/dist/chunk-config-tab-dashboard.lite.js' => '470e5e758f452c37d430d813b53fcd0e',
|
59 |
'src/public/dist/chunk-config-tab-settings.pro.js' => '0727d7ef8d5f8fc66869d3fb39062a46',
|
60 |
'src/public/dist/chunk-config-tab-tcf.lite.js' => '0adcbf2f3ea0f9ab7ebc49bbdd415813',
|
61 |
'src/public/dist/chunk-config-tab-tcf.pro.js' => '7e87bb493095bd8024163e00e140e746',
|
62 |
+
'src/public/dist/customize_banner.lite.js' => '995619347b7f9a1e8bc619ba60f3bfdb',
|
63 |
+
'src/public/dist/customize_banner.pro.js' => 'fc002ed1c3fe400d25d46629303e9b6a',
|
64 |
'src/public/dist/customize.lite.js' => '74eea56813259c0dec291e20466fe0bc',
|
65 |
'src/public/dist/customize.pro.js' => 'b873769232874d709740555ca1fad624',
|
66 |
'src/public/dist/queue.lite.js' => '7b9c552c5049e1b529155a7c01b25aef',
|
68 |
'src/public/dist/vendor-admin.lite.js' => 'f1c19a085c135d0f8d34f8678f9737df',
|
69 |
'src/public/dist/vendor-admin.pro.js' => 'a66ff8967c03ab9411bbbe3051ca0b94',
|
70 |
'src/public/dist/vendor-banner_tcf.pro.js' => '5f087cf149b75526844e11e03ba7ca32',
|
71 |
+
'src/public/dist/vendor-banner.lite.js' => '9d21941f8683c473e4fad7ce9737b540',
|
72 |
'src/public/dist/vendor-banner.pro.js' => '7a72278ea147e6c777ef2c21d441214d',
|
73 |
'src/public/dist/vendor-customize_banner.lite.js' => '18020ebd4fd9ed4062a55152c7eeb6ae',
|
74 |
'src/public/dist/vendor-customize_banner.pro.js' => '17c03de8dd20b79d97cbc928b3b826f5',
|
inc/overrides/lite/Core.php
CHANGED
@@ -105,6 +105,7 @@ use DevOwl\RealCookieBanner\presets\pro\blocker\PopupMakerPreset as BlockerPopup
|
|
105 |
use DevOwl\RealCookieBanner\presets\pro\blocker\ProvenExpertWidgetPreset as BlockerProvenExpertWidgetPreset;
|
106 |
use DevOwl\RealCookieBanner\presets\pro\blocker\QuformRecaptchaPreset;
|
107 |
use DevOwl\RealCookieBanner\presets\pro\blocker\RankMathGAPreset as BlockerRankMathGAPreset;
|
|
|
108 |
use DevOwl\RealCookieBanner\presets\pro\blocker\RedditPreset as BlockerRedditPreset;
|
109 |
use DevOwl\RealCookieBanner\presets\pro\blocker\SendinbluePreset as BlockerSendinbluePreset;
|
110 |
use DevOwl\RealCookieBanner\presets\pro\blocker\SmashBalloonSocialPhotoFeedPreset as BlockerSmashBalloonSocialPhotoFeedPreset;
|
@@ -215,6 +216,7 @@ use DevOwl\RealCookieBanner\presets\pro\PopupMakerPreset;
|
|
215 |
use DevOwl\RealCookieBanner\presets\pro\ProvenExpertWidgetPreset;
|
216 |
use DevOwl\RealCookieBanner\presets\pro\QuformPreset;
|
217 |
use DevOwl\RealCookieBanner\presets\pro\RankMathGAPreset;
|
|
|
218 |
use DevOwl\RealCookieBanner\presets\pro\ReamazeChatPreset;
|
219 |
use DevOwl\RealCookieBanner\presets\pro\RedditPreset;
|
220 |
use DevOwl\RealCookieBanner\presets\pro\SendinbluePreset;
|
@@ -549,7 +551,9 @@ trait Core {
|
|
549 |
\DevOwl\RealCookieBanner\presets\PresetIdentifierMap::ETRACKER =>
|
550 |
\DevOwl\RealCookieBanner\presets\pro\EtrackerPreset::class,
|
551 |
\DevOwl\RealCookieBanner\presets\PresetIdentifierMap::ETRACKER_WITH_CONSENT =>
|
552 |
-
\DevOwl\RealCookieBanner\presets\pro\EtrackerWithConsentPreset::class
|
|
|
|
|
553 |
]);
|
554 |
}
|
555 |
/**
|
@@ -782,7 +786,9 @@ trait Core {
|
|
782 |
\DevOwl\RealCookieBanner\presets\PresetIdentifierMap::ETRACKER =>
|
783 |
\DevOwl\RealCookieBanner\presets\pro\blocker\EtrackerPreset::class,
|
784 |
\DevOwl\RealCookieBanner\presets\PresetIdentifierMap::ETRACKER_WITH_CONSENT =>
|
785 |
-
\DevOwl\RealCookieBanner\presets\pro\blocker\EtrackerWithConsentPreset::class
|
|
|
|
|
786 |
]);
|
787 |
}
|
788 |
}
|
105 |
use DevOwl\RealCookieBanner\presets\pro\blocker\ProvenExpertWidgetPreset as BlockerProvenExpertWidgetPreset;
|
106 |
use DevOwl\RealCookieBanner\presets\pro\blocker\QuformRecaptchaPreset;
|
107 |
use DevOwl\RealCookieBanner\presets\pro\blocker\RankMathGAPreset as BlockerRankMathGAPreset;
|
108 |
+
use DevOwl\RealCookieBanner\presets\pro\blocker\RankMathGA4Preset as BlockerRankMathGA4Preset;
|
109 |
use DevOwl\RealCookieBanner\presets\pro\blocker\RedditPreset as BlockerRedditPreset;
|
110 |
use DevOwl\RealCookieBanner\presets\pro\blocker\SendinbluePreset as BlockerSendinbluePreset;
|
111 |
use DevOwl\RealCookieBanner\presets\pro\blocker\SmashBalloonSocialPhotoFeedPreset as BlockerSmashBalloonSocialPhotoFeedPreset;
|
216 |
use DevOwl\RealCookieBanner\presets\pro\ProvenExpertWidgetPreset;
|
217 |
use DevOwl\RealCookieBanner\presets\pro\QuformPreset;
|
218 |
use DevOwl\RealCookieBanner\presets\pro\RankMathGAPreset;
|
219 |
+
use DevOwl\RealCookieBanner\presets\pro\RankMathGA4Preset;
|
220 |
use DevOwl\RealCookieBanner\presets\pro\ReamazeChatPreset;
|
221 |
use DevOwl\RealCookieBanner\presets\pro\RedditPreset;
|
222 |
use DevOwl\RealCookieBanner\presets\pro\SendinbluePreset;
|
551 |
\DevOwl\RealCookieBanner\presets\PresetIdentifierMap::ETRACKER =>
|
552 |
\DevOwl\RealCookieBanner\presets\pro\EtrackerPreset::class,
|
553 |
\DevOwl\RealCookieBanner\presets\PresetIdentifierMap::ETRACKER_WITH_CONSENT =>
|
554 |
+
\DevOwl\RealCookieBanner\presets\pro\EtrackerWithConsentPreset::class,
|
555 |
+
\DevOwl\RealCookieBanner\presets\PresetIdentifierMap::RANKMATH_GA_4 =>
|
556 |
+
\DevOwl\RealCookieBanner\presets\pro\RankMathGA4Preset::class
|
557 |
]);
|
558 |
}
|
559 |
/**
|
786 |
\DevOwl\RealCookieBanner\presets\PresetIdentifierMap::ETRACKER =>
|
787 |
\DevOwl\RealCookieBanner\presets\pro\blocker\EtrackerPreset::class,
|
788 |
\DevOwl\RealCookieBanner\presets\PresetIdentifierMap::ETRACKER_WITH_CONSENT =>
|
789 |
+
\DevOwl\RealCookieBanner\presets\pro\blocker\EtrackerWithConsentPreset::class,
|
790 |
+
\DevOwl\RealCookieBanner\presets\PresetIdentifierMap::RANKMATH_GA_4 =>
|
791 |
+
\DevOwl\RealCookieBanner\presets\pro\blocker\RankMathGA4Preset::class
|
792 |
]);
|
793 |
}
|
794 |
}
|
inc/presets/PresetIdentifierMap.php
CHANGED
@@ -126,6 +126,7 @@ class PresetIdentifierMap {
|
|
126 |
const PROVEN_EXPERT_WIDGET = 'proven-expert-widget';
|
127 |
const QUFORM = 'quform';
|
128 |
const RANKMATH_GA = 'rank-math-ga';
|
|
|
129 |
const REAL_COOKIE_BANNER = 'real-cookie-banner';
|
130 |
const REAMAZE_CHAT = 'reamaze-chat';
|
131 |
const REDDIT = 'reddit';
|
126 |
const PROVEN_EXPERT_WIDGET = 'proven-expert-widget';
|
127 |
const QUFORM = 'quform';
|
128 |
const RANKMATH_GA = 'rank-math-ga';
|
129 |
+
const RANKMATH_GA_4 = 'rank-math-ga-4';
|
130 |
const REAL_COOKIE_BANNER = 'real-cookie-banner';
|
131 |
const REAMAZE_CHAT = 'reamaze-chat';
|
132 |
const REDDIT = 'reddit';
|
inc/presets/free/blocker/YoutubePreset.php
CHANGED
@@ -54,7 +54,9 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
|
|
54 |
// [Plugin Comp] Thrive Visual Editor
|
55 |
'div[class*="tcb-yt-bg"]',
|
56 |
// [Plugin Comp] https://wordpress.org/plugins/wp-video-lightbox/
|
57 |
-
'a[href*="youtube.com"][rel="wp-video-lightbox"]'
|
|
|
|
|
58 |
],
|
59 |
'cookies' => [\DevOwl\RealCookieBanner\presets\free\YoutubePreset::IDENTIFIER],
|
60 |
'visual' => \true,
|
54 |
// [Plugin Comp] Thrive Visual Editor
|
55 |
'div[class*="tcb-yt-bg"]',
|
56 |
// [Plugin Comp] https://wordpress.org/plugins/wp-video-lightbox/
|
57 |
+
'a[href*="youtube.com"][rel="wp-video-lightbox"]',
|
58 |
+
// https://github.com/paulirish/lite-youtube-embed
|
59 |
+
'lite-youtube[videoid]'
|
60 |
],
|
61 |
'cookies' => [\DevOwl\RealCookieBanner\presets\free\YoutubePreset::IDENTIFIER],
|
62 |
'visual' => \true,
|
inc/presets/pro/RankMathGA4Preset.php
ADDED
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace DevOwl\RealCookieBanner\presets\pro;
|
4 |
+
|
5 |
+
use DevOwl\RealCookieBanner\Core;
|
6 |
+
use DevOwl\RealCookieBanner\presets\AbstractCookiePreset;
|
7 |
+
use DevOwl\RealCookieBanner\presets\PresetIdentifierMap;
|
8 |
+
// @codeCoverageIgnoreStart
|
9 |
+
\defined('ABSPATH') or die('No script kiddies please!');
|
10 |
+
// Avoid direct file request
|
11 |
+
// @codeCoverageIgnoreEnd
|
12 |
+
/**
|
13 |
+
* RankMath Google Analytics preset -> Google Analytics cookie preset.
|
14 |
+
*/
|
15 |
+
class RankMathGA4Preset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePreset {
|
16 |
+
const IDENTIFIER = \DevOwl\RealCookieBanner\presets\PresetIdentifierMap::RANKMATH_GA_4;
|
17 |
+
const VERSION = \DevOwl\RealCookieBanner\presets\pro\GoogleAnalytics4Preset::VERSION;
|
18 |
+
// Documented in AbstractPreset
|
19 |
+
public function common() {
|
20 |
+
$name = 'RankMath Google Analytics';
|
21 |
+
$extendsAttributes = (new \DevOwl\RealCookieBanner\presets\pro\GoogleAnalytics4Preset())->common();
|
22 |
+
return [
|
23 |
+
'id' => self::IDENTIFIER,
|
24 |
+
'version' => self::VERSION,
|
25 |
+
'name' => $name,
|
26 |
+
'description' => $extendsAttributes['description'],
|
27 |
+
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/rank-math.png'),
|
28 |
+
'needs' => \DevOwl\RealCookieBanner\presets\pro\RankMathGAPreset::needs()
|
29 |
+
];
|
30 |
+
}
|
31 |
+
// Documented in AbstractPreset
|
32 |
+
public function managerNone() {
|
33 |
+
return \false;
|
34 |
+
}
|
35 |
+
// Documented in AbstractPreset
|
36 |
+
public function managerGtm() {
|
37 |
+
return \false;
|
38 |
+
}
|
39 |
+
// Documented in AbstractPreset
|
40 |
+
public function managerMtm() {
|
41 |
+
return \false;
|
42 |
+
}
|
43 |
+
}
|
inc/presets/pro/blocker/CalendlyPreset.php
CHANGED
@@ -28,7 +28,8 @@ class CalendlyPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
|
|
28 |
'a[onclick*="Calendly.initPopupWidget"]',
|
29 |
'Calendly.initBadgeWidget',
|
30 |
'Calendly.initPopupWidget',
|
31 |
-
'*assets.calendly.com*'
|
|
|
32 |
]
|
33 |
],
|
34 |
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/calendly.png')
|
28 |
'a[onclick*="Calendly.initPopupWidget"]',
|
29 |
'Calendly.initBadgeWidget',
|
30 |
'Calendly.initPopupWidget',
|
31 |
+
'*assets.calendly.com*',
|
32 |
+
'*calendly.com/assets/*'
|
33 |
]
|
34 |
],
|
35 |
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/calendly.png')
|
inc/presets/pro/blocker/GoogleMapsPreset.php
CHANGED
@@ -119,7 +119,10 @@ class GoogleMapsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
|
|
119 |
'.googleMap({',
|
120 |
// [Plugin Comp] https://crocoblock.com/knowledge-base/articles/jetengine-maps-listing-overview/
|
121 |
'div[class*="elementor-widget-jet-engine-maps-listing"]',
|
122 |
-
'*/wp-content/plugins/jet-engine/assets/js/frontend-maps*'
|
|
|
|
|
|
|
123 |
]
|
124 |
],
|
125 |
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/google-maps.png')
|
119 |
'.googleMap({',
|
120 |
// [Plugin Comp] https://crocoblock.com/knowledge-base/articles/jetengine-maps-listing-overview/
|
121 |
'div[class*="elementor-widget-jet-engine-maps-listing"]',
|
122 |
+
'*/wp-content/plugins/jet-engine/assets/js/frontend-maps*',
|
123 |
+
// [Plugin Comp] https://facetwp.com/help-center/facets/facet-types/map/
|
124 |
+
'*/wp-content/plugins/facetwp-map-facet/assets/js/*',
|
125 |
+
'div[class*="facetwp-type-map"]'
|
126 |
]
|
127 |
],
|
128 |
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/google-maps.png')
|
inc/presets/pro/blocker/ProvenExpertWidgetPreset.php
CHANGED
@@ -29,7 +29,8 @@ class ProvenExpertWidgetPreset extends \DevOwl\RealCookieBanner\presets\Abstract
|
|
29 |
'*provenexpert.com/css*',
|
30 |
// https://lp.provenexpert.com/de/provenexpert-pro-seal/
|
31 |
'*provenexpert.net/seals*',
|
32 |
-
'provenExpert.proSeal'
|
|
|
33 |
]
|
34 |
],
|
35 |
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/provenexpert.png')
|
29 |
'*provenexpert.com/css*',
|
30 |
// https://lp.provenexpert.com/de/provenexpert-pro-seal/
|
31 |
'*provenexpert.net/seals*',
|
32 |
+
'provenExpert.proSeal',
|
33 |
+
'*provenexpert.com/badge*'
|
34 |
]
|
35 |
],
|
36 |
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/provenexpert.png')
|
inc/presets/pro/blocker/RankMathGA4Preset.php
ADDED
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace DevOwl\RealCookieBanner\presets\pro\blocker;
|
4 |
+
|
5 |
+
use DevOwl\RealCookieBanner\Core;
|
6 |
+
use DevOwl\RealCookieBanner\presets\pro\RankMathGAPreset as PresetsRankMathGA4Preset;
|
7 |
+
use DevOwl\RealCookieBanner\presets\pro\RankMathGAPreset as PresetsRankMathGAPreset;
|
8 |
+
use DevOwl\RealCookieBanner\presets\AbstractBlockerPreset;
|
9 |
+
// @codeCoverageIgnoreStart
|
10 |
+
\defined('ABSPATH') or die('No script kiddies please!');
|
11 |
+
// Avoid direct file request
|
12 |
+
// @codeCoverageIgnoreEnd
|
13 |
+
/**
|
14 |
+
* RankMath Google Analytics preset -> Google Analytics blocker preset.
|
15 |
+
*/
|
16 |
+
class RankMathGA4Preset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPreset {
|
17 |
+
const IDENTIFIER = \DevOwl\RealCookieBanner\presets\pro\RankMathGAPreset::IDENTIFIER;
|
18 |
+
const VERSION = \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalytics4Preset::VERSION;
|
19 |
+
// Documented in AbstractPreset
|
20 |
+
public function common() {
|
21 |
+
$name = 'RankMath Google Analytics';
|
22 |
+
$extendsAttributes = (new \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalytics4Preset())->common();
|
23 |
+
return [
|
24 |
+
'id' => self::IDENTIFIER,
|
25 |
+
'version' => self::VERSION,
|
26 |
+
'name' => $name,
|
27 |
+
'description' => $extendsAttributes['description'],
|
28 |
+
'attributes' => [
|
29 |
+
'extends' => \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalytics4Preset::IDENTIFIER
|
30 |
+
],
|
31 |
+
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/rank-math.png'),
|
32 |
+
'needs' => \DevOwl\RealCookieBanner\presets\pro\RankMathGAPreset::needs()
|
33 |
+
];
|
34 |
+
}
|
35 |
+
}
|
inc/presets/pro/blocker/ThriveLeadsPreset.php
CHANGED
@@ -22,7 +22,9 @@ class ThriveLeadsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocker
|
|
22 |
'id' => self::IDENTIFIER,
|
23 |
'version' => self::VERSION,
|
24 |
'name' => $name,
|
25 |
-
'attributes' => [
|
|
|
|
|
26 |
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/thrive-leads.png'),
|
27 |
'needs' => \DevOwl\RealCookieBanner\presets\pro\ThriveLeadsPreset::needs()
|
28 |
];
|
22 |
'id' => self::IDENTIFIER,
|
23 |
'version' => self::VERSION,
|
24 |
'name' => $name,
|
25 |
+
'attributes' => [
|
26 |
+
'hosts' => ['*plugins/thrive-leads*', '*tve_leads*', 'window.TL_Front', 'div[data-tl-type="ribbon"]']
|
27 |
+
],
|
28 |
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/thrive-leads.png'),
|
29 |
'needs' => \DevOwl\RealCookieBanner\presets\pro\ThriveLeadsPreset::needs()
|
30 |
];
|
inc/presets/pro/blocker/VimeoPreset.php
CHANGED
@@ -34,7 +34,9 @@ class VimeoPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPreset
|
|
34 |
// [Plugin Comp] tagDiv Composer
|
35 |
'div[class*="td_wrapper_playlist_player_vimeo"]',
|
36 |
// [Plugin Comp] https://wordpress.org/plugins/wp-video-lightbox/
|
37 |
-
'a[href*="vimeo.com"][rel="wp-video-lightbox"]'
|
|
|
|
|
38 |
]
|
39 |
],
|
40 |
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/vimeo.png')
|
34 |
// [Plugin Comp] tagDiv Composer
|
35 |
'div[class*="td_wrapper_playlist_player_vimeo"]',
|
36 |
// [Plugin Comp] https://wordpress.org/plugins/wp-video-lightbox/
|
37 |
+
'a[href*="vimeo.com"][rel="wp-video-lightbox"]',
|
38 |
+
// https://github.com/luwes/lite-vimeo-embed
|
39 |
+
'lite-vimeo[videoid]'
|
40 |
]
|
41 |
],
|
42 |
'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/vimeo.png')
|
inc/scanner/Scanner.php
CHANGED
@@ -10,6 +10,7 @@ use DevOwl\RealCookieBanner\Cache;
|
|
10 |
use DevOwl\RealCookieBanner\Core;
|
11 |
use DevOwl\RealCookieBanner\presets\BlockerPresets;
|
12 |
use DevOwl\RealCookieBanner\settings\Blocker;
|
|
|
13 |
use DevOwl\RealCookieBanner\Utils;
|
14 |
use DevOwl\RealCookieBanner\view\blockable\BlockerPostType;
|
15 |
use DevOwl\RealCookieBanner\view\Scanner as ViewScanner;
|
@@ -538,6 +539,7 @@ class Scanner {
|
|
538 |
\DevOwl\RealCookieBanner\Utils::getRequestUrl()
|
539 |
);
|
540 |
$result = remove_query_arg(\DevOwl\RealCookieBanner\scanner\Scanner::QUERY_ARG_JOB_ID, $result);
|
|
|
541 |
return $result;
|
542 |
}
|
543 |
}
|
10 |
use DevOwl\RealCookieBanner\Core;
|
11 |
use DevOwl\RealCookieBanner\presets\BlockerPresets;
|
12 |
use DevOwl\RealCookieBanner\settings\Blocker;
|
13 |
+
use DevOwl\RealCookieBanner\view\Blocker as BlockerView;
|
14 |
use DevOwl\RealCookieBanner\Utils;
|
15 |
use DevOwl\RealCookieBanner\view\blockable\BlockerPostType;
|
16 |
use DevOwl\RealCookieBanner\view\Scanner as ViewScanner;
|
539 |
\DevOwl\RealCookieBanner\Utils::getRequestUrl()
|
540 |
);
|
541 |
$result = remove_query_arg(\DevOwl\RealCookieBanner\scanner\Scanner::QUERY_ARG_JOB_ID, $result);
|
542 |
+
$result = remove_query_arg(\DevOwl\RealCookieBanner\view\Blocker::FORCE_TIME_COMMENT_QUERY_ARG, $result);
|
543 |
return $result;
|
544 |
}
|
545 |
}
|
inc/view/Banner.php
CHANGED
@@ -2,6 +2,7 @@
|
|
2 |
|
3 |
namespace DevOwl\RealCookieBanner\view;
|
4 |
|
|
|
5 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\Utils;
|
6 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\AttributesHelper;
|
7 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\Constants;
|
@@ -174,7 +175,11 @@ class Banner {
|
|
174 |
echo \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\Utils::applyDynamicsToHtml(
|
175 |
\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\AttributesHelper::skipHtmlTagsInContentBlocker(
|
176 |
$script,
|
177 |
-
|
|
|
|
|
|
|
|
|
178 |
),
|
179 |
$cookie->metas[\DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_DYNAMICS] ?? []
|
180 |
);
|
2 |
|
3 |
namespace DevOwl\RealCookieBanner\view;
|
4 |
|
5 |
+
use DevOwl\RealCookieBanner\Vendor\DevOwl\CacheInvalidate\CacheInvalidator;
|
6 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\Utils;
|
7 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\AttributesHelper;
|
8 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\Constants;
|
175 |
echo \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\Utils::applyDynamicsToHtml(
|
176 |
\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\AttributesHelper::skipHtmlTagsInContentBlocker(
|
177 |
$script,
|
178 |
+
\sprintf(
|
179 |
+
'%s %s',
|
180 |
+
self::HTML_ATTRIBUTE_SKIP_LAZY_LOADING_PLUGINS,
|
181 |
+
\DevOwl\RealCookieBanner\Vendor\DevOwl\CacheInvalidate\CacheInvalidator::getInstance()->getExcludeHtmlAttributesString()
|
182 |
+
)
|
183 |
),
|
184 |
$cookie->metas[\DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_DYNAMICS] ?? []
|
185 |
);
|
inc/view/BannerCustomize.php
CHANGED
@@ -108,6 +108,11 @@ class BannerCustomize extends \DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\A
|
|
108 |
\DevOwl\RealCookieBanner\view\customize\banner\Texts::SETTING_AGE_NOTICE_BLOCKER,
|
109 |
$adminDefaultTextsBanner['ageNoticeBlocker']
|
110 |
);
|
|
|
|
|
|
|
|
|
|
|
111 |
new \DevOwl\RealCookieBanner\Vendor\DevOwl\Multilingual\LanguageDependingOption(
|
112 |
$comp,
|
113 |
\DevOwl\RealCookieBanner\view\customize\banner\Texts::SETTING_CONSENT_FORWARDING,
|
108 |
\DevOwl\RealCookieBanner\view\customize\banner\Texts::SETTING_AGE_NOTICE_BLOCKER,
|
109 |
$adminDefaultTextsBanner['ageNoticeBlocker']
|
110 |
);
|
111 |
+
new \DevOwl\RealCookieBanner\Vendor\DevOwl\Multilingual\LanguageDependingOption(
|
112 |
+
$comp,
|
113 |
+
\DevOwl\RealCookieBanner\view\customize\banner\Texts::SETTING_LIST_SERVICES_NOTICE,
|
114 |
+
$adminDefaultTextsBanner['listServicesNotice']
|
115 |
+
);
|
116 |
new \DevOwl\RealCookieBanner\Vendor\DevOwl\Multilingual\LanguageDependingOption(
|
117 |
$comp,
|
118 |
\DevOwl\RealCookieBanner\view\customize\banner\Texts::SETTING_CONSENT_FORWARDING,
|
inc/view/Blocker.php
CHANGED
@@ -3,6 +3,7 @@
|
|
3 |
namespace DevOwl\RealCookieBanner\view;
|
4 |
|
5 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\AbstractBlockable;
|
|
|
6 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\HeadlessContentBlocker;
|
7 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\imagePreview\ImagePreview;
|
8 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\scanner\BlockableScanner;
|
@@ -49,7 +50,9 @@ class Blocker {
|
|
49 |
// [Plugin Comp] OptimizePress
|
50 |
'.op3-contenttoggleitem-content',
|
51 |
// [Plugin Comp] Popup Maker
|
52 |
-
'.pum-overlay'
|
|
|
|
|
53 |
];
|
54 |
const OB_START_PLUGINS_LOADED_PRIORITY = (\PHP_INT_MAX - 1) * -1;
|
55 |
/**
|
@@ -283,6 +286,20 @@ class Blocker {
|
|
283 |
\true
|
284 |
);
|
285 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
286 |
/**
|
287 |
* Modify any URL and add a query argument to skip the content blocker mechanism.
|
288 |
*
|
3 |
namespace DevOwl\RealCookieBanner\view;
|
4 |
|
5 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\AbstractBlockable;
|
6 |
+
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\Constants;
|
7 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\HeadlessContentBlocker;
|
8 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\imagePreview\ImagePreview;
|
9 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\scanner\BlockableScanner;
|
50 |
// [Plugin Comp] OptimizePress
|
51 |
'.op3-contenttoggleitem-content',
|
52 |
// [Plugin Comp] Popup Maker
|
53 |
+
'.pum-overlay',
|
54 |
+
// [Plugin Comp] Elementor Pro Popups
|
55 |
+
'[data-elementor-type="popup"]'
|
56 |
];
|
57 |
const OB_START_PLUGINS_LOADED_PRIORITY = (\PHP_INT_MAX - 1) * -1;
|
58 |
/**
|
286 |
\true
|
287 |
);
|
288 |
}
|
289 |
+
/**
|
290 |
+
* Exclude blocked styles from autoptimize inline aggregation.
|
291 |
+
*
|
292 |
+
* @param string $exclusions
|
293 |
+
* @see https://github.com/futtta/autoptimize/pull/386#issuecomment-1156622026
|
294 |
+
*/
|
295 |
+
public function autoptimize_filter_css_exclude($exclusions) {
|
296 |
+
return \sprintf(
|
297 |
+
'%s, %s-href-%s',
|
298 |
+
$exclusions,
|
299 |
+
\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\Constants::HTML_ATTRIBUTE_CAPTURE_PREFIX,
|
300 |
+
\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\Constants::HTML_ATTRIBUTE_CAPTURE_SUFFIX
|
301 |
+
);
|
302 |
+
}
|
303 |
/**
|
304 |
* Modify any URL and add a query argument to skip the content blocker mechanism.
|
305 |
*
|
inc/view/ConfigPage.php
CHANGED
@@ -35,7 +35,14 @@ class ConfigPage {
|
|
35 |
* Create an admin notice for services without privacy policy set.
|
36 |
*/
|
37 |
public function admin_notices_services_with_empty_privacy_policy() {
|
|
|
38 |
$url = $this->getUrl();
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
$servicesWithoutPrivacyPolicy = get_posts(
|
40 |
\DevOwl\RealCookieBanner\Core::getInstance()->queryArguments(
|
41 |
[
|
@@ -47,7 +54,7 @@ class ConfigPage {
|
|
47 |
[
|
48 |
'key' => \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY,
|
49 |
'value' => '',
|
50 |
-
'compare' => ''
|
51 |
]
|
52 |
],
|
53 |
'post_status' => ['publish', 'private', 'draft']
|
@@ -55,6 +62,8 @@ class ConfigPage {
|
|
55 |
'ConfigPage::admin_notices_services_with_empty_privacy_policy'
|
56 |
)
|
57 |
);
|
|
|
|
|
58 |
if (\count($servicesWithoutPrivacyPolicy) === 0) {
|
59 |
return;
|
60 |
}
|
35 |
* Create an admin notice for services without privacy policy set.
|
36 |
*/
|
37 |
public function admin_notices_services_with_empty_privacy_policy() {
|
38 |
+
global $typenow;
|
39 |
$url = $this->getUrl();
|
40 |
+
// Divi & Elementor Pro overrides the meta query in a wrong way, but instead of contacting them (slow response)
|
41 |
+
// we just reset the post type which gets read by their filters. Learn more about it here: https://app.clickup.com/t/2jzg30c
|
42 |
+
$oldTypeNow = $typenow;
|
43 |
+
$oldWpQueryVarTypeNow = get_query_var('post_type');
|
44 |
+
$typenow = \DevOwl\RealCookieBanner\settings\Cookie::CPT_NAME;
|
45 |
+
set_query_var('post_type', \DevOwl\RealCookieBanner\settings\Cookie::CPT_NAME);
|
46 |
$servicesWithoutPrivacyPolicy = get_posts(
|
47 |
\DevOwl\RealCookieBanner\Core::getInstance()->queryArguments(
|
48 |
[
|
54 |
[
|
55 |
'key' => \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY,
|
56 |
'value' => '',
|
57 |
+
'compare' => '='
|
58 |
]
|
59 |
],
|
60 |
'post_status' => ['publish', 'private', 'draft']
|
62 |
'ConfigPage::admin_notices_services_with_empty_privacy_policy'
|
63 |
)
|
64 |
);
|
65 |
+
$typenow = $oldTypeNow;
|
66 |
+
set_query_var('post_type', $oldWpQueryVarTypeNow);
|
67 |
if (\count($servicesWithoutPrivacyPolicy) === 0) {
|
68 |
return;
|
69 |
}
|
inc/view/blocker/Plugin.php
CHANGED
@@ -16,12 +16,14 @@ use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\StyleIn
|
|
16 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\StyleInlineMatcher;
|
17 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\TagAttributeMatcher;
|
18 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\Autoplay;
|
|
|
19 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\DoNotBlockScriptTextTemplates;
|
20 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\Image;
|
21 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\imagePreview\ImagePreview;
|
22 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\LazyLoadingLibraries;
|
23 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\LinkBlocker;
|
24 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\LinkRelBlocker;
|
|
|
25 |
use DevOwl\RealCookieBanner\base\UtilsProvider;
|
26 |
use DevOwl\RealCookieBanner\Core;
|
27 |
use DevOwl\RealCookieBanner\lite\view\blocker\WordPressImagePreviewCache;
|
@@ -138,6 +140,9 @@ class Plugin extends \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlock
|
|
138 |
$cb->addPlugin(
|
139 |
\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\LazyLoadingLibraries::class
|
140 |
);
|
|
|
|
|
|
|
141 |
/**
|
142 |
* Plugin.
|
143 |
*
|
@@ -146,6 +151,19 @@ class Plugin extends \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlock
|
|
146 |
$linkRelBlockerPlugin = $cb->addPlugin(
|
147 |
\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\LinkRelBlocker::class
|
148 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
149 |
/**
|
150 |
* Legal opinion: With `dns-prefetch`, only the DNS server specified by the website visitor
|
151 |
* is requested and not, for example, Google Fonts. Consequently, data is only passed
|
16 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\StyleInlineMatcher;
|
17 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\TagAttributeMatcher;
|
18 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\Autoplay;
|
19 |
+
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\CustomElementBlocker;
|
20 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\DoNotBlockScriptTextTemplates;
|
21 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\Image;
|
22 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\imagePreview\ImagePreview;
|
23 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\LazyLoadingLibraries;
|
24 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\LinkBlocker;
|
25 |
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\LinkRelBlocker;
|
26 |
+
use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\ScriptInlineJsonBlocker;
|
27 |
use DevOwl\RealCookieBanner\base\UtilsProvider;
|
28 |
use DevOwl\RealCookieBanner\Core;
|
29 |
use DevOwl\RealCookieBanner\lite\view\blocker\WordPressImagePreviewCache;
|
140 |
$cb->addPlugin(
|
141 |
\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\LazyLoadingLibraries::class
|
142 |
);
|
143 |
+
$cb->addPlugin(
|
144 |
+
\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\CustomElementBlocker::class
|
145 |
+
);
|
146 |
/**
|
147 |
* Plugin.
|
148 |
*
|
151 |
$linkRelBlockerPlugin = $cb->addPlugin(
|
152 |
\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\LinkRelBlocker::class
|
153 |
);
|
154 |
+
/**
|
155 |
+
* Plugin.
|
156 |
+
*
|
157 |
+
* @var ScriptInlineJsonBlocker
|
158 |
+
*/
|
159 |
+
$scriptInlineJsonBlocker = $cb->addPlugin(
|
160 |
+
\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\ScriptInlineJsonBlocker::class
|
161 |
+
);
|
162 |
+
$scriptInlineJsonBlocker->addSchema(
|
163 |
+
'wp.i18n.setLocaleData',
|
164 |
+
'/(wp\\.i18n\\.setLocaleData\\(\\s*localeData,\\s*domain\\s*\\);\\s*}\\s*\\)\\s*\\(\\s*"[^"]+",\\s*)(.*)(\\)\\s*;\\s*<\\/script>)/m',
|
165 |
+
'</script>'
|
166 |
+
);
|
167 |
/**
|
168 |
* Legal opinion: With `dns-prefetch`, only the DNS server specified by the website visitor
|
169 |
* is requested and not, for example, Google Fonts. Consequently, data is only passed
|
index.php
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
* Description: Obtain GDPR (DSGVO) and ePrivacy (EU cookie law) compliant opt-in consent. Find cookies and fill all legal information in your cookie banner. More than just a cookie notice!
|
9 |
* Author: devowl.io
|
10 |
* Author URI: https://devowl.io
|
11 |
-
* Version: 3.0.
|
12 |
* Text Domain: real-cookie-banner
|
13 |
* Domain Path: /languages
|
14 |
*/
|
8 |
* Description: Obtain GDPR (DSGVO) and ePrivacy (EU cookie law) compliant opt-in consent. Find cookies and fill all legal information in your cookie banner. More than just a cookie notice!
|
9 |
* Author: devowl.io
|
10 |
* Author URI: https://devowl.io
|
11 |
+
* Version: 3.0.1
|
12 |
* Text Domain: real-cookie-banner
|
13 |
* Domain Path: /languages
|
14 |
*/
|
languages/real-cookie-banner-de_AT.po
CHANGED
@@ -4,8 +4,8 @@ msgstr ""
|
|
4 |
"POT-Creation-Date: n/a\n"
|
5 |
"PO-Revision-Date: 2022-06-13 06:58+0000\n"
|
6 |
"Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
|
7 |
-
"Language-Team: German <https://translate.devowl.io/projects/"
|
8 |
-
"
|
9 |
"Language: de_AT\n"
|
10 |
"MIME-Version: 1.0\n"
|
11 |
"Content-Type: text/plain; charset=UTF-8\n"
|
@@ -720,17 +720,16 @@ msgstr ""
|
|
720 |
"Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
|
721 |
"Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
|
722 |
"legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
|
723 |
-
"Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank
|
724 |
-
">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
|
725 |
"Entscheidungen wie die Bewertung von <a href=\"https://www."
|
726 |
-
"autoriteprotectiondonnees.be/publications/decision-quant-au-"
|
727 |
-
"
|
728 |
-
"
|
729 |
-
"
|
730 |
-
"
|
731 |
-
"
|
732 |
-
"
|
733 |
-
"\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
|
734 |
|
735 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
736 |
msgid ""
|
@@ -798,8 +797,8 @@ msgid ""
|
|
798 |
"and revoke consent must be directly accessible on every sub-page of your "
|
799 |
"website."
|
800 |
msgstr ""
|
801 |
-
"Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-
|
802 |
-
".de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
|
803 |
"\"Orientierungshilfe der Konferenz der unabhängigen "
|
804 |
"Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
|
805 |
"Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
|
@@ -951,8 +950,8 @@ msgid ""
|
|
951 |
msgstr ""
|
952 |
"Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
|
953 |
"dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
|
954 |
-
"Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/"
|
955 |
-
"
|
956 |
|
957 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
958 |
msgid ""
|
@@ -2654,8 +2653,8 @@ msgid ""
|
|
2654 |
"What do you have to consider when integrating %1$s into your website? <a "
|
2655 |
"href=\"%2$s\" target=\"_blank\">Learn more about it in our blog!</a>"
|
2656 |
msgstr ""
|
2657 |
-
"Was musst du beachten, wenn du %1$s in deine Website integrierst? <a href
|
2658 |
-
"%2$s\" target=\"_blank\">Erfahre mehr darüber in unserem Blog!</a>"
|
2659 |
|
2660 |
#: inc/overrides/pro/presets/FacebookPixelPreset.php:1
|
2661 |
msgid "https://devowl.io/2022/facebook-pixel-wordpress-gdpr/"
|
@@ -4353,6 +4352,7 @@ msgstr ""
|
|
4353 |
"reCAPTCHA innerhalb des Plugins verwendest, müssen die Formulare blockiert "
|
4354 |
"werden, bis du eine Einwilligung für Google reCAPTCHA hast."
|
4355 |
|
|
|
4356 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4357 |
msgid ""
|
4358 |
"Please note that the \"Anonymize IP addresses\" feature, which is mandatory "
|
@@ -4362,6 +4362,7 @@ msgstr ""
|
|
4362 |
"erforderlich ist, um DSGVO-konform zu sein, nur in der kostenpflichtigen "
|
4363 |
"Version von Rank Math verfügbar ist."
|
4364 |
|
|
|
4365 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4366 |
msgid ""
|
4367 |
"We recommend that you disable the \"Install analytics code\" option in Rank "
|
@@ -5879,8 +5880,8 @@ msgstr ""
|
|
5879 |
"Google übertragen, weshalb du eine Einwilligung benötigst. Real Cookie "
|
5880 |
"Banner muss die Einwilligung vor dem Laden von Google Fonts prüfen (falls "
|
5881 |
"eine Einwilligung vorliegt), was einige Millisekunden pro Seitenaufruf "
|
5882 |
-
"dauert. Daher wirst du unweigerlich einen kleinen Flackereffekt
|
5883 |
-
"Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
|
5884 |
"feststellen."
|
5885 |
|
5886 |
#: inc/presets/free/GoogleFontsPreset.php:1
|
@@ -5890,11 +5891,10 @@ msgid ""
|
|
5890 |
"hosted fonts</a> when possible, rather than asking for consent. We explained "
|
5891 |
"how this works in our blog!"
|
5892 |
msgstr ""
|
5893 |
-
"Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/"
|
5894 |
-
"
|
5895 |
-
"
|
5896 |
-
"
|
5897 |
-
"erklärt!"
|
5898 |
|
5899 |
#: inc/presets/free/GravatarPreset.php:1
|
5900 |
msgid ""
|
@@ -6113,8 +6113,8 @@ msgid ""
|
|
6113 |
"than asking for consent. How to do that, we have explained in our blog!"
|
6114 |
msgstr ""
|
6115 |
"Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
|
6116 |
-
"musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/"
|
6117 |
-
"
|
6118 |
"deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
|
6119 |
"machst, haben wir in unserem Blog erklärt!"
|
6120 |
|
4 |
"POT-Creation-Date: n/a\n"
|
5 |
"PO-Revision-Date: 2022-06-13 06:58+0000\n"
|
6 |
"Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
|
7 |
+
"Language-Team: German <https://translate.devowl.io/projects/wordpress-real-"
|
8 |
+
"cookie-banner-backend-php/develop/de/>\n"
|
9 |
"Language: de_AT\n"
|
10 |
"MIME-Version: 1.0\n"
|
11 |
"Content-Type: text/plain; charset=UTF-8\n"
|
720 |
"Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
|
721 |
"Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
|
722 |
"legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
|
723 |
+
"Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank"
|
724 |
+
"\">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
|
725 |
"Entscheidungen wie die Bewertung von <a href=\"https://www."
|
726 |
+
"autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-"
|
727 |
+
"english.pdf\" target=\"_blank\">TCF durch ADP (Belgien)</a>, die <a href="
|
728 |
+
"\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
|
729 |
+
"%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics Entscheidung "
|
730 |
+
"von dsb (Österreich)</a> und die <a href=\"https://www.cnil.fr/sites/default/"
|
731 |
+
"files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics."
|
732 |
+
"pdf\" target=\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
|
|
|
733 |
|
734 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
735 |
msgid ""
|
797 |
"and revoke consent must be directly accessible on every sub-page of your "
|
798 |
"website."
|
799 |
msgstr ""
|
800 |
+
"Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-"
|
801 |
+
"online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
|
802 |
"\"Orientierungshilfe der Konferenz der unabhängigen "
|
803 |
"Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
|
804 |
"Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
|
950 |
msgstr ""
|
951 |
"Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
|
952 |
"dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
|
953 |
+
"Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/real-"
|
954 |
+
"cookie-banner-3-0/\" target=\"_blank\">Blogbeitrag.</a>."
|
955 |
|
956 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
957 |
msgid ""
|
2653 |
"What do you have to consider when integrating %1$s into your website? <a "
|
2654 |
"href=\"%2$s\" target=\"_blank\">Learn more about it in our blog!</a>"
|
2655 |
msgstr ""
|
2656 |
+
"Was musst du beachten, wenn du %1$s in deine Website integrierst? <a href="
|
2657 |
+
"\"%2$s\" target=\"_blank\">Erfahre mehr darüber in unserem Blog!</a>"
|
2658 |
|
2659 |
#: inc/overrides/pro/presets/FacebookPixelPreset.php:1
|
2660 |
msgid "https://devowl.io/2022/facebook-pixel-wordpress-gdpr/"
|
4352 |
"reCAPTCHA innerhalb des Plugins verwendest, müssen die Formulare blockiert "
|
4353 |
"werden, bis du eine Einwilligung für Google reCAPTCHA hast."
|
4354 |
|
4355 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
4356 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4357 |
msgid ""
|
4358 |
"Please note that the \"Anonymize IP addresses\" feature, which is mandatory "
|
4362 |
"erforderlich ist, um DSGVO-konform zu sein, nur in der kostenpflichtigen "
|
4363 |
"Version von Rank Math verfügbar ist."
|
4364 |
|
4365 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
4366 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4367 |
msgid ""
|
4368 |
"We recommend that you disable the \"Install analytics code\" option in Rank "
|
5880 |
"Google übertragen, weshalb du eine Einwilligung benötigst. Real Cookie "
|
5881 |
"Banner muss die Einwilligung vor dem Laden von Google Fonts prüfen (falls "
|
5882 |
"eine Einwilligung vorliegt), was einige Millisekunden pro Seitenaufruf "
|
5883 |
+
"dauert. Daher wirst du unweigerlich einen kleinen Flackereffekt "
|
5884 |
+
"(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
|
5885 |
"feststellen."
|
5886 |
|
5887 |
#: inc/presets/free/GoogleFontsPreset.php:1
|
5891 |
"hosted fonts</a> when possible, rather than asking for consent. We explained "
|
5892 |
"how this works in our blog!"
|
5893 |
msgstr ""
|
5894 |
+
"Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/google-fonts-"
|
5895 |
+
"wordpress-dsgvo/\" target=\"_blank\">Google Fonts wenn möglich durch lokal "
|
5896 |
+
"gehostete Schriftarten zu ersetzen</a>, anstatt nach einer Einwilligung zu "
|
5897 |
+
"fragen. Wie das funktioniert, haben wir in unserem Blog erklärt!"
|
|
|
5898 |
|
5899 |
#: inc/presets/free/GravatarPreset.php:1
|
5900 |
msgid ""
|
6113 |
"than asking for consent. How to do that, we have explained in our blog!"
|
6114 |
msgstr ""
|
6115 |
"Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
|
6116 |
+
"musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/wordpress-"
|
6117 |
+
"emojis-deaktivieren/\" target=\"_blank\">WordPress-Emoji-Script zu "
|
6118 |
"deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
|
6119 |
"machst, haben wir in unserem Blog erklärt!"
|
6120 |
|
languages/real-cookie-banner-de_CH.po
CHANGED
@@ -4,8 +4,8 @@ msgstr ""
|
|
4 |
"POT-Creation-Date: n/a\n"
|
5 |
"PO-Revision-Date: 2022-06-13 06:58+0000\n"
|
6 |
"Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
|
7 |
-
"Language-Team: German <https://translate.devowl.io/projects/"
|
8 |
-
"
|
9 |
"Language: de_CH\n"
|
10 |
"MIME-Version: 1.0\n"
|
11 |
"Content-Type: text/plain; charset=UTF-8\n"
|
@@ -720,17 +720,16 @@ msgstr ""
|
|
720 |
"Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
|
721 |
"Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
|
722 |
"legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
|
723 |
-
"Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank
|
724 |
-
">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
|
725 |
"Entscheidungen wie die Bewertung von <a href=\"https://www."
|
726 |
-
"autoriteprotectiondonnees.be/publications/decision-quant-au-"
|
727 |
-
"
|
728 |
-
"
|
729 |
-
"
|
730 |
-
"
|
731 |
-
"
|
732 |
-
"
|
733 |
-
"\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
|
734 |
|
735 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
736 |
msgid ""
|
@@ -798,8 +797,8 @@ msgid ""
|
|
798 |
"and revoke consent must be directly accessible on every sub-page of your "
|
799 |
"website."
|
800 |
msgstr ""
|
801 |
-
"Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-
|
802 |
-
".de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
|
803 |
"\"Orientierungshilfe der Konferenz der unabhängigen "
|
804 |
"Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
|
805 |
"Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
|
@@ -951,8 +950,8 @@ msgid ""
|
|
951 |
msgstr ""
|
952 |
"Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
|
953 |
"dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
|
954 |
-
"Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/"
|
955 |
-
"
|
956 |
|
957 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
958 |
msgid ""
|
@@ -2654,8 +2653,8 @@ msgid ""
|
|
2654 |
"What do you have to consider when integrating %1$s into your website? <a "
|
2655 |
"href=\"%2$s\" target=\"_blank\">Learn more about it in our blog!</a>"
|
2656 |
msgstr ""
|
2657 |
-
"Was musst du beachten, wenn du %1$s in deine Website integrierst? <a href
|
2658 |
-
"%2$s\" target=\"_blank\">Erfahre mehr darüber in unserem Blog!</a>"
|
2659 |
|
2660 |
#: inc/overrides/pro/presets/FacebookPixelPreset.php:1
|
2661 |
msgid "https://devowl.io/2022/facebook-pixel-wordpress-gdpr/"
|
@@ -4353,6 +4352,7 @@ msgstr ""
|
|
4353 |
"reCAPTCHA innerhalb des Plugins verwendest, müssen die Formulare blockiert "
|
4354 |
"werden, bis du eine Einwilligung für Google reCAPTCHA hast."
|
4355 |
|
|
|
4356 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4357 |
msgid ""
|
4358 |
"Please note that the \"Anonymize IP addresses\" feature, which is mandatory "
|
@@ -4362,6 +4362,7 @@ msgstr ""
|
|
4362 |
"erforderlich ist, um DSGVO-konform zu sein, nur in der kostenpflichtigen "
|
4363 |
"Version von Rank Math verfügbar ist."
|
4364 |
|
|
|
4365 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4366 |
msgid ""
|
4367 |
"We recommend that you disable the \"Install analytics code\" option in Rank "
|
@@ -5879,8 +5880,8 @@ msgstr ""
|
|
5879 |
"Google übertragen, weshalb du eine Einwilligung benötigst. Real Cookie "
|
5880 |
"Banner muss die Einwilligung vor dem Laden von Google Fonts prüfen (falls "
|
5881 |
"eine Einwilligung vorliegt), was einige Millisekunden pro Seitenaufruf "
|
5882 |
-
"dauert. Daher wirst du unweigerlich einen kleinen Flackereffekt
|
5883 |
-
"Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
|
5884 |
"feststellen."
|
5885 |
|
5886 |
#: inc/presets/free/GoogleFontsPreset.php:1
|
@@ -5890,11 +5891,10 @@ msgid ""
|
|
5890 |
"hosted fonts</a> when possible, rather than asking for consent. We explained "
|
5891 |
"how this works in our blog!"
|
5892 |
msgstr ""
|
5893 |
-
"Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/"
|
5894 |
-
"
|
5895 |
-
"
|
5896 |
-
"
|
5897 |
-
"erklärt!"
|
5898 |
|
5899 |
#: inc/presets/free/GravatarPreset.php:1
|
5900 |
msgid ""
|
@@ -6113,8 +6113,8 @@ msgid ""
|
|
6113 |
"than asking for consent. How to do that, we have explained in our blog!"
|
6114 |
msgstr ""
|
6115 |
"Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
|
6116 |
-
"musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/"
|
6117 |
-
"
|
6118 |
"deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
|
6119 |
"machst, haben wir in unserem Blog erklärt!"
|
6120 |
|
4 |
"POT-Creation-Date: n/a\n"
|
5 |
"PO-Revision-Date: 2022-06-13 06:58+0000\n"
|
6 |
"Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
|
7 |
+
"Language-Team: German <https://translate.devowl.io/projects/wordpress-real-"
|
8 |
+
"cookie-banner-backend-php/develop/de/>\n"
|
9 |
"Language: de_CH\n"
|
10 |
"MIME-Version: 1.0\n"
|
11 |
"Content-Type: text/plain; charset=UTF-8\n"
|
720 |
"Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
|
721 |
"Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
|
722 |
"legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
|
723 |
+
"Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank"
|
724 |
+
"\">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
|
725 |
"Entscheidungen wie die Bewertung von <a href=\"https://www."
|
726 |
+
"autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-"
|
727 |
+
"english.pdf\" target=\"_blank\">TCF durch ADP (Belgien)</a>, die <a href="
|
728 |
+
"\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
|
729 |
+
"%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics Entscheidung "
|
730 |
+
"von dsb (Österreich)</a> und die <a href=\"https://www.cnil.fr/sites/default/"
|
731 |
+
"files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics."
|
732 |
+
"pdf\" target=\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
|
|
|
733 |
|
734 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
735 |
msgid ""
|
797 |
"and revoke consent must be directly accessible on every sub-page of your "
|
798 |
"website."
|
799 |
msgstr ""
|
800 |
+
"Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-"
|
801 |
+
"online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
|
802 |
"\"Orientierungshilfe der Konferenz der unabhängigen "
|
803 |
"Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
|
804 |
"Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
|
950 |
msgstr ""
|
951 |
"Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
|
952 |
"dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
|
953 |
+
"Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/real-"
|
954 |
+
"cookie-banner-3-0/\" target=\"_blank\">Blogbeitrag.</a>."
|
955 |
|
956 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
957 |
msgid ""
|
2653 |
"What do you have to consider when integrating %1$s into your website? <a "
|
2654 |
"href=\"%2$s\" target=\"_blank\">Learn more about it in our blog!</a>"
|
2655 |
msgstr ""
|
2656 |
+
"Was musst du beachten, wenn du %1$s in deine Website integrierst? <a href="
|
2657 |
+
"\"%2$s\" target=\"_blank\">Erfahre mehr darüber in unserem Blog!</a>"
|
2658 |
|
2659 |
#: inc/overrides/pro/presets/FacebookPixelPreset.php:1
|
2660 |
msgid "https://devowl.io/2022/facebook-pixel-wordpress-gdpr/"
|
4352 |
"reCAPTCHA innerhalb des Plugins verwendest, müssen die Formulare blockiert "
|
4353 |
"werden, bis du eine Einwilligung für Google reCAPTCHA hast."
|
4354 |
|
4355 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
4356 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4357 |
msgid ""
|
4358 |
"Please note that the \"Anonymize IP addresses\" feature, which is mandatory "
|
4362 |
"erforderlich ist, um DSGVO-konform zu sein, nur in der kostenpflichtigen "
|
4363 |
"Version von Rank Math verfügbar ist."
|
4364 |
|
4365 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
4366 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4367 |
msgid ""
|
4368 |
"We recommend that you disable the \"Install analytics code\" option in Rank "
|
5880 |
"Google übertragen, weshalb du eine Einwilligung benötigst. Real Cookie "
|
5881 |
"Banner muss die Einwilligung vor dem Laden von Google Fonts prüfen (falls "
|
5882 |
"eine Einwilligung vorliegt), was einige Millisekunden pro Seitenaufruf "
|
5883 |
+
"dauert. Daher wirst du unweigerlich einen kleinen Flackereffekt "
|
5884 |
+
"(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
|
5885 |
"feststellen."
|
5886 |
|
5887 |
#: inc/presets/free/GoogleFontsPreset.php:1
|
5891 |
"hosted fonts</a> when possible, rather than asking for consent. We explained "
|
5892 |
"how this works in our blog!"
|
5893 |
msgstr ""
|
5894 |
+
"Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/google-fonts-"
|
5895 |
+
"wordpress-dsgvo/\" target=\"_blank\">Google Fonts wenn möglich durch lokal "
|
5896 |
+
"gehostete Schriftarten zu ersetzen</a>, anstatt nach einer Einwilligung zu "
|
5897 |
+
"fragen. Wie das funktioniert, haben wir in unserem Blog erklärt!"
|
|
|
5898 |
|
5899 |
#: inc/presets/free/GravatarPreset.php:1
|
5900 |
msgid ""
|
6113 |
"than asking for consent. How to do that, we have explained in our blog!"
|
6114 |
msgstr ""
|
6115 |
"Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
|
6116 |
+
"musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/wordpress-"
|
6117 |
+
"emojis-deaktivieren/\" target=\"_blank\">WordPress-Emoji-Script zu "
|
6118 |
"deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
|
6119 |
"machst, haben wir in unserem Blog erklärt!"
|
6120 |
|
languages/real-cookie-banner-de_CH_informal.po
CHANGED
@@ -4,8 +4,8 @@ msgstr ""
|
|
4 |
"POT-Creation-Date: n/a\n"
|
5 |
"PO-Revision-Date: 2022-06-13 06:58+0000\n"
|
6 |
"Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
|
7 |
-
"Language-Team: German <https://translate.devowl.io/projects/"
|
8 |
-
"
|
9 |
"Language: de_CH_informal\n"
|
10 |
"MIME-Version: 1.0\n"
|
11 |
"Content-Type: text/plain; charset=UTF-8\n"
|
@@ -720,17 +720,16 @@ msgstr ""
|
|
720 |
"Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
|
721 |
"Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
|
722 |
"legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
|
723 |
-
"Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank
|
724 |
-
">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
|
725 |
"Entscheidungen wie die Bewertung von <a href=\"https://www."
|
726 |
-
"autoriteprotectiondonnees.be/publications/decision-quant-au-"
|
727 |
-
"
|
728 |
-
"
|
729 |
-
"
|
730 |
-
"
|
731 |
-
"
|
732 |
-
"
|
733 |
-
"\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
|
734 |
|
735 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
736 |
msgid ""
|
@@ -798,8 +797,8 @@ msgid ""
|
|
798 |
"and revoke consent must be directly accessible on every sub-page of your "
|
799 |
"website."
|
800 |
msgstr ""
|
801 |
-
"Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-
|
802 |
-
".de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
|
803 |
"\"Orientierungshilfe der Konferenz der unabhängigen "
|
804 |
"Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
|
805 |
"Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
|
@@ -951,8 +950,8 @@ msgid ""
|
|
951 |
msgstr ""
|
952 |
"Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
|
953 |
"dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
|
954 |
-
"Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/"
|
955 |
-
"
|
956 |
|
957 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
958 |
msgid ""
|
@@ -2654,8 +2653,8 @@ msgid ""
|
|
2654 |
"What do you have to consider when integrating %1$s into your website? <a "
|
2655 |
"href=\"%2$s\" target=\"_blank\">Learn more about it in our blog!</a>"
|
2656 |
msgstr ""
|
2657 |
-
"Was musst du beachten, wenn du %1$s in deine Website integrierst? <a href
|
2658 |
-
"%2$s\" target=\"_blank\">Erfahre mehr darüber in unserem Blog!</a>"
|
2659 |
|
2660 |
#: inc/overrides/pro/presets/FacebookPixelPreset.php:1
|
2661 |
msgid "https://devowl.io/2022/facebook-pixel-wordpress-gdpr/"
|
@@ -4353,6 +4352,7 @@ msgstr ""
|
|
4353 |
"reCAPTCHA innerhalb des Plugins verwendest, müssen die Formulare blockiert "
|
4354 |
"werden, bis du eine Einwilligung für Google reCAPTCHA hast."
|
4355 |
|
|
|
4356 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4357 |
msgid ""
|
4358 |
"Please note that the \"Anonymize IP addresses\" feature, which is mandatory "
|
@@ -4362,6 +4362,7 @@ msgstr ""
|
|
4362 |
"erforderlich ist, um DSGVO-konform zu sein, nur in der kostenpflichtigen "
|
4363 |
"Version von Rank Math verfügbar ist."
|
4364 |
|
|
|
4365 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4366 |
msgid ""
|
4367 |
"We recommend that you disable the \"Install analytics code\" option in Rank "
|
@@ -5879,8 +5880,8 @@ msgstr ""
|
|
5879 |
"Google übertragen, weshalb du eine Einwilligung benötigst. Real Cookie "
|
5880 |
"Banner muss die Einwilligung vor dem Laden von Google Fonts prüfen (falls "
|
5881 |
"eine Einwilligung vorliegt), was einige Millisekunden pro Seitenaufruf "
|
5882 |
-
"dauert. Daher wirst du unweigerlich einen kleinen Flackereffekt
|
5883 |
-
"Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
|
5884 |
"feststellen."
|
5885 |
|
5886 |
#: inc/presets/free/GoogleFontsPreset.php:1
|
@@ -5890,11 +5891,10 @@ msgid ""
|
|
5890 |
"hosted fonts</a> when possible, rather than asking for consent. We explained "
|
5891 |
"how this works in our blog!"
|
5892 |
msgstr ""
|
5893 |
-
"Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/"
|
5894 |
-
"
|
5895 |
-
"
|
5896 |
-
"
|
5897 |
-
"erklärt!"
|
5898 |
|
5899 |
#: inc/presets/free/GravatarPreset.php:1
|
5900 |
msgid ""
|
@@ -6113,8 +6113,8 @@ msgid ""
|
|
6113 |
"than asking for consent. How to do that, we have explained in our blog!"
|
6114 |
msgstr ""
|
6115 |
"Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
|
6116 |
-
"musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/"
|
6117 |
-
"
|
6118 |
"deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
|
6119 |
"machst, haben wir in unserem Blog erklärt!"
|
6120 |
|
4 |
"POT-Creation-Date: n/a\n"
|
5 |
"PO-Revision-Date: 2022-06-13 06:58+0000\n"
|
6 |
"Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
|
7 |
+
"Language-Team: German <https://translate.devowl.io/projects/wordpress-real-"
|
8 |
+
"cookie-banner-backend-php/develop/de/>\n"
|
9 |
"Language: de_CH_informal\n"
|
10 |
"MIME-Version: 1.0\n"
|
11 |
"Content-Type: text/plain; charset=UTF-8\n"
|
720 |
"Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
|
721 |
"Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
|
722 |
"legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
|
723 |
+
"Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank"
|
724 |
+
"\">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
|
725 |
"Entscheidungen wie die Bewertung von <a href=\"https://www."
|
726 |
+
"autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-"
|
727 |
+
"english.pdf\" target=\"_blank\">TCF durch ADP (Belgien)</a>, die <a href="
|
728 |
+
"\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
|
729 |
+
"%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics Entscheidung "
|
730 |
+
"von dsb (Österreich)</a> und die <a href=\"https://www.cnil.fr/sites/default/"
|
731 |
+
"files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics."
|
732 |
+
"pdf\" target=\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
|
|
|
733 |
|
734 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
735 |
msgid ""
|
797 |
"and revoke consent must be directly accessible on every sub-page of your "
|
798 |
"website."
|
799 |
msgstr ""
|
800 |
+
"Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-"
|
801 |
+
"online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
|
802 |
"\"Orientierungshilfe der Konferenz der unabhängigen "
|
803 |
"Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
|
804 |
"Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
|
950 |
msgstr ""
|
951 |
"Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
|
952 |
"dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
|
953 |
+
"Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/real-"
|
954 |
+
"cookie-banner-3-0/\" target=\"_blank\">Blogbeitrag.</a>."
|
955 |
|
956 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
957 |
msgid ""
|
2653 |
"What do you have to consider when integrating %1$s into your website? <a "
|
2654 |
"href=\"%2$s\" target=\"_blank\">Learn more about it in our blog!</a>"
|
2655 |
msgstr ""
|
2656 |
+
"Was musst du beachten, wenn du %1$s in deine Website integrierst? <a href="
|
2657 |
+
"\"%2$s\" target=\"_blank\">Erfahre mehr darüber in unserem Blog!</a>"
|
2658 |
|
2659 |
#: inc/overrides/pro/presets/FacebookPixelPreset.php:1
|
2660 |
msgid "https://devowl.io/2022/facebook-pixel-wordpress-gdpr/"
|
4352 |
"reCAPTCHA innerhalb des Plugins verwendest, müssen die Formulare blockiert "
|
4353 |
"werden, bis du eine Einwilligung für Google reCAPTCHA hast."
|
4354 |
|
4355 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
4356 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4357 |
msgid ""
|
4358 |
"Please note that the \"Anonymize IP addresses\" feature, which is mandatory "
|
4362 |
"erforderlich ist, um DSGVO-konform zu sein, nur in der kostenpflichtigen "
|
4363 |
"Version von Rank Math verfügbar ist."
|
4364 |
|
4365 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
4366 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4367 |
msgid ""
|
4368 |
"We recommend that you disable the \"Install analytics code\" option in Rank "
|
5880 |
"Google übertragen, weshalb du eine Einwilligung benötigst. Real Cookie "
|
5881 |
"Banner muss die Einwilligung vor dem Laden von Google Fonts prüfen (falls "
|
5882 |
"eine Einwilligung vorliegt), was einige Millisekunden pro Seitenaufruf "
|
5883 |
+
"dauert. Daher wirst du unweigerlich einen kleinen Flackereffekt "
|
5884 |
+
"(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
|
5885 |
"feststellen."
|
5886 |
|
5887 |
#: inc/presets/free/GoogleFontsPreset.php:1
|
5891 |
"hosted fonts</a> when possible, rather than asking for consent. We explained "
|
5892 |
"how this works in our blog!"
|
5893 |
msgstr ""
|
5894 |
+
"Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/google-fonts-"
|
5895 |
+
"wordpress-dsgvo/\" target=\"_blank\">Google Fonts wenn möglich durch lokal "
|
5896 |
+
"gehostete Schriftarten zu ersetzen</a>, anstatt nach einer Einwilligung zu "
|
5897 |
+
"fragen. Wie das funktioniert, haben wir in unserem Blog erklärt!"
|
|
|
5898 |
|
5899 |
#: inc/presets/free/GravatarPreset.php:1
|
5900 |
msgid ""
|
6113 |
"than asking for consent. How to do that, we have explained in our blog!"
|
6114 |
msgstr ""
|
6115 |
"Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
|
6116 |
+
"musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/wordpress-"
|
6117 |
+
"emojis-deaktivieren/\" target=\"_blank\">WordPress-Emoji-Script zu "
|
6118 |
"deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
|
6119 |
"machst, haben wir in unserem Blog erklärt!"
|
6120 |
|
languages/real-cookie-banner-de_DE.po
CHANGED
@@ -4,8 +4,8 @@ msgstr ""
|
|
4 |
"POT-Creation-Date: n/a\n"
|
5 |
"PO-Revision-Date: 2022-06-13 06:58+0000\n"
|
6 |
"Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
|
7 |
-
"Language-Team: German <https://translate.devowl.io/projects/"
|
8 |
-
"
|
9 |
"Language: de_DE\n"
|
10 |
"MIME-Version: 1.0\n"
|
11 |
"Content-Type: text/plain; charset=UTF-8\n"
|
@@ -720,17 +720,16 @@ msgstr ""
|
|
720 |
"Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
|
721 |
"Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
|
722 |
"legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
|
723 |
-
"Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank
|
724 |
-
">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
|
725 |
"Entscheidungen wie die Bewertung von <a href=\"https://www."
|
726 |
-
"autoriteprotectiondonnees.be/publications/decision-quant-au-"
|
727 |
-
"
|
728 |
-
"
|
729 |
-
"
|
730 |
-
"
|
731 |
-
"
|
732 |
-
"
|
733 |
-
"\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
|
734 |
|
735 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
736 |
msgid ""
|
@@ -798,8 +797,8 @@ msgid ""
|
|
798 |
"and revoke consent must be directly accessible on every sub-page of your "
|
799 |
"website."
|
800 |
msgstr ""
|
801 |
-
"Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-
|
802 |
-
".de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
|
803 |
"\"Orientierungshilfe der Konferenz der unabhängigen "
|
804 |
"Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
|
805 |
"Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
|
@@ -951,8 +950,8 @@ msgid ""
|
|
951 |
msgstr ""
|
952 |
"Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
|
953 |
"dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
|
954 |
-
"Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/"
|
955 |
-
"
|
956 |
|
957 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
958 |
msgid ""
|
@@ -2654,8 +2653,8 @@ msgid ""
|
|
2654 |
"What do you have to consider when integrating %1$s into your website? <a "
|
2655 |
"href=\"%2$s\" target=\"_blank\">Learn more about it in our blog!</a>"
|
2656 |
msgstr ""
|
2657 |
-
"Was musst du beachten, wenn du %1$s in deine Website integrierst? <a href
|
2658 |
-
"%2$s\" target=\"_blank\">Erfahre mehr darüber in unserem Blog!</a>"
|
2659 |
|
2660 |
#: inc/overrides/pro/presets/FacebookPixelPreset.php:1
|
2661 |
msgid "https://devowl.io/2022/facebook-pixel-wordpress-gdpr/"
|
@@ -4353,6 +4352,7 @@ msgstr ""
|
|
4353 |
"reCAPTCHA innerhalb des Plugins verwendest, müssen die Formulare blockiert "
|
4354 |
"werden, bis du eine Einwilligung für Google reCAPTCHA hast."
|
4355 |
|
|
|
4356 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4357 |
msgid ""
|
4358 |
"Please note that the \"Anonymize IP addresses\" feature, which is mandatory "
|
@@ -4362,6 +4362,7 @@ msgstr ""
|
|
4362 |
"erforderlich ist, um DSGVO-konform zu sein, nur in der kostenpflichtigen "
|
4363 |
"Version von Rank Math verfügbar ist."
|
4364 |
|
|
|
4365 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4366 |
msgid ""
|
4367 |
"We recommend that you disable the \"Install analytics code\" option in Rank "
|
@@ -5879,8 +5880,8 @@ msgstr ""
|
|
5879 |
"Google übertragen, weshalb du eine Einwilligung benötigst. Real Cookie "
|
5880 |
"Banner muss die Einwilligung vor dem Laden von Google Fonts prüfen (falls "
|
5881 |
"eine Einwilligung vorliegt), was einige Millisekunden pro Seitenaufruf "
|
5882 |
-
"dauert. Daher wirst du unweigerlich einen kleinen Flackereffekt
|
5883 |
-
"Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
|
5884 |
"feststellen."
|
5885 |
|
5886 |
#: inc/presets/free/GoogleFontsPreset.php:1
|
@@ -5890,11 +5891,10 @@ msgid ""
|
|
5890 |
"hosted fonts</a> when possible, rather than asking for consent. We explained "
|
5891 |
"how this works in our blog!"
|
5892 |
msgstr ""
|
5893 |
-
"Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/"
|
5894 |
-
"
|
5895 |
-
"
|
5896 |
-
"
|
5897 |
-
"erklärt!"
|
5898 |
|
5899 |
#: inc/presets/free/GravatarPreset.php:1
|
5900 |
msgid ""
|
@@ -6113,8 +6113,8 @@ msgid ""
|
|
6113 |
"than asking for consent. How to do that, we have explained in our blog!"
|
6114 |
msgstr ""
|
6115 |
"Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
|
6116 |
-
"musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/"
|
6117 |
-
"
|
6118 |
"deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
|
6119 |
"machst, haben wir in unserem Blog erklärt!"
|
6120 |
|
4 |
"POT-Creation-Date: n/a\n"
|
5 |
"PO-Revision-Date: 2022-06-13 06:58+0000\n"
|
6 |
"Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
|
7 |
+
"Language-Team: German <https://translate.devowl.io/projects/wordpress-real-"
|
8 |
+
"cookie-banner-backend-php/develop/de/>\n"
|
9 |
"Language: de_DE\n"
|
10 |
"MIME-Version: 1.0\n"
|
11 |
"Content-Type: text/plain; charset=UTF-8\n"
|
720 |
"Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
|
721 |
"Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
|
722 |
"legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
|
723 |
+
"Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank"
|
724 |
+
"\">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
|
725 |
"Entscheidungen wie die Bewertung von <a href=\"https://www."
|
726 |
+
"autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-"
|
727 |
+
"english.pdf\" target=\"_blank\">TCF durch ADP (Belgien)</a>, die <a href="
|
728 |
+
"\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
|
729 |
+
"%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics Entscheidung "
|
730 |
+
"von dsb (Österreich)</a> und die <a href=\"https://www.cnil.fr/sites/default/"
|
731 |
+
"files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics."
|
732 |
+
"pdf\" target=\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
|
|
|
733 |
|
734 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
735 |
msgid ""
|
797 |
"and revoke consent must be directly accessible on every sub-page of your "
|
798 |
"website."
|
799 |
msgstr ""
|
800 |
+
"Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-"
|
801 |
+
"online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
|
802 |
"\"Orientierungshilfe der Konferenz der unabhängigen "
|
803 |
"Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
|
804 |
"Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
|
950 |
msgstr ""
|
951 |
"Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
|
952 |
"dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
|
953 |
+
"Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/real-"
|
954 |
+
"cookie-banner-3-0/\" target=\"_blank\">Blogbeitrag.</a>."
|
955 |
|
956 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
957 |
msgid ""
|
2653 |
"What do you have to consider when integrating %1$s into your website? <a "
|
2654 |
"href=\"%2$s\" target=\"_blank\">Learn more about it in our blog!</a>"
|
2655 |
msgstr ""
|
2656 |
+
"Was musst du beachten, wenn du %1$s in deine Website integrierst? <a href="
|
2657 |
+
"\"%2$s\" target=\"_blank\">Erfahre mehr darüber in unserem Blog!</a>"
|
2658 |
|
2659 |
#: inc/overrides/pro/presets/FacebookPixelPreset.php:1
|
2660 |
msgid "https://devowl.io/2022/facebook-pixel-wordpress-gdpr/"
|
4352 |
"reCAPTCHA innerhalb des Plugins verwendest, müssen die Formulare blockiert "
|
4353 |
"werden, bis du eine Einwilligung für Google reCAPTCHA hast."
|
4354 |
|
4355 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
4356 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4357 |
msgid ""
|
4358 |
"Please note that the \"Anonymize IP addresses\" feature, which is mandatory "
|
4362 |
"erforderlich ist, um DSGVO-konform zu sein, nur in der kostenpflichtigen "
|
4363 |
"Version von Rank Math verfügbar ist."
|
4364 |
|
4365 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
4366 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4367 |
msgid ""
|
4368 |
"We recommend that you disable the \"Install analytics code\" option in Rank "
|
5880 |
"Google übertragen, weshalb du eine Einwilligung benötigst. Real Cookie "
|
5881 |
"Banner muss die Einwilligung vor dem Laden von Google Fonts prüfen (falls "
|
5882 |
"eine Einwilligung vorliegt), was einige Millisekunden pro Seitenaufruf "
|
5883 |
+
"dauert. Daher wirst du unweigerlich einen kleinen Flackereffekt "
|
5884 |
+
"(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
|
5885 |
"feststellen."
|
5886 |
|
5887 |
#: inc/presets/free/GoogleFontsPreset.php:1
|
5891 |
"hosted fonts</a> when possible, rather than asking for consent. We explained "
|
5892 |
"how this works in our blog!"
|
5893 |
msgstr ""
|
5894 |
+
"Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/google-fonts-"
|
5895 |
+
"wordpress-dsgvo/\" target=\"_blank\">Google Fonts wenn möglich durch lokal "
|
5896 |
+
"gehostete Schriftarten zu ersetzen</a>, anstatt nach einer Einwilligung zu "
|
5897 |
+
"fragen. Wie das funktioniert, haben wir in unserem Blog erklärt!"
|
|
|
5898 |
|
5899 |
#: inc/presets/free/GravatarPreset.php:1
|
5900 |
msgid ""
|
6113 |
"than asking for consent. How to do that, we have explained in our blog!"
|
6114 |
msgstr ""
|
6115 |
"Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
|
6116 |
+
"musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/wordpress-"
|
6117 |
+
"emojis-deaktivieren/\" target=\"_blank\">WordPress-Emoji-Script zu "
|
6118 |
"deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
|
6119 |
"machst, haben wir in unserem Blog erklärt!"
|
6120 |
|
languages/real-cookie-banner-de_DE_formal.po
CHANGED
@@ -723,17 +723,16 @@ msgstr ""
|
|
723 |
"Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
|
724 |
"Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
|
725 |
"legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
|
726 |
-
"Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank
|
727 |
-
">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
|
728 |
"Entscheidungen wie die Bewertung von <a href=\"https://www."
|
729 |
-
"autoriteprotectiondonnees.be/publications/decision-quant-au-"
|
730 |
-
"
|
731 |
-
"
|
732 |
-
"
|
733 |
-
"
|
734 |
-
"
|
735 |
-
"
|
736 |
-
"\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
|
737 |
|
738 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
739 |
msgid ""
|
@@ -801,8 +800,8 @@ msgid ""
|
|
801 |
"and revoke consent must be directly accessible on every sub-page of your "
|
802 |
"website."
|
803 |
msgstr ""
|
804 |
-
"Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-
|
805 |
-
".de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
|
806 |
"\"Orientierungshilfe der Konferenz der unabhängigen "
|
807 |
"Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
|
808 |
"Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
|
@@ -954,8 +953,8 @@ msgid ""
|
|
954 |
msgstr ""
|
955 |
"Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
|
956 |
"dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
|
957 |
-
"Änderungen erfahren Sie in unserem <a href=\"https://devowl.io/de/2022/"
|
958 |
-
"
|
959 |
|
960 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
961 |
msgid ""
|
@@ -2664,8 +2663,8 @@ msgid ""
|
|
2664 |
"href=\"%2$s\" target=\"_blank\">Learn more about it in our blog!</a>"
|
2665 |
msgstr ""
|
2666 |
"Was müssen Sie bei der Integration von %1$s in Ihre Website beachten? <a "
|
2667 |
-
"href=\"%2$s\" target=\"_blank\">Erfahren Sie mehr darüber in unserem "
|
2668 |
-
"
|
2669 |
|
2670 |
#: inc/overrides/pro/presets/FacebookPixelPreset.php:1
|
2671 |
msgid "https://devowl.io/2022/facebook-pixel-wordpress-gdpr/"
|
@@ -4362,6 +4361,7 @@ msgstr ""
|
|
4362 |
"reCAPTCHA innerhalb des Plugins verwenden, müssen die Formulare blockiert "
|
4363 |
"werden, bis Sie die Zustimmung für Google reCAPTCHA haben."
|
4364 |
|
|
|
4365 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4366 |
msgid ""
|
4367 |
"Please note that the \"Anonymize IP addresses\" feature, which is mandatory "
|
@@ -4370,6 +4370,7 @@ msgstr ""
|
|
4370 |
"Please note that the “Anonymize IP addresses” feature, which is mandatory to "
|
4371 |
"be GDPR compliant, is only available in the paid version of Rank Math."
|
4372 |
|
|
|
4373 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4374 |
msgid ""
|
4375 |
"We recommend that you disable the \"Install analytics code\" option in Rank "
|
@@ -5894,8 +5895,8 @@ msgid ""
|
|
5894 |
msgstr ""
|
5895 |
"Beim Laden von Google Fonts werden persönliche Daten Ihrer Besucher an "
|
5896 |
"Google übertragen, weshalb Sie eine Einwilligung benötigen. Real Cookie "
|
5897 |
-
"Banner muss vor dem Laden von Google Fonts die Einwilligung überprüfen
|
5898 |
-
"sofern eine Einwilligung vorliegt), was einige Millisekunden pro "
|
5899 |
"Seitenaufruf dauert. Daher werden Sie auf Ihrer Website unweigerlich einen "
|
5900 |
"kleinen Flackereffekt (Austausch der Schrift nach einigen Millisekunden) "
|
5901 |
"feststellen."
|
@@ -5907,11 +5908,10 @@ msgid ""
|
|
5907 |
"hosted fonts</a> when possible, rather than asking for consent. We explained "
|
5908 |
"how this works in our blog!"
|
5909 |
msgstr ""
|
5910 |
-
"Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/"
|
5911 |
-
"
|
5912 |
-
"
|
5913 |
-
"
|
5914 |
-
"erklärt!"
|
5915 |
|
5916 |
#: inc/presets/free/GravatarPreset.php:1
|
5917 |
msgid ""
|
723 |
"Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
|
724 |
"Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
|
725 |
"legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
|
726 |
+
"Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank"
|
727 |
+
"\">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
|
728 |
"Entscheidungen wie die Bewertung von <a href=\"https://www."
|
729 |
+
"autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-"
|
730 |
+
"english.pdf\" target=\"_blank\">TCF durch ADP (Belgien)</a>, die <a href="
|
731 |
+
"\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
|
732 |
+
"%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics Entscheidung "
|
733 |
+
"von dsb (Österreich)</a> und die <a href=\"https://www.cnil.fr/sites/default/"
|
734 |
+
"files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics."
|
735 |
+
"pdf\" target=\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
|
|
|
736 |
|
737 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
738 |
msgid ""
|
800 |
"and revoke consent must be directly accessible on every sub-page of your "
|
801 |
"website."
|
802 |
msgstr ""
|
803 |
+
"Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-"
|
804 |
+
"online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
|
805 |
"\"Orientierungshilfe der Konferenz der unabhängigen "
|
806 |
"Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
|
807 |
"Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
|
953 |
msgstr ""
|
954 |
"Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
|
955 |
"dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
|
956 |
+
"Änderungen erfahren Sie in unserem <a href=\"https://devowl.io/de/2022/real-"
|
957 |
+
"cookie-banner-3-0/\" target=\"_blank\">Blogbeitrag.</a>."
|
958 |
|
959 |
#: inc/comp/migration/DashboardTileMigrationMajor3.php:1
|
960 |
msgid ""
|
2663 |
"href=\"%2$s\" target=\"_blank\">Learn more about it in our blog!</a>"
|
2664 |
msgstr ""
|
2665 |
"Was müssen Sie bei der Integration von %1$s in Ihre Website beachten? <a "
|
2666 |
+
"href=\"%2$s\" target=\"_blank\">Erfahren Sie mehr darüber in unserem Blog!</"
|
2667 |
+
"a>"
|
2668 |
|
2669 |
#: inc/overrides/pro/presets/FacebookPixelPreset.php:1
|
2670 |
msgid "https://devowl.io/2022/facebook-pixel-wordpress-gdpr/"
|
4361 |
"reCAPTCHA innerhalb des Plugins verwenden, müssen die Formulare blockiert "
|
4362 |
"werden, bis Sie die Zustimmung für Google reCAPTCHA haben."
|
4363 |
|
4364 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
4365 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4366 |
msgid ""
|
4367 |
"Please note that the \"Anonymize IP addresses\" feature, which is mandatory "
|
4370 |
"Please note that the “Anonymize IP addresses” feature, which is mandatory to "
|
4371 |
"be GDPR compliant, is only available in the paid version of Rank Math."
|
4372 |
|
4373 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
4374 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
4375 |
msgid ""
|
4376 |
"We recommend that you disable the \"Install analytics code\" option in Rank "
|
5895 |
msgstr ""
|
5896 |
"Beim Laden von Google Fonts werden persönliche Daten Ihrer Besucher an "
|
5897 |
"Google übertragen, weshalb Sie eine Einwilligung benötigen. Real Cookie "
|
5898 |
+
"Banner muss vor dem Laden von Google Fonts die Einwilligung überprüfen "
|
5899 |
+
"(sofern eine Einwilligung vorliegt), was einige Millisekunden pro "
|
5900 |
"Seitenaufruf dauert. Daher werden Sie auf Ihrer Website unweigerlich einen "
|
5901 |
"kleinen Flackereffekt (Austausch der Schrift nach einigen Millisekunden) "
|
5902 |
"feststellen."
|
5908 |
"hosted fonts</a> when possible, rather than asking for consent. We explained "
|
5909 |
"how this works in our blog!"
|
5910 |
msgstr ""
|
5911 |
+
"Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/google-fonts-"
|
5912 |
+
"wordpress-dsgvo/\" target=\"_blank\">Google Fonts wenn möglich durch lokal "
|
5913 |
+
"gehostete Schriftarten zu ersetzen</a>, anstatt nach einer Einwilligung zu "
|
5914 |
+
"fragen. Wie das funktioniert, haben wir in unserem Blog erklärt!"
|
|
|
5915 |
|
5916 |
#: inc/presets/free/GravatarPreset.php:1
|
5917 |
msgid ""
|
languages/real-cookie-banner.pot
CHANGED
@@ -2112,10 +2112,12 @@ msgstr ""
|
|
2112 |
msgid "Quform itself does not require a content blocker. However, if you use Google reCAPTCHA within the plugin, the forms must be blocked until you have consent for Google reCAPTCHA."
|
2113 |
msgstr ""
|
2114 |
|
|
|
2115 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
2116 |
msgid "Please note that the \"Anonymize IP addresses\" feature, which is mandatory to be GDPR compliant, is only available in the paid version of Rank Math."
|
2117 |
msgstr ""
|
2118 |
|
|
|
2119 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
2120 |
msgid "We recommend that you disable the \"Install analytics code\" option in Rank Math and instead integrate Google Analytics via the \"Google Analytics\" template in Real Cookie Banner."
|
2121 |
msgstr ""
|
2112 |
msgid "Quform itself does not require a content blocker. However, if you use Google reCAPTCHA within the plugin, the forms must be blocked until you have consent for Google reCAPTCHA."
|
2113 |
msgstr ""
|
2114 |
|
2115 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
2116 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
2117 |
msgid "Please note that the \"Anonymize IP addresses\" feature, which is mandatory to be GDPR compliant, is only available in the paid version of Rank Math."
|
2118 |
msgstr ""
|
2119 |
|
2120 |
+
#: inc/overrides/pro/presets/RankMathGA4Preset.php:1
|
2121 |
#: inc/overrides/pro/presets/RankMathGAPreset.php:1
|
2122 |
msgid "We recommend that you disable the \"Install analytics code\" option in Rank Math and instead integrate Google Analytics via the \"Google Analytics\" template in Real Cookie Banner."
|
2123 |
msgstr ""
|
public/dist/banner.lite.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
var realCookieBanner_banner;!function(){var t,e={9382:function(t,e,n){"use strict";n.d(e,{n:function(){return T}});var r=n(7938),o=n(5450),i=n.n(o),a=n(4115),c=n(6346),s=n(38),u=n(63),l=n(7663),d=n(5245);function f(t){var e,n,o=t.decisionCookieName,a=t.tagManager,c=t.groups,f=t.essentialGroupSlug,p=t.type,h="none"!==a,v=c.filter((function(t){return t.slug===f})),b=(0,l.Z)(v,1)[0],m=(0,u.Z)({},b.id,b.items.map((function(t){return t.id})));if("consent"===p){var g=(0,d.h)(o);!1!==g?e=g.consent:(console.warn("Something went wrong while reading the cookie, fallback to essentials only..."),e=m)}return"essentials"===p&&(e=m),{isManagerActive:h,selectedGroups:e,iterateCookies:(n=(0,r.Z)(i().mark((function t(n){var r,o,a,u,l,d,f,h;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=(0,s.Z)(c),t.prev=1,r.s();case 3:if((o=r.n()).done){t.next=25;break}a=o.value,u=(0,s.Z)(a.items),t.prev=6,u.s();case 8:if((l=u.n()).done){t.next=15;break}return f=l.value,h="all"===p||(null===(d=e[a.id])||void 0===d?void 0:d.indexOf(f.id))>-1,t.next=13,n(a,f,h);case 13:t.next=8;break;case 15:t.next=20;break;case 17:t.prev=17,t.t0=t.catch(6),u.e(t.t0);case 20:return t.prev=20,u.f(),t.finish(20);case 23:t.next=3;break;case 25:t.next=30;break;case 27:t.prev=27,t.t1=t.catch(1),r.e(t.t1);case 30:return t.prev=30,r.f(),t.finish(30);case 33:case"end":return t.stop()}}),t,null,[[1,27,30,33],[6,17,20,23]])}))),function(t){return n.apply(this,arguments)})}}var p=n(9575);function h(t,e){var n,r,o;return t&&(r=(n=e).charAt(0).toUpperCase()+n.slice(1),o="googleTagManager"===e?"dataLayer":"_mtm"),{useVariableNameCamel:n,useVariableNamePascal:r,useGlobalObjectName:o}}var v=n(55).default;function b(t){return m.apply(this,arguments)}function m(){return m=(0,r.Z)(i().mark((function t(e){var n,o,s,u,l,d,b,m,g,y,k;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=[],o=f(e),s=o.isManagerActive,u=o.iterateCookies,l=e.tagManager,d=e.skipOptIn,(b=h(s,l)).useGlobalObjectName,m=b.useVariableNamePascal,g=!1,y=v.resolve(void 0),k=[],t.next=9,u(function(){var t=(0,r.Z)(i().mark((function t(e,r,o){var u,l,f,h,v;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:u=r.codeDynamics,l=r.codeOptIn,f=(0,a.Z)(r,["codeDynamics","codeOptIn"]),s&&f["thisIs".concat(m)],o&&(h=s&&f["codeOptInNo".concat(m)],v="function"==typeof d&&d(r),h||v||k.push((0,c.K)(l,u)),document.dispatchEvent(new CustomEvent(p.g,{detail:{group:e,cookie:r}})),n.push({group:e,cookie:r}));case 3:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}());case 9:return t.abrupt("return",{isManagerOptOut:g,dataLayerPromise:y,cookies:n,ready:v.all(k)});case 10:case"end":return t.stop()}}),t)}))),m.apply(this,arguments)}var g=n(55).default;function y(t,e,n){return k.apply(this,arguments)}function k(){return k=(0,r.Z)(i().mark((function t(e,n,o){var s,l,d,p,v,b,m,y;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(s=[],l=f(e),d=l.isManagerActive,p=l.iterateCookies,v=e.tagManager,b=h(d,v),m=b.useVariableNameCamel,y=b.useVariableNamePascal,!n){t.next=11;break}return p((function(t,e,r){var o=e["".concat(m,"InEventName")];r&&o&&n.push({realCookieBannerOptInEvents:(0,u.Z)({},o,!0),event:o})})),t.next=8,new g((function(t){return setTimeout(t,1e3)}));case 8:p((function(t,e,r){var o=e["".concat(m,"OutEventName")];!r&&o&&n.push({realCookieBannerOptOutEvents:(0,u.Z)({},o,!0),event:o})})),t.next=14;break;case 11:if(!d||!o){t.next=14;break}return t.next=14,p(function(){var t=(0,r.Z)(i().mark((function t(e,n,r){var o,u,l;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:o=n.codeDynamics,u=n.codeOptIn,l=(0,a.Z)(n,["codeDynamics","codeOptIn"]),r&&l["codeOptInNo".concat(y)]&&s.push((0,c.K)(u,o));case 2:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}());case 14:return t.abrupt("return",{ready:g.all(s)});case 15:case"end":return t.stop()}}),t)}))),k.apply(this,arguments)}var x=n(1456),w=n(8542),C=n.n(w),S=n(2891),O=n(1829);function A(t,e){var n,r=(0,s.Z)(t);try{for(r.s();!(n=r.n()).done;){var o=n.value,i=o.type,a=o.name,c=new RegExp((0,O.L)((0,S.c)(a,e)),"g");switch(i){case"http":for(var u=0,l=Object.keys(C().get());u<l.length;u++){var d=l[u];c.test(d)&&C().remove(d)}break;case"local":case"session":try{var f="local"===i?window.localStorage:window.sessionStorage;if(f)for(var p=0,h=Object.keys(f);p<h.length;p++){var v=h[p];if(c.test(v)){try{f.setItem(v,null)}catch(t){}for(var b=0;f.getItem(v)&&b<100;)b++,f.removeItem(v)}}}catch(t){continue}}}}catch(t){r.e(t)}finally{r.f()}}function D(t,e){return E.apply(this,arguments)}function E(){return E=(0,r.Z)(i().mark((function t(e,n){var o,s,u,l,d,p,v;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o=f(e),s=o.isManagerActive,u=o.iterateCookies,l=e.tagManager,d=h(s,l),p=d.useVariableNamePascal,v=[],t.next=6,u(function(){var t=(0,r.Z)(i().mark((function t(e,r,o){var u,l,d,f,h,b,m,g;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:u=r.id,l=r.codeDynamics,d=r.codeOptOut,f=r.codeOptOutDelete,h=r.noTechnicalDefinitions,b=r.technicalDefinitions,m=(0,a.Z)(r,["id","codeDynamics","codeOptOut","codeOptOutDelete","noTechnicalDefinitions","technicalDefinitions"]),o||(((g=s&&m["codeOptInNo".concat(p)])&&!n||!g)&&(0,c.K)(d,l),f&&!h&&(A(b,l),b.some((function(t){return"http"===t.type}))&&v.push(u)),document.dispatchEvent(new CustomEvent(x.E,{detail:{group:e,cookie:r,deleteHttpCookies:v}})));case 2:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}());case 6:case"end":return t.stop()}}),t)}))),E.apply(this,arguments)}var Z=n(7563),I=n(6028),B=n(55).default;function T(t){return N.apply(this,arguments)}function N(){return(N=(0,r.Z)(i().mark((function t(e){var n,r,o,a,c,s,u,l;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,(0,I.C)();case 2:return t.next=4,b(e);case 4:return n=t.sent,r=n.dataLayerPromise,o=n.isManagerOptOut,a=n.cookies,c=n.ready,t.t0=y,t.t1=e,t.next=13,r;case 13:return t.t2=t.sent,t.t3=o,t.next=17,(0,t.t0)(t.t1,t.t2,t.t3);case 17:return s=t.sent,u=s.ready,l=B.all([c,u]),document.dispatchEvent(new CustomEvent(Z.V,{detail:{cookies:a,ready:l}})),t.next=23,D(e,o);case 23:case"end":return t.stop()}}),t)})))).apply(this,arguments)}},8218:function(t,e,n){"use strict";n.d(e,{G:function(){return f}});var r=n(2711),o=n(6762),i=n(3340),a=n(9382),c=n(38),s=n(63),u=n(7663);function l(t){var e=t.groups,n=t.essentialGroupSlug,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=e.filter((function(t){return t.slug===n})),i=(0,u.Z)(o,1),a=i[0],l=(0,s.Z)({},a.id,a.items.map((function(t){return t.id})));if(r){var d,f=(0,c.Z)(e);try{for(f.s();!(d=f.n()).done;){var p=d.value;if(p!==a){var h=p.items.filter((function(t){return"legitimate-interest"===t.legalBasis})).map((function(t){return t.id}));h.length&&(l[p.id]=h)}}}catch(t){f.e(t)}finally{f.f()}}return l}var d=n(5245),f=function(){function t(e){(0,o.Z)(this,t),this.options=void 0,this.options=e}return(0,i.Z)(t,[{key:"applyCookies",value:function(t){return(0,a.n)((0,r.Z)((0,r.Z)({},t),this.options))}},{key:"getUserDecision",value:function(){return(0,d.h)(this.getOption("decisionCookieName"))}},{key:"getDefaultDecision",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return l(this.options,t)}},{key:"getOption",value:function(t){return this.options[t]}},{key:"getOptions",value:function(){return this.options}}]),t}()},5245:function(t,e,n){"use strict";n.d(e,{h:function(){return a}});var r=n(7663),o=n(965),i=n(4001);function a(t){var e=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=(0,o.Z)(document.cookie.matchAll(new RegExp("(^|;)\\s*".concat(t,"\\s*=\\s*([^;]+)"),"g")));if(!n.length)return"";var r=n.pop().pop();return e?decodeURIComponent(r):r}(t);if(!e)return!(0,i.E)()&&(window.rcbDisabledCookieComp||!1);var n=function(t,e,n){var r=t.split(":");if(r.length<=3)return r;var o=r.slice(0,2);return o.push(r.slice(2).join(":")),o}(e);if(3!==n.length)return!1;var a=(0,r.Z)(n,2),c=a[0],s=a[1],u=c.split(",");return{uuid:u.shift(),previousUuids:u,revision:s,consent:JSON.parse(n[2])}}},7766:function(t,e,n){"use strict";n.d(e,{I:function(){return r}});var r="RCB/Banner/Show"},9575:function(t,e,n){"use strict";n.d(e,{g:function(){return r}});var r="RCB/OptIn"},7563:function(t,e,n){"use strict";n.d(e,{V:function(){return r}});var r="RCB/OptIn/All"},1456:function(t,e,n){"use strict";n.d(e,{E:function(){return r}});var r="RCB/OptOut"},6028:function(t,e,n){"use strict";n.d(e,{C:function(){return o}});var r=n(55).default,o=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"complete";return new r((function(n){var r=function(){null==t||t(),setTimeout(n,0)};document.readyState===e?r():document.addEventListener("readystatechange",(function(){document.readyState===e&&r()}))}))}},1829:function(t,e,n){"use strict";function r(t){var e,n=t.replace(/\*/g,"PLEACE_REPLACE_ME_AGAIN");return"^".concat((e=n,e.replace(new RegExp("[.\\\\+*?\\[\\^\\]$(){}=!<>|:\\".concat("","-]"),"g"),"\\$&")).replace(/PLEACE_REPLACE_ME_AGAIN/g,"(.*)"),"$")}n.d(e,{L:function(){return r}})},4001:function(t,e,n){"use strict";function r(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"test";try{document.cookie="".concat(t,"=1");var e=-1!==document.cookie.indexOf("".concat(t,"="));return document.cookie="".concat(t,"=1; expires=Thu, 01-Jan-1970 00:00:01 GMT"),e}catch(t){return!1}}n.d(e,{E:function(){return r}})},2891:function(t,e,n){"use strict";n.d(e,{c:function(){return o}});var r=/{{([A-Za-z0-9_]+)}}/gm;function o(t,e){return t.replace(r,(function(t,n){return Object.prototype.hasOwnProperty.call(e,n)?e[n]:t}))}},4548:function(t,e,n){"use strict";n.d(e,{jb:function(){return r},zm:function(){return o},rG:function(){return i},d3:function(){return a},_W:function(){return c},NY:function(){return s},He:function(){return u},i7:function(){return l},Ng:function(){return d},CT:function(){return f},v4:function(){return p},YO:function(){return h},Gn:function(){return v},Ti:function(){return b},Ks:function(){return m},dW:function(){return g},Kh:function(){return y},Wm:function(){return k},Qt:function(){return x},of:function(){return w},fq:function(){return C},WK:function(){return S},jk:function(){return O},Kx:function(){return A}});var r="consent-original",o="consent-click-original",i="_",a="consent-by",c="consent-required",s="consent-visual-use-parent",u="consent-visual-paint-mode",l="consent-inline",d="consent-inline-style",f="consent-id",p="script",h="consent-blocker-connected",v="consent-blocker-connected-pres",b="consent-transaction-complete",m="consent-transform-wrapper",g="1",y="consent-strict-hidden",k="consent-cb-reset-parent",x="1",w="consent-cb-reset-parent-is-ratio",C="consent-got-clicked",S="1",O="2",A="consent-thumbnail"},6346:function(t,e,n){"use strict";n.d(e,{L:function(){return s},K:function(){return u}});var r=n(9749),o=n.n(r),i=n(2891),a=n(7033),c=n(55).default,s="rcbInitiatorOnload";function u(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:document.body;return new c((function(r){t?o()(n,(0,i.c)(t,e),{done:r,error:function(t){console.error(t)},beforeWriteToken:function(t){var e=t.attrs,n=t.booleanAttrs,r=t.src,o=t.href,i=t.content;if(null!=n&&n["skip-write"])return!1;for(var c in i&&(t.content=i.replace(/window\.onload\s+=/g,"window.".concat(s," ="))),e)if(e[c]=(0,a.l)(e[c]),"unique-write-name"===c&&document.querySelector('[unique-write-name="'.concat(e[c],'"]')))return!1;return r&&(t.src=(0,a.l)(r)),o&&(t.href=(0,a.l)(o)),t}}):r()}))}},3102:function(t,e,n){"use strict";n.d(e,{T:function(){return r}});var r="RCB/OptIn/ContentBlocker"},3743:function(t,e,n){"use strict";function r(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;setTimeout((function(){try{window.dispatchEvent(new Event("resize"))}catch(t){}}),t)}n.d(e,{s:function(){return r}})},7033:function(t,e,n){"use strict";n.d(e,{l:function(){return o}});var r=n(3137);function o(t){var e;return(0,r.C)(t)?null===(e=(new DOMParser).parseFromString('<a href="'.concat(t,'"></a>'),"text/html").querySelector("a"))||void 0===e?void 0:e.href:(new DOMParser).parseFromString(t,"text/html").documentElement.textContent}},3137:function(t,e,n){"use strict";function r(t){return!!/^(?:(?:https?|ftp):\/\/)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/\S*)?$/.test(t)}n.d(e,{C:function(){return r}})},9586:function(t,e,n){"use strict";n.d(e,{w:function(){return o}});var r=n(7932);function o(t,e){for(var n=[],o=t.parentElement;null!==o;)o.nodeType===Node.ELEMENT_NODE&&(0,r.D)(o,e)&&n.push(o),o=o.parentElement;return n}},4902:function(t,e,n){"use strict";n.d(e,{X:function(){return a}});var r=n(7663),o=n(5213),i=n(7029).h,a=function(t){var e=t.ms,n=void 0===e?100:e,a=t.chars,c=void 0===a?["◷","◶","◵","◴"]:a,s=(0,o.eJ)(1),u=(0,r.Z)(s,2),l=u[0],d=u[1];return(0,o.d4)((function(){var t=setInterval((function(){d(l+1)}),n);return function(){return clearInterval(t)}}),[l]),i("span",{dangerouslySetInnerHTML:{__html:c[l%4]}})}},229:function(t,e,n){"use strict";n.d(e,{V:function(){return k}});var r=n(4741),o=n(7663),i=n(5213),a=n(8982),c=n(7585),s=n(2260),u=n(3282),l=n(2711),d=n(3137),f=n(2121),p=n(2087),h=n(7029).h,v=function(t){var e=t.label,n=t.value,o=t.children,i=t.printValueAs,c=(0,a.w)(),s=c.i18n,u=s.yes,v=s.no,b="string"==typeof n&&(0,d.C)(n)?h("a",{href:n,style:(0,l.Z)({wordBreak:"break-all"},(0,f.c)(c,!1).style),target:"_blank",rel:"noopener noreferrer"},n):"string"==typeof n?h("span",{dangerouslySetInnerHTML:{__html:n}}):n;return"boolean"===i&&(b=b?u:v),h("div",(0,r.Z)({key:e},function(t){var e=t.group,n=e.groupBorderWidth,r=e.groupBorderColor,o=t.customCss.antiAdBlocker,i=t.mobile,a=t.pageRequestUuid4;return{className:"y"===o?void 0:"rcb-cookie-prop",style:{borderLeft:(a?(0,p.D)(i,a,n):n)>0?"1px solid ".concat(r):void 0,paddingLeft:15}}}(c)),e&&h("strong",null,e,": "),b,!!o&&h("div",null,o))},b=n(2891),m=n(7029).h,g=function(t){var e=t.cookie,n=e.purpose,r=e.provider,o=e.providerPrivacyPolicy,c=e.legalBasis,s=e.ePrivacyUSA,u=e.noTechnicalDefinitions,l=e.technicalDefinitions,d=e.codeDynamics,f=t.isEssentialGroup,p=(0,a.w)(),h=p.i18n,g=p.ePrivacyUSA,y={http:{name:"HTTP Cookie",abbr:"HTTP",backgroundColor:"black"},local:{name:"Local Storage",abbr:"Local",backgroundColor:"#b3983c"},session:{name:"Session Storage",abbr:"Session",backgroundColor:"#3c99b3"},flash:{name:"Flash Local Shared Object",abbr:"Flash",backgroundColor:"#b33c3c"},indexedDb:{name:"IndexedDB",abbr:"I-DB",backgroundColor:"#4ab33c"}};return m(i.HY,null,!!n&&m(v,{label:h.purpose,value:n}),m(v,{label:h.legalBasis,value:"legal-requirement"===c?h.legalRequirement:"legitimate-interest"===c||f?h.legitimateInterest:h.consent}),m(v,{label:h.provider,value:r}),!!o&&m(v,{label:h.providerPrivacyPolicy,value:o}),!!g&&m(v,{label:h.ePrivacyUSA,value:s,printValueAs:"boolean"}),!u&&l.map((function(t){var e=t.type,n=t.name,r=t.host,o=t.duration,i=t.durationUnit,a=t.sessionDuration,c=t.purpose;return m(v,{key:n,label:h.technicalCookieDefinition,value:m("span",{style:{fontFamily:"monospace"}},(0,b.c)(n,d))},m(v,{label:h.type,value:y[e].name}),!!c&&m(v,{label:h.purpose,value:c}),!!r&&m(v,{label:h.host,value:m("span",{style:{fontFamily:"monospace"}},r)}),m(v,{label:h.duration,value:["local","indexedDb","flash"].indexOf(e)>-1?h.noExpiration:a||"session"===e?"Session":"".concat(o," ").concat(h.durationUnit[i])}))})))},y=n(7029).h,k=function(t){var e=t.cookie,n=t.checked,l=t.disabled,d=t.onToggleCheck,f=t.propertyListProps,p=void 0===f?{}:f,h=e.name,v=(0,i.eJ)(!1),b=(0,o.Z)(v,2),m=b[0],k=b[1],x=(0,a.w)(),w=x.group.descriptionFontSize;return(0,i.bt)((function(){k(!0)}),[]),y("div",function(t){return{className:"y"===t.customCss.antiAdBlocker?void 0:"rcb-cookie",style:{marginTop:10}}}(x),y("div",{style:{marginBottom:10}},y(s.p,(0,r.Z)({icon:u.Z,onClick:d},(0,c.z)(x,m,n,l,w))),y("strong",{style:{verticalAlign:"middle"},onClick:d},h)),y(g,(0,r.Z)({cookie:e},p)))}},2260:function(t,e,n){"use strict";n.d(e,{p:function(){return s}});var r=n(4741),o=n(4115),i=n(5213),a=n(1680),c=n(7029).h,s=function(t){var e=t.icon,n=(0,o.Z)(t,["icon"]),s=(0,i.Ye)((function(){return(0,a.x)(e,{extraSVGAttrs:{style:"width:auto;height:100%;",fill:"currentColor"}})}),[e]);return c("div",(0,r.Z)({},n,{dangerouslySetInnerHTML:{__html:s}}))}},8523:function(t,e,n){"use strict";n.d(e,{u:function(){return u}});var r=n(4741),o=n(4115),i=n(5213),a=n(3428),c=n(9707),s=n(7029).h,u=(0,i.Gp)((function(t,e){var n=t.children,i=t.className,u=t.title,l=t.position,d=void 0===l?"top":l,f=t.color,p=t.size,h=void 0===p?"large":p,v=t.always,b=t.rounded,m=t.noAnimate,g=t.bounce,y=(0,o.Z)(t,["children","className","title","position","color","size","always","rounded","noAnimate","bounce"]);return(0,c.G)(a,"hint-css",!0),s("div",(0,r.Z)({style:{position:"relative",display:"inline"},ref:e,"aria-label":u,className:"hint--".concat(d," hint--").concat(h," ").concat(f?"hint--".concat(f):""," ").concat(v?"hint--always":""," ").concat(b?"hint--rounded":""," ").concat(m?"hint--no-animate":""," ").concat(g?"hint--bounce":""," ").concat(i||"")},y),n)}))},4766:function(t,e,n){"use strict";n.d(e,{k:function(){return a},S:function(){return c}});var r=n(6762),o=n(3340),i=n(5213),a=function(){function t(){(0,r.Z)(this,t)}return(0,o.Z)(t,null,[{key:"Context",value:function(t){function e(){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(){return this.context=this.context||(0,i.kr)({})}))}]),t}();function c(){return(0,i.qp)(a.Context())}a.context=void 0},1347:function(t,e,n){"use strict";n.d(e,{Z:function(){return a},_:function(){return c}});var r=n(6762),o=n(3340),i=n(5213),a=function(){function t(){(0,r.Z)(this,t)}return(0,o.Z)(t,null,[{key:"Context",value:function(t){function e(){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(){return this.context=this.context||(0,i.kr)({})}))}]),t}();function c(){return(0,i.qp)(a.Context())}a.context=void 0},6092:function(t,e,n){"use strict";n.d(e,{g:function(){return y}});var r=n(4741),o=n(965),i=n(5213),a=n(8982),c=n(3258),s=n(7663),u=n(4115),l=n(2087),d=n(7029).h,f=function(t){var e=t.children,n=(0,u.Z)(t,["children"]),o=(0,a.w)(),c=(0,i.eJ)(!1),f=(0,s.Z)(c,2),p=f[0],h=f[1];return d("a",(0,r.Z)({onMouseEnter:function(){return h(!0)},onMouseLeave:function(){return h(!1)}},function(t){var e=t.footerDesign,n=e.fontSize,r=e.fontColor,o=e.hoverFontColor,i=e.fontInheritFamily,a=e.fontFamily,c=t.design.linkTextDecoration,s=t.customCss.antiAdBlocker,u=t.mobile,d=t.pageRequestUuid4,f=arguments.length>1&&void 0!==arguments[1]&&arguments[1],p={textDecoration:c,fontSize:d?(0,l.D)(u,d,+n):+n,color:f?o:r,fontFamily:i?void 0:a,padding:"0 5px"};return{className:"y"===s?void 0:"rcb-footer-link",style:p}}(o,p),n),e)},p=n(8523),h=n(7029).h,v=function(t){var e=t.poweredLink,n=t.affiliate;return h(f,{href:n?n.link:e.href,target:e.target,key:"powered-by"},h("span",{dangerouslySetInnerHTML:{__html:e.innerHTML}}),n&&h(p.u,{title:n.description,position:"top-left"}," ",n.labelBehind))},b=n(7029).h;function m(t,e){var n=t.filter(Boolean);return 0===n.length?null:n.reduce((function(t,n,r){return t.length?[].concat((0,o.Z)(t),[b(i.HY,{key:r},e),n]):[n]}),[])}var g=n(7029).h;function y(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.onClose,n=t.putPoweredByLinkInRow,s=t.row1,u=(0,a.w)(),l=u.i18n.close,d=u.footerDesign,p=d.poweredByLink,h=d.linkTarget,b=u.poweredLink,y=u.affiliate,k=(0,c.p)(),x=k.linkPrivacyPolicy,w=k.linkImprint,C="_blank"===h?{target:"_blank",rel:"noopener"}:{},S=[[e&&g(f,{href:"#",onClick:e,key:"close"},g("strong",null,l))].concat((0,o.Z)(s||[]),[x&&g(f,(0,r.Z)({href:x.url},C,{key:"privacyPolicy"}),x.label),w&&g(f,(0,r.Z)({href:w.url},C,{key:"imprint"}),w.label)]).filter(Boolean),[]];b&&p&&S[n||0].push(g(v,{key:"poweredBy",poweredLink:b,affiliate:y}));var O=(0,i.I4)((function(t){return m(t.map((function(t){return t.length?g(i.HY,{key:t[0].key},m(t,g(i.HY,null," • "))):null})),g("br",null))}),[]);return{rows:S,render:O}}},6268:function(t,e,n){"use strict";n.d(e,{k:function(){return c}});var r=n(8982),o=n(3258);function i(t,e){return t.length>1&&t.splice(t.length-1,0,"{{andSeparator}}"),t.join(", ").replace(/,\s+{{andSeparator}},\s+/g,e)}var a='<sup style="vertical-align:top;line-height:100%;position:initial;">';function c(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.disableDataProcessingInUnsafeCountries,n=t.disableAgeNotice,c=t.disableListServicesNotice,s=(0,r.w)(),u=s.blocker,l=s.groups,d=s.ePrivacyUSA,f=s.ageNotice,p=s.listServicesNotice,h=s.texts,v=h.description,b=h.ePrivacyUSA,m=h.ageNoticeBanner,g=h.listServicesNotice,y=h.consentForwardingExternalHosts,k=s.tcf,x=s.consentForwardingExternalHosts,w=s.individualPrivacyOpen,C=s.individualTexts.description,S=s.essentialGroup,O=s.i18n,A=O.andSeparator,D=O.tcf,E=s.keepVariablesInTexts,Z=(0,o.p)(),I=Z.linkPrivacyPolicy,B="";x&&!E&&(B=y.replace(/{{websites}}/g,x.join(", ")));var T=[u?u.description:w?C:v,B].filter(Boolean).join(" ");E||(T=T.replace(/{{privacyPolicy}}(.*){{\/privacyPolicy}}/g,I?'<a href="'.concat(I.url,'" style="text-decoration:underline;color:inherit;" onmouseenter="this.style.textDecoration=\'none\'" onmouseleave="this.style.textDecoration=\'underline\'" target="_blank">$1</a>'):"$1"));var N=!e&&d?b:"",P=f&&!n?m:"",R="";if(p&&!c){var z=g.indexOf("{{services}}")>-1&&g.indexOf("{{serviceGroups}}")>-1,L=l.filter((function(t){return t.slug!==S})),W="~;~",H=i(L.map((function(t,e){return t.items.map((function(t){var n=t.name,r=t.ePrivacyUSA;return"".concat(n).concat(a).concat([z?e+1:"",N&&r?"U":""].filter(Boolean).join(","),"</sup>")})).join(W)})).join(W).split(W),A);if(H){var _=i(L.map((function(t,e){var n=t.name;return"".concat(n).concat(a).concat(z?e+1:"","</sup>")})),A);R="<span>".concat(g,"</span>").concat(k&&!w?"<span>".concat(D.listOfServicesAppendix,"</span>"):""),E||(R=R.replace(/{{services}}/g,H).replace(/{{serviceGroups}}/g,_)),N&&(N+="".concat(a,"U</sup>"))}}return{description:T,teachings:[N,P,R].filter(Boolean)}}},8982:function(t,e,n){"use strict";n.d(e,{w:function(){return i}});var r=n(4766),o=n(1347);function i(){var t=(0,r.S)(),e=(0,o._)();return t.groups?t:e}},3258:function(t,e,n){"use strict";n.d(e,{p:function(){return o}});var r=n(8982);function o(){var t=(0,r.w)(),e=t.legal,n=e.privacyPolicy,o=e.privacyPolicyExternalUrl,i=e.privacyPolicyIsExternalUrl,a=e.privacyPolicyLabel,c=e.imprint,s=e.imprintExternalUrl,u=e.imprintIsExternalUrl,l=e.imprintLabel,d=t.pageByIdUrl,f=(0,r.w)().pageIdToPermalink||{},p=n>0?f[n]||"".concat(d,"=").concat(n):void 0,h=c>0?f[c]||"".concat(d,"=").concat(c):void 0;return i&&(p=o),u&&(h=s),{linkPrivacyPolicy:!(!a||!p)&&{url:p,label:a},linkImprint:!(!l||!h)&&{url:h,label:l}}}},9707:function(t,e,n){"use strict";n.d(e,{G:function(){return i}});var r=n(5213),o=0;function i(t,e,n){var i=(0,r.Ye)((function(){return"react-use-plain-css-".concat(e||(o++).toString(36))}),[]);return(0,r.bt)((function(){var e=document.getElementById(i);return e||((e=document.createElement("style")).style.type="text/css",e.id=i,document.getElementsByTagName("head")[0].appendChild(e)),e.innerHTML=t,function(){var t;n||null===(t=e.parentNode)||void 0===t||t.removeChild(e)}}),[t,n]),i}},7613:function(t,e,n){"use strict";n.d(e,{W:function(){return o}});var r=n(2087);function o(t){var e=t.bodyDesign,n=e.teachingsInheritTextAlign,o=e.teachingsTextAlign,i=e.teachingsInheritFontSize,a=e.teachingsFontSize,c=e.teachingsInheritFontColor,s=e.teachingsFontColor,u=t.customCss.antiAdBlocker,l=t.mobile,d=t.pageRequestUuid4;return{className:"y"===u?void 0:"rcb-teachings",style:{marginTop:7,display:"inline-block",textAlign:n?void 0:o,fontSize:i?void 0:d?(0,r.D)(l,d,+a):+a,color:c?void 0:s}}}},8346:function(t,e,n){"use strict";function r(t){var e=t.layout.borderRadius,n=t.bodyDesign,r=n.teachingsSeparatorActive,o=n.teachingsSeparatorWidth,i=n.teachingsSeparatorHeight,a=n.teachingsSeparatorColor;return{className:"y"===t.customCss.antiAdBlocker?void 0:"rcb-teachings-separator",style:{marginTop:7,display:"inline-block",maxWidth:"100%",borderRadius:+e,width:+o,height:r?+i:0,background:a}}}n.d(e,{V:function(){return r}})},7585:function(t,e,n){"use strict";n.d(e,{z:function(){return o}});var r=n(2087);function o(t,e,n,o,i){var a=t.layout.borderRadius,c=t.group,s=c.headlineFontSize,u=c.checkboxBg,l=c.checkboxBorderWidth,d=c.checkboxBorderColor,f=c.checkboxActiveBg,p=c.checkboxActiveBorderColor,h=c.checkboxActiveColor,v=t.customCss.antiAdBlocker,b=t.mobile,m=t.pageRequestUuid4,g=i||s;g=m?(0,r.D)(b,m,g):g;var y=m?(0,r.D)(b,m,+l):+l,k=+g+2*y+6;return{className:"y"===v?void 0:"rcb-checkbox",style:{cursor:o?"not-allowed":"pointer",opacity:o?.5:void 0,color:n?h:u,display:e?"inline-block":"none",background:n?f:u,border:"".concat(y,"px solid ").concat(n?p:d),padding:3,height:k,width:k,marginRight:10,borderRadius:+a,verticalAlign:"middle",lineHeight:0,boxSizing:"border-box"}}}},2121:function(t,e,n){"use strict";function r(t,e){var n=t.design.linkTextDecoration,r=t.group,o=r.linkColor,i=r.linkHoverColor;return{className:"y"===t.customCss.antiAdBlocker?void 0:"rcb-group-more",style:{color:e?i:o,textDecoration:n}}}n.d(e,{c:function(){return r}})},6730:function(t,e,n){"use strict";n.d(e,{a:function(){return o}});var r=n(2087);function o(t,e){var n=t.headerDesign,o=n.fontSize,i=n.fontColor,a=n.fontInheritFamily,c=n.fontFamily,s=n.fontWeight,u=t.customCss.antiAdBlocker,l=t.mobile,d=t.pageRequestUuid4;return{className:"y"===u?void 0:"rcb-headline",style:{color:i,lineHeight:1.8,fontSize:d?(0,r.D)(l,d,+o):+o,fontFamily:a?void 0:c,fontWeight:s,paddingRight:e?20:void 0}}}},2087:function(t,e,n){"use strict";function r(t,e,n,r){return t.enabled,t.scalePercent,t.scalePercentVertical,n}n.d(e,{D:function(){return r}})},5672:function(t,e,n){"use strict";n.d(e,{U:function(){return o}});var r=n(7932);function o(t){var e=document.getElementById(t).nextElementSibling,n=document.createElement("div");return window.rcbPoweredByCacheOuterHTML?n.innerHTML=window.rcbPoweredByCacheOuterHTML:(0,r.D)(e,"a")&&e.innerHTML.toLowerCase().indexOf("Real Cookie Banner")&&(window.rcbPoweredByCacheOuterHTML=e.outerHTML,n.innerHTML=window.rcbPoweredByCacheOuterHTML,e.parentNode.removeChild(e)),n.children[0]}window.rcbPoweredByCacheOuterHTML=""},7932:function(t,e,n){"use strict";function r(t,e){var n="undefined"!=typeof Element?Element.prototype:{},r=n.matches||n.matchesSelector||n.webkitMatchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector;if(!t||1!==t.nodeType||!t.parentElement)return!1;if(r)return r.call(t,e);var o=t.parentElement.querySelectorAll(e);for(var i in o)if(o[i]===t)return!0;return!1}n.d(e,{D:function(){return r}})},3075:function(t,e,n){"use strict";n.d(e,{D:function(){return D}});var r=n(2711),o=n(7938),i=n(5450),a=n.n(i),c=n(4742),s=n.n(c),u=n(4312),l=n(6811),d=n(5566),f=n.n(d);function p(t){for(var e=t.location,n=t.params,r=void 0===n?{}:n,o=t.nonce,i=void 0===o||o,a=t.options,c=new(s())(a.restRoot,!0),d=c.query,p=d.rest_route||c.pathname,h=[],v=e.path.replace(/:([A-Za-z0-9-_]+)/g,(function(t,e){return h.push(e),r[e]})),b={},m=0,g=Object.keys(r);m<g.length;m++){var y=g[m];-1===h.indexOf(y)&&(b[y]=r[y])}var k=(0,u.Ab)(p)+(0,u.XO)(e.namespace||a.restNamespace)+v,x=new(s())(window.location.href).protocol.slice(0,-1);c.set("protocol",x),d.rest_route?d.rest_route=k:c.set("pathname",k),i&&a.restNonce&&(d._wpnonce=a.restNonce);var w=c.toString();return["wp-json/","rest_route="].filter((function(t){return w.indexOf(t)>-1})).length>0&&e.method&&e.method!==l.O.GET&&(d._method=e.method),c.set("query",f().all([a.restQuery,b,d])).toString()}var h=n(55).default,v=n(9448).default,b={},m={};function g(t,e){return y.apply(this,arguments)}function y(){return y=(0,o.Z)(a().mark((function t(e,n){var r,i;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(void 0===n){t.next=6;break}return r=m[e]||new h(function(){var t=(0,o.Z)(a().mark((function t(r,o){var i,c;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,v(n);case 3:if(!(i=t.sent).ok){t.next=11;break}return t.next=7,i.text();case 7:c=t.sent,e===c?o():(b[e]=c,r(c)),t.next=12;break;case 11:o();case 12:t.next=17;break;case 14:t.prev=14,t.t0=t.catch(0),o();case 17:case"end":return t.stop()}}),t,null,[[0,14]])})));return function(e,n){return t.apply(this,arguments)}}()),m[e]=r,t.abrupt("return",r);case 6:if(void 0!==e){t.next=8;break}return t.abrupt("return",void 0);case 8:return t.next=10,h.all(Object.values(m));case 10:i=e;case 11:if(!b[i]){t.next=17;break}if(i=b[i],b[i]!==e){t.next=15;break}return t.abrupt("break",17);case 15:t.next=11;break;case 17:return t.abrupt("return",h.resolve(i));case 18:case"end":return t.stop()}}),t)}))),y.apply(this,arguments)}var k=n(38);function x(t,e,n){return w.apply(this,arguments)}function w(){return(w=(0,o.Z)(a().mark((function t(e,n,r){var o,i,c,s,u,d;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o=n.clone(),t.prev=1,t.next=4,n.json();case 4:return t.abrupt("return",t.sent);case 7:return t.prev=7,t.t0=t.catch(1),t.next=11,o.text();case 11:if(!(""===(i=t.sent)&&[l.O.DELETE,l.O.PUT].indexOf(r)>-1)){t.next=14;break}return t.abrupt("return",void 0);case 14:console.warn("The response of ".concat(e," contains unexpected JSON, try to resolve the JSON line by line..."),{body:i}),s=(0,k.Z)(i.split("\n")),t.prev=16,s.s();case 18:if((u=s.n()).done){t.next=30;break}if(!(d=u.value).startsWith("[")&&!d.startsWith("{")){t.next=28;break}return t.prev=21,t.abrupt("return",JSON.parse(d));case 25:t.prev=25,t.t1=t.catch(21),c=t.t1;case 28:t.next=18;break;case 30:t.next=35;break;case 32:t.prev=32,t.t2=t.catch(16),s.e(t.t2);case 35:return t.prev=35,s.f(),t.finish(35);case 38:throw c;case 39:case"end":return t.stop()}}),t,null,[[1,7],[16,32,35,38],[21,25]])})))).apply(this,arguments)}var C=n(2680),S=n.n(C),O=n(9448).default,A="application/json;charset=utf-8";function D(t){return E.apply(this,arguments)}function E(){return(E=(0,o.Z)(a().mark((function t(e){var n,o,i,c,u,d,h,v,b,m,y,k,w,C,E,Z,I,B,T,N,P,R,z;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.location,o=e.options,i=e.request,c=e.params,u=e.settings,d=void 0===u?{}:u,h=e.multipart,v=void 0!==h&&h,b=e.sendRestNonce,m=void 0===b||b,y=p({location:n,params:c,nonce:!1,options:o}),["wp-json/","rest_route="].filter((function(t){return y.indexOf(t)>-1})).length>0&&n.method&&n.method!==l.O.GET?d.method=l.O.POST:d.method=n.method||l.O.GET,k=new(s())(y,!0),!(w=-1===["HEAD","GET"].indexOf(d.method))&&i&&k.set("query",f()(k.query,i)),w&&(C=v?S()(i,"boolean"==typeof v?{}:v):JSON.stringify(i)),t.next=9,g(o.restNonce);case 9:return E=t.sent,Z=void 0!==E,(I=f().all([d,{headers:(0,r.Z)((0,r.Z)((0,r.Z)({},"string"==typeof C?{"Content-Type":A}:{}),Z&&m?{"X-WP-Nonce":E}:{}),{},{Accept:"application/json, */*;q=0.1"})}])).body=C,B=k.toString(),t.next=16,O(B,I);case 16:if((T=t.sent).ok){t.next=47;break}return N=void 0,P=!1,t.prev=20,t.next=23,x(B,T,n.method);case 23:if("private_site"===(N=t.sent).code&&403===T.status&&Z&&!m&&(P=!0),"rest_cookie_invalid_nonce"!==N.code||!Z){t.next=35;break}return R=o.restRecreateNonceEndpoint,t.prev=27,t.next=30,g(E,R);case 30:P=!0,t.next=35;break;case 33:t.prev=33,t.t0=t.catch(27);case 35:t.next=39;break;case 37:t.prev=37,t.t1=t.catch(20);case 39:if(!P){t.next=43;break}return t.next=42,D({location:n,options:o,multipart:v,params:c,request:i,sendRestNonce:!0,settings:d});case 42:return t.abrupt("return",t.sent);case 43:throw d.method===l.O.GET&&(window.detectCorruptRestApiFailed=(window.detectCorruptRestApiFailed||0)+1),(z=T).responseJSON=N,z;case 47:return t.abrupt("return",x(B,T,n.method));case 48:case"end":return t.stop()}}),t,null,[[20,37],[27,33]])})))).apply(this,arguments)}},6811:function(t,e,n){"use strict";var r;n.d(e,{O:function(){return r}}),function(t){t.GET="GET",t.POST="POST",t.PUT="PUT",t.DELETE="DELETE",t.PATCH="PATCH"}(r||(r={}))},4312:function(t,e,n){"use strict";n.d(e,{XO:function(){return r},Ab:function(){return o},sE:function(){return i}});var r=function t(e){return e.endsWith("/")||e.endsWith("\\")?t(e.slice(0,-1)):e},o=function(t){return"".concat(r(t),"/")},i=function(t){var e=window[t.slug.replace(/-([a-z])/g,(function(t){return t[1].toUpperCase()}))];return"".concat(e.publicUrl).concat(e.chunkFolder,"/")}},9302:function(t,e,n){"use strict";n.d(e,{h:function(){return u}});var r=n(38),o=n(3438),i=n(4548),a=n(3102),c=n(1829),s=n(55).default;function u(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document.createElement("div");return new s((function(n){var s,u,l=(0,o.u)().blocker,d=!e.parentElement,f=(0,r.Z)(l);try{t:for(f.s();!(u=f.n()).done;){var p,h=u.value,v=h.hosts,b=(0,r.Z)(v);try{for(b.s();!(p=b.n()).done;){var m=p.value,g=(0,c.L)(m);if(t.match(g)){s=h;break t}}}catch(t){b.e(t)}finally{b.f()}}}catch(t){f.e(t)}finally{f.f()}s?(e.setAttribute(i.d3,"cookies"),e.setAttribute(i._W,s.cookies.join(",")),e.setAttribute(i.CT,s.id.toString()),e.addEventListener(a.T,(function(){d&&e.remove(),n()})),d&&document.body.appendChild(e)):n()}))}},6946:function(t,e,n){"use strict";n.r(e),n.d(e,{consent:function(){return we},consentAll:function(){return Se},consentSync:function(){return ke},unblock:function(){return me.h}});var r={};n.r(r),n.d(r,{consent:function(){return we},consentAll:function(){return Se},consentSync:function(){return ke},unblock:function(){return me.h}});var o=n(7938),i=n(5450),a=n.n(i),c=n(5213),s=n(2711),u=n(7663),l=n(3438),d=n(625),f=n(6886),p=n(965),h=n(38),v=n(8218),b=n(9382),m=n(7766),g=n(6028);function y(){return(y=(0,o.Z)(a().mark((function t(e,n){var r,o,i,c,u,l,d,f,y,k;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=!0,o=e instanceof v.G?e.getOptions():e,i=n.gateways,c=n.args,u=n.onIsDoNotTrack,l=n.onShowCookieBanner,d=(0,h.Z)(i),t.prev=4,d.s();case 6:if((f=d.n()).done){t.next=17;break}return y=f.value,t.next=10,y.apply(void 0,[o].concat((0,p.Z)(c)));case 10:if(!1===(k=t.sent)){t.next=15;break}if("break"!==function(){r=!1;var t=function(t){return(0,b.n)((0,s.Z)({type:t},o))};return"all"===k?t("all"):"essentials"===k?t("essentials"):"dnt"===k?u((function(){return t("essentials")})):"consent"===k&&t("consent"),"break"}()){t.next=15;break}return t.abrupt("break",17);case 15:t.next=6;break;case 17:t.next=22;break;case 19:t.prev=19,t.t0=t.catch(4),d.e(t.t0);case 22:return t.prev=22,d.f(),t.finish(22);case 25:if(!r){t.next=30;break}return l(),t.next=29,(0,g.C)();case 29:document.dispatchEvent(new CustomEvent(m.I,{detail:{}}));case 30:case"end":return t.stop()}}),t,null,[[4,19,22,25]])})))).apply(this,arguments)}var k=n(4001),x=function(){var t=(0,o.Z)(a().mark((function t(e){var n;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.supportsCookiesName,t.abrupt("return",!(0,k.E)(n)&&"essentials");case 2:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),w=n(5245),C=n(4717),S=n.n(C);function O(){var t=navigator.userAgent;return!!t&&!/chrome-lighthouse/i.test(t)&&S()(t)}var A=n(55).default;function D(t,e){return new A((function(n,r){t.then(n,r);var o=new Error("Timed out");setTimeout(r,e,o)}))}var E=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e4,n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return function(){var r=(0,o.Z)(a().mark((function r(o){var i,c,s,u,l,d;return a().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(i=o.decisionCookieName,c=o.revisionHash,!O()&&n){r.next=3;break}return r.abrupt("return",!1);case 3:if(!(s=(0,w.h)(i))){r.next=8;break}if(u=s.revision,c!==u){r.next=8;break}return r.abrupt("return","consent");case 8:return r.prev=8,r.next=11,D(t(),e);case 11:return l=r.sent,d=l.predecision,r.abrupt("return",d);case 16:return r.prev=16,r.t0=r.catch(8),r.abrupt("return",!1);case 19:case"end":return r.stop()}}),r,null,[[8,16]])})));return function(t){return r.apply(this,arguments)}}()};function Z(){try{var t=window;if((t.doNotTrack||t.navigator.doNotTrack||t.navigator.msDoNotTrack||"msTrackingProtectionEnabled"in t.external)&&("1"==t.doNotTrack||"yes"==t.navigator.doNotTrack||"1"==t.navigator.doNotTrack||"1"==t.navigator.msDoNotTrack||t.external.msTrackingProtectionEnabled()))return!0}catch(t){}return!1}var I=function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return function(){var e=(0,o.Z)(a().mark((function e(n){var r,o,i,c,s,l,d,f,p,v,b;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=n.decisionCookieName,o=n.groups,i=n.essentialGroupSlug,c=o.filter((function(t){return t.slug===i})),s=(0,u.Z)(c,1),l=s[0],!1===(0,w.h)(r)&&t){e.next=4;break}return e.abrupt("return",!1);case 4:d=(0,h.Z)(o),e.prev=5,d.s();case 7:if((f=d.n()).done){e.next=29;break}if((p=f.value)===l){e.next=27;break}v=(0,h.Z)(p.items),e.prev=11,v.s();case 13:if((b=v.n()).done){e.next=19;break}if("legitimate-interest"!==b.value.legalBasis){e.next=17;break}return e.abrupt("return",!1);case 17:e.next=13;break;case 19:e.next=24;break;case 21:e.prev=21,e.t0=e.catch(11),v.e(e.t0);case 24:return e.prev=24,v.f(),e.finish(24);case 27:e.next=7;break;case 29:e.next=34;break;case 31:e.prev=31,e.t1=e.catch(5),d.e(e.t1);case 34:return e.prev=34,d.f(),e.finish(34);case 37:return e.abrupt("return",!!Z()&&"dnt");case 38:case"end":return e.stop()}}),e,null,[[5,31,34,37],[11,21,24,27]])})));return function(t){return e.apply(this,arguments)}}()},B=function(){var t=(0,o.Z)(a().mark((function t(e){var n,r,o,i;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.decisionCookieName,r=e.revisionHash,!1!==(o=(0,w.h)(n))){t.next=4;break}return t.abrupt("return",!1);case 4:return i=o.revision,t.abrupt("return",r===i&&"consent");case 6:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),T=n(3075),N=n(6811),P={path:"/consent/dynamic-predecision",method:N.O.GET};function R(t){var e=t.legal,n=e.imprint,r=e.imprintHide,o=e.privacyPolicy,i=e.privacyPolicyHide,a=t.pageId;return[r&&+n,i&&+o].filter(Boolean).indexOf(a)>-1}var z=n(6423),L=n(7563);function W(){var t=(0,c.Ye)((function(){return window.innerWidth}),[])<700,e=(0,c.Ye)((function(){var t=window.navigator.userAgent.toLowerCase();return 4===["firefox","gecko","mobile","android"].map((function(e){return t.indexOf(e)>-1})).filter(Boolean).length}),[]);return(0,c.I4)((function(n){var r=n.animationIn,o=n.animationInOnlyMobile,i=n.animationOut,a=n.animationOutOnlyMobile,c=o?t?r:"none":r,s=a?t?i:"none":i;return e&&(c="none",s="none"),{useAnimationIn:c,useAnimationOut:s}}),[])}var H=function(t){t&&(t.preventDefault(),t.stopPropagation())},_=n(4766),Y=n(4741),U=n(3743),F=n(9707),M=n(9586),j=n(7932),G='[href^="#consent-"]',q=n(2087);function X(t,e){var n=(0,c.eJ)(0),r=(0,u.Z)(n,2),o=r[0],i=r[1],a=(0,c.eJ)(0),s=(0,u.Z)(a,2),l=s[0],d=s[1],f=(0,c.eJ)(t),p=(0,u.Z)(f,2),h=p[0],v=p[1],b=(0,c.eJ)(void 0),m=(0,u.Z)(b,2),g=m[0],y=m[1],k=(0,c.eJ)(e),x=(0,u.Z)(k,2),w=x[0],C=x[1],S=(0,c.eJ)(void 0),O=(0,u.Z)(S,2),A=O[0],D=O[1];return(0,c.d4)((function(){o>0&&("none"===t?v(t):(v("none"),y(t))),i(o+1)}),[t]),(0,c.d4)((function(){l>0&&(0===e?C(e):(C(0),D(e),v("none"),y(t))),d(l+1)}),[e]),(0,c.d4)((function(){void 0!==g&&(v(g),y(void 0))}),[g]),(0,c.d4)((function(){void 0!==A&&(C(A),D(void 0))}),[A]),[h,w]}var V=n(63);function J(t){var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:null}function $(t,e){var n=J(t),r=n.r,o=n.g,i=n.b;return"rgba(".concat(r,", ").concat(o,", ").concat(i,", ").concat(e/100,")")}var Q=n(7029).h;function K(t){var e=t.isVisible,n=t.animationIn,r=t.animationOut,o=t.animationInDuration,i=t.animationOutDuration,a=t.animationInDelay,c=t.animationOutDelay;return e?{animation:n,duration:o,delay:a}:{animation:r,duration:i,delay:c}}var tt=function(t){var e=t.animateOnMount,n=void 0===e||e,r=t.isVisible,o=void 0===r||r,i=t.animationIn,a=void 0===i?"fadeIn":i,l=t.animationOut,d=void 0===l?"fadeOut":l,f=t.animationInDelay,p=void 0===f?0:f,h=t.animationOutDelay,v=void 0===h?0:h,b=t.animationInDuration,m=void 0===b?1e3:b,g=t.animationOutDuration,y=void 0===g?1e3:g,k=t.className,x=void 0===k?"":k,w=t.style,C=void 0===w?{}:w,S=t.children,O=(0,c.eJ)(n?K({isVisible:o,animationIn:a,animationOut:d,animationInDelay:p,animationOutDelay:v,animationInDuration:m,animationOutDuration:y}):{animation:"",delay:void 0,duration:0}),A=(0,u.Z)(O,2),D=A[0],E=D.animation,Z=D.duration,I=D.delay,B=A[1];(0,c.d4)((function(){B(K({isVisible:o,animationIn:a,animationOut:d,animationInDelay:p,animationOutDelay:v,animationInDuration:m,animationOutDuration:y}))}),[o,a,d,p,v,m,y]);var T="animate__animated animate__".concat(E," ").concat(x),N=E?{}:{opacity:o?1:0,transition:"opacity ".concat(I,"ms")};return Q("div",{className:T,style:(0,s.Z)((0,s.Z)({animationDelay:"".concat(I,"ms"),animationDuration:"".concat(Z,"ms"),pointerEvents:o?"all":"none"},C),N)},S)};function et(t,e){var n=(0,_.S)().pageRequestUuid4,r=(0,F.G)("","useRenderedHeightsAsCssVars-".concat(e)),o=document.getElementById(r);(0,c.d4)((function(){var r=0,i=function(){var i=t.getBoundingClientRect().height;r!==i&&(r=i,o.innerHTML="#".concat(n,"{--rendered-height-").concat(e,": ").concat(Math.floor(i),"px;--rendered-height-raw-").concat(e,": ").concat(i,"px}"))};if(!t)return function(){};var a=document.querySelector("#".concat(n,' div[class*="animate__"]'));if(a.addEventListener("animationend",i),window.ResizeObserver){var c=new ResizeObserver(i);return c.observe(t),function(){c.disconnect(),a.removeEventListener("animationend",i)}}var s=setInterval(i,150);return function(){clearInterval(s),a.removeEventListener("animationend",i)}}),[t,e])}var nt=n(4115),rt=n(6730);function ot(){var t=(0,_.S)(),e=t.individualPrivacyOpen,n=t.onSave,r=t.updateGroupChecked,o=t.updateCookieChecked,i=t.groups,a=t.essentialGroup,u=t.updateIndividualPrivacyOpen,l=t.activeAction,d=t.onClose,f=e?"ind_all":"main_all",p=e?"ind_essential":"main_essential",v=e?"ind_close_icon":"main_close_icon",b=e?"ind_custom":"main_custom",m={buttonClickedAll:f,buttonClickedEssentials:p,buttonClickedCloseIcon:v,buttonClickedCustom:b,acceptAll:(0,c.I4)((function(){i.forEach((function(t){return r(t.id,!0)})),n(!1,f)}),[f]),acceptEssentials:(0,c.I4)((function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];i.forEach((function(t){var e=t.slug,n=t.id,i=t.items;if(e===a)r(n,!0);else{var c,s=(0,h.Z)(i);try{for(s.s();!(c=s.n()).done;){var u=c.value,l=u.legalBasis,d=u.id;o(n,d,"legitimate-interest"===l)}}catch(t){s.e(t)}finally{s.f()}}})),n(!1,t?v:p)}),[p]),acceptIndividual:(0,c.I4)((function(){return n(!1,b)}),[b]),openIndividualPrivacy:(0,c.I4)((function(){u(!0)}),[u])};return(0,s.Z)((0,s.Z)({},m),{},{closeIcon:(0,c.I4)((function(){l?d():m.acceptEssentials(!0)}),[l,d,m.acceptEssentials])})}var it=n(7778),at=function(t){var e=t.children,n=t.className,r=t.tag,o=void 0===r?"div":r,i=t.renderInContainer,a=(0,c.eJ)((function(){var t=document.createElement(o);return n&&t.classList.add(n),t})),s=(0,u.Z)(a,1)[0];return(0,c.d4)((function(){return document.body.appendChild(s),function(){document.body.removeChild(s)}}),[]),(0,c.jz)(e,i||s)},ct=n(8523),st=n(7029).h,ut=0,lt=function(t){var e=t.width,n=t.color,r=t.tooltipText,o=t.framed,i=t.renderInContainer,a=t.tooltipAlways,s=t.onClick,u=t.thickness,l=void 0===u?1:u,d=(0,c.Ye)((function(){return"react-close-icon-".concat((ut++).toString(36))}),[]),f=(0,c.Ye)((function(){return"react-close-icon-".concat((ut++).toString(36))}),[]),p=(0,c.Ye)((function(){return"react-close-icon-".concat((ut++).toString(36))}),[]),h=(0,c.sO)(),v=(0,it.EL)(h);return(0,F.G)("#".concat(p,", #").concat(d," {\n position: absolute;\n top: 50%;\n right: 0;\n margin-top: calc(").concat(e,"px / 2 * -1);\n display: block;\n width: ").concat(e,"px;\n height: ").concat(e,"px; \n pointer-events: none;\n}\n\n#").concat(d," {\n position: absolute !important;\n}\n\n#").concat(d,", #").concat(f," {\n cursor: pointer;\n pointer-events: all;\n ").concat(o?"outline: rgb(255, 94, 94) solid 5px;":"","\n}\n\n#").concat(f," {\n position: fixed !important;\n ").concat(v?"top: ".concat(v.y,"px;left: ").concat(v.x,"px;display:block;"):"display:none;","\n width: ").concat(e,"px;\n height: ").concat(e,"px;\n z-index: 99;\n}\n#").concat(f,":after, #").concat(d,":after {\n width: auto !important;\n white-space: nowrap !important;\n}\n#").concat(f,">span:before, #").concat(f,">span:after,\n#").concat(d,">span:before, #").concat(d,">span:after {\n position: absolute;\n top: 50%;\n left: 50%;\n width: ").concat(l,"px;\n height: ").concat(e,"px;\n background-color: ").concat(n,";\n transform: rotate(45deg) translate(-50%, -50%);\n transform-origin: top left;\n transition: all 420ms;\n content: '';\n opacity: 0.5;\n pointer-events: none;\n}\n#").concat(f,">span:after,\n#").concat(d,">span:after {\n transform: rotate(-45deg) translate(-50%, -50%);\n}\n#").concat(f,">span:hover:before, #").concat(f,">span:hover:after,\n#").concat(d,">span:hover:before, #").concat(d,">span:hover:after {\n opacity: 1;\n width: ").concat(l+1,"px;\n}")),i?st(c.HY,null,st("div",{id:p,ref:h}),(null==v?void 0:v.y)>0&&st(at,{renderInContainer:i},st(ct.u,{title:r,id:f,onClick:s,position:v.y>50?"top-left":"left",always:a},st("span",null)))):st(ct.u,{title:r,id:d,onClick:s,position:"top-left",always:a},st("span",null))},dt=n(7029).h,ft=function(){var t=(0,_.S)(),e=t.headerDesign,n=e.fontSize,r=e.fontColor,o=t.texts.acceptEssentials,i=t.mobile,a=t.activeAction,c=t.pageRequestUuid4,s=t.i18n,u=s.close,l=s.closeWithoutSaving,d=t.buttonClicked,f=void 0===d?"":d,p=ot(),h=p.buttonClickedCloseIcon,v=p.closeIcon,b=document.getElementById(c);return dt(lt,{width:(0,q.D)(i,c,n),color:r,tooltipText:a?"change"===a?l:u:o,tooltipAlways:(null==b?void 0:b.clientWidth)<700,framed:f===h,renderInContainer:b,onClick:v})},pt=n(7029).h,ht=(0,c.Gp)((function(t,e){var n,r,o,i,a,c,u,l,d,f,p,h,v,b,m,g,y,k,x=(0,_.S)(),w=x.headerDesign,C=w.logo,S=w.logoRetina,O=x.decision.showCloseIcon,A=x.texts.headline,D=x.activeAction,E=x.individualPrivacyOpen,Z=x.individualTexts,I=x.i18n.headerTitlePrivacyPolicyHistory,B=S&&!(null!=C&&C.endsWith(".svg"))&&window.devicePixelRatio>1,T=B?S:C,N=E?"history"===D?I:Z.headline:A;return pt("div",(0,Y.Z)({ref:e},(o=(r=(n=x).layout).type,i=r.dialogBorderRadius,c=(a=n.design).borderWidth,u=a.borderColor,l=(0,nt.Z)(a,["borderWidth","borderColor"]),f=(d=n.headerDesign).inheritBg,p=d.bg,h=d.padding,v=n.customCss.antiAdBlocker,b=n.mobile,m=n.pageRequestUuid4,g=(0,q.D)(b,m,o,"banner"),y=(0,q.D)(b,m,c),k={padding:(0,q.D)(b,m,h,void 0,!0).map((function(t){return"".concat(t,"px")})).join(" "),background:f?l.bg:p,borderRadius:"dialog"===g?"".concat(i,"px ").concat(i,"px 0 0"):void 0,position:"sticky",zIndex:9,top:0},"dialog"===g&&y>0&&(k.borderTop="".concat(y,"px solid ").concat(u),k.borderLeft=k.borderTop,k.borderRight=k.borderTop),{className:"y"===v?void 0:"rcb-header-container",style:k})),pt("div",function(t){var e=t.layout,n=e.type,r=e.bannerMaxWidth,o=t.design.textAlign,i=t.headerDesign,a=i.inheritTextAlign,c=i.logo,s=i.logoPosition,u=(0,nt.Z)(i,["inheritTextAlign","logo","logoPosition"]),l=t.texts.headline,d=t.individualLayout,f=t.customCss.antiAdBlocker,p=t.mobile,h=t.pageRequestUuid4,v=t.individualPrivacyOpen,b=a?o:u.textAlign;return{className:"y"===f?void 0:"rcb-header",style:{transition:"width 500ms, max-width 500ms",maxWidth:"banner"===(0,q.D)(p,h,n,"banner")?+(v&&!d.inheritBannerMaxWidth?d.bannerMaxWidth:r):void 0,margin:"auto",display:"flex",justifyContent:"center"===b?"center":"right"===b?"flex-end":void 0,textAlign:b,alignItems:"center",position:"relative",flexDirection:c&&l?"left"===s?"row":"right"===s?"row-reverse":"column":void 0}}}(x),!!T&&pt("img",(0,Y.Z)({alt:"",src:T},function(t,e){var n=t.headerDesign,r=n.logoMaxHeight,o=n.logoMargin,i=n.logoFitDim,a=n.logoRetinaFitDim,c=t.customCss.antiAdBlocker,u=t.mobile,l=t.pageRequestUuid4,d=e?a:i,f=d?{width:d[0],height:d[1]}:{width:"auto",height:(0,q.D)(u,l,+r)};return{className:"y"===c?void 0:"rcb-logo",style:(0,s.Z)((0,s.Z)({},f),{},{margin:(0,q.D)(u,l,o).map((function(t){return"".concat(t,"px")})).join(" ")})}}(x,B))),!!N&&pt("div",(0,rt.a)(x,!1),N),(!!O||!!D)&&pt(ft,null)))})),vt=n(6268),bt=n(4769),mt=n(3282),gt=n(7029).h,yt=function(t){var e=t.title,n=t.children,r=(0,_.S)();return gt("div",function(t){var e=t.group,n=e.headlineFontSize,r=e.headlineFontColor,o=e.headlineFontWeight,i=t.customCss.antiAdBlocker,a=t.mobile,c=t.pageRequestUuid4;return{className:"y"===i?void 0:"rcb-group",style:{color:r,fontSize:(0,q.D)(a,c,n),fontWeight:o,textAlign:"left"}}}(r),e,n&>("div",function(t){var e=t.design.fontWeight,n=t.group,r=n.descriptionFontColor,o=n.descriptionFontSize,i=t.customCss.antiAdBlocker,a=t.mobile,c=t.pageRequestUuid4;return{className:"y"===i?void 0:"rcb-group-description",style:{color:r,fontSize:(0,q.D)(a,c,+o),fontWeight:e,marginTop:5}}}(r),n))},kt=n(2260),xt=n(7585),wt=n(2121),Ct=n(229),St=n(7029).h,Ot=function(t){var e,n=t.group,r=t.cookie,o=r.id,i=(0,_.S)(),a=i.consent,s=i.activeAction,u=i.essentialGroup===n.slug,l=u||"history"===s,d=u||((null===(e=a.groups)||void 0===e?void 0:e[n.id])||[]).some((function(t){return t===o})),f=(0,c.I4)((function(){return!l&&i.updateCookieChecked(n.id,o,!d)}),[l,i,n,o,d]);return St(Ct.V,{cookie:r,propertyListProps:{isEssentialGroup:u},checked:d,disabled:l,onToggleCheck:f})},At=n(7029).h,Dt=function(t){var e,n=t.group,r=(0,_.S)(),o=n.id,i=n.slug,a=n.name,s=n.description,l=n.items,d=(0,c.eJ)(!1),f=(0,u.Z)(d,2),p=f[0],h=f[1],v=(0,c.eJ)(!1),b=(0,u.Z)(v,2),m=b[0],g=b[1],y=(0,c.eJ)(!1),k=(0,u.Z)(y,2),x=k[0],w=k[1],C=r.previewCheckboxActiveState,S=r.individualTexts,O=S.showMore,A=S.hideMore,D=r.consent,E=r.activeAction,Z=r.essentialGroup;(0,c.bt)((function(){h(!0)}),[]);var I=Z===i,B=I||"history"===E,T=C||I||!!D.groups[o],N=I||JSON.stringify(l.map((function(t){return t.id})).sort())===JSON.stringify((null===(e=D.groups[o])||void 0===e?void 0:e.sort())||[])?mt.Z:bt.Z,P=(0,c.I4)((function(){return!B&&r.updateGroupChecked(o,!T)}),[B,r,o,T]);return At("div",function(t){var e=t.group,n=e.groupBg,r=e.groupBorderRadius,o=e.groupBorderColor,i=e.groupPadding,a=e.groupBorderWidth,c=e.groupInheritBg,s=t.customCss.antiAdBlocker,u=t.mobile,l=t.pageRequestUuid4,d=(0,q.D)(u,l,a);return{className:"y"===s?void 0:"rcb-group",style:{background:c?void 0:n,border:d>0?"".concat(d,"px solid ").concat(o):void 0,padding:(0,q.D)(u,l,i).map((function(t){return"".concat(t,"px")})).join(" "),borderRadius:+r,textAlign:"left"}}}(r),At(yt,{title:At(c.HY,null,At(kt.p,(0,Y.Z)({icon:N,onClick:P},(0,xt.z)(r,p,T,B))),At("span",{style:{verticalAlign:"middle",cursor:"pointer"},onClick:P},a," (",l.length,")"))},s,!!l&&At(c.HY,null," • ",At("a",(0,Y.Z)({href:"#"},(0,wt.c)(r,m),{onClick:function(t){w(!x),t.preventDefault()},onMouseEnter:function(){return g(!0)},onMouseLeave:function(){return g(!1)}}),x?A:O),x&&l.map((function(t){return At(Ot,{key:t.id,group:n,cookie:t})})))))},Et=n(7029).h,Zt=function(){var t=(0,_.S)(),e=t.groups,n=t.group.groupSpacing,r=t.mobile,o=t.pageRequestUuid4,i=e.filter((function(t){return t.items.length}));return Et("div",{className:"y"===t.customCss.antiAdBlocker?void 0:"rcb-groups",style:{marginTop:10,clear:"both"}},i.map((function(t,e){return Et(c.HY,{key:t.id},Et(Dt,{key:t.id,group:t}),e!==i.length-1&&Et("div",{style:{height:(0,q.D)(r,o,+n)}}))})))},It=n(7029).h,Bt=function(t){var e=t.group,n=e.id,r=e.slug,o=e.name,i=(0,c.eJ)(!1),a=(0,u.Z)(i,2),s=(a[0],a[1]),l=(0,_.S)(),d=l.decision.groupsFirstView,f=(l.design.fontSize,l.consent),p=l.essentialGroup;(0,c.bt)((function(){s(!0)}),[]);var h=p===r,v=h||!!f.groups[n],b=(0,c.I4)((function(){return false}),[false,h,l,n,v,d]);return It("span",(0,Y.Z)({key:o},function(t){var e=t.design.fontSize,n=t.bodyDesign,r=n.dottedGroupsInheritFontSize,o=n.dottedGroupsFontSize,i=t.mobile,a=t.pageRequestUuid4;return{className:void 0,style:{paddingRight:10,fontSize:(0,q.D)(i,a,r?+e:+o),whiteSpace:"nowrap",display:"inline-block"}}}(l)),It("span",null,It(c.HY,null,It("strong",function(t){return{className:void 0,style:{color:t.bodyDesign.dottedGroupsBulletColor}}}(l),"●")," "),It("span",{style:{verticalAlign:"middle",cursor:d?"pointer":void 0},onClick:b},o)))},Tt=n(7029).h,Nt=function(){var t=(0,_.S)(),e=t.groups;return t.decision.showGroups?Tt("div",{className:"y"===t.customCss.antiAdBlocker?void 0:"rcb-dotted-groups",style:{marginTop:10,lineBreak:"anywhere",lineHeight:2}},e.filter((function(t){return!!t.items.length})).map((function(t){return Tt(Bt,{key:t.id,group:t})}))):null},Pt=n(7029).h,Rt=function(){var t=(0,_.S)(),e=(0,c.eJ)(-1),n=(0,u.Z)(e,2),r=n[0],o=n[1],i=t.activeAction,a=t.history,s=t.selectHistoryEntry,l=t.i18n,d=l.historyLabel,f=l.historySelectNone,p=(0,c.Ye)((function(){var t;return null==a||null===(t=a.filter((function(t){return t.id===r})))||void 0===t?void 0:t[0]}),[r]);(0,c.d4)((function(){i?"history"===i&&null!=a&&a.length&&o(a[0].id):o(-1)}),[i,a]);var h,v,b,m,g,y,k,x,w,C,S=null==p?void 0:p.uuid,O={className:void 0,style:{background:t.design.bg}};return Pt(c.HY,null,d," ",Pt("select",(0,Y.Z)({},(v=(h=t).design,b=v.fontSize,m=v.fontColor,g=h.bodyDesign,y=g.descriptionInheritFontSize,k=g.descriptionFontSize,x=h.customCss.antiAdBlocker,w=h.mobile,C=h.pageRequestUuid4,{className:"y"===x?void 0:"rcb-history-select",style:{fontSize:(0,q.D)(w,C,y?+b:+k),background:"transparent",border:0,color:m,borderBottom:"1px solid ".concat($(m,50))}}),{disabled:!(null!=a&&a.length),value:r,onChange:function(t){var e=+t.target.value;a.forEach((function(t){var n=t.id,r=t.decision,i=t.groups,a=t.tcf;n===e&&(o(n),s(i,r,a))}))}}),(null==a?void 0:a.length)>0?a.map((function(t){var e=t.id,n=t.isDoNotTrack,r=t.isUnblock,o=t.isForwarded,i=t.created;return Pt("option",(0,Y.Z)({key:e,value:e},O),new Date(i).toLocaleString(document.documentElement.lang),n?" (Do Not Track)":"",r?" (Content Blocker)":"",o?" (Consent Forwarding)":"")})):Pt("option",(0,Y.Z)({value:-1},O),f)),!!S&&Pt("div",{style:{opacity:.5,marginTop:5}},"UUID: ",S))},zt=n(8346),Lt=n(7613);function Wt(t,e,n,r,o){var i=t.name,a=t.order,c=t.type,s=t.borderRadius,u=t.bg,l=t.hoverBg,d=t.fontSize,f=t.textAlign,p=t.fontColor,h=t.fontWeight,v=t.hoverFontColor,b=t.borderWidth,m=t.borderColor,g=t.hoverBorderColor,y=t.padding,k=t.antiAdBlocker,x=t.pageRequestUuid4,w=!o||a>1,C=o&&1===a?5:0,S=o&&0===a?5:0,O=(0,q.D)(e,x,+b),A={textDecoration:"link"===c?"underline":"none",borderRadius:+s,cursor:"button"===c?"pointer":void 0,backgroundColor:"button"===c?n?l:u:void 0,fontSize:(0,q.D)(e,x,+d),fontWeight:h,color:n?v:p,transition:"background-color 250ms, color 250ms, border-color 250ms",margin:"0 ".concat(S,"px ").concat((0,q.D)(e,x,10,void 0,!0),"px ").concat(C,"px"),border:"button"===c&&O>0?"".concat(O,"px solid ").concat(n?g:m):void 0,padding:(0,q.D)(e,x,y,void 0,"button"!==c).map((function(t){return"".concat(t,"px")})).join(" "),overflow:"hidden",outline:r?"rgb(255, 94, 94) solid 5px":void 0,flex:w?"1 1 100%":"0 0 calc(50% - ".concat(C+S,"px)"),display:"flex",alignItems:"center",justifyContent:"right"===f?"flex-end":"center"===f?"center":"left",order:a};return{className:"y"===k?void 0:"rcb-btn-".concat(i),style:A}}function Ht(t,e,n,r,o){var i=t.isTcf,a=t.decision.acceptEssentials,c=t.layout.borderRadius,s=t.bodyDesign,u=s.acceptEssentialsFontSize,l=s.acceptEssentialsBg,d=s.acceptEssentialsTextAlign,f=s.acceptEssentialsBorderColor,p=s.acceptEssentialsPadding,h=s.acceptEssentialsBorderWidth,v=s.acceptEssentialsFontColor,b=s.acceptEssentialsFontWeight,m=s.acceptEssentialsHoverBg,g=s.acceptEssentialsHoverFontColor,y=s.acceptEssentialsHoverBorderColor,k=s.acceptAllFontWeight,x=s.acceptAllFontSize,w=s.acceptAllPadding,C=t.customCss.antiAdBlocker,S=t.mobile;return Wt({name:"accept-essentials",order:r,type:a,borderRadius:c,bg:l,hoverBg:m,fontSize:o||i?x:u,textAlign:d,fontColor:v,fontWeight:i?k:b,hoverFontColor:g,borderWidth:h,borderColor:f,hoverBorderColor:y,padding:o?w:p,antiAdBlocker:C,pageRequestUuid4:t.pageRequestUuid4},S,e,n,o)}function _t(t,e,n,r,o){var i=t.decision.acceptIndividual,a=t.layout.borderRadius,c=t.bodyDesign,s=c.acceptIndividualFontSize,u=c.acceptIndividualBg,l=c.acceptIndividualTextAlign,d=c.acceptIndividualBorderColor,f=c.acceptIndividualPadding,p=c.acceptIndividualBorderWidth,h=c.acceptIndividualFontColor,v=c.acceptIndividualFontWeight,b=c.acceptIndividualHoverBg,m=c.acceptIndividualHoverFontColor,g=c.acceptIndividualHoverBorderColor,y=t.customCss.antiAdBlocker,k=t.mobile;return Wt({name:"accept-individual",order:r,type:i,borderRadius:a,bg:u,hoverBg:b,fontSize:s,textAlign:l,fontColor:h,fontWeight:v,hoverFontColor:m,borderWidth:p,borderColor:d,hoverBorderColor:g,padding:f,antiAdBlocker:y,pageRequestUuid4:t.pageRequestUuid4},k,e,n,o)}function Yt(t,e,n,r,o){var i=t.isTcf,a=t.layout.borderRadius,c=t.bodyDesign,s=c.acceptAllFontWeight,u=c.acceptAllFontSize,l=t.saveButton,d=l.type,f=l.fontSize,p=l.bg,h=l.textAlign,v=l.borderColor,b=l.padding,m=l.borderWidth,g=l.fontColor,y=l.fontWeight,k=l.hoverBg,x=l.hoverFontColor,w=l.hoverBorderColor,C=t.customCss.antiAdBlocker,S=t.mobile;return Wt({name:"accept-individual-save",order:r,type:d,borderRadius:a,bg:p,hoverBg:k,fontSize:i?u:f,textAlign:h,fontColor:g,fontWeight:i?s:y,hoverFontColor:x,borderWidth:m,borderColor:v,hoverBorderColor:w,padding:b,antiAdBlocker:C,pageRequestUuid4:t.pageRequestUuid4},S,e,n,o)}function Ut(t,e,n,r,o){var i=t.decision.acceptAll,a=t.layout.borderRadius,c=t.bodyDesign,s=c.acceptAllFontSize,u=c.acceptAllBg,l=c.acceptAllTextAlign,d=c.acceptAllBorderColor,f=c.acceptAllPadding,p=c.acceptAllBorderWidth,h=c.acceptAllFontColor,v=c.acceptAllFontWeight,b=c.acceptAllHoverBg,m=c.acceptAllHoverFontColor,g=c.acceptAllHoverBorderColor,y=t.customCss.antiAdBlocker,k=t.mobile;return Wt({name:"accept-all",order:r,type:i,borderRadius:a,bg:u,hoverBg:b,fontSize:s,textAlign:l,fontColor:h,fontWeight:v,hoverFontColor:m,borderWidth:p,borderColor:d,hoverBorderColor:g,padding:f,antiAdBlocker:y,pageRequestUuid4:t.pageRequestUuid4},k,e,n,o)}var Ft=n(4902),Mt=n(7029).h,jt=function(t){var e=t.inlineStyle,n=t.type,r=t.onClick,o=t.children,i=t.framed,a=t.busyOnClick,s=t.order;if("hide"===n)return null;var l=(0,c.eJ)(!1),d=(0,u.Z)(l,2),f=d[0],p=d[1],h=(0,c.I4)((function(){f||(a&&p(!0),null==r||r())}),[r,f,a]),v=(0,c.eJ)(!1),b=(0,u.Z)(v,2),m=b[0],g=b[1],y=(0,_.S)(),k=y.individualPrivacyOpen,x=y.decision,w=x.acceptAll,C=x.acceptEssentials,S=y.bodyDesign,O=S.acceptAllOneRowLayout,A=S.acceptEssentialsUseAcceptAll?w:C,D={onClick:h,onMouseEnter:function(){return g(!0)},onMouseLeave:function(){return g(!1)}},E=(0,c.Ye)((function(){switch(e){case"acceptEssentials":return Ht;case"acceptIndividual":return _t;case"save":return Yt;default:return Ut}}),[e]);return Mt("div",(0,Y.Z)({},"button"===n?D:{},E(y,m,i,s,!(/MSIE (\d+\.\d+);/.test(navigator.userAgent)||navigator.userAgent.indexOf("Trident/")>-1||"hide"===w||"hide"===A||k||s>1)&&O)),Mt("span",(0,Y.Z)({},{style:{textOverflow:"ellipsis",whiteSpace:"nowrap",wordBreak:"keep-all",overflow:"hidden",cursor:"pointer"}},"link"===n?D:{}),f?Mt(Ft.X,null):o))},Gt=n(7029).h,qt=function(){var t=(0,_.S)(),e=t.activeAction,n=t.bodyDesign,r=n.acceptEssentialsUseAcceptAll,o=n.acceptAllOneRowLayout,i=t.decision,a=(i.showGroups,i.groupsFirstView,i.saveButton,i.acceptAll),s=i.acceptEssentials,u=i.acceptIndividual,l=i.buttonOrder,d=t.texts,f=d.acceptAll,p=d.acceptEssentials,h=d.acceptIndividual,v=t.saveButton,b=v.type,m=v.useAcceptAll,g=t.individualTexts.save,y=t.individualPrivacyOpen,k=(t.didGroupFirstChange,t.productionNotice),x=t.buttonClicked,w=void 0===x?"":x,C=(0,c.Ye)((function(){var t=l.split(","),e=t.reduce((function(e,n){return e[n]=t.indexOf(n),e}),{}),n=t.reduce((function(e,n){return e[t.indexOf(n)]=n,e}),{});return o&&(e[n[0]]=1,e[n[1]]=0),e}),[l,o]),S=C.all,O=C.essential,A=C.individual,D=C.save,E=ot(),Z=E.buttonClickedAll,I=E.buttonClickedEssentials,B=E.buttonClickedCustom,T=E.acceptAll,N=E.acceptEssentials,P=E.acceptIndividual,R=E.openIndividualPrivacy,z="change"===e;return Gt(c.HY,null,Gt(jt,{onClick:T,type:a,inlineStyle:"acceptAll",framed:w===Z,busyOnClick:z,order:S},f),"change"!==e&&Gt(jt,{onClick:N,type:r?a:s,inlineStyle:r?"acceptAll":"acceptEssentials",framed:w===I,busyOnClick:z,order:O},p),!!y&&Gt(jt,{onClick:P,type:m?a:b,inlineStyle:m?"acceptAll":"save",framed:w===B,busyOnClick:z,order:D},g),!y&&Gt(jt,{type:u,onClick:R,inlineStyle:"acceptIndividual",framed:w.startsWith("ind_"),busyOnClick:z,order:A},h),k)},Xt=n(7029).h,Vt=function(t){var e,n=t.leftSideContainerRef,r=t.rightSideContainerRef,o=(0,_.S)(),i=o.layout.type,a=o.mobile,s=o.bodyDesign.teachingsSeparatorActive,u=o.tcf,l=o.individualPrivacyOpen,d=o.activeAction,f=o.pageRequestUuid4,p=(0,vt.k)(),h=p.description,v=p.teachings,b="bnnr-body-leftSide-".concat(f),m="bnnr-body-rightSide-".concat(f),g="cntnt-".concat(f);(0,F.G)(" #".concat(b," img {\n max-width: 100%;\n height: auto;\n}\n\n").concat((null===(e=document.getElementById(f))||void 0===e?void 0:e.clientWidth)>700?"":"#".concat(b," {\n float: initial !important;\n width: auto !important;\n padding-right: initial !important;\n ").concat("banner"!==(0,q.D)(a,f,i,"banner")||l?l?"padding-top: 10px !important;":"":"padding-bottom: 10px !important;","\n }\n\n #").concat(g," {\n min-height: calc(var(--rendered-height-header) + var(--rendered-height-footer) + var(--rendered-height-rightSideContainer) + 60px);\n }\n \n #").concat(m," {\n float: initial !important;\n width: auto !important;\n max-width: initial !important;\n margin: initial !important;\n ").concat(l?"padding-bottom: 5px !important;":"padding-top: 10px !important;","\n position: sticky;\n }")));var y=(0,c.Ye)((function(){return Xt(l?Zt:Nt,null)}),[l,u]),k=Xt("div",(0,Y.Z)({ref:n,key:"leftSide",id:b},function(t){var e=t.layout.type,n=t.bodyDesign.padding,r=t.customCss.antiAdBlocker,o=t.mobile,i=t.individualPrivacyOpen,a=t.activeAction,c=t.pageRequestUuid4,s=(0,q.D)(o,c,e,"banner"),u=(0,q.D)(o,c,n);return{className:"y"===r?void 0:"rcb-tb-left",style:{float:"banner"===s&&"history"!==a?"left":void 0,width:"banner"===s&&"history"!==a?"calc(100% - ".concat(300,"px)"):void 0,paddingRight:"banner"===s?20:void 0,paddingTop:+u[0],paddingBottom:"banner"===s||i?+u[2]:0}}}(o)),Xt("div",function(t){var e=t.design.fontSize,n=t.bodyDesign,r=n.descriptionInheritFontSize,o=n.descriptionFontSize,i=t.individualLayout.descriptionTextAlign,a=t.customCss.antiAdBlocker,c=t.mobile,s=t.individualPrivacyOpen,u=t.pageRequestUuid4;return{className:"y"===a?void 0:"rcb-description",style:{lineHeight:1.5,fontSize:(0,q.D)(c,u,r?+e:+o),textAlign:s?i:void 0}}}(o),"history"===d?Xt(Rt,null):Xt(c.HY,null,Xt("span",{dangerouslySetInnerHTML:{__html:h}}),v.length>0&&Xt(c.HY,null,s&&Xt("div",null,Xt("span",(0,zt.V)(o))),v.map((function(t){return Xt("span",(0,Y.Z)({key:t},(0,Lt.W)(o),{dangerouslySetInnerHTML:{__html:t}}))}))))),y),x="history"===d?Xt("div",{ref:r}):Xt("div",(0,Y.Z)({ref:r,key:"rightSide",id:m},function(t){var e,n=t.layout,r=n.type,o=n.dialogMaxWidth,i=t.design,a=i.borderWidth,c=i.bg,s=i.fontColor,u=t.headerDesign,l=t.footerDesign,d=t.bodyDesign.padding,f=t.individualLayout.inheritDialogMaxWidth,p=t.customCss.antiAdBlocker,h=t.mobile,v=t.individualPrivacyOpen,b=t.pageRequestUuid4,m=(0,q.D)(h,b,r,"banner"),g=(0,q.D)(h,b,a),y=(0,q.D)(h,b,d,void 0,!0),k=J(s),x=k.r,w=k.g,C=k.b,S="dialog"===m?+o-y[1]-y[3]-2*g:300;return{className:"y"===p?void 0:"rcb-tb-right",style:(e={background:c,paddingTop:"banner"===m||v?+y[0]:10,paddingBottom:v?10:+y[2],float:"banner"===m||v?"right":void 0,maxWidth:S,width:S,margin:"dialog"===m&&v&&!f?"0 0 10px 10px":void 0,position:v?void 0:"sticky"},(0,V.Z)(e,v?"top":"bottom",v?"calc(var(--rendered-height-header) + ".concat((0,q.D)(h,b,u.borderWidth),"px)"):"calc(var(--rendered-height-footer) + ".concat((0,q.D)(h,b,l.borderWidth),"px)")),(0,V.Z)(e,"zIndex",1),(0,V.Z)(e,"display","flex"),(0,V.Z)(e,"flexWrap","wrap"),(0,V.Z)(e,"transition","box-shadow ease-in-out .1s"),(0,V.Z)(e,"--boxShadowShowScroll","0 -15px 15px -15px rgba(".concat(x,", ").concat(w,", ").concat(C,", 0.3)")),e)}}(o)),Xt(qt,null));return Xt("div",function(t){var e=t.layout.type,n=t.design,r=n.bg,o=n.borderWidth,i=n.borderColor,a=t.bodyDesign.padding,c=t.customCss.antiAdBlocker,s=t.mobile,u=t.pageRequestUuid4,l=(0,q.D)(s,u,o),d={background:r,padding:(0,q.D)(s,u,a).map((function(t,e){return"".concat([0,2].indexOf(e)>-1?0:t,"px")})).join(" "),lineHeight:1.4};return"dialog"===(0,q.D)(s,u,e,"banner")&&l>0&&(d.borderLeft="".concat(l,"px solid ").concat(i),d.borderRight=d.borderLeft),{className:"y"===c?void 0:"rcb-body-container",style:d}}(o),Xt("div",function(t){var e=t.layout,n=e.type,r=e.bannerMaxWidth,o=t.individualLayout,i=t.customCss.antiAdBlocker,a=t.mobile,c=t.individualPrivacyOpen,s=t.pageRequestUuid4;return{className:"y"===i?void 0:"rcb-body",style:{transition:"width 500ms, max-width 500ms",maxWidth:"banner"===(0,q.D)(a,s,n,"banner")?+(c&&!o.inheritBannerMaxWidth?o.bannerMaxWidth:r):void 0,margin:"auto"}}}(o),l?[x,k]:[k,x],Xt("div",{style:{clear:"both"}})))},Jt=n(6092),$t=n(7029).h,Qt=(0,c.Gp)((function(t,e){var n=(0,_.S)(),r=(n.isTcf,n.layout.type),o=(n.individualPrivacyOpen,n.updateIndividualPrivacyOpen,n.onClose),i=(n.i18n.tcf,n.isConsentRecord),a=(0,c.I4)((function(t){o(),t.preventDefault()}),[o]),s=(0,Jt.g)({onClose:i?a:void 0,putPoweredByLinkInRow:"banner"===r?0:1,row1:[!1]}),u=s.rows,l=s.render;return $t("div",(0,Y.Z)({ref:e},function(t){var e=t.layout,n=e.type,r=e.dialogBorderRadius,o=t.design,i=t.footerDesign,a=i.inheritBg,c=i.bg,s=i.inheritTextAlign,u=i.textAlign,l=i.padding,d=i.fontSize,f=i.fontColor,p=i.fontWeight,h=t.customCss.antiAdBlocker,v=t.mobile,b=t.pageRequestUuid4,m=(0,q.D)(v,b,n,"banner"),g=(0,q.D)(v,b,o.borderWidth),y={padding:(0,q.D)(v,b,l,void 0,!0).map((function(t){return"".concat(t,"px")})).join(" "),background:a?o.bg:c,borderRadius:"dialog"===m?"0 0 ".concat(r,"px ").concat(r,"px"):void 0,fontSize:(0,q.D)(v,b,+d),fontWeight:p,color:f,textAlign:s?o.textAlign:u,position:"sticky",bottom:0,zIndex:1};return"dialog"===m&&g>0&&(y.borderBottom="".concat(g,"px solid ").concat(o.borderColor),y.borderLeft=y.borderBottom,y.borderRight=y.borderBottom),{className:"y"===h?void 0:"rcb-footer-container",style:y}}(n)),$t("div",function(t){var e=t.layout,n=e.type,r=e.bannerMaxWidth,o=t.individualLayout,i=t.customCss.antiAdBlocker,a=t.mobile,c=t.pageRequestUuid4,s=t.individualPrivacyOpen;return{className:"y"===i?void 0:"rcb-footer",style:{transition:"width 500ms, max-width 500ms",maxWidth:"banner"===(0,q.D)(a,c,n,"banner")?+(s&&!o.inheritBannerMaxWidth?o.bannerMaxWidth:r):void 0,margin:"auto",lineHeight:1.8}}}(n),l(u)))})),Kt=n(7029).h,te=function(){var t=(0,_.S)(),e=t.layout,n=e.type,r=e.dialogBorderRadius,o=t.decision,i=o.acceptAll,a=o.acceptEssentials,s=o.showCloseIcon,l=t.mobile,d=t.individualPrivacyOpen,f=t.design.bg,p=t.bodyDesign,h=p.teachingsFontColor,v=p.acceptEssentialsUseAcceptAll,b=t.activeAction,m=t.pageRequestUuid4,g="bnnr-body-rightSide-".concat(m),y="cntnt-".concat(m),k=(0,c.sO)(),x=k.current,w=v?i:a,C=!0;!l.hideHeader||b||d||"hide"===w&&s||(C=(0,q.D)(l,m,C,!1));var S=(0,c.eJ)(!1),O=(0,u.Z)(S,2),A=O[0],D=O[1],E=(0,c.I4)((function(){if(x){var t=x.clientHeight,e=x.scrollHeight,n=x.scrollTop,r=x.offsetHeight,o=t<e,i=Math.ceil(n+r)>=e,a=o&&!i&&!d;A!==a&&D(a)}}),[x,d,A]);E(),(0,c.bt)((function(){return x?(x.addEventListener("scroll",E),function(){return x.removeEventListener("scroll",E)}):function(){}}),[x,E]),(0,F.G)(A?"#".concat(g," {box-shadow:var(--boxShadowShowScroll);}"):""),(0,F.G)("Win32"===navigator.platform&&"dialog"===n&&r>0?["#".concat(y,"{overflow:overlay!important;}"),"#".concat(y,"::-webkit-scrollbar{width:11px;}"),"#".concat(y,"{scrollbar-width:thin;scrollbar-color:").concat(h," transparent;}"),"#".concat(y,"::-webkit-scrollbar-track{background:transparent;}"),"#".concat(y,"::-webkit-scrollbar-thumb{background-color:").concat(h,";border-radius:").concat(r,"px;border:3px solid ").concat(f,";}"),"#".concat(y,">div{border-top-right-radius:0!important;border-bottom-right-radius:0!important;}")].join("\n"):"");var Z=(0,c.sO)(),I=(0,c.sO)(),B=(0,c.sO)();return et(Z.current,"header"),et(I.current,"footer"),et(B.current,"rightSideContainer"),Kt("div",(0,Y.Z)({},function(t){var e,n=t.layout.type,r=t.customCss.antiAdBlocker,o=t.decision.showCloseIcon,i=t.activeAction,a=t.individualPrivacyOpen,c=t.mobile,s=t.pageRequestUuid4,u=(null===(e=document.getElementById(s))||void 0===e?void 0:e.clientHeight)||window.innerHeight,l=+c.maxHeight,d=l>u?u:l,f=o||i?51:0;return{className:"y"===r?void 0:"rcb-content",style:{position:"relative",maxHeight:(0,q.D)(c,s,u-("banner"===n?0:20)-f,a?u-f:d-f),overflow:"auto"}}}(t),{ref:k,id:y}),C&&Kt(c.HY,null,Kt(ht,{ref:Z}),Kt("div",function(t){var e=t.layout.type,n=t.design,r=t.headerDesign,o=r.borderWidth,i=r.borderColor,a=t.customCss.antiAdBlocker,c=t.mobile,s=t.pageRequestUuid4,u=(0,q.D)(c,s,n.borderWidth),l={height:(0,q.D)(c,s,+o),background:i,position:"sticky",top:"var(--rendered-height-header)",zIndex:9};return"dialog"===(0,q.D)(c,s,e,"banner")&&u>0&&(l.borderLeft="".concat(u,"px solid ").concat(n.borderColor),l.borderRight=l.borderLeft),{className:"y"===a?void 0:"rcb-header-separator",style:l}}(t))),Kt(Vt,{rightSideContainerRef:B}),Kt("div",function(t){var e=t.layout.type,n=t.design,r=t.footerDesign,o=r.borderWidth,i=r.borderColor,a=t.customCss.antiAdBlocker,c=t.mobile,s=t.pageRequestUuid4,u=(0,q.D)(c,s,n.borderWidth),l={height:(0,q.D)(c,s,+o),background:i,position:"sticky",bottom:"var(--rendered-height-footer)"};return"dialog"===(0,q.D)(c,s,e,"banner")&&u>0&&(l.borderLeft="".concat(u,"px solid ").concat(n.borderColor),l.borderRight=l.borderLeft),{className:"y"===a?void 0:"rcb-footer-separator",style:l}}(t)),Kt(Qt,{ref:I}))},ee=n(7029).h,ne=function(){var t,e,n,r,o,i,a,c,s,l,d,f,p,h,v,b,m,g,y,k,x,w,C,S,O,A,D,E,Z,I,B,T,N,P=(0,_.S)(),R=P.layout,z=R.animationInDuration,L=R.animationOutDuration,H=P.animationVisible,U=W()(P.layout),F=U.useAnimationIn,M=U.useAnimationOut,j=X(F,z),G=(0,u.Z)(j,2),J=G[0],Q=G[1],K=X("none"===M?"fadeOut":M,"none"===M?0:L),et=(0,u.Z)(K,2),nt=et[0],rt=et[1];return ee(tt,(0,Y.Z)({animationIn:J,animationInDuration:Q,animationOut:nt,animationOutDuration:rt,isVisible:H},(n=(e=(t=P).layout).type,r=e.dialogMaxWidth,o=e.dialogPosition,i=e.dialogMargin,a=e.bannerPosition,c=e.dialogBorderRadius,l=(s=t.design).borderWidth,d=s.borderColor,f=s.textAlign,p=s.fontColor,h=s.fontInheritFamily,v=s.fontFamily,b=s.fontWeight,m=s.boxShadowEnabled,g=s.boxShadowOffsetX,y=s.boxShadowOffsetY,k=s.boxShadowBlurRadius,x=s.boxShadowSpreadRadius,w=s.boxShadowColor,C=s.boxShadowColorAlpha,S=t.individualLayout,O=t.customCss.antiAdBlocker,A=t.mobile,D=t.pageRequestUuid4,E=t.individualPrivacyOpen,Z=A.alignment,I=(0,q.D)(A,D,n,"banner"),B=(0,q.D)(A,D,l),T="dialog"===I?+(E&&!S.inheritDialogMaxWidth?S.dialogMaxWidth:r):"100%",N=(0,V.Z)({pointerEvents:"all",transition:"width 500ms, max-width 500ms",maxWidth:T,textAlign:f,width:T,overflow:"hidden",alignSelf:(0,q.D)(A,D,"banner"===I?"top"===a?"flex-start":"flex-end":void 0,"bottom"===Z?"flex-end":"top"===Z?"flex-start":"center"),fontFamily:h?void 0:v,fontWeight:b,color:p,margin:"dialog"===I?10:void 0,borderRadius:"dialog"===I?+c:void 0,boxShadow:m?"".concat(g,"px ").concat(y,"px ").concat(k,"px ").concat(x,"px ").concat($(w,C)):void 0},"banner"===I?"top"===a?"borderBottom":"borderTop":"border","banner"===I&&B>0?"".concat(B,"px solid ").concat(d):void 0),"dialog"===I&&"middleCenter"!==o&&(N.margin=i.map((function(t){return"".concat(t,"px")})).join(" ")),{className:"y"===O?void 0:"rcb-inner",style:N})),ee(te,null))},re=n(7029).h,oe=function(){var t=(0,_.S)(),e=t.layout,n=e.overlay,r=(e.overlayBlur,t.customCss),i=r.antiAdBlocker,s=r.css,l=t.visible,d=t.animationVisible,f=t.activeAction,p=t.skipOverlay,h=t.gotHiddenDueLegal,v=t.pageRequestUuid4,b=t.individualPrivacyOpen,m=R(t),g=l&&!m||!!f;(0,F.G)(i?s:""),(0,F.G)("#".concat(v,", #").concat(v," * {box-sizing: border-box;backface-visibility:initial;text-transform: initial;}")),function(t){(0,c.d4)((function(){var e=document.body,n=e.dataset,r=e.style;void 0===n.rcbPreviousOverflow&&(n.rcbPreviousOverflow=r.overflow),r.overflow=t?"hidden":n.rcbPreviousOverflow,document.body.parentElement.style.overflow=r.overflow}),[t])}(g&&n&&d);var y,k,x,w,C=(0,c.eJ)(0),S=(0,u.Z)(C,2)[1],O=function(){return S(+new Date)};if((0,c.bt)((function(){return window.addEventListener("resize",O),function(){return window.removeEventListener("resize",O)}}),[]),(0,c.bt)((function(){(0,U.s)(1e3)}),[d,b]),h&&(0,c.d4)((function(){h(m)}),[m]),function(){var t=(0,_.S)(),e=t.consent,n=t.groups,r=t.tcf,i=t.activeAction,s=t.selectHistoryEntry,l=t.fetchHistory,d=(0,c.eJ)({consent:e,groups:n,tcf:r}),f=(0,u.Z)(d,2),p=f[0],h=f[1];(0,c.d4)((function(){i||h({consent:e,groups:n,tcf:r})}),[e,n,r,i]),(0,c.d4)((function(){function t(){return(t=(0,o.Z)(a().mark((function t(){var e,n,r,o,i,c;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,l();case 2:(e=t.sent).length?(n=(0,u.Z)(e,1),r=n[0],o=r.groups,i=r.decision,c=r.tcf,s(o,i,c)):s([],[]);case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}if("history"===i)h({consent:e,groups:n,tcf:r}),function(){t.apply(this,arguments)}();else{var c=p.groups,d=p.consent.groups,f=p.tcf;null==s||s(c,d,f)}}),[i])}(),y=(0,_.S)(),k=y.openBanner,x=y.openHistory,w=y.revokeConsent,(0,c.d4)((function(){var t=function(t,e,n){if(k)switch(t){case"change":k(n);break;case"history":x(n);break;case"revoke":w(e,n)}},e=function(e){if(k){var n=e.target;(0,M.w)(n,G).concat((0,j.D)(n,G)?[n]:[]).forEach((function(n){t(n.getAttribute("href").slice(9),n.getAttribute("data-success-message"),e)})),(0,j.D)(n,".rcb-sc-link")&&t(n.getAttribute("href").slice(1),n.getAttribute("data-success-message"),e)}},n=function(){var e=window.location.hash;e.startsWith("#consent-")&&t(e.substring(9),void 0,void 0)};return window.addEventListener("hashchange",n),document.addEventListener("click",e,!0),function(){window.removeEventListener("hashchange",n),document.removeEventListener("click",e,!0)}}),[k,x,w]),!g)return null;var A=re("div",function(t){var e=t.layout,n=e.type,r=e.dialogPosition,o=t.customCss.antiAdBlocker,i=t.mobile,a=t.pageRequestUuid4,c={display:"flex",width:"100%",height:"100%"};return"dialog"===(0,q.D)(i,a,n,"banner")&&(c.alignItems=r.startsWith("top")?"flex-start":r.startsWith("bottom")?"flex-end":"center",c.justifyContent=r.endsWith("Center")?"center":r.endsWith("Left")?"flex-start":"flex-end"),{className:"wp-exclude-emoji ".concat("y"===o?"":"rcb-align"),style:c}}(t),re(ne,null));return p?A:re("div",(0,Y.Z)({id:v},function(t){var e=t.layout,n=e.type,r=e.overlay,o=e.overlayBg,i=e.overlayBgAlpha,a=t.design.fontSize,c=t.customCss.antiAdBlocker,s=t.mobile,u=t.pageRequestUuid4;return{className:"y"===c?void 0:"rcb-bann3r rcb-bann3r-".concat((0,q.D)(s,u,n,"banner")," ").concat(r?"":"overlay-deactivated"),style:{background:r?$(o,i):"none",position:"fixed",top:0,left:0,right:0,bottom:0,zIndex:99999,pointerEvents:r?"all":"none",fontSize:(0,q.D)(s,u,+a),filter:"none"}}}(t)),A)},ie={path:"/consent",method:N.O.GET},ae=n(1100),ce=n(7029).h,se=function(t){var e,n=t.poweredLink,r=(0,l.u)(),i=r.customizeValuesBanner,p=i.layout,h=i.decision,v=i.legal,b=i.design,m=i.headerDesign,g=i.bodyDesign,k=i.footerDesign,C=i.texts,S=i.individualLayout,A=i.saveButton,D=i.group,Z=i.individualTexts,N=i.customCss,Y=i.mobile,U=r.pageId,F=r.pageRequestUuid4,M=r.pageIdToPermalink,j=r.consentForwardingExternalHosts,G=r.essentialGroup,q=r.isTcf,X=r.isEPrivacyUSA,V=r.isAgeNotice,J=r.isListServicesNotice,$=r.tcf,Q=r.tcfMetadata,K=r.groups,tt=r.userConsentCookieName,et=r.bannerI18n,nt=r.affiliate,rt=r.isCurrentlyInTranslationEditorPreview,ot=r.pageByIdUrl,it=(0,w.h)(tt),at=function(t,e,n){return(0,c.Ye)((function(){}),[t,e,n])}(q,$,Q),ct=function(t){var e=W(),n=(0,c.I4)((function(n,r){var o=n.layout,i=o.animationInDuration,a=o.animationOutDuration,c=e(o),u=c.useAnimationIn,l=c.useAnimationOut,d=r?"none"===u?0:i:"none"===l?0:a;d>0&&(t.style.transition="background ".concat(d,"ms")),t.style.background="transparent",r?(setTimeout((function(){t.style.display="block"}),0),setTimeout((function(){var e=t.getAttribute("data-bg");t.style.background=e?e.split(":")[1].trim().replace(";",""):"transparent"}),100)):setTimeout((function(){t.style.display="none"}),d);var f={animationVisible:r};return r?(0,s.Z)({visible:!0},f):f}),[e]);return{overlay:t,toggleOverlay:n}}(document.getElementById(F)),st=ct.toggleOverlay,ut=function(t){var e=t.toggleOverlay,n=t.revokeConsent,r=function(t,n){return t((function(t){return(0,s.Z)((0,s.Z)({},t),{},{activeAction:n,individualPrivacyOpen:!0,refreshSiteAfterSave:"change"===n&&2e3},e(t,!0))}))};return{openHistory:function(t){r(t,"history"),H(arguments.length<=1?void 0:arguments[1])},openBanner:function(t){r(t,"change"),H(arguments.length<=1?void 0:arguments[1])},revokeConsent:function(t){for(var e=arguments.length,r=new Array(e>1?e-1:0),o=1;o<e;o++)r[o-1]=arguments[o];var i=r[0],a=r[1];t((function(t){return n(t).then((function(){i&&alert(i),setTimeout((function(){return window.location.reload()}),2e3)})),t})),H(a)},updateTcfFilterBy:function(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var o=n[0];t((function(t){return(0,s.Z)((0,s.Z)({},t),{},{tcfFilterBy:o})}))},updateIndividualPrivacyOpen:function(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var o=n[0];t((function(t){return(0,s.Z)((0,s.Z)({},t),{},{individualPrivacyOpen:o})}))},updateGroupChecked:function(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var o=n[0],i=n[1];t((function(t){var e=JSON.parse(JSON.stringify(t.consent));return i?e.groups[o]=t.groups.filter((function(t){return t.id===o}))[0].items.map((function(t){return t.id})):delete e.groups[o],(0,s.Z)((0,s.Z)({},t),{},{consent:e,didGroupFirstChange:!0})}))},updateCookieChecked:function(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var o=n[0],i=n[1],a=n[2];t((function(t){var e=JSON.parse(JSON.stringify(t.consent));e.groups[o]||(e.groups[o]=[]);var n=e.groups[o],r=n.indexOf(i);return a&&-1===r?n.push(i):!a&&r>-1&&n.splice(r,1),n.length||delete e.groups[o],(0,s.Z)((0,s.Z)({},t),{},{consent:e})}))},onClose:function(t){t((function(t){return(0,s.Z)((0,s.Z)((0,s.Z)({},t),e(t,!1)),{},{refreshSiteAfterSave:!1})}))},selectHistoryEntry:function(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var o=n[0],i=n[1],a=n[2];t((function(t){var e={isTcf:!!a,tcf:null};return(0,s.Z)((0,s.Z)({},t),{},{groups:o,consent:(0,s.Z)((0,s.Z)({},t.consent),{},{groups:i})},e)}))}}}({toggleOverlay:st,revokeConsent:function(t){return t.tcf,(0,z.$)({consent:{groups:(0,f.b)().getDefaultDecision(!0)},buttonClicked:"shortcode_revoke",tcfString:void 0})}}),lt=ut.openHistory,dt=ut.openBanner,ft=ut.revokeConsent,pt=ut.updateTcfFilterBy,ht=ut.updateIndividualPrivacyOpen,vt=ut.updateGroupChecked,bt=ut.updateCookieChecked,mt=ut.onClose,gt=ut.selectHistoryEntry,yt=(0,c.eJ)({layout:(0,s.Z)({},p),decision:(0,s.Z)({},h),legal:(0,s.Z)({},v),design:(0,s.Z)({},b),headerDesign:(0,s.Z)({},m),bodyDesign:(0,s.Z)({},g),footerDesign:(0,s.Z)({},k),texts:(0,s.Z)({},C),individualLayout:(0,s.Z)({},S),saveButton:(0,s.Z)({},A),group:(0,s.Z)({},D),individualTexts:(0,s.Z)({},Z),customCss:(0,s.Z)({},N),mobile:(0,s.Z)({},Y),productionNotice:ce(ae.Z,null),pageRequestUuid4:F,pageIdToPermalink:M,pageByIdUrl:ot,consentForwardingExternalHosts:j,pageId:U,isTcf:q,ePrivacyUSA:X,ageNotice:V,listServicesNotice:J,tcf:at,tcfFilterBy:"legInt",groups:K,essentialGroup:G,poweredLink:n,visible:!1,animationVisible:!0,skipOverlay:!0,previewCheckboxActiveState:!1,individualPrivacyOpen:!1,i18n:et,keepVariablesInTexts:rt,affiliate:nt,consent:{groups:(0,s.Z)((0,s.Z)({},!1===it?{}:it.consent),(0,f.b)().getDefaultDecision(!1===it))},didGroupFirstChange:!1,onSave:function(t,e){wt((function(n){var r=(0,z.$)({consent:n.consent,markAsDoNotTrack:t,buttonClicked:e,tcfString:void 0});return n.refreshSiteAfterSave?(r.then((function(){return setTimeout((function(){return window.location.reload()}),n.refreshSiteAfterSave||2e3)})),n):(0,s.Z)((0,s.Z)({},n),st(n,!1))}))},fetchHistory:(e=(0,o.Z)(a().mark((function t(){var e,n,r,o,i,c;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e=(0,d.m)(),n=e.restNamespace,r=e.restRoot,o=e.restQuery,i=e.restNonce,t.next=3,(0,T.D)({location:ie,options:{restNamespace:n,restRoot:r,restQuery:o,restNonce:i},sendRestNonce:!1});case 3:return c=t.sent,wt((function(t){return(0,s.Z)((0,s.Z)({},t),{},{history:c})})),t.abrupt("return",c);case 6:case"end":return t.stop()}}),t)}))),function(){return e.apply(this,arguments)}),updateTcfFilterBy:function(t){return pt(wt,t)},updateIndividualPrivacyOpen:function(t){return ht(wt,t)},updateGroupChecked:function(t,e){return vt(wt,t,e)},updateCookieChecked:function(t,e,n){return bt(wt,t,e,n)},onClose:function(){return mt(wt)},selectHistoryEntry:function(t,e,n){return gt(wt,t,e,n)},openHistory:function(t){return lt(wt,t)},openBanner:function(t){return dt(wt,t)},revokeConsent:function(t,e){return ft(wt,t,e)}}),kt=(0,u.Z)(yt,2),xt=kt[0],wt=kt[1];(function(t,e,n){(0,c.d4)((function(){if(!(0,l.u)().customizeIdsBanner){var r,i,c,u=(0,d.m)(),p=u.restNamespace,h=u.restRoot,v=u.restQuery,b=u.restNonce,m=u.others,g=m.isAcceptAllForBots,k=m.isPreventPreDecision,C=m.hasDynamicPreDecisions,S=m.isRespectDoNotTrack,A=t.onSave;!function(t,e){y.apply(this,arguments)}((0,f.b)(),{gateways:[x,(c=["login-action-"],(0,o.Z)(a().mark((function t(){var e;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e=document.body.className,t.abrupt("return",c.filter((function(t){return e.indexOf(t)>-1})).length>0&&"consent");case 2:case"end":return t.stop()}}),t)})))),E((function(){var t=document.documentElement,e=t.clientWidth,n=t.clientHeight;return(0,T.D)({location:P,options:{restNamespace:p,restRoot:h,restQuery:v,restNonce:b},sendRestNonce:!1,request:{viewPortWidth:e,viewPortHeight:n},params:{_wp_http_referer:window.location.href}})}),1e4,C),function(){var t=(0,o.Z)(a().mark((function t(e,n){return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",!!R(n)&&"consent");case 1:case"end":return t.stop()}}),t)})));return function(e,n){return t.apply(this,arguments)}}(),(i=k,function(){var t=(0,o.Z)(a().mark((function t(e){var n,r;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.decisionCookieName,r=(0,w.h)(n),t.abrupt("return",!(!i||!1!==r)&&(O()?"all":"consent"));case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),(r=!!g&&"all",function(){var t=(0,o.Z)(a().mark((function t(e){var n;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.decisionCookieName,!1===(0,w.h)(n)&&r){t.next=3;break}return t.abrupt("return",!1);case 3:return t.abrupt("return",!!O()&&r);case 4:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),I(S),B],args:[t],onIsDoNotTrack:function(){A(!0,"none")},onShowCookieBanner:function(){return e((function(t){return(0,s.Z)((0,s.Z)({},t),{},{consent:{groups:(0,f.b)().getDefaultDecision()}},n(t,!0))}))}})}}),[])})(xt,wt,st),function(t,e){(0,c.d4)((function(){var n=function(){var n=(0,w.h)(e);n&&t((function(t){return(0,s.Z)((0,s.Z)({},t),{},{consent:{groups:n.consent}})}))};return document.addEventListener(L.V,n),function(){document.removeEventListener(L.V,n)}}),[])}(wt,tt);var Ct=_.k.Context();return ce(Ct.Provider,{value:xt},ce(oe,null))},ue=n(6346),le=n(3102),de=n(9575),fe=n(55).default;function pe(t){return he.apply(this,arguments)}function he(){return he=(0,o.Z)(a().mark((function t(e){var n,r,o,i=arguments;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=i.length>1&&void 0!==i[1]?i[1]:500,r=i.length>2&&void 0!==i[2]?i[2]:0,o=0;case 3:if(e()){t.next=11;break}if(!(r>0&&o>=r)){t.next=6;break}return t.abrupt("return",void 0);case 6:return t.next=8,new fe((function(t){return setTimeout(t,n)}));case 8:o++,t.next=3;break;case 11:return t.abrupt("return",e());case 12:case"end":return t.stop()}}),t)}))),he.apply(this,arguments)}var ve=0,be={path:"/consent/clear",method:N.O.DELETE},me=n(9302),ge=n(1456),ye=n(1829);function ke(t,e,n){var r,o=[],i=(0,l.u)(),a=i.groups,c=i.revisionHash,s=a.map((function(t){return t.items})).flat(),u=(0,h.Z)(s);try{for(u.s();!(r=u.n()).done;){var d=r.value;if("number"==typeof t)d.id===t&&o.push({cookie:d,relevance:10});else{var f=d.technicalDefinitions;if(null!=f&&f.length){var p,v=(0,h.Z)(f);try{for(v.s();!(p=v.n()).done;){var b=p.value,m=(0,ye.L)(b.name);if(b.type===t&&(b.name===e||e.match(m))&&(b.host===n||"*"===n)){o.push({cookie:d,relevance:f.length+f.indexOf(b)+1});break}}}catch(t){v.e(t)}finally{v.f()}}}}}catch(t){u.e(t)}finally{u.f()}var g=(0,w.h)((0,l.u)().userConsentCookieName);if(o.length){var y=o.sort((function(t,e){return t.relevance-e.relevance}))[0].cookie;return g&&c===g.revision?Object.values(g.consent).flat().indexOf(y.id)>-1?{cookie:y,consentGiven:!0,cookieOptIn:!0}:{cookie:y,consentGiven:!0,cookieOptIn:!1}:{cookie:y,consentGiven:!1,cookieOptIn:!1}}return{cookie:null,consentGiven:!!g,cookieOptIn:!0}}var xe=n(55).default;function we(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return new xe((function(t,n){var r=ke.apply(void 0,e),i=r.cookie,c=r.consentGiven,s=r.cookieOptIn;i?c?s?t():n():(document.addEventListener(de.g,function(){var e=(0,o.Z)(a().mark((function e(n){return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.detail.cookie===i&&t();case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),document.addEventListener(ge.E,function(){var t=(0,o.Z)(a().mark((function t(e){return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:e.detail.cookie===i&&n();case 2:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}())):t()}))}var Ce=n(55).default;function Se(t){return Ce.all(t.map((function(t){return we.apply(void 0,(0,p.Z)(t))})))}var Oe=n(4312),Ae=n(5672),De=n(7029).h;n.p=(0,Oe.sE)({NODE_ENV:"production",env:"production",rootSlug:"devowl-wp",slug:"real-cookie-banner",PLUGIN_CTX:"lite",ANTD_PREFIX:"rcb-antd",IS_TCF:"0",TCF_CMP_ID:367}),document.addEventListener(de.g,function(){var t=(0,o.Z)(a().mark((function t(e){var n,r,i,c,s,u,l,d;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=e.detail.cookie,r=n.presetId,i=n.codeOptIn,c=n.codeDynamics,t.t0=r,t.next="amazon-associates-widget"===t.t0?4:"google-maps"===t.t0?16:18;break;case 4:if(!(s=(c||{}).amznAssoWidgetHtmlId)){t.next=15;break}if(!(u=document.getElementById(s))){t.next=15;break}return l=ve,ve++,(0,ue.K)(i,c,u),t.next=13,pe((function(){return document.querySelector('[id^="amzn_assoc_ad_div_"][id$="'.concat(l,'"]'))}),500,50);case 13:(d=t.sent)&&u.appendChild(d);case 15:return t.abrupt("break",19);case 16:return document.addEventListener(le.T,function(){var t=(0,o.Z)(a().mark((function t(e){var n,r,o,i;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.detail.element,r=window,o=r.et_pb_map_init,!((i=r.jQuery)&&n.matches(".et_pb_map")&&o)){t.next=6;break}return t.next=5,pe((function(){return window.google}));case 5:o(i(n).parent());case 6:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),t.abrupt("break",19);case 18:return t.abrupt("break",19);case 19:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),(0,l.u)().isTcf,(0,g.C)((function(){var t,e,n=(0,l.u)().pageRequestUuid4,r=(0,Ae.U)(n),i=function(t){var e=document.body;return t.parentElement!==e&&e.appendChild(t),t}(document.getElementById(n));t=(0,f.b)(),e=Array.prototype.slice.call(document.querySelectorAll(".rcb-consent-history-uuids")),document.addEventListener(m.I,(function(){e.forEach((function(t){return t.innerHTML=t.getAttribute("data-fallback")}))})),document.addEventListener(L.V,(function(){var n=(0,w.h)(t instanceof v.G?t.getOption("decisionCookieName"):t),r=n?[n.uuid].concat((0,p.Z)(n.previousUuids)):[];e.forEach((function(t){return t.innerHTML=r.length>0?r.join(", "):t.getAttribute("data-fallback")}))})),document.addEventListener(ge.E,function(){var t=(0,o.Z)(a().mark((function t(e){var n;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:(n=e.detail.deleteHttpCookies).length&&setTimeout((function(){return t=n,r=(e=(0,d.m)()).restNamespace,o=e.restRoot,i=e.restQuery,a=e.restNonce,(0,T.D)({location:be,options:{restNamespace:r,restRoot:o,restQuery:i,restNonce:a},sendRestNonce:!1,params:{cookies:t.join(",")}});var t,e,r,o,i,a}),0);case 2:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),i&&(0,c.sY)(De(se,{poweredLink:r}),i)}),"interactive"),window&&(window.consentApi=r)},1100:function(t,e,n){"use strict";n.d(e,{Z:function(){return i}});var r=n(3438),o=n(7029).h,i=function(){var t=(0,r.u)(),e=t.isPro,n=t.isLicensed,i=t.isDevLicense,a=t.bannerI18n,c=a.noLicense,s=a.devLicense;if(!e)return null;var u="";return i?u=s:n||(u=c),u?o("div",{style:{fontSize:13,color:"#c95252",fontWeight:"bold",order:9}},u):null}},6423:function(t,e,n){"use strict";n.d(e,{$:function(){return m}});var r=n(2711),o=n(7938),i=n(5450),a=n.n(i),c={path:"/consent",method:n(6811).O.POST},s=n(625),u=n(38),l=n(3438),d=n(9448).default,f=n(55).default;function p(t){var e=t.endpoints,n=t.data;if((0,l.u)().isPro){var r,o=[],i=(0,u.Z)(e);try{for(i.s();!(r=i.n()).done;){var a=r.value;o.push(d(a,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json;charset=utf-8"},body:JSON.stringify(n)}))}}catch(t){i.e(t)}finally{i.f()}return f.all(o)}return f.reject()}var h=n(6886),v=n(3075),b=n(55).default;function m(t){return g.apply(this,arguments)}function g(){return(g=(0,o.Z)(a().mark((function t(e){var n,o,i,u,l,d,f,m,g,y,k,x,w,C,S,O,A,D,E,Z,I;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.consent,o=e.markAsDoNotTrack,i=void 0!==o&&o,u=e.buttonClicked,l=e.blocker,d=void 0===l?0:l,f=e.blockerThumbnail,m=e.tcfString,g=document.documentElement,y=g.clientWidth,k=g.clientHeight,x=(0,s.m)(),w=x.restNamespace,C=x.restRoot,S=x.restQuery,O=x.restNonce,t.next=5,(0,v.D)({location:c,options:{restNamespace:w,restRoot:C,restQuery:S,restNonce:O},sendRestNonce:!1,request:(0,r.Z)((0,r.Z)({},n),{},{markAsDoNotTrack:i,buttonClicked:u,viewPortWidth:y,viewPortHeight:k,blocker:d,blockerThumbnail:f,tcfString:m}),params:{_wp_http_referer:window.location.href}});case 5:return A=t.sent,D=A.forward,E=A.uuid,Z=A.cookie_revision,I=A.decision_in_cookie,window.rcbDisabledCookieComp={uuid:E,previousUuids:[],revision:Z,consent:I},t.next=13,b.all([D&&p(D),(0,h.b)().applyCookies({type:"consent"})].filter(Boolean));case 13:case"end":return t.stop()}}),t)})))).apply(this,arguments)}},6886:function(t,e,n){"use strict";n.d(e,{b:function(){return a}});var r=n(8218),o=n(625),i=n(3438);function a(){var t,e=(0,i.u)(),n=e.userConsentCookieName,a=e.revisionHash,c=e.setCookiesViaManager,s=e.groups,u=e.essentialGroup;return window.rcbConsentManager||(window.rcbConsentManager=new r.G({decisionCookieName:n,essentialGroupSlug:u,groups:s,revisionHash:a,supportsCookiesName:"real_cookie_banner-test",tagManager:c,skipOptIn:function(t){var e=t.presetId;return["amazon-associates-widget"].indexOf(e)>-1},cmpId:367,cmpVersion:("major",t=(0,o.m)().version.split("."),+t[0]),tcfCookieName:"".concat(n,"-tcf")})),window.rcbConsentManager}},625:function(t,e,n){"use strict";function r(){return window["real-cookie-banner".replace(/-([a-z])/g,(function(t){return t[1].toUpperCase()}))]}n.d(e,{m:function(){return r}})},3438:function(t,e,n){"use strict";n.d(e,{u:function(){return o}});var r=n(625);function o(){return(0,r.m)().others}},6652:function(){String.prototype.startsWith||(String.prototype.startsWith=function(t,e){return e=e||0,this.indexOf(t,e)===e}),String.prototype.endsWith||(String.prototype.endsWith=function(t,e){var n=this.toString();("number"!=typeof e||!isFinite(e)||Math.floor(e)!==e||e>n.length)&&(e=n.length),e-=t.length;var r=n.indexOf(t,e);return-1!==r&&r===e}),null==Element.prototype.getAttributeNames&&(Element.prototype.getAttributeNames=function(){for(var t=this.attributes,e=t.length,n=new Array(e),r=0;r<e;r++)n[r]=t[r].name;return n}),"function"!=typeof window.CustomEvent&&(window.CustomEvent=function(t,e){e=e||{bubbles:!1,cancelable:!1,detail:null};var n=document.createEvent("CustomEvent");return n.initCustomEvent(t,e.bubbles,e.cancelable,e.detail),n}),Object.values=Object.values?Object.values:function(t){var e=Object.prototype.toString.call(t);if(null==t)throw new TypeError("Cannot convert undefined or null to object");if(~["[object String]","[object Object]","[object Array]","[object Function]"].indexOf(e)){if(Object.keys)return Object.keys(t).map((function(e){return t[e]}));var n=[];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&n.push(t[r]);return n}return[]},"function"!=typeof Object.assign&&Object.defineProperty(Object,"assign",{value:function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];var r=e[0];if(null==r)throw new TypeError("Cannot convert undefined or null to object");for(var o=Object(r),i=1;i<e.length;i++){var a=e[i];if(null!=a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(o[c]=a[c])}return o},writable:!0,configurable:!0}),[Element.prototype,CharacterData.prototype,DocumentType.prototype].forEach((function(t){t.hasOwnProperty("remove")||Object.defineProperty(t,"remove",{configurable:!0,enumerable:!0,writable:!0,value:function(){this.parentNode.removeChild(this)}})}))},3428:function(t){"use strict";t.exports="/*! Hint.css - v2.7.0 - 2021-10-01\n* https://kushagra.dev/lab/hint/\n* Copyright (c) 2021 Kushagra Gour */\n\n[class*=hint--]{position:relative;display:inline-block}[class*=hint--]:after,[class*=hint--]:before{position:absolute;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);transform:translate3d(0,0,0);visibility:hidden;opacity:0;z-index:1000000;pointer-events:none;-webkit-transition:.3s ease;-moz-transition:.3s ease;transition:.3s ease;-webkit-transition-delay:0s;-moz-transition-delay:0s;transition-delay:0s}[class*=hint--]:hover:after,[class*=hint--]:hover:before{visibility:visible;opacity:1;-webkit-transition-delay:.1s;-moz-transition-delay:.1s;transition-delay:.1s}[class*=hint--]:before{content:'';position:absolute;background:0 0;border:6px solid transparent;z-index:1000001}[class*=hint--]:after{background:#383838;color:#fff;padding:8px 10px;font-size:12px;font-family:\"Helvetica Neue\",Helvetica,Arial,sans-serif;line-height:12px;white-space:nowrap;text-shadow:0 -1px 0 #000;box-shadow:4px 4px 8px rgba(0,0,0,.3)}[class*=hint--][aria-label]:after{content:attr(aria-label)}[class*=hint--][data-hint]:after{content:attr(data-hint)}[aria-label='']:after,[aria-label='']:before,[data-hint='']:after,[data-hint='']:before{display:none!important}.hint--top-left:before,.hint--top-right:before,.hint--top:before{border-top-color:#383838}.hint--bottom-left:before,.hint--bottom-right:before,.hint--bottom:before{border-bottom-color:#383838}.hint--top:after,.hint--top:before{bottom:100%;left:50%}.hint--top:before{margin-bottom:-11px;left:calc(50% - 6px)}.hint--top:after{-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);transform:translateX(-50%)}.hint--top:hover:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--top:hover:after{-webkit-transform:translateX(-50%) translateY(-8px);-moz-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}.hint--bottom:after,.hint--bottom:before{top:100%;left:50%}.hint--bottom:before{margin-top:-11px;left:calc(50% - 6px)}.hint--bottom:after{-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);transform:translateX(-50%)}.hint--bottom:hover:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--bottom:hover:after{-webkit-transform:translateX(-50%) translateY(8px);-moz-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}.hint--right:before{border-right-color:#383838;margin-left:-11px;margin-bottom:-6px}.hint--right:after{margin-bottom:-14px}.hint--right:after,.hint--right:before{left:100%;bottom:50%}.hint--right:hover:after,.hint--right:hover:before{-webkit-transform:translateX(8px);-moz-transform:translateX(8px);transform:translateX(8px)}.hint--left:before{border-left-color:#383838;margin-right:-11px;margin-bottom:-6px}.hint--left:after{margin-bottom:-14px}.hint--left:after,.hint--left:before{right:100%;bottom:50%}.hint--left:hover:after,.hint--left:hover:before{-webkit-transform:translateX(-8px);-moz-transform:translateX(-8px);transform:translateX(-8px)}.hint--top-left:after,.hint--top-left:before{bottom:100%;left:50%}.hint--top-left:before{margin-bottom:-11px;left:calc(50% - 6px)}.hint--top-left:after{-webkit-transform:translateX(-100%);-moz-transform:translateX(-100%);transform:translateX(-100%);margin-left:12px}.hint--top-left:hover:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--top-left:hover:after{-webkit-transform:translateX(-100%) translateY(-8px);-moz-transform:translateX(-100%) translateY(-8px);transform:translateX(-100%) translateY(-8px)}.hint--top-right:after,.hint--top-right:before{bottom:100%;left:50%}.hint--top-right:before{margin-bottom:-11px;left:calc(50% - 6px)}.hint--top-right:after{-webkit-transform:translateX(0);-moz-transform:translateX(0);transform:translateX(0);margin-left:-12px}.hint--top-right:hover:after,.hint--top-right:hover:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--bottom-left:after,.hint--bottom-left:before{top:100%;left:50%}.hint--bottom-left:before{margin-top:-11px;left:calc(50% - 6px)}.hint--bottom-left:after{-webkit-transform:translateX(-100%);-moz-transform:translateX(-100%);transform:translateX(-100%);margin-left:12px}.hint--bottom-left:hover:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--bottom-left:hover:after{-webkit-transform:translateX(-100%) translateY(8px);-moz-transform:translateX(-100%) translateY(8px);transform:translateX(-100%) translateY(8px)}.hint--bottom-right:after,.hint--bottom-right:before{top:100%;left:50%}.hint--bottom-right:before{margin-top:-11px;left:calc(50% - 6px)}.hint--bottom-right:after{-webkit-transform:translateX(0);-moz-transform:translateX(0);transform:translateX(0);margin-left:-12px}.hint--bottom-right:hover:after,.hint--bottom-right:hover:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--large:after,.hint--medium:after,.hint--small:after{white-space:normal;line-height:1.4em;word-wrap:break-word}.hint--small:after{width:80px}.hint--medium:after{width:150px}.hint--large:after{width:300px}.hint--error:after{background-color:#b34e4d;text-shadow:0 -1px 0 #592726}.hint--error.hint--top-left:before,.hint--error.hint--top-right:before,.hint--error.hint--top:before{border-top-color:#b34e4d}.hint--error.hint--bottom-left:before,.hint--error.hint--bottom-right:before,.hint--error.hint--bottom:before{border-bottom-color:#b34e4d}.hint--error.hint--left:before{border-left-color:#b34e4d}.hint--error.hint--right:before{border-right-color:#b34e4d}.hint--warning:after{background-color:#c09854;text-shadow:0 -1px 0 #6c5328}.hint--warning.hint--top-left:before,.hint--warning.hint--top-right:before,.hint--warning.hint--top:before{border-top-color:#c09854}.hint--warning.hint--bottom-left:before,.hint--warning.hint--bottom-right:before,.hint--warning.hint--bottom:before{border-bottom-color:#c09854}.hint--warning.hint--left:before{border-left-color:#c09854}.hint--warning.hint--right:before{border-right-color:#c09854}.hint--info:after{background-color:#3986ac;text-shadow:0 -1px 0 #1a3c4d}.hint--info.hint--top-left:before,.hint--info.hint--top-right:before,.hint--info.hint--top:before{border-top-color:#3986ac}.hint--info.hint--bottom-left:before,.hint--info.hint--bottom-right:before,.hint--info.hint--bottom:before{border-bottom-color:#3986ac}.hint--info.hint--left:before{border-left-color:#3986ac}.hint--info.hint--right:before{border-right-color:#3986ac}.hint--success:after{background-color:#458746;text-shadow:0 -1px 0 #1a321a}.hint--success.hint--top-left:before,.hint--success.hint--top-right:before,.hint--success.hint--top:before{border-top-color:#458746}.hint--success.hint--bottom-left:before,.hint--success.hint--bottom-right:before,.hint--success.hint--bottom:before{border-bottom-color:#458746}.hint--success.hint--left:before{border-left-color:#458746}.hint--success.hint--right:before{border-right-color:#458746}.hint--always:after,.hint--always:before{opacity:1;visibility:visible}.hint--always.hint--top:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--always.hint--top:after{-webkit-transform:translateX(-50%) translateY(-8px);-moz-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}.hint--always.hint--top-left:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--always.hint--top-left:after{-webkit-transform:translateX(-100%) translateY(-8px);-moz-transform:translateX(-100%) translateY(-8px);transform:translateX(-100%) translateY(-8px)}.hint--always.hint--top-right:after,.hint--always.hint--top-right:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--always.hint--bottom:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--always.hint--bottom:after{-webkit-transform:translateX(-50%) translateY(8px);-moz-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}.hint--always.hint--bottom-left:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--always.hint--bottom-left:after{-webkit-transform:translateX(-100%) translateY(8px);-moz-transform:translateX(-100%) translateY(8px);transform:translateX(-100%) translateY(8px)}.hint--always.hint--bottom-right:after,.hint--always.hint--bottom-right:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--always.hint--left:after,.hint--always.hint--left:before{-webkit-transform:translateX(-8px);-moz-transform:translateX(-8px);transform:translateX(-8px)}.hint--always.hint--right:after,.hint--always.hint--right:before{-webkit-transform:translateX(8px);-moz-transform:translateX(8px);transform:translateX(8px)}.hint--rounded:after{border-radius:4px}.hint--no-animate:after,.hint--no-animate:before{-webkit-transition-duration:0s;-moz-transition-duration:0s;transition-duration:0s}.hint--bounce:after,.hint--bounce:before{-webkit-transition:opacity .3s ease,visibility .3s ease,-webkit-transform .3s cubic-bezier(.71,1.7,.77,1.24);-moz-transition:opacity .3s ease,visibility .3s ease,-moz-transform .3s cubic-bezier(.71,1.7,.77,1.24);transition:opacity .3s ease,visibility .3s ease,transform .3s cubic-bezier(.71,1.7,.77,1.24)}.hint--no-shadow:after,.hint--no-shadow:before{text-shadow:initial;box-shadow:initial}.hint--no-arrow:before{display:none}"}},n={};function r(t){var o=n[t];if(void 0!==o)return o.exports;var i=n[t]={exports:{}};return e[t].call(i.exports,i,i.exports,r),i.exports}r.m=e,t=[],r.O=function(e,n,o,i){if(!n){var a=1/0;for(l=0;l<t.length;l++){n=t[l][0],o=t[l][1],i=t[l][2];for(var c=!0,s=0;s<n.length;s++)(!1&i||a>=i)&&Object.keys(r.O).every((function(t){return r.O[t](n[s])}))?n.splice(s--,1):(c=!1,i<a&&(a=i));if(c){t.splice(l--,1);var u=o();void 0!==u&&(e=u)}}return e}i=i||0;for(var l=t.length;l>0&&t[l-1][2]>i;l--)t[l]=t[l-1];t[l]=[n,o,i]},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(t,e){for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},function(){var t;r.g.importScripts&&(t=r.g.location+"");var e=r.g.document;if(!t&&e&&(e.currentScript&&(t=e.currentScript.src),!t)){var n=e.getElementsByTagName("script");n.length&&(t=n[n.length-1].src)}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=t}(),function(){var t={392:0};r.O.j=function(e){return 0===t[e]};var e=function(e,n){var o,i,a=n[0],c=n[1],s=n[2],u=0;if(a.some((function(e){return 0!==t[e]}))){for(o in c)r.o(c,o)&&(r.m[o]=c[o]);if(s)var l=s(r)}for(e&&e(n);u<a.length;u++)i=a[u],r.o(t,i)&&t[i]&&t[i][0](),t[a[u]]=0;return r.O(l)},n=self.webpackChunkrealCookieBanner_name_=self.webpackChunkrealCookieBanner_name_||[];n.forEach(e.bind(null,0)),n.push=e.bind(null,n.push.bind(n))}(),r.O(void 0,[568],(function(){return r(6652)}));var o=r.O(void 0,[568],(function(){return r(6946)}));o=r.O(o),realCookieBanner_banner=o}();
|
2 |
//# sourceMappingURL=banner.lite.js.map
|
1 |
+
var realCookieBanner_banner;!function(){var t,e={9382:function(t,e,n){"use strict";n.d(e,{n:function(){return T}});var r=n(7938),o=n(5450),i=n.n(o),a=n(4115),c=n(6346),s=n(38),u=n(63),l=n(7663),d=n(5245);function f(t){var e,n,o=t.decisionCookieName,a=t.tagManager,c=t.groups,f=t.essentialGroupSlug,p=t.type,h="none"!==a,v=c.filter((function(t){return t.slug===f})),b=(0,l.Z)(v,1)[0],m=(0,u.Z)({},b.id,b.items.map((function(t){return t.id})));if("consent"===p){var g=(0,d.h)(o);!1!==g?e=g.consent:(console.warn("Something went wrong while reading the cookie, fallback to essentials only..."),e=m)}return"essentials"===p&&(e=m),{isManagerActive:h,selectedGroups:e,iterateCookies:(n=(0,r.Z)(i().mark((function t(n){var r,o,a,u,l,d,f,h;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=(0,s.Z)(c),t.prev=1,r.s();case 3:if((o=r.n()).done){t.next=25;break}a=o.value,u=(0,s.Z)(a.items),t.prev=6,u.s();case 8:if((l=u.n()).done){t.next=15;break}return f=l.value,h="all"===p||(null===(d=e[a.id])||void 0===d?void 0:d.indexOf(f.id))>-1,t.next=13,n(a,f,h);case 13:t.next=8;break;case 15:t.next=20;break;case 17:t.prev=17,t.t0=t.catch(6),u.e(t.t0);case 20:return t.prev=20,u.f(),t.finish(20);case 23:t.next=3;break;case 25:t.next=30;break;case 27:t.prev=27,t.t1=t.catch(1),r.e(t.t1);case 30:return t.prev=30,r.f(),t.finish(30);case 33:case"end":return t.stop()}}),t,null,[[1,27,30,33],[6,17,20,23]])}))),function(t){return n.apply(this,arguments)})}}var p=n(9575);function h(t,e){var n,r,o;return t&&(r=(n=e).charAt(0).toUpperCase()+n.slice(1),o="googleTagManager"===e?"dataLayer":"_mtm"),{useVariableNameCamel:n,useVariableNamePascal:r,useGlobalObjectName:o}}var v=n(55).default;function b(t){return m.apply(this,arguments)}function m(){return m=(0,r.Z)(i().mark((function t(e){var n,o,s,u,l,d,b,m,g,y,k;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=[],o=f(e),s=o.isManagerActive,u=o.iterateCookies,l=e.tagManager,d=e.skipOptIn,(b=h(s,l)).useGlobalObjectName,m=b.useVariableNamePascal,g=!1,y=v.resolve(void 0),k=[],t.next=9,u(function(){var t=(0,r.Z)(i().mark((function t(e,r,o){var u,l,f,h,v;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:u=r.codeDynamics,l=r.codeOptIn,f=(0,a.Z)(r,["codeDynamics","codeOptIn"]),s&&f["thisIs".concat(m)],o&&(h=s&&f["codeOptInNo".concat(m)],v="function"==typeof d&&d(r),h||v||k.push((0,c.K)(l,u)),document.dispatchEvent(new CustomEvent(p.g,{detail:{group:e,cookie:r}})),n.push({group:e,cookie:r}));case 3:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}());case 9:return t.abrupt("return",{isManagerOptOut:g,dataLayerPromise:y,cookies:n,ready:v.all(k)});case 10:case"end":return t.stop()}}),t)}))),m.apply(this,arguments)}var g=n(55).default;function y(t,e,n){return k.apply(this,arguments)}function k(){return k=(0,r.Z)(i().mark((function t(e,n,o){var s,l,d,p,v,b,m,y;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(s=[],l=f(e),d=l.isManagerActive,p=l.iterateCookies,v=e.tagManager,b=h(d,v),m=b.useVariableNameCamel,y=b.useVariableNamePascal,!n){t.next=11;break}return p((function(t,e,r){var o=e["".concat(m,"InEventName")];r&&o&&n.push({realCookieBannerOptInEvents:(0,u.Z)({},o,!0),event:o})})),t.next=8,new g((function(t){return setTimeout(t,1e3)}));case 8:p((function(t,e,r){var o=e["".concat(m,"OutEventName")];!r&&o&&n.push({realCookieBannerOptOutEvents:(0,u.Z)({},o,!0),event:o})})),t.next=14;break;case 11:if(!d||!o){t.next=14;break}return t.next=14,p(function(){var t=(0,r.Z)(i().mark((function t(e,n,r){var o,u,l;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:o=n.codeDynamics,u=n.codeOptIn,l=(0,a.Z)(n,["codeDynamics","codeOptIn"]),r&&l["codeOptInNo".concat(y)]&&s.push((0,c.K)(u,o));case 2:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}());case 14:return t.abrupt("return",{ready:g.all(s)});case 15:case"end":return t.stop()}}),t)}))),k.apply(this,arguments)}var x=n(1456),w=n(8542),C=n.n(w),S=n(2891),A=n(1829);function O(t,e){var n,r=(0,s.Z)(t);try{for(r.s();!(n=r.n()).done;){var o=n.value,i=o.type,a=o.name,c=new RegExp((0,A.L)((0,S.c)(a,e)),"g");switch(i){case"http":for(var u=0,l=Object.keys(C().get());u<l.length;u++){var d=l[u];c.test(d)&&C().remove(d)}break;case"local":case"session":try{var f="local"===i?window.localStorage:window.sessionStorage;if(f)for(var p=0,h=Object.keys(f);p<h.length;p++){var v=h[p];if(c.test(v)){try{f.setItem(v,null)}catch(t){}for(var b=0;f.getItem(v)&&b<100;)b++,f.removeItem(v)}}}catch(t){continue}}}}catch(t){r.e(t)}finally{r.f()}}function D(t,e){return E.apply(this,arguments)}function E(){return E=(0,r.Z)(i().mark((function t(e,n){var o,s,u,l,d,p,v;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o=f(e),s=o.isManagerActive,u=o.iterateCookies,l=e.tagManager,d=h(s,l),p=d.useVariableNamePascal,v=[],t.next=6,u(function(){var t=(0,r.Z)(i().mark((function t(e,r,o){var u,l,d,f,h,b,m,g;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:u=r.id,l=r.codeDynamics,d=r.codeOptOut,f=r.codeOptOutDelete,h=r.noTechnicalDefinitions,b=r.technicalDefinitions,m=(0,a.Z)(r,["id","codeDynamics","codeOptOut","codeOptOutDelete","noTechnicalDefinitions","technicalDefinitions"]),o||(((g=s&&m["codeOptInNo".concat(p)])&&!n||!g)&&(0,c.K)(d,l),f&&!h&&(O(b,l),b.some((function(t){return"http"===t.type}))&&v.push(u)),document.dispatchEvent(new CustomEvent(x.E,{detail:{group:e,cookie:r,deleteHttpCookies:v}})));case 2:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}());case 6:case"end":return t.stop()}}),t)}))),E.apply(this,arguments)}var Z=n(7563),I=n(6028),B=n(55).default;function T(t){return N.apply(this,arguments)}function N(){return(N=(0,r.Z)(i().mark((function t(e){var n,r,o,a,c,s,u,l;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,(0,I.C)();case 2:return t.next=4,b(e);case 4:return n=t.sent,r=n.dataLayerPromise,o=n.isManagerOptOut,a=n.cookies,c=n.ready,t.t0=y,t.t1=e,t.next=13,r;case 13:return t.t2=t.sent,t.t3=o,t.next=17,(0,t.t0)(t.t1,t.t2,t.t3);case 17:return s=t.sent,u=s.ready,l=B.all([c,u]),document.dispatchEvent(new CustomEvent(Z.V,{detail:{cookies:a,ready:l}})),t.next=23,D(e,o);case 23:case"end":return t.stop()}}),t)})))).apply(this,arguments)}},8218:function(t,e,n){"use strict";n.d(e,{G:function(){return f}});var r=n(2711),o=n(6762),i=n(3340),a=n(9382),c=n(38),s=n(63),u=n(7663);function l(t){var e=t.groups,n=t.essentialGroupSlug,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=e.filter((function(t){return t.slug===n})),i=(0,u.Z)(o,1),a=i[0],l=(0,s.Z)({},a.id,a.items.map((function(t){return t.id})));if(r){var d,f=(0,c.Z)(e);try{for(f.s();!(d=f.n()).done;){var p=d.value;if(p!==a){var h=p.items.filter((function(t){return"legitimate-interest"===t.legalBasis})).map((function(t){return t.id}));h.length&&(l[p.id]=h)}}}catch(t){f.e(t)}finally{f.f()}}return l}var d=n(5245),f=function(){function t(e){(0,o.Z)(this,t),this.options=void 0,this.options=e}return(0,i.Z)(t,[{key:"applyCookies",value:function(t){return(0,a.n)((0,r.Z)((0,r.Z)({},t),this.options))}},{key:"getUserDecision",value:function(){return(0,d.h)(this.getOption("decisionCookieName"))}},{key:"getDefaultDecision",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return l(this.options,t)}},{key:"getOption",value:function(t){return this.options[t]}},{key:"getOptions",value:function(){return this.options}}]),t}()},5245:function(t,e,n){"use strict";n.d(e,{h:function(){return a}});var r=n(7663),o=n(965),i=n(4001);function a(t){var e=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=(0,o.Z)(document.cookie.matchAll(new RegExp("(^|;)\\s*".concat(t,"\\s*=\\s*([^;]+)"),"g")));if(!n.length)return"";var r=n.pop().pop();return e?decodeURIComponent(r):r}(t);if(!e)return!(0,i.E)()&&(window.rcbDisabledCookieComp||!1);var n=function(t,e,n){var r=t.split(":");if(r.length<=3)return r;var o=r.slice(0,2);return o.push(r.slice(2).join(":")),o}(e);if(3!==n.length)return!1;var a=(0,r.Z)(n,2),c=a[0],s=a[1],u=c.split(",");return{uuid:u.shift(),previousUuids:u,revision:s,consent:JSON.parse(n[2])}}},7766:function(t,e,n){"use strict";n.d(e,{I:function(){return r}});var r="RCB/Banner/Show"},9575:function(t,e,n){"use strict";n.d(e,{g:function(){return r}});var r="RCB/OptIn"},7563:function(t,e,n){"use strict";n.d(e,{V:function(){return r}});var r="RCB/OptIn/All"},1456:function(t,e,n){"use strict";n.d(e,{E:function(){return r}});var r="RCB/OptOut"},6028:function(t,e,n){"use strict";n.d(e,{C:function(){return o}});var r=n(55).default,o=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"complete";return new r((function(n){var r=function(){null==t||t(),setTimeout(n,0)};document.readyState===e?r():document.addEventListener("readystatechange",(function(){document.readyState===e&&r()}))}))}},1829:function(t,e,n){"use strict";function r(t){var e,n=t.replace(/\*/g,"PLEACE_REPLACE_ME_AGAIN");return"^".concat((e=n,e.replace(new RegExp("[.\\\\+*?\\[\\^\\]$(){}=!<>|:\\".concat("","-]"),"g"),"\\$&")).replace(/PLEACE_REPLACE_ME_AGAIN/g,"(.*)"),"$")}n.d(e,{L:function(){return r}})},4001:function(t,e,n){"use strict";function r(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"test";try{document.cookie="".concat(t,"=1");var e=-1!==document.cookie.indexOf("".concat(t,"="));return document.cookie="".concat(t,"=1; expires=Thu, 01-Jan-1970 00:00:01 GMT"),e}catch(t){return!1}}n.d(e,{E:function(){return r}})},2891:function(t,e,n){"use strict";n.d(e,{c:function(){return o}});var r=/{{([A-Za-z0-9_]+)}}/gm;function o(t,e){return t.replace(r,(function(t,n){return Object.prototype.hasOwnProperty.call(e,n)?e[n]:t}))}},4548:function(t,e,n){"use strict";n.d(e,{jb:function(){return r},zm:function(){return o},rG:function(){return i},d3:function(){return a},_W:function(){return c},NY:function(){return s},He:function(){return u},i7:function(){return l},Ng:function(){return d},CT:function(){return f},v4:function(){return p},YO:function(){return h},Gn:function(){return v},Ti:function(){return b},Ks:function(){return m},dW:function(){return g},Kh:function(){return y},Wm:function(){return k},Qt:function(){return x},of:function(){return w},fq:function(){return C},WK:function(){return S},jk:function(){return A},Kx:function(){return O}});var r="consent-original",o="consent-click-original",i="_",a="consent-by",c="consent-required",s="consent-visual-use-parent",u="consent-visual-paint-mode",l="consent-inline",d="consent-inline-style",f="consent-id",p="script",h="consent-blocker-connected",v="consent-blocker-connected-pres",b="consent-transaction-complete",m="consent-transform-wrapper",g="1",y="consent-strict-hidden",k="consent-cb-reset-parent",x="1",w="consent-cb-reset-parent-is-ratio",C="consent-got-clicked",S="1",A="2",O="consent-thumbnail"},6346:function(t,e,n){"use strict";n.d(e,{L:function(){return s},K:function(){return u}});var r=n(9749),o=n.n(r),i=n(2891),a=n(7033),c=n(55).default,s="rcbInitiatorOnload";function u(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:document.body;return new c((function(r){t?o()(n,(0,i.c)(t,e),{done:r,error:function(t){console.error(t)},beforeWriteToken:function(t){var e=t.attrs,n=t.booleanAttrs,r=t.src,o=t.href,i=t.content;if(null!=n&&n["skip-write"])return!1;for(var c in i&&(t.content=i.replace(/window\.onload\s+=/g,"window.".concat(s," ="))),e)if(e[c]=(0,a.l)(e[c]),"unique-write-name"===c&&document.querySelector('[unique-write-name="'.concat(e[c],'"]')))return!1;return r&&(t.src=(0,a.l)(r)),o&&(t.href=(0,a.l)(o)),t}}):r()}))}},3102:function(t,e,n){"use strict";n.d(e,{T:function(){return r}});var r="RCB/OptIn/ContentBlocker"},3743:function(t,e,n){"use strict";function r(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;setTimeout((function(){try{window.dispatchEvent(new Event("resize"))}catch(t){}}),t)}n.d(e,{s:function(){return r}})},7033:function(t,e,n){"use strict";n.d(e,{l:function(){return o}});var r=n(3137);function o(t){var e;return(0,r.C)(t)?null===(e=(new DOMParser).parseFromString('<a href="'.concat(t,'"></a>'),"text/html").querySelector("a"))||void 0===e?void 0:e.href:(new DOMParser).parseFromString(t,"text/html").documentElement.textContent}},3137:function(t,e,n){"use strict";function r(t){return!!/^(?:(?:https?|ftp):\/\/)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/\S*)?$/.test(t)}n.d(e,{C:function(){return r}})},9586:function(t,e,n){"use strict";n.d(e,{w:function(){return o}});var r=n(7932);function o(t,e){for(var n=[],o=t.parentElement;null!==o;)o.nodeType===Node.ELEMENT_NODE&&(0,r.D)(o,e)&&n.push(o),o=o.parentElement;return n}},4902:function(t,e,n){"use strict";n.d(e,{X:function(){return a}});var r=n(7663),o=n(5213),i=n(7029).h,a=function(t){var e=t.ms,n=void 0===e?100:e,a=t.chars,c=void 0===a?["◷","◶","◵","◴"]:a,s=(0,o.eJ)(1),u=(0,r.Z)(s,2),l=u[0],d=u[1];return(0,o.d4)((function(){var t=setInterval((function(){d(l+1)}),n);return function(){return clearInterval(t)}}),[l]),i("span",{dangerouslySetInnerHTML:{__html:c[l%4]}})}},229:function(t,e,n){"use strict";n.d(e,{V:function(){return k}});var r=n(4741),o=n(7663),i=n(5213),a=n(8982),c=n(7585),s=n(2260),u=n(3282),l=n(2711),d=n(3137),f=n(2121),p=n(2087),h=n(7029).h,v=function(t){var e=t.label,n=t.value,o=t.children,i=t.printValueAs,c=(0,a.w)(),s=c.i18n,u=s.yes,v=s.no,b="string"==typeof n&&(0,d.C)(n)?h("a",{href:n,style:(0,l.Z)({wordBreak:"break-all"},(0,f.c)(c,!1).style),target:"_blank",rel:"noopener noreferrer"},n):"string"==typeof n?h("span",{dangerouslySetInnerHTML:{__html:n}}):n;return"boolean"===i&&(b=b?u:v),h("div",(0,r.Z)({key:e},function(t){var e=t.group,n=e.groupBorderWidth,r=e.groupBorderColor,o=t.customCss.antiAdBlocker,i=t.mobile,a=t.pageRequestUuid4;return{className:"y"===o?void 0:"rcb-cookie-prop",style:{borderLeft:(a?(0,p.D)(i,a,n):n)>0?"1px solid ".concat(r):void 0,paddingLeft:15}}}(c)),e&&h("strong",null,e,": "),b,!!o&&h("div",null,o))},b=n(2891),m=n(7029).h,g=function(t){var e=t.cookie,n=e.purpose,r=e.provider,o=e.providerPrivacyPolicy,c=e.legalBasis,s=e.ePrivacyUSA,u=e.noTechnicalDefinitions,l=e.technicalDefinitions,d=e.codeDynamics,f=t.isEssentialGroup,p=(0,a.w)(),h=p.i18n,g=p.ePrivacyUSA,y={http:{name:"HTTP Cookie",abbr:"HTTP",backgroundColor:"black"},local:{name:"Local Storage",abbr:"Local",backgroundColor:"#b3983c"},session:{name:"Session Storage",abbr:"Session",backgroundColor:"#3c99b3"},flash:{name:"Flash Local Shared Object",abbr:"Flash",backgroundColor:"#b33c3c"},indexedDb:{name:"IndexedDB",abbr:"I-DB",backgroundColor:"#4ab33c"}};return m(i.HY,null,!!n&&m(v,{label:h.purpose,value:n}),m(v,{label:h.legalBasis,value:"legal-requirement"===c?h.legalRequirement:"legitimate-interest"===c||f?h.legitimateInterest:h.consent}),m(v,{label:h.provider,value:r}),!!o&&m(v,{label:h.providerPrivacyPolicy,value:o}),!!g&&m(v,{label:h.ePrivacyUSA,value:s,printValueAs:"boolean"}),!u&&l.map((function(t){var e=t.type,n=t.name,r=t.host,o=t.duration,i=t.durationUnit,a=t.sessionDuration,c=t.purpose;return m(v,{key:n,label:h.technicalCookieDefinition,value:m("span",{style:{fontFamily:"monospace"}},(0,b.c)(n,d))},m(v,{label:h.type,value:y[e].name}),!!c&&m(v,{label:h.purpose,value:c}),!!r&&m(v,{label:h.host,value:m("span",{style:{fontFamily:"monospace"}},r)}),m(v,{label:h.duration,value:["local","indexedDb","flash"].indexOf(e)>-1?h.noExpiration:a||"session"===e?"Session":"".concat(o," ").concat(h.durationUnit[i])}))})))},y=n(7029).h,k=function(t){var e=t.cookie,n=t.checked,l=t.disabled,d=t.onToggleCheck,f=t.propertyListProps,p=void 0===f?{}:f,h=e.name,v=(0,i.eJ)(!1),b=(0,o.Z)(v,2),m=b[0],k=b[1],x=(0,a.w)(),w=x.group.descriptionFontSize;return(0,i.bt)((function(){k(!0)}),[]),y("div",function(t){return{className:"y"===t.customCss.antiAdBlocker?void 0:"rcb-cookie",style:{marginTop:10}}}(x),y("div",{style:{marginBottom:10}},y(s.p,(0,r.Z)({icon:u.Z,onClick:d},(0,c.z)(x,m,n,l,w))),y("strong",{style:{verticalAlign:"middle"},onClick:d},h)),y(g,(0,r.Z)({cookie:e},p)))}},2260:function(t,e,n){"use strict";n.d(e,{p:function(){return s}});var r=n(4741),o=n(4115),i=n(5213),a=n(1680),c=n(7029).h,s=function(t){var e=t.icon,n=(0,o.Z)(t,["icon"]),s=(0,i.Ye)((function(){return(0,a.x)(e,{extraSVGAttrs:{style:"width:auto;height:100%;",fill:"currentColor"}})}),[e]);return c("div",(0,r.Z)({},n,{dangerouslySetInnerHTML:{__html:s}}))}},8523:function(t,e,n){"use strict";n.d(e,{u:function(){return u}});var r=n(4741),o=n(4115),i=n(5213),a=n(3428),c=n(9707),s=n(7029).h,u=(0,i.Gp)((function(t,e){var n=t.children,i=t.className,u=t.title,l=t.position,d=void 0===l?"top":l,f=t.color,p=t.size,h=void 0===p?"large":p,v=t.always,b=t.rounded,m=t.noAnimate,g=t.bounce,y=(0,o.Z)(t,["children","className","title","position","color","size","always","rounded","noAnimate","bounce"]);return(0,c.G)(a,"hint-css",!0),s("div",(0,r.Z)({style:{position:"relative",display:"inline"},ref:e,"aria-label":u,className:"hint--".concat(d," hint--").concat(h," ").concat(f?"hint--".concat(f):""," ").concat(v?"hint--always":""," ").concat(b?"hint--rounded":""," ").concat(m?"hint--no-animate":""," ").concat(g?"hint--bounce":""," ").concat(i||"")},y),n)}))},4766:function(t,e,n){"use strict";n.d(e,{k:function(){return a},S:function(){return c}});var r=n(6762),o=n(3340),i=n(5213),a=function(){function t(){(0,r.Z)(this,t)}return(0,o.Z)(t,null,[{key:"Context",value:function(t){function e(){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(){return this.context=this.context||(0,i.kr)({})}))}]),t}();function c(){return(0,i.qp)(a.Context())}a.context=void 0},1347:function(t,e,n){"use strict";n.d(e,{Z:function(){return a},_:function(){return c}});var r=n(6762),o=n(3340),i=n(5213),a=function(){function t(){(0,r.Z)(this,t)}return(0,o.Z)(t,null,[{key:"Context",value:function(t){function e(){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(){return this.context=this.context||(0,i.kr)({})}))}]),t}();function c(){return(0,i.qp)(a.Context())}a.context=void 0},6092:function(t,e,n){"use strict";n.d(e,{g:function(){return y}});var r=n(4741),o=n(965),i=n(5213),a=n(8982),c=n(3258),s=n(7663),u=n(4115),l=n(2087),d=n(7029).h,f=function(t){var e=t.children,n=(0,u.Z)(t,["children"]),o=(0,a.w)(),c=(0,i.eJ)(!1),f=(0,s.Z)(c,2),p=f[0],h=f[1];return d("a",(0,r.Z)({onMouseEnter:function(){return h(!0)},onMouseLeave:function(){return h(!1)}},function(t){var e=t.footerDesign,n=e.fontSize,r=e.fontColor,o=e.hoverFontColor,i=e.fontInheritFamily,a=e.fontFamily,c=t.design.linkTextDecoration,s=t.customCss.antiAdBlocker,u=t.mobile,d=t.pageRequestUuid4,f=arguments.length>1&&void 0!==arguments[1]&&arguments[1],p={textDecoration:c,fontSize:d?(0,l.D)(u,d,+n):+n,color:f?o:r,fontFamily:i?void 0:a,padding:"0 5px"};return{className:"y"===s?void 0:"rcb-footer-link",style:p}}(o,p),n),e)},p=n(8523),h=n(7029).h,v=function(t){var e=t.poweredLink,n=t.affiliate;return h(f,{href:n?n.link:e.href,target:e.target,key:"powered-by"},h("span",{dangerouslySetInnerHTML:{__html:e.innerHTML}}),n&&h(p.u,{title:n.description,position:"top-left"}," ",n.labelBehind))},b=n(7029).h;function m(t,e){var n=t.filter(Boolean);return 0===n.length?null:n.reduce((function(t,n,r){return t.length?[].concat((0,o.Z)(t),[b(i.HY,{key:r},e),n]):[n]}),[])}var g=n(7029).h;function y(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.onClose,n=t.putPoweredByLinkInRow,s=t.row1,u=(0,a.w)(),l=u.i18n.close,d=u.footerDesign,p=d.poweredByLink,h=d.linkTarget,b=u.poweredLink,y=u.affiliate,k=(0,c.p)(),x=k.linkPrivacyPolicy,w=k.linkImprint,C="_blank"===h?{target:"_blank",rel:"noopener"}:{},S=[[e&&g(f,{href:"#",onClick:e,key:"close"},g("strong",null,l))].concat((0,o.Z)(s||[]),[x&&g(f,(0,r.Z)({href:x.url},C,{key:"privacyPolicy"}),x.label),w&&g(f,(0,r.Z)({href:w.url},C,{key:"imprint"}),w.label)]).filter(Boolean),[]];b&&p&&S[n||0].push(g(v,{key:"poweredBy",poweredLink:b,affiliate:y}));var A=(0,i.I4)((function(t){return m(t.map((function(t){return t.length?g(i.HY,{key:t[0].key},m(t,g(i.HY,null," • "))):null})),g("br",null))}),[]);return{rows:S,render:A}}},6268:function(t,e,n){"use strict";n.d(e,{k:function(){return c}});var r=n(8982),o=n(3258);function i(t,e){return t.length>1&&t.splice(t.length-1,0,"{{andSeparator}}"),t.join(", ").replace(/,\s+{{andSeparator}},\s+/g,e)}var a='<sup style="vertical-align:top;line-height:100%;position:initial;">';function c(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.disableDataProcessingInUnsafeCountries,n=t.disableAgeNotice,c=t.disableListServicesNotice,s=(0,r.w)(),u=s.blocker,l=s.groups,d=s.ePrivacyUSA,f=s.ageNotice,p=s.listServicesNotice,h=s.texts,v=h.description,b=h.ePrivacyUSA,m=h.ageNoticeBanner,g=h.listServicesNotice,y=h.consentForwardingExternalHosts,k=s.tcf,x=s.consentForwardingExternalHosts,w=s.individualPrivacyOpen,C=s.individualTexts.description,S=s.essentialGroup,A=s.i18n,O=A.andSeparator,D=A.tcf,E=s.keepVariablesInTexts,Z=(0,o.p)(),I=Z.linkPrivacyPolicy,B="";x&&!E&&(B=y.replace(/{{websites}}/g,x.join(", ")));var T=[u?u.description:w?C:v,B].filter(Boolean).join(" ");E||(T=T.replace(/{{privacyPolicy}}(.*){{\/privacyPolicy}}/g,I?'<a href="'.concat(I.url,'" style="text-decoration:underline;color:inherit;" onmouseenter="this.style.textDecoration=\'none\'" onmouseleave="this.style.textDecoration=\'underline\'" target="_blank">$1</a>'):"$1"));var N=!e&&d?b:"",P=f&&!n?m:"",R="";if(p&&!c){var z=g.indexOf("{{services}}")>-1&&g.indexOf("{{serviceGroups}}")>-1,L=l.filter((function(t){return t.slug!==S})),W="~;~",H=i(L.map((function(t,e){return t.items.map((function(t){var n=t.name,r=t.ePrivacyUSA;return"".concat(n).concat(a).concat([z?e+1:"",N&&r?"U":""].filter(Boolean).join(","),"</sup>")})).join(W)})).join(W).split(W),O);if(H){var _=i(L.map((function(t,e){var n=t.name;return"".concat(n).concat(a).concat(z?e+1:"","</sup>")})),O);R="<span>".concat(g,"</span>").concat(k&&!w?"<span>".concat(D.listOfServicesAppendix,"</span>"):""),E||(R=R.replace(/{{services}}/g,H).replace(/{{serviceGroups}}/g,_)),N&&(N+="".concat(a,"U</sup>"))}}return{description:T,teachings:[N,P,R].filter(Boolean)}}},8982:function(t,e,n){"use strict";n.d(e,{w:function(){return i}});var r=n(4766),o=n(1347);function i(){var t=(0,r.S)(),e=(0,o._)();return t.groups?t:e}},3258:function(t,e,n){"use strict";n.d(e,{p:function(){return o}});var r=n(8982);function o(){var t=(0,r.w)(),e=t.legal,n=e.privacyPolicy,o=e.privacyPolicyExternalUrl,i=e.privacyPolicyIsExternalUrl,a=e.privacyPolicyLabel,c=e.imprint,s=e.imprintExternalUrl,u=e.imprintIsExternalUrl,l=e.imprintLabel,d=t.pageByIdUrl,f=(0,r.w)().pageIdToPermalink||{},p=n>0?f[n]||"".concat(d,"=").concat(n):void 0,h=c>0?f[c]||"".concat(d,"=").concat(c):void 0;return i&&(p=o),u&&(h=s),{linkPrivacyPolicy:!(!a||!p)&&{url:p,label:a},linkImprint:!(!l||!h)&&{url:h,label:l}}}},9707:function(t,e,n){"use strict";n.d(e,{G:function(){return i}});var r=n(5213),o=0;function i(t,e,n){var i=(0,r.Ye)((function(){return"react-use-plain-css-".concat(e||(o++).toString(36))}),[]);return(0,r.bt)((function(){var e=document.getElementById(i);return e||((e=document.createElement("style")).style.type="text/css",e.id=i,document.getElementsByTagName("head")[0].appendChild(e)),e.innerHTML=t,function(){var t;n||null===(t=e.parentNode)||void 0===t||t.removeChild(e)}}),[t,n]),i}},7613:function(t,e,n){"use strict";n.d(e,{W:function(){return o}});var r=n(2087);function o(t){var e=t.bodyDesign,n=e.teachingsInheritTextAlign,o=e.teachingsTextAlign,i=e.teachingsInheritFontSize,a=e.teachingsFontSize,c=e.teachingsInheritFontColor,s=e.teachingsFontColor,u=t.customCss.antiAdBlocker,l=t.mobile,d=t.pageRequestUuid4;return{className:"y"===u?void 0:"rcb-teachings",style:{marginTop:7,display:"inline-block",textAlign:n?void 0:o,fontSize:i?void 0:d?(0,r.D)(l,d,+a):+a,color:c?void 0:s}}}},8346:function(t,e,n){"use strict";function r(t){var e=t.layout.borderRadius,n=t.bodyDesign,r=n.teachingsSeparatorActive,o=n.teachingsSeparatorWidth,i=n.teachingsSeparatorHeight,a=n.teachingsSeparatorColor;return{className:"y"===t.customCss.antiAdBlocker?void 0:"rcb-teachings-separator",style:{marginTop:7,display:"inline-block",maxWidth:"100%",borderRadius:+e,width:+o,height:r?+i:0,background:a}}}n.d(e,{V:function(){return r}})},7585:function(t,e,n){"use strict";n.d(e,{z:function(){return o}});var r=n(2087);function o(t,e,n,o,i){var a=t.layout.borderRadius,c=t.group,s=c.headlineFontSize,u=c.checkboxBg,l=c.checkboxBorderWidth,d=c.checkboxBorderColor,f=c.checkboxActiveBg,p=c.checkboxActiveBorderColor,h=c.checkboxActiveColor,v=t.customCss.antiAdBlocker,b=t.mobile,m=t.pageRequestUuid4,g=i||s;g=m?(0,r.D)(b,m,g):g;var y=m?(0,r.D)(b,m,+l):+l,k=+g+2*y+6;return{className:"y"===v?void 0:"rcb-checkbox",style:{cursor:o?"not-allowed":"pointer",opacity:o?.5:void 0,color:n?h:u,display:e?"inline-block":"none",background:n?f:u,border:"".concat(y,"px solid ").concat(n?p:d),padding:3,height:k,width:k,marginRight:10,borderRadius:+a,verticalAlign:"middle",lineHeight:0,boxSizing:"border-box"}}}},2121:function(t,e,n){"use strict";function r(t,e){var n=t.design.linkTextDecoration,r=t.group,o=r.linkColor,i=r.linkHoverColor;return{className:"y"===t.customCss.antiAdBlocker?void 0:"rcb-group-more",style:{color:e?i:o,textDecoration:n}}}n.d(e,{c:function(){return r}})},6730:function(t,e,n){"use strict";n.d(e,{a:function(){return o}});var r=n(2087);function o(t,e){var n=t.headerDesign,o=n.fontSize,i=n.fontColor,a=n.fontInheritFamily,c=n.fontFamily,s=n.fontWeight,u=t.customCss.antiAdBlocker,l=t.mobile,d=t.pageRequestUuid4;return{className:"y"===u?void 0:"rcb-headline",style:{color:i,lineHeight:1.8,fontSize:d?(0,r.D)(l,d,+o):+o,fontFamily:a?void 0:c,fontWeight:s,paddingRight:e?20:void 0}}}},2087:function(t,e,n){"use strict";function r(t,e,n,r){return t.enabled,t.scalePercent,t.scalePercentVertical,n}n.d(e,{D:function(){return r}})},5672:function(t,e,n){"use strict";n.d(e,{U:function(){return o}});var r=n(7932);function o(t){var e=document.getElementById(t).nextElementSibling,n=document.createElement("div");return window.rcbPoweredByCacheOuterHTML?n.innerHTML=window.rcbPoweredByCacheOuterHTML:(0,r.D)(e,"a")&&e.innerHTML.toLowerCase().indexOf("Real Cookie Banner")&&(window.rcbPoweredByCacheOuterHTML=e.outerHTML,n.innerHTML=window.rcbPoweredByCacheOuterHTML,e.parentNode.removeChild(e)),n.children[0]}window.rcbPoweredByCacheOuterHTML=""},7932:function(t,e,n){"use strict";function r(t,e){var n="undefined"!=typeof Element?Element.prototype:{},r=n.matches||n.matchesSelector||n.webkitMatchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector;if(!t||1!==t.nodeType||!t.parentElement)return!1;if(r)return r.call(t,e);var o=t.parentElement.querySelectorAll(e);for(var i in o)if(o[i]===t)return!0;return!1}n.d(e,{D:function(){return r}})},3075:function(t,e,n){"use strict";n.d(e,{D:function(){return D}});var r=n(2711),o=n(7938),i=n(5450),a=n.n(i),c=n(4742),s=n.n(c),u=n(4312),l=n(6811),d=n(5566),f=n.n(d);function p(t){for(var e=t.location,n=t.params,r=void 0===n?{}:n,o=t.nonce,i=void 0===o||o,a=t.options,c=new(s())(a.restRoot,!0),d=c.query,p=d.rest_route||c.pathname,h=[],v=e.path.replace(/:([A-Za-z0-9-_]+)/g,(function(t,e){return h.push(e),r[e]})),b={},m=0,g=Object.keys(r);m<g.length;m++){var y=g[m];-1===h.indexOf(y)&&(b[y]=r[y])}var k=(0,u.Ab)(p)+(0,u.XO)(e.namespace||a.restNamespace)+v,x=new(s())(window.location.href).protocol.slice(0,-1);c.set("protocol",x),d.rest_route?d.rest_route=k:c.set("pathname",k),i&&a.restNonce&&(d._wpnonce=a.restNonce);var w=c.toString();return["wp-json/","rest_route="].filter((function(t){return w.indexOf(t)>-1})).length>0&&e.method&&e.method!==l.O.GET&&(d._method=e.method),c.set("query",f().all([a.restQuery,b,d])).toString()}var h=n(55).default,v=n(9448).default,b={},m={};function g(t,e){return y.apply(this,arguments)}function y(){return y=(0,o.Z)(a().mark((function t(e,n){var r,i;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(void 0===n){t.next=6;break}return r=m[e]||new h(function(){var t=(0,o.Z)(a().mark((function t(r,o){var i,c;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,v(n);case 3:if(!(i=t.sent).ok){t.next=11;break}return t.next=7,i.text();case 7:c=t.sent,e===c?o():(b[e]=c,r(c)),t.next=12;break;case 11:o();case 12:t.next=17;break;case 14:t.prev=14,t.t0=t.catch(0),o();case 17:case"end":return t.stop()}}),t,null,[[0,14]])})));return function(e,n){return t.apply(this,arguments)}}()),m[e]=r,t.abrupt("return",r);case 6:if(void 0!==e){t.next=8;break}return t.abrupt("return",void 0);case 8:return t.next=10,h.all(Object.values(m));case 10:i=e;case 11:if(!b[i]){t.next=17;break}if(i=b[i],b[i]!==e){t.next=15;break}return t.abrupt("break",17);case 15:t.next=11;break;case 17:return t.abrupt("return",h.resolve(i));case 18:case"end":return t.stop()}}),t)}))),y.apply(this,arguments)}var k=n(38);function x(t,e,n){return w.apply(this,arguments)}function w(){return(w=(0,o.Z)(a().mark((function t(e,n,r){var o,i,c,s,u,d;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o=n.clone(),t.prev=1,t.next=4,n.json();case 4:return t.abrupt("return",t.sent);case 7:return t.prev=7,t.t0=t.catch(1),t.next=11,o.text();case 11:if(!(""===(i=t.sent)&&[l.O.DELETE,l.O.PUT].indexOf(r)>-1)){t.next=14;break}return t.abrupt("return",void 0);case 14:console.warn("The response of ".concat(e," contains unexpected JSON, try to resolve the JSON line by line..."),{body:i}),s=(0,k.Z)(i.split("\n")),t.prev=16,s.s();case 18:if((u=s.n()).done){t.next=30;break}if(!(d=u.value).startsWith("[")&&!d.startsWith("{")){t.next=28;break}return t.prev=21,t.abrupt("return",JSON.parse(d));case 25:t.prev=25,t.t1=t.catch(21),c=t.t1;case 28:t.next=18;break;case 30:t.next=35;break;case 32:t.prev=32,t.t2=t.catch(16),s.e(t.t2);case 35:return t.prev=35,s.f(),t.finish(35);case 38:throw c;case 39:case"end":return t.stop()}}),t,null,[[1,7],[16,32,35,38],[21,25]])})))).apply(this,arguments)}var C=n(2680),S=n.n(C),A=n(9448).default,O="application/json;charset=utf-8";function D(t){return E.apply(this,arguments)}function E(){return(E=(0,o.Z)(a().mark((function t(e){var n,o,i,c,u,d,h,v,b,m,y,k,w,C,E,Z,I,B,T,N,P,R,z;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.location,o=e.options,i=e.request,c=e.params,u=e.settings,d=void 0===u?{}:u,h=e.multipart,v=void 0!==h&&h,b=e.sendRestNonce,m=void 0===b||b,y=p({location:n,params:c,nonce:!1,options:o}),["wp-json/","rest_route="].filter((function(t){return y.indexOf(t)>-1})).length>0&&n.method&&n.method!==l.O.GET?d.method=l.O.POST:d.method=n.method||l.O.GET,k=new(s())(y,!0),!(w=-1===["HEAD","GET"].indexOf(d.method))&&i&&k.set("query",f()(k.query,i)),w&&(C=v?S()(i,"boolean"==typeof v?{}:v):JSON.stringify(i)),t.next=9,g(o.restNonce);case 9:return E=t.sent,Z=void 0!==E,(I=f().all([d,{headers:(0,r.Z)((0,r.Z)((0,r.Z)({},"string"==typeof C?{"Content-Type":O}:{}),Z&&m?{"X-WP-Nonce":E}:{}),{},{Accept:"application/json, */*;q=0.1"})}])).body=C,B=k.toString(),t.next=16,A(B,I);case 16:if((T=t.sent).ok){t.next=47;break}return N=void 0,P=!1,t.prev=20,t.next=23,x(B,T,n.method);case 23:if("private_site"===(N=t.sent).code&&403===T.status&&Z&&!m&&(P=!0),"rest_cookie_invalid_nonce"!==N.code||!Z){t.next=35;break}return R=o.restRecreateNonceEndpoint,t.prev=27,t.next=30,g(E,R);case 30:P=!0,t.next=35;break;case 33:t.prev=33,t.t0=t.catch(27);case 35:t.next=39;break;case 37:t.prev=37,t.t1=t.catch(20);case 39:if(!P){t.next=43;break}return t.next=42,D({location:n,options:o,multipart:v,params:c,request:i,sendRestNonce:!0,settings:d});case 42:return t.abrupt("return",t.sent);case 43:throw d.method===l.O.GET&&(window.detectCorruptRestApiFailed=(window.detectCorruptRestApiFailed||0)+1),(z=T).responseJSON=N,z;case 47:return t.abrupt("return",x(B,T,n.method));case 48:case"end":return t.stop()}}),t,null,[[20,37],[27,33]])})))).apply(this,arguments)}},6811:function(t,e,n){"use strict";var r;n.d(e,{O:function(){return r}}),function(t){t.GET="GET",t.POST="POST",t.PUT="PUT",t.DELETE="DELETE",t.PATCH="PATCH"}(r||(r={}))},4312:function(t,e,n){"use strict";n.d(e,{XO:function(){return r},Ab:function(){return o},sE:function(){return i}});var r=function t(e){return e.endsWith("/")||e.endsWith("\\")?t(e.slice(0,-1)):e},o=function(t){return"".concat(r(t),"/")},i=function(t){var e=window[t.slug.replace(/-([a-z])/g,(function(t){return t[1].toUpperCase()}))];return"".concat(e.publicUrl).concat(e.chunkFolder,"/")}},9302:function(t,e,n){"use strict";n.d(e,{h:function(){return u}});var r=n(38),o=n(3438),i=n(4548),a=n(3102),c=n(1829),s=n(55).default;function u(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document.createElement("div");return new s((function(n){var s,u,l=(0,o.u)().blocker,d=!e.parentElement,f=(0,r.Z)(l);try{t:for(f.s();!(u=f.n()).done;){var p,h=u.value,v=h.hosts,b=(0,r.Z)(v);try{for(b.s();!(p=b.n()).done;){var m=p.value,g=(0,c.L)(m);if(t.match(g)){s=h;break t}}}catch(t){b.e(t)}finally{b.f()}}}catch(t){f.e(t)}finally{f.f()}s?(e.setAttribute(i.d3,"cookies"),e.setAttribute(i._W,s.cookies.join(",")),e.setAttribute(i.CT,s.id.toString()),e.addEventListener(a.T,(function(){d&&e.remove(),n()})),d&&document.body.appendChild(e)):n()}))}},4584:function(t,e,n){"use strict";n.r(e),n.d(e,{consent:function(){return we},consentAll:function(){return Se},consentSync:function(){return ke},unblock:function(){return me.h}});var r={};n.r(r),n.d(r,{consent:function(){return we},consentAll:function(){return Se},consentSync:function(){return ke},unblock:function(){return me.h}});var o=n(7938),i=n(5450),a=n.n(i),c=n(5213),s=n(2711),u=n(7663),l=n(3438),d=n(625),f=n(6886),p=n(965),h=n(38),v=n(8218),b=n(9382),m=n(7766),g=n(6028);function y(){return(y=(0,o.Z)(a().mark((function t(e,n){var r,o,i,c,u,l,d,f,y,k;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=!0,o=e instanceof v.G?e.getOptions():e,i=n.gateways,c=n.args,u=n.onIsDoNotTrack,l=n.onShowCookieBanner,d=(0,h.Z)(i),t.prev=4,d.s();case 6:if((f=d.n()).done){t.next=17;break}return y=f.value,t.next=10,y.apply(void 0,[o].concat((0,p.Z)(c)));case 10:if(!1===(k=t.sent)){t.next=15;break}if("break"!==function(){r=!1;var t=function(t){return(0,b.n)((0,s.Z)({type:t},o))};return"all"===k?t("all"):"essentials"===k?t("essentials"):"dnt"===k?u((function(){return t("essentials")})):"consent"===k&&t("consent"),"break"}()){t.next=15;break}return t.abrupt("break",17);case 15:t.next=6;break;case 17:t.next=22;break;case 19:t.prev=19,t.t0=t.catch(4),d.e(t.t0);case 22:return t.prev=22,d.f(),t.finish(22);case 25:if(!r){t.next=30;break}return l(),t.next=29,(0,g.C)();case 29:document.dispatchEvent(new CustomEvent(m.I,{detail:{}}));case 30:case"end":return t.stop()}}),t,null,[[4,19,22,25]])})))).apply(this,arguments)}var k=n(4001),x=function(){var t=(0,o.Z)(a().mark((function t(e){var n;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.supportsCookiesName,t.abrupt("return",!(0,k.E)(n)&&"essentials");case 2:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),w=n(5245),C=n(4717),S=n.n(C);function A(){var t=navigator.userAgent;return!!t&&!/chrome-lighthouse/i.test(t)&&S()(t)}var O=n(55).default;function D(t,e){return new O((function(n,r){t.then(n,r);var o=new Error("Timed out");setTimeout(r,e,o)}))}var E=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e4,n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return function(){var r=(0,o.Z)(a().mark((function r(o){var i,c,s,u,l,d;return a().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(i=o.decisionCookieName,c=o.revisionHash,!A()&&n){r.next=3;break}return r.abrupt("return",!1);case 3:if(!(s=(0,w.h)(i))){r.next=8;break}if(u=s.revision,c!==u){r.next=8;break}return r.abrupt("return","consent");case 8:return r.prev=8,r.next=11,D(t(),e);case 11:return l=r.sent,d=l.predecision,r.abrupt("return",d);case 16:return r.prev=16,r.t0=r.catch(8),r.abrupt("return",!1);case 19:case"end":return r.stop()}}),r,null,[[8,16]])})));return function(t){return r.apply(this,arguments)}}()};function Z(){try{var t=window;if((t.doNotTrack||t.navigator.doNotTrack||t.navigator.msDoNotTrack||"msTrackingProtectionEnabled"in t.external)&&("1"==t.doNotTrack||"yes"==t.navigator.doNotTrack||"1"==t.navigator.doNotTrack||"1"==t.navigator.msDoNotTrack||t.external.msTrackingProtectionEnabled()))return!0}catch(t){}return!1}var I=function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return function(){var e=(0,o.Z)(a().mark((function e(n){var r,o,i,c,s,l,d,f,p,v,b;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=n.decisionCookieName,o=n.groups,i=n.essentialGroupSlug,c=o.filter((function(t){return t.slug===i})),s=(0,u.Z)(c,1),l=s[0],!1===(0,w.h)(r)&&t){e.next=4;break}return e.abrupt("return",!1);case 4:d=(0,h.Z)(o),e.prev=5,d.s();case 7:if((f=d.n()).done){e.next=29;break}if((p=f.value)===l){e.next=27;break}v=(0,h.Z)(p.items),e.prev=11,v.s();case 13:if((b=v.n()).done){e.next=19;break}if("legitimate-interest"!==b.value.legalBasis){e.next=17;break}return e.abrupt("return",!1);case 17:e.next=13;break;case 19:e.next=24;break;case 21:e.prev=21,e.t0=e.catch(11),v.e(e.t0);case 24:return e.prev=24,v.f(),e.finish(24);case 27:e.next=7;break;case 29:e.next=34;break;case 31:e.prev=31,e.t1=e.catch(5),d.e(e.t1);case 34:return e.prev=34,d.f(),e.finish(34);case 37:return e.abrupt("return",!!Z()&&"dnt");case 38:case"end":return e.stop()}}),e,null,[[5,31,34,37],[11,21,24,27]])})));return function(t){return e.apply(this,arguments)}}()},B=function(){var t=(0,o.Z)(a().mark((function t(e){var n,r,o,i;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.decisionCookieName,r=e.revisionHash,!1!==(o=(0,w.h)(n))){t.next=4;break}return t.abrupt("return",!1);case 4:return i=o.revision,t.abrupt("return",r===i&&"consent");case 6:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),T=n(3075),N=n(6811),P={path:"/consent/dynamic-predecision",method:N.O.GET};function R(t){var e=t.legal,n=e.imprint,r=e.imprintHide,o=e.privacyPolicy,i=e.privacyPolicyHide,a=t.pageId;return[r&&+n,i&&+o].filter(Boolean).indexOf(a)>-1}var z=n(6423),L=n(7563);function W(){var t=(0,c.Ye)((function(){return window.innerWidth}),[])<700,e=(0,c.Ye)((function(){var t=window.navigator.userAgent.toLowerCase();return 4===["firefox","gecko","mobile","android"].map((function(e){return t.indexOf(e)>-1})).filter(Boolean).length}),[]);return(0,c.I4)((function(n){var r=n.animationIn,o=n.animationInOnlyMobile,i=n.animationOut,a=n.animationOutOnlyMobile,c=o?t?r:"none":r,s=a?t?i:"none":i;return e&&(c="none",s="none"),{useAnimationIn:c,useAnimationOut:s}}),[])}var H=function(t){t&&(t.preventDefault(),t.stopPropagation())},_=n(4766),Y=n(4741),U=n(3743),F=n(9707),M=n(9586),j=n(7932),G='[href^="#consent-"]',q=n(2087);function X(t,e){var n=(0,c.eJ)(0),r=(0,u.Z)(n,2),o=r[0],i=r[1],a=(0,c.eJ)(0),s=(0,u.Z)(a,2),l=s[0],d=s[1],f=(0,c.eJ)(t),p=(0,u.Z)(f,2),h=p[0],v=p[1],b=(0,c.eJ)(void 0),m=(0,u.Z)(b,2),g=m[0],y=m[1],k=(0,c.eJ)(e),x=(0,u.Z)(k,2),w=x[0],C=x[1],S=(0,c.eJ)(void 0),A=(0,u.Z)(S,2),O=A[0],D=A[1];return(0,c.d4)((function(){o>0&&("none"===t?v(t):(v("none"),y(t))),i(o+1)}),[t]),(0,c.d4)((function(){l>0&&(0===e?C(e):(C(0),D(e),v("none"),y(t))),d(l+1)}),[e]),(0,c.d4)((function(){void 0!==g&&(v(g),y(void 0))}),[g]),(0,c.d4)((function(){void 0!==O&&(C(O),D(void 0))}),[O]),[h,w]}var V=n(63);function J(t){var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:null}function $(t,e){var n=J(t),r=n.r,o=n.g,i=n.b;return"rgba(".concat(r,", ").concat(o,", ").concat(i,", ").concat(e/100,")")}var Q=n(7029).h;function K(t){var e=t.isVisible,n=t.animationIn,r=t.animationOut,o=t.animationInDuration,i=t.animationOutDuration,a=t.animationInDelay,c=t.animationOutDelay;return e?{animation:n,duration:o,delay:a}:{animation:r,duration:i,delay:c}}var tt=function(t){var e=t.animateOnMount,n=void 0===e||e,r=t.isVisible,o=void 0===r||r,i=t.animationIn,a=void 0===i?"fadeIn":i,l=t.animationOut,d=void 0===l?"fadeOut":l,f=t.animationInDelay,p=void 0===f?0:f,h=t.animationOutDelay,v=void 0===h?0:h,b=t.animationInDuration,m=void 0===b?1e3:b,g=t.animationOutDuration,y=void 0===g?1e3:g,k=t.className,x=void 0===k?"":k,w=t.style,C=void 0===w?{}:w,S=t.children,A=(0,c.eJ)(n?K({isVisible:o,animationIn:a,animationOut:d,animationInDelay:p,animationOutDelay:v,animationInDuration:m,animationOutDuration:y}):{animation:"",delay:void 0,duration:0}),O=(0,u.Z)(A,2),D=O[0],E=D.animation,Z=D.duration,I=D.delay,B=O[1];(0,c.d4)((function(){B(K({isVisible:o,animationIn:a,animationOut:d,animationInDelay:p,animationOutDelay:v,animationInDuration:m,animationOutDuration:y}))}),[o,a,d,p,v,m,y]);var T="animate__animated animate__".concat(E," ").concat(x),N=E?{}:{opacity:o?1:0,transition:"opacity ".concat(I,"ms")};return Q("div",{className:T,style:(0,s.Z)((0,s.Z)({animationDelay:"".concat(I,"ms"),animationDuration:"".concat(Z,"ms"),pointerEvents:o?"all":"none"},C),N)},S)};function et(t,e){var n=(0,_.S)().pageRequestUuid4,r=(0,F.G)("","useRenderedHeightsAsCssVars-".concat(e)),o=document.getElementById(r);(0,c.d4)((function(){var r=0,i=function(){var i=t.getBoundingClientRect().height;r!==i&&(r=i,o.innerHTML="#".concat(n,"{--rendered-height-").concat(e,": ").concat(Math.floor(i),"px;--rendered-height-raw-").concat(e,": ").concat(i,"px}"))};if(!t)return function(){};var a=document.querySelector("#".concat(n,' div[class*="animate__"]'));if(a.addEventListener("animationend",i),window.ResizeObserver){var c=new ResizeObserver(i);return c.observe(t),function(){c.disconnect(),a.removeEventListener("animationend",i)}}var s=setInterval(i,150);return function(){clearInterval(s),a.removeEventListener("animationend",i)}}),[t,e])}var nt=n(4115),rt=n(6730);function ot(){var t=(0,_.S)(),e=t.individualPrivacyOpen,n=t.onSave,r=t.updateGroupChecked,o=t.updateCookieChecked,i=t.groups,a=t.essentialGroup,u=t.updateIndividualPrivacyOpen,l=t.activeAction,d=t.onClose,f=e?"ind_all":"main_all",p=e?"ind_essential":"main_essential",v=e?"ind_close_icon":"main_close_icon",b=e?"ind_custom":"main_custom",m={buttonClickedAll:f,buttonClickedEssentials:p,buttonClickedCloseIcon:v,buttonClickedCustom:b,acceptAll:(0,c.I4)((function(){i.forEach((function(t){return r(t.id,!0)})),n(!1,f)}),[f]),acceptEssentials:(0,c.I4)((function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];i.forEach((function(t){var e=t.slug,n=t.id,i=t.items;if(e===a)r(n,!0);else{var c,s=(0,h.Z)(i);try{for(s.s();!(c=s.n()).done;){var u=c.value,l=u.legalBasis,d=u.id;o(n,d,"legitimate-interest"===l)}}catch(t){s.e(t)}finally{s.f()}}})),n(!1,t?v:p)}),[p]),acceptIndividual:(0,c.I4)((function(){return n(!1,b)}),[b]),openIndividualPrivacy:(0,c.I4)((function(){u(!0)}),[u])};return(0,s.Z)((0,s.Z)({},m),{},{closeIcon:(0,c.I4)((function(){l?d():m.acceptEssentials(!0)}),[l,d,m.acceptEssentials])})}var it=n(7778),at=function(t){var e=t.children,n=t.className,r=t.tag,o=void 0===r?"div":r,i=t.renderInContainer,a=(0,c.eJ)((function(){var t=document.createElement(o);return n&&t.classList.add(n),t})),s=(0,u.Z)(a,1)[0];return(0,c.d4)((function(){return document.body.appendChild(s),function(){document.body.removeChild(s)}}),[]),(0,c.jz)(e,i||s)},ct=n(8523),st=n(7029).h,ut=0,lt=function(t){var e=t.width,n=t.color,r=t.tooltipText,o=t.framed,i=t.renderInContainer,a=t.tooltipAlways,s=t.onClick,u=t.thickness,l=void 0===u?1:u,d=(0,c.Ye)((function(){return"react-close-icon-".concat((ut++).toString(36))}),[]),f=(0,c.Ye)((function(){return"react-close-icon-".concat((ut++).toString(36))}),[]),p=(0,c.Ye)((function(){return"react-close-icon-".concat((ut++).toString(36))}),[]),h=(0,c.sO)(),v=(0,it.EL)(h);return(0,F.G)("#".concat(p,", #").concat(d," {\n position: absolute;\n top: 50%;\n right: 0;\n margin-top: calc(").concat(e,"px / 2 * -1);\n display: block;\n width: ").concat(e,"px;\n height: ").concat(e,"px; \n pointer-events: none;\n}\n\n#").concat(d," {\n position: absolute !important;\n}\n\n#").concat(d,", #").concat(f," {\n cursor: pointer;\n pointer-events: all;\n ").concat(o?"outline: rgb(255, 94, 94) solid 5px;":"","\n}\n\n#").concat(f," {\n position: fixed !important;\n ").concat(v?"top: ".concat(v.y,"px;left: ").concat(v.x,"px;display:block;"):"display:none;","\n width: ").concat(e,"px;\n height: ").concat(e,"px;\n z-index: 99;\n}\n#").concat(f,":after, #").concat(d,":after {\n width: auto !important;\n white-space: nowrap !important;\n}\n#").concat(f,">span:before, #").concat(f,">span:after,\n#").concat(d,">span:before, #").concat(d,">span:after {\n position: absolute;\n top: 50%;\n left: 50%;\n width: ").concat(l,"px;\n height: ").concat(e,"px;\n background-color: ").concat(n,";\n transform: rotate(45deg) translate(-50%, -50%);\n transform-origin: top left;\n transition: all 420ms;\n content: '';\n opacity: 0.5;\n pointer-events: none;\n}\n#").concat(f,">span:after,\n#").concat(d,">span:after {\n transform: rotate(-45deg) translate(-50%, -50%);\n}\n#").concat(f,">span:hover:before, #").concat(f,">span:hover:after,\n#").concat(d,">span:hover:before, #").concat(d,">span:hover:after {\n opacity: 1;\n width: ").concat(l+1,"px;\n}")),i?st(c.HY,null,st("div",{id:p,ref:h}),(null==v?void 0:v.y)>0&&st(at,{renderInContainer:i},st(ct.u,{title:r,id:f,onClick:s,position:v.y>50?"top-left":"left",always:a},st("span",null)))):st(ct.u,{title:r,id:d,onClick:s,position:"top-left",always:a},st("span",null))},dt=n(7029).h,ft=function(){var t=(0,_.S)(),e=t.headerDesign,n=e.fontSize,r=e.fontColor,o=t.texts.acceptEssentials,i=t.mobile,a=t.activeAction,c=t.pageRequestUuid4,s=t.i18n,u=s.close,l=s.closeWithoutSaving,d=t.buttonClicked,f=void 0===d?"":d,p=ot(),h=p.buttonClickedCloseIcon,v=p.closeIcon,b=document.getElementById(c);return dt(lt,{width:(0,q.D)(i,c,n),color:r,tooltipText:a?"change"===a?l:u:o,tooltipAlways:(null==b?void 0:b.clientWidth)<700,framed:f===h,renderInContainer:b,onClick:v})},pt=n(7029).h,ht=(0,c.Gp)((function(t,e){var n,r,o,i,a,c,u,l,d,f,p,h,v,b,m,g,y,k,x=(0,_.S)(),w=x.headerDesign,C=w.logo,S=w.logoRetina,A=x.decision.showCloseIcon,O=x.texts.headline,D=x.activeAction,E=x.individualPrivacyOpen,Z=x.individualTexts,I=x.i18n.headerTitlePrivacyPolicyHistory,B=S&&!(null!=C&&C.endsWith(".svg"))&&window.devicePixelRatio>1,T=B?S:C,N=E?"history"===D?I:Z.headline:O;return pt("div",(0,Y.Z)({ref:e},(o=(r=(n=x).layout).type,i=r.dialogBorderRadius,c=(a=n.design).borderWidth,u=a.borderColor,l=(0,nt.Z)(a,["borderWidth","borderColor"]),f=(d=n.headerDesign).inheritBg,p=d.bg,h=d.padding,v=n.customCss.antiAdBlocker,b=n.mobile,m=n.pageRequestUuid4,g=(0,q.D)(b,m,o,"banner"),y=(0,q.D)(b,m,c),k={padding:(0,q.D)(b,m,h,void 0,!0).map((function(t){return"".concat(t,"px")})).join(" "),background:f?l.bg:p,borderRadius:"dialog"===g?"".concat(i,"px ").concat(i,"px 0 0"):void 0,position:"sticky",zIndex:9,top:0},"dialog"===g&&y>0&&(k.borderTop="".concat(y,"px solid ").concat(u),k.borderLeft=k.borderTop,k.borderRight=k.borderTop),{className:"y"===v?void 0:"rcb-header-container",style:k})),pt("div",function(t){var e=t.layout,n=e.type,r=e.bannerMaxWidth,o=t.design.textAlign,i=t.headerDesign,a=i.inheritTextAlign,c=i.logo,s=i.logoPosition,u=(0,nt.Z)(i,["inheritTextAlign","logo","logoPosition"]),l=t.texts.headline,d=t.individualLayout,f=t.customCss.antiAdBlocker,p=t.mobile,h=t.pageRequestUuid4,v=t.individualPrivacyOpen,b=a?o:u.textAlign;return{className:"y"===f?void 0:"rcb-header",style:{transition:"width 500ms, max-width 500ms",maxWidth:"banner"===(0,q.D)(p,h,n,"banner")?+(v&&!d.inheritBannerMaxWidth?d.bannerMaxWidth:r):void 0,margin:"auto",display:"flex",justifyContent:"center"===b?"center":"right"===b?"flex-end":void 0,textAlign:b,alignItems:"center",position:"relative",flexDirection:c&&l?"left"===s?"row":"right"===s?"row-reverse":"column":void 0}}}(x),!!T&&pt("img",(0,Y.Z)({alt:"",src:T},function(t,e){var n=t.headerDesign,r=n.logoMaxHeight,o=n.logoMargin,i=n.logoFitDim,a=n.logoRetinaFitDim,c=t.customCss.antiAdBlocker,u=t.mobile,l=t.pageRequestUuid4,d=e?a:i,f=d?{width:d[0],height:d[1]}:{width:"auto",height:(0,q.D)(u,l,+r)};return{className:"y"===c?void 0:"rcb-logo",style:(0,s.Z)((0,s.Z)({},f),{},{margin:(0,q.D)(u,l,o).map((function(t){return"".concat(t,"px")})).join(" ")})}}(x,B))),!!N&&pt("div",(0,rt.a)(x,!1),N),(!!A||!!D)&&pt(ft,null)))})),vt=n(6268),bt=n(4769),mt=n(3282),gt=n(7029).h,yt=function(t){var e=t.title,n=t.children,r=(0,_.S)();return gt("div",function(t){var e=t.group,n=e.headlineFontSize,r=e.headlineFontColor,o=e.headlineFontWeight,i=t.customCss.antiAdBlocker,a=t.mobile,c=t.pageRequestUuid4;return{className:"y"===i?void 0:"rcb-group",style:{color:r,fontSize:(0,q.D)(a,c,n),fontWeight:o,textAlign:"left"}}}(r),e,n&>("div",function(t){var e=t.design.fontWeight,n=t.group,r=n.descriptionFontColor,o=n.descriptionFontSize,i=t.customCss.antiAdBlocker,a=t.mobile,c=t.pageRequestUuid4;return{className:"y"===i?void 0:"rcb-group-description",style:{color:r,fontSize:(0,q.D)(a,c,+o),fontWeight:e,marginTop:5}}}(r),n))},kt=n(2260),xt=n(7585),wt=n(2121),Ct=n(229),St=n(7029).h,At=function(t){var e,n=t.group,r=t.cookie,o=r.id,i=(0,_.S)(),a=i.consent,s=i.activeAction,u=i.essentialGroup===n.slug,l=u||"history"===s,d=u||((null===(e=a.groups)||void 0===e?void 0:e[n.id])||[]).some((function(t){return t===o})),f=(0,c.I4)((function(){return!l&&i.updateCookieChecked(n.id,o,!d)}),[l,i,n,o,d]);return St(Ct.V,{cookie:r,propertyListProps:{isEssentialGroup:u},checked:d,disabled:l,onToggleCheck:f})},Ot=n(7029).h,Dt=function(t){var e,n=t.group,r=(0,_.S)(),o=n.id,i=n.slug,a=n.name,s=n.description,l=n.items,d=(0,c.eJ)(!1),f=(0,u.Z)(d,2),p=f[0],h=f[1],v=(0,c.eJ)(!1),b=(0,u.Z)(v,2),m=b[0],g=b[1],y=(0,c.eJ)(!1),k=(0,u.Z)(y,2),x=k[0],w=k[1],C=r.previewCheckboxActiveState,S=r.individualTexts,A=S.showMore,O=S.hideMore,D=r.consent,E=r.activeAction,Z=r.essentialGroup;(0,c.bt)((function(){h(!0)}),[]);var I=Z===i,B=I||"history"===E,T=C||I||!!D.groups[o],N=I||JSON.stringify(l.map((function(t){return t.id})).sort())===JSON.stringify((null===(e=D.groups[o])||void 0===e?void 0:e.sort())||[])?mt.Z:bt.Z,P=(0,c.I4)((function(){return!B&&r.updateGroupChecked(o,!T)}),[B,r,o,T]);return Ot("div",function(t){var e=t.group,n=e.groupBg,r=e.groupBorderRadius,o=e.groupBorderColor,i=e.groupPadding,a=e.groupBorderWidth,c=e.groupInheritBg,s=t.customCss.antiAdBlocker,u=t.mobile,l=t.pageRequestUuid4,d=(0,q.D)(u,l,a);return{className:"y"===s?void 0:"rcb-group",style:{background:c?void 0:n,border:d>0?"".concat(d,"px solid ").concat(o):void 0,padding:(0,q.D)(u,l,i).map((function(t){return"".concat(t,"px")})).join(" "),borderRadius:+r,textAlign:"left"}}}(r),Ot(yt,{title:Ot(c.HY,null,Ot(kt.p,(0,Y.Z)({icon:N,onClick:P},(0,xt.z)(r,p,T,B))),Ot("span",{style:{verticalAlign:"middle",cursor:"pointer"},onClick:P},a," (",l.length,")"))},s,!!l&&Ot(c.HY,null," • ",Ot("a",(0,Y.Z)({href:"#"},(0,wt.c)(r,m),{onClick:function(t){w(!x),t.preventDefault()},onMouseEnter:function(){return g(!0)},onMouseLeave:function(){return g(!1)}}),x?O:A),x&&l.map((function(t){return Ot(At,{key:t.id,group:n,cookie:t})})))))},Et=n(7029).h,Zt=function(){var t=(0,_.S)(),e=t.groups,n=t.group.groupSpacing,r=t.mobile,o=t.pageRequestUuid4,i=e.filter((function(t){return t.items.length}));return Et("div",{className:"y"===t.customCss.antiAdBlocker?void 0:"rcb-groups",style:{marginTop:10,clear:"both"}},i.map((function(t,e){return Et(c.HY,{key:t.id},Et(Dt,{key:t.id,group:t}),e!==i.length-1&&Et("div",{style:{height:(0,q.D)(r,o,+n)}}))})))},It=n(7029).h,Bt=function(t){var e=t.group,n=e.id,r=e.slug,o=e.name,i=(0,c.eJ)(!1),a=(0,u.Z)(i,2),s=(a[0],a[1]),l=(0,_.S)(),d=l.decision.groupsFirstView,f=(l.design.fontSize,l.consent),p=l.essentialGroup;(0,c.bt)((function(){s(!0)}),[]);var h=p===r,v=h||!!f.groups[n],b=(0,c.I4)((function(){return false}),[false,h,l,n,v,d]);return It("span",(0,Y.Z)({key:o},function(t){var e=t.design.fontSize,n=t.bodyDesign,r=n.dottedGroupsInheritFontSize,o=n.dottedGroupsFontSize,i=t.mobile,a=t.pageRequestUuid4;return{className:void 0,style:{paddingRight:10,fontSize:(0,q.D)(i,a,r?+e:+o),whiteSpace:"nowrap",display:"inline-block"}}}(l)),It("span",null,It(c.HY,null,It("strong",function(t){return{className:void 0,style:{color:t.bodyDesign.dottedGroupsBulletColor}}}(l),"●")," "),It("span",{style:{verticalAlign:"middle",cursor:d?"pointer":void 0},onClick:b},o)))},Tt=n(7029).h,Nt=function(){var t=(0,_.S)(),e=t.groups;return t.decision.showGroups?Tt("div",{className:"y"===t.customCss.antiAdBlocker?void 0:"rcb-dotted-groups",style:{marginTop:10,lineBreak:"anywhere",lineHeight:2}},e.filter((function(t){return!!t.items.length})).map((function(t){return Tt(Bt,{key:t.id,group:t})}))):null},Pt=n(7029).h,Rt=function(){var t=(0,_.S)(),e=(0,c.eJ)(-1),n=(0,u.Z)(e,2),r=n[0],o=n[1],i=t.activeAction,a=t.history,s=t.selectHistoryEntry,l=t.i18n,d=l.historyLabel,f=l.historySelectNone,p=(0,c.Ye)((function(){var t;return null==a||null===(t=a.filter((function(t){return t.id===r})))||void 0===t?void 0:t[0]}),[r]);(0,c.d4)((function(){i?"history"===i&&null!=a&&a.length&&o(a[0].id):o(-1)}),[i,a]);var h,v,b,m,g,y,k,x,w,C,S=null==p?void 0:p.uuid,A={className:void 0,style:{background:t.design.bg}};return Pt(c.HY,null,d," ",Pt("select",(0,Y.Z)({},(v=(h=t).design,b=v.fontSize,m=v.fontColor,g=h.bodyDesign,y=g.descriptionInheritFontSize,k=g.descriptionFontSize,x=h.customCss.antiAdBlocker,w=h.mobile,C=h.pageRequestUuid4,{className:"y"===x?void 0:"rcb-history-select",style:{fontSize:(0,q.D)(w,C,y?+b:+k),background:"transparent",border:0,color:m,borderBottom:"1px solid ".concat($(m,50))}}),{disabled:!(null!=a&&a.length),value:r,onChange:function(t){var e=+t.target.value;a.forEach((function(t){var n=t.id,r=t.decision,i=t.groups,a=t.tcf;n===e&&(o(n),s(i,r,a))}))}}),(null==a?void 0:a.length)>0?a.map((function(t){var e=t.id,n=t.isDoNotTrack,r=t.isUnblock,o=t.isForwarded,i=t.created;return Pt("option",(0,Y.Z)({key:e,value:e},A),new Date(i).toLocaleString(document.documentElement.lang),n?" (Do Not Track)":"",r?" (Content Blocker)":"",o?" (Consent Forwarding)":"")})):Pt("option",(0,Y.Z)({value:-1},A),f)),!!S&&Pt("div",{style:{opacity:.5,marginTop:5}},"UUID: ",S))},zt=n(8346),Lt=n(7613);function Wt(t,e,n,r,o){var i=t.name,a=t.order,c=t.type,s=t.borderRadius,u=t.bg,l=t.hoverBg,d=t.fontSize,f=t.textAlign,p=t.fontColor,h=t.fontWeight,v=t.hoverFontColor,b=t.borderWidth,m=t.borderColor,g=t.hoverBorderColor,y=t.padding,k=t.antiAdBlocker,x=t.pageRequestUuid4,w=!o||a>1,C=o&&1===a?5:0,S=o&&0===a?5:0,A=(0,q.D)(e,x,+b),O={textDecoration:"link"===c?"underline":"none",borderRadius:+s,cursor:"button"===c?"pointer":void 0,backgroundColor:"button"===c?n?l:u:void 0,fontSize:(0,q.D)(e,x,+d),fontWeight:h,color:n?v:p,transition:"background-color 250ms, color 250ms, border-color 250ms",margin:"0 ".concat(S,"px ").concat((0,q.D)(e,x,10,void 0,!0),"px ").concat(C,"px"),border:"button"===c&&A>0?"".concat(A,"px solid ").concat(n?g:m):void 0,padding:(0,q.D)(e,x,y,void 0,"button"!==c).map((function(t){return"".concat(t,"px")})).join(" "),overflow:"hidden",outline:r?"rgb(255, 94, 94) solid 5px":void 0,flex:w?"1 1 100%":"0 0 calc(50% - ".concat(C+S,"px)"),display:"flex",alignItems:"center",justifyContent:"right"===f?"flex-end":"center"===f?"center":"left",order:a};return{className:"y"===k?void 0:"rcb-btn-".concat(i),style:O}}function Ht(t,e,n,r,o){var i=t.isTcf,a=t.decision.acceptEssentials,c=t.layout.borderRadius,s=t.bodyDesign,u=s.acceptEssentialsFontSize,l=s.acceptEssentialsBg,d=s.acceptEssentialsTextAlign,f=s.acceptEssentialsBorderColor,p=s.acceptEssentialsPadding,h=s.acceptEssentialsBorderWidth,v=s.acceptEssentialsFontColor,b=s.acceptEssentialsFontWeight,m=s.acceptEssentialsHoverBg,g=s.acceptEssentialsHoverFontColor,y=s.acceptEssentialsHoverBorderColor,k=s.acceptAllFontWeight,x=s.acceptAllFontSize,w=s.acceptAllPadding,C=t.customCss.antiAdBlocker,S=t.mobile;return Wt({name:"accept-essentials",order:r,type:a,borderRadius:c,bg:l,hoverBg:m,fontSize:o||i?x:u,textAlign:d,fontColor:v,fontWeight:i?k:b,hoverFontColor:g,borderWidth:h,borderColor:f,hoverBorderColor:y,padding:o?w:p,antiAdBlocker:C,pageRequestUuid4:t.pageRequestUuid4},S,e,n,o)}function _t(t,e,n,r,o){var i=t.decision.acceptIndividual,a=t.layout.borderRadius,c=t.bodyDesign,s=c.acceptIndividualFontSize,u=c.acceptIndividualBg,l=c.acceptIndividualTextAlign,d=c.acceptIndividualBorderColor,f=c.acceptIndividualPadding,p=c.acceptIndividualBorderWidth,h=c.acceptIndividualFontColor,v=c.acceptIndividualFontWeight,b=c.acceptIndividualHoverBg,m=c.acceptIndividualHoverFontColor,g=c.acceptIndividualHoverBorderColor,y=t.customCss.antiAdBlocker,k=t.mobile;return Wt({name:"accept-individual",order:r,type:i,borderRadius:a,bg:u,hoverBg:b,fontSize:s,textAlign:l,fontColor:h,fontWeight:v,hoverFontColor:m,borderWidth:p,borderColor:d,hoverBorderColor:g,padding:f,antiAdBlocker:y,pageRequestUuid4:t.pageRequestUuid4},k,e,n,o)}function Yt(t,e,n,r,o){var i=t.isTcf,a=t.layout.borderRadius,c=t.bodyDesign,s=c.acceptAllFontWeight,u=c.acceptAllFontSize,l=t.saveButton,d=l.type,f=l.fontSize,p=l.bg,h=l.textAlign,v=l.borderColor,b=l.padding,m=l.borderWidth,g=l.fontColor,y=l.fontWeight,k=l.hoverBg,x=l.hoverFontColor,w=l.hoverBorderColor,C=t.customCss.antiAdBlocker,S=t.mobile;return Wt({name:"accept-individual-save",order:r,type:d,borderRadius:a,bg:p,hoverBg:k,fontSize:i?u:f,textAlign:h,fontColor:g,fontWeight:i?s:y,hoverFontColor:x,borderWidth:m,borderColor:v,hoverBorderColor:w,padding:b,antiAdBlocker:C,pageRequestUuid4:t.pageRequestUuid4},S,e,n,o)}function Ut(t,e,n,r,o){var i=t.decision.acceptAll,a=t.layout.borderRadius,c=t.bodyDesign,s=c.acceptAllFontSize,u=c.acceptAllBg,l=c.acceptAllTextAlign,d=c.acceptAllBorderColor,f=c.acceptAllPadding,p=c.acceptAllBorderWidth,h=c.acceptAllFontColor,v=c.acceptAllFontWeight,b=c.acceptAllHoverBg,m=c.acceptAllHoverFontColor,g=c.acceptAllHoverBorderColor,y=t.customCss.antiAdBlocker,k=t.mobile;return Wt({name:"accept-all",order:r,type:i,borderRadius:a,bg:u,hoverBg:b,fontSize:s,textAlign:l,fontColor:h,fontWeight:v,hoverFontColor:m,borderWidth:p,borderColor:d,hoverBorderColor:g,padding:f,antiAdBlocker:y,pageRequestUuid4:t.pageRequestUuid4},k,e,n,o)}var Ft=n(4902),Mt=n(7029).h,jt=function(t){var e=t.inlineStyle,n=t.type,r=t.onClick,o=t.children,i=t.framed,a=t.busyOnClick,s=t.order;if("hide"===n)return null;var l=(0,c.eJ)(!1),d=(0,u.Z)(l,2),f=d[0],p=d[1],h=(0,c.I4)((function(){f||(a&&p(!0),null==r||r())}),[r,f,a]),v=(0,c.eJ)(!1),b=(0,u.Z)(v,2),m=b[0],g=b[1],y=(0,_.S)(),k=y.individualPrivacyOpen,x=y.decision,w=x.acceptAll,C=x.acceptEssentials,S=y.bodyDesign,A=S.acceptAllOneRowLayout,O=S.acceptEssentialsUseAcceptAll?w:C,D={onClick:h,onMouseEnter:function(){return g(!0)},onMouseLeave:function(){return g(!1)}},E=(0,c.Ye)((function(){switch(e){case"acceptEssentials":return Ht;case"acceptIndividual":return _t;case"save":return Yt;default:return Ut}}),[e]);return Mt("div",(0,Y.Z)({},"button"===n?D:{},E(y,m,i,s,!(/MSIE (\d+\.\d+);/.test(navigator.userAgent)||navigator.userAgent.indexOf("Trident/")>-1||"hide"===w||"hide"===O||k||s>1)&&A)),Mt("span","link"===n?D:{},f?Mt(Ft.X,null):o))},Gt=n(7029).h,qt=function(){var t=(0,_.S)(),e=t.activeAction,n=t.bodyDesign,r=n.acceptEssentialsUseAcceptAll,o=n.acceptAllOneRowLayout,i=t.decision,a=(i.showGroups,i.groupsFirstView,i.saveButton,i.acceptAll),s=i.acceptEssentials,u=i.acceptIndividual,l=i.buttonOrder,d=t.texts,f=d.acceptAll,p=d.acceptEssentials,h=d.acceptIndividual,v=t.saveButton,b=v.type,m=v.useAcceptAll,g=t.individualTexts.save,y=t.individualPrivacyOpen,k=(t.didGroupFirstChange,t.productionNotice),x=t.buttonClicked,w=void 0===x?"":x,C=(0,c.Ye)((function(){var t=l.split(","),e=t.reduce((function(e,n){return e[n]=t.indexOf(n),e}),{}),n=t.reduce((function(e,n){return e[t.indexOf(n)]=n,e}),{});return o&&(e[n[0]]=1,e[n[1]]=0),e}),[l,o]),S=C.all,A=C.essential,O=C.individual,D=C.save,E=ot(),Z=E.buttonClickedAll,I=E.buttonClickedEssentials,B=E.buttonClickedCustom,T=E.acceptAll,N=E.acceptEssentials,P=E.acceptIndividual,R=E.openIndividualPrivacy,z="change"===e;return Gt(c.HY,null,Gt(jt,{onClick:T,type:a,inlineStyle:"acceptAll",framed:w===Z,busyOnClick:z,order:S},f),"change"!==e&&Gt(jt,{onClick:N,type:r?a:s,inlineStyle:r?"acceptAll":"acceptEssentials",framed:w===I,busyOnClick:z,order:A},p),!!y&&Gt(jt,{onClick:P,type:m?a:b,inlineStyle:m?"acceptAll":"save",framed:w===B,busyOnClick:z,order:D},g),!y&&Gt(jt,{type:u,onClick:R,inlineStyle:"acceptIndividual",framed:w.startsWith("ind_"),busyOnClick:z,order:O},h),k)},Xt=n(7029).h,Vt=function(t){var e,n=t.leftSideContainerRef,r=t.rightSideContainerRef,o=(0,_.S)(),i=o.layout.type,a=o.mobile,s=o.bodyDesign.teachingsSeparatorActive,u=o.tcf,l=o.individualPrivacyOpen,d=o.activeAction,f=o.pageRequestUuid4,p=(0,vt.k)(),h=p.description,v=p.teachings,b="bnnr-body-leftSide-".concat(f),m="bnnr-body-rightSide-".concat(f),g="cntnt-".concat(f);(0,F.G)(" #".concat(b," img {\n max-width: 100%;\n height: auto;\n}\n\n").concat((null===(e=document.getElementById(f))||void 0===e?void 0:e.clientWidth)>700?"":"#".concat(b," {\n float: initial !important;\n width: auto !important;\n padding-right: initial !important;\n ").concat("banner"!==(0,q.D)(a,f,i,"banner")||l?l?"padding-top: 10px !important;":"":"padding-bottom: 10px !important;","\n }\n\n #").concat(g," {\n min-height: calc(var(--rendered-height-header) + var(--rendered-height-footer) + var(--rendered-height-rightSideContainer) + 60px);\n }\n \n #").concat(m," {\n float: initial !important;\n width: auto !important;\n max-width: initial !important;\n margin: initial !important;\n ").concat(l?"padding-bottom: 5px !important;":"padding-top: 10px !important;","\n position: sticky;\n }")));var y=(0,c.Ye)((function(){return Xt(l?Zt:Nt,null)}),[l,u]),k=Xt("div",(0,Y.Z)({ref:n,key:"leftSide",id:b},function(t){var e=t.layout.type,n=t.bodyDesign.padding,r=t.customCss.antiAdBlocker,o=t.mobile,i=t.individualPrivacyOpen,a=t.activeAction,c=t.pageRequestUuid4,s=(0,q.D)(o,c,e,"banner"),u=(0,q.D)(o,c,n);return{className:"y"===r?void 0:"rcb-tb-left",style:{float:"banner"===s&&"history"!==a?"left":void 0,width:"banner"===s&&"history"!==a?"calc(100% - ".concat(300,"px)"):void 0,paddingRight:"banner"===s?20:void 0,paddingTop:+u[0],paddingBottom:"banner"===s||i?+u[2]:0}}}(o)),Xt("div",function(t){var e=t.design.fontSize,n=t.bodyDesign,r=n.descriptionInheritFontSize,o=n.descriptionFontSize,i=t.individualLayout.descriptionTextAlign,a=t.customCss.antiAdBlocker,c=t.mobile,s=t.individualPrivacyOpen,u=t.pageRequestUuid4;return{className:"y"===a?void 0:"rcb-description",style:{lineHeight:1.5,fontSize:(0,q.D)(c,u,r?+e:+o),textAlign:s?i:void 0}}}(o),"history"===d?Xt(Rt,null):Xt(c.HY,null,Xt("span",{dangerouslySetInnerHTML:{__html:h}}),v.length>0&&Xt(c.HY,null,s&&Xt("div",null,Xt("span",(0,zt.V)(o))),v.map((function(t){return Xt("span",(0,Y.Z)({key:t},(0,Lt.W)(o),{dangerouslySetInnerHTML:{__html:t}}))}))))),y),x="history"===d?Xt("div",{ref:r}):Xt("div",(0,Y.Z)({ref:r,key:"rightSide",id:m},function(t){var e,n=t.layout,r=n.type,o=n.dialogMaxWidth,i=t.design,a=i.borderWidth,c=i.bg,s=i.fontColor,u=t.headerDesign,l=t.footerDesign,d=t.bodyDesign.padding,f=t.individualLayout.inheritDialogMaxWidth,p=t.customCss.antiAdBlocker,h=t.mobile,v=t.individualPrivacyOpen,b=t.pageRequestUuid4,m=(0,q.D)(h,b,r,"banner"),g=(0,q.D)(h,b,a),y=(0,q.D)(h,b,d,void 0,!0),k=J(s),x=k.r,w=k.g,C=k.b,S="dialog"===m?+o-y[1]-y[3]-2*g:300;return{className:"y"===p?void 0:"rcb-tb-right",style:(e={background:c,paddingTop:"banner"===m||v?+y[0]:10,paddingBottom:v?10:+y[2],float:"banner"===m||v?"right":void 0,maxWidth:S,width:S,margin:"dialog"===m&&v&&!f?"0 0 10px 10px":void 0,position:v?void 0:"sticky"},(0,V.Z)(e,v?"top":"bottom",v?"calc(var(--rendered-height-header) + ".concat((0,q.D)(h,b,u.borderWidth),"px)"):"calc(var(--rendered-height-footer) + ".concat((0,q.D)(h,b,l.borderWidth),"px)")),(0,V.Z)(e,"zIndex",1),(0,V.Z)(e,"display","flex"),(0,V.Z)(e,"flexWrap","wrap"),(0,V.Z)(e,"transition","box-shadow ease-in-out .1s"),(0,V.Z)(e,"--boxShadowShowScroll","0 -15px 15px -15px rgba(".concat(x,", ").concat(w,", ").concat(C,", 0.3)")),e)}}(o)),Xt(qt,null));return Xt("div",function(t){var e=t.layout.type,n=t.design,r=n.bg,o=n.borderWidth,i=n.borderColor,a=t.bodyDesign.padding,c=t.customCss.antiAdBlocker,s=t.mobile,u=t.pageRequestUuid4,l=(0,q.D)(s,u,o),d={background:r,padding:(0,q.D)(s,u,a).map((function(t,e){return"".concat([0,2].indexOf(e)>-1?0:t,"px")})).join(" "),lineHeight:1.4};return"dialog"===(0,q.D)(s,u,e,"banner")&&l>0&&(d.borderLeft="".concat(l,"px solid ").concat(i),d.borderRight=d.borderLeft),{className:"y"===c?void 0:"rcb-body-container",style:d}}(o),Xt("div",function(t){var e=t.layout,n=e.type,r=e.bannerMaxWidth,o=t.individualLayout,i=t.customCss.antiAdBlocker,a=t.mobile,c=t.individualPrivacyOpen,s=t.pageRequestUuid4;return{className:"y"===i?void 0:"rcb-body",style:{transition:"width 500ms, max-width 500ms",maxWidth:"banner"===(0,q.D)(a,s,n,"banner")?+(c&&!o.inheritBannerMaxWidth?o.bannerMaxWidth:r):void 0,margin:"auto"}}}(o),l?[x,k]:[k,x],Xt("div",{style:{clear:"both"}})))},Jt=n(6092),$t=n(7029).h,Qt=(0,c.Gp)((function(t,e){var n=(0,_.S)(),r=(n.isTcf,n.layout.type),o=(n.individualPrivacyOpen,n.updateIndividualPrivacyOpen,n.onClose),i=(n.i18n.tcf,n.isConsentRecord),a=(0,c.I4)((function(t){o(),t.preventDefault()}),[o]),s=(0,Jt.g)({onClose:i?a:void 0,putPoweredByLinkInRow:"banner"===r?0:1,row1:[!1]}),u=s.rows,l=s.render;return $t("div",(0,Y.Z)({ref:e},function(t){var e=t.layout,n=e.type,r=e.dialogBorderRadius,o=t.design,i=t.footerDesign,a=i.inheritBg,c=i.bg,s=i.inheritTextAlign,u=i.textAlign,l=i.padding,d=i.fontSize,f=i.fontColor,p=i.fontWeight,h=t.customCss.antiAdBlocker,v=t.mobile,b=t.pageRequestUuid4,m=(0,q.D)(v,b,n,"banner"),g=(0,q.D)(v,b,o.borderWidth),y={padding:(0,q.D)(v,b,l,void 0,!0).map((function(t){return"".concat(t,"px")})).join(" "),background:a?o.bg:c,borderRadius:"dialog"===m?"0 0 ".concat(r,"px ").concat(r,"px"):void 0,fontSize:(0,q.D)(v,b,+d),fontWeight:p,color:f,textAlign:s?o.textAlign:u,position:"sticky",bottom:0,zIndex:1};return"dialog"===m&&g>0&&(y.borderBottom="".concat(g,"px solid ").concat(o.borderColor),y.borderLeft=y.borderBottom,y.borderRight=y.borderBottom),{className:"y"===h?void 0:"rcb-footer-container",style:y}}(n)),$t("div",function(t){var e=t.layout,n=e.type,r=e.bannerMaxWidth,o=t.individualLayout,i=t.customCss.antiAdBlocker,a=t.mobile,c=t.pageRequestUuid4,s=t.individualPrivacyOpen;return{className:"y"===i?void 0:"rcb-footer",style:{transition:"width 500ms, max-width 500ms",maxWidth:"banner"===(0,q.D)(a,c,n,"banner")?+(s&&!o.inheritBannerMaxWidth?o.bannerMaxWidth:r):void 0,margin:"auto",lineHeight:1.8}}}(n),l(u)))})),Kt=n(7029).h,te=function(){var t=(0,_.S)(),e=t.layout,n=e.type,r=e.dialogBorderRadius,o=t.decision,i=o.acceptAll,a=o.acceptEssentials,s=o.showCloseIcon,l=t.mobile,d=t.individualPrivacyOpen,f=t.design.bg,p=t.bodyDesign,h=p.teachingsFontColor,v=p.acceptEssentialsUseAcceptAll,b=t.activeAction,m=t.pageRequestUuid4,g="bnnr-body-rightSide-".concat(m),y="cntnt-".concat(m),k=(0,c.sO)(),x=k.current,w=v?i:a,C=!0;!l.hideHeader||b||d||"hide"===w&&s||(C=(0,q.D)(l,m,C,!1));var S=(0,c.eJ)(!1),A=(0,u.Z)(S,2),O=A[0],D=A[1],E=(0,c.I4)((function(){if(x){var t=x.clientHeight,e=x.scrollHeight,n=x.scrollTop,r=x.offsetHeight,o=t<e,i=Math.ceil(n+r)>=e,a=o&&!i&&!d;O!==a&&D(a)}}),[x,d,O]);E(),(0,c.bt)((function(){return x?(x.addEventListener("scroll",E),function(){return x.removeEventListener("scroll",E)}):function(){}}),[x,E]),(0,F.G)(O?"#".concat(g," {box-shadow:var(--boxShadowShowScroll);}"):""),(0,F.G)("Win32"===navigator.platform&&"dialog"===n&&r>0?["#".concat(y,"{overflow:overlay!important;}"),"#".concat(y,"::-webkit-scrollbar{width:11px;}"),"#".concat(y,"{scrollbar-width:thin;scrollbar-color:").concat(h," transparent;}"),"#".concat(y,"::-webkit-scrollbar-track{background:transparent;}"),"#".concat(y,"::-webkit-scrollbar-thumb{background-color:").concat(h,";border-radius:").concat(r,"px;border:3px solid ").concat(f,";}"),"#".concat(y,">div{border-top-right-radius:0!important;border-bottom-right-radius:0!important;}")].join("\n"):"");var Z=(0,c.sO)(),I=(0,c.sO)(),B=(0,c.sO)();return et(Z.current,"header"),et(I.current,"footer"),et(B.current,"rightSideContainer"),Kt("div",(0,Y.Z)({},function(t){var e,n=t.layout.type,r=t.customCss.antiAdBlocker,o=t.decision.showCloseIcon,i=t.activeAction,a=t.individualPrivacyOpen,c=t.mobile,s=t.pageRequestUuid4,u=(null===(e=document.getElementById(s))||void 0===e?void 0:e.clientHeight)||window.innerHeight,l=+c.maxHeight,d=l>u?u:l,f=o||i?51:0;return{className:"y"===r?void 0:"rcb-content",style:{position:"relative",maxHeight:(0,q.D)(c,s,u-("banner"===n?0:20)-f,a?u-f:d-f),overflow:"auto"}}}(t),{ref:k,id:y}),C&&Kt(c.HY,null,Kt(ht,{ref:Z}),Kt("div",function(t){var e=t.layout.type,n=t.design,r=t.headerDesign,o=r.borderWidth,i=r.borderColor,a=t.customCss.antiAdBlocker,c=t.mobile,s=t.pageRequestUuid4,u=(0,q.D)(c,s,n.borderWidth),l={height:(0,q.D)(c,s,+o),background:i,position:"sticky",top:"var(--rendered-height-header)",zIndex:9};return"dialog"===(0,q.D)(c,s,e,"banner")&&u>0&&(l.borderLeft="".concat(u,"px solid ").concat(n.borderColor),l.borderRight=l.borderLeft),{className:"y"===a?void 0:"rcb-header-separator",style:l}}(t))),Kt(Vt,{rightSideContainerRef:B}),Kt("div",function(t){var e=t.layout.type,n=t.design,r=t.footerDesign,o=r.borderWidth,i=r.borderColor,a=t.customCss.antiAdBlocker,c=t.mobile,s=t.pageRequestUuid4,u=(0,q.D)(c,s,n.borderWidth),l={height:(0,q.D)(c,s,+o),background:i,position:"sticky",bottom:"var(--rendered-height-footer)"};return"dialog"===(0,q.D)(c,s,e,"banner")&&u>0&&(l.borderLeft="".concat(u,"px solid ").concat(n.borderColor),l.borderRight=l.borderLeft),{className:"y"===a?void 0:"rcb-footer-separator",style:l}}(t)),Kt(Qt,{ref:I}))},ee=n(7029).h,ne=function(){var t,e,n,r,o,i,a,c,s,l,d,f,p,h,v,b,m,g,y,k,x,w,C,S,A,O,D,E,Z,I,B,T,N,P=(0,_.S)(),R=P.layout,z=R.animationInDuration,L=R.animationOutDuration,H=P.animationVisible,U=W()(P.layout),F=U.useAnimationIn,M=U.useAnimationOut,j=X(F,z),G=(0,u.Z)(j,2),J=G[0],Q=G[1],K=X("none"===M?"fadeOut":M,"none"===M?0:L),et=(0,u.Z)(K,2),nt=et[0],rt=et[1];return ee(tt,(0,Y.Z)({animationIn:J,animationInDuration:Q,animationOut:nt,animationOutDuration:rt,isVisible:H},(n=(e=(t=P).layout).type,r=e.dialogMaxWidth,o=e.dialogPosition,i=e.dialogMargin,a=e.bannerPosition,c=e.dialogBorderRadius,l=(s=t.design).borderWidth,d=s.borderColor,f=s.textAlign,p=s.fontColor,h=s.fontInheritFamily,v=s.fontFamily,b=s.fontWeight,m=s.boxShadowEnabled,g=s.boxShadowOffsetX,y=s.boxShadowOffsetY,k=s.boxShadowBlurRadius,x=s.boxShadowSpreadRadius,w=s.boxShadowColor,C=s.boxShadowColorAlpha,S=t.individualLayout,A=t.customCss.antiAdBlocker,O=t.mobile,D=t.pageRequestUuid4,E=t.individualPrivacyOpen,Z=O.alignment,I=(0,q.D)(O,D,n,"banner"),B=(0,q.D)(O,D,l),T="dialog"===I?+(E&&!S.inheritDialogMaxWidth?S.dialogMaxWidth:r):"100%",N=(0,V.Z)({pointerEvents:"all",transition:"width 500ms, max-width 500ms",maxWidth:T,textAlign:f,width:T,overflow:"hidden",alignSelf:(0,q.D)(O,D,"banner"===I?"top"===a?"flex-start":"flex-end":void 0,"bottom"===Z?"flex-end":"top"===Z?"flex-start":"center"),fontFamily:h?void 0:v,fontWeight:b,color:p,margin:"dialog"===I?10:void 0,borderRadius:"dialog"===I?+c:void 0,boxShadow:m?"".concat(g,"px ").concat(y,"px ").concat(k,"px ").concat(x,"px ").concat($(w,C)):void 0},"banner"===I?"top"===a?"borderBottom":"borderTop":"border","banner"===I&&B>0?"".concat(B,"px solid ").concat(d):void 0),"dialog"===I&&"middleCenter"!==o&&(N.margin=i.map((function(t){return"".concat(t,"px")})).join(" ")),{className:"y"===A?void 0:"rcb-inner",style:N})),ee(te,null))},re=n(7029).h,oe=function(){var t=(0,_.S)(),e=t.layout,n=e.overlay,r=(e.overlayBlur,t.customCss),i=r.antiAdBlocker,s=r.css,l=t.visible,d=t.animationVisible,f=t.activeAction,p=t.skipOverlay,h=t.gotHiddenDueLegal,v=t.pageRequestUuid4,b=t.individualPrivacyOpen,m=R(t),g=l&&!m||!!f;(0,F.G)(i?s:""),(0,F.G)("#".concat(v,", #").concat(v," * {box-sizing: border-box;backface-visibility:initial;text-transform:initial;-webkit-text-size-adjust:100%;}")),function(t){(0,c.d4)((function(){var e=document.body,n=e.dataset,r=e.style;void 0===n.rcbPreviousOverflow&&(n.rcbPreviousOverflow=r.overflow),r.overflow=t?"hidden":n.rcbPreviousOverflow,document.body.parentElement.style.overflow=r.overflow}),[t])}(g&&n&&d);var y,k,x,w,C=(0,c.eJ)(0),S=(0,u.Z)(C,2)[1],A=function(){return S(+new Date)};if((0,c.bt)((function(){return window.addEventListener("resize",A),function(){return window.removeEventListener("resize",A)}}),[]),(0,c.bt)((function(){(0,U.s)(1e3)}),[d,b]),h&&(0,c.d4)((function(){h(m)}),[m]),function(){var t=(0,_.S)(),e=t.consent,n=t.groups,r=t.tcf,i=t.activeAction,s=t.selectHistoryEntry,l=t.fetchHistory,d=(0,c.eJ)({consent:e,groups:n,tcf:r}),f=(0,u.Z)(d,2),p=f[0],h=f[1];(0,c.d4)((function(){i||h({consent:e,groups:n,tcf:r})}),[e,n,r,i]),(0,c.d4)((function(){function t(){return(t=(0,o.Z)(a().mark((function t(){var e,n,r,o,i,c;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,l();case 2:(e=t.sent).length?(n=(0,u.Z)(e,1),r=n[0],o=r.groups,i=r.decision,c=r.tcf,s(o,i,c)):s([],[]);case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}if("history"===i)h({consent:e,groups:n,tcf:r}),function(){t.apply(this,arguments)}();else{var c=p.groups,d=p.consent.groups,f=p.tcf;null==s||s(c,d,f)}}),[i])}(),y=(0,_.S)(),k=y.openBanner,x=y.openHistory,w=y.revokeConsent,(0,c.d4)((function(){var t=function(t,e,n){if(k)switch(t){case"change":k(n);break;case"history":x(n);break;case"revoke":w(e,n)}},e=function(e){if(k){var n=e.target;(0,M.w)(n,G).concat((0,j.D)(n,G)?[n]:[]).forEach((function(n){t(n.getAttribute("href").slice(9),n.getAttribute("data-success-message"),e)})),(0,j.D)(n,".rcb-sc-link")&&t(n.getAttribute("href").slice(1),n.getAttribute("data-success-message"),e)}},n=function(){var e=window.location.hash;e.startsWith("#consent-")&&t(e.substring(9),void 0,void 0)};return window.addEventListener("hashchange",n),document.addEventListener("click",e,!0),function(){window.removeEventListener("hashchange",n),document.removeEventListener("click",e,!0)}}),[k,x,w]),!g)return null;var O=re("div",function(t){var e=t.layout,n=e.type,r=e.dialogPosition,o=t.customCss.antiAdBlocker,i=t.mobile,a=t.pageRequestUuid4,c={display:"flex",width:"100%",height:"100%"};return"dialog"===(0,q.D)(i,a,n,"banner")&&(c.alignItems=r.startsWith("top")?"flex-start":r.startsWith("bottom")?"flex-end":"center",c.justifyContent=r.endsWith("Center")?"center":r.endsWith("Left")?"flex-start":"flex-end"),{className:"wp-exclude-emoji ".concat("y"===o?"":"rcb-align"),style:c}}(t),re(ne,null));return p?O:re("div",(0,Y.Z)({id:v},function(t){var e=t.layout,n=e.type,r=e.overlay,o=e.overlayBg,i=e.overlayBgAlpha,a=t.design.fontSize,c=t.customCss.antiAdBlocker,s=t.mobile,u=t.pageRequestUuid4;return{className:"y"===c?void 0:"rcb-bann3r rcb-bann3r-".concat((0,q.D)(s,u,n,"banner")," ").concat(r?"":"overlay-deactivated"),style:{background:r?$(o,i):"none",position:"fixed",top:0,left:0,right:0,bottom:0,zIndex:99999,pointerEvents:r?"all":"none",fontSize:(0,q.D)(s,u,+a),filter:"none"}}}(t)),O)},ie={path:"/consent",method:N.O.GET},ae=n(1100),ce=n(7029).h,se=function(t){var e,n=t.poweredLink,r=(0,l.u)(),i=r.customizeValuesBanner,p=i.layout,h=i.decision,v=i.legal,b=i.design,m=i.headerDesign,g=i.bodyDesign,k=i.footerDesign,C=i.texts,S=i.individualLayout,O=i.saveButton,D=i.group,Z=i.individualTexts,N=i.customCss,Y=i.mobile,U=r.pageId,F=r.pageRequestUuid4,M=r.pageIdToPermalink,j=r.consentForwardingExternalHosts,G=r.essentialGroup,q=r.isTcf,X=r.isEPrivacyUSA,V=r.isAgeNotice,J=r.isListServicesNotice,$=r.tcf,Q=r.tcfMetadata,K=r.groups,tt=r.userConsentCookieName,et=r.bannerI18n,nt=r.affiliate,rt=r.isCurrentlyInTranslationEditorPreview,ot=r.pageByIdUrl,it=(0,w.h)(tt),at=function(t,e,n){return(0,c.Ye)((function(){}),[t,e,n])}(q,$,Q),ct=function(t){var e=W(),n=(0,c.I4)((function(n,r){var o=n.layout,i=o.animationInDuration,a=o.animationOutDuration,c=e(o),u=c.useAnimationIn,l=c.useAnimationOut,d=r?"none"===u?0:i:"none"===l?0:a;d>0&&(t.style.transition="background ".concat(d,"ms")),t.style.background="transparent",r?(setTimeout((function(){t.style.display="block"}),0),setTimeout((function(){var e=t.getAttribute("data-bg");t.style.background=e?e.split(":")[1].trim().replace(";",""):"transparent"}),100)):setTimeout((function(){t.style.display="none"}),d);var f={animationVisible:r};return r?(0,s.Z)({visible:!0},f):f}),[e]);return{overlay:t,toggleOverlay:n}}(document.getElementById(F)),st=ct.toggleOverlay,ut=function(t){var e=t.toggleOverlay,n=t.revokeConsent,r=function(t,n){return t((function(t){return(0,s.Z)((0,s.Z)({},t),{},{activeAction:n,individualPrivacyOpen:!0,refreshSiteAfterSave:"change"===n&&2e3},e(t,!0))}))};return{openHistory:function(t){r(t,"history"),H(arguments.length<=1?void 0:arguments[1])},openBanner:function(t){r(t,"change"),H(arguments.length<=1?void 0:arguments[1])},revokeConsent:function(t){for(var e=arguments.length,r=new Array(e>1?e-1:0),o=1;o<e;o++)r[o-1]=arguments[o];var i=r[0],a=r[1];t((function(t){return n(t).then((function(){i&&alert(i),setTimeout((function(){return window.location.reload()}),2e3)})),t})),H(a)},updateTcfFilterBy:function(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var o=n[0];t((function(t){return(0,s.Z)((0,s.Z)({},t),{},{tcfFilterBy:o})}))},updateIndividualPrivacyOpen:function(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var o=n[0];t((function(t){return(0,s.Z)((0,s.Z)({},t),{},{individualPrivacyOpen:o})}))},updateGroupChecked:function(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var o=n[0],i=n[1];t((function(t){var e=JSON.parse(JSON.stringify(t.consent));return i?e.groups[o]=t.groups.filter((function(t){return t.id===o}))[0].items.map((function(t){return t.id})):delete e.groups[o],(0,s.Z)((0,s.Z)({},t),{},{consent:e,didGroupFirstChange:!0})}))},updateCookieChecked:function(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var o=n[0],i=n[1],a=n[2];t((function(t){var e=JSON.parse(JSON.stringify(t.consent));e.groups[o]||(e.groups[o]=[]);var n=e.groups[o],r=n.indexOf(i);return a&&-1===r?n.push(i):!a&&r>-1&&n.splice(r,1),n.length||delete e.groups[o],(0,s.Z)((0,s.Z)({},t),{},{consent:e})}))},onClose:function(t){t((function(t){return(0,s.Z)((0,s.Z)((0,s.Z)({},t),e(t,!1)),{},{refreshSiteAfterSave:!1})}))},selectHistoryEntry:function(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var o=n[0],i=n[1],a=n[2];t((function(t){var e={isTcf:!!a,tcf:null};return(0,s.Z)((0,s.Z)({},t),{},{groups:o,consent:(0,s.Z)((0,s.Z)({},t.consent),{},{groups:i})},e)}))}}}({toggleOverlay:st,revokeConsent:function(t){return t.tcf,(0,z.$)({consent:{groups:(0,f.b)().getDefaultDecision(!0)},buttonClicked:"shortcode_revoke",tcfString:void 0})}}),lt=ut.openHistory,dt=ut.openBanner,ft=ut.revokeConsent,pt=ut.updateTcfFilterBy,ht=ut.updateIndividualPrivacyOpen,vt=ut.updateGroupChecked,bt=ut.updateCookieChecked,mt=ut.onClose,gt=ut.selectHistoryEntry,yt=(0,c.eJ)({layout:(0,s.Z)({},p),decision:(0,s.Z)({},h),legal:(0,s.Z)({},v),design:(0,s.Z)({},b),headerDesign:(0,s.Z)({},m),bodyDesign:(0,s.Z)({},g),footerDesign:(0,s.Z)({},k),texts:(0,s.Z)({},C),individualLayout:(0,s.Z)({},S),saveButton:(0,s.Z)({},O),group:(0,s.Z)({},D),individualTexts:(0,s.Z)({},Z),customCss:(0,s.Z)({},N),mobile:(0,s.Z)({},Y),productionNotice:ce(ae.Z,null),pageRequestUuid4:F,pageIdToPermalink:M,pageByIdUrl:ot,consentForwardingExternalHosts:j,pageId:U,isTcf:q,ePrivacyUSA:X,ageNotice:V,listServicesNotice:J,tcf:at,tcfFilterBy:"legInt",groups:K,essentialGroup:G,poweredLink:n,visible:!1,animationVisible:!0,skipOverlay:!0,previewCheckboxActiveState:!1,individualPrivacyOpen:!1,i18n:et,keepVariablesInTexts:rt,affiliate:nt,consent:{groups:(0,s.Z)((0,s.Z)({},!1===it?{}:it.consent),(0,f.b)().getDefaultDecision(!1===it))},didGroupFirstChange:!1,onSave:function(t,e){wt((function(n){var r=(0,z.$)({consent:n.consent,markAsDoNotTrack:t,buttonClicked:e,tcfString:void 0});return n.refreshSiteAfterSave?(r.then((function(){return setTimeout((function(){return window.location.reload()}),n.refreshSiteAfterSave||2e3)})),n):(0,s.Z)((0,s.Z)({},n),st(n,!1))}))},fetchHistory:(e=(0,o.Z)(a().mark((function t(){var e,n,r,o,i,c;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e=(0,d.m)(),n=e.restNamespace,r=e.restRoot,o=e.restQuery,i=e.restNonce,t.next=3,(0,T.D)({location:ie,options:{restNamespace:n,restRoot:r,restQuery:o,restNonce:i},sendRestNonce:!1});case 3:return c=t.sent,wt((function(t){return(0,s.Z)((0,s.Z)({},t),{},{history:c})})),t.abrupt("return",c);case 6:case"end":return t.stop()}}),t)}))),function(){return e.apply(this,arguments)}),updateTcfFilterBy:function(t){return pt(wt,t)},updateIndividualPrivacyOpen:function(t){return ht(wt,t)},updateGroupChecked:function(t,e){return vt(wt,t,e)},updateCookieChecked:function(t,e,n){return bt(wt,t,e,n)},onClose:function(){return mt(wt)},selectHistoryEntry:function(t,e,n){return gt(wt,t,e,n)},openHistory:function(t){return lt(wt,t)},openBanner:function(t){return dt(wt,t)},revokeConsent:function(t,e){return ft(wt,t,e)}}),kt=(0,u.Z)(yt,2),xt=kt[0],wt=kt[1];(function(t,e,n){(0,c.d4)((function(){if(!(0,l.u)().customizeIdsBanner){var r,i,c,u=(0,d.m)(),p=u.restNamespace,h=u.restRoot,v=u.restQuery,b=u.restNonce,m=u.others,g=m.isAcceptAllForBots,k=m.isPreventPreDecision,C=m.hasDynamicPreDecisions,S=m.isRespectDoNotTrack,O=t.onSave;!function(t,e){y.apply(this,arguments)}((0,f.b)(),{gateways:[x,(c=["login-action-"],(0,o.Z)(a().mark((function t(){var e;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e=document.body.className,t.abrupt("return",c.filter((function(t){return e.indexOf(t)>-1})).length>0&&"consent");case 2:case"end":return t.stop()}}),t)})))),E((function(){var t=document.documentElement,e=t.clientWidth,n=t.clientHeight;return(0,T.D)({location:P,options:{restNamespace:p,restRoot:h,restQuery:v,restNonce:b},sendRestNonce:!1,request:{viewPortWidth:e,viewPortHeight:n},params:{_wp_http_referer:window.location.href}})}),1e4,C),function(){var t=(0,o.Z)(a().mark((function t(e,n){return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",!!R(n)&&"consent");case 1:case"end":return t.stop()}}),t)})));return function(e,n){return t.apply(this,arguments)}}(),(i=k,function(){var t=(0,o.Z)(a().mark((function t(e){var n,r;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.decisionCookieName,r=(0,w.h)(n),t.abrupt("return",!(!i||!1!==r)&&(A()?"all":"consent"));case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),(r=!!g&&"all",function(){var t=(0,o.Z)(a().mark((function t(e){var n;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.decisionCookieName,!1===(0,w.h)(n)&&r){t.next=3;break}return t.abrupt("return",!1);case 3:return t.abrupt("return",!!A()&&r);case 4:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),I(S),B],args:[t],onIsDoNotTrack:function(){O(!0,"none")},onShowCookieBanner:function(){return e((function(t){return(0,s.Z)((0,s.Z)({},t),{},{consent:{groups:(0,f.b)().getDefaultDecision()}},n(t,!0))}))}})}}),[])})(xt,wt,st),function(t,e){(0,c.d4)((function(){var n=function(){var n=(0,w.h)(e);n&&t((function(t){return(0,s.Z)((0,s.Z)({},t),{},{consent:{groups:n.consent}})}))};return document.addEventListener(L.V,n),function(){document.removeEventListener(L.V,n)}}),[])}(wt,tt);var Ct=_.k.Context();return ce(Ct.Provider,{value:xt},ce(oe,null))},ue=n(6346),le=n(3102),de=n(9575),fe=n(55).default;function pe(t){return he.apply(this,arguments)}function he(){return he=(0,o.Z)(a().mark((function t(e){var n,r,o,i=arguments;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=i.length>1&&void 0!==i[1]?i[1]:500,r=i.length>2&&void 0!==i[2]?i[2]:0,o=0;case 3:if(e()){t.next=11;break}if(!(r>0&&o>=r)){t.next=6;break}return t.abrupt("return",void 0);case 6:return t.next=8,new fe((function(t){return setTimeout(t,n)}));case 8:o++,t.next=3;break;case 11:return t.abrupt("return",e());case 12:case"end":return t.stop()}}),t)}))),he.apply(this,arguments)}var ve=0,be={path:"/consent/clear",method:N.O.DELETE},me=n(9302),ge=n(1456),ye=n(1829);function ke(t,e,n){var r,o=[],i=(0,l.u)(),a=i.groups,c=i.revisionHash,s=a.map((function(t){return t.items})).flat(),u=(0,h.Z)(s);try{for(u.s();!(r=u.n()).done;){var d=r.value;if("number"==typeof t)d.id===t&&o.push({cookie:d,relevance:10});else{var f=d.technicalDefinitions;if(null!=f&&f.length){var p,v=(0,h.Z)(f);try{for(v.s();!(p=v.n()).done;){var b=p.value,m=(0,ye.L)(b.name);if(b.type===t&&(b.name===e||e.match(m))&&(b.host===n||"*"===n)){o.push({cookie:d,relevance:f.length+f.indexOf(b)+1});break}}}catch(t){v.e(t)}finally{v.f()}}}}}catch(t){u.e(t)}finally{u.f()}var g=(0,w.h)((0,l.u)().userConsentCookieName);if(o.length){var y=o.sort((function(t,e){return t.relevance-e.relevance}))[0].cookie;return g&&c===g.revision?Object.values(g.consent).flat().indexOf(y.id)>-1?{cookie:y,consentGiven:!0,cookieOptIn:!0}:{cookie:y,consentGiven:!0,cookieOptIn:!1}:{cookie:y,consentGiven:!1,cookieOptIn:!1}}return{cookie:null,consentGiven:!!g,cookieOptIn:!0}}var xe=n(55).default;function we(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return new xe((function(t,n){var r=ke.apply(void 0,e),i=r.cookie,c=r.consentGiven,s=r.cookieOptIn;i?c?s?t():n():(document.addEventListener(de.g,function(){var e=(0,o.Z)(a().mark((function e(n){return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.detail.cookie===i&&t();case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),document.addEventListener(ge.E,function(){var t=(0,o.Z)(a().mark((function t(e){return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:e.detail.cookie===i&&n();case 2:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}())):t()}))}var Ce=n(55).default;function Se(t){return Ce.all(t.map((function(t){return we.apply(void 0,(0,p.Z)(t))})))}var Ae=n(4312),Oe=n(5672),De=n(7029).h;n.p=(0,Ae.sE)({NODE_ENV:"production",env:"production",rootSlug:"devowl-wp",slug:"real-cookie-banner",PLUGIN_CTX:"lite",ANTD_PREFIX:"rcb-antd",IS_TCF:"0",TCF_CMP_ID:367}),document.addEventListener(de.g,function(){var t=(0,o.Z)(a().mark((function t(e){var n,r,i,c,s,u,l,d;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=e.detail.cookie,r=n.presetId,i=n.codeOptIn,c=n.codeDynamics,t.t0=r,t.next="amazon-associates-widget"===t.t0?4:"google-maps"===t.t0?16:18;break;case 4:if(!(s=(c||{}).amznAssoWidgetHtmlId)){t.next=15;break}if(!(u=document.getElementById(s))){t.next=15;break}return l=ve,ve++,(0,ue.K)(i,c,u),t.next=13,pe((function(){return document.querySelector('[id^="amzn_assoc_ad_div_"][id$="'.concat(l,'"]'))}),500,50);case 13:(d=t.sent)&&u.appendChild(d);case 15:return t.abrupt("break",19);case 16:return document.addEventListener(le.T,function(){var t=(0,o.Z)(a().mark((function t(e){var n,r,o,i;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.detail.element,r=window,o=r.et_pb_map_init,!((i=r.jQuery)&&n.matches(".et_pb_map")&&o)){t.next=6;break}return t.next=5,pe((function(){return window.google}));case 5:o(i(n).parent());case 6:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),t.abrupt("break",19);case 18:return t.abrupt("break",19);case 19:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),(0,l.u)().isTcf,(0,g.C)((function(){var t,e,n=(0,l.u)().pageRequestUuid4,r=(0,Oe.U)(n),i=function(t){var e=document.body;return t.parentElement!==e&&e.appendChild(t),t}(document.getElementById(n));t=(0,f.b)(),e=Array.prototype.slice.call(document.querySelectorAll(".rcb-consent-history-uuids")),document.addEventListener(m.I,(function(){e.forEach((function(t){return t.innerHTML=t.getAttribute("data-fallback")}))})),document.addEventListener(L.V,(function(){var n=(0,w.h)(t instanceof v.G?t.getOption("decisionCookieName"):t),r=n?[n.uuid].concat((0,p.Z)(n.previousUuids)):[];e.forEach((function(t){return t.innerHTML=r.length>0?r.join(", "):t.getAttribute("data-fallback")}))})),document.addEventListener(ge.E,function(){var t=(0,o.Z)(a().mark((function t(e){var n;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:(n=e.detail.deleteHttpCookies).length&&setTimeout((function(){return t=n,r=(e=(0,d.m)()).restNamespace,o=e.restRoot,i=e.restQuery,a=e.restNonce,(0,T.D)({location:be,options:{restNamespace:r,restRoot:o,restQuery:i,restNonce:a},sendRestNonce:!1,params:{cookies:t.join(",")}});var t,e,r,o,i,a}),0);case 2:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()),i&&(0,c.sY)(De(se,{poweredLink:r}),i)}),"interactive"),window&&(window.consentApi=r)},1100:function(t,e,n){"use strict";n.d(e,{Z:function(){return i}});var r=n(3438),o=n(7029).h,i=function(){var t=(0,r.u)(),e=t.isPro,n=t.isLicensed,i=t.isDevLicense,a=t.bannerI18n,c=a.noLicense,s=a.devLicense;if(!e)return null;var u="";return i?u=s:n||(u=c),u?o("div",{style:{fontSize:13,color:"#c95252",fontWeight:"bold",order:9}},u):null}},6423:function(t,e,n){"use strict";n.d(e,{$:function(){return m}});var r=n(2711),o=n(7938),i=n(5450),a=n.n(i),c={path:"/consent",method:n(6811).O.POST},s=n(625),u=n(38),l=n(3438),d=n(9448).default,f=n(55).default;function p(t){var e=t.endpoints,n=t.data;if((0,l.u)().isPro){var r,o=[],i=(0,u.Z)(e);try{for(i.s();!(r=i.n()).done;){var a=r.value;o.push(d(a,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json;charset=utf-8"},body:JSON.stringify(n)}))}}catch(t){i.e(t)}finally{i.f()}return f.all(o)}return f.reject()}var h=n(6886),v=n(3075),b=n(55).default;function m(t){return g.apply(this,arguments)}function g(){return(g=(0,o.Z)(a().mark((function t(e){var n,o,i,u,l,d,f,m,g,y,k,x,w,C,S,A,O,D,E,Z,I;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.consent,o=e.markAsDoNotTrack,i=void 0!==o&&o,u=e.buttonClicked,l=e.blocker,d=void 0===l?0:l,f=e.blockerThumbnail,m=e.tcfString,g=document.documentElement,y=g.clientWidth,k=g.clientHeight,x=(0,s.m)(),w=x.restNamespace,C=x.restRoot,S=x.restQuery,A=x.restNonce,t.next=5,(0,v.D)({location:c,options:{restNamespace:w,restRoot:C,restQuery:S,restNonce:A},sendRestNonce:!1,request:(0,r.Z)((0,r.Z)({},n),{},{markAsDoNotTrack:i,buttonClicked:u,viewPortWidth:y,viewPortHeight:k,blocker:d,blockerThumbnail:f,tcfString:m}),params:{_wp_http_referer:window.location.href}});case 5:return O=t.sent,D=O.forward,E=O.uuid,Z=O.cookie_revision,I=O.decision_in_cookie,window.rcbDisabledCookieComp={uuid:E,previousUuids:[],revision:Z,consent:I},t.next=13,b.all([D&&p(D),(0,h.b)().applyCookies({type:"consent"})].filter(Boolean));case 13:case"end":return t.stop()}}),t)})))).apply(this,arguments)}},6886:function(t,e,n){"use strict";n.d(e,{b:function(){return a}});var r=n(8218),o=n(625),i=n(3438);function a(){var t,e=(0,i.u)(),n=e.userConsentCookieName,a=e.revisionHash,c=e.setCookiesViaManager,s=e.groups,u=e.essentialGroup;return window.rcbConsentManager||(window.rcbConsentManager=new r.G({decisionCookieName:n,essentialGroupSlug:u,groups:s,revisionHash:a,supportsCookiesName:"real_cookie_banner-test",tagManager:c,skipOptIn:function(t){var e=t.presetId;return["amazon-associates-widget"].indexOf(e)>-1},cmpId:367,cmpVersion:("major",t=(0,o.m)().version.split("."),+t[0]),tcfCookieName:"".concat(n,"-tcf")})),window.rcbConsentManager}},625:function(t,e,n){"use strict";function r(){return window["real-cookie-banner".replace(/-([a-z])/g,(function(t){return t[1].toUpperCase()}))]}n.d(e,{m:function(){return r}})},3438:function(t,e,n){"use strict";n.d(e,{u:function(){return o}});var r=n(625);function o(){return(0,r.m)().others}},6652:function(){String.prototype.startsWith||(String.prototype.startsWith=function(t,e){return e=e||0,this.indexOf(t,e)===e}),String.prototype.endsWith||(String.prototype.endsWith=function(t,e){var n=this.toString();("number"!=typeof e||!isFinite(e)||Math.floor(e)!==e||e>n.length)&&(e=n.length),e-=t.length;var r=n.indexOf(t,e);return-1!==r&&r===e}),null==Element.prototype.getAttributeNames&&(Element.prototype.getAttributeNames=function(){for(var t=this.attributes,e=t.length,n=new Array(e),r=0;r<e;r++)n[r]=t[r].name;return n}),"function"!=typeof window.CustomEvent&&(window.CustomEvent=function(t,e){e=e||{bubbles:!1,cancelable:!1,detail:null};var n=document.createEvent("CustomEvent");return n.initCustomEvent(t,e.bubbles,e.cancelable,e.detail),n}),Object.values=Object.values?Object.values:function(t){var e=Object.prototype.toString.call(t);if(null==t)throw new TypeError("Cannot convert undefined or null to object");if(~["[object String]","[object Object]","[object Array]","[object Function]"].indexOf(e)){if(Object.keys)return Object.keys(t).map((function(e){return t[e]}));var n=[];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&n.push(t[r]);return n}return[]},"function"!=typeof Object.assign&&Object.defineProperty(Object,"assign",{value:function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];var r=e[0];if(null==r)throw new TypeError("Cannot convert undefined or null to object");for(var o=Object(r),i=1;i<e.length;i++){var a=e[i];if(null!=a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(o[c]=a[c])}return o},writable:!0,configurable:!0}),[Element.prototype,CharacterData.prototype,DocumentType.prototype].forEach((function(t){t.hasOwnProperty("remove")||Object.defineProperty(t,"remove",{configurable:!0,enumerable:!0,writable:!0,value:function(){this.parentNode.removeChild(this)}})}))},3428:function(t){"use strict";t.exports="/*! Hint.css - v2.7.0 - 2021-10-01\n* https://kushagra.dev/lab/hint/\n* Copyright (c) 2021 Kushagra Gour */\n\n[class*=hint--]{position:relative;display:inline-block}[class*=hint--]:after,[class*=hint--]:before{position:absolute;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);transform:translate3d(0,0,0);visibility:hidden;opacity:0;z-index:1000000;pointer-events:none;-webkit-transition:.3s ease;-moz-transition:.3s ease;transition:.3s ease;-webkit-transition-delay:0s;-moz-transition-delay:0s;transition-delay:0s}[class*=hint--]:hover:after,[class*=hint--]:hover:before{visibility:visible;opacity:1;-webkit-transition-delay:.1s;-moz-transition-delay:.1s;transition-delay:.1s}[class*=hint--]:before{content:'';position:absolute;background:0 0;border:6px solid transparent;z-index:1000001}[class*=hint--]:after{background:#383838;color:#fff;padding:8px 10px;font-size:12px;font-family:\"Helvetica Neue\",Helvetica,Arial,sans-serif;line-height:12px;white-space:nowrap;text-shadow:0 -1px 0 #000;box-shadow:4px 4px 8px rgba(0,0,0,.3)}[class*=hint--][aria-label]:after{content:attr(aria-label)}[class*=hint--][data-hint]:after{content:attr(data-hint)}[aria-label='']:after,[aria-label='']:before,[data-hint='']:after,[data-hint='']:before{display:none!important}.hint--top-left:before,.hint--top-right:before,.hint--top:before{border-top-color:#383838}.hint--bottom-left:before,.hint--bottom-right:before,.hint--bottom:before{border-bottom-color:#383838}.hint--top:after,.hint--top:before{bottom:100%;left:50%}.hint--top:before{margin-bottom:-11px;left:calc(50% - 6px)}.hint--top:after{-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);transform:translateX(-50%)}.hint--top:hover:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--top:hover:after{-webkit-transform:translateX(-50%) translateY(-8px);-moz-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}.hint--bottom:after,.hint--bottom:before{top:100%;left:50%}.hint--bottom:before{margin-top:-11px;left:calc(50% - 6px)}.hint--bottom:after{-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);transform:translateX(-50%)}.hint--bottom:hover:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--bottom:hover:after{-webkit-transform:translateX(-50%) translateY(8px);-moz-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}.hint--right:before{border-right-color:#383838;margin-left:-11px;margin-bottom:-6px}.hint--right:after{margin-bottom:-14px}.hint--right:after,.hint--right:before{left:100%;bottom:50%}.hint--right:hover:after,.hint--right:hover:before{-webkit-transform:translateX(8px);-moz-transform:translateX(8px);transform:translateX(8px)}.hint--left:before{border-left-color:#383838;margin-right:-11px;margin-bottom:-6px}.hint--left:after{margin-bottom:-14px}.hint--left:after,.hint--left:before{right:100%;bottom:50%}.hint--left:hover:after,.hint--left:hover:before{-webkit-transform:translateX(-8px);-moz-transform:translateX(-8px);transform:translateX(-8px)}.hint--top-left:after,.hint--top-left:before{bottom:100%;left:50%}.hint--top-left:before{margin-bottom:-11px;left:calc(50% - 6px)}.hint--top-left:after{-webkit-transform:translateX(-100%);-moz-transform:translateX(-100%);transform:translateX(-100%);margin-left:12px}.hint--top-left:hover:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--top-left:hover:after{-webkit-transform:translateX(-100%) translateY(-8px);-moz-transform:translateX(-100%) translateY(-8px);transform:translateX(-100%) translateY(-8px)}.hint--top-right:after,.hint--top-right:before{bottom:100%;left:50%}.hint--top-right:before{margin-bottom:-11px;left:calc(50% - 6px)}.hint--top-right:after{-webkit-transform:translateX(0);-moz-transform:translateX(0);transform:translateX(0);margin-left:-12px}.hint--top-right:hover:after,.hint--top-right:hover:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--bottom-left:after,.hint--bottom-left:before{top:100%;left:50%}.hint--bottom-left:before{margin-top:-11px;left:calc(50% - 6px)}.hint--bottom-left:after{-webkit-transform:translateX(-100%);-moz-transform:translateX(-100%);transform:translateX(-100%);margin-left:12px}.hint--bottom-left:hover:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--bottom-left:hover:after{-webkit-transform:translateX(-100%) translateY(8px);-moz-transform:translateX(-100%) translateY(8px);transform:translateX(-100%) translateY(8px)}.hint--bottom-right:after,.hint--bottom-right:before{top:100%;left:50%}.hint--bottom-right:before{margin-top:-11px;left:calc(50% - 6px)}.hint--bottom-right:after{-webkit-transform:translateX(0);-moz-transform:translateX(0);transform:translateX(0);margin-left:-12px}.hint--bottom-right:hover:after,.hint--bottom-right:hover:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--large:after,.hint--medium:after,.hint--small:after{white-space:normal;line-height:1.4em;word-wrap:break-word}.hint--small:after{width:80px}.hint--medium:after{width:150px}.hint--large:after{width:300px}.hint--error:after{background-color:#b34e4d;text-shadow:0 -1px 0 #592726}.hint--error.hint--top-left:before,.hint--error.hint--top-right:before,.hint--error.hint--top:before{border-top-color:#b34e4d}.hint--error.hint--bottom-left:before,.hint--error.hint--bottom-right:before,.hint--error.hint--bottom:before{border-bottom-color:#b34e4d}.hint--error.hint--left:before{border-left-color:#b34e4d}.hint--error.hint--right:before{border-right-color:#b34e4d}.hint--warning:after{background-color:#c09854;text-shadow:0 -1px 0 #6c5328}.hint--warning.hint--top-left:before,.hint--warning.hint--top-right:before,.hint--warning.hint--top:before{border-top-color:#c09854}.hint--warning.hint--bottom-left:before,.hint--warning.hint--bottom-right:before,.hint--warning.hint--bottom:before{border-bottom-color:#c09854}.hint--warning.hint--left:before{border-left-color:#c09854}.hint--warning.hint--right:before{border-right-color:#c09854}.hint--info:after{background-color:#3986ac;text-shadow:0 -1px 0 #1a3c4d}.hint--info.hint--top-left:before,.hint--info.hint--top-right:before,.hint--info.hint--top:before{border-top-color:#3986ac}.hint--info.hint--bottom-left:before,.hint--info.hint--bottom-right:before,.hint--info.hint--bottom:before{border-bottom-color:#3986ac}.hint--info.hint--left:before{border-left-color:#3986ac}.hint--info.hint--right:before{border-right-color:#3986ac}.hint--success:after{background-color:#458746;text-shadow:0 -1px 0 #1a321a}.hint--success.hint--top-left:before,.hint--success.hint--top-right:before,.hint--success.hint--top:before{border-top-color:#458746}.hint--success.hint--bottom-left:before,.hint--success.hint--bottom-right:before,.hint--success.hint--bottom:before{border-bottom-color:#458746}.hint--success.hint--left:before{border-left-color:#458746}.hint--success.hint--right:before{border-right-color:#458746}.hint--always:after,.hint--always:before{opacity:1;visibility:visible}.hint--always.hint--top:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--always.hint--top:after{-webkit-transform:translateX(-50%) translateY(-8px);-moz-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}.hint--always.hint--top-left:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--always.hint--top-left:after{-webkit-transform:translateX(-100%) translateY(-8px);-moz-transform:translateX(-100%) translateY(-8px);transform:translateX(-100%) translateY(-8px)}.hint--always.hint--top-right:after,.hint--always.hint--top-right:before{-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}.hint--always.hint--bottom:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--always.hint--bottom:after{-webkit-transform:translateX(-50%) translateY(8px);-moz-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}.hint--always.hint--bottom-left:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--always.hint--bottom-left:after{-webkit-transform:translateX(-100%) translateY(8px);-moz-transform:translateX(-100%) translateY(8px);transform:translateX(-100%) translateY(8px)}.hint--always.hint--bottom-right:after,.hint--always.hint--bottom-right:before{-webkit-transform:translateY(8px);-moz-transform:translateY(8px);transform:translateY(8px)}.hint--always.hint--left:after,.hint--always.hint--left:before{-webkit-transform:translateX(-8px);-moz-transform:translateX(-8px);transform:translateX(-8px)}.hint--always.hint--right:after,.hint--always.hint--right:before{-webkit-transform:translateX(8px);-moz-transform:translateX(8px);transform:translateX(8px)}.hint--rounded:after{border-radius:4px}.hint--no-animate:after,.hint--no-animate:before{-webkit-transition-duration:0s;-moz-transition-duration:0s;transition-duration:0s}.hint--bounce:after,.hint--bounce:before{-webkit-transition:opacity .3s ease,visibility .3s ease,-webkit-transform .3s cubic-bezier(.71,1.7,.77,1.24);-moz-transition:opacity .3s ease,visibility .3s ease,-moz-transform .3s cubic-bezier(.71,1.7,.77,1.24);transition:opacity .3s ease,visibility .3s ease,transform .3s cubic-bezier(.71,1.7,.77,1.24)}.hint--no-shadow:after,.hint--no-shadow:before{text-shadow:initial;box-shadow:initial}.hint--no-arrow:before{display:none}"}},n={};function r(t){var o=n[t];if(void 0!==o)return o.exports;var i=n[t]={exports:{}};return e[t].call(i.exports,i,i.exports,r),i.exports}r.m=e,t=[],r.O=function(e,n,o,i){if(!n){var a=1/0;for(l=0;l<t.length;l++){n=t[l][0],o=t[l][1],i=t[l][2];for(var c=!0,s=0;s<n.length;s++)(!1&i||a>=i)&&Object.keys(r.O).every((function(t){return r.O[t](n[s])}))?n.splice(s--,1):(c=!1,i<a&&(a=i));if(c){t.splice(l--,1);var u=o();void 0!==u&&(e=u)}}return e}i=i||0;for(var l=t.length;l>0&&t[l-1][2]>i;l--)t[l]=t[l-1];t[l]=[n,o,i]},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(t,e){for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},function(){var t;r.g.importScripts&&(t=r.g.location+"");var e=r.g.document;if(!t&&e&&(e.currentScript&&(t=e.currentScript.src),!t)){var n=e.getElementsByTagName("script");n.length&&(t=n[n.length-1].src)}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=t}(),function(){var t={392:0};r.O.j=function(e){return 0===t[e]};var e=function(e,n){var o,i,a=n[0],c=n[1],s=n[2],u=0;if(a.some((function(e){return 0!==t[e]}))){for(o in c)r.o(c,o)&&(r.m[o]=c[o]);if(s)var l=s(r)}for(e&&e(n);u<a.length;u++)i=a[u],r.o(t,i)&&t[i]&&t[i][0](),t[a[u]]=0;return r.O(l)},n=self.webpackChunkrealCookieBanner_name_=self.webpackChunkrealCookieBanner_name_||[];n.forEach(e.bind(null,0)),n.push=e.bind(null,n.push.bind(n))}(),r.O(void 0,[568],(function(){return r(6652)}));var o=r.O(void 0,[568],(function(){return r(4584)}));o=r.O(o),realCookieBanner_banner=o}();
|
2 |
//# sourceMappingURL=banner.lite.js.map
|
public/dist/banner.lite.js.map
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"version":3,"file":"banner.lite.js","mappings":"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","sources":["webpack:///webpack/runtime/chunk loaded","webpack:///../../frontend-packages/cookie-consent-web-client/src/decision/getServiceSelection.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/getManagerDependingVariables.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/optIn.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/optInOutManager.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/deleteCookiesLocally.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/optOut.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/apply.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/decision/getDefaultDecision.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/manager.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/decision/getUserDecision.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/getCookie.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/explode.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/events/bannerPredecisionShow.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/events/optIn.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/events/optInAll.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/events/optOut.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/ready.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/regExpPatternFromWildcardName.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/pregQuote.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/supportsCookies.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/dom/applyDynamicsToHtml.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/dom/htmlAttributes.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/dom/putHtmlCodeToDom.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/events/optInContentBlocker.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/utils/dispatchResizeEvent.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/utils/htmlDecode.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/utils/isUrl.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/utils/parents.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/asciiSpinner.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/common/groups/cookieProperty.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/groups/cookieProperty.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/common/groups/cookiePropertyList.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/common/groups/cookie.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/groups/cookie.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/plainAntdIconAsSvg.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/tooltip.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/contexts/banner.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/contexts/blocker.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/common/footer/link.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/footer/link.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/common/footer/poweredByLink.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/utils/jsxJoin.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/common/useCommonFooterLink.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/common/useCommonTeachings.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/useBannerOrBlocker.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/useLegalLinks.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/usePlainCss.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/body/teaching.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/body/teachingSeparator.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/groups/checkbox.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/groups/linkMore.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/header/headline.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/scale.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/others/getSsrPoweredByLink.tsx","webpack:///../../frontend-packages/resolve-none-computed-style/src/matchingSelector.tsx","webpack:///../../wordpress-packages/utils/lib/factory/ajax/commonUrlBuilder.tsx","webpack:///../../wordpress-packages/utils/lib/factory/ajax/nonceDeprecationPool.tsx","webpack:///../../wordpress-packages/utils/lib/factory/ajax/parseResult.tsx","webpack:///../../wordpress-packages/utils/lib/factory/ajax/commonRequest.tsx","webpack:///../../wordpress-packages/utils/lib/factory/ajax/routeHttpVerbEnum.tsx","webpack:///../../wordpress-packages/utils/lib/helpers.tsx","webpack:///./src/public/ts/api/unblock.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/gateway.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/supportsCookies.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/isCrawler.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/promiseTimeout.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/dynamicRequest.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/isDoNotTrack.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/isDoNotTrack.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/userConsent.tsx","webpack:///./src/public/ts/wp-api/consentDynamicPredecision.get.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/others/isHiddenDueLegal.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerAnimation.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/index.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerStateContextCallbacks.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerActionLinks.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/useResettableAnimation.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/utils/hexToRgb.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/utils/calculateRgba.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/animateCss.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/useRenderedHeightsAsCssVars.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerButtonCallbacks.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/portal.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/closeIcon.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/header/closeIcon.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/header/header.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/header/container.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/header/header.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/header/logo.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/sectionTitle.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/groups/title.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/groups/description.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/cookie.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/group.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/groups/group.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/list.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/groups/groups.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/dottedGroup.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/dottedGroupItem.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/dottedGroupBullet.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/dottedGroupList.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/dottedGroups.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/historySelect.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/historySelect.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/historySelectOption.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/common.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/acceptEssentials.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/acceptIndividual.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/save.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/acceptAll.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/button.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/utils/isIE.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/ellipsesText.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/buttonList.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/body.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/leftSide.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/description.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/rightSide.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/container.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/body.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/footer/footer.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/footer/container.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/footer/footer.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/content.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/content/content.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/header/separator.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/footer/separator.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/animatedContent.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/content/inner.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/banner.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/useRestrictScrollWhenVisible.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerHistory.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/overlay/alignment.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/overlay/overlay.tsx","webpack:///./src/public/ts/wp-api/consent.get.tsx","webpack:///./src/public/ts/components/websiteBanner.tsx","webpack:///./src/public/ts/hooks/useTcf.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerToggleOverlay.tsx","webpack:///./src/public/ts/hooks/useBannerPreDecisionGateway.tsx","webpack:///./src/public/ts/utils/isCustomize.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/isCrawler.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/isPreventPreDecision.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/hasPageClass.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerConsentListener.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/waitObject.tsx","webpack:///./src/public/ts/others/comp/listenPresetOptIn.tsx","webpack:///./src/public/ts/wp-api/consentClear.delete.tsx","webpack:///./src/public/ts/api/consentSync.tsx","webpack:///./src/public/ts/api/consent.tsx","webpack:///./src/public/ts/api/consentAll.tsx","webpack:///./src/public/ts/banner.tsx","webpack:///./src/public/ts/tcf/cmpApi.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/decision/printConsentUuidsToHTMLElement.tsx","webpack:///./src/public/ts/utils/ensureBodyElement.tsx","webpack:///./src/public/ts/others/deleteCookiesServer.tsx","webpack:///./src/public/ts/components/bannerProductionNotice.tsx","webpack:///./src/public/ts/wp-api/consent.post.tsx","webpack:///./src/public/ts/others/applyConsentForwarding.tsx","webpack:///./src/public/ts/others/applyConsent.tsx","webpack:///./src/public/ts/others/getCookieConsentManager.tsx","webpack:///./src/public/ts/utils/getCmpVersion.tsx","webpack:///./src/public/ts/utils/getOptionsFromWindow.tsx","webpack:///./src/public/ts/utils/getOtherOptionsFromWindow.tsx","webpack:///./src/public/ts/utils/polyfill.tsx","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///webpack/runtime/publicPath","webpack:///webpack/runtime/jsonp chunk loading","webpack:///webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \".\";\n\n/**\n * Read the selected groups + cookies depending on the passed type.\n */\nfunction getServiceSelection(_ref) {\n var decisionCookieName = _ref.decisionCookieName,\n tagManager = _ref.tagManager,\n groups = _ref.groups,\n essentialGroupSlug = _ref.essentialGroupSlug,\n type = _ref.type;\n var selectedGroups;\n var isManagerActive = tagManager !== \"none\";\n\n var _groups$filter = groups.filter(function (_ref2) {\n var slug = _ref2.slug;\n return slug === essentialGroupSlug;\n }),\n _groups$filter2 = _slicedToArray(_groups$filter, 1),\n essentialGroupObj = _groups$filter2[0];\n\n var consentEssentials = _defineProperty({}, essentialGroupObj.id, essentialGroupObj.items.map(function (_ref3) {\n var id = _ref3.id;\n return id;\n })); // Read current consent\n\n\n if (type === \"consent\") {\n var decision = getUserDecision(decisionCookieName);\n\n if (decision !== false) {\n selectedGroups = decision.consent;\n } else {\n console.warn(\"Something went wrong while reading the cookie, fallback to essentials only...\");\n selectedGroups = consentEssentials;\n }\n }\n\n if (type === \"essentials\") {\n selectedGroups = consentEssentials;\n }\n\n return {\n isManagerActive: isManagerActive,\n selectedGroups: selectedGroups,\n iterateCookies: function () {\n var _iterateCookies = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(callback) {\n var _iterator, _step, _group, _iterator2, _step2, _selectedGroups$_grou, _cookie, _isOptIn;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _iterator = _createForOfIteratorHelper(groups);\n _context.prev = 1;\n\n _iterator.s();\n\n case 3:\n if ((_step = _iterator.n()).done) {\n _context.next = 25;\n break;\n }\n\n _group = _step.value;\n _iterator2 = _createForOfIteratorHelper(_group.items);\n _context.prev = 6;\n\n _iterator2.s();\n\n case 8:\n if ((_step2 = _iterator2.n()).done) {\n _context.next = 15;\n break;\n }\n\n _cookie = _step2.value;\n _isOptIn = type === \"all\" || ((_selectedGroups$_grou = selectedGroups[_group.id]) === null || _selectedGroups$_grou === void 0 ? void 0 : _selectedGroups$_grou.indexOf(_cookie.id)) > -1;\n _context.next = 13;\n return callback(_group, _cookie, _isOptIn);\n\n case 13:\n _context.next = 8;\n break;\n\n case 15:\n _context.next = 20;\n break;\n\n case 17:\n _context.prev = 17;\n _context.t0 = _context[\"catch\"](6);\n\n _iterator2.e(_context.t0);\n\n case 20:\n _context.prev = 20;\n\n _iterator2.f();\n\n return _context.finish(20);\n\n case 23:\n _context.next = 3;\n break;\n\n case 25:\n _context.next = 30;\n break;\n\n case 27:\n _context.prev = 27;\n _context.t1 = _context[\"catch\"](1);\n\n _iterator.e(_context.t1);\n\n case 30:\n _context.prev = 30;\n\n _iterator.f();\n\n return _context.finish(30);\n\n case 33:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[1, 27, 30, 33], [6, 17, 20, 23]]);\n }));\n\n function iterateCookies(_x) {\n return _iterateCookies.apply(this, arguments);\n }\n\n return iterateCookies;\n }()\n };\n}\n\nexport { getServiceSelection };","function getManagerDependingVariables(isManagerActive, setCookiesViaManager) {\n var useVariableNameCamel;\n var useVariableNamePascal;\n var useGlobalObjectName;\n\n if (isManagerActive) {\n useVariableNameCamel = setCookiesViaManager;\n useVariableNamePascal = useVariableNameCamel.charAt(0).toUpperCase() + useVariableNameCamel.slice(1);\n var isGtm = setCookiesViaManager === \"googleTagManager\"; // const isMtm = setCookiesViaManager === \"matomoTagManager\"; // This variable is not yet needed, because we only have 2 managers\n\n useGlobalObjectName = isGtm ? \"dataLayer\" : \"_mtm\";\n }\n\n return {\n useVariableNameCamel: useVariableNameCamel,\n useVariableNamePascal: useVariableNamePascal,\n useGlobalObjectName: useGlobalObjectName\n };\n}\n\nexport { getManagerDependingVariables };","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { putHtmlCodeToDom } from \"@devowl-wp/headless-content-unblocker\";\nimport { getServiceSelection } from \"../decision\";\nimport { OPT_IN_EVENT } from \"../events\";\nimport { getManagerDependingVariables } from \".\";\n\n/**\n * Opt-in to a set of cookies.\n */\nfunction applyOptIn(_x) {\n return _applyOptIn.apply(this, arguments);\n}\n\nfunction _applyOptIn() {\n _applyOptIn = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(options) {\n var allOptInCookies, _getServiceSelection, isManagerActive, iterateCookies, tagManager, skipOptIn, _getManagerDependingV, useGlobalObjectName, useVariableNamePascal, isManagerOptOut, dataLayerPromise, waitPromises;\n\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n allOptInCookies = [];\n _getServiceSelection = getServiceSelection(options), isManagerActive = _getServiceSelection.isManagerActive, iterateCookies = _getServiceSelection.iterateCookies;\n tagManager = options.tagManager, skipOptIn = options.skipOptIn;\n _getManagerDependingV = getManagerDependingVariables(isManagerActive, tagManager), useGlobalObjectName = _getManagerDependingV.useGlobalObjectName, useVariableNamePascal = _getManagerDependingV.useVariableNamePascal; // Handle managers like GTM and MTM\n\n isManagerOptOut = false;\n dataLayerPromise = Promise.resolve(undefined);\n waitPromises = []; // Handle opt-ins sequentially\n\n _context2.next = 9;\n return iterateCookies( /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(group, cookie, isOptIn) {\n var codeDynamics, codeOptIn, rest, isManager, isOnlyWhenNoConsentToManager, isSkipOptIn;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n codeDynamics = cookie.codeDynamics, codeOptIn = cookie.codeOptIn, rest = _objectWithoutProperties(cookie, [\"codeDynamics\", \"codeOptIn\"]);\n isManager = isManagerActive && rest[\"thisIs\".concat(useVariableNamePascal)];\n\n if (isOptIn) {\n // Check if the script should explicitly only be loaded if no consent is given to the manager\n isOnlyWhenNoConsentToManager = isManagerActive && rest[\"codeOptInNo\".concat(useVariableNamePascal)];\n isSkipOptIn = typeof skipOptIn === \"function\" ? skipOptIn(cookie) : false;\n\n if (!isOnlyWhenNoConsentToManager && !isSkipOptIn) {\n waitPromises.push(putHtmlCodeToDom(codeOptIn, codeDynamics));\n } // If this is a manager, wait for the object to be loaded\n\n /* Silence is golden... Until you have PRO Version! */\n\n\n // If this is a manager, wait for the object to be loaded\n\n /* Silence is golden... Until you have PRO Version! */\n document.dispatchEvent(new CustomEvent(OPT_IN_EVENT, {\n detail: {\n group: group,\n cookie: cookie\n }\n }));\n allOptInCookies.push({\n group: group,\n cookie: cookie\n });\n } else if (isManager) {\n /* Silence is golden... Until you have PRO Version! */\n }\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x2, _x3, _x4) {\n return _ref.apply(this, arguments);\n };\n }());\n\n case 9:\n return _context2.abrupt(\"return\", {\n isManagerOptOut: isManagerOptOut,\n dataLayerPromise: dataLayerPromise,\n cookies: allOptInCookies,\n ready: Promise.all(waitPromises)\n });\n\n case 10:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n return _applyOptIn.apply(this, arguments);\n}\n\nexport { applyOptIn };","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { putHtmlCodeToDom } from \"@devowl-wp/headless-content-unblocker\";\nimport { getServiceSelection } from \"../decision\";\nimport { getManagerDependingVariables } from \".\";\n/**\n * Opt-in and opt-out to a set of cookies for a given data manager like GTM / MTM.\n */\n\nfunction applyOptInOutManager(_x, _x2, _x3) {\n return _applyOptInOutManager.apply(this, arguments);\n}\n\nfunction _applyOptInOutManager() {\n _applyOptInOutManager = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(options, dataLayer, isManagerOptOut) {\n var waitPromises, _getServiceSelection, isManagerActive, iterateCookies, tagManager, _getManagerDependingV, useVariableNameCamel, useVariableNamePascal;\n\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n waitPromises = [];\n /* onlypro:start */\n\n _getServiceSelection = getServiceSelection(options), isManagerActive = _getServiceSelection.isManagerActive, iterateCookies = _getServiceSelection.iterateCookies;\n tagManager = options.tagManager;\n _getManagerDependingV = getManagerDependingVariables(isManagerActive, tagManager), useVariableNameCamel = _getManagerDependingV.useVariableNameCamel, useVariableNamePascal = _getManagerDependingV.useVariableNamePascal; // When there is a manager, let's push all opt-in and opt-out events (parallel)\n\n if (!dataLayer) {\n _context2.next = 11;\n break;\n }\n\n // Opt-in events\n iterateCookies(function (group, cookie, isOptIn) {\n var event = cookie[\"\".concat(useVariableNameCamel, \"InEventName\")];\n\n if (isOptIn && event) {\n dataLayer.push({\n realCookieBannerOptInEvents: _defineProperty({}, event, true),\n event: event\n });\n }\n }); // Wait x seconds\n\n _context2.next = 8;\n return new Promise(function (r) {\n return setTimeout(r, 1000);\n });\n\n case 8:\n // Opt-out events\n iterateCookies(function (group, cookie, isOptIn) {\n var event = cookie[\"\".concat(useVariableNameCamel, \"OutEventName\")];\n\n if (!isOptIn && event) {\n dataLayer.push({\n realCookieBannerOptOutEvents: _defineProperty({}, event, true),\n event: event\n });\n }\n });\n _context2.next = 14;\n break;\n\n case 11:\n if (!(isManagerActive && isManagerOptOut)) {\n _context2.next = 14;\n break;\n }\n\n _context2.next = 14;\n return iterateCookies( /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(group, _ref, isOptIn) {\n var codeDynamics, codeOptIn, rest;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n codeDynamics = _ref.codeDynamics, codeOptIn = _ref.codeOptIn, rest = _objectWithoutProperties(_ref, [\"codeDynamics\", \"codeOptIn\"]);\n\n if (isOptIn && rest[\"codeOptInNo\".concat(useVariableNamePascal)]) {\n waitPromises.push(putHtmlCodeToDom(codeOptIn, codeDynamics));\n }\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x4, _x5, _x6) {\n return _ref2.apply(this, arguments);\n };\n }());\n\n case 14:\n return _context2.abrupt(\"return\", {\n ready: Promise.all(waitPromises)\n });\n\n case 15:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n return _applyOptInOutManager.apply(this, arguments);\n}\n\nexport { applyOptInOutManager };","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport Cookie from \"js-cookie\";\nimport { applyDynamicsToHtml } from \"@devowl-wp/headless-content-unblocker\";\nimport { regExpPatternFromWildcardName } from \"../utils\";\n/**\n * Delete cookies on client side (currently only `localStorage` and `sessionStorage`).\n */\n\nfunction deleteCookiesLocally(technicalDefinitions, dynamics) {\n var _iterator = _createForOfIteratorHelper(technicalDefinitions),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var _step$value = _step.value,\n type = _step$value.type,\n name = _step$value.name;\n // Create valid Regxp pattern\n var pattern = new RegExp(regExpPatternFromWildcardName(applyDynamicsToHtml(name, dynamics)), \"g\");\n\n switch (type) {\n case \"http\":\n {\n for (var _i = 0, _Object$keys = Object.keys(Cookie.get()); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n\n if (pattern.test(key)) {\n Cookie.remove(key);\n }\n }\n\n break;\n }\n\n case \"local\":\n case \"session\":\n {\n try {\n var useStorage = type === \"local\" ? window.localStorage : window.sessionStorage;\n\n if (useStorage) {\n for (var _i2 = 0, _Object$keys2 = Object.keys(useStorage); _i2 < _Object$keys2.length; _i2++) {\n var itemName = _Object$keys2[_i2];\n\n if (pattern.test(itemName)) {\n try {\n // Fallback to `null` because `removeItem` can have issues on some browsers\n useStorage.setItem(itemName, null);\n } catch (e) {// Silence is golden. A `QuotaExceededError` can be thrown but we ignore it, because we remove the item\n } // Try as long (but max 100 times) until deleted\n\n\n var tries = 0;\n\n while (useStorage.getItem(itemName) && tries < 100) {\n tries++;\n useStorage.removeItem(itemName);\n }\n }\n }\n }\n } catch (e) {\n // Browser does not support localStorage, let's do nothing...\n continue;\n }\n\n break;\n }\n\n default:\n break;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n}\n\nexport { deleteCookiesLocally };","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { putHtmlCodeToDom } from \"@devowl-wp/headless-content-unblocker\";\nimport { getServiceSelection } from \"../decision\";\nimport { OPT_OUT_EVENT } from \"../events\";\nimport { deleteCookiesLocally, getManagerDependingVariables } from \".\";\n/**\n * Opt-in to a set of cookies for a given data manager like GTM / MTM.\n */\n\nfunction applyOptOut(_x, _x2) {\n return _applyOptOut.apply(this, arguments);\n}\n\nfunction _applyOptOut() {\n _applyOptOut = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(options, isManagerOptOut) {\n var _getServiceSelection, isManagerActive, iterateCookies, tagManager, _getManagerDependingV, useVariableNamePascal, deleteHttpCookies;\n\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _getServiceSelection = getServiceSelection(options), isManagerActive = _getServiceSelection.isManagerActive, iterateCookies = _getServiceSelection.iterateCookies;\n tagManager = options.tagManager;\n _getManagerDependingV = getManagerDependingVariables(isManagerActive, tagManager), useVariableNamePascal = _getManagerDependingV.useVariableNamePascal; // Handle opt-outs sequentially\n\n deleteHttpCookies = [];\n _context2.next = 6;\n return iterateCookies( /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(group, cookie, isOptIn) {\n var id, codeDynamics, codeOptOut, codeOptOutDelete, noTechnicalDefinitions, technicalDefinitions, rest, isOnlyWhenNoConsentToManager;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n id = cookie.id, codeDynamics = cookie.codeDynamics, codeOptOut = cookie.codeOptOut, codeOptOutDelete = cookie.codeOptOutDelete, noTechnicalDefinitions = cookie.noTechnicalDefinitions, technicalDefinitions = cookie.technicalDefinitions, rest = _objectWithoutProperties(cookie, [\"id\", \"codeDynamics\", \"codeOptOut\", \"codeOptOutDelete\", \"noTechnicalDefinitions\", \"technicalDefinitions\"]);\n\n if (!isOptIn) {\n // Check if the script should explicitly only be loaded if no consent is given to the manager\n isOnlyWhenNoConsentToManager = isManagerActive && rest[\"codeOptInNo\".concat(useVariableNamePascal)];\n\n if (isOnlyWhenNoConsentToManager && !isManagerOptOut || !isOnlyWhenNoConsentToManager) {\n putHtmlCodeToDom(codeOptOut, codeDynamics);\n }\n\n if (codeOptOutDelete && !noTechnicalDefinitions) {\n deleteCookiesLocally(technicalDefinitions, codeDynamics); // Mark deletable server-side cookies\n\n // Mark deletable server-side cookies\n if (technicalDefinitions.some(function (_ref2) {\n var type = _ref2.type;\n return type === \"http\";\n })) {\n deleteHttpCookies.push(id);\n }\n }\n\n document.dispatchEvent(new CustomEvent(OPT_OUT_EVENT, {\n detail: {\n group: group,\n cookie: cookie,\n deleteHttpCookies: deleteHttpCookies\n }\n }));\n }\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x3, _x4, _x5) {\n return _ref.apply(this, arguments);\n };\n }());\n\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n return _applyOptOut.apply(this, arguments);\n}\n\nexport { applyOptOut };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { applyOptIn, applyOptInOutManager, applyOptOut } from \".\";\nimport { OPT_IN_ALL_EVENT } from \"../events\";\nimport { ready } from \"../utils\";\n/**\n * Apply cookies on frontend. Depending on some other mechanism you can differ\n * between the following \"decision\" types:\n *\n * - `all`: All cookies are applied (e. g. bots)\n * - `consent`: All cookies from the current consent (read from cookie)\n *\n * The cookies are sent in the following way:\n *\n * 1. Apply opt-in scripts (sequentially)\n * 2. If GTM / MTM is active, wait for the data layer\n * a) Push all opt-in events (parallel)\n * b) Wait x seconds to avoid side effects\n * c) Push all opt-out events (parallel)\n * 3. Apply opt-in scripts (sequentially)\n *\n * @param type\n * @see https://www.simoahava.com/analytics/notify-page-google-tag-manager-loaded/\n * @see https://support.google.com/tagmanager/answer/7679219\n * @see https://developer.matomo.org/guides/tagmanager/datalayer\n */\n\nfunction apply(_x) {\n return _apply.apply(this, arguments);\n}\n\nfunction _apply() {\n _apply = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(options) {\n var _yield$applyOptIn, dataLayerPromise, isManagerOptOut, cookies, applyOptInReady, _yield$applyOptInOutM, applyOptInOutManagerReady, optInAllReady;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return ready();\n\n case 2:\n _context.next = 4;\n return applyOptIn(options);\n\n case 4:\n _yield$applyOptIn = _context.sent;\n dataLayerPromise = _yield$applyOptIn.dataLayerPromise;\n isManagerOptOut = _yield$applyOptIn.isManagerOptOut;\n cookies = _yield$applyOptIn.cookies;\n applyOptInReady = _yield$applyOptIn.ready;\n _context.t0 = applyOptInOutManager;\n _context.t1 = options;\n _context.next = 13;\n return dataLayerPromise;\n\n case 13:\n _context.t2 = _context.sent;\n _context.t3 = isManagerOptOut;\n _context.next = 17;\n return (0, _context.t0)(_context.t1, _context.t2, _context.t3);\n\n case 17:\n _yield$applyOptInOutM = _context.sent;\n applyOptInOutManagerReady = _yield$applyOptInOutM.ready;\n optInAllReady = Promise.all([applyOptInReady, applyOptInOutManagerReady]);\n document.dispatchEvent(new CustomEvent(OPT_IN_ALL_EVENT, {\n detail: {\n cookies: cookies,\n ready: optInAllReady\n }\n })); // Do opt-out\n\n _context.next = 23;\n return applyOptOut(options, isManagerOptOut);\n\n case 23:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _apply.apply(this, arguments);\n}\n\nexport { apply };","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\n\n/**\n * Get the default decision and respect essential group and legitimate interests.\n */\nfunction getDefaultDecision(_ref) {\n var groups = _ref.groups,\n essentialGroupSlug = _ref.essentialGroupSlug;\n var respectLegitimateInterests = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n var _groups$filter = groups.filter(function (_ref2) {\n var slug = _ref2.slug;\n return slug === essentialGroupSlug;\n }),\n _groups$filter2 = _slicedToArray(_groups$filter, 1),\n essentialGroupObj = _groups$filter2[0]; // We need always use the current essential group\n\n\n var result = _defineProperty({}, essentialGroupObj.id, essentialGroupObj.items.map(function (_ref3) {\n var id = _ref3.id;\n return id;\n }));\n\n if (respectLegitimateInterests) {\n var _iterator = _createForOfIteratorHelper(groups),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var group = _step.value;\n\n if (group === essentialGroupObj) {\n continue;\n }\n\n var ids = group.items.filter(function (_ref4) {\n var legalBasis = _ref4.legalBasis;\n return legalBasis === \"legitimate-interest\";\n }).map(function (_ref5) {\n var id = _ref5.id;\n return id;\n });\n\n if (ids.length) {\n result[group.id] = ids;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n\n return result;\n}\n\nexport { getDefaultDecision };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport { apply } from \".\";\nimport { getDefaultDecision as _getDefaultDecision, getUserDecision as _getUserDecision } from \"..\";\n\n/**\n * Main class to manage cookie consents within your application.\n */\nvar CookieConsentManager = /*#__PURE__*/function () {\n function CookieConsentManager(options) {\n _classCallCheck(this, CookieConsentManager);\n\n this.options = void 0;\n this.options = options;\n }\n\n _createClass(CookieConsentManager, [{\n key: \"applyCookies\",\n value: function applyCookies(options) {\n return apply(_objectSpread(_objectSpread({}, options), this.options));\n }\n }, {\n key: \"getUserDecision\",\n value: function getUserDecision() {\n return _getUserDecision(this.getOption(\"decisionCookieName\"));\n }\n }, {\n key: \"getDefaultDecision\",\n value: function getDefaultDecision() {\n var respectLegitimateInterests = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n return _getDefaultDecision(this.options, respectLegitimateInterests);\n }\n }, {\n key: \"getOption\",\n value: function getOption(name) {\n return this.options[name];\n }\n }, {\n key: \"getOptions\",\n value: function getOptions() {\n return this.options;\n }\n }]);\n\n return CookieConsentManager;\n}();\n\nexport { CookieConsentManager };","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { explode, getCookie, supportsCookies } from \"../utils\";\n\n/**\n * Get current user decision from the cookie value in a minimal form.\n */\nfunction getUserDecision(cookieName) {\n var cookieValue = getCookie(cookieName);\n\n if (!cookieValue) {\n if (!supportsCookies()) {\n // Use our `window` object instead of cookie value\n return window.rcbDisabledCookieComp || false;\n }\n\n return false;\n } // Validate cookie length\n\n\n var split = explode(cookieValue, \":\", 3);\n\n if (split.length !== 3) {\n return false;\n }\n\n var _split = _slicedToArray(split, 2),\n uuidString = _split[0],\n revision = _split[1];\n\n var uuids = uuidString.split(\",\");\n var uuid = uuids.shift();\n var consent = JSON.parse(split[2]);\n return {\n uuid: uuid,\n previousUuids: uuids,\n revision: revision,\n consent: consent\n };\n}\n\nexport { getUserDecision };","import _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\n\n/**\n * Get cookie by name. Please keep in mind you need to `decodeURIComponent` the value in some cases!\n *\n * @param cname\n * @see https://stackoverflow.com/questions/10730362/get-cookie-by-name\n * @see https://stackoverflow.com/a/25490531/5506547\n */\nfunction getCookie(cname) {\n var decode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n // In some cases there could be cookies with the same name in `document.cooke` -> take the last one\n var matches = _toConsumableArray(document.cookie.matchAll(new RegExp(\"(^|;)\\\\s*\".concat(cname, \"\\\\s*=\\\\s*([^;]+)\"), \"g\")));\n\n if (!matches.length) {\n return \"\";\n }\n\n var value = matches // Last match in `document.cookie`\n .pop() // Value of regex match\n .pop();\n return decode ? decodeURIComponent(value) : value;\n}\n\nexport { getCookie };","/**\n * A PHP's port of `explode`. `.split` is not similar because it does not join\n * remaining string.\n */\nfunction explode(string, separator, n) {\n var split = string.split(separator);\n if (split.length <= n) return split;\n var out = split.slice(0, n - 1);\n out.push(split.slice(n - 1).join(separator));\n return out;\n}\n\nexport { explode };","/**\n * This event is fired when the user has no consent or invalid consent\n * and the banner gets visible.\n */\nexport var BANNER_PRE_DECISION_SHOW_EVENT = \"RCB/Banner/Show\";","export var OPT_IN_EVENT = \"RCB/OptIn\";","export var OPT_IN_ALL_EVENT = \"RCB/OptIn/All\";","export var OPT_OUT_EVENT = \"RCB/OptOut\";","/**\n * Wait DOM is ready depending on a state.\n *\n * - `interactive`: Defer scripts are executing, but DOM is ready\n * - `complete`: All scripts including deferred ones are executed and DOM is ready\n *\n * @see https://stackoverflow.com/a/65430734/5506547\n * @see https://stackoverflow.com/a/51980980/5506547\n */\nvar ready = function ready(fn) {\n var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"complete\";\n return new Promise(function (resolve) {\n var cb = function cb() {\n fn === null || fn === void 0 ? void 0 : fn(); // We need to make this promise non-blocking. E.g. on Safari this\n // could lead to issues as the `readystatechange` event listener\n // can be nested (once `interactive`, then waiting `complete`)\n // Imagine, you are using an `await ready` within a `ready(fn)` statement.\n\n setTimeout(resolve, 0);\n };\n\n if (document.readyState === state) {\n cb();\n } else {\n document.addEventListener(\"readystatechange\", function () {\n if (document.readyState === state) {\n cb();\n }\n });\n }\n });\n};\n\nexport { ready };","import { pregQuote } from \".\";\n/**\n * Create regular expression pattern from a string like `my_test*` and replace asterisks\n * with `(.*)`.\n */\n\nfunction regExpPatternFromWildcardName(name) {\n var tmp = name.replace(/\\*/g, \"PLEACE_REPLACE_ME_AGAIN\");\n return \"^\".concat(pregQuote(tmp).replace(/PLEACE_REPLACE_ME_AGAIN/g, \"(.*)\"), \"$\");\n}\n\nexport { regExpPatternFromWildcardName };","/**\n * Port of `preg_quote`.\n *\n * @see https://github.com/kvz/locutus/blob/3f14dc5d142f5dcbdf36b4271c21a850a4a259da/src/php/pcre/preg_quote.js#L1\n */\nfunction pregQuote(str, delimiter) {\n // discuss at: https://locutus.io/php/preg_quote/\n // original by: booeyOH\n // improved by: Ates Goral (https://magnetiq.com)\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // example 1: preg_quote(\"$40\")\n // returns 1: '\\\\$40'\n // example 2: preg_quote(\"*RRRING* Hello?\")\n // returns 2: '\\\\*RRRING\\\\* Hello\\\\?'\n // example 3: preg_quote(\"\\\\.+*?[^]$(){}=!<>|:\")\n // returns 3: '\\\\\\\\\\\\.\\\\+\\\\*\\\\?\\\\[\\\\^\\\\]\\\\$\\\\(\\\\)\\\\{\\\\}\\\\=\\\\!\\\\<\\\\>\\\\|\\\\:'\n return str.replace(new RegExp(\"[.\\\\\\\\+*?\\\\[\\\\^\\\\]$(){}=!<>|:\\\\\".concat(delimiter || \"\", \"-]\"), \"g\"), \"\\\\$&\");\n}\n\nexport { pregQuote };","/**\n * Check if the current environment supports cookies.\n *\n * @see https://git.io/JcXiP\n * @returns\n */\nfunction supportsCookies() {\n var cookieName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"test\";\n\n try {\n document.cookie = \"\".concat(cookieName, \"=1\");\n var result = document.cookie.indexOf(\"\".concat(cookieName, \"=\")) !== -1;\n document.cookie = \"\".concat(cookieName, \"=1; expires=Thu, 01-Jan-1970 00:00:01 GMT\");\n return result;\n } catch (e) {\n return false;\n }\n}\n\nexport { supportsCookies };","var DYNAMICS_VARIABLE_REGEXP = /{{([A-Za-z0-9_]+)}}/gm;\n/**\n * Takes any string and replaces `{{myVariable}}` with the value of the passed `dynamics` map.\n */\n\nfunction applyDynamicsToHtml(src, dynamics) {\n return src.replace(DYNAMICS_VARIABLE_REGEXP, function (fullMatch, variableName) {\n return Object.prototype.hasOwnProperty.call(dynamics, variableName) ? dynamics[variableName] : fullMatch;\n });\n}\n\nexport { applyDynamicsToHtml, DYNAMICS_VARIABLE_REGEXP };","// Also ported to `view/Blocker.php`\nexport var HTML_ATTRIBUTE_CAPTURE_PREFIX = \"consent-original\";\nexport var HTML_ATTRIBUTE_CAPTURE_CLICK_PREFIX = \"consent-click-original\";\nexport var HTML_ATTRIBUTE_CAPTURE_SUFFIX = \"_\";\nexport var HTML_ATTRIBUTE_BY = \"consent-by\"; // TODO: cookie -> required?\n\nexport var HTML_ATTRIBUTE_COOKIE_IDS = \"consent-required\";\nexport var HTML_ATTRIBUTE_VISUAL_PARENT = \"consent-visual-use-parent\";\nexport var HTML_ATTRIBUTE_VISUAL_PAINT_MODE = \"consent-visual-paint-mode\";\nexport var HTML_ATTRIBUTE_INLINE = \"consent-inline\";\nexport var HTML_ATTRIBUTE_INLINE_STYLE = \"consent-inline-style\";\nexport var HTML_ATTRIBUTE_BLOCKER_ID = \"consent-id\";\nexport var HTML_TAG_CONSENT_SCRIPT = \"script\";\nexport var HTML_ATTRIBUTE_BLOCKER_CONNECTED = \"consent-blocker-connected\";\nexport var HTML_ATTRIBUTE_BLOCKER_CONNECTED_PRESERVED = \"consent-blocker-connected-pres\";\nexport var HTML_ATTRIBUTE_UNBLOCKED_TRANSACTION_COMPLETE = \"consent-transaction-complete\";\nexport var HTML_ATTRIBUTE_TRANSFORM_WRAPPER = \"consent-transform-wrapper\";\nexport var HTML_ATTRIBUTE_TRANSFORM_WRAPPER_VALUE = \"1\";\nexport var HTML_ATTRIBUTE_WAS_PREVIOUSLY_STRICT_HIDDEN = \"consent-strict-hidden\";\nexport var HTML_ATTRIBUTE_RESET_PARENT = \"consent-cb-reset-parent\";\nexport var HTML_ATTRIBUTE_RESET_PARENT_VALUE = \"1\";\nexport var HTML_ATTRIBUTE_RESET_PARENT_IS_RATIO_CONTAINER = \"consent-cb-reset-parent-is-ratio\";\nexport var HTML_ATTRIBUTE_GOT_CLICKED = \"consent-got-clicked\";\nexport var HTML_ATTRIBUTE_GOT_CLICKED_VALUE = \"1\";\nexport var HTML_ATTRIBUTE_GOT_CLICKED_VALUE_DO_NOT_USE_IN_NESTED = \"2\";\nexport var HTML_ATTRIBUTE_THUMBNAIL = \"consent-thumbnail\";\nexport var HTML_ATTRIBUTE_THUMBNAIL_SUGGESTION = \"consent-thumbnail-suggestion\";","import postscribe from \"postscribe\";\nimport { applyDynamicsToHtml } from \".\";\nimport { htmlDecode } from \"../utils\";\n/**\n * We do not modify `window.onload` directly, you need to use this variable name.\n */\n\nvar WINDOW_ONLOAD_UNBLOCK_REPLACEMENT = \"rcbInitiatorOnload\";\n/**\n * Put HTML code to the current DOM. `script` tags gets automatically\n * executed instead of pushing to DOM.\n *\n * @see https://github.com/krux/postscribe\n * @see https://stackoverflow.com/a/49724894/5506547\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\nfunction putHtmlCodeToDom(html, dynamics) {\n var referenceNode = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : document.body;\n return new Promise(function (resolve) {\n if (html) {\n postscribe(referenceNode, applyDynamicsToHtml(html, dynamics), {\n done: resolve,\n error: function error(e) {\n // We do ignore all errors as we handle like the usual browser\n // E.g. a script blocked by an ad-blocker should not break the execution\n // for upcoming scripts.\n console.error(e);\n },\n beforeWriteToken: function beforeWriteToken(token) {\n var attrs = token.attrs,\n booleanAttrs = token.booleanAttrs,\n src = token.src,\n href = token.href,\n content = token.content; // Probably skip this token? (do not use `disabled` tag as it should still be written to DOM)\n\n if (booleanAttrs !== null && booleanAttrs !== void 0 && booleanAttrs[\"skip-write\"]) {\n return false;\n } // Allow `window.onload` event\n\n\n if (content) {\n token.content = content.replace(/window\\.onload\\s+=/g, \"window.\".concat(WINDOW_ONLOAD_UNBLOCK_REPLACEMENT, \" =\"));\n } // Automatically unescape html entities in all attributes (https://github.com/krux/postscribe/issues/346#issuecomment-310227387)\n\n\n for (var attr in attrs) {\n attrs[attr] = htmlDecode(attrs[attr]); // Allow to skip complete HTML tag when it already got loaded by unique ID (e.g. Google Tag Manager gtag.js)\n\n if (attr === \"unique-write-name\" && document.querySelector(\"[unique-write-name=\\\"\".concat(attrs[attr], \"\\\"]\"))) {\n return false;\n }\n } // Scripts\n\n\n if (src) {\n token.src = htmlDecode(src);\n } // Styles\n\n\n if (href) {\n token.href = htmlDecode(href);\n }\n\n return token;\n }\n });\n } else {\n resolve();\n }\n });\n}\n\nexport { WINDOW_ONLOAD_UNBLOCK_REPLACEMENT, putHtmlCodeToDom };","/**\n * A content - which was blocked - got unblocked.\n */\nexport var OPT_IN_CONTENT_BLOCKER = \"RCB/OptIn/ContentBlocker\";","/**\n * In some cases, the complete layout can be changed and calculations are based on containers width.\n * Imagine: Google Fonts get added and the navigation bar has a button with a calculated width (e.g. BeTheme).\n * Another example: The instagram feed is not loaded / adjusted (masonry), so we need to trigger a resize\n * event manually\n *\n * @param delay\n */\nfunction dispatchResizeEvent() {\n var delay = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n setTimeout(function () {\n try {\n window.dispatchEvent(new Event(\"resize\"));\n } catch (e) {// You are running in IE, it's a UI bug, we can skip...\n }\n }, delay);\n}\n\nexport { dispatchResizeEvent };","import { isUrl } from \".\";\n/**\n * Decode HTML entities in a given string.\n *\n * @see https://stackoverflow.com/a/34064434/5506547\n */\n\nfunction htmlDecode(input) {\n var inputIsUrl = isUrl(input);\n\n if (inputIsUrl) {\n var _doc$querySelector;\n\n // URLs needs to be handled a bit different as e.g. `?regionid` gets parsed to `'ionid=`\n var doc = new DOMParser().parseFromString(\"<a href=\\\"\".concat(input, \"\\\"></a>\"), \"text/html\");\n return (_doc$querySelector = doc.querySelector(\"a\")) === null || _doc$querySelector === void 0 ? void 0 : _doc$querySelector.href;\n } else {\n // Keep XSS protection intact\n var _doc = new DOMParser().parseFromString(input, \"text/html\");\n\n return _doc.documentElement.textContent;\n }\n}\n\nexport { htmlDecode };","/**\n * Check if a given string is an URL.\n *\n * @see https://www.w3resource.com/javascript-exercises/javascript-regexp-exercise-9.php\n */\nfunction isUrl(url) {\n var pattern = /^(?:(?:https?|ftp):\\/\\/)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:\\/\\S*)?$/;\n return !!pattern.test(url);\n}\n\nexport { isUrl };","import { matchingSelector } from \"@devowl-wp/resolve-none-computed-style\";\n/**\n * Port of `jQuery.parents()`.\n */\n\nfunction parents(element, selector) {\n var elements = [];\n var elem = element.parentElement;\n\n while (elem !== null) {\n if (elem.nodeType === Node.ELEMENT_NODE && matchingSelector(elem, selector)) {\n elements.push(elem);\n }\n\n elem = elem.parentElement;\n }\n\n return elements;\n}\n\nexport { parents };","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useEffect } from \"react\";\n\nvar AsciiSpinner = function AsciiSpinner(_ref) {\n var _ref$ms = _ref.ms,\n ms = _ref$ms === void 0 ? 100 : _ref$ms,\n _ref$chars = _ref.chars,\n chars = _ref$chars === void 0 ? [\"◷\", \"◶\", \"◵\", \"◴\"] : _ref$chars;\n\n var _useState = useState(1),\n _useState2 = _slicedToArray(_useState, 2),\n i = _useState2[0],\n setI = _useState2[1];\n\n useEffect(function () {\n var interval = setInterval(function () {\n setI(i + 1);\n }, ms);\n return function () {\n return clearInterval(interval);\n };\n }, [i]);\n return h(\"span\", {\n dangerouslySetInnerHTML: {\n __html: chars[i % 4]\n }\n });\n};\n\nexport { AsciiSpinner };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { isUrl } from \"@devowl-wp/headless-content-unblocker\";\nimport { useBannerOrBlocker } from \"../../../hooks\";\nimport { commonGroupsInlineStyleLinkMore, commonInlineStyleGroupsCookieProperty } from \"../../../inlineStyles\";\n\nvar CookieProperty = function CookieProperty(_ref) {\n var label = _ref.label,\n value = _ref.value,\n children = _ref.children,\n printValueAs = _ref.printValueAs;\n var banner = useBannerOrBlocker();\n var _banner$i18n = banner.i18n,\n yes = _banner$i18n.yes,\n no = _banner$i18n.no;\n var isValueUrl = typeof value === \"string\" && isUrl(value);\n var useValue = isValueUrl ? h(\"a\", {\n href: value,\n style: _objectSpread({\n wordBreak: \"break-all\"\n }, commonGroupsInlineStyleLinkMore(banner, false).style),\n target: \"_blank\",\n rel: \"noopener noreferrer\"\n }, value) : typeof value === \"string\" ? h(\"span\", {\n dangerouslySetInnerHTML: {\n __html: value\n }\n }) : value;\n\n if (printValueAs === \"boolean\") {\n useValue = useValue ? yes : no;\n }\n\n return h(\"div\", _extends({\n key: label\n }, commonInlineStyleGroupsCookieProperty(banner)), label && h(\"strong\", null, label, \":\\xA0\"), useValue, !!children && h(\"div\", null, children));\n};\n\nexport { CookieProperty };","import { scaleMobile } from \"../..\";\n\nfunction commonInlineStyleGroupsCookieProperty(_ref) {\n var _ref$group = _ref.group,\n groupBorderWidth = _ref$group.groupBorderWidth,\n groupBorderColor = _ref$group.groupBorderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useGroupBorderWidth = pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, groupBorderWidth) : groupBorderWidth;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-cookie-prop\",\n style: {\n borderLeft: useGroupBorderWidth > 0 ? \"1px solid \".concat(groupBorderColor) : undefined,\n paddingLeft: 15\n }\n };\n}\n\nexport { commonInlineStyleGroupsCookieProperty };","import { Fragment } from \"react\";\nimport { CookieProperty } from \".\";\nimport { useBannerOrBlocker } from \"../../../hooks\";\nimport { applyDynamicsToHtml } from \"@devowl-wp/headless-content-unblocker\";\n\nvar CookiePropertyList = function CookiePropertyList(_ref) {\n var _ref$cookie = _ref.cookie,\n purpose = _ref$cookie.purpose,\n provider = _ref$cookie.provider,\n providerPrivacyPolicy = _ref$cookie.providerPrivacyPolicy,\n legalBasis = _ref$cookie.legalBasis,\n ePrivacyUSA = _ref$cookie.ePrivacyUSA,\n noTechnicalDefinitions = _ref$cookie.noTechnicalDefinitions,\n technicalDefinitions = _ref$cookie.technicalDefinitions,\n codeDynamics = _ref$cookie.codeDynamics,\n isEssentialGroup = _ref.isEssentialGroup;\n\n var _useBannerOrBlocker = useBannerOrBlocker(),\n i18n = _useBannerOrBlocker.i18n,\n ePrivacyUSAEnabled = _useBannerOrBlocker.ePrivacyUSA;\n\n var types = getCookieTypeLocalizationMap();\n return h(Fragment, null, !!purpose && h(CookieProperty, {\n label: i18n.purpose,\n value: purpose\n }), h(CookieProperty, {\n label: i18n.legalBasis,\n value: legalBasis === \"legal-requirement\" ? i18n.legalRequirement : legalBasis === \"legitimate-interest\" || isEssentialGroup ? i18n.legitimateInterest : i18n.consent\n }), h(CookieProperty, {\n label: i18n.provider,\n value: provider\n }), !!providerPrivacyPolicy && h(CookieProperty, {\n label: i18n.providerPrivacyPolicy,\n value: providerPrivacyPolicy\n }), !!ePrivacyUSAEnabled && h(CookieProperty, {\n label: i18n.ePrivacyUSA,\n value: ePrivacyUSA,\n printValueAs: \"boolean\"\n }), !noTechnicalDefinitions && technicalDefinitions.map(function (_ref2) {\n var type = _ref2.type,\n name = _ref2.name,\n host = _ref2.host,\n duration = _ref2.duration,\n durationUnit = _ref2.durationUnit,\n sessionDuration = _ref2.sessionDuration,\n purpose = _ref2.purpose;\n return h(CookieProperty, {\n key: name,\n label: i18n.technicalCookieDefinition,\n value: h(\"span\", {\n style: {\n fontFamily: \"monospace\"\n }\n }, applyDynamicsToHtml(name, codeDynamics))\n }, h(CookieProperty, {\n label: i18n.type,\n value: types[type].name\n }), !!purpose && h(CookieProperty, {\n label: i18n.purpose,\n value: purpose\n }), !!host && h(CookieProperty, {\n label: i18n.host,\n value: h(\"span\", {\n style: {\n fontFamily: \"monospace\"\n }\n }, host)\n }), h(CookieProperty, {\n label: i18n.duration,\n value: [\"local\", \"indexedDb\", \"flash\"].indexOf(type) > -1 ? i18n.noExpiration : sessionDuration || type === \"session\" ? \"Session\" : \"\".concat(duration, \" \").concat(i18n.durationUnit[durationUnit])\n }));\n }));\n};\n\nfunction getCookieTypeLocalizationMap() {\n return {\n http: {\n name: \"HTTP Cookie\",\n abbr: \"HTTP\",\n backgroundColor: \"black\"\n },\n local: {\n name: \"Local Storage\",\n abbr: \"Local\",\n backgroundColor: \"#b3983c\"\n },\n session: {\n name: \"Session Storage\",\n abbr: \"Session\",\n backgroundColor: \"#3c99b3\"\n },\n flash: {\n name: \"Flash Local Shared Object\",\n abbr: \"Flash\",\n backgroundColor: \"#b33c3c\"\n },\n indexedDb: {\n name: \"IndexedDB\",\n abbr: \"I-DB\",\n backgroundColor: \"#4ab33c\"\n }\n };\n}\n\nexport { CookiePropertyList, getCookieTypeLocalizationMap };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useLayoutEffect, useState } from \"react\";\nimport { useBannerOrBlocker } from \"../../../hooks\";\nimport { commonInlineStyleGroupsCookie, commonInlineStyleGroupsCheckbox } from \"../../..\";\nimport { PlainAntdIconAsSvg } from \"../..\"; // eslint-disable-next-line import/no-extraneous-dependencies\n\nimport { CheckOutlined } from \"@ant-design/icons-svg\";\nimport { CookiePropertyList } from \".\";\n\nvar Cookie = function Cookie(_ref) {\n var cookie = _ref.cookie,\n checked = _ref.checked,\n disabled = _ref.disabled,\n onToggleCheck = _ref.onToggleCheck,\n _ref$propertyListProp = _ref.propertyListProps,\n propertyListProps = _ref$propertyListProp === void 0 ? {} : _ref$propertyListProp;\n var name = cookie.name;\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isRendered = _useState2[0],\n setIsRendered = _useState2[1];\n\n var bannerOrBlocker = useBannerOrBlocker();\n var descriptionFontSize = bannerOrBlocker.group.descriptionFontSize;\n useLayoutEffect(function () {\n setIsRendered(true);\n }, []);\n return h(\"div\", commonInlineStyleGroupsCookie(bannerOrBlocker), h(\"div\", {\n style: {\n marginBottom: 10\n }\n }, h(PlainAntdIconAsSvg, _extends({\n icon: CheckOutlined,\n onClick: onToggleCheck\n }, commonInlineStyleGroupsCheckbox(bannerOrBlocker, isRendered, checked, disabled, descriptionFontSize))), h(\"strong\", {\n style: {\n verticalAlign: \"middle\"\n },\n onClick: onToggleCheck\n }, name)), h(CookiePropertyList, _extends({\n cookie: cookie\n }, propertyListProps)));\n};\n\nexport { Cookie };","function commonInlineStyleGroupsCookie(_ref) {\n var antiAdBlocker = _ref.customCss.antiAdBlocker;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-cookie\",\n style: {\n marginTop: 10\n }\n };\n}\n\nexport { commonInlineStyleGroupsCookie };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport { useMemo } from \"react\"; // eslint-disable-next-line import/no-extraneous-dependencies\n\nimport { renderIconDefinitionToSVGElement } from \"@ant-design/icons-svg/es/helpers\";\n/**\n * Inject a plain SVG icon from `@ant-design/icons-svg`. This reduces the bundle size.\n * You can determine yourself to use `@ant-design/icons` or this helper component. For example,\n * this component is preferred for website bundles where website size matters.\n *\n * @see https://app.clickup.com/t/60pz5t\n */\n\nvar PlainAntdIconAsSvg = function PlainAntdIconAsSvg(_ref) {\n var icon = _ref.icon,\n rest = _objectWithoutProperties(_ref, [\"icon\"]);\n\n var svgString = useMemo(function () {\n return renderIconDefinitionToSVGElement(icon, {\n extraSVGAttrs: {\n style: \"width:auto;height:100%;\",\n fill: \"currentColor\"\n }\n });\n }, [icon]);\n return h(\"div\", _extends({}, rest, {\n dangerouslySetInnerHTML: {\n __html: svgString\n }\n }));\n};\n\nexport { PlainAntdIconAsSvg };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport { forwardRef } from \"react\";\nimport hintCss from \"hint.css/hint.min.css?inline-raw\";\nimport { usePlainCss } from \"../hooks\";\n/**\n * This is a very basic `hint.css` implementation for a tooltip.\n *\n * @see https://kushagra.dev/lab/hint/\n */\n// eslint-disable-next-line react/display-name\n\nvar Tooltip = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var children = _ref.children,\n className = _ref.className,\n title = _ref.title,\n _ref$position = _ref.position,\n position = _ref$position === void 0 ? \"top\" : _ref$position,\n color = _ref.color,\n _ref$size = _ref.size,\n size = _ref$size === void 0 ? \"large\" : _ref$size,\n always = _ref.always,\n rounded = _ref.rounded,\n noAnimate = _ref.noAnimate,\n bounce = _ref.bounce,\n rest = _objectWithoutProperties(_ref, [\"children\", \"className\", \"title\", \"position\", \"color\", \"size\", \"always\", \"rounded\", \"noAnimate\", \"bounce\"]);\n\n usePlainCss(hintCss, \"hint-css\", true);\n return h(\"div\", _extends({\n style: {\n position: \"relative\",\n display: \"inline\"\n },\n ref: ref,\n \"aria-label\": title,\n className: \"hint--\".concat(position, \" hint--\").concat(size, \" \").concat(color ? \"hint--\".concat(color) : \"\", \" \").concat(always ? \"hint--always\" : \"\", \" \").concat(rounded ? \"hint--rounded\" : \"\", \" \").concat(noAnimate ? \"hint--no-animate\" : \"\", \" \").concat(bounce ? \"hint--bounce\" : \"\", \" \").concat(className || \"\")\n }, rest), children);\n});\nexport { Tooltip };","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport { createContext, useContext } from \"react\";\n\n/**\n * Create a side-effect-free context provider.\n */\nvar BannerContextFactory = /*#__PURE__*/function () {\n function BannerContextFactory() {\n _classCallCheck(this, BannerContextFactory);\n }\n\n _createClass(BannerContextFactory, null, [{\n key: \"Context\",\n value: function (_Context) {\n function Context() {\n return _Context.apply(this, arguments);\n }\n\n Context.toString = function () {\n return _Context.toString();\n };\n\n return Context;\n }(function () {\n return this.context = this.context || /*#__PURE__*/createContext({});\n })\n }]);\n\n return BannerContextFactory;\n}();\n\nBannerContextFactory.context = void 0;\n\nfunction useBanner() {\n return useContext(BannerContextFactory.Context());\n}\n\nexport { BannerContextFactory, useBanner };","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport { createContext, useContext } from \"react\";\n\n/**\n * Create a side-effect-free context provider.\n */\nvar BlockerContextFactory = /*#__PURE__*/function () {\n function BlockerContextFactory() {\n _classCallCheck(this, BlockerContextFactory);\n }\n\n _createClass(BlockerContextFactory, null, [{\n key: \"Context\",\n value: function (_Context) {\n function Context() {\n return _Context.apply(this, arguments);\n }\n\n Context.toString = function () {\n return _Context.toString();\n };\n\n return Context;\n }(function () {\n return this.context = this.context || /*#__PURE__*/createContext({});\n })\n }]);\n\n return BlockerContextFactory;\n}();\n\nBlockerContextFactory.context = void 0;\n\nfunction useBlocker() {\n return useContext(BlockerContextFactory.Context());\n}\n\nexport { BlockerContextFactory, useBlocker };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport { useState } from \"react\";\nimport { commonInlineStyleFooterLink, useBannerOrBlocker } from \"../../..\";\n\nvar FooterLink = function FooterLink(_ref) {\n var children = _ref.children,\n anchorRest = _objectWithoutProperties(_ref, [\"children\"]);\n\n var bannerOrBlocker = useBannerOrBlocker();\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isHover = _useState2[0],\n setIsHover = _useState2[1];\n\n return h(\"a\", _extends({\n onMouseEnter: function onMouseEnter() {\n return setIsHover(true);\n },\n onMouseLeave: function onMouseLeave() {\n return setIsHover(false);\n }\n }, commonInlineStyleFooterLink(bannerOrBlocker, isHover), anchorRest), children);\n};\n\nexport { FooterLink };","import { scaleMobile } from \"../../scale\";\n\nfunction commonInlineStyleFooterLink(_ref) {\n var _ref$footerDesign = _ref.footerDesign,\n fontSize = _ref$footerDesign.fontSize,\n fontColor = _ref$footerDesign.fontColor,\n hoverFontColor = _ref$footerDesign.hoverFontColor,\n fontInheritFamily = _ref$footerDesign.fontInheritFamily,\n fontFamily = _ref$footerDesign.fontFamily,\n linkTextDecoration = _ref.design.linkTextDecoration,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var isHover = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var style = {\n textDecoration: linkTextDecoration,\n fontSize: pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, +fontSize) : +fontSize,\n color: isHover ? hoverFontColor : fontColor,\n fontFamily: fontInheritFamily ? undefined : fontFamily,\n padding: \"0 5px\"\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-footer-link\",\n style: style\n };\n}\n\nexport { commonInlineStyleFooterLink };","import { FooterLink } from \".\";\nimport { Tooltip } from \"../..\";\n\nvar FooterPoweredByLink = function FooterPoweredByLink(_ref) {\n var poweredLink = _ref.poweredLink,\n affiliate = _ref.affiliate;\n return h(FooterLink, {\n href: affiliate ? affiliate.link : poweredLink.href,\n target: poweredLink.target,\n key: \"powered-by\"\n }, h(\"span\", {\n dangerouslySetInnerHTML: {\n __html: poweredLink.innerHTML\n }\n }), affiliate && h(Tooltip, {\n title: affiliate.description,\n position: \"top-left\"\n }, \" \", affiliate.labelBehind));\n};\n\nexport { FooterPoweredByLink };","import _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport { Fragment } from \"react\";\n/**\n * Join together a set of JSX elements with a separator.\n *\n * @see https://stackoverflow.com/q/33577448/5506547\n */\n\nfunction jsxJoin(components, separator) {\n // Just to be sure, remove falsy values so we can add conditionals to the components array\n var filtered = components.filter(Boolean);\n return filtered.length === 0 ? null : filtered.reduce(function (acc, curr, i) {\n return acc.length ? [].concat(_toConsumableArray(acc), [// Wrap the separator in a fragment to avoid `missing key` issues\n h(Fragment, {\n key: i\n }, separator), curr]) : [curr];\n }, []);\n}\n\nexport { jsxJoin };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport { useCallback, Fragment } from \"react\";\nimport { useBannerOrBlocker, useLegalLinks } from \"..\";\nimport { FooterLink, FooterPoweredByLink } from \"../../components\";\nimport { jsxJoin } from \"../../utils\";\n\nfunction useCommonFooterLinks() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n onClose = _ref.onClose,\n putPoweredByLinkInRow = _ref.putPoweredByLinkInRow,\n row1 = _ref.row1;\n\n var _useBannerOrBlocker = useBannerOrBlocker(),\n close = _useBannerOrBlocker.i18n.close,\n _useBannerOrBlocker$f = _useBannerOrBlocker.footerDesign,\n poweredByLink = _useBannerOrBlocker$f.poweredByLink,\n linkTarget = _useBannerOrBlocker$f.linkTarget,\n poweredLink = _useBannerOrBlocker.poweredLink,\n affiliate = _useBannerOrBlocker.affiliate;\n\n var _useLegalLinks = useLegalLinks(),\n linkPrivacyPolicy = _useLegalLinks.linkPrivacyPolicy,\n linkImprint = _useLegalLinks.linkImprint;\n\n var targetAttributes = linkTarget === \"_blank\" ? {\n target: \"_blank\",\n rel: \"noopener\"\n } : {};\n var rows = [// Row 1\n [onClose && h(FooterLink, {\n href: \"#\",\n onClick: onClose,\n key: \"close\"\n }, h(\"strong\", null, close))].concat(_toConsumableArray(row1 || []), [linkPrivacyPolicy && h(FooterLink, _extends({\n href: linkPrivacyPolicy.url\n }, targetAttributes, {\n key: \"privacyPolicy\"\n }), linkPrivacyPolicy.label), linkImprint && h(FooterLink, _extends({\n href: linkImprint.url\n }, targetAttributes, {\n key: \"imprint\"\n }), linkImprint.label)]).filter(Boolean), // Row 2\n [] // Nothing yet\n ];\n\n if (!!poweredLink && poweredByLink) {\n rows[putPoweredByLinkInRow || 0].push(h(FooterPoweredByLink, {\n key: \"poweredBy\",\n poweredLink: poweredLink,\n affiliate: affiliate\n }));\n }\n\n var render = useCallback(function (rows) {\n return jsxJoin(rows.map(function (row) {\n return row.length ? h(Fragment, {\n key: row[0].key\n }, jsxJoin(row, h(Fragment, null, \" \\u2022 \"))) : null;\n }), h(\"br\", null));\n }, []);\n return {\n rows: rows,\n render: render\n };\n}\n\nexport { useCommonFooterLinks };","import { useBannerOrBlocker, useLegalLinks } from \"..\";\n\nfunction joinWithAndSeparator(arr, andSeparator) {\n if (arr.length > 1) {\n arr.splice(arr.length - 1, 0, \"{{andSeparator}}\");\n }\n\n return arr.join(\", \").replace(/,\\s+{{andSeparator}},\\s+/g, andSeparator);\n}\n/**\n * @see https://gist.github.com/unruthless/413930\n * @see https://stackoverflow.com/a/23630325/5506547\n */\n\n\nvar supWithLineHeightFix = '<sup style=\"vertical-align:top;line-height:100%;position:initial;\">';\n\nfunction useCommonTeachings() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n disableDataProcessingInUnsafeCountries = _ref.disableDataProcessingInUnsafeCountries,\n disableAgeNotice = _ref.disableAgeNotice,\n disableListServicesNotice = _ref.disableListServicesNotice;\n\n var _useBannerOrBlocker = useBannerOrBlocker(),\n blocker = _useBannerOrBlocker.blocker,\n groups = _useBannerOrBlocker.groups,\n isEPrivacyUSA = _useBannerOrBlocker.ePrivacyUSA,\n isAgeNotice = _useBannerOrBlocker.ageNotice,\n isListServicesNotice = _useBannerOrBlocker.listServicesNotice,\n _useBannerOrBlocker$t = _useBannerOrBlocker.texts,\n description = _useBannerOrBlocker$t.description,\n ePrivacyUSA = _useBannerOrBlocker$t.ePrivacyUSA,\n ageNoticeBanner = _useBannerOrBlocker$t.ageNoticeBanner,\n listServicesNotice = _useBannerOrBlocker$t.listServicesNotice,\n consentForwardingExternalHostsText = _useBannerOrBlocker$t.consentForwardingExternalHosts,\n tcf = _useBannerOrBlocker.tcf,\n consentForwardingExternalHosts = _useBannerOrBlocker.consentForwardingExternalHosts,\n individualPrivacyOpen = _useBannerOrBlocker.individualPrivacyOpen,\n individualDescription = _useBannerOrBlocker.individualTexts.description,\n essentialGroup = _useBannerOrBlocker.essentialGroup,\n _useBannerOrBlocker$i = _useBannerOrBlocker.i18n,\n andSeparator = _useBannerOrBlocker$i.andSeparator,\n tcfBannerI18n = _useBannerOrBlocker$i.tcf,\n keepVariablesInTexts = _useBannerOrBlocker.keepVariablesInTexts;\n\n var _useLegalLinks = useLegalLinks(),\n linkPrivacyPolicy = _useLegalLinks.linkPrivacyPolicy; // Description text (combination of configured text and Consent Forwarding)\n\n\n var consentForwardingExternalHostsFinalText = \"\";\n\n if (consentForwardingExternalHosts && !keepVariablesInTexts) {\n consentForwardingExternalHostsFinalText = consentForwardingExternalHostsText.replace(/{{websites}}/g, consentForwardingExternalHosts.join(\", \"));\n }\n\n var useDescription = [blocker ? blocker.description : individualPrivacyOpen ? individualDescription : description, consentForwardingExternalHostsFinalText].filter(Boolean).join(\" \");\n\n if (!keepVariablesInTexts) {\n // Place policy link into the text https://regex101.com/r/ayeFVy/1\n useDescription = useDescription.replace(/{{privacyPolicy}}(.*){{\\/privacyPolicy}}/g, linkPrivacyPolicy ? \"<a href=\\\"\".concat(linkPrivacyPolicy.url, \"\\\" style=\\\"text-decoration:underline;color:inherit;\\\" onmouseenter=\\\"this.style.textDecoration='none'\\\" onmouseleave=\\\"this.style.textDecoration='underline'\\\" target=\\\"_blank\\\">$1</a>\") : \"$1\");\n } // Teaching: Data processing in unsafe countries (formerly USA ePrivacy)\n\n\n var useDataProcessingInUnsafeCountries = !disableDataProcessingInUnsafeCountries && isEPrivacyUSA ? ePrivacyUSA : \"\"; // Teaching: Age notice\n\n var useAgeNotice = isAgeNotice && !disableAgeNotice ? ageNoticeBanner : \"\"; // Teaching: List services notice\n\n var useListServicesNotice = \"\";\n\n if (isListServicesNotice && !disableListServicesNotice) {\n var hasBothPlaceholders = listServicesNotice.indexOf(\"{{services}}\") > -1 && listServicesNotice.indexOf(\"{{serviceGroups}}\") > -1;\n var nonEssentialGroups = groups.filter(function (_ref2) {\n var slug = _ref2.slug;\n return slug !== essentialGroup;\n });\n var flattenSeparator = \"~;~\";\n var listServicesNames = joinWithAndSeparator(nonEssentialGroups.map(function (_ref3, groupIdx) {\n var items = _ref3.items;\n return items.map(function (_ref4) {\n var name = _ref4.name,\n ePrivacyUSA = _ref4.ePrivacyUSA;\n return \"\".concat(name).concat(supWithLineHeightFix).concat([hasBothPlaceholders ? groupIdx + 1 : \"\", useDataProcessingInUnsafeCountries && ePrivacyUSA ? \"U\" : \"\"].filter(Boolean).join(\",\"), \"</sup>\");\n }).join(flattenSeparator);\n }).join(flattenSeparator).split(flattenSeparator), andSeparator);\n\n if (listServicesNames) {\n var listServiceGroupsNames = joinWithAndSeparator(nonEssentialGroups.map(function (_ref5, groupIdx) {\n var name = _ref5.name;\n return \"\".concat(name).concat(supWithLineHeightFix).concat(hasBothPlaceholders ? groupIdx + 1 : \"\", \"</sup>\");\n }), andSeparator);\n useListServicesNotice = \"<span>\".concat(listServicesNotice, \"</span>\").concat(tcf && !individualPrivacyOpen ? \"<span>\".concat(tcfBannerI18n.listOfServicesAppendix, \"</span>\") : \"\");\n\n if (!keepVariablesInTexts) {\n // Place service list into the text\n useListServicesNotice = useListServicesNotice.replace(/{{services}}/g, listServicesNames) // Place service group list into the text\n .replace(/{{serviceGroups}}/g, listServiceGroupsNames);\n }\n\n if (useDataProcessingInUnsafeCountries) {\n useDataProcessingInUnsafeCountries += \"\".concat(supWithLineHeightFix, \"U</sup>\");\n }\n }\n }\n\n return {\n description: useDescription,\n teachings: [useDataProcessingInUnsafeCountries, useAgeNotice, useListServicesNotice].filter(Boolean)\n };\n}\n\nexport { useCommonTeachings };","import { useBanner, useBlocker } from \"../contexts\";\n\n/**\n * Use one of the available banner or blocker contexts as union typed.\n */\nfunction useBannerOrBlocker() {\n var banner = useBanner();\n var blocker = useBlocker(); // Check for a common context property in an available context as it is never `undefined`\n\n return banner.groups ? banner : blocker;\n}\n\nexport { useBannerOrBlocker };","import { useBannerOrBlocker } from \".\";\n\nfunction useLegalLinks() {\n var _useBannerOrBlocker = useBannerOrBlocker(),\n _useBannerOrBlocker$l = _useBannerOrBlocker.legal,\n privacyPolicy = _useBannerOrBlocker$l.privacyPolicy,\n privacyPolicyExternalUrl = _useBannerOrBlocker$l.privacyPolicyExternalUrl,\n privacyPolicyIsExternalUrl = _useBannerOrBlocker$l.privacyPolicyIsExternalUrl,\n privacyPolicyLabel = _useBannerOrBlocker$l.privacyPolicyLabel,\n imprint = _useBannerOrBlocker$l.imprint,\n imprintExternalUrl = _useBannerOrBlocker$l.imprintExternalUrl,\n imprintIsExternalUrl = _useBannerOrBlocker$l.imprintIsExternalUrl,\n imprintLabel = _useBannerOrBlocker$l.imprintLabel,\n pageByIdUrl = _useBannerOrBlocker.pageByIdUrl;\n\n var pageIdToPermalink = useBannerOrBlocker().pageIdToPermalink || {};\n var linkPrivacyPolicy = privacyPolicy > 0 ? pageIdToPermalink[privacyPolicy] || \"\".concat(pageByIdUrl, \"=\").concat(privacyPolicy) : undefined;\n var linkImprint = imprint > 0 ? pageIdToPermalink[imprint] || \"\".concat(pageByIdUrl, \"=\").concat(imprint) : undefined;\n\n if (privacyPolicyIsExternalUrl) {\n linkPrivacyPolicy = privacyPolicyExternalUrl;\n }\n\n if (imprintIsExternalUrl) {\n linkImprint = imprintExternalUrl;\n }\n\n return {\n linkPrivacyPolicy: privacyPolicyLabel && linkPrivacyPolicy ? {\n url: linkPrivacyPolicy,\n label: privacyPolicyLabel\n } : false,\n linkImprint: imprintLabel && linkImprint ? {\n url: linkImprint,\n label: imprintLabel\n } : false\n };\n}\n\nexport { useLegalLinks };","import { useMemo, useLayoutEffect } from \"react\";\nvar counter = 0;\n/**\n * Dynamically creates a style-tag in your head with a given plain CSS string.\n */\n\nfunction usePlainCss(css, uniqueId, keep) {\n var id = useMemo(function () {\n return \"react-use-plain-css-\".concat(uniqueId || (counter++).toString(36));\n }, []);\n useLayoutEffect(function () {\n var element = document.getElementById(id);\n\n if (!element) {\n element = document.createElement(\"style\");\n element.style.type = \"text/css\";\n element.id = id;\n document.getElementsByTagName(\"head\")[0].appendChild(element);\n }\n\n element.innerHTML = css;\n return function () {\n if (!keep) {\n var _element$parentNode;\n\n (_element$parentNode = element.parentNode) === null || _element$parentNode === void 0 ? void 0 : _element$parentNode.removeChild(element);\n }\n };\n }, [css, keep]);\n return id;\n}\n\nexport { usePlainCss };","import { scaleMobile } from \"../../scale\";\n\nfunction commonInlineStyleBodyTeaching(_ref) {\n var _ref$bodyDesign = _ref.bodyDesign,\n teachingsInheritTextAlign = _ref$bodyDesign.teachingsInheritTextAlign,\n teachingsTextAlign = _ref$bodyDesign.teachingsTextAlign,\n teachingsInheritFontSize = _ref$bodyDesign.teachingsInheritFontSize,\n teachingsFontSize = _ref$bodyDesign.teachingsFontSize,\n teachingsInheritFontColor = _ref$bodyDesign.teachingsInheritFontColor,\n teachingsFontColor = _ref$bodyDesign.teachingsFontColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-teachings\",\n style: {\n marginTop: 7,\n display: \"inline-block\",\n textAlign: teachingsInheritTextAlign ? undefined : teachingsTextAlign,\n fontSize: teachingsInheritFontSize ? undefined : pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, +teachingsFontSize) : +teachingsFontSize,\n color: teachingsInheritFontColor ? undefined : teachingsFontColor\n }\n };\n}\n\nexport { commonInlineStyleBodyTeaching };","function commonInlineStyleBodyTeachingsSeparator(_ref) {\n var borderRadius = _ref.layout.borderRadius,\n _ref$bodyDesign = _ref.bodyDesign,\n teachingsSeparatorActive = _ref$bodyDesign.teachingsSeparatorActive,\n teachingsSeparatorWidth = _ref$bodyDesign.teachingsSeparatorWidth,\n teachingsSeparatorHeight = _ref$bodyDesign.teachingsSeparatorHeight,\n teachingsSeparatorColor = _ref$bodyDesign.teachingsSeparatorColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-teachings-separator\",\n style: {\n marginTop: 7,\n display: \"inline-block\",\n maxWidth: \"100%\",\n borderRadius: +borderRadius,\n width: +teachingsSeparatorWidth,\n height: teachingsSeparatorActive ? +teachingsSeparatorHeight : 0,\n background: teachingsSeparatorColor\n }\n };\n}\n\nexport { commonInlineStyleBodyTeachingsSeparator };","import { scaleMobile } from \"../..\";\n\n/**\n * Use `visible` together with `useLayoutEffect` to avoid flickering.\n * This is needed because the SVG icons of ant are a bit flickering.\n */\nfunction commonInlineStyleGroupsCheckbox(_ref, visible, checked, disabled, fontSize) {\n var borderRadius = _ref.layout.borderRadius,\n _ref$group = _ref.group,\n headlineFontSize = _ref$group.headlineFontSize,\n checkboxBg = _ref$group.checkboxBg,\n checkboxBorderWidth = _ref$group.checkboxBorderWidth,\n checkboxBorderColor = _ref$group.checkboxBorderColor,\n checkboxActiveBg = _ref$group.checkboxActiveBg,\n checkboxActiveBorderColor = _ref$group.checkboxActiveBorderColor,\n checkboxActiveColor = _ref$group.checkboxActiveColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useFontSize = fontSize || headlineFontSize;\n useFontSize = pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, useFontSize) : useFontSize;\n var useCheckboxBorderWidth = pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, +checkboxBorderWidth) : +checkboxBorderWidth;\n var height = +useFontSize + useCheckboxBorderWidth * 2 + 6;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-checkbox\",\n style: {\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n opacity: disabled ? 0.5 : undefined,\n color: checked ? checkboxActiveColor : checkboxBg,\n display: visible ? \"inline-block\" : \"none\",\n background: checked ? checkboxActiveBg : checkboxBg,\n border: \"\".concat(useCheckboxBorderWidth, \"px solid \").concat(checked ? checkboxActiveBorderColor : checkboxBorderColor),\n padding: 3,\n height: height,\n width: height,\n marginRight: 10,\n borderRadius: +borderRadius,\n verticalAlign: \"middle\",\n lineHeight: 0,\n boxSizing: \"border-box\"\n }\n };\n}\n\nexport { commonInlineStyleGroupsCheckbox };","function commonGroupsInlineStyleLinkMore(_ref, isHover) {\n var linkTextDecoration = _ref.design.linkTextDecoration,\n _ref$group = _ref.group,\n linkColor = _ref$group.linkColor,\n linkHoverColor = _ref$group.linkHoverColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-group-more\",\n style: {\n color: isHover ? linkHoverColor : linkColor,\n textDecoration: linkTextDecoration\n }\n };\n}\n\nexport { commonGroupsInlineStyleLinkMore };","import { scaleMobile } from \"../..\";\n\nfunction commonInlineStyleHeaderHeadline(_ref, hasCloseIcon) {\n var _ref$headerDesign = _ref.headerDesign,\n fontSize = _ref$headerDesign.fontSize,\n fontColor = _ref$headerDesign.fontColor,\n fontInheritFamily = _ref$headerDesign.fontInheritFamily,\n fontFamily = _ref$headerDesign.fontFamily,\n fontWeight = _ref$headerDesign.fontWeight,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-headline\",\n style: {\n color: fontColor,\n lineHeight: 1.8,\n fontSize: pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, +fontSize) : +fontSize,\n fontFamily: fontInheritFamily ? undefined : fontFamily,\n fontWeight: fontWeight,\n paddingRight: hasCloseIcon ? 20 : undefined\n }\n };\n}\n\nexport { commonInlineStyleHeaderHeadline };","var calculateNewVal = function calculateNewVal(val, scalePercent) {\n var newVal = val;\n newVal = val / 100 * scalePercent;\n newVal = newVal < 1 ? 1 : newVal;\n return newVal;\n};\n/**\n * Calculate the new value for an inline style value and respect the scaling options.\n */\n\n\nfunction scaleMobile(_ref, useWidthOfThisContainerId, original, replaceWith) {\n var enabled = _ref.enabled,\n scalePercent = _ref.scalePercent,\n scalePercentVertical = _ref.scalePercentVertical;\n var additionalVerticalScaling = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n if (process.env.PLUGIN_CTX === \"pro\") {\n /* Silence is golden... Until you have PRO Version! */\n }\n\n return original;\n}\n\nexport { scaleMobile };","import { matchingSelector } from \"@devowl-wp/resolve-none-computed-style\";\nwindow.rcbPoweredByCacheOuterHTML = \"\";\n/**\n * Get the server-side-rendered powered by link.\n */\n\nfunction getSsrPoweredByLink(id) {\n var element = document.getElementById(id); // SSR-powered by\n\n var originalPoweredLink = element.nextElementSibling;\n var poweredLink = document.createElement(\"div\");\n\n if (window.rcbPoweredByCacheOuterHTML) {\n // We have cached the link as we remove it from the DOM\n poweredLink.innerHTML = window.rcbPoweredByCacheOuterHTML;\n } else if (matchingSelector(originalPoweredLink, \"a\") && originalPoweredLink.innerHTML.toLowerCase().indexOf(\"Real Cookie Banner\")) {\n window.rcbPoweredByCacheOuterHTML = originalPoweredLink.outerHTML;\n poweredLink.innerHTML = window.rcbPoweredByCacheOuterHTML;\n originalPoweredLink.parentNode.removeChild(originalPoweredLink);\n }\n\n return poweredLink.children[0];\n}\n\nexport { getSsrPoweredByLink };","function matchingSelector(element, selector) {\n var proto = typeof Element !== \"undefined\" ? Element.prototype : {};\n var nativeFunction = proto.matches || proto.matchesSelector || proto.webkitMatchesSelector || proto.mozMatchesSelector || proto.msMatchesSelector || proto.oMatchesSelector;\n\n if (!element || element.nodeType !== 1 || !element.parentElement) {\n return false;\n }\n\n if (nativeFunction) {\n return nativeFunction.call(element, selector);\n }\n\n var matchingElements = element.parentElement.querySelectorAll(selector);\n\n for (var matchIdx in matchingElements) {\n if (matchingElements[matchIdx] === element) {\n return true;\n }\n }\n\n return false;\n}\n\nexport { matchingSelector };","import Url from \"url-parse\";\nimport { trailingslashit, untrailingslashit } from \"../../helpers\";\nimport { RouteHttpVerb } from \".\";\nimport deepMerge from \"deepmerge\";\n\n/**\n * Build an URL for a specific scheme.\n *\n * @param param0\n */\nfunction commonUrlBuilder(_ref) {\n var location = _ref.location,\n _ref$params = _ref.params,\n params = _ref$params === void 0 ? {} : _ref$params,\n _ref$nonce = _ref.nonce,\n nonce = _ref$nonce === void 0 ? true : _ref$nonce,\n options = _ref.options;\n var apiUrl = new Url(options.restRoot, true);\n var query = apiUrl.query;\n var permalinkPath = query.rest_route || apiUrl.pathname; // Determine path from permalink settings\n // Find dynamic parameters from URL bindings (like /user/:id)\n\n var foundParams = [];\n var path = location.path.replace(/:([A-Za-z0-9-_]+)/g, function (match, group) {\n foundParams.push(group);\n return params[group];\n });\n var getParams = {}; // Find undeclared body params (which are not bind above) and add it to GET query\n\n for (var _i = 0, _Object$keys = Object.keys(params); _i < _Object$keys.length; _i++) {\n var checkParam = _Object$keys[_i];\n\n if (foundParams.indexOf(checkParam) === -1) {\n getParams[checkParam] = params[checkParam]; // We do not need `encodeURIComponent` as it is supported by `url-parse` already\n }\n }\n\n var usePath = trailingslashit(permalinkPath) + untrailingslashit(location.namespace || options.restNamespace) + path; // Force protocol from parent location\n\n var useThisProtocol = new Url(window.location.href).protocol.slice(0, -1);\n apiUrl.set(\"protocol\", useThisProtocol); // Set path depending on permalink settings\n\n if (query.rest_route) {\n query.rest_route = usePath; // eslint-disable-line @typescript-eslint/naming-convention\n } else {\n apiUrl.set(\"pathname\", usePath); // Set path\n } // Append others\n\n\n if (nonce && options.restNonce) {\n query._wpnonce = options.restNonce;\n }\n\n var currentApiUrlString = apiUrl.toString();\n\n if ([\"wp-json/\", \"rest_route=\"].filter(function (s) {\n return currentApiUrlString.indexOf(s) > -1;\n }).length > 0 && location.method && location.method !== RouteHttpVerb.GET) {\n query._method = location.method;\n }\n\n return apiUrl.set(\"query\", deepMerge.all([options.restQuery, getParams, query])).toString();\n}\n\nexport { commonUrlBuilder, Url };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nvar pool = {};\nvar recreateFetchPool = {};\n/**\n * A REST nonce in WordPress is only valid for 12 hours (can be configured). However, if it gets\n * invalid, the REST endpoints return a `403` error which signals us, we should recreate the nonce.\n * To avoid multiple recreations, we memorize the newly created nonce in a pool.\n */\n\nfunction nonceDeprecationPool(_x, _x2) {\n return _nonceDeprecationPool.apply(this, arguments);\n}\n\nfunction _nonceDeprecationPool() {\n _nonceDeprecationPool = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(nonce, restRecreateNonceEndpoint) {\n var resultPromise, returnNonce;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (!(typeof restRecreateNonceEndpoint !== \"undefined\")) {\n _context2.next = 6;\n break;\n }\n\n resultPromise = // Reuse already sent request\n recreateFetchPool[nonce] || new Promise(\n /*#__PURE__*/\n // eslint-disable-next-line no-async-promise-executor\n function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(resolve, reject) {\n var recreateFetch, newNonce;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n _context.next = 3;\n return window.fetch(restRecreateNonceEndpoint);\n\n case 3:\n recreateFetch = _context.sent;\n\n if (!recreateFetch.ok) {\n _context.next = 11;\n break;\n }\n\n _context.next = 7;\n return recreateFetch.text();\n\n case 7:\n newNonce = _context.sent;\n\n if (nonce === newNonce) {\n reject();\n } else {\n pool[nonce] = newNonce;\n resolve(newNonce);\n }\n\n _context.next = 12;\n break;\n\n case 11:\n reject();\n\n case 12:\n _context.next = 17;\n break;\n\n case 14:\n _context.prev = 14;\n _context.t0 = _context[\"catch\"](0);\n reject();\n\n case 17:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[0, 14]]);\n }));\n\n return function (_x3, _x4) {\n return _ref.apply(this, arguments);\n };\n }());\n recreateFetchPool[nonce] = resultPromise;\n return _context2.abrupt(\"return\", resultPromise);\n\n case 6:\n if (!(typeof nonce === \"undefined\")) {\n _context2.next = 8;\n break;\n }\n\n return _context2.abrupt(\"return\", undefined);\n\n case 8:\n _context2.next = 10;\n return Promise.all(Object.values(recreateFetchPool));\n\n case 10:\n returnNonce = nonce;\n\n case 11:\n if (!pool[returnNonce]) {\n _context2.next = 17;\n break;\n }\n\n returnNonce = pool[returnNonce];\n\n if (!(pool[returnNonce] === nonce)) {\n _context2.next = 15;\n break;\n }\n\n return _context2.abrupt(\"break\", 17);\n\n case 15:\n _context2.next = 11;\n break;\n\n case 17:\n return _context2.abrupt(\"return\", Promise.resolve(returnNonce));\n\n case 18:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n return _nonceDeprecationPool.apply(this, arguments);\n}\n\nexport { nonceDeprecationPool };","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { RouteHttpVerb } from \".\";\n/**\n * Get the result of the `Response`. It also handles multiline responses, e. g.\n * a PHP `Notice:` message is output through a conflicting plugin:\n *\n * If you are using a verb like `DELETE` or `PUT` the response may be empty and this\n * function will return `undefined`.\n *\n * @see https://developer.mozilla.org/de/docs/Web/HTTP/Methods/DELETE\n */\n\nfunction parseResult(_x, _x2, _x3) {\n return _parseResult.apply(this, arguments);\n}\n\nfunction _parseResult() {\n _parseResult = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(url, result, method) {\n var cloneForFallback, body, lastError, _iterator, _step, line;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n cloneForFallback = result.clone();\n _context.prev = 1;\n _context.next = 4;\n return result.json();\n\n case 4:\n return _context.abrupt(\"return\", _context.sent);\n\n case 7:\n _context.prev = 7;\n _context.t0 = _context[\"catch\"](1);\n _context.next = 11;\n return cloneForFallback.text();\n\n case 11:\n body = _context.sent;\n\n if (!(body === \"\" && [RouteHttpVerb.DELETE, RouteHttpVerb.PUT].indexOf(method) > -1)) {\n _context.next = 14;\n break;\n }\n\n return _context.abrupt(\"return\", undefined);\n\n case 14:\n console.warn(\"The response of \".concat(url, \" contains unexpected JSON, try to resolve the JSON line by line...\"), {\n body: body\n });\n _iterator = _createForOfIteratorHelper(body.split(\"\\n\"));\n _context.prev = 16;\n\n _iterator.s();\n\n case 18:\n if ((_step = _iterator.n()).done) {\n _context.next = 30;\n break;\n }\n\n line = _step.value;\n\n if (!(line.startsWith(\"[\") || line.startsWith(\"{\"))) {\n _context.next = 28;\n break;\n }\n\n _context.prev = 21;\n return _context.abrupt(\"return\", JSON.parse(line));\n\n case 25:\n _context.prev = 25;\n _context.t1 = _context[\"catch\"](21);\n lastError = _context.t1;\n\n case 28:\n _context.next = 18;\n break;\n\n case 30:\n _context.next = 35;\n break;\n\n case 32:\n _context.prev = 32;\n _context.t2 = _context[\"catch\"](16);\n\n _iterator.e(_context.t2);\n\n case 35:\n _context.prev = 35;\n\n _iterator.f();\n\n return _context.finish(35);\n\n case 38:\n throw lastError;\n\n case 39:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[1, 7], [16, 32, 35, 38], [21, 25]]);\n }));\n return _parseResult.apply(this, arguments);\n}\n\nexport { parseResult };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { commonUrlBuilder, RouteHttpVerb } from \"./\";\nimport deepMerge from \"deepmerge\";\nimport Url from \"url-parse\";\nimport { parseResult, nonceDeprecationPool } from \".\";\nimport jsonFormData from \"json-form-data\";\nvar CONTENT_TYPE_JSON = \"application/json;charset=utf-8\"; // Fix: Return type of exported function has or is using name 'FormatOptions'\n// from external module \"/home/mg/vscode-workspace/devowl-wp/node_modules/@types/json-form-data/index\" but cannot be named.\n// type MultiPartOptions = Parameters<typeof jsonFormData>[1];\n\n/**\n * Build and execute a specific REST query.\n *\n * @see urlBuilder\n * @returns Result of REST API\n * @throws\n */\nfunction commonRequest(_x) {\n return _commonRequest.apply(this, arguments);\n}\n\nfunction _commonRequest() {\n _commonRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var location, options, routeRequest, params, _ref$settings, settings, _ref$multipart, multipart, _ref$sendRestNonce, sendRestNonce, url, apiUrl, allowBody, body, restNonce, hasRestNonce, init, apiUrlBuilt, result, responseJSON, replay, restRecreateNonceEndpoint, resultAny;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n location = _ref.location, options = _ref.options, routeRequest = _ref.request, params = _ref.params, _ref$settings = _ref.settings, settings = _ref$settings === void 0 ? {} : _ref$settings, _ref$multipart = _ref.multipart, multipart = _ref$multipart === void 0 ? false : _ref$multipart, _ref$sendRestNonce = _ref.sendRestNonce, sendRestNonce = _ref$sendRestNonce === void 0 ? true : _ref$sendRestNonce;\n url = commonUrlBuilder({\n location: location,\n params: params,\n nonce: false,\n options: options\n }); // Use global parameter (see https://developer.wordpress.org/rest-api/using-the-rest-api/global-parameters/)\n\n if ([\"wp-json/\", \"rest_route=\"].filter(function (s) {\n return url.indexOf(s) > -1;\n }).length > 0 && location.method && location.method !== RouteHttpVerb.GET) {\n settings.method = RouteHttpVerb.POST;\n } else {\n settings.method = location.method || RouteHttpVerb.GET;\n } // Request with GET/HEAD method cannot have body\n\n\n apiUrl = new Url(url, true);\n allowBody = [\"HEAD\", \"GET\"].indexOf(settings.method) === -1;\n\n if (!allowBody && routeRequest) {\n apiUrl.set(\"query\", deepMerge(apiUrl.query, routeRequest));\n } // Determine body\n\n\n if (allowBody) {\n if (multipart) {\n // Let's create a multipart request...\n body = jsonFormData(routeRequest, typeof multipart === \"boolean\" ? {} : multipart);\n } else {\n // It is a usual JSON request, we do not need to send a multipart request\n body = JSON.stringify(routeRequest);\n }\n } // Do the request\n\n\n _context.next = 9;\n return nonceDeprecationPool(options.restNonce);\n\n case 9:\n restNonce = _context.sent;\n hasRestNonce = typeof restNonce !== \"undefined\";\n init = deepMerge.all([settings, {\n headers: _objectSpread(_objectSpread(_objectSpread({}, typeof body === \"string\" ? {\n \"Content-Type\": CONTENT_TYPE_JSON\n } : {}), hasRestNonce && sendRestNonce ? {\n \"X-WP-Nonce\": restNonce\n } : {}), {}, {\n Accept: \"application/json, */*;q=0.1\"\n })\n }]);\n init.body = body; // Do not make body merge-able\n\n apiUrlBuilt = apiUrl.toString();\n _context.next = 16;\n return window.fetch(apiUrlBuilt, init);\n\n case 16:\n result = _context.sent;\n\n if (result.ok) {\n _context.next = 47;\n break;\n }\n\n responseJSON = undefined;\n replay = false;\n _context.prev = 20;\n _context.next = 23;\n return parseResult(apiUrlBuilt, result, location.method);\n\n case 23:\n responseJSON = _context.sent;\n\n // wordpress.com private site compatibility\n\n /* istanbul ignore if */\n if (responseJSON.code === \"private_site\" && result.status === 403 && hasRestNonce && !sendRestNonce) {\n replay = true;\n } // Refresh nonce automatically\n\n /* istanbul ignore if */\n\n\n if (!(responseJSON.code === \"rest_cookie_invalid_nonce\" && hasRestNonce)) {\n _context.next = 35;\n break;\n }\n\n restRecreateNonceEndpoint = options.restRecreateNonceEndpoint;\n _context.prev = 27;\n _context.next = 30;\n return nonceDeprecationPool(restNonce, restRecreateNonceEndpoint);\n\n case 30:\n replay = true;\n _context.next = 35;\n break;\n\n case 33:\n _context.prev = 33;\n _context.t0 = _context[\"catch\"](27);\n\n case 35:\n _context.next = 39;\n break;\n\n case 37:\n _context.prev = 37;\n _context.t1 = _context[\"catch\"](20);\n\n case 39:\n if (!replay) {\n _context.next = 43;\n break;\n }\n\n _context.next = 42;\n return commonRequest({\n location: location,\n options: options,\n multipart: multipart,\n params: params,\n request: routeRequest,\n sendRestNonce: true,\n settings: settings\n });\n\n case 42:\n return _context.abrupt(\"return\", _context.sent);\n\n case 43:\n // Set this request as failing so the endpoint is probably corrupt (see `corruptRestApi.tsx`)\n settings.method === RouteHttpVerb.GET && (window.detectCorruptRestApiFailed = (window.detectCorruptRestApiFailed || 0) + 1);\n resultAny = result;\n resultAny.responseJSON = responseJSON;\n throw resultAny;\n\n case 47:\n return _context.abrupt(\"return\", parseResult(apiUrlBuilt, result, location.method));\n\n case 48:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[20, 37], [27, 33]]);\n }));\n return _commonRequest.apply(this, arguments);\n}\n\nexport { commonRequest };","var RouteHttpVerb;\n\n(function (RouteHttpVerb) {\n RouteHttpVerb[\"GET\"] = \"GET\";\n RouteHttpVerb[\"POST\"] = \"POST\";\n RouteHttpVerb[\"PUT\"] = \"PUT\";\n RouteHttpVerb[\"DELETE\"] = \"DELETE\";\n RouteHttpVerb[\"PATCH\"] = \"PATCH\";\n})(RouteHttpVerb || (RouteHttpVerb = {}));\n\nexport { RouteHttpVerb };","var untrailingslashit = function untrailingslashit(str) {\n return str.endsWith(\"/\") || str.endsWith(\"\\\\\") ? untrailingslashit(str.slice(0, -1)) : str;\n};\n\nvar trailingslashit = function trailingslashit(str) {\n return \"\".concat(untrailingslashit(str), \"/\");\n}; // Allows to make an interface extension and make some properties optional (https://git.io/JeK6J)\n\n\n/**\n * You need to manually put the following code snippet in each of your entry points to enable\n * \"on the fly\" public path for chunks:\n *\n * ```\n * __webpack_public_path__ = getWebpackPublicPath(process.env);\n * ```\n *\n * @see https://webpack.js.org/guides/public-path/#on-the-fly\n */\nvar getWebpackPublicPath = function getWebpackPublicPath(env) {\n var options = window[env.slug.replace(/-([a-z])/g, function (g) {\n return g[1].toUpperCase();\n })];\n return \"\".concat(options.publicUrl).concat(options.chunkFolder, \"/\");\n};\n\nexport { untrailingslashit, trailingslashit, getWebpackPublicPath };","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport { getOtherOptionsFromWindow } from \"../utils\";\nimport { HTML_ATTRIBUTE_COOKIE_IDS, HTML_ATTRIBUTE_BLOCKER_ID, HTML_ATTRIBUTE_BY, OPT_IN_CONTENT_BLOCKER } from \"@devowl-wp/headless-content-unblocker\";\nimport { regExpPatternFromWildcardName } from \"@devowl-wp/cookie-consent-web-client\";\n/**\n * `window.consentApi.unblock`: Check if a given URL / string is blocked by a Content Blocker:\n *\n * - When a Content Blocker exists, the Promise is only resolved after given consent\n * - When no Content Blocker exists, the Promise is immediate resolved\n *\n * Example (ES5):\n * ```js\n * (window.consentApi && window.consentApi.unblock(\"player.vimeo.com\") || Promise.resolve()).then(function() {\n * console.log(\"Consent for Vimeo given, unlock content...!\");\n * });\n * ```\n *\n * Example (ES6, Babel, TS):\n * ```js\n * (window.consentApi?.unblock(\"player.vimeo.com\") || Promise.resolve()).then(() => {\n * console.log(\"Consent for Vimeo given, unlock content...!\");\n * });\n * ```\n *\n * @param url\n * @param ref Create a visual content blocker to a given HTML element\n */\n\nfunction unblock(url) {\n var ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document.createElement(\"div\");\n return new Promise(function (resolve) {\n // Find matching blocker\n var found;\n\n var _getOtherOptionsFromW = getOtherOptionsFromWindow(),\n blocker = _getOtherOptionsFromW.blocker;\n\n var isPseudoRef = !ref.parentElement;\n\n var _iterator = _createForOfIteratorHelper(blocker),\n _step;\n\n try {\n loop1: for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var row = _step.value;\n var hosts = row.hosts; // Check if host matches\n\n var _iterator2 = _createForOfIteratorHelper(hosts),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var host = _step2.value;\n var regexp = regExpPatternFromWildcardName(host);\n\n if (url.match(regexp)) {\n found = row;\n break loop1;\n }\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n if (found) {\n // Add attributes to DOM element so it can be consumed by `manipulateDom`\n ref.setAttribute(HTML_ATTRIBUTE_BY, \"cookies\");\n ref.setAttribute(HTML_ATTRIBUTE_COOKIE_IDS, found.cookies.join(\",\"));\n ref.setAttribute(HTML_ATTRIBUTE_BLOCKER_ID, found.id.toString());\n ref.addEventListener(OPT_IN_CONTENT_BLOCKER, function () {\n isPseudoRef && ref.remove();\n resolve();\n }); // Append blocking element to HTML DOM if not already exists\n\n if (isPseudoRef) {\n document.body.appendChild(ref);\n }\n } else {\n resolve();\n }\n });\n}\n\nexport { unblock };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { CookieConsentManager } from \"../apply\";\nimport { apply } from \"../apply\";\nimport { BANNER_PRE_DECISION_SHOW_EVENT } from \"../events\";\nimport { ready } from \"../utils\";\n\nfunction preDecisionGateway(_x, _x2) {\n return _preDecisionGateway.apply(this, arguments);\n}\n\nfunction _preDecisionGateway() {\n _preDecisionGateway = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(options, handler) {\n var show, useOptions, gateways, args, onIsDoNotTrack, onShowCookieBanner, _iterator, _step, gateway, result, _ret;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n show = true;\n useOptions = options instanceof CookieConsentManager ? options.getOptions() : options;\n gateways = handler.gateways, args = handler.args, onIsDoNotTrack = handler.onIsDoNotTrack, onShowCookieBanner = handler.onShowCookieBanner;\n _iterator = _createForOfIteratorHelper(gateways);\n _context.prev = 4;\n\n _iterator.s();\n\n case 6:\n if ((_step = _iterator.n()).done) {\n _context.next = 17;\n break;\n }\n\n gateway = _step.value;\n _context.next = 10;\n return gateway.apply(void 0, [useOptions].concat(_toConsumableArray(args)));\n\n case 10:\n result = _context.sent;\n\n if (!(result !== false)) {\n _context.next = 15;\n break;\n }\n\n _ret = function () {\n show = false;\n\n var applyCookiesWithOptions = function applyCookiesWithOptions(type) {\n return apply(_objectSpread({\n type: type\n }, useOptions));\n };\n\n if (result === \"all\") {\n applyCookiesWithOptions(\"all\");\n } else if (result === \"essentials\") {\n applyCookiesWithOptions(\"essentials\");\n } else if (result === \"dnt\") {\n onIsDoNotTrack(function () {\n return applyCookiesWithOptions(\"essentials\");\n });\n } else if (result === \"consent\") {\n // Apply cookies for the current user decision\n applyCookiesWithOptions(\"consent\");\n }\n\n return \"break\";\n }();\n\n if (!(_ret === \"break\")) {\n _context.next = 15;\n break;\n }\n\n return _context.abrupt(\"break\", 17);\n\n case 15:\n _context.next = 6;\n break;\n\n case 17:\n _context.next = 22;\n break;\n\n case 19:\n _context.prev = 19;\n _context.t0 = _context[\"catch\"](4);\n\n _iterator.e(_context.t0);\n\n case 22:\n _context.prev = 22;\n\n _iterator.f();\n\n return _context.finish(22);\n\n case 25:\n if (!show) {\n _context.next = 30;\n break;\n }\n\n onShowCookieBanner(); // Wait all events are initialized\n\n _context.next = 29;\n return ready();\n\n case 29:\n document.dispatchEvent(new CustomEvent(BANNER_PRE_DECISION_SHOW_EVENT, {\n detail: {}\n }));\n\n case 30:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[4, 19, 22, 25]]);\n }));\n return _preDecisionGateway.apply(this, arguments);\n}\n\nexport { preDecisionGateway };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { supportsCookies } from \"../utils\";\n/**\n * Does the current browser support cookies?\n */\n\nvar preDecisionGatewaySupportsCookies = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var supportsCookiesName;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n supportsCookiesName = _ref.supportsCookiesName;\n return _context.abrupt(\"return\", supportsCookies(supportsCookiesName) ? false : \"essentials\");\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function preDecisionGatewaySupportsCookies(_x) {\n return _ref2.apply(this, arguments);\n };\n}();\n\nexport { preDecisionGatewaySupportsCookies };","import isbot from \"isbot\";\n/**\n * Is the current browser a spider / crawler?\n */\n\nfunction isCrawler() {\n var _navigator = navigator,\n userAgent = _navigator.userAgent;\n\n if (userAgent) {\n // Lighthouse / Google PageSpeed isn't currently a bot (https://git.io/J3r5z)\n if (/chrome-lighthouse/i.test(userAgent)) {\n return false;\n }\n\n return isbot(userAgent);\n }\n\n return false;\n}\n\nexport { isCrawler };","/**\n * Let a `Promise` be rejected after a given amount of time.\n */\nfunction promiseTimeout(promise, ms) {\n return new Promise(function (resolve, reject) {\n promise.then(resolve, reject);\n var e = new Error(\"Timed out\");\n setTimeout(reject, ms, e);\n });\n}\n\nexport { promiseTimeout };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \"../decision\";\nimport { isCrawler, promiseTimeout } from \"../utils\";\n\n/**\n * Dynamically allow to get a predecision with a extra request to an external API.\n * If your server does not respond within a given timeout or with an error, it automatically\n * continues with the predecisions. Otherwise, the predecision of the response is used.\n */\nvar preDecisionGatewayDynamicRequest = function preDecisionGatewayDynamicRequest(request) {\n var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10000;\n var active = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var decisionCookieName, revisionHash, decision, revision, _yield$promiseTimeout, predecision;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n decisionCookieName = _ref.decisionCookieName, revisionHash = _ref.revisionHash;\n\n if (!(isCrawler() || !active)) {\n _context.next = 3;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 3:\n // Check if revision has changed, and probably access our dynamic predecision again\n decision = getUserDecision(decisionCookieName);\n\n if (!decision) {\n _context.next = 8;\n break;\n }\n\n revision = decision.revision;\n\n if (!(revisionHash === revision)) {\n _context.next = 8;\n break;\n }\n\n return _context.abrupt(\"return\", \"consent\");\n\n case 8:\n _context.prev = 8;\n _context.next = 11;\n return promiseTimeout(request(), timeout);\n\n case 11:\n _yield$promiseTimeout = _context.sent;\n predecision = _yield$promiseTimeout.predecision;\n return _context.abrupt(\"return\", predecision);\n\n case 16:\n _context.prev = 16;\n _context.t0 = _context[\"catch\"](8);\n return _context.abrupt(\"return\", false);\n\n case 19:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[8, 16]]);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\nexport { preDecisionGatewayDynamicRequest };","/**\n * Checks if the given browser is requesting \"Do Not Track\" header.\n *\n * @see https://dev.to/corbindavenport/how-to-correctly-check-for-do-not-track-with-javascript-135d\n */\nfunction isDoNotTrack() {\n try {\n var w = window;\n\n if (w.doNotTrack || w.navigator.doNotTrack || w.navigator.msDoNotTrack || \"msTrackingProtectionEnabled\" in w.external) {\n // The browser supports Do Not Track!\n if (w.doNotTrack == \"1\" || w.navigator.doNotTrack == \"yes\" || w.navigator.doNotTrack == \"1\" || w.navigator.msDoNotTrack == \"1\" || w.external.msTrackingProtectionEnabled()) {\n return true;\n }\n }\n } catch (e) {// Silence is golden.\n }\n\n return false;\n}\n\nexport { isDoNotTrack };","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \"../decision\";\nimport { isDoNotTrack } from \"../utils\";\n\n/**\n * When the user has \"Do not track\" enabled and is allowed to use, let's automatically\n * save the dialog without any action.\n */\nvar preDecisionGatewayIsDoNotTrack = function preDecisionGatewayIsDoNotTrack() {\n var active = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var decisionCookieName, groups, essentialGroupSlug, _groups$filter, _groups$filter2, essentialGroupObj, _iterator, _step, group, _iterator2, _step2, legalBasis;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n decisionCookieName = _ref.decisionCookieName, groups = _ref.groups, essentialGroupSlug = _ref.essentialGroupSlug;\n _groups$filter = groups.filter(function (_ref3) {\n var slug = _ref3.slug;\n return slug === essentialGroupSlug;\n }), _groups$filter2 = _slicedToArray(_groups$filter, 1), essentialGroupObj = _groups$filter2[0];\n\n if (!(getUserDecision(decisionCookieName) !== false || !active)) {\n _context.next = 4;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 4:\n // As soon we have a legitimate interest, we need to show the cookie banner\n _iterator = _createForOfIteratorHelper(groups);\n _context.prev = 5;\n\n _iterator.s();\n\n case 7:\n if ((_step = _iterator.n()).done) {\n _context.next = 29;\n break;\n }\n\n group = _step.value;\n\n if (!(group !== essentialGroupObj)) {\n _context.next = 27;\n break;\n }\n\n _iterator2 = _createForOfIteratorHelper(group.items);\n _context.prev = 11;\n\n _iterator2.s();\n\n case 13:\n if ((_step2 = _iterator2.n()).done) {\n _context.next = 19;\n break;\n }\n\n legalBasis = _step2.value.legalBasis;\n\n if (!(legalBasis === \"legitimate-interest\")) {\n _context.next = 17;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 17:\n _context.next = 13;\n break;\n\n case 19:\n _context.next = 24;\n break;\n\n case 21:\n _context.prev = 21;\n _context.t0 = _context[\"catch\"](11);\n\n _iterator2.e(_context.t0);\n\n case 24:\n _context.prev = 24;\n\n _iterator2.f();\n\n return _context.finish(24);\n\n case 27:\n _context.next = 7;\n break;\n\n case 29:\n _context.next = 34;\n break;\n\n case 31:\n _context.prev = 31;\n _context.t1 = _context[\"catch\"](5);\n\n _iterator.e(_context.t1);\n\n case 34:\n _context.prev = 34;\n\n _iterator.f();\n\n return _context.finish(34);\n\n case 37:\n return _context.abrupt(\"return\", isDoNotTrack() ? \"dnt\" : false);\n\n case 38:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[5, 31, 34, 37], [11, 21, 24, 27]]);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\nexport { preDecisionGatewayIsDoNotTrack };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \"../decision\";\n/**\n * Has the user already consent to the latest requested revision (hash)?\n */\n\nvar preDecisionGatewayUserConsent = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var decisionCookieName, revisionHash, decision, revision;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n decisionCookieName = _ref.decisionCookieName, revisionHash = _ref.revisionHash;\n decision = getUserDecision(decisionCookieName);\n\n if (!(decision === false)) {\n _context.next = 4;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 4:\n revision = decision.revision;\n return _context.abrupt(\"return\", revisionHash === revision ? \"consent\" : false);\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function preDecisionGatewayUserConsent(_x) {\n return _ref2.apply(this, arguments);\n };\n}();\n\nexport { preDecisionGatewayUserConsent };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport var locationRestConsentDynamicPredecisionGet = {\n path: \"/consent/dynamic-predecision\",\n method: RouteHttpVerb.GET\n};","/**\n * Checks if the given banner is not visible due to legal settings.\n */\nfunction isHiddenDueLegal(banner) {\n var _banner$legal = banner.legal,\n imprint = _banner$legal.imprint,\n imprintHide = _banner$legal.imprintHide,\n privacyPolicy = _banner$legal.privacyPolicy,\n privacyPolicyHide = _banner$legal.privacyPolicyHide,\n pageId = banner.pageId;\n return [imprintHide && +imprint, privacyPolicyHide && +privacyPolicy].filter(Boolean).indexOf(pageId) > -1;\n}\n\nexport { isHiddenDueLegal };","import { useCallback, useMemo } from \"react\";\nimport { BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER } from \"../..\";\n/**\n * Depending on the current screen, calculate the animation to use.\n *\n * Currently, we do not support animations on resize as we cannot calculate the\n * width of the overlay container as it does not exist on first render cycle of React.\n *\n * Drawback if animation only on mobile is enabled: if the window is first a mobile,\n * and the window gets resize it will reuse the animation on desktop again\n */\n\nfunction useBannerAnimation() {\n var clientWidth = useMemo(function () {\n return window.innerWidth;\n }, []);\n var isMobile = clientWidth < BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER; // Check if it is mobile Firefox, as it does not support `position:sticky;bottom:0;` and animations.\n // Effect: The buttons and footer are not visible.\n\n var isMobileFirefox = useMemo(function () {\n var userAgent = window.navigator.userAgent.toLowerCase();\n return [\"firefox\", \"gecko\", \"mobile\", \"android\"].map(function (term) {\n return userAgent.indexOf(term) > -1;\n }).filter(Boolean).length === 4;\n }, []);\n return useCallback(function (_ref) {\n var animationIn = _ref.animationIn,\n animationInOnlyMobile = _ref.animationInOnlyMobile,\n animationOut = _ref.animationOut,\n animationOutOnlyMobile = _ref.animationOutOnlyMobile;\n var useAnimationIn = animationInOnlyMobile ? isMobile ? animationIn : \"none\" : animationIn;\n var useAnimationOut = animationOutOnlyMobile ? isMobile ? animationOut : \"none\" : animationOut;\n\n if (isMobileFirefox) {\n useAnimationIn = \"none\";\n useAnimationOut = \"none\";\n }\n\n return {\n useAnimationIn: useAnimationIn,\n useAnimationOut: useAnimationOut\n };\n }, []);\n}\n\nexport { useBannerAnimation };","export var BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER = 700;\nexport * from \"./types\";\nexport * from \"./contexts\";\nexport * from \"./hooks\";\nexport * from \"./inlineStyles\";\nexport * from \"./utils\";\nexport * from \"./components\";\nexport * from \"./others\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { createTcfModel } from \"@devowl-wp/cookie-consent-web-client\";\n\nvar cancelEvent = function cancelEvent(e) {\n if (!e) {\n return;\n }\n\n e.preventDefault(); // Some themes (e.g. AKEA) do have listeners on each link separately and do a custom redirect\n\n e.stopPropagation();\n};\n\nfunction useBannerStateContextCallbacks(_ref) {\n var toggleOverlay = _ref.toggleOverlay,\n _revokeConsent = _ref.revokeConsent;\n\n var toggleWithActiveAction = function toggleWithActiveAction(setContextValue, type) {\n return setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeAction: type,\n individualPrivacyOpen: true,\n refreshSiteAfterSave: type === \"change\" ? 2000 : false\n }, toggleOverlay(state, true));\n });\n };\n\n return {\n openHistory: function openHistory(setContextValue) {\n toggleWithActiveAction(setContextValue, \"history\");\n cancelEvent(arguments.length <= 1 ? undefined : arguments[1]);\n },\n openBanner: function openBanner(setContextValue) {\n toggleWithActiveAction(setContextValue, \"change\");\n cancelEvent(arguments.length <= 1 ? undefined : arguments[1]);\n },\n revokeConsent: function revokeConsent(setContextValue) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var successMessage = args[0],\n e = args[1];\n setContextValue(function (state) {\n _revokeConsent(state).then(function () {\n successMessage && alert(successMessage); // Always reload (always wait 2s to ensure opt-out scripts are exeucted)\n // Fix iOS / Safari bug when we want to reload the page after a POST request\n\n setTimeout(function () {\n return window.location.reload();\n }, 2000);\n }); // Do not change anything\n\n\n return state;\n });\n cancelEvent(e);\n },\n updateTcfFilterBy: function updateTcfFilterBy(setContextValue) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n var newFilter = args[0];\n setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n tcfFilterBy: newFilter\n });\n });\n },\n updateIndividualPrivacyOpen: function updateIndividualPrivacyOpen(setContextValue) {\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n\n var opened = args[0];\n setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n individualPrivacyOpen: opened\n });\n });\n },\n updateGroupChecked: function updateGroupChecked(setContextValue) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n var id = args[0],\n checked = args[1];\n setContextValue(function (state) {\n var newConsent = JSON.parse(JSON.stringify(state.consent));\n\n if (checked) {\n newConsent.groups[id] = state.groups.filter(function (group) {\n return group.id === id;\n })[0].items.map(function (_ref2) {\n var id = _ref2.id;\n return id;\n });\n } else {\n delete newConsent.groups[id];\n }\n\n return _objectSpread(_objectSpread({}, state), {}, {\n consent: newConsent,\n didGroupFirstChange: true\n });\n });\n },\n updateCookieChecked: function updateCookieChecked(setContextValue) {\n for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {\n args[_key5 - 1] = arguments[_key5];\n }\n\n var groupId = args[0],\n id = args[1],\n checked = args[2];\n setContextValue(function (state) {\n var newConsent = JSON.parse(JSON.stringify(state.consent)); // Initially create \"selected\" cookies\n\n if (!newConsent.groups[groupId]) {\n newConsent.groups[groupId] = [];\n }\n\n var cookieIds = newConsent.groups[groupId];\n var indexOf = cookieIds.indexOf(id);\n\n if (checked && indexOf === -1) {\n cookieIds.push(id);\n } else if (!checked && indexOf > -1) {\n cookieIds.splice(indexOf, 1);\n } // Delete group entirely when no cookies selected\n\n\n if (!cookieIds.length) {\n delete newConsent.groups[groupId];\n }\n\n return _objectSpread(_objectSpread({}, state), {}, {\n consent: newConsent\n });\n });\n },\n onClose: function onClose(setContextValue) {\n setContextValue(function (state) {\n return _objectSpread(_objectSpread(_objectSpread({}, state), toggleOverlay(state, false)), {}, {\n // This should be set always by you again as it is one-time\n refreshSiteAfterSave: false\n });\n });\n },\n selectHistoryEntry: function selectHistoryEntry(setContextValue) {\n for (var _len6 = arguments.length, args = new Array(_len6 > 1 ? _len6 - 1 : 0), _key6 = 1; _key6 < _len6; _key6++) {\n args[_key6 - 1] = arguments[_key6];\n }\n\n var groups = args[0],\n consentGroups = args[1],\n tcf = args[2];\n setContextValue(function (state) {\n var additionalChanges = {\n // In case we previously used non-TCF functionality, do not show the TCF banner\n isTcf: !!tcf,\n tcf: null\n };\n\n if (process.env.IS_TCF === \"1\" && tcf) {\n Object.assign(additionalChanges, {\n tcf: \"gvl\" in tcf ? tcf : createTcfModel(tcf)\n });\n }\n\n return _objectSpread(_objectSpread({}, state), {}, {\n groups: groups,\n consent: _objectSpread(_objectSpread({}, state.consent), {}, {\n groups: consentGroups\n })\n }, additionalChanges);\n });\n }\n };\n}\n\nexport { useBannerStateContextCallbacks };","import { useEffect } from \"react\";\nimport { parents } from \"@devowl-wp/headless-content-unblocker\";\nimport { matchingSelector } from \"@devowl-wp/resolve-none-computed-style\";\nimport { useBanner } from \"../..\";\nvar HREF_MATCHER = '[href^=\"#consent-\"]';\n/**\n * Listen to anchor links and execute the banner action:\n *\n * ```\n * #consent-change\n * #consent-history\n * #consent-revoke\n * ```\n */\n\nfunction useBannerActionLinks() {\n var _useBanner = useBanner(),\n openBanner = _useBanner.openBanner,\n openHistory = _useBanner.openHistory,\n revokeConsent = _useBanner.revokeConsent;\n\n useEffect(function () {\n var handleType = function handleType(type, successMessage, e) {\n if (!openBanner) {\n // `useBannerActions` is not yet initialized.\n return;\n }\n\n switch (type) {\n case \"change\":\n openBanner(e);\n break;\n\n case \"history\":\n openHistory(e);\n break;\n\n case \"revoke\":\n revokeConsent(successMessage, e);\n break;\n\n default:\n break;\n }\n };\n\n var eventListenerDocumentClick = function eventListenerDocumentClick(e) {\n if (!openBanner) {\n // `useBannerActions` is not yet initialized.\n return;\n } // Check if one of the parents has a valid hash link\n\n\n var element = e.target;\n parents(element, HREF_MATCHER).concat(matchingSelector(element, HREF_MATCHER) ? [element] : []).forEach(function (parent) {\n handleType(parent.getAttribute(\"href\").slice(9), parent.getAttribute(\"data-success-message\"), e);\n }); // @deprecated Old behavior with simple links like `#change`\n\n if (matchingSelector(element, \".rcb-sc-link\")) {\n handleType(element.getAttribute(\"href\").slice(1), element.getAttribute(\"data-success-message\"), e);\n }\n };\n\n var eventListenerHashChange = function eventListenerHashChange() {\n var hash = window.location.hash;\n\n if (hash.startsWith(\"#consent-\")) {\n handleType(hash.substring(9), undefined, undefined);\n }\n };\n\n window.addEventListener(\"hashchange\", eventListenerHashChange);\n document.addEventListener(\"click\", eventListenerDocumentClick, true);\n return function () {\n window.removeEventListener(\"hashchange\", eventListenerHashChange);\n document.removeEventListener(\"click\", eventListenerDocumentClick, true);\n };\n }, [openBanner, openHistory, revokeConsent]);\n}\n\nexport { useBannerActionLinks };","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useEffect, useState } from \"react\";\n\nfunction useResettableAnimation(animation, duration) {\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n i = _useState2[0],\n setI = _useState2[1];\n\n var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n j = _useState4[0],\n setJ = _useState4[1];\n\n var _useState5 = useState(animation),\n _useState6 = _slicedToArray(_useState5, 2),\n stateAnimation = _useState6[0],\n setStateAnimation = _useState6[1];\n\n var _useState7 = useState(undefined),\n _useState8 = _slicedToArray(_useState7, 2),\n stateAnimationReset = _useState8[0],\n setStateAnimationReset = _useState8[1];\n\n var _useState9 = useState(duration),\n _useState10 = _slicedToArray(_useState9, 2),\n stateDuration = _useState10[0],\n setStateDuration = _useState10[1];\n\n var _useState11 = useState(undefined),\n _useState12 = _slicedToArray(_useState11, 2),\n stateDurationReset = _useState12[0],\n setStateDurationReset = _useState12[1]; // Reset animation, save it temporary so when changing it, it needs to be to \"none\" and then the needed one\n\n\n useEffect(function () {\n // Avoid first rendering as the first is animated at mount-time\n if (i > 0) {\n if (animation === \"none\") {\n setStateAnimation(animation);\n } else {\n setStateAnimation(\"none\");\n setStateAnimationReset(animation);\n }\n }\n\n setI(i + 1);\n }, [animation]);\n useEffect(function () {\n // Avoid first rendering as the first is animated at mount-time\n if (j > 0) {\n if (duration === 0) {\n setStateDuration(duration);\n } else {\n setStateDuration(0);\n setStateDurationReset(duration);\n setStateAnimation(\"none\");\n setStateAnimationReset(animation);\n }\n }\n\n setJ(j + 1);\n }, [duration]);\n useEffect(function () {\n if (stateAnimationReset !== undefined) {\n setStateAnimation(stateAnimationReset);\n setStateAnimationReset(undefined);\n }\n }, [stateAnimationReset]);\n useEffect(function () {\n if (stateDurationReset !== undefined) {\n setStateDuration(stateDurationReset);\n setStateDurationReset(undefined);\n }\n }, [stateDurationReset]);\n return [stateAnimation, stateDuration];\n}\n\nexport { useResettableAnimation };","/**\n * @see https://stackoverflow.com/a/5624139/5506547\n * @param hex\n */\nfunction hexToRgb(hex) {\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16)\n } : null;\n}\n\nexport { hexToRgb };","import { hexToRgb } from \".\";\n\n/**\n * @param hex\n * @param alpha 0 - 100\n */\nfunction calculateRgba(hex, alpha) {\n var _hexToRgb = hexToRgb(hex),\n r = _hexToRgb.r,\n g = _hexToRgb.g,\n b = _hexToRgb.b;\n\n return \"rgba(\".concat(r, \", \").concat(g, \", \").concat(b, \", \").concat(alpha / 100, \")\");\n}\n\nexport { calculateRgba };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useEffect } from \"react\";\n\nfunction getAnimationRelatedState(_ref) {\n var isVisible = _ref.isVisible,\n animationIn = _ref.animationIn,\n animationOut = _ref.animationOut,\n animationInDuration = _ref.animationInDuration,\n animationOutDuration = _ref.animationOutDuration,\n animationInDelay = _ref.animationInDelay,\n animationOutDelay = _ref.animationOutDelay;\n return isVisible ? {\n animation: animationIn,\n duration: animationInDuration,\n delay: animationInDelay\n } : {\n animation: animationOut,\n duration: animationOutDuration,\n delay: animationOutDelay\n };\n}\n/**\n * Ported from https://www.npmjs.com/package/react-animated-css due to high bundle size.\n */\n\n\nvar AnimatedCss = function AnimatedCss(_ref2) {\n var _ref2$animateOnMount = _ref2.animateOnMount,\n animateOnMount = _ref2$animateOnMount === void 0 ? true : _ref2$animateOnMount,\n _ref2$isVisible = _ref2.isVisible,\n isVisible = _ref2$isVisible === void 0 ? true : _ref2$isVisible,\n _ref2$animationIn = _ref2.animationIn,\n animationIn = _ref2$animationIn === void 0 ? \"fadeIn\" : _ref2$animationIn,\n _ref2$animationOut = _ref2.animationOut,\n animationOut = _ref2$animationOut === void 0 ? \"fadeOut\" : _ref2$animationOut,\n _ref2$animationInDela = _ref2.animationInDelay,\n animationInDelay = _ref2$animationInDela === void 0 ? 0 : _ref2$animationInDela,\n _ref2$animationOutDel = _ref2.animationOutDelay,\n animationOutDelay = _ref2$animationOutDel === void 0 ? 0 : _ref2$animationOutDel,\n _ref2$animationInDura = _ref2.animationInDuration,\n animationInDuration = _ref2$animationInDura === void 0 ? 1000 : _ref2$animationInDura,\n _ref2$animationOutDur = _ref2.animationOutDuration,\n animationOutDuration = _ref2$animationOutDur === void 0 ? 1000 : _ref2$animationOutDur,\n _ref2$className = _ref2.className,\n className = _ref2$className === void 0 ? \"\" : _ref2$className,\n _ref2$style = _ref2.style,\n style = _ref2$style === void 0 ? {} : _ref2$style,\n children = _ref2.children;\n\n var _useState = useState(animateOnMount ? getAnimationRelatedState({\n isVisible: isVisible,\n animationIn: animationIn,\n animationOut: animationOut,\n animationInDelay: animationInDelay,\n animationOutDelay: animationOutDelay,\n animationInDuration: animationInDuration,\n animationOutDuration: animationOutDuration\n }) : {\n animation: \"\",\n delay: undefined,\n duration: 0\n }),\n _useState2 = _slicedToArray(_useState, 2),\n _useState2$ = _useState2[0],\n animation = _useState2$.animation,\n duration = _useState2$.duration,\n delay = _useState2$.delay,\n setAnimationRelatedState = _useState2[1];\n\n useEffect(function () {\n setAnimationRelatedState(getAnimationRelatedState({\n isVisible: isVisible,\n animationIn: animationIn,\n animationOut: animationOut,\n animationInDelay: animationInDelay,\n animationOutDelay: animationOutDelay,\n animationInDuration: animationInDuration,\n animationOutDuration: animationOutDuration\n }));\n }, [isVisible, animationIn, animationOut, animationInDelay, animationOutDelay, animationInDuration, animationOutDuration]);\n var classes = \"animate__animated animate__\".concat(animation, \" \").concat(className);\n var backwardStyle = !animation ? {\n opacity: isVisible ? 1 : 0,\n transition: \"opacity \".concat(delay, \"ms\")\n } : {};\n return h(\"div\", {\n className: classes,\n style: _objectSpread(_objectSpread({\n animationDelay: \"\".concat(delay, \"ms\"),\n animationDuration: \"\".concat(duration, \"ms\"),\n pointerEvents: isVisible ? \"all\" : \"none\"\n }, style), backwardStyle)\n }, children);\n};\n\nexport { AnimatedCss };","import { useEffect } from \"react\";\nimport { useBanner } from \"../contexts\";\nimport { usePlainCss } from \".\";\n/**\n * Pass an HTML refs and we will provide a root stylesheet with the height dimensions and variables\n * with the calculated height. This is needed as we need to do some positioning of header and footer.\n */\n\nfunction useRenderedHeightsAsCssVars(element, name) {\n var _useBanner = useBanner(),\n pageRequestUuid4 = _useBanner.pageRequestUuid4; // We do directly modify the inline CSS as we do not want to trigger a rerender for the complete banner content\n\n\n var cssId = usePlainCss(\"\", \"useRenderedHeightsAsCssVars-\".concat(name));\n var cssElement = document.getElementById(cssId);\n useEffect(function () {\n var previousHeight = 0;\n\n var recalculate = function recalculate() {\n var currentHeight = element.getBoundingClientRect().height;\n\n if (previousHeight !== currentHeight) {\n previousHeight = currentHeight;\n cssElement.innerHTML = \"#\".concat(pageRequestUuid4, \"{--rendered-height-\").concat(name, \": \").concat(Math.floor(currentHeight), \"px;--rendered-height-raw-\").concat(name, \": \").concat(currentHeight, \"px}\");\n }\n };\n\n if (!element) {\n return function () {// Silence is golden.\n };\n } // Support animations\n\n\n var animateContainer = document.querySelector(\"#\".concat(pageRequestUuid4, \" div[class*=\\\"animate__\\\"]\"));\n animateContainer.addEventListener(\"animationend\", recalculate);\n\n if (window.ResizeObserver) {\n var ro = new ResizeObserver(recalculate);\n ro.observe(element);\n return function () {\n ro.disconnect();\n animateContainer.removeEventListener(\"animationend\", recalculate);\n };\n } else {\n var interval = setInterval(recalculate, 150);\n return function () {\n clearInterval(interval);\n animateContainer.removeEventListener(\"animationend\", recalculate);\n };\n }\n }, [element, name]);\n}\n\nexport { useRenderedHeightsAsCssVars };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport { useBanner } from \"../..\";\nimport { useCallback } from \"react\";\n/**\n * Provide callbacks for all the available button types in our cookie banner:\n *\n * - Accept all\n * - Continue without consent (accept essentials)\n * - Save custom choices (no changes to the current selected groups and services)\n * - Change individual privacy preferences\n */\n\nfunction useBannerButtonCallbacks() {\n var _useBanner = useBanner(),\n individualPrivacyOpen = _useBanner.individualPrivacyOpen,\n onSave = _useBanner.onSave,\n updateGroupChecked = _useBanner.updateGroupChecked,\n updateCookieChecked = _useBanner.updateCookieChecked,\n groups = _useBanner.groups,\n essentialGroup = _useBanner.essentialGroup,\n updateIndividualPrivacyOpen = _useBanner.updateIndividualPrivacyOpen,\n activeAction = _useBanner.activeAction,\n onClose = _useBanner.onClose;\n\n var buttonClickedAll = individualPrivacyOpen ? \"ind_all\" : \"main_all\";\n var buttonClickedEssentials = individualPrivacyOpen ? \"ind_essential\" : \"main_essential\";\n var buttonClickedCloseIcon = individualPrivacyOpen ? \"ind_close_icon\" : \"main_close_icon\";\n var buttonClickedCustom = individualPrivacyOpen ? \"ind_custom\" : \"main_custom\";\n var result = {\n buttonClickedAll: buttonClickedAll,\n buttonClickedEssentials: buttonClickedEssentials,\n buttonClickedCloseIcon: buttonClickedCloseIcon,\n buttonClickedCustom: buttonClickedCustom,\n acceptAll: useCallback(function () {\n groups.forEach(function (g) {\n return updateGroupChecked(g.id, true);\n });\n onSave(false, buttonClickedAll);\n }, [buttonClickedAll]),\n\n /**\n * This includes the complete \"Essential\" group + legal basis = legitimate interests.\n */\n acceptEssentials: useCallback(function () {\n var isCloseIcon = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n groups.forEach(function (_ref) {\n var slug = _ref.slug,\n id = _ref.id,\n items = _ref.items;\n\n if (slug === essentialGroup) {\n updateGroupChecked(id, true);\n } else {\n var _iterator = _createForOfIteratorHelper(items),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var _step$value = _step.value,\n legalBasis = _step$value.legalBasis,\n cookieId = _step$value.id;\n updateCookieChecked(id, cookieId, legalBasis === \"legitimate-interest\");\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n });\n onSave(false, isCloseIcon ? buttonClickedCloseIcon : buttonClickedEssentials);\n }, [buttonClickedEssentials]),\n acceptIndividual: useCallback(function () {\n return onSave(false, buttonClickedCustom);\n }, [buttonClickedCustom]),\n openIndividualPrivacy: useCallback(function () {\n updateIndividualPrivacyOpen(true);\n }, [updateIndividualPrivacyOpen])\n };\n return _objectSpread(_objectSpread({}, result), {}, {\n closeIcon: useCallback(function () {\n if (!activeAction) {\n // If we do not have yet a consent and it shows the banner for the first time,\n // the close icon is equivalent to \"Continue without consent\"\n result.acceptEssentials(true);\n } else {\n onClose();\n }\n }, [activeAction, onClose, result.acceptEssentials])\n });\n}\n\nexport { useBannerButtonCallbacks };","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useEffect } from \"react\";\nimport { createPortal } from \"react-dom\";\n/**\n * Portals provide a first-class way to render children into a DOM node that exists outside the DOM hierarchy of the parent component.\n *\n * @see https://reactjs.org/docs/portals.html\n */\n\nvar Portal = function Portal(_ref) {\n var children = _ref.children,\n className = _ref.className,\n _ref$tag = _ref.tag,\n tag = _ref$tag === void 0 ? \"div\" : _ref$tag,\n renderInContainer = _ref.renderInContainer;\n\n var _useState = useState(function () {\n var el = document.createElement(tag);\n className && el.classList.add(className);\n return el;\n }),\n _useState2 = _slicedToArray(_useState, 1),\n renderIn = _useState2[0]; // Append container to `body`\n\n\n useEffect(function () {\n document.body.appendChild(renderIn);\n return function () {\n document.body.removeChild(renderIn);\n };\n }, []);\n return /*#__PURE__*/createPortal(children, renderInContainer || renderIn);\n};\n\nexport { Portal };","import { useMemo, useRef, Fragment } from \"react\";\nimport { useRect } from \"@reach/rect\";\nimport { usePlainCss } from \"../hooks\";\nimport { Portal, Tooltip } from \".\";\nvar counter = 0;\n/**\n * A portaled close icon creates a close icon rendered to a given container. This allows\n * you to put the close icon on the top right corner of an `overflow:hidden` container and\n * the tooltip gets rendered correctly.\n */\n\nvar CloseIcon = function CloseIcon(_ref) {\n var width = _ref.width,\n color = _ref.color,\n tooltipText = _ref.tooltipText,\n framed = _ref.framed,\n renderInContainer = _ref.renderInContainer,\n tooltipAlways = _ref.tooltipAlways,\n onClick = _ref.onClick,\n _ref$thickness = _ref.thickness,\n thickness = _ref$thickness === void 0 ? 1 : _ref$thickness;\n var idCloseIconNotPortaled = useMemo(function () {\n return \"react-close-icon-\".concat((counter++).toString(36));\n }, []);\n var idCloseIconPortaled = useMemo(function () {\n return \"react-close-icon-\".concat((counter++).toString(36));\n }, []);\n /**\n * Why two containers for a simple close icon? I need to explain something technical here.\n * Our complete banner/dialog is tainted with `overflow:hidden` due to flickering effects\n * with animate.css etc. We will now create an invisible element with the placeholder,\n * we will then read its positioning (rect) and generate the visible close icon based on this position.\n */\n\n var idCloseIconPlaceholder = useMemo(function () {\n return \"react-close-icon-\".concat((counter++).toString(36));\n }, []);\n var ref = useRef();\n var rect = useRect(ref);\n usePlainCss(\"#\".concat(idCloseIconPlaceholder, \", #\").concat(idCloseIconNotPortaled, \" {\\n position: absolute;\\n top: 50%;\\n right: 0;\\n margin-top: calc(\").concat(width, \"px / 2 * -1);\\n display: block;\\n width: \").concat(width, \"px;\\n height: \").concat(width, \"px; \\n pointer-events: none;\\n}\\n\\n#\").concat(idCloseIconNotPortaled, \" {\\n position: absolute !important;\\n}\\n\\n#\").concat(idCloseIconNotPortaled, \", #\").concat(idCloseIconPortaled, \" {\\n cursor: pointer;\\n pointer-events: all;\\n \").concat(framed ? \"outline: rgb(255, 94, 94) solid 5px;\" : \"\", \"\\n}\\n\\n#\").concat(idCloseIconPortaled, \" {\\n position: fixed !important;\\n \").concat(rect ? \"top: \".concat(rect.y, \"px;left: \").concat(rect.x, \"px;display:block;\") : \"display:none;\", \"\\n width: \").concat(width, \"px;\\n height: \").concat(width, \"px;\\n z-index: 99;\\n}\\n#\").concat(idCloseIconPortaled, \":after, #\").concat(idCloseIconNotPortaled, \":after {\\n width: auto !important;\\n white-space: nowrap !important;\\n}\\n#\").concat(idCloseIconPortaled, \">span:before, #\").concat(idCloseIconPortaled, \">span:after,\\n#\").concat(idCloseIconNotPortaled, \">span:before, #\").concat(idCloseIconNotPortaled, \">span:after {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n width: \").concat(thickness, \"px;\\n height: \").concat(width, \"px;\\n background-color: \").concat(color, \";\\n transform: rotate(45deg) translate(-50%, -50%);\\n transform-origin: top left;\\n transition: all 420ms;\\n content: '';\\n opacity: 0.5;\\n pointer-events: none;\\n}\\n#\").concat(idCloseIconPortaled, \">span:after,\\n#\").concat(idCloseIconNotPortaled, \">span:after {\\n transform: rotate(-45deg) translate(-50%, -50%);\\n}\\n#\").concat(idCloseIconPortaled, \">span:hover:before, #\").concat(idCloseIconPortaled, \">span:hover:after,\\n#\").concat(idCloseIconNotPortaled, \">span:hover:before, #\").concat(idCloseIconNotPortaled, \">span:hover:after {\\n opacity: 1;\\n width: \").concat(thickness + 1, \"px;\\n}\"));\n return renderInContainer ? h(Fragment, null, h(\"div\", {\n id: idCloseIconPlaceholder,\n ref: ref\n }), (rect === null || rect === void 0 ? void 0 : rect.y) > 0 && h(Portal, {\n renderInContainer: renderInContainer\n }, h(Tooltip, {\n title: tooltipText,\n id: idCloseIconPortaled,\n onClick: onClick,\n position: rect.y > 50 ? \"top-left\" : \"left\",\n always: tooltipAlways\n }, h(\"span\", null)))) : h(Tooltip, {\n title: tooltipText,\n id: idCloseIconNotPortaled,\n onClick: onClick,\n position: \"top-left\",\n always: tooltipAlways\n }, h(\"span\", null));\n};\n\nexport { CloseIcon };","import { useBanner, useBannerButtonCallbacks, scaleMobile, CloseIcon, BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER } from \"../../..\";\n\nvar BannerCloseIcon = function BannerCloseIcon() {\n var _useBanner = useBanner(),\n _useBanner$headerDesi = _useBanner.headerDesign,\n fontSize = _useBanner$headerDesi.fontSize,\n fontColor = _useBanner$headerDesi.fontColor,\n acceptEssentials = _useBanner.texts.acceptEssentials,\n mobile = _useBanner.mobile,\n activeAction = _useBanner.activeAction,\n pageRequestUuid4 = _useBanner.pageRequestUuid4,\n _useBanner$i18n = _useBanner.i18n,\n close = _useBanner$i18n.close,\n closeWithoutSaving = _useBanner$i18n.closeWithoutSaving,\n _useBanner$buttonClic = _useBanner.buttonClicked,\n buttonClicked = _useBanner$buttonClic === void 0 ? \"\" : _useBanner$buttonClic;\n\n var _useBannerButtonCallb = useBannerButtonCallbacks(),\n buttonClickedCloseIcon = _useBannerButtonCallb.buttonClickedCloseIcon,\n closeIcon = _useBannerButtonCallb.closeIcon;\n\n var container = document.getElementById(pageRequestUuid4);\n return h(CloseIcon, {\n width: scaleMobile(mobile, pageRequestUuid4, fontSize),\n color: fontColor,\n tooltipText: activeAction ? activeAction === \"change\" ? closeWithoutSaving : close : acceptEssentials,\n tooltipAlways: (container === null || container === void 0 ? void 0 : container.clientWidth) < BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER,\n framed: buttonClicked === buttonClickedCloseIcon,\n renderInContainer: container,\n onClick: closeIcon\n });\n};\n\nexport { BannerCloseIcon };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { useBanner, bannerHeaderInlineStyleContainer, bannerHeaderInlineStyle, bannerHeaderInlineStyleLogo, commonInlineStyleHeaderHeadline, BannerCloseIcon } from \"../../..\";\nimport { forwardRef } from \"react\"; // eslint-disable-next-line react/display-name\n\nvar BannerHeader = /*#__PURE__*/forwardRef(function (_, ref) {\n var banner = useBanner();\n var _banner$headerDesign = banner.headerDesign,\n logo = _banner$headerDesign.logo,\n logoRetina = _banner$headerDesign.logoRetina,\n showCloseIcon = banner.decision.showCloseIcon,\n headline = banner.texts.headline,\n activeAction = banner.activeAction,\n individualPrivacyOpen = banner.individualPrivacyOpen,\n individualTexts = banner.individualTexts,\n headerTitlePrivacyPolicyHistory = banner.i18n.headerTitlePrivacyPolicyHistory; // Calculate logo\n\n var useRetina = logoRetina && !(logo !== null && logo !== void 0 && logo.endsWith(\".svg\")) && window.devicePixelRatio > 1;\n var useLogo = useRetina ? logoRetina : logo; // Calculate headline\n\n var useHeadline = individualPrivacyOpen ? activeAction === \"history\" ? headerTitlePrivacyPolicyHistory : individualTexts.headline : headline;\n return h(\"div\", _extends({\n ref: ref\n }, bannerHeaderInlineStyleContainer(banner)), h(\"div\", bannerHeaderInlineStyle(banner), !!useLogo && h(\"img\", _extends({\n alt: \"\",\n src: useLogo\n }, bannerHeaderInlineStyleLogo(banner, useRetina))), !!useHeadline && h(\"div\", commonInlineStyleHeaderHeadline(banner, false), useHeadline), (!!showCloseIcon || !!activeAction) && h(BannerCloseIcon, null)));\n});\nexport { BannerHeader };","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport { scaleMobile } from \"../..\";\n\nfunction bannerHeaderInlineStyleContainer(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n dialogBorderRadius = _ref$layout.dialogBorderRadius,\n _ref$design = _ref.design,\n borderWidth = _ref$design.borderWidth,\n borderColor = _ref$design.borderColor,\n restDesign = _objectWithoutProperties(_ref$design, [\"borderWidth\", \"borderColor\"]),\n _ref$headerDesign = _ref.headerDesign,\n inheritBg = _ref$headerDesign.inheritBg,\n bg = _ref$headerDesign.bg,\n padding = _ref$headerDesign.padding,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n\n var useType = scaleMobile(mobile, pageRequestUuid4, type, \"banner\");\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, borderWidth);\n var style = {\n padding: scaleMobile(mobile, pageRequestUuid4, padding, undefined, true).map(function (p) {\n return \"\".concat(p, \"px\");\n }).join(\" \"),\n background: inheritBg ? restDesign.bg : bg,\n borderRadius: useType === \"dialog\" ? \"\".concat(dialogBorderRadius, \"px \").concat(dialogBorderRadius, \"px 0 0\") : undefined,\n position: \"sticky\",\n zIndex: 9,\n top: 0\n };\n\n if (useType === \"dialog\" && useBorderWidth > 0) {\n style.borderTop = \"\".concat(useBorderWidth, \"px solid \").concat(borderColor);\n style.borderLeft = style.borderTop;\n style.borderRight = style.borderTop;\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-header-container\",\n style: style\n };\n}\n\nexport { bannerHeaderInlineStyleContainer };","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport { scaleMobile } from \"../..\";\n\nfunction bannerHeaderInlineStyle(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n bannerMaxWidth = _ref$layout.bannerMaxWidth,\n textAlign = _ref.design.textAlign,\n _ref$headerDesign = _ref.headerDesign,\n inheritTextAlign = _ref$headerDesign.inheritTextAlign,\n logo = _ref$headerDesign.logo,\n logoPosition = _ref$headerDesign.logoPosition,\n restHeaderDesign = _objectWithoutProperties(_ref$headerDesign, [\"inheritTextAlign\", \"logo\", \"logoPosition\"]),\n headline = _ref.texts.headline,\n individualLayout = _ref.individualLayout,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4,\n individualPrivacyOpen = _ref.individualPrivacyOpen;\n\n var useTextAlign = inheritTextAlign ? textAlign : restHeaderDesign.textAlign;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-header\",\n style: {\n transition: \"width 500ms, max-width 500ms\",\n maxWidth: scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"banner\" ? +(individualPrivacyOpen && !individualLayout.inheritBannerMaxWidth ? individualLayout.bannerMaxWidth : bannerMaxWidth) : undefined,\n margin: \"auto\",\n display: \"flex\",\n justifyContent: useTextAlign === \"center\" ? \"center\" : useTextAlign === \"right\" ? \"flex-end\" : undefined,\n textAlign: useTextAlign,\n alignItems: \"center\",\n position: \"relative\",\n flexDirection: logo && headline ? logoPosition === \"left\" ? \"row\" : logoPosition === \"right\" ? \"row-reverse\" : \"column\" : undefined\n }\n };\n}\n\nexport { bannerHeaderInlineStyle };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { scaleMobile } from \"../..\";\n\nfunction bannerHeaderInlineStyleLogo(_ref, isRetina) {\n var _ref$headerDesign = _ref.headerDesign,\n logoMaxHeight = _ref$headerDesign.logoMaxHeight,\n logoMargin = _ref$headerDesign.logoMargin,\n logoFitDim = _ref$headerDesign.logoFitDim,\n logoRetinaFitDim = _ref$headerDesign.logoRetinaFitDim,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useFitDim = isRetina ? logoRetinaFitDim : logoFitDim;\n var dimStyle = useFitDim ? {\n width: useFitDim[0],\n height: useFitDim[1]\n } : {\n width: \"auto\",\n height: scaleMobile(mobile, pageRequestUuid4, +logoMaxHeight)\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-logo\",\n style: _objectSpread(_objectSpread({}, dimStyle), {}, {\n margin: scaleMobile(mobile, pageRequestUuid4, logoMargin).map(function (m) {\n return \"\".concat(m, \"px\");\n }).join(\" \") //[logoPosition === \"left\" ? \"marginRight\" : \"marginLeft\"]: logoPosition === \"above\" ? undefined : 15,\n //marginBottom: logoPosition === \"above\" ? 5 : undefined\n\n })\n };\n}\n\nexport { bannerHeaderInlineStyleLogo };","import { useBanner, bannerGroupsInlineStyleTitle, bannerGroupsInlineStyleDescription } from \"../../..\";\n\nvar BannerGroupSectionTitle = function BannerGroupSectionTitle(_ref) {\n var title = _ref.title,\n children = _ref.children;\n var banner = useBanner();\n return h(\"div\", bannerGroupsInlineStyleTitle(banner), title, children && h(\"div\", bannerGroupsInlineStyleDescription(banner), children));\n};\n\nexport { BannerGroupSectionTitle };","import { scaleMobile } from \"../..\";\n\nfunction bannerGroupsInlineStyleTitle(_ref) {\n var _ref$group = _ref.group,\n headlineFontSize = _ref$group.headlineFontSize,\n headlineFontColor = _ref$group.headlineFontColor,\n headlineFontWeight = _ref$group.headlineFontWeight,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-group\",\n style: {\n color: headlineFontColor,\n fontSize: scaleMobile(mobile, pageRequestUuid4, headlineFontSize),\n fontWeight: headlineFontWeight,\n textAlign: \"left\"\n }\n };\n}\n\nexport { bannerGroupsInlineStyleTitle };","import { scaleMobile } from \"../..\";\n\nfunction bannerGroupsInlineStyleDescription(_ref) {\n var fontWeight = _ref.design.fontWeight,\n _ref$group = _ref.group,\n descriptionFontColor = _ref$group.descriptionFontColor,\n descriptionFontSize = _ref$group.descriptionFontSize,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-group-description\",\n style: {\n color: descriptionFontColor,\n fontSize: scaleMobile(mobile, pageRequestUuid4, +descriptionFontSize),\n fontWeight: fontWeight,\n marginTop: 5\n }\n };\n}\n\nexport { bannerGroupsInlineStyleDescription };","import { useCallback } from \"react\";\nimport { useBanner, Cookie } from \"../../..\";\n\nvar BannerCookie = function BannerCookie(_ref) {\n var _consent$groups;\n\n var group = _ref.group,\n cookie = _ref.cookie;\n var id = cookie.id;\n var banner = useBanner();\n var consent = banner.consent,\n activeAction = banner.activeAction,\n essentialGroup = banner.essentialGroup;\n var isEssentialGroup = essentialGroup === group.slug;\n var isDisabled = isEssentialGroup || activeAction === \"history\";\n var isChecked = isEssentialGroup || (((_consent$groups = consent.groups) === null || _consent$groups === void 0 ? void 0 : _consent$groups[group.id]) || []).some(function (c) {\n return c === id;\n });\n var handleCheckbox = useCallback(function () {\n return !isDisabled && banner.updateCookieChecked(group.id, id, !isChecked);\n }, [isDisabled, banner, group, id, isChecked]);\n return h(Cookie, {\n cookie: cookie,\n propertyListProps: {\n isEssentialGroup: isEssentialGroup\n },\n checked: isChecked,\n disabled: isDisabled,\n onToggleCheck: handleCheckbox\n });\n};\n\nexport { BannerCookie };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useLayoutEffect, Fragment, useCallback } from \"react\"; // eslint-disable-next-line import/no-extraneous-dependencies\n\nimport { CheckOutlined, MinusOutlined } from \"@ant-design/icons-svg\";\nimport { useBanner, bannerGroupsInlineStyleGroup, commonInlineStyleGroupsCheckbox, commonGroupsInlineStyleLinkMore, PlainAntdIconAsSvg, BannerGroupSectionTitle, BannerCookie } from \"../../..\";\n\nvar BannerGroup = function BannerGroup(_ref) {\n var _consent$groups$id;\n\n var group = _ref.group;\n var banner = useBanner();\n var id = group.id,\n slug = group.slug,\n name = group.name,\n description = group.description,\n items = group.items;\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isRendered = _useState2[0],\n setIsRendered = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n isHover = _useState4[0],\n setIsHover = _useState4[1];\n\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n isOpen = _useState6[0],\n setIsOpen = _useState6[1];\n\n var previewCheckboxActiveState = banner.previewCheckboxActiveState,\n _banner$individualTex = banner.individualTexts,\n showMore = _banner$individualTex.showMore,\n hideMore = _banner$individualTex.hideMore,\n consent = banner.consent,\n activeAction = banner.activeAction,\n essentialGroup = banner.essentialGroup;\n useLayoutEffect(function () {\n setIsRendered(true);\n }, []);\n var isEssentialGroup = essentialGroup === slug;\n var isDisabled = isEssentialGroup || activeAction === \"history\";\n var isChecked = previewCheckboxActiveState || isEssentialGroup || !!consent.groups[id];\n var isPartial = !isEssentialGroup && JSON.stringify(items.map(function (_ref2) {\n var id = _ref2.id;\n return id;\n }).sort()) !== JSON.stringify(((_consent$groups$id = consent.groups[id]) === null || _consent$groups$id === void 0 ? void 0 : _consent$groups$id.sort()) || []);\n var CheckboxIcon = isPartial ? MinusOutlined : CheckOutlined;\n var handleCheckbox = useCallback(function () {\n return !isDisabled && banner.updateGroupChecked(id, !isChecked);\n }, [isDisabled, banner, id, isChecked]);\n return h(\"div\", bannerGroupsInlineStyleGroup(banner), h(BannerGroupSectionTitle, {\n title: h(Fragment, null, h(PlainAntdIconAsSvg, _extends({\n icon: CheckboxIcon,\n onClick: handleCheckbox\n }, commonInlineStyleGroupsCheckbox(banner, isRendered, isChecked, isDisabled))), h(\"span\", {\n style: {\n verticalAlign: \"middle\",\n cursor: \"pointer\"\n },\n onClick: handleCheckbox\n }, name, \" (\", items.length, \")\"))\n }, description, !!items && h(Fragment, null, \"\\xA0\\xA0\\u2022\\xA0\\xA0\", h(\"a\", _extends({\n href: \"#\"\n }, commonGroupsInlineStyleLinkMore(banner, isHover), {\n onClick: function onClick(e) {\n setIsOpen(!isOpen);\n e.preventDefault();\n },\n onMouseEnter: function onMouseEnter() {\n return setIsHover(true);\n },\n onMouseLeave: function onMouseLeave() {\n return setIsHover(false);\n }\n }), isOpen ? hideMore : showMore), isOpen && items.map(function (cookie) {\n return h(BannerCookie, {\n key: cookie.id,\n group: group,\n cookie: cookie\n });\n }))));\n};\n\nexport { BannerGroup };","import { scaleMobile } from \"../..\";\n\nfunction bannerGroupsInlineStyleGroup(_ref) {\n var _ref$group = _ref.group,\n groupBg = _ref$group.groupBg,\n groupBorderRadius = _ref$group.groupBorderRadius,\n groupBorderColor = _ref$group.groupBorderColor,\n groupPadding = _ref$group.groupPadding,\n groupBorderWidth = _ref$group.groupBorderWidth,\n groupInheritBg = _ref$group.groupInheritBg,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useGroupBorderWidth = scaleMobile(mobile, pageRequestUuid4, groupBorderWidth);\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-group\",\n style: {\n background: groupInheritBg ? undefined : groupBg,\n border: useGroupBorderWidth > 0 ? \"\".concat(useGroupBorderWidth, \"px solid \").concat(groupBorderColor) : undefined,\n padding: scaleMobile(mobile, pageRequestUuid4, groupPadding).map(function (p) {\n return \"\".concat(p, \"px\");\n }).join(\" \"),\n borderRadius: +groupBorderRadius,\n textAlign: \"left\"\n }\n };\n}\n\nexport { bannerGroupsInlineStyleGroup };","import { scaleMobile, useBanner, bannerGroupsInlineStyle, BannerGroup } from \"../../..\";\nimport { Fragment } from \"react\";\n\nvar BannerGroupList = function BannerGroupList() {\n var banner = useBanner();\n var groups = banner.groups,\n groupSpacing = banner.group.groupSpacing,\n mobile = banner.mobile,\n pageRequestUuid4 = banner.pageRequestUuid4;\n var useGroups = groups.filter(function (_ref) {\n var items = _ref.items;\n return items.length;\n });\n return h(\"div\", bannerGroupsInlineStyle(banner), useGroups.map(function (group, index) {\n return h(Fragment, {\n key: group.id\n }, h(BannerGroup, {\n key: group.id,\n group: group\n }), index !== useGroups.length - 1 && h(\"div\", {\n style: {\n height: scaleMobile(mobile, pageRequestUuid4, +groupSpacing)\n }\n }));\n }));\n};\n\nexport { BannerGroupList };","function bannerGroupsInlineStyle(_ref) {\n var antiAdBlocker = _ref.customCss.antiAdBlocker;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-groups\",\n style: {\n marginTop: 10,\n clear: \"both\"\n }\n };\n}\n\nexport { bannerGroupsInlineStyle };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useLayoutEffect, Fragment, useCallback } from \"react\"; // eslint-disable-next-line import/no-extraneous-dependencies\n\nimport { CheckOutlined } from \"@ant-design/icons-svg\";\nimport { useBanner } from \"../../../contexts\";\nimport { bannerInlineStyleBodyDottedGroupItem, commonInlineStyleGroupsCheckbox, bannerInlineStyleBodyDottedGroupBullet } from \"../../../inlineStyles\";\nimport { PlainAntdIconAsSvg } from \"../..\";\n\nvar BannerDottedGroup = function BannerDottedGroup(_ref) {\n var _ref$group = _ref.group,\n id = _ref$group.id,\n slug = _ref$group.slug,\n name = _ref$group.name;\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isRendered = _useState2[0],\n setIsRendered = _useState2[1];\n\n var banner = useBanner();\n var groupsFirstView = banner.decision.groupsFirstView,\n fontSize = banner.design.fontSize,\n consent = banner.consent,\n essentialGroup = banner.essentialGroup;\n var isPro = process.env.PLUGIN_CTX === \"pro\";\n useLayoutEffect(function () {\n setIsRendered(true);\n }, []);\n var isEssentialGroup = essentialGroup === slug;\n var isChecked = isEssentialGroup || !!consent.groups[id];\n var handleCheckbox = useCallback(function () {\n return isPro && groupsFirstView && !isEssentialGroup && banner.updateGroupChecked(id, !isChecked);\n }, [isPro, isEssentialGroup, banner, id, isChecked, groupsFirstView]);\n return h(\"span\", _extends({\n key: name\n }, bannerInlineStyleBodyDottedGroupItem(banner)), h(\"span\", null, isPro && groupsFirstView ? h(PlainAntdIconAsSvg, _extends({\n icon: CheckOutlined,\n onClick: handleCheckbox\n }, commonInlineStyleGroupsCheckbox(banner, isRendered, isChecked, isEssentialGroup, fontSize))) : h(Fragment, null, h(\"strong\", bannerInlineStyleBodyDottedGroupBullet(banner), \"\\u25CF\"), \"\\xA0\"), h(\"span\", {\n style: {\n verticalAlign: \"middle\",\n cursor: groupsFirstView ? \"pointer\" : undefined\n },\n onClick: handleCheckbox\n }, name)));\n};\n\nexport { BannerDottedGroup };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerInlineStyleBodyDottedGroupItem(_ref) {\n var fontSize = _ref.design.fontSize,\n _ref$bodyDesign = _ref.bodyDesign,\n dottedGroupsInheritFontSize = _ref$bodyDesign.dottedGroupsInheritFontSize,\n dottedGroupsFontSize = _ref$bodyDesign.dottedGroupsFontSize,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: undefined,\n style: {\n paddingRight: 10,\n fontSize: scaleMobile(mobile, pageRequestUuid4, dottedGroupsInheritFontSize ? +fontSize : +dottedGroupsFontSize),\n whiteSpace: \"nowrap\",\n display: \"inline-block\"\n }\n };\n}\n\nexport { bannerInlineStyleBodyDottedGroupItem };","function bannerInlineStyleBodyDottedGroupBullet(_ref) {\n var dottedGroupsBulletColor = _ref.bodyDesign.dottedGroupsBulletColor;\n return {\n className: undefined,\n style: {\n color: dottedGroupsBulletColor\n }\n };\n}\n\nexport { bannerInlineStyleBodyDottedGroupBullet };","import { BannerDottedGroup } from \".\";\nimport { useBanner, bannerInlineStyleBodyDottedGroups } from \"../../..\";\n\nvar BannerDottedGroupList = function BannerDottedGroupList() {\n var banner = useBanner();\n var groups = banner.groups,\n showGroups = banner.decision.showGroups;\n return showGroups ? h(\"div\", bannerInlineStyleBodyDottedGroups(banner), groups.filter(function (_ref) {\n var items = _ref.items;\n return !!items.length;\n }).map(function (group) {\n return h(BannerDottedGroup, {\n key: group.id,\n group: group\n });\n })) : null;\n};\n\nexport { BannerDottedGroupList };","function bannerInlineStyleBodyDottedGroups(_ref) {\n var antiAdBlocker = _ref.customCss.antiAdBlocker;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-dotted-groups\",\n style: {\n marginTop: 10,\n lineBreak: \"anywhere\",\n lineHeight: 2\n }\n };\n}\n\nexport { bannerInlineStyleBodyDottedGroups };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useBanner, bannerInlineStyleHistorySelect, bannerInlineStyleHistorySelectOption } from \"../../..\";\nimport { useMemo } from \"react\";\nimport { Fragment, useState, useEffect } from \"react\";\nvar SELECT_NONE = -1;\n\nvar BannerHistorySelect = function BannerHistorySelect() {\n var banner = useBanner();\n\n var _useState = useState(SELECT_NONE),\n _useState2 = _slicedToArray(_useState, 2),\n selectedId = _useState2[0],\n setSelectedId = _useState2[1];\n\n var activeAction = banner.activeAction,\n history = banner.history,\n selectHistoryEntry = banner.selectHistoryEntry,\n _banner$i18n = banner.i18n,\n historyLabel = _banner$i18n.historyLabel,\n historySelectNone = _banner$i18n.historySelectNone;\n var selectedHistoryItem = useMemo(function () {\n var _history$filter;\n\n return history === null || history === void 0 ? void 0 : (_history$filter = history.filter(function (_ref) {\n var id = _ref.id;\n return id === selectedId;\n })) === null || _history$filter === void 0 ? void 0 : _history$filter[0];\n }, [selectedId]); // Reset select after exit history dialog\n\n useEffect(function () {\n if (!activeAction) {\n setSelectedId(SELECT_NONE);\n } else if (activeAction === \"history\" && history !== null && history !== void 0 && history.length) {\n setSelectedId(history[0].id);\n }\n }, [activeAction, history]); // History can only contain my data, so we can pick the first entry for the history\n\n var uuid = selectedHistoryItem === null || selectedHistoryItem === void 0 ? void 0 : selectedHistoryItem.uuid;\n var optionStyle = bannerInlineStyleHistorySelectOption(banner);\n return h(Fragment, null, historyLabel, \"\\xA0\", h(\"select\", _extends({}, bannerInlineStyleHistorySelect(banner), {\n disabled: !(history !== null && history !== void 0 && history.length),\n value: selectedId,\n onChange: function onChange(e) {\n var value = +e.target.value;\n history.forEach(function (_ref2) {\n var id = _ref2.id,\n decision = _ref2.decision,\n groups = _ref2.groups,\n tcf = _ref2.tcf;\n\n if (id === value) {\n setSelectedId(id);\n selectHistoryEntry(groups, decision, tcf);\n }\n });\n }\n }), (history === null || history === void 0 ? void 0 : history.length) > 0 ? history.map(function (_ref3) {\n var id = _ref3.id,\n isDoNotTrack = _ref3.isDoNotTrack,\n isUnblock = _ref3.isUnblock,\n isForwarded = _ref3.isForwarded,\n created = _ref3.created;\n return h(\"option\", _extends({\n key: id,\n value: id\n }, optionStyle), new Date(created).toLocaleString(document.documentElement.lang), isDoNotTrack ? \" (Do Not Track)\" : \"\", isUnblock ? \" (Content Blocker)\" : \"\", isForwarded ? \" (Consent Forwarding)\" : \"\");\n }) : h(\"option\", _extends({\n value: SELECT_NONE\n }, optionStyle), historySelectNone)), !!uuid && h(\"div\", {\n style: {\n opacity: 0.5,\n marginTop: 5\n }\n }, \"UUID: \", uuid));\n};\n\nexport { BannerHistorySelect };","import { calculateRgba } from \"../../../utils\";\nimport { scaleMobile } from \"../../scale\";\n\nfunction bannerInlineStyleHistorySelect(_ref) {\n var _ref$design = _ref.design,\n fontSize = _ref$design.fontSize,\n fontColor = _ref$design.fontColor,\n _ref$bodyDesign = _ref.bodyDesign,\n descriptionInheritFontSize = _ref$bodyDesign.descriptionInheritFontSize,\n descriptionFontSize = _ref$bodyDesign.descriptionFontSize,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-history-select\",\n style: {\n fontSize: scaleMobile(mobile, pageRequestUuid4, descriptionInheritFontSize ? +fontSize : +descriptionFontSize),\n background: \"transparent\",\n border: 0,\n color: fontColor,\n borderBottom: \"1px solid \".concat(calculateRgba(fontColor, 50))\n }\n };\n}\n\nexport { bannerInlineStyleHistorySelect };","function bannerInlineStyleHistorySelectOption(_ref) {\n var bg = _ref.design.bg;\n return {\n className: undefined,\n style: {\n background: bg\n }\n };\n}\n\nexport { bannerInlineStyleHistorySelectOption };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerButtonsInlineStyleCommon(_ref, mobile, isHover, framed, isTwoButtonRowLayout) {\n var name = _ref.name,\n order = _ref.order,\n type = _ref.type,\n borderRadius = _ref.borderRadius,\n bg = _ref.bg,\n hoverBg = _ref.hoverBg,\n fontSize = _ref.fontSize,\n textAlign = _ref.textAlign,\n fontColor = _ref.fontColor,\n fontWeight = _ref.fontWeight,\n hoverFontColor = _ref.hoverFontColor,\n borderWidth = _ref.borderWidth,\n borderColor = _ref.borderColor,\n hoverBorderColor = _ref.hoverBorderColor,\n padding = _ref.padding,\n antiAdBlocker = _ref.antiAdBlocker,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var fullWidth = !isTwoButtonRowLayout || order > 1;\n var marginLeft = isTwoButtonRowLayout && order === 1 ? 5 : 0;\n var marginRight = isTwoButtonRowLayout && order === 0 ? 5 : 0;\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, +borderWidth);\n var style = {\n textDecoration: type === \"link\" ? \"underline\" : \"none\",\n borderRadius: +borderRadius,\n cursor: type === \"button\" ? \"pointer\" : undefined,\n backgroundColor: type === \"button\" ? isHover ? hoverBg : bg : undefined,\n fontSize: scaleMobile(mobile, pageRequestUuid4, +fontSize),\n fontWeight: fontWeight,\n color: isHover ? hoverFontColor : fontColor,\n transition: \"background-color 250ms, color 250ms, border-color 250ms\",\n margin: \"0 \".concat(marginRight, \"px \").concat(scaleMobile(mobile, pageRequestUuid4, 10, undefined, true), \"px \").concat(marginLeft, \"px\"),\n border: type === \"button\" && useBorderWidth > 0 ? \"\".concat(useBorderWidth, \"px solid \").concat(isHover ? hoverBorderColor : borderColor) : undefined,\n padding: scaleMobile(mobile, pageRequestUuid4, padding, undefined, type !== \"button\").map(function (p) {\n return \"\".concat(p, \"px\");\n }).join(\" \"),\n overflow: \"hidden\",\n outline: framed ? \"rgb(255, 94, 94) solid 5px\" : undefined,\n flex: fullWidth ? \"1 1 100%\" : \"0 0 calc(50% - \".concat(marginLeft + marginRight, \"px)\"),\n display: \"flex\",\n alignItems: \"center\",\n // text-align is not supported within a `display: flex`\n justifyContent: textAlign === \"right\" ? \"flex-end\" : textAlign === \"center\" ? \"center\" : \"left\",\n order: order\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-btn-\".concat(name),\n style: style\n };\n}\n\nexport { bannerButtonsInlineStyleCommon };","import { bannerButtonsInlineStyleCommon } from \".\";\n\nfunction bannerButtonsInlineStyleAcceptEssentials(_ref, isHover, framed, order, isTwoButtonRowLayout) {\n var isTcf = _ref.isTcf,\n acceptEssentials = _ref.decision.acceptEssentials,\n borderRadius = _ref.layout.borderRadius,\n _ref$bodyDesign = _ref.bodyDesign,\n acceptEssentialsFontSize = _ref$bodyDesign.acceptEssentialsFontSize,\n acceptEssentialsBg = _ref$bodyDesign.acceptEssentialsBg,\n acceptEssentialsTextAlign = _ref$bodyDesign.acceptEssentialsTextAlign,\n acceptEssentialsBorderColor = _ref$bodyDesign.acceptEssentialsBorderColor,\n acceptEssentialsPadding = _ref$bodyDesign.acceptEssentialsPadding,\n acceptEssentialsBorderWidth = _ref$bodyDesign.acceptEssentialsBorderWidth,\n acceptEssentialsFontColor = _ref$bodyDesign.acceptEssentialsFontColor,\n acceptEssentialsFontWeight = _ref$bodyDesign.acceptEssentialsFontWeight,\n acceptEssentialsHoverBg = _ref$bodyDesign.acceptEssentialsHoverBg,\n acceptEssentialsHoverFontColor = _ref$bodyDesign.acceptEssentialsHoverFontColor,\n acceptEssentialsHoverBorderColor = _ref$bodyDesign.acceptEssentialsHoverBorderColor,\n acceptAllFontWeight = _ref$bodyDesign.acceptAllFontWeight,\n acceptAllFontSize = _ref$bodyDesign.acceptAllFontSize,\n acceptAllPadding = _ref$bodyDesign.acceptAllPadding,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return bannerButtonsInlineStyleCommon({\n name: \"accept-essentials\",\n order: order,\n type: acceptEssentials,\n borderRadius: borderRadius,\n bg: acceptEssentialsBg,\n hoverBg: acceptEssentialsHoverBg,\n fontSize: isTwoButtonRowLayout || isTcf ? acceptAllFontSize : acceptEssentialsFontSize,\n textAlign: acceptEssentialsTextAlign,\n fontColor: acceptEssentialsFontColor,\n fontWeight: isTcf ? acceptAllFontWeight : acceptEssentialsFontWeight,\n hoverFontColor: acceptEssentialsHoverFontColor,\n borderWidth: acceptEssentialsBorderWidth,\n borderColor: acceptEssentialsBorderColor,\n hoverBorderColor: acceptEssentialsHoverBorderColor,\n padding: isTwoButtonRowLayout ? acceptAllPadding : acceptEssentialsPadding,\n antiAdBlocker: antiAdBlocker,\n pageRequestUuid4: pageRequestUuid4\n }, mobile, isHover, framed, isTwoButtonRowLayout);\n}\n\nexport { bannerButtonsInlineStyleAcceptEssentials };","import { bannerButtonsInlineStyleCommon } from \".\";\n\nfunction bannerButtonsInlineStyleAcceptIndividual(_ref, isHover, framed, order, isTwoButtonRowLayout) {\n var acceptIndividual = _ref.decision.acceptIndividual,\n borderRadius = _ref.layout.borderRadius,\n _ref$bodyDesign = _ref.bodyDesign,\n acceptIndividualFontSize = _ref$bodyDesign.acceptIndividualFontSize,\n acceptIndividualBg = _ref$bodyDesign.acceptIndividualBg,\n acceptIndividualTextAlign = _ref$bodyDesign.acceptIndividualTextAlign,\n acceptIndividualBorderColor = _ref$bodyDesign.acceptIndividualBorderColor,\n acceptIndividualPadding = _ref$bodyDesign.acceptIndividualPadding,\n acceptIndividualBorderWidth = _ref$bodyDesign.acceptIndividualBorderWidth,\n acceptIndividualFontColor = _ref$bodyDesign.acceptIndividualFontColor,\n acceptIndividualFontWeight = _ref$bodyDesign.acceptIndividualFontWeight,\n acceptIndividualHoverBg = _ref$bodyDesign.acceptIndividualHoverBg,\n acceptIndividualHoverFontColor = _ref$bodyDesign.acceptIndividualHoverFontColor,\n acceptIndividualHoverBorderColor = _ref$bodyDesign.acceptIndividualHoverBorderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return bannerButtonsInlineStyleCommon({\n name: \"accept-individual\",\n order: order,\n type: acceptIndividual,\n borderRadius: borderRadius,\n bg: acceptIndividualBg,\n hoverBg: acceptIndividualHoverBg,\n fontSize: acceptIndividualFontSize,\n textAlign: acceptIndividualTextAlign,\n fontColor: acceptIndividualFontColor,\n fontWeight: acceptIndividualFontWeight,\n hoverFontColor: acceptIndividualHoverFontColor,\n borderWidth: acceptIndividualBorderWidth,\n borderColor: acceptIndividualBorderColor,\n hoverBorderColor: acceptIndividualHoverBorderColor,\n padding: acceptIndividualPadding,\n antiAdBlocker: antiAdBlocker,\n pageRequestUuid4: pageRequestUuid4\n }, mobile, isHover, framed, isTwoButtonRowLayout);\n}\n\nexport { bannerButtonsInlineStyleAcceptIndividual };","import { bannerButtonsInlineStyleCommon } from \"./\";\n\nfunction bannerButtonsInlineStyleSave(_ref, isHover, framed, order, isTwoButtonRowLayout) {\n var isTcf = _ref.isTcf,\n borderRadius = _ref.layout.borderRadius,\n _ref$bodyDesign = _ref.bodyDesign,\n acceptAllFontWeight = _ref$bodyDesign.acceptAllFontWeight,\n acceptAllFontSize = _ref$bodyDesign.acceptAllFontSize,\n _ref$saveButton = _ref.saveButton,\n type = _ref$saveButton.type,\n fontSize = _ref$saveButton.fontSize,\n bg = _ref$saveButton.bg,\n textAlign = _ref$saveButton.textAlign,\n borderColor = _ref$saveButton.borderColor,\n padding = _ref$saveButton.padding,\n borderWidth = _ref$saveButton.borderWidth,\n fontColor = _ref$saveButton.fontColor,\n fontWeight = _ref$saveButton.fontWeight,\n hoverBg = _ref$saveButton.hoverBg,\n hoverFontColor = _ref$saveButton.hoverFontColor,\n hoverBorderColor = _ref$saveButton.hoverBorderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return bannerButtonsInlineStyleCommon({\n name: \"accept-individual-save\",\n order: order,\n type: type,\n borderRadius: borderRadius,\n bg: bg,\n hoverBg: hoverBg,\n fontSize: isTcf ? acceptAllFontSize : fontSize,\n textAlign: textAlign,\n fontColor: fontColor,\n fontWeight: isTcf ? acceptAllFontWeight : fontWeight,\n hoverFontColor: hoverFontColor,\n borderWidth: borderWidth,\n borderColor: borderColor,\n hoverBorderColor: hoverBorderColor,\n padding: padding,\n antiAdBlocker: antiAdBlocker,\n pageRequestUuid4: pageRequestUuid4\n }, mobile, isHover, framed, isTwoButtonRowLayout);\n}\n\nexport { bannerButtonsInlineStyleSave };","import { bannerButtonsInlineStyleCommon } from \".\";\n\nfunction bannerButtonsInlineStyleAcceptAll(_ref, isHover, framed, order, isTwoButtonRowLayout) {\n var acceptAll = _ref.decision.acceptAll,\n borderRadius = _ref.layout.borderRadius,\n _ref$bodyDesign = _ref.bodyDesign,\n acceptAllFontSize = _ref$bodyDesign.acceptAllFontSize,\n acceptAllBg = _ref$bodyDesign.acceptAllBg,\n acceptAllTextAlign = _ref$bodyDesign.acceptAllTextAlign,\n acceptAllBorderColor = _ref$bodyDesign.acceptAllBorderColor,\n acceptAllPadding = _ref$bodyDesign.acceptAllPadding,\n acceptAllBorderWidth = _ref$bodyDesign.acceptAllBorderWidth,\n acceptAllFontColor = _ref$bodyDesign.acceptAllFontColor,\n acceptAllFontWeight = _ref$bodyDesign.acceptAllFontWeight,\n acceptAllHoverBg = _ref$bodyDesign.acceptAllHoverBg,\n acceptAllHoverFontColor = _ref$bodyDesign.acceptAllHoverFontColor,\n acceptAllHoverBorderColor = _ref$bodyDesign.acceptAllHoverBorderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return bannerButtonsInlineStyleCommon({\n name: \"accept-all\",\n order: order,\n type: acceptAll,\n borderRadius: borderRadius,\n bg: acceptAllBg,\n hoverBg: acceptAllHoverBg,\n fontSize: acceptAllFontSize,\n textAlign: acceptAllTextAlign,\n fontColor: acceptAllFontColor,\n fontWeight: acceptAllFontWeight,\n hoverFontColor: acceptAllHoverFontColor,\n borderWidth: acceptAllBorderWidth,\n borderColor: acceptAllBorderColor,\n hoverBorderColor: acceptAllHoverBorderColor,\n padding: acceptAllPadding,\n antiAdBlocker: antiAdBlocker,\n pageRequestUuid4: pageRequestUuid4\n }, mobile, isHover, framed, isTwoButtonRowLayout);\n}\n\nexport { bannerButtonsInlineStyleAcceptAll };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useCallback } from \"react\";\nimport { useState, useMemo } from \"react\";\nimport { isIE, AsciiSpinner, useBanner, bannerButtonsInlineStyleAcceptAll, bannerButtonsInlineStyleAcceptEssentials, bannerButtonsInlineStyleAcceptIndividual, bannerButtonsInlineStyleEllipsesText, bannerButtonsInlineStyleSave } from \"../../../..\";\n\nvar BannerButton = function BannerButton(_ref) {\n var inlineStyle = _ref.inlineStyle,\n type = _ref.type,\n onClick = _ref.onClick,\n children = _ref.children,\n framed = _ref.framed,\n busyOnClick = _ref.busyOnClick,\n order = _ref.order;\n\n if (type === \"hide\") {\n return null;\n }\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isBusy = _useState2[0],\n setIsBusy = _useState2[1];\n\n var handleOnClick = useCallback(function () {\n if (!isBusy) {\n busyOnClick && setIsBusy(true);\n onClick === null || onClick === void 0 ? void 0 : onClick();\n }\n }, [onClick, isBusy, busyOnClick]);\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n isHover = _useState4[0],\n setIsHover = _useState4[1];\n\n var banner = useBanner();\n var individualPrivacyOpen = banner.individualPrivacyOpen,\n _banner$decision = banner.decision,\n acceptAll = _banner$decision.acceptAll,\n acceptEssentials = _banner$decision.acceptEssentials,\n _banner$bodyDesign = banner.bodyDesign,\n acceptAllOneRowLayout = _banner$bodyDesign.acceptAllOneRowLayout,\n acceptEssentialsUseAcceptAll = _banner$bodyDesign.acceptEssentialsUseAcceptAll;\n var useAcceptEssentials = acceptEssentialsUseAcceptAll ? acceptAll : acceptEssentials;\n var interactionAttr = {\n onClick: handleOnClick,\n onMouseEnter: function onMouseEnter() {\n return setIsHover(true);\n },\n onMouseLeave: function onMouseLeave() {\n return setIsHover(false);\n }\n };\n var useStyleFn = useMemo(function () {\n switch (inlineStyle) {\n case \"acceptEssentials\":\n return bannerButtonsInlineStyleAcceptEssentials;\n\n case \"acceptIndividual\":\n return bannerButtonsInlineStyleAcceptIndividual;\n\n case \"save\":\n return bannerButtonsInlineStyleSave;\n\n default:\n return bannerButtonsInlineStyleAcceptAll;\n }\n }, [inlineStyle]); // Also create a spacing `height:10` container because `marginBottom` causes issues with `position:sticky`\n\n return h(\"div\", _extends({}, type === \"button\" ? interactionAttr : {}, useStyleFn(banner, isHover, framed, order, // IE does not support flex with calc()\n isIE() || acceptAll === \"hide\" || useAcceptEssentials === \"hide\" || individualPrivacyOpen || order > 1 ? false : acceptAllOneRowLayout)), h(\"span\", _extends({}, bannerButtonsInlineStyleEllipsesText(), type === \"link\" ? interactionAttr : {}), isBusy ? h(AsciiSpinner, null) : children));\n};\n\nexport { BannerButton };","function isIE() {\n return /MSIE (\\d+\\.\\d+);/.test(navigator.userAgent) || navigator.userAgent.indexOf(\"Trident/\") > -1;\n}\n\nexport { isIE };","function bannerButtonsInlineStyleEllipsesText() {\n return {\n style: {\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n wordBreak: \"keep-all\",\n overflow: \"hidden\",\n cursor: \"pointer\"\n }\n };\n}\n\nexport { bannerButtonsInlineStyleEllipsesText };","import { Fragment, useMemo } from \"react\";\nimport { useBanner, useBannerButtonCallbacks, BannerButton } from \"../../..\";\n\nvar BannerButtonList = function BannerButtonList() {\n var banner = useBanner();\n var activeAction = banner.activeAction,\n _banner$bodyDesign = banner.bodyDesign,\n acceptEssentialsUseAcceptAll = _banner$bodyDesign.acceptEssentialsUseAcceptAll,\n acceptAllOneRowLayout = _banner$bodyDesign.acceptAllOneRowLayout,\n _banner$decision = banner.decision,\n showGroups = _banner$decision.showGroups,\n groupsFirstView = _banner$decision.groupsFirstView,\n saveButton = _banner$decision.saveButton,\n acceptAll = _banner$decision.acceptAll,\n acceptEssentials = _banner$decision.acceptEssentials,\n acceptIndividual = _banner$decision.acceptIndividual,\n buttonOrderString = _banner$decision.buttonOrder,\n _banner$texts = banner.texts,\n acceptAllText = _banner$texts.acceptAll,\n acceptEssentialsText = _banner$texts.acceptEssentials,\n acceptIndividualText = _banner$texts.acceptIndividual,\n _banner$saveButton = banner.saveButton,\n saveButtonType = _banner$saveButton.type,\n saveButtonUseAcceptAll = _banner$saveButton.useAcceptAll,\n save = banner.individualTexts.save,\n individualPrivacyOpen = banner.individualPrivacyOpen,\n didGroupFirstChange = banner.didGroupFirstChange,\n productionNotice = banner.productionNotice,\n _banner$buttonClicked = banner.buttonClicked,\n buttonClicked = _banner$buttonClicked === void 0 ? \"\" : _banner$buttonClicked; // Calculate order of the buttons depending on a string like `all,essential,save,individual`\n\n var _useMemo = useMemo(function () {\n var buttonOrder = buttonOrderString.split(\",\");\n var buttonToOrder = buttonOrder.reduce(function (previous, curr) {\n previous[curr] = buttonOrder.indexOf(curr);\n return previous;\n }, {});\n var orderToButton = buttonOrder.reduce(function (previous, curr) {\n previous[buttonOrder.indexOf(curr)] = curr;\n return previous;\n }, {}); // If one-row layout is enabled, reverse the first two orders so the first button gets moved to the right\n\n // If one-row layout is enabled, reverse the first two orders so the first button gets moved to the right\n if (acceptAllOneRowLayout) {\n buttonToOrder[orderToButton[0]] = 1;\n buttonToOrder[orderToButton[1]] = 0;\n }\n\n return buttonToOrder;\n }, [buttonOrderString, acceptAllOneRowLayout]),\n buttonOrderAll = _useMemo.all,\n buttonOrderEssential = _useMemo.essential,\n buttonOrderIndividual = _useMemo.individual,\n buttonOrderSave = _useMemo.save;\n\n var isPro = process.env.PLUGIN_CTX === \"pro\";\n\n var _useBannerButtonCallb = useBannerButtonCallbacks(),\n buttonClickedAll = _useBannerButtonCallb.buttonClickedAll,\n buttonClickedEssentials = _useBannerButtonCallb.buttonClickedEssentials,\n buttonClickedCustom = _useBannerButtonCallb.buttonClickedCustom,\n handleAll = _useBannerButtonCallb.acceptAll,\n handleEssentials = _useBannerButtonCallb.acceptEssentials,\n handleIndividual = _useBannerButtonCallb.acceptIndividual,\n openIndividualPrivacy = _useBannerButtonCallb.openIndividualPrivacy; // We expect a reload of the page for the \"change\" action (keeps also dialog open)\n\n\n var busyOnClick = activeAction === \"change\";\n var groupsFirstViewEnabled = showGroups && groupsFirstView;\n return h(Fragment, null, !individualPrivacyOpen && isPro && groupsFirstViewEnabled && saveButton === \"afterChangeAll\" && didGroupFirstChange ? h(BannerButton, {\n onClick: handleIndividual,\n type: acceptAll,\n inlineStyle: \"acceptAll\",\n framed: buttonClicked === buttonClickedCustom,\n busyOnClick: busyOnClick,\n order: buttonOrderAll\n }, save) : h(BannerButton, {\n onClick: handleAll,\n type: acceptAll,\n inlineStyle: \"acceptAll\",\n framed: buttonClicked === buttonClickedAll,\n busyOnClick: busyOnClick,\n order: buttonOrderAll\n }, acceptAllText), activeAction !== \"change\" && h(BannerButton, {\n onClick: handleEssentials,\n type: acceptEssentialsUseAcceptAll ? acceptAll : acceptEssentials,\n inlineStyle: acceptEssentialsUseAcceptAll ? \"acceptAll\" : \"acceptEssentials\",\n framed: buttonClicked === buttonClickedEssentials,\n busyOnClick: busyOnClick,\n order: buttonOrderEssential\n }, acceptEssentialsText), (individualPrivacyOpen || isPro && groupsFirstViewEnabled && (saveButton === \"always\" || saveButton === \"afterChange\" && didGroupFirstChange)) && h(BannerButton, {\n onClick: handleIndividual,\n type: saveButtonUseAcceptAll ? acceptAll : saveButtonType,\n inlineStyle: saveButtonUseAcceptAll ? \"acceptAll\" : \"save\",\n framed: buttonClicked === buttonClickedCustom,\n busyOnClick: busyOnClick,\n order: buttonOrderSave\n }, save), !individualPrivacyOpen && h(BannerButton, {\n type: acceptIndividual,\n onClick: openIndividualPrivacy,\n inlineStyle: \"acceptIndividual\",\n framed: buttonClicked.startsWith(\"ind_\"),\n busyOnClick: busyOnClick,\n order: buttonOrderIndividual\n }, acceptIndividualText), productionNotice);\n};\n\nexport { BannerButtonList };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { useBanner, BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER, usePlainCss, scaleMobile, bannerInlineStylesRightSide, bannerInlineStylesLeftSide, bannerInlineStyleBody, bannerInlineStyleBodyContainer, bannerInlineStyleBodyDescription, commonInlineStyleBodyTeaching, commonInlineStyleBodyTeachingsSeparator, BannerDottedGroupList, BannerTcfStackList, BannerGroupList, BannerTcfGroupList, BannerButtonList, BannerHistorySelect, useCommonTeachings } from \"../../..\";\nimport { useMemo, Fragment } from \"react\";\n\nvar BannerBody = function BannerBody(_ref) {\n var _document$getElementB;\n\n var leftSideContainerRef = _ref.leftSideContainerRef,\n rightSideContainerRef = _ref.rightSideContainerRef;\n var banner = useBanner();\n var type = banner.layout.type,\n mobile = banner.mobile,\n teachingsSeparatorActive = banner.bodyDesign.teachingsSeparatorActive,\n tcf = banner.tcf,\n individualPrivacyOpen = banner.individualPrivacyOpen,\n activeAction = banner.activeAction,\n pageRequestUuid4 = banner.pageRequestUuid4;\n\n var _useCommonTeachings = useCommonTeachings(),\n description = _useCommonTeachings.description,\n teachings = _useCommonTeachings.teachings; // Make the content responsive\n\n\n var leftSideId = \"bnnr-body-leftSide-\".concat(pageRequestUuid4);\n var rightSideId = \"bnnr-body-rightSide-\".concat(pageRequestUuid4);\n var contentId = \"cntnt-\".concat(pageRequestUuid4);\n usePlainCss(\" #\".concat(leftSideId, \" img {\\n max-width: 100%;\\n height: auto;\\n}\\n\\n\").concat(((_document$getElementB = document.getElementById(pageRequestUuid4)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.clientWidth) > BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER ? \"\" : \"#\".concat(leftSideId, \" {\\n float: initial !important;\\n width: auto !important;\\n padding-right: initial !important;\\n \").concat(scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"banner\" && !individualPrivacyOpen ? \"padding-bottom: 10px !important;\" : individualPrivacyOpen ? \"padding-top: 10px !important;\" : \"\", \"\\n }\\n\\n #\").concat(contentId, \" {\\n min-height: calc(var(--rendered-height-header) + var(--rendered-height-footer) + var(--rendered-height-rightSideContainer) + 60px);\\n }\\n \\n #\").concat(rightSideId, \" {\\n float: initial !important;\\n width: auto !important;\\n max-width: initial !important;\\n margin: initial !important;\\n \").concat(individualPrivacyOpen ? \"padding-bottom: 5px !important;\" : \"padding-top: 10px !important;\", \"\\n position: sticky;\\n }\"))); // Calculate the body content depending on TCF availability and if second view got opened\n\n var stackOrGroups = useMemo(function () {\n if (process.env.IS_TCF === \"1\" && tcf) {\n return individualPrivacyOpen ? h(BannerTcfGroupList, null) : h(BannerTcfStackList, null);\n } else {\n return individualPrivacyOpen ? h(BannerGroupList, null) : h(BannerDottedGroupList, null);\n }\n }, [individualPrivacyOpen, tcf]);\n var leftSide = h(\"div\", _extends({\n ref: leftSideContainerRef,\n key: \"leftSide\",\n id: leftSideId\n }, bannerInlineStylesLeftSide(banner)), h(\"div\", bannerInlineStyleBodyDescription(banner), activeAction === \"history\" ? h(BannerHistorySelect, null) : h(Fragment, null, h(\"span\", {\n dangerouslySetInnerHTML: {\n __html: description\n }\n }), teachings.length > 0 && h(Fragment, null, teachingsSeparatorActive && h(\"div\", null, h(\"span\", commonInlineStyleBodyTeachingsSeparator(banner))), teachings.map(function (teaching) {\n return h(\"span\", _extends({\n key: teaching\n }, commonInlineStyleBodyTeaching(banner), {\n dangerouslySetInnerHTML: {\n __html: teaching\n }\n }));\n })))), stackOrGroups);\n var rightSide = activeAction === \"history\" ? h(\"div\", {\n ref: rightSideContainerRef\n }) : h(\"div\", _extends({\n ref: rightSideContainerRef,\n key: \"rightSide\",\n id: rightSideId\n }, bannerInlineStylesRightSide(banner)), h(BannerButtonList, null));\n return h(\"div\", bannerInlineStyleBodyContainer(banner), h(\"div\", bannerInlineStyleBody(banner), individualPrivacyOpen ? [rightSide, leftSide] : [leftSide, rightSide], h(\"div\", {\n style: {\n clear: \"both\"\n }\n })));\n};\n\nexport { BannerBody };","import { scaleMobile } from \"../../scale\";\nvar BUTTONS_WIDTH = 300;\n\nfunction bannerInlineStylesLeftSide(_ref) {\n var type = _ref.layout.type,\n padding = _ref.bodyDesign.padding,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n individualPrivacyOpen = _ref.individualPrivacyOpen,\n activeAction = _ref.activeAction,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useType = scaleMobile(mobile, pageRequestUuid4, type, \"banner\");\n var usePadding = scaleMobile(mobile, pageRequestUuid4, padding);\n var style = {\n float: useType === \"banner\" && activeAction !== \"history\" ? \"left\" : undefined,\n width: useType === \"banner\" && activeAction !== \"history\" ? \"calc(100% - \".concat(BUTTONS_WIDTH, \"px)\") : undefined,\n paddingRight: useType === \"banner\" ? 20 : undefined,\n paddingTop: +usePadding[0],\n paddingBottom: useType === \"banner\" || individualPrivacyOpen ? +usePadding[2] : 0\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-tb-left\",\n style: style\n };\n}\n\nexport { BUTTONS_WIDTH, bannerInlineStylesLeftSide };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerInlineStyleBodyDescription(_ref) {\n var fontSize = _ref.design.fontSize,\n _ref$bodyDesign = _ref.bodyDesign,\n descriptionInheritFontSize = _ref$bodyDesign.descriptionInheritFontSize,\n descriptionFontSize = _ref$bodyDesign.descriptionFontSize,\n descriptionTextAlign = _ref.individualLayout.descriptionTextAlign,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n individualPrivacyOpen = _ref.individualPrivacyOpen,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-description\",\n style: {\n lineHeight: 1.5,\n fontSize: scaleMobile(mobile, pageRequestUuid4, descriptionInheritFontSize ? +fontSize : +descriptionFontSize),\n textAlign: individualPrivacyOpen ? descriptionTextAlign : undefined\n }\n };\n}\n\nexport { bannerInlineStyleBodyDescription };","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport { hexToRgb } from \"../../../utils\";\nimport { scaleMobile } from \"../../scale\";\nimport { BUTTONS_WIDTH } from \"./leftSide\";\n\nfunction bannerInlineStylesRightSide(_ref) {\n var _style;\n\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n dialogMaxWidth = _ref$layout.dialogMaxWidth,\n _ref$design = _ref.design,\n borderWidth = _ref$design.borderWidth,\n bg = _ref$design.bg,\n fontColor = _ref$design.fontColor,\n headerDesign = _ref.headerDesign,\n footerDesign = _ref.footerDesign,\n padding = _ref.bodyDesign.padding,\n inheritDialogMaxWidth = _ref.individualLayout.inheritDialogMaxWidth,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n individualPrivacyOpen = _ref.individualPrivacyOpen,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useType = scaleMobile(mobile, pageRequestUuid4, type, \"banner\");\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, borderWidth);\n var usePadding = scaleMobile(mobile, pageRequestUuid4, padding, undefined, true);\n\n var _hexToRgb = hexToRgb(fontColor),\n r = _hexToRgb.r,\n g = _hexToRgb.g,\n b = _hexToRgb.b;\n\n var width = useType === \"dialog\" ? +dialogMaxWidth - usePadding[1] - usePadding[3] - useBorderWidth * 2 : BUTTONS_WIDTH;\n var style = (_style = {\n background: bg,\n paddingTop: useType === \"banner\" || individualPrivacyOpen ? +usePadding[0] : 10,\n paddingBottom: !individualPrivacyOpen ? +usePadding[2] : 10,\n float: useType === \"banner\" || individualPrivacyOpen ? \"right\" : undefined,\n maxWidth: width,\n width: width,\n margin: useType === \"dialog\" && individualPrivacyOpen && !inheritDialogMaxWidth ? \"0 0 10px 10px\" : undefined,\n // position: individualPrivacyOpen ? \"sticky\" : undefined, This is done by `body.tsx#usePlainCss`\n position: individualPrivacyOpen ? undefined : \"sticky\"\n }, _defineProperty(_style, individualPrivacyOpen ? \"top\" : \"bottom\", individualPrivacyOpen ? \"calc(var(--rendered-height-header) + \".concat(scaleMobile(mobile, pageRequestUuid4, headerDesign.borderWidth), \"px)\") : \"calc(var(--rendered-height-footer) + \".concat(scaleMobile(mobile, pageRequestUuid4, footerDesign.borderWidth), \"px)\")), _defineProperty(_style, \"zIndex\", 1), _defineProperty(_style, \"display\", \"flex\"), _defineProperty(_style, \"flexWrap\", \"wrap\"), _defineProperty(_style, \"transition\", \"box-shadow ease-in-out .1s\"), _defineProperty(_style, \"--boxShadowShowScroll\", \"0 -15px 15px -15px rgba(\".concat(r, \", \").concat(g, \", \").concat(b, \", 0.3)\")), _style);\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-tb-right\",\n style: style\n };\n}\n\nexport { bannerInlineStylesRightSide };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerInlineStyleBodyContainer(_ref) {\n var type = _ref.layout.type,\n _ref$design = _ref.design,\n bg = _ref$design.bg,\n borderWidth = _ref$design.borderWidth,\n borderColor = _ref$design.borderColor,\n padding = _ref.bodyDesign.padding,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, borderWidth);\n var style = {\n background: bg,\n // Top / Bottom padding is applied in leftSide and rightSide containers\n padding: scaleMobile(mobile, pageRequestUuid4, padding).map(function (p, i) {\n return \"\".concat([0, 2].indexOf(i) > -1 ? 0 : p, \"px\");\n }).join(\" \"),\n lineHeight: 1.4\n };\n\n if (scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"dialog\" && useBorderWidth > 0) {\n style.borderLeft = \"\".concat(useBorderWidth, \"px solid \").concat(borderColor);\n style.borderRight = style.borderLeft;\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-body-container\",\n style: style\n };\n}\n\nexport { bannerInlineStyleBodyContainer };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerInlineStyleBody(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n bannerMaxWidth = _ref$layout.bannerMaxWidth,\n individualLayout = _ref.individualLayout,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n individualPrivacyOpen = _ref.individualPrivacyOpen,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var style = {\n transition: \"width 500ms, max-width 500ms\",\n maxWidth: scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"banner\" ? +(individualPrivacyOpen && !individualLayout.inheritBannerMaxWidth ? individualLayout.bannerMaxWidth : bannerMaxWidth) : undefined,\n margin: \"auto\"\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-body\",\n style: style\n };\n}\n\nexport { bannerInlineStyleBody };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { forwardRef, useCallback } from \"react\";\nimport { useBanner, bannerFooterInlineStyle, bannerFooterInlineStyleContainer, FooterLink, useCommonFooterLinks } from \"../../..\"; // eslint-disable-next-line react/display-name\n\nvar BannerFooter = /*#__PURE__*/forwardRef(function (_, ref) {\n var banner = useBanner();\n var isTcf = banner.isTcf,\n type = banner.layout.type,\n individualPrivacyOpen = banner.individualPrivacyOpen,\n updateIndividualPrivacyOpen = banner.updateIndividualPrivacyOpen,\n onClose = banner.onClose,\n tcf = banner.i18n.tcf,\n isConsentRecord = banner.isConsentRecord;\n var handleTcfVendorList = process.env.IS_TCF === \"1\" && isTcf ? useCallback(function (e) {\n updateIndividualPrivacyOpen(true);\n e.preventDefault();\n }, [updateIndividualPrivacyOpen]) : undefined;\n var handleClose = useCallback(function (e) {\n onClose();\n e.preventDefault();\n }, [onClose]);\n\n var _useCommonFooterLinks = useCommonFooterLinks({\n onClose: isConsentRecord ? handleClose : undefined,\n putPoweredByLinkInRow: type === \"banner\" ? 0 : 1,\n row1: [process.env.IS_TCF === \"1\" && isTcf && !individualPrivacyOpen && h(FooterLink, {\n href: \"#\",\n onClick: handleTcfVendorList,\n key: \"vendorList\"\n }, tcf.vendorList)]\n }),\n links = _useCommonFooterLinks.rows,\n renderLinks = _useCommonFooterLinks.render;\n\n return h(\"div\", _extends({\n ref: ref\n }, bannerFooterInlineStyleContainer(banner)), h(\"div\", bannerFooterInlineStyle(banner), renderLinks(links)));\n});\nexport { BannerFooter };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerFooterInlineStyleContainer(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n dialogBorderRadius = _ref$layout.dialogBorderRadius,\n design = _ref.design,\n _ref$footerDesign = _ref.footerDesign,\n inheritBg = _ref$footerDesign.inheritBg,\n bg = _ref$footerDesign.bg,\n inheritTextAlign = _ref$footerDesign.inheritTextAlign,\n textAlign = _ref$footerDesign.textAlign,\n padding = _ref$footerDesign.padding,\n fontSize = _ref$footerDesign.fontSize,\n fontColor = _ref$footerDesign.fontColor,\n fontWeight = _ref$footerDesign.fontWeight,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useType = scaleMobile(mobile, pageRequestUuid4, type, \"banner\");\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, design.borderWidth);\n var style = {\n padding: scaleMobile(mobile, pageRequestUuid4, padding, undefined, true).map(function (p) {\n return \"\".concat(p, \"px\");\n }).join(\" \"),\n background: inheritBg ? design.bg : bg,\n borderRadius: useType === \"dialog\" ? \"0 0 \".concat(dialogBorderRadius, \"px \").concat(dialogBorderRadius, \"px\") : undefined,\n fontSize: scaleMobile(mobile, pageRequestUuid4, +fontSize),\n fontWeight: fontWeight,\n color: fontColor,\n textAlign: inheritTextAlign ? design.textAlign : textAlign,\n position: \"sticky\",\n bottom: 0,\n zIndex: 1\n };\n\n if (useType === \"dialog\" && useBorderWidth > 0) {\n style.borderBottom = \"\".concat(useBorderWidth, \"px solid \").concat(design.borderColor);\n style.borderLeft = style.borderBottom;\n style.borderRight = style.borderBottom;\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-footer-container\",\n style: style\n };\n}\n\nexport { bannerFooterInlineStyleContainer };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerFooterInlineStyle(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n bannerMaxWidth = _ref$layout.bannerMaxWidth,\n individualLayout = _ref.individualLayout,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4,\n individualPrivacyOpen = _ref.individualPrivacyOpen;\n var style = {\n transition: \"width 500ms, max-width 500ms\",\n maxWidth: scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"banner\" ? +(individualPrivacyOpen && !individualLayout.inheritBannerMaxWidth ? individualLayout.bannerMaxWidth : bannerMaxWidth) : undefined,\n margin: \"auto\",\n lineHeight: 1.8\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-footer\",\n style: style\n };\n}\n\nexport { bannerFooterInlineStyle };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { scaleMobile, useBanner, usePlainCss, useRenderedHeightsAsCssVars, bannerContentInlineStyle, bannerFooterInlineStyleSeparator, bannerHeaderInlineStyleSeparator, BannerHeader, BannerFooter, BannerBody } from \"../../..\";\nimport { Fragment, useState, useRef, useLayoutEffect, useCallback } from \"react\";\n\nvar BannerContent = function BannerContent() {\n var banner = useBanner();\n var _banner$layout = banner.layout,\n type = _banner$layout.type,\n dialogBorderRadius = _banner$layout.dialogBorderRadius,\n _banner$decision = banner.decision,\n acceptAll = _banner$decision.acceptAll,\n acceptEssentials = _banner$decision.acceptEssentials,\n showCloseIcon = _banner$decision.showCloseIcon,\n mobile = banner.mobile,\n individualPrivacyOpen = banner.individualPrivacyOpen,\n bg = banner.design.bg,\n _banner$bodyDesign = banner.bodyDesign,\n teachingsFontColor = _banner$bodyDesign.teachingsFontColor,\n acceptEssentialsUseAcceptAll = _banner$bodyDesign.acceptEssentialsUseAcceptAll,\n activeAction = banner.activeAction,\n pageRequestUuid4 = banner.pageRequestUuid4;\n var rightSideId = \"bnnr-body-rightSide-\".concat(pageRequestUuid4);\n var id = \"cntnt-\".concat(pageRequestUuid4);\n var ref = useRef();\n var currentRef = ref.current;\n var useAcceptEssentials = acceptEssentialsUseAcceptAll ? acceptAll : acceptEssentials;\n var showHeader = true;\n\n if (mobile.hideHeader && !activeAction && !individualPrivacyOpen && (useAcceptEssentials === \"hide\" ? !showCloseIcon : true)) {\n showHeader = scaleMobile(mobile, pageRequestUuid4, showHeader, false);\n } // Enable box shadow effect for the scrolling behavior\n\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n showScrollBoxShadow = _useState2[0],\n setShowScrollBoxShadow = _useState2[1];\n\n var updateShowScrollBoxShadow = useCallback(function () {\n if (currentRef) {\n var clientHeight = currentRef.clientHeight,\n scrollHeight = currentRef.scrollHeight,\n scrollTop = currentRef.scrollTop,\n offsetHeight = currentRef.offsetHeight;\n var hasScrollbar = clientHeight < scrollHeight;\n var scrolledToBottom = Math.ceil(scrollTop + offsetHeight) >= scrollHeight;\n var result = hasScrollbar && !scrolledToBottom && !individualPrivacyOpen;\n\n if (showScrollBoxShadow !== result) {\n setShowScrollBoxShadow(result);\n }\n }\n }, [currentRef, individualPrivacyOpen, showScrollBoxShadow]);\n updateShowScrollBoxShadow(); // The function gets called for each resize in `Banner` component\n\n useLayoutEffect(function () {\n if (currentRef) {\n currentRef.addEventListener(\"scroll\", updateShowScrollBoxShadow);\n return function () {\n return currentRef.removeEventListener(\"scroll\", updateShowScrollBoxShadow);\n };\n } // eslint-disable-next-line @typescript-eslint/no-empty-function\n\n\n return function () {};\n }, [currentRef, updateShowScrollBoxShadow]);\n usePlainCss(showScrollBoxShadow ? \"#\".concat(rightSideId, \" {box-shadow:var(--boxShadowShowScroll);}\") : \"\"); // Create custom scrollbar when a border radius is active (https://css-tricks.com/the-current-state-of-styling-scrollbars/)\n\n usePlainCss(navigator.platform === \"Win32\" && type === \"dialog\" && dialogBorderRadius > 0 ? [\"#\".concat(id, \"{overflow:overlay!important;}\"), \"#\".concat(id, \"::-webkit-scrollbar{width:11px;}\"), \"#\".concat(id, \"{scrollbar-width:thin;scrollbar-color:\").concat(teachingsFontColor, \" transparent;}\"), \"#\".concat(id, \"::-webkit-scrollbar-track{background:transparent;}\"), \"#\".concat(id, \"::-webkit-scrollbar-thumb{background-color:\").concat(teachingsFontColor, \";border-radius:\").concat(dialogBorderRadius, \"px;border:3px solid \").concat(bg, \";}\"), \"#\".concat(id, \">div{border-top-right-radius:0!important;border-bottom-right-radius:0!important;}\")].join(\"\\n\") : \"\");\n var headerRef = useRef();\n var footerRef = useRef();\n var rightSideContainerRef = useRef();\n useRenderedHeightsAsCssVars(headerRef.current, \"header\");\n useRenderedHeightsAsCssVars(footerRef.current, \"footer\");\n useRenderedHeightsAsCssVars(rightSideContainerRef.current, \"rightSideContainer\");\n return h(\"div\", _extends({}, bannerContentInlineStyle(banner), {\n ref: ref,\n id: id\n }), showHeader && h(Fragment, null, h(BannerHeader, {\n ref: headerRef\n }), h(\"div\", bannerHeaderInlineStyleSeparator(banner))), h(BannerBody, {\n rightSideContainerRef: rightSideContainerRef\n }), h(\"div\", bannerFooterInlineStyleSeparator(banner)), h(BannerFooter, {\n ref: footerRef\n }));\n};\n\nexport { BannerContent };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerContentInlineStyle(_ref) {\n var _document$getElementB;\n\n var type = _ref.layout.type,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n showCloseIcon = _ref.decision.showCloseIcon,\n activeAction = _ref.activeAction,\n individualPrivacyOpen = _ref.individualPrivacyOpen,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var innerHeight = ((_document$getElementB = document.getElementById(pageRequestUuid4)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.clientHeight) || window.innerHeight;\n var mobileMaxHeight = +mobile.maxHeight;\n var useMobileMaxHeight = mobileMaxHeight > innerHeight ? innerHeight : mobileMaxHeight;\n var closeIconDistance = showCloseIcon || activeAction ? 51 : 0;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-content\",\n style: {\n position: \"relative\",\n maxHeight: scaleMobile(mobile, pageRequestUuid4, innerHeight - (type === \"banner\" ? 0 : 20) - closeIconDistance, individualPrivacyOpen ? innerHeight - closeIconDistance : useMobileMaxHeight - closeIconDistance),\n overflow: \"auto\"\n }\n };\n}\n\nexport { bannerContentInlineStyle };","import { scaleMobile } from \"../..\";\n\nfunction bannerHeaderInlineStyleSeparator(_ref) {\n var type = _ref.layout.type,\n design = _ref.design,\n _ref$headerDesign = _ref.headerDesign,\n borderWidth = _ref$headerDesign.borderWidth,\n borderColor = _ref$headerDesign.borderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useDesignBorderWidth = scaleMobile(mobile, pageRequestUuid4, design.borderWidth);\n var style = {\n height: scaleMobile(mobile, pageRequestUuid4, +borderWidth),\n background: borderColor,\n position: \"sticky\",\n top: \"var(--rendered-height-header)\",\n zIndex: 9\n };\n\n if (scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"dialog\" && useDesignBorderWidth > 0) {\n style.borderLeft = \"\".concat(useDesignBorderWidth, \"px solid \").concat(design.borderColor);\n style.borderRight = style.borderLeft;\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-header-separator\",\n style: style\n };\n}\n\nexport { bannerHeaderInlineStyleSeparator };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerFooterInlineStyleSeparator(_ref) {\n var type = _ref.layout.type,\n design = _ref.design,\n _ref$footerDesign = _ref.footerDesign,\n borderWidth = _ref$footerDesign.borderWidth,\n borderColor = _ref$footerDesign.borderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, design.borderWidth);\n var style = {\n height: scaleMobile(mobile, pageRequestUuid4, +borderWidth),\n background: borderColor,\n position: \"sticky\",\n bottom: \"var(--rendered-height-footer)\"\n };\n\n if (scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"dialog\" && useBorderWidth > 0) {\n style.borderLeft = \"\".concat(useBorderWidth, \"px solid \").concat(design.borderColor);\n style.borderRight = style.borderLeft;\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-footer-separator\",\n style: style\n };\n}\n\nexport { bannerFooterInlineStyleSeparator };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { bannerContentInlineStyleInner, useBanner, useBannerAnimation, useResettableAnimation } from \"../../..\";\nimport { AnimatedCss } from \"../..\";\nimport { BannerContent } from \".\";\n\nvar BannerAnimatedContent = function BannerAnimatedContent() {\n var banner = useBanner();\n var _banner$layout = banner.layout,\n animationInDuration = _banner$layout.animationInDuration,\n animationOutDuration = _banner$layout.animationOutDuration,\n animationVisible = banner.animationVisible;\n\n var _useBannerAnimation = useBannerAnimation()(banner.layout),\n useAnimationIn = _useBannerAnimation.useAnimationIn,\n useAnimationOut = _useBannerAnimation.useAnimationOut;\n\n var _useResettableAnimati = useResettableAnimation(useAnimationIn, animationInDuration),\n _useResettableAnimati2 = _slicedToArray(_useResettableAnimati, 2),\n stateAnimationIn = _useResettableAnimati2[0],\n stateAnimationInDuration = _useResettableAnimati2[1];\n\n var _useResettableAnimati3 = useResettableAnimation(useAnimationOut === \"none\" ? \"fadeOut\" : useAnimationOut, useAnimationOut === \"none\" ? 0 : animationOutDuration),\n _useResettableAnimati4 = _slicedToArray(_useResettableAnimati3, 2),\n stateAnimationOut = _useResettableAnimati4[0],\n stateAnimationOutDuration = _useResettableAnimati4[1];\n\n return h(AnimatedCss, _extends({\n animationIn: stateAnimationIn,\n animationInDuration: stateAnimationInDuration,\n animationOut: stateAnimationOut,\n animationOutDuration: stateAnimationOutDuration,\n isVisible: animationVisible\n }, bannerContentInlineStyleInner(banner)), h(BannerContent, null));\n};\n\nexport { BannerAnimatedContent };","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport { calculateRgba } from \"../../../utils\";\nimport { scaleMobile } from \"../../scale\";\n\nfunction bannerContentInlineStyleInner(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n dialogMaxWidth = _ref$layout.dialogMaxWidth,\n dialogPosition = _ref$layout.dialogPosition,\n dialogMargin = _ref$layout.dialogMargin,\n bannerPosition = _ref$layout.bannerPosition,\n dialogBorderRadius = _ref$layout.dialogBorderRadius,\n _ref$design = _ref.design,\n borderWidth = _ref$design.borderWidth,\n borderColor = _ref$design.borderColor,\n textAlign = _ref$design.textAlign,\n fontColor = _ref$design.fontColor,\n fontInheritFamily = _ref$design.fontInheritFamily,\n fontFamily = _ref$design.fontFamily,\n fontWeight = _ref$design.fontWeight,\n boxShadowEnabled = _ref$design.boxShadowEnabled,\n boxShadowOffsetX = _ref$design.boxShadowOffsetX,\n boxShadowOffsetY = _ref$design.boxShadowOffsetY,\n boxShadowBlurRadius = _ref$design.boxShadowBlurRadius,\n boxShadowSpreadRadius = _ref$design.boxShadowSpreadRadius,\n boxShadowColor = _ref$design.boxShadowColor,\n boxShadowColorAlpha = _ref$design.boxShadowColorAlpha,\n individualLayout = _ref.individualLayout,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4,\n individualPrivacyOpen = _ref.individualPrivacyOpen;\n var mobileAlignment = mobile.alignment;\n var useType = scaleMobile(mobile, pageRequestUuid4, type, \"banner\");\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, borderWidth);\n var width = useType === \"dialog\" ? +(individualPrivacyOpen && !individualLayout.inheritDialogMaxWidth ? individualLayout.dialogMaxWidth : dialogMaxWidth) : \"100%\";\n\n var style = _defineProperty({\n pointerEvents: \"all\",\n transition: \"width 500ms, max-width 500ms\",\n maxWidth: width,\n textAlign: textAlign,\n width: width,\n overflow: \"hidden\",\n alignSelf: scaleMobile(mobile, pageRequestUuid4, useType === \"banner\" ? bannerPosition === \"top\" ? \"flex-start\" : \"flex-end\" : undefined, mobileAlignment === \"bottom\" ? \"flex-end\" : mobileAlignment === \"top\" ? \"flex-start\" : \"center\"),\n fontFamily: fontInheritFamily ? undefined : fontFamily,\n fontWeight: fontWeight,\n color: fontColor,\n margin: useType === \"dialog\" ? 10 : undefined,\n borderRadius: useType === \"dialog\" ? +dialogBorderRadius : undefined,\n boxShadow: boxShadowEnabled ? \"\".concat(boxShadowOffsetX, \"px \").concat(boxShadowOffsetY, \"px \").concat(boxShadowBlurRadius, \"px \").concat(boxShadowSpreadRadius, \"px \").concat(calculateRgba(boxShadowColor, boxShadowColorAlpha)) : undefined\n }, useType === \"banner\" ? bannerPosition === \"top\" ? \"borderBottom\" : \"borderTop\" : \"border\", useType === \"banner\" ? useBorderWidth > 0 ? \"\".concat(useBorderWidth, \"px solid \").concat(borderColor) : undefined : undefined);\n\n if (useType === \"dialog\" && dialogPosition !== \"middleCenter\") {\n style.margin = dialogMargin.map(function (i) {\n return \"\".concat(i, \"px\");\n }).join(\" \");\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-inner\",\n style: style\n };\n}\n\nexport { bannerContentInlineStyleInner };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useLayoutEffect, useEffect } from \"react\";\nimport { dispatchResizeEvent } from \"@devowl-wp/headless-content-unblocker\";\nimport { useBanner, useBannerActionLinks, useBannerHistory, usePlainCss, useRestrictScrollWhenVisible, bannerOverlayInlineStyle, bannerOverlayInlineStyleAlignment, BannerAnimatedContent, isHiddenDueLegal } from \"../..\";\n\nvar Banner = function Banner() {\n var banner = useBanner();\n var _banner$layout = banner.layout,\n overlay = _banner$layout.overlay,\n overlayBlur = _banner$layout.overlayBlur,\n _banner$customCss = banner.customCss,\n antiAdBlocker = _banner$customCss.antiAdBlocker,\n css = _banner$customCss.css,\n visible = banner.visible,\n animationVisible = banner.animationVisible,\n activeAction = banner.activeAction,\n skipOverlay = banner.skipOverlay,\n gotHiddenDueLegal = banner.gotHiddenDueLegal,\n pageRequestUuid4 = banner.pageRequestUuid4,\n individualPrivacyOpen = banner.individualPrivacyOpen;\n var hiddenDueLegal = isHiddenDueLegal(banner);\n var show = visible && !hiddenDueLegal || !!activeAction;\n usePlainCss(antiAdBlocker ? css : \"\");\n usePlainCss(\"#\".concat(pageRequestUuid4, \", #\").concat(pageRequestUuid4, \" * {box-sizing: border-box;backface-visibility:initial;text-transform: initial;}\")); // Blur effect\n\n if (process.env.PLUGIN_CTX === \"pro\") {\n /* Silence is golden... Until you have PRO Version! */\n }\n\n useRestrictScrollWhenVisible(show && overlay && animationVisible); // Listen to window resizes and resize the content automatically\n\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n setInvalidate = _useState2[1];\n\n var updateSize = function updateSize() {\n return setInvalidate(+new Date());\n };\n\n useLayoutEffect(function () {\n window.addEventListener(\"resize\", updateSize);\n return function () {\n return window.removeEventListener(\"resize\", updateSize);\n };\n }, []);\n useLayoutEffect(function () {\n dispatchResizeEvent(1000);\n }, [animationVisible, individualPrivacyOpen]); // When changes to the legal settings are done, make the banner visible or hide\n\n gotHiddenDueLegal && useEffect(function () {\n gotHiddenDueLegal(hiddenDueLegal);\n }, [hiddenDueLegal]);\n useBannerHistory();\n useBannerActionLinks();\n\n if (!show) {\n return null;\n }\n\n var content = h(\"div\", bannerOverlayInlineStyleAlignment(banner), h(BannerAnimatedContent, null));\n return skipOverlay ? content : h(\"div\", _extends({\n id: pageRequestUuid4\n }, bannerOverlayInlineStyle(banner)), content);\n};\n\nexport { Banner };","import { useEffect } from \"react\";\n/**\n * Do not allow scrolling when this banner is visible\n *\n * @param visible\n */\n\nfunction useRestrictScrollWhenVisible(visible) {\n return useEffect(function () {\n var _document$body = document.body,\n dataset = _document$body.dataset,\n style = _document$body.style; // Save first state\n\n if (dataset.rcbPreviousOverflow === undefined) {\n dataset.rcbPreviousOverflow = style.overflow;\n }\n\n style.overflow = visible ? \"hidden\" : dataset.rcbPreviousOverflow;\n document.body.parentElement.style.overflow = style.overflow;\n }, [visible]);\n}\n\nexport { useRestrictScrollWhenVisible };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { useEffect, useState } from \"react\";\nimport { useBanner } from \"../../..\";\n\nfunction useBannerHistory() {\n var banner = useBanner();\n var consent = banner.consent,\n groups = banner.groups,\n tcf = banner.tcf,\n activeAction = banner.activeAction,\n selectHistoryEntry = banner.selectHistoryEntry,\n fetchHistory = banner.fetchHistory; // Save the current consent and group settings to restore\n\n var _useState = useState({\n consent: consent,\n groups: groups,\n tcf: tcf\n }),\n _useState2 = _slicedToArray(_useState, 2),\n originalConsent = _useState2[0],\n setOriginalConsent = _useState2[1]; // Listen to consent changes and save it as original consent (only when non-history)\n\n\n useEffect(function () {\n if (!activeAction) {\n setOriginalConsent({\n consent: consent,\n groups: groups,\n tcf: tcf\n });\n }\n }, [consent, groups, tcf, activeAction]);\n useEffect(function () {\n function fetch() {\n return _fetch.apply(this, arguments);\n }\n\n function _fetch() {\n _fetch = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var result, _result, _result$, _groups2, decision, _tcf2;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return fetchHistory();\n\n case 2:\n result = _context.sent;\n\n // Initially select first item\n if (result.length) {\n _result = _slicedToArray(result, 1), _result$ = _result[0], _groups2 = _result$.groups, decision = _result$.decision, _tcf2 = _result$.tcf;\n selectHistoryEntry(_groups2, decision, _tcf2);\n } else {\n selectHistoryEntry([], []);\n }\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _fetch.apply(this, arguments);\n }\n\n if (activeAction === \"history\") {\n // Save state of original consent\n setOriginalConsent({\n consent: consent,\n groups: groups,\n tcf: tcf\n });\n fetch();\n } else {\n // If we close the history, restore the original state\n var _groups = originalConsent.groups,\n consentGroups = originalConsent.consent.groups,\n _tcf = originalConsent.tcf;\n selectHistoryEntry === null || selectHistoryEntry === void 0 ? void 0 : selectHistoryEntry(_groups, consentGroups, _tcf);\n }\n }, [activeAction]);\n}\n\nexport { useBannerHistory };","import { scaleMobile } from \"../..\";\n\nfunction bannerOverlayInlineStyleAlignment(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n dialogPosition = _ref$layout.dialogPosition,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var style = {\n display: \"flex\",\n width: \"100%\",\n height: \"100%\"\n };\n\n if (scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"dialog\") {\n style.alignItems = dialogPosition.startsWith(\"top\") ? \"flex-start\" : dialogPosition.startsWith(\"bottom\") ? \"flex-end\" : \"center\";\n style.justifyContent = dialogPosition.endsWith(\"Center\") ? \"center\" : dialogPosition.endsWith(\"Left\") ? \"flex-start\" : \"flex-end\";\n }\n\n return {\n className: \"wp-exclude-emoji \".concat(antiAdBlocker === \"y\" ? \"\" : \"rcb-align\"),\n style: style\n };\n}\n\nexport { bannerOverlayInlineStyleAlignment };","import { scaleMobile } from \"../..\";\nimport { calculateRgba } from \"../../..\";\n/**\n * This method needs to be ported to Banner.php#wp_footer, too!\n */\n\nfunction bannerOverlayInlineStyle(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n overlay = _ref$layout.overlay,\n overlayBg = _ref$layout.overlayBg,\n overlayBgAlpha = _ref$layout.overlayBgAlpha,\n fontSize = _ref.design.fontSize,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-bann3r rcb-bann3r-\".concat(scaleMobile(mobile, pageRequestUuid4, type, \"banner\"), \" \").concat(overlay ? \"\" : \"overlay-deactivated\"),\n style: {\n background: overlay ? calculateRgba(overlayBg, overlayBgAlpha) : \"none\",\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n zIndex: 99999,\n pointerEvents: overlay ? \"all\" : \"none\",\n fontSize: scaleMobile(mobile, pageRequestUuid4, +fontSize),\n filter: \"none\"\n }\n };\n}\n\nexport { bannerOverlayInlineStyle };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport var locationRestConsentGet = {\n path: \"/consent\",\n method: RouteHttpVerb.GET\n};","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { useState } from \"react\";\nimport { getOptionsFromWindow, getOtherOptionsFromWindow } from \"../utils\";\nimport { useBannerPreDecisionGateway, useTcf } from \"../hooks\";\nimport { applyConsent, getCookieConsentManager } from \"../others\";\nimport { prepareTcfString } from \"../tcf\";\nimport { getUserDecision } from \"@devowl-wp/cookie-consent-web-client\";\nimport { useBannerConsentListener } from \"@devowl-wp/react-cookie-banner\";\nimport { BannerContextFactory, useBannerToggleOverlay, Banner, useBannerStateContextCallbacks } from \"@devowl-wp/react-cookie-banner\";\nimport { locationRestConsentGet } from \"../wp-api\";\nimport { commonRequest } from \"@devowl-wp/utils\";\nimport { BannerProductionNotice } from \".\";\n/**\n * Simply connects a context store to the banner itself. On the website itself\n * it should not rely\n */\n\nvar WebsiteBanner = function WebsiteBanner(_ref) {\n var poweredLink = _ref.poweredLink;\n\n var _getOtherOptionsFromW = getOtherOptionsFromWindow(),\n _getOtherOptionsFromW2 = _getOtherOptionsFromW.customizeValuesBanner,\n layout = _getOtherOptionsFromW2.layout,\n decision = _getOtherOptionsFromW2.decision,\n legal = _getOtherOptionsFromW2.legal,\n design = _getOtherOptionsFromW2.design,\n headerDesign = _getOtherOptionsFromW2.headerDesign,\n bodyDesign = _getOtherOptionsFromW2.bodyDesign,\n footerDesign = _getOtherOptionsFromW2.footerDesign,\n texts = _getOtherOptionsFromW2.texts,\n individualLayout = _getOtherOptionsFromW2.individualLayout,\n saveButton = _getOtherOptionsFromW2.saveButton,\n group = _getOtherOptionsFromW2.group,\n individualTexts = _getOtherOptionsFromW2.individualTexts,\n customCss = _getOtherOptionsFromW2.customCss,\n mobile = _getOtherOptionsFromW2.mobile,\n pageId = _getOtherOptionsFromW.pageId,\n pageRequestUuid4 = _getOtherOptionsFromW.pageRequestUuid4,\n pageIdToPermalink = _getOtherOptionsFromW.pageIdToPermalink,\n consentForwardingExternalHosts = _getOtherOptionsFromW.consentForwardingExternalHosts,\n essentialGroup = _getOtherOptionsFromW.essentialGroup,\n isTcf = _getOtherOptionsFromW.isTcf,\n isEPrivacyUSA = _getOtherOptionsFromW.isEPrivacyUSA,\n isAgeNotice = _getOtherOptionsFromW.isAgeNotice,\n isListServicesNotice = _getOtherOptionsFromW.isListServicesNotice,\n tcf = _getOtherOptionsFromW.tcf,\n tcfMetadata = _getOtherOptionsFromW.tcfMetadata,\n groups = _getOtherOptionsFromW.groups,\n userConsentCookieName = _getOtherOptionsFromW.userConsentCookieName,\n bannerI18n = _getOtherOptionsFromW.bannerI18n,\n affiliate = _getOtherOptionsFromW.affiliate,\n isCurrentlyInTranslationEditorPreview = _getOtherOptionsFromW.isCurrentlyInTranslationEditorPreview,\n pageByIdUrl = _getOtherOptionsFromW.pageByIdUrl;\n\n var userDecision = getUserDecision(userConsentCookieName); // TCF compatibility\n\n var tcfObject = useTcf(isTcf, tcf, tcfMetadata); // Server-side rendered overlay handler\n\n var _useBannerToggleOverl = useBannerToggleOverlay(document.getElementById(pageRequestUuid4)),\n toggleOverlay = _useBannerToggleOverl.toggleOverlay;\n\n var _useBannerStateContex = useBannerStateContextCallbacks({\n toggleOverlay: toggleOverlay,\n revokeConsent: function revokeConsent(_ref2) {\n var tcf = _ref2.tcf;\n // Do not rely on current state of `groups` because it can be altered through history change\n var buttonClicked = \"shortcode_revoke\"; // TCF compatibility: revoke TCF string\n\n // TCF compatibility: revoke TCF string\n var tcfString;\n\n if (process.env.IS_TCF === \"1\" && tcf !== null && tcf !== void 0 && tcf.model) {\n tcfString = prepareTcfString(tcf.model, buttonClicked);\n }\n\n return applyConsent({\n consent: {\n groups: getCookieConsentManager().getDefaultDecision(true)\n },\n buttonClicked: buttonClicked,\n tcfString: tcfString\n });\n }\n }),\n _openHistory = _useBannerStateContex.openHistory,\n _openBanner = _useBannerStateContex.openBanner,\n _revokeConsent = _useBannerStateContex.revokeConsent,\n _updateTcfFilterBy = _useBannerStateContex.updateTcfFilterBy,\n _updateIndividualPrivacyOpen = _useBannerStateContex.updateIndividualPrivacyOpen,\n _updateGroupChecked = _useBannerStateContex.updateGroupChecked,\n _updateCookieChecked = _useBannerStateContex.updateCookieChecked,\n _onClose = _useBannerStateContex.onClose,\n _selectHistoryEntry = _useBannerStateContex.selectHistoryEntry; // Context values preparation\n\n\n var _useState = useState({\n layout: _objectSpread({}, layout),\n decision: _objectSpread({}, decision),\n legal: _objectSpread({}, legal),\n design: _objectSpread({}, design),\n headerDesign: _objectSpread({}, headerDesign),\n bodyDesign: _objectSpread({}, bodyDesign),\n footerDesign: _objectSpread({}, footerDesign),\n texts: _objectSpread({}, texts),\n individualLayout: _objectSpread({}, individualLayout),\n saveButton: _objectSpread({}, saveButton),\n group: _objectSpread({}, group),\n individualTexts: _objectSpread({}, individualTexts),\n customCss: _objectSpread({}, customCss),\n mobile: _objectSpread({}, mobile),\n productionNotice: h(BannerProductionNotice, null),\n pageRequestUuid4: pageRequestUuid4,\n pageIdToPermalink: pageIdToPermalink,\n pageByIdUrl: pageByIdUrl,\n consentForwardingExternalHosts: consentForwardingExternalHosts,\n pageId: pageId,\n isTcf: isTcf,\n ePrivacyUSA: isEPrivacyUSA,\n ageNotice: isAgeNotice,\n listServicesNotice: isListServicesNotice,\n tcf: tcfObject,\n tcfFilterBy: \"legInt\",\n groups: groups,\n essentialGroup: essentialGroup,\n poweredLink: poweredLink,\n visible: false,\n animationVisible: true,\n skipOverlay: true,\n previewCheckboxActiveState: false,\n individualPrivacyOpen: false,\n i18n: bannerI18n,\n keepVariablesInTexts: isCurrentlyInTranslationEditorPreview,\n affiliate: affiliate,\n consent: {\n groups: _objectSpread(_objectSpread({}, userDecision === false ? {} : userDecision.consent), getCookieConsentManager().getDefaultDecision(userDecision === false))\n },\n didGroupFirstChange: false,\n onSave: function onSave(markAsDoNotTrack, buttonClicked) {\n setContextValue(function (state) {\n var _state$tcf;\n\n // TCF compatibility: persist TCF string\n var tcfString;\n\n if (process.env.IS_TCF === \"1\" && isTcf && (_state$tcf = state.tcf) !== null && _state$tcf !== void 0 && _state$tcf.model) {\n tcfString = prepareTcfString(state.tcf.model, buttonClicked);\n }\n\n var appliedConsent = applyConsent({\n consent: state.consent,\n markAsDoNotTrack: markAsDoNotTrack,\n buttonClicked: buttonClicked,\n tcfString: tcfString\n });\n\n if (state.refreshSiteAfterSave) {\n appliedConsent.then(function () {\n return (// Fix iOS / Safari bug when we want to reload the page after a POST request\n setTimeout(function () {\n return window.location.reload();\n }, state.refreshSiteAfterSave ||\n /* BC */\n 2000)\n );\n }); // When refreshing the site, do not show any out animation\n\n // When refreshing the site, do not show any out animation\n return state;\n } else {\n return _objectSpread(_objectSpread({}, state), toggleOverlay(state, false));\n }\n });\n },\n fetchHistory: function () {\n var _fetchHistory = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var _getOptionsFromWindow, restNamespace, restRoot, restQuery, restNonce, history;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _getOptionsFromWindow = getOptionsFromWindow(), restNamespace = _getOptionsFromWindow.restNamespace, restRoot = _getOptionsFromWindow.restRoot, restQuery = _getOptionsFromWindow.restQuery, restNonce = _getOptionsFromWindow.restNonce;\n _context.next = 3;\n return commonRequest({\n location: locationRestConsentGet,\n options: {\n restNamespace: restNamespace,\n restRoot: restRoot,\n restQuery: restQuery,\n restNonce: restNonce\n },\n sendRestNonce: false\n });\n\n case 3:\n history = _context.sent;\n setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n history: history\n });\n });\n return _context.abrupt(\"return\", history);\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n function fetchHistory() {\n return _fetchHistory.apply(this, arguments);\n }\n\n return fetchHistory;\n }(),\n // Predefined callbacks\n updateTcfFilterBy: function updateTcfFilterBy(newFilter) {\n return _updateTcfFilterBy(setContextValue, newFilter);\n },\n updateIndividualPrivacyOpen: function updateIndividualPrivacyOpen(opened) {\n return _updateIndividualPrivacyOpen(setContextValue, opened);\n },\n updateGroupChecked: function updateGroupChecked(id, checked) {\n return _updateGroupChecked(setContextValue, id, checked);\n },\n updateCookieChecked: function updateCookieChecked(groupId, id, checked) {\n return _updateCookieChecked(setContextValue, groupId, id, checked);\n },\n onClose: function onClose() {\n return _onClose(setContextValue);\n },\n selectHistoryEntry: function selectHistoryEntry(groups, consentGroups, tcf) {\n return _selectHistoryEntry(setContextValue, groups, consentGroups, tcf);\n },\n openHistory: function openHistory(e) {\n return _openHistory(setContextValue, e);\n },\n openBanner: function openBanner(e) {\n return _openBanner(setContextValue, e);\n },\n revokeConsent: function revokeConsent(successMessage, e) {\n return _revokeConsent(setContextValue, successMessage, e);\n }\n }),\n _useState2 = _slicedToArray(_useState, 2),\n contextValue = _useState2[0],\n setContextValue = _useState2[1];\n\n useBannerPreDecisionGateway(contextValue, setContextValue, toggleOverlay);\n useBannerConsentListener(setContextValue, userConsentCookieName);\n var BannerContext = BannerContextFactory.Context();\n return h(BannerContext.Provider, {\n value: contextValue\n }, h(Banner, null));\n};\n\nexport { WebsiteBanner };","import { useMemo } from \"react\";\nimport { prepareTcfString } from \"../tcf\";\nimport { applyTcfModelMetadata, applyRestrictivePurposes, createTcfModel, createTcfModelFromCookie } from \"@devowl-wp/cookie-consent-web-client\";\nimport { getCookieConsentManager } from \"../others\";\n/**\n * Merges the localized `tcf` and `tcfMetadata` together so it can be\n * used inside our `BannerContextProps` and returns a valid `GVL` instance.\n */\n\nfunction useTcf(active, tcf, tcfMeta) {\n return useMemo(function () {\n if (process.env.IS_TCF === \"1\" && active && Object.values(tcf.vendors).length > 0) {\n var gvl;\n var model;\n var manager = getCookieConsentManager();\n var restored = createTcfModelFromCookie(tcf, tcfMeta, manager.getOption(\"tcfCookieName\")); // First, try to resolve from user consent (cookie value)\n\n if (restored) {\n gvl = restored.gvl;\n model = restored.model;\n } else {\n // No consent given, let's create an empty model\n var newTcf = createTcfModel({\n tcf: tcf,\n tcfMeta: tcfMeta,\n tcfString: \"\"\n });\n gvl = newTcf.gvl;\n model = newTcf.model;\n }\n\n applyTcfModelMetadata(model, tcfMeta, manager);\n applyRestrictivePurposes(model, tcf.vendorConfigurations);\n\n if (!restored) {\n prepareTcfString(model, \"initial\");\n }\n\n return {\n gvl: gvl,\n model: model,\n original: tcf,\n metadata: tcfMeta\n };\n } else {\n return undefined;\n }\n }, [active, tcf, tcfMeta]);\n}\n\nexport { useTcf };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { useCallback } from \"react\";\nimport { useBannerAnimation } from \"../..\";\n/**\n * Provides a callback which can be used to update the state of the banner context and manipulate\n * the `visible` and `animationVisible` property correctly.\n */\n\nfunction useBannerToggleOverlay(overlay) {\n var useBannerAnimationCallback = useBannerAnimation();\n var toggleOverlay = useCallback(function (_ref, show) {\n var layout = _ref.layout;\n var animationInDuration = layout.animationInDuration,\n animationOutDuration = layout.animationOutDuration;\n\n var _useBannerAnimationCa = useBannerAnimationCallback(layout),\n useAnimationIn = _useBannerAnimationCa.useAnimationIn,\n useAnimationOut = _useBannerAnimationCa.useAnimationOut;\n\n var defaultIfNoAnimation = 0; // Avoid \"hard\" overlay\n\n var useDuration = show ? useAnimationIn === \"none\" ? defaultIfNoAnimation : animationInDuration : useAnimationOut === \"none\" ? defaultIfNoAnimation : animationOutDuration; // Toggle SSR-rendered overlay\n\n useDuration > 0 && (overlay.style.transition = \"background \".concat(useDuration, \"ms\"));\n overlay.style.background = \"transparent\";\n\n if (show) {\n // We need a small delay to avoid flickering of animation out effect in customizer\n setTimeout(function () {\n overlay.style.display = \"block\";\n }, 0);\n setTimeout(function () {\n var bg = overlay.getAttribute(\"data-bg\");\n overlay.style.background = bg ? bg.split(\":\")[1].trim().replace(\";\", \"\") : \"transparent\";\n }, 100);\n } else {\n setTimeout(function () {\n overlay.style.display = \"none\";\n }, useDuration);\n }\n\n var animationVisible = {\n animationVisible: show\n };\n return show ? _objectSpread({\n visible: true\n }, animationVisible) : animationVisible;\n }, [useBannerAnimationCallback]);\n return {\n overlay: overlay,\n toggleOverlay: toggleOverlay\n };\n}\n\nexport { useBannerToggleOverlay };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { useEffect } from \"react\";\nimport { getOptionsFromWindow, isCustomize } from \"../utils\";\nimport { getCookieConsentManager } from \"../others\";\nimport { preDecisionGateway } from \"@devowl-wp/cookie-consent-web-client\";\nimport { preDecisionGatewayDynamicRequest, preDecisionGatewayHasPageClass, preDecisionGatewayIsCrawler, preDecisionGatewayIsPreventPreDecision, preDecisionGatewaySupportsCookies, preDecisionGatewayUserConsent, preDecisionGatewayIsDoNotTrack } from \"@devowl-wp/cookie-consent-web-client\";\nimport { commonRequest } from \"@devowl-wp/utils\";\nimport { locationRestConsentDynamicPredecisionGet } from \"../wp-api\";\nimport { isHiddenDueLegal } from \"@devowl-wp/react-cookie-banner\";\n/**\n * Do some decision gateways like DNT, Bot / Crawler and Decision and depending\n * on that, show the Banner initially.\n */\n\nfunction useBannerPreDecisionGateway(banner, setContextValue, toggleOverlay) {\n useEffect(function () {\n // Only run this predecision mechanism once and when not in customize\n if (isCustomize()) {\n return;\n }\n\n var _getOptionsFromWindow = getOptionsFromWindow(),\n restNamespace = _getOptionsFromWindow.restNamespace,\n restRoot = _getOptionsFromWindow.restRoot,\n restQuery = _getOptionsFromWindow.restQuery,\n restNonce = _getOptionsFromWindow.restNonce,\n _getOptionsFromWindow2 = _getOptionsFromWindow.others,\n isAcceptAllForBots = _getOptionsFromWindow2.isAcceptAllForBots,\n isPreventPreDecision = _getOptionsFromWindow2.isPreventPreDecision,\n hasDynamicPreDecisions = _getOptionsFromWindow2.hasDynamicPreDecisions,\n isRespectDoNotTrack = _getOptionsFromWindow2.isRespectDoNotTrack;\n\n var onSave = banner.onSave;\n preDecisionGateway(getCookieConsentManager(), {\n gateways: [preDecisionGatewaySupportsCookies, preDecisionGatewayHasPageClass([\"login-action-\"]), preDecisionGatewayDynamicRequest(function () {\n var _document$documentEle = document.documentElement,\n clientWidth = _document$documentEle.clientWidth,\n clientHeight = _document$documentEle.clientHeight;\n return commonRequest({\n location: locationRestConsentDynamicPredecisionGet,\n options: {\n restNamespace: restNamespace,\n restRoot: restRoot,\n restQuery: restQuery,\n restNonce: restNonce\n },\n sendRestNonce: false,\n request: {\n viewPortWidth: clientWidth,\n viewPortHeight: clientHeight\n },\n params: {\n _wp_http_referer: window.location.href\n }\n });\n }, 10000, hasDynamicPreDecisions), /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_, banner) {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", isHiddenDueLegal(banner) ? \"consent\" : false);\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x, _x2) {\n return _ref.apply(this, arguments);\n };\n }(), preDecisionGatewayIsPreventPreDecision(isPreventPreDecision), preDecisionGatewayIsCrawler(isAcceptAllForBots ? \"all\" : false), preDecisionGatewayIsDoNotTrack(isRespectDoNotTrack), preDecisionGatewayUserConsent],\n args: [banner],\n onIsDoNotTrack: function onIsDoNotTrack() {\n onSave(true, \"none\");\n },\n onShowCookieBanner: function onShowCookieBanner() {\n return setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n // Always revert back to \"Essentials\" only consent when cookie needs to be consented\n consent: {\n groups: getCookieConsentManager().getDefaultDecision()\n }\n }, toggleOverlay(state, true));\n });\n }\n });\n }, []);\n}\n\nexport { useBannerPreDecisionGateway };","import { getOtherOptionsFromWindow } from \"./getOtherOptionsFromWindow\";\n/**\n * Checks if the current page is customize page.\n */\n\nfunction isCustomize() {\n return !!getOtherOptionsFromWindow().customizeIdsBanner;\n}\n\nexport { isCustomize };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \"../decision\";\nimport { isCrawler } from \"../utils\";\n/**\n * Is the current request from a spider / crawler?\n */\n\nvar preDecisionGatewayIsCrawler = function preDecisionGatewayIsCrawler(resultIfBot) {\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var decisionCookieName;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n decisionCookieName = _ref.decisionCookieName;\n\n if (!(getUserDecision(decisionCookieName) !== false || !resultIfBot)) {\n _context.next = 3;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 3:\n return _context.abrupt(\"return\", isCrawler() ? resultIfBot : false);\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\nexport { preDecisionGatewayIsCrawler };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \"../decision\";\nimport { isCrawler } from \"../utils\";\n/**\n * Prevent any predecision and user decision and force to reuse existing consent or all for crawlers.\n * This could be e.g. be configured by a dynamic hook or on server-side via a localized variable.\n */\n\nvar preDecisionGatewayIsPreventPreDecision = function preDecisionGatewayIsPreventPreDecision(preventPreDecision) {\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var decisionCookieName, userDecision;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n decisionCookieName = _ref.decisionCookieName;\n userDecision = getUserDecision(decisionCookieName);\n return _context.abrupt(\"return\", preventPreDecision && userDecision === false ? isCrawler() ? // For crawlers we need to explicitly allow cookies on all pages\n \"all\" : \"consent\" : false);\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\nexport { preDecisionGatewayIsPreventPreDecision };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\n\n/**\n * Do not show cookie banner for a certain page, e.g. the login page.\n */\nvar preDecisionGatewayHasPageClass = function preDecisionGatewayHasPageClass(classNames) {\n return /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var className;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n className = document.body.className;\n return _context.abrupt(\"return\", classNames.filter(function (c) {\n return className.indexOf(c) > -1;\n }).length > 0 ? \"consent\" : false);\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n};\n\nexport { preDecisionGatewayHasPageClass };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { getUserDecision, OPT_IN_ALL_EVENT } from \"@devowl-wp/cookie-consent-web-client\";\nimport { useEffect } from \"react\";\n\nfunction useBannerConsentListener(setContextValue, userConsentCookieName) {\n useEffect(function () {\n var listener = function listener() {\n var consent = getUserDecision(userConsentCookieName);\n consent && setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n consent: {\n groups: consent.consent\n }\n });\n });\n };\n\n document.addEventListener(OPT_IN_ALL_EVENT, listener);\n return function () {\n document.removeEventListener(OPT_IN_ALL_EVENT, listener);\n };\n }, []);\n}\n\nexport { useBannerConsentListener };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\n\n/**\n * Wait for a given object which is calculated through a callback.\n */\nfunction waitObject(_x) {\n return _waitObject.apply(this, arguments);\n}\n\nfunction _waitObject() {\n _waitObject = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(getObject) {\n var delayNextCheck,\n maxTries,\n i,\n _args = arguments;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n delayNextCheck = _args.length > 1 && _args[1] !== undefined ? _args[1] : 500;\n maxTries = _args.length > 2 && _args[2] !== undefined ? _args[2] : 0;\n i = 0;\n\n case 3:\n if (getObject()) {\n _context.next = 11;\n break;\n }\n\n if (!(maxTries > 0 && i >= maxTries)) {\n _context.next = 6;\n break;\n }\n\n return _context.abrupt(\"return\", undefined);\n\n case 6:\n _context.next = 8;\n return new Promise(function (r) {\n return setTimeout(r, delayNextCheck);\n });\n\n case 8:\n i++;\n _context.next = 3;\n break;\n\n case 11:\n return _context.abrupt(\"return\", getObject());\n\n case 12:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _waitObject.apply(this, arguments);\n}\n\nexport { waitObject };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { putHtmlCodeToDom, OPT_IN_CONTENT_BLOCKER } from \"@devowl-wp/headless-content-unblocker\";\nimport { OPT_IN_EVENT, waitObject } from \"@devowl-wp/cookie-consent-web-client\";\nvar amazonWidgetsSlotNum = 0;\n/**\n * Some presets have custom opt-in coding, e. g. Amazon Widgets.\n */\n\nfunction listenPresetOptIn() {\n document.addEventListener(OPT_IN_EVENT, /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(_ref) {\n var _ref$detail$cookie, presetId, codeOptIn, codeDynamics, _ref3, amznAssoWidgetHtmlId, element, slotNum, adContainer;\n\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _ref$detail$cookie = _ref.detail.cookie, presetId = _ref$detail$cookie.presetId, codeOptIn = _ref$detail$cookie.codeOptIn, codeDynamics = _ref$detail$cookie.codeDynamics;\n _context2.t0 = presetId;\n _context2.next = _context2.t0 === \"amazon-associates-widget\" ? 4 : _context2.t0 === \"google-maps\" ? 16 : 18;\n break;\n\n case 4:\n _ref3 = codeDynamics || {}, amznAssoWidgetHtmlId = _ref3.amznAssoWidgetHtmlId;\n\n if (!amznAssoWidgetHtmlId) {\n _context2.next = 15;\n break;\n }\n\n element = document.getElementById(amznAssoWidgetHtmlId);\n\n if (!element) {\n _context2.next = 15;\n break;\n }\n\n slotNum = amazonWidgetsSlotNum;\n amazonWidgetsSlotNum++;\n putHtmlCodeToDom(codeOptIn, codeDynamics, element); // Amazon Widgets is using `document.write`, we need to manually move the ad container...\n\n _context2.next = 13;\n return waitObject(function () {\n return document.querySelector(\"[id^=\\\"amzn_assoc_ad_div_\\\"][id$=\\\"\".concat(slotNum, \"\\\"]\"));\n }, 500, 50);\n\n case 13:\n adContainer = _context2.sent;\n\n if (adContainer) {\n element.appendChild(adContainer);\n }\n\n case 15:\n return _context2.abrupt(\"break\", 19);\n\n case 16:\n document.addEventListener(OPT_IN_CONTENT_BLOCKER, /*#__PURE__*/function () {\n var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref4) {\n var element, _ref6, et_pb_map_init, jQuery;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n element = _ref4.detail.element;\n _ref6 = window, et_pb_map_init = _ref6.et_pb_map_init, jQuery = _ref6.jQuery;\n\n if (!(jQuery && element.matches(\".et_pb_map\") && et_pb_map_init)) {\n _context.next = 6;\n break;\n }\n\n _context.next = 5;\n return waitObject(function () {\n return window.google;\n });\n\n case 5:\n et_pb_map_init(jQuery(element).parent());\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x2) {\n return _ref5.apply(this, arguments);\n };\n }());\n return _context2.abrupt(\"break\", 19);\n\n case 18:\n return _context2.abrupt(\"break\", 19);\n\n case 19:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }());\n}\n\nexport { listenPresetOptIn };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport var locationRestConsentClearDelete = {\n path: \"/consent/clear\",\n method: RouteHttpVerb.DELETE\n};","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport { getOtherOptionsFromWindow } from \"../utils\";\nimport { getUserDecision, regExpPatternFromWildcardName } from \"@devowl-wp/cookie-consent-web-client\";\n/**\n * Synchronously check if a consent is given. See `window.consentApi.consent` for more documentation.\n */\n\nfunction consentSync(typeOrId, name,\n/**\n * This can also be `*` to allow all hosts.\n */\nhost) {\n // Find matching cookie\n var found = [];\n\n var _getOtherOptionsFromW = getOtherOptionsFromWindow(),\n groups = _getOtherOptionsFromW.groups,\n revisionHash = _getOtherOptionsFromW.revisionHash;\n\n var allCookies = groups.map(function (_ref) {\n var items = _ref.items;\n return items;\n }).flat();\n\n var _iterator = _createForOfIteratorHelper(allCookies),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var row = _step.value;\n\n if (typeof typeOrId === \"number\") {\n if (row.id === typeOrId) {\n found.push({\n cookie: row,\n relevance: 10\n });\n }\n } else {\n var technicalDefinitions = row.technicalDefinitions;\n\n if (technicalDefinitions !== null && technicalDefinitions !== void 0 && technicalDefinitions.length) {\n // Check if technical information matches\n var _iterator2 = _createForOfIteratorHelper(technicalDefinitions),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var td = _step2.value;\n var regexp = regExpPatternFromWildcardName(td.name);\n\n if (td.type === typeOrId && (td.name === name || name.match(regexp)) && (td.host === host || host === \"*\")) {\n found.push({\n cookie: row,\n // Create a priority by \"relevance\" inside the technical definitions\n // This is the case if e.g. another Cookie consumes the same technical cookie\n // Example: Vimeo uses Facebook Pixel, too\n relevance: technicalDefinitions.length + technicalDefinitions.indexOf(td) + 1\n });\n break;\n }\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n }\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n var already = getUserDecision(getOtherOptionsFromWindow().userConsentCookieName);\n\n if (found.length) {\n var relevantCookie = found.sort(function (_ref2, _ref3) {\n var a = _ref2.relevance;\n var b = _ref3.relevance;\n return a - b;\n })[0].cookie; // Check if consent is already given\n\n if (already && revisionHash === already.revision) {\n var consentCookieIds = Object.values(already.consent).flat();\n\n if (consentCookieIds.indexOf(relevantCookie.id) > -1) {\n return {\n cookie: relevantCookie,\n consentGiven: true,\n cookieOptIn: true\n };\n } else {\n return {\n cookie: relevantCookie,\n consentGiven: true,\n cookieOptIn: false\n };\n }\n } else {\n return {\n cookie: relevantCookie,\n consentGiven: false,\n cookieOptIn: false\n };\n }\n } else {\n return {\n cookie: null,\n consentGiven: !!already,\n cookieOptIn: true\n };\n }\n}\n\nexport { consentSync };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { OPT_IN_EVENT, OPT_OUT_EVENT } from \"@devowl-wp/cookie-consent-web-client\";\nimport { consentSync } from \".\";\n/**\n * `window.consentApi.consent`: Check if a given technical information (e.g. HTTP Cookie, LocalStorage, ...) has a consent:\n *\n * - When a technical information exists in defined cookies, the Promise is only resolved after given consent\n * - When no technical information exists, the Promise is immediate resolved\n *\n * Example (ES5):\n * ```js\n * (window.consentApi && window.consentApi.consent(\"http\", \"_twitter_sess\", \".twitter.com\") || Promise.resolve()).then(function() {\n * console.log(\"Consent for Twitter embed given, do something...!\");\n * });\n * ```\n *\n * Example (ES6, Babel, TS):\n * ```js\n * (window.consentApi?.consent(\"http\", \"_twitter_sess\", \".twitter.com\") || Promise.resolve()).then(() => {\n * console.log(\"Consent for Twitter embed given, do something...!\");\n * });\n * ```\n *\n * **Since 2.3.0**: You can also check for consent by cookie ID (ID in `wp_posts`, post id):\n *\n * ```js\n * window.consentApi.consent(15)\n * ```\n */\n\nfunction consent() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return new Promise(function (resolve, reject) {\n var _consentSync = consentSync.apply(void 0, args),\n foundCookie = _consentSync.cookie,\n consentGiven = _consentSync.consentGiven,\n cookieOptIn = _consentSync.cookieOptIn;\n\n if (foundCookie) {\n if (consentGiven) {\n if (cookieOptIn) {\n resolve();\n } else {\n reject();\n }\n } else {\n // Wait for consent\n document.addEventListener(OPT_IN_EVENT, /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var cookie;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n cookie = _ref.detail.cookie;\n\n if (cookie === foundCookie) {\n resolve();\n }\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }()); // Wait for opt out\n\n document.addEventListener(OPT_OUT_EVENT, /*#__PURE__*/function () {\n var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(_ref3) {\n var cookie;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n cookie = _ref3.detail.cookie;\n\n if (cookie === foundCookie) {\n reject();\n }\n\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n return function (_x2) {\n return _ref4.apply(this, arguments);\n };\n }());\n }\n } else {\n resolve();\n }\n });\n}\n\nexport { consent };","import _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport { consent } from \".\";\n/**\n * `window.consentApi.consentAll`: Check if a set of given technical information (e.g. HTTP Cookie, LocalStorage, ...)\n * have a consent. This is similar to `window.consentApi.consent` but for multiple cookies.\n */\n\nfunction consentAll(technicalDefinitions) {\n return Promise.all(technicalDefinitions.map(function (args) {\n return consent.apply(void 0, _toConsumableArray(args));\n }));\n}\n\nexport { consentAll };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\n\n/* istanbul ignore file: we do not need to care about the entry point file as errors are detected through integration tests (E2E) */\n\n/**\n * Entrypoint for plain website. This file is only loaded if the visitor needs to accept cookies.\n */\nimport { render } from \"react-dom\";\nimport { WebsiteBanner } from \"./components\";\nimport { getOtherOptionsFromWindow, ensureBodyElement } from \"./utils\";\nimport { listenPresetOptIn, deleteCookiesServer, getCookieConsentManager } from \"./others\";\nimport { tcfCmpApi } from \"./tcf\";\nimport * as API from \"./api\";\nimport { getWebpackPublicPath } from \"@devowl-wp/utils\";\nimport { printConsentUuidsToHTMLElement } from \"@devowl-wp/cookie-consent-web-client\";\nimport { OPT_OUT_EVENT, ready } from \"@devowl-wp/cookie-consent-web-client\";\nimport { getSsrPoweredByLink } from \"@devowl-wp/react-cookie-banner\";\n__webpack_public_path__ = getWebpackPublicPath(process.env);\nlistenPresetOptIn();\ntcfCmpApi();\nready(function () {\n var _getOtherOptionsFromW = getOtherOptionsFromWindow(),\n pageRequestUuid4 = _getOtherOptionsFromW.pageRequestUuid4;\n\n var poweredLink = getSsrPoweredByLink(pageRequestUuid4);\n var element = ensureBodyElement(document.getElementById(pageRequestUuid4));\n printConsentUuidsToHTMLElement(\".rcb-consent-history-uuids\", getCookieConsentManager());\n document.addEventListener(OPT_OUT_EVENT, /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var deleteHttpCookies;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n deleteHttpCookies = _ref.detail.deleteHttpCookies;\n // Handle cookie deletion which needs to be done server-side (e. g. HTTP cookies)\n deleteHttpCookies.length && setTimeout(function () {\n return deleteCookiesServer(deleteHttpCookies);\n }, 0);\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }());\n\n if (element) {\n render(h(WebsiteBanner, {\n poweredLink: poweredLink\n }), element);\n }\n}, \"interactive\"); // Expose public API\n\nif (window) {\n window.consentApi = API;\n}\n\nexport * from \"./api\";","import { tcfCmpApiDispatcher } from \"@devowl-wp/cookie-consent-web-client\";\nimport { CmpApi } from \"@iabtcf/cmpapi\";\nimport { getCookieConsentManager } from \"../others\";\nimport { getCmpVersion, getOtherOptionsFromWindow } from \"../utils\";\nvar cmpApiInstance;\n/**\n * Initialize a CMP API once for this page request. If TCF is not available, it will\n * return `undefined`.\n *\n * @see https://www.npmjs.com/package/@iabtcf/cmpapi\n */\n\nfunction tcfCmpApi() {\n var other = getOtherOptionsFromWindow();\n var isTcf = other.isTcf;\n\n if (process.env.IS_TCF === \"1\" && isTcf) {\n var tcf = other.tcf,\n tcfMetadata = other.tcfMetadata;\n var scope = tcfMetadata.scope; // Create instance only once\n\n if (!cmpApiInstance) {\n cmpApiInstance = new CmpApi(+process.env.TCF_CMP_ID, // Currently, only two bits (https://git.io/JmuD0) can be saved to the cmpVersion, so we can only save the major version\n getCmpVersion(\"major\"), scope === \"service-specific\"); // Dispatch events to vendors can listen to it\n\n setTimeout(function () {\n return tcfCmpApiDispatcher(tcf, tcfMetadata, cmpApiInstance, getCookieConsentManager().getOption(\"tcfCookieName\"));\n }, 0);\n }\n\n return cmpApiInstance;\n } else {\n return undefined;\n }\n}\n\nexport { tcfCmpApi };","import _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport { CookieConsentManager } from \"../apply\";\nimport { BANNER_PRE_DECISION_SHOW_EVENT, OPT_IN_ALL_EVENT } from \"../events\";\nimport { getUserDecision } from \".\";\n/**\n * Listen to opt-in so we can safely print the UUID of the current consent to HTML elements.\n */\n\nfunction printConsentUuidsToHTMLElement(selector, decisionCookieName) {\n var elements = Array.prototype.slice.call(document.querySelectorAll(selector));\n document.addEventListener(BANNER_PRE_DECISION_SHOW_EVENT, function () {\n elements.forEach(function (element) {\n return element.innerHTML = element.getAttribute(\"data-fallback\");\n });\n });\n document.addEventListener(OPT_IN_ALL_EVENT, function () {\n var consent = getUserDecision(decisionCookieName instanceof CookieConsentManager ? decisionCookieName.getOption(\"decisionCookieName\") : decisionCookieName);\n var allUuids = consent ? [consent.uuid].concat(_toConsumableArray(consent.previousUuids)) : [];\n elements.forEach(function (element) {\n return element.innerHTML = allUuids.length > 0 ? allUuids.join(\", \") : element.getAttribute(\"data-fallback\");\n });\n });\n}\n\nexport { printConsentUuidsToHTMLElement };","/**\n * Ensure the given HTML is a child of `body`. If not, it automatically gets moved.\n */\nfunction ensureBodyElement(element) {\n var _document = document,\n body = _document.body;\n var parentElement = element.parentElement;\n\n if (parentElement !== body) {\n body.appendChild(element);\n }\n\n return element;\n}\n\nexport { ensureBodyElement };","import { commonRequest } from \"@devowl-wp/utils\";\nimport { getOptionsFromWindow } from \"../utils\";\nimport { locationRestConsentClearDelete } from \"../wp-api\";\n/**\n * Delete cookies on server side (currently only `http`).\n */\n\nfunction deleteCookiesServer(cookies) {\n var _getOptionsFromWindow = getOptionsFromWindow(),\n restNamespace = _getOptionsFromWindow.restNamespace,\n restRoot = _getOptionsFromWindow.restRoot,\n restQuery = _getOptionsFromWindow.restQuery,\n restNonce = _getOptionsFromWindow.restNonce;\n\n return commonRequest({\n location: locationRestConsentClearDelete,\n options: {\n restNamespace: restNamespace,\n restRoot: restRoot,\n restQuery: restQuery,\n restNonce: restNonce\n },\n sendRestNonce: false,\n params: {\n cookies: cookies.join(\",\")\n }\n });\n}\n\nexport { deleteCookiesServer };","import { getOtherOptionsFromWindow } from \"../utils\";\n\nvar BannerProductionNotice = function BannerProductionNotice() {\n var _getOtherOptionsFromW = getOtherOptionsFromWindow(),\n isPro = _getOtherOptionsFromW.isPro,\n isLicensed = _getOtherOptionsFromW.isLicensed,\n isDevLicense = _getOtherOptionsFromW.isDevLicense,\n _getOtherOptionsFromW2 = _getOtherOptionsFromW.bannerI18n,\n noLicense = _getOtherOptionsFromW2.noLicense,\n devLicense = _getOtherOptionsFromW2.devLicense;\n\n if (!isPro) {\n return null;\n }\n\n var useText = \"\";\n\n if (isDevLicense) {\n useText = devLicense;\n } else if (!isLicensed) {\n useText = noLicense;\n }\n\n return useText ? h(\"div\", {\n style: {\n fontSize: 13,\n color: \"#c95252\",\n fontWeight: \"bold\",\n order: 9\n }\n }, useText) : null;\n};\n\nexport { BannerProductionNotice };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport var locationRestConsentPost = {\n path: \"/consent\",\n method: RouteHttpVerb.POST\n};","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport { getOtherOptionsFromWindow } from \"../utils\";\n/**\n * Apply Consent Forwarding, it set's cross domain cookies via CORS requests.\n *\n * @see https://javascript.info/fetch-crossorigin\n */\n\nfunction applyConsentForwarding(_ref) {\n var endpoints = _ref.endpoints,\n data = _ref.data;\n\n var _getOtherOptionsFromW = getOtherOptionsFromWindow(),\n isPro = _getOtherOptionsFromW.isPro;\n\n if (isPro) {\n /* onlypro:start */\n var promises = [];\n\n var _iterator = _createForOfIteratorHelper(endpoints),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var endpoint = _step.value;\n promises.push(window.fetch(endpoint, {\n method: \"POST\",\n credentials: \"include\",\n headers: {\n \"Content-Type\": \"application/json;charset=utf-8\"\n },\n body: JSON.stringify(data)\n }));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return Promise.all(promises);\n /* onlypro:start */\n } else {\n return Promise.reject();\n }\n}\n\nexport { applyConsentForwarding };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { locationRestConsentPost } from \"../wp-api\";\nimport { getOptionsFromWindow } from \"../utils\";\nimport { applyConsentForwarding, getCookieConsentManager } from \".\";\nimport { commonRequest } from \"@devowl-wp/utils\";\n\n/**\n * Save consent to the backend and apply cookies on running session.\n */\nfunction applyConsent(_x) {\n return _applyConsent.apply(this, arguments);\n}\n\nfunction _applyConsent() {\n _applyConsent = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var consent, _ref$markAsDoNotTrack, markAsDoNotTrack, buttonClicked, _ref$blocker, blocker, blockerThumbnail, tcfString, _document$documentEle, clientWidth, clientHeight, _getOptionsFromWindow, restNamespace, restRoot, restQuery, restNonce, _yield$commonRequest, forward, uuid, cookie_revision, decision_in_cookie;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n consent = _ref.consent, _ref$markAsDoNotTrack = _ref.markAsDoNotTrack, markAsDoNotTrack = _ref$markAsDoNotTrack === void 0 ? false : _ref$markAsDoNotTrack, buttonClicked = _ref.buttonClicked, _ref$blocker = _ref.blocker, blocker = _ref$blocker === void 0 ? 0 : _ref$blocker, blockerThumbnail = _ref.blockerThumbnail, tcfString = _ref.tcfString;\n _document$documentEle = document.documentElement, clientWidth = _document$documentEle.clientWidth, clientHeight = _document$documentEle.clientHeight;\n _getOptionsFromWindow = getOptionsFromWindow(), restNamespace = _getOptionsFromWindow.restNamespace, restRoot = _getOptionsFromWindow.restRoot, restQuery = _getOptionsFromWindow.restQuery, restNonce = _getOptionsFromWindow.restNonce; // Use `commonRequest` cause on frontend we do not have `wp.i18n` available\n\n _context.next = 5;\n return commonRequest({\n location: locationRestConsentPost,\n options: {\n restNamespace: restNamespace,\n restRoot: restRoot,\n restQuery: restQuery,\n restNonce: restNonce\n },\n sendRestNonce: false,\n request: _objectSpread(_objectSpread({}, consent), {}, {\n markAsDoNotTrack: markAsDoNotTrack,\n buttonClicked: buttonClicked,\n viewPortWidth: clientWidth,\n viewPortHeight: clientHeight,\n blocker: blocker,\n blockerThumbnail: blockerThumbnail,\n tcfString: tcfString\n }),\n params: {\n _wp_http_referer: window.location.href\n }\n });\n\n case 5:\n _yield$commonRequest = _context.sent;\n forward = _yield$commonRequest.forward;\n uuid = _yield$commonRequest.uuid;\n cookie_revision = _yield$commonRequest.cookie_revision;\n decision_in_cookie = _yield$commonRequest.decision_in_cookie;\n // Does the browser support cookies? Save the decision locally in `window` so `getUserDecision` can fallback\n window.rcbDisabledCookieComp = {\n uuid: uuid,\n previousUuids: [],\n revision: cookie_revision,\n consent: decision_in_cookie\n };\n _context.next = 13;\n return Promise.all([// Apply consent forwarding and wait for all requests\n forward && applyConsentForwarding(forward), getCookieConsentManager().applyCookies({\n type: \"consent\"\n })].filter(Boolean));\n\n case 13:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _applyConsent.apply(this, arguments);\n}\n\nexport { applyConsent };","import { CookieConsentManager } from \"@devowl-wp/cookie-consent-web-client\";\nimport { getCmpVersion, getOtherOptionsFromWindow } from \"../utils\";\n\nfunction getCookieConsentManager() {\n var _getOtherOptionsFromW = getOtherOptionsFromWindow(),\n userConsentCookieName = _getOtherOptionsFromW.userConsentCookieName,\n revisionHash = _getOtherOptionsFromW.revisionHash,\n setCookiesViaManager = _getOtherOptionsFromW.setCookiesViaManager,\n groups = _getOtherOptionsFromW.groups,\n essentialGroup = _getOtherOptionsFromW.essentialGroup;\n\n if (!window.rcbConsentManager) {\n window.rcbConsentManager = new CookieConsentManager({\n decisionCookieName: userConsentCookieName,\n essentialGroupSlug: essentialGroup,\n groups: groups,\n revisionHash: revisionHash,\n supportsCookiesName: \"real_cookie_banner-test\",\n tagManager: setCookiesViaManager,\n skipOptIn: function skipOptIn(cookie) {\n var _ref = cookie,\n presetId = _ref.presetId;\n return [\"amazon-associates-widget\"].indexOf(presetId) > -1;\n },\n cmpId: process.env.TCF_CMP_ID,\n cmpVersion: getCmpVersion(\"major\"),\n tcfCookieName: \"\".concat(userConsentCookieName, \"-tcf\")\n });\n }\n\n return window.rcbConsentManager;\n}\n\nexport { getCookieConsentManager };","import { getOptionsFromWindow } from \"./getOptionsFromWindow\";\n/**\n * Get the version of Real Cookie Banner as integer.\n */\n\nfunction getCmpVersion(type) {\n var split = getOptionsFromWindow().version.split(\".\");\n return +(type === \"major\" ? split[0] : split.map(function (i) {\n return +i < 10 ? \"0\".concat(i) : i;\n }).join(\"\")); // 1.11.1 => 1011000; 2.5.0 => 2005001;\n}\n\nexport { getCmpVersion };","/**\n * Use this if you do not have the Mobx store available in your JavaScript asset.\n * E. g. the `banner.js` does not rely on the mobx store and should access the\n * localized options via `window.realCookieBanner` directly.\n */\nfunction getOptionsFromWindow() {\n return window[process.env.slug.replace(/-([a-z])/g, function (g) {\n return g[1].toUpperCase();\n })];\n}\n\nexport { getOptionsFromWindow };","import { getOptionsFromWindow } from \"./getOptionsFromWindow\";\n/**\n * Use this if you do not have the Mobx store available in your JavaScript asset.\n * E. g. the `banner.js` does not rely on the mobx store and should access the\n * localized options via `window.realCookieBanner.others` directly.\n */\n\nfunction getOtherOptionsFromWindow() {\n return getOptionsFromWindow().others;\n}\n\nexport { getOtherOptionsFromWindow };","// Currently we can not rely on core-js for frontend banner because\n// it increases the bundle size a lot. There is an open issue for this:\n// https://github.com/zloirock/core-js/issues/388\n// import \"core-js/stable/string/virtual/starts-with\";\n// import \"core-js/stable/string/virtual/ends-with\";\n// import \"core-js/features/object/assign\";\n// import \"core-js/features/object/values\";\n// import \"core-js/features/promise\";\n// https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/String/endsWIth\nif (!String.prototype.startsWith) {\n // @see\n String.prototype.startsWith = function (searchString, position) {\n position = position || 0;\n return this.indexOf(searchString, position) === position;\n };\n} // https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nif (!String.prototype.endsWith) {\n String.prototype.endsWith = function (searchString, position) {\n var subjectString = this.toString();\n\n if (typeof position !== \"number\" || !isFinite(position) || Math.floor(position) !== position || position > subjectString.length) {\n position = subjectString.length;\n }\n\n position -= searchString.length;\n var lastIndex = subjectString.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n };\n} // https://developer.mozilla.org/en-US/docs/Web/API/Element/getAttributeNames\n\n\nif (Element.prototype.getAttributeNames == undefined) {\n Element.prototype.getAttributeNames = function () {\n var attributes = this.attributes;\n var length = attributes.length;\n var result = new Array(length);\n\n for (var i = 0; i < length; i++) {\n result[i] = attributes[i].name;\n }\n\n return result;\n };\n} // https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/CustomEvent#Polyfill\n\n\n(function () {\n if (typeof window.CustomEvent === \"function\") return;\n\n function CustomEvent(event, params) {\n params = params || {\n bubbles: false,\n cancelable: false,\n detail: null\n };\n var evt = document.createEvent(\"CustomEvent\");\n evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\n return evt;\n }\n\n window.CustomEvent = CustomEvent;\n})(); // https://github.com/KhaledElAnsari/Object.values\n\n\nObject.values = Object.values ? Object.values : function (obj) {\n var allowedTypes = [\"[object String]\", \"[object Object]\", \"[object Array]\", \"[object Function]\"];\n var objType = Object.prototype.toString.call(obj);\n\n if (obj === null || typeof obj === \"undefined\") {\n throw new TypeError(\"Cannot convert undefined or null to object\");\n } else if (!~allowedTypes.indexOf(objType)) {\n return [];\n } else {\n // if ES6 is supported\n if (Object.keys) {\n return Object.keys(obj).map(function (key) {\n return obj[key];\n });\n }\n\n var result = [];\n\n for (var prop in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, prop)) {\n result.push(obj[prop]);\n }\n }\n\n return result;\n }\n}; // https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Object/assign\n\nif (typeof Object.assign != \"function\") {\n // Must be writable: true, enumerable: false, configurable: true\n Object.defineProperty(Object, \"assign\", {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n value: function assign() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var target = args[0]; // .length of function is 2\n\n \"use strict\";\n\n if (target == null) {\n // TypeError if undefined or null\n throw new TypeError(\"Cannot convert undefined or null to object\");\n }\n\n var to = Object(target);\n\n for (var index = 1; index < args.length; index++) {\n var nextSource = args[index];\n\n if (nextSource != null) {\n // Skip over if undefined or null\n for (var nextKey in nextSource) {\n // Avoid bugs when hasOwnProperty is shadowed\n if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n }\n\n return to;\n },\n writable: true,\n configurable: true\n });\n} // https://stackoverflow.com/a/20428914/5506547\n\n\n(function (arr) {\n arr.forEach(function (item) {\n // eslint-disable-next-line no-prototype-builtins\n if (item.hasOwnProperty(\"remove\")) {\n return;\n }\n\n Object.defineProperty(item, \"remove\", {\n configurable: true,\n enumerable: true,\n writable: true,\n value: function remove() {\n this.parentNode.removeChild(this);\n }\n });\n });\n})([Element.prototype, CharacterData.prototype, DocumentType.prototype]);","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) scriptUrl = scripts[scripts.length - 1].src\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t392: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkIds[i]] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkrealCookieBanner_name_\"] = self[\"webpackChunkrealCookieBanner_name_\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\n__webpack_require__.O(undefined, [568], function() { return __webpack_require__(6652); })\nvar __webpack_exports__ = __webpack_require__.O(undefined, [568], function() { return __webpack_require__(6946); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","getServiceSelection","_ref","selectedGroups","_iterateCookies","decisionCookieName","tagManager","groups","essentialGroupSlug","type","isManagerActive","_groups$filter","filter","_ref2","slug","essentialGroupObj","consentEssentials","id","items","map","_ref3","decision","getUserDecision","consent","console","warn","iterateCookies","_callee","callback","_iterator","_step","_group","_iterator2","_step2","_selectedGroups$_grou","_cookie","_isOptIn","_context","prev","next","s","n","done","value","indexOf","t0","e","f","finish","t1","stop","_x","apply","this","arguments","getManagerDependingVariables","setCookiesViaManager","useVariableNameCamel","useVariableNamePascal","useGlobalObjectName","charAt","toUpperCase","slice","applyOptIn","_applyOptIn","_callee2","options","allOptInCookies","_getServiceSelection","skipOptIn","_getManagerDependingV","isManagerOptOut","dataLayerPromise","waitPromises","_context2","Promise","resolve","undefined","group","cookie","isOptIn","codeDynamics","codeOptIn","rest","isOnlyWhenNoConsentToManager","isSkipOptIn","concat","push","putHtmlCodeToDom","document","dispatchEvent","CustomEvent","detail","_x2","_x3","_x4","abrupt","cookies","ready","all","applyOptInOutManager","_applyOptInOutManager","dataLayer","event","realCookieBannerOptInEvents","r","setTimeout","realCookieBannerOptOutEvents","_x5","_x6","deleteCookiesLocally","technicalDefinitions","dynamics","_step$value","name","pattern","RegExp","regExpPatternFromWildcardName","applyDynamicsToHtml","_i","_Object$keys","Object","keys","length","key","test","useStorage","window","localStorage","sessionStorage","_i2","_Object$keys2","itemName","setItem","tries","getItem","removeItem","err","applyOptOut","_applyOptOut","deleteHttpCookies","codeOptOut","codeOptOutDelete","noTechnicalDefinitions","some","_apply","_yield$applyOptIn","applyOptInReady","_yield$applyOptInOutM","applyOptInOutManagerReady","optInAllReady","sent","t2","t3","respectLegitimateInterests","_groups$filter2","result","ids","_ref4","legalBasis","_ref5","CookieConsentManager","getOption","cookieName","cookieValue","cname","decode","matches","matchAll","pop","decodeURIComponent","getCookie","supportsCookies","rcbDisabledCookieComp","split","string","separator","out","join","explode","_split","uuidString","revision","uuids","uuid","shift","previousUuids","JSON","parse","BANNER_PRE_DECISION_SHOW_EVENT","OPT_IN_EVENT","OPT_IN_ALL_EVENT","OPT_OUT_EVENT","fn","state","cb","readyState","addEventListener","str","tmp","replace","DYNAMICS_VARIABLE_REGEXP","src","fullMatch","variableName","prototype","hasOwnProperty","call","HTML_ATTRIBUTE_CAPTURE_PREFIX","HTML_ATTRIBUTE_CAPTURE_CLICK_PREFIX","HTML_ATTRIBUTE_CAPTURE_SUFFIX","HTML_ATTRIBUTE_BY","HTML_ATTRIBUTE_COOKIE_IDS","HTML_ATTRIBUTE_VISUAL_PARENT","HTML_ATTRIBUTE_VISUAL_PAINT_MODE","HTML_ATTRIBUTE_INLINE","HTML_ATTRIBUTE_INLINE_STYLE","HTML_ATTRIBUTE_BLOCKER_ID","HTML_TAG_CONSENT_SCRIPT","HTML_ATTRIBUTE_BLOCKER_CONNECTED","HTML_ATTRIBUTE_BLOCKER_CONNECTED_PRESERVED","HTML_ATTRIBUTE_UNBLOCKED_TRANSACTION_COMPLETE","HTML_ATTRIBUTE_TRANSFORM_WRAPPER","HTML_ATTRIBUTE_TRANSFORM_WRAPPER_VALUE","HTML_ATTRIBUTE_WAS_PREVIOUSLY_STRICT_HIDDEN","HTML_ATTRIBUTE_RESET_PARENT","HTML_ATTRIBUTE_RESET_PARENT_VALUE","HTML_ATTRIBUTE_RESET_PARENT_IS_RATIO_CONTAINER","HTML_ATTRIBUTE_GOT_CLICKED","HTML_ATTRIBUTE_GOT_CLICKED_VALUE","HTML_ATTRIBUTE_GOT_CLICKED_VALUE_DO_NOT_USE_IN_NESTED","HTML_ATTRIBUTE_THUMBNAIL","WINDOW_ONLOAD_UNBLOCK_REPLACEMENT","html","referenceNode","body","error","beforeWriteToken","token","attrs","booleanAttrs","href","content","attr","querySelector","OPT_IN_CONTENT_BLOCKER","dispatchResizeEvent","delay","Event","htmlDecode","input","_doc$querySelector","DOMParser","parseFromString","documentElement","textContent","isUrl","url","parents","element","selector","elements","elem","parentElement","nodeType","Node","ELEMENT_NODE","AsciiSpinner","_ref$ms","ms","_ref$chars","chars","_useState","_useState2","i","setI","interval","setInterval","clearInterval","h","dangerouslySetInnerHTML","__html","CookieProperty","label","children","printValueAs","banner","useBannerOrBlocker","_banner$i18n","i18n","yes","no","useValue","style","wordBreak","c","target","rel","_ref$group","groupBorderWidth","groupBorderColor","antiAdBlocker","customCss","mobile","pageRequestUuid4","className","borderLeft","scale","paddingLeft","commonInlineStyleGroupsCookieProperty","CookiePropertyList","_ref$cookie","purpose","provider","providerPrivacyPolicy","ePrivacyUSA","isEssentialGroup","_useBannerOrBlocker","ePrivacyUSAEnabled","types","http","abbr","backgroundColor","local","session","flash","indexedDb","legalRequirement","legitimateInterest","host","duration","durationUnit","sessionDuration","technicalCookieDefinition","fontFamily","noExpiration","Cookie","checked","disabled","onToggleCheck","_ref$propertyListProp","propertyListProps","isRendered","setIsRendered","bannerOrBlocker","descriptionFontSize","marginTop","commonInlineStyleGroupsCookie","marginBottom","icon","CheckOutlined","onClick","verticalAlign","PlainAntdIconAsSvg","svgString","extraSVGAttrs","fill","Tooltip","ref","title","_ref$position","position","color","_ref$size","size","always","rounded","noAnimate","bounce","display","BannerContextFactory","_Context","Context","toString","context","useBanner","BlockerContextFactory","useBlocker","FooterLink","anchorRest","isHover","setIsHover","onMouseEnter","onMouseLeave","_ref$footerDesign","footerDesign","fontSize","fontColor","hoverFontColor","fontInheritFamily","linkTextDecoration","design","textDecoration","padding","commonInlineStyleFooterLink","FooterPoweredByLink","poweredLink","affiliate","link","innerHTML","description","labelBehind","jsxJoin","components","filtered","Boolean","reduce","acc","curr","useCommonFooterLinks","onClose","putPoweredByLinkInRow","row1","close","_useBannerOrBlocker$f","poweredByLink","linkTarget","_useLegalLinks","useLegalLinks","linkPrivacyPolicy","linkImprint","targetAttributes","rows","render","row","joinWithAndSeparator","arr","andSeparator","splice","supWithLineHeightFix","useCommonTeachings","disableDataProcessingInUnsafeCountries","disableAgeNotice","disableListServicesNotice","blocker","isEPrivacyUSA","isAgeNotice","ageNotice","isListServicesNotice","listServicesNotice","_useBannerOrBlocker$t","texts","ageNoticeBanner","consentForwardingExternalHostsText","consentForwardingExternalHosts","tcf","individualPrivacyOpen","individualDescription","individualTexts","essentialGroup","_useBannerOrBlocker$i","tcfBannerI18n","keepVariablesInTexts","consentForwardingExternalHostsFinalText","useDescription","useDataProcessingInUnsafeCountries","useAgeNotice","useListServicesNotice","hasBothPlaceholders","nonEssentialGroups","flattenSeparator","listServicesNames","groupIdx","listServiceGroupsNames","listOfServicesAppendix","teachings","_useBannerOrBlocker$l","legal","privacyPolicy","privacyPolicyExternalUrl","privacyPolicyIsExternalUrl","privacyPolicyLabel","imprint","imprintExternalUrl","imprintIsExternalUrl","imprintLabel","pageByIdUrl","pageIdToPermalink","counter","usePlainCss","css","uniqueId","keep","getElementById","createElement","getElementsByTagName","appendChild","_element$parentNode","parentNode","removeChild","commonInlineStyleBodyTeaching","_ref$bodyDesign","bodyDesign","teachingsInheritTextAlign","teachingsTextAlign","teachingsInheritFontSize","teachingsFontSize","teachingsInheritFontColor","teachingsFontColor","textAlign","commonInlineStyleBodyTeachingsSeparator","borderRadius","layout","teachingsSeparatorActive","teachingsSeparatorWidth","teachingsSeparatorHeight","teachingsSeparatorColor","maxWidth","width","height","background","commonInlineStyleGroupsCheckbox","visible","headlineFontSize","checkboxBg","checkboxBorderWidth","checkboxBorderColor","checkboxActiveBg","checkboxActiveBorderColor","checkboxActiveColor","useFontSize","useCheckboxBorderWidth","cursor","opacity","border","marginRight","lineHeight","boxSizing","commonGroupsInlineStyleLinkMore","linkColor","linkHoverColor","commonInlineStyleHeaderHeadline","hasCloseIcon","_ref$headerDesign","headerDesign","fontWeight","paddingRight","scaleMobile","useWidthOfThisContainerId","original","replaceWith","enabled","scalePercent","scalePercentVertical","getSsrPoweredByLink","originalPoweredLink","nextElementSibling","rcbPoweredByCacheOuterHTML","toLowerCase","outerHTML","matchingSelector","proto","Element","nativeFunction","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","matchingElements","querySelectorAll","matchIdx","commonUrlBuilder","location","_ref$params","params","_ref$nonce","nonce","apiUrl","restRoot","query","permalinkPath","rest_route","pathname","foundParams","path","match","getParams","checkParam","usePath","namespace","restNamespace","useThisProtocol","protocol","set","restNonce","_wpnonce","currentApiUrlString","method","_method","restQuery","pool","recreateFetchPool","nonceDeprecationPool","_nonceDeprecationPool","restRecreateNonceEndpoint","resultPromise","returnNonce","reject","recreateFetch","newNonce","ok","text","values","parseResult","_parseResult","cloneForFallback","lastError","line","clone","json","startsWith","CONTENT_TYPE_JSON","commonRequest","_commonRequest","routeRequest","_ref$settings","settings","_ref$multipart","multipart","_ref$sendRestNonce","sendRestNonce","allowBody","hasRestNonce","init","apiUrlBuilt","responseJSON","replay","resultAny","request","stringify","headers","Accept","code","status","detectCorruptRestApiFailed","RouteHttpVerb","untrailingslashit","endsWith","trailingslashit","getWebpackPublicPath","env","g","publicUrl","chunkFolder","unblock","found","isPseudoRef","loop1","hosts","regexp","setAttribute","remove","_preDecisionGateway","handler","show","useOptions","gateways","args","onIsDoNotTrack","onShowCookieBanner","gateway","getOptions","applyCookiesWithOptions","preDecisionGatewaySupportsCookies","supportsCookiesName","isCrawler","userAgent","navigator","promiseTimeout","promise","then","Error","preDecisionGatewayDynamicRequest","timeout","active","revisionHash","_yield$promiseTimeout","predecision","isDoNotTrack","w","doNotTrack","msDoNotTrack","external","msTrackingProtectionEnabled","preDecisionGatewayIsDoNotTrack","preDecisionGatewayUserConsent","locationRestConsentDynamicPredecisionGet","isHiddenDueLegal","_banner$legal","imprintHide","privacyPolicyHide","pageId","useBannerAnimation","isMobile","innerWidth","isMobileFirefox","term","animationIn","animationInOnlyMobile","animationOut","animationOutOnlyMobile","useAnimationIn","useAnimationOut","cancelEvent","preventDefault","stopPropagation","HREF_MATCHER","useResettableAnimation","animation","_useState3","_useState4","j","setJ","_useState5","_useState6","stateAnimation","setStateAnimation","_useState7","_useState8","stateAnimationReset","setStateAnimationReset","_useState9","_useState10","stateDuration","setStateDuration","_useState11","_useState12","stateDurationReset","setStateDurationReset","hexToRgb","hex","exec","parseInt","b","calculateRgba","alpha","_hexToRgb","getAnimationRelatedState","isVisible","animationInDuration","animationOutDuration","animationInDelay","animationOutDelay","AnimatedCss","_ref2$animateOnMount","animateOnMount","_ref2$isVisible","_ref2$animationIn","_ref2$animationOut","_ref2$animationInDela","_ref2$animationOutDel","_ref2$animationInDura","_ref2$animationOutDur","_ref2$className","_ref2$style","_useState2$","setAnimationRelatedState","classes","backwardStyle","transition","animationDelay","animationDuration","pointerEvents","useRenderedHeightsAsCssVars","cssId","cssElement","previousHeight","recalculate","currentHeight","getBoundingClientRect","Math","floor","animateContainer","ResizeObserver","ro","observe","disconnect","removeEventListener","useBannerButtonCallbacks","_useBanner","onSave","updateGroupChecked","updateCookieChecked","updateIndividualPrivacyOpen","activeAction","buttonClickedAll","buttonClickedEssentials","buttonClickedCloseIcon","buttonClickedCustom","acceptAll","forEach","acceptEssentials","isCloseIcon","cookieId","acceptIndividual","openIndividualPrivacy","closeIcon","Portal","_ref$tag","tag","renderInContainer","el","classList","add","renderIn","CloseIcon","tooltipText","framed","tooltipAlways","_ref$thickness","thickness","idCloseIconNotPortaled","idCloseIconPortaled","idCloseIconPlaceholder","rect","y","x","BannerCloseIcon","_useBanner$headerDesi","_useBanner$i18n","closeWithoutSaving","_useBanner$buttonClic","buttonClicked","_useBannerButtonCallb","container","clientWidth","BannerHeader","_","_ref$layout","dialogBorderRadius","_ref$design","borderWidth","borderColor","restDesign","inheritBg","bg","useType","useBorderWidth","_banner$headerDesign","logo","logoRetina","showCloseIcon","headline","headerTitlePrivacyPolicyHistory","useRetina","devicePixelRatio","useLogo","useHeadline","p","zIndex","top","borderTop","borderRight","bannerMaxWidth","inheritTextAlign","logoPosition","restHeaderDesign","individualLayout","useTextAlign","inheritBannerMaxWidth","margin","justifyContent","alignItems","flexDirection","bannerHeaderInlineStyle","alt","isRetina","logoMaxHeight","logoMargin","logoFitDim","logoRetinaFitDim","useFitDim","dimStyle","m","bannerHeaderInlineStyleLogo","BannerGroupSectionTitle","headlineFontColor","headlineFontWeight","bannerGroupsInlineStyleTitle","descriptionFontColor","bannerGroupsInlineStyleDescription","BannerCookie","_consent$groups","isDisabled","isChecked","handleCheckbox","BannerGroup","_consent$groups$id","isOpen","setIsOpen","previewCheckboxActiveState","_banner$individualTex","showMore","hideMore","CheckboxIcon","sort","MinusOutlined","groupBg","groupBorderRadius","groupPadding","groupInheritBg","useGroupBorderWidth","bannerGroupsInlineStyleGroup","BannerGroupList","groupSpacing","useGroups","clear","index","BannerDottedGroup","groupsFirstView","dottedGroupsInheritFontSize","dottedGroupsFontSize","whiteSpace","bannerInlineStyleBodyDottedGroupItem","dottedGroupsBulletColor","bannerInlineStyleBodyDottedGroupBullet","BannerDottedGroupList","showGroups","lineBreak","BannerHistorySelect","selectedId","setSelectedId","history","selectHistoryEntry","historyLabel","historySelectNone","selectedHistoryItem","_history$filter","descriptionInheritFontSize","optionStyle","borderBottom","onChange","isUnblock","isForwarded","created","Date","toLocaleString","lang","bannerButtonsInlineStyleCommon","isTwoButtonRowLayout","order","hoverBg","hoverBorderColor","fullWidth","marginLeft","overflow","outline","flex","bannerButtonsInlineStyleAcceptEssentials","isTcf","acceptEssentialsFontSize","acceptEssentialsBg","acceptEssentialsTextAlign","acceptEssentialsBorderColor","acceptEssentialsPadding","acceptEssentialsBorderWidth","acceptEssentialsFontColor","acceptEssentialsFontWeight","acceptEssentialsHoverBg","acceptEssentialsHoverFontColor","acceptEssentialsHoverBorderColor","acceptAllFontWeight","acceptAllFontSize","acceptAllPadding","bannerButtonsInlineStyleAcceptIndividual","acceptIndividualFontSize","acceptIndividualBg","acceptIndividualTextAlign","acceptIndividualBorderColor","acceptIndividualPadding","acceptIndividualBorderWidth","acceptIndividualFontColor","acceptIndividualFontWeight","acceptIndividualHoverBg","acceptIndividualHoverFontColor","acceptIndividualHoverBorderColor","bannerButtonsInlineStyleSave","_ref$saveButton","saveButton","bannerButtonsInlineStyleAcceptAll","acceptAllBg","acceptAllTextAlign","acceptAllBorderColor","acceptAllBorderWidth","acceptAllFontColor","acceptAllHoverBg","acceptAllHoverFontColor","acceptAllHoverBorderColor","BannerButton","inlineStyle","busyOnClick","isBusy","setIsBusy","handleOnClick","_banner$decision","_banner$bodyDesign","acceptAllOneRowLayout","useAcceptEssentials","acceptEssentialsUseAcceptAll","interactionAttr","useStyleFn","textOverflow","BannerButtonList","buttonOrderString","buttonOrder","_banner$texts","acceptAllText","acceptEssentialsText","acceptIndividualText","_banner$saveButton","saveButtonType","saveButtonUseAcceptAll","useAcceptAll","save","productionNotice","didGroupFirstChange","_banner$buttonClicked","_useMemo","buttonToOrder","previous","orderToButton","buttonOrderAll","buttonOrderEssential","essential","buttonOrderIndividual","individual","buttonOrderSave","handleAll","handleEssentials","handleIndividual","BannerBody","_document$getElementB","leftSideContainerRef","rightSideContainerRef","_useCommonTeachings","leftSideId","rightSideId","contentId","stackOrGroups","leftSide","usePadding","float","paddingTop","paddingBottom","bannerInlineStylesLeftSide","descriptionTextAlign","bannerInlineStyleBodyDescription","teaching","rightSide","_style","dialogMaxWidth","inheritDialogMaxWidth","bannerInlineStylesRightSide","bannerInlineStyleBodyContainer","bannerInlineStyleBody","BannerFooter","isConsentRecord","handleClose","_useCommonFooterLinks","useCommonFooterLink","links","renderLinks","bottom","bannerFooterInlineStyleContainer","bannerFooterInlineStyle","BannerContent","_banner$layout","currentRef","current","showHeader","hideHeader","showScrollBoxShadow","setShowScrollBoxShadow","updateShowScrollBoxShadow","clientHeight","scrollHeight","scrollTop","offsetHeight","hasScrollbar","scrolledToBottom","ceil","platform","headerRef","footerRef","innerHeight","mobileMaxHeight","maxHeight","useMobileMaxHeight","closeIconDistance","bannerContentInlineStyle","useDesignBorderWidth","bannerHeaderInlineStyleSeparator","bannerFooterInlineStyleSeparator","BannerAnimatedContent","dialogPosition","dialogMargin","bannerPosition","boxShadowEnabled","boxShadowOffsetX","boxShadowOffsetY","boxShadowBlurRadius","boxShadowSpreadRadius","boxShadowColor","boxShadowColorAlpha","mobileAlignment","animationVisible","_useBannerAnimation","_useResettableAnimati","_useResettableAnimati2","stateAnimationIn","stateAnimationInDuration","_useResettableAnimati3","_useResettableAnimati4","stateAnimationOut","stateAnimationOutDuration","alignment","alignSelf","boxShadow","Banner","overlay","_banner$customCss","overlayBlur","skipOverlay","gotHiddenDueLegal","hiddenDueLegal","_document$body","dataset","rcbPreviousOverflow","useRestrictScrollWhenVisible","openBanner","openHistory","revokeConsent","setInvalidate","updateSize","fetchHistory","originalConsent","setOriginalConsent","_fetch","_result","_result$","_groups2","_tcf2","fetch","_groups","consentGroups","_tcf","useBannerHistory","handleType","successMessage","eventListenerDocumentClick","parent","getAttribute","eventListenerHashChange","hash","substring","bannerOverlayInlineStyleAlignment","overlayBg","overlayBgAlpha","left","right","bannerOverlayInlineStyle","locationRestConsentGet","WebsiteBanner","_fetchHistory","_getOtherOptionsFromW","getOtherOptionsFromWindow","_getOtherOptionsFromW2","customizeValuesBanner","tcfMetadata","userConsentCookieName","bannerI18n","isCurrentlyInTranslationEditorPreview","userDecision","tcfObject","tcfMeta","useTcf","_useBannerToggleOverl","useBannerAnimationCallback","toggleOverlay","_useBannerAnimationCa","useDuration","trim","useBannerToggleOverlay","_useBannerStateContex","_revokeConsent","toggleWithActiveAction","setContextValue","refreshSiteAfterSave","_len","Array","_key","alert","reload","updateTcfFilterBy","_len2","_key2","newFilter","tcfFilterBy","_len3","_key3","opened","_len4","_key4","newConsent","_len5","_key5","groupId","cookieIds","_len6","_key6","additionalChanges","useBannerStateContextCallbacks","applyConsent","getCookieConsentManager","getDefaultDecision","tcfString","_openHistory","_openBanner","_updateTcfFilterBy","_updateIndividualPrivacyOpen","_updateGroupChecked","_updateCookieChecked","_onClose","_selectHistoryEntry","markAsDoNotTrack","appliedConsent","_getOptionsFromWindow","getOptionsFromWindow","contextValue","customizeIdsBanner","resultIfBot","preventPreDecision","classNames","_getOptionsFromWindow2","others","isAcceptAllForBots","isPreventPreDecision","hasDynamicPreDecisions","isRespectDoNotTrack","preDecisionGateway","_document$documentEle","viewPortWidth","viewPortHeight","_wp_http_referer","useBannerPreDecisionGateway","listener","useBannerConsentListener","BannerContext","Provider","waitObject","_waitObject","getObject","delayNextCheck","maxTries","_args","amazonWidgetsSlotNum","locationRestConsentClearDelete","consentSync","typeOrId","allCookies","flat","relevance","td","already","relevantCookie","consentGiven","cookieOptIn","_consentSync","foundCookie","consentAll","_ref$detail$cookie","presetId","amznAssoWidgetHtmlId","slotNum","adContainer","_ref6","et_pb_map_init","jQuery","google","ensureBodyElement","allUuids","consentApi","BannerProductionNotice","isPro","isLicensed","isDevLicense","noLicense","devLicense","useText","locationRestConsentPost","applyConsentForwarding","endpoints","data","promises","endpoint","credentials","_applyConsent","_ref$markAsDoNotTrack","_ref$blocker","blockerThumbnail","_yield$commonRequest","forward","cookie_revision","decision_in_cookie","applyCookies","rcbConsentManager","cmpId","cmpVersion","version","tcfCookieName","String","searchString","subjectString","isFinite","lastIndex","getAttributeNames","attributes","bubbles","cancelable","evt","createEvent","initCustomEvent","obj","objType","TypeError","prop","assign","defineProperty","to","nextSource","nextKey","writable","configurable","CharacterData","DocumentType","item","enumerable","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","every","getter","__esModule","d","a","definition","o","get","globalThis","Function","Symbol","toStringTag","scriptUrl","importScripts","currentScript","scripts","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","bind","__webpack_exports__"],"sourceRoot":""}
|
1 |
+
{"version":3,"file":"banner.lite.js","mappings":"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","sources":["webpack:///webpack/runtime/chunk loaded","webpack:///../../frontend-packages/cookie-consent-web-client/src/decision/getServiceSelection.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/getManagerDependingVariables.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/optIn.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/optInOutManager.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/deleteCookiesLocally.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/optOut.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/apply.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/decision/getDefaultDecision.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/apply/manager.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/decision/getUserDecision.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/getCookie.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/explode.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/events/bannerPredecisionShow.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/events/optIn.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/events/optInAll.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/events/optOut.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/ready.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/regExpPatternFromWildcardName.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/pregQuote.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/supportsCookies.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/dom/applyDynamicsToHtml.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/dom/htmlAttributes.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/dom/putHtmlCodeToDom.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/events/optInContentBlocker.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/utils/dispatchResizeEvent.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/utils/htmlDecode.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/utils/isUrl.tsx","webpack:///../../frontend-packages/headless-content-unblocker/src/utils/parents.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/asciiSpinner.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/common/groups/cookieProperty.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/groups/cookieProperty.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/common/groups/cookiePropertyList.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/common/groups/cookie.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/groups/cookie.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/plainAntdIconAsSvg.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/tooltip.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/contexts/banner.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/contexts/blocker.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/common/footer/link.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/footer/link.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/common/footer/poweredByLink.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/utils/jsxJoin.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/common/useCommonFooterLink.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/common/useCommonTeachings.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/useBannerOrBlocker.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/useLegalLinks.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/usePlainCss.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/body/teaching.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/body/teachingSeparator.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/groups/checkbox.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/groups/linkMore.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/common/header/headline.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/scale.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/others/getSsrPoweredByLink.tsx","webpack:///../../frontend-packages/resolve-none-computed-style/src/matchingSelector.tsx","webpack:///../../wordpress-packages/utils/lib/factory/ajax/commonUrlBuilder.tsx","webpack:///../../wordpress-packages/utils/lib/factory/ajax/nonceDeprecationPool.tsx","webpack:///../../wordpress-packages/utils/lib/factory/ajax/parseResult.tsx","webpack:///../../wordpress-packages/utils/lib/factory/ajax/commonRequest.tsx","webpack:///../../wordpress-packages/utils/lib/factory/ajax/routeHttpVerbEnum.tsx","webpack:///../../wordpress-packages/utils/lib/helpers.tsx","webpack:///./src/public/ts/api/unblock.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/gateway.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/supportsCookies.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/isCrawler.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/promiseTimeout.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/dynamicRequest.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/isDoNotTrack.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/isDoNotTrack.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/userConsent.tsx","webpack:///./src/public/ts/wp-api/consentDynamicPredecision.get.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/others/isHiddenDueLegal.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerAnimation.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/index.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerStateContextCallbacks.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerActionLinks.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/useResettableAnimation.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/utils/hexToRgb.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/utils/calculateRgba.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/animateCss.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/useRenderedHeightsAsCssVars.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerButtonCallbacks.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/portal.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/closeIcon.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/header/closeIcon.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/header/header.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/header/container.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/header/header.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/header/logo.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/sectionTitle.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/groups/title.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/groups/description.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/cookie.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/group.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/groups/group.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/list.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/groups/groups.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/dottedGroup.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/dottedGroupItem.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/dottedGroupBullet.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/groups/dottedGroupList.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/dottedGroups.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/historySelect.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/historySelect.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/historySelectOption.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/common.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/acceptEssentials.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/acceptIndividual.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/save.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/buttons/acceptAll.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/button.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/utils/isIE.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/buttonList.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/body.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/leftSide.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/description.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/rightSide.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/container.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/body/body.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/footer/footer.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/footer/container.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/footer/footer.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/content.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/content/content.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/header/separator.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/footer/separator.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/body/animatedContent.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/content/inner.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/components/banner/banner.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/useRestrictScrollWhenVisible.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerHistory.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/overlay/alignment.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/inlineStyles/banner/overlay/overlay.tsx","webpack:///./src/public/ts/wp-api/consent.get.tsx","webpack:///./src/public/ts/components/websiteBanner.tsx","webpack:///./src/public/ts/hooks/useTcf.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerToggleOverlay.tsx","webpack:///./src/public/ts/hooks/useBannerPreDecisionGateway.tsx","webpack:///./src/public/ts/utils/isCustomize.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/isCrawler.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/isPreventPreDecision.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/predecision/hasPageClass.tsx","webpack:///../../frontend-packages/react-cookie-banner/src/hooks/banner/useBannerConsentListener.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/utils/waitObject.tsx","webpack:///./src/public/ts/others/comp/listenPresetOptIn.tsx","webpack:///./src/public/ts/wp-api/consentClear.delete.tsx","webpack:///./src/public/ts/api/consentSync.tsx","webpack:///./src/public/ts/api/consent.tsx","webpack:///./src/public/ts/api/consentAll.tsx","webpack:///./src/public/ts/banner.tsx","webpack:///./src/public/ts/tcf/cmpApi.tsx","webpack:///../../frontend-packages/cookie-consent-web-client/src/decision/printConsentUuidsToHTMLElement.tsx","webpack:///./src/public/ts/utils/ensureBodyElement.tsx","webpack:///./src/public/ts/others/deleteCookiesServer.tsx","webpack:///./src/public/ts/components/bannerProductionNotice.tsx","webpack:///./src/public/ts/wp-api/consent.post.tsx","webpack:///./src/public/ts/others/applyConsentForwarding.tsx","webpack:///./src/public/ts/others/applyConsent.tsx","webpack:///./src/public/ts/others/getCookieConsentManager.tsx","webpack:///./src/public/ts/utils/getCmpVersion.tsx","webpack:///./src/public/ts/utils/getOptionsFromWindow.tsx","webpack:///./src/public/ts/utils/getOtherOptionsFromWindow.tsx","webpack:///./src/public/ts/utils/polyfill.tsx","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///webpack/runtime/publicPath","webpack:///webpack/runtime/jsonp chunk loading","webpack:///webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \".\";\n\n/**\n * Read the selected groups + cookies depending on the passed type.\n */\nfunction getServiceSelection(_ref) {\n var decisionCookieName = _ref.decisionCookieName,\n tagManager = _ref.tagManager,\n groups = _ref.groups,\n essentialGroupSlug = _ref.essentialGroupSlug,\n type = _ref.type;\n var selectedGroups;\n var isManagerActive = tagManager !== \"none\";\n\n var _groups$filter = groups.filter(function (_ref2) {\n var slug = _ref2.slug;\n return slug === essentialGroupSlug;\n }),\n _groups$filter2 = _slicedToArray(_groups$filter, 1),\n essentialGroupObj = _groups$filter2[0];\n\n var consentEssentials = _defineProperty({}, essentialGroupObj.id, essentialGroupObj.items.map(function (_ref3) {\n var id = _ref3.id;\n return id;\n })); // Read current consent\n\n\n if (type === \"consent\") {\n var decision = getUserDecision(decisionCookieName);\n\n if (decision !== false) {\n selectedGroups = decision.consent;\n } else {\n console.warn(\"Something went wrong while reading the cookie, fallback to essentials only...\");\n selectedGroups = consentEssentials;\n }\n }\n\n if (type === \"essentials\") {\n selectedGroups = consentEssentials;\n }\n\n return {\n isManagerActive: isManagerActive,\n selectedGroups: selectedGroups,\n iterateCookies: function () {\n var _iterateCookies = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(callback) {\n var _iterator, _step, _group, _iterator2, _step2, _selectedGroups$_grou, _cookie, _isOptIn;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _iterator = _createForOfIteratorHelper(groups);\n _context.prev = 1;\n\n _iterator.s();\n\n case 3:\n if ((_step = _iterator.n()).done) {\n _context.next = 25;\n break;\n }\n\n _group = _step.value;\n _iterator2 = _createForOfIteratorHelper(_group.items);\n _context.prev = 6;\n\n _iterator2.s();\n\n case 8:\n if ((_step2 = _iterator2.n()).done) {\n _context.next = 15;\n break;\n }\n\n _cookie = _step2.value;\n _isOptIn = type === \"all\" || ((_selectedGroups$_grou = selectedGroups[_group.id]) === null || _selectedGroups$_grou === void 0 ? void 0 : _selectedGroups$_grou.indexOf(_cookie.id)) > -1;\n _context.next = 13;\n return callback(_group, _cookie, _isOptIn);\n\n case 13:\n _context.next = 8;\n break;\n\n case 15:\n _context.next = 20;\n break;\n\n case 17:\n _context.prev = 17;\n _context.t0 = _context[\"catch\"](6);\n\n _iterator2.e(_context.t0);\n\n case 20:\n _context.prev = 20;\n\n _iterator2.f();\n\n return _context.finish(20);\n\n case 23:\n _context.next = 3;\n break;\n\n case 25:\n _context.next = 30;\n break;\n\n case 27:\n _context.prev = 27;\n _context.t1 = _context[\"catch\"](1);\n\n _iterator.e(_context.t1);\n\n case 30:\n _context.prev = 30;\n\n _iterator.f();\n\n return _context.finish(30);\n\n case 33:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[1, 27, 30, 33], [6, 17, 20, 23]]);\n }));\n\n function iterateCookies(_x) {\n return _iterateCookies.apply(this, arguments);\n }\n\n return iterateCookies;\n }()\n };\n}\n\nexport { getServiceSelection };","function getManagerDependingVariables(isManagerActive, setCookiesViaManager) {\n var useVariableNameCamel;\n var useVariableNamePascal;\n var useGlobalObjectName;\n\n if (isManagerActive) {\n useVariableNameCamel = setCookiesViaManager;\n useVariableNamePascal = useVariableNameCamel.charAt(0).toUpperCase() + useVariableNameCamel.slice(1);\n var isGtm = setCookiesViaManager === \"googleTagManager\"; // const isMtm = setCookiesViaManager === \"matomoTagManager\"; // This variable is not yet needed, because we only have 2 managers\n\n useGlobalObjectName = isGtm ? \"dataLayer\" : \"_mtm\";\n }\n\n return {\n useVariableNameCamel: useVariableNameCamel,\n useVariableNamePascal: useVariableNamePascal,\n useGlobalObjectName: useGlobalObjectName\n };\n}\n\nexport { getManagerDependingVariables };","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { putHtmlCodeToDom } from \"@devowl-wp/headless-content-unblocker\";\nimport { getServiceSelection } from \"../decision\";\nimport { OPT_IN_EVENT } from \"../events\";\nimport { getManagerDependingVariables } from \".\";\n\n/**\n * Opt-in to a set of cookies.\n */\nfunction applyOptIn(_x) {\n return _applyOptIn.apply(this, arguments);\n}\n\nfunction _applyOptIn() {\n _applyOptIn = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(options) {\n var allOptInCookies, _getServiceSelection, isManagerActive, iterateCookies, tagManager, skipOptIn, _getManagerDependingV, useGlobalObjectName, useVariableNamePascal, isManagerOptOut, dataLayerPromise, waitPromises;\n\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n allOptInCookies = [];\n _getServiceSelection = getServiceSelection(options), isManagerActive = _getServiceSelection.isManagerActive, iterateCookies = _getServiceSelection.iterateCookies;\n tagManager = options.tagManager, skipOptIn = options.skipOptIn;\n _getManagerDependingV = getManagerDependingVariables(isManagerActive, tagManager), useGlobalObjectName = _getManagerDependingV.useGlobalObjectName, useVariableNamePascal = _getManagerDependingV.useVariableNamePascal; // Handle managers like GTM and MTM\n\n isManagerOptOut = false;\n dataLayerPromise = Promise.resolve(undefined);\n waitPromises = []; // Handle opt-ins sequentially\n\n _context2.next = 9;\n return iterateCookies( /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(group, cookie, isOptIn) {\n var codeDynamics, codeOptIn, rest, isManager, isOnlyWhenNoConsentToManager, isSkipOptIn;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n codeDynamics = cookie.codeDynamics, codeOptIn = cookie.codeOptIn, rest = _objectWithoutProperties(cookie, [\"codeDynamics\", \"codeOptIn\"]);\n isManager = isManagerActive && rest[\"thisIs\".concat(useVariableNamePascal)];\n\n if (isOptIn) {\n // Check if the script should explicitly only be loaded if no consent is given to the manager\n isOnlyWhenNoConsentToManager = isManagerActive && rest[\"codeOptInNo\".concat(useVariableNamePascal)];\n isSkipOptIn = typeof skipOptIn === \"function\" ? skipOptIn(cookie) : false;\n\n if (!isOnlyWhenNoConsentToManager && !isSkipOptIn) {\n waitPromises.push(putHtmlCodeToDom(codeOptIn, codeDynamics));\n } // If this is a manager, wait for the object to be loaded\n\n /* Silence is golden... Until you have PRO Version! */\n\n\n // If this is a manager, wait for the object to be loaded\n\n /* Silence is golden... Until you have PRO Version! */\n document.dispatchEvent(new CustomEvent(OPT_IN_EVENT, {\n detail: {\n group: group,\n cookie: cookie\n }\n }));\n allOptInCookies.push({\n group: group,\n cookie: cookie\n });\n } else if (isManager) {\n /* Silence is golden... Until you have PRO Version! */\n }\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x2, _x3, _x4) {\n return _ref.apply(this, arguments);\n };\n }());\n\n case 9:\n return _context2.abrupt(\"return\", {\n isManagerOptOut: isManagerOptOut,\n dataLayerPromise: dataLayerPromise,\n cookies: allOptInCookies,\n ready: Promise.all(waitPromises)\n });\n\n case 10:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n return _applyOptIn.apply(this, arguments);\n}\n\nexport { applyOptIn };","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { putHtmlCodeToDom } from \"@devowl-wp/headless-content-unblocker\";\nimport { getServiceSelection } from \"../decision\";\nimport { getManagerDependingVariables } from \".\";\n/**\n * Opt-in and opt-out to a set of cookies for a given data manager like GTM / MTM.\n */\n\nfunction applyOptInOutManager(_x, _x2, _x3) {\n return _applyOptInOutManager.apply(this, arguments);\n}\n\nfunction _applyOptInOutManager() {\n _applyOptInOutManager = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(options, dataLayer, isManagerOptOut) {\n var waitPromises, _getServiceSelection, isManagerActive, iterateCookies, tagManager, _getManagerDependingV, useVariableNameCamel, useVariableNamePascal;\n\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n waitPromises = [];\n /* onlypro:start */\n\n _getServiceSelection = getServiceSelection(options), isManagerActive = _getServiceSelection.isManagerActive, iterateCookies = _getServiceSelection.iterateCookies;\n tagManager = options.tagManager;\n _getManagerDependingV = getManagerDependingVariables(isManagerActive, tagManager), useVariableNameCamel = _getManagerDependingV.useVariableNameCamel, useVariableNamePascal = _getManagerDependingV.useVariableNamePascal; // When there is a manager, let's push all opt-in and opt-out events (parallel)\n\n if (!dataLayer) {\n _context2.next = 11;\n break;\n }\n\n // Opt-in events\n iterateCookies(function (group, cookie, isOptIn) {\n var event = cookie[\"\".concat(useVariableNameCamel, \"InEventName\")];\n\n if (isOptIn && event) {\n dataLayer.push({\n realCookieBannerOptInEvents: _defineProperty({}, event, true),\n event: event\n });\n }\n }); // Wait x seconds\n\n _context2.next = 8;\n return new Promise(function (r) {\n return setTimeout(r, 1000);\n });\n\n case 8:\n // Opt-out events\n iterateCookies(function (group, cookie, isOptIn) {\n var event = cookie[\"\".concat(useVariableNameCamel, \"OutEventName\")];\n\n if (!isOptIn && event) {\n dataLayer.push({\n realCookieBannerOptOutEvents: _defineProperty({}, event, true),\n event: event\n });\n }\n });\n _context2.next = 14;\n break;\n\n case 11:\n if (!(isManagerActive && isManagerOptOut)) {\n _context2.next = 14;\n break;\n }\n\n _context2.next = 14;\n return iterateCookies( /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(group, _ref, isOptIn) {\n var codeDynamics, codeOptIn, rest;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n codeDynamics = _ref.codeDynamics, codeOptIn = _ref.codeOptIn, rest = _objectWithoutProperties(_ref, [\"codeDynamics\", \"codeOptIn\"]);\n\n if (isOptIn && rest[\"codeOptInNo\".concat(useVariableNamePascal)]) {\n waitPromises.push(putHtmlCodeToDom(codeOptIn, codeDynamics));\n }\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x4, _x5, _x6) {\n return _ref2.apply(this, arguments);\n };\n }());\n\n case 14:\n return _context2.abrupt(\"return\", {\n ready: Promise.all(waitPromises)\n });\n\n case 15:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n return _applyOptInOutManager.apply(this, arguments);\n}\n\nexport { applyOptInOutManager };","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport Cookie from \"js-cookie\";\nimport { applyDynamicsToHtml } from \"@devowl-wp/headless-content-unblocker\";\nimport { regExpPatternFromWildcardName } from \"../utils\";\n/**\n * Delete cookies on client side (currently only `localStorage` and `sessionStorage`).\n */\n\nfunction deleteCookiesLocally(technicalDefinitions, dynamics) {\n var _iterator = _createForOfIteratorHelper(technicalDefinitions),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var _step$value = _step.value,\n type = _step$value.type,\n name = _step$value.name;\n // Create valid Regxp pattern\n var pattern = new RegExp(regExpPatternFromWildcardName(applyDynamicsToHtml(name, dynamics)), \"g\");\n\n switch (type) {\n case \"http\":\n {\n for (var _i = 0, _Object$keys = Object.keys(Cookie.get()); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n\n if (pattern.test(key)) {\n Cookie.remove(key);\n }\n }\n\n break;\n }\n\n case \"local\":\n case \"session\":\n {\n try {\n var useStorage = type === \"local\" ? window.localStorage : window.sessionStorage;\n\n if (useStorage) {\n for (var _i2 = 0, _Object$keys2 = Object.keys(useStorage); _i2 < _Object$keys2.length; _i2++) {\n var itemName = _Object$keys2[_i2];\n\n if (pattern.test(itemName)) {\n try {\n // Fallback to `null` because `removeItem` can have issues on some browsers\n useStorage.setItem(itemName, null);\n } catch (e) {// Silence is golden. A `QuotaExceededError` can be thrown but we ignore it, because we remove the item\n } // Try as long (but max 100 times) until deleted\n\n\n var tries = 0;\n\n while (useStorage.getItem(itemName) && tries < 100) {\n tries++;\n useStorage.removeItem(itemName);\n }\n }\n }\n }\n } catch (e) {\n // Browser does not support localStorage, let's do nothing...\n continue;\n }\n\n break;\n }\n\n default:\n break;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n}\n\nexport { deleteCookiesLocally };","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { putHtmlCodeToDom } from \"@devowl-wp/headless-content-unblocker\";\nimport { getServiceSelection } from \"../decision\";\nimport { OPT_OUT_EVENT } from \"../events\";\nimport { deleteCookiesLocally, getManagerDependingVariables } from \".\";\n/**\n * Opt-in to a set of cookies for a given data manager like GTM / MTM.\n */\n\nfunction applyOptOut(_x, _x2) {\n return _applyOptOut.apply(this, arguments);\n}\n\nfunction _applyOptOut() {\n _applyOptOut = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(options, isManagerOptOut) {\n var _getServiceSelection, isManagerActive, iterateCookies, tagManager, _getManagerDependingV, useVariableNamePascal, deleteHttpCookies;\n\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _getServiceSelection = getServiceSelection(options), isManagerActive = _getServiceSelection.isManagerActive, iterateCookies = _getServiceSelection.iterateCookies;\n tagManager = options.tagManager;\n _getManagerDependingV = getManagerDependingVariables(isManagerActive, tagManager), useVariableNamePascal = _getManagerDependingV.useVariableNamePascal; // Handle opt-outs sequentially\n\n deleteHttpCookies = [];\n _context2.next = 6;\n return iterateCookies( /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(group, cookie, isOptIn) {\n var id, codeDynamics, codeOptOut, codeOptOutDelete, noTechnicalDefinitions, technicalDefinitions, rest, isOnlyWhenNoConsentToManager;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n id = cookie.id, codeDynamics = cookie.codeDynamics, codeOptOut = cookie.codeOptOut, codeOptOutDelete = cookie.codeOptOutDelete, noTechnicalDefinitions = cookie.noTechnicalDefinitions, technicalDefinitions = cookie.technicalDefinitions, rest = _objectWithoutProperties(cookie, [\"id\", \"codeDynamics\", \"codeOptOut\", \"codeOptOutDelete\", \"noTechnicalDefinitions\", \"technicalDefinitions\"]);\n\n if (!isOptIn) {\n // Check if the script should explicitly only be loaded if no consent is given to the manager\n isOnlyWhenNoConsentToManager = isManagerActive && rest[\"codeOptInNo\".concat(useVariableNamePascal)];\n\n if (isOnlyWhenNoConsentToManager && !isManagerOptOut || !isOnlyWhenNoConsentToManager) {\n putHtmlCodeToDom(codeOptOut, codeDynamics);\n }\n\n if (codeOptOutDelete && !noTechnicalDefinitions) {\n deleteCookiesLocally(technicalDefinitions, codeDynamics); // Mark deletable server-side cookies\n\n // Mark deletable server-side cookies\n if (technicalDefinitions.some(function (_ref2) {\n var type = _ref2.type;\n return type === \"http\";\n })) {\n deleteHttpCookies.push(id);\n }\n }\n\n document.dispatchEvent(new CustomEvent(OPT_OUT_EVENT, {\n detail: {\n group: group,\n cookie: cookie,\n deleteHttpCookies: deleteHttpCookies\n }\n }));\n }\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x3, _x4, _x5) {\n return _ref.apply(this, arguments);\n };\n }());\n\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n return _applyOptOut.apply(this, arguments);\n}\n\nexport { applyOptOut };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { applyOptIn, applyOptInOutManager, applyOptOut } from \".\";\nimport { OPT_IN_ALL_EVENT } from \"../events\";\nimport { ready } from \"../utils\";\n/**\n * Apply cookies on frontend. Depending on some other mechanism you can differ\n * between the following \"decision\" types:\n *\n * - `all`: All cookies are applied (e. g. bots)\n * - `consent`: All cookies from the current consent (read from cookie)\n *\n * The cookies are sent in the following way:\n *\n * 1. Apply opt-in scripts (sequentially)\n * 2. If GTM / MTM is active, wait for the data layer\n * a) Push all opt-in events (parallel)\n * b) Wait x seconds to avoid side effects\n * c) Push all opt-out events (parallel)\n * 3. Apply opt-in scripts (sequentially)\n *\n * @param type\n * @see https://www.simoahava.com/analytics/notify-page-google-tag-manager-loaded/\n * @see https://support.google.com/tagmanager/answer/7679219\n * @see https://developer.matomo.org/guides/tagmanager/datalayer\n */\n\nfunction apply(_x) {\n return _apply.apply(this, arguments);\n}\n\nfunction _apply() {\n _apply = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(options) {\n var _yield$applyOptIn, dataLayerPromise, isManagerOptOut, cookies, applyOptInReady, _yield$applyOptInOutM, applyOptInOutManagerReady, optInAllReady;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return ready();\n\n case 2:\n _context.next = 4;\n return applyOptIn(options);\n\n case 4:\n _yield$applyOptIn = _context.sent;\n dataLayerPromise = _yield$applyOptIn.dataLayerPromise;\n isManagerOptOut = _yield$applyOptIn.isManagerOptOut;\n cookies = _yield$applyOptIn.cookies;\n applyOptInReady = _yield$applyOptIn.ready;\n _context.t0 = applyOptInOutManager;\n _context.t1 = options;\n _context.next = 13;\n return dataLayerPromise;\n\n case 13:\n _context.t2 = _context.sent;\n _context.t3 = isManagerOptOut;\n _context.next = 17;\n return (0, _context.t0)(_context.t1, _context.t2, _context.t3);\n\n case 17:\n _yield$applyOptInOutM = _context.sent;\n applyOptInOutManagerReady = _yield$applyOptInOutM.ready;\n optInAllReady = Promise.all([applyOptInReady, applyOptInOutManagerReady]);\n document.dispatchEvent(new CustomEvent(OPT_IN_ALL_EVENT, {\n detail: {\n cookies: cookies,\n ready: optInAllReady\n }\n })); // Do opt-out\n\n _context.next = 23;\n return applyOptOut(options, isManagerOptOut);\n\n case 23:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _apply.apply(this, arguments);\n}\n\nexport { apply };","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\n\n/**\n * Get the default decision and respect essential group and legitimate interests.\n */\nfunction getDefaultDecision(_ref) {\n var groups = _ref.groups,\n essentialGroupSlug = _ref.essentialGroupSlug;\n var respectLegitimateInterests = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n var _groups$filter = groups.filter(function (_ref2) {\n var slug = _ref2.slug;\n return slug === essentialGroupSlug;\n }),\n _groups$filter2 = _slicedToArray(_groups$filter, 1),\n essentialGroupObj = _groups$filter2[0]; // We need always use the current essential group\n\n\n var result = _defineProperty({}, essentialGroupObj.id, essentialGroupObj.items.map(function (_ref3) {\n var id = _ref3.id;\n return id;\n }));\n\n if (respectLegitimateInterests) {\n var _iterator = _createForOfIteratorHelper(groups),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var group = _step.value;\n\n if (group === essentialGroupObj) {\n continue;\n }\n\n var ids = group.items.filter(function (_ref4) {\n var legalBasis = _ref4.legalBasis;\n return legalBasis === \"legitimate-interest\";\n }).map(function (_ref5) {\n var id = _ref5.id;\n return id;\n });\n\n if (ids.length) {\n result[group.id] = ids;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n\n return result;\n}\n\nexport { getDefaultDecision };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport { apply } from \".\";\nimport { getDefaultDecision as _getDefaultDecision, getUserDecision as _getUserDecision } from \"..\";\n\n/**\n * Main class to manage cookie consents within your application.\n */\nvar CookieConsentManager = /*#__PURE__*/function () {\n function CookieConsentManager(options) {\n _classCallCheck(this, CookieConsentManager);\n\n this.options = void 0;\n this.options = options;\n }\n\n _createClass(CookieConsentManager, [{\n key: \"applyCookies\",\n value: function applyCookies(options) {\n return apply(_objectSpread(_objectSpread({}, options), this.options));\n }\n }, {\n key: \"getUserDecision\",\n value: function getUserDecision() {\n return _getUserDecision(this.getOption(\"decisionCookieName\"));\n }\n }, {\n key: \"getDefaultDecision\",\n value: function getDefaultDecision() {\n var respectLegitimateInterests = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n return _getDefaultDecision(this.options, respectLegitimateInterests);\n }\n }, {\n key: \"getOption\",\n value: function getOption(name) {\n return this.options[name];\n }\n }, {\n key: \"getOptions\",\n value: function getOptions() {\n return this.options;\n }\n }]);\n\n return CookieConsentManager;\n}();\n\nexport { CookieConsentManager };","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { explode, getCookie, supportsCookies } from \"../utils\";\n\n/**\n * Get current user decision from the cookie value in a minimal form.\n */\nfunction getUserDecision(cookieName) {\n var cookieValue = getCookie(cookieName);\n\n if (!cookieValue) {\n if (!supportsCookies()) {\n // Use our `window` object instead of cookie value\n return window.rcbDisabledCookieComp || false;\n }\n\n return false;\n } // Validate cookie length\n\n\n var split = explode(cookieValue, \":\", 3);\n\n if (split.length !== 3) {\n return false;\n }\n\n var _split = _slicedToArray(split, 2),\n uuidString = _split[0],\n revision = _split[1];\n\n var uuids = uuidString.split(\",\");\n var uuid = uuids.shift();\n var consent = JSON.parse(split[2]);\n return {\n uuid: uuid,\n previousUuids: uuids,\n revision: revision,\n consent: consent\n };\n}\n\nexport { getUserDecision };","import _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\n\n/**\n * Get cookie by name. Please keep in mind you need to `decodeURIComponent` the value in some cases!\n *\n * @param cname\n * @see https://stackoverflow.com/questions/10730362/get-cookie-by-name\n * @see https://stackoverflow.com/a/25490531/5506547\n */\nfunction getCookie(cname) {\n var decode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n // In some cases there could be cookies with the same name in `document.cooke` -> take the last one\n var matches = _toConsumableArray(document.cookie.matchAll(new RegExp(\"(^|;)\\\\s*\".concat(cname, \"\\\\s*=\\\\s*([^;]+)\"), \"g\")));\n\n if (!matches.length) {\n return \"\";\n }\n\n var value = matches // Last match in `document.cookie`\n .pop() // Value of regex match\n .pop();\n return decode ? decodeURIComponent(value) : value;\n}\n\nexport { getCookie };","/**\n * A PHP's port of `explode`. `.split` is not similar because it does not join\n * remaining string.\n */\nfunction explode(string, separator, n) {\n var split = string.split(separator);\n if (split.length <= n) return split;\n var out = split.slice(0, n - 1);\n out.push(split.slice(n - 1).join(separator));\n return out;\n}\n\nexport { explode };","/**\n * This event is fired when the user has no consent or invalid consent\n * and the banner gets visible.\n */\nexport var BANNER_PRE_DECISION_SHOW_EVENT = \"RCB/Banner/Show\";","export var OPT_IN_EVENT = \"RCB/OptIn\";","export var OPT_IN_ALL_EVENT = \"RCB/OptIn/All\";","export var OPT_OUT_EVENT = \"RCB/OptOut\";","/**\n * Wait DOM is ready depending on a state.\n *\n * - `interactive`: Defer scripts are executing, but DOM is ready\n * - `complete`: All scripts including deferred ones are executed and DOM is ready\n *\n * @see https://stackoverflow.com/a/65430734/5506547\n * @see https://stackoverflow.com/a/51980980/5506547\n */\nvar ready = function ready(fn) {\n var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"complete\";\n return new Promise(function (resolve) {\n var cb = function cb() {\n fn === null || fn === void 0 ? void 0 : fn(); // We need to make this promise non-blocking. E.g. on Safari this\n // could lead to issues as the `readystatechange` event listener\n // can be nested (once `interactive`, then waiting `complete`)\n // Imagine, you are using an `await ready` within a `ready(fn)` statement.\n\n setTimeout(resolve, 0);\n };\n\n if (document.readyState === state) {\n cb();\n } else {\n document.addEventListener(\"readystatechange\", function () {\n if (document.readyState === state) {\n cb();\n }\n });\n }\n });\n};\n\nexport { ready };","import { pregQuote } from \".\";\n/**\n * Create regular expression pattern from a string like `my_test*` and replace asterisks\n * with `(.*)`.\n */\n\nfunction regExpPatternFromWildcardName(name) {\n var tmp = name.replace(/\\*/g, \"PLEACE_REPLACE_ME_AGAIN\");\n return \"^\".concat(pregQuote(tmp).replace(/PLEACE_REPLACE_ME_AGAIN/g, \"(.*)\"), \"$\");\n}\n\nexport { regExpPatternFromWildcardName };","/**\n * Port of `preg_quote`.\n *\n * @see https://github.com/kvz/locutus/blob/3f14dc5d142f5dcbdf36b4271c21a850a4a259da/src/php/pcre/preg_quote.js#L1\n */\nfunction pregQuote(str, delimiter) {\n // discuss at: https://locutus.io/php/preg_quote/\n // original by: booeyOH\n // improved by: Ates Goral (https://magnetiq.com)\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // example 1: preg_quote(\"$40\")\n // returns 1: '\\\\$40'\n // example 2: preg_quote(\"*RRRING* Hello?\")\n // returns 2: '\\\\*RRRING\\\\* Hello\\\\?'\n // example 3: preg_quote(\"\\\\.+*?[^]$(){}=!<>|:\")\n // returns 3: '\\\\\\\\\\\\.\\\\+\\\\*\\\\?\\\\[\\\\^\\\\]\\\\$\\\\(\\\\)\\\\{\\\\}\\\\=\\\\!\\\\<\\\\>\\\\|\\\\:'\n return str.replace(new RegExp(\"[.\\\\\\\\+*?\\\\[\\\\^\\\\]$(){}=!<>|:\\\\\".concat(delimiter || \"\", \"-]\"), \"g\"), \"\\\\$&\");\n}\n\nexport { pregQuote };","/**\n * Check if the current environment supports cookies.\n *\n * @see https://git.io/JcXiP\n * @returns\n */\nfunction supportsCookies() {\n var cookieName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"test\";\n\n try {\n document.cookie = \"\".concat(cookieName, \"=1\");\n var result = document.cookie.indexOf(\"\".concat(cookieName, \"=\")) !== -1;\n document.cookie = \"\".concat(cookieName, \"=1; expires=Thu, 01-Jan-1970 00:00:01 GMT\");\n return result;\n } catch (e) {\n return false;\n }\n}\n\nexport { supportsCookies };","var DYNAMICS_VARIABLE_REGEXP = /{{([A-Za-z0-9_]+)}}/gm;\n/**\n * Takes any string and replaces `{{myVariable}}` with the value of the passed `dynamics` map.\n */\n\nfunction applyDynamicsToHtml(src, dynamics) {\n return src.replace(DYNAMICS_VARIABLE_REGEXP, function (fullMatch, variableName) {\n return Object.prototype.hasOwnProperty.call(dynamics, variableName) ? dynamics[variableName] : fullMatch;\n });\n}\n\nexport { applyDynamicsToHtml, DYNAMICS_VARIABLE_REGEXP };","// Also ported to `view/Blocker.php`\nexport var HTML_ATTRIBUTE_CAPTURE_PREFIX = \"consent-original\";\nexport var HTML_ATTRIBUTE_CAPTURE_CLICK_PREFIX = \"consent-click-original\";\nexport var HTML_ATTRIBUTE_CAPTURE_SUFFIX = \"_\";\nexport var HTML_ATTRIBUTE_BY = \"consent-by\"; // TODO: cookie -> required?\n\nexport var HTML_ATTRIBUTE_COOKIE_IDS = \"consent-required\";\nexport var HTML_ATTRIBUTE_VISUAL_PARENT = \"consent-visual-use-parent\";\nexport var HTML_ATTRIBUTE_VISUAL_PAINT_MODE = \"consent-visual-paint-mode\";\nexport var HTML_ATTRIBUTE_INLINE = \"consent-inline\";\nexport var HTML_ATTRIBUTE_INLINE_STYLE = \"consent-inline-style\";\nexport var HTML_ATTRIBUTE_BLOCKER_ID = \"consent-id\";\nexport var HTML_TAG_CONSENT_SCRIPT = \"script\";\nexport var HTML_ATTRIBUTE_BLOCKER_CONNECTED = \"consent-blocker-connected\";\nexport var HTML_ATTRIBUTE_BLOCKER_CONNECTED_PRESERVED = \"consent-blocker-connected-pres\";\nexport var HTML_ATTRIBUTE_UNBLOCKED_TRANSACTION_COMPLETE = \"consent-transaction-complete\";\nexport var HTML_ATTRIBUTE_TRANSFORM_WRAPPER = \"consent-transform-wrapper\";\nexport var HTML_ATTRIBUTE_TRANSFORM_WRAPPER_VALUE = \"1\";\nexport var HTML_ATTRIBUTE_WAS_PREVIOUSLY_STRICT_HIDDEN = \"consent-strict-hidden\";\nexport var HTML_ATTRIBUTE_RESET_PARENT = \"consent-cb-reset-parent\";\nexport var HTML_ATTRIBUTE_RESET_PARENT_VALUE = \"1\";\nexport var HTML_ATTRIBUTE_RESET_PARENT_IS_RATIO_CONTAINER = \"consent-cb-reset-parent-is-ratio\";\nexport var HTML_ATTRIBUTE_GOT_CLICKED = \"consent-got-clicked\";\nexport var HTML_ATTRIBUTE_GOT_CLICKED_VALUE = \"1\";\nexport var HTML_ATTRIBUTE_GOT_CLICKED_VALUE_DO_NOT_USE_IN_NESTED = \"2\";\nexport var HTML_ATTRIBUTE_THUMBNAIL = \"consent-thumbnail\";\nexport var HTML_ATTRIBUTE_THUMBNAIL_SUGGESTION = \"consent-thumbnail-suggestion\";","import postscribe from \"postscribe\";\nimport { applyDynamicsToHtml } from \".\";\nimport { htmlDecode } from \"../utils\";\n/**\n * We do not modify `window.onload` directly, you need to use this variable name.\n */\n\nvar WINDOW_ONLOAD_UNBLOCK_REPLACEMENT = \"rcbInitiatorOnload\";\n/**\n * Put HTML code to the current DOM. `script` tags gets automatically\n * executed instead of pushing to DOM.\n *\n * @see https://github.com/krux/postscribe\n * @see https://stackoverflow.com/a/49724894/5506547\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\nfunction putHtmlCodeToDom(html, dynamics) {\n var referenceNode = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : document.body;\n return new Promise(function (resolve) {\n if (html) {\n postscribe(referenceNode, applyDynamicsToHtml(html, dynamics), {\n done: resolve,\n error: function error(e) {\n // We do ignore all errors as we handle like the usual browser\n // E.g. a script blocked by an ad-blocker should not break the execution\n // for upcoming scripts.\n console.error(e);\n },\n beforeWriteToken: function beforeWriteToken(token) {\n var attrs = token.attrs,\n booleanAttrs = token.booleanAttrs,\n src = token.src,\n href = token.href,\n content = token.content; // Probably skip this token? (do not use `disabled` tag as it should still be written to DOM)\n\n if (booleanAttrs !== null && booleanAttrs !== void 0 && booleanAttrs[\"skip-write\"]) {\n return false;\n } // Allow `window.onload` event\n\n\n if (content) {\n token.content = content.replace(/window\\.onload\\s+=/g, \"window.\".concat(WINDOW_ONLOAD_UNBLOCK_REPLACEMENT, \" =\"));\n } // Automatically unescape html entities in all attributes (https://github.com/krux/postscribe/issues/346#issuecomment-310227387)\n\n\n for (var attr in attrs) {\n attrs[attr] = htmlDecode(attrs[attr]); // Allow to skip complete HTML tag when it already got loaded by unique ID (e.g. Google Tag Manager gtag.js)\n\n if (attr === \"unique-write-name\" && document.querySelector(\"[unique-write-name=\\\"\".concat(attrs[attr], \"\\\"]\"))) {\n return false;\n }\n } // Scripts\n\n\n if (src) {\n token.src = htmlDecode(src);\n } // Styles\n\n\n if (href) {\n token.href = htmlDecode(href);\n }\n\n return token;\n }\n });\n } else {\n resolve();\n }\n });\n}\n\nexport { WINDOW_ONLOAD_UNBLOCK_REPLACEMENT, putHtmlCodeToDom };","/**\n * A content - which was blocked - got unblocked.\n */\nexport var OPT_IN_CONTENT_BLOCKER = \"RCB/OptIn/ContentBlocker\";","/**\n * In some cases, the complete layout can be changed and calculations are based on containers width.\n * Imagine: Google Fonts get added and the navigation bar has a button with a calculated width (e.g. BeTheme).\n * Another example: The instagram feed is not loaded / adjusted (masonry), so we need to trigger a resize\n * event manually\n *\n * @param delay\n */\nfunction dispatchResizeEvent() {\n var delay = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n setTimeout(function () {\n try {\n window.dispatchEvent(new Event(\"resize\"));\n } catch (e) {// You are running in IE, it's a UI bug, we can skip...\n }\n }, delay);\n}\n\nexport { dispatchResizeEvent };","import { isUrl } from \".\";\n/**\n * Decode HTML entities in a given string.\n *\n * @see https://stackoverflow.com/a/34064434/5506547\n */\n\nfunction htmlDecode(input) {\n var inputIsUrl = isUrl(input);\n\n if (inputIsUrl) {\n var _doc$querySelector;\n\n // URLs needs to be handled a bit different as e.g. `?regionid` gets parsed to `'ionid=`\n var doc = new DOMParser().parseFromString(\"<a href=\\\"\".concat(input, \"\\\"></a>\"), \"text/html\");\n return (_doc$querySelector = doc.querySelector(\"a\")) === null || _doc$querySelector === void 0 ? void 0 : _doc$querySelector.href;\n } else {\n // Keep XSS protection intact\n var _doc = new DOMParser().parseFromString(input, \"text/html\");\n\n return _doc.documentElement.textContent;\n }\n}\n\nexport { htmlDecode };","/**\n * Check if a given string is an URL.\n *\n * @see https://www.w3resource.com/javascript-exercises/javascript-regexp-exercise-9.php\n */\nfunction isUrl(url) {\n var pattern = /^(?:(?:https?|ftp):\\/\\/)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:\\/\\S*)?$/;\n return !!pattern.test(url);\n}\n\nexport { isUrl };","import { matchingSelector } from \"@devowl-wp/resolve-none-computed-style\";\n/**\n * Port of `jQuery.parents()`.\n */\n\nfunction parents(element, selector) {\n var elements = [];\n var elem = element.parentElement;\n\n while (elem !== null) {\n if (elem.nodeType === Node.ELEMENT_NODE && matchingSelector(elem, selector)) {\n elements.push(elem);\n }\n\n elem = elem.parentElement;\n }\n\n return elements;\n}\n\nexport { parents };","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useEffect } from \"react\";\n\nvar AsciiSpinner = function AsciiSpinner(_ref) {\n var _ref$ms = _ref.ms,\n ms = _ref$ms === void 0 ? 100 : _ref$ms,\n _ref$chars = _ref.chars,\n chars = _ref$chars === void 0 ? [\"◷\", \"◶\", \"◵\", \"◴\"] : _ref$chars;\n\n var _useState = useState(1),\n _useState2 = _slicedToArray(_useState, 2),\n i = _useState2[0],\n setI = _useState2[1];\n\n useEffect(function () {\n var interval = setInterval(function () {\n setI(i + 1);\n }, ms);\n return function () {\n return clearInterval(interval);\n };\n }, [i]);\n return h(\"span\", {\n dangerouslySetInnerHTML: {\n __html: chars[i % 4]\n }\n });\n};\n\nexport { AsciiSpinner };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { isUrl } from \"@devowl-wp/headless-content-unblocker\";\nimport { useBannerOrBlocker } from \"../../../hooks\";\nimport { commonGroupsInlineStyleLinkMore, commonInlineStyleGroupsCookieProperty } from \"../../../inlineStyles\";\n\nvar CookieProperty = function CookieProperty(_ref) {\n var label = _ref.label,\n value = _ref.value,\n children = _ref.children,\n printValueAs = _ref.printValueAs;\n var banner = useBannerOrBlocker();\n var _banner$i18n = banner.i18n,\n yes = _banner$i18n.yes,\n no = _banner$i18n.no;\n var isValueUrl = typeof value === \"string\" && isUrl(value);\n var useValue = isValueUrl ? h(\"a\", {\n href: value,\n style: _objectSpread({\n wordBreak: \"break-all\"\n }, commonGroupsInlineStyleLinkMore(banner, false).style),\n target: \"_blank\",\n rel: \"noopener noreferrer\"\n }, value) : typeof value === \"string\" ? h(\"span\", {\n dangerouslySetInnerHTML: {\n __html: value\n }\n }) : value;\n\n if (printValueAs === \"boolean\") {\n useValue = useValue ? yes : no;\n }\n\n return h(\"div\", _extends({\n key: label\n }, commonInlineStyleGroupsCookieProperty(banner)), label && h(\"strong\", null, label, \":\\xA0\"), useValue, !!children && h(\"div\", null, children));\n};\n\nexport { CookieProperty };","import { scaleMobile } from \"../..\";\n\nfunction commonInlineStyleGroupsCookieProperty(_ref) {\n var _ref$group = _ref.group,\n groupBorderWidth = _ref$group.groupBorderWidth,\n groupBorderColor = _ref$group.groupBorderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useGroupBorderWidth = pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, groupBorderWidth) : groupBorderWidth;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-cookie-prop\",\n style: {\n borderLeft: useGroupBorderWidth > 0 ? \"1px solid \".concat(groupBorderColor) : undefined,\n paddingLeft: 15\n }\n };\n}\n\nexport { commonInlineStyleGroupsCookieProperty };","import { Fragment } from \"react\";\nimport { CookieProperty } from \".\";\nimport { useBannerOrBlocker } from \"../../../hooks\";\nimport { applyDynamicsToHtml } from \"@devowl-wp/headless-content-unblocker\";\n\nvar CookiePropertyList = function CookiePropertyList(_ref) {\n var _ref$cookie = _ref.cookie,\n purpose = _ref$cookie.purpose,\n provider = _ref$cookie.provider,\n providerPrivacyPolicy = _ref$cookie.providerPrivacyPolicy,\n legalBasis = _ref$cookie.legalBasis,\n ePrivacyUSA = _ref$cookie.ePrivacyUSA,\n noTechnicalDefinitions = _ref$cookie.noTechnicalDefinitions,\n technicalDefinitions = _ref$cookie.technicalDefinitions,\n codeDynamics = _ref$cookie.codeDynamics,\n isEssentialGroup = _ref.isEssentialGroup;\n\n var _useBannerOrBlocker = useBannerOrBlocker(),\n i18n = _useBannerOrBlocker.i18n,\n ePrivacyUSAEnabled = _useBannerOrBlocker.ePrivacyUSA;\n\n var types = getCookieTypeLocalizationMap();\n return h(Fragment, null, !!purpose && h(CookieProperty, {\n label: i18n.purpose,\n value: purpose\n }), h(CookieProperty, {\n label: i18n.legalBasis,\n value: legalBasis === \"legal-requirement\" ? i18n.legalRequirement : legalBasis === \"legitimate-interest\" || isEssentialGroup ? i18n.legitimateInterest : i18n.consent\n }), h(CookieProperty, {\n label: i18n.provider,\n value: provider\n }), !!providerPrivacyPolicy && h(CookieProperty, {\n label: i18n.providerPrivacyPolicy,\n value: providerPrivacyPolicy\n }), !!ePrivacyUSAEnabled && h(CookieProperty, {\n label: i18n.ePrivacyUSA,\n value: ePrivacyUSA,\n printValueAs: \"boolean\"\n }), !noTechnicalDefinitions && technicalDefinitions.map(function (_ref2) {\n var type = _ref2.type,\n name = _ref2.name,\n host = _ref2.host,\n duration = _ref2.duration,\n durationUnit = _ref2.durationUnit,\n sessionDuration = _ref2.sessionDuration,\n purpose = _ref2.purpose;\n return h(CookieProperty, {\n key: name,\n label: i18n.technicalCookieDefinition,\n value: h(\"span\", {\n style: {\n fontFamily: \"monospace\"\n }\n }, applyDynamicsToHtml(name, codeDynamics))\n }, h(CookieProperty, {\n label: i18n.type,\n value: types[type].name\n }), !!purpose && h(CookieProperty, {\n label: i18n.purpose,\n value: purpose\n }), !!host && h(CookieProperty, {\n label: i18n.host,\n value: h(\"span\", {\n style: {\n fontFamily: \"monospace\"\n }\n }, host)\n }), h(CookieProperty, {\n label: i18n.duration,\n value: [\"local\", \"indexedDb\", \"flash\"].indexOf(type) > -1 ? i18n.noExpiration : sessionDuration || type === \"session\" ? \"Session\" : \"\".concat(duration, \" \").concat(i18n.durationUnit[durationUnit])\n }));\n }));\n};\n\nfunction getCookieTypeLocalizationMap() {\n return {\n http: {\n name: \"HTTP Cookie\",\n abbr: \"HTTP\",\n backgroundColor: \"black\"\n },\n local: {\n name: \"Local Storage\",\n abbr: \"Local\",\n backgroundColor: \"#b3983c\"\n },\n session: {\n name: \"Session Storage\",\n abbr: \"Session\",\n backgroundColor: \"#3c99b3\"\n },\n flash: {\n name: \"Flash Local Shared Object\",\n abbr: \"Flash\",\n backgroundColor: \"#b33c3c\"\n },\n indexedDb: {\n name: \"IndexedDB\",\n abbr: \"I-DB\",\n backgroundColor: \"#4ab33c\"\n }\n };\n}\n\nexport { CookiePropertyList, getCookieTypeLocalizationMap };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useLayoutEffect, useState } from \"react\";\nimport { useBannerOrBlocker } from \"../../../hooks\";\nimport { commonInlineStyleGroupsCookie, commonInlineStyleGroupsCheckbox } from \"../../..\";\nimport { PlainAntdIconAsSvg } from \"../..\"; // eslint-disable-next-line import/no-extraneous-dependencies\n\nimport { CheckOutlined } from \"@ant-design/icons-svg\";\nimport { CookiePropertyList } from \".\";\n\nvar Cookie = function Cookie(_ref) {\n var cookie = _ref.cookie,\n checked = _ref.checked,\n disabled = _ref.disabled,\n onToggleCheck = _ref.onToggleCheck,\n _ref$propertyListProp = _ref.propertyListProps,\n propertyListProps = _ref$propertyListProp === void 0 ? {} : _ref$propertyListProp;\n var name = cookie.name;\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isRendered = _useState2[0],\n setIsRendered = _useState2[1];\n\n var bannerOrBlocker = useBannerOrBlocker();\n var descriptionFontSize = bannerOrBlocker.group.descriptionFontSize;\n useLayoutEffect(function () {\n setIsRendered(true);\n }, []);\n return h(\"div\", commonInlineStyleGroupsCookie(bannerOrBlocker), h(\"div\", {\n style: {\n marginBottom: 10\n }\n }, h(PlainAntdIconAsSvg, _extends({\n icon: CheckOutlined,\n onClick: onToggleCheck\n }, commonInlineStyleGroupsCheckbox(bannerOrBlocker, isRendered, checked, disabled, descriptionFontSize))), h(\"strong\", {\n style: {\n verticalAlign: \"middle\"\n },\n onClick: onToggleCheck\n }, name)), h(CookiePropertyList, _extends({\n cookie: cookie\n }, propertyListProps)));\n};\n\nexport { Cookie };","function commonInlineStyleGroupsCookie(_ref) {\n var antiAdBlocker = _ref.customCss.antiAdBlocker;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-cookie\",\n style: {\n marginTop: 10\n }\n };\n}\n\nexport { commonInlineStyleGroupsCookie };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport { useMemo } from \"react\"; // eslint-disable-next-line import/no-extraneous-dependencies\n\nimport { renderIconDefinitionToSVGElement } from \"@ant-design/icons-svg/es/helpers\";\n/**\n * Inject a plain SVG icon from `@ant-design/icons-svg`. This reduces the bundle size.\n * You can determine yourself to use `@ant-design/icons` or this helper component. For example,\n * this component is preferred for website bundles where website size matters.\n *\n * @see https://app.clickup.com/t/60pz5t\n */\n\nvar PlainAntdIconAsSvg = function PlainAntdIconAsSvg(_ref) {\n var icon = _ref.icon,\n rest = _objectWithoutProperties(_ref, [\"icon\"]);\n\n var svgString = useMemo(function () {\n return renderIconDefinitionToSVGElement(icon, {\n extraSVGAttrs: {\n style: \"width:auto;height:100%;\",\n fill: \"currentColor\"\n }\n });\n }, [icon]);\n return h(\"div\", _extends({}, rest, {\n dangerouslySetInnerHTML: {\n __html: svgString\n }\n }));\n};\n\nexport { PlainAntdIconAsSvg };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport { forwardRef } from \"react\";\nimport hintCss from \"hint.css/hint.min.css?inline-raw\";\nimport { usePlainCss } from \"../hooks\";\n/**\n * This is a very basic `hint.css` implementation for a tooltip.\n *\n * @see https://kushagra.dev/lab/hint/\n */\n// eslint-disable-next-line react/display-name\n\nvar Tooltip = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var children = _ref.children,\n className = _ref.className,\n title = _ref.title,\n _ref$position = _ref.position,\n position = _ref$position === void 0 ? \"top\" : _ref$position,\n color = _ref.color,\n _ref$size = _ref.size,\n size = _ref$size === void 0 ? \"large\" : _ref$size,\n always = _ref.always,\n rounded = _ref.rounded,\n noAnimate = _ref.noAnimate,\n bounce = _ref.bounce,\n rest = _objectWithoutProperties(_ref, [\"children\", \"className\", \"title\", \"position\", \"color\", \"size\", \"always\", \"rounded\", \"noAnimate\", \"bounce\"]);\n\n usePlainCss(hintCss, \"hint-css\", true);\n return h(\"div\", _extends({\n style: {\n position: \"relative\",\n display: \"inline\"\n },\n ref: ref,\n \"aria-label\": title,\n className: \"hint--\".concat(position, \" hint--\").concat(size, \" \").concat(color ? \"hint--\".concat(color) : \"\", \" \").concat(always ? \"hint--always\" : \"\", \" \").concat(rounded ? \"hint--rounded\" : \"\", \" \").concat(noAnimate ? \"hint--no-animate\" : \"\", \" \").concat(bounce ? \"hint--bounce\" : \"\", \" \").concat(className || \"\")\n }, rest), children);\n});\nexport { Tooltip };","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport { createContext, useContext } from \"react\";\n\n/**\n * Create a side-effect-free context provider.\n */\nvar BannerContextFactory = /*#__PURE__*/function () {\n function BannerContextFactory() {\n _classCallCheck(this, BannerContextFactory);\n }\n\n _createClass(BannerContextFactory, null, [{\n key: \"Context\",\n value: function (_Context) {\n function Context() {\n return _Context.apply(this, arguments);\n }\n\n Context.toString = function () {\n return _Context.toString();\n };\n\n return Context;\n }(function () {\n return this.context = this.context || /*#__PURE__*/createContext({});\n })\n }]);\n\n return BannerContextFactory;\n}();\n\nBannerContextFactory.context = void 0;\n\nfunction useBanner() {\n return useContext(BannerContextFactory.Context());\n}\n\nexport { BannerContextFactory, useBanner };","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport { createContext, useContext } from \"react\";\n\n/**\n * Create a side-effect-free context provider.\n */\nvar BlockerContextFactory = /*#__PURE__*/function () {\n function BlockerContextFactory() {\n _classCallCheck(this, BlockerContextFactory);\n }\n\n _createClass(BlockerContextFactory, null, [{\n key: \"Context\",\n value: function (_Context) {\n function Context() {\n return _Context.apply(this, arguments);\n }\n\n Context.toString = function () {\n return _Context.toString();\n };\n\n return Context;\n }(function () {\n return this.context = this.context || /*#__PURE__*/createContext({});\n })\n }]);\n\n return BlockerContextFactory;\n}();\n\nBlockerContextFactory.context = void 0;\n\nfunction useBlocker() {\n return useContext(BlockerContextFactory.Context());\n}\n\nexport { BlockerContextFactory, useBlocker };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport { useState } from \"react\";\nimport { commonInlineStyleFooterLink, useBannerOrBlocker } from \"../../..\";\n\nvar FooterLink = function FooterLink(_ref) {\n var children = _ref.children,\n anchorRest = _objectWithoutProperties(_ref, [\"children\"]);\n\n var bannerOrBlocker = useBannerOrBlocker();\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isHover = _useState2[0],\n setIsHover = _useState2[1];\n\n return h(\"a\", _extends({\n onMouseEnter: function onMouseEnter() {\n return setIsHover(true);\n },\n onMouseLeave: function onMouseLeave() {\n return setIsHover(false);\n }\n }, commonInlineStyleFooterLink(bannerOrBlocker, isHover), anchorRest), children);\n};\n\nexport { FooterLink };","import { scaleMobile } from \"../../scale\";\n\nfunction commonInlineStyleFooterLink(_ref) {\n var _ref$footerDesign = _ref.footerDesign,\n fontSize = _ref$footerDesign.fontSize,\n fontColor = _ref$footerDesign.fontColor,\n hoverFontColor = _ref$footerDesign.hoverFontColor,\n fontInheritFamily = _ref$footerDesign.fontInheritFamily,\n fontFamily = _ref$footerDesign.fontFamily,\n linkTextDecoration = _ref.design.linkTextDecoration,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var isHover = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var style = {\n textDecoration: linkTextDecoration,\n fontSize: pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, +fontSize) : +fontSize,\n color: isHover ? hoverFontColor : fontColor,\n fontFamily: fontInheritFamily ? undefined : fontFamily,\n padding: \"0 5px\"\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-footer-link\",\n style: style\n };\n}\n\nexport { commonInlineStyleFooterLink };","import { FooterLink } from \".\";\nimport { Tooltip } from \"../..\";\n\nvar FooterPoweredByLink = function FooterPoweredByLink(_ref) {\n var poweredLink = _ref.poweredLink,\n affiliate = _ref.affiliate;\n return h(FooterLink, {\n href: affiliate ? affiliate.link : poweredLink.href,\n target: poweredLink.target,\n key: \"powered-by\"\n }, h(\"span\", {\n dangerouslySetInnerHTML: {\n __html: poweredLink.innerHTML\n }\n }), affiliate && h(Tooltip, {\n title: affiliate.description,\n position: \"top-left\"\n }, \" \", affiliate.labelBehind));\n};\n\nexport { FooterPoweredByLink };","import _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport { Fragment } from \"react\";\n/**\n * Join together a set of JSX elements with a separator.\n *\n * @see https://stackoverflow.com/q/33577448/5506547\n */\n\nfunction jsxJoin(components, separator) {\n // Just to be sure, remove falsy values so we can add conditionals to the components array\n var filtered = components.filter(Boolean);\n return filtered.length === 0 ? null : filtered.reduce(function (acc, curr, i) {\n return acc.length ? [].concat(_toConsumableArray(acc), [// Wrap the separator in a fragment to avoid `missing key` issues\n h(Fragment, {\n key: i\n }, separator), curr]) : [curr];\n }, []);\n}\n\nexport { jsxJoin };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport { useCallback, Fragment } from \"react\";\nimport { useBannerOrBlocker, useLegalLinks } from \"..\";\nimport { FooterLink, FooterPoweredByLink } from \"../../components\";\nimport { jsxJoin } from \"../../utils\";\n\nfunction useCommonFooterLinks() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n onClose = _ref.onClose,\n putPoweredByLinkInRow = _ref.putPoweredByLinkInRow,\n row1 = _ref.row1;\n\n var _useBannerOrBlocker = useBannerOrBlocker(),\n close = _useBannerOrBlocker.i18n.close,\n _useBannerOrBlocker$f = _useBannerOrBlocker.footerDesign,\n poweredByLink = _useBannerOrBlocker$f.poweredByLink,\n linkTarget = _useBannerOrBlocker$f.linkTarget,\n poweredLink = _useBannerOrBlocker.poweredLink,\n affiliate = _useBannerOrBlocker.affiliate;\n\n var _useLegalLinks = useLegalLinks(),\n linkPrivacyPolicy = _useLegalLinks.linkPrivacyPolicy,\n linkImprint = _useLegalLinks.linkImprint;\n\n var targetAttributes = linkTarget === \"_blank\" ? {\n target: \"_blank\",\n rel: \"noopener\"\n } : {};\n var rows = [// Row 1\n [onClose && h(FooterLink, {\n href: \"#\",\n onClick: onClose,\n key: \"close\"\n }, h(\"strong\", null, close))].concat(_toConsumableArray(row1 || []), [linkPrivacyPolicy && h(FooterLink, _extends({\n href: linkPrivacyPolicy.url\n }, targetAttributes, {\n key: \"privacyPolicy\"\n }), linkPrivacyPolicy.label), linkImprint && h(FooterLink, _extends({\n href: linkImprint.url\n }, targetAttributes, {\n key: \"imprint\"\n }), linkImprint.label)]).filter(Boolean), // Row 2\n [] // Nothing yet\n ];\n\n if (!!poweredLink && poweredByLink) {\n rows[putPoweredByLinkInRow || 0].push(h(FooterPoweredByLink, {\n key: \"poweredBy\",\n poweredLink: poweredLink,\n affiliate: affiliate\n }));\n }\n\n var render = useCallback(function (rows) {\n return jsxJoin(rows.map(function (row) {\n return row.length ? h(Fragment, {\n key: row[0].key\n }, jsxJoin(row, h(Fragment, null, \" \\u2022 \"))) : null;\n }), h(\"br\", null));\n }, []);\n return {\n rows: rows,\n render: render\n };\n}\n\nexport { useCommonFooterLinks };","import { useBannerOrBlocker, useLegalLinks } from \"..\";\n\nfunction joinWithAndSeparator(arr, andSeparator) {\n if (arr.length > 1) {\n arr.splice(arr.length - 1, 0, \"{{andSeparator}}\");\n }\n\n return arr.join(\", \").replace(/,\\s+{{andSeparator}},\\s+/g, andSeparator);\n}\n/**\n * @see https://gist.github.com/unruthless/413930\n * @see https://stackoverflow.com/a/23630325/5506547\n */\n\n\nvar supWithLineHeightFix = '<sup style=\"vertical-align:top;line-height:100%;position:initial;\">';\n\nfunction useCommonTeachings() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n disableDataProcessingInUnsafeCountries = _ref.disableDataProcessingInUnsafeCountries,\n disableAgeNotice = _ref.disableAgeNotice,\n disableListServicesNotice = _ref.disableListServicesNotice;\n\n var _useBannerOrBlocker = useBannerOrBlocker(),\n blocker = _useBannerOrBlocker.blocker,\n groups = _useBannerOrBlocker.groups,\n isEPrivacyUSA = _useBannerOrBlocker.ePrivacyUSA,\n isAgeNotice = _useBannerOrBlocker.ageNotice,\n isListServicesNotice = _useBannerOrBlocker.listServicesNotice,\n _useBannerOrBlocker$t = _useBannerOrBlocker.texts,\n description = _useBannerOrBlocker$t.description,\n ePrivacyUSA = _useBannerOrBlocker$t.ePrivacyUSA,\n ageNoticeBanner = _useBannerOrBlocker$t.ageNoticeBanner,\n listServicesNotice = _useBannerOrBlocker$t.listServicesNotice,\n consentForwardingExternalHostsText = _useBannerOrBlocker$t.consentForwardingExternalHosts,\n tcf = _useBannerOrBlocker.tcf,\n consentForwardingExternalHosts = _useBannerOrBlocker.consentForwardingExternalHosts,\n individualPrivacyOpen = _useBannerOrBlocker.individualPrivacyOpen,\n individualDescription = _useBannerOrBlocker.individualTexts.description,\n essentialGroup = _useBannerOrBlocker.essentialGroup,\n _useBannerOrBlocker$i = _useBannerOrBlocker.i18n,\n andSeparator = _useBannerOrBlocker$i.andSeparator,\n tcfBannerI18n = _useBannerOrBlocker$i.tcf,\n keepVariablesInTexts = _useBannerOrBlocker.keepVariablesInTexts;\n\n var _useLegalLinks = useLegalLinks(),\n linkPrivacyPolicy = _useLegalLinks.linkPrivacyPolicy; // Description text (combination of configured text and Consent Forwarding)\n\n\n var consentForwardingExternalHostsFinalText = \"\";\n\n if (consentForwardingExternalHosts && !keepVariablesInTexts) {\n consentForwardingExternalHostsFinalText = consentForwardingExternalHostsText.replace(/{{websites}}/g, consentForwardingExternalHosts.join(\", \"));\n }\n\n var useDescription = [blocker ? blocker.description : individualPrivacyOpen ? individualDescription : description, consentForwardingExternalHostsFinalText].filter(Boolean).join(\" \");\n\n if (!keepVariablesInTexts) {\n // Place policy link into the text https://regex101.com/r/ayeFVy/1\n useDescription = useDescription.replace(/{{privacyPolicy}}(.*){{\\/privacyPolicy}}/g, linkPrivacyPolicy ? \"<a href=\\\"\".concat(linkPrivacyPolicy.url, \"\\\" style=\\\"text-decoration:underline;color:inherit;\\\" onmouseenter=\\\"this.style.textDecoration='none'\\\" onmouseleave=\\\"this.style.textDecoration='underline'\\\" target=\\\"_blank\\\">$1</a>\") : \"$1\");\n } // Teaching: Data processing in unsafe countries (formerly USA ePrivacy)\n\n\n var useDataProcessingInUnsafeCountries = !disableDataProcessingInUnsafeCountries && isEPrivacyUSA ? ePrivacyUSA : \"\"; // Teaching: Age notice\n\n var useAgeNotice = isAgeNotice && !disableAgeNotice ? ageNoticeBanner : \"\"; // Teaching: List services notice\n\n var useListServicesNotice = \"\";\n\n if (isListServicesNotice && !disableListServicesNotice) {\n var hasBothPlaceholders = listServicesNotice.indexOf(\"{{services}}\") > -1 && listServicesNotice.indexOf(\"{{serviceGroups}}\") > -1;\n var nonEssentialGroups = groups.filter(function (_ref2) {\n var slug = _ref2.slug;\n return slug !== essentialGroup;\n });\n var flattenSeparator = \"~;~\";\n var listServicesNames = joinWithAndSeparator(nonEssentialGroups.map(function (_ref3, groupIdx) {\n var items = _ref3.items;\n return items.map(function (_ref4) {\n var name = _ref4.name,\n ePrivacyUSA = _ref4.ePrivacyUSA;\n return \"\".concat(name).concat(supWithLineHeightFix).concat([hasBothPlaceholders ? groupIdx + 1 : \"\", useDataProcessingInUnsafeCountries && ePrivacyUSA ? \"U\" : \"\"].filter(Boolean).join(\",\"), \"</sup>\");\n }).join(flattenSeparator);\n }).join(flattenSeparator).split(flattenSeparator), andSeparator);\n\n if (listServicesNames) {\n var listServiceGroupsNames = joinWithAndSeparator(nonEssentialGroups.map(function (_ref5, groupIdx) {\n var name = _ref5.name;\n return \"\".concat(name).concat(supWithLineHeightFix).concat(hasBothPlaceholders ? groupIdx + 1 : \"\", \"</sup>\");\n }), andSeparator);\n useListServicesNotice = \"<span>\".concat(listServicesNotice, \"</span>\").concat(tcf && !individualPrivacyOpen ? \"<span>\".concat(tcfBannerI18n.listOfServicesAppendix, \"</span>\") : \"\");\n\n if (!keepVariablesInTexts) {\n // Place service list into the text\n useListServicesNotice = useListServicesNotice.replace(/{{services}}/g, listServicesNames) // Place service group list into the text\n .replace(/{{serviceGroups}}/g, listServiceGroupsNames);\n }\n\n if (useDataProcessingInUnsafeCountries) {\n useDataProcessingInUnsafeCountries += \"\".concat(supWithLineHeightFix, \"U</sup>\");\n }\n }\n }\n\n return {\n description: useDescription,\n teachings: [useDataProcessingInUnsafeCountries, useAgeNotice, useListServicesNotice].filter(Boolean)\n };\n}\n\nexport { useCommonTeachings };","import { useBanner, useBlocker } from \"../contexts\";\n\n/**\n * Use one of the available banner or blocker contexts as union typed.\n */\nfunction useBannerOrBlocker() {\n var banner = useBanner();\n var blocker = useBlocker(); // Check for a common context property in an available context as it is never `undefined`\n\n return banner.groups ? banner : blocker;\n}\n\nexport { useBannerOrBlocker };","import { useBannerOrBlocker } from \".\";\n\nfunction useLegalLinks() {\n var _useBannerOrBlocker = useBannerOrBlocker(),\n _useBannerOrBlocker$l = _useBannerOrBlocker.legal,\n privacyPolicy = _useBannerOrBlocker$l.privacyPolicy,\n privacyPolicyExternalUrl = _useBannerOrBlocker$l.privacyPolicyExternalUrl,\n privacyPolicyIsExternalUrl = _useBannerOrBlocker$l.privacyPolicyIsExternalUrl,\n privacyPolicyLabel = _useBannerOrBlocker$l.privacyPolicyLabel,\n imprint = _useBannerOrBlocker$l.imprint,\n imprintExternalUrl = _useBannerOrBlocker$l.imprintExternalUrl,\n imprintIsExternalUrl = _useBannerOrBlocker$l.imprintIsExternalUrl,\n imprintLabel = _useBannerOrBlocker$l.imprintLabel,\n pageByIdUrl = _useBannerOrBlocker.pageByIdUrl;\n\n var pageIdToPermalink = useBannerOrBlocker().pageIdToPermalink || {};\n var linkPrivacyPolicy = privacyPolicy > 0 ? pageIdToPermalink[privacyPolicy] || \"\".concat(pageByIdUrl, \"=\").concat(privacyPolicy) : undefined;\n var linkImprint = imprint > 0 ? pageIdToPermalink[imprint] || \"\".concat(pageByIdUrl, \"=\").concat(imprint) : undefined;\n\n if (privacyPolicyIsExternalUrl) {\n linkPrivacyPolicy = privacyPolicyExternalUrl;\n }\n\n if (imprintIsExternalUrl) {\n linkImprint = imprintExternalUrl;\n }\n\n return {\n linkPrivacyPolicy: privacyPolicyLabel && linkPrivacyPolicy ? {\n url: linkPrivacyPolicy,\n label: privacyPolicyLabel\n } : false,\n linkImprint: imprintLabel && linkImprint ? {\n url: linkImprint,\n label: imprintLabel\n } : false\n };\n}\n\nexport { useLegalLinks };","import { useMemo, useLayoutEffect } from \"react\";\nvar counter = 0;\n/**\n * Dynamically creates a style-tag in your head with a given plain CSS string.\n */\n\nfunction usePlainCss(css, uniqueId, keep) {\n var id = useMemo(function () {\n return \"react-use-plain-css-\".concat(uniqueId || (counter++).toString(36));\n }, []);\n useLayoutEffect(function () {\n var element = document.getElementById(id);\n\n if (!element) {\n element = document.createElement(\"style\");\n element.style.type = \"text/css\";\n element.id = id;\n document.getElementsByTagName(\"head\")[0].appendChild(element);\n }\n\n element.innerHTML = css;\n return function () {\n if (!keep) {\n var _element$parentNode;\n\n (_element$parentNode = element.parentNode) === null || _element$parentNode === void 0 ? void 0 : _element$parentNode.removeChild(element);\n }\n };\n }, [css, keep]);\n return id;\n}\n\nexport { usePlainCss };","import { scaleMobile } from \"../../scale\";\n\nfunction commonInlineStyleBodyTeaching(_ref) {\n var _ref$bodyDesign = _ref.bodyDesign,\n teachingsInheritTextAlign = _ref$bodyDesign.teachingsInheritTextAlign,\n teachingsTextAlign = _ref$bodyDesign.teachingsTextAlign,\n teachingsInheritFontSize = _ref$bodyDesign.teachingsInheritFontSize,\n teachingsFontSize = _ref$bodyDesign.teachingsFontSize,\n teachingsInheritFontColor = _ref$bodyDesign.teachingsInheritFontColor,\n teachingsFontColor = _ref$bodyDesign.teachingsFontColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-teachings\",\n style: {\n marginTop: 7,\n display: \"inline-block\",\n textAlign: teachingsInheritTextAlign ? undefined : teachingsTextAlign,\n fontSize: teachingsInheritFontSize ? undefined : pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, +teachingsFontSize) : +teachingsFontSize,\n color: teachingsInheritFontColor ? undefined : teachingsFontColor\n }\n };\n}\n\nexport { commonInlineStyleBodyTeaching };","function commonInlineStyleBodyTeachingsSeparator(_ref) {\n var borderRadius = _ref.layout.borderRadius,\n _ref$bodyDesign = _ref.bodyDesign,\n teachingsSeparatorActive = _ref$bodyDesign.teachingsSeparatorActive,\n teachingsSeparatorWidth = _ref$bodyDesign.teachingsSeparatorWidth,\n teachingsSeparatorHeight = _ref$bodyDesign.teachingsSeparatorHeight,\n teachingsSeparatorColor = _ref$bodyDesign.teachingsSeparatorColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-teachings-separator\",\n style: {\n marginTop: 7,\n display: \"inline-block\",\n maxWidth: \"100%\",\n borderRadius: +borderRadius,\n width: +teachingsSeparatorWidth,\n height: teachingsSeparatorActive ? +teachingsSeparatorHeight : 0,\n background: teachingsSeparatorColor\n }\n };\n}\n\nexport { commonInlineStyleBodyTeachingsSeparator };","import { scaleMobile } from \"../..\";\n\n/**\n * Use `visible` together with `useLayoutEffect` to avoid flickering.\n * This is needed because the SVG icons of ant are a bit flickering.\n */\nfunction commonInlineStyleGroupsCheckbox(_ref, visible, checked, disabled, fontSize) {\n var borderRadius = _ref.layout.borderRadius,\n _ref$group = _ref.group,\n headlineFontSize = _ref$group.headlineFontSize,\n checkboxBg = _ref$group.checkboxBg,\n checkboxBorderWidth = _ref$group.checkboxBorderWidth,\n checkboxBorderColor = _ref$group.checkboxBorderColor,\n checkboxActiveBg = _ref$group.checkboxActiveBg,\n checkboxActiveBorderColor = _ref$group.checkboxActiveBorderColor,\n checkboxActiveColor = _ref$group.checkboxActiveColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useFontSize = fontSize || headlineFontSize;\n useFontSize = pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, useFontSize) : useFontSize;\n var useCheckboxBorderWidth = pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, +checkboxBorderWidth) : +checkboxBorderWidth;\n var height = +useFontSize + useCheckboxBorderWidth * 2 + 6;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-checkbox\",\n style: {\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n opacity: disabled ? 0.5 : undefined,\n color: checked ? checkboxActiveColor : checkboxBg,\n display: visible ? \"inline-block\" : \"none\",\n background: checked ? checkboxActiveBg : checkboxBg,\n border: \"\".concat(useCheckboxBorderWidth, \"px solid \").concat(checked ? checkboxActiveBorderColor : checkboxBorderColor),\n padding: 3,\n height: height,\n width: height,\n marginRight: 10,\n borderRadius: +borderRadius,\n verticalAlign: \"middle\",\n lineHeight: 0,\n boxSizing: \"border-box\"\n }\n };\n}\n\nexport { commonInlineStyleGroupsCheckbox };","function commonGroupsInlineStyleLinkMore(_ref, isHover) {\n var linkTextDecoration = _ref.design.linkTextDecoration,\n _ref$group = _ref.group,\n linkColor = _ref$group.linkColor,\n linkHoverColor = _ref$group.linkHoverColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-group-more\",\n style: {\n color: isHover ? linkHoverColor : linkColor,\n textDecoration: linkTextDecoration\n }\n };\n}\n\nexport { commonGroupsInlineStyleLinkMore };","import { scaleMobile } from \"../..\";\n\nfunction commonInlineStyleHeaderHeadline(_ref, hasCloseIcon) {\n var _ref$headerDesign = _ref.headerDesign,\n fontSize = _ref$headerDesign.fontSize,\n fontColor = _ref$headerDesign.fontColor,\n fontInheritFamily = _ref$headerDesign.fontInheritFamily,\n fontFamily = _ref$headerDesign.fontFamily,\n fontWeight = _ref$headerDesign.fontWeight,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-headline\",\n style: {\n color: fontColor,\n lineHeight: 1.8,\n fontSize: pageRequestUuid4 ? scaleMobile(mobile, pageRequestUuid4, +fontSize) : +fontSize,\n fontFamily: fontInheritFamily ? undefined : fontFamily,\n fontWeight: fontWeight,\n paddingRight: hasCloseIcon ? 20 : undefined\n }\n };\n}\n\nexport { commonInlineStyleHeaderHeadline };","var calculateNewVal = function calculateNewVal(val, scalePercent) {\n var newVal = val;\n newVal = val / 100 * scalePercent;\n newVal = newVal < 1 ? 1 : newVal;\n return newVal;\n};\n/**\n * Calculate the new value for an inline style value and respect the scaling options.\n */\n\n\nfunction scaleMobile(_ref, useWidthOfThisContainerId, original, replaceWith) {\n var enabled = _ref.enabled,\n scalePercent = _ref.scalePercent,\n scalePercentVertical = _ref.scalePercentVertical;\n var additionalVerticalScaling = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n if (process.env.PLUGIN_CTX === \"pro\") {\n /* Silence is golden... Until you have PRO Version! */\n }\n\n return original;\n}\n\nexport { scaleMobile };","import { matchingSelector } from \"@devowl-wp/resolve-none-computed-style\";\nwindow.rcbPoweredByCacheOuterHTML = \"\";\n/**\n * Get the server-side-rendered powered by link.\n */\n\nfunction getSsrPoweredByLink(id) {\n var element = document.getElementById(id); // SSR-powered by\n\n var originalPoweredLink = element.nextElementSibling;\n var poweredLink = document.createElement(\"div\");\n\n if (window.rcbPoweredByCacheOuterHTML) {\n // We have cached the link as we remove it from the DOM\n poweredLink.innerHTML = window.rcbPoweredByCacheOuterHTML;\n } else if (matchingSelector(originalPoweredLink, \"a\") && originalPoweredLink.innerHTML.toLowerCase().indexOf(\"Real Cookie Banner\")) {\n window.rcbPoweredByCacheOuterHTML = originalPoweredLink.outerHTML;\n poweredLink.innerHTML = window.rcbPoweredByCacheOuterHTML;\n originalPoweredLink.parentNode.removeChild(originalPoweredLink);\n }\n\n return poweredLink.children[0];\n}\n\nexport { getSsrPoweredByLink };","function matchingSelector(element, selector) {\n var proto = typeof Element !== \"undefined\" ? Element.prototype : {};\n var nativeFunction = proto.matches || proto.matchesSelector || proto.webkitMatchesSelector || proto.mozMatchesSelector || proto.msMatchesSelector || proto.oMatchesSelector;\n\n if (!element || element.nodeType !== 1 || !element.parentElement) {\n return false;\n }\n\n if (nativeFunction) {\n return nativeFunction.call(element, selector);\n }\n\n var matchingElements = element.parentElement.querySelectorAll(selector);\n\n for (var matchIdx in matchingElements) {\n if (matchingElements[matchIdx] === element) {\n return true;\n }\n }\n\n return false;\n}\n\nexport { matchingSelector };","import Url from \"url-parse\";\nimport { trailingslashit, untrailingslashit } from \"../../helpers\";\nimport { RouteHttpVerb } from \".\";\nimport deepMerge from \"deepmerge\";\n\n/**\n * Build an URL for a specific scheme.\n *\n * @param param0\n */\nfunction commonUrlBuilder(_ref) {\n var location = _ref.location,\n _ref$params = _ref.params,\n params = _ref$params === void 0 ? {} : _ref$params,\n _ref$nonce = _ref.nonce,\n nonce = _ref$nonce === void 0 ? true : _ref$nonce,\n options = _ref.options;\n var apiUrl = new Url(options.restRoot, true);\n var query = apiUrl.query;\n var permalinkPath = query.rest_route || apiUrl.pathname; // Determine path from permalink settings\n // Find dynamic parameters from URL bindings (like /user/:id)\n\n var foundParams = [];\n var path = location.path.replace(/:([A-Za-z0-9-_]+)/g, function (match, group) {\n foundParams.push(group);\n return params[group];\n });\n var getParams = {}; // Find undeclared body params (which are not bind above) and add it to GET query\n\n for (var _i = 0, _Object$keys = Object.keys(params); _i < _Object$keys.length; _i++) {\n var checkParam = _Object$keys[_i];\n\n if (foundParams.indexOf(checkParam) === -1) {\n getParams[checkParam] = params[checkParam]; // We do not need `encodeURIComponent` as it is supported by `url-parse` already\n }\n }\n\n var usePath = trailingslashit(permalinkPath) + untrailingslashit(location.namespace || options.restNamespace) + path; // Force protocol from parent location\n\n var useThisProtocol = new Url(window.location.href).protocol.slice(0, -1);\n apiUrl.set(\"protocol\", useThisProtocol); // Set path depending on permalink settings\n\n if (query.rest_route) {\n query.rest_route = usePath; // eslint-disable-line @typescript-eslint/naming-convention\n } else {\n apiUrl.set(\"pathname\", usePath); // Set path\n } // Append others\n\n\n if (nonce && options.restNonce) {\n query._wpnonce = options.restNonce;\n }\n\n var currentApiUrlString = apiUrl.toString();\n\n if ([\"wp-json/\", \"rest_route=\"].filter(function (s) {\n return currentApiUrlString.indexOf(s) > -1;\n }).length > 0 && location.method && location.method !== RouteHttpVerb.GET) {\n query._method = location.method;\n }\n\n return apiUrl.set(\"query\", deepMerge.all([options.restQuery, getParams, query])).toString();\n}\n\nexport { commonUrlBuilder, Url };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nvar pool = {};\nvar recreateFetchPool = {};\n/**\n * A REST nonce in WordPress is only valid for 12 hours (can be configured). However, if it gets\n * invalid, the REST endpoints return a `403` error which signals us, we should recreate the nonce.\n * To avoid multiple recreations, we memorize the newly created nonce in a pool.\n */\n\nfunction nonceDeprecationPool(_x, _x2) {\n return _nonceDeprecationPool.apply(this, arguments);\n}\n\nfunction _nonceDeprecationPool() {\n _nonceDeprecationPool = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(nonce, restRecreateNonceEndpoint) {\n var resultPromise, returnNonce;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (!(typeof restRecreateNonceEndpoint !== \"undefined\")) {\n _context2.next = 6;\n break;\n }\n\n resultPromise = // Reuse already sent request\n recreateFetchPool[nonce] || new Promise(\n /*#__PURE__*/\n // eslint-disable-next-line no-async-promise-executor\n function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(resolve, reject) {\n var recreateFetch, newNonce;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n _context.next = 3;\n return window.fetch(restRecreateNonceEndpoint);\n\n case 3:\n recreateFetch = _context.sent;\n\n if (!recreateFetch.ok) {\n _context.next = 11;\n break;\n }\n\n _context.next = 7;\n return recreateFetch.text();\n\n case 7:\n newNonce = _context.sent;\n\n if (nonce === newNonce) {\n reject();\n } else {\n pool[nonce] = newNonce;\n resolve(newNonce);\n }\n\n _context.next = 12;\n break;\n\n case 11:\n reject();\n\n case 12:\n _context.next = 17;\n break;\n\n case 14:\n _context.prev = 14;\n _context.t0 = _context[\"catch\"](0);\n reject();\n\n case 17:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[0, 14]]);\n }));\n\n return function (_x3, _x4) {\n return _ref.apply(this, arguments);\n };\n }());\n recreateFetchPool[nonce] = resultPromise;\n return _context2.abrupt(\"return\", resultPromise);\n\n case 6:\n if (!(typeof nonce === \"undefined\")) {\n _context2.next = 8;\n break;\n }\n\n return _context2.abrupt(\"return\", undefined);\n\n case 8:\n _context2.next = 10;\n return Promise.all(Object.values(recreateFetchPool));\n\n case 10:\n returnNonce = nonce;\n\n case 11:\n if (!pool[returnNonce]) {\n _context2.next = 17;\n break;\n }\n\n returnNonce = pool[returnNonce];\n\n if (!(pool[returnNonce] === nonce)) {\n _context2.next = 15;\n break;\n }\n\n return _context2.abrupt(\"break\", 17);\n\n case 15:\n _context2.next = 11;\n break;\n\n case 17:\n return _context2.abrupt(\"return\", Promise.resolve(returnNonce));\n\n case 18:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n return _nonceDeprecationPool.apply(this, arguments);\n}\n\nexport { nonceDeprecationPool };","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { RouteHttpVerb } from \".\";\n/**\n * Get the result of the `Response`. It also handles multiline responses, e. g.\n * a PHP `Notice:` message is output through a conflicting plugin:\n *\n * If you are using a verb like `DELETE` or `PUT` the response may be empty and this\n * function will return `undefined`.\n *\n * @see https://developer.mozilla.org/de/docs/Web/HTTP/Methods/DELETE\n */\n\nfunction parseResult(_x, _x2, _x3) {\n return _parseResult.apply(this, arguments);\n}\n\nfunction _parseResult() {\n _parseResult = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(url, result, method) {\n var cloneForFallback, body, lastError, _iterator, _step, line;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n cloneForFallback = result.clone();\n _context.prev = 1;\n _context.next = 4;\n return result.json();\n\n case 4:\n return _context.abrupt(\"return\", _context.sent);\n\n case 7:\n _context.prev = 7;\n _context.t0 = _context[\"catch\"](1);\n _context.next = 11;\n return cloneForFallback.text();\n\n case 11:\n body = _context.sent;\n\n if (!(body === \"\" && [RouteHttpVerb.DELETE, RouteHttpVerb.PUT].indexOf(method) > -1)) {\n _context.next = 14;\n break;\n }\n\n return _context.abrupt(\"return\", undefined);\n\n case 14:\n console.warn(\"The response of \".concat(url, \" contains unexpected JSON, try to resolve the JSON line by line...\"), {\n body: body\n });\n _iterator = _createForOfIteratorHelper(body.split(\"\\n\"));\n _context.prev = 16;\n\n _iterator.s();\n\n case 18:\n if ((_step = _iterator.n()).done) {\n _context.next = 30;\n break;\n }\n\n line = _step.value;\n\n if (!(line.startsWith(\"[\") || line.startsWith(\"{\"))) {\n _context.next = 28;\n break;\n }\n\n _context.prev = 21;\n return _context.abrupt(\"return\", JSON.parse(line));\n\n case 25:\n _context.prev = 25;\n _context.t1 = _context[\"catch\"](21);\n lastError = _context.t1;\n\n case 28:\n _context.next = 18;\n break;\n\n case 30:\n _context.next = 35;\n break;\n\n case 32:\n _context.prev = 32;\n _context.t2 = _context[\"catch\"](16);\n\n _iterator.e(_context.t2);\n\n case 35:\n _context.prev = 35;\n\n _iterator.f();\n\n return _context.finish(35);\n\n case 38:\n throw lastError;\n\n case 39:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[1, 7], [16, 32, 35, 38], [21, 25]]);\n }));\n return _parseResult.apply(this, arguments);\n}\n\nexport { parseResult };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { commonUrlBuilder, RouteHttpVerb } from \"./\";\nimport deepMerge from \"deepmerge\";\nimport Url from \"url-parse\";\nimport { parseResult, nonceDeprecationPool } from \".\";\nimport jsonFormData from \"json-form-data\";\nvar CONTENT_TYPE_JSON = \"application/json;charset=utf-8\"; // Fix: Return type of exported function has or is using name 'FormatOptions'\n// from external module \"/home/mg/vscode-workspace/devowl-wp/node_modules/@types/json-form-data/index\" but cannot be named.\n// type MultiPartOptions = Parameters<typeof jsonFormData>[1];\n\n/**\n * Build and execute a specific REST query.\n *\n * @see urlBuilder\n * @returns Result of REST API\n * @throws\n */\nfunction commonRequest(_x) {\n return _commonRequest.apply(this, arguments);\n}\n\nfunction _commonRequest() {\n _commonRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var location, options, routeRequest, params, _ref$settings, settings, _ref$multipart, multipart, _ref$sendRestNonce, sendRestNonce, url, apiUrl, allowBody, body, restNonce, hasRestNonce, init, apiUrlBuilt, result, responseJSON, replay, restRecreateNonceEndpoint, resultAny;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n location = _ref.location, options = _ref.options, routeRequest = _ref.request, params = _ref.params, _ref$settings = _ref.settings, settings = _ref$settings === void 0 ? {} : _ref$settings, _ref$multipart = _ref.multipart, multipart = _ref$multipart === void 0 ? false : _ref$multipart, _ref$sendRestNonce = _ref.sendRestNonce, sendRestNonce = _ref$sendRestNonce === void 0 ? true : _ref$sendRestNonce;\n url = commonUrlBuilder({\n location: location,\n params: params,\n nonce: false,\n options: options\n }); // Use global parameter (see https://developer.wordpress.org/rest-api/using-the-rest-api/global-parameters/)\n\n if ([\"wp-json/\", \"rest_route=\"].filter(function (s) {\n return url.indexOf(s) > -1;\n }).length > 0 && location.method && location.method !== RouteHttpVerb.GET) {\n settings.method = RouteHttpVerb.POST;\n } else {\n settings.method = location.method || RouteHttpVerb.GET;\n } // Request with GET/HEAD method cannot have body\n\n\n apiUrl = new Url(url, true);\n allowBody = [\"HEAD\", \"GET\"].indexOf(settings.method) === -1;\n\n if (!allowBody && routeRequest) {\n apiUrl.set(\"query\", deepMerge(apiUrl.query, routeRequest));\n } // Determine body\n\n\n if (allowBody) {\n if (multipart) {\n // Let's create a multipart request...\n body = jsonFormData(routeRequest, typeof multipart === \"boolean\" ? {} : multipart);\n } else {\n // It is a usual JSON request, we do not need to send a multipart request\n body = JSON.stringify(routeRequest);\n }\n } // Do the request\n\n\n _context.next = 9;\n return nonceDeprecationPool(options.restNonce);\n\n case 9:\n restNonce = _context.sent;\n hasRestNonce = typeof restNonce !== \"undefined\";\n init = deepMerge.all([settings, {\n headers: _objectSpread(_objectSpread(_objectSpread({}, typeof body === \"string\" ? {\n \"Content-Type\": CONTENT_TYPE_JSON\n } : {}), hasRestNonce && sendRestNonce ? {\n \"X-WP-Nonce\": restNonce\n } : {}), {}, {\n Accept: \"application/json, */*;q=0.1\"\n })\n }]);\n init.body = body; // Do not make body merge-able\n\n apiUrlBuilt = apiUrl.toString();\n _context.next = 16;\n return window.fetch(apiUrlBuilt, init);\n\n case 16:\n result = _context.sent;\n\n if (result.ok) {\n _context.next = 47;\n break;\n }\n\n responseJSON = undefined;\n replay = false;\n _context.prev = 20;\n _context.next = 23;\n return parseResult(apiUrlBuilt, result, location.method);\n\n case 23:\n responseJSON = _context.sent;\n\n // wordpress.com private site compatibility\n\n /* istanbul ignore if */\n if (responseJSON.code === \"private_site\" && result.status === 403 && hasRestNonce && !sendRestNonce) {\n replay = true;\n } // Refresh nonce automatically\n\n /* istanbul ignore if */\n\n\n if (!(responseJSON.code === \"rest_cookie_invalid_nonce\" && hasRestNonce)) {\n _context.next = 35;\n break;\n }\n\n restRecreateNonceEndpoint = options.restRecreateNonceEndpoint;\n _context.prev = 27;\n _context.next = 30;\n return nonceDeprecationPool(restNonce, restRecreateNonceEndpoint);\n\n case 30:\n replay = true;\n _context.next = 35;\n break;\n\n case 33:\n _context.prev = 33;\n _context.t0 = _context[\"catch\"](27);\n\n case 35:\n _context.next = 39;\n break;\n\n case 37:\n _context.prev = 37;\n _context.t1 = _context[\"catch\"](20);\n\n case 39:\n if (!replay) {\n _context.next = 43;\n break;\n }\n\n _context.next = 42;\n return commonRequest({\n location: location,\n options: options,\n multipart: multipart,\n params: params,\n request: routeRequest,\n sendRestNonce: true,\n settings: settings\n });\n\n case 42:\n return _context.abrupt(\"return\", _context.sent);\n\n case 43:\n // Set this request as failing so the endpoint is probably corrupt (see `corruptRestApi.tsx`)\n settings.method === RouteHttpVerb.GET && (window.detectCorruptRestApiFailed = (window.detectCorruptRestApiFailed || 0) + 1);\n resultAny = result;\n resultAny.responseJSON = responseJSON;\n throw resultAny;\n\n case 47:\n return _context.abrupt(\"return\", parseResult(apiUrlBuilt, result, location.method));\n\n case 48:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[20, 37], [27, 33]]);\n }));\n return _commonRequest.apply(this, arguments);\n}\n\nexport { commonRequest };","var RouteHttpVerb;\n\n(function (RouteHttpVerb) {\n RouteHttpVerb[\"GET\"] = \"GET\";\n RouteHttpVerb[\"POST\"] = \"POST\";\n RouteHttpVerb[\"PUT\"] = \"PUT\";\n RouteHttpVerb[\"DELETE\"] = \"DELETE\";\n RouteHttpVerb[\"PATCH\"] = \"PATCH\";\n})(RouteHttpVerb || (RouteHttpVerb = {}));\n\nexport { RouteHttpVerb };","var untrailingslashit = function untrailingslashit(str) {\n return str.endsWith(\"/\") || str.endsWith(\"\\\\\") ? untrailingslashit(str.slice(0, -1)) : str;\n};\n\nvar trailingslashit = function trailingslashit(str) {\n return \"\".concat(untrailingslashit(str), \"/\");\n}; // Allows to make an interface extension and make some properties optional (https://git.io/JeK6J)\n\n\n/**\n * You need to manually put the following code snippet in each of your entry points to enable\n * \"on the fly\" public path for chunks:\n *\n * ```\n * __webpack_public_path__ = getWebpackPublicPath(process.env);\n * ```\n *\n * @see https://webpack.js.org/guides/public-path/#on-the-fly\n */\nvar getWebpackPublicPath = function getWebpackPublicPath(env) {\n var options = window[env.slug.replace(/-([a-z])/g, function (g) {\n return g[1].toUpperCase();\n })];\n return \"\".concat(options.publicUrl).concat(options.chunkFolder, \"/\");\n};\n\nexport { untrailingslashit, trailingslashit, getWebpackPublicPath };","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport { getOtherOptionsFromWindow } from \"../utils\";\nimport { HTML_ATTRIBUTE_COOKIE_IDS, HTML_ATTRIBUTE_BLOCKER_ID, HTML_ATTRIBUTE_BY, OPT_IN_CONTENT_BLOCKER } from \"@devowl-wp/headless-content-unblocker\";\nimport { regExpPatternFromWildcardName } from \"@devowl-wp/cookie-consent-web-client\";\n/**\n * `window.consentApi.unblock`: Check if a given URL / string is blocked by a Content Blocker:\n *\n * - When a Content Blocker exists, the Promise is only resolved after given consent\n * - When no Content Blocker exists, the Promise is immediate resolved\n *\n * Example (ES5):\n * ```js\n * (window.consentApi && window.consentApi.unblock(\"player.vimeo.com\") || Promise.resolve()).then(function() {\n * console.log(\"Consent for Vimeo given, unlock content...!\");\n * });\n * ```\n *\n * Example (ES6, Babel, TS):\n * ```js\n * (window.consentApi?.unblock(\"player.vimeo.com\") || Promise.resolve()).then(() => {\n * console.log(\"Consent for Vimeo given, unlock content...!\");\n * });\n * ```\n *\n * @param url\n * @param ref Create a visual content blocker to a given HTML element\n */\n\nfunction unblock(url) {\n var ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document.createElement(\"div\");\n return new Promise(function (resolve) {\n // Find matching blocker\n var found;\n\n var _getOtherOptionsFromW = getOtherOptionsFromWindow(),\n blocker = _getOtherOptionsFromW.blocker;\n\n var isPseudoRef = !ref.parentElement;\n\n var _iterator = _createForOfIteratorHelper(blocker),\n _step;\n\n try {\n loop1: for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var row = _step.value;\n var hosts = row.hosts; // Check if host matches\n\n var _iterator2 = _createForOfIteratorHelper(hosts),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var host = _step2.value;\n var regexp = regExpPatternFromWildcardName(host);\n\n if (url.match(regexp)) {\n found = row;\n break loop1;\n }\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n if (found) {\n // Add attributes to DOM element so it can be consumed by `manipulateDom`\n ref.setAttribute(HTML_ATTRIBUTE_BY, \"cookies\");\n ref.setAttribute(HTML_ATTRIBUTE_COOKIE_IDS, found.cookies.join(\",\"));\n ref.setAttribute(HTML_ATTRIBUTE_BLOCKER_ID, found.id.toString());\n ref.addEventListener(OPT_IN_CONTENT_BLOCKER, function () {\n isPseudoRef && ref.remove();\n resolve();\n }); // Append blocking element to HTML DOM if not already exists\n\n if (isPseudoRef) {\n document.body.appendChild(ref);\n }\n } else {\n resolve();\n }\n });\n}\n\nexport { unblock };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { CookieConsentManager } from \"../apply\";\nimport { apply } from \"../apply\";\nimport { BANNER_PRE_DECISION_SHOW_EVENT } from \"../events\";\nimport { ready } from \"../utils\";\n\nfunction preDecisionGateway(_x, _x2) {\n return _preDecisionGateway.apply(this, arguments);\n}\n\nfunction _preDecisionGateway() {\n _preDecisionGateway = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(options, handler) {\n var show, useOptions, gateways, args, onIsDoNotTrack, onShowCookieBanner, _iterator, _step, gateway, result, _ret;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n show = true;\n useOptions = options instanceof CookieConsentManager ? options.getOptions() : options;\n gateways = handler.gateways, args = handler.args, onIsDoNotTrack = handler.onIsDoNotTrack, onShowCookieBanner = handler.onShowCookieBanner;\n _iterator = _createForOfIteratorHelper(gateways);\n _context.prev = 4;\n\n _iterator.s();\n\n case 6:\n if ((_step = _iterator.n()).done) {\n _context.next = 17;\n break;\n }\n\n gateway = _step.value;\n _context.next = 10;\n return gateway.apply(void 0, [useOptions].concat(_toConsumableArray(args)));\n\n case 10:\n result = _context.sent;\n\n if (!(result !== false)) {\n _context.next = 15;\n break;\n }\n\n _ret = function () {\n show = false;\n\n var applyCookiesWithOptions = function applyCookiesWithOptions(type) {\n return apply(_objectSpread({\n type: type\n }, useOptions));\n };\n\n if (result === \"all\") {\n applyCookiesWithOptions(\"all\");\n } else if (result === \"essentials\") {\n applyCookiesWithOptions(\"essentials\");\n } else if (result === \"dnt\") {\n onIsDoNotTrack(function () {\n return applyCookiesWithOptions(\"essentials\");\n });\n } else if (result === \"consent\") {\n // Apply cookies for the current user decision\n applyCookiesWithOptions(\"consent\");\n }\n\n return \"break\";\n }();\n\n if (!(_ret === \"break\")) {\n _context.next = 15;\n break;\n }\n\n return _context.abrupt(\"break\", 17);\n\n case 15:\n _context.next = 6;\n break;\n\n case 17:\n _context.next = 22;\n break;\n\n case 19:\n _context.prev = 19;\n _context.t0 = _context[\"catch\"](4);\n\n _iterator.e(_context.t0);\n\n case 22:\n _context.prev = 22;\n\n _iterator.f();\n\n return _context.finish(22);\n\n case 25:\n if (!show) {\n _context.next = 30;\n break;\n }\n\n onShowCookieBanner(); // Wait all events are initialized\n\n _context.next = 29;\n return ready();\n\n case 29:\n document.dispatchEvent(new CustomEvent(BANNER_PRE_DECISION_SHOW_EVENT, {\n detail: {}\n }));\n\n case 30:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[4, 19, 22, 25]]);\n }));\n return _preDecisionGateway.apply(this, arguments);\n}\n\nexport { preDecisionGateway };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { supportsCookies } from \"../utils\";\n/**\n * Does the current browser support cookies?\n */\n\nvar preDecisionGatewaySupportsCookies = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var supportsCookiesName;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n supportsCookiesName = _ref.supportsCookiesName;\n return _context.abrupt(\"return\", supportsCookies(supportsCookiesName) ? false : \"essentials\");\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function preDecisionGatewaySupportsCookies(_x) {\n return _ref2.apply(this, arguments);\n };\n}();\n\nexport { preDecisionGatewaySupportsCookies };","import isbot from \"isbot\";\n/**\n * Is the current browser a spider / crawler?\n */\n\nfunction isCrawler() {\n var _navigator = navigator,\n userAgent = _navigator.userAgent;\n\n if (userAgent) {\n // Lighthouse / Google PageSpeed isn't currently a bot (https://git.io/J3r5z)\n if (/chrome-lighthouse/i.test(userAgent)) {\n return false;\n }\n\n return isbot(userAgent);\n }\n\n return false;\n}\n\nexport { isCrawler };","/**\n * Let a `Promise` be rejected after a given amount of time.\n */\nfunction promiseTimeout(promise, ms) {\n return new Promise(function (resolve, reject) {\n promise.then(resolve, reject);\n var e = new Error(\"Timed out\");\n setTimeout(reject, ms, e);\n });\n}\n\nexport { promiseTimeout };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \"../decision\";\nimport { isCrawler, promiseTimeout } from \"../utils\";\n\n/**\n * Dynamically allow to get a predecision with a extra request to an external API.\n * If your server does not respond within a given timeout or with an error, it automatically\n * continues with the predecisions. Otherwise, the predecision of the response is used.\n */\nvar preDecisionGatewayDynamicRequest = function preDecisionGatewayDynamicRequest(request) {\n var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10000;\n var active = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var decisionCookieName, revisionHash, decision, revision, _yield$promiseTimeout, predecision;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n decisionCookieName = _ref.decisionCookieName, revisionHash = _ref.revisionHash;\n\n if (!(isCrawler() || !active)) {\n _context.next = 3;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 3:\n // Check if revision has changed, and probably access our dynamic predecision again\n decision = getUserDecision(decisionCookieName);\n\n if (!decision) {\n _context.next = 8;\n break;\n }\n\n revision = decision.revision;\n\n if (!(revisionHash === revision)) {\n _context.next = 8;\n break;\n }\n\n return _context.abrupt(\"return\", \"consent\");\n\n case 8:\n _context.prev = 8;\n _context.next = 11;\n return promiseTimeout(request(), timeout);\n\n case 11:\n _yield$promiseTimeout = _context.sent;\n predecision = _yield$promiseTimeout.predecision;\n return _context.abrupt(\"return\", predecision);\n\n case 16:\n _context.prev = 16;\n _context.t0 = _context[\"catch\"](8);\n return _context.abrupt(\"return\", false);\n\n case 19:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[8, 16]]);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\nexport { preDecisionGatewayDynamicRequest };","/**\n * Checks if the given browser is requesting \"Do Not Track\" header.\n *\n * @see https://dev.to/corbindavenport/how-to-correctly-check-for-do-not-track-with-javascript-135d\n */\nfunction isDoNotTrack() {\n try {\n var w = window;\n\n if (w.doNotTrack || w.navigator.doNotTrack || w.navigator.msDoNotTrack || \"msTrackingProtectionEnabled\" in w.external) {\n // The browser supports Do Not Track!\n if (w.doNotTrack == \"1\" || w.navigator.doNotTrack == \"yes\" || w.navigator.doNotTrack == \"1\" || w.navigator.msDoNotTrack == \"1\" || w.external.msTrackingProtectionEnabled()) {\n return true;\n }\n }\n } catch (e) {// Silence is golden.\n }\n\n return false;\n}\n\nexport { isDoNotTrack };","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \"../decision\";\nimport { isDoNotTrack } from \"../utils\";\n\n/**\n * When the user has \"Do not track\" enabled and is allowed to use, let's automatically\n * save the dialog without any action.\n */\nvar preDecisionGatewayIsDoNotTrack = function preDecisionGatewayIsDoNotTrack() {\n var active = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var decisionCookieName, groups, essentialGroupSlug, _groups$filter, _groups$filter2, essentialGroupObj, _iterator, _step, group, _iterator2, _step2, legalBasis;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n decisionCookieName = _ref.decisionCookieName, groups = _ref.groups, essentialGroupSlug = _ref.essentialGroupSlug;\n _groups$filter = groups.filter(function (_ref3) {\n var slug = _ref3.slug;\n return slug === essentialGroupSlug;\n }), _groups$filter2 = _slicedToArray(_groups$filter, 1), essentialGroupObj = _groups$filter2[0];\n\n if (!(getUserDecision(decisionCookieName) !== false || !active)) {\n _context.next = 4;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 4:\n // As soon we have a legitimate interest, we need to show the cookie banner\n _iterator = _createForOfIteratorHelper(groups);\n _context.prev = 5;\n\n _iterator.s();\n\n case 7:\n if ((_step = _iterator.n()).done) {\n _context.next = 29;\n break;\n }\n\n group = _step.value;\n\n if (!(group !== essentialGroupObj)) {\n _context.next = 27;\n break;\n }\n\n _iterator2 = _createForOfIteratorHelper(group.items);\n _context.prev = 11;\n\n _iterator2.s();\n\n case 13:\n if ((_step2 = _iterator2.n()).done) {\n _context.next = 19;\n break;\n }\n\n legalBasis = _step2.value.legalBasis;\n\n if (!(legalBasis === \"legitimate-interest\")) {\n _context.next = 17;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 17:\n _context.next = 13;\n break;\n\n case 19:\n _context.next = 24;\n break;\n\n case 21:\n _context.prev = 21;\n _context.t0 = _context[\"catch\"](11);\n\n _iterator2.e(_context.t0);\n\n case 24:\n _context.prev = 24;\n\n _iterator2.f();\n\n return _context.finish(24);\n\n case 27:\n _context.next = 7;\n break;\n\n case 29:\n _context.next = 34;\n break;\n\n case 31:\n _context.prev = 31;\n _context.t1 = _context[\"catch\"](5);\n\n _iterator.e(_context.t1);\n\n case 34:\n _context.prev = 34;\n\n _iterator.f();\n\n return _context.finish(34);\n\n case 37:\n return _context.abrupt(\"return\", isDoNotTrack() ? \"dnt\" : false);\n\n case 38:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[5, 31, 34, 37], [11, 21, 24, 27]]);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\nexport { preDecisionGatewayIsDoNotTrack };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \"../decision\";\n/**\n * Has the user already consent to the latest requested revision (hash)?\n */\n\nvar preDecisionGatewayUserConsent = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var decisionCookieName, revisionHash, decision, revision;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n decisionCookieName = _ref.decisionCookieName, revisionHash = _ref.revisionHash;\n decision = getUserDecision(decisionCookieName);\n\n if (!(decision === false)) {\n _context.next = 4;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 4:\n revision = decision.revision;\n return _context.abrupt(\"return\", revisionHash === revision ? \"consent\" : false);\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function preDecisionGatewayUserConsent(_x) {\n return _ref2.apply(this, arguments);\n };\n}();\n\nexport { preDecisionGatewayUserConsent };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport var locationRestConsentDynamicPredecisionGet = {\n path: \"/consent/dynamic-predecision\",\n method: RouteHttpVerb.GET\n};","/**\n * Checks if the given banner is not visible due to legal settings.\n */\nfunction isHiddenDueLegal(banner) {\n var _banner$legal = banner.legal,\n imprint = _banner$legal.imprint,\n imprintHide = _banner$legal.imprintHide,\n privacyPolicy = _banner$legal.privacyPolicy,\n privacyPolicyHide = _banner$legal.privacyPolicyHide,\n pageId = banner.pageId;\n return [imprintHide && +imprint, privacyPolicyHide && +privacyPolicy].filter(Boolean).indexOf(pageId) > -1;\n}\n\nexport { isHiddenDueLegal };","import { useCallback, useMemo } from \"react\";\nimport { BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER } from \"../..\";\n/**\n * Depending on the current screen, calculate the animation to use.\n *\n * Currently, we do not support animations on resize as we cannot calculate the\n * width of the overlay container as it does not exist on first render cycle of React.\n *\n * Drawback if animation only on mobile is enabled: if the window is first a mobile,\n * and the window gets resize it will reuse the animation on desktop again\n */\n\nfunction useBannerAnimation() {\n var clientWidth = useMemo(function () {\n return window.innerWidth;\n }, []);\n var isMobile = clientWidth < BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER; // Check if it is mobile Firefox, as it does not support `position:sticky;bottom:0;` and animations.\n // Effect: The buttons and footer are not visible.\n\n var isMobileFirefox = useMemo(function () {\n var userAgent = window.navigator.userAgent.toLowerCase();\n return [\"firefox\", \"gecko\", \"mobile\", \"android\"].map(function (term) {\n return userAgent.indexOf(term) > -1;\n }).filter(Boolean).length === 4;\n }, []);\n return useCallback(function (_ref) {\n var animationIn = _ref.animationIn,\n animationInOnlyMobile = _ref.animationInOnlyMobile,\n animationOut = _ref.animationOut,\n animationOutOnlyMobile = _ref.animationOutOnlyMobile;\n var useAnimationIn = animationInOnlyMobile ? isMobile ? animationIn : \"none\" : animationIn;\n var useAnimationOut = animationOutOnlyMobile ? isMobile ? animationOut : \"none\" : animationOut;\n\n if (isMobileFirefox) {\n useAnimationIn = \"none\";\n useAnimationOut = \"none\";\n }\n\n return {\n useAnimationIn: useAnimationIn,\n useAnimationOut: useAnimationOut\n };\n }, []);\n}\n\nexport { useBannerAnimation };","export var BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER = 700;\nexport * from \"./types\";\nexport * from \"./contexts\";\nexport * from \"./hooks\";\nexport * from \"./inlineStyles\";\nexport * from \"./utils\";\nexport * from \"./components\";\nexport * from \"./others\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { createTcfModel } from \"@devowl-wp/cookie-consent-web-client\";\n\nvar cancelEvent = function cancelEvent(e) {\n if (!e) {\n return;\n }\n\n e.preventDefault(); // Some themes (e.g. AKEA) do have listeners on each link separately and do a custom redirect\n\n e.stopPropagation();\n};\n\nfunction useBannerStateContextCallbacks(_ref) {\n var toggleOverlay = _ref.toggleOverlay,\n _revokeConsent = _ref.revokeConsent;\n\n var toggleWithActiveAction = function toggleWithActiveAction(setContextValue, type) {\n return setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeAction: type,\n individualPrivacyOpen: true,\n refreshSiteAfterSave: type === \"change\" ? 2000 : false\n }, toggleOverlay(state, true));\n });\n };\n\n return {\n openHistory: function openHistory(setContextValue) {\n toggleWithActiveAction(setContextValue, \"history\");\n cancelEvent(arguments.length <= 1 ? undefined : arguments[1]);\n },\n openBanner: function openBanner(setContextValue) {\n toggleWithActiveAction(setContextValue, \"change\");\n cancelEvent(arguments.length <= 1 ? undefined : arguments[1]);\n },\n revokeConsent: function revokeConsent(setContextValue) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var successMessage = args[0],\n e = args[1];\n setContextValue(function (state) {\n _revokeConsent(state).then(function () {\n successMessage && alert(successMessage); // Always reload (always wait 2s to ensure opt-out scripts are exeucted)\n // Fix iOS / Safari bug when we want to reload the page after a POST request\n\n setTimeout(function () {\n return window.location.reload();\n }, 2000);\n }); // Do not change anything\n\n\n return state;\n });\n cancelEvent(e);\n },\n updateTcfFilterBy: function updateTcfFilterBy(setContextValue) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n var newFilter = args[0];\n setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n tcfFilterBy: newFilter\n });\n });\n },\n updateIndividualPrivacyOpen: function updateIndividualPrivacyOpen(setContextValue) {\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n\n var opened = args[0];\n setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n individualPrivacyOpen: opened\n });\n });\n },\n updateGroupChecked: function updateGroupChecked(setContextValue) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n var id = args[0],\n checked = args[1];\n setContextValue(function (state) {\n var newConsent = JSON.parse(JSON.stringify(state.consent));\n\n if (checked) {\n newConsent.groups[id] = state.groups.filter(function (group) {\n return group.id === id;\n })[0].items.map(function (_ref2) {\n var id = _ref2.id;\n return id;\n });\n } else {\n delete newConsent.groups[id];\n }\n\n return _objectSpread(_objectSpread({}, state), {}, {\n consent: newConsent,\n didGroupFirstChange: true\n });\n });\n },\n updateCookieChecked: function updateCookieChecked(setContextValue) {\n for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {\n args[_key5 - 1] = arguments[_key5];\n }\n\n var groupId = args[0],\n id = args[1],\n checked = args[2];\n setContextValue(function (state) {\n var newConsent = JSON.parse(JSON.stringify(state.consent)); // Initially create \"selected\" cookies\n\n if (!newConsent.groups[groupId]) {\n newConsent.groups[groupId] = [];\n }\n\n var cookieIds = newConsent.groups[groupId];\n var indexOf = cookieIds.indexOf(id);\n\n if (checked && indexOf === -1) {\n cookieIds.push(id);\n } else if (!checked && indexOf > -1) {\n cookieIds.splice(indexOf, 1);\n } // Delete group entirely when no cookies selected\n\n\n if (!cookieIds.length) {\n delete newConsent.groups[groupId];\n }\n\n return _objectSpread(_objectSpread({}, state), {}, {\n consent: newConsent\n });\n });\n },\n onClose: function onClose(setContextValue) {\n setContextValue(function (state) {\n return _objectSpread(_objectSpread(_objectSpread({}, state), toggleOverlay(state, false)), {}, {\n // This should be set always by you again as it is one-time\n refreshSiteAfterSave: false\n });\n });\n },\n selectHistoryEntry: function selectHistoryEntry(setContextValue) {\n for (var _len6 = arguments.length, args = new Array(_len6 > 1 ? _len6 - 1 : 0), _key6 = 1; _key6 < _len6; _key6++) {\n args[_key6 - 1] = arguments[_key6];\n }\n\n var groups = args[0],\n consentGroups = args[1],\n tcf = args[2];\n setContextValue(function (state) {\n var additionalChanges = {\n // In case we previously used non-TCF functionality, do not show the TCF banner\n isTcf: !!tcf,\n tcf: null\n };\n\n if (process.env.IS_TCF === \"1\" && tcf) {\n Object.assign(additionalChanges, {\n tcf: \"gvl\" in tcf ? tcf : createTcfModel(tcf)\n });\n }\n\n return _objectSpread(_objectSpread({}, state), {}, {\n groups: groups,\n consent: _objectSpread(_objectSpread({}, state.consent), {}, {\n groups: consentGroups\n })\n }, additionalChanges);\n });\n }\n };\n}\n\nexport { useBannerStateContextCallbacks };","import { useEffect } from \"react\";\nimport { parents } from \"@devowl-wp/headless-content-unblocker\";\nimport { matchingSelector } from \"@devowl-wp/resolve-none-computed-style\";\nimport { useBanner } from \"../..\";\nvar HREF_MATCHER = '[href^=\"#consent-\"]';\n/**\n * Listen to anchor links and execute the banner action:\n *\n * ```\n * #consent-change\n * #consent-history\n * #consent-revoke\n * ```\n */\n\nfunction useBannerActionLinks() {\n var _useBanner = useBanner(),\n openBanner = _useBanner.openBanner,\n openHistory = _useBanner.openHistory,\n revokeConsent = _useBanner.revokeConsent;\n\n useEffect(function () {\n var handleType = function handleType(type, successMessage, e) {\n if (!openBanner) {\n // `useBannerActions` is not yet initialized.\n return;\n }\n\n switch (type) {\n case \"change\":\n openBanner(e);\n break;\n\n case \"history\":\n openHistory(e);\n break;\n\n case \"revoke\":\n revokeConsent(successMessage, e);\n break;\n\n default:\n break;\n }\n };\n\n var eventListenerDocumentClick = function eventListenerDocumentClick(e) {\n if (!openBanner) {\n // `useBannerActions` is not yet initialized.\n return;\n } // Check if one of the parents has a valid hash link\n\n\n var element = e.target;\n parents(element, HREF_MATCHER).concat(matchingSelector(element, HREF_MATCHER) ? [element] : []).forEach(function (parent) {\n handleType(parent.getAttribute(\"href\").slice(9), parent.getAttribute(\"data-success-message\"), e);\n }); // @deprecated Old behavior with simple links like `#change`\n\n if (matchingSelector(element, \".rcb-sc-link\")) {\n handleType(element.getAttribute(\"href\").slice(1), element.getAttribute(\"data-success-message\"), e);\n }\n };\n\n var eventListenerHashChange = function eventListenerHashChange() {\n var hash = window.location.hash;\n\n if (hash.startsWith(\"#consent-\")) {\n handleType(hash.substring(9), undefined, undefined);\n }\n };\n\n window.addEventListener(\"hashchange\", eventListenerHashChange);\n document.addEventListener(\"click\", eventListenerDocumentClick, true);\n return function () {\n window.removeEventListener(\"hashchange\", eventListenerHashChange);\n document.removeEventListener(\"click\", eventListenerDocumentClick, true);\n };\n }, [openBanner, openHistory, revokeConsent]);\n}\n\nexport { useBannerActionLinks };","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useEffect, useState } from \"react\";\n\nfunction useResettableAnimation(animation, duration) {\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n i = _useState2[0],\n setI = _useState2[1];\n\n var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n j = _useState4[0],\n setJ = _useState4[1];\n\n var _useState5 = useState(animation),\n _useState6 = _slicedToArray(_useState5, 2),\n stateAnimation = _useState6[0],\n setStateAnimation = _useState6[1];\n\n var _useState7 = useState(undefined),\n _useState8 = _slicedToArray(_useState7, 2),\n stateAnimationReset = _useState8[0],\n setStateAnimationReset = _useState8[1];\n\n var _useState9 = useState(duration),\n _useState10 = _slicedToArray(_useState9, 2),\n stateDuration = _useState10[0],\n setStateDuration = _useState10[1];\n\n var _useState11 = useState(undefined),\n _useState12 = _slicedToArray(_useState11, 2),\n stateDurationReset = _useState12[0],\n setStateDurationReset = _useState12[1]; // Reset animation, save it temporary so when changing it, it needs to be to \"none\" and then the needed one\n\n\n useEffect(function () {\n // Avoid first rendering as the first is animated at mount-time\n if (i > 0) {\n if (animation === \"none\") {\n setStateAnimation(animation);\n } else {\n setStateAnimation(\"none\");\n setStateAnimationReset(animation);\n }\n }\n\n setI(i + 1);\n }, [animation]);\n useEffect(function () {\n // Avoid first rendering as the first is animated at mount-time\n if (j > 0) {\n if (duration === 0) {\n setStateDuration(duration);\n } else {\n setStateDuration(0);\n setStateDurationReset(duration);\n setStateAnimation(\"none\");\n setStateAnimationReset(animation);\n }\n }\n\n setJ(j + 1);\n }, [duration]);\n useEffect(function () {\n if (stateAnimationReset !== undefined) {\n setStateAnimation(stateAnimationReset);\n setStateAnimationReset(undefined);\n }\n }, [stateAnimationReset]);\n useEffect(function () {\n if (stateDurationReset !== undefined) {\n setStateDuration(stateDurationReset);\n setStateDurationReset(undefined);\n }\n }, [stateDurationReset]);\n return [stateAnimation, stateDuration];\n}\n\nexport { useResettableAnimation };","/**\n * @see https://stackoverflow.com/a/5624139/5506547\n * @param hex\n */\nfunction hexToRgb(hex) {\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16)\n } : null;\n}\n\nexport { hexToRgb };","import { hexToRgb } from \".\";\n\n/**\n * @param hex\n * @param alpha 0 - 100\n */\nfunction calculateRgba(hex, alpha) {\n var _hexToRgb = hexToRgb(hex),\n r = _hexToRgb.r,\n g = _hexToRgb.g,\n b = _hexToRgb.b;\n\n return \"rgba(\".concat(r, \", \").concat(g, \", \").concat(b, \", \").concat(alpha / 100, \")\");\n}\n\nexport { calculateRgba };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useEffect } from \"react\";\n\nfunction getAnimationRelatedState(_ref) {\n var isVisible = _ref.isVisible,\n animationIn = _ref.animationIn,\n animationOut = _ref.animationOut,\n animationInDuration = _ref.animationInDuration,\n animationOutDuration = _ref.animationOutDuration,\n animationInDelay = _ref.animationInDelay,\n animationOutDelay = _ref.animationOutDelay;\n return isVisible ? {\n animation: animationIn,\n duration: animationInDuration,\n delay: animationInDelay\n } : {\n animation: animationOut,\n duration: animationOutDuration,\n delay: animationOutDelay\n };\n}\n/**\n * Ported from https://www.npmjs.com/package/react-animated-css due to high bundle size.\n */\n\n\nvar AnimatedCss = function AnimatedCss(_ref2) {\n var _ref2$animateOnMount = _ref2.animateOnMount,\n animateOnMount = _ref2$animateOnMount === void 0 ? true : _ref2$animateOnMount,\n _ref2$isVisible = _ref2.isVisible,\n isVisible = _ref2$isVisible === void 0 ? true : _ref2$isVisible,\n _ref2$animationIn = _ref2.animationIn,\n animationIn = _ref2$animationIn === void 0 ? \"fadeIn\" : _ref2$animationIn,\n _ref2$animationOut = _ref2.animationOut,\n animationOut = _ref2$animationOut === void 0 ? \"fadeOut\" : _ref2$animationOut,\n _ref2$animationInDela = _ref2.animationInDelay,\n animationInDelay = _ref2$animationInDela === void 0 ? 0 : _ref2$animationInDela,\n _ref2$animationOutDel = _ref2.animationOutDelay,\n animationOutDelay = _ref2$animationOutDel === void 0 ? 0 : _ref2$animationOutDel,\n _ref2$animationInDura = _ref2.animationInDuration,\n animationInDuration = _ref2$animationInDura === void 0 ? 1000 : _ref2$animationInDura,\n _ref2$animationOutDur = _ref2.animationOutDuration,\n animationOutDuration = _ref2$animationOutDur === void 0 ? 1000 : _ref2$animationOutDur,\n _ref2$className = _ref2.className,\n className = _ref2$className === void 0 ? \"\" : _ref2$className,\n _ref2$style = _ref2.style,\n style = _ref2$style === void 0 ? {} : _ref2$style,\n children = _ref2.children;\n\n var _useState = useState(animateOnMount ? getAnimationRelatedState({\n isVisible: isVisible,\n animationIn: animationIn,\n animationOut: animationOut,\n animationInDelay: animationInDelay,\n animationOutDelay: animationOutDelay,\n animationInDuration: animationInDuration,\n animationOutDuration: animationOutDuration\n }) : {\n animation: \"\",\n delay: undefined,\n duration: 0\n }),\n _useState2 = _slicedToArray(_useState, 2),\n _useState2$ = _useState2[0],\n animation = _useState2$.animation,\n duration = _useState2$.duration,\n delay = _useState2$.delay,\n setAnimationRelatedState = _useState2[1];\n\n useEffect(function () {\n setAnimationRelatedState(getAnimationRelatedState({\n isVisible: isVisible,\n animationIn: animationIn,\n animationOut: animationOut,\n animationInDelay: animationInDelay,\n animationOutDelay: animationOutDelay,\n animationInDuration: animationInDuration,\n animationOutDuration: animationOutDuration\n }));\n }, [isVisible, animationIn, animationOut, animationInDelay, animationOutDelay, animationInDuration, animationOutDuration]);\n var classes = \"animate__animated animate__\".concat(animation, \" \").concat(className);\n var backwardStyle = !animation ? {\n opacity: isVisible ? 1 : 0,\n transition: \"opacity \".concat(delay, \"ms\")\n } : {};\n return h(\"div\", {\n className: classes,\n style: _objectSpread(_objectSpread({\n animationDelay: \"\".concat(delay, \"ms\"),\n animationDuration: \"\".concat(duration, \"ms\"),\n pointerEvents: isVisible ? \"all\" : \"none\"\n }, style), backwardStyle)\n }, children);\n};\n\nexport { AnimatedCss };","import { useEffect } from \"react\";\nimport { useBanner } from \"../contexts\";\nimport { usePlainCss } from \".\";\n/**\n * Pass an HTML refs and we will provide a root stylesheet with the height dimensions and variables\n * with the calculated height. This is needed as we need to do some positioning of header and footer.\n */\n\nfunction useRenderedHeightsAsCssVars(element, name) {\n var _useBanner = useBanner(),\n pageRequestUuid4 = _useBanner.pageRequestUuid4; // We do directly modify the inline CSS as we do not want to trigger a rerender for the complete banner content\n\n\n var cssId = usePlainCss(\"\", \"useRenderedHeightsAsCssVars-\".concat(name));\n var cssElement = document.getElementById(cssId);\n useEffect(function () {\n var previousHeight = 0;\n\n var recalculate = function recalculate() {\n var currentHeight = element.getBoundingClientRect().height;\n\n if (previousHeight !== currentHeight) {\n previousHeight = currentHeight;\n cssElement.innerHTML = \"#\".concat(pageRequestUuid4, \"{--rendered-height-\").concat(name, \": \").concat(Math.floor(currentHeight), \"px;--rendered-height-raw-\").concat(name, \": \").concat(currentHeight, \"px}\");\n }\n };\n\n if (!element) {\n return function () {// Silence is golden.\n };\n } // Support animations\n\n\n var animateContainer = document.querySelector(\"#\".concat(pageRequestUuid4, \" div[class*=\\\"animate__\\\"]\"));\n animateContainer.addEventListener(\"animationend\", recalculate);\n\n if (window.ResizeObserver) {\n var ro = new ResizeObserver(recalculate);\n ro.observe(element);\n return function () {\n ro.disconnect();\n animateContainer.removeEventListener(\"animationend\", recalculate);\n };\n } else {\n var interval = setInterval(recalculate, 150);\n return function () {\n clearInterval(interval);\n animateContainer.removeEventListener(\"animationend\", recalculate);\n };\n }\n }, [element, name]);\n}\n\nexport { useRenderedHeightsAsCssVars };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport { useBanner } from \"../..\";\nimport { useCallback } from \"react\";\n/**\n * Provide callbacks for all the available button types in our cookie banner:\n *\n * - Accept all\n * - Continue without consent (accept essentials)\n * - Save custom choices (no changes to the current selected groups and services)\n * - Change individual privacy preferences\n */\n\nfunction useBannerButtonCallbacks() {\n var _useBanner = useBanner(),\n individualPrivacyOpen = _useBanner.individualPrivacyOpen,\n onSave = _useBanner.onSave,\n updateGroupChecked = _useBanner.updateGroupChecked,\n updateCookieChecked = _useBanner.updateCookieChecked,\n groups = _useBanner.groups,\n essentialGroup = _useBanner.essentialGroup,\n updateIndividualPrivacyOpen = _useBanner.updateIndividualPrivacyOpen,\n activeAction = _useBanner.activeAction,\n onClose = _useBanner.onClose;\n\n var buttonClickedAll = individualPrivacyOpen ? \"ind_all\" : \"main_all\";\n var buttonClickedEssentials = individualPrivacyOpen ? \"ind_essential\" : \"main_essential\";\n var buttonClickedCloseIcon = individualPrivacyOpen ? \"ind_close_icon\" : \"main_close_icon\";\n var buttonClickedCustom = individualPrivacyOpen ? \"ind_custom\" : \"main_custom\";\n var result = {\n buttonClickedAll: buttonClickedAll,\n buttonClickedEssentials: buttonClickedEssentials,\n buttonClickedCloseIcon: buttonClickedCloseIcon,\n buttonClickedCustom: buttonClickedCustom,\n acceptAll: useCallback(function () {\n groups.forEach(function (g) {\n return updateGroupChecked(g.id, true);\n });\n onSave(false, buttonClickedAll);\n }, [buttonClickedAll]),\n\n /**\n * This includes the complete \"Essential\" group + legal basis = legitimate interests.\n */\n acceptEssentials: useCallback(function () {\n var isCloseIcon = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n groups.forEach(function (_ref) {\n var slug = _ref.slug,\n id = _ref.id,\n items = _ref.items;\n\n if (slug === essentialGroup) {\n updateGroupChecked(id, true);\n } else {\n var _iterator = _createForOfIteratorHelper(items),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var _step$value = _step.value,\n legalBasis = _step$value.legalBasis,\n cookieId = _step$value.id;\n updateCookieChecked(id, cookieId, legalBasis === \"legitimate-interest\");\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n });\n onSave(false, isCloseIcon ? buttonClickedCloseIcon : buttonClickedEssentials);\n }, [buttonClickedEssentials]),\n acceptIndividual: useCallback(function () {\n return onSave(false, buttonClickedCustom);\n }, [buttonClickedCustom]),\n openIndividualPrivacy: useCallback(function () {\n updateIndividualPrivacyOpen(true);\n }, [updateIndividualPrivacyOpen])\n };\n return _objectSpread(_objectSpread({}, result), {}, {\n closeIcon: useCallback(function () {\n if (!activeAction) {\n // If we do not have yet a consent and it shows the banner for the first time,\n // the close icon is equivalent to \"Continue without consent\"\n result.acceptEssentials(true);\n } else {\n onClose();\n }\n }, [activeAction, onClose, result.acceptEssentials])\n });\n}\n\nexport { useBannerButtonCallbacks };","import _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useEffect } from \"react\";\nimport { createPortal } from \"react-dom\";\n/**\n * Portals provide a first-class way to render children into a DOM node that exists outside the DOM hierarchy of the parent component.\n *\n * @see https://reactjs.org/docs/portals.html\n */\n\nvar Portal = function Portal(_ref) {\n var children = _ref.children,\n className = _ref.className,\n _ref$tag = _ref.tag,\n tag = _ref$tag === void 0 ? \"div\" : _ref$tag,\n renderInContainer = _ref.renderInContainer;\n\n var _useState = useState(function () {\n var el = document.createElement(tag);\n className && el.classList.add(className);\n return el;\n }),\n _useState2 = _slicedToArray(_useState, 1),\n renderIn = _useState2[0]; // Append container to `body`\n\n\n useEffect(function () {\n document.body.appendChild(renderIn);\n return function () {\n document.body.removeChild(renderIn);\n };\n }, []);\n return /*#__PURE__*/createPortal(children, renderInContainer || renderIn);\n};\n\nexport { Portal };","import { useMemo, useRef, Fragment } from \"react\";\nimport { useRect } from \"@reach/rect\";\nimport { usePlainCss } from \"../hooks\";\nimport { Portal, Tooltip } from \".\";\nvar counter = 0;\n/**\n * A portaled close icon creates a close icon rendered to a given container. This allows\n * you to put the close icon on the top right corner of an `overflow:hidden` container and\n * the tooltip gets rendered correctly.\n */\n\nvar CloseIcon = function CloseIcon(_ref) {\n var width = _ref.width,\n color = _ref.color,\n tooltipText = _ref.tooltipText,\n framed = _ref.framed,\n renderInContainer = _ref.renderInContainer,\n tooltipAlways = _ref.tooltipAlways,\n onClick = _ref.onClick,\n _ref$thickness = _ref.thickness,\n thickness = _ref$thickness === void 0 ? 1 : _ref$thickness;\n var idCloseIconNotPortaled = useMemo(function () {\n return \"react-close-icon-\".concat((counter++).toString(36));\n }, []);\n var idCloseIconPortaled = useMemo(function () {\n return \"react-close-icon-\".concat((counter++).toString(36));\n }, []);\n /**\n * Why two containers for a simple close icon? I need to explain something technical here.\n * Our complete banner/dialog is tainted with `overflow:hidden` due to flickering effects\n * with animate.css etc. We will now create an invisible element with the placeholder,\n * we will then read its positioning (rect) and generate the visible close icon based on this position.\n */\n\n var idCloseIconPlaceholder = useMemo(function () {\n return \"react-close-icon-\".concat((counter++).toString(36));\n }, []);\n var ref = useRef();\n var rect = useRect(ref);\n usePlainCss(\"#\".concat(idCloseIconPlaceholder, \", #\").concat(idCloseIconNotPortaled, \" {\\n position: absolute;\\n top: 50%;\\n right: 0;\\n margin-top: calc(\").concat(width, \"px / 2 * -1);\\n display: block;\\n width: \").concat(width, \"px;\\n height: \").concat(width, \"px; \\n pointer-events: none;\\n}\\n\\n#\").concat(idCloseIconNotPortaled, \" {\\n position: absolute !important;\\n}\\n\\n#\").concat(idCloseIconNotPortaled, \", #\").concat(idCloseIconPortaled, \" {\\n cursor: pointer;\\n pointer-events: all;\\n \").concat(framed ? \"outline: rgb(255, 94, 94) solid 5px;\" : \"\", \"\\n}\\n\\n#\").concat(idCloseIconPortaled, \" {\\n position: fixed !important;\\n \").concat(rect ? \"top: \".concat(rect.y, \"px;left: \").concat(rect.x, \"px;display:block;\") : \"display:none;\", \"\\n width: \").concat(width, \"px;\\n height: \").concat(width, \"px;\\n z-index: 99;\\n}\\n#\").concat(idCloseIconPortaled, \":after, #\").concat(idCloseIconNotPortaled, \":after {\\n width: auto !important;\\n white-space: nowrap !important;\\n}\\n#\").concat(idCloseIconPortaled, \">span:before, #\").concat(idCloseIconPortaled, \">span:after,\\n#\").concat(idCloseIconNotPortaled, \">span:before, #\").concat(idCloseIconNotPortaled, \">span:after {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n width: \").concat(thickness, \"px;\\n height: \").concat(width, \"px;\\n background-color: \").concat(color, \";\\n transform: rotate(45deg) translate(-50%, -50%);\\n transform-origin: top left;\\n transition: all 420ms;\\n content: '';\\n opacity: 0.5;\\n pointer-events: none;\\n}\\n#\").concat(idCloseIconPortaled, \">span:after,\\n#\").concat(idCloseIconNotPortaled, \">span:after {\\n transform: rotate(-45deg) translate(-50%, -50%);\\n}\\n#\").concat(idCloseIconPortaled, \">span:hover:before, #\").concat(idCloseIconPortaled, \">span:hover:after,\\n#\").concat(idCloseIconNotPortaled, \">span:hover:before, #\").concat(idCloseIconNotPortaled, \">span:hover:after {\\n opacity: 1;\\n width: \").concat(thickness + 1, \"px;\\n}\"));\n return renderInContainer ? h(Fragment, null, h(\"div\", {\n id: idCloseIconPlaceholder,\n ref: ref\n }), (rect === null || rect === void 0 ? void 0 : rect.y) > 0 && h(Portal, {\n renderInContainer: renderInContainer\n }, h(Tooltip, {\n title: tooltipText,\n id: idCloseIconPortaled,\n onClick: onClick,\n position: rect.y > 50 ? \"top-left\" : \"left\",\n always: tooltipAlways\n }, h(\"span\", null)))) : h(Tooltip, {\n title: tooltipText,\n id: idCloseIconNotPortaled,\n onClick: onClick,\n position: \"top-left\",\n always: tooltipAlways\n }, h(\"span\", null));\n};\n\nexport { CloseIcon };","import { useBanner, useBannerButtonCallbacks, scaleMobile, CloseIcon, BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER } from \"../../..\";\n\nvar BannerCloseIcon = function BannerCloseIcon() {\n var _useBanner = useBanner(),\n _useBanner$headerDesi = _useBanner.headerDesign,\n fontSize = _useBanner$headerDesi.fontSize,\n fontColor = _useBanner$headerDesi.fontColor,\n acceptEssentials = _useBanner.texts.acceptEssentials,\n mobile = _useBanner.mobile,\n activeAction = _useBanner.activeAction,\n pageRequestUuid4 = _useBanner.pageRequestUuid4,\n _useBanner$i18n = _useBanner.i18n,\n close = _useBanner$i18n.close,\n closeWithoutSaving = _useBanner$i18n.closeWithoutSaving,\n _useBanner$buttonClic = _useBanner.buttonClicked,\n buttonClicked = _useBanner$buttonClic === void 0 ? \"\" : _useBanner$buttonClic;\n\n var _useBannerButtonCallb = useBannerButtonCallbacks(),\n buttonClickedCloseIcon = _useBannerButtonCallb.buttonClickedCloseIcon,\n closeIcon = _useBannerButtonCallb.closeIcon;\n\n var container = document.getElementById(pageRequestUuid4);\n return h(CloseIcon, {\n width: scaleMobile(mobile, pageRequestUuid4, fontSize),\n color: fontColor,\n tooltipText: activeAction ? activeAction === \"change\" ? closeWithoutSaving : close : acceptEssentials,\n tooltipAlways: (container === null || container === void 0 ? void 0 : container.clientWidth) < BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER,\n framed: buttonClicked === buttonClickedCloseIcon,\n renderInContainer: container,\n onClick: closeIcon\n });\n};\n\nexport { BannerCloseIcon };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { useBanner, bannerHeaderInlineStyleContainer, bannerHeaderInlineStyle, bannerHeaderInlineStyleLogo, commonInlineStyleHeaderHeadline, BannerCloseIcon } from \"../../..\";\nimport { forwardRef } from \"react\"; // eslint-disable-next-line react/display-name\n\nvar BannerHeader = /*#__PURE__*/forwardRef(function (_, ref) {\n var banner = useBanner();\n var _banner$headerDesign = banner.headerDesign,\n logo = _banner$headerDesign.logo,\n logoRetina = _banner$headerDesign.logoRetina,\n showCloseIcon = banner.decision.showCloseIcon,\n headline = banner.texts.headline,\n activeAction = banner.activeAction,\n individualPrivacyOpen = banner.individualPrivacyOpen,\n individualTexts = banner.individualTexts,\n headerTitlePrivacyPolicyHistory = banner.i18n.headerTitlePrivacyPolicyHistory; // Calculate logo\n\n var useRetina = logoRetina && !(logo !== null && logo !== void 0 && logo.endsWith(\".svg\")) && window.devicePixelRatio > 1;\n var useLogo = useRetina ? logoRetina : logo; // Calculate headline\n\n var useHeadline = individualPrivacyOpen ? activeAction === \"history\" ? headerTitlePrivacyPolicyHistory : individualTexts.headline : headline;\n return h(\"div\", _extends({\n ref: ref\n }, bannerHeaderInlineStyleContainer(banner)), h(\"div\", bannerHeaderInlineStyle(banner), !!useLogo && h(\"img\", _extends({\n alt: \"\",\n src: useLogo\n }, bannerHeaderInlineStyleLogo(banner, useRetina))), !!useHeadline && h(\"div\", commonInlineStyleHeaderHeadline(banner, false), useHeadline), (!!showCloseIcon || !!activeAction) && h(BannerCloseIcon, null)));\n});\nexport { BannerHeader };","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport { scaleMobile } from \"../..\";\n\nfunction bannerHeaderInlineStyleContainer(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n dialogBorderRadius = _ref$layout.dialogBorderRadius,\n _ref$design = _ref.design,\n borderWidth = _ref$design.borderWidth,\n borderColor = _ref$design.borderColor,\n restDesign = _objectWithoutProperties(_ref$design, [\"borderWidth\", \"borderColor\"]),\n _ref$headerDesign = _ref.headerDesign,\n inheritBg = _ref$headerDesign.inheritBg,\n bg = _ref$headerDesign.bg,\n padding = _ref$headerDesign.padding,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n\n var useType = scaleMobile(mobile, pageRequestUuid4, type, \"banner\");\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, borderWidth);\n var style = {\n padding: scaleMobile(mobile, pageRequestUuid4, padding, undefined, true).map(function (p) {\n return \"\".concat(p, \"px\");\n }).join(\" \"),\n background: inheritBg ? restDesign.bg : bg,\n borderRadius: useType === \"dialog\" ? \"\".concat(dialogBorderRadius, \"px \").concat(dialogBorderRadius, \"px 0 0\") : undefined,\n position: \"sticky\",\n zIndex: 9,\n top: 0\n };\n\n if (useType === \"dialog\" && useBorderWidth > 0) {\n style.borderTop = \"\".concat(useBorderWidth, \"px solid \").concat(borderColor);\n style.borderLeft = style.borderTop;\n style.borderRight = style.borderTop;\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-header-container\",\n style: style\n };\n}\n\nexport { bannerHeaderInlineStyleContainer };","import _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport { scaleMobile } from \"../..\";\n\nfunction bannerHeaderInlineStyle(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n bannerMaxWidth = _ref$layout.bannerMaxWidth,\n textAlign = _ref.design.textAlign,\n _ref$headerDesign = _ref.headerDesign,\n inheritTextAlign = _ref$headerDesign.inheritTextAlign,\n logo = _ref$headerDesign.logo,\n logoPosition = _ref$headerDesign.logoPosition,\n restHeaderDesign = _objectWithoutProperties(_ref$headerDesign, [\"inheritTextAlign\", \"logo\", \"logoPosition\"]),\n headline = _ref.texts.headline,\n individualLayout = _ref.individualLayout,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4,\n individualPrivacyOpen = _ref.individualPrivacyOpen;\n\n var useTextAlign = inheritTextAlign ? textAlign : restHeaderDesign.textAlign;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-header\",\n style: {\n transition: \"width 500ms, max-width 500ms\",\n maxWidth: scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"banner\" ? +(individualPrivacyOpen && !individualLayout.inheritBannerMaxWidth ? individualLayout.bannerMaxWidth : bannerMaxWidth) : undefined,\n margin: \"auto\",\n display: \"flex\",\n justifyContent: useTextAlign === \"center\" ? \"center\" : useTextAlign === \"right\" ? \"flex-end\" : undefined,\n textAlign: useTextAlign,\n alignItems: \"center\",\n position: \"relative\",\n flexDirection: logo && headline ? logoPosition === \"left\" ? \"row\" : logoPosition === \"right\" ? \"row-reverse\" : \"column\" : undefined\n }\n };\n}\n\nexport { bannerHeaderInlineStyle };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { scaleMobile } from \"../..\";\n\nfunction bannerHeaderInlineStyleLogo(_ref, isRetina) {\n var _ref$headerDesign = _ref.headerDesign,\n logoMaxHeight = _ref$headerDesign.logoMaxHeight,\n logoMargin = _ref$headerDesign.logoMargin,\n logoFitDim = _ref$headerDesign.logoFitDim,\n logoRetinaFitDim = _ref$headerDesign.logoRetinaFitDim,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useFitDim = isRetina ? logoRetinaFitDim : logoFitDim;\n var dimStyle = useFitDim ? {\n width: useFitDim[0],\n height: useFitDim[1]\n } : {\n width: \"auto\",\n height: scaleMobile(mobile, pageRequestUuid4, +logoMaxHeight)\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-logo\",\n style: _objectSpread(_objectSpread({}, dimStyle), {}, {\n margin: scaleMobile(mobile, pageRequestUuid4, logoMargin).map(function (m) {\n return \"\".concat(m, \"px\");\n }).join(\" \") //[logoPosition === \"left\" ? \"marginRight\" : \"marginLeft\"]: logoPosition === \"above\" ? undefined : 15,\n //marginBottom: logoPosition === \"above\" ? 5 : undefined\n\n })\n };\n}\n\nexport { bannerHeaderInlineStyleLogo };","import { useBanner, bannerGroupsInlineStyleTitle, bannerGroupsInlineStyleDescription } from \"../../..\";\n\nvar BannerGroupSectionTitle = function BannerGroupSectionTitle(_ref) {\n var title = _ref.title,\n children = _ref.children;\n var banner = useBanner();\n return h(\"div\", bannerGroupsInlineStyleTitle(banner), title, children && h(\"div\", bannerGroupsInlineStyleDescription(banner), children));\n};\n\nexport { BannerGroupSectionTitle };","import { scaleMobile } from \"../..\";\n\nfunction bannerGroupsInlineStyleTitle(_ref) {\n var _ref$group = _ref.group,\n headlineFontSize = _ref$group.headlineFontSize,\n headlineFontColor = _ref$group.headlineFontColor,\n headlineFontWeight = _ref$group.headlineFontWeight,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-group\",\n style: {\n color: headlineFontColor,\n fontSize: scaleMobile(mobile, pageRequestUuid4, headlineFontSize),\n fontWeight: headlineFontWeight,\n textAlign: \"left\"\n }\n };\n}\n\nexport { bannerGroupsInlineStyleTitle };","import { scaleMobile } from \"../..\";\n\nfunction bannerGroupsInlineStyleDescription(_ref) {\n var fontWeight = _ref.design.fontWeight,\n _ref$group = _ref.group,\n descriptionFontColor = _ref$group.descriptionFontColor,\n descriptionFontSize = _ref$group.descriptionFontSize,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-group-description\",\n style: {\n color: descriptionFontColor,\n fontSize: scaleMobile(mobile, pageRequestUuid4, +descriptionFontSize),\n fontWeight: fontWeight,\n marginTop: 5\n }\n };\n}\n\nexport { bannerGroupsInlineStyleDescription };","import { useCallback } from \"react\";\nimport { useBanner, Cookie } from \"../../..\";\n\nvar BannerCookie = function BannerCookie(_ref) {\n var _consent$groups;\n\n var group = _ref.group,\n cookie = _ref.cookie;\n var id = cookie.id;\n var banner = useBanner();\n var consent = banner.consent,\n activeAction = banner.activeAction,\n essentialGroup = banner.essentialGroup;\n var isEssentialGroup = essentialGroup === group.slug;\n var isDisabled = isEssentialGroup || activeAction === \"history\";\n var isChecked = isEssentialGroup || (((_consent$groups = consent.groups) === null || _consent$groups === void 0 ? void 0 : _consent$groups[group.id]) || []).some(function (c) {\n return c === id;\n });\n var handleCheckbox = useCallback(function () {\n return !isDisabled && banner.updateCookieChecked(group.id, id, !isChecked);\n }, [isDisabled, banner, group, id, isChecked]);\n return h(Cookie, {\n cookie: cookie,\n propertyListProps: {\n isEssentialGroup: isEssentialGroup\n },\n checked: isChecked,\n disabled: isDisabled,\n onToggleCheck: handleCheckbox\n });\n};\n\nexport { BannerCookie };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useLayoutEffect, Fragment, useCallback } from \"react\"; // eslint-disable-next-line import/no-extraneous-dependencies\n\nimport { CheckOutlined, MinusOutlined } from \"@ant-design/icons-svg\";\nimport { useBanner, bannerGroupsInlineStyleGroup, commonInlineStyleGroupsCheckbox, commonGroupsInlineStyleLinkMore, PlainAntdIconAsSvg, BannerGroupSectionTitle, BannerCookie } from \"../../..\";\n\nvar BannerGroup = function BannerGroup(_ref) {\n var _consent$groups$id;\n\n var group = _ref.group;\n var banner = useBanner();\n var id = group.id,\n slug = group.slug,\n name = group.name,\n description = group.description,\n items = group.items;\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isRendered = _useState2[0],\n setIsRendered = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n isHover = _useState4[0],\n setIsHover = _useState4[1];\n\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n isOpen = _useState6[0],\n setIsOpen = _useState6[1];\n\n var previewCheckboxActiveState = banner.previewCheckboxActiveState,\n _banner$individualTex = banner.individualTexts,\n showMore = _banner$individualTex.showMore,\n hideMore = _banner$individualTex.hideMore,\n consent = banner.consent,\n activeAction = banner.activeAction,\n essentialGroup = banner.essentialGroup;\n useLayoutEffect(function () {\n setIsRendered(true);\n }, []);\n var isEssentialGroup = essentialGroup === slug;\n var isDisabled = isEssentialGroup || activeAction === \"history\";\n var isChecked = previewCheckboxActiveState || isEssentialGroup || !!consent.groups[id];\n var isPartial = !isEssentialGroup && JSON.stringify(items.map(function (_ref2) {\n var id = _ref2.id;\n return id;\n }).sort()) !== JSON.stringify(((_consent$groups$id = consent.groups[id]) === null || _consent$groups$id === void 0 ? void 0 : _consent$groups$id.sort()) || []);\n var CheckboxIcon = isPartial ? MinusOutlined : CheckOutlined;\n var handleCheckbox = useCallback(function () {\n return !isDisabled && banner.updateGroupChecked(id, !isChecked);\n }, [isDisabled, banner, id, isChecked]);\n return h(\"div\", bannerGroupsInlineStyleGroup(banner), h(BannerGroupSectionTitle, {\n title: h(Fragment, null, h(PlainAntdIconAsSvg, _extends({\n icon: CheckboxIcon,\n onClick: handleCheckbox\n }, commonInlineStyleGroupsCheckbox(banner, isRendered, isChecked, isDisabled))), h(\"span\", {\n style: {\n verticalAlign: \"middle\",\n cursor: \"pointer\"\n },\n onClick: handleCheckbox\n }, name, \" (\", items.length, \")\"))\n }, description, !!items && h(Fragment, null, \"\\xA0\\xA0\\u2022\\xA0\\xA0\", h(\"a\", _extends({\n href: \"#\"\n }, commonGroupsInlineStyleLinkMore(banner, isHover), {\n onClick: function onClick(e) {\n setIsOpen(!isOpen);\n e.preventDefault();\n },\n onMouseEnter: function onMouseEnter() {\n return setIsHover(true);\n },\n onMouseLeave: function onMouseLeave() {\n return setIsHover(false);\n }\n }), isOpen ? hideMore : showMore), isOpen && items.map(function (cookie) {\n return h(BannerCookie, {\n key: cookie.id,\n group: group,\n cookie: cookie\n });\n }))));\n};\n\nexport { BannerGroup };","import { scaleMobile } from \"../..\";\n\nfunction bannerGroupsInlineStyleGroup(_ref) {\n var _ref$group = _ref.group,\n groupBg = _ref$group.groupBg,\n groupBorderRadius = _ref$group.groupBorderRadius,\n groupBorderColor = _ref$group.groupBorderColor,\n groupPadding = _ref$group.groupPadding,\n groupBorderWidth = _ref$group.groupBorderWidth,\n groupInheritBg = _ref$group.groupInheritBg,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useGroupBorderWidth = scaleMobile(mobile, pageRequestUuid4, groupBorderWidth);\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-group\",\n style: {\n background: groupInheritBg ? undefined : groupBg,\n border: useGroupBorderWidth > 0 ? \"\".concat(useGroupBorderWidth, \"px solid \").concat(groupBorderColor) : undefined,\n padding: scaleMobile(mobile, pageRequestUuid4, groupPadding).map(function (p) {\n return \"\".concat(p, \"px\");\n }).join(\" \"),\n borderRadius: +groupBorderRadius,\n textAlign: \"left\"\n }\n };\n}\n\nexport { bannerGroupsInlineStyleGroup };","import { scaleMobile, useBanner, bannerGroupsInlineStyle, BannerGroup } from \"../../..\";\nimport { Fragment } from \"react\";\n\nvar BannerGroupList = function BannerGroupList() {\n var banner = useBanner();\n var groups = banner.groups,\n groupSpacing = banner.group.groupSpacing,\n mobile = banner.mobile,\n pageRequestUuid4 = banner.pageRequestUuid4;\n var useGroups = groups.filter(function (_ref) {\n var items = _ref.items;\n return items.length;\n });\n return h(\"div\", bannerGroupsInlineStyle(banner), useGroups.map(function (group, index) {\n return h(Fragment, {\n key: group.id\n }, h(BannerGroup, {\n key: group.id,\n group: group\n }), index !== useGroups.length - 1 && h(\"div\", {\n style: {\n height: scaleMobile(mobile, pageRequestUuid4, +groupSpacing)\n }\n }));\n }));\n};\n\nexport { BannerGroupList };","function bannerGroupsInlineStyle(_ref) {\n var antiAdBlocker = _ref.customCss.antiAdBlocker;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-groups\",\n style: {\n marginTop: 10,\n clear: \"both\"\n }\n };\n}\n\nexport { bannerGroupsInlineStyle };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useLayoutEffect, Fragment, useCallback } from \"react\"; // eslint-disable-next-line import/no-extraneous-dependencies\n\nimport { CheckOutlined } from \"@ant-design/icons-svg\";\nimport { useBanner } from \"../../../contexts\";\nimport { bannerInlineStyleBodyDottedGroupItem, commonInlineStyleGroupsCheckbox, bannerInlineStyleBodyDottedGroupBullet } from \"../../../inlineStyles\";\nimport { PlainAntdIconAsSvg } from \"../..\";\n\nvar BannerDottedGroup = function BannerDottedGroup(_ref) {\n var _ref$group = _ref.group,\n id = _ref$group.id,\n slug = _ref$group.slug,\n name = _ref$group.name;\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isRendered = _useState2[0],\n setIsRendered = _useState2[1];\n\n var banner = useBanner();\n var groupsFirstView = banner.decision.groupsFirstView,\n fontSize = banner.design.fontSize,\n consent = banner.consent,\n essentialGroup = banner.essentialGroup;\n var isPro = process.env.PLUGIN_CTX === \"pro\";\n useLayoutEffect(function () {\n setIsRendered(true);\n }, []);\n var isEssentialGroup = essentialGroup === slug;\n var isChecked = isEssentialGroup || !!consent.groups[id];\n var handleCheckbox = useCallback(function () {\n return isPro && groupsFirstView && !isEssentialGroup && banner.updateGroupChecked(id, !isChecked);\n }, [isPro, isEssentialGroup, banner, id, isChecked, groupsFirstView]);\n return h(\"span\", _extends({\n key: name\n }, bannerInlineStyleBodyDottedGroupItem(banner)), h(\"span\", null, isPro && groupsFirstView ? h(PlainAntdIconAsSvg, _extends({\n icon: CheckOutlined,\n onClick: handleCheckbox\n }, commonInlineStyleGroupsCheckbox(banner, isRendered, isChecked, isEssentialGroup, fontSize))) : h(Fragment, null, h(\"strong\", bannerInlineStyleBodyDottedGroupBullet(banner), \"\\u25CF\"), \"\\xA0\"), h(\"span\", {\n style: {\n verticalAlign: \"middle\",\n cursor: groupsFirstView ? \"pointer\" : undefined\n },\n onClick: handleCheckbox\n }, name)));\n};\n\nexport { BannerDottedGroup };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerInlineStyleBodyDottedGroupItem(_ref) {\n var fontSize = _ref.design.fontSize,\n _ref$bodyDesign = _ref.bodyDesign,\n dottedGroupsInheritFontSize = _ref$bodyDesign.dottedGroupsInheritFontSize,\n dottedGroupsFontSize = _ref$bodyDesign.dottedGroupsFontSize,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: undefined,\n style: {\n paddingRight: 10,\n fontSize: scaleMobile(mobile, pageRequestUuid4, dottedGroupsInheritFontSize ? +fontSize : +dottedGroupsFontSize),\n whiteSpace: \"nowrap\",\n display: \"inline-block\"\n }\n };\n}\n\nexport { bannerInlineStyleBodyDottedGroupItem };","function bannerInlineStyleBodyDottedGroupBullet(_ref) {\n var dottedGroupsBulletColor = _ref.bodyDesign.dottedGroupsBulletColor;\n return {\n className: undefined,\n style: {\n color: dottedGroupsBulletColor\n }\n };\n}\n\nexport { bannerInlineStyleBodyDottedGroupBullet };","import { BannerDottedGroup } from \".\";\nimport { useBanner, bannerInlineStyleBodyDottedGroups } from \"../../..\";\n\nvar BannerDottedGroupList = function BannerDottedGroupList() {\n var banner = useBanner();\n var groups = banner.groups,\n showGroups = banner.decision.showGroups;\n return showGroups ? h(\"div\", bannerInlineStyleBodyDottedGroups(banner), groups.filter(function (_ref) {\n var items = _ref.items;\n return !!items.length;\n }).map(function (group) {\n return h(BannerDottedGroup, {\n key: group.id,\n group: group\n });\n })) : null;\n};\n\nexport { BannerDottedGroupList };","function bannerInlineStyleBodyDottedGroups(_ref) {\n var antiAdBlocker = _ref.customCss.antiAdBlocker;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-dotted-groups\",\n style: {\n marginTop: 10,\n lineBreak: \"anywhere\",\n lineHeight: 2\n }\n };\n}\n\nexport { bannerInlineStyleBodyDottedGroups };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useBanner, bannerInlineStyleHistorySelect, bannerInlineStyleHistorySelectOption } from \"../../..\";\nimport { useMemo } from \"react\";\nimport { Fragment, useState, useEffect } from \"react\";\nvar SELECT_NONE = -1;\n\nvar BannerHistorySelect = function BannerHistorySelect() {\n var banner = useBanner();\n\n var _useState = useState(SELECT_NONE),\n _useState2 = _slicedToArray(_useState, 2),\n selectedId = _useState2[0],\n setSelectedId = _useState2[1];\n\n var activeAction = banner.activeAction,\n history = banner.history,\n selectHistoryEntry = banner.selectHistoryEntry,\n _banner$i18n = banner.i18n,\n historyLabel = _banner$i18n.historyLabel,\n historySelectNone = _banner$i18n.historySelectNone;\n var selectedHistoryItem = useMemo(function () {\n var _history$filter;\n\n return history === null || history === void 0 ? void 0 : (_history$filter = history.filter(function (_ref) {\n var id = _ref.id;\n return id === selectedId;\n })) === null || _history$filter === void 0 ? void 0 : _history$filter[0];\n }, [selectedId]); // Reset select after exit history dialog\n\n useEffect(function () {\n if (!activeAction) {\n setSelectedId(SELECT_NONE);\n } else if (activeAction === \"history\" && history !== null && history !== void 0 && history.length) {\n setSelectedId(history[0].id);\n }\n }, [activeAction, history]); // History can only contain my data, so we can pick the first entry for the history\n\n var uuid = selectedHistoryItem === null || selectedHistoryItem === void 0 ? void 0 : selectedHistoryItem.uuid;\n var optionStyle = bannerInlineStyleHistorySelectOption(banner);\n return h(Fragment, null, historyLabel, \"\\xA0\", h(\"select\", _extends({}, bannerInlineStyleHistorySelect(banner), {\n disabled: !(history !== null && history !== void 0 && history.length),\n value: selectedId,\n onChange: function onChange(e) {\n var value = +e.target.value;\n history.forEach(function (_ref2) {\n var id = _ref2.id,\n decision = _ref2.decision,\n groups = _ref2.groups,\n tcf = _ref2.tcf;\n\n if (id === value) {\n setSelectedId(id);\n selectHistoryEntry(groups, decision, tcf);\n }\n });\n }\n }), (history === null || history === void 0 ? void 0 : history.length) > 0 ? history.map(function (_ref3) {\n var id = _ref3.id,\n isDoNotTrack = _ref3.isDoNotTrack,\n isUnblock = _ref3.isUnblock,\n isForwarded = _ref3.isForwarded,\n created = _ref3.created;\n return h(\"option\", _extends({\n key: id,\n value: id\n }, optionStyle), new Date(created).toLocaleString(document.documentElement.lang), isDoNotTrack ? \" (Do Not Track)\" : \"\", isUnblock ? \" (Content Blocker)\" : \"\", isForwarded ? \" (Consent Forwarding)\" : \"\");\n }) : h(\"option\", _extends({\n value: SELECT_NONE\n }, optionStyle), historySelectNone)), !!uuid && h(\"div\", {\n style: {\n opacity: 0.5,\n marginTop: 5\n }\n }, \"UUID: \", uuid));\n};\n\nexport { BannerHistorySelect };","import { calculateRgba } from \"../../../utils\";\nimport { scaleMobile } from \"../../scale\";\n\nfunction bannerInlineStyleHistorySelect(_ref) {\n var _ref$design = _ref.design,\n fontSize = _ref$design.fontSize,\n fontColor = _ref$design.fontColor,\n _ref$bodyDesign = _ref.bodyDesign,\n descriptionInheritFontSize = _ref$bodyDesign.descriptionInheritFontSize,\n descriptionFontSize = _ref$bodyDesign.descriptionFontSize,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-history-select\",\n style: {\n fontSize: scaleMobile(mobile, pageRequestUuid4, descriptionInheritFontSize ? +fontSize : +descriptionFontSize),\n background: \"transparent\",\n border: 0,\n color: fontColor,\n borderBottom: \"1px solid \".concat(calculateRgba(fontColor, 50))\n }\n };\n}\n\nexport { bannerInlineStyleHistorySelect };","function bannerInlineStyleHistorySelectOption(_ref) {\n var bg = _ref.design.bg;\n return {\n className: undefined,\n style: {\n background: bg\n }\n };\n}\n\nexport { bannerInlineStyleHistorySelectOption };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerButtonsInlineStyleCommon(_ref, mobile, isHover, framed, isTwoButtonRowLayout) {\n var name = _ref.name,\n order = _ref.order,\n type = _ref.type,\n borderRadius = _ref.borderRadius,\n bg = _ref.bg,\n hoverBg = _ref.hoverBg,\n fontSize = _ref.fontSize,\n textAlign = _ref.textAlign,\n fontColor = _ref.fontColor,\n fontWeight = _ref.fontWeight,\n hoverFontColor = _ref.hoverFontColor,\n borderWidth = _ref.borderWidth,\n borderColor = _ref.borderColor,\n hoverBorderColor = _ref.hoverBorderColor,\n padding = _ref.padding,\n antiAdBlocker = _ref.antiAdBlocker,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var fullWidth = !isTwoButtonRowLayout || order > 1;\n var marginLeft = isTwoButtonRowLayout && order === 1 ? 5 : 0;\n var marginRight = isTwoButtonRowLayout && order === 0 ? 5 : 0;\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, +borderWidth);\n var style = {\n textDecoration: type === \"link\" ? \"underline\" : \"none\",\n borderRadius: +borderRadius,\n cursor: type === \"button\" ? \"pointer\" : undefined,\n backgroundColor: type === \"button\" ? isHover ? hoverBg : bg : undefined,\n fontSize: scaleMobile(mobile, pageRequestUuid4, +fontSize),\n fontWeight: fontWeight,\n color: isHover ? hoverFontColor : fontColor,\n transition: \"background-color 250ms, color 250ms, border-color 250ms\",\n margin: \"0 \".concat(marginRight, \"px \").concat(scaleMobile(mobile, pageRequestUuid4, 10, undefined, true), \"px \").concat(marginLeft, \"px\"),\n border: type === \"button\" && useBorderWidth > 0 ? \"\".concat(useBorderWidth, \"px solid \").concat(isHover ? hoverBorderColor : borderColor) : undefined,\n padding: scaleMobile(mobile, pageRequestUuid4, padding, undefined, type !== \"button\").map(function (p) {\n return \"\".concat(p, \"px\");\n }).join(\" \"),\n overflow: \"hidden\",\n outline: framed ? \"rgb(255, 94, 94) solid 5px\" : undefined,\n flex: fullWidth ? \"1 1 100%\" : \"0 0 calc(50% - \".concat(marginLeft + marginRight, \"px)\"),\n display: \"flex\",\n alignItems: \"center\",\n // text-align is not supported within a `display: flex`\n justifyContent: textAlign === \"right\" ? \"flex-end\" : textAlign === \"center\" ? \"center\" : \"left\",\n order: order\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-btn-\".concat(name),\n style: style\n };\n}\n\nexport { bannerButtonsInlineStyleCommon };","import { bannerButtonsInlineStyleCommon } from \".\";\n\nfunction bannerButtonsInlineStyleAcceptEssentials(_ref, isHover, framed, order, isTwoButtonRowLayout) {\n var isTcf = _ref.isTcf,\n acceptEssentials = _ref.decision.acceptEssentials,\n borderRadius = _ref.layout.borderRadius,\n _ref$bodyDesign = _ref.bodyDesign,\n acceptEssentialsFontSize = _ref$bodyDesign.acceptEssentialsFontSize,\n acceptEssentialsBg = _ref$bodyDesign.acceptEssentialsBg,\n acceptEssentialsTextAlign = _ref$bodyDesign.acceptEssentialsTextAlign,\n acceptEssentialsBorderColor = _ref$bodyDesign.acceptEssentialsBorderColor,\n acceptEssentialsPadding = _ref$bodyDesign.acceptEssentialsPadding,\n acceptEssentialsBorderWidth = _ref$bodyDesign.acceptEssentialsBorderWidth,\n acceptEssentialsFontColor = _ref$bodyDesign.acceptEssentialsFontColor,\n acceptEssentialsFontWeight = _ref$bodyDesign.acceptEssentialsFontWeight,\n acceptEssentialsHoverBg = _ref$bodyDesign.acceptEssentialsHoverBg,\n acceptEssentialsHoverFontColor = _ref$bodyDesign.acceptEssentialsHoverFontColor,\n acceptEssentialsHoverBorderColor = _ref$bodyDesign.acceptEssentialsHoverBorderColor,\n acceptAllFontWeight = _ref$bodyDesign.acceptAllFontWeight,\n acceptAllFontSize = _ref$bodyDesign.acceptAllFontSize,\n acceptAllPadding = _ref$bodyDesign.acceptAllPadding,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return bannerButtonsInlineStyleCommon({\n name: \"accept-essentials\",\n order: order,\n type: acceptEssentials,\n borderRadius: borderRadius,\n bg: acceptEssentialsBg,\n hoverBg: acceptEssentialsHoverBg,\n fontSize: isTwoButtonRowLayout || isTcf ? acceptAllFontSize : acceptEssentialsFontSize,\n textAlign: acceptEssentialsTextAlign,\n fontColor: acceptEssentialsFontColor,\n fontWeight: isTcf ? acceptAllFontWeight : acceptEssentialsFontWeight,\n hoverFontColor: acceptEssentialsHoverFontColor,\n borderWidth: acceptEssentialsBorderWidth,\n borderColor: acceptEssentialsBorderColor,\n hoverBorderColor: acceptEssentialsHoverBorderColor,\n padding: isTwoButtonRowLayout ? acceptAllPadding : acceptEssentialsPadding,\n antiAdBlocker: antiAdBlocker,\n pageRequestUuid4: pageRequestUuid4\n }, mobile, isHover, framed, isTwoButtonRowLayout);\n}\n\nexport { bannerButtonsInlineStyleAcceptEssentials };","import { bannerButtonsInlineStyleCommon } from \".\";\n\nfunction bannerButtonsInlineStyleAcceptIndividual(_ref, isHover, framed, order, isTwoButtonRowLayout) {\n var acceptIndividual = _ref.decision.acceptIndividual,\n borderRadius = _ref.layout.borderRadius,\n _ref$bodyDesign = _ref.bodyDesign,\n acceptIndividualFontSize = _ref$bodyDesign.acceptIndividualFontSize,\n acceptIndividualBg = _ref$bodyDesign.acceptIndividualBg,\n acceptIndividualTextAlign = _ref$bodyDesign.acceptIndividualTextAlign,\n acceptIndividualBorderColor = _ref$bodyDesign.acceptIndividualBorderColor,\n acceptIndividualPadding = _ref$bodyDesign.acceptIndividualPadding,\n acceptIndividualBorderWidth = _ref$bodyDesign.acceptIndividualBorderWidth,\n acceptIndividualFontColor = _ref$bodyDesign.acceptIndividualFontColor,\n acceptIndividualFontWeight = _ref$bodyDesign.acceptIndividualFontWeight,\n acceptIndividualHoverBg = _ref$bodyDesign.acceptIndividualHoverBg,\n acceptIndividualHoverFontColor = _ref$bodyDesign.acceptIndividualHoverFontColor,\n acceptIndividualHoverBorderColor = _ref$bodyDesign.acceptIndividualHoverBorderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return bannerButtonsInlineStyleCommon({\n name: \"accept-individual\",\n order: order,\n type: acceptIndividual,\n borderRadius: borderRadius,\n bg: acceptIndividualBg,\n hoverBg: acceptIndividualHoverBg,\n fontSize: acceptIndividualFontSize,\n textAlign: acceptIndividualTextAlign,\n fontColor: acceptIndividualFontColor,\n fontWeight: acceptIndividualFontWeight,\n hoverFontColor: acceptIndividualHoverFontColor,\n borderWidth: acceptIndividualBorderWidth,\n borderColor: acceptIndividualBorderColor,\n hoverBorderColor: acceptIndividualHoverBorderColor,\n padding: acceptIndividualPadding,\n antiAdBlocker: antiAdBlocker,\n pageRequestUuid4: pageRequestUuid4\n }, mobile, isHover, framed, isTwoButtonRowLayout);\n}\n\nexport { bannerButtonsInlineStyleAcceptIndividual };","import { bannerButtonsInlineStyleCommon } from \"./\";\n\nfunction bannerButtonsInlineStyleSave(_ref, isHover, framed, order, isTwoButtonRowLayout) {\n var isTcf = _ref.isTcf,\n borderRadius = _ref.layout.borderRadius,\n _ref$bodyDesign = _ref.bodyDesign,\n acceptAllFontWeight = _ref$bodyDesign.acceptAllFontWeight,\n acceptAllFontSize = _ref$bodyDesign.acceptAllFontSize,\n _ref$saveButton = _ref.saveButton,\n type = _ref$saveButton.type,\n fontSize = _ref$saveButton.fontSize,\n bg = _ref$saveButton.bg,\n textAlign = _ref$saveButton.textAlign,\n borderColor = _ref$saveButton.borderColor,\n padding = _ref$saveButton.padding,\n borderWidth = _ref$saveButton.borderWidth,\n fontColor = _ref$saveButton.fontColor,\n fontWeight = _ref$saveButton.fontWeight,\n hoverBg = _ref$saveButton.hoverBg,\n hoverFontColor = _ref$saveButton.hoverFontColor,\n hoverBorderColor = _ref$saveButton.hoverBorderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return bannerButtonsInlineStyleCommon({\n name: \"accept-individual-save\",\n order: order,\n type: type,\n borderRadius: borderRadius,\n bg: bg,\n hoverBg: hoverBg,\n fontSize: isTcf ? acceptAllFontSize : fontSize,\n textAlign: textAlign,\n fontColor: fontColor,\n fontWeight: isTcf ? acceptAllFontWeight : fontWeight,\n hoverFontColor: hoverFontColor,\n borderWidth: borderWidth,\n borderColor: borderColor,\n hoverBorderColor: hoverBorderColor,\n padding: padding,\n antiAdBlocker: antiAdBlocker,\n pageRequestUuid4: pageRequestUuid4\n }, mobile, isHover, framed, isTwoButtonRowLayout);\n}\n\nexport { bannerButtonsInlineStyleSave };","import { bannerButtonsInlineStyleCommon } from \".\";\n\nfunction bannerButtonsInlineStyleAcceptAll(_ref, isHover, framed, order, isTwoButtonRowLayout) {\n var acceptAll = _ref.decision.acceptAll,\n borderRadius = _ref.layout.borderRadius,\n _ref$bodyDesign = _ref.bodyDesign,\n acceptAllFontSize = _ref$bodyDesign.acceptAllFontSize,\n acceptAllBg = _ref$bodyDesign.acceptAllBg,\n acceptAllTextAlign = _ref$bodyDesign.acceptAllTextAlign,\n acceptAllBorderColor = _ref$bodyDesign.acceptAllBorderColor,\n acceptAllPadding = _ref$bodyDesign.acceptAllPadding,\n acceptAllBorderWidth = _ref$bodyDesign.acceptAllBorderWidth,\n acceptAllFontColor = _ref$bodyDesign.acceptAllFontColor,\n acceptAllFontWeight = _ref$bodyDesign.acceptAllFontWeight,\n acceptAllHoverBg = _ref$bodyDesign.acceptAllHoverBg,\n acceptAllHoverFontColor = _ref$bodyDesign.acceptAllHoverFontColor,\n acceptAllHoverBorderColor = _ref$bodyDesign.acceptAllHoverBorderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return bannerButtonsInlineStyleCommon({\n name: \"accept-all\",\n order: order,\n type: acceptAll,\n borderRadius: borderRadius,\n bg: acceptAllBg,\n hoverBg: acceptAllHoverBg,\n fontSize: acceptAllFontSize,\n textAlign: acceptAllTextAlign,\n fontColor: acceptAllFontColor,\n fontWeight: acceptAllFontWeight,\n hoverFontColor: acceptAllHoverFontColor,\n borderWidth: acceptAllBorderWidth,\n borderColor: acceptAllBorderColor,\n hoverBorderColor: acceptAllHoverBorderColor,\n padding: acceptAllPadding,\n antiAdBlocker: antiAdBlocker,\n pageRequestUuid4: pageRequestUuid4\n }, mobile, isHover, framed, isTwoButtonRowLayout);\n}\n\nexport { bannerButtonsInlineStyleAcceptAll };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useCallback } from \"react\";\nimport { useState, useMemo } from \"react\";\nimport { isIE, AsciiSpinner, useBanner, bannerButtonsInlineStyleAcceptAll, bannerButtonsInlineStyleAcceptEssentials, bannerButtonsInlineStyleAcceptIndividual, bannerButtonsInlineStyleSave } from \"../../../..\";\n\nvar BannerButton = function BannerButton(_ref) {\n var inlineStyle = _ref.inlineStyle,\n type = _ref.type,\n onClick = _ref.onClick,\n children = _ref.children,\n framed = _ref.framed,\n busyOnClick = _ref.busyOnClick,\n order = _ref.order;\n\n if (type === \"hide\") {\n return null;\n }\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n isBusy = _useState2[0],\n setIsBusy = _useState2[1];\n\n var handleOnClick = useCallback(function () {\n if (!isBusy) {\n busyOnClick && setIsBusy(true);\n onClick === null || onClick === void 0 ? void 0 : onClick();\n }\n }, [onClick, isBusy, busyOnClick]);\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n isHover = _useState4[0],\n setIsHover = _useState4[1];\n\n var banner = useBanner();\n var individualPrivacyOpen = banner.individualPrivacyOpen,\n _banner$decision = banner.decision,\n acceptAll = _banner$decision.acceptAll,\n acceptEssentials = _banner$decision.acceptEssentials,\n _banner$bodyDesign = banner.bodyDesign,\n acceptAllOneRowLayout = _banner$bodyDesign.acceptAllOneRowLayout,\n acceptEssentialsUseAcceptAll = _banner$bodyDesign.acceptEssentialsUseAcceptAll;\n var useAcceptEssentials = acceptEssentialsUseAcceptAll ? acceptAll : acceptEssentials;\n var interactionAttr = {\n onClick: handleOnClick,\n onMouseEnter: function onMouseEnter() {\n return setIsHover(true);\n },\n onMouseLeave: function onMouseLeave() {\n return setIsHover(false);\n }\n };\n var useStyleFn = useMemo(function () {\n switch (inlineStyle) {\n case \"acceptEssentials\":\n return bannerButtonsInlineStyleAcceptEssentials;\n\n case \"acceptIndividual\":\n return bannerButtonsInlineStyleAcceptIndividual;\n\n case \"save\":\n return bannerButtonsInlineStyleSave;\n\n default:\n return bannerButtonsInlineStyleAcceptAll;\n }\n }, [inlineStyle]); // Also create a spacing `height:10` container because `marginBottom` causes issues with `position:sticky`\n\n return h(\"div\", _extends({}, type === \"button\" ? interactionAttr : {}, useStyleFn(banner, isHover, framed, order, // IE does not support flex with calc()\n isIE() || acceptAll === \"hide\" || useAcceptEssentials === \"hide\" || individualPrivacyOpen || order > 1 ? false : acceptAllOneRowLayout)), h(\"span\", type === \"link\" ? interactionAttr : {}, isBusy ? h(AsciiSpinner, null) : children));\n};\n\nexport { BannerButton };","function isIE() {\n return /MSIE (\\d+\\.\\d+);/.test(navigator.userAgent) || navigator.userAgent.indexOf(\"Trident/\") > -1;\n}\n\nexport { isIE };","import { Fragment, useMemo } from \"react\";\nimport { useBanner, useBannerButtonCallbacks, BannerButton } from \"../../..\";\n\nvar BannerButtonList = function BannerButtonList() {\n var banner = useBanner();\n var activeAction = banner.activeAction,\n _banner$bodyDesign = banner.bodyDesign,\n acceptEssentialsUseAcceptAll = _banner$bodyDesign.acceptEssentialsUseAcceptAll,\n acceptAllOneRowLayout = _banner$bodyDesign.acceptAllOneRowLayout,\n _banner$decision = banner.decision,\n showGroups = _banner$decision.showGroups,\n groupsFirstView = _banner$decision.groupsFirstView,\n saveButton = _banner$decision.saveButton,\n acceptAll = _banner$decision.acceptAll,\n acceptEssentials = _banner$decision.acceptEssentials,\n acceptIndividual = _banner$decision.acceptIndividual,\n buttonOrderString = _banner$decision.buttonOrder,\n _banner$texts = banner.texts,\n acceptAllText = _banner$texts.acceptAll,\n acceptEssentialsText = _banner$texts.acceptEssentials,\n acceptIndividualText = _banner$texts.acceptIndividual,\n _banner$saveButton = banner.saveButton,\n saveButtonType = _banner$saveButton.type,\n saveButtonUseAcceptAll = _banner$saveButton.useAcceptAll,\n save = banner.individualTexts.save,\n individualPrivacyOpen = banner.individualPrivacyOpen,\n didGroupFirstChange = banner.didGroupFirstChange,\n productionNotice = banner.productionNotice,\n _banner$buttonClicked = banner.buttonClicked,\n buttonClicked = _banner$buttonClicked === void 0 ? \"\" : _banner$buttonClicked; // Calculate order of the buttons depending on a string like `all,essential,save,individual`\n\n var _useMemo = useMemo(function () {\n var buttonOrder = buttonOrderString.split(\",\");\n var buttonToOrder = buttonOrder.reduce(function (previous, curr) {\n previous[curr] = buttonOrder.indexOf(curr);\n return previous;\n }, {});\n var orderToButton = buttonOrder.reduce(function (previous, curr) {\n previous[buttonOrder.indexOf(curr)] = curr;\n return previous;\n }, {}); // If one-row layout is enabled, reverse the first two orders so the first button gets moved to the right\n\n // If one-row layout is enabled, reverse the first two orders so the first button gets moved to the right\n if (acceptAllOneRowLayout) {\n buttonToOrder[orderToButton[0]] = 1;\n buttonToOrder[orderToButton[1]] = 0;\n }\n\n return buttonToOrder;\n }, [buttonOrderString, acceptAllOneRowLayout]),\n buttonOrderAll = _useMemo.all,\n buttonOrderEssential = _useMemo.essential,\n buttonOrderIndividual = _useMemo.individual,\n buttonOrderSave = _useMemo.save;\n\n var isPro = process.env.PLUGIN_CTX === \"pro\";\n\n var _useBannerButtonCallb = useBannerButtonCallbacks(),\n buttonClickedAll = _useBannerButtonCallb.buttonClickedAll,\n buttonClickedEssentials = _useBannerButtonCallb.buttonClickedEssentials,\n buttonClickedCustom = _useBannerButtonCallb.buttonClickedCustom,\n handleAll = _useBannerButtonCallb.acceptAll,\n handleEssentials = _useBannerButtonCallb.acceptEssentials,\n handleIndividual = _useBannerButtonCallb.acceptIndividual,\n openIndividualPrivacy = _useBannerButtonCallb.openIndividualPrivacy; // We expect a reload of the page for the \"change\" action (keeps also dialog open)\n\n\n var busyOnClick = activeAction === \"change\";\n var groupsFirstViewEnabled = showGroups && groupsFirstView;\n return h(Fragment, null, !individualPrivacyOpen && isPro && groupsFirstViewEnabled && saveButton === \"afterChangeAll\" && didGroupFirstChange ? h(BannerButton, {\n onClick: handleIndividual,\n type: acceptAll,\n inlineStyle: \"acceptAll\",\n framed: buttonClicked === buttonClickedCustom,\n busyOnClick: busyOnClick,\n order: buttonOrderAll\n }, save) : h(BannerButton, {\n onClick: handleAll,\n type: acceptAll,\n inlineStyle: \"acceptAll\",\n framed: buttonClicked === buttonClickedAll,\n busyOnClick: busyOnClick,\n order: buttonOrderAll\n }, acceptAllText), activeAction !== \"change\" && h(BannerButton, {\n onClick: handleEssentials,\n type: acceptEssentialsUseAcceptAll ? acceptAll : acceptEssentials,\n inlineStyle: acceptEssentialsUseAcceptAll ? \"acceptAll\" : \"acceptEssentials\",\n framed: buttonClicked === buttonClickedEssentials,\n busyOnClick: busyOnClick,\n order: buttonOrderEssential\n }, acceptEssentialsText), (individualPrivacyOpen || isPro && groupsFirstViewEnabled && (saveButton === \"always\" || saveButton === \"afterChange\" && didGroupFirstChange)) && h(BannerButton, {\n onClick: handleIndividual,\n type: saveButtonUseAcceptAll ? acceptAll : saveButtonType,\n inlineStyle: saveButtonUseAcceptAll ? \"acceptAll\" : \"save\",\n framed: buttonClicked === buttonClickedCustom,\n busyOnClick: busyOnClick,\n order: buttonOrderSave\n }, save), !individualPrivacyOpen && h(BannerButton, {\n type: acceptIndividual,\n onClick: openIndividualPrivacy,\n inlineStyle: \"acceptIndividual\",\n framed: buttonClicked.startsWith(\"ind_\"),\n busyOnClick: busyOnClick,\n order: buttonOrderIndividual\n }, acceptIndividualText), productionNotice);\n};\n\nexport { BannerButtonList };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { useBanner, BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER, usePlainCss, scaleMobile, bannerInlineStylesRightSide, bannerInlineStylesLeftSide, bannerInlineStyleBody, bannerInlineStyleBodyContainer, bannerInlineStyleBodyDescription, commonInlineStyleBodyTeaching, commonInlineStyleBodyTeachingsSeparator, BannerDottedGroupList, BannerTcfStackList, BannerGroupList, BannerTcfGroupList, BannerButtonList, BannerHistorySelect, useCommonTeachings } from \"../../..\";\nimport { useMemo, Fragment } from \"react\";\n\nvar BannerBody = function BannerBody(_ref) {\n var _document$getElementB;\n\n var leftSideContainerRef = _ref.leftSideContainerRef,\n rightSideContainerRef = _ref.rightSideContainerRef;\n var banner = useBanner();\n var type = banner.layout.type,\n mobile = banner.mobile,\n teachingsSeparatorActive = banner.bodyDesign.teachingsSeparatorActive,\n tcf = banner.tcf,\n individualPrivacyOpen = banner.individualPrivacyOpen,\n activeAction = banner.activeAction,\n pageRequestUuid4 = banner.pageRequestUuid4;\n\n var _useCommonTeachings = useCommonTeachings(),\n description = _useCommonTeachings.description,\n teachings = _useCommonTeachings.teachings; // Make the content responsive\n\n\n var leftSideId = \"bnnr-body-leftSide-\".concat(pageRequestUuid4);\n var rightSideId = \"bnnr-body-rightSide-\".concat(pageRequestUuid4);\n var contentId = \"cntnt-\".concat(pageRequestUuid4);\n usePlainCss(\" #\".concat(leftSideId, \" img {\\n max-width: 100%;\\n height: auto;\\n}\\n\\n\").concat(((_document$getElementB = document.getElementById(pageRequestUuid4)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.clientWidth) > BANNER_SCALING_WHEN_WINDOW_WIDTH_LOWER ? \"\" : \"#\".concat(leftSideId, \" {\\n float: initial !important;\\n width: auto !important;\\n padding-right: initial !important;\\n \").concat(scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"banner\" && !individualPrivacyOpen ? \"padding-bottom: 10px !important;\" : individualPrivacyOpen ? \"padding-top: 10px !important;\" : \"\", \"\\n }\\n\\n #\").concat(contentId, \" {\\n min-height: calc(var(--rendered-height-header) + var(--rendered-height-footer) + var(--rendered-height-rightSideContainer) + 60px);\\n }\\n \\n #\").concat(rightSideId, \" {\\n float: initial !important;\\n width: auto !important;\\n max-width: initial !important;\\n margin: initial !important;\\n \").concat(individualPrivacyOpen ? \"padding-bottom: 5px !important;\" : \"padding-top: 10px !important;\", \"\\n position: sticky;\\n }\"))); // Calculate the body content depending on TCF availability and if second view got opened\n\n var stackOrGroups = useMemo(function () {\n if (process.env.IS_TCF === \"1\" && tcf) {\n return individualPrivacyOpen ? h(BannerTcfGroupList, null) : h(BannerTcfStackList, null);\n } else {\n return individualPrivacyOpen ? h(BannerGroupList, null) : h(BannerDottedGroupList, null);\n }\n }, [individualPrivacyOpen, tcf]);\n var leftSide = h(\"div\", _extends({\n ref: leftSideContainerRef,\n key: \"leftSide\",\n id: leftSideId\n }, bannerInlineStylesLeftSide(banner)), h(\"div\", bannerInlineStyleBodyDescription(banner), activeAction === \"history\" ? h(BannerHistorySelect, null) : h(Fragment, null, h(\"span\", {\n dangerouslySetInnerHTML: {\n __html: description\n }\n }), teachings.length > 0 && h(Fragment, null, teachingsSeparatorActive && h(\"div\", null, h(\"span\", commonInlineStyleBodyTeachingsSeparator(banner))), teachings.map(function (teaching) {\n return h(\"span\", _extends({\n key: teaching\n }, commonInlineStyleBodyTeaching(banner), {\n dangerouslySetInnerHTML: {\n __html: teaching\n }\n }));\n })))), stackOrGroups);\n var rightSide = activeAction === \"history\" ? h(\"div\", {\n ref: rightSideContainerRef\n }) : h(\"div\", _extends({\n ref: rightSideContainerRef,\n key: \"rightSide\",\n id: rightSideId\n }, bannerInlineStylesRightSide(banner)), h(BannerButtonList, null));\n return h(\"div\", bannerInlineStyleBodyContainer(banner), h(\"div\", bannerInlineStyleBody(banner), individualPrivacyOpen ? [rightSide, leftSide] : [leftSide, rightSide], h(\"div\", {\n style: {\n clear: \"both\"\n }\n })));\n};\n\nexport { BannerBody };","import { scaleMobile } from \"../../scale\";\nvar BUTTONS_WIDTH = 300;\n\nfunction bannerInlineStylesLeftSide(_ref) {\n var type = _ref.layout.type,\n padding = _ref.bodyDesign.padding,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n individualPrivacyOpen = _ref.individualPrivacyOpen,\n activeAction = _ref.activeAction,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useType = scaleMobile(mobile, pageRequestUuid4, type, \"banner\");\n var usePadding = scaleMobile(mobile, pageRequestUuid4, padding);\n var style = {\n float: useType === \"banner\" && activeAction !== \"history\" ? \"left\" : undefined,\n width: useType === \"banner\" && activeAction !== \"history\" ? \"calc(100% - \".concat(BUTTONS_WIDTH, \"px)\") : undefined,\n paddingRight: useType === \"banner\" ? 20 : undefined,\n paddingTop: +usePadding[0],\n paddingBottom: useType === \"banner\" || individualPrivacyOpen ? +usePadding[2] : 0\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-tb-left\",\n style: style\n };\n}\n\nexport { BUTTONS_WIDTH, bannerInlineStylesLeftSide };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerInlineStyleBodyDescription(_ref) {\n var fontSize = _ref.design.fontSize,\n _ref$bodyDesign = _ref.bodyDesign,\n descriptionInheritFontSize = _ref$bodyDesign.descriptionInheritFontSize,\n descriptionFontSize = _ref$bodyDesign.descriptionFontSize,\n descriptionTextAlign = _ref.individualLayout.descriptionTextAlign,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n individualPrivacyOpen = _ref.individualPrivacyOpen,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-description\",\n style: {\n lineHeight: 1.5,\n fontSize: scaleMobile(mobile, pageRequestUuid4, descriptionInheritFontSize ? +fontSize : +descriptionFontSize),\n textAlign: individualPrivacyOpen ? descriptionTextAlign : undefined\n }\n };\n}\n\nexport { bannerInlineStyleBodyDescription };","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport { hexToRgb } from \"../../../utils\";\nimport { scaleMobile } from \"../../scale\";\nimport { BUTTONS_WIDTH } from \"./leftSide\";\n\nfunction bannerInlineStylesRightSide(_ref) {\n var _style;\n\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n dialogMaxWidth = _ref$layout.dialogMaxWidth,\n _ref$design = _ref.design,\n borderWidth = _ref$design.borderWidth,\n bg = _ref$design.bg,\n fontColor = _ref$design.fontColor,\n headerDesign = _ref.headerDesign,\n footerDesign = _ref.footerDesign,\n padding = _ref.bodyDesign.padding,\n inheritDialogMaxWidth = _ref.individualLayout.inheritDialogMaxWidth,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n individualPrivacyOpen = _ref.individualPrivacyOpen,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useType = scaleMobile(mobile, pageRequestUuid4, type, \"banner\");\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, borderWidth);\n var usePadding = scaleMobile(mobile, pageRequestUuid4, padding, undefined, true);\n\n var _hexToRgb = hexToRgb(fontColor),\n r = _hexToRgb.r,\n g = _hexToRgb.g,\n b = _hexToRgb.b;\n\n var width = useType === \"dialog\" ? +dialogMaxWidth - usePadding[1] - usePadding[3] - useBorderWidth * 2 : BUTTONS_WIDTH;\n var style = (_style = {\n background: bg,\n paddingTop: useType === \"banner\" || individualPrivacyOpen ? +usePadding[0] : 10,\n paddingBottom: !individualPrivacyOpen ? +usePadding[2] : 10,\n float: useType === \"banner\" || individualPrivacyOpen ? \"right\" : undefined,\n maxWidth: width,\n width: width,\n margin: useType === \"dialog\" && individualPrivacyOpen && !inheritDialogMaxWidth ? \"0 0 10px 10px\" : undefined,\n // position: individualPrivacyOpen ? \"sticky\" : undefined, This is done by `body.tsx#usePlainCss`\n position: individualPrivacyOpen ? undefined : \"sticky\"\n }, _defineProperty(_style, individualPrivacyOpen ? \"top\" : \"bottom\", individualPrivacyOpen ? \"calc(var(--rendered-height-header) + \".concat(scaleMobile(mobile, pageRequestUuid4, headerDesign.borderWidth), \"px)\") : \"calc(var(--rendered-height-footer) + \".concat(scaleMobile(mobile, pageRequestUuid4, footerDesign.borderWidth), \"px)\")), _defineProperty(_style, \"zIndex\", 1), _defineProperty(_style, \"display\", \"flex\"), _defineProperty(_style, \"flexWrap\", \"wrap\"), _defineProperty(_style, \"transition\", \"box-shadow ease-in-out .1s\"), _defineProperty(_style, \"--boxShadowShowScroll\", \"0 -15px 15px -15px rgba(\".concat(r, \", \").concat(g, \", \").concat(b, \", 0.3)\")), _style);\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-tb-right\",\n style: style\n };\n}\n\nexport { bannerInlineStylesRightSide };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerInlineStyleBodyContainer(_ref) {\n var type = _ref.layout.type,\n _ref$design = _ref.design,\n bg = _ref$design.bg,\n borderWidth = _ref$design.borderWidth,\n borderColor = _ref$design.borderColor,\n padding = _ref.bodyDesign.padding,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, borderWidth);\n var style = {\n background: bg,\n // Top / Bottom padding is applied in leftSide and rightSide containers\n padding: scaleMobile(mobile, pageRequestUuid4, padding).map(function (p, i) {\n return \"\".concat([0, 2].indexOf(i) > -1 ? 0 : p, \"px\");\n }).join(\" \"),\n lineHeight: 1.4\n };\n\n if (scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"dialog\" && useBorderWidth > 0) {\n style.borderLeft = \"\".concat(useBorderWidth, \"px solid \").concat(borderColor);\n style.borderRight = style.borderLeft;\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-body-container\",\n style: style\n };\n}\n\nexport { bannerInlineStyleBodyContainer };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerInlineStyleBody(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n bannerMaxWidth = _ref$layout.bannerMaxWidth,\n individualLayout = _ref.individualLayout,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n individualPrivacyOpen = _ref.individualPrivacyOpen,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var style = {\n transition: \"width 500ms, max-width 500ms\",\n maxWidth: scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"banner\" ? +(individualPrivacyOpen && !individualLayout.inheritBannerMaxWidth ? individualLayout.bannerMaxWidth : bannerMaxWidth) : undefined,\n margin: \"auto\"\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-body\",\n style: style\n };\n}\n\nexport { bannerInlineStyleBody };","import _extends from \"@babel/runtime/helpers/extends\";\nimport { forwardRef, useCallback } from \"react\";\nimport { useBanner, bannerFooterInlineStyle, bannerFooterInlineStyleContainer, FooterLink, useCommonFooterLinks } from \"../../..\"; // eslint-disable-next-line react/display-name\n\nvar BannerFooter = /*#__PURE__*/forwardRef(function (_, ref) {\n var banner = useBanner();\n var isTcf = banner.isTcf,\n type = banner.layout.type,\n individualPrivacyOpen = banner.individualPrivacyOpen,\n updateIndividualPrivacyOpen = banner.updateIndividualPrivacyOpen,\n onClose = banner.onClose,\n tcf = banner.i18n.tcf,\n isConsentRecord = banner.isConsentRecord;\n var handleTcfVendorList = process.env.IS_TCF === \"1\" && isTcf ? useCallback(function (e) {\n updateIndividualPrivacyOpen(true);\n e.preventDefault();\n }, [updateIndividualPrivacyOpen]) : undefined;\n var handleClose = useCallback(function (e) {\n onClose();\n e.preventDefault();\n }, [onClose]);\n\n var _useCommonFooterLinks = useCommonFooterLinks({\n onClose: isConsentRecord ? handleClose : undefined,\n putPoweredByLinkInRow: type === \"banner\" ? 0 : 1,\n row1: [process.env.IS_TCF === \"1\" && isTcf && !individualPrivacyOpen && h(FooterLink, {\n href: \"#\",\n onClick: handleTcfVendorList,\n key: \"vendorList\"\n }, tcf.vendorList)]\n }),\n links = _useCommonFooterLinks.rows,\n renderLinks = _useCommonFooterLinks.render;\n\n return h(\"div\", _extends({\n ref: ref\n }, bannerFooterInlineStyleContainer(banner)), h(\"div\", bannerFooterInlineStyle(banner), renderLinks(links)));\n});\nexport { BannerFooter };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerFooterInlineStyleContainer(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n dialogBorderRadius = _ref$layout.dialogBorderRadius,\n design = _ref.design,\n _ref$footerDesign = _ref.footerDesign,\n inheritBg = _ref$footerDesign.inheritBg,\n bg = _ref$footerDesign.bg,\n inheritTextAlign = _ref$footerDesign.inheritTextAlign,\n textAlign = _ref$footerDesign.textAlign,\n padding = _ref$footerDesign.padding,\n fontSize = _ref$footerDesign.fontSize,\n fontColor = _ref$footerDesign.fontColor,\n fontWeight = _ref$footerDesign.fontWeight,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useType = scaleMobile(mobile, pageRequestUuid4, type, \"banner\");\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, design.borderWidth);\n var style = {\n padding: scaleMobile(mobile, pageRequestUuid4, padding, undefined, true).map(function (p) {\n return \"\".concat(p, \"px\");\n }).join(\" \"),\n background: inheritBg ? design.bg : bg,\n borderRadius: useType === \"dialog\" ? \"0 0 \".concat(dialogBorderRadius, \"px \").concat(dialogBorderRadius, \"px\") : undefined,\n fontSize: scaleMobile(mobile, pageRequestUuid4, +fontSize),\n fontWeight: fontWeight,\n color: fontColor,\n textAlign: inheritTextAlign ? design.textAlign : textAlign,\n position: \"sticky\",\n bottom: 0,\n zIndex: 1\n };\n\n if (useType === \"dialog\" && useBorderWidth > 0) {\n style.borderBottom = \"\".concat(useBorderWidth, \"px solid \").concat(design.borderColor);\n style.borderLeft = style.borderBottom;\n style.borderRight = style.borderBottom;\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-footer-container\",\n style: style\n };\n}\n\nexport { bannerFooterInlineStyleContainer };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerFooterInlineStyle(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n bannerMaxWidth = _ref$layout.bannerMaxWidth,\n individualLayout = _ref.individualLayout,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4,\n individualPrivacyOpen = _ref.individualPrivacyOpen;\n var style = {\n transition: \"width 500ms, max-width 500ms\",\n maxWidth: scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"banner\" ? +(individualPrivacyOpen && !individualLayout.inheritBannerMaxWidth ? individualLayout.bannerMaxWidth : bannerMaxWidth) : undefined,\n margin: \"auto\",\n lineHeight: 1.8\n };\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-footer\",\n style: style\n };\n}\n\nexport { bannerFooterInlineStyle };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { scaleMobile, useBanner, usePlainCss, useRenderedHeightsAsCssVars, bannerContentInlineStyle, bannerFooterInlineStyleSeparator, bannerHeaderInlineStyleSeparator, BannerHeader, BannerFooter, BannerBody } from \"../../..\";\nimport { Fragment, useState, useRef, useLayoutEffect, useCallback } from \"react\";\n\nvar BannerContent = function BannerContent() {\n var banner = useBanner();\n var _banner$layout = banner.layout,\n type = _banner$layout.type,\n dialogBorderRadius = _banner$layout.dialogBorderRadius,\n _banner$decision = banner.decision,\n acceptAll = _banner$decision.acceptAll,\n acceptEssentials = _banner$decision.acceptEssentials,\n showCloseIcon = _banner$decision.showCloseIcon,\n mobile = banner.mobile,\n individualPrivacyOpen = banner.individualPrivacyOpen,\n bg = banner.design.bg,\n _banner$bodyDesign = banner.bodyDesign,\n teachingsFontColor = _banner$bodyDesign.teachingsFontColor,\n acceptEssentialsUseAcceptAll = _banner$bodyDesign.acceptEssentialsUseAcceptAll,\n activeAction = banner.activeAction,\n pageRequestUuid4 = banner.pageRequestUuid4;\n var rightSideId = \"bnnr-body-rightSide-\".concat(pageRequestUuid4);\n var id = \"cntnt-\".concat(pageRequestUuid4);\n var ref = useRef();\n var currentRef = ref.current;\n var useAcceptEssentials = acceptEssentialsUseAcceptAll ? acceptAll : acceptEssentials;\n var showHeader = true;\n\n if (mobile.hideHeader && !activeAction && !individualPrivacyOpen && (useAcceptEssentials === \"hide\" ? !showCloseIcon : true)) {\n showHeader = scaleMobile(mobile, pageRequestUuid4, showHeader, false);\n } // Enable box shadow effect for the scrolling behavior\n\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n showScrollBoxShadow = _useState2[0],\n setShowScrollBoxShadow = _useState2[1];\n\n var updateShowScrollBoxShadow = useCallback(function () {\n if (currentRef) {\n var clientHeight = currentRef.clientHeight,\n scrollHeight = currentRef.scrollHeight,\n scrollTop = currentRef.scrollTop,\n offsetHeight = currentRef.offsetHeight;\n var hasScrollbar = clientHeight < scrollHeight;\n var scrolledToBottom = Math.ceil(scrollTop + offsetHeight) >= scrollHeight;\n var result = hasScrollbar && !scrolledToBottom && !individualPrivacyOpen;\n\n if (showScrollBoxShadow !== result) {\n setShowScrollBoxShadow(result);\n }\n }\n }, [currentRef, individualPrivacyOpen, showScrollBoxShadow]);\n updateShowScrollBoxShadow(); // The function gets called for each resize in `Banner` component\n\n useLayoutEffect(function () {\n if (currentRef) {\n currentRef.addEventListener(\"scroll\", updateShowScrollBoxShadow);\n return function () {\n return currentRef.removeEventListener(\"scroll\", updateShowScrollBoxShadow);\n };\n } // eslint-disable-next-line @typescript-eslint/no-empty-function\n\n\n return function () {};\n }, [currentRef, updateShowScrollBoxShadow]);\n usePlainCss(showScrollBoxShadow ? \"#\".concat(rightSideId, \" {box-shadow:var(--boxShadowShowScroll);}\") : \"\"); // Create custom scrollbar when a border radius is active (https://css-tricks.com/the-current-state-of-styling-scrollbars/)\n\n usePlainCss(navigator.platform === \"Win32\" && type === \"dialog\" && dialogBorderRadius > 0 ? [\"#\".concat(id, \"{overflow:overlay!important;}\"), \"#\".concat(id, \"::-webkit-scrollbar{width:11px;}\"), \"#\".concat(id, \"{scrollbar-width:thin;scrollbar-color:\").concat(teachingsFontColor, \" transparent;}\"), \"#\".concat(id, \"::-webkit-scrollbar-track{background:transparent;}\"), \"#\".concat(id, \"::-webkit-scrollbar-thumb{background-color:\").concat(teachingsFontColor, \";border-radius:\").concat(dialogBorderRadius, \"px;border:3px solid \").concat(bg, \";}\"), \"#\".concat(id, \">div{border-top-right-radius:0!important;border-bottom-right-radius:0!important;}\")].join(\"\\n\") : \"\");\n var headerRef = useRef();\n var footerRef = useRef();\n var rightSideContainerRef = useRef();\n useRenderedHeightsAsCssVars(headerRef.current, \"header\");\n useRenderedHeightsAsCssVars(footerRef.current, \"footer\");\n useRenderedHeightsAsCssVars(rightSideContainerRef.current, \"rightSideContainer\");\n return h(\"div\", _extends({}, bannerContentInlineStyle(banner), {\n ref: ref,\n id: id\n }), showHeader && h(Fragment, null, h(BannerHeader, {\n ref: headerRef\n }), h(\"div\", bannerHeaderInlineStyleSeparator(banner))), h(BannerBody, {\n rightSideContainerRef: rightSideContainerRef\n }), h(\"div\", bannerFooterInlineStyleSeparator(banner)), h(BannerFooter, {\n ref: footerRef\n }));\n};\n\nexport { BannerContent };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerContentInlineStyle(_ref) {\n var _document$getElementB;\n\n var type = _ref.layout.type,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n showCloseIcon = _ref.decision.showCloseIcon,\n activeAction = _ref.activeAction,\n individualPrivacyOpen = _ref.individualPrivacyOpen,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var innerHeight = ((_document$getElementB = document.getElementById(pageRequestUuid4)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.clientHeight) || window.innerHeight;\n var mobileMaxHeight = +mobile.maxHeight;\n var useMobileMaxHeight = mobileMaxHeight > innerHeight ? innerHeight : mobileMaxHeight;\n var closeIconDistance = showCloseIcon || activeAction ? 51 : 0;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-content\",\n style: {\n position: \"relative\",\n maxHeight: scaleMobile(mobile, pageRequestUuid4, innerHeight - (type === \"banner\" ? 0 : 20) - closeIconDistance, individualPrivacyOpen ? innerHeight - closeIconDistance : useMobileMaxHeight - closeIconDistance),\n overflow: \"auto\"\n }\n };\n}\n\nexport { bannerContentInlineStyle };","import { scaleMobile } from \"../..\";\n\nfunction bannerHeaderInlineStyleSeparator(_ref) {\n var type = _ref.layout.type,\n design = _ref.design,\n _ref$headerDesign = _ref.headerDesign,\n borderWidth = _ref$headerDesign.borderWidth,\n borderColor = _ref$headerDesign.borderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useDesignBorderWidth = scaleMobile(mobile, pageRequestUuid4, design.borderWidth);\n var style = {\n height: scaleMobile(mobile, pageRequestUuid4, +borderWidth),\n background: borderColor,\n position: \"sticky\",\n top: \"var(--rendered-height-header)\",\n zIndex: 9\n };\n\n if (scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"dialog\" && useDesignBorderWidth > 0) {\n style.borderLeft = \"\".concat(useDesignBorderWidth, \"px solid \").concat(design.borderColor);\n style.borderRight = style.borderLeft;\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-header-separator\",\n style: style\n };\n}\n\nexport { bannerHeaderInlineStyleSeparator };","import { scaleMobile } from \"../../scale\";\n\nfunction bannerFooterInlineStyleSeparator(_ref) {\n var type = _ref.layout.type,\n design = _ref.design,\n _ref$footerDesign = _ref.footerDesign,\n borderWidth = _ref$footerDesign.borderWidth,\n borderColor = _ref$footerDesign.borderColor,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, design.borderWidth);\n var style = {\n height: scaleMobile(mobile, pageRequestUuid4, +borderWidth),\n background: borderColor,\n position: \"sticky\",\n bottom: \"var(--rendered-height-footer)\"\n };\n\n if (scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"dialog\" && useBorderWidth > 0) {\n style.borderLeft = \"\".concat(useBorderWidth, \"px solid \").concat(design.borderColor);\n style.borderRight = style.borderLeft;\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-footer-separator\",\n style: style\n };\n}\n\nexport { bannerFooterInlineStyleSeparator };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { bannerContentInlineStyleInner, useBanner, useBannerAnimation, useResettableAnimation } from \"../../..\";\nimport { AnimatedCss } from \"../..\";\nimport { BannerContent } from \".\";\n\nvar BannerAnimatedContent = function BannerAnimatedContent() {\n var banner = useBanner();\n var _banner$layout = banner.layout,\n animationInDuration = _banner$layout.animationInDuration,\n animationOutDuration = _banner$layout.animationOutDuration,\n animationVisible = banner.animationVisible;\n\n var _useBannerAnimation = useBannerAnimation()(banner.layout),\n useAnimationIn = _useBannerAnimation.useAnimationIn,\n useAnimationOut = _useBannerAnimation.useAnimationOut;\n\n var _useResettableAnimati = useResettableAnimation(useAnimationIn, animationInDuration),\n _useResettableAnimati2 = _slicedToArray(_useResettableAnimati, 2),\n stateAnimationIn = _useResettableAnimati2[0],\n stateAnimationInDuration = _useResettableAnimati2[1];\n\n var _useResettableAnimati3 = useResettableAnimation(useAnimationOut === \"none\" ? \"fadeOut\" : useAnimationOut, useAnimationOut === \"none\" ? 0 : animationOutDuration),\n _useResettableAnimati4 = _slicedToArray(_useResettableAnimati3, 2),\n stateAnimationOut = _useResettableAnimati4[0],\n stateAnimationOutDuration = _useResettableAnimati4[1];\n\n return h(AnimatedCss, _extends({\n animationIn: stateAnimationIn,\n animationInDuration: stateAnimationInDuration,\n animationOut: stateAnimationOut,\n animationOutDuration: stateAnimationOutDuration,\n isVisible: animationVisible\n }, bannerContentInlineStyleInner(banner)), h(BannerContent, null));\n};\n\nexport { BannerAnimatedContent };","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport { calculateRgba } from \"../../../utils\";\nimport { scaleMobile } from \"../../scale\";\n\nfunction bannerContentInlineStyleInner(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n dialogMaxWidth = _ref$layout.dialogMaxWidth,\n dialogPosition = _ref$layout.dialogPosition,\n dialogMargin = _ref$layout.dialogMargin,\n bannerPosition = _ref$layout.bannerPosition,\n dialogBorderRadius = _ref$layout.dialogBorderRadius,\n _ref$design = _ref.design,\n borderWidth = _ref$design.borderWidth,\n borderColor = _ref$design.borderColor,\n textAlign = _ref$design.textAlign,\n fontColor = _ref$design.fontColor,\n fontInheritFamily = _ref$design.fontInheritFamily,\n fontFamily = _ref$design.fontFamily,\n fontWeight = _ref$design.fontWeight,\n boxShadowEnabled = _ref$design.boxShadowEnabled,\n boxShadowOffsetX = _ref$design.boxShadowOffsetX,\n boxShadowOffsetY = _ref$design.boxShadowOffsetY,\n boxShadowBlurRadius = _ref$design.boxShadowBlurRadius,\n boxShadowSpreadRadius = _ref$design.boxShadowSpreadRadius,\n boxShadowColor = _ref$design.boxShadowColor,\n boxShadowColorAlpha = _ref$design.boxShadowColorAlpha,\n individualLayout = _ref.individualLayout,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4,\n individualPrivacyOpen = _ref.individualPrivacyOpen;\n var mobileAlignment = mobile.alignment;\n var useType = scaleMobile(mobile, pageRequestUuid4, type, \"banner\");\n var useBorderWidth = scaleMobile(mobile, pageRequestUuid4, borderWidth);\n var width = useType === \"dialog\" ? +(individualPrivacyOpen && !individualLayout.inheritDialogMaxWidth ? individualLayout.dialogMaxWidth : dialogMaxWidth) : \"100%\";\n\n var style = _defineProperty({\n pointerEvents: \"all\",\n transition: \"width 500ms, max-width 500ms\",\n maxWidth: width,\n textAlign: textAlign,\n width: width,\n overflow: \"hidden\",\n alignSelf: scaleMobile(mobile, pageRequestUuid4, useType === \"banner\" ? bannerPosition === \"top\" ? \"flex-start\" : \"flex-end\" : undefined, mobileAlignment === \"bottom\" ? \"flex-end\" : mobileAlignment === \"top\" ? \"flex-start\" : \"center\"),\n fontFamily: fontInheritFamily ? undefined : fontFamily,\n fontWeight: fontWeight,\n color: fontColor,\n margin: useType === \"dialog\" ? 10 : undefined,\n borderRadius: useType === \"dialog\" ? +dialogBorderRadius : undefined,\n boxShadow: boxShadowEnabled ? \"\".concat(boxShadowOffsetX, \"px \").concat(boxShadowOffsetY, \"px \").concat(boxShadowBlurRadius, \"px \").concat(boxShadowSpreadRadius, \"px \").concat(calculateRgba(boxShadowColor, boxShadowColorAlpha)) : undefined\n }, useType === \"banner\" ? bannerPosition === \"top\" ? \"borderBottom\" : \"borderTop\" : \"border\", useType === \"banner\" ? useBorderWidth > 0 ? \"\".concat(useBorderWidth, \"px solid \").concat(borderColor) : undefined : undefined);\n\n if (useType === \"dialog\" && dialogPosition !== \"middleCenter\") {\n style.margin = dialogMargin.map(function (i) {\n return \"\".concat(i, \"px\");\n }).join(\" \");\n }\n\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-inner\",\n style: style\n };\n}\n\nexport { bannerContentInlineStyleInner };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport { useState, useLayoutEffect, useEffect } from \"react\";\nimport { dispatchResizeEvent } from \"@devowl-wp/headless-content-unblocker\";\nimport { useBanner, useBannerActionLinks, useBannerHistory, usePlainCss, useRestrictScrollWhenVisible, bannerOverlayInlineStyle, bannerOverlayInlineStyleAlignment, BannerAnimatedContent, isHiddenDueLegal } from \"../..\";\n\nvar Banner = function Banner() {\n var banner = useBanner();\n var _banner$layout = banner.layout,\n overlay = _banner$layout.overlay,\n overlayBlur = _banner$layout.overlayBlur,\n _banner$customCss = banner.customCss,\n antiAdBlocker = _banner$customCss.antiAdBlocker,\n css = _banner$customCss.css,\n visible = banner.visible,\n animationVisible = banner.animationVisible,\n activeAction = banner.activeAction,\n skipOverlay = banner.skipOverlay,\n gotHiddenDueLegal = banner.gotHiddenDueLegal,\n pageRequestUuid4 = banner.pageRequestUuid4,\n individualPrivacyOpen = banner.individualPrivacyOpen;\n var hiddenDueLegal = isHiddenDueLegal(banner);\n var show = visible && !hiddenDueLegal || !!activeAction;\n usePlainCss(antiAdBlocker ? css : \"\");\n usePlainCss( // `-webkit-text-size-adjust:100%;`: https://stackoverflow.com/a/2711132/5506547\n \"#\".concat(pageRequestUuid4, \", #\").concat(pageRequestUuid4, \" * {box-sizing: border-box;backface-visibility:initial;text-transform:initial;-webkit-text-size-adjust:100%;}\")); // Blur effect\n\n if (process.env.PLUGIN_CTX === \"pro\") {\n /* Silence is golden... Until you have PRO Version! */\n }\n\n useRestrictScrollWhenVisible(show && overlay && animationVisible); // Listen to window resizes and resize the content automatically\n\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n setInvalidate = _useState2[1];\n\n var updateSize = function updateSize() {\n return setInvalidate(+new Date());\n };\n\n useLayoutEffect(function () {\n window.addEventListener(\"resize\", updateSize);\n return function () {\n return window.removeEventListener(\"resize\", updateSize);\n };\n }, []);\n useLayoutEffect(function () {\n dispatchResizeEvent(1000);\n }, [animationVisible, individualPrivacyOpen]); // When changes to the legal settings are done, make the banner visible or hide\n\n gotHiddenDueLegal && useEffect(function () {\n gotHiddenDueLegal(hiddenDueLegal);\n }, [hiddenDueLegal]);\n useBannerHistory();\n useBannerActionLinks();\n\n if (!show) {\n return null;\n }\n\n var content = h(\"div\", bannerOverlayInlineStyleAlignment(banner), h(BannerAnimatedContent, null));\n return skipOverlay ? content : h(\"div\", _extends({\n id: pageRequestUuid4\n }, bannerOverlayInlineStyle(banner)), content);\n};\n\nexport { Banner };","import { useEffect } from \"react\";\n/**\n * Do not allow scrolling when this banner is visible\n *\n * @param visible\n */\n\nfunction useRestrictScrollWhenVisible(visible) {\n return useEffect(function () {\n var _document$body = document.body,\n dataset = _document$body.dataset,\n style = _document$body.style; // Save first state\n\n if (dataset.rcbPreviousOverflow === undefined) {\n dataset.rcbPreviousOverflow = style.overflow;\n }\n\n style.overflow = visible ? \"hidden\" : dataset.rcbPreviousOverflow;\n document.body.parentElement.style.overflow = style.overflow;\n }, [visible]);\n}\n\nexport { useRestrictScrollWhenVisible };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { useEffect, useState } from \"react\";\nimport { useBanner } from \"../../..\";\n\nfunction useBannerHistory() {\n var banner = useBanner();\n var consent = banner.consent,\n groups = banner.groups,\n tcf = banner.tcf,\n activeAction = banner.activeAction,\n selectHistoryEntry = banner.selectHistoryEntry,\n fetchHistory = banner.fetchHistory; // Save the current consent and group settings to restore\n\n var _useState = useState({\n consent: consent,\n groups: groups,\n tcf: tcf\n }),\n _useState2 = _slicedToArray(_useState, 2),\n originalConsent = _useState2[0],\n setOriginalConsent = _useState2[1]; // Listen to consent changes and save it as original consent (only when non-history)\n\n\n useEffect(function () {\n if (!activeAction) {\n setOriginalConsent({\n consent: consent,\n groups: groups,\n tcf: tcf\n });\n }\n }, [consent, groups, tcf, activeAction]);\n useEffect(function () {\n function fetch() {\n return _fetch.apply(this, arguments);\n }\n\n function _fetch() {\n _fetch = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var result, _result, _result$, _groups2, decision, _tcf2;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return fetchHistory();\n\n case 2:\n result = _context.sent;\n\n // Initially select first item\n if (result.length) {\n _result = _slicedToArray(result, 1), _result$ = _result[0], _groups2 = _result$.groups, decision = _result$.decision, _tcf2 = _result$.tcf;\n selectHistoryEntry(_groups2, decision, _tcf2);\n } else {\n selectHistoryEntry([], []);\n }\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _fetch.apply(this, arguments);\n }\n\n if (activeAction === \"history\") {\n // Save state of original consent\n setOriginalConsent({\n consent: consent,\n groups: groups,\n tcf: tcf\n });\n fetch();\n } else {\n // If we close the history, restore the original state\n var _groups = originalConsent.groups,\n consentGroups = originalConsent.consent.groups,\n _tcf = originalConsent.tcf;\n selectHistoryEntry === null || selectHistoryEntry === void 0 ? void 0 : selectHistoryEntry(_groups, consentGroups, _tcf);\n }\n }, [activeAction]);\n}\n\nexport { useBannerHistory };","import { scaleMobile } from \"../..\";\n\nfunction bannerOverlayInlineStyleAlignment(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n dialogPosition = _ref$layout.dialogPosition,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n var style = {\n display: \"flex\",\n width: \"100%\",\n height: \"100%\"\n };\n\n if (scaleMobile(mobile, pageRequestUuid4, type, \"banner\") === \"dialog\") {\n style.alignItems = dialogPosition.startsWith(\"top\") ? \"flex-start\" : dialogPosition.startsWith(\"bottom\") ? \"flex-end\" : \"center\";\n style.justifyContent = dialogPosition.endsWith(\"Center\") ? \"center\" : dialogPosition.endsWith(\"Left\") ? \"flex-start\" : \"flex-end\";\n }\n\n return {\n className: \"wp-exclude-emoji \".concat(antiAdBlocker === \"y\" ? \"\" : \"rcb-align\"),\n style: style\n };\n}\n\nexport { bannerOverlayInlineStyleAlignment };","import { scaleMobile } from \"../..\";\nimport { calculateRgba } from \"../../..\";\n/**\n * This method needs to be ported to Banner.php#wp_footer, too!\n */\n\nfunction bannerOverlayInlineStyle(_ref) {\n var _ref$layout = _ref.layout,\n type = _ref$layout.type,\n overlay = _ref$layout.overlay,\n overlayBg = _ref$layout.overlayBg,\n overlayBgAlpha = _ref$layout.overlayBgAlpha,\n fontSize = _ref.design.fontSize,\n antiAdBlocker = _ref.customCss.antiAdBlocker,\n mobile = _ref.mobile,\n pageRequestUuid4 = _ref.pageRequestUuid4;\n return {\n className: antiAdBlocker === \"y\" ? undefined : \"rcb-bann3r rcb-bann3r-\".concat(scaleMobile(mobile, pageRequestUuid4, type, \"banner\"), \" \").concat(overlay ? \"\" : \"overlay-deactivated\"),\n style: {\n background: overlay ? calculateRgba(overlayBg, overlayBgAlpha) : \"none\",\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n zIndex: 99999,\n pointerEvents: overlay ? \"all\" : \"none\",\n fontSize: scaleMobile(mobile, pageRequestUuid4, +fontSize),\n filter: \"none\"\n }\n };\n}\n\nexport { bannerOverlayInlineStyle };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport var locationRestConsentGet = {\n path: \"/consent\",\n method: RouteHttpVerb.GET\n};","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { useState } from \"react\";\nimport { getOptionsFromWindow, getOtherOptionsFromWindow } from \"../utils\";\nimport { useBannerPreDecisionGateway, useTcf } from \"../hooks\";\nimport { applyConsent, getCookieConsentManager } from \"../others\";\nimport { prepareTcfString } from \"../tcf\";\nimport { getUserDecision } from \"@devowl-wp/cookie-consent-web-client\";\nimport { useBannerConsentListener } from \"@devowl-wp/react-cookie-banner\";\nimport { BannerContextFactory, useBannerToggleOverlay, Banner, useBannerStateContextCallbacks } from \"@devowl-wp/react-cookie-banner\";\nimport { locationRestConsentGet } from \"../wp-api\";\nimport { commonRequest } from \"@devowl-wp/utils\";\nimport { BannerProductionNotice } from \".\";\n/**\n * Simply connects a context store to the banner itself. On the website itself\n * it should not rely\n */\n\nvar WebsiteBanner = function WebsiteBanner(_ref) {\n var poweredLink = _ref.poweredLink;\n\n var _getOtherOptionsFromW = getOtherOptionsFromWindow(),\n _getOtherOptionsFromW2 = _getOtherOptionsFromW.customizeValuesBanner,\n layout = _getOtherOptionsFromW2.layout,\n decision = _getOtherOptionsFromW2.decision,\n legal = _getOtherOptionsFromW2.legal,\n design = _getOtherOptionsFromW2.design,\n headerDesign = _getOtherOptionsFromW2.headerDesign,\n bodyDesign = _getOtherOptionsFromW2.bodyDesign,\n footerDesign = _getOtherOptionsFromW2.footerDesign,\n texts = _getOtherOptionsFromW2.texts,\n individualLayout = _getOtherOptionsFromW2.individualLayout,\n saveButton = _getOtherOptionsFromW2.saveButton,\n group = _getOtherOptionsFromW2.group,\n individualTexts = _getOtherOptionsFromW2.individualTexts,\n customCss = _getOtherOptionsFromW2.customCss,\n mobile = _getOtherOptionsFromW2.mobile,\n pageId = _getOtherOptionsFromW.pageId,\n pageRequestUuid4 = _getOtherOptionsFromW.pageRequestUuid4,\n pageIdToPermalink = _getOtherOptionsFromW.pageIdToPermalink,\n consentForwardingExternalHosts = _getOtherOptionsFromW.consentForwardingExternalHosts,\n essentialGroup = _getOtherOptionsFromW.essentialGroup,\n isTcf = _getOtherOptionsFromW.isTcf,\n isEPrivacyUSA = _getOtherOptionsFromW.isEPrivacyUSA,\n isAgeNotice = _getOtherOptionsFromW.isAgeNotice,\n isListServicesNotice = _getOtherOptionsFromW.isListServicesNotice,\n tcf = _getOtherOptionsFromW.tcf,\n tcfMetadata = _getOtherOptionsFromW.tcfMetadata,\n groups = _getOtherOptionsFromW.groups,\n userConsentCookieName = _getOtherOptionsFromW.userConsentCookieName,\n bannerI18n = _getOtherOptionsFromW.bannerI18n,\n affiliate = _getOtherOptionsFromW.affiliate,\n isCurrentlyInTranslationEditorPreview = _getOtherOptionsFromW.isCurrentlyInTranslationEditorPreview,\n pageByIdUrl = _getOtherOptionsFromW.pageByIdUrl;\n\n var userDecision = getUserDecision(userConsentCookieName); // TCF compatibility\n\n var tcfObject = useTcf(isTcf, tcf, tcfMetadata); // Server-side rendered overlay handler\n\n var _useBannerToggleOverl = useBannerToggleOverlay(document.getElementById(pageRequestUuid4)),\n toggleOverlay = _useBannerToggleOverl.toggleOverlay;\n\n var _useBannerStateContex = useBannerStateContextCallbacks({\n toggleOverlay: toggleOverlay,\n revokeConsent: function revokeConsent(_ref2) {\n var tcf = _ref2.tcf;\n // Do not rely on current state of `groups` because it can be altered through history change\n var buttonClicked = \"shortcode_revoke\"; // TCF compatibility: revoke TCF string\n\n // TCF compatibility: revoke TCF string\n var tcfString;\n\n if (process.env.IS_TCF === \"1\" && tcf !== null && tcf !== void 0 && tcf.model) {\n tcfString = prepareTcfString(tcf.model, buttonClicked);\n }\n\n return applyConsent({\n consent: {\n groups: getCookieConsentManager().getDefaultDecision(true)\n },\n buttonClicked: buttonClicked,\n tcfString: tcfString\n });\n }\n }),\n _openHistory = _useBannerStateContex.openHistory,\n _openBanner = _useBannerStateContex.openBanner,\n _revokeConsent = _useBannerStateContex.revokeConsent,\n _updateTcfFilterBy = _useBannerStateContex.updateTcfFilterBy,\n _updateIndividualPrivacyOpen = _useBannerStateContex.updateIndividualPrivacyOpen,\n _updateGroupChecked = _useBannerStateContex.updateGroupChecked,\n _updateCookieChecked = _useBannerStateContex.updateCookieChecked,\n _onClose = _useBannerStateContex.onClose,\n _selectHistoryEntry = _useBannerStateContex.selectHistoryEntry; // Context values preparation\n\n\n var _useState = useState({\n layout: _objectSpread({}, layout),\n decision: _objectSpread({}, decision),\n legal: _objectSpread({}, legal),\n design: _objectSpread({}, design),\n headerDesign: _objectSpread({}, headerDesign),\n bodyDesign: _objectSpread({}, bodyDesign),\n footerDesign: _objectSpread({}, footerDesign),\n texts: _objectSpread({}, texts),\n individualLayout: _objectSpread({}, individualLayout),\n saveButton: _objectSpread({}, saveButton),\n group: _objectSpread({}, group),\n individualTexts: _objectSpread({}, individualTexts),\n customCss: _objectSpread({}, customCss),\n mobile: _objectSpread({}, mobile),\n productionNotice: h(BannerProductionNotice, null),\n pageRequestUuid4: pageRequestUuid4,\n pageIdToPermalink: pageIdToPermalink,\n pageByIdUrl: pageByIdUrl,\n consentForwardingExternalHosts: consentForwardingExternalHosts,\n pageId: pageId,\n isTcf: isTcf,\n ePrivacyUSA: isEPrivacyUSA,\n ageNotice: isAgeNotice,\n listServicesNotice: isListServicesNotice,\n tcf: tcfObject,\n tcfFilterBy: \"legInt\",\n groups: groups,\n essentialGroup: essentialGroup,\n poweredLink: poweredLink,\n visible: false,\n animationVisible: true,\n skipOverlay: true,\n previewCheckboxActiveState: false,\n individualPrivacyOpen: false,\n i18n: bannerI18n,\n keepVariablesInTexts: isCurrentlyInTranslationEditorPreview,\n affiliate: affiliate,\n consent: {\n groups: _objectSpread(_objectSpread({}, userDecision === false ? {} : userDecision.consent), getCookieConsentManager().getDefaultDecision(userDecision === false))\n },\n didGroupFirstChange: false,\n onSave: function onSave(markAsDoNotTrack, buttonClicked) {\n setContextValue(function (state) {\n var _state$tcf;\n\n // TCF compatibility: persist TCF string\n var tcfString;\n\n if (process.env.IS_TCF === \"1\" && isTcf && (_state$tcf = state.tcf) !== null && _state$tcf !== void 0 && _state$tcf.model) {\n tcfString = prepareTcfString(state.tcf.model, buttonClicked);\n }\n\n var appliedConsent = applyConsent({\n consent: state.consent,\n markAsDoNotTrack: markAsDoNotTrack,\n buttonClicked: buttonClicked,\n tcfString: tcfString\n });\n\n if (state.refreshSiteAfterSave) {\n appliedConsent.then(function () {\n return (// Fix iOS / Safari bug when we want to reload the page after a POST request\n setTimeout(function () {\n return window.location.reload();\n }, state.refreshSiteAfterSave ||\n /* BC */\n 2000)\n );\n }); // When refreshing the site, do not show any out animation\n\n // When refreshing the site, do not show any out animation\n return state;\n } else {\n return _objectSpread(_objectSpread({}, state), toggleOverlay(state, false));\n }\n });\n },\n fetchHistory: function () {\n var _fetchHistory = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var _getOptionsFromWindow, restNamespace, restRoot, restQuery, restNonce, history;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _getOptionsFromWindow = getOptionsFromWindow(), restNamespace = _getOptionsFromWindow.restNamespace, restRoot = _getOptionsFromWindow.restRoot, restQuery = _getOptionsFromWindow.restQuery, restNonce = _getOptionsFromWindow.restNonce;\n _context.next = 3;\n return commonRequest({\n location: locationRestConsentGet,\n options: {\n restNamespace: restNamespace,\n restRoot: restRoot,\n restQuery: restQuery,\n restNonce: restNonce\n },\n sendRestNonce: false\n });\n\n case 3:\n history = _context.sent;\n setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n history: history\n });\n });\n return _context.abrupt(\"return\", history);\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n function fetchHistory() {\n return _fetchHistory.apply(this, arguments);\n }\n\n return fetchHistory;\n }(),\n // Predefined callbacks\n updateTcfFilterBy: function updateTcfFilterBy(newFilter) {\n return _updateTcfFilterBy(setContextValue, newFilter);\n },\n updateIndividualPrivacyOpen: function updateIndividualPrivacyOpen(opened) {\n return _updateIndividualPrivacyOpen(setContextValue, opened);\n },\n updateGroupChecked: function updateGroupChecked(id, checked) {\n return _updateGroupChecked(setContextValue, id, checked);\n },\n updateCookieChecked: function updateCookieChecked(groupId, id, checked) {\n return _updateCookieChecked(setContextValue, groupId, id, checked);\n },\n onClose: function onClose() {\n return _onClose(setContextValue);\n },\n selectHistoryEntry: function selectHistoryEntry(groups, consentGroups, tcf) {\n return _selectHistoryEntry(setContextValue, groups, consentGroups, tcf);\n },\n openHistory: function openHistory(e) {\n return _openHistory(setContextValue, e);\n },\n openBanner: function openBanner(e) {\n return _openBanner(setContextValue, e);\n },\n revokeConsent: function revokeConsent(successMessage, e) {\n return _revokeConsent(setContextValue, successMessage, e);\n }\n }),\n _useState2 = _slicedToArray(_useState, 2),\n contextValue = _useState2[0],\n setContextValue = _useState2[1];\n\n useBannerPreDecisionGateway(contextValue, setContextValue, toggleOverlay);\n useBannerConsentListener(setContextValue, userConsentCookieName);\n var BannerContext = BannerContextFactory.Context();\n return h(BannerContext.Provider, {\n value: contextValue\n }, h(Banner, null));\n};\n\nexport { WebsiteBanner };","import { useMemo } from \"react\";\nimport { prepareTcfString } from \"../tcf\";\nimport { applyTcfModelMetadata, applyRestrictivePurposes, createTcfModel, createTcfModelFromCookie } from \"@devowl-wp/cookie-consent-web-client\";\nimport { getCookieConsentManager } from \"../others\";\n/**\n * Merges the localized `tcf` and `tcfMetadata` together so it can be\n * used inside our `BannerContextProps` and returns a valid `GVL` instance.\n */\n\nfunction useTcf(active, tcf, tcfMeta) {\n return useMemo(function () {\n if (process.env.IS_TCF === \"1\" && active && Object.values(tcf.vendors).length > 0) {\n var gvl;\n var model;\n var manager = getCookieConsentManager();\n var restored = createTcfModelFromCookie(tcf, tcfMeta, manager.getOption(\"tcfCookieName\")); // First, try to resolve from user consent (cookie value)\n\n if (restored) {\n gvl = restored.gvl;\n model = restored.model;\n } else {\n // No consent given, let's create an empty model\n var newTcf = createTcfModel({\n tcf: tcf,\n tcfMeta: tcfMeta,\n tcfString: \"\"\n });\n gvl = newTcf.gvl;\n model = newTcf.model;\n }\n\n applyTcfModelMetadata(model, tcfMeta, manager);\n applyRestrictivePurposes(model, tcf.vendorConfigurations);\n\n if (!restored) {\n prepareTcfString(model, \"initial\");\n }\n\n return {\n gvl: gvl,\n model: model,\n original: tcf,\n metadata: tcfMeta\n };\n } else {\n return undefined;\n }\n }, [active, tcf, tcfMeta]);\n}\n\nexport { useTcf };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { useCallback } from \"react\";\nimport { useBannerAnimation } from \"../..\";\n/**\n * Provides a callback which can be used to update the state of the banner context and manipulate\n * the `visible` and `animationVisible` property correctly.\n */\n\nfunction useBannerToggleOverlay(overlay) {\n var useBannerAnimationCallback = useBannerAnimation();\n var toggleOverlay = useCallback(function (_ref, show) {\n var layout = _ref.layout;\n var animationInDuration = layout.animationInDuration,\n animationOutDuration = layout.animationOutDuration;\n\n var _useBannerAnimationCa = useBannerAnimationCallback(layout),\n useAnimationIn = _useBannerAnimationCa.useAnimationIn,\n useAnimationOut = _useBannerAnimationCa.useAnimationOut;\n\n var defaultIfNoAnimation = 0; // Avoid \"hard\" overlay\n\n var useDuration = show ? useAnimationIn === \"none\" ? defaultIfNoAnimation : animationInDuration : useAnimationOut === \"none\" ? defaultIfNoAnimation : animationOutDuration; // Toggle SSR-rendered overlay\n\n useDuration > 0 && (overlay.style.transition = \"background \".concat(useDuration, \"ms\"));\n overlay.style.background = \"transparent\";\n\n if (show) {\n // We need a small delay to avoid flickering of animation out effect in customizer\n setTimeout(function () {\n overlay.style.display = \"block\";\n }, 0);\n setTimeout(function () {\n var bg = overlay.getAttribute(\"data-bg\");\n overlay.style.background = bg ? bg.split(\":\")[1].trim().replace(\";\", \"\") : \"transparent\";\n }, 100);\n } else {\n setTimeout(function () {\n overlay.style.display = \"none\";\n }, useDuration);\n }\n\n var animationVisible = {\n animationVisible: show\n };\n return show ? _objectSpread({\n visible: true\n }, animationVisible) : animationVisible;\n }, [useBannerAnimationCallback]);\n return {\n overlay: overlay,\n toggleOverlay: toggleOverlay\n };\n}\n\nexport { useBannerToggleOverlay };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { useEffect } from \"react\";\nimport { getOptionsFromWindow, isCustomize } from \"../utils\";\nimport { getCookieConsentManager } from \"../others\";\nimport { preDecisionGateway } from \"@devowl-wp/cookie-consent-web-client\";\nimport { preDecisionGatewayDynamicRequest, preDecisionGatewayHasPageClass, preDecisionGatewayIsCrawler, preDecisionGatewayIsPreventPreDecision, preDecisionGatewaySupportsCookies, preDecisionGatewayUserConsent, preDecisionGatewayIsDoNotTrack } from \"@devowl-wp/cookie-consent-web-client\";\nimport { commonRequest } from \"@devowl-wp/utils\";\nimport { locationRestConsentDynamicPredecisionGet } from \"../wp-api\";\nimport { isHiddenDueLegal } from \"@devowl-wp/react-cookie-banner\";\n/**\n * Do some decision gateways like DNT, Bot / Crawler and Decision and depending\n * on that, show the Banner initially.\n */\n\nfunction useBannerPreDecisionGateway(banner, setContextValue, toggleOverlay) {\n useEffect(function () {\n // Only run this predecision mechanism once and when not in customize\n if (isCustomize()) {\n return;\n }\n\n var _getOptionsFromWindow = getOptionsFromWindow(),\n restNamespace = _getOptionsFromWindow.restNamespace,\n restRoot = _getOptionsFromWindow.restRoot,\n restQuery = _getOptionsFromWindow.restQuery,\n restNonce = _getOptionsFromWindow.restNonce,\n _getOptionsFromWindow2 = _getOptionsFromWindow.others,\n isAcceptAllForBots = _getOptionsFromWindow2.isAcceptAllForBots,\n isPreventPreDecision = _getOptionsFromWindow2.isPreventPreDecision,\n hasDynamicPreDecisions = _getOptionsFromWindow2.hasDynamicPreDecisions,\n isRespectDoNotTrack = _getOptionsFromWindow2.isRespectDoNotTrack;\n\n var onSave = banner.onSave;\n preDecisionGateway(getCookieConsentManager(), {\n gateways: [preDecisionGatewaySupportsCookies, preDecisionGatewayHasPageClass([\"login-action-\"]), preDecisionGatewayDynamicRequest(function () {\n var _document$documentEle = document.documentElement,\n clientWidth = _document$documentEle.clientWidth,\n clientHeight = _document$documentEle.clientHeight;\n return commonRequest({\n location: locationRestConsentDynamicPredecisionGet,\n options: {\n restNamespace: restNamespace,\n restRoot: restRoot,\n restQuery: restQuery,\n restNonce: restNonce\n },\n sendRestNonce: false,\n request: {\n viewPortWidth: clientWidth,\n viewPortHeight: clientHeight\n },\n params: {\n _wp_http_referer: window.location.href\n }\n });\n }, 10000, hasDynamicPreDecisions), /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_, banner) {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", isHiddenDueLegal(banner) ? \"consent\" : false);\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x, _x2) {\n return _ref.apply(this, arguments);\n };\n }(), preDecisionGatewayIsPreventPreDecision(isPreventPreDecision), preDecisionGatewayIsCrawler(isAcceptAllForBots ? \"all\" : false), preDecisionGatewayIsDoNotTrack(isRespectDoNotTrack), preDecisionGatewayUserConsent],\n args: [banner],\n onIsDoNotTrack: function onIsDoNotTrack() {\n onSave(true, \"none\");\n },\n onShowCookieBanner: function onShowCookieBanner() {\n return setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n // Always revert back to \"Essentials\" only consent when cookie needs to be consented\n consent: {\n groups: getCookieConsentManager().getDefaultDecision()\n }\n }, toggleOverlay(state, true));\n });\n }\n });\n }, []);\n}\n\nexport { useBannerPreDecisionGateway };","import { getOtherOptionsFromWindow } from \"./getOtherOptionsFromWindow\";\n/**\n * Checks if the current page is customize page.\n */\n\nfunction isCustomize() {\n return !!getOtherOptionsFromWindow().customizeIdsBanner;\n}\n\nexport { isCustomize };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \"../decision\";\nimport { isCrawler } from \"../utils\";\n/**\n * Is the current request from a spider / crawler?\n */\n\nvar preDecisionGatewayIsCrawler = function preDecisionGatewayIsCrawler(resultIfBot) {\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var decisionCookieName;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n decisionCookieName = _ref.decisionCookieName;\n\n if (!(getUserDecision(decisionCookieName) !== false || !resultIfBot)) {\n _context.next = 3;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 3:\n return _context.abrupt(\"return\", isCrawler() ? resultIfBot : false);\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\nexport { preDecisionGatewayIsCrawler };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { getUserDecision } from \"../decision\";\nimport { isCrawler } from \"../utils\";\n/**\n * Prevent any predecision and user decision and force to reuse existing consent or all for crawlers.\n * This could be e.g. be configured by a dynamic hook or on server-side via a localized variable.\n */\n\nvar preDecisionGatewayIsPreventPreDecision = function preDecisionGatewayIsPreventPreDecision(preventPreDecision) {\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n var decisionCookieName, userDecision;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n decisionCookieName = _ref.decisionCookieName;\n userDecision = getUserDecision(decisionCookieName);\n return _context.abrupt(\"return\", preventPreDecision && userDecision === false ? isCrawler() ? // For crawlers we need to explicitly allow cookies on all pages\n \"all\" : \"consent\" : false);\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\nexport { preDecisionGatewayIsPreventPreDecision };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\n\n/**\n * Do not show cookie banner for a certain page, e.g. the login page.\n */\nvar preDecisionGatewayHasPageClass = function preDecisionGatewayHasPageClass(classNames) {\n return /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var className;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n className = document.body.className;\n return _context.abrupt(\"return\", classNames.filter(function (c) {\n return className.indexOf(c) > -1;\n }).length > 0 ? \"consent\" : false);\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n};\n\nexport { preDecisionGatewayHasPageClass };","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { getUserDecision, OPT_IN_ALL_EVENT } from \"@devowl-wp/cookie-consent-web-client\";\nimport { useEffect } from \"react\";\n\nfunction useBannerConsentListener(setContextValue, userConsentCookieName) {\n useEffect(function () {\n var listener = function listener() {\n var consent = getUserDecision(userConsentCookieName);\n consent && setContextValue(function (state) {\n return _objectSpread(_objectSpread({}, state), {}, {\n consent: {\n groups: consent.consent\n }\n });\n });\n };\n\n document.addEventListener(OPT_IN_ALL_EVENT, listener);\n return function () {\n document.removeEventListener(OPT_IN_ALL_EVENT, listener);\n };\n }, []);\n}\n\nexport { useBannerConsentListener };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\n\n/**\n * Wait for a given object which is calculated through a callback.\n */\nfunction waitObject(_x) {\n return _waitObject.apply(this, arguments);\n}\n\nfunction _waitObject() {\n _waitObject = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(getObject) {\n var delayNextCheck,\n maxTries,\n i,\n _args = arguments;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n delayNextCheck = _args.length > 1 && _args[1] !== undefined ? _args[1] : 500;\n maxTries = _args.length > 2 && _args[2] !== undefined ? _args[2] : 0;\n i = 0;\n\n case 3:\n if (getObject()) {\n _context.next = 11;\n break;\n }\n\n if (!(maxTries > 0 && i >= maxTries)) {\n _context.next = 6;\n break;\n }\n\n return _context.abrupt(\"return\", undefined);\n\n case 6:\n _context.next = 8;\n return new Promise(function (r) {\n return setTimeout(r, delayNextCheck);\n });\n\n case 8:\n i++;\n _context.next = 3;\n break;\n\n case 11:\n return _context.abrupt(\"return\", getObject());\n\n case 12:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _waitObject.apply(this, arguments);\n}\n\nexport { waitObject };","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport { putHtmlCodeToDom, OPT_IN_CONTENT_BLOCKER } from \"@devowl-wp/headless-content-unblocker\";\nimport { OPT_IN_EVENT, waitObject } from \"@devowl-wp/cookie-consent-web-client\";\nvar amazonWidgetsSlotNum = 0;\n/**\n * Some presets have custom opt-in coding, e. g. Amazon Widgets.\n */\n\nfunction listenPresetOptIn() {\n document.addEventListener(OPT_IN_EVENT, /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(_ref) {\n var _ref$detail$cookie, presetId, codeOptIn, codeDynamics, _ref3, amznAssoWidgetHtmlId, element, slotNum, adContainer;\n\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _ref$detail$cookie = _ref.detail.cookie, presetId = _ref$detail$cookie.presetId, codeOptIn = _ref$detail$cookie.codeOptIn, codeDynamics = _ref$detail$cookie.codeDynamics;\n _context2.t0 = presetId;\n _context2.next = _context2.t0 === \"amazon-associates-widget\" ? 4 : _context2.t0 === \"google-maps\" ? 16 : 18;\n break;\n\n case 4:\n _ref3 = codeDynamics || {}, amznAssoWidgetHtmlId = _ref3.amznAssoWidgetHtmlId;\n\n if (!amznAssoWidgetHtmlId) {\n _context2.next = 15;\n break;\n }\n\n element = document.getElementById(amznAssoWidgetHtmlId);\n\n if (!element) {\n _context2.next = 15;\n break;\n }\n\n slotNum = amazonWidgetsSlotNum;\n amazonWidgetsSlotNum++;\n putHtmlCodeToDom(codeOptIn, codeDynamics, element); // Amazon Widgets is using `document.write`, we need to manually move the ad container...\n\n _context2.next = 13;\n return waitObject(function () {\n return document.querySelector(\"[id^=\\\"amzn_assoc_ad_div_\\\"][id$=\\\"\".concat(slotNum, \"\\\"]\"));\n }, 500, 50);\n\n case 13:\n adContainer = _context2.sent;\n\n if (adContainer) {\n element.appendChild(adContainer);\n }\n\n case 15:\n return _context2.abrupt(\"break\", 19);\n\n case 16:\n document.addEventListener(OPT_IN_CONTENT_BLOCKER, /*#__PURE__*/function () {\n var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref4) {\n var element, _ref6, et_pb_map_init, jQuery;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n element = _ref4.detail.element;\n _ref6 = window, et_pb_map_init = _ref6.et_pb_map_init, jQuery = _ref6.jQuery;\n\n if (!(jQuery && element.matches(\".et_pb_map\") && et_pb_map_init)) {\n _context.next = 6;\n break;\n }\n\n _context.next = 5;\n return waitObject(function () {\n return window.google;\n });\n\n case 5:\n et_pb_map_init(jQuery(element).parent());\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x2) {\n return _ref5.apply(this, arguments);\n };\n }());\n return _context2.abrupt(\"break\", 19);\n\n case 18:\n return _context2.abrupt(\"break\", 19);\n\n case 19:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }());\n}\n\nexport { listenPresetOptIn };","import { RouteHttpVerb } from \"@devowl-wp/utils\";\nexport var locationRestConsentClearDelete = {\n path: \"/consent/clear\",\n method: RouteHttpVerb.DELETE\n};","import _createForOfIteratorHelper from \"@babel/runtime/helpers/createForOfIteratorHelper\";\nimport { getOtherOptionsFromWindow } from \"../utils\";\nimport { getUserDecision, regExpPatternFromWildcardName } from \"@devowl-wp/cookie-consent-web-client\";\n/**\n * Synchronously check if a consent is given. See `window.consentApi.consent` for more documentation.\n */\n\nfunction consentSync(typeOrId, name,\n/**\n * This can also be `*` to allow all hosts.\n */\nhost) {\n // Find matching cookie\n var found = [];\n\n var _getOtherOptionsFromW = getOtherOptionsFromWindow(),\n groups = _getOtherOptionsFromW.groups,\n revisionHash = _getOtherOptionsFromW.revisionHash;\n\n var allCookies = groups.map(function (_ref) {\n var items = _ref.items;\n return items;\n }).flat();\n\n var _iterator = _createForOfIteratorHelper(allCookies),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var row = _step.value;\n\n if (typeof typeOrId === \"number\") {\n if (row.id === typeOrId) {\n found.push({\n cookie: row,\n relevance: 10\n });\n }\n } else {\n var technicalDefinitions = row.technicalDefinitions;\n\n if (technicalDefinitions !== null && technicalDefinitions !== void 0 && technicalDefinitions.length) {\n // Check if technical information matches\n var _iterator2 = _createForOfIteratorHelper(technicalDefinitions),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var td = _step2.value;\n var regexp = regExpPatternFromWildcardName(td.name);\n\n if (td.type === typeOrId && (td.name === name || name.match(regexp)) && (td.host === host || host === \"*\")) {\n found.push({\n cookie: row,\n // Create a priority by \"relevance\" inside the technical definitions\n // This is the case if e.g. another Cookie consumes the same technical cookie\n // Example: Vimeo uses Facebook Pixel, too\n relevance: technicalDefinitions.length + technicalDefinitions.indexOf(td) + 1\n });\n break;\n }\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n }\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n var already = getUserDecision(getOtherOptionsFromWindow().userConsentCookieName);\n\n if (found.length) {\n var relevantCookie = found.sort(function (_ref2, _ref3) {\n var a = _ref2.relevance;\n var b = _ref3.relevance;\n return a - b;\n })[0].cookie; // Check if consent is already given\n\n if (already && revisionHash === already.revision) {\n var consentCookieIds = Object.values(a
|