@geotrekce/geotrek-rando-widget 0.4.0 → 0.4.2

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.
Files changed (131) hide show
  1. package/dist/cjs/geotrek-rando-widget.cjs.js +1 -1
  2. package/dist/cjs/geotrek-rando-widget.cjs.js.br +0 -0
  3. package/dist/cjs/geotrek-rando-widget.cjs.js.gz +0 -0
  4. package/dist/cjs/grw-app.cjs.entry.js +7 -5
  5. package/dist/cjs/grw-app.cjs.entry.js.br +0 -0
  6. package/dist/cjs/grw-app.cjs.entry.js.gz +0 -0
  7. package/dist/cjs/grw-app.cjs.entry.js.map +1 -1
  8. package/dist/cjs/grw-filters_12.cjs.entry.js +80 -71
  9. package/dist/cjs/grw-filters_12.cjs.entry.js.br +0 -0
  10. package/dist/cjs/grw-filters_12.cjs.entry.js.gz +0 -0
  11. package/dist/cjs/grw-filters_12.cjs.entry.js.map +1 -1
  12. package/dist/cjs/grw-information-desk_6.cjs.entry.js +1 -1
  13. package/dist/cjs/grw-information-desk_6.cjs.entry.js.br +0 -0
  14. package/dist/cjs/grw-information-desk_6.cjs.entry.js.gz +0 -0
  15. package/dist/cjs/grw-information-desk_6.cjs.entry.js.map +1 -1
  16. package/dist/cjs/loader.cjs.js +1 -1
  17. package/dist/cjs/loader.cjs.js.br +0 -0
  18. package/dist/cjs/loader.cjs.js.gz +0 -0
  19. package/dist/collection/components/grw-app/grw-app.css +6 -5
  20. package/dist/collection/components/grw-app/grw-app.css.br +0 -0
  21. package/dist/collection/components/grw-app/grw-app.css.gz +0 -0
  22. package/dist/collection/components/grw-app/grw-app.js +6 -4
  23. package/dist/collection/components/grw-app/grw-app.js.br +0 -0
  24. package/dist/collection/components/grw-app/grw-app.js.gz +0 -0
  25. package/dist/collection/components/grw-app/grw-app.js.map +1 -1
  26. package/dist/collection/components/grw-touristic-content/grw-touristic-content-card.js +1 -1
  27. package/dist/collection/components/grw-touristic-content/grw-touristic-content-card.js.br +0 -0
  28. package/dist/collection/components/grw-touristic-content/grw-touristic-content-card.js.gz +0 -0
  29. package/dist/collection/components/grw-touristic-content/grw-touristic-content-card.js.map +1 -1
  30. package/dist/collection/store/grw-touristic-content-provider.js +1 -1
  31. package/dist/collection/store/grw-touristic-content-provider.js.br +0 -0
  32. package/dist/collection/store/grw-touristic-content-provider.js.gz +0 -0
  33. package/dist/collection/store/grw-touristic-content-provider.js.map +1 -1
  34. package/dist/collection/store/grw-touristic-contents-provider.js +119 -7
  35. package/dist/collection/store/grw-touristic-contents-provider.js.br +0 -0
  36. package/dist/collection/store/grw-touristic-contents-provider.js.gz +0 -0
  37. package/dist/collection/store/grw-touristic-contents-provider.js.map +1 -1
  38. package/dist/collection/store/grw-treks-provider.js +1 -2
  39. package/dist/collection/store/grw-treks-provider.js.br +0 -0
  40. package/dist/collection/store/grw-treks-provider.js.gz +0 -0
  41. package/dist/collection/store/grw-treks-provider.js.map +1 -1
  42. package/dist/esm/geotrek-rando-widget.js +1 -1
  43. package/dist/esm/geotrek-rando-widget.js.br +0 -0
  44. package/dist/esm/geotrek-rando-widget.js.gz +0 -0
  45. package/dist/esm/grw-app.entry.js +7 -5
  46. package/dist/esm/grw-app.entry.js.br +0 -0
  47. package/dist/esm/grw-app.entry.js.gz +0 -0
  48. package/dist/esm/grw-app.entry.js.map +1 -1
  49. package/dist/esm/grw-filters_12.entry.js +79 -70
  50. package/dist/esm/grw-filters_12.entry.js.br +0 -0
  51. package/dist/esm/grw-filters_12.entry.js.gz +0 -0
  52. package/dist/esm/grw-filters_12.entry.js.map +1 -1
  53. package/dist/esm/grw-information-desk_6.entry.js +1 -1
  54. package/dist/esm/grw-information-desk_6.entry.js.br +0 -0
  55. package/dist/esm/grw-information-desk_6.entry.js.gz +0 -0
  56. package/dist/esm/grw-information-desk_6.entry.js.map +1 -1
  57. package/dist/esm/loader.js +1 -1
  58. package/dist/esm/loader.js.br +0 -0
  59. package/dist/esm/loader.js.gz +0 -0
  60. package/dist/esm-es5/geotrek-rando-widget.js +1 -1
  61. package/dist/esm-es5/geotrek-rando-widget.js.br +0 -0
  62. package/dist/esm-es5/geotrek-rando-widget.js.gz +0 -0
  63. package/dist/esm-es5/geotrek-rando-widget.js.map +1 -1
  64. package/dist/esm-es5/grw-app.entry.js +1 -1
  65. package/dist/esm-es5/grw-app.entry.js.br +0 -0
  66. package/dist/esm-es5/grw-app.entry.js.gz +0 -0
  67. package/dist/esm-es5/grw-app.entry.js.map +1 -1
  68. package/dist/esm-es5/grw-filters_12.entry.js +1 -1
  69. package/dist/esm-es5/grw-filters_12.entry.js.br +0 -0
  70. package/dist/esm-es5/grw-filters_12.entry.js.gz +0 -0
  71. package/dist/esm-es5/grw-filters_12.entry.js.map +1 -1
  72. package/dist/esm-es5/grw-information-desk_6.entry.js +1 -1
  73. package/dist/esm-es5/grw-information-desk_6.entry.js.br +0 -0
  74. package/dist/esm-es5/grw-information-desk_6.entry.js.gz +0 -0
  75. package/dist/esm-es5/grw-information-desk_6.entry.js.map +1 -1
  76. package/dist/esm-es5/loader.js +1 -1
  77. package/dist/esm-es5/loader.js.br +0 -0
  78. package/dist/esm-es5/loader.js.gz +0 -0
  79. package/dist/esm-es5/loader.js.map +1 -1
  80. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js +1 -1
  81. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.br +0 -0
  82. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.gz +0 -0
  83. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.map +1 -1
  84. package/dist/geotrek-rando-widget/p-3c32c109.system.entry.js +2 -0
  85. package/dist/geotrek-rando-widget/p-3c32c109.system.entry.js.br +0 -0
  86. package/dist/geotrek-rando-widget/p-3c32c109.system.entry.js.gz +0 -0
  87. package/dist/geotrek-rando-widget/p-3c32c109.system.entry.js.map +1 -0
  88. package/dist/geotrek-rando-widget/{p-8d2cad32.system.entry.js → p-638b7451.system.entry.js} +2 -2
  89. package/dist/geotrek-rando-widget/p-638b7451.system.entry.js.br +0 -0
  90. package/dist/geotrek-rando-widget/{p-8d2cad32.system.entry.js.gz → p-638b7451.system.entry.js.gz} +0 -0
  91. package/dist/geotrek-rando-widget/p-638b7451.system.entry.js.map +1 -0
  92. package/dist/geotrek-rando-widget/{p-ccf92c36.entry.js → p-689557e0.entry.js} +2 -2
  93. package/dist/geotrek-rando-widget/p-689557e0.entry.js.br +0 -0
  94. package/dist/geotrek-rando-widget/p-689557e0.entry.js.gz +0 -0
  95. package/dist/geotrek-rando-widget/p-689557e0.entry.js.map +1 -0
  96. package/dist/geotrek-rando-widget/{p-388ecec9.entry.js → p-bcd87b5c.entry.js} +2 -2
  97. package/dist/geotrek-rando-widget/p-bcd87b5c.entry.js.br +0 -0
  98. package/dist/geotrek-rando-widget/{p-388ecec9.entry.js.gz → p-bcd87b5c.entry.js.gz} +0 -0
  99. package/dist/geotrek-rando-widget/p-bcd87b5c.entry.js.map +1 -0
  100. package/dist/geotrek-rando-widget/p-cc8a7df2.system.js +1 -1
  101. package/dist/geotrek-rando-widget/p-cc8a7df2.system.js.br +0 -0
  102. package/dist/geotrek-rando-widget/p-cc8a7df2.system.js.gz +0 -0
  103. package/dist/geotrek-rando-widget/p-cc8a7df2.system.js.map +1 -1
  104. package/dist/geotrek-rando-widget/p-d5584258.entry.js +2 -0
  105. package/dist/geotrek-rando-widget/p-d5584258.entry.js.br +0 -0
  106. package/dist/geotrek-rando-widget/p-d5584258.entry.js.gz +0 -0
  107. package/dist/geotrek-rando-widget/p-d5584258.entry.js.map +1 -0
  108. package/dist/geotrek-rando-widget/{p-b94b6924.system.entry.js → p-feeb03a9.system.entry.js} +2 -2
  109. package/dist/geotrek-rando-widget/p-feeb03a9.system.entry.js.br +0 -0
  110. package/dist/geotrek-rando-widget/{p-b94b6924.system.entry.js.gz → p-feeb03a9.system.entry.js.gz} +0 -0
  111. package/dist/geotrek-rando-widget/p-feeb03a9.system.entry.js.map +1 -0
  112. package/dist/types/components.d.ts +31 -19
  113. package/dist/types/store/grw-touristic-contents-provider.d.ts +6 -0
  114. package/package.json +1 -1
  115. package/dist/geotrek-rando-widget/p-388ecec9.entry.js.br +0 -0
  116. package/dist/geotrek-rando-widget/p-388ecec9.entry.js.map +0 -1
  117. package/dist/geotrek-rando-widget/p-790f5a62.entry.js +0 -2
  118. package/dist/geotrek-rando-widget/p-790f5a62.entry.js.br +0 -0
  119. package/dist/geotrek-rando-widget/p-790f5a62.entry.js.gz +0 -0
  120. package/dist/geotrek-rando-widget/p-790f5a62.entry.js.map +0 -1
  121. package/dist/geotrek-rando-widget/p-8d2cad32.system.entry.js.br +0 -0
  122. package/dist/geotrek-rando-widget/p-8d2cad32.system.entry.js.map +0 -1
  123. package/dist/geotrek-rando-widget/p-b94b6924.system.entry.js.br +0 -0
  124. package/dist/geotrek-rando-widget/p-b94b6924.system.entry.js.map +0 -1
  125. package/dist/geotrek-rando-widget/p-ccf92c36.entry.js.br +0 -0
  126. package/dist/geotrek-rando-widget/p-ccf92c36.entry.js.gz +0 -0
  127. package/dist/geotrek-rando-widget/p-ccf92c36.entry.js.map +0 -1
  128. package/dist/geotrek-rando-widget/p-da75716b.system.entry.js +0 -2
  129. package/dist/geotrek-rando-widget/p-da75716b.system.entry.js.br +0 -0
  130. package/dist/geotrek-rando-widget/p-da75716b.system.entry.js.gz +0 -0
  131. package/dist/geotrek-rando-widget/p-da75716b.system.entry.js.map +0 -1
@@ -156,7 +156,7 @@ const GrwTouristicContentCard = class {
156
156
  if (!this.isInsideHorizontalList) {
157
157
  this.touristicContentCardPress.emit(this.touristicContent.id);
158
158
  }
159
- } }, index.h("div", { class: "touristic-content-type-img-container" }, this.isInsideHorizontalList ? (index.h("div", { class: "swiper", ref: el => (this.swiperTouristicContentRef = el) }, index.h("div", { class: "swiper-wrapper" }, this.touristicContent.attachments.length > 0 ? (this.touristicContent.attachments
159
+ } }, index.h("div", { class: "touristic-content-type-img-container" }, this.isInsideHorizontalList ? (index.h("div", { class: "swiper", ref: el => (this.swiperTouristicContentRef = el) }, index.h("div", { class: "swiper-wrapper" }, this.touristicContent.attachments.filter(attachment => attachment.type === 'image').length > 0 ? (this.touristicContent.attachments
160
160
  .filter(attachment => attachment.type === 'image')
161
161
  .map(attachment => (index.h("div", { class: "swiper-slide" }, index.h("img", { class: `touristic-content-img${this.displayFullscreen ? ' img-fullscreen' : ''}`, src: this.displayFullscreen ? attachment.url : attachment.thumbnail, loading: "lazy", onClick: () => this.handleFullscreen() }))))) : (index.h("div", { class: "swiper-slide" }, index.h("img", { class: "default-touristic-content-img", src: defaultImageSrc, loading: "lazy" })))), index.h("div", { class: "swiper-pagination", ref: el => (this.paginationElTouristicContentRef = el) }), index.h("div", { class: "swiper-button-prev", ref: el => (this.prevElTouristicContentRef = el) }), index.h("div", { class: "swiper-button-next", ref: el => (this.nextElTouristicContentRef = el) }))) : this.touristicContent.attachments.filter(attachment => attachment.type === 'image').length > 0 ? (index.h("img", { class: "image", src: `${this.touristicContent.attachments.filter(attachment => attachment.type === 'image')[0].thumbnail}`, loading: "lazy" })) : (index.h("div", null))), index.h("div", { class: "touristic-content-sub-container" }, index.h("div", { class: "touristic-content-category-container" }, index.h("img", { src: touristicContentCategory.pictogram }), index.h("div", { class: "touristic-content-category-name" }, touristicContentCategory.label)), index.h("div", { class: "touristic-content-name" }, this.touristicContent.name)), this.isInsideHorizontalList && (index.h("div", { class: "touristic-content-more-detail-container" }, index.h("button", { class: "more-details-button", onClick: () => this.touristicContentCardPress.emit(this.touristicContent.id) }, "Plus de d\u00E9tails"))))));
