Files
pnpm/config/reader/src/inheritPickedConfig.ts
Zoltan Kochan b5d93c6ba9 refactor(config): remove rawLocalConfig and force* hoist flags (#11199)
rawLocalConfig detected whether hoist settings were explicitly
set. In v11, config values are always authoritative.

- Remove rawLocalConfig from ConfigContext, config reader,
  inheritPickedConfig, UniversalOptions
- Remove forceHoistPattern, forcePublicHoistPattern,
  forceShamefullyHoist — validateModules always checks now
- Simplify save-workspace-protocol check
- Remove dead rawLocalConfig overrides in deploy/patchCommit
2026-04-05 11:36:36 +02:00

18 lines
600 B
TypeScript

import type { Config } from './Config.js'
export interface InheritableConfigPair {
config: Partial<Config> & Pick<Config, 'authConfig'>
}
export type PickConfig = (cfg: Partial<Config>) => Partial<Config>
export type PickRawConfig = (cfg: Record<string, unknown>) => Record<string, unknown>
export function inheritPickedConfig (
target: InheritableConfigPair,
src: InheritableConfigPair,
pickConfig: PickConfig,
pickRawConfig: PickRawConfig
): void {
Object.assign(target.config, pickConfig(src.config))
Object.assign(target.config.authConfig, pickRawConfig(src.config.authConfig))
}