@nexrender/core 1.51.4 → 1.51.8

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 (85) hide show
  1. package/package.json +2 -2
  2. package/src/tasks/script/wrap-footage.js +1 -1
  3. package/test/Scripts/Startup/commandLineRenderer.jsx +0 -1
  4. package/test/aerender +0 -10
  5. package/test/empty.json +0 -13
  6. package/test/index-mock.js +0 -28
  7. package/test/index.js +0 -2
  8. package/test/manual-win-wsl.js +0 -18
  9. package/test/manual-win.js +0 -73
  10. package/test/manual.js +0 -74
  11. package/test/myjob.json +0 -50
  12. package/test/mytest.js +0 -7
  13. package/test/mywsljob.json +0 -49
  14. package/test/paramInjectJob_noInit.json +0 -12
  15. package/test/paramInject_CustomKeyword.json +0 -19
  16. package/test/paramInject_JSONInit.jsx +0 -3
  17. package/test/paramInject_JSXInit.jsx +0 -4
  18. package/test/paramInject_completeFunctionsExample.json +0 -44
  19. package/test/paramInject_customKeyword_JSXInit.jsx +0 -4
  20. package/test/paramInject_customKeyword_noInit.jsx +0 -4
  21. package/test/paramInject_functionTypeParameter.json +0 -22
  22. package/test/paramInject_noInit.jsx +0 -4
  23. package/test/paramInject_noJSXInit_commentBlockAndLines.jsx +0 -14
  24. package/test/result.mp4 +0 -0
  25. package/test/unit-patch.js +0 -66
  26. package/test/workpath/7LyC6arUCXaJkBo7IORV-/aerender.log +0 -4
  27. package/test/workpath/7LyC6arUCXaJkBo7IORV-/nexrender-7LyC6arUCXaJkBo7IORV--script.jsx +0 -259
  28. package/test/workpath/7LyC6arUCXaJkBo7IORV-/shuo3xcefe8.txt +0 -1
  29. package/test/workpath/7LyC6arUCXaJkBo7IORV-/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  30. package/test/workpath/8jeh3u9dpLHjoGpI6rjx2/aerender.log +0 -4
  31. package/test/workpath/8jeh3u9dpLHjoGpI6rjx2/nexrender-8jeh3u9dpLHjoGpI6rjx2-script.jsx +0 -259
  32. package/test/workpath/8jeh3u9dpLHjoGpI6rjx2/o5qw6b68qb.txt +0 -1
  33. package/test/workpath/8jeh3u9dpLHjoGpI6rjx2/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  34. package/test/workpath/VknW4c3v2iqxn2oCwwn6h/22whbptmoco.txt +0 -1
  35. package/test/workpath/VknW4c3v2iqxn2oCwwn6h/nexrender-VknW4c3v2iqxn2oCwwn6h-script.jsx +0 -259
  36. package/test/workpath/VknW4c3v2iqxn2oCwwn6h/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  37. package/test/workpath/WWZPunE4et5DRshfZExi3/aerender.log +0 -4
  38. package/test/workpath/WWZPunE4et5DRshfZExi3/ayw72a2jxmu.txt +0 -1
  39. package/test/workpath/WWZPunE4et5DRshfZExi3/nexrender-WWZPunE4et5DRshfZExi3-script.jsx +0 -259
  40. package/test/workpath/WWZPunE4et5DRshfZExi3/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  41. package/test/workpath/aerender-VknW4c3v2iqxn2oCwwn6h.log +0 -4
  42. package/test/workpath/aerender-gEX4BWRLMuK1mfa7YsWSO.log +0 -4
  43. package/test/workpath/aerender-lIMz7U9rMGkTk_2ui_7LM.log +0 -4
  44. package/test/workpath/aerender-uiy_a4azTwe5XOC8r4qlX.log +0 -4
  45. package/test/workpath/aerender-umMNXjDQlXv8l1hayySwW.log +0 -4
  46. package/test/workpath/aerender-yV_jes3eq34uZi-1eyBYp.log +0 -4
  47. package/test/workpath/aerender-zOn54c0S90bFqVAhSLZlt.log +0 -4
  48. package/test/workpath/ffmpeg-b5.0.1 +0 -0
  49. package/test/workpath/gEX4BWRLMuK1mfa7YsWSO/5es7lulklvl.txt +0 -1
  50. package/test/workpath/gEX4BWRLMuK1mfa7YsWSO/nexrender-gEX4BWRLMuK1mfa7YsWSO-script.jsx +0 -259
  51. package/test/workpath/gEX4BWRLMuK1mfa7YsWSO/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  52. package/test/workpath/lIMz7U9rMGkTk_2ui_7LM/6krza0kzkvy.txt +0 -1
  53. package/test/workpath/lIMz7U9rMGkTk_2ui_7LM/nexrender-lIMz7U9rMGkTk_2ui_7LM-script.jsx +0 -259
  54. package/test/workpath/lIMz7U9rMGkTk_2ui_7LM/output.gif +0 -0
  55. package/test/workpath/lIMz7U9rMGkTk_2ui_7LM/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  56. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/ReelsBot.aep +0 -0
  57. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR8473-HIGH +0 -0
  58. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR8586-HIGH.jpg +0 -0
  59. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR8954-HIGH__.jpg +0 -0
  60. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR8959-HIGH__.jpg +0 -0
  61. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR8964-HIGH__.jpg +0 -0
  62. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR8969-HIGH__.jpg +0 -0
  63. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR8974-HIGH__.jpg +0 -0
  64. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR8989-HIGH__.jpg +0 -0
  65. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR8994-HIGH__.jpg +0 -0
  66. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR9000-HIGH__.jpg +0 -0
  67. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR9004-HIGH__.jpg +0 -0
  68. package/test/workpath/lkYw_qyYMwB3waoIh7CaR/_DSR9009-HIGH__.jpg +0 -0
  69. package/test/workpath/svBjjvo3KlgodQHqNFtPg/6snca47joec.txt +0 -1
  70. package/test/workpath/svBjjvo3KlgodQHqNFtPg/nexrender-svBjjvo3KlgodQHqNFtPg-script.jsx +0 -266
  71. package/test/workpath/svBjjvo3KlgodQHqNFtPg/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  72. package/test/workpath/uiy_a4azTwe5XOC8r4qlX/dw9kq81pala.txt +0 -1
  73. package/test/workpath/uiy_a4azTwe5XOC8r4qlX/nexrender-uiy_a4azTwe5XOC8r4qlX-script.jsx +0 -259
  74. package/test/workpath/uiy_a4azTwe5XOC8r4qlX/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  75. package/test/workpath/umMNXjDQlXv8l1hayySwW/nexrender-umMNXjDQlXv8l1hayySwW-script.jsx +0 -259
  76. package/test/workpath/umMNXjDQlXv8l1hayySwW/vkp2ixck7yk.txt +0 -1
  77. package/test/workpath/umMNXjDQlXv8l1hayySwW/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  78. package/test/workpath/yV_jes3eq34uZi-1eyBYp/ci6z16bpfum.txt +0 -1
  79. package/test/workpath/yV_jes3eq34uZi-1eyBYp/nexrender-yV_jes3eq34uZi-1eyBYp-script.jsx +0 -259
  80. package/test/workpath/yV_jes3eq34uZi-1eyBYp/output.gif +0 -0
  81. package/test/workpath/yV_jes3eq34uZi-1eyBYp/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  82. package/test/workpath/zOn54c0S90bFqVAhSLZlt/ncxvpalkvc.txt +0 -1
  83. package/test/workpath/zOn54c0S90bFqVAhSLZlt/nexrender-zOn54c0S90bFqVAhSLZlt-script.jsx +0 -259
  84. package/test/workpath/zOn54c0S90bFqVAhSLZlt/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==.png +0 -0
  85. package/test.js +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nexrender/core",
