@remotion/cli 4.0.37 → 4.0.38

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.
@@ -2,4 +2,4 @@ import type { StillImageFormat, VideoImageFormat } from '@remotion/renderer';
2
2
  export declare const setStillImageFormat: (format: StillImageFormat) => void;
3
3
  export declare const setVideoImageFormat: (format: VideoImageFormat) => void;
4
4
  export declare const getUserPreferredStillImageFormat: () => "png" | "jpeg" | "pdf" | "webp" | undefined;
5
- export declare const getUserPreferredVideoImageFormat: () => "none" | "png" | "jpeg" | undefined;
5
+ export declare const getUserPreferredVideoImageFormat: () => "png" | "jpeg" | "none" | undefined;
@@ -289,7 +289,7 @@ export declare const ConfigInternals: {
289
289
  getBrowser: () => null;
290
290
  getPixelFormat: () => "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
291
291
  getProResProfile: () => "4444-xq" | "4444" | "hq" | "standard" | "light" | "proxy" | undefined;
292
- getPresetProfile: () => "medium" | "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "slow" | "slower" | "veryslow" | "placebo" | undefined;
292
+ getPresetProfile: () => "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | "slow" | "slower" | "veryslow" | "placebo" | undefined;
293
293
  getShouldOverwrite: ({ defaultValue, }: {
294
294
  defaultValue: boolean;
295
295
  }) => boolean;
@@ -309,7 +309,7 @@ export declare const ConfigInternals: {
309
309
  getShouldOutputImageSequence: (frameRange: FrameRange | null) => boolean;
310
310
  getDotEnvLocation: () => string | null;
311
311
  getUserPreferredStillImageFormat: () => "png" | "jpeg" | "pdf" | "webp" | undefined;
312
- getUserPreferredVideoImageFormat: () => "none" | "png" | "jpeg" | undefined;
312
+ getUserPreferredVideoImageFormat: () => "png" | "jpeg" | "none" | undefined;
313
313
  getWebpackOverrideFn: () => WebpackOverrideFn;
314
314
  getWebpackCaching: () => boolean;
315
315
  getOutputLocation: () => string | null;
@@ -1 +1 @@
1
- export declare const getLogLevel: () => "error" | "verbose" | "info" | "warn", setLogLevel: (newLogLevel: "error" | "verbose" | "info" | "warn") => void;
1
+ export declare const getLogLevel: () => "verbose" | "info" | "warn" | "error", setLogLevel: (newLogLevel: "verbose" | "info" | "warn" | "error") => void;
@@ -12,6 +12,6 @@ export declare const getInputBorderColor: ({ status, isFocused, isHovered, }: {
12
12
  status: 'error' | 'warning' | 'ok';
13
13
  isFocused: boolean;
14
14
  isHovered: boolean;
15
- }) => "#ff3232" | "hsla(0, 0%, 100%, 0.15)" | "rgba(0, 0, 0, 0.6)" | "rgba(255, 255, 255, 0.05)" | "#f1c40f";
15
+ }) => "hsla(0, 0%, 100%, 0.15)" | "rgba(0, 0, 0, 0.6)" | "rgba(255, 255, 255, 0.05)" | "#ff3232" | "#f1c40f";
16
16
  export declare const RemotionInput: React.ForwardRefExoticComponent<Pick<Props, "key" | "status" | "rightAlign" | keyof React.InputHTMLAttributes<HTMLInputElement>> & React.RefAttributes<HTMLInputElement>>;
17
17
  export {};
@@ -1,2 +1,2 @@
1
1
  import type { Codec } from '@remotion/renderer';
