unbag
Version:
一个专门用来开发npm工具的包
31 lines • 851 B
JavaScript
import { mergeConfig, resolveUserConfig, useDefaultConfig } from "./../utils/config.mjs";
import { AbsolutePath, usePath } from "./../utils/path.mjs";
const resolveUserConfigFromCli = async params => {
const {
overrides,
cliOptions
} = params;
const {
config,
root,
locale
} = cliOptions;
const path = usePath();
const defaultConfig = useDefaultConfig();
const absoluteRoot = new AbsolutePath({
content: path.resolve(root || defaultConfig.root)
});
const userConfig = await resolveUserConfig({
root: absoluteRoot,
filePath: config,
locale: locale || defaultConfig.locale
});
let mergedConfig = mergeConfig(userConfig, {
root: absoluteRoot.content
});
mergedConfig = mergeConfig(mergedConfig, {
...overrides
});
return mergedConfig || {};
};
export { resolveUserConfigFromCli };