@qite/tide-booking-component 1.4.32 → 1.4.33

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 (326) hide show
  1. package/build/build-cjs/booking-product/components/age-select.d.ts +8 -8
  2. package/build/build-cjs/booking-product/components/amount-input.d.ts +10 -10
  3. package/build/build-cjs/booking-product/components/date-range-picker/calendar-day.d.ts +12 -12
  4. package/build/build-cjs/booking-product/components/date-range-picker/calendar.d.ts +19 -19
  5. package/build/build-cjs/booking-product/components/date-range-picker/index.d.ts +24 -21
  6. package/build/build-cjs/booking-product/components/dates.d.ts +14 -14
  7. package/build/build-cjs/booking-product/components/footer.d.ts +10 -10
  8. package/build/build-cjs/booking-product/components/header.d.ts +11 -11
  9. package/build/build-cjs/booking-product/components/icon.d.ts +10 -10
  10. package/build/build-cjs/booking-product/components/list-view.d.ts +8 -8
  11. package/build/build-cjs/booking-product/components/product.d.ts +9 -9
  12. package/build/build-cjs/booking-product/components/rating.d.ts +6 -6
  13. package/build/build-cjs/booking-product/components/rooms.d.ts +10 -10
  14. package/build/build-cjs/booking-product/constants.d.ts +1 -1
  15. package/build/build-cjs/booking-product/index.d.ts +10 -10
  16. package/build/build-cjs/booking-product/settings-context.d.ts +6 -5
  17. package/build/build-cjs/booking-product/types.d.ts +27 -27
  18. package/build/build-cjs/booking-product/utils/api.d.ts +7 -16
  19. package/build/build-cjs/booking-product/utils/price.d.ts +1 -10
  20. package/build/build-cjs/booking-wizard/api-settings-slice.d.ts +4 -5
  21. package/build/build-cjs/booking-wizard/components/icon.d.ts +10 -10
  22. package/build/build-cjs/booking-wizard/components/labeled-input.d.ts +18 -18
  23. package/build/build-cjs/booking-wizard/components/labeled-select.d.ts +21 -21
  24. package/build/build-cjs/booking-wizard/components/message.d.ts +9 -9
  25. package/build/build-cjs/booking-wizard/components/multi-range-filter.d.ts +11 -11
  26. package/build/build-cjs/booking-wizard/components/phone-input.d.ts +17 -17
  27. package/build/build-cjs/booking-wizard/components/print-offer-button.d.ts +17 -17
  28. package/build/build-cjs/booking-wizard/components/product-card.d.ts +8 -8
  29. package/build/build-cjs/booking-wizard/components/step-indicator.d.ts +6 -6
  30. package/build/build-cjs/booking-wizard/components/step-route.d.ts +9 -9
  31. package/build/build-cjs/booking-wizard/features/booking/api.d.ts +10 -26
  32. package/build/build-cjs/booking-wizard/features/booking/booking-self-contained.d.ts +8 -8
  33. package/build/build-cjs/booking-wizard/features/booking/booking-slice.d.ts +50 -103
  34. package/build/build-cjs/booking-wizard/features/booking/booking.d.ts +8 -8
  35. package/build/build-cjs/booking-wizard/features/booking/constants.d.ts +8 -15
  36. package/build/build-cjs/booking-wizard/features/booking/selectors.d.ts +195 -283
  37. package/build/build-cjs/booking-wizard/features/confirmation/confirmation.d.ts +5 -4
  38. package/build/build-cjs/booking-wizard/features/error/error.d.ts +5 -4
  39. package/build/build-cjs/booking-wizard/features/flight-options/flight-filter.d.ts +9 -9
  40. package/build/build-cjs/booking-wizard/features/flight-options/flight-option-flight.d.ts +8 -8
  41. package/build/build-cjs/booking-wizard/features/flight-options/flight-option-modal.d.ts +3 -3
  42. package/build/build-cjs/booking-wizard/features/flight-options/flight-option.d.ts +10 -10
  43. package/build/build-cjs/booking-wizard/features/flight-options/flight-utils.d.ts +6 -13
  44. package/build/build-cjs/booking-wizard/features/flight-options/index.d.ts +5 -4
  45. package/build/build-cjs/booking-wizard/features/price-details/price-details-api.d.ts +6 -11
  46. package/build/build-cjs/booking-wizard/features/price-details/price-details-slice.d.ts +80 -105
  47. package/build/build-cjs/booking-wizard/features/price-details/util.d.ts +2 -2
  48. package/build/build-cjs/booking-wizard/features/product-options/no-options.d.ts +3 -3
  49. package/build/build-cjs/booking-wizard/features/product-options/none-option.d.ts +9 -9
  50. package/build/build-cjs/booking-wizard/features/product-options/option-booking-airline-group.d.ts +8 -8
  51. package/build/build-cjs/booking-wizard/features/product-options/option-booking-group.d.ts +12 -12
  52. package/build/build-cjs/booking-wizard/features/product-options/option-item.d.ts +11 -11
  53. package/build/build-cjs/booking-wizard/features/product-options/option-pax-card.d.ts +10 -10
  54. package/build/build-cjs/booking-wizard/features/product-options/option-pax-group.d.ts +13 -13
  55. package/build/build-cjs/booking-wizard/features/product-options/option-room.d.ts +11 -11
  56. package/build/build-cjs/booking-wizard/features/product-options/option-unit-group.d.ts +13 -13
  57. package/build/build-cjs/booking-wizard/features/product-options/option-units-card.d.ts +9 -9
  58. package/build/build-cjs/booking-wizard/features/product-options/options-form.d.ts +5 -4
  59. package/build/build-cjs/booking-wizard/features/room-options/index.d.ts +5 -4
  60. package/build/build-cjs/booking-wizard/features/room-options/room-utils.d.ts +9 -22
  61. package/build/build-cjs/booking-wizard/features/room-options/room.d.ts +12 -12
  62. package/build/build-cjs/booking-wizard/features/room-options/traveler-rooms.d.ts +9 -9
  63. package/build/build-cjs/booking-wizard/features/sidebar/index.d.ts +7 -7
  64. package/build/build-cjs/booking-wizard/features/sidebar/sidebar-flight.d.ts +8 -8
  65. package/build/build-cjs/booking-wizard/features/sidebar/sidebar-util.d.ts +12 -14
  66. package/build/build-cjs/booking-wizard/features/sidebar/sidebar.d.ts +27 -27
  67. package/build/build-cjs/booking-wizard/features/summary/summary-booking-option-pax.d.ts +7 -7
  68. package/build/build-cjs/booking-wizard/features/summary/summary-booking-option-unit.d.ts +7 -7
  69. package/build/build-cjs/booking-wizard/features/summary/summary-flight.d.ts +8 -8
  70. package/build/build-cjs/booking-wizard/features/summary/summary-per-booking-option-group.d.ts +7 -7
  71. package/build/build-cjs/booking-wizard/features/summary/summary-per-pax-option-group.d.ts +7 -7
  72. package/build/build-cjs/booking-wizard/features/summary/summary-per-unit-option-group.d.ts +7 -7
  73. package/build/build-cjs/booking-wizard/features/summary/summary-slice.d.ts +8 -8
  74. package/build/build-cjs/booking-wizard/features/summary/summary.d.ts +5 -4
  75. package/build/build-cjs/booking-wizard/features/travelers-form/controls/gender-control.d.ts +5 -5
  76. package/build/build-cjs/booking-wizard/features/travelers-form/travelers-form-slice.d.ts +50 -62
  77. package/build/build-cjs/booking-wizard/features/travelers-form/travelers-form-util.d.ts +7 -7
  78. package/build/build-cjs/booking-wizard/features/travelers-form/travelers-form.d.ts +5 -4
  79. package/build/build-cjs/booking-wizard/features/travelers-form/type-ahead-input.d.ts +16 -16
  80. package/build/build-cjs/booking-wizard/features/travelers-form/validate-form.d.ts +4 -11
  81. package/build/build-cjs/booking-wizard/index.d.ts +12 -12
  82. package/build/build-cjs/booking-wizard/settings-context.d.ts +6 -5
  83. package/build/build-cjs/booking-wizard/store.d.ts +24 -39
  84. package/build/build-cjs/booking-wizard/types.d.ts +284 -284
  85. package/build/build-cjs/booking-wizard/use-offer-printer.d.ts +13 -13
  86. package/build/build-cjs/content/components/LanguageSwitcher.d.ts +12 -12
  87. package/build/build-cjs/content/components/accordion.d.ts +9 -9
  88. package/build/build-cjs/content/components/breadcrumb.d.ts +16 -16
  89. package/build/build-cjs/content/components/contact.d.ts +3 -3
  90. package/build/build-cjs/content/components/faq.d.ts +10 -10
  91. package/build/build-cjs/content/components/gallery.d.ts +12 -12
  92. package/build/build-cjs/content/components/icon.d.ts +10 -10
  93. package/build/build-cjs/content/components/image-with-text.d.ts +28 -28
  94. package/build/build-cjs/content/components/personal-contact-form.d.ts +3 -3
  95. package/build/build-cjs/content/components/slider.d.ts +10 -10
  96. package/build/build-cjs/content/features/content-page/content-page-self-contained.d.ts +6 -6
  97. package/build/build-cjs/content/footer/index.d.ts +4 -4
  98. package/build/build-cjs/content/footer/types.d.ts +27 -27
  99. package/build/build-cjs/content/header/index.d.ts +4 -4
  100. package/build/build-cjs/content/header/types.d.ts +22 -25
  101. package/build/build-cjs/content/navbar/index.d.ts +4 -4
  102. package/build/build-cjs/content/navbar/placeholderData.d.ts +10 -10
  103. package/build/build-cjs/content/navbar/types.d.ts +27 -27
  104. package/build/build-cjs/index.d.ts +8 -8
  105. package/build/build-cjs/index.js +19870 -30361
  106. package/build/build-cjs/qsm/components/QSMContainer/qsm-container.d.ts +3 -3
  107. package/build/build-cjs/qsm/components/date-picker/index.d.ts +3 -3
  108. package/build/build-cjs/qsm/components/date-range-picker/calendar-day.d.ts +12 -12
  109. package/build/build-cjs/qsm/components/date-range-picker/calendar.d.ts +24 -24
  110. package/build/build-cjs/qsm/components/date-range-picker/index.d.ts +10 -10
  111. package/build/build-cjs/qsm/components/double-search-input-group/index.d.ts +7 -7
  112. package/build/build-cjs/qsm/components/icon.d.ts +10 -10
  113. package/build/build-cjs/qsm/components/item-picker/index.d.ts +12 -12
  114. package/build/build-cjs/qsm/components/mobile-filter-modal/index.d.ts +3 -3
  115. package/build/build-cjs/qsm/components/search-input/index.d.ts +13 -13
  116. package/build/build-cjs/qsm/components/search-input-group/index.d.ts +11 -11
  117. package/build/build-cjs/qsm/components/travel-class-picker/index.d.ts +3 -3
  118. package/build/build-cjs/qsm/components/travel-input/index.d.ts +3 -3
  119. package/build/build-cjs/qsm/components/travel-input-group/index.d.ts +3 -3
  120. package/build/build-cjs/qsm/components/travel-nationality-picker/index.d.ts +3 -3
  121. package/build/build-cjs/qsm/components/travel-type-picker/index.d.ts +3 -3
  122. package/build/build-cjs/qsm/index.d.ts +7 -7
  123. package/build/build-cjs/qsm/qsm-configuration-context.d.ts +4 -4
  124. package/build/build-cjs/qsm/store/qsm-slice.d.ts +70 -122
  125. package/build/build-cjs/qsm/store/qsm-store.d.ts +8 -18
  126. package/build/build-cjs/qsm/types.d.ts +110 -109
  127. package/build/build-cjs/search-results/components/filters/filters.d.ts +11 -11
  128. package/build/build-cjs/search-results/components/filters/utility.d.ts +3 -3
  129. package/build/build-cjs/search-results/components/flight/flight-accommodation-results.d.ts +5 -4
  130. package/build/build-cjs/search-results/components/flight/flight-banner.d.ts +8 -8
  131. package/build/build-cjs/search-results/components/flight/flight-card.d.ts +7 -7
  132. package/build/build-cjs/search-results/components/flight/flight-leg.d.ts +7 -7
  133. package/build/build-cjs/search-results/components/flight/flight-path.d.ts +6 -6
  134. package/build/build-cjs/search-results/components/flight/flight-results.d.ts +6 -6
  135. package/build/build-cjs/search-results/components/hotel/hotel-accommodation-results.d.ts +8 -8
  136. package/build/build-cjs/search-results/components/hotel/hotel-card.d.ts +7 -7
  137. package/build/build-cjs/search-results/components/icon.d.ts +10 -10
  138. package/build/build-cjs/search-results/components/item-picker/index.d.ts +12 -12
  139. package/build/build-cjs/search-results/components/itinerary/index.d.ts +8 -8
  140. package/build/build-cjs/search-results/components/multi-range-filter.d.ts +11 -11
  141. package/build/build-cjs/search-results/components/round-trip/round-trip-results.d.ts +5 -4
  142. package/build/build-cjs/search-results/components/search-results-container/search-results-container.d.ts +3 -3
  143. package/build/build-cjs/search-results/components/spinner/spinner.d.ts +3 -3
  144. package/build/build-cjs/search-results/components/tab-views/index.d.ts +5 -4
  145. package/build/build-cjs/search-results/features/flights/flight-search-results-self-contained.d.ts +5 -4
  146. package/build/build-cjs/search-results/features/hotels/hotel-flight-search-results-self-contained.d.ts +5 -4
  147. package/build/build-cjs/search-results/features/hotels/hotel-search-results-self-contained.d.ts +5 -4
  148. package/build/build-cjs/search-results/features/roundtrips/roundtrip-search-results-self-contained.d.ts +5 -4
  149. package/build/build-cjs/search-results/index.d.ts +7 -7
  150. package/build/build-cjs/search-results/search-results-configuration-context.d.ts +4 -4
  151. package/build/build-cjs/search-results/store/search-results-slice.d.ts +16 -27
  152. package/build/build-cjs/search-results/store/search-results-store.d.ts +8 -18
  153. package/build/build-cjs/search-results/types.d.ts +120 -120
  154. package/build/build-cjs/shared/components/loader.d.ts +6 -6
  155. package/build/build-cjs/shared/types.d.ts +4 -4
  156. package/build/build-cjs/shared/utils/class-util.d.ts +1 -1
  157. package/build/build-cjs/shared/utils/localization-util.d.ts +275 -275
  158. package/build/build-cjs/shared/utils/query-string-util.d.ts +8 -8
  159. package/build/build-cjs/shared/utils/tide-api-utils.d.ts +4 -4
  160. package/build/build-cjs/shared/utils/use-media-query-util.d.ts +2 -2
  161. package/build/build-esm/booking-product/components/age-select.d.ts +8 -8
  162. package/build/build-esm/booking-product/components/amount-input.d.ts +10 -10
  163. package/build/build-esm/booking-product/components/date-range-picker/calendar-day.d.ts +12 -12
  164. package/build/build-esm/booking-product/components/date-range-picker/calendar.d.ts +19 -19
  165. package/build/build-esm/booking-product/components/date-range-picker/index.d.ts +24 -21
  166. package/build/build-esm/booking-product/components/dates.d.ts +14 -14
  167. package/build/build-esm/booking-product/components/footer.d.ts +10 -10
  168. package/build/build-esm/booking-product/components/header.d.ts +11 -11
  169. package/build/build-esm/booking-product/components/icon.d.ts +10 -10
  170. package/build/build-esm/booking-product/components/list-view.d.ts +8 -8
  171. package/build/build-esm/booking-product/components/product.d.ts +9 -9
  172. package/build/build-esm/booking-product/components/rating.d.ts +6 -6
  173. package/build/build-esm/booking-product/components/rooms.d.ts +10 -10
  174. package/build/build-esm/booking-product/constants.d.ts +1 -1
  175. package/build/build-esm/booking-product/index.d.ts +10 -10
  176. package/build/build-esm/booking-product/settings-context.d.ts +6 -5
  177. package/build/build-esm/booking-product/types.d.ts +27 -27
  178. package/build/build-esm/booking-product/utils/api.d.ts +7 -16
  179. package/build/build-esm/booking-product/utils/price.d.ts +1 -10
  180. package/build/build-esm/booking-wizard/api-settings-slice.d.ts +4 -5
  181. package/build/build-esm/booking-wizard/components/icon.d.ts +10 -10
  182. package/build/build-esm/booking-wizard/components/labeled-input.d.ts +18 -18
  183. package/build/build-esm/booking-wizard/components/labeled-select.d.ts +21 -21
  184. package/build/build-esm/booking-wizard/components/message.d.ts +9 -9
  185. package/build/build-esm/booking-wizard/components/multi-range-filter.d.ts +11 -11
  186. package/build/build-esm/booking-wizard/components/phone-input.d.ts +17 -17
  187. package/build/build-esm/booking-wizard/components/print-offer-button.d.ts +17 -17
  188. package/build/build-esm/booking-wizard/components/product-card.d.ts +8 -8
  189. package/build/build-esm/booking-wizard/components/step-indicator.d.ts +6 -6
  190. package/build/build-esm/booking-wizard/components/step-route.d.ts +9 -9
  191. package/build/build-esm/booking-wizard/features/booking/api.d.ts +10 -26
  192. package/build/build-esm/booking-wizard/features/booking/booking-self-contained.d.ts +8 -8
  193. package/build/build-esm/booking-wizard/features/booking/booking-slice.d.ts +50 -103
  194. package/build/build-esm/booking-wizard/features/booking/booking.d.ts +8 -8
  195. package/build/build-esm/booking-wizard/features/booking/constants.d.ts +8 -15
  196. package/build/build-esm/booking-wizard/features/booking/selectors.d.ts +195 -283
  197. package/build/build-esm/booking-wizard/features/confirmation/confirmation.d.ts +5 -4
  198. package/build/build-esm/booking-wizard/features/error/error.d.ts +5 -4
  199. package/build/build-esm/booking-wizard/features/flight-options/flight-filter.d.ts +9 -9
  200. package/build/build-esm/booking-wizard/features/flight-options/flight-option-flight.d.ts +8 -8
  201. package/build/build-esm/booking-wizard/features/flight-options/flight-option-modal.d.ts +3 -3
  202. package/build/build-esm/booking-wizard/features/flight-options/flight-option.d.ts +10 -10
  203. package/build/build-esm/booking-wizard/features/flight-options/flight-utils.d.ts +6 -13
  204. package/build/build-esm/booking-wizard/features/flight-options/index.d.ts +5 -4
  205. package/build/build-esm/booking-wizard/features/price-details/price-details-api.d.ts +6 -11
  206. package/build/build-esm/booking-wizard/features/price-details/price-details-slice.d.ts +80 -105
  207. package/build/build-esm/booking-wizard/features/price-details/util.d.ts +2 -2
  208. package/build/build-esm/booking-wizard/features/product-options/no-options.d.ts +3 -3
  209. package/build/build-esm/booking-wizard/features/product-options/none-option.d.ts +9 -9
  210. package/build/build-esm/booking-wizard/features/product-options/option-booking-airline-group.d.ts +8 -8
  211. package/build/build-esm/booking-wizard/features/product-options/option-booking-group.d.ts +12 -12
  212. package/build/build-esm/booking-wizard/features/product-options/option-item.d.ts +11 -11
  213. package/build/build-esm/booking-wizard/features/product-options/option-pax-card.d.ts +10 -10
  214. package/build/build-esm/booking-wizard/features/product-options/option-pax-group.d.ts +13 -13
  215. package/build/build-esm/booking-wizard/features/product-options/option-room.d.ts +11 -11
  216. package/build/build-esm/booking-wizard/features/product-options/option-unit-group.d.ts +13 -13
  217. package/build/build-esm/booking-wizard/features/product-options/option-units-card.d.ts +9 -9
  218. package/build/build-esm/booking-wizard/features/product-options/options-form.d.ts +5 -4
  219. package/build/build-esm/booking-wizard/features/room-options/index.d.ts +5 -4
  220. package/build/build-esm/booking-wizard/features/room-options/room-utils.d.ts +9 -22
  221. package/build/build-esm/booking-wizard/features/room-options/room.d.ts +12 -12
  222. package/build/build-esm/booking-wizard/features/room-options/traveler-rooms.d.ts +9 -9
  223. package/build/build-esm/booking-wizard/features/sidebar/index.d.ts +7 -7
  224. package/build/build-esm/booking-wizard/features/sidebar/sidebar-flight.d.ts +8 -8
  225. package/build/build-esm/booking-wizard/features/sidebar/sidebar-util.d.ts +12 -14
  226. package/build/build-esm/booking-wizard/features/sidebar/sidebar.d.ts +27 -27
  227. package/build/build-esm/booking-wizard/features/summary/summary-booking-option-pax.d.ts +7 -7
  228. package/build/build-esm/booking-wizard/features/summary/summary-booking-option-unit.d.ts +7 -7
  229. package/build/build-esm/booking-wizard/features/summary/summary-flight.d.ts +8 -8
  230. package/build/build-esm/booking-wizard/features/summary/summary-per-booking-option-group.d.ts +7 -7
  231. package/build/build-esm/booking-wizard/features/summary/summary-per-pax-option-group.d.ts +7 -7
  232. package/build/build-esm/booking-wizard/features/summary/summary-per-unit-option-group.d.ts +7 -7
  233. package/build/build-esm/booking-wizard/features/summary/summary-slice.d.ts +8 -8
  234. package/build/build-esm/booking-wizard/features/summary/summary.d.ts +5 -4
  235. package/build/build-esm/booking-wizard/features/travelers-form/controls/gender-control.d.ts +5 -5
  236. package/build/build-esm/booking-wizard/features/travelers-form/travelers-form-slice.d.ts +50 -62
  237. package/build/build-esm/booking-wizard/features/travelers-form/travelers-form-util.d.ts +7 -7
  238. package/build/build-esm/booking-wizard/features/travelers-form/travelers-form.d.ts +5 -4
  239. package/build/build-esm/booking-wizard/features/travelers-form/type-ahead-input.d.ts +16 -16
  240. package/build/build-esm/booking-wizard/features/travelers-form/validate-form.d.ts +4 -11
  241. package/build/build-esm/booking-wizard/index.d.ts +12 -12
  242. package/build/build-esm/booking-wizard/settings-context.d.ts +6 -5
  243. package/build/build-esm/booking-wizard/store.d.ts +24 -39
  244. package/build/build-esm/booking-wizard/types.d.ts +284 -284
  245. package/build/build-esm/booking-wizard/use-offer-printer.d.ts +13 -13
  246. package/build/build-esm/content/components/LanguageSwitcher.d.ts +12 -12
  247. package/build/build-esm/content/components/accordion.d.ts +9 -9
  248. package/build/build-esm/content/components/breadcrumb.d.ts +16 -16
  249. package/build/build-esm/content/components/contact.d.ts +3 -3
  250. package/build/build-esm/content/components/faq.d.ts +10 -10
  251. package/build/build-esm/content/components/gallery.d.ts +12 -12
  252. package/build/build-esm/content/components/icon.d.ts +10 -10
  253. package/build/build-esm/content/components/image-with-text.d.ts +28 -28
  254. package/build/build-esm/content/components/personal-contact-form.d.ts +3 -3
  255. package/build/build-esm/content/components/slider.d.ts +10 -10
  256. package/build/build-esm/content/features/content-page/content-page-self-contained.d.ts +6 -6
  257. package/build/build-esm/content/footer/index.d.ts +4 -4
  258. package/build/build-esm/content/footer/types.d.ts +27 -27
  259. package/build/build-esm/content/header/index.d.ts +4 -4
  260. package/build/build-esm/content/header/types.d.ts +22 -25
  261. package/build/build-esm/content/navbar/index.d.ts +4 -4
  262. package/build/build-esm/content/navbar/placeholderData.d.ts +10 -10
  263. package/build/build-esm/content/navbar/types.d.ts +27 -27
  264. package/build/build-esm/index.d.ts +8 -8
  265. package/build/build-esm/index.js +19867 -30105
  266. package/build/build-esm/qsm/components/QSMContainer/qsm-container.d.ts +3 -3
  267. package/build/build-esm/qsm/components/date-picker/index.d.ts +3 -3
  268. package/build/build-esm/qsm/components/date-range-picker/calendar-day.d.ts +12 -12
  269. package/build/build-esm/qsm/components/date-range-picker/calendar.d.ts +24 -24
  270. package/build/build-esm/qsm/components/date-range-picker/index.d.ts +10 -10
  271. package/build/build-esm/qsm/components/double-search-input-group/index.d.ts +7 -7
  272. package/build/build-esm/qsm/components/icon.d.ts +10 -10
  273. package/build/build-esm/qsm/components/item-picker/index.d.ts +12 -12
  274. package/build/build-esm/qsm/components/mobile-filter-modal/index.d.ts +3 -3
  275. package/build/build-esm/qsm/components/search-input/index.d.ts +13 -13
  276. package/build/build-esm/qsm/components/search-input-group/index.d.ts +11 -11
  277. package/build/build-esm/qsm/components/travel-class-picker/index.d.ts +3 -3
  278. package/build/build-esm/qsm/components/travel-input/index.d.ts +3 -3
  279. package/build/build-esm/qsm/components/travel-input-group/index.d.ts +3 -3
  280. package/build/build-esm/qsm/components/travel-nationality-picker/index.d.ts +3 -3
  281. package/build/build-esm/qsm/components/travel-type-picker/index.d.ts +3 -3
  282. package/build/build-esm/qsm/index.d.ts +7 -7
  283. package/build/build-esm/qsm/qsm-configuration-context.d.ts +4 -4
  284. package/build/build-esm/qsm/store/qsm-slice.d.ts +70 -122
  285. package/build/build-esm/qsm/store/qsm-store.d.ts +8 -18
  286. package/build/build-esm/qsm/types.d.ts +110 -109
  287. package/build/build-esm/search-results/components/filters/filters.d.ts +11 -11
  288. package/build/build-esm/search-results/components/filters/utility.d.ts +3 -3
  289. package/build/build-esm/search-results/components/flight/flight-accommodation-results.d.ts +5 -4
  290. package/build/build-esm/search-results/components/flight/flight-banner.d.ts +8 -8
  291. package/build/build-esm/search-results/components/flight/flight-card.d.ts +7 -7
  292. package/build/build-esm/search-results/components/flight/flight-leg.d.ts +7 -7
  293. package/build/build-esm/search-results/components/flight/flight-path.d.ts +6 -6
  294. package/build/build-esm/search-results/components/flight/flight-results.d.ts +6 -6
  295. package/build/build-esm/search-results/components/hotel/hotel-accommodation-results.d.ts +8 -8
  296. package/build/build-esm/search-results/components/hotel/hotel-card.d.ts +7 -7
  297. package/build/build-esm/search-results/components/icon.d.ts +10 -10
  298. package/build/build-esm/search-results/components/item-picker/index.d.ts +12 -12
  299. package/build/build-esm/search-results/components/itinerary/index.d.ts +8 -8
  300. package/build/build-esm/search-results/components/multi-range-filter.d.ts +11 -11
  301. package/build/build-esm/search-results/components/round-trip/round-trip-results.d.ts +5 -4
  302. package/build/build-esm/search-results/components/search-results-container/search-results-container.d.ts +3 -3
  303. package/build/build-esm/search-results/components/spinner/spinner.d.ts +3 -3
  304. package/build/build-esm/search-results/components/tab-views/index.d.ts +5 -4
  305. package/build/build-esm/search-results/features/flights/flight-search-results-self-contained.d.ts +5 -4
  306. package/build/build-esm/search-results/features/hotels/hotel-flight-search-results-self-contained.d.ts +5 -4
  307. package/build/build-esm/search-results/features/hotels/hotel-search-results-self-contained.d.ts +5 -4
  308. package/build/build-esm/search-results/features/roundtrips/roundtrip-search-results-self-contained.d.ts +5 -4
  309. package/build/build-esm/search-results/index.d.ts +7 -7
  310. package/build/build-esm/search-results/search-results-configuration-context.d.ts +4 -4
  311. package/build/build-esm/search-results/store/search-results-slice.d.ts +16 -27
  312. package/build/build-esm/search-results/store/search-results-store.d.ts +8 -18
  313. package/build/build-esm/search-results/types.d.ts +120 -120
  314. package/build/build-esm/shared/components/loader.d.ts +6 -6
  315. package/build/build-esm/shared/types.d.ts +4 -4
  316. package/build/build-esm/shared/utils/class-util.d.ts +1 -1
  317. package/build/build-esm/shared/utils/localization-util.d.ts +275 -275
  318. package/build/build-esm/shared/utils/query-string-util.d.ts +8 -8
  319. package/build/build-esm/shared/utils/tide-api-utils.d.ts +4 -4
  320. package/build/build-esm/shared/utils/use-media-query-util.d.ts +2 -2
  321. package/package.json +77 -77
  322. package/src/booking-wizard/features/booking/booking-self-contained.tsx +304 -301
  323. package/src/qsm/components/QSMContainer/qsm-container.tsx +218 -234
  324. package/src/qsm/store/qsm-slice.ts +261 -267
  325. package/src/qsm/types.ts +145 -144
  326. package/src/search-results/components/search-results-container/search-results-container.tsx +337 -337
