UNPKG

@pstdio/opfs-utils

Version:

Utilities for the browser's OPFS: ls, grep, safe file read, unified diff patching, and MIME helpers.

24 lines (23 loc) 1.28 kB
/** * Split a POSIX-like path into normalized segments. * - trims whitespace * - removes empty and '.' segments * - resolves '..' by popping a segment when possible */ export declare function normalizeSegments(p: string): string[]; /** Join segments with single slashes, removing empties. */ export declare function normalizeSlashes(p: string): string; /** Normalize to POSIX-ish, strip leading slashes. */ export declare function normalizeRelPath(p: string): string; /** Join two path segments with normalization. */ export declare function joinPath(a: string, b: string): string; /** Return the parent directory portion of a path. */ export declare function parentOf(p: string): string; /** Return the basename (filename) portion of a path. */ export declare function basename(p: string): string; /** Detect `..` traversal in a path string (browser-friendly). */ export declare function hasParentTraversal(p?: string): boolean; /** Check if `pathToCheck` is within `rootDirectory` using normalized segments. */ export declare function isWithinRoot(pathToCheck: string, rootDirectory: string): boolean; /** Join a relative path under a workspace; throws if it escapes the workspace. */ export declare function joinUnderWorkspace(workspaceDir: string, rel: string): string;