@qite/tide-booking-component 1.4.128 → 1.4.130

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.
@@ -237,6 +237,8 @@ var TRAVELERS_FORM$f = {
237
237
  VALIDATION: {
238
238
  TRAVELER_X_FIELD: "الغرفة {0} - المسافر {1}: {2}",
239
239
  SINGLE_ROOM_TRAVELER_X_FIELD: "المسافر {0}: {1}",
240
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "الغرفة {0} - المسافر {1}: {2} يحتوي على أحرف غير صالحة",
241
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "المسافر {0}: {1} يحتوي على أحرف غير صالحة",
240
242
  TRAVELER_X_IS_NO_ADULT: "الغرفة {0} - المسافر {1}: ليس بالغًا",
241
243
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "المسافر {0}: ليس بالغًا",
242
244
  TRAVELER_X_IS_NO_CHILD: "الغرفة {0} - المسافر {1}: ليس طفلًا",
@@ -669,6 +671,8 @@ var TRAVELERS_FORM$e = {
669
671
  VALIDATION: {
670
672
  TRAVELER_X_FIELD: "Værelse {0} - Rejsende {1}: {2}",
671
673
  SINGLE_ROOM_TRAVELER_X_FIELD: "Rejsende {0}: {1}",
674
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Værelse {0} - Rejsende {1}: {2} indeholder ugyldige tegn",
675
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Rejsende {0}: {1} indeholder ugyldige tegn",
672
676
  TRAVELER_X_IS_NO_ADULT: "Værelse {0} - Rejsende {1}: er ikke voksen",
673
677
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Rejsende {0}: er ikke voksen",
674
678
  TRAVELER_X_IS_NO_CHILD: "Værelse {0} - Rejsende {1}: er ikke barn",
@@ -1101,6 +1105,8 @@ var TRAVELERS_FORM$d = {
1101
1105
  VALIDATION: {
1102
1106
  TRAVELER_X_FIELD: "Zimmer {0} - Reisender {1}: {2}",
1103
1107
  SINGLE_ROOM_TRAVELER_X_FIELD: "Reisender {0}: {1}",
1108
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Zimmer {0} - Reisender {1}: {2} enthält ungültige Zeichen",
1109
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Reisender {0}: {1} enthält ungültige Zeichen",
1104
1110
  TRAVELER_X_IS_NO_ADULT: "Zimmer {0} - Reisender {1}: ist kein Erwachsener",
1105
1111
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Reisender {0}: ist kein Erwachsener",
1106
1112
  TRAVELER_X_IS_NO_CHILD: "Zimmer {0} - Reisender {1}: ist kein Kind",
@@ -1537,6 +1543,8 @@ var TRAVELERS_FORM$c = {
1537
1543
  VALIDATION: {
1538
1544
  TRAVELER_X_FIELD: "Room {0} - Traveler {1}: {2}",
1539
1545
  SINGLE_ROOM_TRAVELER_X_FIELD: "Traveler {0}: {1}",
1546
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Room {0} - Traveler {1}: {2} contains invalid characters",
1547
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Traveler {0}: {1} contains invalid characters",
1540
1548
  TRAVELER_X_IS_NO_ADULT: "Room {0} - Traveler {1}: is not an adult",
1541
1549
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Traveler {0}: is not an adult",
1542
1550
  TRAVELER_X_IS_NO_CHILD: "Room {0} - Traveler {1}: is not a child",
@@ -1969,6 +1977,8 @@ var TRAVELERS_FORM$b = {
1969
1977
  VALIDATION: {
1970
1978
  TRAVELER_X_FIELD: "Habitación {0} - Viajero {1}: {2}",
1971
1979
  SINGLE_ROOM_TRAVELER_X_FIELD: "Viajero {0}: {1}",
1980
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Habitación {0} - Viajero {1}: {2} contiene caracteres no válidos",
1981
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Viajero {0}: {1} contiene caracteres no válidos",
1972
1982
  TRAVELER_X_IS_NO_ADULT: "Habitación {0} - Viajero {1}: no es adulto",
1973
1983
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Viajero {0}: no es adulto",
1974
1984
  TRAVELER_X_IS_NO_CHILD: "Habitación {0} - Viajero {1}: no es niño",
@@ -2405,6 +2415,8 @@ var TRAVELERS_FORM$a = {
2405
2415
  VALIDATION: {
2406
2416
  TRAVELER_X_FIELD: "Chambre {0} - Voyageur {1} : {2}",
2407
2417
  SINGLE_ROOM_TRAVELER_X_FIELD: "Voyageur {0} : {1}",
2418
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Chambre {0} - Voyageur {1} : {2} contient des caractères non valides",
2419
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Voyageur {0} : {1} contient des caractères non valides",
2408
2420
  TRAVELER_X_IS_NO_ADULT: "Chambre {0} - Voyageur {1} : n'est pas un adulte",
2409
2421
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Voyageur {0} : n'est pas un adulte",
2410
2422
  TRAVELER_X_IS_NO_CHILD: "Chambre {0} - Voyageur {1} : n'est pas un enfant",
@@ -2837,6 +2849,8 @@ var TRAVELERS_FORM$9 = {
2837
2849
  VALIDATION: {
2838
2850
  TRAVELER_X_FIELD: "Chambre {0} - Voyageur {1} : {2}",
2839
2851
  SINGLE_ROOM_TRAVELER_X_FIELD: "Voyageur {0} : {1}",
2852
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Chambre {0} - Voyageur {1} : {2} contient des caractères non valides",
2853
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Voyageur {0} : {1} contient des caractères non valides",
2840
2854
  TRAVELER_X_IS_NO_ADULT: "Chambre {0} - Voyageur {1} : n'est pas un adulte",
2841
2855
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Voyageur {0} : n'est pas un adulte",
2842
2856
  TRAVELER_X_IS_NO_CHILD: "Chambre {0} - Voyageur {1} : n'est pas un enfant",
@@ -3269,6 +3283,8 @@ var TRAVELERS_FORM$8 = {
3269
3283
  VALIDATION: {
3270
3284
  TRAVELER_X_FIELD: "Herbergi {0} - Farþegi {1}: {2}",
3271
3285
  SINGLE_ROOM_TRAVELER_X_FIELD: "Farþegi {0}: {1}",
3286
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Herbergi {0} - Farþegi {1}: {2} inniheldur ógild tákn",
3287
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Farþegi {0}: {1} inniheldur ógild tákn",
3272
3288
  TRAVELER_X_IS_NO_ADULT: "Herbergi {0} - Farþegi {1}: er ekki fullorðinn",
3273
3289
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Farþegi {0}: er ekki fullorðinn",
3274
3290
  TRAVELER_X_IS_NO_CHILD: "Herbergi {0} - Farþegi {1}: er ekki barn",
@@ -3701,6 +3717,8 @@ var TRAVELERS_FORM$7 = {
3701
3717
  VALIDATION: {
3702
3718
  TRAVELER_X_FIELD: "Camera {0} - Viaggiatore {1}: {2}",
3703
3719
  SINGLE_ROOM_TRAVELER_X_FIELD: "Viaggiatore {0}: {1}",
3720
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Camera {0} - Viaggiatore {1}: {2} contiene caratteri non validi",
3721
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Viaggiatore {0}: {1} contiene caratteri non validi",
3704
3722
  TRAVELER_X_IS_NO_ADULT: "Camera {0} - Viaggiatore {1}: non è un adulto",
3705
3723
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Viaggiatore {0}: non è un adulto",
3706
3724
  TRAVELER_X_IS_NO_CHILD: "Camera {0} - Viaggiatore {1}: non è un bambino",
@@ -4137,6 +4155,8 @@ var TRAVELERS_FORM$6 = {
4137
4155
  VALIDATION: {
4138
4156
  TRAVELER_X_FIELD: "Kamer {0} - Reiziger {1}: {2}",
4139
4157
  SINGLE_ROOM_TRAVELER_X_FIELD: "Reiziger {0}: {1}",
4158
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Kamer {0} - Reiziger {1}: {2} bevat ongeldige tekens",
4159
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Reiziger {0}: {1} bevat ongeldige tekens",
4140
4160
  TRAVELER_X_IS_NO_ADULT: "Kamer {0} - Reiziger {1}: is geen volwassene",
4141
4161
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Reiziger {0}: is geen volwassene",
4142
4162
  TRAVELER_X_IS_NO_CHILD: "Kamer {0} - Reiziger {1}: is geen kind",
@@ -4569,6 +4589,8 @@ var TRAVELERS_FORM$5 = {
4569
4589
  VALIDATION: {
4570
4590
  TRAVELER_X_FIELD: "Kamer {0} - Reiziger {1}: {2}",
4571
4591
  SINGLE_ROOM_TRAVELER_X_FIELD: "Reiziger {0}: {1}",
4592
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Kamer {0} - Reiziger {1}: {2} bevat ongeldige tekens",
4593
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Reiziger {0}: {1} bevat ongeldige tekens",
4572
4594
  TRAVELER_X_IS_NO_ADULT: "Kamer {0} - Reiziger {1}: is geen volwassene",
4573
4595
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Reiziger {0}: is geen volwassene",
4574
4596
  TRAVELER_X_IS_NO_CHILD: "Kamer {0} - Reiziger {1}: is geen kind",
@@ -5001,6 +5023,8 @@ var TRAVELERS_FORM$4 = {
5001
5023
  VALIDATION: {
5002
5024
  TRAVELER_X_FIELD: "Rom {0} – Reisende {1}: {2}",
5003
5025
  SINGLE_ROOM_TRAVELER_X_FIELD: "Reisende {0}: {1}",
5026
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Rom {0} – Reisende {1}: {2} inneholder ugyldige tegn",
5027
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Reisende {0}: {1} inneholder ugyldige tegn",
5004
5028
  TRAVELER_X_IS_NO_ADULT: "Rom {0} – Reisende {1}: er ikke voksen",
5005
5029
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Reisende {0}: er ikke voksen",
5006
5030
  TRAVELER_X_IS_NO_CHILD: "Rom {0} – Reisende {1}: er ikke barn",
@@ -5433,6 +5457,8 @@ var TRAVELERS_FORM$3 = {
5433
5457
  VALIDATION: {
5434
5458
  TRAVELER_X_FIELD: "Pokój {0} – Podróżny {1}: {2}",
5435
5459
  SINGLE_ROOM_TRAVELER_X_FIELD: "Podróżny {0}: {1}",
5460
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Pokój {0} – Podróżny {1}: {2} zawiera nieprawidłowe znaki",
5461
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Podróżny {0}: {1} zawiera nieprawidłowe znaki",
5436
5462
  TRAVELER_X_IS_NO_ADULT: "Pokój {0} – Podróżny {1}: nie jest dorosły",
5437
5463
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Podróżny {0}: nie jest dorosły",
5438
5464
  TRAVELER_X_IS_NO_CHILD: "Pokój {0} – Podróżny {1}: nie jest dzieckiem",
@@ -5865,6 +5891,8 @@ var TRAVELERS_FORM$2 = {
5865
5891
  VALIDATION: {
5866
5892
  TRAVELER_X_FIELD: "Quarto {0} – Viajante {1}: {2}",
5867
5893
  SINGLE_ROOM_TRAVELER_X_FIELD: "Viajante {0}: {1}",
5894
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Quarto {0} – Viajante {1}: {2} contém caracteres inválidos",
5895
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Viajante {0}: {1} contém caracteres inválidos",
5868
5896
  TRAVELER_X_IS_NO_ADULT: "Quarto {0} – Viajante {1}: não é adulto",
5869
5897
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Viajante {0}: não é adulto",
5870
5898
  TRAVELER_X_IS_NO_CHILD: "Quarto {0} – Viajante {1}: não é criança",
@@ -6297,6 +6325,8 @@ var TRAVELERS_FORM$1 = {
6297
6325
  VALIDATION: {
6298
6326
  TRAVELER_X_FIELD: "Rum {0} – Resenär {1}: {2}",
6299
6327
  SINGLE_ROOM_TRAVELER_X_FIELD: "Resenär {0}: {1}",
6328
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Rum {0} – Resenär {1}: {2} innehåller ogiltiga tecken",
6329
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Resenär {0}: {1} innehåller ogiltiga tecken",
6300
6330
  TRAVELER_X_IS_NO_ADULT: "Rum {0} – Resenär {1}: är inte vuxen",
6301
6331
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Resenär {0}: är inte vuxen",
6302
6332
  TRAVELER_X_IS_NO_CHILD: "Rum {0} – Resenär {1}: är inte barn",
@@ -6729,6 +6759,8 @@ var TRAVELERS_FORM = {
6729
6759
  VALIDATION: {
6730
6760
  TRAVELER_X_FIELD: "客室 {0} – 旅行者 {1}: {2}",
6731
6761
  SINGLE_ROOM_TRAVELER_X_FIELD: "旅行者 {0}: {1}",
6762
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "客室 {0} – 旅行者 {1}: {2} に無効な文字が含まれています",
6763
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "旅行者 {0}: {1} に無効な文字が含まれています",
6732
6764
  TRAVELER_X_IS_NO_ADULT: "客室 {0} – 旅行者 {1}: 大人ではありません",
6733
6765
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "旅行者 {0}: 大人ではありません",
6734
6766
  TRAVELER_X_IS_NO_CHILD: "客室 {0} – 旅行者 {1}: 子供ではありません",
@@ -21494,7 +21526,7 @@ const SharedSidebar = ({ productName, thumbnailUrl, isLoading, translations, hea
21494
21526
  translations.SIDEBAR.DEPOSIT_TEXT4,
21495
21527
  React__default["default"].createElement("strong", null, translations.SIDEBAR.DEPOSIT_TEXT5),
21496
21528
  translations.SIDEBAR.DEPOSIT_TEXT6))))) : (React__default["default"].createElement("div", { className: "pricing-summary__group" },
21497
- (agent && showCommission) && (React__default["default"].createElement("div", { className: "pricing-summary__row pricing-summary__row--total-price" },
21529
+ agent && showCommission && (React__default["default"].createElement("div", { className: "pricing-summary__row pricing-summary__row--total-price" },
21498
21530
  React__default["default"].createElement("div", { className: "pricing-summary__property" },
21499
21531
  React__default["default"].createElement("h6", { className: "pricing-summary__title" }, translations.SIDEBAR.COMMISSION)),
21500
21532
  React__default["default"].createElement("div", { className: "pricing-summary__value" },
@@ -21978,6 +22010,10 @@ const Summary = () => {
21978
22010
  function isValidEmail(email) {
21979
22011
  return !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,24}$/i.test(email);
21980
22012
  }
22013
+ const NAME_CHARACTERS_REGEX = /^[\p{L}\s-]+$/u;
22014
+ function hasInvalidNameCharacters(name) {
22015
+ return !NAME_CHARACTERS_REGEX.test(name);
22016
+ }
21981
22017
  function getAge(birthDateText, startDateText) {
21982
22018
  var birthDate = new Date(birthDateText);
21983
22019
  var startDate = new Date(startDateText);
@@ -22011,15 +22047,30 @@ const validateForm$1 = (values, agentRequired, bookingType, translations, formFi
22011
22047
  ? format$1(translations.TRAVELERS_FORM.VALIDATION.TRAVELER_X_IS_NO_CHILD, [room, pax])
22012
22048
  : format$1(translations.TRAVELERS_FORM.VALIDATION.SINGLE_ROOM_TRAVELER_X_IS_NO_CHILD, [pax]);
22013
22049
  };
22050
+ const formatTravelerFieldInvalidCharacters = (room, pax, field) => {
22051
+ return values.rooms.length > 1
22052
+ ? format$1(translations.TRAVELERS_FORM.VALIDATION.TRAVELER_X_FIELD_INVALID_CHARACTERS, [room, pax, field])
22053
+ : format$1(translations.TRAVELERS_FORM.VALIDATION.SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS, [pax, field]);
22054
+ };
22014
22055
  values.rooms.forEach((r, rIndex) => r.adults.forEach((adult, index) => {
22015
22056
  if (lodash.isEmpty(adult.gender) && isFormFieldPresent('gender')) {
22016
22057
  lodash.set(errors, `rooms[${rIndex}].adults[${index}].gender`, formatTravelerField(rIndex + 1, index + 1, translations.TRAVELERS_FORM.GENDER));
22017
22058
  }
22018
- if (lodash.isEmpty(adult.firstName) && isFormFieldPresent('firstName')) {
22019
- lodash.set(errors, `rooms[${rIndex}].adults[${index}].firstName`, formatTravelerField(rIndex + 1, index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22059
+ if (isFormFieldPresent('firstName')) {
22060
+ if (lodash.isEmpty(adult.firstName)) {
22061
+ lodash.set(errors, `rooms[${rIndex}].adults[${index}].firstName`, formatTravelerField(rIndex + 1, index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22062
+ }
22063
+ else if (hasInvalidNameCharacters(adult.firstName)) {
22064
+ lodash.set(errors, `rooms[${rIndex}].adults[${index}].firstName`, formatTravelerFieldInvalidCharacters(rIndex + 1, index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22065
+ }
22020
22066
  }
22021
- if (lodash.isEmpty(adult.lastName) && isFormFieldPresent('lastName')) {
22022
- lodash.set(errors, `rooms[${rIndex}].adults[${index}].lastName`, formatTravelerField(rIndex + 1, index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22067
+ if (isFormFieldPresent('lastName')) {
22068
+ if (lodash.isEmpty(adult.lastName)) {
22069
+ lodash.set(errors, `rooms[${rIndex}].adults[${index}].lastName`, formatTravelerField(rIndex + 1, index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22070
+ }
22071
+ else if (hasInvalidNameCharacters(adult.lastName)) {
22072
+ lodash.set(errors, `rooms[${rIndex}].adults[${index}].lastName`, formatTravelerFieldInvalidCharacters(rIndex + 1, index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22073
+ }
22023
22074
  }
22024
22075
  if (isFormFieldPresent('birthDate')) {
22025
22076
  if (lodash.isEmpty(adult.birthDate)) {
@@ -22038,11 +22089,21 @@ const validateForm$1 = (values, agentRequired, bookingType, translations, formFi
22038
22089
  if (lodash.isEmpty(child.gender) && isFormFieldPresent('gender')) {
22039
22090
  lodash.set(errors, `rooms[${rIndex}].children[${index}].gender`, formatTravelerField(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.GENDER));
22040
22091
  }
22041
- if (lodash.isEmpty(child.firstName) && isFormFieldPresent('firstName')) {
22042
- lodash.set(errors, `children[${index}].firstName`, formatTravelerField(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22092
+ if (isFormFieldPresent('firstName')) {
22093
+ if (lodash.isEmpty(child.firstName)) {
22094
+ lodash.set(errors, `children[${index}].firstName`, formatTravelerField(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22095
+ }
22096
+ else if (hasInvalidNameCharacters(child.firstName)) {
22097
+ lodash.set(errors, `children[${index}].firstName`, formatTravelerFieldInvalidCharacters(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22098
+ }
22043
22099
  }
22044
- if (lodash.isEmpty(child.lastName) && isFormFieldPresent('lastName')) {
22045
- lodash.set(errors, `rooms[${rIndex}].children[${index}].lastName`, formatTravelerField(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22100
+ if (isFormFieldPresent('lastName')) {
22101
+ if (lodash.isEmpty(child.lastName)) {
22102
+ lodash.set(errors, `rooms[${rIndex}].children[${index}].lastName`, formatTravelerField(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22103
+ }
22104
+ else if (hasInvalidNameCharacters(child.lastName)) {
22105
+ lodash.set(errors, `rooms[${rIndex}].children[${index}].lastName`, formatTravelerFieldInvalidCharacters(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22106
+ }
22046
22107
  }
22047
22108
  if (isFormFieldPresent('birthDate')) {
22048
22109
  if (lodash.isEmpty(child.birthDate)) {
@@ -31048,10 +31109,10 @@ const findAccommodationForDay = (nodes, currentDay) => {
31048
31109
  };
31049
31110
  const buildItineraryHtml = (itinerary, translations) => {
31050
31111
  if (!itinerary) {
31051
- return `
31052
- <div class="itinerary-shell">
31053
- <div class="itinerary-empty">Geen reisroute beschikbaar.</div>
31054
- </div>
31112
+ return `
31113
+ <div class="itinerary-shell">
31114
+ <div class="itinerary-empty">Geen reisroute beschikbaar.</div>
31115
+ </div>
31055
31116
  `;
31056
31117
  }
31057
31118
  const allNodes = itinerary.nodes ?? [];
@@ -31065,66 +31126,66 @@ const buildItineraryHtml = (itinerary, translations) => {
31065
31126
  const hasAccommodationInCurrentNode = uniqueItems.some(isAccommodationItem);
31066
31127
  const activeAccommodation = findAccommodationForDay(allNodes, startDay);
31067
31128
  const accommodationBanner = !hasAccommodationInCurrentNode && activeAccommodation
31068
- ? `
31069
- <div class="itinerary-node__accommodation-banner">
31070
- Accommodatie voor deze dag: <strong>${escapeHtml(getAccommodationName(activeAccommodation))}</strong>
31071
- </div>
31129
+ ? `
31130
+ <div class="itinerary-node__accommodation-banner">
31131
+ Accommodatie voor deze dag: <strong>${escapeHtml(getAccommodationName(activeAccommodation))}</strong>
31132
+ </div>
31072
31133
  `
31073
31134
  : '';
31074
31135
  const itemsHtml = hasItems
31075
31136
  ? uniqueItems
31076
- .map((item) => `
31077
- <article class="itinerary-item" data-template="${escapeHtml(item.templateName)}">
31078
- ${item.contents ?? ''}
31079
- </article>
31137
+ .map((item) => `
31138
+ <article class="itinerary-item" data-template="${escapeHtml(item.templateName)}">
31139
+ ${item.contents ?? ''}
31140
+ </article>
31080
31141
  `)
31081
31142
  .join('')
31082
31143
  : `<div class="itinerary-node__empty">${translations.ITINERARY.NO_ITEMS}</div>`;
31083
- return `
31084
- <section class="itinerary-node">
31085
- <header class="itinerary-node__header">
31086
-
31087
- <div class="itinerary-node__day">
31088
- <p class="itinerary-node__day-day">${day}</p>
31089
- <p class="itinerary-node__day-month">${month}</p>
31090
- </div>
31091
-
31092
- <div>
31093
- <h2 class="itinerary-node__title">${escapeHtml(node.title)}</h2>
31094
- </div>
31095
- </header>
31096
-
31097
- <div class="itinerary-node__content">
31098
- ${accommodationBanner}
31099
- ${itemsHtml}
31100
- </div>
31101
- </section>
31144
+ return `
31145
+ <section class="itinerary-node">
31146
+ <header class="itinerary-node__header">
31147
+
31148
+ <div class="itinerary-node__day">
31149
+ <p class="itinerary-node__day-day">${day}</p>
31150
+ <p class="itinerary-node__day-month">${month}</p>
31151
+ </div>
31152
+
31153
+ <div>
31154
+ <h2 class="itinerary-node__title">${escapeHtml(node.title)}</h2>
31155
+ </div>
31156
+ </header>
31157
+
31158
+ <div class="itinerary-node__content">
31159
+ ${accommodationBanner}
31160
+ ${itemsHtml}
31161
+ </div>
31162
+ </section>
31102
31163
  `;
31103
31164
  })
31104
31165
  .join('');
31105
31166
  const defaultItemsHtml = itinerary.defaultItems && itinerary.defaultItems.length > 0
31106
- ? `
31107
- <section class="itinerary-default-items">
31108
- <h2 class="itinerary-default-items__title">Algemene info</h2>
31167
+ ? `
31168
+ <section class="itinerary-default-items">
31169
+ <h2 class="itinerary-default-items__title">Algemene info</h2>
31109
31170
  ${getUniqueItems(itinerary.defaultItems)
31110
- .map((item) => `
31111
- <article class="itinerary-item" data-template="${escapeHtml(item.templateName)}">
31112
- ${item.contents ?? ''}
31113
- </article>
31171
+ .map((item) => `
31172
+ <article class="itinerary-item" data-template="${escapeHtml(item.templateName)}">
31173
+ ${item.contents ?? ''}
31174
+ </article>
31114
31175
  `)
31115
- .join('')}
31116
- </section>
31176
+ .join('')}
31177
+ </section>
31117
31178
  `
31118
31179
  : '';
31119
- return `
31120
- <div class="itinerary-shell">
31121
- ${itinerary.title ? `<header class="itinerary-shell__header"><h1 class="itinerary-shell__title">${escapeHtml(itinerary.title)}</h1></header>` : ''}
31122
-
31123
- <div class="itinerary-shell__content">
31124
- ${nodesHtml}
31125
- ${defaultItemsHtml}
31126
- </div>
31127
- </div>
31180
+ return `
31181
+ <div class="itinerary-shell">
31182
+ ${itinerary.title ? `<header class="itinerary-shell__header"><h1 class="itinerary-shell__title">${escapeHtml(itinerary.title)}</h1></header>` : ''}
31183
+
31184
+ <div class="itinerary-shell__content">
31185
+ ${nodesHtml}
31186
+ ${defaultItemsHtml}
31187
+ </div>
31188
+ </div>
31128
31189
  `;
31129
31190
  };
31130
31191
  const FullItinerary = ({ isLoading }) => {
@@ -31144,141 +31205,141 @@ const FullItinerary = ({ isLoading }) => {
31144
31205
  }
31145
31206
  const shadowRoot = host.shadowRoot ?? host.attachShadow({ mode: 'open' });
31146
31207
  shadowRootRef.current = shadowRoot;
31147
- shadowRoot.innerHTML = `
31148
- <style>
31149
- :host {
31150
- all: initial;
31151
- display: block;
31152
- width: 100%;
31153
- }
31154
-
31155
- *,
31156
- *::before,
31157
- *::after {
31158
- box-sizing: border-box;
31159
- }
31160
-
31161
- .itinerary-shell {
31162
- width: 100%;
31163
- margin: 0 auto;
31164
- font-family: 'Outfit', sans-serif;
31165
- color: #222;
31166
- }
31167
-
31168
- .itinerary-shell__header {
31169
- margin-bottom: 24px;
31170
- }
31171
-
31172
- .itinerary-shell__title {
31173
- margin: 0;
31174
- font-size: 32px;
31175
- line-height: 1.2;
31176
- }
31177
-
31178
- .itinerary-shell__content {
31179
- display: grid;
31180
- gap: 24px;
31181
- }
31182
-
31183
- .itinerary-node {
31184
- border: 1px solid #e5e7eb;
31185
- border-radius: 16px;
31186
- overflow: hidden;
31187
- background: #fff;
31188
- box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
31189
- }
31190
-
31191
- .itinerary-node__header {
31192
- display: flex;
31193
- gap: 16px;
31194
- align-items: center;
31195
- border-bottom: 1px solid #eef0f2;
31196
- background: #fafafa;
31197
- }
31198
-
31199
- .itinerary-node__day {
31200
- flex: 50px 0 0;
31201
- display: flex;
31202
- flex-flow: column;
31203
- align-items: center;
31204
- justify-content: center;
31205
- background: #1f9470;
31206
- color: white;
31207
- border: 1.5px solid var(--tide-booking-color-secondary);
31208
- }
31209
-
31210
- .itinerary-node__day-month {
31211
- margin: 0px;
31212
- }
31213
-
31214
- .itinerary-node__day-day {
31215
- margin: 0px;
31216
- font-weight: var(--tide-booking-search-results-label-date-month-font-weight);
31217
- color: var(--tide-booking-search-results-label-date-month-color);
31218
- font-size: 24px;
31219
- }
31220
-
31221
- .itinerary-node__title {
31222
- margin: 0;
31223
- font-size: 22px;
31224
- line-height: 1.25;
31225
- }
31226
-
31227
- .itinerary-node__content {
31228
- display: grid;
31229
- gap: 20px;
31230
- padding: 20px;
31231
- }
31232
-
31233
- .itinerary-node__accommodation-banner {
31234
- padding: 12px 16px;
31235
- border: 1px solid #dbeafe;
31236
- border-radius: 12px;
31237
- background: #eff6ff;
31238
- color: #1e3a8a;
31239
- font-size: 14px;
31240
- line-height: 1.4;
31241
- }
31242
-
31243
- .itinerary-item {
31244
- display: block;
31245
- border-radius: 12px;
31246
- overflow: hidden;
31247
- background: #fff;
31248
- }
31249
-
31250
- .itinerary-node__empty,
31251
- .itinerary-empty {
31252
- padding: 20px;
31253
- border: 1px dashed #d1d5db;
31254
- border-radius: 12px;
31255
- color: #6b7280;
31256
- background: #fafafa;
31257
- }
31258
-
31259
- .itinerary-default-items {
31260
- border: 1px solid #e5e7eb;
31261
- border-radius: 16px;
31262
- padding: 20px;
31263
- background: #fff;
31264
- box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
31265
- }
31266
-
31267
- .itinerary-default-items__title {
31268
- margin: 0 0 16px;
31269
- font-size: 22px;
31270
- }
31271
-
31272
- @media (max-width: 768px) {
31273
- .itinerary-shell {
31274
- padding: 16px;
31275
- }
31276
- }
31277
-
31278
- ${itinerary?.styleSheetBody ?? ''}
31279
- </style>
31280
-
31281
- ${html}
31208
+ shadowRoot.innerHTML = `
31209
+ <style>
31210
+ :host {
31211
+ all: initial;
31212
+ display: block;
31213
+ width: 100%;
31214
+ }
31215
+
31216
+ *,
31217
+ *::before,
31218
+ *::after {
31219
+ box-sizing: border-box;
31220
+ }
31221
+
31222
+ .itinerary-shell {
31223
+ width: 100%;
31224
+ margin: 0 auto;
31225
+ font-family: 'Outfit', sans-serif;
31226
+ color: #222;
31227
+ }
31228
+
31229
+ .itinerary-shell__header {
31230
+ margin-bottom: 24px;
31231
+ }
31232
+
31233
+ .itinerary-shell__title {
31234
+ margin: 0;
31235
+ font-size: 32px;
31236
+ line-height: 1.2;
31237
+ }
31238
+
31239
+ .itinerary-shell__content {
31240
+ display: grid;
31241
+ gap: 24px;
31242
+ }
31243
+
31244
+ .itinerary-node {
31245
+ border: 1px solid #e5e7eb;
31246
+ border-radius: 16px;
31247
+ overflow: hidden;
31248
+ background: #fff;
31249
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
31250
+ }
31251
+
31252
+ .itinerary-node__header {
31253
+ display: flex;
31254
+ gap: 16px;
31255
+ align-items: center;
31256
+ border-bottom: 1px solid #eef0f2;
31257
+ background: #fafafa;
31258
+ }
31259
+
31260
+ .itinerary-node__day {
31261
+ flex: 50px 0 0;
31262
+ display: flex;
31263
+ flex-flow: column;
31264
+ align-items: center;
31265
+ justify-content: center;
31266
+ background: #1f9470;
31267
+ color: white;
31268
+ border: 1.5px solid var(--tide-booking-color-secondary);
31269
+ }
31270
+
31271
+ .itinerary-node__day-month {
31272
+ margin: 0px;
31273
+ }
31274
+
31275
+ .itinerary-node__day-day {
31276
+ margin: 0px;
31277
+ font-weight: var(--tide-booking-search-results-label-date-month-font-weight);
31278
+ color: var(--tide-booking-search-results-label-date-month-color);
31279
+ font-size: 24px;
31280
+ }
31281
+
31282
+ .itinerary-node__title {
31283
+ margin: 0;
31284
+ font-size: 22px;
31285
+ line-height: 1.25;
31286
+ }
31287
+
31288
+ .itinerary-node__content {
31289
+ display: grid;
31290
+ gap: 20px;
31291
+ padding: 20px;
31292
+ }
31293
+
31294
+ .itinerary-node__accommodation-banner {
31295
+ padding: 12px 16px;
31296
+ border: 1px solid #dbeafe;
31297
+ border-radius: 12px;
31298
+ background: #eff6ff;
31299
+ color: #1e3a8a;
31300
+ font-size: 14px;
31301
+ line-height: 1.4;
31302
+ }
31303
+
31304
+ .itinerary-item {
31305
+ display: block;
31306
+ border-radius: 12px;
31307
+ overflow: hidden;
31308
+ background: #fff;
31309
+ }
31310
+
31311
+ .itinerary-node__empty,
31312
+ .itinerary-empty {
31313
+ padding: 20px;
31314
+ border: 1px dashed #d1d5db;
31315
+ border-radius: 12px;
31316
+ color: #6b7280;
31317
+ background: #fafafa;
31318
+ }
31319
+
31320
+ .itinerary-default-items {
31321
+ border: 1px solid #e5e7eb;
31322
+ border-radius: 16px;
31323
+ padding: 20px;
31324
+ background: #fff;
31325
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
31326
+ }
31327
+
31328
+ .itinerary-default-items__title {
31329
+ margin: 0 0 16px;
31330
+ font-size: 22px;
31331
+ }
31332
+
31333
+ @media (max-width: 768px) {
31334
+ .itinerary-shell {
31335
+ padding: 16px;
31336
+ }
31337
+ }
31338
+
31339
+ ${itinerary?.styleSheetBody ?? ''}
31340
+ </style>
31341
+
31342
+ ${html}
31282
31343
  `;
31283
31344
  }, [html, itinerary?.styleSheetBody, isLoading]);
31284
31345
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
@@ -35973,20 +36034,20 @@ function ItineraryMapView({ destinations: propDestinations, adults = 2, dateFrom
35973
36034
  const isStartEnd = dest.isStart || dest.isEnd;
35974
36035
  let iconHtml;
35975
36036
  if (isStartEnd) {
35976
- iconHtml = `
35977
- <div class="map-view__marker map-view__marker--plane">
35978
- <svg viewBox="0 0 576 512" fill="currentColor" width="16" height="16" xmlns="http://www.w3.org/2000/svg">
35979
- <path d="M482.3 192c34.2 0 93.7 29 93.7 64c0 36-59.5 64-93.7 64l-116.6 0L265.2 495.9c-5.7 10.1-16.3 16.1-27.8 16.1l-56.2 0c-10.6 0-18.3-10.3-15.8-20.6l49-196.3L112 288 68.8 377.6c-3 6.1-9.2 10.4-16 10.4l-2.8 0c-9.2 0-16-8.8-13.3-17.6L80 256L36.7 141.6C34 132.8 40.8 124 50 124l2.8 0c6.8 0 13 4.3 16 10.4L112 224l102.9 0-49-196.3C163.5 17.3 171.2 7 181.8 7l56.2 0c11.5 0 22.1 6 27.8 16.1L365.7 192l116.6 0z"/>
35980
- </svg>
36037
+ iconHtml = `
36038
+ <div class="map-view__marker map-view__marker--plane">
36039
+ <svg viewBox="0 0 576 512" fill="currentColor" width="16" height="16" xmlns="http://www.w3.org/2000/svg">
36040
+ <path d="M482.3 192c34.2 0 93.7 29 93.7 64c0 36-59.5 64-93.7 64l-116.6 0L265.2 495.9c-5.7 10.1-16.3 16.1-27.8 16.1l-56.2 0c-10.6 0-18.3-10.3-15.8-20.6l49-196.3L112 288 68.8 377.6c-3 6.1-9.2 10.4-16 10.4l-2.8 0c-9.2 0-16-8.8-13.3-17.6L80 256L36.7 141.6C34 132.8 40.8 124 50 124l2.8 0c6.8 0 13 4.3 16 10.4L112 224l102.9 0-49-196.3C163.5 17.3 171.2 7 181.8 7l56.2 0c11.5 0 22.1 6 27.8 16.1L365.7 192l116.6 0z"/>
36041
+ </svg>
35981
36042
  </div>`;
35982
36043
  }
35983
36044
  else {
35984
36045
  stopIndex++;
35985
36046
  const imgStyle = dest.imageUrl ? `style="background-image:url('${dest.imageUrl}')"` : '';
35986
- iconHtml = `
35987
- <div class="map-view__marker map-view__marker--stop" ${imgStyle}>
35988
- ${!dest.imageUrl ? `<span class="map-view__marker-number">${stopIndex}</span>` : ''}
35989
- <span class="map-view__marker-badge">${stopIndex}</span>
36047
+ iconHtml = `
36048
+ <div class="map-view__marker map-view__marker--stop" ${imgStyle}>
36049
+ ${!dest.imageUrl ? `<span class="map-view__marker-number">${stopIndex}</span>` : ''}
36050
+ <span class="map-view__marker-badge">${stopIndex}</span>
35990
36051
  </div>`;
35991
36052
  }
35992
36053
  const icon = L.divIcon({
@@ -208,6 +208,8 @@ var TRAVELERS_FORM$f = {
208
208
  VALIDATION: {
209
209
  TRAVELER_X_FIELD: "الغرفة {0} - المسافر {1}: {2}",
210
210
  SINGLE_ROOM_TRAVELER_X_FIELD: "المسافر {0}: {1}",
211
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "الغرفة {0} - المسافر {1}: {2} يحتوي على أحرف غير صالحة",
212
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "المسافر {0}: {1} يحتوي على أحرف غير صالحة",
211
213
  TRAVELER_X_IS_NO_ADULT: "الغرفة {0} - المسافر {1}: ليس بالغًا",
212
214
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "المسافر {0}: ليس بالغًا",
213
215
  TRAVELER_X_IS_NO_CHILD: "الغرفة {0} - المسافر {1}: ليس طفلًا",
@@ -640,6 +642,8 @@ var TRAVELERS_FORM$e = {
640
642
  VALIDATION: {
641
643
  TRAVELER_X_FIELD: "Værelse {0} - Rejsende {1}: {2}",
642
644
  SINGLE_ROOM_TRAVELER_X_FIELD: "Rejsende {0}: {1}",
645
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Værelse {0} - Rejsende {1}: {2} indeholder ugyldige tegn",
646
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Rejsende {0}: {1} indeholder ugyldige tegn",
643
647
  TRAVELER_X_IS_NO_ADULT: "Værelse {0} - Rejsende {1}: er ikke voksen",
644
648
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Rejsende {0}: er ikke voksen",
645
649
  TRAVELER_X_IS_NO_CHILD: "Værelse {0} - Rejsende {1}: er ikke barn",
@@ -1072,6 +1076,8 @@ var TRAVELERS_FORM$d = {
1072
1076
  VALIDATION: {
1073
1077
  TRAVELER_X_FIELD: "Zimmer {0} - Reisender {1}: {2}",
1074
1078
  SINGLE_ROOM_TRAVELER_X_FIELD: "Reisender {0}: {1}",
1079
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Zimmer {0} - Reisender {1}: {2} enthält ungültige Zeichen",
1080
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Reisender {0}: {1} enthält ungültige Zeichen",
1075
1081
  TRAVELER_X_IS_NO_ADULT: "Zimmer {0} - Reisender {1}: ist kein Erwachsener",
1076
1082
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Reisender {0}: ist kein Erwachsener",
1077
1083
  TRAVELER_X_IS_NO_CHILD: "Zimmer {0} - Reisender {1}: ist kein Kind",
@@ -1508,6 +1514,8 @@ var TRAVELERS_FORM$c = {
1508
1514
  VALIDATION: {
1509
1515
  TRAVELER_X_FIELD: "Room {0} - Traveler {1}: {2}",
1510
1516
  SINGLE_ROOM_TRAVELER_X_FIELD: "Traveler {0}: {1}",
1517
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Room {0} - Traveler {1}: {2} contains invalid characters",
1518
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Traveler {0}: {1} contains invalid characters",
1511
1519
  TRAVELER_X_IS_NO_ADULT: "Room {0} - Traveler {1}: is not an adult",
1512
1520
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Traveler {0}: is not an adult",
1513
1521
  TRAVELER_X_IS_NO_CHILD: "Room {0} - Traveler {1}: is not a child",
@@ -1940,6 +1948,8 @@ var TRAVELERS_FORM$b = {
1940
1948
  VALIDATION: {
1941
1949
  TRAVELER_X_FIELD: "Habitación {0} - Viajero {1}: {2}",
1942
1950
  SINGLE_ROOM_TRAVELER_X_FIELD: "Viajero {0}: {1}",
1951
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Habitación {0} - Viajero {1}: {2} contiene caracteres no válidos",
1952
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Viajero {0}: {1} contiene caracteres no válidos",
1943
1953
  TRAVELER_X_IS_NO_ADULT: "Habitación {0} - Viajero {1}: no es adulto",
1944
1954
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Viajero {0}: no es adulto",
1945
1955
  TRAVELER_X_IS_NO_CHILD: "Habitación {0} - Viajero {1}: no es niño",
@@ -2376,6 +2386,8 @@ var TRAVELERS_FORM$a = {
2376
2386
  VALIDATION: {
2377
2387
  TRAVELER_X_FIELD: "Chambre {0} - Voyageur {1} : {2}",
2378
2388
  SINGLE_ROOM_TRAVELER_X_FIELD: "Voyageur {0} : {1}",
2389
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Chambre {0} - Voyageur {1} : {2} contient des caractères non valides",
2390
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Voyageur {0} : {1} contient des caractères non valides",
2379
2391
  TRAVELER_X_IS_NO_ADULT: "Chambre {0} - Voyageur {1} : n'est pas un adulte",
2380
2392
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Voyageur {0} : n'est pas un adulte",
2381
2393
  TRAVELER_X_IS_NO_CHILD: "Chambre {0} - Voyageur {1} : n'est pas un enfant",
@@ -2808,6 +2820,8 @@ var TRAVELERS_FORM$9 = {
2808
2820
  VALIDATION: {
2809
2821
  TRAVELER_X_FIELD: "Chambre {0} - Voyageur {1} : {2}",
2810
2822
  SINGLE_ROOM_TRAVELER_X_FIELD: "Voyageur {0} : {1}",
2823
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Chambre {0} - Voyageur {1} : {2} contient des caractères non valides",
2824
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Voyageur {0} : {1} contient des caractères non valides",
2811
2825
  TRAVELER_X_IS_NO_ADULT: "Chambre {0} - Voyageur {1} : n'est pas un adulte",
2812
2826
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Voyageur {0} : n'est pas un adulte",
2813
2827
  TRAVELER_X_IS_NO_CHILD: "Chambre {0} - Voyageur {1} : n'est pas un enfant",
@@ -3240,6 +3254,8 @@ var TRAVELERS_FORM$8 = {
3240
3254
  VALIDATION: {
3241
3255
  TRAVELER_X_FIELD: "Herbergi {0} - Farþegi {1}: {2}",
3242
3256
  SINGLE_ROOM_TRAVELER_X_FIELD: "Farþegi {0}: {1}",
3257
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Herbergi {0} - Farþegi {1}: {2} inniheldur ógild tákn",
3258
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Farþegi {0}: {1} inniheldur ógild tákn",
3243
3259
  TRAVELER_X_IS_NO_ADULT: "Herbergi {0} - Farþegi {1}: er ekki fullorðinn",
3244
3260
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Farþegi {0}: er ekki fullorðinn",
3245
3261
  TRAVELER_X_IS_NO_CHILD: "Herbergi {0} - Farþegi {1}: er ekki barn",
@@ -3672,6 +3688,8 @@ var TRAVELERS_FORM$7 = {
3672
3688
  VALIDATION: {
3673
3689
  TRAVELER_X_FIELD: "Camera {0} - Viaggiatore {1}: {2}",
3674
3690
  SINGLE_ROOM_TRAVELER_X_FIELD: "Viaggiatore {0}: {1}",
3691
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Camera {0} - Viaggiatore {1}: {2} contiene caratteri non validi",
3692
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Viaggiatore {0}: {1} contiene caratteri non validi",
3675
3693
  TRAVELER_X_IS_NO_ADULT: "Camera {0} - Viaggiatore {1}: non è un adulto",
3676
3694
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Viaggiatore {0}: non è un adulto",
3677
3695
  TRAVELER_X_IS_NO_CHILD: "Camera {0} - Viaggiatore {1}: non è un bambino",
@@ -4108,6 +4126,8 @@ var TRAVELERS_FORM$6 = {
4108
4126
  VALIDATION: {
4109
4127
  TRAVELER_X_FIELD: "Kamer {0} - Reiziger {1}: {2}",
4110
4128
  SINGLE_ROOM_TRAVELER_X_FIELD: "Reiziger {0}: {1}",
4129
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Kamer {0} - Reiziger {1}: {2} bevat ongeldige tekens",
4130
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Reiziger {0}: {1} bevat ongeldige tekens",
4111
4131
  TRAVELER_X_IS_NO_ADULT: "Kamer {0} - Reiziger {1}: is geen volwassene",
4112
4132
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Reiziger {0}: is geen volwassene",
4113
4133
  TRAVELER_X_IS_NO_CHILD: "Kamer {0} - Reiziger {1}: is geen kind",
@@ -4540,6 +4560,8 @@ var TRAVELERS_FORM$5 = {
4540
4560
  VALIDATION: {
4541
4561
  TRAVELER_X_FIELD: "Kamer {0} - Reiziger {1}: {2}",
4542
4562
  SINGLE_ROOM_TRAVELER_X_FIELD: "Reiziger {0}: {1}",
4563
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Kamer {0} - Reiziger {1}: {2} bevat ongeldige tekens",
4564
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Reiziger {0}: {1} bevat ongeldige tekens",
4543
4565
  TRAVELER_X_IS_NO_ADULT: "Kamer {0} - Reiziger {1}: is geen volwassene",
4544
4566
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Reiziger {0}: is geen volwassene",
4545
4567
  TRAVELER_X_IS_NO_CHILD: "Kamer {0} - Reiziger {1}: is geen kind",
@@ -4972,6 +4994,8 @@ var TRAVELERS_FORM$4 = {
4972
4994
  VALIDATION: {
4973
4995
  TRAVELER_X_FIELD: "Rom {0} – Reisende {1}: {2}",
4974
4996
  SINGLE_ROOM_TRAVELER_X_FIELD: "Reisende {0}: {1}",
4997
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Rom {0} – Reisende {1}: {2} inneholder ugyldige tegn",
4998
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Reisende {0}: {1} inneholder ugyldige tegn",
4975
4999
  TRAVELER_X_IS_NO_ADULT: "Rom {0} – Reisende {1}: er ikke voksen",
4976
5000
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Reisende {0}: er ikke voksen",
4977
5001
  TRAVELER_X_IS_NO_CHILD: "Rom {0} – Reisende {1}: er ikke barn",
@@ -5404,6 +5428,8 @@ var TRAVELERS_FORM$3 = {
5404
5428
  VALIDATION: {
5405
5429
  TRAVELER_X_FIELD: "Pokój {0} – Podróżny {1}: {2}",
5406
5430
  SINGLE_ROOM_TRAVELER_X_FIELD: "Podróżny {0}: {1}",
5431
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Pokój {0} – Podróżny {1}: {2} zawiera nieprawidłowe znaki",
5432
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Podróżny {0}: {1} zawiera nieprawidłowe znaki",
5407
5433
  TRAVELER_X_IS_NO_ADULT: "Pokój {0} – Podróżny {1}: nie jest dorosły",
5408
5434
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Podróżny {0}: nie jest dorosły",
5409
5435
  TRAVELER_X_IS_NO_CHILD: "Pokój {0} – Podróżny {1}: nie jest dzieckiem",
@@ -5836,6 +5862,8 @@ var TRAVELERS_FORM$2 = {
5836
5862
  VALIDATION: {
5837
5863
  TRAVELER_X_FIELD: "Quarto {0} – Viajante {1}: {2}",
5838
5864
  SINGLE_ROOM_TRAVELER_X_FIELD: "Viajante {0}: {1}",
5865
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Quarto {0} – Viajante {1}: {2} contém caracteres inválidos",
5866
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Viajante {0}: {1} contém caracteres inválidos",
5839
5867
  TRAVELER_X_IS_NO_ADULT: "Quarto {0} – Viajante {1}: não é adulto",
5840
5868
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Viajante {0}: não é adulto",
5841
5869
  TRAVELER_X_IS_NO_CHILD: "Quarto {0} – Viajante {1}: não é criança",
@@ -6268,6 +6296,8 @@ var TRAVELERS_FORM$1 = {
6268
6296
  VALIDATION: {
6269
6297
  TRAVELER_X_FIELD: "Rum {0} – Resenär {1}: {2}",
6270
6298
  SINGLE_ROOM_TRAVELER_X_FIELD: "Resenär {0}: {1}",
6299
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "Rum {0} – Resenär {1}: {2} innehåller ogiltiga tecken",
6300
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "Resenär {0}: {1} innehåller ogiltiga tecken",
6271
6301
  TRAVELER_X_IS_NO_ADULT: "Rum {0} – Resenär {1}: är inte vuxen",
6272
6302
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "Resenär {0}: är inte vuxen",
6273
6303
  TRAVELER_X_IS_NO_CHILD: "Rum {0} – Resenär {1}: är inte barn",
@@ -6700,6 +6730,8 @@ var TRAVELERS_FORM = {
6700
6730
  VALIDATION: {
6701
6731
  TRAVELER_X_FIELD: "客室 {0} – 旅行者 {1}: {2}",
6702
6732
  SINGLE_ROOM_TRAVELER_X_FIELD: "旅行者 {0}: {1}",
6733
+ TRAVELER_X_FIELD_INVALID_CHARACTERS: "客室 {0} – 旅行者 {1}: {2} に無効な文字が含まれています",
6734
+ SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS: "旅行者 {0}: {1} に無効な文字が含まれています",
6703
6735
  TRAVELER_X_IS_NO_ADULT: "客室 {0} – 旅行者 {1}: 大人ではありません",
6704
6736
  SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: "旅行者 {0}: 大人ではありません",
6705
6737
  TRAVELER_X_IS_NO_CHILD: "客室 {0} – 旅行者 {1}: 子供ではありません",
@@ -21465,7 +21497,7 @@ const SharedSidebar = ({ productName, thumbnailUrl, isLoading, translations, hea
21465
21497
  translations.SIDEBAR.DEPOSIT_TEXT4,
21466
21498
  React__default.createElement("strong", null, translations.SIDEBAR.DEPOSIT_TEXT5),
21467
21499
  translations.SIDEBAR.DEPOSIT_TEXT6))))) : (React__default.createElement("div", { className: "pricing-summary__group" },
21468
- (agent && showCommission) && (React__default.createElement("div", { className: "pricing-summary__row pricing-summary__row--total-price" },
21500
+ agent && showCommission && (React__default.createElement("div", { className: "pricing-summary__row pricing-summary__row--total-price" },
21469
21501
  React__default.createElement("div", { className: "pricing-summary__property" },
21470
21502
  React__default.createElement("h6", { className: "pricing-summary__title" }, translations.SIDEBAR.COMMISSION)),
21471
21503
  React__default.createElement("div", { className: "pricing-summary__value" },
@@ -21949,6 +21981,10 @@ const Summary = () => {
21949
21981
  function isValidEmail(email) {
21950
21982
  return !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,24}$/i.test(email);
21951
21983
  }
21984
+ const NAME_CHARACTERS_REGEX = /^[\p{L}\s-]+$/u;
21985
+ function hasInvalidNameCharacters(name) {
21986
+ return !NAME_CHARACTERS_REGEX.test(name);
21987
+ }
21952
21988
  function getAge(birthDateText, startDateText) {
21953
21989
  var birthDate = new Date(birthDateText);
21954
21990
  var startDate = new Date(startDateText);
@@ -21982,15 +22018,30 @@ const validateForm$1 = (values, agentRequired, bookingType, translations, formFi
21982
22018
  ? format$1(translations.TRAVELERS_FORM.VALIDATION.TRAVELER_X_IS_NO_CHILD, [room, pax])
21983
22019
  : format$1(translations.TRAVELERS_FORM.VALIDATION.SINGLE_ROOM_TRAVELER_X_IS_NO_CHILD, [pax]);
21984
22020
  };
22021
+ const formatTravelerFieldInvalidCharacters = (room, pax, field) => {
22022
+ return values.rooms.length > 1
22023
+ ? format$1(translations.TRAVELERS_FORM.VALIDATION.TRAVELER_X_FIELD_INVALID_CHARACTERS, [room, pax, field])
22024
+ : format$1(translations.TRAVELERS_FORM.VALIDATION.SINGLE_ROOM_TRAVELER_X_FIELD_INVALID_CHARACTERS, [pax, field]);
22025
+ };
21985
22026
  values.rooms.forEach((r, rIndex) => r.adults.forEach((adult, index) => {
21986
22027
  if (isEmpty$1(adult.gender) && isFormFieldPresent('gender')) {
21987
22028
  set(errors, `rooms[${rIndex}].adults[${index}].gender`, formatTravelerField(rIndex + 1, index + 1, translations.TRAVELERS_FORM.GENDER));
21988
22029
  }
21989
- if (isEmpty$1(adult.firstName) && isFormFieldPresent('firstName')) {
21990
- set(errors, `rooms[${rIndex}].adults[${index}].firstName`, formatTravelerField(rIndex + 1, index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22030
+ if (isFormFieldPresent('firstName')) {
22031
+ if (isEmpty$1(adult.firstName)) {
22032
+ set(errors, `rooms[${rIndex}].adults[${index}].firstName`, formatTravelerField(rIndex + 1, index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22033
+ }
22034
+ else if (hasInvalidNameCharacters(adult.firstName)) {
22035
+ set(errors, `rooms[${rIndex}].adults[${index}].firstName`, formatTravelerFieldInvalidCharacters(rIndex + 1, index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22036
+ }
21991
22037
  }
21992
- if (isEmpty$1(adult.lastName) && isFormFieldPresent('lastName')) {
21993
- set(errors, `rooms[${rIndex}].adults[${index}].lastName`, formatTravelerField(rIndex + 1, index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22038
+ if (isFormFieldPresent('lastName')) {
22039
+ if (isEmpty$1(adult.lastName)) {
22040
+ set(errors, `rooms[${rIndex}].adults[${index}].lastName`, formatTravelerField(rIndex + 1, index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22041
+ }
22042
+ else if (hasInvalidNameCharacters(adult.lastName)) {
22043
+ set(errors, `rooms[${rIndex}].adults[${index}].lastName`, formatTravelerFieldInvalidCharacters(rIndex + 1, index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22044
+ }
21994
22045
  }
21995
22046
  if (isFormFieldPresent('birthDate')) {
21996
22047
  if (isEmpty$1(adult.birthDate)) {
@@ -22009,11 +22060,21 @@ const validateForm$1 = (values, agentRequired, bookingType, translations, formFi
22009
22060
  if (isEmpty$1(child.gender) && isFormFieldPresent('gender')) {
22010
22061
  set(errors, `rooms[${rIndex}].children[${index}].gender`, formatTravelerField(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.GENDER));
22011
22062
  }
22012
- if (isEmpty$1(child.firstName) && isFormFieldPresent('firstName')) {
22013
- set(errors, `children[${index}].firstName`, formatTravelerField(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22063
+ if (isFormFieldPresent('firstName')) {
22064
+ if (isEmpty$1(child.firstName)) {
22065
+ set(errors, `children[${index}].firstName`, formatTravelerField(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22066
+ }
22067
+ else if (hasInvalidNameCharacters(child.firstName)) {
22068
+ set(errors, `children[${index}].firstName`, formatTravelerFieldInvalidCharacters(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.FIRST_NAME));
22069
+ }
22014
22070
  }
22015
- if (isEmpty$1(child.lastName) && isFormFieldPresent('lastName')) {
22016
- set(errors, `rooms[${rIndex}].children[${index}].lastName`, formatTravelerField(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22071
+ if (isFormFieldPresent('lastName')) {
22072
+ if (isEmpty$1(child.lastName)) {
22073
+ set(errors, `rooms[${rIndex}].children[${index}].lastName`, formatTravelerField(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22074
+ }
22075
+ else if (hasInvalidNameCharacters(child.lastName)) {
22076
+ set(errors, `rooms[${rIndex}].children[${index}].lastName`, formatTravelerFieldInvalidCharacters(rIndex + 1, r.adults.length + index + 1, translations.TRAVELERS_FORM.LAST_NAME));
22077
+ }
22017
22078
  }
22018
22079
  if (isFormFieldPresent('birthDate')) {
22019
22080
  if (isEmpty$1(child.birthDate)) {
@@ -31019,10 +31080,10 @@ const findAccommodationForDay = (nodes, currentDay) => {
31019
31080
  };
31020
31081
  const buildItineraryHtml = (itinerary, translations) => {
31021
31082
  if (!itinerary) {
31022
- return `
31023
- <div class="itinerary-shell">
31024
- <div class="itinerary-empty">Geen reisroute beschikbaar.</div>
31025
- </div>
31083
+ return `
31084
+ <div class="itinerary-shell">
31085
+ <div class="itinerary-empty">Geen reisroute beschikbaar.</div>
31086
+ </div>
31026
31087
  `;
31027
31088
  }
31028
31089
  const allNodes = itinerary.nodes ?? [];
@@ -31036,66 +31097,66 @@ const buildItineraryHtml = (itinerary, translations) => {
31036
31097
  const hasAccommodationInCurrentNode = uniqueItems.some(isAccommodationItem);
31037
31098
  const activeAccommodation = findAccommodationForDay(allNodes, startDay);
31038
31099
  const accommodationBanner = !hasAccommodationInCurrentNode && activeAccommodation
31039
- ? `
31040
- <div class="itinerary-node__accommodation-banner">
31041
- Accommodatie voor deze dag: <strong>${escapeHtml(getAccommodationName(activeAccommodation))}</strong>
31042
- </div>
31100
+ ? `
31101
+ <div class="itinerary-node__accommodation-banner">
31102
+ Accommodatie voor deze dag: <strong>${escapeHtml(getAccommodationName(activeAccommodation))}</strong>
31103
+ </div>
31043
31104
  `
31044
31105
  : '';
31045
31106
  const itemsHtml = hasItems
31046
31107
  ? uniqueItems
31047
- .map((item) => `
31048
- <article class="itinerary-item" data-template="${escapeHtml(item.templateName)}">
31049
- ${item.contents ?? ''}
31050
- </article>
31108
+ .map((item) => `
31109
+ <article class="itinerary-item" data-template="${escapeHtml(item.templateName)}">
31110
+ ${item.contents ?? ''}
31111
+ </article>
31051
31112
  `)
31052
31113
  .join('')
31053
31114
  : `<div class="itinerary-node__empty">${translations.ITINERARY.NO_ITEMS}</div>`;
31054
- return `
31055
- <section class="itinerary-node">
31056
- <header class="itinerary-node__header">
31057
-
31058
- <div class="itinerary-node__day">
31059
- <p class="itinerary-node__day-day">${day}</p>
31060
- <p class="itinerary-node__day-month">${month}</p>
31061
- </div>
31062
-
31063
- <div>
31064
- <h2 class="itinerary-node__title">${escapeHtml(node.title)}</h2>
31065
- </div>
31066
- </header>
31067
-
31068
- <div class="itinerary-node__content">
31069
- ${accommodationBanner}
31070
- ${itemsHtml}
31071
- </div>
31072
- </section>
31115
+ return `
31116
+ <section class="itinerary-node">
31117
+ <header class="itinerary-node__header">
31118
+
31119
+ <div class="itinerary-node__day">
31120
+ <p class="itinerary-node__day-day">${day}</p>
31121
+ <p class="itinerary-node__day-month">${month}</p>
31122
+ </div>
31123
+
31124
+ <div>
31125
+ <h2 class="itinerary-node__title">${escapeHtml(node.title)}</h2>
31126
+ </div>
31127
+ </header>
31128
+
31129
+ <div class="itinerary-node__content">
31130
+ ${accommodationBanner}
31131
+ ${itemsHtml}
31132
+ </div>
31133
+ </section>
31073
31134
  `;
31074
31135
  })
31075
31136
  .join('');
31076
31137
  const defaultItemsHtml = itinerary.defaultItems && itinerary.defaultItems.length > 0
31077
- ? `
31078
- <section class="itinerary-default-items">
31079
- <h2 class="itinerary-default-items__title">Algemene info</h2>
31138
+ ? `
31139
+ <section class="itinerary-default-items">
31140
+ <h2 class="itinerary-default-items__title">Algemene info</h2>
31080
31141
  ${getUniqueItems(itinerary.defaultItems)
31081
- .map((item) => `
31082
- <article class="itinerary-item" data-template="${escapeHtml(item.templateName)}">
31083
- ${item.contents ?? ''}
31084
- </article>
31142
+ .map((item) => `
31143
+ <article class="itinerary-item" data-template="${escapeHtml(item.templateName)}">
31144
+ ${item.contents ?? ''}
31145
+ </article>
31085
31146
  `)
31086
- .join('')}
31087
- </section>
31147
+ .join('')}
31148
+ </section>
31088
31149
  `
31089
31150
  : '';
31090
- return `
31091
- <div class="itinerary-shell">
31092
- ${itinerary.title ? `<header class="itinerary-shell__header"><h1 class="itinerary-shell__title">${escapeHtml(itinerary.title)}</h1></header>` : ''}
31093
-
31094
- <div class="itinerary-shell__content">
31095
- ${nodesHtml}
31096
- ${defaultItemsHtml}
31097
- </div>
31098
- </div>
31151
+ return `
31152
+ <div class="itinerary-shell">
31153
+ ${itinerary.title ? `<header class="itinerary-shell__header"><h1 class="itinerary-shell__title">${escapeHtml(itinerary.title)}</h1></header>` : ''}
31154
+
31155
+ <div class="itinerary-shell__content">
31156
+ ${nodesHtml}
31157
+ ${defaultItemsHtml}
31158
+ </div>
31159
+ </div>
31099
31160
  `;
31100
31161
  };
31101
31162
  const FullItinerary = ({ isLoading }) => {
@@ -31115,141 +31176,141 @@ const FullItinerary = ({ isLoading }) => {
31115
31176
  }
31116
31177
  const shadowRoot = host.shadowRoot ?? host.attachShadow({ mode: 'open' });
31117
31178
  shadowRootRef.current = shadowRoot;
31118
- shadowRoot.innerHTML = `
31119
- <style>
31120
- :host {
31121
- all: initial;
31122
- display: block;
31123
- width: 100%;
31124
- }
31125
-
31126
- *,
31127
- *::before,
31128
- *::after {
31129
- box-sizing: border-box;
31130
- }
31131
-
31132
- .itinerary-shell {
31133
- width: 100%;
31134
- margin: 0 auto;
31135
- font-family: 'Outfit', sans-serif;
31136
- color: #222;
31137
- }
31138
-
31139
- .itinerary-shell__header {
31140
- margin-bottom: 24px;
31141
- }
31142
-
31143
- .itinerary-shell__title {
31144
- margin: 0;
31145
- font-size: 32px;
31146
- line-height: 1.2;
31147
- }
31148
-
31149
- .itinerary-shell__content {
31150
- display: grid;
31151
- gap: 24px;
31152
- }
31153
-
31154
- .itinerary-node {
31155
- border: 1px solid #e5e7eb;
31156
- border-radius: 16px;
31157
- overflow: hidden;
31158
- background: #fff;
31159
- box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
31160
- }
31161
-
31162
- .itinerary-node__header {
31163
- display: flex;
31164
- gap: 16px;
31165
- align-items: center;
31166
- border-bottom: 1px solid #eef0f2;
31167
- background: #fafafa;
31168
- }
31169
-
31170
- .itinerary-node__day {
31171
- flex: 50px 0 0;
31172
- display: flex;
31173
- flex-flow: column;
31174
- align-items: center;
31175
- justify-content: center;
31176
- background: #1f9470;
31177
- color: white;
31178
- border: 1.5px solid var(--tide-booking-color-secondary);
31179
- }
31180
-
31181
- .itinerary-node__day-month {
31182
- margin: 0px;
31183
- }
31184
-
31185
- .itinerary-node__day-day {
31186
- margin: 0px;
31187
- font-weight: var(--tide-booking-search-results-label-date-month-font-weight);
31188
- color: var(--tide-booking-search-results-label-date-month-color);
31189
- font-size: 24px;
31190
- }
31191
-
31192
- .itinerary-node__title {
31193
- margin: 0;
31194
- font-size: 22px;
31195
- line-height: 1.25;
31196
- }
31197
-
31198
- .itinerary-node__content {
31199
- display: grid;
31200
- gap: 20px;
31201
- padding: 20px;
31202
- }
31203
-
31204
- .itinerary-node__accommodation-banner {
31205
- padding: 12px 16px;
31206
- border: 1px solid #dbeafe;
31207
- border-radius: 12px;
31208
- background: #eff6ff;
31209
- color: #1e3a8a;
31210
- font-size: 14px;
31211
- line-height: 1.4;
31212
- }
31213
-
31214
- .itinerary-item {
31215
- display: block;
31216
- border-radius: 12px;
31217
- overflow: hidden;
31218
- background: #fff;
31219
- }
31220
-
31221
- .itinerary-node__empty,
31222
- .itinerary-empty {
31223
- padding: 20px;
31224
- border: 1px dashed #d1d5db;
31225
- border-radius: 12px;
31226
- color: #6b7280;
31227
- background: #fafafa;
31228
- }
31229
-
31230
- .itinerary-default-items {
31231
- border: 1px solid #e5e7eb;
31232
- border-radius: 16px;
31233
- padding: 20px;
31234
- background: #fff;
31235
- box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
31236
- }
31237
-
31238
- .itinerary-default-items__title {
31239
- margin: 0 0 16px;
31240
- font-size: 22px;
31241
- }
31242
-
31243
- @media (max-width: 768px) {
31244
- .itinerary-shell {
31245
- padding: 16px;
31246
- }
31247
- }
31248
-
31249
- ${itinerary?.styleSheetBody ?? ''}
31250
- </style>
31251
-
31252
- ${html}
31179
+ shadowRoot.innerHTML = `
31180
+ <style>
31181
+ :host {
31182
+ all: initial;
31183
+ display: block;
31184
+ width: 100%;
31185
+ }
31186
+
31187
+ *,
31188
+ *::before,
31189
+ *::after {
31190
+ box-sizing: border-box;
31191
+ }
31192
+
31193
+ .itinerary-shell {
31194
+ width: 100%;
31195
+ margin: 0 auto;
31196
+ font-family: 'Outfit', sans-serif;
31197
+ color: #222;
31198
+ }
31199
+
31200
+ .itinerary-shell__header {
31201
+ margin-bottom: 24px;
31202
+ }
31203
+
31204
+ .itinerary-shell__title {
31205
+ margin: 0;
31206
+ font-size: 32px;
31207
+ line-height: 1.2;
31208
+ }
31209
+
31210
+ .itinerary-shell__content {
31211
+ display: grid;
31212
+ gap: 24px;
31213
+ }
31214
+
31215
+ .itinerary-node {
31216
+ border: 1px solid #e5e7eb;
31217
+ border-radius: 16px;
31218
+ overflow: hidden;
31219
+ background: #fff;
31220
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
31221
+ }
31222
+
31223
+ .itinerary-node__header {
31224
+ display: flex;
31225
+ gap: 16px;
31226
+ align-items: center;
31227
+ border-bottom: 1px solid #eef0f2;
31228
+ background: #fafafa;
31229
+ }
31230
+
31231
+ .itinerary-node__day {
31232
+ flex: 50px 0 0;
31233
+ display: flex;
31234
+ flex-flow: column;
31235
+ align-items: center;
31236
+ justify-content: center;
31237
+ background: #1f9470;
31238
+ color: white;
31239
+ border: 1.5px solid var(--tide-booking-color-secondary);
31240
+ }
31241
+
31242
+ .itinerary-node__day-month {
31243
+ margin: 0px;
31244
+ }
31245
+
31246
+ .itinerary-node__day-day {
31247
+ margin: 0px;
31248
+ font-weight: var(--tide-booking-search-results-label-date-month-font-weight);
31249
+ color: var(--tide-booking-search-results-label-date-month-color);
31250
+ font-size: 24px;
31251
+ }
31252
+
31253
+ .itinerary-node__title {
31254
+ margin: 0;
31255
+ font-size: 22px;
31256
+ line-height: 1.25;
31257
+ }
31258
+
31259
+ .itinerary-node__content {
31260
+ display: grid;
31261
+ gap: 20px;
31262
+ padding: 20px;
31263
+ }
31264
+
31265
+ .itinerary-node__accommodation-banner {
31266
+ padding: 12px 16px;
31267
+ border: 1px solid #dbeafe;
31268
+ border-radius: 12px;
31269
+ background: #eff6ff;
31270
+ color: #1e3a8a;
31271
+ font-size: 14px;
31272
+ line-height: 1.4;
31273
+ }
31274
+
31275
+ .itinerary-item {
31276
+ display: block;
31277
+ border-radius: 12px;
31278
+ overflow: hidden;
31279
+ background: #fff;
31280
+ }
31281
+
31282
+ .itinerary-node__empty,
31283
+ .itinerary-empty {
31284
+ padding: 20px;
31285
+ border: 1px dashed #d1d5db;
31286
+ border-radius: 12px;
31287
+ color: #6b7280;
31288
+ background: #fafafa;
31289
+ }
31290
+
31291
+ .itinerary-default-items {
31292
+ border: 1px solid #e5e7eb;
31293
+ border-radius: 16px;
31294
+ padding: 20px;
31295
+ background: #fff;
31296
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
31297
+ }
31298
+
31299
+ .itinerary-default-items__title {
31300
+ margin: 0 0 16px;
31301
+ font-size: 22px;
31302
+ }
31303
+
31304
+ @media (max-width: 768px) {
31305
+ .itinerary-shell {
31306
+ padding: 16px;
31307
+ }
31308
+ }
31309
+
31310
+ ${itinerary?.styleSheetBody ?? ''}
31311
+ </style>
31312
+
31313
+ ${html}
31253
31314
  `;
31254
31315
  }, [html, itinerary?.styleSheetBody, isLoading]);
31255
31316
  return (React__default.createElement(React__default.Fragment, null,
@@ -35944,20 +36005,20 @@ function ItineraryMapView({ destinations: propDestinations, adults = 2, dateFrom
35944
36005
  const isStartEnd = dest.isStart || dest.isEnd;
35945
36006
  let iconHtml;
35946
36007
  if (isStartEnd) {
35947
- iconHtml = `
35948
- <div class="map-view__marker map-view__marker--plane">
35949
- <svg viewBox="0 0 576 512" fill="currentColor" width="16" height="16" xmlns="http://www.w3.org/2000/svg">
35950
- <path d="M482.3 192c34.2 0 93.7 29 93.7 64c0 36-59.5 64-93.7 64l-116.6 0L265.2 495.9c-5.7 10.1-16.3 16.1-27.8 16.1l-56.2 0c-10.6 0-18.3-10.3-15.8-20.6l49-196.3L112 288 68.8 377.6c-3 6.1-9.2 10.4-16 10.4l-2.8 0c-9.2 0-16-8.8-13.3-17.6L80 256L36.7 141.6C34 132.8 40.8 124 50 124l2.8 0c6.8 0 13 4.3 16 10.4L112 224l102.9 0-49-196.3C163.5 17.3 171.2 7 181.8 7l56.2 0c11.5 0 22.1 6 27.8 16.1L365.7 192l116.6 0z"/>
35951
- </svg>
36008
+ iconHtml = `
36009
+ <div class="map-view__marker map-view__marker--plane">
36010
+ <svg viewBox="0 0 576 512" fill="currentColor" width="16" height="16" xmlns="http://www.w3.org/2000/svg">
36011
+ <path d="M482.3 192c34.2 0 93.7 29 93.7 64c0 36-59.5 64-93.7 64l-116.6 0L265.2 495.9c-5.7 10.1-16.3 16.1-27.8 16.1l-56.2 0c-10.6 0-18.3-10.3-15.8-20.6l49-196.3L112 288 68.8 377.6c-3 6.1-9.2 10.4-16 10.4l-2.8 0c-9.2 0-16-8.8-13.3-17.6L80 256L36.7 141.6C34 132.8 40.8 124 50 124l2.8 0c6.8 0 13 4.3 16 10.4L112 224l102.9 0-49-196.3C163.5 17.3 171.2 7 181.8 7l56.2 0c11.5 0 22.1 6 27.8 16.1L365.7 192l116.6 0z"/>
36012
+ </svg>
35952
36013
  </div>`;
35953
36014
  }
35954
36015
  else {
35955
36016
  stopIndex++;
35956
36017
  const imgStyle = dest.imageUrl ? `style="background-image:url('${dest.imageUrl}')"` : '';
35957
- iconHtml = `
35958
- <div class="map-view__marker map-view__marker--stop" ${imgStyle}>
35959
- ${!dest.imageUrl ? `<span class="map-view__marker-number">${stopIndex}</span>` : ''}
35960
- <span class="map-view__marker-badge">${stopIndex}</span>
36018
+ iconHtml = `
36019
+ <div class="map-view__marker map-view__marker--stop" ${imgStyle}>
36020
+ ${!dest.imageUrl ? `<span class="map-view__marker-number">${stopIndex}</span>` : ''}
36021
+ <span class="map-view__marker-badge">${stopIndex}</span>
35961
36022
  </div>`;
35962
36023
  }
35963
36024
  const icon = L.divIcon({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qite/tide-booking-component",
3
- "version": "1.4.128",
3
+ "version": "1.4.130",
4
4
  "description": "React Booking wizard & Booking product component for Tide",
5
5
  "main": "build/build-cjs/index.js",
6
6
  "types": "build/build-cjs/src/index.d.ts",