postforme-terminal 1.0.2 → 1.0.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/dist/index.js +38 -10
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -12,18 +12,46 @@ const STUDIO_PORT = parseInt(process.env.REMOTION_STUDIO_PORT || '3100', 10);
|
|
|
12
12
|
const CWD = process.cwd();
|
|
13
13
|
const MAX_BUFFER = 100_000;
|
|
14
14
|
// --- Locate render project ---
|
|
15
|
+
function isRenderProject(dir) {
|
|
16
|
+
return existsSync(resolve(dir, 'package.json')) && existsSync(resolve(dir, 'src'));
|
|
17
|
+
}
|
|
15
18
|
function findRenderProject() {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
19
|
+
// 1. Explicit env var (highest priority)
|
|
20
|
+
if (process.env.POSTFORME_RENDER_PATH && isRenderProject(process.env.POSTFORME_RENDER_PATH)) {
|
|
21
|
+
return process.env.POSTFORME_RENDER_PATH;
|
|
22
|
+
}
|
|
23
|
+
// 2. Walk up from CWD checking siblings and children at each level
|
|
24
|
+
let dir = CWD;
|
|
25
|
+
for (let i = 0; i < 5; i++) {
|
|
26
|
+
// Check as sibling
|
|
27
|
+
const sibling = resolve(dir, 'postforme-render');
|
|
28
|
+
if (isRenderProject(sibling))
|
|
29
|
+
return sibling;
|
|
30
|
+
// Check inside a postforme subfolder (e.g. user ran from ~/Projects, render is in ~/Projects/postforme/postforme-render)
|
|
31
|
+
const nested = resolve(dir, 'postforme', 'postforme-render');
|
|
32
|
+
if (isRenderProject(nested))
|
|
33
|
+
return nested;
|
|
34
|
+
const parent = resolve(dir, '..');
|
|
35
|
+
if (parent === dir)
|
|
36
|
+
break; // hit root
|
|
37
|
+
dir = parent;
|
|
38
|
+
}
|
|
39
|
+
// 3. Common locations
|
|
40
|
+
const home = homedir();
|
|
41
|
+
const commonPaths = [
|
|
42
|
+
resolve(home, 'postforme-render'),
|
|
43
|
+
resolve(home, 'postforme', 'postforme-render'),
|
|
44
|
+
resolve(home, 'Desktop', 'postforme', 'postforme-render'),
|
|
45
|
+
resolve(home, 'Desktop', 'Projects', 'postforme', 'postforme-render'),
|
|
46
|
+
resolve(home, 'Documents', 'postforme', 'postforme-render'),
|
|
47
|
+
resolve(home, 'projects', 'postforme', 'postforme-render'),
|
|
48
|
+
resolve(home, 'Projects', 'postforme', 'postforme-render'),
|
|
49
|
+
resolve(home, 'dev', 'postforme', 'postforme-render'),
|
|
50
|
+
resolve(home, '.postforme', 'render'),
|
|
51
|
+
];
|
|
52
|
+
for (const p of commonPaths) {
|
|
53
|
+
if (isRenderProject(p))
|
|
25
54
|
return p;
|
|
26
|
-
}
|
|
27
55
|
}
|
|
28
56
|
return null;
|
|
29
57
|
}
|