@sabstravtech/obtservices 0.0.26051001 → 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 (113) hide show
  1. package/angular/fetchers.d.ts +2 -0
  2. package/angular/lib/vendor/fetchers/get-office.fetcher.d.ts +7 -0
  3. package/angular/lib/vendor/fetchers/get-user-default-mi-value.fetcher.d.ts +7 -0
  4. package/angular/lib/vendor/services/enterprise-basket.service.d.ts +4 -4
  5. package/angular/lib/vendor/services/logon.service.d.ts +2 -2
  6. package/angular/lib/vendor/services/user.service.d.ts +5 -3
  7. package/angular/lib/vendor/types/graphql.angular.types.d.ts +389 -508
  8. package/angular/sabstravtech-obtservices-angular.metadata.json +1 -1
  9. package/base/fetchers.d.ts +2 -0
  10. package/base/lib/vendor/classes/base-enterprise.d.ts +3 -1
  11. package/base/lib/vendor/classes/cabhire-enterprise-search.d.ts +5 -1
  12. package/base/lib/vendor/classes/carhire-enterprise-search.d.ts +8 -1
  13. package/base/lib/vendor/classes/eurostar-enterprise-search.d.ts +11 -4
  14. package/base/lib/vendor/classes/fast-track-enterprise-search.d.ts +2 -1
  15. package/base/lib/vendor/classes/flight-enterprise-search.d.ts +11 -0
  16. package/base/lib/vendor/classes/hotel-enterprise-search.d.ts +4 -0
  17. package/base/lib/vendor/classes/irl-enterprise-search.d.ts +9 -4
  18. package/base/lib/vendor/classes/lounges-enterprise-search.d.ts +2 -1
  19. package/base/lib/vendor/classes/management-info-and-valid.d.ts +2 -2
  20. package/base/lib/vendor/classes/parking-enterprise-search.d.ts +2 -1
  21. package/base/lib/vendor/classes/rail-enterprise-search.d.ts +1 -1
  22. package/base/lib/vendor/classes/user-favourite.enum.d.ts +1 -0
  23. package/base/lib/vendor/fetchers/eurostar-quote.fetcher.d.ts +3 -1
  24. package/base/lib/vendor/fetchers/flight-quote.fetcher.d.ts +1 -0
  25. package/base/lib/vendor/fetchers/get-office.fetcher.d.ts +20 -0
  26. package/base/lib/vendor/fetchers/get-user-default-mi-value.fetcher.d.ts +21 -0
  27. package/base/lib/vendor/fetchers/search-users-can-book-for-fetcher.d.ts +2 -2
  28. package/base/lib/vendor/interfaces/Icabhire-enterprise-search.d.ts +1 -0
  29. package/base/lib/vendor/interfaces/Icarhire-enterprise-search.d.ts +2 -0
  30. package/base/lib/vendor/interfaces/Ienterprise-basket.service.d.ts +3 -2
  31. package/base/lib/vendor/interfaces/Iflight-enterprise-search.d.ts +6 -0
  32. package/base/lib/vendor/interfaces/Ihotel-enterprise-search.d.ts +3 -0
  33. package/base/lib/vendor/interfaces/Iirl-enterprise-search.d.ts +4 -4
  34. package/base/lib/vendor/interfaces/Imybookings.service.d.ts +3 -2
  35. package/base/lib/vendor/interfaces/Isearch.service.d.ts +1 -0
  36. package/base/lib/vendor/interfaces/Iuser.service.d.ts +10 -3
  37. package/base/lib/vendor/interfaces/rail-basket-item.interface.d.ts +2 -0
  38. package/base/lib/vendor/interfaces/summary-interface.d.ts +4 -0
  39. package/base/lib/vendor/models/traveller.object.d.ts +11 -1
  40. package/base/lib/vendor/services/enterprise-basket.service.d.ts +9 -7
  41. package/base/lib/vendor/services/logon.service.d.ts +3 -3
  42. package/base/lib/vendor/services/my-bookings.service.d.ts +3 -2
  43. package/base/lib/vendor/services/search.service.d.ts +3 -2
  44. package/base/lib/vendor/services/user.service.d.ts +18 -3
  45. package/base/lib/vendor/services/webtoken.service.d.ts +6 -4
  46. package/base/lib/vendor/types/graphql.types.d.ts +379 -508
  47. package/base/lib/vendor/types/types.d.ts +35 -7
  48. package/base/sabstravtech-obtservices-base.metadata.json +1 -1
  49. package/bundles/sabstravtech-obtservices-angular.umd.js +300 -201
  50. package/bundles/sabstravtech-obtservices-angular.umd.js.map +1 -1
  51. package/bundles/sabstravtech-obtservices-angular.umd.min.js +1 -1
  52. package/bundles/sabstravtech-obtservices-angular.umd.min.js.map +1 -1
  53. package/bundles/sabstravtech-obtservices-base.umd.js +2143 -597
  54. package/bundles/sabstravtech-obtservices-base.umd.js.map +1 -1
  55. package/bundles/sabstravtech-obtservices-base.umd.min.js +2 -2
  56. package/bundles/sabstravtech-obtservices-base.umd.min.js.map +1 -1
  57. package/esm2015/angular/fetchers.js +3 -1
  58. package/esm2015/angular/lib/vendor/fetchers/get-office.fetcher.js +25 -0
  59. package/esm2015/angular/lib/vendor/fetchers/get-user-default-mi-value.fetcher.js +25 -0
  60. package/esm2015/angular/lib/vendor/services/enterprise-basket.service.js +25 -25
  61. package/esm2015/angular/lib/vendor/services/logon.service.js +7 -7
  62. package/esm2015/angular/lib/vendor/services/ticket-queue.service.js +4 -1
  63. package/esm2015/angular/lib/vendor/services/user.service.js +13 -7
  64. package/esm2015/angular/lib/vendor/services/webtoken.service.js +2 -2
  65. package/esm2015/angular/lib/vendor/types/graphql.angular.types.js +808 -1231
  66. package/esm2015/base/fetchers.js +3 -1
  67. package/esm2015/base/lib/vendor/classes/base-enterprise.js +6 -3
  68. package/esm2015/base/lib/vendor/classes/bookable-basket.js +1 -3
  69. package/esm2015/base/lib/vendor/classes/cabhire-enterprise-search.js +155 -9
  70. package/esm2015/base/lib/vendor/classes/carhire-enterprise-search.js +129 -8
  71. package/esm2015/base/lib/vendor/classes/eurostar-enterprise-search.js +351 -20
  72. package/esm2015/base/lib/vendor/classes/fast-track-enterprise-search.js +8 -5
  73. package/esm2015/base/lib/vendor/classes/flight-enterprise-search.js +94 -14
  74. package/esm2015/base/lib/vendor/classes/helpers.js +15 -2
  75. package/esm2015/base/lib/vendor/classes/hotel-enterprise-search.js +86 -21
  76. package/esm2015/base/lib/vendor/classes/irl-enterprise-search.js +123 -18
  77. package/esm2015/base/lib/vendor/classes/lounges-enterprise-search.js +63 -8
  78. package/esm2015/base/lib/vendor/classes/management-info-and-valid.js +56 -33
  79. package/esm2015/base/lib/vendor/classes/parking-enterprise-search.js +109 -6
  80. package/esm2015/base/lib/vendor/classes/rail-enterprise-search.js +81 -7
  81. package/esm2015/base/lib/vendor/classes/supplementary-booking-info-impl.js +17 -1
  82. package/esm2015/base/lib/vendor/classes/user-favourite.enum.js +2 -1
  83. package/esm2015/base/lib/vendor/data/countries.json +484 -242
  84. package/esm2015/base/lib/vendor/fetchers/eurostar-quote.fetcher.js +3 -3
  85. package/esm2015/base/lib/vendor/fetchers/flight-quote.fetcher.js +3 -3
  86. package/esm2015/base/lib/vendor/fetchers/get-office.fetcher.js +11 -0
  87. package/esm2015/base/lib/vendor/fetchers/get-user-default-mi-value.fetcher.js +10 -0
  88. package/esm2015/base/lib/vendor/fetchers/search-users-can-book-for-fetcher.js +1 -1
  89. package/esm2015/base/lib/vendor/interfaces/Icabhire-enterprise-search.js +1 -1
  90. package/esm2015/base/lib/vendor/interfaces/Icarhire-enterprise-search.js +1 -1
  91. package/esm2015/base/lib/vendor/interfaces/Ienterprise-basket.service.js +1 -1
  92. package/esm2015/base/lib/vendor/interfaces/Iflight-enterprise-search.js +1 -1
  93. package/esm2015/base/lib/vendor/interfaces/Ihotel-enterprise-search.js +1 -1
  94. package/esm2015/base/lib/vendor/interfaces/Iirl-enterprise-search.js +1 -1
  95. package/esm2015/base/lib/vendor/interfaces/Imybookings.service.js +1 -1
  96. package/esm2015/base/lib/vendor/interfaces/Isearch.service.js +1 -1
  97. package/esm2015/base/lib/vendor/interfaces/Iuser.service.js +1 -1
  98. package/esm2015/base/lib/vendor/interfaces/rail-basket-item.interface.js +1 -1
  99. package/esm2015/base/lib/vendor/interfaces/summary-interface.js +1 -1
  100. package/esm2015/base/lib/vendor/models/traveller.object.js +21 -3
  101. package/esm2015/base/lib/vendor/services/enterprise-basket.service.js +42 -19
  102. package/esm2015/base/lib/vendor/services/logon.service.js +8 -5
  103. package/esm2015/base/lib/vendor/services/my-bookings.service.js +3 -2
  104. package/esm2015/base/lib/vendor/services/search.service.js +32 -24
  105. package/esm2015/base/lib/vendor/services/user.service.js +47 -3
  106. package/esm2015/base/lib/vendor/services/webtoken.service.js +12 -6
  107. package/esm2015/base/lib/vendor/types/graphql.types.js +15 -1
  108. package/esm2015/base/lib/vendor/types/types.js +4 -3
  109. package/fesm2015/sabstravtech-obtservices-angular.js +948 -1334
  110. package/fesm2015/sabstravtech-obtservices-angular.js.map +1 -1
  111. package/fesm2015/sabstravtech-obtservices-base.js +1984 -472
  112. package/fesm2015/sabstravtech-obtservices-base.js.map +1 -1
  113. package/package.json +1 -1