2
- export declare const humanReadableCodec: (codec: Codec) => "AAC" | "MP3" | "GIF" | "H.264" | "H.264 Matroska" | "H.265" | "ProRes" | "WebM VP8" | "WebM VP9" | "Waveform" | undefined;
2
+ export declare const humanReadableCodec: (codec: Codec) => "GIF" | "AAC" | "MP3" | "H.264" | "H.264 Matroska" | "H.265" | "ProRes" | "WebM VP8" | "WebM VP9" | "Waveform" | undefined;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { PackageManager } from '../../preview-server/get-package-manager';
3
2
  export type UpdateInfo = {
4
3
  currentVersion: string;
@@ -31,6 +31,7 @@ const commands = {
31
31
  npm: 'npm run upgrade',
32
32
  yarn: 'yarn upgrade',
33
33
  pnpm: 'pnpm run upgrade',
34
+ bun: 'bun run upgrade',
34
35
  unknown: 'npm run upgrade',
35
36
  };
36
37
  const UpdateModal = ({ info }) => {
@@ -16,4 +16,4 @@ export declare const BLUE_DISABLED = "#284f73";
16
16
  export declare const getBackgroundFromHoverState: ({ selected, hovered, }: {
17
17
  selected: boolean;
18
18
  hovered: boolean;
19
- }) => "transparent" | "rgba(255, 255, 255, 0.06)" | "hsla(0, 0%, 100%, 0.15)" | "hsla(0, 0%, 100%, 0.25)";
19
+ }) => "transparent" | "hsla(0, 0%, 100%, 0.15)" | "hsla(0, 0%, 100%, 0.25)" | "rgba(255, 255, 255, 0.06)";
@@ -1,2 +1,2 @@
1
1
  import type { X264Preset } from '@remotion/renderer';
