UNPKG

@lonu/stc

Version:

A tool for converting OpenApi/Swagger/Apifox into code.

36 lines (35 loc) 1.22 kB
// Copyright 2018-2025 the Deno authors. MIT license. // This module is browser compatible. import { isWindows } from "./_os.js"; import { basename as posixBasename } from "./posix/basename.js"; import { basename as windowsBasename } from "./windows/basename.js"; /** * Return the last portion of a path. * * The trailing directory separators are ignored, and optional suffix is * removed. * * @example Usage * ```ts * import { basename } from "@std/path/basename"; * import { assertEquals } from "@std/assert"; * * if (Deno.build.os === "windows") { * assertEquals(basename("C:\\user\\Documents\\image.png"), "image.png"); * assertEquals(basename(new URL("file:///C:/user/Documents/image.png")), "image.png"); * } else { * assertEquals(basename("/home/user/Documents/image.png"), "image.png"); * assertEquals(basename(new URL("file:///home/user/Documents/image.png")), "image.png"); * } * ``` * * @param path Path to extract the name from. * @param suffix Suffix to remove from extracted name. * * @returns The basename of the path. */ export function basename(path, suffix = "") { return isWindows ? windowsBasename(path, suffix) : posixBasename(path, suffix); }