mirror of
https://github.com/renovatebot/renovate.git
synced 2026-10-25 23:11:31 +00:00
930cf6633c
fix: Additional vi.mock path corrections and prettier formatting
30 lines
904 B
TypeScript
30 lines
904 B
TypeScript
import { parseRange } from 'semver-utils';
|
|
import { logger } from '../../../logger/index.ts';
|
|
import type { RangeStrategy } from '../../../types/index.ts';
|
|
import type { RangeConfig } from '../types.ts';
|
|
|
|
export function getRangeStrategy(config: RangeConfig): RangeStrategy {
|
|
const { depType, currentValue, rangeStrategy } = config;
|
|
// TODO #22198
|
|
const isComplexRange = parseRange(currentValue!).length > 1;
|
|
if (rangeStrategy === 'bump' && isComplexRange) {
|
|
logger.debug(
|
|
{ currentValue },
|
|
'Replacing bump strategy for complex range with widen',
|
|
);
|
|
return 'widen';
|
|
}
|
|
if (rangeStrategy && rangeStrategy !== 'auto') {
|
|
return rangeStrategy;
|
|
}
|
|
if (depType === 'peerDependencies') {
|
|
// Widen peer dependencies
|
|
logger.debug('Widening peer dependencies');
|
|
return 'widen';
|
|
}
|
|
if (isComplexRange) {
|
|
return 'widen';
|
|
}
|
|
return 'update-lockfile';
|
|
}
|