@micromag/viewer 0.3.162 → 0.3.166

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.js CHANGED
@@ -16,9 +16,6 @@ var screens = require('@micromag/screens');
16
16
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
17
17
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
18
18
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
19
- var faArrowLeft = require('@fortawesome/free-solid-svg-icons/faArrowLeft');
20
- var faArrowRight = require('@fortawesome/free-solid-svg-icons/faArrowRight');
21
- var reactFontawesome = require('@fortawesome/react-fontawesome');
22
19
  var react = require('@use-gesture/react');
23
20
  var classNames = require('classnames');
24
21
  var reactHelmet = require('react-helmet');
@@ -30,11 +27,14 @@ var utils = require('@micromag/core/utils');
30
27
  var core = require('@react-spring/core');
31
28
  var web = require('@react-spring/web');
32
29
  var faTimes = require('@fortawesome/free-solid-svg-icons/faTimes');
30
+ var reactFontawesome = require('@fortawesome/react-fontawesome');
33
31
  var faCompress = require('@fortawesome/free-solid-svg-icons/faCompress');
34
32
  var faExpand = require('@fortawesome/free-solid-svg-icons/faExpand');
35
33
  var faShare = require('@fortawesome/free-solid-svg-icons/faShare');
36
34
  var Scroll = require('@micromag/element-scroll');
37
35
  var ShareOptions = require('@micromag/element-share-options');
36
+ var faArrowLeft = require('@fortawesome/free-solid-svg-icons/faArrowLeft');
37
+ var faArrowRight = require('@fortawesome/free-solid-svg-icons/faArrowRight');
38
38
  var faPause = require('@fortawesome/free-solid-svg-icons/faPause');
39
39
  var faPlay = require('@fortawesome/free-solid-svg-icons/faPlay');
40
40
  var faVolumeUp = require('@fortawesome/free-solid-svg-icons/faVolumeUp');
@@ -233,11 +233,11 @@ function useScreenInteraction() {
233
233
  };
234
234
  }
235
235
 
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"};
236
+ var styles$c = {"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"};
237
237
 
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"};
238
+ var styles$b = {"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"};
239
239
 
240
- var propTypes$g = {
240
+ var propTypes$h = {
241
241
  current: PropTypes__default["default"].bool,
242
242
  active: PropTypes__default["default"].bool,
243
243
  colors: PropTypes__default["default"].shape({
@@ -250,7 +250,7 @@ var propTypes$g = {
250
250
  onClick: PropTypes__default["default"].func,
251
251
  className: PropTypes__default["default"].string
252
252
  };
253
- var defaultProps$g = {
253
+ var defaultProps$h = {
254
254
  current: false,
255
255
  active: false,
256
256
  colors: null,
@@ -313,44 +313,44 @@ var ViewerMenuDot = function ViewerMenuDot(_ref) {
313
313
  });
314
314
  }, [playing, duration, currentTime, setSpringProps]);
315
315
  var inner = current && count > 1 ? /*#__PURE__*/React__default["default"].createElement("span", {
316
- className: styles$a.dots
316
+ className: styles$b.dots
317
317
  }, _toConsumableArray__default["default"](Array(count).keys()).map(function (i) {
318
318
  return /*#__PURE__*/React__default["default"].createElement("span", {
319
- className: classNames__default["default"]([styles$a.dot, styles$a.subDot]),
319
+ className: classNames__default["default"]([styles$b.dot, styles$b.subDot]),
320
320
  style: {
321
321
  width: "".concat(parseFloat(1 / count * 100).toFixed(2), "%"),
322
322
  backgroundColor: active && i <= subIndex ? primary : secondary
323
323
  }
324
324
  });
325
325
  })) : /*#__PURE__*/React__default["default"].createElement("span", {
326
- className: styles$a.dot,
326
+ className: styles$b.dot,
327
327
  style: {
328
328
  backgroundColor: active ? primary : secondary
329
329
  }
330
330
  });
331
331
  return /*#__PURE__*/React__default["default"].createElement("li", {
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)]),
332
+ className: classNames__default["default"]([styles$b.container, (_ref3 = {}, _defineProperty__default["default"](_ref3, styles$b.active, current), _defineProperty__default["default"](_ref3, styles$b.vertical, vertical), _defineProperty__default["default"](_ref3, className, className !== null), _ref3)]),
333
333
  "aria-hidden": "true"
334
334
  }, /*#__PURE__*/React__default["default"].createElement("button", {
335
335
  type: "button",
336
- className: styles$a.button,
336
+ className: styles$b.button,
337
337
  onClick: onClick,
338
338
  tabIndex: "-1"
339
339
  }, inner));
340
340
  };
341
341
 
342
- ViewerMenuDot.propTypes = propTypes$g;
343
- ViewerMenuDot.defaultProps = defaultProps$g;
342
+ ViewerMenuDot.propTypes = propTypes$h;
343
+ ViewerMenuDot.defaultProps = defaultProps$h;
344
344
 
345
- var styles$9 = {};
345
+ var styles$a = {};
346
346
 
