Files
rea/src/domain/localPath.ts
T

11 lines
375 B
TypeScript

import { isAbsolute, relative, sep } from "node:path";
/** Test lexical containment on the host platform; callers must resolve symlinks first. */
export const isPathWithinRoot = (root: string, path: string): boolean => {
const value = relative(root, path);
return (
value === "" ||
(value !== ".." && !value.startsWith(`..${sep}`) && !isAbsolute(value))
);
};