@micromag/core 0.4.55 → 0.4.63

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/contexts.js CHANGED
@@ -640,7 +640,8 @@ var FontsContext = /*#__PURE__*/React.createContext({
640
640
  customFonts: null
641
641
  });
642
642
  var useGoogleFonts = function useGoogleFonts() {
643
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
643
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
644
+ var _ref = options || {},
644
645
  _ref$disabled = _ref.disabled,
645
646
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
646
647
  _ref$setFonts = _ref.setFonts,
@@ -680,7 +681,8 @@ var useGoogleFonts = function useGoogleFonts() {
680
681
  return googleFonts;
681
682
  };
682
683
  var useFonts = function useFonts() {
683
- var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
684
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
685
+ var _ref3 = options || {},
684
686
  _ref3$withoutGoogleFo = _ref3.withoutGoogleFonts,
685
687
  withoutGoogleFonts = _ref3$withoutGoogleFo === void 0 ? false : _ref3$withoutGoogleFo;
686
688
  var _useContext = React.useContext(FontsContext),
@@ -1009,30 +1011,28 @@ var defaultControlsThemeValue = {
1009
1011
  color: null,
1010
1012
  progressColor: null
1011
1013
  };
1012
- var defaultValue$1 = {
1014
+ var PlaybackContext = /*#__PURE__*/React.createContext({
1013
1015
  playing: false,
1014
- paused: false,
1015
1016
  completed: false,
1016
1017
  muted: true,
1017
1018
  controls: false,
1018
1019
  controlsSuggestPlay: false,
1019
1020
  controlsVisible: false,
1021
+ hasAudio: false,
1020
1022
  media: null,
1021
1023
  controlsTheme: defaultControlsThemeValue,
1022
- currentQualityLevel: null
1023
- };
1024
- var PlaybackContext = /*#__PURE__*/React.createContext(_objectSpread(_objectSpread({}, defaultValue$1), {}, {
1025
- setMuted: function setMuted() {},
1026
- setPlaying: function setPlaying() {},
1027
- setControls: function setControls() {},
1028
- setControlsVisible: function setControlsVisible() {},
1029
- setControlsTheme: function setControlsTheme() {},
1024
+ currentQualityLevel: null,
1025
+ setMuted: function setMuted(muted) {},
1026
+ setPlaying: function setPlaying(playing) {},
1027
+ setControls: function setControls(hasControls) {},
1028
+ setControlsVisible: function setControlsVisible(visible) {},
1029
+ setControlsTheme: function setControlsTheme(theme) {},
1030
1030
  showControls: function showControls() {},
1031
1031
  hideControls: function hideControls() {},
1032
- setMedia: function setMedia() {},
1033
- setCurrentQualityLevel: function setCurrentQualityLevel() {},
1034
- setIsBackground: function setIsBackground() {}
1035
- }));
1032
+ setMedia: function setMedia(media) {},
1033
+ setCurrentQualityLevel: function setCurrentQualityLevel(qualityLevel, fromRef) {},
1034
+ setIsBackground: function setIsBackground(isBackground) {}
1035
+ });
1036
1036
  var usePlaybackContext = function usePlaybackContext() {
1037
1037
  return React.useContext(PlaybackContext);
1038
1038
  };
@@ -1043,29 +1043,35 @@ var usePlaybackMediaRef = function usePlaybackMediaRef() {
1043
1043
  var _usePlaybackContext = usePlaybackContext(),
1044
1044
  setMedia = _usePlaybackContext.setMedia,
1045
1045
  setIsBackground = _usePlaybackContext.setIsBackground,
1046
- media = _usePlaybackContext.media;
1046
+ media = _usePlaybackContext.media,
1047
+ isBackground = _usePlaybackContext.isBackground;
1047
1048
  var mediaRef = React.useRef(null);
1048
1049
 
1049
1050
  // Cleanup: clear media registration when this screen deactivates or unmounts.
1050
1051
  // Note: we cannot check mediaRef.current here because React clears callback refs
1051
1052
  // before running effect cleanups, so mediaRef.current is always null at this point.
1052
1053
  React.useEffect(function () {
1054
+ var currentMedia = mediaRef.current;
1053
1055
  return function () {
1054
1056
  if (active) {
1057
+ var playing = currentMedia !== null && !!(currentMedia.currentTime > 0 && !currentMedia.paused && !currentMedia.ended && currentMedia.readyState > 2);
1055
1058
  setMedia(null);
1056
1059
  setIsBackground(false);
1060
+ if (playing) {
1061
+ currentMedia.pause();
1062
+ }
1057
1063
  }
1058
1064
  };
1059
1065
  }, [active, setMedia, setIsBackground, updateKey]);
1060
1066
 
1061
1067
  // Register media with context when active and no media is registered
1062
1068
  React.useEffect(function () {
1063
- if (!active || mediaRef.current === null || media !== null) {
1069
+ if (!active || mediaRef.current === null || mediaRef.current === media && background === isBackground) {
1064
1070
  return;
1065
1071
  }
1066
1072
  setIsBackground(background);
1067
1073
  setMedia(mediaRef.current);
1068
- }, [active, background, media, updateKey, setMedia, setIsBackground]);
1074
+ }, [active, background, media, updateKey, setMedia, setIsBackground, isBackground]);
1069
1075
  return {
1070
1076
  ref: mediaRef,
1071
1077
  isCurrent: mediaRef.current === media
@@ -1389,14 +1395,17 @@ function ScreenSizeProvider(_ref) {
1389
1395
  var useTracking = function useTracking() {
1390
1396
  return React.useContext(tracking.TrackingContext);
1391
1397
  };
1392
- function TrackingProvider(_ref) {
1393
- var _ref$variables = _ref.variables,
1398
+ function TrackingProvider() {
1399
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
1400
+ var _ref = options || {},
1401
+ _ref$variables = _ref.variables,
1394
1402
  variables = _ref$variables === void 0 ? null : _ref$variables,
1395
1403
  _ref$disabled = _ref.disabled,
1396
1404
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
1397
1405
  _ref$paused = _ref.paused,
1398
1406
  paused = _ref$paused === void 0 ? false : _ref$paused,
1399
- children = _ref.children;
1407
+ _ref$children = _ref.children,
1408
+ children = _ref$children === void 0 ? null : _ref$children;
1400
1409
  var contextTracking = useTracking() || null;
1401
1410
  var refTracking = React.useRef(null);
1402
1411
  var tracking$1 = React.useMemo(function () {
package/lib/hooks.js CHANGED
@@ -22,8 +22,8 @@ var contexts = require('@micromag/core/contexts');
22
22
  var isEmpty = require('lodash/isEmpty');
23
23
  var hooks = require('@folklore/hooks');
24
24
  var cssMediaquery = require('css-mediaquery');
25
- var reactIntl = require('react-intl');
26
25
  var dayjs = require('dayjs');
26
+ var reactIntl = require('react-intl');
27
27
  var clamp = require('lodash/clamp');
28
28
 
29
29
  function useActivityDetector() {
@@ -122,7 +122,8 @@ var useAnimationFrame = function useAnimationFrame(onFrame) {
122
122
  };
123
123
 
124
124
  var useFormattedDate = function useFormattedDate() {
125
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
125
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
126
+ var _ref = options || {},
126
127
  _ref$format = _ref.format,
127
128
  format = _ref$format === void 0 ? null : _ref$format,
128
129
  _ref$showToday = _ref.showToday,
@@ -148,7 +149,8 @@ var useFormattedDate = function useFormattedDate() {
148
149
  }, [today, showToday, format]);
149
150
  };
150
151
  var useFormattedTime = function useFormattedTime() {
151
- var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
152
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
153
+ var _ref2 = options || {},
152
154
  _ref2$format = _ref2.format,
153
155
  format = _ref2$format === void 0 ? null : _ref2$format,
154
156
  _ref2$showNow = _ref2.showNow,
@@ -531,16 +533,17 @@ var getObserver = function getObserver(Observer) {
531
533
  return observers[observerKey];
532
534
  };
533
535
  var useObserver = function useObserver(Observer) {
534
- var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
535
- var initialEntry = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
536
- var _opts$root = opts.root,
537
- root = _opts$root === void 0 ? null : _opts$root,
538
- _opts$rootMargin = opts.rootMargin,
539
- rootMargin = _opts$rootMargin === void 0 ? null : _opts$rootMargin,
540
- _opts$threshold = opts.threshold,
541
- threshold = _opts$threshold === void 0 ? null : _opts$threshold,
542
- _opts$disabled = opts.disabled,
543
- disabled = _opts$disabled === void 0 ? false : _opts$disabled;
536
+ var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
537
+ var initialEntry = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
538
+ var _ref3 = opts || {},
539
+ _ref3$root = _ref3.root,
540
+ root = _ref3$root === void 0 ? null : _ref3$root,
541
+ _ref3$rootMargin = _ref3.rootMargin,
542
+ rootMargin = _ref3$rootMargin === void 0 ? null : _ref3$rootMargin,
543
+ _ref3$threshold = _ref3.threshold,
544
+ threshold = _ref3$threshold === void 0 ? null : _ref3$threshold,
545
+ _ref3$disabled = _ref3.disabled,
546
+ disabled = _ref3$disabled === void 0 ? false : _ref3$disabled;
544
547
  var _useState = react.useState(initialEntry),
545
548
  _useState2 = _slicedToArray(_useState, 2),
546
549
  entry = _useState2[0],
@@ -609,15 +612,15 @@ var intersectionObserverInitialEntry = {
609
612
  rootBounds: null
610
613
  };
611
614
  var useIntersectionObserver = function useIntersectionObserver() {
612
- var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
613
- _ref3$root = _ref3.root,
614
- root = _ref3$root === void 0 ? null : _ref3$root,
615
- _ref3$rootMargin = _ref3.rootMargin,
616
- rootMargin = _ref3$rootMargin === void 0 ? '0px' : _ref3$rootMargin,
617
- _ref3$threshold = _ref3.threshold,
618
- threshold = _ref3$threshold === void 0 ? thresholdArray : _ref3$threshold,
619
- _ref3$disabled = _ref3.disabled,
620
- disabled = _ref3$disabled === void 0 ? false : _ref3$disabled;
615
+ var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
616
+ _ref4$root = _ref4.root,
617
+ root = _ref4$root === void 0 ? null : _ref4$root,
618
+ _ref4$rootMargin = _ref4.rootMargin,
619
+ rootMargin = _ref4$rootMargin === void 0 ? '0px' : _ref4$rootMargin,
620
+ _ref4$threshold = _ref4.threshold,
621
+ threshold = _ref4$threshold === void 0 ? thresholdArray : _ref4$threshold,
622
+ _ref4$disabled = _ref4.disabled,
623
+ disabled = _ref4$disabled === void 0 ? false : _ref4$disabled;
621
624
  return useObserver(typeof window !== 'undefined' ? IntersectionObserver : null, {
622
625
  root: root,
623
626
  rootMargin: rootMargin,
@@ -636,9 +639,10 @@ var resizeObserverInitialEntry = {
636
639
  borderBoxSize: null
637
640
  };
638
641
  var useResizeObserver = function useResizeObserver() {
639
- var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
640
- _ref4$disabled = _ref4.disabled,
641
- disabled = _ref4$disabled === void 0 ? false : _ref4$disabled;
642
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
643
+ var _ref5 = options || {},
644
+ _ref5$disabled = _ref5.disabled,
645
+ disabled = _ref5$disabled === void 0 ? false : _ref5$disabled;
642
646
  return useObserver(typeof window !== 'undefined' ? ResizeObserver : null, {
643
647
  disabled: disabled
644
648
  }, resizeObserverInitialEntry);
@@ -647,21 +651,21 @@ var useDimensionObserver = function useDimensionObserver() {
647
651
  var _useResizeObserver = useResizeObserver.apply(void 0, arguments),
648
652
  entry = _useResizeObserver.entry,
649
653
  rest = _objectWithoutProperties(_useResizeObserver, _excluded$2);
650
- var _ref5 = entry || {},
651
- _ref5$contentRect = _ref5.contentRect,
652
- contentRect = _ref5$contentRect === void 0 ? null : _ref5$contentRect,
653
- _ref5$borderBoxSize = _ref5.borderBoxSize,
654
- borderBoxSize = _ref5$borderBoxSize === void 0 ? null : _ref5$borderBoxSize;
655
- var _ref6 = contentRect || {},
656
- _ref6$width = _ref6.width,
657
- width = _ref6$width === void 0 ? 0 : _ref6$width,
658
- _ref6$height = _ref6.height,
659
- height = _ref6$height === void 0 ? 0 : _ref6$height;
660
- var _ref7 = isArray(borderBoxSize) ? borderBoxSize[0] || {} : borderBoxSize || {},
661
- _ref7$blockSize = _ref7.blockSize,
662
- blockSize = _ref7$blockSize === void 0 ? null : _ref7$blockSize,
663
- _ref7$inlineSize = _ref7.inlineSize,
664
- inlineSize = _ref7$inlineSize === void 0 ? null : _ref7$inlineSize;
654
+ var _ref6 = entry || {},
655
+ _ref6$contentRect = _ref6.contentRect,
656
+ contentRect = _ref6$contentRect === void 0 ? null : _ref6$contentRect,
657
+ _ref6$borderBoxSize = _ref6.borderBoxSize,
658
+ borderBoxSize = _ref6$borderBoxSize === void 0 ? null : _ref6$borderBoxSize;
659
+ var _ref7 = contentRect || {},
660
+ _ref7$width = _ref7.width,
661
+ width = _ref7$width === void 0 ? 0 : _ref7$width,
662
+ _ref7$height = _ref7.height,
663
+ height = _ref7$height === void 0 ? 0 : _ref7$height;
664
+ var _ref8 = isArray(borderBoxSize) ? borderBoxSize[0] || {} : borderBoxSize || {},
665
+ _ref8$blockSize = _ref8.blockSize,
666
+ blockSize = _ref8$blockSize === void 0 ? null : _ref8$blockSize,
667
+ _ref8$inlineSize = _ref8.inlineSize,
668
+ inlineSize = _ref8$inlineSize === void 0 ? null : _ref8$inlineSize;
665
669
  return _objectSpread(_objectSpread({}, rest), {}, {
666
670
  entry: entry,
667
671
  width: inlineSize || width,
@@ -1642,8 +1646,10 @@ function useMediaLoad(element) {
1642
1646
  }
1643
1647
 
1644
1648
  var _excluded$1 = ["disabled"];
1645
- function useMediaProgress(media) {
1646
- var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
1649
+ function useMediaProgress() {
1650
+ var media = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
1651
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
1652
+ var _ref = options || {},
1647
1653
  _ref$disabled = _ref.disabled,
1648
1654
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
1649
1655
  props = _objectWithoutProperties(_ref, _excluded$1);
@@ -2058,7 +2064,8 @@ var useScreenSize = function useScreenSize(_ref) {
2058
2064
  return screenSize;
2059
2065
  };
2060
2066
  var useScreenSizeFromElement = function useScreenSizeFromElement() {
2061
- var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
2067
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
2068
+ var _ref4 = options || {},
2062
2069
  _ref4$width = _ref4.width,
2063
2070
  width = _ref4$width === void 0 ? null : _ref4$width,
2064
2071
  _ref4$height = _ref4.height,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@micromag/core",
3
- "version": "0.4.55",
3
+ "version": "0.4.63",
4
4
  "private": false,
5
5
  "description": "",
6
6
  "keywords": [
@@ -161,6 +161,6 @@
161
161
  "access": "public",
162
162
  "registry": "https://registry.npmjs.org/"
163
163
  },
164
- "gitHead": "9708f0016de0cf18dcd6a6aa5bc70d7f00b86d9f",
164
+ "gitHead": "0a6df1a5352c067c3296377d26fadb9b71244345",
165
165
  "types": "es/index.d.ts"
166
166
  }