@@ -1,301 +1,304 @@
1
- import React, { useContext } from 'react';
2
- import { useSelector } from 'react-redux';
3
- import {
4
- getDateFromParams,
5
- getFlightsFromParams,
6
- getNumberFromParams,
7
- getNumbersFromParams,
8
- getRoomsFromParams,
9
- getStringFromParams
10
- } from '../../../shared/utils/query-string-util';
11
- import {
12
- fetchPackage,
13
- setAccommodationViewId,
14
- setAgentAdressId,
15
- setBookingAttributes,
16
- setBookingNumber,
17
- setBookingOptions,
18
- setBookingType,
19
- setCalculateDeposit,
20
- setCurrentStep,
21
- setGeneratePaymentUrl,
22
- setLanguageCode,
23
- setOfficeId,
24
- setProductAttributes,
25
- setSkipPayment,
26
- setTagIds,
27
- setTranslations
28
- } from './booking-slice';
29
-
30
- import { isNil } from 'lodash';
31
- import { useEffect } from 'react';
32
- import Loader from '../../../shared/components/loader';
33
- import { setApiKey, setApiUrl } from '../../api-settings-slice';
34
- import StepRoute from '../../components/step-route';
35
- import SettingsContext from '../../settings-context';
36
- import { useAppDispatch } from '../../store';
37
- import Confirmation from '../confirmation/confirmation';
38
- import Error from '../error/error';
39
- import FlightOptionsForm from '../flight-options';
40
- import OptionsForm from '../product-options/options-form';
41
- import RoomOptionsForm from '../room-options';
42
- import Sidebar from '../sidebar';
43
- import Summary from '../summary/summary';
44
- import TravelersForm from '../travelers-form/travelers-form';
45
- import {
46
- CONFIRMATION_STEP,
47
- ERROR_STEP,
48
- FLIGHT_OPTIONS_FORM_STEP,
49
- OPTIONS_FORM_STEP,
50
- ROOM_OPTIONS_FORM_STEP,
51
- SUMMARY_STEP,
52
- TRAVELERS_FORM_STEP
53
- } from './constants';
54
- import {
55
- selectApiSettings,
56
- selectBookingAttributes,
57
- selectBookingNumber,
58
- selectBookingRooms,
59
- selectCurrentStep,
60
- selectIsUnavailable,
61
- selectPackageDetails,
62
- selectProductAttributes,
63
- selectTranslations
64
- } from './selectors';
65
-
66
- interface BookingProps {
67
- productCode: string;
68
- productName: string;
69
- thumbnailUrl?: string;
70
- }
71
-
72
- const BookingSelfContained: React.FC<BookingProps> = ({ productCode, productName, thumbnailUrl }) => {
73
- const {
74
- officeId,
75
- bookingOptions,
76
- showSidebarDeposit,
77
- includeFlights,
78
- skipPaymentWithAgent,
79
- generatePaymentUrl,
80
- tagIds,
81
- agentAdressId,
82
- language,
83
- apiUrl,
84
- apiKey,
85
- translationFiles,
86
- roomOptions,
87
- flightOptions,
88
- accommodationViewId,
89
- isOffer,
90
- allowOption
91
- } = useContext(SettingsContext);
92
-
93
- const dispatch = useAppDispatch();
94
-
95
- const productAttributes = useSelector(selectProductAttributes);
96
- const bookingAttributes = useSelector(selectBookingAttributes);
97
- const rooms = useSelector(selectBookingRooms);
98
- const bookingNumber = useSelector(selectBookingNumber);
99
- const packageDetails = useSelector(selectPackageDetails);
100
- const isUnvailable = useSelector(selectIsUnavailable);
101
- const currentStep = useSelector(selectCurrentStep);
102
- const apiSettings = useSelector(selectApiSettings);
103
- const translations = useSelector(selectTranslations);
104
-
105
- useEffect(() => {
106
- dispatch(setSkipPayment(skipPaymentWithAgent ?? false));
107
- dispatch(setGeneratePaymentUrl(generatePaymentUrl ?? false));
108
- }, [skipPaymentWithAgent, generatePaymentUrl]);
109
-
110
- useEffect(() => {
111
- if (!isNil(apiUrl) && !isNil(apiKey)) {
112
- dispatch(setApiUrl(apiUrl));
113
- dispatch(setApiKey(apiKey));
114
- }
115
- }, [apiUrl, apiKey]);
116
-
117
- useEffect(() => {
118
- const params = new URLSearchParams(location.search);
119
- const startDate = getDateFromParams(params, 'startDate');
120
- const endDate = getDateFromParams(params, 'endDate');
121
- const catalogueId = getNumberFromParams(params, 'catalogueId') ?? getNumberFromParams(params, 'catalog');
122
- const rooms = getRoomsFromParams(params, 'rooms');
123
- const flight = getFlightsFromParams(params, 'flight');
124
- const flightRouteId = getStringFromParams(params, 'flightRouteId');
125
- const vendorConfigurationId = getNumberFromParams(params, 'vendorConfigurationId');
126
- const allotmentName = getStringFromParams(params, 'allotmentName');
127
- const allotmentIds = getNumbersFromParams(params, 'allotmentId');
128
- const tourCode = getStringFromParams(params, 'tourCode');
129
- const bookingNumber = params.get('bookingNr') ?? undefined;
130
-
131
- if (typeof window !== 'undefined') {
132
- window.scrollTo(0, 0);
133
- }
134
-
135
- if (!isNil(bookingNumber)) {
136
- dispatch(setBookingNumber(bookingNumber));
137
- dispatch(setCurrentStep(CONFIRMATION_STEP));
138
- } else if (!flightOptions.isHidden) {
139
- dispatch(setCurrentStep(FLIGHT_OPTIONS_FORM_STEP));
140
- } else if (!roomOptions.isHidden) {
141
- dispatch(setCurrentStep(ROOM_OPTIONS_FORM_STEP));
142
- }
143
-
144
- if (!isNil(startDate) && !isNil(endDate) && !isNil(catalogueId) && !isNil(rooms)) {
145
- dispatch(
146
- setBookingAttributes({
147
- startDate,
148
- endDate,
149
- catalogueId,
150
- rooms,
151
- flight,
152
- includeFlights,
153
- allotmentName,
154
- allotmentIds,
155
- tourCode,
156
- flightRouteId,
157
- vendorConfigurationId
158
- })
159
- );
160
- } else {
161
- console.error('Failure when setting booking attributes', startDate, endDate, catalogueId, rooms);
162
- }
163
- }, [location.search, setBookingAttributes, setBookingNumber, includeFlights]);
164
-
165
- useEffect(() => {
166
- if (!isNil(productCode) && !isNil(productName)) {
167
- dispatch(
168
- setProductAttributes({
169
- productCode,
170
- productName
171
- })
172
- );
173
- } else {
174
- console.error('Failure when setting product attributes', productCode, productName);
175
- }
176
- }, [productCode, productName, setProductAttributes]);
177
-
178
- const getTranslations = async () => {
179
- const translations = translationFiles?.map((x) =>
180
- fetch(x.path)
181
- .then((y) => y.json())
182
- .then((z) => ({ language: x.language, value: z }))
183
- );
184
- return translations && (await Promise.all(translations));
185
- };
186
-
187
- useEffect(() => {
188
- const loadTranslations = async () => {
189
- const translations = await getTranslations();
190
- dispatch(setTranslations(translations)); // Now dispatch the resolved value
191
- };
192
-
193
- loadTranslations();
194
-
195
- dispatch(setOfficeId(officeId));
196
- dispatch(setLanguageCode(language));
197
- dispatch(setBookingOptions(bookingOptions));
198
- dispatch(setCalculateDeposit(showSidebarDeposit));
199
- if (tagIds && tagIds.length > 0) {
200
- dispatch(setTagIds(tagIds ?? undefined));
201
- }
202
- dispatch(setAgentAdressId(agentAdressId ?? undefined));
203
- if (agentAdressId && agentAdressId != 0) {
204
- dispatch(setBookingType('b2b'));
205
- }
206
- if (accommodationViewId && accommodationViewId != 0) {
207
- dispatch(setAccommodationViewId(accommodationViewId));
208
- }
209
- }, [officeId, language, bookingOptions, showSidebarDeposit, setOfficeId, setLanguageCode, setCalculateDeposit, tagIds, agentAdressId, accommodationViewId]);
210
-
211
- useEffect(() => {
212
- if (!productAttributes || !bookingAttributes || !rooms?.length || !isNil(bookingNumber) || !isNil(packageDetails)) {
213
- return;
214
- }
215
-
216
- // Fetch data
217
- const promise = dispatch(fetchPackage());
218
- return () => {
219
- promise.abort();
220
- };
221
- }, [productAttributes, bookingAttributes, rooms, bookingNumber, packageDetails, apiSettings.apiUrl, apiSettings.apiKey]);
222
-
223
- const renderStep = () => {
224
- switch (currentStep) {
225
- case FLIGHT_OPTIONS_FORM_STEP:
226
- return <StepRoute number={1} title={translations.STEPS.FLIGHT_OPTIONS} component={<FlightOptionsForm />} />;
227
- case ROOM_OPTIONS_FORM_STEP:
228
- return <StepRoute number={1 + (flightOptions.isHidden ? 0 : 1)} title={translations.STEPS.ROOM_OPTIONS} component={<RoomOptionsForm />} />;
229
- case OPTIONS_FORM_STEP:
230
- return (
231
- <StepRoute
232
- number={1 + (roomOptions.isHidden ? 0 : 1) + (flightOptions.isHidden ? 0 : 1)}
233
- title={translations.STEPS.EXTRA_OPTIONS}
234
- component={<OptionsForm />}
235
- />
236
- );
237
- case TRAVELERS_FORM_STEP:
238
- return (
239
- <StepRoute
240
- number={2 + (roomOptions.isHidden ? 0 : 1) + (flightOptions.isHidden ? 0 : 1)}
241
- title={translations.STEPS.PERSONAL_DETAILS}
242
- component={<TravelersForm />}
243
- />
244
- );
245
- case SUMMARY_STEP:
246
- return (
247
- <StepRoute
248
- number={3 + (roomOptions.isHidden ? 0 : 1) + (flightOptions.isHidden ? 0 : 1)}
249
- title={translations.STEPS.SUMMARY}
250
- component={<Summary />}
251
- />
252
- );
253
- case CONFIRMATION_STEP:
254
- return (
255
- <StepRoute
256
- number={4 + (roomOptions.isHidden ? 0 : 1) + (flightOptions.isHidden ? 0 : 1)}
257
- title={translations.STEPS.CONFIRMATION}
258
- component={<Confirmation />}
259
- />
260
- );
261
- case ERROR_STEP:
262
- return (
263
- <StepRoute number={5 + (roomOptions.isHidden ? 0 : 1) + (flightOptions.isHidden ? 0 : 1)} title={translations.STEPS.ERROR} component={<Error />} />
264
- );
265
- }
266
- };
267
-
268
- return (
269
- <>
270
- {((productAttributes && bookingAttributes && packageDetails) || bookingNumber) && (
271
- <div className="booking">
272
- <div className="booking__content">
273
- <div className="booking__panel">{renderStep()}</div>
274
- <div className="backdrop" id="backdrop"></div>
275
- {packageDetails && <Sidebar productName={productName} thumbnailUrl={thumbnailUrl} />}
276
- </div>
277
- </div>
278
- )}
279
- {!packageDetails && !bookingNumber && !isUnvailable && (
280
- <div className="booking">
281
- <div className="booking__loader">
282
- <Loader />
283
- <p className="booking__loader-text">
284
- {allowOption ? translations.MAIN.PREPARING_DOSSIER : isOffer ? translations.MAIN.PREPARING_OFFER : translations.MAIN.PREPARING_BOOKING}
285
- </p>
286
- <p className="booking__loader-text">{isOffer ? translations.MAIN.PREPARING_OFFER : translations.MAIN.PREPARING_BOOKING}</p>
287
- </div>
288
- </div>
289
- )}
290
- {isUnvailable && (
291
- <div className="booking">
292
- <div className="booking__loader">
293
- <p className="booking__loader-text">{translations.MAIN.PRODUCT_UNAVAILABLE}</p>
294
- </div>
295
- </div>
296
- )}
297
- </>
298
- );
299
- };
300
-
301
- export default BookingSelfContained;
1
+ import React, { useContext } from 'react';
2
+ import { useSelector } from 'react-redux';
3
+ import {
4
+ getDateFromParams,
5
+ getFlightsFromParams,
6
+ getNumberFromParams,
7
+ getNumbersFromParams,
8
+ getRoomsFromParams,
9
+ getStringFromParams
10
+ } from '../../../shared/utils/query-string-util';
11
+ import {
12
+ fetchPackage,
13
+ setAccommodationViewId,
14
+ setAgentAdressId,
15
+ setBookingAttributes,
16
+ setBookingNumber,
17
+ setBookingOptions,
18
+ setBookingType,
19
+ setCalculateDeposit,
20
+ setCurrentStep,
21
+ setGeneratePaymentUrl,
22
+ setLanguageCode,
23
+ setOfficeId,
24
+ setProductAttributes,
25
+ setSkipPayment,
26
+ setTagIds,
27
+ setTranslations
28
+ } from './booking-slice';
29
+
30
+ import { isNil } from 'lodash';
31
+ import { useEffect } from 'react';
32
+ import Loader from '../../../shared/components/loader';
33
+ import { setApiKey, setApiUrl } from '../../api-settings-slice';
34
+ import StepRoute from '../../components/step-route';
35
+ import SettingsContext from '../../settings-context';
36
+ import { useAppDispatch } from '../../store';
37
+ import Confirmation from '../confirmation/confirmation';
38
+ import Error from '../error/error';
39
+ import FlightOptionsForm from '../flight-options';
40
+ import OptionsForm from '../product-options/options-form';
41
+ import RoomOptionsForm from '../room-options';
42
+ import Sidebar from '../sidebar';
43
+ import Summary from '../summary/summary';
44
+ import TravelersForm from '../travelers-form/travelers-form';
45
+ import {
46
+ CONFIRMATION_STEP,
47
+ ERROR_STEP,
48
+ FLIGHT_OPTIONS_FORM_STEP,
49
+ OPTIONS_FORM_STEP,
50
+ ROOM_OPTIONS_FORM_STEP,
51
+ SUMMARY_STEP,
52
+ TRAVELERS_FORM_STEP
53
+ } from './constants';
54
+ import {
55
+ selectApiSettings,
56
+ selectBookingAttributes,
57
+ selectBookingNumber,
58
+ selectBookingRooms,
59
+ selectCurrentStep,
60
+ selectIsUnavailable,
61
+ selectPackageDetails,
62
+ selectProductAttributes,
63
+ selectTranslations
64
+ } from './selectors';
65
+
66
+ interface BookingProps {
67
+ productCode: string;
68
+ productName: string;
69
+ thumbnailUrl?: string;
70
+ }
71
+
72
+ const BookingSelfContained: React.FC<BookingProps> = ({ productCode, productName, thumbnailUrl }) => {
73
+ const {
74
+ officeId,
75
+ bookingOptions,
76
+ showSidebarDeposit,
77
+ includeFlights,
78
+ skipPaymentWithAgent,
79
+ generatePaymentUrl,
80
+ tagIds,
81
+ agentAdressId,
82
+ language,
83
+ apiUrl,
84
+ apiKey,
85
+ translationFiles,
86
+ roomOptions,
87
+ flightOptions,
88
+ accommodationViewId,
89
+ isOffer,
90
+ allowOption,
91
+ travellers
92
+ } = useContext(SettingsContext);
93
+
94
+ const dispatch = useAppDispatch();
95
+
96
+ const productAttributes = useSelector(selectProductAttributes);
97
+ const bookingAttributes = useSelector(selectBookingAttributes);
98
+ const rooms = useSelector(selectBookingRooms);
99
+ const bookingNumber = useSelector(selectBookingNumber);
100
+ const packageDetails = useSelector(selectPackageDetails);
101
+ const isUnvailable = useSelector(selectIsUnavailable);
102
+ const currentStep = useSelector(selectCurrentStep);
103
+ const apiSettings = useSelector(selectApiSettings);
104
+ const translations = useSelector(selectTranslations);
105
+
106
+ useEffect(() => {
107
+ dispatch(setSkipPayment(skipPaymentWithAgent ?? false));
108
+ dispatch(setGeneratePaymentUrl(generatePaymentUrl ?? false));
109
+ }, [skipPaymentWithAgent, generatePaymentUrl]);
110
+
111
+ useEffect(() => {
112
+ if (!isNil(apiUrl) && !isNil(apiKey)) {
113
+ dispatch(setApiUrl(apiUrl));
114
+ dispatch(setApiKey(apiKey));
115
+ }
116
+ }, [apiUrl, apiKey]);
117
+
118
+ useEffect(() => {
119
+ const params = new URLSearchParams(location.search);
120
+ const startDate = getDateFromParams(params, 'startDate');
121
+ const endDate = getDateFromParams(params, 'endDate');
122
+ const catalogueId = getNumberFromParams(params, 'catalogueId') ?? getNumberFromParams(params, 'catalog');
123
+ const rooms = getRoomsFromParams(params, 'rooms');
124
+ const flight = getFlightsFromParams(params, 'flight');
125
+ const flightRouteId = getStringFromParams(params, 'flightRouteId');
126
+ const vendorConfigurationId = getNumberFromParams(params, 'vendorConfigurationId');
127
+ const allotmentName = getStringFromParams(params, 'allotmentName');
128
+ const allotmentIds = getNumbersFromParams(params, 'allotmentId');
129
+ const tourCode = getStringFromParams(params, 'tourCode');
130
+ const bookingNumber = params.get('bookingNr') ?? undefined;
131
+
132
+ if (typeof window !== 'undefined') {
133
+ window.scrollTo(0, 0);
134
+ }
135
+
136
+ if (!isNil(bookingNumber)) {
137
+ dispatch(setBookingNumber(bookingNumber));
138
+ dispatch(setCurrentStep(CONFIRMATION_STEP));
139
+ } else if (travellers.travelersFirstStep) {
140
+ dispatch(setCurrentStep(TRAVELERS_FORM_STEP));
141
+ } else if (!flightOptions.isHidden) {
142
+ dispatch(setCurrentStep(FLIGHT_OPTIONS_FORM_STEP));
143
+ } else if (!roomOptions.isHidden) {
144
+ dispatch(setCurrentStep(ROOM_OPTIONS_FORM_STEP));
145
+ }
146
+
147
+ if (!isNil(startDate) && !isNil(endDate) && !isNil(catalogueId) && !isNil(rooms)) {
148
+ dispatch(
149
+ setBookingAttributes({
150
+ startDate,
151
+ endDate,
152
+ catalogueId,
153
+ rooms,
154
+ flight,
155
+ includeFlights,
156
+ allotmentName,
157
+ allotmentIds,
158
+ tourCode,
159
+ flightRouteId,
160
+ vendorConfigurationId
161
+ })
162
+ );
163
+ } else {
164
+ console.error('Failure when setting booking attributes', startDate, endDate, catalogueId, rooms);
165
+ }
166
+ }, [location.search, setBookingAttributes, setBookingNumber, includeFlights]);
167
+
168
+ useEffect(() => {
169
+ if (!isNil(productCode) && !isNil(productName)) {
170
+ dispatch(
171
+ setProductAttributes({
172
+ productCode,
173
+ productName
174
+ })
175
+ );
176
+ } else {
177
+ console.error('Failure when setting product attributes', productCode, productName);
178
+ }
179
+ }, [productCode, productName, setProductAttributes]);
180
+
181
+ const getTranslations = async () => {
182
+ const translations = translationFiles?.map((x) =>
183
+ fetch(x.path)
184
+ .then((y) => y.json())
185
+ .then((z) => ({ language: x.language, value: z }))
186
+ );
187
+ return translations && (await Promise.all(translations));
188
+ };
189
+
190
+ useEffect(() => {
191
+ const loadTranslations = async () => {
192
+ const translations = await getTranslations();
193
+ dispatch(setTranslations(translations)); // Now dispatch the resolved value
194
+ };
195
+
196
+ loadTranslations();
197
+
198
+ dispatch(setOfficeId(officeId));
199
+ dispatch(setLanguageCode(language));
200
+ dispatch(setBookingOptions(bookingOptions));
201
+ dispatch(setCalculateDeposit(showSidebarDeposit));
202
+ if (tagIds && tagIds.length > 0) {
203
+ dispatch(setTagIds(tagIds ?? undefined));
204
+ }
205
+ dispatch(setAgentAdressId(agentAdressId ?? undefined));
206
+ if (agentAdressId && agentAdressId != 0) {
207
+ dispatch(setBookingType('b2b'));
208
+ }
209
+ if (accommodationViewId && accommodationViewId != 0) {
210
+ dispatch(setAccommodationViewId(accommodationViewId));
211
+ }
212
+ }, [officeId, language, bookingOptions, showSidebarDeposit, setOfficeId, setLanguageCode, setCalculateDeposit, tagIds, agentAdressId, accommodationViewId]);
213
+
214
+ useEffect(() => {
215
+ if (!productAttributes || !bookingAttributes || !rooms?.length || !isNil(bookingNumber) || !isNil(packageDetails)) {
216
+ return;
217
+ }
218
+
219
+ // Fetch data
220
+ const promise = dispatch(fetchPackage());
221
+ return () => {
222
+ promise.abort();
223
+ };
224
+ }, [productAttributes, bookingAttributes, rooms, bookingNumber, packageDetails, apiSettings.apiUrl, apiSettings.apiKey]);
225
+
226
+ const renderStep = () => {
227
+ switch (currentStep) {
228
+ case FLIGHT_OPTIONS_FORM_STEP:
229
+ return <StepRoute number={1} title={translations.STEPS.FLIGHT_OPTIONS} component={<FlightOptionsForm />} />;
230
+ case ROOM_OPTIONS_FORM_STEP:
231
+ return <StepRoute number={1 + (flightOptions.isHidden ? 0 : 1)} title={translations.STEPS.ROOM_OPTIONS} component={<RoomOptionsForm />} />;
232
+ case OPTIONS_FORM_STEP:
233
+ return (
234
+ <StepRoute
235
+ number={1 + (roomOptions.isHidden ? 0 : 1) + (flightOptions.isHidden ? 0 : 1)}
236
+ title={translations.STEPS.EXTRA_OPTIONS}
237
+ component={<OptionsForm />}
238
+ />
239
+ );
240
+ case TRAVELERS_FORM_STEP:
241
+ return (
242
+ <StepRoute
243
+ number={2 + (roomOptions.isHidden ? 0 : 1) + (flightOptions.isHidden ? 0 : 1)}
244
+ title={translations.STEPS.PERSONAL_DETAILS}
245
+ component={<TravelersForm />}
246
+ />
247
+ );
248
+ case SUMMARY_STEP:
249
+ return (
250
+ <StepRoute
251
+ number={3 + (roomOptions.isHidden ? 0 : 1) + (flightOptions.isHidden ? 0 : 1)}
252
+ title={translations.STEPS.SUMMARY}
253
+ component={<Summary />}
254
+ />
255
+ );
256
+ case CONFIRMATION_STEP:
257
+ return (
258
+ <StepRoute
259
+ number={4 + (roomOptions.isHidden ? 0 : 1) + (flightOptions.isHidden ? 0 : 1)}
260
+ title={translations.STEPS.CONFIRMATION}
261
+ component={<Confirmation />}
262
+ />
263
+ );
264
+ case ERROR_STEP:
265
+ return (
266
+ <StepRoute number={5 + (roomOptions.isHidden ? 0 : 1) + (flightOptions.isHidden ? 0 : 1)} title={translations.STEPS.ERROR} component={<Error />} />
267
+ );
268
+ }
269
+ };
270
+
271
+ return (
272
+ <>
273
+ {((productAttributes && bookingAttributes && packageDetails) || bookingNumber) && (
274
+ <div className="booking">
275
+ <div className="booking__content">
276
+ <div className="booking__panel">{renderStep()}</div>
277
+ <div className="backdrop" id="backdrop"></div>
278
+ {packageDetails && <Sidebar productName={productName} thumbnailUrl={thumbnailUrl} />}
279
+ </div>
280
+ </div>
281
+ )}
282
+ {!packageDetails && !bookingNumber && !isUnvailable && (
283
+ <div className="booking">
284
+ <div className="booking__loader">
285
+ <Loader />
286
+ <p className="booking__loader-text">
287
+ {allowOption ? translations.MAIN.PREPARING_DOSSIER : isOffer ? translations.MAIN.PREPARING_OFFER : translations.MAIN.PREPARING_BOOKING}
288
+ </p>
289
+ <p className="booking__loader-text">{isOffer ? translations.MAIN.PREPARING_OFFER : translations.MAIN.PREPARING_BOOKING}</p>
290
+ </div>
291
+ </div>
292
+ )}
293
+ {isUnvailable && (
294
+ <div className="booking">
295
+ <div className="booking__loader">
296
+ <p className="booking__loader-text">{translations.MAIN.PRODUCT_UNAVAILABLE}</p>
297
+ </div>
298
+ </div>
299
+ )}
300
+ </>
301
+ );
302
+ };
303
+
304
+ export default BookingSelfContained;