@qite/tide-booking-component 1.4.107 → 1.4.109

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.
@@ -16726,6 +16726,28 @@ var Icon = function (_a) {
16726
16726
  d: 'M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z'
16727
16727
  })
16728
16728
  );
16729
+ case 'ui-triangle-error':
16730
+ return React__default['default'].createElement(
16731
+ 'svg',
16732
+ {
16733
+ className: ['icon', 'icon--'.concat(name), className]
16734
+ .filter(function (className) {
16735
+ return !lodash.isEmpty(className);
16736
+ })
16737
+ .join(' '),
16738
+ width: width,
16739
+ height: height,
16740
+ viewBox: '0 0 512 512',
16741
+ fill: fill !== null && fill !== void 0 ? fill : 'currentColor'
16742
+ },
16743
+ React__default['default'].createElement(HTMLComment, {
16744
+ text: '!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.'
16745
+ }),
16746
+ title && React__default['default'].createElement('title', null, title),
16747
+ React__default['default'].createElement('path', {
16748
+ d: 'M256 0c14.7 0 28.2 8.1 35.2 21l216 400c6.7 12.4 6.4 27.4-.8 39.5S486.1 480 472 480L40 480c-14.1 0-27.2-7.4-34.4-19.5s-7.5-27.1-.8-39.5l216-400c7-12.9 20.5-21 35.2-21zm0 352a32 32 0 1 0 0 64 32 32 0 1 0 0-64zm0-192c-18.2 0-32.7 15.5-31.4 33.7l7.4 104c.9 12.5 11.4 22.3 23.9 22.3 12.6 0 23-9.7 23.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z'
16749
+ })
16750
+ );
16729
16751
  default:
16730
16752
  return null;
16731
16753
  }
@@ -31862,6 +31884,7 @@ var MobileFilterModal = function () {
31862
31884
  destinationAirport = _b.destinationAirport,
31863
31885
  returnAirport = _b.returnAirport,
31864
31886
  destination = _b.destination;
31887
+ var searchInputRef = React.useRef(null);
31865
31888
  var _c = React.useState(''),
31866
31889
  inputValue = _c[0],
31867
31890
  setInputValue = _c[1];
@@ -31878,6 +31901,18 @@ var MobileFilterModal = function () {
31878
31901
  },
31879
31902
  [activeSearchFieldProps]
31880
31903
  );
31904
+ React.useEffect(
31905
+ function () {
31906
+ if (mobileFilterType !== 'search') return;
31907
+ requestAnimationFrame(function () {
31908
+ var input = searchInputRef.current;
31909
+ if (!input) return;
31910
+ input.focus();
31911
+ input.setSelectionRange(input.value.length, input.value.length);
31912
+ });
31913
+ },
31914
+ [mobileFilterType, activeSearchFieldProps === null || activeSearchFieldProps === void 0 ? void 0 : activeSearchFieldProps.fieldKey]
31915
+ );
31881
31916
  /* ---------------------------------------------------------------- */
31882
31917
  /* Helpers */
31883
31918
  /* ---------------------------------------------------------------- */
