UNPKG

license-kit

Version:

Aggregate license notes of OSS libraries used in your Node.js project, analyze & visualize OSS licenses with AI-turbocharged tooling

48 lines (36 loc) 1.22 kB
import { type Types as SharedTypes } from '@callstack/licenses'; import type { CLIScanOptions } from './types/CLIOptions'; export const createScanOptionsFactory = (cliScanOptions: CLIScanOptions): SharedTypes.ScanPackageOptionsFactory => ({ isRoot, isWorkspacePackage }) => { let includeDevDependencies = false; switch (cliScanOptions.devDepsMode) { case 'root-only': includeDevDependencies = isRoot; break; case 'none': includeDevDependencies = false; break; } let includeTransitiveDependencies = true; switch (cliScanOptions.transitiveDepsMode) { case 'all': includeTransitiveDependencies = true; break; case 'from-external-only': includeTransitiveDependencies = !isWorkspacePackage; break; case 'from-workspace-only': includeTransitiveDependencies = isWorkspacePackage; break; case 'none': includeTransitiveDependencies = false; break; } const includeOptionalDependencies = cliScanOptions.includeOptionalDeps; return { includeDevDependencies, includeTransitiveDependencies, includeOptionalDependencies, }; };