347
- var propTypes$f = {
347
+ var propTypes$g = {
348
348
  size: PropTypes__default["default"].number,
349
349
  spacing: PropTypes__default["default"].number,
350
350
  color: PropTypes__default["default"].string,
351
351
  className: PropTypes__default["default"].string
352
352
  };
353
- var defaultProps$f = {
353
+ var defaultProps$g = {
354
354
  size: 100,
355
355
  spacing: 8,
356
356
  color: 'white',
@@ -364,7 +364,7 @@ var MenuIcon = function MenuIcon(_ref) {
364
364
  className = _ref.className;
365
365
  var squareSize = (size - 2 * spacing) / 3;
366
366
  return /*#__PURE__*/React__default["default"].createElement("svg", {
367
- className: classNames__default["default"]([styles$9.container, _defineProperty__default["default"]({}, className, className !== null)]),
367
+ className: classNames__default["default"]([styles$a.container, _defineProperty__default["default"]({}, className, className !== null)]),
368
368
  xmlns: "http://www.w3.org/2000/svg",
369
369
  viewBox: "0 0 ".concat(size, " ").concat(size),
370
370
  "aria-hidden": "true"
@@ -382,10 +382,10 @@ var MenuIcon = function MenuIcon(_ref) {
382
382
  }));
383
383
  };
384
384
 
385
- MenuIcon.propTypes = propTypes$f;
386
- MenuIcon.defaultProps = defaultProps$f;
385
+ MenuIcon.propTypes = propTypes$g;
386
+ MenuIcon.defaultProps = defaultProps$g;
387
387
 
388
- var propTypes$e = {
388
+ var propTypes$f = {
389
389
  direction: PropTypes__default["default"].oneOf(['horizontal', 'vertical']),
390
390
  withShadow: PropTypes__default["default"].bool,
391
391
  items: core$1.PropTypes.menuItems,
@@ -401,7 +401,7 @@ var propTypes$e = {
401
401
  onClose: PropTypes__default["default"].func,
402
402
  className: PropTypes__default["default"].string
403
403
  };
404
- var defaultProps$e = {
404
+ var defaultProps$f = {
405
405
  direction: 'horizontal',
406
406
  withShadow: false,
407
407
  items: [],
@@ -441,7 +441,7 @@ var ViewerMenuDots = function ViewerMenuDots(_ref) {
441
441
  return current;
442
442
  });
443
443
  return /*#__PURE__*/React__default["default"].createElement("nav", {
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)]),
444
+ className: classNames__default["default"]([styles$c.container, (_ref4 = {}, _defineProperty__default["default"](_ref4, className, className !== null), _defineProperty__default["default"](_ref4, styles$c.vertical, direction === 'vertical'), _defineProperty__default["default"](_ref4, styles$c.withShadow, withShadow), _ref4)]),
445
445
  "aria-label": intl.formatMessage({
446
446
  id: "bLYuuN",
447
447
  defaultMessage: [{
@@ -465,7 +465,7 @@ var ViewerMenuDots = function ViewerMenuDots(_ref) {
465
465
  total: items.length
466
466
  })
467
467
  }, /*#__PURE__*/React__default["default"].createElement("ul", {
468
- className: styles$b.items
468
+ className: styles$c.items
469
469
  }, items.map(function (item, index) {
470
470
  var _ref5 = item || {},
471
471
  _ref5$current = _ref5.current,
@@ -492,9 +492,9 @@ var ViewerMenuDots = function ViewerMenuDots(_ref) {
492
492
  vertical: direction === 'vertical'
493
493
  });
494
494
  }), !withoutScreensMenu ? /*#__PURE__*/React__default["default"].createElement("li", {
495
- className: styles$b.menu
495
+ className: styles$c.menu
496
496
  }, /*#__PURE__*/React__default["default"].createElement(MenuIcon, {
497
- className: styles$b.menuIcon,
497
+ className: styles$c.menuIcon,
498
498
  color: primary
499
499
  }), /*#__PURE__*/React__default["default"].createElement("button", {
500
500
  type: "button",
@@ -512,16 +512,16 @@ var ViewerMenuDots = function ViewerMenuDots(_ref) {
512
512
  "value": "Menu"
513
513
  }]
514
514
  }),
515
- className: styles$b.menuButton,
515
+ className: styles$c.menuButton,
516
516
  onClick: onClickMenu
517
517
  })) : null, closeable ? /*#__PURE__*/React__default["default"].createElement("li", {
518
- className: styles$b.closeButton,
518
+ className: styles$c.closeButton,
519
519
  style: {
520
520
  color: primary
521
521
  }
522
522
  }, /*#__PURE__*/React__default["default"].createElement("button", {
523
523
  type: "button",
524
- className: styles$b.closeButton,
524
+ className: styles$c.closeButton,
525
525
  onClick: onClose,
526
526
  title: intl.formatMessage({
527
527
  id: "dj/p/q",
@@ -542,13 +542,13 @@ var ViewerMenuDots = function ViewerMenuDots(_ref) {
542
542
  }))) : null));
543
543
  };
544
544
 
545
- ViewerMenuDots.propTypes = propTypes$e;
546
- ViewerMenuDots.defaultProps = defaultProps$e;
545
+ ViewerMenuDots.propTypes = propTypes$f;
546
+ ViewerMenuDots.defaultProps = defaultProps$f;
547
547
 
548
- var propTypes$d = {
548
+ var propTypes$e = {
549
549
  className: PropTypes__default["default"].string
550
550
  };
551
- var defaultProps$d = {
551
+ var defaultProps$e = {
552
552
  className: null
553
553
  };
554
554
 
@@ -565,12 +565,12 @@ var StackIcon = function StackIcon(_ref) {
565
565
  }));
566
566
  };
567
567
 
568
- StackIcon.propTypes = propTypes$d;
569
- StackIcon.defaultProps = defaultProps$d;
568
+ StackIcon.propTypes = propTypes$e;
569
+ StackIcon.defaultProps = defaultProps$e;
570
570
 
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"};
571
+ var styles$9 = {"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"};
572
572
 
573
- var propTypes$c = {
573
+ var propTypes$d = {
574
574
  url: PropTypes__default["default"].string,
575
575
  title: PropTypes__default["default"].string,
576
576
  opened: PropTypes__default["default"].bool,
@@ -578,7 +578,7 @@ var propTypes$c = {
578
578
  onShare: PropTypes__default["default"].func,
579
579
  onCancel: PropTypes__default["default"].func
580
580
  };
581
- var defaultProps$c = {
581
+ var defaultProps$d = {
582
582
  url: null,
583
583
  title: null,
584
584
  opened: false,
@@ -609,15 +609,15 @@ var ShareModal = function ShareModal(_ref) {
609
609
  }, [opened, onCancel]);
610
610
  hooks.useDocumentEvent('click', onDocumentClick, opened);
611
611
  return /*#__PURE__*/React__default["default"].createElement("div", {
612
- className: classNames__default["default"]([styles$8.container, (_ref3 = {}, _defineProperty__default["default"](_ref3, className, className), _defineProperty__default["default"](_ref3, styles$8.opened, opened), _ref3)]),
612
+ className: classNames__default["default"]([styles$9.container, (_ref3 = {}, _defineProperty__default["default"](_ref3, className, className), _defineProperty__default["default"](_ref3, styles$9.opened, opened), _ref3)]),
613
613
  "aria-hidden": opened ? null : '-1'
614
614
  }, /*#__PURE__*/React__default["default"].createElement("div", {
615
- className: styles$8.modal,
615
+ className: styles$9.modal,
616
616
  ref: modalRef
617
617
  }, /*#__PURE__*/React__default["default"].createElement("div", {
618
- className: styles$8.header
618
+ className: styles$9.header
619
619
  }, /*#__PURE__*/React__default["default"].createElement("h2", {
620
- className: styles$8.heading
620
+ className: styles$9.heading
621
621
  }, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
622
622
  id: "oL4ueH",
623
623
  defaultMessage: [{
@@ -625,16 +625,16 @@ var ShareModal = function ShareModal(_ref) {
625
625
  "value": "Share"
626
626
  }]
627
627
  })), /*#__PURE__*/React__default["default"].createElement(components.Button, {
628
- className: styles$8.close,
628
+ className: styles$9.close,
629
629
  onClick: onCancel,
630
630
  focusable: opened
631
631
  }, /*#__PURE__*/React__default["default"].createElement(components.Close, {
632
- className: styles$8.closeIcon,
632
+ className: styles$9.closeIcon,
633
633
  border: "none"
634
634
  }))), /*#__PURE__*/React__default["default"].createElement("div", {
635
- className: styles$8.content
635
+ className: styles$9.content
636
636
  }, /*#__PURE__*/React__default["default"].createElement(ShareOptions__default["default"], {
637
- className: styles$8.shareOptions,
637
+ className: styles$9.shareOptions,
638
638
  title: title,
639
639
  url: url,
640
640
  focusable: opened,
@@ -643,12 +643,12 @@ var ShareModal = function ShareModal(_ref) {
643
643
  }))));
644
644
  };
645
645
 
646
- ShareModal.propTypes = propTypes$c;
647
- ShareModal.defaultProps = defaultProps$c;
646
+ ShareModal.propTypes = propTypes$d;
647
+ ShareModal.defaultProps = defaultProps$d;
648
648
 
649
- var styles$7 = {"container":"micromag-viewer-partials-share-button-container"};
649
+ var styles$8 = {"container":"micromag-viewer-partials-share-button-container"};
650
650
 
651
- var propTypes$b = {
651
+ var propTypes$c = {
652
652
  title: PropTypes__default["default"].string,
653
653
  url: PropTypes__default["default"].string,
654
654
  className: PropTypes__default["default"].string,
@@ -657,7 +657,7 @@ var propTypes$b = {
657
657
  children: PropTypes__default["default"].node,
658
658
  focusable: PropTypes__default["default"].bool
659
659
  };
660
- var defaultProps$b = {
660
+ var defaultProps$c = {
661
661
  title: null,
662
662
  url: null,
663
663
  className: null,
@@ -698,7 +698,7 @@ var ShareButton = function ShareButton(_ref) {
698
698
  setStoryShareModalOpened(false);
699
699
  }, [setStoryShareModalOpened]);
700
700
  return /*#__PURE__*/React__default["default"].createElement("div", {
701
- className: classNames__default["default"]([styles$7.container, _defineProperty__default["default"]({}, className, className !== null)])
701
+ className: classNames__default["default"]([styles$8.container, _defineProperty__default["default"]({}, className, className !== null)])
702
702
  }, /*#__PURE__*/React__default["default"].createElement(components.Button, {
703
703
  className: classNames__default["default"]([_defineProperty__default["default"]({}, buttonClassName, buttonClassName !== null)]),
704
704
  onClick: onShareIconClick,
@@ -718,7 +718,7 @@ var ShareButton = function ShareButton(_ref) {
718
718
  }),
719
719
  focusable: focusable
720
720
  }, children), /*#__PURE__*/React__default["default"].createElement(ShareModal, {
721
- className: styles$7.shareModal,
721
+ className: styles$8.shareModal,
722
722
  opened: storyShareModalOpened,
723
723
  title: title,
724
724
  url: url,
@@ -727,12 +727,12 @@ var ShareButton = function ShareButton(_ref) {
727
727
  }));
728
728
  };
729
729
 
730
- ShareButton.propTypes = propTypes$b;
731
- ShareButton.defaultProps = defaultProps$b;
730
+ ShareButton.propTypes = propTypes$c;
731
+ ShareButton.defaultProps = defaultProps$c;
732
732
 
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"};
733
+ var styles$7 = {"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
734
 
735
- var propTypes$a = {
735
+ var propTypes$b = {
736
736
  viewerTheme: core$1.PropTypes.viewerTheme,
737
737
  screenSize: core$1.PropTypes.screenSize,
738
738
  menuWidth: PropTypes__default["default"].number,
@@ -750,7 +750,7 @@ var propTypes$a = {
750
750
  fullscreenEnabled: PropTypes__default["default"].bool,
751
751
  className: PropTypes__default["default"].string
752
752
  };
753
- var defaultProps$a = {
753
+ var defaultProps$b = {
754
754
  viewerTheme: null,
755
755
  screenSize: null,
756
756
  menuWidth: null,
@@ -876,36 +876,36 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
876
876
  return !focusable ? items.slice(0, 3) : items;
877
877
  }, [items, focusable]);
878
878
  return /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
879
- className: classNames__default["default"]([styles$6.container, _defineProperty__default["default"]({}, className, className !== null)]),
879
+ className: classNames__default["default"]([styles$7.container, _defineProperty__default["default"]({}, className, className !== null)]),
880
880
  style: _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, backgroundColorStyle), brandImageStyle), {}, {
881
881
  width: menuWidth
882
882
  }),
883
883
  "aria-hidden": focusable ? null : 'true'
884
884
  }, dragBind()), /*#__PURE__*/React__default["default"].createElement("div", {
885
- className: styles$6.header
885
+ className: styles$7.header
886
886
  }, brandLogoUrl !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
887
- className: styles$6.organisation,
887
+ className: styles$7.organisation,
888
888
  style: {
889
889
  backgroundImage: "url(".concat(brandLogoUrl, ")")
890
890
  }
891
891
  }) : null, /*#__PURE__*/React__default["default"].createElement("div", {
892
- className: styles$6.title,
892
+ className: styles$7.title,
893
893
  style: titleStyle
894
894
  }, title), /*#__PURE__*/React__default["default"].createElement("div", {
895
- className: styles$6.buttons,
895
+ className: styles$7.buttons,
896
896
  style: colorSecondaryColorStyle
897
897
  }, /*#__PURE__*/React__default["default"].createElement(ShareButton, {
898
- className: styles$6.shareButton,
899
- buttonClassName: styles$6.button,
898
+ className: styles$7.shareButton,
899
+ buttonClassName: styles$7.button,
900
900
  onShare: onShare,
901
901
  url: shareUrl,
902
902
  title: title,
903
903
  focusable: focusable
904
904
  }, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
905
- className: styles$6.icon,
905
+ className: styles$7.icon,
906
906
  icon: faShare.faShare
907
907
  })), fullscreenEnabled ? /*#__PURE__*/React__default["default"].createElement(components.Button, {
908
- className: styles$6.button,
908
+ className: styles$7.button,
909
909
  onClick: toggleFullscreen,
910
910
  title: intl.formatMessage({
911
911
  id: "AuxqcG",
@@ -923,10 +923,10 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
923
923
  }),
924
924
  focusable: focusable
925
925
  }, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
926
- className: styles$6.icon,
926
+ className: styles$7.icon,
927
927
  icon: fullscreenActive ? faCompress.faCompress : faExpand.faExpand
928
928
  })) : null, /*#__PURE__*/React__default["default"].createElement(components.Button, {
929
- className: styles$6.button,
929
+ className: styles$7.button,
930
930
  onClick: onClose,
931
931
  title: intl.formatMessage({
932
932
  id: "dj/p/q",
@@ -944,19 +944,19 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
944
944
  }),
945
945
  focusable: focusable
946
946
  }, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
947
- className: styles$6.icon,
947
+ className: styles$7.icon,
948
948
  icon: faTimes.faTimes
949
949
  })))), /*#__PURE__*/React__default["default"].createElement("div", {
950
- className: styles$6.content,
950
+ className: styles$7.content,
951
951
  ref: containerRef
952
952
  }, /*#__PURE__*/React__default["default"].createElement(Scroll__default["default"], {
953
- className: styles$6.scroll,
953
+ className: styles$7.scroll,
954
954
  onScrolledBottom: onScrolledBottom,
955
955
  onScrolledNotBottom: onScrolledNotBottom
956
956
  }, /*#__PURE__*/React__default["default"].createElement("nav", {
957
- className: styles$6.nav
957
+ className: styles$7.nav
958
958
  }, /*#__PURE__*/React__default["default"].createElement("ul", {
959
- className: styles$6.items
959
+ className: styles$7.items
960
960
  }, finalItems.map(function (item, index) {
961
961
  var screenId = item.screenId,
962
962
  _item$current = item.current,
@@ -983,22 +983,22 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
983
983
  }]
984
984
  })) : '');
