in eslint-rules/enforce-extensions.js [52:76]
function resolveImportPath(importPath, currentFilePath) {
// Handle relative paths
if (importPath.startsWith("./") || importPath.startsWith("../")) {
return path.resolve(path.dirname(currentFilePath), importPath);
}
// Handle aliased paths
for (const [alias, aliasPath] of Object.entries(aliases)) {
// Check if the import starts with this alias
if (importPath === alias || importPath.startsWith(`${alias}/`)) {
// Replace the alias with the actual path
const relativePath = importPath === alias ? "" : importPath.slice(alias.length + 1); // +1 for the slash
// Convert the aliasPath to an absolute path
let absoluteAliasPath = aliasPath;
if (!path.isAbsolute(absoluteAliasPath)) {
absoluteAliasPath = path.resolve(projectRoot, aliasPath);
}
return path.join(absoluteAliasPath, relativePath);
}
}
return null;
}