@micromag/core 0.3.246 → 0.3.251

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/es/hooks.js CHANGED
@@ -6,8 +6,8 @@ import isString from 'lodash/isString';
6
6
  import dayjs from 'dayjs';
7
7
  import { EventsManager, MediasParser, StoryParser, ThemeParser } from '@micromag/core';
8
8
  import { createUseEvent, getMediaFilesAsArray } from '@micromag/core/utils';
9
- import { useSpring, useSprings } from '@react-spring/core';
10
9
  import { useDrag } from '@use-gesture/react';
10
+ import { useSpring, useSprings } from '@react-spring/core';
11
11
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
12
12
  import { useForm as useForm$1 } from '@folklore/forms';
13
13
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
@@ -193,23 +193,42 @@ var useFormattedTime = function useFormattedTime() {
193
193
  }, [now, showNow, timeGap, format]);
194
194
  };
195
195
 
196
- var useDebounced = function useDebounced(handler, watchedValue) {
197
- var delay = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 300;
198
- useEffect(function () {
199
- var timeoutHandler = setTimeout(function () {
200
- if (handler !== null) {
201
- handler(watchedValue);
202
- }
203
- }, delay);
204
- return function () {
205
- clearTimeout(timeoutHandler);
206
- };
207
- }, [watchedValue, delay]);
208
- };
209
-
210
196
  var eventsManager$1 = typeof document !== 'undefined' ? new EventsManager(document) : null;
211
197
  var useDocumentEvent = createUseEvent(eventsManager$1);
212
198
 