@@ -74,3 +74,5 @@ export * from './lib/vendor/fetchers/send-offline-notification.fetcher';
74
74
  export * from './lib/vendor/fetchers/get-cancellation-info.fetcher';
75
75
  export * from './lib/vendor/fetchers/get-cancellation-info.fetcher';
76
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';
@@ -5,6 +5,7 @@ import { ICheapestPrice } from '../interfaces/cheapest-price';
5
5
  import { RecentSearch } from '../../../types';
6
6
  import { BaseHelperRoutines } from './helpers';
7
7
  import { EnterpriseSearchServiceInterface } from '../interfaces/Isearch.service';
8
+ import { UserServiceInterface } from '../interfaces/Iuser.service';
8
9
  export declare abstract class BaseEnterpriseSearch<P, R, O extends Array<any>> {
9
10
  protected storageService: BaseStorageService;
10
11
  protected helpers: BaseHelperRoutines;
@@ -26,9 +27,10 @@ export declare abstract class BaseEnterpriseSearch<P, R, O extends Array<any>> {
26
27
  abstract type: ServiceType;
27
28
  fullResults: O;
28
29
  fullMultiResults: O[][];
30
+ rawResults: R;
29
31
  get cheapestPrice(): ICheapestPrice;
30
32
  get originalUserSearch(): P;
31
- constructor(storageService: BaseStorageService, helpers: BaseHelperRoutines, searchService: EnterpriseSearchServiceInterface);
33
+ constructor(storageService: BaseStorageService, helpers: BaseHelperRoutines, searchService: EnterpriseSearchServiceInterface, userService: UserServiceInterface);
32
34
  performSearch(): void;
33
35
  protected processResults(results: R): O;
34
36
  protected updateTempParams(tempParams: P): void;
@@ -10,6 +10,7 @@ import { BasketItem, CabHireLocation, CabHireQuote, CabHireVehicleType, Location
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
16
  private basketService;
@@ -61,6 +62,9 @@ export declare class CabHireEnterpriseSearch<CH_Q extends CabhireQuoteFetcherTyp
61
62
  private _flightNumber;
62
63
  get flightNumber(): string;
63
64
  set flightNumber(value: string);
65
+ private _returnFlightNumber;
66
+ get returnFlightNumber(): string;
67
+ set returnFlightNumber(value: string);
64
68
  get airport(): TaxiAirport;
65
69
  set airport(value: TaxiAirport);
66
70
  private _terminal;
@@ -95,7 +99,7 @@ export declare class CabHireEnterpriseSearch<CH_Q extends CabhireQuoteFetcherTyp
95
99
  set toAddress(value: AddressForm);
96
100
  get toStation(): RailAirport;
97
101
  set toStation(value: RailAirport);
98
- 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);
99
103
  protected resultsSessionName: string;
100
104
  protected multiResultsSessionName: string;
101
105
  protected resetQuery(): void;
@@ -17,6 +17,7 @@ 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",
@@ -128,7 +129,7 @@ export declare class CarhireEnterpriseSearch<CH_Q extends CarHireFetcherType, CH
128
129
  get carTypeCodes(): [string, string, CarHireType][];
129
130
  get vendors(): Vendor[];
130
131
  get sortingOptions(): CarHireSort[];
131
- 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);
132
133
  protected resultsSessionName: string;
133
134
  protected multiResultsSessionName: string;
134
135
  protected resetQuery(): void;
@@ -181,6 +182,11 @@ export declare class CarhireEnterpriseSearch<CH_Q extends CarHireFetcherType, CH
181
182
  * @param results - full results from sort results function
182
183
  */
183
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;
184
190
  /**
185
191
  * @description - get the price of a individual car
186
192
  */
@@ -212,4 +218,5 @@ export declare class CarhireEnterpriseSearch<CH_Q extends CarHireFetcherType, CH
212
218
  }[];
