@roomstay/frontend 2.1.29 → 2.1.30

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.
@@ -19,13 +19,12 @@ export declare enum EPaymentCardType {
19
19
  JCB = "JC",
20
20
  AmericanExpress = "X"
21
21
  }
22
- export interface ConfigHotel extends HasDatalayerTags {
23
- hotelID: number | string;
24
- providerHotelID: string;
22
+ /**
23
+ * This config comes from admin
24
+ */
25
+ export interface AdminHotelConfig {
26
+ hotelID: string;
25
27
  name: string;
26
- shortName?: string;
27
- description?: string;
28
- locationDescription?: string;
29
28
  address?: HotelAddress;
30
29
  latitude?: number;
31
30
  longitude?: number;
@@ -33,26 +32,45 @@ export interface ConfigHotel extends HasDatalayerTags {
33
32
  checkInTime?: string;
34
33
  checkOutTime?: string;
35
34
  paymentCardTypes?: EPaymentCardType[];
35
+ description?: string;
36
+ locationDescription?: string;
36
37
  policies?: string;
37
- maxOccupancy?: number;
38
- startsWeekOnDay?: WeekdayStartsOn;
38
+ hotelServices: HotelServiceDTO[];
39
+ businessServices: HotelServiceDTO[];
40
+ rooms: HotelRoomsDTO;
41
+ hasLoadedDetails?: boolean;
42
+ dataSource: HotelDataSource;
43
+ defaultCurrency: string;
44
+ paymentMethods: EBookingPaymentMethod[];
45
+ planpay?: {
46
+ minDaysShowPlanpay: number;
47
+ env: PlanPayEnvironment;
48
+ };
39
49
  hotelUrl: string;
50
+ heroImage: string;
51
+ images?: string[];
52
+ logo: string | ReactChild;
53
+ colors: ColorProfile;
54
+ distanceUnitType: DistanceUnitType;
55
+ startsWeekOnDay?: WeekdayStartsOn;
56
+ crossSellHotelIds?: string[];
57
+ maxOccupancy?: number;
58
+ hideByLine?: boolean;
59
+ transportDistances?: TransportDistances;
60
+ }
61
+ export interface ClientHotelConfig {
62
+ providerHotelID: string;
63
+ shortName?: string;
40
64
  defaultDatepickerType?: 'Month' | 'Week';
41
65
  checkoutUrl?: string;
42
- defaultCurrency: string;
43
66
  defaultLanguage: Language;
44
- logo: string | ReactChild;
45
- heroImage: string;
46
67
  privacyPolicyUrl: string;
47
68
  bookNowPayLaterUrl?: string;
48
69
  bestRateNoBSUrl?: string;
49
- colors: ColorProfile;
50
70
  memberOnlyRates?: string[];
51
71
  memberOnlyPromoCode?: string;
52
72
  memberOnlySignupInputs?: MemberOnlyModalInputs;
53
- crossSellHotelIds?: string[];
54
73
  googleMapsImage?: string;
55
- hideByLine?: boolean;
56
74
  /**
57
75
  * Wether to show the Breakfast / Lunch / Dinner included
58
76
  */
@@ -60,8 +78,6 @@ export interface ConfigHotel extends HasDatalayerTags {
60
78
  /**
61
79
  * Distances for the Summary, and Hotel Info pages
62
80
  */
63
- transportDistances?: TransportDistances;
64
- distanceUnitType: DistanceUnitType;
65
81
  perks: HotelPerk[];
66
82
  vgsVaultName: string;
67
83
  showAddonLoader: boolean;
@@ -72,16 +88,10 @@ export interface ConfigHotel extends HasDatalayerTags {
72
88
  additionalOptions?: {
73
89
  [name: string]: any;
74
90
  };
75
- images?: string[];
76
91
  googleReCaptcha?: {
77
92
  loadForMembers?: boolean;
78
93
  siteKey?: string;
79
94
  };
80
- paymentMethods: EBookingPaymentMethod[];
81
- planpay?: {
82
- minDaysShowPlanpay: number;
83
- env: PlanPayEnvironment;
84
- };
85
95
  /**
86
96
  * Customize the Member modal colours. Specifically replacing the green (success) with the primary color of hotel (accent)
87
97
  */
@@ -93,14 +103,9 @@ export interface ConfigHotel extends HasDatalayerTags {
93
103
  */
94
104
  onLoad?: () => void;
95
105
  }
106
+ export interface ConfigHotel extends ClientHotelConfig, AdminHotelConfig, HasDatalayerTags {
107
+ }
96
108
  export type Hotel = ConfigHotel & {
97
- hotelID: string;
98
- hasLoadedDetails?: boolean;
99
- hotelServices: HotelServiceDTO[];
100
- businessServices: HotelServiceDTO[];
101
- rooms: HotelRoomsDTO;
102
- dataSource: HotelDataSource;
103
- images: string[];
104
109
  lowestPrice?: {
105
110
  value: number;
106
111
  isLoading: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"Hotel.js","sourceRoot":"/","sources":["src/models/Client/Hotel/Hotel.ts"],"names":[],"mappings":";;;AAiBA,IAAY,gBAKX;AALD,WAAY,gBAAgB;IACxB,+BAAW,CAAA;IACX,qCAAiB,CAAA;IACjB,8BAAU,CAAA;IACV,yCAAqB,CAAA;AACzB,CAAC,EALW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAK3B","sourcesContent":["import type { ReactChild } from 'react';\n\nimport type { Language } from '@/providers/LanguageProvider';\nimport type { HotelPerk } from '@/models/Client/Hotel/HotelPerk';\nimport type { HotelRoomOverwrite } from '@/models/Client/Hotel/HotelRoomOverwrite';\nimport type ColorProfile from '@/models/Client/Hotel/ColorProfile';\nimport type HotelAddress from '@/models/Client/Hotel/HotelAddress';\nimport type { HotelRoomsDTO, HotelServiceDTO } from '@/models/Api/HotelDTO';\nimport type { HasDatalayerTags } from '@/models/Client/Hotel/Company';\nimport type { TransportDistances } from '@/models/Api/HotelOverrideDTO';\nimport type { MemberOnlyModalInputs } from '@/components/steps/room/MemberSignInModal/MemberSignInModal.types';\nimport type { DistanceUnitType } from '@/models/Client/Hotel/DistanceUnitType.types';\nimport type { WeekdayStartsOn } from '@/models/Client/Hotel/WeekdayStartsOn.types';\nimport type { HotelDataSource } from '@/models/Client/Hotel/HotelDataSource.types';\nimport { EBookingPaymentMethod } from '@roomstay/core';\nimport type { PlanPayEnvironment } from '@planpay/web';\n\nexport enum EPaymentCardType {\n Visa = 'VI',\n Mastercard = 'MC',\n JCB = 'JC',\n AmericanExpress = 'X',\n}\n\nexport interface ConfigHotel extends HasDatalayerTags {\n hotelID: number | string;\n providerHotelID: string;\n\n /* Fields subject to change when pulled from API */\n name: string;\n shortName?: string;\n description?: string;\n locationDescription?: string;\n\n address?: HotelAddress;\n latitude?: number;\n longitude?: number;\n\n phone?: string;\n\n checkInTime?: string;\n checkOutTime?: string;\n\n paymentCardTypes?: EPaymentCardType[];\n\n policies?: string;\n\n maxOccupancy?: number;\n\n /* End of Changing Fields */\n\n startsWeekOnDay?: WeekdayStartsOn;\n\n hotelUrl: string;\n defaultDatepickerType?: 'Month' | 'Week';\n // TODO: need to do magic to see if we need to append / prepend stuff, for now we assume that it's only used while on the site.\n checkoutUrl?: string;\n defaultCurrency: string;\n defaultLanguage: Language;\n logo: string | ReactChild;\n heroImage: string;\n privacyPolicyUrl: string;\n bookNowPayLaterUrl?: string;\n bestRateNoBSUrl?: string;\n\n colors: ColorProfile;\n memberOnlyRates?: string[];\n memberOnlyPromoCode?: string;\n\n memberOnlySignupInputs?: MemberOnlyModalInputs;\n\n crossSellHotelIds?: string[];\n\n googleMapsImage?: string;\n\n hideByLine?: boolean;\n\n /**\n * Wether to show the Breakfast / Lunch / Dinner included\n */\n showMealPill?: boolean;\n\n /**\n * Distances for the Summary, and Hotel Info pages\n */\n transportDistances?: TransportDistances;\n\n distanceUnitType: DistanceUnitType;\n perks: HotelPerk[];\n\n vgsVaultName: string;\n showAddonLoader: boolean;\n overwrites?: { [code: string]: Partial<HotelRoomOverwrite> };\n\n forwardFindReservationToSynxis?: boolean;\n\n additionalOptions?: { [name: string]: any };\n\n images?: string[];\n\n googleReCaptcha?: {\n loadForMembers?: boolean;\n siteKey?: string;\n };\n\n paymentMethods: EBookingPaymentMethod[];\n\n planpay?: {\n minDaysShowPlanpay: number;\n env: PlanPayEnvironment;\n };\n\n /**\n * Customize the Member modal colours. Specifically replacing the green (success) with the primary color of hotel (accent)\n */\n memberOnlyModalUsePrimaryColor?: boolean;\n\n /**\n * Callback to trigger specific events on load of a hotel.\n *\n * This is where you can specify custom fields, language overrides, feature toggles etc.\n */\n onLoad?: () => void;\n}\n\nexport type Hotel = ConfigHotel & {\n hotelID: string;\n\n hasLoadedDetails?: boolean;\n\n hotelServices: HotelServiceDTO[];\n businessServices: HotelServiceDTO[];\n rooms: HotelRoomsDTO;\n dataSource: HotelDataSource;\n images: string[];\n\n lowestPrice?: {\n value: number;\n isLoading: boolean;\n };\n};\n\n/**\n * Used for DetailsHotel event\n */\nexport type InitialHotelDetailsEventPayload = {\n name: string;\n hotelID: number | string;\n hotelUrl: string;\n currency: string;\n language: Language;\n address?: HotelAddress;\n};\n"]}
1
+ {"version":3,"file":"Hotel.js","sourceRoot":"/","sources":["src/models/Client/Hotel/Hotel.ts"],"names":[],"mappings":";;;AAiBA,IAAY,gBAKX;AALD,WAAY,gBAAgB;IACxB,+BAAW,CAAA;IACX,qCAAiB,CAAA;IACjB,8BAAU,CAAA;IACV,yCAAqB,CAAA;AACzB,CAAC,EALW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAK3B","sourcesContent":["import type { ReactChild } from 'react';\n\nimport type { Language } from '@/providers/LanguageProvider';\nimport type { HotelPerk } from '@/models/Client/Hotel/HotelPerk';\nimport type { HotelRoomOverwrite } from '@/models/Client/Hotel/HotelRoomOverwrite';\nimport type ColorProfile from '@/models/Client/Hotel/ColorProfile';\nimport type HotelAddress from '@/models/Client/Hotel/HotelAddress';\nimport type { HotelRoomsDTO, HotelServiceDTO } from '@/models/Api/HotelDTO';\nimport type { HasDatalayerTags } from '@/models/Client/Hotel/Company';\nimport type { TransportDistances } from '@/models/Api/HotelOverrideDTO';\nimport type { MemberOnlyModalInputs } from '@/components/steps/room/MemberSignInModal/MemberSignInModal.types';\nimport type { DistanceUnitType } from '@/models/Client/Hotel/DistanceUnitType.types';\nimport type { WeekdayStartsOn } from '@/models/Client/Hotel/WeekdayStartsOn.types';\nimport type { HotelDataSource } from '@/models/Client/Hotel/HotelDataSource.types';\nimport { EBookingPaymentMethod } from '@roomstay/core';\nimport type { PlanPayEnvironment } from '@planpay/web';\n\nexport enum EPaymentCardType {\n Visa = 'VI',\n Mastercard = 'MC',\n JCB = 'JC',\n AmericanExpress = 'X',\n}\n\n/**\n * This config comes from admin\n */\nexport interface AdminHotelConfig {\n hotelID: string;\n name: string;\n address?: HotelAddress;\n latitude?: number;\n longitude?: number;\n phone?: string;\n checkInTime?: string;\n checkOutTime?: string;\n paymentCardTypes?: EPaymentCardType[];\n description?: string;\n locationDescription?: string;\n policies?: string;\n hotelServices: HotelServiceDTO[];\n businessServices: HotelServiceDTO[];\n rooms: HotelRoomsDTO;\n hasLoadedDetails?: boolean;\n dataSource: HotelDataSource;\n defaultCurrency: string;\n paymentMethods: EBookingPaymentMethod[];\n planpay?: {\n minDaysShowPlanpay: number;\n env: PlanPayEnvironment;\n };\n hotelUrl: string;\n heroImage: string;\n images?: string[];\n logo: string | ReactChild;\n colors: ColorProfile;\n distanceUnitType: DistanceUnitType;\n startsWeekOnDay?: WeekdayStartsOn;\n crossSellHotelIds?: string[];\n maxOccupancy?: number;\n hideByLine?: boolean;\n transportDistances?: TransportDistances;\n}\n\nexport interface ClientHotelConfig {\n providerHotelID: string;\n shortName?: string;\n defaultDatepickerType?: 'Month' | 'Week';\n // TODO: need to do magic to see if we need to append / prepend stuff, for now we assume that it's only used while on the site.\n checkoutUrl?: string;\n defaultLanguage: Language;\n privacyPolicyUrl: string;\n bookNowPayLaterUrl?: string;\n bestRateNoBSUrl?: string;\n memberOnlyRates?: string[];\n memberOnlyPromoCode?: string;\n memberOnlySignupInputs?: MemberOnlyModalInputs;\n googleMapsImage?: string;\n /**\n * Wether to show the Breakfast / Lunch / Dinner included\n */\n showMealPill?: boolean;\n /**\n * Distances for the Summary, and Hotel Info pages\n */\n perks: HotelPerk[];\n vgsVaultName: string;\n showAddonLoader: boolean;\n overwrites?: { [code: string]: Partial<HotelRoomOverwrite> };\n forwardFindReservationToSynxis?: boolean;\n additionalOptions?: { [name: string]: any };\n googleReCaptcha?: {\n loadForMembers?: boolean;\n siteKey?: string;\n };\n /**\n * Customize the Member modal colours. Specifically replacing the green (success) with the primary color of hotel (accent)\n */\n memberOnlyModalUsePrimaryColor?: boolean;\n /**\n * Callback to trigger specific events on load of a hotel.\n *\n * This is where you can specify custom fields, language overrides, feature toggles etc.\n */\n onLoad?: () => void;\n}\n\nexport interface ConfigHotel extends ClientHotelConfig, AdminHotelConfig, HasDatalayerTags {}\n\nexport type Hotel = ConfigHotel & {\n lowestPrice?: {\n value: number;\n isLoading: boolean;\n };\n};\n\n/**\n * Used for DetailsHotel event\n */\nexport type InitialHotelDetailsEventPayload = {\n name: string;\n hotelID: number | string;\n hotelUrl: string;\n currency: string;\n language: Language;\n address?: HotelAddress;\n};\n"]}