@geotrekce/geotrek-rando-widget 0.5.2 → 0.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/dist/cjs/geotrek-rando-widget.cjs.js +1 -1
  2. package/dist/cjs/geotrek-rando-widget.cjs.js.br +0 -0
  3. package/dist/cjs/geotrek-rando-widget.cjs.js.gz +0 -0
  4. package/dist/cjs/grw-app_28.cjs.entry.js +570 -83
  5. package/dist/cjs/grw-app_28.cjs.entry.js.br +0 -0
  6. package/dist/cjs/grw-app_28.cjs.entry.js.gz +0 -0
  7. package/dist/cjs/grw-app_28.cjs.entry.js.map +1 -1
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/loader.cjs.js.br +0 -0
  10. package/dist/cjs/loader.cjs.js.gz +0 -0
  11. package/dist/collection/assets/parking.svg +5 -0
  12. package/dist/collection/assets/parking.svg.br +0 -0
  13. package/dist/collection/assets/parking.svg.gz +0 -0
  14. package/dist/collection/collection-manifest.json +2 -2
  15. package/dist/collection/components/grw-app/grw-app.css +8 -5
  16. package/dist/collection/components/grw-app/grw-app.css.br +0 -0
  17. package/dist/collection/components/grw-app/grw-app.css.gz +0 -0
  18. package/dist/collection/components/grw-app/grw-app.js +20 -1
  19. package/dist/collection/components/grw-app/grw-app.js.br +0 -0
  20. package/dist/collection/components/grw-app/grw-app.js.gz +0 -0
  21. package/dist/collection/components/grw-app/grw-app.js.map +1 -1
  22. package/dist/collection/components/grw-filters/grw-filters.js +1 -1
  23. package/dist/collection/components/grw-filters/grw-filters.js.br +0 -0
  24. package/dist/collection/components/grw-filters/grw-filters.js.gz +0 -0
  25. package/dist/collection/components/grw-filters/grw-filters.js.map +1 -1
  26. package/dist/collection/components/grw-information-desk/grw-information-desk.js +3 -1
  27. package/dist/collection/components/grw-information-desk/grw-information-desk.js.br +0 -0
  28. package/dist/collection/components/grw-information-desk/grw-information-desk.js.gz +0 -0
  29. package/dist/collection/components/grw-information-desk/grw-information-desk.js.map +1 -1
  30. package/dist/collection/components/grw-map/grw-map.css +14 -11
  31. package/dist/collection/components/grw-map/grw-map.css.br +0 -0
  32. package/dist/collection/components/grw-map/grw-map.css.gz +0 -0
  33. package/dist/collection/components/grw-map/grw-map.js +26 -16
  34. package/dist/collection/components/grw-map/grw-map.js.br +0 -0
  35. package/dist/collection/components/grw-map/grw-map.js.gz +0 -0
  36. package/dist/collection/components/grw-map/grw-map.js.map +1 -1
  37. package/dist/collection/components/grw-sensitive-area-detail/grw-sensitive-area-detail.css +27 -4
  38. package/dist/collection/components/grw-sensitive-area-detail/grw-sensitive-area-detail.css.br +0 -0
  39. package/dist/collection/components/grw-sensitive-area-detail/grw-sensitive-area-detail.css.gz +0 -0
  40. package/dist/collection/components/grw-sensitive-area-detail/grw-sensitive-area-detail.js +1 -1
  41. package/dist/collection/components/grw-sensitive-area-detail/grw-sensitive-area-detail.js.br +0 -0
  42. package/dist/collection/components/grw-sensitive-area-detail/grw-sensitive-area-detail.js.gz +0 -0
  43. package/dist/collection/components/grw-sensitive-area-detail/grw-sensitive-area-detail.js.map +1 -1
  44. package/dist/collection/components/{grw-touristic-content → grw-touristic-content-card}/grw-touristic-content-card.css +5 -2
  45. package/dist/collection/components/grw-touristic-content-card/grw-touristic-content-card.css.br +0 -0
  46. package/dist/collection/components/grw-touristic-content-card/grw-touristic-content-card.css.gz +0 -0
  47. package/dist/collection/components/grw-touristic-content-card/grw-touristic-content-card.js.map +1 -0
  48. package/dist/collection/components/grw-touristic-content-detail/grw-touristic-content-detail.js +1 -1
  49. package/dist/collection/components/grw-touristic-content-detail/grw-touristic-content-detail.js.br +0 -0
  50. package/dist/collection/components/grw-touristic-content-detail/grw-touristic-content-detail.js.gz +0 -0
  51. package/dist/collection/components/grw-touristic-content-detail/grw-touristic-content-detail.js.map +1 -1
  52. package/dist/collection/components/{grw-touristic-event → grw-touristic-event-card}/grw-touristic-event-card.css +0 -1
  53. package/dist/collection/components/grw-touristic-event-card/grw-touristic-event-card.css.br +0 -0
  54. package/dist/collection/components/{grw-touristic-event → grw-touristic-event-card}/grw-touristic-event-card.css.gz +0 -0
  55. package/dist/collection/components/grw-touristic-event-card/grw-touristic-event-card.js.map +1 -0
  56. package/dist/collection/components/grw-touristic-event-detail/grw-touristic-event-detail.js +1 -1
  57. package/dist/collection/components/grw-touristic-event-detail/grw-touristic-event-detail.js.br +0 -0
  58. package/dist/collection/components/grw-touristic-event-detail/grw-touristic-event-detail.js.gz +0 -0
  59. package/dist/collection/components/grw-touristic-event-detail/grw-touristic-event-detail.js.map +1 -1
  60. package/dist/collection/components/grw-trek-card/grw-trek-card.js +1 -1
  61. package/dist/collection/components/grw-trek-card/grw-trek-card.js.br +0 -0
  62. package/dist/collection/components/grw-trek-card/grw-trek-card.js.gz +0 -0
  63. package/dist/collection/components/grw-trek-detail/grw-trek-detail.css +169 -35
  64. package/dist/collection/components/grw-trek-detail/grw-trek-detail.css.br +0 -0
  65. package/dist/collection/components/grw-trek-detail/grw-trek-detail.css.gz +0 -0
  66. package/dist/collection/components/grw-trek-detail/grw-trek-detail.js +135 -44
  67. package/dist/collection/components/grw-trek-detail/grw-trek-detail.js.br +0 -0
  68. package/dist/collection/components/grw-trek-detail/grw-trek-detail.js.gz +0 -0
  69. package/dist/collection/components/grw-trek-detail/grw-trek-detail.js.map +1 -1
  70. package/dist/collection/i18n/i18n.js +16 -10
  71. package/dist/collection/i18n/i18n.js.br +0 -0
  72. package/dist/collection/i18n/i18n.js.gz +0 -0
  73. package/dist/collection/i18n/i18n.js.map +1 -1
  74. package/dist/collection/store/grw-trek-provider.js +8 -4
  75. package/dist/collection/store/grw-trek-provider.js.br +0 -0
  76. package/dist/collection/store/grw-trek-provider.js.gz +0 -0
  77. package/dist/collection/store/grw-trek-provider.js.map +1 -1
  78. package/dist/collection/store/store.js +1 -0
  79. package/dist/collection/store/store.js.br +0 -0
  80. package/dist/collection/store/store.js.gz +0 -0
  81. package/dist/collection/store/store.js.map +1 -1
  82. package/dist/collection/types/types.js.map +1 -1
  83. package/dist/collection/utils/utils.js +4 -1
  84. package/dist/collection/utils/utils.js.br +0 -0
  85. package/dist/collection/utils/utils.js.gz +0 -0
  86. package/dist/collection/utils/utils.js.map +1 -1
  87. package/dist/esm/geotrek-rando-widget.js +1 -1
  88. package/dist/esm/geotrek-rando-widget.js.br +0 -0
  89. package/dist/esm/geotrek-rando-widget.js.gz +0 -0
  90. package/dist/esm/grw-app_28.entry.js +570 -83
  91. package/dist/esm/grw-app_28.entry.js.br +0 -0
  92. package/dist/esm/grw-app_28.entry.js.gz +0 -0
  93. package/dist/esm/grw-app_28.entry.js.map +1 -1
  94. package/dist/esm/loader.js +1 -1
  95. package/dist/esm/loader.js.br +0 -0
  96. package/dist/esm/loader.js.gz +0 -0
  97. package/dist/esm-es5/geotrek-rando-widget.js +1 -1
  98. package/dist/esm-es5/geotrek-rando-widget.js.br +0 -0
  99. package/dist/esm-es5/geotrek-rando-widget.js.gz +0 -0
  100. package/dist/esm-es5/geotrek-rando-widget.js.map +1 -1
  101. package/dist/esm-es5/grw-app_28.entry.js +4 -4
  102. package/dist/esm-es5/grw-app_28.entry.js.br +0 -0
  103. package/dist/esm-es5/grw-app_28.entry.js.gz +0 -0
  104. package/dist/esm-es5/grw-app_28.entry.js.map +1 -1
  105. package/dist/esm-es5/loader.js +1 -1
  106. package/dist/esm-es5/loader.js.br +0 -0
  107. package/dist/esm-es5/loader.js.gz +0 -0
  108. package/dist/esm-es5/loader.js.map +1 -1
  109. package/dist/geotrek-rando-widget/assets/parking.svg +5 -0
  110. package/dist/geotrek-rando-widget/assets/parking.svg.br +0 -0
  111. package/dist/geotrek-rando-widget/assets/parking.svg.gz +0 -0
  112. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js +1 -1
  113. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.br +0 -0
  114. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.gz +0 -0
  115. package/dist/geotrek-rando-widget/geotrek-rando-widget.esm.js.map +1 -1
  116. package/dist/geotrek-rando-widget/p-4c1b31d8.system.entry.js +15 -0
  117. package/dist/geotrek-rando-widget/p-4c1b31d8.system.entry.js.br +0 -0
  118. package/dist/geotrek-rando-widget/p-4c1b31d8.system.entry.js.gz +0 -0
  119. package/dist/geotrek-rando-widget/p-4c1b31d8.system.entry.js.map +1 -0
  120. package/dist/geotrek-rando-widget/{p-37932796.entry.js → p-619b9cda.entry.js} +5 -5
  121. package/dist/geotrek-rando-widget/p-619b9cda.entry.js.br +0 -0
  122. package/dist/geotrek-rando-widget/p-619b9cda.entry.js.gz +0 -0
  123. package/dist/geotrek-rando-widget/p-619b9cda.entry.js.map +1 -0
  124. package/dist/geotrek-rando-widget/p-cea4d6a2.system.js +1 -1
  125. package/dist/geotrek-rando-widget/p-cea4d6a2.system.js.br +0 -0
  126. package/dist/geotrek-rando-widget/p-cea4d6a2.system.js.gz +0 -0
  127. package/dist/geotrek-rando-widget/p-cea4d6a2.system.js.map +1 -1
  128. package/dist/types/components/grw-app/grw-app.d.ts +1 -0
  129. package/dist/types/components/grw-map/grw-map.d.ts +1 -0
  130. package/dist/types/components/grw-trek-detail/grw-trek-detail.d.ts +26 -1
  131. package/dist/types/components.d.ts +4 -0
  132. package/dist/types/i18n/i18n.d.ts +5 -2
  133. package/dist/types/store/store.d.ts +3 -1
  134. package/dist/types/types/types.d.ts +21 -1
  135. package/dist/types/utils/utils.d.ts +1 -0
  136. package/package.json +2 -1
  137. package/dist/collection/components/grw-touristic-content/grw-touristic-content-card.css.br +0 -0
  138. package/dist/collection/components/grw-touristic-content/grw-touristic-content-card.css.gz +0 -0
  139. package/dist/collection/components/grw-touristic-content/grw-touristic-content-card.js.map +0 -1
  140. package/dist/collection/components/grw-touristic-event/grw-touristic-event-card.css.br +0 -0
  141. package/dist/collection/components/grw-touristic-event/grw-touristic-event-card.js.map +0 -1
  142. package/dist/geotrek-rando-widget/p-37932796.entry.js.br +0 -0
  143. package/dist/geotrek-rando-widget/p-37932796.entry.js.gz +0 -0
  144. package/dist/geotrek-rando-widget/p-37932796.entry.js.map +0 -1
  145. package/dist/geotrek-rando-widget/p-46c11f88.system.entry.js +0 -15
  146. package/dist/geotrek-rando-widget/p-46c11f88.system.entry.js.br +0 -0
  147. package/dist/geotrek-rando-widget/p-46c11f88.system.entry.js.gz +0 -0
  148. package/dist/geotrek-rando-widget/p-46c11f88.system.entry.js.map +0 -1
  149. /package/dist/collection/components/{grw-touristic-content → grw-touristic-content-card}/grw-touristic-content-card.js +0 -0
  150. /package/dist/collection/components/{grw-touristic-content → grw-touristic-content-card}/grw-touristic-content-card.js.br +0 -0
  151. /package/dist/collection/components/{grw-touristic-content → grw-touristic-content-card}/grw-touristic-content-card.js.gz +0 -0
  152. /package/dist/collection/components/{grw-touristic-event → grw-touristic-event-card}/grw-touristic-event-card.js +0 -0
  153. /package/dist/collection/components/{grw-touristic-event → grw-touristic-event-card}/grw-touristic-event-card.js.br +0 -0
  154. /package/dist/collection/components/{grw-touristic-event → grw-touristic-event-card}/grw-touristic-event-card.js.gz +0 -0
  155. /package/dist/types/components/{grw-touristic-content → grw-touristic-content-card}/grw-touristic-content-card.d.ts +0 -0
  156. /package/dist/types/components/{grw-touristic-event → grw-touristic-event-card}/grw-touristic-event-card.d.ts +0 -0