213
219
  saveSearch(): Observable<SaveFavouriteSearchResult>;
214
220
  applyFavourite(fav: any): Promise<void>;
221
+ checkForPreferred(): boolean;
215
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, DifferentInvokdedUserReasons } 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,10 +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
58
  private modalService;
59
+ private applyFlightRules;
58
60
  static readonly STORAGE_SESSION_PARAMS = "search_eurostar";
59
61
  static readonly STORAGE_SESSION_RESULTS = "results_eurostar";
60
62
  type: ServiceType;
@@ -96,6 +98,8 @@ export declare class EurostarEnterpriseSearch<SE_Q extends EurostarQuoteFetcherT
96
98
  protected multiResultsSessionName: string;
97
99
  selectedGroupFlight: FlightItineraryWithExtensions;
98
100
  private _displayAddHotel;
101
+ private _ruleActionSummary;
102
+ multi: EurostarMulti[];
99
103
  filters: BehaviorSubject<FlightFilters>;
100
104
  get displayAddHotel(): boolean;
101
105
  set displayAddHotel(newVal: boolean);
@@ -164,10 +168,11 @@ export declare class EurostarEnterpriseSearch<SE_Q extends EurostarQuoteFetcherT
164
168
  set negotiated(value: boolean);
165
169
  get includeNearbyAirports(): boolean;
