@sabstravtech/obtservices 0.0.22051001 → 0.1.6161600

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/angular/components/basket-panel.d.ts +1 -0
  2. package/angular/fetchers.d.ts +5 -0
  3. package/angular/lib/vendor/fetchers/get-companies.fetcher.d.ts +7 -0
  4. package/angular/lib/vendor/fetchers/get-company.fetcher.d.ts +7 -0
  5. package/angular/lib/vendor/fetchers/get-office.fetcher.d.ts +7 -0
  6. package/angular/lib/vendor/fetchers/get-user-default-mi-value.fetcher.d.ts +7 -0
  7. package/angular/lib/vendor/fetchers/get-user-guests.fetcher.d.ts +7 -0
  8. package/angular/lib/vendor/services/enterprise-basket.service.d.ts +4 -3
  9. package/angular/lib/vendor/services/logon.service.d.ts +2 -1
  10. package/angular/lib/vendor/services/user.service.d.ts +9 -3
  11. package/angular/lib/vendor/types/graphql.angular.types.d.ts +614 -550
  12. package/angular/lib/vendor/updaters/create-guest-updater.d.ts +6 -0
  13. package/angular/sabstravtech-obtservices-angular.metadata.json +1 -1
  14. package/angular/updaters.d.ts +1 -0
  15. package/base/fetchers.d.ts +5 -0
  16. package/base/lib/vendor/classes/base-enterprise.d.ts +7 -1
  17. package/base/lib/vendor/classes/basket-info-mi-details.impl.d.ts +2 -0
  18. package/base/lib/vendor/classes/bookable-basket.d.ts +2 -0
  19. package/base/lib/vendor/classes/cabhire-enterprise-search.d.ts +9 -4
  20. package/base/lib/vendor/classes/carhire-enterprise-search.d.ts +12 -4
  21. package/base/lib/vendor/classes/eurostar-enterprise-search.d.ts +14 -7
  22. package/base/lib/vendor/classes/fast-track-enterprise-search.d.ts +5 -4
  23. package/base/lib/vendor/classes/flight-enterprise-search.d.ts +16 -5
  24. package/base/lib/vendor/classes/helpers.d.ts +6 -1
  25. package/base/lib/vendor/classes/hotel-enterprise-search.d.ts +10 -3
  26. package/base/lib/vendor/classes/irl-enterprise-search.d.ts +13 -8
  27. package/base/lib/vendor/classes/lounges-enterprise-search.d.ts +5 -4
  28. package/base/lib/vendor/classes/management-info-and-valid.d.ts +3 -3
  29. package/base/lib/vendor/classes/modal-types.enum.d.ts +1 -0
  30. package/base/lib/vendor/classes/parking-enterprise-search.d.ts +5 -4
  31. package/base/lib/vendor/classes/rail-enterprise-search.d.ts +10 -8
  32. package/base/lib/vendor/classes/supplementary-booking-info-impl.d.ts +5 -3
  33. package/base/lib/vendor/classes/user-favourite.enum.d.ts +1 -0
  34. package/base/lib/vendor/fetchers/eurostar-quote.fetcher.d.ts +3 -1
  35. package/base/lib/vendor/fetchers/flight-quote.fetcher.d.ts +1 -0
  36. package/base/lib/vendor/fetchers/get-companies.fetcher.d.ts +21 -0
  37. package/base/lib/vendor/fetchers/get-company.fetcher.d.ts +20 -0
  38. package/base/lib/vendor/fetchers/get-office.fetcher.d.ts +20 -0
  39. package/base/lib/vendor/fetchers/get-user-default-mi-value.fetcher.d.ts +21 -0
  40. package/base/lib/vendor/fetchers/get-user-guests.fetcher.d.ts +20 -0
  41. package/base/lib/vendor/fetchers/search-users-can-book-for-fetcher.d.ts +2 -2
  42. package/base/lib/vendor/interfaces/Icabhire-enterprise-search.d.ts +2 -0
  43. package/base/lib/vendor/interfaces/Icarhire-enterprise-search.d.ts +5 -2
  44. package/base/lib/vendor/interfaces/Ienterprise-basket.service.d.ts +8 -6
  45. package/base/lib/vendor/interfaces/Ieurostar-enterprise-search.d.ts +1 -0
  46. package/base/lib/vendor/interfaces/Ifast-track-enterprise-search.d.ts +7 -5
  47. package/base/lib/vendor/interfaces/Iflight-enterprise-search.d.ts +8 -1
  48. package/base/lib/vendor/interfaces/Ihotel-enterprise-search.d.ts +8 -2
  49. package/base/lib/vendor/interfaces/Iirl-enterprise-search.d.ts +8 -7
  50. package/base/lib/vendor/interfaces/Ilounges-enterprise-search.d.ts +1 -0
  51. package/base/lib/vendor/interfaces/Imybookings.service.d.ts +3 -2
  52. package/base/lib/vendor/interfaces/Iparking-enterprise-search.d.ts +1 -0
  53. package/base/lib/vendor/interfaces/Irail-enterprise-search.d.ts +5 -2
  54. package/base/lib/vendor/interfaces/Isearch.service.d.ts +5 -2
  55. package/base/lib/vendor/interfaces/Isupplementary-booking-info-impl.d.ts +3 -2
  56. package/base/lib/vendor/interfaces/Iuser.service.d.ts +11 -3
  57. package/base/lib/vendor/interfaces/car-hire-search-arg.interface.d.ts +2 -3
  58. package/base/lib/vendor/interfaces/rail-basket-item.interface.d.ts +2 -0
  59. package/base/lib/vendor/interfaces/summary-interface.d.ts +6 -0
  60. package/base/lib/vendor/interfaces/user.data.d.ts +1 -0
  61. package/base/lib/vendor/models/traveller.object.d.ts +12 -2
  62. package/base/lib/vendor/services/enterprise-basket.service.d.ts +22 -9
  63. package/base/lib/vendor/services/logon.service.d.ts +5 -1
  64. package/base/lib/vendor/services/my-bookings.service.d.ts +3 -2
  65. package/base/lib/vendor/services/search.service.d.ts +27 -23
  66. package/base/lib/vendor/services/url.service.d.ts +2 -0
  67. package/base/lib/vendor/services/user.service.d.ts +36 -5
  68. package/base/lib/vendor/services/webtoken.service.d.ts +6 -0
  69. package/base/lib/vendor/types/graphql.types.d.ts +581 -549
  70. package/base/lib/vendor/types/types.d.ts +48 -6
  71. package/base/lib/vendor/updaters/create-guest-updater.d.ts +19 -0
  72. package/base/sabstravtech-obtservices-base.d.ts +1 -1
  73. package/base/sabstravtech-obtservices-base.metadata.json +1 -1
  74. package/base/updaters.d.ts +1 -0
  75. package/bundles/sabstravtech-obtservices-angular.umd.js +541 -252
  76. package/bundles/sabstravtech-obtservices-angular.umd.js.map +1 -1
  77. package/bundles/sabstravtech-obtservices-angular.umd.min.js +1 -1
  78. package/bundles/sabstravtech-obtservices-angular.umd.min.js.map +1 -1
  79. package/bundles/sabstravtech-obtservices-base.umd.js +4080 -1471
  80. package/bundles/sabstravtech-obtservices-base.umd.js.map +1 -1
  81. package/bundles/sabstravtech-obtservices-base.umd.min.js +2 -2
  82. package/bundles/sabstravtech-obtservices-base.umd.min.js.map +1 -1
  83. package/esm2015/angular/components/basket-panel.js +16 -7
  84. package/esm2015/angular/fetchers.js +6 -1
  85. package/esm2015/angular/lib/vendor/fetchers/get-companies.fetcher.js +25 -0
  86. package/esm2015/angular/lib/vendor/fetchers/get-company.fetcher.js +25 -0
  87. package/esm2015/angular/lib/vendor/fetchers/get-office.fetcher.js +25 -0
  88. package/esm2015/angular/lib/vendor/fetchers/get-user-default-mi-value.fetcher.js +25 -0
  89. package/esm2015/angular/lib/vendor/fetchers/get-user-guests.fetcher.js +25 -0
  90. package/esm2015/angular/lib/vendor/services/enterprise-basket.service.js +24 -21
  91. package/esm2015/angular/lib/vendor/services/http-call.service.js +1 -1
  92. package/esm2015/angular/lib/vendor/services/logon.service.js +8 -5
  93. package/esm2015/angular/lib/vendor/services/search.service.js +1 -1
  94. package/esm2015/angular/lib/vendor/services/ticket-queue.service.js +4 -1
  95. package/esm2015/angular/lib/vendor/services/user.service.js +28 -10
  96. package/esm2015/angular/lib/vendor/services/webtoken.service.js +6 -2
  97. package/esm2015/angular/lib/vendor/types/graphql.angular.types.js +1023 -1220
  98. package/esm2015/angular/lib/vendor/updaters/create-guest-updater.js +22 -0
  99. package/esm2015/angular/updaters.js +2 -1
  100. package/esm2015/base/fetchers.js +6 -1
  101. package/esm2015/base/lib/vendor/classes/base-enterprise.js +12 -3
  102. package/esm2015/base/lib/vendor/classes/basket-info-mi-details.impl.js +14 -1
  103. package/esm2015/base/lib/vendor/classes/bookable-basket.js +27 -8
  104. package/esm2015/base/lib/vendor/classes/cabhire-enterprise-search.js +219 -18
  105. package/esm2015/base/lib/vendor/classes/carhire-enterprise-search.js +235 -67
  106. package/esm2015/base/lib/vendor/classes/eurostar-enterprise-search.js +462 -49
  107. package/esm2015/base/lib/vendor/classes/fast-track-enterprise-search.js +37 -13
  108. package/esm2015/base/lib/vendor/classes/flight-enterprise-search.js +281 -62
  109. package/esm2015/base/lib/vendor/classes/helpers.js +32 -3
  110. package/esm2015/base/lib/vendor/classes/hotel-enterprise-search.js +228 -54
  111. package/esm2015/base/lib/vendor/classes/irl-enterprise-search.js +221 -46
  112. package/esm2015/base/lib/vendor/classes/lounges-enterprise-search.js +101 -14
  113. package/esm2015/base/lib/vendor/classes/management-info-and-valid.js +67 -40
  114. package/esm2015/base/lib/vendor/classes/modal-types.enum.js +2 -1
  115. package/esm2015/base/lib/vendor/classes/parking-enterprise-search.js +146 -11
  116. package/esm2015/base/lib/vendor/classes/rail-enterprise-search.js +210 -25
  117. package/esm2015/base/lib/vendor/classes/supplementary-booking-info-impl.js +58 -4
  118. package/esm2015/base/lib/vendor/classes/user-favourite.enum.js +2 -1
  119. package/esm2015/base/lib/vendor/data/countries.json +484 -242
  120. package/esm2015/base/lib/vendor/fetchers/eurostar-quote.fetcher.js +3 -3
  121. package/esm2015/base/lib/vendor/fetchers/flight-quote.fetcher.js +3 -3
  122. package/esm2015/base/lib/vendor/fetchers/get-companies.fetcher.js +11 -0
  123. package/esm2015/base/lib/vendor/fetchers/get-company.fetcher.js +11 -0
  124. package/esm2015/base/lib/vendor/fetchers/get-office.fetcher.js +11 -0
  125. package/esm2015/base/lib/vendor/fetchers/get-user-default-mi-value.fetcher.js +10 -0
  126. package/esm2015/base/lib/vendor/fetchers/get-user-guests.fetcher.js +11 -0
  127. package/esm2015/base/lib/vendor/fetchers/search-users-can-book-for-fetcher.js +1 -1
  128. package/esm2015/base/lib/vendor/interfaces/Icabhire-enterprise-search.js +1 -1
  129. package/esm2015/base/lib/vendor/interfaces/Icarhire-enterprise-search.js +1 -1
  130. package/esm2015/base/lib/vendor/interfaces/Ienterprise-basket.service.js +1 -1
  131. package/esm2015/base/lib/vendor/interfaces/Ieurostar-enterprise-search.js +1 -1
  132. package/esm2015/base/lib/vendor/interfaces/Ifast-track-enterprise-search.js +1 -1
  133. package/esm2015/base/lib/vendor/interfaces/Iflight-enterprise-search.js +1 -1
  134. package/esm2015/base/lib/vendor/interfaces/Ihotel-enterprise-search.js +2 -1
  135. package/esm2015/base/lib/vendor/interfaces/Iirl-enterprise-search.js +1 -1
  136. package/esm2015/base/lib/vendor/interfaces/Ilounges-enterprise-search.js +1 -1
  137. package/esm2015/base/lib/vendor/interfaces/Imybookings.service.js +1 -1
  138. package/esm2015/base/lib/vendor/interfaces/Iparking-enterprise-search.js +1 -1
  139. package/esm2015/base/lib/vendor/interfaces/Irail-enterprise-search.js +1 -1
  140. package/esm2015/base/lib/vendor/interfaces/Isearch.service.js +1 -1
  141. package/esm2015/base/lib/vendor/interfaces/Isupplementary-booking-info-impl.js +1 -1
  142. package/esm2015/base/lib/vendor/interfaces/Iuser.service.js +1 -1
  143. package/esm2015/base/lib/vendor/interfaces/car-hire-search-arg.interface.js +1 -1
  144. package/esm2015/base/lib/vendor/interfaces/rail-basket-item.interface.js +1 -1
  145. package/esm2015/base/lib/vendor/interfaces/summary-interface.js +1 -1
  146. package/esm2015/base/lib/vendor/interfaces/user.data.js +1 -1
  147. package/esm2015/base/lib/vendor/models/traveller.object.js +21 -3
  148. package/esm2015/base/lib/vendor/services/enterprise-basket.service.js +129 -43
  149. package/esm2015/base/lib/vendor/services/http-call.service.js +1 -1
  150. package/esm2015/base/lib/vendor/services/logon.service.js +40 -3
  151. package/esm2015/base/lib/vendor/services/my-bookings.service.js +3 -2
  152. package/esm2015/base/lib/vendor/services/requires-reason.service.js +14 -10
  153. package/esm2015/base/lib/vendor/services/search.service.js +100 -117
  154. package/esm2015/base/lib/vendor/services/url.service.js +3 -1
  155. package/esm2015/base/lib/vendor/services/user.service.js +90 -12
  156. package/esm2015/base/lib/vendor/services/webtoken.service.js +14 -1
  157. package/esm2015/base/lib/vendor/types/graphql.types.js +21 -2
  158. package/esm2015/base/lib/vendor/types/types.js +32 -14
  159. package/esm2015/base/lib/vendor/updaters/create-guest-updater.js +11 -0
  160. package/esm2015/base/sabstravtech-obtservices-base.js +1 -1
  161. package/esm2015/base/updaters.js +2 -1
  162. package/fesm2015/sabstravtech-obtservices-angular.js +1254 -1332
  163. package/fesm2015/sabstravtech-obtservices-angular.js.map +1 -1
  164. package/fesm2015/sabstravtech-obtservices-base.js +3324 -839
  165. package/fesm2015/sabstravtech-obtservices-base.js.map +1 -1
  166. package/package.json +1 -1
