@micromag/viewer 0.3.191 → 0.3.194

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.
Files changed (3) hide show
  1. package/es/index.js +23 -19
  2. package/lib/index.js +22 -18
  3. package/package.json +10 -10
package/es/index.js CHANGED
@@ -5,7 +5,7 @@ import React, { useEffect, useState, useCallback, useMemo, useRef } from 'react'
5
5
  import { Switch, Route, MemoryRouter } from 'react-router';
6
6
  import { Link, BrowserRouter } from 'react-router-dom';
7
7
  import { PropTypes as PropTypes$1 } from '@micromag/core';
8
- import { usePlaybackContext, useViewerWebView, useViewerInteraction, VisitorProvider, ScreenSizeProvider, ViewerProvider, useRoutes, useRoutePush, GoogleKeysProvider, GoogleMapsClientProvider, FieldsProvider, ComponentsProvider, SCREENS_NAMESPACE, UserInteractionProvider, PlaybackProvider, TrackingProvider, RoutesProvider } from '@micromag/core/contexts';
8
+ import { useViewerSize, usePlaybackContext, useViewerWebView, useViewerInteraction, VisitorProvider, ScreenSizeProvider, ViewerProvider, useRoutes, useRoutePush, GoogleKeysProvider, GoogleMapsClientProvider, FieldsProvider, ComponentsProvider, SCREENS_NAMESPACE, UserInteractionProvider, PlaybackProvider, TrackingProvider, RoutesProvider } from '@micromag/core/contexts';
9
9
  import fieldsManager from '@micromag/fields/manager';
10
10
  import { IntlProvider } from '@micromag/intl';
11
11
  import { ScreensProvider } from '@micromag/screens';
