ublo-lib 1.24.4 → 1.25.0

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 +243 -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,72 +1,75 @@
1
1
  const fr = {
2
- subject: "Objet",
3
- firstname: "Prénom",
4
- lastname: "Nom",
5
- email: "E-mail",
6
- phoneCode: "Indicatif",
7
- phone: "Téléphone",
8
- country: "Pays",
9
- category: "Destinataire",
10
- stay: "Dates de séjour",
11
- stayFrom: "Date de début",
12
- stayFromDate: "Date de début de séjour",
13
- stayTo: "Date de fin",
14
- stayToDate: "Date de fin de séjour",
15
- dateFormat: "Choisissez une date",
16
- from: "Du",
17
- to: "au",
18
- message: "Message",
19
- submit: "Envoyer le message",
20
- defaultCountry: "Indiquez votre pays...",
21
- defaultCategory: "Sélectionnez...",
22
- defaultSubject: "Sélectionnez...",
23
- sendSucesss: "Votre message à bien été envoyé !",
24
- sendError: "Une erreur est survenue pendant l'envoi du message. Veuillez réessayer ultérieurement.",
25
- parametersError: "Une erreur est survenue pendant la génération du formulaire. Veuillez réessayer ultérieurement.",
26
- emailError: 'L\'email doit être au format "john.doe@domaine.com"',
27
- phoneError: 'Le téléphone doit être au format "0612345678"',
28
- lengthError: '"{label}" doit contenir au moins {length} caractère(s)',
29
- mandatoryError: '"{label}" est obligatoire',
2
+ subject: "Objet",
3
+ firstname: "Prénom",
4
+ lastname: "Nom",
5
+ email: "E-mail",
6
+ phoneCode: "Indicatif",
7
+ phone: "Téléphone",
8
+ country: "Pays",
9
+ category: "Destinataire",
10
+ stay: "Dates de séjour",
11
+ stayFrom: "Date de début",
12
+ stayFromDate: "Date de début de séjour",
13
+ stayTo: "Date de fin",
14
+ stayToDate: "Date de fin de séjour",
15
+ dateFormat: "Choisissez une date",
16
+ from: "Du",
17
+ to: "au",
18
+ message: "Message",
19
+ submit: "Envoyer le message",
20
+ defaultCountry: "Indiquez votre pays...",
21
+ defaultCategory: "Sélectionnez...",
22
+ defaultSubject: "Sélectionnez...",
23
+ sendSucesss: "Votre message à bien été envoyé !",
24
+ sendError: "Une erreur est survenue pendant l'envoi du message. Veuillez réessayer ultérieurement.",
25
+ parametersError: "Une erreur est survenue pendant la génération du formulaire. Veuillez réessayer ultérieurement.",
26
+ emailError: 'L\'email doit être au format "john.doe@domaine.com"',
27
+ phoneError: 'Le téléphone doit être au format "0612345678"',
28
+ lengthError: '"{label}" doit contenir au moins {length} caractère(s)',
29
+ mandatoryError: '"{label}" est obligatoire'
30
30
  };
