ublo-lib 1.31.42 → 1.31.44
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/es/common/components/admin-links/admin-links.d.ts +11 -0
- package/es/common/components/admin-links/admin-links.jsx +65 -0
- package/es/common/components/admin-links/{index.js → index.d.ts} +1 -1
- package/es/common/components/admin-links/index.jsx +2 -0
- package/es/common/components/analytics.d.ts +5 -0
- package/es/common/components/analytics.js +36 -34
- package/es/common/components/breadcrumb.d.ts +16 -0
- package/es/common/components/breadcrumb.jsx +32 -0
- package/es/common/components/carousel-zone.d.ts +7 -0
- package/es/common/components/carousel-zone.js +36 -55
- package/es/common/components/carousel.d.ts +14 -0
- package/es/common/components/carousel.js +288 -343
- package/es/common/components/cart-preview/api.d.ts +1 -0
- package/es/common/components/cart-preview/api.js +23 -19
- package/es/common/components/cart-preview/cart-pill.d.ts +5 -0
- package/es/common/components/cart-preview/cart-pill.js +5 -10
- package/es/common/components/cart-preview/cart-preview.d.ts +6 -0
- package/es/common/components/cart-preview/cart-preview.js +73 -102
- package/es/common/components/cart-preview/index.d.ts +2 -0
- package/es/common/components/cart-preview/index.js +1 -1
- package/es/common/components/cart-preview/utils.d.ts +2 -0
- package/es/common/components/cart-preview/utils.js +23 -13
- package/es/common/components/collapsible/collapsible.d.ts +9 -0
- package/es/common/components/collapsible/collapsible.jsx +51 -0
- package/es/common/components/collapsible/{index.js → index.d.ts} +1 -1
- package/es/common/components/collapsible/index.jsx +2 -0
- package/es/common/components/cookie-consent/cookie-consent.d.ts +7 -0
- package/es/common/components/cookie-consent/cookie-consent.js +99 -112
- package/es/common/components/cookie-consent/index.d.ts +4 -0
- package/es/common/components/cookie-consent/index.js +1 -1
- package/es/common/components/cookie-consent/messages.d.ts +1 -0
- package/es/common/components/cookie-consent/messages.js +27 -27
- package/es/common/components/cookie-consent/utils.d.ts +1 -0
- package/es/common/components/cookie-consent/utils.js +30 -21
- package/es/common/components/cross-selling-editor/cross-selling-editor.d.ts +18 -0
- package/es/common/components/cross-selling-editor/cross-selling-editor.jsx +35 -0
- package/es/common/components/cross-selling-editor/editor.d.ts +8 -0
- package/es/common/components/cross-selling-editor/editor.jsx +89 -0
- package/es/common/components/cross-selling-editor/hooks/use-custom-offers.d.ts +6 -0
- package/es/common/components/cross-selling-editor/hooks/use-custom-offers.js +56 -51
- package/es/common/components/cross-selling-editor/hooks/use-tunnel-offers.d.ts +1 -0
- package/es/common/components/cross-selling-editor/hooks/use-tunnel-offers.js +39 -31
- package/es/common/components/cross-selling-editor/{index.js → index.d.ts} +1 -1
- package/es/common/components/cross-selling-editor/index.jsx +2 -0
- package/es/common/components/cross-selling-editor/override-trigger-form.d.ts +10 -0
- package/es/common/components/cross-selling-editor/override-trigger-form.jsx +68 -0
- package/es/common/components/cross-selling-editor/override.d.ts +16 -0
- package/es/common/components/cross-selling-editor/override.jsx +102 -0
- package/es/common/components/cross-selling-editor/overrides-list.d.ts +13 -0
- package/es/common/components/cross-selling-editor/overrides-list.jsx +74 -0
- package/es/common/components/cross-selling-editor/rule.d.ts +13 -0
- package/es/common/components/cross-selling-editor/rule.jsx +55 -0
- package/es/common/components/cross-selling-editor/rules.d.ts +11 -0
- package/es/common/components/cross-selling-editor/rules.jsx +53 -0
- package/es/common/components/cross-selling-editor/services/api.d.ts +2 -0
- package/es/common/components/cross-selling-editor/services/api.js +27 -27
- package/es/common/components/cross-selling-editor/services/utils.d.ts +61 -0
- package/es/common/components/cross-selling-editor/services/utils.js +177 -175
- package/es/common/components/cross-selling-editor/tester-tunnel-offer.d.ts +13 -0
- package/es/common/components/cross-selling-editor/tester-tunnel-offer.jsx +26 -0
- package/es/common/components/cross-selling-editor/tester.d.ts +10 -0
- package/es/common/components/cross-selling-editor/tester.jsx +134 -0
- package/es/common/components/cross-selling-editor/types.d.ts +29 -0
- package/es/common/components/cross-selling-editor/types.js +1 -1
- package/es/common/components/custom-contact-form/attachment.d.ts +9 -0
- package/es/common/components/custom-contact-form/attachment.js +131 -201
- package/es/common/components/custom-contact-form/custom-contact-form.d.ts +24 -0
- package/es/common/components/custom-contact-form/custom-contact-form.jsx +121 -0
- package/es/common/components/custom-contact-form/field.d.ts +10 -0
- package/es/common/components/custom-contact-form/field.js +115 -218
- package/es/common/components/custom-contact-form/icons.d.ts +5 -0
- package/es/common/components/custom-contact-form/icons.js +35 -50
- package/es/common/components/custom-contact-form/index.d.ts +2 -0
- package/es/common/components/custom-contact-form/index.js +1 -1
- package/es/common/components/custom-contact-form/messages.d.ts +1 -0
- package/es/common/components/custom-contact-form/messages.js +78 -77
- package/es/common/components/custom-contact-form/utils.d.ts +29 -0
- package/es/common/components/custom-contact-form/utils.js +101 -124
- package/es/common/components/date-picker/calendar.d.ts +14 -0
- package/es/common/components/date-picker/calendar.js +172 -250
- package/es/common/components/date-picker/data.d.ts +86 -0
- package/es/common/components/date-picker/data.js +72 -78
- package/es/common/components/date-picker/date-item.d.ts +21 -0
- package/es/common/components/date-picker/date-item.js +123 -117
- package/es/common/components/date-picker/date-picker.d.ts +16 -0
- package/es/common/components/date-picker/date-picker.js +28 -56
- package/es/common/components/date-picker/helper.d.ts +9 -0
- package/es/common/components/date-picker/helper.js +37 -51
- package/es/common/components/date-picker/index.d.ts +3 -0
- package/es/common/components/date-picker/index.js +1 -1
- package/es/common/components/date-picker/messages.d.ts +1 -0
- package/es/common/components/date-picker/messages.js +47 -46
- package/es/common/components/date-picker/month.d.ts +20 -0
- package/es/common/components/date-picker/month.js +27 -72
- package/es/common/components/date-picker/utils.d.ts +24 -0
- package/es/common/components/date-picker/utils.js +104 -88
- package/es/common/components/editable-calendar/calendar-caption.d.ts +5 -0
- package/es/common/components/editable-calendar/calendar-caption.js +93 -144
- package/es/common/components/editable-calendar/calendar-date.d.ts +12 -0
- package/es/common/components/editable-calendar/calendar-date.js +64 -79
- package/es/common/components/editable-calendar/calendar-editor.d.ts +7 -0
- package/es/common/components/editable-calendar/calendar-editor.js +49 -83
- package/es/common/components/editable-calendar/calendar-header.d.ts +8 -0
- package/es/common/components/editable-calendar/calendar-header.js +13 -26
- package/es/common/components/editable-calendar/calendar.d.ts +6 -0
- package/es/common/components/editable-calendar/calendar.js +81 -115
- package/es/common/components/editable-calendar/data.d.ts +131 -0
- package/es/common/components/editable-calendar/data.js +95 -101
- package/es/common/components/editable-calendar/index.d.ts +1 -0
- package/es/common/components/editable-calendar/index.js +37 -49
- package/es/common/components/editable-calendar/utils.d.ts +18 -0
- package/es/common/components/editable-calendar/utils.js +58 -52
- package/es/common/components/editable-map/cluster.d.ts +4 -0
- package/es/common/components/editable-map/cluster.js +7 -12
- package/es/common/components/editable-map/edit-form.d.ts +7 -0
- package/es/common/components/editable-map/edit-form.js +43 -97
- package/es/common/components/editable-map/editable-map.d.ts +6 -0
- package/es/common/components/editable-map/editable-map.js +56 -111
- package/es/common/components/editable-map/full-screen-button.d.ts +6 -0
- package/es/common/components/editable-map/full-screen-button.js +61 -59
- package/es/common/components/editable-map/helper.d.ts +2 -0
- package/es/common/components/editable-map/helper.js +22 -23
- package/es/common/components/editable-map/icon-picker.d.ts +6 -0
- package/es/common/components/editable-map/icon-picker.js +41 -63
- package/es/common/components/editable-map/icons/esf-pralognan.d.ts +51 -0
- package/es/common/components/editable-map/icons/esf-pralognan.js +372 -1088
- package/es/common/components/editable-map/icons/esf.d.ts +39 -0
- package/es/common/components/editable-map/icons/esf.js +266 -758
- package/es/common/components/editable-map/icons/index.d.ts +6 -0
- package/es/common/components/editable-map/icons/index.js +1 -1
- package/es/common/components/editable-map/icons/lavovelo.d.ts +5 -0
- package/es/common/components/editable-map/icons/lavovelo.js +43 -84
- package/es/common/components/editable-map/icons/sata-huez.d.ts +29 -0
- package/es/common/components/editable-map/icons/sata-huez.js +169 -468
- package/es/common/components/editable-map/icons/sedev-vars.d.ts +29 -0
- package/es/common/components/editable-map/icons/sedev-vars.js +169 -468
- package/es/common/components/editable-map/icons/viarmonia.d.ts +3 -0
- package/es/common/components/editable-map/icons/viarmonia.js +26 -40
- package/es/common/components/editable-map/index.d.ts +4 -0
- package/es/common/components/editable-map/index.js +66 -74
- package/es/common/components/editable-map/map-events.d.ts +9 -0
- package/es/common/components/editable-map/map-events.js +33 -40
- package/es/common/components/editable-map/marker-list.d.ts +7 -0
- package/es/common/components/editable-map/marker-list.js +64 -87
- package/es/common/components/editable-map/markers.d.ts +6 -0
- package/es/common/components/editable-map/markers.js +39 -88
- package/es/common/components/editable-map/popup-data.d.ts +4 -0
- package/es/common/components/editable-map/popup-data.js +14 -35
- package/es/common/components/editable-map/slopes-toggle.d.ts +5 -0
- package/es/common/components/editable-map/slopes-toggle.js +9 -18
- package/es/common/components/error-404/error-404.d.ts +6 -0
- package/es/common/components/error-404/error-404.js +22 -42
- package/es/common/components/error-404/index.d.ts +2 -0
- package/es/common/components/error-404/index.js +1 -1
- package/es/common/components/error-404/messages.d.ts +1 -0
- package/es/common/components/error-404/messages.js +14 -13
- package/es/common/components/faq.d.ts +6 -0
- package/es/common/components/faq.js +45 -49
- package/es/common/components/gesco-contact-form/gesco-contact-form.d.ts +18 -0
- package/es/common/components/gesco-contact-form/gesco-contact-form.jsx +152 -0
- package/es/common/components/gesco-contact-form/hooks/use-params.d.ts +14 -0
- package/es/common/components/gesco-contact-form/hooks/use-params.js +30 -36
- package/es/common/components/gesco-contact-form/index.d.ts +2 -0
- package/es/common/components/gesco-contact-form/index.js +1 -1
- package/es/common/components/gesco-contact-form/phone-code-select.d.ts +7 -0
- package/es/common/components/gesco-contact-form/phone-code-select.jsx +61 -0
- package/es/common/components/gesco-contact-form/services/api.d.ts +29 -0
- package/es/common/components/gesco-contact-form/services/api.js +23 -9
- package/es/common/components/gesco-contact-form/services/form.d.ts +30 -0
- package/es/common/components/gesco-contact-form/services/form.js +25 -39
- package/es/common/components/gesco-contact-form/services/messages.d.ts +33 -0
- package/es/common/components/gesco-contact-form/services/messages.js +65 -68
- package/es/common/components/gesco-contact-form/services/plausible.d.ts +2 -0
- package/es/common/components/gesco-contact-form/services/plausible.js +10 -8
- package/es/common/components/gesco-contact-form/types.d.ts +33 -0
- package/es/common/components/gesco-contact-form/types.js +1 -1
- package/es/common/components/info-buttons.d.ts +7 -0
- package/es/common/components/info-buttons.js +91 -95
- package/es/common/components/information/index.d.ts +2 -0
- package/es/common/components/information/index.js +1 -1
- package/es/common/components/information/information.d.ts +6 -0
- package/es/common/components/information/information.jsx +49 -0
- package/es/common/components/instant-search/hooks/use-constant.d.ts +1 -0
- package/es/common/components/instant-search/hooks/use-constant.js +6 -8
- package/es/common/components/instant-search/hooks/use-debounced-search.d.ts +6 -0
- package/es/common/components/instant-search/hooks/use-debounced-search.js +14 -14
- package/es/common/components/instant-search/hooks/use-search.d.ts +15 -0
- package/es/common/components/instant-search/hooks/use-search.js +15 -10
- package/es/common/components/instant-search/{index.js → index.d.ts} +1 -1
- package/es/common/components/instant-search/index.jsx +2 -0
- package/es/common/components/instant-search/input.d.ts +15 -0
- package/es/common/components/instant-search/input.jsx +64 -0
- package/es/common/components/instant-search/instant-search.d.ts +19 -0
- package/es/common/components/instant-search/instant-search.jsx +98 -0
- package/es/common/components/instant-search/links.d.ts +12 -0
- package/es/common/components/instant-search/links.jsx +45 -0
- package/es/common/components/instant-search/no-product.d.ts +6 -0
- package/es/common/components/instant-search/no-product.jsx +19 -0
- package/es/common/components/instant-search/products.d.ts +13 -0
- package/es/common/components/instant-search/products.jsx +67 -0
- package/es/common/components/instant-search/results.d.ts +76 -0
- package/es/common/components/instant-search/results.jsx +68 -0
- package/es/common/components/instant-search/services/api.d.ts +1 -0
- package/es/common/components/instant-search/services/api.js +10 -12
- package/es/common/components/instant-search/services/dates.d.ts +1 -0
- package/es/common/components/instant-search/services/dates.js +41 -36
- package/es/common/components/instant-search/services/messages.d.ts +1 -0
- package/es/common/components/instant-search/services/messages.js +3 -3
- package/es/common/components/instant-search/services/utils.d.ts +3 -0
- package/es/common/components/instant-search/services/utils.js +35 -34
- package/es/common/components/msem-preset-editor/components/facet-selector.d.ts +6 -0
- package/es/common/components/msem-preset-editor/components/facet-selector.jsx +20 -0
- package/es/common/components/msem-preset-editor/components/form.d.ts +8 -0
- package/es/common/components/msem-preset-editor/components/form.jsx +28 -0
- package/es/common/components/msem-preset-editor/components/stay-picker.d.ts +14 -0
- package/es/common/components/msem-preset-editor/components/stay-picker.jsx +38 -0
- package/es/common/components/msem-preset-editor/components/widget-list-item.d.ts +11 -0
- package/es/common/components/msem-preset-editor/components/widget-list-item.jsx +97 -0
- package/es/common/components/msem-preset-editor/components/widget-list.d.ts +16 -0
- package/es/common/components/msem-preset-editor/components/widget-list.jsx +46 -0
- package/es/common/components/msem-preset-editor/editor-dialog.d.ts +29 -0
- package/es/common/components/msem-preset-editor/editor-dialog.jsx +45 -0
- package/es/common/components/msem-preset-editor/editors/elloha.d.ts +14 -0
- package/es/common/components/msem-preset-editor/editors/elloha.jsx +95 -0
- package/es/common/components/msem-preset-editor/editors/index.d.ts +15 -0
- package/es/common/components/msem-preset-editor/editors/{index.js → index.jsx} +7 -7
- package/es/common/components/msem-preset-editor/editors/lodgings.d.ts +16 -0
- package/es/common/components/msem-preset-editor/editors/lodgings.jsx +235 -0
- package/es/common/components/msem-preset-editor/editors/ski-passes-jb.d.ts +15 -0
- package/es/common/components/msem-preset-editor/editors/ski-passes-jb.jsx +89 -0
- package/es/common/components/msem-preset-editor/editors/ski-passes.d.ts +15 -0
- package/es/common/components/msem-preset-editor/editors/ski-passes.jsx +215 -0
- package/es/common/components/msem-preset-editor/editors/standard-products.d.ts +15 -0
- package/es/common/components/msem-preset-editor/editors/standard-products.jsx +70 -0
- package/es/common/components/msem-preset-editor/editors/vakario.d.ts +14 -0
- package/es/common/components/msem-preset-editor/editors/vakario.jsx +177 -0
- package/es/common/components/msem-preset-editor/index.d.ts +2 -0
- package/es/common/components/msem-preset-editor/index.js +1 -1
- package/es/common/components/msem-preset-editor/msem-preset-editor.d.ts +27 -0
- package/es/common/components/msem-preset-editor/msem-preset-editor.jsx +176 -0
- package/es/common/components/msem-preset-editor/services/api.d.ts +14 -0
- package/es/common/components/msem-preset-editor/services/api.js +90 -82
- package/es/common/components/msem-preset-editor/services/offers.d.ts +22 -0
- package/es/common/components/msem-preset-editor/services/offers.js +68 -77
- package/es/common/components/msem-preset-editor/services/preset.d.ts +31 -0
- package/es/common/components/msem-preset-editor/services/preset.js +18 -26
- package/es/common/components/msem-preset-editor/services/url-params.d.ts +2 -0
- package/es/common/components/msem-preset-editor/services/url-params.js +24 -24
- package/es/common/components/msem-preset-linker/components/actions.d.ts +11 -0
- package/es/common/components/msem-preset-linker/components/actions.jsx +60 -0
- package/es/common/components/msem-preset-linker/components/overlays.d.ts +8 -0
- package/es/common/components/msem-preset-linker/components/overlays.jsx +59 -0
- package/es/common/components/msem-preset-linker/components/resort-selector.d.ts +6 -0
- package/es/common/components/msem-preset-linker/components/resort-selector.jsx +12 -0
- package/es/common/components/msem-preset-linker/hooks/use-msem-presets.d.ts +4 -0
- package/es/common/components/msem-preset-linker/hooks/use-msem-presets.js +32 -48
- package/es/common/components/msem-preset-linker/{index.js → index.d.ts} +1 -1
- package/es/common/components/msem-preset-linker/index.jsx +2 -0
- package/es/common/components/msem-preset-linker/msem-preset-linker.d.ts +29 -0
- package/es/common/components/msem-preset-linker/msem-preset-linker.jsx +56 -0
- package/es/common/components/msem-preset-linker/services/url-params.d.ts +1 -0
- package/es/common/components/msem-preset-linker/services/url-params.js +13 -10
- package/es/common/components/packages-selector/index.d.ts +7 -0
- package/es/common/components/packages-selector/index.js +41 -49
- package/es/common/components/plausible/hooks/use-plausible.d.ts +11 -0
- package/es/common/components/plausible/hooks/use-plausible.js +18 -22
- package/es/common/components/plausible/index.d.ts +7 -0
- package/es/common/components/plausible/index.js +1 -1
- package/es/common/components/plausible/plausible.d.ts +7 -0
- package/es/common/components/plausible/plausible.jsx +17 -0
- package/es/common/components/plausible/services/callback.d.ts +23 -0
- package/es/common/components/plausible/services/callback.js +123 -186
- package/es/common/components/plausible/services/load.d.ts +1 -0
- package/es/common/components/plausible/services/load.js +6 -4
- package/es/common/components/plausible/services/send-goal.d.ts +6 -0
- package/es/common/components/plausible/services/send-goal.js +3 -6
- package/es/common/components/popup.d.ts +6 -0
- package/es/common/components/popup.js +51 -80
- package/es/common/components/scroll-spy.d.ts +13 -0
- package/es/common/components/scroll-spy.jsx +56 -0
- package/es/common/components/scrolling-carousel/{index.js → index.d.ts} +1 -1
- package/es/common/components/scrolling-carousel/index.jsx +2 -0
- package/es/common/components/scrolling-carousel/scrolling-carousel.d.ts +7 -0
- package/es/common/components/scrolling-carousel/scrolling-carousel.jsx +78 -0
- package/es/common/components/search-bar/hooks/use-constant.d.ts +1 -0
- package/es/common/components/search-bar/hooks/use-constant.js +6 -8
- package/es/common/components/search-bar/hooks/use-debounced-search.d.ts +6 -0
- package/es/common/components/search-bar/hooks/use-debounced-search.js +14 -14
- package/es/common/components/search-bar/hooks/use-search.d.ts +11 -0
- package/es/common/components/search-bar/hooks/use-search.js +14 -11
- package/es/common/components/search-bar/index.d.ts +2 -0
- package/es/common/components/search-bar/index.js +1 -1
- package/es/common/components/search-bar/messages.d.ts +14 -0
- package/es/common/components/search-bar/messages.js +16 -16
- package/es/common/components/search-bar/search-bar.d.ts +12 -0
- package/es/common/components/search-bar/search-bar.js +147 -204
- package/es/common/components/search-bar/utils/fetcher.d.ts +1 -0
- package/es/common/components/search-bar/utils/fetcher.js +16 -13
- package/es/common/components/search-bar/utils/keyboard-keys.d.ts +5 -0
- package/es/common/components/search-bar/utils/keyboard-keys.js +1 -1
- package/es/common/components/search-bar/utils/params.d.ts +1 -0
- package/es/common/components/search-bar/utils/params.js +11 -8
- package/es/common/components/tabbed-zones.d.ts +12 -0
- package/es/common/components/tabbed-zones.jsx +68 -0
- package/es/common/components/video-player/controls.d.ts +16 -0
- package/es/common/components/video-player/controls.js +71 -114
- package/es/common/components/video-player/icons.d.ts +7 -0
- package/es/common/components/video-player/icons.js +35 -48
- package/es/common/components/video-player/index.d.ts +1 -0
- package/es/common/components/video-player/index.js +1 -1
- package/es/common/components/video-player/utils.d.ts +4 -0
- package/es/common/components/video-player/utils.js +42 -34
- package/es/common/components/video-player/video-player.d.ts +9 -0
- package/es/common/components/video-player/video-player.js +77 -101
- package/es/common/hooks/use-account.d.ts +6 -0
- package/es/common/hooks/use-account.js +33 -25
- package/es/common/hooks/use-faq.d.ts +2 -0
- package/es/common/hooks/use-faq.js +36 -37
- package/es/common/hooks/use-in-view.d.ts +4 -0
- package/es/common/hooks/use-in-view.js +74 -74
- package/es/common/hooks/use-injected-cms-markup.d.ts +2 -0
- package/es/common/hooks/use-injected-cms-markup.js +46 -39
- package/es/common/hooks/use-packages.d.ts +2 -0
- package/es/common/hooks/use-packages.js +98 -97
- package/es/common/hooks/use-scroll-direction.d.ts +10 -0
- package/es/common/hooks/use-scroll-direction.js +32 -37
- package/es/common/hooks/use-stay.d.ts +3 -0
- package/es/common/hooks/use-stay.js +13 -16
- package/es/common/hooks/use-sticky.d.ts +3 -0
- package/es/common/hooks/use-sticky.js +35 -35
- package/es/common/hooks/use-tunnel.d.ts +10 -0
- package/es/common/hooks/use-tunnel.js +56 -51
- package/es/common/hooks/use-update-effect.d.ts +1 -0
- package/es/common/hooks/use-update-effect.js +9 -9
- package/es/common/hooks/use-window-sizes.d.ts +6 -0
- package/es/common/hooks/use-window-sizes.js +28 -29
- package/es/common/hooks/use-youtube-popup.d.ts +2 -0
- package/es/common/hooks/use-youtube-popup.js +46 -53
- package/es/common/hooks/use-zone-sync.d.ts +2 -0
- package/es/common/hooks/use-zone-sync.js +54 -52
- package/es/common/utils/cms.d.ts +3 -0
- package/es/common/utils/cms.js +32 -17
- package/es/common/utils/cookies.d.ts +1 -0
- package/es/common/utils/cookies.js +11 -10
- package/es/common/utils/copy.d.ts +1 -0
- package/es/common/utils/copy.js +11 -11
- package/es/common/utils/dates.d.ts +1 -0
- package/es/common/utils/dates.js +10 -8
- package/es/common/utils/elements.d.ts +4 -0
- package/es/common/utils/elements.js +16 -14
- package/es/common/utils/events.d.ts +3 -0
- package/es/common/utils/events.js +19 -4
- package/es/common/utils/fetcher.d.ts +4 -0
- package/es/common/utils/fetcher.js +48 -28
- package/es/common/utils/file-manager.d.ts +12 -0
- package/es/common/utils/file-manager.js +20 -13
- package/es/common/utils/load-js.d.ts +2 -0
- package/es/common/utils/load-js.js +11 -10
- package/es/common/utils/msem-widget.d.ts +16 -0
- package/es/common/utils/msem-widget.jsx +49 -0
- package/es/common/utils/scrollbar-size.d.ts +1 -0
- package/es/common/utils/scrollbar-size.js +1 -1
- package/es/common/utils/touch-device.d.ts +1 -0
- package/es/common/utils/touch-device.js +3 -1
- package/es/common/utils/url-parameters.d.ts +1 -0
- package/es/common/utils/url-parameters.js +7 -11
- package/es/esf/components/account-button/account-button.d.ts +14 -0
- package/es/esf/components/account-button/account-button.jsx +16 -0
- package/es/esf/components/account-button/index.d.ts +2 -0
- package/es/esf/components/account-button/index.js +1 -1
- package/es/esf/components/booking-form/booking-form.d.ts +3 -0
- package/es/esf/components/booking-form/booking-form.js +31 -65
- package/es/esf/components/booking-form/data.d.ts +334 -0
- package/es/esf/components/booking-form/data.js +212 -206
- package/es/esf/components/booking-form/field.d.ts +10 -0
- package/es/esf/components/booking-form/field.js +79 -102
- package/es/esf/components/booking-form/hooks/use-custom-fields.d.ts +2 -0
- package/es/esf/components/booking-form/hooks/use-custom-fields.js +17 -23
- package/es/esf/components/booking-form/hooks/use-stay.d.ts +2 -0
- package/es/esf/components/booking-form/hooks/use-stay.js +9 -9
- package/es/esf/components/booking-form/index.d.ts +2 -0
- package/es/esf/components/booking-form/index.js +1 -1
- package/es/esf/components/booking-form/lesson.d.ts +9 -0
- package/es/esf/components/booking-form/lesson.js +31 -48
- package/es/esf/components/booking-form/lessons.d.ts +12 -0
- package/es/esf/components/booking-form/lessons.js +51 -77
- package/es/esf/components/booking-form/messages.d.ts +1 -0
- package/es/esf/components/booking-form/messages.js +51 -50
- package/es/esf/components/booking-form/personal-data.d.ts +10 -0
- package/es/esf/components/booking-form/personal-data.js +31 -55
- package/es/esf/components/booking-form/progress-bar.d.ts +6 -0
- package/es/esf/components/booking-form/progress-bar.js +16 -29
- package/es/esf/components/booking-form/steps.d.ts +14 -0
- package/es/esf/components/booking-form/steps.js +38 -70
- package/es/esf/components/booking-form/summary.d.ts +11 -0
- package/es/esf/components/booking-form/summary.js +101 -131
- package/es/esf/components/booking-form/utils.d.ts +5 -0
- package/es/esf/components/booking-form/utils.js +53 -58
- package/es/esf/components/covid-link/index.d.ts +2 -0
- package/es/esf/components/covid-link/index.js +133 -2
- package/es/esf/components/covid-link/mask-icon.d.ts +3 -0
- package/es/esf/components/covid-link/mask-icon.js +5 -15
- package/es/esf/components/covid-link/vax-pass-icon.d.ts +3 -0
- package/es/esf/components/covid-link/vax-pass-icon.js +13 -32
- package/es/esf/components/cp-form.d.ts +14 -0
- package/es/esf/components/cp-form.js +58 -57
- package/es/esf/components/instructors-book/api.d.ts +3 -0
- package/es/esf/components/instructors-book/api.js +66 -57
- package/es/esf/components/instructors-book/book.d.ts +5 -0
- package/es/esf/components/instructors-book/book.js +66 -75
- package/es/esf/components/instructors-book/filters.d.ts +9 -0
- package/es/esf/components/instructors-book/filters.js +23 -56
- package/es/esf/components/instructors-book/flags.d.ts +34 -0
- package/es/esf/components/instructors-book/flags.js +108 -246
- package/es/esf/components/instructors-book/index.d.ts +6 -0
- package/es/esf/components/instructors-book/index.js +1 -1
- package/es/esf/components/instructors-book/instructor.d.ts +8 -0
- package/es/esf/components/instructors-book/instructor.js +64 -103
- package/es/esf/components/instructors-book/list.d.ts +10 -0
- package/es/esf/components/instructors-book/list.js +21 -40
- package/es/esf/components/instructors-book/messages.d.ts +1 -0
- package/es/esf/components/instructors-book/messages.js +38 -38
- package/es/esf/components/instructors-book/prefixes.d.ts +5 -0
- package/es/esf/components/instructors-book/prefixes.js +3 -3
- package/es/esf/components/instructors-book/sheet.d.ts +8 -0
- package/es/esf/components/instructors-book/sheet.js +93 -159
- package/es/esf/components/instructors-book/suggestions.d.ts +7 -0
- package/es/esf/components/instructors-book/suggestions.js +43 -51
- package/es/esf/components/instructors-book/utils.d.ts +13 -0
- package/es/esf/components/instructors-book/utils.js +42 -39
- package/es/esf/components/levels/detail.d.ts +5 -0
- package/es/esf/components/levels/detail.js +14 -34
- package/es/esf/components/levels/index.d.ts +2 -0
- package/es/esf/components/levels/index.js +1 -1
- package/es/esf/components/levels/levels.d.ts +5 -0
- package/es/esf/components/levels/levels.js +239 -325
- package/es/esf/components/loyal-customers/api.d.ts +4 -0
- package/es/esf/components/loyal-customers/api.js +25 -20
- package/es/esf/components/loyal-customers/components/bin-icon.d.ts +3 -0
- package/es/esf/components/loyal-customers/components/bin-icon.js +9 -25
- package/es/esf/components/loyal-customers/components/customer-form.d.ts +18 -0
- package/es/esf/components/loyal-customers/components/customer-form.js +54 -89
- package/es/esf/components/loyal-customers/components/field.d.ts +9 -0
- package/es/esf/components/loyal-customers/components/field.js +67 -91
- package/es/esf/components/loyal-customers/components/row.d.ts +10 -0
- package/es/esf/components/loyal-customers/components/row.js +31 -66
- package/es/esf/components/loyal-customers/components/rows.d.ts +9 -0
- package/es/esf/components/loyal-customers/components/rows.js +14 -30
- package/es/esf/components/loyal-customers/components/stay.d.ts +5 -0
- package/es/esf/components/loyal-customers/components/stay.js +24 -30
- package/es/esf/components/loyal-customers/components/student-form.d.ts +10 -0
- package/es/esf/components/loyal-customers/components/student-form.js +59 -106
- package/es/esf/components/loyal-customers/components/voucher.d.ts +7 -0
- package/es/esf/components/loyal-customers/components/voucher.js +5 -19
- package/es/esf/components/loyal-customers/content.d.ts +17 -0
- package/es/esf/components/loyal-customers/content.js +43 -46
- package/es/esf/components/loyal-customers/data.d.ts +166 -0
- package/es/esf/components/loyal-customers/data.js +62 -113
- package/es/esf/components/loyal-customers/hooks/use-stored-rows.d.ts +3 -0
- package/es/esf/components/loyal-customers/hooks/use-stored-rows.js +9 -8
- package/es/esf/components/loyal-customers/index.d.ts +2 -0
- package/es/esf/components/loyal-customers/index.js +1 -1
- package/es/esf/components/loyal-customers/loyal-customers.d.ts +17 -0
- package/es/esf/components/loyal-customers/loyal-customers.js +62 -120
- package/es/esf/components/loyal-customers/messages.d.ts +1 -0
- package/es/esf/components/loyal-customers/messages.js +57 -56
- package/es/esf/components/loyal-customers/utils.d.ts +20 -0
- package/es/esf/components/loyal-customers/utils.js +42 -67
- package/es/esf/components/magic-box/booking.d.ts +11 -0
- package/es/esf/components/magic-box/booking.js +97 -90
- package/es/esf/components/magic-box/filter.d.ts +8 -0
- package/es/esf/components/magic-box/filter.js +16 -38
- package/es/esf/components/magic-box/filters.d.ts +7 -0
- package/es/esf/components/magic-box/filters.js +7 -18
- package/es/esf/components/magic-box/index.d.ts +2 -0
- package/es/esf/components/magic-box/index.js +1 -1
- package/es/esf/components/magic-box/magic-box.d.ts +27 -0
- package/es/esf/components/magic-box/magic-box.jsx +142 -0
- package/es/esf/components/magic-box/messages.d.ts +1 -0
- package/es/esf/components/magic-box/messages.js +27 -26
- package/es/esf/components/magic-box/services/api.d.ts +18 -0
- package/es/esf/components/magic-box/services/api.js +39 -48
- package/es/esf/components/magic-box/services/widgets.d.ts +1 -0
- package/es/esf/components/magic-box/services/widgets.js +15 -3
- package/es/esf/components/parcours-esf/index.d.ts +2 -0
- package/es/esf/components/parcours-esf/index.js +1 -1
- package/es/esf/components/parcours-esf/parcours-esf.d.ts +14 -0
- package/es/esf/components/parcours-esf/parcours-esf.jsx +42 -0
- package/es/esf/components/period-picker/controls.d.ts +5 -0
- package/es/esf/components/period-picker/controls.js +22 -38
- package/es/esf/components/period-picker/date-display.d.ts +4 -0
- package/es/esf/components/period-picker/date-display.js +40 -59
- package/es/esf/components/period-picker/days.d.ts +3 -0
- package/es/esf/components/period-picker/days.js +68 -102
- package/es/esf/components/period-picker/extended-stay-picker.d.ts +12 -0
- package/es/esf/components/period-picker/extended-stay-picker.js +23 -48
- package/es/esf/components/period-picker/index.d.ts +2 -0
- package/es/esf/components/period-picker/index.js +1 -1
- package/es/esf/components/period-picker/messages.d.ts +1 -0
- package/es/esf/components/period-picker/messages.js +87 -87
- package/es/esf/components/period-picker/period-picker.d.ts +8 -0
- package/es/esf/components/period-picker/period-picker.js +125 -183
- package/es/esf/components/period-picker/popup.d.ts +7 -0
- package/es/esf/components/period-picker/popup.js +16 -33
- package/es/esf/components/period-picker/services/dates.d.ts +15 -0
- package/es/esf/components/period-picker/services/dates.js +70 -68
- package/es/esf/components/period-picker/services/events.d.ts +1 -0
- package/es/esf/components/period-picker/services/events.js +3 -6
- package/es/esf/components/period-picker/services/motions.d.ts +50 -0
- package/es/esf/components/period-picker/services/motions.js +8 -33
- package/es/esf/components/period-picker/services/sections.d.ts +2 -0
- package/es/esf/components/period-picker/services/sections.js +39 -31
- package/es/esf/components/period-picker/services/stay.d.ts +2 -0
- package/es/esf/components/period-picker/services/stay.js +20 -21
- package/es/esf/components/period-picker/title.d.ts +5 -0
- package/es/esf/components/period-picker/title.js +9 -22
- package/es/esf/components/period-picker/warning.d.ts +8 -0
- package/es/esf/components/period-picker/warning.js +24 -43
- package/es/esf/components/period-picker/weeks.d.ts +3 -0
- package/es/esf/components/period-picker/weeks.js +98 -137
- package/es/esf/components/reviews.d.ts +7 -0
- package/es/esf/components/reviews.js +27 -25
- package/es/esf/components/village-maps/icons.d.ts +6 -0
- package/es/esf/components/village-maps/icons.js +32 -38
- package/es/esf/components/village-maps/index.d.ts +8 -0
- package/es/esf/components/village-maps/index.js +100 -193
- package/es/esf/components/village-maps/messages.d.ts +2 -0
- package/es/esf/components/village-maps/messages.js +13 -13
- package/es/esf/components/village-maps/utils.d.ts +4 -0
- package/es/esf/components/village-maps/utils.js +20 -19
- package/es/esf/components/week-picker/index.d.ts +14 -0
- package/es/esf/components/week-picker/index.js +182 -222
- package/es/esf/components/week-picker/messages.d.ts +27 -0
- package/es/esf/components/week-picker/messages.js +31 -30
- package/es/esf/components/week-picker/utils.d.ts +5 -0
- package/es/esf/components/week-picker/utils.js +52 -47
- package/es/esf/components/week-picker/week.d.ts +10 -0
- package/es/esf/components/week-picker/week.js +31 -46
- package/es/esf/components/week-picker-2/index.d.ts +14 -0
- package/es/esf/components/week-picker-2/index.js +207 -259
- package/es/esf/components/week-picker-2/messages.d.ts +31 -0
- package/es/esf/components/week-picker-2/messages.js +29 -29
- package/es/esf/components/week-picker-2/utils.d.ts +5 -0
- package/es/esf/components/week-picker-2/utils.js +52 -47
- package/es/esf/components/week-picker-2/week.d.ts +10 -0
- package/es/esf/components/week-picker-2/week.js +32 -49
- package/es/esf/hooks/use-affiliation.d.ts +1 -0
- package/es/esf/hooks/use-affiliation.js +12 -16
- package/es/esf/hooks/use-booking-links.d.ts +1 -0
- package/es/esf/hooks/use-booking-links.js +52 -34
- package/es/esf/hooks/use-reviews.d.ts +2 -0
- package/es/esf/hooks/use-reviews.js +27 -22
- package/es/esf/hooks/use-season-products.d.ts +1 -0
- package/es/esf/hooks/use-season-products.js +83 -79
- package/es/future/components/msem/index.d.ts +3 -0
- package/es/future/components/msem/index.js +1 -1
- package/es/future/components/msem/script.d.ts +6 -0
- package/es/future/components/msem/script.jsx +7 -0
- package/es/future/components/msem/tunnel.d.ts +41 -0
- package/es/future/components/msem/tunnel.jsx +18 -0
- package/es/future/components/msem/types.d.ts +15 -0
- package/es/future/components/msem/types.js +1 -1
- package/es/future/components/msem/utils.d.ts +3 -0
- package/es/future/components/msem/utils.js +19 -20
- package/es/future/components/plausible/hooks/use-plausible.d.ts +11 -0
- package/es/future/components/plausible/hooks/use-plausible.js +18 -22
- package/es/future/components/plausible/index.d.ts +7 -0
- package/es/future/components/plausible/index.js +1 -1
- package/es/future/components/plausible/plausible.d.ts +7 -0
- package/es/future/components/plausible/plausible.jsx +17 -0
- package/es/future/components/plausible/services/callback.d.ts +23 -0
- package/es/future/components/plausible/services/callback.js +123 -186
- package/es/future/components/plausible/services/load.d.ts +1 -0
- package/es/future/components/plausible/services/load.js +6 -4
- package/es/future/components/plausible/services/send-goal.d.ts +6 -0
- package/es/future/components/plausible/services/send-goal.js +3 -6
- package/es/lbm/components/lumiplan/api.d.ts +8 -0
- package/es/lbm/components/lumiplan/api.js +60 -54
- package/es/lbm/components/lumiplan/domain.d.ts +7 -0
- package/es/lbm/components/lumiplan/domain.jsx +74 -0
- package/es/lbm/components/lumiplan/header.d.ts +8 -0
- package/es/lbm/components/lumiplan/header.jsx +25 -0
- package/es/lbm/components/lumiplan/i18n/translations.d.ts +7 -0
- package/es/lbm/components/lumiplan/i18n/translations.jsx +20 -0
- package/es/lbm/components/lumiplan/icons/alert.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/alert.js +6 -21
- package/es/lbm/components/lumiplan/icons/avalanche-risk.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/avalanche-risk.js +5 -14
- package/es/lbm/components/lumiplan/icons/cabin.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/cabin.js +5 -14
- package/es/lbm/components/lumiplan/icons/check.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/check.js +5 -16
- package/es/lbm/components/lumiplan/icons/close.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/close.js +6 -21
- package/es/lbm/components/lumiplan/icons/cloud.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/cloud.js +6 -20
- package/es/lbm/components/lumiplan/icons/dawn.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/dawn.js +6 -19
- package/es/lbm/components/lumiplan/icons/fog.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/fog.js +7 -23
- package/es/lbm/components/lumiplan/icons/heavy-snow.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/heavy-snow.js +10 -32
- package/es/lbm/components/lumiplan/icons/information.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/information.js +6 -21
- package/es/lbm/components/lumiplan/icons/isothermal.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/isothermal.js +10 -25
- package/es/lbm/components/lumiplan/icons/lifts/index.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/lifts/index.js +1 -1
- package/es/lbm/components/lumiplan/icons/lifts/tapis-roulant.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/lifts/tapis-roulant.js +5 -16
- package/es/lbm/components/lumiplan/icons/lifts/telecabine.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/lifts/telecabine.js +5 -16
- package/es/lbm/components/lumiplan/icons/lifts/telesiege-debrayable.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/lifts/telesiege-debrayable.js +8 -27
- package/es/lbm/components/lumiplan/icons/lifts/telesiege.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/lifts/telesiege.js +5 -16
- package/es/lbm/components/lumiplan/icons/lifts/teleski.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/lifts/teleski.js +5 -16
- package/es/lbm/components/lumiplan/icons/link.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/link.js +6 -17
- package/es/lbm/components/lumiplan/icons/night.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/night.js +5 -14
- package/es/lbm/components/lumiplan/icons/rain.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/rain.js +10 -24
- package/es/lbm/components/lumiplan/icons/rainy-rainy.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/rainy-rainy.js +6 -20
- package/es/lbm/components/lumiplan/icons/rainy.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/rainy.js +6 -20
- package/es/lbm/components/lumiplan/icons/reload.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/reload.js +13 -30
- package/es/lbm/components/lumiplan/icons/road-condition.d.ts +7 -0
- package/es/lbm/components/lumiplan/icons/road-condition.js +10 -28
- package/es/lbm/components/lumiplan/icons/slopes.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/slopes.js +5 -14
- package/es/lbm/components/lumiplan/icons/snow-cover.d.ts +7 -0
- package/es/lbm/components/lumiplan/icons/snow-cover.js +5 -16
- package/es/lbm/components/lumiplan/icons/snow.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/snow.js +8 -26
- package/es/lbm/components/lumiplan/icons/storm.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/storm.js +5 -15
- package/es/lbm/components/lumiplan/icons/sun.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/sun.js +5 -16
- package/es/lbm/components/lumiplan/icons/sunny.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/sunny.js +7 -23
- package/es/lbm/components/lumiplan/icons/time.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/time.js +6 -21
- package/es/lbm/components/lumiplan/icons/trails/accrobranche.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/accrobranche.js +6 -17
- package/es/lbm/components/lumiplan/icons/trails/boarder-cross.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/boarder-cross.js +7 -21
- package/es/lbm/components/lumiplan/icons/trails/champ-de-bosse.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/champ-de-bosse.js +6 -19
- package/es/lbm/components/lumiplan/icons/trails/freeride.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/freeride.js +5 -16
- package/es/lbm/components/lumiplan/icons/trails/index.d.ts +16 -0
- package/es/lbm/components/lumiplan/icons/trails/index.js +1 -1
- package/es/lbm/components/lumiplan/icons/trails/luge-sur-rail.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/luge-sur-rail.js +6 -19
- package/es/lbm/components/lumiplan/icons/trails/luge.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/luge.js +5 -16
- package/es/lbm/components/lumiplan/icons/trails/pieton.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/pieton.js +5 -16
- package/es/lbm/components/lumiplan/icons/trails/piste-eclairee.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/piste-eclairee.js +6 -19
- package/es/lbm/components/lumiplan/icons/trails/raquette.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/raquette.js +17 -65
- package/es/lbm/components/lumiplan/icons/trails/ski-alpin.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/ski-alpin.js +5 -16
- package/es/lbm/components/lumiplan/icons/trails/ski-fond.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/ski-fond.js +5 -16
- package/es/lbm/components/lumiplan/icons/trails/snowpark.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/snowpark.js +5 -16
- package/es/lbm/components/lumiplan/icons/trails/snowtubing.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/snowtubing.js +7 -23
- package/es/lbm/components/lumiplan/icons/trails/tyrolienne.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/tyrolienne.js +5 -16
- package/es/lbm/components/lumiplan/icons/trails/vtt.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/vtt.js +6 -19
- package/es/lbm/components/lumiplan/icons/trails/zone-freeride.d.ts +5 -0
- package/es/lbm/components/lumiplan/icons/trails/zone-freeride.js +5 -16
- package/es/lbm/components/lumiplan/icons/variable-snow.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/variable-snow.js +9 -29
- package/es/lbm/components/lumiplan/icons/variable-storm.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/variable-storm.js +6 -22
- package/es/lbm/components/lumiplan/icons/variable.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/variable.js +6 -20
- package/es/lbm/components/lumiplan/icons/warning.d.ts +6 -0
- package/es/lbm/components/lumiplan/icons/warning.js +6 -21
- package/es/lbm/components/lumiplan/icons/wind.d.ts +7 -0
- package/es/lbm/components/lumiplan/icons/wind.js +13 -26
- package/es/lbm/components/lumiplan/index.d.ts +2 -0
- package/es/lbm/components/lumiplan/index.js +1 -1
- package/es/lbm/components/lumiplan/lumiplan.d.ts +2 -0
- package/es/lbm/components/lumiplan/lumiplan.jsx +179 -0
- package/es/lbm/components/lumiplan/opening.d.ts +8 -0
- package/es/lbm/components/lumiplan/opening.jsx +108 -0
- package/es/lbm/components/lumiplan/pois.d.ts +7 -0
- package/es/lbm/components/lumiplan/pois.jsx +233 -0
- package/es/lbm/components/lumiplan/print-button.d.ts +9 -0
- package/es/lbm/components/lumiplan/print-button.jsx +27 -0
- package/es/lbm/components/lumiplan/resort-selector.d.ts +12 -0
- package/es/lbm/components/lumiplan/resort-selector.jsx +47 -0
- package/es/lbm/components/lumiplan/road-condition.d.ts +7 -0
- package/es/lbm/components/lumiplan/road-condition.jsx +59 -0
- package/es/lbm/components/lumiplan/signature.d.ts +7 -0
- package/es/lbm/components/lumiplan/signature.jsx +12 -0
- package/es/lbm/components/lumiplan/todays-tips.d.ts +7 -0
- package/es/lbm/components/lumiplan/todays-tips.jsx +28 -0
- package/es/lbm/components/lumiplan/toolbar.d.ts +7 -0
- package/es/lbm/components/lumiplan/toolbar.jsx +15 -0
- package/es/lbm/components/lumiplan/types.d.ts +291 -0
- package/es/lbm/components/lumiplan/types.js +1 -1
- package/es/lbm/components/lumiplan/weather/avalanche-risk.d.ts +4 -0
- package/es/lbm/components/lumiplan/weather/avalanche-risk.jsx +22 -0
- package/es/lbm/components/lumiplan/weather/index.d.ts +2 -0
- package/es/lbm/components/lumiplan/weather/index.js +1 -1
- package/es/lbm/components/lumiplan/weather/snow-data.d.ts +8 -0
- package/es/lbm/components/lumiplan/weather/snow-data.jsx +44 -0
- package/es/lbm/components/lumiplan/weather/weather-data.d.ts +9 -0
- package/es/lbm/components/lumiplan/weather/weather-data.jsx +85 -0
- package/es/lbm/components/lumiplan/weather/weather-days.d.ts +7 -0
- package/es/lbm/components/lumiplan/weather/weather-days.jsx +60 -0
- package/es/lbm/components/lumiplan/weather/weather-icon.d.ts +68 -0
- package/es/lbm/components/lumiplan/weather/weather-icon.jsx +34 -0
- package/es/lbm/components/lumiplan/weather/weather-zones.d.ts +6 -0
- package/es/lbm/components/lumiplan/weather/weather-zones.jsx +56 -0
- package/es/lbm/components/lumiplan/weather/weather.d.ts +7 -0
- package/es/lbm/components/lumiplan/weather/weather.jsx +80 -0
- package/package.json +4 -13
- package/es/common/components/admin-links/admin-links.js +0 -102
- package/es/common/components/breadcrumb.js +0 -82
- package/es/common/components/collapsible/collapsible.js +0 -69
- package/es/common/components/cross-selling-editor/cross-selling-editor.js +0 -60
- package/es/common/components/cross-selling-editor/editor.js +0 -109
- package/es/common/components/cross-selling-editor/override-trigger-form.js +0 -166
- package/es/common/components/cross-selling-editor/override.js +0 -167
- package/es/common/components/cross-selling-editor/overrides-list.js +0 -131
- package/es/common/components/cross-selling-editor/rule.js +0 -105
- package/es/common/components/cross-selling-editor/rules.js +0 -86
- package/es/common/components/cross-selling-editor/tester-tunnel-offer.js +0 -65
- package/es/common/components/cross-selling-editor/tester.js +0 -197
- package/es/common/components/custom-contact-form/custom-contact-form.js +0 -164
- package/es/common/components/gesco-contact-form/gesco-contact-form.js +0 -262
- package/es/common/components/gesco-contact-form/phone-code-select.js +0 -81
- package/es/common/components/information/information.js +0 -58
- package/es/common/components/instant-search/input.js +0 -86
- package/es/common/components/instant-search/instant-search.js +0 -138
- package/es/common/components/instant-search/links.js +0 -81
- package/es/common/components/instant-search/no-product.js +0 -81
- package/es/common/components/instant-search/products.js +0 -129
- package/es/common/components/instant-search/results.js +0 -130
- package/es/common/components/msem-preset-editor/components/facet-selector.js +0 -40
- package/es/common/components/msem-preset-editor/components/form.js +0 -58
- package/es/common/components/msem-preset-editor/components/stay-picker.js +0 -74
- package/es/common/components/msem-preset-editor/components/widget-list-item.js +0 -137
- package/es/common/components/msem-preset-editor/components/widget-list.js +0 -59
- package/es/common/components/msem-preset-editor/editor-dialog.js +0 -74
- package/es/common/components/msem-preset-editor/editors/elloha.js +0 -113
- package/es/common/components/msem-preset-editor/editors/lodgings.js +0 -333
- package/es/common/components/msem-preset-editor/editors/ski-passes-jb.js +0 -130
- package/es/common/components/msem-preset-editor/editors/ski-passes.js +0 -285
- package/es/common/components/msem-preset-editor/editors/standard-products.js +0 -94
- package/es/common/components/msem-preset-editor/editors/vakario.js +0 -252
- package/es/common/components/msem-preset-editor/msem-preset-editor.js +0 -251
- package/es/common/components/msem-preset-linker/components/actions.js +0 -57
- package/es/common/components/msem-preset-linker/components/overlays.js +0 -68
- package/es/common/components/msem-preset-linker/components/resort-selector.js +0 -22
- package/es/common/components/msem-preset-linker/msem-preset-linker.js +0 -84
- package/es/common/components/plausible/plausible.js +0 -26
- package/es/common/components/scroll-spy.js +0 -59
- package/es/common/components/scrolling-carousel/scrolling-carousel.js +0 -105
- package/es/common/components/tabbed-zones.js +0 -103
- package/es/common/utils/msem-widget.js +0 -45
- package/es/esf/components/account-button/account-button.js +0 -40
- package/es/esf/components/magic-box/magic-box.js +0 -186
- package/es/esf/components/parcours-esf/parcours-esf.js +0 -52
- package/es/future/components/msem/script.js +0 -14
- package/es/future/components/msem/tunnel.js +0 -25
- package/es/future/components/plausible/plausible.js +0 -26
- package/es/lbm/components/lumiplan/domain.js +0 -118
- package/es/lbm/components/lumiplan/header.js +0 -39
- package/es/lbm/components/lumiplan/i18n/translations.js +0 -29
- package/es/lbm/components/lumiplan/lumiplan.js +0 -189
- package/es/lbm/components/lumiplan/opening.js +0 -147
- package/es/lbm/components/lumiplan/pois.js +0 -299
- package/es/lbm/components/lumiplan/print-button.js +0 -29
- package/es/lbm/components/lumiplan/resort-selector.js +0 -64
- package/es/lbm/components/lumiplan/road-condition.js +0 -108
- package/es/lbm/components/lumiplan/signature.js +0 -24
- package/es/lbm/components/lumiplan/todays-tips.js +0 -52
- package/es/lbm/components/lumiplan/toolbar.js +0 -31
- package/es/lbm/components/lumiplan/weather/avalanche-risk.js +0 -37
- package/es/lbm/components/lumiplan/weather/snow-data.js +0 -74
- package/es/lbm/components/lumiplan/weather/weather-data.js +0 -131
- package/es/lbm/components/lumiplan/weather/weather-days.js +0 -82
- package/es/lbm/components/lumiplan/weather/weather-icon.js +0 -37
- package/es/lbm/components/lumiplan/weather/weather-zones.js +0 -77
- package/es/lbm/components/lumiplan/weather/weather.js +0 -139
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export default function NoProduct({ className }) {
|
|
3
|
+
return (<svg width="200" height="200" viewBox="0 0 200 200" fill="none" xmlns="http://www.w3.org/2000/svg" className={className}>
|
|
4
|
+
<path d="M100.5 184.3a85.8 85.8 0 1 0 0-171.5 85.8 85.8 0 0 0 0 171.5Z" fill="#EDEDED"/>
|
|
5
|
+
<path fillRule="evenodd" clipRule="evenodd" d="M100.5 11a87.5 87.5 0 1 0 0 175 87.5 87.5 0 0 0 0-175Zm0 3.5a84 84 0 1 1 0 168 84 84 0 0 1 0-168Z" fill="#D7D7D7"/>
|
|
6
|
+
<path fillRule="evenodd" clipRule="evenodd" d="M161.4 61.5c1 0 1.8-.8 1.8-1.8V46.1a4.7 4.7 0 0 0-4.7-4.7H26a4.7 4.7 0 0 0-4.7 4.7v34.3c0 1 .8 1.8 1.8 1.8h61.5c.4 0 .8-.1 1.1-.4l26.4-20.3h49.3Z" fill="#D7D7D7"/>
|
|
7
|
+
<path fillRule="evenodd" clipRule="evenodd" d="M138.4 59.7h-25.5L84.6 80.4H45.3V25.7a3 3 0 0 1 2.9-2.9h64.7l25.5 27.5v9.4Z" fill="#fff"/>
|
|
8
|
+
<path fillRule="evenodd" clipRule="evenodd" d="M112.9 21H48.2a4.7 4.7 0 0 0-4.7 4.7v54.7c0 1 .8 1.8 1.8 1.8h39.3c.4 0 .8-.1 1-.3l27.8-20.4h25c1 0 1.8-.8 1.8-1.8V50l-.1-.3-.2-.3v-.2l-.2-.1L114 21.6l-.1-.2-.4-.2h-.1l-.3-.1H113Zm-1.8 3.6H48.2c-.6 0-1.2.5-1.2 1.1v53h37l27.8-20.4c.3-.2.7-.3 1-.3h23.8v-6H113c-1 0-1.8-.8-1.8-1.7V24.6Zm-51 44.8h25.7a1.8 1.8 0 0 0 0-3.5H60.2a1.8 1.8 0 0 0 0 3.5Zm0-16h22a1.8 1.8 0 0 0 0-3.5H60a1.8 1.8 0 0 0 0 3.5Zm0-8.4h37.4a1.8 1.8 0 0 0 0-3.6H60.2a1.8 1.8 0 0 0 0 3.6Z" fill="#D7D7D7"/>
|
|
9
|
+
<path fillRule="evenodd" clipRule="evenodd" d="M4.8 84a3 3 0 0 1 2.9-3.6h76.5a3 3 0 0 0 1.7-.5l26.4-19.6a3 3 0 0 1 1.8-.6h64.7a3 3 0 0 1 3 3.5c-2.9 16-14.4 83-16.8 96.7a3 3 0 0 1-2.9 2.4H25.4a3 3 0 0 1-2.9-2.2L4.8 84Z" fill="#EDEDED"/>
|
|
10
|
+
<path fillRule="evenodd" clipRule="evenodd" d="m3.1 84.4 17.7 76a4.7 4.7 0 0 0 4.6 3.7h136.7c2.3 0 4.2-1.7 4.6-4l16.7-96.6a4.7 4.7 0 0 0-4.6-5.5h-64.7c-1 0-2 .3-2.8.9a1130716.6 1130716.6 0 0 1-27.1 19.8H7.7a4.7 4.7 0 0 0-4.6 5.7Zm3.5-.8a1.2 1.2 0 0 1 1.1-1.4h76.5c1 0 2-.3 2.8-1a724489.6 724489.6 0 0 1 27-19.7h64.8a1.2 1.2 0 0 1 1.2 1.4l-16.7 96.7c-.1.6-.6 1-1.2 1H25.4c-.5 0-1-.4-1.1-1l-17.7-76Z" fill="#D7D7D7"/>
|
|
11
|
+
<path fillRule="evenodd" clipRule="evenodd" d="M159.7 161a36.5 36.5 0 0 1-46.5-4 36.6 36.6 0 0 1 .4-51.8 36.6 36.6 0 0 1 51.7-.4 36.5 36.5 0 0 1 4 46.5l25 24.9c2.6 2.6 2.6 7 0 9.6a6.8 6.8 0 0 1-9.7 0l-25-24.9Z" fill="#fff"/>
|
|
12
|
+
<path fillRule="evenodd" clipRule="evenodd" d="m159.5 163.2 23.8 23.9a8.6 8.6 0 0 0 12.2 0 8.6 8.6 0 0 0 0-12.2L171.6 151a38.2 38.2 0 0 0-5-47.4 38.3 38.3 0 0 0-54.2.4 38.3 38.3 0 0 0-.4 54.2 38.2 38.2 0 0 0 47.5 5Zm1.4-3.5c-.6-.6-1.5-.7-2.2-.2a34.7 34.7 0 0 1-44.2-3.8 34.8 34.8 0 0 1 .4-49.2 34.8 34.8 0 0 1 49.2-.4c12 11.9 13.1 30.5 3.8 44.2-.5.7-.4 1.6.2 2.2l24.9 25c2 1.9 2 5.1 0 7a5 5 0 0 1-7.2 0L161 159.8Z" fill="#D7D7D7"/>
|
|
13
|
+
<path d="M163.5 130.8a24.4 24.4 0 0 0-24.2-24.6c-13.4 0-24.3 11-24.3 24.6a24.4 24.4 0 0 0 24.3 24.6c13.3 0 24.2-11 24.2-24.6Z" fill="#EDEDED"/>
|
|
14
|
+
<path fillRule="evenodd" clipRule="evenodd" d="M113.3 130.8a26.2 26.2 0 0 0 26 26.4c14.3 0 26-11.8 26-26.4a26.2 26.2 0 0 0-26-26.4c-14.4 0-26 11.8-26 26.4Zm3.5 0c0-12.6 10-22.8 22.5-22.8a22.7 22.7 0 0 1 22.4 22.8c0 12.6-10 22.9-22.4 22.9a22.7 22.7 0 0 1-22.5-22.9Z" fill="#D7D7D7"/>
|
|
15
|
+
<path opacity=".7" fillRule="evenodd" clipRule="evenodd" d="M117 121c.7-1.4 13.9 1.6 22.3 9.9 8.1 8 11.4 21.4 10.2 22-9.1 4.3-20.2 2.7-27.6-4.7-7.4-7.3-9-18.3-4.8-27.3Z" fill="#fff"/>
|
|
16
|
+
<path fillRule="evenodd" clipRule="evenodd" d="M120.9 112.5a26.2 26.2 0 0 0-.3 37 26.2 26.2 0 0 0 37-.2 26.2 26.2 0 0 0 .3-37 26.2 26.2 0 0 0-37 .2Zm2.5 2.5c9-9 23.3-9 32-.3a22.7 22.7 0 0 1-.2 32c-9 9-23.3 9.1-32 .3a22.7 22.7 0 0 1 .2-32Z" fill="#D7D7D7"/>
|
|
17
|
+
<path d="M140.2 142.1c1.4 0 2.4 1 2.4 2.4 0 1.3-1 2.3-2.4 2.3-1.3 0-2.3-1-2.3-2.3 0-1.3 1-2.4 2.3-2.4Zm.1-20.5V117a9.5 9.5 0 0 0-9.4 6.8v.2l4.5 1v.1l-4.6-1.1c-.3 1.2.5 2.5 1.8 2.8 1.2.3 2.5-.5 2.8-1.7l.2-.5.7-1.2c.7-.8 1.8-1.7 4-1.7Zm9.4 5.1a9.3 9.3 0 0 0-9.4-9.8v4.7c.6 0 1.8.2 2.9 1 .9.6 1.8 1.7 1.8 4.1 0 .5-.2 1-.7 1.6-.5.6-1.3 1.2-2.2 1.7a18.4 18.4 0 0 1-3.4 1.5h-.3c-1.2.4-2 1.8-1.6 3 .4 1.3 1.7 2 3 1.6l-.7-2.2-.4-1.4-.2-.6V131.6l.6 2.3.6 2.2h.2a11.6 11.6 0 0 0 1.3-.5c.9-.3 2-.8 3.2-1.5 1.2-.6 2.4-1.5 3.4-2.7a7 7 0 0 0 2-4.7Z" fill="#D7D7D7"/>
|
|
18
|
+
</svg>);
|
|
19
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { Hit } from "./results";
|
|
3
|
+
type Props = {
|
|
4
|
+
lang: string;
|
|
5
|
+
products: Hit[];
|
|
6
|
+
weekNumber: number | null;
|
|
7
|
+
loading: boolean;
|
|
8
|
+
sendPlausibleGoal: (path: string) => void;
|
|
9
|
+
otherResultsRef: React.RefObject<HTMLDivElement>;
|
|
10
|
+
isOtherResultsEmpty: boolean;
|
|
11
|
+
};
|
|
12
|
+
export default function Products({ lang, products, weekNumber, loading, sendPlausibleGoal, otherResultsRef, isOtherResultsEmpty, }: Props): React.JSX.Element;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import Image from "next/image";
|
|
3
|
+
import Link from "ublo/link";
|
|
4
|
+
import Loader from "dt-design-system/es/loader";
|
|
5
|
+
import Button from "dt-design-system/es/button";
|
|
6
|
+
import * as Icons from "dt-design-system/es/icons";
|
|
7
|
+
import * as Ripple from "dt-design-system/es/ripple";
|
|
8
|
+
import * as Utils from "./services/utils";
|
|
9
|
+
import message from "./services/messages";
|
|
10
|
+
import NoProduct from "./no-product";
|
|
11
|
+
import css from "./products.module.css";
|
|
12
|
+
const PLACEHOLDERS = [...new Array(5)];
|
|
13
|
+
export default function Products({ lang, products, weekNumber, loading, sendPlausibleGoal, otherResultsRef, isOtherResultsEmpty, }) {
|
|
14
|
+
const filteredProducts = Utils.filterProducts(products, weekNumber);
|
|
15
|
+
const noProduct = !loading && !filteredProducts.length;
|
|
16
|
+
const scrollToOtherResults = () => {
|
|
17
|
+
if (otherResultsRef.current) {
|
|
18
|
+
otherResultsRef.current.scrollIntoView({
|
|
19
|
+
behavior: "smooth",
|
|
20
|
+
block: "start",
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
const createRipple = (e) => {
|
|
25
|
+
Ripple.create(e);
|
|
26
|
+
};
|
|
27
|
+
return (<>
|
|
28
|
+
{noProduct && (<div className={css.noProduct}>
|
|
29
|
+
<NoProduct className={css.noProductIcon}/>
|
|
30
|
+
{message(lang, "noProducts")}
|
|
31
|
+
</div>)}
|
|
32
|
+
{loading &&
|
|
33
|
+
PLACEHOLDERS.map((_, i) => {
|
|
34
|
+
return (<div key={i} className={css.loaderContainer}>
|
|
35
|
+
<Loader className={css.loader} variant="overlay"/>
|
|
36
|
+
</div>);
|
|
37
|
+
})}
|
|
38
|
+
{!loading &&
|
|
39
|
+
filteredProducts.map((product) => {
|
|
40
|
+
const { id, pageTitle, title, parentTitle, image = "", imagePlaceholder, price, time, text, path, } = product.document;
|
|
41
|
+
const decodedPath = decodeURIComponent(path);
|
|
42
|
+
const productPageTitle = Utils.getHighlight("pageTitle", product.highlight) || pageTitle;
|
|
43
|
+
const productTitle = Utils.getHighlight("title", product.highlight) || title;
|
|
44
|
+
const productTime = Utils.getHighlight("time", product.highlight) || time;
|
|
45
|
+
const productText = Utils.getHighlight("text", product.highlight) || text;
|
|
46
|
+
const showPrice = price !== undefined && weekNumber !== null;
|
|
47
|
+
const imagePlaceholderStategy = imagePlaceholder ? "blur" : "empty";
|
|
48
|
+
return (<Link key={id} className={css.product} href={decodedPath} onClick={sendPlausibleGoal(decodedPath)} onMouseDown={createRipple}>
|
|
49
|
+
<Image className={css.productImage} src={image} alt={title} width={220} height={180} placeholder={imagePlaceholderStategy} blurDataURL={imagePlaceholder}/>
|
|
50
|
+
<div className={css.productContent}>
|
|
51
|
+
{parentTitle && (<div className={css.productParent} dangerouslySetInnerHTML={{ __html: parentTitle }}/>)}
|
|
52
|
+
<div className={css.productPageTitle} dangerouslySetInnerHTML={{ __html: productPageTitle }}/>
|
|
53
|
+
<div className={css.productTitle} dangerouslySetInnerHTML={{ __html: productTitle }}/>
|
|
54
|
+
<div className={css.productTime} dangerouslySetInnerHTML={{ __html: productTime }}/>
|
|
55
|
+
<div className={css.productText} dangerouslySetInnerHTML={{ __html: productText }}/>
|
|
56
|
+
{showPrice && (<div className={css.productPrice} dangerouslySetInnerHTML={{ __html: price }}/>)}
|
|
57
|
+
</div>
|
|
58
|
+
</Link>);
|
|
59
|
+
})}
|
|
60
|
+
{!noProduct && !isOtherResultsEmpty && (<div className={css.otherProducts}>
|
|
61
|
+
<Button className={css.otherProductsButton} onClick={scrollToOtherResults}>
|
|
62
|
+
{message(lang, "showOtherResults")}
|
|
63
|
+
<Icons.ArrowDown />
|
|
64
|
+
</Button>
|
|
65
|
+
</div>)}
|
|
66
|
+
</>);
|
|
67
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
type Document = {
|
|
3
|
+
id: string;
|
|
4
|
+
image?: string;
|
|
5
|
+
imagePlaceholder?: string;
|
|
6
|
+
lang: string;
|
|
7
|
+
pageTitle?: string;
|
|
8
|
+
parentTitle?: string;
|
|
9
|
+
path: string;
|
|
10
|
+
price?: string;
|
|
11
|
+
site: string;
|
|
12
|
+
text?: string;
|
|
13
|
+
time?: string;
|
|
14
|
+
title: string;
|
|
15
|
+
type: "page" | "product" | "information" | "faq";
|
|
16
|
+
weeks?: number[];
|
|
17
|
+
shortTitle?: string;
|
|
18
|
+
seoKeywords?: string[];
|
|
19
|
+
seoTitle?: string;
|
|
20
|
+
};
|
|
21
|
+
type Text = {
|
|
22
|
+
matched_tokens: string[];
|
|
23
|
+
snippet: string;
|
|
24
|
+
};
|
|
25
|
+
export type PurpleHighlight = {
|
|
26
|
+
text?: Text;
|
|
27
|
+
title?: Text;
|
|
28
|
+
};
|
|
29
|
+
type HighlightElement = {
|
|
30
|
+
field: string;
|
|
31
|
+
matched_tokens: string[];
|
|
32
|
+
snippet: string;
|
|
33
|
+
};
|
|
34
|
+
type TextMatchInfo = {
|
|
35
|
+
best_field_score: string;
|
|
36
|
+
best_field_weight: number;
|
|
37
|
+
fields_matched: number;
|
|
38
|
+
score: string;
|
|
39
|
+
tokens_matched: number;
|
|
40
|
+
};
|
|
41
|
+
export type Hit = {
|
|
42
|
+
document: Document;
|
|
43
|
+
highlight: PurpleHighlight;
|
|
44
|
+
highlights: HighlightElement[];
|
|
45
|
+
text_match: number;
|
|
46
|
+
text_match_info: TextMatchInfo;
|
|
47
|
+
};
|
|
48
|
+
type GroupedHit = {
|
|
49
|
+
group_key: string[];
|
|
50
|
+
hits: Hit[];
|
|
51
|
+
};
|
|
52
|
+
type RequestParams = {
|
|
53
|
+
collection_name: string;
|
|
54
|
+
per_page: number;
|
|
55
|
+
q: string;
|
|
56
|
+
};
|
|
57
|
+
type Props = {
|
|
58
|
+
lang: string;
|
|
59
|
+
text: string;
|
|
60
|
+
results: {
|
|
61
|
+
facet_counts?: any[];
|
|
62
|
+
found?: number;
|
|
63
|
+
grouped_hits?: GroupedHit[];
|
|
64
|
+
out_of?: number;
|
|
65
|
+
page?: number;
|
|
66
|
+
request_params?: RequestParams;
|
|
67
|
+
search_cutoff?: boolean;
|
|
68
|
+
search_time_ms?: number;
|
|
69
|
+
};
|
|
70
|
+
weekNumber: number | null;
|
|
71
|
+
openPeriodPicker: () => void;
|
|
72
|
+
sendPlausibleGoal: (path: string) => void;
|
|
73
|
+
loading: boolean;
|
|
74
|
+
};
|
|
75
|
+
export default function Results({ lang, text, results, weekNumber, openPeriodPicker, loading, sendPlausibleGoal, }: Props): React.JSX.Element;
|
|
76
|
+
export {};
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import getConfig from "next/config";
|
|
3
|
+
import Button from "dt-design-system/es/button";
|
|
4
|
+
import * as Icons from "dt-design-system/es/icons";
|
|
5
|
+
import Links from "./links";
|
|
6
|
+
import Products from "./products";
|
|
7
|
+
import * as Dates from "./services/dates";
|
|
8
|
+
import message from "./services/messages";
|
|
9
|
+
import css from "./results.module.css";
|
|
10
|
+
const { publicRuntimeConfig } = getConfig();
|
|
11
|
+
const { season } = publicRuntimeConfig;
|
|
12
|
+
export default function Results({ lang, text, results, weekNumber, openPeriodPicker, loading, sendPlausibleGoal, }) {
|
|
13
|
+
const ref = React.useRef(null);
|
|
14
|
+
const { grouped_hits: groupedHits = [] } = results || {};
|
|
15
|
+
const flattenedHits = groupedHits.reduce((acc, group) => {
|
|
16
|
+
return [...acc, ...group.hits];
|
|
17
|
+
}, []);
|
|
18
|
+
const sortedHits = flattenedHits.reduce((acc, hit) => {
|
|
19
|
+
const { type } = hit.document;
|
|
20
|
+
return Object.assign(Object.assign({}, acc), { [type]: [...acc[type], hit] });
|
|
21
|
+
}, { page: [], product: [], information: [], faq: [], instructor: [] });
|
|
22
|
+
const { page: pages, product: products, information, faq: faqs, instructor: instructors, } = sortedHits;
|
|
23
|
+
const filteredFaqs = faqs.reduce((acc, faq) => {
|
|
24
|
+
const isAlreadyInAcc = acc.some((item) => {
|
|
25
|
+
const hasSameTitle = item.document.title === faq.document.title;
|
|
26
|
+
const hasSameParentTitle = item.document.parentTitle === faq.document.parentTitle;
|
|
27
|
+
return hasSameTitle && hasSameParentTitle;
|
|
28
|
+
});
|
|
29
|
+
if (isAlreadyInAcc)
|
|
30
|
+
return acc;
|
|
31
|
+
return [...acc, faq];
|
|
32
|
+
}, []);
|
|
33
|
+
const weekSystemEnabled = Boolean(season);
|
|
34
|
+
const showProductsTitle = weekNumber !== null;
|
|
35
|
+
const isOtherResultsEmpty = !(pages.length ||
|
|
36
|
+
instructors.length ||
|
|
37
|
+
filteredFaqs.length ||
|
|
38
|
+
information.length);
|
|
39
|
+
return (<div className={css.results}>
|
|
40
|
+
{(loading || text.length > 0) && (<div className={css.inner}>
|
|
41
|
+
<div ref={ref} className={css.left}>
|
|
42
|
+
<Links linksTitle={message(lang, "pages")} icon="FileText" links={pages} loading={loading} sendPlausibleGoal={sendPlausibleGoal}/>
|
|
43
|
+
<Links linksTitle={message(lang, "instructors")} icon="User" links={instructors} loading={loading} sendPlausibleGoal={sendPlausibleGoal}/>
|
|
44
|
+
<Links linksTitle={message(lang, "faqs")} icon="Question" links={filteredFaqs} loading={loading} sendPlausibleGoal={sendPlausibleGoal}/>
|
|
45
|
+
<Links linksTitle={message(lang, "information")} icon="Info" links={information} loading={loading} sendPlausibleGoal={sendPlausibleGoal} pageTitleAsTitle/>
|
|
46
|
+
</div>
|
|
47
|
+
<div className={css.right}>
|
|
48
|
+
{!loading && products.length > 0 && weekSystemEnabled && (<>
|
|
49
|
+
{showProductsTitle ? (<div className={css.resultsWithWeekTitle}>
|
|
50
|
+
{message(lang, "productTitleWithWeek")}
|
|
51
|
+
{Dates.weekToLongDate(weekNumber, season.end, season.forceSeasonSwitch)}
|
|
52
|
+
<Button onClick={openPeriodPicker}>
|
|
53
|
+
<Icons.Calendar />
|
|
54
|
+
{message(lang, "updateWeek")}
|
|
55
|
+
</Button>
|
|
56
|
+
</div>) : (<div className={css.resultsWithoutWeekTitle}>
|
|
57
|
+
{message(lang, "productTitleWithoutWeek")}
|
|
58
|
+
<Button onClick={openPeriodPicker}>
|
|
59
|
+
<Icons.Calendar />
|
|
60
|
+
{message(lang, "chooseWeek")}
|
|
61
|
+
</Button>
|
|
62
|
+
</div>)}
|
|
63
|
+
</>)}
|
|
64
|
+
<Products lang={lang} products={products} weekNumber={weekNumber} loading={loading} sendPlausibleGoal={sendPlausibleGoal} otherResultsRef={ref} isOtherResultsEmpty={isOtherResultsEmpty}/>
|
|
65
|
+
</div>
|
|
66
|
+
</div>)}
|
|
67
|
+
</div>);
|
|
68
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function fetchResults(site: string, lang: string, query: string, groupLimit?: number, queryBy?: string, queryByWeights?: string): Promise<any>;
|
|
@@ -1,15 +1,13 @@
|
|
|
1
|
+
// import * as Fetcher from "ublo-lib/es/common/utils/fetcher";
|
|
1
2
|
import * as Fetcher from "../../../utils/fetcher";
|
|
2
3
|
const api = "https://search.ublo.app/api";
|
|
3
4
|
export function fetchResults(site, lang, query, groupLimit = 8, queryBy = "title,text,pageTitle,seoKeywords,parentTitle,seoTitle", queryByWeights) {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
lang
|
|
14
|
-
});
|
|
15
|
-
}
|
|
5
|
+
const endpoint = `${api}/search`;
|
|
6
|
+
return Fetcher.post(endpoint, {
|
|
7
|
+
q: query,
|
|
8
|
+
query_by: queryBy,
|
|
9
|
+
query_by_weights: queryByWeights,
|
|
10
|
+
group_limit: groupLimit,
|
|
11
|
+
per_page: 30,
|
|
12
|
+
}, { site, lang });
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export function weekToLongDate(week: any, endWeek: any, forceSeasonSwitch: any): string;
|
|
@@ -1,49 +1,54 @@
|
|
|
1
1
|
function padStart(value, count, pad) {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
let str = String(value);
|
|
3
|
+
while (str.length < count) {
|
|
4
|
+
str = pad + str;
|
|
5
|
+
}
|
|
6
|
+
return str;
|
|
7
7
|
}
|
|
8
8
|
function createDate(...args) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
const ref = new Date(...args);
|
|
10
|
+
const yy = ref.getFullYear();
|
|
11
|
+
const mm = padStart(ref.getMonth() + 1, 2, 0);
|
|
12
|
+
const dd = padStart(ref.getDate(), 2, 0);
|
|
13
|
+
const str = `${yy}-${mm}-${dd}`;
|
|
14
|
+
return new Date(str);
|
|
15
15
|
}
|
|
16
16
|
function getPrevSaturday(date) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
17
|
+
const clone = createDate(date);
|
|
18
|
+
const day = 1 + clone.getDay();
|
|
19
|
+
const prevSaturday = clone.getDate() - (day % 7);
|
|
20
|
+
clone.setDate(prevSaturday);
|
|
21
|
+
return clone;
|
|
22
22
|
}
|
|
23
23
|
function addDays(date, days) {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
const clone = createDate(date);
|
|
25
|
+
clone.setDate(clone.getDate() + days);
|
|
26
|
+
return clone;
|
|
27
27
|
}
|
|
28
|
+
// on calcule d'abord l'année du précédent Noël, et la date de la semaine 0 de ce Noël.
|
|
29
|
+
// on regarde la fin de saison par rapport à cette date.
|
|
30
|
+
// on considère cette date, ou celle du Noël suivant, si la date now est avant ou après la date de fin de saison
|
|
28
31
|
function christmasWeek(endWeek, forceSeasonSwitch) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
32
|
+
const now = createDate();
|
|
33
|
+
const year = now.getFullYear();
|
|
34
|
+
const month = now.getMonth();
|
|
35
|
+
const date = now.getDate();
|
|
36
|
+
const isAfterChristmas = month === 11 && date >= 25;
|
|
37
|
+
const lastChristmasYear = isAfterChristmas || (!isAfterChristmas && forceSeasonSwitch)
|
|
38
|
+
? year
|
|
39
|
+
: year - 1;
|
|
40
|
+
const lastChristmas = createDate(lastChristmasYear, 11, 25);
|
|
41
|
+
const nextChristmas = createDate(lastChristmasYear + 1, 11, 25);
|
|
42
|
+
const dateSeasonEnd = addDays(getPrevSaturday(lastChristmas), endWeek * 7);
|
|
43
|
+
return getPrevSaturday(now <= dateSeasonEnd ? lastChristmas : nextChristmas);
|
|
39
44
|
}
|
|
40
45
|
function weekToDate(week, endWeek, forceSeasonSwitch) {
|
|
41
|
-
|
|
46
|
+
return addDays(christmasWeek(endWeek, forceSeasonSwitch), week * 7);
|
|
42
47
|
}
|
|
43
48
|
export function weekToLongDate(week, endWeek, forceSeasonSwitch) {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
49
|
+
const date = weekToDate(week, endWeek, forceSeasonSwitch);
|
|
50
|
+
const dd = padStart(date.getDate(), 2, 0);
|
|
51
|
+
const mm = padStart(date.getMonth() + 1, 2, 0);
|
|
52
|
+
const yy = date.getFullYear();
|
|
53
|
+
return `${dd}/${mm}/${yy}`;
|
|
54
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function message(lang: string, id: string): any;
|
|
@@ -1,39 +1,40 @@
|
|
|
1
1
|
export function getHighlight(property, highlight, withExtractQuotes = false) {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
2
|
+
var _a;
|
|
3
|
+
if (!((_a = highlight[property]) === null || _a === void 0 ? void 0 : _a.snippet))
|
|
4
|
+
return;
|
|
5
|
+
let snippet = highlight[property].snippet;
|
|
6
|
+
if (!withExtractQuotes)
|
|
7
|
+
return snippet;
|
|
8
|
+
const startsWithMaj = /[A-Z]/.test(snippet);
|
|
9
|
+
const endsWithDot = snippet[snippet.length - 1] === ".";
|
|
10
|
+
if (!startsWithMaj) {
|
|
11
|
+
snippet = `...${snippet}`;
|
|
12
|
+
}
|
|
13
|
+
if (!endsWithDot) {
|
|
14
|
+
snippet = `${snippet}...`;
|
|
15
|
+
}
|
|
16
|
+
return snippet;
|
|
14
17
|
}
|
|
15
18
|
export function filterProducts(products, weekNumber) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
});
|
|
32
|
-
if (isAlreadyInAcc) return acc;
|
|
33
|
-
return [...acc, product];
|
|
34
|
-
}, []);
|
|
19
|
+
if (weekNumber !== null) {
|
|
20
|
+
return products.filter((product) => {
|
|
21
|
+
const { weeks = [] } = product.document;
|
|
22
|
+
return weeks.length === 0 || weeks.includes(weekNumber);
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
return products.reduce((acc, product) => {
|
|
26
|
+
const { image, pageTitle } = product.document;
|
|
27
|
+
const isAlreadyInAcc = acc.some((item) => {
|
|
28
|
+
return (normalizeImage(item.document.image) === normalizeImage(image) &&
|
|
29
|
+
item.document.pageTitle === pageTitle);
|
|
30
|
+
});
|
|
31
|
+
if (isAlreadyInAcc)
|
|
32
|
+
return acc;
|
|
33
|
+
return [...acc, product];
|
|
34
|
+
}, []);
|
|
35
35
|
}
|
|
36
36
|
function normalizeImage(image) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
37
|
+
if (!image)
|
|
38
|
+
return "";
|
|
39
|
+
return image.replace(/(-[0-9]+)?.(jpg|jpeg|png|gif)/, "");
|
|
40
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import Select from "dt-design-system/es/select";
|
|
3
|
+
export default function FacetSelector({ facet, setFacet, setPreset }) {
|
|
4
|
+
const updateFacet = (newValue) => {
|
|
5
|
+
setPreset((current) => {
|
|
6
|
+
if (!newValue) {
|
|
7
|
+
return null;
|
|
8
|
+
}
|
|
9
|
+
else {
|
|
10
|
+
return Object.assign(Object.assign({}, current), { options: Object.assign(Object.assign({}, ((current === null || current === void 0 ? void 0 : current.options) || {})), { facet: Number(newValue) }) });
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
setFacet(newValue);
|
|
14
|
+
};
|
|
15
|
+
return (<Select value={facet} onValueChange={updateFacet} label="Facette" options={[
|
|
16
|
+
{ label: "Sélectionnez une facette pour continuer", value: "" },
|
|
17
|
+
{ label: "Hiver", value: "0" },
|
|
18
|
+
{ label: "Eté", value: "1" },
|
|
19
|
+
]}/>);
|
|
20
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import Button from "dt-design-system/es/button";
|
|
3
|
+
import Tooltip from "dt-design-system/es/tooltip";
|
|
4
|
+
import * as Icons from "dt-design-system/es/icons";
|
|
5
|
+
import css from "./form.module.css";
|
|
6
|
+
export default function Form({ title, width, preset, buttonsActions, children, }) {
|
|
7
|
+
const { testPreset, cancelPreset, confirmPreset } = buttonsActions;
|
|
8
|
+
return (<div className={css.form} style={{ width }}>
|
|
9
|
+
<div className={css.title}>
|
|
10
|
+
<Icons.Tune />
|
|
11
|
+
{title}
|
|
12
|
+
</div>
|
|
13
|
+
<div className={css.inner}>{children}</div>
|
|
14
|
+
<div className={css.buttons}>
|
|
15
|
+
<Tooltip content="Tester dans le widget MseM">
|
|
16
|
+
<Button variant="secondary" disabled={!(preset === null || preset === void 0 ? void 0 : preset.widget)} className={css.testButton} onClick={testPreset}>
|
|
17
|
+
<Icons.OpenInBrowser />
|
|
18
|
+
</Button>
|
|
19
|
+
</Tooltip>
|
|
20
|
+
<Button type="submit" variant="secondary" className={css.button} onClick={cancelPreset}>
|
|
21
|
+
Annuler
|
|
22
|
+
</Button>
|
|
23
|
+
<Button type="submit" variant="primary" className={css.button} onClick={confirmPreset} disabled={!confirmPreset}>
|
|
24
|
+
Confirmer
|
|
25
|
+
</Button>
|
|
26
|
+
</div>
|
|
27
|
+
</div>);
|
|
28
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
type Props = {
|
|
3
|
+
stay: {
|
|
4
|
+
from: string;
|
|
5
|
+
to: string;
|
|
6
|
+
};
|
|
7
|
+
setStay: (stay: {
|
|
8
|
+
from: string;
|
|
9
|
+
to: string;
|
|
10
|
+
}) => void;
|
|
11
|
+
setPreset: (preset: Record<string, any>) => void;
|
|
12
|
+
};
|
|
13
|
+
export default function StayPicker({ stay, setStay }: Props): React.JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import Input from "dt-design-system/es/input";
|
|
3
|
+
import css from "./stay-picker.module.css";
|
|
4
|
+
export default function StayPicker({ stay, setStay }) {
|
|
5
|
+
const updateStay = (key) => (value) => {
|
|
6
|
+
const isFrom = key === "from";
|
|
7
|
+
const isTo = key === "to";
|
|
8
|
+
if (isFrom) {
|
|
9
|
+
if (!stay.to && !value) {
|
|
10
|
+
window.sessionStorage.removeItem("stay");
|
|
11
|
+
return setStay({ from: "", to: "" });
|
|
12
|
+
}
|
|
13
|
+
const from = new Date(value);
|
|
14
|
+
const to = new Date(stay.to);
|
|
15
|
+
if (from > to || !stay.to) {
|
|
16
|
+
return setStay({ from: value, to: value });
|
|
17
|
+
}
|
|
18
|
+
return setStay(Object.assign(Object.assign({}, stay), { [key]: value }));
|
|
19
|
+
}
|
|
20
|
+
if (isTo) {
|
|
21
|
+
if (!stay.from && !value) {
|
|
22
|
+
window.sessionStorage.removeItem("stay");
|
|
23
|
+
return setStay({ from: "", to: "" });
|
|
24
|
+
}
|
|
25
|
+
const from = new Date(stay.from);
|
|
26
|
+
const to = new Date(value);
|
|
27
|
+
if (from > to || !stay.from) {
|
|
28
|
+
return setStay({ to: value, from: value });
|
|
29
|
+
}
|
|
30
|
+
return setStay(Object.assign(Object.assign({}, stay), { [key]: value }));
|
|
31
|
+
}
|
|
32
|
+
setStay(Object.assign(Object.assign({}, stay), { [key]: value }));
|
|
33
|
+
};
|
|
34
|
+
return (<div className={css.picker}>
|
|
35
|
+
<Input type="date" label="Date de début" value={stay.from} onValueChange={updateStay("from")}/>
|
|
36
|
+
<Input type="date" label="Date de fin" value={stay.to} onValueChange={updateStay("to")}/>
|
|
37
|
+
</div>);
|
|
38
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { Offer } from "../services/offers";
|
|
3
|
+
type Props = {
|
|
4
|
+
item: Offer;
|
|
5
|
+
preset: Record<string, any> | null;
|
|
6
|
+
updatePreset: (item: Offer, subPreset?: Offer) => void;
|
|
7
|
+
removePreset: () => void;
|
|
8
|
+
setShowPresetDialog: React.Dispatch<React.SetStateAction<boolean>>;
|
|
9
|
+
};
|
|
10
|
+
export default function WidgetListItem({ item, preset, updatePreset, removePreset, setShowPresetDialog, }: Props): React.JSX.Element;
|
|
11
|
+
export {};
|