| 6247 | } |
| 6248 | |
| 6249 | function normalizeFlags(config, rawFlags) { |
| 6250 | const flags = { |
| 6251 | // install |
| 6252 | har: !!rawFlags.har, |
| 6253 | ignorePlatform: !!rawFlags.ignorePlatform, |
| 6254 | ignoreEngines: !!rawFlags.ignoreEngines, |
| 6255 | ignoreScripts: !!rawFlags.ignoreScripts, |
| 6256 | ignoreOptional: !!rawFlags.ignoreOptional, |
| 6257 | force: !!rawFlags.force, |
| 6258 | flat: !!rawFlags.flat, |
| 6259 | lockfile: rawFlags.lockfile !== false, |
| 6260 | pureLockfile: !!rawFlags.pureLockfile, |
| 6261 | updateChecksums: !!rawFlags.updateChecksums, |
| 6262 | skipIntegrityCheck: !!rawFlags.skipIntegrityCheck, |
| 6263 | frozenLockfile: !!rawFlags.frozenLockfile, |
| 6264 | linkDuplicates: !!rawFlags.linkDuplicates, |
| 6265 | checkFiles: !!rawFlags.checkFiles, |
| 6266 | audit: !!rawFlags.audit, |
| 6267 | |
| 6268 | // add |
| 6269 | peer: !!rawFlags.peer, |
| 6270 | dev: !!rawFlags.dev, |
| 6271 | optional: !!rawFlags.optional, |
| 6272 | exact: !!rawFlags.exact, |
| 6273 | tilde: !!rawFlags.tilde, |
| 6274 | ignoreWorkspaceRootCheck: !!rawFlags.ignoreWorkspaceRootCheck, |
| 6275 | |
| 6276 | // outdated, update-interactive |
| 6277 | includeWorkspaceDeps: !!rawFlags.includeWorkspaceDeps, |
| 6278 | |
| 6279 | // add, remove, update |
| 6280 | workspaceRootIsCwd: rawFlags.workspaceRootIsCwd !== false |
| 6281 | }; |
| 6282 | |
| 6283 | if (config.getOption('ignore-scripts')) { |
| 6284 | flags.ignoreScripts = true; |
| 6285 | } |
| 6286 | |
| 6287 | if (config.getOption('ignore-platform')) { |
| 6288 | flags.ignorePlatform = true; |
| 6289 | } |
| 6290 | |
| 6291 | if (config.getOption('ignore-engines')) { |
| 6292 | flags.ignoreEngines = true; |
| 6293 | } |
| 6294 | |
| 6295 | if (config.getOption('ignore-optional')) { |
| 6296 | flags.ignoreOptional = true; |
| 6297 | } |
| 6298 | |
| 6299 | if (config.getOption('force')) { |
| 6300 | flags.force = true; |
| 6301 | } |
| 6302 | |
| 6303 | return flags; |
| 6304 | } |
| 6305 | |
| 6306 | class Install { |