31
31
  const en = {
32
- subject: "Subject",
33
- firstname: "Firstname",
34
- lastname: "Lastname",
35
- email: "E-mail",
36
- phoneCode: "Phone code",
37
- phone: "Phone number",
38
- country: "Country",
39
- category: "Addressee",
40
- stay: "Stay dates",
41
- stayFromDate: "Stay from date",
42
- stayToDate: "Stay to date",
43
- stayFrom: "From date",
44
- stayTo: "End date",
45
- dateFormat: "Choose a date",
46
- from: "From",
47
- to: "to",
48
- message: "Message",
49
- submit: "Send message",
50
- defaultCountry: "Select your country...",
51
- defaultCategory: "Select...",
52
- defaultSubject: "Select...",
53
- sendSucesss: "Your message was just sent !",
54
- sendError: "An error occured during the sending of the message. Please try again later.",
55
- parametersError: "An error occured during the creation of the form. Please try again later.",
56
- emailError: 'The email must be in the format "john.doe@domain.com"',
57
- phoneError: 'The phone number must be in the following formats: "0612345678" or "555 555 555',
58
- lengthError: '"{label}" must contain at least {length} character(s)',
59
- mandatoryError: '"{label}" is mandatory',
32
+ subject: "Subject",
33
+ firstname: "Firstname",
34
+ lastname: "Lastname",
35
+ email: "E-mail",
36
+ phoneCode: "Phone code",
37
+ phone: "Phone number",
38
+ country: "Country",
39
+ category: "Addressee",
40
+ stay: "Stay dates",
41
+ stayFromDate: "Stay from date",
42
+ stayToDate: "Stay to date",
43
+ stayFrom: "From date",
44
+ stayTo: "End date",
45
+ dateFormat: "Choose a date",
46
+ from: "From",
47
+ to: "to",
48
+ message: "Message",
49
+ submit: "Send message",
50
+ defaultCountry: "Select your country...",
51
+ defaultCategory: "Select...",
52
+ defaultSubject: "Select...",
53
+ sendSucesss: "Your message was just sent !",
54
+ sendError: "An error occured during the sending of the message. Please try again later.",
55
+ parametersError: "An error occured during the creation of the form. Please try again later.",
56
+ emailError: 'The email must be in the format "john.doe@domain.com"',
57
+ phoneError: 'The phone number must be in the following formats: "0612345678" or "555 555 555',
58
+ lengthError: '"{label}" must contain at least {length} character(s)',
59
+ mandatoryError: '"{label}" is mandatory'
60
60
  };
61
61
  export function get(lang, overrides = {}) {
62
- const locale = lang === "fr" ? fr : en;
63
- const override = overrides[lang] || {};
64
- const locales = { ...locale, ...override };
65
- return locales;
62
+ const locale = lang === "fr" ? fr : en;
63
+ const override = overrides[lang] || {};
64
+ const locales = {
65
+ ...locale,
66
+ ...override
67
+ };
68
+ return locales;
66
69
  }
67
70
  export function format(value, params) {
68
- return Object.keys(params).reduce((acc, param) => {
69
- const search = `{${param}}`;
70
- return acc.replace(search, params[param]);
71
- }, value);
72
- }
71
+ return Object.keys(params).reduce((acc, param) => {
72
+ const search = `{${param}}`;
73
+ return acc.replace(search, params[param]);
74
+ }, value);
75
+ }
@@ -1,12 +1,10 @@
1
- // import * as Plausible from "ublo-lib/es/common/components/plausible";
2
1
  import * as Plausible from "../../plausible";
3
2
  export function sendEvent(values, params) {
4
- if (!params)
5
- return;
6
- const country = params.countries.find((country) => country.code === values.country);
7
- const subject = params.subjects.find((subject) => String(subject.id) === values.subject);
8
- Plausible.sendGoal("Contact-us", {
9
- Country: country?.name,
10
- Subject: subject?.label,
11
- });
12
- }
3
+ if (!params) return;
4
+ const country = params.countries.find(country => country.code === values.country);
5
+ const subject = params.subjects.find(subject => String(subject.id) === values.subject);
6
+ Plausible.sendGoal("Contact-us", {
7
+ Country: country?.name,
8
+ Subject: subject?.label
9
+ });
10
+ }
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1,8 +1,10 @@
1
1
  import * as React from "react";
2
2
  export default function useConstant(fn) {
3
- const ref = React.useRef();
4
- if (!ref.current) {
5
- ref.current = { v: fn() };
6
- }
7
- return ref.current.v;
8
- }
3
+ const ref = React.useRef();
4
+ if (!ref.current) {
5
+ ref.current = {
6
+ v: fn()
7
+ };
8
+ }
9
+ return ref.current.v;
10
+ }
@@ -4,8 +4,17 @@ import { useAsync } from "react-async-hook";
4
4
  import useConstant from "./use-constant";
5
5
  const DEBOUNCE_AMOUNT = 400;
