UNPKG

@strapi/strapi

Version:

An open source headless CMS solution to create and manage your own API. It provides a powerful dashboard and features to make your life easier. Databases supported: MySQL, MariaDB, PostgreSQL, SQLite

33 lines (30 loc) 977 B
import os from 'os'; // Lazy: defer `typescript` (~115 ms) until a CLI command actually loads tsconfig let lazyTs; const tsLib = ()=>{ if (!lazyTs) { // eslint-disable-next-line @typescript-eslint/no-var-requires lazyTs = require('typescript'); } return lazyTs; }; /** * @description Load a tsconfig.json file and return the parsed config. * * @internal */ const loadTsConfig = ({ cwd, path, logger })=>{ const tsApi = tsLib(); const configPath = tsApi.findConfigFile(cwd, tsApi.sys.fileExists, path); if (!configPath) { return undefined; } const configFile = tsApi.readConfigFile(configPath, tsApi.sys.readFile); const parsedConfig = tsApi.parseJsonConfigFileContent(configFile.config, tsApi.sys, cwd); logger.debug(`Loaded user TS config:`, os.EOL, parsedConfig); return { config: parsedConfig, path: configPath }; }; export { loadTsConfig }; //# sourceMappingURL=tsconfig.mjs.map