UNPKG

knip

Version:

Find and fix unused files, dependencies and exports in your TypeScript and JavaScript projects

53 lines (52 loc) 2.13 kB
import { isAbsolute, toRelative } from './path.js'; export const fromBinary = (input) => input.specifier; export const toBinary = (specifier, options = {}) => ({ type: 'binary', specifier, ...options, }); export const isBinary = (input) => input.type === 'binary'; export const toEntry = (specifier) => ({ type: 'entry', specifier }); export const isEntry = (input) => input.type === 'entry' && !input.production; export const toProductionEntry = (specifier, options = {}) => ({ type: 'entry', specifier, production: true, ...options, }); export const isProductionEntry = (input) => input.type === 'entry' && input.production === true; export const toConfig = (pluginName, specifier, options = {}) => ({ type: 'config', specifier, pluginName, ...options, }); export const isConfig = (input) => input.type === 'config'; export const toDependency = (specifier, options = {}) => ({ type: 'dependency', specifier, ...options, }); export const isDependency = (input) => input.type === 'dependency'; export const toProductionDependency = (specifier) => ({ type: 'dependency', specifier, production: true, }); export const toDevDependency = (specifier) => ({ type: 'dependency', specifier }); export const toDeferResolve = (specifier) => ({ type: 'deferResolve', specifier }); export const isDeferResolve = (input) => input.type === 'deferResolve'; export const toDeferResolveProductionEntry = (specifier, options = {}) => ({ type: 'deferResolveEntry', specifier, production: true, ...options, }); export const isDeferResolveProductionEntry = (input) => input.type === 'deferResolveEntry' && input.production === true; export const toDeferResolveEntry = (specifier, options = {}) => ({ type: 'deferResolveEntry', specifier, ...options, }); export const isDeferResolveEntry = (input) => input.type === 'deferResolveEntry'; export const toDebugString = (input) => `${input.type}:${isAbsolute(input.specifier) ? toRelative(input.specifier) : input.specifier}${input.containingFilePath ? ` (${toRelative(input.containingFilePath)})` : ''}`;