@micromag/viewer 0.3.150 → 0.3.154
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 +841 -448
- package/lib/index.js +839 -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,462 @@ 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","icon":"micromag-viewer-partials-playback-controls-icon","withPlayPause":"micromag-viewer-partials-playback-controls-withPlayPause","isCollapsed":"micromag-viewer-partials-playback-controls-isCollapsed","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
|
+
withSeekHead: !isCollapsed && !seekBarOnly,
|
|
1740
|
+
backgroundColor: color,
|
|
1741
|
+
progressColor: progressColor
|
|
1742
|
+
}), /*#__PURE__*/React__default["default"].createElement("button", {
|
|
1743
|
+
type: "button",
|
|
1744
|
+
className: classNames__default["default"]([styles$1.muteButton, _defineProperty__default["default"]({}, styles$1.isMuted, muted)]),
|
|
1745
|
+
style: {
|
|
1746
|
+
color: color
|
|
1747
|
+
},
|
|
1748
|
+
onClick: muted ? onUnmute : onMute,
|
|
1749
|
+
title: intl.formatMessage({
|
|
1750
|
+
id: "vzg8Es",
|
|
1751
|
+
defaultMessage: [{
|
|
1752
|
+
"type": 0,
|
|
1753
|
+
"value": "Mute"
|
|
1754
|
+
}]
|
|
1755
|
+
}),
|
|
1756
|
+
"aria-label": intl.formatMessage({
|
|
1757
|
+
id: "vzg8Es",
|
|
1758
|
+
defaultMessage: [{
|
|
1759
|
+
"type": 0,
|
|
1760
|
+
"value": "Mute"
|
|
1761
|
+
}]
|
|
1762
|
+
}),
|
|
1763
|
+
tabIndex: controlsVisible ? '0' : '-1'
|
|
1764
|
+
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
1765
|
+
className: styles$1.icon,
|
|
1766
|
+
icon: faVolumeUp.faVolumeUp
|
|
1521
1767
|
})));
|
|
1768
|
+
}
|
|
1769
|
+
|
|
1770
|
+
PlaybackControls.propTypes = propTypes$4;
|
|
1771
|
+
PlaybackControls.defaultProps = defaultProps$4;
|
|
1772
|
+
|
|
1773
|
+
var styles = {"container":"micromag-viewer-partials-web-view-container","opened":"micromag-viewer-partials-web-view-opened"};
|
|
1774
|
+
|
|
1775
|
+
var _excluded$2 = ["opened", "close", "open", "update", "url"];
|
|
1776
|
+
var propTypes$3 = {
|
|
1777
|
+
className: PropTypes__default["default"].string,
|
|
1778
|
+
style: PropTypes__default["default"].object
|
|
1779
|
+
};
|
|
1780
|
+
var defaultProps$3 = {
|
|
1781
|
+
className: null,
|
|
1782
|
+
style: null
|
|
1522
1783
|
};
|
|
1523
1784
|
|
|
1524
|
-
|
|
1525
|
-
|
|
1785
|
+
function WebViewContainer(_ref) {
|
|
1786
|
+
var _ref2;
|
|
1787
|
+
|
|
1788
|
+
var className = _ref.className,
|
|
1789
|
+
style = _ref.style;
|
|
1790
|
+
|
|
1791
|
+
var _useViewerWebView = contexts.useViewerWebView(),
|
|
1792
|
+
opened = _useViewerWebView.opened,
|
|
1793
|
+
close = _useViewerWebView.close;
|
|
1794
|
+
_useViewerWebView.open;
|
|
1795
|
+
_useViewerWebView.update;
|
|
1796
|
+
var _useViewerWebView$url = _useViewerWebView.url,
|
|
1797
|
+
url = _useViewerWebView$url === void 0 ? null : _useViewerWebView$url,
|
|
1798
|
+
webViewProps = _objectWithoutProperties__default["default"](_useViewerWebView, _excluded$2);
|
|
1799
|
+
|
|
1800
|
+
var _useViewerInteraction = contexts.useViewerInteraction(),
|
|
1801
|
+
disableInteraction = _useViewerInteraction.disableInteraction,
|
|
1802
|
+
enableInteraction = _useViewerInteraction.enableInteraction;
|
|
1803
|
+
|
|
1804
|
+
var _useState = React.useState(url),
|
|
1805
|
+
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
1806
|
+
currentUrl = _useState2[0],
|
|
1807
|
+
setCurrentUrl = _useState2[1];
|
|
1808
|
+
|
|
1809
|
+
React.useEffect(function () {
|
|
1810
|
+
if (url !== null) {
|
|
1811
|
+
setCurrentUrl(url);
|
|
1812
|
+
}
|
|
1813
|
+
}, [url, setCurrentUrl]);
|
|
1814
|
+
React.useEffect(function () {
|
|
1815
|
+
if (opened) {
|
|
1816
|
+
disableInteraction();
|
|
1817
|
+
} else {
|
|
1818
|
+
enableInteraction();
|
|
1819
|
+
}
|
|
1820
|
+
|
|
1821
|
+
return function () {
|
|
1822
|
+
enableInteraction();
|
|
1823
|
+
};
|
|
1824
|
+
}, [opened]);
|
|
1825
|
+
var onTransitionEnd = React.useCallback(function () {
|
|
1826
|
+
if (url === null) {
|
|
1827
|
+
setCurrentUrl(null);
|
|
1828
|
+
}
|
|
1829
|
+
}, [url]);
|
|
1830
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1831
|
+
className: classNames__default["default"]([styles.container, (_ref2 = {}, _defineProperty__default["default"](_ref2, styles.opened, opened), _defineProperty__default["default"](_ref2, className, className !== null), _ref2)]),
|
|
1832
|
+
style: style,
|
|
1833
|
+
onTransitionEnd: onTransitionEnd
|
|
1834
|
+
}, /*#__PURE__*/React__default["default"].createElement(WebView__default["default"], Object.assign({
|
|
1835
|
+
url: url || currentUrl
|
|
1836
|
+
}, webViewProps, {
|
|
1837
|
+
closeable: true,
|
|
1838
|
+
className: styles.webView,
|
|
1839
|
+
onClose: close
|
|
1840
|
+
})));
|
|
1841
|
+
}
|
|
1842
|
+
|
|
1843
|
+
WebViewContainer.propTypes = propTypes$3;
|
|
1844
|
+
WebViewContainer.defaultProps = defaultProps$3;
|
|
1526
1845
|
|
|
1527
1846
|
var propTypes$2 = {
|
|
1528
1847
|
story: core$1.PropTypes.story,
|
|
@@ -1601,7 +1920,7 @@ var defaultProps$2 = {
|
|
|
1601
1920
|
};
|
|
1602
1921
|
|
|
1603
1922
|
var Viewer = function Viewer(_ref) {
|
|
1604
|
-
var
|
|
1923
|
+
var _ref14;
|
|
1605
1924
|
|
|
1606
1925
|
var story = _ref.story,
|
|
1607
1926
|
basePath = _ref.basePath,
|
|
@@ -1613,7 +1932,6 @@ var Viewer = function Viewer(_ref) {
|
|
|
1613
1932
|
deviceScreens = _ref.deviceScreens,
|
|
1614
1933
|
renderContext = _ref.renderContext,
|
|
1615
1934
|
visitor = _ref.visitor,
|
|
1616
|
-
onScreenChange = _ref.onScreenChange,
|
|
1617
1935
|
tapNextScreenWidthPercent = _ref.tapNextScreenWidthPercent,
|
|
1618
1936
|
neighborScreensActive = _ref.neighborScreensActive,
|
|
1619
1937
|
neighborScreensMounted = _ref.neighborScreensMounted,
|
|
@@ -1631,6 +1949,7 @@ var Viewer = function Viewer(_ref) {
|
|
|
1631
1949
|
onCloseViewer = _ref.onClose,
|
|
1632
1950
|
onInteraction = _ref.onInteraction,
|
|
1633
1951
|
onEnd = _ref.onEnd,
|
|
1952
|
+
onScreenChange = _ref.onScreenChange,
|
|
1634
1953
|
onViewModeChange = _ref.onViewModeChange,
|
|
1635
1954
|
currentScreenMedia = _ref.currentScreenMedia,
|
|
1636
1955
|
screensMedias = _ref.screensMedias,
|
|
@@ -1678,6 +1997,16 @@ var Viewer = function Viewer(_ref) {
|
|
|
1678
1997
|
var isStatic = renderContext === 'static';
|
|
1679
1998
|
var isCapture = renderContext === 'capture';
|
|
1680
1999
|
var withoutScreensTransforms = isStatic || isCapture;
|
|
2000
|
+
|
|
2001
|
+
var _usePlaybackContext = contexts.usePlaybackContext(),
|
|
2002
|
+
playing = _usePlaybackContext.playing,
|
|
2003
|
+
_usePlaybackContext$c = _usePlaybackContext.controls,
|
|
2004
|
+
playbackControls = _usePlaybackContext$c === void 0 ? false : _usePlaybackContext$c,
|
|
2005
|
+
_usePlaybackContext$c2 = _usePlaybackContext.controlsVisible,
|
|
2006
|
+
playbackcontrolsVisible = _usePlaybackContext$c2 === void 0 ? false : _usePlaybackContext$c2,
|
|
2007
|
+
_usePlaybackContext$m = _usePlaybackContext.media,
|
|
2008
|
+
playbackMedia = _usePlaybackContext$m === void 0 ? null : _usePlaybackContext$m;
|
|
2009
|
+
|
|
1681
2010
|
var trackScreenView = hooks.useTrackScreenView();
|
|
1682
2011
|
var contentRef = React.useRef(null); // Get screen size
|
|
1683
2012
|
|
|
@@ -1708,10 +2037,11 @@ var Viewer = function Viewer(_ref) {
|
|
|
1708
2037
|
React.useEffect(function () {
|
|
1709
2038
|
if (ready && onViewModeChange !== null) {
|
|
1710
2039
|
onViewModeChange({
|
|
1711
|
-
landscape: landscape
|
|
2040
|
+
landscape: landscape,
|
|
2041
|
+
menuOverScreen: menuOverScreen
|
|
1712
2042
|
});
|
|
1713
2043
|
}
|
|
1714
|
-
}, [ready, landscape, onViewModeChange]);
|
|
2044
|
+
}, [ready, landscape, menuOverScreen, onViewModeChange]);
|
|
1715
2045
|
var screensMediasRef = React.useRef([]); // Screen index
|
|
1716
2046
|
|
|
1717
2047
|
var screenIndex = React.useMemo(function () {
|
|
@@ -1721,7 +2051,7 @@ var Viewer = function Viewer(_ref) {
|
|
|
1721
2051
|
}, [screenId, screens]);
|
|
1722
2052
|
|
|
1723
2053
|
if (currentScreenMedia !== null) {
|
|
1724
|
-
currentScreenMedia.current = screensMediasRef.current[screenIndex];
|
|
2054
|
+
currentScreenMedia.current = screensMediasRef.current[screenIndex] || null;
|
|
1725
2055
|
}
|
|
1726
2056
|
|
|
1727
2057
|
if (screensMedias !== null) {
|
|
@@ -1752,12 +2082,10 @@ var Viewer = function Viewer(_ref) {
|
|
|
1752
2082
|
|
|
1753
2083
|
var currentScreenRef = React.useRef(null);
|
|
1754
2084
|
var gotoPreviousScreen = React.useCallback(function () {
|
|
1755
|
-
changeIndex(Math.max(0, screenIndex - 1));
|
|
1756
|
-
currentScreenRef.current.focus();
|
|
2085
|
+
changeIndex(Math.max(0, screenIndex - 1)); // currentScreenRef.current.focus();
|
|
1757
2086
|
}, [changeIndex]);
|
|
1758
2087
|
var gotoNextScreen = React.useCallback(function () {
|
|
1759
|
-
changeIndex(Math.min(screens.length - 1, screenIndex + 1));
|
|
1760
|
-
currentScreenRef.current.focus();
|
|
2088
|
+
changeIndex(Math.min(screens.length - 1, screenIndex + 1)); // currentScreenRef.current.focus();
|
|
1761
2089
|
}, [changeIndex]);
|
|
1762
2090
|
var screensCount = screens.length;
|
|
1763
2091
|
|
|
@@ -1775,45 +2103,107 @@ var Viewer = function Viewer(_ref) {
|
|
|
1775
2103
|
setHasInteracted(true);
|
|
1776
2104
|
}
|
|
1777
2105
|
}, [onInteraction, hasInteracted, setHasInteracted]);
|
|
2106
|
+
var onScreenNavigate = React.useCallback(function (_ref6) {
|
|
2107
|
+
var index = _ref6.index,
|
|
2108
|
+
newIndex = _ref6.newIndex,
|
|
2109
|
+
end = _ref6.end,
|
|
2110
|
+
direction = _ref6.direction;
|
|
2111
|
+
|
|
2112
|
+
if (end && onEnd !== null) {
|
|
2113
|
+
onEnd();
|
|
2114
|
+
}
|
|
2115
|
+
|
|
2116
|
+
changeIndex(newIndex);
|
|
2117
|
+
eventsManager.emit('navigate', {
|
|
2118
|
+
newIndex: newIndex,
|
|
2119
|
+
index: index,
|
|
2120
|
+
direction: direction,
|
|
2121
|
+
end: end
|
|
2122
|
+
});
|
|
2123
|
+
|
|
2124
|
+
if (end) {
|
|
2125
|
+
eventsManager.emit('navigate_end');
|
|
2126
|
+
} else {
|
|
2127
|
+
eventsManager.emit("navigate_".concat(direction), newIndex);
|
|
2128
|
+
}
|
|
2129
|
+
}, [onEnd, changeIndex]);
|
|
1778
2130
|
|
|
1779
2131
|
var _useScreenInteraction = useScreenInteraction({
|
|
1780
2132
|
screens: screens,
|
|
1781
2133
|
screenIndex: screenIndex,
|
|
1782
2134
|
screenWidth: screenContainerWidth,
|
|
1783
|
-
|
|
2135
|
+
disableCurrentScreenNavigation: !isView,
|
|
1784
2136
|
clickOnSiblings: landscape && withLandscapeSiblingsScreens,
|
|
1785
2137
|
nextScreenWidthPercent: tapNextScreenWidthPercent,
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
onEnd: onEnd,
|
|
1789
|
-
onChangeScreen: changeIndex
|
|
2138
|
+
onInteract: onInteractionPrivate,
|
|
2139
|
+
onNavigate: onScreenNavigate
|
|
1790
2140
|
}),
|
|
1791
|
-
|
|
2141
|
+
interactWithScreen = _useScreenInteraction.interact,
|
|
1792
2142
|
currentScreenInteractionEnabled = _useScreenInteraction.currentScreenInteractionEnabled,
|
|
1793
2143
|
enableInteraction = _useScreenInteraction.enableInteraction,
|
|
1794
|
-
disableInteraction = _useScreenInteraction.disableInteraction;
|
|
1795
|
-
|
|
1796
|
-
|
|
1797
|
-
|
|
1798
|
-
|
|
2144
|
+
disableInteraction = _useScreenInteraction.disableInteraction; // Handle tap on screens
|
|
2145
|
+
|
|
2146
|
+
|
|
2147
|
+
var onDragScreen = React.useCallback(function (_ref7) {
|
|
2148
|
+
var _ref7$args = _slicedToArray__default["default"](_ref7.args, 1),
|
|
2149
|
+
tapScreenIndex = _ref7$args[0],
|
|
2150
|
+
event = _ref7.event,
|
|
2151
|
+
target = _ref7.target,
|
|
2152
|
+
currentTarget = _ref7.currentTarget,
|
|
2153
|
+
tap = _ref7.tap,
|
|
2154
|
+
_ref7$xy = _slicedToArray__default["default"](_ref7.xy, 2),
|
|
2155
|
+
x = _ref7$xy[0],
|
|
2156
|
+
y = _ref7$xy[1];
|
|
2157
|
+
|
|
2158
|
+
if (tap) {
|
|
2159
|
+
interactWithScreen({
|
|
2160
|
+
event: event,
|
|
2161
|
+
target: target,
|
|
2162
|
+
currentTarget: currentTarget,
|
|
2163
|
+
index: tapScreenIndex,
|
|
2164
|
+
x: x,
|
|
2165
|
+
y: y
|
|
2166
|
+
});
|
|
1799
2167
|
}
|
|
2168
|
+
}, [interactWithScreen]);
|
|
2169
|
+
var dragScreenBind = react.useDrag(onDragScreen, {
|
|
2170
|
+
filterTaps: true
|
|
2171
|
+
}); // Handles tap when landscape (space around current screen)
|
|
1800
2172
|
|
|
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);
|
|
2173
|
+
var onDragContent = React.useCallback(function (_ref8) {
|
|
2174
|
+
var tap = _ref8.tap,
|
|
2175
|
+
target = _ref8.target,
|
|
2176
|
+
currentTarget = _ref8.currentTarget,
|
|
2177
|
+
_ref8$xy = _slicedToArray__default["default"](_ref8.xy, 1),
|
|
2178
|
+
x = _ref8$xy[0];
|
|
1810
2179
|
|
|
1811
|
-
if (
|
|
1812
|
-
|
|
2180
|
+
if (!landscape || withLandscapeSiblingsScreens || target !== contentRef.current) {
|
|
2181
|
+
return;
|
|
1813
2182
|
}
|
|
1814
2183
|
|
|
1815
|
-
|
|
1816
|
-
|
|
2184
|
+
if (tap) {
|
|
2185
|
+
var _currentTarget$getBou = currentTarget.getBoundingClientRect(),
|
|
2186
|
+
_currentTarget$getBou2 = _currentTarget$getBou.left,
|
|
2187
|
+
contentX = _currentTarget$getBou2 === void 0 ? 0 : _currentTarget$getBou2,
|
|
2188
|
+
_currentTarget$getBou3 = _currentTarget$getBou.width,
|
|
2189
|
+
contentWidth = _currentTarget$getBou3 === void 0 ? 0 : _currentTarget$getBou3;
|
|
2190
|
+
|
|
2191
|
+
var hasTappedLeft = x - contentX < contentWidth * 0.5;
|
|
2192
|
+
var nextIndex = hasTappedLeft ? Math.max(0, screenIndex - 1) : Math.min(screensCount - 1, screenIndex + 1);
|
|
2193
|
+
onScreenNavigate({
|
|
2194
|
+
index: screenIndex,
|
|
2195
|
+
newIndex: nextIndex
|
|
2196
|
+
});
|
|
2197
|
+
}
|
|
2198
|
+
}, [screenIndex, screensCount, landscape, withLandscapeSiblingsScreens]);
|
|
2199
|
+
var dragContentBind = react.useDrag(onDragContent, {
|
|
2200
|
+
filterTaps: true
|
|
2201
|
+
});
|
|
2202
|
+
var onScreenKeyUp = React.useCallback(function (e, i) {
|
|
2203
|
+
if (e.key === 'Enter' && withLandscapeSiblingsScreens && landscape && i !== screenIndex) {
|
|
2204
|
+
changeIndex(i);
|
|
2205
|
+
}
|
|
2206
|
+
}, [withLandscapeSiblingsScreens, changeIndex, landscape, screenIndex]); // swipe menu open
|
|
1817
2207
|
|
|
1818
2208
|
var menuVisible = screensCount === 0 || currentScreenInteractionEnabled;
|
|
1819
2209
|
|
|
@@ -1832,11 +2222,11 @@ var Viewer = function Viewer(_ref) {
|
|
|
1832
2222
|
onInteractionPrivate();
|
|
1833
2223
|
setMenuOpened(true);
|
|
1834
2224
|
}, [changeIndex, onInteractionPrivate, setMenuOpened]);
|
|
1835
|
-
var onClickMenuItem = React.useCallback(function (
|
|
1836
|
-
var itemScreenId =
|
|
2225
|
+
var onClickMenuItem = React.useCallback(function (_ref9) {
|
|
2226
|
+
var itemScreenId = _ref9.screenId;
|
|
1837
2227
|
onInteractionPrivate();
|
|
1838
|
-
var index = screens.findIndex(function (
|
|
1839
|
-
var id =
|
|
2228
|
+
var index = screens.findIndex(function (_ref10) {
|
|
2229
|
+
var id = _ref10.id;
|
|
1840
2230
|
return id === itemScreenId;
|
|
1841
2231
|
});
|
|
1842
2232
|
changeIndex(index);
|
|
@@ -1889,32 +2279,34 @@ var Viewer = function Viewer(_ref) {
|
|
|
1889
2279
|
disabled: renderContext !== 'view'
|
|
1890
2280
|
});
|
|
1891
2281
|
|
|
1892
|
-
var
|
|
1893
|
-
screenParameters =
|
|
2282
|
+
var _ref11 = currentScreen || {},
|
|
2283
|
+
screenParameters = _ref11.parameters;
|
|
1894
2284
|
|
|
1895
|
-
var
|
|
1896
|
-
screenMetadata =
|
|
2285
|
+
var _ref12 = screenParameters || {},
|
|
2286
|
+
screenMetadata = _ref12.metadata;
|
|
1897
2287
|
|
|
1898
|
-
var
|
|
1899
|
-
|
|
1900
|
-
screenTitle =
|
|
1901
|
-
|
|
1902
|
-
screenDescription =
|
|
2288
|
+
var _ref13 = screenMetadata || {},
|
|
2289
|
+
_ref13$title = _ref13.title,
|
|
2290
|
+
screenTitle = _ref13$title === void 0 ? null : _ref13$title,
|
|
2291
|
+
_ref13$description = _ref13.description,
|
|
2292
|
+
screenDescription = _ref13$description === void 0 ? null : _ref13$description;
|
|
1903
2293
|
|
|
1904
2294
|
var finalTitle = screenTitle !== null ? screenTitle : title;
|
|
1905
2295
|
var finalMetadata = React.useMemo(function () {
|
|
1906
2296
|
return screenDescription !== null ? _objectSpread__default["default"](_objectSpread__default["default"]({}, metadata), {}, {
|
|
1907
2297
|
description: screenDescription
|
|
1908
2298
|
}) : metadata;
|
|
1909
|
-
}, [metadata]);
|
|
2299
|
+
}, [metadata]); // Get element height
|
|
1910
2300
|
|
|
1911
|
-
var
|
|
1912
|
-
menuDotsContainerRef =
|
|
1913
|
-
|
|
2301
|
+
var _useDimensionObserver = hooks.useDimensionObserver(),
|
|
2302
|
+
menuDotsContainerRef = _useDimensionObserver.ref,
|
|
2303
|
+
_useDimensionObserver2 = _useDimensionObserver.height,
|
|
2304
|
+
menuDotsContainerHeight = _useDimensionObserver2 === void 0 ? 0 : _useDimensionObserver2;
|
|
1914
2305
|
|
|
1915
|
-
var
|
|
1916
|
-
|
|
1917
|
-
|
|
2306
|
+
var _useDimensionObserver3 = hooks.useDimensionObserver(),
|
|
2307
|
+
playbackControlsContainerRef = _useDimensionObserver3.ref,
|
|
2308
|
+
_useDimensionObserver4 = _useDimensionObserver3.height,
|
|
2309
|
+
playbackControlsContainerHeight = _useDimensionObserver4 === void 0 ? 0 : _useDimensionObserver4;
|
|
1918
2310
|
|
|
1919
2311
|
var _useMemo = React.useMemo(function () {
|
|
1920
2312
|
return neighborScreensMounted !== null ? {
|
|
@@ -1931,14 +2323,17 @@ var Viewer = function Viewer(_ref) {
|
|
|
1931
2323
|
var mountedScreens = React.useMemo(function () {
|
|
1932
2324
|
return neighborScreensMounted != null ? screens.slice(mountedScreenStartIndex, mountedScreenEndIndex) : screens;
|
|
1933
2325
|
}, [screens, mountedScreenStartIndex, mountedScreenEndIndex, neighborScreensActive, neighborScreensMounted]);
|
|
1934
|
-
return /*#__PURE__*/React__default["default"].createElement(contexts.
|
|
1935
|
-
size: screenSize
|
|
1936
|
-
}, /*#__PURE__*/React__default["default"].createElement(contexts.VisitorProvider, {
|
|
2326
|
+
return /*#__PURE__*/React__default["default"].createElement(contexts.VisitorProvider, {
|
|
1937
2327
|
visitor: visitor
|
|
2328
|
+
}, /*#__PURE__*/React__default["default"].createElement(contexts.ScreenSizeProvider, {
|
|
2329
|
+
size: screenSize
|
|
1938
2330
|
}, /*#__PURE__*/React__default["default"].createElement(contexts.ViewerProvider, {
|
|
1939
2331
|
events: eventsManager,
|
|
1940
2332
|
menuVisible: menuVisible,
|
|
1941
|
-
|
|
2333
|
+
menuOverScreen: menuOverScreen,
|
|
2334
|
+
topHeight: menuOverScreen && currentScreenInteractionEnabled ? menuDotsContainerHeight / screenScale : 0,
|
|
2335
|
+
bottomHeight: playbackControls && (playbackcontrolsVisible || !playing) && currentScreenInteractionEnabled ? playbackControlsContainerHeight / screenScale : 0,
|
|
2336
|
+
bottomSidesWidth: (playbackcontrolsVisible || !playing || playbackMedia !== null) && currentScreenInteractionEnabled ? 60 / screenScale : 0,
|
|
1942
2337
|
gotoPreviousScreen: gotoPreviousScreen,
|
|
1943
2338
|
gotoNextScreen: gotoNextScreen,
|
|
1944
2339
|
disableInteraction: disableInteraction,
|
|
@@ -1949,9 +2344,9 @@ var Viewer = function Viewer(_ref) {
|
|
|
1949
2344
|
}, overscrollStyle) : /*#__PURE__*/React__default["default"].createElement(reactHelmet.Helmet, null, overscrollStyle), /*#__PURE__*/React__default["default"].createElement(components.FontFaces, {
|
|
1950
2345
|
fonts: finalFonts
|
|
1951
2346
|
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1952
|
-
className: classNames__default["default"]([styles$
|
|
2347
|
+
className: classNames__default["default"]([styles$5.container, screenSize.screens.map(function (screenName) {
|
|
1953
2348
|
return "story-screen-".concat(screenName);
|
|
1954
|
-
}), (
|
|
2349
|
+
}), (_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
2350
|
ref: containerRef,
|
|
1956
2351
|
onContextMenu: onContextMenu
|
|
1957
2352
|
}, !withoutMenu ? /*#__PURE__*/React__default["default"].createElement(ViewerMenu, {
|
|
@@ -1975,14 +2370,11 @@ var Viewer = function Viewer(_ref) {
|
|
|
1975
2370
|
withDotItemClick: screenContainerWidth > 400,
|
|
1976
2371
|
withoutScreensMenu: withoutScreensMenu,
|
|
1977
2372
|
refDots: menuDotsContainerRef
|
|
1978
|
-
}) : null, ready || withoutScreensTransforms ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2373
|
+
}) : null, ready || withoutScreensTransforms ? /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
1979
2374
|
ref: contentRef,
|
|
1980
|
-
className: styles$
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
}, mountedScreens.map(function (scr, mountedIndex) {
|
|
1985
|
-
var _ref13;
|
|
2375
|
+
className: styles$5.content
|
|
2376
|
+
}, dragContentBind()), mountedScreens.map(function (scr, mountedIndex) {
|
|
2377
|
+
var _ref15;
|
|
1986
2378
|
|
|
1987
2379
|
var i = mountedScreenStartIndex + mountedIndex;
|
|
1988
2380
|
var current = i === parseInt(screenIndex, 10);
|
|
@@ -1994,12 +2386,8 @@ var Viewer = function Viewer(_ref) {
|
|
|
1994
2386
|
index: i,
|
|
1995
2387
|
current: current,
|
|
1996
2388
|
active: active,
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
enableInteraction: enableInteraction,
|
|
2000
|
-
disableInteraction: disableInteraction,
|
|
2001
|
-
getMediaRef: function getMediaRef(mediaRef) {
|
|
2002
|
-
screensMediasRef.current[i] = mediaRef;
|
|
2389
|
+
mediaRef: function mediaRef(ref) {
|
|
2390
|
+
screensMediasRef.current[i] = ref;
|
|
2003
2391
|
}
|
|
2004
2392
|
});
|
|
2005
2393
|
var key = "screen-viewer-".concat(scr.id || '', "-").concat(i + 1);
|
|
@@ -2013,7 +2401,7 @@ var Viewer = function Viewer(_ref) {
|
|
|
2013
2401
|
|
|
2014
2402
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, {
|
|
2015
2403
|
key: key
|
|
2016
|
-
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2404
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
2017
2405
|
ref: current ? currentScreenRef : null,
|
|
2018
2406
|
style: {
|
|
2019
2407
|
// width: landscape ? screenWidth : null,
|
|
@@ -2022,7 +2410,7 @@ var Viewer = function Viewer(_ref) {
|
|
|
2022
2410
|
height: screenContainerHeight,
|
|
2023
2411
|
transform: !withoutScreensTransforms ? screenTransform : null
|
|
2024
2412
|
},
|
|
2025
|
-
className: classNames__default["default"]([styles$
|
|
2413
|
+
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
2414
|
tabIndex: active ? '0' : '-1'
|
|
2027
2415
|
/* eslint-disable-line */
|
|
2028
2416
|
,
|
|
@@ -2040,26 +2428,10 @@ var Viewer = function Viewer(_ref) {
|
|
|
2040
2428
|
index: i + 1
|
|
2041
2429
|
}),
|
|
2042
2430
|
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,
|
|
2431
|
+
return onScreenKeyUp(e, i);
|
|
2432
|
+
}
|
|
2433
|
+
}, dragScreenBind(i)), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2434
|
+
className: styles$5.scaler,
|
|
2063
2435
|
style: {
|
|
2064
2436
|
width: screenWidth,
|
|
2065
2437
|
height: screenHeight,
|
|
@@ -2068,10 +2440,10 @@ var Viewer = function Viewer(_ref) {
|
|
|
2068
2440
|
}
|
|
2069
2441
|
}, current && screenIndex > 0 ? /*#__PURE__*/React__default["default"].createElement("button", {
|
|
2070
2442
|
type: "button",
|
|
2071
|
-
className: classNames__default["default"]([styles$
|
|
2443
|
+
className: classNames__default["default"]([styles$5.navButton, styles$5.previous]),
|
|
2072
2444
|
onClick: gotoPreviousScreen
|
|
2073
2445
|
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
2074
|
-
className: styles$
|
|
2446
|
+
className: styles$5.arrow,
|
|
2075
2447
|
icon: faArrowLeft.faArrowLeft
|
|
2076
2448
|
}), /*#__PURE__*/React__default["default"].createElement("span", {
|
|
2077
2449
|
className: "sr-only"
|
|
@@ -2083,10 +2455,10 @@ var Viewer = function Viewer(_ref) {
|
|
|
2083
2455
|
}]
|
|
2084
2456
|
}))) : null, viewerScreen, current && screenIndex < screens.length - 1 ? /*#__PURE__*/React__default["default"].createElement("button", {
|
|
2085
2457
|
type: "button",
|
|
2086
|
-
className: classNames__default["default"]([styles$
|
|
2458
|
+
className: classNames__default["default"]([styles$5.navButton, styles$5.next]),
|
|
2087
2459
|
onClick: gotoNextScreen
|
|
2088
2460
|
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
2089
|
-
className: styles$
|
|
2461
|
+
className: styles$5.arrow,
|
|
2090
2462
|
icon: faArrowRight.faArrowRight
|
|
2091
2463
|
}), /*#__PURE__*/React__default["default"].createElement("span", {
|
|
2092
2464
|
className: "sr-only"
|
|
@@ -2105,9 +2477,24 @@ var Viewer = function Viewer(_ref) {
|
|
|
2105
2477
|
"value": "Go to next screen"
|
|
2106
2478
|
}]
|
|
2107
2479
|
}))) : null), withNavigationHint && !withLandscapeSiblingsScreens && current && screenIndex === 0 ? /*#__PURE__*/React__default["default"].createElement(HandTap, {
|
|
2108
|
-
className: styles$
|
|
2480
|
+
className: styles$5.handTap
|
|
2109
2481
|
}) : null));
|
|
2110
|
-
})
|
|
2482
|
+
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2483
|
+
className: classNames__default["default"]([styles$5.playbackControls, _defineProperty__default["default"]({}, styles$5.isCollapsed, playbackControls && !playbackcontrolsVisible && playing)]),
|
|
2484
|
+
ref: playbackControlsContainerRef
|
|
2485
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2486
|
+
className: styles$5.playbackControlsContainer,
|
|
2487
|
+
style: {
|
|
2488
|
+
width: screenContainerWidth
|
|
2489
|
+
}
|
|
2490
|
+
}, /*#__PURE__*/React__default["default"].createElement(PlaybackControls, {
|
|
2491
|
+
className: styles$5.controls
|
|
2492
|
+
})))) : null, /*#__PURE__*/React__default["default"].createElement(WebViewContainer, {
|
|
2493
|
+
className: styles$5.webView,
|
|
2494
|
+
style: {
|
|
2495
|
+
maxWidth: Math.max(screenContainerWidth, 600)
|
|
2496
|
+
}
|
|
2497
|
+
})))));
|
|
2111
2498
|
};
|
|
2112
2499
|
|
|
2113
2500
|
Viewer.propTypes = propTypes$2;
|
|
@@ -2183,6 +2570,13 @@ var ViewerRoutes = function ViewerRoutes(_ref) {
|
|
|
2183
2570
|
ViewerRoutes.propTypes = propTypes$1;
|
|
2184
2571
|
ViewerRoutes.defaultProps = defaultProps$1;
|
|
2185
2572
|
|
|
2573
|
+
var home = "/";
|
|
2574
|
+
var screen = "/:screen";
|
|
2575
|
+
var defaultRoutes = {
|
|
2576
|
+
home: home,
|
|
2577
|
+
screen: screen
|
|
2578
|
+
};
|
|
2579
|
+
|
|
2186
2580
|
var _excluded = ["story", "screenComponents", "memoryRouter", "basePath", "routes", "withoutRouter", "googleApiKey", "trackingVariables", "locale", "locales", "translations", "pathWithIndex"];
|
|
2187
2581
|
var propTypes = {
|
|
2188
2582
|
story: core$1.PropTypes.story,
|
|
@@ -2274,7 +2668,7 @@ var ViewerContainer = function ViewerContainer(_ref) {
|
|
|
2274
2668
|
}, /*#__PURE__*/React__default["default"].createElement(screens.ScreensProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.ComponentsProvider, {
|
|
2275
2669
|
namespace: contexts.SCREENS_NAMESPACE,
|
|
2276
2670
|
components: screenComponents || {}
|
|
2277
|
-
}, /*#__PURE__*/React__default["default"].createElement(contexts.UserInteractionProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.TrackingProvider, {
|
|
2671
|
+
}, /*#__PURE__*/React__default["default"].createElement(contexts.UserInteractionProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.PlaybackProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.TrackingProvider, {
|
|
2278
2672
|
variables: finalTrackingVariables
|
|
2279
2673
|
}, withoutRouter ? /*#__PURE__*/React__default["default"].createElement(Viewer, Object.assign({
|
|
2280
2674
|
story: story,
|
|
@@ -2283,7 +2677,7 @@ var ViewerContainer = function ViewerContainer(_ref) {
|
|
|
2283
2677
|
story: story,
|
|
2284
2678
|
basePath: basePath,
|
|
2285
2679
|
pathWithIndex: pathWithIndex
|
|
2286
|
-
}, otherProps))))))))));
|
|
2680
|
+
}, otherProps)))))))))));
|
|
2287
2681
|
return withoutRouter ? content : /*#__PURE__*/React__default["default"].createElement(Router, {
|
|
2288
2682
|
basename: !memoryRouter ? basePath : null
|
|
2289
2683
|
}, /*#__PURE__*/React__default["default"].createElement(contexts.RoutesProvider, {
|