@remotion/preload 4.0.49 → 4.0.51

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.
@@ -1,3 +1,4 @@
1
1
  declare const typesAllowed: readonly ["video", "audio", "image", "font"];
2
+ export declare const isIosSafari: () => boolean;
2
3
  export declare const preloadAsset: (src: string, elemType: (typeof typesAllowed)[number]) => (() => void);
3
4
  export {};
@@ -1,8 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.preloadAsset = void 0;
3
+ exports.preloadAsset = exports.isIosSafari = void 0;
4
4
  const resolve_redirect_1 = require("./resolve-redirect");
5
5
  const typesAllowed = ['video', 'audio', 'image', 'font'];
6
+ const isIosSafari = () => {
7
+ return typeof window === 'undefined'
8
+ ? false
9
+ : /iP(ad|od|hone)/i.test(window.navigator.userAgent) &&
10
+ Boolean(navigator.userAgent.match(/Version\/[\d.]+.*Safari/));
11
+ };
12
+ exports.isIosSafari = isIosSafari;
6
13
  const preloadAsset = (src, elemType) => {
7
14
  const apiName = `preload${elemType.charAt(0).toUpperCase() + elemType.slice(1)}`;
8
15
  if (typeof document === 'undefined') {
@@ -37,7 +44,10 @@ const preloadAsset = (src, elemType) => {
37
44
  };
38
45
  }
39
46
  const elem = document.createElement(elemType);
40
- elem.preload = 'auto';
47
+ elem.preload =
48
+ (elemType === 'video' || elemType === 'audio') && (0, exports.isIosSafari)()
49
+ ? 'metadata'
50
+ : 'auto';
41
51
  elem.controls = true;
42
52
  elem.style.display = 'none';
43
53
  resolved
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/preload",
3
- "version": "4.0.49",
3
+ "version": "4.0.51",
4
4
  "description": "Utility functions for preloading assets in HTML5",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",