@renaissancerentals/renaissance-component 10.0.26 → 10.0.29
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.
- package/lib/asset/service/AssetService.js +3 -3
- package/lib/floorplan/card/FloorplanCard.js +7 -7
- package/lib/floorplan/card/FloorplanCardSlider.js +13 -73
- package/lib/floorplan/card/FloorplanSliderCard.d.ts +8 -0
- package/lib/floorplan/card/FloorplanSliderCard.js +50 -0
- package/lib/floorplan/card/SimilarFloorplanCard.js +24 -42
- package/lib/floorplan/card/TestimonialsCard.js +8 -44
- package/lib/floorplan/card/assets/SimilarFloorplanCard.scss +47 -37
- package/lib/floorplan/card/assets/TestimonialsCard.scss +3 -23
- package/lib/floorplan/card/assets/camera-icon.png +0 -0
- package/lib/floorplan/data/Floorplan.d.ts +3 -1
- package/lib/floorplan/data/Floorplan.js +1 -1
- package/lib/floorplan/section/FloorplanHero.d.ts +1 -0
- package/lib/floorplan/section/FloorplanHero.js +151 -16
- package/lib/floorplan/section/FloorplanSection.d.ts +0 -1
- package/lib/floorplan/section/FloorplanSection.js +75 -31
- package/lib/floorplan/section/HeroBadgeStats.d.ts +10 -0
- package/lib/floorplan/section/HeroBadgeStats.js +86 -0
- package/lib/floorplan/section/assets/BadgeStats.scss +5 -0
- package/lib/floorplan/section/assets/FloorplanHero.scss +90 -1
- package/lib/floorplan/section/assets/FloorplanSection.scss +0 -3
- package/lib/floorplan/section/assets/HeroBadgeStats.scss +74 -0
- package/lib/gallery/GalleryHeroMain.d.ts +13 -0
- package/lib/gallery/GalleryHeroMain.js +101 -0
- package/lib/gallery/GalleryHeroMobile.d.ts +11 -0
- package/lib/gallery/GalleryHeroMobile.js +101 -0
- package/lib/gallery/HeroImageCard.d.ts +8 -0
- package/lib/gallery/HeroImageCard.js +34 -0
- package/lib/gallery/assets/GalleryHero.scss +46 -153
- package/lib/gallery/assets/HeroImageCard.scss +29 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +4 -4
- package/lib/property/assets/PropertyLocation.scss +1 -0
- package/lib/utils/Utils.d.ts +1 -1
- package/lib/utils/Utils.js +7 -5
- package/package.json +2 -2
- package/lib/gallery/GalleryHero.d.ts +0 -10
- package/lib/gallery/GalleryHero.js +0 -278
|
@@ -31,6 +31,10 @@ var _SimilarFloorplanCard = require("../card/SimilarFloorplanCard");
|
|
|
31
31
|
|
|
32
32
|
var _muncherUi = require("@contentmunch/muncher-ui");
|
|
33
33
|
|
|
34
|
+
var _moment = _interopRequireDefault(require("moment"));
|
|
35
|
+
|
|
36
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
37
|
+
|
|
34
38
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
35
39
|
|
|
36
40
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -54,12 +58,11 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
54
58
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
55
59
|
|
|
56
60
|
var FloorplanSection = function FloorplanSection(_ref) {
|
|
57
|
-
var _floorplan$units$, _floorplan$units$2;
|
|
61
|
+
var _floorplan$units$, _floorplan$units$2, _floorplan$property;
|
|
58
62
|
|
|
59
63
|
var contactClickHandler = _ref.contactClickHandler,
|
|
60
64
|
applyClickHandler = _ref.applyClickHandler,
|
|
61
|
-
floorplanId = _ref.floorplanId
|
|
62
|
-
contactPhone = _ref.contactPhone;
|
|
65
|
+
floorplanId = _ref.floorplanId;
|
|
63
66
|
|
|
64
67
|
var _useState = (0, _react.useState)({}),
|
|
65
68
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -91,6 +94,17 @@ var FloorplanSection = function FloorplanSection(_ref) {
|
|
|
91
94
|
errorLoading = _useState12[0],
|
|
92
95
|
setErrorLoading = _useState12[1];
|
|
93
96
|
|
|
97
|
+
var mapRef = (0, _react.useRef)(null);
|
|
98
|
+
|
|
99
|
+
var handleRefToMap = function handleRefToMap() {
|
|
100
|
+
var _mapRef$current;
|
|
101
|
+
|
|
102
|
+
(_mapRef$current = mapRef.current) === null || _mapRef$current === void 0 ? void 0 : _mapRef$current.scrollIntoView({
|
|
103
|
+
behavior: "smooth",
|
|
104
|
+
block: "center"
|
|
105
|
+
});
|
|
106
|
+
};
|
|
107
|
+
|
|
94
108
|
(0, _react.useEffect)(function () {
|
|
95
109
|
Promise.all([(0, _FloorplanService.getFloorplan)(floorplanId), (0, _FloorplanService.getFloorplanVariations)(floorplanId), (0, _FloorplanService.getSimilarFloorplans)(floorplanId), (0, _FloorplanService.getTestimonials)(floorplanId)]).then(function (data) {
|
|
96
110
|
var floorplanData = _objectSpread({}, data[0]);
|
|
@@ -109,6 +123,19 @@ var FloorplanSection = function FloorplanSection(_ref) {
|
|
|
109
123
|
setIsLoading(false);
|
|
110
124
|
});
|
|
111
125
|
}, [floorplanId]);
|
|
126
|
+
|
|
127
|
+
var availableDates = function availableDates() {
|
|
128
|
+
var sortAvailabileDates = function sortAvailabileDates(a, b) {
|
|
129
|
+
return (0, _moment.default)(a, "MMMM YYYY").diff((0, _moment.default)(b, "MMMM YYYY"));
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
var dates = new Set();
|
|
133
|
+
floorplan.units.forEach(function (unit) {
|
|
134
|
+
dates.add((0, _Utils.dateToMoment)(unit.moveInDate).format("MMMM YYYY"));
|
|
135
|
+
});
|
|
136
|
+
return Array.from(dates).sort(sortAvailabileDates);
|
|
137
|
+
};
|
|
138
|
+
|
|
112
139
|
return /*#__PURE__*/_react.default.createElement("section", {
|
|
113
140
|
className: "section-floorplan"
|
|
114
141
|
}, isLoading ? /*#__PURE__*/_react.default.createElement("section", {
|
|
@@ -118,7 +145,8 @@ var FloorplanSection = function FloorplanSection(_ref) {
|
|
|
118
145
|
}, /*#__PURE__*/_react.default.createElement("h2", null, "Uh-oh, this is a 404")) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_FloorplanHero.FloorplanHero, {
|
|
119
146
|
floorplan: floorplan,
|
|
120
147
|
contactClickHandler: contactClickHandler,
|
|
121
|
-
applyClickHandler: applyClickHandler
|
|
148
|
+
applyClickHandler: applyClickHandler,
|
|
149
|
+
handleRefToMap: handleRefToMap
|
|
122
150
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
123
151
|
className: "container"
|
|
124
152
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -129,56 +157,72 @@ var FloorplanSection = function FloorplanSection(_ref) {
|
|
|
129
157
|
className: "floorplan-card--featured"
|
|
130
158
|
}, floorplan.bedroom, " Bedroom | ", floorplan.bathroom, " Bathroom ", (0, _Utils.enumToString)(floorplan.style)), /*#__PURE__*/_react.default.createElement("p", {
|
|
131
159
|
className: "floorplan-card--featured"
|
|
132
|
-
},
|
|
160
|
+
}, (0, _Utils.rangeFrom)(floorplan.units, "squareFoot"), " Square Feet"), /*#__PURE__*/_react.default.createElement("p", {
|
|
133
161
|
className: "floorplan-card--featured"
|
|
134
162
|
}, "$", (0, _Utils.rangeFrom)(floorplan.units, "rent"), "/mo"), /*#__PURE__*/_react.default.createElement("p", {
|
|
135
163
|
className: "floorplan-card--featured"
|
|
136
164
|
}, "$", (0, _Utils.rangeFrom)(floorplan.units, "deposit"), " Security Deposit"), /*#__PURE__*/_react.default.createElement("p", null, floorplan.description)), floorplan.amenities.length > 0 ? /*#__PURE__*/_react.default.createElement(_Card.Card, {
|
|
137
165
|
title: "Amenities"
|
|
138
|
-
}, floorplan.amenities.filter(function (amenity) {
|
|
166
|
+
}, /*#__PURE__*/_react.default.createElement(_muncherUi.Ul, null, floorplan.amenities.filter(function (amenity) {
|
|
139
167
|
return amenity.featured;
|
|
140
168
|
}).map(function (amenity) {
|
|
141
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
142
|
-
|
|
143
|
-
|
|
169
|
+
return /*#__PURE__*/_react.default.createElement(_muncherUi.Li, {
|
|
170
|
+
key: "floorplan-amenity-" + amenity.id,
|
|
171
|
+
isFeatured: true
|
|
144
172
|
}, amenity.name);
|
|
145
|
-
}),
|
|
173
|
+
}), floorplan.amenities.filter(function (amenity) {
|
|
146
174
|
return !amenity.featured;
|
|
147
175
|
}).map(function (amenity) {
|
|
148
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
176
|
+
return /*#__PURE__*/_react.default.createElement(_muncherUi.Li, {
|
|
149
177
|
key: "floorplan-amenity-" + amenity.id
|
|
150
178
|
}, amenity.name);
|
|
151
|
-
})), floorplanVariations.length > 0 ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("h5", null, "Variations"), /*#__PURE__*/_react.default.createElement(
|
|
152
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
179
|
+
})), floorplanVariations.length > 0 ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("h5", null, "Variations"), /*#__PURE__*/_react.default.createElement(_muncherUi.Ul, null, floorplanVariations.map(function (variation, i) {
|
|
180
|
+
return /*#__PURE__*/_react.default.createElement(_muncherUi.Li, {
|
|
153
181
|
key: "floorplan-variation-" + i
|
|
154
182
|
}, variation.variation);
|
|
155
183
|
}))) : "") : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), testimonials.length > 0 ? /*#__PURE__*/_react.default.createElement(_TestimonialsCard.TestimonialsCard, {
|
|
156
184
|
testimonials: testimonials
|
|
157
|
-
}) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), /*#__PURE__*/_react.default.createElement(_Card.Card, null, /*#__PURE__*/_react.default.createElement(
|
|
185
|
+
}) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), /*#__PURE__*/_react.default.createElement(_Card.Card, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
186
|
+
ref: mapRef,
|
|
187
|
+
id: "location"
|
|
188
|
+
}, /*#__PURE__*/_react.default.createElement(_MapSection.MapSection, {
|
|
158
189
|
src: (0, _Utils.addressToGoogleMap)((_floorplan$units$ = floorplan.units[0]) === null || _floorplan$units$ === void 0 ? void 0 : _floorplan$units$.address, (_floorplan$units$2 = floorplan.units[0]) === null || _floorplan$units$2 === void 0 ? void 0 : _floorplan$units$2.zipcode)
|
|
159
|
-
})), /*#__PURE__*/_react.default.createElement(_Card.Card, {
|
|
190
|
+
}))), /*#__PURE__*/_react.default.createElement(_Card.Card, {
|
|
160
191
|
title: "Pets"
|
|
161
|
-
}, /*#__PURE__*/_react.default.createElement("h5", null, "Permitted"), /*#__PURE__*/_react.default.createElement(
|
|
162
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
163
|
-
key: "floorplan-permitted-pet-" + i
|
|
192
|
+
}, /*#__PURE__*/_react.default.createElement("h5", null, "Permitted"), /*#__PURE__*/_react.default.createElement(_muncherUi.Ul, null, (0, _FloorplanService.permittedPets)(floorplan).map(function (pet, i) {
|
|
193
|
+
return /*#__PURE__*/_react.default.createElement(_muncherUi.Li, {
|
|
194
|
+
key: "floorplan-permitted-pet-" + i,
|
|
195
|
+
bulletIcon: "check",
|
|
196
|
+
bulletColor: "green"
|
|
164
197
|
}, pet);
|
|
165
|
-
})), (0, _FloorplanService.notPermittedPets)(floorplan).length > 0 ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("h5", null, "Not Permitted"), /*#__PURE__*/_react.default.createElement(
|
|
166
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
167
|
-
key: "floorplan-not-permitted-pet-" + i
|
|
198
|
+
})), (0, _FloorplanService.notPermittedPets)(floorplan).length > 0 ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("h5", null, "Not Permitted"), /*#__PURE__*/_react.default.createElement(_muncherUi.Ul, null, (0, _FloorplanService.notPermittedPets)(floorplan).map(function (pet, i) {
|
|
199
|
+
return /*#__PURE__*/_react.default.createElement(_muncherUi.Li, {
|
|
200
|
+
key: "floorplan-not-permitted-pet-" + i,
|
|
201
|
+
bulletColor: "brown",
|
|
202
|
+
bulletIcon: "close"
|
|
168
203
|
}, pet);
|
|
169
204
|
}))) : "", (0, _FloorplanService.petPolicy)(floorplan) ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("h5", null, "Additional Information"), /*#__PURE__*/_react.default.createElement("p", null, (0, _FloorplanService.petPolicy)(floorplan))) : ""), /*#__PURE__*/_react.default.createElement(_Card.Card, {
|
|
205
|
+
title: "Availability"
|
|
206
|
+
}, /*#__PURE__*/_react.default.createElement(_muncherUi.Ul, null, availableDates().map(function (availableDate) {
|
|
207
|
+
return /*#__PURE__*/_react.default.createElement(_muncherUi.Li, {
|
|
208
|
+
key: "floorplan-unit-availability-" + availableDate,
|
|
209
|
+
bulletIcon: "calendar"
|
|
210
|
+
}, "Available in ", /*#__PURE__*/_react.default.createElement("strong", null, (0, _Utils.capitalizeFirstLetter)(availableDate)));
|
|
211
|
+
}))), /*#__PURE__*/_react.default.createElement(_Card.Card, {
|
|
170
212
|
title: "Utilities"
|
|
171
|
-
}, /*#__PURE__*/_react.default.createElement("h5", null, "Paid By Landlord"), /*#__PURE__*/_react.default.createElement(
|
|
213
|
+
}, /*#__PURE__*/_react.default.createElement("h5", null, "Paid By Landlord"), /*#__PURE__*/_react.default.createElement(_muncherUi.Ul, null, floorplan.utilities.filter(function (utility) {
|
|
172
214
|
return utility.type === _Floorplan.UtilityType.INCLUDED_UTILITY;
|
|
173
215
|
}).map(function (utility) {
|
|
174
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
175
|
-
key: "floorplan-included-utility-" + utility.id
|
|
216
|
+
return /*#__PURE__*/_react.default.createElement(_muncherUi.Li, {
|
|
217
|
+
key: "floorplan-included-utility-" + utility.id,
|
|
218
|
+
bulletIcon: "home"
|
|
176
219
|
}, (0, _Utils.capitalizeFirstLetter)(utility.name));
|
|
177
|
-
})), /*#__PURE__*/_react.default.createElement("h5", null, "Paid By Tenant"), /*#__PURE__*/_react.default.createElement(
|
|
220
|
+
})), /*#__PURE__*/_react.default.createElement("h5", null, "Paid By Tenant"), /*#__PURE__*/_react.default.createElement(_muncherUi.Ul, null, floorplan.utilities.filter(function (utility) {
|
|
178
221
|
return utility.type === _Floorplan.UtilityType.RESIDENT_UTILITY;
|
|
179
222
|
}).map(function (utility) {
|
|
180
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
181
|
-
key: "floorplan-resident-utility-" + utility.id
|
|
223
|
+
return /*#__PURE__*/_react.default.createElement(_muncherUi.Li, {
|
|
224
|
+
key: "floorplan-resident-utility-" + utility.id,
|
|
225
|
+
bulletIcon: "dollar"
|
|
182
226
|
}, (0, _Utils.capitalizeFirstLetter)(utility.name));
|
|
183
227
|
}))), similarFloorplans.length > 0 ? /*#__PURE__*/_react.default.createElement(_SimilarFloorplanCard.SimilarFloorplanCard, {
|
|
184
228
|
similarFloorplans: similarFloorplans
|
|
@@ -186,9 +230,9 @@ var FloorplanSection = function FloorplanSection(_ref) {
|
|
|
186
230
|
className: "contact-card"
|
|
187
231
|
}, /*#__PURE__*/_react.default.createElement(_Card.Card, {
|
|
188
232
|
featured: true
|
|
189
|
-
}, /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement("i", null, "Questions?")), /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement("i", null, "Call or text us anytime:")), /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement("a", {
|
|
190
|
-
href: "tel:" +
|
|
191
|
-
}, (0, _Utils.formatPhoneNumber)(
|
|
233
|
+
}, /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement("i", null, "Questions?")), /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement("i", null, "Call or text us anytime:")), (_floorplan$property = floorplan.property) !== null && _floorplan$property !== void 0 && _floorplan$property.phone ? /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement("a", {
|
|
234
|
+
href: "tel:" + floorplan.property.phone
|
|
235
|
+
}, (0, _Utils.formatPhoneNumber)(floorplan.property.phone))) : "", /*#__PURE__*/_react.default.createElement(_muncherUi.Button, {
|
|
192
236
|
variant: "tertiary",
|
|
193
237
|
onClick: contactClickHandler,
|
|
194
238
|
size: "large"
|
|
@@ -196,4 +240,4 @@ var FloorplanSection = function FloorplanSection(_ref) {
|
|
|
196
240
|
};
|
|
197
241
|
|
|
198
242
|
exports.FloorplanSection = FloorplanSection;
|
|
199
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGbG9vcnBsYW5TZWN0aW9uIiwiY29udGFjdENsaWNrSGFuZGxlciIsImFwcGx5Q2xpY2tIYW5kbGVyIiwiZmxvb3JwbGFuSWQiLCJjb250YWN0UGhvbmUiLCJ1c2VTdGF0ZSIsImZsb29ycGxhbiIsInNldEZsb29ycGxhbiIsInNpbWlsYXJGbG9vcnBsYW5zIiwic2V0U2ltaWxhckZsb29ycGxhbnMiLCJmbG9vcnBsYW5WYXJpYXRpb25zIiwic2V0Rmxvb3JwbGFuVmFyaWF0aW9ucyIsInRlc3RpbW9uaWFscyIsInNldFRlc3RpbW9uaWFscyIsImlzTG9hZGluZyIsInNldElzTG9hZGluZyIsImVycm9yTG9hZGluZyIsInNldEVycm9yTG9hZGluZyIsInVzZUVmZmVjdCIsIlByb21pc2UiLCJhbGwiLCJnZXRGbG9vcnBsYW4iLCJnZXRGbG9vcnBsYW5WYXJpYXRpb25zIiwiZ2V0U2ltaWxhckZsb29ycGxhbnMiLCJnZXRUZXN0aW1vbmlhbHMiLCJ0aGVuIiwiZGF0YSIsImZsb29ycGxhbkRhdGEiLCJhY3RpdmVVbml0cyIsInVuaXRzIiwiZmlsdGVyIiwidW5pdCIsImFjdGl2ZSIsImNhdGNoIiwiZmluYWxseSIsImJlZHJvb20iLCJiYXRocm9vbSIsImVudW1Ub1N0cmluZyIsInN0eWxlIiwicmFuZ2VGcm9tIiwiZGVzY3JpcHRpb24iLCJhbWVuaXRpZXMiLCJsZW5ndGgiLCJhbWVuaXR5IiwiZmVhdHVyZWQiLCJtYXAiLCJpZCIsIm5hbWUiLCJ2YXJpYXRpb24iLCJpIiwiYWRkcmVzc1RvR29vZ2xlTWFwIiwiYWRkcmVzcyIsInppcGNvZGUiLCJwZXJtaXR0ZWRQZXRzIiwicGV0Iiwibm90UGVybWl0dGVkUGV0cyIsInBldFBvbGljeSIsInV0aWxpdGllcyIsInV0aWxpdHkiLCJ0eXBlIiwiVXRpbGl0eVR5cGUiLCJJTkNMVURFRF9VVElMSVRZIiwiY2FwaXRhbGl6ZUZpcnN0TGV0dGVyIiwiUkVTSURFTlRfVVRJTElUWSIsImZvcm1hdFBob25lTnVtYmVyIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Zsb29ycGxhbi9zZWN0aW9uL0Zsb29ycGxhblNlY3Rpb24udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge3VzZUVmZmVjdCwgdXNlU3RhdGV9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHtGbG9vcnBsYW4sIEZsb29ycGxhblZhcmlhdGlvbiwgU2ltaWxhckZsb29ycGxhbiwgVGVzdGltb25pYWwsIFV0aWxpdHlUeXBlfSBmcm9tIFwiLi4vZGF0YS9GbG9vcnBsYW5cIjtcbmltcG9ydCB7XG4gICAgZ2V0Rmxvb3JwbGFuLFxuICAgIGdldEZsb29ycGxhblZhcmlhdGlvbnMsXG4gICAgZ2V0U2ltaWxhckZsb29ycGxhbnMsXG4gICAgZ2V0VGVzdGltb25pYWxzLFxuICAgIG5vdFBlcm1pdHRlZFBldHMsXG4gICAgcGVybWl0dGVkUGV0cyxcbiAgICBwZXRQb2xpY3lcbn0gZnJvbSBcIi4uL3NlcnZpY2UvRmxvb3JwbGFuU2VydmljZVwiO1xuaW1wb3J0IFwiLi9hc3NldHMvRmxvb3JwbGFuU2VjdGlvbi5zY3NzXCI7XG5pbXBvcnQge0dhbGxlcnlIZXJvU2tlbGV0b259IGZyb20gXCIuLi8uLi9nYWxsZXJ5L0dhbGxlcnlIZXJvU2tlbGV0b25cIjtcbmltcG9ydCB7Rmxvb3JwbGFuSGVyb30gZnJvbSBcIi4vRmxvb3JwbGFuSGVyb1wiO1xuaW1wb3J0IHthZGRyZXNzVG9Hb29nbGVNYXAsIGNhcGl0YWxpemVGaXJzdExldHRlciwgZW51bVRvU3RyaW5nLCBmb3JtYXRQaG9uZU51bWJlciwgcmFuZ2VGcm9tfSBmcm9tIFwiLi4vLi4vdXRpbHMvVXRpbHNcIjtcbmltcG9ydCB7Q2FyZH0gZnJvbSBcIi4uLy4uL2NhcmQvQ2FyZFwiO1xuaW1wb3J0IHtUZXN0aW1vbmlhbHNDYXJkfSBmcm9tIFwiLi4vY2FyZC9UZXN0aW1vbmlhbHNDYXJkXCI7XG5pbXBvcnQge01hcFNlY3Rpb259IGZyb20gXCIuLi8uLi9tYXAvTWFwU2VjdGlvblwiO1xuaW1wb3J0IHtTaW1pbGFyRmxvb3JwbGFuQ2FyZH0gZnJvbSBcIi4uL2NhcmQvU2ltaWxhckZsb29ycGxhbkNhcmRcIjtcbmltcG9ydCB7QnV0dG9ufSBmcm9tIFwiQGNvbnRlbnRtdW5jaC9tdW5jaGVyLXVpXCI7XG5cbmV4cG9ydCBjb25zdCBGbG9vcnBsYW5TZWN0aW9uOiBSZWFjdC5GQzxGbG9vcnBsYW5TZWN0aW9uUHJvcHM+ID0gKFxuICAgIHtcbiAgICAgICAgY29udGFjdENsaWNrSGFuZGxlcixcbiAgICAgICAgYXBwbHlDbGlja0hhbmRsZXIsXG4gICAgICAgIGZsb29ycGxhbklkLFxuICAgICAgICBjb250YWN0UGhvbmVcbiAgICB9KSA9PiB7XG4gICAgY29uc3QgW2Zsb29ycGxhbiwgc2V0Rmxvb3JwbGFuXSA9IHVzZVN0YXRlPEZsb29ycGxhbj4oe30gYXMgRmxvb3JwbGFuKTtcbiAgICBjb25zdCBbc2ltaWxhckZsb29ycGxhbnMsIHNldFNpbWlsYXJGbG9vcnBsYW5zXSA9IHVzZVN0YXRlPFNpbWlsYXJGbG9vcnBsYW5bXT4oW10pO1xuICAgIGNvbnN0IFtmbG9vcnBsYW5WYXJpYXRpb25zLCBzZXRGbG9vcnBsYW5WYXJpYXRpb25zXSA9IHVzZVN0YXRlPEZsb29ycGxhblZhcmlhdGlvbltdPihbXSk7XG4gICAgY29uc3QgW3Rlc3RpbW9uaWFscywgc2V0VGVzdGltb25pYWxzXSA9IHVzZVN0YXRlPFRlc3RpbW9uaWFsW10+KFtdKTtcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUodHJ1ZSk7XG4gICAgY29uc3QgW2Vycm9yTG9hZGluZywgc2V0RXJyb3JMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBQcm9taXNlLmFsbChbXG4gICAgICAgICAgICBnZXRGbG9vcnBsYW4oZmxvb3JwbGFuSWQpLFxuICAgICAgICAgICAgZ2V0Rmxvb3JwbGFuVmFyaWF0aW9ucyhmbG9vcnBsYW5JZCksXG4gICAgICAgICAgICBnZXRTaW1pbGFyRmxvb3JwbGFucyhmbG9vcnBsYW5JZCksXG4gICAgICAgICAgICBnZXRUZXN0aW1vbmlhbHMoZmxvb3JwbGFuSWQpXG4gICAgICAgIF0pXG4gICAgICAgICAgICAudGhlbigoZGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZsb29ycGxhbkRhdGEgPSB7Li4uZGF0YVswXX07XG4gICAgICAgICAgICAgICAgY29uc3QgYWN0aXZlVW5pdHMgPSBmbG9vcnBsYW5EYXRhLnVuaXRzLmZpbHRlcih1bml0ID0+IHVuaXQuYWN0aXZlKTtcbiAgICAgICAgICAgICAgICBmbG9vcnBsYW5EYXRhLnVuaXRzID0gYWN0aXZlVW5pdHM7XG4gICAgICAgICAgICAgICAgc2V0Rmxvb3JwbGFuKGZsb29ycGxhbkRhdGEpO1xuICAgICAgICAgICAgICAgIHNldEZsb29ycGxhblZhcmlhdGlvbnMoZGF0YVsxXSk7XG4gICAgICAgICAgICAgICAgc2V0U2ltaWxhckZsb29ycGxhbnMoZGF0YVsyXSk7XG4gICAgICAgICAgICAgICAgc2V0VGVzdGltb25pYWxzKGRhdGFbM10pO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0RXJyb3JMb2FkaW5nKHRydWUpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICB9LCBbZmxvb3JwbGFuSWRdKTtcbiAgICByZXR1cm4gKFxuICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJzZWN0aW9uLWZsb29ycGxhblwiPlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlzTG9hZGluZyA/IDxzZWN0aW9uIGNsYXNzTmFtZT1cInNlY3Rpb24tZmxvb3JwbGFuLS1oZXJvXCI+PEdhbGxlcnlIZXJvU2tlbGV0b24vPjwvc2VjdGlvbj4gOiA8PlxuICAgICAgICAgICAgICAgICAgICB7ZXJyb3JMb2FkaW5nID9cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzTmFtZT1cImRpdi1mdWxsLS1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDI+VWgtb2gsIHRoaXMgaXMgYSA0MDQ8L2gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPiA6XG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGbG9vcnBsYW5IZXJvIGZsb29ycGxhbj17Zmxvb3JwbGFufSBjb250YWN0Q2xpY2tIYW5kbGVyPXtjb250YWN0Q2xpY2tIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGx5Q2xpY2tIYW5kbGVyPXthcHBseUNsaWNrSGFuZGxlcn0vPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxvb3JwbGFuLS1jYXJkc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQgdGl0bGU9XCJEZXRhaWxzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiZmxvb3JwbGFuLWNhcmQtLWZlYXR1cmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtmbG9vcnBsYW4uYmVkcm9vbX0gQmVkcm9vbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHtmbG9vcnBsYW4uYmF0aHJvb219IEJhdGhyb29tIHtlbnVtVG9TdHJpbmcoZmxvb3JwbGFuLnN0eWxlKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiZmxvb3JwbGFuLWNhcmQtLWZlYXR1cmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7cmFuZ2VGcm9tKGZsb29ycGxhbi51bml0cywgXCJzcXVhcmVGb290XCIpfSBTcXVhcmUgRmVldFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJmbG9vcnBsYW4tY2FyZC0tZmVhdHVyZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtyYW5nZUZyb20oZmxvb3JwbGFuLnVuaXRzLCBcInJlbnRcIil9L21vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImZsb29ycGxhbi1jYXJkLS1mZWF0dXJlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke3JhbmdlRnJvbShmbG9vcnBsYW4udW5pdHMsIFwiZGVwb3NpdFwiKX0gU2VjdXJpdHkgRGVwb3NpdDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2Zsb29ycGxhbi5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NhcmQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuLmFtZW5pdGllcy5sZW5ndGggPiAwID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQgdGl0bGU9XCJBbWVuaXRpZXNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW4uYW1lbml0aWVzLmZpbHRlcihhbWVuaXR5ID0+IGFtZW5pdHkuZmVhdHVyZWQpLm1hcChhbWVuaXR5ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImZsb29ycGxhbi1jYXJkLS1mZWF0dXJlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17XCJmbG9vcnBsYW4tYW1lbml0eS1mZWF0dXJlZC1cIiArIGFtZW5pdHkuaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2FtZW5pdHkubmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW4uYW1lbml0aWVzLmZpbHRlcihhbWVuaXR5ID0+ICFhbWVuaXR5LmZlYXR1cmVkKS5tYXAoYW1lbml0eSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGtleT17XCJmbG9vcnBsYW4tYW1lbml0eS1cIiArIGFtZW5pdHkuaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHthbWVuaXR5Lm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW5WYXJpYXRpb25zLmxlbmd0aCA+IDAgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1PlZhcmlhdGlvbnM8L2g1PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuVmFyaWF0aW9ucy5tYXAoKHZhcmlhdGlvbiwgaSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBrZXk9e1wiZmxvb3JwbGFuLXZhcmlhdGlvbi1cIiArIGl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt2YXJpYXRpb24udmFyaWF0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+IDogXCJcIn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NhcmQ+IDogPD48Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RpbW9uaWFscy5sZW5ndGggPiAwID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRlc3RpbW9uaWFsc0NhcmQgdGVzdGltb25pYWxzPXt0ZXN0aW1vbmlhbHN9Lz4gOiA8PjwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1hcFNlY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPXthZGRyZXNzVG9Hb29nbGVNYXAoZmxvb3JwbGFuLnVuaXRzWzBdPy5hZGRyZXNzLCBmbG9vcnBsYW4udW5pdHNbMF0/LnppcGNvZGUpfS8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NhcmQ+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDYXJkIHRpdGxlPVwiUGV0c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNT5QZXJtaXR0ZWQ8L2g1PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVybWl0dGVkUGV0cyhmbG9vcnBsYW4pLm1hcCgocGV0LCBpKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBrZXk9e1wiZmxvb3JwbGFuLXBlcm1pdHRlZC1wZXQtXCIgKyBpfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3BldH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7bm90UGVybWl0dGVkUGV0cyhmbG9vcnBsYW4pLmxlbmd0aCA+IDAgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PjxoNT5Ob3QgUGVybWl0dGVkPC9oNT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdFBlcm1pdHRlZFBldHMoZmxvb3JwbGFuKS5tYXAoKHBldCwgaSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBrZXk9e1wiZmxvb3JwbGFuLW5vdC1wZXJtaXR0ZWQtcGV0LVwiICsgaX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3BldH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz4gOiBcIlwifVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXRQb2xpY3koZmxvb3JwbGFuKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNT5BZGRpdGlvbmFsIEluZm9ybWF0aW9uPC9oNT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD57cGV0UG9saWN5KGZsb29ycGxhbil9PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+IDogXCJcIlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NhcmQ+XG5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQgdGl0bGU9XCJVdGlsaXRpZXNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDU+UGFpZCBCeSBMYW5kbG9yZDwvaDU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW4udXRpbGl0aWVzLmZpbHRlcih1dGlsaXR5ID0+IHV0aWxpdHkudHlwZSA9PT0gVXRpbGl0eVR5cGUuSU5DTFVERURfVVRJTElUWSkubWFwKHV0aWxpdHkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkga2V5PXtcImZsb29ycGxhbi1pbmNsdWRlZC11dGlsaXR5LVwiICsgdXRpbGl0eS5pZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtjYXBpdGFsaXplRmlyc3RMZXR0ZXIodXRpbGl0eS5uYW1lKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDU+UGFpZCBCeSBUZW5hbnQ8L2g1PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuLnV0aWxpdGllcy5maWx0ZXIodXRpbGl0eSA9PiB1dGlsaXR5LnR5cGUgPT09IFV0aWxpdHlUeXBlLlJFU0lERU5UX1VUSUxJVFkpLm1hcCh1dGlsaXR5ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGtleT17XCJmbG9vcnBsYW4tcmVzaWRlbnQtdXRpbGl0eS1cIiArIHV0aWxpdHkuaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Y2FwaXRhbGl6ZUZpcnN0TGV0dGVyKHV0aWxpdHkubmFtZSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzaW1pbGFyRmxvb3JwbGFucy5sZW5ndGggPiAwID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2ltaWxhckZsb29ycGxhbkNhcmQgc2ltaWxhckZsb29ycGxhbnM9e3NpbWlsYXJGbG9vcnBsYW5zfS8+IDogXCJcIn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb250YWN0LWNhcmRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2FyZCBmZWF0dXJlZD17dHJ1ZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxpPlF1ZXN0aW9ucz88L2k+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48aT5DYWxsIG9yIHRleHQgdXMgYW55dGltZTo8L2k+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj17XCJ0ZWw6XCIgKyBjb250YWN0UGhvbmV9Pntmb3JtYXRQaG9uZU51bWJlcihjb250YWN0UGhvbmUpfTwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIG9uQ2xpY2s9e2NvbnRhY3RDbGlja0hhbmRsZXJ9IHNpemU9XCJsYXJnZVwiPkNvbnRhY3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDCuzwvQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgIH1cblxuICAgICAgICA8L3NlY3Rpb24+XG4gICAgKTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmxvb3JwbGFuU2VjdGlvblByb3BzIHtcbiAgICBjb250YWN0Q2xpY2tIYW5kbGVyOiAoKSA9PiB2b2lkO1xuICAgIGFwcGx5Q2xpY2tIYW5kbGVyOiAoKSA9PiB2b2lkO1xuICAgIGZsb29ycGxhbklkOiBzdHJpbmc7XG4gICAgY29udGFjdFBob25lPzogc3RyaW5nO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFD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
|
|
243
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGbG9vcnBsYW5TZWN0aW9uIiwiY29udGFjdENsaWNrSGFuZGxlciIsImFwcGx5Q2xpY2tIYW5kbGVyIiwiZmxvb3JwbGFuSWQiLCJ1c2VTdGF0ZSIsImZsb29ycGxhbiIsInNldEZsb29ycGxhbiIsInNpbWlsYXJGbG9vcnBsYW5zIiwic2V0U2ltaWxhckZsb29ycGxhbnMiLCJmbG9vcnBsYW5WYXJpYXRpb25zIiwic2V0Rmxvb3JwbGFuVmFyaWF0aW9ucyIsInRlc3RpbW9uaWFscyIsInNldFRlc3RpbW9uaWFscyIsImlzTG9hZGluZyIsInNldElzTG9hZGluZyIsImVycm9yTG9hZGluZyIsInNldEVycm9yTG9hZGluZyIsIm1hcFJlZiIsInVzZVJlZiIsImhhbmRsZVJlZlRvTWFwIiwiY3VycmVudCIsInNjcm9sbEludG9WaWV3IiwiYmVoYXZpb3IiLCJibG9jayIsInVzZUVmZmVjdCIsIlByb21pc2UiLCJhbGwiLCJnZXRGbG9vcnBsYW4iLCJnZXRGbG9vcnBsYW5WYXJpYXRpb25zIiwiZ2V0U2ltaWxhckZsb29ycGxhbnMiLCJnZXRUZXN0aW1vbmlhbHMiLCJ0aGVuIiwiZGF0YSIsImZsb29ycGxhbkRhdGEiLCJhY3RpdmVVbml0cyIsInVuaXRzIiwiZmlsdGVyIiwidW5pdCIsImFjdGl2ZSIsImNhdGNoIiwiZmluYWxseSIsImF2YWlsYWJsZURhdGVzIiwic29ydEF2YWlsYWJpbGVEYXRlcyIsImEiLCJiIiwibW9tZW50IiwiZGlmZiIsImRhdGVzIiwiU2V0IiwiZm9yRWFjaCIsImFkZCIsImRhdGVUb01vbWVudCIsIm1vdmVJbkRhdGUiLCJmb3JtYXQiLCJBcnJheSIsImZyb20iLCJzb3J0IiwiYmVkcm9vbSIsImJhdGhyb29tIiwiZW51bVRvU3RyaW5nIiwic3R5bGUiLCJyYW5nZUZyb20iLCJkZXNjcmlwdGlvbiIsImFtZW5pdGllcyIsImxlbmd0aCIsImFtZW5pdHkiLCJmZWF0dXJlZCIsIm1hcCIsImlkIiwibmFtZSIsInZhcmlhdGlvbiIsImkiLCJhZGRyZXNzVG9Hb29nbGVNYXAiLCJhZGRyZXNzIiwiemlwY29kZSIsInBlcm1pdHRlZFBldHMiLCJwZXQiLCJub3RQZXJtaXR0ZWRQZXRzIiwicGV0UG9saWN5IiwiYXZhaWxhYmxlRGF0ZSIsImNhcGl0YWxpemVGaXJzdExldHRlciIsInV0aWxpdGllcyIsInV0aWxpdHkiLCJ0eXBlIiwiVXRpbGl0eVR5cGUiLCJJTkNMVURFRF9VVElMSVRZIiwiUkVTSURFTlRfVVRJTElUWSIsInByb3BlcnR5IiwicGhvbmUiLCJmb3JtYXRQaG9uZU51bWJlciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9mbG9vcnBsYW4vc2VjdGlvbi9GbG9vcnBsYW5TZWN0aW9uLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHt1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHtGbG9vcnBsYW4sIEZsb29ycGxhblZhcmlhdGlvbiwgU2ltaWxhckZsb29ycGxhbiwgVGVzdGltb25pYWwsIFV0aWxpdHlUeXBlfSBmcm9tIFwiLi4vZGF0YS9GbG9vcnBsYW5cIjtcbmltcG9ydCB7XG4gICAgZ2V0Rmxvb3JwbGFuLFxuICAgIGdldEZsb29ycGxhblZhcmlhdGlvbnMsXG4gICAgZ2V0U2ltaWxhckZsb29ycGxhbnMsXG4gICAgZ2V0VGVzdGltb25pYWxzLFxuICAgIG5vdFBlcm1pdHRlZFBldHMsXG4gICAgcGVybWl0dGVkUGV0cyxcbiAgICBwZXRQb2xpY3lcbn0gZnJvbSBcIi4uL3NlcnZpY2UvRmxvb3JwbGFuU2VydmljZVwiO1xuaW1wb3J0IFwiLi9hc3NldHMvRmxvb3JwbGFuU2VjdGlvbi5zY3NzXCI7XG5pbXBvcnQge0dhbGxlcnlIZXJvU2tlbGV0b259IGZyb20gXCIuLi8uLi9nYWxsZXJ5L0dhbGxlcnlIZXJvU2tlbGV0b25cIjtcbmltcG9ydCB7Rmxvb3JwbGFuSGVyb30gZnJvbSBcIi4vRmxvb3JwbGFuSGVyb1wiO1xuaW1wb3J0IHtcbiAgICBhZGRyZXNzVG9Hb29nbGVNYXAsXG4gICAgY2FwaXRhbGl6ZUZpcnN0TGV0dGVyLFxuICAgIGRhdGVUb01vbWVudCxcbiAgICBlbnVtVG9TdHJpbmcsXG4gICAgZm9ybWF0UGhvbmVOdW1iZXIsXG4gICAgcmFuZ2VGcm9tXG59IGZyb20gXCIuLi8uLi91dGlscy9VdGlsc1wiO1xuaW1wb3J0IHtDYXJkfSBmcm9tIFwiLi4vLi4vY2FyZC9DYXJkXCI7XG5pbXBvcnQge1Rlc3RpbW9uaWFsc0NhcmR9IGZyb20gXCIuLi9jYXJkL1Rlc3RpbW9uaWFsc0NhcmRcIjtcbmltcG9ydCB7TWFwU2VjdGlvbn0gZnJvbSBcIi4uLy4uL21hcC9NYXBTZWN0aW9uXCI7XG5pbXBvcnQge1NpbWlsYXJGbG9vcnBsYW5DYXJkfSBmcm9tIFwiLi4vY2FyZC9TaW1pbGFyRmxvb3JwbGFuQ2FyZFwiO1xuaW1wb3J0IHtCdXR0b24sIExpLCBVbH0gZnJvbSBcIkBjb250ZW50bXVuY2gvbXVuY2hlci11aVwiO1xuaW1wb3J0IG1vbWVudCBmcm9tIFwibW9tZW50XCI7XG5cbmV4cG9ydCBjb25zdCBGbG9vcnBsYW5TZWN0aW9uOiBSZWFjdC5GQzxGbG9vcnBsYW5TZWN0aW9uUHJvcHM+ID0gKFxuICAgIHtcbiAgICAgICAgY29udGFjdENsaWNrSGFuZGxlcixcbiAgICAgICAgYXBwbHlDbGlja0hhbmRsZXIsXG4gICAgICAgIGZsb29ycGxhbklkXG4gICAgfSkgPT4ge1xuICAgIGNvbnN0IFtmbG9vcnBsYW4sIHNldEZsb29ycGxhbl0gPSB1c2VTdGF0ZTxGbG9vcnBsYW4+KHt9IGFzIEZsb29ycGxhbik7XG4gICAgY29uc3QgW3NpbWlsYXJGbG9vcnBsYW5zLCBzZXRTaW1pbGFyRmxvb3JwbGFuc10gPSB1c2VTdGF0ZTxTaW1pbGFyRmxvb3JwbGFuW10+KFtdKTtcbiAgICBjb25zdCBbZmxvb3JwbGFuVmFyaWF0aW9ucywgc2V0Rmxvb3JwbGFuVmFyaWF0aW9uc10gPSB1c2VTdGF0ZTxGbG9vcnBsYW5WYXJpYXRpb25bXT4oW10pO1xuICAgIGNvbnN0IFt0ZXN0aW1vbmlhbHMsIHNldFRlc3RpbW9uaWFsc10gPSB1c2VTdGF0ZTxUZXN0aW1vbmlhbFtdPihbXSk7XG4gICAgY29uc3QgW2lzTG9hZGluZywgc2V0SXNMb2FkaW5nXSA9IHVzZVN0YXRlKHRydWUpO1xuICAgIGNvbnN0IFtlcnJvckxvYWRpbmcsIHNldEVycm9yTG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgICBjb25zdCBtYXBSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICAgIGNvbnN0IGhhbmRsZVJlZlRvTWFwID0gKCkgPT4ge1xuICAgICAgICBtYXBSZWYuY3VycmVudD8uc2Nyb2xsSW50b1ZpZXcoe1xuICAgICAgICAgICAgYmVoYXZpb3I6IFwic21vb3RoXCIsXG4gICAgICAgICAgICBibG9jazogXCJjZW50ZXJcIlxuICAgICAgICB9KTtcbiAgICB9O1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIFByb21pc2UuYWxsKFtcbiAgICAgICAgICAgIGdldEZsb29ycGxhbihmbG9vcnBsYW5JZCksXG4gICAgICAgICAgICBnZXRGbG9vcnBsYW5WYXJpYXRpb25zKGZsb29ycGxhbklkKSxcbiAgICAgICAgICAgIGdldFNpbWlsYXJGbG9vcnBsYW5zKGZsb29ycGxhbklkKSxcbiAgICAgICAgICAgIGdldFRlc3RpbW9uaWFscyhmbG9vcnBsYW5JZClcbiAgICAgICAgXSlcbiAgICAgICAgICAgIC50aGVuKChkYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmxvb3JwbGFuRGF0YSA9IHsuLi5kYXRhWzBdfTtcbiAgICAgICAgICAgICAgICBjb25zdCBhY3RpdmVVbml0cyA9IGZsb29ycGxhbkRhdGEudW5pdHMuZmlsdGVyKHVuaXQgPT4gdW5pdC5hY3RpdmUpO1xuICAgICAgICAgICAgICAgIGZsb29ycGxhbkRhdGEudW5pdHMgPSBhY3RpdmVVbml0cztcbiAgICAgICAgICAgICAgICBzZXRGbG9vcnBsYW4oZmxvb3JwbGFuRGF0YSk7XG4gICAgICAgICAgICAgICAgc2V0Rmxvb3JwbGFuVmFyaWF0aW9ucyhkYXRhWzFdKTtcbiAgICAgICAgICAgICAgICBzZXRTaW1pbGFyRmxvb3JwbGFucyhkYXRhWzJdKTtcbiAgICAgICAgICAgICAgICBzZXRUZXN0aW1vbmlhbHMoZGF0YVszXSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRFcnJvckxvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldElzTG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgICB9KTtcblxuICAgIH0sIFtmbG9vcnBsYW5JZF0pO1xuXG4gICAgY29uc3QgYXZhaWxhYmxlRGF0ZXMgPSAoKTogc3RyaW5nW10gPT4ge1xuICAgICAgICBjb25zdCBzb3J0QXZhaWxhYmlsZURhdGVzID0gKGE6IHN0cmluZywgYjogc3RyaW5nKSA9PiBtb21lbnQoYSwgXCJNTU1NIFlZWVlcIikuZGlmZihtb21lbnQoYiwgXCJNTU1NIFlZWVlcIikpO1xuICAgICAgICBjb25zdCBkYXRlcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgICAgICBmbG9vcnBsYW4udW5pdHMuZm9yRWFjaCh1bml0ID0+IHtcbiAgICAgICAgICAgIGRhdGVzLmFkZChkYXRlVG9Nb21lbnQodW5pdC5tb3ZlSW5EYXRlKS5mb3JtYXQoXCJNTU1NIFlZWVlcIikpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShkYXRlcykuc29ydChzb3J0QXZhaWxhYmlsZURhdGVzKTtcbiAgICB9XG4gICAgcmV0dXJuIChcbiAgICAgICAgPHNlY3Rpb24gY2xhc3NOYW1lPVwic2VjdGlvbi1mbG9vcnBsYW5cIj5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpc0xvYWRpbmcgPyA8c2VjdGlvbiBjbGFzc05hbWU9XCJzZWN0aW9uLWZsb29ycGxhbi0taGVyb1wiPjxHYWxsZXJ5SGVyb1NrZWxldG9uLz48L3NlY3Rpb24+IDogPD5cbiAgICAgICAgICAgICAgICAgICAge2Vycm9yTG9hZGluZyA/XG4gICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJkaXYtZnVsbC0tY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyPlVoLW9oLCB0aGlzIGlzIGEgNDA0PC9oMj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4gOlxuICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rmxvb3JwbGFuSGVybyBmbG9vcnBsYW49e2Zsb29ycGxhbn0gY29udGFjdENsaWNrSGFuZGxlcj17Y29udGFjdENsaWNrSGFuZGxlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBseUNsaWNrSGFuZGxlcj17YXBwbHlDbGlja0hhbmRsZXJ9IGhhbmRsZVJlZlRvTWFwPXtoYW5kbGVSZWZUb01hcH0vPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxvb3JwbGFuLS1jYXJkc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQgdGl0bGU9XCJEZXRhaWxzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiZmxvb3JwbGFuLWNhcmQtLWZlYXR1cmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtmbG9vcnBsYW4uYmVkcm9vbX0gQmVkcm9vbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHtmbG9vcnBsYW4uYmF0aHJvb219IEJhdGhyb29tIHtlbnVtVG9TdHJpbmcoZmxvb3JwbGFuLnN0eWxlKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiZmxvb3JwbGFuLWNhcmQtLWZlYXR1cmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyYW5nZUZyb20oZmxvb3JwbGFuLnVuaXRzLCBcInNxdWFyZUZvb3RcIil9IFNxdWFyZSBGZWV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImZsb29ycGxhbi1jYXJkLS1mZWF0dXJlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke3JhbmdlRnJvbShmbG9vcnBsYW4udW5pdHMsIFwicmVudFwiKX0vbW9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiZmxvb3JwbGFuLWNhcmQtLWZlYXR1cmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7cmFuZ2VGcm9tKGZsb29ycGxhbi51bml0cywgXCJkZXBvc2l0XCIpfSBTZWN1cml0eSBEZXBvc2l0PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Zmxvb3JwbGFuLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW4uYW1lbml0aWVzLmxlbmd0aCA+IDAgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2FyZCB0aXRsZT1cIkFtZW5pdGllc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuLmFtZW5pdGllcy5maWx0ZXIoYW1lbml0eSA9PiBhbWVuaXR5LmZlYXR1cmVkKS5tYXAoYW1lbml0eSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpIGtleT17XCJmbG9vcnBsYW4tYW1lbml0eS1cIiArIGFtZW5pdHkuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNGZWF0dXJlZD17dHJ1ZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2FtZW5pdHkubmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW4uYW1lbml0aWVzLmZpbHRlcihhbWVuaXR5ID0+ICFhbWVuaXR5LmZlYXR1cmVkKS5tYXAoYW1lbml0eSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpIGtleT17XCJmbG9vcnBsYW4tYW1lbml0eS1cIiArIGFtZW5pdHkuaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHthbWVuaXR5Lm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9VbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW5WYXJpYXRpb25zLmxlbmd0aCA+IDAgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1PlZhcmlhdGlvbnM8L2g1PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuVmFyaWF0aW9ucy5tYXAoKHZhcmlhdGlvbiwgaSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMaSBrZXk9e1wiZmxvb3JwbGFuLXZhcmlhdGlvbi1cIiArIGl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt2YXJpYXRpb24udmFyaWF0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9MaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVWw+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+IDogXCJcIn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NhcmQ+IDogPD48Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RpbW9uaWFscy5sZW5ndGggPiAwID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRlc3RpbW9uaWFsc0NhcmQgdGVzdGltb25pYWxzPXt0ZXN0aW1vbmlhbHN9Lz4gOiA8PjwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiByZWY9e21hcFJlZn0gaWQ9XCJsb2NhdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TWFwU2VjdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPXthZGRyZXNzVG9Hb29nbGVNYXAoZmxvb3JwbGFuLnVuaXRzWzBdPy5hZGRyZXNzLCBmbG9vcnBsYW4udW5pdHNbMF0/LnppcGNvZGUpfS8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NhcmQ+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDYXJkIHRpdGxlPVwiUGV0c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNT5QZXJtaXR0ZWQ8L2g1PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxVbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVybWl0dGVkUGV0cyhmbG9vcnBsYW4pLm1hcCgocGV0LCBpKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMaSBrZXk9e1wiZmxvb3JwbGFuLXBlcm1pdHRlZC1wZXQtXCIgKyBpfSBidWxsZXRJY29uPVwiY2hlY2tcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWxsZXRDb2xvcj1cImdyZWVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtwZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9MaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge25vdFBlcm1pdHRlZFBldHMoZmxvb3JwbGFuKS5sZW5ndGggPiAwID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD48aDU+Tm90IFBlcm1pdHRlZDwvaDU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3RQZXJtaXR0ZWRQZXRzKGZsb29ycGxhbikubWFwKChwZXQsIGkpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGkga2V5PXtcImZsb29ycGxhbi1ub3QtcGVybWl0dGVkLXBldC1cIiArIGl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVsbGV0Q29sb3I9XCJicm93blwiIGJ1bGxldEljb249XCJjbG9zZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtwZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9VbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+IDogXCJcIn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGV0UG9saWN5KGZsb29ycGxhbikgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDU+QWRkaXRpb25hbCBJbmZvcm1hdGlvbjwvaDU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3BldFBvbGljeShmbG9vcnBsYW4pfTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPiA6IFwiXCJcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9DYXJkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQgdGl0bGU9XCJBdmFpbGFiaWxpdHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZURhdGVzKCkubWFwKGF2YWlsYWJsZURhdGUgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGkga2V5PXtcImZsb29ycGxhbi11bml0LWF2YWlsYWJpbGl0eS1cIiArIGF2YWlsYWJsZURhdGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1bGxldEljb249XCJjYWxlbmRhclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBdmFpbGFibGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gPHN0cm9uZz57Y2FwaXRhbGl6ZUZpcnN0TGV0dGVyKGF2YWlsYWJsZURhdGUpfTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1VsPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NhcmQ+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDYXJkIHRpdGxlPVwiVXRpbGl0aWVzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1PlBhaWQgQnkgTGFuZGxvcmQ8L2g1PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxVbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuLnV0aWxpdGllcy5maWx0ZXIodXRpbGl0eSA9PiB1dGlsaXR5LnR5cGUgPT09IFV0aWxpdHlUeXBlLklOQ0xVREVEX1VUSUxJVFkpLm1hcCh1dGlsaXR5ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpIGtleT17XCJmbG9vcnBsYW4taW5jbHVkZWQtdXRpbGl0eS1cIiArIHV0aWxpdHkuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1bGxldEljb249XCJob21lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtjYXBpdGFsaXplRmlyc3RMZXR0ZXIodXRpbGl0eS5uYW1lKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9VbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDU+UGFpZCBCeSBUZW5hbnQ8L2g1PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxVbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuLnV0aWxpdGllcy5maWx0ZXIodXRpbGl0eSA9PiB1dGlsaXR5LnR5cGUgPT09IFV0aWxpdHlUeXBlLlJFU0lERU5UX1VUSUxJVFkpLm1hcCh1dGlsaXR5ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpIGtleT17XCJmbG9vcnBsYW4tcmVzaWRlbnQtdXRpbGl0eS1cIiArIHV0aWxpdHkuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1bGxldEljb249XCJkb2xsYXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2NhcGl0YWxpemVGaXJzdExldHRlcih1dGlsaXR5Lm5hbWUpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1VsPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NhcmQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c2ltaWxhckZsb29ycGxhbnMubGVuZ3RoID4gMCA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNpbWlsYXJGbG9vcnBsYW5DYXJkIHNpbWlsYXJGbG9vcnBsYW5zPXtzaW1pbGFyRmxvb3JwbGFuc30vPiA6IFwiXCJ9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGFjdC1jYXJkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQgZmVhdHVyZWQ9e3RydWV9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48aT5RdWVzdGlvbnM/PC9pPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGk+Q2FsbCBvciB0ZXh0IHVzIGFueXRpbWU6PC9pPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2Zsb29ycGxhbi5wcm9wZXJ0eT8ucGhvbmUgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPXtcInRlbDpcIiArIGZsb29ycGxhbi5wcm9wZXJ0eS5waG9uZX0+e2Zvcm1hdFBob25lTnVtYmVyKGZsb29ycGxhbi5wcm9wZXJ0eS5waG9uZSl9PC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBcIlwifVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIG9uQ2xpY2s9e2NvbnRhY3RDbGlja0hhbmRsZXJ9IHNpemU9XCJsYXJnZVwiPkNvbnRhY3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDCuzwvQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgIH1cblxuICAgICAgICA8L3NlY3Rpb24+XG4gICAgKTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmxvb3JwbGFuU2VjdGlvblByb3BzIHtcbiAgICBjb250YWN0Q2xpY2tIYW5kbGVyOiAoKSA9PiB2b2lkO1xuICAgIGFwcGx5Q2xpY2tIYW5kbGVyOiAoKSA9PiB2b2lkO1xuICAgIGZsb29ycGxhbklkOiBzdHJpbmc7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQVNBOztBQUNBOztBQUNBOztBQUNBOztBQVFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVPLElBQU1BLGdCQUFpRCxHQUFHLFNBQXBEQSxnQkFBb0QsT0FLdkQ7RUFBQTs7RUFBQSxJQUhGQyxtQkFHRSxRQUhGQSxtQkFHRTtFQUFBLElBRkZDLGlCQUVFLFFBRkZBLGlCQUVFO0VBQUEs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
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import "./assets/HeroBadgeStats.scss";
|
|
3
|
+
export declare const HeroBadgeStats: React.FC<HeroBadgeStatsProps>;
|
|
4
|
+
export interface HeroBadgeStatsProps {
|
|
5
|
+
currentView: "photo" | "virtual tour" | "video tour";
|
|
6
|
+
setCurrentView: (currentView: "photo" | "virtual tour" | "video tour") => void;
|
|
7
|
+
totalAssets: number;
|
|
8
|
+
virtualTour?: string;
|
|
9
|
+
videoTours: string[];
|
|
10
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.HeroBadgeStats = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _muncherUi = require("@contentmunch/muncher-ui");
|
|
11
|
+
|
|
12
|
+
var _cameraIcon = _interopRequireDefault(require("../card/assets/camera-icon.png"));
|
|
13
|
+
|
|
14
|
+
var _icon = _interopRequireDefault(require("../card/assets/360-icon.png"));
|
|
15
|
+
|
|
16
|
+
var _videoIcon = _interopRequireDefault(require("../card/assets/video-icon.png"));
|
|
17
|
+
|
|
18
|
+
require("./assets/HeroBadgeStats.scss");
|
|
19
|
+
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
+
|
|
22
|
+
var HeroBadgeStats = function HeroBadgeStats(_ref) {
|
|
23
|
+
var currentView = _ref.currentView,
|
|
24
|
+
setCurrentView = _ref.setCurrentView,
|
|
25
|
+
totalAssets = _ref.totalAssets,
|
|
26
|
+
virtualTour = _ref.virtualTour,
|
|
27
|
+
videoTours = _ref.videoTours;
|
|
28
|
+
|
|
29
|
+
var makePlural = function makePlural(length) {
|
|
30
|
+
return length > 1 ? "s" : "";
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
34
|
+
className: "hero-badge--stats"
|
|
35
|
+
}, /*#__PURE__*/_react.default.createElement(_muncherUi.Badge, {
|
|
36
|
+
variant: "tertiary"
|
|
37
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
38
|
+
className: currentView === "photo" ? "item selected" : "item"
|
|
39
|
+
}, /*#__PURE__*/_react.default.createElement(_muncherUi.Button, {
|
|
40
|
+
size: "small",
|
|
41
|
+
variant: "primary",
|
|
42
|
+
rounded: true,
|
|
43
|
+
onClick: function onClick() {
|
|
44
|
+
setCurrentView("photo");
|
|
45
|
+
}
|
|
46
|
+
}, /*#__PURE__*/_react.default.createElement("img", {
|
|
47
|
+
className: "camera-icon",
|
|
48
|
+
src: _cameraIcon.default,
|
|
49
|
+
alt: "camera icon"
|
|
50
|
+
}), /*#__PURE__*/_react.default.createElement("p", null, totalAssets)), /*#__PURE__*/_react.default.createElement("p", {
|
|
51
|
+
className: "main"
|
|
52
|
+
}, totalAssets, " Photo", makePlural(totalAssets))), virtualTour ? /*#__PURE__*/_react.default.createElement("div", {
|
|
53
|
+
className: currentView === "virtual tour" ? "item selected" : "item"
|
|
54
|
+
}, /*#__PURE__*/_react.default.createElement(_muncherUi.Button, {
|
|
55
|
+
size: "small",
|
|
56
|
+
variant: "primary",
|
|
57
|
+
rounded: true,
|
|
58
|
+
onClick: function onClick() {
|
|
59
|
+
setCurrentView("virtual tour");
|
|
60
|
+
}
|
|
61
|
+
}, /*#__PURE__*/_react.default.createElement("img", {
|
|
62
|
+
className: "virtual-tour-icon",
|
|
63
|
+
src: _icon.default,
|
|
64
|
+
alt: "virtual tour icon"
|
|
65
|
+
}), /*#__PURE__*/_react.default.createElement("p", null, "1")), /*#__PURE__*/_react.default.createElement("p", {
|
|
66
|
+
className: "main"
|
|
67
|
+
}, "1 Virtual Tour")) : "", videoTours.length > 0 ? /*#__PURE__*/_react.default.createElement("div", {
|
|
68
|
+
className: currentView === "video tour" ? "item selected" : "item"
|
|
69
|
+
}, /*#__PURE__*/_react.default.createElement(_muncherUi.Button, {
|
|
70
|
+
size: "small",
|
|
71
|
+
variant: "primary",
|
|
72
|
+
rounded: true,
|
|
73
|
+
onClick: function onClick() {
|
|
74
|
+
setCurrentView("video tour");
|
|
75
|
+
}
|
|
76
|
+
}, /*#__PURE__*/_react.default.createElement("img", {
|
|
77
|
+
className: "video-tour-icon",
|
|
78
|
+
src: _videoIcon.default,
|
|
79
|
+
alt: "video tour icon"
|
|
80
|
+
}), /*#__PURE__*/_react.default.createElement("p", null, videoTours.length)), /*#__PURE__*/_react.default.createElement("p", {
|
|
81
|
+
className: "main"
|
|
82
|
+
}, videoTours.length, " Video Tour", makePlural(videoTours.length))) : ""));
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
exports.HeroBadgeStats = HeroBadgeStats;
|
|
86
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJIZXJvQmFkZ2VTdGF0cyIsImN1cnJlbnRWaWV3Iiwic2V0Q3VycmVudFZpZXciLCJ0b3RhbEFzc2V0cyIsInZpcnR1YWxUb3VyIiwidmlkZW9Ub3VycyIsIm1ha2VQbHVyYWwiLCJsZW5ndGgiLCJjYW1lcmFJY29uIiwidG91ckljb24iLCJ2aWRlb0ljb24iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmxvb3JwbGFuL3NlY3Rpb24vSGVyb0JhZGdlU3RhdHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7QmFkZ2UsIEJ1dHRvbn0gZnJvbSBcIkBjb250ZW50bXVuY2gvbXVuY2hlci11aVwiO1xuaW1wb3J0IGNhbWVyYUljb24gZnJvbSBcIi4uL2NhcmQvYXNzZXRzL2NhbWVyYS1pY29uLnBuZ1wiO1xuaW1wb3J0IHRvdXJJY29uIGZyb20gXCIuLi9jYXJkL2Fzc2V0cy8zNjAtaWNvbi5wbmdcIjtcbmltcG9ydCB2aWRlb0ljb24gZnJvbSBcIi4uL2NhcmQvYXNzZXRzL3ZpZGVvLWljb24ucG5nXCI7XG5pbXBvcnQgXCIuL2Fzc2V0cy9IZXJvQmFkZ2VTdGF0cy5zY3NzXCI7XG5cbmV4cG9ydCBjb25zdCBIZXJvQmFkZ2VTdGF0czogUmVhY3QuRkM8SGVyb0JhZGdlU3RhdHNQcm9wcz4gPSAoXG4gICAge2N1cnJlbnRWaWV3LCBzZXRDdXJyZW50VmlldywgdG90YWxBc3NldHMsIHZpcnR1YWxUb3VyLCB2aWRlb1RvdXJzfSkgPT4ge1xuICAgIGNvbnN0IG1ha2VQbHVyYWwgPSAobGVuZ3RoOiBudW1iZXIpID0+IGxlbmd0aCA+IDEgPyBcInNcIiA6IFwiXCI7XG4gICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJoZXJvLWJhZGdlLS1zdGF0c1wiPlxuICAgICAgICAgICAgPEJhZGdlIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjdXJyZW50VmlldyA9PT0gXCJwaG90b1wiID8gXCJpdGVtIHNlbGVjdGVkXCIgOiBcIml0ZW1cIn0+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b24gc2l6ZT1cInNtYWxsXCIgdmFyaWFudD1cInByaW1hcnlcIiByb3VuZGVkPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0Q3VycmVudFZpZXcoXCJwaG90b1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fT48aW1nIGNsYXNzTmFtZT1cImNhbWVyYS1pY29uXCIgc3JjPXtjYW1lcmFJY29ufSBhbHQ9XCJjYW1lcmEgaWNvblwiIC8+PHA+e3RvdGFsQXNzZXRzfTwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cIm1haW5cIj57dG90YWxBc3NldHN9IFBob3Rve21ha2VQbHVyYWwodG90YWxBc3NldHMpfTwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB7dmlydHVhbFRvdXIgP1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y3VycmVudFZpZXcgPT09IFwidmlydHVhbCB0b3VyXCIgPyBcIml0ZW0gc2VsZWN0ZWRcIiA6IFwiaXRlbVwifT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b24gc2l6ZT1cInNtYWxsXCIgdmFyaWFudD1cInByaW1hcnlcIiByb3VuZGVkPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRDdXJyZW50VmlldyhcInZpcnR1YWwgdG91clwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJ2aXJ0dWFsLXRvdXItaWNvblwiIHNyYz17dG91ckljb259IGFsdD1cInZpcnR1YWwgdG91ciBpY29uXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD4xPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJtYWluXCI+MSBWaXJ0dWFsIFRvdXI8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiA6IFwiXCJ9XG4gICAgICAgICAgICAgICAge3ZpZGVvVG91cnMubGVuZ3RoID4gMCA/XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjdXJyZW50VmlldyA9PT0gXCJ2aWRlbyB0b3VyXCIgPyBcIml0ZW0gc2VsZWN0ZWRcIiA6IFwiaXRlbVwifT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b24gc2l6ZT1cInNtYWxsXCIgdmFyaWFudD1cInByaW1hcnlcIiByb3VuZGVkPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRDdXJyZW50VmlldyhcInZpZGVvIHRvdXJcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwidmlkZW8tdG91ci1pY29uXCIgc3JjPXt2aWRlb0ljb259IGFsdD1cInZpZGVvIHRvdXIgaWNvblwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3ZpZGVvVG91cnMubGVuZ3RofTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwibWFpblwiPnt2aWRlb1RvdXJzLmxlbmd0aH0gVmlkZW8gVG91cnttYWtlUGx1cmFsKHZpZGVvVG91cnMubGVuZ3RoKX08L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiA6IFwiXCJ9XG4gICAgICAgICAgICA8L0JhZGdlPlxuICAgICAgICA8L2Rpdj5cbiAgICApO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBIZXJvQmFkZ2VTdGF0c1Byb3BzIHtcbiAgICBjdXJyZW50VmlldzogXCJwaG90b1wiIHwgXCJ2aXJ0dWFsIHRvdXJcIiB8IFwidmlkZW8gdG91clwiO1xuICAgIHNldEN1cnJlbnRWaWV3OiAoY3VycmVudFZpZXc6IFwicGhvdG9cIiB8IFwidmlydHVhbCB0b3VyXCIgfCBcInZpZGVvIHRvdXJcIikgPT4gdm9pZDtcbiAgICB0b3RhbEFzc2V0czogbnVtYmVyO1xuICAgIHZpcnR1YWxUb3VyPzogc3RyaW5nO1xuICAgIHZpZGVvVG91cnM6IHN0cmluZ1tdO1xufSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7O0FBRU8sSUFBTUEsY0FBNkMsR0FBRyxTQUFoREEsY0FBZ0QsT0FDZTtFQUFBLElBQXZFQyxXQUF1RSxRQUF2RUEsV0FBdUU7RUFBQSxJQUExREMsY0FBMEQsUUFBMURBLGNBQTBEO0VBQUEsSUFBMUNDLFdBQTBDLFFBQTFDQSxXQUEwQztFQUFBLElBQTdCQyxXQUE2QixRQUE3QkEsV0FBNkI7RUFBQSxJQUFoQkMsVUFBZ0IsUUFBaEJBLFVBQWdCOztFQUN4RSxJQUFNQyxVQUFVLEdBQUcsU0FBYkEsVUFBYSxDQUFDQyxNQUFEO0lBQUEsT0FBb0JBLE1BQU0sR0FBRyxDQUFULEdBQWEsR0FBYixHQUFtQixFQUF2QztFQUFBLENBQW5COztFQUNBLG9CQUNJO0lBQUssU0FBUyxFQUFDO0VBQWYsZ0JBQ0ksNkJBQUMsZ0JBQUQ7SUFBTyxPQUFPLEVBQUM7RUFBZixnQkFDSTtJQUFLLFNBQVMsRUFBRU4sV0FBVyxLQUFLLE9BQWhCLEdBQTBCLGVBQTFCLEdBQTRDO0VBQTVELGdCQUNJLDZCQUFDLGlCQUFEO0lBQVEsSUFBSSxFQUFDLE9BQWI7SUFBcUIsT0FBTyxFQUFDLFNBQTdCO0lBQXVDLE9BQU8sRUFBRSxJQUFoRDtJQUNRLE9BQU8sRUFBRSxtQkFBTTtNQUNYQyxjQUFjLENBQUMsT0FBRCxDQUFkO0lBQ0g7RUFIVCxnQkFHVztJQUFLLFNBQVMsRUFBQyxhQUFmO0lBQTZCLEdBQUcsRUFBRU0sbUJBQWxDO0lBQThDLEdBQUcsRUFBQztFQUFsRCxFQUhYLGVBRzZFLHdDQUFJTCxXQUFKLENBSDdFLENBREosZUFNSTtJQUFHLFNBQVMsRUFBQztFQUFiLEdBQXFCQSxXQUFyQixZQUF3Q0csVUFBVSxDQUFDSCxXQUFELENBQWxELENBTkosQ0FESixFQVNLQyxXQUFXLGdCQUNSO0lBQUssU0FBUyxFQUFFSCxXQUFXLEtBQUssY0FBaEIsR0FBaUMsZUFBakMsR0FBbUQ7RUFBbkUsZ0JBQ0ksNkJBQUMsaUJBQUQ7SUFBUSxJQUFJLEVBQUMsT0FBYjtJQUFxQixPQUFPLEVBQUMsU0FBN0I7SUFBdUMsT0FBTyxFQUFFLElBQWhEO0lBQ1EsT0FBTyxFQUFFLG1CQUFNO01BQ1hDLGNBQWMsQ0FBQyxjQUFELENBQWQ7SUFDSDtFQUhULGdCQUlJO0lBQUssU0FBUyxFQUFDLG1CQUFmO0lBQW1DLEdBQUcsRUFBRU8sYUFBeEM7SUFBa0QsR0FBRyxFQUFDO0VBQXRELEVBSkosZUFLSSw0Q0FMSixDQURKLGVBUUk7SUFBRyxTQUFTLEVBQUM7RUFBYixvQkFSSixDQURRLEdBVUMsRUFuQmpCLEVBb0JLSixVQUFVLENBQUNFLE1BQVgsR0FBb0IsQ0FBcEIsZ0JBQ0c7SUFBSyxTQUFTLEVBQUVOLFdBQVcsS0FBSyxZQUFoQixHQUErQixlQUEvQixHQUFpRDtFQUFqRSxnQkFDSSw2QkFBQyxpQkFBRDtJQUFRLElBQUksRUFBQyxPQUFiO0lBQXFCLE9BQU8sRUFBQyxTQUE3QjtJQUF1QyxPQUFPLEVBQUUsSUFBaEQ7SUFDUSxPQUFPLEVBQUUsbUJBQU07TUFDWEMsY0FBYyxDQUFDLFlBQUQsQ0FBZDtJQUNIO0VBSFQsZ0JBSUk7SUFBSyxTQUFTLEVBQUMsaUJBQWY7SUFBaUMsR0FBRyxFQUFFUSxrQkFBdEM7SUFBaUQsR0FBRyxFQUFDO0VBQXJELEVBSkosZUFLSSx3Q0FBSUwsVUFBVSxDQUFDRSxNQUFmLENBTEosQ0FESixlQVFJO0lBQUcsU0FBUyxFQUFDO0VBQWIsR0FBcUJGLFVBQVUsQ0FBQ0UsTUFBaEMsaUJBQW1ERCxVQUFVLENBQUNELFVBQVUsQ0FBQ0UsTUFBWixDQUE3RCxDQVJKLENBREgsR0FVWSxFQTlCakIsQ0FESixDQURKO0FBb0NILENBdkNNIn0=
|
|
@@ -3,11 +3,99 @@
|
|
|
3
3
|
.section-floorplan--hero {
|
|
4
4
|
padding: 0;
|
|
5
5
|
background: $primary-background-color;
|
|
6
|
+
width: 100vw;
|
|
7
|
+
position: relative;
|
|
6
8
|
|
|
7
9
|
a {
|
|
8
10
|
text-decoration: underline;
|
|
9
11
|
}
|
|
10
12
|
|
|
13
|
+
.gallery-hero {
|
|
14
|
+
position: relative;
|
|
15
|
+
width: 100vw;
|
|
16
|
+
height: 40vh;
|
|
17
|
+
@media (min-width: $large-size) {
|
|
18
|
+
height: 40vw;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.virtual-tour-view {
|
|
22
|
+
iframe {
|
|
23
|
+
width: 100%;
|
|
24
|
+
height: 40vh;
|
|
25
|
+
@media (min-width: $large-size) {
|
|
26
|
+
height: 40vw;
|
|
27
|
+
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.video-tour-view {
|
|
33
|
+
.single-video-layout {
|
|
34
|
+
iframe {
|
|
35
|
+
width: 100%;
|
|
36
|
+
height: 35vh;
|
|
37
|
+
@media (min-width: $large-size) {
|
|
38
|
+
height: 40vw;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.two-video-layout {
|
|
44
|
+
@media (min-width: $large-size) {
|
|
45
|
+
display: flex;
|
|
46
|
+
align-content: flex-start;
|
|
47
|
+
justify-content: space-evenly;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
iframe {
|
|
51
|
+
width: 40%;
|
|
52
|
+
height: 35vh;
|
|
53
|
+
margin: 1rem;
|
|
54
|
+
@media (min-width: $large-size) {
|
|
55
|
+
height: 35vw;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.badge--stats {
|
|
62
|
+
position: absolute;
|
|
63
|
+
left: 50%;
|
|
64
|
+
transform: translate(-50%, -50%);
|
|
65
|
+
bottom: -2rem;
|
|
66
|
+
|
|
67
|
+
.muncher-badge {
|
|
68
|
+
color: $primary-background-color;
|
|
69
|
+
flex-wrap: nowrap;
|
|
70
|
+
break-inside: avoid;
|
|
71
|
+
align-content: center;
|
|
72
|
+
width: 60vw;
|
|
73
|
+
font-size: .7rem;
|
|
74
|
+
@media (min-width: $large-size) {
|
|
75
|
+
font-size: 1rem;
|
|
76
|
+
width: auto;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.muncher-button--small {
|
|
80
|
+
padding: 0;
|
|
81
|
+
color: $primary-background-color;
|
|
82
|
+
text-transform: capitalize;
|
|
83
|
+
font-size: .7rem;
|
|
84
|
+
font-family: $serif-font;
|
|
85
|
+
@media (min-width: $large-size) {
|
|
86
|
+
font-size: 1rem;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.selected {
|
|
90
|
+
text-decoration: underline;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
|
|
11
99
|
.floorplan--two-columns {
|
|
12
100
|
padding: 2rem;
|
|
13
101
|
@media (min-width: $medium-size) {
|
|
@@ -45,7 +133,8 @@
|
|
|
45
133
|
font-family: $sans-serif-font;
|
|
46
134
|
letter-spacing: .05rem;
|
|
47
135
|
font-size: 1.1rem;
|
|
48
|
-
|
|
136
|
+
|
|
137
|
+
.muncher-button {
|
|
49
138
|
font-family: $sans-serif-font;
|
|
50
139
|
letter-spacing: .05rem;
|
|
51
140
|
font-size: 1.1rem;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
@import 'src/assets/variables';
|
|
2
|
+
|
|
3
|
+
.hero-badge--stats {
|
|
4
|
+
position: absolute;
|
|
5
|
+
left: 50%;
|
|
6
|
+
transform: translate(-50%, -50%);
|
|
7
|
+
|
|
8
|
+
.muncher-badge {
|
|
9
|
+
color: $primary-background-color;
|
|
10
|
+
flex-wrap: nowrap;
|
|
11
|
+
break-inside: avoid;
|
|
12
|
+
align-content: center;
|
|
13
|
+
justify-content: space-evenly;
|
|
14
|
+
width: 50vw;
|
|
15
|
+
font-size: .7rem;
|
|
16
|
+
margin: 0;
|
|
17
|
+
padding: .2rem;
|
|
18
|
+
@media (min-width: $large-size) {
|
|
19
|
+
font-size: 1rem;
|
|
20
|
+
width: auto;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.muncher-button--rounded {
|
|
24
|
+
border-radius: .5rem;
|
|
25
|
+
margin: .25rem;
|
|
26
|
+
min-height: 1.8rem;
|
|
27
|
+
min-width: 3rem;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.item {
|
|
31
|
+
display: flex;
|
|
32
|
+
flex-direction: column;
|
|
33
|
+
flex-wrap: wrap;
|
|
34
|
+
justify-content: center;
|
|
35
|
+
align-items: center;
|
|
36
|
+
@media (min-width: $large-size) {
|
|
37
|
+
padding: .25rem;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
p {
|
|
41
|
+
font-size: .6rem;
|
|
42
|
+
margin: 0;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.selected {
|
|
47
|
+
text-decoration: underline;
|
|
48
|
+
font-weight: bold;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.muncher-button--small {
|
|
52
|
+
color: $primary-background-color;
|
|
53
|
+
text-transform: capitalize;
|
|
54
|
+
font-size: .7rem;
|
|
55
|
+
font-family: $serif-font;
|
|
56
|
+
|
|
57
|
+
img {
|
|
58
|
+
margin-right: .4rem;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
p {
|
|
62
|
+
font-size: .7rem;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.camera-icon, .virtual-tour-icon {
|
|
67
|
+
height: .9rem;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.video-tour-icon {
|
|
71
|
+
height: .8rem;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import './assets/GalleryHero.scss';
|
|
3
|
+
import { Asset } from "../asset/data/Asset";
|
|
4
|
+
export declare const GalleryHeroMain: React.FC<GalleryHeroProps>;
|
|
5
|
+
export interface GalleryHeroProps {
|
|
6
|
+
assetsToShow: Asset[];
|
|
7
|
+
virtualTour?: string;
|
|
8
|
+
isAvailableNow?: boolean;
|
|
9
|
+
isFirst: boolean;
|
|
10
|
+
toursCount: number;
|
|
11
|
+
setCurrentView: (view: "photo" | "virtual tour" | "video tour") => void;
|
|
12
|
+
imageClickedHandler: (image: Asset) => void;
|
|
13
|
+
}
|