@micromag/viewer 0.3.250 → 0.3.251
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/assets/css/styles.css +9 -9
- package/es/index.js +108 -203
- package/lib/index.js +107 -202
- package/package.json +10 -11
package/lib/index.js
CHANGED
|
@@ -16,7 +16,6 @@ var screens = require('@micromag/screens');
|
|
|
16
16
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
17
17
|
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
18
18
|
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
19
|
-
var web = require('@react-spring/web');
|
|
20
19
|
var classNames = require('classnames');
|
|
21
20
|
var reactHelmet = require('react-helmet');
|
|
22
21
|
var EventEmitter = require('wolfy87-eventemitter');
|
|
@@ -27,6 +26,7 @@ var reactIntl = require('react-intl');
|
|
|
27
26
|
var faTimes = require('@fortawesome/free-solid-svg-icons/faTimes');
|
|
28
27
|
var reactFontawesome = require('@fortawesome/react-fontawesome');
|
|
29
28
|
var core$1 = require('@react-spring/core');
|
|
29
|
+
var web = require('@react-spring/web');
|
|
30
30
|
var Scroll = require('@micromag/element-scroll');
|
|
31
31
|
var ShareOptions = require('@micromag/element-share-options');
|
|
32
32
|
var react = require('@use-gesture/react');
|
|
@@ -134,7 +134,6 @@ function useScreenInteraction() {
|
|
|
134
134
|
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
135
135
|
screens = _ref.screens,
|
|
136
136
|
screenIndex = _ref.screenIndex,
|
|
137
|
-
screenWidth = _ref.screenWidth,
|
|
138
137
|
_ref$disableCurrentSc = _ref.disableCurrentScreenNavigation,
|
|
139
138
|
disableCurrentScreenNavigation = _ref$disableCurrentSc === void 0 ? false : _ref$disableCurrentSc,
|
|
140
139
|
_ref$clickOnSiblings = _ref.clickOnSiblings,
|
|
@@ -204,14 +203,13 @@ function useScreenInteraction() {
|
|
|
204
203
|
}
|
|
205
204
|
|
|
206
205
|
var _currentTarget$getBou = currentTarget.getBoundingClientRect(),
|
|
206
|
+
left = _currentTarget$getBou.left,
|
|
207
207
|
width = _currentTarget$getBou.width;
|
|
208
208
|
|
|
209
|
-
var
|
|
210
|
-
var
|
|
211
|
-
var previousZone = margin + screenPreviousZone;
|
|
212
|
-
var direction = x < previousZone ? 'previous' : 'next';
|
|
209
|
+
var relativeX = x - left;
|
|
210
|
+
var direction = relativeX < width * (1 - nextScreenWidthPercent) ? 'previous' : 'next';
|
|
213
211
|
var lastIndex = screensCount - 1;
|
|
214
|
-
var nextIndex = index;
|
|
212
|
+
var nextIndex = index; // @todo investigate what clickOnSiblings is doing
|
|
215
213
|
|
|
216
214
|
if (direction === 'previous' && !clickOnSiblings) {
|
|
217
215
|
nextIndex = Math.max(0, screenIndex - 1);
|
|
@@ -533,14 +531,14 @@ var styles$e = {"container":"micromag-viewer-buttons-toggle-button-container","n
|
|
|
533
531
|
|
|
534
532
|
var propTypes$i = {
|
|
535
533
|
className: PropTypes__default["default"].string,
|
|
536
|
-
|
|
534
|
+
toggled: PropTypes__default["default"].number,
|
|
537
535
|
button: PropTypes__default["default"].node,
|
|
538
536
|
toggledButton: PropTypes__default["default"].node,
|
|
539
537
|
toggledButtonClassName: PropTypes__default["default"].string
|
|
540
538
|
};
|
|
541
539
|
var defaultProps$i = {
|
|
542
540
|
className: null,
|
|
543
|
-
|
|
541
|
+
toggled: 0,
|
|
544
542
|
button: null,
|
|
545
543
|
toggledButton: null,
|
|
546
544
|
toggledButtonClassName: null
|
|
@@ -548,27 +546,26 @@ var defaultProps$i = {
|
|
|
548
546
|
|
|
549
547
|
var ToggleButton = function ToggleButton(_ref) {
|
|
550
548
|
var className = _ref.className,
|
|
551
|
-
|
|
549
|
+
toggled = _ref.toggled,
|
|
552
550
|
button = _ref.button,
|
|
553
551
|
toggledButton = _ref.toggledButton,
|
|
554
552
|
toggledButtonClassName = _ref.toggledButtonClassName;
|
|
555
553
|
if (button === null) return false;
|
|
554
|
+
|
|
555
|
+
var getToggleButtonStyles = function getToggleButtonStyles(t) {
|
|
556
|
+
return {
|
|
557
|
+
transform: "translateY(".concat(t * -100, "%)")
|
|
558
|
+
};
|
|
559
|
+
};
|
|
560
|
+
|
|
556
561
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
557
562
|
className: classNames__default["default"]([styles$e.container, _defineProperty__default["default"]({}, className, className !== null)])
|
|
558
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
563
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
559
564
|
className: styles$e.normal,
|
|
560
|
-
style:
|
|
561
|
-
|
|
562
|
-
return "translateY(".concat(p * -100, "%)");
|
|
563
|
-
})
|
|
564
|
-
}
|
|
565
|
-
}, button), /*#__PURE__*/React__default["default"].createElement(web.animated.div, {
|
|
565
|
+
style: getToggleButtonStyles(toggled)
|
|
566
|
+
}, button), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
566
567
|
className: classNames__default["default"]([styles$e.toggled, _defineProperty__default["default"]({}, toggledButtonClassName, toggledButtonClassName !== null)]),
|
|
567
|
-
style:
|
|
568
|
-
transform: progressSpring.to(function (p) {
|
|
569
|
-
return "translateY(".concat((p - 1) * -100, "%)");
|
|
570
|
-
})
|
|
571
|
-
}
|
|
568
|
+
style: getToggleButtonStyles(toggled - 1)
|
|
572
569
|
}, toggledButton));
|
|
573
570
|
};
|
|
574
571
|
|
|
@@ -579,20 +576,20 @@ var styles$d = {"backdrop":"micromag-viewer-menus-menu-container-backdrop","heig
|
|
|
579
576
|
|
|
580
577
|
var propTypes$h = {
|
|
581
578
|
className: PropTypes__default["default"].string,
|
|
582
|
-
|
|
579
|
+
transitionProgress: PropTypes__default["default"].number,
|
|
583
580
|
theme: core.PropTypes.viewerTheme,
|
|
584
581
|
children: PropTypes__default["default"].node
|
|
585
582
|
};
|
|
586
583
|
var defaultProps$h = {
|
|
587
584
|
className: null,
|
|
588
|
-
|
|
585
|
+
transitionProgress: 0,
|
|
589
586
|
theme: null,
|
|
590
587
|
children: null
|
|
591
588
|
};
|
|
592
589
|
|
|
593
590
|
var ViewerMenuContainer = function ViewerMenuContainer(_ref) {
|
|
594
591
|
var className = _ref.className,
|
|
595
|
-
|
|
592
|
+
transitionProgress = _ref.transitionProgress,
|
|
596
593
|
viewerTheme = _ref.theme,
|
|
597
594
|
children = _ref.children;
|
|
598
595
|
|
|
@@ -610,26 +607,17 @@ var ViewerMenuContainer = function ViewerMenuContainer(_ref) {
|
|
|
610
607
|
style: {
|
|
611
608
|
pointerEvents: 'none'
|
|
612
609
|
}
|
|
613
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
610
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
614
611
|
className: styles$d.heightContainer,
|
|
615
612
|
style: _objectSpread__default["default"]({
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
}),
|
|
620
|
-
pointerEvents: progressSpring.to(function (p) {
|
|
621
|
-
return p < 0.25 ? 'none' : 'auto';
|
|
622
|
-
}),
|
|
623
|
-
zIndex: progressSpring.to(function (p) {
|
|
624
|
-
return Math.round(2 + p);
|
|
625
|
-
})
|
|
613
|
+
height: "".concat(transitionProgress * 100, "%"),
|
|
614
|
+
pointerEvents: transitionProgress < 0.25 ? 'none' : 'auto',
|
|
615
|
+
zIndex: Math.round(2 + transitionProgress)
|
|
626
616
|
}, backgroundColorStyle)
|
|
627
|
-
}, children), /*#__PURE__*/React__default["default"].createElement(
|
|
617
|
+
}, children), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
628
618
|
className: styles$d.backdrop,
|
|
629
619
|
style: {
|
|
630
|
-
opacity:
|
|
631
|
-
return utils.easings.easeOutQuint(p);
|
|
632
|
-
})
|
|
620
|
+
opacity: utils.easings.easeOutQuint(transitionProgress)
|
|
633
621
|
}
|
|
634
622
|
}));
|
|
635
623
|
};
|
|
@@ -956,10 +944,7 @@ var ViewerMenuScreen = function ViewerMenuScreen(_ref) {
|
|
|
956
944
|
}]
|
|
957
945
|
})) : '');
|
|
958
946
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
959
|
-
className: classNames__default["default"]([styles$a.container, (_ref4 = {}, _defineProperty__default["default"](_ref4, className, className !== null), _defineProperty__default["default"](_ref4, styles$a.isCurrent, current), _ref4)])
|
|
960
|
-
style: {
|
|
961
|
-
paddingBottom: "".concat(screenHeight / screenWidth * 100, "%")
|
|
962
|
-
}
|
|
947
|
+
className: classNames__default["default"]([styles$a.container, (_ref4 = {}, _defineProperty__default["default"](_ref4, className, className !== null), _defineProperty__default["default"](_ref4, styles$a.isCurrent, current), _ref4)])
|
|
963
948
|
}, /*#__PURE__*/React__default["default"].createElement("button", {
|
|
964
949
|
type: "button",
|
|
965
950
|
className: styles$a.button,
|
|
@@ -992,7 +977,7 @@ var ViewerMenuScreen = function ViewerMenuScreen(_ref) {
|
|
|
992
977
|
ViewerMenuScreen.propTypes = propTypes$d;
|
|
993
978
|
ViewerMenuScreen.defaultProps = defaultProps$d;
|
|
994
979
|
|
|
995
|
-
var styles$9 = {"scroll":"micromag-viewer-menus-menu-preview-scroll","container":"micromag-viewer-menus-menu-preview-container","disabled":"micromag-viewer-menus-menu-preview-disabled","screenButton":"micromag-viewer-menus-menu-preview-screenButton","
|
|
980
|
+
var styles$9 = {"scroll":"micromag-viewer-menus-menu-preview-scroll","container":"micromag-viewer-menus-menu-preview-container","disabled":"micromag-viewer-menus-menu-preview-disabled","screenButton":"micromag-viewer-menus-menu-preview-screenButton","buttons":"micromag-viewer-menus-menu-preview-buttons","content":"micromag-viewer-menus-menu-preview-content","organisation":"micromag-viewer-menus-menu-preview-organisation","icon":"micromag-viewer-menus-menu-preview-icon","title":"micromag-viewer-menus-menu-preview-title","nav":"micromag-viewer-menus-menu-preview-nav","item":"micromag-viewer-menus-menu-preview-item","items":"micromag-viewer-menus-menu-preview-items","screen":"micromag-viewer-menus-menu-preview-screen","loading":"micromag-viewer-menus-menu-preview-loading","fillPulse":"micromag-viewer-menus-menu-preview-fillPulse"};
|
|
996
981
|
|
|
997
982
|
var propTypes$c = {
|
|
998
983
|
viewerTheme: core.PropTypes.viewerTheme,
|
|
@@ -1003,7 +988,6 @@ var propTypes$c = {
|
|
|
1003
988
|
onClickScreen: PropTypes__default["default"].func,
|
|
1004
989
|
maxThumbsWidth: PropTypes__default["default"].number,
|
|
1005
990
|
paddingTop: PropTypes__default["default"].number,
|
|
1006
|
-
scrollDisabled: PropTypes__default["default"].bool,
|
|
1007
991
|
// @todo to reimplement:
|
|
1008
992
|
// shouldLoad: PropTypes.bool,
|
|
1009
993
|
// toggleFullscreen: PropTypes.func,
|
|
@@ -1021,7 +1005,6 @@ var defaultProps$c = {
|
|
|
1021
1005
|
onClickScreen: null,
|
|
1022
1006
|
maxThumbsWidth: 140,
|
|
1023
1007
|
paddingTop: null,
|
|
1024
|
-
scrollDisabled: false,
|
|
1025
1008
|
// toggleFullscreen: null,
|
|
1026
1009
|
// fullscreenActive: false,
|
|
1027
1010
|
// fullscreenEnabled: false,
|
|
@@ -1037,7 +1020,6 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
1037
1020
|
onClickScreen = _ref.onClickScreen,
|
|
1038
1021
|
maxThumbsWidth = _ref.maxThumbsWidth,
|
|
1039
1022
|
paddingTop = _ref.paddingTop,
|
|
1040
|
-
scrollDisabled = _ref.scrollDisabled,
|
|
1041
1023
|
className = _ref.className;
|
|
1042
1024
|
|
|
1043
1025
|
var _useDimensionObserver = hooks.useDimensionObserver(),
|
|
@@ -1064,29 +1046,12 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
1064
1046
|
var brandImageStyle = brandImageUrl !== null ? {
|
|
1065
1047
|
backgroundImage: "url(".concat(brandImageUrl, ")")
|
|
1066
1048
|
} : null; // const { url: brandLogoUrl = null } = brandLogo || {};
|
|
1067
|
-
|
|
1068
|
-
var _useState = React.useState([]),
|
|
1069
|
-
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
1070
|
-
screensMounted = _useState2[0],
|
|
1071
|
-
setScreensMounted = _useState2[1]; // @todo optimize all of this the proper way
|
|
1049
|
+
// @todo optimize all of this the proper way
|
|
1072
1050
|
// const finalItems = useMemo(
|
|
1073
1051
|
// () => (!focusable ? items.map((s, i) => (i > 6 ? { screenId: s.screenId } : s)) : items),
|
|
1074
1052
|
// [items, focusable],
|
|
1075
1053
|
// );
|
|
1076
1054
|
|
|
1077
|
-
|
|
1078
|
-
React.useEffect(function () {
|
|
1079
|
-
if (items.length === screensMounted.length) {
|
|
1080
|
-
return null;
|
|
1081
|
-
}
|
|
1082
|
-
|
|
1083
|
-
var timeout = setTimeout(function () {
|
|
1084
|
-
setScreensMounted([].concat(_toConsumableArray__default["default"](screensMounted), [true]));
|
|
1085
|
-
}, 40);
|
|
1086
|
-
return function () {
|
|
1087
|
-
clearTimeout(timeout);
|
|
1088
|
-
};
|
|
1089
|
-
}, [items, screensMounted, setScreensMounted]);
|
|
1090
1055
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1091
1056
|
className: classNames__default["default"]([styles$9.container, _defineProperty__default["default"]({}, className, className !== null)]),
|
|
1092
1057
|
style: _objectSpread__default["default"](_objectSpread__default["default"]({}, brandImageStyle), {}, {
|
|
@@ -1097,8 +1062,7 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
1097
1062
|
className: styles$9.content,
|
|
1098
1063
|
ref: containerRef
|
|
1099
1064
|
}, /*#__PURE__*/React__default["default"].createElement(Scroll__default["default"], {
|
|
1100
|
-
className: styles$9.scroll
|
|
1101
|
-
disabled: scrollDisabled
|
|
1065
|
+
className: styles$9.scroll
|
|
1102
1066
|
}, /*#__PURE__*/React__default["default"].createElement("nav", {
|
|
1103
1067
|
className: styles$9.nav,
|
|
1104
1068
|
style: {
|
|
@@ -1108,36 +1072,38 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
1108
1072
|
className: styles$9.items
|
|
1109
1073
|
}, items.map(function (item, index) {
|
|
1110
1074
|
var _ref6 = item || {},
|
|
1111
|
-
screenId = _ref6.screenId
|
|
1075
|
+
screenId = _ref6.screenId,
|
|
1076
|
+
_ref6$screen = _ref6.screen,
|
|
1077
|
+
screen = _ref6$screen === void 0 ? null : _ref6$screen;
|
|
1112
1078
|
|
|
1113
1079
|
var itemStyles = {
|
|
1114
1080
|
width: "".concat(100 / thumbsPerLine, "%")
|
|
1115
1081
|
};
|
|
1116
|
-
|
|
1117
|
-
var _ref7 = screenSize || {},
|
|
1118
|
-
screenWidth = _ref7.width,
|
|
1119
|
-
screenHeight = _ref7.height;
|
|
1120
|
-
|
|
1121
|
-
var screenMounted = screensMounted[index] || false;
|
|
1122
1082
|
return /*#__PURE__*/React__default["default"].createElement("li", {
|
|
1123
1083
|
key: "item-".concat(screenId),
|
|
1124
1084
|
className: styles$9.item,
|
|
1125
1085
|
style: itemStyles
|
|
1126
1086
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1127
|
-
className: styles$9.
|
|
1128
|
-
}, /*#__PURE__*/React__default["default"].createElement("
|
|
1129
|
-
className:
|
|
1087
|
+
className: styles$9.screen
|
|
1088
|
+
}, screen === null ? /*#__PURE__*/React__default["default"].createElement("svg", {
|
|
1089
|
+
className: styles$9.loading,
|
|
1090
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1091
|
+
width: "10",
|
|
1092
|
+
height: "16",
|
|
1093
|
+
viewBox: "0 0 10 16",
|
|
1130
1094
|
style: {
|
|
1131
|
-
|
|
1095
|
+
animationDelay: "".concat(index * -50, "ms")
|
|
1132
1096
|
}
|
|
1133
|
-
},
|
|
1134
|
-
|
|
1097
|
+
}, /*#__PURE__*/React__default["default"].createElement("rect", {
|
|
1098
|
+
width: "10",
|
|
1099
|
+
height: "16"
|
|
1100
|
+
})) : /*#__PURE__*/React__default["default"].createElement(ViewerMenuScreen, {
|
|
1135
1101
|
item: item,
|
|
1136
1102
|
index: index,
|
|
1137
1103
|
screenSize: screenSize,
|
|
1138
1104
|
onClick: onClickScreen,
|
|
1139
1105
|
focusable: focusable
|
|
1140
|
-
})
|
|
1106
|
+
})));
|
|
1141
1107
|
}))))));
|
|
1142
1108
|
};
|
|
1143
1109
|
|
|
@@ -1197,6 +1163,7 @@ var propTypes$a = {
|
|
|
1197
1163
|
description: PropTypes__default["default"].string,
|
|
1198
1164
|
items: core.PropTypes.menuItems,
|
|
1199
1165
|
focusable: PropTypes__default["default"].bool,
|
|
1166
|
+
// shouldLoad: PropTypes.bool, // @todo still needed? to re-implement?
|
|
1200
1167
|
paddingTop: PropTypes__default["default"].number,
|
|
1201
1168
|
currentScreenIndex: PropTypes__default["default"].number,
|
|
1202
1169
|
shareUrl: PropTypes__default["default"].string,
|
|
@@ -1286,7 +1253,7 @@ var ViewerMenuShare = function ViewerMenuShare(_ref) {
|
|
|
1286
1253
|
setFinalShareUrl = _useState4[1];
|
|
1287
1254
|
|
|
1288
1255
|
React.useEffect(function () {
|
|
1289
|
-
setFinalShareUrl(shareCurrentScreen && currentScreenIndex !== 0 ? "".concat(shareUrl, "/").concat(currentScreenIndex
|
|
1256
|
+
setFinalShareUrl(shareCurrentScreen && currentScreenIndex !== 0 ? "".concat(shareUrl, "/").concat(currentScreenIndex) : shareUrl);
|
|
1290
1257
|
}, [shareCurrentScreen, currentScreenIndex, setFinalShareUrl]);
|
|
1291
1258
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1292
1259
|
className: classNames__default["default"]([styles$7.container, _defineProperty__default["default"]({}, className, className !== null)]),
|
|
@@ -1341,7 +1308,7 @@ var ViewerMenuShare = function ViewerMenuShare(_ref) {
|
|
|
1341
1308
|
ViewerMenuShare.propTypes = propTypes$a;
|
|
1342
1309
|
ViewerMenuShare.defaultProps = defaultProps$a;
|
|
1343
1310
|
|
|
1344
|
-
var styles$6 = {"container":"micromag-viewer-container","menuContainer":"micromag-viewer-menuContainer","menuPreview":"micromag-viewer-menuPreview","
|
|
1311
|
+
var styles$6 = {"container":"micromag-viewer-container","menuContainer":"micromag-viewer-menuContainer","menuPreview":"micromag-viewer-menuPreview","screenContainer":"micromag-viewer-screenContainer","screensFrame":"micromag-viewer-screensFrame","landscape":"micromag-viewer-landscape","hideMenu":"micromag-viewer-hideMenu","menuNavContainer":"micromag-viewer-menuNavContainer","dots":"micromag-viewer-dots","menuTopContainer":"micromag-viewer-menuTopContainer","content":"micromag-viewer-content","withoutGestures":"micromag-viewer-withoutGestures","fadeMenu":"micromag-viewer-fadeMenu","withShadow":"micromag-viewer-withShadow","isOpened":"micromag-viewer-isOpened","menuItem":"micromag-viewer-menuItem","menuItemScreens":"micromag-viewer-menuItemScreens","menuButton":"micromag-viewer-menuButton","slidingButton":"micromag-viewer-slidingButton","screensMenuButtonToggled":"micromag-viewer-screensMenuButtonToggled","isHidden":"micromag-viewer-isHidden","navButton":"micromag-viewer-navButton","previous":"micromag-viewer-previous","next":"micromag-viewer-next","screen":"micromag-viewer-screen","current":"micromag-viewer-current","playbackControls":"micromag-viewer-playbackControls","arrowHint":"micromag-viewer-arrowHint","webView":"micromag-viewer-webView"};
|
|
1345
1312
|
|
|
1346
1313
|
var propTypes$9 = {
|
|
1347
1314
|
story: core.PropTypes.story.isRequired,
|
|
@@ -1446,11 +1413,6 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1446
1413
|
shareOpened = _useState4[0],
|
|
1447
1414
|
setShareOpened = _useState4[1];
|
|
1448
1415
|
|
|
1449
|
-
var _useState5 = React.useState(false),
|
|
1450
|
-
_useState6 = _slicedToArray__default["default"](_useState5, 2),
|
|
1451
|
-
menuMounted = _useState6[0],
|
|
1452
|
-
setMenuMounted = _useState6[1];
|
|
1453
|
-
|
|
1454
1416
|
var _useDimensionObserver = hooks.useDimensionObserver(),
|
|
1455
1417
|
navContainerRef = _useDimensionObserver.ref,
|
|
1456
1418
|
_useDimensionObserver2 = _useDimensionObserver.height,
|
|
@@ -1499,7 +1461,8 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1499
1461
|
var base = typeof window !== 'undefined' ? window.location.host : '';
|
|
1500
1462
|
var path = shareBasePath !== null ? "".concat(base).concat(shareBasePath) : base;
|
|
1501
1463
|
return path;
|
|
1502
|
-
}, [shareBasePath]);
|
|
1464
|
+
}, [shareBasePath]); // @note possible to extract some of that logic
|
|
1465
|
+
|
|
1503
1466
|
var onOpenMenu = React.useCallback(function () {
|
|
1504
1467
|
setMenuOpened(true);
|
|
1505
1468
|
setShareOpened(false);
|
|
@@ -1590,7 +1553,6 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1590
1553
|
springParams: springParams
|
|
1591
1554
|
}),
|
|
1592
1555
|
bindShareDrag = _useDragProgress.bind,
|
|
1593
|
-
draggingShare = _useDragProgress.dragging,
|
|
1594
1556
|
shareOpenedProgress = _useDragProgress.progress;
|
|
1595
1557
|
|
|
1596
1558
|
var computeMenuProgress = React.useCallback(function (_ref9) {
|
|
@@ -1638,7 +1600,6 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1638
1600
|
springParams: springParams
|
|
1639
1601
|
}),
|
|
1640
1602
|
bindMenuDrag = _useDragProgress2.bind,
|
|
1641
|
-
draggingMenu = _useDragProgress2.dragging,
|
|
1642
1603
|
menuOpenedProgress = _useDragProgress2.progress;
|
|
1643
1604
|
|
|
1644
1605
|
var keyboardShortcuts = React.useMemo(function () {
|
|
@@ -1654,13 +1615,6 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1654
1615
|
useKeyboardShortcuts(keyboardShortcuts); // should be zero if either screens menu or share menu is opened
|
|
1655
1616
|
|
|
1656
1617
|
var dotsOpacity = Math.min(1, Math.max(0, 1 - (menuOpenedProgress + shareOpenedProgress)));
|
|
1657
|
-
React.useEffect(function () {
|
|
1658
|
-
if ((menuOpened || draggingMenu) && !menuMounted) {
|
|
1659
|
-
setMenuMounted(true);
|
|
1660
|
-
} else if (!menuOpened && !draggingMenu && menuMounted) {
|
|
1661
|
-
setMenuMounted(false);
|
|
1662
|
-
}
|
|
1663
|
-
}, [menuOpened, draggingMenu, menuMounted, setMenuMounted]);
|
|
1664
1618
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1665
1619
|
className: classNames__default["default"]([styles$6.menuNavContainer, (_ref11 = {}, _defineProperty__default["default"](_ref11, styles$6.withShadow, withShadow), _defineProperty__default["default"](_ref11, styles$6.isOpened, menuOpened || shareOpened), _ref11)]),
|
|
1666
1620
|
ref: refDots,
|
|
@@ -1671,42 +1625,38 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1671
1625
|
className: styles$6.menuTopContainer,
|
|
1672
1626
|
ref: navContainerRef
|
|
1673
1627
|
}, !withoutShareMenu ? /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
1674
|
-
className: styles$6.menuItem
|
|
1628
|
+
className: classNames__default["default"]([styles$6.menuItem, styles$6.menuShare])
|
|
1675
1629
|
}, bindShareDrag()), /*#__PURE__*/React__default["default"].createElement(ToggleButton, {
|
|
1676
1630
|
className: styles$6.slidingButton,
|
|
1677
1631
|
button: /*#__PURE__*/React__default["default"].createElement(ShareButton, {
|
|
1678
1632
|
className: styles$6.menuButton,
|
|
1679
1633
|
onClick: onOpenShare,
|
|
1680
1634
|
theme: menuTheme,
|
|
1681
|
-
iconPosition: "left"
|
|
1682
|
-
focusable: !shareOpened
|
|
1635
|
+
iconPosition: "left"
|
|
1683
1636
|
}),
|
|
1684
1637
|
toggledButton: /*#__PURE__*/React__default["default"].createElement(CloseButton, {
|
|
1685
1638
|
className: styles$6.menuButton,
|
|
1686
1639
|
onClick: onCloseShare,
|
|
1687
1640
|
theme: menuTheme,
|
|
1688
|
-
iconPosition: "left"
|
|
1689
|
-
focusable: shareOpened
|
|
1641
|
+
iconPosition: "left"
|
|
1690
1642
|
}),
|
|
1691
|
-
|
|
1643
|
+
toggled: shareOpenedProgress
|
|
1692
1644
|
})) : null, !withoutScreensMenu ? /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
1693
|
-
className: styles$6.menuItem
|
|
1645
|
+
className: classNames__default["default"]([styles$6.menuItem, styles$6.menuItemScreens])
|
|
1694
1646
|
}, bindMenuDrag()), /*#__PURE__*/React__default["default"].createElement(ToggleButton, {
|
|
1695
1647
|
className: styles$6.slidingButton,
|
|
1696
1648
|
button: /*#__PURE__*/React__default["default"].createElement(MenuButton, {
|
|
1697
1649
|
className: styles$6.menuButton,
|
|
1698
1650
|
onClick: onOpenMenu,
|
|
1699
|
-
theme: menuTheme
|
|
1700
|
-
focusable: !menuOpened
|
|
1651
|
+
theme: menuTheme
|
|
1701
1652
|
}),
|
|
1702
1653
|
toggledButton: /*#__PURE__*/React__default["default"].createElement(CloseButton, {
|
|
1703
1654
|
className: styles$6.menuButton,
|
|
1704
1655
|
onClick: onCloseMenu,
|
|
1705
1656
|
theme: menuTheme,
|
|
1706
|
-
iconPosition: "right"
|
|
1707
|
-
focusable: menuOpened
|
|
1657
|
+
iconPosition: "right"
|
|
1708
1658
|
}),
|
|
1709
|
-
|
|
1659
|
+
toggled: menuOpenedProgress,
|
|
1710
1660
|
toggledButtonClassName: styles$6.screensMenuButtonToggled
|
|
1711
1661
|
})) : null), /*#__PURE__*/React__default["default"].createElement(ViewerMenuDots, Object.assign({}, menuTheme, {
|
|
1712
1662
|
direction: "horizontal",
|
|
@@ -1720,14 +1670,15 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1720
1670
|
onClose: onClickCloseViewer,
|
|
1721
1671
|
className: styles$6.dots,
|
|
1722
1672
|
style: {
|
|
1723
|
-
opacity: Math.pow(dotsOpacity, 5)
|
|
1724
|
-
|
|
1673
|
+
opacity: Math.pow(dotsOpacity, 5),
|
|
1674
|
+
// @note this is like a "quint" easing, meaning it'll go towards 1 slowly first and then fast as it approaches 1
|
|
1675
|
+
pointerEvents: dotsOpacity < 1 ? 'none' : 'auto'
|
|
1725
1676
|
}
|
|
1726
1677
|
}))), /*#__PURE__*/React__default["default"].createElement(ViewerMenuContainer, {
|
|
1727
1678
|
className: styles$6.menuContainer,
|
|
1728
|
-
|
|
1679
|
+
transitionProgress: shareOpenedProgress,
|
|
1729
1680
|
theme: viewerTheme
|
|
1730
|
-
},
|
|
1681
|
+
}, shareOpenedProgress > 0 ? /*#__PURE__*/React__default["default"].createElement(ViewerMenuShare, {
|
|
1731
1682
|
viewerTheme: viewerTheme,
|
|
1732
1683
|
className: styles$6.menuShare,
|
|
1733
1684
|
title: title,
|
|
@@ -1742,9 +1693,9 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1742
1693
|
onClose: onCloseShare
|
|
1743
1694
|
}) : null), /*#__PURE__*/React__default["default"].createElement(ViewerMenuContainer, {
|
|
1744
1695
|
className: styles$6.menuContainer,
|
|
1745
|
-
|
|
1696
|
+
transitionProgress: menuOpenedProgress,
|
|
1746
1697
|
theme: viewerTheme
|
|
1747
|
-
},
|
|
1698
|
+
}, menuOpenedProgress > 0 ? /*#__PURE__*/React__default["default"].createElement(ViewerMenuPreview, {
|
|
1748
1699
|
viewerTheme: viewerTheme,
|
|
1749
1700
|
className: styles$6.menuPreview,
|
|
1750
1701
|
screenSize: screenSize,
|
|
@@ -1756,7 +1707,6 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1756
1707
|
onShare: onShare,
|
|
1757
1708
|
onClickScreen: onClickScreen,
|
|
1758
1709
|
onClose: onCloseMenu,
|
|
1759
|
-
scrollDisabled: draggingMenu,
|
|
1760
1710
|
toggleFullscreen: toggleFullscreen,
|
|
1761
1711
|
fullscreenActive: fullscreenActive,
|
|
1762
1712
|
fullscreenEnabled: fullscreenEnabled
|
|
@@ -1765,9 +1715,8 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1765
1715
|
|
|
1766
1716
|
ViewerMenu.propTypes = propTypes$9;
|
|
1767
1717
|
ViewerMenu.defaultProps = defaultProps$9;
|
|
1768
|
-
var ViewerMenu$1 = /*#__PURE__*/React__default["default"].memo(ViewerMenu);
|
|
1769
1718
|
|
|
1770
|
-
var styles$5 = {"container":"micromag-viewer-screen-container","
|
|
1719
|
+
var styles$5 = {"container":"micromag-viewer-screen-container","navigationHint":"micromag-viewer-screen-navigationHint"};
|
|
1771
1720
|
|
|
1772
1721
|
var propTypes$8 = {
|
|
1773
1722
|
screen: core.PropTypes.screenComponent,
|
|
@@ -1777,7 +1726,6 @@ var propTypes$8 = {
|
|
|
1777
1726
|
active: PropTypes__default["default"].bool,
|
|
1778
1727
|
mediaRef: PropTypes__default["default"].func,
|
|
1779
1728
|
width: PropTypes__default["default"].number,
|
|
1780
|
-
index: PropTypes__default["default"].number,
|
|
1781
1729
|
height: PropTypes__default["default"].number,
|
|
1782
1730
|
scale: PropTypes__default["default"].number,
|
|
1783
1731
|
// withNavigationHint: PropTypes.bool, // @todo
|
|
@@ -1789,7 +1737,6 @@ var defaultProps$8 = {
|
|
|
1789
1737
|
screenState: null,
|
|
1790
1738
|
current: false,
|
|
1791
1739
|
active: true,
|
|
1792
|
-
index: null,
|
|
1793
1740
|
mediaRef: null,
|
|
1794
1741
|
width: null,
|
|
1795
1742
|
height: null,
|
|
@@ -1801,7 +1748,6 @@ var defaultProps$8 = {
|
|
|
1801
1748
|
function ViewerScreen(_ref) {
|
|
1802
1749
|
var screen = _ref.screen,
|
|
1803
1750
|
renderContext = _ref.renderContext,
|
|
1804
|
-
index = _ref.index,
|
|
1805
1751
|
screenState = _ref.screenState,
|
|
1806
1752
|
active = _ref.active,
|
|
1807
1753
|
current = _ref.current,
|
|
@@ -1810,47 +1756,23 @@ function ViewerScreen(_ref) {
|
|
|
1810
1756
|
height = _ref.height,
|
|
1811
1757
|
scale = _ref.scale,
|
|
1812
1758
|
className = _ref.className;
|
|
1813
|
-
|
|
1814
|
-
var _useState = React.useState(active || current),
|
|
1815
|
-
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
1816
|
-
mounted = _useState2[0],
|
|
1817
|
-
setMounted = _useState2[1];
|
|
1818
|
-
|
|
1819
|
-
React.useEffect(function () {
|
|
1820
|
-
var timeout = null;
|
|
1821
|
-
|
|
1822
|
-
if (active !== mounted) {
|
|
1823
|
-
timeout = setTimeout(function () {
|
|
1824
|
-
setMounted(active);
|
|
1825
|
-
}, 200);
|
|
1826
|
-
}
|
|
1827
|
-
|
|
1828
|
-
return function () {
|
|
1829
|
-
if (timeout !== null) {
|
|
1830
|
-
clearTimeout(timeout);
|
|
1831
|
-
}
|
|
1832
|
-
};
|
|
1833
|
-
}, [active, mounted, setMounted, index]);
|
|
1834
1759
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1835
1760
|
className: classNames__default["default"]([styles$5.container, _defineProperty__default["default"]({}, className, className !== null)])
|
|
1836
1761
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1837
|
-
className: styles$5.inner,
|
|
1838
1762
|
style: {
|
|
1839
1763
|
width: width,
|
|
1840
1764
|
height: height,
|
|
1841
1765
|
transform: scale !== null ? "scale(".concat(scale, ")") : null,
|
|
1842
|
-
transformOrigin: scale !== null ? '0 0' : null
|
|
1843
|
-
opacity: mounted ? 1 : null
|
|
1766
|
+
transformOrigin: scale !== null ? '0 0' : null
|
|
1844
1767
|
}
|
|
1845
|
-
},
|
|
1768
|
+
}, /*#__PURE__*/React__default["default"].createElement(components.Screen, {
|
|
1846
1769
|
screen: screen,
|
|
1847
1770
|
renderContext: renderContext,
|
|
1848
1771
|
screenState: screenState,
|
|
1849
|
-
index: index,
|
|
1850
1772
|
active: active,
|
|
1851
1773
|
current: current,
|
|
1852
1774
|
mediaRef: mediaRef
|
|
1853
|
-
})
|
|
1775
|
+
})));
|
|
1854
1776
|
}
|
|
1855
1777
|
|
|
1856
1778
|
ViewerScreen.propTypes = propTypes$8;
|
|
@@ -1963,10 +1885,9 @@ var stopDragEventsPropagation = {
|
|
|
1963
1885
|
|
|
1964
1886
|
function getFormattedTimestamp(s) {
|
|
1965
1887
|
var withMilliseconds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
1966
|
-
var
|
|
1967
|
-
var
|
|
1968
|
-
|
|
1969
|
-
return (s - (s %= 60)) / 60 + (9 < seconds ? ':' : ':0') + ~~s + ms; // eslint-disable-line
|
|
1888
|
+
var sparts = withMilliseconds ? "".concat(s).split('.') : [];
|
|
1889
|
+
var ms = sparts.length > 1 ? ":".concat(sparts[1].substring(0, 3)) : '';
|
|
1890
|
+
return (s - (s %= 60)) / 60 + (9 < s ? ':' : ':0') + ~~s + ms; // eslint-disable-line
|
|
1970
1891
|
}
|
|
1971
1892
|
|
|
1972
1893
|
var SHOW_MILLISECONDS_THRESHOLD = 5; // show milliseconds when scrubbing if length of video is shorter than 5 seconds
|
|
@@ -2460,6 +2381,7 @@ var propTypes$2 = {
|
|
|
2460
2381
|
screenState: PropTypes__default["default"].string,
|
|
2461
2382
|
deviceScreens: core.PropTypes.deviceScreens,
|
|
2462
2383
|
renderContext: core.PropTypes.renderContext,
|
|
2384
|
+
visitor: core.PropTypes.visitor,
|
|
2463
2385
|
onScreenChange: PropTypes__default["default"].func,
|
|
2464
2386
|
tapNextScreenWidthPercent: PropTypes__default["default"].number,
|
|
2465
2387
|
storyIsParsed: PropTypes__default["default"].bool,
|
|
@@ -2503,10 +2425,11 @@ var defaultProps$2 = {
|
|
|
2503
2425
|
screenState: null,
|
|
2504
2426
|
deviceScreens: utils.getDeviceScreens(),
|
|
2505
2427
|
renderContext: 'view',
|
|
2428
|
+
visitor: null,
|
|
2506
2429
|
onScreenChange: null,
|
|
2507
2430
|
tapNextScreenWidthPercent: 0.8,
|
|
2508
2431
|
storyIsParsed: false,
|
|
2509
|
-
neighborScreensActive:
|
|
2432
|
+
neighborScreensActive: 2,
|
|
2510
2433
|
neighborScreenOffset: 105,
|
|
2511
2434
|
neighborScreenScale: 0.8,
|
|
2512
2435
|
withMetadata: false,
|
|
@@ -2545,6 +2468,7 @@ var Viewer = function Viewer(_ref) {
|
|
|
2545
2468
|
screenState = _ref.screenState,
|
|
2546
2469
|
deviceScreens = _ref.deviceScreens,
|
|
2547
2470
|
renderContext = _ref.renderContext,
|
|
2471
|
+
visitor = _ref.visitor,
|
|
2548
2472
|
tapNextScreenWidthPercent = _ref.tapNextScreenWidthPercent,
|
|
2549
2473
|
storyIsParsed = _ref.storyIsParsed,
|
|
2550
2474
|
neighborScreensActive = _ref.neighborScreensActive,
|
|
@@ -2865,48 +2789,34 @@ var Viewer = function Viewer(_ref) {
|
|
|
2865
2789
|
springParams: springParams
|
|
2866
2790
|
}),
|
|
2867
2791
|
isDragging = _useDragProgress.dragging,
|
|
2868
|
-
|
|
2792
|
+
screenIndexProgress = _useDragProgress.progress,
|
|
2869
2793
|
dragContentBind = _useDragProgress.bind;
|
|
2870
2794
|
|
|
2871
|
-
var getScreenStylesByIndex = function getScreenStylesByIndex(index,
|
|
2795
|
+
var getScreenStylesByIndex = function getScreenStylesByIndex(index, progress) {
|
|
2872
2796
|
if (transitionType === 'stack') {
|
|
2797
|
+
var _t = index - progress;
|
|
2798
|
+
|
|
2799
|
+
var _clamped = Math.min(1, Math.max(0, _t));
|
|
2800
|
+
|
|
2801
|
+
var invert = Math.min(1, Math.max(0, -_t));
|
|
2802
|
+
var opacity = Math.max(0, 1 - 0.75 * invert + (_t + 1)); // just hide other screens
|
|
2803
|
+
|
|
2804
|
+
if (Math.abs(_t) > neighborScreensActive) return {
|
|
2805
|
+
opacity: 0
|
|
2806
|
+
};
|
|
2873
2807
|
return {
|
|
2874
|
-
|
|
2875
|
-
|
|
2876
|
-
|
|
2877
|
-
|
|
2878
|
-
if (Math.abs(t) > neighborScreensActive) return 0;
|
|
2879
|
-
return Math.max(0, 1 - 0.75 * invert + (t + 1));
|
|
2880
|
-
}),
|
|
2881
|
-
transform: spring.to(function (progress) {
|
|
2882
|
-
var t = index - progress;
|
|
2883
|
-
var clamped = Math.min(1, Math.max(0, t));
|
|
2884
|
-
var invert = Math.min(1, Math.max(0, -t));
|
|
2885
|
-
if (Math.abs(t) > neighborScreensActive) return 'translateX(100%)';
|
|
2886
|
-
return "translateX(".concat(clamped * 100, "%) scale(").concat(1 - 0.2 * invert, ")");
|
|
2887
|
-
}),
|
|
2888
|
-
boxShadow: spring.to(function (progress) {
|
|
2889
|
-
var t = index - progress;
|
|
2890
|
-
if (Math.abs(t) > neighborScreensActive) return null;
|
|
2891
|
-
var clamped = Math.min(1, Math.max(0, t));
|
|
2892
|
-
return "0 0 ".concat(4 * (1 - clamped), "rem ").concat(-0.5 * (1 - clamped), "rem black");
|
|
2893
|
-
})
|
|
2808
|
+
opacity: opacity,
|
|
2809
|
+
transform: "translateX(".concat(_clamped * 100, "%) scale(").concat(1 - 0.2 * invert, ")"),
|
|
2810
|
+
boxShadow: "0 0 ".concat(4 * (1 - _clamped), "rem ").concat(-0.5 * (1 - _clamped), "rem black"),
|
|
2811
|
+
zIndex: index
|
|
2894
2812
|
};
|
|
2895
2813
|
}
|
|
2896
2814
|
|
|
2815
|
+
var t = index - progress;
|
|
2816
|
+
var clamped = Math.min(1, Math.max(0, Math.abs(t)));
|
|
2897
2817
|
return {
|
|
2898
|
-
opacity:
|
|
2899
|
-
|
|
2900
|
-
if (Math.abs(t) > neighborScreensActive) return 0;
|
|
2901
|
-
var clamped = Math.min(1, Math.max(0, Math.abs(t)));
|
|
2902
|
-
return 1 - 0.75 * clamped;
|
|
2903
|
-
}),
|
|
2904
|
-
transform: spring.to(function (progress) {
|
|
2905
|
-
var t = index - progress;
|
|
2906
|
-
if (Math.abs(t) > neighborScreensActive) return "translate(100%)";
|
|
2907
|
-
var clamped = Math.min(1, Math.max(0, Math.abs(t)));
|
|
2908
|
-
return "translateX(".concat(t * neighborScreenOffset, "%) scale(").concat(1 - (1 - neighborScreenScale) * clamped, ")");
|
|
2909
|
-
}),
|
|
2818
|
+
opacity: 1 - 0.75 * clamped,
|
|
2819
|
+
transform: "translateX(".concat(t * neighborScreenOffset, "%) scale(").concat(1 - (1 - neighborScreenScale) * clamped, ")"),
|
|
2910
2820
|
zIndex: screensCount - index
|
|
2911
2821
|
};
|
|
2912
2822
|
};
|
|
@@ -2963,8 +2873,8 @@ var Viewer = function Viewer(_ref) {
|
|
|
2963
2873
|
useKeyboardShortcuts(keyboardShortcuts, {
|
|
2964
2874
|
disabled: renderContext !== 'view'
|
|
2965
2875
|
});
|
|
2966
|
-
return /*#__PURE__*/React__default["default"].createElement(contexts.
|
|
2967
|
-
|
|
2876
|
+
return /*#__PURE__*/React__default["default"].createElement(contexts.VisitorProvider, {
|
|
2877
|
+
visitor: visitor
|
|
2968
2878
|
}, /*#__PURE__*/React__default["default"].createElement(contexts.ScreenSizeProvider, {
|
|
2969
2879
|
size: screenSize
|
|
2970
2880
|
}, /*#__PURE__*/React__default["default"].createElement(contexts.ViewerProvider, {
|
|
@@ -2992,7 +2902,7 @@ var Viewer = function Viewer(_ref) {
|
|
|
2992
2902
|
}), (_ref15 = {}, _defineProperty__default["default"](_ref15, styles$6.landscape, landscape), _defineProperty__default["default"](_ref15, styles$6.withoutGestures, withoutGestures), _defineProperty__default["default"](_ref15, styles$6.hideMenu, !menuVisible), _defineProperty__default["default"](_ref15, styles$6.fadeMenu, playing && playbackControls && !playbackcontrolsVisible), _defineProperty__default["default"](_ref15, styles$6.ready, ready || withoutScreensTransforms), _defineProperty__default["default"](_ref15, styles$6.hasInteracted, hasInteracted), _defineProperty__default["default"](_ref15, styles$6.isDragging, isDragging), _defineProperty__default["default"](_ref15, className, className), _ref15)]),
|
|
2993
2903
|
ref: containerRef,
|
|
2994
2904
|
onContextMenu: onContextMenu
|
|
2995
|
-
}, !withoutMenu ? /*#__PURE__*/React__default["default"].createElement(ViewerMenu
|
|
2905
|
+
}, !withoutMenu ? /*#__PURE__*/React__default["default"].createElement(ViewerMenu, {
|
|
2996
2906
|
story: parsedStory,
|
|
2997
2907
|
currentScreenIndex: screenIndex,
|
|
2998
2908
|
withShadow: menuOverScreen && !withoutMenuShadow,
|
|
@@ -3027,12 +2937,12 @@ var Viewer = function Viewer(_ref) {
|
|
|
3027
2937
|
}, screens.map(function (screen, i) {
|
|
3028
2938
|
var current = screenIndex === i;
|
|
3029
2939
|
var active = i >= screenIndex - neighborScreensActive && i <= screenIndex + neighborScreensActive;
|
|
3030
|
-
var screenStyles = getScreenStylesByIndex(i,
|
|
3031
|
-
return /*#__PURE__*/React__default["default"].createElement(
|
|
2940
|
+
var screenStyles = getScreenStylesByIndex(i, screenIndexProgress);
|
|
2941
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3032
2942
|
key: "screen-viewer-".concat(screen.id || '', "-").concat(i + 1),
|
|
3033
2943
|
style: screenStyles,
|
|
3034
2944
|
className: classNames__default["default"]([styles$6.screenContainer, _defineProperty__default["default"]({}, styles$6.current, current)])
|
|
3035
|
-
}, screen !== null ? /*#__PURE__*/React__default["default"].createElement(ViewerScreen, {
|
|
2945
|
+
}, screen !== null && active ? /*#__PURE__*/React__default["default"].createElement(ViewerScreen, {
|
|
3036
2946
|
className: styles$6.screen,
|
|
3037
2947
|
screen: screen,
|
|
3038
2948
|
screenState: current ? screenState : null,
|
|
@@ -3146,7 +3056,7 @@ var defaultRoutes = {
|
|
|
3146
3056
|
screen: screen
|
|
3147
3057
|
};
|
|
3148
3058
|
|
|
3149
|
-
var _excluded = ["story", "screenComponents", "memoryRouter", "basePath", "routes", "withoutRouter", "googleApiKey", "
|
|
3059
|
+
var _excluded = ["story", "screenComponents", "memoryRouter", "basePath", "routes", "withoutRouter", "googleApiKey", "trackingVariables", "locale", "locales", "translations", "pathWithIndex"];
|
|
3150
3060
|
var propTypes = {
|
|
3151
3061
|
story: core.PropTypes.story,
|
|
3152
3062
|
screen: PropTypes__default["default"].string,
|
|
@@ -3156,7 +3066,6 @@ var propTypes = {
|
|
|
3156
3066
|
routes: routes,
|
|
3157
3067
|
withoutRouter: PropTypes__default["default"].bool,
|
|
3158
3068
|
googleApiKey: PropTypes__default["default"].string,
|
|
3159
|
-
visitor: core.PropTypes.visitor,
|
|
3160
3069
|
trackingVariables: core.PropTypes.trackingVariables,
|
|
3161
3070
|
locale: PropTypes__default["default"].string,
|
|
3162
3071
|
locales: PropTypes__default["default"].arrayOf(PropTypes__default["default"].string),
|
|
@@ -3173,7 +3082,6 @@ var defaultProps = {
|
|
|
3173
3082
|
routes: defaultRoutes,
|
|
3174
3083
|
withoutRouter: false,
|
|
3175
3084
|
googleApiKey: null,
|
|
3176
|
-
visitor: null,
|
|
3177
3085
|
trackingVariables: null,
|
|
3178
3086
|
locale: 'en',
|
|
3179
3087
|
locales: ['fr', 'en'],
|
|
@@ -3190,7 +3098,6 @@ var ViewerContainer = function ViewerContainer(_ref) {
|
|
|
3190
3098
|
routes = _ref.routes,
|
|
3191
3099
|
withoutRouter = _ref.withoutRouter,
|
|
3192
3100
|
googleApiKey = _ref.googleApiKey,
|
|
3193
|
-
visitor = _ref.visitor,
|
|
3194
3101
|
trackingVariables = _ref.trackingVariables,
|
|
3195
3102
|
locale = _ref.locale,
|
|
3196
3103
|
locales = _ref.locales,
|
|
@@ -3240,9 +3147,7 @@ var ViewerContainer = function ViewerContainer(_ref) {
|
|
|
3240
3147
|
}, /*#__PURE__*/React__default["default"].createElement(screens.ScreensProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.ComponentsProvider, {
|
|
3241
3148
|
namespace: contexts.SCREENS_NAMESPACE,
|
|
3242
3149
|
components: screenComponents || {}
|
|
3243
|
-
}, /*#__PURE__*/React__default["default"].createElement(contexts.
|
|
3244
|
-
visitor: visitor
|
|
3245
|
-
}, /*#__PURE__*/React__default["default"].createElement(contexts.PlaybackProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.TrackingProvider, {
|
|
3150
|
+
}, /*#__PURE__*/React__default["default"].createElement(contexts.UserInteractionProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.PlaybackProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.TrackingProvider, {
|
|
3246
3151
|
variables: finalTrackingVariables
|
|
3247
3152
|
}, withoutRouter ? /*#__PURE__*/React__default["default"].createElement(Viewer, Object.assign({
|
|
3248
3153
|
story: story,
|