6
6
  export default function useDebouncedSearch(searchFunction) {
7
- const [text, setText] = React.useState("");
8
- const debouncedSearchFunction = useConstant(() => debouncePromise(searchFunction, DEBOUNCE_AMOUNT));
9
- const search = useAsync(async () => (text.length === 0 ? undefined : debouncedSearchFunction(text)), [debouncedSearchFunction, text], { setLoading: (state) => ({ ...state, loading: true }) });
10
- return { text, setText, search };
11
- }
7
+ const [text, setText] = React.useState("");
8
+ const debouncedSearchFunction = useConstant(() => debouncePromise(searchFunction, DEBOUNCE_AMOUNT));
9
+ const search = useAsync(async () => text.length === 0 ? undefined : debouncedSearchFunction(text), [debouncedSearchFunction, text], {
10
+ setLoading: state => ({
11
+ ...state,
12
+ loading: true
13
+ })
14
+ });
15
+ return {
16
+ text,
17
+ setText,
18
+ search
19
+ };
20
+ }
@@ -1,10 +1,14 @@
1
1
  import getConfig from "next/config";
2
2
  import useDebouncedSearch from "./use-debounced-search";
3
3
  import * as API from "../services/api";
4
- const { publicRuntimeConfig } = getConfig();
5
- const { site } = publicRuntimeConfig;
4
+ const {
5
+ publicRuntimeConfig
6
+ } = getConfig();
7
+ const {
8
+ site
9
+ } = publicRuntimeConfig;
6
10
  export default function useSearch(lang, options = {}) {
7
- return useDebouncedSearch(async (query) => {
8
- return API.fetchResults(site, lang, query, options.groupLimit, options.queryBy, options.queryByWeights);
9
- });
10
- }
11
+ return useDebouncedSearch(async query => {
12
+ return API.fetchResults(site, lang, query, options.groupLimit, options.queryBy, options.queryByWeights);
13
+ });
14
+ }
@@ -1,2 +1,2 @@
1
1
  import InstantSearch from "./instant-search";
2
- export default InstantSearch;
2
+ export default InstantSearch;
@@ -1,4 +1,3 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
1
  import * as React from "react";
3
2
  import classNames from "classnames";
4
3
  import Input from "dt-design-system/es/input";
@@ -7,50 +6,81 @@ import * as Icons from "dt-design-system/es/icons";
7
6
  import * as Ripple from "dt-design-system/es/ripple";
8
7
  import message from "./services/messages";
9
8
  import css from "./input.module.css";
9
+ import { jsx as _jsx } from "react/jsx-runtime";
10
+ import { jsxs as _jsxs } from "react/jsx-runtime";
10
11
  const TRANSITION_DURATION = 1800;