@@ -7,17 +7,39 @@
7
7
  color: var(--color-primary-app);
8
8
  }
9
9
 
10
- .sensitive-area-title {
11
- font-size: 22px;
10
+ .sensitive-area-title-container {
11
+ display: flex;
12
+ align-items: center;
13
+ }
14
+ .sensitive-area-title-container .sensitive-area-color-container {
15
+ width: 20px;
16
+ height: 20px;
17
+ margin-right: 8px;
18
+ border: 3px solid var(--color-sensitive-area);
19
+ position: relative;
20
+ }
21
+ .sensitive-area-title-container .sensitive-area-color-container:before {
22
+ content: "";
23
+ width: 20px;
24
+ height: 20px;
25
+ background-color: var(--color-sensitive-area);
26
+ opacity: 0.2;
27
+ position: absolute;
28
+ }
29
+ .sensitive-area-title-container .sensitive-area-title {
30
+ font-size: 20px;
12
31
  line-height: 28px;
13
32
  padding: 12px 0px;
14
- font-weight: 400;
33
+ font-weight: 600;
15
34
  }
16
35
 
17
36
  .sensitive-area-description {
18
37
  font-size: 16px;
19
38
  line-height: 24px;
20
39
  }
40
+ .sensitive-area-description p:first-child {
41
+ margin-top: 0;
42
+ }
21
43
 
22
44
  .sensitive-area-period-container .sensitive-area-period-title,
23
45
  .sensitive-area-period-container .sensitive-area-practice-title,
@@ -28,9 +50,10 @@
28
50
  .sensitive-area-contact-container .sensitive-area-period-title,
29
51
  .sensitive-area-contact-container .sensitive-area-practice-title,
30
52
  .sensitive-area-contact-container .sensitive-area-contact-title {
31
- font-size: 16px;
53
+ font-size: 18px;
32
54
  line-height: 24px;
33
55
  padding: 12px 0px;
56
+ font-weight: 600;
34
57
  }
35
58
  .sensitive-area-period-container .sensitive-area-period-values,
36
59
  .sensitive-area-period-container .sensitive-area-practice-values,
@@ -5,7 +5,7 @@ export class GrwSensitiveAreaDetail {
5
5
  this.sensitiveArea = undefined;
6
6
  }
7
7
  render() {
8
- return (h(Host, null, h("div", { class: "sensitive-area-title" }, this.sensitiveArea.name), h("div", { class: "sensitive-area-description", innerHTML: this.sensitiveArea.description }), this.sensitiveArea.practices && this.sensitiveArea.practices.length > 0 && (h("div", { class: "sensitive-area-practice-container" }, h("div", { class: "sensitive-area-practice-title" }, "Domaines d'activit\u00E9s concern\u00E9s :"), h("div", { class: "sensitive-area-practice-values" }, this.sensitiveArea.practices.map((sensitiveAreaPractice, index) => {
8
+ return (h(Host, null, h("div", { class: "sensitive-area-title-container" }, h("div", { class: "sensitive-area-color-container" }), h("div", { class: "sensitive-area-title" }, this.sensitiveArea.name)), h("div", { class: "sensitive-area-description", innerHTML: this.sensitiveArea.description }), this.sensitiveArea.practices && this.sensitiveArea.practices.length > 0 && (h("div", { class: "sensitive-area-practice-container" }, h("div", { class: "sensitive-area-practice-title" }, "Domaines d'activit\u00E9s concern\u00E9s"), h("div", { class: "sensitive-area-practice-values" }, this.sensitiveArea.practices.map((sensitiveAreaPractice, index) => {
9
9
  const practice = state.practices.find(statePractice => statePractice.id === sensitiveAreaPractice);
10
10
  if (practice) {
11
11
  return h("div", { innerHTML: `${practice.name.toUpperCase()}${index + 1 !== this.sensitiveArea.practices.length ? ' - ' : ''}` });
@@ -1 +1 @@
1
- {"version":3,"file":"grw-sensitive-area-detail.js","sourceRoot":"","sources":["../../../src/components/grw-sensitive-area-detail/grw-sensitive-area-detail.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,MAAM,aAAa,CAAC;AAQhC,MAAM,OAAO,sBAAsB;;;;EAGjC,MAAM;IACJ,OAAO,CACL,EAAC,IAAI;MACH,WAAK,KAAK,EAAC,sBAAsB,IAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAO;MACjE,WAAK,KAAK,EAAC,4BAA4B,EAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,WAAW,GAAQ;MACxF,IAAI,CAAC,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1E,WAAK,KAAK,EAAC,mCAAmC;QAC5C,WAAK,KAAK,EAAC,+BAA+B,iDAAuC;QACjF,WAAK,KAAK,EAAC,gCAAgC,IACxC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,qBAAqB,EAAE,KAAK,EAAE,EAAE;UACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,KAAK,qBAAqB,CAAC,CAAC;UACnG,IAAI,QAAQ,EAAE;YACZ,OAAO,WAAK,SAAS,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,GAAQ,CAAC;WACvI;QACH,CAAC,CAAC,CACE,CACF,CACP;MACA,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CACpE,WAAK,KAAK,EAAC,iCAAiC;QAC1C,WAAK,KAAK,EAAC,6BAA6B,wCAA8B;QACtE,WAAK,KAAK,EAAC,8BAA8B,IACtC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;UAC9C,IAAI,KAAK,EAAE;YACT,OAAO,CACL,WACE,SAAS,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE,GAC/F,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EACjF,EAAE,GACG,CACR,CAAC;WACH;QACH,CAAC,CAAC,CACE,CACF,CACP;MACD,WAAK,KAAK,EAAC,kCAAkC;QAC3C,WAAK,KAAK,EAAC,8BAA8B,cAAc;QACvD,WAAK,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,EAAC,8BAA8B,GAAO,CACnF,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Host, h, Prop } from '@stencil/core';\nimport state from 'store/store';\nimport { SensitiveArea } from 'types/types';\n\n@Component({\n tag: 'grw-sensitive-area-detail',\n styleUrl: 'grw-sensitive-area-detail.scss',\n shadow: true,\n})\nexport class GrwSensitiveAreaDetail {\n @Prop() sensitiveArea: SensitiveArea;\n\n render() {\n return (\n <Host>\n <div class=\"sensitive-area-title\">{this.sensitiveArea.name}</div>\n <div class=\"sensitive-area-description\" innerHTML={this.sensitiveArea.description}></div>\n {this.sensitiveArea.practices && this.sensitiveArea.practices.length > 0 && (\n <div class=\"sensitive-area-practice-container\">\n <div class=\"sensitive-area-practice-title\">Domaines d'activités concernés :</div>\n <div class=\"sensitive-area-practice-values\">\n {this.sensitiveArea.practices.map((sensitiveAreaPractice, index) => {\n const practice = state.practices.find(statePractice => statePractice.id === sensitiveAreaPractice);\n if (practice) {\n return <div innerHTML={`${practice.name.toUpperCase()}${index + 1 !== this.sensitiveArea.practices.length ? ' -&nbsp;' : ''}`}></div>;\n }\n })}\n </div>\n </div>\n )}\n {this.sensitiveArea.period && this.sensitiveArea.period.length > 0 && (\n <div class=\"sensitive-area-period-container\">\n <div class=\"sensitive-area-period-title\">Périodes de sensibilité</div>\n <div class=\"sensitive-area-period-values\">\n {this.sensitiveArea.period.map((month, index) => {\n if (month) {\n return (\n <div\n innerHTML={`${new Date(0, index + 1, 0).toLocaleDateString('fr', { month: 'long' }).toUpperCase()}${\n this.sensitiveArea.period.slice(index + 1).find(month => month) ? ' -&nbsp;' : ''\n }`}\n ></div>\n );\n }\n })}\n </div>\n </div>\n )}\n <div class=\"sensitive-area-contact-container\">\n <div class=\"sensitive-area-contact-title\">Contact</div>\n <div innerHTML={this.sensitiveArea.contact} class=\"sensitive-area-contact-value\"></div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"grw-sensitive-area-detail.js","sourceRoot":"","sources":["../../../src/components/grw-sensitive-area-detail/grw-sensitive-area-detail.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,MAAM,aAAa,CAAC;AAQhC,MAAM,OAAO,sBAAsB;;;;EAGjC,MAAM;IACJ,OAAO,CACL,EAAC,IAAI;MACH,WAAK,KAAK,EAAC,gCAAgC;QACzC,WAAK,KAAK,EAAC,gCAAgC,GAAO;QAClD,WAAK,KAAK,EAAC,sBAAsB,IAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAO,CAC7D;MAEN,WAAK,KAAK,EAAC,4BAA4B,EAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,WAAW,GAAQ;MACxF,IAAI,CAAC,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1E,WAAK,KAAK,EAAC,mCAAmC;QAC5C,WAAK,KAAK,EAAC,+BAA+B,+CAAqC;QAC/E,WAAK,KAAK,EAAC,gCAAgC,IACxC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,qBAAqB,EAAE,KAAK,EAAE,EAAE;UACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,KAAK,qBAAqB,CAAC,CAAC;UACnG,IAAI,QAAQ,EAAE;YACZ,OAAO,WAAK,SAAS,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,GAAQ,CAAC;WACvI;QACH,CAAC,CAAC,CACE,CACF,CACP;MACA,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CACpE,WAAK,KAAK,EAAC,iCAAiC;QAC1C,WAAK,KAAK,EAAC,6BAA6B,wCAA8B;QACtE,WAAK,KAAK,EAAC,8BAA8B,IACtC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;UAC9C,IAAI,KAAK,EAAE;YACT,OAAO,CACL,WACE,SAAS,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE,GAC/F,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EACjF,EAAE,GACG,CACR,CAAC;WACH;QACH,CAAC,CAAC,CACE,CACF,CACP;MACD,WAAK,KAAK,EAAC,kCAAkC;QAC3C,WAAK,KAAK,EAAC,8BAA8B,cAAc;QACvD,WAAK,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,EAAC,8BAA8B,GAAO,CACnF,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Host, h, Prop } from '@stencil/core';\nimport state from 'store/store';\nimport { SensitiveArea } from 'types/types';\n\n@Component({\n tag: 'grw-sensitive-area-detail',\n styleUrl: 'grw-sensitive-area-detail.scss',\n shadow: true,\n})\nexport class GrwSensitiveAreaDetail {\n @Prop() sensitiveArea: SensitiveArea;\n\n render() {\n return (\n <Host>\n <div class=\"sensitive-area-title-container\">\n <div class=\"sensitive-area-color-container\"></div>\n <div class=\"sensitive-area-title\">{this.sensitiveArea.name}</div>\n </div>\n\n <div class=\"sensitive-area-description\" innerHTML={this.sensitiveArea.description}></div>\n {this.sensitiveArea.practices && this.sensitiveArea.practices.length > 0 && (\n <div class=\"sensitive-area-practice-container\">\n <div class=\"sensitive-area-practice-title\">Domaines d'activités concernés</div>\n <div class=\"sensitive-area-practice-values\">\n {this.sensitiveArea.practices.map((sensitiveAreaPractice, index) => {\n const practice = state.practices.find(statePractice => statePractice.id === sensitiveAreaPractice);\n if (practice) {\n return <div innerHTML={`${practice.name.toUpperCase()}${index + 1 !== this.sensitiveArea.practices.length ? ' -&nbsp;' : ''}`}></div>;\n }\n })}\n </div>\n </div>\n )}\n {this.sensitiveArea.period && this.sensitiveArea.period.length > 0 && (\n <div class=\"sensitive-area-period-container\">\n <div class=\"sensitive-area-period-title\">Périodes de sensibilité</div>\n <div class=\"sensitive-area-period-values\">\n {this.sensitiveArea.period.map((month, index) => {\n if (month) {\n return (\n <div\n innerHTML={`${new Date(0, index + 1, 0).toLocaleDateString('fr', { month: 'long' }).toUpperCase()}${\n this.sensitiveArea.period.slice(index + 1).find(month => month) ? ' -&nbsp;' : ''\n }`}\n ></div>\n );\n }\n })}\n </div>\n </div>\n )}\n <div class=\"sensitive-area-contact-container\">\n <div class=\"sensitive-area-contact-title\">Contact</div>\n <div innerHTML={this.sensitiveArea.contact} class=\"sensitive-area-contact-value\"></div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -539,7 +539,7 @@ button.swiper-pagination-bullet {
539
539
  .touristic-content-type-img-container .default-touristic-content-img {
540
540
  width: 100%;
541
541
  height: 100%;
542
- max-height: 200px;
542
+ max-height: 150px;
543
543
  object-fit: cover;
544
544
  }
545
545
  .touristic-content-type-img-container .touristic-content-img {
@@ -629,7 +629,6 @@ button.swiper-pagination-bullet {
629
629
 
630
630
  .touristic-content-card-container,
631
631
  .touristic-content-card-large-view-container {
632
- cursor: pointer;
633
632
  font-family: var(--font-family);
634
633
  border-radius: var(--border-radius, 12px);
635
634
  box-shadow: var(--elevation-1);
@@ -666,6 +665,10 @@ button.swiper-pagination-bullet {
666
665
  cursor: pointer;
667
666
  border: none;
668
667
  }
668
+ .is-inside-vertical-list .touristic-event-img,
669
+ .is-inside-vertical-list .default-touristic-event-img {
670
+ max-height: 200px;
671
+ }
669
672
 
670
673
  .selected-touristic-content-card {
671
674
  box-shadow: var(--elevation-2);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grw-touristic-content-card.js","sourceRoot":"","sources":["../../../src/components/grw-touristic-content-card/grw-touristic-content-card.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Build, Component, Host, getAssetPath, h, State, Prop, Event, EventEmitter, Listen } from '@stencil/core';\nimport state from 'store/store';\nimport Swiper, { Keyboard, Navigation, Pagination } from 'swiper';\nimport { TouristicContent } from 'types/types';\n\n@Component({\n tag: 'grw-touristic-content-card',\n styleUrl: 'grw-touristic-content-card.scss',\n shadow: true,\n})\nexport class GrwTouristicContentCard {\n @Event() touristicContentCardPress: EventEmitter<number>;\n swiperTouristicContent?: Swiper;\n swiperTouristicContentRef?: HTMLDivElement;\n prevElTouristicContentRef?: HTMLDivElement;\n nextElTouristicContentRef?: HTMLDivElement;\n paginationElTouristicContentRef?: HTMLDivElement;\n\n @Prop() fontFamily = 'Roboto';\n\n @Prop() touristicContent: TouristicContent;\n @Prop() isLargeView = false;\n @Prop() isInsideHorizontalList = false;\n @State() displayFullscreen = false;\n\n @Event() cardTouristicContentMouseOver: EventEmitter<number>;\n @Event() cardTouristicContentMouseLeave: EventEmitter;\n\n componentDidLoad() {\n if (this.swiperTouristicContentRef) {\n this.swiperTouristicContent = new Swiper(this.swiperTouristicContentRef, {\n modules: [Navigation, Pagination, Keyboard],\n navigation: {\n prevEl: this.prevElTouristicContentRef,\n nextEl: this.nextElTouristicContentRef,\n },\n pagination: { el: this.paginationElTouristicContentRef },\n allowTouchMove: false,\n keyboard: false,\n });\n this.swiperTouristicContentRef.onfullscreenchange = () => {\n this.displayFullscreen = !this.displayFullscreen;\n if (this.displayFullscreen) {\n this.swiperTouristicContent.keyboard.enable();\n } else {\n this.swiperTouristicContent.keyboard.disable();\n }\n };\n }\n }\n\n handleFullscreen() {\n if (this.touristicContent.attachments && this.touristicContent.attachments[0] && this.touristicContent.attachments[0].url) {\n this.swiperTouristicContentRef.requestFullscreen();\n }\n }\n\n @Listen('mouseover')\n handleMouseOver() {\n this.cardTouristicContentMouseOver.emit(this.touristicContent.id);\n }\n\n @Listen('mouseleave')\n handleMouseLeave() {\n this.cardTouristicContentMouseLeave.emit();\n }\n\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n const touristicContentCategory = state.touristicContentCategories.find(touristicContentCategory => touristicContentCategory.id === this.touristicContent.category);\n return (\n <Host\n style={{\n '--font-family': this.fontFamily,\n 'width': this.isLargeView ? '100%' : 'auto',\n }}\n >\n <div\n class={\n this.isLargeView\n ? `touristic-content-card-large-view-container${state.selectedTouristicContentId === this.touristicContent.id ? ' selected-touristic-content-card' : ''}${\n !this.isInsideHorizontalList ? ' is-inside-vertical-list' : ''\n }`\n : `touristic-content-card-container${state.selectedTouristicContentId === this.touristicContent.id ? ' selected-touristic-content-card' : ''}${\n !this.isInsideHorizontalList ? ' is-inside-vertical-list' : ''\n }`\n }\n onClick={() => {\n if (!this.isInsideHorizontalList) {\n this.touristicContentCardPress.emit(this.touristicContent.id);\n }\n }}\n >\n <div class=\"touristic-content-type-img-container\">\n {this.isInsideHorizontalList ? (\n <div class=\"swiper\" ref={el => (this.swiperTouristicContentRef = el)}>\n <div class=\"swiper-wrapper\">\n {this.touristicContent.attachments.filter(attachment => attachment.type === 'image').length > 0 ? (\n this.touristicContent.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n class={`touristic-content-img${this.displayFullscreen ? ' img-fullscreen' : ''}`}\n src={this.displayFullscreen ? attachment.url : attachment.thumbnail}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"default-touristic-content-img\"\n src={defaultImageSrc}\n loading=\"lazy\"\n />\n </div>\n )}\n </div>\n <div class=\"swiper-pagination\" ref={el => (this.paginationElTouristicContentRef = el)}></div>\n <div class=\"swiper-button-prev\" ref={el => (this.prevElTouristicContentRef = el)}></div>\n <div class=\"swiper-button-next\" ref={el => (this.nextElTouristicContentRef = el)}></div>\n </div>\n ) : this.touristicContent.attachments.filter(attachment => attachment.type === 'image').length > 0 ? (\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"image\"\n src={`${this.touristicContent.attachments.filter(attachment => attachment.type === 'image')[0].thumbnail}`}\n loading=\"lazy\"\n />\n ) : (\n <div></div>\n )}\n </div>\n <div class=\"touristic-content-sub-container\">\n <div class=\"touristic-content-category-container\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n src={touristicContentCategory.pictogram}\n />\n <div class=\"touristic-content-category-name\">{touristicContentCategory.label}</div>\n </div>\n <div class=\"touristic-content-name\">{this.touristicContent.name}</div>\n </div>\n {this.isInsideHorizontalList && (\n <div class=\"touristic-content-more-detail-container\">\n <button class=\"more-details-button\" onClick={() => this.touristicContentCardPress.emit(this.touristicContent.id)}>\n Plus de détails\n </button>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -54,7 +54,7 @@ export class GrwTouristicContentDetail {
54
54
  '--color-secondary-container': this.colorSecondaryContainer,
55
55
  '--color-on-secondary-container': this.colorOnSecondaryContainer,
56
56
  '--color-background': this.colorBackground,
57
- '--detail-bottom-space-height': this.isLargeView ? '8px' : '104px',
57
+ '--detail-bottom-space-height': this.isLargeView ? '8px' : '152px',
58
58
  } }, state.currentTouristicContent && (h("div", { class: "touristic-content-detail-container", ref: el => (this.touristicContentDetailContainerRef = el) }, h("div", { class: "images-container", ref: el => (this.presentationRef = el) }, h("div", { class: "swiper swiper-images", ref: el => (this.swiperImagesRef = el) }, h("div", { class: "swiper-wrapper" }, state.currentTouristicContent.attachments.length > 0 ? (state.currentTouristicContent.attachments
59
59
  .filter(attachment => attachment.type === 'image')
60
60
  .map(attachment => (h("div", { class: "swiper-slide" }, h("img", {
@@ -1 +1 @@
1
- {"version":3,"file":"grw-touristic-content-detail.js","sourceRoot":"","sources":["../../../src/components/grw-touristic-content-detail/grw-touristic-content-detail.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAOxF,MAAM,OAAO,yBAAyB;;6BAQP,KAAK;sBAEb,QAAQ;2BACH,SAAS;0BACV,SAAS;iCACF,SAAS;mCACP,SAAS;mCACT,SAAS;qCACP,SAAS;oCACV,SAAS;2BAClB,SAAS;uBACb,KAAK;;EAK3B,gBAAgB;IACd,IAAI,IAAI,CAAC,eAAe,EAAE;MACxB,IAAI,CAAC,YAAY,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;QACnD,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC;QACjE,UAAU,EAAE;UACV,MAAM,EAAE,IAAI,CAAC,eAAe;UAC5B,MAAM,EAAE,IAAI,CAAC,eAAe;SAC7B;QACD,UAAU,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,qBAAqB,EAAE;QAC9C,cAAc,EAAE,KAAK;QACrB,QAAQ,EAAE,KAAK;OAChB,CAAC,CAAC;MACH,IAAI,CAAC,eAAe,CAAC,kBAAkB,GAAG,GAAG,EAAE;QAC7C,IAAI,CAAC,iBAAiB,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC;QACjD,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;MACtG,CAAC,CAAC;KACH;EACH,CAAC;EAED,gBAAgB;IACd,IAAI,KAAK,CAAC,uBAAuB,CAAC,WAAW,IAAI,KAAK,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;MACjJ,IAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,CAAC;KAC1C;EACH,CAAC;EAED,MAAM;IACJ,MAAM,eAAe,GAAG,YAAY,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC;IAC1F,MAAM,wBAAwB,GAC5B,KAAK,CAAC,0BAA0B;MAChC,KAAK,CAAC,uBAAuB;MAC7B,KAAK,CAAC,0BAA0B,CAAC,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,wBAAwB,CAAC,EAAE,KAAK,KAAK,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAC5I,MAAM,MAAM,GAAG,KAAK,CAAC,uBAAuB,IAAI,KAAK,CAAC,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,WAAC,OAAA,MAAA,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC,0CAAE,IAAI,CAAA,EAAA,CAAC,CAAC;IAClK,OAAO,CACL,EAAC,IAAI,IACH,KAAK,EAAE;QACL,eAAe,EAAE,IAAI,CAAC,UAAU;QAChC,qBAAqB,EAAE,IAAI,CAAC,eAAe;QAC3C,oBAAoB,EAAE,IAAI,CAAC,cAAc;QACzC,2BAA2B,EAAE,IAAI,CAAC,qBAAqB;QACvD,8BAA8B,EAAE,IAAI,CAAC,uBAAuB;QAC5D,6BAA6B,EAAE,IAAI,CAAC,uBAAuB;QAC3D,gCAAgC,EAAE,IAAI,CAAC,yBAAyB;QAChE,oBAAoB,EAAE,IAAI,CAAC,eAAe;QAC1C,8BAA8B,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO;OACnE,IAEA,KAAK,CAAC,uBAAuB,IAAI,CAChC,WAAK,KAAK,EAAC,oCAAoC,EAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,kCAAkC,GAAG,EAAE,CAAC;MACvG,WAAK,KAAK,EAAC,kBAAkB,EAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAClE,WAAK,KAAK,EAAC,sBAAsB,EAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;UACtE,WAAK,KAAK,EAAC,gBAAgB,IACxB,KAAK,CAAC,uBAAuB,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACtD,KAAK,CAAC,uBAAuB,CAAC,WAAW;aACtC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,CAAC;aACjD,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CACjB,WAAK,KAAK,EAAC,cAAc;YACvB;cACE,gBAAgB;cAChB,WAAW,EAAC,WAAW,EACvB,KAAK,EAAC,OAAO,EACb,GAAG,EAAE,UAAU,CAAC,GAAG,EACnB,OAAO,EAAC,MAAM,EACd,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,GACtC,CACE,CACP,CAAC,CACL,CAAC,CAAC,CAAC,CACF,WAAK,KAAK,EAAC,cAAc;YACvB;cACE,gBAAgB;cAChB,WAAW,EAAC,WAAW,EACvB,KAAK,EAAC,iBAAiB,EACvB,GAAG,EAAE,eAAe,EACpB,OAAO,EAAC,MAAM,GACd,CACE,CACP,CACG;UACN,WAAK,KAAK,EAAC,mBAAmB,EAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC,GAAQ;UACnF,WAAK,KAAK,EAAC,oBAAoB,EAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,GAAQ;UAC9E,WAAK,KAAK,EAAC,oBAAoB,EAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,GAAQ,CAC1E,CACF;MACN,WAAK,KAAK,EAAC,sCAAsC;QAC/C;UACE,gBAAgB;UAChB,WAAW,EAAC,WAAW,EACvB,GAAG,EAAE,wBAAwB,CAAC,SAAS,GACvC;QACF,WAAK,KAAK,EAAC,iCAAiC,IAAE,wBAAwB,CAAC,KAAK,CAAO,CAC/E;MACN,WAAK,KAAK,EAAC,MAAM,IAAE,KAAK,CAAC,uBAAuB,CAAC,IAAI,CAAO;MAC5D,WAAK,KAAK,EAAC,SAAS,GAAO;MAC3B,WAAK,KAAK,EAAC,qBAAqB;QAC9B,WAAK,KAAK,EAAC,gBAAgB,IAAE,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAO;QACtE,WAAK,KAAK,EAAC,iBAAiB;UAC1B,SAAG,IAAI,EAAE,GAAG,KAAK,CAAC,uBAAuB,CAAC,GAAG,EAAE,EAAE,MAAM,EAAC,QAAQ,EAAC,GAAG,EAAC,qBAAqB;YAExF,YAAM,SAAS,EAAE,KAAK,EAAE,KAAK,EAAC,4CAA4C,eAEnE;kBAEL,CACA,CACF;MACL,KAAK,CAAC,uBAAuB,CAAC,kBAAkB,IAAI,CACnD;QACE,WAAK,KAAK,EAAC,SAAS,GAAO;QAC3B,WAAK,KAAK,EAAC,oBAAoB,EAAC,SAAS,EAAE,KAAK,CAAC,uBAAuB,CAAC,kBAAkB,GAAQ,CAC/F,CACP;MACD,WAAK,KAAK,EAAC,SAAS,GAAO;MAC1B,KAAK,CAAC,uBAAuB,CAAC,cAAc,IAAI,CAC/C,WAAK,KAAK,EAAC,uBAAuB,EAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACtE,WAAK,KAAK,EAAC,mBAAmB,IAAE,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAO;QAC5E,WAAK,KAAK,EAAC,aAAa,EAAC,SAAS,EAAE,KAAK,CAAC,uBAAuB,CAAC,WAAW,GAAQ,CACjF,CACP;MACA,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAC9B,WAAK,KAAK,EAAC,kBAAkB;QAC3B,WAAK,KAAK,EAAC,cAAc;UAAE,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI;qBAAe;QACxE,WAAK,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAQ,CACrC,CACP;MACA,KAAK,CAAC,uBAAuB,CAAC,cAAc,IAAI,CAC/C;QACE,WAAK,KAAK,EAAC,SAAS,GAAO;QAC3B,WAAK,KAAK,EAAC,8BAA8B;UACvC,WAAK,KAAK,EAAC,0BAA0B;YAAE,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,iBAAiB;uBAAe;UACjG,WAAK,SAAS,EAAE,KAAK,CAAC,uBAAuB,CAAC,cAAc,GAAQ,CAChE,CACF,CACP;MACA,CAAC,KAAK,CAAC,uBAAuB,CAAC,OAAO,IAAI,KAAK,CAAC,uBAAuB,CAAC,KAAK,IAAI,KAAK,CAAC,uBAAuB,CAAC,OAAO,CAAC,IAAI,CAC1H;QACE,WAAK,KAAK,EAAC,SAAS,GAAO;QAE3B,WAAK,KAAK,EAAC,mBAAmB;UAC5B,WAAK,KAAK,EAAC,eAAe;YAAE,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO;uBAAe;UAC3E,KAAK,CAAC,uBAAuB,CAAC,OAAO,IAAI,WAAK,SAAS,EAAE,KAAK,CAAC,uBAAuB,CAAC,OAAO,GAAQ;UACtG,KAAK,CAAC,uBAAuB,CAAC,KAAK,IAAI,CACtC,WAAK,KAAK,EAAC,iBAAiB;YAC1B;cAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK;yBAAe;YACpD,WAAK,SAAS,EAAE,KAAK,CAAC,uBAAuB,CAAC,KAAK,GAAQ,CACvD,CACP;UACA,KAAK,CAAC,uBAAuB,CAAC,OAAO,IAAI,CACxC,WAAK,KAAK,EAAC,mBAAmB;YAC5B;cAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO;yBAAe;YACtD,WAAK,SAAS,EAAE,KAAK,CAAC,uBAAuB,CAAC,OAAO,GAAQ,CACzD,CACP,CACG,CACF,CACP;MACD,WAAK,KAAK,EAAC,qBAAqB,GAAO,CACnC,CACP,CACI,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Build, Component, Host, Prop, State, getAssetPath, h } from '@stencil/core';\nimport { translate } from 'i18n/i18n';\nimport state from 'store/store';\nimport Swiper, { FreeMode, Keyboard, Mousewheel, Navigation, Pagination } from 'swiper';\n\n@Component({\n tag: 'grw-touristic-content-detail',\n styleUrl: 'grw-touristic-content-detail.scss',\n shadow: true,\n})\nexport class GrwTouristicContentDetail {\n swiperImages?: Swiper;\n swiperImagesRef?: HTMLDivElement;\n prevElImagesRef?: HTMLDivElement;\n nextElImagesRef?: HTMLDivElement;\n paginationElImagesRef?: HTMLDivElement;\n presentationRef?: HTMLDivElement;\n\n @State() displayFullscreen = false;\n\n @Prop() fontFamily = 'Roboto';\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 @Prop() isLargeView = false;\n\n descriptionRef?: HTMLDivElement;\n touristicContentDetailContainerRef?: HTMLElement;\n\n componentDidLoad() {\n if (this.swiperImagesRef) {\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 }\n }\n\n handleFullscreen() {\n if (state.currentTouristicContent.attachments && state.currentTouristicContent.attachments[0] && state.currentTouristicContent.attachments[0].url) {\n this.swiperImagesRef.requestFullscreen();\n }\n }\n\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n const touristicContentCategory =\n state.touristicContentCategories &&\n state.currentTouristicContent &&\n state.touristicContentCategories.find(touristicContentCategory => touristicContentCategory.id === state.currentTouristicContent.category);\n const cities = state.currentTouristicContent && state.currentTouristicContent.cities.map(currentCity => state.cities.find(city => city.id === currentCity)?.name);\n return (\n <Host\n style={{\n '--font-family': this.fontFamily,\n '--color-primary-app': this.colorPrimaryApp,\n '--color-on-surface': this.colorOnSurface,\n '--color-primary-container': this.colorPrimaryContainer,\n '--color-on-primary-container': this.colorOnPrimaryContainer,\n '--color-secondary-container': this.colorSecondaryContainer,\n '--color-on-secondary-container': this.colorOnSecondaryContainer,\n '--color-background': this.colorBackground,\n '--detail-bottom-space-height': this.isLargeView ? '8px' : '104px',\n }}\n >\n {state.currentTouristicContent && (\n <div class=\"touristic-content-detail-container\" ref={el => (this.touristicContentDetailContainerRef = 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 {state.currentTouristicContent.attachments.length > 0 ? (\n state.currentTouristicContent.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"image\"\n src={attachment.url}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"default-poi-img\"\n src={defaultImageSrc}\n loading=\"lazy\"\n />\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=\"touristic-content-category-container\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n src={touristicContentCategory.pictogram}\n />\n <div class=\"touristic-content-category-name\">{touristicContentCategory.label}</div>\n </div>\n <div class=\"name\">{state.currentTouristicContent.name}</div>\n <div class=\"divider\"></div>\n <div class=\"downloads-container\">\n <div class=\"download-title\">{translate[state.language].download}</div>\n <div class=\"links-container\">\n <a href={`${state.currentTouristicContent.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 {state.currentTouristicContent.description_teaser && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"description-teaser\" innerHTML={state.currentTouristicContent.description_teaser}></div>\n </div>\n )}\n <div class=\"divider\"></div>\n {state.currentTouristicContent.practical_info && (\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={state.currentTouristicContent.description}></div>\n </div>\n )}\n {cities && cities.length > 0 && (\n <div class=\"cities-container\">\n <div class=\"cities-title\">{translate[state.language].city} :&nbsp;</div>\n <div innerHTML={cities.join(', ')}></div>\n </div>\n )}\n {state.currentTouristicContent.practical_info && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"useful-information-container\">\n <div class=\"useful-information-title\">{translate[state.language].usefulInformation} :&nbsp;</div>\n <div innerHTML={state.currentTouristicContent.practical_info}></div>\n </div>\n </div>\n )}\n {(state.currentTouristicContent.contact || state.currentTouristicContent.email || state.currentTouristicContent.website) && (\n <div>\n <div class=\"divider\"></div>\n\n <div class=\"contact-container\">\n <div class=\"contact-title\">{translate[state.language].contact} :&nbsp;</div>\n {state.currentTouristicContent.contact && <div innerHTML={state.currentTouristicContent.contact}></div>}\n {state.currentTouristicContent.email && (\n <div class=\"email-container\">\n <div>{translate[state.language].email} :&nbsp;</div>\n <div innerHTML={state.currentTouristicContent.email}></div>\n </div>\n )}\n {state.currentTouristicContent.website && (\n <div class=\"website-container\">\n <div>{translate[state.language].website} :&nbsp;</div>\n <div innerHTML={state.currentTouristicContent.website}></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-touristic-content-detail.js","sourceRoot":"","sources":["../../../src/components/grw-touristic-content-detail/grw-touristic-content-detail.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Build, Component, Host, Prop, State, getAssetPath, h } from '@stencil/core';\nimport { translate } from 'i18n/i18n';\nimport state from 'store/store';\nimport Swiper, { FreeMode, Keyboard, Mousewheel, Navigation, Pagination } from 'swiper';\n\n@Component({\n tag: 'grw-touristic-content-detail',\n styleUrl: 'grw-touristic-content-detail.scss',\n shadow: true,\n})\nexport class GrwTouristicContentDetail {\n swiperImages?: Swiper;\n swiperImagesRef?: HTMLDivElement;\n prevElImagesRef?: HTMLDivElement;\n nextElImagesRef?: HTMLDivElement;\n paginationElImagesRef?: HTMLDivElement;\n presentationRef?: HTMLDivElement;\n\n @State() displayFullscreen = false;\n\n @Prop() fontFamily = 'Roboto';\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 @Prop() isLargeView = false;\n\n descriptionRef?: HTMLDivElement;\n touristicContentDetailContainerRef?: HTMLElement;\n\n componentDidLoad() {\n if (this.swiperImagesRef) {\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 }\n }\n\n handleFullscreen() {\n if (state.currentTouristicContent.attachments && state.currentTouristicContent.attachments[0] && state.currentTouristicContent.attachments[0].url) {\n this.swiperImagesRef.requestFullscreen();\n }\n }\n\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n const touristicContentCategory =\n state.touristicContentCategories &&\n state.currentTouristicContent &&\n state.touristicContentCategories.find(touristicContentCategory => touristicContentCategory.id === state.currentTouristicContent.category);\n const cities = state.currentTouristicContent && state.currentTouristicContent.cities.map(currentCity => state.cities.find(city => city.id === currentCity)?.name);\n return (\n <Host\n style={{\n '--font-family': this.fontFamily,\n '--color-primary-app': this.colorPrimaryApp,\n '--color-on-surface': this.colorOnSurface,\n '--color-primary-container': this.colorPrimaryContainer,\n '--color-on-primary-container': this.colorOnPrimaryContainer,\n '--color-secondary-container': this.colorSecondaryContainer,\n '--color-on-secondary-container': this.colorOnSecondaryContainer,\n '--color-background': this.colorBackground,\n '--detail-bottom-space-height': this.isLargeView ? '8px' : '152px',\n }}\n >\n {state.currentTouristicContent && (\n <div class=\"touristic-content-detail-container\" ref={el => (this.touristicContentDetailContainerRef = 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 {state.currentTouristicContent.attachments.length > 0 ? (\n state.currentTouristicContent.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"image\"\n src={attachment.url}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"default-poi-img\"\n src={defaultImageSrc}\n loading=\"lazy\"\n />\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=\"touristic-content-category-container\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n src={touristicContentCategory.pictogram}\n />\n <div class=\"touristic-content-category-name\">{touristicContentCategory.label}</div>\n </div>\n <div class=\"name\">{state.currentTouristicContent.name}</div>\n <div class=\"divider\"></div>\n <div class=\"downloads-container\">\n <div class=\"download-title\">{translate[state.language].download}</div>\n <div class=\"links-container\">\n <a href={`${state.currentTouristicContent.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 {state.currentTouristicContent.description_teaser && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"description-teaser\" innerHTML={state.currentTouristicContent.description_teaser}></div>\n </div>\n )}\n <div class=\"divider\"></div>\n {state.currentTouristicContent.practical_info && (\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={state.currentTouristicContent.description}></div>\n </div>\n )}\n {cities && cities.length > 0 && (\n <div class=\"cities-container\">\n <div class=\"cities-title\">{translate[state.language].city} :&nbsp;</div>\n <div innerHTML={cities.join(', ')}></div>\n </div>\n )}\n {state.currentTouristicContent.practical_info && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"useful-information-container\">\n <div class=\"useful-information-title\">{translate[state.language].usefulInformation} :&nbsp;</div>\n <div innerHTML={state.currentTouristicContent.practical_info}></div>\n </div>\n </div>\n )}\n {(state.currentTouristicContent.contact || state.currentTouristicContent.email || state.currentTouristicContent.website) && (\n <div>\n <div class=\"divider\"></div>\n\n <div class=\"contact-container\">\n <div class=\"contact-title\">{translate[state.language].contact} :&nbsp;</div>\n {state.currentTouristicContent.contact && <div innerHTML={state.currentTouristicContent.contact}></div>}\n {state.currentTouristicContent.email && (\n <div class=\"email-container\">\n <div>{translate[state.language].email} :&nbsp;</div>\n <div innerHTML={state.currentTouristicContent.email}></div>\n </div>\n )}\n {state.currentTouristicContent.website && (\n <div class=\"website-container\">\n <div>{translate[state.language].website} :&nbsp;</div>\n <div innerHTML={state.currentTouristicContent.website}></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"]}
@@ -629,7 +629,6 @@ button.swiper-pagination-bullet {
629
629
 
630
630
  .touristic-event-card-container,
631
631
  .touristic-event-card-large-view-container {
632
- cursor: pointer;
633
632
  font-family: var(--font-family);
634
633
  border-radius: var(--border-radius, 12px);
635
634
  box-shadow: var(--elevation-1);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grw-touristic-event-card.js","sourceRoot":"","sources":["../../../src/components/grw-touristic-event-card/grw-touristic-event-card.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Build, Component, Host, getAssetPath, h, State, Prop, Event, EventEmitter, Listen } from '@stencil/core';\nimport state from 'store/store';\nimport Swiper, { Keyboard, Navigation, Pagination } from 'swiper';\nimport { TouristicEvent } from 'types/types';\n\n@Component({\n tag: 'grw-touristic-event-card',\n styleUrl: 'grw-touristic-event-card.scss',\n shadow: true,\n})\nexport class GrwTouristicEvent {\n @Event() touristicEventCardPress: EventEmitter<number>;\n swiperTouristicEvent?: Swiper;\n swiperTouristicEventRef?: HTMLDivElement;\n prevElTouristicEventRef?: HTMLDivElement;\n nextElTouristicEventRef?: HTMLDivElement;\n paginationElTouristicEventRef?: HTMLDivElement;\n\n @Prop() fontFamily = 'Roboto';\n\n @Prop() touristicEvent: TouristicEvent;\n @Prop() isLargeView = false;\n @Prop() isInsideHorizontalList = false;\n @State() displayFullscreen = false;\n\n @Event() cardTouristicEventMouseOver: EventEmitter<number>;\n @Event() cardTouristicEventMouseLeave: EventEmitter;\n\n componentDidLoad() {\n if (this.swiperTouristicEventRef) {\n this.swiperTouristicEvent = new Swiper(this.swiperTouristicEventRef, {\n modules: [Navigation, Pagination, Keyboard],\n navigation: {\n prevEl: this.prevElTouristicEventRef,\n nextEl: this.nextElTouristicEventRef,\n },\n pagination: { el: this.paginationElTouristicEventRef },\n allowTouchMove: false,\n keyboard: false,\n });\n this.swiperTouristicEventRef.onfullscreenchange = () => {\n this.displayFullscreen = !this.displayFullscreen;\n if (this.displayFullscreen) {\n this.swiperTouristicEvent.keyboard.enable();\n } else {\n this.swiperTouristicEvent.keyboard.disable();\n }\n };\n }\n }\n\n handleFullscreen() {\n if (this.touristicEvent.attachments && this.touristicEvent.attachments[0] && this.touristicEvent.attachments[0].url) {\n this.swiperTouristicEventRef.requestFullscreen();\n }\n }\n\n @Listen('mouseover')\n handleMouseOver() {\n this.cardTouristicEventMouseOver.emit(this.touristicEvent.id);\n }\n\n @Listen('mouseleave')\n handleMouseLeave() {\n this.cardTouristicEventMouseLeave.emit();\n }\n\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n const touristicEventType = state.touristicEventTypes.find(touristicEventType => touristicEventType.id === this.touristicEvent.type);\n return (\n <Host\n style={{\n '--font-family': this.fontFamily,\n 'width': this.isLargeView ? '100%' : 'auto',\n }}\n >\n <div\n class={\n this.isLargeView\n ? `touristic-event-card-large-view-container${state.selectedTouristicEventId === this.touristicEvent.id ? ' selected-touristic-event-card' : ''}${\n !this.isInsideHorizontalList ? ' is-inside-vertical-list' : ''\n }`\n : `touristic-event-card-container${state.selectedTouristicEventId === this.touristicEvent.id ? ' selected-touristic-event-card' : ''}${\n !this.isInsideHorizontalList ? ' is-inside-vertical-list' : ''\n }`\n }\n onClick={() => {\n if (!this.isInsideHorizontalList) {\n this.touristicEventCardPress.emit(this.touristicEvent.id);\n }\n }}\n >\n <div class=\"touristic-event-type-img-container\">\n {this.isInsideHorizontalList ? (\n <div class=\"swiper\" ref={el => (this.swiperTouristicEventRef = el)}>\n <div class=\"swiper-wrapper\">\n {this.touristicEvent.attachments.length > 0 ? (\n this.touristicEvent.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n class={`touristic-event-img${this.displayFullscreen ? ' img-fullscreen' : ''}`}\n src={this.displayFullscreen ? attachment.url : attachment.thumbnail}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"default-touristic-event-img\"\n src={defaultImageSrc}\n loading=\"lazy\"\n />\n </div>\n )}\n </div>\n <div class=\"swiper-pagination\" ref={el => (this.paginationElTouristicEventRef = el)}></div>\n <div class=\"swiper-button-prev\" ref={el => (this.prevElTouristicEventRef = el)}></div>\n <div class=\"swiper-button-next\" ref={el => (this.nextElTouristicEventRef = el)}></div>\n </div>\n ) : this.touristicEvent.attachments.filter(attachment => attachment.type === 'image').length > 0 ? (\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"image\"\n src={`${this.touristicEvent.attachments.filter(attachment => attachment.type === 'image')[0].thumbnail}`}\n loading=\"lazy\"\n />\n ) : (\n <div></div>\n )}\n </div>\n <div class=\"touristic-event-sub-container\">\n <div class=\"touristic-event-type-container\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n src={touristicEventType.pictogram}\n />\n <div class=\"touristic-event-type-name\">{touristicEventType.type}</div>\n </div>\n <div class=\"touristic-event-name\">{this.touristicEvent.name}</div>\n {(this.touristicEvent.begin_date || this.touristicEvent.end_date) && (\n <div class=\"touristic-event-date-container\">\n {this.touristicEvent.begin_date && <div class=\"touristic-event-date\">Date de début : {this.touristicEvent.begin_date}</div>}\n {this.touristicEvent.end_date && <div class=\"touristic-event-date\">Date de fin : {this.touristicEvent.end_date}</div>}\n </div>\n )}\n </div>\n\n {this.isInsideHorizontalList && (\n <div class=\"touristic-event-more-detail-container\">\n <button class=\"more-details-button\" onClick={() => this.touristicEventCardPress.emit(this.touristicEvent.id)}>\n Plus de détails\n </button>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -52,7 +52,7 @@ export class GrwTouristicEventDetail {
52
52
  '--color-secondary-container': this.colorSecondaryContainer,
53
53
  '--color-on-secondary-container': this.colorOnSecondaryContainer,
54
54
  '--color-background': this.colorBackground,
55
- '--detail-bottom-space-height': this.isLargeView ? '8px' : '104px',
55
+ '--detail-bottom-space-height': this.isLargeView ? '8px' : '152px',
56
56
  } }, state.currentTouristicEvent && (h("div", { class: "touristic-event-detail-container", ref: el => (this.touristicEventDetailContainerRef = el) }, h("div", { class: "images-container", ref: el => (this.presentationRef = el) }, h("div", { class: "swiper swiper-images", ref: el => (this.swiperImagesRef = el) }, h("div", { class: "swiper-wrapper" }, state.currentTouristicEvent.attachments.length > 0 ? (state.currentTouristicEvent.attachments
57
57
  .filter(attachment => attachment.type === 'image')
58
58
  .map(attachment => (h("div", { class: "swiper-slide" }, h("img", {
@@ -1 +1 @@
1
- {"version":3,"file":"grw-touristic-event-detail.js","sourceRoot":"","sources":["../../../src/components/grw-touristic-event-detail/grw-touristic-event-detail.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Build, Component, Host, Prop, State, getAssetPath, h } from '@stencil/core';\nimport { translate } from 'i18n/i18n';\nimport state from 'store/store';\nimport Swiper, { FreeMode, Keyboard, Mousewheel, Navigation, Pagination } from 'swiper';\n\n@Component({\n tag: 'grw-touristic-event-detail',\n styleUrl: 'grw-touristic-event-detail.scss',\n shadow: true,\n})\nexport class GrwTouristicEventDetail {\n swiperImages?: Swiper;\n swiperImagesRef?: HTMLDivElement;\n prevElImagesRef?: HTMLDivElement;\n nextElImagesRef?: HTMLDivElement;\n paginationElImagesRef?: HTMLDivElement;\n presentationRef?: HTMLDivElement;\n\n @State() displayFullscreen = false;\n\n @Prop() fontFamily = 'Roboto';\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 @Prop() isLargeView = false;\n\n descriptionRef?: HTMLDivElement;\n touristicEventDetailContainerRef?: HTMLElement;\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 }\n\n handleFullscreen() {\n if (state.currentTouristicEvent.attachments && state.currentTouristicEvent.attachments[0] && state.currentTouristicEvent.attachments[0].url) {\n this.swiperImagesRef.requestFullscreen();\n }\n }\n\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n const touristicEventType =\n state.touristicEventTypes &&\n state.currentTouristicEvent &&\n state.touristicEventTypes.find(touristicEventCategory => touristicEventCategory.id === state.currentTouristicEvent.type);\n const cities = state.currentTouristicEvent && state.currentTouristicEvent.cities.map(currentCity => state.cities.find(city => city.id === currentCity)?.name);\n return (\n <Host\n style={{\n '--font-family': this.fontFamily,\n '--color-primary-app': this.colorPrimaryApp,\n '--color-on-surface': this.colorOnSurface,\n '--color-primary-container': this.colorPrimaryContainer,\n '--color-on-primary-container': this.colorOnPrimaryContainer,\n '--color-secondary-container': this.colorSecondaryContainer,\n '--color-on-secondary-container': this.colorOnSecondaryContainer,\n '--color-background': this.colorBackground,\n '--detail-bottom-space-height': this.isLargeView ? '8px' : '104px',\n }}\n >\n {state.currentTouristicEvent && (\n <div class=\"touristic-event-detail-container\" ref={el => (this.touristicEventDetailContainerRef = 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 {state.currentTouristicEvent.attachments.length > 0 ? (\n state.currentTouristicEvent.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"image\"\n src={attachment.url}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"default-poi-img\"\n src={defaultImageSrc}\n loading=\"lazy\"\n />\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=\"touristic-event-category-container\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n src={touristicEventType.pictogram}\n />\n <div class=\"touristic-event-category-name\">{touristicEventType.type}</div>\n </div>\n <div class=\"name\">{state.currentTouristicEvent.name}</div>\n {(state.currentTouristicEvent.begin_date || state.currentTouristicEvent.end_date) && (\n <div class=\"touristic-event-date-container\">\n {state.currentTouristicEvent.begin_date && <div class=\"touristic-event-date\">Date de début : {state.currentTouristicEvent.begin_date}</div>}\n {state.currentTouristicEvent.end_date && <div class=\"touristic-event-date\">Date de fin : {state.currentTouristicEvent.end_date}</div>}\n </div>\n )}\n <div class=\"divider\"></div>\n <div class=\"downloads-container\">\n <div class=\"download-title\">{translate[state.language].download}</div>\n <div class=\"links-container\">\n <a href={`${state.currentTouristicEvent.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 {state.currentTouristicEvent.description_teaser && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"description-teaser\" innerHTML={state.currentTouristicEvent.description_teaser}></div>\n </div>\n )}\n <div class=\"divider\"></div>\n {state.currentTouristicEvent.practical_info && (\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={state.currentTouristicEvent.description}></div>\n </div>\n )}\n {cities && cities.length > 0 && (\n <div class=\"cities-container\">\n <div class=\"cities-title\">{translate[state.language].city} :&nbsp;</div>\n <div innerHTML={cities.join(', ')}></div>\n </div>\n )}\n {state.currentTouristicEvent.practical_info && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"useful-information-container\">\n <div class=\"useful-information-title\">{translate[state.language].usefulInformation} :&nbsp;</div>\n <div innerHTML={state.currentTouristicEvent.practical_info}></div>\n </div>\n </div>\n )}\n {(state.currentTouristicEvent.contact || state.currentTouristicEvent.email || state.currentTouristicEvent.website) && (\n <div>\n <div class=\"divider\"></div>\n\n <div class=\"contact-container\">\n <div class=\"contact-title\">{translate[state.language].contact} :&nbsp;</div>\n {state.currentTouristicEvent.contact && <div innerHTML={state.currentTouristicEvent.contact}></div>}\n {state.currentTouristicEvent.email && (\n <div class=\"email-container\">\n <div>{translate[state.language].email} :&nbsp;</div>\n <div innerHTML={state.currentTouristicEvent.email}></div>\n </div>\n )}\n {state.currentTouristicEvent.website && (\n <div class=\"website-container\">\n <div>{translate[state.language].website} :&nbsp;</div>\n <div innerHTML={state.currentTouristicEvent.website}></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-touristic-event-detail.js","sourceRoot":"","sources":["../../../src/components/grw-touristic-event-detail/grw-touristic-event-detail.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Build, Component, Host, Prop, State, getAssetPath, h } from '@stencil/core';\nimport { translate } from 'i18n/i18n';\nimport state from 'store/store';\nimport Swiper, { FreeMode, Keyboard, Mousewheel, Navigation, Pagination } from 'swiper';\n\n@Component({\n tag: 'grw-touristic-event-detail',\n styleUrl: 'grw-touristic-event-detail.scss',\n shadow: true,\n})\nexport class GrwTouristicEventDetail {\n swiperImages?: Swiper;\n swiperImagesRef?: HTMLDivElement;\n prevElImagesRef?: HTMLDivElement;\n nextElImagesRef?: HTMLDivElement;\n paginationElImagesRef?: HTMLDivElement;\n presentationRef?: HTMLDivElement;\n\n @State() displayFullscreen = false;\n\n @Prop() fontFamily = 'Roboto';\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 @Prop() isLargeView = false;\n\n descriptionRef?: HTMLDivElement;\n touristicEventDetailContainerRef?: HTMLElement;\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 }\n\n handleFullscreen() {\n if (state.currentTouristicEvent.attachments && state.currentTouristicEvent.attachments[0] && state.currentTouristicEvent.attachments[0].url) {\n this.swiperImagesRef.requestFullscreen();\n }\n }\n\n render() {\n const defaultImageSrc = getAssetPath(`${Build.isDev ? '/' : ''}assets/default-image.svg`);\n const touristicEventType =\n state.touristicEventTypes &&\n state.currentTouristicEvent &&\n state.touristicEventTypes.find(touristicEventCategory => touristicEventCategory.id === state.currentTouristicEvent.type);\n const cities = state.currentTouristicEvent && state.currentTouristicEvent.cities.map(currentCity => state.cities.find(city => city.id === currentCity)?.name);\n return (\n <Host\n style={{\n '--font-family': this.fontFamily,\n '--color-primary-app': this.colorPrimaryApp,\n '--color-on-surface': this.colorOnSurface,\n '--color-primary-container': this.colorPrimaryContainer,\n '--color-on-primary-container': this.colorOnPrimaryContainer,\n '--color-secondary-container': this.colorSecondaryContainer,\n '--color-on-secondary-container': this.colorOnSecondaryContainer,\n '--color-background': this.colorBackground,\n '--detail-bottom-space-height': this.isLargeView ? '8px' : '152px',\n }}\n >\n {state.currentTouristicEvent && (\n <div class=\"touristic-event-detail-container\" ref={el => (this.touristicEventDetailContainerRef = 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 {state.currentTouristicEvent.attachments.length > 0 ? (\n state.currentTouristicEvent.attachments\n .filter(attachment => attachment.type === 'image')\n .map(attachment => (\n <div class=\"swiper-slide\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"image\"\n src={attachment.url}\n loading=\"lazy\"\n onClick={() => this.handleFullscreen()}\n />\n </div>\n ))\n ) : (\n <div class=\"swiper-slide\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n class=\"default-poi-img\"\n src={defaultImageSrc}\n loading=\"lazy\"\n />\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=\"touristic-event-category-container\">\n <img\n /* @ts-ignore */\n crossorigin=\"anonymous\"\n src={touristicEventType.pictogram}\n />\n <div class=\"touristic-event-category-name\">{touristicEventType.type}</div>\n </div>\n <div class=\"name\">{state.currentTouristicEvent.name}</div>\n {(state.currentTouristicEvent.begin_date || state.currentTouristicEvent.end_date) && (\n <div class=\"touristic-event-date-container\">\n {state.currentTouristicEvent.begin_date && <div class=\"touristic-event-date\">Date de début : {state.currentTouristicEvent.begin_date}</div>}\n {state.currentTouristicEvent.end_date && <div class=\"touristic-event-date\">Date de fin : {state.currentTouristicEvent.end_date}</div>}\n </div>\n )}\n <div class=\"divider\"></div>\n <div class=\"downloads-container\">\n <div class=\"download-title\">{translate[state.language].download}</div>\n <div class=\"links-container\">\n <a href={`${state.currentTouristicEvent.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 {state.currentTouristicEvent.description_teaser && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"description-teaser\" innerHTML={state.currentTouristicEvent.description_teaser}></div>\n </div>\n )}\n <div class=\"divider\"></div>\n {state.currentTouristicEvent.practical_info && (\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={state.currentTouristicEvent.description}></div>\n </div>\n )}\n {cities && cities.length > 0 && (\n <div class=\"cities-container\">\n <div class=\"cities-title\">{translate[state.language].city} :&nbsp;</div>\n <div innerHTML={cities.join(', ')}></div>\n </div>\n )}\n {state.currentTouristicEvent.practical_info && (\n <div>\n <div class=\"divider\"></div>\n <div class=\"useful-information-container\">\n <div class=\"useful-information-title\">{translate[state.language].usefulInformation} :&nbsp;</div>\n <div innerHTML={state.currentTouristicEvent.practical_info}></div>\n </div>\n </div>\n )}\n {(state.currentTouristicEvent.contact || state.currentTouristicEvent.email || state.currentTouristicEvent.website) && (\n <div>\n <div class=\"divider\"></div>\n\n <div class=\"contact-container\">\n <div class=\"contact-title\">{translate[state.language].contact} :&nbsp;</div>\n {state.currentTouristicEvent.contact && <div innerHTML={state.currentTouristicEvent.contact}></div>}\n {state.currentTouristicEvent.email && (\n <div class=\"email-container\">\n <div>{translate[state.language].email} :&nbsp;</div>\n <div innerHTML={state.currentTouristicEvent.email}></div>\n </div>\n )}\n {state.currentTouristicEvent.website && (\n <div class=\"website-container\">\n <div>{translate[state.language].website} :&nbsp;</div>\n <div innerHTML={state.currentTouristicEvent.website}></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"]}
@@ -101,7 +101,7 @@ export class GrwTrekCard {
101
101
  "mutable": false,
102
102
  "complexType": {
103
103
  "original": "Trek",
104
- "resolved": "{ id: number; name: string; attachments: Attachments; description?: string; description_teaser: string; difficulty: number; route: number; practice: number; themes: number[]; duration: number; length_2d: number; ascent: number; departure: string; departure_city: string; arrival?: string; geometry?: LineString; departure_geom?: Position; gpx?: string; kml?: string; pdf?: string; parking_location?: Position; ambiance?: string; access?: string; public_transport?: string; advice?: string; advised_parking?: string; gear?: string; labels?: number[]; points_reference?: MultiPoint; source?: number[]; structure?: number; disabled_infrastructure?: string; accessibilities?: number[]; accessibility_level?: number; accessibility_slope?: string; accessibility_width?: string; accessibility_signage?: string; accessibility_covering?: string; accessibility_exposure?: string; accessibility_advice?: string; cities?: string[]; information_desks?: number[]; children?: number[]; ratings?: number[]; ratings_description?: string; }",
104
+ "resolved": "{ id: number; name: string; attachments: Attachments; description?: string; description_teaser: string; difficulty: number; route: number; practice: number; themes: number[]; duration: number; length_2d: number; ascent: number; descent: number; departure: string; departure_city: string; arrival?: string; geometry?: LineString; departure_geom?: Position; gpx?: string; kml?: string; pdf?: string; parking_location?: Position; ambiance?: string; access?: string; public_transport?: string; advice?: string; advised_parking?: string; gear?: string; labels?: number[]; points_reference?: MultiPoint; source?: number[]; structure?: number; disabled_infrastructure?: string; accessibilities?: number[]; accessibility_level?: number; accessibility_slope?: string; accessibility_width?: string; accessibility_signage?: string; accessibility_covering?: string; accessibility_exposure?: string; accessibility_advice?: string; cities?: string[]; information_desks?: number[]; children?: number[]; ratings?: number[]; ratings_description?: string; networks: number[]; web_links: Weblink[]; }",
105
105
  "references": {
106
106
  "Trek": {
107
107
  "location": "import",