diff --git a/tsconfig-upgrader.js b/tsconfig-upgrader.js index 77eea1a..8c12d0a 100644 --- a/tsconfig-upgrader.js +++ b/tsconfig-upgrader.js @@ -118,8 +118,10 @@ function addTnsCoreModulesPathMappings(existingConfig, displayableTsconfigPath, var compilerOptions = existingConfig["compilerOptions"]; compilerOptions["baseUrl"] = "."; compilerOptions["paths"] = compilerOptions["paths"] || {}; + + const appPath = getAppPath(projectDir); compilerOptions["paths"]["~/*"] = compilerOptions["paths"]["~/*"] || [ - "app/*" + `${appPath}/*` ]; compilerOptions["paths"]["*"] = compilerOptions["paths"]["*"] || [ "./node_modules/tns-core-modules/*", @@ -127,3 +129,16 @@ function addTnsCoreModulesPathMappings(existingConfig, displayableTsconfigPath, ]; } } + +function getAppPath(projectDir) { + const DEFAULT_PATH = "app"; + const nsConfigPath = path.join(projectDir, "nsconfig.json"); + + try { + const nsConfig = JSON.parse(fs.readFileSync(nsConfigPath)); + const appPath = nsConfig && nsConfig.appPath; + return appPath || DEFAULT_PATH; + } catch(_) { + return DEFAULT_PATH; + } +}