@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/lib/hooks.js CHANGED
@@ -10,8 +10,8 @@ var isString = require('lodash/isString');
10
10
  var dayjs = require('dayjs');
11
11
  var core = require('@micromag/core');
12
12
  var utils = require('@micromag/core/utils');
13
- var core$1 = require('@react-spring/core');
14
13
  var react$1 = require('@use-gesture/react');
14
+ var core$1 = require('@react-spring/core');
15
15
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
16
16
  var forms = require('@folklore/forms');
17
17
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
@@ -231,23 +231,42 @@ var useFormattedTime = function useFormattedTime() {
231
231
  }, [now, showNow, timeGap, format]);
232
232
  };
233
233
 
234
- var useDebounced = function useDebounced(handler, watchedValue) {
235
- var delay = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 300;
236
- react.useEffect(function () {
237
- var timeoutHandler = setTimeout(function () {
238
- if (handler !== null) {
239
- handler(watchedValue);
240
- }
241
- }, delay);
242
- return function () {
243
- clearTimeout(timeoutHandler);
244
- };
245
- }, [watchedValue, delay]);
246
- };
247
-
248
234
  var eventsManager$1 = typeof document !== 'undefined' ? new core.EventsManager(document) : null;
249
235
  var useDocumentEvent = utils.createUseEvent(eventsManager$1);
250
236
 