985
985
  return /*#__PURE__*/React__default["default"].createElement("li", {
986
- className: classNames__default["default"]([styles$6.item, _defineProperty__default["default"]({}, styles$6.active, current)]),
986
+ className: classNames__default["default"]([styles$7.item, _defineProperty__default["default"]({}, styles$7.active, current)]),
987
987
  key: "item-".concat(screenId),
988
988
  style: {
989
989
  width: "".concat(100 / thumbsPerLine, "%")
990
990
  }
991
991
  }, /*#__PURE__*/React__default["default"].createElement("div", {
992
- className: styles$6.itemContent
992
+ className: styles$7.itemContent
993
993
  }, /*#__PURE__*/React__default["default"].createElement("div", {
994
- className: styles$6.screenContainer,
994
+ className: styles$7.screenContainer,
995
995
  ref: index === 0 ? firstScreenContainerRef : null
996
996
  }, count > 1 ? /*#__PURE__*/React__default["default"].createElement("div", {
997
- className: styles$6.subScreenBadge
997
+ className: styles$7.subScreenBadge
998
998
  }, /*#__PURE__*/React__default["default"].createElement("span", {
999
- className: styles$6.subScreenCount
999
+ className: styles$7.subScreenCount
1000
1000
  }, count), /*#__PURE__*/React__default["default"].createElement(StackIcon, {
1001
- className: styles$6.subScreenIcon
1001
+ className: styles$7.subScreenIcon
1002
1002
  })) : null, screenWidth > 0 && screenHeight > 0 ? /*#__PURE__*/React__default["default"].createElement(components.ScreenPreview, {
1003
1003
  screenWidth: screenWidth,
1004
1004
  screenHeight: screenHeight,
@@ -1008,11 +1008,11 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
1008
1008
  active: focusable,
1009
1009
  withSize: true
1010
1010
  }) : null, current ? /*#__PURE__*/React__default["default"].createElement("div", {
1011
- className: styles$6.activeScreenBorder,
1011
+ className: styles$7.activeScreenBorder,
1012
1012
  style: borderPrimaryColorStyle
1013
1013
  }) : null)), /*#__PURE__*/React__default["default"].createElement("button", {
1014
1014
  type: "button",
1015
- className: styles$6.screenButton,
1015
+ className: styles$7.screenButton,
1016
1016
  onClick: function onClick() {
1017
1017
  if (onClickItem !== null) {
1018
1018
  onClickItem(item);
@@ -1029,12 +1029,12 @@ var ViewerMenuPreview = function ViewerMenuPreview(_ref) {
1029
1029
  }))))));
