ublo-lib 1.24.4 → 1.25.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. package/es/common/components/admin-links/admin-links.js +95 -52
  2. package/es/common/components/admin-links/index.js +1 -1
  3. package/es/common/components/breadcrumb.js +78 -21
  4. package/es/common/components/cross-selling-editor/cross-selling-editor.js +52 -0
  5. package/es/common/components/cross-selling-editor/cross-selling-editor.module.css +6 -0
  6. package/es/common/components/cross-selling-editor/editor.js +98 -0
  7. package/es/common/components/cross-selling-editor/editor.module.css +23 -0
  8. package/es/common/components/cross-selling-editor/hooks/use-custom-offers.js +52 -0
  9. package/es/common/components/cross-selling-editor/hooks/use-tunnel-offers.js +35 -0
  10. package/es/common/components/cross-selling-editor/index.js +2 -0
  11. package/es/common/components/cross-selling-editor/override-trigger-form.js +156 -0
  12. package/es/common/components/cross-selling-editor/override-trigger-form.module.css +58 -0
  13. package/es/common/components/cross-selling-editor/override.js +124 -0
  14. package/es/common/components/cross-selling-editor/override.module.css +65 -0
  15. package/es/common/components/cross-selling-editor/overrides-list.js +111 -0
  16. package/es/common/components/cross-selling-editor/overrides-list.module.css +56 -0
  17. package/es/common/components/cross-selling-editor/rule.js +105 -0
  18. package/es/common/components/cross-selling-editor/rule.module.css +37 -0
  19. package/es/common/components/cross-selling-editor/rules.js +84 -0
  20. package/es/common/components/cross-selling-editor/rules.module.css +39 -0
  21. package/es/common/components/cross-selling-editor/services/api.js +36 -0
  22. package/es/common/components/cross-selling-editor/services/utils.js +199 -0
  23. package/es/common/components/cross-selling-editor/tester-tunnel-offer.js +53 -0
  24. package/es/common/components/cross-selling-editor/tester-tunnel-offer.module.css +18 -0
  25. package/es/common/components/cross-selling-editor/tester.js +188 -0
  26. package/es/common/components/cross-selling-editor/tester.module.css +106 -0
  27. package/es/common/components/cross-selling-editor/types.js +1 -0
  28. package/es/common/components/custom-contact-form/custom-contact-form.js +147 -75
  29. package/es/common/components/date-picker/calendar.js +1 -1
  30. package/es/common/components/gesco-contact-form/gesco-contact-form.js +240 -91
  31. package/es/common/components/gesco-contact-form/hooks/use-params.js +35 -20
  32. package/es/common/components/gesco-contact-form/index.js +1 -1
  33. package/es/common/components/gesco-contact-form/phone-code-select.js +76 -56
  34. package/es/common/components/gesco-contact-form/services/api.js +7 -8
  35. package/es/common/components/gesco-contact-form/services/form.js +39 -25
  36. package/es/common/components/gesco-contact-form/services/messages.js +68 -65
  37. package/es/common/components/gesco-contact-form/services/plausible.js +8 -10
  38. package/es/common/components/gesco-contact-form/types.js +1 -1
  39. package/es/common/components/instant-search/hooks/use-constant.js +8 -6
  40. package/es/common/components/instant-search/hooks/use-debounced-search.js +14 -5
  41. package/es/common/components/instant-search/hooks/use-search.js +10 -6
  42. package/es/common/components/instant-search/index.js +1 -1
  43. package/es/common/components/instant-search/input.js +75 -45
  44. package/es/common/components/instant-search/instant-search.js +124 -73
  45. package/es/common/components/instant-search/links.js +74 -23
  46. package/es/common/components/instant-search/no-product.js +81 -4
  47. package/es/common/components/instant-search/products.js +118 -31
  48. package/es/common/components/instant-search/results.js +121 -32
  49. package/es/common/components/instant-search/services/api.js +12 -10
  50. package/es/common/components/instant-search/services/messages.js +3 -3
  51. package/es/common/components/instant-search/services/utils.js +34 -34
  52. package/es/common/components/msem-preset-editor/components/facet-selector.js +39 -22
  53. package/es/common/components/msem-preset-editor/components/form.js +54 -5
  54. package/es/common/components/msem-preset-editor/components/stay-picker.js +72 -33
  55. package/es/common/components/msem-preset-editor/components/widget-list-item.js +130 -42
  56. package/es/common/components/msem-preset-editor/components/widget-list.js +54 -29
  57. package/es/common/components/msem-preset-editor/editor-dialog.js +68 -21
  58. package/es/common/components/msem-preset-editor/editors/elloha.js +102 -69
  59. package/es/common/components/msem-preset-editor/editors/index.js +6 -6
  60. package/es/common/components/msem-preset-editor/editors/lodgings.js +316 -184
  61. package/es/common/components/msem-preset-editor/editors/ski-passes.js +267 -180
  62. package/es/common/components/msem-preset-editor/editors/standard-products.js +84 -56
  63. package/es/common/components/msem-preset-editor/editors/vakario.js +239 -171
  64. package/es/common/components/msem-preset-editor/msem-preset-editor.js +215 -129
  65. package/es/common/components/msem-preset-editor/services/api.js +69 -42
  66. package/es/common/components/msem-preset-editor/services/offers.js +61 -35
  67. package/es/common/components/msem-preset-editor/services/preset.js +22 -14
  68. package/es/common/components/msem-preset-editor/services/url-params.js +24 -24
  69. package/es/common/components/msem-preset-linker/components/actions.js +52 -40
  70. package/es/common/components/msem-preset-linker/components/overlays.js +57 -41
  71. package/es/common/components/msem-preset-linker/components/resort-selector.js +21 -11
  72. package/es/common/components/msem-preset-linker/hooks/use-msem-presets.js +43 -31
  73. package/es/common/components/msem-preset-linker/index.js +1 -1
  74. package/es/common/components/msem-preset-linker/msem-preset-linker.js +71 -42
  75. package/es/common/components/msem-preset-linker/services/url-params.js +10 -13
  76. package/es/common/components/plausible/hooks/use-plausible.js +22 -18
  77. package/es/common/components/plausible/index.js +1 -1
  78. package/es/common/components/plausible/plausible.js +23 -14
  79. package/es/common/components/plausible/services/callback.js +164 -115
  80. package/es/common/components/plausible/services/load.js +4 -6
  81. package/es/common/components/plausible/services/send-goal.js +6 -3
  82. package/es/common/components/scroll-spy.js +56 -43
  83. package/es/common/components/scrolling-carousel/index.js +1 -1
  84. package/es/common/components/scrolling-carousel/scrolling-carousel.js +94 -55
  85. package/es/common/components/tabbed-zones.js +100 -47
  86. package/es/common/hooks/use-faq.js +37 -36
  87. package/es/common/hooks/use-in-view.js +74 -74
  88. package/es/common/hooks/use-scroll-direction.js +37 -32
  89. package/es/common/hooks/use-stay.js +16 -13
  90. package/es/common/hooks/use-sticky.js +35 -35
  91. package/es/common/hooks/use-tunnel.js +42 -30
  92. package/es/common/hooks/use-update-effect.js +9 -9
  93. package/es/common/hooks/use-window-sizes.js +27 -28
  94. package/es/common/utils/cms.js +15 -17
  95. package/es/common/utils/cookies.js +10 -11
  96. package/es/common/utils/copy.js +11 -11
  97. package/es/common/utils/dates.js +8 -10
  98. package/es/common/utils/elements.js +14 -15
  99. package/es/common/utils/events.js +4 -19
  100. package/es/common/utils/file-manager.js +12 -10
  101. package/es/common/utils/load-js.js +10 -11
  102. package/es/common/utils/msem-widget.js +30 -23
  103. package/es/common/utils/url-parameters.js +11 -7
  104. package/es/esf/components/magic-box/index.js +1 -1
  105. package/es/esf/components/magic-box/magic-box.js +164 -102
  106. package/es/esf/components/parcours-esf/index.js +1 -1
  107. package/es/esf/components/parcours-esf/parcours-esf.js +45 -30
  108. package/es/esf/components/period-picker/period-picker.js +5 -5
  109. package/es/lbm/components/lumiplan/api.js +35 -18
  110. package/es/lbm/components/lumiplan/domain.js +96 -20
  111. package/es/lbm/components/lumiplan/i18n/translations.js +24 -15
  112. package/es/lbm/components/lumiplan/index.js +1 -1
  113. package/es/lbm/components/lumiplan/lumiplan.js +130 -102
  114. package/es/lbm/components/lumiplan/opening.js +116 -38
  115. package/es/lbm/components/lumiplan/pois.js +270 -161
  116. package/es/lbm/components/lumiplan/resort-selector.js +58 -36
  117. package/es/lbm/components/lumiplan/road-condition.js +100 -19
  118. package/es/lbm/components/lumiplan/todays-tips.js +45 -16
  119. package/es/lbm/components/lumiplan/types.js +1 -1
  120. package/es/lbm/components/lumiplan/weather/avalanche-risk.js +33 -8
  121. package/es/lbm/components/lumiplan/weather/index.js +1 -1
  122. package/es/lbm/components/lumiplan/weather/snow-data.js +71 -5
  123. package/es/lbm/components/lumiplan/weather/weather-data.js +126 -7
  124. package/es/lbm/components/lumiplan/weather/weather-days.js +76 -48
  125. package/es/lbm/components/lumiplan/weather/weather-icon.js +23 -20
  126. package/es/lbm/components/lumiplan/weather/weather-zones.js +71 -42
  127. package/es/lbm/components/lumiplan/weather/weather.js +90 -28
  128. package/package.json +4 -10
  129. package/es/common/components/admin-links/admin-links.d.ts +0 -11
  130. package/es/common/components/admin-links/admin-links.d.ts.map +0 -1
  131. package/es/common/components/admin-links/index.d.ts +0 -3
  132. package/es/common/components/admin-links/index.d.ts.map +0 -1
  133. package/es/common/components/breadcrumb.d.ts +0 -16
  134. package/es/common/components/breadcrumb.d.ts.map +0 -1
  135. package/es/common/components/custom-contact-form/custom-contact-form.d.ts +0 -25
  136. package/es/common/components/custom-contact-form/custom-contact-form.d.ts.map +0 -1
  137. package/es/common/components/gesco-contact-form/gesco-contact-form.d.ts +0 -17
  138. package/es/common/components/gesco-contact-form/gesco-contact-form.d.ts.map +0 -1
  139. package/es/common/components/gesco-contact-form/hooks/use-params.d.ts +0 -15
  140. package/es/common/components/gesco-contact-form/hooks/use-params.d.ts.map +0 -1
  141. package/es/common/components/gesco-contact-form/index.d.ts +0 -3
  142. package/es/common/components/gesco-contact-form/index.d.ts.map +0 -1
  143. package/es/common/components/gesco-contact-form/phone-code-select.d.ts +0 -7
  144. package/es/common/components/gesco-contact-form/phone-code-select.d.ts.map +0 -1
  145. package/es/common/components/gesco-contact-form/services/api.d.ts +0 -30
  146. package/es/common/components/gesco-contact-form/services/api.d.ts.map +0 -1
  147. package/es/common/components/gesco-contact-form/services/form.d.ts +0 -31
  148. package/es/common/components/gesco-contact-form/services/form.d.ts.map +0 -1
  149. package/es/common/components/gesco-contact-form/services/messages.d.ts +0 -34
  150. package/es/common/components/gesco-contact-form/services/messages.d.ts.map +0 -1
  151. package/es/common/components/gesco-contact-form/services/plausible.d.ts +0 -3
  152. package/es/common/components/gesco-contact-form/services/plausible.d.ts.map +0 -1
  153. package/es/common/components/gesco-contact-form/types.d.ts +0 -34
  154. package/es/common/components/gesco-contact-form/types.d.ts.map +0 -1
  155. package/es/common/components/instant-search/hooks/use-constant.d.ts +0 -2
  156. package/es/common/components/instant-search/hooks/use-constant.d.ts.map +0 -1
  157. package/es/common/components/instant-search/hooks/use-debounced-search.d.ts +0 -7
  158. package/es/common/components/instant-search/hooks/use-debounced-search.d.ts.map +0 -1
  159. package/es/common/components/instant-search/hooks/use-search.d.ts +0 -16
  160. package/es/common/components/instant-search/hooks/use-search.d.ts.map +0 -1
  161. package/es/common/components/instant-search/index.d.ts +0 -3
  162. package/es/common/components/instant-search/index.d.ts.map +0 -1
  163. package/es/common/components/instant-search/input.d.ts +0 -15
  164. package/es/common/components/instant-search/input.d.ts.map +0 -1
  165. package/es/common/components/instant-search/instant-search.d.ts +0 -14
  166. package/es/common/components/instant-search/instant-search.d.ts.map +0 -1
  167. package/es/common/components/instant-search/links.d.ts +0 -12
  168. package/es/common/components/instant-search/links.d.ts.map +0 -1
  169. package/es/common/components/instant-search/no-product.d.ts +0 -6
  170. package/es/common/components/instant-search/no-product.d.ts.map +0 -1
  171. package/es/common/components/instant-search/products.d.ts +0 -14
  172. package/es/common/components/instant-search/products.d.ts.map +0 -1
  173. package/es/common/components/instant-search/results.d.ts +0 -76
  174. package/es/common/components/instant-search/results.d.ts.map +0 -1
  175. package/es/common/components/instant-search/services/api.d.ts +0 -2
  176. package/es/common/components/instant-search/services/api.d.ts.map +0 -1
  177. package/es/common/components/instant-search/services/messages.d.ts +0 -2
  178. package/es/common/components/instant-search/services/messages.d.ts.map +0 -1
  179. package/es/common/components/instant-search/services/utils.d.ts +0 -4
  180. package/es/common/components/instant-search/services/utils.d.ts.map +0 -1
  181. package/es/common/components/msem-preset-editor/components/facet-selector.d.ts +0 -6
  182. package/es/common/components/msem-preset-editor/components/facet-selector.d.ts.map +0 -1
  183. package/es/common/components/msem-preset-editor/components/form.d.ts +0 -8
  184. package/es/common/components/msem-preset-editor/components/form.d.ts.map +0 -1
  185. package/es/common/components/msem-preset-editor/components/stay-picker.d.ts +0 -14
  186. package/es/common/components/msem-preset-editor/components/stay-picker.d.ts.map +0 -1
  187. package/es/common/components/msem-preset-editor/components/widget-list-item.d.ts +0 -12
  188. package/es/common/components/msem-preset-editor/components/widget-list-item.d.ts.map +0 -1
  189. package/es/common/components/msem-preset-editor/components/widget-list.d.ts +0 -17
  190. package/es/common/components/msem-preset-editor/components/widget-list.d.ts.map +0 -1
  191. package/es/common/components/msem-preset-editor/editor-dialog.d.ts +0 -30
  192. package/es/common/components/msem-preset-editor/editor-dialog.d.ts.map +0 -1
  193. package/es/common/components/msem-preset-editor/editors/elloha.d.ts +0 -15
  194. package/es/common/components/msem-preset-editor/editors/elloha.d.ts.map +0 -1
  195. package/es/common/components/msem-preset-editor/editors/index.d.ts +0 -14
  196. package/es/common/components/msem-preset-editor/editors/index.d.ts.map +0 -1
  197. package/es/common/components/msem-preset-editor/editors/lodgings.d.ts +0 -17
  198. package/es/common/components/msem-preset-editor/editors/lodgings.d.ts.map +0 -1
  199. package/es/common/components/msem-preset-editor/editors/ski-passes.d.ts +0 -16
  200. package/es/common/components/msem-preset-editor/editors/ski-passes.d.ts.map +0 -1
  201. package/es/common/components/msem-preset-editor/editors/standard-products.d.ts +0 -16
  202. package/es/common/components/msem-preset-editor/editors/standard-products.d.ts.map +0 -1
  203. package/es/common/components/msem-preset-editor/editors/vakario.d.ts +0 -15
  204. package/es/common/components/msem-preset-editor/editors/vakario.d.ts.map +0 -1
  205. package/es/common/components/msem-preset-editor/msem-preset-editor.d.ts +0 -28
  206. package/es/common/components/msem-preset-editor/msem-preset-editor.d.ts.map +0 -1
  207. package/es/common/components/msem-preset-editor/services/api.d.ts +0 -15
  208. package/es/common/components/msem-preset-editor/services/api.d.ts.map +0 -1
  209. package/es/common/components/msem-preset-editor/services/offers.d.ts +0 -47
  210. package/es/common/components/msem-preset-editor/services/offers.d.ts.map +0 -1
  211. package/es/common/components/msem-preset-editor/services/preset.d.ts +0 -40
  212. package/es/common/components/msem-preset-editor/services/preset.d.ts.map +0 -1
  213. package/es/common/components/msem-preset-editor/services/url-params.d.ts +0 -3
  214. package/es/common/components/msem-preset-editor/services/url-params.d.ts.map +0 -1
  215. package/es/common/components/msem-preset-linker/components/actions.d.ts +0 -11
  216. package/es/common/components/msem-preset-linker/components/actions.d.ts.map +0 -1
  217. package/es/common/components/msem-preset-linker/components/overlays.d.ts +0 -8
  218. package/es/common/components/msem-preset-linker/components/overlays.d.ts.map +0 -1
  219. package/es/common/components/msem-preset-linker/components/resort-selector.d.ts +0 -6
  220. package/es/common/components/msem-preset-linker/components/resort-selector.d.ts.map +0 -1
  221. package/es/common/components/msem-preset-linker/hooks/use-msem-presets.d.ts +0 -4
  222. package/es/common/components/msem-preset-linker/hooks/use-msem-presets.d.ts.map +0 -1
  223. package/es/common/components/msem-preset-linker/index.d.ts +0 -3
  224. package/es/common/components/msem-preset-linker/index.d.ts.map +0 -1
  225. package/es/common/components/msem-preset-linker/msem-preset-linker.d.ts +0 -30
  226. package/es/common/components/msem-preset-linker/msem-preset-linker.d.ts.map +0 -1
  227. package/es/common/components/msem-preset-linker/services/url-params.d.ts +0 -2
  228. package/es/common/components/msem-preset-linker/services/url-params.d.ts.map +0 -1
  229. package/es/common/components/plausible/hooks/use-plausible.d.ts +0 -12
  230. package/es/common/components/plausible/hooks/use-plausible.d.ts.map +0 -1
  231. package/es/common/components/plausible/index.d.ts +0 -8
  232. package/es/common/components/plausible/index.d.ts.map +0 -1
  233. package/es/common/components/plausible/plausible.d.ts +0 -7
  234. package/es/common/components/plausible/plausible.d.ts.map +0 -1
  235. package/es/common/components/plausible/services/callback.d.ts +0 -24
  236. package/es/common/components/plausible/services/callback.d.ts.map +0 -1
  237. package/es/common/components/plausible/services/load.d.ts +0 -2
  238. package/es/common/components/plausible/services/load.d.ts.map +0 -1
  239. package/es/common/components/plausible/services/send-goal.d.ts +0 -7
  240. package/es/common/components/plausible/services/send-goal.d.ts.map +0 -1
  241. package/es/common/components/scroll-spy.d.ts +0 -14
  242. package/es/common/components/scroll-spy.d.ts.map +0 -1
  243. package/es/common/components/scrolling-carousel/index.d.ts +0 -3
  244. package/es/common/components/scrolling-carousel/index.d.ts.map +0 -1
  245. package/es/common/components/scrolling-carousel/scrolling-carousel.d.ts +0 -8
  246. package/es/common/components/scrolling-carousel/scrolling-carousel.d.ts.map +0 -1
  247. package/es/common/components/tabbed-zones.d.ts +0 -12
  248. package/es/common/components/tabbed-zones.d.ts.map +0 -1
  249. package/es/common/hooks/use-faq.d.ts +0 -3
  250. package/es/common/hooks/use-faq.d.ts.map +0 -1
  251. package/es/common/hooks/use-in-view.d.ts +0 -5
  252. package/es/common/hooks/use-in-view.d.ts.map +0 -1
  253. package/es/common/hooks/use-scroll-direction.d.ts +0 -11
  254. package/es/common/hooks/use-scroll-direction.d.ts.map +0 -1
  255. package/es/common/hooks/use-stay.d.ts +0 -4
  256. package/es/common/hooks/use-stay.d.ts.map +0 -1
  257. package/es/common/hooks/use-sticky.d.ts +0 -4
  258. package/es/common/hooks/use-sticky.d.ts.map +0 -1
  259. package/es/common/hooks/use-tunnel.d.ts +0 -8
  260. package/es/common/hooks/use-tunnel.d.ts.map +0 -1
  261. package/es/common/hooks/use-update-effect.d.ts +0 -2
  262. package/es/common/hooks/use-update-effect.d.ts.map +0 -1
  263. package/es/common/hooks/use-window-sizes.d.ts +0 -7
  264. package/es/common/hooks/use-window-sizes.d.ts.map +0 -1
  265. package/es/common/utils/cms.d.ts +0 -4
  266. package/es/common/utils/cms.d.ts.map +0 -1
  267. package/es/common/utils/cookies.d.ts +0 -2
  268. package/es/common/utils/cookies.d.ts.map +0 -1
  269. package/es/common/utils/copy.d.ts +0 -2
  270. package/es/common/utils/copy.d.ts.map +0 -1
  271. package/es/common/utils/dates.d.ts +0 -2
  272. package/es/common/utils/dates.d.ts.map +0 -1
  273. package/es/common/utils/elements.d.ts +0 -5
  274. package/es/common/utils/elements.d.ts.map +0 -1
  275. package/es/common/utils/events.d.ts +0 -4
  276. package/es/common/utils/events.d.ts.map +0 -1
  277. package/es/common/utils/file-manager.d.ts +0 -13
  278. package/es/common/utils/file-manager.d.ts.map +0 -1
  279. package/es/common/utils/load-js.d.ts +0 -3
  280. package/es/common/utils/load-js.d.ts.map +0 -1
  281. package/es/common/utils/msem-widget.d.ts +0 -16
  282. package/es/common/utils/msem-widget.d.ts.map +0 -1
  283. package/es/common/utils/url-parameters.d.ts +0 -2
  284. package/es/common/utils/url-parameters.d.ts.map +0 -1
  285. package/es/esf/components/magic-box/index.d.ts +0 -3
  286. package/es/esf/components/magic-box/index.d.ts.map +0 -1
  287. package/es/esf/components/magic-box/magic-box.d.ts +0 -22
  288. package/es/esf/components/magic-box/magic-box.d.ts.map +0 -1
  289. package/es/esf/components/parcours-esf/index.d.ts +0 -3
  290. package/es/esf/components/parcours-esf/index.d.ts.map +0 -1
  291. package/es/esf/components/parcours-esf/parcours-esf.d.ts +0 -14
  292. package/es/esf/components/parcours-esf/parcours-esf.d.ts.map +0 -1
  293. package/es/lbm/components/lumiplan/api.d.ts +0 -8
  294. package/es/lbm/components/lumiplan/api.d.ts.map +0 -1
  295. package/es/lbm/components/lumiplan/domain.d.ts +0 -8
  296. package/es/lbm/components/lumiplan/domain.d.ts.map +0 -1
  297. package/es/lbm/components/lumiplan/i18n/translations.d.ts +0 -7
  298. package/es/lbm/components/lumiplan/i18n/translations.d.ts.map +0 -1
  299. package/es/lbm/components/lumiplan/index.d.ts +0 -3
  300. package/es/lbm/components/lumiplan/index.d.ts.map +0 -1
  301. package/es/lbm/components/lumiplan/lumiplan.d.ts +0 -2
  302. package/es/lbm/components/lumiplan/lumiplan.d.ts.map +0 -1
  303. package/es/lbm/components/lumiplan/opening.d.ts +0 -9
  304. package/es/lbm/components/lumiplan/opening.d.ts.map +0 -1
  305. package/es/lbm/components/lumiplan/pois.d.ts +0 -8
  306. package/es/lbm/components/lumiplan/pois.d.ts.map +0 -1
  307. package/es/lbm/components/lumiplan/resort-selector.d.ts +0 -12
  308. package/es/lbm/components/lumiplan/resort-selector.d.ts.map +0 -1
  309. package/es/lbm/components/lumiplan/road-condition.d.ts +0 -8
  310. package/es/lbm/components/lumiplan/road-condition.d.ts.map +0 -1
  311. package/es/lbm/components/lumiplan/todays-tips.d.ts +0 -8
  312. package/es/lbm/components/lumiplan/todays-tips.d.ts.map +0 -1
  313. package/es/lbm/components/lumiplan/types.d.ts +0 -285
  314. package/es/lbm/components/lumiplan/types.d.ts.map +0 -1
  315. package/es/lbm/components/lumiplan/weather/avalanche-risk.d.ts +0 -4
  316. package/es/lbm/components/lumiplan/weather/avalanche-risk.d.ts.map +0 -1
  317. package/es/lbm/components/lumiplan/weather/index.d.ts +0 -3
  318. package/es/lbm/components/lumiplan/weather/index.d.ts.map +0 -1
  319. package/es/lbm/components/lumiplan/weather/snow-data.d.ts +0 -8
  320. package/es/lbm/components/lumiplan/weather/snow-data.d.ts.map +0 -1
  321. package/es/lbm/components/lumiplan/weather/weather-data.d.ts +0 -9
  322. package/es/lbm/components/lumiplan/weather/weather-data.d.ts.map +0 -1
  323. package/es/lbm/components/lumiplan/weather/weather-days.d.ts +0 -7
  324. package/es/lbm/components/lumiplan/weather/weather-days.d.ts.map +0 -1
  325. package/es/lbm/components/lumiplan/weather/weather-icon.d.ts +0 -23
  326. package/es/lbm/components/lumiplan/weather/weather-icon.d.ts.map +0 -1
  327. package/es/lbm/components/lumiplan/weather/weather-zones.d.ts +0 -6
  328. package/es/lbm/components/lumiplan/weather/weather-zones.d.ts.map +0 -1
  329. package/es/lbm/components/lumiplan/weather/weather.d.ts +0 -8
  330. package/es/lbm/components/lumiplan/weather/weather.d.ts.map +0 -1
