@remotion/studio 4.0.222 → 4.0.225
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/.turbo/turbo-make.log +1 -1
- package/dist/Studio.js +2 -2
- package/dist/components/NewComposition/RemInput.d.ts +1 -1
- package/dist/components/RenderQueue/RenderQueueCopyToClipboard.js +20 -12
- package/dist/components/RenderQueue/actions.d.ts +0 -4
- package/dist/components/RenderQueue/actions.js +1 -9
- package/dist/esm/internals.mjs +22 -23
- package/dist/helpers/checkerboard-background.d.ts +1 -1
- package/dist/helpers/colors.d.ts +1 -1
- package/dist/helpers/presets-labels.d.ts +1 -1
- package/package.json +7 -7
- package/tsconfig.tsbuildinfo +1 -1
- package/.turbo/turbo-test.log +0 -85
package/.turbo/turbo-make.log
CHANGED
package/dist/Studio.js
CHANGED
|
@@ -15,13 +15,13 @@ const getServerDisconnectedDomElement = () => {
|
|
|
15
15
|
const Studio = ({ rootComponent, readOnly }) => {
|
|
16
16
|
(0, react_1.useLayoutEffect)(() => {
|
|
17
17
|
window.remotion_isStudio = true;
|
|
18
|
-
window.remotion_isReadOnlyStudio =
|
|
18
|
+
window.remotion_isReadOnlyStudio = readOnly;
|
|
19
19
|
remotion_1.Internals.enableSequenceStackTraces();
|
|
20
20
|
return () => {
|
|
21
21
|
window.remotion_isStudio = false;
|
|
22
22
|
window.remotion_isReadOnlyStudio = false;
|
|
23
23
|
};
|
|
24
|
-
}, []);
|
|
24
|
+
}, [readOnly]);
|
|
25
25
|
(0, react_1.useLayoutEffect)(() => {
|
|
26
26
|
(0, inject_css_1.injectCSS)();
|
|
27
27
|
}, []);
|
|
@@ -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
|
-
}) => "
|
|
15
|
+
}) => "hsla(0, 0%, 100%, 0.15)" | "#f1c40f" | "rgba(0, 0, 0, 0.6)" | "rgba(255, 255, 255, 0.05)" | "#ff3232";
|
|
16
16
|
export declare const RemotionInput: React.ForwardRefExoticComponent<Omit<Props, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
|
17
17
|
export {};
|
|
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.RenderQueueCopyToClipboard = exports.supportsCopyingToClipboard = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = require("react");
|
|
6
|
+
const get_asset_metadata_1 = require("../../helpers/get-asset-metadata");
|
|
6
7
|
const clipboard_1 = require("../../icons/clipboard");
|
|
7
8
|
const InlineAction_1 = require("../InlineAction");
|
|
8
9
|
const NotificationCenter_1 = require("../Notifications/NotificationCenter");
|
|
9
|
-
const actions_1 = require("./actions");
|
|
10
10
|
const revealIconStyle = {
|
|
11
11
|
height: 12,
|
|
12
12
|
color: 'currentColor',
|
|
@@ -31,19 +31,27 @@ const RenderQueueCopyToClipboard = ({ job }) => {
|
|
|
31
31
|
const renderCopyAction = (0, react_1.useCallback)((color) => {
|
|
32
32
|
return (0, jsx_runtime_1.jsx)(clipboard_1.ClipboardIcon, { style: revealIconStyle, color: color });
|
|
33
33
|
}, []);
|
|
34
|
-
const onClick = (0, react_1.useCallback)((e) => {
|
|
34
|
+
const onClick = (0, react_1.useCallback)(async (e) => {
|
|
35
35
|
e.stopPropagation();
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
try {
|
|
37
|
+
const src = `${get_asset_metadata_1.remotion_outputsBase}/${job.outName}`;
|
|
38
|
+
const content = await fetch(src);
|
|
39
|
+
const contentType = content.headers.get('content-type');
|
|
40
|
+
if (!contentType) {
|
|
41
|
+
throw new Error('Expected content-type header');
|
|
42
|
+
}
|
|
43
|
+
const blob = await content.blob();
|
|
44
|
+
await navigator.clipboard.write([
|
|
45
|
+
new ClipboardItem({
|
|
46
|
+
[contentType]: blob,
|
|
47
|
+
}),
|
|
48
|
+
]);
|
|
49
|
+
(0, NotificationCenter_1.showNotification)('Copied to clipboard!', 1000);
|
|
50
|
+
}
|
|
51
|
+
catch (err) {
|
|
41
52
|
(0, NotificationCenter_1.showNotification)(`Could not copy to clipboard: ${err.message}`, 2000);
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
(0, NotificationCenter_1.showNotification)('Copied to clipboard', 1000);
|
|
45
|
-
});
|
|
46
|
-
}, [job.binariesDirectory, job.outName]);
|
|
53
|
+
}
|
|
54
|
+
}, [job.outName]);
|
|
47
55
|
return ((0, jsx_runtime_1.jsx)(InlineAction_1.InlineAction, { title: "Copy to clipboard", renderAction: renderCopyAction, onClick: onClick }));
|
|
48
56
|
};
|
|
49
57
|
exports.RenderQueueCopyToClipboard = RenderQueueCopyToClipboard;
|
|
@@ -87,10 +87,6 @@ export declare const subscribeToFileExistenceWatcher: ({ file, clientId, }: {
|
|
|
87
87
|
export declare const openInFileExplorer: ({ directory }: {
|
|
88
88
|
directory: string;
|
|
89
89
|
}) => Promise<void>;
|
|
90
|
-
export declare const copyToClipboard: ({ outName, binariesDirectory, }: {
|
|
91
|
-
outName: string;
|
|
92
|
-
binariesDirectory: string | null;
|
|
93
|
-
}) => Promise<void>;
|
|
94
90
|
export declare const applyCodemod: ({ codemod, dryRun, signal, }: {
|
|
95
91
|
codemod: RecastCodemod;
|
|
96
92
|
dryRun: boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.canUpdateDefaultProps = exports.callUpdateDefaultPropsApi = exports.getProjectInfo = exports.updateAvailable = exports.cancelRenderJob = exports.removeRenderJob = exports.applyCodemod = exports.
|
|
3
|
+
exports.canUpdateDefaultProps = exports.callUpdateDefaultPropsApi = exports.getProjectInfo = exports.updateAvailable = exports.cancelRenderJob = exports.removeRenderJob = exports.applyCodemod = exports.openInFileExplorer = exports.subscribeToFileExistenceWatcher = exports.unsubscribeFromFileExistenceWatcher = exports.addVideoRenderJob = exports.addSequenceRenderJob = exports.addStillRenderJob = void 0;
|
|
4
4
|
const no_react_1 = require("remotion/no-react");
|
|
5
5
|
const call_api_1 = require("../call-api");
|
|
6
6
|
const addStillRenderJob = ({ compositionId, outName, imageFormat, jpegQuality, frame, scale, logLevel, chromiumOptions, delayRenderTimeout, envVariables, inputProps, offthreadVideoCacheSizeInBytes, multiProcessOnLinux, beepOnFinish, metadata, }) => {
|
|
@@ -122,14 +122,6 @@ const openInFileExplorer = ({ directory }) => {
|
|
|
122
122
|
return (0, call_api_1.callApi)('/api/open-in-file-explorer', body);
|
|
123
123
|
};
|
|
124
124
|
exports.openInFileExplorer = openInFileExplorer;
|
|
125
|
-
const copyToClipboard = ({ outName, binariesDirectory, }) => {
|
|
126
|
-
const body = {
|
|
127
|
-
outName,
|
|
128
|
-
binariesDirectory,
|
|
129
|
-
};
|
|
130
|
-
return (0, call_api_1.callApi)('/api/copy-still-to-clipboard', body);
|
|
131
|
-
};
|
|
132
|
-
exports.copyToClipboard = copyToClipboard;
|
|
133
125
|
const applyCodemod = ({ codemod, dryRun, signal, }) => {
|
|
134
126
|
const body = {
|
|
135
127
|
codemod,
|
package/dist/esm/internals.mjs
CHANGED
|
@@ -3386,16 +3386,6 @@ var openInFileExplorer = ({ directory }) => {
|
|
|
3386
3386
|
};
|
|
3387
3387
|
return callApi("/api/open-in-file-explorer", body);
|
|
3388
3388
|
};
|
|
3389
|
-
var copyToClipboard = ({
|
|
3390
|
-
outName,
|
|
3391
|
-
binariesDirectory
|
|
3392
|
-
}) => {
|
|
3393
|
-
const body = {
|
|
3394
|
-
outName,
|
|
3395
|
-
binariesDirectory
|
|
3396
|
-
};
|
|
3397
|
-
return callApi("/api/copy-still-to-clipboard", body);
|
|
3398
|
-
};
|
|
3399
3389
|
var applyCodemod = ({
|
|
3400
3390
|
codemod,
|
|
3401
3391
|
dryRun,
|
|
@@ -3684,7 +3674,7 @@ var AssetSelectorItem = ({ item, tabIndex, level, parentFolder }) => {
|
|
|
3684
3674
|
showNotification(`Could not open file: ${err.message}`, 2000);
|
|
3685
3675
|
});
|
|
3686
3676
|
}, [item.name, parentFolder]);
|
|
3687
|
-
const
|
|
3677
|
+
const copyToClipboard = useCallback17((e) => {
|
|
3688
3678
|
e.stopPropagation();
|
|
3689
3679
|
const content = `staticFile("${[parentFolder, item.name].join("/")}")`;
|
|
3690
3680
|
copyText(content).then(() => {
|
|
@@ -3722,7 +3712,7 @@ var AssetSelectorItem = ({ item, tabIndex, level, parentFolder }) => {
|
|
|
3722
3712
|
/* @__PURE__ */ jsx35(InlineAction, {
|
|
3723
3713
|
title: "Copy staticFile() name",
|
|
3724
3714
|
renderAction: renderCopyAction,
|
|
3725
|
-
onClick:
|
|
3715
|
+
onClick: copyToClipboard
|
|
3726
3716
|
}),
|
|
3727
3717
|
/* @__PURE__ */ jsx35(Spacing, {
|
|
3728
3718
|
x: 0.5
|
|
@@ -14555,17 +14545,26 @@ var RenderQueueCopyToClipboard = ({ job }) => {
|
|
|
14555
14545
|
color
|
|
14556
14546
|
});
|
|
14557
14547
|
}, []);
|
|
14558
|
-
const onClick = useCallback64((e) => {
|
|
14548
|
+
const onClick = useCallback64(async (e) => {
|
|
14559
14549
|
e.stopPropagation();
|
|
14560
|
-
|
|
14561
|
-
|
|
14562
|
-
|
|
14563
|
-
|
|
14550
|
+
try {
|
|
14551
|
+
const src = `${remotion_outputsBase}/${job.outName}`;
|
|
14552
|
+
const content = await fetch(src);
|
|
14553
|
+
const contentType = content.headers.get("content-type");
|
|
14554
|
+
if (!contentType) {
|
|
14555
|
+
throw new Error("Expected content-type header");
|
|
14556
|
+
}
|
|
14557
|
+
const blob = await content.blob();
|
|
14558
|
+
await navigator.clipboard.write([
|
|
14559
|
+
new ClipboardItem({
|
|
14560
|
+
[contentType]: blob
|
|
14561
|
+
})
|
|
14562
|
+
]);
|
|
14563
|
+
showNotification("Copied to clipboard!", 1000);
|
|
14564
|
+
} catch (err) {
|
|
14564
14565
|
showNotification(`Could not copy to clipboard: ${err.message}`, 2000);
|
|
14565
|
-
}
|
|
14566
|
-
|
|
14567
|
-
});
|
|
14568
|
-
}, [job.binariesDirectory, job.outName]);
|
|
14566
|
+
}
|
|
14567
|
+
}, [job.outName]);
|
|
14569
14568
|
return /* @__PURE__ */ jsx133(InlineAction, {
|
|
14570
14569
|
title: "Copy to clipboard",
|
|
14571
14570
|
renderAction: renderCopyAction,
|
|
@@ -27190,13 +27189,13 @@ var getServerDisconnectedDomElement = () => {
|
|
|
27190
27189
|
var Studio = ({ rootComponent, readOnly }) => {
|
|
27191
27190
|
useLayoutEffect2(() => {
|
|
27192
27191
|
window.remotion_isStudio = true;
|
|
27193
|
-
window.remotion_isReadOnlyStudio =
|
|
27192
|
+
window.remotion_isReadOnlyStudio = readOnly;
|
|
27194
27193
|
Internals61.enableSequenceStackTraces();
|
|
27195
27194
|
return () => {
|
|
27196
27195
|
window.remotion_isStudio = false;
|
|
27197
27196
|
window.remotion_isReadOnlyStudio = false;
|
|
27198
27197
|
};
|
|
27199
|
-
}, []);
|
|
27198
|
+
}, [readOnly]);
|
|
27200
27199
|
useLayoutEffect2(() => {
|
|
27201
27200
|
injectCSS();
|
|
27202
27201
|
}, []);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare const getCheckerboardBackgroundSize: (size: number) => string;
|
|
2
2
|
export declare const getCheckerboardBackgroundPos: (size: number) => string;
|
|
3
|
-
export declare const checkerboardBackgroundColor: (checkerboard: boolean) => "
|
|
3
|
+
export declare const checkerboardBackgroundColor: (checkerboard: boolean) => "black" | "white";
|
|
4
4
|
export declare const checkerboardBackgroundImage: (checkerboard: boolean) => "\n linear-gradient(\n 45deg,\n rgba(0, 0, 0, 0.1) 25%,\n transparent 25%\n ),\n linear-gradient(135deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%),\n linear-gradient(45deg, transparent 75%, rgba(0, 0, 0, 0.1) 75%),\n linear-gradient(135deg, transparent 75%, rgba(0, 0, 0, 0.1) 75%)\n " | undefined;
|
package/dist/helpers/colors.d.ts
CHANGED
|
@@ -24,4 +24,4 @@ export declare const TIMELINE_TRACK_SEPARATOR = "rgba(0, 0, 0, 0.3)";
|
|
|
24
24
|
export declare const getBackgroundFromHoverState: ({ selected, hovered, }: {
|
|
25
25
|
selected: boolean;
|
|
26
26
|
hovered: boolean;
|
|
27
|
-
}) => "transparent" | "
|
|
27
|
+
}) => "transparent" | "rgba(255, 255, 255, 0.06)" | "hsla(0, 0%, 100%, 0.15)" | "hsla(0, 0%, 100%, 0.25)";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { X264Preset } from '@remotion/renderer';
|
|
2
|
-
export declare const labelx264Preset: (profile: X264Preset) => "
|
|
2
|
+
export declare const labelx264Preset: (profile: X264Preset) => "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | "slow" | "slower" | "veryslow" | "placebo";
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"url": "https://github.com/remotion-dev/remotion/tree/main/packages/studio"
|
|
4
4
|
},
|
|
5
5
|
"name": "@remotion/studio",
|
|
6
|
-
"version": "4.0.
|
|
6
|
+
"version": "4.0.225",
|
|
7
7
|
"description": "APIs for interacting with the Remotion Studio",
|
|
8
8
|
"main": "dist",
|
|
9
9
|
"sideEffects": false,
|
|
@@ -18,18 +18,18 @@
|
|
|
18
18
|
"memfs": "3.4.3",
|
|
19
19
|
"source-map": "0.7.3",
|
|
20
20
|
"open": "^8.4.2",
|
|
21
|
-
"remotion": "4.0.
|
|
22
|
-
"@remotion/
|
|
23
|
-
"@remotion/
|
|
24
|
-
"@remotion/
|
|
25
|
-
"
|
|
21
|
+
"@remotion/player": "4.0.225",
|
|
22
|
+
"@remotion/media-utils": "4.0.225",
|
|
23
|
+
"@remotion/renderer": "4.0.225",
|
|
24
|
+
"@remotion/studio-shared": "4.0.225",
|
|
25
|
+
"remotion": "4.0.225"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"react": "18.3.1",
|
|
29
29
|
"react-dom": "18.3.1",
|
|
30
30
|
"@types/semver": "^7.3.4",
|
|
31
31
|
"zod": "3.22.3",
|
|
32
|
-
"@remotion/zod-types": "4.0.
|
|
32
|
+
"@remotion/zod-types": "4.0.225"
|
|
33
33
|
},
|
|
34
34
|
"publishConfig": {
|
|
35
35
|
"access": "public"
|