@@ -14,3 +14,4 @@ export * from './lib/vendor/updaters/set-payment-option.updater';
14
14
  export * from './lib/vendor/updaters/cancel-booking-updater';
15
15
  export * from './lib/vendor/updaters/save-favourite-search.updater';
16
16
  export * from './lib/vendor/updaters/remove-favourite-search.updater';
17
+ export * from './lib/vendor/updaters/create-guest-updater';
@@ -61,6 +61,8 @@ export * from './lib/vendor/fetchers/get-rail-live-departures.fetcher';
61
61
  export * from './lib/vendor/fetchers/get-flight-seat-map-fetcher';
62
62
  export * from './lib/vendor/fetchers/get-user-favourite-searches.fetcher';
63
63
  export * from './lib/vendor/fetchers/get-conferma-room-images.fetcher';
64
+ export * from './lib/vendor/fetchers/get-companies.fetcher';
65
+ export * from './lib/vendor/fetchers/get-company.fetcher';
64
66
  export * from './lib/vendor/fetchers/email-basket.fetcher';
65
67
  export * from './lib/vendor/fetchers/fast-track-quote.fetcher';
66
68
  export * from './lib/vendor/fetchers/send-offline-notification.fetcher';
@@ -71,3 +73,6 @@ export * from './lib/vendor/fetchers/get-car-hire-providers.fetcher';
71
73
  export * from './lib/vendor/fetchers/send-offline-notification.fetcher';
72
74
  export * from './lib/vendor/fetchers/get-cancellation-info.fetcher';
73
75
  export * from './lib/vendor/fetchers/get-cancellation-info.fetcher';
