mirror of
https://github.com/soybeanjs/soybean-admin.git
synced 2025-09-19 18:16:38 +08:00
40 lines
1.0 KiB
TypeScript
40 lines
1.0 KiB
TypeScript
import process from 'node:process';
|
|
import { loadConfig } from 'c12';
|
|
import type { CliOption } from '../types';
|
|
|
|
const defaultOptions: CliOption = {
|
|
cwd: process.cwd(),
|
|
cleanupDirs: [
|
|
'**/dist',
|
|
'**/package-lock.json',
|
|
'**/yarn.lock',
|
|
'**/pnpm-lock.yaml',
|
|
'**/node_modules',
|
|
'!node_modules/**'
|
|
],
|
|
ncuCommandArgs: ['--deep', '-u'],
|
|
changelogOptions: {},
|
|
gitCommitVerifyIgnores: [
|
|
/^((Merge pull request)|(Merge (.*?) into (.*?)|(Merge branch (.*?)))(?:\r?\n)*$)/m,
|
|
/^(Merge tag (.*?))(?:\r?\n)*$/m,
|
|
/^(R|r)evert (.*)/,
|
|
/^(amend|fixup|squash)!/,
|
|
/^(Merged (.*?)(in|into) (.*)|Merged PR (.*): (.*))/,
|
|
/^Merge remote-tracking branch(\s*)(.*)/,
|
|
/^Automatic merge(.*)/,
|
|
/^Auto-merged (.*?) into (.*)/
|
|
]
|
|
};
|
|
|
|
export async function loadCliOptions(overrides?: Partial<CliOption>, cwd = process.cwd()) {
|
|
const { config } = await loadConfig<Partial<CliOption>>({
|
|
name: 'soybean',
|
|
defaults: defaultOptions,
|
|
overrides,
|
|
cwd,
|
|
packageJson: true
|
|
});
|
|
|
|
return config as CliOption;
|
|
}
|