@micromag/element-video 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.
Files changed (2) hide show
  1. package/es/index.js +24 -4
  2. package/package.json +4 -4
package/es/index.js CHANGED
@@ -14,8 +14,10 @@ import { jsx, jsxs } from 'react/jsx-runtime';
14
14
  // Disabled webm for now
15
15
  // const defaultPossibleMimes = ['video/mp4', 'video/webm', 'video/ogg', 'application/vnd.apple.mpegurl'];
16
16
 
17
- function useSources(media) {
18
- var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
17
+ function useSources() {
18
+ var media = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
19
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
20
+ var _ref = options || {},
19
21
  _ref$possibleMimes = _ref.possibleMimes,
20
22
  possibleMimes = _ref$possibleMimes === void 0 ? null : _ref$possibleMimes;
21
23
  var _ref2 = media || {},
@@ -27,7 +29,9 @@ function useSources(media) {
27
29
  _ref3$mime = _ref3.mime,
28
30
  mediaMime = _ref3$mime === void 0 ? null : _ref3$mime;
29
31
  var settingsPossibleMimes = useSetting('supportedVideoMimes');
30
- var finalPossibleMimes = possibleMimes || settingsPossibleMimes || ['video/mp4'];
32
+ var finalPossibleMimes = useMemo(function () {
33
+ return possibleMimes || settingsPossibleMimes || ['video/mp4'];
34
+ }, [possibleMimes, settingsPossibleMimes]);
31
35
  var files = useMemo(function () {
32
36
  return getMediaFilesAsArray(mediaFiles);
33
37
  }, [mediaFiles]);
@@ -165,6 +169,8 @@ function Video(_ref) {
165
169
  var _useSources = useSources(media),
166
170
  sources = _useSources.sources,
167
171
  isImage = _useSources.isImage;
172
+ // console.log('media', media, sources, isImage);
173
+
168
174
  var isImageWithoutSourceFile = isImage && (sources === null || sources.length === 0);
169
175
  var _ref6 = useRef(null);
170
176
  var currentTime = useMediaCurrentTime(_ref6.current, {
@@ -245,9 +251,23 @@ function Video(_ref) {
245
251
  }
246
252
  }, [ready, onReady]);
247
253
  var finalPreload = shouldLoad ? preload : 'none';
254
+ var _useState5 = useState(finalPreload === 'auto' || finalPreload === 'metadata'),
255
+ _useState6 = _slicedToArray(_useState5, 2),
256
+ wasPreloaded = _useState6[0],
257
+ setWasPreloaded = _useState6[1];
248
258
  useEffect(function () {
249
259
  var _ref$current2 = _ref6.current,
250
260
  element = _ref$current2 === void 0 ? null : _ref$current2;
261
+ if (shouldLoad && !wasPreloaded && element !== null) {
262
+ try {
263
+ element.load();
264
+ } catch (_unused) {}
265
+ setWasPreloaded(true);
266
+ }
267
+ }, [shouldLoad, wasPreloaded]);
268
+ useEffect(function () {
269
+ var _ref$current3 = _ref6.current,
270
+ element = _ref$current3 === void 0 ? null : _ref$current3;
251
271
  if (element === null || mediaUrl === null) {
252
272
  return;
253
273
  }
@@ -288,7 +308,7 @@ function Video(_ref) {
288
308
  mediaRef.current = newRef;
289
309
  }
290
310
  },
291
- src: sources === null && shouldLoad ? "".concat(mediaUrl, "#t=0.001") : null,
311
+ src: sources === null && shouldLoad ? "".concat(mediaUrl, "#t=0.001") : undefined,
292
312
  autoPlay: autoPlay && !paused,
293
313
  loop: loop,
294
314
  muted: muted,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@micromag/element-video",
3
- "version": "0.4.55",
3
+ "version": "0.4.63",
4
4
  "private": false,
5
5
  "description": "",
6
6
  "keywords": [
@@ -60,8 +60,8 @@
60
60
  },
61
61
  "dependencies": {
62
62
  "@babel/runtime": "^7.28.6",
63
- "@micromag/core": "^0.4.55",
64
- "@micromag/element-closed-captions": "^0.4.55",
63
+ "@micromag/core": "^0.4.63",
64
+ "@micromag/element-closed-captions": "^0.4.63",
65
65
  "classnames": "^2.2.6",
66
66
  "hls.js": "^1.5.15",
67
67
  "lodash": "^4.17.23",
@@ -72,6 +72,6 @@
72
72
  "access": "public",
73
73
  "registry": "https://registry.npmjs.org/"
74
74
  },
75
- "gitHead": "9708f0016de0cf18dcd6a6aa5bc70d7f00b86d9f",
75
+ "gitHead": "0a6df1a5352c067c3296377d26fadb9b71244345",
76
76
  "types": "es/index.d.ts"
77
77
  }