1030
1030
  };
1031
1031
 
1032
- ViewerMenuPreview.propTypes = propTypes$a;
1033
- ViewerMenuPreview.defaultProps = defaultProps$a;
1032
+ ViewerMenuPreview.propTypes = propTypes$b;
1033
+ ViewerMenuPreview.defaultProps = defaultProps$b;
1034
1034
 
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"};
1035
+ var styles$6 = {"container":"micromag-viewer-container","menuPreview":"micromag-viewer-menuPreview","menuPreviewContainer":"micromag-viewer-menuPreviewContainer","screenContainer":"micromag-viewer-screenContainer","screen":"micromag-viewer-screen","content":"micromag-viewer-content","menuDotsContainer":"micromag-viewer-menuDotsContainer","menuDots":"micromag-viewer-menuDots","navButton":"micromag-viewer-navButton","previous":"micromag-viewer-previous","next":"micromag-viewer-next","current":"micromag-viewer-current","landscape":"micromag-viewer-landscape","visible":"micromag-viewer-visible","withSiblings":"micromag-viewer-withSiblings","playbackControlsContainer":"micromag-viewer-playbackControlsContainer","playbackControls":"micromag-viewer-playbackControls","webView":"micromag-viewer-webView","hideMenu":"micromag-viewer-hideMenu","ready":"micromag-viewer-ready"};
1036
1036
 
1037
- var propTypes$9 = {
1037
+ var propTypes$a = {
1038
1038
  story: core$1.PropTypes.story.isRequired,
1039
1039
  currentScreenIndex: PropTypes__default["default"].number,
1040
1040
  opened: PropTypes__default["default"].bool,
@@ -1060,7 +1060,7 @@ var propTypes$9 = {
1060
1060
 
1061
1061
  })
1062
1062
  };
1063
- var defaultProps$9 = {
1063
+ var defaultProps$a = {
1064
1064
  currentScreenIndex: 0,
1065
1065
  opened: false,
1066
1066
  toggleFullscreen: null,
@@ -1275,7 +1275,7 @@ var ViewerMenu = function ViewerMenu(_ref) {
1275
1275
  menuTheme = _ref6$menuTheme === void 0 ? null : _ref6$menuTheme;
1276
1276
 
1277
1277
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
1278
- className: styles$5.menuDotsContainer,
1278
+ className: styles$6.menuDotsContainer,
1279
1279
  ref: refDots,
1280
1280
  style: {
1281
1281
  width: menuWidth
@@ -1290,16 +1290,16 @@ var ViewerMenu = function ViewerMenu(_ref) {
1290
1290
  withItemClick: withDotItemClick,
1291
1291
  withoutScreensMenu: withoutScreensMenu,
1292
1292
  onClose: onClickCloseViewer,
1293
- className: styles$5.menuDots
1293
+ className: styles$6.menuDots
1294
1294
  }))), /*#__PURE__*/React__default["default"].createElement(web.animated.div, {
1295
- className: styles$5.menuPreviewContainer,
1295
+ className: styles$6.menuPreviewContainer,
1296
1296
  style: menuPreviewStyle,
1297
1297
  ref: menuPreviewContainerRef
1298
1298
  }, /*#__PURE__*/React__default["default"].createElement(ViewerMenuPreview, {
1299
1299
  viewerTheme: viewerTheme,
1300
1300
  title: title,
1301
1301
  shareUrl: shareUrl,
1302
- className: styles$5.menuPreview,
1302
+ className: styles$6.menuPreview,
1303
1303
  screenSize: screenSize,
1304
1304
  menuWidth: menuWidth,
1305
1305
  focusable: opened,
@@ -1313,40 +1313,111 @@ var ViewerMenu = function ViewerMenu(_ref) {
1313
1313
  })));
1314
1314
  };
1315
1315
 
1316
- ViewerMenu.propTypes = propTypes$9;
1317
- ViewerMenu.defaultProps = defaultProps$9;
1316
+ ViewerMenu.propTypes = propTypes$a;
1317
+ ViewerMenu.defaultProps = defaultProps$a;
1318
+
1319
+ var styles$5 = {"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"};
1320
+
1321
+ var propTypes$9 = {
1322
+ color: PropTypes__default["default"].string,
1323
+ className: PropTypes__default["default"].string
1324
+ };
1325
+ var defaultProps$9 = {
1326
+ color: 'currentColor',
1327
+ className: null
1328
+ };
1329
+
1330
+ var HandIcon = function HandIcon(_ref) {
1331
+ var color = _ref.color,
1332
+ className = _ref.className;
1333
+ return /*#__PURE__*/React__default["default"].createElement("svg", {
1334
+ className: className,
1335
+ xmlns: "http://www.w3.org/2000/svg",
1336
+ viewBox: "0 0 367.24 482.87"
1337
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
1338
+ d: "M488.84,255.91a44.68,44.68,0,0,0-19.15,4.3A44.77,44.77,0,0,0,406,226.49a44.75,44.75,0,0,0-62.67-32.66V105.4a44.81,44.81,0,1,0-89.61,0V265.17l-1.15-2.7a44.78,44.78,0,1,0-82.84,34.06l64.87,157.76.34.73a156.29,156.29,0,0,0,141.42,88.44c86.7,0,157.24-70.53,157.24-157.26V300.7a44.82,44.82,0,0,0-44.78-44.79ZM507.46,386.2c0,72.3-58.78,131.1-131.07,131.1a130.29,130.29,0,0,1-117.73-73.36L193.93,286.61a18.64,18.64,0,1,1,34.53-14.07L279.91,394V105.4a18.64,18.64,0,1,1,37.28,0v196a13.08,13.08,0,0,0,26.16,0V234.56a18.64,18.64,0,0,1,37.27,0v89.95a13.07,13.07,0,1,0,26.13,0V266.86a18.64,18.64,0,1,1,37.28,0v80.71h0s0,.08,0,.11a13.08,13.08,0,0,0,26.15,0v-47a18.63,18.63,0,1,1,37.26,0v85.5Z",
1339
+ transform: "translate(-166.38 -60.59)",
1340
+ fill: color,
1341
+ fillRule: "evenodd"
1342
+ }));
1343
+ };
1318
1344
 