@@ -1372,6 +1372,9 @@ var ViewerMenu = function ViewerMenu(_ref) {
1372
1372
  _ref4$menuTheme = _ref4.menuTheme,
1373
1373
  menuTheme = _ref4$menuTheme === void 0 ? null : _ref4$menuTheme;
1374
1374
 
1375
+ var _useViewerSize = useViewerSize(),
1376
+ viewerHeight = _useViewerSize.height;
1377
+
1375
1378
  var _useState = useState(false),
1376
1379
  _useState2 = _slicedToArray(_useState, 2),
1377
1380
  menuOpened = _useState2[0],
@@ -1473,7 +1476,7 @@ var ViewerMenu = function ViewerMenu(_ref) {
1473
1476
  _ref7$velocity = _slicedToArray(_ref7.velocity, 2),
1474
1477
  vy = _ref7$velocity[1];
1475
1478
 
1476
- var progress = Math.max(0, my) / (window.innerHeight * 0.8);
1479
+ var progress = Math.max(0, my) / (viewerHeight * 0.8);
1477
1480
  var reachedThreshold = (vy > 0.3 || Math.abs(progress) > 0.3) && dy !== -1;
1478
1481
 
1479
1482
  if (!active) {
@@ -1482,7 +1485,7 @@ var ViewerMenu = function ViewerMenu(_ref) {
1482
1485
  }
1483
1486
 
1484
1487
  return progress;
1485
- }, [onOpenShare]);
1488
+ }, [onOpenShare, viewerHeight]);
1486
1489
  var computeShareProgressClose = useCallback(function (_ref8) {
1487
1490
  var active = _ref8.active,
1488
1491
  _ref8$direction = _slicedToArray(_ref8.direction, 2),
@@ -1492,7 +1495,7 @@ var ViewerMenu = function ViewerMenu(_ref) {
1492
1495
  _ref8$velocity = _slicedToArray(_ref8.velocity, 2),
1493
1496
  vy = _ref8$velocity[1];
1494
1497
 
1495
- var progress = Math.max(0, my) / (window.innerHeight * 0.8);
1498
+ var progress = Math.max(0, my) / (viewerHeight * 0.8);
1496
1499
  var reachedThreshold = (vy > 0.3 || Math.abs(progress) > 0.3) && dy !== -1;
1497
1500
 
1498
1501
  if (!active) {
@@ -1501,17 +1504,20 @@ var ViewerMenu = function ViewerMenu(_ref) {
1501
1504
  }
1502
1505
 
1503
1506
  return 1 - progress;
1504
- }, [onCloseShare]);
1505
-
1506
- var _useDragProgress = useDragProgress({
1507
- progress: shareOpened ? 1 : 0,
1508
- computeProgress: shareOpened ? computeShareProgressClose : computeShareProgress,
1509
- springParams: {
1507
+ }, [onCloseShare, viewerHeight]);
1508
+ var springParams = useMemo(function () {
1509
+ return {
1510
1510
  config: {
1511
1511
  tension: 300,
1512
1512
  friction: 30
1513
1513
  }
1514
- }
1514
+ };
1515
+ }, []);
1516
+
1517
+ var _useDragProgress = useDragProgress({
1518
+ progress: shareOpened ? 1 : 0,
1519
+ computeProgress: shareOpened ? computeShareProgressClose : computeShareProgress,
1520
+ springParams: springParams
1515
1521
  }),
1516
1522
  bindShareDrag = _useDragProgress.bind,
1517
1523
  shareOpenedProgress = _useDragProgress.progress;
@@ -1558,12 +1564,7 @@ var ViewerMenu = function ViewerMenu(_ref) {
1558
1564
  var _useDragProgress2 = useDragProgress({
1559
1565
  progress: menuOpened ? 1 : 0,
1560
1566
  computeProgress: menuOpened ? computeMenuProgressClose : computeMenuProgress,
1561
- springParams: {
1562
- config: {
1563
- tension: 300,
1564
- friction: 30
1565
- }
1566
- }
1567
+ springParams: springParams
1567
1568
  }),
1568
1569
  bindMenuDrag = _useDragProgress2.bind,
1569
1570
  menuOpenedProgress = _useDragProgress2.progress;
@@ -2565,6 +2566,8 @@ var Viewer = function Viewer(_ref) {
2565
2566
  screens: deviceScreens
2566
2567
  }, screenSizeOptions)),
2567
2568
  containerRef = _useScreenSizeFromEle.ref,
2569
+ viewerWidth = _useScreenSizeFromEle.fullWidth,
2570
+ viewerHeight = _useScreenSizeFromEle.fullHeight,
2568
2571
  screenSize = _useScreenSizeFromEle.screenSize,
2569
2572
  screenScale = _useScreenSizeFromEle.scale;
2570
2573
 
@@ -2841,6 +2844,8 @@ var Viewer = function Viewer(_ref) {
2841
2844
  events: eventsManager,
2842
2845
  menuVisible: menuVisible,
2843
2846
  menuOverScreen: menuOverScreen,
2847
+ width: viewerWidth,
2848
+ height: viewerHeight,
2844
2849
  topHeight: menuOverScreen && currentScreenInteractionEnabled ? menuDotsContainerHeight / screenScale : 0,
2845
2850
  bottomHeight: playbackControls && (playbackcontrolsVisible || !playing) && currentScreenInteractionEnabled ? playbackControlsContainerHeight / screenScale : 0,
2846
2851
  bottomSidesWidth: (playbackcontrolsVisible || !playing || playbackMedia !== null) && currentScreenInteractionEnabled ? 60 / screenScale : 0,
@@ -2892,8 +2897,7 @@ var Viewer = function Viewer(_ref) {
2892
2897
  overflow: !withNeighborScreens ? 'hidden' : null
2893
2898
  }
2894
2899
  }, screens.map(function (screen, i) {
2895
- var current = i === Math.round(screenIndexProgress); // base current on transition
2896
-
2900
+ var current = screenIndex === i;
2897
2901
  var active = i >= screenIndex - neighborScreensActive && i <= screenIndex + neighborScreensActive;
2898
2902
  var screenStyles = getScreenStylesByIndex(i, screenIndexProgress);
2899
2903
  return /*#__PURE__*/React.createElement("div", {
package/lib/index.js CHANGED
@@ -1392,6 +1392,9 @@ var ViewerMenu = function ViewerMenu(_ref) {
1392
1392
  _ref4$menuTheme = _ref4.menuTheme,
1393
1393
  menuTheme = _ref4$menuTheme === void 0 ? null : _ref4$menuTheme;
1394
1394
 
1395
+ var _useViewerSize = contexts.useViewerSize(),
1396
+ viewerHeight = _useViewerSize.height;
1397
+
1395
1398
  var _useState = React.useState(false),
1396
1399
  _useState2 = _slicedToArray__default["default"](_useState, 2),
1397
1400
  menuOpened = _useState2[0],
@@ -1493,7 +1496,7 @@ var ViewerMenu = function ViewerMenu(_ref) {
1493
1496
  _ref7$velocity = _slicedToArray__default["default"](_ref7.velocity, 2),
1494
1497
  vy = _ref7$velocity[1];
1495
1498
 
1496
- var progress = Math.max(0, my) / (window.innerHeight * 0.8);
1499
+ var progress = Math.max(0, my) / (viewerHeight * 0.8);
1497
1500
  var reachedThreshold = (vy > 0.3 || Math.abs(progress) > 0.3) && dy !== -1;
1498
1501
 
1499
1502
  if (!active) {
@@ -1502,7 +1505,7 @@ var ViewerMenu = function ViewerMenu(_ref) {
1502
1505
  }
1503
1506
 
1504
1507
  return progress;
1505
- }, [onOpenShare]);
1508
+ }, [onOpenShare, viewerHeight]);
1506
1509
  var computeShareProgressClose = React.useCallback(function (_ref8) {
1507
1510
  var active = _ref8.active,
1508
1511
  _ref8$direction = _slicedToArray__default["default"](_ref8.direction, 2),
@@ -1512,7 +1515,7 @@ var ViewerMenu = function ViewerMenu(_ref) {
1512
1515
  _ref8$velocity = _slicedToArray__default["default"](_ref8.velocity, 2),
1513
1516
  vy = _ref8$velocity[1];
1514
1517
 
1515
- var progress = Math.max(0, my) / (window.innerHeight * 0.8);
1518
+ var progress = Math.max(0, my) / (viewerHeight * 0.8);
1516
1519
  var reachedThreshold = (vy > 0.3 || Math.abs(progress) > 0.3) && dy !== -1;
1517
1520
 
1518
1521
  if (!active) {
@@ -1521,17 +1524,20 @@ var ViewerMenu = function ViewerMenu(_ref) {
1521
1524
  }
1522
1525
 
1523
1526
  return 1 - progress;
1524
- }, [onCloseShare]);
1525
-
1526
- var _useDragProgress = hooks.useDragProgress({
1527
- progress: shareOpened ? 1 : 0,
1528
- computeProgress: shareOpened ? computeShareProgressClose : computeShareProgress,
1529
- springParams: {
1527
+ }, [onCloseShare, viewerHeight]);
1528
+ var springParams = React.useMemo(function () {
1529
+ return {
1530
1530
  config: {
1531
1531
  tension: 300,
1532
1532
  friction: 30
1533
1533
  }
1534
- }
1534
+ };
1535
+ }, []);
1536
+
1537
+ var _useDragProgress = hooks.useDragProgress({
1538
+ progress: shareOpened ? 1 : 0,
1539
+ computeProgress: shareOpened ? computeShareProgressClose : computeShareProgress,
1540
+ springParams: springParams
1535
1541
  }),
1536
1542
  bindShareDrag = _useDragProgress.bind,
1537
1543
  shareOpenedProgress = _useDragProgress.progress;
@@ -1578,12 +1584,7 @@ var ViewerMenu = function ViewerMenu(_ref) {
1578
1584
  var _useDragProgress2 = hooks.useDragProgress({
1579
1585
  progress: menuOpened ? 1 : 0,
1580
1586
  computeProgress: menuOpened ? computeMenuProgressClose : computeMenuProgress,
1581
- springParams: {
1582
- config: {
1583
- tension: 300,
1584
- friction: 30
1585
- }
1586
- }
1587
+ springParams: springParams
1587
1588
  }),
1588
1589
  bindMenuDrag = _useDragProgress2.bind,
1589
1590
  menuOpenedProgress = _useDragProgress2.progress;
@@ -2585,6 +2586,8 @@ var Viewer = function Viewer(_ref) {
2585
2586
  screens: deviceScreens
2586
2587
  }, screenSizeOptions)),
2587
2588
  containerRef = _useScreenSizeFromEle.ref,
2589
+ viewerWidth = _useScreenSizeFromEle.fullWidth,
2590
+ viewerHeight = _useScreenSizeFromEle.fullHeight,
2588
2591
  screenSize = _useScreenSizeFromEle.screenSize,
2589
2592
  screenScale = _useScreenSizeFromEle.scale;
2590
2593
 
@@ -2861,6 +2864,8 @@ var Viewer = function Viewer(_ref) {
2861
2864
  events: eventsManager,
2862
2865
  menuVisible: menuVisible,
2863
2866
  menuOverScreen: menuOverScreen,
2867
+ width: viewerWidth,
2868
+ height: viewerHeight,
2864
2869
  topHeight: menuOverScreen && currentScreenInteractionEnabled ? menuDotsContainerHeight / screenScale : 0,
2865
2870
  bottomHeight: playbackControls && (playbackcontrolsVisible || !playing) && currentScreenInteractionEnabled ? playbackControlsContainerHeight / screenScale : 0,
2866
2871
  bottomSidesWidth: (playbackcontrolsVisible || !playing || playbackMedia !== null) && currentScreenInteractionEnabled ? 60 / screenScale : 0,
@@ -2912,8 +2917,7 @@ var Viewer = function Viewer(_ref) {
2912
2917
  overflow: !withNeighborScreens ? 'hidden' : null
2913
2918
  }
2914
2919
  }, screens.map(function (screen, i) {
2915
- var current = i === Math.round(screenIndexProgress); // base current on transition
2916
-
2920
+ var current = screenIndex === i;
2917
2921
  var active = i >= screenIndex - neighborScreensActive && i <= screenIndex + neighborScreensActive;
2918
2922
  var screenStyles = getScreenStylesByIndex(i, screenIndexProgress);
2919
2923
  return /*#__PURE__*/React__default["default"].createElement("div", {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@micromag/viewer",
3
- "version": "0.3.191",
3
+ "version": "0.3.194",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "javascript"
@@ -59,14 +59,14 @@
59
59
  "@fortawesome/fontawesome-svg-core": "^1.2.32",
60
60
  "@fortawesome/free-solid-svg-icons": "^5.15.1",
61
61
  "@fortawesome/react-fontawesome": "^0.1.13",
62
- "@micromag/core": "^0.3.190",
63
- "@micromag/element-scroll": "^0.3.190",
64
- "@micromag/element-share-options": "^0.3.190",
65
- "@micromag/element-webview": "^0.3.190",
66
- "@micromag/elements": "^0.3.190",
67
- "@micromag/fields": "^0.3.190",
68
- "@micromag/intl": "^0.3.190",
69
- "@micromag/screens": "^0.3.191",
62
+ "@micromag/core": "^0.3.194",
63
+ "@micromag/element-scroll": "^0.3.194",
64
+ "@micromag/element-share-options": "^0.3.194",
65
+ "@micromag/element-webview": "^0.3.194",
66
+ "@micromag/elements": "^0.3.194",
67
+ "@micromag/fields": "^0.3.194",
68
+ "@micromag/intl": "^0.3.194",
69
+ "@micromag/screens": "^0.3.194",
70
70
  "@react-spring/core": "^9.1.1",
71
71
  "@react-spring/web": "^9.1.1",
72
72
  "@use-gesture/react": "^10.2.4",
@@ -84,5 +84,5 @@
84
84
  "publishConfig": {
85
85
  "access": "public"
86
86
  },
87
- "gitHead": "1b0a2f385defa01c95d01bd67f8e2bfc54186778"
87
+ "gitHead": "b873f7d8957f26dcfbe27d1ad78f2102810e8c4d"
88
88
  }