@roomstay/frontend 2.2.5 → 2.3.0-0

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 (122) hide show
  1. package/dist/115.bundle.js +1 -0
  2. package/dist/151.bundle.js +1 -0
  3. package/dist/201.bundle.js +1 -0
  4. package/dist/213.bundle.js +1 -0
  5. package/dist/279.bundle.js +1 -0
  6. package/dist/370.bundle.js +1 -0
  7. package/dist/387.bundle.js +1 -0
  8. package/dist/423.bundle.js +1 -0
  9. package/dist/446.bundle.js +1 -0
  10. package/dist/449.bundle.js +1 -0
  11. package/dist/535.bundle.js +2 -0
  12. package/dist/535.bundle.js.LICENSE.txt +30 -0
  13. package/dist/572.bundle.js +1 -0
  14. package/dist/619.bundle.js +1 -0
  15. package/dist/625.bundle.js +1 -0
  16. package/dist/686.bundle.js +1 -0
  17. package/dist/815.bundle.js +1 -0
  18. package/dist/855.bundle.js +1 -0
  19. package/dist/873.bundle.js +1 -0
  20. package/dist/903.bundle.js +1 -0
  21. package/dist/972.bundle.js +1 -0
  22. package/dist/975.bundle.js +1 -0
  23. package/dist/main.bundle.js +1 -0
  24. package/dist/src/components/generic/Tabs/TabContext.js.map +1 -1
  25. package/dist/src/components/generic/Tabs/TabLink.js +10 -7
  26. package/dist/src/components/generic/Tabs/TabLink.js.map +1 -1
  27. package/dist/src/components/generic/Tabs/TabRouteContainer.js +3 -1
  28. package/dist/src/components/generic/Tabs/TabRouteContainer.js.map +1 -1
  29. package/dist/src/components/generic/Tabs/Tabs.d.ts +1 -0
  30. package/dist/src/components/generic/Tabs/Tabs.js +2 -11
  31. package/dist/src/components/generic/Tabs/Tabs.js.map +1 -1
  32. package/dist/src/components/generic/Tooltip/Tooltip.d.ts +2 -0
  33. package/dist/src/components/generic/Tooltip/Tooltip.js +2 -2
  34. package/dist/src/components/generic/Tooltip/Tooltip.js.map +1 -1
  35. package/dist/src/components/steps/room/RoomList.js +2 -119
  36. package/dist/src/components/steps/room/RoomList.js.map +1 -1
  37. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.d.ts +8 -0
  38. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.js +97 -0
  39. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.js.map +1 -0
  40. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.d.ts +1 -0
  41. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.js +107 -0
  42. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.js.map +1 -0
  43. package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.d.ts +1 -0
  44. package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.js +43 -0
  45. package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.js.map +1 -0
  46. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.d.ts +1 -0
  47. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.js +56 -0
  48. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.js.map +1 -0
  49. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.d.ts +8 -0
  50. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.js +90 -0
  51. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.js.map +1 -0
  52. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryRow.d.ts +7 -0
  53. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryRow.js +172 -0
  54. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryRow.js.map +1 -0
  55. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js +2 -10
  56. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
  57. package/dist/src/components/steps/room/roomDetails/RoomDetails.js +1 -2
  58. package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
  59. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +1 -0
  60. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
  61. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +2 -1
  62. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
  63. package/dist/src/hooks/RoomRateAvailabilityListFromApi.d.ts +8 -0
  64. package/dist/src/hooks/RoomRateAvailabilityListFromApi.js +133 -0
  65. package/dist/src/hooks/RoomRateAvailabilityListFromApi.js.map +1 -0
  66. package/dist/src/models/Api/HotelDTO.d.ts +14 -0
  67. package/dist/src/models/Api/HotelDTO.js.map +1 -1
  68. package/dist/src/models/Client/Hotel/Hotel.d.ts +2 -1
  69. package/dist/src/models/Client/Hotel/Hotel.js.map +1 -1
  70. package/dist/src/models/Room/Room.d.ts +8 -0
  71. package/dist/src/models/Room/Room.js +6 -0
  72. package/dist/src/models/Room/Room.js.map +1 -1
  73. package/dist/src/pages/hotel/HotelInfo.js +4 -4
  74. package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
  75. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoom.d.ts +15 -0
  76. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoom.js +30 -0
  77. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoom.js.map +1 -0
  78. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.d.ts +2 -0
  79. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.js +69 -0
  80. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.js.map +1 -0
  81. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.d.ts +1 -0
  82. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.js +109 -0
  83. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.js.map +1 -0
  84. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomValidator.d.ts +3 -0
  85. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomValidator.js +10 -0
  86. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomValidator.js.map +1 -0
  87. package/dist/src/stories/BookingWizard.stories.js +2 -2
  88. package/dist/src/stories/BookingWizard.stories.js.map +1 -1
  89. package/dist/src/translations/Translation.d.ts +0 -4
  90. package/dist/src/translations/Translation.js +0 -4
  91. package/dist/src/translations/Translation.js.map +1 -1
  92. package/dist/src/translations/languages/en-gb.js +0 -4
  93. package/dist/src/translations/languages/en-gb.js.map +1 -1
  94. package/dist/src/util/DataLayer.js +1 -1
  95. package/dist/src/util/DataLayer.js.map +1 -1
  96. package/dist/test.bundle.js +1 -0
  97. package/dist/tests/offline/entry/{OfflineEngineDefaults.js → RSCompany.js} +52 -6
  98. package/dist/tests/offline/entry/RSCompany.js.map +1 -0
  99. package/dist/tests/offline/entry/ReactWrapper.d.ts +1 -0
  100. package/dist/tests/offline/entry/{OfflineEngineWrapper.js → ReactWrapper.js} +21 -14
  101. package/dist/tests/offline/entry/ReactWrapper.js.map +1 -0
  102. package/dist/tests/offline/entry/{offline-entry.js → allEngines.js} +3 -3
  103. package/dist/tests/offline/entry/allEngines.js.map +1 -0
  104. package/dist/tests/offline/entry/components/TestPicker.js +2 -61
  105. package/dist/tests/offline/entry/components/TestPicker.js.map +1 -1
  106. package/dist/tests/offline/entry/engineRenderer/memberPortalWidgetRenderer.js +2 -2
  107. package/dist/tests/offline/entry/engineRenderer/memberPortalWidgetRenderer.js.map +1 -1
  108. package/dist/vendors.bundle.js +2 -0
  109. package/dist/vendors.bundle.js.LICENSE.txt +80 -0
  110. package/package.json +2 -2
  111. package/dist/src/components/generic/Select.d.ts +0 -0
  112. package/dist/src/components/generic/Select.js +0 -2
  113. package/dist/src/components/generic/Select.js.map +0 -1
  114. package/dist/tests/offline/entry/OfflineEngineDefaults.js.map +0 -1
  115. package/dist/tests/offline/entry/OfflineEngineWrapper.d.ts +0 -1
  116. package/dist/tests/offline/entry/OfflineEngineWrapper.js.map +0 -1
  117. package/dist/tests/offline/entry/offline-entry.js.map +0 -1
  118. package/dist/tests/offline/entry/pages/Inline/index.d.ts +0 -4
  119. package/dist/tests/offline/entry/pages/Inline/index.js +0 -96
  120. package/dist/tests/offline/entry/pages/Inline/index.js.map +0 -1
  121. /package/dist/tests/offline/entry/{OfflineEngineDefaults.d.ts → RSCompany.d.ts} +0 -0
  122. /package/dist/tests/offline/entry/{offline-entry.d.ts → allEngines.d.ts} +0 -0
@@ -1,7 +1,21 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
2
14
  Object.defineProperty(exports, "__esModule", { value: true });
3
15
  exports.rsCompany = void 0;
4
16
  const index_1 = require("index");
