mirror of
https://github.com/Nystik-gh/ignis.git
synced 2026-06-17 04:35:53 +00:00
22 lines
629 B
JavaScript
22 lines
629 B
JavaScript
export const urlShim = {
|
|
URL: globalThis.URL,
|
|
URLSearchParams: globalThis.URLSearchParams,
|
|
|
|
pathToFileURL(p) {
|
|
// Return an object with .href matching Node's url.pathToFileURL behavior
|
|
const encoded = encodeURI(p.replace(/\\/g, "/"));
|
|
const href = "file:///" + encoded.replace(/^\/+/, "");
|
|
return { href, toString: () => href };
|
|
},
|
|
|
|
fileURLToPath(url) {
|
|
let str = typeof url === "string" ? url : url.href || url.toString();
|
|
if (str.startsWith("file:///")) {
|
|
str = str.slice(8);
|
|
} else if (str.startsWith("file://")) {
|
|
str = str.slice(7);
|
|
}
|
|
return decodeURI(str);
|
|
},
|
|
};
|