@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/components.js +0 -4
- package/es/contexts.js +134 -79
- package/es/hooks.js +69 -88
- package/es/utils.js +1 -17
- package/lib/components.js +0 -4
- package/lib/contexts.js +136 -78
- package/lib/hooks.js +68 -88
- package/lib/utils.js +0 -17
- package/package.json +2 -2
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(
|
|
293
|
+
var _useState = react.useState({
|
|
294
|
+
dragging: false,
|
|
295
|
+
progress: wantedProgress
|
|
296
|
+
}),
|
|
275
297
|
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
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
|
-
|
|
311
|
-
|
|
312
|
-
|
|
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
|
-
}, [
|
|
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 (
|
|
328
|
-
|
|
329
|
-
|
|
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:
|
|
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];
|
|
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(
|
|
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);
|
|
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);
|
|
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
|
|
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.
|
|
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": "
|
|
136
|
+
"gitHead": "3b6fb00baaa7f3ab90684a88cbe4c30929b6b27d"
|
|
137
137
|
}
|