166
170
  set includeNearbyAirports(value: boolean);
167
- 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>);
168
172
  protected processResults(results1: EurostarQuoteResult): EurostarQuoteResultArray;
169
173
  matchFares(acc: EurostarItem[], out: EurostarItem): EurostarItem[];
170
- formatEurostarResults(results: FlightJourney[], total: FlightFareTotal, index: number): EurostarItem;
174
+ formatEurostarResults(results: FlightJourney[], total: FlightFareTotal, journeyHash: string, index: number): EurostarItem;
175
+ private updateRules;
171
176
  protected resetQuery(checkIsValid?: boolean): void;
172
177
  resetParams(): void;
173
178
  private _isValid;
@@ -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
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;
@@ -5,6 +5,7 @@ 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
11
  import { DifferentInvokdedUserReasons, FastTrackQuoteResultArray, NgbDateStruct, OBTAirportDetails, RecentSearch } from '../types/types';
@@ -36,7 +37,7 @@ export declare class FastTrackEnterpriseSearch<FTQ_Q extends FastTrackQuoteFetch
36
37
  private _isValid;
37
38
  protected resultsSessionName: string;
38
39
  protected multiResultsSessionName: string;
39
- 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);
40
41
  protected resetQuery(): void;
41
42
  startSearch(): Promise<boolean>;
42
43
  getSearchQuery(): SearchFastTrackQueryVariables;
@@ -100,6 +100,16 @@ export declare class FlightEnterpriseSearch<FQ_Q extends FlightQuoteFetcherType,
100
100
  selectedGroupId: number;
101
101
  private _ruleActionSummary;
102
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
+ };
103
113
  get timeArray(): ValueDisplay<string>[];
104
114
  get preferredCarriers(): OBTAirlinesDetails[];
105
115
  set preferredCarriers(value: OBTAirlinesDetails[]);
@@ -200,6 +210,7 @@ export declare class FlightEnterpriseSearch<FQ_Q extends FlightQuoteFetcherType,
200
210
  private _updateTravelPolicies;
201
211
  private bookSingleFlight;
202
212
  doBooking(intBasket: InternalBasketInterface, selectedFlight: FlightItineraryWithExtensions, schemaDetails: any, outboundDate: string, inboundDate?: string): Promise<DifferentInvokdedUserReasons>;
213
+ get absoluteCheapestPrice(): ICheapestPrice;
203
214
  private makeSchemaFlights;
204
215
  addFlightJourneysToBasket(flightQuote: FlightItineraryWithExtensions): Promise<DifferentInvokdedUserReasons>;
205
216
  setFlightDisplayType(displayType: FlightDisplayTypes): void;
@@ -42,6 +42,7 @@ export declare class HotelEnterpriseSearch<HQ_Q extends HotelQuoteFetcherType, H
42
42
  offices: BehaviorSubject<LocationTypes[]>;
43
43
  lastActivePage: BehaviorSubject<number>;
44
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;
@@ -169,6 +171,8 @@ export declare class HotelEnterpriseSearch<HQ_Q extends HotelQuoteFetcherType, H
169
171
  updateSearchFromExpiredBasketItem(basketItem: BasketItem): void;
170
172
  updateFromPreviousSearches(previousItems: Record<ServiceType, BasketItem>): void;
171
173
  private hasPreferred;
174
+ atLeastOnePreferredAgentHotel(): boolean;
175
+ atLeastOnePreferredClientHotel(): boolean;
172
176
  getmaxPriceForCurrency(currency: string): any;
173
177
  private getExtraFilter;
174
178
  private getAmenitiesFilter;
@@ -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",
@@ -136,8 +137,10 @@ export declare class IRLEnterpriseSearch<Q extends IrlQuoteFetcherType, GIDF_Q e
136
137
  set dateDir(data: boolean);
137
138
  get chosenSearchClass(): IrlClass;
138
139
  set chosenSearchClass(classR: IrlClass);
139
- get discountCard(): IrlTravelCard;
140
- set discountCard(data: IrlTravelCard);
140
+ _discountCard: IrlTravelCard[];
141
+ get discountCard(): IrlTravelCard[];
142
+ set discountCard(data: IrlTravelCard[]);
143
+ get discountCardsList(): string;
141
144
  private _irlDiscountCardsArray;
142
145
  get irlDiscountCardsArray(): IrlTravelCard[];
143
146
  set irlDiscountCardsArray(array: IrlTravelCard[]);
@@ -174,8 +177,8 @@ export declare class IRLEnterpriseSearch<Q extends IrlQuoteFetcherType, GIDF_Q e
174
177
  private _additionalInstructions;
175
178
  get additionalInstructions(): string;
176
179
  set additionalInstructions(data: string);
177
- constructor(Irlfetcher: BaseIrlQuoteFetcher<Q>, irlDiscountCardsFetcher: BaseIrlDiscountCardFetcher<GIDF_Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, getIrlSupplierStationFetcher: BaseGetIrlSupplierStationFetcher<GISSF_Q>);
178
- 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;
179
182
  protected processResults(results: IrlQuoteResultArray): ({
180
183
  __typename?: "IRLJourneyOptions";
181
184
  } & Pick<IrlJourneyOptions, "source" | "sourceId" | "jrfreference"> & {
@@ -375,6 +378,7 @@ export declare class IRLEnterpriseSearch<Q extends IrlQuoteFetcherType, GIDF_Q e
375
378
  })[];