1319
- var styles$4 = {"container":"micromag-viewer-screen-container","current":"micromag-viewer-screen-current"};
1345
+ HandIcon.propTypes = propTypes$9;
1346
+ HandIcon.defaultProps = defaultProps$9;
1320
1347
 
1321
1348
  var propTypes$8 = {
1349
+ className: PropTypes__default["default"].string
1350
+ };
1351
+ var defaultProps$8 = {
1352
+ className: null
1353
+ };
1354
+
1355
+ var HandTap = function HandTap(_ref) {
1356
+ var className = _ref.className;
1357
+ return /*#__PURE__*/React__default["default"].createElement("div", {
1358
+ className: classNames__default["default"]([styles$5.container, _defineProperty__default["default"]({}, className, className !== null)])
1359
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
1360
+ className: styles$5.inner
1361
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
1362
+ className: styles$5.circle
1363
+ }), /*#__PURE__*/React__default["default"].createElement(HandIcon, {
1364
+ className: styles$5.hand
1365
+ })));
1366
+ };
1367
+
1368
+ HandTap.propTypes = propTypes$8;
1369
+ HandTap.defaultProps = defaultProps$8;
1370
+
1371
+ var styles$4 = {"container":"micromag-viewer-screen-container","handTap":"micromag-viewer-screen-handTap"};
1372
+
1373
+ var propTypes$7 = {
1322
1374
  screen: core$1.PropTypes.screenComponent,
1323
1375
  renderContext: core$1.PropTypes.renderContext,
1324
1376
  screenState: PropTypes__default["default"].string,
1325
1377
  current: PropTypes__default["default"].bool,
1326
1378
  active: PropTypes__default["default"].bool,
1327
- mediaRef: PropTypes__default["default"].func
1379
+ mediaRef: PropTypes__default["default"].func,
1380
+ width: PropTypes__default["default"].number,
1381
+ height: PropTypes__default["default"].number,
1382
+ scale: PropTypes__default["default"].number,
1383
+ withNavigationHint: PropTypes__default["default"].func,
1384
+ className: PropTypes__default["default"].string
1328
1385
  };
1329
- var defaultProps$8 = {
1386
+ var defaultProps$7 = {
1330
1387
  screen: null,
1331
1388
  renderContext: null,
1332
1389
  screenState: null,
1333
1390
  current: false,
1334
1391
  active: true,
1335
- mediaRef: null
1392
+ mediaRef: null,
1393
+ width: null,
1394
+ height: null,
1395
+ scale: null,
1396
+ withNavigationHint: false,
1397
+ className: null
1336
1398
  };
1337
1399
 
1338
- var ViewerScreen = function ViewerScreen(_ref) {
1339
- var _ref2;
1340
-
1400
+ function ViewerScreen(_ref) {
1341
1401
  var screen = _ref.screen,
1342
1402
  renderContext = _ref.renderContext,
1343
1403
  screenState = _ref.screenState,
1344
1404
  active = _ref.active,
1345
1405
  current = _ref.current,
1346
- mediaRef = _ref.mediaRef;
1347
- return screen !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
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)]),
1349
- "aria-hidden": current ? null : 'true'
1406
+ mediaRef = _ref.mediaRef,
1407
+ width = _ref.width,
1408
+ height = _ref.height,
1409
+ scale = _ref.scale,
1410
+ withNavigationHint = _ref.withNavigationHint,
1411
+ className = _ref.className;
1412
+ return /*#__PURE__*/React__default["default"].createElement("div", {
1413
+ className: classNames__default["default"]([styles$4.container, _defineProperty__default["default"]({}, className, className !== null)])
1414
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
1415
+ style: {
1416
+ width: width,
1417
+ height: height,
1418
+ transform: scale !== null ? "scale(".concat(scale, ")") : null,
1419
+ transformOrigin: scale !== null ? '0 0' : null
1420
+ }
1350
1421
  }, /*#__PURE__*/React__default["default"].createElement(components.Screen, {
1351
1422
  screen: screen,
1352
1423
  renderContext: renderContext,
@@ -1354,63 +1425,57 @@ var ViewerScreen = function ViewerScreen(_ref) {
1354
1425
  active: active,
1355
1426
  current: current,
1356
1427
  mediaRef: mediaRef
1357
- })) : null;
1358
- };
1359
-
1360
- ViewerScreen.propTypes = propTypes$8;
1361
- ViewerScreen.defaultProps = defaultProps$8;
1362
-
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"};
1364
-
1365
- var propTypes$7 = {
1366
- color: PropTypes__default["default"].string,
1367
- className: PropTypes__default["default"].string
1368
- };
1369
- var defaultProps$7 = {
1370
- color: 'currentColor',
1371
- className: null
1372
- };
1428
+ })), withNavigationHint ? /*#__PURE__*/React__default["default"].createElement(HandTap, {
1429
+ className: styles$4.handTap
1430
+ }) : null);
1431
+ }
1373
1432
 
1374
- var HandIcon = function HandIcon(_ref) {
1375
- var color = _ref.color,
1376
- className = _ref.className;
1377
- return /*#__PURE__*/React__default["default"].createElement("svg", {
1378
- className: className,
1379
- xmlns: "http://www.w3.org/2000/svg",
1380
- viewBox: "0 0 367.24 482.87"
1381
- }, /*#__PURE__*/React__default["default"].createElement("path", {
1382
- d: "M488.84,255.91a44.68,44.68,0,0,0-19.15,4.3A44.77,44.77,0,0,0,406,226.49a44.75,44.75,0,0,0-62.67-32.66V105.4a44.81,44.81,0,1,0-89.61,0V265.17l-1.15-2.7a44.78,44.78,0,1,0-82.84,34.06l64.87,157.76.34.73a156.29,156.29,0,0,0,141.42,88.44c86.7,0,157.24-70.53,157.24-157.26V300.7a44.82,44.82,0,0,0-44.78-44.79ZM507.46,386.2c0,72.3-58.78,131.1-131.07,131.1a130.29,130.29,0,0,1-117.73-73.36L193.93,286.61a18.64,18.64,0,1,1,34.53-14.07L279.91,394V105.4a18.64,18.64,0,1,1,37.28,0v196a13.08,13.08,0,0,0,26.16,0V234.56a18.64,18.64,0,0,1,37.27,0v89.95a13.07,13.07,0,1,0,26.13,0V266.86a18.64,18.64,0,1,1,37.28,0v80.71h0s0,.08,0,.11a13.08,13.08,0,0,0,26.15,0v-47a18.63,18.63,0,1,1,37.26,0v85.5Z",
1383
- transform: "translate(-166.38 -60.59)",
1384
- fill: color,
1385
- fillRule: "evenodd"
1386
- }));
1387
- };
1433
+ ViewerScreen.propTypes = propTypes$7;
1434
+ ViewerScreen.defaultProps = defaultProps$7;
1388
1435
 
1389
- HandIcon.propTypes = propTypes$7;
1390
- HandIcon.defaultProps = defaultProps$7;
1436
+ var styles$3 = {"container":"micromag-viewer-partials-navigation-button-container"};
1391
1437
 