3
- "version": "1.51.4",
3
+ "version": "1.51.8",
4
4
  "main": "src/index.js",
5
5
  "author": "Inlife",
6
6
  "homepage": "https://www.nexrender.com",
@@ -39,5 +39,5 @@
39
39
  "publishConfig": {
40
40
  "access": "public"
41
41
  },
42
- "gitHead": "ab584b346ac92b272667dc0f70f034b5ef714c01"
42
+ "gitHead": "7f516f852cfc0edc6937f1b49ad1f236d7837d51"
43
43
  }
@@ -6,7 +6,7 @@ const wb = (value) => (value ? 'true' : 'false')
6
6
 
7
7
  const wrapFootage = (job, settings, { dest, ...asset }) => (`(function() {
8
8
  ${selectLayers(job, asset, `function(layer) {
9
- nexrender.replaceFootage(layer, '${checkForWSL(dest.replace(/\\/g, "\\\\"), settings)}', ${wb(asset.sequence)}, ${wb(asset.removeOld)})
9
+ nexrender.replaceFootage(layer, '${checkForWSL(dest.replace(/\\/g, "\\\\").replace(/'/,"\\'"), settings)}', ${wb(asset.sequence)}, ${wb(asset.removeOld)})
10
10
  }`)}
11
11
  })();\n`)