237
+ var getValueFromSpring = function getValueFromSpring(s) {
238
+ var _ref = s || {},
239
+ _ref$value = _ref.value,
240
+ v = _ref$value === void 0 ? null : _ref$value;
241
+
242
+ var _ref2 = v || {},
243
+ p = _ref2.progress;
244
+
245
+ return p;
246
+ };
247
+
248
+ function useSpringValue(wantedProgress, immediate, params) {
249
+ var _useState = react.useState(wantedProgress),
250
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
251
+ progress = _useState2[0],
252
+ setProgress = _useState2[1];
253
+
254
+ var onChange = react.useCallback(function (spring) {
255
+ return setProgress(getValueFromSpring(spring));
256
+ }, [setProgress]);
257
+ core$1.useSpring(_objectSpread__default["default"]({
258
+ progress: wantedProgress,
259
+ onChange: onChange,
260
+ immediate: immediate
261
+ }, params)); // useEffect(() => {
262
+ // if (wantedProgress !== null) {
263
+ // api.start({ progress: wantedProgress, immediate, ...params });
264
+ // }
265
+ // }, [wantedProgress, immediate, params, api]);
266
+
267
+ return immediate ? wantedProgress : progress;
268
+ }
269
+
251
270
  function useDragProgress() {
252
271
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
253
272
  wantedProgress = _ref.progress,
@@ -265,28 +284,21 @@ function useDragProgress() {
265
284
  springParams = _ref$springParams === void 0 ? undefined : _ref$springParams,
266
285
  _ref$dragOptions = _ref.dragOptions,
267
286
  dragOptions = _ref$dragOptions === void 0 ? {
268
- filterTaps: true
287
+ filterTaps: true,
288
+ preventDefault: true
269
289
  } : _ref$dragOptions;
270
290
 
271
291
  var refDragging = react.useRef(false);
272
- var refProgress = react.useRef(wantedProgress);
273
292
 
274
- var _useState = react.useState(false),
293
+ var _useState = react.useState({
294
+ dragging: false,
295
+ progress: wantedProgress
296
+ }),
275
297
  _useState2 = _slicedToArray__default["default"](_useState, 2),
276
- dragging = _useState2[0],
277
- setDragging = _useState2[1];
278
-
279
- var spring = react.useCallback(function () {
280
- return _objectSpread__default["default"]({
281
- progress: wantedProgress,
282
- immediate: dragging || disabled
283
- }, springParams);
284
- }, []);
285
-
286
- var _useSpring = core$1.useSpring(spring),
287
- _useSpring2 = _slicedToArray__default["default"](_useSpring, 2),
288
- progress = _useSpring2[0].progress,
289
- api = _useSpring2[1];
298
+ _useState2$ = _useState2[0],
299
+ dragging = _useState2$.dragging,
300
+ progress = _useState2$.progress,
301
+ setDragState = _useState2[1];
290
302
 
291
303
  var onDrag = react.useCallback(function (gestureState) {
292
304
  if (disabled) {
@@ -307,35 +319,29 @@ function useDragProgress() {
307
319
 
308
320
  var newProgress = computeProgress(gestureState);
309
321
  refDragging.current = active;
310
- refProgress.current = newProgress;
311
-
312
- if (active !== dragging) {
313
- setDragging(active);
314
- }
315
-
316
- api.start({
317
- progress: newProgress,
318
- immediate: active
322
+ setDragState({
323
+ dragging: active,
324
+ progress: newProgress
319
325
  });
320
326
 
321
327
  if (onProgress !== null) {
322
328
  onProgress(newProgress, gestureState);
323
329
  }
324
- }, [setDragging, disabled, onTap, computeProgress, dragging, onProgress]);
330
+ }, [setDragState, disabled, onTap, computeProgress, setDragState, onProgress]);
325
331
  var bind = react$1.useDrag(onDrag, dragOptions);
332
+ var springedProgress = useSpringValue(progress, dragging || disabled, springParams);
326
333
  react.useEffect(function () {
327
- if (!refDragging.current && wantedProgress !== refProgress.current) {
328
- refProgress.current = wantedProgress;
329
- api.start({
330
- progress: wantedProgress,
331
- immediate: false
334
+ if (wantedProgress !== progress && !refDragging.current) {
335
+ setDragState({
336
+ dragging: refDragging.current,
337
+ progress: wantedProgress
332
338
  });
333
339
  }
334
340
  }, [wantedProgress]);
335
341
  return {
336
342
  bind: bind,
337
343
  dragging: dragging,
338
- progress: progress
344
+ progress: springedProgress
339
345
  };
340
346
  }
341
347
 
@@ -1521,17 +1527,16 @@ function useMediaProgress(media) {
1521
1527
  var _useState = react.useState(!disabled),
1522
1528
  _useState2 = _slicedToArray__default["default"](_useState, 2),
1523
1529
  playing = _useState2[0],
1524
- setPlaying = _useState2[1]; // const currentTime = useMediaCurrentTime(media, {
1525
- // disabled: disabled || !playing,
1526
- // ...props,
1527
- // });
1528
-
1530
+ setPlaying = _useState2[1];
1529
1531
 
1532
+ var currentTime = useMediaCurrentTime(media, _objectSpread__default["default"]({
1533
+ disabled: disabled || !playing
1534
+ }, props));
1530
1535
  var duration = useMediaDuration(media, _objectSpread__default["default"]({
1531
1536
  disabled: disabled || !playing
1532
1537
  }, props));
1533
1538
 
1534
- var _useState3 = react.useState(media !== null && (media.currentTime || 0) > 0 && duration > 0 ? media.currentTime / duration : 0),
1539
+ var _useState3 = react.useState(currentTime > 0 && duration > 0 ? currentTime / duration : 0),
1535
1540
  _useState4 = _slicedToArray__default["default"](_useState3, 2),
1536
1541
  progress = _useState4[0],
1537
1542
  setProgress = _useState4[1];
@@ -1566,8 +1571,8 @@ function useMediaProgress(media) {
1566
1571
 
1567
1572
  media.addEventListener('play', onResume);
1568
1573
  media.addEventListener('seeked', onResume);
1569
- media.addEventListener('playing', onResume); // media.addEventListener('timeupdate', onResume);
1570
-
1574
+ media.addEventListener('playing', onResume);
1575
+ media.addEventListener('timeupdate', onResume);
1571
1576
  media.addEventListener('pause', onPause);
1572
1577
  media.addEventListener('ended', onPause);
1573
1578
  media.addEventListener('waiting', onPause);
@@ -1582,8 +1587,8 @@ function useMediaProgress(media) {
1582
1587
  return function () {
1583
1588
  media.removeEventListener('play', onResume);
1584
1589
  media.removeEventListener('seeked', onResume);
1585
- media.removeEventListener('playing', onResume); // media.removeEventListener('timeupdate', onResume);
1586
-
1590
+ media.removeEventListener('playing', onResume);
1591
+ media.removeEventListener('timeupdate', onResume);
1587
1592
  media.removeEventListener('pause', onPause);
1588
1593
  media.removeEventListener('ended', onPause);
1589
1594
  media.removeEventListener('waiting', onPause);
@@ -1592,7 +1597,11 @@ function useMediaProgress(media) {
1592
1597
  };
1593
1598
  }, [media, updateProgress, setPlaying, playing]);
1594
1599
  react.useEffect(function () {
1595
- if (media === null || !playing || disabled) {
1600
+ if (media === null) {
1601
+ return function () {};
1602
+ }
1603
+
1604
+ if (!playing || disabled) {
1596
1605
  return function () {};
1597
1606
  }
1598
1607
 
@@ -2041,34 +2050,6 @@ var useScreenSizeFromWindow = function useScreenSizeFromWindow(opts) {
2041
2050
  return useScreenSize(_objectSpread__default["default"](_objectSpread__default["default"]({}, opts), windowSize));
2042
2051
  };
2043
2052
 
2044
- var getValueFromSpring = function getValueFromSpring(s) {
2045
- var _ref = s || {},
2046
- _ref$value = _ref.value,
2047
- v = _ref$value === void 0 ? null : _ref$value;
2048
-
2049
- var _ref2 = v || {},
2050
- p = _ref2.progress;
2051
-
2052
- return p;
2053
- };
2054
-
2055
- function useSpringValue(wantedProgress, immediate, params) {
2056
- var _useState = react.useState(wantedProgress),
2057
- _useState2 = _slicedToArray__default["default"](_useState, 2),
2058
- progress = _useState2[0],
2059
- setProgress = _useState2[1];
2060
-
2061
- var onChange = react.useCallback(function (spring) {
2062
- return setProgress(getValueFromSpring(spring));
2063
- }, [setProgress]);
2064
- core$1.useSpring(_objectSpread__default["default"]({
2065
- progress: wantedProgress,
2066
- onChange: onChange,
2067
- immediate: immediate
2068
- }, params));
2069
- return immediate ? wantedProgress : progress;
2070
- }
2071
-
2072
2053
  var useSwipe = function useSwipe() {
2073
2054
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
2074
2055
  _ref$width = _ref.width,
@@ -2393,7 +2374,6 @@ var useWindowEvent = utils.createUseEvent(eventsManager);
2393
2374
  exports.getObserver = getObserver;
2394
2375
  exports.useActivityDetector = useActivityDetector;
2395
2376
  exports.useAnimationFrame = useAnimationFrame;
2396
- exports.useDebounce = useDebounced;
2397
2377
  exports.useDimensionObserver = useDimensionObserver;
2398
2378
  exports.useDocumentEvent = useDocumentEvent;
2399
2379
  exports.useDragProgress = useDragProgress;
package/lib/utils.js CHANGED
@@ -950,22 +950,6 @@ var getStyleFromMargin = function getStyleFromMargin(value) {
950
950
  } : null);
951
951
  };
952
952
 
953
- var possibleMimes = ['video/webm', 'video/mp4', 'video/ogg'];
954
- var supportedMimes = null;
955
-
956
- function getVideoSupportedMimes() {
957
- var mimes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : possibleMimes;
958
-
959
- if (supportedMimes === null) {
960
- var video = document.createElement('video');
961
- supportedMimes = mimes.filter(function (mime) {
962
- return video.canPlayType(mime) !== '';
963
- });
964
- }
965
-
966
- return supportedMimes;
967
- }
968
-
969
953
  var getLayoutParts = function getLayoutParts() {
970
954
  var layout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
971
955
 
@@ -1168,7 +1152,6 @@ exports.getStyleFromImage = getStyleFromImage;
1168
1152
  exports.getStyleFromLink = getStyleFromLink;
1169
1153
  exports.getStyleFromMargin = getStyleFromMargin;
1170
1154
  exports.getStyleFromText = getStyleFromText;
1171
- exports.getVideoSupportedMimes = getVideoSupportedMimes;
1172
1155
  exports.isImageFilled = isImageFilled;
1173
1156
  exports.isIos = isIos;
1174
1157
  exports.isLabelFilled = isTextFilled$1;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@micromag/core",
3
- "version": "0.3.246",
3
+ "version": "0.3.251",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "javascript"
@@ -133,5 +133,5 @@
133
133
  "publishConfig": {
134
134
  "access": "public"
135
135
  },
136
- "gitHead": "473a4ad55684e54d3f1e62e760792ed6e003f8e7"
136
+ "gitHead": "3b6fb00baaa7f3ab90684a88cbe4c30929b6b27d"
137
137
  }