@qite/tide-booking-component 1.3.2 → 1.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (305) hide show
  1. package/.vs/ProjectSettings.json +3 -3
  2. package/.vs/VSWorkspaceState.json +5 -5
  3. package/README.md +8 -8
  4. package/build/build-cjs/booking-product/components/age-select.d.ts +8 -8
  5. package/build/build-cjs/booking-product/components/amount-input.d.ts +10 -10
  6. package/build/build-cjs/booking-product/components/date-range-picker/calendar-day.d.ts +12 -12
  7. package/build/build-cjs/booking-product/components/date-range-picker/calendar.d.ts +19 -19
  8. package/build/build-cjs/booking-product/components/date-range-picker/index.d.ts +20 -23
  9. package/build/build-cjs/booking-product/components/dates.d.ts +9 -9
  10. package/build/build-cjs/booking-product/components/footer.d.ts +10 -10
  11. package/build/build-cjs/booking-product/components/header.d.ts +11 -11
  12. package/build/build-cjs/booking-product/components/icon.d.ts +10 -10
  13. package/build/build-cjs/booking-product/components/product.d.ts +9 -9
  14. package/build/build-cjs/booking-product/components/rating.d.ts +6 -6
  15. package/build/build-cjs/booking-product/components/rooms.d.ts +10 -10
  16. package/build/build-cjs/booking-product/index.d.ts +10 -10
  17. package/build/build-cjs/booking-product/settings-context.d.ts +5 -6
  18. package/build/build-cjs/booking-product/types.d.ts +25 -25
  19. package/build/build-cjs/booking-product/utils/api.d.ts +16 -6
  20. package/build/build-cjs/booking-product/utils/price.d.ts +9 -1
  21. package/build/build-cjs/booking-wizard/api-settings-slice.d.ts +14 -4
  22. package/build/build-cjs/booking-wizard/components/icon.d.ts +10 -10
  23. package/build/build-cjs/booking-wizard/components/labeled-input.d.ts +18 -18
  24. package/build/build-cjs/booking-wizard/components/labeled-select.d.ts +21 -21
  25. package/build/build-cjs/booking-wizard/components/message.d.ts +9 -9
  26. package/build/build-cjs/booking-wizard/components/multi-range-filter.d.ts +11 -11
  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 +29 -10
  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 +177 -46
  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 +15 -8
  36. package/build/build-cjs/booking-wizard/features/booking/selectors.d.ts +308 -136
  37. package/build/build-cjs/booking-wizard/features/confirmation/confirmation.d.ts +4 -5
  38. package/build/build-cjs/booking-wizard/features/error/error.d.ts +4 -5
  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 +16 -6
  44. package/build/build-cjs/booking-wizard/features/flight-options/index.d.ts +4 -5
  45. package/build/build-cjs/booking-wizard/features/price-details/price-details-api.d.ts +15 -6
  46. package/build/build-cjs/booking-wizard/features/price-details/price-details-slice.d.ts +121 -80
  47. package/build/build-cjs/booking-wizard/features/price-details/util.d.ts +5 -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 +17 -9
  50. package/build/build-cjs/booking-wizard/features/product-options/option-booking-airline-group.d.ts +17 -8
  51. package/build/build-cjs/booking-wizard/features/product-options/option-booking-group.d.ts +18 -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 +13 -10
  54. package/build/build-cjs/booking-wizard/features/product-options/option-pax-group.d.ts +20 -13
  55. package/build/build-cjs/booking-wizard/features/product-options/option-room.d.ts +18 -10
  56. package/build/build-cjs/booking-wizard/features/product-options/option-unit-group.d.ts +20 -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 +4 -5
  59. package/build/build-cjs/booking-wizard/features/room-options/index.d.ts +4 -5
  60. package/build/build-cjs/booking-wizard/features/room-options/room-utils.d.ts +29 -9
  61. package/build/build-cjs/booking-wizard/features/room-options/room.d.ts +15 -12
  62. package/build/build-cjs/booking-wizard/features/room-options/traveler-rooms.d.ts +13 -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 +31 -12
  66. package/build/build-cjs/booking-wizard/features/sidebar/sidebar.d.ts +29 -25
  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 +10 -7
  71. package/build/build-cjs/booking-wizard/features/summary/summary-per-pax-option-group.d.ts +10 -7
  72. package/build/build-cjs/booking-wizard/features/summary/summary-per-unit-option-group.d.ts +10 -7
  73. package/build/build-cjs/booking-wizard/features/summary/summary-slice.d.ts +14 -8
  74. package/build/build-cjs/booking-wizard/features/summary/summary.d.ts +4 -5
  75. package/build/build-cjs/booking-wizard/features/travelers-form/travelers-form-slice.d.ts +75 -49
  76. package/build/build-cjs/booking-wizard/features/travelers-form/travelers-form.d.ts +4 -5
  77. package/build/build-cjs/booking-wizard/features/travelers-form/type-ahead-input.d.ts +16 -16
  78. package/build/build-cjs/booking-wizard/features/travelers-form/validate-form.d.ts +9 -4
  79. package/build/build-cjs/booking-wizard/index.d.ts +12 -12
  80. package/build/build-cjs/booking-wizard/settings-context.d.ts +5 -6
  81. package/build/build-cjs/booking-wizard/store.d.ts +44 -24
  82. package/build/build-cjs/booking-wizard/types.d.ts +253 -257
  83. package/build/build-cjs/booking-wizard/use-offer-printer.d.ts +19 -13
  84. package/build/build-cjs/index.d.ts +3 -3
  85. package/build/build-cjs/index.js +16332 -7414
  86. package/build/build-cjs/shared/components/loader.d.ts +6 -6
  87. package/build/build-cjs/shared/types.d.ts +4 -4
  88. package/build/build-cjs/shared/utils/class-util.d.ts +1 -1
  89. package/build/build-cjs/shared/utils/localization-util.d.ts +248 -248
  90. package/build/build-cjs/shared/utils/query-string-util.d.ts +29 -8
  91. package/build/build-cjs/shared/utils/tide-api-utils.d.ts +6 -4
  92. package/build/build-esm/booking-product/components/age-select.d.ts +8 -8
  93. package/build/build-esm/booking-product/components/amount-input.d.ts +10 -10
  94. package/build/build-esm/booking-product/components/date-range-picker/calendar-day.d.ts +12 -12
  95. package/build/build-esm/booking-product/components/date-range-picker/calendar.d.ts +19 -19
  96. package/build/build-esm/booking-product/components/date-range-picker/index.d.ts +20 -23
  97. package/build/build-esm/booking-product/components/dates.d.ts +9 -9
  98. package/build/build-esm/booking-product/components/footer.d.ts +10 -10
  99. package/build/build-esm/booking-product/components/header.d.ts +11 -11
  100. package/build/build-esm/booking-product/components/icon.d.ts +10 -10
  101. package/build/build-esm/booking-product/components/product.d.ts +9 -9
  102. package/build/build-esm/booking-product/components/rating.d.ts +6 -6
  103. package/build/build-esm/booking-product/components/rooms.d.ts +10 -10
  104. package/build/build-esm/booking-product/index.d.ts +10 -10
  105. package/build/build-esm/booking-product/settings-context.d.ts +5 -6
  106. package/build/build-esm/booking-product/types.d.ts +25 -25
  107. package/build/build-esm/booking-product/utils/api.d.ts +16 -6
  108. package/build/build-esm/booking-product/utils/price.d.ts +9 -1
  109. package/build/build-esm/booking-wizard/api-settings-slice.d.ts +14 -4
  110. package/build/build-esm/booking-wizard/components/icon.d.ts +10 -10
  111. package/build/build-esm/booking-wizard/components/labeled-input.d.ts +18 -18
  112. package/build/build-esm/booking-wizard/components/labeled-select.d.ts +21 -21
  113. package/build/build-esm/booking-wizard/components/message.d.ts +9 -9
  114. package/build/build-esm/booking-wizard/components/multi-range-filter.d.ts +11 -11
  115. package/build/build-esm/booking-wizard/components/print-offer-button.d.ts +17 -17
  116. package/build/build-esm/booking-wizard/components/product-card.d.ts +8 -8
  117. package/build/build-esm/booking-wizard/components/step-indicator.d.ts +6 -6
  118. package/build/build-esm/booking-wizard/components/step-route.d.ts +9 -9
  119. package/build/build-esm/booking-wizard/features/booking/api.d.ts +29 -10
  120. package/build/build-esm/booking-wizard/features/booking/booking-self-contained.d.ts +8 -8
  121. package/build/build-esm/booking-wizard/features/booking/booking-slice.d.ts +177 -46
  122. package/build/build-esm/booking-wizard/features/booking/booking.d.ts +8 -8
  123. package/build/build-esm/booking-wizard/features/booking/constants.d.ts +15 -8
  124. package/build/build-esm/booking-wizard/features/booking/selectors.d.ts +308 -136
  125. package/build/build-esm/booking-wizard/features/confirmation/confirmation.d.ts +4 -5
  126. package/build/build-esm/booking-wizard/features/error/error.d.ts +4 -5
  127. package/build/build-esm/booking-wizard/features/flight-options/flight-filter.d.ts +9 -9
  128. package/build/build-esm/booking-wizard/features/flight-options/flight-option-flight.d.ts +8 -8
  129. package/build/build-esm/booking-wizard/features/flight-options/flight-option-modal.d.ts +3 -3
  130. package/build/build-esm/booking-wizard/features/flight-options/flight-option.d.ts +10 -10
  131. package/build/build-esm/booking-wizard/features/flight-options/flight-utils.d.ts +16 -6
  132. package/build/build-esm/booking-wizard/features/flight-options/index.d.ts +4 -5
  133. package/build/build-esm/booking-wizard/features/price-details/price-details-api.d.ts +15 -6
  134. package/build/build-esm/booking-wizard/features/price-details/price-details-slice.d.ts +121 -80
  135. package/build/build-esm/booking-wizard/features/price-details/util.d.ts +5 -2
  136. package/build/build-esm/booking-wizard/features/product-options/no-options.d.ts +3 -3
  137. package/build/build-esm/booking-wizard/features/product-options/none-option.d.ts +17 -9
  138. package/build/build-esm/booking-wizard/features/product-options/option-booking-airline-group.d.ts +17 -8
  139. package/build/build-esm/booking-wizard/features/product-options/option-booking-group.d.ts +18 -12
  140. package/build/build-esm/booking-wizard/features/product-options/option-item.d.ts +11 -11
  141. package/build/build-esm/booking-wizard/features/product-options/option-pax-card.d.ts +13 -10
  142. package/build/build-esm/booking-wizard/features/product-options/option-pax-group.d.ts +20 -13
  143. package/build/build-esm/booking-wizard/features/product-options/option-room.d.ts +18 -10
  144. package/build/build-esm/booking-wizard/features/product-options/option-unit-group.d.ts +20 -13
  145. package/build/build-esm/booking-wizard/features/product-options/option-units-card.d.ts +9 -9
  146. package/build/build-esm/booking-wizard/features/product-options/options-form.d.ts +4 -5
  147. package/build/build-esm/booking-wizard/features/room-options/index.d.ts +4 -5
  148. package/build/build-esm/booking-wizard/features/room-options/room-utils.d.ts +29 -9
  149. package/build/build-esm/booking-wizard/features/room-options/room.d.ts +15 -12
  150. package/build/build-esm/booking-wizard/features/room-options/traveler-rooms.d.ts +13 -9
  151. package/build/build-esm/booking-wizard/features/sidebar/index.d.ts +7 -7
  152. package/build/build-esm/booking-wizard/features/sidebar/sidebar-flight.d.ts +8 -8
  153. package/build/build-esm/booking-wizard/features/sidebar/sidebar-util.d.ts +31 -12
  154. package/build/build-esm/booking-wizard/features/sidebar/sidebar.d.ts +29 -25
  155. package/build/build-esm/booking-wizard/features/summary/summary-booking-option-pax.d.ts +7 -7
  156. package/build/build-esm/booking-wizard/features/summary/summary-booking-option-unit.d.ts +7 -7
  157. package/build/build-esm/booking-wizard/features/summary/summary-flight.d.ts +8 -8
  158. package/build/build-esm/booking-wizard/features/summary/summary-per-booking-option-group.d.ts +10 -7
  159. package/build/build-esm/booking-wizard/features/summary/summary-per-pax-option-group.d.ts +10 -7
  160. package/build/build-esm/booking-wizard/features/summary/summary-per-unit-option-group.d.ts +10 -7
  161. package/build/build-esm/booking-wizard/features/summary/summary-slice.d.ts +14 -8
  162. package/build/build-esm/booking-wizard/features/summary/summary.d.ts +4 -5
  163. package/build/build-esm/booking-wizard/features/travelers-form/travelers-form-slice.d.ts +75 -49
  164. package/build/build-esm/booking-wizard/features/travelers-form/travelers-form.d.ts +4 -5
  165. package/build/build-esm/booking-wizard/features/travelers-form/type-ahead-input.d.ts +16 -16
  166. package/build/build-esm/booking-wizard/features/travelers-form/validate-form.d.ts +9 -4
  167. package/build/build-esm/booking-wizard/index.d.ts +12 -12
  168. package/build/build-esm/booking-wizard/settings-context.d.ts +5 -6
  169. package/build/build-esm/booking-wizard/store.d.ts +44 -24
  170. package/build/build-esm/booking-wizard/types.d.ts +253 -257
  171. package/build/build-esm/booking-wizard/use-offer-printer.d.ts +19 -13
  172. package/build/build-esm/index.d.ts +3 -3
  173. package/build/build-esm/index.js +15926 -7396
  174. package/build/build-esm/shared/components/loader.d.ts +6 -6
  175. package/build/build-esm/shared/types.d.ts +4 -4
  176. package/build/build-esm/shared/utils/class-util.d.ts +1 -1
  177. package/build/build-esm/shared/utils/localization-util.d.ts +248 -248
  178. package/build/build-esm/shared/utils/query-string-util.d.ts +29 -8
  179. package/build/build-esm/shared/utils/tide-api-utils.d.ts +6 -4
  180. package/package.json +75 -75
  181. package/rollup.config.js +23 -23
  182. package/src/booking-product/components/age-select.tsx +35 -35
  183. package/src/booking-product/components/amount-input.tsx +78 -78
  184. package/src/booking-product/components/date-range-picker/calendar-day.tsx +58 -58
  185. package/src/booking-product/components/date-range-picker/calendar.tsx +178 -178
  186. package/src/booking-product/components/date-range-picker/index.tsx +196 -196
  187. package/src/booking-product/components/dates.tsx +136 -136
  188. package/src/booking-product/components/footer.tsx +69 -69
  189. package/src/booking-product/components/header.tsx +79 -79
  190. package/src/booking-product/components/icon.tsx +251 -251
  191. package/src/booking-product/components/product.tsx +314 -314
  192. package/src/booking-product/components/rating.tsx +21 -21
  193. package/src/booking-product/components/rooms.tsx +195 -195
  194. package/src/booking-product/index.tsx +30 -30
  195. package/src/booking-product/settings-context.ts +14 -14
  196. package/src/booking-product/types.ts +28 -28
  197. package/src/booking-product/utils/api.ts +25 -25
  198. package/src/booking-product/utils/price.ts +29 -29
  199. package/src/booking-wizard/api-settings-slice.ts +24 -24
  200. package/src/booking-wizard/components/icon.tsx +508 -508
  201. package/src/booking-wizard/components/labeled-input.tsx +64 -64
  202. package/src/booking-wizard/components/labeled-select.tsx +69 -69
  203. package/src/booking-wizard/components/message.tsx +34 -34
  204. package/src/booking-wizard/components/multi-range-filter.tsx +113 -113
  205. package/src/booking-wizard/components/print-offer-button.tsx +63 -66
  206. package/src/booking-wizard/components/product-card.tsx +37 -37
  207. package/src/booking-wizard/components/step-indicator.tsx +51 -51
  208. package/src/booking-wizard/components/step-route.tsx +27 -27
  209. package/src/booking-wizard/declarations.d.ts +4 -4
  210. package/src/booking-wizard/features/booking/api.ts +49 -49
  211. package/src/booking-wizard/features/booking/booking-self-contained.tsx +389 -389
  212. package/src/booking-wizard/features/booking/booking-slice.ts +665 -663
  213. package/src/booking-wizard/features/booking/booking.tsx +361 -361
  214. package/src/booking-wizard/features/booking/constants.ts +16 -16
  215. package/src/booking-wizard/features/booking/selectors.ts +441 -441
  216. package/src/booking-wizard/features/confirmation/confirmation.tsx +97 -97
  217. package/src/booking-wizard/features/error/error.tsx +78 -78
  218. package/src/booking-wizard/features/flight-options/flight-filter.tsx +432 -432
  219. package/src/booking-wizard/features/flight-options/flight-option-flight.tsx +385 -385
  220. package/src/booking-wizard/features/flight-options/flight-option-modal.tsx +229 -229
  221. package/src/booking-wizard/features/flight-options/flight-option.tsx +81 -81
  222. package/src/booking-wizard/features/flight-options/flight-utils.ts +516 -516
  223. package/src/booking-wizard/features/flight-options/index.tsx +196 -196
  224. package/src/booking-wizard/features/price-details/price-details-api.ts +24 -24
  225. package/src/booking-wizard/features/price-details/price-details-slice.ts +178 -178
  226. package/src/booking-wizard/features/price-details/util.ts +155 -155
  227. package/src/booking-wizard/features/product-options/no-options.tsx +21 -21
  228. package/src/booking-wizard/features/product-options/none-option.tsx +120 -120
  229. package/src/booking-wizard/features/product-options/option-booking-airline-group.tsx +64 -64
  230. package/src/booking-wizard/features/product-options/option-booking-group.tsx +216 -216
  231. package/src/booking-wizard/features/product-options/option-item.tsx +317 -317
  232. package/src/booking-wizard/features/product-options/option-pax-card.tsx +201 -201
  233. package/src/booking-wizard/features/product-options/option-pax-group.tsx +175 -175
  234. package/src/booking-wizard/features/product-options/option-room.tsx +321 -321
  235. package/src/booking-wizard/features/product-options/option-unit-group.tsx +198 -198
  236. package/src/booking-wizard/features/product-options/option-units-card.tsx +185 -185
  237. package/src/booking-wizard/features/product-options/options-form.tsx +481 -563
  238. package/src/booking-wizard/features/room-options/index.tsx +187 -187
  239. package/src/booking-wizard/features/room-options/room-utils.ts +190 -190
  240. package/src/booking-wizard/features/room-options/room.tsx +160 -160
  241. package/src/booking-wizard/features/room-options/traveler-rooms.tsx +75 -75
  242. package/src/booking-wizard/features/sidebar/index.tsx +76 -76
  243. package/src/booking-wizard/features/sidebar/sidebar-flight.tsx +68 -68
  244. package/src/booking-wizard/features/sidebar/sidebar-util.ts +177 -177
  245. package/src/booking-wizard/features/sidebar/sidebar.tsx +364 -364
  246. package/src/booking-wizard/features/summary/summary-booking-option-pax.tsx +25 -25
  247. package/src/booking-wizard/features/summary/summary-booking-option-unit.tsx +25 -25
  248. package/src/booking-wizard/features/summary/summary-flight.tsx +39 -39
  249. package/src/booking-wizard/features/summary/summary-per-booking-option-group.tsx +69 -69
  250. package/src/booking-wizard/features/summary/summary-per-pax-option-group.tsx +63 -63
  251. package/src/booking-wizard/features/summary/summary-per-unit-option-group.tsx +66 -66
  252. package/src/booking-wizard/features/summary/summary-slice.ts +28 -28
  253. package/src/booking-wizard/features/summary/summary.tsx +674 -674
  254. package/src/booking-wizard/features/travelers-form/travelers-form-slice.ts +164 -164
  255. package/src/booking-wizard/features/travelers-form/travelers-form.tsx +754 -754
  256. package/src/booking-wizard/features/travelers-form/type-ahead-input.tsx +101 -101
  257. package/src/booking-wizard/features/travelers-form/validate-form.ts +245 -245
  258. package/src/booking-wizard/index.tsx +36 -36
  259. package/src/booking-wizard/settings-context.ts +62 -62
  260. package/src/booking-wizard/store.ts +31 -31
  261. package/src/booking-wizard/types.ts +279 -279
  262. package/src/booking-wizard/use-offer-printer.ts +117 -136
  263. package/src/index.ts +4 -4
  264. package/src/shared/components/loader.tsx +16 -16
  265. package/src/shared/translations/en-GB.json +237 -237
  266. package/src/shared/translations/fr-BE.json +238 -238
  267. package/src/shared/translations/nl-BE.json +237 -237
  268. package/src/shared/types.ts +4 -4
  269. package/src/shared/utils/class-util.ts +9 -9
  270. package/src/shared/utils/localization-util.ts +62 -62
  271. package/src/shared/utils/query-string-util.ts +119 -119
  272. package/src/shared/utils/tide-api-utils.ts +36 -36
  273. package/styles/booking-product-variables.scss +394 -394
  274. package/styles/booking-product.scss +446 -446
  275. package/styles/booking-wizard-variables.scss +873 -873
  276. package/styles/booking-wizard.scss +59 -59
  277. package/styles/components/_animations.scss +39 -39
  278. package/styles/components/_base.scss +107 -107
  279. package/styles/components/_booking.scss +879 -879
  280. package/styles/components/_button.scss +238 -238
  281. package/styles/components/_checkbox.scss +219 -219
  282. package/styles/components/_cta.scss +208 -208
  283. package/styles/components/_date-list.scss +41 -41
  284. package/styles/components/_date-range-picker.scss +225 -225
  285. package/styles/components/_decrement-increment.scss +35 -35
  286. package/styles/components/_dropdown.scss +72 -72
  287. package/styles/components/_flight-option.scss +1429 -1429
  288. package/styles/components/_form.scss +1583 -1583
  289. package/styles/components/_info-message.scss +71 -71
  290. package/styles/components/_input.scss +25 -25
  291. package/styles/components/_list.scss +187 -187
  292. package/styles/components/_loader.scss +72 -72
  293. package/styles/components/_mixins.scss +550 -550
  294. package/styles/components/_placeholders.scss +166 -166
  295. package/styles/components/_pricing-summary.scss +155 -155
  296. package/styles/components/_qsm.scss +17 -17
  297. package/styles/components/_radiobutton.scss +170 -170
  298. package/styles/components/_select-wrapper.scss +80 -80
  299. package/styles/components/_spinner.scss +29 -29
  300. package/styles/components/_step-indicators.scss +168 -168
  301. package/styles/components/_table.scss +81 -81
  302. package/styles/components/_tree.scss +530 -530
  303. package/styles/components/_typeahead.scss +281 -281
  304. package/styles/components/_variables.scss +89 -89
  305. package/tsconfig.json +24 -24
