@remotion/studio-server 4.0.506 → 4.0.508
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/dist/codemods/delete-jsx-node.d.ts +4 -0
- package/dist/codemods/delete-jsx-node.js +8 -0
- package/dist/codemods/duplicate-jsx-node.d.ts +2 -0
- package/dist/codemods/duplicate-jsx-node.js +8 -0
- package/dist/codemods/effect-param-expression.js +2 -0
- package/dist/codemods/get-node-path-remappings.d.ts +13 -0
- package/dist/codemods/get-node-path-remappings.js +87 -0
- package/dist/codemods/reorder-sequence.d.ts +2 -1
- package/dist/codemods/reorder-sequence.js +8 -0
- package/dist/codemods/split-jsx-sequence.d.ts +2 -0
- package/dist/codemods/split-jsx-sequence.js +8 -0
- package/dist/codemods/update-keyframes/update-keyframes.js +2 -0
- package/dist/file-watcher.d.ts +11 -1
- package/dist/file-watcher.js +16 -5
- package/dist/helpers/coding-agent-registry.d.ts +34 -0
- package/dist/helpers/coding-agent-registry.js +442 -21
- package/dist/helpers/editor-registry.d.ts +1 -0
- package/dist/helpers/editor-registry.js +31 -3
- package/dist/helpers/finder-artwork.d.ts +1 -0
- package/dist/helpers/finder-artwork.js +4 -0
- package/dist/helpers/open-in-editor.js +5 -5
- package/dist/helpers/parse-keyframe-easing-expression.js +3 -0
- package/dist/helpers/resolve-composition-component.d.ts +2 -1
- package/dist/helpers/resolve-composition-component.js +60 -68
- package/dist/helpers/resolve-editor.d.ts +2 -0
- package/dist/helpers/resolve-editor.js +4 -1
- package/dist/helpers/terminal-artwork.d.ts +6 -0
- package/dist/helpers/terminal-artwork.js +14 -0
- package/dist/helpers/terminal-registry.d.ts +36 -0
- package/dist/helpers/terminal-registry.js +401 -0
- package/dist/index.d.ts +7 -2
- package/dist/preview-server/api-routes.js +7 -4
- package/dist/preview-server/handler.d.ts +1 -1
- package/dist/preview-server/live-events.d.ts +1 -0
- package/dist/preview-server/live-events.js +3 -1
- package/dist/preview-server/routes/add-effect-keyframe.js +7 -1
- package/dist/preview-server/routes/add-effect.js +7 -1
- package/dist/preview-server/routes/add-keyframes.js +10 -2
- package/dist/preview-server/routes/add-render.js +2 -0
- package/dist/preview-server/routes/add-sequence-keyframe.js +7 -1
- package/dist/preview-server/routes/app-icon.d.ts +6 -0
- package/dist/preview-server/routes/app-icon.js +66 -0
- package/dist/preview-server/routes/apply-codemod.js +15 -2
- package/dist/preview-server/routes/apply-visual-control-change.js +7 -1
- package/dist/preview-server/routes/batch-update-keyframe-settings.js +10 -2
- package/dist/preview-server/routes/can-update-sequence-props.d.ts +1 -0
- package/dist/preview-server/routes/can-update-sequence-props.js +33 -9
- package/dist/preview-server/routes/copy-render-output-to-asset.d.ts +3 -0
- package/dist/preview-server/routes/copy-render-output-to-asset.js +58 -0
- package/dist/preview-server/routes/default-coding-agent.d.ts +2 -6
- package/dist/preview-server/routes/default-coding-agent.js +19 -88
- package/dist/preview-server/routes/default-editor.d.ts +1 -6
- package/dist/preview-server/routes/default-editor.js +13 -113
- package/dist/preview-server/routes/delete-effect.js +7 -1
- package/dist/preview-server/routes/delete-jsx-node.js +16 -2
- package/dist/preview-server/routes/delete-keyframes.js +10 -2
- package/dist/preview-server/routes/duplicate-effect.js +7 -1
- package/dist/preview-server/routes/duplicate-jsx-node.js +17 -5
- package/dist/preview-server/routes/insert-element.js +23 -3
- package/dist/preview-server/routes/insert-jsx-element.js +17 -2
- package/dist/preview-server/routes/move-keyframes.js +10 -2
- package/dist/preview-server/routes/open-in-editor.js +1 -1
- package/dist/preview-server/routes/open-in-terminal.d.ts +3 -0
- package/dist/preview-server/routes/open-in-terminal.js +17 -0
- package/dist/preview-server/routes/paste-effects.js +7 -1
- package/dist/preview-server/routes/reorder-effect.js +7 -1
- package/dist/preview-server/routes/reorder-sequence.js +17 -2
- package/dist/preview-server/routes/save-effect-props.js +7 -1
- package/dist/preview-server/routes/save-multiple-effect-props.js +10 -2
- package/dist/preview-server/routes/save-sequence-props.js +10 -2
- package/dist/preview-server/routes/split-jsx-sequence.js +17 -6
- package/dist/preview-server/routes/update-config.d.ts +7 -0
- package/dist/preview-server/routes/update-config.js +193 -0
- package/dist/preview-server/routes/update-default-props.js +7 -1
- package/dist/preview-server/routes/update-effect-keyframe-settings.js +7 -1
- package/dist/preview-server/routes/update-sequence-keyframe-settings.js +7 -1
- package/dist/preview-server/sequence-node-path-mutation.d.ts +7 -0
- package/dist/preview-server/sequence-node-path-mutation.js +21 -0
- package/dist/preview-server/sequence-props-watchers.js +15 -6
- package/dist/preview-server/start-server.d.ts +1 -1
- package/dist/preview-server/studio-protocol/handle-discovery.js +3 -4
- package/dist/preview-server/studio-protocol/handle-install.js +1 -1
- package/dist/preview-server/studio-protocol/handle-license-key.js +2 -2
- package/dist/preview-server/studio-protocol/origin-policy.d.ts +2 -5
- package/dist/preview-server/studio-protocol/origin-policy.js +6 -30
- package/dist/preview-server/undo-stack.d.ts +7 -13
- package/dist/preview-server/undo-stack.js +58 -5
- package/dist/routes.d.ts +1 -1
- package/dist/routes.js +8 -1
- package/dist/start-studio.d.ts +1 -1
- package/package.json +8 -8
- package/web/coding-agent-icons/claude-code.png +0 -0
- package/web/coding-agent-icons/codex.png +0 -0
- package/web/coding-agent-icons/copilot.png +0 -0
- package/web/coding-agent-icons/cursor.png +0 -0
- package/dist/preview-server/routes/delete-effect-keyframe.d.ts +0 -3
- package/dist/preview-server/routes/delete-effect-keyframe.js +0 -89
- package/dist/preview-server/routes/delete-sequence-keyframe.d.ts +0 -3
- package/dist/preview-server/routes/delete-sequence-keyframe.js +0 -82
- package/dist/preview-server/routes/save-props-mutex.d.ts +0 -1
- package/dist/preview-server/routes/save-props-mutex.js +0 -11
|
@@ -30,7 +30,8 @@ const editorDefinitions = {
|
|
|
30
30
|
vscode: {
|
|
31
31
|
darwin: [
|
|
32
32
|
{
|
|
33
|
-
name: '
|
|
33
|
+
name: 'Code',
|
|
34
|
+
nameWithType: 'Code',
|
|
34
35
|
bundleIdentifiers: ['com.microsoft.VSCode'],
|
|
35
36
|
applicationNames: ['Visual Studio Code.app'],
|
|
36
37
|
executable: 'Contents/Resources/app/bin/code',
|
|
@@ -38,6 +39,7 @@ const editorDefinitions = {
|
|
|
38
39
|
},
|
|
39
40
|
{
|
|
40
41
|
name: 'VS Code Insiders',
|
|
42
|
+
nameWithType: 'VS Code Insiders',
|
|
41
43
|
bundleIdentifiers: ['com.microsoft.VSCodeInsiders'],
|
|
42
44
|
applicationNames: ['Visual Studio Code - Insiders.app'],
|
|
43
45
|
executable: 'Contents/Resources/app/bin/code-insiders',
|
|
@@ -46,7 +48,8 @@ const editorDefinitions = {
|
|
|
46
48
|
],
|
|
47
49
|
linux: [
|
|
48
50
|
{
|
|
49
|
-
name: '
|
|
51
|
+
name: 'Code',
|
|
52
|
+
nameWithType: 'Code',
|
|
50
53
|
paths: () => [
|
|
51
54
|
'/usr/share/code/bin/code',
|
|
52
55
|
'/snap/bin/code',
|
|
@@ -57,6 +60,7 @@ const editorDefinitions = {
|
|
|
57
60
|
},
|
|
58
61
|
{
|
|
59
62
|
name: 'VS Code Insiders',
|
|
63
|
+
nameWithType: 'VS Code Insiders',
|
|
60
64
|
paths: () => [
|
|
61
65
|
'/snap/bin/code-insiders',
|
|
62
66
|
'/usr/bin/code-insiders',
|
|
@@ -67,7 +71,8 @@ const editorDefinitions = {
|
|
|
67
71
|
],
|
|
68
72
|
win32: [
|
|
69
73
|
{
|
|
70
|
-
name: '
|
|
74
|
+
name: 'Code',
|
|
75
|
+
nameWithType: 'Code',
|
|
71
76
|
paths: (context) => getWindowsEnvironmentPaths(context, [
|
|
72
77
|
'Microsoft VS Code',
|
|
73
78
|
'Code.exe',
|
|
@@ -76,6 +81,7 @@ const editorDefinitions = {
|
|
|
76
81
|
},
|
|
77
82
|
{
|
|
78
83
|
name: 'VS Code Insiders',
|
|
84
|
+
nameWithType: 'VS Code Insiders',
|
|
79
85
|
paths: (context) => getWindowsEnvironmentPaths(context, [
|
|
80
86
|
'Microsoft VS Code Insiders',
|
|
81
87
|
'Code - Insiders.exe',
|
|
@@ -88,6 +94,7 @@ const editorDefinitions = {
|
|
|
88
94
|
darwin: [
|
|
89
95
|
{
|
|
90
96
|
name: 'Cursor',
|
|
97
|
+
nameWithType: 'Cursor Editor',
|
|
91
98
|
bundleIdentifiers: ['com.todesktop.230313mzl4w4u92'],
|
|
92
99
|
applicationNames: ['Cursor.app'],
|
|
93
100
|
executable: 'Contents/Resources/app/bin/cursor',
|
|
@@ -97,6 +104,7 @@ const editorDefinitions = {
|
|
|
97
104
|
linux: [
|
|
98
105
|
{
|
|
99
106
|
name: 'Cursor',
|
|
107
|
+
nameWithType: 'Cursor Editor',
|
|
100
108
|
paths: (context) => [
|
|
101
109
|
'/usr/bin/cursor',
|
|
102
110
|
'/usr/local/bin/cursor',
|
|
@@ -108,6 +116,7 @@ const editorDefinitions = {
|
|
|
108
116
|
win32: [
|
|
109
117
|
{
|
|
110
118
|
name: 'Cursor',
|
|
119
|
+
nameWithType: 'Cursor Editor',
|
|
111
120
|
paths: (context) => getWindowsEnvironmentPaths(context, ['cursor', 'Cursor.exe']),
|
|
112
121
|
commands: ['Cursor.exe', 'cursor.cmd'],
|
|
113
122
|
},
|
|
@@ -117,6 +126,7 @@ const editorDefinitions = {
|
|
|
117
126
|
darwin: [
|
|
118
127
|
{
|
|
119
128
|
name: 'Windsurf',
|
|
129
|
+
nameWithType: 'Windsurf',
|
|
120
130
|
bundleIdentifiers: ['com.exafunction.windsurf'],
|
|
121
131
|
applicationNames: ['Windsurf.app'],
|
|
122
132
|
executable: 'Contents/Resources/app/bin/windsurf',
|
|
@@ -126,6 +136,7 @@ const editorDefinitions = {
|
|
|
126
136
|
linux: [
|
|
127
137
|
{
|
|
128
138
|
name: 'Windsurf',
|
|
139
|
+
nameWithType: 'Windsurf',
|
|
129
140
|
paths: (context) => [
|
|
130
141
|
'/usr/bin/windsurf',
|
|
131
142
|
'/usr/local/bin/windsurf',
|
|
@@ -137,6 +148,7 @@ const editorDefinitions = {
|
|
|
137
148
|
win32: [
|
|
138
149
|
{
|
|
139
150
|
name: 'Windsurf',
|
|
151
|
+
nameWithType: 'Windsurf',
|
|
140
152
|
paths: (context) => getWindowsEnvironmentPaths(context, ['Windsurf', 'Windsurf.exe']),
|
|
141
153
|
commands: ['Windsurf.exe', 'windsurf.cmd'],
|
|
142
154
|
},
|
|
@@ -146,6 +158,7 @@ const editorDefinitions = {
|
|
|
146
158
|
darwin: [
|
|
147
159
|
{
|
|
148
160
|
name: 'Zed',
|
|
161
|
+
nameWithType: 'Zed',
|
|
149
162
|
bundleIdentifiers: ['dev.zed.Zed'],
|
|
150
163
|
applicationNames: ['Zed.app'],
|
|
151
164
|
executable: 'Contents/MacOS/cli',
|
|
@@ -153,6 +166,7 @@ const editorDefinitions = {
|
|
|
153
166
|
},
|
|
154
167
|
{
|
|
155
168
|
name: 'Zed Preview',
|
|
169
|
+
nameWithType: 'Zed Preview',
|
|
156
170
|
bundleIdentifiers: ['dev.zed.Zed-Preview'],
|
|
157
171
|
applicationNames: ['Zed Preview.app'],
|
|
158
172
|
executable: 'Contents/MacOS/cli',
|
|
@@ -162,6 +176,7 @@ const editorDefinitions = {
|
|
|
162
176
|
linux: [
|
|
163
177
|
{
|
|
164
178
|
name: 'Zed',
|
|
179
|
+
nameWithType: 'Zed',
|
|
165
180
|
paths: (context) => [
|
|
166
181
|
'/usr/bin/zedit',
|
|
167
182
|
'/usr/bin/zeditor',
|
|
@@ -175,6 +190,7 @@ const editorDefinitions = {
|
|
|
175
190
|
win32: [
|
|
176
191
|
{
|
|
177
192
|
name: 'Zed',
|
|
193
|
+
nameWithType: 'Zed',
|
|
178
194
|
paths: (context) => getWindowsEnvironmentPaths(context, ['Zed', 'Zed.exe']),
|
|
179
195
|
commands: ['Zed.exe'],
|
|
180
196
|
},
|
|
@@ -184,6 +200,7 @@ const editorDefinitions = {
|
|
|
184
200
|
darwin: [
|
|
185
201
|
{
|
|
186
202
|
name: 'VSCodium',
|
|
203
|
+
nameWithType: 'VSCodium',
|
|
187
204
|
bundleIdentifiers: ['com.vscodium', 'com.visualstudio.code.oss'],
|
|
188
205
|
applicationNames: ['VSCodium.app'],
|
|
189
206
|
executable: 'Contents/Resources/app/bin/codium',
|
|
@@ -193,6 +210,7 @@ const editorDefinitions = {
|
|
|
193
210
|
linux: [
|
|
194
211
|
{
|
|
195
212
|
name: 'VSCodium',
|
|
213
|
+
nameWithType: 'VSCodium',
|
|
196
214
|
paths: (context) => [
|
|
197
215
|
'/usr/bin/codium',
|
|
198
216
|
'/usr/share/vscodium-bin/bin/codium',
|
|
@@ -206,6 +224,7 @@ const editorDefinitions = {
|
|
|
206
224
|
win32: [
|
|
207
225
|
{
|
|
208
226
|
name: 'VSCodium',
|
|
227
|
+
nameWithType: 'VSCodium',
|
|
209
228
|
paths: (context) => getWindowsEnvironmentPaths(context, ['VSCodium', 'VSCodium.exe']),
|
|
210
229
|
commands: ['VSCodium.exe', 'codium.cmd'],
|
|
211
230
|
},
|
|
@@ -215,6 +234,7 @@ const editorDefinitions = {
|
|
|
215
234
|
darwin: [
|
|
216
235
|
{
|
|
217
236
|
name: 'WebStorm',
|
|
237
|
+
nameWithType: 'WebStorm',
|
|
218
238
|
bundleIdentifiers: ['com.jetbrains.WebStorm'],
|
|
219
239
|
applicationNames: ['WebStorm.app'],
|
|
220
240
|
executable: 'Contents/MacOS/webstorm',
|
|
@@ -224,6 +244,7 @@ const editorDefinitions = {
|
|
|
224
244
|
linux: [
|
|
225
245
|
{
|
|
226
246
|
name: 'WebStorm',
|
|
247
|
+
nameWithType: 'WebStorm',
|
|
227
248
|
paths: (context) => [
|
|
228
249
|
'/snap/bin/webstorm',
|
|
229
250
|
node_path_1.default.posix.join(context.homeDirectory, '.local/share/JetBrains/Toolbox/scripts/webstorm'),
|
|
@@ -234,6 +255,7 @@ const editorDefinitions = {
|
|
|
234
255
|
win32: [
|
|
235
256
|
{
|
|
236
257
|
name: 'WebStorm',
|
|
258
|
+
nameWithType: 'WebStorm',
|
|
237
259
|
paths: (context) => {
|
|
238
260
|
const localAppData = context.env.LOCALAPPDATA;
|
|
239
261
|
return localAppData
|
|
@@ -250,6 +272,7 @@ const editorDefinitions = {
|
|
|
250
272
|
darwin: [
|
|
251
273
|
{
|
|
252
274
|
name: 'Sublime Text',
|
|
275
|
+
nameWithType: 'Sublime Text',
|
|
253
276
|
bundleIdentifiers: [
|
|
254
277
|
'com.sublimetext.4',
|
|
255
278
|
'com.sublimetext.3',
|
|
@@ -267,6 +290,7 @@ const editorDefinitions = {
|
|
|
267
290
|
linux: [
|
|
268
291
|
{
|
|
269
292
|
name: 'Sublime Text',
|
|
293
|
+
nameWithType: 'Sublime Text',
|
|
270
294
|
paths: () => ['/usr/bin/subl', '/snap/bin/subl'],
|
|
271
295
|
commands: ['subl'],
|
|
272
296
|
},
|
|
@@ -274,6 +298,7 @@ const editorDefinitions = {
|
|
|
274
298
|
win32: [
|
|
275
299
|
{
|
|
276
300
|
name: 'Sublime Text',
|
|
301
|
+
nameWithType: 'Sublime Text',
|
|
277
302
|
paths: (context) => [
|
|
278
303
|
...getWindowsEnvironmentPaths(context, [
|
|
279
304
|
'Sublime Text',
|
|
@@ -405,6 +430,7 @@ const findDarwinEditor = async ({ id, variants, context, }) => {
|
|
|
405
430
|
return {
|
|
406
431
|
id,
|
|
407
432
|
name: variant.name,
|
|
433
|
+
nameWithType: variant.nameWithType,
|
|
408
434
|
process: executablePath,
|
|
409
435
|
command: variant.command,
|
|
410
436
|
};
|
|
@@ -441,6 +467,7 @@ const findExecutableEditor = ({ id, variants, context, additionalPaths, }) => {
|
|
|
441
467
|
return {
|
|
442
468
|
id,
|
|
443
469
|
name: variants[0].name,
|
|
470
|
+
nameWithType: variants[0].nameWithType,
|
|
444
471
|
process: executablePath,
|
|
445
472
|
command: executablePath,
|
|
446
473
|
};
|
|
@@ -452,6 +479,7 @@ const findExecutableEditor = ({ id, variants, context, additionalPaths, }) => {
|
|
|
452
479
|
return {
|
|
453
480
|
id,
|
|
454
481
|
name: variant.name,
|
|
482
|
+
nameWithType: variant.nameWithType,
|
|
455
483
|
process: executablePath,
|
|
456
484
|
command: executablePath,
|
|
457
485
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const finderArtworkDataUrl = "data:image/png;base64,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";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.finderArtworkDataUrl = void 0;
|
|
4
|
+
exports.finderArtworkDataUrl = 'data:image/png;base64,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';
|
|
@@ -87,12 +87,12 @@ const displayNameForEditor = {
|
|
|
87
87
|
'/Applications/Sublime Text Dev.app/Contents/SharedSupport/bin/subl': 'Sublime Text Dev',
|
|
88
88
|
'/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl': 'Sublime Text',
|
|
89
89
|
'/Applications/WebStorm.app/Contents/MacOS/webstorm': 'WebStorm',
|
|
90
|
-
'/Applications/Cursor.app/Contents/MacOS/Cursor': 'Cursor',
|
|
90
|
+
'/Applications/Cursor.app/Contents/MacOS/Cursor': 'Cursor Editor',
|
|
91
91
|
'/Applications/Windsurf.app/Contents/MacOS/Windsurf': 'Windsurf',
|
|
92
92
|
'Brackets.exe': 'Brackets',
|
|
93
93
|
'Code - Insiders.exe': 'VS Code Insiders',
|
|
94
|
-
'Code.exe': '
|
|
95
|
-
'Cursor.exe': 'Cursor',
|
|
94
|
+
'Code.exe': 'Code',
|
|
95
|
+
'Cursor.exe': 'Cursor Editor',
|
|
96
96
|
'Windsurf.exe': 'Windsurf',
|
|
97
97
|
'Zed.exe': 'Zed',
|
|
98
98
|
'VSCodium.exe': 'VS Codium',
|
|
@@ -118,8 +118,8 @@ const displayNameForEditor = {
|
|
|
118
118
|
'webstorm64.exe': 'WebStorm',
|
|
119
119
|
atom: 'Atom',
|
|
120
120
|
brackets: 'Brackets',
|
|
121
|
-
code: '
|
|
122
|
-
cursor: 'Cursor',
|
|
121
|
+
code: 'Code',
|
|
122
|
+
cursor: 'Cursor Editor',
|
|
123
123
|
windsurf: 'Windsurf',
|
|
124
124
|
zed: 'Zed',
|
|
125
125
|
zedit: 'Zed',
|
|
@@ -29,6 +29,9 @@ const getMemberExpressionKeyframeEasing = (name) => {
|
|
|
29
29
|
if (name === 'linear') {
|
|
30
30
|
return studio_shared_1.LINEAR_KEYFRAME_EASING;
|
|
31
31
|
}
|
|
32
|
+
if (name === 'step1') {
|
|
33
|
+
return studio_shared_1.HOLD_KEYFRAME_EASING;
|
|
34
|
+
}
|
|
32
35
|
if (name === 'ease') {
|
|
33
36
|
return studio_shared_1.EASE_KEYFRAME_EASING;
|
|
34
37
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type InsertableCompositionElement, type InsertableCompositionElementPosition } from '@remotion/studio-shared';
|
|
1
|
+
import { type InsertableCompositionElement, type InsertableCompositionElementPosition, type SequenceNodePathRemapping } from '@remotion/studio-shared';
|
|
2
2
|
export type ResolvedCompositionComponent = {
|
|
3
3
|
source: string;
|
|
4
4
|
line: number;
|
|
@@ -43,4 +43,5 @@ export declare const insertJsxElementIntoComposition: ({ remotionRoot, compositi
|
|
|
43
43
|
output: string;
|
|
44
44
|
formatted: boolean;
|
|
45
45
|
logLine: number;
|
|
46
|
+
nodePathRemappings: SequenceNodePathRemapping[];
|
|
46
47
|
}>;
|
|
@@ -39,11 +39,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
exports.insertJsxElementIntoComposition = exports.resolveCompositionComponent = exports.resolveCompositionComponentWithFile = void 0;
|
|
40
40
|
const node_fs_1 = __importDefault(require("node:fs"));
|
|
41
41
|
const node_path_1 = __importDefault(require("node:path"));
|
|
42
|
-
const studio_codemods_1 = require("@remotion/studio-codemods");
|
|
43
42
|
const studio_shared_1 = require("@remotion/studio-shared");
|
|
44
43
|
const recast = __importStar(require("recast"));
|
|
45
44
|
const no_react_1 = require("remotion/no-react");
|
|
46
45
|
const format_file_content_1 = require("../codemods/format-file-content");
|
|
46
|
+
const get_node_path_remappings_1 = require("../codemods/get-node-path-remappings");
|
|
47
47
|
const parse_ast_1 = require("../codemods/parse-ast");
|
|
48
48
|
const strip_parenthesized_extra_1 = require("../codemods/strip-parenthesized-extra");
|
|
49
49
|
const update_nested_prop_1 = require("../codemods/update-nested-prop");
|
|
@@ -1130,14 +1130,14 @@ const addElementToComponentRoot = ({ ast, exportName, element, }) => {
|
|
|
1130
1130
|
CANVAS_ROOT_ELEMENTS.includes(rootNode.openingElement.name.name)) {
|
|
1131
1131
|
throw new Error(`Cannot insert a JSX element into a composition whose root element is <${rootNode.openingElement.name.name}>`);
|
|
1132
1132
|
}
|
|
1133
|
-
if (rootNode.type === 'JSXElement'
|
|
1134
|
-
const
|
|
1135
|
-
createSequenceWithChild({
|
|
1133
|
+
if (rootNode.type === 'JSXElement') {
|
|
1134
|
+
const existingRoot = rootNode.openingElement.selfClosing
|
|
1135
|
+
? createSequenceWithChild({
|
|
1136
1136
|
child: (0, strip_parenthesized_extra_1.stripParenthesizedExtra)(rootNode),
|
|
1137
1137
|
sequenceLocalName: ensureSequenceImport(ast),
|
|
1138
|
-
})
|
|
1139
|
-
|
|
1140
|
-
]);
|
|
1138
|
+
})
|
|
1139
|
+
: (0, strip_parenthesized_extra_1.stripParenthesizedExtra)(rootNode);
|
|
1140
|
+
const fragment = recast.types.builders.jsxFragment(recast.types.builders.jsxOpeningFragment(), recast.types.builders.jsxClosingFragment(), [existingRoot, element]);
|
|
1141
1141
|
let replaced = false;
|
|
1142
1142
|
recast.types.visit(ast, {
|
|
1143
1143
|
visitJSXElement(astPath) {
|
|
@@ -1440,75 +1440,66 @@ const insertJsxElementIntoComposition = async ({ remotionRoot, compositionFile,
|
|
|
1440
1440
|
remotionRoot,
|
|
1441
1441
|
fileName: location.fileName,
|
|
1442
1442
|
});
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
if (element.type === '
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1443
|
+
const ast = (0, parse_ast_1.parseAst)(input);
|
|
1444
|
+
const capturedNodePaths = (0, get_node_path_remappings_1.captureJsxNodePaths)(ast);
|
|
1445
|
+
if (element.type === 'composition' &&
|
|
1446
|
+
element.compositionId === compositionId) {
|
|
1447
|
+
throw new Error('Cannot insert a composition into itself');
|
|
1448
|
+
}
|
|
1449
|
+
const sequenceWrapper = element.type === 'composition'
|
|
1450
|
+
? {
|
|
1451
|
+
dimensions: { width: element.width, height: element.height },
|
|
1452
|
+
durationInFrames: element.durationInFrames,
|
|
1453
|
+
name: element.compositionId,
|
|
1449
1454
|
position: element.position,
|
|
1450
|
-
|
|
1451
|
-
width: element.width,
|
|
1452
|
-
});
|
|
1453
|
-
finalFile = inserted.output;
|
|
1454
|
-
logLine = inserted.line;
|
|
1455
|
-
}
|
|
1456
|
-
else {
|
|
1457
|
-
const ast = (0, parse_ast_1.parseAst)(input);
|
|
1458
|
-
if (element.type === 'composition' &&
|
|
1459
|
-
element.compositionId === compositionId) {
|
|
1460
|
-
throw new Error('Cannot insert a composition into itself');
|
|
1455
|
+
from,
|
|
1461
1456
|
}
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1457
|
+
: from === null ||
|
|
1458
|
+
element.type === 'asset' ||
|
|
1459
|
+
element.type === 'svg' ||
|
|
1460
|
+
element.type === 'component'
|
|
1461
|
+
? wrapInSequence
|
|
1462
|
+
: {
|
|
1463
|
+
dimensions: null,
|
|
1464
|
+
durationInFrames: null,
|
|
1465
|
+
name: null,
|
|
1467
1466
|
position: element.position,
|
|
1468
1467
|
from,
|
|
1469
|
-
}
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
from: sequenceWrapper.from,
|
|
1496
|
-
name: sequenceWrapper.name,
|
|
1497
|
-
position: sequenceWrapper.position,
|
|
1498
|
-
sequenceLocalName: ensureSequenceImport(ast),
|
|
1499
|
-
})
|
|
1500
|
-
: elementToInsert;
|
|
1501
|
-
logLine = addElementToComponentRoot({
|
|
1502
|
-
ast,
|
|
1503
|
-
exportName: location.exportName,
|
|
1504
|
-
element: finalElementToInsert,
|
|
1505
|
-
});
|
|
1506
|
-
finalFile = (0, parse_ast_1.serializeAst)(ast);
|
|
1507
|
-
}
|
|
1468
|
+
};
|
|
1469
|
+
const elementToInsert = await createInsertableJsxElement({
|
|
1470
|
+
addPositionStyleToComponent: sequenceWrapper === null,
|
|
1471
|
+
ast,
|
|
1472
|
+
destinationFileName: location.fileName,
|
|
1473
|
+
element,
|
|
1474
|
+
from,
|
|
1475
|
+
remotionRoot,
|
|
1476
|
+
});
|
|
1477
|
+
const finalElementToInsert = sequenceWrapper
|
|
1478
|
+
? createSequenceWrappedElement({
|
|
1479
|
+
child: elementToInsert,
|
|
1480
|
+
dimensions: sequenceWrapper.dimensions,
|
|
1481
|
+
durationInFrames: (_a = sequenceWrapper.durationInFrames) !== null && _a !== void 0 ? _a : null,
|
|
1482
|
+
from: sequenceWrapper.from,
|
|
1483
|
+
name: sequenceWrapper.name,
|
|
1484
|
+
position: sequenceWrapper.position,
|
|
1485
|
+
sequenceLocalName: ensureSequenceImport(ast),
|
|
1486
|
+
})
|
|
1487
|
+
: elementToInsert;
|
|
1488
|
+
const logLine = addElementToComponentRoot({
|
|
1489
|
+
ast,
|
|
1490
|
+
exportName: location.exportName,
|
|
1491
|
+
element: finalElementToInsert,
|
|
1492
|
+
});
|
|
1493
|
+
const finalFile = (0, parse_ast_1.serializeAst)(ast);
|
|
1508
1494
|
const { output, formatted } = await (0, format_file_content_1.formatFileContent)({
|
|
1509
1495
|
input: finalFile,
|
|
1510
1496
|
prettierConfigOverride,
|
|
1511
1497
|
});
|
|
1498
|
+
const nodePathRemappings = (0, get_node_path_remappings_1.getNodePathRemappings)({
|
|
1499
|
+
ast,
|
|
1500
|
+
captured: capturedNodePaths,
|
|
1501
|
+
output,
|
|
1502
|
+
});
|
|
1512
1503
|
return {
|
|
1513
1504
|
fileName: location.fileName,
|
|
1514
1505
|
source: location.source,
|
|
@@ -1516,6 +1507,7 @@ const insertJsxElementIntoComposition = async ({ remotionRoot, compositionFile,
|
|
|
1516
1507
|
output,
|
|
1517
1508
|
formatted,
|
|
1518
1509
|
logLine,
|
|
1510
|
+
nodePathRemappings,
|
|
1519
1511
|
};
|
|
1520
1512
|
};
|
|
1521
1513
|
exports.insertJsxElementIntoComposition = insertJsxElementIntoComposition;
|
|
@@ -6,10 +6,12 @@ export type ResolvedEditor = (ProcessAndCommand & {
|
|
|
6
6
|
type: 'built-in';
|
|
7
7
|
id: BuiltInEditor | null;
|
|
8
8
|
name: string;
|
|
9
|
+
nameWithType: string;
|
|
9
10
|
}) | (ResolvedCustomEditorExecutable & {
|
|
10
11
|
type: 'custom';
|
|
11
12
|
id: 'custom';
|
|
12
13
|
name: string;
|
|
14
|
+
nameWithType: string;
|
|
13
15
|
editor: CustomEditor;
|
|
14
16
|
});
|
|
15
17
|
type ResolveEditorDependencies = {
|
|
@@ -19,7 +19,7 @@ const defaultDependencies = {
|
|
|
19
19
|
warnedEditors,
|
|
20
20
|
};
|
|
21
21
|
const resolveEditor = async ({ defaultEditor, logLevel, preferredEditor, }, overrides = {}) => {
|
|
22
|
-
var _a;
|
|
22
|
+
var _a, _b;
|
|
23
23
|
const dependencies = {
|
|
24
24
|
...defaultDependencies,
|
|
25
25
|
warn: (message) => {
|
|
@@ -40,6 +40,7 @@ const resolveEditor = async ({ defaultEditor, logLevel, preferredEditor, }, over
|
|
|
40
40
|
type: 'custom',
|
|
41
41
|
id: 'custom',
|
|
42
42
|
name: defaultEditor.name,
|
|
43
|
+
nameWithType: defaultEditor.name,
|
|
43
44
|
editor: defaultEditor,
|
|
44
45
|
};
|
|
45
46
|
}
|
|
@@ -56,6 +57,7 @@ const resolveEditor = async ({ defaultEditor, logLevel, preferredEditor, }, over
|
|
|
56
57
|
type: 'custom',
|
|
57
58
|
id: 'custom',
|
|
58
59
|
name: defaultEditor.name,
|
|
60
|
+
nameWithType: defaultEditor.name,
|
|
59
61
|
editor: defaultEditor,
|
|
60
62
|
};
|
|
61
63
|
}
|
|
@@ -85,6 +87,7 @@ const resolveEditor = async ({ defaultEditor, logLevel, preferredEditor, }, over
|
|
|
85
87
|
type: 'built-in',
|
|
86
88
|
id: null,
|
|
87
89
|
name: (_a = (0, open_in_editor_1.getDisplayNameForEditor)(legacyEditor.command)) !== null && _a !== void 0 ? _a : legacyEditor.command,
|
|
90
|
+
nameWithType: (_b = (0, open_in_editor_1.getDisplayNameForEditor)(legacyEditor.command)) !== null && _b !== void 0 ? _b : legacyEditor.command,
|
|
88
91
|
};
|
|
89
92
|
};
|
|
90
93
|
exports.resolveEditor = resolveEditor;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const terminalArtworkDataUrls: {
|
|
2
|
+
readonly ghostty: "data:image/png;base64,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";
|
|
3
|
+
readonly iterm2: "data:image/png;base64,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";
|
|
4
|
+
readonly 'windows-terminal': "data:image/png;base64,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";
|
|
5
|
+
readonly terminal: "data:image/png;base64,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";
|
|
6
|
+
};
|