mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-08-15 11:01:21 +08:00
20 lines
690 B
TypeScript
20 lines
690 B
TypeScript
export function sanitizeModuleName(moduleName: string, removeExtension: boolean = true): string {
|
|
moduleName = moduleName.trim();
|
|
|
|
if (moduleName.startsWith("~/")) {
|
|
moduleName = moduleName.substring(2);
|
|
} else if (moduleName.startsWith("~")) {
|
|
moduleName = moduleName.substring(1);
|
|
} else if (moduleName.startsWith("/")) {
|
|
moduleName = moduleName.substring(1);
|
|
}
|
|
|
|
if (removeExtension) {
|
|
const extToRemove = ["js", "ts", "xml", "html", "css", "scss"];
|
|
const extensionRegEx = new RegExp(`(.*)\\.(?:${extToRemove.join("|")})`, "i");
|
|
moduleName = moduleName.replace(extensionRegEx, "$1");
|
|
}
|
|
|
|
return moduleName;
|
|
}
|