@geotrekce/geotrek-rando-widget 0.2.9 → 0.2.10
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/grw-app.cjs.entry.js +1 -1
- 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/collection/components/grw-app/grw-app.css +2 -2
- 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/esm/grw-app.entry.js +1 -1
- 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-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/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-ad0fa9fd.entry.js → p-87deca22.entry.js} +2 -2
- package/dist/geotrek-rando-widget/p-87deca22.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-87deca22.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/{p-ad0fa9fd.entry.js.map → p-87deca22.entry.js.map} +1 -1
- package/dist/geotrek-rando-widget/{p-49df9218.system.entry.js → p-ccb5e416.system.entry.js} +2 -2
- package/dist/geotrek-rando-widget/p-ccb5e416.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-ccb5e416.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/{p-49df9218.system.entry.js.map → p-ccb5e416.system.entry.js.map} +1 -1
- package/dist/geotrek-rando-widget/p-ccc3be5e.system.js +1 -1
- package/dist/geotrek-rando-widget/p-ccc3be5e.system.js.br +0 -0
- package/dist/geotrek-rando-widget/p-ccc3be5e.system.js.gz +0 -0
- package/package.json +1 -1
- package/dist/geotrek-rando-widget/p-49df9218.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-49df9218.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-ad0fa9fd.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-ad0fa9fd.entry.js.gz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["grwAppCss","GrwApp","this","largeViewSize","handlePopStateBind","handlePopState","bind","prototype","onTrekCardPress","event","currentTrekId","detail","showTrek","showTrekMap","url","URL","window","location","toString","searchParams","set","history","pushState","onWindowResize","handleView","onCenterOnMap","isLargeView","watchPropHandler","dispatchEvent","Event","componentWillLoad","trekParam","get","replaceState","isInitialHistoryWithTrek","Number","componentDidLoad","_this","onChange","state","trekNetworkError","urlRedirect","delete","onTrekDetailsClose","addEventListener","currentTrek","appElement","getBoundingClientRect","width","showTreksMap","handleFilters","showFilters","handleBackButton","back","handleShowMap","disconnectedCallback","reset","removeEventListener","render","h","Host","style","colorPrimaryApp","colorOnPrimary","colorSurface","colorOnSurface","colorSurfaceVariant","colorOnSurfaceVariant","colorPrimaryContainer","colorOnPrimaryContainer","colorSecondaryContainer","colorOnSecondaryContainer","colorBackground","colorSurfaceContainerHigh","colorSurfaceContainerLow","fabBackgroundColor","fabColor","appWidth","appHeight","currentTreks","class","treks","api","languages","inBbox","cities","districts","structures","themes","portals","routes","practices","onClick","target","href","linkTarget","linkName","length","treksWithinBounds","concat","translate","language","trek","filter","display","position","weather","zIndex","visibility","urlLayer","center","zoom","attribution","colorTrekLine","colorDepartureIcon","colorArrivalIcon","colorSensitiveArea","colorPoiIcon","showDetails","showRoute","showList","showMap","filterName","practice","filterType","filterNameProperty","difficulty","duration"],"sources":["src/components/grw-app/grw-app.scss?tag=grw-app","src/components/grw-app/grw-app.tsx"],"sourcesContent":[".material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\ngrw-app {\n display: block;\n position: relative;\n width: var(--app-width);\n height: var(--app-height);\n font-family: 'Roboto';\n color: var(--color-on-surface);\n overflow: hidden;\n line-height: initial;\n}\n\n.app-container {\n position: relative;\n width: 100%;\n height: 100%;\n max-width: 100vw;\n max-height: 100vh;\n overflow: hidden;\n}\n\n.header-container,\n.large-view-header-container {\n background-color: var(--color-background);\n box-shadow: var(--elevation-2);\n .header-top {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n height: 64px;\n }\n .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: 50%;\n height: 48px;\n width: 48px;\n padding: 12px;\n &:hover {\n box-shadow: var(--elevation-1);\n }\n }\n .header-left-container {\n margin-left: 8px;\n }\n .header-right-container {\n display: flex;\n align-items: center;\n margin-right: 8px;\n .margin-right-icon {\n margin-right: 8px;\n }\n }\n .attribution-container {\n a {\n font-size: 24px;\n font-weight: 400;\n line-height: 40px;\n color: var(--color-on-surface);\n text-decoration: none;\n }\n }\n}\n\n.options-container {\n height: calc(100% - 64px);\n position: absolute;\n width: 100%;\n z-index: 1100;\n top: 64px;\n}\n\n.handle-filters-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 0px 16px;\n height: 64px;\n .handle-filters-button {\n user-select: none;\n cursor: pointer;\n -webkit-tap-highlight-color: transparent;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n border: none;\n background-color: var(--color-background);\n color: var(--color-on-surface);\n padding: 12px 24px;\n border-radius: 20px;\n box-sizing: border-box;\n position: relative;\n gap: 8px;\n white-space: nowrap;\n line-height: 20px;\n letter-spacing: 0.10000000149011612px;\n font-size: 14px;\n font-weight: 500;\n box-shadow: var(--elevation-1);\n transition: box-shadow 0.2s ease-in-out 0s;\n span {\n font-size: 18px;\n font-family: 'Material Symbols Outlined';\n }\n }\n .current-treks-within-bounds-length {\n margin-left: 12px;\n color: var(--color-on-surface);\n }\n}\n\n.filters-container {\n background-color: var(--color-background);\n position: absolute;\n width: 100%;\n padding: 16px 0px 32px 0px;\n z-index: 1100;\n}\n\n.back-filters-container {\n background-color: rgba(0, 0, 0, 0.5);\n width: 100%;\n height: calc(100% - 64px);\n position: absolute;\n z-index: 1099;\n top: 64px;\n}\n\n.divider {\n margin: 16px;\n border-top: 1px solid var(--color-outline);\n}\n\n.init-loader-container,\n.loader-container,\n.large-view-loader-container {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n background-color: var(--color-background);\n .loader {\n width: 48px;\n height: 48px;\n border: 5px 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 }\n\n @keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n}\n\n.content-container {\n position: relative;\n display: flex;\n height: calc(100% - 64px - 64px);\n background-color: var(--color-background);\n}\n\n.content-treks {\n height: calc(100% - 64px - 64px);\n}\n\n.content-trek {\n height: calc(100% - 64px);\n}\n\n.app-treks-list-container,\n.app-trek-detail-container,\n.large-view-app-treks-list-container,\n.large-view-app-trek-detail-container {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.app-map-container,\n.large-view-app-map-container {\n width: 100%;\n height: 100%;\n}\n\n.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 .map-visibility-button {\n cursor: pointer;\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n border: none;\n text-decoration: none;\n padding: 16px;\n background-color: var(--color-primary-container);\n color: var(--color-on-primary-container);\n box-shadow: var(--elevation-1);\n border-radius: 12px;\n height: 56px;\n font-size: 16px;\n width: unset;\n &:hover {\n box-shadow: var(--elevation-4);\n }\n span {\n font-family: 'Material Symbols Outlined';\n font-size: 24px;\n margin-right: 8px;\n color: var(--color-on-primary-container);\n }\n }\n}\n\n.init-loader-container,\n.loader-container {\n width: 100%;\n}\n\n.app-treks-list-container,\n.app-trek-detail-container {\n width: 100%;\n}\n\ngrw-treks-list {\n max-height: calc(100vh - 64px - 64px);\n}\n\ngrw-trek-detail {\n max-height: calc(100vh - 64px - 48px);\n}\n\n.app-map-container {\n width: 100%;\n position: absolute;\n}\n\n.large-view-loader-container {\n width: 50%;\n}\n\n.large-view-app-treks-list-container,\n.large-view-app-trek-detail-container {\n width: 50%;\n}\n\n.large-view-app-map-container {\n position: relative;\n width: 50%;\n}\n","import { Component, Host, h, Listen, State, Prop, Element, Watch } from '@stencil/core';\nimport { translate } from 'i18n/i18n';\nimport state, { onChange, reset } from 'store/store';\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() showTreksMap = false;\n @State() showTrekMap = false;\n @State() showFilters = false;\n @State() isLargeView = false;\n @State() currentTrekId: 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() urlLayer: string;\n @Prop() center: string;\n @Prop() zoom: number;\n @Prop() attribution: string;\n @Prop() linkName = 'GEOTREK';\n @Prop() linkTarget = 'https://geotrek.fr';\n @Prop() weather = false;\n\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\n @Prop() colorTrekLine = '#6b0030';\n @Prop() colorDepartureIcon = '#006b3b';\n @Prop() colorArrivalIcon = '#85003b';\n @Prop() colorSensitiveArea = '#4974a5';\n @Prop() colorPoiIcon = '#974c6e';\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.currentTrekId = event.detail;\n this.showTrek = !this.showTrek;\n this.showTrekMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.set('trek', this.currentTrekId.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 @Watch('isLargeView')\n watchPropHandler() {\n window.dispatchEvent(new window.Event('resize'));\n }\n\n componentWillLoad() {\n const url = new URL(window.location.toString());\n const trekParam = url.searchParams.get('trek');\n if (trekParam) {\n window.history.replaceState({ isInitialHistoryWithTrek: true }, '', url);\n this.currentTrekId = Number(trekParam);\n this.showTrek = !this.showTrek;\n }\n }\n\n componentDidLoad() {\n onChange('trekNetworkError', () => {\n if (state.trekNetworkError) {\n const urlRedirect = new URL(window.location.toString());\n urlRedirect.searchParams.delete('trek');\n window.history.replaceState({}, '', urlRedirect);\n this.onTrekDetailsClose();\n }\n });\n window.addEventListener('popstate', this.handlePopStateBind, false);\n this.handleView();\n }\n\n onTrekDetailsClose() {\n state.currentTrek = null;\n this.currentTrekId = null;\n this.showTrek = !this.showTrek;\n }\n\n handleView() {\n this.isLargeView = this.appElement.getBoundingClientRect().width >= this.largeViewSize;\n this.showTreksMap = 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.isInitialHistoryWithTrek) {\n this.onTrekDetailsClose();\n const url = new URL(window.location.toString());\n url.searchParams.delete('trek');\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 if (trekParam && this.currentTrekId !== trekParam) {\n this.currentTrekId = trekParam;\n this.showTrek = true;\n } else if (!trekParam) {\n this.onTrekDetailsClose();\n }\n }\n\n handleShowMap() {\n if (this.currentTrekId) {\n this.showTrekMap = !this.showTrekMap;\n } else {\n this.showTreksMap = !this.showTreksMap;\n }\n }\n\n // handleEraseFilters() {\n // console.log('handleEraseFilters');\n // }\n\n // handleOkFilters() {\n // console.log('handleOkFilters');\n // }\n\n disconnectedCallback() {\n reset();\n window.removeEventListener('popstate', this.handlePopStateBind);\n }\n\n render() {\n return (\n <Host\n style={{\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 '--app-width': this.appWidth,\n '--app-height': this.appHeight,\n }}\n >\n {!state.currentTreks && !state.currentTrek && (\n <div class=\"init-loader-container\">\n <span class=\"loader\"></span>\n </div>\n )}\n {!this.showTrek && !state.treks && (\n <grw-treks-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 routes={this.routes}\n practices={this.practices}\n ></grw-treks-provider>\n )}\n {this.showTrek && this.currentTrekId && !state.currentTrek && (\n <grw-trek-provider api={this.api} languages={this.languages} trek-id={this.currentTrekId}></grw-trek-provider>\n )}\n {(state.currentTreks || state.currentTrek) && (\n <div class=\"app-container\">\n <div class={this.isLargeView ? 'large-view-header-container' : 'header-container'}>\n <div class=\"header-top\">\n <div class=\"header-left-container\">\n {this.showTrek ? (\n <button onClick={() => this.handleBackButton()} class=\"arrow-back-icon\">\n <span class=\"material-symbols-outlined\">arrow_back</span>\n </button>\n ) : (\n <div class=\"attribution-container\">\n <a target=\"_blank\" href={this.linkTarget}>\n {this.linkName}\n </a>\n </div>\n )}\n </div>\n <div class=\"header-right-container\">{state.languages.length > 1 && <grw-select-language></grw-select-language>}</div>\n </div>\n {!this.showTrek && (\n <div class=\"handle-filters-container\">\n {state.treksWithinBounds && (\n <div class=\"current-treks-within-bounds-length\">{`${state.treksWithinBounds.length} ${\n state.treksWithinBounds.length > 1 ? translate[state.language].treks : translate[state.language].trek\n }`}</div>\n )}\n <button onClick={() => this.handleFilters()} class=\"handle-filters-button\">\n <span class=\"material-symbols-outlined margin-right-icon\">filter_list</span>\n {translate[state.language].filter}\n </button>\n </div>\n )}\n </div>\n\n <div class={`content-container ${this.showTrek ? 'content-trek' : 'content-treks'}`}>\n <div\n class={this.isLargeView ? 'large-view-app-treks-list-container' : 'app-treks-list-container'}\n style={{ display: this.showTrek ? 'none' : 'flex', position: this.showTrek ? 'absolute' : 'relative' }}\n >\n <grw-treks-list\n reset-store-on-disconnected=\"false\"\n is-large-view={this.isLargeView}\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 </div>\n {this.showTrek && !state.currentTrek && (\n <div class={this.isLargeView ? 'large-view-loader-container' : 'loader-container'}>\n <span class=\"loader\"></span>\n </div>\n )}\n {state.currentTrek && (\n <div class={this.isLargeView ? 'large-view-app-trek-detail-container' : 'app-trek-detail-container'}>\n <grw-trek-detail\n reset-store-on-disconnected=\"false\"\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-background={this.colorBackground}\n weather={this.weather}\n style={{ zIndex: this.showTrekMap ? '0' : '1' }}\n is-large-view={this.isLargeView}\n ></grw-trek-detail>\n </div>\n )}\n <grw-map\n reset-store-on-disconnected=\"false\"\n class={this.isLargeView ? 'large-view-app-map-container' : 'app-map-container'}\n style={{\n visibility: (this.showTreksMap && !this.showTrek) || (this.showTrekMap && this.showTrek) || this.isLargeView ? 'visible' : 'hidden',\n zIndex: this.showTrekMap ? '1' : '0',\n }}\n url-layer={this.urlLayer}\n center={this.center}\n zoom={this.zoom}\n attribution={this.attribution}\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-departure-icon={this.colorDepartureIcon}\n color-arrival-icon={this.colorArrivalIcon}\n color-sensitive-area={this.colorSensitiveArea}\n color-poi-icon={this.colorPoiIcon}\n is-large-view={this.isLargeView}\n ></grw-map>\n </div>\n {(!this.showTrek || (this.showTrek && state.currentTrek)) && (\n <div class=\"map-visibility-button-container\">\n <button onClick={() => this.handleShowMap()} class=\"map-visibility-button\" style={{ display: this.isLargeView ? 'none' : 'flex' }}>\n <span class=\"material-symbols-outlined\">{this.showTrek ? (this.showTrekMap ? 'summarize' : 'map') : this.showTreksMap ? 'list' : 'map'}</span>\n {this.showTrek\n ? this.showTrekMap\n ? translate[state.language].showDetails\n : translate[state.language].showRoute\n : this.showTreksMap\n ? translate[state.language].showList\n : translate[state.language].showMap}\n </button>\n </div>\n )}\n </div>\n )}\n {!this.showTrek && this.showFilters && (\n <div class=\"options-container\">\n {/* <div class=\"filters-buttons-container\">\n <button class=\"filter-button\" onClick={() => this.handleEraseFilters()}>\n Effacer\n </button>\n <button class=\"filter-button\" onClick={() => this.handleOkFilters()}>\n Ok\n </button>\n </div> */}\n <div class=\"filters-container\">\n <grw-filter filterName={translate[state.language].practice} filterType=\"practices\" filterNameProperty=\"name\"></grw-filter>\n <div class=\"divider\"></div>\n <grw-filter filterName={translate[state.language].difficulty} filterType=\"difficulties\" filterNameProperty=\"label\"></grw-filter>\n <div class=\"divider\"></div>\n <grw-filter filterName={translate[state.language].duration} filterType=\"durations\" filterNameProperty=\"name\"></grw-filter>\n </div>\n <div onClick={() => this.handleFilters()} class=\"back-filters-container\"></div>\n </div>\n )}\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","currentTrekId","detail","showTrek","showTrekMap","url","URL","window","location","toString","searchParams","set","history","pushState","onWindowResize","handleView","onCenterOnMap","isLargeView","watchPropHandler","dispatchEvent","Event","componentWillLoad","trekParam","get","replaceState","isInitialHistoryWithTrek","Number","componentDidLoad","_this","onChange","state","trekNetworkError","urlRedirect","delete","onTrekDetailsClose","addEventListener","currentTrek","appElement","getBoundingClientRect","width","showTreksMap","handleFilters","showFilters","handleBackButton","back","handleShowMap","disconnectedCallback","reset","removeEventListener","render","h","Host","style","colorPrimaryApp","colorOnPrimary","colorSurface","colorOnSurface","colorSurfaceVariant","colorOnSurfaceVariant","colorPrimaryContainer","colorOnPrimaryContainer","colorSecondaryContainer","colorOnSecondaryContainer","colorBackground","colorSurfaceContainerHigh","colorSurfaceContainerLow","fabBackgroundColor","fabColor","appWidth","appHeight","currentTreks","class","treks","api","languages","inBbox","cities","districts","structures","themes","portals","routes","practices","onClick","target","href","linkTarget","linkName","length","treksWithinBounds","concat","translate","language","trek","filter","display","position","weather","zIndex","visibility","urlLayer","center","zoom","attribution","colorTrekLine","colorDepartureIcon","colorArrivalIcon","colorSensitiveArea","colorPoiIcon","showDetails","showRoute","showList","showMap","filterName","practice","filterType","filterNameProperty","difficulty","duration"],"sources":["src/components/grw-app/grw-app.scss?tag=grw-app","src/components/grw-app/grw-app.tsx"],"sourcesContent":[".material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\ngrw-app {\n display: block;\n position: relative;\n width: var(--app-width);\n height: var(--app-height);\n font-family: 'Roboto';\n color: var(--color-on-surface);\n overflow: hidden;\n line-height: initial;\n max-width: 100vw;\n max-height: 100vh;\n}\n\n.app-container {\n position: relative;\n width: 100%;\n height: 100%;\n overflow: hidden;\n}\n\n.header-container,\n.large-view-header-container {\n background-color: var(--color-background);\n box-shadow: var(--elevation-2);\n .header-top {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n height: 64px;\n }\n .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: 50%;\n height: 48px;\n width: 48px;\n padding: 12px;\n &:hover {\n box-shadow: var(--elevation-1);\n }\n }\n .header-left-container {\n margin-left: 8px;\n }\n .header-right-container {\n display: flex;\n align-items: center;\n margin-right: 8px;\n .margin-right-icon {\n margin-right: 8px;\n }\n }\n .attribution-container {\n a {\n font-size: 24px;\n font-weight: 400;\n line-height: 40px;\n color: var(--color-on-surface);\n text-decoration: none;\n }\n }\n}\n\n.options-container {\n height: calc(100% - 64px);\n position: absolute;\n width: 100%;\n z-index: 1100;\n top: 64px;\n}\n\n.handle-filters-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 0px 16px;\n height: 64px;\n .handle-filters-button {\n user-select: none;\n cursor: pointer;\n -webkit-tap-highlight-color: transparent;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n border: none;\n background-color: var(--color-background);\n color: var(--color-on-surface);\n padding: 12px 24px;\n border-radius: 20px;\n box-sizing: border-box;\n position: relative;\n gap: 8px;\n white-space: nowrap;\n line-height: 20px;\n letter-spacing: 0.10000000149011612px;\n font-size: 14px;\n font-weight: 500;\n box-shadow: var(--elevation-1);\n transition: box-shadow 0.2s ease-in-out 0s;\n span {\n font-size: 18px;\n font-family: 'Material Symbols Outlined';\n }\n }\n .current-treks-within-bounds-length {\n margin-left: 12px;\n color: var(--color-on-surface);\n }\n}\n\n.filters-container {\n background-color: var(--color-background);\n position: absolute;\n width: 100%;\n padding: 16px 0px 32px 0px;\n z-index: 1100;\n}\n\n.back-filters-container {\n background-color: rgba(0, 0, 0, 0.5);\n width: 100%;\n height: calc(100% - 64px);\n position: absolute;\n z-index: 1099;\n top: 64px;\n}\n\n.divider {\n margin: 16px;\n border-top: 1px solid var(--color-outline);\n}\n\n.init-loader-container,\n.loader-container,\n.large-view-loader-container {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n background-color: var(--color-background);\n .loader {\n width: 48px;\n height: 48px;\n border: 5px 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 }\n\n @keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n}\n\n.content-container {\n position: relative;\n display: flex;\n height: calc(100% - 64px - 64px);\n background-color: var(--color-background);\n}\n\n.content-treks {\n height: calc(100% - 64px - 64px);\n}\n\n.content-trek {\n height: calc(100% - 64px);\n}\n\n.app-treks-list-container,\n.app-trek-detail-container,\n.large-view-app-treks-list-container,\n.large-view-app-trek-detail-container {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.app-map-container,\n.large-view-app-map-container {\n width: 100%;\n height: 100%;\n}\n\n.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 .map-visibility-button {\n cursor: pointer;\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n border: none;\n text-decoration: none;\n padding: 16px;\n background-color: var(--color-primary-container);\n color: var(--color-on-primary-container);\n box-shadow: var(--elevation-1);\n border-radius: 12px;\n height: 56px;\n font-size: 16px;\n width: unset;\n &:hover {\n box-shadow: var(--elevation-4);\n }\n span {\n font-family: 'Material Symbols Outlined';\n font-size: 24px;\n margin-right: 8px;\n color: var(--color-on-primary-container);\n }\n }\n}\n\n.init-loader-container,\n.loader-container {\n width: 100%;\n}\n\n.app-treks-list-container,\n.app-trek-detail-container {\n width: 100%;\n}\n\ngrw-treks-list {\n max-height: calc(100vh - 64px - 64px);\n}\n\ngrw-trek-detail {\n max-height: calc(100vh - 64px - 48px);\n}\n\n.app-map-container {\n width: 100%;\n position: absolute;\n}\n\n.large-view-loader-container {\n width: 50%;\n}\n\n.large-view-app-treks-list-container,\n.large-view-app-trek-detail-container {\n width: 50%;\n}\n\n.large-view-app-map-container {\n position: relative;\n width: 50%;\n}\n","import { Component, Host, h, Listen, State, Prop, Element, Watch } from '@stencil/core';\nimport { translate } from 'i18n/i18n';\nimport state, { onChange, reset } from 'store/store';\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() showTreksMap = false;\n @State() showTrekMap = false;\n @State() showFilters = false;\n @State() isLargeView = false;\n @State() currentTrekId: 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() urlLayer: string;\n @Prop() center: string;\n @Prop() zoom: number;\n @Prop() attribution: string;\n @Prop() linkName = 'GEOTREK';\n @Prop() linkTarget = 'https://geotrek.fr';\n @Prop() weather = false;\n\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\n @Prop() colorTrekLine = '#6b0030';\n @Prop() colorDepartureIcon = '#006b3b';\n @Prop() colorArrivalIcon = '#85003b';\n @Prop() colorSensitiveArea = '#4974a5';\n @Prop() colorPoiIcon = '#974c6e';\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.currentTrekId = event.detail;\n this.showTrek = !this.showTrek;\n this.showTrekMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.set('trek', this.currentTrekId.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 @Watch('isLargeView')\n watchPropHandler() {\n window.dispatchEvent(new window.Event('resize'));\n }\n\n componentWillLoad() {\n const url = new URL(window.location.toString());\n const trekParam = url.searchParams.get('trek');\n if (trekParam) {\n window.history.replaceState({ isInitialHistoryWithTrek: true }, '', url);\n this.currentTrekId = Number(trekParam);\n this.showTrek = !this.showTrek;\n }\n }\n\n componentDidLoad() {\n onChange('trekNetworkError', () => {\n if (state.trekNetworkError) {\n const urlRedirect = new URL(window.location.toString());\n urlRedirect.searchParams.delete('trek');\n window.history.replaceState({}, '', urlRedirect);\n this.onTrekDetailsClose();\n }\n });\n window.addEventListener('popstate', this.handlePopStateBind, false);\n this.handleView();\n }\n\n onTrekDetailsClose() {\n state.currentTrek = null;\n this.currentTrekId = null;\n this.showTrek = !this.showTrek;\n }\n\n handleView() {\n this.isLargeView = this.appElement.getBoundingClientRect().width >= this.largeViewSize;\n this.showTreksMap = 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.isInitialHistoryWithTrek) {\n this.onTrekDetailsClose();\n const url = new URL(window.location.toString());\n url.searchParams.delete('trek');\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 if (trekParam && this.currentTrekId !== trekParam) {\n this.currentTrekId = trekParam;\n this.showTrek = true;\n } else if (!trekParam) {\n this.onTrekDetailsClose();\n }\n }\n\n handleShowMap() {\n if (this.currentTrekId) {\n this.showTrekMap = !this.showTrekMap;\n } else {\n this.showTreksMap = !this.showTreksMap;\n }\n }\n\n // handleEraseFilters() {\n // console.log('handleEraseFilters');\n // }\n\n // handleOkFilters() {\n // console.log('handleOkFilters');\n // }\n\n disconnectedCallback() {\n reset();\n window.removeEventListener('popstate', this.handlePopStateBind);\n }\n\n render() {\n return (\n <Host\n style={{\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 '--app-width': this.appWidth,\n '--app-height': this.appHeight,\n }}\n >\n {!state.currentTreks && !state.currentTrek && (\n <div class=\"init-loader-container\">\n <span class=\"loader\"></span>\n </div>\n )}\n {!this.showTrek && !state.treks && (\n <grw-treks-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 routes={this.routes}\n practices={this.practices}\n ></grw-treks-provider>\n )}\n {this.showTrek && this.currentTrekId && !state.currentTrek && (\n <grw-trek-provider api={this.api} languages={this.languages} trek-id={this.currentTrekId}></grw-trek-provider>\n )}\n {(state.currentTreks || state.currentTrek) && (\n <div class=\"app-container\">\n <div class={this.isLargeView ? 'large-view-header-container' : 'header-container'}>\n <div class=\"header-top\">\n <div class=\"header-left-container\">\n {this.showTrek ? (\n <button onClick={() => this.handleBackButton()} class=\"arrow-back-icon\">\n <span class=\"material-symbols-outlined\">arrow_back</span>\n </button>\n ) : (\n <div class=\"attribution-container\">\n <a target=\"_blank\" href={this.linkTarget}>\n {this.linkName}\n </a>\n </div>\n )}\n </div>\n <div class=\"header-right-container\">{state.languages.length > 1 && <grw-select-language></grw-select-language>}</div>\n </div>\n {!this.showTrek && (\n <div class=\"handle-filters-container\">\n {state.treksWithinBounds && (\n <div class=\"current-treks-within-bounds-length\">{`${state.treksWithinBounds.length} ${\n state.treksWithinBounds.length > 1 ? translate[state.language].treks : translate[state.language].trek\n }`}</div>\n )}\n <button onClick={() => this.handleFilters()} class=\"handle-filters-button\">\n <span class=\"material-symbols-outlined margin-right-icon\">filter_list</span>\n {translate[state.language].filter}\n </button>\n </div>\n )}\n </div>\n\n <div class={`content-container ${this.showTrek ? 'content-trek' : 'content-treks'}`}>\n <div\n class={this.isLargeView ? 'large-view-app-treks-list-container' : 'app-treks-list-container'}\n style={{ display: this.showTrek ? 'none' : 'flex', position: this.showTrek ? 'absolute' : 'relative' }}\n >\n <grw-treks-list\n reset-store-on-disconnected=\"false\"\n is-large-view={this.isLargeView}\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 </div>\n {this.showTrek && !state.currentTrek && (\n <div class={this.isLargeView ? 'large-view-loader-container' : 'loader-container'}>\n <span class=\"loader\"></span>\n </div>\n )}\n {state.currentTrek && (\n <div class={this.isLargeView ? 'large-view-app-trek-detail-container' : 'app-trek-detail-container'}>\n <grw-trek-detail\n reset-store-on-disconnected=\"false\"\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-background={this.colorBackground}\n weather={this.weather}\n style={{ zIndex: this.showTrekMap ? '0' : '1' }}\n is-large-view={this.isLargeView}\n ></grw-trek-detail>\n </div>\n )}\n <grw-map\n reset-store-on-disconnected=\"false\"\n class={this.isLargeView ? 'large-view-app-map-container' : 'app-map-container'}\n style={{\n visibility: (this.showTreksMap && !this.showTrek) || (this.showTrekMap && this.showTrek) || this.isLargeView ? 'visible' : 'hidden',\n zIndex: this.showTrekMap ? '1' : '0',\n }}\n url-layer={this.urlLayer}\n center={this.center}\n zoom={this.zoom}\n attribution={this.attribution}\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-departure-icon={this.colorDepartureIcon}\n color-arrival-icon={this.colorArrivalIcon}\n color-sensitive-area={this.colorSensitiveArea}\n color-poi-icon={this.colorPoiIcon}\n is-large-view={this.isLargeView}\n ></grw-map>\n </div>\n {(!this.showTrek || (this.showTrek && state.currentTrek)) && (\n <div class=\"map-visibility-button-container\">\n <button onClick={() => this.handleShowMap()} class=\"map-visibility-button\" style={{ display: this.isLargeView ? 'none' : 'flex' }}>\n <span class=\"material-symbols-outlined\">{this.showTrek ? (this.showTrekMap ? 'summarize' : 'map') : this.showTreksMap ? 'list' : 'map'}</span>\n {this.showTrek\n ? this.showTrekMap\n ? translate[state.language].showDetails\n : translate[state.language].showRoute\n : this.showTreksMap\n ? translate[state.language].showList\n : translate[state.language].showMap}\n </button>\n </div>\n )}\n </div>\n )}\n {!this.showTrek && this.showFilters && (\n <div class=\"options-container\">\n {/* <div class=\"filters-buttons-container\">\n <button class=\"filter-button\" onClick={() => this.handleEraseFilters()}>\n Effacer\n </button>\n <button class=\"filter-button\" onClick={() => this.handleOkFilters()}>\n Ok\n </button>\n </div> */}\n <div class=\"filters-container\">\n <grw-filter filterName={translate[state.language].practice} filterType=\"practices\" filterNameProperty=\"name\"></grw-filter>\n <div class=\"divider\"></div>\n <grw-filter filterName={translate[state.language].difficulty} filterType=\"difficulties\" filterNameProperty=\"label\"></grw-filter>\n <div class=\"divider\"></div>\n <grw-filter filterName={translate[state.language].duration} filterType=\"durations\" filterNameProperty=\"name\"></grw-filter>\n </div>\n <div onClick={() => this.handleFilters()} class=\"back-filters-container\"></div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as r,w as o,d as e,N as n,a,b as
|
|
1
|
+
import{p as r,w as o,d as e,N as n,a as c,b as a}from"./p-16f28b0e.js";export{s as setNonce}from"./p-16f28b0e.js";function i(r){var o,e,n;return(n=(e=(o=r.head)===null||o===void 0?void 0:o.querySelector('meta[name="csp-nonce"]'))===null||e===void 0?void 0:e.getAttribute("content"))!==null&&n!==void 0?n:undefined}const t=r=>`__sc_import_${r.replace(/\s|-/g,"_")}`;const l=()=>{{r.o=o.__cssshim}const a=Array.from(e.querySelectorAll("script")).find((r=>new RegExp(`/${n}(\\.esm)?\\.js($|\\?|#)`).test(r.src)||r.getAttribute("data-stencil-namespace")===n));const i=(a||{})["data-opts"]||{};if("onbeforeload"in a&&!history.scrollRestoration){return{then(){}}}{i.resourcesUrl=new URL(".",new URL(a.getAttribute("data-resources-url")||a.src,o.location.href)).href;{p(i.resourcesUrl,a)}if(!o.customElements){return __sc_import_geotrek_rando_widget("./p-b5fc5b41.js").then((()=>i))}}return c(i)};const p=(c,a)=>{const s=t(n);try{o[s]=new Function("w",`return import(w);//${Math.random()}`)}catch(l){const n=new Map;o[s]=t=>{var l;const p=new URL(t,c).href;let d=n.get(p);if(!d){const c=e.createElement("script");c.type="module";c.crossOrigin=a.crossOrigin;c.src=URL.createObjectURL(new Blob([`import * as m from '${p}'; window.${s}.m = m;`],{type:"application/javascript"}));const t=(l=r.i)!==null&&l!==void 0?l:i(e);if(t!=null){c.setAttribute("nonce",t)}d=new Promise((r=>{c.onload=()=>{r(o[s].m);c.remove()}}));n.set(p,d);e.head.appendChild(c)}return d}}};l().then((r=>a([["p-4549b320",[[1,"grw-trek-card",{trek:[16],colorPrimaryApp:[1,"color-primary-app"],colorOnSurface:[1,"color-on-surface"],colorSecondaryContainer:[1,"color-secondary-container"],colorOnSecondaryContainer:[1,"color-on-secondary-container"],colorSurfaceContainerLow:[1,"color-surface-container-low"],isLargeView:[4,"is-large-view"],resetStoreOnDisconnected:[4,"reset-store-on-disconnected"],currentTrek:[32],difficulty:[32],route:[32],practice:[32],themes:[32],departureCity:[32]}]]],["p-efda3439",[[1,"grw-information-desk-detail",{informationDesk:[16],displayShortDescription:[32]}],[1,"grw-poi-detail",{poi:[16],displayShortDescription:[32],displayFullscreen:[32]}],[1,"grw-sensitive-area-detail",{sensitiveArea:[16]}]]],["p-fc167c7a",[[1,"grw-trek-detail",{trek:[16],colorPrimaryApp:[1,"color-primary-app"],colorOnSurface:[1,"color-on-surface"],colorPrimaryContainer:[1,"color-primary-container"],colorOnPrimaryContainer:[1,"color-on-primary-container"],colorSecondaryContainer:[1,"color-secondary-container"],colorOnSecondaryContainer:[1,"color-on-secondary-container"],colorBackground:[1,"color-background"],resetStoreOnDisconnected:[4,"reset-store-on-disconnected"],weather:[4],isLargeView:[4,"is-large-view"],currentTrek:[32],difficulty:[32],route:[32],practice:[32],themes:[32],labels:[32],sources:[32],accessibilities:[32],accessibilityLevel:[32],displayFullscreen:[32],cities:[32],options:[32]}],[1,"grw-treks-list",{colorPrimaryApp:[1,"color-primary-app"],colorOnSurface:[1,"color-on-surface"],colorSecondaryContainer:[1,"color-secondary-container"],colorOnSecondaryContainer:[1,"color-on-secondary-container"],colorSurfaceContainerLow:[1,"color-surface-container-low"],isLargeView:[4,"is-large-view"],resetStoreOnDisconnected:[4,"reset-store-on-disconnected"],treksToDisplay:[32]}],[1,"grw-filter",{filterType:[1,"filter-type"],filterName:[1,"filter-name"],filterNameProperty:[1,"filter-name-property"]}],[0,"grw-map",{urlLayer:[1,"url-layer"],attribution:[1],center:[1],zoom:[2],colorPrimaryApp:[1,"color-primary-app"],colorOnSurface:[1,"color-on-surface"],colorPrimaryContainer:[1,"color-primary-container"],colorOnPrimaryContainer:[1,"color-on-primary-container"],colorBackground:[1,"color-background"],colorTrekLine:[1,"color-trek-line"],colorDepartureIcon:[1,"color-departure-icon"],colorArrivalIcon:[1,"color-arrival-icon"],colorSensitiveArea:[1,"color-sensitive-area"],colorPoiIcon:[1,"color-poi-icon"],resetStoreOnDisconnected:[4,"reset-store-on-disconnected"],isLargeView:[4,"is-large-view"],mapIsReady:[32]},[[8,"centerOnMap","onCenterOnMap"],[8,"descriptionReferenceIsInViewport","descriptionReferenceIsInViewport"],[8,"parkingIsInViewport","parkingIsInViewport"],[8,"informationDeskIsInViewport","onInformationDesksIsInViewport"],[8,"sensitiveAreaIsInViewport","sensitiveAreaIsInViewport"],[8,"poiIsInViewport","poiIsInViewport"]]],[1,"grw-select-language"],[1,"grw-trek-provider",{languages:[1],api:[1],trekId:[1,"trek-id"]}],[1,"grw-treks-provider",{languages:[1],api:[1],inBbox:[1,"in-bbox"],cities:[1],districts:[1],structures:[1],themes:[1],portals:[1],routes:[1],practices:[1]}]]],["p-87deca22",[[0,"grw-app",{appWidth:[1,"app-width"],appHeight:[1,"app-height"],api:[1],languages:[1],inBbox:[1,"in-bbox"],cities:[1],districts:[1],structures:[1],themes:[1],portals:[1],routes:[1],practices:[1],urlLayer:[1,"url-layer"],center:[1],zoom:[2],attribution:[1],linkName:[1,"link-name"],linkTarget:[1,"link-target"],weather:[4],colorPrimaryApp:[1,"color-primary-app"],colorOnPrimary:[1,"color-on-primary"],colorSurface:[1,"color-surface"],colorOnSurface:[1,"color-on-surface"],colorSurfaceVariant:[1,"color-surface-variant"],colorOnSurfaceVariant:[1,"color-on-surface-variant"],colorPrimaryContainer:[1,"color-primary-container"],colorOnPrimaryContainer:[1,"color-on-primary-container"],colorSecondaryContainer:[1,"color-secondary-container"],colorOnSecondaryContainer:[1,"color-on-secondary-container"],colorBackground:[1,"color-background"],colorSurfaceContainerHigh:[1,"color-surface-container-high"],colorSurfaceContainerLow:[1,"color-surface-container-low"],fabBackgroundColor:[1,"fab-background-color"],fabColor:[1,"fab-color"],colorTrekLine:[1,"color-trek-line"],colorDepartureIcon:[1,"color-departure-icon"],colorArrivalIcon:[1,"color-arrival-icon"],colorSensitiveArea:[1,"color-sensitive-area"],colorPoiIcon:[1,"color-poi-icon"],showTrek:[32],showTreksMap:[32],showTrekMap:[32],showFilters:[32],isLargeView:[32],currentTrekId:[32]},[[8,"trekCardPress","onTrekCardPress"],[9,"resize","onWindowResize"],[8,"centerOnMap","onCenterOnMap"]]]]]],r)));
|
|
2
2
|
//# sourceMappingURL=geotrek-rando-widget.esm.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["queryNonceMetaTagContent","doc","_a","_b","_c","head","querySelector","getAttribute","undefined","getDynamicImportFunction","namespace","replace","patchBrowser","plt","$cssShim$","win","__cssshim","scriptElm","Array","from","querySelectorAll","find","s","RegExp","NAMESPACE","test","src","opts","history","scrollRestoration","then","resourcesUrl","URL","location","href","patchDynamicImport","customElements","__sc_import_geotrek_rando_widget","promiseResolve","base","orgScriptElm","importFunctionName","Function","Math","random","e","moduleMap","Map","url","mod","get","script","createElement","type","crossOrigin","createObjectURL","Blob","nonce","$nonce$","setAttribute","Promise","resolve","onload","m","remove","set","appendChild","options","bootstrapLazy","trek","colorPrimaryApp","colorOnSurface","colorSecondaryContainer","colorOnSecondaryContainer","colorSurfaceContainerLow","isLargeView","resetStoreOnDisconnected","currentTrek","difficulty","route","practice","themes","departureCity","informationDesk","displayShortDescription","poi","displayFullscreen","sensitiveArea","colorPrimaryContainer","colorOnPrimaryContainer","colorBackground","weather","labels","sources","accessibilities","accessibilityLevel","cities","treksToDisplay","filterType","filterName","filterNameProperty","urlLayer","attribution","center","zoom","colorTrekLine","colorDepartureIcon","colorArrivalIcon","colorSensitiveArea","colorPoiIcon","mapIsReady","languages","api","trekId","inBbox","districts","structures","portals","routes","practices","appWidth","appHeight","linkName","linkTarget","colorOnPrimary","colorSurface","colorSurfaceVariant","colorOnSurfaceVariant","colorSurfaceContainerHigh","fabBackgroundColor","fabColor","showTrek","showTreksMap","showTrekMap","showFilters","currentTrekId"],"sources":["./node_modules/@stencil/core/internal/client/patch-browser.js","@lazy-browser-entrypoint?app-data=conditional"],"sourcesContent":["/*\n Stencil Client Patch Browser v3.4.1 | MIT Licensed | https://stenciljs.com\n */\nimport { BUILD, NAMESPACE } from '@stencil/core/internal/app-data';\nimport { consoleDevInfo, plt, win, doc, promiseResolve, H } from '@stencil/core';\n/**\n * Helper method for querying a `meta` tag that contains a nonce value\n * out of a DOM's head.\n *\n * @param doc The DOM containing the `head` to query against\n * @returns The content of the meta tag representing the nonce value, or `undefined` if no tag\n * exists or the tag has no content.\n */\nfunction queryNonceMetaTagContent(doc) {\n var _a, _b, _c;\n return (_c = (_b = (_a = doc.head) === null || _a === void 0 ? void 0 : _a.querySelector('meta[name=\"csp-nonce\"]')) === null || _b === void 0 ? void 0 : _b.getAttribute('content')) !== null && _c !== void 0 ? _c : undefined;\n}\n// TODO(STENCIL-661): Remove code related to the dynamic import shim\nconst getDynamicImportFunction = (namespace) => `__sc_import_${namespace.replace(/\\s|-/g, '_')}`;\nconst patchBrowser = () => {\n // NOTE!! This fn cannot use async/await!\n if (BUILD.isDev && !BUILD.isTesting) {\n consoleDevInfo('Running in development mode.');\n }\n // TODO(STENCIL-659): Remove code implementing the CSS variable shim\n if (BUILD.cssVarShim) {\n // shim css vars\n // TODO(STENCIL-659): Remove code implementing the CSS variable shim\n plt.$cssShim$ = win.__cssshim;\n }\n if (BUILD.cloneNodeFix) {\n // opted-in to polyfill cloneNode() for slot polyfilled components\n patchCloneNodeFix(H.prototype);\n }\n if (BUILD.profile && !performance.mark) {\n // not all browsers support performance.mark/measure (Safari 10)\n // because the mark/measure APIs are designed to write entries to a buffer in the browser that does not exist,\n // simply stub the implementations out.\n // TODO(STENCIL-323): Remove this patch when support for older browsers is removed (breaking)\n // @ts-ignore\n performance.mark = performance.measure = () => {\n /*noop*/\n };\n performance.getEntriesByName = () => [];\n }\n // @ts-ignore\n const scriptElm = \n // TODO(STENCIL-661): Remove code related to the dynamic import shim\n // TODO(STENCIL-663): Remove code related to deprecated `safari10` field.\n BUILD.scriptDataOpts || BUILD.safari10 || BUILD.dynamicImportShim\n ? Array.from(doc.querySelectorAll('script')).find((s) => new RegExp(`\\/${NAMESPACE}(\\\\.esm)?\\\\.js($|\\\\?|#)`).test(s.src) ||\n s.getAttribute('data-stencil-namespace') === NAMESPACE)\n : null;\n const importMeta = import.meta.url;\n const opts = BUILD.scriptDataOpts ? (scriptElm || {})['data-opts'] || {} : {};\n // TODO(STENCIL-663): Remove code related to deprecated `safari10` field.\n if (BUILD.safari10 && 'onbeforeload' in scriptElm && !history.scrollRestoration /* IS_ESM_BUILD */) {\n // Safari < v11 support: This IF is true if it's Safari below v11.\n // This fn cannot use async/await since Safari didn't support it until v11,\n // however, Safari 10 did support modules. Safari 10 also didn't support \"nomodule\",\n // so both the ESM file and nomodule file would get downloaded. Only Safari\n // has 'onbeforeload' in the script, and \"history.scrollRestoration\" was added\n // to Safari in v11. Return a noop then() so the async/await ESM code doesn't continue.\n // IS_ESM_BUILD is replaced at build time so this check doesn't happen in systemjs builds.\n return {\n then() {\n /* promise noop */\n },\n };\n }\n // TODO(STENCIL-663): Remove code related to deprecated `safari10` field.\n if (!BUILD.safari10 && importMeta !== '') {\n opts.resourcesUrl = new URL('.', importMeta).href;\n // TODO(STENCIL-661): Remove code related to the dynamic import shim\n // TODO(STENCIL-663): Remove code related to deprecated `safari10` field.\n }\n else if (BUILD.dynamicImportShim || BUILD.safari10) {\n opts.resourcesUrl = new URL('.', new URL(scriptElm.getAttribute('data-resources-url') || scriptElm.src, win.location.href)).href;\n // TODO(STENCIL-661): Remove code related to the dynamic import shim\n if (BUILD.dynamicImportShim) {\n patchDynamicImport(opts.resourcesUrl, scriptElm);\n }\n // TODO(STENCIL-661): Remove code related to the dynamic import shim\n if (BUILD.dynamicImportShim && !win.customElements) {\n // module support, but no custom elements support (Old Edge)\n // @ts-ignore\n return import(/* webpackChunkName: \"polyfills-dom\" */ './dom.js').then(() => opts);\n }\n }\n return promiseResolve(opts);\n};\n// TODO(STENCIL-661): Remove code related to the dynamic import shim\nconst patchDynamicImport = (base, orgScriptElm) => {\n const importFunctionName = getDynamicImportFunction(NAMESPACE);\n try {\n // test if this browser supports dynamic imports\n // There is a caching issue in V8, that breaks using import() in Function\n // By generating a random string, we can workaround it\n // Check https://bugs.chromium.org/p/chromium/issues/detail?id=990810 for more info\n win[importFunctionName] = new Function('w', `return import(w);//${Math.random()}`);\n }\n catch (e) {\n // this shim is specifically for browsers that do support \"esm\" imports\n // however, they do NOT support \"dynamic\" imports\n // basically this code is for old Edge, v18 and below\n const moduleMap = new Map();\n win[importFunctionName] = (src) => {\n var _a;\n const url = new URL(src, base).href;\n let mod = moduleMap.get(url);\n if (!mod) {\n const script = doc.createElement('script');\n script.type = 'module';\n script.crossOrigin = orgScriptElm.crossOrigin;\n script.src = URL.createObjectURL(new Blob([`import * as m from '${url}'; window.${importFunctionName}.m = m;`], {\n type: 'application/javascript',\n }));\n // Apply CSP nonce to the script tag if it exists\n const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);\n if (nonce != null) {\n script.setAttribute('nonce', nonce);\n }\n mod = new Promise((resolve) => {\n script.onload = () => {\n resolve(win[importFunctionName].m);\n script.remove();\n };\n });\n moduleMap.set(url, mod);\n doc.head.appendChild(script);\n }\n return mod;\n };\n }\n};\nconst patchCloneNodeFix = (HTMLElementPrototype) => {\n const nativeCloneNodeFn = HTMLElementPrototype.cloneNode;\n HTMLElementPrototype.cloneNode = function (deep) {\n if (this.nodeName === 'TEMPLATE') {\n return nativeCloneNodeFn.call(this, deep);\n }\n const clonedNode = nativeCloneNodeFn.call(this, false);\n const srcChildNodes = this.childNodes;\n if (deep) {\n for (let i = 0; i < srcChildNodes.length; i++) {\n // Node.ATTRIBUTE_NODE === 2, and checking because IE11\n if (srcChildNodes[i].nodeType !== 2) {\n clonedNode.appendChild(srcChildNodes[i].cloneNode(true));\n }\n }\n }\n return clonedNode;\n };\n};\nexport { patchBrowser };\n","export { setNonce } from '@stencil/core';\nimport { bootstrapLazy } from '@stencil/core';\nimport { patchBrowser } from '@stencil/core/internal/client/patch-browser';\nimport { globalScripts } from '@stencil/core/internal/app-globals';\npatchBrowser().then(options => {\n globalScripts();\n return bootstrapLazy([/*!__STENCIL_LAZY_DATA__*/], options);\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["queryNonceMetaTagContent","doc","_a","_b","_c","head","querySelector","getAttribute","undefined","getDynamicImportFunction","namespace","replace","patchBrowser","plt","$cssShim$","win","__cssshim","scriptElm","Array","from","querySelectorAll","find","s","RegExp","NAMESPACE","test","src","opts","history","scrollRestoration","then","resourcesUrl","URL","location","href","patchDynamicImport","customElements","__sc_import_geotrek_rando_widget","promiseResolve","base","orgScriptElm","importFunctionName","Function","Math","random","e","moduleMap","Map","url","mod","get","script","createElement","type","crossOrigin","createObjectURL","Blob","nonce","$nonce$","setAttribute","Promise","resolve","onload","m","remove","set","appendChild","options","bootstrapLazy","trek","colorPrimaryApp","colorOnSurface","colorSecondaryContainer","colorOnSecondaryContainer","colorSurfaceContainerLow","isLargeView","resetStoreOnDisconnected","currentTrek","difficulty","route","practice","themes","departureCity","informationDesk","displayShortDescription","poi","displayFullscreen","sensitiveArea","colorPrimaryContainer","colorOnPrimaryContainer","colorBackground","weather","labels","sources","accessibilities","accessibilityLevel","cities","treksToDisplay","filterType","filterName","filterNameProperty","urlLayer","attribution","center","zoom","colorTrekLine","colorDepartureIcon","colorArrivalIcon","colorSensitiveArea","colorPoiIcon","mapIsReady","languages","api","trekId","inBbox","districts","structures","portals","routes","practices","appWidth","appHeight","linkName","linkTarget","colorOnPrimary","colorSurface","colorSurfaceVariant","colorOnSurfaceVariant","colorSurfaceContainerHigh","fabBackgroundColor","fabColor","showTrek","showTreksMap","showTrekMap","showFilters","currentTrekId"],"sources":["./node_modules/@stencil/core/internal/client/patch-browser.js","@lazy-browser-entrypoint?app-data=conditional"],"sourcesContent":["/*\n Stencil Client Patch Browser v3.4.1 | MIT Licensed | https://stenciljs.com\n */\nimport { BUILD, NAMESPACE } from '@stencil/core/internal/app-data';\nimport { consoleDevInfo, plt, win, doc, promiseResolve, H } from '@stencil/core';\n/**\n * Helper method for querying a `meta` tag that contains a nonce value\n * out of a DOM's head.\n *\n * @param doc The DOM containing the `head` to query against\n * @returns The content of the meta tag representing the nonce value, or `undefined` if no tag\n * exists or the tag has no content.\n */\nfunction queryNonceMetaTagContent(doc) {\n var _a, _b, _c;\n return (_c = (_b = (_a = doc.head) === null || _a === void 0 ? void 0 : _a.querySelector('meta[name=\"csp-nonce\"]')) === null || _b === void 0 ? void 0 : _b.getAttribute('content')) !== null && _c !== void 0 ? _c : undefined;\n}\n// TODO(STENCIL-661): Remove code related to the dynamic import shim\nconst getDynamicImportFunction = (namespace) => `__sc_import_${namespace.replace(/\\s|-/g, '_')}`;\nconst patchBrowser = () => {\n // NOTE!! This fn cannot use async/await!\n if (BUILD.isDev && !BUILD.isTesting) {\n consoleDevInfo('Running in development mode.');\n }\n // TODO(STENCIL-659): Remove code implementing the CSS variable shim\n if (BUILD.cssVarShim) {\n // shim css vars\n // TODO(STENCIL-659): Remove code implementing the CSS variable shim\n plt.$cssShim$ = win.__cssshim;\n }\n if (BUILD.cloneNodeFix) {\n // opted-in to polyfill cloneNode() for slot polyfilled components\n patchCloneNodeFix(H.prototype);\n }\n if (BUILD.profile && !performance.mark) {\n // not all browsers support performance.mark/measure (Safari 10)\n // because the mark/measure APIs are designed to write entries to a buffer in the browser that does not exist,\n // simply stub the implementations out.\n // TODO(STENCIL-323): Remove this patch when support for older browsers is removed (breaking)\n // @ts-ignore\n performance.mark = performance.measure = () => {\n /*noop*/\n };\n performance.getEntriesByName = () => [];\n }\n // @ts-ignore\n const scriptElm = \n // TODO(STENCIL-661): Remove code related to the dynamic import shim\n // TODO(STENCIL-663): Remove code related to deprecated `safari10` field.\n BUILD.scriptDataOpts || BUILD.safari10 || BUILD.dynamicImportShim\n ? Array.from(doc.querySelectorAll('script')).find((s) => new RegExp(`\\/${NAMESPACE}(\\\\.esm)?\\\\.js($|\\\\?|#)`).test(s.src) ||\n s.getAttribute('data-stencil-namespace') === NAMESPACE)\n : null;\n const importMeta = import.meta.url;\n const opts = BUILD.scriptDataOpts ? (scriptElm || {})['data-opts'] || {} : {};\n // TODO(STENCIL-663): Remove code related to deprecated `safari10` field.\n if (BUILD.safari10 && 'onbeforeload' in scriptElm && !history.scrollRestoration /* IS_ESM_BUILD */) {\n // Safari < v11 support: This IF is true if it's Safari below v11.\n // This fn cannot use async/await since Safari didn't support it until v11,\n // however, Safari 10 did support modules. Safari 10 also didn't support \"nomodule\",\n // so both the ESM file and nomodule file would get downloaded. Only Safari\n // has 'onbeforeload' in the script, and \"history.scrollRestoration\" was added\n // to Safari in v11. Return a noop then() so the async/await ESM code doesn't continue.\n // IS_ESM_BUILD is replaced at build time so this check doesn't happen in systemjs builds.\n return {\n then() {\n /* promise noop */\n },\n };\n }\n // TODO(STENCIL-663): Remove code related to deprecated `safari10` field.\n if (!BUILD.safari10 && importMeta !== '') {\n opts.resourcesUrl = new URL('.', importMeta).href;\n // TODO(STENCIL-661): Remove code related to the dynamic import shim\n // TODO(STENCIL-663): Remove code related to deprecated `safari10` field.\n }\n else if (BUILD.dynamicImportShim || BUILD.safari10) {\n opts.resourcesUrl = new URL('.', new URL(scriptElm.getAttribute('data-resources-url') || scriptElm.src, win.location.href)).href;\n // TODO(STENCIL-661): Remove code related to the dynamic import shim\n if (BUILD.dynamicImportShim) {\n patchDynamicImport(opts.resourcesUrl, scriptElm);\n }\n // TODO(STENCIL-661): Remove code related to the dynamic import shim\n if (BUILD.dynamicImportShim && !win.customElements) {\n // module support, but no custom elements support (Old Edge)\n // @ts-ignore\n return import(/* webpackChunkName: \"polyfills-dom\" */ './dom.js').then(() => opts);\n }\n }\n return promiseResolve(opts);\n};\n// TODO(STENCIL-661): Remove code related to the dynamic import shim\nconst patchDynamicImport = (base, orgScriptElm) => {\n const importFunctionName = getDynamicImportFunction(NAMESPACE);\n try {\n // test if this browser supports dynamic imports\n // There is a caching issue in V8, that breaks using import() in Function\n // By generating a random string, we can workaround it\n // Check https://bugs.chromium.org/p/chromium/issues/detail?id=990810 for more info\n win[importFunctionName] = new Function('w', `return import(w);//${Math.random()}`);\n }\n catch (e) {\n // this shim is specifically for browsers that do support \"esm\" imports\n // however, they do NOT support \"dynamic\" imports\n // basically this code is for old Edge, v18 and below\n const moduleMap = new Map();\n win[importFunctionName] = (src) => {\n var _a;\n const url = new URL(src, base).href;\n let mod = moduleMap.get(url);\n if (!mod) {\n const script = doc.createElement('script');\n script.type = 'module';\n script.crossOrigin = orgScriptElm.crossOrigin;\n script.src = URL.createObjectURL(new Blob([`import * as m from '${url}'; window.${importFunctionName}.m = m;`], {\n type: 'application/javascript',\n }));\n // Apply CSP nonce to the script tag if it exists\n const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);\n if (nonce != null) {\n script.setAttribute('nonce', nonce);\n }\n mod = new Promise((resolve) => {\n script.onload = () => {\n resolve(win[importFunctionName].m);\n script.remove();\n };\n });\n moduleMap.set(url, mod);\n doc.head.appendChild(script);\n }\n return mod;\n };\n }\n};\nconst patchCloneNodeFix = (HTMLElementPrototype) => {\n const nativeCloneNodeFn = HTMLElementPrototype.cloneNode;\n HTMLElementPrototype.cloneNode = function (deep) {\n if (this.nodeName === 'TEMPLATE') {\n return nativeCloneNodeFn.call(this, deep);\n }\n const clonedNode = nativeCloneNodeFn.call(this, false);\n const srcChildNodes = this.childNodes;\n if (deep) {\n for (let i = 0; i < srcChildNodes.length; i++) {\n // Node.ATTRIBUTE_NODE === 2, and checking because IE11\n if (srcChildNodes[i].nodeType !== 2) {\n clonedNode.appendChild(srcChildNodes[i].cloneNode(true));\n }\n }\n }\n return clonedNode;\n };\n};\nexport { patchBrowser };\n","export { setNonce } from '@stencil/core';\nimport { bootstrapLazy } from '@stencil/core';\nimport { patchBrowser } from '@stencil/core/internal/client/patch-browser';\nimport { globalScripts } from '@stencil/core/internal/app-globals';\npatchBrowser().then(options => {\n globalScripts();\n return bootstrapLazy([/*!__STENCIL_LAZY_DATA__*/], options);\n});\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e,h as i,H as t,g as r}from"./p-16f28b0e.js";import{t as o}from"./p-0773c38f.js";import{o as n,s as a,r as s}from"./p-e9e878ef.js";const l='.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48}grw-app{display:block;position:relative;width:var(--app-width);height:var(--app-height);font-family:"Roboto";color:var(--color-on-surface);overflow:hidden;line-height:initial}.app-container{position:relative;width:100%;height:100%;max-width:100vw;max-height:100vh;overflow:hidden}.header-container,.large-view-header-container{background-color:var(--color-background);-webkit-box-shadow:var(--elevation-2);box-shadow:var(--elevation-2)}.header-container .header-top,.large-view-header-container .header-top{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:64px}.header-container .arrow-back-icon,.large-view-header-container .arrow-back-icon{cursor:pointer;-webkit-tap-highlight-color:transparent;color:var(--color-on-surface);border:none;background-color:var(--color-background);border-radius:50%;height:48px;width:48px;padding:12px}.header-container .arrow-back-icon:hover,.large-view-header-container .arrow-back-icon:hover{-webkit-box-shadow:var(--elevation-1);box-shadow:var(--elevation-1)}.header-container .header-left-container,.large-view-header-container .header-left-container{margin-left:8px}.header-container .header-right-container,.large-view-header-container .header-right-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-right:8px}.header-container .header-right-container .margin-right-icon,.large-view-header-container .header-right-container .margin-right-icon{margin-right:8px}.header-container .attribution-container a,.large-view-header-container .attribution-container a{font-size:24px;font-weight:400;line-height:40px;color:var(--color-on-surface);text-decoration:none}.options-container{height:calc(100% - 64px);position:absolute;width:100%;z-index:1100;top:64px}.handle-filters-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;margin:0px 16px;height:64px}.handle-filters-container .handle-filters-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;background-color:var(--color-background);color:var(--color-on-surface);padding:12px 24px;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.1000000015px;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}.handle-filters-container .handle-filters-button span{font-size:18px;font-family:"Material Symbols Outlined"}.handle-filters-container .current-treks-within-bounds-length{margin-left:12px;color:var(--color-on-surface)}.filters-container{background-color:var(--color-background);position:absolute;width:100%;padding:16px 0px 32px 0px;z-index:1100}.back-filters-container{background-color:rgba(0, 0, 0, 0.5);width:100%;height:calc(100% - 64px);position:absolute;z-index:1099;top:64px}.divider{margin:16px;border-top:1px solid var(--color-outline)}.init-loader-container,.loader-container,.large-view-loader-container{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;height:100%;background-color:var(--color-background)}.init-loader-container .loader,.loader-container .loader,.large-view-loader-container .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)}}.content-container{position:relative;display:-ms-flexbox;display:flex;height:calc(100% - 64px - 64px);background-color:var(--color-background)}.content-treks{height:calc(100% - 64px - 64px)}.content-trek{height:calc(100% - 64px)}.app-treks-list-container,.app-trek-detail-container,.large-view-app-treks-list-container,.large-view-app-trek-detail-container{height:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.app-map-container,.large-view-app-map-container{width:100%;height:100%}.map-visibility-button-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;position:absolute;bottom:24px;z-index:4}.map-visibility-button-container .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(--color-primary-container);color:var(--color-on-primary-container);-webkit-box-shadow:var(--elevation-1);box-shadow:var(--elevation-1);border-radius:12px;height:56px;font-size:16px;width:unset}.map-visibility-button-container .map-visibility-button:hover{-webkit-box-shadow:var(--elevation-4);box-shadow:var(--elevation-4)}.map-visibility-button-container .map-visibility-button span{font-family:"Material Symbols Outlined";font-size:24px;margin-right:8px;color:var(--color-on-primary-container)}.init-loader-container,.loader-container{width:100%}.app-treks-list-container,.app-trek-detail-container{width:100%}grw-treks-list{max-height:calc(100vh - 64px - 64px)}grw-trek-detail{max-height:calc(100vh - 64px - 48px)}.app-map-container{width:100%;position:absolute}.large-view-loader-container{width:50%}.large-view-app-treks-list-container,.large-view-app-trek-detail-container{width:50%}.large-view-app-map-container{position:relative;width:50%}';const c=class{constructor(i){e(this,i);this.largeViewSize=1024;this.handlePopStateBind=this.handlePopState.bind(this);this.showTrek=false;this.showTreksMap=false;this.showTrekMap=false;this.showFilters=false;this.isLargeView=false;this.currentTrekId=undefined;this.appWidth="100%";this.appHeight="100vh";this.api=undefined;this.languages="fr";this.inBbox=undefined;this.cities=undefined;this.districts=undefined;this.structures=undefined;this.themes=undefined;this.portals=undefined;this.routes=undefined;this.practices=undefined;this.urlLayer=undefined;this.center=undefined;this.zoom=undefined;this.attribution=undefined;this.linkName="GEOTREK";this.linkTarget="https://geotrek.fr";this.weather=false;this.colorPrimaryApp="#6750a4";this.colorOnPrimary="#ffffff";this.colorSurface="#1c1b1f";this.colorOnSurface="#49454e";this.colorSurfaceVariant="#fef7ff";this.colorOnSurfaceVariant="#1c1b1f";this.colorPrimaryContainer="#eaddff";this.colorOnPrimaryContainer="#21005e";this.colorSecondaryContainer="#e8def8";this.colorOnSecondaryContainer="#1d192b";this.colorBackground="#fef7ff";this.colorSurfaceContainerHigh="#ece6f0";this.colorSurfaceContainerLow="#f7f2fa";this.fabBackgroundColor="#eaddff";this.fabColor="#21005d";this.colorTrekLine="#6b0030";this.colorDepartureIcon="#006b3b";this.colorArrivalIcon="#85003b";this.colorSensitiveArea="#4974a5";this.colorPoiIcon="#974c6e"}onTrekCardPress(e){this.currentTrekId=e.detail;this.showTrek=!this.showTrek;this.showTrekMap=false;const i=new URL(window.location.toString());i.searchParams.set("trek",this.currentTrekId.toString());window.history.pushState({},"",i)}onWindowResize(){this.handleView()}onCenterOnMap(){if(!this.isLargeView){this.showTrekMap=true}}watchPropHandler(){window.dispatchEvent(new window.Event("resize"))}componentWillLoad(){const e=new URL(window.location.toString());const i=e.searchParams.get("trek");if(i){window.history.replaceState({isInitialHistoryWithTrek:true},"",e);this.currentTrekId=Number(i);this.showTrek=!this.showTrek}}componentDidLoad(){n("trekNetworkError",(()=>{if(a.trekNetworkError){const e=new URL(window.location.toString());e.searchParams.delete("trek");window.history.replaceState({},"",e);this.onTrekDetailsClose()}}));window.addEventListener("popstate",this.handlePopStateBind,false);this.handleView()}onTrekDetailsClose(){a.currentTrek=null;this.currentTrekId=null;this.showTrek=!this.showTrek}handleView(){this.isLargeView=this.appElement.getBoundingClientRect().width>=this.largeViewSize;this.showTreksMap=this.isLargeView;this.showTrekMap=this.isLargeView}handleFilters(){this.showFilters=!this.showFilters}handleBackButton(){if(window.history.state&&window.history.state.isInitialHistoryWithTrek){this.onTrekDetailsClose();const e=new URL(window.location.toString());e.searchParams.delete("trek");window.history.pushState({},"",e)}else{window.history.back()}}handlePopState(){const e=new URL(window.location.toString());const i=Number(e.searchParams.get("trek"));if(i&&this.currentTrekId!==i){this.currentTrekId=i;this.showTrek=true}else if(!i){this.onTrekDetailsClose()}}handleShowMap(){if(this.currentTrekId){this.showTrekMap=!this.showTrekMap}else{this.showTreksMap=!this.showTreksMap}}disconnectedCallback(){s();window.removeEventListener("popstate",this.handlePopStateBind)}render(){return i(t,{style:{"--color-primary-app":this.colorPrimaryApp,"--color-on-primary":this.colorOnPrimary,"--color-surface":this.colorSurface,"--color-on-surface":this.colorOnSurface,"--color-surface-variant":this.colorSurfaceVariant,"--color-on-surface-variant":this.colorOnSurfaceVariant,"--color-primary-container":this.colorPrimaryContainer,"--color-on-primary-container":this.colorOnPrimaryContainer,"--color-secondary-container":this.colorSecondaryContainer,"--color-on-secondary-container":this.colorOnSecondaryContainer,"--color-background":this.colorBackground,"--color-surface-container-high":this.colorSurfaceContainerHigh,"--color-surface-container-low":this.colorSurfaceContainerLow,"--fab-background-color":this.fabBackgroundColor,"--fab-color":this.fabColor,"--app-width":this.appWidth,"--app-height":this.appHeight}},!a.currentTreks&&!a.currentTrek&&i("div",{class:"init-loader-container"},i("span",{class:"loader"})),!this.showTrek&&!a.treks&&i("grw-treks-provider",{api:this.api,languages:this.languages,"in-bbox":this.inBbox,cities:this.cities,districts:this.districts,structures:this.structures,themes:this.themes,portals:this.portals,routes:this.routes,practices:this.practices}),this.showTrek&&this.currentTrekId&&!a.currentTrek&&i("grw-trek-provider",{api:this.api,languages:this.languages,"trek-id":this.currentTrekId}),(a.currentTreks||a.currentTrek)&&i("div",{class:"app-container"},i("div",{class:this.isLargeView?"large-view-header-container":"header-container"},i("div",{class:"header-top"},i("div",{class:"header-left-container"},this.showTrek?i("button",{onClick:()=>this.handleBackButton(),class:"arrow-back-icon"},i("span",{class:"material-symbols-outlined"},"arrow_back")):i("div",{class:"attribution-container"},i("a",{target:"_blank",href:this.linkTarget},this.linkName))),i("div",{class:"header-right-container"},a.languages.length>1&&i("grw-select-language",null))),!this.showTrek&&i("div",{class:"handle-filters-container"},a.treksWithinBounds&&i("div",{class:"current-treks-within-bounds-length"},`${a.treksWithinBounds.length} ${a.treksWithinBounds.length>1?o[a.language].treks:o[a.language].trek}`),i("button",{onClick:()=>this.handleFilters(),class:"handle-filters-button"},i("span",{class:"material-symbols-outlined margin-right-icon"},"filter_list"),o[a.language].filter))),i("div",{class:`content-container ${this.showTrek?"content-trek":"content-treks"}`},i("div",{class:this.isLargeView?"large-view-app-treks-list-container":"app-treks-list-container",style:{display:this.showTrek?"none":"flex",position:this.showTrek?"absolute":"relative"}},i("grw-treks-list",{"reset-store-on-disconnected":"false","is-large-view":this.isLargeView,"color-primary-app":this.colorPrimaryApp,"color-on-surface":this.colorOnSurface,"color-secondary-container":this.colorSecondaryContainer,"color-on-secondary-container":this.colorOnSecondaryContainer,"color-surface-container-low":this.colorSurfaceContainerLow})),this.showTrek&&!a.currentTrek&&i("div",{class:this.isLargeView?"large-view-loader-container":"loader-container"},i("span",{class:"loader"})),a.currentTrek&&i("div",{class:this.isLargeView?"large-view-app-trek-detail-container":"app-trek-detail-container"},i("grw-trek-detail",{"reset-store-on-disconnected":"false","color-primary-app":this.colorPrimaryApp,"color-on-surface":this.colorOnSurface,"color-primary-container":this.colorPrimaryContainer,"color-on-primary-container":this.colorOnPrimaryContainer,"color-secondary-container":this.colorSecondaryContainer,"color-on-secondary-container":this.colorOnSecondaryContainer,"color-background":this.colorBackground,weather:this.weather,style:{zIndex:this.showTrekMap?"0":"1"},"is-large-view":this.isLargeView})),i("grw-map",{"reset-store-on-disconnected":"false",class:this.isLargeView?"large-view-app-map-container":"app-map-container",style:{visibility:this.showTreksMap&&!this.showTrek||this.showTrekMap&&this.showTrek||this.isLargeView?"visible":"hidden",zIndex:this.showTrekMap?"1":"0"},"url-layer":this.urlLayer,center:this.center,zoom:this.zoom,attribution:this.attribution,"color-primary-app":this.colorPrimaryApp,"color-on-surface":this.colorOnSurface,"color-primary-container":this.colorPrimaryContainer,"color-on-primary-container":this.colorOnPrimaryContainer,"color-background":this.colorBackground,"color-trek-line":this.colorTrekLine,"color-departure-icon":this.colorDepartureIcon,"color-arrival-icon":this.colorArrivalIcon,"color-sensitive-area":this.colorSensitiveArea,"color-poi-icon":this.colorPoiIcon,"is-large-view":this.isLargeView})),(!this.showTrek||this.showTrek&&a.currentTrek)&&i("div",{class:"map-visibility-button-container"},i("button",{onClick:()=>this.handleShowMap(),class:"map-visibility-button",style:{display:this.isLargeView?"none":"flex"}},i("span",{class:"material-symbols-outlined"},this.showTrek?this.showTrekMap?"summarize":"map":this.showTreksMap?"list":"map"),this.showTrek?this.showTrekMap?o[a.language].showDetails:o[a.language].showRoute:this.showTreksMap?o[a.language].showList:o[a.language].showMap))),!this.showTrek&&this.showFilters&&i("div",{class:"options-container"},i("div",{class:"filters-container"},i("grw-filter",{filterName:o[a.language].practice,filterType:"practices",filterNameProperty:"name"}),i("div",{class:"divider"}),i("grw-filter",{filterName:o[a.language].difficulty,filterType:"difficulties",filterNameProperty:"label"}),i("div",{class:"divider"}),i("grw-filter",{filterName:o[a.language].duration,filterType:"durations",filterNameProperty:"name"})),i("div",{onClick:()=>this.handleFilters(),class:"back-filters-container"})))}get appElement(){return r(this)}static get watchers(){return{isLargeView:["watchPropHandler"]}}};c.style=l;export{c as grw_app};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as e,h as i,H as t,g as r}from"./p-16f28b0e.js";import{t as o}from"./p-0773c38f.js";import{o as n,s as a,r as s}from"./p-e9e878ef.js";const l='.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48}grw-app{display:block;position:relative;width:var(--app-width);height:var(--app-height);font-family:"Roboto";color:var(--color-on-surface);overflow:hidden;line-height:initial;max-width:100vw;max-height:100vh}.app-container{position:relative;width:100%;height:100%;overflow:hidden}.header-container,.large-view-header-container{background-color:var(--color-background);-webkit-box-shadow:var(--elevation-2);box-shadow:var(--elevation-2)}.header-container .header-top,.large-view-header-container .header-top{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:64px}.header-container .arrow-back-icon,.large-view-header-container .arrow-back-icon{cursor:pointer;-webkit-tap-highlight-color:transparent;color:var(--color-on-surface);border:none;background-color:var(--color-background);border-radius:50%;height:48px;width:48px;padding:12px}.header-container .arrow-back-icon:hover,.large-view-header-container .arrow-back-icon:hover{-webkit-box-shadow:var(--elevation-1);box-shadow:var(--elevation-1)}.header-container .header-left-container,.large-view-header-container .header-left-container{margin-left:8px}.header-container .header-right-container,.large-view-header-container .header-right-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-right:8px}.header-container .header-right-container .margin-right-icon,.large-view-header-container .header-right-container .margin-right-icon{margin-right:8px}.header-container .attribution-container a,.large-view-header-container .attribution-container a{font-size:24px;font-weight:400;line-height:40px;color:var(--color-on-surface);text-decoration:none}.options-container{height:calc(100% - 64px);position:absolute;width:100%;z-index:1100;top:64px}.handle-filters-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;margin:0px 16px;height:64px}.handle-filters-container .handle-filters-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;background-color:var(--color-background);color:var(--color-on-surface);padding:12px 24px;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.1000000015px;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}.handle-filters-container .handle-filters-button span{font-size:18px;font-family:"Material Symbols Outlined"}.handle-filters-container .current-treks-within-bounds-length{margin-left:12px;color:var(--color-on-surface)}.filters-container{background-color:var(--color-background);position:absolute;width:100%;padding:16px 0px 32px 0px;z-index:1100}.back-filters-container{background-color:rgba(0, 0, 0, 0.5);width:100%;height:calc(100% - 64px);position:absolute;z-index:1099;top:64px}.divider{margin:16px;border-top:1px solid var(--color-outline)}.init-loader-container,.loader-container,.large-view-loader-container{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;height:100%;background-color:var(--color-background)}.init-loader-container .loader,.loader-container .loader,.large-view-loader-container .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)}}.content-container{position:relative;display:-ms-flexbox;display:flex;height:calc(100% - 64px - 64px);background-color:var(--color-background)}.content-treks{height:calc(100% - 64px - 64px)}.content-trek{height:calc(100% - 64px)}.app-treks-list-container,.app-trek-detail-container,.large-view-app-treks-list-container,.large-view-app-trek-detail-container{height:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.app-map-container,.large-view-app-map-container{width:100%;height:100%}.map-visibility-button-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;position:absolute;bottom:24px;z-index:4}.map-visibility-button-container .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(--color-primary-container);color:var(--color-on-primary-container);-webkit-box-shadow:var(--elevation-1);box-shadow:var(--elevation-1);border-radius:12px;height:56px;font-size:16px;width:unset}.map-visibility-button-container .map-visibility-button:hover{-webkit-box-shadow:var(--elevation-4);box-shadow:var(--elevation-4)}.map-visibility-button-container .map-visibility-button span{font-family:"Material Symbols Outlined";font-size:24px;margin-right:8px;color:var(--color-on-primary-container)}.init-loader-container,.loader-container{width:100%}.app-treks-list-container,.app-trek-detail-container{width:100%}grw-treks-list{max-height:calc(100vh - 64px - 64px)}grw-trek-detail{max-height:calc(100vh - 64px - 48px)}.app-map-container{width:100%;position:absolute}.large-view-loader-container{width:50%}.large-view-app-treks-list-container,.large-view-app-trek-detail-container{width:50%}.large-view-app-map-container{position:relative;width:50%}';const c=class{constructor(i){e(this,i);this.largeViewSize=1024;this.handlePopStateBind=this.handlePopState.bind(this);this.showTrek=false;this.showTreksMap=false;this.showTrekMap=false;this.showFilters=false;this.isLargeView=false;this.currentTrekId=undefined;this.appWidth="100%";this.appHeight="100vh";this.api=undefined;this.languages="fr";this.inBbox=undefined;this.cities=undefined;this.districts=undefined;this.structures=undefined;this.themes=undefined;this.portals=undefined;this.routes=undefined;this.practices=undefined;this.urlLayer=undefined;this.center=undefined;this.zoom=undefined;this.attribution=undefined;this.linkName="GEOTREK";this.linkTarget="https://geotrek.fr";this.weather=false;this.colorPrimaryApp="#6750a4";this.colorOnPrimary="#ffffff";this.colorSurface="#1c1b1f";this.colorOnSurface="#49454e";this.colorSurfaceVariant="#fef7ff";this.colorOnSurfaceVariant="#1c1b1f";this.colorPrimaryContainer="#eaddff";this.colorOnPrimaryContainer="#21005e";this.colorSecondaryContainer="#e8def8";this.colorOnSecondaryContainer="#1d192b";this.colorBackground="#fef7ff";this.colorSurfaceContainerHigh="#ece6f0";this.colorSurfaceContainerLow="#f7f2fa";this.fabBackgroundColor="#eaddff";this.fabColor="#21005d";this.colorTrekLine="#6b0030";this.colorDepartureIcon="#006b3b";this.colorArrivalIcon="#85003b";this.colorSensitiveArea="#4974a5";this.colorPoiIcon="#974c6e"}onTrekCardPress(e){this.currentTrekId=e.detail;this.showTrek=!this.showTrek;this.showTrekMap=false;const i=new URL(window.location.toString());i.searchParams.set("trek",this.currentTrekId.toString());window.history.pushState({},"",i)}onWindowResize(){this.handleView()}onCenterOnMap(){if(!this.isLargeView){this.showTrekMap=true}}watchPropHandler(){window.dispatchEvent(new window.Event("resize"))}componentWillLoad(){const e=new URL(window.location.toString());const i=e.searchParams.get("trek");if(i){window.history.replaceState({isInitialHistoryWithTrek:true},"",e);this.currentTrekId=Number(i);this.showTrek=!this.showTrek}}componentDidLoad(){n("trekNetworkError",(()=>{if(a.trekNetworkError){const e=new URL(window.location.toString());e.searchParams.delete("trek");window.history.replaceState({},"",e);this.onTrekDetailsClose()}}));window.addEventListener("popstate",this.handlePopStateBind,false);this.handleView()}onTrekDetailsClose(){a.currentTrek=null;this.currentTrekId=null;this.showTrek=!this.showTrek}handleView(){this.isLargeView=this.appElement.getBoundingClientRect().width>=this.largeViewSize;this.showTreksMap=this.isLargeView;this.showTrekMap=this.isLargeView}handleFilters(){this.showFilters=!this.showFilters}handleBackButton(){if(window.history.state&&window.history.state.isInitialHistoryWithTrek){this.onTrekDetailsClose();const e=new URL(window.location.toString());e.searchParams.delete("trek");window.history.pushState({},"",e)}else{window.history.back()}}handlePopState(){const e=new URL(window.location.toString());const i=Number(e.searchParams.get("trek"));if(i&&this.currentTrekId!==i){this.currentTrekId=i;this.showTrek=true}else if(!i){this.onTrekDetailsClose()}}handleShowMap(){if(this.currentTrekId){this.showTrekMap=!this.showTrekMap}else{this.showTreksMap=!this.showTreksMap}}disconnectedCallback(){s();window.removeEventListener("popstate",this.handlePopStateBind)}render(){return i(t,{style:{"--color-primary-app":this.colorPrimaryApp,"--color-on-primary":this.colorOnPrimary,"--color-surface":this.colorSurface,"--color-on-surface":this.colorOnSurface,"--color-surface-variant":this.colorSurfaceVariant,"--color-on-surface-variant":this.colorOnSurfaceVariant,"--color-primary-container":this.colorPrimaryContainer,"--color-on-primary-container":this.colorOnPrimaryContainer,"--color-secondary-container":this.colorSecondaryContainer,"--color-on-secondary-container":this.colorOnSecondaryContainer,"--color-background":this.colorBackground,"--color-surface-container-high":this.colorSurfaceContainerHigh,"--color-surface-container-low":this.colorSurfaceContainerLow,"--fab-background-color":this.fabBackgroundColor,"--fab-color":this.fabColor,"--app-width":this.appWidth,"--app-height":this.appHeight}},!a.currentTreks&&!a.currentTrek&&i("div",{class:"init-loader-container"},i("span",{class:"loader"})),!this.showTrek&&!a.treks&&i("grw-treks-provider",{api:this.api,languages:this.languages,"in-bbox":this.inBbox,cities:this.cities,districts:this.districts,structures:this.structures,themes:this.themes,portals:this.portals,routes:this.routes,practices:this.practices}),this.showTrek&&this.currentTrekId&&!a.currentTrek&&i("grw-trek-provider",{api:this.api,languages:this.languages,"trek-id":this.currentTrekId}),(a.currentTreks||a.currentTrek)&&i("div",{class:"app-container"},i("div",{class:this.isLargeView?"large-view-header-container":"header-container"},i("div",{class:"header-top"},i("div",{class:"header-left-container"},this.showTrek?i("button",{onClick:()=>this.handleBackButton(),class:"arrow-back-icon"},i("span",{class:"material-symbols-outlined"},"arrow_back")):i("div",{class:"attribution-container"},i("a",{target:"_blank",href:this.linkTarget},this.linkName))),i("div",{class:"header-right-container"},a.languages.length>1&&i("grw-select-language",null))),!this.showTrek&&i("div",{class:"handle-filters-container"},a.treksWithinBounds&&i("div",{class:"current-treks-within-bounds-length"},`${a.treksWithinBounds.length} ${a.treksWithinBounds.length>1?o[a.language].treks:o[a.language].trek}`),i("button",{onClick:()=>this.handleFilters(),class:"handle-filters-button"},i("span",{class:"material-symbols-outlined margin-right-icon"},"filter_list"),o[a.language].filter))),i("div",{class:`content-container ${this.showTrek?"content-trek":"content-treks"}`},i("div",{class:this.isLargeView?"large-view-app-treks-list-container":"app-treks-list-container",style:{display:this.showTrek?"none":"flex",position:this.showTrek?"absolute":"relative"}},i("grw-treks-list",{"reset-store-on-disconnected":"false","is-large-view":this.isLargeView,"color-primary-app":this.colorPrimaryApp,"color-on-surface":this.colorOnSurface,"color-secondary-container":this.colorSecondaryContainer,"color-on-secondary-container":this.colorOnSecondaryContainer,"color-surface-container-low":this.colorSurfaceContainerLow})),this.showTrek&&!a.currentTrek&&i("div",{class:this.isLargeView?"large-view-loader-container":"loader-container"},i("span",{class:"loader"})),a.currentTrek&&i("div",{class:this.isLargeView?"large-view-app-trek-detail-container":"app-trek-detail-container"},i("grw-trek-detail",{"reset-store-on-disconnected":"false","color-primary-app":this.colorPrimaryApp,"color-on-surface":this.colorOnSurface,"color-primary-container":this.colorPrimaryContainer,"color-on-primary-container":this.colorOnPrimaryContainer,"color-secondary-container":this.colorSecondaryContainer,"color-on-secondary-container":this.colorOnSecondaryContainer,"color-background":this.colorBackground,weather:this.weather,style:{zIndex:this.showTrekMap?"0":"1"},"is-large-view":this.isLargeView})),i("grw-map",{"reset-store-on-disconnected":"false",class:this.isLargeView?"large-view-app-map-container":"app-map-container",style:{visibility:this.showTreksMap&&!this.showTrek||this.showTrekMap&&this.showTrek||this.isLargeView?"visible":"hidden",zIndex:this.showTrekMap?"1":"0"},"url-layer":this.urlLayer,center:this.center,zoom:this.zoom,attribution:this.attribution,"color-primary-app":this.colorPrimaryApp,"color-on-surface":this.colorOnSurface,"color-primary-container":this.colorPrimaryContainer,"color-on-primary-container":this.colorOnPrimaryContainer,"color-background":this.colorBackground,"color-trek-line":this.colorTrekLine,"color-departure-icon":this.colorDepartureIcon,"color-arrival-icon":this.colorArrivalIcon,"color-sensitive-area":this.colorSensitiveArea,"color-poi-icon":this.colorPoiIcon,"is-large-view":this.isLargeView})),(!this.showTrek||this.showTrek&&a.currentTrek)&&i("div",{class:"map-visibility-button-container"},i("button",{onClick:()=>this.handleShowMap(),class:"map-visibility-button",style:{display:this.isLargeView?"none":"flex"}},i("span",{class:"material-symbols-outlined"},this.showTrek?this.showTrekMap?"summarize":"map":this.showTreksMap?"list":"map"),this.showTrek?this.showTrekMap?o[a.language].showDetails:o[a.language].showRoute:this.showTreksMap?o[a.language].showList:o[a.language].showMap))),!this.showTrek&&this.showFilters&&i("div",{class:"options-container"},i("div",{class:"filters-container"},i("grw-filter",{filterName:o[a.language].practice,filterType:"practices",filterNameProperty:"name"}),i("div",{class:"divider"}),i("grw-filter",{filterName:o[a.language].difficulty,filterType:"difficulties",filterNameProperty:"label"}),i("div",{class:"divider"}),i("grw-filter",{filterName:o[a.language].duration,filterType:"durations",filterNameProperty:"name"})),i("div",{onClick:()=>this.handleFilters(),class:"back-filters-container"})))}get appElement(){return r(this)}static get watchers(){return{isLargeView:["watchPropHandler"]}}};c.style=l;export{c as grw_app};
|
|
2
|
+
//# sourceMappingURL=p-87deca22.entry.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["grwAppCss","GrwApp","this","largeViewSize","handlePopStateBind","handlePopState","bind","onTrekCardPress","event","currentTrekId","detail","showTrek","showTrekMap","url","URL","window","location","toString","searchParams","set","history","pushState","onWindowResize","handleView","onCenterOnMap","isLargeView","watchPropHandler","dispatchEvent","Event","componentWillLoad","trekParam","get","replaceState","isInitialHistoryWithTrek","Number","componentDidLoad","onChange","state","trekNetworkError","urlRedirect","delete","onTrekDetailsClose","addEventListener","currentTrek","appElement","getBoundingClientRect","width","showTreksMap","handleFilters","showFilters","handleBackButton","back","handleShowMap","disconnectedCallback","reset","removeEventListener","render","h","Host","style","colorPrimaryApp","colorOnPrimary","colorSurface","colorOnSurface","colorSurfaceVariant","colorOnSurfaceVariant","colorPrimaryContainer","colorOnPrimaryContainer","colorSecondaryContainer","colorOnSecondaryContainer","colorBackground","colorSurfaceContainerHigh","colorSurfaceContainerLow","fabBackgroundColor","fabColor","appWidth","appHeight","currentTreks","class","treks","api","languages","inBbox","cities","districts","structures","themes","portals","routes","practices","onClick","target","href","linkTarget","linkName","length","treksWithinBounds","translate","language","trek","filter","display","position","weather","zIndex","visibility","urlLayer","center","zoom","attribution","colorTrekLine","colorDepartureIcon","colorArrivalIcon","colorSensitiveArea","colorPoiIcon","showDetails","showRoute","showList","showMap","filterName","practice","filterType","filterNameProperty","difficulty","duration"],"sources":["./src/components/grw-app/grw-app.scss?tag=grw-app","./src/components/grw-app/grw-app.tsx"],"sourcesContent":[".material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\ngrw-app {\n display: block;\n position: relative;\n width: var(--app-width);\n height: var(--app-height);\n font-family: 'Roboto';\n color: var(--color-on-surface);\n overflow: hidden;\n line-height: initial;\n}\n\n.app-container {\n position: relative;\n width: 100%;\n height: 100%;\n max-width: 100vw;\n max-height: 100vh;\n overflow: hidden;\n}\n\n.header-container,\n.large-view-header-container {\n background-color: var(--color-background);\n box-shadow: var(--elevation-2);\n .header-top {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n height: 64px;\n }\n .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: 50%;\n height: 48px;\n width: 48px;\n padding: 12px;\n &:hover {\n box-shadow: var(--elevation-1);\n }\n }\n .header-left-container {\n margin-left: 8px;\n }\n .header-right-container {\n display: flex;\n align-items: center;\n margin-right: 8px;\n .margin-right-icon {\n margin-right: 8px;\n }\n }\n .attribution-container {\n a {\n font-size: 24px;\n font-weight: 400;\n line-height: 40px;\n color: var(--color-on-surface);\n text-decoration: none;\n }\n }\n}\n\n.options-container {\n height: calc(100% - 64px);\n position: absolute;\n width: 100%;\n z-index: 1100;\n top: 64px;\n}\n\n.handle-filters-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 0px 16px;\n height: 64px;\n .handle-filters-button {\n user-select: none;\n cursor: pointer;\n -webkit-tap-highlight-color: transparent;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n border: none;\n background-color: var(--color-background);\n color: var(--color-on-surface);\n padding: 12px 24px;\n border-radius: 20px;\n box-sizing: border-box;\n position: relative;\n gap: 8px;\n white-space: nowrap;\n line-height: 20px;\n letter-spacing: 0.10000000149011612px;\n font-size: 14px;\n font-weight: 500;\n box-shadow: var(--elevation-1);\n transition: box-shadow 0.2s ease-in-out 0s;\n span {\n font-size: 18px;\n font-family: 'Material Symbols Outlined';\n }\n }\n .current-treks-within-bounds-length {\n margin-left: 12px;\n color: var(--color-on-surface);\n }\n}\n\n.filters-container {\n background-color: var(--color-background);\n position: absolute;\n width: 100%;\n padding: 16px 0px 32px 0px;\n z-index: 1100;\n}\n\n.back-filters-container {\n background-color: rgba(0, 0, 0, 0.5);\n width: 100%;\n height: calc(100% - 64px);\n position: absolute;\n z-index: 1099;\n top: 64px;\n}\n\n.divider {\n margin: 16px;\n border-top: 1px solid var(--color-outline);\n}\n\n.init-loader-container,\n.loader-container,\n.large-view-loader-container {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n background-color: var(--color-background);\n .loader {\n width: 48px;\n height: 48px;\n border: 5px 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 }\n\n @keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n}\n\n.content-container {\n position: relative;\n display: flex;\n height: calc(100% - 64px - 64px);\n background-color: var(--color-background);\n}\n\n.content-treks {\n height: calc(100% - 64px - 64px);\n}\n\n.content-trek {\n height: calc(100% - 64px);\n}\n\n.app-treks-list-container,\n.app-trek-detail-container,\n.large-view-app-treks-list-container,\n.large-view-app-trek-detail-container {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.app-map-container,\n.large-view-app-map-container {\n width: 100%;\n height: 100%;\n}\n\n.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 .map-visibility-button {\n cursor: pointer;\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n border: none;\n text-decoration: none;\n padding: 16px;\n background-color: var(--color-primary-container);\n color: var(--color-on-primary-container);\n box-shadow: var(--elevation-1);\n border-radius: 12px;\n height: 56px;\n font-size: 16px;\n width: unset;\n &:hover {\n box-shadow: var(--elevation-4);\n }\n span {\n font-family: 'Material Symbols Outlined';\n font-size: 24px;\n margin-right: 8px;\n color: var(--color-on-primary-container);\n }\n }\n}\n\n.init-loader-container,\n.loader-container {\n width: 100%;\n}\n\n.app-treks-list-container,\n.app-trek-detail-container {\n width: 100%;\n}\n\ngrw-treks-list {\n max-height: calc(100vh - 64px - 64px);\n}\n\ngrw-trek-detail {\n max-height: calc(100vh - 64px - 48px);\n}\n\n.app-map-container {\n width: 100%;\n position: absolute;\n}\n\n.large-view-loader-container {\n width: 50%;\n}\n\n.large-view-app-treks-list-container,\n.large-view-app-trek-detail-container {\n width: 50%;\n}\n\n.large-view-app-map-container {\n position: relative;\n width: 50%;\n}\n","import { Component, Host, h, Listen, State, Prop, Element, Watch } from '@stencil/core';\nimport { translate } from 'i18n/i18n';\nimport state, { onChange, reset } from 'store/store';\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() showTreksMap = false;\n @State() showTrekMap = false;\n @State() showFilters = false;\n @State() isLargeView = false;\n @State() currentTrekId: 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() urlLayer: string;\n @Prop() center: string;\n @Prop() zoom: number;\n @Prop() attribution: string;\n @Prop() linkName = 'GEOTREK';\n @Prop() linkTarget = 'https://geotrek.fr';\n @Prop() weather = false;\n\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\n @Prop() colorTrekLine = '#6b0030';\n @Prop() colorDepartureIcon = '#006b3b';\n @Prop() colorArrivalIcon = '#85003b';\n @Prop() colorSensitiveArea = '#4974a5';\n @Prop() colorPoiIcon = '#974c6e';\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.currentTrekId = event.detail;\n this.showTrek = !this.showTrek;\n this.showTrekMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.set('trek', this.currentTrekId.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 @Watch('isLargeView')\n watchPropHandler() {\n window.dispatchEvent(new window.Event('resize'));\n }\n\n componentWillLoad() {\n const url = new URL(window.location.toString());\n const trekParam = url.searchParams.get('trek');\n if (trekParam) {\n window.history.replaceState({ isInitialHistoryWithTrek: true }, '', url);\n this.currentTrekId = Number(trekParam);\n this.showTrek = !this.showTrek;\n }\n }\n\n componentDidLoad() {\n onChange('trekNetworkError', () => {\n if (state.trekNetworkError) {\n const urlRedirect = new URL(window.location.toString());\n urlRedirect.searchParams.delete('trek');\n window.history.replaceState({}, '', urlRedirect);\n this.onTrekDetailsClose();\n }\n });\n window.addEventListener('popstate', this.handlePopStateBind, false);\n this.handleView();\n }\n\n onTrekDetailsClose() {\n state.currentTrek = null;\n this.currentTrekId = null;\n this.showTrek = !this.showTrek;\n }\n\n handleView() {\n this.isLargeView = this.appElement.getBoundingClientRect().width >= this.largeViewSize;\n this.showTreksMap = 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.isInitialHistoryWithTrek) {\n this.onTrekDetailsClose();\n const url = new URL(window.location.toString());\n url.searchParams.delete('trek');\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 if (trekParam && this.currentTrekId !== trekParam) {\n this.currentTrekId = trekParam;\n this.showTrek = true;\n } else if (!trekParam) {\n this.onTrekDetailsClose();\n }\n }\n\n handleShowMap() {\n if (this.currentTrekId) {\n this.showTrekMap = !this.showTrekMap;\n } else {\n this.showTreksMap = !this.showTreksMap;\n }\n }\n\n // handleEraseFilters() {\n // console.log('handleEraseFilters');\n // }\n\n // handleOkFilters() {\n // console.log('handleOkFilters');\n // }\n\n disconnectedCallback() {\n reset();\n window.removeEventListener('popstate', this.handlePopStateBind);\n }\n\n render() {\n return (\n <Host\n style={{\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 '--app-width': this.appWidth,\n '--app-height': this.appHeight,\n }}\n >\n {!state.currentTreks && !state.currentTrek && (\n <div class=\"init-loader-container\">\n <span class=\"loader\"></span>\n </div>\n )}\n {!this.showTrek && !state.treks && (\n <grw-treks-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 routes={this.routes}\n practices={this.practices}\n ></grw-treks-provider>\n )}\n {this.showTrek && this.currentTrekId && !state.currentTrek && (\n <grw-trek-provider api={this.api} languages={this.languages} trek-id={this.currentTrekId}></grw-trek-provider>\n )}\n {(state.currentTreks || state.currentTrek) && (\n <div class=\"app-container\">\n <div class={this.isLargeView ? 'large-view-header-container' : 'header-container'}>\n <div class=\"header-top\">\n <div class=\"header-left-container\">\n {this.showTrek ? (\n <button onClick={() => this.handleBackButton()} class=\"arrow-back-icon\">\n <span class=\"material-symbols-outlined\">arrow_back</span>\n </button>\n ) : (\n <div class=\"attribution-container\">\n <a target=\"_blank\" href={this.linkTarget}>\n {this.linkName}\n </a>\n </div>\n )}\n </div>\n <div class=\"header-right-container\">{state.languages.length > 1 && <grw-select-language></grw-select-language>}</div>\n </div>\n {!this.showTrek && (\n <div class=\"handle-filters-container\">\n {state.treksWithinBounds && (\n <div class=\"current-treks-within-bounds-length\">{`${state.treksWithinBounds.length} ${\n state.treksWithinBounds.length > 1 ? translate[state.language].treks : translate[state.language].trek\n }`}</div>\n )}\n <button onClick={() => this.handleFilters()} class=\"handle-filters-button\">\n <span class=\"material-symbols-outlined margin-right-icon\">filter_list</span>\n {translate[state.language].filter}\n </button>\n </div>\n )}\n </div>\n\n <div class={`content-container ${this.showTrek ? 'content-trek' : 'content-treks'}`}>\n <div\n class={this.isLargeView ? 'large-view-app-treks-list-container' : 'app-treks-list-container'}\n style={{ display: this.showTrek ? 'none' : 'flex', position: this.showTrek ? 'absolute' : 'relative' }}\n >\n <grw-treks-list\n reset-store-on-disconnected=\"false\"\n is-large-view={this.isLargeView}\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 </div>\n {this.showTrek && !state.currentTrek && (\n <div class={this.isLargeView ? 'large-view-loader-container' : 'loader-container'}>\n <span class=\"loader\"></span>\n </div>\n )}\n {state.currentTrek && (\n <div class={this.isLargeView ? 'large-view-app-trek-detail-container' : 'app-trek-detail-container'}>\n <grw-trek-detail\n reset-store-on-disconnected=\"false\"\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-background={this.colorBackground}\n weather={this.weather}\n style={{ zIndex: this.showTrekMap ? '0' : '1' }}\n is-large-view={this.isLargeView}\n ></grw-trek-detail>\n </div>\n )}\n <grw-map\n reset-store-on-disconnected=\"false\"\n class={this.isLargeView ? 'large-view-app-map-container' : 'app-map-container'}\n style={{\n visibility: (this.showTreksMap && !this.showTrek) || (this.showTrekMap && this.showTrek) || this.isLargeView ? 'visible' : 'hidden',\n zIndex: this.showTrekMap ? '1' : '0',\n }}\n url-layer={this.urlLayer}\n center={this.center}\n zoom={this.zoom}\n attribution={this.attribution}\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-departure-icon={this.colorDepartureIcon}\n color-arrival-icon={this.colorArrivalIcon}\n color-sensitive-area={this.colorSensitiveArea}\n color-poi-icon={this.colorPoiIcon}\n is-large-view={this.isLargeView}\n ></grw-map>\n </div>\n {(!this.showTrek || (this.showTrek && state.currentTrek)) && (\n <div class=\"map-visibility-button-container\">\n <button onClick={() => this.handleShowMap()} class=\"map-visibility-button\" style={{ display: this.isLargeView ? 'none' : 'flex' }}>\n <span class=\"material-symbols-outlined\">{this.showTrek ? (this.showTrekMap ? 'summarize' : 'map') : this.showTreksMap ? 'list' : 'map'}</span>\n {this.showTrek\n ? this.showTrekMap\n ? translate[state.language].showDetails\n : translate[state.language].showRoute\n : this.showTreksMap\n ? translate[state.language].showList\n : translate[state.language].showMap}\n </button>\n </div>\n )}\n </div>\n )}\n {!this.showTrek && this.showFilters && (\n <div class=\"options-container\">\n {/* <div class=\"filters-buttons-container\">\n <button class=\"filter-button\" onClick={() => this.handleEraseFilters()}>\n Effacer\n </button>\n <button class=\"filter-button\" onClick={() => this.handleOkFilters()}>\n Ok\n </button>\n </div> */}\n <div class=\"filters-container\">\n <grw-filter filterName={translate[state.language].practice} filterType=\"practices\" filterNameProperty=\"name\"></grw-filter>\n <div class=\"divider\"></div>\n <grw-filter filterName={translate[state.language].difficulty} filterType=\"difficulties\" filterNameProperty=\"label\"></grw-filter>\n <div class=\"divider\"></div>\n <grw-filter filterName={translate[state.language].duration} filterType=\"durations\" filterNameProperty=\"name\"></grw-filter>\n </div>\n <div onClick={() => this.handleFilters()} class=\"back-filters-container\"></div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["grwAppCss","GrwApp","this","largeViewSize","handlePopStateBind","handlePopState","bind","onTrekCardPress","event","currentTrekId","detail","showTrek","showTrekMap","url","URL","window","location","toString","searchParams","set","history","pushState","onWindowResize","handleView","onCenterOnMap","isLargeView","watchPropHandler","dispatchEvent","Event","componentWillLoad","trekParam","get","replaceState","isInitialHistoryWithTrek","Number","componentDidLoad","onChange","state","trekNetworkError","urlRedirect","delete","onTrekDetailsClose","addEventListener","currentTrek","appElement","getBoundingClientRect","width","showTreksMap","handleFilters","showFilters","handleBackButton","back","handleShowMap","disconnectedCallback","reset","removeEventListener","render","h","Host","style","colorPrimaryApp","colorOnPrimary","colorSurface","colorOnSurface","colorSurfaceVariant","colorOnSurfaceVariant","colorPrimaryContainer","colorOnPrimaryContainer","colorSecondaryContainer","colorOnSecondaryContainer","colorBackground","colorSurfaceContainerHigh","colorSurfaceContainerLow","fabBackgroundColor","fabColor","appWidth","appHeight","currentTreks","class","treks","api","languages","inBbox","cities","districts","structures","themes","portals","routes","practices","onClick","target","href","linkTarget","linkName","length","treksWithinBounds","translate","language","trek","filter","display","position","weather","zIndex","visibility","urlLayer","center","zoom","attribution","colorTrekLine","colorDepartureIcon","colorArrivalIcon","colorSensitiveArea","colorPoiIcon","showDetails","showRoute","showList","showMap","filterName","practice","filterType","filterNameProperty","difficulty","duration"],"sources":["./src/components/grw-app/grw-app.scss?tag=grw-app","./src/components/grw-app/grw-app.tsx"],"sourcesContent":[".material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\ngrw-app {\n display: block;\n position: relative;\n width: var(--app-width);\n height: var(--app-height);\n font-family: 'Roboto';\n color: var(--color-on-surface);\n overflow: hidden;\n line-height: initial;\n max-width: 100vw;\n max-height: 100vh;\n}\n\n.app-container {\n position: relative;\n width: 100%;\n height: 100%;\n overflow: hidden;\n}\n\n.header-container,\n.large-view-header-container {\n background-color: var(--color-background);\n box-shadow: var(--elevation-2);\n .header-top {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n height: 64px;\n }\n .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: 50%;\n height: 48px;\n width: 48px;\n padding: 12px;\n &:hover {\n box-shadow: var(--elevation-1);\n }\n }\n .header-left-container {\n margin-left: 8px;\n }\n .header-right-container {\n display: flex;\n align-items: center;\n margin-right: 8px;\n .margin-right-icon {\n margin-right: 8px;\n }\n }\n .attribution-container {\n a {\n font-size: 24px;\n font-weight: 400;\n line-height: 40px;\n color: var(--color-on-surface);\n text-decoration: none;\n }\n }\n}\n\n.options-container {\n height: calc(100% - 64px);\n position: absolute;\n width: 100%;\n z-index: 1100;\n top: 64px;\n}\n\n.handle-filters-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 0px 16px;\n height: 64px;\n .handle-filters-button {\n user-select: none;\n cursor: pointer;\n -webkit-tap-highlight-color: transparent;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n border: none;\n background-color: var(--color-background);\n color: var(--color-on-surface);\n padding: 12px 24px;\n border-radius: 20px;\n box-sizing: border-box;\n position: relative;\n gap: 8px;\n white-space: nowrap;\n line-height: 20px;\n letter-spacing: 0.10000000149011612px;\n font-size: 14px;\n font-weight: 500;\n box-shadow: var(--elevation-1);\n transition: box-shadow 0.2s ease-in-out 0s;\n span {\n font-size: 18px;\n font-family: 'Material Symbols Outlined';\n }\n }\n .current-treks-within-bounds-length {\n margin-left: 12px;\n color: var(--color-on-surface);\n }\n}\n\n.filters-container {\n background-color: var(--color-background);\n position: absolute;\n width: 100%;\n padding: 16px 0px 32px 0px;\n z-index: 1100;\n}\n\n.back-filters-container {\n background-color: rgba(0, 0, 0, 0.5);\n width: 100%;\n height: calc(100% - 64px);\n position: absolute;\n z-index: 1099;\n top: 64px;\n}\n\n.divider {\n margin: 16px;\n border-top: 1px solid var(--color-outline);\n}\n\n.init-loader-container,\n.loader-container,\n.large-view-loader-container {\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n background-color: var(--color-background);\n .loader {\n width: 48px;\n height: 48px;\n border: 5px 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 }\n\n @keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n}\n\n.content-container {\n position: relative;\n display: flex;\n height: calc(100% - 64px - 64px);\n background-color: var(--color-background);\n}\n\n.content-treks {\n height: calc(100% - 64px - 64px);\n}\n\n.content-trek {\n height: calc(100% - 64px);\n}\n\n.app-treks-list-container,\n.app-trek-detail-container,\n.large-view-app-treks-list-container,\n.large-view-app-trek-detail-container {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n.app-map-container,\n.large-view-app-map-container {\n width: 100%;\n height: 100%;\n}\n\n.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 .map-visibility-button {\n cursor: pointer;\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n border: none;\n text-decoration: none;\n padding: 16px;\n background-color: var(--color-primary-container);\n color: var(--color-on-primary-container);\n box-shadow: var(--elevation-1);\n border-radius: 12px;\n height: 56px;\n font-size: 16px;\n width: unset;\n &:hover {\n box-shadow: var(--elevation-4);\n }\n span {\n font-family: 'Material Symbols Outlined';\n font-size: 24px;\n margin-right: 8px;\n color: var(--color-on-primary-container);\n }\n }\n}\n\n.init-loader-container,\n.loader-container {\n width: 100%;\n}\n\n.app-treks-list-container,\n.app-trek-detail-container {\n width: 100%;\n}\n\ngrw-treks-list {\n max-height: calc(100vh - 64px - 64px);\n}\n\ngrw-trek-detail {\n max-height: calc(100vh - 64px - 48px);\n}\n\n.app-map-container {\n width: 100%;\n position: absolute;\n}\n\n.large-view-loader-container {\n width: 50%;\n}\n\n.large-view-app-treks-list-container,\n.large-view-app-trek-detail-container {\n width: 50%;\n}\n\n.large-view-app-map-container {\n position: relative;\n width: 50%;\n}\n","import { Component, Host, h, Listen, State, Prop, Element, Watch } from '@stencil/core';\nimport { translate } from 'i18n/i18n';\nimport state, { onChange, reset } from 'store/store';\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() showTreksMap = false;\n @State() showTrekMap = false;\n @State() showFilters = false;\n @State() isLargeView = false;\n @State() currentTrekId: 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() urlLayer: string;\n @Prop() center: string;\n @Prop() zoom: number;\n @Prop() attribution: string;\n @Prop() linkName = 'GEOTREK';\n @Prop() linkTarget = 'https://geotrek.fr';\n @Prop() weather = false;\n\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\n @Prop() colorTrekLine = '#6b0030';\n @Prop() colorDepartureIcon = '#006b3b';\n @Prop() colorArrivalIcon = '#85003b';\n @Prop() colorSensitiveArea = '#4974a5';\n @Prop() colorPoiIcon = '#974c6e';\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.currentTrekId = event.detail;\n this.showTrek = !this.showTrek;\n this.showTrekMap = false;\n const url = new URL(window.location.toString());\n url.searchParams.set('trek', this.currentTrekId.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 @Watch('isLargeView')\n watchPropHandler() {\n window.dispatchEvent(new window.Event('resize'));\n }\n\n componentWillLoad() {\n const url = new URL(window.location.toString());\n const trekParam = url.searchParams.get('trek');\n if (trekParam) {\n window.history.replaceState({ isInitialHistoryWithTrek: true }, '', url);\n this.currentTrekId = Number(trekParam);\n this.showTrek = !this.showTrek;\n }\n }\n\n componentDidLoad() {\n onChange('trekNetworkError', () => {\n if (state.trekNetworkError) {\n const urlRedirect = new URL(window.location.toString());\n urlRedirect.searchParams.delete('trek');\n window.history.replaceState({}, '', urlRedirect);\n this.onTrekDetailsClose();\n }\n });\n window.addEventListener('popstate', this.handlePopStateBind, false);\n this.handleView();\n }\n\n onTrekDetailsClose() {\n state.currentTrek = null;\n this.currentTrekId = null;\n this.showTrek = !this.showTrek;\n }\n\n handleView() {\n this.isLargeView = this.appElement.getBoundingClientRect().width >= this.largeViewSize;\n this.showTreksMap = 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.isInitialHistoryWithTrek) {\n this.onTrekDetailsClose();\n const url = new URL(window.location.toString());\n url.searchParams.delete('trek');\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 if (trekParam && this.currentTrekId !== trekParam) {\n this.currentTrekId = trekParam;\n this.showTrek = true;\n } else if (!trekParam) {\n this.onTrekDetailsClose();\n }\n }\n\n handleShowMap() {\n if (this.currentTrekId) {\n this.showTrekMap = !this.showTrekMap;\n } else {\n this.showTreksMap = !this.showTreksMap;\n }\n }\n\n // handleEraseFilters() {\n // console.log('handleEraseFilters');\n // }\n\n // handleOkFilters() {\n // console.log('handleOkFilters');\n // }\n\n disconnectedCallback() {\n reset();\n window.removeEventListener('popstate', this.handlePopStateBind);\n }\n\n render() {\n return (\n <Host\n style={{\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 '--app-width': this.appWidth,\n '--app-height': this.appHeight,\n }}\n >\n {!state.currentTreks && !state.currentTrek && (\n <div class=\"init-loader-container\">\n <span class=\"loader\"></span>\n </div>\n )}\n {!this.showTrek && !state.treks && (\n <grw-treks-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 routes={this.routes}\n practices={this.practices}\n ></grw-treks-provider>\n )}\n {this.showTrek && this.currentTrekId && !state.currentTrek && (\n <grw-trek-provider api={this.api} languages={this.languages} trek-id={this.currentTrekId}></grw-trek-provider>\n )}\n {(state.currentTreks || state.currentTrek) && (\n <div class=\"app-container\">\n <div class={this.isLargeView ? 'large-view-header-container' : 'header-container'}>\n <div class=\"header-top\">\n <div class=\"header-left-container\">\n {this.showTrek ? (\n <button onClick={() => this.handleBackButton()} class=\"arrow-back-icon\">\n <span class=\"material-symbols-outlined\">arrow_back</span>\n </button>\n ) : (\n <div class=\"attribution-container\">\n <a target=\"_blank\" href={this.linkTarget}>\n {this.linkName}\n </a>\n </div>\n )}\n </div>\n <div class=\"header-right-container\">{state.languages.length > 1 && <grw-select-language></grw-select-language>}</div>\n </div>\n {!this.showTrek && (\n <div class=\"handle-filters-container\">\n {state.treksWithinBounds && (\n <div class=\"current-treks-within-bounds-length\">{`${state.treksWithinBounds.length} ${\n state.treksWithinBounds.length > 1 ? translate[state.language].treks : translate[state.language].trek\n }`}</div>\n )}\n <button onClick={() => this.handleFilters()} class=\"handle-filters-button\">\n <span class=\"material-symbols-outlined margin-right-icon\">filter_list</span>\n {translate[state.language].filter}\n </button>\n </div>\n )}\n </div>\n\n <div class={`content-container ${this.showTrek ? 'content-trek' : 'content-treks'}`}>\n <div\n class={this.isLargeView ? 'large-view-app-treks-list-container' : 'app-treks-list-container'}\n style={{ display: this.showTrek ? 'none' : 'flex', position: this.showTrek ? 'absolute' : 'relative' }}\n >\n <grw-treks-list\n reset-store-on-disconnected=\"false\"\n is-large-view={this.isLargeView}\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 </div>\n {this.showTrek && !state.currentTrek && (\n <div class={this.isLargeView ? 'large-view-loader-container' : 'loader-container'}>\n <span class=\"loader\"></span>\n </div>\n )}\n {state.currentTrek && (\n <div class={this.isLargeView ? 'large-view-app-trek-detail-container' : 'app-trek-detail-container'}>\n <grw-trek-detail\n reset-store-on-disconnected=\"false\"\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-background={this.colorBackground}\n weather={this.weather}\n style={{ zIndex: this.showTrekMap ? '0' : '1' }}\n is-large-view={this.isLargeView}\n ></grw-trek-detail>\n </div>\n )}\n <grw-map\n reset-store-on-disconnected=\"false\"\n class={this.isLargeView ? 'large-view-app-map-container' : 'app-map-container'}\n style={{\n visibility: (this.showTreksMap && !this.showTrek) || (this.showTrekMap && this.showTrek) || this.isLargeView ? 'visible' : 'hidden',\n zIndex: this.showTrekMap ? '1' : '0',\n }}\n url-layer={this.urlLayer}\n center={this.center}\n zoom={this.zoom}\n attribution={this.attribution}\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-departure-icon={this.colorDepartureIcon}\n color-arrival-icon={this.colorArrivalIcon}\n color-sensitive-area={this.colorSensitiveArea}\n color-poi-icon={this.colorPoiIcon}\n is-large-view={this.isLargeView}\n ></grw-map>\n </div>\n {(!this.showTrek || (this.showTrek && state.currentTrek)) && (\n <div class=\"map-visibility-button-container\">\n <button onClick={() => this.handleShowMap()} class=\"map-visibility-button\" style={{ display: this.isLargeView ? 'none' : 'flex' }}>\n <span class=\"material-symbols-outlined\">{this.showTrek ? (this.showTrekMap ? 'summarize' : 'map') : this.showTreksMap ? 'list' : 'map'}</span>\n {this.showTrek\n ? this.showTrekMap\n ? translate[state.language].showDetails\n : translate[state.language].showRoute\n : this.showTreksMap\n ? translate[state.language].showList\n : translate[state.language].showMap}\n </button>\n </div>\n )}\n </div>\n )}\n {!this.showTrek && this.showFilters && (\n <div class=\"options-container\">\n {/* <div class=\"filters-buttons-container\">\n <button class=\"filter-button\" onClick={() => this.handleEraseFilters()}>\n Effacer\n </button>\n <button class=\"filter-button\" onClick={() => this.handleOkFilters()}>\n Ok\n </button>\n </div> */}\n <div class=\"filters-container\">\n <grw-filter filterName={translate[state.language].practice} filterType=\"practices\" filterNameProperty=\"name\"></grw-filter>\n <div class=\"divider\"></div>\n <grw-filter filterName={translate[state.language].difficulty} filterType=\"difficulties\" filterNameProperty=\"label\"></grw-filter>\n <div class=\"divider\"></div>\n <grw-filter filterName={translate[state.language].duration} filterType=\"durations\" filterNameProperty=\"name\"></grw-filter>\n </div>\n <div onClick={() => this.handleFilters()} class=\"back-filters-container\"></div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|