@qite/tide-booking-component 1.3.1 → 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 +16348 -7394
  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 +15949 -7383
  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 -384
  212. package/src/booking-wizard/features/booking/booking-slice.ts +665 -662
  213. package/src/booking-wizard/features/booking/booking.tsx +361 -356
  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 -278
  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,879 +1,879 @@
1
- .booking {
2
- @extend %reset;
3
- width: 100%;
4
- padding: 2rem 0;
5
- background: var(--tide-booking-wizard-background);
6
-
7
- &__content {
8
- @extend %reset;
9
- @include container-wide;
10
- @include row--lg();
11
- align-items: flex-end;
12
-
13
- @include media-lg {
14
- align-items: flex-start;
15
- }
16
- }
17
-
18
- &__guarantees {
19
- display: none !important;
20
- }
21
-
22
- &__loader {
23
- position: fixed;
24
- width: 300px;
25
- max-width: 90vw;
26
- height: auto;
27
- top: 50%;
28
- left: 50%;
29
- padding: 1.5rem;
30
- transform: translate3D(-50%, -50%, 0);
31
- text-align: center;
32
- border-radius: 5px;
33
- background-color: var(--tide-booking-spinner-background);
34
- box-shadow: var(--tide-booking-spinner-box-shadow);
35
- z-index: 999;
36
-
37
- .loader__spinner {
38
- width: 40px;
39
- height: 40px;
40
- border-width: 4px;
41
- margin-bottom: 20px;
42
- }
43
- }
44
-
45
- &__navigator {
46
- gap: 15px;
47
-
48
- @include row--xs;
49
- justify-content: flex-end;
50
- padding: 0 15px;
51
- padding-top: 30px;
52
- padding-bottom: 60px;
53
- // background-color: $gray-light;
54
-
55
- @include media-lg {
56
- padding: 0 15px;
57
- padding-top: 50px;
58
- }
59
-
60
- .cta--secondary {
61
- width: 100%;
62
- @include media-xs {
63
- width: auto;
64
- margin-right: auto;
65
- }
66
- }
67
- }
68
-
69
- &__panel {
70
- width: 1200px;
71
- max-width: 100%;
72
- @include column;
73
- border-radius: 15px * 0.3;
74
-
75
- @include media-lg {
76
- padding-right: 20px;
77
- }
78
-
79
- @include media-xl {
80
- padding-right: 40px;
81
- }
82
- }
83
-
84
- &__panel-heading {
85
- @extend %reset;
86
- width: 100%;
87
- padding-bottom: 20px;
88
- padding-left: 0 !important;
89
- border-radius: 5px 5px 0 0;
90
- color: var(--tide-booking-wizard-heading-color);
91
- // background-color: $booking-background;
92
- display: flex;
93
- justify-content: space-between;
94
- align-items: center;
95
- }
96
-
97
- &__panel-title {
98
- @extend h3;
99
- margin: 0;
100
- color: var(--tide-booking-wizard-title-color);
101
- }
102
-
103
- &__panel-body {
104
- @extend %reset;
105
- @include column;
106
- width: 100%;
107
- font-size: 14px;
108
-
109
- // @include media-sm {
110
- // font-size: 1.5rem;
111
- // }
112
-
113
- @include media-lg {
114
- font-size: 16px;
115
- }
116
- }
117
-
118
- &__panel-frame--transparent {
119
- background-color: transparent;
120
-
121
- .booking__panel-heading {
122
- //padding: 0;
123
- margin-bottom: 30px;
124
- }
125
-
126
- .booking__panel-body {
127
- .form__region {
128
- // padding-left: 1.5rem;
129
- // padding-right: 1.5rem;
130
- }
131
- }
132
- }
133
-
134
- &__product {
135
- @extend %reset;
136
- position: sticky;
137
- top: 0px;
138
- left: 0px;
139
- border-radius: var(--tide-booking-sidebar-header-border-radius);
140
- overflow: hidden;
141
- display: flex;
142
- align-items: center;
143
- background: var(--tide-booking-sidebar-header-background);
144
- }
145
-
146
- &__product-body {
147
- display: flex;
148
- flex-flow: column;
149
- justify-content: center;
150
-
151
- > h1 {
152
- font-size: 18px;
153
- }
154
- }
155
-
156
- &__product-heading {
157
- @extend h5;
158
- color: var(--tide-booking-sidebar-header-color);
159
- }
160
-
161
- &__product-image {
162
- aspect-ratio: 1 / 1;
163
- flex-shrink: 0;
164
- display: inline-flex;
165
- overflow: hidden;
166
-
167
- img {
168
- max-width: 80px;
169
- max-height: 80px;
170
- aspect-ratio: 1 / 1;
171
- transform: scale(1.6);
172
-
173
- @include media-xl {
174
- max-width: 100px;
175
- max-height: 100px;
176
- }
177
- }
178
- }
179
-
180
- &__product-text {
181
- padding: 0 10px;
182
- display: inline-flex;
183
- flex-direction: column;
184
- justify-content: center;
185
- gap: 7.5px;
186
- color: var(--tide-booking-sidebar-header-color);
187
-
188
- * {
189
- margin: 0;
190
- }
191
- }
192
-
193
- &__product-toggle {
194
- position: relative;
195
- width: 30px;
196
- height: 30px;
197
- margin-right: 10px;
198
- margin-left: auto;
199
- display: flex;
200
- justify-content: center;
201
- align-items: center;
202
- border: var(--tide-booking-sidebar-btn-toggle-border);
203
- border-radius: var(--tide-booking-sidebar-btn-toggle-border-radius);
204
- background: var(--tide-booking-sidebar-btn-toggle-background);
205
-
206
- @include media-lg {
207
- display: none;
208
- }
209
-
210
- &:before {
211
- content: "";
212
- position: absolute;
213
- width: 8px;
214
- height: 8px;
215
- transform: rotate(135deg) translate3D(1px, -1px, 0);
216
- border-left: 1.5px solid var(--tide-booking-sidebar-btn-toggle-color);
217
- border-bottom: 1.5px solid var(--tide-booking-sidebar-btn-toggle-color);
218
- }
219
- }
220
-
221
- &__sidebar {
222
- position: fixed;
223
- width: calc(100% - 0px);
224
- max-height: calc(100vh - 90px);
225
- bottom: 0;
226
- right: 0;
227
- transform: translate3D(0, calc(100% - 80px), 0);
228
- margin-left: auto;
229
- @include column;
230
- border-radius: 15px * 0.3;
231
- @extend %transition-easing;
232
- @extend %scrollbar-transparent;
233
- z-index: 10;
234
-
235
- @include media-sm {
236
- width: calc(100% - 60px);
237
- max-width: 650px;
238
- }
239
-
240
- @include media-lg {
241
- position: sticky;
242
- width: 400px;
243
- max-height: none;
244
- top: 40px;
245
- bottom: initial;
246
- transform: none;
247
- min-height: 93vh;
248
- }
249
-
250
- .booking__product-heading {
251
- font-size: var(--tide-booking-sidebar-header-font-size) !important;
252
- font-weight: var(--tide-booking-sidebar-header-font-weight);
253
- }
254
- }
255
-
256
- &__sidebar-frame {
257
- border-radius: var(--tide-booking-sidebar-frame-radius);
258
- background-color: var(--tide-booking-sidebar-body-background);
259
- height: calc(100vh - 86px);
260
- }
261
-
262
- &__sidebar--active {
263
- transform: translate3D(0, 0, 0);
264
- overflow-y: auto;
265
- z-index: 100;
266
-
267
- .booking__product-toggle {
268
- &:before {
269
- transform: rotate(-45deg) translate3D(0.1rem, -0.1rem, 0);
270
- }
271
- }
272
-
273
- .booking__sidebar-heading {
274
- position: sticky;
275
-
276
- @include media-lg {
277
- position: static;
278
- }
279
-
280
- &:before {
281
- margin-top: -0.3rem;
282
- transform: rotate(-45deg);
283
- }
284
- }
285
- }
286
-
287
- .checkbox {
288
- & + .tree__level {
289
- padding-top: 0;
290
- padding-left: 15px * 2;
291
- }
292
-
293
- &__input {
294
- &:checked + .checkbox__label-text + .tree__columns-actions + .tree__body {
295
- display: flex;
296
- opacity: 1;
297
- transform: none;
298
- pointer-events: initial;
299
- }
300
- }
301
-
302
- &__input--parent + span + .tree__columns-actions {
303
- @include media-lg {
304
- transform: translate3D(-15px, -15px, 0);
305
- }
306
-
307
- @include media-xl {
308
- transform: translateX(-15px);
309
- }
310
- }
311
-
312
- .tree__body {
313
- display: none;
314
- flex-direction: column;
315
- transform: translateY(-30px);
316
- opacity: 0;
317
- @include transitionEasing($duration: 0.15s);
318
- }
319
- }
320
-
321
- // .form__region {
322
- // padding-left: 15px;
323
- // padding-right: 15px;
324
- // }
325
-
326
- .loader__spinner {
327
- width: 50px;
328
- height: 50px;
329
- border-width: 4px;
330
- }
331
-
332
- .radiobutton {
333
- & + .tree__level {
334
- padding-top: 0;
335
- padding-left: 15px * 2;
336
- }
337
-
338
- &__input {
339
- &:checked
340
- + .radiobutton__label-text
341
- + .tree__columns-actions
342
- + .tree__body {
343
- display: flex;
344
- transform: translateY(0);
345
- opacity: 1;
346
- pointer-events: initial;
347
- }
348
- }
349
-
350
- &__input--parent + span + .tree__columns-actions {
351
- @include media-lg {
352
- transform: translate3D(-15px, -15px, 0);
353
- }
354
-
355
- @include media-xl {
356
- transform: translateX(-15px);
357
- }
358
- }
359
-
360
- .tree__body {
361
- display: none;
362
- flex-direction: column;
363
- transform: translateY(-30px);
364
- opacity: 0;
365
- @include transitionEasing($duration: 0.15s);
366
- }
367
- }
368
-
369
- .table--borders {
370
- .checkbox {
371
- padding-top: 20px !important;
372
-
373
- &__label {
374
- padding-top: 0;
375
- padding-bottom: 0;
376
- margin-bottom: -5px;
377
- margin-top: -5px;
378
-
379
- @include media-lg {
380
- padding: 0;
381
- margin-top: 0;
382
- margin-bottom: 0;
383
- }
384
- }
385
- }
386
-
387
- .price {
388
- top: 15px;
389
-
390
- @include media-lg {
391
- top: 10px;
392
- }
393
- }
394
-
395
- .radiobutton {
396
- padding-top: 20px !important;
397
- }
398
-
399
- .tree {
400
- padding-top: 0;
401
- padding-bottom: 0 !important;
402
- border-color: transparent;
403
- background-color: transparent;
404
-
405
- &__columns-actions {
406
- @include media-lg {
407
- margin-bottom: -22.5px;
408
- transform: translate3D(-15px, -37.5px, 0) !important;
409
- }
410
-
411
- @include media-xl {
412
- margin-bottom: initial;
413
- transform: translate3D(-15px, 0, 0) !important;
414
- }
415
- }
416
-
417
- &__column--price {
418
- @include media-lg {
419
- transform: translateY(17.5px);
420
- }
421
-
422
- @include media-xl {
423
- transform: initial;
424
- }
425
- }
426
-
427
- .checkbox {
428
- padding-top: 3px;
429
- margin-top: 10px;
430
-
431
- &__input,
432
- &__input--parent {
433
- top: 6px;
434
-
435
- @include media-lg {
436
- top: 18px;
437
- }
438
-
439
- & + span {
440
- margin-bottom: 0;
441
- }
442
- }
443
- }
444
-
445
- .radiobutton {
446
- padding-top: 3px;
447
- margin-top: 10px;
448
-
449
- &__input,
450
- &__input--parent {
451
- top: 10px;
452
-
453
- @include media-lg {
454
- top: 18px;
455
- }
456
-
457
- & + span {
458
- margin-bottom: 0;
459
- }
460
- }
461
- }
462
- }
463
-
464
- // tr + tr {
465
- // .checkbox {
466
- // border-top: 0.1rem solid rgba(0, 0, 0, 0.1);
467
- // }
468
-
469
- // .radiobutton {
470
- // border-top: 0.1rem solid rgba(0, 0, 0, 0.1);
471
- // }
472
- // }
473
- }
474
-
475
- .tree {
476
- padding: 7.5px 10px;
477
- font-size: 13px;
478
- margin: 0 15px;
479
- transition-duration: 0.12s;
480
- transition-property: border-color, color, background-color;
481
-
482
- @include media-lg {
483
- padding: 0px 15px 0 15px;
484
- font-size: 16px;
485
- }
486
-
487
- @include media-xl {
488
- padding: 7.5px 15px;
489
- }
490
-
491
- &__columns {
492
- > .tree__column:first-child {
493
- @include media-lg {
494
- width: 245px;
495
- }
496
- }
497
- }
498
-
499
- .date-list__item + .date-list__item:before {
500
- @include media-lg {
501
- margin-right: 10px !important;
502
- }
503
- }
504
- }
505
- }
506
-
507
- .booking-card {
508
- position: relative;
509
- // margin-left: -1.5rem;
510
- // margin-right: -1.5rem;
511
- //margin-bottom: 4.5rem;
512
-
513
- &__actions {
514
- position: absolute;
515
- right: 10px;
516
- margin-left: auto;
517
- margin-bottom: auto;
518
- display: flex;
519
- gap: 15px;
520
-
521
- @include media-lg {
522
- position: static;
523
- right: initial;
524
- }
525
- }
526
-
527
- &__body {
528
- border-radius: 5px;
529
- position: relative;
530
- // background-color: $white;
531
- transition: height ease-out 0.2s;
532
- display: flex;
533
- flex-direction: column;
534
- gap: 30px;
535
- }
536
-
537
- &__body-heading {
538
- min-width: 140px;
539
- font-size: 16px;
540
- color: var(--tide-booking-extra-options-card-title-color);
541
-
542
- @include media-lg {
543
- font-size: 20px;
544
- }
545
- }
546
-
547
- &__group {
548
- padding: 15px 0;
549
- background: var(--tide-booking-extra-options-card-background);
550
- outline: var(--tide-booking-extra-options-card-border);
551
- border-radius: var(--tide-booking-extra-options-card-border-radius);
552
- overflow: hidden;
553
- transition: padding 0.4s ease, margin 0.4s ease, background-color 0.4s ease;
554
-
555
- &__wrapper {
556
- display: flex;
557
- flex-direction: column;
558
- gap: 20px;
559
- }
560
-
561
- &:not(.booking-card__group--active) {
562
- padding-bottom: 27px;
563
- transition: padding-bottom 0.4s ease;
564
-
565
- @include media-lg {
566
- padding-bottom: 15px;
567
- }
568
-
569
- .booking-card__group-header {
570
- margin-bottom: -13px;
571
- transition: margin-bottom 0.4s ease;
572
-
573
- @include media-lg {
574
- margin-bottom: initial;
575
- }
576
- }
577
-
578
- .price {
579
- @include media-lg {
580
- position: static;
581
- right: initial;
582
- top: initial;
583
- }
584
- }
585
- }
586
-
587
- &.booking-card__group--package {
588
- padding: 40px 10px 20px;
589
- margin-top: -25px;
590
- margin-bottom: 15px;
591
- transition: all 0.4s ease;
592
-
593
- @include media-lg {
594
- padding: 20px 17.5px;
595
- }
596
-
597
- .booking-card__group-body {
598
- height: auto;
599
- padding-top: 0;
600
- opacity: 1;
601
- pointer-events: initial;
602
- transition: opacity 0.4s ease, padding 0.4s ease;
603
- }
604
-
605
- .radiobutton__label-text {
606
- @include media-lg {
607
- transform: translateY(20px);
608
- transition: transform 0.4s ease;
609
- }
610
- }
611
-
612
- .tree {
613
- padding-bottom: 0;
614
- @include media-lg {
615
- padding-bottom: 7.5px;
616
- }
617
- }
618
-
619
- tr + tr {
620
- transform: translateY(-10px);
621
- transition: transform 0.4s ease;
622
- }
623
-
624
- tr:last-child .tree {
625
- padding-bottom: 7.5px;
626
- @include media-lg {
627
- // empty but transition inherited
628
- }
629
- }
630
- }
631
- }
632
-
633
- &__group--active {
634
- .booking-card {
635
- &__group-body {
636
- height: auto;
637
- opacity: 1;
638
- pointer-events: initial;
639
- transition: height 0.4s ease, opacity 0.4s ease;
640
- }
641
-
642
- &__toggle {
643
- &:before {
644
- transform: rotate(-45deg) translate3D(2px, -2px, 0);
645
- transition: transform 0.4s ease;
646
- }
647
- }
648
-
649
- &__group-body + &__group-body {
650
- margin-top: 25px;
651
- transition: margin-top 0.4s ease;
652
- }
653
- }
654
- }
655
-
656
- &__group + &__group {
657
- .booking-card__group-header {
658
- margin-top: 0;
659
- transition: margin-top 0.4s ease;
660
- }
661
- }
662
-
663
- &__group-body {
664
- height: 0;
665
- padding-top: 15px;
666
- opacity: 0;
667
- pointer-events: none;
668
- transition-duration: 0.2s;
669
- transition-property: height;
670
- transition-timing-function: ease-out;
671
-
672
- @include media-lg {
673
- padding-top: 0;
674
- }
675
- }
676
-
677
- &__group-header {
678
- margin-bottom: -10px;
679
- display: flex;
680
- flex-direction: column;
681
- padding: 0px 15px;
682
-
683
- @include media-lg {
684
- flex-direction: row;
685
- align-items: center;
686
- }
687
-
688
- * {
689
- margin-bottom: 0;
690
- }
691
- }
692
-
693
- &__group-heading {
694
- margin-top: 7.5px;
695
- font-size: 14.5px;
696
- padding: 15px;
697
- padding-bottom: 0px;
698
-
699
- @include media-lg {
700
- margin-top: 0;
701
- font-size: 17px;
702
- }
703
- }
704
-
705
- &__airline-group {
706
- &-heading {
707
- margin-top: 30px;
708
- margin-left: 15px;
709
- }
710
- }
711
-
712
- &__header {
713
- padding: 30px 0 0px;
714
- }
715
-
716
- &__header-heading {
717
- font-size: 20px;
718
- color: var(--tide-booking-wizard-heading-color);
719
-
720
- @include media-lg {
721
- font-size: 24px;
722
- }
723
- }
724
-
725
- &__tag {
726
- position: absolute;
727
- top: 0px;
728
- left: 0;
729
- padding: 6px 5px 6px 10px;
730
- font-size: 14px;
731
- line-height: 1;
732
- text-transform: uppercase;
733
- font-weight: var(--tide-booking-tag-font-weight);
734
- font-family: var(--tide-booking-tag-font-family);
735
- border: var(--tide-booking-tag-border);
736
- border-radius: var(--tide-booking-tag-border-radius);
737
- color: var(--tide-booking-tag-color);
738
- background: var(--tide-booking-tag-background);
739
-
740
- @include media-lg {
741
- top: 25px;
742
- padding: 6px 5px;
743
- font-size: 16px;
744
- }
745
-
746
- @include media-xl {
747
- top: 25px;
748
- }
749
-
750
- &-translations {
751
- position: relative;
752
- display: flex;
753
- flex-direction: column;
754
- gap: 10px;
755
- padding: 5px 10px;
756
-
757
- .tag-translation {
758
- display: flex;
759
- gap: 1px;
760
- align-items: center;
761
-
762
- &-input__container {
763
- display: flex;
764
-
765
- .checkbox__input {
766
- position: relative;
767
- margin: 0 10px 0 0;
768
- }
769
- }
770
- }
771
- }
772
- }
773
-
774
- &__toggle {
775
- position: relative;
776
- width: 36px;
777
- height: 36px;
778
- right: 5px;
779
- display: flex;
780
- justify-content: center;
781
- align-items: center;
782
- border-radius: var(
783
- --tide-booking-flight-extra-options-toggle-border-radius
784
- );
785
- border: var(--tide-booking-flight-extra-options-toggle-border);
786
- background: var(--tide-booking-flight-extra-options-toggle-background);
787
-
788
- &:before {
789
- content: "";
790
- position: absolute;
791
- width: 9px;
792
- height: 9px;
793
- border-left: 2px solid
794
- var(--tide-booking-flight-extra-options-toggle-icon-color);
795
- border-bottom: 2px solid
796
- var(--tide-booking-flight-extra-options-toggle-icon-color);
797
- transform: rotate(-135deg) translate3D(1px, -1px, 0);
798
- transition: transform ease-out 0.12s;
799
- }
800
-
801
- @include media-lg {
802
- right: 0px;
803
- }
804
- }
805
-
806
- .price {
807
- white-space: nowrap;
808
- font-size: var(--tide-booking-sidebar-footer-total-font-size);
809
-
810
- &--decrease {
811
- color: var(--tide-booking-price-decrease);
812
- }
813
-
814
- &--increase {
815
- color: var(--tide-booking-price-increase);
816
- }
817
- }
818
-
819
- .table--borders {
820
- margin-top: -10px;
821
- margin-bottom: -5px;
822
-
823
- @include media-lg {
824
- margin-bottom: -15px;
825
- }
826
- }
827
-
828
- select,
829
- input,
830
- textarea {
831
- font-size: 14px;
832
-
833
- @include media-lg {
834
- font-size: 16px;
835
- }
836
- }
837
- }
838
-
839
- .booking-message {
840
- max-width: 570px;
841
- margin: 15px * 2 auto;
842
- @include column;
843
- align-items: center;
844
- text-align: center;
845
-
846
- &__heading {
847
- @include column;
848
- margin-top: 15px * 1.3;
849
- }
850
-
851
- &__actions {
852
- margin-top: 15px;
853
- }
854
-
855
- &--error {
856
- .booking-message {
857
- &__heading {
858
- color: var(--tide-booking-invalid);
859
- }
860
- }
861
- .icon {
862
- width: 50px;
863
- height: 50px;
864
- fill: var(--tide-booking-invalid);
865
- }
866
- }
867
-
868
- &--success {
869
- .booking-message__heading:before {
870
- content: "";
871
- width: 15px * 3.33;
872
- height: 15px * 1.33;
873
- border-left: 2.5px solid var(--tide-booking-confirmation-icon-color);
874
- border-bottom: 2.5px solid var(--tide-booking-confirmation-icon-color);
875
- margin: 0 auto 15px * 3 auto;
876
- transform: rotate(-45deg);
877
- }
878
- }
879
- }
1
+ .booking {
2
+ @extend %reset;
3
+ width: 100%;
4
+ padding: 2rem 0;
5
+ background: var(--tide-booking-wizard-background);
6
+
7
+ &__content {
8
+ @extend %reset;
9
+ @include container-wide;
10
+ @include row--lg();
11
+ align-items: flex-end;
12
+
13
+ @include media-lg {
14
+ align-items: flex-start;
15
+ }
16
+ }
17
+
18
+ &__guarantees {
19
+ display: none !important;
20
+ }
21
+
22
+ &__loader {
23
+ position: fixed;
24
+ width: 300px;
25
+ max-width: 90vw;
26
+ height: auto;
27
+ top: 50%;
28
+ left: 50%;
29
+ padding: 1.5rem;
30
+ transform: translate3D(-50%, -50%, 0);
31
+ text-align: center;
32
+ border-radius: 5px;
33
+ background-color: var(--tide-booking-spinner-background);
34
+ box-shadow: var(--tide-booking-spinner-box-shadow);
35
+ z-index: 999;
36
+
37
+ .loader__spinner {
38
+ width: 40px;
39
+ height: 40px;
40
+ border-width: 4px;
41
+ margin-bottom: 20px;
42
+ }
43
+ }
44
+
45
+ &__navigator {
46
+ gap: 15px;
47
+
48
+ @include row--xs;
49
+ justify-content: flex-end;
50
+ padding: 0 15px;
51
+ padding-top: 30px;
52
+ padding-bottom: 60px;
53
+ // background-color: $gray-light;
54
+
55
+ @include media-lg {
56
+ padding: 0 15px;
57
+ padding-top: 50px;
58
+ }
59
+
60
+ .cta--secondary {
61
+ width: 100%;
62
+ @include media-xs {
63
+ width: auto;
64
+ margin-right: auto;
65
+ }
66
+ }
67
+ }
68
+
69
+ &__panel {
70
+ width: 1200px;
71
+ max-width: 100%;
72
+ @include column;
73
+ border-radius: 15px * 0.3;
74
+
75
+ @include media-lg {
76
+ padding-right: 20px;
77
+ }
78
+
79
+ @include media-xl {
80
+ padding-right: 40px;
81
+ }
82
+ }
83
+
84
+ &__panel-heading {
85
+ @extend %reset;
86
+ width: 100%;
87
+ padding-bottom: 20px;
88
+ padding-left: 0 !important;
89
+ border-radius: 5px 5px 0 0;
90
+ color: var(--tide-booking-wizard-heading-color);
91
+ // background-color: $booking-background;
92
+ display: flex;
93
+ justify-content: space-between;
94
+ align-items: center;
95
+ }
96
+
97
+ &__panel-title {
98
+ @extend h3;
99
+ margin: 0;
100
+ color: var(--tide-booking-wizard-title-color);
101
+ }
102
+
103
+ &__panel-body {
104
+ @extend %reset;
105
+ @include column;
106
+ width: 100%;
107
+ font-size: 14px;
108
+
109
+ // @include media-sm {
110
+ // font-size: 1.5rem;
111
+ // }
112
+
113
+ @include media-lg {
114
+ font-size: 16px;
115
+ }
116
+ }
117
+
118
+ &__panel-frame--transparent {
119
+ background-color: transparent;
120
+
121
+ .booking__panel-heading {
122
+ //padding: 0;
123
+ margin-bottom: 30px;
124
+ }
125
+
126
+ .booking__panel-body {
127
+ .form__region {
128
+ // padding-left: 1.5rem;
129
+ // padding-right: 1.5rem;
130
+ }
131
+ }
132
+ }
133
+
134
+ &__product {
135
+ @extend %reset;
136
+ position: sticky;
137
+ top: 0px;
138
+ left: 0px;
139
+ border-radius: var(--tide-booking-sidebar-header-border-radius);
140
+ overflow: hidden;
141
+ display: flex;
142
+ align-items: center;
143
+ background: var(--tide-booking-sidebar-header-background);
144
+ }
145
+
146
+ &__product-body {
147
+ display: flex;
148
+ flex-flow: column;
149
+ justify-content: center;
150
+
151
+ > h1 {
152
+ font-size: 18px;
153
+ }
154
+ }
155
+
156
+ &__product-heading {
157
+ @extend h5;
158
+ color: var(--tide-booking-sidebar-header-color);
159
+ }
160
+
161
+ &__product-image {
162
+ aspect-ratio: 1 / 1;
163
+ flex-shrink: 0;
164
+ display: inline-flex;
165
+ overflow: hidden;
166
+
167
+ img {
168
+ max-width: 80px;
169
+ max-height: 80px;
170
+ aspect-ratio: 1 / 1;
171
+ transform: scale(1.6);
172
+
173
+ @include media-xl {
174
+ max-width: 100px;
175
+ max-height: 100px;
176
+ }
177
+ }
178
+ }
179
+
180
+ &__product-text {
181
+ padding: 0 10px;
182
+ display: inline-flex;
183
+ flex-direction: column;
184
+ justify-content: center;
185
+ gap: 7.5px;
186
+ color: var(--tide-booking-sidebar-header-color);
187
+
188
+ * {
189
+ margin: 0;
190
+ }
191
+ }
192
+
193
+ &__product-toggle {
194
+ position: relative;
195
+ width: 30px;
196
+ height: 30px;
197
+ margin-right: 10px;
198
+ margin-left: auto;
199
+ display: flex;
200
+ justify-content: center;
201
+ align-items: center;
202
+ border: var(--tide-booking-sidebar-btn-toggle-border);
203
+ border-radius: var(--tide-booking-sidebar-btn-toggle-border-radius);
204
+ background: var(--tide-booking-sidebar-btn-toggle-background);
205
+
206
+ @include media-lg {
207
+ display: none;
208
+ }
209
+
210
+ &:before {
211
+ content: "";
212
+ position: absolute;
213
+ width: 8px;
214
+ height: 8px;
215
+ transform: rotate(135deg) translate3D(1px, -1px, 0);
216
+ border-left: 1.5px solid var(--tide-booking-sidebar-btn-toggle-color);
217
+ border-bottom: 1.5px solid var(--tide-booking-sidebar-btn-toggle-color);
218
+ }
219
+ }
220
+
221
+ &__sidebar {
222
+ position: fixed;
223
+ width: calc(100% - 0px);
224
+ max-height: calc(100vh - 90px);
225
+ bottom: 0;
226
+ right: 0;
227
+ transform: translate3D(0, calc(100% - 80px), 0);
228
+ margin-left: auto;
229
+ @include column;
230
+ border-radius: 15px * 0.3;
231
+ @extend %transition-easing;
232
+ @extend %scrollbar-transparent;
233
+ z-index: 10;
234
+
235
+ @include media-sm {
236
+ width: calc(100% - 60px);
237
+ max-width: 650px;
238
+ }
239
+
240
+ @include media-lg {
241
+ position: sticky;
242
+ width: 400px;
243
+ max-height: none;
244
+ top: 40px;
245
+ bottom: initial;
246
+ transform: none;
247
+ min-height: 93vh;
248
+ }
249
+
250
+ .booking__product-heading {
251
+ font-size: var(--tide-booking-sidebar-header-font-size) !important;
252
+ font-weight: var(--tide-booking-sidebar-header-font-weight);
253
+ }
254
+ }
255
+
256
+ &__sidebar-frame {
257
+ border-radius: var(--tide-booking-sidebar-frame-radius);
258
+ background-color: var(--tide-booking-sidebar-body-background);
259
+ height: calc(100vh - 86px);
260
+ }
261
+
262
+ &__sidebar--active {
263
+ transform: translate3D(0, 0, 0);
264
+ overflow-y: auto;
265
+ z-index: 100;
266
+
267
+ .booking__product-toggle {
268
+ &:before {
269
+ transform: rotate(-45deg) translate3D(0.1rem, -0.1rem, 0);
270
+ }
271
+ }
272
+
273
+ .booking__sidebar-heading {
274
+ position: sticky;
275
+
276
+ @include media-lg {
277
+ position: static;
278
+ }
279
+
280
+ &:before {
281
+ margin-top: -0.3rem;
282
+ transform: rotate(-45deg);
283
+ }
284
+ }
285
+ }
286
+
287
+ .checkbox {
288
+ & + .tree__level {
289
+ padding-top: 0;
290
+ padding-left: 15px * 2;
291
+ }
292
+
293
+ &__input {
294
+ &:checked + .checkbox__label-text + .tree__columns-actions + .tree__body {
295
+ display: flex;
296
+ opacity: 1;
297
+ transform: none;
298
+ pointer-events: initial;
299
+ }
300
+ }
301
+
302
+ &__input--parent + span + .tree__columns-actions {
303
+ @include media-lg {
304
+ transform: translate3D(-15px, -15px, 0);
305
+ }
306
+
307
+ @include media-xl {
308
+ transform: translateX(-15px);
309
+ }
310
+ }
311
+
312
+ .tree__body {
313
+ display: none;
314
+ flex-direction: column;
315
+ transform: translateY(-30px);
316
+ opacity: 0;
317
+ @include transitionEasing($duration: 0.15s);
318
+ }
319
+ }
320
+
321
+ // .form__region {
322
+ // padding-left: 15px;
323
+ // padding-right: 15px;
324
+ // }
325
+
326
+ .loader__spinner {
327
+ width: 50px;
328
+ height: 50px;
329
+ border-width: 4px;
330
+ }
331
+
332
+ .radiobutton {
333
+ & + .tree__level {
334
+ padding-top: 0;
335
+ padding-left: 15px * 2;
336
+ }
337
+
338
+ &__input {
339
+ &:checked
340
+ + .radiobutton__label-text
341
+ + .tree__columns-actions
342
+ + .tree__body {
343
+ display: flex;
344
+ transform: translateY(0);
345
+ opacity: 1;
346
+ pointer-events: initial;
347
+ }
348
+ }
349
+
350
+ &__input--parent + span + .tree__columns-actions {
351
+ @include media-lg {
352
+ transform: translate3D(-15px, -15px, 0);
353
+ }
354
+
355
+ @include media-xl {
356
+ transform: translateX(-15px);
357
+ }
358
+ }
359
+
360
+ .tree__body {
361
+ display: none;
362
+ flex-direction: column;
363
+ transform: translateY(-30px);
364
+ opacity: 0;
365
+ @include transitionEasing($duration: 0.15s);
366
+ }
367
+ }
368
+
369
+ .table--borders {
370
+ .checkbox {
371
+ padding-top: 20px !important;
372
+
373
+ &__label {
374
+ padding-top: 0;
375
+ padding-bottom: 0;
376
+ margin-bottom: -5px;
377
+ margin-top: -5px;
378
+
379
+ @include media-lg {
380
+ padding: 0;
381
+ margin-top: 0;
382
+ margin-bottom: 0;
383
+ }
384
+ }
385
+ }
386
+
387
+ .price {
388
+ top: 15px;
389
+
390
+ @include media-lg {
391
+ top: 10px;
392
+ }
393
+ }
394
+
395
+ .radiobutton {
396
+ padding-top: 20px !important;
397
+ }
398
+
399
+ .tree {
400
+ padding-top: 0;
401
+ padding-bottom: 0 !important;
402
+ border-color: transparent;
403
+ background-color: transparent;
404
+
405
+ &__columns-actions {
406
+ @include media-lg {
407
+ margin-bottom: -22.5px;
408
+ transform: translate3D(-15px, -37.5px, 0) !important;
409
+ }
410
+
411
+ @include media-xl {
412
+ margin-bottom: initial;
413
+ transform: translate3D(-15px, 0, 0) !important;
414
+ }
415
+ }
416
+
417
+ &__column--price {
418
+ @include media-lg {
419
+ transform: translateY(17.5px);
420
+ }
421
+
422
+ @include media-xl {
423
+ transform: initial;
424
+ }
425
+ }
426
+
427
+ .checkbox {
428
+ padding-top: 3px;
429
+ margin-top: 10px;
430
+
431
+ &__input,
432
+ &__input--parent {
433
+ top: 6px;
434
+
435
+ @include media-lg {
436
+ top: 18px;
437
+ }
438
+
439
+ & + span {
440
+ margin-bottom: 0;
441
+ }
442
+ }
443
+ }
444
+
445
+ .radiobutton {
446
+ padding-top: 3px;
447
+ margin-top: 10px;
448
+
449
+ &__input,
450
+ &__input--parent {
451
+ top: 10px;
452
+
453
+ @include media-lg {
454
+ top: 18px;
455
+ }
456
+
457
+ & + span {
458
+ margin-bottom: 0;
459
+ }
460
+ }
461
+ }
462
+ }
463
+
464
+ // tr + tr {
465
+ // .checkbox {
466
+ // border-top: 0.1rem solid rgba(0, 0, 0, 0.1);
467
+ // }
468
+
469
+ // .radiobutton {
470
+ // border-top: 0.1rem solid rgba(0, 0, 0, 0.1);
471
+ // }
472
+ // }
473
+ }
474
+
475
+ .tree {
476
+ padding: 7.5px 10px;
477
+ font-size: 13px;
478
+ margin: 0 15px;
479
+ transition-duration: 0.12s;
480
+ transition-property: border-color, color, background-color;
481
+
482
+ @include media-lg {
483
+ padding: 0px 15px 0 15px;
484
+ font-size: 16px;
485
+ }
486
+
487
+ @include media-xl {
488
+ padding: 7.5px 15px;
489
+ }
490
+
491
+ &__columns {
492
+ > .tree__column:first-child {
493
+ @include media-lg {
494
+ width: 245px;
495
+ }
496
+ }
497
+ }
498
+
499
+ .date-list__item + .date-list__item:before {
500
+ @include media-lg {
501
+ margin-right: 10px !important;
502
+ }
503
+ }
504
+ }
505
+ }
506
+
507
+ .booking-card {
508
+ position: relative;
509
+ // margin-left: -1.5rem;
510
+ // margin-right: -1.5rem;
511
+ //margin-bottom: 4.5rem;
512
+
513
+ &__actions {
514
+ position: absolute;
515
+ right: 10px;
516
+ margin-left: auto;
517
+ margin-bottom: auto;
518
+ display: flex;
519
+ gap: 15px;
520
+
521
+ @include media-lg {
522
+ position: static;
523
+ right: initial;
524
+ }
525
+ }
526
+
527
+ &__body {
528
+ border-radius: 5px;
529
+ position: relative;
530
+ // background-color: $white;
531
+ transition: height ease-out 0.2s;
532
+ display: flex;
533
+ flex-direction: column;
534
+ gap: 30px;
535
+ }
536
+
537
+ &__body-heading {
538
+ min-width: 140px;
539
+ font-size: 16px;
540
+ color: var(--tide-booking-extra-options-card-title-color);
541
+
542
+ @include media-lg {
543
+ font-size: 20px;
544
+ }
545
+ }
546
+
547
+ &__group {
548
+ padding: 15px 0;
549
+ background: var(--tide-booking-extra-options-card-background);
550
+ outline: var(--tide-booking-extra-options-card-border);
551
+ border-radius: var(--tide-booking-extra-options-card-border-radius);
552
+ overflow: hidden;
553
+ transition: padding 0.4s ease, margin 0.4s ease, background-color 0.4s ease;
554
+
555
+ &__wrapper {
556
+ display: flex;
557
+ flex-direction: column;
558
+ gap: 20px;
559
+ }
560
+
561
+ &:not(.booking-card__group--active) {
562
+ padding-bottom: 27px;
563
+ transition: padding-bottom 0.4s ease;
564
+
565
+ @include media-lg {
566
+ padding-bottom: 15px;
567
+ }
568
+
569
+ .booking-card__group-header {
570
+ margin-bottom: -13px;
571
+ transition: margin-bottom 0.4s ease;
572
+
573
+ @include media-lg {
574
+ margin-bottom: initial;
575
+ }
576
+ }
577
+
578
+ .price {
579
+ @include media-lg {
580
+ position: static;
581
+ right: initial;
582
+ top: initial;
583
+ }
584
+ }
585
+ }
586
+
587
+ &.booking-card__group--package {
588
+ padding: 40px 10px 20px;
589
+ margin-top: -25px;
590
+ margin-bottom: 15px;
591
+ transition: all 0.4s ease;
592
+
593
+ @include media-lg {
594
+ padding: 20px 17.5px;
595
+ }
596
+
597
+ .booking-card__group-body {
598
+ height: auto;
599
+ padding-top: 0;
600
+ opacity: 1;
601
+ pointer-events: initial;
602
+ transition: opacity 0.4s ease, padding 0.4s ease;
603
+ }
604
+
605
+ .radiobutton__label-text {
606
+ @include media-lg {
607
+ transform: translateY(20px);
608
+ transition: transform 0.4s ease;
609
+ }
610
+ }
611
+
612
+ .tree {
613
+ padding-bottom: 0;
614
+ @include media-lg {
615
+ padding-bottom: 7.5px;
616
+ }
617
+ }
618
+
619
+ tr + tr {
620
+ transform: translateY(-10px);
621
+ transition: transform 0.4s ease;
622
+ }
623
+
624
+ tr:last-child .tree {
625
+ padding-bottom: 7.5px;
626
+ @include media-lg {
627
+ // empty but transition inherited
628
+ }
629
+ }
630
+ }
631
+ }
632
+
633
+ &__group--active {
634
+ .booking-card {
635
+ &__group-body {
636
+ height: auto;
637
+ opacity: 1;
638
+ pointer-events: initial;
639
+ transition: height 0.4s ease, opacity 0.4s ease;
640
+ }
641
+
642
+ &__toggle {
643
+ &:before {
644
+ transform: rotate(-45deg) translate3D(2px, -2px, 0);
645
+ transition: transform 0.4s ease;
646
+ }
647
+ }
648
+
649
+ &__group-body + &__group-body {
650
+ margin-top: 25px;
651
+ transition: margin-top 0.4s ease;
652
+ }
653
+ }
654
+ }
655
+
656
+ &__group + &__group {
657
+ .booking-card__group-header {
658
+ margin-top: 0;
659
+ transition: margin-top 0.4s ease;
660
+ }
661
+ }
662
+
663
+ &__group-body {
664
+ height: 0;
665
+ padding-top: 15px;
666
+ opacity: 0;
667
+ pointer-events: none;
668
+ transition-duration: 0.2s;
669
+ transition-property: height;
670
+ transition-timing-function: ease-out;
671
+
672
+ @include media-lg {
673
+ padding-top: 0;
674
+ }
675
+ }
676
+
677
+ &__group-header {
678
+ margin-bottom: -10px;
679
+ display: flex;
680
+ flex-direction: column;
681
+ padding: 0px 15px;
682
+
683
+ @include media-lg {
684
+ flex-direction: row;
685
+ align-items: center;
686
+ }
687
+
688
+ * {
689
+ margin-bottom: 0;
690
+ }
691
+ }
692
+
693
+ &__group-heading {
694
+ margin-top: 7.5px;
695
+ font-size: 14.5px;
696
+ padding: 15px;
697
+ padding-bottom: 0px;
698
+
699
+ @include media-lg {
700
+ margin-top: 0;
701
+ font-size: 17px;
702
+ }
703
+ }
704
+
705
+ &__airline-group {
706
+ &-heading {
707
+ margin-top: 30px;
708
+ margin-left: 15px;
709
+ }
710
+ }
711
+
712
+ &__header {
713
+ padding: 30px 0 0px;
714
+ }
715
+
716
+ &__header-heading {
717
+ font-size: 20px;
718
+ color: var(--tide-booking-wizard-heading-color);
719
+
720
+ @include media-lg {
721
+ font-size: 24px;
722
+ }
723
+ }
724
+
725
+ &__tag {
726
+ position: absolute;
727
+ top: 0px;
728
+ left: 0;
729
+ padding: 6px 5px 6px 10px;
730
+ font-size: 14px;
731
+ line-height: 1;
732
+ text-transform: uppercase;
733
+ font-weight: var(--tide-booking-tag-font-weight);
734
+ font-family: var(--tide-booking-tag-font-family);
735
+ border: var(--tide-booking-tag-border);
736
+ border-radius: var(--tide-booking-tag-border-radius);
737
+ color: var(--tide-booking-tag-color);
738
+ background: var(--tide-booking-tag-background);
739
+
740
+ @include media-lg {
741
+ top: 25px;
742
+ padding: 6px 5px;
743
+ font-size: 16px;
744
+ }
745
+
746
+ @include media-xl {
747
+ top: 25px;
748
+ }
749
+
750
+ &-translations {
751
+ position: relative;
752
+ display: flex;
753
+ flex-direction: column;
754
+ gap: 10px;
755
+ padding: 5px 10px;
756
+
757
+ .tag-translation {
758
+ display: flex;
759
+ gap: 1px;
760
+ align-items: center;
761
+
762
+ &-input__container {
763
+ display: flex;
764
+
765
+ .checkbox__input {
766
+ position: relative;
767
+ margin: 0 10px 0 0;
768
+ }
769
+ }
770
+ }
771
+ }
772
+ }
773
+
774
+ &__toggle {
775
+ position: relative;
776
+ width: 36px;
777
+ height: 36px;
778
+ right: 5px;
779
+ display: flex;
780
+ justify-content: center;
781
+ align-items: center;
782
+ border-radius: var(
783
+ --tide-booking-flight-extra-options-toggle-border-radius
784
+ );
785
+ border: var(--tide-booking-flight-extra-options-toggle-border);
786
+ background: var(--tide-booking-flight-extra-options-toggle-background);
787
+
788
+ &:before {
789
+ content: "";
790
+ position: absolute;
791
+ width: 9px;
792
+ height: 9px;
793
+ border-left: 2px solid
794
+ var(--tide-booking-flight-extra-options-toggle-icon-color);
795
+ border-bottom: 2px solid
796
+ var(--tide-booking-flight-extra-options-toggle-icon-color);
797
+ transform: rotate(-135deg) translate3D(1px, -1px, 0);
798
+ transition: transform ease-out 0.12s;
799
+ }
800
+
801
+ @include media-lg {
802
+ right: 0px;
803
+ }
804
+ }
805
+
806
+ .price {
807
+ white-space: nowrap;
808
+ font-size: var(--tide-booking-sidebar-footer-total-font-size);
809
+
810
+ &--decrease {
811
+ color: var(--tide-booking-price-decrease);
812
+ }
813
+
814
+ &--increase {
815
+ color: var(--tide-booking-price-increase);
816
+ }
817
+ }
818
+
819
+ .table--borders {
820
+ margin-top: -10px;
821
+ margin-bottom: -5px;
822
+
823
+ @include media-lg {
824
+ margin-bottom: -15px;
825
+ }
826
+ }
827
+
828
+ select,
829
+ input,
830
+ textarea {
831
+ font-size: 14px;
832
+
833
+ @include media-lg {
834
+ font-size: 16px;
835
+ }
836
+ }
837
+ }
838
+
839
+ .booking-message {
840
+ max-width: 570px;
841
+ margin: 15px * 2 auto;
842
+ @include column;
843
+ align-items: center;
844
+ text-align: center;
845
+
846
+ &__heading {
847
+ @include column;
848
+ margin-top: 15px * 1.3;
849
+ }
850
+
851
+ &__actions {
852
+ margin-top: 15px;
853
+ }
854
+
855
+ &--error {
856
+ .booking-message {
857
+ &__heading {
858
+ color: var(--tide-booking-invalid);
859
+ }
860
+ }
861
+ .icon {
862
+ width: 50px;
863
+ height: 50px;
864
+ fill: var(--tide-booking-invalid);
865
+ }
866
+ }
867
+
868
+ &--success {
869
+ .booking-message__heading:before {
870
+ content: "";
871
+ width: 15px * 3.33;
872
+ height: 15px * 1.33;
873
+ border-left: 2.5px solid var(--tide-booking-confirmation-icon-color);
874
+ border-bottom: 2.5px solid var(--tide-booking-confirmation-icon-color);
875
+ margin: 0 auto 15px * 3 auto;
876
+ transform: rotate(-45deg);
877
+ }
878
+ }
879
+ }