@renaissancerentals/renaissance-component 12.4.24 → 13.0.4

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 (292) hide show
  1. package/lib/announcement/Banner.d.ts +1 -1
  2. package/lib/announcement/assets/Banner.css +65 -0
  3. package/lib/application/ApplicationCompletion.d.ts +1 -1
  4. package/lib/application/ApplicationModal.d.ts +1 -1
  5. package/lib/application/ApplicationSection.d.ts +1 -1
  6. package/lib/application/assets/ApplicationCompletion.css +44 -0
  7. package/lib/application/assets/{ApplicationModal.scss → ApplicationModal.css} +3 -5
  8. package/lib/application/assets/{ApplicationSection.scss → ApplicationSection.css} +12 -11
  9. package/lib/asset/AssetModal.d.ts +1 -1
  10. package/lib/asset/VideoModal.d.ts +1 -1
  11. package/lib/asset/assets/{AssetModal.scss → AssetModal.css} +1 -3
  12. package/lib/asset/assets/{VideoModal.scss → VideoModal.css} +1 -3
  13. package/lib/assets/App.css +3 -0
  14. package/lib/assets/form.css +89 -0
  15. package/lib/assets/variables.css +49 -0
  16. package/lib/banner/SubmissionRequestBanner.d.ts +1 -1
  17. package/lib/banner/assets/{SubmissionRequestBanner.scss → SubmissionRequestBanner.css} +0 -2
  18. package/lib/card/Card.d.ts +1 -1
  19. package/lib/card/assets/Card.css +45 -0
  20. package/lib/contact/ContactModal.d.ts +1 -1
  21. package/lib/contact/ContactSection.d.ts +1 -1
  22. package/lib/contact/ContactSectionSkeleton.d.ts +1 -1
  23. package/lib/contact/assets/{ContactModal.scss → ContactModal.css} +2 -4
  24. package/lib/contact/assets/{ContactSection.scss → ContactSection.css} +14 -12
  25. package/lib/contact/assets/{ContactSkeleton.scss → ContactSkeleton.css} +1 -1
  26. package/lib/faq/FaqsCard.d.ts +1 -1
  27. package/lib/faq/FaqsSection.d.ts +1 -1
  28. package/lib/faq/PropertyFaqSection.d.ts +1 -1
  29. package/lib/faq/ResidentFaqSection.d.ts +1 -1
  30. package/lib/faq/assets/{FaqsCard.scss → FaqsCard.css} +0 -2
  31. package/lib/faq/assets/{FaqsSection.scss → FaqsSection.css} +1 -3
  32. package/lib/faq/assets/{PropertyFaqSection.scss → PropertyFaqSection.css} +0 -2
  33. package/lib/faq/assets/{ResidentFaqSection.scss → ResidentFaqSection.css} +1 -3
  34. package/lib/feature/FeatureSection.d.ts +1 -1
  35. package/lib/feature/assets/{FeatureSection.scss → FeatureSection.css} +7 -6
  36. package/lib/floorplan/card/FloorplanCard.d.ts +1 -1
  37. package/lib/floorplan/card/FloorplanCardSkeleton.d.ts +1 -1
  38. package/lib/floorplan/card/FloorplanCardSlider.d.ts +1 -1
  39. package/lib/floorplan/card/FloorplanPrice.d.ts +1 -1
  40. package/lib/floorplan/card/SimilarFloorplanCard.d.ts +1 -1
  41. package/lib/floorplan/card/TestimonialsCard.d.ts +1 -1
  42. package/lib/floorplan/card/assets/{FloorplanCard.scss → FloorplanCard.css} +36 -35
  43. package/lib/floorplan/card/assets/{FloorplanCardSlider.scss → FloorplanCardSlider.css} +4 -6
  44. package/lib/floorplan/card/assets/{FloorplanFaqsCard.scss → FloorplanFaqsCard.css} +1 -3
  45. package/lib/floorplan/card/assets/FloorplanPrice.css +35 -0
  46. package/lib/floorplan/card/assets/{SimilarFloorplanCard.scss → SimilarFloorplanCard.css} +2 -4
  47. package/lib/floorplan/card/assets/{TestimonialsCard.scss → TestimonialsCard.css} +2 -4
  48. package/lib/floorplan/filter/FloorplanDropDown.d.ts +1 -1
  49. package/lib/floorplan/filter/assets/{FloorplanDropDown.scss → FloorplanDropDown.css} +0 -2
  50. package/lib/floorplan/section/FloorplanHero.d.ts +1 -1
  51. package/lib/floorplan/section/FloorplanSection.d.ts +1 -1
  52. package/lib/floorplan/section/FloorplanSectionSkeleton.d.ts +1 -1
  53. package/lib/floorplan/section/FloorplansHeader.d.ts +2 -2
  54. package/lib/floorplan/section/FloorplansHeaderSekeleton.d.ts +2 -2
  55. package/lib/floorplan/section/FloorplansSection.d.ts +1 -1
  56. package/lib/floorplan/section/HeroBadgeStats.d.ts +1 -1
  57. package/lib/floorplan/section/assets/BadgeStats.css +3 -0
  58. package/lib/floorplan/section/assets/{FloorplanHero.scss → FloorplanHero.css} +21 -20
  59. package/lib/floorplan/section/assets/{FloorplanSection.scss → FloorplanSection.css} +12 -12
  60. package/lib/{unit/section/assets/UnitsHeader.scss → floorplan/section/assets/FloorplansHeader.css} +8 -7
  61. package/lib/floorplan/section/assets/{FloorplansSection.scss → FloorplansSection.css} +0 -2
  62. package/lib/floorplan/section/assets/{HeroBadgeStats.scss → HeroBadgeStats.css} +5 -7
  63. package/lib/footer/Footer.d.ts +1 -1
  64. package/lib/footer/assets/{Footer.scss → Footer.css} +13 -12
  65. package/lib/gallery/DriveGallery.d.ts +1 -1
  66. package/lib/gallery/Gallery.d.ts +1 -1
  67. package/lib/gallery/GalleryModal.d.ts +1 -1
  68. package/lib/gallery/GridGallery.d.ts +1 -1
  69. package/lib/gallery/GridGalleryCover.d.ts +1 -1
  70. package/lib/gallery/GridGalleryMobile.d.ts +1 -1
  71. package/lib/gallery/GridGallerySkeleton.d.ts +1 -1
  72. package/lib/gallery/HeroImageCard.d.ts +1 -1
  73. package/lib/gallery/ImageCard.d.ts +1 -1
  74. package/lib/gallery/ImageCardSkeleton.d.ts +1 -1
  75. package/lib/gallery/assets/{DriveGallery.scss → DriveGallery.css} +0 -2
  76. package/lib/gallery/assets/{Gallery.scss → Gallery.css} +12 -14
  77. package/lib/gallery/assets/{GalleryModal.scss → GalleryModal.css} +3 -5
  78. package/lib/gallery/assets/{GridGallery.scss → GridGallery.css} +3 -5
  79. package/lib/gallery/assets/{GridGalleryMobile.scss → GridGalleryMobile.css} +3 -5
  80. package/lib/gallery/assets/{HeroImageCard.scss → HeroImageCard.css} +1 -3
  81. package/lib/gallery/assets/{ImageCard.scss → ImageCard.css} +1 -3
  82. package/lib/header/InfoHeader.d.ts +1 -1
  83. package/lib/header/assets/InfoHeader.css +29 -0
  84. package/lib/home-page-special/HomePageSpecialCard.d.ts +1 -1
  85. package/lib/home-page-special/HomePageSpecialModal.d.ts +1 -1
  86. package/lib/home-page-special/HomePageSpecialSection.d.ts +1 -1
  87. package/lib/home-page-special/assets/{HomePageSpecialCard.scss → HomePageSpecialCard.css} +0 -2
  88. package/lib/home-page-special/assets/{HomePageSpecialModal.scss → HomePageSpecialModal.css} +3 -5
  89. package/lib/home-page-special/assets/{HomePageSpecialSection.scss → HomePageSpecialSection.css} +0 -2
  90. package/lib/index.cjs.js +112 -0
  91. package/lib/index.css +10 -0
  92. package/lib/index.d.ts +1 -0
  93. package/lib/index.es.js +21817 -0
  94. package/lib/index.umd.js +112 -0
  95. package/lib/map/MapSection.d.ts +1 -1
  96. package/lib/map/assets/{Map.scss → Map.css} +0 -2
  97. package/lib/property/LeaseOfficeSkeleton.d.ts +1 -1
  98. package/lib/property/PropertyLocation.d.ts +1 -1
  99. package/lib/property/PropertyLocationSkeleton.d.ts +1 -1
  100. package/lib/property/assets/{PropertyLocation.scss → PropertyLocation.css} +3 -5
  101. package/lib/property/assets/{PropertyLocationSkeleton.scss → PropertyLocationSkeleton.css} +2 -4
  102. package/lib/review/ReviewSection.d.ts +1 -1
  103. package/lib/review/assets/{ReviewSection.scss → ReviewSection.css} +7 -9
  104. package/lib/short-term/Hostaway.d.ts +1 -1
  105. package/lib/short-term/ShortTermFloorplanCard.d.ts +1 -1
  106. package/lib/short-term/ShortTermFloorplanHero.d.ts +1 -1
  107. package/lib/short-term/ShortTermFloorplanSection.d.ts +1 -1
  108. package/lib/short-term/ShortTermFloorplansHeader.d.ts +2 -2
  109. package/lib/short-term/ShortTermFloorplansSection.d.ts +1 -1
  110. package/lib/short-term/ShortTermPricingCard.d.ts +1 -1
  111. package/lib/short-term/assets/{Hostaway.scss → Hostaway.css} +16 -15
  112. package/lib/short-term/assets/{ShortTermFloorplanCard.scss → ShortTermFloorplanCard.css} +20 -19
  113. package/lib/short-term/assets/{ShortTermFloorplanHero.scss → ShortTermFloorplanHero.css} +21 -20
  114. package/lib/short-term/assets/{ShortTermFloorplanSection.scss → ShortTermFloorplanSection.css} +17 -17
  115. package/lib/short-term/assets/{ShortTermFloorplansHeader.scss → ShortTermFloorplansHeader.css} +8 -7
  116. package/lib/short-term/assets/{ShortTermFloorplansSection.scss → ShortTermFloorplansSection.css} +0 -2
  117. package/lib/short-term/assets/{ShortTermPricingCard.scss → ShortTermPricingCard.css} +5 -7
  118. package/lib/special-offer/SpecialOfferBadge.d.ts +1 -1
  119. package/lib/special-offer/SpecialOfferButton.d.ts +1 -1
  120. package/lib/special-offer/assets/{SpecialOfferBadge.scss → SpecialOfferBadge.css} +3 -5
  121. package/lib/special-offer/assets/{SpecialOfferButton.scss → SpecialOfferButton.css} +2 -4
  122. package/lib/sublet/SubletCard.d.ts +1 -1
  123. package/lib/sublet/SubletImage.d.ts +1 -1
  124. package/lib/sublet/SubletMessageModal.d.ts +1 -1
  125. package/lib/sublet/SubletNotFound.d.ts +1 -1
  126. package/lib/sublet/SubletSection.d.ts +1 -1
  127. package/lib/sublet/SubletsSection.d.ts +1 -1
  128. package/lib/sublet/assets/{SubletCard.scss → SubletCard.css} +2 -4
  129. package/lib/sublet/assets/{SubletImage.scss → SubletImage.css} +2 -4
  130. package/lib/sublet/assets/{SubletMessageModal.scss → SubletMessageModal.css} +6 -8
  131. package/lib/sublet/assets/{SubletNotFound.scss → SubletNotFound.css} +0 -2
  132. package/lib/sublet/assets/{SubletSection.scss → SubletSection.css} +4 -6
  133. package/lib/sublet/assets/{SubletsSection.scss → SubletsSection.css} +1 -3
  134. package/lib/sublet/services/SubletService.d.ts +6 -2
  135. package/lib/summer-house/SummerHouseFeatures.d.ts +1 -1
  136. package/lib/summer-house/assets/{SummerHouseFeatures.scss → SummerHouseFeatures.css} +2 -4
  137. package/lib/summer-house/assets/{SummerHousePricing.scss → SummerHousePricing.css} +2 -4
  138. package/lib/team/TeamSection.d.ts +1 -1
  139. package/lib/team/assets/{Team.scss → Team.css} +0 -2
  140. package/lib/team/card/TeamCard.d.ts +1 -1
  141. package/lib/team/card/TeamCardSkeleton.d.ts +1 -1
  142. package/lib/team/card/assets/{TeamCard.scss → TeamCard.css} +6 -5
  143. package/lib/unit/card/UnitCard.d.ts +1 -1
  144. package/lib/unit/card/assets/{UnitCard.scss → UnitCard.css} +33 -32
  145. package/lib/unit/section/UnitHero.d.ts +1 -1
  146. package/lib/unit/section/UnitPrice.d.ts +1 -1
  147. package/lib/unit/section/UnitSection.d.ts +1 -1
  148. package/lib/unit/section/UnitsHeader.d.ts +1 -1
  149. package/lib/unit/section/UnitsSection.d.ts +1 -1
  150. package/lib/unit/section/assets/{UnitSection.scss → UnitSection.css} +12 -12
  151. package/lib/{floorplan/section/assets/FloorplansHeader.scss → unit/section/assets/UnitsHeader.css} +8 -7
  152. package/lib/unit/section/assets/{UnitsSection.scss → UnitsSection.css} +0 -2
  153. package/lib/video/Video.d.ts +1 -1
  154. package/lib/video/assets/{Video.scss → Video.css} +0 -2
  155. package/package.json +68 -72
  156. package/lib/announcement/Banner.js +0 -31
  157. package/lib/announcement/assets/Banner.scss +0 -65
  158. package/lib/application/ApplicationCompletion.js +0 -53
  159. package/lib/application/ApplicationModal.js +0 -38
  160. package/lib/application/ApplicationSection.js +0 -253
  161. package/lib/application/assets/ApplicationCompletion.scss +0 -44
  162. package/lib/application/data/RentalApplication.js +0 -15
  163. package/lib/application/service/ApplicationService.js +0 -13
  164. package/lib/asset/AssetModal.js +0 -42
  165. package/lib/asset/VideoModal.js +0 -48
  166. package/lib/asset/data/Asset.js +0 -6
  167. package/lib/asset/service/AssetService.js +0 -42
  168. package/lib/assets/App.scss +0 -96
  169. package/lib/assets/_variables.scss +0 -47
  170. package/lib/assets/form.scss +0 -90
  171. package/lib/banner/SubmissionRequestBanner.js +0 -16
  172. package/lib/captcha/data/CaptchaEnabledRequest.js +0 -6
  173. package/lib/card/Card.js +0 -26
  174. package/lib/card/assets/Card.scss +0 -44
  175. package/lib/contact/ContactModal.js +0 -42
  176. package/lib/contact/ContactSection.js +0 -345
  177. package/lib/contact/ContactSectionSkeleton.js +0 -33
  178. package/lib/contact/data/CommunityContact.js +0 -6
  179. package/lib/contact/data/Contact.js +0 -12
  180. package/lib/contact/data/ContactMessage.js +0 -24
  181. package/lib/contact/service/ContactService.js +0 -49
  182. package/lib/data/Calendar.js +0 -21
  183. package/lib/data/RenaissanceData.js +0 -16
  184. package/lib/data/SortField.js +0 -62
  185. package/lib/faq/FaqsCard.js +0 -26
  186. package/lib/faq/FaqsSection.js +0 -35
  187. package/lib/faq/PropertyFaqSection.js +0 -30
  188. package/lib/faq/ResidentFaqSection.js +0 -37
  189. package/lib/faq/data/Faq.js +0 -6
  190. package/lib/feature/FeatureSection.js +0 -19
  191. package/lib/floorplan/card/FloorplanCard.js +0 -148
  192. package/lib/floorplan/card/FloorplanCardSkeleton.js +0 -23
  193. package/lib/floorplan/card/FloorplanCardSlider.js +0 -45
  194. package/lib/floorplan/card/FloorplanPrice.js +0 -49
  195. package/lib/floorplan/card/SimilarFloorplanCard.js +0 -62
  196. package/lib/floorplan/card/TestimonialsCard.js +0 -25
  197. package/lib/floorplan/card/assets/FloorplanPrice.scss +0 -34
  198. package/lib/floorplan/data/Floorplan.js +0 -34
  199. package/lib/floorplan/data/FloorplanFilters.js +0 -6
  200. package/lib/floorplan/filter/FloorplanDropDown.js +0 -33
  201. package/lib/floorplan/section/FloorplanHero.js +0 -229
  202. package/lib/floorplan/section/FloorplanSection.js +0 -212
  203. package/lib/floorplan/section/FloorplanSectionSkeleton.js +0 -36
  204. package/lib/floorplan/section/FloorplansHeader.js +0 -214
  205. package/lib/floorplan/section/FloorplansHeaderSekeleton.js +0 -31
  206. package/lib/floorplan/section/FloorplansSection.js +0 -86
  207. package/lib/floorplan/section/HeroBadgeStats.js +0 -75
  208. package/lib/floorplan/section/assets/BadgeStats.scss +0 -5
  209. package/lib/floorplan/section/filter/Availability.js +0 -33
  210. package/lib/floorplan/section/filter/Bedroom.js +0 -32
  211. package/lib/floorplan/section/filter/Price.js +0 -36
  212. package/lib/floorplan/section/filter/Sort.js +0 -41
  213. package/lib/floorplan/section/filter/Style.js +0 -31
  214. package/lib/floorplan/service/FloorplanService.js +0 -290
  215. package/lib/footer/Footer.js +0 -98
  216. package/lib/gallery/DriveGallery.js +0 -67
  217. package/lib/gallery/Gallery.js +0 -116
  218. package/lib/gallery/GalleryModal.js +0 -74
  219. package/lib/gallery/GridGallery.js +0 -32
  220. package/lib/gallery/GridGalleryCover.js +0 -90
  221. package/lib/gallery/GridGalleryMobile.js +0 -88
  222. package/lib/gallery/GridGallerySkeleton.js +0 -19
  223. package/lib/gallery/HeroImageCard.js +0 -31
  224. package/lib/gallery/ImageCard.js +0 -28
  225. package/lib/gallery/ImageCardSkeleton.js +0 -22
  226. package/lib/gallery/VideoTours.js +0 -53
  227. package/lib/gallery/VirtualTour.js +0 -26
  228. package/lib/gallery/data/GalleryImage.js +0 -6
  229. package/lib/header/InfoHeader.js +0 -21
  230. package/lib/header/assets/InfoHeader.scss +0 -28
  231. package/lib/home-page-special/HomePageSpecialCard.js +0 -40
  232. package/lib/home-page-special/HomePageSpecialModal.js +0 -65
  233. package/lib/home-page-special/HomePageSpecialSection.js +0 -33
  234. package/lib/home-page-special/data/HomePageSpecial.js +0 -6
  235. package/lib/home-page-special/service/HomePageSpecialService.js +0 -24
  236. package/lib/index.js +0 -822
  237. package/lib/map/MapSection.js +0 -25
  238. package/lib/property/LeaseOfficeSkeleton.js +0 -17
  239. package/lib/property/PropertyLocation.js +0 -89
  240. package/lib/property/PropertyLocationSkeleton.js +0 -19
  241. package/lib/property/PropertyVideo.js +0 -21
  242. package/lib/property/data/Property.js +0 -36
  243. package/lib/property/service/PropertyService.js +0 -41
  244. package/lib/resident/data/Resident.js +0 -6
  245. package/lib/resident/service/ResidentService.js +0 -19
  246. package/lib/review/ReviewSection.js +0 -81
  247. package/lib/service/Api.js +0 -25
  248. package/lib/short-term/Hostaway.js +0 -63
  249. package/lib/short-term/ShortTermFloorplanCard.js +0 -112
  250. package/lib/short-term/ShortTermFloorplanHero.js +0 -231
  251. package/lib/short-term/ShortTermFloorplanSection.js +0 -135
  252. package/lib/short-term/ShortTermFloorplansHeader.js +0 -145
  253. package/lib/short-term/ShortTermFloorplansSection.js +0 -80
  254. package/lib/short-term/ShortTermPricingCard.js +0 -70
  255. package/lib/short-term/ShortTermSort.js +0 -41
  256. package/lib/short-term/ShortTermStyleFilter.js +0 -31
  257. package/lib/short-term/data/ShortTerm.js +0 -15
  258. package/lib/short-term/data/ShortTermFilters.js +0 -41
  259. package/lib/short-term/service/ShortTermService.js +0 -54
  260. package/lib/special-offer/SpecialOfferBadge.js +0 -24
  261. package/lib/special-offer/SpecialOfferButton.js +0 -30
  262. package/lib/sublet/SubletCard.js +0 -65
  263. package/lib/sublet/SubletImage.js +0 -59
  264. package/lib/sublet/SubletMessageModal.js +0 -120
  265. package/lib/sublet/SubletNotFound.js +0 -16
  266. package/lib/sublet/SubletSection.js +0 -447
  267. package/lib/sublet/SubletsSection.js +0 -41
  268. package/lib/sublet/data/Sublet.js +0 -28
  269. package/lib/sublet/data/SubletMessage.js +0 -6
  270. package/lib/sublet/services/SubletService.js +0 -52
  271. package/lib/summer-house/SummerHouseFeatures.js +0 -25
  272. package/lib/summer-house/data/SummerHouseAmenities.js +0 -8
  273. package/lib/team/TeamSection.js +0 -35
  274. package/lib/team/card/TeamCard.js +0 -38
  275. package/lib/team/card/TeamCardSkeleton.js +0 -25
  276. package/lib/team/data/TeamMember.js +0 -6
  277. package/lib/team/service/TeamService.js +0 -13
  278. package/lib/types/ga-gtag.d.js +0 -2
  279. package/lib/unit/card/UnitCard.js +0 -140
  280. package/lib/unit/data/Unit.js +0 -26
  281. package/lib/unit/data/UnitFilters.js +0 -6
  282. package/lib/unit/section/UnitHero.js +0 -234
  283. package/lib/unit/section/UnitPrice.js +0 -41
  284. package/lib/unit/section/UnitSection.js +0 -211
  285. package/lib/unit/section/UnitsHeader.js +0 -214
  286. package/lib/unit/section/UnitsSection.js +0 -87
  287. package/lib/unit/service/UnitService.js +0 -177
  288. package/lib/utils/PrettyPrintJson.js +0 -16
  289. package/lib/utils/Utils.js +0 -155
  290. package/lib/video/Video.js +0 -76
  291. package/lib/video/data/VideoAsset.js +0 -6
  292. /package/lib/heading/assets/{HeadingStory.scss → HeadingStory.css} +0 -0
