@qite/tide-booking-component 0.0.2-preview.63 → 0.0.2-preview.65

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.
@@ -31,6 +31,7 @@ export interface Settings {
31
31
  loaderComponent?: JSX.Element | null;
32
32
  icons?: string | null;
33
33
  tagIds?: number[];
34
+ hideAgentSelection?: boolean;
34
35
  agentAdressId?: number;
35
36
  affiliateSlug?: string;
36
37
  }
@@ -324,6 +324,7 @@ var post$1 = function (url, apiKey, body, signal) {
324
324
  "Content-Type": "application/json",
325
325
  "Api-Key": apiKey,
326
326
  },
327
+ credentials: "include",
327
328
  body: body,
328
329
  signal: signal,
329
330
  }),
@@ -6321,6 +6322,8 @@ var ENDPOINT_PRICE_DETAILS = ENDPOINT$5 + "/price-details";
6321
6322
  var ENDPOINT_BOOK = ENDPOINT$5 + "/book";
6322
6323
  var ENDPOINT_AGENTS = ENDPOINT$5 + "/agents";
6323
6324
  var ENDPOINT_AVAILABLE_ALLOTMENTS = ENDPOINT$5 + "/get-allotment-availability";
6325
+ var ENDPOINT_FLIGHT_POOL = ENDPOINT$5 + "/flight-pool";
6326
+ var ENDPOINT_BOOKABLE_DATES = ENDPOINT$5 + "/bookable-dates";
6324
6327
  var readPackageSearchList = function (config, request, signal) {
6325
6328
  var url = "" + config.host + ENDPOINT_PACKAGE_SEARCH_LIST;
6326
6329
  var apiKey = config.apiKey;
@@ -6384,6 +6387,18 @@ var getAllotmentAvailability = function (config, eventId, signal) {
6384
6387
  var apiKey = config.apiKey;
6385
6388
  return get(url, apiKey, signal, true);
6386
6389
  };
6390
+ var searchFlightPool = function (config, request, signal) {
6391
+ var url = "" + config.host + ENDPOINT_FLIGHT_POOL;
6392
+ var apiKey = config.apiKey;
6393
+ var body = JSON.stringify(request);
6394
+ return post(url, apiKey, body, signal, true);
6395
+ };
6396
+ var bookableDates = function (config, request, signal) {
6397
+ var url = "" + config.host + ENDPOINT_BOOKABLE_DATES;
6398
+ var apiKey = config.apiKey;
6399
+ var body = JSON.stringify(request);
6400
+ return post(url, apiKey, body, signal, true);
6401
+ };
6387
6402
 
6388
6403
  var ENDPOINT$4 = "/api/member";
6389
6404
  var ENDPOINT_LOGIN = ENDPOINT$4 + "/login";
@@ -6516,6 +6531,7 @@ var agents_1 = build.agents = agents;
6516
6531
  build.alternateFlights = alternateFlights;
6517
6532
  build.alternateHotels = alternateHotels;
6518
6533
  var book_1 = build.book = book;
6534
+ build.bookableDates = bookableDates;
6519
6535
  build.confirm = confirm;
6520
6536
  build.contactForm = contactForm;
6521
6537
  build.contactHasTag = contactHasTag;
@@ -6546,6 +6562,7 @@ var priceDetails_1 = build.priceDetails = priceDetails;
6546
6562
  build.readPackageSearchList = readPackageSearchList;
6547
6563
  build.resetPassword = resetPassword;
6548
6564
  build.search = search;
6565
+ build.searchFlightPool = searchFlightPool;
6549
6566
  build.searchPackages = searchPackages;
6550
6567
 
6551
6568
  function buildTideClientConfig() {
@@ -7220,6 +7237,7 @@ var SettingsContext = React__default["default"].createContext({
7220
7237
  entryStatus: 0,
7221
7238
  customEntryStatusId: null,
7222
7239
  tagIds: [],
7240
+ hideAgentSelection: false,
7223
7241
  agentAdressId: undefined,
7224
7242
  affiliateSlug: undefined,
7225
7243
  productPath: "/",
@@ -7322,8 +7340,8 @@ var Message = function (_a) {
7322
7340
  };
7323
7341
 
7324
7342
  var STEPS = {
7325
- PERSONAL_DETAILS: "Persoonlijke en reisgegevens",
7326
- TRAVEL_OPTIONS: "Reisopties",
7343
+ PERSONAL_DETAILS: "Persoonlijke gegevens",
7344
+ TRAVEL_OPTIONS: "Opties",
7327
7345
  SUMMARY: "Overzicht",
7328
7346
  CONFIRMATION: "Bevestiging",
7329
7347
  ERROR: "Boeken mislukt",
@@ -7336,10 +7354,10 @@ var MAIN = {
7336
7354
  PRODUCT_UNAVAILABLE: "Product niet beschikbaar"
7337
7355
  };
7338
7356
  var SIDEBAR = {
7339
- OVERVIEW: "Reisoverzicht",
7357
+ OVERVIEW: "Overzicht",
7340
7358
  SLIDE_TOTAL_PRICE: "Totaalbedrag: ",
7341
7359
  SLIDE_DEPOSIT: "Te betalen voorschot: ",
7342
- TRAVEL_INFO: "Reisgegevens",
7360
+ TRAVEL_INFO: "Gegevens",
7343
7361
  TRAVELERS: "Personen",
7344
7362
  TRAVELERS_ADULTS: "volwassenen",
7345
7363
  TRAVELERS_ADULT: "volwassene",
@@ -7349,9 +7367,9 @@ var SIDEBAR = {
7349
7367
  DEPARTURE_SINGLE: "Datum",
7350
7368
  ARRIVAL: "Terugreis",
7351
7369
  FLIGHT: "Vlucht",
7352
- ACCOMMODATION: "Verblijf",
7370
+ ACCOMMODATION: "Geboekt",
7353
7371
  BASE_PRICE: "Basisprijs",
7354
- OPTIONS: "Reisopties",
7372
+ OPTIONS: "Opties",
7355
7373
  INCLUDED_COSTS: "Inbegrepen",
7356
7374
  EXTRA_COSTS: "Bijkomende kosten",
7357
7375
  TOTAL_PRICE: "Totale prijs",
@@ -7410,7 +7428,7 @@ var OPTIONS_FORM = {
7410
7428
  NONE: "Geen"
7411
7429
  };
7412
7430
  var SUMMARY = {
7413
- PERSONAL_DETAILS: "Persoonlijke en reisgegevens",
7431
+ PERSONAL_DETAILS: "Persoonlijke gegevens",
7414
7432
  TRAVELERS: "reizigers",
7415
7433
  TRAVELER: "reiziger",
7416
7434
  ADULTS: "volwassenen",
@@ -7421,7 +7439,7 @@ var SUMMARY = {
7421
7439
  NOTIFICATIONS_TITLE: "Aandacht",
7422
7440
  VALIDATE_TITLE: "Controleer je gegevens",
7423
7441
  VALIDATE_TEXT: "Je staat op het punt je boeking te bevestigen. Contoleer of alle gegevens correct zijn. Deze zijn definitief en niet meer aanpasbaar.",
7424
- OPTIONS: "Reisopties"
7442
+ OPTIONS: "Opties"
7425
7443
  };
7426
7444
  var CONFIRMATION = {
7427
7445
  TITLE_TEXT1: "Je boeking met nummer ",
@@ -7462,7 +7480,7 @@ var Confirmation = function () {
7462
7480
  if (!bookingNumber) {
7463
7481
  router.navigate("".concat(settings.basePath).concat(settings.error.pathSuffix, "?").concat(bookingQueryString));
7464
7482
  }
7465
- return (React__default["default"].createElement("div", { className: "form" },
7483
+ return (React__default["default"].createElement("div", { className: "form", id: "booking--step4" },
7466
7484
  React__default["default"].createElement("div", { className: "form__region" },
7467
7485
  React__default["default"].createElement("div", { className: "form__row" },
7468
7486
  React__default["default"].createElement("div", { className: "form__group" },
@@ -7609,7 +7627,7 @@ var formatPrice = function (price) {
7609
7627
  };
7610
7628
 
7611
7629
  var OptionRoom = function (_a) {
7612
- var _b, _c, _d, _e;
7630
+ var _b, _c, _d, _e, _f;
7613
7631
  var packageRoom = _a.packageRoom, pax = _a.pax, onRoomChange = _a.onRoomChange;
7614
7632
  var selectedOption = packageRoom === null || packageRoom === void 0 ? void 0 : packageRoom.options.find(function (x) { return x.isSelected; });
7615
7633
  var daysAndNightsText = "";
@@ -7748,11 +7766,14 @@ var OptionRoom = function (_a) {
7748
7766
  getAccommodationPriceDifference(accommodation))); }))))),
7749
7767
  React__default["default"].createElement("div", { className: "tree__column" },
7750
7768
  React__default["default"].createElement("div", { className: "select-wrapper" },
7751
- React__default["default"].createElement("div", { className: "select-wrapper__select" },
7752
- React__default["default"].createElement("select", { defaultValue: selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.regimeCode, onChange: handleRegimeChange, disabled: regimes.length === 1 }, regimes.map(function (regime) { return (React__default["default"].createElement("option", { key: regime.regimeCode, value: regime.regimeCode },
7769
+ regimes.length > 1 && (React__default["default"].createElement("div", { className: "select-wrapper__select" },
7770
+ React__default["default"].createElement("select", { defaultValue: selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.regimeCode, onChange: handleRegimeChange }, regimes.map(function (regime) { return (React__default["default"].createElement("option", { key: regime.regimeCode, value: regime.regimeCode },
7753
7771
  regime.regimeName,
7754
7772
  " ",
7755
- getRegimePriceDifference(regime))); }))))),
7773
+ getRegimePriceDifference(regime))); })))),
7774
+ regimes.length === 1 && (React__default["default"].createElement(React__default["default"].Fragment, null, (_f = regimes.find(function (x) {
7775
+ return x.regimeCode == (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.regimeCode);
7776
+ })) === null || _f === void 0 ? void 0 : _f.regimeName)))),
7756
7777
  React__default["default"].createElement("div", { className: buildClassName([
7757
7778
  "tree__column",
7758
7779
  "tree__column--price",
@@ -7807,6 +7828,7 @@ var NoneOption = function (_a) {
7807
7828
  };
7808
7829
 
7809
7830
  var OptionItem = function (_a) {
7831
+ var _b;
7810
7832
  var option = _a.option, parentId = _a.parentId, index = _a.index, selectedPrice = _a.selectedPrice, onOptionChange = _a.onOptionChange;
7811
7833
  var priceDifference = option.requirementType === 1
7812
7834
  ? option.isSelected
@@ -7936,11 +7958,13 @@ var OptionItem = function (_a) {
7936
7958
  " ",
7937
7959
  getAccommodationPriceDifference(accommodation))); }))))),
7938
7960
  React__default["default"].createElement("div", { className: "tree__column" },
7939
- React__default["default"].createElement("div", { className: "select-wrapper" }, (regimes === null || regimes === void 0 ? void 0 : regimes.length) > 1 && (React__default["default"].createElement("div", { className: "select-wrapper__select" },
7940
- React__default["default"].createElement("select", { defaultValue: option.line.regimeCode, onChange: handleRegimeChange, disabled: regimes.length === 1 }, regimes.map(function (regime) { return (React__default["default"].createElement("option", { key: regime.regimeCode, value: regime.regimeCode },
7941
- regime.regimeName,
7942
- " ",
7943
- getRegimePriceDifference(regime))); })))))))),
7961
+ React__default["default"].createElement("div", { className: "select-wrapper" },
7962
+ (regimes === null || regimes === void 0 ? void 0 : regimes.length) > 1 && (React__default["default"].createElement("div", { className: "select-wrapper__select" },
7963
+ React__default["default"].createElement("select", { defaultValue: option.line.regimeCode, onChange: handleRegimeChange }, regimes.map(function (regime) { return (React__default["default"].createElement("option", { key: regime.regimeCode, value: regime.regimeCode },
7964
+ regime.regimeName,
7965
+ " ",
7966
+ getRegimePriceDifference(regime))); })))),
7967
+ regimes.length === 1 && (React__default["default"].createElement(React__default["default"].Fragment, null, (_b = regimes.find(function (x) { return x.regimeCode == option.line.regimeCode; })) === null || _b === void 0 ? void 0 : _b.regimeName)))))),
7944
7968
  React__default["default"].createElement("div", { className: buildClassName(["tree__column", "tree__column--price"]) }, !option.isSelected && (React__default["default"].createElement("span", { className: buildClassName([
7945
7969
  "price",
7946
7970
  priceDifference > 0 && "price--increase",
@@ -8300,7 +8324,7 @@ var OptionsForm = function () {
8300
8324
  }
8301
8325
  };
8302
8326
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
8303
- React__default["default"].createElement("form", { className: "form", noValidate: true, onSubmit: handleSubmit },
8327
+ React__default["default"].createElement("form", { className: "form", name: "booking--step2", id: "booking--step2", noValidate: true, onSubmit: handleSubmit },
8304
8328
  isLoading && loaderComponent,
8305
8329
  !isLoading && (React__default["default"].createElement("div", { className: "form__region" },
8306
8330
  React__default["default"].createElement("div", { className: "form__group" },
@@ -8977,7 +9001,7 @@ var TravelersForm = function () {
8977
9001
  var agentAdressId = reactRedux.useSelector(selectAgentAdressId);
8978
9002
  var initialValues = (_a = reactRedux.useSelector(selectTravelersFormValues)) !== null && _a !== void 0 ? _a : createInitialValues(adultIds, childIds, startDate, agentAdressId);
8979
9003
  var _c = React.useState(false), showAgents = _c[0], setShowAgents = _c[1];
8980
- var _d = React.useState(!settings.agentAdressId), showAgentSelection = _d[0], setShowAgentSelection = _d[1];
9004
+ var _d = React.useState(!settings.agentAdressId && !settings.hideAgentSelection), showAgentSelection = _d[0], setShowAgentSelection = _d[1];
8981
9005
  var typeaheadAgents = (_b = lodash.sortBy(agents === null || agents === void 0 ? void 0 : agents.map(function (x) { return ({
8982
9006
  key: "".concat(x.id),
8983
9007
  value: "".concat(x.name, " (").concat(x.postalCode, " ").concat(x.location, ")"),
@@ -9058,7 +9082,7 @@ var TravelersForm = function () {
9058
9082
  var hasVisibleError = function (key) {
9059
9083
  return lodash.get(formik$1.errors, key) && lodash.get(formik$1.touched, key);
9060
9084
  };
9061
- return (React__default["default"].createElement("form", { className: "form", noValidate: true, onSubmit: formik$1.handleSubmit, onReset: formik$1.handleReset },
9085
+ return (React__default["default"].createElement("form", { className: "form", name: "booking--step1", id: "booking--step1", noValidate: true, onSubmit: formik$1.handleSubmit, onReset: formik$1.handleReset },
9062
9086
  React__default["default"].createElement("div", { className: "form__region" },
9063
9087
  React__default["default"].createElement("div", { className: "form__region-header" },
9064
9088
  React__default["default"].createElement("h5", { className: "form__region-heading" }, translations.TRAVELERS_FORM.PERSONS),
@@ -31,6 +31,7 @@ export interface Settings {
31
31
  loaderComponent?: JSX.Element | null;
32
32
  icons?: string | null;
33
33
  tagIds?: number[];
34
+ hideAgentSelection?: boolean;
34
35
  agentAdressId?: number;
35
36
  affiliateSlug?: string;
36
37
  }
@@ -313,6 +313,7 @@ var post$1 = function (url, apiKey, body, signal) {
313
313
  "Content-Type": "application/json",
314
314
  "Api-Key": apiKey,
315
315
  },
316
+ credentials: "include",
316
317
  body: body,
317
318
  signal: signal,
318
319
  }),
@@ -6310,6 +6311,8 @@ var ENDPOINT_PRICE_DETAILS = ENDPOINT$5 + "/price-details";
6310
6311
  var ENDPOINT_BOOK = ENDPOINT$5 + "/book";
6311
6312
  var ENDPOINT_AGENTS = ENDPOINT$5 + "/agents";
6312
6313
  var ENDPOINT_AVAILABLE_ALLOTMENTS = ENDPOINT$5 + "/get-allotment-availability";
6314
+ var ENDPOINT_FLIGHT_POOL = ENDPOINT$5 + "/flight-pool";
6315
+ var ENDPOINT_BOOKABLE_DATES = ENDPOINT$5 + "/bookable-dates";
6313
6316
  var readPackageSearchList = function (config, request, signal) {
6314
6317
  var url = "" + config.host + ENDPOINT_PACKAGE_SEARCH_LIST;
6315
6318
  var apiKey = config.apiKey;
@@ -6373,6 +6376,18 @@ var getAllotmentAvailability = function (config, eventId, signal) {
6373
6376
  var apiKey = config.apiKey;
6374
6377
  return get(url, apiKey, signal, true);
6375
6378
  };
6379
+ var searchFlightPool = function (config, request, signal) {
6380
+ var url = "" + config.host + ENDPOINT_FLIGHT_POOL;
6381
+ var apiKey = config.apiKey;
6382
+ var body = JSON.stringify(request);
6383
+ return post(url, apiKey, body, signal, true);
6384
+ };
6385
+ var bookableDates = function (config, request, signal) {
6386
+ var url = "" + config.host + ENDPOINT_BOOKABLE_DATES;
6387
+ var apiKey = config.apiKey;
6388
+ var body = JSON.stringify(request);
6389
+ return post(url, apiKey, body, signal, true);
6390
+ };
6376
6391
 
6377
6392
  var ENDPOINT$4 = "/api/member";
6378
6393
  var ENDPOINT_LOGIN = ENDPOINT$4 + "/login";
@@ -6505,6 +6520,7 @@ var agents_1 = build.agents = agents;
6505
6520
  build.alternateFlights = alternateFlights;
6506
6521
  build.alternateHotels = alternateHotels;
6507
6522
  var book_1 = build.book = book;
6523
+ build.bookableDates = bookableDates;
6508
6524
  build.confirm = confirm;
6509
6525
  build.contactForm = contactForm;
6510
6526
  build.contactHasTag = contactHasTag;
@@ -6535,6 +6551,7 @@ var priceDetails_1 = build.priceDetails = priceDetails;
6535
6551
  build.readPackageSearchList = readPackageSearchList;
6536
6552
  build.resetPassword = resetPassword;
6537
6553
  build.search = search;
6554
+ build.searchFlightPool = searchFlightPool;
6538
6555
  build.searchPackages = searchPackages;
6539
6556
 
6540
6557
  function buildTideClientConfig() {
@@ -7209,6 +7226,7 @@ var SettingsContext = React.createContext({
7209
7226
  entryStatus: 0,
7210
7227
  customEntryStatusId: null,
7211
7228
  tagIds: [],
7229
+ hideAgentSelection: false,
7212
7230
  agentAdressId: undefined,
7213
7231
  affiliateSlug: undefined,
7214
7232
  productPath: "/",
@@ -7311,8 +7329,8 @@ var Message = function (_a) {
7311
7329
  };
7312
7330
 
7313
7331
  var STEPS = {
7314
- PERSONAL_DETAILS: "Persoonlijke en reisgegevens",
7315
- TRAVEL_OPTIONS: "Reisopties",
7332
+ PERSONAL_DETAILS: "Persoonlijke gegevens",
7333
+ TRAVEL_OPTIONS: "Opties",
7316
7334
  SUMMARY: "Overzicht",
7317
7335
  CONFIRMATION: "Bevestiging",
7318
7336
  ERROR: "Boeken mislukt",
@@ -7325,10 +7343,10 @@ var MAIN = {
7325
7343
  PRODUCT_UNAVAILABLE: "Product niet beschikbaar"
7326
7344
  };
7327
7345
  var SIDEBAR = {
7328
- OVERVIEW: "Reisoverzicht",
7346
+ OVERVIEW: "Overzicht",
7329
7347
  SLIDE_TOTAL_PRICE: "Totaalbedrag: ",
7330
7348
  SLIDE_DEPOSIT: "Te betalen voorschot: ",
7331
- TRAVEL_INFO: "Reisgegevens",
7349
+ TRAVEL_INFO: "Gegevens",
7332
7350
  TRAVELERS: "Personen",
7333
7351
  TRAVELERS_ADULTS: "volwassenen",
7334
7352
  TRAVELERS_ADULT: "volwassene",
@@ -7338,9 +7356,9 @@ var SIDEBAR = {
7338
7356
  DEPARTURE_SINGLE: "Datum",
7339
7357
  ARRIVAL: "Terugreis",
7340
7358
  FLIGHT: "Vlucht",
7341
- ACCOMMODATION: "Verblijf",
7359
+ ACCOMMODATION: "Geboekt",
7342
7360
  BASE_PRICE: "Basisprijs",
7343
- OPTIONS: "Reisopties",
7361
+ OPTIONS: "Opties",
7344
7362
  INCLUDED_COSTS: "Inbegrepen",
7345
7363
  EXTRA_COSTS: "Bijkomende kosten",
7346
7364
  TOTAL_PRICE: "Totale prijs",
@@ -7399,7 +7417,7 @@ var OPTIONS_FORM = {
7399
7417
  NONE: "Geen"
7400
7418
  };
7401
7419
  var SUMMARY = {
7402
- PERSONAL_DETAILS: "Persoonlijke en reisgegevens",
7420
+ PERSONAL_DETAILS: "Persoonlijke gegevens",
7403
7421
  TRAVELERS: "reizigers",
7404
7422
  TRAVELER: "reiziger",
7405
7423
  ADULTS: "volwassenen",
@@ -7410,7 +7428,7 @@ var SUMMARY = {
7410
7428
  NOTIFICATIONS_TITLE: "Aandacht",
7411
7429
  VALIDATE_TITLE: "Controleer je gegevens",
7412
7430
  VALIDATE_TEXT: "Je staat op het punt je boeking te bevestigen. Contoleer of alle gegevens correct zijn. Deze zijn definitief en niet meer aanpasbaar.",
7413
- OPTIONS: "Reisopties"
7431
+ OPTIONS: "Opties"
7414
7432
  };
7415
7433
  var CONFIRMATION = {
7416
7434
  TITLE_TEXT1: "Je boeking met nummer ",
@@ -7451,7 +7469,7 @@ var Confirmation = function () {
7451
7469
  if (!bookingNumber) {
7452
7470
  navigate("".concat(settings.basePath).concat(settings.error.pathSuffix, "?").concat(bookingQueryString));
7453
7471
  }
7454
- return (React.createElement("div", { className: "form" },
7472
+ return (React.createElement("div", { className: "form", id: "booking--step4" },
7455
7473
  React.createElement("div", { className: "form__region" },
7456
7474
  React.createElement("div", { className: "form__row" },
7457
7475
  React.createElement("div", { className: "form__group" },
@@ -7598,7 +7616,7 @@ var formatPrice = function (price) {
7598
7616
  };
7599
7617
 
7600
7618
  var OptionRoom = function (_a) {
7601
- var _b, _c, _d, _e;
7619
+ var _b, _c, _d, _e, _f;
7602
7620
  var packageRoom = _a.packageRoom, pax = _a.pax, onRoomChange = _a.onRoomChange;
7603
7621
  var selectedOption = packageRoom === null || packageRoom === void 0 ? void 0 : packageRoom.options.find(function (x) { return x.isSelected; });
7604
7622
  var daysAndNightsText = "";
@@ -7737,11 +7755,14 @@ var OptionRoom = function (_a) {
7737
7755
  getAccommodationPriceDifference(accommodation))); }))))),
7738
7756
  React.createElement("div", { className: "tree__column" },
7739
7757
  React.createElement("div", { className: "select-wrapper" },
7740
- React.createElement("div", { className: "select-wrapper__select" },
7741
- React.createElement("select", { defaultValue: selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.regimeCode, onChange: handleRegimeChange, disabled: regimes.length === 1 }, regimes.map(function (regime) { return (React.createElement("option", { key: regime.regimeCode, value: regime.regimeCode },
7758
+ regimes.length > 1 && (React.createElement("div", { className: "select-wrapper__select" },
7759
+ React.createElement("select", { defaultValue: selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.regimeCode, onChange: handleRegimeChange }, regimes.map(function (regime) { return (React.createElement("option", { key: regime.regimeCode, value: regime.regimeCode },
7742
7760
  regime.regimeName,
7743
7761
  " ",
7744
- getRegimePriceDifference(regime))); }))))),
7762
+ getRegimePriceDifference(regime))); })))),
7763
+ regimes.length === 1 && (React.createElement(React.Fragment, null, (_f = regimes.find(function (x) {
7764
+ return x.regimeCode == (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.regimeCode);
7765
+ })) === null || _f === void 0 ? void 0 : _f.regimeName)))),
7745
7766
  React.createElement("div", { className: buildClassName([
7746
7767
  "tree__column",
7747
7768
  "tree__column--price",
@@ -7796,6 +7817,7 @@ var NoneOption = function (_a) {
7796
7817
  };
7797
7818
 
7798
7819
  var OptionItem = function (_a) {
7820
+ var _b;
7799
7821
  var option = _a.option, parentId = _a.parentId, index = _a.index, selectedPrice = _a.selectedPrice, onOptionChange = _a.onOptionChange;
7800
7822
  var priceDifference = option.requirementType === 1
7801
7823
  ? option.isSelected
@@ -7925,11 +7947,13 @@ var OptionItem = function (_a) {
7925
7947
  " ",
7926
7948
  getAccommodationPriceDifference(accommodation))); }))))),
7927
7949
  React.createElement("div", { className: "tree__column" },
7928
- React.createElement("div", { className: "select-wrapper" }, (regimes === null || regimes === void 0 ? void 0 : regimes.length) > 1 && (React.createElement("div", { className: "select-wrapper__select" },
7929
- React.createElement("select", { defaultValue: option.line.regimeCode, onChange: handleRegimeChange, disabled: regimes.length === 1 }, regimes.map(function (regime) { return (React.createElement("option", { key: regime.regimeCode, value: regime.regimeCode },
7930
- regime.regimeName,
7931
- " ",
7932
- getRegimePriceDifference(regime))); })))))))),
7950
+ React.createElement("div", { className: "select-wrapper" },
7951
+ (regimes === null || regimes === void 0 ? void 0 : regimes.length) > 1 && (React.createElement("div", { className: "select-wrapper__select" },
7952
+ React.createElement("select", { defaultValue: option.line.regimeCode, onChange: handleRegimeChange }, regimes.map(function (regime) { return (React.createElement("option", { key: regime.regimeCode, value: regime.regimeCode },
7953
+ regime.regimeName,
7954
+ " ",
7955
+ getRegimePriceDifference(regime))); })))),
7956
+ regimes.length === 1 && (React.createElement(React.Fragment, null, (_b = regimes.find(function (x) { return x.regimeCode == option.line.regimeCode; })) === null || _b === void 0 ? void 0 : _b.regimeName)))))),
7933
7957
  React.createElement("div", { className: buildClassName(["tree__column", "tree__column--price"]) }, !option.isSelected && (React.createElement("span", { className: buildClassName([
7934
7958
  "price",
7935
7959
  priceDifference > 0 && "price--increase",
@@ -8289,7 +8313,7 @@ var OptionsForm = function () {
8289
8313
  }
8290
8314
  };
8291
8315
  return (React.createElement(React.Fragment, null,
8292
- React.createElement("form", { className: "form", noValidate: true, onSubmit: handleSubmit },
8316
+ React.createElement("form", { className: "form", name: "booking--step2", id: "booking--step2", noValidate: true, onSubmit: handleSubmit },
8293
8317
  isLoading && loaderComponent,
8294
8318
  !isLoading && (React.createElement("div", { className: "form__region" },
8295
8319
  React.createElement("div", { className: "form__group" },
@@ -8966,7 +8990,7 @@ var TravelersForm = function () {
8966
8990
  var agentAdressId = useSelector(selectAgentAdressId);
8967
8991
  var initialValues = (_a = useSelector(selectTravelersFormValues)) !== null && _a !== void 0 ? _a : createInitialValues(adultIds, childIds, startDate, agentAdressId);
8968
8992
  var _c = useState(false), showAgents = _c[0], setShowAgents = _c[1];
8969
- var _d = useState(!settings.agentAdressId), showAgentSelection = _d[0], setShowAgentSelection = _d[1];
8993
+ var _d = useState(!settings.agentAdressId && !settings.hideAgentSelection), showAgentSelection = _d[0], setShowAgentSelection = _d[1];
8970
8994
  var typeaheadAgents = (_b = sortBy(agents === null || agents === void 0 ? void 0 : agents.map(function (x) { return ({
8971
8995
  key: "".concat(x.id),
8972
8996
  value: "".concat(x.name, " (").concat(x.postalCode, " ").concat(x.location, ")"),
@@ -9047,7 +9071,7 @@ var TravelersForm = function () {
9047
9071
  var hasVisibleError = function (key) {
9048
9072
  return get$2(formik.errors, key) && get$2(formik.touched, key);
9049
9073
  };
9050
- return (React.createElement("form", { className: "form", noValidate: true, onSubmit: formik.handleSubmit, onReset: formik.handleReset },
9074
+ return (React.createElement("form", { className: "form", name: "booking--step1", id: "booking--step1", noValidate: true, onSubmit: formik.handleSubmit, onReset: formik.handleReset },
9051
9075
  React.createElement("div", { className: "form__region" },
9052
9076
  React.createElement("div", { className: "form__region-header" },
9053
9077
  React.createElement("h5", { className: "form__region-heading" }, translations.TRAVELERS_FORM.PERSONS),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qite/tide-booking-component",
3
- "version": "0.0.2-preview.63",
3
+ "version": "0.0.2-preview.65",
4
4
  "description": "React BookingWizard component for Tide",
5
5
  "main": "build/build-cjs/index.js",
6
6
  "module": "build/build-esm/index.js",
@@ -66,6 +66,6 @@
66
66
  "uuid": "^8.3.2"
67
67
  },
68
68
  "dependencies": {
69
- "@qite/tide-client": "1.0.84"
69
+ "@qite/tide-client": "1.0.91"
70
70
  }
71
71
  }
@@ -26,7 +26,7 @@ const Confirmation: React.FC<ConfirmationProps> = () => {
26
26
  }
27
27
 
28
28
  return (
29
- <div className="form">
29
+ <div className="form" id="booking--step4">
30
30
  <div className="form__region">
31
31
  <div className="form__row">
32
32
  <div className="form__group">
@@ -271,7 +271,6 @@ const OptionItem: React.FC<OptionItemProps> = ({
271
271
  <select
272
272
  defaultValue={option.line.regimeCode}
273
273
  onChange={handleRegimeChange}
274
- disabled={regimes.length === 1}
275
274
  >
276
275
  {regimes.map((regime) => (
277
276
  <option
@@ -285,6 +284,15 @@ const OptionItem: React.FC<OptionItemProps> = ({
285
284
  </select>
286
285
  </div>
287
286
  )}
287
+ {regimes.length === 1 && (
288
+ <>
289
+ {
290
+ regimes.find(
291
+ (x) => x.regimeCode == option.line.regimeCode
292
+ )?.regimeName
293
+ }
294
+ </>
295
+ )}
288
296
  </div>
289
297
  </div>
290
298
  </>
@@ -248,23 +248,34 @@ const OptionRoom: React.FC<OptionRoomProps> = ({
248
248
  </div>
249
249
  <div className="tree__column">
250
250
  <div className="select-wrapper">
251
- <div className="select-wrapper__select">
252
- <select
253
- defaultValue={selectedOption?.regimeCode}
254
- onChange={handleRegimeChange}
255
- disabled={regimes.length === 1}
256
- >
257
- {regimes.map((regime) => (
258
- <option
259
- key={regime.regimeCode}
260
- value={regime.regimeCode}
261
- >
262
- {regime.regimeName}{" "}
263
- {getRegimePriceDifference(regime)}
264
- </option>
265
- ))}
266
- </select>
267
- </div>
251
+ {regimes.length > 1 && (
252
+ <div className="select-wrapper__select">
253
+ <select
254
+ defaultValue={selectedOption?.regimeCode}
255
+ onChange={handleRegimeChange}
256
+ >
257
+ {regimes.map((regime) => (
258
+ <option
259
+ key={regime.regimeCode}
260
+ value={regime.regimeCode}
261
+ >
262
+ {regime.regimeName}{" "}
263
+ {getRegimePriceDifference(regime)}
264
+ </option>
265
+ ))}
266
+ </select>
267
+ </div>
268
+ )}
269
+ {regimes.length === 1 && (
270
+ <>
271
+ {
272
+ regimes.find(
273
+ (x) =>
274
+ x.regimeCode == selectedOption?.regimeCode
275
+ )?.regimeName
276
+ }
277
+ </>
278
+ )}
268
279
  </div>
269
280
  </div>
270
281
  <div
@@ -120,7 +120,13 @@ const OptionsForm: React.FC<OptionsFormProps> = () => {
120
120
 
121
121
  return (
122
122
  <>
123
- <form className="form" noValidate onSubmit={handleSubmit}>
123
+ <form
124
+ className="form"
125
+ name="booking--step2"
126
+ id="booking--step2"
127
+ noValidate
128
+ onSubmit={handleSubmit}
129
+ >
124
130
  {isLoading && loaderComponent}
125
131
  {!isLoading && (
126
132
  <div className="form__region">
@@ -84,7 +84,7 @@ const TravelersForm: React.FC<TravelersFormProps> = () => {
84
84
 
85
85
  const [showAgents, setShowAgents] = useState<boolean>(false);
86
86
  const [showAgentSelection, setShowAgentSelection] = useState<boolean>(
87
- !settings.agentAdressId
87
+ !settings.agentAdressId && !settings.hideAgentSelection
88
88
  );
89
89
 
90
90
  const typeaheadAgents =
@@ -213,6 +213,8 @@ const TravelersForm: React.FC<TravelersFormProps> = () => {
213
213
  return (
214
214
  <form
215
215
  className="form"
216
+ name="booking--step1"
217
+ id="booking--step1"
216
218
  noValidate
217
219
  onSubmit={formik.handleSubmit}
218
220
  onReset={formik.handleReset}
@@ -11,6 +11,7 @@ const SettingsContext = React.createContext<SettingsContextProps>({
11
11
  entryStatus: 0,
12
12
  customEntryStatusId: null,
13
13
  tagIds: [],
14
+ hideAgentSelection: false,
14
15
  agentAdressId: undefined,
15
16
  affiliateSlug: undefined,
16
17
  productPath: "/",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "STEPS": {
3
- "PERSONAL_DETAILS": "Persoonlijke en reisgegevens",
4
- "TRAVEL_OPTIONS": "Reisopties",
3
+ "PERSONAL_DETAILS": "Persoonlijke gegevens",
4
+ "TRAVEL_OPTIONS": "Opties",
5
5
  "SUMMARY": "Overzicht",
6
6
  "CONFIRMATION": "Bevestiging",
7
7
  "ERROR": "Boeken mislukt",
@@ -14,10 +14,10 @@
14
14
  "PRODUCT_UNAVAILABLE": "Product niet beschikbaar"
15
15
  },
16
16
  "SIDEBAR": {
17
- "OVERVIEW": "Reisoverzicht",
17
+ "OVERVIEW": "Overzicht",
18
18
  "SLIDE_TOTAL_PRICE": "Totaalbedrag: ",
19
19
  "SLIDE_DEPOSIT": "Te betalen voorschot: ",
20
- "TRAVEL_INFO": "Reisgegevens",
20
+ "TRAVEL_INFO": "Gegevens",
21
21
  "TRAVELERS": "Personen",
22
22
  "TRAVELERS_ADULTS": "volwassenen",
23
23
  "TRAVELERS_ADULT": "volwassene",
@@ -27,9 +27,9 @@
27
27
  "DEPARTURE_SINGLE": "Datum",
28
28
  "ARRIVAL": "Terugreis",
29
29
  "FLIGHT": "Vlucht",
30
- "ACCOMMODATION": "Verblijf",
30
+ "ACCOMMODATION": "Geboekt",
31
31
  "BASE_PRICE": "Basisprijs",
32
- "OPTIONS": "Reisopties",
32
+ "OPTIONS": "Opties",
33
33
  "INCLUDED_COSTS": "Inbegrepen",
34
34
  "EXTRA_COSTS": "Bijkomende kosten",
35
35
  "TOTAL_PRICE": "Totale prijs",
@@ -88,7 +88,7 @@
88
88
  "NONE": "Geen"
89
89
  },
90
90
  "SUMMARY": {
91
- "PERSONAL_DETAILS": "Persoonlijke en reisgegevens",
91
+ "PERSONAL_DETAILS": "Persoonlijke gegevens",
92
92
  "TRAVELERS": "reizigers",
93
93
  "TRAVELER": "reiziger",
94
94
  "ADULTS": "volwassenen",
@@ -99,7 +99,7 @@
99
99
  "NOTIFICATIONS_TITLE": "Aandacht",
100
100
  "VALIDATE_TITLE": "Controleer je gegevens",
101
101
  "VALIDATE_TEXT": "Je staat op het punt je boeking te bevestigen. Contoleer of alle gegevens correct zijn. Deze zijn definitief en niet meer aanpasbaar.",
102
- "OPTIONS": "Reisopties"
102
+ "OPTIONS": "Opties"
103
103
  },
104
104
  "CONFIRMATION": {
105
105
  "TITLE_TEXT1": "Je boeking met nummer ",
@@ -31,6 +31,7 @@ export interface Settings {
31
31
  loaderComponent?: JSX.Element | null;
32
32
  icons?: string | null;
33
33
  tagIds?: number[];
34
+ hideAgentSelection?: boolean;
34
35
  agentAdressId?: number;
35
36
  affiliateSlug?: string;
36
37
  }