@@ -1,361 +1,361 @@
1
- import { navigate, Router, useLocation } from "@reach/router";
2
- import React, { useContext } from "react";
3
- import { useSelector } from "react-redux";
4
- import {
5
- getDateFromParams,
6
- getFlightsFromParams,
7
- getNumberFromParams,
8
- getNumbersFromParams,
9
- getRoomsFromParams,
10
- getStringFromParams,
11
- } from "../../../shared/utils/query-string-util";
12
- import {
13
- fetchPackage,
14
- setAccommodationViewId,
15
- setAgentAdressId,
16
- setBookingAttributes,
17
- setBookingNumber,
18
- setBookingOptions,
19
- setBookingType,
20
- setCalculateDeposit,
21
- setGeneratePaymentUrl,
22
- setIsRetry,
23
- setLanguageCode,
24
- setOfficeId,
25
- setProductAttributes,
26
- setSkipPayment,
27
- setTagIds,
28
- setTranslations,
29
- } from "./booking-slice";
30
-
31
- import { isNil } from "lodash";
32
- import { useEffect } from "react";
33
- import StepRoute from "../../components/step-route";
34
- import SettingsContext from "../../settings-context";
35
- import { useAppDispatch } from "../../store";
36
- import Confirmation from "../confirmation/confirmation";
37
- import Error from "../error/error";
38
- import FlightOptionsForm from "../flight-options";
39
- import OptionsForm from "../product-options/options-form";
40
- import RoomOptionsForm from "../room-options";
41
- import Sidebar from "../sidebar";
42
- import Summary from "../summary/summary";
43
- import TravelersForm from "../travelers-form/travelers-form";
44
- import {
45
- selectBookingAttributes,
46
- selectBookingNumber,
47
- selectBookingRooms,
48
- selectIsRetry,
49
- selectIsUnavailable,
50
- selectPackageDetails,
51
- selectProductAttributes,
52
- selectTranslations,
53
- } from "./selectors";
54
-
55
- interface BookingProps {
56
- productCode: string;
57
- productName: string;
58
- thumbnailUrl?: string;
59
- }
60
-
61
- const Booking: React.FC<BookingProps> = ({
62
- productCode,
63
- productName,
64
- thumbnailUrl,
65
- }) => {
66
- const {
67
- officeId,
68
- bookingOptions,
69
- basePath,
70
- roomOptions,
71
- flightOptions,
72
- options,
73
- travellers,
74
- summary,
75
- confirmation,
76
- error,
77
- showSidebarDeposit,
78
- includeFlights,
79
- loaderComponent,
80
- skipPaymentWithAgent,
81
- generatePaymentUrl,
82
- tagIds,
83
- agentAdressId,
84
- language,
85
- translationFiles,
86
- accommodationViewId,
87
- isOffer,
88
- } = useContext(SettingsContext);
89
-
90
- const dispatch = useAppDispatch();
91
- const location = useLocation();
92
-
93
- const productAttributes = useSelector(selectProductAttributes);
94
- const bookingAttributes = useSelector(selectBookingAttributes);
95
- const rooms = useSelector(selectBookingRooms);
96
- const bookingNumber = useSelector(selectBookingNumber);
97
- const isRetry = useSelector(selectIsRetry);
98
- const packageDetails = useSelector(selectPackageDetails);
99
- const isUnvailable = useSelector(selectIsUnavailable);
100
- const translations = useSelector(selectTranslations);
101
-
102
- useEffect(() => {
103
- dispatch(setSkipPayment(skipPaymentWithAgent ?? false));
104
- dispatch(setGeneratePaymentUrl(generatePaymentUrl ?? false));
105
- }, [skipPaymentWithAgent, generatePaymentUrl]);
106
-
107
- useEffect(() => {
108
- const params = new URLSearchParams(location.search);
109
- const startDate = getDateFromParams(params, "startDate");
110
- const endDate = getDateFromParams(params, "endDate");
111
- const catalog = getNumberFromParams(params, "catalog");
112
- const rooms = getRoomsFromParams(params, "rooms");
113
- const flight = getFlightsFromParams(params, "flight");
114
- const flightRouteId = getStringFromParams(params, "flightRouteId");
115
- const vendorConfigurationId = getNumberFromParams(
116
- params,
117
- "vendorConfigurationId"
118
- );
119
- const allotmentName = getStringFromParams(params, "allotmentName");
120
- const allotmentIds = getNumbersFromParams(params, "allotmentId");
121
- const tourCode = getStringFromParams(params, "tourCode");
122
- const bookingNumber = params.get("bookingNr") ?? undefined;
123
-
124
- if (typeof window !== "undefined") {
125
- window.scrollTo(0, 0);
126
- }
127
-
128
- if (!isNil(bookingNumber)) {
129
- dispatch(setBookingNumber(bookingNumber));
130
- navigate(
131
- `${basePath}${confirmation.pathSuffix}?bookingNr=${bookingNumber}`
132
- );
133
- }
134
-
135
- if (
136
- !isNil(startDate) &&
137
- !isNil(endDate) &&
138
- !isNil(catalog) &&
139
- !isNil(rooms)
140
- ) {
141
- dispatch(
142
- setBookingAttributes({
143
- startDate,
144
- endDate,
145
- catalog,
146
- rooms,
147
- flight,
148
- includeFlights,
149
- allotmentName,
150
- allotmentIds,
151
- tourCode,
152
- flightRouteId,
153
- vendorConfigurationId,
154
- })
155
- );
156
- } else {
157
- console.error(
158
- "Failure when setting booking attributes",
159
- startDate,
160
- endDate,
161
- catalog,
162
- rooms
163
- );
164
- }
165
- }, [location.search, setBookingAttributes, setBookingNumber, includeFlights]);
166
-
167
- useEffect(() => {
168
- if (
169
- !productAttributes ||
170
- !bookingAttributes ||
171
- !isNil(bookingNumber) ||
172
- !isRetry
173
- ) {
174
- return;
175
- }
176
-
177
- // Retried
178
- dispatch(setIsRetry(false));
179
-
180
- // Fetch data
181
- const promise = dispatch(fetchPackage());
182
- return () => {
183
- promise.abort();
184
- };
185
- }, [isRetry]);
186
-
187
- useEffect(() => {
188
- if (!isNil(productCode) && !isNil(productName)) {
189
- dispatch(
190
- setProductAttributes({
191
- productCode,
192
- productName,
193
- })
194
- );
195
- } else {
196
- console.error(
197
- "Failure when setting product attributes",
198
- productCode,
199
- productName
200
- );
201
- }
202
- }, [productCode, productName, setProductAttributes]);
203
-
204
- const getTranslations = async () => {
205
- const translations = translationFiles?.map((x) =>
206
- fetch(x.path)
207
- .then((y) => y.json())
208
- .then((z) => ({ language: x.language, value: z }))
209
- );
210
- return translations && (await Promise.all(translations));
211
- };
212
-
213
- useEffect(() => {
214
- const loadTranslations = async () => {
215
- const translations = await getTranslations();
216
- dispatch(setTranslations(translations)); // Now dispatch the resolved value
217
- };
218
-
219
- loadTranslations();
220
-
221
- dispatch(setOfficeId(officeId));
222
- dispatch(setLanguageCode(language));
223
- dispatch(setBookingOptions(bookingOptions));
224
- dispatch(setCalculateDeposit(showSidebarDeposit));
225
- if (tagIds && tagIds.length > 0) {
226
- dispatch(setTagIds(tagIds ?? undefined));
227
- }
228
- dispatch(setAgentAdressId(agentAdressId ?? undefined));
229
- if (agentAdressId && agentAdressId != 0) {
230
- dispatch(setBookingType("b2b"));
231
- }
232
- if (accommodationViewId && accommodationViewId != 0) {
233
- dispatch(setAccommodationViewId(accommodationViewId));
234
- }
235
- }, [
236
- officeId,
237
- language,
238
- bookingOptions,
239
- showSidebarDeposit,
240
- setOfficeId,
241
- setLanguageCode,
242
- setCalculateDeposit,
243
- tagIds,
244
- agentAdressId,
245
- accommodationViewId,
246
- ]);
247
-
248
- useEffect(() => {
249
- if (
250
- !productAttributes ||
251
- !bookingAttributes ||
252
- !rooms?.length ||
253
- !isNil(bookingNumber) ||
254
- !isNil(packageDetails)
255
- ) {
256
- return;
257
- }
258
- // Fetch data
259
- const promise = dispatch(fetchPackage());
260
- return () => {
261
- promise.abort();
262
- };
263
- }, [
264
- productAttributes,
265
- bookingAttributes,
266
- rooms,
267
- bookingNumber,
268
- packageDetails,
269
- ]);
270
-
271
- let numberIndex = 1;
272
-
273
- return (
274
- <>
275
- {((productAttributes && bookingAttributes && packageDetails) ||
276
- bookingNumber) && (
277
- <div className="booking">
278
- <div className="booking__content">
279
- <div className="booking__panel">
280
- <Router basepath={basePath}>
281
- {!flightOptions.isHidden && flightOptions.pathSuffix && (
282
- <StepRoute
283
- path={flightOptions.pathSuffix}
284
- number={numberIndex++}
285
- title={translations.STEPS.FLIGHT_OPTIONS}
286
- component={<FlightOptionsForm />}
287
- />
288
- )}
289
- {!roomOptions.isHidden && roomOptions.pathSuffix && (
290
- <StepRoute
291
- path={roomOptions.pathSuffix}
292
- number={numberIndex++}
293
- title={translations.STEPS.ROOM_OPTIONS}
294
- component={<RoomOptionsForm />}
295
- />
296
- )}
297
- <StepRoute
298
- path={options.pathSuffix}
299
- number={numberIndex++}
300
- title={translations.STEPS.EXTRA_OPTIONS}
301
- component={<OptionsForm />}
302
- />
303
- <StepRoute
304
- path={travellers.pathSuffix}
305
- number={numberIndex++}
306
- title={translations.STEPS.PERSONAL_DETAILS}
307
- component={<TravelersForm />}
308
- />
309
- <StepRoute
310
- path={summary.pathSuffix}
311
- number={numberIndex++}
312
- title={translations.STEPS.SUMMARY}
313
- component={<Summary />}
314
- />
315
- <StepRoute
316
- path={confirmation.pathSuffix}
317
- number={numberIndex++}
318
- title={translations.STEPS.CONFIRMATION}
319
- component={<Confirmation />}
320
- />
321
- <StepRoute
322
- path={error.pathSuffix}
323
- number={numberIndex++}
324
- title={translations.STEPS.ERROR}
325
- component={<Error />}
326
- />
327
- </Router>
328
- </div>
329
- <div className="backdrop" id="backdrop"></div>
330
- {packageDetails && (
331
- <Sidebar productName={productName} thumbnailUrl={thumbnailUrl} />
332
- )}
333
- </div>
334
- </div>
335
- )}
336
- {!packageDetails && !bookingNumber && !isUnvailable && (
337
- <div className="booking">
338
- <div className="booking__loader">
339
- {loaderComponent}
340
- <p className="booking__loader-text">
341
- {isOffer
342
- ? translations.MAIN.PREPARING_OFFER
343
- : translations.MAIN.PREPARING_BOOKING}
344
- </p>
345
- </div>
346
- </div>
347
- )}
348
- {isUnvailable && (
349
- <div className="booking">
350
- <div className="booking__loader">
351
- <p className="booking__loader-text">
352
- {translations.MAIN.PRODUCT_UNAVAILABLE}
353
- </p>
354
- </div>
355
- </div>
356
- )}
357
- </>
358
- );
359
- };
360
-
361
- export default Booking;
1
+ import { navigate, Router, useLocation } from "@reach/router";
2
+ import React, { useContext } from "react";
3
+ import { useSelector } from "react-redux";
4
+ import {
5
+ getDateFromParams,
6
+ getFlightsFromParams,
7
+ getNumberFromParams,
8
+ getNumbersFromParams,
9
+ getRoomsFromParams,
10
+ getStringFromParams,
11
+ } from "../../../shared/utils/query-string-util";
12
+ import {
13
+ fetchPackage,
14
+ setAccommodationViewId,
15
+ setAgentAdressId,
16
+ setBookingAttributes,
17
+ setBookingNumber,
18
+ setBookingOptions,
19
+ setBookingType,
20
+ setCalculateDeposit,
21
+ setGeneratePaymentUrl,
22
+ setIsRetry,
23
+ setLanguageCode,
24
+ setOfficeId,
25
+ setProductAttributes,
26
+ setSkipPayment,
27
+ setTagIds,
28
+ setTranslations,
29
+ } from "./booking-slice";
30
+
31
+ import { isNil } from "lodash";
32
+ import { useEffect } from "react";
33
+ import StepRoute from "../../components/step-route";
34
+ import SettingsContext from "../../settings-context";
35
+ import { useAppDispatch } from "../../store";
36
+ import Confirmation from "../confirmation/confirmation";
37
+ import Error from "../error/error";
38
+ import FlightOptionsForm from "../flight-options";
39
+ import OptionsForm from "../product-options/options-form";
40
+ import RoomOptionsForm from "../room-options";
41
+ import Sidebar from "../sidebar";
42
+ import Summary from "../summary/summary";
43
+ import TravelersForm from "../travelers-form/travelers-form";
44
+ import {
45
+ selectBookingAttributes,
46
+ selectBookingNumber,
47
+ selectBookingRooms,
48
+ selectIsRetry,
49
+ selectIsUnavailable,
50
+ selectPackageDetails,
51
+ selectProductAttributes,
52
+ selectTranslations,
53
+ } from "./selectors";
54
+
55
+ interface BookingProps {
56
+ productCode: string;
57
+ productName: string;
58
+ thumbnailUrl?: string;
59
+ }
60
+
61
+ const Booking: React.FC<BookingProps> = ({
62
+ productCode,
63
+ productName,
64
+ thumbnailUrl,
65
+ }) => {
66
+ const {
67
+ officeId,
68
+ bookingOptions,
69
+ basePath,
70
+ roomOptions,
71
+ flightOptions,
72
+ options,
73
+ travellers,
74
+ summary,
75
+ confirmation,
76
+ error,
77
+ showSidebarDeposit,
78
+ includeFlights,
79
+ loaderComponent,
80
+ skipPaymentWithAgent,
81
+ generatePaymentUrl,
82
+ tagIds,
83
+ agentAdressId,
84
+ language,
85
+ translationFiles,
86
+ accommodationViewId,
87
+ isOffer,
88
+ } = useContext(SettingsContext);
89
+
90
+ const dispatch = useAppDispatch();
91
+ const location = useLocation();
92
+
93
+ const productAttributes = useSelector(selectProductAttributes);
94
+ const bookingAttributes = useSelector(selectBookingAttributes);
95
+ const rooms = useSelector(selectBookingRooms);
96
+ const bookingNumber = useSelector(selectBookingNumber);
97
+ const isRetry = useSelector(selectIsRetry);
98
+ const packageDetails = useSelector(selectPackageDetails);
99
+ const isUnvailable = useSelector(selectIsUnavailable);
100
+ const translations = useSelector(selectTranslations);
101
+
102
+ useEffect(() => {
103
+ dispatch(setSkipPayment(skipPaymentWithAgent ?? false));
104
+ dispatch(setGeneratePaymentUrl(generatePaymentUrl ?? false));
105
+ }, [skipPaymentWithAgent, generatePaymentUrl]);
106
+
107
+ useEffect(() => {
108
+ const params = new URLSearchParams(location.search);
109
+ const startDate = getDateFromParams(params, "startDate");
110
+ const endDate = getDateFromParams(params, "endDate");
111
+ const catalog = getNumberFromParams(params, "catalog");
112
+ const rooms = getRoomsFromParams(params, "rooms");
113
+ const flight = getFlightsFromParams(params, "flight");
114
+ const flightRouteId = getStringFromParams(params, "flightRouteId");
115
+ const vendorConfigurationId = getNumberFromParams(
116
+ params,
117
+ "vendorConfigurationId"
118
+ );
119
+ const allotmentName = getStringFromParams(params, "allotmentName");
120
+ const allotmentIds = getNumbersFromParams(params, "allotmentId");
121
+ const tourCode = getStringFromParams(params, "tourCode");
122
+ const bookingNumber = params.get("bookingNr") ?? undefined;
123
+
124
+ if (typeof window !== "undefined") {
125
+ window.scrollTo(0, 0);
126
+ }
127
+
128
+ if (!isNil(bookingNumber)) {
129
+ dispatch(setBookingNumber(bookingNumber));
130
+ navigate(
131
+ `${basePath}${confirmation.pathSuffix}?bookingNr=${bookingNumber}`
132
+ );
133
+ }
134
+
135
+ if (
136
+ !isNil(startDate) &&
137
+ !isNil(endDate) &&
138
+ !isNil(catalog) &&
139
+ !isNil(rooms)
140
+ ) {
141
+ dispatch(
142
+ setBookingAttributes({
143
+ startDate,
144
+ endDate,
145
+ catalog,
146
+ rooms,
147
+ flight,
148
+ includeFlights,
149
+ allotmentName,
150
+ allotmentIds,
151
+ tourCode,
152
+ flightRouteId,
153
+ vendorConfigurationId,
154
+ })
155
+ );
156
+ } else {
157
+ console.error(
158
+ "Failure when setting booking attributes",
159
+ startDate,
160
+ endDate,
161
+ catalog,
162
+ rooms
163
+ );
164
+ }
165
+ }, [location.search, setBookingAttributes, setBookingNumber, includeFlights]);
166
+
167
+ useEffect(() => {
168
+ if (
169
+ !productAttributes ||
170
+ !bookingAttributes ||
171
+ !isNil(bookingNumber) ||
172
+ !isRetry
173
+ ) {
174
+ return;
175
+ }
176
+
177
+ // Retried
178
+ dispatch(setIsRetry(false));
179
+
180
+ // Fetch data
181
+ const promise = dispatch(fetchPackage());
182
+ return () => {
183
+ promise.abort();
184
+ };
185
+ }, [isRetry]);
186
+
187
+ useEffect(() => {
188
+ if (!isNil(productCode) && !isNil(productName)) {
189
+ dispatch(
190
+ setProductAttributes({
191
+ productCode,
192
+ productName,
193
+ })
194
+ );
195
+ } else {
196
+ console.error(
197
+ "Failure when setting product attributes",
198
+ productCode,
199
+ productName
200
+ );
201
+ }
202
+ }, [productCode, productName, setProductAttributes]);
203
+
204
+ const getTranslations = async () => {
205
+ const translations = translationFiles?.map((x) =>
206
+ fetch(x.path)
207
+ .then((y) => y.json())
208
+ .then((z) => ({ language: x.language, value: z }))
209
+ );
210
+ return translations && (await Promise.all(translations));
211
+ };
212
+
213
+ useEffect(() => {
214
+ const loadTranslations = async () => {
215
+ const translations = await getTranslations();
216
+ dispatch(setTranslations(translations)); // Now dispatch the resolved value
217
+ };
218
+
219
+ loadTranslations();
220
+
221
+ dispatch(setOfficeId(officeId));
222
+ dispatch(setLanguageCode(language));
223
+ dispatch(setBookingOptions(bookingOptions));
224
+ dispatch(setCalculateDeposit(showSidebarDeposit));
225
+ if (tagIds && tagIds.length > 0) {
226
+ dispatch(setTagIds(tagIds ?? undefined));
227
+ }
228
+ dispatch(setAgentAdressId(agentAdressId ?? undefined));
229
+ if (agentAdressId && agentAdressId != 0) {
230
+ dispatch(setBookingType("b2b"));
231
+ }
232
+ if (accommodationViewId && accommodationViewId != 0) {
233
+ dispatch(setAccommodationViewId(accommodationViewId));
234
+ }
235
+ }, [
236
+ officeId,
237
+ language,
238
+ bookingOptions,
239
+ showSidebarDeposit,
240
+ setOfficeId,
241
+ setLanguageCode,
242
+ setCalculateDeposit,
243
+ tagIds,
244
+ agentAdressId,
245
+ accommodationViewId,
246
+ ]);
247
+
248
+ useEffect(() => {
249
+ if (
250
+ !productAttributes ||
251
+ !bookingAttributes ||
252
+ !rooms?.length ||
253
+ !isNil(bookingNumber) ||
254
+ !isNil(packageDetails)
255
+ ) {
256
+ return;
257
+ }
258
+ // Fetch data
259
+ const promise = dispatch(fetchPackage());
260
+ return () => {
261
+ promise.abort();
262
+ };
263
+ }, [
264
+ productAttributes,
265
+ bookingAttributes,
266
+ rooms,
267
+ bookingNumber,
268
+ packageDetails,
269
+ ]);
270
+
271
+ let numberIndex = 1;
272
+
273
+ return (
274
+ <>
275
+ {((productAttributes && bookingAttributes && packageDetails) ||
276
+ bookingNumber) && (
277
+ <div className="booking">
278
+ <div className="booking__content">
279
+ <div className="booking__panel">
280
+ <Router basepath={basePath}>
281
+ {!flightOptions.isHidden && flightOptions.pathSuffix && (
282
+ <StepRoute
283
+ path={flightOptions.pathSuffix}
284
+ number={numberIndex++}
285
+ title={translations.STEPS.FLIGHT_OPTIONS}
286
+ component={<FlightOptionsForm />}
287
+ />
288
+ )}
289
+ {!roomOptions.isHidden && roomOptions.pathSuffix && (
290
+ <StepRoute
291
+ path={roomOptions.pathSuffix}
292
+ number={numberIndex++}
293
+ title={translations.STEPS.ROOM_OPTIONS}
294
+ component={<RoomOptionsForm />}
295
+ />
296
+ )}
297
+ <StepRoute
298
+ path={options.pathSuffix}
299
+ number={numberIndex++}
300
+ title={translations.STEPS.EXTRA_OPTIONS}
301
+ component={<OptionsForm />}
302
+ />
303
+ <StepRoute
304
+ path={travellers.pathSuffix}
305
+ number={numberIndex++}
306
+ title={translations.STEPS.PERSONAL_DETAILS}
307
+ component={<TravelersForm />}
308
+ />
309
+ <StepRoute
310
+ path={summary.pathSuffix}
311
+ number={numberIndex++}
312
+ title={translations.STEPS.SUMMARY}
313
+ component={<Summary />}
314
+ />
315
+ <StepRoute
316
+ path={confirmation.pathSuffix}
317
+ number={numberIndex++}
318
+ title={translations.STEPS.CONFIRMATION}
319
+ component={<Confirmation />}
320
+ />
321
+ <StepRoute
322
+ path={error.pathSuffix}
323
+ number={numberIndex++}
324
+ title={translations.STEPS.ERROR}
325
+ component={<Error />}
326
+ />
327
+ </Router>
328
+ </div>
329
+ <div className="backdrop" id="backdrop"></div>
330
+ {packageDetails && (
331
+ <Sidebar productName={productName} thumbnailUrl={thumbnailUrl} />
332
+ )}
333
+ </div>
334
+ </div>
335
+ )}
336
+ {!packageDetails && !bookingNumber && !isUnvailable && (
337
+ <div className="booking">
338
+ <div className="booking__loader">
339
+ {loaderComponent}
340
+ <p className="booking__loader-text">
341
+ {isOffer
342
+ ? translations.MAIN.PREPARING_OFFER
343
+ : translations.MAIN.PREPARING_BOOKING}
344
+ </p>
345
+ </div>
346
+ </div>
347
+ )}
348
+ {isUnvailable && (
349
+ <div className="booking">
350
+ <div className="booking__loader">
351
+ <p className="booking__loader-text">
352
+ {translations.MAIN.PRODUCT_UNAVAILABLE}
353
+ </p>
354
+ </div>
355
+ </div>
356
+ )}
357
+ </>
358
+ );
359
+ };
360
+
361
+ export default Booking;