@remotion/cli 3.0.18 → 3.0.19

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 (135) hide show
  1. package/dist/bundle-on-cli.d.ts +2 -0
  2. package/dist/bundle-on-cli.js +41 -0
  3. package/dist/bundle.d.ts +1 -0
  4. package/dist/bundle.js +31 -0
  5. package/dist/download-progress.js +4 -1
  6. package/dist/editor/components/MenuBuildIndicator.d.ts +2 -0
  7. package/dist/editor/components/MenuBuildIndicator.js +26 -0
  8. package/dist/editor/components/TopPanel.js +1 -0
  9. package/dist/get-latest-remotion-version.d.ts +1 -0
  10. package/dist/get-latest-remotion-version.js +31 -0
  11. package/dist/prepare-entry-point.d.ts +11 -0
  12. package/dist/prepare-entry-point.js +36 -0
  13. package/dist/preview-server/dev-middleware/compatible-api.d.ts +9 -0
  14. package/dist/preview-server/dev-middleware/compatible-api.js +28 -0
  15. package/dist/preview-server/dev-middleware/get-paths.d.ts +7 -0
  16. package/dist/preview-server/dev-middleware/get-paths.js +19 -0
  17. package/dist/preview-server/dev-middleware/index.d.ts +3 -0
  18. package/dist/preview-server/dev-middleware/index.js +27 -0
  19. package/dist/preview-server/dev-middleware/is-color-supported.d.ts +1 -0
  20. package/dist/preview-server/dev-middleware/is-color-supported.js +37 -0
  21. package/dist/preview-server/dev-middleware/middleware.d.ts +10 -0
  22. package/dist/preview-server/dev-middleware/middleware.js +223 -0
  23. package/dist/preview-server/dev-middleware/range-parser.d.ts +15 -0
  24. package/dist/preview-server/dev-middleware/range-parser.js +96 -0
  25. package/dist/preview-server/dev-middleware/ready.d.ts +3 -0
  26. package/dist/preview-server/dev-middleware/ready.js +11 -0
  27. package/dist/preview-server/dev-middleware/setup-hooks.d.ts +2 -0
  28. package/dist/preview-server/dev-middleware/setup-hooks.js +42 -0
  29. package/dist/preview-server/dev-middleware/setup-output-filesystem.d.ts +2 -0
  30. package/dist/preview-server/dev-middleware/setup-output-filesystem.js +13 -0
  31. package/dist/preview-server/dev-middleware/types.d.ts +10 -0
  32. package/dist/preview-server/dev-middleware/types.js +2 -0
  33. package/dist/preview-server/error-overlay/entry-basic.d.ts +1 -0
  34. package/dist/preview-server/error-overlay/entry-basic.js +21 -0
  35. package/dist/preview-server/error-overlay/react-overlay/effects/format-warning.d.ts +11 -0
  36. package/dist/preview-server/error-overlay/react-overlay/effects/format-warning.js +41 -0
  37. package/dist/preview-server/error-overlay/react-overlay/effects/map-error-to-react-stack.d.ts +7 -0
  38. package/dist/preview-server/error-overlay/react-overlay/effects/map-error-to-react-stack.js +46 -0
  39. package/dist/preview-server/error-overlay/react-overlay/effects/proxy-console.d.ts +24 -0
  40. package/dist/preview-server/error-overlay/react-overlay/effects/proxy-console.js +64 -0
  41. package/dist/preview-server/error-overlay/react-overlay/effects/resolve-file-source.d.ts +3 -0
  42. package/dist/preview-server/error-overlay/react-overlay/effects/resolve-file-source.js +31 -0
  43. package/dist/preview-server/error-overlay/react-overlay/effects/stack-trace-limit.d.ts +3 -0
  44. package/dist/preview-server/error-overlay/react-overlay/effects/stack-trace-limit.js +43 -0
  45. package/dist/preview-server/error-overlay/react-overlay/effects/unhandled-error.d.ts +4 -0
  46. package/dist/preview-server/error-overlay/react-overlay/effects/unhandled-error.js +45 -0
  47. package/dist/preview-server/error-overlay/react-overlay/effects/unhandled-rejection.d.ts +4 -0
  48. package/dist/preview-server/error-overlay/react-overlay/effects/unhandled-rejection.js +41 -0
  49. package/dist/preview-server/error-overlay/react-overlay/index.d.ts +2 -0
  50. package/dist/preview-server/error-overlay/react-overlay/index.js +21 -0
  51. package/dist/preview-server/error-overlay/react-overlay/listen-to-runtime-errors.d.ts +8 -0
  52. package/dist/preview-server/error-overlay/react-overlay/listen-to-runtime-errors.js +79 -0
  53. package/dist/preview-server/error-overlay/react-overlay/utils/get-file-source.d.ts +1 -0
  54. package/dist/preview-server/error-overlay/react-overlay/utils/get-file-source.js +21 -0
  55. package/dist/preview-server/error-overlay/react-overlay/utils/get-lines-around.d.ts +14 -0
  56. package/dist/preview-server/error-overlay/react-overlay/utils/get-lines-around.js +24 -0
  57. package/dist/preview-server/error-overlay/react-overlay/utils/get-source-map.d.ts +13 -0
  58. package/dist/preview-server/error-overlay/react-overlay/utils/get-source-map.js +58 -0
  59. package/dist/preview-server/error-overlay/react-overlay/utils/get-stack-frames.d.ts +2 -0
  60. package/dist/preview-server/error-overlay/react-overlay/utils/get-stack-frames.js +27 -0
  61. package/dist/preview-server/error-overlay/react-overlay/utils/open-in-editor.d.ts +12 -0
  62. package/dist/preview-server/error-overlay/react-overlay/utils/open-in-editor.js +460 -0
  63. package/dist/preview-server/error-overlay/react-overlay/utils/parser.d.ts +2 -0
  64. package/dist/preview-server/error-overlay/react-overlay/utils/parser.js +117 -0
  65. package/dist/preview-server/error-overlay/react-overlay/utils/stack-frame.d.ts +40 -0
  66. package/dist/preview-server/error-overlay/react-overlay/utils/stack-frame.js +31 -0
  67. package/dist/preview-server/error-overlay/react-overlay/utils/unmapper.d.ts +2 -0
  68. package/dist/preview-server/error-overlay/react-overlay/utils/unmapper.js +64 -0
  69. package/dist/preview-server/error-overlay/remotion-overlay/AskOnDiscord.d.ts +2 -0
  70. package/dist/preview-server/error-overlay/remotion-overlay/AskOnDiscord.js +14 -0
  71. package/dist/preview-server/error-overlay/remotion-overlay/Button.d.ts +6 -0
  72. package/dist/preview-server/error-overlay/remotion-overlay/Button.js +24 -0
  73. package/dist/preview-server/error-overlay/remotion-overlay/CodeFrame.d.ts +6 -0
  74. package/dist/preview-server/error-overlay/remotion-overlay/CodeFrame.js +28 -0
  75. package/dist/preview-server/error-overlay/remotion-overlay/DismissButton.d.ts +2 -0
  76. package/dist/preview-server/error-overlay/remotion-overlay/DismissButton.js +23 -0
  77. package/dist/preview-server/error-overlay/remotion-overlay/ErrorDisplay.d.ts +5 -0
  78. package/dist/preview-server/error-overlay/remotion-overlay/ErrorDisplay.js +45 -0
  79. package/dist/preview-server/error-overlay/remotion-overlay/ErrorLoader.d.ts +4 -0
  80. package/dist/preview-server/error-overlay/remotion-overlay/ErrorLoader.js +61 -0
  81. package/dist/preview-server/error-overlay/remotion-overlay/ErrorTitle.d.ts +6 -0
  82. package/dist/preview-server/error-overlay/remotion-overlay/ErrorTitle.js +41 -0
  83. package/dist/preview-server/error-overlay/remotion-overlay/OpenInEditor.d.ts +5 -0
  84. package/dist/preview-server/error-overlay/remotion-overlay/OpenInEditor.js +91 -0
  85. package/dist/preview-server/error-overlay/remotion-overlay/Overlay.d.ts +14 -0
  86. package/dist/preview-server/error-overlay/remotion-overlay/Overlay.js +49 -0
  87. package/dist/preview-server/error-overlay/remotion-overlay/SearchGitHubIssues.d.ts +4 -0
  88. package/dist/preview-server/error-overlay/remotion-overlay/SearchGitHubIssues.js +13 -0
  89. package/dist/preview-server/error-overlay/remotion-overlay/StackFrame.d.ts +8 -0
  90. package/dist/preview-server/error-overlay/remotion-overlay/StackFrame.js +48 -0
  91. package/dist/preview-server/error-overlay/remotion-overlay/Symbolicating.d.ts +2 -0
  92. package/dist/preview-server/error-overlay/remotion-overlay/Symbolicating.js +8 -0
  93. package/dist/preview-server/error-overlay/remotion-overlay/carets.d.ts +3 -0
  94. package/dist/preview-server/error-overlay/remotion-overlay/carets.js +12 -0
  95. package/dist/preview-server/error-overlay/remotion-overlay/format-location.d.ts +1 -0
  96. package/dist/preview-server/error-overlay/remotion-overlay/format-location.js +10 -0
  97. package/dist/preview-server/error-overlay/remotion-overlay/index.d.ts +1 -0
  98. package/dist/preview-server/error-overlay/remotion-overlay/index.js +18 -0
  99. package/dist/preview-server/fast-refresh/helpers.d.ts +39 -0
  100. package/dist/preview-server/fast-refresh/helpers.js +145 -0
  101. package/dist/preview-server/fast-refresh/index.d.ts +30 -0
  102. package/dist/preview-server/fast-refresh/index.js +86 -0
  103. package/dist/preview-server/fast-refresh/loader.d.ts +35 -0
  104. package/dist/preview-server/fast-refresh/loader.js +81 -0
  105. package/dist/preview-server/fast-refresh/runtime.d.ts +35 -0
  106. package/dist/preview-server/fast-refresh/runtime.js +32 -0
  107. package/dist/preview-server/get-package-manager.d.ts +9 -0
  108. package/dist/preview-server/get-package-manager.js +40 -0
  109. package/dist/preview-server/hot-middleware/client.d.ts +19 -0
  110. package/dist/preview-server/hot-middleware/client.js +177 -0
  111. package/dist/preview-server/hot-middleware/index.d.ts +8 -0
  112. package/dist/preview-server/hot-middleware/index.js +150 -0
  113. package/dist/preview-server/hot-middleware/process-update.d.ts +12 -0
  114. package/dist/preview-server/hot-middleware/process-update.js +144 -0
  115. package/dist/preview-server/hot-middleware/strip-ansi.d.ts +1 -0
  116. package/dist/preview-server/hot-middleware/strip-ansi.js +21 -0
  117. package/dist/preview-server/hot-middleware/types.d.ts +27 -0
  118. package/dist/preview-server/hot-middleware/types.js +10 -0
  119. package/dist/preview-server/project-info.d.ts +5 -0
  120. package/dist/preview-server/project-info.js +22 -0
  121. package/dist/preview-server/routes.d.ts +2 -0
  122. package/dist/preview-server/routes.js +121 -0
  123. package/dist/preview-server/serve-static.d.ts +9 -0
  124. package/dist/preview-server/serve-static.js +77 -0
  125. package/dist/preview-server/start-server.d.ts +8 -0
  126. package/dist/preview-server/start-server.js +68 -0
  127. package/dist/preview-server/static-preview.d.ts +1 -0
  128. package/dist/preview-server/static-preview.js +40 -0
  129. package/dist/preview-server/update-available.d.ts +11 -0
  130. package/dist/preview-server/update-available.js +44 -0
  131. package/dist/preview-server/webpack-cache.d.ts +12 -0
  132. package/dist/preview-server/webpack-cache.js +66 -0
  133. package/dist/webpack-cache.d.ts +12 -0
  134. package/dist/webpack-cache.js +66 -0
  135. package/package.json +7 -7
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.handleRoutes = void 0;
7
+ const bundler_1 = require("@remotion/bundler");
8
+ const fs_1 = require("fs");
9
+ const path_1 = __importDefault(require("path"));
10
+ const url_1 = require("url");
11
+ const get_file_source_1 = require("./error-overlay/react-overlay/utils/get-file-source");
12
+ const open_in_editor_1 = require("./error-overlay/react-overlay/utils/open-in-editor");
13
+ const project_info_1 = require("./project-info");
14
+ const serve_static_1 = require("./serve-static");
15
+ const update_available_1 = require("./update-available");
16
+ const handleUpdate = async (_, response) => {
17
+ const data = await (0, update_available_1.isUpdateAvailableWithTimeout)();
18
+ response.setHeader('content-type', 'application/json');
19
+ response.writeHead(200);
20
+ response.end(JSON.stringify(data));
21
+ };
22
+ const editorGuess = (0, open_in_editor_1.guessEditor)();
23
+ const handleFallback = async (hash, _, response) => {
24
+ const edit = await editorGuess;
25
+ const displayName = (0, open_in_editor_1.getDisplayNameForEditor)(edit[0]);
26
+ response.setHeader('content-type', 'text/html');
27
+ response.writeHead(200);
28
+ response.end(bundler_1.BundlerInternals.indexHtml(hash, '/', displayName));
29
+ };
30
+ const handleProjectInfo = async (_, response) => {
31
+ const data = await (0, project_info_1.getProjectInfo)();
32
+ response.setHeader('content-type', 'application/json');
33
+ response.writeHead(200);
34
+ response.end(JSON.stringify(data));
35
+ };
36
+ const handleFileSource = async (search, _, response) => {
37
+ if (!search.startsWith('?')) {
38
+ throw new Error('query must start with ?');
39
+ }
40
+ const query = new url_1.URLSearchParams(search);
41
+ const f = query.get('f');
42
+ if (typeof f !== 'string') {
43
+ throw new Error('must pass `f` parameter');
44
+ }
45
+ const data = await (0, get_file_source_1.getFileSource)(decodeURIComponent(f));
46
+ response.writeHead(200);
47
+ response.write(data);
48
+ return response.end();
49
+ };
50
+ const handleOpenInEditor = async (req, res) => {
51
+ try {
52
+ const b = await new Promise((_resolve) => {
53
+ let data = '';
54
+ req.on('data', (chunk) => {
55
+ data += chunk;
56
+ });
57
+ req.on('end', () => {
58
+ _resolve(data.toString());
59
+ });
60
+ });
61
+ const body = JSON.parse(b);
62
+ if (!('stack' in body)) {
63
+ throw new TypeError('Need to pass stack');
64
+ }
65
+ const stack = body.stack;
66
+ const guess = await editorGuess;
67
+ const didOpen = await (0, open_in_editor_1.launchEditor)({
68
+ colNumber: stack.originalColumnNumber,
69
+ editor: guess[0],
70
+ fileName: path_1.default.resolve(process.cwd(), stack.originalFileName),
71
+ lineNumber: stack.originalLineNumber,
72
+ vsCodeNewWindow: false,
73
+ });
74
+ res.setHeader('content-type', 'application/json');
75
+ res.writeHead(200);
76
+ res.end(JSON.stringify({
77
+ success: didOpen,
78
+ }));
79
+ }
80
+ catch (err) {
81
+ res.setHeader('content-type', 'application/json');
82
+ res.writeHead(200);
83
+ res.end(JSON.stringify({
84
+ success: false,
85
+ }));
86
+ }
87
+ };
88
+ const handleFavicon = (_, response) => {
89
+ const filePath = path_1.default.join(__dirname, '..', 'web', 'favicon.png');
90
+ const stat = (0, fs_1.statSync)(filePath);
91
+ response.writeHead(200, {
92
+ 'Content-Type': 'image/png',
93
+ 'Content-Length': stat.size,
94
+ });
95
+ const readStream = (0, fs_1.createReadStream)(filePath);
96
+ readStream.pipe(response);
97
+ };
98
+ const handleRoutes = (hash, request, response) => {
99
+ const url = new URL(request.url, 'http://localhost');
100
+ if (url.pathname === '/api/update') {
101
+ return handleUpdate(request, response);
102
+ }
103
+ if (url.pathname === '/api/project-info') {
104
+ return handleProjectInfo(request, response);
105
+ }
106
+ if (url.pathname === '/api/file-source') {
107
+ return handleFileSource(url.search, request, response);
108
+ }
109
+ if (url.pathname === '/api/open-in-editor') {
110
+ return handleOpenInEditor(request, response);
111
+ }
112
+ if (url.pathname === '/remotion.png') {
113
+ return handleFavicon(request, response);
114
+ }
115
+ if (url.pathname.startsWith(hash)) {
116
+ const root = path_1.default.join(process.cwd(), 'public');
117
+ return (0, serve_static_1.serveStatic)(root, hash, request, response);
118
+ }
119
+ return handleFallback(hash, request, response);
120
+ };
121
+ exports.handleRoutes = handleRoutes;
@@ -0,0 +1,9 @@
1
+ /*!
2
+ * serve-static
3
+ * Copyright(c) 2010 Sencha Inc.
4
+ * Copyright(c) 2011 TJ Holowaychuk
5
+ * Copyright(c) 2014-2016 Douglas Christopher Wilson
6
+ * MIT Licensed
7
+ */
8
+ import { IncomingMessage, ServerResponse } from 'http';
9
+ export declare const serveStatic: (root: string, hash: string, req: IncomingMessage, res: ServerResponse) => Promise<void>;
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ /*!
3
+ * serve-static
4
+ * Copyright(c) 2010 Sencha Inc.
5
+ * Copyright(c) 2011 TJ Holowaychuk
6
+ * Copyright(c) 2014-2016 Douglas Christopher Wilson
7
+ * MIT Licensed
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.serveStatic = void 0;
11
+ const renderer_1 = require("@remotion/renderer");
12
+ const fs_1 = require("fs");
13
+ const path_1 = require("path");
14
+ const middleware_1 = require("./dev-middleware/middleware");
15
+ const range_parser_1 = require("./dev-middleware/range-parser");
16
+ const serveStatic = async function (root, hash, req, res) {
17
+ if (req.method !== 'GET' && req.method !== 'HEAD') {
18
+ // method not allowed
19
+ res.statusCode = 405;
20
+ res.setHeader('Allow', 'GET, HEAD');
21
+ res.setHeader('Content-Length', '0');
22
+ res.end();
23
+ return;
24
+ }
25
+ const path = (0, path_1.join)(root, new URL(req.url, 'http://localhost').pathname.replace(new RegExp(`^${hash}`), ''));
26
+ if (!renderer_1.RenderInternals.isPathInside(path, root)) {
27
+ res.writeHead(500);
28
+ res.write('Not allowed to read');
29
+ res.end();
30
+ return;
31
+ }
32
+ const exists = (0, fs_1.existsSync)(path);
33
+ if (!exists) {
34
+ res.writeHead(404);
35
+ res.write('Not found');
36
+ res.end();
37
+ return;
38
+ }
39
+ const lstat = await fs_1.promises.lstat(path);
40
+ const isDirectory = lstat.isDirectory();
41
+ if (isDirectory) {
42
+ res.writeHead(500);
43
+ res.write('Is a directory');
44
+ res.end();
45
+ return;
46
+ }
47
+ const hasRange = req.headers.range && lstat.size;
48
+ if (!hasRange) {
49
+ const readStream = (0, fs_1.createReadStream)(path);
50
+ res.setHeader('content-type', renderer_1.RenderInternals.mime.lookup(path) || 'application/octet-stream');
51
+ res.setHeader('content-length', lstat.size);
52
+ res.writeHead(200);
53
+ readStream.pipe(res);
54
+ return;
55
+ }
56
+ const range = (0, range_parser_1.parseRange)(lstat.size, req.headers.range);
57
+ if (typeof range === 'object' && range.type === 'bytes') {
58
+ const { start, end } = range[0];
59
+ res.setHeader('content-type', renderer_1.RenderInternals.mime.lookup(path) || 'application/octet-stream');
60
+ res.setHeader('content-range', (0, middleware_1.getValueContentRangeHeader)('bytes', lstat.size, {
61
+ end,
62
+ start,
63
+ }));
64
+ res.setHeader('content-length', end - start + 1);
65
+ res.writeHead(206);
66
+ const readStream = (0, fs_1.createReadStream)(path, {
67
+ start,
68
+ end,
69
+ });
70
+ readStream.pipe(res);
71
+ return;
72
+ }
73
+ res.statusCode = 416;
74
+ res.setHeader('Content-Range', `bytes */${lstat.size}`);
75
+ res.end();
76
+ };
77
+ exports.serveStatic = serveStatic;
@@ -0,0 +1,8 @@
1
+ import { WebpackOverrideFn } from 'remotion';
2
+ export declare const startServer: (entry: string, userDefinedComponent: string, options?: {
3
+ webpackOverride?: WebpackOverrideFn;
4
+ inputProps?: object;
5
+ envVariables?: Record<string, string>;
6
+ port: number | null;
7
+ maxTimelineTracks?: number;
8
+ }) => Promise<number>;
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.startServer = void 0;
7
+ const bundler_1 = require("@remotion/bundler");
8
+ const renderer_1 = require("@remotion/renderer");
9
+ const crypto_1 = __importDefault(require("crypto"));
10
+ const fs_1 = __importDefault(require("fs"));
11
+ const http_1 = __importDefault(require("http"));
12
+ const os_1 = __importDefault(require("os"));
13
+ const path_1 = __importDefault(require("path"));
14
+ const remotion_1 = require("remotion");
15
+ const dev_middleware_1 = require("./dev-middleware");
16
+ const hot_middleware_1 = require("./hot-middleware");
17
+ const routes_1 = require("./routes");
18
+ const startServer = async (entry, userDefinedComponent, options) => {
19
+ var _a, _b, _c, _d, _e;
20
+ const tmpDir = await fs_1.default.promises.mkdtemp(path_1.default.join(os_1.default.tmpdir(), 'react-motion-graphics'));
21
+ const config = bundler_1.BundlerInternals.webpackConfig({
22
+ entry,
23
+ userDefinedComponent,
24
+ outDir: tmpDir,
25
+ environment: 'development',
26
+ webpackOverride: (_a = options === null || options === void 0 ? void 0 : options.webpackOverride) !== null && _a !== void 0 ? _a : remotion_1.Internals.getWebpackOverrideFn(),
27
+ inputProps: (_b = options === null || options === void 0 ? void 0 : options.inputProps) !== null && _b !== void 0 ? _b : {},
28
+ envVariables: (_c = options === null || options === void 0 ? void 0 : options.envVariables) !== null && _c !== void 0 ? _c : {},
29
+ maxTimelineTracks: (_d = options === null || options === void 0 ? void 0 : options.maxTimelineTracks) !== null && _d !== void 0 ? _d : 15,
30
+ entryPoints: [
31
+ require.resolve('./hot-middleware/client'),
32
+ require.resolve('./error-overlay/entry-basic.js'),
33
+ ],
34
+ });
35
+ const compiler = (0, bundler_1.webpack)(config);
36
+ const hash = `/static-${crypto_1.default.randomBytes(6).toString('hex')}`;
37
+ const wdmMiddleware = (0, dev_middleware_1.wdm)(compiler);
38
+ const whm = (0, hot_middleware_1.webpackHotMiddleware)(compiler);
39
+ const server = http_1.default.createServer((request, response) => {
40
+ new Promise((resolve) => {
41
+ wdmMiddleware(request, response, () => {
42
+ resolve();
43
+ });
44
+ })
45
+ .then(() => {
46
+ return new Promise((resolve) => {
47
+ whm(request, response, () => {
48
+ resolve();
49
+ });
50
+ });
51
+ })
52
+ .then(() => {
53
+ (0, routes_1.handleRoutes)(hash, request, response);
54
+ })
55
+ .catch((err) => {
56
+ response.setHeader('content-type', 'application/json');
57
+ response.writeHead(500);
58
+ response.end(JSON.stringify({
59
+ err: err.message,
60
+ }));
61
+ });
62
+ });
63
+ const desiredPort = (_e = options === null || options === void 0 ? void 0 : options.port) !== null && _e !== void 0 ? _e : undefined;
64
+ const port = await renderer_1.RenderInternals.getDesiredPort(desiredPort, 3000, 3100);
65
+ server.listen(port);
66
+ return port;
67
+ };
68
+ exports.startServer = startServer;
@@ -0,0 +1 @@
1
+ export declare const indexHtml: (staticHash: string, baseDir: string, editorName: string | null) => string;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.indexHtml = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ const indexHtml = (staticHash, baseDir, editorName) => `
9
+ <!DOCTYPE html>
10
+ <html lang="en">
11
+ <head>
12
+ <meta charset="UTF-8" />
13
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
14
+ <link rel="preconnect" href="https://fonts.gstatic.com" />
15
+ <link rel="icon" type="image/png" href="/remotion.png" />
16
+ <title>Remotion Preview</title>
17
+ </head>
18
+ <body>
19
+ <script>window.remotion_staticBase = "${staticHash}";</script>
20
+ <div id="video-container"></div>
21
+ <div id="explainer-container"></div>
22
+ ${editorName
23
+ ? `<script>window.remotion_editorName = "${editorName}";</script>`
24
+ : '<script>window.remotion_editorName = null;</script>'}
25
+ <script>window.remotion_projectName = ${JSON.stringify(path_1.default.basename(process.cwd()))};</script>
26
+ <script>window.remotion_cwd = ${JSON.stringify(process.cwd())};</script>
27
+
28
+ <div id="container"></div>
29
+ <div id="menuportal-0"></div>
30
+ <div id="menuportal-1"></div>
31
+ <div id="menuportal-2"></div>
32
+ <div id="menuportal-3"></div>
33
+ <div id="menuportal-4"></div>
34
+ <div id="menuportal-5"></div>
35
+ <div id="remotion-error-overlay"></div>
36
+ <script src="${baseDir}bundle.js"></script>
37
+ </body>
38
+ </html>
39
+ `.trim();
40
+ exports.indexHtml = indexHtml;
@@ -0,0 +1,11 @@
1
+ import { PackageManager } from './get-package-manager';
2
+ declare type Info = {
3
+ currentVersion: string;
4
+ latestVersion: string;
5
+ updateAvailable: boolean;
6
+ timedOut: boolean;
7
+ packageManager: PackageManager | 'unknown';
8
+ };
9
+ export declare const getRemotionVersion: () => any;
10
+ export declare const isUpdateAvailableWithTimeout: () => Promise<Info>;
11
+ export {};
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.isUpdateAvailableWithTimeout = exports.getRemotionVersion = void 0;
7
+ const semver_1 = __importDefault(require("semver"));
8
+ const get_latest_remotion_version_1 = require("../get-latest-remotion-version");
9
+ const get_package_manager_1 = require("./get-package-manager");
10
+ const isUpdateAvailable = async (currentVersion) => {
11
+ const latest = await (0, get_latest_remotion_version_1.getLatestRemotionVersion)();
12
+ const pkgManager = (0, get_package_manager_1.getPackageManager)();
13
+ return {
14
+ updateAvailable: semver_1.default.lt(currentVersion, latest),
15
+ currentVersion,
16
+ latestVersion: latest,
17
+ timedOut: false,
18
+ packageManager: pkgManager === 'unknown' ? 'unknown' : pkgManager.manager,
19
+ };
20
+ };
21
+ const getRemotionVersion = () => {
22
+ // careful when refactoring this file, path must be adjusted
23
+ const packageJson = require('../../package.json');
24
+ const { version } = packageJson;
25
+ return version;
26
+ };
27
+ exports.getRemotionVersion = getRemotionVersion;
28
+ const isUpdateAvailableWithTimeout = () => {
29
+ const version = (0, exports.getRemotionVersion)();
30
+ const threeSecTimeout = new Promise((resolve) => {
31
+ const pkgManager = (0, get_package_manager_1.getPackageManager)();
32
+ setTimeout(() => {
33
+ resolve({
34
+ currentVersion: version,
35
+ latestVersion: version,
36
+ updateAvailable: false,
37
+ timedOut: true,
38
+ packageManager: pkgManager === 'unknown' ? 'unknown' : pkgManager.manager,
39
+ });
40
+ }, 3000);
41
+ });
42
+ return Promise.race([threeSecTimeout, isUpdateAvailable(version)]);
43
+ };
44
+ exports.isUpdateAvailableWithTimeout = isUpdateAvailableWithTimeout;
@@ -0,0 +1,12 @@
1
+ declare type Environment = 'development' | 'production';
2
+ declare global {
3
+ namespace NodeJS {
4
+ interface ProcessVersions {
5
+ pnp?: string;
6
+ }
7
+ }
8
+ }
9
+ export declare const clearCache: (environment: Environment, inputProps: object | null) => Promise<void>;
10
+ export declare const getWebpackCacheName: (environment: Environment, inputProps: object | null) => string;
11
+ export declare const cacheExists: (environment: Environment, inputProps: object | null) => boolean;
12
+ export {};
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.cacheExists = exports.getWebpackCacheName = exports.clearCache = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ const remotion_1 = require("remotion");
10
+ // Inlined from https://github.com/webpack/webpack/blob/4c2ee7a4ddb8db2362ca83b6c4190523387ba7ee/lib/config/defaults.js#L265
11
+ // An algorithm to determine where Webpack will cache the depencies
12
+ const getWebpackCacheDir = () => {
13
+ const cwd = process.cwd();
14
+ let dir = cwd;
15
+ for (;;) {
16
+ try {
17
+ if (fs_1.default.statSync(path_1.default.join(dir, 'package.json')).isFile()) {
18
+ break;
19
+ }
20
+ // eslint-disable-next-line no-empty
21
+ }
22
+ catch (e) { }
23
+ const parent = path_1.default.dirname(dir);
24
+ if (dir === parent) {
25
+ dir = undefined;
26
+ break;
27
+ }
28
+ dir = parent;
29
+ }
30
+ if (!dir) {
31
+ return path_1.default.resolve(cwd, '.cache/webpack');
32
+ }
33
+ if (process.versions.pnp === '1') {
34
+ return path_1.default.resolve(dir, '.pnp/.cache/webpack');
35
+ }
36
+ if (process.versions.pnp === '3') {
37
+ return path_1.default.resolve(dir, '.yarn/.cache/webpack');
38
+ }
39
+ return path_1.default.resolve(dir, 'node_modules/.cache/webpack');
40
+ };
41
+ const remotionCacheLocation = (environment, inputProps) => {
42
+ return path_1.default.join(getWebpackCacheDir(), (0, exports.getWebpackCacheName)(environment, inputProps));
43
+ };
44
+ const clearCache = (environment, inputProps) => {
45
+ var _a;
46
+ return ((_a = fs_1.default.promises.rm) !== null && _a !== void 0 ? _a : fs_1.default.promises.rmdir)(remotionCacheLocation(environment, inputProps), {
47
+ recursive: true,
48
+ });
49
+ };
50
+ exports.clearCache = clearCache;
51
+ const getWebpackCacheName = (environment, inputProps) => {
52
+ // In development, let's reset the cache when input props
53
+ // are changing, because they are injected using Webpack and if changed,
54
+ // it will get the cached version
55
+ if (environment === 'development') {
56
+ return `remotion-v3-${environment}-${(0, remotion_1.random)(JSON.stringify(inputProps))}`;
57
+ }
58
+ // In production, the cache is independent from input props because
59
+ // they are passed over URL params. Speed is mostly important in production.
60
+ return `remotion-v3-${environment}`;
61
+ };
62
+ exports.getWebpackCacheName = getWebpackCacheName;
63
+ const cacheExists = (environment, inputProps) => {
64
+ return fs_1.default.existsSync(remotionCacheLocation(environment, inputProps));
65
+ };
66
+ exports.cacheExists = cacheExists;
@@ -0,0 +1,12 @@
1
+ declare type Environment = 'development' | 'production';
2
+ declare global {
3
+ namespace NodeJS {
4
+ interface ProcessVersions {
5
+ pnp?: string;
6
+ }
7
+ }
8
+ }
9
+ export declare const clearCache: (environment: Environment, inputProps: object | null) => Promise<void>;
10
+ export declare const getWebpackCacheName: (environment: Environment, inputProps: object | null) => string;
11
+ export declare const cacheExists: (environment: Environment, inputProps: object | null) => boolean;
12
+ export {};
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.cacheExists = exports.getWebpackCacheName = exports.clearCache = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ const remotion_1 = require("remotion");
10
+ // Inlined from https://github.com/webpack/webpack/blob/4c2ee7a4ddb8db2362ca83b6c4190523387ba7ee/lib/config/defaults.js#L265
11
+ // An algorithm to determine where Webpack will cache the depencies
12
+ const getWebpackCacheDir = () => {
13
+ const cwd = process.cwd();
14
+ let dir = cwd;
15
+ for (;;) {
16
+ try {
17
+ if (fs_1.default.statSync(path_1.default.join(dir, 'package.json')).isFile()) {
18
+ break;
19
+ }
20
+ // eslint-disable-next-line no-empty
21
+ }
22
+ catch (e) { }
23
+ const parent = path_1.default.dirname(dir);
24
+ if (dir === parent) {
25
+ dir = undefined;
26
+ break;
27
+ }
28
+ dir = parent;
29
+ }
30
+ if (!dir) {
31
+ return path_1.default.resolve(cwd, '.cache/webpack');
32
+ }
33
+ if (process.versions.pnp === '1') {
34
+ return path_1.default.resolve(dir, '.pnp/.cache/webpack');
35
+ }
36
+ if (process.versions.pnp === '3') {
37
+ return path_1.default.resolve(dir, '.yarn/.cache/webpack');
38
+ }
39
+ return path_1.default.resolve(dir, 'node_modules/.cache/webpack');
40
+ };
41
+ const remotionCacheLocation = (environment, inputProps) => {
42
+ return path_1.default.join(getWebpackCacheDir(), (0, exports.getWebpackCacheName)(environment, inputProps));
43
+ };
44
+ const clearCache = (environment, inputProps) => {
45
+ var _a;
46
+ return ((_a = fs_1.default.promises.rm) !== null && _a !== void 0 ? _a : fs_1.default.promises.rmdir)(remotionCacheLocation(environment, inputProps), {
47
+ recursive: true,
48
+ });
49
+ };
50
+ exports.clearCache = clearCache;
51
+ const getWebpackCacheName = (environment, inputProps) => {
52
+ // In development, let's reset the cache when input props
53
+ // are changing, because they are injected using Webpack and if changed,
54
+ // it will get the cached version
55
+ if (environment === 'development') {
56
+ return `remotion-v3-${environment}-${(0, remotion_1.random)(JSON.stringify(inputProps))}`;
57
+ }
58
+ // In production, the cache is independent from input props because
59
+ // they are passed over URL params. Speed is mostly important in production.
60
+ return `remotion-v3-${environment}`;
61
+ };
62
+ exports.getWebpackCacheName = getWebpackCacheName;
63
+ const cacheExists = (environment, inputProps) => {
64
+ return fs_1.default.existsSync(remotionCacheLocation(environment, inputProps));
65
+ };
66
+ exports.cacheExists = cacheExists;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/cli",
3
- "version": "3.0.18",
3
+ "version": "3.0.19",
4
4
  "description": "CLI for Remotion",
5
5
  "main": "dist/index.js",
6
6
  "sideEffects": false,
@@ -23,16 +23,16 @@
23
23
  "author": "Jonny Burger <jonny@remotion.dev>",
24
24
  "license": "SEE LICENSE IN LICENSE.md",
25
25
  "dependencies": {
26
- "@remotion/bundler": "3.0.18",
27
- "@remotion/media-utils": "3.0.18",
28
- "@remotion/player": "3.0.18",
29
- "@remotion/renderer": "3.0.18",
26
+ "@remotion/bundler": "3.0.19",
27
+ "@remotion/media-utils": "3.0.19",
28
+ "@remotion/player": "3.0.19",
29
+ "@remotion/renderer": "3.0.19",
30
30
  "better-opn": "2.1.1",
31
31
  "chalk": "4.1.2",
32
32
  "dotenv": "9.0.2",
33
33
  "execa": "5.1.1",
34
34
  "minimist": "1.2.6",
35
- "remotion": "3.0.18",
35
+ "remotion": "3.0.19",
36
36
  "semver": "7.3.5"
37
37
  },
38
38
  "peerDependencies": {
@@ -71,5 +71,5 @@
71
71
  "publishConfig": {
72
72
  "access": "public"
73
73
  },
74
- "gitHead": "64eadd48b303d0f627ed5883f9200345af002ee2"
74
+ "gitHead": "388ef0a2eacf9dbadbc860fdb8d6b3e32acb10f3"
75
75
  }