procsi 0.6.4 → 0.7.1
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/README.md +62 -29
- package/dist/cli/commands/browser.d.ts +3 -0
- package/dist/cli/commands/browser.d.ts.map +1 -0
- package/dist/cli/commands/browser.js +125 -0
- package/dist/cli/commands/browser.js.map +1 -0
- package/dist/cli/commands/helpers.d.ts +11 -0
- package/dist/cli/commands/helpers.d.ts.map +1 -1
- package/dist/cli/commands/helpers.js +30 -2
- package/dist/cli/commands/helpers.js.map +1 -1
- package/dist/cli/commands/on.js +3 -3
- package/dist/cli/commands/on.js.map +1 -1
- package/dist/cli/commands/project.js +6 -3
- package/dist/cli/commands/project.js.map +1 -1
- package/dist/cli/commands/tui.d.ts.map +1 -1
- package/dist/cli/commands/tui.js +7 -2
- package/dist/cli/commands/tui.js.map +1 -1
- package/dist/cli/index.js +7 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/tui/App.d.ts +4 -0
- package/dist/cli/tui/App.d.ts.map +1 -1
- package/dist/cli/tui/App.js +51 -5
- package/dist/cli/tui/App.js.map +1 -1
- package/dist/cli/tui/components/AccordionPanel.d.ts +6 -0
- package/dist/cli/tui/components/AccordionPanel.d.ts.map +1 -1
- package/dist/cli/tui/components/AccordionPanel.js +1 -1
- package/dist/cli/tui/components/AccordionPanel.js.map +1 -1
- package/dist/cli/tui/components/HelpModal.d.ts.map +1 -1
- package/dist/cli/tui/components/HelpModal.js +3 -0
- package/dist/cli/tui/components/HelpModal.js.map +1 -1
- package/dist/cli/tui/components/StatusBar.d.ts.map +1 -1
- package/dist/cli/tui/components/StatusBar.js +2 -0
- package/dist/cli/tui/components/StatusBar.js.map +1 -1
- package/dist/daemon/index.js +9 -4
- package/dist/daemon/index.js.map +1 -1
- package/dist/shared/browser.d.ts +72 -0
- package/dist/shared/browser.d.ts.map +1 -0
- package/dist/shared/browser.js +363 -0
- package/dist/shared/browser.js.map +1 -0
- package/dist/shared/config.d.ts.map +1 -1
- package/dist/shared/config.js +2 -1
- package/dist/shared/config.js.map +1 -1
- package/dist/shared/daemon.d.ts.map +1 -1
- package/dist/shared/daemon.js +6 -1
- package/dist/shared/daemon.js.map +1 -1
- package/dist/shared/logger.d.ts.map +1 -1
- package/dist/shared/logger.js +2 -1
- package/dist/shared/logger.js.map +1 -1
- package/dist/shared/project.d.ts +11 -3
- package/dist/shared/project.d.ts.map +1 -1
- package/dist/shared/project.js +19 -21
- package/dist/shared/project.js.map +1 -1
- package/package.json +1 -1
package/dist/shared/project.js
CHANGED
|
@@ -3,11 +3,23 @@ import * as os from "node:os";
|
|
|
3
3
|
import * as path from "node:path";
|
|
4
4
|
const PROCSI_DIR = ".procsi";
|
|
5
5
|
const HOME_DIR_PREFIX = "~";
|
|
6
|
+
/**
|
|
7
|
+
* Module-level override for the procsi data directory.
|
|
8
|
+
* When set, getProcsiDir returns this path directly instead of
|
|
9
|
+
* appending .procsi to the project root.
|
|
10
|
+
*/
|
|
11
|
+
let _configOverride;
|
|
12
|
+
export function setConfigOverride(dir) {
|
|
13
|
+
_configOverride = dir;
|
|
14
|
+
}
|
|
15
|
+
export function getConfigOverride() {
|
|
16
|
+
return _configOverride;
|
|
17
|
+
}
|
|
6
18
|
/**
|
|
7
19
|
* Resolve an override path, expanding ~ to the user's home directory
|
|
8
20
|
* and converting relative paths to absolute.
|
|
9
21
|
*/
|
|
10
|
-
function resolveOverridePath(override) {
|
|
22
|
+
export function resolveOverridePath(override) {
|
|
11
23
|
if (override.startsWith(HOME_DIR_PREFIX + path.sep) || override === HOME_DIR_PREFIX) {
|
|
12
24
|
return path.join(os.homedir(), override.slice(HOME_DIR_PREFIX.length));
|
|
13
25
|
}
|
|
@@ -56,9 +68,8 @@ export function findProjectRoot(startDir = process.cwd(), override) {
|
|
|
56
68
|
}
|
|
57
69
|
/**
|
|
58
70
|
* Determine the project root, creating .procsi if needed.
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
* - Otherwise, fall back to the user's home directory (global instance)
|
|
71
|
+
* Delegates to findProjectRoot for consistent traversal, then falls back
|
|
72
|
+
* to the user's home directory (global instance) when no root is found.
|
|
62
73
|
*
|
|
63
74
|
* When override is provided, returns the resolved override path directly
|
|
64
75
|
* (the caller is responsible for creating .procsi as needed).
|
|
@@ -67,28 +78,14 @@ export function findOrCreateProjectRoot(startDir = process.cwd(), override) {
|
|
|
67
78
|
if (override !== undefined) {
|
|
68
79
|
return resolveOverridePath(override);
|
|
69
80
|
}
|
|
70
|
-
|
|
71
|
-
const root = path.parse(currentDir).root;
|
|
72
|
-
let gitRoot;
|
|
73
|
-
while (currentDir !== root) {
|
|
74
|
-
// Check for .procsi directory first - this takes priority
|
|
75
|
-
if (fs.existsSync(path.join(currentDir, PROCSI_DIR))) {
|
|
76
|
-
return currentDir;
|
|
77
|
-
}
|
|
78
|
-
// Remember the git root if we find one
|
|
79
|
-
if (!gitRoot && fs.existsSync(path.join(currentDir, ".git"))) {
|
|
80
|
-
gitRoot = currentDir;
|
|
81
|
-
}
|
|
82
|
-
currentDir = path.dirname(currentDir);
|
|
83
|
-
}
|
|
84
|
-
// Fall back to home directory for a global procsi instance
|
|
85
|
-
return gitRoot ?? os.homedir();
|
|
81
|
+
return findProjectRoot(startDir) ?? os.homedir();
|
|
86
82
|
}
|
|
87
83
|
/**
|
|
88
84
|
* Get the .procsi directory path for a project root.
|
|
85
|
+
* Returns the config override when set (ignoring projectRoot).
|
|
89
86
|
*/
|
|
90
87
|
export function getProcsiDir(projectRoot) {
|
|
91
|
-
return path.join(projectRoot, PROCSI_DIR);
|
|
88
|
+
return _configOverride ?? path.join(projectRoot, PROCSI_DIR);
|
|
92
89
|
}
|
|
93
90
|
/**
|
|
94
91
|
* Ensure the .procsi directory exists, creating it if necessary.
|
|
@@ -118,6 +115,7 @@ export function getProcsiPaths(projectRoot) {
|
|
|
118
115
|
logFile: path.join(procsiDir, "procsi.log"),
|
|
119
116
|
configFile: path.join(procsiDir, "config.json"),
|
|
120
117
|
interceptorsDir: path.join(procsiDir, "interceptors"),
|
|
118
|
+
browserProfilesDir: path.join(procsiDir, "browser-profiles"),
|
|
121
119
|
proxyPreloadFile: path.join(procsiDir, "proxy-preload.cjs"),
|
|
122
120
|
pythonOverrideDir: path.join(procsiDir, "overrides", "python"),
|
|
123
121
|
rubyOverrideFile: path.join(procsiDir, "overrides", "ruby", "procsi_intercept.rb"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/shared/project.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,MAAM,UAAU,GAAG,SAAS,CAAC;AAC7B,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B;;;GAGG;AACH,
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/shared/project.ts"],"names":[],"mappings":"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"}
|