13 lines
353 B
TypeScript
13 lines
353 B
TypeScript
import os from "node:os";
|
|
import path from "node:path";
|
|
|
|
export function resolveUserPath(input: string): string {
|
|
const trimmed = input.trim();
|
|
if (!trimmed) return trimmed;
|
|
if (trimmed.startsWith("~")) {
|
|
const expanded = trimmed.replace(/^~(?=$|[\\/])/, os.homedir());
|
|
return path.resolve(expanded);
|
|
}
|
|
return path.resolve(trimmed);
|
|
}
|