@geotrekce/geotrek-rando-widget 0.7.0 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/geotrek-rando-widget.cjs.js +1 -1
- package/dist/cjs/geotrek-rando-widget.cjs.js.br +0 -0
- package/dist/cjs/geotrek-rando-widget.cjs.js.gz +0 -0
- package/dist/cjs/grw-app.cjs.entry.js +5 -3
- package/dist/cjs/grw-app.cjs.entry.js.br +0 -0
- package/dist/cjs/grw-app.cjs.entry.js.gz +0 -0
- package/dist/cjs/grw-app.cjs.entry.js.map +1 -1
- package/dist/cjs/grw-common-button_21.cjs.entry.js +1 -1
- package/dist/cjs/grw-common-button_21.cjs.entry.js.br +0 -0
- package/dist/cjs/grw-common-button_21.cjs.entry.js.gz +0 -0
- package/dist/cjs/grw-common-button_21.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js.br +0 -0
- package/dist/cjs/loader.cjs.js.gz +0 -0
- package/dist/collection/components/grw-app/grw-app.css +1 -1
- package/dist/collection/components/grw-app/grw-app.css.br +0 -0
- package/dist/collection/components/grw-app/grw-app.css.gz +0 -0
- package/dist/collection/components/grw-app/grw-app.js +22 -2
- package/dist/collection/components/grw-app/grw-app.js.br +0 -0
- package/dist/collection/components/grw-app/grw-app.js.gz +0 -0
- package/dist/collection/components/grw-app/grw-app.js.map +1 -1
- package/dist/collection/components/grw-filters/grw-filters.css +1 -1
- package/dist/collection/components/grw-filters/grw-filters.css.br +0 -0
- package/dist/collection/components/grw-filters/grw-filters.css.gz +0 -0
- package/dist/esm/geotrek-rando-widget.js +1 -1
- package/dist/esm/geotrek-rando-widget.js.br +0 -0
- package/dist/esm/geotrek-rando-widget.js.gz +0 -0
- package/dist/esm/grw-app.entry.js +5 -3
- package/dist/esm/grw-app.entry.js.br +0 -0
- package/dist/esm/grw-app.entry.js.gz +0 -0
- package/dist/esm/grw-app.entry.js.map +1 -1
- package/dist/esm/grw-common-button_21.entry.js +1 -1
- package/dist/esm/grw-common-button_21.entry.js.br +0 -0
- package/dist/esm/grw-common-button_21.entry.js.gz +0 -0
- package/dist/esm/grw-common-button_21.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/loader.js.br +0 -0
- package/dist/esm/loader.js.gz +0 -0
- package/dist/esm-es5/geotrek-rando-widget.js +1 -1
- package/dist/esm-es5/geotrek-rando-widget.js.br +0 -0
- package/dist/esm-es5/geotrek-rando-widget.js.gz +0 -0
- package/dist/esm-es5/geotrek-rando-widget.js.map +1 -1
- package/dist/esm-es5/grw-app.entry.js +1 -1
- package/dist/esm-es5/grw-app.entry.js.br +0 -0
- package/dist/esm-es5/grw-app.entry.js.gz +0 -0
- package/dist/esm-es5/grw-app.entry.js.map +1 -1
- package/dist/esm-es5/grw-common-button_21.entry.js +1 -1
- package/dist/esm-es5/grw-common-button_21.entry.js.br +0 -0
- package/dist/esm-es5/grw-common-button_21.entry.js.gz +0 -0
- package/dist/esm-es5/grw-common-button_21.entry.js.map +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/loader.js.br +0 -0
- package/dist/esm-es5/loader.js.gz +0 -0
- package/dist/esm-es5/loader.js.map +1 -1
- package/dist/geotrek-rando-widget/geotrek-rando-widget.css +1 -1
- package/dist/geotrek-rando-widget/geotrek-rando-widget.css.br +0 -0
- package/dist/geotrek-rando-widget/geotrek-rando-widget.css.gz +0 -0
- package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js +1 -1
- package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.br +0 -0
- package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.gz +0 -0
- package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.map +1 -1
- package/dist/geotrek-rando-widget/p-83f9c2c2.entry.js +2 -0
- package/dist/geotrek-rando-widget/p-83f9c2c2.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-83f9c2c2.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-83f9c2c2.entry.js.map +1 -0
- package/dist/geotrek-rando-widget/p-b02ae30d.system.js +1 -1
- package/dist/geotrek-rando-widget/p-b02ae30d.system.js.br +0 -0
- package/dist/geotrek-rando-widget/p-b02ae30d.system.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-b02ae30d.system.js.map +1 -1
- package/dist/geotrek-rando-widget/{p-e2a73eac.entry.js → p-c171e0d7.entry.js} +2 -2
- package/dist/geotrek-rando-widget/p-c171e0d7.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-c171e0d7.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-c171e0d7.entry.js.map +1 -0
- package/dist/geotrek-rando-widget/p-ced23fd3.system.entry.js +2 -0
- package/dist/geotrek-rando-widget/p-ced23fd3.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-ced23fd3.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-ced23fd3.system.entry.js.map +1 -0
- package/dist/geotrek-rando-widget/{p-05f3277d.system.entry.js → p-ed66cd9d.system.entry.js} +2 -2
- package/dist/geotrek-rando-widget/p-ed66cd9d.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-ed66cd9d.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-ed66cd9d.system.entry.js.map +1 -0
- package/dist/types/components/grw-app/grw-app.d.ts +1 -0
- package/dist/types/components.d.ts +2 -0
- package/package.json +1 -1
- package/dist/geotrek-rando-widget/p-05f3277d.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-05f3277d.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-05f3277d.system.entry.js.map +0 -1
- package/dist/geotrek-rando-widget/p-ae17f2a9.entry.js +0 -2
- package/dist/geotrek-rando-widget/p-ae17f2a9.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-ae17f2a9.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-ae17f2a9.entry.js.map +0 -1
- package/dist/geotrek-rando-widget/p-e2a73eac.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-e2a73eac.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-e2a73eac.entry.js.map +0 -1
- package/dist/geotrek-rando-widget/p-f2af961a.system.entry.js +0 -2
- package/dist/geotrek-rando-widget/p-f2af961a.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-f2af961a.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-f2af961a.system.entry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["grwAppCss","GrwApp","this","largeViewSize","handlePopStateBind","handlePopState","bind","prototype","onTrekCardPress","event","currentTouristicContentId","showTouristicContent","state","currentTouristicContent","currentTouristicEventId","showTouristicEvent","currentTouristicEvent","parentTrek","parentTrekId","currentTrekSteps","currentTrekId","currentTrek","detail","mode","showTrek","showTrekMap","url","URL","window","location","toString","searchParams","set","history","pushState","onParentTrekPress","delete","onTouristicContentCardPress","showTouristicContentMap","onTouristiceEventCardPress","showTouristicEventMap","onWindowResize","handleView","onCenterOnMap","isLargeView","onTrekDownloadConfirm","showLoaderModal","showSuccessModal","showDeleteSuccessMessage","showDeletingMessage","showConfirmDeleteModal","showOfflineModal","showConfirmModal","onTrekDownloadedSuccessConfirm","onTrekDeleteConfirm","onTrekDeleteSuccessConfirm","watchPropHandler","dispatchEvent","Event","componentWillLoad","treks","touristicContents","touristicEvents","trekParam","get","touristicContentParam","touristicEventParam","replaceState","isInitialHistoryWithDetails","Number","componentDidLoad","addEventListener","onDetailsClose","appElement","getBoundingClientRect","width","showHomeMap","handleFilters","showFilters","handleBackButton","back","handleShowMap","getMapVisibilityIconButton","mapIconButton","getMapVisibilityLabelButton","mapLabelButton","language","translate","showDetails","showRoute","showMap","showList","reload","disconnectedCallback","reset","removeEventListener","handleOkDeleteModal","trekDeletePress","emit","handleOkDownloadModal","trekDownloadPress","handleCancelModal","handleOffline","offlineTreks","currentTreks","handleTreksFiltersAndSearch","render","_this","h","Host","style","fontFamily","colorPrimaryApp","colorOnPrimary","colorSurface","colorOnSurface","colorSurfaceVariant","colorOnSurfaceVariant","colorPrimaryContainer","colorOnPrimaryContainer","colorSecondaryContainer","colorOnSecondaryContainer","colorBackground","colorSurfaceContainerHigh","colorSurfaceContainerLow","fabBackgroundColor","fabColor","colorSensitiveArea","appWidth","appHeight","enableOffline","languages","split","length","rounded","currentTouristicContents","currentTouristicEvents","class","exportparts","api","portals","inBbox","cities","districts","structures","themes","routes","practices","networkError","concat","Fragment","action","icon","name","filter","part","onClick","display","position","visibility","zIndex","weather","emergencyNumber","defaultBackgroundLayerUrl","urlLayer","map","index","defaultBackgroundLayerAttribution","attributionLayer","globalTilesMinZoomOffline","globalTilesMaxZoomOffline","trekTilesMinZoomOffline","trekTilesMaxZoomOffline","center","zoom","nameLayer","colorTrekLine","colorPoiIcon","useGradient"],"sources":["src/components/grw-app/grw-app.scss?tag=grw-app","src/components/grw-app/grw-app.tsx"],"sourcesContent":["grw-app {\n display: block;\n position: relative;\n width: var(--app-width);\n height: var(--app-height);\n overflow: hidden;\n max-width: 100dvw;\n max-height: 100dvh;\n}\n\n.grw-app-container {\n position: relative;\n background-color: var(--color-background);\n width: 100%;\n height: 100%;\n overflow: hidden;\n}\n\n.grw-languages-container {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n margin: 16px 16px 0px 0px;\n}\n\n.grw-header-container,\n.grw-large-view-header-container {\n height: var(--header-height);\n .grw-arrow-back-container {\n display: flex;\n align-items: center;\n height: 100%;\n margin: 0px 16px;\n .grw-arrow-back-icon {\n cursor: pointer;\n -webkit-tap-highlight-color: transparent;\n color: var(--color-on-surface);\n border: none;\n background-color: var(--color-background);\n border-radius: var(--border-radius, 50%);\n height: 48px;\n width: 48px;\n padding: 0px;\n text-align: left;\n }\n }\n}\n\n.grw-handle-search-filters-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 0px 16px;\n height: 64px;\n\n .grw-handle-search-container {\n width: calc(50% + 48px);\n max-width: 220px;\n }\n .grw-handle-filters-container {\n margin-left: 16px;\n }\n}\n\n.grw-header-detail {\n height: 64px;\n}\n\n.grw-large-view-header-container {\n .grw-handle-search-filters-container {\n justify-content: flex-start;\n }\n}\n\n.grw-init-loader-container,\n.grw-loader-container,\n.grw-large-view-loader-container {\n position: absolute;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n background-color: var(--color-background);\n}\n\n.grw-content-container {\n position: relative;\n display: flex;\n}\n\n.grw-content-treks {\n height: calc(100% - var(--header-height) - var(--header-with-segment) - var(--header-with-languages));\n}\n\n.grw-content-trek {\n height: 100%;\n}\n\n.grw-large-view-app-treks-list-container,\n.grw-large-view-app-trek-detail-container,\n.grw-large-view-app-touristic-content-detail-container,\n.grw-large-view-app-touristic-event-detail-container,\n.grw-large-view-app-treks-list-container,\n.grw-large-view-app-trek-detail-container {\n display: flex;\n flex-direction: column;\n max-width: 100%;\n height: 100%;\n}\n\n.grw-app-map-container,\n.grw-large-view-app-map-container {\n width: 100%;\n height: 100%;\n}\n\n.grw-map-visibility-button-container {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n position: absolute;\n bottom: 24px;\n z-index: 4;\n}\n\n.grw-init-loader-container,\n.grw-loader-container {\n width: 100%;\n}\n\n.grw-app-treks-list-container,\n.grw-app-trek-detail-container,\n.grw-app-touristic-content-detail-container,\n.grw-app-touristic-event-detail-container {\n width: 100%;\n}\n\ngrw-treks-list,\ngrw-touristic-contents-list {\n max-height: calc(100vh - var(--header-height));\n}\n\ngrw-trek-detail {\n position: relative;\n max-height: calc(100vh - 64px - 48px);\n}\n\ngrw-touristic-content-detail,\ngrw-touristic-event-detail {\n position: relative;\n max-height: calc(100vh - 64px);\n}\n\n.grw-app-map-container {\n width: 100%;\n position: absolute;\n}\n\n.grw-large-view-loader-container {\n width: 50%;\n}\n\n.grw-large-view-app-treks-list-container,\n.grw-large-view-app-trek-detail-container,\n.grw-large-view-app-touristic-content-detail-container,\n.grw-large-view-app-touristic-event-detail-container {\n width: 50%;\n}\n\n.grw-large-view-app-map-container {\n position: relative;\n width: 50%;\n}\n\n.grw-error-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n margin-top: 16px;\n font-family: var(--font-family);\n font-size: 16px;\n grw-common-button {\n margin-top: 16px;\n }\n}\n\n.modal-container {\n z-index: 40000;\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: var(--font-family);\n top: -64px;\n left: 0px;\n width: 100%;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.6);\n\n .modal-content-container {\n display: flex;\n justify-content: center;\n flex-direction: column;\n width: 380px;\n height: 120px;\n padding: 16px;\n margin: 0px 16px;\n background-color: var(--color-background);\n border-radius: var(--border-radius, 8px);\n }\n\n .modal-message-container {\n display: flex;\n align-items: center;\n justify-content: center;\n\n .modal-loader {\n width: 16px;\n height: 16px;\n border: 3px solid var(--color-primary-container);\n border-bottom-color: var(--color-on-primary-container);\n border-radius: 50%;\n display: inline-block;\n box-sizing: border-box;\n animation: rotation 1s linear infinite;\n margin-right: 16px;\n }\n\n @keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n }\n\n .modal-buttons-container,\n .modal-button-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-top: 16px;\n .modal-button {\n cursor: pointer;\n user-select: none;\n font-size: 14px;\n font-weight: 500;\n height: 32px;\n box-shadow: var(--elevation-0);\n border: none;\n -webkit-tap-highlight-color: transparent;\n line-height: 20px;\n color: var(--color-on-primary-container);\n background-color: transparent;\n font-family: var(--font-family);\n }\n }\n .modal-button-container {\n justify-content: flex-end;\n }\n}\n\n.grw-offline-container {\n display: flex;\n align-items: center;\n margin: 0px 0px 0px 16px;\n height: 48px;\n .grw-offline-label {\n display: flex;\n }\n grw-switch {\n margin-top: -10px;\n }\n}\n","import { Component, Host, h, Listen, State, Prop, Element, Watch, Event, EventEmitter, Fragment } from '@stencil/core';\nimport { translate } from 'i18n/i18n';\nimport state, { reset } from 'store/store';\nimport { handleTreksFiltersAndSearch } from 'utils/utils';\n\n@Component({\n tag: 'grw-app',\n styleUrls: ['grw-app.scss'],\n shadow: false,\n})\nexport class GrwApp {\n @Element() appElement: HTMLElement;\n @State() showTrek = false;\n @State() showTouristicContent = false;\n @State() showTouristicEvent = false;\n @State() showHomeMap = false;\n @State() showTrekMap = false;\n @State() showTouristicContentMap = false;\n @State() showTouristicEventMap = false;\n @State() showFilters = false;\n @State() isLargeView = false;\n @State() currentTrekId: number;\n @State() currentTouristicContentId: number;\n @State() currentTouristicEventId: number;\n @Prop() appWidth: string = '100%';\n @Prop() appHeight: string = '100vh';\n @Prop() api: string;\n @Prop() languages = 'fr';\n @Prop() inBbox: string;\n @Prop() cities: string;\n @Prop() districts: string;\n @Prop() structures: string;\n @Prop() themes: string;\n @Prop() portals: string;\n @Prop() routes: string;\n @Prop() practices: string;\n @Prop() center: string;\n @Prop() zoom: number;\n @Prop() nameLayer: string;\n @Prop() urlLayer: string;\n @Prop() attributionLayer: string;\n @Prop() weather = false;\n @Prop() emergencyNumber: number;\n\n @Prop() fontFamily = 'Roboto';\n @Prop() colorPrimaryApp = '#6750a4';\n @Prop() colorOnPrimary = '#ffffff';\n @Prop() colorSurface = '#1c1b1f';\n @Prop() colorOnSurface = '#49454e';\n @Prop() colorSurfaceVariant = '#fef7ff';\n @Prop() colorOnSurfaceVariant = '#1c1b1f';\n @Prop() colorPrimaryContainer = '#eaddff';\n @Prop() colorOnPrimaryContainer = '#21005e';\n @Prop() colorSecondaryContainer = '#e8def8';\n @Prop() colorOnSecondaryContainer = '#1d192b';\n @Prop() colorBackground = '#fef7ff';\n @Prop() colorSurfaceContainerHigh = '#ece6f0';\n @Prop() colorSurfaceContainerLow = '#f7f2fa';\n @Prop() fabBackgroundColor = '#eaddff';\n @Prop() fabColor = '#21005d';\n @Prop() rounded = true;\n\n @Prop() colorTrekLine = '#6b0030';\n @Prop() colorSensitiveArea = '#4974a5';\n @Prop() colorPoiIcon = '#974c6e';\n @Prop() useGradient = false;\n\n @Prop() treks = true;\n @Prop() touristicContents = false;\n @Prop() touristicEvents = false;\n\n @Prop() enableOffline = false;\n @Prop() globalTilesMinZoomOffline = 0;\n @Prop() globalTilesMaxZoomOffline = 11;\n @Prop() trekTilesMinZoomOffline = 12;\n @Prop() trekTilesMaxZoomOffline = 16;\n\n @State() showOfflineModal = false;\n @State() showConfirmModal = false;\n @State() showLoaderModal = false;\n @State() showSuccessModal = false;\n @State() showConfirmDeleteModal = false;\n @State() showDeletingMessage = false;\n @State() showDeleteSuccessMessage = false;\n\n @Event() trekDownloadPress: EventEmitter<number>;\n @Event() trekDeletePress: EventEmitter<number>;\n\n largeViewSize = 1024;\n handlePopStateBind: (event: any) => void = this.handlePopState.bind(this);\n\n @Listen('trekCardPress', { target: 'window' })\n onTrekCardPress(event: CustomEvent<number>) {\n this.currentTouristicContentId = null;\n this.showTouristicContent = false;\n state.currentTouristicContent = null;\n this.currentTouristicEventId = null;\n this.showTouristicEvent = false;\n state.currentTouristicEvent = null;\n const parentTrek = state.parentTrekId ? state.parentTrekId : state.currentTrekSteps ? this.currentTrekId : null;\n state.currentTrek = null;\n this.currentTrekId = event.detail;\n state.mode = 'treks';\n this.showTrek = true;\n this.showTrekMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.set('trek', this.currentTrekId.toString());\n if (state.currentTrekSteps) {\n url.searchParams.set('parenttrek', parentTrek.toString());\n }\n window.history.pushState({}, '', url);\n }\n\n @Listen('parentTrekPress', { target: 'window' })\n onParentTrekPress(event: CustomEvent<number>) {\n state.currentTrek = null;\n this.currentTrekId = event.detail;\n state.mode = 'treks';\n this.showTrek = true;\n this.showTrekMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.set('trek', this.currentTrekId.toString());\n url.searchParams.delete('parenttrek');\n window.history.pushState({}, '', url);\n }\n\n @Listen('touristicContentCardPress', { target: 'window' })\n onTouristicContentCardPress(event: CustomEvent<number>) {\n state.currentTrek = null;\n this.currentTrekId = null;\n this.showTrek = false;\n this.currentTouristicContentId = event.detail;\n state.mode = 'touristicContents';\n this.showTouristicContent = true;\n this.showTouristicContentMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.delete('trek');\n url.searchParams.set('touristiccontent', this.currentTouristicContentId.toString());\n window.history.pushState({}, '', url);\n }\n\n @Listen('touristicEventCardPress', { target: 'window' })\n onTouristiceEventCardPress(event: CustomEvent<number>) {\n state.currentTrek = null;\n this.currentTrekId = null;\n this.showTrek = false;\n this.currentTouristicEventId = event.detail;\n ``;\n state.mode = 'touristicEvents';\n this.showTouristicEvent = true;\n this.showTouristicEventMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.delete('trek');\n url.searchParams.set('touristicevent', this.currentTouristicEventId.toString());\n window.history.pushState({}, '', url);\n }\n\n @Listen('resize', { target: 'window' })\n onWindowResize() {\n this.handleView();\n }\n\n @Listen('centerOnMap', { target: 'window' })\n onCenterOnMap() {\n if (!this.isLargeView) {\n this.showTrekMap = true;\n }\n }\n\n @Listen('trekDownloadConfirm', { target: 'window' })\n onTrekDownloadConfirm() {\n this.showLoaderModal = false;\n this.showSuccessModal = false;\n this.showDeleteSuccessMessage = false;\n this.showDeletingMessage = false;\n this.showConfirmDeleteModal = false;\n this.showOfflineModal = true;\n this.showConfirmModal = true;\n }\n\n @Listen('trekDownloadedSuccessConfirm', { target: 'window' })\n onTrekDownloadedSuccessConfirm() {\n this.showLoaderModal = false;\n this.showSuccessModal = true;\n }\n\n @Listen('trekDeleteConfirm', { target: 'window' })\n onTrekDeleteConfirm() {\n this.showLoaderModal = false;\n this.showSuccessModal = false;\n this.showDeleteSuccessMessage = false;\n this.showOfflineModal = true;\n this.showConfirmModal = true;\n this.showConfirmDeleteModal = true;\n }\n\n @Listen('trekDeleteSuccessConfirm', { target: 'window' })\n onTrekDeleteSuccessConfirm() {\n this.showLoaderModal = false;\n this.showSuccessModal = true;\n this.showDeleteSuccessMessage = true;\n }\n\n @Watch('isLargeView')\n watchPropHandler() {\n window.dispatchEvent(new window.Event('resize'));\n }\n\n componentWillLoad() {\n if (this.treks) {\n state.mode = 'treks';\n } else if (this.touristicContents) {\n state.mode = 'touristicContents';\n } else if (this.touristicEvents) {\n state.mode = 'touristicEvents';\n }\n const url = new URL(window.location.toString());\n const trekParam = url.searchParams.get('trek');\n const parentTrekId = url.searchParams.get('parenttrek');\n const touristicContentParam = url.searchParams.get('touristiccontent');\n const touristicEventParam = url.searchParams.get('touristicevent');\n if (trekParam) {\n window.history.replaceState({ isInitialHistoryWithDetails: true }, '', url);\n state.parentTrekId = parentTrekId ? Number(parentTrekId) : null;\n this.currentTrekId = Number(trekParam);\n state.mode = 'treks';\n this.showTrek = true;\n } else if (touristicContentParam) {\n window.history.replaceState({ isInitialHistoryWithDetails: true }, '', url);\n this.currentTouristicContentId = Number(touristicContentParam);\n state.mode = 'touristicContents';\n this.showTouristicContent = true;\n } else if (touristicEventParam) {\n window.history.replaceState({ isInitialHistoryWithDetails: true }, '', url);\n this.currentTouristicEventId = Number(touristicEventParam);\n state.mode = 'touristicEvents';\n this.showTouristicEvent = true;\n }\n }\n\n componentDidLoad() {\n window.addEventListener('popstate', this.handlePopStateBind, false);\n this.handleView();\n }\n\n onDetailsClose() {\n if (this.treks) {\n state.mode = 'treks';\n } else if (this.touristicContents) {\n state.mode = 'touristicContents';\n } else if (this.touristicEvents) {\n state.mode = 'touristicEvents';\n }\n this.currentTouristicContentId = null;\n this.showTouristicContent = false;\n this.showTouristicContentMap = false;\n this.showTouristicEvent = false;\n this.showTouristicEventMap = false;\n state.currentTouristicContent = null;\n state.currentTouristicEvent = null;\n state.currentTrek = null;\n state.currentTrekSteps = null;\n state.parentTrekId = null;\n this.currentTrekId = null;\n this.showTrek = false;\n }\n\n handleView() {\n this.isLargeView = this.appElement.getBoundingClientRect().width >= this.largeViewSize;\n this.showHomeMap = this.isLargeView;\n this.showTrekMap = this.isLargeView;\n }\n\n handleFilters() {\n this.showFilters = !this.showFilters;\n }\n\n handleBackButton() {\n if (window.history.state && window.history.state.isInitialHistoryWithDetails) {\n this.onDetailsClose();\n const url = new URL(window.location.toString());\n url.searchParams.delete('trek');\n url.searchParams.delete('touristiccontent');\n url.searchParams.delete('touristicevent');\n window.history.pushState({}, '', url);\n } else {\n window.history.back();\n }\n }\n\n handlePopState() {\n const url = new URL(window.location.toString());\n const trekParam = Number(url.searchParams.get('trek'));\n const touristicContentParam = url.searchParams.get('touristiccontent');\n const touristicEventParam = url.searchParams.get('touristicevent');\n if (trekParam && this.currentTrekId !== trekParam) {\n this.currentTouristicContentId = null;\n this.showTouristicContent = false;\n this.showTouristicEvent = false;\n state.currentTouristicContent = null;\n state.currentTouristicEvent = null;\n state.currentTrek = null;\n this.currentTrekId = trekParam;\n state.mode = 'treks';\n this.showTrek = true;\n } else if (!trekParam && !touristicContentParam && !touristicEventParam) {\n this.onDetailsClose();\n }\n }\n\n handleShowMap() {\n if (this.currentTrekId) {\n this.showTrekMap = !this.showTrekMap;\n } else if (this.showTouristicContent) {\n this.showTouristicContentMap = !this.showTouristicContentMap;\n } else if (this.showTouristicEvent) {\n this.showTouristicEventMap = !this.showTouristicEventMap;\n } else {\n this.showHomeMap = !this.showHomeMap;\n }\n }\n\n getMapVisibilityIconButton() {\n let mapIconButton: string;\n\n if (this.showTrek) {\n mapIconButton = this.showTrekMap ? 'summarize' : 'map';\n } else if (this.showTouristicContent) {\n mapIconButton = this.showTouristicContentMap ? 'summarize' : 'map';\n } else if (this.showTouristicEvent) {\n mapIconButton = this.showTouristicEventMap ? 'summarize' : 'map';\n } else {\n mapIconButton = this.showHomeMap ? 'list' : 'map';\n }\n\n return mapIconButton;\n }\n\n getMapVisibilityLabelButton() {\n let mapLabelButton: string;\n\n if (state.language) {\n if (this.showTrek) {\n mapLabelButton = this.showTrekMap ? translate[state.language].showDetails : translate[state.language].showRoute;\n } else if (this.showTouristicContent) {\n mapLabelButton = this.showTouristicContentMap ? translate[state.language].showDetails : translate[state.language].showMap;\n } else if (this.showTouristicEvent) {\n mapLabelButton = this.showTouristicEventMap ? translate[state.language].showDetails : translate[state.language].showMap;\n } else {\n mapLabelButton = this.showHomeMap ? translate[state.language].showList : translate[state.language].showMap;\n }\n }\n\n return mapLabelButton;\n }\n\n reload() {\n window.location.reload();\n }\n\n disconnectedCallback() {\n reset();\n window.removeEventListener('popstate', this.handlePopStateBind);\n }\n\n handleOkDeleteModal() {\n this.trekDeletePress.emit();\n this.showDeletingMessage = true;\n this.showConfirmDeleteModal = false;\n this.showConfirmModal = false;\n this.showLoaderModal = true;\n }\n\n handleOkDownloadModal() {\n this.trekDownloadPress.emit();\n this.showConfirmModal = false;\n this.showLoaderModal = true;\n }\n\n handleCancelModal() {\n this.showOfflineModal = false;\n }\n\n handleOffline() {\n state.offlineTreks = !state.offlineTreks;\n state.currentTreks = handleTreksFiltersAndSearch();\n }\n\n render() {\n return (\n <Host\n style={{\n '--font-family': this.fontFamily,\n '--color-primary-app': this.colorPrimaryApp,\n '--color-on-primary': this.colorOnPrimary,\n '--color-surface': this.colorSurface,\n '--color-on-surface': this.colorOnSurface,\n '--color-surface-variant': this.colorSurfaceVariant,\n '--color-on-surface-variant': this.colorOnSurfaceVariant,\n '--color-primary-container': this.colorPrimaryContainer,\n '--color-on-primary-container': this.colorOnPrimaryContainer,\n '--color-secondary-container': this.colorSecondaryContainer,\n '--color-on-secondary-container': this.colorOnSecondaryContainer,\n '--color-background': this.colorBackground,\n '--color-surface-container-high': this.colorSurfaceContainerHigh,\n '--color-surface-container-low': this.colorSurfaceContainerLow,\n '--fab-background-color': this.fabBackgroundColor,\n '--fab-color': this.fabColor,\n '--color-sensitive-area': this.colorSensitiveArea,\n '--app-width': this.appWidth,\n '--app-height': this.appHeight,\n '--header-height':\n Number(this.treks) + Number(this.touristicContents) + Number(this.touristicEvents) > 1\n ? this.enableOffline\n ? '136px'\n : '188px'\n : this.enableOffline\n ? '116px'\n : '64px',\n '--header-with-segment': Number(this.treks) + Number(this.touristicContents) + Number(this.touristicEvents) > 1 ? '16px' : '0px',\n '--header-with-languages': this.languages.split(',').length > 1 ? '38px' : '0px',\n '--border-radius': this.rounded ? '' : '0px',\n }}\n >\n {!state.currentTreks &&\n !state.currentTrek &&\n !state.currentTouristicContent &&\n !state.currentTouristicEvent &&\n !state.currentTouristicContents &&\n !state.currentTouristicEvents && (\n <div class=\"grw-init-loader-container\">\n <grw-loader exportparts=\"loader\" color-primary-container={this.colorPrimaryContainer} color-on-primary-container={this.colorOnPrimaryContainer}></grw-loader>\n </div>\n )}\n {this.treks && state.mode === 'treks' && !this.showTrek && !this.showTouristicContent && !this.showTouristicEvent && !state.currentTreks && (\n <grw-treks-provider\n api={this.api}\n languages={this.languages}\n portals={this.portals}\n in-bbox={this.inBbox}\n cities={this.cities}\n districts={this.districts}\n structures={this.structures}\n themes={this.themes}\n routes={this.routes}\n practices={this.practices}\n ></grw-treks-provider>\n )}\n {this.showTrek && this.currentTrekId && !state.currentTrek && (\n <grw-trek-provider\n api={this.api}\n languages={this.languages}\n trek-id={this.currentTrekId}\n portals={this.portals}\n in-bbox={this.inBbox}\n cities={this.cities}\n districts={this.districts}\n structures={this.structures}\n themes={this.themes}\n routes={this.routes}\n practices={this.practices}\n ></grw-trek-provider>\n )}\n {this.showTouristicContent && this.currentTouristicContentId && (\n <grw-touristic-content-provider\n api={this.api}\n languages={this.languages}\n touristic-content-id={this.currentTouristicContentId}\n portals={this.portals}\n ></grw-touristic-content-provider>\n )}\n {this.showTouristicEvent && this.currentTouristicEventId && (\n <grw-touristic-event-provider\n api={this.api}\n languages={this.languages}\n touristic-event-id={this.currentTouristicEventId}\n portals={this.portals}\n ></grw-touristic-event-provider>\n )}\n {this.touristicContents && state.mode === 'touristicContents' && !state.currentTouristicContents && !this.showTouristicContent && (\n <grw-touristic-contents-provider\n api={this.api}\n languages={this.languages}\n in-bbox={this.inBbox}\n cities={this.cities}\n districts={this.districts}\n structures={this.structures}\n themes={this.themes}\n portals={this.portals}\n ></grw-touristic-contents-provider>\n )}\n {this.touristicEvents && state.mode === 'touristicEvents' && !state.currentTouristicEvents && !this.showTouristicEvent && (\n <grw-touristic-events-provider\n api={this.api}\n languages={this.languages}\n in-bbox={this.inBbox}\n cities={this.cities}\n districts={this.districts}\n structures={this.structures}\n themes={this.themes}\n portals={this.portals}\n ></grw-touristic-events-provider>\n )}\n {(state.currentTreks ||\n state.currentTrek ||\n state.touristicContents ||\n state.touristicEvents ||\n state.currentTouristicContent ||\n state.currentTouristicEvent ||\n state.networkError) && (\n <div class=\"grw-app-container\">\n {state.languages && state.languages.length > 1 && (\n <div class=\"grw-languages-container\">\n <grw-select-language></grw-select-language>\n </div>\n )}\n <div\n class={`${this.isLargeView ? 'grw-large-view-header-container' : 'grw-header-container'}${\n this.showTrek || this.showTouristicContent || this.showTouristicEvent ? ' grw-header-detail' : ''\n }`}\n >\n {Number(this.treks) + Number(this.touristicContents) + Number(this.touristicEvents) > 1 &&\n !this.showTrek &&\n !this.showTouristicContent &&\n !this.showTouristicEvent && (\n <grw-segmented-segment\n fontFamily={this.fontFamily}\n treks={this.treks}\n touristicContents={this.touristicContents}\n touristicEvents={this.touristicEvents}\n ></grw-segmented-segment>\n )}\n {!this.showTrek && !this.showTouristicContent && !this.showTouristicEvent ? (\n <Fragment>\n <div class=\"grw-handle-search-filters-container\">\n <div class=\"grw-handle-search-container\">\n <grw-search fontFamily={this.fontFamily}></grw-search>\n </div>\n <div class=\"grw-handle-filters-container\">\n <grw-common-button\n exportparts=\"common-button,common-button-icon,common-button-label\"\n fontFamily={this.fontFamily}\n action={() => this.handleFilters()}\n icon={'filter_list'}\n name={translate[state.language].filter}\n ></grw-common-button>\n </div>\n </div>\n {this.enableOffline && (\n <div part=\"grw-offline-container\" class=\"grw-offline-container\">\n <div class=\"grw-offline-label\">Afficher uniquement les itinéraires hors ligne</div>\n <grw-switch exportparts=\"common-button,common-button-icon,common-button-label\" fontFamily={this.fontFamily} action={() => this.handleOffline()}></grw-switch>\n </div>\n )}\n </Fragment>\n ) : (\n <div class=\"grw-arrow-back-container\">\n <button onClick={() => this.handleBackButton()} class=\"grw-arrow-back-icon\">\n {/* @ts-ignore */}\n <span translate={false} part=\"icon\" class=\"material-symbols material-symbols-outlined icon\">\n arrow_back\n </span>\n </button>\n </div>\n )}\n </div>\n\n <div class={`grw-content-container ${this.showTrek || this.showTouristicContent || this.showTouristicEvent ? 'grw-content-trek' : 'grw-content-treks'}`}>\n {state.networkError && (\n <div class=\"grw-error-container\">\n Une erreur est survenue.\n <grw-common-button\n exportparts=\"common-button,common-button-icon,common-button-label\"\n icon=\"refresh\"\n name=\"Recharger la page\"\n action={() => this.reload()}\n ></grw-common-button>\n </div>\n )}\n <div\n class={this.isLargeView ? 'grw-large-view-app-treks-list-container' : 'grw-app-treks-list-container'}\n style={{ display: this.showTrek || this.showTouristicContent || this.showTouristicEvent ? 'none' : 'flex', position: this.showTrek ? 'absolute' : 'relative' }}\n >\n {state.mode === 'treks' && this.treks && (\n <grw-treks-list\n is-large-view={this.isLargeView}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n ></grw-treks-list>\n )}\n {state.mode === 'touristicContents' && this.touristicContents && (\n <grw-touristic-contents-list\n is-large-view={this.isLargeView}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n ></grw-touristic-contents-list>\n )}\n {state.mode === 'touristicEvents' && this.touristicEvents && (\n <grw-touristic-events-list\n is-large-view={this.isLargeView}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n ></grw-touristic-events-list>\n )}\n </div>\n {((this.showTrek && !state.currentTrek) ||\n (this.showTouristicContent && !state.currentTouristicContent) ||\n (this.showTouristicEvent && !state.currentTouristicEvent) ||\n (!state.treks && state.mode === 'treks' && !this.showTrek) ||\n (!state.touristicContents && state.mode === 'touristicContents' && !this.showTouristicContent) ||\n (!state.touristicEvents && state.mode === 'touristicEvents' && !this.showTouristicEvent)) && (\n <div class={this.isLargeView ? 'grw-large-view-loader-container' : 'grw-loader-container'}>\n <grw-loader exportparts=\"loader\" color-primary-container={this.colorSecondaryContainer} color-on-primary-container={this.colorOnSecondaryContainer}></grw-loader>\n </div>\n )}\n {this.showTrek && (\n <div class={this.isLargeView ? 'grw-large-view-app-trek-detail-container' : 'grw-app-trek-detail-container'}>\n <grw-trek-detail\n style={{\n visibility: (!this.showTrekMap && this.showTrek) || this.isLargeView ? 'visible' : 'hidden',\n zIndex: !this.showTrekMap ? '1' : '0',\n }}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-primary-container={this.colorPrimaryContainer}\n color-on-primary-container={this.colorOnPrimaryContainer}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n color-background={this.colorBackground}\n weather={this.weather}\n is-large-view={this.isLargeView}\n emergency-number={this.emergencyNumber}\n defaultBackgroundLayerUrl={this.urlLayer.split(',http').map((url, index) => (index === 0 ? url : 'http' + url))[0]}\n defaultBackgroundLayerAttribution={this.attributionLayer ? this.attributionLayer.split(',')[0] : []}\n enable-offline={this.enableOffline}\n global-tiles-min-zoom-offline={this.globalTilesMinZoomOffline}\n global-tiles-max-zoom-offline={this.globalTilesMaxZoomOffline}\n trek-tiles-min-zoom-offline={this.trekTilesMinZoomOffline}\n trek-tiles-max-zoom-offline={this.trekTilesMaxZoomOffline}\n ></grw-trek-detail>\n {this.showOfflineModal && (\n <div class=\"modal-container\">\n <div class=\"modal-content-container\">\n {this.showConfirmModal && !this.showConfirmDeleteModal && (\n <Fragment>\n <div class=\"modal-message-container\">Êtes-vous sûr de vouloir rendre cet itinéraire disponible hors ligne ?</div>\n <div class=\"modal-buttons-container\">\n <button part=\"modal-button\" class=\"modal-button\" onClick={() => this.handleCancelModal()}>\n ANNULER\n </button>\n <button part=\"modal-button\" class=\"modal-button\" onClick={() => this.handleOkDownloadModal()}>\n OK\n </button>\n </div>\n </Fragment>\n )}\n {this.showConfirmDeleteModal && (\n <Fragment>\n <div class=\"modal-message-container\">Êtes-vous sûr de vouloir supprimer cet itinéraire du hors ligne ?</div>\n <div class=\"modal-buttons-container\">\n <button part=\"modal-button\" class=\"modal-button\" onClick={() => this.handleCancelModal()}>\n ANNULER\n </button>\n <button part=\"modal-button\" class=\"modal-button\" onClick={() => this.handleOkDeleteModal()}>\n OK\n </button>\n </div>\n </Fragment>\n )}\n {this.showLoaderModal && (\n <Fragment>\n <div class=\"modal-message-container\">\n <div class=\"modal-loader\"></div>\n {this.showDeletingMessage ? 'Suppression en cours' : 'Téléchargement en cours'}\n </div>\n </Fragment>\n )}\n {this.showSuccessModal && (\n <Fragment>\n <div class=\"modal-message-container\">\n {this.showDeleteSuccessMessage ? \"L'itinéraire est supprimé du hors ligne\" : \"L'itinéraire est disponible hors ligne\"}\n </div>\n <div class=\"modal-button-container\">\n <button part=\"modal-button\" class=\"modal-button\" onClick={() => this.handleCancelModal()}>\n OK\n </button>\n </div>\n </Fragment>\n )}\n </div>\n </div>\n )}\n </div>\n )}\n {this.showTouristicContent && (\n <div class={this.isLargeView ? 'grw-large-view-app-touristic-content-detail-container' : 'grw-app-touristic-content-detail-container'}>\n <grw-touristic-content-detail\n style={{\n visibility: !this.showTouristicContentMap || this.isLargeView ? 'visible' : 'hidden',\n zIndex: !this.showTouristicContentMap ? '1' : '0',\n }}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-primary-container={this.colorPrimaryContainer}\n color-on-primary-container={this.colorOnPrimaryContainer}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n color-background={this.colorBackground}\n is-large-view={this.isLargeView}\n ></grw-touristic-content-detail>\n </div>\n )}\n {this.showTouristicEvent && (\n <div class={this.isLargeView ? 'grw-large-view-app-touristic-event-detail-container' : 'grw-app-touristic-event-detail-container'}>\n <grw-touristic-event-detail\n style={{\n visibility: !this.showTouristicEventMap || this.isLargeView ? 'visible' : 'hidden',\n zIndex: !this.showTouristicEventMap ? '1' : '0',\n }}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-primary-container={this.colorPrimaryContainer}\n color-on-primary-container={this.colorOnPrimaryContainer}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n color-background={this.colorBackground}\n is-large-view={this.isLargeView}\n ></grw-touristic-event-detail>\n </div>\n )}\n {!state.networkError && (\n <grw-map\n exportparts=\"map,elevation,map-bottom-space,map-loader-container,loader\"\n class={this.isLargeView ? 'grw-large-view-app-map-container' : 'grw-app-map-container'}\n style={{\n visibility:\n (this.showHomeMap && !this.showTrek) ||\n (this.showTrekMap && this.showTrek) ||\n (this.showTouristicContentMap && this.showTouristicContent) ||\n (this.showTouristicEventMap && this.showTouristicEvent) ||\n this.isLargeView\n ? 'visible'\n : 'hidden',\n zIndex: this.showHomeMap || this.showTrekMap || this.showTouristicContentMap || this.showTouristicEventMap ? '1' : '0',\n }}\n center={this.center}\n zoom={this.zoom}\n name-layer={this.nameLayer}\n url-layer={this.urlLayer}\n attribution-layer={this.attributionLayer}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-primary-container={this.colorPrimaryContainer}\n color-on-primary-container={this.colorOnPrimaryContainer}\n color-background={this.colorBackground}\n color-trek-line={this.colorTrekLine}\n color-sensitive-area={this.colorSensitiveArea}\n color-poi-icon={this.colorPoiIcon}\n is-large-view={this.isLargeView}\n use-gradient={this.useGradient}\n trek-tiles-max-zoom-offline={this.trekTilesMaxZoomOffline}\n ></grw-map>\n )}\n </div>\n {((!this.showTrek && !this.showTouristicContent && !this.showTouristicEvent) ||\n (this.showTrek && state.currentTrek) ||\n (this.showTouristicContent && state.currentTouristicContent) ||\n (this.showTouristicEvent && state.currentTouristicEvent)) && (\n <div class=\"grw-map-visibility-button-container\">\n <grw-extended-fab\n exportparts=\"map-visibility-button,map-visibility-button-icon,map-visibility-button-label\"\n fontFamily={this.fontFamily}\n action={() => this.handleShowMap()}\n icon={() => this.getMapVisibilityIconButton()}\n name={() => this.getMapVisibilityLabelButton()}\n display={this.isLargeView ? 'none' : 'flex'}\n ></grw-extended-fab>\n </div>\n )}\n </div>\n )}\n {!this.showTrek && this.showFilters && <grw-filters fontFamily={this.fontFamily} handleFilters={() => this.handleFilters()}></grw-filters>}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["grwAppCss","GrwApp","this","largeViewSize","handlePopStateBind","handlePopState","bind","prototype","onTrekCardPress","event","currentTouristicContentId","showTouristicContent","state","currentTouristicContent","currentTouristicEventId","showTouristicEvent","currentTouristicEvent","parentTrek","parentTrekId","currentTrekSteps","currentTrekId","currentTrek","detail","mode","showTrek","showTrekMap","url","URL","window","location","toString","searchParams","set","history","pushState","onParentTrekPress","delete","onTouristicContentCardPress","showTouristicContentMap","onTouristiceEventCardPress","showTouristicEventMap","onWindowResize","handleView","onCenterOnMap","isLargeView","onTrekDownloadConfirm","showLoaderModal","showSuccessModal","showDeleteSuccessMessage","showDeletingMessage","showConfirmDeleteModal","showOfflineModal","showConfirmModal","onTrekDownloadedSuccessConfirm","onTrekDeleteConfirm","onTrekDeleteSuccessConfirm","watchPropHandler","dispatchEvent","Event","componentWillLoad","treks","touristicContents","touristicEvents","trekParam","get","touristicContentParam","touristicEventParam","replaceState","isInitialHistoryWithDetails","Number","componentDidLoad","addEventListener","onDetailsClose","appElement","getBoundingClientRect","width","showHomeMap","handleFilters","showFilters","handleBackButton","back","handleShowMap","getMapVisibilityIconButton","mapIconButton","getMapVisibilityLabelButton","mapLabelButton","language","translate","showDetails","showRoute","showMap","showList","reload","disconnectedCallback","reset","removeEventListener","handleOkDeleteModal","trekDeletePress","emit","handleOkDownloadModal","trekDownloadPress","handleCancelModal","handleOffline","offlineTreks","currentTreks","handleTreksFiltersAndSearch","render","_this","h","Host","style","fontFamily","colorPrimaryApp","colorPrimary","colorOnPrimary","colorSurface","colorOnSurface","colorSurfaceVariant","colorOnSurfaceVariant","colorPrimaryContainer","colorOnPrimaryContainer","colorSecondaryContainer","colorOnSecondaryContainer","colorBackground","colorSurfaceContainerHigh","colorSurfaceContainerLow","fabBackgroundColor","fabColor","colorSensitiveArea","appWidth","appHeight","enableOffline","languages","split","length","rounded","currentTouristicContents","currentTouristicEvents","class","exportparts","api","portals","inBbox","cities","districts","structures","themes","routes","practices","networkError","concat","Fragment","action","icon","name","filter","part","onClick","display","position","visibility","zIndex","weather","emergencyNumber","defaultBackgroundLayerUrl","urlLayer","map","index","defaultBackgroundLayerAttribution","attributionLayer","globalTilesMinZoomOffline","globalTilesMaxZoomOffline","trekTilesMinZoomOffline","trekTilesMaxZoomOffline","center","zoom","nameLayer","colorTrekLine","colorPoiIcon","useGradient"],"sources":["src/components/grw-app/grw-app.scss?tag=grw-app","src/components/grw-app/grw-app.tsx"],"sourcesContent":["grw-app {\n display: block;\n position: relative;\n width: var(--app-width);\n height: var(--app-height);\n overflow: hidden;\n max-width: 100dvw;\n max-height: 100dvh;\n}\n\n.grw-app-container {\n position: relative;\n background-color: var(--color-background);\n width: 100%;\n height: 100%;\n overflow: hidden;\n}\n\n.grw-languages-container {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n margin: 16px 16px 0px 0px;\n}\n\n.grw-header-container,\n.grw-large-view-header-container {\n height: var(--header-height);\n .grw-arrow-back-container {\n display: flex;\n align-items: center;\n height: 100%;\n margin: 0px 16px;\n .grw-arrow-back-icon {\n cursor: pointer;\n -webkit-tap-highlight-color: transparent;\n color: var(--color-on-surface);\n border: none;\n background-color: var(--color-background);\n border-radius: var(--border-radius, 50%);\n height: 48px;\n width: 48px;\n padding: 0px;\n text-align: left;\n }\n }\n}\n\n.grw-handle-search-filters-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 0px 16px;\n height: 64px;\n\n .grw-handle-search-container {\n width: calc(50% + 48px);\n max-width: 220px;\n }\n .grw-handle-filters-container {\n margin-left: 16px;\n }\n}\n\n.grw-header-detail {\n height: 64px;\n}\n\n.grw-large-view-header-container {\n .grw-handle-search-filters-container {\n justify-content: flex-start;\n }\n}\n\n.grw-init-loader-container,\n.grw-loader-container,\n.grw-large-view-loader-container {\n position: absolute;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n background-color: var(--color-background);\n}\n\n.grw-content-container {\n position: relative;\n display: flex;\n}\n\n.grw-content-treks {\n height: calc(100% - var(--header-height) - var(--header-with-segment) - var(--header-with-languages));\n}\n\n.grw-content-trek {\n height: 100%;\n}\n\n.grw-large-view-app-treks-list-container,\n.grw-large-view-app-trek-detail-container,\n.grw-large-view-app-touristic-content-detail-container,\n.grw-large-view-app-touristic-event-detail-container,\n.grw-large-view-app-treks-list-container,\n.grw-large-view-app-trek-detail-container {\n display: flex;\n flex-direction: column;\n max-width: 100%;\n height: 100%;\n}\n\n.grw-app-map-container,\n.grw-large-view-app-map-container {\n width: 100%;\n height: 100%;\n}\n\n.grw-map-visibility-button-container {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n position: absolute;\n bottom: 24px;\n z-index: 4;\n}\n\n.grw-init-loader-container,\n.grw-loader-container {\n width: 100%;\n}\n\n.grw-app-treks-list-container,\n.grw-app-trek-detail-container,\n.grw-app-touristic-content-detail-container,\n.grw-app-touristic-event-detail-container {\n width: 100%;\n}\n\ngrw-treks-list,\ngrw-touristic-contents-list {\n max-height: calc(100vh - var(--header-height));\n}\n\ngrw-trek-detail {\n position: relative;\n max-height: calc(100vh - 64px - 48px);\n}\n\ngrw-touristic-content-detail,\ngrw-touristic-event-detail {\n position: relative;\n max-height: calc(100vh - 64px);\n}\n\n.grw-app-map-container {\n width: 100%;\n position: absolute;\n}\n\n.grw-large-view-loader-container {\n width: 50%;\n}\n\n.grw-large-view-app-treks-list-container,\n.grw-large-view-app-trek-detail-container,\n.grw-large-view-app-touristic-content-detail-container,\n.grw-large-view-app-touristic-event-detail-container {\n width: 50%;\n}\n\n.grw-large-view-app-map-container {\n position: relative;\n width: 50%;\n}\n\n.grw-error-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n margin-top: 16px;\n font-family: var(--font-family);\n font-size: 16px;\n grw-common-button {\n margin-top: 16px;\n }\n}\n\n.modal-container {\n z-index: 40000;\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: var(--font-family);\n top: -64px;\n left: 0px;\n width: 100%;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.6);\n\n .modal-content-container {\n display: flex;\n justify-content: center;\n flex-direction: column;\n width: 380px;\n height: 120px;\n padding: 16px;\n margin: 0px 16px;\n background-color: var(--color-background);\n border-radius: var(--border-radius, 8px);\n }\n\n .modal-message-container {\n display: flex;\n align-items: center;\n justify-content: center;\n\n .modal-loader {\n width: 16px;\n height: 16px;\n border: 3px solid var(--color-primary-container);\n border-bottom-color: var(--color-on-primary-container);\n border-radius: 50%;\n display: inline-block;\n box-sizing: border-box;\n animation: rotation 1s linear infinite;\n margin-right: 16px;\n }\n\n @keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n }\n\n .modal-buttons-container,\n .modal-button-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-top: 16px;\n .modal-button {\n cursor: pointer;\n user-select: none;\n font-size: 14px;\n font-weight: 500;\n height: 32px;\n box-shadow: var(--elevation-0);\n border: none;\n -webkit-tap-highlight-color: transparent;\n line-height: 20px;\n color: var(--color-primary-app);\n background-color: transparent;\n font-family: var(--font-family);\n }\n }\n .modal-button-container {\n justify-content: flex-end;\n }\n}\n\n.grw-offline-container {\n display: flex;\n align-items: center;\n margin: 0px 0px 0px 16px;\n height: 48px;\n .grw-offline-label {\n display: flex;\n }\n grw-switch {\n margin-top: -10px;\n }\n}\n","import { Component, Host, h, Listen, State, Prop, Element, Watch, Event, EventEmitter, Fragment } from '@stencil/core';\nimport { translate } from 'i18n/i18n';\nimport state, { reset } from 'store/store';\nimport { handleTreksFiltersAndSearch } from 'utils/utils';\n\n@Component({\n tag: 'grw-app',\n styleUrls: ['grw-app.scss'],\n shadow: false,\n})\nexport class GrwApp {\n @Element() appElement: HTMLElement;\n @State() showTrek = false;\n @State() showTouristicContent = false;\n @State() showTouristicEvent = false;\n @State() showHomeMap = false;\n @State() showTrekMap = false;\n @State() showTouristicContentMap = false;\n @State() showTouristicEventMap = false;\n @State() showFilters = false;\n @State() isLargeView = false;\n @State() currentTrekId: number;\n @State() currentTouristicContentId: number;\n @State() currentTouristicEventId: number;\n @Prop() appWidth: string = '100%';\n @Prop() appHeight: string = '100vh';\n @Prop() api: string;\n @Prop() languages = 'fr';\n @Prop() inBbox: string;\n @Prop() cities: string;\n @Prop() districts: string;\n @Prop() structures: string;\n @Prop() themes: string;\n @Prop() portals: string;\n @Prop() routes: string;\n @Prop() practices: string;\n @Prop() center: string;\n @Prop() zoom: number;\n @Prop() nameLayer: string;\n @Prop() urlLayer: string;\n @Prop() attributionLayer: string;\n @Prop() weather = false;\n @Prop() emergencyNumber: number;\n\n @Prop() fontFamily = 'Roboto';\n @Prop() colorPrimaryApp = '#6750a4';\n @Prop() colorPrimary = '#6750a4';\n @Prop() colorOnPrimary = '#ffffff';\n @Prop() colorSurface = '#1c1b1f';\n @Prop() colorOnSurface = '#49454e';\n @Prop() colorSurfaceVariant = '#fef7ff';\n @Prop() colorOnSurfaceVariant = '#1c1b1f';\n @Prop() colorPrimaryContainer = '#eaddff';\n @Prop() colorOnPrimaryContainer = '#21005e';\n @Prop() colorSecondaryContainer = '#e8def8';\n @Prop() colorOnSecondaryContainer = '#1d192b';\n @Prop() colorBackground = '#fef7ff';\n @Prop() colorSurfaceContainerHigh = '#ece6f0';\n @Prop() colorSurfaceContainerLow = '#f7f2fa';\n @Prop() fabBackgroundColor = '#eaddff';\n @Prop() fabColor = '#21005d';\n @Prop() rounded = true;\n\n @Prop() colorTrekLine = '#6b0030';\n @Prop() colorSensitiveArea = '#4974a5';\n @Prop() colorPoiIcon = '#974c6e';\n @Prop() useGradient = false;\n\n @Prop() treks = true;\n @Prop() touristicContents = false;\n @Prop() touristicEvents = false;\n\n @Prop() enableOffline = false;\n @Prop() globalTilesMinZoomOffline = 0;\n @Prop() globalTilesMaxZoomOffline = 11;\n @Prop() trekTilesMinZoomOffline = 12;\n @Prop() trekTilesMaxZoomOffline = 16;\n\n @State() showOfflineModal = false;\n @State() showConfirmModal = false;\n @State() showLoaderModal = false;\n @State() showSuccessModal = false;\n @State() showConfirmDeleteModal = false;\n @State() showDeletingMessage = false;\n @State() showDeleteSuccessMessage = false;\n\n @Event() trekDownloadPress: EventEmitter<number>;\n @Event() trekDeletePress: EventEmitter<number>;\n\n largeViewSize = 1024;\n handlePopStateBind: (event: any) => void = this.handlePopState.bind(this);\n\n @Listen('trekCardPress', { target: 'window' })\n onTrekCardPress(event: CustomEvent<number>) {\n this.currentTouristicContentId = null;\n this.showTouristicContent = false;\n state.currentTouristicContent = null;\n this.currentTouristicEventId = null;\n this.showTouristicEvent = false;\n state.currentTouristicEvent = null;\n const parentTrek = state.parentTrekId ? state.parentTrekId : state.currentTrekSteps ? this.currentTrekId : null;\n state.currentTrek = null;\n this.currentTrekId = event.detail;\n state.mode = 'treks';\n this.showTrek = true;\n this.showTrekMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.set('trek', this.currentTrekId.toString());\n if (state.currentTrekSteps) {\n url.searchParams.set('parenttrek', parentTrek.toString());\n }\n window.history.pushState({}, '', url);\n }\n\n @Listen('parentTrekPress', { target: 'window' })\n onParentTrekPress(event: CustomEvent<number>) {\n state.currentTrek = null;\n this.currentTrekId = event.detail;\n state.mode = 'treks';\n this.showTrek = true;\n this.showTrekMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.set('trek', this.currentTrekId.toString());\n url.searchParams.delete('parenttrek');\n window.history.pushState({}, '', url);\n }\n\n @Listen('touristicContentCardPress', { target: 'window' })\n onTouristicContentCardPress(event: CustomEvent<number>) {\n state.currentTrek = null;\n this.currentTrekId = null;\n this.showTrek = false;\n this.currentTouristicContentId = event.detail;\n state.mode = 'touristicContents';\n this.showTouristicContent = true;\n this.showTouristicContentMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.delete('trek');\n url.searchParams.set('touristiccontent', this.currentTouristicContentId.toString());\n window.history.pushState({}, '', url);\n }\n\n @Listen('touristicEventCardPress', { target: 'window' })\n onTouristiceEventCardPress(event: CustomEvent<number>) {\n state.currentTrek = null;\n this.currentTrekId = null;\n this.showTrek = false;\n this.currentTouristicEventId = event.detail;\n ``;\n state.mode = 'touristicEvents';\n this.showTouristicEvent = true;\n this.showTouristicEventMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.delete('trek');\n url.searchParams.set('touristicevent', this.currentTouristicEventId.toString());\n window.history.pushState({}, '', url);\n }\n\n @Listen('resize', { target: 'window' })\n onWindowResize() {\n this.handleView();\n }\n\n @Listen('centerOnMap', { target: 'window' })\n onCenterOnMap() {\n if (!this.isLargeView) {\n this.showTrekMap = true;\n }\n }\n\n @Listen('trekDownloadConfirm', { target: 'window' })\n onTrekDownloadConfirm() {\n this.showLoaderModal = false;\n this.showSuccessModal = false;\n this.showDeleteSuccessMessage = false;\n this.showDeletingMessage = false;\n this.showConfirmDeleteModal = false;\n this.showOfflineModal = true;\n this.showConfirmModal = true;\n }\n\n @Listen('trekDownloadedSuccessConfirm', { target: 'window' })\n onTrekDownloadedSuccessConfirm() {\n this.showLoaderModal = false;\n this.showSuccessModal = true;\n }\n\n @Listen('trekDeleteConfirm', { target: 'window' })\n onTrekDeleteConfirm() {\n this.showLoaderModal = false;\n this.showSuccessModal = false;\n this.showDeleteSuccessMessage = false;\n this.showOfflineModal = true;\n this.showConfirmModal = true;\n this.showConfirmDeleteModal = true;\n }\n\n @Listen('trekDeleteSuccessConfirm', { target: 'window' })\n onTrekDeleteSuccessConfirm() {\n this.showLoaderModal = false;\n this.showSuccessModal = true;\n this.showDeleteSuccessMessage = true;\n }\n\n @Watch('isLargeView')\n watchPropHandler() {\n window.dispatchEvent(new window.Event('resize'));\n }\n\n componentWillLoad() {\n if (this.treks) {\n state.mode = 'treks';\n } else if (this.touristicContents) {\n state.mode = 'touristicContents';\n } else if (this.touristicEvents) {\n state.mode = 'touristicEvents';\n }\n const url = new URL(window.location.toString());\n const trekParam = url.searchParams.get('trek');\n const parentTrekId = url.searchParams.get('parenttrek');\n const touristicContentParam = url.searchParams.get('touristiccontent');\n const touristicEventParam = url.searchParams.get('touristicevent');\n if (trekParam) {\n window.history.replaceState({ isInitialHistoryWithDetails: true }, '', url);\n state.parentTrekId = parentTrekId ? Number(parentTrekId) : null;\n this.currentTrekId = Number(trekParam);\n state.mode = 'treks';\n this.showTrek = true;\n } else if (touristicContentParam) {\n window.history.replaceState({ isInitialHistoryWithDetails: true }, '', url);\n this.currentTouristicContentId = Number(touristicContentParam);\n state.mode = 'touristicContents';\n this.showTouristicContent = true;\n } else if (touristicEventParam) {\n window.history.replaceState({ isInitialHistoryWithDetails: true }, '', url);\n this.currentTouristicEventId = Number(touristicEventParam);\n state.mode = 'touristicEvents';\n this.showTouristicEvent = true;\n }\n }\n\n componentDidLoad() {\n window.addEventListener('popstate', this.handlePopStateBind, false);\n this.handleView();\n }\n\n onDetailsClose() {\n if (this.treks) {\n state.mode = 'treks';\n } else if (this.touristicContents) {\n state.mode = 'touristicContents';\n } else if (this.touristicEvents) {\n state.mode = 'touristicEvents';\n }\n this.currentTouristicContentId = null;\n this.showTouristicContent = false;\n this.showTouristicContentMap = false;\n this.showTouristicEvent = false;\n this.showTouristicEventMap = false;\n state.currentTouristicContent = null;\n state.currentTouristicEvent = null;\n state.currentTrek = null;\n state.currentTrekSteps = null;\n state.parentTrekId = null;\n this.currentTrekId = null;\n this.showTrek = false;\n }\n\n handleView() {\n this.isLargeView = this.appElement.getBoundingClientRect().width >= this.largeViewSize;\n this.showHomeMap = this.isLargeView;\n this.showTrekMap = this.isLargeView;\n }\n\n handleFilters() {\n this.showFilters = !this.showFilters;\n }\n\n handleBackButton() {\n if (window.history.state && window.history.state.isInitialHistoryWithDetails) {\n this.onDetailsClose();\n const url = new URL(window.location.toString());\n url.searchParams.delete('trek');\n url.searchParams.delete('touristiccontent');\n url.searchParams.delete('touristicevent');\n window.history.pushState({}, '', url);\n } else {\n window.history.back();\n }\n }\n\n handlePopState() {\n const url = new URL(window.location.toString());\n const trekParam = Number(url.searchParams.get('trek'));\n const touristicContentParam = url.searchParams.get('touristiccontent');\n const touristicEventParam = url.searchParams.get('touristicevent');\n if (trekParam && this.currentTrekId !== trekParam) {\n this.currentTouristicContentId = null;\n this.showTouristicContent = false;\n this.showTouristicEvent = false;\n state.currentTouristicContent = null;\n state.currentTouristicEvent = null;\n state.currentTrek = null;\n this.currentTrekId = trekParam;\n state.mode = 'treks';\n this.showTrek = true;\n } else if (!trekParam && !touristicContentParam && !touristicEventParam) {\n this.onDetailsClose();\n }\n }\n\n handleShowMap() {\n if (this.currentTrekId) {\n this.showTrekMap = !this.showTrekMap;\n } else if (this.showTouristicContent) {\n this.showTouristicContentMap = !this.showTouristicContentMap;\n } else if (this.showTouristicEvent) {\n this.showTouristicEventMap = !this.showTouristicEventMap;\n } else {\n this.showHomeMap = !this.showHomeMap;\n }\n }\n\n getMapVisibilityIconButton() {\n let mapIconButton: string;\n\n if (this.showTrek) {\n mapIconButton = this.showTrekMap ? 'summarize' : 'map';\n } else if (this.showTouristicContent) {\n mapIconButton = this.showTouristicContentMap ? 'summarize' : 'map';\n } else if (this.showTouristicEvent) {\n mapIconButton = this.showTouristicEventMap ? 'summarize' : 'map';\n } else {\n mapIconButton = this.showHomeMap ? 'list' : 'map';\n }\n\n return mapIconButton;\n }\n\n getMapVisibilityLabelButton() {\n let mapLabelButton: string;\n\n if (state.language) {\n if (this.showTrek) {\n mapLabelButton = this.showTrekMap ? translate[state.language].showDetails : translate[state.language].showRoute;\n } else if (this.showTouristicContent) {\n mapLabelButton = this.showTouristicContentMap ? translate[state.language].showDetails : translate[state.language].showMap;\n } else if (this.showTouristicEvent) {\n mapLabelButton = this.showTouristicEventMap ? translate[state.language].showDetails : translate[state.language].showMap;\n } else {\n mapLabelButton = this.showHomeMap ? translate[state.language].showList : translate[state.language].showMap;\n }\n }\n\n return mapLabelButton;\n }\n\n reload() {\n window.location.reload();\n }\n\n disconnectedCallback() {\n reset();\n window.removeEventListener('popstate', this.handlePopStateBind);\n }\n\n handleOkDeleteModal() {\n this.trekDeletePress.emit();\n this.showDeletingMessage = true;\n this.showConfirmDeleteModal = false;\n this.showConfirmModal = false;\n this.showLoaderModal = true;\n }\n\n handleOkDownloadModal() {\n this.trekDownloadPress.emit();\n this.showConfirmModal = false;\n this.showLoaderModal = true;\n }\n\n handleCancelModal() {\n this.showOfflineModal = false;\n }\n\n handleOffline() {\n state.offlineTreks = !state.offlineTreks;\n state.currentTreks = handleTreksFiltersAndSearch();\n }\n\n render() {\n return (\n <Host\n style={{\n '--font-family': this.fontFamily,\n '--color-primary-app': this.colorPrimaryApp,\n '--color-primary': this.colorPrimary,\n '--color-on-primary': this.colorOnPrimary,\n '--color-surface': this.colorSurface,\n '--color-on-surface': this.colorOnSurface,\n '--color-surface-variant': this.colorSurfaceVariant,\n '--color-on-surface-variant': this.colorOnSurfaceVariant,\n '--color-primary-container': this.colorPrimaryContainer,\n '--color-on-primary-container': this.colorOnPrimaryContainer,\n '--color-secondary-container': this.colorSecondaryContainer,\n '--color-on-secondary-container': this.colorOnSecondaryContainer,\n '--color-background': this.colorBackground,\n '--color-surface-container-high': this.colorSurfaceContainerHigh,\n '--color-surface-container-low': this.colorSurfaceContainerLow,\n '--fab-background-color': this.fabBackgroundColor,\n '--fab-color': this.fabColor,\n '--color-sensitive-area': this.colorSensitiveArea,\n '--app-width': this.appWidth,\n '--app-height': this.appHeight,\n '--header-height':\n Number(this.treks) + Number(this.touristicContents) + Number(this.touristicEvents) > 1\n ? this.enableOffline\n ? '188px'\n : '136px'\n : this.enableOffline\n ? '116px'\n : '64px',\n '--header-with-segment': Number(this.treks) + Number(this.touristicContents) + Number(this.touristicEvents) > 1 ? '16px' : '0px',\n '--header-with-languages': this.languages.split(',').length > 1 ? '38px' : '0px',\n '--border-radius': this.rounded ? '' : '0px',\n }}\n >\n {!state.currentTreks &&\n !state.currentTrek &&\n !state.currentTouristicContent &&\n !state.currentTouristicEvent &&\n !state.currentTouristicContents &&\n !state.currentTouristicEvents && (\n <div class=\"grw-init-loader-container\">\n <grw-loader exportparts=\"loader\" color-primary-container={this.colorPrimaryContainer} color-on-primary-container={this.colorOnPrimaryContainer}></grw-loader>\n </div>\n )}\n {this.treks && state.mode === 'treks' && !this.showTrek && !this.showTouristicContent && !this.showTouristicEvent && !state.currentTreks && (\n <grw-treks-provider\n api={this.api}\n languages={this.languages}\n portals={this.portals}\n in-bbox={this.inBbox}\n cities={this.cities}\n districts={this.districts}\n structures={this.structures}\n themes={this.themes}\n routes={this.routes}\n practices={this.practices}\n ></grw-treks-provider>\n )}\n {this.showTrek && this.currentTrekId && !state.currentTrek && (\n <grw-trek-provider\n api={this.api}\n languages={this.languages}\n trek-id={this.currentTrekId}\n portals={this.portals}\n in-bbox={this.inBbox}\n cities={this.cities}\n districts={this.districts}\n structures={this.structures}\n themes={this.themes}\n routes={this.routes}\n practices={this.practices}\n ></grw-trek-provider>\n )}\n {this.showTouristicContent && this.currentTouristicContentId && (\n <grw-touristic-content-provider\n api={this.api}\n languages={this.languages}\n touristic-content-id={this.currentTouristicContentId}\n portals={this.portals}\n ></grw-touristic-content-provider>\n )}\n {this.showTouristicEvent && this.currentTouristicEventId && (\n <grw-touristic-event-provider\n api={this.api}\n languages={this.languages}\n touristic-event-id={this.currentTouristicEventId}\n portals={this.portals}\n ></grw-touristic-event-provider>\n )}\n {this.touristicContents && state.mode === 'touristicContents' && !state.currentTouristicContents && !this.showTouristicContent && (\n <grw-touristic-contents-provider\n api={this.api}\n languages={this.languages}\n in-bbox={this.inBbox}\n cities={this.cities}\n districts={this.districts}\n structures={this.structures}\n themes={this.themes}\n portals={this.portals}\n ></grw-touristic-contents-provider>\n )}\n {this.touristicEvents && state.mode === 'touristicEvents' && !state.currentTouristicEvents && !this.showTouristicEvent && (\n <grw-touristic-events-provider\n api={this.api}\n languages={this.languages}\n in-bbox={this.inBbox}\n cities={this.cities}\n districts={this.districts}\n structures={this.structures}\n themes={this.themes}\n portals={this.portals}\n ></grw-touristic-events-provider>\n )}\n {(state.currentTreks ||\n state.currentTrek ||\n state.touristicContents ||\n state.touristicEvents ||\n state.currentTouristicContent ||\n state.currentTouristicEvent ||\n state.networkError) && (\n <div class=\"grw-app-container\">\n {state.languages && state.languages.length > 1 && (\n <div class=\"grw-languages-container\">\n <grw-select-language></grw-select-language>\n </div>\n )}\n <div\n class={`${this.isLargeView ? 'grw-large-view-header-container' : 'grw-header-container'}${\n this.showTrek || this.showTouristicContent || this.showTouristicEvent ? ' grw-header-detail' : ''\n }`}\n >\n {Number(this.treks) + Number(this.touristicContents) + Number(this.touristicEvents) > 1 &&\n !this.showTrek &&\n !this.showTouristicContent &&\n !this.showTouristicEvent && (\n <grw-segmented-segment\n fontFamily={this.fontFamily}\n treks={this.treks}\n touristicContents={this.touristicContents}\n touristicEvents={this.touristicEvents}\n ></grw-segmented-segment>\n )}\n {!this.showTrek && !this.showTouristicContent && !this.showTouristicEvent ? (\n <Fragment>\n <div class=\"grw-handle-search-filters-container\">\n <div class=\"grw-handle-search-container\">\n <grw-search fontFamily={this.fontFamily}></grw-search>\n </div>\n <div class=\"grw-handle-filters-container\">\n <grw-common-button\n exportparts=\"common-button,common-button-icon,common-button-label\"\n fontFamily={this.fontFamily}\n action={() => this.handleFilters()}\n icon={'filter_list'}\n name={translate[state.language].filter}\n ></grw-common-button>\n </div>\n </div>\n {this.enableOffline && (\n <div part=\"grw-offline-container\" class=\"grw-offline-container\">\n <div class=\"grw-offline-label\">Afficher uniquement les itinéraires hors ligne</div>\n <grw-switch exportparts=\"common-button,common-button-icon,common-button-label\" fontFamily={this.fontFamily} action={() => this.handleOffline()}></grw-switch>\n </div>\n )}\n </Fragment>\n ) : (\n <div class=\"grw-arrow-back-container\">\n <button onClick={() => this.handleBackButton()} class=\"grw-arrow-back-icon\">\n {/* @ts-ignore */}\n <span translate={false} part=\"icon\" class=\"material-symbols material-symbols-outlined icon\">\n arrow_back\n </span>\n </button>\n </div>\n )}\n </div>\n\n <div class={`grw-content-container ${this.showTrek || this.showTouristicContent || this.showTouristicEvent ? 'grw-content-trek' : 'grw-content-treks'}`}>\n {state.networkError && (\n <div class=\"grw-error-container\">\n Une erreur est survenue.\n <grw-common-button\n exportparts=\"common-button,common-button-icon,common-button-label\"\n icon=\"refresh\"\n name=\"Recharger la page\"\n action={() => this.reload()}\n ></grw-common-button>\n </div>\n )}\n <div\n class={this.isLargeView ? 'grw-large-view-app-treks-list-container' : 'grw-app-treks-list-container'}\n style={{ display: this.showTrek || this.showTouristicContent || this.showTouristicEvent ? 'none' : 'flex', position: this.showTrek ? 'absolute' : 'relative' }}\n >\n {state.mode === 'treks' && this.treks && (\n <grw-treks-list\n is-large-view={this.isLargeView}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n ></grw-treks-list>\n )}\n {state.mode === 'touristicContents' && this.touristicContents && (\n <grw-touristic-contents-list\n is-large-view={this.isLargeView}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n ></grw-touristic-contents-list>\n )}\n {state.mode === 'touristicEvents' && this.touristicEvents && (\n <grw-touristic-events-list\n is-large-view={this.isLargeView}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n ></grw-touristic-events-list>\n )}\n </div>\n {((this.showTrek && !state.currentTrek) ||\n (this.showTouristicContent && !state.currentTouristicContent) ||\n (this.showTouristicEvent && !state.currentTouristicEvent) ||\n (!state.treks && state.mode === 'treks' && !this.showTrek) ||\n (!state.touristicContents && state.mode === 'touristicContents' && !this.showTouristicContent) ||\n (!state.touristicEvents && state.mode === 'touristicEvents' && !this.showTouristicEvent)) && (\n <div class={this.isLargeView ? 'grw-large-view-loader-container' : 'grw-loader-container'}>\n <grw-loader exportparts=\"loader\" color-primary-container={this.colorSecondaryContainer} color-on-primary-container={this.colorOnSecondaryContainer}></grw-loader>\n </div>\n )}\n {this.showTrek && (\n <div class={this.isLargeView ? 'grw-large-view-app-trek-detail-container' : 'grw-app-trek-detail-container'}>\n <grw-trek-detail\n style={{\n visibility: (!this.showTrekMap && this.showTrek) || this.isLargeView ? 'visible' : 'hidden',\n zIndex: !this.showTrekMap ? '1' : '0',\n }}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-primary-container={this.colorPrimaryContainer}\n color-on-primary-container={this.colorOnPrimaryContainer}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n color-background={this.colorBackground}\n weather={this.weather}\n is-large-view={this.isLargeView}\n emergency-number={this.emergencyNumber}\n defaultBackgroundLayerUrl={this.urlLayer.split(',http').map((url, index) => (index === 0 ? url : 'http' + url))[0]}\n defaultBackgroundLayerAttribution={this.attributionLayer ? this.attributionLayer.split(',')[0] : []}\n enable-offline={this.enableOffline}\n global-tiles-min-zoom-offline={this.globalTilesMinZoomOffline}\n global-tiles-max-zoom-offline={this.globalTilesMaxZoomOffline}\n trek-tiles-min-zoom-offline={this.trekTilesMinZoomOffline}\n trek-tiles-max-zoom-offline={this.trekTilesMaxZoomOffline}\n ></grw-trek-detail>\n {this.showOfflineModal && (\n <div class=\"modal-container\">\n <div class=\"modal-content-container\">\n {this.showConfirmModal && !this.showConfirmDeleteModal && (\n <Fragment>\n <div class=\"modal-message-container\">Êtes-vous sûr de vouloir rendre cet itinéraire disponible hors ligne ?</div>\n <div class=\"modal-buttons-container\">\n <button part=\"modal-button\" class=\"modal-button\" onClick={() => this.handleCancelModal()}>\n ANNULER\n </button>\n <button part=\"modal-button\" class=\"modal-button\" onClick={() => this.handleOkDownloadModal()}>\n OK\n </button>\n </div>\n </Fragment>\n )}\n {this.showConfirmDeleteModal && (\n <Fragment>\n <div class=\"modal-message-container\">Êtes-vous sûr de vouloir supprimer cet itinéraire du hors ligne ?</div>\n <div class=\"modal-buttons-container\">\n <button part=\"modal-button\" class=\"modal-button\" onClick={() => this.handleCancelModal()}>\n ANNULER\n </button>\n <button part=\"modal-button\" class=\"modal-button\" onClick={() => this.handleOkDeleteModal()}>\n OK\n </button>\n </div>\n </Fragment>\n )}\n {this.showLoaderModal && (\n <Fragment>\n <div class=\"modal-message-container\">\n <div class=\"modal-loader\"></div>\n {this.showDeletingMessage ? 'Suppression en cours' : 'Téléchargement en cours'}\n </div>\n </Fragment>\n )}\n {this.showSuccessModal && (\n <Fragment>\n <div class=\"modal-message-container\">\n {this.showDeleteSuccessMessage ? \"L'itinéraire est supprimé du hors ligne\" : \"L'itinéraire est disponible hors ligne\"}\n </div>\n <div class=\"modal-button-container\">\n <button part=\"modal-button\" class=\"modal-button\" onClick={() => this.handleCancelModal()}>\n OK\n </button>\n </div>\n </Fragment>\n )}\n </div>\n </div>\n )}\n </div>\n )}\n {this.showTouristicContent && (\n <div class={this.isLargeView ? 'grw-large-view-app-touristic-content-detail-container' : 'grw-app-touristic-content-detail-container'}>\n <grw-touristic-content-detail\n style={{\n visibility: !this.showTouristicContentMap || this.isLargeView ? 'visible' : 'hidden',\n zIndex: !this.showTouristicContentMap ? '1' : '0',\n }}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-primary-container={this.colorPrimaryContainer}\n color-on-primary-container={this.colorOnPrimaryContainer}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n color-background={this.colorBackground}\n is-large-view={this.isLargeView}\n ></grw-touristic-content-detail>\n </div>\n )}\n {this.showTouristicEvent && (\n <div class={this.isLargeView ? 'grw-large-view-app-touristic-event-detail-container' : 'grw-app-touristic-event-detail-container'}>\n <grw-touristic-event-detail\n style={{\n visibility: !this.showTouristicEventMap || this.isLargeView ? 'visible' : 'hidden',\n zIndex: !this.showTouristicEventMap ? '1' : '0',\n }}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-primary-container={this.colorPrimaryContainer}\n color-on-primary-container={this.colorOnPrimaryContainer}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n color-background={this.colorBackground}\n is-large-view={this.isLargeView}\n ></grw-touristic-event-detail>\n </div>\n )}\n {!state.networkError && (\n <grw-map\n exportparts=\"map,elevation,map-bottom-space,map-loader-container,loader\"\n class={this.isLargeView ? 'grw-large-view-app-map-container' : 'grw-app-map-container'}\n style={{\n visibility:\n (this.showHomeMap && !this.showTrek) ||\n (this.showTrekMap && this.showTrek) ||\n (this.showTouristicContentMap && this.showTouristicContent) ||\n (this.showTouristicEventMap && this.showTouristicEvent) ||\n this.isLargeView\n ? 'visible'\n : 'hidden',\n zIndex: this.showHomeMap || this.showTrekMap || this.showTouristicContentMap || this.showTouristicEventMap ? '1' : '0',\n }}\n center={this.center}\n zoom={this.zoom}\n name-layer={this.nameLayer}\n url-layer={this.urlLayer}\n attribution-layer={this.attributionLayer}\n fontFamily={this.fontFamily}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-primary-container={this.colorPrimaryContainer}\n color-on-primary-container={this.colorOnPrimaryContainer}\n color-background={this.colorBackground}\n color-trek-line={this.colorTrekLine}\n color-sensitive-area={this.colorSensitiveArea}\n color-poi-icon={this.colorPoiIcon}\n is-large-view={this.isLargeView}\n use-gradient={this.useGradient}\n trek-tiles-max-zoom-offline={this.trekTilesMaxZoomOffline}\n ></grw-map>\n )}\n </div>\n {((!this.showTrek && !this.showTouristicContent && !this.showTouristicEvent) ||\n (this.showTrek && state.currentTrek) ||\n (this.showTouristicContent && state.currentTouristicContent) ||\n (this.showTouristicEvent && state.currentTouristicEvent)) && (\n <div class=\"grw-map-visibility-button-container\">\n <grw-extended-fab\n exportparts=\"map-visibility-button,map-visibility-button-icon,map-visibility-button-label\"\n fontFamily={this.fontFamily}\n action={() => this.handleShowMap()}\n icon={() => this.getMapVisibilityIconButton()}\n name={() => this.getMapVisibilityLabelButton()}\n display={this.isLargeView ? 'none' : 'flex'}\n ></grw-extended-fab>\n </div>\n )}\n </div>\n )}\n {!this.showTrek && this.showFilters && <grw-filters fontFamily={this.fontFamily} handleFilters={() => this.handleFilters()}></grw-filters>}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var __awaiter=this&&this.__awaiter||function(e,t,i,r){function n(e){return e instanceof i?e:new i((function(t){t(e)}))}return new(i||(i=Promise))((function(i,a){function s(e){try{l(r.next(e))}catch(t){a(t)}}function o(e){try{l(r["throw"](e))}catch(t){a(t)}}function l(e){e.done?i(e.value):n(e.value).then(s,o)}l((r=r.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var i={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,n,a,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(e){return function(t){return l([e,t])}}function l(o){if(r)throw new TypeError("Generator is already executing.");while(s&&(s=0,o[0]&&(i=0)),i)try{if(r=1,n&&(a=o[0]&2?n["return"]:o[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,o[1])).done)return a;if(n=0,a)o=[o[0]&2,a.value];switch(o[0]){case 0:case 1:a=o;break;case 4:i.label++;return{value:o[1],done:false};case 5:i.label++;n=o[1];o=[0];continue;case 7:o=i.ops.pop();i.trys.pop();continue;default:if(!(a=i.trys,a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){i=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){i.label=o[1];break}if(o[0]===6&&i.label<a[1]){i.label=a[1];a=o;break}if(a&&i.label<a[2]){i.label=a[2];i.ops.push(o);break}if(a[2])i.ops.pop();i.trys.pop();continue}o=t.call(e,i)}catch(l){o=[6,l];n=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};var __spreadArray=this&&this.__spreadArray||function(e,t,i){if(i||arguments.length===2)for(var r=0,n=t.length,a;r<n;r++){if(a||!(r in t)){if(!a)a=Array.prototype.slice.call(t,0,r);a[r]=t[r]}}return e.concat(a||Array.prototype.slice.call(t))};import{r as registerInstance,h,H as Host,c as createEvent,i as getAssetPath,g as getElement}from"./index-0501fe42.js";import{t as translate}from"./i18n-0c0e7b27.js";import{t as treksFilters,s as state,h as handleTreksFiltersAndSearch,a as touristicContentsFilters,b as touristicEventsFilters,c as handleTouristicContentsFiltersAndSearch,d as handleTouristicEventsFiltersAndSearch,e as createCommonjsModule,l as leafletSrc,f as commonjsGlobal,g as bundle,o as onChange,i as getDataInStore,j as arrayBufferToBlob,k as getAllDataInStore,m as setFilesFromStore,n as imagesRegExp,w as writeOrUpdateTilesInStore,p as writeOrUpdateDataInStore,q as writeOrUpdateFilesInStore,u as formatDuration,v as formatLength,x as formatAscent,y as formatDescent,z as durations,A as lengths,B as elevations}from"./utils-ebfa8564.js";import{g as getTrekGeometry,a as getWindow,n as nextTick,b as now,c as getDocument,d as createElementIfNotDefined,e as createElement,f as elementOffset,h as elementTransitionEnd,S as Swiper,N as Navigation,P as Pagination,K as Keyboard,i as getTreksList,j as getDistricts,k as getTrek,t as trekIsAvailableOffline}from"./pagination-3428bda5.js";var grwCommonButtonCss='.material-symbols{font-family:"Material Symbols Outlined"}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48}.common-button{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;-webkit-tap-highlight-color:transparent;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;color:var(--color-on-primary-container);background-color:var(--color-primary-container);padding:12px 24px;border-radius:var(--border-radius, 20px);-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;gap:8px;white-space:nowrap;line-height:20px;letter-spacing:0.1px;font-family:var(--font-family);font-size:14px;font-weight:500;-webkit-box-shadow:var(--elevation-1);box-shadow:var(--elevation-1);-webkit-transition:-webkit-box-shadow 0.2s ease-in-out 0s;transition:-webkit-box-shadow 0.2s ease-in-out 0s;transition:box-shadow 0.2s ease-in-out 0s;transition:box-shadow 0.2s ease-in-out 0s, -webkit-box-shadow 0.2s ease-in-out 0s}.common-button .common-button-icon{font-size:18px}';var GrwCommonButton=function(){function e(e){registerInstance(this,e);this.action=undefined;this.icon=undefined;this.name=undefined;this.fontFamily="Roboto"}e.prototype.render=function(){var e=this;return h(Host,{style:{"--font-family":this.fontFamily}},h("button",{part:"common-button",class:"common-button",onClick:function(){return e.action()}},h("span",{part:"common-button-icon",class:"material-symbols material-symbols-outlined icon",translate:false},this.icon),h("span",{part:"common-button-label",class:"label"},this.name)))};return e}();GrwCommonButton.style=grwCommonButtonCss;var grwExtendedFabCss='.material-symbols{font-family:"Material Symbols Outlined"}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48}.map-visibility-button{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;text-decoration:none;padding:16px;background-color:var(--fab-background-color);color:var(--fab-color);-webkit-box-shadow:var(--elevation-1);box-shadow:var(--elevation-1);border-radius:var(--border-radius, 12px);height:56px;font-family:var(--font-family);font-size:16px;width:unset}.map-visibility-button:hover{-webkit-box-shadow:var(--elevation-4);box-shadow:var(--elevation-4)}.map-visibility-button .icon{font-size:24px;margin-right:8px;color:var(--fab-color)}';var GrwExtendedFab=function(){function e(e){registerInstance(this,e);this.action=undefined;this.icon=undefined;this.name=undefined;this.display=undefined;this.fontFamily="Roboto"}e.prototype.render=function(){var e=this;return h(Host,{style:{"--font-family":this.fontFamily}},h("button",{part:"map-visibility-button",class:"map-visibility-button",onClick:function(){return e.action()},style:{display:this.display}},h("span",{part:"map-visibility-button-icon",class:"material-symbols material-symbols-outlined icon",translate:false},this.icon()),h("span",{part:"map-visibility-button-label",class:"label"},this.name())))};return e}();GrwExtendedFab.style=grwExtendedFabCss;var grwFiltersCss='.options-container{height:100%;position:absolute;width:100%;z-index:1100;top:0px}.filters-container{background-color:var(--color-background);position:relative;width:100%;height:100%;z-index:1100}.filters-container .filters-treks-container,.filters-container .filters-touristic-contents-container,.filters-container .filters-touristic-events-container{height:100%}.filters-container .segmented-buttons-container{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;width:calc(100% - 32px);height:40px;margin:16px;border:1px solid var(--color-outline);border-radius:var(--border-radius, 20px);line-height:20px}.filters-container .segmented-buttons-container .segment{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:14px;font-weight:500;-webkit-tap-highlight-color:transparent;color:var(--color-on-surface-variant);background-color:transparent;border-radius:0px;min-width:40px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;font-family:var(--font-family)}.filters-container .segmented-buttons-container .segment:first-child{border-top-left-radius:var(--border-radius, 20px);border-bottom-left-radius:var(--border-radius, 20px)}.filters-container .segmented-buttons-container .segment:not(:last-child){border-right:1px solid var(--color-outline)}.filters-container .segmented-buttons-container .segment:last-child{border-top-right-radius:var(--border-radius, 20px);border-bottom-right-radius:var(--border-radius, 20px)}.filters-container .segmented-buttons-container .selected-segment{color:var(--color-on-primary-container);background-color:var(--color-primary-container)}.filters-segment-container{overflow-y:visible;height:100%;max-height:calc(100% - 64px - 42px - 32px)}.back-filters-container{background-color:rgba(0, 0, 0, 0.5);width:100%;height:100%;position:absolute;z-index:1099}.divider{margin:16px;border-top:1px solid var(--color-outline)}.filters-options-container{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;height:64px;margin:0px 16px}.filters-options-container .filters-options-buttons-container{display:-ms-flexbox;display:flex}.filters-options-container .filters-options-buttons-container .filter-option-button{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:14px;font-weight:500;margin:8px 0px 0px 8px;padding:8px 16px;height:32px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-webkit-box-shadow:var(--elevation-0);box-shadow:var(--elevation-0);border:none;-webkit-tap-highlight-color:transparent;line-height:20px;color:var(--color-on-primary-container);background-color:transparent;font-family:var(--font-family)}.segment-container{overflow:scroll;height:100%}.filter-container:not(:last-child)::after{content:"";display:block;margin:16px;border-top:1px solid var(--color-outline)}.filter-container:last-child{margin-bottom:16px}.current-treks-within-bounds-length{color:var(--color-on-surface-variant);font-family:var(--font-family)}';var GrwFilters=function(){function e(e){registerInstance(this,e);this.resetFilter=createEvent(this,"resetFilter",7);this.selectedSegment="selectedActivitiesFilters";this.handleFilters=undefined;this.fontFamily="Roboto"}e.prototype.handleEraseTreksFilters=function(){treksFilters.forEach((function(e){state[e.property].forEach((function(e){return e.selected=false}))}));state.selectedActivitiesFilters=0;state.selectedThemesFilters=0;state.selectedLocationFilters=0;state.currentTreks=handleTreksFiltersAndSearch();this.resetFilter.emit()};e.prototype.handleOkTreksFilters=function(){this.handleFilters()};e.prototype.handleSelectedSegment=function(e){this.selectedSegment=e};e.prototype.handleSegment=function(e){if(state.mode==="treks"){return treksFilters.filter((function(t){return t.segment===e})).some((function(e){return state[e.property]&&state[e.property].length>0}))}else if(state.mode==="touristicContents"){return touristicContentsFilters.filter((function(t){return t.segment===e})).some((function(e){return state[e.property]&&state[e.property].length>0}))}else if(state.mode==="touristicEvents"){return touristicEventsFilters.filter((function(t){return t.segment===e})).some((function(e){return state[e.property]&&state[e.property].length>0}))}};e.prototype.handleEraseTouristicContentsFilters=function(){touristicContentsFilters.forEach((function(e){state[e.property].forEach((function(e){return e.selected=false}))}));state.selectedActivitiesFilters=0;state.selectedLocationFilters=0;state.currentTouristicContents=handleTouristicContentsFiltersAndSearch();this.resetFilter.emit()};e.prototype.handleOkTouristicContentsFilters=function(){this.handleFilters()};e.prototype.handleEraseTouristicEventsFilters=function(){touristicEventsFilters.forEach((function(e){state[e.property].forEach((function(e){return e.selected=false}))}));state.selectedActivitiesFilters=0;state.selectedLocationFilters=0;state.currentTouristicEvents=handleTouristicEventsFiltersAndSearch();this.resetFilter.emit()};e.prototype.handleOkTouristicEventsFilters=function(){this.handleFilters()};e.prototype.render=function(){var e=this;return h(Host,{style:{"--font-family":this.fontFamily}},h("div",{part:"options-container",class:"options-container"},h("div",{part:"filters-container",class:"filters-container"},state.mode==="treks"&&h("div",{part:"filters-treks-container",class:"filters-treks-container"},h("div",{part:"filters-options-container",class:"filters-options-container"},state.treksWithinBounds&&h("div",{part:"current-treks-within-bounds-length",class:"current-treks-within-bounds-length"},"".concat(state.treksWithinBounds.length," ").concat(state.treksWithinBounds.length>1?translate[state.language].treks:translate[state.language].trek)),h("div",{part:"filters-options-buttons-container",class:"filters-options-buttons-container"},h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleEraseTreksFilters()}},translate[state.language].erase),h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleOkTreksFilters()}},translate[state.language].ok))),h("div",{part:"segmented-buttons-container",class:"segmented-buttons-container"},this.handleSegment("selectedActivitiesFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedActivitiesFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedActivitiesFilters")}},translate[state.language].home.segment.treks," ",state.selectedActivitiesFilters!==0&&"(".concat(state.selectedActivitiesFilters,")")),this.handleSegment("selectedThemesFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedThemesFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedThemesFilters")}},translate[state.language].themes," ",state.selectedThemesFilters!==0&&"(".concat(state.selectedThemesFilters,")")),this.handleSegment("selectedLocationFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedLocationFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedLocationFilters")}},translate[state.language].location," ",state.selectedLocationFilters!==0&&"(".concat(state.selectedLocationFilters,")"))),h("div",{part:"filters-segment-container",class:"filters-segment-container"},this.selectedSegment==="selectedActivitiesFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"treks-activities-segment-container"},state["practices"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].practice,filterType:"practices",filterNameProperty:"name",segment:"selectedActivitiesFilters",filterPlaceholder:translate[state.language].placeholderPractices})),state["difficulties"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].difficulty,filterType:"difficulties",filterNameProperty:"label",segment:"selectedActivitiesFilters"})),state["durations"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].duration,filterType:"durations",filterNameProperty:"name",segment:"selectedActivitiesFilters"})),state["lengths"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].length,filterType:"lengths",filterNameProperty:"name",segment:"selectedActivitiesFilters"})),state["elevations"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].elevation,filterType:"elevations",filterNameProperty:"name",segment:"selectedActivitiesFilters"})),state["routes"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].routes,filterType:"routes",filterNameProperty:"route",segment:"selectedActivitiesFilters"})),state["accessibilities"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].accessibility,filterType:"accessibilities",filterNameProperty:"name",segment:"selectedActivitiesFilters"})),state["labels"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].activities,filterType:"labels",filterNameProperty:"name",segment:"selectedActivitiesFilters"}))),this.selectedSegment==="selectedThemesFilters"&&h("div",{part:"filter-container",class:"segment-container",key:"treks-themes-segment-container"},state["themes"].length>0&&h("div",{part:"",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].themes,filterPlaceholder:translate[state.language].placeholderThemes,filterType:"themes",filterNameProperty:"label",segment:"selectedThemesFilters"}))),this.selectedSegment==="selectedLocationFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"treks-location-segment-container"},state["districts"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].districts,filterType:"districts",filterNameProperty:"name",segment:"selectedLocationFilters"})),state["cities"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].crossedCities,filterPlaceholder:translate[state.language].placeholderCrossedCities,filterType:"cities",filterNameProperty:"name",segment:"selectedLocationFilters"}))))),state.mode==="touristicContents"&&h("div",{part:"filters-touristic-contents-container",class:"filters-touristic-contents-container"},h("div",{part:"filters-options-container",class:"filters-options-container"},state.touristicContentsWithinBounds&&h("div",{part:"current-treks-within-bounds-length",class:"current-treks-within-bounds-length"},"".concat(state.touristicContentsWithinBounds.length," ").concat(state.touristicContentsWithinBounds.length>1?translate[state.language].home.touristicContents:translate[state.language].home.touristicContent)),h("div",{part:"filters-options-buttons-container",class:"filters-options-buttons-container"},h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleEraseTouristicContentsFilters()}},translate[state.language].erase),h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleOkTouristicContentsFilters()}},translate[state.language].ok))),h("div",{part:"segmented-buttons-container",class:"segmented-buttons-container"},this.handleSegment("selectedActivitiesFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedActivitiesFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedActivitiesFilters")}},translate[state.language].services," ",state.selectedActivitiesFilters!==0&&"(".concat(state.selectedActivitiesFilters,")")),this.handleSegment("selectedLocationFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedLocationFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedLocationFilters")}},translate[state.language].location," ",state.selectedLocationFilters!==0&&"(".concat(state.selectedLocationFilters,")"))),h("div",{part:"filters-segment-container",class:"filters-segment-container"},this.selectedSegment==="selectedActivitiesFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"touristic-contents-activities-segment-container"},state["touristicContentCategories"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].category,filterType:"touristicContentCategories",filterNameProperty:"label",segment:"selectedActivitiesFilters"}))),this.selectedSegment==="selectedLocationFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"touristic-contents-location-segment-container"},state["districts"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].districts,filterType:"districts",filterNameProperty:"name",segment:"selectedLocationFilters"})),state["cities"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].crossedCities,filterPlaceholder:translate[state.language].placeholderCrossedCities,filterType:"cities",filterNameProperty:"name",segment:"selectedLocationFilters"}))))),state.mode==="touristicEvents"&&h("div",{part:"filters-touristic-events-container",class:"filters-touristic-events-container"},h("div",{part:"filters-options-container",class:"filters-options-container"},state.touristicEventsWithinBounds&&h("div",{part:"current-treks-within-bounds-length",class:"current-treks-within-bounds-length"},"".concat(state.touristicEventsWithinBounds.length," ").concat(state.touristicEventsWithinBounds.length>1?translate[state.language].home.touristicEvents:translate[state.language].home.touristicEvent)),h("div",{part:"filters-options-buttons-container",class:"filters-options-buttons-container"},h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleEraseTouristicEventsFilters()}},translate[state.language].erase),h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleOkTouristicEventsFilters()}},translate[state.language].ok))),h("div",{part:"segmented-buttons-container",class:"segmented-buttons-container"},this.handleSegment("selectedActivitiesFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedActivitiesFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedActivitiesFilters")}},translate[state.language].services," ",state.selectedActivitiesFilters!==0&&"(".concat(state.selectedActivitiesFilters,")")),this.handleSegment("selectedLocationFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedLocationFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedLocationFilters")}},translate[state.language].location," ",state.selectedLocationFilters!==0&&"(".concat(state.selectedLocationFilters,")"))),h("div",{part:"filters-segment-container",class:"filters-segment-container"},this.selectedSegment==="selectedActivitiesFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"touristic-contents-activities-segment-container"},state["touristicEventTypes"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].type,filterPlaceholder:translate[state.language].placeholderType,filterType:"touristicEventTypes",filterNameProperty:"type",segment:"selectedActivitiesFilters"}))),this.selectedSegment==="selectedLocationFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"touristic-events-location-segment-container"},state["districts"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].districts,filterType:"districts",filterNameProperty:"name",segment:"selectedLocationFilters"})),state["cities"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].crossedCities,filterPlaceholder:translate[state.language].placeholderCrossedCities,filterType:"cities",filterNameProperty:"name",segment:"selectedLocationFilters"})))))),h("div",{part:"back-filters-container",class:"back-filters-container",onClick:function(){return e.handleFilters()}})))};return e}();GrwFilters.style=grwFiltersCss;var grwLoaderCss=".loader{width:48px;height:48px;border:5px solid var(--color-primary-container);border-bottom-color:var(--color-on-primary-container);border-radius:50%;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-animation:rotation 1s linear infinite;animation:rotation 1s linear infinite}@-webkit-keyframes rotation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rotation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}";var GrwLoader=function(){function e(e){registerInstance(this,e);this.colorPrimaryContainer="#eaddff";this.colorOnPrimaryContainer="#21005e"}e.prototype.render=function(){return h(Host,{style:{"--color-primary-container":this.colorPrimaryContainer,"--color-on-primary-container":this.colorOnPrimaryContainer}},h("span",{part:"loader",class:"loader"}))};return e}();GrwLoader.style=grwLoaderCss;!function(e){"function"==typeof define&&define.amd?define(e):e()}((function(){var e=L.extend({},L.DomUtil);L.extend(L.DomUtil,{setTransform:function(t,i,r,n,a){var s=i||new L.Point(0,0);if(!n)return i=s._round(),e.setTransform.apply(this,arguments);s=s.rotateFrom(n,a),t.style[L.DomUtil.TRANSFORM]="translate3d("+s.x+"px,"+s.y+"px,0)"+(r?" scale("+r+")":"")+" rotate("+n+"rad)"},setPosition:function(t,i,r,n,a){if(!r)return e.setPosition.apply(this,arguments);t._leaflet_pos=i,L.Browser.any3d?L.DomUtil.setTransform(t,i,a,r,n):(t.style.left=i.x+"px",t.style.top=i.y+"px")},DEG_TO_RAD:Math.PI/180,RAD_TO_DEG:180/Math.PI}),L.Draggable.include({}),L.extend(L.Point.prototype,{rotate:function(e){return this.rotateFrom(e,new L.Point(0,0))},rotateFrom:function(e,t){if(!e)return this;var i=Math.sin(e),r=Math.cos(e),n=t.x,a=t.y,s=this.x-n,o=this.y-a;return new L.Point(s*r-o*i+n,s*i+o*r+a)}});var t=L.extend({},L.DivOverlay.prototype);L.DivOverlay.include({getEvents:function(){return L.extend(t.getEvents.apply(this,arguments),{rotate:this._updatePosition})},_updatePosition:function(){if(this._map&&(t._updatePosition.apply(this,arguments),this._map&&this._map._rotate&&this._zoomAnimated)){var e=this._getAnchor(),i=L.DomUtil.getPosition(this._container).subtract(e);L.DomUtil.setPosition(this._container,this._map.rotatedPointToMapPanePoint(i).add(e))}}});var i=L.extend({},L.Popup.prototype);L.Popup.include({_animateZoom:function(e){if(i._animateZoom.apply(this,arguments),this._map&&this._map._rotate){var t=this._getAnchor(),r=L.DomUtil.getPosition(this._container).subtract(t);L.DomUtil.setPosition(this._container,this._map.rotatedPointToMapPanePoint(r).add(t))}},_adjustPan:function(){if(!(!this.options.autoPan||this._map._panAnim&&this._map._panAnim._inProgress))if(this._autopanning)this._autopanning=!1;else{var e=this._map,t=parseInt(L.DomUtil.getStyle(this._container,"marginBottom"),10)||0,i=this._container.offsetHeight+t,r=this._containerWidth,n=new L.Point(this._containerLeft,-i-this._containerBottom);n._add(L.DomUtil.getPosition(this._container));var a=n._add(this._map._getMapPanePos()),s=L.point(this.options.autoPanPadding),o=L.point(this.options.autoPanPaddingTopLeft||s),l=L.point(this.options.autoPanPaddingBottomRight||s),c=e.getSize(),p=0,u=0;a.x+r+l.x>c.x&&(p=a.x+r-c.x+l.x),a.x-p-o.x<0&&(p=a.x-o.x),a.y+i+l.y>c.y&&(u=a.y+i-c.y+l.y),a.y-u-o.y<0&&(u=a.y-o.y),(p||u)&&(this.options.keepInView&&(this._autopanning=!0),e.fire("autopanstart").panBy([p,u]))}}});var r=L.extend({},L.Tooltip.prototype);L.Tooltip.include({_animateZoom:function(e){if(!this._map._rotate)return r._animateZoom.apply(this,arguments);var t=this._map._latLngToNewLayerPoint(this._latlng,e.zoom,e.center);t=this._map.rotatedPointToMapPanePoint(t),this._setPosition(t)},_updatePosition:function(){if(!this._map._rotate)return r._updatePosition.apply(this,arguments);var e=this._map.latLngToLayerPoint(this._latlng);e=this._map.rotatedPointToMapPanePoint(e),this._setPosition(e)}}),L.extend({},L.Icon.prototype),L.Icon.include({_setIconStyles:function(e,t){var i=this.options,r=i[t+"Size"];"number"==typeof r&&(r=[r,r]);var n=L.point(r),a=L.point("shadow"===t&&i.shadowAnchor||i.iconAnchor||n&&n.divideBy(2,!0));e.className="leaflet-marker-"+t+" "+(i.className||""),a&&(e.style.marginLeft=-a.x+"px",e.style.marginTop=-a.y+"px",e.style[L.DomUtil.TRANSFORM+"Origin"]=a.x+"px "+a.y+"px 0px"),n&&(e.style.width=n.x+"px",e.style.height=n.y+"px")}});var n=L.extend({},L.Marker.prototype);var a;L.Marker.mergeOptions({rotation:0,rotateWithView:!1,scale:void 0});var s={_onDrag:function(e){var t=this._marker,i=t.options.rotation||t.options.rotateWithView,r=t._shadow,n=L.DomUtil.getPosition(t._icon);!i&&r&&L.DomUtil.setPosition(r,n),t._map._rotate&&(n=t._map.mapPanePointToRotatedPoint(n));var a=t._map.layerPointToLatLng(n);t._latlng=a,e.latlng=a,e.oldLatLng=this._oldLatLng,i?t.setLatLng(a):t.fire("move",e),t.fire("drag",e)},_onDragEnd:function(e){this._marker._map._rotate&&this._marker.update(),a._onDragEnd.apply(this,arguments)}};L.Marker.include({getEvents:function(){return L.extend(n.getEvents.apply(this,arguments),{rotate:this.update})},_initInteraction:function(){var e=n._initInteraction.apply(this,arguments);return this.dragging&&this.dragging.enabled()&&this._map&&this._map._rotate&&(a=a||Object.getPrototypeOf(this.dragging),this.dragging.disable(),Object.assign(this.dragging,{_onDrag:s._onDrag.bind(this.dragging),_onDragEnd:s._onDragEnd.bind(this.dragging)}),this.dragging.enable()),e},_setPos:function(e){this._map._rotate&&(e=this._map.rotatedPointToMapPanePoint(e));var t=this.options.rotation||0;this.options.rotateWithView&&(t+=this._map._bearing),this._icon&&L.DomUtil.setPosition(this._icon,e,t,e,this.options.scale),this._shadow&&L.DomUtil.setPosition(this._shadow,e,t,e,this.options.scale),this._zIndex=e.y+this.options.zIndexOffset,this._resetZIndex()},setRotation:function(e){this.options.rotation=e,this.update()}});var o=L.extend({},L.GridLayer.prototype);L.GridLayer.include({getEvents:function(){var e=o.getEvents.apply(this,arguments);return this._map._rotate&&!this.options.updateWhenIdle&&(this._onRotate||(this._onRotate=L.Util.throttle(this._onMoveEnd,this.options.updateInterval,this)),e.rotate=this._onRotate),e},_getTiledPixelBounds:function(e){return this._map._rotate?this._map._getNewPixelBounds(e,this._tileZoom):o._getTiledPixelBounds.apply(this,arguments)}});var l=L.extend({},L.Renderer.prototype);L.Renderer.include({getEvents:function(){return L.extend(l.getEvents.apply(this,arguments),{rotate:this._update})},onAdd:function(){l.onAdd.apply(this,arguments),L.version<="1.9.3"&&this._container.classList.add("leaflet-zoom-animated")},_updateTransform:function(e,t){if(!this._map._rotate)return l._updateTransform.apply(this,arguments);var i=this._map.getZoomScale(t,this._zoom),r=this._map._latLngToNewLayerPoint(this._topLeft,t,e);L.DomUtil.setTransform(this._container,r,i)},_update:function(){if(!this._map._rotate)return l._update.apply(this,arguments);this._bounds=this._map._getPaddedPixelBounds(this.options.padding),this._topLeft=this._map.layerPointToLatLng(this._bounds.min),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}});var c=L.extend({},L.Map.prototype);L.Map.mergeOptions({rotate:!1,bearing:0}),L.Map.include({initialize:function(e,t){t.rotate&&(this._rotate=!0,this._bearing=0),c.initialize.apply(this,arguments),this.options.rotate&&this.setBearing(this.options.bearing)},containerPointToLayerPoint:function(e){return this._rotate?L.point(e).subtract(this._getMapPanePos()).rotateFrom(-this._bearing,this._getRotatePanePos()).subtract(this._getRotatePanePos()):c.containerPointToLayerPoint.apply(this,arguments)},layerPointToContainerPoint:function(e){return this._rotate?L.point(e).add(this._getRotatePanePos()).rotateFrom(this._bearing,this._getRotatePanePos()).add(this._getMapPanePos()):c.layerPointToContainerPoint.apply(this,arguments)},rotatedPointToMapPanePoint:function(e){return L.point(e).rotate(this._bearing)._add(this._getRotatePanePos())},mapPanePointToRotatedPoint:function(e){return L.point(e)._subtract(this._getRotatePanePos()).rotate(-this._bearing)},mapBoundsToContainerBounds:function(e){if(!this._rotate&&c.mapBoundsToContainerBounds)return c.mapBoundsToContainerBounds.apply(this,arguments);var t=this.getPixelOrigin(),i=this.layerPointToContainerPoint(this.project(e.getNorthWest())._subtract(t)),r=this.layerPointToContainerPoint(this.project(e.getNorthEast())._subtract(t)),n=this.layerPointToContainerPoint(this.project(e.getSouthWest())._subtract(t)),a=this.layerPointToContainerPoint(this.project(e.getSouthEast())._subtract(t));return L.bounds([L.point(Math.min(i.x,r.x,a.x,n.x),Math.min(i.y,r.y,a.y,n.y)),L.point(Math.max(i.x,r.x,a.x,n.x),Math.max(i.y,r.y,a.y,n.y))])},getBounds:function(){if(!this._rotate)return c.getBounds.apply(this,arguments);var e=this.getSize();return new L.LatLngBounds([this.containerPointToLatLng([0,0]),this.containerPointToLatLng([e.x,0]),this.containerPointToLatLng([e.x,e.y]),this.containerPointToLatLng([0,e.y])])},setBearing:function(e){if(L.Browser.any3d&&this._rotate){var t=L.Util.wrapNum(e,[0,360])*L.DomUtil.DEG_TO_RAD,i=this._getPixelCenter(),r=this._getRotatePanePos().rotateFrom(-this._bearing,i),n=r.rotateFrom(t,i);L.DomUtil.setPosition(this._rotatePane,r,t,i),this._pivot=i,this._bearing=t,this._rotatePanePos=n,this.fire("rotate")}},getBearing:function(){return this._bearing*L.DomUtil.RAD_TO_DEG},_initPanes:function(){var e=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),L.DomUtil.setPosition(this._mapPane,new L.Point(0,0)),this._rotate?(this._rotatePane=this.createPane("rotatePane",this._mapPane),this._norotatePane=this.createPane("norotatePane",this._mapPane),this.createPane("tilePane",this._rotatePane),this.createPane("overlayPane",this._rotatePane),this.createPane("shadowPane",this._norotatePane),this.createPane("markerPane",this._norotatePane),this.createPane("tooltipPane",this._norotatePane),this.createPane("popupPane",this._norotatePane)):(this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane")),this.options.markerZoomAnimation||(L.DomUtil.addClass(e.markerPane,"leaflet-zoom-hide"),L.DomUtil.addClass(e.shadowPane,"leaflet-zoom-hide"))},panInside:function(e,t){if(!this._rotate||Math.abs(this._bearing).toFixed(1)<.1)return c.panInside.apply(this,arguments);t=t||{};var i=L.point(t.paddingTopLeft||t.padding||[0,0]),r=L.point(t.paddingBottomRight||t.padding||[0,0]),n=this._container.getBoundingClientRect(),a=this.latLngToContainerPoint(e),s=L.bounds([L.point(n),L.point(n).add(this.getSize())]),o=s.getCenter(),l=L.bounds([s.min.add(i),s.max.subtract(r)]),p=l.getSize();if(!l.contains(a)){this._enforcingBounds=!0;var u=a.subtract(l.getCenter()),d=l.extend(a).getSize().subtract(p);o.x+=u.x<0?-d.x:d.x,o.y+=u.y<0?-d.y:d.y,this.panTo(this.containerPointToLatLng(o),t),this._enforcingBounds=!1}return this},getBoundsZoom:function(e,t,i){if(!this._rotate||Math.abs(this._bearing).toFixed(1)<.1)return c.getBoundsZoom.apply(this,arguments);e=L.latLngBounds(e),i=L.point(i||[0,0]);var r=this.getZoom()||0;var n=this.getMinZoom(),a=this.getMaxZoom(),s=this.getSize().subtract(i),o=this.mapBoundsToContainerBounds(e).getSize(),l=this.options.zoomSnap,p=s.x/o.x,u=s.y/o.y,d=t?Math.max(p,u):Math.min(p,u);return r=this.getScaleZoom(d,r),l&&(r=Math.round(r/(l/100))*(l/100),r=t?Math.ceil(r/l)*l:Math.floor(r/l)*l),Math.max(n,Math.min(a,r))},_getCenterOffset:function(e){var t=c._getCenterOffset.apply(this,arguments);return this._rotate&&(t=t.rotate(this._bearing)),t},_getRotatePanePos:function(){return this._rotatePanePos||new L.Point(0,0)},_getNewPixelOrigin:function(e,t){if(!this._rotate)return c._getNewPixelOrigin.apply(this,arguments);var i=this.getSize()._divideBy(2);return this.project(e,t).rotate(this._bearing)._subtract(i)._add(this._getMapPanePos())._add(this._getRotatePanePos()).rotate(-this._bearing)._round()},_getNewPixelBounds:function(e,t){if(e=e||this.getCenter(),t=t||this.getZoom(),!this._rotate&&c._getNewPixelBounds)return c._getNewPixelBounds.apply(this,arguments);var i=this._animatingZoom?Math.max(this._animateToZoom,this.getZoom()):this.getZoom(),r=this.getZoomScale(i,t),n=this.project(e,t).floor(),a=this.getSize(),s=new L.Bounds([this.containerPointToLayerPoint([0,0]).floor(),this.containerPointToLayerPoint([a.x,0]).floor(),this.containerPointToLayerPoint([0,a.y]).floor(),this.containerPointToLayerPoint([a.x,a.y]).floor()]).getSize().divideBy(2*r);return new L.Bounds(n.subtract(s),n.add(s))},_getPixelCenter:function(){return!this._rotate&&c._getPixelCenter?c._getPixelCenter.apply(this,arguments):this.getSize()._divideBy(2)._subtract(this._getMapPanePos())},_getPaddedPixelBounds:function(e){if(!this._rotate&&c._getPaddedPixelBounds)return c._getPaddedPixelBounds.apply(this,arguments);var t=e,i=this.getSize(),r=i.multiplyBy(-t),n=i.multiplyBy(1+t);return new L.Bounds([this.containerPointToLayerPoint([r.x,r.y]).floor(),this.containerPointToLayerPoint([r.x,n.y]).floor(),this.containerPointToLayerPoint([n.x,r.y]).floor(),this.containerPointToLayerPoint([n.x,n.y]).floor()])},_handleGeolocationResponse:function(e){if(this._container._leaflet_id){var t=e.coords.latitude,i=e.coords.longitude,r=e.coords.heading,n=new L.LatLng(t,i),a=n.toBounds(e.coords.accuracy),s=this._locateOptions;if(s.setView){var o=this.getBoundsZoom(a);this.setView(n,s.maxZoom?Math.min(o,s.maxZoom):o)}var l={latlng:n,bounds:a,timestamp:e.timestamp,heading:r};for(var c in e.coords)"number"==typeof e.coords[c]&&(l[c]=e.coords[c]);this.fire("locationfound",l)}}}),L.Map.CompassBearing=L.Handler.extend({initialize:function(e){this._map=e,"ondeviceorientationabsolute"in window?this.__deviceOrientationEvent="deviceorientationabsolute":"ondeviceorientation"in window&&(this.__deviceOrientationEvent="deviceorientation"),this._throttled=L.Util.throttle(this._onDeviceOrientation,100,this)},addHooks:function(){this._map._rotate&&this.__deviceOrientationEvent?L.DomEvent.on(window,this.__deviceOrientationEvent,this._throttled,this):this.disable()},removeHooks:function(){this._map._rotate&&this.__deviceOrientationEvent&&L.DomEvent.off(window,this.__deviceOrientationEvent,this._throttled,this)},_onDeviceOrientation:function(e){var t=e.webkitCompassHeading||e.alpha,i=0;!e.absolute&&e.webkitCompassHeading&&(t=360-t),e.absolute||void 0===window.orientation||(i=window.orientation),this._map.setBearing(t-i)}}),L.Map.addInitHook("addHandler","compassBearing",L.Map.CompassBearing),L.Map.mergeOptions({trackContainerMutation:!1}),L.Map.ContainerMutation=L.Handler.extend({addHooks:function(){this._observer||(this._observer=new MutationObserver(L.Util.bind(this._map.invalidateSize,this._map))),this._observer.observe(this._map.getContainer(),{childList:!1,attributes:!0,characterData:!1,subtree:!1,attributeFilter:["style"]})},removeHooks:function(){this._observer.disconnect()}}),L.Map.addInitHook("addHandler","trackContainerMutation",L.Map.ContainerMutation),L.Map.mergeOptions({bounceAtZoomLimits:!0}),L.Map.TouchGestures=L.Handler.extend({initialize:function(e){this._map=e,this.rotate=!!this._map.options.touchRotate,this.zoom=!!this._map.options.touchZoom},addHooks:function(){L.DomEvent.on(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){L.DomEvent.off(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(e){var t=this._map;if(e.touches&&2===e.touches.length&&!t._animatingZoom&&!this._zooming&&!this._rotating){var i=t.mouseEventToContainerPoint(e.touches[0]),r=t.mouseEventToContainerPoint(e.touches[1]),n=i.subtract(r);this._centerPoint=t.getSize()._divideBy(2),this._startLatLng=t.containerPointToLatLng(this._centerPoint),this.zoom?("center"!==t.options.touchZoom&&(this._pinchStartLatLng=t.containerPointToLatLng(i.add(r)._divideBy(2))),this._startDist=i.distanceTo(r),this._startZoom=t.getZoom(),this._zooming=!0):this._zooming=!1,this.rotate?(this._startTheta=Math.atan(n.x/n.y),this._startBearing=t.getBearing(),n.y<0&&(this._startBearing+=180),this._rotating=!0):this._rotating=!1,this._moved=!1,t._stop(),L.DomEvent.on(document,"touchmove",this._onTouchMove,this).on(document,"touchend touchcancel",this._onTouchEnd,this),L.DomEvent.preventDefault(e)}},_onTouchMove:function(e){if(e.touches&&2===e.touches.length&&(this._zooming||this._rotating)){var t,i=this._map,r=i.mouseEventToContainerPoint(e.touches[0]),n=i.mouseEventToContainerPoint(e.touches[1]),a=r.subtract(n),s=r.distanceTo(n)/this._startDist;if(this._rotating){var o=(Math.atan(a.x/a.y)-this._startTheta)*L.DomUtil.RAD_TO_DEG;a.y<0&&(o+=180),o&&i.setBearing(this._startBearing-o)}if(this._zooming)if(this._zoom=i.getScaleZoom(s,this._startZoom),!i.options.bounceAtZoomLimits&&(this._zoom<i.getMinZoom()&&s<1||this._zoom>i.getMaxZoom()&&s>1)&&(this._zoom=i._limitZoom(this._zoom)),"center"===i.options.touchZoom){if(this._center=this._startLatLng,1===s)return}else{if(t=r._add(n)._divideBy(2)._subtract(this._centerPoint),1===s&&0===t.x&&0===t.y)return;var l=-i.getBearing()*L.DomUtil.DEG_TO_RAD;this._center=i.unproject(i.project(this._pinchStartLatLng).subtract(t.rotate(l)))}this._moved||(i._moveStart(!0,!1),this._moved=!0),L.Util.cancelAnimFrame(this._animRequest);var c=i._move.bind(i,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=L.Util.requestAnimFrame(c,this,!0),L.DomEvent.preventDefault(e)}},_onTouchEnd:function(){this._moved&&(this._zooming||this._rotating)?(this._zooming=!1,this._rotating=!1,L.Util.cancelAnimFrame(this._animRequest),L.DomEvent.off(document,"touchmove",this._onTouchMove,this).off(document,"touchend touchcancel",this._onTouchEnd,this),this.zoom&&(this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom)))):this._zooming=!1}}),L.Map.addInitHook("addHandler","touchGestures",L.Map.TouchGestures),L.Map.mergeOptions({touchRotate:!1}),L.Map.TouchRotate=L.Handler.extend({addHooks:function(){this._map.touchGestures.enable(),this._map.touchGestures.rotate=!0},removeHooks:function(){this._map.touchGestures.rotate=!1}}),L.Map.addInitHook("addHandler","touchRotate",L.Map.TouchRotate),L.Map.mergeOptions({shiftKeyRotate:!0}),L.Map.ShiftKeyRotate=L.Handler.extend({addHooks:function(){L.DomEvent.on(this._map._container,"wheel",this._handleShiftScroll,this),this._map.shiftKeyRotate.rotate=!0},removeHooks:function(){L.DomEvent.off(this._map._container,"wheel",this._handleShiftScroll,this),this._map.shiftKeyRotate.rotate=!1},_handleShiftScroll:function(e){e.shiftKey?(e.preventDefault(),this._map.scrollWheelZoom.disable(),this._map.setBearing(this._map._bearing*L.DomUtil.RAD_TO_DEG+5*Math.sign(e.deltaY))):this._map.scrollWheelZoom.enable()}}),L.Map.addInitHook("addHandler","shiftKeyRotate",L.Map.ShiftKeyRotate),L.Map.addInitHook((function(){this.scrollWheelZoom.enabled()&&this.shiftKeyRotate.enabled()&&(this.scrollWheelZoom.disable(),this.scrollWheelZoom.enable())})),L.Map.mergeOptions({touchZoom:L.Browser.touch,bounceAtZoomLimits:!1}),L.Map.TouchZoom=L.Handler.extend({addHooks:function(){L.DomUtil.addClass(this._map._container,"leaflet-touch-zoom"),this._map.touchGestures.enable(),this._map.touchGestures.zoom=!0},removeHooks:function(){L.DomUtil.removeClass(this._map._container,"leaflet-touch-zoom"),this._map.touchGestures.zoom=!1}}),L.Map.addInitHook("addHandler","touchZoom",L.Map.TouchZoom),L.Control.Rotate=L.Control.extend({options:{position:"topleft",closeOnZeroBearing:!0},onAdd:function(e){var t=this._container=L.DomUtil.create("div","leaflet-control-rotate leaflet-bar"),i=this._arrow=L.DomUtil.create("span","leaflet-control-rotate-arrow");i.style.backgroundImage="url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E\")",i.style.cursor="grab",i.style.display="block",i.style.width="100%",i.style.height="100%",i.style.backgroundRepeat="no-repeat",i.style.backgroundPosition="50%";var r=this._link=L.DomUtil.create("a","leaflet-control-rotate-toggle",t);return r.appendChild(i),r.href="#",r.title="Rotate map",L.DomEvent.on(r,"dblclick",L.DomEvent.stopPropagation).on(r,"mousedown",this._handleMouseDown,this).on(r,"click",L.DomEvent.stop).on(r,"click",this._cycleState,this).on(r,"click",this._refocusOnMap,this),L.Browser.any3d||L.DomUtil.addClass(r,"leaflet-disabled"),this._restyle(),e.on("rotate",this._restyle,this),this._follow=!1,this._canFollow=!1,this.options.closeOnZeroBearing&&0===e.getBearing()&&(t.style.display="none"),t},onRemove:function(e){e.off("rotate",this._restyle,this)},_handleMouseDown:function(e){L.DomEvent.stop(e),this.dragging=!0,this.dragstartX=e.pageX,this.dragstartY=e.pageY,L.DomEvent.on(document,"mousemove",this._handleMouseDrag,this).on(document,"mouseup",this._handleMouseUp,this)},_handleMouseUp:function(e){L.DomEvent.stop(e),this.dragging=!1,L.DomEvent.off(document,"mousemove",this._handleMouseDrag,this).off(document,"mouseup",this._handleMouseUp,this)},_handleMouseDrag:function(e){if(this.dragging){var t=e.clientX-this.dragstartX;this._map.setBearing(t)}},_cycleState:function(e){if(this._map){var t=this._map;t.touchRotate.enabled()||t.compassBearing.enabled()?t.compassBearing.enabled()?(t.compassBearing.disable(),t.setBearing(0),this.options.closeOnZeroBearing&&t.touchRotate.enable()):(t.touchRotate.disable(),t.compassBearing.enable()):t.touchRotate.enable(),this._restyle()}},_restyle:function(){if(this._map.options.rotate){var e=this._map,t=e.getBearing();this._arrow.style.transform="rotate("+t+"deg)",t&&this.options.closeOnZeroBearing&&(this._container.style.display="block"),e.compassBearing.enabled()?this._link.style.backgroundColor="orange":e.touchRotate.enabled()?this._link.style.backgroundColor=null:(this._link.style.backgroundColor="grey",0===t&&this.options.closeOnZeroBearing&&(this._container.style.display="none"))}else L.DomUtil.addClass(this._link,"leaflet-disabled")}}),L.control.rotate=function(e){return new L.Control.Rotate(e)},L.Map.mergeOptions({rotateControl:!0}),L.Map.addInitHook((function(){if(this.options.rotateControl){var e="object"==typeof this.options.rotateControl?this.options.rotateControl:{};this.rotateControl=L.control.rotate(e),this.addControl(this.rotateControl)}}))}));createCommonjsModule((function(e,t){
|
|
1
|
+
var __awaiter=this&&this.__awaiter||function(e,t,i,r){function n(e){return e instanceof i?e:new i((function(t){t(e)}))}return new(i||(i=Promise))((function(i,a){function s(e){try{l(r.next(e))}catch(t){a(t)}}function o(e){try{l(r["throw"](e))}catch(t){a(t)}}function l(e){e.done?i(e.value):n(e.value).then(s,o)}l((r=r.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var i={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,n,a,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(e){return function(t){return l([e,t])}}function l(o){if(r)throw new TypeError("Generator is already executing.");while(s&&(s=0,o[0]&&(i=0)),i)try{if(r=1,n&&(a=o[0]&2?n["return"]:o[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,o[1])).done)return a;if(n=0,a)o=[o[0]&2,a.value];switch(o[0]){case 0:case 1:a=o;break;case 4:i.label++;return{value:o[1],done:false};case 5:i.label++;n=o[1];o=[0];continue;case 7:o=i.ops.pop();i.trys.pop();continue;default:if(!(a=i.trys,a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){i=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){i.label=o[1];break}if(o[0]===6&&i.label<a[1]){i.label=a[1];a=o;break}if(a&&i.label<a[2]){i.label=a[2];i.ops.push(o);break}if(a[2])i.ops.pop();i.trys.pop();continue}o=t.call(e,i)}catch(l){o=[6,l];n=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};var __spreadArray=this&&this.__spreadArray||function(e,t,i){if(i||arguments.length===2)for(var r=0,n=t.length,a;r<n;r++){if(a||!(r in t)){if(!a)a=Array.prototype.slice.call(t,0,r);a[r]=t[r]}}return e.concat(a||Array.prototype.slice.call(t))};import{r as registerInstance,h,H as Host,c as createEvent,i as getAssetPath,g as getElement}from"./index-0501fe42.js";import{t as translate}from"./i18n-0c0e7b27.js";import{t as treksFilters,s as state,h as handleTreksFiltersAndSearch,a as touristicContentsFilters,b as touristicEventsFilters,c as handleTouristicContentsFiltersAndSearch,d as handleTouristicEventsFiltersAndSearch,e as createCommonjsModule,l as leafletSrc,f as commonjsGlobal,g as bundle,o as onChange,i as getDataInStore,j as arrayBufferToBlob,k as getAllDataInStore,m as setFilesFromStore,n as imagesRegExp,w as writeOrUpdateTilesInStore,p as writeOrUpdateDataInStore,q as writeOrUpdateFilesInStore,u as formatDuration,v as formatLength,x as formatAscent,y as formatDescent,z as durations,A as lengths,B as elevations}from"./utils-ebfa8564.js";import{g as getTrekGeometry,a as getWindow,n as nextTick,b as now,c as getDocument,d as createElementIfNotDefined,e as createElement,f as elementOffset,h as elementTransitionEnd,S as Swiper,N as Navigation,P as Pagination,K as Keyboard,i as getTreksList,j as getDistricts,k as getTrek,t as trekIsAvailableOffline}from"./pagination-3428bda5.js";var grwCommonButtonCss='.material-symbols{font-family:"Material Symbols Outlined"}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48}.common-button{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;-webkit-tap-highlight-color:transparent;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;color:var(--color-on-primary-container);background-color:var(--color-primary-container);padding:12px 24px;border-radius:var(--border-radius, 20px);-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;gap:8px;white-space:nowrap;line-height:20px;letter-spacing:0.1px;font-family:var(--font-family);font-size:14px;font-weight:500;-webkit-box-shadow:var(--elevation-1);box-shadow:var(--elevation-1);-webkit-transition:-webkit-box-shadow 0.2s ease-in-out 0s;transition:-webkit-box-shadow 0.2s ease-in-out 0s;transition:box-shadow 0.2s ease-in-out 0s;transition:box-shadow 0.2s ease-in-out 0s, -webkit-box-shadow 0.2s ease-in-out 0s}.common-button .common-button-icon{font-size:18px}';var GrwCommonButton=function(){function e(e){registerInstance(this,e);this.action=undefined;this.icon=undefined;this.name=undefined;this.fontFamily="Roboto"}e.prototype.render=function(){var e=this;return h(Host,{style:{"--font-family":this.fontFamily}},h("button",{part:"common-button",class:"common-button",onClick:function(){return e.action()}},h("span",{part:"common-button-icon",class:"material-symbols material-symbols-outlined icon",translate:false},this.icon),h("span",{part:"common-button-label",class:"label"},this.name)))};return e}();GrwCommonButton.style=grwCommonButtonCss;var grwExtendedFabCss='.material-symbols{font-family:"Material Symbols Outlined"}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48}.map-visibility-button{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;text-decoration:none;padding:16px;background-color:var(--fab-background-color);color:var(--fab-color);-webkit-box-shadow:var(--elevation-1);box-shadow:var(--elevation-1);border-radius:var(--border-radius, 12px);height:56px;font-family:var(--font-family);font-size:16px;width:unset}.map-visibility-button:hover{-webkit-box-shadow:var(--elevation-4);box-shadow:var(--elevation-4)}.map-visibility-button .icon{font-size:24px;margin-right:8px;color:var(--fab-color)}';var GrwExtendedFab=function(){function e(e){registerInstance(this,e);this.action=undefined;this.icon=undefined;this.name=undefined;this.display=undefined;this.fontFamily="Roboto"}e.prototype.render=function(){var e=this;return h(Host,{style:{"--font-family":this.fontFamily}},h("button",{part:"map-visibility-button",class:"map-visibility-button",onClick:function(){return e.action()},style:{display:this.display}},h("span",{part:"map-visibility-button-icon",class:"material-symbols material-symbols-outlined icon",translate:false},this.icon()),h("span",{part:"map-visibility-button-label",class:"label"},this.name())))};return e}();GrwExtendedFab.style=grwExtendedFabCss;var grwFiltersCss='.options-container{height:100%;position:absolute;width:100%;z-index:1100;top:0px}.filters-container{background-color:var(--color-background);position:relative;width:100%;height:100%;z-index:1100}.filters-container .filters-treks-container,.filters-container .filters-touristic-contents-container,.filters-container .filters-touristic-events-container{height:100%}.filters-container .segmented-buttons-container{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;width:calc(100% - 32px);height:40px;margin:16px;border:1px solid var(--color-outline);border-radius:var(--border-radius, 20px);line-height:20px}.filters-container .segmented-buttons-container .segment{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:14px;font-weight:500;-webkit-tap-highlight-color:transparent;color:var(--color-on-surface-variant);background-color:transparent;border-radius:0px;min-width:40px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;font-family:var(--font-family)}.filters-container .segmented-buttons-container .segment:first-child{border-top-left-radius:var(--border-radius, 20px);border-bottom-left-radius:var(--border-radius, 20px)}.filters-container .segmented-buttons-container .segment:not(:last-child){border-right:1px solid var(--color-outline)}.filters-container .segmented-buttons-container .segment:last-child{border-top-right-radius:var(--border-radius, 20px);border-bottom-right-radius:var(--border-radius, 20px)}.filters-container .segmented-buttons-container .selected-segment{color:var(--color-on-primary-container);background-color:var(--color-primary-container)}.filters-segment-container{overflow-y:visible;height:100%;max-height:calc(100% - 64px - 42px - 32px)}.back-filters-container{background-color:rgba(0, 0, 0, 0.5);width:100%;height:100%;position:absolute;z-index:1099}.divider{margin:16px;border-top:1px solid var(--color-outline)}.filters-options-container{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;height:64px;margin:0px 16px}.filters-options-container .filters-options-buttons-container{display:-ms-flexbox;display:flex}.filters-options-container .filters-options-buttons-container .filter-option-button{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:14px;font-weight:500;margin:8px 0px 0px 8px;padding:8px 16px;height:32px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-webkit-box-shadow:var(--elevation-0);box-shadow:var(--elevation-0);border:none;-webkit-tap-highlight-color:transparent;line-height:20px;color:var(--color-primary-app);background-color:transparent;font-family:var(--font-family)}.segment-container{overflow:scroll;height:100%}.filter-container:not(:last-child)::after{content:"";display:block;margin:16px;border-top:1px solid var(--color-outline)}.filter-container:last-child{margin-bottom:16px}.current-treks-within-bounds-length{color:var(--color-on-surface-variant);font-family:var(--font-family)}';var GrwFilters=function(){function e(e){registerInstance(this,e);this.resetFilter=createEvent(this,"resetFilter",7);this.selectedSegment="selectedActivitiesFilters";this.handleFilters=undefined;this.fontFamily="Roboto"}e.prototype.handleEraseTreksFilters=function(){treksFilters.forEach((function(e){state[e.property].forEach((function(e){return e.selected=false}))}));state.selectedActivitiesFilters=0;state.selectedThemesFilters=0;state.selectedLocationFilters=0;state.currentTreks=handleTreksFiltersAndSearch();this.resetFilter.emit()};e.prototype.handleOkTreksFilters=function(){this.handleFilters()};e.prototype.handleSelectedSegment=function(e){this.selectedSegment=e};e.prototype.handleSegment=function(e){if(state.mode==="treks"){return treksFilters.filter((function(t){return t.segment===e})).some((function(e){return state[e.property]&&state[e.property].length>0}))}else if(state.mode==="touristicContents"){return touristicContentsFilters.filter((function(t){return t.segment===e})).some((function(e){return state[e.property]&&state[e.property].length>0}))}else if(state.mode==="touristicEvents"){return touristicEventsFilters.filter((function(t){return t.segment===e})).some((function(e){return state[e.property]&&state[e.property].length>0}))}};e.prototype.handleEraseTouristicContentsFilters=function(){touristicContentsFilters.forEach((function(e){state[e.property].forEach((function(e){return e.selected=false}))}));state.selectedActivitiesFilters=0;state.selectedLocationFilters=0;state.currentTouristicContents=handleTouristicContentsFiltersAndSearch();this.resetFilter.emit()};e.prototype.handleOkTouristicContentsFilters=function(){this.handleFilters()};e.prototype.handleEraseTouristicEventsFilters=function(){touristicEventsFilters.forEach((function(e){state[e.property].forEach((function(e){return e.selected=false}))}));state.selectedActivitiesFilters=0;state.selectedLocationFilters=0;state.currentTouristicEvents=handleTouristicEventsFiltersAndSearch();this.resetFilter.emit()};e.prototype.handleOkTouristicEventsFilters=function(){this.handleFilters()};e.prototype.render=function(){var e=this;return h(Host,{style:{"--font-family":this.fontFamily}},h("div",{part:"options-container",class:"options-container"},h("div",{part:"filters-container",class:"filters-container"},state.mode==="treks"&&h("div",{part:"filters-treks-container",class:"filters-treks-container"},h("div",{part:"filters-options-container",class:"filters-options-container"},state.treksWithinBounds&&h("div",{part:"current-treks-within-bounds-length",class:"current-treks-within-bounds-length"},"".concat(state.treksWithinBounds.length," ").concat(state.treksWithinBounds.length>1?translate[state.language].treks:translate[state.language].trek)),h("div",{part:"filters-options-buttons-container",class:"filters-options-buttons-container"},h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleEraseTreksFilters()}},translate[state.language].erase),h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleOkTreksFilters()}},translate[state.language].ok))),h("div",{part:"segmented-buttons-container",class:"segmented-buttons-container"},this.handleSegment("selectedActivitiesFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedActivitiesFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedActivitiesFilters")}},translate[state.language].home.segment.treks," ",state.selectedActivitiesFilters!==0&&"(".concat(state.selectedActivitiesFilters,")")),this.handleSegment("selectedThemesFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedThemesFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedThemesFilters")}},translate[state.language].themes," ",state.selectedThemesFilters!==0&&"(".concat(state.selectedThemesFilters,")")),this.handleSegment("selectedLocationFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedLocationFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedLocationFilters")}},translate[state.language].location," ",state.selectedLocationFilters!==0&&"(".concat(state.selectedLocationFilters,")"))),h("div",{part:"filters-segment-container",class:"filters-segment-container"},this.selectedSegment==="selectedActivitiesFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"treks-activities-segment-container"},state["practices"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].practice,filterType:"practices",filterNameProperty:"name",segment:"selectedActivitiesFilters",filterPlaceholder:translate[state.language].placeholderPractices})),state["difficulties"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].difficulty,filterType:"difficulties",filterNameProperty:"label",segment:"selectedActivitiesFilters"})),state["durations"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].duration,filterType:"durations",filterNameProperty:"name",segment:"selectedActivitiesFilters"})),state["lengths"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].length,filterType:"lengths",filterNameProperty:"name",segment:"selectedActivitiesFilters"})),state["elevations"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].elevation,filterType:"elevations",filterNameProperty:"name",segment:"selectedActivitiesFilters"})),state["routes"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].routes,filterType:"routes",filterNameProperty:"route",segment:"selectedActivitiesFilters"})),state["accessibilities"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].accessibility,filterType:"accessibilities",filterNameProperty:"name",segment:"selectedActivitiesFilters"})),state["labels"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].activities,filterType:"labels",filterNameProperty:"name",segment:"selectedActivitiesFilters"}))),this.selectedSegment==="selectedThemesFilters"&&h("div",{part:"filter-container",class:"segment-container",key:"treks-themes-segment-container"},state["themes"].length>0&&h("div",{part:"",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].themes,filterPlaceholder:translate[state.language].placeholderThemes,filterType:"themes",filterNameProperty:"label",segment:"selectedThemesFilters"}))),this.selectedSegment==="selectedLocationFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"treks-location-segment-container"},state["districts"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].districts,filterType:"districts",filterNameProperty:"name",segment:"selectedLocationFilters"})),state["cities"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].crossedCities,filterPlaceholder:translate[state.language].placeholderCrossedCities,filterType:"cities",filterNameProperty:"name",segment:"selectedLocationFilters"}))))),state.mode==="touristicContents"&&h("div",{part:"filters-touristic-contents-container",class:"filters-touristic-contents-container"},h("div",{part:"filters-options-container",class:"filters-options-container"},state.touristicContentsWithinBounds&&h("div",{part:"current-treks-within-bounds-length",class:"current-treks-within-bounds-length"},"".concat(state.touristicContentsWithinBounds.length," ").concat(state.touristicContentsWithinBounds.length>1?translate[state.language].home.touristicContents:translate[state.language].home.touristicContent)),h("div",{part:"filters-options-buttons-container",class:"filters-options-buttons-container"},h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleEraseTouristicContentsFilters()}},translate[state.language].erase),h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleOkTouristicContentsFilters()}},translate[state.language].ok))),h("div",{part:"segmented-buttons-container",class:"segmented-buttons-container"},this.handleSegment("selectedActivitiesFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedActivitiesFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedActivitiesFilters")}},translate[state.language].services," ",state.selectedActivitiesFilters!==0&&"(".concat(state.selectedActivitiesFilters,")")),this.handleSegment("selectedLocationFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedLocationFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedLocationFilters")}},translate[state.language].location," ",state.selectedLocationFilters!==0&&"(".concat(state.selectedLocationFilters,")"))),h("div",{part:"filters-segment-container",class:"filters-segment-container"},this.selectedSegment==="selectedActivitiesFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"touristic-contents-activities-segment-container"},state["touristicContentCategories"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].category,filterType:"touristicContentCategories",filterNameProperty:"label",segment:"selectedActivitiesFilters"}))),this.selectedSegment==="selectedLocationFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"touristic-contents-location-segment-container"},state["districts"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].districts,filterType:"districts",filterNameProperty:"name",segment:"selectedLocationFilters"})),state["cities"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].crossedCities,filterPlaceholder:translate[state.language].placeholderCrossedCities,filterType:"cities",filterNameProperty:"name",segment:"selectedLocationFilters"}))))),state.mode==="touristicEvents"&&h("div",{part:"filters-touristic-events-container",class:"filters-touristic-events-container"},h("div",{part:"filters-options-container",class:"filters-options-container"},state.touristicEventsWithinBounds&&h("div",{part:"current-treks-within-bounds-length",class:"current-treks-within-bounds-length"},"".concat(state.touristicEventsWithinBounds.length," ").concat(state.touristicEventsWithinBounds.length>1?translate[state.language].home.touristicEvents:translate[state.language].home.touristicEvent)),h("div",{part:"filters-options-buttons-container",class:"filters-options-buttons-container"},h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleEraseTouristicEventsFilters()}},translate[state.language].erase),h("button",{part:"filter-option-button",class:"filter-option-button",onClick:function(){return e.handleOkTouristicEventsFilters()}},translate[state.language].ok))),h("div",{part:"segmented-buttons-container",class:"segmented-buttons-container"},this.handleSegment("selectedActivitiesFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedActivitiesFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedActivitiesFilters")}},translate[state.language].services," ",state.selectedActivitiesFilters!==0&&"(".concat(state.selectedActivitiesFilters,")")),this.handleSegment("selectedLocationFilters")&&h("label",{part:"segment",class:"segment".concat(this.selectedSegment==="selectedLocationFilters"?" selected-segment":""),onClick:function(){return e.handleSelectedSegment("selectedLocationFilters")}},translate[state.language].location," ",state.selectedLocationFilters!==0&&"(".concat(state.selectedLocationFilters,")"))),h("div",{part:"filters-segment-container",class:"filters-segment-container"},this.selectedSegment==="selectedActivitiesFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"touristic-contents-activities-segment-container"},state["touristicEventTypes"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].type,filterPlaceholder:translate[state.language].placeholderType,filterType:"touristicEventTypes",filterNameProperty:"type",segment:"selectedActivitiesFilters"}))),this.selectedSegment==="selectedLocationFilters"&&h("div",{part:"segment-container",class:"segment-container",key:"touristic-events-location-segment-container"},state["districts"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].districts,filterType:"districts",filterNameProperty:"name",segment:"selectedLocationFilters"})),state["cities"].length>0&&h("div",{part:"filter-container",class:"filter-container"},h("grw-filter",{exportparts:"filter-name,filter-button-container,filter-select,filter-button,elected-filter-icon,filter-label",fontFamily:this.fontFamily,filterName:translate[state.language].crossedCities,filterPlaceholder:translate[state.language].placeholderCrossedCities,filterType:"cities",filterNameProperty:"name",segment:"selectedLocationFilters"})))))),h("div",{part:"back-filters-container",class:"back-filters-container",onClick:function(){return e.handleFilters()}})))};return e}();GrwFilters.style=grwFiltersCss;var grwLoaderCss=".loader{width:48px;height:48px;border:5px solid var(--color-primary-container);border-bottom-color:var(--color-on-primary-container);border-radius:50%;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-animation:rotation 1s linear infinite;animation:rotation 1s linear infinite}@-webkit-keyframes rotation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rotation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}";var GrwLoader=function(){function e(e){registerInstance(this,e);this.colorPrimaryContainer="#eaddff";this.colorOnPrimaryContainer="#21005e"}e.prototype.render=function(){return h(Host,{style:{"--color-primary-container":this.colorPrimaryContainer,"--color-on-primary-container":this.colorOnPrimaryContainer}},h("span",{part:"loader",class:"loader"}))};return e}();GrwLoader.style=grwLoaderCss;!function(e){"function"==typeof define&&define.amd?define(e):e()}((function(){var e=L.extend({},L.DomUtil);L.extend(L.DomUtil,{setTransform:function(t,i,r,n,a){var s=i||new L.Point(0,0);if(!n)return i=s._round(),e.setTransform.apply(this,arguments);s=s.rotateFrom(n,a),t.style[L.DomUtil.TRANSFORM]="translate3d("+s.x+"px,"+s.y+"px,0)"+(r?" scale("+r+")":"")+" rotate("+n+"rad)"},setPosition:function(t,i,r,n,a){if(!r)return e.setPosition.apply(this,arguments);t._leaflet_pos=i,L.Browser.any3d?L.DomUtil.setTransform(t,i,a,r,n):(t.style.left=i.x+"px",t.style.top=i.y+"px")},DEG_TO_RAD:Math.PI/180,RAD_TO_DEG:180/Math.PI}),L.Draggable.include({}),L.extend(L.Point.prototype,{rotate:function(e){return this.rotateFrom(e,new L.Point(0,0))},rotateFrom:function(e,t){if(!e)return this;var i=Math.sin(e),r=Math.cos(e),n=t.x,a=t.y,s=this.x-n,o=this.y-a;return new L.Point(s*r-o*i+n,s*i+o*r+a)}});var t=L.extend({},L.DivOverlay.prototype);L.DivOverlay.include({getEvents:function(){return L.extend(t.getEvents.apply(this,arguments),{rotate:this._updatePosition})},_updatePosition:function(){if(this._map&&(t._updatePosition.apply(this,arguments),this._map&&this._map._rotate&&this._zoomAnimated)){var e=this._getAnchor(),i=L.DomUtil.getPosition(this._container).subtract(e);L.DomUtil.setPosition(this._container,this._map.rotatedPointToMapPanePoint(i).add(e))}}});var i=L.extend({},L.Popup.prototype);L.Popup.include({_animateZoom:function(e){if(i._animateZoom.apply(this,arguments),this._map&&this._map._rotate){var t=this._getAnchor(),r=L.DomUtil.getPosition(this._container).subtract(t);L.DomUtil.setPosition(this._container,this._map.rotatedPointToMapPanePoint(r).add(t))}},_adjustPan:function(){if(!(!this.options.autoPan||this._map._panAnim&&this._map._panAnim._inProgress))if(this._autopanning)this._autopanning=!1;else{var e=this._map,t=parseInt(L.DomUtil.getStyle(this._container,"marginBottom"),10)||0,i=this._container.offsetHeight+t,r=this._containerWidth,n=new L.Point(this._containerLeft,-i-this._containerBottom);n._add(L.DomUtil.getPosition(this._container));var a=n._add(this._map._getMapPanePos()),s=L.point(this.options.autoPanPadding),o=L.point(this.options.autoPanPaddingTopLeft||s),l=L.point(this.options.autoPanPaddingBottomRight||s),c=e.getSize(),p=0,u=0;a.x+r+l.x>c.x&&(p=a.x+r-c.x+l.x),a.x-p-o.x<0&&(p=a.x-o.x),a.y+i+l.y>c.y&&(u=a.y+i-c.y+l.y),a.y-u-o.y<0&&(u=a.y-o.y),(p||u)&&(this.options.keepInView&&(this._autopanning=!0),e.fire("autopanstart").panBy([p,u]))}}});var r=L.extend({},L.Tooltip.prototype);L.Tooltip.include({_animateZoom:function(e){if(!this._map._rotate)return r._animateZoom.apply(this,arguments);var t=this._map._latLngToNewLayerPoint(this._latlng,e.zoom,e.center);t=this._map.rotatedPointToMapPanePoint(t),this._setPosition(t)},_updatePosition:function(){if(!this._map._rotate)return r._updatePosition.apply(this,arguments);var e=this._map.latLngToLayerPoint(this._latlng);e=this._map.rotatedPointToMapPanePoint(e),this._setPosition(e)}}),L.extend({},L.Icon.prototype),L.Icon.include({_setIconStyles:function(e,t){var i=this.options,r=i[t+"Size"];"number"==typeof r&&(r=[r,r]);var n=L.point(r),a=L.point("shadow"===t&&i.shadowAnchor||i.iconAnchor||n&&n.divideBy(2,!0));e.className="leaflet-marker-"+t+" "+(i.className||""),a&&(e.style.marginLeft=-a.x+"px",e.style.marginTop=-a.y+"px",e.style[L.DomUtil.TRANSFORM+"Origin"]=a.x+"px "+a.y+"px 0px"),n&&(e.style.width=n.x+"px",e.style.height=n.y+"px")}});var n=L.extend({},L.Marker.prototype);var a;L.Marker.mergeOptions({rotation:0,rotateWithView:!1,scale:void 0});var s={_onDrag:function(e){var t=this._marker,i=t.options.rotation||t.options.rotateWithView,r=t._shadow,n=L.DomUtil.getPosition(t._icon);!i&&r&&L.DomUtil.setPosition(r,n),t._map._rotate&&(n=t._map.mapPanePointToRotatedPoint(n));var a=t._map.layerPointToLatLng(n);t._latlng=a,e.latlng=a,e.oldLatLng=this._oldLatLng,i?t.setLatLng(a):t.fire("move",e),t.fire("drag",e)},_onDragEnd:function(e){this._marker._map._rotate&&this._marker.update(),a._onDragEnd.apply(this,arguments)}};L.Marker.include({getEvents:function(){return L.extend(n.getEvents.apply(this,arguments),{rotate:this.update})},_initInteraction:function(){var e=n._initInteraction.apply(this,arguments);return this.dragging&&this.dragging.enabled()&&this._map&&this._map._rotate&&(a=a||Object.getPrototypeOf(this.dragging),this.dragging.disable(),Object.assign(this.dragging,{_onDrag:s._onDrag.bind(this.dragging),_onDragEnd:s._onDragEnd.bind(this.dragging)}),this.dragging.enable()),e},_setPos:function(e){this._map._rotate&&(e=this._map.rotatedPointToMapPanePoint(e));var t=this.options.rotation||0;this.options.rotateWithView&&(t+=this._map._bearing),this._icon&&L.DomUtil.setPosition(this._icon,e,t,e,this.options.scale),this._shadow&&L.DomUtil.setPosition(this._shadow,e,t,e,this.options.scale),this._zIndex=e.y+this.options.zIndexOffset,this._resetZIndex()},setRotation:function(e){this.options.rotation=e,this.update()}});var o=L.extend({},L.GridLayer.prototype);L.GridLayer.include({getEvents:function(){var e=o.getEvents.apply(this,arguments);return this._map._rotate&&!this.options.updateWhenIdle&&(this._onRotate||(this._onRotate=L.Util.throttle(this._onMoveEnd,this.options.updateInterval,this)),e.rotate=this._onRotate),e},_getTiledPixelBounds:function(e){return this._map._rotate?this._map._getNewPixelBounds(e,this._tileZoom):o._getTiledPixelBounds.apply(this,arguments)}});var l=L.extend({},L.Renderer.prototype);L.Renderer.include({getEvents:function(){return L.extend(l.getEvents.apply(this,arguments),{rotate:this._update})},onAdd:function(){l.onAdd.apply(this,arguments),L.version<="1.9.3"&&this._container.classList.add("leaflet-zoom-animated")},_updateTransform:function(e,t){if(!this._map._rotate)return l._updateTransform.apply(this,arguments);var i=this._map.getZoomScale(t,this._zoom),r=this._map._latLngToNewLayerPoint(this._topLeft,t,e);L.DomUtil.setTransform(this._container,r,i)},_update:function(){if(!this._map._rotate)return l._update.apply(this,arguments);this._bounds=this._map._getPaddedPixelBounds(this.options.padding),this._topLeft=this._map.layerPointToLatLng(this._bounds.min),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}});var c=L.extend({},L.Map.prototype);L.Map.mergeOptions({rotate:!1,bearing:0}),L.Map.include({initialize:function(e,t){t.rotate&&(this._rotate=!0,this._bearing=0),c.initialize.apply(this,arguments),this.options.rotate&&this.setBearing(this.options.bearing)},containerPointToLayerPoint:function(e){return this._rotate?L.point(e).subtract(this._getMapPanePos()).rotateFrom(-this._bearing,this._getRotatePanePos()).subtract(this._getRotatePanePos()):c.containerPointToLayerPoint.apply(this,arguments)},layerPointToContainerPoint:function(e){return this._rotate?L.point(e).add(this._getRotatePanePos()).rotateFrom(this._bearing,this._getRotatePanePos()).add(this._getMapPanePos()):c.layerPointToContainerPoint.apply(this,arguments)},rotatedPointToMapPanePoint:function(e){return L.point(e).rotate(this._bearing)._add(this._getRotatePanePos())},mapPanePointToRotatedPoint:function(e){return L.point(e)._subtract(this._getRotatePanePos()).rotate(-this._bearing)},mapBoundsToContainerBounds:function(e){if(!this._rotate&&c.mapBoundsToContainerBounds)return c.mapBoundsToContainerBounds.apply(this,arguments);var t=this.getPixelOrigin(),i=this.layerPointToContainerPoint(this.project(e.getNorthWest())._subtract(t)),r=this.layerPointToContainerPoint(this.project(e.getNorthEast())._subtract(t)),n=this.layerPointToContainerPoint(this.project(e.getSouthWest())._subtract(t)),a=this.layerPointToContainerPoint(this.project(e.getSouthEast())._subtract(t));return L.bounds([L.point(Math.min(i.x,r.x,a.x,n.x),Math.min(i.y,r.y,a.y,n.y)),L.point(Math.max(i.x,r.x,a.x,n.x),Math.max(i.y,r.y,a.y,n.y))])},getBounds:function(){if(!this._rotate)return c.getBounds.apply(this,arguments);var e=this.getSize();return new L.LatLngBounds([this.containerPointToLatLng([0,0]),this.containerPointToLatLng([e.x,0]),this.containerPointToLatLng([e.x,e.y]),this.containerPointToLatLng([0,e.y])])},setBearing:function(e){if(L.Browser.any3d&&this._rotate){var t=L.Util.wrapNum(e,[0,360])*L.DomUtil.DEG_TO_RAD,i=this._getPixelCenter(),r=this._getRotatePanePos().rotateFrom(-this._bearing,i),n=r.rotateFrom(t,i);L.DomUtil.setPosition(this._rotatePane,r,t,i),this._pivot=i,this._bearing=t,this._rotatePanePos=n,this.fire("rotate")}},getBearing:function(){return this._bearing*L.DomUtil.RAD_TO_DEG},_initPanes:function(){var e=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),L.DomUtil.setPosition(this._mapPane,new L.Point(0,0)),this._rotate?(this._rotatePane=this.createPane("rotatePane",this._mapPane),this._norotatePane=this.createPane("norotatePane",this._mapPane),this.createPane("tilePane",this._rotatePane),this.createPane("overlayPane",this._rotatePane),this.createPane("shadowPane",this._norotatePane),this.createPane("markerPane",this._norotatePane),this.createPane("tooltipPane",this._norotatePane),this.createPane("popupPane",this._norotatePane)):(this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane")),this.options.markerZoomAnimation||(L.DomUtil.addClass(e.markerPane,"leaflet-zoom-hide"),L.DomUtil.addClass(e.shadowPane,"leaflet-zoom-hide"))},panInside:function(e,t){if(!this._rotate||Math.abs(this._bearing).toFixed(1)<.1)return c.panInside.apply(this,arguments);t=t||{};var i=L.point(t.paddingTopLeft||t.padding||[0,0]),r=L.point(t.paddingBottomRight||t.padding||[0,0]),n=this._container.getBoundingClientRect(),a=this.latLngToContainerPoint(e),s=L.bounds([L.point(n),L.point(n).add(this.getSize())]),o=s.getCenter(),l=L.bounds([s.min.add(i),s.max.subtract(r)]),p=l.getSize();if(!l.contains(a)){this._enforcingBounds=!0;var u=a.subtract(l.getCenter()),d=l.extend(a).getSize().subtract(p);o.x+=u.x<0?-d.x:d.x,o.y+=u.y<0?-d.y:d.y,this.panTo(this.containerPointToLatLng(o),t),this._enforcingBounds=!1}return this},getBoundsZoom:function(e,t,i){if(!this._rotate||Math.abs(this._bearing).toFixed(1)<.1)return c.getBoundsZoom.apply(this,arguments);e=L.latLngBounds(e),i=L.point(i||[0,0]);var r=this.getZoom()||0;var n=this.getMinZoom(),a=this.getMaxZoom(),s=this.getSize().subtract(i),o=this.mapBoundsToContainerBounds(e).getSize(),l=this.options.zoomSnap,p=s.x/o.x,u=s.y/o.y,d=t?Math.max(p,u):Math.min(p,u);return r=this.getScaleZoom(d,r),l&&(r=Math.round(r/(l/100))*(l/100),r=t?Math.ceil(r/l)*l:Math.floor(r/l)*l),Math.max(n,Math.min(a,r))},_getCenterOffset:function(e){var t=c._getCenterOffset.apply(this,arguments);return this._rotate&&(t=t.rotate(this._bearing)),t},_getRotatePanePos:function(){return this._rotatePanePos||new L.Point(0,0)},_getNewPixelOrigin:function(e,t){if(!this._rotate)return c._getNewPixelOrigin.apply(this,arguments);var i=this.getSize()._divideBy(2);return this.project(e,t).rotate(this._bearing)._subtract(i)._add(this._getMapPanePos())._add(this._getRotatePanePos()).rotate(-this._bearing)._round()},_getNewPixelBounds:function(e,t){if(e=e||this.getCenter(),t=t||this.getZoom(),!this._rotate&&c._getNewPixelBounds)return c._getNewPixelBounds.apply(this,arguments);var i=this._animatingZoom?Math.max(this._animateToZoom,this.getZoom()):this.getZoom(),r=this.getZoomScale(i,t),n=this.project(e,t).floor(),a=this.getSize(),s=new L.Bounds([this.containerPointToLayerPoint([0,0]).floor(),this.containerPointToLayerPoint([a.x,0]).floor(),this.containerPointToLayerPoint([0,a.y]).floor(),this.containerPointToLayerPoint([a.x,a.y]).floor()]).getSize().divideBy(2*r);return new L.Bounds(n.subtract(s),n.add(s))},_getPixelCenter:function(){return!this._rotate&&c._getPixelCenter?c._getPixelCenter.apply(this,arguments):this.getSize()._divideBy(2)._subtract(this._getMapPanePos())},_getPaddedPixelBounds:function(e){if(!this._rotate&&c._getPaddedPixelBounds)return c._getPaddedPixelBounds.apply(this,arguments);var t=e,i=this.getSize(),r=i.multiplyBy(-t),n=i.multiplyBy(1+t);return new L.Bounds([this.containerPointToLayerPoint([r.x,r.y]).floor(),this.containerPointToLayerPoint([r.x,n.y]).floor(),this.containerPointToLayerPoint([n.x,r.y]).floor(),this.containerPointToLayerPoint([n.x,n.y]).floor()])},_handleGeolocationResponse:function(e){if(this._container._leaflet_id){var t=e.coords.latitude,i=e.coords.longitude,r=e.coords.heading,n=new L.LatLng(t,i),a=n.toBounds(e.coords.accuracy),s=this._locateOptions;if(s.setView){var o=this.getBoundsZoom(a);this.setView(n,s.maxZoom?Math.min(o,s.maxZoom):o)}var l={latlng:n,bounds:a,timestamp:e.timestamp,heading:r};for(var c in e.coords)"number"==typeof e.coords[c]&&(l[c]=e.coords[c]);this.fire("locationfound",l)}}}),L.Map.CompassBearing=L.Handler.extend({initialize:function(e){this._map=e,"ondeviceorientationabsolute"in window?this.__deviceOrientationEvent="deviceorientationabsolute":"ondeviceorientation"in window&&(this.__deviceOrientationEvent="deviceorientation"),this._throttled=L.Util.throttle(this._onDeviceOrientation,100,this)},addHooks:function(){this._map._rotate&&this.__deviceOrientationEvent?L.DomEvent.on(window,this.__deviceOrientationEvent,this._throttled,this):this.disable()},removeHooks:function(){this._map._rotate&&this.__deviceOrientationEvent&&L.DomEvent.off(window,this.__deviceOrientationEvent,this._throttled,this)},_onDeviceOrientation:function(e){var t=e.webkitCompassHeading||e.alpha,i=0;!e.absolute&&e.webkitCompassHeading&&(t=360-t),e.absolute||void 0===window.orientation||(i=window.orientation),this._map.setBearing(t-i)}}),L.Map.addInitHook("addHandler","compassBearing",L.Map.CompassBearing),L.Map.mergeOptions({trackContainerMutation:!1}),L.Map.ContainerMutation=L.Handler.extend({addHooks:function(){this._observer||(this._observer=new MutationObserver(L.Util.bind(this._map.invalidateSize,this._map))),this._observer.observe(this._map.getContainer(),{childList:!1,attributes:!0,characterData:!1,subtree:!1,attributeFilter:["style"]})},removeHooks:function(){this._observer.disconnect()}}),L.Map.addInitHook("addHandler","trackContainerMutation",L.Map.ContainerMutation),L.Map.mergeOptions({bounceAtZoomLimits:!0}),L.Map.TouchGestures=L.Handler.extend({initialize:function(e){this._map=e,this.rotate=!!this._map.options.touchRotate,this.zoom=!!this._map.options.touchZoom},addHooks:function(){L.DomEvent.on(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){L.DomEvent.off(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(e){var t=this._map;if(e.touches&&2===e.touches.length&&!t._animatingZoom&&!this._zooming&&!this._rotating){var i=t.mouseEventToContainerPoint(e.touches[0]),r=t.mouseEventToContainerPoint(e.touches[1]),n=i.subtract(r);this._centerPoint=t.getSize()._divideBy(2),this._startLatLng=t.containerPointToLatLng(this._centerPoint),this.zoom?("center"!==t.options.touchZoom&&(this._pinchStartLatLng=t.containerPointToLatLng(i.add(r)._divideBy(2))),this._startDist=i.distanceTo(r),this._startZoom=t.getZoom(),this._zooming=!0):this._zooming=!1,this.rotate?(this._startTheta=Math.atan(n.x/n.y),this._startBearing=t.getBearing(),n.y<0&&(this._startBearing+=180),this._rotating=!0):this._rotating=!1,this._moved=!1,t._stop(),L.DomEvent.on(document,"touchmove",this._onTouchMove,this).on(document,"touchend touchcancel",this._onTouchEnd,this),L.DomEvent.preventDefault(e)}},_onTouchMove:function(e){if(e.touches&&2===e.touches.length&&(this._zooming||this._rotating)){var t,i=this._map,r=i.mouseEventToContainerPoint(e.touches[0]),n=i.mouseEventToContainerPoint(e.touches[1]),a=r.subtract(n),s=r.distanceTo(n)/this._startDist;if(this._rotating){var o=(Math.atan(a.x/a.y)-this._startTheta)*L.DomUtil.RAD_TO_DEG;a.y<0&&(o+=180),o&&i.setBearing(this._startBearing-o)}if(this._zooming)if(this._zoom=i.getScaleZoom(s,this._startZoom),!i.options.bounceAtZoomLimits&&(this._zoom<i.getMinZoom()&&s<1||this._zoom>i.getMaxZoom()&&s>1)&&(this._zoom=i._limitZoom(this._zoom)),"center"===i.options.touchZoom){if(this._center=this._startLatLng,1===s)return}else{if(t=r._add(n)._divideBy(2)._subtract(this._centerPoint),1===s&&0===t.x&&0===t.y)return;var l=-i.getBearing()*L.DomUtil.DEG_TO_RAD;this._center=i.unproject(i.project(this._pinchStartLatLng).subtract(t.rotate(l)))}this._moved||(i._moveStart(!0,!1),this._moved=!0),L.Util.cancelAnimFrame(this._animRequest);var c=i._move.bind(i,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=L.Util.requestAnimFrame(c,this,!0),L.DomEvent.preventDefault(e)}},_onTouchEnd:function(){this._moved&&(this._zooming||this._rotating)?(this._zooming=!1,this._rotating=!1,L.Util.cancelAnimFrame(this._animRequest),L.DomEvent.off(document,"touchmove",this._onTouchMove,this).off(document,"touchend touchcancel",this._onTouchEnd,this),this.zoom&&(this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom)))):this._zooming=!1}}),L.Map.addInitHook("addHandler","touchGestures",L.Map.TouchGestures),L.Map.mergeOptions({touchRotate:!1}),L.Map.TouchRotate=L.Handler.extend({addHooks:function(){this._map.touchGestures.enable(),this._map.touchGestures.rotate=!0},removeHooks:function(){this._map.touchGestures.rotate=!1}}),L.Map.addInitHook("addHandler","touchRotate",L.Map.TouchRotate),L.Map.mergeOptions({shiftKeyRotate:!0}),L.Map.ShiftKeyRotate=L.Handler.extend({addHooks:function(){L.DomEvent.on(this._map._container,"wheel",this._handleShiftScroll,this),this._map.shiftKeyRotate.rotate=!0},removeHooks:function(){L.DomEvent.off(this._map._container,"wheel",this._handleShiftScroll,this),this._map.shiftKeyRotate.rotate=!1},_handleShiftScroll:function(e){e.shiftKey?(e.preventDefault(),this._map.scrollWheelZoom.disable(),this._map.setBearing(this._map._bearing*L.DomUtil.RAD_TO_DEG+5*Math.sign(e.deltaY))):this._map.scrollWheelZoom.enable()}}),L.Map.addInitHook("addHandler","shiftKeyRotate",L.Map.ShiftKeyRotate),L.Map.addInitHook((function(){this.scrollWheelZoom.enabled()&&this.shiftKeyRotate.enabled()&&(this.scrollWheelZoom.disable(),this.scrollWheelZoom.enable())})),L.Map.mergeOptions({touchZoom:L.Browser.touch,bounceAtZoomLimits:!1}),L.Map.TouchZoom=L.Handler.extend({addHooks:function(){L.DomUtil.addClass(this._map._container,"leaflet-touch-zoom"),this._map.touchGestures.enable(),this._map.touchGestures.zoom=!0},removeHooks:function(){L.DomUtil.removeClass(this._map._container,"leaflet-touch-zoom"),this._map.touchGestures.zoom=!1}}),L.Map.addInitHook("addHandler","touchZoom",L.Map.TouchZoom),L.Control.Rotate=L.Control.extend({options:{position:"topleft",closeOnZeroBearing:!0},onAdd:function(e){var t=this._container=L.DomUtil.create("div","leaflet-control-rotate leaflet-bar"),i=this._arrow=L.DomUtil.create("span","leaflet-control-rotate-arrow");i.style.backgroundImage="url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E\")",i.style.cursor="grab",i.style.display="block",i.style.width="100%",i.style.height="100%",i.style.backgroundRepeat="no-repeat",i.style.backgroundPosition="50%";var r=this._link=L.DomUtil.create("a","leaflet-control-rotate-toggle",t);return r.appendChild(i),r.href="#",r.title="Rotate map",L.DomEvent.on(r,"dblclick",L.DomEvent.stopPropagation).on(r,"mousedown",this._handleMouseDown,this).on(r,"click",L.DomEvent.stop).on(r,"click",this._cycleState,this).on(r,"click",this._refocusOnMap,this),L.Browser.any3d||L.DomUtil.addClass(r,"leaflet-disabled"),this._restyle(),e.on("rotate",this._restyle,this),this._follow=!1,this._canFollow=!1,this.options.closeOnZeroBearing&&0===e.getBearing()&&(t.style.display="none"),t},onRemove:function(e){e.off("rotate",this._restyle,this)},_handleMouseDown:function(e){L.DomEvent.stop(e),this.dragging=!0,this.dragstartX=e.pageX,this.dragstartY=e.pageY,L.DomEvent.on(document,"mousemove",this._handleMouseDrag,this).on(document,"mouseup",this._handleMouseUp,this)},_handleMouseUp:function(e){L.DomEvent.stop(e),this.dragging=!1,L.DomEvent.off(document,"mousemove",this._handleMouseDrag,this).off(document,"mouseup",this._handleMouseUp,this)},_handleMouseDrag:function(e){if(this.dragging){var t=e.clientX-this.dragstartX;this._map.setBearing(t)}},_cycleState:function(e){if(this._map){var t=this._map;t.touchRotate.enabled()||t.compassBearing.enabled()?t.compassBearing.enabled()?(t.compassBearing.disable(),t.setBearing(0),this.options.closeOnZeroBearing&&t.touchRotate.enable()):(t.touchRotate.disable(),t.compassBearing.enable()):t.touchRotate.enable(),this._restyle()}},_restyle:function(){if(this._map.options.rotate){var e=this._map,t=e.getBearing();this._arrow.style.transform="rotate("+t+"deg)",t&&this.options.closeOnZeroBearing&&(this._container.style.display="block"),e.compassBearing.enabled()?this._link.style.backgroundColor="orange":e.touchRotate.enabled()?this._link.style.backgroundColor=null:(this._link.style.backgroundColor="grey",0===t&&this.options.closeOnZeroBearing&&(this._container.style.display="none"))}else L.DomUtil.addClass(this._link,"leaflet-disabled")}}),L.control.rotate=function(e){return new L.Control.Rotate(e)},L.Map.mergeOptions({rotateControl:!0}),L.Map.addInitHook((function(){if(this.options.rotateControl){var e="object"==typeof this.options.rotateControl?this.options.rotateControl:{};this.rotateControl=L.control.rotate(e),this.addControl(this.rotateControl)}}))}));createCommonjsModule((function(e,t){
|
|
2
2
|
/*!
|
|
3
3
|
Copyright (c) 2016 Dominik Moritz
|
|
4
4
|
|
|
Binary file
|
|
Binary file
|