@vibe-validate/utils 0.18.4 → 0.19.0-rc.2
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.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/package-manager.d.ts +146 -0
- package/dist/package-manager.d.ts.map +1 -0
- package/dist/package-manager.js +187 -0
- package/dist/package-manager.js.map +1 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -9,4 +9,5 @@
|
|
|
9
9
|
export { safeExecSync, safeExecFromString, safeExecResult, isToolAvailable, getToolVersion, hasShellSyntax, CommandExecutionError, type SafeExecOptions, type SafeExecResult } from './safe-exec.js';
|
|
10
10
|
export { normalizedTmpdir, mkdirSyncReal, normalizePath, toForwardSlash } from './path-helpers.js';
|
|
11
11
|
export { isProcessRunning } from './process-check.js';
|
|
12
|
+
export { getPackageVersion, getLatestVersion, packageExists, publishPackage, addDistTag, unpublishPackage, deprecatePackage, installPackage, executePnpmCommand, type PackageManagerOptions } from './package-manager.js';
|
|
12
13
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,cAAc,EACf,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,gBAAgB,EACjB,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,cAAc,EACf,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,KAAK,qBAAqB,EAC3B,MAAM,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -12,4 +12,6 @@ export { safeExecSync, safeExecFromString, safeExecResult, isToolAvailable, getT
|
|
|
12
12
|
export { normalizedTmpdir, mkdirSyncReal, normalizePath, toForwardSlash } from './path-helpers.js';
|
|
13
13
|
// Process checking (cross-platform)
|
|
14
14
|
export { isProcessRunning } from './process-check.js';
|
|
15
|
+
// Package management (npm/pnpm commands)
|
|
16
|
+
export { getPackageVersion, getLatestVersion, packageExists, publishPackage, addDistTag, unpublishPackage, deprecatePackage, installPackage, executePnpmCommand } from './package-manager.js';
|
|
15
17
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,6CAA6C;AAC7C,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,qBAAqB,EAGtB,MAAM,gBAAgB,CAAC;AAExB,gEAAgE;AAChE,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,cAAc,EACf,MAAM,mBAAmB,CAAC;AAE3B,oCAAoC;AACpC,OAAO,EACL,gBAAgB,EACjB,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,6CAA6C;AAC7C,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,qBAAqB,EAGtB,MAAM,gBAAgB,CAAC;AAExB,gEAAgE;AAChE,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,cAAc,EACf,MAAM,mBAAmB,CAAC;AAE3B,oCAAoC;AACpC,OAAO,EACL,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAE5B,yCAAyC;AACzC,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAEnB,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Package Manager Operations
|
|
3
|
+
*
|
|
4
|
+
* Single source of truth for npm/pnpm command execution.
|
|
5
|
+
* Centralizes all package registry and publishing operations.
|
|
6
|
+
*
|
|
7
|
+
* DO NOT call npm/pnpm via safeExecSync/safeExecResult directly.
|
|
8
|
+
* Use these functions instead for:
|
|
9
|
+
* - Consistent error handling
|
|
10
|
+
* - Better testability (easy mocking)
|
|
11
|
+
* - Architectural consistency
|
|
12
|
+
*/
|
|
13
|
+
export interface PackageManagerOptions {
|
|
14
|
+
cwd?: string;
|
|
15
|
+
timeout?: number;
|
|
16
|
+
stdio?: 'pipe' | 'ignore' | Array<'pipe' | 'ignore' | 'inherit'>;
|
|
17
|
+
env?: NodeJS.ProcessEnv;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Get package version from npm registry
|
|
21
|
+
*
|
|
22
|
+
* @param packageName - Package name (e.g., 'vibe-validate')
|
|
23
|
+
* @param versionOrTag - Version or tag (e.g., '0.19.0', 'latest')
|
|
24
|
+
* @returns Version string or null if not found
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* const version = getPackageVersion('vibe-validate', 'latest');
|
|
28
|
+
* console.log(version); // '0.19.0'
|
|
29
|
+
*/
|
|
30
|
+
export declare function getPackageVersion(packageName: string, versionOrTag: string): string | null;
|
|
31
|
+
/**
|
|
32
|
+
* Get latest version of a package from npm registry
|
|
33
|
+
*
|
|
34
|
+
* @param packageName - Package name (e.g., 'vibe-validate')
|
|
35
|
+
* @returns Latest version string
|
|
36
|
+
* @throws Error if package not found or registry unreachable
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* const version = getLatestVersion('vibe-validate');
|
|
40
|
+
* console.log(version); // '0.19.0'
|
|
41
|
+
*/
|
|
42
|
+
export declare function getLatestVersion(packageName: string): string;
|
|
43
|
+
/**
|
|
44
|
+
* Check if a package version exists in npm registry
|
|
45
|
+
*
|
|
46
|
+
* @param packageName - Package name
|
|
47
|
+
* @param version - Version to check
|
|
48
|
+
* @returns True if package version exists
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* if (packageExists('vibe-validate', '0.19.0')) {
|
|
52
|
+
* console.log('Package already published');
|
|
53
|
+
* }
|
|
54
|
+
*/
|
|
55
|
+
export declare function packageExists(packageName: string, version: string): boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Publish package to npm registry using pnpm
|
|
58
|
+
*
|
|
59
|
+
* @param options - Publishing options
|
|
60
|
+
* @param options.cwd - Package directory to publish from
|
|
61
|
+
* @param options.tag - Dist tag (e.g., 'latest', 'rc', 'dev')
|
|
62
|
+
* @param options.stdio - How to handle stdio streams
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* publishPackage({
|
|
66
|
+
* cwd: '/path/to/package',
|
|
67
|
+
* tag: 'latest',
|
|
68
|
+
* stdio: 'inherit'
|
|
69
|
+
* });
|
|
70
|
+
*/
|
|
71
|
+
export declare function publishPackage(options: {
|
|
72
|
+
cwd: string;
|
|
73
|
+
tag: string;
|
|
74
|
+
stdio?: 'pipe' | 'ignore' | Array<'pipe' | 'ignore' | 'inherit'>;
|
|
75
|
+
}): void;
|
|
76
|
+
/**
|
|
77
|
+
* Add dist tag to published package
|
|
78
|
+
*
|
|
79
|
+
* @param packageName - Full package name (e.g., '@vibe-validate/core')
|
|
80
|
+
* @param version - Version to tag
|
|
81
|
+
* @param tag - Tag name (e.g., 'latest', 'rc')
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* addDistTag('@vibe-validate/core', '0.19.0', 'latest');
|
|
85
|
+
*/
|
|
86
|
+
export declare function addDistTag(packageName: string, version: string, tag: string): void;
|
|
87
|
+
/**
|
|
88
|
+
* Unpublish package version from npm registry
|
|
89
|
+
*
|
|
90
|
+
* @param packageName - Full package name
|
|
91
|
+
* @param version - Version to unpublish
|
|
92
|
+
* @returns True if successful, false if failed
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* if (unpublishPackage('@vibe-validate/core', '0.19.0-rc.1')) {
|
|
96
|
+
* console.log('Successfully unpublished');
|
|
97
|
+
* }
|
|
98
|
+
*/
|
|
99
|
+
export declare function unpublishPackage(packageName: string, version: string): boolean;
|
|
100
|
+
/**
|
|
101
|
+
* Deprecate package version on npm registry
|
|
102
|
+
*
|
|
103
|
+
* @param packageName - Full package name
|
|
104
|
+
* @param version - Version to deprecate
|
|
105
|
+
* @param message - Deprecation message
|
|
106
|
+
* @returns True if successful, false if failed
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* deprecatePackage(
|
|
110
|
+
* '@vibe-validate/core',
|
|
111
|
+
* '0.19.0-rc.1',
|
|
112
|
+
* 'Use 0.19.0 instead'
|
|
113
|
+
* );
|
|
114
|
+
*/
|
|
115
|
+
export declare function deprecatePackage(packageName: string, version: string, message: string): boolean;
|
|
116
|
+
/**
|
|
117
|
+
* Install npm package from tarball
|
|
118
|
+
*
|
|
119
|
+
* @param tarballPath - Path to tarball file
|
|
120
|
+
* @param targetDir - Directory to install into
|
|
121
|
+
*
|
|
122
|
+
* @example
|
|
123
|
+
* installPackage(
|
|
124
|
+
* '/tmp/vibe-validate-0.19.0.tgz',
|
|
125
|
+
* '/tmp/test-install'
|
|
126
|
+
* );
|
|
127
|
+
*/
|
|
128
|
+
export declare function installPackage(tarballPath: string, targetDir: string): void;
|
|
129
|
+
/**
|
|
130
|
+
* Execute pnpm command with arguments
|
|
131
|
+
*
|
|
132
|
+
* Use this for pnpm commands not covered by specific functions above.
|
|
133
|
+
*
|
|
134
|
+
* @param args - Command arguments
|
|
135
|
+
* @param options - Execution options
|
|
136
|
+
* @returns Command output
|
|
137
|
+
*
|
|
138
|
+
* @example
|
|
139
|
+
* // Run pnpm validate
|
|
140
|
+
* executePnpmCommand(['validate'], {
|
|
141
|
+
* cwd: projectRoot,
|
|
142
|
+
* stdio: 'inherit'
|
|
143
|
+
* });
|
|
144
|
+
*/
|
|
145
|
+
export declare function executePnpmCommand(args: string[], options?: PackageManagerOptions): string;
|
|
146
|
+
//# sourceMappingURL=package-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../src/package-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC,CAAC;IACjE,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACzB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW1F;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAM5D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAE3E;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC,CAAC;CAClE,GAAG,IAAI,CAKP;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAIlF;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAK9E;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAK/F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAK3E;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAU1F"}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Package Manager Operations
|
|
3
|
+
*
|
|
4
|
+
* Single source of truth for npm/pnpm command execution.
|
|
5
|
+
* Centralizes all package registry and publishing operations.
|
|
6
|
+
*
|
|
7
|
+
* DO NOT call npm/pnpm via safeExecSync/safeExecResult directly.
|
|
8
|
+
* Use these functions instead for:
|
|
9
|
+
* - Consistent error handling
|
|
10
|
+
* - Better testability (easy mocking)
|
|
11
|
+
* - Architectural consistency
|
|
12
|
+
*/
|
|
13
|
+
import { safeExecResult, safeExecSync } from './safe-exec.js';
|
|
14
|
+
/**
|
|
15
|
+
* Get package version from npm registry
|
|
16
|
+
*
|
|
17
|
+
* @param packageName - Package name (e.g., 'vibe-validate')
|
|
18
|
+
* @param versionOrTag - Version or tag (e.g., '0.19.0', 'latest')
|
|
19
|
+
* @returns Version string or null if not found
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* const version = getPackageVersion('vibe-validate', 'latest');
|
|
23
|
+
* console.log(version); // '0.19.0'
|
|
24
|
+
*/
|
|
25
|
+
export function getPackageVersion(packageName, versionOrTag) {
|
|
26
|
+
const result = safeExecResult('npm', ['view', `${packageName}@${versionOrTag}`, 'version'], {
|
|
27
|
+
encoding: 'utf8',
|
|
28
|
+
stdio: 'pipe',
|
|
29
|
+
});
|
|
30
|
+
if (result.status !== 0) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
return result.stdout.trim();
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Get latest version of a package from npm registry
|
|
37
|
+
*
|
|
38
|
+
* @param packageName - Package name (e.g., 'vibe-validate')
|
|
39
|
+
* @returns Latest version string
|
|
40
|
+
* @throws Error if package not found or registry unreachable
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* const version = getLatestVersion('vibe-validate');
|
|
44
|
+
* console.log(version); // '0.19.0'
|
|
45
|
+
*/
|
|
46
|
+
export function getLatestVersion(packageName) {
|
|
47
|
+
const version = safeExecSync('npm', ['view', packageName, 'version'], {
|
|
48
|
+
encoding: 'utf8',
|
|
49
|
+
stdio: 'pipe',
|
|
50
|
+
});
|
|
51
|
+
return version.trim();
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Check if a package version exists in npm registry
|
|
55
|
+
*
|
|
56
|
+
* @param packageName - Package name
|
|
57
|
+
* @param version - Version to check
|
|
58
|
+
* @returns True if package version exists
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* if (packageExists('vibe-validate', '0.19.0')) {
|
|
62
|
+
* console.log('Package already published');
|
|
63
|
+
* }
|
|
64
|
+
*/
|
|
65
|
+
export function packageExists(packageName, version) {
|
|
66
|
+
return getPackageVersion(packageName, version) !== null;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Publish package to npm registry using pnpm
|
|
70
|
+
*
|
|
71
|
+
* @param options - Publishing options
|
|
72
|
+
* @param options.cwd - Package directory to publish from
|
|
73
|
+
* @param options.tag - Dist tag (e.g., 'latest', 'rc', 'dev')
|
|
74
|
+
* @param options.stdio - How to handle stdio streams
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* publishPackage({
|
|
78
|
+
* cwd: '/path/to/package',
|
|
79
|
+
* tag: 'latest',
|
|
80
|
+
* stdio: 'inherit'
|
|
81
|
+
* });
|
|
82
|
+
*/
|
|
83
|
+
export function publishPackage(options) {
|
|
84
|
+
safeExecSync('pnpm', ['publish', '--no-git-checks', '--tag', options.tag], {
|
|
85
|
+
stdio: options.stdio ?? 'pipe',
|
|
86
|
+
cwd: options.cwd,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Add dist tag to published package
|
|
91
|
+
*
|
|
92
|
+
* @param packageName - Full package name (e.g., '@vibe-validate/core')
|
|
93
|
+
* @param version - Version to tag
|
|
94
|
+
* @param tag - Tag name (e.g., 'latest', 'rc')
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* addDistTag('@vibe-validate/core', '0.19.0', 'latest');
|
|
98
|
+
*/
|
|
99
|
+
export function addDistTag(packageName, version, tag) {
|
|
100
|
+
safeExecSync('npm', ['dist-tag', 'add', `${packageName}@${version}`, tag], {
|
|
101
|
+
stdio: 'pipe',
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Unpublish package version from npm registry
|
|
106
|
+
*
|
|
107
|
+
* @param packageName - Full package name
|
|
108
|
+
* @param version - Version to unpublish
|
|
109
|
+
* @returns True if successful, false if failed
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* if (unpublishPackage('@vibe-validate/core', '0.19.0-rc.1')) {
|
|
113
|
+
* console.log('Successfully unpublished');
|
|
114
|
+
* }
|
|
115
|
+
*/
|
|
116
|
+
export function unpublishPackage(packageName, version) {
|
|
117
|
+
const result = safeExecResult('npm', ['unpublish', `${packageName}@${version}`, '--force'], {
|
|
118
|
+
stdio: 'pipe',
|
|
119
|
+
});
|
|
120
|
+
return result.status === 0;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Deprecate package version on npm registry
|
|
124
|
+
*
|
|
125
|
+
* @param packageName - Full package name
|
|
126
|
+
* @param version - Version to deprecate
|
|
127
|
+
* @param message - Deprecation message
|
|
128
|
+
* @returns True if successful, false if failed
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* deprecatePackage(
|
|
132
|
+
* '@vibe-validate/core',
|
|
133
|
+
* '0.19.0-rc.1',
|
|
134
|
+
* 'Use 0.19.0 instead'
|
|
135
|
+
* );
|
|
136
|
+
*/
|
|
137
|
+
export function deprecatePackage(packageName, version, message) {
|
|
138
|
+
const result = safeExecResult('npm', ['deprecate', `${packageName}@${version}`, message], {
|
|
139
|
+
stdio: 'pipe',
|
|
140
|
+
});
|
|
141
|
+
return result.status === 0;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Install npm package from tarball
|
|
145
|
+
*
|
|
146
|
+
* @param tarballPath - Path to tarball file
|
|
147
|
+
* @param targetDir - Directory to install into
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
150
|
+
* installPackage(
|
|
151
|
+
* '/tmp/vibe-validate-0.19.0.tgz',
|
|
152
|
+
* '/tmp/test-install'
|
|
153
|
+
* );
|
|
154
|
+
*/
|
|
155
|
+
export function installPackage(tarballPath, targetDir) {
|
|
156
|
+
safeExecSync('npm', ['install', tarballPath], {
|
|
157
|
+
cwd: targetDir,
|
|
158
|
+
stdio: 'pipe',
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Execute pnpm command with arguments
|
|
163
|
+
*
|
|
164
|
+
* Use this for pnpm commands not covered by specific functions above.
|
|
165
|
+
*
|
|
166
|
+
* @param args - Command arguments
|
|
167
|
+
* @param options - Execution options
|
|
168
|
+
* @returns Command output
|
|
169
|
+
*
|
|
170
|
+
* @example
|
|
171
|
+
* // Run pnpm validate
|
|
172
|
+
* executePnpmCommand(['validate'], {
|
|
173
|
+
* cwd: projectRoot,
|
|
174
|
+
* stdio: 'inherit'
|
|
175
|
+
* });
|
|
176
|
+
*/
|
|
177
|
+
export function executePnpmCommand(args, options) {
|
|
178
|
+
const execOptions = {
|
|
179
|
+
encoding: 'utf8',
|
|
180
|
+
stdio: options?.stdio ?? 'pipe',
|
|
181
|
+
cwd: options?.cwd,
|
|
182
|
+
timeout: options?.timeout,
|
|
183
|
+
env: options?.env,
|
|
184
|
+
};
|
|
185
|
+
return safeExecSync('pnpm', args, execOptions);
|
|
186
|
+
}
|
|
187
|
+
//# sourceMappingURL=package-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../src/package-manager.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED