@qite/tide-booking-component 1.2.4 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/build/build-cjs/booking-wizard/components/print-offer-button.d.ts +17 -0
  2. package/build/build-cjs/booking-wizard/features/flight-options/flight-option-flight.d.ts +1 -1
  3. package/build/build-cjs/booking-wizard/features/flight-options/flight-option.d.ts +1 -1
  4. package/build/build-cjs/booking-wizard/types.d.ts +13 -0
  5. package/build/build-cjs/booking-wizard/use-offer-printer.d.ts +13 -0
  6. package/build/build-cjs/index.js +1392 -754
  7. package/build/build-cjs/shared/utils/localization-util.d.ts +6 -0
  8. package/build/build-cjs/shared/utils/tide-api-utils.d.ts +1 -0
  9. package/build/build-esm/booking-wizard/components/print-offer-button.d.ts +17 -0
  10. package/build/build-esm/booking-wizard/features/flight-options/flight-option-flight.d.ts +1 -1
  11. package/build/build-esm/booking-wizard/features/flight-options/flight-option.d.ts +1 -1
  12. package/build/build-esm/booking-wizard/types.d.ts +13 -0
  13. package/build/build-esm/booking-wizard/use-offer-printer.d.ts +13 -0
  14. package/build/build-esm/index.js +1394 -756
  15. package/build/build-esm/shared/utils/localization-util.d.ts +6 -0
  16. package/build/build-esm/shared/utils/tide-api-utils.d.ts +1 -0
  17. package/package.json +4 -6
  18. package/src/booking-product/components/age-select.tsx +2 -8
  19. package/src/booking-product/components/amount-input.tsx +36 -22
  20. package/src/booking-product/components/date-range-picker/calendar-day.tsx +5 -1
  21. package/src/booking-product/components/date-range-picker/calendar.tsx +9 -7
  22. package/src/booking-product/components/date-range-picker/index.tsx +20 -5
  23. package/src/booking-product/components/dates.tsx +22 -18
  24. package/src/booking-product/components/footer.tsx +40 -41
  25. package/src/booking-product/components/header.tsx +44 -33
  26. package/src/booking-product/components/icon.tsx +188 -145
  27. package/src/booking-product/components/product.tsx +66 -33
  28. package/src/booking-product/components/rooms.tsx +70 -55
  29. package/src/booking-product/index.tsx +9 -9
  30. package/src/booking-product/settings-context.ts +3 -3
  31. package/src/booking-product/types.ts +3 -3
  32. package/src/booking-product/utils/api.ts +4 -4
  33. package/src/booking-product/utils/price.ts +5 -3
  34. package/src/booking-wizard/components/icon.tsx +428 -229
  35. package/src/booking-wizard/components/multi-range-filter.tsx +15 -15
  36. package/src/booking-wizard/components/print-offer-button.tsx +66 -0
  37. package/src/booking-wizard/components/step-indicator.tsx +1 -1
  38. package/src/booking-wizard/declarations.d.ts +2 -2
  39. package/src/booking-wizard/features/booking/api.ts +9 -5
  40. package/src/booking-wizard/features/booking/booking-self-contained.tsx +46 -19
  41. package/src/booking-wizard/features/booking/booking-slice.ts +108 -49
  42. package/src/booking-wizard/features/booking/booking.tsx +64 -57
  43. package/src/booking-wizard/features/booking/selectors.ts +45 -22
  44. package/src/booking-wizard/features/confirmation/confirmation.tsx +8 -5
  45. package/src/booking-wizard/features/error/error.tsx +6 -3
  46. package/src/booking-wizard/features/flight-options/flight-filter.tsx +147 -72
  47. package/src/booking-wizard/features/flight-options/flight-option-flight.tsx +53 -21
  48. package/src/booking-wizard/features/flight-options/flight-option-modal.tsx +34 -19
  49. package/src/booking-wizard/features/flight-options/flight-option.tsx +37 -22
  50. package/src/booking-wizard/features/flight-options/flight-utils.ts +220 -105
  51. package/src/booking-wizard/features/flight-options/index.tsx +62 -43
  52. package/src/booking-wizard/features/price-details/price-details-slice.ts +11 -4
  53. package/src/booking-wizard/features/product-options/no-options.tsx +1 -1
  54. package/src/booking-wizard/features/product-options/option-booking-airline-group.tsx +48 -50
  55. package/src/booking-wizard/features/product-options/option-booking-group.tsx +9 -3
  56. package/src/booking-wizard/features/product-options/option-item.tsx +1 -2
  57. package/src/booking-wizard/features/product-options/option-pax-card.tsx +39 -26
  58. package/src/booking-wizard/features/product-options/option-pax-group.tsx +9 -3
  59. package/src/booking-wizard/features/product-options/option-room.tsx +23 -16
  60. package/src/booking-wizard/features/product-options/option-unit-group.tsx +9 -3
  61. package/src/booking-wizard/features/product-options/option-units-card.tsx +68 -57
  62. package/src/booking-wizard/features/product-options/options-form.tsx +250 -124
  63. package/src/booking-wizard/features/room-options/index.tsx +27 -12
  64. package/src/booking-wizard/features/room-options/room-utils.ts +97 -50
  65. package/src/booking-wizard/features/room-options/room.tsx +56 -20
  66. package/src/booking-wizard/features/room-options/traveler-rooms.tsx +34 -22
  67. package/src/booking-wizard/features/sidebar/sidebar-flight.tsx +1 -1
  68. package/src/booking-wizard/features/sidebar/sidebar-util.ts +1 -1
  69. package/src/booking-wizard/features/sidebar/sidebar.tsx +173 -155
  70. package/src/booking-wizard/features/summary/summary-flight.tsx +1 -1
  71. package/src/booking-wizard/features/summary/summary-per-booking-option-group.tsx +45 -33
  72. package/src/booking-wizard/features/summary/summary-per-pax-option-group.tsx +41 -29
  73. package/src/booking-wizard/features/summary/summary-per-unit-option-group.tsx +43 -31
  74. package/src/booking-wizard/features/summary/summary.tsx +325 -294
  75. package/src/booking-wizard/features/travelers-form/travelers-form.tsx +421 -422
  76. package/src/booking-wizard/features/travelers-form/type-ahead-input.tsx +1 -1
  77. package/src/booking-wizard/features/travelers-form/validate-form.ts +1 -1
  78. package/src/booking-wizard/settings-context.ts +7 -0
  79. package/src/booking-wizard/types.ts +19 -7
  80. package/src/booking-wizard/use-offer-printer.ts +136 -0
  81. package/src/index.ts +0 -1
  82. package/src/shared/translations/en-GB.json +237 -0
  83. package/src/shared/translations/fr-BE.json +7 -2
  84. package/src/shared/translations/nl-BE.json +5 -0
  85. package/src/shared/types.ts +1 -1
  86. package/src/shared/utils/localization-util.ts +9 -3
  87. package/src/shared/utils/query-string-util.ts +6 -3
  88. package/src/shared/utils/tide-api-utils.ts +1 -1
  89. package/styles/booking-product-variables.scss +174 -68
  90. package/styles/booking-product.scss +294 -288
  91. package/styles/booking-wizard-variables.scss +872 -529
  92. package/styles/booking-wizard.scss +35 -2
  93. package/styles/components/_base.scss +3 -2
  94. package/styles/components/_booking.scss +149 -679
  95. package/styles/components/_button.scss +55 -2
  96. package/styles/components/_checkbox.scss +7 -3
  97. package/styles/components/_cta.scss +86 -11
  98. package/styles/components/_date-list.scss +41 -0
  99. package/styles/components/_date-range-picker.scss +3 -3
  100. package/styles/components/_decrement-increment.scss +1 -3
  101. package/styles/components/_dropdown.scss +2 -4
  102. package/styles/components/_flight-option.scss +454 -414
  103. package/styles/components/_form.scss +1266 -77
  104. package/styles/components/_info-message.scss +71 -0
  105. package/styles/components/_input.scss +25 -0
  106. package/styles/components/_list.scss +111 -6
  107. package/styles/components/_loader.scss +4 -3
  108. package/styles/components/_mixins.scss +30 -10
  109. package/styles/components/_placeholders.scss +11 -11
  110. package/styles/components/_pricing-summary.scss +40 -2
  111. package/styles/components/_qsm.scss +1 -4
  112. package/styles/components/_radiobutton.scss +170 -0
  113. package/styles/components/_select-wrapper.scss +18 -4
  114. package/styles/components/_spinner.scss +29 -0
  115. package/styles/components/_step-indicators.scss +14 -6
  116. package/styles/components/_table.scss +9 -9
  117. package/styles/components/_tree.scss +31 -41
  118. package/styles/components/_typeahead.scss +281 -0
  119. package/styles/components/_variables.scss +15 -15
@@ -10,8 +10,10 @@
10
10
  right: 15px;
11
11
  top: 13px;
12
12
  display: inline-flex;
13
- border-left: 2px solid var(--tide-booking-room-options-dropdown-select-icon-color);
14
- border-bottom: 2px solid var(--tide-booking-room-options-dropdown-select-icon-color);
13
+ border-left: 2px solid
14
+ var(--tide-booking-room-options-dropdown-select-icon-color);
15
+ border-bottom: 2px solid
16
+ var(--tide-booking-room-options-dropdown-select-icon-color);
15
17
  transform: rotate(-45deg);
16
18
  }
17
19
  }
@@ -20,7 +22,9 @@
20
22
  width: 100%;
21
23
  height: 40px;
22
24
  padding: 0 40px 0 10px;
23
- border-radius: var(--tide-booking-room-options-dropdown-select-border-radius);
25
+ border-radius: var(
26
+ --tide-booking-room-options-dropdown-select-border-radius
27
+ );
24
28
  border: var(--tide-booking-room-options-dropdown-select-border);
25
29
  font-family: var(--tide-booking-room-options-dropdown-select-font-family);
26
30
  appearance: none;
@@ -30,12 +34,22 @@
30
34
  border: --tide-booking-room-options-dropdown-select-border-focus;
31
35
  }
32
36
 
33
- option{
37
+ option {
38
+ appearance: none;
39
+ display: flex;
40
+ justify-content: space-between;
41
+ gap: 20px;
42
+
34
43
  font-family: var(--tide-booking-room-options-dropdown-select-font-family);
35
44
  font-size: 16px;
36
45
  color: var(--tide-booking-room-options-dropdown-select-option-color);
37
46
  }
38
47
  }
48
+
49
+ ::picker(select) {
50
+ top: calc(anchor(bottom) + 1px);
51
+ left: anchor(10%);
52
+ }
39
53
  }
40
54
 
41
55
  .productcard--accommodation .select-wrapper {
@@ -0,0 +1,29 @@
1
+ .spinner {
2
+ position: absolute;
3
+ width: 100%;
4
+ height: 100%;
5
+ top: 0;
6
+ left: 0;
7
+ @include flex--centerXY;
8
+ display: none;
9
+ background: rgba(255, 255, 255, 0.75);
10
+
11
+ &__icon {
12
+ width: 50px;
13
+ height: 50px;
14
+ @include flex--centerXY;
15
+
16
+ .icon {
17
+ position: static !important;
18
+ width: 100% !important;
19
+ height: 100% !important;
20
+ top: initial !important;
21
+ left: initial !important;
22
+ animation: spinner 1.5s infinite ease-in-out both;
23
+ }
24
+ }
25
+
26
+ &--active {
27
+ display: flex;
28
+ }
29
+ }
@@ -55,7 +55,7 @@
55
55
  position: absolute;
56
56
  width: 200%;
57
57
  height: 1.5px;
58
- margin-top: .75px;
58
+ margin-top: 0.75px;
59
59
  top: 15px;
60
60
  left: 35px;
61
61
  }
@@ -64,7 +64,9 @@
64
64
  &__icon {
65
65
  border: var(--tide-booking-step-indicators-icon-border-active);
66
66
  color: transparent;
67
- background-color: var(--tide-booking-step-indicators-icon-background-active);
67
+ background-color: var(
68
+ --tide-booking-step-indicators-icon-background-active
69
+ );
68
70
  animation: pulse 7s infinite;
69
71
 
70
72
  &:before {
@@ -76,7 +78,9 @@
76
78
  margin-left: -2px;
77
79
  border-left: 2px solid;
78
80
  border-bottom: 2px solid;
79
- border-color: var(--tide-booking-step-indicators-icon-check-color-active);
81
+ border-color: var(
82
+ --tide-booking-step-indicators-icon-check-color-active
83
+ );
80
84
  transform: rotate(-45deg);
81
85
  }
82
86
  }
@@ -93,7 +97,7 @@
93
97
  position: absolute;
94
98
  width: 200%;
95
99
  height: 1.5px;
96
- margin-top: .75px;
100
+ margin-top: 0.75px;
97
101
  top: 15px;
98
102
  left: 35px;
99
103
  }
@@ -101,7 +105,9 @@
101
105
  .step-indicators__icon {
102
106
  border: var(--tide-booking-step-indicators-icon-color-completed);
103
107
  color: transparent;
104
- background-color: var(--tide-booking-step-indicators-icon-background-completed);
108
+ background-color: var(
109
+ --tide-booking-step-indicators-icon-background-completed
110
+ );
105
111
 
106
112
  &:before {
107
113
  content: "";
@@ -112,7 +118,9 @@
112
118
  margin-left: -2px;
113
119
  border-left: 2px solid;
114
120
  border-bottom: 2px solid;
115
- border-color: var(--tide-booking-step-indicators-icon-check-color-completed);
121
+ border-color: var(
122
+ --tide-booking-step-indicators-icon-check-color-completed
123
+ );
116
124
  transform: rotate(-45deg);
117
125
  }
118
126
  }
@@ -2,7 +2,7 @@
2
2
  width: 100%;
3
3
  table-layout: fixed;
4
4
  border-collapse: collapse;
5
- border-radius: 5px;
5
+ border-radius: 0px;
6
6
  font-size: 13px;
7
7
  overflow: hidden;
8
8
 
@@ -10,11 +10,11 @@
10
10
  font-size: 16px;
11
11
  }
12
12
 
13
- tr {
14
- & + tr {
15
- transform: translateY(-10px);
16
- }
17
- }
13
+ // tr {
14
+ // & + tr {
15
+ // transform: translateY(-10px);
16
+ // }
17
+ // }
18
18
 
19
19
  th,
20
20
  td {
@@ -40,7 +40,7 @@
40
40
  }
41
41
 
42
42
  tr:nth-of-type(odd) {
43
- background: fade-out($color-primary, 0.95);
43
+ // background: fade-out($color-primary, 0.95);
44
44
  }
45
45
  }
46
46
  }
@@ -58,7 +58,7 @@
58
58
  }
59
59
 
60
60
  .tree__body .tree__level tbody tr + tr td {
61
- border-top: 10px solid fade-out($black, 0.95);
61
+ // border-top: 10px solid fade-out($black, 0.95);
62
62
  }
63
63
 
64
64
  .tree__level .tree__level .table--striped tr:nth-of-type(odd) {
@@ -68,7 +68,7 @@
68
68
  .tree__level .tree__level .table--striped tbody tr:nth-of-type(odd) tbody {
69
69
  th,
70
70
  td {
71
- border-bottom: 10px solid fade-out($black, 0.95);
71
+ // border-bottom: 10px solid fade-out($black, 0.95);
72
72
  }
73
73
  }
74
74
 
@@ -1,7 +1,7 @@
1
1
  .tree {
2
2
  @extend %reset;
3
3
  border: 0px solid transparent;
4
- border-radius: 5px;
4
+ border-radius: 0px;
5
5
  background-color: transparent;
6
6
 
7
7
  * {
@@ -50,7 +50,7 @@
50
50
  &--price {
51
51
  @include media-lg {
52
52
  width: 100px;
53
- transform: translateY(3px);
53
+ transform: translateY(5px) translateX(15px);
54
54
  }
55
55
 
56
56
  @include media-xl {
@@ -90,7 +90,7 @@
90
90
  .price {
91
91
  position: absolute;
92
92
  top: 10px;
93
- right: 35px;
93
+ right: 0px;
94
94
  font-size: 14px;
95
95
 
96
96
  @include media-lg {
@@ -98,13 +98,13 @@
98
98
  top: initial;
99
99
  right: initial;
100
100
  margin-left: auto;
101
- font-size: 16px;
101
+ font-size: var(--tide-booking-sidebar-footer-total-font-size);
102
102
  }
103
103
  }
104
104
  }
105
105
 
106
106
  &__column--price {
107
- width: 70PX;
107
+ width: 70px;
108
108
  padding-left: 10px;
109
109
  margin-left: auto;
110
110
  text-align: left;
@@ -131,6 +131,11 @@
131
131
 
132
132
  @include media-lg {
133
133
  justify-content: flex-end;
134
+ align-items: center;
135
+ }
136
+
137
+ @include media-xl {
138
+ align-items: flex-start;
134
139
  }
135
140
  }
136
141
 
@@ -177,7 +182,7 @@
177
182
  margin-bottom: 10px;
178
183
  font-size: 13px;
179
184
  text-transform: uppercase;
180
- color: $black;
185
+ color: var(--tide-booking-black);
181
186
 
182
187
  @include media-lg {
183
188
  position: absolute;
@@ -195,7 +200,7 @@
195
200
 
196
201
  @include media-lg {
197
202
  padding-top: 3px;
198
- padding-bottom: 12.5px;
203
+ padding-bottom: 15px;
199
204
  margin: 0 15px;
200
205
  transform: translateY(15px);
201
206
  }
@@ -218,13 +223,11 @@
218
223
  flex-grow: 1;
219
224
 
220
225
  @include media-lg {
221
- padding: 20px 15px 0 28px;
226
+ padding: 20px 0px 0 28px;
222
227
  }
223
228
 
224
229
  &__input {
225
230
  &:checked {
226
- color: $black;
227
-
228
231
  & + * {
229
232
  color: var(--tide-booking-checkbox-input-checked-color-text);
230
233
  }
@@ -301,8 +304,10 @@
301
304
  top: 0;
302
305
  transform: rotate(45deg) !important;
303
306
  display: none;
304
- border-bottom: 2px solid var(--tide-booking-checkbox-input-checked-check-color);
305
- border-right: 2px solid var(--tide-booking-checkbox-input-checked-check-color);
307
+ border-bottom: 2px solid
308
+ var(--tide-booking-checkbox-input-checked-check-color);
309
+ border-right: 2px solid
310
+ var(--tide-booking-checkbox-input-checked-check-color);
306
311
  border-radius: 0;
307
312
  background-color: transparent;
308
313
  }
@@ -341,7 +346,7 @@
341
346
  flex-grow: 1;
342
347
 
343
348
  @include media-lg {
344
- padding: 15px 15px 0 28px;
349
+ padding: 15px 0px 0 28px;
345
350
  }
346
351
 
347
352
  &__input {
@@ -355,13 +360,6 @@
355
360
  }
356
361
 
357
362
  &:checked {
358
- border-color: $color-primary;
359
- color: $color-primary;
360
-
361
- & + * {
362
- color: $color-primary;
363
- }
364
-
365
363
  & + span + .tree__columns-actions .tree__columns .tree__column--price {
366
364
  opacity: 0;
367
365
  pointer-events: none;
@@ -370,8 +368,8 @@
370
368
  }
371
369
 
372
370
  &:after {
373
- width: 10px;
374
- height: 10px;
371
+ width: 12px;
372
+ height: 12px;
375
373
 
376
374
  @include media-lg {
377
375
  width: 12px;
@@ -387,7 +385,7 @@
387
385
  }
388
386
 
389
387
  & + span {
390
- margin-top: 5px;
388
+ margin-top: 0px;
391
389
 
392
390
  @include media-lg {
393
391
  margin: 0;
@@ -409,7 +407,7 @@
409
407
 
410
408
  &-text {
411
409
  padding-right: 15px * 3;
412
- margin-bottom: 7.5px;
410
+ margin-bottom: 5.5px;
413
411
  flex-direction: column;
414
412
  white-space: nowrap;
415
413
 
@@ -434,30 +432,22 @@
434
432
  }
435
433
 
436
434
  &.tree--selected {
437
- padding-bottom: 7.5px !important;
438
435
  }
439
436
 
440
437
  &--selected {
441
- border-color: $tree-border-selected;
442
- color: $color-primary;
443
- background-color: $tree-background-selected;
438
+ border-radius: var(--tide-booking-input-selected-border-radius);
439
+ border: var(--tide-booking-input-selected-border);
440
+ color: var(--tide-booking-input-selected-color);
441
+ background-color: var(--tide-booking-input-selected-background);
444
442
 
445
443
  * {
446
- color: $color-primary;
447
- }
448
-
449
- .checkbox__input:checked + * {
450
- color: $color-primary;
444
+ color: var(--tide-booking-input-selected-color);
451
445
  }
452
446
 
453
- .radiobutton__input:checked + * {
454
- color: $color-primary;
455
- }
456
-
457
- input:not(:empty),
458
- select {
459
- color: $black;
460
- }
447
+ // input:not(:empty),
448
+ // select {
449
+ // color: green;
450
+ // }
461
451
  }
462
452
  }
463
453
 
@@ -0,0 +1,281 @@
1
+ .typeahead {
2
+ position: relative;
3
+ width: 100%;
4
+ @include column;
5
+ z-index: 97;
6
+
7
+ &__trigger {
8
+ position: relative;
9
+ width: 100%;
10
+ @include flex--centerY;
11
+
12
+ &:focus,
13
+ &:active {
14
+ .form__input {
15
+ border: var(--tide-booking-form-typeahead-agent-border-hover);
16
+ }
17
+
18
+ svg {
19
+ fill: var(--tide-booking-form-typeahead-agent-icon-color-hover);
20
+ }
21
+ }
22
+
23
+ &--icon {
24
+ .icon {
25
+ width: 18px;
26
+ height: 24px;
27
+ position: absolute;
28
+ left: 15px;
29
+
30
+ fill: var(--tide-booking-form-typeahead-agent-icon-color);
31
+
32
+ @include media-md {
33
+ display: flex;
34
+ }
35
+ }
36
+
37
+ .form__input {
38
+ padding-top: 0;
39
+ padding-left: 15px * 3;
40
+
41
+ @include media-md {
42
+ }
43
+ }
44
+ }
45
+ }
46
+
47
+ &__options {
48
+ width: 100%;
49
+ max-height: 25vh;
50
+ @include column;
51
+ border-radius: var(
52
+ --tide-booking-form-typeahead-agent-options-border-radius
53
+ );
54
+ backdrop-filter: blur(30px);
55
+ background-color: var(
56
+ --tide-booking-form-typeahead-agent-options-background
57
+ );
58
+ box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);
59
+ border: var(--tide-booking-form-typeahead-agent-options-border);
60
+ overflow-y: auto;
61
+ // position: absolute;
62
+ // top: 45px;
63
+ @extend %scrollbar-thin;
64
+
65
+ @include media-sm {
66
+ max-height: 35vh !important;
67
+ }
68
+
69
+ @include media-md {
70
+ max-height: 350px !important;
71
+ }
72
+
73
+ @include media-xl {
74
+ max-height: 400px !important;
75
+ }
76
+
77
+ @include media-xxl {
78
+ max-height: 500px !important;
79
+ }
80
+ }
81
+
82
+ &__options-body {
83
+ @extend %reset;
84
+ width: 100%;
85
+ @include column;
86
+ }
87
+
88
+ &__options-actions {
89
+ @extend %reset;
90
+ position: sticky;
91
+ width: 100%;
92
+ bottom: 0;
93
+ padding: 0 15px * 0.7 15px * 0.7 15px * 0.7;
94
+ margin-top: auto;
95
+ // background-color: yellow;
96
+ }
97
+
98
+ &__option {
99
+ @extend %reset;
100
+ width: 100%;
101
+ @include column;
102
+ flex-shrink: 0;
103
+ color: var(--tide-booking-form-typeahead-agent-options-color);
104
+ transition-duration: 0.2s;
105
+ transition-property: color, background-color;
106
+ transition-timing-function: ease-out;
107
+
108
+ &:hover,
109
+ &:focus,
110
+ &:active {
111
+ // background-color: yellow;
112
+ }
113
+ }
114
+
115
+ .typeahead__option + .typeahead__option {
116
+ border-top: var(--tide-booking-form-typeahead-agent-options-border);
117
+ }
118
+
119
+ &__option-description {
120
+ display: flex;
121
+ flex-flow: row wrap;
122
+ font-size: 14px;
123
+ white-space: pre-wrap;
124
+ }
125
+
126
+ &__option-header {
127
+ display: flex;
128
+ }
129
+
130
+ &__option-heading {
131
+ @include lineclamp($lineclamp-amount: 2);
132
+ line-height: 1.4;
133
+ white-space: pre-wrap;
134
+ }
135
+
136
+ &__option-highlight {
137
+ font-style: normal;
138
+ font-weight: var(
139
+ --tide-booking-form-typeahead-agent-options-font-weight-highlight
140
+ );
141
+ color: var(--tide-booking-form-typeahead-agent-options-color-highlight);
142
+ margin-right: 5px;
143
+ @extend %transition-easing;
144
+ }
145
+
146
+ &__option-label {
147
+ margin-top: 15px * 0.3;
148
+ margin-left: 15px * 0.7;
149
+ font-size: 14px;
150
+ font-style: italic;
151
+ line-height: 1;
152
+ @include lineclamp();
153
+ }
154
+
155
+ &__option-heading + &__option-label {
156
+ flex-shrink: 0;
157
+ }
158
+
159
+ &__option--icon {
160
+ position: relative;
161
+ padding: 10px 15px 10px 45px;
162
+ font-size: 16px;
163
+
164
+ &:hover,
165
+ &:focus,
166
+ &:active {
167
+ .typeahead__option-highlight {
168
+ // color: yellow;
169
+ }
170
+ }
171
+ }
172
+
173
+ &__option--icon + &__option {
174
+ padding-bottom: 15px;
175
+ border-top: 0;
176
+ }
177
+
178
+ &__region {
179
+ @extend %reset;
180
+ width: 100%;
181
+
182
+ & + & {
183
+ // border-top: 1.5px solid yellow;
184
+ }
185
+ }
186
+
187
+ &--active {
188
+ .typeahead__options {
189
+ display: flex;
190
+ }
191
+ }
192
+ }
193
+
194
+ .booking__panel .typeahead__options {
195
+ // border: 0.1rem solid yellow;
196
+ }
197
+
198
+ .qsm--inline .typeahead__trigger--icon .form__input {
199
+ padding-top: 1.6rem;
200
+ }
201
+
202
+ .qsm--inline .typeahead--active .typeahead__options {
203
+ display: flex;
204
+ }
205
+
206
+ .qsm--inline .typeahead {
207
+ @include media-sm {
208
+ z-index: initial;
209
+ }
210
+
211
+ &__options {
212
+ max-height: 60vh;
213
+ backdrop-filter: none;
214
+ background-color: transparent;
215
+ box-shadow: none;
216
+ border: none;
217
+ overflow-y: auto;
218
+
219
+ @include media-sm {
220
+ min-height: auto;
221
+ backdrop-filter: none;
222
+ background-color: transparent;
223
+ box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.1);
224
+ }
225
+ }
226
+
227
+ &__trigger {
228
+ .typeahead__trigger {
229
+ margin-bottom: 1.5rem;
230
+ }
231
+ }
232
+
233
+ .qsm__panel {
234
+ &--active {
235
+ width: 100%;
236
+ height: 100%;
237
+ top: 0;
238
+ left: 0;
239
+ max-height: 100%;
240
+ padding: 1.5rem;
241
+ display: flex;
242
+ backdrop-filter: blur(1rem);
243
+ background-color: rgba(255, 255, 255, 0.8);
244
+ box-sizing: border-box;
245
+ pointer-events: initial;
246
+ z-index: 9999999999999999;
247
+
248
+ @media (max-width: 767px) {
249
+ transform: none !important;
250
+ }
251
+
252
+ @include media-sm {
253
+ height: auto;
254
+ max-height: 60vh;
255
+ padding: 0;
256
+ }
257
+ }
258
+
259
+ .form__input {
260
+ padding-top: 0;
261
+ }
262
+ }
263
+ }
264
+
265
+ /*.section--home-qsm {
266
+ .typeahead__options {
267
+ position: absolute;
268
+ transform: translateY(-100%);
269
+ display: none;
270
+ }
271
+ }*/
272
+
273
+ .typeahead__option .link {
274
+ &:hover,
275
+ &:focus,
276
+ &:active {
277
+ .typeahead__option-highlight {
278
+ // color: yellow;
279
+ }
280
+ }
281
+ }
@@ -25,7 +25,7 @@ $gray-timeline: #808080;
25
25
  $gray-dark: #666666;
26
26
  $tree-border-selected: #e0ecff;
27
27
  $tree-background-selected: #edfbff;
28
- $black: #0A0A0A;
28
+ $black: #0a0a0a;
29
29
  $transparent: transparent;
30
30
 
31
31
  $economy: #334eac;
@@ -72,18 +72,18 @@ $screen-xxl: 1920px;
72
72
  }
73
73
 
74
74
  %scrollbar-thin {
75
- &::-webkit-scrollbar {
76
- width: 8px;
77
- height: 8px;
78
- }
79
-
80
- &::-webkit-scrollbar-track {
81
- padding: 2px;
82
- background: transparent;
83
- }
84
-
85
- &::-webkit-scrollbar-thumb {
86
- border-radius: 4px;
87
- background-color: fade-out($black, 0.75);
88
- }
75
+ &::-webkit-scrollbar {
76
+ width: 8px;
77
+ height: 8px;
78
+ }
79
+
80
+ &::-webkit-scrollbar-track {
81
+ padding: 2px;
82
+ background: transparent;
83
+ }
84
+
85
+ &::-webkit-scrollbar-thumb {
86
+ border-radius: 4px;
87
+ background-color: fade-out($black, 0.75);
88
+ }
89
89
  }