@@ -32070,6 +32105,7 @@ var MobileFilterModal = function () {
32070
32105
  'label',
32071
32106
  { className: 'qsm__input-wrapper' },
32072
32107
  React__default['default'].createElement('input', {
32108
+ ref: searchInputRef,
32073
32109
  type: 'text',
32074
32110
  id: 'search',
32075
32111
  value: inputValue,
@@ -32079,7 +32115,6 @@ var MobileFilterModal = function () {
32079
32115
  onChange: function (e) {
32080
32116
  return handleInputChange(e.target.value);
32081
32117
  },
32082
- // onChange={(e) => handleLocationChange(e.target.value)}
32083
32118
  className: 'qsm__input qsm__input--modal qsm__from-to u-ps-2',
32084
32119
  placeholder: activeSearchFieldProps.placeholder
32085
32120
  }),
@@ -32577,7 +32612,6 @@ var ItemPicker$1 = function (_a) {
32577
32612
  isDropdownOpen = _b[0],
32578
32613
  setIsDropdownOpen = _b[1];
32579
32614
  var dropdownRef = React.useRef(null);
32580
- var toggleButtonRef = React.useRef(null);
32581
32615
  var handlePick = function (picked, id) {
32582
32616
  setIsDropdownOpen(false);
32583
32617
  onPick(picked, id);
@@ -32599,7 +32633,7 @@ var ItemPicker$1 = function (_a) {
32599
32633
  React__default['default'].createElement('span', { className: 'dropdown__label' }, label),
32600
32634
  React__default['default'].createElement(
32601
32635
  'div',
32602
- { className: 'dropdown' },
32636
+ { className: 'dropdown', ref: dropdownRef },
32603
32637
  React__default['default'].createElement(
32604
32638
  'button',
32605
32639
  {
@@ -32608,8 +32642,7 @@ var ItemPicker$1 = function (_a) {
32608
32642
  return setIsDropdownOpen(function (prev) {
32609
32643
  return !prev;
32610
32644
  });
32611
- },
32612
- ref: toggleButtonRef
32645
+ }
32613
32646
  },
32614
32647
  React__default['default'].createElement('span', null, selection || placeholder),
32615
32648
  React__default['default'].createElement('span', { className: 'arrow' }, '\u25BE')
@@ -33042,58 +33075,16 @@ var QSMContainer = function () {
33042
33075
  );
33043
33076
  })
33044
33077
  ),
33045
- React__default['default'].createElement(
33046
- 'div',
33047
- { className: 'qsm__filter' },
33048
- (qsmType === build.PortalQsmType.Accommodation ||
33049
- qsmType === build.PortalQsmType.AccommodationAndFlight ||
33050
- qsmType === build.PortalQsmType.GroupTour) &&
33051
- React__default['default'].createElement(
33052
- 'div',
33053
- { className: 'radiobutton-group qsm__filter__inputgroup' },
33054
- React__default['default'].createElement(
33055
- 'div',
33056
- { className: 'radiobutton' },
33057
- React__default['default'].createElement(
33058
- 'label',
33059
- { className: 'radiobutton__label' },
33060
- React__default['default'].createElement('input', {
33061
- type: 'radio',
33062
- name: 'numberOfAccommodations',
33063
- // onChange={handleMainBookerChange}
33064
- // onBlur={formik.handleBlur}
33065
- value: '',
33066
- checked: true,
33067
- readOnly: true,
33068
- className: 'radiobutton__input'
33069
- }),
33070
- React__default['default'].createElement('span', null, translations.QSM.ONE_ACCOMMODATION)
33071
- )
33072
- ),
33078
+ !isMobile &&
33079
+ React__default['default'].createElement(
33080
+ 'div',
33081
+ { className: 'qsm__filter' },
33082
+ (qsmType === build.PortalQsmType.Accommodation ||
33083
+ qsmType === build.PortalQsmType.AccommodationAndFlight ||
33084
+ qsmType === build.PortalQsmType.GroupTour) &&
33073
33085
  React__default['default'].createElement(
33074
33086
  'div',
33075
- { className: 'radiobutton' },
33076
- React__default['default'].createElement(
33077
- 'label',
33078
- { className: 'radiobutton__label' },
33079
- React__default['default'].createElement('input', {
33080
- type: 'radio',
33081
- name: 'numberOfAccommodations',
33082
- // onChange={handleMainBookerChange}
33083
- // onBlur={formik.handleBlur}
33084
- value: '',
33085
- className: 'radiobutton__input',
33086
- disabled: true
33087
- }),
33088
- React__default['default'].createElement('span', null, translations.QSM.MULTIPLE_ACCOMMODATIONS)
33089
- )
33090
- )
33091
- ),
33092
- qsmType === build.PortalQsmType.Flight &&
33093
- React__default['default'].createElement(
33094
- 'div',
33095
- { className: 'radiobutton-group qsm__filter__inputgroup' },
33096
- allowOneWay &&
33087
+ { className: 'radiobutton-group qsm__filter__inputgroup' },
33097
33088
  React__default['default'].createElement(
33098
33089
  'div',
33099
33090
  { className: 'radiobutton' },
@@ -33102,18 +33093,17 @@ var QSMContainer = function () {
33102
33093
  { className: 'radiobutton__label' },
33103
33094
  React__default['default'].createElement('input', {
33104
33095
  type: 'radio',
33105
- name: 'tripType',
33106
- value: 'oneway',
33107
- checked: tripType === 'oneway',
33108
- onChange: function () {
33109
- return handleTripTypeChange('oneway');
33110
- },
33096
+ name: 'numberOfAccommodations',
33097
+ // onChange={handleMainBookerChange}
33098
+ // onBlur={formik.handleBlur}
33099
+ value: '',
33100
+ checked: true,
33101
+ readOnly: true,
33111
33102
  className: 'radiobutton__input'
33112
33103
  }),
33113
- React__default['default'].createElement('span', null, translations.QSM.ONEWAY)
33104
+ React__default['default'].createElement('span', null, translations.QSM.ONE_ACCOMMODATION)
33114
33105
  )
33115
33106
  ),
33116
- allowRoundtrip &&
33117
33107
  React__default['default'].createElement(
33118
33108
  'div',
33119
33109
  { className: 'radiobutton' },
@@ -33122,58 +33112,102 @@ var QSMContainer = function () {
33122
33112
  { className: 'radiobutton__label' },
33123
33113
  React__default['default'].createElement('input', {
33124
33114
  type: 'radio',
33125
- name: 'tripType',
33126
- value: 'roundtrip',
33127
- checked: tripType === 'roundtrip',
33128
- onChange: function () {
33129
- return handleTripTypeChange('roundtrip');
33130
- },
33131
- className: 'radiobutton__input'
33115
+ name: 'numberOfAccommodations',
33116
+ // onChange={handleMainBookerChange}
33117
+ // onBlur={formik.handleBlur}
33118
+ value: '',
33119
+ className: 'radiobutton__input',
33120
+ disabled: true
33132
33121
  }),
33133
- React__default['default'].createElement('span', null, translations.QSM.ROUNDTRIP)
33122
+ React__default['default'].createElement('span', null, translations.QSM.MULTIPLE_ACCOMMODATIONS)
33134
33123
  )
33135
- ),
33136
- allowOpenJaw &&
33137
- React__default['default'].createElement(
33138
- 'div',
33139
- { className: 'radiobutton' },
33124
+ )
33125
+ ),
33126
+ qsmType === build.PortalQsmType.Flight &&
33127
+ React__default['default'].createElement(
33128
+ 'div',
33129
+ { className: 'radiobutton-group qsm__filter__inputgroup' },
33130
+ allowOneWay &&
33140
33131
  React__default['default'].createElement(
33141
- 'label',
33142
- { className: 'radiobutton__label' },
33143
- React__default['default'].createElement('input', {
33144
- type: 'radio',
33145
- name: 'tripType',
33146
- value: 'openjaw',
33147
- checked: tripType === 'openjaw',
33148
- onChange: function () {
33149
- return handleTripTypeChange('openjaw');
33150
- },
33151
- className: 'radiobutton__input'
33152
- }),
33153
- React__default['default'].createElement('span', null, translations.QSM.OPENJAW)
33132
+ 'div',
33133
+ { className: 'radiobutton' },
33134
+ React__default['default'].createElement(
33135
+ 'label',
33136
+ { className: 'radiobutton__label' },
33137
+ React__default['default'].createElement('input', {
33138
+ type: 'radio',
33139
+ name: 'tripType',
33140
+ value: 'oneway',
33141
+ checked: tripType === 'oneway',
33142
+ onChange: function () {
33143
+ return handleTripTypeChange('oneway');
33144
+ },
33145
+ className: 'radiobutton__input'
33146
+ }),
33147
+ React__default['default'].createElement('span', null, translations.QSM.ONEWAY)
33148
+ )
33149
+ ),
33150
+ allowRoundtrip &&
33151
+ React__default['default'].createElement(
33152
+ 'div',
33153
+ { className: 'radiobutton' },
33154
+ React__default['default'].createElement(
33155
+ 'label',
33156
+ { className: 'radiobutton__label' },
33157
+ React__default['default'].createElement('input', {
33158
+ type: 'radio',
33159
+ name: 'tripType',
33160
+ value: 'roundtrip',
33161
+ checked: tripType === 'roundtrip',
33162
+ onChange: function () {
33163
+ return handleTripTypeChange('roundtrip');
33164
+ },
33165
+ className: 'radiobutton__input'
33166
+ }),
33167
+ React__default['default'].createElement('span', null, translations.QSM.ROUNDTRIP)
33168
+ )
33169
+ ),
33170
+ allowOpenJaw &&
33171
+ React__default['default'].createElement(
33172
+ 'div',
33173
+ { className: 'radiobutton' },
33174
+ React__default['default'].createElement(
33175
+ 'label',
33176
+ { className: 'radiobutton__label' },
33177
+ React__default['default'].createElement('input', {
33178
+ type: 'radio',
33179
+ name: 'tripType',
33180
+ value: 'openjaw',
33181
+ checked: tripType === 'openjaw',
33182
+ onChange: function () {
33183
+ return handleTripTypeChange('openjaw');
33184
+ },
33185
+ className: 'radiobutton__input'
33186
+ }),
33187
+ React__default['default'].createElement('span', null, translations.QSM.OPENJAW)
33188
+ )
33154
33189
  )
33155
- )
33156
- ),
33157
- React__default['default'].createElement(
33158
- 'div',
33159
- { className: 'qsm__filter__classgroup' },
33160
- qsmType !== build.PortalQsmType.Accommodation &&
33161
- qsmType !== build.PortalQsmType.Car &&
33162
- qsmType !== build.PortalQsmType.Ticket &&
33163
- qsmType !== build.PortalQsmType.Cruise &&
33164
- qsmType !== build.PortalQsmType.Transfer &&
33165
- qsmType !== build.PortalQsmType.GroupTour &&
33166
- askTravelClass &&
33167
- React__default['default'].createElement(TravelClassPicker, null),
33168
- qsmType !== build.PortalQsmType.Multidestination &&
33169
- qsmType !== build.PortalQsmType.Car &&
33170
- qsmType !== build.PortalQsmType.Flight &&
33171
- qsmType !== build.PortalQsmType.Transfer &&
33172
- askTravelType &&
33173
- React__default['default'].createElement(TravelTypePicker, null),
33174
- askNationality && React__default['default'].createElement(TravelNationalityPicker, null)
33175
- )
33176
- ),
33190
+ ),
33191
+ React__default['default'].createElement(
33192
+ 'div',
33193
+ { className: 'qsm__filter__classgroup' },
33194
+ qsmType !== build.PortalQsmType.Accommodation &&
33195
+ qsmType !== build.PortalQsmType.Car &&
33196
+ qsmType !== build.PortalQsmType.Ticket &&
33197
+ qsmType !== build.PortalQsmType.Cruise &&
33198
+ qsmType !== build.PortalQsmType.Transfer &&
33199
+ qsmType !== build.PortalQsmType.GroupTour &&
33200
+ askTravelClass &&
33201
+ React__default['default'].createElement(TravelClassPicker, null),
33202
+ qsmType !== build.PortalQsmType.Multidestination &&
33203
+ qsmType !== build.PortalQsmType.Car &&
33204
+ qsmType !== build.PortalQsmType.Flight &&
33205
+ qsmType !== build.PortalQsmType.Transfer &&
33206
+ askTravelType &&
33207
+ React__default['default'].createElement(TravelTypePicker, null),
33208
+ askNationality && React__default['default'].createElement(TravelNationalityPicker, null)
33209
+ )
33210
+ ),
33177
33211
  React__default['default'].createElement(
33178
33212
  'div',
33179
33213
  { className: 'qsm__input-group' },
@@ -33195,6 +33229,139 @@ var QSMContainer = function () {
33195
33229
  React__default['default'].createElement(SearchInputGroup, { fieldConfig: destination }),
33196
33230
  React__default['default'].createElement(Dates, { value: dateRange, onChange: handleDateChange }),
33197
33231
  askTravelers && React__default['default'].createElement(TravelInputGroup, null),
33232
+ isMobile &&
33233
+ React__default['default'].createElement(
33234
+ 'div',
33235
+ { className: 'qsm__filter' },
33236
+ (qsmType === build.PortalQsmType.Accommodation ||
33237
+ qsmType === build.PortalQsmType.AccommodationAndFlight ||
33238
+ qsmType === build.PortalQsmType.GroupTour) &&
33239
+ React__default['default'].createElement(
33240
+ 'div',
33241
+ { className: 'radiobutton-group qsm__filter__inputgroup' },
33242
+ React__default['default'].createElement(
33243
+ 'div',
33244
+ { className: 'radiobutton' },
33245
+ React__default['default'].createElement(
33246
+ 'label',
33247
+ { className: 'radiobutton__label' },
33248
+ React__default['default'].createElement('input', {
33249
+ type: 'radio',
33250
+ name: 'numberOfAccommodations',
33251
+ // onChange={handleMainBookerChange}
33252
+ // onBlur={formik.handleBlur}
33253
+ value: '',
33254
+ checked: true,
33255
+ readOnly: true,
33256
+ className: 'radiobutton__input'
33257
+ }),
33258
+ React__default['default'].createElement('span', null, translations.QSM.ONE_ACCOMMODATION)
33259
+ )
33260
+ ),
33261
+ React__default['default'].createElement(
33262
+ 'div',
33263
+ { className: 'radiobutton' },
33264
+ React__default['default'].createElement(
33265
+ 'label',
33266
+ { className: 'radiobutton__label' },
33267
+ React__default['default'].createElement('input', {
33268
+ type: 'radio',
33269
+ name: 'numberOfAccommodations',
33270
+ // onChange={handleMainBookerChange}
33271
+ // onBlur={formik.handleBlur}
33272
+ value: '',
33273
+ className: 'radiobutton__input',
33274
+ disabled: true
33275
+ }),
33276
+ React__default['default'].createElement('span', null, translations.QSM.MULTIPLE_ACCOMMODATIONS)
33277
+ )
33278
+ )
33279
+ ),
33280
+ qsmType === build.PortalQsmType.Flight &&
33281
+ React__default['default'].createElement(
33282
+ 'div',
33283
+ { className: 'radiobutton-group qsm__filter__inputgroup' },
33284
+ allowOneWay &&
33285
+ React__default['default'].createElement(
33286
+ 'div',
33287
+ { className: 'radiobutton' },
33288
+ React__default['default'].createElement(
33289
+ 'label',
33290
+ { className: 'radiobutton__label' },
33291
+ React__default['default'].createElement('input', {
33292
+ type: 'radio',
33293
+ name: 'tripType',
33294
+ value: 'oneway',
33295
+ checked: tripType === 'oneway',
33296
+ onChange: function () {
33297
+ return handleTripTypeChange('oneway');
33298
+ },
33299
+ className: 'radiobutton__input'
33300
+ }),
33301
+ React__default['default'].createElement('span', null, translations.QSM.ONEWAY)
33302
+ )
33303
+ ),
33304
+ allowRoundtrip &&
33305
+ React__default['default'].createElement(
33306
+ 'div',
33307
+ { className: 'radiobutton' },
33308
+ React__default['default'].createElement(
33309
+ 'label',
33310
+ { className: 'radiobutton__label' },
33311
+ React__default['default'].createElement('input', {
33312
+ type: 'radio',
33313
+ name: 'tripType',
33314
+ value: 'roundtrip',
33315
+ checked: tripType === 'roundtrip',
33316
+ onChange: function () {
33317
+ return handleTripTypeChange('roundtrip');
33318
+ },
33319
+ className: 'radiobutton__input'
33320
+ }),
33321
+ React__default['default'].createElement('span', null, translations.QSM.ROUNDTRIP)
33322
+ )
33323
+ ),
33324
+ allowOpenJaw &&
33325
+ React__default['default'].createElement(
33326
+ 'div',
33327
+ { className: 'radiobutton' },
33328
+ React__default['default'].createElement(
33329
+ 'label',
33330
+ { className: 'radiobutton__label' },
33331
+ React__default['default'].createElement('input', {
33332
+ type: 'radio',
33333
+ name: 'tripType',
33334
+ value: 'openjaw',
33335
+ checked: tripType === 'openjaw',
33336
+ onChange: function () {
33337
+ return handleTripTypeChange('openjaw');
33338
+ },
33339
+ className: 'radiobutton__input'
33340
+ }),
33341
+ React__default['default'].createElement('span', null, translations.QSM.OPENJAW)
33342
+ )
33343
+ )
33344
+ ),
33345
+ React__default['default'].createElement(
33346
+ 'div',
33347
+ { className: 'qsm__filter__classgroup' },
33348
+ qsmType !== build.PortalQsmType.Accommodation &&
33349
+ qsmType !== build.PortalQsmType.Car &&
33350
+ qsmType !== build.PortalQsmType.Ticket &&
33351
+ qsmType !== build.PortalQsmType.Cruise &&
33352
+ qsmType !== build.PortalQsmType.Transfer &&
33353
+ qsmType !== build.PortalQsmType.GroupTour &&
33354
+ askTravelClass &&
33355
+ React__default['default'].createElement(TravelClassPicker, null),
33356
+ qsmType !== build.PortalQsmType.Multidestination &&
33357
+ qsmType !== build.PortalQsmType.Car &&
33358
+ qsmType !== build.PortalQsmType.Flight &&
33359
+ qsmType !== build.PortalQsmType.Transfer &&
33360
+ askTravelType &&
33361
+ React__default['default'].createElement(TravelTypePicker, null),
33362
+ askNationality && React__default['default'].createElement(TravelNationalityPicker, null)
33363
+ )
33364
+ ),
33198
33365
  React__default['default'].createElement(
33199
33366
  'button',
33200
33367
  { type: 'button', className: 'cta', onClick: handleSubmit },
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ type ErrorProps = {
3
+ message?: string;
4
+ };
5
+ declare const Error: React.FC<ErrorProps>;
6
+ export default Error;