@prom-ui/core 2.3.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Avatar/package.json +1 -1
- package/Backdrop/package.json +1 -1
- package/Badge/package.json +1 -1
- package/Body/cjs/style.development.css +93 -115
- package/Body/cjs/style.development.v2.css +93 -115
- package/Body/cjs/style.production.css +1 -1
- package/Body/cjs/style.production.v2.css +1 -1
- package/Body/package.json +1 -1
- package/BodyProvider/package.json +1 -1
- package/BodyScrollLock/package.json +1 -1
- package/Box/cjs/style.development.css +11929 -12379
- package/Box/cjs/style.development.v2.css +11929 -12379
- package/Box/cjs/style.production.css +1 -1
- package/Box/cjs/style.production.v2.css +1 -1
- package/Box/package.json +1 -1
- package/Button/cjs/style.development.css +5141 -5989
- package/Button/cjs/style.development.v2.css +5141 -5989
- package/Button/cjs/style.production.css +1 -1
- package/Button/cjs/style.production.v2.css +1 -1
- package/Button/package.json +1 -1
- package/ButtonPageUp/package.json +1 -1
- package/Checkbox/cjs/style.development.css +16 -16
- package/Checkbox/cjs/style.development.v2.css +16 -16
- package/Checkbox/cjs/style.production.css +1 -1
- package/Checkbox/cjs/style.production.v2.css +1 -1
- package/Checkbox/package.json +1 -1
- package/ColorScheme/package.json +1 -1
- package/ContextMenu/package.json +1 -1
- package/ErrorCatch/package.json +1 -1
- package/Flex/cjs/style.development.css +2 -2
- package/Flex/cjs/style.development.v2.css +2 -2
- package/Flex/package.json +1 -1
- package/Grid/cjs/style.development.css +63 -81
- package/Grid/cjs/style.development.v2.css +63 -81
- package/Grid/cjs/style.production.css +1 -1
- package/Grid/cjs/style.production.v2.css +1 -1
- package/Grid/package.json +1 -1
- package/Icon/package.json +1 -1
- package/Image/cjs/style.development.css +133 -143
- package/Image/cjs/style.development.v2.css +133 -143
- package/Image/cjs/style.production.css +1 -1
- package/Image/cjs/style.production.v2.css +1 -1
- package/Image/package.json +1 -1
- package/ImageEmoji/package.json +1 -1
- package/Input/package.json +1 -1
- package/InputField/package.json +1 -1
- package/KeyPress/package.json +1 -1
- package/Label/package.json +1 -1
- package/Line/cjs/style.development.css +56 -104
- package/Line/cjs/style.development.v2.css +56 -104
- package/Line/cjs/style.production.css +1 -1
- package/Line/cjs/style.production.v2.css +1 -1
- package/Line/package.json +1 -1
- package/Link/cjs/style.development.css +116 -176
- package/Link/cjs/style.development.v2.css +116 -176
- package/Link/cjs/style.production.css +1 -1
- package/Link/cjs/style.production.v2.css +1 -1
- package/Link/package.json +1 -1
- package/List/cjs/style.development.css +129 -169
- package/List/cjs/style.development.v2.css +129 -169
- package/List/cjs/style.production.css +1 -1
- package/List/cjs/style.production.v2.css +1 -1
- package/List/package.json +1 -1
- package/Media/package.json +1 -1
- package/Modal/package.json +1 -1
- package/OutsideClick/package.json +1 -1
- package/Overlay/package.json +1 -1
- package/PhotoGallery/cjs/index.development.js +38 -11
- package/PhotoGallery/cjs/index.development.v2.js +38 -11
- package/PhotoGallery/cjs/index.production.js +1 -1
- package/PhotoGallery/cjs/index.production.v2.js +1 -1
- package/PhotoGallery/cjs/style.development.css +77 -72
- package/PhotoGallery/cjs/style.development.v2.css +77 -72
- package/PhotoGallery/cjs/style.production.css +1 -1
- package/PhotoGallery/cjs/style.production.v2.css +1 -1
- package/PhotoGallery/components/SlotContainer.d.ts +7 -1
- package/PhotoGallery/index.d.ts +2 -0
- package/PhotoGallery/package.json +1 -1
- package/Picture/cjs/style.development.css +737 -769
- package/Picture/cjs/style.development.v2.css +737 -769
- package/Picture/cjs/style.production.css +1 -1
- package/Picture/cjs/style.production.v2.css +1 -1
- package/Picture/package.json +1 -1
- package/Portal/package.json +1 -1
- package/Progress/package.json +1 -1
- package/QRCode/package.json +1 -1
- package/Rating/package.json +1 -1
- package/RatingSelect/package.json +1 -1
- package/Scroll/package.json +1 -1
- package/ScrollControls/cjs/style.development.css +1 -1
- package/ScrollControls/cjs/style.development.v2.css +1 -1
- package/ScrollControls/package.json +1 -1
- package/SimpleSlider/cjs/style.development.css +6 -9
- package/SimpleSlider/cjs/style.development.v2.css +6 -9
- package/SimpleSlider/cjs/style.production.css +1 -1
- package/SimpleSlider/cjs/style.production.v2.css +1 -1
- package/SimpleSlider/package.json +1 -1
- package/Skeleton/package.json +1 -1
- package/SnackBar/cjs/style.development.css +35 -44
- package/SnackBar/cjs/style.development.v2.css +35 -44
- package/SnackBar/cjs/style.production.css +1 -1
- package/SnackBar/cjs/style.production.v2.css +1 -1
- package/SnackBar/package.json +1 -1
- package/Spinner/package.json +1 -1
- package/Text/cjs/style.development.css +275 -441
- package/Text/cjs/style.development.v2.css +275 -441
- package/Text/cjs/style.production.css +1 -1
- package/Text/cjs/style.production.v2.css +1 -1
- package/Text/package.json +1 -1
- package/TextEmoji/package.json +1 -1
- package/Tooltip/package.json +1 -1
- package/Tumbler/cjs/style.development.css +22 -22
- package/Tumbler/cjs/style.development.v2.css +22 -22
- package/Tumbler/cjs/style.production.css +1 -1
- package/Tumbler/cjs/style.production.v2.css +1 -1
- package/Tumbler/package.json +1 -1
- package/Viewport/package.json +1 -1
- package/evokit/package.json +1 -1
- package/package.json +2 -2
- package/useBrowserLayoutEffect/package.json +1 -1
- package/useDebounce/package.json +1 -1
- package/useForwardRef/package.json +1 -1
- package/useInView/package.json +1 -1
- package/useIsMounted/package.json +1 -1
- package/useKeyPress/package.json +1 -1
- package/useMedia/package.json +1 -1
- package/useOutsideClick/package.json +1 -1
- package/usePortal/package.json +1 -1
- package/useScrollPosition/package.json +1 -1
- package/useSnackBar/package.json +1 -1
|
@@ -923,7 +923,7 @@ var definePinchZoom = function definePinchZoom() {
|
|
|
923
923
|
};
|
|
924
924
|
var PinchZoom = definePinchZoom();
|
|
925
925
|
|
|
926
|
-
var css = {"scrolling":"PhotoGallery__scrolling___BeLzR","root":"PhotoGallery__root___nJWgH","layout":"PhotoGallery__layout___BDoOb","layoutHeader":"PhotoGallery__layoutHeader___iNVA1","layoutContent":"PhotoGallery__layoutContent___C-jWr","layoutFooter":"PhotoGallery__layoutFooter___MQh-L","layoutSection":"PhotoGallery__layoutSection___3FXm5","layoutPreviews":"PhotoGallery__layoutPreviews___gQFQR","layoutAdditional":"PhotoGallery__layoutAdditional___pw0QV","header":"PhotoGallery__header___meCSL","headerTitle":"PhotoGallery__headerTitle___NpSWI","headerClose":"PhotoGallery__headerClose___-B9Zg","mainPhotoScrollControls":"PhotoGallery__mainPhotoScrollControls___ckcap","mainPhoto":"PhotoGallery__mainPhoto___-r4WP PhotoGallery__scrolling___BeLzR","mainPhotoItem":"PhotoGallery__mainPhotoItem___Q7wDI","mainPhotoImage":"PhotoGallery__mainPhotoImage___NrcBT","mainPhotoIframe":"PhotoGallery__mainPhotoIframe___kObZY","preview":"PhotoGallery__preview___86-3f PhotoGallery__scrolling___BeLzR","previewItem":"PhotoGallery__previewItem___gnB8m","previewButton":"PhotoGallery__previewButton___L4PR-","previewImage":"PhotoGallery__previewImage___8dsDI","videoPlayLabel":"PhotoGallery__videoPlayLabel___2kU58","videoPlayLabelIcon":"PhotoGallery__videoPlayLabelIcon___WR7T8","enter":"PhotoGallery__enter___sM8Qu","exit":"PhotoGallery__exit___veHZr","enterActive":"PhotoGallery__enterActive___VP4oy","exitActive":"PhotoGallery__exitActive___AMPJ3"};
|
|
926
|
+
var css = {"scrolling":"PhotoGallery__scrolling___BeLzR","root":"PhotoGallery__root___nJWgH","layout":"PhotoGallery__layout___BDoOb","layoutHeader":"PhotoGallery__layoutHeader___iNVA1","slotLayoutHeader":"PhotoGallery__slotLayoutHeader___KxMxT","layoutContent":"PhotoGallery__layoutContent___C-jWr","layoutFooter":"PhotoGallery__layoutFooter___MQh-L","layoutSection":"PhotoGallery__layoutSection___3FXm5","layoutSectionContent":"PhotoGallery__layoutSectionContent___WPu-a","layoutSectionFooter":"PhotoGallery__layoutSectionFooter___G5FaN","layoutPreviews":"PhotoGallery__layoutPreviews___gQFQR","layoutAdditional":"PhotoGallery__layoutAdditional___pw0QV","header":"PhotoGallery__header___meCSL","headerTitle":"PhotoGallery__headerTitle___NpSWI","headerClose":"PhotoGallery__headerClose___-B9Zg","mainPhotoScrollControls":"PhotoGallery__mainPhotoScrollControls___ckcap","mainPhoto":"PhotoGallery__mainPhoto___-r4WP PhotoGallery__scrolling___BeLzR","mainPhotoItem":"PhotoGallery__mainPhotoItem___Q7wDI","mainPhotoImage":"PhotoGallery__mainPhotoImage___NrcBT","mainPhotoIframe":"PhotoGallery__mainPhotoIframe___kObZY","preview":"PhotoGallery__preview___86-3f PhotoGallery__scrolling___BeLzR","previewItem":"PhotoGallery__previewItem___gnB8m","previewButton":"PhotoGallery__previewButton___L4PR-","previewImage":"PhotoGallery__previewImage___8dsDI","videoPlayLabel":"PhotoGallery__videoPlayLabel___2kU58","videoPlayLabelIcon":"PhotoGallery__videoPlayLabelIcon___WR7T8","enter":"PhotoGallery__enter___sM8Qu","exit":"PhotoGallery__exit___veHZr","enterActive":"PhotoGallery__enterActive___VP4oy","exitActive":"PhotoGallery__exitActive___AMPJ3"};
|
|
927
927
|
|
|
928
928
|
var MainPhotosImage = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
|
|
929
929
|
var src = _ref.src,
|
|
@@ -1147,8 +1147,8 @@ var PreviewPhotos = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref
|
|
|
1147
1147
|
}, /*#__PURE__*/React__namespace.createElement("img", {
|
|
1148
1148
|
className: css.previewImage,
|
|
1149
1149
|
src: previewSrc,
|
|
1150
|
-
width:
|
|
1151
|
-
height:
|
|
1150
|
+
width: 56,
|
|
1151
|
+
height: 56,
|
|
1152
1152
|
alt: "",
|
|
1153
1153
|
decoding: "async",
|
|
1154
1154
|
loading: "lazy",
|
|
@@ -1207,9 +1207,12 @@ var Header = function Header(_ref) {
|
|
|
1207
1207
|
var SlotContainer = function SlotContainer(_ref) {
|
|
1208
1208
|
var _slotProps$props;
|
|
1209
1209
|
var selectedIndex = _ref.selectedIndex,
|
|
1210
|
+
onClose = _ref.onClose,
|
|
1210
1211
|
className = _ref.className,
|
|
1211
|
-
slotProps = _ref.slotProps
|
|
1212
|
+
slotProps = _ref.slotProps,
|
|
1213
|
+
itemsLength = _ref.itemsLength;
|
|
1212
1214
|
var refSlot = React__namespace.useRef(null);
|
|
1215
|
+
var ChildrenComponent = slotProps.component;
|
|
1213
1216
|
React__namespace.useEffect(function () {
|
|
1214
1217
|
var _refSlot$current;
|
|
1215
1218
|
(_refSlot$current = refSlot.current) === null || _refSlot$current === void 0 || _refSlot$current.scrollTo({
|
|
@@ -1219,7 +1222,11 @@ var SlotContainer = function SlotContainer(_ref) {
|
|
|
1219
1222
|
return /*#__PURE__*/React__namespace.createElement("div", _extends__default.default({}, slotProps.props, {
|
|
1220
1223
|
ref: refSlot,
|
|
1221
1224
|
className: classNames__default.default(className, (_slotProps$props = slotProps.props) === null || _slotProps$props === void 0 ? void 0 : _slotProps$props.className)
|
|
1222
|
-
}),
|
|
1225
|
+
}), /*#__PURE__*/React__namespace.createElement(ChildrenComponent, {
|
|
1226
|
+
selectedIndex: selectedIndex,
|
|
1227
|
+
itemsLength: itemsLength,
|
|
1228
|
+
onClose: onClose
|
|
1229
|
+
}));
|
|
1223
1230
|
};
|
|
1224
1231
|
|
|
1225
1232
|
var PhotoGallery = function PhotoGallery(_ref) {
|
|
@@ -1233,8 +1240,10 @@ var PhotoGallery = function PhotoGallery(_ref) {
|
|
|
1233
1240
|
onClose = _ref.onClose,
|
|
1234
1241
|
onChange = _ref.onChange,
|
|
1235
1242
|
onInteraction = _ref.onInteraction,
|
|
1243
|
+
slotHeader = _ref.slotHeader,
|
|
1236
1244
|
slotAside = _ref.slotAside,
|
|
1237
|
-
slotFooter = _ref.slotFooter
|
|
1245
|
+
slotFooter = _ref.slotFooter,
|
|
1246
|
+
slotMainPhotoFooter = _ref.slotMainPhotoFooter;
|
|
1238
1247
|
var refIsAllowChangePreviewPhoto = React__namespace.useRef(true);
|
|
1239
1248
|
var refMainPhotos = React__namespace.useRef(null);
|
|
1240
1249
|
var refPreviewPhotos = React__namespace.useRef(null);
|
|
@@ -1359,7 +1368,13 @@ var PhotoGallery = function PhotoGallery(_ref) {
|
|
|
1359
1368
|
onKeyUp: onNextPhoto
|
|
1360
1369
|
}), /*#__PURE__*/React__namespace.createElement("div", {
|
|
1361
1370
|
className: css.layout
|
|
1362
|
-
}, /*#__PURE__*/React__namespace.createElement(
|
|
1371
|
+
}, !!(slotHeader !== null && slotHeader !== void 0 && slotHeader.component) ? /*#__PURE__*/React__namespace.createElement(SlotContainer, {
|
|
1372
|
+
className: css.slotLayoutHeader,
|
|
1373
|
+
selectedIndex: selectedIndex,
|
|
1374
|
+
itemsLength: items.length,
|
|
1375
|
+
onClose: onCloseHandle,
|
|
1376
|
+
slotProps: slotHeader
|
|
1377
|
+
}) : /*#__PURE__*/React__namespace.createElement("header", {
|
|
1363
1378
|
className: css.layoutHeader
|
|
1364
1379
|
}, /*#__PURE__*/React__namespace.createElement(Header, {
|
|
1365
1380
|
title: title,
|
|
@@ -1371,11 +1386,19 @@ var PhotoGallery = function PhotoGallery(_ref) {
|
|
|
1371
1386
|
className: css.layoutContent
|
|
1372
1387
|
}, /*#__PURE__*/React__namespace.createElement("section", {
|
|
1373
1388
|
className: css.layoutSection
|
|
1389
|
+
}, /*#__PURE__*/React__namespace.createElement("div", {
|
|
1390
|
+
className: css.layoutSectionContent
|
|
1374
1391
|
}, /*#__PURE__*/React__namespace.createElement(MainPhotos, {
|
|
1375
1392
|
ref: refMainPhotos,
|
|
1376
1393
|
items: items,
|
|
1377
1394
|
onChange: onChangeMainPhoto,
|
|
1378
1395
|
triggerInteraction: triggerInteraction
|
|
1396
|
+
})), !!(slotMainPhotoFooter !== null && slotMainPhotoFooter !== void 0 && slotMainPhotoFooter.component) && /*#__PURE__*/React__namespace.createElement(SlotContainer, {
|
|
1397
|
+
className: css.layoutSectionFooter,
|
|
1398
|
+
selectedIndex: selectedIndex,
|
|
1399
|
+
itemsLength: items.length,
|
|
1400
|
+
onClose: onCloseHandle,
|
|
1401
|
+
slotProps: slotMainPhotoFooter
|
|
1379
1402
|
})), items.length > 1 && /*#__PURE__*/React__namespace.createElement("aside", {
|
|
1380
1403
|
className: css.layoutPreviews
|
|
1381
1404
|
}, /*#__PURE__*/React__namespace.createElement(PreviewPhotos, {
|
|
@@ -1384,13 +1407,17 @@ var PhotoGallery = function PhotoGallery(_ref) {
|
|
|
1384
1407
|
selectedIndex: selectedIndex,
|
|
1385
1408
|
onChange: onChangePreviewPhoto,
|
|
1386
1409
|
triggerInteraction: triggerInteraction
|
|
1387
|
-
})), !!(slotAside !== null && slotAside !== void 0 && slotAside.
|
|
1388
|
-
selectedIndex: selectedIndex,
|
|
1410
|
+
})), !!(slotAside !== null && slotAside !== void 0 && slotAside.component) && /*#__PURE__*/React__namespace.createElement(SlotContainer, {
|
|
1389
1411
|
className: css.layoutAdditional,
|
|
1390
|
-
slotProps: slotAside
|
|
1391
|
-
})), !!(slotFooter !== null && slotFooter !== void 0 && slotFooter.children) && /*#__PURE__*/React__namespace.createElement(SlotContainer, {
|
|
1392
1412
|
selectedIndex: selectedIndex,
|
|
1413
|
+
itemsLength: items.length,
|
|
1414
|
+
onClose: onCloseHandle,
|
|
1415
|
+
slotProps: slotAside
|
|
1416
|
+
})), !!(slotFooter !== null && slotFooter !== void 0 && slotFooter.component) && /*#__PURE__*/React__namespace.createElement(SlotContainer, {
|
|
1393
1417
|
className: css.layoutFooter,
|
|
1418
|
+
selectedIndex: selectedIndex,
|
|
1419
|
+
itemsLength: items.length,
|
|
1420
|
+
onClose: onCloseHandle,
|
|
1394
1421
|
slotProps: slotFooter
|
|
1395
1422
|
}))))));
|
|
1396
1423
|
};
|
|
@@ -923,7 +923,7 @@ var definePinchZoom = function definePinchZoom() {
|
|
|
923
923
|
};
|
|
924
924
|
var PinchZoom = definePinchZoom();
|
|
925
925
|
|
|
926
|
-
var css = {"scrolling":"PhotoGallery__scrolling___q1DKc","root":"PhotoGallery__root___KiBKq","layout":"PhotoGallery__layout___JBDok","layoutHeader":"PhotoGallery__layoutHeader___tVG4b","layoutContent":"PhotoGallery__layoutContent___O43ff","layoutFooter":"PhotoGallery__layoutFooter___Gz4gH","layoutSection":"PhotoGallery__layoutSection___CvZb6","layoutPreviews":"PhotoGallery__layoutPreviews___-hzyv","layoutAdditional":"PhotoGallery__layoutAdditional___mR5-f","header":"PhotoGallery__header___xfAad","headerTitle":"PhotoGallery__headerTitle___QiOEy","headerClose":"PhotoGallery__headerClose___qdl3x","mainPhotoScrollControls":"PhotoGallery__mainPhotoScrollControls___PeY3Y","mainPhoto":"PhotoGallery__mainPhoto___QIMHy PhotoGallery__scrolling___q1DKc","mainPhotoItem":"PhotoGallery__mainPhotoItem___aZCyk","mainPhotoImage":"PhotoGallery__mainPhotoImage___2aEr5","mainPhotoIframe":"PhotoGallery__mainPhotoIframe___kThdT","preview":"PhotoGallery__preview___F-k0z PhotoGallery__scrolling___q1DKc","previewItem":"PhotoGallery__previewItem___jf683","previewButton":"PhotoGallery__previewButton___VAXOP","previewImage":"PhotoGallery__previewImage___Mx2Y-","videoPlayLabel":"PhotoGallery__videoPlayLabel___jQiDN","videoPlayLabelIcon":"PhotoGallery__videoPlayLabelIcon___wSdjd","enter":"PhotoGallery__enter___Lnosr","exit":"PhotoGallery__exit___NW-xY","enterActive":"PhotoGallery__enterActive___LrirU","exitActive":"PhotoGallery__exitActive___L6st-"};
|
|
926
|
+
var css = {"scrolling":"PhotoGallery__scrolling___q1DKc","root":"PhotoGallery__root___KiBKq","layout":"PhotoGallery__layout___JBDok","layoutHeader":"PhotoGallery__layoutHeader___tVG4b","slotLayoutHeader":"PhotoGallery__slotLayoutHeader___8R2r5","layoutContent":"PhotoGallery__layoutContent___O43ff","layoutFooter":"PhotoGallery__layoutFooter___Gz4gH","layoutSection":"PhotoGallery__layoutSection___CvZb6","layoutSectionContent":"PhotoGallery__layoutSectionContent___2TSDW","layoutSectionFooter":"PhotoGallery__layoutSectionFooter___LTbHF","layoutPreviews":"PhotoGallery__layoutPreviews___-hzyv","layoutAdditional":"PhotoGallery__layoutAdditional___mR5-f","header":"PhotoGallery__header___xfAad","headerTitle":"PhotoGallery__headerTitle___QiOEy","headerClose":"PhotoGallery__headerClose___qdl3x","mainPhotoScrollControls":"PhotoGallery__mainPhotoScrollControls___PeY3Y","mainPhoto":"PhotoGallery__mainPhoto___QIMHy PhotoGallery__scrolling___q1DKc","mainPhotoItem":"PhotoGallery__mainPhotoItem___aZCyk","mainPhotoImage":"PhotoGallery__mainPhotoImage___2aEr5","mainPhotoIframe":"PhotoGallery__mainPhotoIframe___kThdT","preview":"PhotoGallery__preview___F-k0z PhotoGallery__scrolling___q1DKc","previewItem":"PhotoGallery__previewItem___jf683","previewButton":"PhotoGallery__previewButton___VAXOP","previewImage":"PhotoGallery__previewImage___Mx2Y-","videoPlayLabel":"PhotoGallery__videoPlayLabel___jQiDN","videoPlayLabelIcon":"PhotoGallery__videoPlayLabelIcon___wSdjd","enter":"PhotoGallery__enter___Lnosr","exit":"PhotoGallery__exit___NW-xY","enterActive":"PhotoGallery__enterActive___LrirU","exitActive":"PhotoGallery__exitActive___L6st-"};
|
|
927
927
|
|
|
928
928
|
var MainPhotosImage = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
|
|
929
929
|
var src = _ref.src,
|
|
@@ -1147,8 +1147,8 @@ var PreviewPhotos = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref
|
|
|
1147
1147
|
}, /*#__PURE__*/React__namespace.createElement("img", {
|
|
1148
1148
|
className: css.previewImage,
|
|
1149
1149
|
src: previewSrc,
|
|
1150
|
-
width:
|
|
1151
|
-
height:
|
|
1150
|
+
width: 56,
|
|
1151
|
+
height: 56,
|
|
1152
1152
|
alt: "",
|
|
1153
1153
|
decoding: "async",
|
|
1154
1154
|
loading: "lazy",
|
|
@@ -1207,9 +1207,12 @@ var Header = function Header(_ref) {
|
|
|
1207
1207
|
var SlotContainer = function SlotContainer(_ref) {
|
|
1208
1208
|
var _slotProps$props;
|
|
1209
1209
|
var selectedIndex = _ref.selectedIndex,
|
|
1210
|
+
onClose = _ref.onClose,
|
|
1210
1211
|
className = _ref.className,
|
|
1211
|
-
slotProps = _ref.slotProps
|
|
1212
|
+
slotProps = _ref.slotProps,
|
|
1213
|
+
itemsLength = _ref.itemsLength;
|
|
1212
1214
|
var refSlot = React__namespace.useRef(null);
|
|
1215
|
+
var ChildrenComponent = slotProps.component;
|
|
1213
1216
|
React__namespace.useEffect(function () {
|
|
1214
1217
|
var _refSlot$current;
|
|
1215
1218
|
(_refSlot$current = refSlot.current) === null || _refSlot$current === void 0 || _refSlot$current.scrollTo({
|
|
@@ -1219,7 +1222,11 @@ var SlotContainer = function SlotContainer(_ref) {
|
|
|
1219
1222
|
return /*#__PURE__*/React__namespace.createElement("div", _extends__default.default({}, slotProps.props, {
|
|
1220
1223
|
ref: refSlot,
|
|
1221
1224
|
className: classNames__default.default(className, (_slotProps$props = slotProps.props) === null || _slotProps$props === void 0 ? void 0 : _slotProps$props.className)
|
|
1222
|
-
}),
|
|
1225
|
+
}), /*#__PURE__*/React__namespace.createElement(ChildrenComponent, {
|
|
1226
|
+
selectedIndex: selectedIndex,
|
|
1227
|
+
itemsLength: itemsLength,
|
|
1228
|
+
onClose: onClose
|
|
1229
|
+
}));
|
|
1223
1230
|
};
|
|
1224
1231
|
|
|
1225
1232
|
var PhotoGallery = function PhotoGallery(_ref) {
|
|
@@ -1233,8 +1240,10 @@ var PhotoGallery = function PhotoGallery(_ref) {
|
|
|
1233
1240
|
onClose = _ref.onClose,
|
|
1234
1241
|
onChange = _ref.onChange,
|
|
1235
1242
|
onInteraction = _ref.onInteraction,
|
|
1243
|
+
slotHeader = _ref.slotHeader,
|
|
1236
1244
|
slotAside = _ref.slotAside,
|
|
1237
|
-
slotFooter = _ref.slotFooter
|
|
1245
|
+
slotFooter = _ref.slotFooter,
|
|
1246
|
+
slotMainPhotoFooter = _ref.slotMainPhotoFooter;
|
|
1238
1247
|
var refIsAllowChangePreviewPhoto = React__namespace.useRef(true);
|
|
1239
1248
|
var refMainPhotos = React__namespace.useRef(null);
|
|
1240
1249
|
var refPreviewPhotos = React__namespace.useRef(null);
|
|
@@ -1359,7 +1368,13 @@ var PhotoGallery = function PhotoGallery(_ref) {
|
|
|
1359
1368
|
onKeyUp: onNextPhoto
|
|
1360
1369
|
}), /*#__PURE__*/React__namespace.createElement("div", {
|
|
1361
1370
|
className: css.layout
|
|
1362
|
-
}, /*#__PURE__*/React__namespace.createElement(
|
|
1371
|
+
}, !!(slotHeader !== null && slotHeader !== void 0 && slotHeader.component) ? /*#__PURE__*/React__namespace.createElement(SlotContainer, {
|
|
1372
|
+
className: css.slotLayoutHeader,
|
|
1373
|
+
selectedIndex: selectedIndex,
|
|
1374
|
+
itemsLength: items.length,
|
|
1375
|
+
onClose: onCloseHandle,
|
|
1376
|
+
slotProps: slotHeader
|
|
1377
|
+
}) : /*#__PURE__*/React__namespace.createElement("header", {
|
|
1363
1378
|
className: css.layoutHeader
|
|
1364
1379
|
}, /*#__PURE__*/React__namespace.createElement(Header, {
|
|
1365
1380
|
title: title,
|
|
@@ -1371,11 +1386,19 @@ var PhotoGallery = function PhotoGallery(_ref) {
|
|
|
1371
1386
|
className: css.layoutContent
|
|
1372
1387
|
}, /*#__PURE__*/React__namespace.createElement("section", {
|
|
1373
1388
|
className: css.layoutSection
|
|
1389
|
+
}, /*#__PURE__*/React__namespace.createElement("div", {
|
|
1390
|
+
className: css.layoutSectionContent
|
|
1374
1391
|
}, /*#__PURE__*/React__namespace.createElement(MainPhotos, {
|
|
1375
1392
|
ref: refMainPhotos,
|
|
1376
1393
|
items: items,
|
|
1377
1394
|
onChange: onChangeMainPhoto,
|
|
1378
1395
|
triggerInteraction: triggerInteraction
|
|
1396
|
+
})), !!(slotMainPhotoFooter !== null && slotMainPhotoFooter !== void 0 && slotMainPhotoFooter.component) && /*#__PURE__*/React__namespace.createElement(SlotContainer, {
|
|
1397
|
+
className: css.layoutSectionFooter,
|
|
1398
|
+
selectedIndex: selectedIndex,
|
|
1399
|
+
itemsLength: items.length,
|
|
1400
|
+
onClose: onCloseHandle,
|
|
1401
|
+
slotProps: slotMainPhotoFooter
|
|
1379
1402
|
})), items.length > 1 && /*#__PURE__*/React__namespace.createElement("aside", {
|
|
1380
1403
|
className: css.layoutPreviews
|
|
1381
1404
|
}, /*#__PURE__*/React__namespace.createElement(PreviewPhotos, {
|
|
@@ -1384,13 +1407,17 @@ var PhotoGallery = function PhotoGallery(_ref) {
|
|
|
1384
1407
|
selectedIndex: selectedIndex,
|
|
1385
1408
|
onChange: onChangePreviewPhoto,
|
|
1386
1409
|
triggerInteraction: triggerInteraction
|
|
1387
|
-
})), !!(slotAside !== null && slotAside !== void 0 && slotAside.
|
|
1388
|
-
selectedIndex: selectedIndex,
|
|
1410
|
+
})), !!(slotAside !== null && slotAside !== void 0 && slotAside.component) && /*#__PURE__*/React__namespace.createElement(SlotContainer, {
|
|
1389
1411
|
className: css.layoutAdditional,
|
|
1390
|
-
slotProps: slotAside
|
|
1391
|
-
})), !!(slotFooter !== null && slotFooter !== void 0 && slotFooter.children) && /*#__PURE__*/React__namespace.createElement(SlotContainer, {
|
|
1392
1412
|
selectedIndex: selectedIndex,
|
|
1413
|
+
itemsLength: items.length,
|
|
1414
|
+
onClose: onCloseHandle,
|
|
1415
|
+
slotProps: slotAside
|
|
1416
|
+
})), !!(slotFooter !== null && slotFooter !== void 0 && slotFooter.component) && /*#__PURE__*/React__namespace.createElement(SlotContainer, {
|
|
1393
1417
|
className: css.layoutFooter,
|
|
1418
|
+
selectedIndex: selectedIndex,
|
|
1419
|
+
itemsLength: items.length,
|
|
1420
|
+
onClose: onCloseHandle,
|
|
1394
1421
|
slotProps: slotFooter
|
|
1395
1422
|
}))))));
|
|
1396
1423
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@babel/runtime/helpers/slicedToArray"),e=require("react"),n=require("react-transition-group"),o=require("@prom-ui/core/Backdrop"),i=require("@prom-ui/core/KeyPress"),a=require("@prom-ui/core/Portal"),s=require("@prom-ui/core/ScrollControls"),r=require("@prom-ui/core/Icon"),l=require("@prom-ui/icons/Play"),c=require("@babel/runtime/helpers/taggedTemplateLiteral"),u=require("@prom-ui/core/Button"),h=require("@prom-ui/core/BodyProvider"),d=require("@prom-ui/icons/Close2"),f=require("@babel/runtime/helpers/extends"),m=require("clsx");function p(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}function g(t){if(t&&"object"==typeof t&&"default"in t)return t;var e=Object.create(null);return t&&Object.keys(t).forEach((function(n){if("default"!==n){var o=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,o.get?o:{enumerable:!0,get:function(){return t[n]}})}})),e.default=t,Object.freeze(e)}var v=p(t),y=g(e),b=p(c),x=p(f),E=p(m),w=new Map,I=function(t,e){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(e){w.has(e)&&(cancelAnimationFrame(w.get(e)),w.delete(e));var o=requestAnimationFrame((function(){var o=e.getBoundingClientRect(),i=t.getBoundingClientRect(),a=i.top+e.scrollTop-o.top-o.height/2+i.height/2,s=i.left+e.scrollLeft-o.left-o.width/2+i.width/2;s<0&&(s=0),a<0&&(a=0),e.scrollTo({behavior:n?"smooth":"instant",top:a,left:s})}));w.set(e,o)}},P=function(t){var e=/^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/)|(?:(?:watch)?\?v(?:i)?=|\&v(?:i)?=))([^#\&\?]*).*/.exec(t);return e&&e[1]},T=function(t){var e=P(t);return"https://img.youtube.com/vi/".concat(e,"/0.jpg")},z=function(){var t=function(t,e){this.el=t,this.zoomFactor=1,this.lastScale=1,this.offset={x:0,y:0},this.initialOffset={x:0,y:0},this.options=Object.assign({},this.defaults,e),this.setupMarkup(),this.bindEvents(),this.update(),this.isImageLoaded(this.el)&&(this.updateAspectRatio(),this.setupOffsets()),this.enable()},e=function(t,e){return t+e};t.prototype={defaults:{tapZoomFactor:2,zoomOutFactor:1.3,animationDuration:300,maxZoom:4,minZoom:.5,draggableUnzoomed:!0,lockDragAxis:!1,setOffsetsOnce:!1,use2d:!0,useMouseWheel:!1,verticalPadding:0,horizontalPadding:0,onZoomStart:null,onZoomEnd:null,onZoomUpdate:null,onDragStart:null,onDragEnd:null,onDragUpdate:null,onDoubleTap:null,onMouseWheel:null},handleDragStart:function(t){"function"==typeof this.options.onDragStart&&this.options.onDragStart(this,t),this.stopAnimation(),this.lastDragPosition=!1,this.hasInteraction=!0,this.handleDrag(t)},handleDrag:function(t){var e="touchmove"===t.type?this.getTouches(t)[0]:this.getPointer(t);this.drag(e,this.lastDragPosition),this.offset=this.sanitizeOffset(this.offset),this.lastDragPosition=e},handleDragEnd:function(){"function"==typeof this.options.onDragEnd&&this.options.onDragEnd(this,event),this.end()},handleZoomStart:function(t){"function"==typeof this.options.onZoomStart&&this.options.onZoomStart(this,t),this.stopAnimation(),this.lastScale=1,this.nthZoom=0,this.lastZoomCenter=!1,this.hasInteraction=!0},handleZoom:function(t,e){var n=this.getTouchCenter(this.getTouches(t)),o=e/this.lastScale;this.lastScale=e,this.nthZoom+=1,this.nthZoom>3&&(this.scale(o,n),this.drag(n,this.lastZoomCenter)),this.lastZoomCenter=n},handleZoomEnd:function(){"function"==typeof this.options.onZoomEnd&&this.options.onZoomEnd(this,event),this.end()},handleDoubleTap:function(t){var e=this.getTouches(t)[0],n=this.zoomFactor>1?1:this.options.tapZoomFactor,o=this.zoomFactor,i=function(t){this.scaleTo(o+t*(n-o),e)}.bind(this);this.hasInteraction||(this.isDoubleTap=!0,o>n&&(e=this.getCurrentZoomCenter()),this.animate(this.options.animationDuration,i,this.swing),"function"==typeof this.options.onDoubleTap&&this.options.onDoubleTap(this,t))},handleMouseWheel:function(t){var e=this.getPointer(t),n=Math.min(Math.max(this.options.minZoom,this.lastScale+-.01*t.deltaY),this.options.maxZoom),o=n/this.lastScale;this.scale(o,e),this.lastScale=n,this.update(),"function"==typeof this.options.onMouseWheel&&this.options.onMouseWheel(this,t)},computeInitialOffset:function(){this.initialOffset={x:-Math.abs(this.el.offsetWidth*this.getInitialZoomFactor()-this.container.offsetWidth)/2,y:-Math.abs(this.el.offsetHeight*this.getInitialZoomFactor()-this.container.offsetHeight)/2}},resetOffset:function(){this.offset.x=this.initialOffset.x,this.offset.y=this.initialOffset.y},isImageLoaded:function(t){return"IMG"===t.nodeName?t.complete&&0!==t.naturalHeight:Array.from(t.querySelectorAll("img")).every(this.isImageLoaded)},setupOffsets:function(){this.options.setOffsetsOnce&&this._isOffsetsSet||(this._isOffsetsSet=!0,this.computeInitialOffset(),this.resetOffset())},sanitizeOffset:function(t){var e=this.el.offsetWidth*this.getInitialZoomFactor()*this.zoomFactor,n=this.el.offsetHeight*this.getInitialZoomFactor()*this.zoomFactor,o=e-this.getContainerX()+this.options.horizontalPadding,i=n-this.getContainerY()+this.options.verticalPadding,a=Math.max(o,0),s=Math.max(i,0),r=Math.min(o,0)-this.options.horizontalPadding,l=Math.min(i,0)-this.options.verticalPadding;return{x:Math.min(Math.max(t.x,r),a),y:Math.min(Math.max(t.y,l),s)}},scaleTo:function(t,e){this.scale(t/this.zoomFactor,e)},scale:function(t,e){t=this.scaleZoomFactor(t),this.addOffset({x:(t-1)*(e.x+this.offset.x),y:(t-1)*(e.y+this.offset.y)}),"function"==typeof this.options.onZoomUpdate&&this.options.onZoomUpdate(this,event)},scaleZoomFactor:function(t){var e=this.zoomFactor;return this.zoomFactor*=t,this.zoomFactor=Math.min(this.options.maxZoom,Math.max(this.zoomFactor,this.options.minZoom)),this.zoomFactor/e},canDrag:function(){return this.options.draggableUnzoomed||!((t=this.zoomFactor)>(e=1)-.01&&t<e+.01);var t,e},drag:function(t,e){e&&(this.options.lockDragAxis?Math.abs(t.x-e.x)>Math.abs(t.y-e.y)?this.addOffset({x:-(t.x-e.x),y:0}):this.addOffset({y:-(t.y-e.y),x:0}):this.addOffset({y:-(t.y-e.y),x:-(t.x-e.x)}),"function"==typeof this.options.onDragUpdate&&this.options.onDragUpdate(this,event))},getTouchCenter:function(t){return this.getVectorAvg(t)},getVectorAvg:function(t){return{x:t.map((function(t){return t.x})).reduce(e)/t.length,y:t.map((function(t){return t.y})).reduce(e)/t.length}},addOffset:function(t){this.offset={x:this.offset.x+t.x,y:this.offset.y+t.y}},sanitize:function(){this.zoomFactor<this.options.zoomOutFactor?this.zoomOutAnimation():this.isInsaneOffset(this.offset)&&this.sanitizeOffsetAnimation()},isInsaneOffset:function(t){var e=this.sanitizeOffset(t);return e.x!==t.x||e.y!==t.y},sanitizeOffsetAnimation:function(){var t=this.sanitizeOffset(this.offset),e=this.offset.x,n=this.offset.y,o=function(o){this.offset.x=e+o*(t.x-e),this.offset.y=n+o*(t.y-n),this.update()}.bind(this);this.animate(this.options.animationDuration,o,this.swing)},zoomOutAnimation:function(){if(1!==this.zoomFactor){var t=this.zoomFactor,e=this.getCurrentZoomCenter(),n=function(n){this.scaleTo(t+n*(1-t),e)}.bind(this);this.animate(this.options.animationDuration,n,this.swing)}},updateAspectRatio:function(){this.unsetContainerY(),this.setContainerY(this.container.parentElement.offsetHeight)},getInitialZoomFactor:function(){var t=this.container.offsetWidth/this.el.offsetWidth,e=this.container.offsetHeight/this.el.offsetHeight;return Math.min(t,e)},getAspectRatio:function(){return this.el.offsetWidth/this.el.offsetHeight},getCurrentZoomCenter:function(){var t=this.offset.x-this.initialOffset.x,e=-1*this.offset.x-t/(1/this.zoomFactor-1),n=this.offset.y-this.initialOffset.y;return{x:e,y:-1*this.offset.y-n/(1/this.zoomFactor-1)}},getTouches:function(t){var e=this.container.getBoundingClientRect(),n=document.documentElement.scrollTop||document.body.scrollTop,o=document.documentElement.scrollLeft||document.body.scrollLeft,i=e.top+n,a=e.left+o;return Array.prototype.slice.call(t.touches).map((function(t){return{x:t.pageX-a,y:t.pageY-i}}))},getPointer:function(t){var e=this.container.getBoundingClientRect(),n=document.documentElement.scrollTop||document.body.scrollTop,o=document.documentElement.scrollLeft||document.body.scrollLeft,i=e.top+n,a=e.left+o;return{x:t.pageX-a,y:t.pageY-i}},animate:function(t,e,n,o){var i=(new Date).getTime(),a=function(){if(this.inAnimation){var s=(new Date).getTime()-i,r=s/t;s>=t?(e(1),o&&o(),this.update(),this.stopAnimation(),this.update()):(n&&(r=n(r)),e(r),this.update(),requestAnimationFrame(a))}}.bind(this);this.inAnimation=!0,requestAnimationFrame(a)},stopAnimation:function(){this.inAnimation=!1},swing:function(t){return-Math.cos(t*Math.PI)/2+.5},getContainerX:function(){return this.container.offsetWidth},getContainerY:function(){return this.container.offsetHeight},setContainerY:function(t){return this.container.style.height=t+"px"},unsetContainerY:function(){this.container.style.height=null},setupMarkup:function(){var t,e;this.container=(t='<div class="pinch-zoom-container" style="height: 100%;"></div>',(e=document.implementation.createHTMLDocument("")).body.innerHTML=t,Array.from(e.body.children)[0]),this.el.parentNode.insertBefore(this.container,this.el),this.container.appendChild(this.el),this.container.style.overflow="hidden",this.container.style.position="relative",this.el.style.webkitTransformOrigin="0% 0%",this.el.style.mozTransformOrigin="0% 0%",this.el.style.msTransformOrigin="0% 0%",this.el.style.oTransformOrigin="0% 0%",this.el.style.transformOrigin="0% 0%",this.el.style.position="absolute",this.el.style.backfaceVisibility="hidden",this.el.style.willChange="transform"},end:function(){this.hasInteraction=!1,this.sanitize(),this.update()},bindEvents:function(){var t=this;n(this.container,this),this.resizeHandler=this.update.bind(this),window.addEventListener("resize",this.resizeHandler),Array.from(this.el.querySelectorAll("img")).forEach((function(e){e.addEventListener("load",t.update.bind(t))})),"IMG"===this.el.nodeName&&this.el.addEventListener("load",this.update.bind(this))},update:function(t){t&&"resize"===t.type&&(this.updateAspectRatio(),this.setupOffsets()),t&&"load"===t.type&&(this.updateAspectRatio(),this.setupOffsets()),this.updatePlanned||(this.updatePlanned=!0,window.setTimeout(function(){this.updatePlanned=!1;var t=this.getInitialZoomFactor()*this.zoomFactor,e=-this.offset.x/t,n=-this.offset.y/t,o="scale3d("+t+", "+t+",1) translate3d("+e+"px,"+n+"px,0px)",i="scale("+t+", "+t+") translate("+e+"px,"+n+"px)",a=function(){this.clone&&(this.clone.parentNode.removeChild(this.clone),delete this.clone)}.bind(this);!this.options.use2d||this.hasInteraction||this.inAnimation?(this.is3d=!0,a(),this.el.style.webkitTransform=o,this.el.style.mozTransform=i,this.el.style.msTransform=i,this.el.style.oTransform=i,this.el.style.transform=o):(this.is3d&&(this.clone=this.el.cloneNode(!0),this.clone.style.pointerEvents="none",this.container.appendChild(this.clone),window.setTimeout(a,200)),this.el.style.webkitTransform=i,this.el.style.mozTransform=i,this.el.style.msTransform=i,this.el.style.oTransform=i,this.el.style.transform=i,this.is3d=!1)}.bind(this),0))},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},destroy:function(){window.removeEventListener("resize",this.resizeHandler),this.container&&(this.container.remove(),this.container=null)},reset:function(){this.zoomOutAnimation()}};var n=function(t,e){var n=null,o=0,i=null,a=null,s=function(t,o){if(n!==t){if(n&&!t)switch(n){case"zoom":e.handleZoomEnd(o);break;case"drag":e.handleDragEnd(o)}switch(t){case"zoom":e.handleZoomStart(o);break;case"drag":e.handleDragStart(o)}}n=t},r=function(t){2===o?s("zoom"):1===o&&e.canDrag()?s("drag",t):s(null,t)},l=function(t){return Array.from(t).map((function(t){return{x:t.pageX,y:t.pageY}}))},c=function(t,e){var n,o;return n=t.x-e.x,o=t.y-e.y,Math.sqrt(n*n+o*o)},u=function(t){t.stopPropagation(),t.preventDefault()},h=!0;t.addEventListener("touchstart",(function(t){e.enabled&&(h=!0,o=t.touches.length,function(t){var a=(new Date).getTime();if(o>1&&(i=null),a-i<300)switch(u(t),e.handleDoubleTap(t),n){case"zoom":e.handleZoomEnd(t);break;case"drag":e.handleDragEnd(t)}else e.isDoubleTap=!1;1===o&&(i=a)}(t))}),{passive:!1}),t.addEventListener("touchmove",(function(t){if(e.enabled&&!e.isDoubleTap){if(h)r(t),n&&u(t),a=l(t.touches);else{switch(n){case"zoom":2==a.length&&2==t.touches.length&&e.handleZoom(t,function(t,e){var n=c(t[0],t[1]);return c(e[0],e[1])/n}(a,l(t.touches)));break;case"drag":e.handleDrag(t)}n&&(u(t),e.update())}h=!1}}),{passive:!1}),t.addEventListener("touchend",(function(t){e.enabled&&(o=t.touches.length,r(t))})),e.options.useMouseWheel&&(t.addEventListener("mousewheel",(function(t){e.enabled&&(u(t),e.handleMouseWheel(t))})),t.addEventListener("mousedown",(function(t){e.enabled&&(h=!0,o=1)}),{passive:!0}),t.addEventListener("mousemove",(function(t){e.enabled&&(h?(r(t),n&&u(t)):("drag"===n&&e.handleDrag(t),n&&(u(t),e.update())),h=!1)}),{passive:!1}),t.addEventListener("mouseup",(function(t){e.enabled&&(o=0,r(t))}),{passive:!0}))};return t}(),_={scrolling:"BeLzR",root:"nJWgH",layout:"BDoOb",layoutHeader:"iNVA1",layoutContent:"C-jWr",layoutFooter:"MQh-L",layoutSection:"_3FXm5",layoutPreviews:"gQFQR",layoutAdditional:"pw0QV",header:"meCSL",headerTitle:"NpSWI",headerClose:"-B9Zg",mainPhotoScrollControls:"ckcap",mainPhoto:"-r4WP BeLzR",mainPhotoItem:"Q7wDI",mainPhotoImage:"NrcBT",mainPhotoIframe:"kObZY",preview:"_86-3f BeLzR",previewItem:"gnB8m",previewButton:"L4PR-",previewImage:"_8dsDI",videoPlayLabel:"_2kU58",videoPlayLabelIcon:"WR7T8",enter:"sM8Qu",exit:"veHZr",enterActive:"VP4oy",exitActive:"AMPJ3"},O=y.forwardRef((function(t,e){var n=t.src,o=t.videoSrc,i=t.triggerInteraction,a=y.useRef(null),s=y.useRef(null),r=y.useRef(null),l=!!o,c=function(){var t,e;null===(t=s.current)||void 0===t||t.reset(),null===(e=a.current)||void 0===e||null===(e=e.contentWindow)||void 0===e||e.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")};return y.useEffect((function(){return requestAnimationFrame((function(){r.current&&!l&&(s.current=new z(r.current,{draggableUnzoomed:!1,animationDuration:200,setOffsetsOnce:!1,onDoubleTap:function(t){1===(null==t?void 0:t.zoomFactor)&&i("maybeZoomImage")}}))})),function(){var t;null===(t=s.current)||void 0===t||t.destroy()}}),[o]),y.useEffect((function(){var t=function(){l&&document.activeElement&&"iframe"===document.activeElement.nodeName.toLowerCase()&&a.current&&a.current===document.activeElement&&i("maybePlayVideo")};return window.addEventListener("blur",t),function(){window.removeEventListener("blur",t)}}),[o]),y.useImperativeHandle(e,(function(){return{reset:c}}),[]),l?y.createElement("iframe",{ref:a,className:_.mainPhotoIframe,src:o,width:"100%",height:"100%",allowFullScreen:!0,title:"",loading:"lazy","data-qaid":"photo_gallery_main_video","data-testid":"photo_gallery_main_video"}):y.createElement("img",{ref:r,className:_.mainPhotoImage,src:n,width:"100%",height:"100%",alt:"",decoding:"async",loading:"lazy","data-qaid":"photo_gallery_main_image","data-testid":"photo_gallery_main_image"})}));O.displayName="MainPhotosImage";var C=y.forwardRef((function(t,e){var n=t.items,o=t.onChange,i=t.triggerInteraction,a=y.useRef(null),r=y.useRef([]),l=y.useRef(0),c=y.useRef(null),u=function(){r.current.forEach((function(t){null==t||t.reset()}))},h=function(t){var e,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=null===(e=c.current)||void 0===e?void 0:e.children[t];u(),o&&I(o,c.current,n)};y.useImperativeHandle(e,(function(){return{scrollToIndex:h}}),[]);return y.createElement(s.ScrollControls,{ref:c,className:_.mainPhotoScrollControls,showOnHover:!0,hideOnDisabled:!0,onClickPrev:function(){return i("clickPrevButton")},onClickNext:function(){return i("clickNextButton")}},y.createElement("div",{className:_.mainPhoto,onScroll:function(){if(c.current){var t=function(t,e){var n=t.scrollLeft/t.scrollWidth*e;return Math.round(n)}(c.current,n.length);l.current!==t&&(l.current=t,o(t),u())}},onTouchStart:function(t){var e=t.changedTouches[0].screenX;a.current=e},onTouchEnd:function(t){var e=t.changedTouches[0].screenX;a.current&&(a.current>e?i("maybeSwipeLeft"):a.current<e&&i("maybeSwipeRight"),a.current=null)}},n.map((function(t,e){var n,o=t.type,a=t.src,s="video"===o,l=s?T(a):a,c=s?(n=P(a),"https://youtube.com/embed/".concat(n,"?enablejsapi=1&rel=0")):void 0;return y.createElement("div",{key:e,className:_.mainPhotoItem,"data-qaid":"photo_gallery_main_item","data-testid":"photo_gallery_main_item"},y.createElement(O,{ref:function(t){r.current[e]=t},src:l,videoSrc:c,triggerInteraction:i}))}))))}));C.displayName="MainPhotos";var D,L=y.forwardRef((function(t,e){var n=t.items,o=t.selectedIndex,i=t.onChange,a=t.triggerInteraction,s=y.useRef(null),c=function(t){var e,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=null===(e=s.current)||void 0===e?void 0:e.children[t];o&&I(o,s.current,n)};y.useImperativeHandle(e,(function(){return{scrollToIndex:c}}),[]);return y.createElement("div",{ref:s,className:_.preview,onScroll:function(){a("scrollPreviews")}},n.map((function(t,e){var n=t.type,s=t.src,c="video"===n,u=c?T(s):s,h=c?"clickPreviewVideo":"clickPreviewImage";return y.createElement("div",{key:e,className:_.previewItem,"data-qaid":"photo_gallery_preview_item","data-testid":"photo_gallery_preview_item"},y.createElement("button",{className:_.previewButton,type:"button",onClick:function(){a(h),function(t){i(t)}(e)},disabled:o===e,"data-qaid":"photo_gallery_preview_button","data-testid":"photo_gallery_preview_button"},y.createElement("img",{className:_.previewImage,src:u,width:58,height:58,alt:"",decoding:"async",loading:"lazy","data-qaid":"photo_gallery_preview_image","data-testid":"photo_gallery_preview_image"}),c&&y.createElement("div",{className:_.videoPlayLabel,"data-qaid":"photo_gallery_preview_play","data-testid":"photo_gallery_preview_play"},y.createElement(r.Icon,{className:_.videoPlayLabelIcon,"icon-as":l.SvgPlay}))))})))}));L.displayName="PreviewPhotos";var Z=function(t){var e=t.title,n=t.onClose,o=t.selectedIndex,i=t.itemsLength,a=t.triggerInteraction,s=o+1,l=(0,h.useBodyStoreTTag().t)(D||(D=b.default(["Фото "," из ",""])),s,i);return y.createElement("div",{className:_.header},y.createElement("div",{className:_.headerTitle,"data-qaid":"photo_gallery_title","data-testid":"photo_gallery_title"},e||l),y.createElement("div",{className:_.headerClose},y.createElement(u.Button,{"button-padding":"xxs","button-theme":"black-inherit",type:"button",onClick:function(){a("clickCloseButton"),n()},"data-qaid":"photo_gallery_close_button","data-testid":"photo_gallery_close_button"},y.createElement(r.Icon,{"icon-as":d.SvgClose2,style:{width:24,height:24}}))))},A=function(t){var e,n=t.selectedIndex,o=t.className,i=t.slotProps,a=y.useRef(null);return y.useEffect((function(){var t;null===(t=a.current)||void 0===t||t.scrollTo({top:0})}),[n]),y.createElement("div",x.default({},i.props,{ref:a,className:E.default(o,null===(e=i.props)||void 0===e?void 0:e.className)}),i.children(n))},M=function(t){var e=t.isOpen,s=t.title,r=t.visibleIndex,l=void 0===r?0:r,c=t.items,u=t.zIndex,h=void 0===u?5e3:u,d=t.onClose,f=t.onChange,m=t.onInteraction,p=t.slotAside,g=t.slotFooter,b=y.useRef(!0),x=y.useRef(null),E=y.useRef(null),w=y.useState(l),I=v.default(w,2),P=I[0],T=I[1],z=y.useRef(null),O=function(t){"function"==typeof m&&m(t)};y.useEffect((function(){e&&"function"==typeof f&&f(P)}),[P]),y.useEffect((function(){var t,n;e&&(T(l),null===(t=E.current)||void 0===t||t.scrollToIndex(l,!1),null===(n=x.current)||void 0===n||n.scrollToIndex(l,!1))}),[e]),y.useEffect((function(){var t;if(!e)return function(){};var n=null,o=function(){n&&clearTimeout(n)},i=function(){o(),n=setTimeout((function(){var t,e;null===(t=E.current)||void 0===t||t.scrollToIndex(P,!1),null===(e=x.current)||void 0===e||e.scrollToIndex(P,!1)}),100)};return window.addEventListener("resize",i),null===(t=window)||void 0===t||null===(t=t.matchMedia("(orientation: portrait)"))||void 0===t||t.addEventListener("change",i),function(){var t;o(),window.removeEventListener("resize",i),null===(t=window)||void 0===t||null===(t=t.matchMedia("(orientation: portrait)"))||void 0===t||t.removeEventListener("change",i)}}),[e,P]);var D=function(t){var e,n;b.current=!1,T(t),null===(e=E.current)||void 0===e||e.scrollToIndex(t),null===(n=x.current)||void 0===n||n.scrollToIndex(t)},M=function(){d(P)};return y.createElement(y.Fragment,null,y.createElement(o.Backdrop,{isOpen:e,onClick:M,zIndex:h,isBodyScrollLock:!0}),y.createElement(n.CSSTransition,{nodeRef:z,in:e,timeout:240,classNames:_,unmountOnExit:!0,onEntered:function(){return O("opened")},onExited:function(){return O("closed")}},y.createElement(a.Portal,null,y.createElement("div",{ref:z,className:_.root,"data-qaid":"photo_gallery","data-testid":"photo_gallery",style:{zIndex:h}},y.createElement(i.KeyPress,{code:"Escape",onKeyUp:function(){O("keyPressClose"),M()}}),y.createElement(i.KeyPress,{code:"ArrowLeft",onKeyUp:function(){0!==P&&(O("keyPressPrev"),D(P-1))}}),y.createElement(i.KeyPress,{code:"ArrowRight",onKeyUp:function(){P!==c.length-1&&(O("keyPressNext"),D(P+1))}}),y.createElement("div",{className:_.layout},y.createElement("header",{className:_.layoutHeader},y.createElement(Z,{title:s,selectedIndex:P,itemsLength:c.length,onClose:M,triggerInteraction:O})),y.createElement("div",{className:_.layoutContent},y.createElement("section",{className:_.layoutSection},y.createElement(C,{ref:x,items:c,onChange:function(t){var e;b.current&&(T(t),null===(e=E.current)||void 0===e||e.scrollToIndex(t));b.current||P!==t||(b.current=!0)},triggerInteraction:O})),c.length>1&&y.createElement("aside",{className:_.layoutPreviews},y.createElement(L,{ref:E,items:c,selectedIndex:P,onChange:D,triggerInteraction:O})),!(null==p||!p.children)&&y.createElement(A,{selectedIndex:P,className:_.layoutAdditional,slotProps:p})),!(null==g||!g.children)&&y.createElement(A,{selectedIndex:P,className:_.layoutFooter,slotProps:g}))))))};M.displayName="PhotoGallery",exports.PhotoGallery=M,require("./style.production.css");
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@babel/runtime/helpers/slicedToArray"),e=require("react"),n=require("react-transition-group"),o=require("@prom-ui/core/Backdrop"),i=require("@prom-ui/core/KeyPress"),a=require("@prom-ui/core/Portal"),s=require("@prom-ui/core/ScrollControls"),r=require("@prom-ui/core/Icon"),l=require("@prom-ui/icons/Play"),c=require("@babel/runtime/helpers/taggedTemplateLiteral"),u=require("@prom-ui/core/Button"),h=require("@prom-ui/core/BodyProvider"),d=require("@prom-ui/icons/Close2"),f=require("@babel/runtime/helpers/extends"),m=require("clsx");function p(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}function g(t){if(t&&"object"==typeof t&&"default"in t)return t;var e=Object.create(null);return t&&Object.keys(t).forEach((function(n){if("default"!==n){var o=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,o.get?o:{enumerable:!0,get:function(){return t[n]}})}})),e.default=t,Object.freeze(e)}var v=p(t),y=g(e),b=p(c),x=p(f),E=p(m),w=new Map,I=function(t,e){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(e){w.has(e)&&(cancelAnimationFrame(w.get(e)),w.delete(e));var o=requestAnimationFrame((function(){var o=e.getBoundingClientRect(),i=t.getBoundingClientRect(),a=i.top+e.scrollTop-o.top-o.height/2+i.height/2,s=i.left+e.scrollLeft-o.left-o.width/2+i.width/2;s<0&&(s=0),a<0&&(a=0),e.scrollTo({behavior:n?"smooth":"instant",top:a,left:s})}));w.set(e,o)}},P=function(t){var e=/^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/)|(?:(?:watch)?\?v(?:i)?=|\&v(?:i)?=))([^#\&\?]*).*/.exec(t);return e&&e[1]},T=function(t){var e=P(t);return"https://img.youtube.com/vi/".concat(e,"/0.jpg")},z=function(){var t=function(t,e){this.el=t,this.zoomFactor=1,this.lastScale=1,this.offset={x:0,y:0},this.initialOffset={x:0,y:0},this.options=Object.assign({},this.defaults,e),this.setupMarkup(),this.bindEvents(),this.update(),this.isImageLoaded(this.el)&&(this.updateAspectRatio(),this.setupOffsets()),this.enable()},e=function(t,e){return t+e};t.prototype={defaults:{tapZoomFactor:2,zoomOutFactor:1.3,animationDuration:300,maxZoom:4,minZoom:.5,draggableUnzoomed:!0,lockDragAxis:!1,setOffsetsOnce:!1,use2d:!0,useMouseWheel:!1,verticalPadding:0,horizontalPadding:0,onZoomStart:null,onZoomEnd:null,onZoomUpdate:null,onDragStart:null,onDragEnd:null,onDragUpdate:null,onDoubleTap:null,onMouseWheel:null},handleDragStart:function(t){"function"==typeof this.options.onDragStart&&this.options.onDragStart(this,t),this.stopAnimation(),this.lastDragPosition=!1,this.hasInteraction=!0,this.handleDrag(t)},handleDrag:function(t){var e="touchmove"===t.type?this.getTouches(t)[0]:this.getPointer(t);this.drag(e,this.lastDragPosition),this.offset=this.sanitizeOffset(this.offset),this.lastDragPosition=e},handleDragEnd:function(){"function"==typeof this.options.onDragEnd&&this.options.onDragEnd(this,event),this.end()},handleZoomStart:function(t){"function"==typeof this.options.onZoomStart&&this.options.onZoomStart(this,t),this.stopAnimation(),this.lastScale=1,this.nthZoom=0,this.lastZoomCenter=!1,this.hasInteraction=!0},handleZoom:function(t,e){var n=this.getTouchCenter(this.getTouches(t)),o=e/this.lastScale;this.lastScale=e,this.nthZoom+=1,this.nthZoom>3&&(this.scale(o,n),this.drag(n,this.lastZoomCenter)),this.lastZoomCenter=n},handleZoomEnd:function(){"function"==typeof this.options.onZoomEnd&&this.options.onZoomEnd(this,event),this.end()},handleDoubleTap:function(t){var e=this.getTouches(t)[0],n=this.zoomFactor>1?1:this.options.tapZoomFactor,o=this.zoomFactor,i=function(t){this.scaleTo(o+t*(n-o),e)}.bind(this);this.hasInteraction||(this.isDoubleTap=!0,o>n&&(e=this.getCurrentZoomCenter()),this.animate(this.options.animationDuration,i,this.swing),"function"==typeof this.options.onDoubleTap&&this.options.onDoubleTap(this,t))},handleMouseWheel:function(t){var e=this.getPointer(t),n=Math.min(Math.max(this.options.minZoom,this.lastScale+-.01*t.deltaY),this.options.maxZoom),o=n/this.lastScale;this.scale(o,e),this.lastScale=n,this.update(),"function"==typeof this.options.onMouseWheel&&this.options.onMouseWheel(this,t)},computeInitialOffset:function(){this.initialOffset={x:-Math.abs(this.el.offsetWidth*this.getInitialZoomFactor()-this.container.offsetWidth)/2,y:-Math.abs(this.el.offsetHeight*this.getInitialZoomFactor()-this.container.offsetHeight)/2}},resetOffset:function(){this.offset.x=this.initialOffset.x,this.offset.y=this.initialOffset.y},isImageLoaded:function(t){return"IMG"===t.nodeName?t.complete&&0!==t.naturalHeight:Array.from(t.querySelectorAll("img")).every(this.isImageLoaded)},setupOffsets:function(){this.options.setOffsetsOnce&&this._isOffsetsSet||(this._isOffsetsSet=!0,this.computeInitialOffset(),this.resetOffset())},sanitizeOffset:function(t){var e=this.el.offsetWidth*this.getInitialZoomFactor()*this.zoomFactor,n=this.el.offsetHeight*this.getInitialZoomFactor()*this.zoomFactor,o=e-this.getContainerX()+this.options.horizontalPadding,i=n-this.getContainerY()+this.options.verticalPadding,a=Math.max(o,0),s=Math.max(i,0),r=Math.min(o,0)-this.options.horizontalPadding,l=Math.min(i,0)-this.options.verticalPadding;return{x:Math.min(Math.max(t.x,r),a),y:Math.min(Math.max(t.y,l),s)}},scaleTo:function(t,e){this.scale(t/this.zoomFactor,e)},scale:function(t,e){t=this.scaleZoomFactor(t),this.addOffset({x:(t-1)*(e.x+this.offset.x),y:(t-1)*(e.y+this.offset.y)}),"function"==typeof this.options.onZoomUpdate&&this.options.onZoomUpdate(this,event)},scaleZoomFactor:function(t){var e=this.zoomFactor;return this.zoomFactor*=t,this.zoomFactor=Math.min(this.options.maxZoom,Math.max(this.zoomFactor,this.options.minZoom)),this.zoomFactor/e},canDrag:function(){return this.options.draggableUnzoomed||!((t=this.zoomFactor)>(e=1)-.01&&t<e+.01);var t,e},drag:function(t,e){e&&(this.options.lockDragAxis?Math.abs(t.x-e.x)>Math.abs(t.y-e.y)?this.addOffset({x:-(t.x-e.x),y:0}):this.addOffset({y:-(t.y-e.y),x:0}):this.addOffset({y:-(t.y-e.y),x:-(t.x-e.x)}),"function"==typeof this.options.onDragUpdate&&this.options.onDragUpdate(this,event))},getTouchCenter:function(t){return this.getVectorAvg(t)},getVectorAvg:function(t){return{x:t.map((function(t){return t.x})).reduce(e)/t.length,y:t.map((function(t){return t.y})).reduce(e)/t.length}},addOffset:function(t){this.offset={x:this.offset.x+t.x,y:this.offset.y+t.y}},sanitize:function(){this.zoomFactor<this.options.zoomOutFactor?this.zoomOutAnimation():this.isInsaneOffset(this.offset)&&this.sanitizeOffsetAnimation()},isInsaneOffset:function(t){var e=this.sanitizeOffset(t);return e.x!==t.x||e.y!==t.y},sanitizeOffsetAnimation:function(){var t=this.sanitizeOffset(this.offset),e=this.offset.x,n=this.offset.y,o=function(o){this.offset.x=e+o*(t.x-e),this.offset.y=n+o*(t.y-n),this.update()}.bind(this);this.animate(this.options.animationDuration,o,this.swing)},zoomOutAnimation:function(){if(1!==this.zoomFactor){var t=this.zoomFactor,e=this.getCurrentZoomCenter(),n=function(n){this.scaleTo(t+n*(1-t),e)}.bind(this);this.animate(this.options.animationDuration,n,this.swing)}},updateAspectRatio:function(){this.unsetContainerY(),this.setContainerY(this.container.parentElement.offsetHeight)},getInitialZoomFactor:function(){var t=this.container.offsetWidth/this.el.offsetWidth,e=this.container.offsetHeight/this.el.offsetHeight;return Math.min(t,e)},getAspectRatio:function(){return this.el.offsetWidth/this.el.offsetHeight},getCurrentZoomCenter:function(){var t=this.offset.x-this.initialOffset.x,e=-1*this.offset.x-t/(1/this.zoomFactor-1),n=this.offset.y-this.initialOffset.y;return{x:e,y:-1*this.offset.y-n/(1/this.zoomFactor-1)}},getTouches:function(t){var e=this.container.getBoundingClientRect(),n=document.documentElement.scrollTop||document.body.scrollTop,o=document.documentElement.scrollLeft||document.body.scrollLeft,i=e.top+n,a=e.left+o;return Array.prototype.slice.call(t.touches).map((function(t){return{x:t.pageX-a,y:t.pageY-i}}))},getPointer:function(t){var e=this.container.getBoundingClientRect(),n=document.documentElement.scrollTop||document.body.scrollTop,o=document.documentElement.scrollLeft||document.body.scrollLeft,i=e.top+n,a=e.left+o;return{x:t.pageX-a,y:t.pageY-i}},animate:function(t,e,n,o){var i=(new Date).getTime(),a=function(){if(this.inAnimation){var s=(new Date).getTime()-i,r=s/t;s>=t?(e(1),o&&o(),this.update(),this.stopAnimation(),this.update()):(n&&(r=n(r)),e(r),this.update(),requestAnimationFrame(a))}}.bind(this);this.inAnimation=!0,requestAnimationFrame(a)},stopAnimation:function(){this.inAnimation=!1},swing:function(t){return-Math.cos(t*Math.PI)/2+.5},getContainerX:function(){return this.container.offsetWidth},getContainerY:function(){return this.container.offsetHeight},setContainerY:function(t){return this.container.style.height=t+"px"},unsetContainerY:function(){this.container.style.height=null},setupMarkup:function(){var t,e;this.container=(t='<div class="pinch-zoom-container" style="height: 100%;"></div>',(e=document.implementation.createHTMLDocument("")).body.innerHTML=t,Array.from(e.body.children)[0]),this.el.parentNode.insertBefore(this.container,this.el),this.container.appendChild(this.el),this.container.style.overflow="hidden",this.container.style.position="relative",this.el.style.webkitTransformOrigin="0% 0%",this.el.style.mozTransformOrigin="0% 0%",this.el.style.msTransformOrigin="0% 0%",this.el.style.oTransformOrigin="0% 0%",this.el.style.transformOrigin="0% 0%",this.el.style.position="absolute",this.el.style.backfaceVisibility="hidden",this.el.style.willChange="transform"},end:function(){this.hasInteraction=!1,this.sanitize(),this.update()},bindEvents:function(){var t=this;n(this.container,this),this.resizeHandler=this.update.bind(this),window.addEventListener("resize",this.resizeHandler),Array.from(this.el.querySelectorAll("img")).forEach((function(e){e.addEventListener("load",t.update.bind(t))})),"IMG"===this.el.nodeName&&this.el.addEventListener("load",this.update.bind(this))},update:function(t){t&&"resize"===t.type&&(this.updateAspectRatio(),this.setupOffsets()),t&&"load"===t.type&&(this.updateAspectRatio(),this.setupOffsets()),this.updatePlanned||(this.updatePlanned=!0,window.setTimeout(function(){this.updatePlanned=!1;var t=this.getInitialZoomFactor()*this.zoomFactor,e=-this.offset.x/t,n=-this.offset.y/t,o="scale3d("+t+", "+t+",1) translate3d("+e+"px,"+n+"px,0px)",i="scale("+t+", "+t+") translate("+e+"px,"+n+"px)",a=function(){this.clone&&(this.clone.parentNode.removeChild(this.clone),delete this.clone)}.bind(this);!this.options.use2d||this.hasInteraction||this.inAnimation?(this.is3d=!0,a(),this.el.style.webkitTransform=o,this.el.style.mozTransform=i,this.el.style.msTransform=i,this.el.style.oTransform=i,this.el.style.transform=o):(this.is3d&&(this.clone=this.el.cloneNode(!0),this.clone.style.pointerEvents="none",this.container.appendChild(this.clone),window.setTimeout(a,200)),this.el.style.webkitTransform=i,this.el.style.mozTransform=i,this.el.style.msTransform=i,this.el.style.oTransform=i,this.el.style.transform=i,this.is3d=!1)}.bind(this),0))},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},destroy:function(){window.removeEventListener("resize",this.resizeHandler),this.container&&(this.container.remove(),this.container=null)},reset:function(){this.zoomOutAnimation()}};var n=function(t,e){var n=null,o=0,i=null,a=null,s=function(t,o){if(n!==t){if(n&&!t)switch(n){case"zoom":e.handleZoomEnd(o);break;case"drag":e.handleDragEnd(o)}switch(t){case"zoom":e.handleZoomStart(o);break;case"drag":e.handleDragStart(o)}}n=t},r=function(t){2===o?s("zoom"):1===o&&e.canDrag()?s("drag",t):s(null,t)},l=function(t){return Array.from(t).map((function(t){return{x:t.pageX,y:t.pageY}}))},c=function(t,e){var n,o;return n=t.x-e.x,o=t.y-e.y,Math.sqrt(n*n+o*o)},u=function(t){t.stopPropagation(),t.preventDefault()},h=!0;t.addEventListener("touchstart",(function(t){e.enabled&&(h=!0,o=t.touches.length,function(t){var a=(new Date).getTime();if(o>1&&(i=null),a-i<300)switch(u(t),e.handleDoubleTap(t),n){case"zoom":e.handleZoomEnd(t);break;case"drag":e.handleDragEnd(t)}else e.isDoubleTap=!1;1===o&&(i=a)}(t))}),{passive:!1}),t.addEventListener("touchmove",(function(t){if(e.enabled&&!e.isDoubleTap){if(h)r(t),n&&u(t),a=l(t.touches);else{switch(n){case"zoom":2==a.length&&2==t.touches.length&&e.handleZoom(t,function(t,e){var n=c(t[0],t[1]);return c(e[0],e[1])/n}(a,l(t.touches)));break;case"drag":e.handleDrag(t)}n&&(u(t),e.update())}h=!1}}),{passive:!1}),t.addEventListener("touchend",(function(t){e.enabled&&(o=t.touches.length,r(t))})),e.options.useMouseWheel&&(t.addEventListener("mousewheel",(function(t){e.enabled&&(u(t),e.handleMouseWheel(t))})),t.addEventListener("mousedown",(function(t){e.enabled&&(h=!0,o=1)}),{passive:!0}),t.addEventListener("mousemove",(function(t){e.enabled&&(h?(r(t),n&&u(t)):("drag"===n&&e.handleDrag(t),n&&(u(t),e.update())),h=!1)}),{passive:!1}),t.addEventListener("mouseup",(function(t){e.enabled&&(o=0,r(t))}),{passive:!0}))};return t}(),C={scrolling:"BeLzR",root:"nJWgH",layout:"BDoOb",layoutHeader:"iNVA1",slotLayoutHeader:"KxMxT",layoutContent:"C-jWr",layoutFooter:"MQh-L",layoutSection:"_3FXm5",layoutSectionContent:"WPu-a",layoutSectionFooter:"G5FaN",layoutPreviews:"gQFQR",layoutAdditional:"pw0QV",header:"meCSL",headerTitle:"NpSWI",headerClose:"-B9Zg",mainPhotoScrollControls:"ckcap",mainPhoto:"-r4WP BeLzR",mainPhotoItem:"Q7wDI",mainPhotoImage:"NrcBT",mainPhotoIframe:"kObZY",preview:"_86-3f BeLzR",previewItem:"gnB8m",previewButton:"L4PR-",previewImage:"_8dsDI",videoPlayLabel:"_2kU58",videoPlayLabelIcon:"WR7T8",enter:"sM8Qu",exit:"veHZr",enterActive:"VP4oy",exitActive:"AMPJ3"},_=y.forwardRef((function(t,e){var n=t.src,o=t.videoSrc,i=t.triggerInteraction,a=y.useRef(null),s=y.useRef(null),r=y.useRef(null),l=!!o,c=function(){var t,e;null===(t=s.current)||void 0===t||t.reset(),null===(e=a.current)||void 0===e||null===(e=e.contentWindow)||void 0===e||e.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")};return y.useEffect((function(){return requestAnimationFrame((function(){r.current&&!l&&(s.current=new z(r.current,{draggableUnzoomed:!1,animationDuration:200,setOffsetsOnce:!1,onDoubleTap:function(t){1===(null==t?void 0:t.zoomFactor)&&i("maybeZoomImage")}}))})),function(){var t;null===(t=s.current)||void 0===t||t.destroy()}}),[o]),y.useEffect((function(){var t=function(){l&&document.activeElement&&"iframe"===document.activeElement.nodeName.toLowerCase()&&a.current&&a.current===document.activeElement&&i("maybePlayVideo")};return window.addEventListener("blur",t),function(){window.removeEventListener("blur",t)}}),[o]),y.useImperativeHandle(e,(function(){return{reset:c}}),[]),l?y.createElement("iframe",{ref:a,className:C.mainPhotoIframe,src:o,width:"100%",height:"100%",allowFullScreen:!0,title:"",loading:"lazy","data-qaid":"photo_gallery_main_video","data-testid":"photo_gallery_main_video"}):y.createElement("img",{ref:r,className:C.mainPhotoImage,src:n,width:"100%",height:"100%",alt:"",decoding:"async",loading:"lazy","data-qaid":"photo_gallery_main_image","data-testid":"photo_gallery_main_image"})}));_.displayName="MainPhotosImage";var O=y.forwardRef((function(t,e){var n=t.items,o=t.onChange,i=t.triggerInteraction,a=y.useRef(null),r=y.useRef([]),l=y.useRef(0),c=y.useRef(null),u=function(){r.current.forEach((function(t){null==t||t.reset()}))},h=function(t){var e,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=null===(e=c.current)||void 0===e?void 0:e.children[t];u(),o&&I(o,c.current,n)};y.useImperativeHandle(e,(function(){return{scrollToIndex:h}}),[]);return y.createElement(s.ScrollControls,{ref:c,className:C.mainPhotoScrollControls,showOnHover:!0,hideOnDisabled:!0,onClickPrev:function(){return i("clickPrevButton")},onClickNext:function(){return i("clickNextButton")}},y.createElement("div",{className:C.mainPhoto,onScroll:function(){if(c.current){var t=function(t,e){var n=t.scrollLeft/t.scrollWidth*e;return Math.round(n)}(c.current,n.length);l.current!==t&&(l.current=t,o(t),u())}},onTouchStart:function(t){var e=t.changedTouches[0].screenX;a.current=e},onTouchEnd:function(t){var e=t.changedTouches[0].screenX;a.current&&(a.current>e?i("maybeSwipeLeft"):a.current<e&&i("maybeSwipeRight"),a.current=null)}},n.map((function(t,e){var n,o=t.type,a=t.src,s="video"===o,l=s?T(a):a,c=s?(n=P(a),"https://youtube.com/embed/".concat(n,"?enablejsapi=1&rel=0")):void 0;return y.createElement("div",{key:e,className:C.mainPhotoItem,"data-qaid":"photo_gallery_main_item","data-testid":"photo_gallery_main_item"},y.createElement(_,{ref:function(t){r.current[e]=t},src:l,videoSrc:c,triggerInteraction:i}))}))))}));O.displayName="MainPhotos";var L,D=y.forwardRef((function(t,e){var n=t.items,o=t.selectedIndex,i=t.onChange,a=t.triggerInteraction,s=y.useRef(null),c=function(t){var e,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=null===(e=s.current)||void 0===e?void 0:e.children[t];o&&I(o,s.current,n)};y.useImperativeHandle(e,(function(){return{scrollToIndex:c}}),[]);return y.createElement("div",{ref:s,className:C.preview,onScroll:function(){a("scrollPreviews")}},n.map((function(t,e){var n=t.type,s=t.src,c="video"===n,u=c?T(s):s,h=c?"clickPreviewVideo":"clickPreviewImage";return y.createElement("div",{key:e,className:C.previewItem,"data-qaid":"photo_gallery_preview_item","data-testid":"photo_gallery_preview_item"},y.createElement("button",{className:C.previewButton,type:"button",onClick:function(){a(h),function(t){i(t)}(e)},disabled:o===e,"data-qaid":"photo_gallery_preview_button","data-testid":"photo_gallery_preview_button"},y.createElement("img",{className:C.previewImage,src:u,width:56,height:56,alt:"",decoding:"async",loading:"lazy","data-qaid":"photo_gallery_preview_image","data-testid":"photo_gallery_preview_image"}),c&&y.createElement("div",{className:C.videoPlayLabel,"data-qaid":"photo_gallery_preview_play","data-testid":"photo_gallery_preview_play"},y.createElement(r.Icon,{className:C.videoPlayLabelIcon,"icon-as":l.SvgPlay}))))})))}));D.displayName="PreviewPhotos";var S=function(t){var e=t.title,n=t.onClose,o=t.selectedIndex,i=t.itemsLength,a=t.triggerInteraction,s=o+1,l=(0,h.useBodyStoreTTag().t)(L||(L=b.default(["Фото "," из ",""])),s,i);return y.createElement("div",{className:C.header},y.createElement("div",{className:C.headerTitle,"data-qaid":"photo_gallery_title","data-testid":"photo_gallery_title"},e||l),y.createElement("div",{className:C.headerClose},y.createElement(u.Button,{"button-padding":"xxs","button-theme":"black-inherit",type:"button",onClick:function(){a("clickCloseButton"),n()},"data-qaid":"photo_gallery_close_button","data-testid":"photo_gallery_close_button"},y.createElement(r.Icon,{"icon-as":d.SvgClose2,style:{width:24,height:24}}))))},F=function(t){var e,n=t.selectedIndex,o=t.onClose,i=t.className,a=t.slotProps,s=t.itemsLength,r=y.useRef(null),l=a.component;return y.useEffect((function(){var t;null===(t=r.current)||void 0===t||t.scrollTo({top:0})}),[n]),y.createElement("div",x.default({},a.props,{ref:r,className:E.default(i,null===(e=a.props)||void 0===e?void 0:e.className)}),y.createElement(l,{selectedIndex:n,itemsLength:s,onClose:o}))},M=function(t){var e=t.isOpen,s=t.title,r=t.visibleIndex,l=void 0===r?0:r,c=t.items,u=t.zIndex,h=void 0===u?5e3:u,d=t.onClose,f=t.onChange,m=t.onInteraction,p=t.slotHeader,g=t.slotAside,b=t.slotFooter,x=t.slotMainPhotoFooter,E=y.useRef(!0),w=y.useRef(null),I=y.useRef(null),P=y.useState(l),T=v.default(P,2),z=T[0],_=T[1],L=y.useRef(null),M=function(t){"function"==typeof m&&m(t)};y.useEffect((function(){e&&"function"==typeof f&&f(z)}),[z]),y.useEffect((function(){var t,n;e&&(_(l),null===(t=I.current)||void 0===t||t.scrollToIndex(l,!1),null===(n=w.current)||void 0===n||n.scrollToIndex(l,!1))}),[e]),y.useEffect((function(){var t;if(!e)return function(){};var n=null,o=function(){n&&clearTimeout(n)},i=function(){o(),n=setTimeout((function(){var t,e;null===(t=I.current)||void 0===t||t.scrollToIndex(z,!1),null===(e=w.current)||void 0===e||e.scrollToIndex(z,!1)}),100)};return window.addEventListener("resize",i),null===(t=window)||void 0===t||null===(t=t.matchMedia("(orientation: portrait)"))||void 0===t||t.addEventListener("change",i),function(){var t;o(),window.removeEventListener("resize",i),null===(t=window)||void 0===t||null===(t=t.matchMedia("(orientation: portrait)"))||void 0===t||t.removeEventListener("change",i)}}),[e,z]);var N=function(t){var e,n;E.current=!1,_(t),null===(e=I.current)||void 0===e||e.scrollToIndex(t),null===(n=w.current)||void 0===n||n.scrollToIndex(t)},Z=function(){d(z)};return y.createElement(y.Fragment,null,y.createElement(o.Backdrop,{isOpen:e,onClick:Z,zIndex:h,isBodyScrollLock:!0}),y.createElement(n.CSSTransition,{nodeRef:L,in:e,timeout:240,classNames:C,unmountOnExit:!0,onEntered:function(){return M("opened")},onExited:function(){return M("closed")}},y.createElement(a.Portal,null,y.createElement("div",{ref:L,className:C.root,"data-qaid":"photo_gallery","data-testid":"photo_gallery",style:{zIndex:h}},y.createElement(i.KeyPress,{code:"Escape",onKeyUp:function(){M("keyPressClose"),Z()}}),y.createElement(i.KeyPress,{code:"ArrowLeft",onKeyUp:function(){0!==z&&(M("keyPressPrev"),N(z-1))}}),y.createElement(i.KeyPress,{code:"ArrowRight",onKeyUp:function(){z!==c.length-1&&(M("keyPressNext"),N(z+1))}}),y.createElement("div",{className:C.layout},null!=p&&p.component?y.createElement(F,{className:C.slotLayoutHeader,selectedIndex:z,itemsLength:c.length,onClose:Z,slotProps:p}):y.createElement("header",{className:C.layoutHeader},y.createElement(S,{title:s,selectedIndex:z,itemsLength:c.length,onClose:Z,triggerInteraction:M})),y.createElement("div",{className:C.layoutContent},y.createElement("section",{className:C.layoutSection},y.createElement("div",{className:C.layoutSectionContent},y.createElement(O,{ref:w,items:c,onChange:function(t){var e;E.current&&(_(t),null===(e=I.current)||void 0===e||e.scrollToIndex(t));E.current||z!==t||(E.current=!0)},triggerInteraction:M})),!(null==x||!x.component)&&y.createElement(F,{className:C.layoutSectionFooter,selectedIndex:z,itemsLength:c.length,onClose:Z,slotProps:x})),c.length>1&&y.createElement("aside",{className:C.layoutPreviews},y.createElement(D,{ref:I,items:c,selectedIndex:z,onChange:N,triggerInteraction:M})),!(null==g||!g.component)&&y.createElement(F,{className:C.layoutAdditional,selectedIndex:z,itemsLength:c.length,onClose:Z,slotProps:g})),!(null==b||!b.component)&&y.createElement(F,{className:C.layoutFooter,selectedIndex:z,itemsLength:c.length,onClose:Z,slotProps:b}))))))};M.displayName="PhotoGallery",exports.PhotoGallery=M,require("./style.production.css");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@babel/runtime/helpers/slicedToArray"),e=require("react"),n=require("react-transition-group"),o=require("@prom-ui/core/Backdrop"),i=require("@prom-ui/core/KeyPress"),a=require("@prom-ui/core/Portal"),s=require("@prom-ui/core/ScrollControls"),r=require("@prom-ui/core/Icon"),l=require("@prom-ui/icons/Play"),c=require("@babel/runtime/helpers/taggedTemplateLiteral"),u=require("@prom-ui/core/Button"),h=require("@prom-ui/core/BodyProvider"),d=require("@prom-ui/icons/Close2"),f=require("@babel/runtime/helpers/extends"),m=require("clsx");function p(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}function g(t){if(t&&"object"==typeof t&&"default"in t)return t;var e=Object.create(null);return t&&Object.keys(t).forEach((function(n){if("default"!==n){var o=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,o.get?o:{enumerable:!0,get:function(){return t[n]}})}})),e.default=t,Object.freeze(e)}var v=p(t),y=g(e),b=p(c),x=p(f),E=p(m),w=new Map,I=function(t,e){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(e){w.has(e)&&(cancelAnimationFrame(w.get(e)),w.delete(e));var o=requestAnimationFrame((function(){var o=e.getBoundingClientRect(),i=t.getBoundingClientRect(),a=i.top+e.scrollTop-o.top-o.height/2+i.height/2,s=i.left+e.scrollLeft-o.left-o.width/2+i.width/2;s<0&&(s=0),a<0&&(a=0),e.scrollTo({behavior:n?"smooth":"instant",top:a,left:s})}));w.set(e,o)}},T=function(t){var e=/^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/)|(?:(?:watch)?\?v(?:i)?=|\&v(?:i)?=))([^#\&\?]*).*/.exec(t);return e&&e[1]},P=function(t){var e=T(t);return"https://img.youtube.com/vi/".concat(e,"/0.jpg")},z=function(){var t=function(t,e){this.el=t,this.zoomFactor=1,this.lastScale=1,this.offset={x:0,y:0},this.initialOffset={x:0,y:0},this.options=Object.assign({},this.defaults,e),this.setupMarkup(),this.bindEvents(),this.update(),this.isImageLoaded(this.el)&&(this.updateAspectRatio(),this.setupOffsets()),this.enable()},e=function(t,e){return t+e};t.prototype={defaults:{tapZoomFactor:2,zoomOutFactor:1.3,animationDuration:300,maxZoom:4,minZoom:.5,draggableUnzoomed:!0,lockDragAxis:!1,setOffsetsOnce:!1,use2d:!0,useMouseWheel:!1,verticalPadding:0,horizontalPadding:0,onZoomStart:null,onZoomEnd:null,onZoomUpdate:null,onDragStart:null,onDragEnd:null,onDragUpdate:null,onDoubleTap:null,onMouseWheel:null},handleDragStart:function(t){"function"==typeof this.options.onDragStart&&this.options.onDragStart(this,t),this.stopAnimation(),this.lastDragPosition=!1,this.hasInteraction=!0,this.handleDrag(t)},handleDrag:function(t){var e="touchmove"===t.type?this.getTouches(t)[0]:this.getPointer(t);this.drag(e,this.lastDragPosition),this.offset=this.sanitizeOffset(this.offset),this.lastDragPosition=e},handleDragEnd:function(){"function"==typeof this.options.onDragEnd&&this.options.onDragEnd(this,event),this.end()},handleZoomStart:function(t){"function"==typeof this.options.onZoomStart&&this.options.onZoomStart(this,t),this.stopAnimation(),this.lastScale=1,this.nthZoom=0,this.lastZoomCenter=!1,this.hasInteraction=!0},handleZoom:function(t,e){var n=this.getTouchCenter(this.getTouches(t)),o=e/this.lastScale;this.lastScale=e,this.nthZoom+=1,this.nthZoom>3&&(this.scale(o,n),this.drag(n,this.lastZoomCenter)),this.lastZoomCenter=n},handleZoomEnd:function(){"function"==typeof this.options.onZoomEnd&&this.options.onZoomEnd(this,event),this.end()},handleDoubleTap:function(t){var e=this.getTouches(t)[0],n=this.zoomFactor>1?1:this.options.tapZoomFactor,o=this.zoomFactor,i=function(t){this.scaleTo(o+t*(n-o),e)}.bind(this);this.hasInteraction||(this.isDoubleTap=!0,o>n&&(e=this.getCurrentZoomCenter()),this.animate(this.options.animationDuration,i,this.swing),"function"==typeof this.options.onDoubleTap&&this.options.onDoubleTap(this,t))},handleMouseWheel:function(t){var e=this.getPointer(t),n=Math.min(Math.max(this.options.minZoom,this.lastScale+-.01*t.deltaY),this.options.maxZoom),o=n/this.lastScale;this.scale(o,e),this.lastScale=n,this.update(),"function"==typeof this.options.onMouseWheel&&this.options.onMouseWheel(this,t)},computeInitialOffset:function(){this.initialOffset={x:-Math.abs(this.el.offsetWidth*this.getInitialZoomFactor()-this.container.offsetWidth)/2,y:-Math.abs(this.el.offsetHeight*this.getInitialZoomFactor()-this.container.offsetHeight)/2}},resetOffset:function(){this.offset.x=this.initialOffset.x,this.offset.y=this.initialOffset.y},isImageLoaded:function(t){return"IMG"===t.nodeName?t.complete&&0!==t.naturalHeight:Array.from(t.querySelectorAll("img")).every(this.isImageLoaded)},setupOffsets:function(){this.options.setOffsetsOnce&&this._isOffsetsSet||(this._isOffsetsSet=!0,this.computeInitialOffset(),this.resetOffset())},sanitizeOffset:function(t){var e=this.el.offsetWidth*this.getInitialZoomFactor()*this.zoomFactor,n=this.el.offsetHeight*this.getInitialZoomFactor()*this.zoomFactor,o=e-this.getContainerX()+this.options.horizontalPadding,i=n-this.getContainerY()+this.options.verticalPadding,a=Math.max(o,0),s=Math.max(i,0),r=Math.min(o,0)-this.options.horizontalPadding,l=Math.min(i,0)-this.options.verticalPadding;return{x:Math.min(Math.max(t.x,r),a),y:Math.min(Math.max(t.y,l),s)}},scaleTo:function(t,e){this.scale(t/this.zoomFactor,e)},scale:function(t,e){t=this.scaleZoomFactor(t),this.addOffset({x:(t-1)*(e.x+this.offset.x),y:(t-1)*(e.y+this.offset.y)}),"function"==typeof this.options.onZoomUpdate&&this.options.onZoomUpdate(this,event)},scaleZoomFactor:function(t){var e=this.zoomFactor;return this.zoomFactor*=t,this.zoomFactor=Math.min(this.options.maxZoom,Math.max(this.zoomFactor,this.options.minZoom)),this.zoomFactor/e},canDrag:function(){return this.options.draggableUnzoomed||!((t=this.zoomFactor)>(e=1)-.01&&t<e+.01);var t,e},drag:function(t,e){e&&(this.options.lockDragAxis?Math.abs(t.x-e.x)>Math.abs(t.y-e.y)?this.addOffset({x:-(t.x-e.x),y:0}):this.addOffset({y:-(t.y-e.y),x:0}):this.addOffset({y:-(t.y-e.y),x:-(t.x-e.x)}),"function"==typeof this.options.onDragUpdate&&this.options.onDragUpdate(this,event))},getTouchCenter:function(t){return this.getVectorAvg(t)},getVectorAvg:function(t){return{x:t.map((function(t){return t.x})).reduce(e)/t.length,y:t.map((function(t){return t.y})).reduce(e)/t.length}},addOffset:function(t){this.offset={x:this.offset.x+t.x,y:this.offset.y+t.y}},sanitize:function(){this.zoomFactor<this.options.zoomOutFactor?this.zoomOutAnimation():this.isInsaneOffset(this.offset)&&this.sanitizeOffsetAnimation()},isInsaneOffset:function(t){var e=this.sanitizeOffset(t);return e.x!==t.x||e.y!==t.y},sanitizeOffsetAnimation:function(){var t=this.sanitizeOffset(this.offset),e=this.offset.x,n=this.offset.y,o=function(o){this.offset.x=e+o*(t.x-e),this.offset.y=n+o*(t.y-n),this.update()}.bind(this);this.animate(this.options.animationDuration,o,this.swing)},zoomOutAnimation:function(){if(1!==this.zoomFactor){var t=this.zoomFactor,e=this.getCurrentZoomCenter(),n=function(n){this.scaleTo(t+n*(1-t),e)}.bind(this);this.animate(this.options.animationDuration,n,this.swing)}},updateAspectRatio:function(){this.unsetContainerY(),this.setContainerY(this.container.parentElement.offsetHeight)},getInitialZoomFactor:function(){var t=this.container.offsetWidth/this.el.offsetWidth,e=this.container.offsetHeight/this.el.offsetHeight;return Math.min(t,e)},getAspectRatio:function(){return this.el.offsetWidth/this.el.offsetHeight},getCurrentZoomCenter:function(){var t=this.offset.x-this.initialOffset.x,e=-1*this.offset.x-t/(1/this.zoomFactor-1),n=this.offset.y-this.initialOffset.y;return{x:e,y:-1*this.offset.y-n/(1/this.zoomFactor-1)}},getTouches:function(t){var e=this.container.getBoundingClientRect(),n=document.documentElement.scrollTop||document.body.scrollTop,o=document.documentElement.scrollLeft||document.body.scrollLeft,i=e.top+n,a=e.left+o;return Array.prototype.slice.call(t.touches).map((function(t){return{x:t.pageX-a,y:t.pageY-i}}))},getPointer:function(t){var e=this.container.getBoundingClientRect(),n=document.documentElement.scrollTop||document.body.scrollTop,o=document.documentElement.scrollLeft||document.body.scrollLeft,i=e.top+n,a=e.left+o;return{x:t.pageX-a,y:t.pageY-i}},animate:function(t,e,n,o){var i=(new Date).getTime(),a=function(){if(this.inAnimation){var s=(new Date).getTime()-i,r=s/t;s>=t?(e(1),o&&o(),this.update(),this.stopAnimation(),this.update()):(n&&(r=n(r)),e(r),this.update(),requestAnimationFrame(a))}}.bind(this);this.inAnimation=!0,requestAnimationFrame(a)},stopAnimation:function(){this.inAnimation=!1},swing:function(t){return-Math.cos(t*Math.PI)/2+.5},getContainerX:function(){return this.container.offsetWidth},getContainerY:function(){return this.container.offsetHeight},setContainerY:function(t){return this.container.style.height=t+"px"},unsetContainerY:function(){this.container.style.height=null},setupMarkup:function(){var t,e;this.container=(t='<div class="pinch-zoom-container" style="height: 100%;"></div>',(e=document.implementation.createHTMLDocument("")).body.innerHTML=t,Array.from(e.body.children)[0]),this.el.parentNode.insertBefore(this.container,this.el),this.container.appendChild(this.el),this.container.style.overflow="hidden",this.container.style.position="relative",this.el.style.webkitTransformOrigin="0% 0%",this.el.style.mozTransformOrigin="0% 0%",this.el.style.msTransformOrigin="0% 0%",this.el.style.oTransformOrigin="0% 0%",this.el.style.transformOrigin="0% 0%",this.el.style.position="absolute",this.el.style.backfaceVisibility="hidden",this.el.style.willChange="transform"},end:function(){this.hasInteraction=!1,this.sanitize(),this.update()},bindEvents:function(){var t=this;n(this.container,this),this.resizeHandler=this.update.bind(this),window.addEventListener("resize",this.resizeHandler),Array.from(this.el.querySelectorAll("img")).forEach((function(e){e.addEventListener("load",t.update.bind(t))})),"IMG"===this.el.nodeName&&this.el.addEventListener("load",this.update.bind(this))},update:function(t){t&&"resize"===t.type&&(this.updateAspectRatio(),this.setupOffsets()),t&&"load"===t.type&&(this.updateAspectRatio(),this.setupOffsets()),this.updatePlanned||(this.updatePlanned=!0,window.setTimeout(function(){this.updatePlanned=!1;var t=this.getInitialZoomFactor()*this.zoomFactor,e=-this.offset.x/t,n=-this.offset.y/t,o="scale3d("+t+", "+t+",1) translate3d("+e+"px,"+n+"px,0px)",i="scale("+t+", "+t+") translate("+e+"px,"+n+"px)",a=function(){this.clone&&(this.clone.parentNode.removeChild(this.clone),delete this.clone)}.bind(this);!this.options.use2d||this.hasInteraction||this.inAnimation?(this.is3d=!0,a(),this.el.style.webkitTransform=o,this.el.style.mozTransform=i,this.el.style.msTransform=i,this.el.style.oTransform=i,this.el.style.transform=o):(this.is3d&&(this.clone=this.el.cloneNode(!0),this.clone.style.pointerEvents="none",this.container.appendChild(this.clone),window.setTimeout(a,200)),this.el.style.webkitTransform=i,this.el.style.mozTransform=i,this.el.style.msTransform=i,this.el.style.oTransform=i,this.el.style.transform=i,this.is3d=!1)}.bind(this),0))},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},destroy:function(){window.removeEventListener("resize",this.resizeHandler),this.container&&(this.container.remove(),this.container=null)},reset:function(){this.zoomOutAnimation()}};var n=function(t,e){var n=null,o=0,i=null,a=null,s=function(t,o){if(n!==t){if(n&&!t)switch(n){case"zoom":e.handleZoomEnd(o);break;case"drag":e.handleDragEnd(o)}switch(t){case"zoom":e.handleZoomStart(o);break;case"drag":e.handleDragStart(o)}}n=t},r=function(t){2===o?s("zoom"):1===o&&e.canDrag()?s("drag",t):s(null,t)},l=function(t){return Array.from(t).map((function(t){return{x:t.pageX,y:t.pageY}}))},c=function(t,e){var n,o;return n=t.x-e.x,o=t.y-e.y,Math.sqrt(n*n+o*o)},u=function(t){t.stopPropagation(),t.preventDefault()},h=!0;t.addEventListener("touchstart",(function(t){e.enabled&&(h=!0,o=t.touches.length,function(t){var a=(new Date).getTime();if(o>1&&(i=null),a-i<300)switch(u(t),e.handleDoubleTap(t),n){case"zoom":e.handleZoomEnd(t);break;case"drag":e.handleDragEnd(t)}else e.isDoubleTap=!1;1===o&&(i=a)}(t))}),{passive:!1}),t.addEventListener("touchmove",(function(t){if(e.enabled&&!e.isDoubleTap){if(h)r(t),n&&u(t),a=l(t.touches);else{switch(n){case"zoom":2==a.length&&2==t.touches.length&&e.handleZoom(t,function(t,e){var n=c(t[0],t[1]);return c(e[0],e[1])/n}(a,l(t.touches)));break;case"drag":e.handleDrag(t)}n&&(u(t),e.update())}h=!1}}),{passive:!1}),t.addEventListener("touchend",(function(t){e.enabled&&(o=t.touches.length,r(t))})),e.options.useMouseWheel&&(t.addEventListener("mousewheel",(function(t){e.enabled&&(u(t),e.handleMouseWheel(t))})),t.addEventListener("mousedown",(function(t){e.enabled&&(h=!0,o=1)}),{passive:!0}),t.addEventListener("mousemove",(function(t){e.enabled&&(h?(r(t),n&&u(t)):("drag"===n&&e.handleDrag(t),n&&(u(t),e.update())),h=!1)}),{passive:!1}),t.addEventListener("mouseup",(function(t){e.enabled&&(o=0,r(t))}),{passive:!0}))};return t}(),O={scrolling:"q1DKc",root:"KiBKq",layout:"JBDok",layoutHeader:"tVG4b",layoutContent:"O43ff",layoutFooter:"Gz4gH",layoutSection:"CvZb6",layoutPreviews:"-hzyv",layoutAdditional:"mR5-f",header:"xfAad",headerTitle:"QiOEy",headerClose:"qdl3x",mainPhotoScrollControls:"PeY3Y",mainPhoto:"QIMHy q1DKc",mainPhotoItem:"aZCyk",mainPhotoImage:"_2aEr5",mainPhotoIframe:"kThdT",preview:"F-k0z q1DKc",previewItem:"jf683",previewButton:"VAXOP",previewImage:"Mx2Y-",videoPlayLabel:"jQiDN",videoPlayLabelIcon:"wSdjd",enter:"Lnosr",exit:"NW-xY",enterActive:"LrirU",exitActive:"L6st-"},_=y.forwardRef((function(t,e){var n=t.src,o=t.videoSrc,i=t.triggerInteraction,a=y.useRef(null),s=y.useRef(null),r=y.useRef(null),l=!!o,c=function(){var t,e;null===(t=s.current)||void 0===t||t.reset(),null===(e=a.current)||void 0===e||null===(e=e.contentWindow)||void 0===e||e.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")};return y.useEffect((function(){return requestAnimationFrame((function(){r.current&&!l&&(s.current=new z(r.current,{draggableUnzoomed:!1,animationDuration:200,setOffsetsOnce:!1,onDoubleTap:function(t){1===(null==t?void 0:t.zoomFactor)&&i("maybeZoomImage")}}))})),function(){var t;null===(t=s.current)||void 0===t||t.destroy()}}),[o]),y.useEffect((function(){var t=function(){l&&document.activeElement&&"iframe"===document.activeElement.nodeName.toLowerCase()&&a.current&&a.current===document.activeElement&&i("maybePlayVideo")};return window.addEventListener("blur",t),function(){window.removeEventListener("blur",t)}}),[o]),y.useImperativeHandle(e,(function(){return{reset:c}}),[]),l?y.createElement("iframe",{ref:a,className:O.mainPhotoIframe,src:o,width:"100%",height:"100%",allowFullScreen:!0,title:"",loading:"lazy","data-qaid":"photo_gallery_main_video","data-testid":"photo_gallery_main_video"}):y.createElement("img",{ref:r,className:O.mainPhotoImage,src:n,width:"100%",height:"100%",alt:"",decoding:"async",loading:"lazy","data-qaid":"photo_gallery_main_image","data-testid":"photo_gallery_main_image"})}));_.displayName="MainPhotosImage";var C=y.forwardRef((function(t,e){var n=t.items,o=t.onChange,i=t.triggerInteraction,a=y.useRef(null),r=y.useRef([]),l=y.useRef(0),c=y.useRef(null),u=function(){r.current.forEach((function(t){null==t||t.reset()}))},h=function(t){var e,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=null===(e=c.current)||void 0===e?void 0:e.children[t];u(),o&&I(o,c.current,n)};y.useImperativeHandle(e,(function(){return{scrollToIndex:h}}),[]);return y.createElement(s.ScrollControls,{ref:c,className:O.mainPhotoScrollControls,showOnHover:!0,hideOnDisabled:!0,onClickPrev:function(){return i("clickPrevButton")},onClickNext:function(){return i("clickNextButton")}},y.createElement("div",{className:O.mainPhoto,onScroll:function(){if(c.current){var t=function(t,e){var n=t.scrollLeft/t.scrollWidth*e;return Math.round(n)}(c.current,n.length);l.current!==t&&(l.current=t,o(t),u())}},onTouchStart:function(t){var e=t.changedTouches[0].screenX;a.current=e},onTouchEnd:function(t){var e=t.changedTouches[0].screenX;a.current&&(a.current>e?i("maybeSwipeLeft"):a.current<e&&i("maybeSwipeRight"),a.current=null)}},n.map((function(t,e){var n,o=t.type,a=t.src,s="video"===o,l=s?P(a):a,c=s?(n=T(a),"https://youtube.com/embed/".concat(n,"?enablejsapi=1&rel=0")):void 0;return y.createElement("div",{key:e,className:O.mainPhotoItem,"data-qaid":"photo_gallery_main_item","data-testid":"photo_gallery_main_item"},y.createElement(_,{ref:function(t){r.current[e]=t},src:l,videoSrc:c,triggerInteraction:i}))}))))}));C.displayName="MainPhotos";var D,A=y.forwardRef((function(t,e){var n=t.items,o=t.selectedIndex,i=t.onChange,a=t.triggerInteraction,s=y.useRef(null),c=function(t){var e,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=null===(e=s.current)||void 0===e?void 0:e.children[t];o&&I(o,s.current,n)};y.useImperativeHandle(e,(function(){return{scrollToIndex:c}}),[]);return y.createElement("div",{ref:s,className:O.preview,onScroll:function(){a("scrollPreviews")}},n.map((function(t,e){var n=t.type,s=t.src,c="video"===n,u=c?P(s):s,h=c?"clickPreviewVideo":"clickPreviewImage";return y.createElement("div",{key:e,className:O.previewItem,"data-qaid":"photo_gallery_preview_item","data-testid":"photo_gallery_preview_item"},y.createElement("button",{className:O.previewButton,type:"button",onClick:function(){a(h),function(t){i(t)}(e)},disabled:o===e,"data-qaid":"photo_gallery_preview_button","data-testid":"photo_gallery_preview_button"},y.createElement("img",{className:O.previewImage,src:u,width:58,height:58,alt:"",decoding:"async",loading:"lazy","data-qaid":"photo_gallery_preview_image","data-testid":"photo_gallery_preview_image"}),c&&y.createElement("div",{className:O.videoPlayLabel,"data-qaid":"photo_gallery_preview_play","data-testid":"photo_gallery_preview_play"},y.createElement(r.Icon,{className:O.videoPlayLabelIcon,"icon-as":l.SvgPlay}))))})))}));A.displayName="PreviewPhotos";var Z=function(t){var e=t.title,n=t.onClose,o=t.selectedIndex,i=t.itemsLength,a=t.triggerInteraction,s=o+1,l=(0,h.useBodyStoreTTag().t)(D||(D=b.default(["Фото "," из ",""])),s,i);return y.createElement("div",{className:O.header},y.createElement("div",{className:O.headerTitle,"data-qaid":"photo_gallery_title","data-testid":"photo_gallery_title"},e||l),y.createElement("div",{className:O.headerClose},y.createElement(u.Button,{"button-padding":"xxs","button-theme":"black-inherit",type:"button",onClick:function(){a("clickCloseButton"),n()},"data-qaid":"photo_gallery_close_button","data-testid":"photo_gallery_close_button"},y.createElement(r.Icon,{"icon-as":d.SvgClose2,style:{width:24,height:24}}))))},M=function(t){var e,n=t.selectedIndex,o=t.className,i=t.slotProps,a=y.useRef(null);return y.useEffect((function(){var t;null===(t=a.current)||void 0===t||t.scrollTo({top:0})}),[n]),y.createElement("div",x.default({},i.props,{ref:a,className:E.default(o,null===(e=i.props)||void 0===e?void 0:e.className)}),i.children(n))},S=function(t){var e=t.isOpen,s=t.title,r=t.visibleIndex,l=void 0===r?0:r,c=t.items,u=t.zIndex,h=void 0===u?5e3:u,d=t.onClose,f=t.onChange,m=t.onInteraction,p=t.slotAside,g=t.slotFooter,b=y.useRef(!0),x=y.useRef(null),E=y.useRef(null),w=y.useState(l),I=v.default(w,2),T=I[0],P=I[1],z=y.useRef(null),_=function(t){"function"==typeof m&&m(t)};y.useEffect((function(){e&&"function"==typeof f&&f(T)}),[T]),y.useEffect((function(){var t,n;e&&(P(l),null===(t=E.current)||void 0===t||t.scrollToIndex(l,!1),null===(n=x.current)||void 0===n||n.scrollToIndex(l,!1))}),[e]),y.useEffect((function(){var t;if(!e)return function(){};var n=null,o=function(){n&&clearTimeout(n)},i=function(){o(),n=setTimeout((function(){var t,e;null===(t=E.current)||void 0===t||t.scrollToIndex(T,!1),null===(e=x.current)||void 0===e||e.scrollToIndex(T,!1)}),100)};return window.addEventListener("resize",i),null===(t=window)||void 0===t||null===(t=t.matchMedia("(orientation: portrait)"))||void 0===t||t.addEventListener("change",i),function(){var t;o(),window.removeEventListener("resize",i),null===(t=window)||void 0===t||null===(t=t.matchMedia("(orientation: portrait)"))||void 0===t||t.removeEventListener("change",i)}}),[e,T]);var D=function(t){var e,n;b.current=!1,P(t),null===(e=E.current)||void 0===e||e.scrollToIndex(t),null===(n=x.current)||void 0===n||n.scrollToIndex(t)},S=function(){d(T)};return y.createElement(y.Fragment,null,y.createElement(o.Backdrop,{isOpen:e,onClick:S,zIndex:h,isBodyScrollLock:!0}),y.createElement(n.CSSTransition,{nodeRef:z,in:e,timeout:240,classNames:O,unmountOnExit:!0,onEntered:function(){return _("opened")},onExited:function(){return _("closed")}},y.createElement(a.Portal,null,y.createElement("div",{ref:z,className:O.root,"data-qaid":"photo_gallery","data-testid":"photo_gallery",style:{zIndex:h}},y.createElement(i.KeyPress,{code:"Escape",onKeyUp:function(){_("keyPressClose"),S()}}),y.createElement(i.KeyPress,{code:"ArrowLeft",onKeyUp:function(){0!==T&&(_("keyPressPrev"),D(T-1))}}),y.createElement(i.KeyPress,{code:"ArrowRight",onKeyUp:function(){T!==c.length-1&&(_("keyPressNext"),D(T+1))}}),y.createElement("div",{className:O.layout},y.createElement("header",{className:O.layoutHeader},y.createElement(Z,{title:s,selectedIndex:T,itemsLength:c.length,onClose:S,triggerInteraction:_})),y.createElement("div",{className:O.layoutContent},y.createElement("section",{className:O.layoutSection},y.createElement(C,{ref:x,items:c,onChange:function(t){var e;b.current&&(P(t),null===(e=E.current)||void 0===e||e.scrollToIndex(t));b.current||T!==t||(b.current=!0)},triggerInteraction:_})),c.length>1&&y.createElement("aside",{className:O.layoutPreviews},y.createElement(A,{ref:E,items:c,selectedIndex:T,onChange:D,triggerInteraction:_})),!(null==p||!p.children)&&y.createElement(M,{selectedIndex:T,className:O.layoutAdditional,slotProps:p})),!(null==g||!g.children)&&y.createElement(M,{selectedIndex:T,className:O.layoutFooter,slotProps:g}))))))};S.displayName="PhotoGallery",exports.PhotoGallery=S,require("./style.production.v2.css");
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@babel/runtime/helpers/slicedToArray"),e=require("react"),n=require("react-transition-group"),o=require("@prom-ui/core/Backdrop"),i=require("@prom-ui/core/KeyPress"),a=require("@prom-ui/core/Portal"),s=require("@prom-ui/core/ScrollControls"),r=require("@prom-ui/core/Icon"),l=require("@prom-ui/icons/Play"),c=require("@babel/runtime/helpers/taggedTemplateLiteral"),u=require("@prom-ui/core/Button"),h=require("@prom-ui/core/BodyProvider"),d=require("@prom-ui/icons/Close2"),f=require("@babel/runtime/helpers/extends"),m=require("clsx");function p(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}function g(t){if(t&&"object"==typeof t&&"default"in t)return t;var e=Object.create(null);return t&&Object.keys(t).forEach((function(n){if("default"!==n){var o=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,o.get?o:{enumerable:!0,get:function(){return t[n]}})}})),e.default=t,Object.freeze(e)}var v=p(t),y=g(e),b=p(c),x=p(f),E=p(m),w=new Map,I=function(t,e){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(e){w.has(e)&&(cancelAnimationFrame(w.get(e)),w.delete(e));var o=requestAnimationFrame((function(){var o=e.getBoundingClientRect(),i=t.getBoundingClientRect(),a=i.top+e.scrollTop-o.top-o.height/2+i.height/2,s=i.left+e.scrollLeft-o.left-o.width/2+i.width/2;s<0&&(s=0),a<0&&(a=0),e.scrollTo({behavior:n?"smooth":"instant",top:a,left:s})}));w.set(e,o)}},T=function(t){var e=/^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/)|(?:(?:watch)?\?v(?:i)?=|\&v(?:i)?=))([^#\&\?]*).*/.exec(t);return e&&e[1]},P=function(t){var e=T(t);return"https://img.youtube.com/vi/".concat(e,"/0.jpg")},z=function(){var t=function(t,e){this.el=t,this.zoomFactor=1,this.lastScale=1,this.offset={x:0,y:0},this.initialOffset={x:0,y:0},this.options=Object.assign({},this.defaults,e),this.setupMarkup(),this.bindEvents(),this.update(),this.isImageLoaded(this.el)&&(this.updateAspectRatio(),this.setupOffsets()),this.enable()},e=function(t,e){return t+e};t.prototype={defaults:{tapZoomFactor:2,zoomOutFactor:1.3,animationDuration:300,maxZoom:4,minZoom:.5,draggableUnzoomed:!0,lockDragAxis:!1,setOffsetsOnce:!1,use2d:!0,useMouseWheel:!1,verticalPadding:0,horizontalPadding:0,onZoomStart:null,onZoomEnd:null,onZoomUpdate:null,onDragStart:null,onDragEnd:null,onDragUpdate:null,onDoubleTap:null,onMouseWheel:null},handleDragStart:function(t){"function"==typeof this.options.onDragStart&&this.options.onDragStart(this,t),this.stopAnimation(),this.lastDragPosition=!1,this.hasInteraction=!0,this.handleDrag(t)},handleDrag:function(t){var e="touchmove"===t.type?this.getTouches(t)[0]:this.getPointer(t);this.drag(e,this.lastDragPosition),this.offset=this.sanitizeOffset(this.offset),this.lastDragPosition=e},handleDragEnd:function(){"function"==typeof this.options.onDragEnd&&this.options.onDragEnd(this,event),this.end()},handleZoomStart:function(t){"function"==typeof this.options.onZoomStart&&this.options.onZoomStart(this,t),this.stopAnimation(),this.lastScale=1,this.nthZoom=0,this.lastZoomCenter=!1,this.hasInteraction=!0},handleZoom:function(t,e){var n=this.getTouchCenter(this.getTouches(t)),o=e/this.lastScale;this.lastScale=e,this.nthZoom+=1,this.nthZoom>3&&(this.scale(o,n),this.drag(n,this.lastZoomCenter)),this.lastZoomCenter=n},handleZoomEnd:function(){"function"==typeof this.options.onZoomEnd&&this.options.onZoomEnd(this,event),this.end()},handleDoubleTap:function(t){var e=this.getTouches(t)[0],n=this.zoomFactor>1?1:this.options.tapZoomFactor,o=this.zoomFactor,i=function(t){this.scaleTo(o+t*(n-o),e)}.bind(this);this.hasInteraction||(this.isDoubleTap=!0,o>n&&(e=this.getCurrentZoomCenter()),this.animate(this.options.animationDuration,i,this.swing),"function"==typeof this.options.onDoubleTap&&this.options.onDoubleTap(this,t))},handleMouseWheel:function(t){var e=this.getPointer(t),n=Math.min(Math.max(this.options.minZoom,this.lastScale+-.01*t.deltaY),this.options.maxZoom),o=n/this.lastScale;this.scale(o,e),this.lastScale=n,this.update(),"function"==typeof this.options.onMouseWheel&&this.options.onMouseWheel(this,t)},computeInitialOffset:function(){this.initialOffset={x:-Math.abs(this.el.offsetWidth*this.getInitialZoomFactor()-this.container.offsetWidth)/2,y:-Math.abs(this.el.offsetHeight*this.getInitialZoomFactor()-this.container.offsetHeight)/2}},resetOffset:function(){this.offset.x=this.initialOffset.x,this.offset.y=this.initialOffset.y},isImageLoaded:function(t){return"IMG"===t.nodeName?t.complete&&0!==t.naturalHeight:Array.from(t.querySelectorAll("img")).every(this.isImageLoaded)},setupOffsets:function(){this.options.setOffsetsOnce&&this._isOffsetsSet||(this._isOffsetsSet=!0,this.computeInitialOffset(),this.resetOffset())},sanitizeOffset:function(t){var e=this.el.offsetWidth*this.getInitialZoomFactor()*this.zoomFactor,n=this.el.offsetHeight*this.getInitialZoomFactor()*this.zoomFactor,o=e-this.getContainerX()+this.options.horizontalPadding,i=n-this.getContainerY()+this.options.verticalPadding,a=Math.max(o,0),s=Math.max(i,0),r=Math.min(o,0)-this.options.horizontalPadding,l=Math.min(i,0)-this.options.verticalPadding;return{x:Math.min(Math.max(t.x,r),a),y:Math.min(Math.max(t.y,l),s)}},scaleTo:function(t,e){this.scale(t/this.zoomFactor,e)},scale:function(t,e){t=this.scaleZoomFactor(t),this.addOffset({x:(t-1)*(e.x+this.offset.x),y:(t-1)*(e.y+this.offset.y)}),"function"==typeof this.options.onZoomUpdate&&this.options.onZoomUpdate(this,event)},scaleZoomFactor:function(t){var e=this.zoomFactor;return this.zoomFactor*=t,this.zoomFactor=Math.min(this.options.maxZoom,Math.max(this.zoomFactor,this.options.minZoom)),this.zoomFactor/e},canDrag:function(){return this.options.draggableUnzoomed||!((t=this.zoomFactor)>(e=1)-.01&&t<e+.01);var t,e},drag:function(t,e){e&&(this.options.lockDragAxis?Math.abs(t.x-e.x)>Math.abs(t.y-e.y)?this.addOffset({x:-(t.x-e.x),y:0}):this.addOffset({y:-(t.y-e.y),x:0}):this.addOffset({y:-(t.y-e.y),x:-(t.x-e.x)}),"function"==typeof this.options.onDragUpdate&&this.options.onDragUpdate(this,event))},getTouchCenter:function(t){return this.getVectorAvg(t)},getVectorAvg:function(t){return{x:t.map((function(t){return t.x})).reduce(e)/t.length,y:t.map((function(t){return t.y})).reduce(e)/t.length}},addOffset:function(t){this.offset={x:this.offset.x+t.x,y:this.offset.y+t.y}},sanitize:function(){this.zoomFactor<this.options.zoomOutFactor?this.zoomOutAnimation():this.isInsaneOffset(this.offset)&&this.sanitizeOffsetAnimation()},isInsaneOffset:function(t){var e=this.sanitizeOffset(t);return e.x!==t.x||e.y!==t.y},sanitizeOffsetAnimation:function(){var t=this.sanitizeOffset(this.offset),e=this.offset.x,n=this.offset.y,o=function(o){this.offset.x=e+o*(t.x-e),this.offset.y=n+o*(t.y-n),this.update()}.bind(this);this.animate(this.options.animationDuration,o,this.swing)},zoomOutAnimation:function(){if(1!==this.zoomFactor){var t=this.zoomFactor,e=this.getCurrentZoomCenter(),n=function(n){this.scaleTo(t+n*(1-t),e)}.bind(this);this.animate(this.options.animationDuration,n,this.swing)}},updateAspectRatio:function(){this.unsetContainerY(),this.setContainerY(this.container.parentElement.offsetHeight)},getInitialZoomFactor:function(){var t=this.container.offsetWidth/this.el.offsetWidth,e=this.container.offsetHeight/this.el.offsetHeight;return Math.min(t,e)},getAspectRatio:function(){return this.el.offsetWidth/this.el.offsetHeight},getCurrentZoomCenter:function(){var t=this.offset.x-this.initialOffset.x,e=-1*this.offset.x-t/(1/this.zoomFactor-1),n=this.offset.y-this.initialOffset.y;return{x:e,y:-1*this.offset.y-n/(1/this.zoomFactor-1)}},getTouches:function(t){var e=this.container.getBoundingClientRect(),n=document.documentElement.scrollTop||document.body.scrollTop,o=document.documentElement.scrollLeft||document.body.scrollLeft,i=e.top+n,a=e.left+o;return Array.prototype.slice.call(t.touches).map((function(t){return{x:t.pageX-a,y:t.pageY-i}}))},getPointer:function(t){var e=this.container.getBoundingClientRect(),n=document.documentElement.scrollTop||document.body.scrollTop,o=document.documentElement.scrollLeft||document.body.scrollLeft,i=e.top+n,a=e.left+o;return{x:t.pageX-a,y:t.pageY-i}},animate:function(t,e,n,o){var i=(new Date).getTime(),a=function(){if(this.inAnimation){var s=(new Date).getTime()-i,r=s/t;s>=t?(e(1),o&&o(),this.update(),this.stopAnimation(),this.update()):(n&&(r=n(r)),e(r),this.update(),requestAnimationFrame(a))}}.bind(this);this.inAnimation=!0,requestAnimationFrame(a)},stopAnimation:function(){this.inAnimation=!1},swing:function(t){return-Math.cos(t*Math.PI)/2+.5},getContainerX:function(){return this.container.offsetWidth},getContainerY:function(){return this.container.offsetHeight},setContainerY:function(t){return this.container.style.height=t+"px"},unsetContainerY:function(){this.container.style.height=null},setupMarkup:function(){var t,e;this.container=(t='<div class="pinch-zoom-container" style="height: 100%;"></div>',(e=document.implementation.createHTMLDocument("")).body.innerHTML=t,Array.from(e.body.children)[0]),this.el.parentNode.insertBefore(this.container,this.el),this.container.appendChild(this.el),this.container.style.overflow="hidden",this.container.style.position="relative",this.el.style.webkitTransformOrigin="0% 0%",this.el.style.mozTransformOrigin="0% 0%",this.el.style.msTransformOrigin="0% 0%",this.el.style.oTransformOrigin="0% 0%",this.el.style.transformOrigin="0% 0%",this.el.style.position="absolute",this.el.style.backfaceVisibility="hidden",this.el.style.willChange="transform"},end:function(){this.hasInteraction=!1,this.sanitize(),this.update()},bindEvents:function(){var t=this;n(this.container,this),this.resizeHandler=this.update.bind(this),window.addEventListener("resize",this.resizeHandler),Array.from(this.el.querySelectorAll("img")).forEach((function(e){e.addEventListener("load",t.update.bind(t))})),"IMG"===this.el.nodeName&&this.el.addEventListener("load",this.update.bind(this))},update:function(t){t&&"resize"===t.type&&(this.updateAspectRatio(),this.setupOffsets()),t&&"load"===t.type&&(this.updateAspectRatio(),this.setupOffsets()),this.updatePlanned||(this.updatePlanned=!0,window.setTimeout(function(){this.updatePlanned=!1;var t=this.getInitialZoomFactor()*this.zoomFactor,e=-this.offset.x/t,n=-this.offset.y/t,o="scale3d("+t+", "+t+",1) translate3d("+e+"px,"+n+"px,0px)",i="scale("+t+", "+t+") translate("+e+"px,"+n+"px)",a=function(){this.clone&&(this.clone.parentNode.removeChild(this.clone),delete this.clone)}.bind(this);!this.options.use2d||this.hasInteraction||this.inAnimation?(this.is3d=!0,a(),this.el.style.webkitTransform=o,this.el.style.mozTransform=i,this.el.style.msTransform=i,this.el.style.oTransform=i,this.el.style.transform=o):(this.is3d&&(this.clone=this.el.cloneNode(!0),this.clone.style.pointerEvents="none",this.container.appendChild(this.clone),window.setTimeout(a,200)),this.el.style.webkitTransform=i,this.el.style.mozTransform=i,this.el.style.msTransform=i,this.el.style.oTransform=i,this.el.style.transform=i,this.is3d=!1)}.bind(this),0))},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},destroy:function(){window.removeEventListener("resize",this.resizeHandler),this.container&&(this.container.remove(),this.container=null)},reset:function(){this.zoomOutAnimation()}};var n=function(t,e){var n=null,o=0,i=null,a=null,s=function(t,o){if(n!==t){if(n&&!t)switch(n){case"zoom":e.handleZoomEnd(o);break;case"drag":e.handleDragEnd(o)}switch(t){case"zoom":e.handleZoomStart(o);break;case"drag":e.handleDragStart(o)}}n=t},r=function(t){2===o?s("zoom"):1===o&&e.canDrag()?s("drag",t):s(null,t)},l=function(t){return Array.from(t).map((function(t){return{x:t.pageX,y:t.pageY}}))},c=function(t,e){var n,o;return n=t.x-e.x,o=t.y-e.y,Math.sqrt(n*n+o*o)},u=function(t){t.stopPropagation(),t.preventDefault()},h=!0;t.addEventListener("touchstart",(function(t){e.enabled&&(h=!0,o=t.touches.length,function(t){var a=(new Date).getTime();if(o>1&&(i=null),a-i<300)switch(u(t),e.handleDoubleTap(t),n){case"zoom":e.handleZoomEnd(t);break;case"drag":e.handleDragEnd(t)}else e.isDoubleTap=!1;1===o&&(i=a)}(t))}),{passive:!1}),t.addEventListener("touchmove",(function(t){if(e.enabled&&!e.isDoubleTap){if(h)r(t),n&&u(t),a=l(t.touches);else{switch(n){case"zoom":2==a.length&&2==t.touches.length&&e.handleZoom(t,function(t,e){var n=c(t[0],t[1]);return c(e[0],e[1])/n}(a,l(t.touches)));break;case"drag":e.handleDrag(t)}n&&(u(t),e.update())}h=!1}}),{passive:!1}),t.addEventListener("touchend",(function(t){e.enabled&&(o=t.touches.length,r(t))})),e.options.useMouseWheel&&(t.addEventListener("mousewheel",(function(t){e.enabled&&(u(t),e.handleMouseWheel(t))})),t.addEventListener("mousedown",(function(t){e.enabled&&(h=!0,o=1)}),{passive:!0}),t.addEventListener("mousemove",(function(t){e.enabled&&(h?(r(t),n&&u(t)):("drag"===n&&e.handleDrag(t),n&&(u(t),e.update())),h=!1)}),{passive:!1}),t.addEventListener("mouseup",(function(t){e.enabled&&(o=0,r(t))}),{passive:!0}))};return t}(),C={scrolling:"q1DKc",root:"KiBKq",layout:"JBDok",layoutHeader:"tVG4b",slotLayoutHeader:"_8R2r5",layoutContent:"O43ff",layoutFooter:"Gz4gH",layoutSection:"CvZb6",layoutSectionContent:"_2TSDW",layoutSectionFooter:"LTbHF",layoutPreviews:"-hzyv",layoutAdditional:"mR5-f",header:"xfAad",headerTitle:"QiOEy",headerClose:"qdl3x",mainPhotoScrollControls:"PeY3Y",mainPhoto:"QIMHy q1DKc",mainPhotoItem:"aZCyk",mainPhotoImage:"_2aEr5",mainPhotoIframe:"kThdT",preview:"F-k0z q1DKc",previewItem:"jf683",previewButton:"VAXOP",previewImage:"Mx2Y-",videoPlayLabel:"jQiDN",videoPlayLabelIcon:"wSdjd",enter:"Lnosr",exit:"NW-xY",enterActive:"LrirU",exitActive:"L6st-"},O=y.forwardRef((function(t,e){var n=t.src,o=t.videoSrc,i=t.triggerInteraction,a=y.useRef(null),s=y.useRef(null),r=y.useRef(null),l=!!o,c=function(){var t,e;null===(t=s.current)||void 0===t||t.reset(),null===(e=a.current)||void 0===e||null===(e=e.contentWindow)||void 0===e||e.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")};return y.useEffect((function(){return requestAnimationFrame((function(){r.current&&!l&&(s.current=new z(r.current,{draggableUnzoomed:!1,animationDuration:200,setOffsetsOnce:!1,onDoubleTap:function(t){1===(null==t?void 0:t.zoomFactor)&&i("maybeZoomImage")}}))})),function(){var t;null===(t=s.current)||void 0===t||t.destroy()}}),[o]),y.useEffect((function(){var t=function(){l&&document.activeElement&&"iframe"===document.activeElement.nodeName.toLowerCase()&&a.current&&a.current===document.activeElement&&i("maybePlayVideo")};return window.addEventListener("blur",t),function(){window.removeEventListener("blur",t)}}),[o]),y.useImperativeHandle(e,(function(){return{reset:c}}),[]),l?y.createElement("iframe",{ref:a,className:C.mainPhotoIframe,src:o,width:"100%",height:"100%",allowFullScreen:!0,title:"",loading:"lazy","data-qaid":"photo_gallery_main_video","data-testid":"photo_gallery_main_video"}):y.createElement("img",{ref:r,className:C.mainPhotoImage,src:n,width:"100%",height:"100%",alt:"",decoding:"async",loading:"lazy","data-qaid":"photo_gallery_main_image","data-testid":"photo_gallery_main_image"})}));O.displayName="MainPhotosImage";var _=y.forwardRef((function(t,e){var n=t.items,o=t.onChange,i=t.triggerInteraction,a=y.useRef(null),r=y.useRef([]),l=y.useRef(0),c=y.useRef(null),u=function(){r.current.forEach((function(t){null==t||t.reset()}))},h=function(t){var e,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=null===(e=c.current)||void 0===e?void 0:e.children[t];u(),o&&I(o,c.current,n)};y.useImperativeHandle(e,(function(){return{scrollToIndex:h}}),[]);return y.createElement(s.ScrollControls,{ref:c,className:C.mainPhotoScrollControls,showOnHover:!0,hideOnDisabled:!0,onClickPrev:function(){return i("clickPrevButton")},onClickNext:function(){return i("clickNextButton")}},y.createElement("div",{className:C.mainPhoto,onScroll:function(){if(c.current){var t=function(t,e){var n=t.scrollLeft/t.scrollWidth*e;return Math.round(n)}(c.current,n.length);l.current!==t&&(l.current=t,o(t),u())}},onTouchStart:function(t){var e=t.changedTouches[0].screenX;a.current=e},onTouchEnd:function(t){var e=t.changedTouches[0].screenX;a.current&&(a.current>e?i("maybeSwipeLeft"):a.current<e&&i("maybeSwipeRight"),a.current=null)}},n.map((function(t,e){var n,o=t.type,a=t.src,s="video"===o,l=s?P(a):a,c=s?(n=T(a),"https://youtube.com/embed/".concat(n,"?enablejsapi=1&rel=0")):void 0;return y.createElement("div",{key:e,className:C.mainPhotoItem,"data-qaid":"photo_gallery_main_item","data-testid":"photo_gallery_main_item"},y.createElement(O,{ref:function(t){r.current[e]=t},src:l,videoSrc:c,triggerInteraction:i}))}))))}));_.displayName="MainPhotos";var D,L=y.forwardRef((function(t,e){var n=t.items,o=t.selectedIndex,i=t.onChange,a=t.triggerInteraction,s=y.useRef(null),c=function(t){var e,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=null===(e=s.current)||void 0===e?void 0:e.children[t];o&&I(o,s.current,n)};y.useImperativeHandle(e,(function(){return{scrollToIndex:c}}),[]);return y.createElement("div",{ref:s,className:C.preview,onScroll:function(){a("scrollPreviews")}},n.map((function(t,e){var n=t.type,s=t.src,c="video"===n,u=c?P(s):s,h=c?"clickPreviewVideo":"clickPreviewImage";return y.createElement("div",{key:e,className:C.previewItem,"data-qaid":"photo_gallery_preview_item","data-testid":"photo_gallery_preview_item"},y.createElement("button",{className:C.previewButton,type:"button",onClick:function(){a(h),function(t){i(t)}(e)},disabled:o===e,"data-qaid":"photo_gallery_preview_button","data-testid":"photo_gallery_preview_button"},y.createElement("img",{className:C.previewImage,src:u,width:56,height:56,alt:"",decoding:"async",loading:"lazy","data-qaid":"photo_gallery_preview_image","data-testid":"photo_gallery_preview_image"}),c&&y.createElement("div",{className:C.videoPlayLabel,"data-qaid":"photo_gallery_preview_play","data-testid":"photo_gallery_preview_play"},y.createElement(r.Icon,{className:C.videoPlayLabelIcon,"icon-as":l.SvgPlay}))))})))}));L.displayName="PreviewPhotos";var S=function(t){var e=t.title,n=t.onClose,o=t.selectedIndex,i=t.itemsLength,a=t.triggerInteraction,s=o+1,l=(0,h.useBodyStoreTTag().t)(D||(D=b.default(["Фото "," из ",""])),s,i);return y.createElement("div",{className:C.header},y.createElement("div",{className:C.headerTitle,"data-qaid":"photo_gallery_title","data-testid":"photo_gallery_title"},e||l),y.createElement("div",{className:C.headerClose},y.createElement(u.Button,{"button-padding":"xxs","button-theme":"black-inherit",type:"button",onClick:function(){a("clickCloseButton"),n()},"data-qaid":"photo_gallery_close_button","data-testid":"photo_gallery_close_button"},y.createElement(r.Icon,{"icon-as":d.SvgClose2,style:{width:24,height:24}}))))},F=function(t){var e,n=t.selectedIndex,o=t.onClose,i=t.className,a=t.slotProps,s=t.itemsLength,r=y.useRef(null),l=a.component;return y.useEffect((function(){var t;null===(t=r.current)||void 0===t||t.scrollTo({top:0})}),[n]),y.createElement("div",x.default({},a.props,{ref:r,className:E.default(i,null===(e=a.props)||void 0===e?void 0:e.className)}),y.createElement(l,{selectedIndex:n,itemsLength:s,onClose:o}))},A=function(t){var e=t.isOpen,s=t.title,r=t.visibleIndex,l=void 0===r?0:r,c=t.items,u=t.zIndex,h=void 0===u?5e3:u,d=t.onClose,f=t.onChange,m=t.onInteraction,p=t.slotHeader,g=t.slotAside,b=t.slotFooter,x=t.slotMainPhotoFooter,E=y.useRef(!0),w=y.useRef(null),I=y.useRef(null),T=y.useState(l),P=v.default(T,2),z=P[0],O=P[1],D=y.useRef(null),A=function(t){"function"==typeof m&&m(t)};y.useEffect((function(){e&&"function"==typeof f&&f(z)}),[z]),y.useEffect((function(){var t,n;e&&(O(l),null===(t=I.current)||void 0===t||t.scrollToIndex(l,!1),null===(n=w.current)||void 0===n||n.scrollToIndex(l,!1))}),[e]),y.useEffect((function(){var t;if(!e)return function(){};var n=null,o=function(){n&&clearTimeout(n)},i=function(){o(),n=setTimeout((function(){var t,e;null===(t=I.current)||void 0===t||t.scrollToIndex(z,!1),null===(e=w.current)||void 0===e||e.scrollToIndex(z,!1)}),100)};return window.addEventListener("resize",i),null===(t=window)||void 0===t||null===(t=t.matchMedia("(orientation: portrait)"))||void 0===t||t.addEventListener("change",i),function(){var t;o(),window.removeEventListener("resize",i),null===(t=window)||void 0===t||null===(t=t.matchMedia("(orientation: portrait)"))||void 0===t||t.removeEventListener("change",i)}}),[e,z]);var M=function(t){var e,n;E.current=!1,O(t),null===(e=I.current)||void 0===e||e.scrollToIndex(t),null===(n=w.current)||void 0===n||n.scrollToIndex(t)},N=function(){d(z)};return y.createElement(y.Fragment,null,y.createElement(o.Backdrop,{isOpen:e,onClick:N,zIndex:h,isBodyScrollLock:!0}),y.createElement(n.CSSTransition,{nodeRef:D,in:e,timeout:240,classNames:C,unmountOnExit:!0,onEntered:function(){return A("opened")},onExited:function(){return A("closed")}},y.createElement(a.Portal,null,y.createElement("div",{ref:D,className:C.root,"data-qaid":"photo_gallery","data-testid":"photo_gallery",style:{zIndex:h}},y.createElement(i.KeyPress,{code:"Escape",onKeyUp:function(){A("keyPressClose"),N()}}),y.createElement(i.KeyPress,{code:"ArrowLeft",onKeyUp:function(){0!==z&&(A("keyPressPrev"),M(z-1))}}),y.createElement(i.KeyPress,{code:"ArrowRight",onKeyUp:function(){z!==c.length-1&&(A("keyPressNext"),M(z+1))}}),y.createElement("div",{className:C.layout},null!=p&&p.component?y.createElement(F,{className:C.slotLayoutHeader,selectedIndex:z,itemsLength:c.length,onClose:N,slotProps:p}):y.createElement("header",{className:C.layoutHeader},y.createElement(S,{title:s,selectedIndex:z,itemsLength:c.length,onClose:N,triggerInteraction:A})),y.createElement("div",{className:C.layoutContent},y.createElement("section",{className:C.layoutSection},y.createElement("div",{className:C.layoutSectionContent},y.createElement(_,{ref:w,items:c,onChange:function(t){var e;E.current&&(O(t),null===(e=I.current)||void 0===e||e.scrollToIndex(t));E.current||z!==t||(E.current=!0)},triggerInteraction:A})),!(null==x||!x.component)&&y.createElement(F,{className:C.layoutSectionFooter,selectedIndex:z,itemsLength:c.length,onClose:N,slotProps:x})),c.length>1&&y.createElement("aside",{className:C.layoutPreviews},y.createElement(L,{ref:I,items:c,selectedIndex:z,onChange:M,triggerInteraction:A})),!(null==g||!g.component)&&y.createElement(F,{className:C.layoutAdditional,selectedIndex:z,itemsLength:c.length,onClose:N,slotProps:g})),!(null==b||!b.component)&&y.createElement(F,{className:C.layoutFooter,selectedIndex:z,itemsLength:c.length,onClose:N,slotProps:b}))))))};A.displayName="PhotoGallery",exports.PhotoGallery=A,require("./style.production.v2.css");
|