Whether any devDependency matching `releaseTriggeringDevDeps` was added/removed/changed.
(
before: Record<string, string> = {},
after: Record<string, string> = {},
releaseTriggeringDevDeps?: string[],
)
| 376 | |
| 377 | /** Whether any devDependency matching `releaseTriggeringDevDeps` was added/removed/changed. */ |
| 378 | function releaseTriggeringDevDepsChanged( |
| 379 | before: Record<string, string> = {}, |
| 380 | after: Record<string, string> = {}, |
| 381 | releaseTriggeringDevDeps?: string[], |
| 382 | ): boolean { |
| 383 | if (!releaseTriggeringDevDeps?.length) return false; |
| 384 | const names = new Set([...Object.keys(before ?? {}), ...Object.keys(after ?? {})]); |
| 385 | for (const name of names) { |
| 386 | if (before?.[name] === after?.[name]) continue; |
| 387 | if (releaseTriggeringDevDeps.some((pattern) => matchGlob(name, pattern))) return true; |
| 388 | } |
| 389 | return false; |
| 390 | } |
| 391 | |
| 392 | /** Structural equality for parsed JSON values (objects compared key-insensitive to order). */ |
| 393 | function deepEqual(a: unknown, b: unknown): boolean { |
no test coverage detected
searching dependent graphs…