@intlayer/chokidar
Version:
Uses chokidar to scan and build Intlayer declaration files into dictionaries based on Intlayer configuration.
37 lines (35 loc) • 2.53 kB
JavaScript
import { formatPath } from "./utils/formatter.mjs";
import { runOnce } from "./utils/runOnce.mjs";
import { join, relative } from "node:path";
import { colorize, colorizePath, getAppLogger, x } from "@intlayer/config/logger";
import { getConfigurationAndFilePath, intlayerConfigSchema } from "@intlayer/config/node";
import * as ANSIColors from "@intlayer/config/colors";
import { getEnvFilePath } from "@intlayer/config/env";
//#region src/logConfigDetails.ts
const logConfigDetails = (options) => {
const { configuration, customConfiguration, numCustomConfiguration, configurationFilePath } = getConfigurationAndFilePath(options);
const appLogger = getAppLogger(configuration);
runOnce(join(configuration.system.baseDir, ".intlayer", "cache", "intlayer-config-locaded.lock"), () => {
if (numCustomConfiguration === 0) appLogger("Configuration file not found, using default configuration.", { isVerbose: true });
else {
const baseDir = configuration.system.baseDir;
const relativeOutputPath = relative(baseDir, configurationFilePath);
if (numCustomConfiguration === 1) {
const dotEnvFilePath = getEnvFilePath(options?.env, options?.envFile);
appLogger(`Configuration loaded ${formatPath(relativeOutputPath)}${dotEnvFilePath ? ` - Env: ${formatPath(dotEnvFilePath)}` : ""}`, { isVerbose: true });
} else appLogger(`Multiple configuration files found, using ${formatPath(relativeOutputPath)}.`, { isVerbose: true });
}
if (customConfiguration) {
const validation = intlayerConfigSchema.safeParse(customConfiguration);
if (!validation.success) appLogger(`${x} Invalid configuration:\n${validation.error.issues.map((error) => {
return `${colorizePath(` - ${error.path.join(".")}:`)} ${colorize(error.message, ANSIColors.GREY_DARK)}`;
}).join("\n")}`);
if (customConfiguration.build?.importMode) appLogger(`${colorize("build.importMode", ANSIColors.BLUE)} is deprecated, use ${colorize("dictionary.importMode", ANSIColors.BLUE)} instead`);
if (customConfiguration.compiler?.transformPattern) appLogger(`${colorize("compiler.transformPattern", ANSIColors.BLUE)} is deprecated, use ${colorize("build.traversePattern", ANSIColors.BLUE)} instead`);
if (customConfiguration.compiler?.excludePattern) appLogger(`${colorize("compiler.excludePattern", ANSIColors.BLUE)} is deprecated, use ${colorize("build.traversePattern", ANSIColors.BLUE)} instead`);
}
}, { cacheTimeoutMs: 1e3 * 60 });
};
//#endregion
export { logConfigDetails };
//# sourceMappingURL=logConfigDetails.mjs.map