1392
1438
  var propTypes$6 = {
1439
+ direction: PropTypes__default["default"].oneOf(['previous', 'next']),
1440
+ onClick: null,
1393
1441
  className: PropTypes__default["default"].string
1394
1442
  };
1395
1443
  var defaultProps$6 = {
1444
+ direction: 'next',
1445
+ onClick: null,
1396
1446
  className: null
1397
1447
  };
1398
1448
 
1399
- var HandTap = function HandTap(_ref) {
1400
- var className = _ref.className;
1401
- return /*#__PURE__*/React__default["default"].createElement("div", {
1402
- className: classNames__default["default"]([styles$3.container, _defineProperty__default["default"]({}, className, className !== null)])
1403
- }, /*#__PURE__*/React__default["default"].createElement("div", {
1404
- className: styles$3.inner
1405
- }, /*#__PURE__*/React__default["default"].createElement("div", {
1406
- className: styles$3.circle
1407
- }), /*#__PURE__*/React__default["default"].createElement(HandIcon, {
1408
- className: styles$3.hand
1449
+ var NavigationButton = function NavigationButton(_ref) {
1450
+ var direction = _ref.direction,
1451
+ onClick = _ref.onClick,
1452
+ className = _ref.className;
1453
+ return /*#__PURE__*/React__default["default"].createElement("button", {
1454
+ type: "button",
1455
+ className: classNames__default["default"]([styles$3.container, _defineProperty__default["default"]({}, className, className !== null)]),
1456
+ onClick: onClick
1457
+ }, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
1458
+ className: styles$3.arrow,
1459
+ icon: direction === 'previous' ? faArrowLeft.faArrowLeft : faArrowRight.faArrowRight
1460
+ }), /*#__PURE__*/React__default["default"].createElement("span", {
1461
+ className: "sr-only"
1462
+ }, direction === 'previous' ? /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
1463
+ id: "zYH/31",
1464
+ defaultMessage: [{
1465
+ "type": 0,
1466
+ "value": "Go to previous screen"
1467
+ }]
1468
+ }) : /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
1469
+ id: "v9bqYj",
1470
+ defaultMessage: [{
1471
+ "type": 0,
1472
+ "value": "Go to next screen"
1473
+ }]
1409
1474
  })));
1410
1475
  };
1411
1476
 
1412
- HandTap.propTypes = propTypes$6;
1413
- HandTap.defaultProps = defaultProps$6;
1477
+ NavigationButton.propTypes = propTypes$6;
1478
+ NavigationButton.defaultProps = defaultProps$6;
1414
1479
 
1415
1480
  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
1481
 
@@ -1546,16 +1611,19 @@ SeekBar.defaultProps = defaultProps$5;
1546
1611
  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","withSeekBarOnly":"micromag-viewer-partials-playback-controls-withSeekBarOnly","withSeekBar":"micromag-viewer-partials-playback-controls-withSeekBar"};
1547
1612
 
1548
1613
  var propTypes$4 = {
1549
- className: PropTypes__default["default"].string
1614
+ className: PropTypes__default["default"].string,
1615
+ collapsedClassName: PropTypes__default["default"].string
1550
1616
  };
1551
1617
  var defaultProps$4 = {
1552
- className: null
1618
+ className: null,
1619
+ collapsedClassName: null
1553
1620
  };
1554
1621
 
