(data, packageName)
| 372 | * @returns {string | undefined} normalized version |
| 373 | */ |
| 374 | const getRequiredVersionFromDescriptionFile = (data, packageName) => { |
| 375 | const dependencyTypes = [ |
| 376 | "optionalDependencies", |
| 377 | "dependencies", |
| 378 | "peerDependencies", |
| 379 | "devDependencies" |
| 380 | ]; |
| 381 | |
| 382 | for (const dependencyType of dependencyTypes) { |
| 383 | const dependency = /** @type {JsonObject} */ (data[dependencyType]); |
| 384 | if ( |
| 385 | dependency && |
| 386 | typeof dependency === "object" && |
| 387 | packageName in dependency |
| 388 | ) { |
| 389 | return normalizeVersion( |
| 390 | /** @type {Exclude<JsonPrimitive, null | boolean | number>} */ ( |
| 391 | dependency[packageName] |
| 392 | ) |
| 393 | ); |
| 394 | } |
| 395 | } |
| 396 | }; |
| 397 | |
| 398 | module.exports.getRequiredVersionFromDescriptionFile = |
| 399 | getRequiredVersionFromDescriptionFile; |
no test coverage detected