@blateral/b.kit 2.7.5 → 2.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/Actions-c52a14e4.js +2 -0
- package/cjs/{Actions-c7b16449.js.map → Actions-c52a14e4.js.map} +1 -1
- package/cjs/Bdot-62c8e349.js +2 -0
- package/cjs/{Bdot-5f8e0450.js.map → Bdot-62c8e349.js.map} +1 -1
- package/cjs/Button-1adf99b8.js +2 -0
- package/cjs/{Button-51ea72b7.js.map → Button-1adf99b8.js.map} +1 -1
- package/cjs/ButtonGhost-fbab8769.js +2 -0
- package/cjs/{ButtonGhost-628bbd60.js.map → ButtonGhost-fbab8769.js.map} +1 -1
- package/cjs/Callout-d84ca60b.js +2 -0
- package/cjs/{Callout-5dd16679.js.map → Callout-d84ca60b.js.map} +1 -1
- package/cjs/Checkbox-8dccd42f.js +2 -0
- package/cjs/Checkbox-8dccd42f.js.map +1 -0
- package/cjs/Control-e15e1572.js +2 -0
- package/cjs/{Control-08d09950.js.map → Control-e15e1572.js.map} +1 -1
- package/cjs/Copy-a0bc570d.js +2 -0
- package/cjs/{Copy-ea6ab025.js.map → Copy-a0bc570d.js.map} +1 -1
- package/cjs/EventBlock-4e406696.js +2 -0
- package/cjs/{EventBlock-04e719a7.js.map → EventBlock-4e406696.js.map} +1 -1
- package/cjs/Filter-89286db9.js +2 -0
- package/cjs/Filter-89286db9.js.map +1 -0
- package/cjs/FilterBar-0781490f.js +2 -0
- package/cjs/FilterBar-0781490f.js.map +1 -0
- package/cjs/FilterField-7efcacb7.js +2 -0
- package/cjs/FilterField-7efcacb7.js.map +1 -0
- package/cjs/Grid-1acefee9.js +2 -0
- package/cjs/{Grid-6f4f99bc.js.map → Grid-1acefee9.js.map} +1 -1
- package/cjs/Image-94820dfd.js +2 -0
- package/cjs/{Image-c72f7a80.js.map → Image-94820dfd.js.map} +1 -1
- package/cjs/InfoList-e416058c.js +2 -0
- package/cjs/{InfoList-71d3388a.js.map → InfoList-e416058c.js.map} +1 -1
- package/cjs/LanguageSwitcher-aa96cc7d.js +2 -0
- package/cjs/{LanguageSwitcher-8fdd22ba.js.map → LanguageSwitcher-aa96cc7d.js.map} +1 -1
- package/cjs/LibThemeProvider-69109901.js +2 -0
- package/cjs/{LibThemeProvider-4823de57.js.map → LibThemeProvider-69109901.js.map} +1 -1
- package/cjs/Link-8951180c.js +2 -0
- package/cjs/{Link-5a6f1633.js.map → Link-8951180c.js.map} +1 -1
- package/cjs/MultiselectDropdown-a16ea1c9.js +2 -0
- package/cjs/MultiselectDropdown-a16ea1c9.js.map +1 -0
- package/cjs/Navigation-6abb6213.js +2 -0
- package/cjs/{Navigation-939e4d0e.js.map → Navigation-6abb6213.js.map} +1 -1
- package/cjs/Pointer-331140b6.js +2 -0
- package/cjs/{Pointer-fde7b548.js.map → Pointer-331140b6.js.map} +1 -1
- package/cjs/Section-c9a16ccc.js +2 -0
- package/cjs/{Section-e8e8cf81.js.map → Section-c9a16ccc.js.map} +1 -1
- package/cjs/SocialList-aec9a5c2.js +2 -0
- package/cjs/{SocialList-1d5f75a8.js.map → SocialList-aec9a5c2.js.map} +1 -1
- package/cjs/TableBlock-c545ca8d.js +2 -0
- package/cjs/{TableBlock-f2c59d9b.js.map → TableBlock-c545ca8d.js.map} +1 -1
- package/cjs/Tag-937849ad.js +2 -0
- package/cjs/{Tag-9238cf0c.js.map → Tag-937849ad.js.map} +1 -1
- package/cjs/Textarea-599e94a4.js +2 -0
- package/cjs/{Textarea-03bd2c34.js.map → Textarea-599e94a4.js.map} +1 -1
- package/cjs/Textfield-24f468be.js +2 -0
- package/cjs/Textfield-24f468be.js.map +1 -0
- package/cjs/VideoBlock-1fbf598b.js +2 -0
- package/cjs/{VideoBlock-dea7de8a.js.map → VideoBlock-1fbf598b.js.map} +1 -1
- package/cjs/VideoCard-905c08d2.js +2 -0
- package/cjs/{VideoCard-f6c436ca.js.map → VideoCard-905c08d2.js.map} +1 -1
- package/cjs/Wrapper-bca9463e.js +2 -0
- package/cjs/{Wrapper-ff6854d7.js.map → Wrapper-bca9463e.js.map} +1 -1
- package/cjs/base.js +1 -1
- package/cjs/blocks.js +1 -1
- package/cjs/buttons.js +1 -1
- package/cjs/cookies.js +1 -1
- package/cjs/cookies.js.map +1 -1
- package/cjs/fields.js +1 -1
- package/cjs/fields.js.map +1 -1
- package/cjs/footer.js +1 -1
- package/cjs/footer.js.map +1 -1
- package/cjs/formFieldText-046fcbf4.js +2 -0
- package/cjs/formFieldText-046fcbf4.js.map +1 -0
- package/cjs/headers.js +1 -1
- package/cjs/headers.js.map +1 -1
- package/cjs/hooks.js +1 -1
- package/cjs/hooks.js.map +1 -1
- package/cjs/icons.js +1 -1
- package/cjs/index.js +1 -1
- package/cjs/navigation-3f9d4ac4.js +2 -0
- package/cjs/{navigation-bf154e6e.js.map → navigation-3f9d4ac4.js.map} +1 -1
- package/cjs/navigation.js +1 -1
- package/cjs/navigation.js.map +1 -1
- package/cjs/sections.dynamicform.js +1 -1
- package/cjs/sections.dynamicform.js.map +1 -1
- package/cjs/sections.events.js +1 -1
- package/cjs/sections.events.js.map +1 -1
- package/cjs/sections.forms.js +1 -1
- package/cjs/sections.forms.js.map +1 -1
- package/cjs/sections.jobs.js +1 -1
- package/cjs/sections.jobs.js.map +1 -1
- package/cjs/sections.js +1 -1
- package/cjs/sections.js.map +1 -1
- package/cjs/sections.news.js +1 -1
- package/cjs/sections.news.js.map +1 -1
- package/cjs/sections.pois.js +1 -1
- package/cjs/sections.pois.js.map +1 -1
- package/cjs/styles-13e5d9ac.js +2 -0
- package/cjs/styles-13e5d9ac.js.map +1 -0
- package/cjs/typography.js +1 -1
- package/cjs/useCookieConsent-665d91cf.js +2 -0
- package/cjs/{useCookieConsent-aa9f1104.js.map → useCookieConsent-665d91cf.js.map} +1 -1
- package/cjs/useEqualSheetHeight-f1c10ec5.js +2 -0
- package/cjs/{useEqualSheetHeight-501f4c5f.js.map → useEqualSheetHeight-f1c10ec5.js.map} +1 -1
- package/cjs/useLazyInput-911b8eda.js +2 -0
- package/cjs/{useLazyInput-f71c221b.js.map → useLazyInput-911b8eda.js.map} +1 -1
- package/cjs/useLeafletMap-514304b6.js +2 -0
- package/cjs/{useLeafletMap-2e608b01.js.map → useLeafletMap-514304b6.js.map} +1 -1
- package/cjs/useMediaQuery-619d7203.js +2 -0
- package/cjs/{useMediaQuery-3d1054e5.js.map → useMediaQuery-619d7203.js.map} +1 -1
- package/cjs/useScroll-2f086e7f.js +2 -0
- package/cjs/useScroll-2f086e7f.js.map +1 -0
- package/esm/{Actions-21372b3a.js → Actions-e29b5e75.js} +3 -3
- package/esm/{Actions-21372b3a.js.map → Actions-e29b5e75.js.map} +1 -1
- package/esm/{Bdot-4db38753.js → Bdot-5e798e7e.js} +3 -3
- package/esm/{Bdot-4db38753.js.map → Bdot-5e798e7e.js.map} +1 -1
- package/esm/{Button-f9279013.js → Button-9a0dd9aa.js} +3 -3
- package/esm/{Button-f9279013.js.map → Button-9a0dd9aa.js.map} +1 -1
- package/esm/{ButtonGhost-ae2e97a2.js → ButtonGhost-fc9e7a75.js} +3 -3
- package/esm/{ButtonGhost-ae2e97a2.js.map → ButtonGhost-fc9e7a75.js.map} +1 -1
- package/esm/{Callout-a926194d.js → Callout-46f0bef0.js} +4 -4
- package/esm/{Callout-a926194d.js.map → Callout-46f0bef0.js.map} +1 -1
- package/esm/{Checkbox-dd12facd.js → Checkbox-1957067a.js} +11 -8
- package/esm/Checkbox-1957067a.js.map +1 -0
- package/esm/{Control-2d605e12.js → Control-56ec7872.js} +3 -3
- package/esm/{Control-2d605e12.js.map → Control-56ec7872.js.map} +1 -1
- package/esm/{Copy-a28aeb61.js → Copy-c6786949.js} +4 -4
- package/esm/{Copy-a28aeb61.js.map → Copy-c6786949.js.map} +1 -1
- package/esm/{EventBlock-b9204a0d.js → EventBlock-8e130f6b.js} +8 -8
- package/esm/{EventBlock-b9204a0d.js.map → EventBlock-8e130f6b.js.map} +1 -1
- package/esm/{ClockFilled-62515a8f.js → Filter-19220970.js} +321 -235
- package/esm/Filter-19220970.js.map +1 -0
- package/esm/FilterBar-2a2a09b7.js +460 -0
- package/esm/FilterBar-2a2a09b7.js.map +1 -0
- package/esm/FilterField-bec061bc.js +115 -0
- package/esm/FilterField-bec061bc.js.map +1 -0
- package/esm/{Grid-5eec127f.js → Grid-7b33e271.js} +3 -3
- package/esm/{Grid-5eec127f.js.map → Grid-7b33e271.js.map} +1 -1
- package/esm/{Image-dc2b33c1.js → Image-b26692a9.js} +5 -5
- package/esm/{Image-dc2b33c1.js.map → Image-b26692a9.js.map} +1 -1
- package/esm/{InfoList-5c4586ed.js → InfoList-b6980a42.js} +4 -4
- package/esm/{InfoList-5c4586ed.js.map → InfoList-b6980a42.js.map} +1 -1
- package/esm/{LanguageSwitcher-3fa20077.js → LanguageSwitcher-f9218fdc.js} +5 -5
- package/esm/{LanguageSwitcher-3fa20077.js.map → LanguageSwitcher-f9218fdc.js.map} +1 -1
- package/esm/{LibThemeProvider-52555ac9.js → LibThemeProvider-fb1d35ac.js} +3 -3
- package/esm/{LibThemeProvider-52555ac9.js.map → LibThemeProvider-fb1d35ac.js.map} +1 -1
- package/esm/{Link-3fd9c9b8.js → Link-6067a27f.js} +3 -3
- package/esm/{Link-3fd9c9b8.js.map → Link-6067a27f.js.map} +1 -1
- package/esm/MultiselectDropdown-a97be6bc.js +296 -0
- package/esm/MultiselectDropdown-a97be6bc.js.map +1 -0
- package/esm/{Navigation-99f6dc41.js → Navigation-bb79a1eb.js} +10 -10
- package/esm/{Navigation-99f6dc41.js.map → Navigation-bb79a1eb.js.map} +1 -1
- package/esm/{Pointer-5c77b1f1.js → Pointer-b4abee91.js} +3 -3
- package/esm/{Pointer-5c77b1f1.js.map → Pointer-b4abee91.js.map} +1 -1
- package/esm/{Section-b76e6909.js → Section-bd61eb2f.js} +3 -3
- package/esm/{Section-b76e6909.js.map → Section-bd61eb2f.js.map} +1 -1
- package/esm/{SocialList-402b8f20.js → SocialList-336b7f6d.js} +5 -5
- package/esm/{SocialList-402b8f20.js.map → SocialList-336b7f6d.js.map} +1 -1
- package/esm/{TableBlock-67fe2385.js → TableBlock-1ddfd539.js} +5 -5
- package/esm/{TableBlock-67fe2385.js.map → TableBlock-1ddfd539.js.map} +1 -1
- package/esm/{Tag-ac51e916.js → Tag-c3bd6b7f.js} +5 -5
- package/esm/{Tag-ac51e916.js.map → Tag-c3bd6b7f.js.map} +1 -1
- package/esm/{Textarea-266f1e45.js → Textarea-95352f50.js} +10 -10
- package/esm/{Textarea-266f1e45.js.map → Textarea-95352f50.js.map} +1 -1
- package/esm/{Textfield-d2f201a9.js → Textfield-99d91b4e.js} +10 -97
- package/esm/Textfield-99d91b4e.js.map +1 -0
- package/esm/{VideoBlock-b227ae6e.js → VideoBlock-474e0aa4.js} +7 -7
- package/esm/{VideoBlock-b227ae6e.js.map → VideoBlock-474e0aa4.js.map} +1 -1
- package/esm/{VideoCard-2c6e26d1.js → VideoCard-91438667.js} +7 -7
- package/esm/{VideoCard-2c6e26d1.js.map → VideoCard-91438667.js.map} +1 -1
- package/esm/{Wrapper-90dccc89.js → Wrapper-95108115.js} +3 -3
- package/esm/{Wrapper-90dccc89.js.map → Wrapper-95108115.js.map} +1 -1
- package/esm/base.js +5 -5
- package/esm/blocks.js +25 -16
- package/esm/blocks.js.map +1 -1
- package/esm/buttons.js +6 -6
- package/esm/cookies.js +7 -7
- package/esm/fields.js +14 -12
- package/esm/fields.js.map +1 -1
- package/esm/footer.js +11 -11
- package/esm/formFieldText-f4188e55.js +96 -0
- package/esm/formFieldText-f4188e55.js.map +1 -0
- package/esm/headers.js +12 -12
- package/esm/hooks.js +12 -83
- package/esm/hooks.js.map +1 -1
- package/esm/icons.js +5 -2
- package/esm/icons.js.map +1 -1
- package/esm/index.js +3 -3
- package/esm/{navigation-b89325f8.js → navigation-5216dbad.js} +2 -2
- package/esm/{navigation-b89325f8.js.map → navigation-5216dbad.js.map} +1 -1
- package/esm/navigation.js +12 -12
- package/esm/sections.dynamicform.js +15 -14
- package/esm/sections.dynamicform.js.map +1 -1
- package/esm/sections.events.js +13 -14
- package/esm/sections.events.js.map +1 -1
- package/esm/sections.forms.js +10 -9
- package/esm/sections.forms.js.map +1 -1
- package/esm/sections.jobs.js +12 -12
- package/esm/sections.js +28 -25
- package/esm/sections.js.map +1 -1
- package/esm/sections.news.js +17 -18
- package/esm/sections.news.js.map +1 -1
- package/esm/sections.pois.js +318 -143
- package/esm/sections.pois.js.map +1 -1
- package/esm/{styles-da982973.js → styles-1f1841ef.js} +4 -3
- package/esm/styles-1f1841ef.js.map +1 -0
- package/esm/typography.js +6 -6
- package/esm/{useCookieConsent-6b2d4d93.js → useCookieConsent-6661d419.js} +49 -49
- package/esm/useCookieConsent-6661d419.js.map +1 -0
- package/esm/{useEqualSheetHeight-97420d63.js → useEqualSheetHeight-60ff9de7.js} +4 -4
- package/esm/{useEqualSheetHeight-97420d63.js.map → useEqualSheetHeight-60ff9de7.js.map} +1 -1
- package/esm/{useLazyInput-54d1785c.js → useLazyInput-0b6932aa.js} +2 -2
- package/esm/{useLazyInput-54d1785c.js.map → useLazyInput-0b6932aa.js.map} +1 -1
- package/esm/{useLeafletMap-84170d32.js → useLeafletMap-fa0ab7d4.js} +10 -6
- package/esm/useLeafletMap-fa0ab7d4.js.map +1 -0
- package/esm/{useMediaQuery-b42fd64e.js → useMediaQuery-4c1b1fa6.js} +3 -3
- package/esm/{useMediaQuery-b42fd64e.js.map → useMediaQuery-4c1b1fa6.js.map} +1 -1
- package/esm/useScroll-881c7b04.js +76 -0
- package/esm/useScroll-881c7b04.js.map +1 -0
- package/package.json +2 -1
- package/types/blocks.d.ts +1 -0
- package/types/blocks.d.ts.map +1 -1
- package/types/components/base/icons/Cross.d.ts +2 -0
- package/types/components/base/icons/Cross.d.ts.map +1 -1
- package/types/components/base/icons/CrossBubble.d.ts +8 -0
- package/types/components/base/icons/CrossBubble.d.ts.map +1 -0
- package/types/components/base/icons/Icons.d.ts +3 -0
- package/types/components/base/icons/Icons.d.ts.map +1 -1
- package/types/components/base/icons/Magnifier.d.ts +2 -0
- package/types/components/base/icons/Magnifier.d.ts.map +1 -1
- package/types/components/blocks/FilterBar.d.ts +38 -0
- package/types/components/blocks/FilterBar.d.ts.map +1 -0
- package/types/components/blocks/POICard.d.ts.map +1 -1
- package/types/components/blocks/Portal.d.ts +8 -0
- package/types/components/blocks/Portal.d.ts.map +1 -0
- package/types/components/fields/Checkbox.d.ts +3 -1
- package/types/components/fields/Checkbox.d.ts.map +1 -1
- package/types/components/fields/FilterField.d.ts +1 -0
- package/types/components/fields/FilterField.d.ts.map +1 -1
- package/types/components/fields/MultiselectDropdown.d.ts +42 -0
- package/types/components/fields/MultiselectDropdown.d.ts.map +1 -0
- package/types/components/sections/Accordion.d.ts.map +1 -1
- package/types/components/sections/pois/PointOfInterestMap.d.ts +42 -1
- package/types/components/sections/pois/PointOfInterestMap.d.ts.map +1 -1
- package/types/components/sections/pois/PointOfInterestOverview.d.ts +41 -20
- package/types/components/sections/pois/PointOfInterestOverview.d.ts.map +1 -1
- package/types/components/sections/pois/filters.d.ts +10 -0
- package/types/components/sections/pois/filters.d.ts.map +1 -0
- package/types/components/sections/pois/partials/PoiFilterBar.d.ts +8 -0
- package/types/components/sections/pois/partials/PoiFilterBar.d.ts.map +1 -0
- package/types/components/sections/pois/partials/index.d.ts +3 -0
- package/types/components/sections/pois/partials/index.d.ts.map +1 -0
- package/types/fields.d.ts +1 -0
- package/types/fields.d.ts.map +1 -1
- package/types/sections.pois.d.ts +1 -0
- package/types/sections.pois.d.ts.map +1 -1
- package/types/utils/styles.d.ts +1 -0
- package/types/utils/styles.d.ts.map +1 -1
- package/types/utils/useLeafletMap.d.ts.map +1 -1
- package/cjs/Actions-c7b16449.js +0 -2
- package/cjs/Bdot-5f8e0450.js +0 -2
- package/cjs/Button-51ea72b7.js +0 -2
- package/cjs/ButtonGhost-628bbd60.js +0 -2
- package/cjs/Callout-5dd16679.js +0 -2
- package/cjs/Checkbox-1c34c7e6.js +0 -2
- package/cjs/Checkbox-1c34c7e6.js.map +0 -1
- package/cjs/ClockFilled-2483aa4a.js +0 -2
- package/cjs/ClockFilled-2483aa4a.js.map +0 -1
- package/cjs/Control-08d09950.js +0 -2
- package/cjs/Copy-ea6ab025.js +0 -2
- package/cjs/EventBlock-04e719a7.js +0 -2
- package/cjs/Filter-d6d90b8b.js +0 -2
- package/cjs/Filter-d6d90b8b.js.map +0 -1
- package/cjs/FilterField-cce38ffb.js +0 -2
- package/cjs/FilterField-cce38ffb.js.map +0 -1
- package/cjs/Grid-6f4f99bc.js +0 -2
- package/cjs/Image-c72f7a80.js +0 -2
- package/cjs/InfoList-71d3388a.js +0 -2
- package/cjs/LanguageSwitcher-8fdd22ba.js +0 -2
- package/cjs/LibThemeProvider-4823de57.js +0 -2
- package/cjs/Link-5a6f1633.js +0 -2
- package/cjs/Navigation-939e4d0e.js +0 -2
- package/cjs/POICard-e46f9041.js +0 -2
- package/cjs/POICard-e46f9041.js.map +0 -1
- package/cjs/Pointer-fde7b548.js +0 -2
- package/cjs/Section-e8e8cf81.js +0 -2
- package/cjs/SocialList-1d5f75a8.js +0 -2
- package/cjs/TableBlock-f2c59d9b.js +0 -2
- package/cjs/Tag-9238cf0c.js +0 -2
- package/cjs/Textarea-03bd2c34.js +0 -2
- package/cjs/Textfield-56996c98.js +0 -2
- package/cjs/Textfield-56996c98.js.map +0 -1
- package/cjs/VideoBlock-dea7de8a.js +0 -2
- package/cjs/VideoCard-f6c436ca.js +0 -2
- package/cjs/Wrapper-ff6854d7.js +0 -2
- package/cjs/navigation-bf154e6e.js +0 -2
- package/cjs/styles-3a495a2d.js +0 -2
- package/cjs/styles-3a495a2d.js.map +0 -1
- package/cjs/useCookieConsent-aa9f1104.js +0 -2
- package/cjs/useEqualSheetHeight-501f4c5f.js +0 -2
- package/cjs/useLazyInput-f71c221b.js +0 -2
- package/cjs/useLeafletMap-2e608b01.js +0 -2
- package/cjs/useMediaQuery-3d1054e5.js +0 -2
- package/esm/Checkbox-dd12facd.js.map +0 -1
- package/esm/ClockFilled-62515a8f.js.map +0 -1
- package/esm/Filter-2b5f5e53.js +0 -32
- package/esm/Filter-2b5f5e53.js.map +0 -1
- package/esm/FilterField-962ec61f.js +0 -129
- package/esm/FilterField-962ec61f.js.map +0 -1
- package/esm/POICard-96ec71d8.js +0 -116
- package/esm/POICard-96ec71d8.js.map +0 -1
- package/esm/Textfield-d2f201a9.js.map +0 -1
- package/esm/styles-da982973.js.map +0 -1
- package/esm/useCookieConsent-6b2d4d93.js.map +0 -1
- package/esm/useLeafletMap-84170d32.js.map +0 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var e=require("./Filter-89286db9.js"),n=require("react"),r=require("styled-components"),t=require("./Copy-a0bc570d.js"),o=require("./styles-13e5d9ac.js"),i=require("./formFieldText-046fcbf4.js");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a,s=l(n),d=l(r).default.input.withConfig({displayName:"Textfield__InputField",componentId:"sc-11gw2iv-0"})(a||(a=e.__makeTemplateObject(["\n display: block;\n outline: none;\n width: 100%;\n min-height: 40px;\n box-shadow: none;\n\n border-radius: 0px;\n -webkit-appearance: none;\n\n padding: ","px;\n\n border: 1px solid\n ",";\n border-radius: ",";\n\n background: transparent;\n\n ","\n /** Clamping min font size to 16px to prevent browser zooming */\n ","\n\n color: ",";\n\n &:active {\n border: ",";\n }\n\n &:focus {\n outline: ",";\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n\n &::placeholder {\n color: ",";\n }\n"],["\n display: block;\n outline: none;\n width: 100%;\n min-height: 40px;\n box-shadow: none;\n\n border-radius: 0px;\n -webkit-appearance: none;\n\n padding: ","px;\n\n border: 1px solid\n ",";\n border-radius: ",";\n\n background: transparent;\n\n ","\n /** Clamping min font size to 16px to prevent browser zooming */\n ","\n\n color: ",";\n\n &:active {\n border: ",";\n }\n\n &:focus {\n outline: ",";\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n\n &::placeholder {\n color: ",";\n }\n"])),o.spacings.nudge,(function(e){var n=e.theme,r=e.isInverted,t=e.hasError;return r?t?o.getColors(n).errorInverted:o.getColors(n).elementBg.light:t?o.getColors(n).error:o.getColors(n).elementBg.dark}),(function(e){var n=e.theme;return o.getGlobals(n).sections.edgeRadius}),t.copyStyle("copy","small"),(function(e){var n=e.theme;return o.withRange(i.getFormFieldTextSize(n),"font-size")}),(function(e){var n=e.theme,r=e.isInverted,t=e.hasError;return r?t?o.getColors(n).text.errorInverted:o.getFonts(n).copy.small.colorInverted:t?o.getColors(n).text.error:o.getFonts(n).copy.small.color}),(function(e){var n=e.theme,r=e.isInverted;return"1px solid ".concat(r?o.getColors(n).primary.inverted:o.getColors(n).primary.default)}),(function(e){var n=e.theme,r=e.isInverted;return"1px solid ".concat(r?o.getColors(n).primary.inverted:o.getColors(n).primary.default)}),(function(e){var n=e.theme;return e.isInverted?o.getColors(n).text.subtileInverted:o.getColors(n).text.subtile})),u=s.default.memo((function(e){var n=e.type,r=void 0===n?"text":n,t=e.label,o=e.errorMessage,l=e.infoMessage,a=e.isRequired,u=e.isDisabled,c=e.isInverted,p=e.placeholder,g=e.value,f=e.name,m=e.onChange,v=e.onBlur;return u&&(o=""),s.default.createElement(i.FieldWrapper.View,{isDisabled:u},s.default.createElement(i.FieldWrapper.Head,{label:t,isRequired:a,isInverted:c}),s.default.createElement(i.FieldWrapper.Content,null,s.default.createElement(d,{placeholder:p,hasError:!!o,type:r,isInverted:c,name:f,value:g,required:a,onChange:m,onBlur:v})),s.default.createElement(i.FieldWrapper.Messages,{infoMessage:l,errorMessage:o,isInverted:c}))}),(function(e,n){return!!e.enableMemo&&(e.value===n.value&&(e.errorMessage===n.errorMessage&&(e.infoMessage===n.infoMessage&&(e.label===n.label&&e.placeholder===n.placeholder))))}));exports.Textfield=u;
|
|
2
|
+
//# sourceMappingURL=Textfield-24f468be.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Textfield-24f468be.js","sources":["../src/components/fields/Textfield.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\n\nimport { copyStyle } from 'components/typography/Copy';\nimport {\n getColors as color,\n getFonts as font,\n spacings,\n getGlobals as global,\n withRange,\n} from 'utils/styles';\nimport FieldWrapper, { FieldProps } from './FormField';\nimport { getFormFieldTextSize } from 'utils/formFieldText';\n\nconst InputField = styled.input<{\n isInverted?: boolean;\n hasError?: boolean;\n}>`\n display: block;\n outline: none;\n width: 100%;\n min-height: 40px;\n box-shadow: none;\n\n border-radius: 0px;\n -webkit-appearance: none;\n\n padding: ${spacings.nudge}px;\n\n border: 1px solid\n ${({ theme, isInverted, hasError }) => {\n if (isInverted) {\n return hasError\n ? color(theme).errorInverted\n : color(theme).elementBg.light;\n }\n return hasError ? color(theme).error : color(theme).elementBg.dark;\n }};\n border-radius: ${({ theme }) => global(theme).sections.edgeRadius};\n\n background: transparent;\n\n ${copyStyle('copy', 'small')}\n /** Clamping min font size to 16px to prevent browser zooming */\n ${({ theme }) => withRange(getFormFieldTextSize(theme), 'font-size')}\n\n color: ${({ theme, isInverted, hasError }) => {\n if (isInverted) {\n return hasError\n ? color(theme).text.errorInverted\n : font(theme).copy.small.colorInverted;\n }\n return hasError\n ? color(theme).text.error\n : font(theme).copy.small.color;\n }};\n\n &:active {\n border: ${({ theme, isInverted }) =>\n `1px solid ${\n isInverted\n ? color(theme).primary.inverted\n : color(theme).primary.default\n }`};\n }\n\n &:focus {\n outline: ${({ theme, isInverted }) =>\n `1px solid ${\n isInverted\n ? color(theme).primary.inverted\n : color(theme).primary.default\n }`};\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n\n &::placeholder {\n color: ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).text.subtileInverted\n : color(theme).text.subtile};\n }\n`;\n\nexport type FormProps = FieldProps & {\n value?: string;\n name?: string;\n placeholder?: string;\n};\n\nexport type TextfieldProps = FormProps & {\n enableMemo?: boolean;\n type?: 'number' | 'text' | 'tel' | 'email' | 'password';\n isInverted?: boolean;\n onChange?: (ev: React.SyntheticEvent<HTMLInputElement>) => void;\n onBlur?: (ev: React.SyntheticEvent<HTMLInputElement>) => void;\n};\n\nconst Textfield: React.FC<TextfieldProps> = ({\n type = 'text',\n label,\n errorMessage,\n infoMessage,\n isRequired,\n isDisabled,\n isInverted,\n placeholder,\n value,\n name,\n onChange,\n onBlur,\n}) => {\n if (isDisabled) {\n errorMessage = '';\n }\n\n return (\n <FieldWrapper.View isDisabled={isDisabled}>\n <FieldWrapper.Head\n label={label}\n isRequired={isRequired}\n isInverted={isInverted}\n />\n <FieldWrapper.Content>\n <InputField\n placeholder={placeholder}\n hasError={!!errorMessage}\n type={type}\n isInverted={isInverted}\n name={name}\n value={value}\n required={isRequired}\n onChange={onChange}\n onBlur={onBlur}\n />\n </FieldWrapper.Content>\n <FieldWrapper.Messages\n infoMessage={infoMessage}\n errorMessage={errorMessage}\n isInverted={isInverted}\n />\n </FieldWrapper.View>\n );\n};\n\n/**\n * Function to compare both field prop states\n * @param prev Previous props\n * @param next Next props\n * @returns\n */\nconst areEqual = (prev: TextfieldProps, next: TextfieldProps) => {\n // only apply logic if memo functionality is enabled\n if (!prev.enableMemo) return false;\n\n if (prev.value !== next.value) return false;\n if (prev.errorMessage !== next.errorMessage) return false;\n if (prev.infoMessage !== next.infoMessage) return false;\n if (prev.label !== next.label) return false;\n if (prev.placeholder !== next.placeholder) return false;\n\n return true;\n};\n\nexport default React.memo(Textfield, areEqual);\n"],"names":["InputField","styled","input","withConfig","displayName","componentId","templateObject_1","__makeTemplateObject","spacings","nudge","_a","theme","isInverted","hasError","color","errorInverted","elementBg","light","error","dark","global","sections","edgeRadius","copyStyle","withRange","getFormFieldTextSize","text","font","getFonts","copy","small","colorInverted","primary","inverted","default","subtileInverted","subtile","React","memo","_b","type","label","errorMessage","infoMessage","isRequired","isDisabled","placeholder","value","name","onChange","onBlur","FieldWrapper","View","createElement","Head","Content","required","Messages","prev","next","enableMemo"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var n=require("./Filter-89286db9.js"),e=require("react"),t=require("styled-components"),i=require("./styles-13e5d9ac.js"),a=require("./TableBlock-c545ca8d.js"),o=require("./Copy-a0bc570d.js"),r=require("./Actions-c52a14e4.js"),l=require("./Image-94820dfd.js");function d(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var s,c,p,m,u,g,f,v,x,h,w,b=d(e),y=d(t),k=y.default.div.withConfig({displayName:"IntroBlock__View",componentId:"sc-w71lok-0"})(s||(s=n.__makeTemplateObject(["\n display: block;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: ",";\n\n @media "," {\n display: flex;\n flex-direction: row;\n\n & > * + * {\n margin-left: ","px;\n }\n }\n"],["\n display: block;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: ",";\n\n @media "," {\n display: flex;\n flex-direction: row;\n\n & > * + * {\n margin-left: ","px;\n }\n }\n"])),(function(n){return n.isCentered&&"center"}),i.mq.semilarge,i.spacings.spacer),_=y.default.div.withConfig({displayName:"IntroBlock__Content",componentId:"sc-w71lok-1"})(c||(c=n.__makeTemplateObject(["\n & > * + * {\n margin-top: ","px;\n }\n\n max-width: 100%;\n\n @media "," {\n flex: 1 0 66.66%;\n }\n"],["\n & > * + * {\n margin-top: ","px;\n }\n\n max-width: 100%;\n\n @media "," {\n flex: 1 0 66.66%;\n }\n"])),i.spacings.spacer,i.mq.semilarge),I=y.default(a.Title).withConfig({displayName:"IntroBlock__StyledTitle",componentId:"sc-w71lok-2"})(p||(p=n.__makeTemplateObject(["\n max-width: ",";\n"],["\n max-width: ",";\n"])),(function(n){return n.clamp&&"880px"})),C=y.default(o.Copy).withConfig({displayName:"IntroBlock__ContentBlock",componentId:"sc-w71lok-3"})(u||(u=n.__makeTemplateObject(["\n display: block;\n max-width: ",";\n margin-left: ",";\n margin-right: ",";\n\n ","\n\n & + & {\n margin-top: ","px;\n }\n"],["\n display: block;\n max-width: ",";\n margin-left: ",";\n margin-right: ",";\n\n ","\n\n & + & {\n margin-top: ","px;\n }\n"])),(function(n){return n.clamp&&"880px"}),(function(n){return n.isCentered&&"auto"}),(function(n){return n.isCentered&&"auto"}),(function(e){var i=e.maxLines;return i&&i>0&&t.css(m||(m=n.__makeTemplateObject(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: ","; /* number of lines to show */\n line-clamp: ",";\n -webkit-box-orient: vertical;\n "],["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: ","; /* number of lines to show */\n line-clamp: ",";\n -webkit-box-orient: vertical;\n "])),i,i)}),3*i.spacings.nudge),T=y.default(r.Actions).withConfig({displayName:"IntroBlock__StyledActions",componentId:"sc-w71lok-4"})(g||(g=n.__makeTemplateObject(["\n @media "," {\n display: block;\n text-align: ",";\n }\n"],["\n @media "," {\n display: block;\n text-align: ",";\n }\n"])),i.mq.medium,(function(n){return n.isCentered&&"center"})),j=y.default.div.withConfig({displayName:"IntroBlock__MobileImageContainer",componentId:"sc-w71lok-5"})(f||(f=n.__makeTemplateObject(["\n width: 100%;\n height: 100%;\n max-width: 400px;\n max-height: ",";\n text-align: center;\n\n margin: 0 auto;\n margin-top: ","px;\n\n @media "," {\n display: ",";\n }\n"],["\n width: 100%;\n height: 100%;\n max-width: 400px;\n max-height: ",";\n text-align: center;\n\n margin: 0 auto;\n margin-top: ","px;\n\n @media "," {\n display: ",";\n }\n"])),(function(n){return n.coverSpace&&"400px"}),i.spacings.spacer,i.mq.semilarge,(function(n){return n.isCentered?"block":"none"})),q=y.default.div.withConfig({displayName:"IntroBlock__DesktopImageContainer",componentId:"sc-w71lok-6"})(v||(v=n.__makeTemplateObject(["\n display: none;\n width: 100%;\n\n @media "," {\n display: block;\n\n max-width: 400px;\n max-width: calc(100% - 66.66% - ","px);\n }\n"],["\n display: none;\n width: 100%;\n\n @media "," {\n display: block;\n\n max-width: 400px;\n max-width: calc(100% - 66.66% - ","px);\n }\n"])),i.mq.semilarge,i.spacings.spacer),B=y.default.div.withConfig({displayName:"VideoBlock__AspectContainer",componentId:"sc-160aafd-0"})(h||(h=n.__makeTemplateObject(["\n position: relative;\n border-radius: ",";\n overflow: hidden;\n\n aspect-ratio: ",";\n width: ",";\n max-width: 100%;\n\n background: ",";\n object-position: center;\n\n @supports not (aspect-ratio: auto) {\n height: ",";\n padding-top: ",";\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n ","\n"],["\n position: relative;\n border-radius: ",";\n overflow: hidden;\n\n aspect-ratio: ",";\n width: ",";\n max-width: 100%;\n\n background: ",";\n object-position: center;\n\n @supports not (aspect-ratio: auto) {\n height: ",";\n padding-top: ",";\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n @media "," {\n aspect-ratio: ",";\n\n @supports not (aspect-ratio: auto) {\n padding-top: ",";\n }\n }\n\n ","\n"])),(function(n){var e=n.theme;return i.getGlobals(e).sections.edgeRadius}),(function(n){var e=n.ratios;return null==e?void 0:e.small}),(function(n){var e=n.ratios;return(null==e?void 0:e.small)&&"100%"}),(function(n){var e=n.theme;return n.isInverted?i.getGlobals(e).sections.imagePlaceholderBg.inverted:i.getGlobals(e).sections.imagePlaceholderBg.default}),(function(n){var e=n.ratios;return(null==e?void 0:e.small)&&0}),(function(n){var e=n.ratios;return(null==e?void 0:e.small)&&"calc(100% / ".concat(null==e?void 0:e.small,")")}),i.mq.medium,(function(n){var e=n.ratios;return null==e?void 0:e.medium}),(function(n){var e=n.ratios;return(null==e?void 0:e.medium)&&"calc(100% / ".concat(null==e?void 0:e.medium,")")}),i.mq.semilarge,(function(n){var e=n.ratios;return null==e?void 0:e.semilarge}),(function(n){var e=n.ratios;return(null==e?void 0:e.semilarge)&&"calc(100% / ".concat(null==e?void 0:e.semilarge,")")}),i.mq.large,(function(n){var e=n.ratios;return null==e?void 0:e.large}),(function(n){var e=n.ratios;return(null==e?void 0:e.large)&&"calc(100% / ".concat(null==e?void 0:e.large,")")}),i.mq.xlarge,(function(n){var e=n.ratios;return null==e?void 0:e.xlarge}),(function(n){var e=n.ratios;return(null==e?void 0:e.xlarge)&&"calc(100% / ".concat(null==e?void 0:e.xlarge,")")}),(function(e){return e.ratios&&t.css(x||(x=n.__makeTemplateObject(["\n video {\n height: 100%;\n width: 100%;\n object-fit: cover;\n\n @supports not (aspect-ratio: auto) {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n }\n }\n "],["\n video {\n height: 100%;\n width: 100%;\n object-fit: cover;\n\n @supports not (aspect-ratio: auto) {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n }\n }\n "])))})),E=y.default.video.withConfig({displayName:"VideoBlock__Video",componentId:"sc-160aafd-1"})(w||(w=n.__makeTemplateObject(["\n display: block;\n"],["\n display: block;\n"]))),N=e.forwardRef((function(n,t){var i=n.urls,a=n.ratios,o=n.isInverted,r=n.muted,l=void 0!==r&&r,d=n.autoPlay,s=void 0!==d&&d,c=n.loop,p=void 0!==c&&c,m=n.controls,u=void 0!==m&&m,g=n.playsInline,f=void 0===g||g,v=n.onCanPlayThrough,x=n.className,h=e.useRef(null);return e.useImperativeHandle(t,(function(){return h.current})),e.useEffect((function(){h.current&&h.current.readyState>3&&(null==v||v())}),[v]),b.default.createElement(B,{ratios:a,isInverted:o,className:x},b.default.createElement(E,{ref:h,muted:l,autoPlay:s,loop:p,controls:u,onCanPlayThrough:v,playsInline:f},null==i?void 0:i.map((function(n,e){return b.default.createElement("source",{src:n,key:e})}))))}));N.displayName="VideoBlock",exports.IntroBlock=function(e){var t=e.renderAs,i=void 0===t?"div":t,a=e.colorMode,o=void 0===a?"default":a,r=e.title,d=e.titleAs,s=e.titleSize,c=void 0===s?"heading-2":s,p=e.superTitle,m=e.superTitleAs,u=e.abstract,g=e.text,f=e.textType,v=void 0===f?"copy":f,x=e.textSize,h=void 0===x?"medium":x,w=e.primaryAction,y=e.secondaryAction,B=e.isCentered,E=void 0!==B&&B,N=e.clampTitle,A=void 0!==N&&N,O=e.clampAbstract,S=void 0!==O&&O,L=e.maxTitleLines,P=e.maxAbstractLines,V=e.clampText,z=void 0!==V&&V,H=e.maxTextLines,M=e.className,R=e.titleHyphens,G=e.image,D="inverted"===o||"onImage"===o,F=!1!==(null==G?void 0:G.coverSpace);return b.default.createElement(k,{as:i,isCentered:E,className:M},b.default.createElement(_,null,(r||p)&&b.default.createElement(I,{colorMode:o,title:r,titleAs:d,titleSize:c,superTitle:p,superTitleAs:m,isCentered:E,clamp:A,maxLines:L,titleHyphens:R}),(null==G?void 0:G.small)&&b.default.createElement(j,{isCentered:E,coverSpace:F},b.default.createElement(l.Image,n.__assign({},G,{coverSpace:F,allowEdgeRadius:!0,isInverted:D}))),u&&b.default.createElement(C,{type:"copy",size:"big",textColor:"onImage"===o?"#fff":void 0,isInverted:D,isCentered:E,innerHTML:u,clamp:S,maxLines:P}),g&&b.default.createElement(C,{type:v,size:h,textColor:"onImage"===o?"#fff":void 0,isInverted:D,isCentered:E,innerHTML:g,clamp:z,maxLines:H}),(w||y)&&b.default.createElement(T,{primary:w&&w({isInverted:D,isTextCentered:E}),secondary:y&&y({isInverted:D,isTextCentered:E})})),(null==G?void 0:G.small)&&!E&&b.default.createElement(q,null,b.default.createElement(l.Image,n.__assign({},G,{coverSpace:F,allowEdgeRadius:!0,isInverted:D}))))},exports.VideoBlock=N;
|
|
2
|
+
//# sourceMappingURL=VideoBlock-1fbf598b.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VideoBlock-dea7de8a.js","sources":["../src/components/blocks/IntroBlock.tsx","../src/components/blocks/VideoBlock.tsx"],"sourcesContent":["import React from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { spacings, mq, FontOptions } from 'utils/styles';\n\nimport Title, { TitleSize } from 'components/blocks/Title';\nimport Copy, { CopyType } from 'components/typography/Copy';\nimport Actions from 'components/blocks/Actions';\nimport { HeadlineTag } from 'components/typography/Heading';\nimport Image, { ImageProps } from './Image';\n\nconst View = styled.div<{ isCentered?: boolean }>`\n display: block;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: ${({ isCentered }) => isCentered && 'center'};\n\n @media ${mq.semilarge} {\n display: flex;\n flex-direction: row;\n\n & > * + * {\n margin-left: ${spacings.spacer}px;\n }\n }\n`;\n\nconst Content = styled.div`\n & > * + * {\n margin-top: ${spacings.spacer}px;\n }\n\n max-width: 100%;\n\n @media ${mq.semilarge} {\n flex: 1 0 66.66%;\n }\n`;\n\nconst StyledTitle = styled(Title)<{ clamp?: boolean }>`\n max-width: ${({ clamp }) => clamp && '880px'};\n`;\n\nconst ContentBlock = styled(Copy)<{\n isCentered?: boolean;\n clamp?: boolean;\n maxLines?: number;\n}>`\n display: block;\n max-width: ${({ clamp }) => clamp && '880px'};\n margin-left: ${({ isCentered }) => isCentered && 'auto'};\n margin-right: ${({ isCentered }) => isCentered && 'auto'};\n\n ${({ maxLines }) =>\n maxLines &&\n maxLines > 0 &&\n css`\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: ${maxLines}; /* number of lines to show */\n line-clamp: ${maxLines};\n -webkit-box-orient: vertical;\n `}\n\n & + & {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst StyledActions = styled(Actions)<{ isCentered?: boolean }>`\n @media ${mq.medium} {\n display: block;\n text-align: ${({ isCentered }) => isCentered && 'center'};\n }\n`;\n\nconst MobileImageContainer = styled.div<{\n isCentered?: boolean;\n coverSpace?: boolean;\n}>`\n width: 100%;\n height: 100%;\n max-width: 400px;\n max-height: ${({ coverSpace }) => coverSpace && '400px'};\n text-align: center;\n\n margin: 0 auto;\n margin-top: ${spacings.spacer}px;\n\n @media ${mq.semilarge} {\n display: ${({ isCentered }) => (isCentered ? 'block' : 'none')};\n }\n`;\n\nconst DesktopImageContainer = styled.div`\n display: none;\n width: 100%;\n\n @media ${mq.semilarge} {\n display: block;\n\n max-width: 400px;\n max-width: calc(100% - 66.66% - ${spacings.spacer}px);\n }\n`;\n\nexport interface IntroActionProps {\n isInverted?: boolean;\n isTextCentered?: boolean;\n}\n\nconst IntroBlock: React.FC<{\n /** Define rendered HTML DOM tag of intro container */\n renderAs?: 'div' | 'figcaption';\n\n /** Color presets for text and blocks. onImage has always a white text color */\n colorMode?: 'default' | 'inverted' | 'onImage';\n\n /** Main title text */\n title?: string;\n\n /** Main title HTML tag type (h2, h3, h4...) */\n titleAs?: HeadlineTag;\n\n /** Main title size */\n titleSize?: TitleSize;\n\n /** Superior title that stands above main title */\n superTitle?: string;\n\n /** Superior title HTML tag type (h3, h4 ...) */\n superTitleAs?: HeadlineTag;\n\n /** Intro text underneath the title (richtext) */\n abstract?: string;\n\n /** Main intro text (richtext) */\n text?: string;\n\n /** Intro image. coverSpace defaults to true */\n image?: ImageProps;\n\n /** Copy type of intro text (limits richtext capabilites on textType == copy-b or copy-i) */\n textType?: CopyType;\n\n /** Copy size of intro text */\n textSize?: keyof FontOptions;\n\n /** Function to inject custom primary button */\n primaryAction?: (props: IntroActionProps) => React.ReactNode;\n\n /** Function to inject custom secondary button */\n secondaryAction?: (props: IntroActionProps) => React.ReactNode;\n\n /** Center text and actions */\n isCentered?: boolean;\n\n /** Clamp title to max width of 880px */\n clampTitle?: boolean;\n\n /** Limit lines of title. Cut of with elipsis */\n maxTitleLines?: number;\n\n /** Clamp text to max width of 880px */\n clampText?: boolean;\n\n /** Clamp abstract to max width of 880px */\n clampAbstract?: boolean;\n\n /** Limit lines of text. Cut of with elipsis */\n maxTextLines?: number;\n\n /** Limit lines of abstract text. Cut of with elipsis */\n maxAbstractLines?: number;\n\n /** Main title hyphens */\n titleHyphens?: boolean;\n\n className?: string;\n}> = ({\n renderAs = 'div',\n colorMode = 'default',\n title,\n titleAs,\n titleSize = 'heading-2',\n superTitle,\n superTitleAs,\n abstract,\n text,\n textType = 'copy',\n textSize = 'medium',\n primaryAction,\n secondaryAction,\n isCentered = false,\n clampTitle = false,\n clampAbstract = false,\n maxTitleLines,\n maxAbstractLines,\n clampText = false,\n maxTextLines,\n className,\n titleHyphens,\n image,\n}) => {\n const isInverted = colorMode === 'inverted' || colorMode === 'onImage';\n const coverSpace = image?.coverSpace === false ? false : true;\n\n return (\n <View as={renderAs} isCentered={isCentered} className={className}>\n <Content>\n {(title || superTitle) && (\n <StyledTitle\n colorMode={colorMode}\n title={title}\n titleAs={titleAs}\n titleSize={titleSize}\n superTitle={superTitle}\n superTitleAs={superTitleAs}\n isCentered={isCentered}\n clamp={clampTitle}\n maxLines={maxTitleLines}\n titleHyphens={titleHyphens}\n />\n )}\n {image?.small && (\n <MobileImageContainer\n isCentered={isCentered}\n coverSpace={coverSpace}\n >\n <Image\n {...image}\n coverSpace={coverSpace}\n allowEdgeRadius\n isInverted={isInverted}\n />\n </MobileImageContainer>\n )}\n {abstract && (\n <ContentBlock\n type=\"copy\"\n size=\"big\"\n textColor={colorMode === 'onImage' ? '#fff' : undefined}\n isInverted={isInverted}\n isCentered={isCentered}\n innerHTML={abstract}\n clamp={clampAbstract}\n maxLines={maxAbstractLines}\n />\n )}\n {text && (\n <ContentBlock\n type={textType}\n size={textSize}\n textColor={colorMode === 'onImage' ? '#fff' : undefined}\n isInverted={isInverted}\n isCentered={isCentered}\n innerHTML={text}\n clamp={clampText}\n maxLines={maxTextLines}\n />\n )}\n {(primaryAction || secondaryAction) && (\n <StyledActions\n primary={\n primaryAction &&\n primaryAction({\n isInverted,\n isTextCentered: isCentered,\n })\n }\n secondary={\n secondaryAction &&\n secondaryAction({\n isInverted,\n isTextCentered: isCentered,\n })\n }\n />\n )}\n </Content>\n\n {image?.small && !isCentered && (\n <DesktopImageContainer>\n <Image\n {...image}\n coverSpace={coverSpace}\n allowEdgeRadius\n isInverted={isInverted}\n />\n </DesktopImageContainer>\n )}\n </View>\n );\n};\n\nexport default IntroBlock;\n","import React, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n} from 'react';\nimport styled, { css } from 'styled-components';\nimport { getGlobals as global, mq } from 'utils/styles';\n\nconst AspectContainer = styled.div<{\n ratios?: VideoAspectRatios;\n isInverted?: boolean;\n}>`\n position: relative;\n border-radius: ${({ theme }) => global(theme).sections.edgeRadius};\n overflow: hidden;\n\n aspect-ratio: ${({ ratios }) => ratios?.small};\n width: ${({ ratios }) => ratios?.small && '100%'};\n max-width: 100%;\n\n background: ${({ theme, isInverted }) =>\n isInverted\n ? global(theme).sections.imagePlaceholderBg.inverted\n : global(theme).sections.imagePlaceholderBg.default};\n object-position: center;\n\n @supports not (aspect-ratio: auto) {\n height: ${({ ratios }) => ratios?.small && 0};\n padding-top: ${({ ratios }) =>\n ratios?.small && `calc(100% / ${ratios?.small})`};\n }\n\n @media ${mq.medium} {\n aspect-ratio: ${({ ratios }) => ratios?.medium};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.medium && `calc(100% / ${ratios?.medium})`};\n }\n }\n\n @media ${mq.semilarge} {\n aspect-ratio: ${({ ratios }) => ratios?.semilarge};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.semilarge && `calc(100% / ${ratios?.semilarge})`};\n }\n }\n\n @media ${mq.large} {\n aspect-ratio: ${({ ratios }) => ratios?.large};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.large && `calc(100% / ${ratios?.large})`};\n }\n }\n\n @media ${mq.xlarge} {\n aspect-ratio: ${({ ratios }) => ratios?.xlarge};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.xlarge && `calc(100% / ${ratios?.xlarge})`};\n }\n }\n\n ${({ ratios }) =>\n ratios &&\n css`\n video {\n height: 100%;\n width: 100%;\n object-fit: cover;\n\n @supports not (aspect-ratio: auto) {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n }\n }\n `}\n`;\n\nconst Video = styled.video`\n display: block;\n`;\n\nexport interface VideoAspectRatios {\n small: number;\n medium?: number;\n semilarge?: number;\n large?: number;\n xlarge?: number;\n}\n\nexport interface VideoProps {\n urls?: string[];\n ratios?: VideoAspectRatios;\n isInverted?: boolean;\n\n muted?: boolean;\n autoPlay?: boolean;\n loop?: boolean;\n controls?: boolean;\n playsInline?: boolean;\n onCanPlayThrough?: () => void;\n}\n\nconst VideoBlock = forwardRef<\n HTMLVideoElement,\n VideoProps & { className?: string }\n>(\n (\n {\n urls,\n ratios,\n isInverted,\n muted = false,\n autoPlay = false,\n loop = false,\n controls = false,\n playsInline = true,\n onCanPlayThrough,\n className,\n },\n ref\n ) => {\n const videoRef = useRef<HTMLVideoElement | null>(null);\n\n useImperativeHandle<HTMLVideoElement | null, HTMLVideoElement | null>(\n ref,\n () => videoRef.current\n );\n\n useEffect(() => {\n if (videoRef.current && videoRef.current.readyState > 3) {\n onCanPlayThrough?.();\n }\n }, [onCanPlayThrough]);\n\n return (\n <AspectContainer\n ratios={ratios}\n isInverted={isInverted}\n className={className}\n >\n <Video\n ref={videoRef}\n muted={muted}\n autoPlay={autoPlay}\n loop={loop}\n controls={controls}\n onCanPlayThrough={onCanPlayThrough}\n playsInline={playsInline}\n >\n {urls?.map((url, i) => (\n <source src={url} key={i} />\n ))}\n </Video>\n </AspectContainer>\n );\n }\n);\n\nVideoBlock.displayName = 'VideoBlock';\n\nexport default VideoBlock;\n"],"names":["View","styled","div","withConfig","displayName","componentId","templateObject_1","__makeTemplateObject","_a","isCentered","mq","semilarge","spacings","spacer","Content","templateObject_2","StyledTitle","Title","templateObject_3","clamp","ContentBlock","Copy","templateObject_5","maxLines","css","nudge","StyledActions","Actions","medium","MobileImageContainer","coverSpace","DesktopImageContainer","templateObject_8","AspectContainer","theme","global","sections","edgeRadius","ratios","small","isInverted","getGlobals","imagePlaceholderBg","inverted","default","concat","large","xlarge","Video","video","VideoBlock","forwardRef","ref","urls","_b","muted","_c","autoPlay","_d","loop","_e","controls","_f","playsInline","onCanPlayThrough","className","videoRef","useRef","useImperativeHandle","current","useEffect","readyState","React","createElement","map","url","i","src","key","renderAs","colorMode","title","titleAs","titleSize","superTitle","superTitleAs","abstract","text","textType","textSize","primaryAction","secondaryAction","_g","_h","clampTitle","_j","clampAbstract","maxTitleLines","maxAbstractLines","_k","clampText","maxTextLines","titleHyphens","image","as","Image","__assign","allowEdgeRadius","type","size","textColor","undefined","innerHTML","primary","isTextCentered","secondary"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VideoBlock-1fbf598b.js","sources":["../src/components/blocks/IntroBlock.tsx","../src/components/blocks/VideoBlock.tsx"],"sourcesContent":["import React from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { spacings, mq, FontOptions } from 'utils/styles';\n\nimport Title, { TitleSize } from 'components/blocks/Title';\nimport Copy, { CopyType } from 'components/typography/Copy';\nimport Actions from 'components/blocks/Actions';\nimport { HeadlineTag } from 'components/typography/Heading';\nimport Image, { ImageProps } from './Image';\n\nconst View = styled.div<{ isCentered?: boolean }>`\n display: block;\n margin: 0;\n padding: 0;\n width: 100%;\n text-align: ${({ isCentered }) => isCentered && 'center'};\n\n @media ${mq.semilarge} {\n display: flex;\n flex-direction: row;\n\n & > * + * {\n margin-left: ${spacings.spacer}px;\n }\n }\n`;\n\nconst Content = styled.div`\n & > * + * {\n margin-top: ${spacings.spacer}px;\n }\n\n max-width: 100%;\n\n @media ${mq.semilarge} {\n flex: 1 0 66.66%;\n }\n`;\n\nconst StyledTitle = styled(Title)<{ clamp?: boolean }>`\n max-width: ${({ clamp }) => clamp && '880px'};\n`;\n\nconst ContentBlock = styled(Copy)<{\n isCentered?: boolean;\n clamp?: boolean;\n maxLines?: number;\n}>`\n display: block;\n max-width: ${({ clamp }) => clamp && '880px'};\n margin-left: ${({ isCentered }) => isCentered && 'auto'};\n margin-right: ${({ isCentered }) => isCentered && 'auto'};\n\n ${({ maxLines }) =>\n maxLines &&\n maxLines > 0 &&\n css`\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: ${maxLines}; /* number of lines to show */\n line-clamp: ${maxLines};\n -webkit-box-orient: vertical;\n `}\n\n & + & {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst StyledActions = styled(Actions)<{ isCentered?: boolean }>`\n @media ${mq.medium} {\n display: block;\n text-align: ${({ isCentered }) => isCentered && 'center'};\n }\n`;\n\nconst MobileImageContainer = styled.div<{\n isCentered?: boolean;\n coverSpace?: boolean;\n}>`\n width: 100%;\n height: 100%;\n max-width: 400px;\n max-height: ${({ coverSpace }) => coverSpace && '400px'};\n text-align: center;\n\n margin: 0 auto;\n margin-top: ${spacings.spacer}px;\n\n @media ${mq.semilarge} {\n display: ${({ isCentered }) => (isCentered ? 'block' : 'none')};\n }\n`;\n\nconst DesktopImageContainer = styled.div`\n display: none;\n width: 100%;\n\n @media ${mq.semilarge} {\n display: block;\n\n max-width: 400px;\n max-width: calc(100% - 66.66% - ${spacings.spacer}px);\n }\n`;\n\nexport interface IntroActionProps {\n isInverted?: boolean;\n isTextCentered?: boolean;\n}\n\nconst IntroBlock: React.FC<{\n /** Define rendered HTML DOM tag of intro container */\n renderAs?: 'div' | 'figcaption';\n\n /** Color presets for text and blocks. onImage has always a white text color */\n colorMode?: 'default' | 'inverted' | 'onImage';\n\n /** Main title text */\n title?: string;\n\n /** Main title HTML tag type (h2, h3, h4...) */\n titleAs?: HeadlineTag;\n\n /** Main title size */\n titleSize?: TitleSize;\n\n /** Superior title that stands above main title */\n superTitle?: string;\n\n /** Superior title HTML tag type (h3, h4 ...) */\n superTitleAs?: HeadlineTag;\n\n /** Intro text underneath the title (richtext) */\n abstract?: string;\n\n /** Main intro text (richtext) */\n text?: string;\n\n /** Intro image. coverSpace defaults to true */\n image?: ImageProps;\n\n /** Copy type of intro text (limits richtext capabilites on textType == copy-b or copy-i) */\n textType?: CopyType;\n\n /** Copy size of intro text */\n textSize?: keyof FontOptions;\n\n /** Function to inject custom primary button */\n primaryAction?: (props: IntroActionProps) => React.ReactNode;\n\n /** Function to inject custom secondary button */\n secondaryAction?: (props: IntroActionProps) => React.ReactNode;\n\n /** Center text and actions */\n isCentered?: boolean;\n\n /** Clamp title to max width of 880px */\n clampTitle?: boolean;\n\n /** Limit lines of title. Cut of with elipsis */\n maxTitleLines?: number;\n\n /** Clamp text to max width of 880px */\n clampText?: boolean;\n\n /** Clamp abstract to max width of 880px */\n clampAbstract?: boolean;\n\n /** Limit lines of text. Cut of with elipsis */\n maxTextLines?: number;\n\n /** Limit lines of abstract text. Cut of with elipsis */\n maxAbstractLines?: number;\n\n /** Main title hyphens */\n titleHyphens?: boolean;\n\n className?: string;\n}> = ({\n renderAs = 'div',\n colorMode = 'default',\n title,\n titleAs,\n titleSize = 'heading-2',\n superTitle,\n superTitleAs,\n abstract,\n text,\n textType = 'copy',\n textSize = 'medium',\n primaryAction,\n secondaryAction,\n isCentered = false,\n clampTitle = false,\n clampAbstract = false,\n maxTitleLines,\n maxAbstractLines,\n clampText = false,\n maxTextLines,\n className,\n titleHyphens,\n image,\n}) => {\n const isInverted = colorMode === 'inverted' || colorMode === 'onImage';\n const coverSpace = image?.coverSpace === false ? false : true;\n\n return (\n <View as={renderAs} isCentered={isCentered} className={className}>\n <Content>\n {(title || superTitle) && (\n <StyledTitle\n colorMode={colorMode}\n title={title}\n titleAs={titleAs}\n titleSize={titleSize}\n superTitle={superTitle}\n superTitleAs={superTitleAs}\n isCentered={isCentered}\n clamp={clampTitle}\n maxLines={maxTitleLines}\n titleHyphens={titleHyphens}\n />\n )}\n {image?.small && (\n <MobileImageContainer\n isCentered={isCentered}\n coverSpace={coverSpace}\n >\n <Image\n {...image}\n coverSpace={coverSpace}\n allowEdgeRadius\n isInverted={isInverted}\n />\n </MobileImageContainer>\n )}\n {abstract && (\n <ContentBlock\n type=\"copy\"\n size=\"big\"\n textColor={colorMode === 'onImage' ? '#fff' : undefined}\n isInverted={isInverted}\n isCentered={isCentered}\n innerHTML={abstract}\n clamp={clampAbstract}\n maxLines={maxAbstractLines}\n />\n )}\n {text && (\n <ContentBlock\n type={textType}\n size={textSize}\n textColor={colorMode === 'onImage' ? '#fff' : undefined}\n isInverted={isInverted}\n isCentered={isCentered}\n innerHTML={text}\n clamp={clampText}\n maxLines={maxTextLines}\n />\n )}\n {(primaryAction || secondaryAction) && (\n <StyledActions\n primary={\n primaryAction &&\n primaryAction({\n isInverted,\n isTextCentered: isCentered,\n })\n }\n secondary={\n secondaryAction &&\n secondaryAction({\n isInverted,\n isTextCentered: isCentered,\n })\n }\n />\n )}\n </Content>\n\n {image?.small && !isCentered && (\n <DesktopImageContainer>\n <Image\n {...image}\n coverSpace={coverSpace}\n allowEdgeRadius\n isInverted={isInverted}\n />\n </DesktopImageContainer>\n )}\n </View>\n );\n};\n\nexport default IntroBlock;\n","import React, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n} from 'react';\nimport styled, { css } from 'styled-components';\nimport { getGlobals as global, mq } from 'utils/styles';\n\nconst AspectContainer = styled.div<{\n ratios?: VideoAspectRatios;\n isInverted?: boolean;\n}>`\n position: relative;\n border-radius: ${({ theme }) => global(theme).sections.edgeRadius};\n overflow: hidden;\n\n aspect-ratio: ${({ ratios }) => ratios?.small};\n width: ${({ ratios }) => ratios?.small && '100%'};\n max-width: 100%;\n\n background: ${({ theme, isInverted }) =>\n isInverted\n ? global(theme).sections.imagePlaceholderBg.inverted\n : global(theme).sections.imagePlaceholderBg.default};\n object-position: center;\n\n @supports not (aspect-ratio: auto) {\n height: ${({ ratios }) => ratios?.small && 0};\n padding-top: ${({ ratios }) =>\n ratios?.small && `calc(100% / ${ratios?.small})`};\n }\n\n @media ${mq.medium} {\n aspect-ratio: ${({ ratios }) => ratios?.medium};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.medium && `calc(100% / ${ratios?.medium})`};\n }\n }\n\n @media ${mq.semilarge} {\n aspect-ratio: ${({ ratios }) => ratios?.semilarge};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.semilarge && `calc(100% / ${ratios?.semilarge})`};\n }\n }\n\n @media ${mq.large} {\n aspect-ratio: ${({ ratios }) => ratios?.large};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.large && `calc(100% / ${ratios?.large})`};\n }\n }\n\n @media ${mq.xlarge} {\n aspect-ratio: ${({ ratios }) => ratios?.xlarge};\n\n @supports not (aspect-ratio: auto) {\n padding-top: ${({ ratios }) =>\n ratios?.xlarge && `calc(100% / ${ratios?.xlarge})`};\n }\n }\n\n ${({ ratios }) =>\n ratios &&\n css`\n video {\n height: 100%;\n width: 100%;\n object-fit: cover;\n\n @supports not (aspect-ratio: auto) {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n }\n }\n `}\n`;\n\nconst Video = styled.video`\n display: block;\n`;\n\nexport interface VideoAspectRatios {\n small: number;\n medium?: number;\n semilarge?: number;\n large?: number;\n xlarge?: number;\n}\n\nexport interface VideoProps {\n urls?: string[];\n ratios?: VideoAspectRatios;\n isInverted?: boolean;\n\n muted?: boolean;\n autoPlay?: boolean;\n loop?: boolean;\n controls?: boolean;\n playsInline?: boolean;\n onCanPlayThrough?: () => void;\n}\n\nconst VideoBlock = forwardRef<\n HTMLVideoElement,\n VideoProps & { className?: string }\n>(\n (\n {\n urls,\n ratios,\n isInverted,\n muted = false,\n autoPlay = false,\n loop = false,\n controls = false,\n playsInline = true,\n onCanPlayThrough,\n className,\n },\n ref\n ) => {\n const videoRef = useRef<HTMLVideoElement | null>(null);\n\n useImperativeHandle<HTMLVideoElement | null, HTMLVideoElement | null>(\n ref,\n () => videoRef.current\n );\n\n useEffect(() => {\n if (videoRef.current && videoRef.current.readyState > 3) {\n onCanPlayThrough?.();\n }\n }, [onCanPlayThrough]);\n\n return (\n <AspectContainer\n ratios={ratios}\n isInverted={isInverted}\n className={className}\n >\n <Video\n ref={videoRef}\n muted={muted}\n autoPlay={autoPlay}\n loop={loop}\n controls={controls}\n onCanPlayThrough={onCanPlayThrough}\n playsInline={playsInline}\n >\n {urls?.map((url, i) => (\n <source src={url} key={i} />\n ))}\n </Video>\n </AspectContainer>\n );\n }\n);\n\nVideoBlock.displayName = 'VideoBlock';\n\nexport default VideoBlock;\n"],"names":["View","styled","div","withConfig","displayName","componentId","templateObject_1","__makeTemplateObject","_a","isCentered","mq","semilarge","spacings","spacer","Content","templateObject_2","StyledTitle","Title","templateObject_3","clamp","ContentBlock","Copy","templateObject_5","maxLines","css","nudge","StyledActions","Actions","medium","MobileImageContainer","coverSpace","DesktopImageContainer","templateObject_8","AspectContainer","theme","global","sections","edgeRadius","ratios","small","isInverted","getGlobals","imagePlaceholderBg","inverted","default","concat","large","xlarge","Video","video","VideoBlock","forwardRef","ref","urls","_b","muted","_c","autoPlay","_d","loop","_e","controls","_f","playsInline","onCanPlayThrough","className","videoRef","useRef","useImperativeHandle","current","useEffect","readyState","React","createElement","map","url","i","src","key","renderAs","colorMode","title","titleAs","titleSize","superTitle","superTitleAs","abstract","text","textType","textSize","primaryAction","secondaryAction","_g","_h","clampTitle","_j","clampAbstract","maxTitleLines","maxAbstractLines","_k","clampText","maxTextLines","titleHyphens","image","as","Image","__assign","allowEdgeRadius","type","size","textColor","undefined","innerHTML","primary","isTextCentered","secondary"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var n=require("./Filter-89286db9.js"),e=require("react"),t=require("styled-components"),o=require("./styles-13e5d9ac.js"),r=require("./useCookieConsent-665d91cf.js"),a=require("./Copy-a0bc570d.js"),i=require("./ButtonGhost-fbab8769.js"),l=require("./LibThemeProvider-69109901.js");function c(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var s,u,d,m,g,p,b=c(e),f=c(t),v=f.default.div.withConfig({displayName:"VideoCard__View",componentId:"sc-7e1mvm-0"})(s||(s=n.__makeTemplateObject(["\n text-align: center;\n\n cursor: ",";\n position: relative;\n\n padding-bottom: 56.25%;\n\n background-image: url('","');\n background-size: cover;\n background-repeat: no-repeat;\n background-position: center;\n\n border-radius: ",";\n overflow: hidden;\n\n @media "," {\n text-align: left;\n\n background-image: ",";\n }\n\n @media "," {\n background-image: ",";\n }\n\n @media "," {\n background-image: ",";\n }\n\n @media "," {\n background-image: ",";\n }\n\n &:before {\n content: ",";\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n background-color: ",";\n opacity: ",";\n\n pointer-events: none;\n }\n\n &:after {\n content: ",";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n pointer-events: none;\n\n background: linear-gradient(\n 358.19deg,\n rgba(29, 34, 35, 0.52) 12.37%,\n rgba(29, 34, 35, 0) 59.02%\n );\n }\n"],["\n text-align: center;\n\n cursor: ",";\n position: relative;\n\n padding-bottom: 56.25%;\n\n background-image: url('","');\n background-size: cover;\n background-repeat: no-repeat;\n background-position: center;\n\n border-radius: ",";\n overflow: hidden;\n\n @media "," {\n text-align: left;\n\n background-image: ",";\n }\n\n @media "," {\n background-image: ",";\n }\n\n @media "," {\n background-image: ",";\n }\n\n @media "," {\n background-image: ",";\n }\n\n &:before {\n content: ",";\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n background-color: ",";\n opacity: ",";\n\n pointer-events: none;\n }\n\n &:after {\n content: ",";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n pointer-events: none;\n\n background: linear-gradient(\n 358.19deg,\n rgba(29, 34, 35, 0.52) 12.37%,\n rgba(29, 34, 35, 0) 59.02%\n );\n }\n"])),(function(n){return n.onClick&&"pointer"}),(function(n){var e=n.bgImage;return e?e.small:""}),(function(n){var e=n.theme;return o.getGlobals(e).sections.edgeRadius}),o.mq.medium,(function(n){var e=n.bgImage;return(null==e?void 0:e.medium)&&'url("'.concat(e.medium,'")')}),o.mq.semilarge,(function(n){var e=n.bgImage;return(null==e?void 0:e.semilarge)&&'url("'.concat(e.semilarge,'")')}),o.mq.large,(function(n){var e=n.bgImage;return(null==e?void 0:e.large)&&'url("'.concat(e.large,'")')}),o.mq.xlarge,(function(n){var e=n.bgImage;return(null==e?void 0:e.xlarge)&&'url("'.concat(e.xlarge,'")')}),(function(n){var e=n.isActive,t=n.bgImage;return!e&&t&&'""'}),(function(n){var e=n.theme;return o.getColors(e).elementBg.medium}),(function(n){return n.bgImage?"0.3":"0"}),(function(n){var e=n.isActive,t=n.bgImage;return!e&&t&&'""'})),h=f.default.button.withConfig({displayName:"VideoCard__VideoControls",componentId:"sc-7e1mvm-1"})(u||(u=n.__makeTemplateObject(["\n display: block;\n border: none;\n background: none;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n color: ",";\n z-index: 1;\n padding: 0;\n\n cursor: pointer;\n\n & > * {\n opacity: 0.8;\n transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;\n height: 80px;\n width: 80px;\n\n color: ",";\n }\n\n ",":hover > & > * {\n transform: scale(1.05);\n opacity: 1;\n }\n\n ",":active > & > * {\n transform: scale(0.95);\n opacity: 1;\n }\n\n &:focus {\n outline: 2px solid ",";\n border-radius: 50%;\n opacity: 1;\n\n & > * {\n color: ",";\n }\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n box-shadow: none;\n }\n"],["\n display: block;\n border: none;\n background: none;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n color: ",";\n z-index: 1;\n padding: 0;\n\n cursor: pointer;\n\n & > * {\n opacity: 0.8;\n transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;\n height: 80px;\n width: 80px;\n\n color: ",";\n }\n\n ",":hover > & > * {\n transform: scale(1.05);\n opacity: 1;\n }\n\n ",":active > & > * {\n transform: scale(0.95);\n opacity: 1;\n }\n\n &:focus {\n outline: 2px solid ",";\n border-radius: 50%;\n opacity: 1;\n\n & > * {\n color: ",";\n }\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n box-shadow: none;\n }\n"])),(function(n){var e=n.theme;return o.getColors(e).elementBg.light}),(function(n){var e=n.theme;return o.getColors(e).elementBg.dark}),v,v,(function(n){var e=n.theme;return o.getColors(e).primary.default}),(function(n){var e=n.theme;return o.getColors(e).primary.default})),y=f.default.div.withConfig({displayName:"VideoCard__ConsentOverlay",componentId:"sc-7e1mvm-2"})(d||(d=n.__makeTemplateObject(["\n display: ",";\n justify-content: center;\n align-items: center;\n\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n background-color: rgba(0, 0, 0, 0.6);\n pointer-events: ",";\n"],["\n display: ",";\n justify-content: center;\n align-items: center;\n\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n background-color: rgba(0, 0, 0, 0.6);\n pointer-events: ",";\n"])),(function(n){return n.isVisible?"flex":"none"}),(function(n){return n.isVisible?"all":"none"})),k=f.default.div.withConfig({displayName:"VideoCard__ConsentContent",componentId:"sc-7e1mvm-3"})(m||(m=n.__makeTemplateObject(["\n max-width: 330px;\n text-align: center;\n\n & > * + * {\n margin-top: ","px;\n }\n"],["\n max-width: 330px;\n text-align: center;\n\n & > * + * {\n margin-top: ","px;\n }\n"])),3*o.spacings.nudge),C=f.default(a.Copy).withConfig({displayName:"VideoCard__ConsentText",componentId:"sc-7e1mvm-4"})(g||(g=n.__makeTemplateObject([""],[""]))),x=f.default.iframe.withConfig({displayName:"VideoCard__Iframe",componentId:"sc-7e1mvm-5"})(p||(p=n.__makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n border: none;\n"],["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n border: none;\n"])));exports.VideoCard=function(t){var o,a=t.bgImage,c=t.embedId,s=t.playIcon,u=t.consentText,d=void 0===u?"Für die Wiedergabe von Videos muss der Nutzung von Cookies & Daten zugestimmt werden.":u,m=t.consentAction,g=t.onPlayClick,p=t.className,f=l.useLibTheme().globals,_=e.useState(!1),w=_[0],I=_[1],j=e.useState(!1),V=j[0],q=j[1],T=function(){q(!1)};return b.default.createElement(v,{onClick:V?void 0:function(){return n.__awaiter(void 0,void 0,void 0,(function(){var e,t;return n.__generator(this,(function(n){switch(n.label){case 0:return e=!1,g?[4,g()]:[3,2];case 1:return e=n.sent(),[3,3];case 2:t=r.getCookie(f.cookie.name),e=f.cookie.videoCookieTypeRestrictions.reduce((function(n,e){var o,r;return n?!(!t||!(null==t?void 0:t.data.types))&&(n=!!(null===(r=null===(o=null==t?void 0:t.data)||void 0===o?void 0:o.types)||void 0===r?void 0:r[e])):n}),!0),n.label=3;case 3:return e?(I(!0),q(!1)):q(!0),[2]}}))}))},bgImage:w?void 0:a,isActive:w,className:p},!w&&!V&&b.default.createElement(h,null,s||b.default.createElement(n.Play,{iconColor:"#000"})),w&&b.default.createElement(x,{id:"ytplayer",src:"https://www.youtube.com/embed/".concat(c,"?autoplay=1"),allow:"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"}),b.default.createElement(y,{isVisible:V},b.default.createElement(k,null,d&&b.default.createElement(C,{isInverted:!0},d),m?m({handleClick:T,consentProps:(o={},o[r.selectors.buttons.attribute]="",o)}):b.default.createElement(i.ButtonGhost.View,{as:"button",isInverted:!0,onClick:T,className:r.selectors.buttons.class},b.default.createElement(i.ButtonGhost.Label,null,"Zustimmung ändern")))))};
|
|
2
|
+
//# sourceMappingURL=VideoCard-905c08d2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VideoCard-f6c436ca.js","sources":["../src/components/blocks/VideoCard.tsx"],"sourcesContent":["import React, { FC, useState } from 'react';\nimport styled from 'styled-components';\n\nimport { ImageProps } from 'components/blocks/Image';\nimport {\n mq,\n getColors as color,\n getGlobals as global,\n spacings,\n} from 'utils/styles';\nimport Play from 'components/base/icons/Play';\nimport {\n CookieConsentData,\n selectors,\n} from 'utils/cookie-consent/useCookieConsent';\nimport { Cookie, getCookie } from 'utils/cookie-consent/cookie';\nimport Copy from 'components/typography/Copy';\nimport ButtonGhost from 'components/buttons/ButtonGhost';\nimport { useLibTheme } from 'utils/LibThemeProvider';\n\nconst View = styled.div<{\n bgImage?: ImageProps;\n isActive?: boolean;\n onClick?: () => void;\n}>`\n text-align: center;\n\n cursor: ${({ onClick }) => onClick && 'pointer'};\n position: relative;\n\n padding-bottom: 56.25%;\n\n background-image: url('${({ bgImage }) => (bgImage ? bgImage.small : '')}');\n background-size: cover;\n background-repeat: no-repeat;\n background-position: center;\n\n border-radius: ${({ theme }) => global(theme).sections.edgeRadius};\n overflow: hidden;\n\n @media ${mq.medium} {\n text-align: left;\n\n background-image: ${({ bgImage }) =>\n bgImage?.medium && `url(\"${bgImage.medium}\")`};\n }\n\n @media ${mq.semilarge} {\n background-image: ${({ bgImage }) =>\n bgImage?.semilarge && `url(\"${bgImage.semilarge}\")`};\n }\n\n @media ${mq.large} {\n background-image: ${({ bgImage }) =>\n bgImage?.large && `url(\"${bgImage.large}\")`};\n }\n\n @media ${mq.xlarge} {\n background-image: ${({ bgImage }) =>\n bgImage?.xlarge && `url(\"${bgImage.xlarge}\")`};\n }\n\n &:before {\n content: ${({ isActive, bgImage }) => !isActive && bgImage && '\"\"'};\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n background-color: ${({ theme }) => color(theme).elementBg.medium};\n opacity: ${({ bgImage }) => (bgImage ? '0.3' : '0')};\n\n pointer-events: none;\n }\n\n &:after {\n content: ${({ isActive, bgImage }) => !isActive && bgImage && '\"\"'};\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n pointer-events: none;\n\n background: linear-gradient(\n 358.19deg,\n rgba(29, 34, 35, 0.52) 12.37%,\n rgba(29, 34, 35, 0) 59.02%\n );\n }\n`;\n\nconst VideoControls = styled.button`\n display: block;\n border: none;\n background: none;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n color: ${({ theme }) => color(theme).elementBg.light};\n z-index: 1;\n padding: 0;\n\n cursor: pointer;\n\n & > * {\n opacity: 0.8;\n transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;\n height: 80px;\n width: 80px;\n\n color: ${({ theme }) => color(theme).elementBg.dark};\n }\n\n ${View}:hover > & > * {\n transform: scale(1.05);\n opacity: 1;\n }\n\n ${View}:active > & > * {\n transform: scale(0.95);\n opacity: 1;\n }\n\n &:focus {\n outline: 2px solid ${({ theme }) => color(theme).primary.default};\n border-radius: 50%;\n opacity: 1;\n\n & > * {\n color: ${({ theme }) => color(theme).primary.default};\n }\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n box-shadow: none;\n }\n`;\n\nconst ConsentOverlay = styled.div<{ isVisible?: boolean }>`\n display: ${({ isVisible }) => (isVisible ? 'flex' : 'none')};\n justify-content: center;\n align-items: center;\n\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n background-color: rgba(0, 0, 0, 0.6);\n pointer-events: ${({ isVisible }) => (isVisible ? 'all' : 'none')};\n`;\n\nconst ConsentContent = styled.div`\n max-width: 330px;\n text-align: center;\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst ConsentText = styled(Copy)``;\n\nconst Iframe = styled.iframe`\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n border: none;\n`;\n\nexport interface VideoCardProps {\n bgImage: ImageProps;\n embedId: string;\n playIcon?: React.ReactNode;\n consentText?: string;\n consentAction?: (props: {\n handleClick?: () => void;\n consentProps: Record<string, string>;\n }) => React.ReactNode;\n /**\n * Custom handler for play button click\n * @returns true if video should be played\n */\n onPlayClick?: () => Promise<boolean>;\n}\n\nconst VideoCard: FC<VideoCardProps & { className?: string }> = ({\n bgImage,\n embedId,\n playIcon,\n consentText = 'Für die Wiedergabe von Videos muss der Nutzung von Cookies & Daten zugestimmt werden.',\n consentAction,\n onPlayClick,\n className,\n}) => {\n const { globals } = useLibTheme();\n const [isActive, setIsActive] = useState(false);\n const [showConsent, setShowConsent] = useState(false);\n\n const handlePlayClick = async () => {\n let isAccepted = false;\n\n if (onPlayClick) {\n isAccepted = await onPlayClick();\n } else {\n const cookie = getCookie(\n globals.cookie.name\n ) as Cookie<CookieConsentData>;\n\n isAccepted =\n globals.cookie.videoCookieTypeRestrictions.reduce<boolean>(\n (acc, current) => {\n if (!acc) return acc;\n if (!cookie || !cookie?.data.types) return false;\n\n // set acc to false if type is not defined or set to false\n acc = !!cookie?.data?.types?.[current];\n return acc;\n },\n true\n );\n }\n\n if (isAccepted) {\n setIsActive(true);\n setShowConsent(false);\n } else {\n setShowConsent(true);\n }\n };\n\n const handleConsentActionClick = () => {\n setShowConsent(false);\n };\n\n return (\n <View\n onClick={!showConsent ? handlePlayClick : undefined}\n bgImage={isActive ? undefined : bgImage}\n isActive={isActive}\n className={className}\n >\n {!isActive && !showConsent && (\n <VideoControls>\n {playIcon || <Play iconColor=\"#000\" />}\n </VideoControls>\n )}\n {isActive && (\n <Iframe\n id=\"ytplayer\"\n src={`https://www.youtube.com/embed/${embedId}?autoplay=1`}\n allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n />\n )}\n <ConsentOverlay isVisible={showConsent}>\n <ConsentContent>\n {consentText && (\n <ConsentText isInverted>{consentText}</ConsentText>\n )}\n {consentAction ? (\n consentAction({\n handleClick: handleConsentActionClick,\n consentProps: {\n [selectors.buttons.attribute]: '',\n },\n })\n ) : (\n <ButtonGhost.View\n as=\"button\"\n isInverted\n onClick={handleConsentActionClick}\n className={selectors.buttons.class}\n >\n <ButtonGhost.Label>\n Zustimmung ändern\n </ButtonGhost.Label>\n </ButtonGhost.View>\n )}\n </ConsentContent>\n </ConsentOverlay>\n </View>\n );\n};\n\nexport default VideoCard;\n"],"names":["View","styled","div","withConfig","displayName","componentId","_a","onClick","bgImage","small","theme","global","sections","edgeRadius","mq","medium","concat","semilarge","large","xlarge","isActive","color","elementBg","VideoControls","button","templateObject_2","__makeTemplateObject","light","dark","primary","default","ConsentOverlay","templateObject_3","isVisible","ConsentContent","spacings","nudge","ConsentText","Copy","templateObject_5","Iframe","iframe","templateObject_6","embedId","playIcon","_c","consentText","consentAction","onPlayClick","className","globals","useLibTheme","_d","useState","setIsActive","_e","showConsent","setShowConsent","handleConsentActionClick","React","createElement","undefined","__awaiter","isAccepted","cookie_1","getCookie","cookie","name","videoCookieTypeRestrictions","reduce","acc","current","data","types","_b","Play","iconColor","id","src","allow","isInverted","handleClick","consentProps","selectors","buttons","attribute","ButtonGhost","as","class","Label"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VideoCard-905c08d2.js","sources":["../src/components/blocks/VideoCard.tsx"],"sourcesContent":["import React, { FC, useState } from 'react';\nimport styled from 'styled-components';\n\nimport { ImageProps } from 'components/blocks/Image';\nimport {\n mq,\n getColors as color,\n getGlobals as global,\n spacings,\n} from 'utils/styles';\nimport Play from 'components/base/icons/Play';\nimport {\n CookieConsentData,\n selectors,\n} from 'utils/cookie-consent/useCookieConsent';\nimport { Cookie, getCookie } from 'utils/cookie-consent/cookie';\nimport Copy from 'components/typography/Copy';\nimport ButtonGhost from 'components/buttons/ButtonGhost';\nimport { useLibTheme } from 'utils/LibThemeProvider';\n\nconst View = styled.div<{\n bgImage?: ImageProps;\n isActive?: boolean;\n onClick?: () => void;\n}>`\n text-align: center;\n\n cursor: ${({ onClick }) => onClick && 'pointer'};\n position: relative;\n\n padding-bottom: 56.25%;\n\n background-image: url('${({ bgImage }) => (bgImage ? bgImage.small : '')}');\n background-size: cover;\n background-repeat: no-repeat;\n background-position: center;\n\n border-radius: ${({ theme }) => global(theme).sections.edgeRadius};\n overflow: hidden;\n\n @media ${mq.medium} {\n text-align: left;\n\n background-image: ${({ bgImage }) =>\n bgImage?.medium && `url(\"${bgImage.medium}\")`};\n }\n\n @media ${mq.semilarge} {\n background-image: ${({ bgImage }) =>\n bgImage?.semilarge && `url(\"${bgImage.semilarge}\")`};\n }\n\n @media ${mq.large} {\n background-image: ${({ bgImage }) =>\n bgImage?.large && `url(\"${bgImage.large}\")`};\n }\n\n @media ${mq.xlarge} {\n background-image: ${({ bgImage }) =>\n bgImage?.xlarge && `url(\"${bgImage.xlarge}\")`};\n }\n\n &:before {\n content: ${({ isActive, bgImage }) => !isActive && bgImage && '\"\"'};\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n background-color: ${({ theme }) => color(theme).elementBg.medium};\n opacity: ${({ bgImage }) => (bgImage ? '0.3' : '0')};\n\n pointer-events: none;\n }\n\n &:after {\n content: ${({ isActive, bgImage }) => !isActive && bgImage && '\"\"'};\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n pointer-events: none;\n\n background: linear-gradient(\n 358.19deg,\n rgba(29, 34, 35, 0.52) 12.37%,\n rgba(29, 34, 35, 0) 59.02%\n );\n }\n`;\n\nconst VideoControls = styled.button`\n display: block;\n border: none;\n background: none;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n color: ${({ theme }) => color(theme).elementBg.light};\n z-index: 1;\n padding: 0;\n\n cursor: pointer;\n\n & > * {\n opacity: 0.8;\n transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;\n height: 80px;\n width: 80px;\n\n color: ${({ theme }) => color(theme).elementBg.dark};\n }\n\n ${View}:hover > & > * {\n transform: scale(1.05);\n opacity: 1;\n }\n\n ${View}:active > & > * {\n transform: scale(0.95);\n opacity: 1;\n }\n\n &:focus {\n outline: 2px solid ${({ theme }) => color(theme).primary.default};\n border-radius: 50%;\n opacity: 1;\n\n & > * {\n color: ${({ theme }) => color(theme).primary.default};\n }\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n box-shadow: none;\n }\n`;\n\nconst ConsentOverlay = styled.div<{ isVisible?: boolean }>`\n display: ${({ isVisible }) => (isVisible ? 'flex' : 'none')};\n justify-content: center;\n align-items: center;\n\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n background-color: rgba(0, 0, 0, 0.6);\n pointer-events: ${({ isVisible }) => (isVisible ? 'all' : 'none')};\n`;\n\nconst ConsentContent = styled.div`\n max-width: 330px;\n text-align: center;\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst ConsentText = styled(Copy)``;\n\nconst Iframe = styled.iframe`\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n border: none;\n`;\n\nexport interface VideoCardProps {\n bgImage: ImageProps;\n embedId: string;\n playIcon?: React.ReactNode;\n consentText?: string;\n consentAction?: (props: {\n handleClick?: () => void;\n consentProps: Record<string, string>;\n }) => React.ReactNode;\n /**\n * Custom handler for play button click\n * @returns true if video should be played\n */\n onPlayClick?: () => Promise<boolean>;\n}\n\nconst VideoCard: FC<VideoCardProps & { className?: string }> = ({\n bgImage,\n embedId,\n playIcon,\n consentText = 'Für die Wiedergabe von Videos muss der Nutzung von Cookies & Daten zugestimmt werden.',\n consentAction,\n onPlayClick,\n className,\n}) => {\n const { globals } = useLibTheme();\n const [isActive, setIsActive] = useState(false);\n const [showConsent, setShowConsent] = useState(false);\n\n const handlePlayClick = async () => {\n let isAccepted = false;\n\n if (onPlayClick) {\n isAccepted = await onPlayClick();\n } else {\n const cookie = getCookie(\n globals.cookie.name\n ) as Cookie<CookieConsentData>;\n\n isAccepted =\n globals.cookie.videoCookieTypeRestrictions.reduce<boolean>(\n (acc, current) => {\n if (!acc) return acc;\n if (!cookie || !cookie?.data.types) return false;\n\n // set acc to false if type is not defined or set to false\n acc = !!cookie?.data?.types?.[current];\n return acc;\n },\n true\n );\n }\n\n if (isAccepted) {\n setIsActive(true);\n setShowConsent(false);\n } else {\n setShowConsent(true);\n }\n };\n\n const handleConsentActionClick = () => {\n setShowConsent(false);\n };\n\n return (\n <View\n onClick={!showConsent ? handlePlayClick : undefined}\n bgImage={isActive ? undefined : bgImage}\n isActive={isActive}\n className={className}\n >\n {!isActive && !showConsent && (\n <VideoControls>\n {playIcon || <Play iconColor=\"#000\" />}\n </VideoControls>\n )}\n {isActive && (\n <Iframe\n id=\"ytplayer\"\n src={`https://www.youtube.com/embed/${embedId}?autoplay=1`}\n allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n />\n )}\n <ConsentOverlay isVisible={showConsent}>\n <ConsentContent>\n {consentText && (\n <ConsentText isInverted>{consentText}</ConsentText>\n )}\n {consentAction ? (\n consentAction({\n handleClick: handleConsentActionClick,\n consentProps: {\n [selectors.buttons.attribute]: '',\n },\n })\n ) : (\n <ButtonGhost.View\n as=\"button\"\n isInverted\n onClick={handleConsentActionClick}\n className={selectors.buttons.class}\n >\n <ButtonGhost.Label>\n Zustimmung ändern\n </ButtonGhost.Label>\n </ButtonGhost.View>\n )}\n </ConsentContent>\n </ConsentOverlay>\n </View>\n );\n};\n\nexport default VideoCard;\n"],"names":["View","styled","div","withConfig","displayName","componentId","_a","onClick","bgImage","small","theme","global","sections","edgeRadius","mq","medium","concat","semilarge","large","xlarge","isActive","color","elementBg","VideoControls","button","templateObject_2","__makeTemplateObject","light","dark","primary","default","ConsentOverlay","templateObject_3","isVisible","ConsentContent","spacings","nudge","ConsentText","Copy","templateObject_5","Iframe","iframe","templateObject_6","embedId","playIcon","_c","consentText","consentAction","onPlayClick","className","globals","useLibTheme","_d","useState","setIsActive","_e","showConsent","setShowConsent","handleConsentActionClick","React","createElement","undefined","__awaiter","isAccepted","cookie_1","getCookie","cookie","name","videoCookieTypeRestrictions","reduce","acc","current","data","types","_b","Play","iconColor","id","src","allow","isInverted","handleClick","consentProps","selectors","buttons","attribute","ButtonGhost","as","class","Label"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var e=require("./Filter-89286db9.js"),t=require("react"),r=require("styled-components"),a=require("./styles-13e5d9ac.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function i(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var c,p=i(t),s=n(r),d=2*a.spacings.nudge,o=s.default.div.withConfig({displayName:"Wrapper__View",componentId:"sc-1ll038z-0"})(c||(c=e.__makeTemplateObject(["\n position: relative;\n width: 100%;\n max-width: ",";\n margin-left: auto;\n margin-right: auto;\n padding: 0\n ","px;\n"],["\n position: relative;\n width: 100%;\n max-width: ",";\n margin-left: auto;\n margin-right: auto;\n padding: 0\n ","px;\n"])),(function(e){switch(e.clampWidth){case"large":return"".concat(a.spacings.wrapperLarge,"px");case"small":return"".concat(a.spacings.wrapperSmall,"px");default:return"".concat(a.spacings.wrapper,"px")}}),(function(e){return e.addWhitespace?d:0}));exports.Wrapper=function(e){var t=e.addWhitespace,r=void 0!==t&&t,a=e.clampWidth,n=void 0===a?"normal":a,i=e.className,c=e.children;return p.createElement(o,{className:i,addWhitespace:r,clampWidth:n},c)},exports.wrapperWhitespace=d;
|
|
2
|
+
//# sourceMappingURL=Wrapper-bca9463e.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Wrapper-
|
|
1
|
+
{"version":3,"file":"Wrapper-bca9463e.js","sources":["../src/components/base/Wrapper.tsx"],"sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\n\nimport { spacings } from 'utils/styles';\n\nexport type ClampWidthType = 'small' | 'normal' | 'large';\n\nexport const wrapperWhitespace = spacings.nudge * 2;\n\nconst View = styled.div<{\n clampWidth?: ClampWidthType;\n addWhitespace?: boolean;\n}>`\n position: relative;\n width: 100%;\n max-width: ${({ clampWidth }) => {\n switch (clampWidth) {\n case 'large':\n return `${spacings.wrapperLarge}px`;\n\n case 'small':\n return `${spacings.wrapperSmall}px`;\n\n default:\n case 'normal':\n return `${spacings.wrapper}px`;\n }\n }};\n margin-left: auto;\n margin-right: auto;\n padding: 0\n ${({ addWhitespace }) => (addWhitespace ? wrapperWhitespace : 0)}px;\n`;\n\nconst Wrapper: React.FC<{\n addWhitespace?: boolean;\n clampWidth?: ClampWidthType;\n className?: string;\n children?: React.ReactNode;\n}> = ({\n addWhitespace = false,\n clampWidth = 'normal',\n className,\n children,\n}) => {\n return (\n <View\n className={className}\n addWhitespace={addWhitespace}\n clampWidth={clampWidth}\n >\n {children}\n </View>\n );\n};\n\nexport default Wrapper;\n"],"names":["wrapperWhitespace","spacings","nudge","View","styled","div","withConfig","displayName","componentId","templateObject_1","__makeTemplateObject","_a","clampWidth","concat","wrapperLarge","wrapperSmall","wrapper","addWhitespace","_b","_c","className","children","React","createElement"],"mappings":"kgBAOaA,EAAqC,EAAjBC,EAAAA,SAASC,MAEpCC,EAAOC,EAAAA,QAAOC,IAAVC,WAAA,CAAAC,YAAA,gBAAAC,YAAA,gBAAGJ,CAAUK,IAAAA,EAAAC,EAAAA,qBAAA,CAAA,+DAAA,+EAAA,SAAA,CAGrB,+DAeG,+EAImE,YAhBvD,SAACC,GACV,OADsBA,EAAAC,YAElB,IAAK,QACM,MAAA,GAAGC,OAAAZ,EAAQA,SAACa,mBAEvB,IAAK,QACM,MAAA,GAAGD,OAAAZ,EAAQA,SAACc,mBAEvB,QAEW,MAAA,GAAGF,OAAAZ,EAAQA,SAACe,kBAMzB,SAACL,GAAsB,OAAPA,EAAAM,cAAwBjB,EAAoB,qBAQjE,SAACW,GACF,IAAAO,EAAAP,EAAAM,cAAAA,OAAa,IAAAC,GAAQA,EACrBC,EAAqBR,EAAAC,WAArBA,OAAU,IAAAO,EAAG,SAAQA,EACrBC,EAAST,EAAAS,UACTC,EAAQV,EAAAU,SAER,OACIC,EAACC,cAAApB,GACGiB,UAAWA,EACXH,cAAeA,EACfL,WAAYA,GAEXS"}
|
package/cjs/base.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Grid-
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Grid-1acefee9.js"),r=require("./Section-c9a16ccc.js"),t=require("./Wrapper-bca9463e.js");require("./Filter-89286db9.js"),require("react"),require("styled-components"),require("./clamp-bd21d587.js"),require("./styles-13e5d9ac.js"),require("react-dom/server"),require("./concat-f387d848.js"),require("./arrays-c272ed59.js"),exports.Grid=e.Grid,exports.getGridWidth=e.getGridWidth,exports.gridSettings=e.gridSettings,exports.Section=r.Section,exports.mapToBgMode=r.mapToBgMode,exports.Wrapper=t.Wrapper,exports.wrapperWhitespace=t.wrapperWhitespace;
|
|
2
2
|
//# sourceMappingURL=base.js.map
|
package/cjs/blocks.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./TableBlock-
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./TableBlock-c545ca8d.js"),r=require("./Actions-c52a14e4.js"),s=require("./Bdot-62c8e349.js"),i=require("./VideoBlock-1fbf598b.js"),t=require("./Image-94820dfd.js"),o=require("./LanguageSwitcher-aa96cc7d.js"),c=require("./EventBlock-4e406696.js"),a=require("./Tag-937849ad.js"),u=require("./FilterBar-0781490f.js"),l=require("./InfoList-e416058c.js"),d=require("./SocialList-aec9a5c2.js");require("./Filter-89286db9.js"),require("react"),require("styled-components"),require("./Copy-a0bc570d.js"),require("./clamp-bd21d587.js"),require("./LibThemeProvider-69109901.js"),require("./styles-13e5d9ac.js"),require("react-dom/server"),require("./Link-8951180c.js"),require("./statusFormatter-0393122b.js"),require("./arrays-c272ed59.js"),require("./FilterField-7efcacb7.js"),require("./useLazyInput-911b8eda.js"),require("./MultiselectDropdown-a16ea1c9.js"),require("./formFieldText-046fcbf4.js"),require("./useMounted-0bba9869.js"),require("./Checkbox-8dccd42f.js"),require("./useScroll-2f086e7f.js"),require("react-dom"),require("./Pointer-331140b6.js"),exports.TableBlock=e.TableBlock,exports.Title=e.Title,exports.Actions=r.Actions,exports.Bdot=s.Bdot,exports.IntroBlock=i.IntroBlock,exports.VideoBlock=i.VideoBlock,exports.Image=t.Image,exports.LanguageSwitcher=o.LanguageSwitcher,exports.EventBlock=c.EventBlock,exports.Tag=a.Tag,exports.FilterBar=u.FilterBar,exports.POICard=u.POICard,exports.POIFacts=u.POIFacts,exports.InfoList=l.InfoList,exports.SocialList=d.SocialList;
|
|
2
2
|
//# sourceMappingURL=blocks.js.map
|
package/cjs/buttons.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Button-
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Button-1adf99b8.js"),r=require("./ButtonGhost-fbab8769.js"),t=require("./Pointer-331140b6.js"),o=require("./Control-e15e1572.js");require("./Filter-89286db9.js"),require("react"),require("styled-components"),require("./hexRgbConverter-91b28aea.js"),require("./clamp-bd21d587.js"),require("./styles-13e5d9ac.js"),require("react-dom/server"),exports.Button=e.Button,exports.ButtonGhost=r.ButtonGhost,exports.Pointer=t.Pointer,exports.Control=o.Control;
|
|
2
2
|
//# sourceMappingURL=buttons.js.map
|
package/cjs/cookies.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./ClockFilled-2483aa4a.js"),n=require("./Actions-c7b16449.js"),t=require("./Checkbox-1c34c7e6.js"),o=require("./Copy-ea6ab025.js"),i=require("react"),a=require("styled-components"),l=require("./useCookieConsent-aa9f1104.js"),r=require("./hexRgbConverter-91b28aea.js"),c=require("./LibThemeProvider-4823de57.js"),s=require("./statusFormatter-0393122b.js"),d=require("./styles-3a495a2d.js"),p=require("./useMounted-0bba9869.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("./clamp-bd21d587.js"),require("react-dom/server");var m,g,b,f,h,x,C,k,_,y,v,w,T,j,E=u(i),I=u(a),N=I.default.div.withConfig({displayName:"CookieConsent__Stage",componentId:"sc-b6420b-0"})(m||(m=e.__makeTemplateObject(["\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: rgba(0, 0, 0, ",");\n z-index: ",";\n"],["\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: rgba(0, 0, 0, ",");\n z-index: ",";\n"])),(function(e){return e.bgOpacity||.4}),(function(e){return e.zIndex||1e3})),O=I.default.div.withConfig({displayName:"CookieConsent__View",componentId:"sc-b6420b-1"})(g||(g=e.__makeTemplateObject(["\n box-sizing: border-box;\n max-width: 900px;\n width: 100vw;\n\n max-height: 85%;\n overflow-y: scroll;\n padding: ","px ","px;\n position: fixed;\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 0);\n text-align: center;\n\n background-color: ",";\n box-shadow: 0 2px 44px rgba(0, 0, 0, 0.3);\n\n & > * + * {\n margin-top: ","px;\n }\n\n @media "," {\n padding: ","px;\n\n & > * + * {\n margin-top: ","px;\n }\n }\n\n @media "," {\n bottom: ","px;\n max-height: 100vh;\n overflow: auto;\n }\n"],["\n box-sizing: border-box;\n max-width: 900px;\n width: 100vw;\n\n max-height: 85%;\n overflow-y: scroll;\n padding: ","px ","px;\n position: fixed;\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 0);\n text-align: center;\n\n background-color: ",";\n box-shadow: 0 2px 44px rgba(0, 0, 0, 0.3);\n\n & > * + * {\n margin-top: ","px;\n }\n\n @media "," {\n padding: ","px;\n\n & > * + * {\n margin-top: ","px;\n }\n }\n\n @media "," {\n bottom: ","px;\n max-height: 100vh;\n overflow: auto;\n }\n"])),d.spacings.spacer,2*d.spacings.nudge,(function(e){var n=e.theme;return d.getColors(n).elementBg.light}),2*d.spacings.nudge,d.mq.medium,5*d.spacings.nudge,3*d.spacings.nudge,d.mq.semilarge,1.5*d.spacings.spacer),q=I.default(o.Copy).withConfig({displayName:"CookieConsent__Status",componentId:"sc-b6420b-2"})(b||(b=e.__makeTemplateObject(["\n li > * + * {\n margin-left: ","px;\n }\n"],["\n li > * + * {\n margin-left: ","px;\n }\n"])),d.spacings.nudge),A=I.default(e.Check).withConfig({displayName:"CookieConsent__AcceptIcon",componentId:"sc-b6420b-3"})(f||(f=e.__makeTemplateObject(["\n display: inline-block;\n height: 20px;\n width: 20px;\n"],["\n display: inline-block;\n height: 20px;\n width: 20px;\n"]))),S=I.default(e.Cross).withConfig({displayName:"CookieConsent__DeclineIcon",componentId:"sc-b6420b-4"})(h||(h=e.__makeTemplateObject(["\n display: inline-block;\n height: 20px;\n width: 20px;\n"],["\n display: inline-block;\n height: 20px;\n width: 20px;\n"]))),L=I.default.img.withConfig({displayName:"CookieConsent__CookieIcon",componentId:"sc-b6420b-5"})(x||(x=e.__makeTemplateObject(["\n display: block;\n margin: 0 auto;\n"],["\n display: block;\n margin: 0 auto;\n"]))),M=I.default(o.Copy).withConfig({displayName:"CookieConsent__TitleView",componentId:"sc-b6420b-6"})(C||(C=e.__makeTemplateObject(["\n text-align: ",";\n margin-left: ",";\n margin-right: auto;\n max-width: 670px;\n"],["\n text-align: ",";\n margin-left: ",";\n margin-right: auto;\n max-width: 670px;\n"])),(function(e){return e.isCentered?"center":"left"}),(function(e){return e.isCentered?"auto":"0"})),z=I.default.div.withConfig({displayName:"CookieConsent__TextView",componentId:"sc-b6420b-7"})(k||(k=e.__makeTemplateObject([""],[""]))),F=I.default.div.withConfig({displayName:"CookieConsent__ClampWrapper",componentId:"sc-b6420b-8"})(_||(_=e.__makeTemplateObject(["\n position: relative;\n max-height: ",";\n overflow: hidden;\n\n &:after {\n content: ",";\n display: block;\n position: absolute;\n left: 0;\n bottom: 0;\n right: 0;\n height: 100%;\n background: linear-gradient(\n 0deg,\n "," 0%,\n "," 25%,\n "," 100%\n );\n pointer-events: none;\n }\n"],["\n position: relative;\n max-height: ",";\n overflow: hidden;\n\n &:after {\n content: ",";\n display: block;\n position: absolute;\n left: 0;\n bottom: 0;\n right: 0;\n height: 100%;\n background: linear-gradient(\n 0deg,\n "," 0%,\n "," 25%,\n "," 100%\n );\n pointer-events: none;\n }\n"])),(function(e){return e.isClamped&&"80px"}),(function(e){return e.isClamped&&"''"}),(function(e){var n=e.theme;return d.getColors(n).elementBg.light}),(function(e){var n=e.theme;return r.hexToRgba(d.getColors(n).elementBg.light,.9)}),(function(e){var n=e.theme;return r.hexToRgba(d.getColors(n).elementBg.light,0)})),H=I.default(o.Copy).withConfig({displayName:"CookieConsent__Text",componentId:"sc-b6420b-9"})(y||(y=e.__makeTemplateObject(["\n text-align: ",";\n"],["\n text-align: ",";\n"])),(function(e){return e.isCentered?"center":"left"})),B=I.default.button.withConfig({displayName:"CookieConsent__TextToggle",componentId:"sc-b6420b-10"})(v||(v=e.__makeTemplateObject(["\n background: none;\n margin: 0;\n padding: 0;\n border: none;\n cursor: pointer;\n\n padding: ","px ","px;\n"],["\n background: none;\n margin: 0;\n padding: 0;\n border: none;\n cursor: pointer;\n\n padding: ","px ","px;\n"])),d.spacings.nudge,2*d.spacings.nudge),D=I.default.div.withConfig({displayName:"CookieConsent__SelectView",componentId:"sc-b6420b-11"})(w||(w=e.__makeTemplateObject(["\n margin-left: auto;\n margin-right: auto;\n\n & > * + * {\n margin-top: ","px;\n }\n"],["\n margin-left: auto;\n margin-right: auto;\n\n & > * + * {\n margin-top: ","px;\n }\n"])),d.spacings.nudge),P=I.default(o.Copy).withConfig({displayName:"CookieConsent__SelectTitle",componentId:"sc-b6420b-12"})(T||(T=e.__makeTemplateObject(["\n text-align: left;\n\n &:not(:last-child) {\n margin-bottom: ","px;\n }\n"],["\n text-align: left;\n\n &:not(:last-child) {\n margin-bottom: ","px;\n }\n"])),2*d.spacings.nudge),R=I.default(n.Actions).withConfig({displayName:"CookieConsent__CookieActions",componentId:"sc-b6420b-13"})(j||(j=e.__makeTemplateObject(["\n margin-top: ","px;\n\n @media "," {\n margin-top: ","px;\n }\n"],["\n margin-top: ","px;\n\n @media "," {\n margin-top: ","px;\n }\n"])),d.spacings.spacer,d.mq.medium,5*d.spacings.nudge);exports.CookieActions=R,exports.CookieConsent=function(e){var n,t,o=e.urlWhitelist,a=void 0===o?[]:o,r=e.zIndex,d=e.overlayOpacity,u=void 0===d?.4:d,m=e.status,g=e.className,b=e.children,f=e.theme,h=c.useLibTheme().globals,x=i.useCallback((function(e){var n=new Date(e.updatedAt),t=new s.StatusFormatter(e.updatedAt,h.cookie.consentStatusFormat,h.cookie.consentDateFormat(n),h.cookie.consentTimeFormat(n),h.cookie.consentLocaleKey),o=Object.keys(e.state),i=e.state;return E.default.createElement(q,{renderAs:"span"},E.default.createElement("span",null,t.getFormattedStatus()),E.default.createElement("ul",null,null==o?void 0:o.map((function(e,n){return E.default.createElement("li",{key:n},E.default.createElement("span",null,i[e].label),i[e].isAccepted?E.default.createElement(A,null):E.default.createElement(S,null))}))))}),[h.cookie]),C=i.useState(!1),k=C[0],_=C[1],y=l.useCookieConsent({cookieName:h.cookie.name,initialCookieTypes:h.cookie.types,lifetime:h.cookie.lifetime},(function(){return _(!1)}),m||x),v=y.getCookieValue,w=y.cookieTypes,T=y.acceptAll,j=y.acceptSelected,I=y.declineAll,L=y.setConsent,M=p.useMounted();return i.useEffect((function(){M||(l.bindConsentButtons((function(){return _(!0)}),["[".concat(l.selectors.buttons.attribute,"]"),".".concat(l.selectors.buttons.class)]),l.isUrlInWhitelist(window.location.pathname,a)||_(!v()))}),[v,M,a]),i.useEffect((function(){document.body.style.overflow=k?"hidden":"visible"}),[k]),k?E.default.createElement(c.LibThemeProvider,{theme:f},E.default.createElement(N,{zIndex:r,bgOpacity:u},E.default.createElement(O,{className:g},null==b?void 0:b({types:w,acceptAll:T,acceptSelected:j,setConsent:L,declineAll:I,additionalAcceptProps:(n={},n["data-gtm"]="button-cookie-consent-accept",n),additionalDeclineProps:(t={},t["data-gtm"]="button-cookie-consent-decline",t)})))):null},exports.CookieIcon=L,exports.CookieText=function(n){var t=n.isCentered,o=n.innerHTML,a=n.allowClamping,l=void 0===a||a,r=n.toggle,c=n.className,s=n.children,d=i.useState(!0),p=d[0],u=d[1],m=i.useRef(!!l),g=i.useRef(null);i.useEffect((function(){var e;if(m.current){var n=null===(e=g.current)||void 0===e?void 0:e.scrollHeight;void 0!==n&&u(n>130)}}),[l]);var b=function(){u(!1),m.current=!1};return E.default.createElement(z,null,E.default.createElement(F,{ref:g,isClamped:p},E.default.createElement(H,{isCentered:t,innerHTML:o,className:c},s)),p&&(r?r(b):E.default.createElement(B,{onClick:b},E.default.createElement(e.UnfoldMore,null))))},exports.CookieTitle=function(e){var n=e.isCentered,t=e.innerHTML,o=e.className,i=e.children;return E.default.createElement(M,{size:"big",type:"copy-b",innerHTML:t,isCentered:n,className:o},i)},exports.CookieTypeSelect=function(e){var n=e.title,o=e.types,i=e.setConsent;return E.default.createElement(D,null,n&&E.default.createElement(P,{type:"copy-b",innerHTML:n}),o&&Object.keys(o).map((function(e){return E.default.createElement(t.Checkbox,{key:e,label:o[e].label,isSelected:o[e].isAccepted,isDisabled:!o[e].isEditable,onChange:function(){return i(e)}})})))};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Filter-89286db9.js"),n=require("./Actions-c52a14e4.js"),t=require("./Checkbox-8dccd42f.js"),o=require("./Copy-a0bc570d.js"),i=require("react"),a=require("styled-components"),l=require("./useCookieConsent-665d91cf.js"),r=require("./hexRgbConverter-91b28aea.js"),c=require("./LibThemeProvider-69109901.js"),s=require("./statusFormatter-0393122b.js"),d=require("./styles-13e5d9ac.js"),p=require("./useMounted-0bba9869.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("./clamp-bd21d587.js"),require("react-dom/server");var m,g,b,f,h,x,C,k,_,y,v,w,T,j,E=u(i),I=u(a),N=I.default.div.withConfig({displayName:"CookieConsent__Stage",componentId:"sc-b6420b-0"})(m||(m=e.__makeTemplateObject(["\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: rgba(0, 0, 0, ",");\n z-index: ",";\n"],["\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: rgba(0, 0, 0, ",");\n z-index: ",";\n"])),(function(e){return e.bgOpacity||.4}),(function(e){return e.zIndex||1e3})),O=I.default.div.withConfig({displayName:"CookieConsent__View",componentId:"sc-b6420b-1"})(g||(g=e.__makeTemplateObject(["\n box-sizing: border-box;\n max-width: 900px;\n width: 100vw;\n\n max-height: 85%;\n overflow-y: scroll;\n padding: ","px ","px;\n position: fixed;\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 0);\n text-align: center;\n\n background-color: ",";\n box-shadow: 0 2px 44px rgba(0, 0, 0, 0.3);\n\n & > * + * {\n margin-top: ","px;\n }\n\n @media "," {\n padding: ","px;\n\n & > * + * {\n margin-top: ","px;\n }\n }\n\n @media "," {\n bottom: ","px;\n max-height: 100vh;\n overflow: auto;\n }\n"],["\n box-sizing: border-box;\n max-width: 900px;\n width: 100vw;\n\n max-height: 85%;\n overflow-y: scroll;\n padding: ","px ","px;\n position: fixed;\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 0);\n text-align: center;\n\n background-color: ",";\n box-shadow: 0 2px 44px rgba(0, 0, 0, 0.3);\n\n & > * + * {\n margin-top: ","px;\n }\n\n @media "," {\n padding: ","px;\n\n & > * + * {\n margin-top: ","px;\n }\n }\n\n @media "," {\n bottom: ","px;\n max-height: 100vh;\n overflow: auto;\n }\n"])),d.spacings.spacer,2*d.spacings.nudge,(function(e){var n=e.theme;return d.getColors(n).elementBg.light}),2*d.spacings.nudge,d.mq.medium,5*d.spacings.nudge,3*d.spacings.nudge,d.mq.semilarge,1.5*d.spacings.spacer),q=I.default(o.Copy).withConfig({displayName:"CookieConsent__Status",componentId:"sc-b6420b-2"})(b||(b=e.__makeTemplateObject(["\n li > * + * {\n margin-left: ","px;\n }\n"],["\n li > * + * {\n margin-left: ","px;\n }\n"])),d.spacings.nudge),A=I.default(e.Check).withConfig({displayName:"CookieConsent__AcceptIcon",componentId:"sc-b6420b-3"})(f||(f=e.__makeTemplateObject(["\n display: inline-block;\n height: 20px;\n width: 20px;\n"],["\n display: inline-block;\n height: 20px;\n width: 20px;\n"]))),S=I.default(e.Cross).withConfig({displayName:"CookieConsent__DeclineIcon",componentId:"sc-b6420b-4"})(h||(h=e.__makeTemplateObject(["\n display: inline-block;\n height: 20px;\n width: 20px;\n"],["\n display: inline-block;\n height: 20px;\n width: 20px;\n"]))),L=I.default.img.withConfig({displayName:"CookieConsent__CookieIcon",componentId:"sc-b6420b-5"})(x||(x=e.__makeTemplateObject(["\n display: block;\n margin: 0 auto;\n"],["\n display: block;\n margin: 0 auto;\n"]))),M=I.default(o.Copy).withConfig({displayName:"CookieConsent__TitleView",componentId:"sc-b6420b-6"})(C||(C=e.__makeTemplateObject(["\n text-align: ",";\n margin-left: ",";\n margin-right: auto;\n max-width: 670px;\n"],["\n text-align: ",";\n margin-left: ",";\n margin-right: auto;\n max-width: 670px;\n"])),(function(e){return e.isCentered?"center":"left"}),(function(e){return e.isCentered?"auto":"0"})),z=I.default.div.withConfig({displayName:"CookieConsent__TextView",componentId:"sc-b6420b-7"})(k||(k=e.__makeTemplateObject([""],[""]))),F=I.default.div.withConfig({displayName:"CookieConsent__ClampWrapper",componentId:"sc-b6420b-8"})(_||(_=e.__makeTemplateObject(["\n position: relative;\n max-height: ",";\n overflow: hidden;\n\n &:after {\n content: ",";\n display: block;\n position: absolute;\n left: 0;\n bottom: 0;\n right: 0;\n height: 100%;\n background: linear-gradient(\n 0deg,\n "," 0%,\n "," 25%,\n "," 100%\n );\n pointer-events: none;\n }\n"],["\n position: relative;\n max-height: ",";\n overflow: hidden;\n\n &:after {\n content: ",";\n display: block;\n position: absolute;\n left: 0;\n bottom: 0;\n right: 0;\n height: 100%;\n background: linear-gradient(\n 0deg,\n "," 0%,\n "," 25%,\n "," 100%\n );\n pointer-events: none;\n }\n"])),(function(e){return e.isClamped&&"80px"}),(function(e){return e.isClamped&&"''"}),(function(e){var n=e.theme;return d.getColors(n).elementBg.light}),(function(e){var n=e.theme;return r.hexToRgba(d.getColors(n).elementBg.light,.9)}),(function(e){var n=e.theme;return r.hexToRgba(d.getColors(n).elementBg.light,0)})),H=I.default(o.Copy).withConfig({displayName:"CookieConsent__Text",componentId:"sc-b6420b-9"})(y||(y=e.__makeTemplateObject(["\n text-align: ",";\n"],["\n text-align: ",";\n"])),(function(e){return e.isCentered?"center":"left"})),B=I.default.button.withConfig({displayName:"CookieConsent__TextToggle",componentId:"sc-b6420b-10"})(v||(v=e.__makeTemplateObject(["\n background: none;\n margin: 0;\n padding: 0;\n border: none;\n cursor: pointer;\n\n padding: ","px ","px;\n"],["\n background: none;\n margin: 0;\n padding: 0;\n border: none;\n cursor: pointer;\n\n padding: ","px ","px;\n"])),d.spacings.nudge,2*d.spacings.nudge),D=I.default.div.withConfig({displayName:"CookieConsent__SelectView",componentId:"sc-b6420b-11"})(w||(w=e.__makeTemplateObject(["\n margin-left: auto;\n margin-right: auto;\n\n & > * + * {\n margin-top: ","px;\n }\n"],["\n margin-left: auto;\n margin-right: auto;\n\n & > * + * {\n margin-top: ","px;\n }\n"])),d.spacings.nudge),P=I.default(o.Copy).withConfig({displayName:"CookieConsent__SelectTitle",componentId:"sc-b6420b-12"})(T||(T=e.__makeTemplateObject(["\n text-align: left;\n\n &:not(:last-child) {\n margin-bottom: ","px;\n }\n"],["\n text-align: left;\n\n &:not(:last-child) {\n margin-bottom: ","px;\n }\n"])),2*d.spacings.nudge),R=I.default(n.Actions).withConfig({displayName:"CookieConsent__CookieActions",componentId:"sc-b6420b-13"})(j||(j=e.__makeTemplateObject(["\n margin-top: ","px;\n\n @media "," {\n margin-top: ","px;\n }\n"],["\n margin-top: ","px;\n\n @media "," {\n margin-top: ","px;\n }\n"])),d.spacings.spacer,d.mq.medium,5*d.spacings.nudge);exports.CookieActions=R,exports.CookieConsent=function(e){var n,t,o=e.urlWhitelist,a=void 0===o?[]:o,r=e.zIndex,d=e.overlayOpacity,u=void 0===d?.4:d,m=e.status,g=e.className,b=e.children,f=e.theme,h=c.useLibTheme().globals,x=i.useCallback((function(e){var n=new Date(e.updatedAt),t=new s.StatusFormatter(e.updatedAt,h.cookie.consentStatusFormat,h.cookie.consentDateFormat(n),h.cookie.consentTimeFormat(n),h.cookie.consentLocaleKey),o=Object.keys(e.state),i=e.state;return E.default.createElement(q,{renderAs:"span"},E.default.createElement("span",null,t.getFormattedStatus()),E.default.createElement("ul",null,null==o?void 0:o.map((function(e,n){return E.default.createElement("li",{key:n},E.default.createElement("span",null,i[e].label),i[e].isAccepted?E.default.createElement(A,null):E.default.createElement(S,null))}))))}),[h.cookie]),C=i.useState(!1),k=C[0],_=C[1],y=l.useCookieConsent({cookieName:h.cookie.name,initialCookieTypes:h.cookie.types,lifetime:h.cookie.lifetime},(function(){return _(!1)}),m||x),v=y.getCookieValue,w=y.cookieTypes,T=y.acceptAll,j=y.acceptSelected,I=y.declineAll,L=y.setConsent,M=p.useMounted();return i.useEffect((function(){M||(l.bindConsentButtons((function(){return _(!0)}),["[".concat(l.selectors.buttons.attribute,"]"),".".concat(l.selectors.buttons.class)]),l.isUrlInWhitelist(window.location.pathname,a)||_(!v()))}),[v,M,a]),i.useEffect((function(){document.body.style.overflow=k?"hidden":"visible"}),[k]),k?E.default.createElement(c.LibThemeProvider,{theme:f},E.default.createElement(N,{zIndex:r,bgOpacity:u},E.default.createElement(O,{className:g},null==b?void 0:b({types:w,acceptAll:T,acceptSelected:j,setConsent:L,declineAll:I,additionalAcceptProps:(n={},n["data-gtm"]="button-cookie-consent-accept",n),additionalDeclineProps:(t={},t["data-gtm"]="button-cookie-consent-decline",t)})))):null},exports.CookieIcon=L,exports.CookieText=function(n){var t=n.isCentered,o=n.innerHTML,a=n.allowClamping,l=void 0===a||a,r=n.toggle,c=n.className,s=n.children,d=i.useState(!0),p=d[0],u=d[1],m=i.useRef(!!l),g=i.useRef(null);i.useEffect((function(){var e;if(m.current){var n=null===(e=g.current)||void 0===e?void 0:e.scrollHeight;void 0!==n&&u(n>130)}}),[l]);var b=function(){u(!1),m.current=!1};return E.default.createElement(z,null,E.default.createElement(F,{ref:g,isClamped:p},E.default.createElement(H,{isCentered:t,innerHTML:o,className:c},s)),p&&(r?r(b):E.default.createElement(B,{onClick:b},E.default.createElement(e.UnfoldMore,null))))},exports.CookieTitle=function(e){var n=e.isCentered,t=e.innerHTML,o=e.className,i=e.children;return E.default.createElement(M,{size:"big",type:"copy-b",innerHTML:t,isCentered:n,className:o},i)},exports.CookieTypeSelect=function(e){var n=e.title,o=e.types,i=e.setConsent;return E.default.createElement(D,null,n&&E.default.createElement(P,{type:"copy-b",innerHTML:n}),o&&Object.keys(o).map((function(e){return E.default.createElement(t.Checkbox,{key:e,label:o[e].label,isSelected:o[e].isAccepted,isDisabled:!o[e].isEditable,onChange:function(){return i(e)}})})))};
|
|
2
2
|
//# sourceMappingURL=cookies.js.map
|
package/cjs/cookies.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cookies.js","sources":["../src/components/blocks/CookieConsent.tsx"],"sourcesContent":["import Check from 'components/base/icons/Check';\nimport Cross from 'components/base/icons/Cross';\nimport UnfoldMore from 'components/base/icons/UnfoldMore';\nimport Actions from 'components/blocks/Actions';\nimport Checkbox from 'components/fields/Checkbox';\nimport Copy from 'components/typography/Copy';\nimport React, { FC, useCallback, useEffect, useRef, useState } from 'react';\nimport styled from 'styled-components';\nimport {\n bindConsentButtons,\n isUrlInWhitelist,\n} from 'utils/cookie-consent/mutations';\nimport useCookieConsent, {\n CookieTypes,\n selectors,\n} from 'utils/cookie-consent/useCookieConsent';\nimport { hexToRgba } from 'utils/hexRgbConverter';\nimport {\n LibThemeProvider,\n ThemeMods,\n useLibTheme,\n} from 'utils/LibThemeProvider';\nimport StatusFormatter from 'utils/statusFormatter';\nimport { getColors as color, mq, spacings } from 'utils/styles';\nimport useMounted from 'utils/useMounted';\n\nconst Stage = styled.div<{ zIndex?: number; bgOpacity?: number }>`\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: rgba(0, 0, 0, ${({ bgOpacity }) => bgOpacity || 0.4});\n z-index: ${({ zIndex }) => zIndex || 1000};\n`;\n\nconst View = styled.div`\n box-sizing: border-box;\n max-width: 900px;\n width: 100vw;\n\n max-height: 85%;\n overflow-y: scroll;\n padding: ${spacings.spacer}px ${spacings.nudge * 2}px;\n position: fixed;\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 0);\n text-align: center;\n\n background-color: ${({ theme }) => color(theme).elementBg.light};\n box-shadow: 0 2px 44px rgba(0, 0, 0, 0.3);\n\n & > * + * {\n margin-top: ${spacings.nudge * 2}px;\n }\n\n @media ${mq.medium} {\n padding: ${spacings.nudge * 5}px;\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n }\n\n @media ${mq.semilarge} {\n bottom: ${spacings.spacer * 1.5}px;\n max-height: 100vh;\n overflow: auto;\n }\n`;\n\nconst Status = styled(Copy)`\n li > * + * {\n margin-left: ${spacings.nudge}px;\n }\n`;\n\nconst AcceptIcon = styled(Check)`\n display: inline-block;\n height: 20px;\n width: 20px;\n`;\n\nconst DeclineIcon = styled(Cross)`\n display: inline-block;\n height: 20px;\n width: 20px;\n`;\n\ntype RenderProps = {\n types: CookieTypes;\n acceptAll: () => void;\n acceptSelected: () => void;\n declineAll: () => void;\n setConsent: (type: keyof CookieTypes, isAccepted?: boolean) => void;\n additionalDeclineProps: {\n ['data-gtm']: string;\n };\n additionalAcceptProps: {\n ['data-gtm']: string;\n };\n};\n\nexport const CookieConsent: FC<{\n /** URL's that should be excluded from consent */\n urlWhitelist?: string[];\n zIndex?: number;\n overlayOpacity?: number;\n status?: (props: {\n updatedAt: number;\n state: CookieTypes;\n }) => React.ReactElement;\n className?: string;\n children?: (props: RenderProps) => React.ReactElement;\n theme?: ThemeMods;\n}> = ({\n /** URL's that should be excluded from consent */\n urlWhitelist = [],\n zIndex,\n overlayOpacity = 0.4,\n status,\n className,\n children,\n theme,\n}) => {\n const { globals } = useLibTheme();\n\n const statusRenderer = useCallback(\n (props: { updatedAt: number; state: CookieTypes }) => {\n const updatedDate = new Date(props.updatedAt);\n\n const formatter = new StatusFormatter(\n props.updatedAt,\n globals.cookie.consentStatusFormat,\n globals.cookie.consentDateFormat(updatedDate),\n globals.cookie.consentTimeFormat(updatedDate),\n globals.cookie.consentLocaleKey\n );\n const typeKeys: string[] = Object.keys(props.state);\n const types: CookieTypes = props.state;\n\n return (\n <Status renderAs=\"span\">\n <span>{formatter.getFormattedStatus()}</span>\n <ul>\n {typeKeys?.map((type, i) => (\n <li key={i}>\n <span>{types[type].label}</span>\n {types[type].isAccepted ? (\n <AcceptIcon />\n ) : (\n <DeclineIcon />\n )}\n </li>\n ))}\n </ul>\n </Status>\n );\n },\n [globals.cookie]\n );\n\n const [isVisible, setIsVisible] = useState(false);\n const {\n getCookieValue,\n cookieTypes,\n acceptAll,\n acceptSelected,\n declineAll,\n setConsent,\n } = useCookieConsent(\n {\n cookieName: globals.cookie.name,\n initialCookieTypes: globals.cookie.types,\n lifetime: globals.cookie.lifetime,\n },\n () => setIsVisible(false),\n status || statusRenderer\n );\n const isMounted = useMounted();\n\n useEffect(() => {\n if (isMounted) return;\n\n // bind buttons to open consent\n bindConsentButtons(\n () => setIsVisible(true),\n [`[${selectors.buttons.attribute}]`, `.${selectors.buttons.class}`]\n );\n\n // check if consent banner should be open\n const isInWhitelist = isUrlInWhitelist(\n window.location.pathname,\n urlWhitelist\n );\n if (!isInWhitelist) setIsVisible(!getCookieValue());\n }, [getCookieValue, isMounted, urlWhitelist]);\n\n useEffect(() => {\n document.body.style.overflow = isVisible ? 'hidden' : 'visible';\n }, [isVisible]);\n\n if (!isVisible) return null;\n return (\n <LibThemeProvider theme={theme}>\n <Stage zIndex={zIndex} bgOpacity={overlayOpacity}>\n <View className={className}>\n {children?.({\n types: cookieTypes,\n acceptAll,\n acceptSelected,\n setConsent,\n declineAll,\n additionalAcceptProps: {\n ['data-gtm']: 'button-cookie-consent-accept',\n },\n additionalDeclineProps: {\n ['data-gtm']: 'button-cookie-consent-decline',\n },\n })}\n </View>\n </Stage>\n </LibThemeProvider>\n );\n};\n\n/** Example Cookie icon */\nexport const CookieIcon = styled.img`\n display: block;\n margin: 0 auto;\n`;\n\n/** Example Cookie title */\nconst TitleView = styled(Copy)<{ isCentered?: boolean }>`\n text-align: ${({ isCentered }) => (isCentered ? 'center' : 'left')};\n margin-left: ${({ isCentered }) => (isCentered ? 'auto' : '0')};\n margin-right: auto;\n max-width: 670px;\n`;\n\nexport const CookieTitle: FC<{\n isCentered?: boolean;\n innerHTML?: string;\n className?: string;\n children?: React.ReactNode;\n}> = ({ isCentered, innerHTML, className, children }) => {\n return (\n <TitleView\n size=\"big\"\n type=\"copy-b\"\n innerHTML={innerHTML}\n isCentered={isCentered}\n className={className}\n >\n {children}\n </TitleView>\n );\n};\n\n/** Example Cookie title */\nconst TextView = styled.div``;\n\nconst ClampWrapper = styled.div<{ isClamped?: boolean }>`\n position: relative;\n max-height: ${({ isClamped }) => isClamped && '80px'};\n overflow: hidden;\n\n &:after {\n content: ${({ isClamped }) => isClamped && \"''\"};\n display: block;\n position: absolute;\n left: 0;\n bottom: 0;\n right: 0;\n height: 100%;\n background: linear-gradient(\n 0deg,\n ${({ theme }) => color(theme).elementBg.light} 0%,\n ${({ theme }) => hexToRgba(color(theme).elementBg.light, 0.9)} 25%,\n ${({ theme }) => hexToRgba(color(theme).elementBg.light, 0)} 100%\n );\n pointer-events: none;\n }\n`;\n\nconst Text = styled(Copy)<{ isCentered?: boolean }>`\n text-align: ${({ isCentered }) => (isCentered ? 'center' : 'left')};\n`;\n\nconst TextToggle = styled.button`\n background: none;\n margin: 0;\n padding: 0;\n border: none;\n cursor: pointer;\n\n padding: ${spacings.nudge}px ${spacings.nudge * 2}px;\n`;\n\nexport const CookieText: FC<{\n isCentered?: boolean;\n innerHTML?: string;\n allowClamping?: boolean;\n className?: string;\n children?: React.ReactNode;\n toggle?: (handleClick: () => void) => React.ReactNode;\n}> = ({\n isCentered,\n innerHTML,\n allowClamping = true,\n toggle,\n className,\n children,\n}) => {\n const [isClamped, setIsClamped] = useState<boolean>(true);\n const canClamp = useRef<boolean>(!!allowClamping);\n const cRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!canClamp.current) return;\n\n const height = cRef.current?.scrollHeight;\n if (height === undefined) return;\n\n setIsClamped(height > 130);\n }, [allowClamping]);\n\n const handleToggleClick = () => {\n setIsClamped(false);\n canClamp.current = false;\n };\n\n return (\n <TextView>\n <ClampWrapper ref={cRef} isClamped={isClamped}>\n <Text\n isCentered={isCentered}\n innerHTML={innerHTML}\n className={className}\n >\n {children}\n </Text>\n </ClampWrapper>\n {isClamped &&\n (toggle ? (\n toggle(handleToggleClick)\n ) : (\n <TextToggle onClick={handleToggleClick}>\n <UnfoldMore />\n </TextToggle>\n ))}\n </TextView>\n );\n};\n\nconst SelectView = styled.div`\n margin-left: auto;\n margin-right: auto;\n\n & > * + * {\n margin-top: ${spacings.nudge}px;\n }\n`;\n\nconst SelectTitle = styled(Copy)`\n text-align: left;\n\n &:not(:last-child) {\n margin-bottom: ${spacings.nudge * 2}px;\n }\n`;\n\nexport const CookieTypeSelect: FC<{\n title?: string;\n types: CookieTypes;\n setConsent: (typeName: keyof CookieTypes, isAccepted?: boolean) => void;\n}> = ({ title, types, setConsent }) => (\n <SelectView>\n {title && <SelectTitle type=\"copy-b\" innerHTML={title} />}\n {types &&\n Object.keys(types).map((key) => (\n <Checkbox\n key={key}\n label={types[key].label}\n isSelected={types[key].isAccepted}\n isDisabled={!types[key].isEditable}\n onChange={() => setConsent(key)}\n />\n ))}\n </SelectView>\n);\n\n/** Example Cookie actions */\nexport const CookieActions = styled(Actions)`\n margin-top: ${spacings.spacer}px;\n\n @media ${mq.medium} {\n margin-top: ${spacings.nudge * 5}px;\n }\n`;\n\nexport default CookieConsent;\n"],"names":["Stage","styled","div","withConfig","displayName","componentId","templateObject_1","__makeTemplateObject","_a","bgOpacity","zIndex","View","spacings","spacer","nudge","theme","color","elementBg","light","mq","medium","semilarge","Status","Copy","templateObject_3","AcceptIcon","Check","templateObject_4","DeclineIcon","Cross","templateObject_5","CookieIcon","img","templateObject_6","TitleView","templateObject_7","isCentered","TextView","templateObject_8","ClampWrapper","templateObject_9","isClamped","hexToRgba","Text","templateObject_10","TextToggle","button","templateObject_11","SelectView","templateObject_12","SelectTitle","templateObject_13","CookieActions","Actions","templateObject_14","_d","urlWhitelist","_e","overlayOpacity","status","className","children","globals","useLibTheme","statusRenderer","useCallback","props","updatedDate","Date","updatedAt","formatter","StatusFormatter","cookie","consentStatusFormat","consentDateFormat","consentTimeFormat","consentLocaleKey","typeKeys","Object","keys","state","types","React","createElement","renderAs","getFormattedStatus","map","type","i","key","label","isAccepted","_f","useState","isVisible","setIsVisible","_g","useCookieConsent","cookieName","name","initialCookieTypes","lifetime","getCookieValue","cookieTypes","acceptAll","acceptSelected","declineAll","setConsent","isMounted","useMounted","useEffect","bindConsentButtons","concat","selectors","buttons","attribute","class","isUrlInWhitelist","window","location","pathname","document","body","style","overflow","LibThemeProvider","additionalAcceptProps","_b","additionalDeclineProps","_c","innerHTML","allowClamping","toggle","setIsClamped","canClamp","useRef","cRef","current","height","scrollHeight","undefined","handleToggleClick","ref","onClick","UnfoldMore","size","title","Checkbox","isSelected","isDisabled","isEditable","onChange"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cookies.js","sources":["../src/components/blocks/CookieConsent.tsx"],"sourcesContent":["import Check from 'components/base/icons/Check';\nimport Cross from 'components/base/icons/Cross';\nimport UnfoldMore from 'components/base/icons/UnfoldMore';\nimport Actions from 'components/blocks/Actions';\nimport Checkbox from 'components/fields/Checkbox';\nimport Copy from 'components/typography/Copy';\nimport React, { FC, useCallback, useEffect, useRef, useState } from 'react';\nimport styled from 'styled-components';\nimport {\n bindConsentButtons,\n isUrlInWhitelist,\n} from 'utils/cookie-consent/mutations';\nimport useCookieConsent, {\n CookieTypes,\n selectors,\n} from 'utils/cookie-consent/useCookieConsent';\nimport { hexToRgba } from 'utils/hexRgbConverter';\nimport {\n LibThemeProvider,\n ThemeMods,\n useLibTheme,\n} from 'utils/LibThemeProvider';\nimport StatusFormatter from 'utils/statusFormatter';\nimport { getColors as color, mq, spacings } from 'utils/styles';\nimport useMounted from 'utils/useMounted';\n\nconst Stage = styled.div<{ zIndex?: number; bgOpacity?: number }>`\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: rgba(0, 0, 0, ${({ bgOpacity }) => bgOpacity || 0.4});\n z-index: ${({ zIndex }) => zIndex || 1000};\n`;\n\nconst View = styled.div`\n box-sizing: border-box;\n max-width: 900px;\n width: 100vw;\n\n max-height: 85%;\n overflow-y: scroll;\n padding: ${spacings.spacer}px ${spacings.nudge * 2}px;\n position: fixed;\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 0);\n text-align: center;\n\n background-color: ${({ theme }) => color(theme).elementBg.light};\n box-shadow: 0 2px 44px rgba(0, 0, 0, 0.3);\n\n & > * + * {\n margin-top: ${spacings.nudge * 2}px;\n }\n\n @media ${mq.medium} {\n padding: ${spacings.nudge * 5}px;\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n }\n\n @media ${mq.semilarge} {\n bottom: ${spacings.spacer * 1.5}px;\n max-height: 100vh;\n overflow: auto;\n }\n`;\n\nconst Status = styled(Copy)`\n li > * + * {\n margin-left: ${spacings.nudge}px;\n }\n`;\n\nconst AcceptIcon = styled(Check)`\n display: inline-block;\n height: 20px;\n width: 20px;\n`;\n\nconst DeclineIcon = styled(Cross)`\n display: inline-block;\n height: 20px;\n width: 20px;\n`;\n\ntype RenderProps = {\n types: CookieTypes;\n acceptAll: () => void;\n acceptSelected: () => void;\n declineAll: () => void;\n setConsent: (type: keyof CookieTypes, isAccepted?: boolean) => void;\n additionalDeclineProps: {\n ['data-gtm']: string;\n };\n additionalAcceptProps: {\n ['data-gtm']: string;\n };\n};\n\nexport const CookieConsent: FC<{\n /** URL's that should be excluded from consent */\n urlWhitelist?: string[];\n zIndex?: number;\n overlayOpacity?: number;\n status?: (props: {\n updatedAt: number;\n state: CookieTypes;\n }) => React.ReactElement;\n className?: string;\n children?: (props: RenderProps) => React.ReactElement;\n theme?: ThemeMods;\n}> = ({\n /** URL's that should be excluded from consent */\n urlWhitelist = [],\n zIndex,\n overlayOpacity = 0.4,\n status,\n className,\n children,\n theme,\n}) => {\n const { globals } = useLibTheme();\n\n const statusRenderer = useCallback(\n (props: { updatedAt: number; state: CookieTypes }) => {\n const updatedDate = new Date(props.updatedAt);\n\n const formatter = new StatusFormatter(\n props.updatedAt,\n globals.cookie.consentStatusFormat,\n globals.cookie.consentDateFormat(updatedDate),\n globals.cookie.consentTimeFormat(updatedDate),\n globals.cookie.consentLocaleKey\n );\n const typeKeys: string[] = Object.keys(props.state);\n const types: CookieTypes = props.state;\n\n return (\n <Status renderAs=\"span\">\n <span>{formatter.getFormattedStatus()}</span>\n <ul>\n {typeKeys?.map((type, i) => (\n <li key={i}>\n <span>{types[type].label}</span>\n {types[type].isAccepted ? (\n <AcceptIcon />\n ) : (\n <DeclineIcon />\n )}\n </li>\n ))}\n </ul>\n </Status>\n );\n },\n [globals.cookie]\n );\n\n const [isVisible, setIsVisible] = useState(false);\n const {\n getCookieValue,\n cookieTypes,\n acceptAll,\n acceptSelected,\n declineAll,\n setConsent,\n } = useCookieConsent(\n {\n cookieName: globals.cookie.name,\n initialCookieTypes: globals.cookie.types,\n lifetime: globals.cookie.lifetime,\n },\n () => setIsVisible(false),\n status || statusRenderer\n );\n const isMounted = useMounted();\n\n useEffect(() => {\n if (isMounted) return;\n\n // bind buttons to open consent\n bindConsentButtons(\n () => setIsVisible(true),\n [`[${selectors.buttons.attribute}]`, `.${selectors.buttons.class}`]\n );\n\n // check if consent banner should be open\n const isInWhitelist = isUrlInWhitelist(\n window.location.pathname,\n urlWhitelist\n );\n if (!isInWhitelist) setIsVisible(!getCookieValue());\n }, [getCookieValue, isMounted, urlWhitelist]);\n\n useEffect(() => {\n document.body.style.overflow = isVisible ? 'hidden' : 'visible';\n }, [isVisible]);\n\n if (!isVisible) return null;\n return (\n <LibThemeProvider theme={theme}>\n <Stage zIndex={zIndex} bgOpacity={overlayOpacity}>\n <View className={className}>\n {children?.({\n types: cookieTypes,\n acceptAll,\n acceptSelected,\n setConsent,\n declineAll,\n additionalAcceptProps: {\n ['data-gtm']: 'button-cookie-consent-accept',\n },\n additionalDeclineProps: {\n ['data-gtm']: 'button-cookie-consent-decline',\n },\n })}\n </View>\n </Stage>\n </LibThemeProvider>\n );\n};\n\n/** Example Cookie icon */\nexport const CookieIcon = styled.img`\n display: block;\n margin: 0 auto;\n`;\n\n/** Example Cookie title */\nconst TitleView = styled(Copy)<{ isCentered?: boolean }>`\n text-align: ${({ isCentered }) => (isCentered ? 'center' : 'left')};\n margin-left: ${({ isCentered }) => (isCentered ? 'auto' : '0')};\n margin-right: auto;\n max-width: 670px;\n`;\n\nexport const CookieTitle: FC<{\n isCentered?: boolean;\n innerHTML?: string;\n className?: string;\n children?: React.ReactNode;\n}> = ({ isCentered, innerHTML, className, children }) => {\n return (\n <TitleView\n size=\"big\"\n type=\"copy-b\"\n innerHTML={innerHTML}\n isCentered={isCentered}\n className={className}\n >\n {children}\n </TitleView>\n );\n};\n\n/** Example Cookie title */\nconst TextView = styled.div``;\n\nconst ClampWrapper = styled.div<{ isClamped?: boolean }>`\n position: relative;\n max-height: ${({ isClamped }) => isClamped && '80px'};\n overflow: hidden;\n\n &:after {\n content: ${({ isClamped }) => isClamped && \"''\"};\n display: block;\n position: absolute;\n left: 0;\n bottom: 0;\n right: 0;\n height: 100%;\n background: linear-gradient(\n 0deg,\n ${({ theme }) => color(theme).elementBg.light} 0%,\n ${({ theme }) => hexToRgba(color(theme).elementBg.light, 0.9)} 25%,\n ${({ theme }) => hexToRgba(color(theme).elementBg.light, 0)} 100%\n );\n pointer-events: none;\n }\n`;\n\nconst Text = styled(Copy)<{ isCentered?: boolean }>`\n text-align: ${({ isCentered }) => (isCentered ? 'center' : 'left')};\n`;\n\nconst TextToggle = styled.button`\n background: none;\n margin: 0;\n padding: 0;\n border: none;\n cursor: pointer;\n\n padding: ${spacings.nudge}px ${spacings.nudge * 2}px;\n`;\n\nexport const CookieText: FC<{\n isCentered?: boolean;\n innerHTML?: string;\n allowClamping?: boolean;\n className?: string;\n children?: React.ReactNode;\n toggle?: (handleClick: () => void) => React.ReactNode;\n}> = ({\n isCentered,\n innerHTML,\n allowClamping = true,\n toggle,\n className,\n children,\n}) => {\n const [isClamped, setIsClamped] = useState<boolean>(true);\n const canClamp = useRef<boolean>(!!allowClamping);\n const cRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!canClamp.current) return;\n\n const height = cRef.current?.scrollHeight;\n if (height === undefined) return;\n\n setIsClamped(height > 130);\n }, [allowClamping]);\n\n const handleToggleClick = () => {\n setIsClamped(false);\n canClamp.current = false;\n };\n\n return (\n <TextView>\n <ClampWrapper ref={cRef} isClamped={isClamped}>\n <Text\n isCentered={isCentered}\n innerHTML={innerHTML}\n className={className}\n >\n {children}\n </Text>\n </ClampWrapper>\n {isClamped &&\n (toggle ? (\n toggle(handleToggleClick)\n ) : (\n <TextToggle onClick={handleToggleClick}>\n <UnfoldMore />\n </TextToggle>\n ))}\n </TextView>\n );\n};\n\nconst SelectView = styled.div`\n margin-left: auto;\n margin-right: auto;\n\n & > * + * {\n margin-top: ${spacings.nudge}px;\n }\n`;\n\nconst SelectTitle = styled(Copy)`\n text-align: left;\n\n &:not(:last-child) {\n margin-bottom: ${spacings.nudge * 2}px;\n }\n`;\n\nexport const CookieTypeSelect: FC<{\n title?: string;\n types: CookieTypes;\n setConsent: (typeName: keyof CookieTypes, isAccepted?: boolean) => void;\n}> = ({ title, types, setConsent }) => (\n <SelectView>\n {title && <SelectTitle type=\"copy-b\" innerHTML={title} />}\n {types &&\n Object.keys(types).map((key) => (\n <Checkbox\n key={key}\n label={types[key].label}\n isSelected={types[key].isAccepted}\n isDisabled={!types[key].isEditable}\n onChange={() => setConsent(key)}\n />\n ))}\n </SelectView>\n);\n\n/** Example Cookie actions */\nexport const CookieActions = styled(Actions)`\n margin-top: ${spacings.spacer}px;\n\n @media ${mq.medium} {\n margin-top: ${spacings.nudge * 5}px;\n }\n`;\n\nexport default CookieConsent;\n"],"names":["Stage","styled","div","withConfig","displayName","componentId","templateObject_1","__makeTemplateObject","_a","bgOpacity","zIndex","View","spacings","spacer","nudge","theme","color","elementBg","light","mq","medium","semilarge","Status","Copy","templateObject_3","AcceptIcon","Check","templateObject_4","DeclineIcon","Cross","templateObject_5","CookieIcon","img","templateObject_6","TitleView","templateObject_7","isCentered","TextView","templateObject_8","ClampWrapper","templateObject_9","isClamped","hexToRgba","Text","templateObject_10","TextToggle","button","templateObject_11","SelectView","templateObject_12","SelectTitle","templateObject_13","CookieActions","Actions","templateObject_14","_d","urlWhitelist","_e","overlayOpacity","status","className","children","globals","useLibTheme","statusRenderer","useCallback","props","updatedDate","Date","updatedAt","formatter","StatusFormatter","cookie","consentStatusFormat","consentDateFormat","consentTimeFormat","consentLocaleKey","typeKeys","Object","keys","state","types","React","createElement","renderAs","getFormattedStatus","map","type","i","key","label","isAccepted","_f","useState","isVisible","setIsVisible","_g","useCookieConsent","cookieName","name","initialCookieTypes","lifetime","getCookieValue","cookieTypes","acceptAll","acceptSelected","declineAll","setConsent","isMounted","useMounted","useEffect","bindConsentButtons","concat","selectors","buttons","attribute","class","isUrlInWhitelist","window","location","pathname","document","body","style","overflow","LibThemeProvider","additionalAcceptProps","_b","additionalDeclineProps","_c","innerHTML","allowClamping","toggle","setIsClamped","canClamp","useRef","cRef","current","height","scrollHeight","undefined","handleToggleClick","ref","onClick","UnfoldMore","size","title","Checkbox","isSelected","isDisabled","isEditable","onChange"],"mappings":"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"}
|
package/cjs/fields.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n=require("./ClockFilled-2483aa4a.js"),e=require("react"),t=require("styled-components"),o=require("./LibThemeProvider-4823de57.js"),r=require("./styles-3a495a2d.js"),i=require("./FilterField-cce38ffb.js"),a=require("./Textfield-56996c98.js"),l=require("./Textarea-03bd2c34.js"),c=require("./Checkbox-1c34c7e6.js");function s(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}require("react-dom/server"),require("./Copy-ea6ab025.js"),require("./clamp-bd21d587.js"),require("./useLazyInput-f71c221b.js"),require("./ButtonGhost-628bbd60.js"),require("./hexRgbConverter-91b28aea.js"),require("./Button-51ea72b7.js"),require("react-datepicker"),require("./useLeafletMap-2e608b01.js"),require("./useUpdateEffect-4d233e2c.js"),require("./useGeolocation-d8946470.js"),require("./useMounted-0bba9869.js"),require("./arrays-c272ed59.js");var u,d,p,f,m,h,g,b,x=s(e),v=s(t),w=v.default.form.withConfig({displayName:"CompactForm__View",componentId:"sc-v44fzp-0"})(u||(u=n.__makeTemplateObject(["\n width: 100%;\n display: flex;\n flex-direction: column;\n\n color: ",";\n\n @media "," {\n flex-direction: row;\n }\n"],["\n width: 100%;\n display: flex;\n flex-direction: column;\n\n color: ",";\n\n @media "," {\n flex-direction: row;\n }\n"])),(function(n){var e=n.theme;return r.getColors(e).text.default}),r.mq.medium),y=v.default.input.withConfig({displayName:"CompactForm__InputField",componentId:"sc-v44fzp-1"})(d||(d=n.__makeTemplateObject(["\n display: block;\n width: 100%;\n height: 49px;\n max-height: 49px;\n padding: ","px ","px;\n color: inherit;\n\n background-color: ",";\n box-shadow: none;\n border: none;\n border-right: none;\n border-radius: 0px;\n outline: none;\n -webkit-appearance: none;\n\n font-family: ",";\n font-weight: ",";\n ","\n line-height: ",";\n\n &:focus {\n outline: ",";\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n\n &::placeholder {\n color: inherit;\n }\n"],["\n display: block;\n width: 100%;\n height: 49px;\n max-height: 49px;\n padding: ","px ","px;\n color: inherit;\n\n background-color: ",";\n box-shadow: none;\n border: none;\n border-right: none;\n border-radius: 0px;\n outline: none;\n -webkit-appearance: none;\n\n font-family: ",";\n font-weight: ",";\n ","\n line-height: ",";\n\n &:focus {\n outline: ",";\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n\n &::placeholder {\n color: inherit;\n }\n"])),r.spacings.nudge,3*r.spacings.nudge,(function(n){var e=n.backColor;return e&&e}),(function(n){var e=n.theme;return r.getFonts(e).copy.small.family}),(function(n){var e=n.theme;return r.getFonts(e).copy.small.weight}),(function(n){var e=n.theme;return r.withRange(r.getFonts(e).copy.small.size,"font-size")}),(function(n){var e=n.theme;return r.getFonts(e).copy.small.lineHeight}),(function(n){var e=n.theme;return"2px solid ".concat(r.getColors(e).primary.default)})),k=v.default.button.withConfig({displayName:"CompactForm__SubmitBtn",componentId:"sc-v44fzp-2"})(p||(p=n.__makeTemplateObject(["\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 49px;\n\n margin-top: ","px;\n\n background-color: ",";\n color: ",";\n\n outline: none;\n border: none;\n user-select: none;\n cursor: pointer;\n transition: all ease-in-out 0.2s;\n\n @media "," {\n width: 100px;\n margin-top: 0;\n }\n\n &:hover {\n transform: scale(1.05);\n }\n\n &:focus {\n text-decoration: underline;\n transform: scale(1.012);\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n }\n\n &:active {\n transform: scale(0.95);\n }\n"],["\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 49px;\n\n margin-top: ","px;\n\n background-color: ",";\n color: ",";\n\n outline: none;\n border: none;\n user-select: none;\n cursor: pointer;\n transition: all ease-in-out 0.2s;\n\n @media "," {\n width: 100px;\n margin-top: 0;\n }\n\n &:hover {\n transform: scale(1.05);\n }\n\n &:focus {\n text-decoration: underline;\n transform: scale(1.012);\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n }\n\n &:active {\n transform: scale(0.95);\n }\n"])),.5*r.spacings.spacer,(function(n){var e=n.theme;return r.getColors(e).primary.default}),(function(n){var e=n.theme;return r.getColors(e).text.inverted}),r.mq.medium),C=v.default.div.withConfig({displayName:"SearchInput__View",componentId:"sc-21j67n-0"})(f||(f=n.__makeTemplateObject(["\n position: relative;\n width: 100%;\n display: flex;\n flex-direction: row;\n\n color: ",";\n\n background-color: ",";\n"],["\n position: relative;\n width: 100%;\n display: flex;\n flex-direction: row;\n\n color: ",";\n\n background-color: ",";\n"])),(function(n){var e=n.theme;return r.getColors(e).text.default}),(function(n){var e=n.theme;return n.isInverted?r.getColors(e).elementBg.light:r.getColors(e).elementBg.medium})),j=v.default.input.withConfig({displayName:"SearchInput__InputField",componentId:"sc-21j67n-1"})(m||(m=n.__makeTemplateObject(["\n display: block;\n width: 100%;\n height: 100%;\n padding: ","px ","px;\n padding-left: ",";\n padding-right: ",";\n color: inherit;\n\n background-color: transparent;\n box-shadow: none;\n border: none;\n border-right: none;\n border-radius: 0px;\n outline: none;\n -webkit-appearance: none;\n\n font-family: ",";\n font-weight: 400;\n ","\n line-height: 1.25;\n\n &::placeholder {\n color: inherit;\n }\n\n &:focus {\n outline: ",";\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n"],["\n display: block;\n width: 100%;\n height: 100%;\n padding: ","px ","px;\n padding-left: ",";\n padding-right: ",";\n color: inherit;\n\n background-color: transparent;\n box-shadow: none;\n border: none;\n border-right: none;\n border-radius: 0px;\n outline: none;\n -webkit-appearance: none;\n\n font-family: ",";\n font-weight: 400;\n ","\n line-height: 1.25;\n\n &::placeholder {\n color: inherit;\n }\n\n &:focus {\n outline: ",";\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n"])),3*r.spacings.nudge,3.5*r.spacings.nudge,(function(n){return n.hasLeftIcon&&2.5*r.spacings.spacer+"px"}),(function(n){return n.hasRightIcon&&2.5*r.spacings.spacer+"px"}),(function(n){var e=n.theme;return r.getFonts(e).copy.small.family}),(function(n){var e=n.theme;return r.withRange(r.getFonts(e).copy.small.size,"font-size")}),(function(n){var e=n.theme;return"1px solid ".concat(r.getColors(e).primary.default)})),_=v.default.button.withConfig({displayName:"SearchInput__ControlBtn",componentId:"sc-21j67n-2"})(h||(h=n.__makeTemplateObject(["\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n width: 53px;\n\n margin: -2px;\n background-color: transparent;\n color: ",";\n\n outline: none;\n border: none;\n user-select: none;\n cursor: pointer;\n /* transition: all ease-in-out 0.2s; */\n\n &:hover {\n transform: scale(1.02);\n }\n\n &:focus {\n text-decoration: underline;\n transform: scale(1.012);\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n }\n\n &:active {\n transform: scale(0.95);\n }\n"],["\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n width: 53px;\n\n margin: -2px;\n background-color: transparent;\n color: ",";\n\n outline: none;\n border: none;\n user-select: none;\n cursor: pointer;\n /* transition: all ease-in-out 0.2s; */\n\n &:hover {\n transform: scale(1.02);\n }\n\n &:focus {\n text-decoration: underline;\n transform: scale(1.012);\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n }\n\n &:active {\n transform: scale(0.95);\n }\n"])),(function(n){var e=n.theme;return r.getColors(e).text.default})),F=v.default(_).withConfig({displayName:"SearchInput__SubmitBtn",componentId:"sc-21j67n-3"})(g||(g=n.__makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n"],["\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n"]))),I=v.default(_).withConfig({displayName:"SearchInput__ClearBtn",componentId:"sc-21j67n-4"})(b||(b=n.__makeTemplateObject(["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n"],["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n"])));exports.FilterField=i.FilterField,exports.FormField=a.FieldWrapper,exports.Textfield=a.Textfield,exports.Datepicker=l.DatepickerCmp,exports.FileUpload=l.FileUploadCmp,exports.LocationField=l.LocationField,exports.Radio=l.RadioButton,exports.SelectDropdown=l.SelectDropdown,exports.Textarea=l.Textarea,exports.Checkbox=c.Checkbox,exports.CompactForm=function(n){var e=n.mode,t=void 0===e?"default":e,r=n.value,i=n.placeholder,a=n.method,l=n.action,c=n.buttonIcon,s=n.onSubmit,u=n.onClick,d=n.onBlur,p=n.onFocus,f=n.className,m=o.useLibTheme().colors,h="default"===t?m.elementBg.medium:m.elementBg.light;return x.default.createElement(w,{onSubmit:s,method:a,action:l,className:f},x.default.createElement(y,{placeholder:i,value:r,onClick:u,onBlur:d,onFocus:p,backColor:h}),c&&x.default.createElement(k,{isInverted:"onDark"===t},c))},exports.SearchInput=function(n){var e=n.isInverted,t=void 0!==e&&e,o=n.value,r=n.placeholder,i=n.submitIcon,a=n.clearIcon,l=n.onSubmit,c=n.onClick,s=n.onClear,u=n.onBlur,d=n.onFocus,p=n.className;return x.default.createElement(C,{isInverted:t,className:p},i&&x.default.createElement(F,{isInverted:t,onClick:function(){return l&&l()}},i),x.default.createElement(j,{hasLeftIcon:void 0!==i,hasRightIcon:void 0!==a,placeholder:r,value:o,onClick:c,onBlur:u,onFocus:d,onKeyDown:function(n){13===n.keyCode&&(l&&l(),n.preventDefault())}}),a&&x.default.createElement(I,{isInverted:t,onClick:function(){return s&&s()}},a))};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n=require("./Filter-89286db9.js"),e=require("react"),t=require("styled-components"),o=require("./LibThemeProvider-69109901.js"),r=require("./styles-13e5d9ac.js"),i=require("./FilterField-7efcacb7.js"),a=require("./formFieldText-046fcbf4.js"),l=require("./Textarea-599e94a4.js"),c=require("./Checkbox-8dccd42f.js"),s=require("./MultiselectDropdown-a16ea1c9.js"),u=require("./Textfield-24f468be.js");function d(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}require("react-dom/server"),require("./Copy-a0bc570d.js"),require("./clamp-bd21d587.js"),require("./useLazyInput-911b8eda.js"),require("./ButtonGhost-fbab8769.js"),require("./hexRgbConverter-91b28aea.js"),require("./Button-1adf99b8.js"),require("react-datepicker"),require("./useLeafletMap-514304b6.js"),require("./useUpdateEffect-4d233e2c.js"),require("./useGeolocation-d8946470.js"),require("./useMounted-0bba9869.js"),require("./arrays-c272ed59.js");var p,f,m,h,g,b,x,v,w=d(e),y=d(t),k=y.default.form.withConfig({displayName:"CompactForm__View",componentId:"sc-v44fzp-0"})(p||(p=n.__makeTemplateObject(["\n width: 100%;\n display: flex;\n flex-direction: column;\n\n color: ",";\n\n @media "," {\n flex-direction: row;\n }\n"],["\n width: 100%;\n display: flex;\n flex-direction: column;\n\n color: ",";\n\n @media "," {\n flex-direction: row;\n }\n"])),(function(n){var e=n.theme;return r.getColors(e).text.default}),r.mq.medium),C=y.default.input.withConfig({displayName:"CompactForm__InputField",componentId:"sc-v44fzp-1"})(f||(f=n.__makeTemplateObject(["\n display: block;\n width: 100%;\n height: 49px;\n max-height: 49px;\n padding: ","px ","px;\n color: inherit;\n\n background-color: ",";\n box-shadow: none;\n border: none;\n border-right: none;\n border-radius: 0px;\n outline: none;\n -webkit-appearance: none;\n\n font-family: ",";\n font-weight: ",";\n ","\n line-height: ",";\n\n &:focus {\n outline: ",";\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n\n &::placeholder {\n color: inherit;\n }\n"],["\n display: block;\n width: 100%;\n height: 49px;\n max-height: 49px;\n padding: ","px ","px;\n color: inherit;\n\n background-color: ",";\n box-shadow: none;\n border: none;\n border-right: none;\n border-radius: 0px;\n outline: none;\n -webkit-appearance: none;\n\n font-family: ",";\n font-weight: ",";\n ","\n line-height: ",";\n\n &:focus {\n outline: ",";\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n\n &::placeholder {\n color: inherit;\n }\n"])),r.spacings.nudge,3*r.spacings.nudge,(function(n){var e=n.backColor;return e&&e}),(function(n){var e=n.theme;return r.getFonts(e).copy.small.family}),(function(n){var e=n.theme;return r.getFonts(e).copy.small.weight}),(function(n){var e=n.theme;return r.withRange(r.getFonts(e).copy.small.size,"font-size")}),(function(n){var e=n.theme;return r.getFonts(e).copy.small.lineHeight}),(function(n){var e=n.theme;return"2px solid ".concat(r.getColors(e).primary.default)})),j=y.default.button.withConfig({displayName:"CompactForm__SubmitBtn",componentId:"sc-v44fzp-2"})(m||(m=n.__makeTemplateObject(["\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 49px;\n\n margin-top: ","px;\n\n background-color: ",";\n color: ",";\n\n outline: none;\n border: none;\n user-select: none;\n cursor: pointer;\n transition: all ease-in-out 0.2s;\n\n @media "," {\n width: 100px;\n margin-top: 0;\n }\n\n &:hover {\n transform: scale(1.05);\n }\n\n &:focus {\n text-decoration: underline;\n transform: scale(1.012);\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n }\n\n &:active {\n transform: scale(0.95);\n }\n"],["\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 49px;\n\n margin-top: ","px;\n\n background-color: ",";\n color: ",";\n\n outline: none;\n border: none;\n user-select: none;\n cursor: pointer;\n transition: all ease-in-out 0.2s;\n\n @media "," {\n width: 100px;\n margin-top: 0;\n }\n\n &:hover {\n transform: scale(1.05);\n }\n\n &:focus {\n text-decoration: underline;\n transform: scale(1.012);\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n }\n\n &:active {\n transform: scale(0.95);\n }\n"])),.5*r.spacings.spacer,(function(n){var e=n.theme;return r.getColors(e).primary.default}),(function(n){var e=n.theme;return r.getColors(e).text.inverted}),r.mq.medium),_=y.default.div.withConfig({displayName:"SearchInput__View",componentId:"sc-21j67n-0"})(h||(h=n.__makeTemplateObject(["\n position: relative;\n width: 100%;\n display: flex;\n flex-direction: row;\n\n color: ",";\n\n background-color: ",";\n"],["\n position: relative;\n width: 100%;\n display: flex;\n flex-direction: row;\n\n color: ",";\n\n background-color: ",";\n"])),(function(n){var e=n.theme;return r.getColors(e).text.default}),(function(n){var e=n.theme;return n.isInverted?r.getColors(e).elementBg.light:r.getColors(e).elementBg.medium})),F=y.default.input.withConfig({displayName:"SearchInput__InputField",componentId:"sc-21j67n-1"})(g||(g=n.__makeTemplateObject(["\n display: block;\n width: 100%;\n height: 100%;\n padding: ","px ","px;\n padding-left: ",";\n padding-right: ",";\n color: inherit;\n\n background-color: transparent;\n box-shadow: none;\n border: none;\n border-right: none;\n border-radius: 0px;\n outline: none;\n -webkit-appearance: none;\n\n font-family: ",";\n font-weight: 400;\n ","\n line-height: 1.25;\n\n &::placeholder {\n color: inherit;\n }\n\n &:focus {\n outline: ",";\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n"],["\n display: block;\n width: 100%;\n height: 100%;\n padding: ","px ","px;\n padding-left: ",";\n padding-right: ",";\n color: inherit;\n\n background-color: transparent;\n box-shadow: none;\n border: none;\n border-right: none;\n border-radius: 0px;\n outline: none;\n -webkit-appearance: none;\n\n font-family: ",";\n font-weight: 400;\n ","\n line-height: 1.25;\n\n &::placeholder {\n color: inherit;\n }\n\n &:focus {\n outline: ",";\n outline-offset: 0;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n"])),3*r.spacings.nudge,3.5*r.spacings.nudge,(function(n){return n.hasLeftIcon&&2.5*r.spacings.spacer+"px"}),(function(n){return n.hasRightIcon&&2.5*r.spacings.spacer+"px"}),(function(n){var e=n.theme;return r.getFonts(e).copy.small.family}),(function(n){var e=n.theme;return r.withRange(r.getFonts(e).copy.small.size,"font-size")}),(function(n){var e=n.theme;return"1px solid ".concat(r.getColors(e).primary.default)})),I=y.default.button.withConfig({displayName:"SearchInput__ControlBtn",componentId:"sc-21j67n-2"})(b||(b=n.__makeTemplateObject(["\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n width: 53px;\n\n margin: -2px;\n background-color: transparent;\n color: ",";\n\n outline: none;\n border: none;\n user-select: none;\n cursor: pointer;\n /* transition: all ease-in-out 0.2s; */\n\n &:hover {\n transform: scale(1.02);\n }\n\n &:focus {\n text-decoration: underline;\n transform: scale(1.012);\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n }\n\n &:active {\n transform: scale(0.95);\n }\n"],["\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n width: 53px;\n\n margin: -2px;\n background-color: transparent;\n color: ",";\n\n outline: none;\n border: none;\n user-select: none;\n cursor: pointer;\n /* transition: all ease-in-out 0.2s; */\n\n &:hover {\n transform: scale(1.02);\n }\n\n &:focus {\n text-decoration: underline;\n transform: scale(1.012);\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n }\n\n &:active {\n transform: scale(0.95);\n }\n"])),(function(n){var e=n.theme;return r.getColors(e).text.default})),q=y.default(I).withConfig({displayName:"SearchInput__SubmitBtn",componentId:"sc-21j67n-3"})(x||(x=n.__makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n"],["\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n"]))),T=y.default(I).withConfig({displayName:"SearchInput__ClearBtn",componentId:"sc-21j67n-4"})(v||(v=n.__makeTemplateObject(["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n"],["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n"])));exports.FilterField=i.FilterField,exports.FormField=a.FieldWrapper,exports.Datepicker=l.DatepickerCmp,exports.FileUpload=l.FileUploadCmp,exports.LocationField=l.LocationField,exports.Radio=l.RadioButton,exports.SelectDropdown=l.SelectDropdown,exports.Textarea=l.Textarea,exports.Checkbox=c.Checkbox,exports.MultiselectDropdown=s.MultiselectDropdown,exports.Textfield=u.Textfield,exports.CompactForm=function(n){var e=n.mode,t=void 0===e?"default":e,r=n.value,i=n.placeholder,a=n.method,l=n.action,c=n.buttonIcon,s=n.onSubmit,u=n.onClick,d=n.onBlur,p=n.onFocus,f=n.className,m=o.useLibTheme().colors,h="default"===t?m.elementBg.medium:m.elementBg.light;return w.default.createElement(k,{onSubmit:s,method:a,action:l,className:f},w.default.createElement(C,{placeholder:i,value:r,onClick:u,onBlur:d,onFocus:p,backColor:h}),c&&w.default.createElement(j,{isInverted:"onDark"===t},c))},exports.SearchInput=function(n){var e=n.isInverted,t=void 0!==e&&e,o=n.value,r=n.placeholder,i=n.submitIcon,a=n.clearIcon,l=n.onSubmit,c=n.onClick,s=n.onClear,u=n.onBlur,d=n.onFocus,p=n.className;return w.default.createElement(_,{isInverted:t,className:p},i&&w.default.createElement(q,{isInverted:t,onClick:function(){return l&&l()}},i),w.default.createElement(F,{hasLeftIcon:void 0!==i,hasRightIcon:void 0!==a,placeholder:r,value:o,onClick:c,onBlur:u,onFocus:d,onKeyDown:function(n){13===n.keyCode&&(l&&l(),n.preventDefault())}}),a&&w.default.createElement(T,{isInverted:t,onClick:function(){return s&&s()}},a))};
|
|
2
2
|
//# sourceMappingURL=fields.js.map
|