199
+ var getValueFromSpring = function getValueFromSpring(s) {
200
+ var _ref = s || {},
201
+ _ref$value = _ref.value,
202
+ v = _ref$value === void 0 ? null : _ref$value;
203
+
204
+ var _ref2 = v || {},
205
+ p = _ref2.progress;
206
+
207
+ return p;
208
+ };
209
+
210
+ function useSpringValue(wantedProgress, immediate, params) {
211
+ var _useState = useState(wantedProgress),
212
+ _useState2 = _slicedToArray(_useState, 2),
213
+ progress = _useState2[0],
214
+ setProgress = _useState2[1];
215
+
216
+ var onChange = useCallback(function (spring) {
217
+ return setProgress(getValueFromSpring(spring));
218
+ }, [setProgress]);
219
+ useSpring(_objectSpread({
220
+ progress: wantedProgress,
221
+ onChange: onChange,
222
+ immediate: immediate
223
+ }, params)); // useEffect(() => {
224
+ // if (wantedProgress !== null) {
225
+ // api.start({ progress: wantedProgress, immediate, ...params });
226
+ // }
227
+ // }, [wantedProgress, immediate, params, api]);
228
+
229
+ return immediate ? wantedProgress : progress;
230
+ }
231
+
213
232
  function useDragProgress() {
214
233
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
215
234
  wantedProgress = _ref.progress,
@@ -227,28 +246,21 @@ function useDragProgress() {
227
246
  springParams = _ref$springParams === void 0 ? undefined : _ref$springParams,
228
247
  _ref$dragOptions = _ref.dragOptions,
229
248
  dragOptions = _ref$dragOptions === void 0 ? {
230
- filterTaps: true
249
+ filterTaps: true,
250
+ preventDefault: true
231
251
  } : _ref$dragOptions;
232
252
 
233
253
  var refDragging = useRef(false);
234
- var refProgress = useRef(wantedProgress);
235
254
 
236
- var _useState = useState(false),
255
+ var _useState = useState({
256
+ dragging: false,
257
+ progress: wantedProgress
258
+ }),
237
259
  _useState2 = _slicedToArray(_useState, 2),
238
- dragging = _useState2[0],
239
- setDragging = _useState2[1];
240
-
241
- var spring = useCallback(function () {
242
- return _objectSpread({
243
- progress: wantedProgress,
244
- immediate: dragging || disabled
245
- }, springParams);
246
- }, []);
247
-
248
- var _useSpring = useSpring(spring),
249
- _useSpring2 = _slicedToArray(_useSpring, 2),
250
- progress = _useSpring2[0].progress,
251
- api = _useSpring2[1];
260
+ _useState2$ = _useState2[0],
261
+ dragging = _useState2$.dragging,
262
+ progress = _useState2$.progress,
263
+ setDragState = _useState2[1];
252
264
 
253
265
  var onDrag = useCallback(function (gestureState) {
254
266
  if (disabled) {
@@ -269,35 +281,29 @@ function useDragProgress() {
269
281
 
270
282
  var newProgress = computeProgress(gestureState);
271
283
  refDragging.current = active;
272
- refProgress.current = newProgress;
273
-
274
- if (active !== dragging) {
275
- setDragging(active);
276
- }
277
-
278
- api.start({
279
- progress: newProgress,
280
- immediate: active
284
+ setDragState({
285
+ dragging: active,
286
+ progress: newProgress
281
287
  });
282
288
 
283
289
  if (onProgress !== null) {
284
290
  onProgress(newProgress, gestureState);
285
291
  }
286
- }, [setDragging, disabled, onTap, computeProgress, dragging, onProgress]);
292
+ }, [setDragState, disabled, onTap, computeProgress, setDragState, onProgress]);
287
293
  var bind = useDrag(onDrag, dragOptions);
294
+ var springedProgress = useSpringValue(progress, dragging || disabled, springParams);
288
295
  useEffect(function () {
289
- if (!refDragging.current && wantedProgress !== refProgress.current) {
290
- refProgress.current = wantedProgress;
291
- api.start({
292
- progress: wantedProgress,
293
- immediate: false
296
+ if (wantedProgress !== progress && !refDragging.current) {
297
+ setDragState({
298
+ dragging: refDragging.current,
299
+ progress: wantedProgress
294
300
  });
295
301
  }
296
302
  }, [wantedProgress]);
297
303
  return {
298
304
  bind: bind,
299
305
  dragging: dragging,
300
- progress: progress
306
+ progress: springedProgress
301
307
  };
302
308
  }
303
309
 
@@ -1483,17 +1489,16 @@ function useMediaProgress(media) {
1483
1489
  var _useState = useState(!disabled),
1484
1490
  _useState2 = _slicedToArray(_useState, 2),
1485
1491
  playing = _useState2[0],
1486
- setPlaying = _useState2[1]; // const currentTime = useMediaCurrentTime(media, {
1487
- // disabled: disabled || !playing,
1488
- // ...props,
1489
- // });
1490
-
1492
+ setPlaying = _useState2[1];
1491
1493
 
1494
+ var currentTime = useMediaCurrentTime(media, _objectSpread({
1495
+ disabled: disabled || !playing
1496
+ }, props));
1492
1497
  var duration = useMediaDuration(media, _objectSpread({
1493
1498
  disabled: disabled || !playing
1494
1499
  }, props));
1495
1500
 
1496
- var _useState3 = useState(media !== null && (media.currentTime || 0) > 0 && duration > 0 ? media.currentTime / duration : 0),
1501
+ var _useState3 = useState(currentTime > 0 && duration > 0 ? currentTime / duration : 0),
1497
1502
  _useState4 = _slicedToArray(_useState3, 2),
1498
1503
  progress = _useState4[0],
1499
1504
  setProgress = _useState4[1];
@@ -1528,8 +1533,8 @@ function useMediaProgress(media) {
1528
1533
 
1529
1534
  media.addEventListener('play', onResume);
1530
1535
  media.addEventListener('seeked', onResume);
1531
- media.addEventListener('playing', onResume); // media.addEventListener('timeupdate', onResume);
1532
-
1536
+ media.addEventListener('playing', onResume);
1537
+ media.addEventListener('timeupdate', onResume);
1533
1538
  media.addEventListener('pause', onPause);
1534
1539
  media.addEventListener('ended', onPause);
1535
1540
  media.addEventListener('waiting', onPause);
@@ -1544,8 +1549,8 @@ function useMediaProgress(media) {
1544
1549
  return function () {
1545
1550
  media.removeEventListener('play', onResume);
1546
1551
  media.removeEventListener('seeked', onResume);
1547
- media.removeEventListener('playing', onResume); // media.removeEventListener('timeupdate', onResume);
1548
-
1552
+ media.removeEventListener('playing', onResume);
1553
+ media.removeEventListener('timeupdate', onResume);
1549
1554
  media.removeEventListener('pause', onPause);
1550
1555
  media.removeEventListener('ended', onPause);
1551
1556
  media.removeEventListener('waiting', onPause);
@@ -1554,7 +1559,11 @@ function useMediaProgress(media) {
1554
1559
  };
1555
1560
  }, [media, updateProgress, setPlaying, playing]);
1556
1561
  useEffect(function () {
1557
- if (media === null || !playing || disabled) {
1562
+ if (media === null) {
1563
+ return function () {};
1564
+ }
1565
+
1566
+ if (!playing || disabled) {
1558
1567
  return function () {};
1559
1568
  }
1560
1569
 
@@ -2003,34 +2012,6 @@ var useScreenSizeFromWindow = function useScreenSizeFromWindow(opts) {
2003
2012
  return useScreenSize(_objectSpread(_objectSpread({}, opts), windowSize));
2004
2013
  };
2005
2014
 
2006
- var getValueFromSpring = function getValueFromSpring(s) {
2007
- var _ref = s || {},
2008
- _ref$value = _ref.value,
2009
- v = _ref$value === void 0 ? null : _ref$value;
2010
-
2011
- var _ref2 = v || {},
2012
- p = _ref2.progress;
2013
-
2014
- return p;
2015
- };
2016
-
2017
- function useSpringValue(wantedProgress, immediate, params) {
2018
- var _useState = useState(wantedProgress),
2019
- _useState2 = _slicedToArray(_useState, 2),
2020
- progress = _useState2[0],
2021
- setProgress = _useState2[1];
2022
-
2023
- var onChange = useCallback(function (spring) {
2024
- return setProgress(getValueFromSpring(spring));
2025
- }, [setProgress]);
2026
- useSpring(_objectSpread({
2027
- progress: wantedProgress,
2028
- onChange: onChange,
2029
- immediate: immediate
2030
- }, params));
2031
- return immediate ? wantedProgress : progress;
2032
- }
2033
-
2034
2015
  var useSwipe = function useSwipe() {
2035
2016
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
2036
2017
  _ref$width = _ref.width,
@@ -2352,4 +2333,4 @@ var useTrackMedia = function useTrackMedia() {
2352
2333
  var eventsManager = typeof window !== 'undefined' ? new EventsManager(window) : null;
2353
2334
  var useWindowEvent = createUseEvent(eventsManager);
2354
2335
 
2355
- export { getObserver, useActivityDetector, useAnimationFrame, useDebounced as useDebounce, useDimensionObserver, useDocumentEvent, useDragProgress, useForm, useFormTransition, useFormattedDate, useFormattedTime, useFullscreen, useIntersectionObserver, useIsVisible, useLoadedFonts, useLongPress, useMediaApi, useMediaCurrentTime, useMediaDuration, useMediaLoad, useMediaProgress, useMediaReady, useMediaThumbnail, useMediaWaveform, useMediasParser, useObserver, useParsedStory, useProgressSteps, useResizeObserver, useScreenSizeFromElement, useScreenSizeFromWindow, useSpringValue, useSwipe, useThemeParser, useTrackEvent, useTrackMedia, useTrackScreenEvent, useTrackScreenMedia, useTrackScreenView, useWindowEvent };
2336
+ export { getObserver, useActivityDetector, useAnimationFrame, useDimensionObserver, useDocumentEvent, useDragProgress, useForm, useFormTransition, useFormattedDate, useFormattedTime, useFullscreen, useIntersectionObserver, useIsVisible, useLoadedFonts, useLongPress, useMediaApi, useMediaCurrentTime, useMediaDuration, useMediaLoad, useMediaProgress, useMediaReady, useMediaThumbnail, useMediaWaveform, useMediasParser, useObserver, useParsedStory, useProgressSteps, useResizeObserver, useScreenSizeFromElement, useScreenSizeFromWindow, useSpringValue, useSwipe, useThemeParser, useTrackEvent, useTrackMedia, useTrackScreenEvent, useTrackScreenMedia, useTrackScreenView, useWindowEvent };
package/es/utils.js CHANGED
@@ -931,22 +931,6 @@ var getStyleFromMargin = function getStyleFromMargin(value) {
931
931
  } : null);
932
932
  };
933
933
 
934
- var possibleMimes = ['video/webm', 'video/mp4', 'video/ogg'];
935
- var supportedMimes = null;
936
-
937
- function getVideoSupportedMimes() {
938
- var mimes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : possibleMimes;
939
-
940
- if (supportedMimes === null) {
941
- var video = document.createElement('video');
942
- supportedMimes = mimes.filter(function (mime) {
943
- return video.canPlayType(mime) !== '';
944
- });
945
- }
946
-
947
- return supportedMimes;
948
- }
949
-
950
934
  var getLayoutParts = function getLayoutParts() {
951
935
  var layout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
952
936
 
@@ -1109,4 +1093,4 @@ var getContrastingColor = function getContrastingColor(backgroundColor) {
1109
1093
  return tinycolor(color).spin(30).toString();
1110
1094
  };
1111
1095
 
1112
- export { convertStyleToString, copyToClipboard, createNullableOnChange, createUseEvent, easings, getColorAsString, getComponentFromName, getContrastingColor, getDeviceScreens, getDisplayName, getFieldByName, getFieldFromPath, getFileName, getFontFamily as getFontFamilyFromFont, getGridLayoutName, largestRemainderRound as getLargestRemainderRound, getLayersFromBackground, getLayoutParts, getMediaFilesAsArray, getOptimalImageUrl, getScreenExtraField, getSecondsFromTime, getShadowCoords, getStyleFromBorder, getStyleFromBox, getStyleFromColor, getStyleFromContainer, getStyleFromHighlight, getStyleFromImage, getStyleFromLink, getStyleFromMargin, getStyleFromText, getVideoSupportedMimes, isImageFilled, isIos, isTextFilled$1 as isLabelFilled, isMessage, isTextFilled, isValidUrl, schemaId, setValue as setFieldValue, slug, unique, validateFields };
1096
+ export { convertStyleToString, copyToClipboard, createNullableOnChange, createUseEvent, easings, getColorAsString, getComponentFromName, getContrastingColor, getDeviceScreens, getDisplayName, getFieldByName, getFieldFromPath, getFileName, getFontFamily as getFontFamilyFromFont, getGridLayoutName, largestRemainderRound as getLargestRemainderRound, getLayersFromBackground, getLayoutParts, getMediaFilesAsArray, getOptimalImageUrl, getScreenExtraField, getSecondsFromTime, getShadowCoords, getStyleFromBorder, getStyleFromBox, getStyleFromColor, getStyleFromContainer, getStyleFromHighlight, getStyleFromImage, getStyleFromLink, getStyleFromMargin, getStyleFromText, isImageFilled, isIos, isTextFilled$1 as isLabelFilled, isMessage, isTextFilled, isValidUrl, schemaId, setValue as setFieldValue, slug, unique, validateFields };
package/lib/components.js CHANGED
@@ -3675,7 +3675,6 @@ var propTypes$9 = {
3675
3675
  screen: core.PropTypes.storyComponent.isRequired,
3676
3676
  renderContext: core.PropTypes.renderContext,
3677
3677
  screenState: PropTypes__default["default"].string,
3678
- index: PropTypes__default["default"].number,
3679
3678
  active: PropTypes__default["default"].bool,
3680
3679
  current: PropTypes__default["default"].bool,
3681
3680
  component: PropTypes__default["default"].node,
@@ -3687,7 +3686,6 @@ var defaultProps$9 = {
3687
3686
  active: true,
3688
3687
  renderContext: null,
3689
3688
  screenState: null,
3690
- index: null,
3691
3689
  current: false,
3692
3690
  component: null,
3693
3691
  components: null,
@@ -3699,7 +3697,6 @@ var Screen = function Screen(_ref) {
3699
3697
  var screen = _ref.screen,
3700
3698
  renderContext = _ref.renderContext,
3701
3699
  screenState = _ref.screenState,
3702
- index = _ref.index,
3703
3700
  active = _ref.active,
3704
3701
  current = _ref.current,
3705
3702
  components = _ref.components,
@@ -3721,7 +3718,6 @@ var Screen = function Screen(_ref) {
3721
3718
  }, ScreenComponent !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
3722
3719
  className: classNames__default["default"]([styles$8.container, _defineProperty__default["default"]({}, className, className !== null)])
3723
3720
  }, /*#__PURE__*/React__default["default"].createElement(ScreenComponent, Object.assign({}, screen, {
3724
- index: index,
3725
3721
  active: active,
3726
3722
  current: current,
3727
3723
  mediaRef: mediaRef