2
- export declare const labelx264Preset: (profile: X264Preset) => "medium" | "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "slow" | "slower" | "veryslow" | "placebo";
2
+ export declare const labelx264Preset: (profile: X264Preset) => "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | "slow" | "slower" | "veryslow" | "placebo";
@@ -16,12 +16,12 @@ export declare const getCliOptions: (options: {
16
16
  crf: import("@remotion/renderer").Crf | null;
17
17
  pixelFormat: "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
18
18
  proResProfile: "4444-xq" | "4444" | "hq" | "standard" | "light" | "proxy" | undefined;
19
- x264Preset: "medium" | "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "slow" | "slower" | "veryslow" | "placebo" | undefined;
19
+ x264Preset: "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | "slow" | "slower" | "veryslow" | "placebo" | undefined;
20
20
  everyNthFrame: number;
21
21
  numberOfGifLoops: import("./config/number-of-gif-loops").Loop;
22
22
  stillFrame: number;
23
23
  browserExecutable: BrowserExecutable;
24
- logLevel: "error" | "verbose" | "info" | "warn";
24
+ logLevel: "verbose" | "info" | "warn" | "error";
25
25
  scale: number;
26
26
  chromiumOptions: ChromiumOptions;
27
27
  overwrite: boolean;
@@ -34,7 +34,7 @@ export declare const getCliOptions: (options: {
34
34
  videoBitrate: string | null;
35
35
  height: number | null;
36
36
  width: number | null;
37
- configFileImageFormat: "none" | "png" | "jpeg" | undefined;
37
+ configFileImageFormat: "png" | "jpeg" | "none" | undefined;
38
38
  offthreadVideoCacheSizeInBytes: number | null;
39
39
  deleteAfter: ("1-day" | "3-days" | "7-days" | "30-days") | null;
40
40
  colorSpace: "default" | "bt709";
package/dist/index.d.ts CHANGED
@@ -63,24 +63,24 @@ export declare const CliInternals: {
63
63
  verbose: (message?: any, ...optionalParams: any[]) => void;
64
64
  verboseAdvanced: (options: {
65
65
  indent: boolean;
66
- logLevel: "error" | "verbose" | "info" | "warn";
66
+ logLevel: "verbose" | "info" | "warn" | "error";
67
67
  } & {
68
68
  tag?: string | undefined;
69
69
  }, message?: any, ...optionalParams: any[]) => void;
70
70
  info: (message?: any, ...optionalParams: any[]) => void;
71
71
  infoAdvanced: (options: {
72
72
  indent: boolean;
73
- logLevel: "error" | "verbose" | "info" | "warn";
73
+ logLevel: "verbose" | "info" | "warn" | "error";
74
74
  }, message?: any, ...optionalParams: any[]) => void;
75
75
  warn: (message?: any, ...optionalParams: any[]) => void;
76
76
  warnAdvanced: (options: {
77
77
  indent: boolean;
78
- logLevel: "error" | "verbose" | "info" | "warn";
78
+ logLevel: "verbose" | "info" | "warn" | "error";
79
79
  }, message?: any, ...optionalParams: any[]) => void;
80
80
  error: (message?: any, ...optionalParams: any[]) => void;
81
81
  errorAdvanced: (options: {
82
82
  indent: boolean;
83
- logLevel: "error" | "verbose" | "info" | "warn";
83
+ logLevel: "verbose" | "info" | "warn" | "error";
84
84
  } & {
85
85
  tag?: string | undefined;
86
86
  }, message?: any, ...optionalParams: any[]) => void;
@@ -101,12 +101,12 @@ export declare const CliInternals: {
101
101
  crf: import("@remotion/renderer").Crf | null;
102
102
  pixelFormat: "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
103
103
  proResProfile: "4444-xq" | "4444" | "hq" | "standard" | "light" | "proxy" | undefined;
104
- x264Preset: "medium" | "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "slow" | "slower" | "veryslow" | "placebo" | undefined;
104
+ x264Preset: "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | "slow" | "slower" | "veryslow" | "placebo" | undefined;
105
105
  everyNthFrame: number;
106
106
  numberOfGifLoops: import("./config/number-of-gif-loops").Loop;
107
107
  stillFrame: number;
108
108
  browserExecutable: import("@remotion/renderer").BrowserExecutable;
109
- logLevel: "error" | "verbose" | "info" | "warn";
109
+ logLevel: "verbose" | "info" | "warn" | "error";
110
110
  scale: number;
111
111
  chromiumOptions: import("@remotion/renderer").ChromiumOptions;
112
112
  overwrite: boolean;
@@ -119,7 +119,7 @@ export declare const CliInternals: {
119
119
  videoBitrate: string | null;
120
120
  height: number | null;
121
121
  width: number | null;
122
- configFileImageFormat: "none" | "png" | "jpeg" | undefined;
122
+ configFileImageFormat: "png" | "jpeg" | "none" | undefined;
123
123
  offthreadVideoCacheSizeInBytes: number | null;
124
124
  deleteAfter: ("1-day" | "3-days" | "7-days" | "30-days") | null;
125
125
  colorSpace: "default" | "bt709";
@@ -131,9 +131,9 @@ export declare const CliInternals: {
131
131
  parsedCli: {
132
132
  "browser-executable": import("@remotion/renderer").BrowserExecutable;
133
133
  "pixel-format": "yuv420p" | "yuva420p" | "yuv422p" | "yuv444p" | "yuv420p10le" | "yuv422p10le" | "yuv444p10le" | "yuva444p10le";
134
- "image-format": "none" | "png" | "jpeg" | "pdf" | "webp";
134
+ "image-format": "png" | "jpeg" | "none" | "pdf" | "webp";
135
135
  "prores-profile": "4444-xq" | "4444" | "hq" | "standard" | "light" | "proxy";
136
- "x264-preset": "medium" | "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "slow" | "slower" | "veryslow" | "placebo";
136
+ "x264-preset": "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | "slow" | "slower" | "veryslow" | "placebo";
137
137
  "bundle-cache": string;
138
138
  "env-file": string;
139
139
  "ignore-certificate-errors": string;
@@ -189,7 +189,7 @@ export declare const CliInternals: {
189
189
  } & {
190
190
  _: string[];
191
191
  };
192
- printError: (err: Error, logLevel: "error" | "verbose" | "info" | "warn") => Promise<void>;
192
+ printError: (err: Error, logLevel: "verbose" | "info" | "warn" | "error") => Promise<void>;
193
193
  formatBytes: (number: number, options?: Intl.NumberFormatOptions & {
194
194
  locale: string;
195
195
  bits?: boolean | undefined;
@@ -201,7 +201,7 @@ export declare const CliInternals: {
201
201
  downloadName: string | null;
202
202
  outName: string | null;
203
203
  configImageFormat: "png" | "jpeg" | "pdf" | "webp" | null;
204
- cliFlag: "none" | "png" | "jpeg" | "pdf" | "webp" | null;
204
+ cliFlag: "png" | "jpeg" | "none" | "pdf" | "webp" | null;
205
205
  isLambda: boolean;
206
206
  fromUi: "png" | "jpeg" | "pdf" | "webp" | null;
207
207
  }) => {
@@ -216,8 +216,8 @@ export declare const CliInternals: {
216
216
  };
217
217
  getVideoImageFormat: ({ codec, uiImageFormat, }: {
218
218
  codec: import("@remotion/renderer").CodecOrUndefined;
219
- uiImageFormat: "none" | "png" | "jpeg" | null;
220
- }) => "none" | "png" | "jpeg";
219
+ uiImageFormat: "png" | "jpeg" | "none" | null;
220
+ }) => "png" | "jpeg" | "none";
221
221
  printCompositions: (compositions: import("remotion").VideoConfig[]) => void;
222
222
  getFinalOutputCodec: ({ cliFlag, configFile, downloadName, outName, uiCodec, }: {
223
223
  cliFlag: import("@remotion/renderer").CodecOrUndefined;
@@ -231,7 +231,7 @@ export declare const CliInternals: {
231
231
  };
232
232
  listOfRemotionPackages: string[];
233
233
  shouldUseNonOverlayingLogger: ({ logLevel, }: {
234
- logLevel: "error" | "verbose" | "info" | "warn";
234
+ logLevel: "verbose" | "info" | "warn" | "error";
235
235
  }) => boolean;
236
236
  getCompositionWithDimensionOverride: ({ height, width, args, compositionIdFromUi, chromiumOptions, envVariables, port, puppeteerInstance, timeoutInMilliseconds, browserExecutable, serveUrlOrWebpackUrl, indent, serializedInputPropsWithCustomSchema, logLevel, server, offthreadVideoCacheSizeInBytes, }: {
237
237
  height: number | null;
@@ -246,7 +246,7 @@ export declare const CliInternals: {
246
246
  browserExecutable: import("@remotion/renderer").BrowserExecutable;
247
247
  serveUrlOrWebpackUrl: string;
248
248
  indent: boolean;
249
- logLevel: "error" | "verbose" | "info" | "warn";
249
+ logLevel: "verbose" | "info" | "warn" | "error";
250
250
  serializedInputPropsWithCustomSchema: string;
251
251
  server: import("@remotion/renderer").RemotionServer;
252
252
  offthreadVideoCacheSizeInBytes: number | null;
package/dist/index.js CHANGED
@@ -62,6 +62,10 @@ const cli = async () => {
62
62
  if (command !== versions_1.VERSIONS_COMMAND) {
63
63
  await (0, versions_1.validateVersionsBeforeCommand)(remotionRoot);
64
64
  }
65
+ const isBun = typeof Bun !== 'undefined';
66
+ if (isBun) {
67
+ log_1.Log.warn('You are running Remotion with Bun. Visit https://remotion.dev/bun for known bugs and status updates.');
68
+ }
65
69
  const isStudio = command === 'studio' || command === 'preview';
66
70
  const errorSymbolicationLock = isStudio
67
71
  ? 0
@@ -36,12 +36,15 @@ const loadConfigFile = async (remotionRoot, configFileName, isJavascript) => {
36
36
  }
37
37
  process.exit(1);
38
38
  }
39
- const str = new TextDecoder().decode(result.outputFiles[0].contents);
39
+ let str = new TextDecoder().decode(result.outputFiles[0].contents);
40
40
  const currentCwd = process.cwd();
41
41
  // The config file is always executed from the Remotion root, if `process.cwd()` is being used. We cannot enforce this in worker threads used for testing
42
42
  if (node_worker_threads_1.isMainThread) {
43
43
  process.chdir(remotionRoot);
44
44
  }
45
+ if (process.env.PATCH_BUN_DEVELOPMENT) {
46
+ str = str.replace('@remotion/cli/config', './config');
47
+ }
45
48
  // Exectute the contents of the config file
46
49
  // eslint-disable-next-line no-eval
47
50
  eval(str);
package/dist/log.d.ts CHANGED
@@ -2,24 +2,24 @@ export declare const Log: {
2
2
  verbose: (message?: any, ...optionalParams: any[]) => void;
3
3
  verboseAdvanced: (options: {
4
4
  indent: boolean;
5
- logLevel: "error" | "verbose" | "info" | "warn";
5
+ logLevel: "verbose" | "info" | "warn" | "error";
6
6
  } & {
7
7
  tag?: string | undefined;
8
8
  }, message?: any, ...optionalParams: any[]) => void;
9
9
  info: (message?: any, ...optionalParams: any[]) => void;
10
10
  infoAdvanced: (options: {
11
11
  indent: boolean;
12
- logLevel: "error" | "verbose" | "info" | "warn";
12
+ logLevel: "verbose" | "info" | "warn" | "error";
13
13
  }, message?: any, ...optionalParams: any[]) => void;
14
14
  warn: (message?: any, ...optionalParams: any[]) => void;
15
15
  warnAdvanced: (options: {
16
16
  indent: boolean;
17
- logLevel: "error" | "verbose" | "info" | "warn";
17
+ logLevel: "verbose" | "info" | "warn" | "error";
18
18
  }, message?: any, ...optionalParams: any[]) => void;
19
19
  error: (message?: any, ...optionalParams: any[]) => void;
20
20
  errorAdvanced: (options: {
21
21
  indent: boolean;
22
- logLevel: "error" | "verbose" | "info" | "warn";
22
+ logLevel: "verbose" | "info" | "warn" | "error";
23
23
  } & {
24
24
  tag?: string | undefined;
25
25
  }, message?: any, ...optionalParams: any[]) => void;
@@ -11,5 +11,5 @@ type Range = {
11
11
  type Ranges = Range[] & {
12
12
  type?: string;
13
13
  };
14
- export declare function parseRange(size: number, str: string | string[]): -1 | -2 | Ranges;
14
+ export declare function parseRange(size: number, str: string | string[]): -1 | Ranges | -2;
15
15
  export {};
@@ -1,4 +1,4 @@
1
- export type PackageManager = 'npm' | 'yarn' | 'pnpm';
1
+ export type PackageManager = 'npm' | 'yarn' | 'pnpm' | 'bun';
2
2
  type LockfilePath = {
3
3
  manager: PackageManager;
4
4
  path: string;
@@ -25,6 +25,12 @@ exports.lockFilePaths = [
25
25
  installCommand: 'pnpm i',
26
26
  startCommand: 'pnpm start',
27
27
  },
28
+ {
29
+ path: 'bun.lockb',
30
+ manager: 'bun',
31
+ installCommand: 'bun i',
32
+ startCommand: 'bun start',
33
+ },
28
34
  ];
29
35
  const getPackageManager = (remotionRoot, packageManager) => {
30
36
  if (packageManager) {
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type { IncomingMessage, ServerResponse } from 'node:http';
3
2
  import type { LiveEventsServer } from './live-events';
4
3
  export declare const handleRoutes: ({ hash, hashPrefix, request, response, liveEventsServer, getCurrentInputProps, getEnvVariables, remotionRoot, entryPoint, publicDir, }: {
package/dist/upgrade.js CHANGED
@@ -17,6 +17,7 @@ const getUpgradeCommand = ({ manager, packages, version, }) => {
17
17
  npm: ['i', '--save-exact', ...pkgList],
18
18
  pnpm: ['i', '--save-exact', ...pkgList],
19
19
  yarn: ['add', '--exact', ...pkgList],
20
+ bun: ['i', ...pkgList],
20
21
  };
21
22
  return commands[manager];
22
23
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/cli",
3
- "version": "4.0.37",
3
+ "version": "4.0.38",
4
4
  "description": "CLI for Remotion",
5
5
  "main": "dist/index.js",
6
6
  "sideEffects": false,
@@ -35,11 +35,11 @@
35
35
  "prompts": "2.4.1",
36
36
  "semver": "7.5.3",
37
37
  "source-map": "0.6.1",
38
- "@remotion/media-utils": "4.0.37",
39
- "@remotion/player": "4.0.37",
40
- "remotion": "4.0.37",
41
- "@remotion/bundler": "4.0.37",
42
- "@remotion/renderer": "4.0.37"
38
+ "remotion": "4.0.38",
39
+ "@remotion/bundler": "4.0.38",
40
+ "@remotion/player": "4.0.38",
41
+ "@remotion/renderer": "4.0.38",
42
+ "@remotion/media-utils": "4.0.38"
43
43
  },
44
44
  "peerDependencies": {
45
45
  "react": ">=16.8.0",
@@ -65,8 +65,8 @@
65
65
  "react-dom": "^18.0.0",
66
66
  "vitest": "0.31.1",
67
67
  "zod": "^3.21.4",
68
- "@remotion/tailwind": "4.0.37",
69
- "@remotion/zod-types": "4.0.37"
68
+ "@remotion/zod-types": "4.0.38",
69
+ "@remotion/tailwind": "4.0.38"
70
70
  },
71
71
  "keywords": [
72
72
  "remotion",