11
- export default function SearchInput({ lang, text, setText, closeSearch, loading, suggestions, }) {
12
- const [currentSuggestion, setCurrentSuggestion] = React.useState(0);
13
- const updateText = (value) => () => {
14
- setText(value);
15
- };
16
- const classes = classNames(css.input, {
17
- [css.inputLoading]: loading,
18
- });
19
- const inputIcon = loading ? "Loader2" : "Search";
20
- const suggestionsSet = getSuggestions(suggestions)[lang];
21
- const enableSuggestion = Boolean(suggestionsSet);
22
- const createRipple = (e) => {
23
- Ripple.create(e);
24
- };
25
- React.useEffect(() => {
26
- if (enableSuggestion && !text) {
27
- const interval = setInterval(() => {
28
- setCurrentSuggestion((current) => {
29
- const nextSuggestion = current >= suggestionsSet.length - 1 ? 0 : current + 1;
30
- return nextSuggestion;
31
- });
32
- }, TRANSITION_DURATION);
33
- return () => {
34
- clearInterval(interval);
35
- };
36
- }
37
- }, [enableSuggestion, suggestionsSet, text]);
38
- return (_jsxs("div", { className: css.container, children: [_jsx(Input, { value: text, onValueChange: setText, icon: inputIcon, className: classes }), enableSuggestion && !text && (_jsxs("div", { className: css.suggestion, children: [message(lang, "try"), _jsx("div", { className: css.buttons, children: suggestionsSet.map((suggestion, i) => {
39
- const isCurrent = i === currentSuggestion;
40
- const isPrev = currentSuggestion === 0
41
- ? i === suggestionsSet.length - 1
42
- : i === currentSuggestion - 1;
43
- const classes = classNames(css.button, {
44
- [css.buttonCurrent]: isCurrent,
45
- [css.buttonPrev]: isPrev,
46
- });
47
- return (_jsxs("button", { className: classes, onClick: updateText(suggestion), onMouseDown: createRipple, children: ["\u00AB ", suggestion, " \u00BB"] }, suggestion));
48
- }) })] })), _jsx(Button, { variant: "transparent", className: css.close, onClick: closeSearch, children: _jsx(Icons.Cross, {}) })] }));
12
+ export default function SearchInput({
13
+ lang,
14
+ text,
15
+ setText,
16
+ closeSearch,
17
+ loading,
18
+ suggestions
19
+ }) {
20
+ const [currentSuggestion, setCurrentSuggestion] = React.useState(0);
21
+ const updateText = value => () => {
22
+ setText(value);
23
+ };
24
+ const classes = classNames(css.input, {
25
+ [css.inputLoading]: loading
26
+ });
27
+ const inputIcon = loading ? "Loader2" : "Search";
28
+ const suggestionsSet = getSuggestions(suggestions)[lang];
29
+ const enableSuggestion = Boolean(suggestionsSet);
30
+ const createRipple = e => {
31
+ Ripple.create(e);
32
+ };
33
+ React.useEffect(() => {
34
+ if (enableSuggestion && !text) {
35
+ const interval = setInterval(() => {
36
+ setCurrentSuggestion(current => {
37
+ const nextSuggestion = current >= suggestionsSet.length - 1 ? 0 : current + 1;
38
+ return nextSuggestion;
39
+ });
40
+ }, TRANSITION_DURATION);
41
+ return () => {
42
+ clearInterval(interval);
43
+ };
44
+ }
45
+ }, [enableSuggestion, suggestionsSet, text]);
46
+ return _jsxs("div", {
47
+ className: css.container,
48
+ children: [_jsx(Input, {
49
+ value: text,
50
+ onValueChange: setText,
51
+ icon: inputIcon,
52
+ className: classes
53
+ }), enableSuggestion && !text && _jsxs("div", {
54
+ className: css.suggestion,
55
+ children: [message(lang, "try"), _jsx("div", {
56
+ className: css.buttons,
57
+ children: suggestionsSet.map((suggestion, i) => {
58
+ const isCurrent = i === currentSuggestion;
59
+ const isPrev = currentSuggestion === 0 ? i === suggestionsSet.length - 1 : i === currentSuggestion - 1;
60
+ const classes = classNames(css.button, {
61
+ [css.buttonCurrent]: isCurrent,
62
+ [css.buttonPrev]: isPrev
63
+ });
64
+ return _jsxs("button", {
65
+ className: classes,
66
+ onClick: updateText(suggestion),
67
+ onMouseDown: createRipple,
68
+ children: ["\xAB ", suggestion, " \xBB"]
69
+ }, suggestion);
70
+ })
71
+ })]
72
+ }), _jsx(Button, {
73
+ variant: "transparent",
74
+ className: css.close,
75
+ onClick: closeSearch,
76
+ children: _jsx(Icons.Cross, {})
77
+ })]
78
+ });
49
79
  }
50
80
  function getSuggestions(suggestions = {}) {
51
- return {
52
- fr: ["cours de ski", "cours privés", "compétition", "cours débutants"],
53
- en: ["ski lessons", "private lessons", "competition"],
54
- ...suggestions,
55
- };
56
- }
81
+ return {
82
+ fr: ["cours de ski", "cours privés", "compétition", "cours débutants"],
83
+ en: ["ski lessons", "private lessons", "competition"],
84
+ ...suggestions
85
+ };
86
+ }
@@ -1,87 +1,138 @@
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 classNames from "classnames";
4
3
  import Router from "next/router";
5
4
  import Button from "dt-design-system/es/button";
6
5
  import * as Icons from "dt-design-system/es/icons";
7
6
  import Dialog from "dt-design-system/es/dialog";
8
- // import PeriodPicker from "ublo-lib/es/esf/components/period-picker";
9
7
  import PeriodPicker from "../../../esf/components/period-picker";
10
8
  import Input from "./input";
11
9
  import Results from "./results";
12
10
  import useSearch from "./hooks/use-search";