17
+ const PromotionProvider_1 = require("../../../src/providers/PromotionProvider");
18
+ const StepGroupedRoom_1 = __importDefault(require("../../../src/pages/steps/StepGroupedRoom/StepGroupedRoom"));
5
19
  const HotelSpec = {
6
20
  hotelID: TEST_OFFLINE_HOTEL_ID,
7
21
  providerHotelID: '1',
@@ -13,6 +27,7 @@ const HotelSpec = {
13
27
  showAddonLoader: true,
14
28
  startsWeekOnDay: index_1.WeekdayStartsOn.Monday,
15
29
  heroImage: 'https://ovolohotels.com/wp-content/uploads/2020/02/Banner-e1587412618532.jpg',
30
+ //memberOnlyModalImage: "",
16
31
  privacyPolicyUrl: '/privacy',
17
32
  colors: {
18
33
  accent: '#7c39ff',
@@ -34,6 +49,7 @@ const HotelSpec = {
34
49
  defaultCurrency: 'NZD',
35
50
  hotelUrl: 'https://roomstay.io',
36
51
  checkoutUrl: '/fullpage/',
52
+ // crossSellHotelIds : ['8472N'],
37
53
  transportDistances: {
38
54
  plane: 6.9,
39
55
  train: 1.1,
@@ -106,6 +122,35 @@ const HotelSpec = {
106
122
  ],
107
123
  paymentCardTypes: [index_1.EPaymentCardType.Visa, index_1.EPaymentCardType.JCB, index_1.EPaymentCardType.AmericanExpress, index_1.EPaymentCardType.Mastercard],
108
124
  paymentMethods: [],
125
+ onLoad: () => {
126
+ index_1.RoomstayEventManager.addEvent(index_1.GuestSearchEvent, (event) => __awaiter(void 0, void 0, void 0, function* () {
127
+ console.log({ search: event.search });
128
+ const promotion = {
129
+ name: 'Boxing day Member Offer - Four for the price of three',
130
+ description: 'Only pay for 3 nights when you place a stay of 4 nights. 4th is on us!',
131
+ requireMemberPromotion: true,
132
+ memberOnlyModalButtonText: 'Apply now!',
133
+ memberOnlyModalTitle: 'Boxing Day Member Offer - Get the promotion now!',
134
+ memberOnlyModalImage: 'https://blog.near.com/wp-content/uploads/2019/09/the-knockout-that-wasnt-boxing-day.png',
135
+ memberOnlyDisableDefaultPromo: true,
136
+ testCriteria: (criteria) => __awaiter(void 0, void 0, void 0, function* () {
137
+ return criteria.checkOutDate.diff(criteria.checkInDate, 'days') !== 4;
138
+ }),
139
+ onApply: (criteria) => {
140
+ return {
141
+ checkOutDate: criteria.checkInDate.add(5, 'days').format('YYYY-MM-DD'),
142
+ promoCode: '4for3',
143
+ };
144
+ },
145
+ };
146
+ if (event.search.numAdults >= 2) {
147
+ (0, PromotionProvider_1.registerPromotion)(promotion);
148
+ }
149
+ else {
150
+ (0, PromotionProvider_1.removePromotion)(promotion);
151
+ }
152
+ }));
153
+ },
109
154
  address: {
110
155
  city: 'Cairns',
111
156
  country: 'Australia',
@@ -118,17 +163,18 @@ const HotelSpec = {
118
163
  maxOccupancy: 5,
119
164
  memberOnlyModalUsePrimaryColor: true,
120
165
  };
121
- const HotelSpec2 = Object.assign(Object.assign({}, HotelSpec), { address: Object.assign(Object.assign({}, HotelSpec.address), { city: 'South Yarra' }), name: 'Roomstay Demo 2', hotelID: '41e21cbe-3c18-4a47-a7a2-295ce46ae8f2' });
166
+ const HotelSpec2 = Object.assign(Object.assign({}, HotelSpec), { address: Object.assign(Object.assign({}, HotelSpec.address), { city: 'South Yarra' }), hotelID: '123', name: 'Roomstay Demo 2' });
122
167
  exports.rsCompany = {
123
168
  colors: {
124
169
  accent: '#BEEEEF',
125
170
  accent2: '#BEEEeF',
126
171
  accent3: '#BEEEeF',
127
172
  },
128
- logo: 'https://clients.app.roomstay.io/assets/roomstay-logo-long.png',
129
- name: 'Roomstay Demo',
130
- companyShort: 'Roomstay Demo Ltd',
131
- hotels: [HotelSpec, HotelSpec2],
173
+ logo: 'https://www.crystalbrookcollection.com/skins/crystal-brook-collection/assets/desktop/images/logo.svg',
174
+ name: 'Roomstay Incorporated',
175
+ companyShort: 'Hey Company Inc',
176
+ hotels: [HotelSpec, Object.assign(Object.assign({}, HotelSpec), { hotelID: '41e21cbe-3c18-4a47-a7a2-295ce46ae8f2' })],
132
177
  selectedHotel: HotelSpec,
133
178
  };
134
- //# sourceMappingURL=OfflineEngineDefaults.js.map
179
+ index_1.StepManager.addStep(10, StepGroupedRoom_1.default);
180
+ //# sourceMappingURL=RSCompany.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RSCompany.js","sourceRoot":"/","sources":["tests/offline/entry/RSCompany.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n ConfigHotel,\n Language,\n DistanceUnitType,\n WeekdayStartsOn,\n IconType,\n ConfigCompany,\n RoomstayEventManager,\n GuestSearchEvent,\n Hotel,\n EPaymentCardType,\n StepManager,\n StepHotel,\n} from 'index';\nimport { IPromotion } from '@/models/Promotion/IPromotion.type';\nimport { registerPromotion, removePromotion } from '@/providers/PromotionProvider';\nimport StepGroupedRoom from '@/pages/steps/StepGroupedRoom/StepGroupedRoom';\n\ndeclare const TEST_OFFLINE_HOTEL_ID: string;\n\nconst HotelSpec: ConfigHotel = {\n hotelID: TEST_OFFLINE_HOTEL_ID,\n providerHotelID: '1',\n\n name: 'Roomstay Demo',\n logo: '',\n defaultDatepickerType: 'Month',\n defaultLanguage: Language.en_us,\n distanceUnitType: DistanceUnitType.Metric,\n showAddonLoader: true,\n startsWeekOnDay: WeekdayStartsOn.Monday,\n\n heroImage: 'https://ovolohotels.com/wp-content/uploads/2020/02/Banner-e1587412618532.jpg',\n //memberOnlyModalImage: \"\",\n privacyPolicyUrl: '/privacy',\n colors: {\n accent: '#7c39ff',\n accent2: '#efe7ff',\n accent3: '#5725b9',\n success: '#00d7e1',\n },\n googleReCaptcha: {\n loadForMembers: true,\n siteKey: '6LdjaFsgAAAAANdKGv9XMKkc5iKdTA0Wh5XR0vc2',\n },\n vgs: {\n vaultNames: {\n standard: 'tntmupn9ras',\n members: 'tntjyo5u2pi',\n },\n },\n memberOnlyPromoCode: 'BAR',\n defaultCurrency: 'NZD',\n hotelUrl: 'https://roomstay.io',\n checkoutUrl: '/fullpage/',\n // crossSellHotelIds : ['8472N'],\n\n transportDistances: {\n plane: 6.9,\n train: 1.1,\n bus: 0.29,\n taxi: 0,\n },\n overwrites: {\n PRS: {\n RoomDimensions: '50 m²',\n },\n DBL: {\n RoomDimensions: '65 m²',\n },\n JRS: {\n RoomDimensions: '60 m²',\n },\n SGL: {\n RoomDimensions: '26 m²',\n },\n A1K: {\n RoomDimensions: '55 m²',\n },\n ABC: {\n RoomDimensions: '100 m²',\n },\n },\n showMealPill: true,\n googleMapsImage: '/public/client/woolloomooloo/maps-static-thumbnail.png',\n perks: [\n {\n icon: IconType.Breakfast,\n name: 'Breakfast',\n image: 'https://ovolohotels.com/wp-content/themes/wonderful/assets/img/wonderful/perks/breakfast_large.png',\n },\n {\n icon: IconType.WiFi,\n name: 'Superspeed Wifi',\n image: 'https://ovolohotels.com/wp-content/themes/wonderful/assets/img/wonderful/perks/wifi_large.png',\n },\n {\n icon: IconType.Bar,\n name: 'Social Hour',\n image: 'https://ovolohotels.com/wp-content/themes/wonderful/assets/img/wonderful/perks/socialhour_large.png',\n },\n {\n icon: IconType.Fridge,\n name: 'In-room mini bar',\n image: 'https://ovolohotels.com/wp-content/themes/wonderful/assets/img/wonderful/perks/minibar_large.png',\n },\n {\n icon: IconType.Laundry,\n name: 'Self-service laundry',\n image: 'https://ovolohotels.com/wp-content/themes/wonderful/assets/img/wonderful/perks/laundry_large.png',\n },\n {\n icon: IconType.Gym,\n name: '24-hour Gym',\n image: 'https://ovolohotels.com/wp-content/themes/wonderful/assets/img/wonderful/perks/gym_large.png',\n },\n {\n icon: IconType.Snacks,\n name: 'All day snacks',\n image: 'https://ovolohotels.com/wp-content/themes/wonderful/assets/img/wonderful/perks/snacks_large.png',\n },\n {\n icon: IconType.LootBag,\n name: 'Free Loot Bag',\n image: 'https://ovolohotels.com/wp-content/themes/wonderful/assets/img/wonderful/perks/lootbag_large.png',\n },\n ],\n paymentCardTypes: [EPaymentCardType.Visa, EPaymentCardType.JCB, EPaymentCardType.AmericanExpress, EPaymentCardType.Mastercard],\n paymentMethods: [],\n onLoad: () => {\n RoomstayEventManager.addEvent(GuestSearchEvent, async (event: GuestSearchEvent) => {\n console.log({ search: event.search });\n\n const promotion: IPromotion = {\n name: 'Boxing day Member Offer - Four for the price of three',\n description: 'Only pay for 3 nights when you place a stay of 4 nights. 4th is on us!',\n\n requireMemberPromotion: true,\n memberOnlyModalButtonText: 'Apply now!',\n memberOnlyModalTitle: 'Boxing Day Member Offer - Get the promotion now!',\n memberOnlyModalImage: 'https://blog.near.com/wp-content/uploads/2019/09/the-knockout-that-wasnt-boxing-day.png',\n memberOnlyDisableDefaultPromo: true,\n\n testCriteria: async (criteria) => {\n return criteria.checkOutDate.diff(criteria.checkInDate, 'days') !== 4;\n },\n onApply: (criteria) => {\n return {\n checkOutDate: criteria.checkInDate.add(5, 'days').format('YYYY-MM-DD'),\n promoCode: '4for3',\n };\n },\n };\n\n if (event.search.numAdults >= 2) {\n registerPromotion(promotion);\n } else {\n removePromotion(promotion);\n }\n });\n },\n address: {\n city: 'Cairns',\n country: 'Australia',\n line1: '163 Abbott Street',\n line2: ' Cairns',\n line3: '',\n postalCode: '04870',\n state: 'Queensland',\n },\n maxOccupancy: 5,\n memberOnlyModalUsePrimaryColor: true,\n} as unknown as ConfigHotel;\n\nconst HotelSpec2 = { ...HotelSpec, address: { ...HotelSpec.address, city: 'South Yarra' }, hotelID: '123', name: 'Roomstay Demo 2' };\n\nexport const rsCompany: ConfigCompany = {\n colors: {\n accent: '#BEEEEF',\n accent2: '#BEEEeF',\n accent3: '#BEEEeF',\n },\n logo: 'https://www.crystalbrookcollection.com/skins/crystal-brook-collection/assets/desktop/images/logo.svg',\n name: 'Roomstay Incorporated',\n companyShort: 'Hey Company Inc',\n hotels: [HotelSpec, { ...HotelSpec, hotelID: '41e21cbe-3c18-4a47-a7a2-295ce46ae8f2' }],\n selectedHotel: HotelSpec as Hotel,\n};\n\nStepManager.addStep(10, StepGroupedRoom);\n"]}
@@ -0,0 +1 @@
1
+ export default function ReactWrapper(): JSX.Element;
@@ -10,11 +10,11 @@ const RecentSearchesEngine_1 = require("../../../src/engines/RecentSearchesEngin
10
10
  const FullPageBookingEngine_1 = require("../../../src/engines/FullPageBookingEngine/FullPageBookingEngine");
11
11
  const FeatureProvider_1 = __importDefault(require("../../../src/providers/FeatureProvider"));
12
12
  const RoomstayThemeEngine_1 = __importDefault(require("../../../src/providers/RoomstayThemeEngine"));
13
- const OfflineEngineDefaults_1 = require("./OfflineEngineDefaults");
13
+ const index_1 = require("../../../src/index");
14
+ const RSCompany_1 = require("./RSCompany");
14
15
  const TestPicker_1 = require("./components/TestPicker");
15
16
  const BookingWizardEngine_1 = require("../../../src/engines/BookingWizardEngine/BookingWizardEngine");
16
17
  const memberPortalWidgetRenderer_1 = require("./engineRenderer/memberPortalWidgetRenderer");
17
- const Inline_1 = require("./pages/Inline");
18
18
  function FullPageRender() {
19
19
  const fullpage = (0, react_2.useRef)(null);
20
20
  (0, react_2.useEffect)(() => {
@@ -23,9 +23,9 @@ function FullPageRender() {
23
23
  const urlParams = new URLSearchParams(window.location.search);
24
24
  const customHotel = urlParams.get('hotel');
25
25
  if (customHotel) {
26
- OfflineEngineDefaults_1.rsCompany.hotels[0].hotelID = customHotel;
26
+ RSCompany_1.rsCompany.hotels[0].hotelID = customHotel;
27
27
  }
28
- fullpageBE.setConfig({ company: OfflineEngineDefaults_1.rsCompany });
28
+ fullpageBE.setConfig({ company: RSCompany_1.rsCompany });
29
29
  fullpageBE.start();
30
30
  FeatureProvider_1.default.load('RoomUpsellFeature');
31
31
  FeatureProvider_1.default.load('InlineAddonStepFeature');
@@ -34,12 +34,24 @@ function FullPageRender() {
34
34
  }, [fullpage]);
35
35
  return react_1.default.createElement("div", { ref: fullpage });
36
36
  }
37
+ function InlineRender() {
38
+ const inline = (0, react_2.useRef)(null);
39
+ (0, react_2.useEffect)(() => {
40
+ if (inline.current) {
41
+ const fullpageBE = new index_1.InlineRoomMiniEngine(inline.current, 'VDK');
42
+ fullpageBE.setConfig({ company: RSCompany_1.rsCompany });
43
+ RoomstayThemeEngine_1.default.registerStyles();
44
+ fullpageBE.start();
45
+ }
46
+ }, [inline]);
47
+ return react_1.default.createElement("div", { ref: inline });
48
+ }
37
49
  function RecentSearchesRender() {
38
50
  const recent = (0, react_2.useRef)(null);
39
51
  (0, react_2.useEffect)(() => {
40
52
  if (recent.current) {
41
53
  const fullpageBE = new RecentSearchesEngine_1.RecentSearchesEngine(recent.current);
42
- fullpageBE.setConfig({ company: OfflineEngineDefaults_1.rsCompany });
54
+ fullpageBE.setConfig({ company: RSCompany_1.rsCompany });
43
55
  RoomstayThemeEngine_1.default.registerStyles();
44
56
  fullpageBE.start();
45
57
  }
@@ -101,12 +113,7 @@ function BookingWizardRender() {
101
113
  }, [recent]);
102
114
  return react_1.default.createElement("div", { ref: recent });
103
115
  }
104
- function TestEngineWrapper() {
105
- const urlParams = new URLSearchParams(window.location.search);
106
- const customHotel = urlParams.get('hotel');
107
- if (customHotel) {
108
- OfflineEngineDefaults_1.rsCompany.hotels[0].hotelID = customHotel;
109
- }
116
+ function ReactWrapper() {
110
117
  return (react_1.default.createElement("div", null,
111
118
  react_1.default.createElement("div", { className: "hi-widget-container" },
112
119
  react_1.default.createElement("div", { className: "hi-launcher-container" })),
@@ -119,7 +126,7 @@ function TestEngineWrapper() {
119
126
  case 'fp':
120
127
  return react_1.default.createElement(FullPageRender, null);
121
128
  case 'in':
122
- return react_1.default.createElement(Inline_1.InlineEngineWrapper, { company: OfflineEngineDefaults_1.rsCompany });
129
+ return react_1.default.createElement(InlineRender, null);
123
130
  case 'rc':
124
131
  return react_1.default.createElement(RecentSearchesRender, null);
125
132
  case 'bw':
@@ -129,5 +136,5 @@ function TestEngineWrapper() {
129
136
  }
130
137
  } }))));
131
138
  }
132
- exports.default = TestEngineWrapper;
133
- //# sourceMappingURL=OfflineEngineWrapper.js.map
139
+ exports.default = ReactWrapper;
140
+ //# sourceMappingURL=ReactWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReactWrapper.js","sourceRoot":"/","sources":["tests/offline/entry/ReactWrapper.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { useEffect, useRef } from 'react';\nimport { BrowserRouter, Route } from 'react-router-dom';\n\nimport { RecentSearchesEngine } from '@/engines/RecentSearchesEngine/RecentSearchesEngine';\nimport { FullPageBookingEngine } from '@/engines/FullPageBookingEngine/FullPageBookingEngine';\nimport FeatureProvider from '@/providers/FeatureProvider';\nimport RoomstayThemeEngine from '@/providers/RoomstayThemeEngine';\nimport { InlineRoomMiniEngine } from '@/index';\nimport { rsCompany } from './RSCompany';\nimport { TestPicker } from './components/TestPicker';\nimport { BookingWizardEngine } from '@/engines/BookingWizardEngine/BookingWizardEngine';\nimport { MemberPortalWidgetRenderer } from './engineRenderer/memberPortalWidgetRenderer';\n\nfunction FullPageRender() {\n const fullpage = useRef(null);\n\n useEffect(() => {\n if (fullpage.current) {\n const fullpageBE = new FullPageBookingEngine(fullpage.current);\n\n const urlParams = new URLSearchParams(window.location.search);\n const customHotel = urlParams.get('hotel');\n\n if (customHotel) {\n rsCompany.hotels[0].hotelID = customHotel;\n }\n\n fullpageBE.setConfig({ company: rsCompany });\n fullpageBE.start();\n\n FeatureProvider.load('RoomUpsellFeature');\n FeatureProvider.load('InlineAddonStepFeature');\n FeatureProvider.load('MemberPortalFeature');\n }\n }, [fullpage]);\n\n return <div ref={fullpage} />;\n}\n\nfunction InlineRender() {\n const inline = useRef(null);\n\n useEffect(() => {\n if (inline.current) {\n const fullpageBE = new InlineRoomMiniEngine(inline.current, 'VDK');\n fullpageBE.setConfig({ company: rsCompany });\n RoomstayThemeEngine.registerStyles();\n fullpageBE.start();\n }\n }, [inline]);\n\n return <div ref={inline} />;\n}\n\nfunction RecentSearchesRender() {\n const recent = useRef(null);\n\n useEffect(() => {\n if (recent.current) {\n const fullpageBE = new RecentSearchesEngine(recent.current);\n fullpageBE.setConfig({ company: rsCompany });\n RoomstayThemeEngine.registerStyles();\n fullpageBE.start();\n }\n }, [recent]);\n\n return <div ref={recent} />;\n}\n\nfunction BookingWizardRender() {\n const recent = useRef(null);\n\n useEffect(() => {\n if (recent.current) {\n const wizardBookingEngine = new BookingWizardEngine(recent.current);\n wizardBookingEngine.setConfig({\n layout: 'horizontal',\n theme: 'specific',\n widgetType: 'group',\n onSubmit: (e) => {\n console.log(e);\n },\n defaultColors: {\n accent: '#A0FC68',\n accent2: '#AAFC68',\n accent3: '#F0FC68',\n },\n properties: {\n Cairns: [\n {\n id: '6f3631bc-e773-4ea0-9163-3d9965d41175',\n name: 'Apple Pie',\n colors: {\n accent: '#beeeef',\n accent2: '#aaeeef',\n accent3: '#cceeef',\n },\n },\n {\n id: '5512',\n name: 'Bubble Pie',\n colors: {\n accent: '#beeeef',\n accent2: '#aaeeef',\n accent3: '#cceeef',\n },\n },\n ],\n },\n selectedProperty: {\n id: '6f3631bc-e773-4ea0-9163-3d9965d41175',\n name: 'Apple Pie',\n colors: {\n accent: '#beeeef',\n accent2: '#aaeeef',\n accent3: '#cceeef',\n },\n },\n });\n RoomstayThemeEngine.registerStyles();\n wizardBookingEngine.start();\n }\n }, [recent]);\n\n return <div ref={recent} />;\n}\n\nexport default function ReactWrapper() {\n return (\n <div>\n <div className=\"hi-widget-container\">\n <div className=\"hi-launcher-container\"></div>\n </div>\n <BrowserRouter>\n <TestPicker />\n <Route\n path=\"/\"\n render={(p) => {\n const search = p.location.search;\n const query = new URLSearchParams(search);\n switch (query.get('engine')) {\n case 'fp':\n return <FullPageRender />;\n case 'in':\n return <InlineRender />;\n case 'rc':\n return <RecentSearchesRender />;\n case 'bw':\n return <BookingWizardRender />;\n case 'mp':\n return <MemberPortalWidgetRenderer />;\n }\n }}\n />\n </BrowserRouter>\n </div>\n );\n}\n"]}
@@ -31,7 +31,7 @@ const react_1 = __importDefault(require("react"));
31
31
  const StepRoomBestRateAlert_1 = require("../../../src/components/steps/room/StepRoomBestRateAlert");
32
32
  const RoomstayBestRateAlert_1 = __importDefault(require("../RoomstayBestRateAlert"));
33
33
  const react_dom_1 = require("react-dom");
34
- const OfflineEngineWrapper_1 = __importDefault(require("./OfflineEngineWrapper"));
34
+ const ReactWrapper_1 = __importDefault(require("./ReactWrapper"));
35
35
  const RoomstayThemeEngine_1 = __importStar(require("../../../src/providers/RoomstayThemeEngine"));
36
36
  const DIProvider_1 = require("../../../src/providers/DIProvider");
37
37
  const FeatureProvider_1 = __importDefault(require("../../../src/providers/FeatureProvider"));
@@ -46,5 +46,5 @@ window.FeatureProvider = FeatureProvider_1.default;
46
46
  window.RoomstayEventManager = src_1.RoomstayEventManager;
47
47
  FeatureProvider_1.default.load(FeaturedPromoFeature_1.default);
48
48
  document.body.appendChild(container);
49
- (0, react_dom_1.render)(react_1.default.createElement(OfflineEngineWrapper_1.default, null), container);
50
- //# sourceMappingURL=offline-entry.js.map
49
+ (0, react_dom_1.render)(react_1.default.createElement(ReactWrapper_1.default, null), container);
50
+ //# sourceMappingURL=allEngines.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allEngines.js","sourceRoot":"/","sources":["tests/offline/entry/allEngines.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA2B;AAE3B,kDAA0B;AAC1B,oGAAqG;AACrG,qFAA6D;AAC7D,yCAAmC;AACnC,kEAA0C;AAE1C,kGAAgG;AAEhG,kEAAwE;AACxE,6FAAqE;AACrE,sCAAoD;AACpD,+GAAuF;AAEvF,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAEhD,IAAA,gCAAmB,EAAC,iDAAyB,EAAE,+BAAqB,CAAC,CAAC;AACtE,6BAAmB,CAAC,SAAS,GAAG,mCAAa,CAAC,MAAM,CAAC;AAErD,YAAY;AACZ,MAAM,CAAC,eAAe,GAAG,yBAAe,CAAC;AACzC,YAAY;AACZ,MAAM,CAAC,oBAAoB,GAAG,0BAAoB,CAAC;AAEnD,yBAAe,CAAC,IAAI,CAAC,8BAAoB,CAAC,CAAC;AAE3C,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AACrC,IAAA,kBAAM,EAAC,8BAAC,sBAAY,OAAG,EAAE,SAAS,CAAC,CAAC","sourcesContent":["import './allEngines.scss';\n\nimport React from 'react';\nimport { STEP_ROOM_BEST_RATE_ALERT } from '../../../src/components/steps/room/StepRoomBestRateAlert';\nimport RoomstayBestRateAlert from '../RoomstayBestRateAlert';\nimport { render } from 'react-dom';\nimport ReactWrapper from './ReactWrapper';\n\nimport RoomstayThemeEngine, { RoomstayTheme } from '../../../src/providers/RoomstayThemeEngine';\n\nimport { registerReplacement } from '../../../src/providers/DIProvider';\nimport FeatureProvider from '../../../src/providers/FeatureProvider';\nimport { RoomstayEventManager } from '../../../src';\nimport FeaturedPromoFeature from '../../../src/providers/feature/FeaturedPromoFeature';\n\nconst container = document.createElement('div');\n\nregisterReplacement(STEP_ROOM_BEST_RATE_ALERT, RoomstayBestRateAlert);\nRoomstayThemeEngine.ThemeType = RoomstayTheme.Medium;\n\n//@ts-ignore\nwindow.FeatureProvider = FeatureProvider;\n//@ts-ignore\nwindow.RoomstayEventManager = RoomstayEventManager;\n\nFeatureProvider.load(FeaturedPromoFeature);\n\ndocument.body.appendChild(container);\nrender(<ReactWrapper />, container);\n"]}
@@ -48,7 +48,6 @@ const Query_1 = require("../../../../src/hooks/Query");
48
48
  const MemberPortalFeature_1 = __importDefault(require("../../../../src/providers/feature/MemberPortalFeature"));
49
49
  const FullPageBookingEngineElementEvents_1 = require("../../../../src/engines/FullPageBookingEngine/FullPageBookingEngineElementEvents");
50
50
  const ModifyBookingFeature_1 = __importDefault(require("../../../../src/providers/feature/ModifyBookingFeature"));
51
- const OfflineEngineDefaults_1 = require("../OfflineEngineDefaults");
52
51
  const engines = [
53
52
  { value: 'fp', text: 'Full Page' },
54
53
  { value: 'in', text: 'Inline Mini Wizard' },
@@ -56,51 +55,6 @@ const engines = [
56
55
  { value: 'bw', text: 'Booking Wizard' },
57
56
  { value: 'mp', text: 'Member Portal' },
58
57
  ];
59
- const hotels = [
60
- { value: '41e21cbe-3c18-4a47-a7a2-295ce46ae8f2', text: 'Naumi Auckland Airport' },
61
- { value: '1d4285f4-8660-4222-bbd7-3b96ae06d94e', text: 'The Central Private Hotel' },
62
- { value: '6f3329e0-2f72-4a68-a659-45020db00246', text: 'Central Studio Hotel Sydney' },
63
- { value: '3792a869-6834-4012-b2ed-0dcccb23cae4', text: 'The Dairy Private Hotel' },
64
- { value: 'aa04adb0-4f08-456d-8401-475d150fec4d', text: 'Naumi Hotel Wellington' },
65
- { value: '6f3631bc-e773-4ea0-9163-3d9965d41175', text: 'Naumi Singapore' },
66
- { value: '8d546ce0-1fe4-466f-a12b-4190cc532bbc', text: 'Naumi Singapore Per Person' },
67
- { value: '814dbcb4-3ba7-4b4a-a7ee-551396115c7d', text: 'Naumi Studio Wellington' },
68
- { value: 'f7641862-cc3b-4f13-91b4-64e1a9d901bd', text: 'The Inchcolm' },
69
- { value: '34fe9966-3a35-4db3-8043-a67c96047a52', text: 'The Inchcolm Production' },
70
- { value: '3a47e623-3c52-415b-ad90-c841e5ff5ba6', text: 'Ovolo The Valley' },
71
- { value: '344fc710-f7c9-46db-9822-ae0d7f72d9dd', text: 'Ovolo The Valley Production' },
72
- { value: '9112eb12-c173-4493-9df8-703680f6bc03', text: 'Mamaka by Ovolo' },
73
- { value: '05c82275-a919-456c-b78c-711e8e0526d7', text: 'Ovolo South Yarra' },
74
- { value: 'd1349ed7-1376-4b08-b735-751e34ce7e26', text: 'Ovolo South Yarra Production' },
75
- { value: '0309fabc-885f-4798-b70e-9c867ba92d16', text: 'Ovolo Central' },
76
- { value: 'f43885ad-099b-44c7-b0fc-5919598aa22f', text: 'Ovolo Southside' },
77
- { value: 'bbc7274f-a934-4f52-bc4d-3ae6c03604ff', text: 'The Sheung Wan' },
78
- { value: 'fc53e95d-9286-4099-9acd-29cef0cafbd3', text: 'Laneways by Ovolo' },
79
- { value: 'bec8e104-9065-42c4-813e-dbd39298b271', text: 'Ovolo Laneways Production' },
80
- { value: '318e0e62-7336-4a91-9535-9ea62a7777cd', text: 'Ovolo Woolloomooloo' },
81
- { value: 'f31153e4-f23b-44dd-9be6-f8ce1d0a592d', text: 'Ovolo Woolloomooloo Production' },
82
- { value: '206a9106-70bf-4f5a-8b90-626cc55f967a', text: 'The Woolstore 1888' },
83
- { value: '0bb61424-75b1-4f6a-bb41-98a705842ac9', text: 'The Woolstore 1888 Production' },
84
- { value: '75afc9c6-13af-4343-a2d6-be6ad48c1c11', text: 'Nishi Apartments' },
85
- { value: '0b1458a8-ee4e-4421-b879-6bb1329db1b9', text: 'Nishi Apartments Production' },
86
- { value: '59ed3835-3339-4f40-abaa-2a013c514059', text: 'Ovolo Nishi' },
87
- { value: 'd46c62f4-f74c-4339-a5f3-c55266a5007e', text: 'Ovolo Nishi Production' },
88
- { value: '2fafb397-da91-4ac4-8ee7-e197a0664b20', text: 'Crystalbrook Flynn' },
89
- { value: '62043741-6cff-4fb6-a16e-c480ed2840e1', text: 'Crystalbrook Riley' },
90
- { value: '0f66d697-4963-4ffe-ad39-da118cf6f9e9', text: 'Crystalbrook Byron' },
91
- { value: '4ea1bbd9-3015-40ad-a372-aea85f8d81e5', text: 'Crystalbrook Kingsley' },
92
- { value: '0df24023-2b00-4005-9e11-b03e985ea872', text: 'Crystalbrook Vincent' },
93
- { value: 'ffb49371-b8e4-4f9c-a77f-f5f8bc1b95d3', text: 'Crystalbrook Albion' },
94
- { value: 'e72c82f0-4ff0-4e4f-9927-66917585e127', text: 'Crystalbrook Bailey' },
95
- { value: 'de670d66-f080-4fb6-8dd8-3701951ad171', text: 'Beechmont Estate' },
96
- { value: '9a93f659-ca9a-455b-8e05-1f6e2b6610b1', text: 'Daintree Ecolodge' },
97
- { value: 'fbbb57ce-6076-4438-aa35-6914e4863729', text: 'Mt Mulligan Lodge' },
98
- { value: '7c26c3f4-09cc-414d-8ed2-aceec23dd47c', text: 'Orpheus Island Lodge' },
99
- { value: '7cef9d36-7fa1-4049-b9a2-9bc60a4bba6f', text: 'Glendhu Bay Holiday Park' },
100
- { value: 'ab9fe300-8be0-46c2-8fa5-7998439d7ca4', text: 'Wanaka Holiday Park' },
101
- { value: '0f683d3f-b997-4d00-9601-69ed1d7f826e', text: 'Arrowtown Holiday Park' },
102
- { value: '1e79858b-b761-4b0f-9da2-1b9ce85a4e9c', text: 'Queenstown Holiday Park' },
103
- ];
104
58
  const availableFeatures = [
105
59
  {
106
60
  feature: index_1.E164PhoneNumberFieldFeature,
@@ -140,7 +94,6 @@ const availableThemes = [
140
94
  { text: 'Light', value: index_1.RoomstayTheme.Light },
141
95
  ];
142
96
  const TestPicker = () => {
143
- var _a;
144
97
  const [, setInc] = (0, react_1.useState)(0);
145
98
  const [isModalOpen, setIsModalOpen] = (0, react_1.useState)(false);
146
99
  const updateQueryParameters = (0, UpdateQueryParameters_1.useUpdateQueryParameters)();
@@ -225,16 +178,8 @@ const TestPicker = () => {
225
178
  provider.write('SavedFeatures', featureMap);
226
179
  console.log('saved features');
227
180
  };
228
- const onHotelChanged = (value) => {
229
- query.set('hotel', value);
230
- updateQueryParameters({
231
- hotel: value,
232
- });
233
- window.location.reload();
234
- };
235
181
  return (react_1.default.createElement(react_1.default.Fragment, null,
236
- react_1.default.createElement("div", { className: TestPicker_module_scss_1.default.powerToggle, onClick: onTriggerClick },
237
- react_1.default.createElement("img", { src: "https://clients.app.roomstay.io/assets/roomstay-logo.png" })),
182
+ react_1.default.createElement("div", { className: TestPicker_module_scss_1.default.powerToggle, onClick: onTriggerClick }),
238
183
  react_1.default.createElement(SimpleModal_1.default, { open: isModalOpen, onClose: onModalClose, title: "Development Control Panel" },
239
184
  react_1.default.createElement("div", { className: TestPicker_module_scss_1.default.engineControlBody },
240
185
  react_1.default.createElement("div", { className: "row" },
@@ -259,11 +204,7 @@ const TestPicker = () => {
259
204
  react_1.default.createElement("div", { className: "u-marg-bottom--heavy" },
260
205
  react_1.default.createElement("div", { className: "u-marg-bottom--light" },
261
206
  react_1.default.createElement(index_1.Headline, { bold: true }, "Engine Type:")),
262
- react_1.default.createElement(Select_1.Select, { nativeOnMobile: true, options: engines, value: query.get('engine'), onChange: onChangeEngine, keyName: "value", labelName: "text" })),
263
- react_1.default.createElement("div", { className: "u-marg-bottom--heavy" },
264
- react_1.default.createElement("div", { className: "u-marg-bottom--light" },
265
- react_1.default.createElement(index_1.Headline, { bold: true }, "Selected Hotel:")),
266
- react_1.default.createElement(Select_1.Select, { nativeOnMobile: true, options: hotels, value: (_a = query.get('hotel')) !== null && _a !== void 0 ? _a : OfflineEngineDefaults_1.rsCompany.hotels[0].hotelID, onChange: onHotelChanged, keyName: "value", labelName: "text" })))),
207
+ react_1.default.createElement(Select_1.Select, { nativeOnMobile: true, options: engines, value: query.get('engine'), onChange: onChangeEngine, keyName: "value", labelName: "text" })))),
267
208
  react_1.default.createElement("div", { className: "u-marg-bottom--light" },
268
209
  react_1.default.createElement(index_1.Headline, { bold: true }, "Engine Theme")),
269
210
  react_1.default.createElement("div", { className: "u-marg-bottom--heavy" },
@@ -1 +1 @@
1
- {"version":3,"file":"TestPicker.js","sourceRoot":"/","sources":["tests/offline/entry/components/TestPicker.tsx"],"names":[],"mappings":"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","sourcesContent":["import styles from './TestPicker.module.scss';\nimport React, { useEffect, useState } from 'react';\nimport { CognitoUser } from '@aws-amplify/auth';\n\nimport SimpleModal from '@/components/generic/modal/SimpleModal';\nimport {\n Checkbox,\n ConfirmationVerifyFeature,\n E164PhoneNumberFieldFeature,\n FeatureProvider,\n Headline,\n InlineAddonStepFeature,\n RoomstayTheme,\n RoomstayThemeEngine,\n RoomUpsellFeature,\n ShowIATANumberOnCheckoutFeature,\n FullPageEngineSmallSpacingFeature,\n InputSelect,\n} from 'index';\nimport { Feature } from '@/providers/feature/Feature';\nimport { IDefaultSelectOption, Select } from '@/components/generic/Select/Select';\nimport { getAuth } from '@/util/AsyncAuth';\nimport { LocalStorageProvider } from '@/providers/storage/LocalStorageProvider';\nimport { useUpdateQueryParameters } from '@/hooks/UpdateQueryParameters';\nimport { useQuery } from '@/hooks/Query';\nimport MemberPortalFeature from '@/providers/feature/MemberPortalFeature';\nimport { FullPageBookingEngineElementEvents } from '@/engines/FullPageBookingEngine/FullPageBookingEngineElementEvents';\nimport ModifyBookingFeature from '@/providers/feature/ModifyBookingFeature';\nimport { rsCompany } from '../OfflineEngineDefaults';\n\nconst engines = [\n { value: 'fp', text: 'Full Page' },\n { value: 'in', text: 'Inline Mini Wizard' },\n { value: 'rc', text: 'Recent Searches' },\n { value: 'bw', text: 'Booking Wizard' },\n { value: 'mp', text: 'Member Portal' },\n];\n\nconst hotels = [\n { value: '41e21cbe-3c18-4a47-a7a2-295ce46ae8f2', text: 'Naumi Auckland Airport' },\n { value: '1d4285f4-8660-4222-bbd7-3b96ae06d94e', text: 'The Central Private Hotel' },\n { value: '6f3329e0-2f72-4a68-a659-45020db00246', text: 'Central Studio Hotel Sydney' },\n { value: '3792a869-6834-4012-b2ed-0dcccb23cae4', text: 'The Dairy Private Hotel' },\n { value: 'aa04adb0-4f08-456d-8401-475d150fec4d', text: 'Naumi Hotel Wellington' },\n { value: '6f3631bc-e773-4ea0-9163-3d9965d41175', text: 'Naumi Singapore' },\n { value: '8d546ce0-1fe4-466f-a12b-4190cc532bbc', text: 'Naumi Singapore Per Person' },\n { value: '814dbcb4-3ba7-4b4a-a7ee-551396115c7d', text: 'Naumi Studio Wellington' },\n { value: 'f7641862-cc3b-4f13-91b4-64e1a9d901bd', text: 'The Inchcolm' },\n { value: '34fe9966-3a35-4db3-8043-a67c96047a52', text: 'The Inchcolm Production' },\n { value: '3a47e623-3c52-415b-ad90-c841e5ff5ba6', text: 'Ovolo The Valley' },\n { value: '344fc710-f7c9-46db-9822-ae0d7f72d9dd', text: 'Ovolo The Valley Production' },\n { value: '9112eb12-c173-4493-9df8-703680f6bc03', text: 'Mamaka by Ovolo' },\n { value: '05c82275-a919-456c-b78c-711e8e0526d7', text: 'Ovolo South Yarra' },\n { value: 'd1349ed7-1376-4b08-b735-751e34ce7e26', text: 'Ovolo South Yarra Production' },\n { value: '0309fabc-885f-4798-b70e-9c867ba92d16', text: 'Ovolo Central' },\n { value: 'f43885ad-099b-44c7-b0fc-5919598aa22f', text: 'Ovolo Southside' },\n { value: 'bbc7274f-a934-4f52-bc4d-3ae6c03604ff', text: 'The Sheung Wan' },\n { value: 'fc53e95d-9286-4099-9acd-29cef0cafbd3', text: 'Laneways by Ovolo' },\n { value: 'bec8e104-9065-42c4-813e-dbd39298b271', text: 'Ovolo Laneways Production' },\n { value: '318e0e62-7336-4a91-9535-9ea62a7777cd', text: 'Ovolo Woolloomooloo' },\n { value: 'f31153e4-f23b-44dd-9be6-f8ce1d0a592d', text: 'Ovolo Woolloomooloo Production' },\n { value: '206a9106-70bf-4f5a-8b90-626cc55f967a', text: 'The Woolstore 1888' },\n { value: '0bb61424-75b1-4f6a-bb41-98a705842ac9', text: 'The Woolstore 1888 Production' },\n { value: '75afc9c6-13af-4343-a2d6-be6ad48c1c11', text: 'Nishi Apartments' },\n { value: '0b1458a8-ee4e-4421-b879-6bb1329db1b9', text: 'Nishi Apartments Production' },\n { value: '59ed3835-3339-4f40-abaa-2a013c514059', text: 'Ovolo Nishi' },\n { value: 'd46c62f4-f74c-4339-a5f3-c55266a5007e', text: 'Ovolo Nishi Production' },\n { value: '2fafb397-da91-4ac4-8ee7-e197a0664b20', text: 'Crystalbrook Flynn' },\n { value: '62043741-6cff-4fb6-a16e-c480ed2840e1', text: 'Crystalbrook Riley' },\n { value: '0f66d697-4963-4ffe-ad39-da118cf6f9e9', text: 'Crystalbrook Byron' },\n { value: '4ea1bbd9-3015-40ad-a372-aea85f8d81e5', text: 'Crystalbrook Kingsley' },\n { value: '0df24023-2b00-4005-9e11-b03e985ea872', text: 'Crystalbrook Vincent' },\n { value: 'ffb49371-b8e4-4f9c-a77f-f5f8bc1b95d3', text: 'Crystalbrook Albion' },\n { value: 'e72c82f0-4ff0-4e4f-9927-66917585e127', text: 'Crystalbrook Bailey' },\n { value: 'de670d66-f080-4fb6-8dd8-3701951ad171', text: 'Beechmont Estate' },\n { value: '9a93f659-ca9a-455b-8e05-1f6e2b6610b1', text: 'Daintree Ecolodge' },\n { value: 'fbbb57ce-6076-4438-aa35-6914e4863729', text: 'Mt Mulligan Lodge' },\n { value: '7c26c3f4-09cc-414d-8ed2-aceec23dd47c', text: 'Orpheus Island Lodge' },\n { value: '7cef9d36-7fa1-4049-b9a2-9bc60a4bba6f', text: 'Glendhu Bay Holiday Park' },\n { value: 'ab9fe300-8be0-46c2-8fa5-7998439d7ca4', text: 'Wanaka Holiday Park' },\n { value: '0f683d3f-b997-4d00-9601-69ed1d7f826e', text: 'Arrowtown Holiday Park' },\n { value: '1e79858b-b761-4b0f-9da2-1b9ce85a4e9c', text: 'Queenstown Holiday Park' },\n];\n\ninterface IThemeSelectOption {\n text: string;\n value: RoomstayTheme;\n}\n\nconst availableFeatures: { feature: Feature; label: string }[] = [\n {\n feature: E164PhoneNumberFieldFeature,\n\n label: 'Phone number input in E164 format?',\n },\n {\n feature: ConfirmationVerifyFeature,\n label: 'Show Confirmation Checkbox on checkout?',\n },\n {\n feature: ShowIATANumberOnCheckoutFeature,\n label: 'Show IATA number input field on checkout?',\n },\n {\n feature: RoomUpsellFeature,\n label: 'Enable Room Upsell on checkout?',\n },\n {\n feature: InlineAddonStepFeature,\n label: 'Enable Inline Addon Step?',\n },\n {\n feature: MemberPortalFeature,\n label: 'Enable Member Portal?',\n },\n {\n feature: FullPageEngineSmallSpacingFeature,\n label: 'Reduce the size of the spacing on booking engine steps',\n },\n {\n feature: ModifyBookingFeature,\n label: 'Enable Modify Booking?',\n },\n];\n\nconst availableThemes: IThemeSelectOption[] = [\n { text: 'Medium', value: RoomstayTheme.Medium },\n { text: 'Light', value: RoomstayTheme.Light },\n];\n\nexport const TestPicker = () => {\n const [, setInc] = useState(0);\n\n const [isModalOpen, setIsModalOpen] = useState(false);\n\n const updateQueryParameters = useUpdateQueryParameters();\n const query = useQuery();\n\n const onChangeEngine = (value: string) => {\n query.set('engine', value);\n updateQueryParameters({\n engine: value,\n });\n setIsModalOpen(false);\n };\n\n const onModalClose = () => {\n setIsModalOpen(false);\n };\n\n const onTriggerClick = () => {\n setIsModalOpen((open) => !open);\n };\n\n const onThemeChanged = (theme: RoomstayTheme) => {\n RoomstayThemeEngine.ThemeType = theme;\n const containers = document.querySelectorAll('.roomstay-booking-container');\n\n for (const container of containers) {\n const isMedTheme = theme === RoomstayTheme.Medium;\n const isLightTheme = theme === RoomstayTheme.Light;\n\n const contClassList = container.classList;\n\n contClassList.toggle('--theme-medium', isMedTheme);\n contClassList.toggle('--theme-light', isLightTheme);\n }\n refresh();\n };\n\n /**\n * Reason for this is if we make global changes, state doesn't update 👀\n */\n const refresh = () => {\n setInc((i) => i + 1);\n try {\n FullPageBookingEngineElementEvents.reload();\n } catch (ex) {\n console.error(ex);\n }\n };\n\n const [cognitoUser, setCognitoUser] = useState<CognitoUser | any>(null);\n\n const getUser = async () => {\n const Auth = await getAuth();\n Auth.currentAuthenticatedUser()\n .then((user) => {\n setCognitoUser(user);\n })\n .catch(() => {\n setCognitoUser(null);\n });\n };\n\n useEffect(() => {\n let cancelled = false;\n getUser();\n return () => {\n cancelled = true;\n };\n }, [isModalOpen]);\n\n useEffect(() => {\n if (!query.get('engine')) {\n onChangeEngine(engines[0].value);\n }\n\n const provider = new LocalStorageProvider();\n provider.read<{ [name: string]: boolean }>('SavedFeatures').then((stateFeatureMap) => {\n availableFeatures.forEach(({ feature }) => {\n if (stateFeatureMap?.[feature.getName()]) {\n FeatureProvider.load(feature);\n } else {\n FeatureProvider.unLoad(feature);\n }\n });\n });\n }, []);\n\n const updateSavedFeatures = () => {\n const featureMap: { [name: string]: boolean } = {};\n\n availableFeatures.forEach(({ feature }) => {\n featureMap[feature.getName()] = feature.isActive();\n });\n\n const provider = new LocalStorageProvider();\n provider.write('SavedFeatures', featureMap);\n\n console.log('saved features');\n };\n\n const onHotelChanged = (value: string) => {\n query.set('hotel', value);\n updateQueryParameters({\n hotel: value,\n });\n window.location.reload();\n };\n\n return (\n <>\n <div className={styles.powerToggle} onClick={onTriggerClick}>\n <img src=\"https://clients.app.roomstay.io/assets/roomstay-logo.png\" />\n </div>\n <SimpleModal open={isModalOpen} onClose={onModalClose} title=\"Development Control Panel\">\n <div className={styles.engineControlBody}>\n <div className=\"row\">\n <div className=\"col-md-6\">\n <div className=\"u-marg-bottom--heavy\">\n <div className=\"u-marg-bottom--light\">\n <Headline bold>Engine Feature</Headline>\n </div>\n <div>\n {availableFeatures.map((aF, index) => {\n const onFeatureChange = (state: React.ChangeEvent<HTMLInputElement>) => {\n if (state.target.checked) {\n FeatureProvider.load(aF.feature.getName());\n } else {\n FeatureProvider.unLoad(aF.feature.getName());\n }\n\n refresh();\n updateSavedFeatures();\n };\n\n return <Checkbox key={index} label={aF.label} checked={aF.feature.isActive()} onChange={onFeatureChange} />;\n })}\n </div>\n </div>\n </div>\n <div className=\"col-md-6\">\n <div className=\"u-marg-bottom--heavy\">\n <div className=\"u-marg-bottom--light\">\n <Headline bold>Engine Type:</Headline>\n </div>\n <Select<IDefaultSelectOption, 'value'>\n nativeOnMobile\n options={engines}\n value={query.get('engine') as string}\n onChange={onChangeEngine}\n keyName=\"value\"\n labelName=\"text\"\n />\n </div>\n <div className=\"u-marg-bottom--heavy\">\n <div className=\"u-marg-bottom--light\">\n <Headline bold>Selected Hotel:</Headline>\n </div>\n <Select<IDefaultSelectOption, 'value'>\n nativeOnMobile\n options={hotels}\n value={(query.get('hotel') as string) ?? rsCompany.hotels[0].hotelID}\n onChange={onHotelChanged}\n keyName=\"value\"\n labelName=\"text\"\n />\n </div>\n </div>\n </div>\n\n <div className=\"u-marg-bottom--light\">\n <Headline bold>Engine Theme</Headline>\n </div>\n <div className=\"u-marg-bottom--heavy\">\n <InputSelect<IThemeSelectOption, 'value'>\n options={availableThemes}\n value={RoomstayThemeEngine.ThemeType}\n onChange={onThemeChanged}\n keyName=\"value\"\n labelName=\"text\"\n />\n </div>\n </div>\n </SimpleModal>\n </>\n );\n};\n"]}
1
+ {"version":3,"file":"TestPicker.js","sourceRoot":"/","sources":["tests/offline/entry/components/TestPicker.tsx"],"names":[],"mappings":"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","sourcesContent":["import styles from './TestPicker.module.scss';\nimport React, { useEffect, useState } from 'react';\nimport { CognitoUser } from '@aws-amplify/auth';\n\nimport SimpleModal from '@/components/generic/modal/SimpleModal';\nimport {\n Checkbox,\n ConfirmationVerifyFeature,\n E164PhoneNumberFieldFeature,\n FeatureProvider,\n Headline,\n InlineAddonStepFeature,\n RoomstayTheme,\n RoomstayThemeEngine,\n RoomUpsellFeature,\n ShowIATANumberOnCheckoutFeature,\n FullPageEngineSmallSpacingFeature,\n InputSelect,\n} from 'index';\nimport { Feature } from '@/providers/feature/Feature';\nimport { IDefaultSelectOption, Select } from '@/components/generic/Select/Select';\nimport { getAuth } from '@/util/AsyncAuth';\nimport { LocalStorageProvider } from '@/providers/storage/LocalStorageProvider';\nimport { useUpdateQueryParameters } from '@/hooks/UpdateQueryParameters';\nimport { useQuery } from '@/hooks/Query';\nimport MemberPortalFeature from '@/providers/feature/MemberPortalFeature';\nimport { FullPageBookingEngineElementEvents } from '@/engines/FullPageBookingEngine/FullPageBookingEngineElementEvents';\nimport ModifyBookingFeature from '@/providers/feature/ModifyBookingFeature';\n\nconst engines = [\n { value: 'fp', text: 'Full Page' },\n { value: 'in', text: 'Inline Mini Wizard' },\n { value: 'rc', text: 'Recent Searches' },\n { value: 'bw', text: 'Booking Wizard' },\n { value: 'mp', text: 'Member Portal' },\n];\n\ninterface IThemeSelectOption {\n text: string;\n value: RoomstayTheme;\n}\n\nconst availableFeatures: { feature: Feature; label: string }[] = [\n {\n feature: E164PhoneNumberFieldFeature,\n\n label: 'Phone number input in E164 format?',\n },\n {\n feature: ConfirmationVerifyFeature,\n label: 'Show Confirmation Checkbox on checkout?',\n },\n {\n feature: ShowIATANumberOnCheckoutFeature,\n label: 'Show IATA number input field on checkout?',\n },\n {\n feature: RoomUpsellFeature,\n label: 'Enable Room Upsell on checkout?',\n },\n {\n feature: InlineAddonStepFeature,\n label: 'Enable Inline Addon Step?',\n },\n {\n feature: MemberPortalFeature,\n label: 'Enable Member Portal?',\n },\n {\n feature: FullPageEngineSmallSpacingFeature,\n label: 'Reduce the size of the spacing on booking engine steps',\n },\n {\n feature: ModifyBookingFeature,\n label: 'Enable Modify Booking?',\n },\n];\n\nconst availableThemes: IThemeSelectOption[] = [\n { text: 'Medium', value: RoomstayTheme.Medium },\n { text: 'Light', value: RoomstayTheme.Light },\n];\n\nexport const TestPicker = () => {\n const [, setInc] = useState(0);\n\n const [isModalOpen, setIsModalOpen] = useState(false);\n\n const updateQueryParameters = useUpdateQueryParameters();\n const query = useQuery();\n\n const onChangeEngine = (value: string) => {\n query.set('engine', value);\n updateQueryParameters({\n engine: value,\n });\n setIsModalOpen(false);\n };\n\n const onModalClose = () => {\n setIsModalOpen(false);\n };\n\n const onTriggerClick = () => {\n setIsModalOpen((open) => !open);\n };\n\n const onThemeChanged = (theme: RoomstayTheme) => {\n RoomstayThemeEngine.ThemeType = theme;\n const containers = document.querySelectorAll('.roomstay-booking-container');\n\n for (const container of containers) {\n const isMedTheme = theme === RoomstayTheme.Medium;\n const isLightTheme = theme === RoomstayTheme.Light;\n\n const contClassList = container.classList;\n\n contClassList.toggle('--theme-medium', isMedTheme);\n contClassList.toggle('--theme-light', isLightTheme);\n }\n refresh();\n };\n\n /**\n * Reason for this is if we make global changes, state doesn't update 👀\n */\n const refresh = () => {\n setInc((i) => i + 1);\n try {\n FullPageBookingEngineElementEvents.reload();\n } catch (ex) {\n console.error(ex);\n }\n };\n\n const [cognitoUser, setCognitoUser] = useState<CognitoUser | any>(null);\n\n const getUser = async () => {\n const Auth = await getAuth();\n Auth.currentAuthenticatedUser()\n .then((user) => {\n setCognitoUser(user);\n })\n .catch(() => {\n setCognitoUser(null);\n });\n };\n\n useEffect(() => {\n let cancelled = false;\n getUser();\n return () => {\n cancelled = true;\n };\n }, [isModalOpen]);\n\n useEffect(() => {\n if (!query.get('engine')) {\n onChangeEngine(engines[0].value);\n }\n\n const provider = new LocalStorageProvider();\n provider.read<{ [name: string]: boolean }>('SavedFeatures').then((stateFeatureMap) => {\n availableFeatures.forEach(({ feature }) => {\n if (stateFeatureMap?.[feature.getName()]) {\n FeatureProvider.load(feature);\n } else {\n FeatureProvider.unLoad(feature);\n }\n });\n });\n }, []);\n\n const updateSavedFeatures = () => {\n const featureMap: { [name: string]: boolean } = {};\n\n availableFeatures.forEach(({ feature }) => {\n featureMap[feature.getName()] = feature.isActive();\n });\n\n const provider = new LocalStorageProvider();\n provider.write('SavedFeatures', featureMap);\n\n console.log('saved features');\n };\n\n return (\n <>\n <div className={styles.powerToggle} onClick={onTriggerClick}></div>\n <SimpleModal open={isModalOpen} onClose={onModalClose} title=\"Development Control Panel\">\n <div className={styles.engineControlBody}>\n <div className=\"row\">\n <div className=\"col-md-6\">\n <div className=\"u-marg-bottom--heavy\">\n <div className=\"u-marg-bottom--light\">\n <Headline bold>Engine Feature</Headline>\n </div>\n <div>\n {availableFeatures.map((aF, index) => {\n const onFeatureChange = (state: React.ChangeEvent<HTMLInputElement>) => {\n if (state.target.checked) {\n FeatureProvider.load(aF.feature.getName());\n } else {\n FeatureProvider.unLoad(aF.feature.getName());\n }\n\n refresh();\n updateSavedFeatures();\n };\n\n return <Checkbox key={index} label={aF.label} checked={aF.feature.isActive()} onChange={onFeatureChange} />;\n })}\n </div>\n </div>\n </div>\n <div className=\"col-md-6\">\n <div className=\"u-marg-bottom--heavy\">\n <div className=\"u-marg-bottom--light\">\n <Headline bold>Engine Type:</Headline>\n </div>\n <Select<IDefaultSelectOption, 'value'>\n nativeOnMobile\n options={engines}\n value={query.get('engine') as string}\n onChange={onChangeEngine}\n keyName=\"value\"\n labelName=\"text\"\n />\n </div>\n </div>\n </div>\n\n <div className=\"u-marg-bottom--light\">\n <Headline bold>Engine Theme</Headline>\n </div>\n <div className=\"u-marg-bottom--heavy\">\n <InputSelect<IThemeSelectOption, 'value'>\n options={availableThemes}\n value={RoomstayThemeEngine.ThemeType}\n onChange={onThemeChanged}\n keyName=\"value\"\n labelName=\"text\"\n />\n </div>\n </div>\n </SimpleModal>\n </>\n );\n};\n"]}
@@ -31,7 +31,7 @@ const react_1 = __importStar(require("react"));
31
31
  const MemberPortalWidget_1 = require("../../../../src/engines/MemberPortalWidget/MemberPortalWidget");
32
32
  const FeatureProvider_1 = __importDefault(require("../../../../src/providers/FeatureProvider"));
33
33
  const RoomstayThemeEngine_1 = __importDefault(require("../../../../src/providers/RoomstayThemeEngine"));
34
- const OfflineEngineDefaults_1 = require("../OfflineEngineDefaults");
34
+ const RSCompany_1 = require("../RSCompany");
35
35
  const memberPortalWidgetRenderer_module_scss_1 = __importDefault(require("./memberPortalWidgetRenderer.module.scss"));
36
36
  const buttonPlacements = ['center', 'top-left', 'top-center', 'top-right', 'bottom-left', 'bottom-center', 'bottom-right', 'right-center', 'left-center'];
37
37
  const MemberPortalWidgetRenderer = () => {
@@ -41,7 +41,7 @@ const MemberPortalWidgetRenderer = () => {
41
41
  if (recent.current) {
42
42
  const memberPortalWidget = new MemberPortalWidget_1.MemberPortalWidget(recent.current);
43
43
  memberPortalWidget.setConfig({
44
- company: { colors: OfflineEngineDefaults_1.rsCompany.colors, companyShort: OfflineEngineDefaults_1.rsCompany.companyShort, hotel: OfflineEngineDefaults_1.rsCompany.hotels[0], checkoutLink: '/checkout' },
44
+ company: { colors: RSCompany_1.rsCompany.colors, companyShort: RSCompany_1.rsCompany.companyShort, hotel: RSCompany_1.rsCompany.hotels[0], checkoutLink: '/checkout' },
45
45
  overlayPlacement: 'bottom-end',
46
46
  fallbackPlacements: 'auto',
47
47
  onSignedIn: console.log,
@@ -1 +1 @@
1
- {"version":3,"file":"memberPortalWidgetRenderer.js","sourceRoot":"/","sources":["tests/offline/entry/engineRenderer/memberPortalWidgetRenderer.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA2D;AAE3D,wFAAqF;AACrF,kFAA0D;AAC1D,0FAAkE;AAElE,oEAAqD;AACrD,sHAA8D;AAI9D,MAAM,gBAAgB,GAA2B,CAAC,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;AAE3K,MAAM,0BAA0B,GAAG,GAAG,EAAE;IAC3C,MAAM,MAAM,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAE5C,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,EAAkB,QAAQ,CAAC,CAAC;IAElF,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,IAAI,MAAM,CAAC,OAAO,EAAE;YAChB,MAAM,kBAAkB,GAAG,IAAI,uCAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAClE,kBAAkB,CAAC,SAAS,CAAC;gBACzB,OAAO,EAAE,EAAE,MAAM,EAAE,iCAAS,CAAC,MAAM,EAAE,YAAY,EAAE,iCAAS,CAAC,YAAY,EAAE,KAAK,EAAE,iCAAS,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,YAAY,EAAE,WAAW,EAAE;gBAC3I,gBAAgB,EAAE,YAAY;gBAC9B,kBAAkB,EAAE,MAAM;gBAC1B,UAAU,EAAE,OAAO,CAAC,GAAG;gBACvB,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;aAC/C,CAAC,CAAC;YACH,6BAAmB,CAAC,cAAc,EAAE,CAAC;YACrC,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAE3B,yBAAe,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;SAC/C;IACL,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,MAAM,uBAAuB,GAAG,CAAC,SAA0B,EAAE,EAAE;;QAC3D,MAAA,MAAM,CAAC,OAAO,0CAAE,SAAS,CAAC,MAAM,CAAC,gDAAM,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1D,MAAA,MAAM,CAAC,OAAO,0CAAE,SAAS,CAAC,GAAG,CAAC,gDAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QACjD,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC,CAAC;IAEF,OAAO,CACH,uCAAK,SAAS,EAAE,gDAAM,CAAC,SAAS;QAC5B,uCAAK,SAAS,EAAE,gDAAM,CAAC,iBAAiB;YACpC,yCAAO,OAAO,EAAC,kBAAkB,yBAA2B;YAC5D,0CAAQ,EAAE,EAAC,kBAAkB,EAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAwB,CAAC,IAC5H,gBAAgB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CACjC,0CAAQ,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,IACnC,SAAS,CACL,CACZ,CAAC,CACG,CACP;QACN,uCAAK,SAAS,EAAE,GAAG,gDAAM,CAAC,eAAe,IAAI,gDAAM,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAI,CAC3E,CACT,CAAC;AACN,CAAC,CAAC;AA3CW,QAAA,0BAA0B,8BA2CrC","sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\n\nimport { MemberPortalWidget } from '@/engines/MemberPortalWidget/MemberPortalWidget';\nimport FeatureProvider from '@/providers/FeatureProvider';\nimport RoomstayThemeEngine from '@/providers/RoomstayThemeEngine';\n\nimport { rsCompany } from '../OfflineEngineDefaults';\nimport styles from './memberPortalWidgetRenderer.module.scss';\nimport { Hotel } from '@/index';\n\ntype ButtonPlacement = 'center' | 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' | 'right-center' | 'left-center';\nconst buttonPlacements: Array<ButtonPlacement> = ['center', 'top-left', 'top-center', 'top-right', 'bottom-left', 'bottom-center', 'bottom-right', 'right-center', 'left-center'];\n\nexport const MemberPortalWidgetRenderer = () => {\n const recent = useRef<HTMLDivElement>(null);\n\n const [buttonPlacement, setButtonPlacement] = useState<ButtonPlacement>('center');\n\n useEffect(() => {\n if (recent.current) {\n const memberPortalWidget = new MemberPortalWidget(recent.current);\n memberPortalWidget.setConfig({\n company: { colors: rsCompany.colors, companyShort: rsCompany.companyShort, hotel: rsCompany.hotels[0] as Hotel, checkoutLink: '/checkout' },\n overlayPlacement: 'bottom-end',\n fallbackPlacements: 'auto',\n onSignedIn: console.log,\n onSignedOut: () => console.log('Signed out'),\n });\n RoomstayThemeEngine.registerStyles();\n memberPortalWidget.start();\n\n FeatureProvider.load('MemberPortalFeature');\n }\n }, [recent]);\n\n const onButtonPlacementChange = (placement: ButtonPlacement) => {\n recent.current?.classList.remove(styles[buttonPlacement]);\n recent.current?.classList.add(styles[placement]);\n setButtonPlacement(placement);\n };\n\n return (\n <div className={styles.container}>\n <div className={styles.placementSelector}>\n <label htmlFor=\"placement-select\">Button Placement: </label>\n <select id=\"placement-select\" value={buttonPlacement} onChange={(e) => onButtonPlacementChange(e.target.value as ButtonPlacement)}>\n {buttonPlacements.map((placement) => (\n <option key={placement} value={placement}>\n {placement}\n </option>\n ))}\n </select>\n </div>\n <div className={`${styles.buttonContainer} ${styles.center}`} ref={recent} />\n </div>\n );\n};\n"]}
1
+ {"version":3,"file":"memberPortalWidgetRenderer.js","sourceRoot":"/","sources":["tests/offline/entry/engineRenderer/memberPortalWidgetRenderer.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA2D;AAE3D,wFAAqF;AACrF,kFAA0D;AAC1D,0FAAkE;AAElE,4CAAyC;AACzC,sHAA8D;AAI9D,MAAM,gBAAgB,GAA2B,CAAC,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;AAE3K,MAAM,0BAA0B,GAAG,GAAG,EAAE;IAC3C,MAAM,MAAM,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAE5C,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,EAAkB,QAAQ,CAAC,CAAC;IAElF,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,IAAI,MAAM,CAAC,OAAO,EAAE;YAChB,MAAM,kBAAkB,GAAG,IAAI,uCAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAClE,kBAAkB,CAAC,SAAS,CAAC;gBACzB,OAAO,EAAE,EAAE,MAAM,EAAE,qBAAS,CAAC,MAAM,EAAE,YAAY,EAAE,qBAAS,CAAC,YAAY,EAAE,KAAK,EAAE,qBAAS,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,YAAY,EAAE,WAAW,EAAE;gBAC3I,gBAAgB,EAAE,YAAY;gBAC9B,kBAAkB,EAAE,MAAM;gBAC1B,UAAU,EAAE,OAAO,CAAC,GAAG;gBACvB,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;aAC/C,CAAC,CAAC;YACH,6BAAmB,CAAC,cAAc,EAAE,CAAC;YACrC,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAE3B,yBAAe,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;SAC/C;IACL,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,MAAM,uBAAuB,GAAG,CAAC,SAA0B,EAAE,EAAE;;QAC3D,MAAA,MAAM,CAAC,OAAO,0CAAE,SAAS,CAAC,MAAM,CAAC,gDAAM,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1D,MAAA,MAAM,CAAC,OAAO,0CAAE,SAAS,CAAC,GAAG,CAAC,gDAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QACjD,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC,CAAC;IAEF,OAAO,CACH,uCAAK,SAAS,EAAE,gDAAM,CAAC,SAAS;QAC5B,uCAAK,SAAS,EAAE,gDAAM,CAAC,iBAAiB;YACpC,yCAAO,OAAO,EAAC,kBAAkB,yBAA2B;YAC5D,0CAAQ,EAAE,EAAC,kBAAkB,EAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAwB,CAAC,IAC5H,gBAAgB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CACjC,0CAAQ,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,IACnC,SAAS,CACL,CACZ,CAAC,CACG,CACP;QACN,uCAAK,SAAS,EAAE,GAAG,gDAAM,CAAC,eAAe,IAAI,gDAAM,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAI,CAC3E,CACT,CAAC;AACN,CAAC,CAAC;AA3CW,QAAA,0BAA0B,8BA2CrC","sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\n\nimport { MemberPortalWidget } from '@/engines/MemberPortalWidget/MemberPortalWidget';\nimport FeatureProvider from '@/providers/FeatureProvider';\nimport RoomstayThemeEngine from '@/providers/RoomstayThemeEngine';\n\nimport { rsCompany } from '../RSCompany';\nimport styles from './memberPortalWidgetRenderer.module.scss';\nimport { Hotel } from '@/index';\n\ntype ButtonPlacement = 'center' | 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' | 'right-center' | 'left-center';\nconst buttonPlacements: Array<ButtonPlacement> = ['center', 'top-left', 'top-center', 'top-right', 'bottom-left', 'bottom-center', 'bottom-right', 'right-center', 'left-center'];\n\nexport const MemberPortalWidgetRenderer = () => {\n const recent = useRef<HTMLDivElement>(null);\n\n const [buttonPlacement, setButtonPlacement] = useState<ButtonPlacement>('center');\n\n useEffect(() => {\n if (recent.current) {\n const memberPortalWidget = new MemberPortalWidget(recent.current);\n memberPortalWidget.setConfig({\n company: { colors: rsCompany.colors, companyShort: rsCompany.companyShort, hotel: rsCompany.hotels[0] as Hotel, checkoutLink: '/checkout' },\n overlayPlacement: 'bottom-end',\n fallbackPlacements: 'auto',\n onSignedIn: console.log,\n onSignedOut: () => console.log('Signed out'),\n });\n RoomstayThemeEngine.registerStyles();\n memberPortalWidget.start();\n\n FeatureProvider.load('MemberPortalFeature');\n }\n }, [recent]);\n\n const onButtonPlacementChange = (placement: ButtonPlacement) => {\n recent.current?.classList.remove(styles[buttonPlacement]);\n recent.current?.classList.add(styles[placement]);\n setButtonPlacement(placement);\n };\n\n return (\n <div className={styles.container}>\n <div className={styles.placementSelector}>\n <label htmlFor=\"placement-select\">Button Placement: </label>\n <select id=\"placement-select\" value={buttonPlacement} onChange={(e) => onButtonPlacementChange(e.target.value as ButtonPlacement)}>\n {buttonPlacements.map((placement) => (\n <option key={placement} value={placement}>\n {placement}\n </option>\n ))}\n </select>\n </div>\n <div className={`${styles.buttonContainer} ${styles.center}`} ref={recent} />\n </div>\n );\n};\n"]}