@nexrender/core 1.62.2 → 1.63.3
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/package.json +2 -2
- package/src/helpers/autofind.js +6 -0
- package/src/index.js +1 -1
- package/src/tasks/download.js +15 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nexrender/core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.63.3",
|
|
4
4
|
"main": "src/index.js",
|
|
5
5
|
"author": "Inlife",
|
|
6
6
|
"homepage": "https://www.nexrender.com",
|
|
@@ -45,5 +45,5 @@
|
|
|
45
45
|
"publishConfig": {
|
|
46
46
|
"access": "public"
|
|
47
47
|
},
|
|
48
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "6aa3b6453eb929a4e4c4a802d38f57be5078c6e3"
|
|
49
49
|
}
|
package/src/helpers/autofind.js
CHANGED
|
@@ -16,11 +16,13 @@ const defaultPaths = {
|
|
|
16
16
|
'/Applications/Adobe After Effects 2023',
|
|
17
17
|
'/Applications/Adobe After Effects 2024',
|
|
18
18
|
'/Applications/Adobe After Effects 2025',
|
|
19
|
+
'/Applications/Adobe After Effects 2026',
|
|
19
20
|
'/Applications/Adobe After Effects CC 2021',
|
|
20
21
|
'/Applications/Adobe After Effects CC 2022',
|
|
21
22
|
'/Applications/Adobe After Effects CC 2023',
|
|
22
23
|
'/Applications/Adobe After Effects CC 2024',
|
|
23
24
|
'/Applications/Adobe After Effects CC 2025',
|
|
25
|
+
'/Applications/Adobe After Effects CC 2026',
|
|
24
26
|
],
|
|
25
27
|
win32: [
|
|
26
28
|
'C:\\Program Files\\Adobe\\After Effects CC',
|
|
@@ -37,6 +39,7 @@ const defaultPaths = {
|
|
|
37
39
|
'C:\\Program Files\\Adobe\\After Effects 2023\\Support Files',
|
|
38
40
|
'C:\\Program Files\\Adobe\\After Effects 2024\\Support Files',
|
|
39
41
|
'C:\\Program Files\\Adobe\\After Effects 2025\\Support Files',
|
|
42
|
+
'C:\\Program Files\\Adobe\\After Effects 2026\\Support Files',
|
|
40
43
|
'C:\\Program Files\\Adobe\\Adobe After Effects CC',
|
|
41
44
|
'C:\\Program Files\\Adobe\\Adobe After Effects CC\\Support Files',
|
|
42
45
|
'C:\\Program Files\\Adobe\\Adobe After Effects CC 2015\\Support Files',
|
|
@@ -51,6 +54,7 @@ const defaultPaths = {
|
|
|
51
54
|
'C:\\Program Files\\Adobe\\Adobe After Effects 2023\\Support Files',
|
|
52
55
|
'C:\\Program Files\\Adobe\\Adobe After Effects 2024\\Support Files',
|
|
53
56
|
'C:\\Program Files\\Adobe\\Adobe After Effects 2025\\Support Files',
|
|
57
|
+
'C:\\Program Files\\Adobe\\Adobe After Effects 2026\\Support Files',
|
|
54
58
|
],
|
|
55
59
|
wsl: [
|
|
56
60
|
'/mnt/c/Program Files/Adobe/After Effects CC',
|
|
@@ -67,6 +71,7 @@ const defaultPaths = {
|
|
|
67
71
|
'/mnt/c/Program Files/Adobe/After Effects 2023/Support Files',
|
|
68
72
|
'/mnt/c/Program Files/Adobe/After Effects 2024/Support Files',
|
|
69
73
|
'/mnt/c/Program Files/Adobe/After Effects 2025/Support Files',
|
|
74
|
+
'/mnt/c/Program Files/Adobe/After Effects 2026/Support Files',
|
|
70
75
|
|
|
71
76
|
'/mnt/c/Program Files/Adobe/Adobe After Effects CC',
|
|
72
77
|
'/mnt/c/Program Files/Adobe/Adobe After Effects CC/Support Files',
|
|
@@ -82,6 +87,7 @@ const defaultPaths = {
|
|
|
82
87
|
'/mnt/c/Program Files/Adobe/Adobe After Effects 2023/Support Files',
|
|
83
88
|
'/mnt/c/Program Files/Adobe/Adobe After Effects 2024/Support Files',
|
|
84
89
|
'/mnt/c/Program Files/Adobe/Adobe After Effects 2025/Support Files',
|
|
90
|
+
'/mnt/c/Program Files/Adobe/Adobe After Effects 2026/Support Files',
|
|
85
91
|
],
|
|
86
92
|
}
|
|
87
93
|
|
package/src/index.js
CHANGED
|
@@ -62,7 +62,7 @@ const init = (settings) => {
|
|
|
62
62
|
settings.trackSync('Init Started')
|
|
63
63
|
|
|
64
64
|
// check for WSL
|
|
65
|
-
settings.wsl = isWsl
|
|
65
|
+
settings.wsl = isWsl;
|
|
66
66
|
|
|
67
67
|
const binaryAuto = autofind(settings);
|
|
68
68
|
const binaryUser = settings.binary && fs.existsSync(settings.binary) ? settings.binary : null;
|
package/src/tasks/download.js
CHANGED
|
@@ -33,7 +33,8 @@ const download = (job, settings, asset) => {
|
|
|
33
33
|
if (protocol === 'data' && !asset.layerName) {
|
|
34
34
|
destName = Math.random().toString(36).substring(2);
|
|
35
35
|
} else {
|
|
36
|
-
|
|
36
|
+
// Use uri.pathname to avoid issues with forward slashes in query parameters (e.g., Adobe Scene7 URLs)
|
|
37
|
+
destName = uri.pathname || path.basename(asset.src)
|
|
37
38
|
destName = destName.indexOf('?') !== -1 ? destName.slice(0, destName.indexOf('?')) : destName;
|
|
38
39
|
/* ^ remove possible query search string params ^ */
|
|
39
40
|
destName = decodeURI(destName) /* < remove/decode any special URI symbols within filename */
|
|
@@ -59,6 +60,19 @@ const download = (job, settings, asset) => {
|
|
|
59
60
|
destName += '.' + asset.extension
|
|
60
61
|
}
|
|
61
62
|
|
|
63
|
+
/* Truncate filename if too long to avoid Windows MAX_PATH (260 chars) issues */
|
|
64
|
+
if (process.platform === 'win32') {
|
|
65
|
+
const maxFilenameLength = 50; // Conservative limit to account for long base paths
|
|
66
|
+
if (destName.length > maxFilenameLength) {
|
|
67
|
+
const ext = path.extname(destName);
|
|
68
|
+
const baseName = path.basename(destName, ext);
|
|
69
|
+
const randomSuffix = Math.random().toString(36).substring(2, 10); // 8 chars
|
|
70
|
+
const truncatedBase = baseName.substring(0, maxFilenameLength - ext.length - randomSuffix.length - 1);
|
|
71
|
+
destName = `${truncatedBase}-${randomSuffix}${ext}`;
|
|
72
|
+
settings.logger.log(`[${job.uid}] Truncated long filename to: ${destName}`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
62
76
|
asset.dest = path.join(job.workpath, destName);
|
|
63
77
|
|
|
64
78
|
settings.trackCombined('Asset Download', {
|