13
- // import * as Plausible from "ublo-lib/es/common/components/plausible";
14
11
  import * as Plausible from "../plausible";
15
12
  import css from "./instant-search.module.css";
16
- export default function InstantSearch({ lang, suggestions, className, ubloContext, options = {}, }) {
17
- const [opened, setOpened] = React.useState(false);
18
- const [periodPickerOpened, setPeriodPickerOpened] = React.useState(false);
19
- const [weekNumber, setWeekNumber] = React.useState(null);
20
- const { text, setText, search } = useSearch(lang, options);
21
- const classes = classNames(css.search, className);
22
- const openSearch = () => {
23
- setOpened(true);
24
- };
25
- const closeSearch = (skipEvent) => {
26
- setOpened(false);
27
- setText("");
28
- document.body.style.removeProperty("overflow");
29
- if (!skipEvent) {
30
- const event = search?.result?.length === 0 ? "Search failed" : "Search canceled";
31
- if (text.length > 0) {
32
- Plausible.sendGoal(event, {
33
- Terms: text,
34
- });
35
- }
36
- }
37
- };
38
- const sendPlausibleGoal = (path) => () => {
39
- Plausible.sendGoal("Search", {
40
- "Terms - Destination": `${text} - ${path}`,
41
- });
42
- };
43
- const openPeriodPicker = () => {
44
- setPeriodPickerOpened(true);
45
- };
46
- const closePeriodPicker = () => {
47
- setPeriodPickerOpened(false);
48
- };
49
- const updateWeek = () => {
50
- const storedWeekNumber = window.sessionStorage.getItem("stayWeek");
51
- if (storedWeekNumber !== null) {
52
- setWeekNumber(Number(storedWeekNumber));
53
- setPeriodPickerOpened(false);
54
- }
55
- };
56
- Router.ready(() => {
57
- Router.events.on("routeChangeStart", () => {
58
- if (opened) {
59
- closeSearch(true);
60
- }
13
+ import { jsx as _jsx } from "react/jsx-runtime";
14
+ import { jsxs as _jsxs } from "react/jsx-runtime";
15
+ import { Fragment as _Fragment } from "react/jsx-runtime";
16
+ export default function InstantSearch({
17
+ lang,
18
+ suggestions,
19
+ className,
20
+ ubloContext,
21
+ options = {}
22
+ }) {
23
+ const [opened, setOpened] = React.useState(false);
24
+ const [periodPickerOpened, setPeriodPickerOpened] = React.useState(false);
25
+ const [weekNumber, setWeekNumber] = React.useState(null);
26
+ const {
27
+ text,
28
+ setText,
29
+ search
30
+ } = useSearch(lang, options);
31
+ const classes = classNames(css.search, className);
32
+ const openSearch = () => {
33
+ setOpened(true);
34
+ };
35
+ const closeSearch = skipEvent => {
36
+ setOpened(false);
37
+ setText("");
38
+ document.body.style.removeProperty("overflow");
39
+ if (!skipEvent) {
40
+ const event = search?.result?.length === 0 ? "Search failed" : "Search canceled";
41
+ if (text.length > 0) {
42
+ Plausible.sendGoal(event, {
43
+ Terms: text
61
44
  });
45
+ }
46
+ }
47
+ };
48
+ const sendPlausibleGoal = path => () => {
49
+ Plausible.sendGoal("Search", {
50
+ "Terms - Destination": `${text} - ${path}`
62
51
  });
63
- const handleKeyPresses = React.useCallback((e) => {
64
- const allowedKeys = ["k"];
65
- const { code, ctrlKey, key, metaKey } = e;
66
- const isAllowed = (ctrlKey || metaKey) &&
67
- (allowedKeys.includes(code) || allowedKeys.includes(key));
68
- if (!isAllowed)
69
- return;
70
- e.preventDefault();
71
- if (key === "k" && (ctrlKey || metaKey)) {
72
- openSearch();
73
- }
74
- }, []);
75
- React.useEffect(() => {
76
- if (opened) {
77
- updateWeek();
78
- }
79
- }, [opened]);
80
- React.useEffect(() => {
81
- window.addEventListener("keydown", handleKeyPresses);
82
- return () => {
83
- window.removeEventListener("keydown", handleKeyPresses);
84
- };
85
- }, [handleKeyPresses]);
86
- return (_jsxs(_Fragment, { children: [_jsx(Button, { className: classes, onClick: openSearch, children: _jsx(Icons.Search, { className: css.searchIcon }) }), _jsxs(Dialog, { className: css.dialog, isOpened: opened, showCloseButton: false, close: closeSearch, container: "body", children: [_jsx(Input, { lang: lang, text: text, setText: setText, closeSearch: closeSearch, loading: search.loading === true, suggestions: suggestions }), _jsx(Results, { lang: lang, text: text, results: search.result, weekNumber: weekNumber, openPeriodPicker: openPeriodPicker, loading: search.loading === true && search.result === undefined, sendPlausibleGoal: sendPlausibleGoal })] }), _jsx(Dialog, { isOpened: periodPickerOpened, close: closePeriodPicker, container: "body", children: _jsx(PeriodPicker, { onChange: updateWeek, ubloContext: ubloContext }) })] }));
87
- }
52
+ };
53
+ const openPeriodPicker = () => {
54
+ setPeriodPickerOpened(true);
55
+ };
56
+ const closePeriodPicker = () => {
57
+ setPeriodPickerOpened(false);
58
+ };
59
+ const updateWeek = () => {
60
+ const storedWeekNumber = window.sessionStorage.getItem("stayWeek");
61
+ if (storedWeekNumber !== null) {
62
+ setWeekNumber(Number(storedWeekNumber));
63
+ setPeriodPickerOpened(false);
64
+ }
65
+ };
66
+ Router.ready(() => {
67
+ Router.events.on("routeChangeStart", () => {
68
+ if (opened) {
69
+ closeSearch(true);
70
+ }
71
+ });
72
+ });
73
+ const handleKeyPresses = React.useCallback(e => {
74
+ const allowedKeys = ["k"];
75
+ const {
76
+ code,
77
+ ctrlKey,
78
+ key,
79
+ metaKey
80
+ } = e;
81
+ const isAllowed = (ctrlKey || metaKey) && (allowedKeys.includes(code) || allowedKeys.includes(key));
82
+ if (!isAllowed) return;
83
+ e.preventDefault();
84
+ if (key === "k" && (ctrlKey || metaKey)) {
85
+ openSearch();
86
+ }
87
+ }, []);
88
+ React.useEffect(() => {
89
+ if (opened) {
90
+ updateWeek();
91
+ }
92
+ }, [opened]);
93
+ React.useEffect(() => {
94
+ window.addEventListener("keydown", handleKeyPresses);
95
+ return () => {
96
+ window.removeEventListener("keydown", handleKeyPresses);
97
+ };
98
+ }, [handleKeyPresses]);
99
+ return _jsxs(_Fragment, {
100
+ children: [_jsx(Button, {
101
+ className: classes,
102
+ onClick: openSearch,
103
+ children: _jsx(Icons.Search, {
104
+ className: css.searchIcon
105
+ })
106
+ }), _jsxs(Dialog, {
107
+ className: css.dialog,
108
+ isOpened: opened,
109
+ showCloseButton: false,
110
+ close: closeSearch,
111
+ container: "body",
112
+ children: [_jsx(Input, {
113
+ lang: lang,
114
+ text: text,
115
+ setText: setText,
116
+ closeSearch: closeSearch,
117
+ loading: search.loading === true,
118
+ suggestions: suggestions
119
+ }), _jsx(Results, {
120
+ lang: lang,
121
+ text: text,
122
+ results: search.result,
123
+ weekNumber: weekNumber,
124
+ openPeriodPicker: openPeriodPicker,
125
+ loading: search.loading === true && search.result === undefined,
126
+ sendPlausibleGoal: sendPlausibleGoal
127
+ })]
128
+ }), _jsx(Dialog, {
129
+ isOpened: periodPickerOpened,
130
+ close: closePeriodPicker,
131
+ container: "body",
132
+ children: _jsx(PeriodPicker, {
133
+ onChange: updateWeek,
134
+ ubloContext: ubloContext
135
+ })
136
+ })]
137
+ });
138
+ }