376
379
  })[];
377
380
  protected resetQuery(): void;
381
+ resetIrlForm(): void;
378
382
  private _isValid;
379
383
  startSearch(): Promise<boolean>;
380
384
  getRecentSearchQuery(query: SearchIrlQueryVariables): SaveRecentSearchMutationVariables;
@@ -391,6 +395,7 @@ export declare class IRLEnterpriseSearch<Q extends IrlQuoteFetcherType, GIDF_Q e
391
395
  addSingleJourneyToBasket(serviceId: string, irlQuery: SearchIrlQueryVariables, outbound: IrlTicketOption, irlJourneyOption: IrlJourneyOption): Promise<DifferentInvokdedUserReasons>;
392
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
@@ -10,6 +10,7 @@ import { EnterpriseBasketServiceInterface } from '../interfaces/Ienterprise-bask
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;
@@ -50,7 +51,7 @@ export declare class LoungesEnterpriseSearch<LQ_Q extends LoungeQuoteFetcherType
50
51
  set arrivalDatetime(value: moment.Moment);
51
52
  protected resultsSessionName: string;
52
53
  protected multiResultsSessionName: string;
53
- 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);
54
55
  protected resetQuery(): void;
55
56
  getSearchQuery(): SearchLoungesQueryVariables;
56
57
  private _isValid;
@@ -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>>;
@@ -10,6 +10,7 @@ import { EnterpriseBasketServiceInterface } from '../interfaces/Ienterprise-bask
10
10
  import { EnterpriseSearchServiceInterface } from '../interfaces/Isearch.service';
11
11
  import { ParkingEnterpriseSearchInterface, ParkingTempParams } from '../interfaces/Iparking-enterprise-search';
12
12
  import { ICheapestPrice } from '../interfaces/cheapest-price';
13
+ import { UserServiceInterface } from '../interfaces/Iuser.service';
13
14
  export declare const defaultValidations: {
14
15
  AirportFirst: string;
15
16
  InvardJourney: string;
@@ -82,7 +83,7 @@ export declare class ParkingEnterpriseSearch<Q extends ParkingQuoteFetcherType>
82
83
  day: number;
83
84
  };
84
85
  private travellers;
85
- constructor(parkingfetcher: BaseParkingQuoteFetcher<Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface);
86
+ constructor(parkingfetcher: BaseParkingQuoteFetcher<Q>, helpers: BaseHelperRoutines, basketService: EnterpriseBasketServiceInterface, storageService: BaseStorageService, searchService: EnterpriseSearchServiceInterface, userService: UserServiceInterface);
86
87
  protected resultsSessionName: string;
87
88
  protected multiResultsSessionName: string;
88
89
  private _outdate;
@@ -189,7 +189,7 @@ export declare class RailEnterpriseSearch<Q extends RailQuoteFetcherType, GRS_Q
189
189
  addToBasket(sourceId: string, searchQuery: RailTempParams, journey: OBTRailJourneyOption, railFare: OBTRailJourneyFare, inboundRailFare?: OBTRailJourneyFare, inboundJourney?: OBTRailJourneyOption): Promise<DifferentInvokdedUserReasons>;
190
190
  addOpenReturnToBasket(sourceId: string, searchQuery: RailTempParams, journey: OBTRailJourneyOption, railFare: OBTRailJourneyFare): Promise<DifferentInvokdedUserReasons>;
191
191
  addDualSingleToBasket(serviceId: string, searchQuery: RailTempParams, outbound: OBTRailJourneyOption, inbound: OBTRailJourneyOption, outboundFare: OBTRailJourneyFare, inboundFare: OBTRailJourneyFare): Promise<DifferentInvokdedUserReasons>;
192
- findCheapestTicket(): number;
192
+ findCheapestTicket(): ICheapestPrice;
193
193
  protected resetQuery(): void;
194
194
  private _setAirportExpressStations;
195
195
  private _isValid;
@@ -6,6 +6,7 @@ export declare class UserFavorurite {
6
6
  static AlternativeRailItineraryEnabled: UserFavorurite;
7
7
  static riskMinimumLevel: UserFavorurite;
8
8
  static ENABLE_CHATBOT: UserFavorurite;
9
+ static LocalCurrency: UserFavorurite;
9
10
  constructor(value: string);
10
11
  }