@@ -1,4 +1,3 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
1
  import * as React from "react";
3
2
  import Select from "dt-design-system/es/select";
4
3
  import MutlipleSelect from "dt-design-system/es/multiple-select";
@@ -8,191 +7,279 @@ import NumberPicker from "dt-design-system/es/number-picker";
8
7
  import Form from "../components/form";
9
8
  import * as API from "../services/api";
10
9
  import css from "./ski-passes.module.css";
10
+ import { jsx as _jsx } from "react/jsx-runtime";
11
+ import { jsxs as _jsxs } from "react/jsx-runtime";
12
+ import { Fragment as _Fragment } from "react/jsx-runtime";
11
13
  const ALLOWED_FILTERS = ["domains", "durations", "skiers"];
12
14
  const DEFAULT_DATA = {
13
- firstSkiDate: "",
14
- skiers: [],
15
- activities: [],
16
- domains: [],
17
- durations: [],
15
+ firstSkiDate: "",
16
+ skiers: [],
17
+ activities: [],
18
+ domains: [],
19
+ durations: []
18
20
  };
19
21
  const ACTIVITIES_LABELS = {
20
- piscine: "Piscine",
21
- patinoire: "Patinoire",
22
- vtt: "Télésiège VTT",
23
- ski: "Ski",
24
- "acces-pieton": "Télésiège piéton",
25
- "bouee-neige": "Bouée sur neige",
26
- "ski-activite": "Ski + Activités",
27
- luge: "Luge sur rails",
22
+ piscine: "Piscine",
23
+ patinoire: "Patinoire",
24
+ vtt: "Télésiège VTT",
25
+ ski: "Ski",
26
+ "acces-pieton": "Télésiège piéton",
27
+ "bouee-neige": "Bouée sur neige",
28
+ "ski-activite": "Ski + Activités",
29
+ luge: "Luge sur rails"
28
30
  };
