@flex-development/pathe
Version:
Universal drop-in replacement for node:path
25 lines (24 loc) • 768 B
JavaScript
import validateString from "#internal/validate-string";
import validateURLString from "#internal/validate-url-string";
import addExt from "#lib/add-ext";
import extname from "#lib/extname";
import formatExt from "#lib/format-ext";
import removeExt from "#lib/remove-ext";
var change_ext_default = changeExt;
function changeExt(input, ext) {
validateURLString(input, "input");
if (typeof input === "string") {
if (ext !== null && ext !== void 0) {
validateString(ext, "ext");
ext = formatExt(ext);
}
const extension = extname(input);
input = removeExt(input, extension);
if (!ext) return input;
return addExt(input, ext);
}
return input.href = changeExt(input.href, ext), input;
}
export {
change_ext_default as default
};