11
12
  export declare class Suppliers {
@@ -3,11 +3,13 @@ import { BaseModalOpenerService } from '../services/modal-opener.service';
3
3
  import { BaseHelperRoutines } from '../classes/helpers';
4
4
  import { FetchableList } from './list-fetchable-enterprise';
5
5
  import { Observable } from 'rxjs';
6
- import { EurostarQuoteResult } from '../types/types';
6
+ import { EurostarQuoteResult, RuleActionSummaryInterface } from '../types/types';
7
7
  import { SearchEurostarQuery, SearchEurostarQueryVariables } from '../types/graphql.types';
8
8
  declare type R = {
9
9
  searchEurostar: {
10
10
  results: P;
11
+ ruleActionSummary: RuleActionSummaryInterface;
12
+ searchId: string;
11
13
  };
12
14
  };
13
15
  declare type P = EurostarQuoteResult;
@@ -10,6 +10,7 @@ declare type R = {
10
10
  searchFlightsV2: {
11
11
  results: P;
12
12
  ruleActionSummary: RuleActionSummaryInterface;
13
+ searchId: string;
13
14
  };
14
15
  };
15
16
  declare type P = FlightAllQuoteResult;
@@ -0,0 +1,20 @@
1
+ import { ApolloQueryResult } from '@apollo/client/core';
2
+ import { BaseHelperRoutines } from '../classes/helpers';
3
+ import { FetchableList } from './list-fetchable-enterprise';
4
+ import { BaseModalOpenerService } from '../services/modal-opener.service';
5
+ import { Observable } from 'rxjs';
6
+ import { GetOfficeQuery, GetOfficeQueryVariables, Office } from '../types/graphql.types';
7
+ declare type R = {
8
+ getOffice: P;
9
+ };
10
+ declare type P = Office;
11
+ declare type A = GetOfficeQueryVariables;
12
+ declare type M = GetOfficeQuery;
13
+ export declare type GetOfficeFetcherType = {
14
+ fetch: (a: A) => Observable<ApolloQueryResult<M>>;
15
+ };
16
+ export declare class BaseGetOfficeFetcher<Q extends GetOfficeFetcherType> extends FetchableList<Q, A, R, P, M> {
17
+ constructor(queryGQL: Q, helpers: BaseHelperRoutines, modalService: BaseModalOpenerService);
18
+ protected getDataFromResult(results: ApolloQueryResult<R>): P;
19
+ }
20
+ export {};
@@ -0,0 +1,21 @@
1
+ import { ApolloQueryResult } from '@apollo/client/core';
2
+ import { BaseModalOpenerService } from '../services/modal-opener.service';
3
+ import { FetchableObject } from './object-fetchable-enterprise';
4
+ import { BaseHelperRoutines } from '../classes/helpers';
5
+ import { Observable } from 'rxjs';
6
+ import { ManagementInfoValueResult } from '../types/types';
7
+ import { GetUserDefaultMiValueQuery, GetUserDefaultMiValueQueryVariables } from '../types/graphql.types';
8
+ declare type R = {
9
+ getUserDefaultMIValue: P;
10
+ };
11
+ declare type P = ManagementInfoValueResult;
12
+ declare type A = GetUserDefaultMiValueQueryVariables;
13
+ declare type M = GetUserDefaultMiValueQuery;
14
+ export declare type GetUserDefaultMIValueType = {
15
+ fetch: (a: A) => Observable<ApolloQueryResult<M>>;
16
+ };
17
+ export declare class BaseGetUserDefaultMIValueFetcher<Q extends GetUserDefaultMIValueType> extends FetchableObject<Q, A, R, P, M> {
18
+ constructor(query: Q, helpers: BaseHelperRoutines, modalService: BaseModalOpenerService);
19
+ protected getDataFromResult(results: ApolloQueryResult<R>): P;
20
+ }
21
+ export {};
@@ -3,12 +3,12 @@ import { BaseHelperRoutines } from '../classes/helpers';
3
3
  import { FetchableList } from './list-fetchable-enterprise';
4
4
  import { BaseModalOpenerService } from '../services/modal-opener.service';
5
5
  import { Observable } from 'rxjs';
6
- import { SearchUserCanBookForResult } from '../types/types';
7
6
  import { SearchUserCanBookForQuery, SearchUserCanBookForQueryVariables } from '../types/graphql.types';
7
+ import { Traveller } from '../models/traveller.object';
8
8
  declare type R = {
9
9
  searchUserCanBookFor: P;
10
10
  };
11
- declare type P = SearchUserCanBookForResult;
11
+ declare type P = Traveller[];
12
12
  declare type A = SearchUserCanBookForQueryVariables;
13
13
  declare type M = SearchUserCanBookForQuery;
14
14
  export declare type SearchUserCanBookForFetcherType = {
@@ -86,6 +86,7 @@ export interface CabHireEnterpriseSearchInterface extends BaseEnterpriseSearch<C
86
86
  outboundDateTime: moment.Moment;
87
87
  returnDateTime: moment.Moment;
88
88
  flightNumber: string;
89
+ returnFlightNumber: string;
89
90
  airport: TaxiAirport;
90
91
  terminal: string;
91
92
  time: string;
@@ -88,6 +88,7 @@ export interface CarhireEnterpriseSearchInterface extends BaseEnterpriseSearch<C
88
88
  sortResults(selectedSort: number, results?: CarHireQuoteResultArray): any;
89
89
  sortExpensive(results?: CarHireQuoteResultArray): any;
90
90
  sortCheapest(results?: CarHireQuoteResultArray): any;
91
+ sortByPreferred(results?: CarHireQuoteResultArray): any;
91
92
  sortBySize(results?: CarHireQuoteResultArray): any;
92
93
  sortByBrand(results?: CarHireQuoteResultArray): any;
93
94
  getPrice(car: CarHireQuoteResult): number;
@@ -101,4 +102,5 @@ export interface CarhireEnterpriseSearchInterface extends BaseEnterpriseSearch<C
101
102
  addCarHireToBasket(carHireQuote: CarHireVehicleAvailibility, carHireQuery: SearchCarHireQueryVariables): Promise<DifferentInvokdedUserReasons>;
102
103
  saveSearch(): Observable<SaveFavouriteSearchResult>;
103
104
  applyFavourite(fav: any): void;
105
+ checkForPreferred(): boolean;
104
106
  }
@@ -1,6 +1,6 @@
1
1
  import { BehaviorSubject, Observable, Observer, Subject } from 'rxjs';
2
2
  import { AddItemToBasket, BasketItem, BeforeCancellationInfo, ManagementInfo, SupplementaryBookingInfo } from '../types/graphql.types';
3
- import { DifferentInvokdedUserReasons, GetUserBasketItemResult, GetUserBasketResult, UserBasketResult } from '../types/types';
3
+ import { DifferentInvokdedUserReasons, GetUserBasketItemResult, GetUserBasketResult, ManagementInfoValueResult, UserBasketResult } from '../types/types';
4
4
  import { Traveller } from '../models/traveller.object';
5
5
  import { EnterpriseSearchServiceInterface } from './Isearch.service';
6
6
  import { BasketDetails, BasketItemManagementInfo, BasketPrices } from '../services/enterprise-basket.service';
@@ -49,7 +49,8 @@ export interface EnterpriseBasketServiceInterface {
49
49
  validateFreeValeMi(miItem: ManagementInfo, freeValue: string): any;
50
50
  setMiFreeValue(basketid: string, miItem: ManagementInfo, freeValue: string, userId: string, guest?: boolean): Promise<void>;
51
51
  setMiSelectedValue(basketid: string, miItem: ManagementInfo, selectedValue: string, userId: string, guest?: boolean): Promise<void>;
52
- getMiAutoSugestions(miId: string, partialLabel: string, isLoading: BehaviorSubject<boolean>): Observable<any>;
52
+ getMiAutoSugestions(miId: string, term: string, isLoading: BehaviorSubject<boolean>): Observable<any>;
53
+ getUserDefaultMIValue(mi: string, user: string, isLoading: BehaviorSubject<boolean>): Observable<ManagementInfoValueResult>;
53
54
  saveMiData(basketId: string, bmiArray: BasketItemManagementInfo[]): void;
54
55
  sendBasketForApproval(basketid: string): Promise<void>;
55
56
  bookBasket(basketid: string, supplementaryInfo: SupplementaryBookingInfo[]): Promise<void>;
@@ -97,4 +97,10 @@ export interface FlightEnterpriseSearchInterface extends BaseEnterpriseSearch<Fl
97
97
  saveSearch(): Observable<SaveFavouriteSearchResult>;
98
98
  applyFavourite(fav: any): void;
99
99
  convertRecentSearchDateTime(date: string, timeWindow?: string): moment.Moment;
100
+ updateLowestPrice(results: FlightQuoteResultArray): ICheapestPrice;
101
+ cheapestPriceObject: {
102
+ dualOutbound: ICheapestPrice;
103
+ dualInbound: ICheapestPrice;
104
+ returns: ICheapestPrice;
105
+ };
100
106
  }
@@ -104,6 +104,7 @@ export interface HotelEnterpriseSearchInterface extends BaseEnterpriseSearch<Hot
104
104
  location_types: BehaviorSubject<{}>;
105
105
  offices: BehaviorSubject<{}>;
106
106
  lastActivePage: BehaviorSubject<number>;
107
+ reapplySorting: BehaviorSubject<boolean>;
107
108
  readonly galleries: {
108
109
  [key: string]: {};
109
110
  };
@@ -180,4 +181,6 @@ export interface HotelEnterpriseSearchInterface extends BaseEnterpriseSearch<Hot
180
181
  resultsHaveTag(searchTag: string): boolean;
181
182
  saveSearch(hotelName?: string): Observable<SaveFavouriteSearchResult>;
182
183
  applyFavourite(fav: any): void;
184
+ atLeastOnePreferredAgentHotel(): boolean;
185
+ atLeastOnePreferredClientHotel(): boolean;
183
186
  }