29
- export default function SkiPasses({ preset, setPreset, stay, setShowPresetDialog, onChange, testPreset, baseUrl, }) {
30
- const savedPreset = React.useRef(preset);
31
- const [loading, setLoading] = React.useState(false);
32
- const [catalogs, setCatalogs] = React.useState(null);
33
- const [catalog, setCatalog] = React.useState(preset?.options?.catalog || "");
34
- const [filters, setFilters] = React.useState(null);
35
- const [data, setData] = React.useState(getDefaultData(preset));
36
- const firstSkiDateDefaultMonth = stay?.from
37
- ? new Date(stay.from).getMonth() + 1
38
- : undefined;
39
- const { merchant } = preset?.options;
40
- const isReady = catalogs !== null;
41
- const hasCatalog = !loading && isReady && catalogs?.length > 0 && catalog !== "";
42
- const activities = (filters?.domains
43
- ? [
44
- ...new Set(filters?.domains?.reduce((acc, domain) => {
45
- const { tags } = domain;
46
- if (!tags?.length)
47
- return acc;
48
- const formatedTags = tags
49
- .filter((tag) => {
50
- return (Object.keys(ACTIVITIES_LABELS).includes(tag) &&
51
- !acc.some((item) => item.value === tag));
52
- })
53
- .map((tag) => {
54
- return { value: tag, label: ACTIVITIES_LABELS[tag] || tag };
55
- });
56
- return [...acc, ...formatedTags];
57
- }, [])),
58
- ]
59
- : []);
60
- const selectedActivities = data.activities.map((activity) => {
61
- return activities.find((a) => a.value === activity);
31
+ export default function SkiPasses({
32
+ preset,
33
+ setPreset,
34
+ stay,
35
+ setShowPresetDialog,
36
+ onChange,
37
+ testPreset,
38
+ baseUrl
39
+ }) {
40
+ const savedPreset = React.useRef(preset);
41
+ const [loading, setLoading] = React.useState(false);
42
+ const [catalogs, setCatalogs] = React.useState(null);
43
+ const [catalog, setCatalog] = React.useState(preset?.options?.catalog || "");
44
+ const [filters, setFilters] = React.useState(null);
45
+ const [data, setData] = React.useState(getDefaultData(preset));
46
+ const firstSkiDateDefaultMonth = stay?.from ? new Date(stay.from).getMonth() + 1 : undefined;
47
+ const {
48
+ merchant
49
+ } = preset?.options;
50
+ const isReady = catalogs !== null;
51
+ const hasCatalog = !loading && isReady && catalogs?.length > 0 && catalog !== "";
52
+ const activities = filters?.domains ? [...new Set(filters?.domains?.reduce((acc, domain) => {
53
+ const {
54
+ tags
55
+ } = domain;
56
+ if (!tags?.length) return acc;
57
+ const formatedTags = tags.filter(tag => {
58
+ return Object.keys(ACTIVITIES_LABELS).includes(tag) && !acc.some(item => item.value === tag);
59
+ }).map(tag => {
60
+ return {
61
+ value: tag,
62
+ label: ACTIVITIES_LABELS[tag] || tag
63
+ };
62
64
  });
63
- const selectedActivitiesCodes = activities.reduce((acc, activity) => {
64
- const { value } = activity;
65
- return data.activities?.includes(value)
66
- ? [...new Set([...acc, value])]
67
- : acc;
68
- }, []);
69
- const filteredDomains = selectedActivitiesCodes?.length > 0 && filters
70
- ? filters.domains?.filter((domain) => {
71
- return domain.tags?.some((tag) => {
72
- return selectedActivitiesCodes.includes(tag);
73
- });
74
- })
75
- : filters?.domains;
76
- const selectedDomainsIds = filters?.domains &&
77
- filters?.domains.reduce((acc, domain) => {
78
- const { code, catalogIds } = domain;
79
- return data.domains.includes(code)
80
- ? [...new Set([...acc, ...catalogIds])]
81
- : acc;
82
- }, []);
83
- const filteredDurations = selectedActivitiesCodes?.length > 0 && filters
84
- ? filters.durations?.filter((duration) => {
85
- return duration.tags?.some((tag) => {
86
- return (selectedActivitiesCodes.includes(tag) ||
87
- duration.catalogIds.some((id) => selectedDomainsIds && selectedDomainsIds.includes(id)));
88
- });
89
- })
90
- : filters?.durations;
91
- const selectedDomains = data.domains.map((domain) => filters?.domains?.find((d) => d.value === domain));
92
- const selectedDurations = data.durations.map((domain) => filters?.durations?.find((d) => d.value === domain));
93
- const cancelPreset = () => {
94
- setPreset(savedPreset.current);
95
- setShowPresetDialog(false);
96
- };
97
- const confirmPreset = () => {
98
- setShowPresetDialog(false);
99
- };
100
- const updateField = (field) => (value) => {
101
- const isArray = Array.isArray(value);
102
- if (isArray) {
103
- setData((data) => ({ ...data, [field]: value.map((v) => v.value) }));
104
- }
105
- else {
106
- setData((data) => ({ ...data, [field]: value }));
107
- }
108
- };
109
- const updateFirstSkiDate = (value) => {
110
- updateField("firstSkiDate")(value);
111
- };
112
- const updateDomains = (value) => {
113
- if (value.length > 0) {
114
- updateField("durations")([]);
115
- }
116
- updateField("domains")(value);
117
- };
118
- const updateSkiers = (code) => (value) => {
119
- const filteredSkiers = data.skiers.filter((skier) => skier !== code);
120
- const newSkiers = !value ? [] : new Array(parseInt(value)).fill(code);
121
- setData({ ...data, skiers: [...filteredSkiers, ...newSkiers] });
122
- };
123
- React.useEffect(() => {
124
- if (!isReady) {
125
- const runEffect = async () => {
126
- try {
127
- const catalogs = await API.getSkiPassesCatalogs(merchant);
128
- setCatalogs(catalogs);
129
- }
130
- catch (e) {
131
- setCatalogs([]);
132
- }
133
- };
134
- runEffect();
135
- }
136
- }, [isReady, merchant]);
137
- React.useEffect(() => {
138
- if (catalog) {
139
- const initFilters = async () => {
140
- setLoading(true);
141
- const filters = await API.getSkiPassesFilters(merchant, catalog);
142
- const filteredFilters = Object.keys(filters).reduce((acc, key) => {
143
- const filter = filters[key];
144
- return ALLOWED_FILTERS.includes(key)
145
- ? { ...acc, [key]: filter.map((f) => ({ ...f, value: f.code })) }
146
- : acc;
147
- }, {});
148
- setLoading(false);
149
- setFilters(filteredFilters);
150
- };
151
- initFilters();
152
- }
153
- else {
154
- setFilters(null);
65
+ return [...acc, ...formatedTags];
66
+ }, []))] : [];
67
+ const selectedActivities = data.activities.map(activity => {
68
+ return activities.find(a => a.value === activity);
69
+ });
70
+ const selectedActivitiesCodes = activities.reduce((acc, activity) => {
71
+ const {
72
+ value
73
+ } = activity;
74
+ return data.activities?.includes(value) ? [...new Set([...acc, value])] : acc;
75
+ }, []);
76
+ const filteredDomains = selectedActivitiesCodes?.length > 0 && filters ? filters.domains?.filter(domain => {
77
+ return domain.tags?.some(tag => {
78
+ return selectedActivitiesCodes.includes(tag);
79
+ });
80
+ }) : filters?.domains;
81
+ const selectedDomainsIds = filters?.domains && filters?.domains.reduce((acc, domain) => {
82
+ const {
83
+ code,
84
+ catalogIds
85
+ } = domain;
86
+ return data.domains.includes(code) ? [...new Set([...acc, ...catalogIds])] : acc;
87
+ }, []);
88
+ const filteredDurations = selectedActivitiesCodes?.length > 0 && filters ? filters.durations?.filter(duration => {
89
+ return duration.tags?.some(tag => {
90
+ return selectedActivitiesCodes.includes(tag) || duration.catalogIds.some(id => selectedDomainsIds && selectedDomainsIds.includes(id));
91
+ });
92
+ }) : filters?.durations;
93
+ const selectedDomains = data.domains.map(domain => filters?.domains?.find(d => d.value === domain));
94
+ const selectedDurations = data.durations.map(domain => filters?.durations?.find(d => d.value === domain));
95
+ const cancelPreset = () => {
96
+ setPreset(savedPreset.current);
97
+ setShowPresetDialog(false);
98
+ };
99
+ const confirmPreset = () => {
100
+ setShowPresetDialog(false);
101
+ };
102
+ const updateField = field => value => {
103
+ const isArray = Array.isArray(value);
104
+ if (isArray) {
105
+ setData(data => ({
106
+ ...data,
107
+ [field]: value.map(v => v.value)
108
+ }));
109
+ } else {
110
+ setData(data => ({
111
+ ...data,
112
+ [field]: value
113
+ }));
114
+ }
115
+ };
116
+ const updateFirstSkiDate = value => {
117
+ updateField("firstSkiDate")(value);
118
+ };
119
+ const updateDomains = value => {
120
+ if (value.length > 0) {
121
+ updateField("durations")([]);
122
+ }
123
+ updateField("domains")(value);
124
+ };
125
+ const updateSkiers = code => value => {
126
+ const filteredSkiers = data.skiers.filter(skier => skier !== code);
127
+ const newSkiers = !value ? [] : new Array(parseInt(value)).fill(code);
128
+ setData({
129
+ ...data,
130
+ skiers: [...filteredSkiers, ...newSkiers]
131
+ });
132
+ };
133
+ React.useEffect(() => {
134
+ if (!isReady) {
135
+ const runEffect = async () => {
136
+ try {
137
+ const catalogs = await API.getSkiPassesCatalogs(merchant);
138
+ setCatalogs(catalogs);
139
+ } catch (e) {
140
+ setCatalogs([]);
155
141
  }
156
- }, [catalog, merchant]);
157
- React.useEffect(() => {
158
- setPreset((current = {}) => {
159
- const newPreset = {
160
- ...current,
161
- options: {
162
- ...(current?.options || {}),
163
- catalog,
164
- },
165
- presets: {
166
- ...(current?.presets || {}),
167
- ...data,
168
- },
169
- url: baseUrl || undefined,
170
- };
171
- onChange?.(newPreset);
172
- return newPreset;
173
- });
174
- }, [catalog, data, baseUrl, setPreset, onChange]);
175
- return (_jsxs(Form, { title: "Presets forfaits", width: 420, preset: preset, buttonsActions: {
176
- testPreset,
177
- cancelPreset,
178
- confirmPreset: hasCatalog ? confirmPreset : undefined,
179
- }, children: [_jsx(Select, { label: "Catalogue", value: catalog, options: catalogs ? ["", ...catalogs] : [], onValueChange: setCatalog, loading: !isReady }), loading && _jsx(Loader, { className: css.loader }), hasCatalog && (_jsxs(_Fragment, { children: [_jsx(Input, { type: "date", label: "1er jour", value: data.firstSkiDate, onValueChange: updateFirstSkiDate, defaultMonth: firstSkiDateDefaultMonth, min: stay?.from || undefined, max: stay?.to || undefined }), filters?.skiers && filters?.skiers?.length > 1 && (_jsxs("div", { className: css.skiers, children: [_jsx("div", { className: css.label, children: "Skieurs" }), filters.skiers.map((skier) => {
180
- const { code, label, ageMin, ageMax } = skier;
181
- const title = `${label} (de ${ageMin} à ${ageMax} ans)`;
182
- const value = data.skiers?.filter((skier) => skier === code)?.length || 0;
183
- return (_jsx(NumberPicker, { label: title, min: 0, max: 20, value: value, disabled: false, onChange: updateSkiers(code), withInput: true }, code));
184
- })] })), _jsx("div", { className: css.label, children: "Filtres" }), (activities?.length > 0 || loading) && (_jsx(MutlipleSelect, { label: "Activit\u00E9s", placeholder: "Selectionnez une ou plusieurs options", options: activities, values: selectedActivities, onChange: updateField("activities"), loading: loading })), _jsxs("div", { className: css.row, children: [((filteredDomains && filteredDomains.length > 0) || loading) && (_jsx(MutlipleSelect, { label: "Domaines", placeholder: "Selectionnez une ou plusieurs options", options: filteredDomains || [], values: selectedDomains, onChange: updateDomains, loading: loading })), ((filteredDurations && filteredDurations?.length > 0) ||
185
- loading) && (_jsx(MutlipleSelect, { label: "Dur\u00E9es", placeholder: "Selectionnez une ou plusieurs options", options: filteredDurations || [], values: selectedDurations, onChange: updateField("durations"), disabled: data.domains?.length === 0, loading: loading }))] })] }))] }));
142
+ };
143
+ runEffect();
144
+ }
145
+ }, [isReady, merchant]);
146
+ React.useEffect(() => {
147
+ if (catalog) {
148
+ const initFilters = async () => {
149
+ setLoading(true);
150
+ const filters = await API.getSkiPassesFilters(merchant, catalog);
151
+ const filteredFilters = Object.keys(filters).reduce((acc, key) => {
152
+ const filter = filters[key];
153
+ return ALLOWED_FILTERS.includes(key) ? {
154
+ ...acc,
155
+ [key]: filter.map(f => ({
156
+ ...f,
157
+ value: f.code
158
+ }))
159
+ } : acc;
160
+ }, {});
161
+ setLoading(false);
162
+ setFilters(filteredFilters);
163
+ };
164
+ initFilters();
165
+ } else {
166
+ setFilters(null);
167
+ }
168
+ }, [catalog, merchant]);
169
+ React.useEffect(() => {
170
+ setPreset((current = {}) => {
171
+ const newPreset = {
172
+ ...current,
173
+ options: {
174
+ ...(current?.options || {}),
175
+ catalog
176
+ },
177
+ presets: {
178
+ ...(current?.presets || {}),
179
+ ...data
180
+ },
181
+ url: baseUrl || undefined
182
+ };
183
+ onChange?.(newPreset);
184
+ return newPreset;
185
+ });
186
+ }, [catalog, data, baseUrl, setPreset, onChange]);
187
+ return _jsxs(Form, {
188
+ title: "Presets forfaits",
189
+ width: 420,
190
+ preset: preset,
191
+ buttonsActions: {
192
+ testPreset,
193
+ cancelPreset,
194
+ confirmPreset: hasCatalog ? confirmPreset : undefined
195
+ },
196
+ children: [_jsx(Select, {
197
+ label: "Catalogue",
198
+ value: catalog,
199
+ options: catalogs ? ["", ...catalogs] : [],
200
+ onValueChange: setCatalog,
201
+ loading: !isReady
202
+ }), loading && _jsx(Loader, {
203
+ className: css.loader
204
+ }), hasCatalog && _jsxs(_Fragment, {
205
+ children: [_jsx(Input, {
206
+ type: "date",
207
+ label: "1er jour",
208
+ value: data.firstSkiDate,
209
+ onValueChange: updateFirstSkiDate,
210
+ defaultMonth: firstSkiDateDefaultMonth,
211
+ min: stay?.from || undefined,
212
+ max: stay?.to || undefined
213
+ }), filters?.skiers && filters?.skiers?.length > 1 && _jsxs("div", {
214
+ className: css.skiers,
215
+ children: [_jsx("div", {
216
+ className: css.label,
217
+ children: "Skieurs"
218
+ }), filters.skiers.map(skier => {
219
+ const {
220
+ code,
221
+ label,
222
+ ageMin,
223
+ ageMax
224
+ } = skier;
225
+ const title = `${label} (de ${ageMin} à ${ageMax} ans)`;
226
+ const value = data.skiers?.filter(skier => skier === code)?.length || 0;
227
+ return _jsx(NumberPicker, {
228
+ label: title,
229
+ min: 0,
230
+ max: 20,
231
+ value: value,
232
+ disabled: false,
233
+ onChange: updateSkiers(code),
234
+ withInput: true
235
+ }, code);
236
+ })]
237
+ }), _jsx("div", {
238
+ className: css.label,
239
+ children: "Filtres"
240
+ }), (activities?.length > 0 || loading) && _jsx(MutlipleSelect, {
241
+ label: "Activit\xE9s",
242
+ placeholder: "Selectionnez une ou plusieurs options",
243
+ options: activities,
244
+ values: selectedActivities,
245
+ onChange: updateField("activities"),
246
+ loading: loading
247
+ }), _jsxs("div", {
248
+ className: css.row,
249
+ children: [(filteredDomains && filteredDomains.length > 0 || loading) && _jsx(MutlipleSelect, {
250
+ label: "Domaines",
251
+ placeholder: "Selectionnez une ou plusieurs options",
252
+ options: filteredDomains || [],
253
+ values: selectedDomains,
254
+ onChange: updateDomains,
255
+ loading: loading
256
+ }), (filteredDurations && filteredDurations?.length > 0 || loading) && _jsx(MutlipleSelect, {
257
+ label: "Dur\xE9es",
258
+ placeholder: "Selectionnez une ou plusieurs options",
259
+ options: filteredDurations || [],
260
+ values: selectedDurations,
261
+ onChange: updateField("durations"),
262
+ disabled: data.domains?.length === 0,
263
+ loading: loading
264
+ })]
265
+ })]
266
+ })]
267
+ });
186
268
  }
187
269
  function getDefaultData(preset) {
188
- if (!preset?.presets)
189
- return DEFAULT_DATA;
190
- const { skiers, firstSkiDate, activities, domains, durations } = preset.presets;
191
- return {
192
- skiers: skiers || DEFAULT_DATA.skiers,
193
- firstSkiDate: firstSkiDate || DEFAULT_DATA.firstSkiDate,
194
- activities: activities || DEFAULT_DATA.activities,
195
- domains: domains || DEFAULT_DATA.domains,
196
- durations: durations || DEFAULT_DATA.durations,
197
- };
198
- }
270
+ if (!preset?.presets) return DEFAULT_DATA;
271
+ const {
272
+ skiers,
273
+ firstSkiDate,
274
+ activities,
275
+ domains,
276
+ durations
277
+ } = preset.presets;
278
+ return {
279
+ skiers: skiers || DEFAULT_DATA.skiers,
280
+ firstSkiDate: firstSkiDate || DEFAULT_DATA.firstSkiDate,
281
+ activities: activities || DEFAULT_DATA.activities,
282
+ domains: domains || DEFAULT_DATA.domains,
283
+ durations: durations || DEFAULT_DATA.durations
284
+ };
285
+ }
@@ -1,66 +1,94 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
1
  import * as React from "react";
3
2
  import Select from "dt-design-system/es/select";
4
3
  import Form from "../components/form";
5
4
  import * as API from "../services/api";
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
6
  const DEFAULT_DATA = {
7
- productCategory: "",
7
+ productCategory: ""
8
8
  };
9
- export default function StandardProducts({ preset, setPreset, facet, setShowPresetDialog, onChange, testPreset, }) {
10
- const savedPreset = React.useRef(preset);
11
- const [loading, setLoading] = React.useState(false);
12
- const [productCategories, setProductCategories] = React.useState([]);
13
- const [selectedProductCategory, setSelectedProductCategory] = React.useState(getDefaultData(preset));
14
- const formatedCategories = productCategories.map(({ name, slug }) => {
15
- return { label: name, value: slug };
16
- });
17
- const { merchant } = preset?.options || {};
18
- const cancelPreset = () => {
19
- setPreset(savedPreset.current);
20
- setShowPresetDialog(false);
9
+ export default function StandardProducts({
10
+ preset,
11
+ setPreset,
12
+ facet,
13
+ setShowPresetDialog,
14
+ onChange,
15
+ testPreset
16
+ }) {
17
+ const savedPreset = React.useRef(preset);
18
+ const [loading, setLoading] = React.useState(false);
19
+ const [productCategories, setProductCategories] = React.useState([]);
20
+ const [selectedProductCategory, setSelectedProductCategory] = React.useState(getDefaultData(preset));
21
+ const formatedCategories = productCategories.map(({
22
+ name,
23
+ slug
24
+ }) => {
25
+ return {
26
+ label: name,
27
+ value: slug
21
28
  };
22
- const confirmPreset = () => {
23
- setShowPresetDialog(false);
29
+ });
30
+ const {
31
+ merchant
32
+ } = preset?.options || {};
33
+ const cancelPreset = () => {
34
+ setPreset(savedPreset.current);
35
+ setShowPresetDialog(false);
36
+ };
37
+ const confirmPreset = () => {
38
+ setShowPresetDialog(false);
39
+ };
40
+ React.useEffect(() => {
41
+ const runEffect = async () => {
42
+ try {
43
+ setLoading(true);
44
+ const {
45
+ categories
46
+ } = await API.getOtherProductsCategories(facet, merchant);
47
+ setProductCategories(categories);
48
+ } catch (e) {
49
+ console.error(e);
50
+ } finally {
51
+ setLoading(false);
52
+ }
24
53
  };
25
- React.useEffect(() => {
26
- const runEffect = async () => {
27
- try {
28
- setLoading(true);
29
- const { categories } = await API.getOtherProductsCategories(facet, merchant);
30
- setProductCategories(categories);
31
- }
32
- catch (e) {
33
- // eslint-disable-next-line no-console
34
- console.error(e);
35
- }
36
- finally {
37
- setLoading(false);
38
- }
39
- };
40
- runEffect();
41
- }, [facet, merchant]);
42
- React.useEffect(() => {
43
- setPreset((current = {}) => {
44
- const newPreset = {
45
- ...current,
46
- presets: {
47
- ...(current?.presets || {}),
48
- productCategory: selectedProductCategory,
49
- },
50
- };
51
- onChange?.(newPreset);
52
- return newPreset;
53
- });
54
- }, [onChange, selectedProductCategory, setPreset]);
55
- return (_jsx(Form, { title: "Presets activit\u00E9s Elloha", width: 420, preset: preset, buttonsActions: {
56
- testPreset,
57
- cancelPreset,
58
- confirmPreset: selectedProductCategory ? confirmPreset : undefined,
59
- }, children: _jsx(Select, { label: "Cat\u00E9gorie de produit", placeholder: "S\u00E9lectionnez une cat\u00E9gorie", options: formatedCategories, value: selectedProductCategory, onValueChange: setSelectedProductCategory, disabled: loading }) }));
54
+ runEffect();
55
+ }, [facet, merchant]);
56
+ React.useEffect(() => {
57
+ setPreset((current = {}) => {
58
+ const newPreset = {
59
+ ...current,
60
+ presets: {
61
+ ...(current?.presets || {}),
62
+ productCategory: selectedProductCategory
63
+ }
64
+ };
65
+ onChange?.(newPreset);
66
+ return newPreset;
67
+ });
68
+ }, [onChange, selectedProductCategory, setPreset]);
69
+ return _jsx(Form, {
70
+ title: "Presets activit\xE9s Elloha",
71
+ width: 420,
72
+ preset: preset,
73
+ buttonsActions: {
74
+ testPreset,
75
+ cancelPreset,
76
+ confirmPreset: selectedProductCategory ? confirmPreset : undefined
77
+ },
78
+ children: _jsx(Select, {
79
+ label: "Cat\xE9gorie de produit",
80
+ placeholder: "S\xE9lectionnez une cat\xE9gorie",
81
+ options: formatedCategories,
82
+ value: selectedProductCategory,
83
+ onValueChange: setSelectedProductCategory,
84
+ disabled: loading
85
+ })
86
+ });
60
87
  }
61
88
  function getDefaultData(preset) {
62
- if (!preset?.presets)
63
- return DEFAULT_DATA;
64
- const { productCategory } = preset.presets;
65
- return productCategory || DEFAULT_DATA.productCategory;
66
- }
89
+ if (!preset?.presets) return DEFAULT_DATA;
90
+ const {
91
+ productCategory
92
+ } = preset.presets;
93
+ return productCategory || DEFAULT_DATA.productCategory;
94
+ }