76
+ export * from './lib/vendor/fetchers/get-user-guests.fetcher';
77
+ export * from './lib/vendor/fetchers/get-office.fetcher';
78
+ export * from './lib/vendor/fetchers/get-user-default-mi-value.fetcher';
@@ -4,9 +4,12 @@ import { BasketItem, ServiceType } from '../types/graphql.types';
4
4
  import { ICheapestPrice } from '../interfaces/cheapest-price';
5
5
  import { RecentSearch } from '../../../types';
6
6
  import { BaseHelperRoutines } from './helpers';
7
+ import { EnterpriseSearchServiceInterface } from '../interfaces/Isearch.service';
8
+ import { UserServiceInterface } from '../interfaces/Iuser.service';
7
9
  export declare abstract class BaseEnterpriseSearch<P, R, O extends Array<any>> {
8
10
  protected storageService: BaseStorageService;
9
11
  protected helpers: BaseHelperRoutines;
12
+ protected searchService: EnterpriseSearchServiceInterface;
10
13
  protected _cheapestResultPrice: ICheapestPrice;
11
14
  protected _originalUserSearch: P;
12
15
  isValid: BehaviorSubject<boolean>;
@@ -24,9 +27,11 @@ export declare abstract class BaseEnterpriseSearch<P, R, O extends Array<any>> {
24
27
  abstract type: ServiceType;
25
28
  fullResults: O;
26
29
  fullMultiResults: O[][];
30
+ rawResults: R;
27
31
  get cheapestPrice(): ICheapestPrice;
28
32
  get originalUserSearch(): P;
29
- constructor(storageService: BaseStorageService, helpers: BaseHelperRoutines);
33
+ constructor(storageService: BaseStorageService, helpers: BaseHelperRoutines, searchService: EnterpriseSearchServiceInterface, userService: UserServiceInterface);
34
+ performSearch(): void;
30
35
  protected processResults(results: R): O;
31
36
  protected updateTempParams(tempParams: P): void;
32
37
  protected _startSearch(results: Observable<R>): Promise<boolean>;
@@ -42,5 +47,6 @@ export declare abstract class BaseEnterpriseSearch<P, R, O extends Array<any>> {
42
47
  * @param previousItems basketitems that already been added. This can be used to set up the defaults for the search.
43
48
  */
44
49
  abstract updateFromPreviousSearches(previousItems: Record<ServiceType, BasketItem>): void;
50
+ abstract updateSearchFromExpiredBasketItem(basketItem: BasketItem): void;
45
51
  protected _applyFilter(): void;
46
52
  }
@@ -12,9 +12,11 @@ export declare class BasketInfoMiDetailsImpl {
12
12
  private helpers;
13
13
  miPerItem: ManagementInfoAndIsValid[];
14
14
  miPerUser: UserManagementSupplement;
15
+ miPerGuest: UserManagementSupplement;
15
16
  users: string[];
16
17
  basketItem: BasketItem;
17
18
  isValidObservers: ManagementInfoAndIsValid[];
19
+ guests: string[];
18
20
  constructor(item: BasketItem, basketService: EnterpriseBasketServiceInterface, helpers: BaseHelperRoutines);
19
21
  }
20
22
  export {};
@@ -16,6 +16,7 @@ export declare class BookableBasket {
16
16
  constructor(basketService: EnterpriseBasketServiceInterface, helpers: BaseHelperRoutines);
17
17
  loadBasket(id: string): void;
18
18
  private _loadBasket;
19
+ expiredItemInTheBasket(): boolean;
19
20
  updateBasket(basket: BasketDetails): void;
20
21
  sendBasketForApproval(): Promise<void>;
21
22
  workoutApprovedState(basket: BasketDetails): BookingStatus;
@@ -36,5 +37,6 @@ export declare class BookableBasket {
36
37
  private _needLeadPassengers;
37
38
  private _splitTravellers;
38
39
  private _findUser;
40
+ private _findGuest;
39
41
  getId(): string;
40
42
  }
@@ -3,16 +3,16 @@ import { BaseEnterpriseSearch } from './base-enterprise';
3
3
  import { BaseStorageService } from '../services/storage.service';
4
4
  import { BaseHelperRoutines } from './helpers';
5
5
  import { BehaviorSubject, Observable, Subject } from 'rxjs';
6
- import { AddressForm, CabhireQuoteResultArray, NgbDateStruct, RailAirport, RecentSearch, SaveFavouriteSearchResult } from '../types/types';
6
+ import { AddressForm, CabhireQuoteResultArray, NgbDateStruct, RailAirport, RecentSearch, SaveFavouriteSearchResult, DifferentInvokdedUserReasons } from '../types/types';
7
7
  import { EnterpriseSearchServiceInterface } from '../interfaces/Isearch.service';
8
8
  import { BaseCabhireQuoteFetcher, CabhireQuoteFetcherType } from '../fetchers/cabhire-quote-fetcher';
9
9
  import { BasketItem, CabHireLocation, CabHireQuote, CabHireVehicleType, LocationDetail, QuerySearchCabHireArgs, SaveRecentSearchMutationVariables, SearchCabHireQueryVariables, ServiceType } from '../types/graphql.types';
10
10
  import { AirportSearchMode, CabHireEnterpriseSearchInterface, CabHireTempParams, TaxiAirport, TaxiAttribute, TaxiFormMode, TransType } from '../interfaces/Icabhire-enterprise-search';
11
11
  import { EnterpriseBasketServiceInterface } from '../interfaces/Ienterprise-basket.service';
12
12
  import { ICheapestPrice } from '../interfaces/cheapest-price';
13
+ import { UserServiceInterface } from '../interfaces/Iuser.service';
13
14
  export declare class CabHireEnterpriseSearch<CH_Q extends CabhireQuoteFetcherType> extends BaseEnterpriseSearch<CabHireTempParams, CabhireQuoteResultArray, CabhireQuoteResultArray> implements CabHireEnterpriseSearchInterface {
14
15
  private cabfetcher;
15
- private searchService;
16
16
  private basketService;
17
17
  static readonly STORAGE_SESSION_PARAMS = "search_cab";
18
18
  static readonly SECONDARY_STORAGE_SESSION_PARAMS = "secondary_search_cab";
@@ -62,6 +62,9 @@ export declare class CabHireEnterpriseSearch<CH_Q extends CabhireQuoteFetcherTyp
62
62
  private _flightNumber;
63
63
  get flightNumber(): string;
64
64
  set flightNumber(value: string);
65
+ private _returnFlightNumber;
66
+ get returnFlightNumber(): string;
67
+ set returnFlightNumber(value: string);
65
68
  get airport(): TaxiAirport;
66
69
  set airport(value: TaxiAirport);
67
70
  private _terminal;
@@ -96,7 +99,7 @@ export declare class CabHireEnterpriseSearch<CH_Q extends CabhireQuoteFetcherTyp
96
99
  set toAddress(value: AddressForm);
97
100
  get toStation(): RailAirport;
98
101
  set toStation(value: RailAirport);
99
- constructor(cabfetcher: BaseCabhireQuoteFetcher<CH_Q>, helpers: BaseHelperRoutines, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, basketService: EnterpriseBasketServiceInterface);
102
+ constructor(cabfetcher: BaseCabhireQuoteFetcher<CH_Q>, helpers: BaseHelperRoutines, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, basketService: EnterpriseBasketServiceInterface, userService: UserServiceInterface);
100
103
  protected resultsSessionName: string;
101
104
  protected multiResultsSessionName: string;
102
105
  protected resetQuery(): void;
@@ -131,9 +134,11 @@ export declare class CabHireEnterpriseSearch<CH_Q extends CabhireQuoteFetcherTyp
131
134
  getOutboundFormVisibility(): BehaviorSubject<boolean>;
132
135
  getInboundFormVisibility(): BehaviorSubject<boolean>;
133
136
  updateFromPreviousSearches(previousItems: Record<ServiceType, BasketItem>): void;
137
+ updateSearchFromExpiredBasketItem(basketItem: BasketItem): void;
138
+ private convertAddressLocation;
134
139
  getTransType(): string;
135
140
  getPassengers: () => string;
136
- addCabHireToBasket(cabHireQuote: CabHireQuote, cabHireQuery: SearchCabHireQueryVariables): Promise<boolean>;
141
+ addCabHireToBasket(cabHireQuote: CabHireQuote, cabHireQuery: SearchCabHireQueryVariables): Promise<DifferentInvokdedUserReasons>;
137
142
  switchFromAndToLocation(): void;
138
143
  updateLowestPrice(results: CabHireQuote[]): ICheapestPrice;
139
144
  getTermsAndCond(cabHireQuote: CabHireQuote): {
@@ -10,13 +10,14 @@ import { ValueDisplay } from '../interfaces/value-display';
10
10
  import { EnterpriseSearchServiceInterface } from '../interfaces/Isearch.service';
11
11
  import { EnterpriseBasketServiceInterface } from '../interfaces/Ienterprise-basket.service';
12
12
  import { CarHireDetailRequestResponse, BasketItem, CarHireInputIdentifiers, CarHireVehicleAvailibility, QuerySearchCarHireArgs, ServiceType, CarHireTransmission, CarHireClass, CarHireType, SearchCarHireQueryVariables, SaveRecentSearchMutationVariables } from '../types/graphql.types';
13
- import { CarHireQuoteResult, CarHireQuoteResultArray, NgbDateStruct, OBTAirportDetails, Vendor, LocationTypes, LocationDetails, CarHireDepot, RecentSearch, WithinDistance, SaveFavouriteSearchResult } from '../types/types';
13
+ import { CarHireQuoteResult, CarHireQuoteResultArray, NgbDateStruct, OBTAirportDetails, Vendor, LocationTypes, LocationDetails, CarHireDepot, RecentSearch, WithinDistance, SaveFavouriteSearchResult, DifferentInvokdedUserReasons } from '../types/types';
14
14
  import { BaseCarhireQuoteFetcher, CarHireFetcherType } from '../fetchers/carhire-quote-fetcher';
15
15
  import { CarhireEnterpriseSearchInterface, CarHireTempParams } from '../interfaces/Icarhire-enterprise-search';
16
16
  import { ICheapestPrice } from '../interfaces/cheapest-price';
17
17
  import { BaseCarHireAvailabilityDetailFetcher, CarHireAvailabilityDetailFetcherType } from '../fetchers/carhire-availability-detail.fetcher';
18
18
  import { ICarClasses } from '../interfaces/car-hire-classes.interface';
19
19
  import { Traveller } from '../models/traveller.object';
20
+ import { UserServiceInterface } from '../interfaces/Iuser.service';
20
21
  export declare enum SortTypesCar {
21
22
  price = "price",
22
23
  brand = "brand",
@@ -28,7 +29,6 @@ export declare class CarhireEnterpriseSearch<CH_Q extends CarHireFetcherType, CH
28
29
  private carhirefetcher;
29
30
  private carHireAvailabilityDetailFetcher;
30
31
  private basketService;
31
- private searchService;
32
32
  static readonly STORAGE_SESSION_PARAMS = "carhire_params";
33
33
  static readonly STORAGE_SESSION_RESULTS = "carhire_results";
34
34
  private _carTypeCodes;
@@ -129,7 +129,7 @@ export declare class CarhireEnterpriseSearch<CH_Q extends CarHireFetcherType, CH
129
129
  get carTypeCodes(): [string, string, CarHireType][];
130
130
  get vendors(): Vendor[];
131
131
  get sortingOptions(): CarHireSort[];
132
- constructor(carhirefetcher: BaseCarhireQuoteFetcher<CH_Q>, carHireAvailabilityDetailFetcher: BaseCarHireAvailabilityDetailFetcher<CHAD_Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface);
132
+ constructor(carhirefetcher: BaseCarhireQuoteFetcher<CH_Q>, carHireAvailabilityDetailFetcher: BaseCarHireAvailabilityDetailFetcher<CHAD_Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, userService: UserServiceInterface);
133
133
  protected resultsSessionName: string;
134
134
  protected multiResultsSessionName: string;
135
135
  protected resetQuery(): void;
@@ -182,12 +182,19 @@ export declare class CarhireEnterpriseSearch<CH_Q extends CarHireFetcherType, CH
182
182
  * @param results - full results from sort results function
183
183
  */
184
184
  sortByBrand(results?: CarHireQuoteResultArray): CarHireQuoteResultArray;
185
+ /**
186
+ * @description - sort the results
187
+ * @param results - full results from sort results function
188
+ */
189
+ sortByPreferred(results?: CarHireQuoteResultArray): CarHireQuoteResultArray;
185
190
  /**
186
191
  * @description - get the price of a individual car
187
192
  */
188
193
  getPrice(car: CarHireQuoteResult): number;
189
194
  getMinPrice(cars: CarHireQuoteResultArray): number;
190
195
  getMaxPrice(cars: CarHireQuoteResultArray): number;
196
+ updateSearchFromExpiredBasketItem(basketItem: BasketItem): void;
197
+ private updateSearchForCarbyPostCode;
191
198
  updateFromPreviousSearches(previousItems: Record<ServiceType, BasketItem>): void;
192
199
  private _updatePickupDateTime;
193
200
  private _updateDropoffDateTime;
@@ -204,11 +211,12 @@ export declare class CarhireEnterpriseSearch<CH_Q extends CarHireFetcherType, CH
204
211
  /**
205
212
  * @description - add car hire to basket
206
213
  */
207
- addCarHireToBasket(carHireVehicleAvailibility: CarHireVehicleAvailibility, carHireQuery: SearchCarHireQueryVariables): Promise<boolean>;
214
+ addCarHireToBasket(carHireVehicleAvailibility: CarHireVehicleAvailibility, carHireQuery: SearchCarHireQueryVariables): Promise<DifferentInvokdedUserReasons>;
208
215
  getTermsAndCond(carHireVehicle: CarHireVehicleAvailibility, carHireQuery: SearchCarHireQueryVariables): {
209
216
  name: string;
210
217
  value: string;
211
218
  }[];
212
219
  saveSearch(): Observable<SaveFavouriteSearchResult>;
213
220
  applyFavourite(fav: any): Promise<void>;
221
+ checkForPreferred(): boolean;
214
222
  }
@@ -7,7 +7,7 @@ import { BehaviorSubject, Observable } from 'rxjs';
7
7
  import { ValueDisplay } from '../interfaces/value-display';
8
8
  import { FlightFilters } from '../interfaces/flight-filters.interface';
9
9
  import { BasketItem, DestinationEntry, FareType, FlightCabinClass, FlightFareTotal, FlightItinerary, FlightJourney, SearchFlightsV2QueryVariables, ServiceType, SaveRecentSearchMutationVariables } from '../types/graphql.types';
10
- import { EurostarQuoteResult, NgbDateStruct, OBTAirportDetails, OBTAirlinesDetails, FlightDirectionEnum, GroupedFlights, FlightItineraryWithExtensions, RecentSearch, EurostarResults, EurostarItem, EurostarFare, EurostarQuoteResultArray, SaveFavouriteSearchResult } from '../types/types';
10
+ import { EurostarQuoteResult, NgbDateStruct, OBTAirportDetails, OBTAirlinesDetails, FlightDirectionEnum, GroupedFlights, FlightItineraryWithExtensions, RecentSearch, EurostarResults, EurostarItem, EurostarFare, EurostarQuoteResultArray, SaveFavouriteSearchResult, DifferentInvokdedUserReasons, EurostarMulti } from '../types/types';
11
11
  import { UserServiceInterface } from '../interfaces/Iuser.service';
12
12
  import { EnterpriseSearchServiceInterface } from '../interfaces/Isearch.service';
13
13
  import { ICheapestPrice } from '../interfaces/cheapest-price';
@@ -16,6 +16,7 @@ import { IMultiDestination } from '../interfaces/flight-multi-destination.interf
16
16
  import { EnterpriseBasketServiceInterface, InternalBasketInterface } from '../interfaces/Ienterprise-basket.service';
17
17
  import { BaseEurostarQuoteFetcher, EurostarQuoteFetcherType } from '../fetchers/eurostar-quote.fetcher';
18
18
  import { EurostarEnterpriseSearchInterface, EurostarTempParams } from '../interfaces/Ieurostar-enterprise-search';
19
+ import { ApplyJitFlightRulesType, BaseApplyJitFlightRulesFetcher } from '../fetchers/apply-jit-flight-rules';
19
20
  import { AllowedClasses, FlightOperator, TimeWindow } from './flight-enterprise-search';
20
21
  import { BaseModalOpenerService } from '../services/modal-opener.service';
21
22
  export declare type EurostarStation = {
@@ -51,11 +52,11 @@ interface EurostarSessionType {
51
52
  grouped: GroupedFlights;
52
53
  query: SearchFlightsV2QueryVariables;
53
54
  }
54
- export declare class EurostarEnterpriseSearch<SE_Q extends EurostarQuoteFetcherType> extends BaseEnterpriseSearch<EurostarTempParams, EurostarQuoteResult, EurostarQuoteResultArray> implements EurostarEnterpriseSearchInterface {
55
+ export declare class EurostarEnterpriseSearch<SE_Q extends EurostarQuoteFetcherType, AJF_Q extends ApplyJitFlightRulesType> extends BaseEnterpriseSearch<EurostarTempParams, EurostarQuoteResult, EurostarQuoteResultArray> implements EurostarEnterpriseSearchInterface {
55
56
  private eurostarFetcher;
56
57
  private basketService;
57
- private searchService;
58
58
  private modalService;
59
+ private applyFlightRules;
59
60
  static readonly STORAGE_SESSION_PARAMS = "search_eurostar";
60
61
  static readonly STORAGE_SESSION_RESULTS = "results_eurostar";
61
62
  type: ServiceType;
@@ -97,6 +98,8 @@ export declare class EurostarEnterpriseSearch<SE_Q extends EurostarQuoteFetcherT
97
98
  protected multiResultsSessionName: string;
98
99
  selectedGroupFlight: FlightItineraryWithExtensions;
99
100
  private _displayAddHotel;
101
+ private _ruleActionSummary;
102
+ multi: EurostarMulti[];
100
103
  filters: BehaviorSubject<FlightFilters>;
101
104
  get displayAddHotel(): boolean;
102
105
  set displayAddHotel(newVal: boolean);
@@ -165,10 +168,11 @@ export declare class EurostarEnterpriseSearch<SE_Q extends EurostarQuoteFetcherT
165
168
  set negotiated(value: boolean);
166
169
  get includeNearbyAirports(): boolean;
167
170
  set includeNearbyAirports(value: boolean);
168
- constructor(eurostarFetcher: BaseEurostarQuoteFetcher<SE_Q>, helpers: BaseHelperRoutines, userService: UserServiceInterface, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, modalService: BaseModalOpenerService);
171
+ constructor(eurostarFetcher: BaseEurostarQuoteFetcher<SE_Q>, helpers: BaseHelperRoutines, userService: UserServiceInterface, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, modalService: BaseModalOpenerService, applyFlightRules: BaseApplyJitFlightRulesFetcher<AJF_Q>);
169
172
  protected processResults(results1: EurostarQuoteResult): EurostarQuoteResultArray;
170
173
  matchFares(acc: EurostarItem[], out: EurostarItem): EurostarItem[];
171
- formatEurostarResults(results: FlightJourney[], total: FlightFareTotal, index: number): EurostarItem;
174
+ formatEurostarResults(results: FlightJourney[], total: FlightFareTotal, journeyHash: string, index: number): EurostarItem;
175
+ private updateRules;
172
176
  protected resetQuery(checkIsValid?: boolean): void;
173
177
  resetParams(): void;
174
178
  private _isValid;
@@ -209,6 +213,7 @@ export declare class EurostarEnterpriseSearch<SE_Q extends EurostarQuoteFetcherT
209
213
  * @memberof EurostarInfo
210
214
  */
211
215
  sortByPrice(results: EurostarResults[], dir?: boolean): EurostarResults[];
216
+ updateSearchFromExpiredBasketItem(basketItem: BasketItem): void;
212
217
  updateFromPreviousSearches(previousItems: Record<ServiceType, BasketItem>): void;
213
218
  getTotalBaggage(result: FlightItinerary): number;
214
219
  /**
@@ -225,10 +230,12 @@ export declare class EurostarEnterpriseSearch<SE_Q extends EurostarQuoteFetcherT
225
230
  */
226
231
  applyFilters(filters: FlightFilters): void;
227
232
  selectGroupedEurostar(selectedEurostar: EurostarItem, fare: EurostarFare, direction: FlightDirectionEnum): Promise<void>;
233
+ private _updateTravelPolicies;
228
234
  resetSelectedFares(): void;
229
235
  removeSelectedFlags(result: EurostarResults): EurostarResults;
230
236
  updateLowestPrice(results: EurostarQuoteResultArray): ICheapestPrice;
231
- doBooking(intBasket: InternalBasketInterface, selectedFlight: EurostarItem, schemaDetails: any, outboundDate: string, inboundDate: string, price: number, requiresReason: boolean): void;
237
+ doBooking(intBasket: InternalBasketInterface, selectedFlight: EurostarItem, schemaDetails: any, outboundDate: string, inboundDate: string, price: number, requiresReason: boolean): Promise<DifferentInvokdedUserReasons>;
238
+ get lowestPrice(): ICheapestPrice;
232
239
  makeSchemaFlights(selectedFlight: FlightJourney, flightGroup: 'outbound' | 'inbound', groupIndex: number, segmentIndex?: number): any;
233
240
  private createGroupedItem;
234
241
  protected makeSessionResults(data: EurostarQuoteResultArray): EurostarSessionType;
@@ -236,7 +243,7 @@ export declare class EurostarEnterpriseSearch<SE_Q extends EurostarQuoteFetcherT
236
243
  getMaxFlightPriceForBrand(matchingBrandFlights: FlightItinerary[]): number;
237
244
  isOverNight(): boolean;
238
245
  minToHour: (dur: number) => string;
239
- addEurostarJourneysToBasket(eurostarQuote: FlightItineraryWithExtensions): Promise<boolean>;
246
+ addEurostarJourneysToBasket(eurostarQuote: FlightItineraryWithExtensions): Promise<DifferentInvokdedUserReasons>;
240
247
  getTermsAndCond(eurostarQuote: FlightItineraryWithExtensions): {
241
248
  name: string;
242
249
  value: string;
@@ -5,15 +5,15 @@ import { FastTrackFilters } from '../interfaces/fast-track-filters.interface';
5
5
  import { EnterpriseBasketServiceInterface } from '../interfaces/Ienterprise-basket.service';
6
6
  import { FastTrackEnterpriseSearchInterface, FastTrackTempParams } from '../interfaces/Ifast-track-enterprise-search';
7
7
  import { EnterpriseSearchServiceInterface } from '../interfaces/Isearch.service';
8
+ import { UserServiceInterface } from '../interfaces/Iuser.service';
8
9
  import { BaseStorageService } from '../services/storage.service';
9
10
  import { BasketItem, FastTrackQuote, SaveRecentSearchMutationVariables, SearchFastTrackQueryVariables, ServiceType } from '../types/graphql.types';
10
- import { FastTrackQuoteResultArray, NgbDateStruct, OBTAirportDetails, RecentSearch } from '../types/types';
11
+ import { DifferentInvokdedUserReasons, FastTrackQuoteResultArray, NgbDateStruct, OBTAirportDetails, RecentSearch } from '../types/types';
11
12
  import { BaseEnterpriseSearch } from './base-enterprise';
12
13
  import { BaseHelperRoutines } from './helpers';
13
14
  export declare class FastTrackEnterpriseSearch<FTQ_Q extends FastTrackQuoteFetcherType> extends BaseEnterpriseSearch<FastTrackTempParams, FastTrackQuoteResultArray, FastTrackQuoteResultArray> implements FastTrackEnterpriseSearchInterface {
14
15
  private fasttrackFetcher;
15
16
  private basketService;
16
- private searchService;
17
17
  static readonly STORAGE_SESSION_PARAMS = "search_fasttrack";
18
18
  static readonly STORAGE_SESSION_RESULTS = "results_fasttrack";
19
19
  type: ServiceType;
@@ -37,15 +37,16 @@ export declare class FastTrackEnterpriseSearch<FTQ_Q extends FastTrackQuoteFetch
37
37
  private _isValid;
38
38
  protected resultsSessionName: string;
39
39
  protected multiResultsSessionName: string;
40
- constructor(fasttrackFetcher: BaseFastTrackQuoteFetcher<FTQ_Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface);
40
+ constructor(fasttrackFetcher: BaseFastTrackQuoteFetcher<FTQ_Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, userService: UserServiceInterface);
41
41
  protected resetQuery(): void;
42
42
  startSearch(): Promise<boolean>;
43
43
  getSearchQuery(): SearchFastTrackQueryVariables;
44
44
  getRecentSearchQuery(query: SearchFastTrackQueryVariables): SaveRecentSearchMutationVariables;
45
45
  startRecentSearch(recentSearch: RecentSearch): void;
46
+ updateSearchFromExpiredBasketItem(basketItem: BasketItem): void;
46
47
  updateFromPreviousSearches(previousItems: Record<ServiceType, BasketItem>): void;
47
48
  updateLowestPrice(results: FastTrackQuote[]): ICheapestPrice;
48
- addFastTrackToBasket(fasttrackQuote: FastTrackQuote, fasttrackQuery: SearchFastTrackQueryVariables): Promise<boolean>;
49
+ addFastTrackToBasket(fasttrackQuote: FastTrackQuote, fasttrackQuery: SearchFastTrackQueryVariables): Promise<DifferentInvokdedUserReasons>;
49
50
  getTermsAndCond(fasttrackQuote: FastTrackQuote): {
50
51
  name: string;
51
52
  value: string;
@@ -7,7 +7,7 @@ import { BehaviorSubject, Observable } from 'rxjs';
7
7
  import { ValueDisplay } from '../interfaces/value-display';
8
8
  import { FlightFilters } from '../interfaces/flight-filters.interface';
9
9
  import { BasketItem, DestinationEntry, FareConditions, FareType, FlightCabinClass, FlightItinerary, FlightJourney, SaveRecentSearchMutationVariables, SearchFlightsV2QueryVariables, ServiceType } from '../types/graphql.types';
10
- import { FlightAllQuoteResult, FlightDirectionEnum, FlightGroupedQuoteResult, FlightItineraryWithExtensions, FlightMulti, FlightQuoteResultArray, GroupedFlights, NgbDateStruct, OBTAirlinesDetails, OBTAirportDetails, RecentSearch, SaveFavouriteSearchResult } from '../types/types';
10
+ import { DifferentInvokdedUserReasons, FlightAllQuoteResult, FlightDirectionEnum, FlightGroupedQuoteResult, FlightItineraryWithExtensions, FlightMulti, FlightQuoteResultArray, GroupedFlights, NgbDateStruct, OBTAirlinesDetails, OBTAirportDetails, RecentSearch, SaveFavouriteSearchResult } from '../types/types';
11
11
  import { BaseFlightQuoteFetcher, FlightQuoteFetcherType } from '../fetchers/flight-quote.fetcher';
12
12
  import { UserServiceInterface } from '../interfaces/Iuser.service';
13
13
  import { EnterpriseSearchServiceInterface } from '../interfaces/Isearch.service';
@@ -52,7 +52,6 @@ export declare class FlightEnterpriseSearch<FQ_Q extends FlightQuoteFetcherType,
52
52
  private flightfetcher;
53
53
  private userService;
54
54
  private basketService;
55
- private searchService;
56
55
  private applyFlightRules;
57
56
  private modalService;
58
57
  static readonly STORAGE_SESSION_PARAMS = "search_flight";
@@ -101,6 +100,16 @@ export declare class FlightEnterpriseSearch<FQ_Q extends FlightQuoteFetcherType,
101
100
  selectedGroupId: number;
102
101
  private _ruleActionSummary;
103
102
  multi: FlightMulti[];
103
+ _cheapestPriceObject: {
104
+ dualOutbound: ICheapestPrice;
105
+ dualInbound: ICheapestPrice;
106
+ returns: ICheapestPrice;
107
+ };
108
+ get cheapestPriceObject(): {
109
+ dualOutbound: ICheapestPrice;
110
+ dualInbound: ICheapestPrice;
111
+ returns: ICheapestPrice;
112
+ };
104
113
  get timeArray(): ValueDisplay<string>[];
105
114
  get preferredCarriers(): OBTAirlinesDetails[];
106
115
  set preferredCarriers(value: OBTAirlinesDetails[]);
@@ -187,6 +196,7 @@ export declare class FlightEnterpriseSearch<FQ_Q extends FlightQuoteFetcherType,
187
196
  private updateAvaliableClasses;
188
197
  private getUpdatedCabinClass;
189
198
  updateFromPreviousSearches(_previousItems: Record<ServiceType, BasketItem>): void;
199
+ updateSearchFromExpiredBasketItem(basketItem: BasketItem): void;
190
200
  getTotalBaggage(result: FlightItinerary): number;
191
201
  isGroupedFlights(toTest: FlightQuoteResultArray): toTest is FlightGroupedQuoteResult[];
192
202
  /**
@@ -199,12 +209,13 @@ export declare class FlightEnterpriseSearch<FQ_Q extends FlightQuoteFetcherType,
199
209
  selectGroupedFlight(selectedFlight: FlightItineraryWithExtensions, direction: FlightDirectionEnum, groupId: number): Promise<void>;
200
210
  private _updateTravelPolicies;
201
211
  private bookSingleFlight;
202
- doBooking(intBasket: InternalBasketInterface, selectedFlight: FlightItineraryWithExtensions, schemaDetails: any, outboundDate: string, inboundDate?: string): void;
212
+ doBooking(intBasket: InternalBasketInterface, selectedFlight: FlightItineraryWithExtensions, schemaDetails: any, outboundDate: string, inboundDate?: string): Promise<DifferentInvokdedUserReasons>;
213
+ get absoluteCheapestPrice(): ICheapestPrice;
203
214
  private makeSchemaFlights;
204
- addFlightJourneysToBasket(flightQuote: FlightItineraryWithExtensions): Promise<boolean>;
215
+ addFlightJourneysToBasket(flightQuote: FlightItineraryWithExtensions): Promise<DifferentInvokdedUserReasons>;
205
216
  setFlightDisplayType(displayType: FlightDisplayTypes): void;
206
217
  _applyFilter(): void;
207
- openFlightFareRules(rules: FareConditions, flights: FlightJourney[]): void;
218
+ openFlightFareRules(rules: FareConditions, flights: FlightJourney[], options?: any, flightDetail?: FlightItinerary): void;
208
219
  getTermsAndCond(flightQuote: FlightItineraryWithExtensions): {
209
220
  name: string;
210
221
  value: string;
@@ -20,6 +20,7 @@ export declare class BaseHelperRoutines {
20
20
  static TIME_FORMAT: string;
21
21
  static TIME_FORMAT_COLON: string;
22
22
  static MMDDYY_DATE: string;
23
+ isGroupTicket(code: string): boolean;
23
24
  minToHour(dur: number): string;
24
25
  makeColonTime(time: string): string;
25
26
  nonNullMin(key: string, ...args: any[]): any;
@@ -37,7 +38,7 @@ export declare class BaseHelperRoutines {
37
38
  formatGraphQLDateTime(date: moment.Moment): string;
38
39
  formatIsoDateNoHyphans(date: moment.Moment): string;
39
40
  generateTimesList(from?: number, to?: number, step?: number): string[];
40
- momentToNgDate(date: moment.Moment): NgbDateStruct;
41
+ momentToNgDate(date: moment.Moment | string): NgbDateStruct;
41
42
  ngDateToDate(date: NgbDateStruct): Date;
42
43
  ngDateToMoment(date: NgbDateStruct, time?: string): moment.Moment;
43
44
  todayToNgbDateStruct(): NgbDateStruct;
@@ -138,6 +139,10 @@ export declare class BaseHelperRoutines {
138
139
  [key: string]: {
139
140
  managementInfo: ManagementInfoAndIsValid[];
140
141
  };
142
+ }, miPerGuest: {
143
+ [key: string]: {
144
+ managementInfo: ManagementInfoAndIsValid[];
145
+ };
141
146
  }): boolean;
142
147
  needsMi(basket: BasketDetails, needsToViewMi: boolean): boolean;
143
148
  findService(services: UserServices, id: string): Service;
@@ -5,7 +5,7 @@ import { BaseHelperRoutines } from './helpers';
5
5
  import { BehaviorSubject, Observable, Subject } from 'rxjs';
6
6
  import { BaseEnvironment } from './enviroment';
7
7
  import { BaseHotelAvalibilityService } from '../services/hotel-avallibility.service';
8
- import { Country, HotelQuoteResult, HotelQuoteResultArray, LocationTypes, NgbDateStruct, LocationDetails, RecentSearch, HotelDetails, HotelDetailsArray, SaveFavouriteSearchResult } from '../types/types';
8
+ import { Country, HotelQuoteResult, HotelQuoteResultArray, LocationTypes, NgbDateStruct, LocationDetails, RecentSearch, HotelDetails, HotelDetailsArray, SaveFavouriteSearchResult, DifferentInvokdedUserReasons } from '../types/types';
9
9
  import { BasketItem, ConfermaOfficeNames, HotelLocation, HotelRoom, HotelTag, SaveRecentSearchMutationVariables, SearchHotelsQueryVariables, ServiceType } from '../types/graphql.types';
10
10
  import { BaseHotelQuoteFetcher, HotelQuoteFetcherType } from '../fetchers/hotel-quote-fetcher';
11
11
  import { UserServiceInterface } from '../interfaces/Iuser.service';
@@ -30,7 +30,6 @@ export declare class HotelEnterpriseSearch<HQ_Q extends HotelQuoteFetcherType, H
30
30
  private environment;
31
31
  private avaliabilityService;
32
32
  private basketService;
33
- private searchService;
34
33
  private httpCallService;
35
34
  private quickListFetcher;
36
35
  private getRailStationFetcher;
@@ -42,6 +41,8 @@ export declare class HotelEnterpriseSearch<HQ_Q extends HotelQuoteFetcherType, H
42
41
  location_types: BehaviorSubject<LocationTypes[]>;
43
42
  offices: BehaviorSubject<LocationTypes[]>;
44
43
  lastActivePage: BehaviorSubject<number>;
44
+ jitRulesReceived: BehaviorSubject<boolean>;
45
+ reapplySorting: BehaviorSubject<boolean>;
45
46
  readonly galleries: {
46
47
  [key: string]: string[];
47
48
  };
@@ -71,6 +72,7 @@ export declare class HotelEnterpriseSearch<HQ_Q extends HotelQuoteFetcherType, H
71
72
  };
72
73
  private localFilters;
73
74
  currentView: HotelView;
75
+ private userCurrency;
74
76
  private _max_no_of_rooms;
75
77
  private _max_rooms_array;
76
78
  private _max_no_of_occupants;
@@ -147,6 +149,8 @@ export declare class HotelEnterpriseSearch<HQ_Q extends HotelQuoteFetcherType, H
147
149
  private inLighteningPriceRange;
148
150
  private hasChain;
149
151
  private breakfastTypeFilter;
152
+ private accessibleRoomTypeFilter;
153
+ private getHotelObjectValue;
150
154
  byMostExpensive(): void;
151
155
  /**
152
156
  * @param {boolean} min
@@ -164,8 +168,11 @@ export declare class HotelEnterpriseSearch<HQ_Q extends HotelQuoteFetcherType, H
164
168
  addFilter(filter: string, type: keyof HotelFilters): void;
165
169
  removeFilter(filter: string, type: keyof HotelFilters): void;
166
170
  resetFilters(): void;
171
+ updateSearchFromExpiredBasketItem(basketItem: BasketItem): void;
167
172
  updateFromPreviousSearches(previousItems: Record<ServiceType, BasketItem>): void;
168
173
  private hasPreferred;
174
+ atLeastOnePreferredAgentHotel(): boolean;
175
+ atLeastOnePreferredClientHotel(): boolean;
169
176
  getmaxPriceForCurrency(currency: string): any;
170
177
  private getExtraFilter;
171
178
  private getAmenitiesFilter;
@@ -180,7 +187,7 @@ export declare class HotelEnterpriseSearch<HQ_Q extends HotelQuoteFetcherType, H
180
187
  * @desc - return the occupancy for a room - need to calculate based on no of rooms, no of travellers and currently occupied rooms;
181
188
  **/
182
189
  calcRoomOccupancy(no_of_rooms: number, travellers: number): number;
183
- addHotelRoomToBasket(hotel: HotelDetails, hotelRoom: HotelRoom, hotelQuery: SearchHotelsQueryVariables, travellers?: Traveller[]): Promise<boolean>;
190
+ addHotelRoomToBasket(hotel: HotelDetails, hotelRoom: HotelRoom, hotelQuery: SearchHotelsQueryVariables, travellers?: Traveller[]): Promise<DifferentInvokdedUserReasons>;
184
191
  getTermsAndCond(hotelRoom: HotelRoom, hotelQuery: SearchHotelsQueryVariables): {
185
192
  name: string;
186
193
  value: string;
@@ -4,7 +4,7 @@ import { BaseEnterpriseSearch } from './base-enterprise';
4
4
  import { BaseStorageService } from '../services/storage.service';
5
5
  import { BaseHelperRoutines } from './helpers';
6
6
  import { ValueDisplay } from '../interfaces/value-display';
7
- import { NgbDateStruct, IrlQuoteResultArray, RecentSearch, IrlTicketOptionWithSelected, SaveFavouriteSearchResult } from '../types/types';
7
+ import { NgbDateStruct, IrlQuoteResultArray, RecentSearch, IrlTicketOptionWithSelected, SaveFavouriteSearchResult, DifferentInvokdedUserReasons } from '../types/types';
8
8
  import { BasketItem, IrlClass, IrlJourneyOption, IrlJourneyOptions, SaveRecentSearchMutationVariables, IrlTicketOption, SearchIrlQueryVariables, ServiceType, IrlJourneyType, IrlSupplier, IrlTravelCard, IrlSegment } from '../types/graphql.types';
9
9
  import { BaseIrlDiscountCardFetcher, IrlDiscountCardFetcherType } from '../fetchers/irl-discount-card-fetcher';
10
10
  import { BaseIrlQuoteFetcher, IrlQuoteFetcherType } from '../fetchers/irl-quote-fetcher';
@@ -15,6 +15,7 @@ import { ages } from '../models/traveller.object';
15
15
  import { ICheapestPrice } from '../interfaces/cheapest-price';
16
16
  import { SortMethod } from './eurostar-enterprise-search';
17
17
  import { BaseGetIrlSupplierStationFetcher, GetIrlSupplierStationFetcherType } from '../fetchers/get-irl-supplier-station.fetcher';
18
+ import { UserServiceInterface } from '../interfaces/Iuser.service';
18
19
  export declare enum SortTypesIrl {
19
20
  CheapestFirst = "C",
20
21
  EarliestFirst = "E",
@@ -48,7 +49,6 @@ export declare class IRLEnterpriseSearch<Q extends IrlQuoteFetcherType, GIDF_Q e
48
49
  private Irlfetcher;
49
50
  private irlDiscountCardsFetcher;
50
51
  private basketService;
51
- private searchService;
52
52
  private getIrlSupplierStationFetcher;
53
53
  static readonly STORAGE_SESSION_PARAMS = "search_irl";
54
54
  static readonly STORAGE_SESSION_RESULTS = "irl_results";
@@ -137,8 +137,10 @@ export declare class IRLEnterpriseSearch<Q extends IrlQuoteFetcherType, GIDF_Q e
137
137
  set dateDir(data: boolean);
138
138
  get chosenSearchClass(): IrlClass;
139
139
  set chosenSearchClass(classR: IrlClass);
140
- get discountCard(): IrlTravelCard;
141
- set discountCard(data: IrlTravelCard);
140
+ _discountCard: IrlTravelCard[];
141
+ get discountCard(): IrlTravelCard[];
142
+ set discountCard(data: IrlTravelCard[]);
143
+ get discountCardsList(): string;
142
144
  private _irlDiscountCardsArray;
143
145
  get irlDiscountCardsArray(): IrlTravelCard[];
144
146
  set irlDiscountCardsArray(array: IrlTravelCard[]);
@@ -175,8 +177,8 @@ export declare class IRLEnterpriseSearch<Q extends IrlQuoteFetcherType, GIDF_Q e
175
177
  private _additionalInstructions;
176
178
  get additionalInstructions(): string;
177
179
  set additionalInstructions(data: string);
178
- constructor(Irlfetcher: BaseIrlQuoteFetcher<Q>, irlDiscountCardsFetcher: BaseIrlDiscountCardFetcher<GIDF_Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, getIrlSupplierStationFetcher: BaseGetIrlSupplierStationFetcher<GISSF_Q>);
179
- irlDiscountCards: IrlTravelCard;
180
+ constructor(Irlfetcher: BaseIrlQuoteFetcher<Q>, irlDiscountCardsFetcher: BaseIrlDiscountCardFetcher<GIDF_Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, getIrlSupplierStationFetcher: BaseGetIrlSupplierStationFetcher<GISSF_Q>, userService: UserServiceInterface);
181
+ irlDiscountCards: string;
180
182
  protected processResults(results: IrlQuoteResultArray): ({
181
183
  __typename?: "IRLJourneyOptions";
182
184
  } & Pick<IrlJourneyOptions, "source" | "sourceId" | "jrfreference"> & {
@@ -376,6 +378,7 @@ export declare class IRLEnterpriseSearch<Q extends IrlQuoteFetcherType, GIDF_Q e
376
378
  })[];
377
379
  })[];
378
380
  protected resetQuery(): void;
381
+ resetIrlForm(): void;
379
382
  private _isValid;
380
383
  startSearch(): Promise<boolean>;
381
384
  getRecentSearchQuery(query: SearchIrlQueryVariables): SaveRecentSearchMutationVariables;
@@ -384,13 +387,15 @@ export declare class IRLEnterpriseSearch<Q extends IrlQuoteFetcherType, GIDF_Q e
384
387
  private _updateOutboundDateTime;
385
388
  private _updateReturnDateTime;
386
389
  getSearchQuery(): SearchIrlQueryVariables;
390
+ updateSearchFromExpiredBasketItem(basketItem: BasketItem): void;
387
391
  updateFromPreviousSearches(previousItems: Record<ServiceType, BasketItem>): void;
388
392
  updateCanCombine(tkt: IrlTicketOption): void;
389
393
  getLegsFromIrlJourneyOption(railJourneyOption: IrlJourneyOption): any[];
390
394
  getSelectedIrlTicketOption(irlJourneyOption: IrlJourneyOption, irlTicketOption: IrlTicketOption, providerIndex: number): IrlTicketOption;
391
- addSingleJourneyToBasket(serviceId: string, irlQuery: SearchIrlQueryVariables, outbound: IrlTicketOption, irlJourneyOption: IrlJourneyOption): Promise<boolean>;
392
- addReturnJourneyToBasket(serviceId: string, irlQuery: SearchIrlQueryVariables, inbound: IrlTicketOption, inJourneyOption: IrlJourneyOption, outboundTicket?: IrlTicketOption, outboundJourney?: IrlJourneyOption): Promise<boolean>;
395
+ addSingleJourneyToBasket(serviceId: string, irlQuery: SearchIrlQueryVariables, outbound: IrlTicketOption, irlJourneyOption: IrlJourneyOption): Promise<DifferentInvokdedUserReasons>;
396
+ addReturnJourneyToBasket(serviceId: string, irlQuery: SearchIrlQueryVariables, inbound: IrlTicketOption, inJourneyOption: IrlJourneyOption, outboundTicket?: IrlTicketOption, outboundJourney?: IrlJourneyOption): Promise<DifferentInvokdedUserReasons>;
393
397
  updateLowestPrice(results: IrlJourneyOptions[]): ICheapestPrice;
398
+ findCheapestTotal(results: IrlJourneyOptions[]): ICheapestPrice;
394
399
  findCheapestTicket(results: IrlJourneyOptions[]): number;
395
400
  /**
396
401
  * Sort results by price
@@ -3,17 +3,17 @@ import { BehaviorSubject, Observable } from 'rxjs';
3
3
  import moment from 'moment';
4
4
  import { BaseStorageService } from '../services/storage.service';
5
5
  import { BaseHelperRoutines } from './helpers';
6
- import { LoungeQuoteResultArray, NgbDateStruct, OBTAirportDetails, RecentSearch, SaveFavouriteSearchResult, TerminalsType } from '../types/types';
6
+ import { DifferentInvokdedUserReasons, LoungeQuoteResultArray, NgbDateStruct, OBTAirportDetails, RecentSearch, SaveFavouriteSearchResult, TerminalsType } from '../types/types';
7
7
  import { BasketItem, LoungeQuote, SaveRecentSearchMutationVariables, SearchLoungesQueryVariables, ServiceType } from '../types/graphql.types';
8
8
  import { BaseLoungeQuoteFetcher, LoungeQuoteFetcherType } from '../fetchers/lounge-quote.fetcher';
9
9
  import { EnterpriseBasketServiceInterface } from '../interfaces/Ienterprise-basket.service';
10
10
  import { EnterpriseSearchServiceInterface } from '../interfaces/Isearch.service';
11
11
  import { LoungesEnterpriseSearchInterface, LoungesTempParams } from '../interfaces/Ilounges-enterprise-search';
12
12
  import { ICheapestPrice } from '../interfaces/cheapest-price';
13
+ import { UserServiceInterface } from '../interfaces/Iuser.service';
13
14
  export declare class LoungesEnterpriseSearch<LQ_Q extends LoungeQuoteFetcherType> extends BaseEnterpriseSearch<LoungesTempParams, LoungeQuoteResultArray, LoungeQuoteResultArray> implements LoungesEnterpriseSearchInterface {
14
15
  private loungefetcher;
15
16
  private basketService;
16
- private searchService;
17
17
  static readonly STORAGE_SESSION_PARAMS = "search_lounge";
18
18
  static readonly STORAGE_SESSION_RESULTS = "results_lounge";
19
19
  type: ServiceType;
@@ -51,7 +51,7 @@ export declare class LoungesEnterpriseSearch<LQ_Q extends LoungeQuoteFetcherType
51
51
  set arrivalDatetime(value: moment.Moment);
52
52
  protected resultsSessionName: string;
53
53
  protected multiResultsSessionName: string;
54
- constructor(loungefetcher: BaseLoungeQuoteFetcher<LQ_Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface);
54
+ constructor(loungefetcher: BaseLoungeQuoteFetcher<LQ_Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, userService: UserServiceInterface);
55
55
  protected resetQuery(): void;
56
56
  getSearchQuery(): SearchLoungesQueryVariables;
57
57
  private _isValid;
@@ -63,7 +63,8 @@ export declare class LoungesEnterpriseSearch<LQ_Q extends LoungeQuoteFetcherType
63
63
  sortResultsPrice(resultArray: LoungeQuote[], asc?: boolean): LoungeQuote[];
64
64
  sortByTerminal(resultArray?: LoungeQuote[]): void;
65
65
  updateFromPreviousSearches(previousItems: Record<ServiceType, BasketItem>): void;
66
- addLoungeToBasket(loungeQuote: LoungeQuote, loungeQuery: SearchLoungesQueryVariables): Promise<boolean>;
66
+ updateSearchFromExpiredBasketItem(basketItem: BasketItem): void;
67
+ addLoungeToBasket(loungeQuote: LoungeQuote, loungeQuery: SearchLoungesQueryVariables): Promise<DifferentInvokdedUserReasons>;
67
68
  getTermsAndCond(loungeQuote: LoungeQuote): {
68
69
  name: string;
69
70
  value: any;
@@ -1,13 +1,13 @@
1
1
  import { BehaviorSubject, Observable } from 'rxjs';
2
2
  import { ValidatorChecker } from '../classes/validator.checker';
3
3
  import { EnterpriseBasketServiceInterface } from '../interfaces/Ienterprise-basket.service';
4
- import { BookedByField, FieldWrapper, ManagementInfo, ManagementInfoValue, Maybe, Scalars, SelectedManagementInfoValue, Service, UiPresentation } from '../types/graphql.types';
4
+ import { BookedByField, FieldWrapper, DefaultManagementInfoValue, ManagementInfo, ManagementInfoValue, Maybe, Scalars, SelectedManagementInfoValue, Service, UiPresentation } from '../types/graphql.types';
5
5
  import { GetMiAutoSugestionArray, ValidationErrors } from '../types/types';
6
6
  export declare abstract class ManagementInfoAndIsValid extends ValidatorChecker implements ManagementInfo {
7
7
  agentOnly: FieldWrapper<Scalars['Boolean']>;
8
8
  createdAt: FieldWrapper<Scalars['DateTime']>;
9
9
  dbId: FieldWrapper<Scalars['Int']>;
10
- defaultValue?: Maybe<FieldWrapper<ManagementInfoValue>>;
10
+ defaultValue?: Maybe<FieldWrapper<DefaultManagementInfoValue>>;
11
11
  description?: Maybe<FieldWrapper<Scalars['String']>>;
12
12
  fixed: FieldWrapper<Scalars['Boolean']>;
13
13
  fixedValue?: Maybe<FieldWrapper<ManagementInfoValue>>;
@@ -42,6 +42,6 @@ export declare abstract class ManagementInfoAndIsValid extends ValidatorChecker
42
42
  abstract getValue(): string;
43
43
  abstract setValue(val: string): void;
44
44
  search: (terms: Observable<string>) => Observable<GetMiAutoSugestionArray>;
45
- abstract save(basketid: string, userId?: string): void;
45
+ abstract save(basketid: string, userId?: string, guest?: boolean): void;
46
46
  }
47
47
  export declare const makeManagamentInfo: (managementInfo: ManagementInfo, basketService: EnterpriseBasketServiceInterface) => ManagementInfoAndIsValid;
@@ -12,6 +12,7 @@ export declare class ModalTypes {
12
12
  static readonly FlightExtrasDialogComponent: ModalTypes;
13
13
  static readonly OfflineRequestDialogComponent: ModalTypes;
14
14
  static readonly RequiresReasonDialogComponent: ModalTypes;
15
+ static readonly DifferentInvokdedUserComponent: ModalTypes;
15
16
  private _component;
16
17
  get component(): any;
17
18
  set component(value: any);