@@ -6,13 +6,13 @@ import { ICheapestPrice } from './cheapest-price';
6
6
  import { Observable } from 'rxjs';
7
7
  import { IrlFilters, SortTypeIrl } from '../classes/irl-enterprise-search';
8
8
  export interface IrlTempParams {
9
- irlDiscountCards: IrlTravelCard;
9
+ irlDiscountCards: string;
10
10
  supplier: IrlSupplier;
11
11
  countryCode: string;
12
12
  class: IrlClass;
13
13
  outboundDepartureDateTime: moment.Moment;
14
- departureLocationId: string;
15
- arrivalLocationId: string;
14
+ travellingFrom: any;
15
+ travellingTo: any;
16
16
  adults: number;
17
17
  children: number;
18
18
  returnDepartureDateTime: moment.Moment;
@@ -30,7 +30,7 @@ export interface IRLEnterpriseSearchInterface extends BaseEnterpriseSearch<IrlTe
30
30
  noOfChildren: number;
31
31
  travellingTo: any;
32
32
  travellingFrom: any;
33
- discountCard: IrlTravelCard;
33
+ discountCard: IrlTravelCard[];
34
34
  irlDiscountCardsArray: IrlTravelCard[];
35
35
  offline: boolean;
36
36
  outBoundDateTime: moment.Moment;
@@ -1,12 +1,13 @@
1
1
  import { BehaviorSubject, Observable } from 'rxjs';
2
2
  import { CancelUserBookingResult, UserBasketResult } from '../types/types';
3
3
  import { QueryGetUserBasketsArgs } from '../types/graphql.types';
4
- import { BasketItem, BasketItemStatus, BasketStatus, ServiceType, User } from '../types/graphql.types';
4
+ import { BasketItem, BasketItemStatus, BasketStatus, ServiceType } from '../types/graphql.types';
5
5
  import { EnterpriseSearchServiceInterface } from '../interfaces/Isearch.service';
6
+ import { Traveller } from '../models/traveller.object';
6
7
  export interface EnterpriseMyBookingsServiceInterface {
7
8
  baskets: BehaviorSubject<UserBasketResult[]>;
8
9
  getUserBaskets(query: QueryGetUserBasketsArgs, isLoading: BehaviorSubject<boolean>): void;
9
- getSearchUserCanBookFor(search: string, isLoading: BehaviorSubject<boolean>): Observable<User[]>;
10
+ getSearchUserCanBookFor(search: string, isLoading: BehaviorSubject<boolean>): Observable<Traveller[]>;
10
11
  getServiceTypeFilters(searchService: EnterpriseSearchServiceInterface): string[];
11
12
  getBasketStatusFilters(): string[];
12
13
  getServiceTypeFilterVanityName(serviceType: ServiceType): string;
@@ -26,6 +26,7 @@ export declare type SearchParams = {
26
26
  [ServiceType.FastTrack]: FastTrackEnterpriseSearchInterface;
27
27
  [ServiceType.Coach]: null;
28
28
  [ServiceType.Eurostar]: EurostarEnterpriseSearchInterface;
29
+ [ServiceType.Ferry]: null;
29
30
  };
30
31
  export interface EnterpriseSearchServiceInterface {
31
32
  search_objects: SearchObjects;
@@ -2,7 +2,7 @@ import { BehaviorSubject, Observable } from 'rxjs';
2
2
  import { Suppliers, UserFavorurite } from '../classes/user-favourite.enum';
3
3
  import { UserData } from './user.data';
4
4
  import { Traveller } from '../models/traveller.object';
5
- import { BookerType, Message, Service, ServiceType, UiConfig, User } from '../types/graphql.types';
5
+ import { BookerType, Company, Message, Office, Service, ServiceType, UiConfig, User } from '../types/graphql.types';
6
6
  import { ServiceProvider, Unpacked, UserUiConfigsResult } from '../types/types';
7
7
  export interface UserConfig {
8
8
  [key: string]: UiConfig;
@@ -22,10 +22,13 @@ export interface FullUserDetails {
22
22
  allDetails: BehaviorSubject<User>;
23
23
  }
24
24
  export interface UserServiceInterface {
25
- getUserFavoriteObject<T>(uf: UserFavorurite): T;
26
- userHasServiceProvider(service: ServiceType, provider: ServiceProvider): boolean;
27
25
  fullUserDetails: FullUserDetails;
28
26
  changeUser: BehaviorSubject<FullUserDetails>;
27
+ readonly bobo: Traveller;
28
+ setBobo(traveller: Traveller): Promise<boolean>;
29
+ updateServices(): Promise<boolean>;
30
+ getUserFavoriteObject<T>(uf: UserFavorurite): T;
31
+ userHasServiceProvider(service: ServiceType, provider: ServiceProvider): boolean;
29
32
  setUser(user_data: UserData): void;
30
33
  checkEmitUser(): void;
31
34
  getfullUserDetails(admin: boolean): FullUserDetails | null;
@@ -56,8 +59,12 @@ export interface UserServiceInterface {
56
59
  userIsAgent(): boolean;
57
60
  userIsAdmin(): boolean;
58
61
  userIsCompanyAdmin(): boolean;
62
+ userIsTmcAdmin(): boolean;
63
+ userTmcId(): number;
59
64
  isSelfBook(): boolean;
60
65
  isBooker(): boolean;
61
66
  findService(id: string): Service;
62
67
  confirmMessages(id: string | string[]): Observable<boolean>;
68
+ getOffice(): Observable<Office>;
69
+ getUserCompany(): Observable<Company>;
63
70
  }
@@ -11,6 +11,8 @@ export interface RailBasketItem {
11
11
  price: number;
12
12
  searchQuery: SearchRailQueryVariables;
13
13
  service: string;
14
+ lowestPrice: number;
15
+ lowestPriceCurrency: CurrencyCode;
14
16
  }
15
17
  export interface RailBasketDetail {
16
18
  accountsList: AccountsList[];
@@ -11,6 +11,10 @@ export interface Unavailable {
11
11
  unavailableMessage: string;
12
12
  companyPreferred: boolean;
13
13
  companyPreferredMessage: string;
14
+ officePreferred: boolean;
15
+ officePreferredMessage: string;
16
+ tmcPreferred: boolean;
17
+ tmcPreferredMessage: string;
14
18
  }
15
19
  export interface RailSummary {
16
20
  outbound?: RailRuleEnity[] | null;