syncpack
Version:
Consistent dependency versions in large JavaScript Monorepos
104 lines (103 loc) • 2.23 kB
JavaScript
/** Single source of truth, intended to aid testing or to override */
export const CWD = process.env.MOCK_CWD || process.cwd();
/** Single source of truth for icons used in output */
export const ICON = {
banned: '⦸',
cross: '✘',
debug: '?',
info: 'i',
panic: '!',
rightArrow: '→',
skip: '-',
tick: '✓',
};
export const RANGE = {
ANY: '*',
EXACT: '',
GT: '>',
GTE: '>=',
LOOSE: '.x',
LT: '<',
LTE: '<=',
MINOR: '^',
PATCH: '~',
WORKSPACE: 'workspace:',
};
export const INTERNAL_TYPES = [
'dev',
'local',
'overrides',
'peer',
'pnpmOverrides',
'prod',
'resolutions',
];
export const CUSTOM_TYPES = {
dev: {
strategy: 'versionsByName',
path: 'devDependencies',
},
local: {
strategy: 'name~version',
namePath: 'name',
path: 'version',
},
overrides: {
strategy: 'versionsByName',
path: 'overrides',
},
peer: {
strategy: 'versionsByName',
path: 'peerDependencies',
},
pnpmOverrides: {
strategy: 'versionsByName',
path: 'pnpm.overrides',
},
prod: {
strategy: 'versionsByName',
path: 'dependencies',
},
resolutions: {
strategy: 'versionsByName',
path: 'resolutions',
},
};
export const DEFAULT_CONFIG = {
customTypes: CUSTOM_TYPES,
dependencyTypes: ['**'],
filter: '.',
formatBugs: true,
formatRepository: true,
indent: ' ',
lintFormatting: true,
lintSemverRanges: true,
lintVersions: true,
semverGroups: [],
sortAz: [
'bin',
'contributors',
'dependencies',
'devDependencies',
'keywords',
'peerDependencies',
'resolutions',
'scripts',
],
sortExports: [
'types',
'node-addons',
'node',
'browser',
'import',
'require',
'development',
'production',
'default',
],
sortFirst: ['name', 'description', 'version', 'author'],
sortPackages: true,
source: ['package.json', 'packages/*/package.json'],
specifierTypes: ['**'],
versionGroups: [],
};