@micromag/viewer 0.3.148 → 0.3.152
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 +8 -5
- package/es/index.js +840 -448
- package/lib/index.js +838 -445
- package/package.json +9 -9
package/lib/index.js
CHANGED
|
@@ -19,6 +19,7 @@ var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
|
19
19
|
var faArrowLeft = require('@fortawesome/free-solid-svg-icons/faArrowLeft');
|
|
20
20
|
var faArrowRight = require('@fortawesome/free-solid-svg-icons/faArrowRight');
|
|
21
21
|
var reactFontawesome = require('@fortawesome/react-fontawesome');
|
|
22
|
+
var react = require('@use-gesture/react');
|
|
22
23
|
var classNames = require('classnames');
|
|
23
24
|
var reactHelmet = require('react-helmet');
|
|
24
25
|
var reactIntl = require('react-intl');
|
|
@@ -28,13 +29,16 @@ var hooks = require('@micromag/core/hooks');
|
|
|
28
29
|
var utils = require('@micromag/core/utils');
|
|
29
30
|
var core = require('@react-spring/core');
|
|
30
31
|
var web = require('@react-spring/web');
|
|
31
|
-
var react = require('@use-gesture/react');
|
|
32
32
|
var faTimes = require('@fortawesome/free-solid-svg-icons/faTimes');
|
|
33
33
|
var faCompress = require('@fortawesome/free-solid-svg-icons/faCompress');
|
|
34
34
|
var faExpand = require('@fortawesome/free-solid-svg-icons/faExpand');
|
|
35
35
|
var faShare = require('@fortawesome/free-solid-svg-icons/faShare');
|
|
36
36
|
var Scroll = require('@micromag/element-scroll');
|
|
37
37
|
var ShareOptions = require('@micromag/element-share-options');
|
|
38
|
+
var faPause = require('@fortawesome/free-solid-svg-icons/faPause');
|
|
39
|
+
var faPlay = require('@fortawesome/free-solid-svg-icons/faPlay');
|
|
40
|
+
var faVolumeUp = require('@fortawesome/free-solid-svg-icons/faVolumeUp');
|
|
41
|
+
var WebView = require('@micromag/element-webview');
|
|
38
42
|
|
|
39
43
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
40
44
|
|
|
@@ -50,13 +54,7 @@ var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
|
|
|
50
54
|
var EventEmitter__default = /*#__PURE__*/_interopDefaultLegacy(EventEmitter);
|
|
51
55
|
var Scroll__default = /*#__PURE__*/_interopDefaultLegacy(Scroll);
|
|
52
56
|
var ShareOptions__default = /*#__PURE__*/_interopDefaultLegacy(ShareOptions);
|
|
53
|
-
|
|
54
|
-
var home = "/";
|
|
55
|
-
var screen = "/:screen";
|
|
56
|
-
var defaultRoutes = {
|
|
57
|
-
home: home,
|
|
58
|
-
screen: screen
|
|
59
|
-
};
|
|
57
|
+
var WebView__default = /*#__PURE__*/_interopDefaultLegacy(WebView);
|
|
60
58
|
|
|
61
59
|
var routes = PropTypes__default["default"].shape({
|
|
62
60
|
home: PropTypes__default["default"].string.isRequired,
|
|
@@ -135,21 +133,16 @@ function useScreenInteraction() {
|
|
|
135
133
|
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
136
134
|
screens = _ref.screens,
|
|
137
135
|
screenIndex = _ref.screenIndex,
|
|
138
|
-
|
|
139
|
-
_ref$
|
|
140
|
-
isView = _ref$isView === void 0 ? false : _ref$isView,
|
|
136
|
+
_ref$disableCurrentSc = _ref.disableCurrentScreenNavigation,
|
|
137
|
+
disableCurrentScreenNavigation = _ref$disableCurrentSc === void 0 ? false : _ref$disableCurrentSc,
|
|
141
138
|
_ref$clickOnSiblings = _ref.clickOnSiblings,
|
|
142
139
|
clickOnSiblings = _ref$clickOnSiblings === void 0 ? false : _ref$clickOnSiblings,
|
|
143
140
|
_ref$nextScreenWidthP = _ref.nextScreenWidthPercent,
|
|
144
141
|
nextScreenWidthPercent = _ref$nextScreenWidthP === void 0 ? 0.5 : _ref$nextScreenWidthP,
|
|
145
|
-
_ref$
|
|
146
|
-
|
|
147
|
-
_ref$
|
|
148
|
-
|
|
149
|
-
_ref$onEnd = _ref.onEnd,
|
|
150
|
-
onEnd = _ref$onEnd === void 0 ? null : _ref$onEnd,
|
|
151
|
-
_ref$onChangeScreen = _ref.onChangeScreen,
|
|
152
|
-
onChangeScreen = _ref$onChangeScreen === void 0 ? null : _ref$onChangeScreen;
|
|
142
|
+
_ref$onInteract = _ref.onInteract,
|
|
143
|
+
onInteract = _ref$onInteract === void 0 ? null : _ref$onInteract,
|
|
144
|
+
_ref$onNavigate = _ref.onNavigate,
|
|
145
|
+
onNavigate = _ref$onNavigate === void 0 ? null : _ref$onNavigate;
|
|
153
146
|
|
|
154
147
|
var _useState = React.useState(screens.reduce(function (map, _ref2) {
|
|
155
148
|
var id = _ref2.id;
|
|
@@ -182,74 +175,69 @@ function useScreenInteraction() {
|
|
|
182
175
|
var disableInteraction = React.useCallback(function () {
|
|
183
176
|
return updateInteraction(false);
|
|
184
177
|
}, [updateInteraction]);
|
|
185
|
-
var
|
|
186
|
-
|
|
187
|
-
|
|
178
|
+
var interact = React.useCallback(function (_ref5) {
|
|
179
|
+
var event = _ref5.event,
|
|
180
|
+
target = _ref5.target,
|
|
181
|
+
currentTarget = _ref5.currentTarget,
|
|
182
|
+
x = _ref5.x,
|
|
183
|
+
y = _ref5.y,
|
|
184
|
+
index = _ref5.index;
|
|
185
|
+
|
|
186
|
+
if (onInteract !== null) {
|
|
187
|
+
onInteract({
|
|
188
|
+
event: event,
|
|
189
|
+
target: target,
|
|
190
|
+
currentTarget: currentTarget,
|
|
191
|
+
index: index,
|
|
192
|
+
x: x,
|
|
193
|
+
y: y
|
|
194
|
+
});
|
|
188
195
|
}
|
|
189
196
|
|
|
190
197
|
var screensCount = screens.length;
|
|
191
198
|
var tappedCurrent = screenIndex === index;
|
|
192
199
|
|
|
193
|
-
if (
|
|
194
|
-
eventsManager.emit('tap', e, index);
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
if (!isView && tappedCurrent || checkClickable(e.target) || tappedCurrent && !currentScreenInteractionEnabled) {
|
|
200
|
+
if (disableCurrentScreenNavigation && tappedCurrent || checkClickable(target) || tappedCurrent && !currentScreenInteractionEnabled) {
|
|
198
201
|
return;
|
|
199
202
|
}
|
|
200
203
|
|
|
201
|
-
var
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
_e$currentTarget$getB2 = _e$currentTarget$getB.left,
|
|
205
|
-
contentX = _e$currentTarget$getB2 === void 0 ? 0 : _e$currentTarget$getB2;
|
|
206
|
-
|
|
207
|
-
var tapX = e.clientX; // console.log(e.clientX, contentX, screenWidth);
|
|
208
|
-
|
|
209
|
-
var hasTappedLeft = tappedCurrent ? tapX - contentX < screenWidth * (1 - nextScreenWidthPercent) : screenIndex > index;
|
|
210
|
-
|
|
211
|
-
if (hasTappedLeft) {
|
|
212
|
-
nextIndex = clickOnSiblings ? index : Math.max(0, screenIndex - 1);
|
|
204
|
+
var _currentTarget$getBou = currentTarget.getBoundingClientRect(),
|
|
205
|
+
left = _currentTarget$getBou.left,
|
|
206
|
+
width = _currentTarget$getBou.width;
|
|
213
207
|
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
nextIndex = clickOnSiblings ? index : Math.min(screensCount - 1, screenIndex + 1);
|
|
219
|
-
var isLastScreen = screenIndex === screensCount - 1;
|
|
220
|
-
|
|
221
|
-
if (isLastScreen && onEnd !== null) {
|
|
222
|
-
onEnd();
|
|
208
|
+
var relativeX = x - left;
|
|
209
|
+
var direction = relativeX < width * (1 - nextScreenWidthPercent) ? 'previous' : 'next';
|
|
210
|
+
var lastIndex = screensCount - 1;
|
|
211
|
+
var nextIndex = index;
|
|
223
212
|
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
eventsManager.emit('tap_next', nextIndex);
|
|
229
|
-
}
|
|
213
|
+
if (direction === 'previous' && !clickOnSiblings) {
|
|
214
|
+
nextIndex = Math.max(0, screenIndex - 1);
|
|
215
|
+
} else if (direction === 'next' && !clickOnSiblings) {
|
|
216
|
+
nextIndex = Math.min(lastIndex, screenIndex + 1);
|
|
230
217
|
}
|
|
231
218
|
|
|
232
|
-
if (
|
|
233
|
-
|
|
219
|
+
if (onNavigate !== null) {
|
|
220
|
+
onNavigate({
|
|
221
|
+
index: index,
|
|
222
|
+
newIndex: nextIndex,
|
|
223
|
+
direction: direction,
|
|
224
|
+
end: index === nextIndex && nextIndex === lastIndex
|
|
225
|
+
});
|
|
234
226
|
}
|
|
235
|
-
|
|
236
|
-
onChangeScreen(nextIndex);
|
|
237
|
-
}, [screenWidth, screens, screenIndex, eventsManager, onClick, onEnd, onChangeScreen, screenIndex, screensInteractionEnabled, currentScreenInteractionEnabled, nextScreenWidthPercent, isView, clickOnSiblings]);
|
|
227
|
+
}, [screens, screenIndex, screenIndex, screensInteractionEnabled, currentScreenInteractionEnabled, nextScreenWidthPercent, disableCurrentScreenNavigation, clickOnSiblings, onInteract, onNavigate]);
|
|
238
228
|
return {
|
|
239
|
-
|
|
229
|
+
interact: interact,
|
|
240
230
|
currentScreenInteractionEnabled: currentScreenInteractionEnabled,
|
|
241
231
|
enableInteraction: enableInteraction,
|
|
242
232
|
disableInteraction: disableInteraction
|
|
243
233
|
};
|
|
244
234
|
}
|
|
245
235
|
|
|
246
|
-
var styles$
|
|
247
|
-
|
|
248
|
-
var styles$7 = {"container":"micromag-viewer-menus-menu-dots-container","closeButton":"micromag-viewer-menus-menu-dots-closeButton","menuButton":"micromag-viewer-menus-menu-dots-menuButton","item":"micromag-viewer-menus-menu-dots-item","items":"micromag-viewer-menus-menu-dots-items","menu":"micromag-viewer-menus-menu-dots-menu","menuIcon":"micromag-viewer-menus-menu-dots-menuIcon","vertical":"micromag-viewer-menus-menu-dots-vertical","withShadow":"micromag-viewer-menus-menu-dots-withShadow"};
|
|
236
|
+
var styles$b = {"container":"micromag-viewer-menus-menu-dots-container","closeButton":"micromag-viewer-menus-menu-dots-closeButton","menuButton":"micromag-viewer-menus-menu-dots-menuButton","item":"micromag-viewer-menus-menu-dots-item","items":"micromag-viewer-menus-menu-dots-items","menu":"micromag-viewer-menus-menu-dots-menu","menuIcon":"micromag-viewer-menus-menu-dots-menuIcon","vertical":"micromag-viewer-menus-menu-dots-vertical","withShadow":"micromag-viewer-menus-menu-dots-withShadow"};
|
|
249
237
|
|
|
250
|
-
var styles$
|
|
238
|
+
var styles$a = {"container":"micromag-viewer-menus-menu-dot-container","button":"micromag-viewer-menus-menu-dot-button","dot":"micromag-viewer-menus-menu-dot-dot","subDot":"micromag-viewer-menus-menu-dot-subDot","dots":"micromag-viewer-menus-menu-dot-dots","vertical":"micromag-viewer-menus-menu-dot-vertical"};
|
|
251
239
|
|
|
252
|
-
var propTypes$
|
|
240
|
+
var propTypes$g = {
|
|
253
241
|
current: PropTypes__default["default"].bool,
|
|
254
242
|
active: PropTypes__default["default"].bool,
|
|
255
243
|
colors: PropTypes__default["default"].shape({
|
|
@@ -262,7 +250,7 @@ var propTypes$e = {
|
|
|
262
250
|
onClick: PropTypes__default["default"].func,
|
|
263
251
|
className: PropTypes__default["default"].string
|
|
264
252
|
};
|
|
265
|
-
var defaultProps$
|
|
253
|
+
var defaultProps$g = {
|
|
266
254
|
current: false,
|
|
267
255
|
active: false,
|
|
268
256
|
colors: null,
|
|
@@ -325,44 +313,44 @@ var ViewerMenuDot = function ViewerMenuDot(_ref) {
|
|
|
325
313
|
});
|
|
326
314
|
}, [playing, duration, currentTime, setSpringProps]);
|
|
327
315
|
var inner = current && count > 1 ? /*#__PURE__*/React__default["default"].createElement("span", {
|
|
328
|
-
className: styles$
|
|
316
|
+
className: styles$a.dots
|
|
329
317
|
}, _toConsumableArray__default["default"](Array(count).keys()).map(function (i) {
|
|
330
318
|
return /*#__PURE__*/React__default["default"].createElement("span", {
|
|
331
|
-
className: classNames__default["default"]([styles$
|
|
319
|
+
className: classNames__default["default"]([styles$a.dot, styles$a.subDot]),
|
|
332
320
|
style: {
|
|
333
321
|
width: "".concat(parseFloat(1 / count * 100).toFixed(2), "%"),
|
|
334
322
|
backgroundColor: active && i <= subIndex ? primary : secondary
|
|
335
323
|
}
|
|
336
324
|
});
|
|
337
325
|
})) : /*#__PURE__*/React__default["default"].createElement("span", {
|
|
338
|
-
className: styles$
|
|
326
|
+
className: styles$a.dot,
|
|
339
327
|
style: {
|
|
340
328
|
backgroundColor: active ? primary : secondary
|
|
341
329
|
}
|
|
342
330
|
});
|
|
343
331
|
return /*#__PURE__*/React__default["default"].createElement("li", {
|
|
344
|
-
className: classNames__default["default"]([styles$
|
|
332
|
+
className: classNames__default["default"]([styles$a.container, (_ref3 = {}, _defineProperty__default["default"](_ref3, styles$a.active, current), _defineProperty__default["default"](_ref3, styles$a.vertical, vertical), _defineProperty__default["default"](_ref3, className, className !== null), _ref3)]),
|
|
345
333
|
"aria-hidden": "true"
|
|
346
334
|
}, /*#__PURE__*/React__default["default"].createElement("button", {
|
|
347
335
|
type: "button",
|
|
348
|
-
className: styles$
|
|
336
|
+
className: styles$a.button,
|
|
349
337
|
onClick: onClick,
|
|
350
338
|
tabIndex: "-1"
|
|
351
339
|
}, inner));
|
|
352
340
|
};
|
|
353
341
|
|
|
354
|
-
ViewerMenuDot.propTypes = propTypes$
|
|
355
|
-
ViewerMenuDot.defaultProps = defaultProps$
|
|
342
|
+
ViewerMenuDot.propTypes = propTypes$g;
|
|
343
|
+
ViewerMenuDot.defaultProps = defaultProps$g;
|
|
356
344
|
|
|
357
|
-
var styles$
|
|
345
|
+
var styles$9 = {};
|
|
358
346
|
|
|
359
|
-
var propTypes$
|
|
347
|
+
var propTypes$f = {
|
|
360
348
|
size: PropTypes__default["default"].number,
|
|
361
349
|
spacing: PropTypes__default["default"].number,
|
|
362
350
|
color: PropTypes__default["default"].string,
|
|
363
351
|
className: PropTypes__default["default"].string
|
|
364
352
|
};
|
|
365
|
-
var defaultProps$
|
|
353
|
+
var defaultProps$f = {
|
|
366
354
|
size: 100,
|
|
367
355
|
spacing: 8,
|
|
368
356
|
color: 'white',
|
|
@@ -376,7 +364,7 @@ var MenuIcon = function MenuIcon(_ref) {
|
|
|
376
364
|
className = _ref.className;
|
|
377
365
|
var squareSize = (size - 2 * spacing) / 3;
|
|
378
366
|
return /*#__PURE__*/React__default["default"].createElement("svg", {
|
|
379
|
-
className: classNames__default["default"]([styles$
|
|
367
|
+
className: classNames__default["default"]([styles$9.container, _defineProperty__default["default"]({}, className, className !== null)]),
|
|
380
368
|
xmlns: "http://www.w3.org/2000/svg",
|
|
381
369
|
viewBox: "0 0 ".concat(size, " ").concat(size),
|
|
382
370
|
"aria-hidden": "true"
|
|
@@ -394,10 +382,10 @@ var MenuIcon = function MenuIcon(_ref) {
|
|
|
394
382
|
}));
|
|
395
383
|
};
|
|
396
384
|
|
|
397
|
-
MenuIcon.propTypes = propTypes$
|
|
398
|
-
MenuIcon.defaultProps = defaultProps$
|
|
385
|
+
MenuIcon.propTypes = propTypes$f;
|
|
386
|
+
MenuIcon.defaultProps = defaultProps$f;
|
|
399
387
|
|
|
400
|
-
var propTypes$
|
|
388
|
+
var propTypes$e = {
|
|
401
389
|
direction: PropTypes__default["default"].oneOf(['horizontal', 'vertical']),
|
|
402
390
|
withShadow: PropTypes__default["default"].bool,
|
|
403
391
|
items: core$1.PropTypes.menuItems,
|
|
@@ -413,7 +401,7 @@ var propTypes$c = {
|
|
|
413
401
|
onClose: PropTypes__default["default"].func,
|
|
414
402
|
className: PropTypes__default["default"].string
|
|
415
403
|
};
|
|
416
|
-
var defaultProps$
|
|
404
|
+
var defaultProps$e = {
|
|
417
405
|
direction: 'horizontal',
|
|
418
406
|
withShadow: false,
|
|
419
407
|
items: [],
|
|
@@ -453,7 +441,7 @@ var ViewerMenuDots = function ViewerMenuDots(_ref) {
|
|
|
453
441
|
return current;
|
|
454
442
|
});
|
|
455
443
|
return /*#__PURE__*/React__default["default"].createElement("nav", {
|
|
456
|
-
className: classNames__default["default"]([styles$
|
|
444
|
+
className: classNames__default["default"]([styles$b.container, (_ref4 = {}, _defineProperty__default["default"](_ref4, className, className !== null), _defineProperty__default["default"](_ref4, styles$b.vertical, direction === 'vertical'), _defineProperty__default["default"](_ref4, styles$b.withShadow, withShadow), _ref4)]),
|
|
457
445
|
"aria-label": intl.formatMessage({
|
|
458
446
|
id: "bLYuuN",
|
|
459
447
|
defaultMessage: [{
|
|
@@ -477,7 +465,7 @@ var ViewerMenuDots = function ViewerMenuDots(_ref) {
|
|
|
477
465
|
total: items.length
|
|
478
466
|
})
|
|
479
467
|
}, /*#__PURE__*/React__default["default"].createElement("ul", {
|
|
480
|
-
className: styles$
|
|
468
|
+
className: styles$b.items
|
|
481
469
|
}, items.map(function (item, index) {
|
|
482
470
|
var _ref5 = item || {},
|
|
483
471
|
_ref5$current = _ref5.current,
|
|
@@ -504,9 +492,9 @@ var ViewerMenuDots = function ViewerMenuDots(_ref) {
|
|
|
504
492
|
vertical: direction === 'vertical'
|
|
505
493
|
});
|
|
506
494
|
}), !withoutScreensMenu ? /*#__PURE__*/React__default["default"].createElement("li", {
|
|
507
|
-
className: styles$
|
|
495
|
+
className: styles$b.menu
|
|
508
496
|
}, /*#__PURE__*/React__default["default"].createElement(MenuIcon, {
|
|
509
|
-
className: styles$
|
|
497
|
+
className: styles$b.menuIcon,
|
|
510
498
|
color: primary
|
|
511
499
|
}), /*#__PURE__*/React__default["default"].createElement("button", {
|
|
512
500
|
type: "button",
|
|
@@ -524,16 +512,16 @@ var ViewerMenuDots = function ViewerMenuDots(_ref) {
|
|
|
524
512
|
"value": "Menu"
|
|
525
513
|
}]
|
|
526
514
|
}),
|
|
527
|
-
className: styles$
|
|
515
|
+
className: styles$b.menuButton,
|
|
528
516
|
onClick: onClickMenu
|
|
529
517
|
})) : null, closeable ? /*#__PURE__*/React__default["default"].createElement("li", {
|
|
530
|
-
className: styles$
|
|
518
|
+
className: styles$b.closeButton,
|
|
531
519
|
style: {
|
|
532
520
|
color: primary
|
|
533
521
|
}
|
|
534
522
|
}, /*#__PURE__*/React__default["default"].createElement("button", {
|
|
535
523
|
type: "button",
|
|
536
|
-
className: styles$
|
|
524
|
+
className: styles$b.closeButton,
|
|
537
525
|
onClick: onClose,
|
|
538
526
|
title: intl.formatMessage({
|
|
539
527
|
id: "dj/p/q",
|
|
@@ -554,15 +542,13 @@ var ViewerMenuDots = function ViewerMenuDots(_ref) {
|
|
|
554
542
|
}))) : null));
|
|
555
543
|
};
|
|
556
544
|
|
|
557
|
-
ViewerMenuDots.propTypes = propTypes$
|
|
558
|
-
ViewerMenuDots.defaultProps = defaultProps$
|
|
559
|
-
|
|
560
|
-
var styles$4 = {"container":"micromag-viewer-menus-menu-preview-container","screenButton":"micromag-viewer-menus-menu-preview-screenButton","activeScreenBorder":"micromag-viewer-menus-menu-preview-activeScreenBorder","scroll":"micromag-viewer-menus-menu-preview-scroll","header":"micromag-viewer-menus-menu-preview-header","button":"micromag-viewer-menus-menu-preview-button","shareButton":"micromag-viewer-menus-menu-preview-shareButton","disabled":"micromag-viewer-menus-menu-preview-disabled","icon":"micromag-viewer-menus-menu-preview-icon","buttons":"micromag-viewer-menus-menu-preview-buttons","organisation":"micromag-viewer-menus-menu-preview-organisation","title":"micromag-viewer-menus-menu-preview-title","content":"micromag-viewer-menus-menu-preview-content","nav":"micromag-viewer-menus-menu-preview-nav","item":"micromag-viewer-menus-menu-preview-item","items":"micromag-viewer-menus-menu-preview-items","active":"micromag-viewer-menus-menu-preview-active","itemContent":"micromag-viewer-menus-menu-preview-itemContent","screenContainer":"micromag-viewer-menus-menu-preview-screenContainer","subScreenBadge":"micromag-viewer-menus-menu-preview-subScreenBadge","subScreenCount":"micromag-viewer-menus-menu-preview-subScreenCount","subScreenIcon":"micromag-viewer-menus-menu-preview-subScreenIcon","screenContent":"micromag-viewer-menus-menu-preview-screenContent"};
|
|
545
|
+
ViewerMenuDots.propTypes = propTypes$e;
|
|
546
|
+
ViewerMenuDots.defaultProps = defaultProps$e;
|
|
561
547
|
|
|
562
|
-
var propTypes$
|
|
548
|
+
var propTypes$d = {
|
|
563
549
|
className: PropTypes__default["default"].string
|
|
564
550
|
};
|
|
565
|
-
var defaultProps$
|
|
551
|
+
var defaultProps$d = {
|
|
566
552
|
className: null
|
|
567
553
|
};
|
|
568
554
|
|
|
@@ -579,47 +565,12 @@ var StackIcon = function StackIcon(_ref) {
|
|
|
579
565
|
}));
|
|
580
566
|
};
|
|
581
567
|
|
|
582
|
-
StackIcon.propTypes = propTypes$
|
|
583
|
-
StackIcon.defaultProps = defaultProps$
|
|
584
|
-
|
|
585
|
-
var propTypes$a = {
|
|
586
|
-
className: PropTypes__default["default"].string
|
|
587
|
-
};
|
|
588
|
-
var defaultProps$a = {
|
|
589
|
-
className: null
|
|
590
|
-
};
|
|
591
|
-
|
|
592
|
-
var LinkIcon = function LinkIcon(_ref) {
|
|
593
|
-
var className = _ref.className;
|
|
594
|
-
return /*#__PURE__*/React__default["default"].createElement("svg", {
|
|
595
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
596
|
-
width: "32",
|
|
597
|
-
height: "32",
|
|
598
|
-
viewBox: "0 0 32 32",
|
|
599
|
-
className: classNames__default["default"]([_defineProperty__default["default"]({}, className, className !== null)])
|
|
600
|
-
}, /*#__PURE__*/React__default["default"].createElement("path", {
|
|
601
|
-
d: "M13.13,17.44a7.18,7.18,0,0,0,10,1.45,6.34,6.34,0,0,0,.78-.68l4.31-4.31A7.18,7.18,0,0,0,18.2,3.65l-.09.09L15.65,6.2",
|
|
602
|
-
fill: "none",
|
|
603
|
-
stroke: "currentColor",
|
|
604
|
-
strokeLinecap: "round",
|
|
605
|
-
strokeLinejoin: "round",
|
|
606
|
-
strokeWidth: "3"
|
|
607
|
-
}), /*#__PURE__*/React__default["default"].createElement("path", {
|
|
608
|
-
d: "M18.87,14.56a7.19,7.19,0,0,0-10-1.45,6.34,6.34,0,0,0-.78.68L3.73,18.1A7.18,7.18,0,1,0,13.8,28.35l.09-.09,2.45-2.46",
|
|
609
|
-
fill: "none",
|
|
610
|
-
stroke: "currentColor",
|
|
611
|
-
strokeLinecap: "round",
|
|
612
|
-
strokeLinejoin: "round",
|
|
613
|
-
strokeWidth: "3"
|
|
614
|
-
}));
|
|
615
|
-
};
|
|
616
|
-
|
|
617
|
-
LinkIcon.propTypes = propTypes$a;
|
|
618
|
-
LinkIcon.defaultProps = defaultProps$a;
|
|
568
|
+
StackIcon.propTypes = propTypes$d;
|
|
569
|
+
StackIcon.defaultProps = defaultProps$d;
|
|
619
570
|
|
|
620
|
-
var styles$
|
|
571
|
+
var styles$8 = {"close":"micromag-viewer-partials-share-modal-close","container":"micromag-viewer-partials-share-modal-container","opened":"micromag-viewer-partials-share-modal-opened","modal":"micromag-viewer-partials-share-modal-modal","header":"micromag-viewer-partials-share-modal-header","heading":"micromag-viewer-partials-share-modal-heading","closeIcon":"micromag-viewer-partials-share-modal-closeIcon","shareOptions":"micromag-viewer-partials-share-modal-shareOptions"};
|
|
621
572
|
|
|
622
|
-
var propTypes$
|
|
573
|
+
var propTypes$c = {
|
|
623
574
|
url: PropTypes__default["default"].string,
|
|
624
575
|
title: PropTypes__default["default"].string,
|
|
625
576
|
opened: PropTypes__default["default"].bool,
|
|
@@ -627,7 +578,7 @@ var propTypes$9 = {
|
|
|
627
578
|
onShare: PropTypes__default["default"].func,
|
|
628
579
|
onCancel: PropTypes__default["default"].func
|
|
629
580
|
};
|
|
630
|
-
var defaultProps$
|
|
581
|
+
var defaultProps$c = {
|
|
631
582
|
url: null,
|
|
632
583
|
title: null,
|
|
633
584
|
opened: false,
|
|
@@ -646,24 +597,6 @@ var ShareModal = function ShareModal(_ref) {
|
|
|
646
597
|
onShare = _ref.onShare,
|
|
647
598
|
onCancel = _ref.onCancel;
|
|
648
599
|
var modalRef = React.useRef();
|
|
649
|
-
|
|
650
|
-
var _useState = React.useState(false),
|
|
651
|
-
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
652
|
-
linkCopied = _useState2[0],
|
|
653
|
-
setLinkCopied = _useState2[1];
|
|
654
|
-
|
|
655
|
-
var onClickCopy = React.useCallback(function () {
|
|
656
|
-
utils.copyToClipboard(url).then(function () {
|
|
657
|
-
setLinkCopied(true);
|
|
658
|
-
setTimeout(function () {
|
|
659
|
-
setLinkCopied(false);
|
|
660
|
-
}, 2000);
|
|
661
|
-
});
|
|
662
|
-
}, [setLinkCopied]);
|
|
663
|
-
var onClickLinkInput = React.useCallback(function (e) {
|
|
664
|
-
var target = e.target;
|
|
665
|
-
target.setSelectionRange(0, target.value.length);
|
|
666
|
-
}, []);
|
|
667
600
|
var onDocumentClick = React.useCallback(function (e) {
|
|
668
601
|
var _ref2 = e || {},
|
|
669
602
|
target = _ref2.target;
|
|
@@ -676,15 +609,15 @@ var ShareModal = function ShareModal(_ref) {
|
|
|
676
609
|
}, [opened, onCancel]);
|
|
677
610
|
hooks.useDocumentEvent('click', onDocumentClick, opened);
|
|
678
611
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
679
|
-
className: classNames__default["default"]([styles$
|
|
612
|
+
className: classNames__default["default"]([styles$8.container, (_ref3 = {}, _defineProperty__default["default"](_ref3, className, className), _defineProperty__default["default"](_ref3, styles$8.opened, opened), _ref3)]),
|
|
680
613
|
"aria-hidden": opened ? null : '-1'
|
|
681
614
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
682
|
-
className: styles$
|
|
615
|
+
className: styles$8.modal,
|
|
683
616
|
ref: modalRef
|
|
684
617
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
685
|
-
className: styles$
|
|
618
|
+
className: styles$8.header
|
|
686
619
|
}, /*#__PURE__*/React__default["default"].createElement("h2", {
|
|
687
|
-
className: styles$
|
|
620
|
+
className: styles$8.heading
|
|
688
621
|
}, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
689
622
|
id: "oL4ueH",
|
|
690
623
|
defaultMessage: [{
|
|
@@ -692,54 +625,30 @@ var ShareModal = function ShareModal(_ref) {
|
|
|
692
625
|
"value": "Share"
|
|
693
626
|
}]
|
|
694
627
|
})), /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
695
|
-
className: styles$
|
|
628
|
+
className: styles$8.close,
|
|
696
629
|
onClick: onCancel,
|
|
697
630
|
focusable: opened
|
|
698
631
|
}, /*#__PURE__*/React__default["default"].createElement(components.Close, {
|
|
699
|
-
className: styles$
|
|
632
|
+
className: styles$8.closeIcon,
|
|
700
633
|
border: "none"
|
|
701
634
|
}))), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
702
|
-
className: styles$
|
|
635
|
+
className: styles$8.content
|
|
703
636
|
}, /*#__PURE__*/React__default["default"].createElement(ShareOptions__default["default"], {
|
|
704
|
-
className: styles$
|
|
637
|
+
className: styles$8.shareOptions,
|
|
705
638
|
title: title,
|
|
706
639
|
url: url,
|
|
707
640
|
focusable: opened,
|
|
708
641
|
onShare: onShare,
|
|
709
642
|
onClose: onCancel
|
|
710
|
-
})
|
|
711
|
-
className: styles$3.otherOptions
|
|
712
|
-
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
713
|
-
className: classNames__default["default"]([styles$3.copyLink, _defineProperty__default["default"]({}, styles$3.isLinkCopied, linkCopied)])
|
|
714
|
-
}, /*#__PURE__*/React__default["default"].createElement("input", {
|
|
715
|
-
className: styles$3.screenUrlInput,
|
|
716
|
-
type: "text",
|
|
717
|
-
value: url,
|
|
718
|
-
onClick: onClickLinkInput,
|
|
719
|
-
readOnly: true
|
|
720
|
-
}), /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
721
|
-
className: styles$3.copyUrlButton,
|
|
722
|
-
onClick: onClickCopy,
|
|
723
|
-
focusable: opened
|
|
724
|
-
}, /*#__PURE__*/React__default["default"].createElement(LinkIcon, {
|
|
725
|
-
className: styles$3.linkIcon
|
|
726
|
-
})), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
727
|
-
className: styles$3.successfulCopyMessage
|
|
728
|
-
}, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
729
|
-
id: "XRmkEh",
|
|
730
|
-
defaultMessage: [{
|
|
731
|
-
"type": 0,
|
|
732
|
-
"value": "Link copied to clipboard!"
|
|
733
|
-
}]
|
|
734
|
-
})))))));
|
|
643
|
+
}))));
|
|
735
644
|
};
|
|
736
645
|
|
|
737
|
-
ShareModal.propTypes = propTypes$
|
|
738
|
-
ShareModal.defaultProps = defaultProps$
|
|
646
|
+
ShareModal.propTypes = propTypes$c;
|
|
647
|
+
ShareModal.defaultProps = defaultProps$c;
|
|
739
648
|
|
|
740
|
-
var styles$
|
|
649
|
+
var styles$7 = {"container":"micromag-viewer-partials-share-button-container"};
|
|
741
650
|
|
|
742
|
-
var propTypes$
|
|
651
|
+
var propTypes$b = {
|
|
743
652
|
title: PropTypes__default["default"].string,
|
|
744
653
|
url: PropTypes__default["default"].string,
|
|
745
654
|
className: PropTypes__default["default"].string,
|
|
@@ -748,7 +657,7 @@ var propTypes$8 = {
|
|
|
748
657
|
children: PropTypes__default["default"].node,
|
|
749
658
|
focusable: PropTypes__default["default"].bool
|
|
750
659
|
};
|
|
751
|
-
var defaultProps$
|
|
660
|
+
var defaultProps$b = {
|
|
752
661
|
title: null,
|
|
753
662
|
url: null,
|
|
754
663
|
className: null,
|
|
@@ -777,7 +686,7 @@ var ShareButton = function ShareButton(_ref) {
|
|
|
777
686
|
setStoryShareModalOpened(function (opened) {
|
|
778
687
|
return !opened;
|
|
779
688
|
});
|
|
780
|
-
}, [setStoryShareModalOpened]);
|
|
689
|
+
}, [setStoryShareModalOpened, storyShareModalOpened]);
|
|
781
690
|
var onStoryShared = React.useCallback(function (type) {
|
|
782
691
|
setStoryShareModalOpened(false);
|
|
783
692
|
|
|
@@ -789,7 +698,7 @@ var ShareButton = function ShareButton(_ref) {
|
|
|
789
698
|
setStoryShareModalOpened(false);
|
|
790
699
|
}, [setStoryShareModalOpened]);
|
|
791
700
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
792
|
-
className: classNames__default["default"]([styles$
|
|
701
|
+
className: classNames__default["default"]([styles$7.container, _defineProperty__default["default"]({}, className, className !== null)])
|
|
793
702
|
}, /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
794
703
|
className: classNames__default["default"]([_defineProperty__default["default"]({}, buttonClassName, buttonClassName !== null)]),
|
|
795
704
|
onClick: onShareIconClick,
|
|
@@ -809,7 +718,7 @@ var ShareButton = function ShareButton(_ref) {
|
|
|
809
718
|
}),
|
|
810
719
|
focusable: focusable
|
|
811
720
|
}, children), /*#__PURE__*/React__default["default"].createElement(ShareModal, {
|
|
812
|
-
className: styles$
|
|
721
|
+
className: styles$7.shareModal,
|
|
813
722
|
opened: storyShareModalOpened,
|
|
814
723
|
title: title,
|
|
815
724
|
url: url,
|
|
@@ -818,10 +727,12 @@ var ShareButton = function ShareButton(_ref) {
|
|
|
818
727
|
}));
|
|
819
728
|
};
|
|
820
729
|
|
|
821
|
-
ShareButton.propTypes = propTypes$
|
|
822
|
-
ShareButton.defaultProps = defaultProps$
|
|
730
|
+
ShareButton.propTypes = propTypes$b;
|
|
731
|
+
ShareButton.defaultProps = defaultProps$b;
|
|
823
732
|
|
|
824
|
-
var
|
|
733
|
+
var styles$6 = {"container":"micromag-viewer-menus-menu-preview-container","screenButton":"micromag-viewer-menus-menu-preview-screenButton","activeScreenBorder":"micromag-viewer-menus-menu-preview-activeScreenBorder","scroll":"micromag-viewer-menus-menu-preview-scroll","header":"micromag-viewer-menus-menu-preview-header","button":"micromag-viewer-menus-menu-preview-button","shareButton":"micromag-viewer-menus-menu-preview-shareButton","disabled":"micromag-viewer-menus-menu-preview-disabled","icon":"micromag-viewer-menus-menu-preview-icon","buttons":"micromag-viewer-menus-menu-preview-buttons","organisation":"micromag-viewer-menus-menu-preview-organisation","title":"micromag-viewer-menus-menu-preview-title","content":"micromag-viewer-menus-menu-preview-content","nav":"micromag-viewer-menus-menu-preview-nav","item":"micromag-viewer-menus-menu-preview-item","items":"micromag-viewer-menus-menu-preview-items","active":"micromag-viewer-menus-menu-preview-active","itemContent":"micromag-viewer-menus-menu-preview-itemContent","screenContainer":"micromag-viewer-menus-menu-preview-screenContainer","subScreenBadge":"micromag-viewer-menus-menu-preview-subScreenBadge","subScreenCount":"micromag-viewer-menus-menu-preview-subScreenCount","subScreenIcon":"micromag-viewer-menus-menu-preview-subScreenIcon","screenContent":"micromag-viewer-menus-menu-preview-screenContent"};
|
|
734
|
+
|
|
735
|
+
var propTypes$a = {
|
|
825
736
|
viewerTheme: core$1.PropTypes.viewerTheme,
|
|
826
737
|
screenSize: core$1.PropTypes.screenSize,
|
|
827
738
|
menuWidth: PropTypes__default["default"].number,
|
|
@@ -839,7 +750,7 @@ var propTypes$7 = {
|
|
|
839
750
|
fullscreenEnabled: PropTypes__default["default"].bool,
|
|
840
751
|
className: PropTypes__default["default"].string
|
|
841
752
|
};
|
|
842
|
-
var defaultProps$
|
|
753
|
+
var defaultProps$a = {
|
|
843
754
|
viewerTheme: null,
|
|
844
755
|
screenSize: null,
|
|
845
756
|
menuWidth: null,
|
|
@@ -880,61 +791,55 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
880
791
|
screenWidth = _ref2.width,
|
|
881
792
|
screenHeight = _ref2.height;
|
|
882
793
|
|
|
883
|
-
var
|
|
884
|
-
firstScreenContainerRef =
|
|
885
|
-
|
|
794
|
+
var _useDimensionObserver = hooks.useDimensionObserver(),
|
|
795
|
+
firstScreenContainerRef = _useDimensionObserver.ref,
|
|
796
|
+
_useDimensionObserver2 = _useDimensionObserver.width,
|
|
797
|
+
thumbWidth = _useDimensionObserver2 === void 0 ? 0 : _useDimensionObserver2;
|
|
886
798
|
|
|
887
|
-
var
|
|
888
|
-
containerRef =
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
var _ref3 = firstScreenContentRect || {},
|
|
892
|
-
_ref3$width = _ref3.width,
|
|
893
|
-
thumbWidth = _ref3$width === void 0 ? 0 : _ref3$width;
|
|
894
|
-
|
|
895
|
-
var _ref4 = containerRect || {},
|
|
896
|
-
_ref4$width = _ref4.width,
|
|
897
|
-
contentWidth = _ref4$width === void 0 ? 0 : _ref4$width;
|
|
799
|
+
var _useDimensionObserver3 = hooks.useDimensionObserver(),
|
|
800
|
+
containerRef = _useDimensionObserver3.ref,
|
|
801
|
+
_useDimensionObserver4 = _useDimensionObserver3.width,
|
|
802
|
+
contentWidth = _useDimensionObserver4 === void 0 ? 0 : _useDimensionObserver4;
|
|
898
803
|
|
|
899
804
|
var thumbsPerLine = Math.max(Math.floor(contentWidth / maxThumbsWidth), 3); // Viewer theme
|
|
900
805
|
|
|
901
|
-
var
|
|
902
|
-
|
|
903
|
-
colors =
|
|
904
|
-
|
|
905
|
-
background =
|
|
906
|
-
|
|
907
|
-
textStyles =
|
|
908
|
-
|
|
909
|
-
brandLogo =
|
|
910
|
-
|
|
911
|
-
var
|
|
912
|
-
|
|
913
|
-
brandTextStyle =
|
|
914
|
-
|
|
915
|
-
var
|
|
916
|
-
|
|
917
|
-
brandPrimaryColor =
|
|
918
|
-
|
|
919
|
-
brandSecondaryColor =
|
|
920
|
-
|
|
921
|
-
var
|
|
922
|
-
|
|
923
|
-
brandBackgroundColor =
|
|
924
|
-
|
|
925
|
-
image =
|
|
926
|
-
|
|
927
|
-
var
|
|
928
|
-
|
|
929
|
-
brandImageUrl =
|
|
806
|
+
var _ref3 = viewerTheme || {},
|
|
807
|
+
_ref3$colors = _ref3.colors,
|
|
808
|
+
colors = _ref3$colors === void 0 ? null : _ref3$colors,
|
|
809
|
+
_ref3$background = _ref3.background,
|
|
810
|
+
background = _ref3$background === void 0 ? null : _ref3$background,
|
|
811
|
+
_ref3$textStyles = _ref3.textStyles,
|
|
812
|
+
textStyles = _ref3$textStyles === void 0 ? null : _ref3$textStyles,
|
|
813
|
+
_ref3$logo = _ref3.logo,
|
|
814
|
+
brandLogo = _ref3$logo === void 0 ? null : _ref3$logo;
|
|
815
|
+
|
|
816
|
+
var _ref4 = textStyles || {},
|
|
817
|
+
_ref4$title = _ref4.title,
|
|
818
|
+
brandTextStyle = _ref4$title === void 0 ? null : _ref4$title;
|
|
819
|
+
|
|
820
|
+
var _ref5 = colors || {},
|
|
821
|
+
_ref5$primary = _ref5.primary,
|
|
822
|
+
brandPrimaryColor = _ref5$primary === void 0 ? null : _ref5$primary,
|
|
823
|
+
_ref5$secondary = _ref5.secondary,
|
|
824
|
+
brandSecondaryColor = _ref5$secondary === void 0 ? null : _ref5$secondary;
|
|
825
|
+
|
|
826
|
+
var _ref6 = background || {},
|
|
827
|
+
_ref6$color = _ref6.color,
|
|
828
|
+
brandBackgroundColor = _ref6$color === void 0 ? null : _ref6$color,
|
|
829
|
+
_ref6$image = _ref6.image,
|
|
830
|
+
image = _ref6$image === void 0 ? null : _ref6$image;
|
|
831
|
+
|
|
832
|
+
var _ref7 = image || {},
|
|
833
|
+
_ref7$url = _ref7.url,
|
|
834
|
+
brandImageUrl = _ref7$url === void 0 ? null : _ref7$url;
|
|
930
835
|
|
|
931
836
|
var borderPrimaryColorStyle = utils.getStyleFromColor(brandPrimaryColor, 'borderColor');
|
|
932
837
|
var colorSecondaryColorStyle = utils.getStyleFromColor(brandSecondaryColor, 'color');
|
|
933
838
|
var backgroundColorStyle = utils.getStyleFromColor(brandBackgroundColor, 'backgroundColor');
|
|
934
839
|
|
|
935
|
-
var
|
|
936
|
-
|
|
937
|
-
brandLogoUrl =
|
|
840
|
+
var _ref8 = brandLogo || {},
|
|
841
|
+
_ref8$url = _ref8.url,
|
|
842
|
+
brandLogoUrl = _ref8$url === void 0 ? null : _ref8$url;
|
|
938
843
|
|
|
939
844
|
var brandImageStyle = brandImageUrl !== null ? {
|
|
940
845
|
backgroundImage: "url(".concat(brandImageUrl, ")")
|
|
@@ -946,11 +851,11 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
946
851
|
scrolledBottom = _useState2[0],
|
|
947
852
|
setScrolledBottom = _useState2[1];
|
|
948
853
|
|
|
949
|
-
var dragBind = react.useDrag(function (
|
|
950
|
-
var
|
|
951
|
-
dy =
|
|
952
|
-
last =
|
|
953
|
-
tap =
|
|
854
|
+
var dragBind = react.useDrag(function (_ref9) {
|
|
855
|
+
var _ref9$direction = _slicedToArray__default["default"](_ref9.direction, 2),
|
|
856
|
+
dy = _ref9$direction[1],
|
|
857
|
+
last = _ref9.last,
|
|
858
|
+
tap = _ref9.tap;
|
|
954
859
|
|
|
955
860
|
if (!tap && last && scrolledBottom && dy < 0 && onClose !== null) {
|
|
956
861
|
onClose();
|
|
@@ -971,36 +876,36 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
971
876
|
return !focusable ? items.slice(0, 3) : items;
|
|
972
877
|
}, [items, focusable]);
|
|
973
878
|
return /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
974
|
-
className: classNames__default["default"]([styles$
|
|
879
|
+
className: classNames__default["default"]([styles$6.container, _defineProperty__default["default"]({}, className, className !== null)]),
|
|
975
880
|
style: _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, backgroundColorStyle), brandImageStyle), {}, {
|
|
976
881
|
width: menuWidth
|
|
977
882
|
}),
|
|
978
883
|
"aria-hidden": focusable ? null : 'true'
|
|
979
884
|
}, dragBind()), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
980
|
-
className: styles$
|
|
885
|
+
className: styles$6.header
|
|
981
886
|
}, brandLogoUrl !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
982
|
-
className: styles$
|
|
887
|
+
className: styles$6.organisation,
|
|
983
888
|
style: {
|
|
984
889
|
backgroundImage: "url(".concat(brandLogoUrl, ")")
|
|
985
890
|
}
|
|
986
891
|
}) : null, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
987
|
-
className: styles$
|
|
892
|
+
className: styles$6.title,
|
|
988
893
|
style: titleStyle
|
|
989
894
|
}, title), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
990
|
-
className: styles$
|
|
895
|
+
className: styles$6.buttons,
|
|
991
896
|
style: colorSecondaryColorStyle
|
|
992
897
|
}, /*#__PURE__*/React__default["default"].createElement(ShareButton, {
|
|
993
|
-
className: styles$
|
|
994
|
-
buttonClassName: styles$
|
|
898
|
+
className: styles$6.shareButton,
|
|
899
|
+
buttonClassName: styles$6.button,
|
|
995
900
|
onShare: onShare,
|
|
996
901
|
url: shareUrl,
|
|
997
902
|
title: title,
|
|
998
903
|
focusable: focusable
|
|
999
904
|
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
1000
|
-
className: styles$
|
|
905
|
+
className: styles$6.icon,
|
|
1001
906
|
icon: faShare.faShare
|
|
1002
907
|
})), fullscreenEnabled ? /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
1003
|
-
className: styles$
|
|
908
|
+
className: styles$6.button,
|
|
1004
909
|
onClick: toggleFullscreen,
|
|
1005
910
|
title: intl.formatMessage({
|
|
1006
911
|
id: "AuxqcG",
|
|
@@ -1018,10 +923,10 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
1018
923
|
}),
|
|
1019
924
|
focusable: focusable
|
|
1020
925
|
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
1021
|
-
className: styles$
|
|
926
|
+
className: styles$6.icon,
|
|
1022
927
|
icon: fullscreenActive ? faCompress.faCompress : faExpand.faExpand
|
|
1023
928
|
})) : null, /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
1024
|
-
className: styles$
|
|
929
|
+
className: styles$6.button,
|
|
1025
930
|
onClick: onClose,
|
|
1026
931
|
title: intl.formatMessage({
|
|
1027
932
|
id: "dj/p/q",
|
|
@@ -1039,19 +944,19 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
1039
944
|
}),
|
|
1040
945
|
focusable: focusable
|
|
1041
946
|
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
1042
|
-
className: styles$
|
|
947
|
+
className: styles$6.icon,
|
|
1043
948
|
icon: faTimes.faTimes
|
|
1044
949
|
})))), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1045
|
-
className: styles$
|
|
950
|
+
className: styles$6.content,
|
|
1046
951
|
ref: containerRef
|
|
1047
952
|
}, /*#__PURE__*/React__default["default"].createElement(Scroll__default["default"], {
|
|
1048
|
-
className: styles$
|
|
953
|
+
className: styles$6.scroll,
|
|
1049
954
|
onScrolledBottom: onScrolledBottom,
|
|
1050
955
|
onScrolledNotBottom: onScrolledNotBottom
|
|
1051
956
|
}, /*#__PURE__*/React__default["default"].createElement("nav", {
|
|
1052
|
-
className: styles$
|
|
957
|
+
className: styles$6.nav
|
|
1053
958
|
}, /*#__PURE__*/React__default["default"].createElement("ul", {
|
|
1054
|
-
className: styles$
|
|
959
|
+
className: styles$6.items
|
|
1055
960
|
}, finalItems.map(function (item, index) {
|
|
1056
961
|
var screenId = item.screenId,
|
|
1057
962
|
_item$current = item.current,
|
|
@@ -1078,22 +983,22 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
1078
983
|
}]
|
|
1079
984
|
})) : '');
|
|
1080
985
|
return /*#__PURE__*/React__default["default"].createElement("li", {
|
|
1081
|
-
className: classNames__default["default"]([styles$
|
|
986
|
+
className: classNames__default["default"]([styles$6.item, _defineProperty__default["default"]({}, styles$6.active, current)]),
|
|
1082
987
|
key: "item-".concat(screenId),
|
|
1083
988
|
style: {
|
|
1084
989
|
width: "".concat(100 / thumbsPerLine, "%")
|
|
1085
990
|
}
|
|
1086
991
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1087
|
-
className: styles$
|
|
992
|
+
className: styles$6.itemContent
|
|
1088
993
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1089
|
-
className: styles$
|
|
994
|
+
className: styles$6.screenContainer,
|
|
1090
995
|
ref: index === 0 ? firstScreenContainerRef : null
|
|
1091
996
|
}, count > 1 ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1092
|
-
className: styles$
|
|
997
|
+
className: styles$6.subScreenBadge
|
|
1093
998
|
}, /*#__PURE__*/React__default["default"].createElement("span", {
|
|
1094
|
-
className: styles$
|
|
999
|
+
className: styles$6.subScreenCount
|
|
1095
1000
|
}, count), /*#__PURE__*/React__default["default"].createElement(StackIcon, {
|
|
1096
|
-
className: styles$
|
|
1001
|
+
className: styles$6.subScreenIcon
|
|
1097
1002
|
})) : null, screenWidth > 0 && screenHeight > 0 ? /*#__PURE__*/React__default["default"].createElement(components.ScreenPreview, {
|
|
1098
1003
|
screenWidth: screenWidth,
|
|
1099
1004
|
screenHeight: screenHeight,
|
|
@@ -1103,11 +1008,11 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
1103
1008
|
active: focusable,
|
|
1104
1009
|
withSize: true
|
|
1105
1010
|
}) : null, current ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1106
|
-
className: styles$
|
|
1011
|
+
className: styles$6.activeScreenBorder,
|
|
1107
1012
|
style: borderPrimaryColorStyle
|
|
1108
1013
|
}) : null)), /*#__PURE__*/React__default["default"].createElement("button", {
|
|
1109
1014
|
type: "button",
|
|
1110
|
-
className: styles$
|
|
1015
|
+
className: styles$6.screenButton,
|
|
1111
1016
|
onClick: function onClick() {
|
|
1112
1017
|
if (onClickItem !== null) {
|
|
1113
1018
|
onClickItem(item);
|
|
@@ -1124,10 +1029,12 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
|
|
|
1124
1029
|
}))))));
|
|
1125
1030
|
};
|
|
1126
1031
|
|
|
1127
|
-
ViewerMenuPreview.propTypes = propTypes$
|
|
1128
|
-
ViewerMenuPreview.defaultProps = defaultProps$
|
|
1032
|
+
ViewerMenuPreview.propTypes = propTypes$a;
|
|
1033
|
+
ViewerMenuPreview.defaultProps = defaultProps$a;
|
|
1129
1034
|
|
|
1130
|
-
var
|
|
1035
|
+
var styles$5 = {"container":"micromag-viewer-container","navButton":"micromag-viewer-navButton","menuPreview":"micromag-viewer-menuPreview","menuPreviewContainer":"micromag-viewer-menuPreviewContainer","screen":"micromag-viewer-screen","screenInner":"micromag-viewer-screenInner","content":"micromag-viewer-content","previous":"micromag-viewer-previous","next":"micromag-viewer-next","menuDotsContainer":"micromag-viewer-menuDotsContainer","menuDots":"micromag-viewer-menuDots","current":"micromag-viewer-current","handTap":"micromag-viewer-handTap","landscape":"micromag-viewer-landscape","visible":"micromag-viewer-visible","withSiblings":"micromag-viewer-withSiblings","playbackControlsContainer":"micromag-viewer-playbackControlsContainer","playbackControls":"micromag-viewer-playbackControls","isCollapsed":"micromag-viewer-isCollapsed","webView":"micromag-viewer-webView","hideMenu":"micromag-viewer-hideMenu","ready":"micromag-viewer-ready","hasInteracted":"micromag-viewer-hasInteracted"};
|
|
1036
|
+
|
|
1037
|
+
var propTypes$9 = {
|
|
1131
1038
|
story: core$1.PropTypes.story.isRequired,
|
|
1132
1039
|
currentScreenIndex: PropTypes__default["default"].number,
|
|
1133
1040
|
opened: PropTypes__default["default"].bool,
|
|
@@ -1153,7 +1060,7 @@ var propTypes$6 = {
|
|
|
1153
1060
|
|
|
1154
1061
|
})
|
|
1155
1062
|
};
|
|
1156
|
-
var defaultProps$
|
|
1063
|
+
var defaultProps$9 = {
|
|
1157
1064
|
currentScreenIndex: 0,
|
|
1158
1065
|
opened: false,
|
|
1159
1066
|
toggleFullscreen: null,
|
|
@@ -1275,29 +1182,26 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1275
1182
|
});
|
|
1276
1183
|
}, [opened]);
|
|
1277
1184
|
|
|
1278
|
-
var
|
|
1279
|
-
menuPreviewContainerRef =
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
var _ref4 = menuPreviewContainerRect || {},
|
|
1283
|
-
_ref4$height = _ref4.height,
|
|
1284
|
-
menuPreviewContainerHeight = _ref4$height === void 0 ? 0 : _ref4$height;
|
|
1185
|
+
var _useDimensionObserver = hooks.useDimensionObserver(),
|
|
1186
|
+
menuPreviewContainerRef = _useDimensionObserver.ref,
|
|
1187
|
+
_useDimensionObserver2 = _useDimensionObserver.height,
|
|
1188
|
+
menuPreviewContainerHeight = _useDimensionObserver2 === void 0 ? 0 : _useDimensionObserver2;
|
|
1285
1189
|
|
|
1286
1190
|
var menuPreviewStyle = {
|
|
1287
1191
|
transform: menuY.to(function (y) {
|
|
1288
1192
|
return "translateY(".concat(y * menuPreviewContainerHeight, "px)");
|
|
1289
1193
|
})
|
|
1290
1194
|
};
|
|
1291
|
-
var menuDragBind = react.useDrag(function (
|
|
1292
|
-
var
|
|
1293
|
-
my =
|
|
1294
|
-
first =
|
|
1295
|
-
last =
|
|
1296
|
-
|
|
1297
|
-
dy =
|
|
1298
|
-
cancel =
|
|
1299
|
-
canceled =
|
|
1300
|
-
tap =
|
|
1195
|
+
var menuDragBind = react.useDrag(function (_ref4) {
|
|
1196
|
+
var _ref4$movement = _slicedToArray__default["default"](_ref4.movement, 2),
|
|
1197
|
+
my = _ref4$movement[1],
|
|
1198
|
+
first = _ref4.first,
|
|
1199
|
+
last = _ref4.last,
|
|
1200
|
+
_ref4$direction = _slicedToArray__default["default"](_ref4.direction, 2),
|
|
1201
|
+
dy = _ref4$direction[1],
|
|
1202
|
+
cancel = _ref4.cancel,
|
|
1203
|
+
canceled = _ref4.canceled,
|
|
1204
|
+
tap = _ref4.tap;
|
|
1301
1205
|
|
|
1302
1206
|
if (canceled || tap) {
|
|
1303
1207
|
return;
|
|
@@ -1348,8 +1252,8 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1348
1252
|
customOnClickItem(item);
|
|
1349
1253
|
}
|
|
1350
1254
|
|
|
1351
|
-
var index = items.findIndex(function (
|
|
1352
|
-
var id =
|
|
1255
|
+
var index = items.findIndex(function (_ref5) {
|
|
1256
|
+
var id = _ref5.id;
|
|
1353
1257
|
return id === screenId;
|
|
1354
1258
|
});
|
|
1355
1259
|
trackScreenEvent('viewer_menu', 'click_screen_change', "Screen ".concat(index + 1));
|
|
@@ -1366,12 +1270,12 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1366
1270
|
return trackScreenEvent('viewer_menu', 'click_share', type);
|
|
1367
1271
|
}, [trackScreenEvent]);
|
|
1368
1272
|
|
|
1369
|
-
var
|
|
1370
|
-
|
|
1371
|
-
menuTheme =
|
|
1273
|
+
var _ref6 = viewerTheme || {},
|
|
1274
|
+
_ref6$menuTheme = _ref6.menuTheme,
|
|
1275
|
+
menuTheme = _ref6$menuTheme === void 0 ? null : _ref6$menuTheme;
|
|
1372
1276
|
|
|
1373
1277
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
1374
|
-
className: styles$
|
|
1278
|
+
className: styles$5.menuDotsContainer,
|
|
1375
1279
|
ref: refDots,
|
|
1376
1280
|
style: {
|
|
1377
1281
|
width: menuWidth
|
|
@@ -1386,16 +1290,16 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1386
1290
|
withItemClick: withDotItemClick,
|
|
1387
1291
|
withoutScreensMenu: withoutScreensMenu,
|
|
1388
1292
|
onClose: onClickCloseViewer,
|
|
1389
|
-
className: styles$
|
|
1293
|
+
className: styles$5.menuDots
|
|
1390
1294
|
}))), /*#__PURE__*/React__default["default"].createElement(web.animated.div, {
|
|
1391
|
-
className: styles$
|
|
1295
|
+
className: styles$5.menuPreviewContainer,
|
|
1392
1296
|
style: menuPreviewStyle,
|
|
1393
1297
|
ref: menuPreviewContainerRef
|
|
1394
1298
|
}, /*#__PURE__*/React__default["default"].createElement(ViewerMenuPreview, {
|
|
1395
1299
|
viewerTheme: viewerTheme,
|
|
1396
1300
|
title: title,
|
|
1397
1301
|
shareUrl: shareUrl,
|
|
1398
|
-
className: styles$
|
|
1302
|
+
className: styles$5.menuPreview,
|
|
1399
1303
|
screenSize: screenSize,
|
|
1400
1304
|
menuWidth: menuWidth,
|
|
1401
1305
|
focusable: opened,
|
|
@@ -1409,34 +1313,26 @@ var ViewerMenu = function ViewerMenu(_ref) {
|
|
|
1409
1313
|
})));
|
|
1410
1314
|
};
|
|
1411
1315
|
|
|
1412
|
-
ViewerMenu.propTypes = propTypes$
|
|
1413
|
-
ViewerMenu.defaultProps = defaultProps$
|
|
1316
|
+
ViewerMenu.propTypes = propTypes$9;
|
|
1317
|
+
ViewerMenu.defaultProps = defaultProps$9;
|
|
1414
1318
|
|
|
1415
|
-
var styles$
|
|
1319
|
+
var styles$4 = {"container":"micromag-viewer-screen-container","current":"micromag-viewer-screen-current"};
|
|
1416
1320
|
|
|
1417
|
-
var propTypes$
|
|
1321
|
+
var propTypes$8 = {
|
|
1418
1322
|
screen: core$1.PropTypes.screenComponent,
|
|
1419
1323
|
renderContext: core$1.PropTypes.renderContext,
|
|
1420
1324
|
screenState: PropTypes__default["default"].string,
|
|
1421
1325
|
current: PropTypes__default["default"].bool,
|
|
1422
1326
|
active: PropTypes__default["default"].bool,
|
|
1423
|
-
|
|
1424
|
-
onNext: PropTypes__default["default"].func,
|
|
1425
|
-
enableInteraction: PropTypes__default["default"].func,
|
|
1426
|
-
disableInteraction: PropTypes__default["default"].func,
|
|
1427
|
-
getMediaRef: PropTypes__default["default"].func
|
|
1327
|
+
mediaRef: PropTypes__default["default"].func
|
|
1428
1328
|
};
|
|
1429
|
-
var defaultProps$
|
|
1329
|
+
var defaultProps$8 = {
|
|
1430
1330
|
screen: null,
|
|
1431
1331
|
renderContext: null,
|
|
1432
1332
|
screenState: null,
|
|
1433
1333
|
current: false,
|
|
1434
1334
|
active: true,
|
|
1435
|
-
|
|
1436
|
-
onNext: null,
|
|
1437
|
-
enableInteraction: null,
|
|
1438
|
-
disableInteraction: null,
|
|
1439
|
-
getMediaRef: null
|
|
1335
|
+
mediaRef: null
|
|
1440
1336
|
};
|
|
1441
1337
|
|
|
1442
1338
|
var ViewerScreen = function ViewerScreen(_ref) {
|
|
@@ -1447,13 +1343,9 @@ var ViewerScreen = function ViewerScreen(_ref) {
|
|
|
1447
1343
|
screenState = _ref.screenState,
|
|
1448
1344
|
active = _ref.active,
|
|
1449
1345
|
current = _ref.current,
|
|
1450
|
-
|
|
1451
|
-
onNext = _ref.onNext,
|
|
1452
|
-
enableInteraction = _ref.enableInteraction,
|
|
1453
|
-
disableInteraction = _ref.disableInteraction,
|
|
1454
|
-
getMediaRef = _ref.getMediaRef;
|
|
1346
|
+
mediaRef = _ref.mediaRef;
|
|
1455
1347
|
return screen !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1456
|
-
className: classNames__default["default"]([styles$
|
|
1348
|
+
className: classNames__default["default"]([styles$4.container, (_ref2 = {}, _defineProperty__default["default"](_ref2, styles$4.active, active), _defineProperty__default["default"](_ref2, styles$4.current, current), _ref2)]),
|
|
1457
1349
|
"aria-hidden": current ? null : 'true'
|
|
1458
1350
|
}, /*#__PURE__*/React__default["default"].createElement(components.Screen, {
|
|
1459
1351
|
screen: screen,
|
|
@@ -1461,24 +1353,20 @@ var ViewerScreen = function ViewerScreen(_ref) {
|
|
|
1461
1353
|
screenState: screenState,
|
|
1462
1354
|
active: active,
|
|
1463
1355
|
current: current,
|
|
1464
|
-
|
|
1465
|
-
onNext: onNext,
|
|
1466
|
-
enableInteraction: enableInteraction,
|
|
1467
|
-
disableInteraction: disableInteraction,
|
|
1468
|
-
getMediaRef: getMediaRef
|
|
1356
|
+
mediaRef: mediaRef
|
|
1469
1357
|
})) : null;
|
|
1470
1358
|
};
|
|
1471
1359
|
|
|
1472
|
-
ViewerScreen.propTypes = propTypes$
|
|
1473
|
-
ViewerScreen.defaultProps = defaultProps$
|
|
1360
|
+
ViewerScreen.propTypes = propTypes$8;
|
|
1361
|
+
ViewerScreen.defaultProps = defaultProps$8;
|
|
1474
1362
|
|
|
1475
|
-
var styles = {"container":"micromag-viewer-partials-hand-tap-container","circle":"micromag-viewer-partials-hand-tap-circle","pulse":"micromag-viewer-partials-hand-tap-pulse","hand":"micromag-viewer-partials-hand-tap-hand","panY":"micromag-viewer-partials-hand-tap-panY","inner":"micromag-viewer-partials-hand-tap-inner","shadowFade":"micromag-viewer-partials-hand-tap-shadowFade"};
|
|
1363
|
+
var styles$3 = {"container":"micromag-viewer-partials-hand-tap-container","circle":"micromag-viewer-partials-hand-tap-circle","pulse":"micromag-viewer-partials-hand-tap-pulse","hand":"micromag-viewer-partials-hand-tap-hand","panY":"micromag-viewer-partials-hand-tap-panY","inner":"micromag-viewer-partials-hand-tap-inner","shadowFade":"micromag-viewer-partials-hand-tap-shadowFade"};
|
|
1476
1364
|
|
|
1477
|
-
var propTypes$
|
|
1365
|
+
var propTypes$7 = {
|
|
1478
1366
|
color: PropTypes__default["default"].string,
|
|
1479
1367
|
className: PropTypes__default["default"].string
|
|
1480
1368
|
};
|
|
1481
|
-
var defaultProps$
|
|
1369
|
+
var defaultProps$7 = {
|
|
1482
1370
|
color: 'currentColor',
|
|
1483
1371
|
className: null
|
|
1484
1372
|
};
|
|
@@ -1498,31 +1386,463 @@ var HandIcon = function HandIcon(_ref) {
|
|
|
1498
1386
|
}));
|
|
1499
1387
|
};
|
|
1500
1388
|
|
|
1501
|
-
HandIcon.propTypes = propTypes$
|
|
1502
|
-
HandIcon.defaultProps = defaultProps$
|
|
1389
|
+
HandIcon.propTypes = propTypes$7;
|
|
1390
|
+
HandIcon.defaultProps = defaultProps$7;
|
|
1503
1391
|
|
|
1504
|
-
var propTypes$
|
|
1392
|
+
var propTypes$6 = {
|
|
1505
1393
|
className: PropTypes__default["default"].string
|
|
1506
1394
|
};
|
|
1507
|
-
var defaultProps$
|
|
1395
|
+
var defaultProps$6 = {
|
|
1508
1396
|
className: null
|
|
1509
1397
|
};
|
|
1510
1398
|
|
|
1511
1399
|
var HandTap = function HandTap(_ref) {
|
|
1512
1400
|
var className = _ref.className;
|
|
1513
1401
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1514
|
-
className: classNames__default["default"]([styles.container, _defineProperty__default["default"]({}, className, className !== null)])
|
|
1402
|
+
className: classNames__default["default"]([styles$3.container, _defineProperty__default["default"]({}, className, className !== null)])
|
|
1515
1403
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1516
|
-
className: styles.inner
|
|
1404
|
+
className: styles$3.inner
|
|
1517
1405
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1518
|
-
className: styles.circle
|
|
1406
|
+
className: styles$3.circle
|
|
1519
1407
|
}), /*#__PURE__*/React__default["default"].createElement(HandIcon, {
|
|
1520
|
-
className: styles.hand
|
|
1408
|
+
className: styles$3.hand
|
|
1409
|
+
})));
|
|
1410
|
+
};
|
|
1411
|
+
|
|
1412
|
+
HandTap.propTypes = propTypes$6;
|
|
1413
|
+
HandTap.defaultProps = defaultProps$6;
|
|
1414
|
+
|
|
1415
|
+
var styles$2 = {"track":"micromag-viewer-partials-seek-bar-track","progress":"micromag-viewer-partials-seek-bar-progress","inner":"micromag-viewer-partials-seek-bar-inner","progressBar":"micromag-viewer-partials-seek-bar-progressBar","playHead":"micromag-viewer-partials-seek-bar-playHead","withSeekHead":"micromag-viewer-partials-seek-bar-withSeekHead","time":"micromag-viewer-partials-seek-bar-time"};
|
|
1416
|
+
|
|
1417
|
+
var propTypes$5 = {
|
|
1418
|
+
media: PropTypes__default["default"].node,
|
|
1419
|
+
currentTime: PropTypes__default["default"].number,
|
|
1420
|
+
duration: PropTypes__default["default"].number,
|
|
1421
|
+
playing: PropTypes__default["default"].bool,
|
|
1422
|
+
backgroundColor: core$1.PropTypes.color,
|
|
1423
|
+
progressColor: core$1.PropTypes.color,
|
|
1424
|
+
onSeek: PropTypes__default["default"].func,
|
|
1425
|
+
onSeekStart: PropTypes__default["default"].func,
|
|
1426
|
+
onSeekEnd: PropTypes__default["default"].func,
|
|
1427
|
+
focusable: PropTypes__default["default"].bool,
|
|
1428
|
+
className: PropTypes__default["default"].string,
|
|
1429
|
+
withSeekHead: PropTypes__default["default"].bool
|
|
1430
|
+
};
|
|
1431
|
+
var defaultProps$5 = {
|
|
1432
|
+
media: null,
|
|
1433
|
+
currentTime: null,
|
|
1434
|
+
duration: null,
|
|
1435
|
+
playing: false,
|
|
1436
|
+
backgroundColor: null,
|
|
1437
|
+
progressColor: null,
|
|
1438
|
+
onSeek: null,
|
|
1439
|
+
onSeekStart: null,
|
|
1440
|
+
onSeekEnd: null,
|
|
1441
|
+
focusable: true,
|
|
1442
|
+
className: null,
|
|
1443
|
+
withSeekHead: true
|
|
1444
|
+
};
|
|
1445
|
+
|
|
1446
|
+
var SeekBar = function SeekBar(_ref) {
|
|
1447
|
+
var _ref3;
|
|
1448
|
+
|
|
1449
|
+
var media = _ref.media,
|
|
1450
|
+
currentTime = _ref.currentTime,
|
|
1451
|
+
duration = _ref.duration,
|
|
1452
|
+
playing = _ref.playing,
|
|
1453
|
+
backgroundColor = _ref.backgroundColor,
|
|
1454
|
+
progressColor = _ref.progressColor,
|
|
1455
|
+
onSeek = _ref.onSeek,
|
|
1456
|
+
onSeekStart = _ref.onSeekStart,
|
|
1457
|
+
onSeekEnd = _ref.onSeekEnd,
|
|
1458
|
+
focusable = _ref.focusable,
|
|
1459
|
+
className = _ref.className,
|
|
1460
|
+
withSeekHead = _ref.withSeekHead;
|
|
1461
|
+
var intl = reactIntl.useIntl();
|
|
1462
|
+
|
|
1463
|
+
var _useSpring = core.useSpring(function () {
|
|
1464
|
+
return {
|
|
1465
|
+
x: currentTime !== null && duration !== null ? currentTime / duration : 0,
|
|
1466
|
+
config: {
|
|
1467
|
+
duration: 0
|
|
1468
|
+
}
|
|
1469
|
+
};
|
|
1470
|
+
}),
|
|
1471
|
+
_useSpring2 = _slicedToArray__default["default"](_useSpring, 2),
|
|
1472
|
+
springProps = _useSpring2[0],
|
|
1473
|
+
setSpringProps = _useSpring2[1];
|
|
1474
|
+
|
|
1475
|
+
var lastMediaRef = React.useRef(media);
|
|
1476
|
+
var mediaChanged = lastMediaRef.current !== media;
|
|
1477
|
+
lastMediaRef.current = media;
|
|
1478
|
+
|
|
1479
|
+
var _useDimensionObserver = hooks.useDimensionObserver(),
|
|
1480
|
+
elRef = _useDimensionObserver.ref,
|
|
1481
|
+
_useDimensionObserver2 = _useDimensionObserver.width,
|
|
1482
|
+
elWidth = _useDimensionObserver2 === void 0 ? null : _useDimensionObserver2;
|
|
1483
|
+
|
|
1484
|
+
React.useEffect(function () {
|
|
1485
|
+
if (currentTime === null || duration === null) {
|
|
1486
|
+
return;
|
|
1487
|
+
}
|
|
1488
|
+
|
|
1489
|
+
var progress = duration > 0 ? currentTime / duration : 0;
|
|
1490
|
+
setSpringProps.start({
|
|
1491
|
+
reset: true,
|
|
1492
|
+
immediate: !playing || mediaChanged,
|
|
1493
|
+
from: {
|
|
1494
|
+
x: progress
|
|
1495
|
+
},
|
|
1496
|
+
to: {
|
|
1497
|
+
x: playing ? 1 : progress
|
|
1498
|
+
},
|
|
1499
|
+
config: {
|
|
1500
|
+
duration: (duration - currentTime) * 1000
|
|
1501
|
+
}
|
|
1502
|
+
});
|
|
1503
|
+
}, [playing, duration, currentTime, mediaChanged, setSpringProps]); // User events
|
|
1504
|
+
|
|
1505
|
+
var seekFromX = React.useCallback(function (x) {
|
|
1506
|
+
var elX = elRef.current.getBoundingClientRect().left;
|
|
1507
|
+
var progress = Math.max(0, Math.min(1, (x - elX) / elWidth));
|
|
1508
|
+
setSpringProps.start({
|
|
1509
|
+
immediate: true,
|
|
1510
|
+
to: {
|
|
1511
|
+
x: progress
|
|
1512
|
+
}
|
|
1513
|
+
});
|
|
1514
|
+
|
|
1515
|
+
if (onSeek !== null && duration !== null) {
|
|
1516
|
+
onSeek(progress * duration);
|
|
1517
|
+
}
|
|
1518
|
+
}, [duration, playing, onSeek]);
|
|
1519
|
+
var bind = react.useGesture({
|
|
1520
|
+
onDrag: function onDrag(_ref2) {
|
|
1521
|
+
var _ref2$xy = _slicedToArray__default["default"](_ref2.xy, 1),
|
|
1522
|
+
x = _ref2$xy[0],
|
|
1523
|
+
elapsedTime = _ref2.elapsedTime,
|
|
1524
|
+
active = _ref2.active;
|
|
1525
|
+
|
|
1526
|
+
if (!active && elapsedTime > 300) {
|
|
1527
|
+
return;
|
|
1528
|
+
}
|
|
1529
|
+
|
|
1530
|
+
seekFromX(x);
|
|
1531
|
+
},
|
|
1532
|
+
onPointerDown: function onPointerDown() {
|
|
1533
|
+
if (onSeekStart !== null) {
|
|
1534
|
+
onSeekStart();
|
|
1535
|
+
}
|
|
1536
|
+
},
|
|
1537
|
+
onPointerUp: function onPointerUp() {
|
|
1538
|
+
if (onSeekEnd !== null) {
|
|
1539
|
+
onSeekEnd();
|
|
1540
|
+
}
|
|
1541
|
+
}
|
|
1542
|
+
}, {
|
|
1543
|
+
drag: {
|
|
1544
|
+
axis: 'x',
|
|
1545
|
+
filterTaps: true
|
|
1546
|
+
}
|
|
1547
|
+
});
|
|
1548
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1549
|
+
className: classNames__default["default"]([styles$2.container, (_ref3 = {}, _defineProperty__default["default"](_ref3, className, className !== null), _defineProperty__default["default"](_ref3, styles$2.withSeekHead, withSeekHead), _ref3)])
|
|
1550
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1551
|
+
className: styles$2.inner
|
|
1552
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1553
|
+
className: styles$2.progressBar,
|
|
1554
|
+
style: {
|
|
1555
|
+
backgroundColor: backgroundColor
|
|
1556
|
+
}
|
|
1557
|
+
}, /*#__PURE__*/React__default["default"].createElement(web.animated.div, {
|
|
1558
|
+
className: styles$2.playHead,
|
|
1559
|
+
style: {
|
|
1560
|
+
left: springProps.x.to(function (x) {
|
|
1561
|
+
return "".concat(x * 100, "%");
|
|
1562
|
+
}),
|
|
1563
|
+
backgroundColor: progressColor
|
|
1564
|
+
}
|
|
1565
|
+
}), /*#__PURE__*/React__default["default"].createElement(web.animated.div, {
|
|
1566
|
+
className: styles$2.progress,
|
|
1567
|
+
style: {
|
|
1568
|
+
transform: springProps.x.to(function (x) {
|
|
1569
|
+
return "scaleX(".concat(x, ")");
|
|
1570
|
+
}),
|
|
1571
|
+
backgroundColor: progressColor
|
|
1572
|
+
}
|
|
1573
|
+
})), /*#__PURE__*/React__default["default"].createElement("button", Object.assign({
|
|
1574
|
+
ref: elRef
|
|
1575
|
+
}, bind(), {
|
|
1576
|
+
type: "button",
|
|
1577
|
+
className: styles$2.track,
|
|
1578
|
+
title: intl.formatMessage({
|
|
1579
|
+
id: "G1Gyjn",
|
|
1580
|
+
defaultMessage: [{
|
|
1581
|
+
"type": 0,
|
|
1582
|
+
"value": "Seek"
|
|
1583
|
+
}]
|
|
1584
|
+
}),
|
|
1585
|
+
"aria-label": intl.formatMessage({
|
|
1586
|
+
id: "G1Gyjn",
|
|
1587
|
+
defaultMessage: [{
|
|
1588
|
+
"type": 0,
|
|
1589
|
+
"value": "Seek"
|
|
1590
|
+
}]
|
|
1591
|
+
}),
|
|
1592
|
+
tabIndex: focusable ? '0' : '-1'
|
|
1593
|
+
}))));
|
|
1594
|
+
};
|
|
1595
|
+
|
|
1596
|
+
SeekBar.propTypes = propTypes$5;
|
|
1597
|
+
SeekBar.defaultProps = defaultProps$5;
|
|
1598
|
+
|
|
1599
|
+
var styles$1 = {"muteButton":"micromag-viewer-partials-playback-controls-muteButton","playPauseButton":"micromag-viewer-partials-playback-controls-playPauseButton","container":"micromag-viewer-partials-playback-controls-container","isCollapsed":"micromag-viewer-partials-playback-controls-isCollapsed","icon":"micromag-viewer-partials-playback-controls-icon","withPlayPause":"micromag-viewer-partials-playback-controls-withPlayPause","isMuted":"micromag-viewer-partials-playback-controls-isMuted","withMute":"micromag-viewer-partials-playback-controls-withMute","seekBar":"micromag-viewer-partials-playback-controls-seekBar","withSeekBar":"micromag-viewer-partials-playback-controls-withSeekBar"};
|
|
1600
|
+
|
|
1601
|
+
var propTypes$4 = {
|
|
1602
|
+
className: PropTypes__default["default"].string
|
|
1603
|
+
};
|
|
1604
|
+
var defaultProps$4 = {
|
|
1605
|
+
className: null
|
|
1606
|
+
};
|
|
1607
|
+
|
|
1608
|
+
function PlaybackControls(_ref) {
|
|
1609
|
+
var _ref4;
|
|
1610
|
+
|
|
1611
|
+
var className = _ref.className;
|
|
1612
|
+
var intl = reactIntl.useIntl();
|
|
1613
|
+
|
|
1614
|
+
var _usePlaybackContext = contexts.usePlaybackContext(),
|
|
1615
|
+
_usePlaybackContext$m = _usePlaybackContext.media,
|
|
1616
|
+
mediaElement = _usePlaybackContext$m === void 0 ? null : _usePlaybackContext$m,
|
|
1617
|
+
_usePlaybackContext$p = _usePlaybackContext.playing,
|
|
1618
|
+
playing = _usePlaybackContext$p === void 0 ? false : _usePlaybackContext$p,
|
|
1619
|
+
_usePlaybackContext$m2 = _usePlaybackContext.muted,
|
|
1620
|
+
muted = _usePlaybackContext$m2 === void 0 ? true : _usePlaybackContext$m2,
|
|
1621
|
+
setPlaying = _usePlaybackContext.setPlaying,
|
|
1622
|
+
setMuted = _usePlaybackContext.setMuted,
|
|
1623
|
+
controls = _usePlaybackContext.controls,
|
|
1624
|
+
controlsVisible = _usePlaybackContext.controlsVisible,
|
|
1625
|
+
controlsTheme = _usePlaybackContext.controlsTheme,
|
|
1626
|
+
showControls = _usePlaybackContext.showControls;
|
|
1627
|
+
|
|
1628
|
+
var duration = hooks.useMediaDuration(mediaElement);
|
|
1629
|
+
var currentTime = hooks.useMediaCurrentTime(mediaElement, {
|
|
1630
|
+
disabled: !playing,
|
|
1631
|
+
updateInterval: 100
|
|
1632
|
+
});
|
|
1633
|
+
|
|
1634
|
+
var _useState = React.useState(null),
|
|
1635
|
+
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
1636
|
+
customControlsTheme = _useState2[0],
|
|
1637
|
+
setCustomControlsTheme = _useState2[1];
|
|
1638
|
+
|
|
1639
|
+
var _useState3 = React.useState(false),
|
|
1640
|
+
_useState4 = _slicedToArray__default["default"](_useState3, 2),
|
|
1641
|
+
wasPlaying = _useState4[0],
|
|
1642
|
+
setWasPlaying = _useState4[1];
|
|
1643
|
+
|
|
1644
|
+
React.useEffect(function () {
|
|
1645
|
+
var _ref2 = controlsTheme || {},
|
|
1646
|
+
color = _ref2.color,
|
|
1647
|
+
progressColor = _ref2.progressColor,
|
|
1648
|
+
seekBarOnly = _ref2.seekBarOnly;
|
|
1649
|
+
|
|
1650
|
+
setCustomControlsTheme({
|
|
1651
|
+
color: utils.getColorAsString(color),
|
|
1652
|
+
progressColor: utils.getColorAsString(progressColor),
|
|
1653
|
+
seekBarOnly: seekBarOnly
|
|
1654
|
+
});
|
|
1655
|
+
}, [controlsTheme, setCustomControlsTheme]);
|
|
1656
|
+
var onPlay = React.useCallback(function () {
|
|
1657
|
+
setPlaying(true);
|
|
1658
|
+
|
|
1659
|
+
if (!controlsVisible) {
|
|
1660
|
+
showControls();
|
|
1661
|
+
}
|
|
1662
|
+
}, [setPlaying, controlsVisible, showControls]);
|
|
1663
|
+
var onPause = React.useCallback(function () {
|
|
1664
|
+
setPlaying(false);
|
|
1665
|
+
|
|
1666
|
+
if (!controlsVisible) {
|
|
1667
|
+
showControls();
|
|
1668
|
+
}
|
|
1669
|
+
}, [setPlaying, controlsVisible, showControls]);
|
|
1670
|
+
var onMute = React.useCallback(function () {
|
|
1671
|
+
setMuted(true);
|
|
1672
|
+
|
|
1673
|
+
if (!controlsVisible && controls) {
|
|
1674
|
+
showControls();
|
|
1675
|
+
}
|
|
1676
|
+
}, [setMuted, controlsVisible, showControls]);
|
|
1677
|
+
var onUnmute = React.useCallback(function () {
|
|
1678
|
+
setMuted(false);
|
|
1679
|
+
|
|
1680
|
+
if (!controlsVisible && controls) {
|
|
1681
|
+
showControls();
|
|
1682
|
+
}
|
|
1683
|
+
}, [setMuted, controlsVisible, showControls]);
|
|
1684
|
+
var onSeekStart = React.useCallback(function () {
|
|
1685
|
+
setWasPlaying(playing);
|
|
1686
|
+
if (playing) setPlaying(false);
|
|
1687
|
+
}, [playing, setWasPlaying]);
|
|
1688
|
+
var onSeek = React.useCallback(function (time) {
|
|
1689
|
+
mediaElement.currentTime = time;
|
|
1690
|
+
showControls();
|
|
1691
|
+
}, [mediaElement, setWasPlaying, playing, setPlaying, showControls]);
|
|
1692
|
+
var onSeekEnd = React.useCallback(function () {
|
|
1693
|
+
if (wasPlaying) setPlaying(true);
|
|
1694
|
+
}, [playing, setPlaying, wasPlaying]);
|
|
1695
|
+
|
|
1696
|
+
var _ref3 = customControlsTheme || {},
|
|
1697
|
+
color = _ref3.color,
|
|
1698
|
+
progressColor = _ref3.progressColor,
|
|
1699
|
+
seekBarOnly = _ref3.seekBarOnly;
|
|
1700
|
+
|
|
1701
|
+
var isCollapsed = controls && !controlsVisible && playing || !controls && mediaElement !== null;
|
|
1702
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1703
|
+
className: classNames__default["default"]([styles$1.container, (_ref4 = {}, _defineProperty__default["default"](_ref4, className, className !== null), _defineProperty__default["default"](_ref4, styles$1.withPlayPause, controls && !seekBarOnly), _defineProperty__default["default"](_ref4, styles$1.withMute, mediaElement !== null || controls), _defineProperty__default["default"](_ref4, styles$1.withSeekBar, controls), _defineProperty__default["default"](_ref4, styles$1.isCollapsed, isCollapsed), _ref4)])
|
|
1704
|
+
}, /*#__PURE__*/React__default["default"].createElement("button", {
|
|
1705
|
+
type: "button",
|
|
1706
|
+
className: styles$1.playPauseButton,
|
|
1707
|
+
style: {
|
|
1708
|
+
color: color
|
|
1709
|
+
},
|
|
1710
|
+
onClick: playing ? onPause : onPlay,
|
|
1711
|
+
title: intl.formatMessage({
|
|
1712
|
+
id: "ahSpiH",
|
|
1713
|
+
defaultMessage: [{
|
|
1714
|
+
"type": 0,
|
|
1715
|
+
"value": "Play"
|
|
1716
|
+
}]
|
|
1717
|
+
}),
|
|
1718
|
+
"aria-label": intl.formatMessage({
|
|
1719
|
+
id: "ahSpiH",
|
|
1720
|
+
defaultMessage: [{
|
|
1721
|
+
"type": 0,
|
|
1722
|
+
"value": "Play"
|
|
1723
|
+
}]
|
|
1724
|
+
}),
|
|
1725
|
+
tabIndex: controlsVisible ? '0' : '-1'
|
|
1726
|
+
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
1727
|
+
className: styles$1.icon,
|
|
1728
|
+
icon: playing ? faPause.faPause : faPlay.faPlay
|
|
1729
|
+
})), /*#__PURE__*/React__default["default"].createElement(SeekBar, {
|
|
1730
|
+
className: styles$1.seekBar,
|
|
1731
|
+
duration: duration,
|
|
1732
|
+
currentTime: currentTime,
|
|
1733
|
+
playing: playing,
|
|
1734
|
+
media: mediaElement,
|
|
1735
|
+
onSeek: onSeek,
|
|
1736
|
+
onSeekStart: onSeekStart,
|
|
1737
|
+
onSeekEnd: onSeekEnd,
|
|
1738
|
+
focusable: playing,
|
|
1739
|
+
isCollapsed: isCollapsed,
|
|
1740
|
+
withSeekHead: controlsVisible && !seekBarOnly,
|
|
1741
|
+
backgroundColor: color,
|
|
1742
|
+
progressColor: progressColor
|
|
1743
|
+
}), /*#__PURE__*/React__default["default"].createElement("button", {
|
|
1744
|
+
type: "button",
|
|
1745
|
+
className: classNames__default["default"]([styles$1.muteButton, _defineProperty__default["default"]({}, styles$1.isMuted, muted)]),
|
|
1746
|
+
style: {
|
|
1747
|
+
color: color
|
|
1748
|
+
},
|
|
1749
|
+
onClick: muted ? onUnmute : onMute,
|
|
1750
|
+
title: intl.formatMessage({
|
|
1751
|
+
id: "vzg8Es",
|
|
1752
|
+
defaultMessage: [{
|
|
1753
|
+
"type": 0,
|
|
1754
|
+
"value": "Mute"
|
|
1755
|
+
}]
|
|
1756
|
+
}),
|
|
1757
|
+
"aria-label": intl.formatMessage({
|
|
1758
|
+
id: "vzg8Es",
|
|
1759
|
+
defaultMessage: [{
|
|
1760
|
+
"type": 0,
|
|
1761
|
+
"value": "Mute"
|
|
1762
|
+
}]
|
|
1763
|
+
}),
|
|
1764
|
+
tabIndex: controlsVisible ? '0' : '-1'
|
|
1765
|
+
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
1766
|
+
className: styles$1.icon,
|
|
1767
|
+
icon: faVolumeUp.faVolumeUp
|
|
1521
1768
|
})));
|
|
1769
|
+
}
|
|
1770
|
+
|
|
1771
|
+
PlaybackControls.propTypes = propTypes$4;
|
|
1772
|
+
PlaybackControls.defaultProps = defaultProps$4;
|
|
1773
|
+
|
|
1774
|
+
var styles = {"container":"micromag-viewer-partials-web-view-container","opened":"micromag-viewer-partials-web-view-opened"};
|
|
1775
|
+
|
|
1776
|
+
var _excluded$2 = ["opened", "close", "open", "update", "url"];
|
|
1777
|
+
var propTypes$3 = {
|
|
1778
|
+
className: PropTypes__default["default"].string,
|
|
1779
|
+
style: PropTypes__default["default"].object
|
|
1780
|
+
};
|
|
1781
|
+
var defaultProps$3 = {
|
|
1782
|
+
className: null,
|
|
1783
|
+
style: null
|
|
1522
1784
|
};
|
|
1523
1785
|
|
|
1524
|
-
|
|
1525
|
-
|
|
1786
|
+
function WebViewContainer(_ref) {
|
|
1787
|
+
var _ref2;
|
|
1788
|
+
|
|
1789
|
+
var className = _ref.className,
|
|
1790
|
+
style = _ref.style;
|
|
1791
|
+
|
|
1792
|
+
var _useViewerWebView = contexts.useViewerWebView(),
|
|
1793
|
+
opened = _useViewerWebView.opened,
|
|
1794
|
+
close = _useViewerWebView.close;
|
|
1795
|
+
_useViewerWebView.open;
|
|
1796
|
+
_useViewerWebView.update;
|
|
1797
|
+
var _useViewerWebView$url = _useViewerWebView.url,
|
|
1798
|
+
url = _useViewerWebView$url === void 0 ? null : _useViewerWebView$url,
|
|
1799
|
+
webViewProps = _objectWithoutProperties__default["default"](_useViewerWebView, _excluded$2);
|
|
1800
|
+
|
|
1801
|
+
var _useViewerInteraction = contexts.useViewerInteraction(),
|
|
1802
|
+
disableInteraction = _useViewerInteraction.disableInteraction,
|
|
1803
|
+
enableInteraction = _useViewerInteraction.enableInteraction;
|
|
1804
|
+
|
|
1805
|
+
var _useState = React.useState(url),
|
|
1806
|
+
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
1807
|
+
currentUrl = _useState2[0],
|
|
1808
|
+
setCurrentUrl = _useState2[1];
|
|
1809
|
+
|
|
1810
|
+
React.useEffect(function () {
|
|
1811
|
+
if (url !== null) {
|
|
1812
|
+
setCurrentUrl(url);
|
|
1813
|
+
}
|
|
1814
|
+
}, [url, setCurrentUrl]);
|
|
1815
|
+
React.useEffect(function () {
|
|
1816
|
+
if (opened) {
|
|
1817
|
+
disableInteraction();
|
|
1818
|
+
} else {
|
|
1819
|
+
enableInteraction();
|
|
1820
|
+
}
|
|
1821
|
+
|
|
1822
|
+
return function () {
|
|
1823
|
+
enableInteraction();
|
|
1824
|
+
};
|
|
1825
|
+
}, [opened]);
|
|
1826
|
+
var onTransitionEnd = React.useCallback(function () {
|
|
1827
|
+
if (url === null) {
|
|
1828
|
+
setCurrentUrl(null);
|
|
1829
|
+
}
|
|
1830
|
+
}, [url]);
|
|
1831
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1832
|
+
className: classNames__default["default"]([styles.container, (_ref2 = {}, _defineProperty__default["default"](_ref2, styles.opened, opened), _defineProperty__default["default"](_ref2, className, className !== null), _ref2)]),
|
|
1833
|
+
style: style,
|
|
1834
|
+
onTransitionEnd: onTransitionEnd
|
|
1835
|
+
}, /*#__PURE__*/React__default["default"].createElement(WebView__default["default"], Object.assign({
|
|
1836
|
+
url: url || currentUrl
|
|
1837
|
+
}, webViewProps, {
|
|
1838
|
+
closeable: true,
|
|
1839
|
+
className: styles.webView,
|
|
1840
|
+
onClose: close
|
|
1841
|
+
})));
|
|
1842
|
+
}
|
|
1843
|
+
|
|
1844
|
+
WebViewContainer.propTypes = propTypes$3;
|
|
1845
|
+
WebViewContainer.defaultProps = defaultProps$3;
|
|
1526
1846
|
|
|
1527
1847
|
var propTypes$2 = {
|
|
1528
1848
|
story: core$1.PropTypes.story,
|
|
@@ -1601,7 +1921,7 @@ var defaultProps$2 = {
|
|
|
1601
1921
|
};
|
|
1602
1922
|
|
|
1603
1923
|
var Viewer = function Viewer(_ref) {
|
|
1604
|
-
var
|
|
1924
|
+
var _ref14;
|
|
1605
1925
|
|
|
1606
1926
|
var story = _ref.story,
|
|
1607
1927
|
basePath = _ref.basePath,
|
|
@@ -1613,7 +1933,6 @@ var Viewer = function Viewer(_ref) {
|
|
|
1613
1933
|
deviceScreens = _ref.deviceScreens,
|
|
1614
1934
|
renderContext = _ref.renderContext,
|
|
1615
1935
|
visitor = _ref.visitor,
|
|
1616
|
-
onScreenChange = _ref.onScreenChange,
|
|
1617
1936
|
tapNextScreenWidthPercent = _ref.tapNextScreenWidthPercent,
|
|
1618
1937
|
neighborScreensActive = _ref.neighborScreensActive,
|
|
1619
1938
|
neighborScreensMounted = _ref.neighborScreensMounted,
|
|
@@ -1631,6 +1950,7 @@ var Viewer = function Viewer(_ref) {
|
|
|
1631
1950
|
onCloseViewer = _ref.onClose,
|
|
1632
1951
|
onInteraction = _ref.onInteraction,
|
|
1633
1952
|
onEnd = _ref.onEnd,
|
|
1953
|
+
onScreenChange = _ref.onScreenChange,
|
|
1634
1954
|
onViewModeChange = _ref.onViewModeChange,
|
|
1635
1955
|
currentScreenMedia = _ref.currentScreenMedia,
|
|
1636
1956
|
screensMedias = _ref.screensMedias,
|
|
@@ -1678,6 +1998,14 @@ var Viewer = function Viewer(_ref) {
|
|
|
1678
1998
|
var isStatic = renderContext === 'static';
|
|
1679
1999
|
var isCapture = renderContext === 'capture';
|
|
1680
2000
|
var withoutScreensTransforms = isStatic || isCapture;
|
|
2001
|
+
|
|
2002
|
+
var _usePlaybackContext = contexts.usePlaybackContext(),
|
|
2003
|
+
playing = _usePlaybackContext.playing,
|
|
2004
|
+
_usePlaybackContext$c = _usePlaybackContext.controlsVisible,
|
|
2005
|
+
playbackcontrolsVisible = _usePlaybackContext$c === void 0 ? false : _usePlaybackContext$c,
|
|
2006
|
+
_usePlaybackContext$m = _usePlaybackContext.media,
|
|
2007
|
+
playbackMedia = _usePlaybackContext$m === void 0 ? null : _usePlaybackContext$m;
|
|
2008
|
+
|
|
1681
2009
|
var trackScreenView = hooks.useTrackScreenView();
|
|
1682
2010
|
var contentRef = React.useRef(null); // Get screen size
|
|
1683
2011
|
|
|
@@ -1708,10 +2036,11 @@ var Viewer = function Viewer(_ref) {
|
|
|
1708
2036
|
React.useEffect(function () {
|
|
1709
2037
|
if (ready && onViewModeChange !== null) {
|
|
1710
2038
|
onViewModeChange({
|
|
1711
|
-
landscape: landscape
|
|
2039
|
+
landscape: landscape,
|
|
2040
|
+
menuOverScreen: menuOverScreen
|
|
1712
2041
|
});
|
|
1713
2042
|
}
|
|
1714
|
-
}, [ready, landscape, onViewModeChange]);
|
|
2043
|
+
}, [ready, landscape, menuOverScreen, onViewModeChange]);
|
|
1715
2044
|
var screensMediasRef = React.useRef([]); // Screen index
|
|
1716
2045
|
|
|
1717
2046
|
var screenIndex = React.useMemo(function () {
|
|
@@ -1721,7 +2050,7 @@ var Viewer = function Viewer(_ref) {
|
|
|
1721
2050
|
}, [screenId, screens]);
|
|
1722
2051
|
|
|
1723
2052
|
if (currentScreenMedia !== null) {
|
|
1724
|
-
currentScreenMedia.current = screensMediasRef.current[screenIndex];
|
|
2053
|
+
currentScreenMedia.current = screensMediasRef.current[screenIndex] || null;
|
|
1725
2054
|
}
|
|
1726
2055
|
|
|
1727
2056
|
if (screensMedias !== null) {
|
|
@@ -1752,12 +2081,10 @@ var Viewer = function Viewer(_ref) {
|
|
|
1752
2081
|
|
|
1753
2082
|
var currentScreenRef = React.useRef(null);
|
|
1754
2083
|
var gotoPreviousScreen = React.useCallback(function () {
|
|
1755
|
-
changeIndex(Math.max(0, screenIndex - 1));
|
|
1756
|
-
currentScreenRef.current.focus();
|
|
2084
|
+
changeIndex(Math.max(0, screenIndex - 1)); // currentScreenRef.current.focus();
|
|
1757
2085
|
}, [changeIndex]);
|
|
1758
2086
|
var gotoNextScreen = React.useCallback(function () {
|
|
1759
|
-
changeIndex(Math.min(screens.length - 1, screenIndex + 1));
|
|
1760
|
-
currentScreenRef.current.focus();
|
|
2087
|
+
changeIndex(Math.min(screens.length - 1, screenIndex + 1)); // currentScreenRef.current.focus();
|
|
1761
2088
|
}, [changeIndex]);
|
|
1762
2089
|
var screensCount = screens.length;
|
|
1763
2090
|
|
|
@@ -1775,45 +2102,107 @@ var Viewer = function Viewer(_ref) {
|
|
|
1775
2102
|
setHasInteracted(true);
|
|
1776
2103
|
}
|
|
1777
2104
|
}, [onInteraction, hasInteracted, setHasInteracted]);
|
|
2105
|
+
var onScreenNavigate = React.useCallback(function (_ref6) {
|
|
2106
|
+
var index = _ref6.index,
|
|
2107
|
+
newIndex = _ref6.newIndex,
|
|
2108
|
+
end = _ref6.end,
|
|
2109
|
+
direction = _ref6.direction;
|
|
2110
|
+
|
|
2111
|
+
if (end && onEnd !== null) {
|
|
2112
|
+
onEnd();
|
|
2113
|
+
}
|
|
2114
|
+
|
|
2115
|
+
changeIndex(newIndex);
|
|
2116
|
+
eventsManager.emit('navigate', {
|
|
2117
|
+
newIndex: newIndex,
|
|
2118
|
+
index: index,
|
|
2119
|
+
direction: direction,
|
|
2120
|
+
end: end
|
|
2121
|
+
});
|
|
2122
|
+
|
|
2123
|
+
if (end) {
|
|
2124
|
+
eventsManager.emit('navigate_end');
|
|
2125
|
+
} else {
|
|
2126
|
+
eventsManager.emit("navigate_".concat(direction), newIndex);
|
|
2127
|
+
}
|
|
2128
|
+
}, [onEnd, changeIndex]);
|
|
1778
2129
|
|
|
1779
2130
|
var _useScreenInteraction = useScreenInteraction({
|
|
1780
2131
|
screens: screens,
|
|
1781
2132
|
screenIndex: screenIndex,
|
|
1782
2133
|
screenWidth: screenContainerWidth,
|
|
1783
|
-
|
|
2134
|
+
disableCurrentScreenNavigation: !isView,
|
|
1784
2135
|
clickOnSiblings: landscape && withLandscapeSiblingsScreens,
|
|
1785
2136
|
nextScreenWidthPercent: tapNextScreenWidthPercent,
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
onEnd: onEnd,
|
|
1789
|
-
onChangeScreen: changeIndex
|
|
2137
|
+
onInteract: onInteractionPrivate,
|
|
2138
|
+
onNavigate: onScreenNavigate
|
|
1790
2139
|
}),
|
|
1791
|
-
|
|
2140
|
+
interactWithScreen = _useScreenInteraction.interact,
|
|
1792
2141
|
currentScreenInteractionEnabled = _useScreenInteraction.currentScreenInteractionEnabled,
|
|
1793
2142
|
enableInteraction = _useScreenInteraction.enableInteraction,
|
|
1794
|
-
disableInteraction = _useScreenInteraction.disableInteraction;
|
|
1795
|
-
|
|
1796
|
-
|
|
1797
|
-
|
|
1798
|
-
|
|
2143
|
+
disableInteraction = _useScreenInteraction.disableInteraction; // Handle tap on screens
|
|
2144
|
+
|
|
2145
|
+
|
|
2146
|
+
var onDragScreen = React.useCallback(function (_ref7) {
|
|
2147
|
+
var _ref7$args = _slicedToArray__default["default"](_ref7.args, 1),
|
|
2148
|
+
tapScreenIndex = _ref7$args[0],
|
|
2149
|
+
event = _ref7.event,
|
|
2150
|
+
target = _ref7.target,
|
|
2151
|
+
currentTarget = _ref7.currentTarget,
|
|
2152
|
+
tap = _ref7.tap,
|
|
2153
|
+
_ref7$xy = _slicedToArray__default["default"](_ref7.xy, 2),
|
|
2154
|
+
x = _ref7$xy[0],
|
|
2155
|
+
y = _ref7$xy[1];
|
|
2156
|
+
|
|
2157
|
+
if (tap) {
|
|
2158
|
+
interactWithScreen({
|
|
2159
|
+
event: event,
|
|
2160
|
+
target: target,
|
|
2161
|
+
currentTarget: currentTarget,
|
|
2162
|
+
index: tapScreenIndex,
|
|
2163
|
+
x: x,
|
|
2164
|
+
y: y
|
|
2165
|
+
});
|
|
1799
2166
|
}
|
|
2167
|
+
}, [interactWithScreen]);
|
|
2168
|
+
var dragScreenBind = react.useDrag(onDragScreen, {
|
|
2169
|
+
filterTaps: true
|
|
2170
|
+
}); // Handles tap when landscape (space around current screen)
|
|
1800
2171
|
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
var tapX = e.clientX;
|
|
1808
|
-
var hasTappedLeft = tapX - contentX < contentWidth * 0.5;
|
|
1809
|
-
var nextIndex = hasTappedLeft ? Math.max(0, screenIndex - 1) : Math.min(screensCount - 1, screenIndex + 1);
|
|
2172
|
+
var onDragContent = React.useCallback(function (_ref8) {
|
|
2173
|
+
var tap = _ref8.tap,
|
|
2174
|
+
target = _ref8.target,
|
|
2175
|
+
currentTarget = _ref8.currentTarget,
|
|
2176
|
+
_ref8$xy = _slicedToArray__default["default"](_ref8.xy, 1),
|
|
2177
|
+
x = _ref8$xy[0];
|
|
1810
2178
|
|
|
1811
|
-
if (
|
|
1812
|
-
|
|
2179
|
+
if (!landscape || withLandscapeSiblingsScreens || target !== contentRef.current) {
|
|
2180
|
+
return;
|
|
1813
2181
|
}
|
|
1814
2182
|
|
|
1815
|
-
|
|
1816
|
-
|
|
2183
|
+
if (tap) {
|
|
2184
|
+
var _currentTarget$getBou = currentTarget.getBoundingClientRect(),
|
|
2185
|
+
_currentTarget$getBou2 = _currentTarget$getBou.left,
|
|
2186
|
+
contentX = _currentTarget$getBou2 === void 0 ? 0 : _currentTarget$getBou2,
|
|
2187
|
+
_currentTarget$getBou3 = _currentTarget$getBou.width,
|
|
2188
|
+
contentWidth = _currentTarget$getBou3 === void 0 ? 0 : _currentTarget$getBou3;
|
|
2189
|
+
|
|
2190
|
+
var hasTappedLeft = x - contentX < contentWidth * 0.5;
|
|
2191
|
+
var nextIndex = hasTappedLeft ? Math.max(0, screenIndex - 1) : Math.min(screensCount - 1, screenIndex + 1);
|
|
2192
|
+
onScreenNavigate({
|
|
2193
|
+
index: screenIndex,
|
|
2194
|
+
newIndex: nextIndex
|
|
2195
|
+
});
|
|
2196
|
+
}
|
|
2197
|
+
}, [screenIndex, screensCount, landscape, withLandscapeSiblingsScreens]);
|
|
2198
|
+
var dragContentBind = react.useDrag(onDragContent, {
|
|
2199
|
+
filterTaps: true
|
|
2200
|
+
});
|
|
2201
|
+
var onScreenKeyUp = React.useCallback(function (e, i) {
|
|
2202
|
+
if (e.key === 'Enter' && withLandscapeSiblingsScreens && landscape && i !== screenIndex) {
|
|
2203
|
+
changeIndex(i);
|
|
2204
|
+
}
|
|
2205
|
+
}, [withLandscapeSiblingsScreens, changeIndex, landscape, screenIndex]); // swipe menu open
|
|
1817
2206
|
|
|
1818
2207
|
var menuVisible = screensCount === 0 || currentScreenInteractionEnabled;
|
|
1819
2208
|
|
|
@@ -1832,11 +2221,11 @@ var Viewer = function Viewer(_ref) {
|
|
|
1832
2221
|
onInteractionPrivate();
|
|
1833
2222
|
setMenuOpened(true);
|
|
1834
2223
|
}, [changeIndex, onInteractionPrivate, setMenuOpened]);
|
|
1835
|
-
var onClickMenuItem = React.useCallback(function (
|
|
1836
|
-
var itemScreenId =
|
|
2224
|
+
var onClickMenuItem = React.useCallback(function (_ref9) {
|
|
2225
|
+
var itemScreenId = _ref9.screenId;
|
|
1837
2226
|
onInteractionPrivate();
|
|
1838
|
-
var index = screens.findIndex(function (
|
|
1839
|
-
var id =
|
|
2227
|
+
var index = screens.findIndex(function (_ref10) {
|
|
2228
|
+
var id = _ref10.id;
|
|
1840
2229
|
return id === itemScreenId;
|
|
1841
2230
|
});
|
|
1842
2231
|
changeIndex(index);
|
|
@@ -1889,32 +2278,34 @@ var Viewer = function Viewer(_ref) {
|
|
|
1889
2278
|
disabled: renderContext !== 'view'
|
|
1890
2279
|
});
|
|
1891
2280
|
|
|
1892
|
-
var
|
|
1893
|
-
screenParameters =
|
|
2281
|
+
var _ref11 = currentScreen || {},
|
|
2282
|
+
screenParameters = _ref11.parameters;
|
|
1894
2283
|
|
|
1895
|
-
var
|
|
1896
|
-
screenMetadata =
|
|
2284
|
+
var _ref12 = screenParameters || {},
|
|
2285
|
+
screenMetadata = _ref12.metadata;
|
|
1897
2286
|
|
|
1898
|
-
var
|
|
1899
|
-
|
|
1900
|
-
screenTitle =
|
|
1901
|
-
|
|
1902
|
-
screenDescription =
|
|
2287
|
+
var _ref13 = screenMetadata || {},
|
|
2288
|
+
_ref13$title = _ref13.title,
|
|
2289
|
+
screenTitle = _ref13$title === void 0 ? null : _ref13$title,
|
|
2290
|
+
_ref13$description = _ref13.description,
|
|
2291
|
+
screenDescription = _ref13$description === void 0 ? null : _ref13$description;
|
|
1903
2292
|
|
|
1904
2293
|
var finalTitle = screenTitle !== null ? screenTitle : title;
|
|
1905
2294
|
var finalMetadata = React.useMemo(function () {
|
|
1906
2295
|
return screenDescription !== null ? _objectSpread__default["default"](_objectSpread__default["default"]({}, metadata), {}, {
|
|
1907
2296
|
description: screenDescription
|
|
1908
2297
|
}) : metadata;
|
|
1909
|
-
}, [metadata]);
|
|
2298
|
+
}, [metadata]); // Get element height
|
|
1910
2299
|
|
|
1911
|
-
var
|
|
1912
|
-
menuDotsContainerRef =
|
|
1913
|
-
|
|
2300
|
+
var _useDimensionObserver = hooks.useDimensionObserver(),
|
|
2301
|
+
menuDotsContainerRef = _useDimensionObserver.ref,
|
|
2302
|
+
_useDimensionObserver2 = _useDimensionObserver.height,
|
|
2303
|
+
menuDotsContainerHeight = _useDimensionObserver2 === void 0 ? 0 : _useDimensionObserver2;
|
|
1914
2304
|
|
|
1915
|
-
var
|
|
1916
|
-
|
|
1917
|
-
|
|
2305
|
+
var _useDimensionObserver3 = hooks.useDimensionObserver(),
|
|
2306
|
+
playbackControlsContainerRef = _useDimensionObserver3.ref,
|
|
2307
|
+
_useDimensionObserver4 = _useDimensionObserver3.height,
|
|
2308
|
+
playbackControlsContainerHeight = _useDimensionObserver4 === void 0 ? 0 : _useDimensionObserver4;
|
|
1918
2309
|
|
|
1919
2310
|
var _useMemo = React.useMemo(function () {
|
|
1920
2311
|
return neighborScreensMounted !== null ? {
|
|
@@ -1931,14 +2322,17 @@ var Viewer = function Viewer(_ref) {
|
|
|
1931
2322
|
var mountedScreens = React.useMemo(function () {
|
|
1932
2323
|
return neighborScreensMounted != null ? screens.slice(mountedScreenStartIndex, mountedScreenEndIndex) : screens;
|
|
1933
2324
|
}, [screens, mountedScreenStartIndex, mountedScreenEndIndex, neighborScreensActive, neighborScreensMounted]);
|
|
1934
|
-
return /*#__PURE__*/React__default["default"].createElement(contexts.
|
|
1935
|
-
size: screenSize
|
|
1936
|
-
}, /*#__PURE__*/React__default["default"].createElement(contexts.VisitorProvider, {
|
|
2325
|
+
return /*#__PURE__*/React__default["default"].createElement(contexts.VisitorProvider, {
|
|
1937
2326
|
visitor: visitor
|
|
2327
|
+
}, /*#__PURE__*/React__default["default"].createElement(contexts.ScreenSizeProvider, {
|
|
2328
|
+
size: screenSize
|
|
1938
2329
|
}, /*#__PURE__*/React__default["default"].createElement(contexts.ViewerProvider, {
|
|
1939
2330
|
events: eventsManager,
|
|
1940
2331
|
menuVisible: menuVisible,
|
|
1941
|
-
|
|
2332
|
+
menuOverScreen: menuOverScreen,
|
|
2333
|
+
topHeight: menuOverScreen && currentScreenInteractionEnabled ? menuDotsContainerHeight / screenScale : 0,
|
|
2334
|
+
bottomHeight: (playbackcontrolsVisible || !playing) && currentScreenInteractionEnabled ? playbackControlsContainerHeight / screenScale : 0,
|
|
2335
|
+
bottomSidesWidth: (playbackcontrolsVisible || !playing || playbackMedia !== null) && currentScreenInteractionEnabled ? 60 / screenScale : 0,
|
|
1942
2336
|
gotoPreviousScreen: gotoPreviousScreen,
|
|
1943
2337
|
gotoNextScreen: gotoNextScreen,
|
|
1944
2338
|
disableInteraction: disableInteraction,
|
|
@@ -1949,9 +2343,9 @@ var Viewer = function Viewer(_ref) {
|
|
|
1949
2343
|
}, overscrollStyle) : /*#__PURE__*/React__default["default"].createElement(reactHelmet.Helmet, null, overscrollStyle), /*#__PURE__*/React__default["default"].createElement(components.FontFaces, {
|
|
1950
2344
|
fonts: finalFonts
|
|
1951
2345
|
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1952
|
-
className: classNames__default["default"]([styles$
|
|
2346
|
+
className: classNames__default["default"]([styles$5.container, screenSize.screens.map(function (screenName) {
|
|
1953
2347
|
return "story-screen-".concat(screenName);
|
|
1954
|
-
}), (
|
|
2348
|
+
}), (_ref14 = {}, _defineProperty__default["default"](_ref14, styles$5.landscape, landscape), _defineProperty__default["default"](_ref14, styles$5.withSiblings, withLandscapeSiblingsScreens), _defineProperty__default["default"](_ref14, styles$5.hideMenu, !menuVisible), _defineProperty__default["default"](_ref14, styles$5.ready, ready || withoutScreensTransforms), _defineProperty__default["default"](_ref14, styles$5.hasInteracted, hasInteracted), _defineProperty__default["default"](_ref14, className, className), _ref14)]),
|
|
1955
2349
|
ref: containerRef,
|
|
1956
2350
|
onContextMenu: onContextMenu
|
|
1957
2351
|
}, !withoutMenu ? /*#__PURE__*/React__default["default"].createElement(ViewerMenu, {
|
|
@@ -1975,14 +2369,11 @@ var Viewer = function Viewer(_ref) {
|
|
|
1975
2369
|
withDotItemClick: screenContainerWidth > 400,
|
|
1976
2370
|
withoutScreensMenu: withoutScreensMenu,
|
|
1977
2371
|
refDots: menuDotsContainerRef
|
|
1978
|
-
}) : null, ready || withoutScreensTransforms ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2372
|
+
}) : null, ready || withoutScreensTransforms ? /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
1979
2373
|
ref: contentRef,
|
|
1980
|
-
className: styles$
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
}, mountedScreens.map(function (scr, mountedIndex) {
|
|
1985
|
-
var _ref13;
|
|
2374
|
+
className: styles$5.content
|
|
2375
|
+
}, dragContentBind()), mountedScreens.map(function (scr, mountedIndex) {
|
|
2376
|
+
var _ref15;
|
|
1986
2377
|
|
|
1987
2378
|
var i = mountedScreenStartIndex + mountedIndex;
|
|
1988
2379
|
var current = i === parseInt(screenIndex, 10);
|
|
@@ -1994,12 +2385,8 @@ var Viewer = function Viewer(_ref) {
|
|
|
1994
2385
|
index: i,
|
|
1995
2386
|
current: current,
|
|
1996
2387
|
active: active,
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
enableInteraction: enableInteraction,
|
|
2000
|
-
disableInteraction: disableInteraction,
|
|
2001
|
-
getMediaRef: function getMediaRef(mediaRef) {
|
|
2002
|
-
screensMediasRef.current[i] = mediaRef;
|
|
2388
|
+
mediaRef: function mediaRef(ref) {
|
|
2389
|
+
screensMediasRef.current[i] = ref;
|
|
2003
2390
|
}
|
|
2004
2391
|
});
|
|
2005
2392
|
var key = "screen-viewer-".concat(scr.id || '', "-").concat(i + 1);
|
|
@@ -2013,7 +2400,7 @@ var Viewer = function Viewer(_ref) {
|
|
|
2013
2400
|
|
|
2014
2401
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, {
|
|
2015
2402
|
key: key
|
|
2016
|
-
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2403
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
2017
2404
|
ref: current ? currentScreenRef : null,
|
|
2018
2405
|
style: {
|
|
2019
2406
|
// width: landscape ? screenWidth : null,
|
|
@@ -2022,7 +2409,7 @@ var Viewer = function Viewer(_ref) {
|
|
|
2022
2409
|
height: screenContainerHeight,
|
|
2023
2410
|
transform: !withoutScreensTransforms ? screenTransform : null
|
|
2024
2411
|
},
|
|
2025
|
-
className: classNames__default["default"]([styles$
|
|
2412
|
+
className: classNames__default["default"]([styles$5.screen, (_ref15 = {}, _defineProperty__default["default"](_ref15, styles$5.current, current), _defineProperty__default["default"](_ref15, styles$5.visible, current || withLandscapeSiblingsScreens), _ref15)]),
|
|
2026
2413
|
tabIndex: active ? '0' : '-1'
|
|
2027
2414
|
/* eslint-disable-line */
|
|
2028
2415
|
,
|
|
@@ -2040,26 +2427,10 @@ var Viewer = function Viewer(_ref) {
|
|
|
2040
2427
|
index: i + 1
|
|
2041
2428
|
}),
|
|
2042
2429
|
onKeyUp: function onKeyUp(e) {
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
|
|
2046
|
-
|
|
2047
|
-
onClick: function onClick(e) {
|
|
2048
|
-
return onScreenClick(e, i);
|
|
2049
|
-
} // @todo: this was to make the experience “snappier” when switching screens
|
|
2050
|
-
// onPointerDown={
|
|
2051
|
-
// detectPointerEvents.hasApi
|
|
2052
|
-
// ? (e) => onScreenClick(e, i)
|
|
2053
|
-
// : null
|
|
2054
|
-
// }
|
|
2055
|
-
// onMouseDown={
|
|
2056
|
-
// !detectPointerEvents.hasApi
|
|
2057
|
-
// ? (e) => onScreenClick(e, i)
|
|
2058
|
-
// : null
|
|
2059
|
-
// }
|
|
2060
|
-
|
|
2061
|
-
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2062
|
-
className: styles$8.scaler,
|
|
2430
|
+
return onScreenKeyUp(e, i);
|
|
2431
|
+
}
|
|
2432
|
+
}, dragScreenBind(i)), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2433
|
+
className: styles$5.scaler,
|
|
2063
2434
|
style: {
|
|
2064
2435
|
width: screenWidth,
|
|
2065
2436
|
height: screenHeight,
|
|
@@ -2068,10 +2439,10 @@ var Viewer = function Viewer(_ref) {
|
|
|
2068
2439
|
}
|
|
2069
2440
|
}, current && screenIndex > 0 ? /*#__PURE__*/React__default["default"].createElement("button", {
|
|
2070
2441
|
type: "button",
|
|
2071
|
-
className: classNames__default["default"]([styles$
|
|
2442
|
+
className: classNames__default["default"]([styles$5.navButton, styles$5.previous]),
|
|
2072
2443
|
onClick: gotoPreviousScreen
|
|
2073
2444
|
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
2074
|
-
className: styles$
|
|
2445
|
+
className: styles$5.arrow,
|
|
2075
2446
|
icon: faArrowLeft.faArrowLeft
|
|
2076
2447
|
}), /*#__PURE__*/React__default["default"].createElement("span", {
|
|
2077
2448
|
className: "sr-only"
|
|
@@ -2083,10 +2454,10 @@ var Viewer = function Viewer(_ref) {
|
|
|
2083
2454
|
}]
|
|
2084
2455
|
}))) : null, viewerScreen, current && screenIndex < screens.length - 1 ? /*#__PURE__*/React__default["default"].createElement("button", {
|
|
2085
2456
|
type: "button",
|
|
2086
|
-
className: classNames__default["default"]([styles$
|
|
2457
|
+
className: classNames__default["default"]([styles$5.navButton, styles$5.next]),
|
|
2087
2458
|
onClick: gotoNextScreen
|
|
2088
2459
|
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
2089
|
-
className: styles$
|
|
2460
|
+
className: styles$5.arrow,
|
|
2090
2461
|
icon: faArrowRight.faArrowRight
|
|
2091
2462
|
}), /*#__PURE__*/React__default["default"].createElement("span", {
|
|
2092
2463
|
className: "sr-only"
|
|
@@ -2105,9 +2476,24 @@ var Viewer = function Viewer(_ref) {
|
|
|
2105
2476
|
"value": "Go to next screen"
|
|
2106
2477
|
}]
|
|
2107
2478
|
}))) : null), withNavigationHint && !withLandscapeSiblingsScreens && current && screenIndex === 0 ? /*#__PURE__*/React__default["default"].createElement(HandTap, {
|
|
2108
|
-
className: styles$
|
|
2479
|
+
className: styles$5.handTap
|
|
2109
2480
|
}) : null));
|
|
2110
|
-
})
|
|
2481
|
+
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2482
|
+
className: classNames__default["default"]([styles$5.playbackControls, _defineProperty__default["default"]({}, styles$5.isCollapsed, !playbackcontrolsVisible)]),
|
|
2483
|
+
ref: playbackControlsContainerRef
|
|
2484
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2485
|
+
className: styles$5.playbackControlsContainer,
|
|
2486
|
+
style: {
|
|
2487
|
+
width: screenContainerWidth
|
|
2488
|
+
}
|
|
2489
|
+
}, /*#__PURE__*/React__default["default"].createElement(PlaybackControls, {
|
|
2490
|
+
className: styles$5.controls
|
|
2491
|
+
})))) : null, /*#__PURE__*/React__default["default"].createElement(WebViewContainer, {
|
|
2492
|
+
className: styles$5.webView,
|
|
2493
|
+
style: {
|
|
2494
|
+
maxWidth: Math.max(screenContainerWidth, 600)
|
|
2495
|
+
}
|
|
2496
|
+
})))));
|
|
2111
2497
|
};
|
|
2112
2498
|
|
|
2113
2499
|
Viewer.propTypes = propTypes$2;
|
|
@@ -2183,6 +2569,13 @@ var ViewerRoutes = function ViewerRoutes(_ref) {
|
|
|
2183
2569
|
ViewerRoutes.propTypes = propTypes$1;
|
|
2184
2570
|
ViewerRoutes.defaultProps = defaultProps$1;
|
|
2185
2571
|
|
|
2572
|
+
var home = "/";
|
|
2573
|
+
var screen = "/:screen";
|
|
2574
|
+
var defaultRoutes = {
|
|
2575
|
+
home: home,
|
|
2576
|
+
screen: screen
|
|
2577
|
+
};
|
|
2578
|
+
|
|
2186
2579
|
var _excluded = ["story", "screenComponents", "memoryRouter", "basePath", "routes", "withoutRouter", "googleApiKey", "trackingVariables", "locale", "locales", "translations", "pathWithIndex"];
|
|
2187
2580
|
var propTypes = {
|
|
2188
2581
|
story: core$1.PropTypes.story,
|
|
@@ -2274,7 +2667,7 @@ var ViewerContainer = function ViewerContainer(_ref) {
|
|
|
2274
2667
|
}, /*#__PURE__*/React__default["default"].createElement(screens.ScreensProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.ComponentsProvider, {
|
|
2275
2668
|
namespace: contexts.SCREENS_NAMESPACE,
|
|
2276
2669
|
components: screenComponents || {}
|
|
2277
|
-
}, /*#__PURE__*/React__default["default"].createElement(contexts.UserInteractionProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.TrackingProvider, {
|
|
2670
|
+
}, /*#__PURE__*/React__default["default"].createElement(contexts.UserInteractionProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.PlaybackProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.TrackingProvider, {
|
|
2278
2671
|
variables: finalTrackingVariables
|
|
2279
2672
|
}, withoutRouter ? /*#__PURE__*/React__default["default"].createElement(Viewer, Object.assign({
|
|
2280
2673
|
story: story,
|
|
@@ -2283,7 +2676,7 @@ var ViewerContainer = function ViewerContainer(_ref) {
|
|
|
2283
2676
|
story: story,
|
|
2284
2677
|
basePath: basePath,
|
|
2285
2678
|
pathWithIndex: pathWithIndex
|
|
2286
|
-
}, otherProps))))))))));
|
|
2679
|
+
}, otherProps)))))))))));
|
|
2287
2680
|
return withoutRouter ? content : /*#__PURE__*/React__default["default"].createElement(Router, {
|
|
2288
2681
|
basename: !memoryRouter ? basePath : null
|
|
2289
2682
|
}, /*#__PURE__*/React__default["default"].createElement(contexts.RoutesProvider, {
|