162
162
  }
@@ -1 +1 @@
1
- {"file":"grw-information-desk.grw-poi.grw-sensitive-area-detail.grw-touristic-content-card.grw-touristic-event-card.grw-trek-card.entry.cjs.js","mappings":"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","names":["h","Host","Swiper","Navigation","Pagination","Keyboard","getAssetPath","state","index","onChange","reset","formatDuration","formatLength","formatAscent"],"sources":["./src/components/grw-information-desk/grw-information-desk.scss?tag=grw-information-desk&encapsulation=shadow","./src/components/grw-information-desk/grw-information-desk.tsx","./src/components/grw-poi-detail/grw-poi.scss?tag=grw-poi&encapsulation=shadow","./src/components/grw-poi-detail/grw-poi.tsx","./src/components/grw-sensitive-area-detail/grw-sensitive-area-detail.scss?tag=grw-sensitive-area-detail&encapsulation=shadow","./src/components/grw-sensitive-area-detail/grw-sensitive-area-detail.tsx","./src/components/grw-touristic-content/grw-touristic-content-card.scss?tag=grw-touristic-content-card&encapsulation=shadow","./src/components/grw-touristic-content/grw-touristic-content-card.tsx","./src/components/grw-touristic-event/grw-touristic-event-card.scss?tag=grw-touristic-event-card&encapsulation=shadow","./src/components/grw-touristic-event/grw-touristic-event-card.tsx","./src/components/grw-trek-card/grw-trek-card.scss?tag=grw-trek-card&encapsulation=shadow","./src/components/grw-trek-card/grw-trek-card.tsx"],"sourcesContent":[".material-symbols {\n font-family: 'Material Symbols Outlined';\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\n:host {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border: 1px solid gray;\n border-radius: 12px;\n background-color: var(--color-surface-container-low);\n color: var(--color-on-surface);\n a {\n color: var(--color-primary-app);\n }\n}\n\n.information-desk-img {\n position: relative;\n img {\n width: 100%;\n height: 100%;\n max-height: 200px;\n object-fit: cover;\n }\n}\n\n.information-desk-sub-container {\n display: flex;\n flex-direction: column;\n padding: 12px;\n}\n\n.information-desk-name {\n font-size: 16px;\n line-height: 24px;\n font-weight: 500;\n}\n\n.information-desk-description {\n font-size: 14px;\n line-height: 20px;\n}\n\n.information-desk-description-short {\n font-size: 14px;\n line-height: 20px;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 4;\n overflow: hidden;\n}\n\n.handle-information-desk-description {\n cursor: pointer;\n color: var(--color-primary-app);\n text-decoration: underline;\n margin-top: 12px;\n}\n\n.phone-container,\n.mail-container,\n.link-container {\n display: flex;\n align-items: center;\n span {\n font-size: 16px;\n margin-right: 8px;\n }\n}\n\n.center-on-map-button {\n cursor: pointer;\n background-color: var(--color-primary-container);\n color: var(--color-on-primary-container);\n border-radius: 8px;\n padding: 8px 16px;\n box-shadow: var(--elevation-1);\n height: 32px;\n gap: 8px;\n box-sizing: border-box;\n text-align: start;\n vertical-align: middle;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n position: relative;\n border: none;\n font-size: 14px;\n margin: 12px 0px;\n &:hover {\n box-shadow: var(--elevation-2);\n }\n span {\n font-size: 18px;\n }\n}\n","import { Component, Host, h, Prop, State, Event, EventEmitter } from '@stencil/core';\nimport { InformationDesk } from 'types/types';\n\n@Component({\n tag: 'grw-information-desk',\n styleUrl: 'grw-information-desk.scss',\n shadow: true,\n})\nexport class GrwInformationDeskDetail {\n @Event() centerOnMap: EventEmitter<{ latitude: number; longitude: number }>;\n @State() displayShortDescription = true;\n @Prop() informationDesk: InformationDesk;\n\n handleInformationDeskDescription() {\n this.displayShortDescription = !this.displayShortDescription;\n }\n\n handleCenterOnMap() {\n this.centerOnMap.emit({ latitude: this.informationDesk.latitude, longitude: this.informationDesk.longitude });\n }\n\n render() {\n return (\n <Host>\n {this.informationDesk.photo_url && (\n <div class=\"information-desk-img\">\n <img src={this.informationDesk.photo_url} loading=\"lazy\" />\n </div>\n )}\n <div class=\"information-desk-sub-container\">\n {this.informationDesk.name && <div class=\"information-desk-name\">{this.informationDesk.name}</div>}\n {this.informationDesk.latitude && this.informationDesk.longitude && (\n <button class=\"center-on-map-button\" onClick={() => this.handleCenterOnMap()}>\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n location_searching\n </span>\n Centrer sur la carte\n </button>\n )}\n {(this.informationDesk.postal_code || this.informationDesk.municipality || this.informationDesk.street) && (\n <div>\n {this.informationDesk.postal_code && this.informationDesk.postal_code}\n {this.informationDesk.municipality && ` ${this.informationDesk.municipality}`}\n {this.informationDesk.street && ` ${this.informationDesk.street}`}\n </div>\n )}\n {this.informationDesk.phone && (\n <div class=\"phone-container\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n call\n </span>\n <a href={`tel:${this.informationDesk.phone}`}>{this.informationDesk.phone}</a>\n </div>\n )}\n {this.informationDesk.email && (\n <div class=\"mail-container\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n mail\n </span>\n <a href={`mailto:${this.informationDesk.email}`}>{this.informationDesk.email}</a>\n </div>\n )}\n {this.informationDesk.website && (\n <div class=\"link-container\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n link\n </span>\n <a href={`${this.informationDesk.website}`}>{this.informationDesk.website}</a>\n </div>\n )}\n {this.informationDesk.description && (\n <div class=\"information-desk-description-container\">\n <div class={this.displayShortDescription ? 'information-desk-description-short' : 'information-desk-description'} innerHTML={this.informationDesk.description}></div>\n <div class=\"handle-information-desk-description\" onClick={() => this.handleInformationDeskDescription()}>\n {this.displayShortDescription ? 'Lire plus' : 'Lire moins'}\n </div>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n","@use '~swiper/swiper.scss';\n@use '~swiper/modules/navigation/navigation.scss';\n@use '~swiper/modules/pagination/pagination.scss';\n\n.swiper {\n z-index: 0;\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\n:host {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border: 1px solid gray;\n border-radius: 12px;\n background-color: var(--color-surface-container-low);\n color: var(--color-on-surface);\n a {\n color: var(--color-primary-app);\n }\n --swiper-navigation-size: 24px;\n --swiper-navigation-color: var(--color-on-primary-container);\n --swiper-pagination-color: var(--color-primary-container);\n --swiper-pagination-bullet-size: 12px;\n .swiper-button-prev,\n .swiper-button-next {\n background-color: var(--color-primary-container);\n padding: 4px;\n width: 32px;\n height: 32px;\n border-radius: 32px;\n box-shadow: var(--elevation-1);\n &:hover {\n box-shadow: var(--elevation-2);\n }\n }\n}\n\n.poi-type-img-container {\n position: relative;\n .poi-img,\n .default-poi-img {\n width: 100%;\n height: 100%;\n max-height: 200px;\n object-fit: cover;\n }\n .poi-img {\n cursor: pointer;\n object-fit: cover;\n }\n .default-poi-img {\n background-color: var(--color-primary-container);\n object-fit: contain;\n }\n .img-fullscreen {\n max-height: none;\n object-fit: contain;\n }\n .poi-type {\n width: 24px;\n height: 24px;\n padding: 4px;\n border: 2px solid #ffffff;\n border-radius: 50%;\n background-color: var(--color-on-surface);\n position: absolute;\n top: 8px;\n left: 8px;\n z-index: 200;\n }\n}\n\n.poi-sub-container {\n display: flex;\n flex-direction: column;\n padding: 12px;\n}\n\n.poi-name {\n font-size: 16px;\n line-height: 24px;\n}\n\n.poi-description {\n font-size: 14px;\n line-height: 20px;\n}\n\n.poi-description-short {\n font-size: 14px;\n line-height: 20px;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 4;\n overflow: hidden;\n}\n\n.handle-poi-description {\n cursor: pointer;\n color: var(--color-primary-app);\n text-decoration: underline;\n margin-top: 12px;\n}\n","import { Component, Host, h, Prop, State, Build, getAssetPath } from '@stencil/core';\nimport Swiper, { Navigation, Pagination, Keyboard } from 'swiper';\nimport state from 'store/store';\nimport { Poi } from 'types/types';\n\n@Component({\n tag: 'grw-poi',\n styleUrl: 'grw-poi.scss',\n shadow: true,\n})\nexport class GrwPoiDetail {\n swiperPoi?: Swiper;\n swiperPoiRef?: HTMLDivElement;\n prevElPoiRef?: HTMLDivElement;\n nextElPoiRef?: HTMLDivElement;\n paginationElPoiRef?: HTMLDivElement;\n @Prop() poi: Poi;\n @State() displayShortDescription = true;\n @State() displayFullscreen = false;\n\n componentDidLoad() {\n this.swiperPoi = new Swiper(this.swiperPoiRef, {\n modules: [Navigation, Pagination, Keyboard],\n navigation: {\n prevEl: this.prevElPoiRef,\n nextEl: this.nextElPoiRef,\n },\n pagination: { el: this.paginationElPoiRef },\n allowTouchMove: false,\n keyboard: false,\n });\n this.swiperPoiRef.onfullscreenchange = () => {\n this.displayFullscreen = !this.displayFullscreen;\n if (this.displayFullscreen) {\n this.swiperPoi.keyboard.enable();\n } else {\n this.swiperPoi.keyboard.disable();\n }\n };\n }\n\n handlePoiDescription() {\n this.displayShortDescription = !this.displayShortDescription;\n }\n\n handleFullscreen() {\n if (this.poi.attachments && this.poi.attachments[0] && this.poi.attachments[0].url) {\n this.swiperPoiRef.requestFullscreen();\n }\n }\n\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n return (\n <Host>\n <div class=\"poi-type-img-container\">\n <img class=\"poi-type\" src={`${state.poiTypes.find(poiType => poiType.id === this.poi.type)?.pictogram}`} />\n <div class=\"swiper\" ref={el => (this.swiperPoiRef = el)}>\n <div class=\"swiper-wrapper\">\n {this.poi.attachments.length > 0 ? (\n this.poi.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n class={`poi-img${this.displayFullscreen ? ' img-fullscreen' : ''}`}\n src={this.displayFullscreen ? attachment.url : attachment.thumbnail}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img class=\"default-poi-img\" src={defaultImageSrc} loading=\"lazy\" />\n </div>\n )}\n </div>\n <div class=\"swiper-pagination\" ref={el => (this.paginationElPoiRef = el)}></div>\n <div class=\"swiper-button-prev\" ref={el => (this.prevElPoiRef = el)}></div>\n <div class=\"swiper-button-next\" ref={el => (this.nextElPoiRef = el)}></div>\n </div>\n </div>\n <div class=\"poi-sub-container\">\n <div class=\"poi-name\">{this.poi.name}</div>\n <div class={this.displayShortDescription ? 'poi-description-short' : 'poi-description'} innerHTML={this.poi.description}></div>\n <div class=\"handle-poi-description\" onClick={() => this.handlePoiDescription()}>\n {this.displayShortDescription ? 'Lire plus' : 'Lire moins'}\n </div>\n </div>\n </Host>\n );\n }\n}\n",":host {\n display: flex;\n flex-direction: column;\n color: var(--color-on-surface);\n a {\n color: var(--color-primary-app);\n }\n}\n\n.sensitive-area-title {\n font-size: 22px;\n line-height: 28px;\n padding: 12px 0px;\n font-weight: 400;\n}\n\n.sensitive-area-description {\n font-size: 16px;\n line-height: 24px;\n}\n\n.sensitive-area-period-container,\n.sensitive-area-practice-container,\n.sensitive-area-contact-container {\n .sensitive-area-period-title,\n .sensitive-area-practice-title,\n .sensitive-area-contact-title {\n font-size: 16px;\n line-height: 24px;\n padding: 12px 0px;\n }\n .sensitive-area-period-values,\n .sensitive-area-practice-values {\n display: flex;\n flex-wrap: wrap;\n }\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\nimport state from 'store/store';\nimport { SensitiveArea } from 'types/types';\n\n@Component({\n tag: 'grw-sensitive-area-detail',\n styleUrl: 'grw-sensitive-area-detail.scss',\n shadow: true,\n})\nexport class GrwSensitiveAreaDetail {\n @Prop() sensitiveArea: SensitiveArea;\n\n render() {\n return (\n <Host>\n <div class=\"sensitive-area-title\">{this.sensitiveArea.name}</div>\n <div class=\"sensitive-area-description\" innerHTML={this.sensitiveArea.description}></div>\n {this.sensitiveArea.practices && this.sensitiveArea.practices.length > 0 && (\n <div class=\"sensitive-area-practice-container\">\n <div class=\"sensitive-area-practice-title\">Domaines d'activités concernés :</div>\n <div class=\"sensitive-area-practice-values\">\n {this.sensitiveArea.practices.map((sensitiveAreaPractice, index) => {\n const practice = state.practices.find(statePractice => statePractice.id === sensitiveAreaPractice);\n if (practice) {\n return <div innerHTML={`${practice.name.toUpperCase()}${index + 1 !== this.sensitiveArea.practices.length ? ' -&nbsp;' : ''}`}></div>;\n }\n })}\n </div>\n </div>\n )}\n {this.sensitiveArea.period && this.sensitiveArea.period.length > 0 && (\n <div class=\"sensitive-area-period-container\">\n <div class=\"sensitive-area-period-title\">Périodes de sensibilité</div>\n <div class=\"sensitive-area-period-values\">\n {this.sensitiveArea.period.map((month, index) => {\n if (month) {\n return (\n <div\n innerHTML={`${new Date(0, index + 1, 0).toLocaleDateString('fr', { month: 'long' }).toUpperCase()}${\n this.sensitiveArea.period.slice(index + 1).find(month => month) ? ' -&nbsp;' : ''\n }`}\n ></div>\n );\n }\n })}\n </div>\n </div>\n )}\n <div class=\"sensitive-area-contact-container\">\n <div class=\"sensitive-area-contact-title\">Contact</div>\n <div innerHTML={this.sensitiveArea.contact} class=\"sensitive-area-contact-value\"></div>\n </div>\n </Host>\n );\n }\n}\n","@use '~swiper/swiper.scss';\n@use '~swiper/modules/navigation/navigation.scss';\n@use '~swiper/modules/pagination/pagination.scss';\n\n.swiper {\n z-index: 0;\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\n:host {\n display: flex;\n flex-direction: column;\n a {\n color: var(--color-primary-app);\n }\n --swiper-navigation-size: 24px;\n --swiper-navigation-color: var(--color-on-primary-container);\n --swiper-pagination-color: var(--color-primary-container);\n --swiper-pagination-bullet-size: 12px;\n .swiper-button-prev,\n .swiper-button-next {\n background-color: var(--color-primary-container);\n padding: 4px;\n width: 32px;\n height: 32px;\n border-radius: 32px;\n box-shadow: var(--elevation-1);\n &:hover {\n box-shadow: var(--elevation-2);\n }\n }\n}\n\n.touristic-content-type-img-container {\n position: relative;\n .touristic-content-img,\n .default-touristic-content-img {\n width: 100%;\n height: 100%;\n max-height: 200px;\n object-fit: cover;\n }\n .touristic-content-img {\n cursor: pointer;\n object-fit: cover;\n }\n .default-touristic-content-img {\n background-color: var(--color-primary-container);\n object-fit: contain;\n }\n .img-fullscreen {\n max-height: none;\n object-fit: contain;\n }\n .touristic-content-type {\n width: 24px;\n height: 24px;\n padding: 4px;\n border: 2px solid #ffffff;\n border-radius: 50%;\n background-color: var(--color-on-surface);\n position: absolute;\n top: 8px;\n left: 8px;\n z-index: 200;\n }\n}\n\n.touristic-content-sub-container {\n display: flex;\n flex-direction: column;\n padding: 12px;\n .touristic-content-category-container {\n display: flex;\n align-items: center;\n margin-bottom: 12px;\n .touristic-content-category-name {\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n overflow: hidden;\n }\n img {\n font-size: 24px;\n width: 24px;\n height: 24px;\n margin-right: 8px;\n background-color: var(--color-primary-app);\n }\n }\n .touristic-content-name {\n font-size: 16px;\n line-height: 24px;\n }\n}\n\n.touristic-content-more-detail-container {\n padding: 0px 12px 12px 12px;\n .more-details-button {\n cursor: pointer;\n background-color: var(--color-primary-container);\n color: var(--color-on-primary-container);\n border-radius: 8px;\n padding: 8px 16px;\n box-shadow: var(--elevation-1);\n width: 100%;\n height: 32px;\n gap: 8px;\n box-sizing: border-box;\n text-align: start;\n vertical-align: middle;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n position: relative;\n border: none;\n font-size: 14px;\n &:hover {\n box-shadow: var(--elevation-2);\n }\n span {\n font-size: 18px;\n }\n }\n}\n\n.touristic-content-card-container,\n.touristic-content-card-large-view-container {\n cursor: pointer;\n font-family: 'Roboto';\n border-radius: 12px;\n box-shadow: var(--elevation-1);\n background-color: var(--color-surface-container-low);\n color: var(--color-on-surface);\n .image {\n height: 100%;\n object-fit: cover;\n border-top-left-radius: 12px;\n border-top-right-radius: 12px;\n }\n}\n\n.touristic-content-container {\n width: 100%;\n max-width: 350px;\n .image {\n width: 100%;\n max-height: 200px;\n }\n}\n\n.touristic-content-card-large-view-container {\n width: 100%;\n display: flex;\n flex-direction: row;\n .image {\n width: 250px;\n }\n}\n\n.is-inside-vertical-list {\n cursor: pointer;\n border: none;\n}\n\n.selected-touristic-content-card {\n box-shadow: var(--elevation-2);\n}\n","import { Build, Component, Host, getAssetPath, h, State, Prop, Event, EventEmitter, Listen } from '@stencil/core';\nimport state from 'store/store';\nimport Swiper, { Keyboard, Navigation, Pagination } from 'swiper';\nimport { TouristicContent } from 'types/types';\n\n@Component({\n tag: 'grw-touristic-content-card',\n styleUrl: 'grw-touristic-content-card.scss',\n shadow: true,\n})\nexport class GrwTouristicContentCard {\n @Event() touristicContentCardPress: EventEmitter<number>;\n swiperTouristicContent?: Swiper;\n swiperTouristicContentRef?: HTMLDivElement;\n prevElTouristicContentRef?: HTMLDivElement;\n nextElTouristicContentRef?: HTMLDivElement;\n paginationElTouristicContentRef?: HTMLDivElement;\n @Prop() touristicContent: TouristicContent;\n @Prop() isLargeView = false;\n @Prop() isInsideHorizontalList = false;\n @State() displayFullscreen = false;\n\n @Event() cardTouristicContentMouseOver: EventEmitter<number>;\n @Event() cardTouristicContentMouseLeave: EventEmitter;\n\n componentDidLoad() {\n if (this.swiperTouristicContentRef) {\n this.swiperTouristicContent = new Swiper(this.swiperTouristicContentRef, {\n modules: [Navigation, Pagination, Keyboard],\n navigation: {\n prevEl: this.prevElTouristicContentRef,\n nextEl: this.nextElTouristicContentRef,\n },\n pagination: { el: this.paginationElTouristicContentRef },\n allowTouchMove: false,\n keyboard: false,\n });\n this.swiperTouristicContentRef.onfullscreenchange = () => {\n this.displayFullscreen = !this.displayFullscreen;\n if (this.displayFullscreen) {\n this.swiperTouristicContent.keyboard.enable();\n } else {\n this.swiperTouristicContent.keyboard.disable();\n }\n };\n }\n }\n\n handleFullscreen() {\n if (this.touristicContent.attachments && this.touristicContent.attachments[0] && this.touristicContent.attachments[0].url) {\n this.swiperTouristicContentRef.requestFullscreen();\n }\n }\n\n @Listen('mouseover')\n handleMouseOver() {\n this.cardTouristicContentMouseOver.emit(this.touristicContent.id);\n }\n\n @Listen('mouseleave')\n handleMouseLeave() {\n this.cardTouristicContentMouseLeave.emit();\n }\n\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n const touristicContentCategory = state.touristicContentCategories.find(touristicContentCategory => touristicContentCategory.id === this.touristicContent.category);\n return (\n <Host\n style={{\n width: this.isLargeView ? '100%' : 'auto',\n }}\n >\n <div\n class={\n this.isLargeView\n ? `touristic-content-card-large-view-container${state.selectedTouristicContentId === this.touristicContent.id ? ' selected-touristic-content-card' : ''}${\n !this.isInsideHorizontalList ? ' is-inside-vertical-list' : ''\n }`\n : `touristic-content-card-container${state.selectedTouristicContentId === this.touristicContent.id ? ' selected-touristic-content-card' : ''}${\n !this.isInsideHorizontalList ? ' is-inside-vertical-list' : ''\n }`\n }\n onClick={() => {\n if (!this.isInsideHorizontalList) {\n this.touristicContentCardPress.emit(this.touristicContent.id);\n }\n }}\n >\n <div class=\"touristic-content-type-img-container\">\n {this.isInsideHorizontalList ? (\n <div class=\"swiper\" ref={el => (this.swiperTouristicContentRef = el)}>\n <div class=\"swiper-wrapper\">\n {this.touristicContent.attachments.length > 0 ? (\n this.touristicContent.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n class={`touristic-content-img${this.displayFullscreen ? ' img-fullscreen' : ''}`}\n src={this.displayFullscreen ? attachment.url : attachment.thumbnail}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img class=\"default-touristic-content-img\" src={defaultImageSrc} loading=\"lazy\" />\n </div>\n )}\n </div>\n <div class=\"swiper-pagination\" ref={el => (this.paginationElTouristicContentRef = el)}></div>\n <div class=\"swiper-button-prev\" ref={el => (this.prevElTouristicContentRef = el)}></div>\n <div class=\"swiper-button-next\" ref={el => (this.nextElTouristicContentRef = el)}></div>\n </div>\n ) : this.touristicContent.attachments.filter(attachment => attachment.type === 'image').length > 0 ? (\n <img class=\"image\" src={`${this.touristicContent.attachments.filter(attachment => attachment.type === 'image')[0].thumbnail}`} loading=\"lazy\" />\n ) : (\n <div></div>\n )}\n </div>\n <div class=\"touristic-content-sub-container\">\n <div class=\"touristic-content-category-container\">\n <img src={touristicContentCategory.pictogram} />\n <div class=\"touristic-content-category-name\">{touristicContentCategory.label}</div>\n </div>\n <div class=\"touristic-content-name\">{this.touristicContent.name}</div>\n </div>\n {this.isInsideHorizontalList && (\n <div class=\"touristic-content-more-detail-container\">\n <button class=\"more-details-button\" onClick={() => this.touristicContentCardPress.emit(this.touristicContent.id)}>\n Plus de détails\n </button>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n","@use '~swiper/swiper.scss';\n@use '~swiper/modules/navigation/navigation.scss';\n@use '~swiper/modules/pagination/pagination.scss';\n\n.swiper {\n z-index: 0;\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\n:host {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border: 1px solid gray;\n border-radius: 12px;\n background-color: var(--color-surface-container-low);\n color: var(--color-on-surface);\n a {\n color: var(--color-primary-app);\n }\n --swiper-navigation-size: 24px;\n --swiper-navigation-color: var(--color-on-primary-container);\n --swiper-pagination-color: var(--color-primary-container);\n --swiper-pagination-bullet-size: 12px;\n .swiper-button-prev,\n .swiper-button-next {\n background-color: var(--color-primary-container);\n padding: 4px;\n width: 32px;\n height: 32px;\n border-radius: 32px;\n box-shadow: var(--elevation-1);\n &:hover {\n box-shadow: var(--elevation-2);\n }\n }\n}\n\n.touristic-event-type-img-container {\n position: relative;\n .touristic-event-img,\n .default-touristic-event-img {\n width: 100%;\n height: 100%;\n max-height: 200px;\n object-fit: cover;\n }\n .touristic-event-img {\n cursor: pointer;\n object-fit: cover;\n }\n .default-touristic-event-img {\n background-color: var(--color-primary-container);\n object-fit: contain;\n }\n .img-fullscreen {\n max-height: none;\n object-fit: contain;\n }\n .touristic-event-type {\n width: 24px;\n height: 24px;\n padding: 4px;\n border: 2px solid #ffffff;\n border-radius: 50%;\n background-color: var(--color-on-surface);\n position: absolute;\n top: 8px;\n left: 8px;\n z-index: 200;\n }\n}\n\n.touristic-event-sub-container {\n display: flex;\n flex-direction: column;\n padding: 12px;\n .touristic-event-type-container {\n display: flex;\n align-items: center;\n margin-bottom: 12px;\n .touristic-event-type-name {\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n overflow: hidden;\n }\n img {\n font-size: 24px;\n width: 24px;\n height: 24px;\n margin-right: 8px;\n background-color: var(--color-primary-app);\n }\n }\n .touristic-event-name {\n font-size: 16px;\n line-height: 24px;\n }\n}\n\n.touristic-event-more-detail-container {\n padding: 0px 12px 12px 12px;\n .more-details-button {\n cursor: pointer;\n background-color: var(--color-primary-container);\n color: var(--color-on-primary-container);\n border-radius: 8px;\n padding: 8px 16px;\n box-shadow: var(--elevation-1);\n width: 100%;\n height: 32px;\n gap: 8px;\n box-sizing: border-box;\n text-align: start;\n vertical-align: middle;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n position: relative;\n border: none;\n font-size: 14px;\n &:hover {\n box-shadow: var(--elevation-2);\n }\n span {\n font-size: 18px;\n }\n }\n}\n","import { Build, Component, Host, getAssetPath, h, State, Prop, Event, EventEmitter } from '@stencil/core';\nimport state from 'store/store';\nimport Swiper, { Keyboard, Navigation, Pagination } from 'swiper';\nimport { TouristicEvent } from 'types/types';\n\n@Component({\n tag: 'grw-touristic-event-card',\n styleUrl: 'grw-touristic-event-card.scss',\n shadow: true,\n})\nexport class GrwTouristicEvent {\n @Event() touristicEventCardPress: EventEmitter<number>;\n swiperTouristicEvent?: Swiper;\n swiperTouristicEventRef?: HTMLDivElement;\n prevElTouristicEventRef?: HTMLDivElement;\n nextElTouristicEventRef?: HTMLDivElement;\n paginationElTouristicEventRef?: HTMLDivElement;\n @Prop() touristicEvent: TouristicEvent;\n @State() displayFullscreen = false;\n\n componentDidLoad() {\n this.swiperTouristicEvent = new Swiper(this.swiperTouristicEventRef, {\n modules: [Navigation, Pagination, Keyboard],\n navigation: {\n prevEl: this.prevElTouristicEventRef,\n nextEl: this.nextElTouristicEventRef,\n },\n pagination: { el: this.paginationElTouristicEventRef },\n allowTouchMove: false,\n keyboard: false,\n });\n this.swiperTouristicEventRef.onfullscreenchange = () => {\n this.displayFullscreen = !this.displayFullscreen;\n if (this.displayFullscreen) {\n this.swiperTouristicEvent.keyboard.enable();\n } else {\n this.swiperTouristicEvent.keyboard.disable();\n }\n };\n }\n\n handleFullscreen() {\n if (this.touristicEvent.attachments && this.touristicEvent.attachments[0] && this.touristicEvent.attachments[0].url) {\n this.swiperTouristicEventRef.requestFullscreen();\n }\n }\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n const touristicEventTypes = state.touristicEventTypes.find(touristicEventType => touristicEventType.id === this.touristicEvent.type);\n return (\n <Host>\n <div class=\"touristic-event-type-img-container\">\n <div class=\"swiper\" ref={el => (this.swiperTouristicEventRef = el)}>\n <div class=\"swiper-wrapper\">\n {this.touristicEvent.attachments.length > 0 ? (\n this.touristicEvent.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n class={`touristic-event-img${this.displayFullscreen ? ' img-fullscreen' : ''}`}\n src={this.displayFullscreen ? attachment.url : attachment.thumbnail}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img class=\"default-touristic-event-img\" src={defaultImageSrc} loading=\"lazy\" />\n </div>\n )}\n </div>\n <div class=\"swiper-pagination\" ref={el => (this.paginationElTouristicEventRef = el)}></div>\n <div class=\"swiper-button-prev\" ref={el => (this.prevElTouristicEventRef = el)}></div>\n <div class=\"swiper-button-next\" ref={el => (this.nextElTouristicEventRef = el)}></div>\n </div>\n </div>\n <div class=\"touristic-event-sub-container\">\n <div class=\"touristic-event-type-container\">\n <img src={touristicEventTypes.pictogram} />\n <div class=\"touristic-event-type-name\">{touristicEventTypes.type}</div>\n </div>\n <div class=\"touristic-event-name\">{this.touristicEvent.name}</div>\n </div>\n <div class=\"touristic-event-more-detail-container\">\n <button class=\"more-details-button\" onClick={() => this.touristicEventCardPress.emit(this.touristicEvent.id)}>\n Plus de détails\n </button>\n </div>\n </Host>\n );\n }\n}\n",".material-symbols {\n font-family: 'Material Symbols Outlined';\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\n.trek-card-container,\n.trek-card-large-view-container {\n cursor: pointer;\n font-family: 'Roboto';\n border-radius: 12px;\n box-shadow: var(--elevation-1);\n background-color: var(--color-surface-container-low);\n .image {\n object-fit: cover;\n border-top-left-radius: 12px;\n border-top-right-radius: 12px;\n }\n .sub-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n padding: 8px 16px;\n .name {\n color: var(--color-on-surface);\n font-size: 22px;\n line-height: 28px;\n font-weight: 400;\n margin-bottom: 8px;\n }\n .departure {\n color: var(--color-on-surface);\n font-size: 16px;\n line-height: 24px;\n font-weight: 500;\n margin-bottom: 4px;\n }\n .themes-container {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n flex-wrap: wrap;\n .theme {\n background-color: var(--color-secondary-container);\n color: var(--color-on-secondary-container);\n border-radius: 8px;\n padding: 8px 16px;\n margin: 0px 8px 8px 0px;\n box-shadow: var(--elevation-0);\n border: 1px solid var(--color-outline);\n height: 32px;\n gap: 8px;\n box-sizing: border-box;\n text-align: start;\n vertical-align: middle;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n position: relative;\n text-wrap: nowrap;\n }\n }\n .icons-labels-container {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n flex-wrap: wrap;\n color: var(--color-on-surface);\n font-size: 14px;\n line-height: 20px;\n font-weight: 500;\n .row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n &:not(:last-child) {\n margin-bottom: 12px;\n }\n .icon-label {\n &:nth-child(2) {\n margin: 0px 4px;\n }\n display: flex;\n align-items: center;\n width: 50%;\n img,\n span {\n font-size: 24px;\n width: 24px;\n height: 24px;\n margin-right: 8px;\n }\n }\n .practice {\n img {\n background-color: var(--color-primary-app);\n }\n }\n }\n }\n }\n}\n\n.selected-trek-card {\n box-shadow: var(--elevation-2);\n}\n\n.trek-card-container {\n width: 100%;\n max-width: 350px;\n .image {\n width: 100%;\n max-height: 200px;\n }\n}\n\n.trek-card-large-view-container {\n width: 100%;\n display: flex;\n flex-direction: row;\n .image {\n width: 250px;\n }\n}\n\n.trek-step-card {\n width: auto;\n}\n","import { Component, Host, h, Prop, Event, EventEmitter, State, Listen } from '@stencil/core';\nimport state, { onChange, reset } from 'store/store';\nimport { City, Difficulty, Practice, Route, Themes, Trek } from 'types/types';\nimport { formatDuration, formatLength, formatAscent } from 'utils/utils';\n\n@Component({\n tag: 'grw-trek-card',\n styleUrl: 'grw-trek-card.scss',\n shadow: true,\n})\nexport class GrwTrekCard {\n @Event() trekCardPress: EventEmitter<number>;\n @State() currentTrek: Trek;\n @State() difficulty: Difficulty;\n @State() route: Route;\n @State() practice: Practice;\n @State() themes: Themes;\n @State() departureCity: City;\n @Prop() trek: Trek;\n @Prop() colorPrimaryApp = '#6b0030';\n @Prop() colorOnSurface = '#49454e';\n @Prop() colorSecondaryContainer = '#e8def8';\n @Prop() colorOnSecondaryContainer = '#1d192b';\n @Prop() colorSurfaceContainerLow = '#f7f2fa';\n @Prop() isLargeView = false;\n @Prop() resetStoreOnDisconnected = true;\n @Prop() isStep: false;\n\n @Event() cardTrekMouseOver: EventEmitter<number>;\n @Event() cardTrekMouseLeave: EventEmitter;\n\n connectedCallback() {\n this.currentTrek = this.trek ? this.trek : state.currentTrek;\n if (this.currentTrek) {\n this.difficulty = state.difficulties.find(difficulty => difficulty.id === this.currentTrek.difficulty);\n this.route = state.routes.find(route => route.id === this.currentTrek.route);\n this.practice = state.practices.find(practice => practice.id === this.currentTrek.practice);\n this.themes = state.themes.filter(theme => this.currentTrek.themes.includes(theme.id));\n this.departureCity = state.cities.find(city => city.id === this.currentTrek.departure_city);\n }\n onChange('currentTrek', () => {\n this.currentTrek = this.trek ? this.trek : state.currentTrek;\n if (this.currentTrek) {\n this.difficulty = state.difficulties.find(difficulty => difficulty.id === this.currentTrek.difficulty);\n this.route = state.routes.find(route => route.id === this.currentTrek.route);\n this.practice = state.practices.find(practice => practice.id === this.currentTrek.practice);\n this.themes = state.themes.filter(theme => this.currentTrek.themes.includes(theme.id));\n this.departureCity = state.cities.find(city => city.id === this.currentTrek.departure_city);\n }\n });\n }\n\n disconnectedCallback() {\n if (this.resetStoreOnDisconnected) {\n reset();\n }\n }\n\n @Listen('mouseover')\n handleMouseOver() {\n this.cardTrekMouseOver.emit(this.currentTrek.id);\n }\n\n @Listen('mouseleave')\n handleMouseLeave() {\n this.cardTrekMouseLeave.emit();\n }\n\n render() {\n return (\n <Host\n style={{\n 'width': this.isLargeView ? '100%' : 'auto',\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 }}\n >\n {this.currentTrek && (\n <div\n class={\n this.isStep\n ? `trek-card-container trek-step-card${state.selectedStepId === this.currentTrek.id ? ' selected-trek-card' : ''}`\n : this.isLargeView\n ? `trek-card-large-view-container${state.selectedTrekId === this.currentTrek.id ? ' selected-trek-card' : ''}`\n : `trek-card-container${state.selectedTrekId === this.currentTrek.id ? ' selected-trek-card' : ''}`\n }\n onClick={() => this.trekCardPress.emit(this.currentTrek.id)}\n >\n {this.currentTrek.attachments.filter(attachment => attachment.type === 'image').length > 0 && (\n <img class=\"image\" src={`${this.currentTrek.attachments.filter(attachment => attachment.type === 'image')[0].thumbnail}`} loading=\"lazy\" />\n )}\n <div class=\"sub-container\">\n {this.departureCity && <div class=\"departure\">{this.departureCity.name}</div>}\n <div class=\"name\">{this.currentTrek?.name}</div>\n {!this.isStep && (\n <div class=\"themes-container\">\n {this.themes.map(theme => (\n <div class=\"theme\">{theme.label}</div>\n ))}\n </div>\n )}\n <div class=\"icons-labels-container\">\n <div class=\"row\">\n <div class=\"icon-label difficulty\">\n {this.difficulty?.pictogram && <img src={this.difficulty.pictogram} />}\n {this.difficulty?.label}\n </div>\n <div class=\"icon-label duration\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n timelapse\n </span>\n {formatDuration(this.currentTrek.duration)}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"icon-label length\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n open_in_full\n </span>\n {formatLength(this.currentTrek.length_2d)}\n </div>\n <div class=\"icon-label ascent\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n moving\n </span>\n {formatAscent(this.currentTrek.ascent)}\n </div>\n </div>\n {!this.isStep && (\n <div class=\"row\">\n <div class=\"icon-label route\">\n {this.route?.pictogram && <img src={this.route.pictogram} />}\n {this.route?.route}\n </div>\n <div class=\"icon-label practice\">\n {this.practice?.pictogram && <img src={this.practice.pictogram} />}\n {this.practice?.name}\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"grw-information-desk.grw-poi.grw-sensitive-area-detail.grw-touristic-content-card.grw-touristic-event-card.grw-trek-card.entry.cjs.js","mappings":"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","names":["h","Host","Swiper","Navigation","Pagination","Keyboard","getAssetPath","state","index","onChange","reset","formatDuration","formatLength","formatAscent"],"sources":["./src/components/grw-information-desk/grw-information-desk.scss?tag=grw-information-desk&encapsulation=shadow","./src/components/grw-information-desk/grw-information-desk.tsx","./src/components/grw-poi-detail/grw-poi.scss?tag=grw-poi&encapsulation=shadow","./src/components/grw-poi-detail/grw-poi.tsx","./src/components/grw-sensitive-area-detail/grw-sensitive-area-detail.scss?tag=grw-sensitive-area-detail&encapsulation=shadow","./src/components/grw-sensitive-area-detail/grw-sensitive-area-detail.tsx","./src/components/grw-touristic-content/grw-touristic-content-card.scss?tag=grw-touristic-content-card&encapsulation=shadow","./src/components/grw-touristic-content/grw-touristic-content-card.tsx","./src/components/grw-touristic-event/grw-touristic-event-card.scss?tag=grw-touristic-event-card&encapsulation=shadow","./src/components/grw-touristic-event/grw-touristic-event-card.tsx","./src/components/grw-trek-card/grw-trek-card.scss?tag=grw-trek-card&encapsulation=shadow","./src/components/grw-trek-card/grw-trek-card.tsx"],"sourcesContent":[".material-symbols {\n font-family: 'Material Symbols Outlined';\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\n:host {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border: 1px solid gray;\n border-radius: 12px;\n background-color: var(--color-surface-container-low);\n color: var(--color-on-surface);\n a {\n color: var(--color-primary-app);\n }\n}\n\n.information-desk-img {\n position: relative;\n img {\n width: 100%;\n height: 100%;\n max-height: 200px;\n object-fit: cover;\n }\n}\n\n.information-desk-sub-container {\n display: flex;\n flex-direction: column;\n padding: 12px;\n}\n\n.information-desk-name {\n font-size: 16px;\n line-height: 24px;\n font-weight: 500;\n}\n\n.information-desk-description {\n font-size: 14px;\n line-height: 20px;\n}\n\n.information-desk-description-short {\n font-size: 14px;\n line-height: 20px;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 4;\n overflow: hidden;\n}\n\n.handle-information-desk-description {\n cursor: pointer;\n color: var(--color-primary-app);\n text-decoration: underline;\n margin-top: 12px;\n}\n\n.phone-container,\n.mail-container,\n.link-container {\n display: flex;\n align-items: center;\n span {\n font-size: 16px;\n margin-right: 8px;\n }\n}\n\n.center-on-map-button {\n cursor: pointer;\n background-color: var(--color-primary-container);\n color: var(--color-on-primary-container);\n border-radius: 8px;\n padding: 8px 16px;\n box-shadow: var(--elevation-1);\n height: 32px;\n gap: 8px;\n box-sizing: border-box;\n text-align: start;\n vertical-align: middle;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n position: relative;\n border: none;\n font-size: 14px;\n margin: 12px 0px;\n &:hover {\n box-shadow: var(--elevation-2);\n }\n span {\n font-size: 18px;\n }\n}\n","import { Component, Host, h, Prop, State, Event, EventEmitter } from '@stencil/core';\nimport { InformationDesk } from 'types/types';\n\n@Component({\n tag: 'grw-information-desk',\n styleUrl: 'grw-information-desk.scss',\n shadow: true,\n})\nexport class GrwInformationDeskDetail {\n @Event() centerOnMap: EventEmitter<{ latitude: number; longitude: number }>;\n @State() displayShortDescription = true;\n @Prop() informationDesk: InformationDesk;\n\n handleInformationDeskDescription() {\n this.displayShortDescription = !this.displayShortDescription;\n }\n\n handleCenterOnMap() {\n this.centerOnMap.emit({ latitude: this.informationDesk.latitude, longitude: this.informationDesk.longitude });\n }\n\n render() {\n return (\n <Host>\n {this.informationDesk.photo_url && (\n <div class=\"information-desk-img\">\n <img src={this.informationDesk.photo_url} loading=\"lazy\" />\n </div>\n )}\n <div class=\"information-desk-sub-container\">\n {this.informationDesk.name && <div class=\"information-desk-name\">{this.informationDesk.name}</div>}\n {this.informationDesk.latitude && this.informationDesk.longitude && (\n <button class=\"center-on-map-button\" onClick={() => this.handleCenterOnMap()}>\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n location_searching\n </span>\n Centrer sur la carte\n </button>\n )}\n {(this.informationDesk.postal_code || this.informationDesk.municipality || this.informationDesk.street) && (\n <div>\n {this.informationDesk.postal_code && this.informationDesk.postal_code}\n {this.informationDesk.municipality && ` ${this.informationDesk.municipality}`}\n {this.informationDesk.street && ` ${this.informationDesk.street}`}\n </div>\n )}\n {this.informationDesk.phone && (\n <div class=\"phone-container\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n call\n </span>\n <a href={`tel:${this.informationDesk.phone}`}>{this.informationDesk.phone}</a>\n </div>\n )}\n {this.informationDesk.email && (\n <div class=\"mail-container\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n mail\n </span>\n <a href={`mailto:${this.informationDesk.email}`}>{this.informationDesk.email}</a>\n </div>\n )}\n {this.informationDesk.website && (\n <div class=\"link-container\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n link\n </span>\n <a href={`${this.informationDesk.website}`}>{this.informationDesk.website}</a>\n </div>\n )}\n {this.informationDesk.description && (\n <div class=\"information-desk-description-container\">\n <div class={this.displayShortDescription ? 'information-desk-description-short' : 'information-desk-description'} innerHTML={this.informationDesk.description}></div>\n <div class=\"handle-information-desk-description\" onClick={() => this.handleInformationDeskDescription()}>\n {this.displayShortDescription ? 'Lire plus' : 'Lire moins'}\n </div>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n","@use '~swiper/swiper.scss';\n@use '~swiper/modules/navigation/navigation.scss';\n@use '~swiper/modules/pagination/pagination.scss';\n\n.swiper {\n z-index: 0;\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\n:host {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border: 1px solid gray;\n border-radius: 12px;\n background-color: var(--color-surface-container-low);\n color: var(--color-on-surface);\n a {\n color: var(--color-primary-app);\n }\n --swiper-navigation-size: 24px;\n --swiper-navigation-color: var(--color-on-primary-container);\n --swiper-pagination-color: var(--color-primary-container);\n --swiper-pagination-bullet-size: 12px;\n .swiper-button-prev,\n .swiper-button-next {\n background-color: var(--color-primary-container);\n padding: 4px;\n width: 32px;\n height: 32px;\n border-radius: 32px;\n box-shadow: var(--elevation-1);\n &:hover {\n box-shadow: var(--elevation-2);\n }\n }\n}\n\n.poi-type-img-container {\n position: relative;\n .poi-img,\n .default-poi-img {\n width: 100%;\n height: 100%;\n max-height: 200px;\n object-fit: cover;\n }\n .poi-img {\n cursor: pointer;\n object-fit: cover;\n }\n .default-poi-img {\n background-color: var(--color-primary-container);\n object-fit: contain;\n }\n .img-fullscreen {\n max-height: none;\n object-fit: contain;\n }\n .poi-type {\n width: 24px;\n height: 24px;\n padding: 4px;\n border: 2px solid #ffffff;\n border-radius: 50%;\n background-color: var(--color-on-surface);\n position: absolute;\n top: 8px;\n left: 8px;\n z-index: 200;\n }\n}\n\n.poi-sub-container {\n display: flex;\n flex-direction: column;\n padding: 12px;\n}\n\n.poi-name {\n font-size: 16px;\n line-height: 24px;\n}\n\n.poi-description {\n font-size: 14px;\n line-height: 20px;\n}\n\n.poi-description-short {\n font-size: 14px;\n line-height: 20px;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 4;\n overflow: hidden;\n}\n\n.handle-poi-description {\n cursor: pointer;\n color: var(--color-primary-app);\n text-decoration: underline;\n margin-top: 12px;\n}\n","import { Component, Host, h, Prop, State, Build, getAssetPath } from '@stencil/core';\nimport Swiper, { Navigation, Pagination, Keyboard } from 'swiper';\nimport state from 'store/store';\nimport { Poi } from 'types/types';\n\n@Component({\n tag: 'grw-poi',\n styleUrl: 'grw-poi.scss',\n shadow: true,\n})\nexport class GrwPoiDetail {\n swiperPoi?: Swiper;\n swiperPoiRef?: HTMLDivElement;\n prevElPoiRef?: HTMLDivElement;\n nextElPoiRef?: HTMLDivElement;\n paginationElPoiRef?: HTMLDivElement;\n @Prop() poi: Poi;\n @State() displayShortDescription = true;\n @State() displayFullscreen = false;\n\n componentDidLoad() {\n this.swiperPoi = new Swiper(this.swiperPoiRef, {\n modules: [Navigation, Pagination, Keyboard],\n navigation: {\n prevEl: this.prevElPoiRef,\n nextEl: this.nextElPoiRef,\n },\n pagination: { el: this.paginationElPoiRef },\n allowTouchMove: false,\n keyboard: false,\n });\n this.swiperPoiRef.onfullscreenchange = () => {\n this.displayFullscreen = !this.displayFullscreen;\n if (this.displayFullscreen) {\n this.swiperPoi.keyboard.enable();\n } else {\n this.swiperPoi.keyboard.disable();\n }\n };\n }\n\n handlePoiDescription() {\n this.displayShortDescription = !this.displayShortDescription;\n }\n\n handleFullscreen() {\n if (this.poi.attachments && this.poi.attachments[0] && this.poi.attachments[0].url) {\n this.swiperPoiRef.requestFullscreen();\n }\n }\n\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n return (\n <Host>\n <div class=\"poi-type-img-container\">\n <img class=\"poi-type\" src={`${state.poiTypes.find(poiType => poiType.id === this.poi.type)?.pictogram}`} />\n <div class=\"swiper\" ref={el => (this.swiperPoiRef = el)}>\n <div class=\"swiper-wrapper\">\n {this.poi.attachments.length > 0 ? (\n this.poi.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n class={`poi-img${this.displayFullscreen ? ' img-fullscreen' : ''}`}\n src={this.displayFullscreen ? attachment.url : attachment.thumbnail}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img class=\"default-poi-img\" src={defaultImageSrc} loading=\"lazy\" />\n </div>\n )}\n </div>\n <div class=\"swiper-pagination\" ref={el => (this.paginationElPoiRef = el)}></div>\n <div class=\"swiper-button-prev\" ref={el => (this.prevElPoiRef = el)}></div>\n <div class=\"swiper-button-next\" ref={el => (this.nextElPoiRef = el)}></div>\n </div>\n </div>\n <div class=\"poi-sub-container\">\n <div class=\"poi-name\">{this.poi.name}</div>\n <div class={this.displayShortDescription ? 'poi-description-short' : 'poi-description'} innerHTML={this.poi.description}></div>\n <div class=\"handle-poi-description\" onClick={() => this.handlePoiDescription()}>\n {this.displayShortDescription ? 'Lire plus' : 'Lire moins'}\n </div>\n </div>\n </Host>\n );\n }\n}\n",":host {\n display: flex;\n flex-direction: column;\n color: var(--color-on-surface);\n a {\n color: var(--color-primary-app);\n }\n}\n\n.sensitive-area-title {\n font-size: 22px;\n line-height: 28px;\n padding: 12px 0px;\n font-weight: 400;\n}\n\n.sensitive-area-description {\n font-size: 16px;\n line-height: 24px;\n}\n\n.sensitive-area-period-container,\n.sensitive-area-practice-container,\n.sensitive-area-contact-container {\n .sensitive-area-period-title,\n .sensitive-area-practice-title,\n .sensitive-area-contact-title {\n font-size: 16px;\n line-height: 24px;\n padding: 12px 0px;\n }\n .sensitive-area-period-values,\n .sensitive-area-practice-values {\n display: flex;\n flex-wrap: wrap;\n }\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\nimport state from 'store/store';\nimport { SensitiveArea } from 'types/types';\n\n@Component({\n tag: 'grw-sensitive-area-detail',\n styleUrl: 'grw-sensitive-area-detail.scss',\n shadow: true,\n})\nexport class GrwSensitiveAreaDetail {\n @Prop() sensitiveArea: SensitiveArea;\n\n render() {\n return (\n <Host>\n <div class=\"sensitive-area-title\">{this.sensitiveArea.name}</div>\n <div class=\"sensitive-area-description\" innerHTML={this.sensitiveArea.description}></div>\n {this.sensitiveArea.practices && this.sensitiveArea.practices.length > 0 && (\n <div class=\"sensitive-area-practice-container\">\n <div class=\"sensitive-area-practice-title\">Domaines d'activités concernés :</div>\n <div class=\"sensitive-area-practice-values\">\n {this.sensitiveArea.practices.map((sensitiveAreaPractice, index) => {\n const practice = state.practices.find(statePractice => statePractice.id === sensitiveAreaPractice);\n if (practice) {\n return <div innerHTML={`${practice.name.toUpperCase()}${index + 1 !== this.sensitiveArea.practices.length ? ' -&nbsp;' : ''}`}></div>;\n }\n })}\n </div>\n </div>\n )}\n {this.sensitiveArea.period && this.sensitiveArea.period.length > 0 && (\n <div class=\"sensitive-area-period-container\">\n <div class=\"sensitive-area-period-title\">Périodes de sensibilité</div>\n <div class=\"sensitive-area-period-values\">\n {this.sensitiveArea.period.map((month, index) => {\n if (month) {\n return (\n <div\n innerHTML={`${new Date(0, index + 1, 0).toLocaleDateString('fr', { month: 'long' }).toUpperCase()}${\n this.sensitiveArea.period.slice(index + 1).find(month => month) ? ' -&nbsp;' : ''\n }`}\n ></div>\n );\n }\n })}\n </div>\n </div>\n )}\n <div class=\"sensitive-area-contact-container\">\n <div class=\"sensitive-area-contact-title\">Contact</div>\n <div innerHTML={this.sensitiveArea.contact} class=\"sensitive-area-contact-value\"></div>\n </div>\n </Host>\n );\n }\n}\n","@use '~swiper/swiper.scss';\n@use '~swiper/modules/navigation/navigation.scss';\n@use '~swiper/modules/pagination/pagination.scss';\n\n.swiper {\n z-index: 0;\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\n:host {\n display: flex;\n flex-direction: column;\n a {\n color: var(--color-primary-app);\n }\n --swiper-navigation-size: 24px;\n --swiper-navigation-color: var(--color-on-primary-container);\n --swiper-pagination-color: var(--color-primary-container);\n --swiper-pagination-bullet-size: 12px;\n .swiper-button-prev,\n .swiper-button-next {\n background-color: var(--color-primary-container);\n padding: 4px;\n width: 32px;\n height: 32px;\n border-radius: 32px;\n box-shadow: var(--elevation-1);\n &:hover {\n box-shadow: var(--elevation-2);\n }\n }\n}\n\n.touristic-content-type-img-container {\n position: relative;\n .touristic-content-img,\n .default-touristic-content-img {\n width: 100%;\n height: 100%;\n max-height: 200px;\n object-fit: cover;\n }\n .touristic-content-img {\n cursor: pointer;\n object-fit: cover;\n }\n .default-touristic-content-img {\n background-color: var(--color-primary-container);\n object-fit: contain;\n }\n .img-fullscreen {\n max-height: none;\n object-fit: contain;\n }\n .touristic-content-type {\n width: 24px;\n height: 24px;\n padding: 4px;\n border: 2px solid #ffffff;\n border-radius: 50%;\n background-color: var(--color-on-surface);\n position: absolute;\n top: 8px;\n left: 8px;\n z-index: 200;\n }\n}\n\n.touristic-content-sub-container {\n display: flex;\n flex-direction: column;\n padding: 12px;\n .touristic-content-category-container {\n display: flex;\n align-items: center;\n margin-bottom: 12px;\n .touristic-content-category-name {\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n overflow: hidden;\n }\n img {\n font-size: 24px;\n width: 24px;\n height: 24px;\n margin-right: 8px;\n background-color: var(--color-primary-app);\n }\n }\n .touristic-content-name {\n font-size: 16px;\n line-height: 24px;\n }\n}\n\n.touristic-content-more-detail-container {\n padding: 0px 12px 12px 12px;\n .more-details-button {\n cursor: pointer;\n background-color: var(--color-primary-container);\n color: var(--color-on-primary-container);\n border-radius: 8px;\n padding: 8px 16px;\n box-shadow: var(--elevation-1);\n width: 100%;\n height: 32px;\n gap: 8px;\n box-sizing: border-box;\n text-align: start;\n vertical-align: middle;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n position: relative;\n border: none;\n font-size: 14px;\n &:hover {\n box-shadow: var(--elevation-2);\n }\n span {\n font-size: 18px;\n }\n }\n}\n\n.touristic-content-card-container,\n.touristic-content-card-large-view-container {\n cursor: pointer;\n font-family: 'Roboto';\n border-radius: 12px;\n box-shadow: var(--elevation-1);\n background-color: var(--color-surface-container-low);\n color: var(--color-on-surface);\n .image {\n height: 100%;\n object-fit: cover;\n border-top-left-radius: 12px;\n border-top-right-radius: 12px;\n }\n}\n\n.touristic-content-container {\n width: 100%;\n max-width: 350px;\n .image {\n width: 100%;\n max-height: 200px;\n }\n}\n\n.touristic-content-card-large-view-container {\n width: 100%;\n display: flex;\n flex-direction: row;\n .image {\n width: 250px;\n }\n}\n\n.is-inside-vertical-list {\n cursor: pointer;\n border: none;\n}\n\n.selected-touristic-content-card {\n box-shadow: var(--elevation-2);\n}\n","import { Build, Component, Host, getAssetPath, h, State, Prop, Event, EventEmitter, Listen } from '@stencil/core';\nimport state from 'store/store';\nimport Swiper, { Keyboard, Navigation, Pagination } from 'swiper';\nimport { TouristicContent } from 'types/types';\n\n@Component({\n tag: 'grw-touristic-content-card',\n styleUrl: 'grw-touristic-content-card.scss',\n shadow: true,\n})\nexport class GrwTouristicContentCard {\n @Event() touristicContentCardPress: EventEmitter<number>;\n swiperTouristicContent?: Swiper;\n swiperTouristicContentRef?: HTMLDivElement;\n prevElTouristicContentRef?: HTMLDivElement;\n nextElTouristicContentRef?: HTMLDivElement;\n paginationElTouristicContentRef?: HTMLDivElement;\n @Prop() touristicContent: TouristicContent;\n @Prop() isLargeView = false;\n @Prop() isInsideHorizontalList = false;\n @State() displayFullscreen = false;\n\n @Event() cardTouristicContentMouseOver: EventEmitter<number>;\n @Event() cardTouristicContentMouseLeave: EventEmitter;\n\n componentDidLoad() {\n if (this.swiperTouristicContentRef) {\n this.swiperTouristicContent = new Swiper(this.swiperTouristicContentRef, {\n modules: [Navigation, Pagination, Keyboard],\n navigation: {\n prevEl: this.prevElTouristicContentRef,\n nextEl: this.nextElTouristicContentRef,\n },\n pagination: { el: this.paginationElTouristicContentRef },\n allowTouchMove: false,\n keyboard: false,\n });\n this.swiperTouristicContentRef.onfullscreenchange = () => {\n this.displayFullscreen = !this.displayFullscreen;\n if (this.displayFullscreen) {\n this.swiperTouristicContent.keyboard.enable();\n } else {\n this.swiperTouristicContent.keyboard.disable();\n }\n };\n }\n }\n\n handleFullscreen() {\n if (this.touristicContent.attachments && this.touristicContent.attachments[0] && this.touristicContent.attachments[0].url) {\n this.swiperTouristicContentRef.requestFullscreen();\n }\n }\n\n @Listen('mouseover')\n handleMouseOver() {\n this.cardTouristicContentMouseOver.emit(this.touristicContent.id);\n }\n\n @Listen('mouseleave')\n handleMouseLeave() {\n this.cardTouristicContentMouseLeave.emit();\n }\n\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n const touristicContentCategory = state.touristicContentCategories.find(touristicContentCategory => touristicContentCategory.id === this.touristicContent.category);\n return (\n <Host\n style={{\n width: this.isLargeView ? '100%' : 'auto',\n }}\n >\n <div\n class={\n this.isLargeView\n ? `touristic-content-card-large-view-container${state.selectedTouristicContentId === this.touristicContent.id ? ' selected-touristic-content-card' : ''}${\n !this.isInsideHorizontalList ? ' is-inside-vertical-list' : ''\n }`\n : `touristic-content-card-container${state.selectedTouristicContentId === this.touristicContent.id ? ' selected-touristic-content-card' : ''}${\n !this.isInsideHorizontalList ? ' is-inside-vertical-list' : ''\n }`\n }\n onClick={() => {\n if (!this.isInsideHorizontalList) {\n this.touristicContentCardPress.emit(this.touristicContent.id);\n }\n }}\n >\n <div class=\"touristic-content-type-img-container\">\n {this.isInsideHorizontalList ? (\n <div class=\"swiper\" ref={el => (this.swiperTouristicContentRef = el)}>\n <div class=\"swiper-wrapper\">\n {this.touristicContent.attachments.filter(attachment => attachment.type === 'image').length > 0 ? (\n this.touristicContent.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n class={`touristic-content-img${this.displayFullscreen ? ' img-fullscreen' : ''}`}\n src={this.displayFullscreen ? attachment.url : attachment.thumbnail}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img class=\"default-touristic-content-img\" src={defaultImageSrc} loading=\"lazy\" />\n </div>\n )}\n </div>\n <div class=\"swiper-pagination\" ref={el => (this.paginationElTouristicContentRef = el)}></div>\n <div class=\"swiper-button-prev\" ref={el => (this.prevElTouristicContentRef = el)}></div>\n <div class=\"swiper-button-next\" ref={el => (this.nextElTouristicContentRef = el)}></div>\n </div>\n ) : this.touristicContent.attachments.filter(attachment => attachment.type === 'image').length > 0 ? (\n <img class=\"image\" src={`${this.touristicContent.attachments.filter(attachment => attachment.type === 'image')[0].thumbnail}`} loading=\"lazy\" />\n ) : (\n <div></div>\n )}\n </div>\n <div class=\"touristic-content-sub-container\">\n <div class=\"touristic-content-category-container\">\n <img src={touristicContentCategory.pictogram} />\n <div class=\"touristic-content-category-name\">{touristicContentCategory.label}</div>\n </div>\n <div class=\"touristic-content-name\">{this.touristicContent.name}</div>\n </div>\n {this.isInsideHorizontalList && (\n <div class=\"touristic-content-more-detail-container\">\n <button class=\"more-details-button\" onClick={() => this.touristicContentCardPress.emit(this.touristicContent.id)}>\n Plus de détails\n </button>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n","@use '~swiper/swiper.scss';\n@use '~swiper/modules/navigation/navigation.scss';\n@use '~swiper/modules/pagination/pagination.scss';\n\n.swiper {\n z-index: 0;\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\n:host {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border: 1px solid gray;\n border-radius: 12px;\n background-color: var(--color-surface-container-low);\n color: var(--color-on-surface);\n a {\n color: var(--color-primary-app);\n }\n --swiper-navigation-size: 24px;\n --swiper-navigation-color: var(--color-on-primary-container);\n --swiper-pagination-color: var(--color-primary-container);\n --swiper-pagination-bullet-size: 12px;\n .swiper-button-prev,\n .swiper-button-next {\n background-color: var(--color-primary-container);\n padding: 4px;\n width: 32px;\n height: 32px;\n border-radius: 32px;\n box-shadow: var(--elevation-1);\n &:hover {\n box-shadow: var(--elevation-2);\n }\n }\n}\n\n.touristic-event-type-img-container {\n position: relative;\n .touristic-event-img,\n .default-touristic-event-img {\n width: 100%;\n height: 100%;\n max-height: 200px;\n object-fit: cover;\n }\n .touristic-event-img {\n cursor: pointer;\n object-fit: cover;\n }\n .default-touristic-event-img {\n background-color: var(--color-primary-container);\n object-fit: contain;\n }\n .img-fullscreen {\n max-height: none;\n object-fit: contain;\n }\n .touristic-event-type {\n width: 24px;\n height: 24px;\n padding: 4px;\n border: 2px solid #ffffff;\n border-radius: 50%;\n background-color: var(--color-on-surface);\n position: absolute;\n top: 8px;\n left: 8px;\n z-index: 200;\n }\n}\n\n.touristic-event-sub-container {\n display: flex;\n flex-direction: column;\n padding: 12px;\n .touristic-event-type-container {\n display: flex;\n align-items: center;\n margin-bottom: 12px;\n .touristic-event-type-name {\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n overflow: hidden;\n }\n img {\n font-size: 24px;\n width: 24px;\n height: 24px;\n margin-right: 8px;\n background-color: var(--color-primary-app);\n }\n }\n .touristic-event-name {\n font-size: 16px;\n line-height: 24px;\n }\n}\n\n.touristic-event-more-detail-container {\n padding: 0px 12px 12px 12px;\n .more-details-button {\n cursor: pointer;\n background-color: var(--color-primary-container);\n color: var(--color-on-primary-container);\n border-radius: 8px;\n padding: 8px 16px;\n box-shadow: var(--elevation-1);\n width: 100%;\n height: 32px;\n gap: 8px;\n box-sizing: border-box;\n text-align: start;\n vertical-align: middle;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n position: relative;\n border: none;\n font-size: 14px;\n &:hover {\n box-shadow: var(--elevation-2);\n }\n span {\n font-size: 18px;\n }\n }\n}\n","import { Build, Component, Host, getAssetPath, h, State, Prop, Event, EventEmitter } from '@stencil/core';\nimport state from 'store/store';\nimport Swiper, { Keyboard, Navigation, Pagination } from 'swiper';\nimport { TouristicEvent } from 'types/types';\n\n@Component({\n tag: 'grw-touristic-event-card',\n styleUrl: 'grw-touristic-event-card.scss',\n shadow: true,\n})\nexport class GrwTouristicEvent {\n @Event() touristicEventCardPress: EventEmitter<number>;\n swiperTouristicEvent?: Swiper;\n swiperTouristicEventRef?: HTMLDivElement;\n prevElTouristicEventRef?: HTMLDivElement;\n nextElTouristicEventRef?: HTMLDivElement;\n paginationElTouristicEventRef?: HTMLDivElement;\n @Prop() touristicEvent: TouristicEvent;\n @State() displayFullscreen = false;\n\n componentDidLoad() {\n this.swiperTouristicEvent = new Swiper(this.swiperTouristicEventRef, {\n modules: [Navigation, Pagination, Keyboard],\n navigation: {\n prevEl: this.prevElTouristicEventRef,\n nextEl: this.nextElTouristicEventRef,\n },\n pagination: { el: this.paginationElTouristicEventRef },\n allowTouchMove: false,\n keyboard: false,\n });\n this.swiperTouristicEventRef.onfullscreenchange = () => {\n this.displayFullscreen = !this.displayFullscreen;\n if (this.displayFullscreen) {\n this.swiperTouristicEvent.keyboard.enable();\n } else {\n this.swiperTouristicEvent.keyboard.disable();\n }\n };\n }\n\n handleFullscreen() {\n if (this.touristicEvent.attachments && this.touristicEvent.attachments[0] && this.touristicEvent.attachments[0].url) {\n this.swiperTouristicEventRef.requestFullscreen();\n }\n }\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n const touristicEventTypes = state.touristicEventTypes.find(touristicEventType => touristicEventType.id === this.touristicEvent.type);\n return (\n <Host>\n <div class=\"touristic-event-type-img-container\">\n <div class=\"swiper\" ref={el => (this.swiperTouristicEventRef = el)}>\n <div class=\"swiper-wrapper\">\n {this.touristicEvent.attachments.length > 0 ? (\n this.touristicEvent.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n class={`touristic-event-img${this.displayFullscreen ? ' img-fullscreen' : ''}`}\n src={this.displayFullscreen ? attachment.url : attachment.thumbnail}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img class=\"default-touristic-event-img\" src={defaultImageSrc} loading=\"lazy\" />\n </div>\n )}\n </div>\n <div class=\"swiper-pagination\" ref={el => (this.paginationElTouristicEventRef = el)}></div>\n <div class=\"swiper-button-prev\" ref={el => (this.prevElTouristicEventRef = el)}></div>\n <div class=\"swiper-button-next\" ref={el => (this.nextElTouristicEventRef = el)}></div>\n </div>\n </div>\n <div class=\"touristic-event-sub-container\">\n <div class=\"touristic-event-type-container\">\n <img src={touristicEventTypes.pictogram} />\n <div class=\"touristic-event-type-name\">{touristicEventTypes.type}</div>\n </div>\n <div class=\"touristic-event-name\">{this.touristicEvent.name}</div>\n </div>\n <div class=\"touristic-event-more-detail-container\">\n <button class=\"more-details-button\" onClick={() => this.touristicEventCardPress.emit(this.touristicEvent.id)}>\n Plus de détails\n </button>\n </div>\n </Host>\n );\n }\n}\n",".material-symbols {\n font-family: 'Material Symbols Outlined';\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;\n}\n\n.trek-card-container,\n.trek-card-large-view-container {\n cursor: pointer;\n font-family: 'Roboto';\n border-radius: 12px;\n box-shadow: var(--elevation-1);\n background-color: var(--color-surface-container-low);\n .image {\n object-fit: cover;\n border-top-left-radius: 12px;\n border-top-right-radius: 12px;\n }\n .sub-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n padding: 8px 16px;\n .name {\n color: var(--color-on-surface);\n font-size: 22px;\n line-height: 28px;\n font-weight: 400;\n margin-bottom: 8px;\n }\n .departure {\n color: var(--color-on-surface);\n font-size: 16px;\n line-height: 24px;\n font-weight: 500;\n margin-bottom: 4px;\n }\n .themes-container {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n flex-wrap: wrap;\n .theme {\n background-color: var(--color-secondary-container);\n color: var(--color-on-secondary-container);\n border-radius: 8px;\n padding: 8px 16px;\n margin: 0px 8px 8px 0px;\n box-shadow: var(--elevation-0);\n border: 1px solid var(--color-outline);\n height: 32px;\n gap: 8px;\n box-sizing: border-box;\n text-align: start;\n vertical-align: middle;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n position: relative;\n text-wrap: nowrap;\n }\n }\n .icons-labels-container {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n flex-wrap: wrap;\n color: var(--color-on-surface);\n font-size: 14px;\n line-height: 20px;\n font-weight: 500;\n .row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n &:not(:last-child) {\n margin-bottom: 12px;\n }\n .icon-label {\n &:nth-child(2) {\n margin: 0px 4px;\n }\n display: flex;\n align-items: center;\n width: 50%;\n img,\n span {\n font-size: 24px;\n width: 24px;\n height: 24px;\n margin-right: 8px;\n }\n }\n .practice {\n img {\n background-color: var(--color-primary-app);\n }\n }\n }\n }\n }\n}\n\n.selected-trek-card {\n box-shadow: var(--elevation-2);\n}\n\n.trek-card-container {\n width: 100%;\n max-width: 350px;\n .image {\n width: 100%;\n max-height: 200px;\n }\n}\n\n.trek-card-large-view-container {\n width: 100%;\n display: flex;\n flex-direction: row;\n .image {\n width: 250px;\n }\n}\n\n.trek-step-card {\n width: auto;\n}\n","import { Component, Host, h, Prop, Event, EventEmitter, State, Listen } from '@stencil/core';\nimport state, { onChange, reset } from 'store/store';\nimport { City, Difficulty, Practice, Route, Themes, Trek } from 'types/types';\nimport { formatDuration, formatLength, formatAscent } from 'utils/utils';\n\n@Component({\n tag: 'grw-trek-card',\n styleUrl: 'grw-trek-card.scss',\n shadow: true,\n})\nexport class GrwTrekCard {\n @Event() trekCardPress: EventEmitter<number>;\n @State() currentTrek: Trek;\n @State() difficulty: Difficulty;\n @State() route: Route;\n @State() practice: Practice;\n @State() themes: Themes;\n @State() departureCity: City;\n @Prop() trek: Trek;\n @Prop() colorPrimaryApp = '#6b0030';\n @Prop() colorOnSurface = '#49454e';\n @Prop() colorSecondaryContainer = '#e8def8';\n @Prop() colorOnSecondaryContainer = '#1d192b';\n @Prop() colorSurfaceContainerLow = '#f7f2fa';\n @Prop() isLargeView = false;\n @Prop() resetStoreOnDisconnected = true;\n @Prop() isStep: false;\n\n @Event() cardTrekMouseOver: EventEmitter<number>;\n @Event() cardTrekMouseLeave: EventEmitter;\n\n connectedCallback() {\n this.currentTrek = this.trek ? this.trek : state.currentTrek;\n if (this.currentTrek) {\n this.difficulty = state.difficulties.find(difficulty => difficulty.id === this.currentTrek.difficulty);\n this.route = state.routes.find(route => route.id === this.currentTrek.route);\n this.practice = state.practices.find(practice => practice.id === this.currentTrek.practice);\n this.themes = state.themes.filter(theme => this.currentTrek.themes.includes(theme.id));\n this.departureCity = state.cities.find(city => city.id === this.currentTrek.departure_city);\n }\n onChange('currentTrek', () => {\n this.currentTrek = this.trek ? this.trek : state.currentTrek;\n if (this.currentTrek) {\n this.difficulty = state.difficulties.find(difficulty => difficulty.id === this.currentTrek.difficulty);\n this.route = state.routes.find(route => route.id === this.currentTrek.route);\n this.practice = state.practices.find(practice => practice.id === this.currentTrek.practice);\n this.themes = state.themes.filter(theme => this.currentTrek.themes.includes(theme.id));\n this.departureCity = state.cities.find(city => city.id === this.currentTrek.departure_city);\n }\n });\n }\n\n disconnectedCallback() {\n if (this.resetStoreOnDisconnected) {\n reset();\n }\n }\n\n @Listen('mouseover')\n handleMouseOver() {\n this.cardTrekMouseOver.emit(this.currentTrek.id);\n }\n\n @Listen('mouseleave')\n handleMouseLeave() {\n this.cardTrekMouseLeave.emit();\n }\n\n render() {\n return (\n <Host\n style={{\n 'width': this.isLargeView ? '100%' : 'auto',\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 }}\n >\n {this.currentTrek && (\n <div\n class={\n this.isStep\n ? `trek-card-container trek-step-card${state.selectedStepId === this.currentTrek.id ? ' selected-trek-card' : ''}`\n : this.isLargeView\n ? `trek-card-large-view-container${state.selectedTrekId === this.currentTrek.id ? ' selected-trek-card' : ''}`\n : `trek-card-container${state.selectedTrekId === this.currentTrek.id ? ' selected-trek-card' : ''}`\n }\n onClick={() => this.trekCardPress.emit(this.currentTrek.id)}\n >\n {this.currentTrek.attachments.filter(attachment => attachment.type === 'image').length > 0 && (\n <img class=\"image\" src={`${this.currentTrek.attachments.filter(attachment => attachment.type === 'image')[0].thumbnail}`} loading=\"lazy\" />\n )}\n <div class=\"sub-container\">\n {this.departureCity && <div class=\"departure\">{this.departureCity.name}</div>}\n <div class=\"name\">{this.currentTrek?.name}</div>\n {!this.isStep && (\n <div class=\"themes-container\">\n {this.themes.map(theme => (\n <div class=\"theme\">{theme.label}</div>\n ))}\n </div>\n )}\n <div class=\"icons-labels-container\">\n <div class=\"row\">\n <div class=\"icon-label difficulty\">\n {this.difficulty?.pictogram && <img src={this.difficulty.pictogram} />}\n {this.difficulty?.label}\n </div>\n <div class=\"icon-label duration\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n timelapse\n </span>\n {formatDuration(this.currentTrek.duration)}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"icon-label length\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n open_in_full\n </span>\n {formatLength(this.currentTrek.length_2d)}\n </div>\n <div class=\"icon-label ascent\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n moving\n </span>\n {formatAscent(this.currentTrek.ascent)}\n </div>\n </div>\n {!this.isStep && (\n <div class=\"row\">\n <div class=\"icon-label route\">\n {this.route?.pictogram && <img src={this.route.pictogram} />}\n {this.route?.route}\n </div>\n <div class=\"icon-label practice\">\n {this.practice?.pictogram && <img src={this.practice.pictogram} />}\n {this.practice?.name}\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -30,7 +30,7 @@ const patchEsm = () => {
30
30
  const defineCustomElements = (win, options) => {
31
31
  if (typeof window === 'undefined') return Promise.resolve();
32
32
  return patchEsm().then(() => {
33
- return index.bootstrapLazy([["grw-app.cjs",[[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],"center":[1],"zoom":[2],"nameLayer":[1,"name-layer"],"urlLayer":[1,"url-layer"],"attributionLayer":[1,"attribution-layer"],"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"],"colorSensitiveArea":[1,"color-sensitive-area"],"colorPoiIcon":[1,"color-poi-icon"],"useGradient":[4,"use-gradient"],"treks":[4],"touristicContents":[4,"touristic-contents"],"touristicEvents":[4,"touristic-events"],"showTrek":[32],"showTouristicContent":[32],"showTouristicEvent":[32],"showHomeMap":[32],"showTrekMap":[32],"showTouristicContentMap":[32],"showTouristicEventMap":[32],"showFilters":[32],"isLargeView":[32],"currentTrekId":[32],"currentTouristicContentId":[32],"currentTouristicEventId":[32]},[[8,"trekCardPress","onTrekCardPress"],[8,"parentTrekPress","onParentTrekPress"],[8,"touristicContentCardPress","onTouristicContentCardPress"],[8,"touristicEventCardPress","onTouristiceEventCardPress"],[9,"resize","onWindowResize"],[8,"centerOnMap","onCenterOnMap"]]]]],["grw-select-language.cjs",[[1,"grw-select-language"]]],["grw-touristic-event-card-provider.cjs",[[1,"grw-touristic-event-card-provider",{"languages":[1],"api":[1],"touristicEventId":[1,"touristic-event-id"]}]]],["grw-filter.cjs",[[1,"grw-filter",{"filterType":[1,"filter-type"],"filterName":[1,"filter-name"],"filterPlaceholder":[1,"filter-placeholder"],"filterNameProperty":[1,"filter-name-property"],"segment":[1]},[[8,"resetFilter","onResetFilter"]]]]],["grw-information-desk_6.cjs",[[1,"grw-information-desk",{"informationDesk":[16],"displayShortDescription":[32]}],[1,"grw-poi",{"poi":[16],"displayShortDescription":[32],"displayFullscreen":[32]}],[1,"grw-sensitive-area-detail",{"sensitiveArea":[16]}],[1,"grw-touristic-event-card",{"touristicEvent":[16],"displayFullscreen":[32]}],[1,"grw-touristic-content-card",{"touristicContent":[16],"isLargeView":[4,"is-large-view"],"isInsideHorizontalList":[4,"is-inside-horizontal-list"],"displayFullscreen":[32]},[[1,"mouseover","handleMouseOver"],[1,"mouseleave","handleMouseLeave"]]],[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"],"isStep":[4,"is-step"],"currentTrek":[32],"difficulty":[32],"route":[32],"practice":[32],"themes":[32],"departureCity":[32]},[[1,"mouseover","handleMouseOver"],[1,"mouseleave","handleMouseLeave"]]]]],["grw-filters_12.cjs",[[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"],"colorSurfaceContainerLow":[1,"color-surface-container-low"],"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-filters",{"handleFilters":[16],"selectedSegment":[32]}],[1,"grw-touristic-contents-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"],"touristicContentsToDisplay":[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-map",{"nameLayer":[1,"name-layer"],"urlLayer":[1,"url-layer"],"attributionLayer":[1,"attribution-layer"],"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"],"colorSensitiveArea":[1,"color-sensitive-area"],"colorPoiIcon":[1,"color-poi-icon"],"useGradient":[4,"use-gradient"],"resetStoreOnDisconnected":[4,"reset-store-on-disconnected"],"isLargeView":[4,"is-large-view"],"mapIsReady":[32]},[[8,"centerOnMap","onCenterOnMap"],[8,"stepsIsInViewport","stepsIsInViewport"],[8,"descriptionIsInViewport","descriptionIsInViewport"],[8,"parkingIsInViewport","parkingIsInViewport"],[8,"informationDeskIsInViewport","onInformationDesksIsInViewport"],[8,"sensitiveAreaIsInViewport","sensitiveAreaIsInViewport"],[8,"poiIsInViewport","poiIsInViewport"],[8,"touristicContentsIsInViewport","touristicContentsIsInViewport"],[8,"touristicEventsIsInViewport","touristicEventsIsInViewport"],[8,"cardTrekMouseOver","onCardTrekMouseOver"],[8,"cardTrekMouseLeave","onCardTrekMouseLeave"],[8,"cardTouristicContentMouseOver","onTouristicContentMouseOver"],[8,"cardTouristicContentMouseLeave","onTouristicContentMouseLeave"]]],[1,"grw-search"],[1,"grw-touristic-content-card-provider",{"languages":[1],"api":[1],"touristicContentId":[1,"touristic-content-id"]}],[1,"grw-touristic-content-detail",{"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"],"colorSurfaceContainerLow":[1,"color-surface-container-low"],"colorBackground":[1,"color-background"],"isLargeView":[4,"is-large-view"],"displayFullscreen":[32]}],[1,"grw-touristic-content-provider",{"languages":[1],"api":[1],"touristicContentId":[1,"touristic-content-id"]}],[1,"grw-touristic-event-detail",{"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"],"colorSurfaceContainerLow":[1,"color-surface-container-low"],"colorBackground":[1,"color-background"],"isLargeView":[4,"is-large-view"],"displayFullscreen":[32]}],[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]}]]]], options);
33
+ return index.bootstrapLazy([["grw-app.cjs",[[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],"center":[1],"zoom":[2],"nameLayer":[1,"name-layer"],"urlLayer":[1,"url-layer"],"attributionLayer":[1,"attribution-layer"],"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"],"colorSensitiveArea":[1,"color-sensitive-area"],"colorPoiIcon":[1,"color-poi-icon"],"useGradient":[4,"use-gradient"],"treks":[4],"touristicContents":[4,"touristic-contents"],"touristicEvents":[4,"touristic-events"],"showTrek":[32],"showTouristicContent":[32],"showTouristicEvent":[32],"showHomeMap":[32],"showTrekMap":[32],"showTouristicContentMap":[32],"showTouristicEventMap":[32],"showFilters":[32],"isLargeView":[32],"currentTrekId":[32],"currentTouristicContentId":[32],"currentTouristicEventId":[32]},[[8,"trekCardPress","onTrekCardPress"],[8,"parentTrekPress","onParentTrekPress"],[8,"touristicContentCardPress","onTouristicContentCardPress"],[8,"touristicEventCardPress","onTouristiceEventCardPress"],[9,"resize","onWindowResize"],[8,"centerOnMap","onCenterOnMap"]]]]],["grw-select-language.cjs",[[1,"grw-select-language"]]],["grw-touristic-event-card-provider.cjs",[[1,"grw-touristic-event-card-provider",{"languages":[1],"api":[1],"touristicEventId":[1,"touristic-event-id"]}]]],["grw-filter.cjs",[[1,"grw-filter",{"filterType":[1,"filter-type"],"filterName":[1,"filter-name"],"filterPlaceholder":[1,"filter-placeholder"],"filterNameProperty":[1,"filter-name-property"],"segment":[1]},[[8,"resetFilter","onResetFilter"]]]]],["grw-information-desk_6.cjs",[[1,"grw-information-desk",{"informationDesk":[16],"displayShortDescription":[32]}],[1,"grw-poi",{"poi":[16],"displayShortDescription":[32],"displayFullscreen":[32]}],[1,"grw-sensitive-area-detail",{"sensitiveArea":[16]}],[1,"grw-touristic-event-card",{"touristicEvent":[16],"displayFullscreen":[32]}],[1,"grw-touristic-content-card",{"touristicContent":[16],"isLargeView":[4,"is-large-view"],"isInsideHorizontalList":[4,"is-inside-horizontal-list"],"displayFullscreen":[32]},[[1,"mouseover","handleMouseOver"],[1,"mouseleave","handleMouseLeave"]]],[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"],"isStep":[4,"is-step"],"currentTrek":[32],"difficulty":[32],"route":[32],"practice":[32],"themes":[32],"departureCity":[32]},[[1,"mouseover","handleMouseOver"],[1,"mouseleave","handleMouseLeave"]]]]],["grw-filters_12.cjs",[[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"],"colorSurfaceContainerLow":[1,"color-surface-container-low"],"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-filters",{"handleFilters":[16],"selectedSegment":[32]}],[1,"grw-touristic-contents-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"],"touristicContentsToDisplay":[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-map",{"nameLayer":[1,"name-layer"],"urlLayer":[1,"url-layer"],"attributionLayer":[1,"attribution-layer"],"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"],"colorSensitiveArea":[1,"color-sensitive-area"],"colorPoiIcon":[1,"color-poi-icon"],"useGradient":[4,"use-gradient"],"resetStoreOnDisconnected":[4,"reset-store-on-disconnected"],"isLargeView":[4,"is-large-view"],"mapIsReady":[32]},[[8,"centerOnMap","onCenterOnMap"],[8,"stepsIsInViewport","stepsIsInViewport"],[8,"descriptionIsInViewport","descriptionIsInViewport"],[8,"parkingIsInViewport","parkingIsInViewport"],[8,"informationDeskIsInViewport","onInformationDesksIsInViewport"],[8,"sensitiveAreaIsInViewport","sensitiveAreaIsInViewport"],[8,"poiIsInViewport","poiIsInViewport"],[8,"touristicContentsIsInViewport","touristicContentsIsInViewport"],[8,"touristicEventsIsInViewport","touristicEventsIsInViewport"],[8,"cardTrekMouseOver","onCardTrekMouseOver"],[8,"cardTrekMouseLeave","onCardTrekMouseLeave"],[8,"cardTouristicContentMouseOver","onTouristicContentMouseOver"],[8,"cardTouristicContentMouseLeave","onTouristicContentMouseLeave"]]],[1,"grw-search"],[1,"grw-touristic-content-detail",{"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"],"colorSurfaceContainerLow":[1,"color-surface-container-low"],"colorBackground":[1,"color-background"],"isLargeView":[4,"is-large-view"],"displayFullscreen":[32]}],[1,"grw-touristic-content-provider",{"languages":[1],"api":[1],"touristicContentId":[1,"touristic-content-id"]}],[1,"grw-touristic-contents-provider",{"languages":[1],"api":[1],"touristicContentId":[1,"touristic-content-id"],"inBbox":[1,"in-bbox"],"cities":[1],"districts":[1],"structures":[1],"themes":[1],"portals":[1]}],[1,"grw-touristic-event-detail",{"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"],"colorSurfaceContainerLow":[1,"color-surface-container-low"],"colorBackground":[1,"color-background"],"isLargeView":[4,"is-large-view"],"displayFullscreen":[32]}],[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]}]]]], options);
34
34
  });
35
35
  };
36
36
 
Binary file
Binary file
@@ -104,6 +104,7 @@ grw-app {
104
104
  .init-loader-container,
105
105
  .loader-container,
106
106
  .large-view-loader-container {
107
+ position: absolute;
107
108
  display: flex;
108
109
  justify-content: center;
109
110
  align-items: center;
@@ -211,14 +212,14 @@ grw-app {
211
212
  }
212
213
 
213
214
  grw-treks-list,
214
- grw-touristic-contents-list,
215
- grw-touristic-content-detail,
216
- grw-touristic-event-detail {
215
+ grw-touristic-contents-list {
217
216
  max-height: calc(100vh - var(--header-height));
218
217
  }
219
218
 
220
- grw-trek-detail {
221
- max-height: calc(100vh - var(--header-height) - 48px);
219
+ grw-trek-detail,
220
+ grw-touristic-content-detail,
221
+ grw-touristic-event-detail {
222
+ max-height: calc(100vh - 64px);
222
223
  }
223
224
 
224
225
  .app-map-container {
@@ -273,7 +273,7 @@ export class GrwApp {
273
273
  }
274
274
  changeMode(mode) {
275
275
  state.searchValue = '';
276
- if (mode === 'treks') {
276
+ if (mode === 'treks' && state.currentTreks) {
277
277
  treksFilters.forEach(filter => {
278
278
  state[filter.property].forEach(currentFilter => (currentFilter.selected = false));
279
279
  });
@@ -282,7 +282,7 @@ export class GrwApp {
282
282
  state.selectedLocationFilters = 0;
283
283
  state.currentTreks = handleTreksFiltersAndSearch();
284
284
  }
285
- else if (mode === 'touristicContents') {
285
+ else if (mode === 'touristicContents' && state.currentTouristicContents) {
286
286
  touristicContentsFilters.forEach(filter => {
287
287
  state[filter.property].forEach(currentFilter => (currentFilter.selected = false));
288
288
  });
@@ -312,9 +312,11 @@ export class GrwApp {
312
312
  '--app-width': this.appWidth,
313
313
  '--app-height': this.appHeight,
314
314
  '--header-height': Number(this.treks) + Number(this.touristicContents) + Number(this.touristicEvents) > 1 ? '136px' : '64px',
315
- } }, !state.currentTreks && !state.currentTrek && !state.currentTouristicContent && !state.currentTouristicEvent && !state.touristicContents && (h("div", { class: "init-loader-container" }, h("span", { class: "loader" }))), this.treks && !this.showTrek && !this.showTouristicContent && !this.showTouristicEvent && !state.treks && (h("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 && !state.currentTrek && (h("grw-trek-provider", { api: this.api, languages: this.languages, "trek-id": this.currentTrekId })), this.showTouristicContent && this.currentTouristicContentId && (h("grw-touristic-content-card-provider", { api: this.api, languages: this.languages, "touristic-content-id": this.currentTouristicContentId })), this.showTouristicEvent && this.currentTouristicEventId && (h("grw-touristic-event-provider", { api: this.api, languages: this.languages, "touristic-event-id": this.currentTouristicEventId })), this.touristicContents && !state.touristicContents && !this.showTouristicContent && (h("grw-touristic-content-provider", { api: this.api, languages: this.languages })), (state.currentTreks || state.currentTrek || state.touristicContents || state.currentTouristicContent || state.currentTouristicEvent) && (h("div", { class: "app-container" }, h("div", { class: `${this.isLargeView ? 'large-view-header-container' : 'header-container'}${this.showTrek || this.showTouristicContent || this.showTouristicEvent ? ' header-detail' : ''}` }, Number(this.treks) + Number(this.touristicContents) + Number(this.touristicEvents) > 1 && !this.showTrek && !this.showTouristicContent && !this.showTouristicEvent && (h("div", { class: "segmented-buttons-container" }, this.treks && (h("label", { class: `segment${state.mode === 'treks' ? ' selected-segment' : ''}`, onClick: () => this.changeMode('treks') }, translate[state.language].home.segment.treks)), this.touristicContents && (h("label", { class: `segment${state.mode === 'touristicContents' ? ' selected-segment' : ''}`, onClick: () => this.changeMode('touristicContents') }, translate[state.language].home.segment.touristicContents)))), !this.showTrek && !this.showTouristicContent && !this.showTouristicEvent ? (h("div", { class: "handle-search-filters-container" }, h("div", { class: "handle-search-container" }, h("grw-search", null)), h("div", { class: "handle-filters-container" }, h("button", { onClick: () => this.handleFilters(), class: "handle-filters-button" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined margin-right-icon" }, "filter_list"), translate[state.language].filter)))) : (h("div", { class: "arrow-back-container" }, h("button", { onClick: () => this.handleBackButton(), class: "arrow-back-icon" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "arrow_back"))))), h("div", { class: `content-container ${this.showTrek ? 'content-trek' : 'content-treks'}` }, h("div", { class: this.isLargeView ? 'large-view-app-treks-list-container' : 'app-treks-list-container', style: { display: this.showTrek || this.showTouristicContent || this.showTouristicEvent ? 'none' : 'flex', position: this.showTrek ? 'absolute' : 'relative' } }, state.mode === 'treks' && this.treks && (h("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 })), state.mode === 'touristicContents' && this.touristicContents && (h("grw-touristic-contents-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 && !state.currentTrek) ||
315
+ } }, !state.currentTreks && !state.currentTrek && !state.currentTouristicContent && !state.currentTouristicEvent && !state.currentTouristicContents && (h("div", { class: "init-loader-container" }, h("span", { class: "loader" }))), this.treks && state.mode === 'treks' && !this.showTrek && !this.showTouristicContent && !this.showTouristicEvent && !state.currentTreks && (h("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 && !state.currentTrek && (h("grw-trek-provider", { api: this.api, languages: this.languages, "trek-id": this.currentTrekId })), this.showTouristicContent && this.currentTouristicContentId && (h("grw-touristic-content-provider", { api: this.api, languages: this.languages, "touristic-content-id": this.currentTouristicContentId })), this.showTouristicEvent && this.currentTouristicEventId && (h("grw-touristic-event-provider", { api: this.api, languages: this.languages, "touristic-event-id": this.currentTouristicEventId })), this.touristicContents && state.mode === 'touristicContents' && !state.currentTouristicContents && !this.showTouristicContent && (h("grw-touristic-contents-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 })), (state.currentTreks || state.currentTrek || state.touristicContents || state.currentTouristicContent || state.currentTouristicEvent) && (h("div", { class: "app-container" }, h("div", { class: `${this.isLargeView ? 'large-view-header-container' : 'header-container'}${this.showTrek || this.showTouristicContent || this.showTouristicEvent ? ' header-detail' : ''}` }, Number(this.treks) + Number(this.touristicContents) + Number(this.touristicEvents) > 1 && !this.showTrek && !this.showTouristicContent && !this.showTouristicEvent && (h("div", { class: "segmented-buttons-container" }, this.treks && (h("label", { class: `segment${state.mode === 'treks' ? ' selected-segment' : ''}`, onClick: () => this.changeMode('treks') }, translate[state.language].home.segment.treks)), this.touristicContents && (h("label", { class: `segment${state.mode === 'touristicContents' ? ' selected-segment' : ''}`, onClick: () => this.changeMode('touristicContents') }, translate[state.language].home.segment.touristicContents)))), !this.showTrek && !this.showTouristicContent && !this.showTouristicEvent ? (h("div", { class: "handle-search-filters-container" }, h("div", { class: "handle-search-container" }, h("grw-search", null)), h("div", { class: "handle-filters-container" }, h("button", { onClick: () => this.handleFilters(), class: "handle-filters-button" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined margin-right-icon" }, "filter_list"), translate[state.language].filter)))) : (h("div", { class: "arrow-back-container" }, h("button", { onClick: () => this.handleBackButton(), class: "arrow-back-icon" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "arrow_back"))))), h("div", { class: `content-container ${this.showTrek || this.showTouristicContent || this.showTouristicEvent ? 'content-trek' : 'content-treks'}` }, h("div", { class: this.isLargeView ? 'large-view-app-treks-list-container' : 'app-treks-list-container', style: { display: this.showTrek || this.showTouristicContent || this.showTouristicEvent ? 'none' : 'flex', position: this.showTrek ? 'absolute' : 'relative' } }, state.mode === 'treks' && this.treks && (h("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 })), state.mode === 'touristicContents' && this.touristicContents && (h("grw-touristic-contents-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 && !state.currentTrek) ||
316
316
  (this.showTouristicContent && !state.currentTouristicContent) ||
317
- (this.showTouristicEvent && !state.currentTouristicEvent)) && (h("div", { class: this.isLargeView ? 'large-view-loader-container' : 'loader-container' }, h("span", { class: "loader" }))), state.currentTrek && (h("div", { class: this.isLargeView ? 'large-view-app-trek-detail-container' : 'app-trek-detail-container' }, h("grw-trek-detail", { style: {
317
+ (this.showTouristicEvent && !state.currentTouristicEvent) ||
318
+ (!state.currentTreks && state.mode === 'treks') ||
319
+ (!state.touristicContents && state.mode === 'touristicContents' && (h("div", { class: this.isLargeView ? 'large-view-loader-container' : 'loader-container' }, h("span", { class: "loader" })))), state.currentTrek && (h("div", { class: this.isLargeView ? 'large-view-app-trek-detail-container' : 'app-trek-detail-container' }, h("grw-trek-detail", { style: {
318
320
  visibility: (!this.showTrekMap && this.showTrek) || this.isLargeView ? 'visible' : 'hidden',
319
321
  zIndex: !this.showTrekMap ? '1' : '0',
320
322
  }, "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-surface-container-low": this.colorSurfaceContainerLow, "color-background": this.colorBackground, weather: this.weather, "is-large-view": this.isLargeView }))), this.showTouristicContent && (h("div", { class: this.isLargeView ? 'large-view-app-touristic-content-detail-container' : 'app-touristic-content-detail-container' }, h("grw-touristic-content-detail", { style: {