12
12
 
@@ -1 +0,0 @@
1
- // Command line renderer for After Effects. (nexrender-patch-v1.0.3)
package/test/aerender DELETED
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env node
2
- console.log('imitating rendering with aerender :p')
3
-
4
- console.log('rendering... 0%')
5
- Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, 1000)
6
- console.log('rendering... 50%')
7
- Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, 1000)
8
- console.log('rendering... 100%')
9
-
10
- process.exit(0)
package/test/empty.json DELETED
@@ -1,13 +0,0 @@
1
- {
2
- "template": {
3
- "src": "data:text/plain,Hello, World!",
4
- "composition": "test"
5
- },
6
- "assets": [
7
- {
8
- "type": "image",
9
- "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==",
10
- "layerName": "test"
11
- }
12
- ]
13
- }
@@ -1,28 +0,0 @@
1
- // simple test code
2
- const {render} = require('../src')
3
-
4
- process.env.NEXRENDER_ENABLE_AELOG_PROJECT_FOLDER = true
5
-
6
- const job = {
7
- template: {
8
- src: 'data:text/plain,Hello, World!',
9
- composition: 'test',
10
- output: __dirname + '/index.js',
11
- },
12
- assets: [
13
- {
14
- type: 'image',
15
- src: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==',
16
- layerName: 'test',
17
- }
18
- ]
19
- }
20
-
21
- const settings = {
22
- binary: __dirname + '/aerender',
23
- workpath: __dirname + '/workpath',
24
- }
25
-
26
- render(job, settings)
27
- .then(() => console.log('rendered successfully'))
28
- .catch(console.error)
package/test/index.js DELETED
@@ -1,2 +0,0 @@
1
- // simple syntax test
2
- require('../src')
@@ -1,18 +0,0 @@
1
- const { init, render } = require('../src');
2
- const job = require('./mywsljob.json');
3
-
4
- const settings = {
5
- logger: console,
6
- skipCleanup: true,
7
- debug: true,
8
- wslMap: 'Z',
9
- // workpath: '/mnt/d/Downloads/tmp/nexrender'
10
- }
11
-
12
- // console.log(JSON.stringify(job))
13
-
14
- render(job, init(settings)).then(job => {
15
- console.log('finished rendering', job)
16
- }).catch(err => {
17
- console.error(err)
18
- })
@@ -1,73 +0,0 @@
1
- const { init, render } = require('../src')
2
-
3
- const job = {
4
- template: {
5
- src: 'file:///D:/Downloads/nexrender-boilerplate-master/assets/nm05ae12.aepx',
6
- composition: 'main',
7
-
8
- frameStart: 0,
9
- frameEnd: 500,
10
- },
11
- assets: [
12
- {
13
- src: 'file:///D:/Downloads/nexrender-boilerplate-master/assets/2016-aug-deep.jpg',
14
- type: 'image',
15
- layerName: 'background.jpg',
16
- },
17
- {
18
- src: 'file:///D:/Downloads/nexrender-boilerplate-master/assets/nm.png',
19
- type: 'image',
20
- layerName: 'nm.png',
21
- },
22
- {
23
- src: 'file:///D:/Downloads/nexrender-boilerplate-master/assets/deep_60s.mp3',
24
- type: 'audio',
25
- useOriginal: true,
26
- layerName: 'audio.mp3',
27
- },
28
- // {
29
- // src: 'https://raw.githubusercontent.com/inlife/nexrender-boilerplate/master/assets/2016-aug-deep.js',
30
- // type: 'script',
31
- // },
32
- {
33
- type: 'data',
34
- layerName: 'artist',
35
- property: 'position',
36
- value: [0, 250],
37
- expression: `[5 * time, 250]`,
38
- },
39
- {
40
- type: 'data',
41
- layerName: 'track name',
42
- property: 'Source Text',
43
- value: 'Привет мир',
44
- }
45
- ],
46
- actions: {
47
- // prerender: [
48
- // { module: __dirname + '/mytest.js' }
49
- // ],
50
- postrender: [
51
- {
52
- module: '@nexrender/action-encode',
53
- output: 'output.mp4',
54
- preset: 'mp4',
55
- }
56
- ]
57
- },
58
- // onChange: (job, state) => console.log('new job state', state)
59
- }
60
-
61
- const settings = {
62
- logger: console,
63
- skipCleanup: true,
64
- debug: true,
65
- }
66
-
67
- // console.log(JSON.stringify(job))
68
-
69
- render(job, init(settings)).then(job => {
70
- console.log('finished rendering', job)
71
- }).catch(err => {
72
- console.error(err)
73
- })
package/test/manual.js DELETED
@@ -1,74 +0,0 @@
1
- const { init, render } = require('../src')
2
-
3
- const job = {
4
- template: {
5
- src: 'file:///Users/inlife/Downloads/nexrender-boilerplate-master/assets/nm05ae12.aepx',
6
- composition: 'main',
7
-
8
- frameStart: 0,
9
- frameEnd: 500,
10
- },
11
- assets: [
12
- {
13
- src: 'file:///Users/inlife/Downloads/nexrender-boilerplate-master/assets/2016-aug-deep.jpg',
14
- type: 'image',
15
- layerName: 'background.jpg',
16
- },
17
- {
18
- src: 'file:///Users/inlife/Downloads/nexrender-boilerplate-master/assets/nm.png',
19
- type: 'image',
20
- layerName: 'nm.png',
21
- },
22
- {
23
- src: 'file:///Users/inlife/Downloads/nexrender-boilerplate-master/assets/deep_60s.mp3',
24
- type: 'audio',
25
- layerName: 'audio.mp3',
26
- },
27
- // {
28
- // src: 'https://raw.githubusercontent.com/inlife/nexrender-boilerplate/master/assets/2016-aug-deep.js',
29
- // type: 'script',
30
- // },
31
- {
32
- type: 'data',
33
- layerName: 'artist',
34
- property: 'position',
35
- value: [0, 250],
36
- expression: `[5 * time, 250]`,
37
- },
38
- {
39
- type: 'data',
40
- layerName: 'track name',
41
- property: 'Source Text',
42
- value: 'Привет мир',
43
- }
44
- ],
45
- actions: {
46
- // prerender: [
47
- // { module: __dirname + '/mytest.js' }
48
- // ],
49
- postrender: [
50
- {
51
- module: '@nexrender/action-encode',
52
- output: 'output.mp4',
53
- preset: 'mp4',
54
- }
55
- ]
56
- },
57
-
58
- onChange: (job, state) => console.log('testing onChange:', state),
59
- onRenderProgress: (job, value) => console.log('testing onRenderProgress:', value)
60
- }
61
-
62
- const settings = {
63
- logger: console,
64
- skipCleanup: true,
65
- debug: true,
66
- }
67
-
68
- // console.log(JSON.stringify(job))
69
-
70
- render(job, init(settings)).then(job => {
71
- console.log('finished rendering', job)
72
- }).catch(err => {
73
- console.error(err)
74
- })
package/test/myjob.json DELETED
@@ -1,50 +0,0 @@
1
- {
2
- "template": {
3
- "src": "file:///Users/inlife/Downloads/nexrender-boilerplate-master/assets/nm05ae12.aepx",
4
- "composition": "main",
5
- "frameStart": 0,
6
- "frameEnd": 200
7
- },
8
- "assets": [
9
- {
10
- "src": "file:///Users/inlife/Downloads/nexrender-boilerplate-master/assets/2016-aug-deep.jpg",
11
- "type": "image",
12
- "layerName": "background.jpg"
13
- },
14
- {
15
- "src": "file:///Users/inlife/Downloads/nexrender-boilerplate-master/assets/nm.png",
16
- "type": "image",
17
- "layerName": "nm.png"
18
- },
19
- {
20
- "src": "file:///Users/inlife/Downloads/nexrender-boilerplate-master/assets/deep_60s.mp3",
21
- "type": "audio",
22
- "layerName": "audio.mp3"
23
- },
24
- {
25
- "type": "data",
26
- "layerName": "artist",
27
- "property": "position",
28
- "value": [
29
- 0,
30
- 250
31
- ],
32
- "expression": "[5 * time, 250]"
33
- },
34
- {
35
- "type": "data",
36
- "layerName": "track name",
37
- "property": "Source Text",
38
- "value": "Привет мир"
39
- }
40
- ],
41
- "actions": {
42
- "postrender": [
43
- {
44
- "module": "@nexrender/action-encode",
45
- "output": "output.mp4",
46
- "preset": "mp4"
47
- }
48
- ]
49
- }
50
- }
package/test/mytest.js DELETED
@@ -1,7 +0,0 @@
1
- module.exports = (job, /* settings */) => {
2
- console.log('custom module hello world!')
3
- return Promise.resolve(job)
4
- }
5
-
6
- console.log(new URL('d:/Documents/resource.txt'))
7
- console.log(new URL('data:text/plain;base64,SGVsbG8sIFdvcmxkIQ%3D%3D'))
@@ -1,49 +0,0 @@
1
- {
2
- "template": {
3
- "src": "file:///mnt/d/Downloads/nexrender-boilerplate-master/assets/nm05ae12.aepx",
4
- "composition": "main",
5
-
6
- "frameStart": 0,
7
- "frameEnd": 500
8
- },
9
- "assets": [
10
- {
11
- "src": "file:///mnt/d/Downloads/nexrender-boilerplate-master/assets/2016-aug-deep.jpg",
12
- "type": "image",
13
- "layerName": "background.jpg"
14
- },
15
- {
16
- "src": "file:///mnt/d/Downloads/nexrender-boilerplate-master/assets/nm.png",
17
- "type": "image",
18
- "layerName": "nm.png"
19
- },
20
- {
21
- "src": "file:///mnt/d/Downloads/nexrender-boilerplate-master/assets/deep_60s.mp3",
22
- "type": "audio",
23
- "useOriginal": true,
24
- "layerName": "audio.mp3"
25
- },
26
- {
27
- "type": "data",
28
- "layerName": "artist",
29
- "property": "position",
30
- "value": [0, 250],
31
- "expression": [50, 250]
32
- },
33
- {
34
- "type": "data",
35
- "layerName": "track name",
36
- "property": "Source Text",
37
- "value": "Test"
38
- }
39
- ],
40
- "actions": {
41
- "postrender": [
42
- {
43
- "module": "@nexrender/action-encode",
44
- "output": "output.mp4",
45
- "preset": "mp4"
46
- }
47
- ]
48
- }
49
- }
@@ -1,12 +0,0 @@
1
- {
2
- "template": {
3
- "src": "file:///C:/templates/sample.aep",
4
- "composition": "BLANK_COMP"
5
- },
6
- "assets": [
7
- {
8
- "src": "file:///C:/scripts/paramInject_noInit.jsx",
9
- "type": "script"
10
- }
11
- ]
12
- }
@@ -1,19 +0,0 @@
1
- {
2
- "template": {
3
- "src": "file:///C:/templates/sample.aep",
4
- "composition": "BLANK_COMP"
5
- },
6
- "assets": [
7
- {
8
- "src": "file:///C:/scripts/paramInject_JSONInit.jsx",
9
- "type": "script",
10
- "keyword": "_settings",
11
- "parameters": [
12
- {
13
- "key": "name",
14
- "value": "Dilip"
15
- }
16
- ]
17
- }
18
- ]
19
- }
@@ -1,3 +0,0 @@
1
- {
2
- alert("Hello " + NX.name);
3
- }
@@ -1,4 +0,0 @@
1
- {
2
- var NX = NX || { name : "John "};
3
- alert("Hello " + NX.name);
4
- }
@@ -1,44 +0,0 @@
1
- {
2
- "template": {
3
- "src": "file:///template.aep",
4
- "composition": "BLANK_COMP"
5
- },
6
- "assets": [
7
- {
8
- "src": "file:///sampleParamInjection.jsx",
9
- "type": "script",
10
- "parameters": [
11
- {
12
- "type": "array",
13
- "key" : "dogs",
14
- "value": [ "Captain Sparkles", "Summer", "Neptune"]
15
- },
16
- {
17
- "type" : "number",
18
- "key" : "anAmount"
19
- },
20
- {
21
- "type": "function",
22
- "key": "getDogsCount",
23
- "value" : "function() { return NX.get('dogs').length; }"
24
- },
25
- {
26
- "type": "function",
27
- "key": "exampleFn",
28
- "value": "function ( parameter ) { return parameter; }"
29
- },
30
- {
31
- "type" : "function",
32
- "key" : "dogCount",
33
- "value" : "(function(length) { return length })(NX.arg('dogCount'))",
34
- "arguments": [
35
- {
36
- "key" : "dogCount",
37
- "value": ["NX.call('exampleFn', [NX.call('getDogsCount') + NX.get('anAmount')])"]
38
- }
39
- ]
40
- }
41
- ]
42
- }
43
- ]
44
- }
@@ -1,4 +0,0 @@
1
- {
2
- var _settings = _settings || { name : "John" };
3
- alert("Hello " + _settings.name);
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- // This code will crash if it's executed directly in After Effects. See documentation on how to enable cross environment fault tolerance.
3
- alert("Hello " + _settings.name);
4
- }
@@ -1,22 +0,0 @@
1
- {
2
- "template": {
3
- "src": "file:///C:/devWork/work/ctrlmotion/sampleTemplates/TCO_FEBRERO_2020_DREAMS.aep",
4
- "composition": "BLANK_COMP"
5
- },
6
- "assets": [
7
- {
8
- "src": "file:///C:/devWork/work/ctrlmotion/scripts/sampleParamInjection.jsx",
9
- "type": "script",
10
- "parameters" : [
11
- {
12
- "key" : "name",
13
- "value": "(function () { return 1+1; })()"
14
- },
15
- {
16
- "key" : "dog",
17
- "value": "function doggo() { return 'Doggo' }"
18
- }
19
- ]
20
- }
21
- ]
22
- }
@@ -1,4 +0,0 @@
1
- {
2
- // This code will crash if it's executed directly in After Effects. See documentation on how to enable cross environment fault tolerance.
3
- alert("Hello " + NX.name);
4
- }
@@ -1,14 +0,0 @@
1
- {
2
- // The following line should be ignored by the script parameter injection.
3
- // var NX = NX || { name: "John" };
4
- //var NX = NX || { name: "John" };
5
- /* var NX = NX || { name: "John" }; */
6
- /*
7
- * var NX = NX || { name: "John" };
8
- *var NX = NX || { name: "John" };
9
- */
10
- /*
11
- var NX = NX || { name : "John" };
12
- */
13
- alert("Hello " + NX.name);
14
- }
package/test/result.mp4 DELETED
Binary file
@@ -1,66 +0,0 @@
1
- const fs = require('fs')
2
- const assert = require('assert').strict;
3
- const patch = require('../src/helpers/patch')
4
-
5
- describe('helpers/patch', function() {
6
- // mock the after effects binary path
7
- let mockSettings = { logger: { log: () => {} }, trackSync: () => {}, track: () => {} }
8
- let mockBinaryDir = __dirname + '/patch-test'
9
- let mockBinaryPath = mockBinaryDir + '/After Effects 2022'
10
- let mockBinaryFile = mockBinaryPath + '/aerender'
11
- let mockBinaryScript = mockBinaryPath + '/Scripts/Startup/commandLineRenderer.jsx'
12
- let mockBackupDir = mockBinaryPath + '/Backup.Scripts/Startup/'
13
- let mockBinaryPatched = mockBackupDir + 'commandLineRenderer.jsx'
14
-
15
- // prepare after effects binary directory
16
- fs.mkdirSync(mockBinaryDir, { recursive: true })
17
- fs.mkdirSync(mockBinaryPath, { recursive: true })
18
- fs.mkdirSync(mockBinaryPath + '/Scripts', { recursive: true })
19
- fs.mkdirSync(mockBinaryPath + '/Scripts/Startup', { recursive: true })
20
- fs.writeFileSync(mockBinaryFile, 'binary')
21
- fs.writeFileSync(mockBinaryScript, 'original')
22
-
23
- it('should choose the correct patched content for different AE versions', function(done) {
24
- assert(patch.getContentForPatch('2022/bin').indexOf('in_mfr_enable') !== -1)
25
- assert(patch.getContentForPatch('2021/bin').indexOf('in_mfr_enable') === -1)
26
- done()
27
- })
28
-
29
- it('should correctly return NOT_PATCHED', function(done) {
30
- assert.strictEqual(patch.getPatchStatus(mockBinaryFile), patch.PATCH_STATUS.NOT_PATCHED)
31
- done()
32
- })
33
-
34
- it('should apply the patch correctly', function(done) {
35
- patch({ binary: mockBinaryFile, ...mockSettings })
36
- assert.strictEqual(patch.getPatchStatus(mockBinaryFile), patch.PATCH_STATUS.PATCHED)
37
- assert.strictEqual(fs.readFileSync(mockBinaryScript, 'utf8').indexOf('nexrender-patch-v') !== -1, true)
38
- // check backup exists
39
- assert.strictEqual(fs.existsSync(mockBinaryPatched), true)
40
- assert.strictEqual(fs.readFileSync(mockBinaryPatched, 'utf8').indexOf('nexrender-patch-v') === -1, true)
41
- done()
42
- })
43
-
44
- it('should correctly return PATCHED', function(done) {
45
- assert.strictEqual(patch.getPatchStatus(mockBinaryFile), patch.PATCH_STATUS.PATCHED)
46
- done()
47
- })
48
-
49
- it('should correctly return OUTDATED', function(done) {
50
- fs.writeFileSync(mockBinaryScript, 'nexrender-patch-v0.0.0\n' + fs.readFileSync(mockBinaryScript, 'utf8'))
51
- assert.strictEqual(patch.getPatchStatus(mockBinaryFile), patch.PATCH_STATUS.OUTDATED)
52
- done()
53
- })
54
-
55
- // Cleanup after tests
56
- after(function() {
57
- // Remove created files and directories
58
- fs.unlinkSync(mockBinaryScript)
59
- fs.unlinkSync(mockBinaryFile)
60
- fs.rmdirSync(mockBinaryPath + '/Scripts/Startup', { recursive: true })
61
- fs.rmdirSync(mockBinaryPath + '/Scripts', { recursive: true })
62
- fs.rmdirSync(mockBinaryPath, { recursive: true })
63
- fs.rmdirSync(mockBinaryDir, { recursive: true })
64
-
65
- })
66
- });
@@ -1,4 +0,0 @@
1
- imitating rendering with aerender :p
2
- rendering... 0%
3
- rendering... 50%
4
- rendering... 100%