@blateral/b.kit 2.7.5 → 2.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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-2266ee4d.js +2 -0
- package/cjs/FilterBar-2266ee4d.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-ce2084d6.js +2 -0
- package/cjs/MultiselectDropdown-ce2084d6.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-f9e957c1.js +460 -0
- package/esm/FilterBar-f9e957c1.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-10ab18cf.js +296 -0
- package/esm/MultiselectDropdown-10ab18cf.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 +24 -24
- package/esm/sections.news.js +17 -18
- package/esm/sections.news.js.map +1 -1
- package/esm/sections.pois.js +282 -145
- 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/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,460 @@
|
|
|
1
|
+
import { a as __makeTemplateObject, C as Check, f as Cross, _ as __assign, A as AngleRight, g as AngleDown } from './Filter-19220970.js';
|
|
2
|
+
import React__default, { useRef, useEffect, useState, Fragment } from 'react';
|
|
3
|
+
import styled from 'styled-components';
|
|
4
|
+
import { c as copyStyle, C as Copy } from './Copy-c6786949.js';
|
|
5
|
+
import { s as spacings, g as getColors, c as getGlobals, m as mq, w as withRange } from './styles-1f1841ef.js';
|
|
6
|
+
import { i as isValidArray } from './arrays-65b644ef.js';
|
|
7
|
+
import { I as InfoList } from './InfoList-b6980a42.js';
|
|
8
|
+
import { F as FilterField } from './FilterField-bec061bc.js';
|
|
9
|
+
import { M as MultiselectDropdown } from './MultiselectDropdown-10ab18cf.js';
|
|
10
|
+
import './useScroll-881c7b04.js';
|
|
11
|
+
import 'react-dom/server';
|
|
12
|
+
import { createPortal } from 'react-dom';
|
|
13
|
+
import { P as Pointer } from './Pointer-b4abee91.js';
|
|
14
|
+
import { u as useLibTheme } from './LibThemeProvider-fb1d35ac.js';
|
|
15
|
+
import { g as getFormFieldTextSize } from './formFieldText-f4188e55.js';
|
|
16
|
+
|
|
17
|
+
var View$1 = styled.div.withConfig({
|
|
18
|
+
displayName: "POIFacts__View",
|
|
19
|
+
componentId: "sc-zp61fw-0"
|
|
20
|
+
})(templateObject_1$2 || (templateObject_1$2 = __makeTemplateObject(["\n display: inline-flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n margin-top: -", "px;\n margin-left: -", "px;\n\n &:not(:first-child) {\n margin-top: ", "px;\n }\n"], ["\n display: inline-flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n margin-top: -", "px;\n margin-left: -", "px;\n\n &:not(:first-child) {\n margin-top: ", "px;\n }\n"])), spacings.nudge, spacings.nudge * 2, spacings.nudge * 3);
|
|
21
|
+
var FactsWrapper = styled.div.withConfig({
|
|
22
|
+
displayName: "POIFacts__FactsWrapper",
|
|
23
|
+
componentId: "sc-zp61fw-1"
|
|
24
|
+
})(templateObject_2$2 || (templateObject_2$2 = __makeTemplateObject(["\n padding-top: ", "px;\n padding-left: ", "px;\n"], ["\n padding-top: ", "px;\n padding-left: ", "px;\n"])), spacings.nudge, spacings.nudge * 2);
|
|
25
|
+
var Fact = styled.span.withConfig({
|
|
26
|
+
displayName: "POIFacts__Fact",
|
|
27
|
+
componentId: "sc-zp61fw-2"
|
|
28
|
+
})(templateObject_3$2 || (templateObject_3$2 = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n ", "\n color: ", ";\n\n & > * + * {\n margin-left: ", "px;\n }\n"], ["\n display: inline-flex;\n align-items: center;\n ", "\n color: ", ";\n\n & > * + * {\n margin-left: ", "px;\n }\n"])), copyStyle('copy', 'medium'), function (_a) {
|
|
29
|
+
var theme = _a.theme,
|
|
30
|
+
isInverted = _a.isInverted;
|
|
31
|
+
return isInverted ? getColors(theme).text.copyInverted : getColors(theme).text.copy;
|
|
32
|
+
}, spacings.nudge * 0.5);
|
|
33
|
+
|
|
34
|
+
var POIFacts = function (_a) {
|
|
35
|
+
var facts = _a.facts,
|
|
36
|
+
customFact = _a.customFact,
|
|
37
|
+
isInverted = _a.isInverted;
|
|
38
|
+
return React__default.createElement(View$1, null, facts.map(function (fact, i) {
|
|
39
|
+
return React__default.createElement(FactsWrapper, {
|
|
40
|
+
key: 'tag_' + i
|
|
41
|
+
}, customFact ? customFact({
|
|
42
|
+
key: "headtag-".concat(i),
|
|
43
|
+
name: fact || '',
|
|
44
|
+
isInverted: isInverted
|
|
45
|
+
}) : React__default.createElement(Fact, {
|
|
46
|
+
isInverted: isInverted
|
|
47
|
+
}, React__default.createElement(Check, null), React__default.createElement("span", null, fact)));
|
|
48
|
+
}));
|
|
49
|
+
};
|
|
50
|
+
var templateObject_1$2, templateObject_2$2, templateObject_3$2;
|
|
51
|
+
|
|
52
|
+
var View = styled.div.withConfig({
|
|
53
|
+
displayName: "POICard__View",
|
|
54
|
+
componentId: "sc-1l0tnmw-0"
|
|
55
|
+
})(templateObject_1$1 || (templateObject_1$1 = __makeTemplateObject(["\n border: 1px solid\n ", ";\n padding: ", "px;\n border-radius: ", ";\n overflow: hidden;\n\n & > * + * {\n margin-top: ", "px;\n }\n"], ["\n border: 1px solid\n ", ";\n padding: ", "px;\n border-radius: ", ";\n overflow: hidden;\n\n & > * + * {\n margin-top: ", "px;\n }\n"])), function (_a) {
|
|
56
|
+
var theme = _a.theme,
|
|
57
|
+
isInverted = _a.isInverted;
|
|
58
|
+
return isInverted ? getColors(theme).elementBg.light : getColors(theme).elementBg.dark;
|
|
59
|
+
}, spacings.nudge * 2, function (_a) {
|
|
60
|
+
var theme = _a.theme;
|
|
61
|
+
return getGlobals(theme).sections.edgeRadius;
|
|
62
|
+
}, spacings.nudge * 3);
|
|
63
|
+
var Title = styled(Copy).withConfig({
|
|
64
|
+
displayName: "POICard__Title",
|
|
65
|
+
componentId: "sc-1l0tnmw-1"
|
|
66
|
+
})(templateObject_2$1 || (templateObject_2$1 = __makeTemplateObject(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2; /* number of lines to show */\n line-clamp: 2;\n -webkit-box-orient: vertical;\n\n &:not(:first-child) {\n margin-top: ", "px;\n }\n"], ["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2; /* number of lines to show */\n line-clamp: 2;\n -webkit-box-orient: vertical;\n\n &:not(:first-child) {\n margin-top: ", "px;\n }\n"])), spacings.nudge * 3);
|
|
67
|
+
var Description = styled(Copy).withConfig({
|
|
68
|
+
displayName: "POICard__Description",
|
|
69
|
+
componentId: "sc-1l0tnmw-2"
|
|
70
|
+
})(templateObject_3$1 || (templateObject_3$1 = __makeTemplateObject(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 4; /* number of lines to show */\n line-clamp: 4;\n -webkit-box-orient: vertical;\n"], ["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 4; /* number of lines to show */\n line-clamp: 4;\n -webkit-box-orient: vertical;\n"])));
|
|
71
|
+
var Body = styled.div.withConfig({
|
|
72
|
+
displayName: "POICard__Body",
|
|
73
|
+
componentId: "sc-1l0tnmw-3"
|
|
74
|
+
})(templateObject_4$1 || (templateObject_4$1 = __makeTemplateObject(["\n display: flex;\n flex-direction: row;\n /* align-items: flex-start; */\n\n @media ", " {\n margin-left: -", "px;\n margin-right: -", "px;\n\n & > * + * {\n border-left: 1px solid\n ", ";\n }\n }\n"], ["\n display: flex;\n flex-direction: row;\n /* align-items: flex-start; */\n\n @media ", " {\n margin-left: -", "px;\n margin-right: -", "px;\n\n & > * + * {\n border-left: 1px solid\n ", ";\n }\n }\n"])), mq.semilarge, spacings.spacer, spacings.spacer, function (_a) {
|
|
75
|
+
var theme = _a.theme,
|
|
76
|
+
isInverted = _a.isInverted;
|
|
77
|
+
return isInverted ? getColors(theme).elementBg.light : getColors(theme).elementBg.dark;
|
|
78
|
+
});
|
|
79
|
+
var Col = styled.div.withConfig({
|
|
80
|
+
displayName: "POICard__Col",
|
|
81
|
+
componentId: "sc-1l0tnmw-4"
|
|
82
|
+
})(templateObject_5$1 || (templateObject_5$1 = __makeTemplateObject(["\n flex: 1 0 100%;\n\n & > * + * {\n margin-top: ", "px;\n }\n\n @media ", " {\n flex: 1 0 60%;\n padding: 0 ", "px;\n }\n\n @media ", " {\n flex: 1 0 ", "%;\n }\n"], ["\n flex: 1 0 100%;\n\n & > * + * {\n margin-top: ", "px;\n }\n\n @media ", " {\n flex: 1 0 60%;\n padding: 0 ", "px;\n }\n\n @media ", " {\n flex: 1 0 ", "%;\n }\n"])), spacings.nudge * 3, mq.semilarge, spacings.spacer, mq.large, 2 / 3 * 100);
|
|
83
|
+
var InfoCol = styled(Col).withConfig({
|
|
84
|
+
displayName: "POICard__InfoCol",
|
|
85
|
+
componentId: "sc-1l0tnmw-5"
|
|
86
|
+
})(templateObject_6$1 || (templateObject_6$1 = __makeTemplateObject(["\n display: none;\n margin-bottom: ", "px;\n\n @media ", " {\n display: block;\n flex: 1 0 40%;\n }\n\n @media ", " {\n display: block;\n flex: 1 0 ", "%;\n }\n"], ["\n display: none;\n margin-bottom: ", "px;\n\n @media ", " {\n display: block;\n flex: 1 0 40%;\n }\n\n @media ", " {\n display: block;\n flex: 1 0 ", "%;\n }\n"])), spacings.nudge * 2, mq.semilarge, mq.large, 1 / 3 * 100);
|
|
87
|
+
var Action = styled.div.withConfig({
|
|
88
|
+
displayName: "POICard__Action",
|
|
89
|
+
componentId: "sc-1l0tnmw-6"
|
|
90
|
+
})(templateObject_7$1 || (templateObject_7$1 = __makeTemplateObject([""], [""])));
|
|
91
|
+
|
|
92
|
+
var POICard = function (_a) {
|
|
93
|
+
var isInverted = _a.isInverted,
|
|
94
|
+
name = _a.name,
|
|
95
|
+
shortDescription = _a.shortDescription,
|
|
96
|
+
facts = _a.facts,
|
|
97
|
+
infos = _a.infos,
|
|
98
|
+
customFact = _a.customFact,
|
|
99
|
+
action = _a.action;
|
|
100
|
+
var hasFacts = isValidArray(facts, false);
|
|
101
|
+
var hasInfos = isValidArray(infos, false);
|
|
102
|
+
return React__default.createElement(View, {
|
|
103
|
+
isInverted: isInverted
|
|
104
|
+
}, name && React__default.createElement(Title, {
|
|
105
|
+
type: "copy-b",
|
|
106
|
+
size: "big",
|
|
107
|
+
isInverted: isInverted
|
|
108
|
+
}, name), (hasFacts || shortDescription || hasInfos || action) && React__default.createElement(Body, {
|
|
109
|
+
isInverted: isInverted
|
|
110
|
+
}, React__default.createElement(Col, null, isValidArray(facts, false) && React__default.createElement(POIFacts, {
|
|
111
|
+
facts: facts,
|
|
112
|
+
isInverted: isInverted,
|
|
113
|
+
customFact: customFact
|
|
114
|
+
}), shortDescription && React__default.createElement(Description, {
|
|
115
|
+
isInverted: isInverted,
|
|
116
|
+
innerHTML: shortDescription
|
|
117
|
+
}), action && React__default.createElement(Action, null, action(isInverted))), isValidArray(infos, false) && React__default.createElement(InfoCol, null, React__default.createElement(InfoList, {
|
|
118
|
+
isInverted: isInverted,
|
|
119
|
+
items: [{
|
|
120
|
+
items: infos
|
|
121
|
+
}]
|
|
122
|
+
}))));
|
|
123
|
+
};
|
|
124
|
+
var templateObject_1$1, templateObject_2$1, templateObject_3$1, templateObject_4$1, templateObject_5$1, templateObject_6$1, templateObject_7$1;
|
|
125
|
+
|
|
126
|
+
var Portal = function (_a) {
|
|
127
|
+
var isVisible = _a.isVisible,
|
|
128
|
+
root = _a.root,
|
|
129
|
+
children = _a.children;
|
|
130
|
+
var rootRef = useRef(null);
|
|
131
|
+
useEffect(function () {
|
|
132
|
+
rootRef.current = root || document.body;
|
|
133
|
+
}, [root]);
|
|
134
|
+
return isVisible && rootRef.current ? createPortal(children, rootRef.current) : null;
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
var react = function equal(a, b) {
|
|
138
|
+
if (a === b) return true;
|
|
139
|
+
|
|
140
|
+
if (a && b && typeof a == 'object' && typeof b == 'object') {
|
|
141
|
+
if (a.constructor !== b.constructor) return false;
|
|
142
|
+
var length, i, keys;
|
|
143
|
+
|
|
144
|
+
if (Array.isArray(a)) {
|
|
145
|
+
length = a.length;
|
|
146
|
+
if (length != b.length) return false;
|
|
147
|
+
|
|
148
|
+
for (i = length; i-- !== 0;) if (!equal(a[i], b[i])) return false;
|
|
149
|
+
|
|
150
|
+
return true;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;
|
|
154
|
+
if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();
|
|
155
|
+
if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();
|
|
156
|
+
keys = Object.keys(a);
|
|
157
|
+
length = keys.length;
|
|
158
|
+
if (length !== Object.keys(b).length) return false;
|
|
159
|
+
|
|
160
|
+
for (i = length; i-- !== 0;) if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;
|
|
161
|
+
|
|
162
|
+
for (i = length; i-- !== 0;) {
|
|
163
|
+
var key = keys[i];
|
|
164
|
+
|
|
165
|
+
if (key === '_owner' && a.$$typeof) {
|
|
166
|
+
// React-specific: avoid traversing React elements' _owner.
|
|
167
|
+
// _owner contains circular references
|
|
168
|
+
// and is not needed when comparing the actual elements (and not their owners)
|
|
169
|
+
continue;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
if (!equal(a[key], b[key])) return false;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
return true;
|
|
176
|
+
} // true if both NaN, false otherwise
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
return a !== a && b !== b;
|
|
180
|
+
};
|
|
181
|
+
|
|
182
|
+
var FilterView = styled.div.withConfig({
|
|
183
|
+
displayName: "FilterBar__FilterView",
|
|
184
|
+
componentId: "sc-xnsmbb-0"
|
|
185
|
+
})(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: inline-block;\n"], ["\n display: inline-block;\n"])));
|
|
186
|
+
var TextFilter = styled(FilterField).withConfig({
|
|
187
|
+
displayName: "FilterBar__TextFilter",
|
|
188
|
+
componentId: "sc-xnsmbb-1"
|
|
189
|
+
})(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n min-height: 45px;\n height: 45px;\n background: ", ";\n border: ", ";\n"], ["\n min-height: 45px;\n height: 45px;\n background: ", ";\n border: ", ";\n"])), function (_a) {
|
|
190
|
+
var theme = _a.theme;
|
|
191
|
+
return getColors(theme).elementBg.light;
|
|
192
|
+
}, function (_a) {
|
|
193
|
+
var hasBorders = _a.hasBorders;
|
|
194
|
+
return !hasBorders ? 'none' : undefined;
|
|
195
|
+
});
|
|
196
|
+
var Select = styled(MultiselectDropdown).withConfig({
|
|
197
|
+
displayName: "FilterBar__Select",
|
|
198
|
+
componentId: "sc-xnsmbb-2"
|
|
199
|
+
})(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n min-width: 220px;\n min-height: 45px;\n\n button,\n ul {\n border: ", ";\n background: ", ";\n }\n"], ["\n min-width: 220px;\n min-height: 45px;\n\n button,\n ul {\n border: ", ";\n background: ", ";\n }\n"])), function (_a) {
|
|
200
|
+
var hasBorders = _a.hasBorders;
|
|
201
|
+
return !hasBorders ? 'none' : undefined;
|
|
202
|
+
}, function (_a) {
|
|
203
|
+
var theme = _a.theme;
|
|
204
|
+
return getColors(theme).elementBg.light;
|
|
205
|
+
});
|
|
206
|
+
var OverlayToggleView = styled.button.withConfig({
|
|
207
|
+
displayName: "FilterBar__OverlayToggleView",
|
|
208
|
+
componentId: "sc-xnsmbb-3"
|
|
209
|
+
})(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n width: 250px;\n height: 45px;\n\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n\n padding: ", "px;\n background: ", ";\n\n ", "\n line-height: normal;\n /** Clamping min font size to 16px to prevent browser zooming */\n ", "\n\n border: none;\n outline: none;\n border-radius: ", ";\n cursor: pointer;\n\n transition: all ease-in-out 0.2s;\n\n & > * + * {\n margin-left: ", "px;\n }\n\n @media ", " {\n display: none;\n }\n\n &:focus {\n text-decoration: underline;\n box-shadow: 0px 8px 16px\n ", ";\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n outline: none;\n box-shadow: none;\n }\n"], ["\n width: 250px;\n height: 45px;\n\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n\n padding: ", "px;\n background: ", ";\n\n ", "\n line-height: normal;\n /** Clamping min font size to 16px to prevent browser zooming */\n ", "\n\n border: none;\n outline: none;\n border-radius: ", ";\n cursor: pointer;\n\n transition: all ease-in-out 0.2s;\n\n & > * + * {\n margin-left: ", "px;\n }\n\n @media ", " {\n display: none;\n }\n\n &:focus {\n text-decoration: underline;\n box-shadow: 0px 8px 16px\n ", ";\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n outline: none;\n box-shadow: none;\n }\n"])), spacings.nudge, function (_a) {
|
|
210
|
+
var theme = _a.theme;
|
|
211
|
+
return getColors(theme).elementBg.light;
|
|
212
|
+
}, copyStyle('copy', 'small'), function (_a) {
|
|
213
|
+
var theme = _a.theme;
|
|
214
|
+
return withRange(getFormFieldTextSize(theme), 'font-size');
|
|
215
|
+
}, function (_a) {
|
|
216
|
+
var theme = _a.theme;
|
|
217
|
+
return getGlobals(theme).sections.edgeRadius;
|
|
218
|
+
}, spacings.nudge, mq.medium, function (_a) {
|
|
219
|
+
var isInverted = _a.isInverted;
|
|
220
|
+
return isInverted ? 'rgba(255, 255, 255, 0.25)' : 'rgba(0, 0, 0, 0.25)';
|
|
221
|
+
});
|
|
222
|
+
var Counter = styled(Copy).withConfig({
|
|
223
|
+
displayName: "FilterBar__Counter",
|
|
224
|
+
componentId: "sc-xnsmbb-4"
|
|
225
|
+
})(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n position: relative;\n background: ", ";\n color: ", ";\n line-height: normal;\n\n max-height: 20px;\n max-width: 20px;\n\n height: 20px;\n width: 20px;\n\n border-radius: 50px;\n\n margin-left: ", "px;\n\n & > * {\n position: absolute;\n top: 50%;\n left: 50%;\n\n transform: translate(-50%, -50%);\n }\n"], ["\n position: relative;\n background: ", ";\n color: ", ";\n line-height: normal;\n\n max-height: 20px;\n max-width: 20px;\n\n height: 20px;\n width: 20px;\n\n border-radius: 50px;\n\n margin-left: ", "px;\n\n & > * {\n position: absolute;\n top: 50%;\n left: 50%;\n\n transform: translate(-50%, -50%);\n }\n"])), function (_a) {
|
|
226
|
+
var theme = _a.theme;
|
|
227
|
+
return getColors(theme).text.default;
|
|
228
|
+
}, function (_a) {
|
|
229
|
+
var theme = _a.theme;
|
|
230
|
+
return getColors(theme).text.inverted;
|
|
231
|
+
}, spacings.nudge * 2);
|
|
232
|
+
var Indicator = styled.span.withConfig({
|
|
233
|
+
displayName: "FilterBar__Indicator",
|
|
234
|
+
componentId: "sc-xnsmbb-5"
|
|
235
|
+
})(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n pointer-events: none;\n\n & > * + * {\n margin-left: ", "px;\n }\n"], ["\n display: flex;\n align-items: center;\n pointer-events: none;\n\n & > * + * {\n margin-left: ", "px;\n }\n"])), spacings.nudge);
|
|
236
|
+
var Icon = styled.div.withConfig({
|
|
237
|
+
displayName: "FilterBar__Icon",
|
|
238
|
+
componentId: "sc-xnsmbb-6"
|
|
239
|
+
})(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n padding-left: ", "px;\n color: inherit;\n\n transition: transform 0.2s ease-in-out;\n"], ["\n display: flex;\n align-items: center;\n padding-left: ", "px;\n color: inherit;\n\n transition: transform 0.2s ease-in-out;\n"])), spacings.nudge);
|
|
240
|
+
var Label = styled.span.withConfig({
|
|
241
|
+
displayName: "FilterBar__Label",
|
|
242
|
+
componentId: "sc-xnsmbb-7"
|
|
243
|
+
})(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n user-select: none;\n\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n min-width: 0;\n\n & > * + * {\n margin-left: ", "px;\n }\n"], ["\n display: flex;\n align-items: center;\n user-select: none;\n\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n min-width: 0;\n\n & > * + * {\n margin-left: ", "px;\n }\n"])), spacings.nudge);
|
|
244
|
+
|
|
245
|
+
var OverlayToggle = function (_a) {
|
|
246
|
+
var isInverted = _a.isInverted,
|
|
247
|
+
label = _a.label,
|
|
248
|
+
selected = _a.selected,
|
|
249
|
+
onClick = _a.onClick,
|
|
250
|
+
icon = _a.icon,
|
|
251
|
+
indicator = _a.indicator,
|
|
252
|
+
className = _a.className;
|
|
253
|
+
var iconElement = icon === null || icon === void 0 ? void 0 : icon(isInverted);
|
|
254
|
+
var colors = useLibTheme().colors;
|
|
255
|
+
return React__default.createElement(OverlayToggleView, {
|
|
256
|
+
isInverted: isInverted,
|
|
257
|
+
onClick: onClick,
|
|
258
|
+
className: className
|
|
259
|
+
}, React__default.createElement(Label, null, iconElement && React__default.createElement(Icon, null, iconElement), React__default.createElement("span", null, label)), React__default.createElement(Indicator, null, React__default.createElement(Counter, {
|
|
260
|
+
size: "small"
|
|
261
|
+
}, React__default.createElement("span", null, selected || 0)), indicator === null || indicator === void 0 ? void 0 : indicator(), !indicator && React__default.createElement(AngleDown, {
|
|
262
|
+
iconColor: colors.elementBg.dark
|
|
263
|
+
})));
|
|
264
|
+
};
|
|
265
|
+
|
|
266
|
+
var DesktopFilters = styled.div.withConfig({
|
|
267
|
+
displayName: "FilterBar__DesktopFilters",
|
|
268
|
+
componentId: "sc-xnsmbb-8"
|
|
269
|
+
})(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n display: none;\n\n @media ", " {\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n justify-content: flex-end;\n\n & > * {\n width: 220px;\n }\n\n & > * + * {\n margin-right: ", "px;\n }\n }\n"], ["\n display: none;\n\n @media ", " {\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n justify-content: flex-end;\n\n & > * {\n width: 220px;\n }\n\n & > * + * {\n margin-right: ", "px;\n }\n }\n"])), mq.medium, spacings.nudge);
|
|
270
|
+
var MobileBarStage = styled.div.withConfig({
|
|
271
|
+
displayName: "FilterBar__MobileBarStage",
|
|
272
|
+
componentId: "sc-xnsmbb-9"
|
|
273
|
+
})(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n position: fixed;\n bottom: 0;\n left: 0;\n top: 0;\n height: 100vh;\n width: 100vw;\n"], ["\n position: fixed;\n bottom: 0;\n left: 0;\n top: 0;\n height: 100vh;\n width: 100vw;\n"])));
|
|
274
|
+
var MobileBarBackdrop = styled.div.withConfig({
|
|
275
|
+
displayName: "FilterBar__MobileBarBackdrop",
|
|
276
|
+
componentId: "sc-xnsmbb-10"
|
|
277
|
+
})(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n background-color: ", ";\n opacity: 0.8;\n z-index: 0;\n"], ["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n background-color: ", ";\n opacity: 0.8;\n z-index: 0;\n"])), function (_a) {
|
|
278
|
+
var theme = _a.theme;
|
|
279
|
+
return getColors(theme).elementBg.light;
|
|
280
|
+
});
|
|
281
|
+
var MobileBarContent = styled.div.withConfig({
|
|
282
|
+
displayName: "FilterBar__MobileBarContent",
|
|
283
|
+
componentId: "sc-xnsmbb-11"
|
|
284
|
+
})(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n max-height: 90vh;\n z-index: 0;\n overflow-y: auto;\n\n padding: ", "px;\n background-color: ", ";\n border-radius: ", ";\n"], ["\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n max-height: 90vh;\n z-index: 0;\n overflow-y: auto;\n\n padding: ", "px;\n background-color: ", ";\n border-radius: ", ";\n"])), spacings.nudge * 2, function (_a) {
|
|
285
|
+
var theme = _a.theme;
|
|
286
|
+
return getColors(theme).elementBg.light;
|
|
287
|
+
}, function (_a) {
|
|
288
|
+
var theme = _a.theme;
|
|
289
|
+
return getGlobals(theme).sections.edgeRadius;
|
|
290
|
+
});
|
|
291
|
+
var FilterBarHead = styled(Copy).withConfig({
|
|
292
|
+
displayName: "FilterBar__FilterBarHead",
|
|
293
|
+
componentId: "sc-xnsmbb-12"
|
|
294
|
+
})(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n\n margin-bottom: ", "px;\n"], ["\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n\n margin-bottom: ", "px;\n"])), spacings.nudge * 3);
|
|
295
|
+
var FilterBarCloseBtn = styled.button.withConfig({
|
|
296
|
+
displayName: "FilterBar__FilterBarCloseBtn",
|
|
297
|
+
componentId: "sc-xnsmbb-13"
|
|
298
|
+
})(templateObject_14 || (templateObject_14 = __makeTemplateObject(["\n flex: 0 0 auto;\n\n display: inline-block;\n background: none;\n border: none;\n padding: 0;\n margin: 0;\n\n cursor: pointer;\n"], ["\n flex: 0 0 auto;\n\n display: inline-block;\n background: none;\n border: none;\n padding: 0;\n margin: 0;\n\n cursor: pointer;\n"])));
|
|
299
|
+
var MobileBarMain = styled.div.withConfig({
|
|
300
|
+
displayName: "FilterBar__MobileBarMain",
|
|
301
|
+
componentId: "sc-xnsmbb-14"
|
|
302
|
+
})(templateObject_15 || (templateObject_15 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n\n & > * {\n width: 100%;\n }\n\n & > * + * {\n margin-top: ", "px;\n }\n"], ["\n display: flex;\n flex-direction: column;\n\n & > * {\n width: 100%;\n }\n\n & > * + * {\n margin-top: ", "px;\n }\n"])), spacings.nudge * 3);
|
|
303
|
+
var MobileBarSubmitPointer = styled(Pointer.View).withConfig({
|
|
304
|
+
displayName: "FilterBar__MobileBarSubmitPointer",
|
|
305
|
+
componentId: "sc-xnsmbb-15"
|
|
306
|
+
})(templateObject_16 || (templateObject_16 = __makeTemplateObject(["\n width: auto;\n margin-right: auto;\n margin-top: ", "px;\n"], ["\n width: auto;\n margin-right: auto;\n margin-top: ", "px;\n"])), spacings.nudge * 3);
|
|
307
|
+
|
|
308
|
+
var FilterBar = function (_a) {
|
|
309
|
+
var _b;
|
|
310
|
+
|
|
311
|
+
var isInverted = _a.isInverted,
|
|
312
|
+
hasBorders = _a.hasBorders,
|
|
313
|
+
value = _a.value,
|
|
314
|
+
onChange = _a.onChange,
|
|
315
|
+
_c = _a.mobileSubmitLabel,
|
|
316
|
+
mobileSubmitLabel = _c === void 0 ? 'Apply filters' : _c,
|
|
317
|
+
toggleLabel = _a.toggleLabel,
|
|
318
|
+
categoryFilter = _a.categoryFilter,
|
|
319
|
+
textFilter = _a.textFilter,
|
|
320
|
+
closeIcon = _a.closeIcon,
|
|
321
|
+
filterIcon = _a.filterIcon,
|
|
322
|
+
indicator = _a.indicator,
|
|
323
|
+
className = _a.className;
|
|
324
|
+
|
|
325
|
+
var _d = useState(value || {
|
|
326
|
+
textFilter: '',
|
|
327
|
+
categoryFilter: []
|
|
328
|
+
}),
|
|
329
|
+
filters = _d[0],
|
|
330
|
+
setFilters = _d[1];
|
|
331
|
+
|
|
332
|
+
var lastFilters = useRef(filters);
|
|
333
|
+
|
|
334
|
+
var _e = useState(false),
|
|
335
|
+
isMobileBarOpen = _e[0],
|
|
336
|
+
setIsMobileBarOpen = _e[1];
|
|
337
|
+
|
|
338
|
+
var _f = useState(filters.textFilter || ''),
|
|
339
|
+
mobileTextFilter = _f[0],
|
|
340
|
+
setMobileTextFilter = _f[1];
|
|
341
|
+
|
|
342
|
+
var _g = useState(filters.categoryFilter || []),
|
|
343
|
+
mobileCategoryFilter = _g[0],
|
|
344
|
+
setMobileCategoryFilter = _g[1];
|
|
345
|
+
|
|
346
|
+
var handleMobileBarSubmit = function () {
|
|
347
|
+
setIsMobileBarOpen(false);
|
|
348
|
+
setFilters({
|
|
349
|
+
textFilter: mobileTextFilter,
|
|
350
|
+
categoryFilter: mobileCategoryFilter
|
|
351
|
+
});
|
|
352
|
+
};
|
|
353
|
+
|
|
354
|
+
var handleMobileBarClose = function () {
|
|
355
|
+
setIsMobileBarOpen(false);
|
|
356
|
+
setMobileCategoryFilter(filters.categoryFilter || []);
|
|
357
|
+
setMobileTextFilter(filters.textFilter || '');
|
|
358
|
+
};
|
|
359
|
+
|
|
360
|
+
useEffect(function () {
|
|
361
|
+
setMobileCategoryFilter(filters.categoryFilter || []);
|
|
362
|
+
setMobileTextFilter(filters.textFilter || '');
|
|
363
|
+
}, [filters]);
|
|
364
|
+
useEffect(function () {
|
|
365
|
+
if (!react(filters, value)) {
|
|
366
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(filters);
|
|
367
|
+
}
|
|
368
|
+
}, [filters, onChange, value]);
|
|
369
|
+
useEffect(function () {
|
|
370
|
+
if (value && !react(value, lastFilters.current)) {
|
|
371
|
+
setFilters(value);
|
|
372
|
+
lastFilters.current = value;
|
|
373
|
+
}
|
|
374
|
+
}, [value]);
|
|
375
|
+
var overallSelected = (((_b = filters === null || filters === void 0 ? void 0 : filters.categoryFilter) === null || _b === void 0 ? void 0 : _b.length) || 0) + (filters.textFilter ? 1 : 0);
|
|
376
|
+
var closeIconElement = (closeIcon === null || closeIcon === void 0 ? void 0 : closeIcon(isInverted)) || React__default.createElement(Cross, {
|
|
377
|
+
width: 32,
|
|
378
|
+
height: 32
|
|
379
|
+
});
|
|
380
|
+
return React__default.createElement(Fragment, null, React__default.createElement(FilterView, {
|
|
381
|
+
className: className
|
|
382
|
+
}, React__default.createElement(OverlayToggle, {
|
|
383
|
+
label: toggleLabel || '',
|
|
384
|
+
selected: overallSelected,
|
|
385
|
+
onClick: function () {
|
|
386
|
+
return setIsMobileBarOpen(function (prev) {
|
|
387
|
+
return !prev;
|
|
388
|
+
});
|
|
389
|
+
},
|
|
390
|
+
icon: filterIcon,
|
|
391
|
+
indicator: indicator ? function () {
|
|
392
|
+
return indicator({
|
|
393
|
+
isOpen: false,
|
|
394
|
+
isDisabled: false
|
|
395
|
+
});
|
|
396
|
+
} : undefined
|
|
397
|
+
}), React__default.createElement(DesktopFilters, null, textFilter && React__default.createElement(TextFilter, {
|
|
398
|
+
isInverted: isInverted,
|
|
399
|
+
icon: textFilter.icon,
|
|
400
|
+
submitIcon: textFilter.submitIcon,
|
|
401
|
+
clearIcon: textFilter.clearIcon,
|
|
402
|
+
placeholder: textFilter.placeholder,
|
|
403
|
+
value: filters.textFilter,
|
|
404
|
+
onSubmit: function (value) {
|
|
405
|
+
setFilters(function (prev) {
|
|
406
|
+
return __assign(__assign({}, prev), {
|
|
407
|
+
textFilter: value
|
|
408
|
+
});
|
|
409
|
+
});
|
|
410
|
+
},
|
|
411
|
+
hasBorders: hasBorders
|
|
412
|
+
}), categoryFilter && isValidArray(categoryFilter === null || categoryFilter === void 0 ? void 0 : categoryFilter.items, false) && React__default.createElement(Select, {
|
|
413
|
+
isInverted: isInverted,
|
|
414
|
+
items: categoryFilter.items,
|
|
415
|
+
placeholder: categoryFilter.label,
|
|
416
|
+
icon: filterIcon,
|
|
417
|
+
indicator: indicator,
|
|
418
|
+
resetLabel: categoryFilter.resetLabel,
|
|
419
|
+
onChange: function (value) {
|
|
420
|
+
return setFilters(function (prev) {
|
|
421
|
+
return __assign(__assign({}, prev), {
|
|
422
|
+
categoryFilter: value
|
|
423
|
+
});
|
|
424
|
+
});
|
|
425
|
+
},
|
|
426
|
+
selectedItems: filters.categoryFilter,
|
|
427
|
+
hasBorders: hasBorders
|
|
428
|
+
}))), React__default.createElement(Portal, {
|
|
429
|
+
isVisible: isMobileBarOpen
|
|
430
|
+
}, React__default.createElement(MobileBarStage, null, React__default.createElement(MobileBarBackdrop, {
|
|
431
|
+
onClick: handleMobileBarClose
|
|
432
|
+
}), React__default.createElement(MobileBarContent, null, React__default.createElement(FilterBarHead, null, React__default.createElement(Copy, {
|
|
433
|
+
type: "copy-b",
|
|
434
|
+
size: "big"
|
|
435
|
+
}, toggleLabel), closeIconElement && React__default.createElement(FilterBarCloseBtn, {
|
|
436
|
+
onClick: handleMobileBarClose
|
|
437
|
+
}, closeIconElement)), React__default.createElement(MobileBarMain, null, textFilter && React__default.createElement(FilterField, {
|
|
438
|
+
icon: textFilter.icon,
|
|
439
|
+
submitIcon: textFilter.submitIcon,
|
|
440
|
+
clearIcon: textFilter.clearIcon,
|
|
441
|
+
placeholder: textFilter.placeholder,
|
|
442
|
+
value: mobileTextFilter,
|
|
443
|
+
onSubmit: setMobileTextFilter
|
|
444
|
+
}), categoryFilter && isValidArray(categoryFilter === null || categoryFilter === void 0 ? void 0 : categoryFilter.items, false) && React__default.createElement(MultiselectDropdown, {
|
|
445
|
+
inlined: true,
|
|
446
|
+
items: categoryFilter.items,
|
|
447
|
+
placeholder: categoryFilter.label,
|
|
448
|
+
icon: filterIcon,
|
|
449
|
+
indicator: indicator,
|
|
450
|
+
resetLabel: categoryFilter.resetLabel,
|
|
451
|
+
selectedItems: mobileCategoryFilter,
|
|
452
|
+
onChange: setMobileCategoryFilter
|
|
453
|
+
}), mobileSubmitLabel && React__default.createElement(MobileBarSubmitPointer, {
|
|
454
|
+
onClick: handleMobileBarSubmit
|
|
455
|
+
}, React__default.createElement(Pointer.Label, null, mobileSubmitLabel), React__default.createElement(Pointer.Icon, null, React__default.createElement(AngleRight, null))))))));
|
|
456
|
+
};
|
|
457
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13, templateObject_14, templateObject_15, templateObject_16;
|
|
458
|
+
|
|
459
|
+
export { FilterBar as F, POIFacts as P, POICard as a };
|
|
460
|
+
//# sourceMappingURL=FilterBar-f9e957c1.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterBar-f9e957c1.js","sources":["../src/components/blocks/POIFacts.tsx","../src/components/blocks/POICard.tsx","../src/components/blocks/Portal.tsx","../node_modules/fast-deep-equal/react.js","../src/components/blocks/FilterBar.tsx"],"sourcesContent":["import Check from 'components/base/icons/Check';\nimport { copyStyle } from 'components/typography/Copy';\nimport React from 'react';\nimport styled from 'styled-components';\nimport { getColors as color, spacings } from 'utils/styles';\n\nconst View = styled.div`\n display: inline-flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n margin-top: -${spacings.nudge}px;\n margin-left: -${spacings.nudge * 2}px;\n\n &:not(:first-child) {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst FactsWrapper = styled.div`\n padding-top: ${spacings.nudge}px;\n padding-left: ${spacings.nudge * 2}px;\n`;\n\nconst Fact = styled.span<{ isInverted?: boolean }>`\n display: inline-flex;\n align-items: center;\n ${copyStyle('copy', 'medium')}\n color: ${({ theme, isInverted }) =>\n isInverted ? color(theme).text.copyInverted : color(theme).text.copy};\n\n & > * + * {\n margin-left: ${spacings.nudge * 0.5}px;\n }\n`;\n\nconst POIFacts: React.FC<{\n facts: string[];\n customFact?: (props: {\n key: React.Key;\n name: string;\n isInverted?: boolean;\n }) => React.ReactNode;\n isInverted?: boolean;\n}> = ({ facts, customFact, isInverted }) => {\n return (\n <View>\n {facts.map((fact, i) => (\n <FactsWrapper key={'tag_' + i}>\n {customFact ? (\n customFact({\n key: `headtag-${i}`,\n name: fact || '',\n isInverted: isInverted,\n })\n ) : (\n <Fact isInverted={isInverted}>\n <Check />\n <span>{fact}</span>\n </Fact>\n )}\n </FactsWrapper>\n ))}\n </View>\n );\n};\n\nexport default POIFacts;\n","import React from 'react';\nimport styled from 'styled-components';\n\nimport POIFacts from 'components/blocks/POIFacts';\nimport Copy from 'components/typography/Copy';\nimport { isValidArray } from 'utils/arrays';\nimport {\n getColors as color,\n getGlobals as global,\n mq,\n spacings,\n} from 'utils/styles';\nimport InfoList, { Info } from './InfoList';\n\nconst View = styled.div<{ isInverted?: boolean }>`\n border: 1px solid\n ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).elementBg.light\n : color(theme).elementBg.dark};\n padding: ${spacings.nudge * 2}px;\n border-radius: ${({ theme }) => global(theme).sections.edgeRadius};\n overflow: hidden;\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst Title = styled(Copy)`\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2; /* number of lines to show */\n line-clamp: 2;\n -webkit-box-orient: vertical;\n\n &:not(:first-child) {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst Description = styled(Copy)`\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 4; /* number of lines to show */\n line-clamp: 4;\n -webkit-box-orient: vertical;\n`;\n\nconst Body = styled.div<{ isInverted?: boolean }>`\n display: flex;\n flex-direction: row;\n /* align-items: flex-start; */\n\n @media ${mq.semilarge} {\n margin-left: -${spacings.spacer}px;\n margin-right: -${spacings.spacer}px;\n\n & > * + * {\n border-left: 1px solid\n ${({ theme, isInverted }) =>\n isInverted\n ? color(theme).elementBg.light\n : color(theme).elementBg.dark};\n }\n }\n`;\n\nconst Col = styled.div`\n flex: 1 0 100%;\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n\n @media ${mq.semilarge} {\n flex: 1 0 60%;\n padding: 0 ${spacings.spacer}px;\n }\n\n @media ${mq.large} {\n flex: 1 0 ${(2 / 3) * 100}%;\n }\n`;\n\nconst InfoCol = styled(Col)`\n display: none;\n margin-bottom: ${spacings.nudge * 2}px;\n\n @media ${mq.semilarge} {\n display: block;\n flex: 1 0 40%;\n }\n\n @media ${mq.large} {\n display: block;\n flex: 1 0 ${(1 / 3) * 100}%;\n }\n`;\n\nconst Action = styled.div``;\n\nexport type POILocation = {\n address: string;\n street: string;\n postalCode: string;\n city: string;\n coordinates?: { lat: number; long: number };\n mail: string;\n phone: string;\n web: string;\n};\n\nexport type POIContact = {\n name: string;\n position: string;\n street: string;\n postalCode: string;\n city: string;\n mail: string;\n phone: string;\n};\n\nexport interface POICardProps {\n /** Invert text and background for use on dark sections */\n isInverted?: boolean;\n\n /** POI name */\n name: string;\n\n /** Short POI description text (RichText) */\n shortDescription?: string;\n\n /** Array of additional POI informations */\n infos?: Info[];\n\n /** Array of POI facts */\n facts?: string[];\n\n /** Function to inject custom fact node */\n customFact?: (props: {\n key: React.Key;\n name: string;\n isInverted?: boolean;\n }) => React.ReactNode;\n\n /** Function to inject custom action node */\n action?: (isInverted?: boolean) => React.ReactNode;\n}\n\nconst POICard: React.FC<POICardProps> = ({\n isInverted,\n name,\n shortDescription,\n facts,\n infos,\n customFact,\n action,\n}) => {\n const hasFacts = isValidArray(facts, false);\n const hasInfos = isValidArray(infos, false);\n\n return (\n <View isInverted={isInverted}>\n {name && (\n <Title type=\"copy-b\" size=\"big\" isInverted={isInverted}>\n {name}\n </Title>\n )}\n {(hasFacts || shortDescription || hasInfos || action) && (\n <Body isInverted={isInverted}>\n <Col>\n {isValidArray(facts, false) && (\n <POIFacts\n facts={facts}\n isInverted={isInverted}\n customFact={customFact}\n />\n )}\n {shortDescription && (\n <Description\n isInverted={isInverted}\n innerHTML={shortDescription}\n />\n )}\n {action && <Action>{action(isInverted)}</Action>}\n </Col>\n {isValidArray(infos, false) && (\n <InfoCol>\n <InfoList\n isInverted={isInverted}\n items={[\n {\n items: infos,\n },\n ]}\n />\n </InfoCol>\n )}\n </Body>\n )}\n </View>\n );\n};\n\nexport default POICard;\n","import { FC, ReactNode, useEffect, useRef } from 'react';\nimport { createPortal } from 'react-dom';\n\nconst Portal: FC<{\n isVisible?: boolean;\n root?: HTMLElement;\n children?: ReactNode;\n}> = ({ isVisible, root, children }) => {\n const rootRef = useRef<HTMLElement | null>(null);\n\n useEffect(() => {\n rootRef.current = root || document.body;\n }, [root]);\n\n return isVisible && rootRef.current\n ? createPortal(children, rootRef.current)\n : null;\n};\nexport default Portal;\n","'use strict';\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (key === '_owner' && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner.\n // _owner contains circular references\n // and is not needed when comparing the actual elements (and not their owners)\n continue;\n }\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n","import * as Icons from 'components/base/icons/Icons';\nimport FilterField from 'components/fields/FilterField';\nimport MultiselectDropdown from 'components/fields/MultiselectDropdown';\nimport Copy, { copyStyle } from 'components/typography/Copy';\nimport { isValidArray } from 'hooks';\nimport React, {\n FC,\n Fragment,\n ReactNode,\n SyntheticEvent,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport styled from 'styled-components';\nimport {\n mq,\n spacings,\n getColors as color,\n getGlobals as global,\n withRange,\n} from 'utils/styles';\nimport Portal from './Portal';\nimport Pointer from 'components/buttons/Pointer';\nimport equal from 'fast-deep-equal/react';\nimport { useLibTheme } from 'utils/LibThemeProvider';\nimport { getFormFieldTextSize } from 'utils/formFieldText';\n\nconst FilterView = styled.div`\n display: inline-block;\n`;\n\nconst TextFilter = styled(FilterField)<{ hasBorders?: boolean }>`\n min-height: 45px;\n height: 45px;\n background: ${({ theme }) => color(theme).elementBg.light};\n border: ${({ hasBorders }) => (!hasBorders ? 'none' : undefined)};\n`;\n\nconst Select = styled(MultiselectDropdown)<{ hasBorders?: boolean }>`\n min-width: 220px;\n min-height: 45px;\n\n button,\n ul {\n border: ${({ hasBorders }) => (!hasBorders ? 'none' : undefined)};\n background: ${({ theme }) => color(theme).elementBg.light};\n }\n`;\n\nconst OverlayToggleView = styled.button<{ isInverted?: boolean }>`\n width: 250px;\n height: 45px;\n\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n\n padding: ${spacings.nudge}px;\n background: ${({ theme }) => color(theme).elementBg.light};\n\n ${copyStyle('copy', 'small')}\n line-height: normal;\n /** Clamping min font size to 16px to prevent browser zooming */\n ${({ theme }) => withRange(getFormFieldTextSize(theme), 'font-size')}\n\n border: none;\n outline: none;\n border-radius: ${({ theme }) => global(theme).sections.edgeRadius};\n cursor: pointer;\n\n transition: all ease-in-out 0.2s;\n\n & > * + * {\n margin-left: ${spacings.nudge}px;\n }\n\n @media ${mq.medium} {\n display: none;\n }\n\n &:focus {\n text-decoration: underline;\n box-shadow: 0px 8px 16px\n ${({ isInverted }) =>\n isInverted\n ? 'rgba(255, 255, 255, 0.25)'\n : 'rgba(0, 0, 0, 0.25)'};\n }\n\n &:focus:not(:focus-visible) {\n text-decoration: none;\n outline: none;\n box-shadow: none;\n }\n`;\n\nconst Counter = styled(Copy)`\n position: relative;\n background: ${({ theme }) => color(theme).text.default};\n color: ${({ theme }) => color(theme).text.inverted};\n line-height: normal;\n\n max-height: 20px;\n max-width: 20px;\n\n height: 20px;\n width: 20px;\n\n border-radius: 50px;\n\n margin-left: ${spacings.nudge * 2}px;\n\n & > * {\n position: absolute;\n top: 50%;\n left: 50%;\n\n transform: translate(-50%, -50%);\n }\n`;\n\nconst Indicator = styled.span`\n display: flex;\n align-items: center;\n pointer-events: none;\n\n & > * + * {\n margin-left: ${spacings.nudge}px;\n }\n`;\n\nconst Icon = styled.div`\n display: flex;\n align-items: center;\n padding-left: ${spacings.nudge}px;\n color: inherit;\n\n transition: transform 0.2s ease-in-out;\n`;\n\nconst Label = styled.span`\n display: flex;\n align-items: center;\n user-select: none;\n\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n min-width: 0;\n\n & > * + * {\n margin-left: ${spacings.nudge}px;\n }\n`;\n\nconst OverlayToggle: FC<{\n isInverted?: boolean;\n label: string;\n onClick?: (ev: SyntheticEvent<HTMLButtonElement>) => void;\n icon?: (isInverted?: boolean) => ReactNode;\n indicator?: () => ReactNode;\n selected?: number;\n className?: string;\n}> = ({ isInverted, label, selected, onClick, icon, indicator, className }) => {\n const iconElement = icon?.(isInverted);\n const { colors } = useLibTheme();\n\n return (\n <OverlayToggleView\n isInverted={isInverted}\n onClick={onClick}\n className={className}\n >\n <Label>\n {iconElement && <Icon>{iconElement}</Icon>}\n <span>{label}</span>\n </Label>\n\n <Indicator>\n <Counter size=\"small\">\n <span>{selected || 0}</span>\n </Counter>\n {indicator?.()}\n {!indicator && (\n <Icons.AngleDown iconColor={colors.elementBg.dark} />\n )}\n </Indicator>\n </OverlayToggleView>\n );\n};\n\nconst DesktopFilters = styled.div`\n display: none;\n\n @media ${mq.medium} {\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n justify-content: flex-end;\n\n & > * {\n width: 220px;\n }\n\n & > * + * {\n margin-right: ${spacings.nudge}px;\n }\n }\n`;\n\nconst MobileBarStage = styled.div`\n position: fixed;\n bottom: 0;\n left: 0;\n top: 0;\n height: 100vh;\n width: 100vw;\n`;\n\nconst MobileBarBackdrop = styled.div`\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n background-color: ${({ theme }) => color(theme).elementBg.light};\n opacity: 0.8;\n z-index: 0;\n`;\n\nconst MobileBarContent = styled.div`\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n max-height: 90vh;\n z-index: 0;\n overflow-y: auto;\n\n padding: ${spacings.nudge * 2}px;\n background-color: ${({ theme }) => color(theme).elementBg.light};\n border-radius: ${({ theme }) => global(theme).sections.edgeRadius};\n`;\n\nconst FilterBarHead = styled(Copy)`\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n\n margin-bottom: ${spacings.nudge * 3}px;\n`;\n\nconst FilterBarCloseBtn = styled.button`\n flex: 0 0 auto;\n\n display: inline-block;\n background: none;\n border: none;\n padding: 0;\n margin: 0;\n\n cursor: pointer;\n`;\n\nconst MobileBarMain = styled.div`\n display: flex;\n flex-direction: column;\n\n & > * {\n width: 100%;\n }\n\n & > * + * {\n margin-top: ${spacings.nudge * 3}px;\n }\n`;\n\nconst MobileBarSubmitPointer = styled(Pointer.View)`\n width: auto;\n margin-right: auto;\n margin-top: ${spacings.nudge * 3}px;\n`;\n\nexport interface FilterBarProps {\n isInverted?: boolean;\n hasBorders?: boolean;\n value?: FilterState;\n onChange?: (filters: FilterState) => void;\n toggleLabel?: string;\n mobileSubmitLabel?: string;\n categoryFilter?: {\n label?: string;\n resetLabel?: string;\n items?: Array<{\n value: string;\n label: string;\n }>;\n };\n textFilter?: {\n placeholder?: string;\n icon?: (isInverted?: boolean) => React.ReactNode;\n submitIcon?: (isInverted?: boolean) => React.ReactNode;\n clearIcon?: (isInverted?: boolean) => React.ReactNode;\n };\n closeIcon?: (isInverted?: boolean) => React.ReactNode;\n filterIcon?: (isInverted?: boolean) => React.ReactNode;\n indicator?: (props: {\n isOpen: boolean;\n isDisabled?: boolean;\n }) => React.ReactNode;\n}\n\nexport interface FilterState {\n textFilter?: string;\n categoryFilter?: string[];\n}\n\nconst FilterBar: FC<FilterBarProps & { className?: string }> = ({\n isInverted,\n hasBorders,\n value,\n onChange,\n mobileSubmitLabel = 'Apply filters',\n toggleLabel,\n categoryFilter,\n textFilter,\n closeIcon,\n filterIcon,\n indicator,\n className,\n}) => {\n const [filters, setFilters] = useState<FilterState>(\n value || {\n textFilter: '',\n categoryFilter: [],\n }\n );\n const lastFilters = useRef<FilterState>(filters);\n\n const [isMobileBarOpen, setIsMobileBarOpen] = useState(false);\n const [mobileTextFilter, setMobileTextFilter] = useState(\n filters.textFilter || ''\n );\n const [mobileCategoryFilter, setMobileCategoryFilter] = useState(\n filters.categoryFilter || []\n );\n\n const handleMobileBarSubmit = () => {\n setIsMobileBarOpen(false);\n setFilters({\n textFilter: mobileTextFilter,\n categoryFilter: mobileCategoryFilter,\n });\n };\n\n const handleMobileBarClose = () => {\n setIsMobileBarOpen(false);\n setMobileCategoryFilter(filters.categoryFilter || []);\n setMobileTextFilter(filters.textFilter || '');\n };\n\n useEffect(() => {\n setMobileCategoryFilter(filters.categoryFilter || []);\n setMobileTextFilter(filters.textFilter || '');\n }, [filters]);\n\n useEffect(() => {\n if (!equal(filters, value)) {\n onChange?.(filters);\n }\n }, [filters, onChange, value]);\n\n useEffect(() => {\n if (value && !equal(value, lastFilters.current)) {\n setFilters(value);\n lastFilters.current = value;\n }\n }, [value]);\n\n const overallSelected =\n (filters?.categoryFilter?.length || 0) + (filters.textFilter ? 1 : 0);\n\n const closeIconElement = closeIcon?.(isInverted) || (\n <Icons.Cross width={32} height={32} />\n );\n\n return (\n <Fragment>\n <FilterView className={className}>\n <OverlayToggle\n label={toggleLabel || ''}\n selected={overallSelected}\n onClick={() => setIsMobileBarOpen((prev) => !prev)}\n icon={filterIcon}\n indicator={\n indicator\n ? () =>\n indicator({\n isOpen: false,\n isDisabled: false,\n })\n : undefined\n }\n />\n <DesktopFilters>\n {textFilter && (\n <TextFilter\n isInverted={isInverted}\n icon={textFilter.icon}\n submitIcon={textFilter.submitIcon}\n clearIcon={textFilter.clearIcon}\n placeholder={textFilter.placeholder}\n value={filters.textFilter}\n onSubmit={(value) => {\n setFilters((prev) => ({\n ...prev,\n textFilter: value,\n }));\n }}\n hasBorders={hasBorders}\n />\n )}\n {categoryFilter &&\n isValidArray(categoryFilter?.items, false) && (\n <Select\n isInverted={isInverted}\n items={categoryFilter.items}\n placeholder={categoryFilter.label}\n icon={filterIcon}\n indicator={indicator}\n resetLabel={categoryFilter.resetLabel}\n onChange={(value) =>\n setFilters((prev) => ({\n ...prev,\n categoryFilter: value,\n }))\n }\n selectedItems={filters.categoryFilter}\n hasBorders={hasBorders}\n />\n )}\n </DesktopFilters>\n </FilterView>\n <Portal isVisible={isMobileBarOpen}>\n <MobileBarStage>\n <MobileBarBackdrop onClick={handleMobileBarClose} />\n <MobileBarContent>\n <FilterBarHead>\n <Copy type=\"copy-b\" size=\"big\">\n {toggleLabel}\n </Copy>\n {closeIconElement && (\n <FilterBarCloseBtn\n onClick={handleMobileBarClose}\n >\n {closeIconElement}\n </FilterBarCloseBtn>\n )}\n </FilterBarHead>\n <MobileBarMain>\n {textFilter && (\n <FilterField\n icon={textFilter.icon}\n submitIcon={textFilter.submitIcon}\n clearIcon={textFilter.clearIcon}\n placeholder={textFilter.placeholder}\n value={mobileTextFilter}\n onSubmit={setMobileTextFilter}\n />\n )}\n {categoryFilter &&\n isValidArray(categoryFilter?.items, false) && (\n <MultiselectDropdown\n inlined\n items={categoryFilter.items}\n placeholder={categoryFilter.label}\n icon={filterIcon}\n indicator={indicator}\n resetLabel={categoryFilter.resetLabel}\n selectedItems={mobileCategoryFilter}\n onChange={setMobileCategoryFilter}\n />\n )}\n {mobileSubmitLabel && (\n <MobileBarSubmitPointer\n onClick={handleMobileBarSubmit}\n >\n <Pointer.Label>\n {mobileSubmitLabel}\n </Pointer.Label>\n <Pointer.Icon>\n <Icons.AngleRight />\n </Pointer.Icon>\n </MobileBarSubmitPointer>\n )}\n </MobileBarMain>\n </MobileBarContent>\n </MobileBarStage>\n </Portal>\n </Fragment>\n );\n};\n\nexport default FilterBar;\n"],"names":["View","styled","div","templateObject_1","__makeTemplateObject","spacings","nudge","FactsWrapper","templateObject_2","Fact","span","templateObject_3","copyStyle","_a","theme","isInverted","color","text","copyInverted","copy","POIFacts","facts","customFact","React","createElement","map","fact","i","key","concat","name","Check","elementBg","light","dark","global","sections","edgeRadius","Title","Copy","Description","Body","templateObject_4","mq","semilarge","spacer","Col","templateObject_5","large","InfoCol","templateObject_6","Action","templateObject_7","POICard","shortDescription","infos","action","hasFacts","isValidArray","hasInfos","type","size","innerHTML","InfoList","items","Portal","isVisible","root","children","rootRef","useRef","useEffect","current","document","body","createPortal","react","equal","a","b","constructor","length","keys","Array","isArray","RegExp","source","flags","valueOf","Object","prototype","toString","hasOwnProperty","call","$$typeof","FilterView","TextFilter","FilterField","hasBorders","undefined","Select","MultiselectDropdown","OverlayToggleView","button","withRange","getFormFieldTextSize","medium","Counter","default","inverted","Indicator","Icon","Label","templateObject_8","OverlayToggle","label","selected","onClick","icon","indicator","className","iconElement","colors","useLibTheme","Icons","iconColor","DesktopFilters","templateObject_9","MobileBarStage","templateObject_10","MobileBarBackdrop","templateObject_11","MobileBarContent","templateObject_12","FilterBarHead","templateObject_13","FilterBarCloseBtn","templateObject_14","MobileBarMain","MobileBarSubmitPointer","Pointer","templateObject_16","FilterBar","value","onChange","_c","mobileSubmitLabel","toggleLabel","categoryFilter","textFilter","closeIcon","filterIcon","_d","useState","filters","setFilters","lastFilters","_e","isMobileBarOpen","setIsMobileBarOpen","_f","mobileTextFilter","setMobileTextFilter","_g","mobileCategoryFilter","setMobileCategoryFilter","handleMobileBarSubmit","handleMobileBarClose","overallSelected","_b","closeIconElement","width","height","Fragment","prev","isOpen","isDisabled","submitIcon","clearIcon","placeholder","onSubmit","__assign","resetLabel","selectedItems","inlined"],"mappings":"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"}
|