@@ -1,234 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.UnitHero = void 0;
7
- var _react = _interopRequireWildcard(require("react"));
8
- require("../../floorplan/section/assets/FloorplanHero.scss");
9
- var _muncherUi = require("@contentmunch/muncher-ui");
10
- var _AssetService = require("../../asset/service/AssetService");
11
- var _GridGallerySkeleton = require("../../gallery/GridGallerySkeleton");
12
- var _Utils = require("../../utils/Utils");
13
- var _AssetModal = require("../../asset/AssetModal");
14
- var _VideoTours = require("../../gallery/VideoTours");
15
- var _VirtualTour = require("../../gallery/VirtualTour");
16
- var _GalleryModal = require("../../gallery/GalleryModal");
17
- var _GridGalleryMobile = require("../../gallery/GridGalleryMobile");
18
- var _GridGalleryCover = require("../../gallery/GridGalleryCover");
19
- var _GridGallery = require("../../gallery/GridGallery");
20
- var _UnitService = require("../service/UnitService");
21
- var _HeroBadgeStats = require("../../floorplan/section/HeroBadgeStats");
22
- var _UnitPrice = require("./UnitPrice");
23
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
24
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
25
- const UnitHero = _ref => {
26
- let {
27
- unit,
28
- contactClickHandler,
29
- applyClickHandler,
30
- handleRefToMap,
31
- webSpecials
32
- } = _ref;
33
- const [assets, setAssets] = (0, _react.useState)([]);
34
- const [isAssetsLoading, setIsAssetsLoading] = (0, _react.useState)(true);
35
- const [videoTours, setVideoTours] = (0, _react.useState)([]);
36
- const [virtualTour, setVirtualTour] = (0, _react.useState)(undefined);
37
- const [videoTourImageBackground, setVideoTourImageBackground] = (0, _react.useState)();
38
- const [virtualTourImageBackground, setVirtualTourImageBackground] = (0, _react.useState)();
39
- const [showFloorplanModal, setShowFloorplanModal] = (0, _react.useState)(false);
40
- const [totalPages, setTotalPages] = (0, _react.useState)(1);
41
- const [toursCount, setToursCount] = (0, _react.useState)(1);
42
- const [currentView, setCurrentView] = (0, _react.useState)("photo");
43
- const [assetInFocus, setAssetInFocus] = (0, _react.useState)({});
44
- const [assetIndex, setAssetIndex] = (0, _react.useState)(0);
45
- const [showModal, setShowModal] = (0, _react.useState)(false);
46
- const [firstPageImageCount, setFirstPageImageCount] = (0, _react.useState)(4);
47
- const GRID_SIZE = 8;
48
- const imageClickedHandler = image => {
49
- setShowModal(true);
50
- setAssetInFocus(image);
51
- setAssetIndex(assets.findIndex(value => value.id === image.id));
52
- };
53
- const modalCloseHandler = () => {
54
- setShowModal(false);
55
- setAssetInFocus({});
56
- };
57
- (0, _react.useEffect)(() => {
58
- const images = [];
59
- if (unit.coverImage) images.push({
60
- id: (0, _Utils.extractIdFrom)(unit.coverImage),
61
- name: "cover image"
62
- });else if (unit.floorplan.coverImage) images.push({
63
- id: (0, _Utils.extractIdFrom)(unit.floorplan.coverImage),
64
- name: "cover image"
65
- });
66
- let firstPageCount = firstPageImageCount;
67
- if (unit.photosFolderId) {
68
- (0, _AssetService.getAssetsFrom)(unit.photosFolderId).then(galleryAssets => {
69
- images.push(...galleryAssets);
70
- if (images.length > 1) {
71
- const backgroundImageUrl = (0, _AssetService.assetUrlFrom)(images[1].id, unit.floorplan.property.id);
72
- if (unit.virtualTourLink) {
73
- setVirtualTour(unit.virtualTourLink);
74
- setVirtualTourImageBackground(backgroundImageUrl);
75
- firstPageCount -= 1;
76
- }
77
- const tourLinks = [];
78
- if (unit.videoTourLink) tourLinks.push(unit.videoTourLink);
79
- if (unit.threeSixtyVideoTourLink) tourLinks.push(unit.threeSixtyVideoTourLink);
80
- setVideoTours(tourLinks);
81
- if (tourLinks.length > 0) {
82
- setVideoTourImageBackground(backgroundImageUrl);
83
- firstPageCount -= 1;
84
- }
85
- let otherAssetCounts = (tourLinks.length > 0 ? 1 : 0) + (unit.virtualTourLink ? 1 : 0);
86
- setToursCount(otherAssetCounts);
87
- }
88
- }).finally(() => {
89
- let pages = 1;
90
- if (images.length > firstPageCount) {
91
- const remaining = images.length - firstPageCount;
92
- pages += remaining / 8;
93
- if (remaining % 8 > 0) pages += 1;
94
- }
95
- setTotalPages(Math.trunc(pages));
96
- setFirstPageImageCount(firstPageCount);
97
- setAssets(images);
98
- setIsAssetsLoading(false);
99
- });
100
- } else {
101
- setAssets(images);
102
- setIsAssetsLoading(false);
103
- }
104
- }, [unit]);
105
- const printUnitAddress = () => {
106
- const address = (0, _UnitService.addressFromUnit)(unit);
107
- let printAddress = "";
108
- if (address.address) {
109
- printAddress += address.address + ", ";
110
- }
111
- printAddress += address.city + ", " + address.state + " " + address.zipcode;
112
- return printAddress;
113
- };
114
- const isFirstSliderPage = slideIndex => slideIndex === 0;
115
- const assetsToShow = slideIndex => {
116
- if (isFirstSliderPage(slideIndex)) {
117
- console.log("firstPageImageCount", firstPageImageCount);
118
- return assets.slice(0, firstPageImageCount - 1);
119
- }
120
- const startIndex = firstPageImageCount - 1 + GRID_SIZE * (slideIndex - 1);
121
- const endIndex = firstPageImageCount - 1 + GRID_SIZE * slideIndex;
122
- return assets.slice(startIndex, endIndex > assets.length ? assets.length : endIndex);
123
- };
124
- return /*#__PURE__*/_react.default.createElement("section", {
125
- className: "section-floorplan--hero"
126
- }, isAssetsLoading ? /*#__PURE__*/_react.default.createElement(_GridGallerySkeleton.GridGallerySkeleton, null) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
127
- className: "gallery-hero"
128
- }, /*#__PURE__*/_react.default.createElement(_GalleryModal.GalleryModal, {
129
- assets: assets,
130
- assetInFocus: assetInFocus,
131
- setAssetInFocus: setAssetInFocus,
132
- showModal: showModal,
133
- assetIndex: assetIndex,
134
- setAssetIndex: setAssetIndex,
135
- modalCloseHandler: modalCloseHandler,
136
- propertyId: unit.floorplan.property.id
137
- }), currentView === "photo" ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
138
- className: "photo-view main"
139
- }, /*#__PURE__*/_react.default.createElement(_muncherUi.ItemSlider, {
140
- sliderItems: [...Array(totalPages)].map((x, i) => i === 0 ? /*#__PURE__*/_react.default.createElement(_GridGalleryCover.GridGalleryCover, {
141
- assets: assetsToShow(i),
142
- address: (0, _UnitService.addressFromUnit)(unit),
143
- propertyId: unit.floorplan.property.id,
144
- heroImage: assets[0],
145
- imageClickedHandler: imageClickedHandler,
146
- webSpecials: webSpecials,
147
- isAvailableNow: (0, _UnitService.isUnitAvailable)(unit),
148
- setCurrentView: setCurrentView,
149
- videoTourImageBackground: videoTourImageBackground,
150
- virtualTourImageBackground: virtualTourImageBackground,
151
- showOnlyHeroImage: assets.length === 1
152
- }) : /*#__PURE__*/_react.default.createElement(_GridGallery.GridGallery, {
153
- imageClickedHandler: imageClickedHandler,
154
- propertyId: unit.floorplan.property.id,
155
- assets: assetsToShow(i)
156
- }))
157
- })), /*#__PURE__*/_react.default.createElement("div", {
158
- className: "photo-view mobile"
159
- }, /*#__PURE__*/_react.default.createElement(_GridGalleryMobile.GridGalleryMobile, {
160
- assets: assets,
161
- toursCount: toursCount,
162
- address: (0, _UnitService.addressFromUnit)(unit),
163
- virtualTour: virtualTour,
164
- setCurrentView: setCurrentView,
165
- imageClickedHandler: imageClickedHandler,
166
- webSpecials: webSpecials,
167
- isAvailableNow: (0, _UnitService.isUnitAvailable)(unit),
168
- propertyId: unit.floorplan.property.id
169
- }))) : "", currentView === "Video Tour" ? /*#__PURE__*/_react.default.createElement(_VideoTours.VideoTours, {
170
- videoTourUrls: videoTours
171
- }) : "", currentView === "Virtual Tour" ? /*#__PURE__*/_react.default.createElement(_VirtualTour.VirtualTour, {
172
- virtualTourUrl: virtualTour
173
- }) : "", /*#__PURE__*/_react.default.createElement(_HeroBadgeStats.HeroBadgeStats, {
174
- currentView: currentView,
175
- setCurrentView: setCurrentView,
176
- totalAssets: assets === null || assets === void 0 ? void 0 : assets.length,
177
- videoTours: videoTours,
178
- virtualTour: virtualTour
179
- }))), /*#__PURE__*/_react.default.createElement(_AssetModal.AssetModal, {
180
- assetUrl: unit.floorplanImage ? unit.floorplanImage : unit.floorplan.photo,
181
- assetTitle: "Floorplan image",
182
- showModal: showFloorplanModal,
183
- setShowModal: setShowFloorplanModal,
184
- propertyId: unit.floorplan.property.id
185
- }), /*#__PURE__*/_react.default.createElement("div", {
186
- className: "container"
187
- }, /*#__PURE__*/_react.default.createElement("div", {
188
- className: "floorplan--two-columns"
189
- }, /*#__PURE__*/_react.default.createElement("div", {
190
- className: "floorplan-column-left"
191
- }, /*#__PURE__*/_react.default.createElement("h3", null, unit.floorplan.name), /*#__PURE__*/_react.default.createElement("h4", null, /*#__PURE__*/_react.default.createElement(_UnitPrice.UnitPrice, {
192
- unit: unit,
193
- invertColor: true
194
- })), /*#__PURE__*/_react.default.createElement("p", {
195
- className: "floorplan--description"
196
- }, printUnitAddress()), /*#__PURE__*/_react.default.createElement("div", {
197
- className: "floorplan--featured"
198
- }, /*#__PURE__*/_react.default.createElement(_muncherUi.Button, {
199
- size: "small",
200
- onClick: () => setShowFloorplanModal(true)
201
- }, /*#__PURE__*/_react.default.createElement(_muncherUi.Icon, {
202
- name: "max",
203
- orientation: "right"
204
- }, "ViewFloorplan")), "|\xA0\xA0", /*#__PURE__*/_react.default.createElement(_muncherUi.Button, {
205
- size: "small",
206
- onClick: () => handleRefToMap()
207
- }, /*#__PURE__*/_react.default.createElement(_muncherUi.Icon, {
208
- orientation: "right",
209
- name: "map"
210
- }, "View on Map")), unit.floorplan.property.busRoutes.length > 0 ? /*#__PURE__*/_react.default.createElement("p", null, "Bus Routes:\xA0", unit.floorplan.property.busRoutes.map((busRoute, index) => /*#__PURE__*/_react.default.createElement("span", {
211
- key: "bus-route-" + index
212
- }, /*#__PURE__*/_react.default.createElement("a", {
213
- href: busRoute.busRouteLink,
214
- target: "_blank",
215
- rel: "noreferrer"
216
- }, busRoute.busRoute), index < unit.floorplan.property.busRoutes.length - 1 ? ", " : ""))) : "")), /*#__PURE__*/_react.default.createElement("div", {
217
- className: "main"
218
- }, /*#__PURE__*/_react.default.createElement("div", {
219
- className: " floorplan-column-right"
220
- }, /*#__PURE__*/_react.default.createElement(_muncherUi.Button, {
221
- variant: "primary",
222
- size: "medium",
223
- onClick: contactClickHandler
224
- }, "contact us"), /*#__PURE__*/_react.default.createElement(_muncherUi.Button, {
225
- variant: "tertiary",
226
- size: "medium",
227
- onClick: applyClickHandler
228
- }, "apply"), /*#__PURE__*/_react.default.createElement(_muncherUi.ShareButton, {
229
- title: "Check out this apartment",
230
- size: "large"
231
- }))))));
232
- };
233
- exports.UnitHero = UnitHero;
234
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfbXVuY2hlclVpIiwiX0Fzc2V0U2VydmljZSIsIl9HcmlkR2FsbGVyeVNrZWxldG9uIiwiX1V0aWxzIiwiX0Fzc2V0TW9kYWwiLCJfVmlkZW9Ub3VycyIsIl9WaXJ0dWFsVG91ciIsIl9HYWxsZXJ5TW9kYWwiLCJfR3JpZEdhbGxlcnlNb2JpbGUiLCJfR3JpZEdhbGxlcnlDb3ZlciIsIl9HcmlkR2FsbGVyeSIsIl9Vbml0U2VydmljZSIsIl9IZXJvQmFkZ2VTdGF0cyIsIl9Vbml0UHJpY2UiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJVbml0SGVybyIsIl9yZWYiLCJ1bml0IiwiY29udGFjdENsaWNrSGFuZGxlciIsImFwcGx5Q2xpY2tIYW5kbGVyIiwiaGFuZGxlUmVmVG9NYXAiLCJ3ZWJTcGVjaWFscyIsImFzc2V0cyIsInNldEFzc2V0cyIsInVzZVN0YXRlIiwiaXNBc3NldHNMb2FkaW5nIiwic2V0SXNBc3NldHNMb2FkaW5nIiwidmlkZW9Ub3VycyIsInNldFZpZGVvVG91cnMiLCJ2aXJ0dWFsVG91ciIsInNldFZpcnR1YWxUb3VyIiwidW5kZWZpbmVkIiwidmlkZW9Ub3VySW1hZ2VCYWNrZ3JvdW5kIiwic2V0VmlkZW9Ub3VySW1hZ2VCYWNrZ3JvdW5kIiwidmlydHVhbFRvdXJJbWFnZUJhY2tncm91bmQiLCJzZXRWaXJ0dWFsVG91ckltYWdlQmFja2dyb3VuZCIsInNob3dGbG9vcnBsYW5Nb2RhbCIsInNldFNob3dGbG9vcnBsYW5Nb2RhbCIsInRvdGFsUGFnZXMiLCJzZXRUb3RhbFBhZ2VzIiwidG91cnNDb3VudCIsInNldFRvdXJzQ291bnQiLCJjdXJyZW50VmlldyIsInNldEN1cnJlbnRWaWV3IiwiYXNzZXRJbkZvY3VzIiwic2V0QXNzZXRJbkZvY3VzIiwiYXNzZXRJbmRleCIsInNldEFzc2V0SW5kZXgiLCJzaG93TW9kYWwiLCJzZXRTaG93TW9kYWwiLCJmaXJzdFBhZ2VJbWFnZUNvdW50Iiwic2V0Rmlyc3RQYWdlSW1hZ2VDb3VudCIsIkdSSURfU0laRSIsImltYWdlQ2xpY2tlZEhhbmRsZXIiLCJpbWFnZSIsImZpbmRJbmRleCIsInZhbHVlIiwiaWQiLCJtb2RhbENsb3NlSGFuZGxlciIsInVzZUVmZmVjdCIsImltYWdlcyIsImNvdmVySW1hZ2UiLCJwdXNoIiwiZXh0cmFjdElkRnJvbSIsIm5hbWUiLCJmbG9vcnBsYW4iLCJmaXJzdFBhZ2VDb3VudCIsInBob3Rvc0ZvbGRlcklkIiwiZ2V0QXNzZXRzRnJvbSIsInRoZW4iLCJnYWxsZXJ5QXNzZXRzIiwibGVuZ3RoIiwiYmFja2dyb3VuZEltYWdlVXJsIiwiYXNzZXRVcmxGcm9tIiwicHJvcGVydHkiLCJ2aXJ0dWFsVG91ckxpbmsiLCJ0b3VyTGlua3MiLCJ2aWRlb1RvdXJMaW5rIiwidGhyZWVTaXh0eVZpZGVvVG91ckxpbmsiLCJvdGhlckFzc2V0Q291bnRzIiwiZmluYWxseSIsInBhZ2VzIiwicmVtYWluaW5nIiwiTWF0aCIsInRydW5jIiwicHJpbnRVbml0QWRkcmVzcyIsImFkZHJlc3MiLCJhZGRyZXNzRnJvbVVuaXQiLCJwcmludEFkZHJlc3MiLCJjaXR5Iiwic3RhdGUiLCJ6aXBjb2RlIiwiaXNGaXJzdFNsaWRlclBhZ2UiLCJzbGlkZUluZGV4IiwiYXNzZXRzVG9TaG93IiwiY29uc29sZSIsImxvZyIsInNsaWNlIiwic3RhcnRJbmRleCIsImVuZEluZGV4IiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsIkdyaWRHYWxsZXJ5U2tlbGV0b24iLCJGcmFnbWVudCIsIkdhbGxlcnlNb2RhbCIsInByb3BlcnR5SWQiLCJJdGVtU2xpZGVyIiwic2xpZGVySXRlbXMiLCJBcnJheSIsIm1hcCIsIngiLCJHcmlkR2FsbGVyeUNvdmVyIiwiaGVyb0ltYWdlIiwiaXNBdmFpbGFibGVOb3ciLCJpc1VuaXRBdmFpbGFibGUiLCJzaG93T25seUhlcm9JbWFnZSIsIkdyaWRHYWxsZXJ5IiwiR3JpZEdhbGxlcnlNb2JpbGUiLCJWaWRlb1RvdXJzIiwidmlkZW9Ub3VyVXJscyIsIlZpcnR1YWxUb3VyIiwidmlydHVhbFRvdXJVcmwiLCJIZXJvQmFkZ2VTdGF0cyIsInRvdGFsQXNzZXRzIiwiQXNzZXRNb2RhbCIsImFzc2V0VXJsIiwiZmxvb3JwbGFuSW1hZ2UiLCJwaG90byIsImFzc2V0VGl0bGUiLCJVbml0UHJpY2UiLCJpbnZlcnRDb2xvciIsIkJ1dHRvbiIsInNpemUiLCJvbkNsaWNrIiwiSWNvbiIsIm9yaWVudGF0aW9uIiwiYnVzUm91dGVzIiwiYnVzUm91dGUiLCJpbmRleCIsImtleSIsImhyZWYiLCJidXNSb3V0ZUxpbmsiLCJ0YXJnZXQiLCJyZWwiLCJ2YXJpYW50IiwiU2hhcmVCdXR0b24iLCJ0aXRsZSIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdW5pdC9zZWN0aW9uL1VuaXRIZXJvLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHt1c2VFZmZlY3QsIHVzZVN0YXRlfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBcIi4uLy4uL2Zsb29ycGxhbi9zZWN0aW9uL2Fzc2V0cy9GbG9vcnBsYW5IZXJvLnNjc3NcIjtcbmltcG9ydCB7QnV0dG9uLCBJY29uLCBJdGVtU2xpZGVyLCBTaGFyZUJ1dHRvbn0gZnJvbSBcIkBjb250ZW50bXVuY2gvbXVuY2hlci11aVwiO1xuaW1wb3J0IHtBc3NldH0gZnJvbSBcIi4uLy4uL2Fzc2V0L2RhdGEvQXNzZXRcIjtcbmltcG9ydCB7YXNzZXRVcmxGcm9tLCBnZXRBc3NldHNGcm9tfSBmcm9tIFwiLi4vLi4vYXNzZXQvc2VydmljZS9Bc3NldFNlcnZpY2VcIjtcbmltcG9ydCB7R3JpZEdhbGxlcnlTa2VsZXRvbn0gZnJvbSBcIi4uLy4uL2dhbGxlcnkvR3JpZEdhbGxlcnlTa2VsZXRvblwiO1xuaW1wb3J0IHtleHRyYWN0SWRGcm9tfSBmcm9tIFwiLi4vLi4vdXRpbHMvVXRpbHNcIjtcbmltcG9ydCB7QXNzZXRNb2RhbH0gZnJvbSBcIi4uLy4uL2Fzc2V0L0Fzc2V0TW9kYWxcIjtcbmltcG9ydCB7VmlkZW9Ub3Vyc30gZnJvbSBcIi4uLy4uL2dhbGxlcnkvVmlkZW9Ub3Vyc1wiO1xuaW1wb3J0IHtWaXJ0dWFsVG91cn0gZnJvbSBcIi4uLy4uL2dhbGxlcnkvVmlydHVhbFRvdXJcIjtcbmltcG9ydCB7R2FsbGVyeU1vZGFsfSBmcm9tIFwiLi4vLi4vZ2FsbGVyeS9HYWxsZXJ5TW9kYWxcIjtcbmltcG9ydCB7R3JpZEdhbGxlcnlNb2JpbGV9IGZyb20gXCIuLi8uLi9nYWxsZXJ5L0dyaWRHYWxsZXJ5TW9iaWxlXCI7XG5pbXBvcnQge0dyaWRHYWxsZXJ5Q292ZXIsIFRvdXJUeXBlfSBmcm9tIFwiLi4vLi4vZ2FsbGVyeS9HcmlkR2FsbGVyeUNvdmVyXCI7XG5pbXBvcnQge0dyaWRHYWxsZXJ5fSBmcm9tIFwiLi4vLi4vZ2FsbGVyeS9HcmlkR2FsbGVyeVwiO1xuaW1wb3J0IHtVbml0Rmxvb3JwbGFufSBmcm9tIFwiLi4vZGF0YS9Vbml0XCI7XG5pbXBvcnQge2FkZHJlc3NGcm9tVW5pdCwgaXNVbml0QXZhaWxhYmxlfSBmcm9tIFwiLi4vc2VydmljZS9Vbml0U2VydmljZVwiO1xuaW1wb3J0IHtIZXJvQmFkZ2VTdGF0c30gZnJvbSBcIi4uLy4uL2Zsb29ycGxhbi9zZWN0aW9uL0hlcm9CYWRnZVN0YXRzXCI7XG5pbXBvcnQge1dlYlNwZWNpYWx9IGZyb20gXCIuLi8uLi9mbG9vcnBsYW4vZGF0YS9GbG9vcnBsYW5cIjtcbmltcG9ydCB7VW5pdFByaWNlfSBmcm9tIFwiLi9Vbml0UHJpY2VcIjtcblxuZXhwb3J0IGNvbnN0IFVuaXRIZXJvOiBSZWFjdC5GQzxVbml0SGVyb1Byb3BzPiA9IChcbiAgICB7dW5pdCwgY29udGFjdENsaWNrSGFuZGxlciwgYXBwbHlDbGlja0hhbmRsZXIsIGhhbmRsZVJlZlRvTWFwLCB3ZWJTcGVjaWFsc30pID0+IHtcbiAgICBjb25zdCBbYXNzZXRzLCBzZXRBc3NldHNdID0gdXNlU3RhdGU8QXNzZXRbXT4oW10pO1xuICAgIGNvbnN0IFtpc0Fzc2V0c0xvYWRpbmcsIHNldElzQXNzZXRzTG9hZGluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgICBjb25zdCBbdmlkZW9Ub3Vycywgc2V0VmlkZW9Ub3Vyc10gPSB1c2VTdGF0ZTxzdHJpbmdbXT4oW10pO1xuICAgIGNvbnN0IFt2aXJ0dWFsVG91ciwgc2V0VmlydHVhbFRvdXJdID0gdXNlU3RhdGU8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuXG4gICAgY29uc3QgW3ZpZGVvVG91ckltYWdlQmFja2dyb3VuZCwgc2V0VmlkZW9Ub3VySW1hZ2VCYWNrZ3JvdW5kXSA9IHVzZVN0YXRlPHN0cmluZz4oKTtcbiAgICBjb25zdCBbdmlydHVhbFRvdXJJbWFnZUJhY2tncm91bmQsIHNldFZpcnR1YWxUb3VySW1hZ2VCYWNrZ3JvdW5kXSA9IHVzZVN0YXRlPHN0cmluZz4oKTtcblxuICAgIGNvbnN0IFtzaG93Rmxvb3JwbGFuTW9kYWwsIHNldFNob3dGbG9vcnBsYW5Nb2RhbF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgW3RvdGFsUGFnZXMsIHNldFRvdGFsUGFnZXNdID0gdXNlU3RhdGUoMSk7XG4gICAgY29uc3QgW3RvdXJzQ291bnQsIHNldFRvdXJzQ291bnRdID0gdXNlU3RhdGUoMSk7XG4gICAgY29uc3QgW2N1cnJlbnRWaWV3LCBzZXRDdXJyZW50Vmlld10gPSB1c2VTdGF0ZTxcInBob3RvXCIgfCBUb3VyVHlwZT4oXCJwaG90b1wiKTtcbiAgICBjb25zdCBbYXNzZXRJbkZvY3VzLCBzZXRBc3NldEluRm9jdXNdID0gdXNlU3RhdGU8QXNzZXQ+KHt9IGFzIEFzc2V0KTtcbiAgICBjb25zdCBbYXNzZXRJbmRleCwgc2V0QXNzZXRJbmRleF0gPSB1c2VTdGF0ZSgwKTtcbiAgICBjb25zdCBbc2hvd01vZGFsLCBzZXRTaG93TW9kYWxdID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IFtmaXJzdFBhZ2VJbWFnZUNvdW50LCBzZXRGaXJzdFBhZ2VJbWFnZUNvdW50XSA9IHVzZVN0YXRlKDQpO1xuXG4gICAgY29uc3QgR1JJRF9TSVpFID0gODtcbiAgICBjb25zdCBpbWFnZUNsaWNrZWRIYW5kbGVyID0gKGltYWdlOiBBc3NldCkgPT4ge1xuICAgICAgICBzZXRTaG93TW9kYWwodHJ1ZSk7XG4gICAgICAgIHNldEFzc2V0SW5Gb2N1cyhpbWFnZSk7XG4gICAgICAgIHNldEFzc2V0SW5kZXgoYXNzZXRzLmZpbmRJbmRleCh2YWx1ZSA9PiB2YWx1ZS5pZCA9PT0gaW1hZ2UuaWQpKTtcbiAgICB9O1xuICAgIGNvbnN0IG1vZGFsQ2xvc2VIYW5kbGVyID0gKCkgPT4ge1xuICAgICAgICBzZXRTaG93TW9kYWwoZmFsc2UpO1xuICAgICAgICBzZXRBc3NldEluRm9jdXMoe30gYXMgQXNzZXQpO1xuICAgIH07XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcblxuXG4gICAgICAgIGNvbnN0IGltYWdlczogQXNzZXRbXSA9IFtdO1xuICAgICAgICBpZiAodW5pdC5jb3ZlckltYWdlKVxuICAgICAgICAgICAgaW1hZ2VzLnB1c2goe2lkOiBleHRyYWN0SWRGcm9tKHVuaXQuY292ZXJJbWFnZSksIG5hbWU6IFwiY292ZXIgaW1hZ2VcIn0gYXMgQXNzZXQpO1xuICAgICAgICBlbHNlIGlmICh1bml0LmZsb29ycGxhbi5jb3ZlckltYWdlKVxuICAgICAgICAgICAgaW1hZ2VzLnB1c2goe2lkOiBleHRyYWN0SWRGcm9tKHVuaXQuZmxvb3JwbGFuLmNvdmVySW1hZ2UpLCBuYW1lOiBcImNvdmVyIGltYWdlXCJ9IGFzIEFzc2V0KTtcblxuXG4gICAgICAgIGxldCBmaXJzdFBhZ2VDb3VudCA9IGZpcnN0UGFnZUltYWdlQ291bnQ7XG5cbiAgICAgICAgaWYgKHVuaXQucGhvdG9zRm9sZGVySWQpIHtcbiAgICAgICAgICAgIGdldEFzc2V0c0Zyb20odW5pdC5waG90b3NGb2xkZXJJZCkudGhlbihnYWxsZXJ5QXNzZXRzID0+IHtcblxuICAgICAgICAgICAgICAgIGltYWdlcy5wdXNoKC4uLmdhbGxlcnlBc3NldHMpO1xuXG4gICAgICAgICAgICAgICAgaWYgKGltYWdlcy5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJhY2tncm91bmRJbWFnZVVybCA9IGFzc2V0VXJsRnJvbShpbWFnZXNbMV0uaWQsIHVuaXQuZmxvb3JwbGFuLnByb3BlcnR5LmlkKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHVuaXQudmlydHVhbFRvdXJMaW5rKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRWaXJ0dWFsVG91cih1bml0LnZpcnR1YWxUb3VyTGluayk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRWaXJ0dWFsVG91ckltYWdlQmFja2dyb3VuZChiYWNrZ3JvdW5kSW1hZ2VVcmwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3RQYWdlQ291bnQgLT0gMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvdXJMaW5rcyA9IFtdO1xuICAgICAgICAgICAgICAgICAgICBpZiAodW5pdC52aWRlb1RvdXJMaW5rKVxuICAgICAgICAgICAgICAgICAgICAgICAgdG91ckxpbmtzLnB1c2godW5pdC52aWRlb1RvdXJMaW5rKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHVuaXQudGhyZWVTaXh0eVZpZGVvVG91ckxpbmspXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3VyTGlua3MucHVzaCh1bml0LnRocmVlU2l4dHlWaWRlb1RvdXJMaW5rKTtcbiAgICAgICAgICAgICAgICAgICAgc2V0VmlkZW9Ub3Vycyh0b3VyTGlua3MpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodG91ckxpbmtzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldFZpZGVvVG91ckltYWdlQmFja2dyb3VuZChiYWNrZ3JvdW5kSW1hZ2VVcmwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3RQYWdlQ291bnQgLT0gMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGxldCBvdGhlckFzc2V0Q291bnRzID0gKHRvdXJMaW5rcy5sZW5ndGggPiAwID8gMSA6IDApICsgKHVuaXQudmlydHVhbFRvdXJMaW5rID8gMSA6IDApO1xuICAgICAgICAgICAgICAgICAgICBzZXRUb3Vyc0NvdW50KG90aGVyQXNzZXRDb3VudHMpO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9KS5maW5hbGx5KCgpID0+IHtcblxuICAgICAgICAgICAgICAgIGxldCBwYWdlcyA9IDE7XG5cbiAgICAgICAgICAgICAgICBpZiAoaW1hZ2VzLmxlbmd0aCA+IGZpcnN0UGFnZUNvdW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlbWFpbmluZyA9IGltYWdlcy5sZW5ndGggLSBmaXJzdFBhZ2VDb3VudDtcbiAgICAgICAgICAgICAgICAgICAgcGFnZXMgKz0gcmVtYWluaW5nIC8gODtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlbWFpbmluZyAlIDggPiAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgcGFnZXMgKz0gMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzZXRUb3RhbFBhZ2VzKE1hdGgudHJ1bmMocGFnZXMpKTtcbiAgICAgICAgICAgICAgICBzZXRGaXJzdFBhZ2VJbWFnZUNvdW50KGZpcnN0UGFnZUNvdW50KTtcbiAgICAgICAgICAgICAgICBzZXRBc3NldHMoaW1hZ2VzKTtcbiAgICAgICAgICAgICAgICBzZXRJc0Fzc2V0c0xvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzZXRBc3NldHMoaW1hZ2VzKTtcbiAgICAgICAgICAgIHNldElzQXNzZXRzTG9hZGluZyhmYWxzZSk7XG4gICAgICAgIH1cblxuICAgIH0sIFt1bml0XSlcblxuXG4gICAgY29uc3QgcHJpbnRVbml0QWRkcmVzcyA9ICgpID0+IHtcbiAgICAgICAgY29uc3QgYWRkcmVzcyA9IGFkZHJlc3NGcm9tVW5pdCh1bml0KTtcblxuICAgICAgICBsZXQgcHJpbnRBZGRyZXNzID0gXCJcIjtcbiAgICAgICAgaWYgKGFkZHJlc3MuYWRkcmVzcykge1xuICAgICAgICAgICAgcHJpbnRBZGRyZXNzICs9IGFkZHJlc3MuYWRkcmVzcyArIFwiLCBcIjtcbiAgICAgICAgfVxuICAgICAgICBwcmludEFkZHJlc3MgKz0gYWRkcmVzcy5jaXR5ICsgXCIsIFwiICsgYWRkcmVzcy5zdGF0ZSArIFwiIFwiICsgYWRkcmVzcy56aXBjb2RlO1xuICAgICAgICByZXR1cm4gcHJpbnRBZGRyZXNzO1xuICAgIH1cbiAgICBjb25zdCBpc0ZpcnN0U2xpZGVyUGFnZSA9IChzbGlkZUluZGV4OiBudW1iZXIpID0+IHNsaWRlSW5kZXggPT09IDA7XG5cbiAgICBjb25zdCBhc3NldHNUb1Nob3cgPSAoc2xpZGVJbmRleDogbnVtYmVyKSA9PiB7XG5cbiAgICAgICAgaWYgKGlzRmlyc3RTbGlkZXJQYWdlKHNsaWRlSW5kZXgpKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcImZpcnN0UGFnZUltYWdlQ291bnRcIiwgZmlyc3RQYWdlSW1hZ2VDb3VudCk7XG4gICAgICAgICAgICByZXR1cm4gYXNzZXRzLnNsaWNlKDAsIGZpcnN0UGFnZUltYWdlQ291bnQgLSAxKTtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgY29uc3Qgc3RhcnRJbmRleCA9IGZpcnN0UGFnZUltYWdlQ291bnQgLSAxICsgKEdSSURfU0laRSAqIChzbGlkZUluZGV4IC0gMSkpXG4gICAgICAgIGNvbnN0IGVuZEluZGV4ID0gZmlyc3RQYWdlSW1hZ2VDb3VudCAtIDEgKyAoR1JJRF9TSVpFICogc2xpZGVJbmRleClcblxuICAgICAgICByZXR1cm4gYXNzZXRzLnNsaWNlKHN0YXJ0SW5kZXgsIGVuZEluZGV4ID4gYXNzZXRzLmxlbmd0aCA/IGFzc2V0cy5sZW5ndGggOiBlbmRJbmRleCk7XG4gICAgfTtcbiAgICByZXR1cm4gKFxuICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJzZWN0aW9uLWZsb29ycGxhbi0taGVyb1wiPlxuICAgICAgICAgICAge2lzQXNzZXRzTG9hZGluZyA/IDxHcmlkR2FsbGVyeVNrZWxldG9uLz4gOlxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZ2FsbGVyeS1oZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8R2FsbGVyeU1vZGFsIGFzc2V0cz17YXNzZXRzfSBhc3NldEluRm9jdXM9e2Fzc2V0SW5Gb2N1c31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0QXNzZXRJbkZvY3VzPXtzZXRBc3NldEluRm9jdXN9IHNob3dNb2RhbD17c2hvd01vZGFsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NldEluZGV4PXthc3NldEluZGV4fSBzZXRBc3NldEluZGV4PXtzZXRBc3NldEluZGV4fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RhbENsb3NlSGFuZGxlcj17bW9kYWxDbG9zZUhhbmRsZXJ9IHByb3BlcnR5SWQ9e3VuaXQuZmxvb3JwbGFuLnByb3BlcnR5LmlkfS8+XG4gICAgICAgICAgICAgICAgICAgICAgICB7Y3VycmVudFZpZXcgPT09IFwicGhvdG9cIiA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJwaG90by12aWV3IG1haW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtU2xpZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2xpZGVySXRlbXM9e1suLi5BcnJheSh0b3RhbFBhZ2VzKV0ubWFwKCh4LCBpKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaSA9PT0gMCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWRHYWxsZXJ5Q292ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NldHM9e2Fzc2V0c1RvU2hvdyhpKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzPXthZGRyZXNzRnJvbVVuaXQodW5pdCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcGVydHlJZD17dW5pdC5mbG9vcnBsYW4ucHJvcGVydHkuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVyb0ltYWdlPXthc3NldHNbMF19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1hZ2VDbGlja2VkSGFuZGxlcj17aW1hZ2VDbGlja2VkSGFuZGxlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ZWJTcGVjaWFscz17d2ViU3BlY2lhbHN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNBdmFpbGFibGVOb3c9e2lzVW5pdEF2YWlsYWJsZSh1bml0KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRDdXJyZW50Vmlldz17c2V0Q3VycmVudFZpZXd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlkZW9Ub3VySW1hZ2VCYWNrZ3JvdW5kPXt2aWRlb1RvdXJJbWFnZUJhY2tncm91bmR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlydHVhbFRvdXJJbWFnZUJhY2tncm91bmQ9e3ZpcnR1YWxUb3VySW1hZ2VCYWNrZ3JvdW5kfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dPbmx5SGVyb0ltYWdlPXthc3NldHMubGVuZ3RoID09PSAxfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkR2FsbGVyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlQ2xpY2tlZEhhbmRsZXI9e2ltYWdlQ2xpY2tlZEhhbmRsZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcGVydHlJZD17dW5pdC5mbG9vcnBsYW4ucHJvcGVydHkuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXRzPXthc3NldHNUb1Nob3coaSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicGhvdG8tdmlldyBtb2JpbGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkR2FsbGVyeU1vYmlsZSBhc3NldHM9e2Fzc2V0c30gdG91cnNDb3VudD17dG91cnNDb3VudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzPXthZGRyZXNzRnJvbVVuaXQodW5pdCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlydHVhbFRvdXI9e3ZpcnR1YWxUb3VyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEN1cnJlbnRWaWV3PXtzZXRDdXJyZW50Vmlld31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWFnZUNsaWNrZWRIYW5kbGVyPXtpbWFnZUNsaWNrZWRIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdlYlNwZWNpYWxzPXt3ZWJTcGVjaWFsc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0F2YWlsYWJsZU5vdz17aXNVbml0QXZhaWxhYmxlKHVuaXQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3BlcnR5SWQ9e3VuaXQuZmxvb3JwbGFuLnByb3BlcnR5LmlkfS8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPiA6IFwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAge2N1cnJlbnRWaWV3ID09PSBcIlZpZGVvIFRvdXJcIiA/IDxWaWRlb1RvdXJzIHZpZGVvVG91clVybHM9e3ZpZGVvVG91cnN9Lz4gOiBcIlwifVxuICAgICAgICAgICAgICAgICAgICAgICAge2N1cnJlbnRWaWV3ID09PSBcIlZpcnR1YWwgVG91clwiID8gPFZpcnR1YWxUb3VyIHZpcnR1YWxUb3VyVXJsPXt2aXJ0dWFsVG91cn0vPiA6IFwiXCJ9XG4gICAgICAgICAgICAgICAgICAgICAgICA8SGVyb0JhZGdlU3RhdHMgY3VycmVudFZpZXc9e2N1cnJlbnRWaWV3fSBzZXRDdXJyZW50Vmlldz17c2V0Q3VycmVudFZpZXd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxBc3NldHM9e2Fzc2V0cz8ubGVuZ3RofSB2aWRlb1RvdXJzPXt2aWRlb1RvdXJzfSB2aXJ0dWFsVG91cj17dmlydHVhbFRvdXJ9Lz5cblxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8Lz5cblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPEFzc2V0TW9kYWwgYXNzZXRVcmw9e3VuaXQuZmxvb3JwbGFuSW1hZ2UgPyB1bml0LmZsb29ycGxhbkltYWdlIDogdW5pdC5mbG9vcnBsYW4ucGhvdG99XG4gICAgICAgICAgICAgICAgICAgICAgICBhc3NldFRpdGxlPVwiRmxvb3JwbGFuIGltYWdlXCIgc2hvd01vZGFsPXtzaG93Rmxvb3JwbGFuTW9kYWx9XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRTaG93TW9kYWw9e3NldFNob3dGbG9vcnBsYW5Nb2RhbH0gcHJvcGVydHlJZD17dW5pdC5mbG9vcnBsYW4ucHJvcGVydHkuaWR9Lz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbG9vcnBsYW4tLXR3by1jb2x1bW5zXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxvb3JwbGFuLWNvbHVtbi1sZWZ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aDM+e3VuaXQuZmxvb3JwbGFuLm5hbWV9PC9oMz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxoND48VW5pdFByaWNlIHVuaXQ9e3VuaXR9IGludmVydENvbG9yPXt0cnVlfS8+PC9oND5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImZsb29ycGxhbi0tZGVzY3JpcHRpb25cIj57cHJpbnRVbml0QWRkcmVzcygpfTwvcD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbG9vcnBsYW4tLWZlYXR1cmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbiBzaXplPVwic21hbGxcIiBvbkNsaWNrPXsoKSA9PiBzZXRTaG93Rmxvb3JwbGFuTW9kYWwodHJ1ZSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwibWF4XCIgb3JpZW50YXRpb249XCJyaWdodFwiPlZpZXdGbG9vcnBsYW48L0ljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfCZuYnNwOyZuYnNwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b24gc2l6ZT1cInNtYWxsXCIgb25DbGljaz17KCkgPT4gaGFuZGxlUmVmVG9NYXAoKX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uIG9yaWVudGF0aW9uPVwicmlnaHRcIiBuYW1lPVwibWFwXCI+VmlldyBvbiBNYXA8L0ljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3VuaXQuZmxvb3JwbGFuLnByb3BlcnR5LmJ1c1JvdXRlcy5sZW5ndGggPiAwID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QnVzIFJvdXRlczombmJzcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt1bml0LmZsb29ycGxhbi5wcm9wZXJ0eS5idXNSb3V0ZXMubWFwKChidXNSb3V0ZSwgaW5kZXgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4ga2V5PXtcImJ1cy1yb3V0ZS1cIiArIGluZGV4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj17YnVzUm91dGUuYnVzUm91dGVMaW5rfSB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWw9XCJub3JlZmVycmVyXCI+e2J1c1JvdXRlLmJ1c1JvdXRlfTwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2luZGV4IDwgdW5pdC5mbG9vcnBsYW4ucHJvcGVydHkuYnVzUm91dGVzLmxlbmd0aCAtIDEgPyBcIiwgXCIgOiBcIlwifVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBcIlwifVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1haW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiIGZsb29ycGxhbi1jb2x1bW4tcmlnaHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJwcmltYXJ5XCIgc2l6ZT1cIm1lZGl1bVwiIG9uQ2xpY2s9e2NvbnRhY3RDbGlja0hhbmRsZXJ9PmNvbnRhY3QgdXM8L0J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIHNpemU9XCJtZWRpdW1cIiBvbkNsaWNrPXthcHBseUNsaWNrSGFuZGxlcn0+YXBwbHk8L0J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2hhcmVCdXR0b24gdGl0bGU9XCJDaGVjayBvdXQgdGhpcyBhcGFydG1lbnRcIiBzaXplPVwibGFyZ2VcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICk7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIFVuaXRIZXJvUHJvcHMge1xuICAgIHVuaXQ6IFVuaXRGbG9vcnBsYW47XG4gICAgd2ViU3BlY2lhbHM6IFdlYlNwZWNpYWxbXTtcbiAgICBjb250YWN0Q2xpY2tIYW5kbGVyOiAoKSA9PiB2b2lkO1xuICAgIGFwcGx5Q2xpY2tIYW5kbGVyOiAoKSA9PiB2b2lkO1xuICAgIGhhbmRsZVJlZlRvTWFwOiAoKSA9PiB2b2lkO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQUEsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLGFBQUEsR0FB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
@@ -1,41 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.UnitPrice = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
- var _Utils = require("../../utils/Utils");
9
- var _moment = _interopRequireDefault(require("moment/moment"));
10
- require("../../floorplan/card/assets/FloorplanPrice.scss");
11
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
- const UnitPrice = _ref => {
13
- let {
14
- unit,
15
- invertColor
16
- } = _ref;
17
- const hasSpecialRent = () => {
18
- const currentDate = (0, _moment.default)();
19
- if (unit.discountedRent && unit.discountedRentStartDate && unit.discountedRentEndDate) {
20
- const startDate = (0, _Utils.dateToMoment)(unit.discountedRentStartDate);
21
- const endDate = (0, _Utils.dateToMoment)(unit.discountedRentEndDate);
22
- return currentDate.isBetween(startDate, endDate);
23
- }
24
- return false;
25
- };
26
- const getRentClass = () => hasSpecialRent() ? "strike-through" : "";
27
- const priceForSpecialRent = () => hasSpecialRent() ? /*#__PURE__*/_react.default.createElement("span", {
28
- className: "special"
29
- }, "Now starting at ", (0, _Utils.toUSD)(unit.discountedRent), "/mo") : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
30
- return /*#__PURE__*/_react.default.createElement("span", {
31
- className: invertColor ? "floorplan-price floorplan-price-inverted" : "floorplan-price"
32
- }, /*#__PURE__*/_react.default.createElement("span", {
33
- className: getRentClass()
34
- }, /*#__PURE__*/_react.default.createElement("span", {
35
- className: "rent"
36
- }, (0, _Utils.toUSD)(unit.rent))), /*#__PURE__*/_react.default.createElement("span", {
37
- className: "floorplan-special-price"
38
- }, priceForSpecialRent()));
39
- };
40
- exports.UnitPrice = UnitPrice;
41
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9VdGlscyIsIl9tb21lbnQiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIlVuaXRQcmljZSIsIl9yZWYiLCJ1bml0IiwiaW52ZXJ0Q29sb3IiLCJoYXNTcGVjaWFsUmVudCIsImN1cnJlbnREYXRlIiwibW9tZW50IiwiZGlzY291bnRlZFJlbnQiLCJkaXNjb3VudGVkUmVudFN0YXJ0RGF0ZSIsImRpc2NvdW50ZWRSZW50RW5kRGF0ZSIsInN0YXJ0RGF0ZSIsImRhdGVUb01vbWVudCIsImVuZERhdGUiLCJpc0JldHdlZW4iLCJnZXRSZW50Q2xhc3MiLCJwcmljZUZvclNwZWNpYWxSZW50IiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsInRvVVNEIiwiRnJhZ21lbnQiLCJyZW50IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91bml0L3NlY3Rpb24vVW5pdFByaWNlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge2RhdGVUb01vbWVudCwgdG9VU0R9IGZyb20gXCIuLi8uLi91dGlscy9VdGlsc1wiO1xuaW1wb3J0IG1vbWVudCBmcm9tIFwibW9tZW50L21vbWVudFwiO1xuaW1wb3J0IFwiLi4vLi4vZmxvb3JwbGFuL2NhcmQvYXNzZXRzL0Zsb29ycGxhblByaWNlLnNjc3NcIjtcbmltcG9ydCB7VW5pdEZsb29ycGxhbn0gZnJvbSBcIi4uL2RhdGEvVW5pdFwiO1xuXG5leHBvcnQgY29uc3QgVW5pdFByaWNlOiBSZWFjdC5GQzxVbml0UHJpY2VQcm9wcz4gPSAoXG4gICAge1xuICAgICAgICB1bml0LFxuICAgICAgICBpbnZlcnRDb2xvclxuICAgIH0pID0+IHtcblxuICAgIGNvbnN0IGhhc1NwZWNpYWxSZW50ID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBjdXJyZW50RGF0ZSA9IG1vbWVudCgpO1xuXG4gICAgICAgIGlmICh1bml0LmRpc2NvdW50ZWRSZW50ICYmIHVuaXQuZGlzY291bnRlZFJlbnRTdGFydERhdGUgJiYgdW5pdC5kaXNjb3VudGVkUmVudEVuZERhdGUpIHtcbiAgICAgICAgICAgIGNvbnN0IHN0YXJ0RGF0ZSA9IGRhdGVUb01vbWVudCh1bml0LmRpc2NvdW50ZWRSZW50U3RhcnREYXRlKTtcbiAgICAgICAgICAgIGNvbnN0IGVuZERhdGUgPSBkYXRlVG9Nb21lbnQodW5pdC5kaXNjb3VudGVkUmVudEVuZERhdGUpO1xuXG4gICAgICAgICAgICByZXR1cm4gY3VycmVudERhdGUuaXNCZXR3ZWVuKHN0YXJ0RGF0ZSwgZW5kRGF0ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IGdldFJlbnRDbGFzcyA9ICgpID0+IGhhc1NwZWNpYWxSZW50KCkgPyBcInN0cmlrZS10aHJvdWdoXCIgOiBcIlwiO1xuXG5cbiAgICBjb25zdCBwcmljZUZvclNwZWNpYWxSZW50ID0gKCkgPT4gaGFzU3BlY2lhbFJlbnQoKSA/IDxzcGFuXG4gICAgICAgIGNsYXNzTmFtZT1cInNwZWNpYWxcIj5Ob3cgc3RhcnRpbmcgYXQge3RvVVNEKHVuaXQuZGlzY291bnRlZFJlbnQhISl9L21vPC9zcGFuPiA6IDw+PC8+XG4gICAgcmV0dXJuIChcbiAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtpbnZlcnRDb2xvciA/IFwiZmxvb3JwbGFuLXByaWNlIGZsb29ycGxhbi1wcmljZS1pbnZlcnRlZFwiIDogXCJmbG9vcnBsYW4tcHJpY2VcIn0+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRSZW50Q2xhc3MoKX0+PHNwYW4gY2xhc3NOYW1lPVwicmVudFwiPnt0b1VTRCh1bml0LnJlbnQpfTwvc3Bhbj48L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJmbG9vcnBsYW4tc3BlY2lhbC1wcmljZVwiPntwcmljZUZvclNwZWNpYWxSZW50KCl9PC9zcGFuPlxuICAgICAgICAgICAgPC9zcGFuPlxuXG4gICAgKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVbml0UHJpY2VQcm9wcyB7XG4gICAgdW5pdDogVW5pdEZsb29ycGxhbjtcbiAgICBpbnZlcnRDb2xvcj86IGJvb2xlYW47XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE9BQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBQSxPQUFBO0FBQXlELFNBQUFELHVCQUFBSSxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBR2xELE1BQU1HLFNBQW1DLEdBQUdDLElBQUEsSUFJekM7RUFBQSxJQUhOO0lBQ0lDLElBQUk7SUFDSkM7RUFDSixDQUFDLEdBQUFGLElBQUE7RUFFRCxNQUFNRyxjQUFjLEdBQUdBLENBQUEsS0FBTTtJQUN6QixNQUFNQyxXQUFXLEdBQUcsSUFBQUMsZUFBTSxFQUFDLENBQUM7SUFFNUIsSUFBSUosSUFBSSxDQUFDSyxjQUFjLElBQUlMLElBQUksQ0FBQ00sdUJBQXVCLElBQUlOLElBQUksQ0FBQ08scUJBQXFCLEVBQUU7TUFDbkYsTUFBTUMsU0FBUyxHQUFHLElBQUFDLG1CQUFZLEVBQUNULElBQUksQ0FBQ00sdUJBQXVCLENBQUM7TUFDNUQsTUFBTUksT0FBTyxHQUFHLElBQUFELG1CQUFZLEVBQUNULElBQUksQ0FBQ08scUJBQXFCLENBQUM7TUFFeEQsT0FBT0osV0FBVyxDQUFDUSxTQUFTLENBQUNILFNBQVMsRUFBRUUsT0FBTyxDQUFDO0lBQ3BEO0lBQ0EsT0FBTyxLQUFLO0VBQ2hCLENBQUM7RUFFRCxNQUFNRSxZQUFZLEdBQUdBLENBQUEsS0FBTVYsY0FBYyxDQUFDLENBQUMsR0FBRyxnQkFBZ0IsR0FBRyxFQUFFO0VBR25FLE1BQU1XLG1CQUFtQixHQUFHQSxDQUFBLEtBQU1YLGNBQWMsQ0FBQyxDQUFDLGdCQUFHWixNQUFBLENBQUFPLE9BQUEsQ0FBQWlCLGFBQUE7SUFDakRDLFNBQVMsRUFBQztFQUFTLEdBQUMsa0JBQWdCLEVBQUMsSUFBQUMsWUFBSyxFQUFDaEIsSUFBSSxDQUFDSyxjQUFnQixDQUFDLEVBQUMsS0FBUyxDQUFDLGdCQUFHZixNQUFBLENBQUFPLE9BQUEsQ0FBQWlCLGFBQUEsQ0FBQXhCLE1BQUEsQ0FBQU8sT0FBQSxDQUFBb0IsUUFBQSxNQUFJLENBQUM7RUFDeEYsb0JBQ0kzQixNQUFBLENBQUFPLE9BQUEsQ0FBQWlCLGFBQUE7SUFBTUMsU0FBUyxFQUFFZCxXQUFXLEdBQUcsMENBQTBDLEdBQUc7RUFBa0IsZ0JBQ3RGWCxNQUFBLENBQUFPLE9BQUEsQ0FBQWlCLGFBQUE7SUFBTUMsU0FBUyxFQUFFSCxZQUFZLENBQUM7RUFBRSxnQkFBQ3RCLE1BQUEsQ0FBQU8sT0FBQSxDQUFBaUIsYUFBQTtJQUFNQyxTQUFTLEVBQUM7RUFBTSxHQUFFLElBQUFDLFlBQUssRUFBQ2hCLElBQUksQ0FBQ2tCLElBQUksQ0FBUSxDQUFPLENBQUMsZUFDNUY1QixNQUFBLENBQUFPLE9BQUEsQ0FBQWlCLGFBQUE7SUFBTUMsU0FBUyxFQUFDO0VBQXlCLEdBQUVGLG1CQUFtQixDQUFDLENBQVEsQ0FDakUsQ0FBQztBQUduQixDQUFDO0FBQUFNLE9BQUEsQ0FBQXJCLFNBQUEsR0FBQUEsU0FBQSJ9