1555
1622
  function PlaybackControls(_ref) {
1556
1623
  var _ref4;
1557
1624
 
1558
- var className = _ref.className;
1625
+ var className = _ref.className,
1626
+ collapsedClassName = _ref.collapsedClassName;
1559
1627
  var intl = reactIntl.useIntl();
1560
1628
 
1561
1629
  var _usePlaybackContext = contexts.usePlaybackContext(),
@@ -1654,7 +1722,7 @@ function PlaybackControls(_ref) {
1654
1722
 
1655
1723
  var isCollapsed = controls && !controlsVisible && playing || !controls && mediaHasAudio;
1656
1724
  return /*#__PURE__*/React__default["default"].createElement("div", {
1657
- 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, mediaHasAudio || controls), _defineProperty__default["default"](_ref4, styles$1.withSeekBar, controls), _defineProperty__default["default"](_ref4, styles$1.withSeekBarOnly, seekBarOnly), _defineProperty__default["default"](_ref4, styles$1.isCollapsed, isCollapsed), _ref4)])
1725
+ 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, mediaHasAudio || controls), _defineProperty__default["default"](_ref4, styles$1.withSeekBar, controls), _defineProperty__default["default"](_ref4, styles$1.withSeekBarOnly, seekBarOnly), _defineProperty__default["default"](_ref4, styles$1.isCollapsed, isCollapsed), _defineProperty__default["default"](_ref4, collapsedClassName, collapsedClassName !== null && isCollapsed), _ref4)])
1658
1726
  }, /*#__PURE__*/React__default["default"].createElement("button", {
1659
1727
  type: "button",
1660
1728
  className: styles$1.playPauseButton,
@@ -1753,32 +1821,46 @@ function WebViewContainer(_ref) {
1753
1821
  disableInteraction = _useViewerInteraction.disableInteraction,
1754
1822
  enableInteraction = _useViewerInteraction.enableInteraction;
1755
1823
 
1824
+ var _usePlaybackContext = contexts.usePlaybackContext(),
1825
+ playing = _usePlaybackContext.playing,
1826
+ setPlaying = _usePlaybackContext.setPlaying;
1827
+
1828
+ var wasPlayingRef = React.useRef(playing);
1829
+
1756
1830
  var _useState = React.useState(url),
1757
1831
  _useState2 = _slicedToArray__default["default"](_useState, 2),
1758
1832
  currentUrl = _useState2[0],
1759
- setCurrentUrl = _useState2[1];
1833
+ setCurrentUrl = _useState2[1]; // Handle current webview url
1834
+
1760
1835
 
1761
1836
  React.useEffect(function () {
1762
1837
  if (url !== null) {
1763
1838
  setCurrentUrl(url);
1764
1839
  }
1765
1840
  }, [url, setCurrentUrl]);
1841
+ var onTransitionEnd = React.useCallback(function () {
1842
+ if (url === null) {
1843
+ setCurrentUrl(null);
1844
+ }
1845
+ }, [url]); // Disable interaction and pause playback
1846
+
1766
1847
  React.useEffect(function () {
1767
1848
  if (opened) {
1768
1849
  disableInteraction();
1850
+ wasPlayingRef.current = playing;
1851
+
1852
+ if (playing) {
1853
+ setPlaying(false);
1854
+ }
1769
1855
  } else {
1770
1856
  enableInteraction();
1771
- }
1772
1857
 
1773
- return function () {
1774
- enableInteraction();
1775
- };
1776
- }, [opened]);
1777
- var onTransitionEnd = React.useCallback(function () {
1778
- if (url === null) {
1779
- setCurrentUrl(null);
1858
+ if (wasPlayingRef.current && !playing) {
1859
+ wasPlayingRef.current = false;
1860
+ setPlaying(true);
1861
+ }
1780
1862
  }
1781
- }, [url]);
1863
+ }, [opened]);
1782
1864
  return /*#__PURE__*/React__default["default"].createElement("div", {
1783
1865
  className: classNames__default["default"]([styles.container, (_ref2 = {}, _defineProperty__default["default"](_ref2, styles.opened, opened), _defineProperty__default["default"](_ref2, className, className !== null), _ref2)]),
1784
1866
  style: style,
@@ -1872,7 +1954,7 @@ var defaultProps$2 = {
1872
1954
  };
1873
1955
 
1874
1956
  var Viewer = function Viewer(_ref) {
1875
- var _ref14;
1957
+ var _ref15;
1876
1958
 
1877
1959
  var story = _ref.story,
1878
1960
  basePath = _ref.basePath,
@@ -2016,7 +2098,7 @@ var Viewer = function Viewer(_ref) {
2016
2098
  }
2017
2099
 
2018
2100
  if (currentScreenMedia !== null) {
2019
- currentScreenMedia.current = screensMediasRef.current[index];
2101
+ currentScreenMedia.current = screensMediasRef.current[index] || null;
2020
2102
  }
2021
2103
 
2022
2104
  if (onScreenChange !== null) {
@@ -2032,12 +2114,11 @@ var Viewer = function Viewer(_ref) {
2032
2114
  }
2033
2115
  }, [currentScreen, trackScreenView, trackingEnabled]); // Handle interaction enable
2034
2116
 
2035
- var currentScreenRef = React.useRef(null);
2036
2117
  var gotoPreviousScreen = React.useCallback(function () {
2037
- changeIndex(Math.max(0, screenIndex - 1)); // currentScreenRef.current.focus();
2118
+ changeIndex(Math.max(0, screenIndex - 1));
2038
2119
  }, [changeIndex]);
2039
2120
  var gotoNextScreen = React.useCallback(function () {
2040
- changeIndex(Math.min(screens.length - 1, screenIndex + 1)); // currentScreenRef.current.focus();
2121
+ changeIndex(Math.min(screens.length - 1, screenIndex + 1));
2041
2122
  }, [changeIndex]);
2042
2123
  var screensCount = screens.length;
2043
2124
 
@@ -2151,8 +2232,10 @@ var Viewer = function Viewer(_ref) {
2151
2232
  var dragContentBind = react.useDrag(onDragContent, {
2152
2233
  filterTaps: true
2153
2234
  });
2154
- var onScreenKeyUp = React.useCallback(function (e, i) {
2155
- if (e.key === 'Enter' && withLandscapeSiblingsScreens && landscape && i !== screenIndex) {
2235
+ var onScreenKeyUp = React.useCallback(function (_ref9, i) {
2236
+ var key = _ref9.key;
2237
+
2238
+ if (key === 'Enter' && withLandscapeSiblingsScreens && landscape && i !== screenIndex) {
2156
2239
  changeIndex(i);
2157
2240
  }
2158
2241
  }, [withLandscapeSiblingsScreens, changeIndex, landscape, screenIndex]); // swipe menu open
@@ -2174,11 +2257,11 @@ var Viewer = function Viewer(_ref) {
2174
2257
  onInteractionPrivate();
2175
2258
  setMenuOpened(true);
2176
2259
  }, [changeIndex, onInteractionPrivate, setMenuOpened]);
2177
- var onClickMenuItem = React.useCallback(function (_ref9) {
2178
- var itemScreenId = _ref9.screenId;
2260
+ var onClickMenuItem = React.useCallback(function (_ref10) {
2261
+ var itemScreenId = _ref10.screenId;
2179
2262
  onInteractionPrivate();
2180
- var index = screens.findIndex(function (_ref10) {
2181
- var id = _ref10.id;
2263
+ var index = screens.findIndex(function (_ref11) {
2264
+ var id = _ref11.id;
2182
2265
  return id === itemScreenId;
2183
2266
  });
2184
2267
  changeIndex(index);
@@ -2231,24 +2314,24 @@ var Viewer = function Viewer(_ref) {
2231
2314
  disabled: renderContext !== 'view'
2232
2315
  });
2233
2316
 
2234
- var _ref11 = currentScreen || {},
2235
- screenParameters = _ref11.parameters;
2317
+ var _ref12 = currentScreen || {},
2318
+ screenParameters = _ref12.parameters;
2236
2319
 
2237
- var _ref12 = screenParameters || {},
2238
- screenMetadata = _ref12.metadata;
2320
+ var _ref13 = screenParameters || {},
2321
+ screenMetadata = _ref13.metadata;
2239
2322
 
2240
- var _ref13 = screenMetadata || {},
2241
- _ref13$title = _ref13.title,
2242
- screenTitle = _ref13$title === void 0 ? null : _ref13$title,
2243
- _ref13$description = _ref13.description,
2244
- screenDescription = _ref13$description === void 0 ? null : _ref13$description;
2323
+ var _ref14 = screenMetadata || {},
2324
+ _ref14$title = _ref14.title,
2325
+ screenTitle = _ref14$title === void 0 ? null : _ref14$title,
2326
+ _ref14$description = _ref14.description,
2327
+ screenDescription = _ref14$description === void 0 ? null : _ref14$description;
2245
2328
 
2246
2329
  var finalTitle = screenTitle !== null ? screenTitle : title;
2247
2330
  var finalMetadata = React.useMemo(function () {
2248
2331
  return screenDescription !== null ? _objectSpread__default["default"](_objectSpread__default["default"]({}, metadata), {}, {
2249
2332
  description: screenDescription
2250
2333
  }) : metadata;
2251
- }, [metadata]); // Get element height
2334
+ }, [metadata, screenDescription]); // Get element height
2252
2335
 
2253
2336
  var _useDimensionObserver = hooks.useDimensionObserver(),
2254
2337
  menuDotsContainerRef = _useDimensionObserver.ref,
@@ -2297,9 +2380,9 @@ var Viewer = function Viewer(_ref) {
2297
2380
  }, overscrollStyle) : /*#__PURE__*/React__default["default"].createElement(reactHelmet.Helmet, null, overscrollStyle), /*#__PURE__*/React__default["default"].createElement(components.FontFaces, {
2298
2381
  fonts: finalFonts
2299
2382
  }), /*#__PURE__*/React__default["default"].createElement("div", {
2300
- className: classNames__default["default"]([styles$5.container, screenSize.screens.map(function (screenName) {
2383
+ className: classNames__default["default"]([styles$6.container, screenSize.screens.map(function (screenName) {
2301
2384
  return "story-screen-".concat(screenName);
2302
- }), (_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)]),
2385
+ }), (_ref15 = {}, _defineProperty__default["default"](_ref15, styles$6.landscape, landscape), _defineProperty__default["default"](_ref15, styles$6.withSiblings, withLandscapeSiblingsScreens), _defineProperty__default["default"](_ref15, styles$6.hideMenu, !menuVisible), _defineProperty__default["default"](_ref15, styles$6.ready, ready || withoutScreensTransforms), _defineProperty__default["default"](_ref15, styles$6.hasInteracted, hasInteracted), _defineProperty__default["default"](_ref15, className, className), _ref15)]),
2303
2386
  ref: containerRef,
2304
2387
  onContextMenu: onContextMenu
2305
2388
  }, !withoutMenu ? /*#__PURE__*/React__default["default"].createElement(ViewerMenu, {
@@ -2325,25 +2408,13 @@ var Viewer = function Viewer(_ref) {
2325
2408
  refDots: menuDotsContainerRef
2326
2409
  }) : null, ready || withoutScreensTransforms ? /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
2327
2410
  ref: contentRef,
2328
- className: styles$5.content
2329
- }, dragContentBind()), mountedScreens.map(function (scr, mountedIndex) {
2330
- var _ref15;
2411
+ className: styles$6.content
2412
+ }, dragContentBind()), mountedScreens.map(function (mountedScreen, mountedIndex) {
2413
+ var _ref16;
2331
2414
 
2332
2415
  var i = mountedScreenStartIndex + mountedIndex;
2333
2416
  var current = i === parseInt(screenIndex, 10);
2334
2417
  var active = i >= screenIndex - neighborScreensActive && i <= screenIndex + neighborScreensActive;
2335
- var viewerScreen = /*#__PURE__*/React__default["default"].createElement(ViewerScreen, {
2336
- screen: scr,
2337
- screenState: current ? screenState : null,
2338
- renderContext: renderContext,
2339
- index: i,
2340
- current: current,
2341
- active: active,
2342
- mediaRef: function mediaRef(ref) {
2343
- screensMediasRef.current[i] = ref;
2344
- }
2345
- });
2346
- var key = "screen-viewer-".concat(scr.id || '', "-").concat(i + 1);
2347
2418
  var screenTransform = null;
2348
2419
 
2349
2420
  if (landscape) {
@@ -2353,21 +2424,17 @@ var Viewer = function Viewer(_ref) {
2353
2424
  }
2354
2425
 
2355
2426
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, {
2356
- key: key
2427
+ key: "screen-viewer-".concat(mountedScreen.id || '', "-").concat(i + 1)
2357
2428
  }, /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
2358
- ref: current ? currentScreenRef : null,
2359
2429
  style: {
2360
- // width: landscape ? screenWidth : null,
2361
- // height: landscape ? screenHeight : null,
2362
2430
  width: screenContainerWidth,
2363
2431
  height: screenContainerHeight,
2364
2432
  transform: !withoutScreensTransforms ? screenTransform : null
2365
2433
  },
2366
- 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)]),
2367
- tabIndex: active ? '0' : '-1'
2368
- /* eslint-disable-line */
2434
+ className: classNames__default["default"]([styles$6.screenContainer, (_ref16 = {}, _defineProperty__default["default"](_ref16, styles$6.current, current), _defineProperty__default["default"](_ref16, styles$6.visible, current || withLandscapeSiblingsScreens), _ref16)]) // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
2369
2435
  ,
2370
- "aria-hidden": current ? null : 'true',
2436
+ tabIndex: !active ? -1 : null,
2437
+ "aria-hidden": !current,
2371
2438
  "aria-label": intl.formatMessage({
2372
2439
  id: "LkVfwW",
2373
2440
  defaultMessage: [{
@@ -2383,67 +2450,42 @@ var Viewer = function Viewer(_ref) {
2383
2450
  onKeyUp: function onKeyUp(e) {
2384
2451
  return onScreenKeyUp(e, i);
2385
2452
  }
2386
- }, dragScreenBind(i)), /*#__PURE__*/React__default["default"].createElement("div", {
2387
- className: styles$5.scaler,
2388
- style: {
2389
- width: screenWidth,
2390
- height: screenHeight,
2391
- transform: screenScale !== null ? "scale(".concat(screenScale, ")") : null,
2392
- transformOrigin: screenScale !== null ? '0 0' : null
2393
- }
2394
- }, current && screenIndex > 0 ? /*#__PURE__*/React__default["default"].createElement("button", {
2395
- type: "button",
2396
- className: classNames__default["default"]([styles$5.navButton, styles$5.previous]),
2453
+ }, dragScreenBind(i)), current && screenIndex > 0 ? /*#__PURE__*/React__default["default"].createElement(NavigationButton, {
2454
+ direction: "previous",
2455
+ className: classNames__default["default"]([styles$6.navButton, styles$6.previous]),
2397
2456
  onClick: gotoPreviousScreen
2398
- }, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
2399
- className: styles$5.arrow,
2400
- icon: faArrowLeft.faArrowLeft
2401
- }), /*#__PURE__*/React__default["default"].createElement("span", {
2402
- className: "sr-only"
2403
- }, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
2404
- id: "zYH/31",
2405
- defaultMessage: [{
2406
- "type": 0,
2407
- "value": "Go to previous screen"
2408
- }]
2409
- }))) : null, viewerScreen, current && screenIndex < screens.length - 1 ? /*#__PURE__*/React__default["default"].createElement("button", {
2410
- type: "button",
2411
- className: classNames__default["default"]([styles$5.navButton, styles$5.next]),
2457
+ }) : null, mountedScreen !== null ? /*#__PURE__*/React__default["default"].createElement(ViewerScreen, {
2458
+ className: styles$6.screen,
2459
+ screen: mountedScreen,
2460
+ screenState: current ? screenState : null,
2461
+ renderContext: renderContext,
2462
+ index: i,
2463
+ current: current,
2464
+ active: active,
2465
+ mediaRef: function mediaRef(ref) {
2466
+ screensMediasRef.current[i] = ref;
2467
+ },
2468
+ width: screenWidth,
2469
+ height: screenHeight,
2470
+ scale: screenScale,
2471
+ withNavigationHint: withNavigationHint && !withLandscapeSiblingsScreens && current && screenIndex === 0 && !hasInteracted
2472
+ }) : null, current && screenIndex < screens.length - 1 ? /*#__PURE__*/React__default["default"].createElement(NavigationButton, {
2473
+ direction: "next",
2474
+ className: classNames__default["default"]([styles$6.navButton, styles$6.next]),
2412
2475
  onClick: gotoNextScreen
2413
- }, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
2414
- className: styles$5.arrow,
2415
- icon: faArrowRight.faArrowRight
2416
- }), /*#__PURE__*/React__default["default"].createElement("span", {
2417
- className: "sr-only"
2418
- }, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
2419
- id: "v9bqYj",
2420
- defaultMessage: [{
2421
- "type": 0,
2422
- "value": "Go to next screen"
2423
- }]
2424
- })), /*#__PURE__*/React__default["default"].createElement("span", {
2425
- className: "sr-only"
2426
- }, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
2427
- id: "v9bqYj",
2428
- defaultMessage: [{
2429
- "type": 0,
2430
- "value": "Go to next screen"
2431
- }]
2432
- }))) : null), withNavigationHint && !withLandscapeSiblingsScreens && current && screenIndex === 0 ? /*#__PURE__*/React__default["default"].createElement(HandTap, {
2433
- className: styles$5.handTap
2434
2476
  }) : null));
2435
2477
  }), /*#__PURE__*/React__default["default"].createElement("div", {
2436
- className: classNames__default["default"]([styles$5.playbackControls, _defineProperty__default["default"]({}, styles$5.isCollapsed, playbackControls && !playbackcontrolsVisible && playing)]),
2478
+ className: styles$6.playbackControls,
2437
2479
  ref: playbackControlsContainerRef
2438
2480
  }, /*#__PURE__*/React__default["default"].createElement("div", {
2439
- className: styles$5.playbackControlsContainer,
2481
+ className: styles$6.playbackControlsContainer,
2440
2482
  style: {
2441
2483
  width: screenContainerWidth
2442
2484
  }
2443
2485
  }, /*#__PURE__*/React__default["default"].createElement(PlaybackControls, {
2444
- className: styles$5.controls
2486
+ className: styles$6.controls
2445
2487
  })))) : null, /*#__PURE__*/React__default["default"].createElement(WebViewContainer, {
2446
- className: styles$5.webView,
2488
+ className: styles$6.webView,
2447
2489
  style: {
2448
2490
  maxWidth: Math.max(screenContainerWidth, 600)
2449
2491
  }