@geotrekce/geotrek-rando-widget 0.4.6 → 0.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/grw-app.cjs.entry.js +1 -1
- package/dist/cjs/grw-app.cjs.entry.js.br +0 -0
- package/dist/cjs/grw-app.cjs.entry.js.gz +0 -0
- package/dist/cjs/grw-filter.cjs.entry.js +1 -1
- package/dist/cjs/grw-filter.cjs.entry.js.br +0 -0
- package/dist/cjs/grw-filter.cjs.entry.js.gz +0 -0
- package/dist/cjs/grw-filters_16.cjs.entry.js +8 -4
- package/dist/cjs/grw-filters_16.cjs.entry.js.br +0 -0
- package/dist/cjs/grw-filters_16.cjs.entry.js.gz +0 -0
- package/dist/cjs/grw-filters_16.cjs.entry.js.map +1 -1
- package/dist/cjs/grw-information-desk_6.cjs.entry.js +1 -1
- package/dist/cjs/grw-information-desk_6.cjs.entry.js.br +0 -0
- package/dist/cjs/grw-information-desk_6.cjs.entry.js.gz +0 -0
- package/dist/cjs/{utils-aafb9447.js → utils-f0196a2f.js} +2 -1
- package/dist/cjs/utils-f0196a2f.js.br +0 -0
- package/dist/cjs/utils-f0196a2f.js.gz +0 -0
- package/dist/cjs/utils-f0196a2f.js.map +1 -0
- package/dist/collection/components/grw-trek-detail/grw-trek-detail.js +1 -1
- package/dist/collection/components/grw-trek-detail/grw-trek-detail.js.br +0 -0
- package/dist/collection/components/grw-trek-detail/grw-trek-detail.js.gz +0 -0
- package/dist/collection/components/grw-trek-detail/grw-trek-detail.js.map +1 -1
- package/dist/collection/store/grw-trek-provider.js +6 -2
- package/dist/collection/store/grw-trek-provider.js.br +0 -0
- package/dist/collection/store/grw-trek-provider.js.gz +0 -0
- package/dist/collection/store/grw-trek-provider.js.map +1 -1
- package/dist/collection/store/store.js +1 -0
- package/dist/collection/store/store.js.br +0 -0
- package/dist/collection/store/store.js.gz +0 -0
- package/dist/collection/store/store.js.map +1 -1
- package/dist/collection/stories/App.stories.js +2 -2
- package/dist/collection/stories/App.stories.js.br +0 -0
- package/dist/collection/stories/App.stories.js.gz +0 -0
- package/dist/collection/stories/TrekMap.stories.js +2 -2
- package/dist/collection/stories/TrekMap.stories.js.br +0 -0
- package/dist/collection/stories/TrekMap.stories.js.gz +0 -0
- package/dist/collection/stories/TreksMap.stories.js +2 -2
- package/dist/collection/stories/TreksMap.stories.js.br +0 -0
- package/dist/collection/stories/TreksMap.stories.js.gz +0 -0
- package/dist/collection/types/types.js.map +1 -1
- package/dist/esm/grw-app.entry.js +1 -1
- package/dist/esm/grw-app.entry.js.br +0 -0
- package/dist/esm/grw-app.entry.js.gz +0 -0
- package/dist/esm/grw-filter.entry.js +1 -1
- package/dist/esm/grw-filter.entry.js.br +0 -0
- package/dist/esm/grw-filter.entry.js.gz +0 -0
- package/dist/esm/grw-filters_16.entry.js +8 -4
- package/dist/esm/grw-filters_16.entry.js.br +0 -0
- package/dist/esm/grw-filters_16.entry.js.gz +0 -0
- package/dist/esm/grw-filters_16.entry.js.map +1 -1
- package/dist/esm/grw-information-desk_6.entry.js +1 -1
- package/dist/esm/grw-information-desk_6.entry.js.br +0 -0
- package/dist/esm/grw-information-desk_6.entry.js.gz +0 -0
- package/dist/esm/{utils-6441a08a.js → utils-2e80d729.js} +2 -1
- package/dist/esm/utils-2e80d729.js.br +0 -0
- package/dist/esm/utils-2e80d729.js.gz +0 -0
- package/dist/esm/utils-2e80d729.js.map +1 -0
- package/dist/esm-es5/grw-app.entry.js +1 -1
- package/dist/esm-es5/grw-app.entry.js.br +0 -0
- package/dist/esm-es5/grw-app.entry.js.gz +0 -0
- package/dist/esm-es5/grw-filter.entry.js +1 -1
- package/dist/esm-es5/grw-filter.entry.js.br +0 -0
- package/dist/esm-es5/grw-filter.entry.js.gz +0 -0
- package/dist/esm-es5/grw-filters_16.entry.js +2 -2
- package/dist/esm-es5/grw-filters_16.entry.js.br +0 -0
- package/dist/esm-es5/grw-filters_16.entry.js.gz +0 -0
- package/dist/esm-es5/grw-filters_16.entry.js.map +1 -1
- package/dist/esm-es5/grw-information-desk_6.entry.js +1 -1
- package/dist/esm-es5/grw-information-desk_6.entry.js.br +0 -0
- package/dist/esm-es5/grw-information-desk_6.entry.js.gz +0 -0
- package/dist/esm-es5/utils-2e80d729.js +2 -0
- package/dist/esm-es5/utils-2e80d729.js.br +0 -0
- package/dist/esm-es5/utils-2e80d729.js.gz +0 -0
- package/dist/esm-es5/utils-2e80d729.js.map +1 -0
- package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js +1 -1
- package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.br +0 -0
- package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.gz +0 -0
- package/dist/geotrek-rando-widget/{p-ff607e4b.entry.js → p-0eb7003a.entry.js} +2 -2
- package/dist/geotrek-rando-widget/p-0eb7003a.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-0eb7003a.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-20f93123.system.js +2 -0
- package/dist/geotrek-rando-widget/p-20f93123.system.js.br +0 -0
- package/dist/geotrek-rando-widget/p-20f93123.system.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-20f93123.system.js.map +1 -0
- package/dist/geotrek-rando-widget/{p-06412985.entry.js → p-34b0e7b0.entry.js} +2 -2
- package/dist/geotrek-rando-widget/p-34b0e7b0.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-34b0e7b0.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/{p-ebadf1e2.system.entry.js → p-6f966493.system.entry.js} +2 -2
- package/dist/geotrek-rando-widget/p-6f966493.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-6f966493.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/{p-0d8a3c86.system.entry.js → p-c7fe0141.system.entry.js} +2 -2
- package/dist/geotrek-rando-widget/p-c7fe0141.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-c7fe0141.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-cc8a7df2.system.js +1 -1
- package/dist/geotrek-rando-widget/p-cc8a7df2.system.js.br +0 -0
- package/dist/geotrek-rando-widget/p-cc8a7df2.system.js.gz +0 -0
- package/dist/geotrek-rando-widget/{p-01f5ed45.system.entry.js → p-cfb59fc0.system.entry.js} +3 -3
- package/dist/geotrek-rando-widget/p-cfb59fc0.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-cfb59fc0.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-cfb59fc0.system.entry.js.map +1 -0
- package/dist/geotrek-rando-widget/p-d24cca7d.js +2 -0
- package/dist/geotrek-rando-widget/p-d24cca7d.js.br +0 -0
- package/dist/geotrek-rando-widget/p-d24cca7d.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-d24cca7d.js.map +1 -0
- package/dist/geotrek-rando-widget/{p-e9caba62.entry.js → p-ec3f78e6.entry.js} +3 -3
- package/dist/geotrek-rando-widget/p-ec3f78e6.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-ec3f78e6.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-ec3f78e6.entry.js.map +1 -0
- package/dist/geotrek-rando-widget/{p-1cfb837f.entry.js → p-f6f46632.entry.js} +2 -2
- package/dist/geotrek-rando-widget/p-f6f46632.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-f6f46632.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/{p-73278096.system.entry.js → p-fe94e7fd.system.entry.js} +2 -2
- package/dist/geotrek-rando-widget/p-fe94e7fd.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-fe94e7fd.system.entry.js.gz +0 -0
- package/dist/types/store/store.d.ts +3 -1
- package/dist/types/types/types.d.ts +6 -0
- package/package.json +1 -1
- package/dist/cjs/utils-aafb9447.js.br +0 -0
- package/dist/cjs/utils-aafb9447.js.gz +0 -0
- package/dist/cjs/utils-aafb9447.js.map +0 -1
- package/dist/esm/utils-6441a08a.js.br +0 -0
- package/dist/esm/utils-6441a08a.js.gz +0 -0
- package/dist/esm/utils-6441a08a.js.map +0 -1
- package/dist/esm-es5/utils-6441a08a.js +0 -2
- package/dist/esm-es5/utils-6441a08a.js.br +0 -0
- package/dist/esm-es5/utils-6441a08a.js.gz +0 -0
- package/dist/esm-es5/utils-6441a08a.js.map +0 -1
- package/dist/geotrek-rando-widget/p-01f5ed45.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-01f5ed45.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-01f5ed45.system.entry.js.map +0 -1
- package/dist/geotrek-rando-widget/p-06412985.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-06412985.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-0d8a3c86.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-0d8a3c86.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-1cfb837f.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-1cfb837f.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-6f7916db.system.js +0 -2
- package/dist/geotrek-rando-widget/p-6f7916db.system.js.br +0 -0
- package/dist/geotrek-rando-widget/p-6f7916db.system.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-6f7916db.system.js.map +0 -1
- package/dist/geotrek-rando-widget/p-73278096.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-73278096.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-bcac98e0.js +0 -2
- package/dist/geotrek-rando-widget/p-bcac98e0.js.br +0 -0
- package/dist/geotrek-rando-widget/p-bcac98e0.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-bcac98e0.js.map +0 -1
- package/dist/geotrek-rando-widget/p-e9caba62.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-e9caba62.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-e9caba62.entry.js.map +0 -1
- package/dist/geotrek-rando-widget/p-ebadf1e2.system.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-ebadf1e2.system.entry.js.gz +0 -0
- package/dist/geotrek-rando-widget/p-ff607e4b.entry.js.br +0 -0
- package/dist/geotrek-rando-widget/p-ff607e4b.entry.js.gz +0 -0
- /package/dist/geotrek-rando-widget/{p-ff607e4b.entry.js.map → p-0eb7003a.entry.js.map} +0 -0
- /package/dist/geotrek-rando-widget/{p-06412985.entry.js.map → p-34b0e7b0.entry.js.map} +0 -0
- /package/dist/geotrek-rando-widget/{p-ebadf1e2.system.entry.js.map → p-6f966493.system.entry.js.map} +0 -0
- /package/dist/geotrek-rando-widget/{p-0d8a3c86.system.entry.js.map → p-c7fe0141.system.entry.js.map} +0 -0
- /package/dist/geotrek-rando-widget/{p-1cfb837f.entry.js.map → p-f6f46632.entry.js.map} +0 -0
- /package/dist/geotrek-rando-widget/{p-73278096.system.entry.js.map → p-fe94e7fd.system.entry.js.map} +0 -0
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const index = require('./index-9e4fe3f0.js');
|
|
6
6
|
const pagination = require('./pagination-149c2052.js');
|
|
7
|
-
const utils = require('./utils-
|
|
7
|
+
const utils = require('./utils-f0196a2f.js');
|
|
8
8
|
|
|
9
9
|
const grwInformationDeskCss = ".material-symbols{font-family:\"Material Symbols Outlined\"}.material-symbols-outlined{font-variation-settings:\"FILL\" 0, \"wght\" 400, \"GRAD\" 0, \"opsz\" 48}:host{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:hidden;border:1px solid gray;border-radius:12px;background-color:var(--color-surface-container-low);color:var(--color-on-surface)}:host a{color:var(--color-primary-app)}.information-desk-img{position:relative}.information-desk-img img{width:100%;height:100%;max-height:200px;-o-object-fit:cover;object-fit:cover}.information-desk-sub-container{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding:12px}.information-desk-name{font-size:16px;line-height:24px;font-weight:500}.information-desk-description{font-size:14px;line-height:20px}.information-desk-description-short{font-size:14px;line-height:20px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.handle-information-desk-description{cursor:pointer;color:var(--color-primary-app);text-decoration:underline;margin-top:12px}.phone-container,.mail-container,.link-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.phone-container span,.mail-container span,.link-container span{font-size:16px;margin-right:8px}.center-on-map-button{cursor:pointer;background-color:var(--color-primary-container);color:var(--color-on-primary-container);border-radius:8px;padding:8px 16px;-webkit-box-shadow:var(--elevation-1);box-shadow:var(--elevation-1);height:32px;gap:8px;-webkit-box-sizing:border-box;box-sizing:border-box;text-align:start;vertical-align:middle;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;position:relative;border:none;font-size:14px;margin:12px 0px}.center-on-map-button:hover{-webkit-box-shadow:var(--elevation-2);box-shadow:var(--elevation-2)}.center-on-map-button span{font-size:18px}";
|
|
10
10
|
|
|
Binary file
|
|
Binary file
|
|
@@ -215,6 +215,7 @@ const { state, onChange, reset } = createStore({
|
|
|
215
215
|
districts: null,
|
|
216
216
|
sources: null,
|
|
217
217
|
ratings: null,
|
|
218
|
+
ratingsScale: null,
|
|
218
219
|
accessibilities: null,
|
|
219
220
|
accessibilitiesLevel: null,
|
|
220
221
|
poiTypes: null,
|
|
@@ -502,4 +503,4 @@ exports.touristicContentsFilters = touristicContentsFilters;
|
|
|
502
503
|
exports.touristicEventsFilters = touristicEventsFilters;
|
|
503
504
|
exports.treksFilters = treksFilters;
|
|
504
505
|
|
|
505
|
-
//# sourceMappingURL=utils-
|
|
506
|
+
//# sourceMappingURL=utils-f0196a2f.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"utils-f0196a2f.js","mappings":";;;;AAEA,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,KAAK;AAC9C,IAAI,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACpC,IAAI,IAAI,CAAC,KAAK,EAAE;AAChB,QAAQ,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AACnC,KAAK;AACL,SAAS,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;AACrC,QAAQ,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1B,KAAK;AACL,CAAC,CAAC;AACF,MAAM,QAAQ,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK;AAC7B,IAAI,IAAI,SAAS,CAAC;AAClB,IAAI,OAAO,CAAC,GAAG,IAAI,KAAK;AACxB,QAAQ,IAAI,SAAS,EAAE;AACvB,YAAY,YAAY,CAAC,SAAS,CAAC,CAAC;AACpC,SAAS;AACT,QAAQ,SAAS,GAAG,UAAU,CAAC,MAAM;AACrC,YAAY,SAAS,GAAG,CAAC,CAAC;AAC1B,YAAY,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;AACxB,SAAS,EAAE,EAAE,CAAC,CAAC;AACf,KAAK,CAAC;AACN,CAAC,CAAC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,WAAW,GAAG,CAAC,YAAY,KAAK,EAAE,aAAa,IAAI,YAAY,CAAC,IAAI,YAAY,CAAC,WAAW,CAAC;AACnG,MAAM,eAAe,GAAG,QAAQ,CAAC,CAAC,GAAG,KAAK;AAC1C,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE;AAChC,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AACvD,KAAK;AACL,CAAC,EAAE,IAAI,CAAC,CAAC;AACT,MAAM,mBAAmB,GAAG,MAAM;AAClC,IAAI,IAAI,OAAOA,qBAAe,KAAK,UAAU,EAAE;AAC/C;AACA;AACA,QAAQ,OAAO,EAAE,CAAC;AAClB,KAAK;AACL,IAAI,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;AACnC,IAAI,OAAO;AACX,QAAQ,OAAO,EAAE,MAAM,YAAY,CAAC,KAAK,EAAE;AAC3C,QAAQ,GAAG,EAAE,CAAC,QAAQ,KAAK;AAC3B,YAAY,MAAM,GAAG,GAAGA,qBAAe,EAAE,CAAC;AAC1C,YAAY,IAAI,GAAG,EAAE;AACrB,gBAAgB,WAAW,CAAC,YAAY,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;AACzD,aAAa;AACb,SAAS;AACT,QAAQ,GAAG,EAAE,CAAC,QAAQ,KAAK;AAC3B,YAAY,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACxD,YAAY,IAAI,QAAQ,EAAE;AAC1B,gBAAgB,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAACC,iBAAW,CAAC,CAAC,CAAC;AACzE,aAAa;AACb,YAAY,eAAe,CAAC,YAAY,CAAC,CAAC;AAC1C,SAAS;AACT,QAAQ,KAAK,EAAE,MAAM;AACrB,YAAY,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAACA,iBAAW,CAAC,CAAC,CAAC;AACtE,YAAY,eAAe,CAAC,YAAY,CAAC,CAAC;AAC1C,SAAS;AACT,KAAK,CAAC;AACN,CAAC,CAAC;AACF;AACA,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,OAAO,GAAG,KAAK,UAAU,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;AAClE,MAAM,mBAAmB,GAAG,CAAC,YAAY,EAAE,YAAY,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK;AAChF,IAAI,MAAM,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AAChD,IAAI,IAAI,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,KAAK,IAAI,IAAI,cAAc,KAAK,KAAK,CAAC,GAAG,cAAc,GAAG,EAAE,CAAC,CAAC,CAAC;AACrH,IAAI,MAAM,QAAQ,GAAG;AACrB,QAAQ,OAAO,EAAE,EAAE;AACnB,QAAQ,GAAG,EAAE,EAAE;AACf,QAAQ,GAAG,EAAE,EAAE;AACf,QAAQ,KAAK,EAAE,EAAE;AACjB,KAAK,CAAC;AACN,IAAI,MAAM,KAAK,GAAG,MAAM;AACxB,QAAQ,IAAI,EAAE,CAAC;AACf;AACA;AACA,QAAQ,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AAC1G,QAAQ,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;AAC7C,KAAK,CAAC;AACN,IAAI,MAAM,OAAO,GAAG,MAAM;AAC1B;AACA;AACA,QAAQ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;AAC/C,QAAQ,KAAK,EAAE,CAAC;AAChB,KAAK,CAAC;AACN,IAAI,MAAM,GAAG,GAAG,CAAC,QAAQ,KAAK;AAC9B,QAAQ,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;AACnD,QAAQ,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACpC,KAAK,CAAC;AACN,IAAI,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,KAAK,KAAK;AACrC,QAAQ,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC9C,QAAQ,IAAI,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE;AACrD,YAAY,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AACxC,YAAY,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;AACxE,SAAS;AACT,KAAK,CAAC;AACN,IAAI,MAAM,KAAK,IAAI,OAAO,KAAK,KAAK,WAAW;AAC/C,UAAU,EAAE;AACZ,UAAU,IAAI,KAAK,CAAC,cAAc,EAAE;AACpC,YAAY,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE;AAC7B,gBAAgB,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC;AACrC,aAAa;AACb,YAAY,OAAO,CAAC,CAAC,EAAE;AACvB,gBAAgB,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;AACjD,aAAa;AACb,YAAY,wBAAwB,GAAG;AACvC,gBAAgB,OAAO;AACvB,oBAAoB,UAAU,EAAE,IAAI;AACpC,oBAAoB,YAAY,EAAE,IAAI;AACtC,iBAAiB,CAAC;AAClB,aAAa;AACb,YAAY,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE;AAC7B,gBAAgB,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC5C,aAAa;AACb,YAAY,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE;AACpC,gBAAgB,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AACrC,gBAAgB,OAAO,IAAI,CAAC;AAC5B,aAAa;AACb,SAAS,CAAC,CAAC,CAAC;AACZ,IAAI,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,QAAQ,KAAK;AACxC,QAAQ,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC3C,QAAQ,OAAO,MAAM;AACrB,YAAY,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC3D,SAAS,CAAC;AACV,KAAK,CAAC;AACN,IAAI,MAAM,QAAQ,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK;AACvC,QAAQ,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK;AACnD,YAAY,IAAI,GAAG,KAAK,QAAQ,EAAE;AAClC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,CAAC;AAC7B,aAAa;AACb,SAAS,CAAC,CAAC;AACX;AACA;AACA,QAAQ,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC9E,QAAQ,OAAO,MAAM;AACrB,YAAY,KAAK,EAAE,CAAC;AACpB,YAAY,OAAO,EAAE,CAAC;AACtB,SAAS,CAAC;AACV,KAAK,CAAC;AACN,IAAI,MAAM,GAAG,GAAG,CAAC,GAAG,aAAa,KAAK;AACtC,QAAQ,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,YAAY,KAAK;AACtE,YAAY,IAAI,YAAY,CAAC,GAAG,EAAE;AAClC,gBAAgB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;AACzD,aAAa;AACb,YAAY,IAAI,YAAY,CAAC,GAAG,EAAE;AAClC,gBAAgB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;AACzD,aAAa;AACb,YAAY,IAAI,YAAY,CAAC,KAAK,EAAE;AACpC,gBAAgB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7D,aAAa;AACb,YAAY,IAAI,YAAY,CAAC,OAAO,EAAE;AACtC,gBAAgB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;AACjE,aAAa;AACb,YAAY,OAAO,MAAM,CAAC;AAC1B,SAAS,EAAE,EAAE,CAAC,CAAC;AACf,QAAQ,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC,CAAC;AACxD,KAAK,CAAC;AACN,IAAI,MAAM,WAAW,GAAG,CAAC,GAAG,KAAK;AACjC,QAAQ,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACzC,QAAQ,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAClE,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,KAAK;AACb,QAAQ,GAAG;AACX,QAAQ,GAAG;AACX,QAAQ,EAAE;AACV,QAAQ,QAAQ;AAChB,QAAQ,GAAG;AACX,QAAQ,OAAO;AACf,QAAQ,KAAK;AACb,QAAQ,WAAW;AACnB,KAAK,CAAC;AACN,CAAC,CAAC;AACF,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,IAAI,KAAK;AACzC,IAAI,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACtC,IAAI,IAAI,KAAK,IAAI,CAAC,EAAE;AACpB,QAAQ,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC/C,QAAQ,KAAK,CAAC,MAAM,EAAE,CAAC;AACvB,KAAK;AACL,CAAC,CAAC;AACF;AACA,MAAM,WAAW,GAAG,CAAC,YAAY,EAAE,YAAY,KAAK;AACpD,IAAI,MAAM,GAAG,GAAG,mBAAmB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;AAChE,IAAI,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC;AACnC,IAAI,OAAO,GAAG,CAAC;AACf,CAAC;;MC/JK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,WAAW,CAqD3C;EACD,IAAI,EAAE,IAAI;EACV,GAAG,EAAE,IAAI;EACT,SAAS,EAAE,IAAI;EACf,QAAQ,EAAE,IAAI;EACd,KAAK,EAAE,IAAI;EACX,YAAY,EAAE,IAAI;EAClB,iBAAiB,EAAE,IAAI;EACvB,gBAAgB,EAAE,IAAI;EACtB,YAAY,EAAE,IAAI;EAClB,MAAM,EAAE,IAAI;EACZ,SAAS,EAAE,IAAI;EACf,MAAM,EAAE,IAAI;EACZ,MAAM,EAAE,IAAI;EACZ,SAAS,EAAE,IAAI;EACf,OAAO,EAAE,IAAI;EACb,UAAU,EAAE,IAAI;EAChB,qBAAqB,EAAE,IAAI;EAC3B,MAAM,EAAE,IAAI;EACZ,SAAS,EAAE,IAAI;EACf,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,IAAI;EACb,YAAY,EAAE,IAAI;EAClB,eAAe,EAAE,IAAI;EACrB,oBAAoB,EAAE,IAAI;EAC1B,QAAQ,EAAE,IAAI;EACd,WAAW,EAAE,IAAI;EACjB,WAAW,EAAE,IAAI;EACjB,uBAAuB,EAAE,IAAI;EAC7B,iBAAiB,EAAE,KAAK;EACxB,gBAAgB,EAAE,KAAK;EACvB,WAAW,EAAE,IAAI;EACjB,yBAAyB,EAAE,CAAC;EAC5B,qBAAqB,EAAE,CAAC;EACxB,uBAAuB,EAAE,CAAC;EAC1B,cAAc,EAAE,IAAI;EACpB,YAAY,EAAE,IAAI;EAClB,UAAU,EAAE,IAAI;EAChB,gBAAgB,EAAE,IAAI;EACtB,cAAc,EAAE,IAAI;EACpB,qBAAqB,EAAE,IAAI;EAC3B,iBAAiB,EAAE,IAAI;EACvB,wBAAwB,EAAE,IAAI;EAC9B,6BAA6B,EAAE,IAAI;EACnC,0BAA0B,EAAE,IAAI;EAChC,uBAAuB,EAAE,IAAI;EAC7B,eAAe,EAAE,IAAI;EACrB,sBAAsB,EAAE,IAAI;EAC5B,2BAA2B,EAAE,IAAI;EACjC,mBAAmB,EAAE,IAAI;EACzB,qBAAqB,EAAE,IAAI;EAC3B,0BAA0B,EAAE,IAAI;EAChC,wBAAwB,EAAE,IAAI;CAC/B;;SCvIe,cAAc,CAAC,QAAgB;EAC7C,IAAI,iBAAiB,CAAC;EACtB,IAAI,QAAQ,GAAG,EAAE,EAAE;IACjB,iBAAiB,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;IAC/C,IAAI,QAAQ,GAAG,CAAC,GAAG,CAAC,EAAE;MACpB,iBAAiB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;KAC9D;GACF;OAAM;IACL,iBAAiB,GAAG,GAAG,QAAQ,GAAG,EAAE,GAAG,CAAC;GACzC;EACD,OAAO,iBAAiB,CAAC;AAC3B,CAAC;SAEe,YAAY,CAAC,MAAc;EACzC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;AAC1C,CAAC;SAEe,YAAY,CAAC,MAAc;EACzC,OAAO,GAAG,MAAM,GAAG,CAAC;AACtB,CAAC;MAEY,YAAY,GAAgB;EACvC,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,2BAA2B,EAAE;EACtI,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,2BAA2B,EAAE;EAC3I,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,2BAA2B,EAAE;EACvI,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,2BAA2B,EAAE;EACtI,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,2BAA2B,EAAE;EACtI,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,2BAA2B,EAAE;EAChI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,2BAA2B,EAAE;EAClJ,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,2BAA2B,EAAE;EAChI,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,uBAAuB,EAAE;EAC5H,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,yBAAyB,EAAE;EAC9H,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,yBAAyB,EAAE;EACpI;MAEW,wBAAwB,GAA6B;EAChE,EAAE,QAAQ,EAAE,4BAA4B,EAAE,wBAAwB,EAAE,UAAU,EAAE,+BAA+B,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,2BAA2B,EAAE;EAC/K,EAAE,QAAQ,EAAE,QAAQ,EAAE,wBAAwB,EAAE,QAAQ,EAAE,+BAA+B,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,yBAAyB,EAAE;EACtJ,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE,WAAW,EAAE,+BAA+B,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,yBAAyB,EAAE;EAC5J;MAEW,sBAAsB,GAA2B;EAC5D,EAAE,QAAQ,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,EAAE,6BAA6B,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,2BAA2B,EAAE;EAChK,EAAE,QAAQ,EAAE,QAAQ,EAAE,sBAAsB,EAAE,QAAQ,EAAE,6BAA6B,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,yBAAyB,EAAE;EAClJ,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE,WAAW,EAAE,6BAA6B,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,yBAAyB,EAAE;EACxJ;SAEc,2BAA2B;EACzC,IAAI,aAAa,GAAG,KAAK,CAAC;EAC1B,IAAI,YAAY,GAAG,EAAE,CAAC;EACtB,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE;IACjC,MAAM,gBAAgB,GAAa,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,aAAa,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;IACjJ,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;MAC/B,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3B,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;UAC7B,IAAI,MAAM,CAAC,mBAAmB,EAAE;YAC9B,YAAY,GAAG,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;WAC1I;eAAM;YACL,YAAY,GAAG,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;WACvG;SACF;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE;UACrC,YAAY,GAAG;YACb,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI;cACzB,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE;gBAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,eAAe,CAAC,CAAC;gBAC/F,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,aAAa,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,aAAa,CAAC,QAAQ,EAAE;kBAC9G,OAAO,IAAI,CAAC;iBACb;eACF;cACD,OAAO,KAAK,CAAC;aACd,CAAC;WACH,CAAC;SACH;OACF;WAAM;QACL,IAAI,CAAC,aAAa,EAAE;UAClB,aAAa,GAAG,IAAI,CAAC;SACtB;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;UAC7B,IAAI,MAAM,CAAC,mBAAmB,EAAE;YAC9B,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;WACzI;eAAM;YACL,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;WACtG;SACF;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE;UACrC,IAAI,QAAgB,CAAC;UACrB,IAAI,QAAgB,CAAC;UACrB,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE;YAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,eAAe,CAAC,CAAC;YAC/F,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAC,QAAQ,GAAG,QAAQ,EAAE;cACxD,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;aACnC;YACD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAC,QAAQ,GAAG,QAAQ,EAAE;cACxD,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;aACnC;WACF;UACD,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC;SAChI;OACF;KACF;GACF;EAED,MAAM,WAAW,GAAG,aAAa,GAAG,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC;EAC/D,OAAO,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC;AAChK,CAAC;SAEe,uCAAuC;EACrD,IAAI,aAAa,GAAG,KAAK,CAAC;EAC1B,IAAI,wBAAwB,GAAG,EAAE,CAAC;EAClC,KAAK,MAAM,MAAM,IAAI,wBAAwB,EAAE;IAC7C,MAAM,gBAAgB,GAAa,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,aAAa,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;IAEjJ,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;MAC/B,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE;QACvC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;UAC7B,IAAI,MAAM,CAAC,+BAA+B,EAAE;YAC1C,wBAAwB,GAAG;cACzB,GAAG,wBAAwB,CAAC,MAAM,CAAC,gBAAgB,IACjD,gBAAgB,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAAC,wBAAwB,IAAI,gBAAgB,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CACxI;aACF,CAAC;WACH;eAAM;YACL,wBAAwB,GAAG,CAAC,GAAG,wBAAwB,CAAC,MAAM,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;WACnK;SACF;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE;UACrC,wBAAwB,GAAG;YACzB,GAAG,wBAAwB,CAAC,MAAM,CAAC,gBAAgB;cACjD,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE;gBAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,eAAe,CAAC,CAAC;gBAC/F,IAAI,gBAAgB,CAAC,MAAM,CAAC,wBAAwB,CAAC,IAAI,aAAa,CAAC,QAAQ,IAAI,gBAAgB,CAAC,MAAM,CAAC,wBAAwB,CAAC,IAAI,aAAa,CAAC,QAAQ,EAAE;kBAC9J,OAAO,IAAI,CAAC;iBACb;eACF;cACD,OAAO,KAAK,CAAC;aACd,CAAC;WACH,CAAC;SACH;OACF;WAAM;QACL,IAAI,CAAC,aAAa,EAAE;UAClB,aAAa,GAAG,IAAI,CAAC;SACtB;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;UAC7B,IAAI,MAAM,CAAC,+BAA+B,EAAE;YAC1C,wBAAwB,GAAG;cACzB,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,IAChD,gBAAgB,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAAC,wBAAwB,IAAI,gBAAgB,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CACxI;aACF,CAAC;WACH;eAAM;YACL,wBAAwB,GAAG,CAAC,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;WAClK;SACF;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE;UACrC,IAAI,QAAgB,CAAC;UACrB,IAAI,QAAgB,CAAC;UACrB,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE;YAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,eAAe,CAAC,CAAC;YAC/F,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAC,QAAQ,GAAG,QAAQ,EAAE;cACxD,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;aACnC;YACD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAC,QAAQ,GAAG,QAAQ,EAAE;cACxD,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;aACnC;WACF;UACD,wBAAwB,GAAG;YACzB,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAC/B,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,CAAC,wBAAwB,CAAC,IAAI,QAAQ,IAAI,gBAAgB,CAAC,MAAM,CAAC,wBAAwB,CAAC,IAAI,QAAQ,CACnJ;WACF,CAAC;SACH;OACF;KACF;GACF;EACD,MAAM,uBAAuB,GAAG,aAAa,GAAG,wBAAwB,GAAG,KAAK,CAAC,iBAAiB,CAAC;EAEnG,OAAO,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;MAC7B,uBAAuB,CAAC,MAAM,CAAC,wBAAwB,IAAI,wBAAwB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;MACjJ,uBAAuB,CAAC;AAC9B,CAAC;SAEe,qCAAqC;EACnD,IAAI,aAAa,GAAG,KAAK,CAAC;EAC1B,IAAI,sBAAsB,GAAG,EAAE,CAAC;EAChC,KAAK,MAAM,MAAM,IAAI,sBAAsB,EAAE;IAC3C,MAAM,gBAAgB,GAAa,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,aAAa,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;IAEjJ,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;MAC/B,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE;QACrC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;UAC7B,IAAI,MAAM,CAAC,6BAA6B,EAAE;YACxC,sBAAsB,GAAG;cACvB,GAAG,sBAAsB,CAAC,MAAM,CAAC,gBAAgB,IAC/C,gBAAgB,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,wBAAwB,IAAI,gBAAgB,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CACtI;aACF,CAAC;WACH;eAAM;YACL,sBAAsB,GAAG,CAAC,GAAG,sBAAsB,CAAC,MAAM,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;WAC7J;SACF;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE;UACrC,sBAAsB,GAAG;YACvB,GAAG,sBAAsB,CAAC,MAAM,CAAC,gBAAgB;cAC/C,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE;gBAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,eAAe,CAAC,CAAC;gBAC/F,IAAI,gBAAgB,CAAC,MAAM,CAAC,sBAAsB,CAAC,IAAI,aAAa,CAAC,QAAQ,IAAI,gBAAgB,CAAC,MAAM,CAAC,sBAAsB,CAAC,IAAI,aAAa,CAAC,QAAQ,EAAE;kBAC1J,OAAO,IAAI,CAAC;iBACb;eACF;cACD,OAAO,KAAK,CAAC;aACd,CAAC;WACH,CAAC;SACH;OACF;WAAM;QACL,IAAI,CAAC,aAAa,EAAE;UAClB,aAAa,GAAG,IAAI,CAAC;SACtB;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;UAC7B,IAAI,MAAM,CAAC,6BAA6B,EAAE;YACxC,sBAAsB,GAAG;cACvB,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,IAChD,gBAAgB,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,wBAAwB,IAAI,gBAAgB,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CACtI;aACF,CAAC;WACH;eAAM;YACL,sBAAsB,GAAG,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;WAC5J;SACF;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE;UACrC,IAAI,QAAgB,CAAC;UACrB,IAAI,QAAgB,CAAC;UACrB,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE;YAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,eAAe,CAAC,CAAC;YAC/F,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAC,QAAQ,GAAG,QAAQ,EAAE;cACxD,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;aACnC;YACD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAC,QAAQ,GAAG,QAAQ,EAAE;cACxD,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;aACnC;WACF;UACD,sBAAsB,GAAG;YACvB,GAAG,KAAK,CAAC,eAAe,CAAC,MAAM,CAC7B,cAAc,IAAI,cAAc,CAAC,MAAM,CAAC,sBAAsB,CAAC,IAAI,QAAQ,IAAI,cAAc,CAAC,MAAM,CAAC,sBAAsB,CAAC,IAAI,QAAQ,CACzI;WACF,CAAC;SACH;OACF;KACF;GACF;EACD,MAAM,qBAAqB,GAAG,aAAa,GAAG,sBAAsB,GAAG,KAAK,CAAC,eAAe,CAAC;EAC7F,OAAO,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;MAC7B,qBAAqB,CAAC,MAAM,CAAC,qBAAqB,IAAI,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;MACzI,qBAAqB,CAAC;AAC5B;;;;;;;;;;;;;;;","names":["getRenderingRef","forceUpdate"],"sources":["./node_modules/@stencil/store/dist/index.mjs","./src/store/store.ts","./src/utils/utils.ts"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState !== null && unwrappedState !== void 0 ? unwrappedState : {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n const reset = () => {\n var _a;\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries((_a = unwrap(defaultState)) !== null && _a !== void 0 ? _a : {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const unSet = on('set', (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n });\n // We need to unwrap the defaultState because it might be a function.\n // Otherwise we might not be sending the right reset value.\n const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));\n return () => {\n unSet();\n unReset();\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","import { createStore } from '@stencil/store';\nimport { LatLngBounds } from 'leaflet';\nimport {\n Accessibilities,\n accessibilitiesLevel,\n Difficulties,\n Durations,\n InformationDesks,\n Labels,\n Pois,\n PoiTypes,\n Practices,\n Routes,\n SensitiveAreas,\n Sources,\n Themes,\n Cities,\n Trek,\n Treks,\n Lengths,\n Elevations,\n Districts,\n TouristicContents,\n TouristicContentCategories,\n TouristicContent,\n TouristicEvents,\n TouristicEventTypes,\n TouristicEvent,\n Ratings,\n RatingsScale,\n} from 'types/types';\n\nconst { state, onChange, reset } = createStore<{\n mode: string;\n api: string;\n languages: string[];\n language: string;\n treks: Treks;\n treksWithinBounds: Treks;\n currentMapBounds: LatLngBounds;\n currentTreks: Treks;\n difficulties: Difficulties;\n routes: Routes;\n practices: Practices;\n themes: Themes;\n cities: Cities;\n durations: Durations;\n lengths: Lengths;\n elevations: Elevations;\n labels: Labels;\n districts: Districts;\n sources: Sources;\n ratings: Ratings;\n ratingsScale: RatingsScale;\n accessibilities: Accessibilities;\n accessibilitiesLevel: accessibilitiesLevel;\n poiTypes: PoiTypes;\n currentTrek: Trek;\n currentSensitiveAreas: SensitiveAreas;\n currentPois: Pois;\n currentInformationDesks: InformationDesks;\n treksNetworkError: boolean;\n trekNetworkError: boolean;\n searchValue: string;\n selectedActivitiesFilters: number;\n selectedThemesFilters: number;\n selectedLocationFilters: number;\n selectedTrekId: number;\n parentTrekId: number;\n parentTrek: Trek;\n currentTrekSteps: Treks;\n selectedStepId: number;\n trekTouristicContents: TouristicContents;\n touristicContents: TouristicContents;\n currentTouristicContents: TouristicContents;\n touristicContentsWithinBounds: TouristicContents;\n touristicContentCategories: TouristicContentCategories;\n currentTouristicContent: TouristicContent;\n touristicEvents: TouristicEvents;\n currentTouristicEvents: TouristicEvents;\n touristicEventsWithinBounds: TouristicEvents;\n touristicEventTypes: TouristicEventTypes;\n currentTouristicEvent: TouristicEvent;\n selectedTouristicContentId: number;\n selectedTouristicEventId: number;\n}>({\n mode: null,\n api: null,\n languages: null,\n language: null,\n treks: null,\n currentTreks: null,\n treksWithinBounds: null,\n currentMapBounds: null,\n difficulties: null,\n routes: null,\n practices: null,\n themes: null,\n cities: null,\n durations: null,\n lengths: null,\n elevations: null,\n currentSensitiveAreas: null,\n labels: null,\n districts: null,\n sources: null,\n ratings: null,\n ratingsScale: null,\n accessibilities: null,\n accessibilitiesLevel: null,\n poiTypes: null,\n currentTrek: null,\n currentPois: null,\n currentInformationDesks: null,\n treksNetworkError: false,\n trekNetworkError: false,\n searchValue: null,\n selectedActivitiesFilters: 0,\n selectedThemesFilters: 0,\n selectedLocationFilters: 0,\n selectedTrekId: null,\n parentTrekId: null,\n parentTrek: null,\n currentTrekSteps: null,\n selectedStepId: null,\n trekTouristicContents: null,\n touristicContents: null,\n currentTouristicContents: null,\n touristicContentsWithinBounds: null,\n touristicContentCategories: null,\n currentTouristicContent: null,\n touristicEvents: null,\n currentTouristicEvents: null,\n touristicEventsWithinBounds: null,\n touristicEventTypes: null,\n currentTouristicEvent: null,\n selectedTouristicContentId: null,\n selectedTouristicEventId: null,\n});\n\nexport { onChange, reset };\n\nexport default state;\n","import state from 'store/store';\nimport { TouristicContents, TouristicContentsFilters, TouristicEvents, TouristicEventsFilters, TrekFilters, Treks } from 'types/types';\n\nexport function formatDuration(duration: number) {\n let formattedDuration;\n if (duration < 24) {\n formattedDuration = `${Math.floor(duration)}h`;\n if (duration % 1 > 0) {\n formattedDuration += `${Math.round(60 * (duration % 1))}min`;\n }\n } else {\n formattedDuration = `${duration / 24}j`;\n }\n return formattedDuration;\n}\n\nexport function formatLength(length: number) {\n return `${Math.round(length / 1000)}km`;\n}\n\nexport function formatAscent(ascent: number) {\n return `${ascent}m`;\n}\n\nexport const treksFilters: TrekFilters = [\n { property: 'practices', trekProperty: 'practice', trekPropertyIsArray: false, type: 'include', segment: 'selectedActivitiesFilters' },\n { property: 'difficulties', trekProperty: 'difficulty', trekPropertyIsArray: false, type: 'include', segment: 'selectedActivitiesFilters' },\n { property: 'durations', trekProperty: 'duration', trekPropertyIsArray: false, type: 'interval', segment: 'selectedActivitiesFilters' },\n { property: 'lengths', trekProperty: 'length_2d', trekPropertyIsArray: false, type: 'interval', segment: 'selectedActivitiesFilters' },\n { property: 'elevations', trekProperty: 'ascent', trekPropertyIsArray: false, type: 'interval', segment: 'selectedActivitiesFilters' },\n { property: 'routes', trekProperty: 'route', trekPropertyIsArray: false, type: 'include', segment: 'selectedActivitiesFilters' },\n { property: 'accessibilities', trekProperty: 'accessibilities', trekPropertyIsArray: true, type: 'include', segment: 'selectedActivitiesFilters' },\n { property: 'labels', trekProperty: 'labels', trekPropertyIsArray: true, type: 'include', segment: 'selectedActivitiesFilters' },\n { property: 'themes', trekProperty: 'themes', trekPropertyIsArray: true, type: 'include', segment: 'selectedThemesFilters' },\n { property: 'cities', trekProperty: 'cities', trekPropertyIsArray: true, type: 'include', segment: 'selectedLocationFilters' },\n { property: 'districts', trekProperty: 'districts', trekPropertyIsArray: true, type: 'include', segment: 'selectedLocationFilters' },\n];\n\nexport const touristicContentsFilters: TouristicContentsFilters = [\n { property: 'touristicContentCategories', touristicContentProperty: 'category', touristicContentPropertyIsArray: false, type: 'include', segment: 'selectedActivitiesFilters' },\n { property: 'cities', touristicContentProperty: 'cities', touristicContentPropertyIsArray: true, type: 'include', segment: 'selectedLocationFilters' },\n { property: 'districts', touristicContentProperty: 'districts', touristicContentPropertyIsArray: true, type: 'include', segment: 'selectedLocationFilters' },\n];\n\nexport const touristicEventsFilters: TouristicEventsFilters = [\n { property: 'touristicEventTypes', touristicEventProperty: 'type', touristicEventPropertyIsArray: false, type: 'include', segment: 'selectedActivitiesFilters' },\n { property: 'cities', touristicEventProperty: 'cities', touristicEventPropertyIsArray: true, type: 'include', segment: 'selectedLocationFilters' },\n { property: 'districts', touristicEventProperty: 'districts', touristicEventPropertyIsArray: true, type: 'include', segment: 'selectedLocationFilters' },\n];\n\nexport function handleTreksFiltersAndSearch(): Treks {\n let isUsingFilter = false;\n let filtersTreks = [];\n for (const filter of treksFilters) {\n const currentFiltersId: number[] = state[filter.property].filter(currentFilter => currentFilter.selected).map(currentFilter => currentFilter.id);\n if (currentFiltersId.length > 0) {\n if (filtersTreks.length > 0) {\n if (filter.type === 'include') {\n if (filter.trekPropertyIsArray) {\n filtersTreks = [...filtersTreks.filter(trek => trek[filter.trekProperty].some(trekProperty => currentFiltersId.includes(trekProperty)))];\n } else {\n filtersTreks = [...filtersTreks.filter(trek => currentFiltersId.includes(trek[filter.trekProperty]))];\n }\n } else if (filter.type === 'interval') {\n filtersTreks = [\n ...filtersTreks.filter(trek => {\n for (const currentFilterId of currentFiltersId) {\n const currentFilter = state[filter.property].find(property => property.id === currentFilterId);\n if (trek[filter.trekProperty] >= currentFilter.minValue && trek[filter.trekProperty] <= currentFilter.maxValue) {\n return true;\n }\n }\n return false;\n }),\n ];\n }\n } else {\n if (!isUsingFilter) {\n isUsingFilter = true;\n }\n if (filter.type === 'include') {\n if (filter.trekPropertyIsArray) {\n filtersTreks = [...state.treks.filter(trek => trek[filter.trekProperty].some(trekProperty => currentFiltersId.includes(trekProperty)))];\n } else {\n filtersTreks = [...state.treks.filter(trek => currentFiltersId.includes(trek[filter.trekProperty]))];\n }\n } else if (filter.type === 'interval') {\n let minValue: number;\n let maxValue: number;\n for (const currentFilterId of currentFiltersId) {\n const currentFilter = state[filter.property].find(property => property.id === currentFilterId);\n if (isNaN(minValue) || currentFilter.minValue < minValue) {\n minValue = currentFilter.minValue;\n }\n if (isNaN(maxValue) || currentFilter.maxValue > maxValue) {\n maxValue = currentFilter.maxValue;\n }\n }\n filtersTreks = [...state.treks.filter(trek => trek[filter.trekProperty] >= minValue && trek[filter.trekProperty] <= maxValue)];\n }\n }\n }\n }\n\n const searchTreks = isUsingFilter ? filtersTreks : state.treks;\n return Boolean(state.searchValue) ? searchTreks.filter(currentTrek => currentTrek.name.toLowerCase().includes(state.searchValue.toLowerCase())) : searchTreks;\n}\n\nexport function handleTouristicContentsFiltersAndSearch(): TouristicContents {\n let isUsingFilter = false;\n let filtersTouristicContents = [];\n for (const filter of touristicContentsFilters) {\n const currentFiltersId: number[] = state[filter.property].filter(currentFilter => currentFilter.selected).map(currentFilter => currentFilter.id);\n\n if (currentFiltersId.length > 0) {\n if (filtersTouristicContents.length > 0) {\n if (filter.type === 'include') {\n if (filter.touristicContentPropertyIsArray) {\n filtersTouristicContents = [\n ...filtersTouristicContents.filter(touristicContent =>\n touristicContent[filter.touristicContentProperty].some(touristicContentProperty => currentFiltersId.includes(touristicContentProperty)),\n ),\n ];\n } else {\n filtersTouristicContents = [...filtersTouristicContents.filter(touristicContent => currentFiltersId.includes(touristicContent[filter.touristicContentProperty]))];\n }\n } else if (filter.type === 'interval') {\n filtersTouristicContents = [\n ...filtersTouristicContents.filter(touristicContent => {\n for (const currentFilterId of currentFiltersId) {\n const currentFilter = state[filter.property].find(property => property.id === currentFilterId);\n if (touristicContent[filter.touristicContentProperty] >= currentFilter.minValue && touristicContent[filter.touristicContentProperty] <= currentFilter.maxValue) {\n return true;\n }\n }\n return false;\n }),\n ];\n }\n } else {\n if (!isUsingFilter) {\n isUsingFilter = true;\n }\n if (filter.type === 'include') {\n if (filter.touristicContentPropertyIsArray) {\n filtersTouristicContents = [\n ...state.touristicContents.filter(touristicContent =>\n touristicContent[filter.touristicContentProperty].some(touristicContentProperty => currentFiltersId.includes(touristicContentProperty)),\n ),\n ];\n } else {\n filtersTouristicContents = [...state.touristicContents.filter(touristicContent => currentFiltersId.includes(touristicContent[filter.touristicContentProperty]))];\n }\n } else if (filter.type === 'interval') {\n let minValue: number;\n let maxValue: number;\n for (const currentFilterId of currentFiltersId) {\n const currentFilter = state[filter.property].find(property => property.id === currentFilterId);\n if (isNaN(minValue) || currentFilter.minValue < minValue) {\n minValue = currentFilter.minValue;\n }\n if (isNaN(maxValue) || currentFilter.maxValue > maxValue) {\n maxValue = currentFilter.maxValue;\n }\n }\n filtersTouristicContents = [\n ...state.touristicContents.filter(\n touristicContent => touristicContent[filter.touristicContentProperty] >= minValue && touristicContent[filter.touristicContentProperty] <= maxValue,\n ),\n ];\n }\n }\n }\n }\n const searchTouristicContents = isUsingFilter ? filtersTouristicContents : state.touristicContents;\n\n return Boolean(state.searchValue)\n ? searchTouristicContents.filter(currentTouristicContents => currentTouristicContents.name.toLowerCase().includes(state.searchValue.toLowerCase()))\n : searchTouristicContents;\n}\n\nexport function handleTouristicEventsFiltersAndSearch(): TouristicEvents {\n let isUsingFilter = false;\n let filtersTouristicEvents = [];\n for (const filter of touristicEventsFilters) {\n const currentFiltersId: number[] = state[filter.property].filter(currentFilter => currentFilter.selected).map(currentFilter => currentFilter.id);\n\n if (currentFiltersId.length > 0) {\n if (filtersTouristicEvents.length > 0) {\n if (filter.type === 'include') {\n if (filter.touristicEventPropertyIsArray) {\n filtersTouristicEvents = [\n ...filtersTouristicEvents.filter(touristicContent =>\n touristicContent[filter.touristicEventProperty].some(touristicContentProperty => currentFiltersId.includes(touristicContentProperty)),\n ),\n ];\n } else {\n filtersTouristicEvents = [...filtersTouristicEvents.filter(touristicContent => currentFiltersId.includes(touristicContent[filter.touristicEventProperty]))];\n }\n } else if (filter.type === 'interval') {\n filtersTouristicEvents = [\n ...filtersTouristicEvents.filter(touristicContent => {\n for (const currentFilterId of currentFiltersId) {\n const currentFilter = state[filter.property].find(property => property.id === currentFilterId);\n if (touristicContent[filter.touristicEventProperty] >= currentFilter.minValue && touristicContent[filter.touristicEventProperty] <= currentFilter.maxValue) {\n return true;\n }\n }\n return false;\n }),\n ];\n }\n } else {\n if (!isUsingFilter) {\n isUsingFilter = true;\n }\n if (filter.type === 'include') {\n if (filter.touristicEventPropertyIsArray) {\n filtersTouristicEvents = [\n ...state.touristicContents.filter(touristicContent =>\n touristicContent[filter.touristicEventProperty].some(touristicContentProperty => currentFiltersId.includes(touristicContentProperty)),\n ),\n ];\n } else {\n filtersTouristicEvents = [...state.touristicEvents.filter(touristicContent => currentFiltersId.includes(touristicContent[filter.touristicEventProperty]))];\n }\n } else if (filter.type === 'interval') {\n let minValue: number;\n let maxValue: number;\n for (const currentFilterId of currentFiltersId) {\n const currentFilter = state[filter.property].find(property => property.id === currentFilterId);\n if (isNaN(minValue) || currentFilter.minValue < minValue) {\n minValue = currentFilter.minValue;\n }\n if (isNaN(maxValue) || currentFilter.maxValue > maxValue) {\n maxValue = currentFilter.maxValue;\n }\n }\n filtersTouristicEvents = [\n ...state.touristicEvents.filter(\n touristicEvent => touristicEvent[filter.touristicEventProperty] >= minValue && touristicEvent[filter.touristicEventProperty] <= maxValue,\n ),\n ];\n }\n }\n }\n }\n const searchTouristicEvents = isUsingFilter ? filtersTouristicEvents : state.touristicEvents;\n return Boolean(state.searchValue)\n ? searchTouristicEvents.filter(currentTouristicEvent => currentTouristicEvent.name.toLowerCase().includes(state.searchValue.toLowerCase()))\n : searchTouristicEvents;\n}\n"],"version":3}
|
|
@@ -358,7 +358,7 @@ export class GrwTrekDetail {
|
|
|
358
358
|
.map(attachment => (h("div", { class: "swiper-slide" }, h("img", { class: "image", src: attachment.url, loading: "lazy", onClick: () => this.handleFullscreen() }))))), h("div", { class: "swiper-pagination", ref: el => (this.paginationElImagesRef = el) }), h("div", { class: "swiper-button-prev", ref: el => (this.prevElImagesRef = el) }), h("div", { class: "swiper-button-next", ref: el => (this.nextElImagesRef = el) }))), h("div", { class: "name" }, this.currentTrek.name), this.themes.length > 0 && (h("div", { class: "themes-container" }, this.themes.map(theme => (h("div", { class: "theme" }, theme.label))))), h("div", { class: "sub-container" }, h("div", { class: "icons-labels-container" }, h("div", { class: "row" }, h("div", { class: "icon-label difficulty" }, ((_a = this.difficulty) === null || _a === void 0 ? void 0 : _a.pictogram) && h("img", { src: this.difficulty.pictogram }), (_b = this.difficulty) === null || _b === void 0 ? void 0 :
|
|
359
359
|
_b.label), h("div", { class: "icon-label duration" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "timelapse"), formatDuration((_c = this.currentTrek) === null || _c === void 0 ? void 0 : _c.duration)), h("div", { class: "icon-label route" }, ((_d = this.route) === null || _d === void 0 ? void 0 : _d.pictogram) && h("img", { src: this.route.pictogram }), (_e = this.route) === null || _e === void 0 ? void 0 :
|
|
360
360
|
_e.route)), h("div", { class: "row" }, h("div", { class: "icon-label length" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "open_in_full"), formatLength(this.currentTrek.length_2d)), h("div", { class: "icon-label ascent" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "moving"), formatAscent(this.currentTrek.ascent)), h("div", { class: "icon-label practice" }, ((_f = this.practice) === null || _f === void 0 ? void 0 : _f.pictogram) && h("img", { src: this.practice.pictogram }), (_g = this.practice) === null || _g === void 0 ? void 0 :
|
|
361
|
-
_g.name)), this.currentTrek.ratings.map(trekRating => (h("div", { class: "row" }, state.ratings.find(rating => rating.id === trekRating).name))), this.currentTrek.ratings_description && this.currentTrek.ratings_description !== '' && h("div", { class: "row" }, this.currentTrek.ratings_description))), h("div", { class: "divider" }), h("div", { class: "downloads-container" }, h("div", { class: "download-title" }, translate[state.language].downloads), h("div", { class: "links-container" }, h("a", { href: `${this.currentTrek.gpx}`, target: "_blank", rel: "noopener noreferrer" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "download"), "GPX"), h("a", { href: `${this.currentTrek.kml}`, target: "_blank", rel: "noopener noreferrer" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "download"), "KML"), h("a", { href: `${this.currentTrek.pdf}`, target: "_blank", rel: "noopener noreferrer" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "download"), "PDF"))), h("div", { class: "divider" }), this.currentTrek.description_teaser && h("div", { class: "description-teaser", innerHTML: this.currentTrek.description_teaser }), this.currentTrek.ambiance && h("div", { class: "ambiance", innerHTML: this.currentTrek.ambiance }), state.parentTrekId && state.parentTrek && this.currentTrek.id !== state.parentTrekId && (h("div", null, h("div", { class: "divider" }), h("div", { class: "parent-trek-container" }, h("button", { class: "parent-trek-title", onClick: () => this.parentTrekPress.emit(state.parentTrekId) }, h("div", null, "<"), state.parentTrek.name)))), state.currentTrekSteps && (h("div", { class: "step-container", ref: el => (this.stepsRef = el) }, h("div", { class: "step-title" }, `${state.currentTrekSteps.length} ${translate[state.language].steps}`), h("div", { class: "swiper swiper-step", ref: el => (this.swiperStepRef = el) }, h("div", { class: "swiper-wrapper" }, state.currentTrekSteps &&
|
|
361
|
+
_g.name)), this.currentTrek.ratings.map(trekRating => (h("div", { class: "row" }, `${state.ratingsScale.find(ratingScale => ratingScale.id === state.ratings.find(rating => rating.id === trekRating).scale).name} : ${state.ratings.find(rating => rating.id === trekRating).name}`))), this.currentTrek.ratings_description && this.currentTrek.ratings_description !== '' && h("div", { class: "row" }, this.currentTrek.ratings_description))), h("div", { class: "divider" }), h("div", { class: "downloads-container" }, h("div", { class: "download-title" }, translate[state.language].downloads), h("div", { class: "links-container" }, h("a", { href: `${this.currentTrek.gpx}`, target: "_blank", rel: "noopener noreferrer" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "download"), "GPX"), h("a", { href: `${this.currentTrek.kml}`, target: "_blank", rel: "noopener noreferrer" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "download"), "KML"), h("a", { href: `${this.currentTrek.pdf}`, target: "_blank", rel: "noopener noreferrer" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "download"), "PDF"))), h("div", { class: "divider" }), this.currentTrek.description_teaser && h("div", { class: "description-teaser", innerHTML: this.currentTrek.description_teaser }), this.currentTrek.ambiance && h("div", { class: "ambiance", innerHTML: this.currentTrek.ambiance }), state.parentTrekId && state.parentTrek && this.currentTrek.id !== state.parentTrekId && (h("div", null, h("div", { class: "divider" }), h("div", { class: "parent-trek-container" }, h("button", { class: "parent-trek-title", onClick: () => this.parentTrekPress.emit(state.parentTrekId) }, h("div", null, "<"), state.parentTrek.name)))), state.currentTrekSteps && (h("div", { class: "step-container", ref: el => (this.stepsRef = el) }, h("div", { class: "step-title" }, `${state.currentTrekSteps.length} ${translate[state.language].steps}`), h("div", { class: "swiper swiper-step", ref: el => (this.swiperStepRef = el) }, h("div", { class: "swiper-wrapper" }, state.currentTrekSteps &&
|
|
362
362
|
state.currentTrekSteps.map(trek => {
|
|
363
363
|
return (h("div", { class: "swiper-slide" }, h("grw-trek-card", { "reset-store-on-disconnected": "false", key: `trek-${trek.id}`, trek: trek, "is-large-view": false, "is-step": true, "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 })));
|
|
364
364
|
}))))), h("div", { class: "divider" }), this.currentTrek.description && (h("div", { class: "description-container", ref: el => (this.descriptionRef = el) }, h("div", { class: "description-title" }, translate[state.language].description), h("div", { class: "description", innerHTML: this.currentTrek.description }))), this.currentTrek.departure && (h("div", { class: "departure-container" }, h("div", { class: "departure-title" }, translate[state.language].departure, " :\u00A0"), h("div", { innerHTML: this.currentTrek.departure }))), this.currentTrek.arrival && (h("div", { class: "arrival-container" }, h("div", { class: "arrival-title" }, translate[state.language].arrival, " :\u00A0"), h("div", { innerHTML: this.currentTrek.arrival }))), this.currentTrek.cities && this.currentTrek.cities.length > 0 && (h("div", { class: "cities-container" }, h("div", { class: "cities-title" }, translate[state.language].crossedCities, " :\u00A0"), h("div", { innerHTML: this.cities.join(', ') }))), this.weather && this.currentTrek.departure_city && (h("div", { class: "weather-container" }, h("iframe", { height: "150", frameborder: "0", src: `https://meteofrance.com/widget/prevision/${this.currentTrek.departure_city}0#${this.colorPrimaryApp}` }))), this.currentTrek.access && (h("div", null, h("div", { class: "divider" }), h("div", { class: "access-container" }, h("div", { class: "access-title" }, translate[state.language].roadAccess), h("div", { class: "access", innerHTML: this.currentTrek.access })))), this.currentTrek.public_transport && (h("div", null, h("div", { class: "divider" }), h("div", { class: "public-transport-container" }, h("div", { class: "public-transport-title" }, translate[state.language].transport), h("div", { class: "public-transport", innerHTML: this.currentTrek.public_transport })))), (this.currentTrek.advice || this.labels.length > 0) && (h("div", null, h("div", { class: "divider" }), h("div", { class: "advice-container", ref: el => (this.recommendationRef = el) }, h("div", { class: "advice-title" }, translate[state.language].recommendations), this.currentTrek.advice && (h("div", { class: "current-advice-container" }, h("span", { translate: false, class: "material-symbols material-symbols-outlined" }, "warning"), h("div", { class: "advice", innerHTML: this.currentTrek.advice }))), this.labels.map(label => (h("div", { class: "label-container" }, h("div", { class: "label-sub-container" }, label.pictogram && h("img", { src: label.pictogram }), h("div", { class: "label-name", innerHTML: label.name })), h("div", { class: "label-advice", innerHTML: label.advice }))))))), this.currentTrek.advised_parking && (h("div", null, h("div", { class: "divider" }), h("div", { class: "advised-parking-container", ref: el => (this.parkingRef = el) }, h("div", { class: "advised-parking-title" }, translate[state.language].recommendedParking), h("div", { class: "advised-parking", innerHTML: this.currentTrek.advised_parking })))), this.currentTrek.gear && (h("div", null, h("div", { class: "divider" }), h("div", { class: "gear-container" }, h("div", { class: "gear-title" }, translate[state.language].equipments), h("div", { class: "gear", innerHTML: this.currentTrek.gear })))), state.currentSensitiveAreas && state.currentSensitiveAreas.length > 0 && (h("div", null, h("div", { class: "divider" }), h("div", { class: "sensitive-areas-container", ref: el => (this.sensitiveAreaRef = el) }, h("div", { class: "sensitive-areas-title" }, translate[state.language].environmentalSensitiveAreas), state.currentSensitiveAreas.map(sensitiveArea => (h("grw-sensitive-area-detail", { sensitiveArea: sensitiveArea })))))), state.currentInformationDesks &&
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grw-trek-detail.js","sourceRoot":"","sources":["../../../src/components/grw-trek-detail/grw-trek-detail.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Host, h, Prop, State, Event, EventEmitter } from '@stencil/core';\nimport Swiper, { Navigation, Pagination, Keyboard, FreeMode, Mousewheel } from 'swiper';\nimport { translate } from 'i18n/i18n';\nimport state, { onChange, reset } from 'store/store';\nimport { Accessibilities, AccessibilityLevel, Difficulty, Labels, Practice, Route, Sources, Themes, Trek, Option, Options } from 'types/types';\nimport { formatDuration, formatLength, formatAscent } from 'utils/utils';\n\nconst presentation: Option = {\n visible: true,\n width: 120,\n indicator: false,\n};\nconst steps: Option = {\n visible: false,\n width: 80,\n indicator: false,\n};\nconst description: Option = {\n visible: false,\n width: 120,\n indicator: false,\n};\nconst recommendations: Option = {\n visible: false,\n width: 190,\n indicator: false,\n};\nconst sensitiveArea: Option = {\n visible: false,\n width: 160,\n indicator: false,\n};\nconst informationPlaces: Option = {\n visible: false,\n width: 200,\n indicator: false,\n};\nconst pois: Option = {\n visible: false,\n width: 120,\n indicator: false,\n};\nconst touristicContents: Option = {\n visible: false,\n width: 120,\n indicator: false,\n};\nconst touristicEvents: Option = {\n visible: false,\n width: 120,\n indicator: false,\n};\nconst options: Options = {\n presentation,\n steps,\n description,\n recommendations,\n sensitiveArea,\n informationPlaces,\n pois,\n touristicContents,\n touristicEvents,\n};\n\n@Component({\n tag: 'grw-trek-detail',\n styleUrl: 'grw-trek-detail.scss',\n shadow: true,\n})\nexport class GrwTrekDetail {\n swiperImages?: Swiper;\n swiperStep?: Swiper;\n swiperPois?: Swiper;\n swiperInformationDesks?: Swiper;\n swiperTouristicContents?: Swiper;\n swiperTouristicEvents?: Swiper;\n swiperImagesRef?: HTMLDivElement;\n prevElImagesRef?: HTMLDivElement;\n nextElImagesRef?: HTMLDivElement;\n paginationElImagesRef?: HTMLDivElement;\n swiperStepRef?: HTMLDivElement;\n swiperPoisRef?: HTMLDivElement;\n swiperInformationDesksRef?: HTMLDivElement;\n swiperTouristicContentsRef?: HTMLDivElement;\n swiperTouristicEventsRef?: HTMLDivElement;\n trekDetailContainerRef?: HTMLElement;\n presentationRef?: HTMLDivElement;\n descriptionRef?: HTMLDivElement;\n parkingRef?: HTMLDivElement;\n recommendationRef?: HTMLDivElement;\n sensitiveAreaRef?: HTMLDivElement;\n informationDeskRef?: HTMLDivElement;\n poiRef?: HTMLDivElement;\n stepsRef?: HTMLDivElement;\n touristicContentsRef?: HTMLDivElement;\n touristicEventsRef?: HTMLDivElement;\n hasStep?: boolean;\n\n defaultOptions: Options;\n @Event() descriptionIsInViewport: EventEmitter<boolean>;\n @Event() parkingIsInViewport: EventEmitter<boolean>;\n @Event() sensitiveAreaIsInViewport: EventEmitter<boolean>;\n @Event() informationDeskIsInViewport: EventEmitter<boolean>;\n @Event() poiIsInViewport: EventEmitter<boolean>;\n @Event() stepsIsInViewport: EventEmitter<boolean>;\n @Event() touristicContentsIsInViewport: EventEmitter<boolean>;\n @Event() touristicEventsIsInViewport: EventEmitter<boolean>;\n @Event() parentTrekPress: EventEmitter<number>;\n @State() currentTrek: Trek;\n @State() difficulty: Difficulty;\n @State() route: Route;\n @State() practice: Practice;\n @State() themes: Themes;\n @State() labels: Labels;\n @State() sources: Sources;\n @State() accessibilities: Accessibilities;\n @State() accessibilityLevel: AccessibilityLevel;\n @State() displayFullscreen = false;\n @State() cities: string[];\n @State() options: Options;\n @Prop() trek: Trek;\n\n @Prop() colorPrimaryApp = '#6b0030';\n @Prop() colorOnSurface = '#49454e';\n @Prop() colorPrimaryContainer = '#eaddff';\n @Prop() colorOnPrimaryContainer = '#21005e';\n @Prop() colorSecondaryContainer = '#e8def8';\n @Prop() colorOnSecondaryContainer = '#1d192b';\n @Prop() colorSurfaceContainerLow = '#f7f2fa';\n @Prop() colorBackground = '#fef7ff';\n\n @Prop() resetStoreOnDisconnected = true;\n @Prop() weather = false;\n @Prop() isLargeView = false;\n\n componentDidLoad() {\n this.swiperImages = new Swiper(this.swiperImagesRef, {\n modules: [Navigation, Pagination, Keyboard, FreeMode, Mousewheel],\n navigation: {\n prevEl: this.prevElImagesRef,\n nextEl: this.nextElImagesRef,\n },\n pagination: { el: this.paginationElImagesRef },\n allowTouchMove: false,\n keyboard: false,\n });\n this.swiperImagesRef.onfullscreenchange = () => {\n this.displayFullscreen = !this.displayFullscreen;\n this.displayFullscreen ? this.swiperImages.keyboard.enable() : this.swiperImages.keyboard.disable();\n };\n this.swiperStep = new Swiper(this.swiperStepRef, {\n modules: [FreeMode, Mousewheel],\n slidesPerView: 1.5,\n spaceBetween: 20,\n grabCursor: true,\n freeMode: true,\n mousewheel: { forceToAxis: true },\n breakpointsBase: 'container',\n breakpoints: {\n '540': {\n slidesPerView: 2.5,\n },\n },\n });\n this.swiperPois = new Swiper(this.swiperPoisRef, {\n modules: [FreeMode, Mousewheel],\n slidesPerView: 1.5,\n spaceBetween: 20,\n grabCursor: true,\n freeMode: true,\n mousewheel: { forceToAxis: true },\n breakpointsBase: 'container',\n breakpoints: {\n '540': {\n slidesPerView: 2.5,\n },\n },\n });\n this.swiperInformationDesks = new Swiper(this.swiperInformationDesksRef, {\n modules: [FreeMode, Mousewheel],\n slidesPerView: 1.5,\n spaceBetween: 20,\n grabCursor: true,\n freeMode: true,\n mousewheel: { forceToAxis: true },\n breakpointsBase: 'container',\n breakpoints: {\n '540': {\n slidesPerView: 2.5,\n },\n },\n });\n this.swiperTouristicContents = new Swiper(this.swiperTouristicContentsRef, {\n modules: [FreeMode, Mousewheel],\n slidesPerView: 1.5,\n spaceBetween: 20,\n grabCursor: true,\n freeMode: true,\n mousewheel: { forceToAxis: true },\n breakpointsBase: 'container',\n breakpoints: {\n '540': {\n slidesPerView: 2.5,\n },\n },\n });\n this.swiperTouristicEvents = new Swiper(this.swiperTouristicEventsRef, {\n modules: [FreeMode, Mousewheel],\n slidesPerView: 1.5,\n spaceBetween: 20,\n grabCursor: true,\n freeMode: true,\n mousewheel: { forceToAxis: true },\n breakpointsBase: 'container',\n breakpoints: {\n '540': {\n slidesPerView: 2.5,\n },\n },\n });\n if (this.presentationRef) {\n const presentationObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, presentation: { ...this.defaultOptions.presentation, indicator: isIntersecting } };\n }\n });\n presentationObserver.observe(this.presentationRef);\n }\n if (this.stepsRef) {\n const stepsObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.stepsIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, steps: { ...this.defaultOptions.steps, indicator: isIntersecting } };\n }\n });\n stepsObserver.observe(this.stepsRef);\n }\n if (this.descriptionRef) {\n const descriptionObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.descriptionIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, description: { ...this.defaultOptions.description, indicator: isIntersecting } };\n }\n });\n descriptionObserver.observe(this.descriptionRef);\n }\n if (this.recommendationRef) {\n const recommendationsObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, recommendations: { ...this.defaultOptions.recommendations, indicator: isIntersecting } };\n }\n });\n recommendationsObserver.observe(this.recommendationRef);\n }\n if (this.parkingRef) {\n const parkingObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.parkingIsInViewport.emit(isIntersecting);\n });\n parkingObserver.observe(this.parkingRef);\n }\n\n if (this.sensitiveAreaRef) {\n const sensitiveAreaRefObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.sensitiveAreaIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, sensitiveArea: { ...this.defaultOptions.sensitiveArea, indicator: isIntersecting } };\n }\n });\n sensitiveAreaRefObserver.observe(this.sensitiveAreaRef);\n }\n\n if (this.informationDeskRef) {\n const informationDeskObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.informationDeskIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, informationPlaces: { ...this.defaultOptions.informationPlaces, indicator: isIntersecting } };\n }\n });\n informationDeskObserver.observe(this.informationDeskRef);\n }\n\n if (this.poiRef) {\n const poiObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.poiIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, pois: { ...this.defaultOptions.pois, indicator: isIntersecting } };\n }\n });\n poiObserver.observe(this.poiRef);\n }\n if (this.touristicContentsRef) {\n const touristicContentObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.touristicContentsIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, touristicContents: { ...this.defaultOptions.touristicContents, indicator: isIntersecting } };\n }\n });\n touristicContentObserver.observe(this.touristicContentsRef);\n }\n if (this.touristicEventsRef) {\n const touristicEventObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.touristicEventsIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, touristicEvents: { ...this.defaultOptions.touristicEvents, indicator: isIntersecting } };\n }\n });\n touristicEventObserver.observe(this.touristicContentsRef);\n }\n }\n\n connectedCallback() {\n this.currentTrek = this.trek ? this.trek : state.currentTrek;\n if (this.currentTrek) {\n this.defaultOptions = this.handleOptions();\n this.options = { ...this.defaultOptions, presentation: { ...this.defaultOptions.presentation, indicator: true } };\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.labels = state.labels.filter(label => this.currentTrek.labels.includes(label.id));\n this.sources = state.sources.filter(source => this.currentTrek.source.includes(source.id));\n this.accessibilities = state.accessibilities.filter(accessibility => this.currentTrek.accessibilities.includes(accessibility.id));\n if (state.accessibilitiesLevel) {\n this.accessibilityLevel = state.accessibilitiesLevel.find(accessibilityLevel => this.currentTrek.accessibility_level === accessibilityLevel.id);\n }\n this.cities = this.currentTrek.cities.map(currentCity => state.cities.find(city => city.id === currentCity)?.name);\n this.hasStep = this.currentTrek.children.length > 0;\n }\n onChange('currentTrek', () => {\n this.currentTrek = this.trek ? this.trek : state.currentTrek;\n if (this.currentTrek) {\n this.defaultOptions = this.handleOptions();\n this.options = { ...this.defaultOptions, presentation: { ...this.defaultOptions.presentation, indicator: true } };\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.labels = state.labels.filter(label => this.currentTrek.labels.includes(label.id));\n this.sources = state.sources.filter(source => this.currentTrek.source.includes(source.id));\n this.accessibilities = state.accessibilities.filter(accessibility => this.currentTrek.accessibilities.includes(accessibility.id));\n if (state.accessibilitiesLevel) {\n this.accessibilityLevel = state.accessibilitiesLevel.find(accessibilityLevel => this.currentTrek.accessibility_level === accessibilityLevel.id);\n }\n this.cities = this.currentTrek.cities.map(currentCity => state.cities.find(city => city.id === currentCity)?.name);\n this.hasStep = this.currentTrek.children.length > 0;\n }\n });\n }\n\n disconnectedCallback() {\n if (this.resetStoreOnDisconnected) {\n reset();\n }\n }\n\n handleOptions() {\n return {\n ...options,\n presentation: { ...presentation },\n steps: { ...steps, visible: Boolean(state.parentTrek) },\n description: { ...description, visible: Boolean(this.currentTrek.description) },\n recommendations: { ...recommendations, visible: Boolean(this.currentTrek.advice || (this.labels && this.labels.length > 0)) },\n sensitiveArea: { ...sensitiveArea, visible: Boolean(state.currentSensitiveAreas && state.currentSensitiveAreas.length > 0) },\n informationPlaces: {\n ...informationPlaces,\n visible: Boolean(\n state.currentInformationDesks &&\n state.currentInformationDesks.filter(currentInformationDesks => this.currentTrek.information_desks.includes(currentInformationDesks.id)).length > 0,\n ),\n },\n pois: { ...pois, visible: Boolean(state.currentPois && state.currentPois.length > 0) },\n touristicContents: { ...touristicContents, visible: Boolean(state.trekTouristicContents && state.trekTouristicContents.length > 0) },\n touristicEvents: { ...touristicEvents, visible: Boolean(state.touristicEvents && state.touristicEvents.length > 0) },\n };\n }\n\n handleFullscreen() {\n if (this.currentTrek.attachments && this.currentTrek.attachments[0] && this.currentTrek.attachments[0].url) {\n this.swiperImagesRef.requestFullscreen();\n }\n }\n\n handleIndicatorSelectedTrekOption() {\n let previousVisibleOptions = 0;\n let currentOption: Option;\n let previousWidthOptions = 0;\n const options: Option[] = Object.values(this.options);\n let index = 0;\n while (!currentOption && index < options.length) {\n if (options[index].indicator) {\n currentOption = options[index];\n } else {\n if (options[index].visible) {\n previousVisibleOptions += 1;\n previousWidthOptions += options[index].width;\n }\n }\n index++;\n }\n return `${previousWidthOptions + 16 * previousVisibleOptions - currentOption.width / 2}px`;\n }\n\n handleScrollTo(element: HTMLDivElement) {\n this.trekDetailContainerRef.scrollTo({ top: element.offsetTop - 48 });\n }\n\n render() {\n return (\n <Host\n style={{\n '--color-primary-app': this.colorPrimaryApp,\n '--color-on-surface': this.colorOnSurface,\n '--color-primary-container': this.colorPrimaryContainer,\n '--color-on-primary-container': this.colorOnPrimaryContainer,\n '--color-secondary-container': this.colorSecondaryContainer,\n '--color-on-secondary-container': this.colorOnSecondaryContainer,\n '--color-background': this.colorBackground,\n '--detail-bottom-space-height': this.isLargeView ? '8px' : '104px',\n }}\n >\n {this.currentTrek && (\n <div class=\"trek-options\">\n <a onClick={() => this.handleScrollTo(this.presentationRef)} class={`presentation trek-option${this.options.presentation.indicator ? ' selected-trek-option' : ''}`}>\n {translate[state.language].options.presentation}\n </a>\n {this.options.steps.visible && (\n <a onClick={() => this.handleScrollTo(this.stepsRef)} class={`steps trek-option${this.options.steps.indicator ? ' selected-trek-option' : ''}`}>\n {translate[state.language].options.steps}\n </a>\n )}\n {this.options.description.visible && (\n <a onClick={() => this.handleScrollTo(this.descriptionRef)} class={`description trek-option${this.options.description.indicator ? ' selected-trek-option' : ''}`}>\n {translate[state.language].options.description}\n </a>\n )}\n {this.options.recommendations.visible && (\n <a\n onClick={() => this.handleScrollTo(this.recommendationRef)}\n class={`recommendations trek-option${this.options.recommendations.indicator ? ' selected-trek-option' : ''}`}\n >\n {translate[state.language].options.recommendations}\n </a>\n )}\n {this.options.sensitiveArea.visible && (\n <a\n onClick={() => this.handleScrollTo(this.sensitiveAreaRef)}\n class={`sensitive-areas trek-option${this.options.sensitiveArea.indicator ? ' selected-trek-option' : ''}`}\n >\n {translate[state.language].options.environmentalSensitiveAreas}\n </a>\n )}\n {this.options.informationPlaces.visible && (\n <a\n onClick={() => this.handleScrollTo(this.informationDeskRef)}\n class={`information-places trek-option${this.options.informationPlaces.indicator ? ' selected-trek-option' : ''}`}\n >\n {translate[state.language].options.informationPlaces}\n </a>\n )}\n {this.options.pois.visible && (\n <a onClick={() => this.handleScrollTo(this.poiRef)} class={`pois trek-option${this.options.pois.indicator ? ' selected-trek-option' : ''}`}>\n {translate[state.language].options.pois}\n </a>\n )}\n {this.options.touristicContents.visible && (\n <a\n onClick={() => this.handleScrollTo(this.touristicContentsRef)}\n class={`touristic-content trek-option${this.options.touristicContents.indicator ? ' selected-trek-option' : ''}`}\n >\n {translate[state.language].options.touristicContents}\n </a>\n )}\n {this.options.touristicEvents.visible && (\n <a\n onClick={() => this.handleScrollTo(this.touristicEventsRef)}\n class={`touristic-event trek-option${this.options.touristicEvents.indicator ? ' selected-trek-option' : ''}`}\n >\n {translate[state.language].options.touristicEvents}\n </a>\n )}\n <span class=\"indicator-selected-trek-option\" style={{ transform: `translateX(${this.handleIndicatorSelectedTrekOption()})` }}></span>\n </div>\n )}\n {this.currentTrek && (\n <div class=\"trek-detail-container\" ref={el => (this.trekDetailContainerRef = el)}>\n <div class=\"images-container\" ref={el => (this.presentationRef = el)}>\n <div class=\"swiper swiper-images\" ref={el => (this.swiperImagesRef = el)}>\n <div class=\"swiper-wrapper\">\n {this.currentTrek.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img class=\"image\" src={attachment.url} loading=\"lazy\" onClick={() => this.handleFullscreen()} />\n </div>\n ))}\n </div>\n <div class=\"swiper-pagination\" ref={el => (this.paginationElImagesRef = el)}></div>\n <div class=\"swiper-button-prev\" ref={el => (this.prevElImagesRef = el)}></div>\n <div class=\"swiper-button-next\" ref={el => (this.nextElImagesRef = el)}></div>\n </div>\n </div>\n <div class=\"name\">{this.currentTrek.name}</div>\n {this.themes.length > 0 && (\n <div class=\"themes-container\">\n {this.themes.map(theme => (\n <div class=\"theme\">{theme.label}</div>\n ))}\n </div>\n )}\n <div class=\"sub-container\">\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 class=\"icon-label route\">\n {this.route?.pictogram && <img src={this.route.pictogram} />}\n {this.route?.route}\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 class=\"icon-label practice\">\n {this.practice?.pictogram && <img src={this.practice.pictogram} />}\n {this.practice?.name}\n </div>\n </div>\n {this.currentTrek.ratings.map(trekRating => (\n <div class=\"row\">{state.ratings.find(rating => rating.id === trekRating).name}</div>\n ))}\n {this.currentTrek.ratings_description && this.currentTrek.ratings_description !== '' && <div class=\"row\">{this.currentTrek.ratings_description}</div>}\n </div>\n </div>\n <div class=\"divider\"></div>\n <div class=\"downloads-container\">\n <div class=\"download-title\">{translate[state.language].downloads}</div>\n <div class=\"links-container\">\n <a href={`${this.currentTrek.gpx}`} target=\"_blank\" rel=\"noopener noreferrer\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n download\n </span>\n GPX\n </a>\n <a href={`${this.currentTrek.kml}`} target=\"_blank\" rel=\"noopener noreferrer\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n download\n </span>\n KML\n </a>\n <a href={`${this.currentTrek.pdf}`} target=\"_blank\" rel=\"noopener noreferrer\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n download\n </span>\n PDF\n </a>\n </div>\n </div>\n <div class=\"divider\"></div>\n {this.currentTrek.description_teaser && <div class=\"description-teaser\" innerHTML={this.currentTrek.description_teaser}></div>}\n {this.currentTrek.ambiance && <div class=\"ambiance\" innerHTML={this.currentTrek.ambiance}></div>}\n {state.parentTrekId && state.parentTrek && this.currentTrek.id !== state.parentTrekId && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"parent-trek-container\">\n <button class=\"parent-trek-title\" onClick={() => this.parentTrekPress.emit(state.parentTrekId)}>\n <div><</div>\n {state.parentTrek.name}\n </button>\n </div>\n </div>\n )}\n {state.currentTrekSteps && (\n <div class=\"step-container\" ref={el => (this.stepsRef = el)}>\n <div class=\"step-title\">{`${state.currentTrekSteps.length} ${translate[state.language].steps}`}</div>\n <div class=\"swiper swiper-step\" ref={el => (this.swiperStepRef = el)}>\n <div class=\"swiper-wrapper\">\n {state.currentTrekSteps &&\n state.currentTrekSteps.map(trek => {\n return (\n <div class=\"swiper-slide\">\n <grw-trek-card\n reset-store-on-disconnected=\"false\"\n key={`trek-${trek.id}`}\n trek={trek}\n is-large-view={false}\n is-step={true}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n ></grw-trek-card>\n </div>\n );\n })}\n </div>\n </div>\n </div>\n )}\n <div class=\"divider\"></div>\n {this.currentTrek.description && (\n <div class=\"description-container\" ref={el => (this.descriptionRef = el)}>\n <div class=\"description-title\">{translate[state.language].description}</div>\n <div class=\"description\" innerHTML={this.currentTrek.description}></div>\n </div>\n )}\n {this.currentTrek.departure && (\n <div class=\"departure-container\">\n <div class=\"departure-title\">{translate[state.language].departure} : </div>\n <div innerHTML={this.currentTrek.departure}></div>\n </div>\n )}\n {this.currentTrek.arrival && (\n <div class=\"arrival-container\">\n <div class=\"arrival-title\">{translate[state.language].arrival} : </div>\n <div innerHTML={this.currentTrek.arrival}></div>\n </div>\n )}\n {this.currentTrek.cities && this.currentTrek.cities.length > 0 && (\n <div class=\"cities-container\">\n <div class=\"cities-title\">{translate[state.language].crossedCities} : </div>\n <div innerHTML={this.cities.join(', ')}></div>\n </div>\n )}\n {this.weather && this.currentTrek.departure_city && (\n <div class=\"weather-container\">\n <iframe height=\"150\" frameborder=\"0\" src={`https://meteofrance.com/widget/prevision/${this.currentTrek.departure_city}0#${this.colorPrimaryApp}`}></iframe>\n </div>\n )}\n {this.currentTrek.access && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"access-container\">\n <div class=\"access-title\">{translate[state.language].roadAccess}</div>\n <div class=\"access\" innerHTML={this.currentTrek.access}></div>\n </div>\n </div>\n )}\n {this.currentTrek.public_transport && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"public-transport-container\">\n <div class=\"public-transport-title\">{translate[state.language].transport}</div>\n <div class=\"public-transport\" innerHTML={this.currentTrek.public_transport}></div>\n </div>\n </div>\n )}\n {(this.currentTrek.advice || this.labels.length > 0) && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"advice-container\" ref={el => (this.recommendationRef = el)}>\n <div class=\"advice-title\">{translate[state.language].recommendations}</div>\n {this.currentTrek.advice && (\n <div class=\"current-advice-container\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n warning\n </span>\n <div class=\"advice\" innerHTML={this.currentTrek.advice}></div>\n </div>\n )}\n {this.labels.map(label => (\n <div class=\"label-container\">\n <div class=\"label-sub-container\">\n {label.pictogram && <img src={label.pictogram} />}\n <div class=\"label-name\" innerHTML={label.name}></div>\n </div>\n <div class=\"label-advice\" innerHTML={label.advice}></div>\n </div>\n ))}\n </div>\n </div>\n )}\n {this.currentTrek.advised_parking && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"advised-parking-container\" ref={el => (this.parkingRef = el)}>\n <div class=\"advised-parking-title\">{translate[state.language].recommendedParking}</div>\n <div class=\"advised-parking\" innerHTML={this.currentTrek.advised_parking}></div>\n </div>\n </div>\n )}\n {this.currentTrek.gear && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"gear-container\">\n <div class=\"gear-title\">{translate[state.language].equipments}</div>\n <div class=\"gear\" innerHTML={this.currentTrek.gear}></div>\n </div>\n </div>\n )}\n {state.currentSensitiveAreas && state.currentSensitiveAreas.length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"sensitive-areas-container\" ref={el => (this.sensitiveAreaRef = el)}>\n <div class=\"sensitive-areas-title\">{translate[state.language].environmentalSensitiveAreas}</div>\n {state.currentSensitiveAreas.map(sensitiveArea => (\n <grw-sensitive-area-detail sensitiveArea={sensitiveArea}></grw-sensitive-area-detail>\n ))}\n </div>\n </div>\n )}\n {state.currentInformationDesks &&\n state.currentInformationDesks.filter(currentInformationDesks => this.currentTrek.information_desks.includes(currentInformationDesks.id)).length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"information-desks-container\" ref={el => (this.informationDeskRef = el)}>\n <div class=\"information-desks-title\">{translate[state.language].informationPlaces}</div>\n <div class=\"swiper swiper-information-desks\" ref={el => (this.swiperInformationDesksRef = el)}>\n <div class=\"swiper-wrapper\">\n {state.currentInformationDesks\n .filter(currentInformationDesks => this.currentTrek.information_desks.includes(currentInformationDesks.id))\n .map(informationDesk => (\n <div class=\"swiper-slide\">\n <grw-information-desk informationDesk={informationDesk}></grw-information-desk>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n )}\n {(this.currentTrek.disabled_infrastructure ||\n (this.accessibilities && this.accessibilities.length > 0) ||\n this.currentTrek.accessibility_level ||\n this.currentTrek.accessibility_slope ||\n this.currentTrek.accessibility_width ||\n this.currentTrek.accessibility_signage ||\n this.currentTrek.accessibility_covering ||\n this.currentTrek.accessibility_exposure ||\n this.currentTrek.accessibility_advice) && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"accessibilities-container\">\n <div class=\"accessibilities-title\">{translate[state.language].accessibility}</div>\n {this.currentTrek.disabled_infrastructure && <div innerHTML={this.currentTrek.disabled_infrastructure}></div>}\n <div class=\"accessibilities-content-container\">\n {this.accessibilities.map(accessibility => (\n <div class=\"accessibility-content-container\">\n <img src={accessibility.pictogram}></img>\n <div innerHTML={accessibility.name}></div>\n </div>\n ))}\n </div>\n {this.currentTrek.accessibility_level && (\n <div class=\"accessibility-level-container\">\n <div class=\"accessibility-level-title\">{translate[state.language].accessibilityLevel}</div>\n <div innerHTML={this.accessibilityLevel.name}></div>\n </div>\n )}\n {this.currentTrek.accessibility_slope && (\n <div class=\"accessibility-slope-container\">\n <div class=\"accessibility-slope-title\">{translate[state.language].accessibilitySlope}</div>\n <div innerHTML={this.currentTrek.accessibility_slope}></div>\n </div>\n )}\n {this.currentTrek.accessibility_width && (\n <div class=\"accessibility-width-container\">\n <div class=\"accessibility-width-title\">{translate[state.language].accessibilityWidth}</div>\n <div innerHTML={this.currentTrek.accessibility_width}></div>\n </div>\n )}\n {this.currentTrek.accessibility_signage && (\n <div class=\"accessibility-signage-container\">\n <div class=\"accessibility-signage-title\">{translate[state.language].accessibilitySignage}</div>\n <div innerHTML={this.currentTrek.accessibility_signage}></div>\n </div>\n )}\n {this.currentTrek.accessibility_covering && (\n <div class=\"accessibility-covering-container\">\n <div class=\"accessibility-covering-title\">{translate[state.language].accessibilityCovering}</div>\n <div innerHTML={this.currentTrek.accessibility_covering}></div>\n </div>\n )}\n {this.currentTrek.accessibility_exposure && (\n <div class=\"accessibility-exposure-container\">\n <div class=\"accessibility-exposure-title\">{translate[state.language].accessibilityExposure}</div>\n <div innerHTML={this.currentTrek.accessibility_exposure}></div>\n </div>\n )}\n {this.currentTrek.accessibility_advice && (\n <div class=\"accessibility-advice-container\">\n <div class=\"accessibility-advice-title\">{translate[state.language].accessibilityAdvices}</div>\n <div innerHTML={this.currentTrek.accessibility_advice}></div>\n </div>\n )}\n </div>\n </div>\n )}\n {state.currentPois && state.currentPois.length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"pois-container\" ref={el => (this.poiRef = el)}>\n <div class=\"pois-title\">{translate[state.language].pois(state.currentPois.length)}</div>\n <div class=\"swiper swiper-pois\" ref={el => (this.swiperPoisRef = el)}>\n <div class=\"swiper-wrapper\">\n {state.currentPois.map(poi => (\n <div class=\"swiper-slide\">\n <grw-poi poi={poi}></grw-poi>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n )}\n {state.trekTouristicContents && state.trekTouristicContents.length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"touristic-content-container\" ref={el => (this.touristicContentsRef = el)}>\n <div class=\"touristic-content-title\">{translate[state.language].touristicContents(state.trekTouristicContents.length)}</div>\n <div class=\"swiper swiper-touristic-content\" ref={el => (this.swiperTouristicContentsRef = el)}>\n <div class=\"swiper-wrapper\">\n {state.trekTouristicContents.map(touristicContent => (\n <div class=\"swiper-slide\">\n <grw-touristic-content-card touristicContent={touristicContent} isInsideHorizontalList={true}></grw-touristic-content-card>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n )}\n {state.touristicEvents && state.touristicEvents.length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"touristic-event-container\" ref={el => (this.touristicEventsRef = el)}>\n <div class=\"touristic-event-title\">{translate[state.language].touristicEvents(state.touristicEvents.length)}</div>\n <div class=\"swiper swiper-touristic-event\" ref={el => (this.swiperTouristicEventsRef = el)}>\n <div class=\"swiper-wrapper\">\n {state.touristicEvents.map(touristicEvent => (\n <div class=\"swiper-slide\">\n <grw-touristic-event-card touristicEvent={touristicEvent}></grw-touristic-event-card>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n )}\n {this.currentTrek.source && this.currentTrek.source.length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"source-container\">\n <div class=\"source-title\">{translate[state.language].sources}</div>\n {this.sources.map(source => (\n <div class=\"source-sub-container\">\n {source.pictogram && <img src={source.pictogram} />}\n <div>\n <div class=\"source-name\" innerHTML={source.name}></div>\n <a class=\"source-advice\" href={source.website} innerHTML={source.website}></a>\n </div>\n </div>\n ))}\n </div>\n </div>\n )}\n <div class=\"detail-bottom-space\"></div>\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"grw-trek-detail.js","sourceRoot":"","sources":["../../../src/components/grw-trek-detail/grw-trek-detail.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Host, h, Prop, State, Event, EventEmitter } from '@stencil/core';\nimport Swiper, { Navigation, Pagination, Keyboard, FreeMode, Mousewheel } from 'swiper';\nimport { translate } from 'i18n/i18n';\nimport state, { onChange, reset } from 'store/store';\nimport { Accessibilities, AccessibilityLevel, Difficulty, Labels, Practice, Route, Sources, Themes, Trek, Option, Options } from 'types/types';\nimport { formatDuration, formatLength, formatAscent } from 'utils/utils';\n\nconst presentation: Option = {\n visible: true,\n width: 120,\n indicator: false,\n};\nconst steps: Option = {\n visible: false,\n width: 80,\n indicator: false,\n};\nconst description: Option = {\n visible: false,\n width: 120,\n indicator: false,\n};\nconst recommendations: Option = {\n visible: false,\n width: 190,\n indicator: false,\n};\nconst sensitiveArea: Option = {\n visible: false,\n width: 160,\n indicator: false,\n};\nconst informationPlaces: Option = {\n visible: false,\n width: 200,\n indicator: false,\n};\nconst pois: Option = {\n visible: false,\n width: 120,\n indicator: false,\n};\nconst touristicContents: Option = {\n visible: false,\n width: 120,\n indicator: false,\n};\nconst touristicEvents: Option = {\n visible: false,\n width: 120,\n indicator: false,\n};\nconst options: Options = {\n presentation,\n steps,\n description,\n recommendations,\n sensitiveArea,\n informationPlaces,\n pois,\n touristicContents,\n touristicEvents,\n};\n\n@Component({\n tag: 'grw-trek-detail',\n styleUrl: 'grw-trek-detail.scss',\n shadow: true,\n})\nexport class GrwTrekDetail {\n swiperImages?: Swiper;\n swiperStep?: Swiper;\n swiperPois?: Swiper;\n swiperInformationDesks?: Swiper;\n swiperTouristicContents?: Swiper;\n swiperTouristicEvents?: Swiper;\n swiperImagesRef?: HTMLDivElement;\n prevElImagesRef?: HTMLDivElement;\n nextElImagesRef?: HTMLDivElement;\n paginationElImagesRef?: HTMLDivElement;\n swiperStepRef?: HTMLDivElement;\n swiperPoisRef?: HTMLDivElement;\n swiperInformationDesksRef?: HTMLDivElement;\n swiperTouristicContentsRef?: HTMLDivElement;\n swiperTouristicEventsRef?: HTMLDivElement;\n trekDetailContainerRef?: HTMLElement;\n presentationRef?: HTMLDivElement;\n descriptionRef?: HTMLDivElement;\n parkingRef?: HTMLDivElement;\n recommendationRef?: HTMLDivElement;\n sensitiveAreaRef?: HTMLDivElement;\n informationDeskRef?: HTMLDivElement;\n poiRef?: HTMLDivElement;\n stepsRef?: HTMLDivElement;\n touristicContentsRef?: HTMLDivElement;\n touristicEventsRef?: HTMLDivElement;\n hasStep?: boolean;\n\n defaultOptions: Options;\n @Event() descriptionIsInViewport: EventEmitter<boolean>;\n @Event() parkingIsInViewport: EventEmitter<boolean>;\n @Event() sensitiveAreaIsInViewport: EventEmitter<boolean>;\n @Event() informationDeskIsInViewport: EventEmitter<boolean>;\n @Event() poiIsInViewport: EventEmitter<boolean>;\n @Event() stepsIsInViewport: EventEmitter<boolean>;\n @Event() touristicContentsIsInViewport: EventEmitter<boolean>;\n @Event() touristicEventsIsInViewport: EventEmitter<boolean>;\n @Event() parentTrekPress: EventEmitter<number>;\n @State() currentTrek: Trek;\n @State() difficulty: Difficulty;\n @State() route: Route;\n @State() practice: Practice;\n @State() themes: Themes;\n @State() labels: Labels;\n @State() sources: Sources;\n @State() accessibilities: Accessibilities;\n @State() accessibilityLevel: AccessibilityLevel;\n @State() displayFullscreen = false;\n @State() cities: string[];\n @State() options: Options;\n @Prop() trek: Trek;\n\n @Prop() colorPrimaryApp = '#6b0030';\n @Prop() colorOnSurface = '#49454e';\n @Prop() colorPrimaryContainer = '#eaddff';\n @Prop() colorOnPrimaryContainer = '#21005e';\n @Prop() colorSecondaryContainer = '#e8def8';\n @Prop() colorOnSecondaryContainer = '#1d192b';\n @Prop() colorSurfaceContainerLow = '#f7f2fa';\n @Prop() colorBackground = '#fef7ff';\n\n @Prop() resetStoreOnDisconnected = true;\n @Prop() weather = false;\n @Prop() isLargeView = false;\n\n componentDidLoad() {\n this.swiperImages = new Swiper(this.swiperImagesRef, {\n modules: [Navigation, Pagination, Keyboard, FreeMode, Mousewheel],\n navigation: {\n prevEl: this.prevElImagesRef,\n nextEl: this.nextElImagesRef,\n },\n pagination: { el: this.paginationElImagesRef },\n allowTouchMove: false,\n keyboard: false,\n });\n this.swiperImagesRef.onfullscreenchange = () => {\n this.displayFullscreen = !this.displayFullscreen;\n this.displayFullscreen ? this.swiperImages.keyboard.enable() : this.swiperImages.keyboard.disable();\n };\n this.swiperStep = new Swiper(this.swiperStepRef, {\n modules: [FreeMode, Mousewheel],\n slidesPerView: 1.5,\n spaceBetween: 20,\n grabCursor: true,\n freeMode: true,\n mousewheel: { forceToAxis: true },\n breakpointsBase: 'container',\n breakpoints: {\n '540': {\n slidesPerView: 2.5,\n },\n },\n });\n this.swiperPois = new Swiper(this.swiperPoisRef, {\n modules: [FreeMode, Mousewheel],\n slidesPerView: 1.5,\n spaceBetween: 20,\n grabCursor: true,\n freeMode: true,\n mousewheel: { forceToAxis: true },\n breakpointsBase: 'container',\n breakpoints: {\n '540': {\n slidesPerView: 2.5,\n },\n },\n });\n this.swiperInformationDesks = new Swiper(this.swiperInformationDesksRef, {\n modules: [FreeMode, Mousewheel],\n slidesPerView: 1.5,\n spaceBetween: 20,\n grabCursor: true,\n freeMode: true,\n mousewheel: { forceToAxis: true },\n breakpointsBase: 'container',\n breakpoints: {\n '540': {\n slidesPerView: 2.5,\n },\n },\n });\n this.swiperTouristicContents = new Swiper(this.swiperTouristicContentsRef, {\n modules: [FreeMode, Mousewheel],\n slidesPerView: 1.5,\n spaceBetween: 20,\n grabCursor: true,\n freeMode: true,\n mousewheel: { forceToAxis: true },\n breakpointsBase: 'container',\n breakpoints: {\n '540': {\n slidesPerView: 2.5,\n },\n },\n });\n this.swiperTouristicEvents = new Swiper(this.swiperTouristicEventsRef, {\n modules: [FreeMode, Mousewheel],\n slidesPerView: 1.5,\n spaceBetween: 20,\n grabCursor: true,\n freeMode: true,\n mousewheel: { forceToAxis: true },\n breakpointsBase: 'container',\n breakpoints: {\n '540': {\n slidesPerView: 2.5,\n },\n },\n });\n if (this.presentationRef) {\n const presentationObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, presentation: { ...this.defaultOptions.presentation, indicator: isIntersecting } };\n }\n });\n presentationObserver.observe(this.presentationRef);\n }\n if (this.stepsRef) {\n const stepsObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.stepsIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, steps: { ...this.defaultOptions.steps, indicator: isIntersecting } };\n }\n });\n stepsObserver.observe(this.stepsRef);\n }\n if (this.descriptionRef) {\n const descriptionObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.descriptionIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, description: { ...this.defaultOptions.description, indicator: isIntersecting } };\n }\n });\n descriptionObserver.observe(this.descriptionRef);\n }\n if (this.recommendationRef) {\n const recommendationsObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, recommendations: { ...this.defaultOptions.recommendations, indicator: isIntersecting } };\n }\n });\n recommendationsObserver.observe(this.recommendationRef);\n }\n if (this.parkingRef) {\n const parkingObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.parkingIsInViewport.emit(isIntersecting);\n });\n parkingObserver.observe(this.parkingRef);\n }\n\n if (this.sensitiveAreaRef) {\n const sensitiveAreaRefObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.sensitiveAreaIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, sensitiveArea: { ...this.defaultOptions.sensitiveArea, indicator: isIntersecting } };\n }\n });\n sensitiveAreaRefObserver.observe(this.sensitiveAreaRef);\n }\n\n if (this.informationDeskRef) {\n const informationDeskObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.informationDeskIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, informationPlaces: { ...this.defaultOptions.informationPlaces, indicator: isIntersecting } };\n }\n });\n informationDeskObserver.observe(this.informationDeskRef);\n }\n\n if (this.poiRef) {\n const poiObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.poiIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, pois: { ...this.defaultOptions.pois, indicator: isIntersecting } };\n }\n });\n poiObserver.observe(this.poiRef);\n }\n if (this.touristicContentsRef) {\n const touristicContentObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.touristicContentsIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, touristicContents: { ...this.defaultOptions.touristicContents, indicator: isIntersecting } };\n }\n });\n touristicContentObserver.observe(this.touristicContentsRef);\n }\n if (this.touristicEventsRef) {\n const touristicEventObserver = new IntersectionObserver(entries => {\n const isIntersecting = entries[0].isIntersecting;\n this.touristicEventsIsInViewport.emit(isIntersecting);\n if (isIntersecting) {\n this.options = { ...this.defaultOptions, touristicEvents: { ...this.defaultOptions.touristicEvents, indicator: isIntersecting } };\n }\n });\n touristicEventObserver.observe(this.touristicContentsRef);\n }\n }\n\n connectedCallback() {\n this.currentTrek = this.trek ? this.trek : state.currentTrek;\n if (this.currentTrek) {\n this.defaultOptions = this.handleOptions();\n this.options = { ...this.defaultOptions, presentation: { ...this.defaultOptions.presentation, indicator: true } };\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.labels = state.labels.filter(label => this.currentTrek.labels.includes(label.id));\n this.sources = state.sources.filter(source => this.currentTrek.source.includes(source.id));\n this.accessibilities = state.accessibilities.filter(accessibility => this.currentTrek.accessibilities.includes(accessibility.id));\n if (state.accessibilitiesLevel) {\n this.accessibilityLevel = state.accessibilitiesLevel.find(accessibilityLevel => this.currentTrek.accessibility_level === accessibilityLevel.id);\n }\n this.cities = this.currentTrek.cities.map(currentCity => state.cities.find(city => city.id === currentCity)?.name);\n this.hasStep = this.currentTrek.children.length > 0;\n }\n onChange('currentTrek', () => {\n this.currentTrek = this.trek ? this.trek : state.currentTrek;\n if (this.currentTrek) {\n this.defaultOptions = this.handleOptions();\n this.options = { ...this.defaultOptions, presentation: { ...this.defaultOptions.presentation, indicator: true } };\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.labels = state.labels.filter(label => this.currentTrek.labels.includes(label.id));\n this.sources = state.sources.filter(source => this.currentTrek.source.includes(source.id));\n this.accessibilities = state.accessibilities.filter(accessibility => this.currentTrek.accessibilities.includes(accessibility.id));\n if (state.accessibilitiesLevel) {\n this.accessibilityLevel = state.accessibilitiesLevel.find(accessibilityLevel => this.currentTrek.accessibility_level === accessibilityLevel.id);\n }\n this.cities = this.currentTrek.cities.map(currentCity => state.cities.find(city => city.id === currentCity)?.name);\n this.hasStep = this.currentTrek.children.length > 0;\n }\n });\n }\n\n disconnectedCallback() {\n if (this.resetStoreOnDisconnected) {\n reset();\n }\n }\n\n handleOptions() {\n return {\n ...options,\n presentation: { ...presentation },\n steps: { ...steps, visible: Boolean(state.parentTrek) },\n description: { ...description, visible: Boolean(this.currentTrek.description) },\n recommendations: { ...recommendations, visible: Boolean(this.currentTrek.advice || (this.labels && this.labels.length > 0)) },\n sensitiveArea: { ...sensitiveArea, visible: Boolean(state.currentSensitiveAreas && state.currentSensitiveAreas.length > 0) },\n informationPlaces: {\n ...informationPlaces,\n visible: Boolean(\n state.currentInformationDesks &&\n state.currentInformationDesks.filter(currentInformationDesks => this.currentTrek.information_desks.includes(currentInformationDesks.id)).length > 0,\n ),\n },\n pois: { ...pois, visible: Boolean(state.currentPois && state.currentPois.length > 0) },\n touristicContents: { ...touristicContents, visible: Boolean(state.trekTouristicContents && state.trekTouristicContents.length > 0) },\n touristicEvents: { ...touristicEvents, visible: Boolean(state.touristicEvents && state.touristicEvents.length > 0) },\n };\n }\n\n handleFullscreen() {\n if (this.currentTrek.attachments && this.currentTrek.attachments[0] && this.currentTrek.attachments[0].url) {\n this.swiperImagesRef.requestFullscreen();\n }\n }\n\n handleIndicatorSelectedTrekOption() {\n let previousVisibleOptions = 0;\n let currentOption: Option;\n let previousWidthOptions = 0;\n const options: Option[] = Object.values(this.options);\n let index = 0;\n while (!currentOption && index < options.length) {\n if (options[index].indicator) {\n currentOption = options[index];\n } else {\n if (options[index].visible) {\n previousVisibleOptions += 1;\n previousWidthOptions += options[index].width;\n }\n }\n index++;\n }\n return `${previousWidthOptions + 16 * previousVisibleOptions - currentOption.width / 2}px`;\n }\n\n handleScrollTo(element: HTMLDivElement) {\n this.trekDetailContainerRef.scrollTo({ top: element.offsetTop - 48 });\n }\n\n render() {\n return (\n <Host\n style={{\n '--color-primary-app': this.colorPrimaryApp,\n '--color-on-surface': this.colorOnSurface,\n '--color-primary-container': this.colorPrimaryContainer,\n '--color-on-primary-container': this.colorOnPrimaryContainer,\n '--color-secondary-container': this.colorSecondaryContainer,\n '--color-on-secondary-container': this.colorOnSecondaryContainer,\n '--color-background': this.colorBackground,\n '--detail-bottom-space-height': this.isLargeView ? '8px' : '104px',\n }}\n >\n {this.currentTrek && (\n <div class=\"trek-options\">\n <a onClick={() => this.handleScrollTo(this.presentationRef)} class={`presentation trek-option${this.options.presentation.indicator ? ' selected-trek-option' : ''}`}>\n {translate[state.language].options.presentation}\n </a>\n {this.options.steps.visible && (\n <a onClick={() => this.handleScrollTo(this.stepsRef)} class={`steps trek-option${this.options.steps.indicator ? ' selected-trek-option' : ''}`}>\n {translate[state.language].options.steps}\n </a>\n )}\n {this.options.description.visible && (\n <a onClick={() => this.handleScrollTo(this.descriptionRef)} class={`description trek-option${this.options.description.indicator ? ' selected-trek-option' : ''}`}>\n {translate[state.language].options.description}\n </a>\n )}\n {this.options.recommendations.visible && (\n <a\n onClick={() => this.handleScrollTo(this.recommendationRef)}\n class={`recommendations trek-option${this.options.recommendations.indicator ? ' selected-trek-option' : ''}`}\n >\n {translate[state.language].options.recommendations}\n </a>\n )}\n {this.options.sensitiveArea.visible && (\n <a\n onClick={() => this.handleScrollTo(this.sensitiveAreaRef)}\n class={`sensitive-areas trek-option${this.options.sensitiveArea.indicator ? ' selected-trek-option' : ''}`}\n >\n {translate[state.language].options.environmentalSensitiveAreas}\n </a>\n )}\n {this.options.informationPlaces.visible && (\n <a\n onClick={() => this.handleScrollTo(this.informationDeskRef)}\n class={`information-places trek-option${this.options.informationPlaces.indicator ? ' selected-trek-option' : ''}`}\n >\n {translate[state.language].options.informationPlaces}\n </a>\n )}\n {this.options.pois.visible && (\n <a onClick={() => this.handleScrollTo(this.poiRef)} class={`pois trek-option${this.options.pois.indicator ? ' selected-trek-option' : ''}`}>\n {translate[state.language].options.pois}\n </a>\n )}\n {this.options.touristicContents.visible && (\n <a\n onClick={() => this.handleScrollTo(this.touristicContentsRef)}\n class={`touristic-content trek-option${this.options.touristicContents.indicator ? ' selected-trek-option' : ''}`}\n >\n {translate[state.language].options.touristicContents}\n </a>\n )}\n {this.options.touristicEvents.visible && (\n <a\n onClick={() => this.handleScrollTo(this.touristicEventsRef)}\n class={`touristic-event trek-option${this.options.touristicEvents.indicator ? ' selected-trek-option' : ''}`}\n >\n {translate[state.language].options.touristicEvents}\n </a>\n )}\n <span class=\"indicator-selected-trek-option\" style={{ transform: `translateX(${this.handleIndicatorSelectedTrekOption()})` }}></span>\n </div>\n )}\n {this.currentTrek && (\n <div class=\"trek-detail-container\" ref={el => (this.trekDetailContainerRef = el)}>\n <div class=\"images-container\" ref={el => (this.presentationRef = el)}>\n <div class=\"swiper swiper-images\" ref={el => (this.swiperImagesRef = el)}>\n <div class=\"swiper-wrapper\">\n {this.currentTrek.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img class=\"image\" src={attachment.url} loading=\"lazy\" onClick={() => this.handleFullscreen()} />\n </div>\n ))}\n </div>\n <div class=\"swiper-pagination\" ref={el => (this.paginationElImagesRef = el)}></div>\n <div class=\"swiper-button-prev\" ref={el => (this.prevElImagesRef = el)}></div>\n <div class=\"swiper-button-next\" ref={el => (this.nextElImagesRef = el)}></div>\n </div>\n </div>\n <div class=\"name\">{this.currentTrek.name}</div>\n {this.themes.length > 0 && (\n <div class=\"themes-container\">\n {this.themes.map(theme => (\n <div class=\"theme\">{theme.label}</div>\n ))}\n </div>\n )}\n <div class=\"sub-container\">\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 class=\"icon-label route\">\n {this.route?.pictogram && <img src={this.route.pictogram} />}\n {this.route?.route}\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 class=\"icon-label practice\">\n {this.practice?.pictogram && <img src={this.practice.pictogram} />}\n {this.practice?.name}\n </div>\n </div>\n {this.currentTrek.ratings.map(trekRating => (\n <div class=\"row\">\n {`${state.ratingsScale.find(ratingScale => ratingScale.id === state.ratings.find(rating => rating.id === trekRating).scale).name} : ${\n state.ratings.find(rating => rating.id === trekRating).name\n }`}\n </div>\n ))}\n {this.currentTrek.ratings_description && this.currentTrek.ratings_description !== '' && <div class=\"row\">{this.currentTrek.ratings_description}</div>}\n </div>\n </div>\n <div class=\"divider\"></div>\n <div class=\"downloads-container\">\n <div class=\"download-title\">{translate[state.language].downloads}</div>\n <div class=\"links-container\">\n <a href={`${this.currentTrek.gpx}`} target=\"_blank\" rel=\"noopener noreferrer\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n download\n </span>\n GPX\n </a>\n <a href={`${this.currentTrek.kml}`} target=\"_blank\" rel=\"noopener noreferrer\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n download\n </span>\n KML\n </a>\n <a href={`${this.currentTrek.pdf}`} target=\"_blank\" rel=\"noopener noreferrer\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n download\n </span>\n PDF\n </a>\n </div>\n </div>\n <div class=\"divider\"></div>\n {this.currentTrek.description_teaser && <div class=\"description-teaser\" innerHTML={this.currentTrek.description_teaser}></div>}\n {this.currentTrek.ambiance && <div class=\"ambiance\" innerHTML={this.currentTrek.ambiance}></div>}\n {state.parentTrekId && state.parentTrek && this.currentTrek.id !== state.parentTrekId && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"parent-trek-container\">\n <button class=\"parent-trek-title\" onClick={() => this.parentTrekPress.emit(state.parentTrekId)}>\n <div><</div>\n {state.parentTrek.name}\n </button>\n </div>\n </div>\n )}\n {state.currentTrekSteps && (\n <div class=\"step-container\" ref={el => (this.stepsRef = el)}>\n <div class=\"step-title\">{`${state.currentTrekSteps.length} ${translate[state.language].steps}`}</div>\n <div class=\"swiper swiper-step\" ref={el => (this.swiperStepRef = el)}>\n <div class=\"swiper-wrapper\">\n {state.currentTrekSteps &&\n state.currentTrekSteps.map(trek => {\n return (\n <div class=\"swiper-slide\">\n <grw-trek-card\n reset-store-on-disconnected=\"false\"\n key={`trek-${trek.id}`}\n trek={trek}\n is-large-view={false}\n is-step={true}\n color-primary-app={this.colorPrimaryApp}\n color-on-surface={this.colorOnSurface}\n color-secondary-container={this.colorSecondaryContainer}\n color-on-secondary-container={this.colorOnSecondaryContainer}\n color-surface-container-low={this.colorSurfaceContainerLow}\n ></grw-trek-card>\n </div>\n );\n })}\n </div>\n </div>\n </div>\n )}\n <div class=\"divider\"></div>\n {this.currentTrek.description && (\n <div class=\"description-container\" ref={el => (this.descriptionRef = el)}>\n <div class=\"description-title\">{translate[state.language].description}</div>\n <div class=\"description\" innerHTML={this.currentTrek.description}></div>\n </div>\n )}\n {this.currentTrek.departure && (\n <div class=\"departure-container\">\n <div class=\"departure-title\">{translate[state.language].departure} : </div>\n <div innerHTML={this.currentTrek.departure}></div>\n </div>\n )}\n {this.currentTrek.arrival && (\n <div class=\"arrival-container\">\n <div class=\"arrival-title\">{translate[state.language].arrival} : </div>\n <div innerHTML={this.currentTrek.arrival}></div>\n </div>\n )}\n {this.currentTrek.cities && this.currentTrek.cities.length > 0 && (\n <div class=\"cities-container\">\n <div class=\"cities-title\">{translate[state.language].crossedCities} : </div>\n <div innerHTML={this.cities.join(', ')}></div>\n </div>\n )}\n {this.weather && this.currentTrek.departure_city && (\n <div class=\"weather-container\">\n <iframe height=\"150\" frameborder=\"0\" src={`https://meteofrance.com/widget/prevision/${this.currentTrek.departure_city}0#${this.colorPrimaryApp}`}></iframe>\n </div>\n )}\n {this.currentTrek.access && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"access-container\">\n <div class=\"access-title\">{translate[state.language].roadAccess}</div>\n <div class=\"access\" innerHTML={this.currentTrek.access}></div>\n </div>\n </div>\n )}\n {this.currentTrek.public_transport && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"public-transport-container\">\n <div class=\"public-transport-title\">{translate[state.language].transport}</div>\n <div class=\"public-transport\" innerHTML={this.currentTrek.public_transport}></div>\n </div>\n </div>\n )}\n {(this.currentTrek.advice || this.labels.length > 0) && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"advice-container\" ref={el => (this.recommendationRef = el)}>\n <div class=\"advice-title\">{translate[state.language].recommendations}</div>\n {this.currentTrek.advice && (\n <div class=\"current-advice-container\">\n {/* @ts-ignore */}\n <span translate={false} class=\"material-symbols material-symbols-outlined\">\n warning\n </span>\n <div class=\"advice\" innerHTML={this.currentTrek.advice}></div>\n </div>\n )}\n {this.labels.map(label => (\n <div class=\"label-container\">\n <div class=\"label-sub-container\">\n {label.pictogram && <img src={label.pictogram} />}\n <div class=\"label-name\" innerHTML={label.name}></div>\n </div>\n <div class=\"label-advice\" innerHTML={label.advice}></div>\n </div>\n ))}\n </div>\n </div>\n )}\n {this.currentTrek.advised_parking && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"advised-parking-container\" ref={el => (this.parkingRef = el)}>\n <div class=\"advised-parking-title\">{translate[state.language].recommendedParking}</div>\n <div class=\"advised-parking\" innerHTML={this.currentTrek.advised_parking}></div>\n </div>\n </div>\n )}\n {this.currentTrek.gear && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"gear-container\">\n <div class=\"gear-title\">{translate[state.language].equipments}</div>\n <div class=\"gear\" innerHTML={this.currentTrek.gear}></div>\n </div>\n </div>\n )}\n {state.currentSensitiveAreas && state.currentSensitiveAreas.length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"sensitive-areas-container\" ref={el => (this.sensitiveAreaRef = el)}>\n <div class=\"sensitive-areas-title\">{translate[state.language].environmentalSensitiveAreas}</div>\n {state.currentSensitiveAreas.map(sensitiveArea => (\n <grw-sensitive-area-detail sensitiveArea={sensitiveArea}></grw-sensitive-area-detail>\n ))}\n </div>\n </div>\n )}\n {state.currentInformationDesks &&\n state.currentInformationDesks.filter(currentInformationDesks => this.currentTrek.information_desks.includes(currentInformationDesks.id)).length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"information-desks-container\" ref={el => (this.informationDeskRef = el)}>\n <div class=\"information-desks-title\">{translate[state.language].informationPlaces}</div>\n <div class=\"swiper swiper-information-desks\" ref={el => (this.swiperInformationDesksRef = el)}>\n <div class=\"swiper-wrapper\">\n {state.currentInformationDesks\n .filter(currentInformationDesks => this.currentTrek.information_desks.includes(currentInformationDesks.id))\n .map(informationDesk => (\n <div class=\"swiper-slide\">\n <grw-information-desk informationDesk={informationDesk}></grw-information-desk>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n )}\n {(this.currentTrek.disabled_infrastructure ||\n (this.accessibilities && this.accessibilities.length > 0) ||\n this.currentTrek.accessibility_level ||\n this.currentTrek.accessibility_slope ||\n this.currentTrek.accessibility_width ||\n this.currentTrek.accessibility_signage ||\n this.currentTrek.accessibility_covering ||\n this.currentTrek.accessibility_exposure ||\n this.currentTrek.accessibility_advice) && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"accessibilities-container\">\n <div class=\"accessibilities-title\">{translate[state.language].accessibility}</div>\n {this.currentTrek.disabled_infrastructure && <div innerHTML={this.currentTrek.disabled_infrastructure}></div>}\n <div class=\"accessibilities-content-container\">\n {this.accessibilities.map(accessibility => (\n <div class=\"accessibility-content-container\">\n <img src={accessibility.pictogram}></img>\n <div innerHTML={accessibility.name}></div>\n </div>\n ))}\n </div>\n {this.currentTrek.accessibility_level && (\n <div class=\"accessibility-level-container\">\n <div class=\"accessibility-level-title\">{translate[state.language].accessibilityLevel}</div>\n <div innerHTML={this.accessibilityLevel.name}></div>\n </div>\n )}\n {this.currentTrek.accessibility_slope && (\n <div class=\"accessibility-slope-container\">\n <div class=\"accessibility-slope-title\">{translate[state.language].accessibilitySlope}</div>\n <div innerHTML={this.currentTrek.accessibility_slope}></div>\n </div>\n )}\n {this.currentTrek.accessibility_width && (\n <div class=\"accessibility-width-container\">\n <div class=\"accessibility-width-title\">{translate[state.language].accessibilityWidth}</div>\n <div innerHTML={this.currentTrek.accessibility_width}></div>\n </div>\n )}\n {this.currentTrek.accessibility_signage && (\n <div class=\"accessibility-signage-container\">\n <div class=\"accessibility-signage-title\">{translate[state.language].accessibilitySignage}</div>\n <div innerHTML={this.currentTrek.accessibility_signage}></div>\n </div>\n )}\n {this.currentTrek.accessibility_covering && (\n <div class=\"accessibility-covering-container\">\n <div class=\"accessibility-covering-title\">{translate[state.language].accessibilityCovering}</div>\n <div innerHTML={this.currentTrek.accessibility_covering}></div>\n </div>\n )}\n {this.currentTrek.accessibility_exposure && (\n <div class=\"accessibility-exposure-container\">\n <div class=\"accessibility-exposure-title\">{translate[state.language].accessibilityExposure}</div>\n <div innerHTML={this.currentTrek.accessibility_exposure}></div>\n </div>\n )}\n {this.currentTrek.accessibility_advice && (\n <div class=\"accessibility-advice-container\">\n <div class=\"accessibility-advice-title\">{translate[state.language].accessibilityAdvices}</div>\n <div innerHTML={this.currentTrek.accessibility_advice}></div>\n </div>\n )}\n </div>\n </div>\n )}\n {state.currentPois && state.currentPois.length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"pois-container\" ref={el => (this.poiRef = el)}>\n <div class=\"pois-title\">{translate[state.language].pois(state.currentPois.length)}</div>\n <div class=\"swiper swiper-pois\" ref={el => (this.swiperPoisRef = el)}>\n <div class=\"swiper-wrapper\">\n {state.currentPois.map(poi => (\n <div class=\"swiper-slide\">\n <grw-poi poi={poi}></grw-poi>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n )}\n {state.trekTouristicContents && state.trekTouristicContents.length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"touristic-content-container\" ref={el => (this.touristicContentsRef = el)}>\n <div class=\"touristic-content-title\">{translate[state.language].touristicContents(state.trekTouristicContents.length)}</div>\n <div class=\"swiper swiper-touristic-content\" ref={el => (this.swiperTouristicContentsRef = el)}>\n <div class=\"swiper-wrapper\">\n {state.trekTouristicContents.map(touristicContent => (\n <div class=\"swiper-slide\">\n <grw-touristic-content-card touristicContent={touristicContent} isInsideHorizontalList={true}></grw-touristic-content-card>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n )}\n {state.touristicEvents && state.touristicEvents.length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"touristic-event-container\" ref={el => (this.touristicEventsRef = el)}>\n <div class=\"touristic-event-title\">{translate[state.language].touristicEvents(state.touristicEvents.length)}</div>\n <div class=\"swiper swiper-touristic-event\" ref={el => (this.swiperTouristicEventsRef = el)}>\n <div class=\"swiper-wrapper\">\n {state.touristicEvents.map(touristicEvent => (\n <div class=\"swiper-slide\">\n <grw-touristic-event-card touristicEvent={touristicEvent}></grw-touristic-event-card>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n )}\n {this.currentTrek.source && this.currentTrek.source.length > 0 && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"source-container\">\n <div class=\"source-title\">{translate[state.language].sources}</div>\n {this.sources.map(source => (\n <div class=\"source-sub-container\">\n {source.pictogram && <img src={source.pictogram} />}\n <div>\n <div class=\"source-name\" innerHTML={source.name}></div>\n <a class=\"source-advice\" href={source.website} innerHTML={source.website}></a>\n </div>\n </div>\n ))}\n </div>\n </div>\n )}\n <div class=\"detail-bottom-space\"></div>\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
|
|
@@ -37,8 +37,9 @@ export class GrwTrekProvider {
|
|
|
37
37
|
? fetch(`${state.api}trek_accessibility/?language=${state.language}${this.portals ? '&portals='.concat(this.portals) : ''}&fields=id,name,pictogram`, this.init)
|
|
38
38
|
: new Response('null'));
|
|
39
39
|
requests.push(!state.ratings
|
|
40
|
-
? fetch(`${state.api}trek_rating/?language=${state.language}${this.portals ? '&portals='.concat(this.portals) : ''}&fields=id,name`, this.init)
|
|
40
|
+
? fetch(`${state.api}trek_rating/?language=${state.language}${this.portals ? '&portals='.concat(this.portals) : ''}&fields=id,name,scale`, this.init)
|
|
41
41
|
: new Response('null'));
|
|
42
|
+
requests.push(!state.ratings ? fetch(`${state.api}trek_ratingscale/?language=${state.language}&fields=id,name`, this.init) : new Response('null'));
|
|
42
43
|
Promise.all([
|
|
43
44
|
...requests,
|
|
44
45
|
fetch(`${this.api}sensitivearea/?language=${state.language}&published=true&trek=${this.trekId}&fields=id,geometry,name,description,contact,info_url,period,practices`, this.init)
|
|
@@ -66,7 +67,7 @@ export class GrwTrekProvider {
|
|
|
66
67
|
fetch(`${state.api}trek/${this.trekId}/?language=${state.language}&published=true&fields=id,name,attachments,description,description_teaser,difficulty,duration,ascent,length_2d,practice,themes,route,geometry,gpx,kml,pdf,parking_location,departure,departure_city,arrival,cities,ambiance,access,public_transport,advice,advised_parking,gear,labels,source,points_reference,disabled_infrastructure,accessibility_level,accessibility_slope,accessibility_width,accessibility_signage,accessibility_covering,accessibility_exposure,accessibility_advice,accessibilities,ratings,ratings_description,information_desks,children`, this.init),
|
|
67
68
|
])
|
|
68
69
|
.then(responses => Promise.all(responses.map(response => response.json())))
|
|
69
|
-
.then(async ([difficulties, routes, practices, themes, cities, accessibilities, ratings, sensitiveAreas, labels, sources, accessibilitiesLevel, pois, poiTypes, informationDesks, touristicContent, touristicContentCategory, touristicEvent, touristicEventType, trek,]) => {
|
|
70
|
+
.then(async ([difficulties, routes, practices, themes, cities, accessibilities, ratings, ratingsScale, sensitiveAreas, labels, sources, accessibilitiesLevel, pois, poiTypes, informationDesks, touristicContent, touristicContentCategory, touristicEvent, touristicEventType, trek,]) => {
|
|
70
71
|
state.trekNetworkError = false;
|
|
71
72
|
if (trek.children.length > 0 || state.parentTrekId) {
|
|
72
73
|
const steps = [];
|
|
@@ -107,6 +108,9 @@ export class GrwTrekProvider {
|
|
|
107
108
|
if (ratings) {
|
|
108
109
|
state.ratings = ratings.results;
|
|
109
110
|
}
|
|
111
|
+
if (ratingsScale) {
|
|
112
|
+
state.ratingsScale = ratingsScale.results;
|
|
113
|
+
}
|
|
110
114
|
if (sensitiveAreas) {
|
|
111
115
|
state.currentSensitiveAreas = sensitiveAreas.results;
|
|
112
116
|
}
|
|
Binary file
|
|
Binary file
|