Comparing version 5.25.0-slim.0 to 5.25.0
@@ -41,3 +41,3 @@ import parse, {} from '../../vendor/bash-parser/index.js'; | ||
.filter(args => args.require) | ||
.map(arg => arg.require) ?? []; | ||
.flatMap(arg => arg.require) ?? []; | ||
if (binary in KnownResolvers) { | ||
@@ -44,0 +44,0 @@ const resolver = KnownResolvers[binary]; |
@@ -26,2 +26,10 @@ import { join } from '#p/util/path.js'; | ||
} | ||
if ('browser' in opts && typeof opts.browser === 'string') { | ||
dependencies.add(toProductionEntryPattern(join(cwd, opts.browser))); | ||
} | ||
if ('ssr' in opts && opts.ssr && typeof opts.ssr === 'object') { | ||
if ('entry' in opts.ssr && typeof opts.ssr.entry === 'string') { | ||
dependencies.add(toProductionEntryPattern(join(cwd, opts.ssr.entry))); | ||
} | ||
} | ||
} | ||
@@ -28,0 +36,0 @@ } |
import { dirname, isInternal, join, toAbsolute } from '#p/util/path.js'; | ||
import { hasDependency, load } from '#p/util/plugin.js'; | ||
import { hasDependency, load, resolveEntry } from '#p/util/plugin.js'; | ||
import { toEntryPattern } from '#p/util/protocols.js'; | ||
@@ -52,4 +52,2 @@ const title = 'Jest'; | ||
const watchPlugins = config.watchPlugins?.map(watchPlugin => (typeof watchPlugin === 'string' ? watchPlugin : watchPlugin[0])) ?? []; | ||
const setupFiles = config.setupFiles ?? []; | ||
const setupFilesAfterEnv = config.setupFilesAfterEnv ?? []; | ||
const transform = config.transform | ||
@@ -64,4 +62,7 @@ ? Object.values(config.transform).map(transform => (typeof transform === 'string' ? transform : transform[0])) | ||
const testSequencer = config.testSequencer ? [config.testSequencer] : []; | ||
const globalSetup = config.globalSetup ? [config.globalSetup] : []; | ||
const globalTeardown = config.globalTeardown ? [config.globalTeardown] : []; | ||
const resolve = (specifier) => resolveEntry(options, specifier); | ||
const setupFiles = (config.setupFiles ?? []).map(resolve); | ||
const setupFilesAfterEnv = (config.setupFilesAfterEnv ?? []).map(resolve); | ||
const globalSetup = (config.globalSetup ? [config.globalSetup] : []).map(resolve); | ||
const globalTeardown = (config.globalTeardown ? [config.globalTeardown] : []).map(resolve); | ||
return [ | ||
@@ -68,0 +69,0 @@ ...presets, |
@@ -1,3 +0,3 @@ | ||
import { isAbsolute, join, relative } from '#p/util/path.js'; | ||
import { hasDependency, tryResolve } from '#p/util/plugin.js'; | ||
import { join } from '#p/util/path.js'; | ||
import { hasDependency, resolveEntry } from '#p/util/plugin.js'; | ||
import { toEntryPattern } from '#p/util/protocols.js'; | ||
@@ -10,11 +10,2 @@ import { getEnvPackageName, getExternalReporters } from './helpers.js'; | ||
const entry = ['**/*.{bench,test,test-d,spec}.?(c|m)[jt]s?(x)']; | ||
const resolveEntry = (options, rootDir, specifier) => { | ||
const { configFileDir, configFileName } = options; | ||
const resolvedPath = isAbsolute(specifier) | ||
? specifier | ||
: tryResolve(join(configFileDir, rootDir, specifier), join(configFileDir, rootDir, configFileName)); | ||
if (resolvedPath) | ||
return toEntryPattern(relative(configFileDir, resolvedPath)); | ||
return specifier; | ||
}; | ||
const isVitestCoverageCommand = /vitest(.+)--coverage(?:\.enabled(?:=true)?)?/; | ||
@@ -36,4 +27,4 @@ const hasScriptWithCoverage = (scripts) => scripts | ||
const rootDir = testConfig.root ?? '.'; | ||
const setupFiles = [testConfig.setupFiles ?? []].flat().map(v => resolveEntry(options, rootDir, v)); | ||
const globalSetup = [testConfig.globalSetup ?? []].flat().map(v => resolveEntry(options, rootDir, v)); | ||
const setupFiles = [testConfig.setupFiles ?? []].flat().map(specifier => resolveEntry(options, specifier, rootDir)); | ||
const globalSetup = [testConfig.globalSetup ?? []].flat().map(specifier => resolveEntry(options, specifier, rootDir)); | ||
return [...environments, ...reporters, ...coverage, ...setupFiles, ...globalSetup]; | ||
@@ -84,3 +75,3 @@ }; | ||
const rootDir = cfg.test?.root ?? '.'; | ||
const deps = (typeof entry === 'string' ? [entry] : Object.values(entry)).map(specifier => resolveEntry(options, rootDir, specifier)); | ||
const deps = (typeof entry === 'string' ? [entry] : Object.values(entry)).map(specifier => resolveEntry(options, specifier, rootDir)); | ||
for (const dependency of deps) | ||
@@ -87,0 +78,0 @@ dependencies.add(dependency); |
@@ -33,3 +33,3 @@ import ts from 'typescript'; | ||
} | ||
else if (ts.isObjectBindingPattern(arg.name)) { | ||
else if (arg && ts.isObjectBindingPattern(arg.name)) { | ||
return arg.name.elements.map(element => { | ||
@@ -36,0 +36,0 @@ const identifier = (element.propertyName ?? element.name).getText(); |
export { _getDependenciesFromScripts as getDependenciesFromScripts } from '../binaries/index.js'; | ||
export { _loadJSON as loadJSON } from './fs.js'; | ||
export { _load as load } from './loader.js'; | ||
export { _tryResolve as tryResolve } from './require.js'; | ||
import type { RawPluginConfiguration } from '../types/config.js'; | ||
@@ -40,1 +39,2 @@ import type { Plugin, PluginOptions } from '../types/plugins.js'; | ||
}) => string[]; | ||
export declare const resolveEntry: (options: PluginOptions, specifier: string, rootDir?: string) => string; |
export { _getDependenciesFromScripts as getDependenciesFromScripts } from '../binaries/index.js'; | ||
export { _loadJSON as loadJSON } from './fs.js'; | ||
export { _load as load } from './loader.js'; | ||
export { _tryResolve as tryResolve } from './require.js'; | ||
import { arrayify } from './array.js'; | ||
import { _load as load } from './loader.js'; | ||
import { get } from './object.js'; | ||
import { basename } from './path.js'; | ||
import { basename, isAbsolute, join, relative } from './path.js'; | ||
import { toEntryPattern, toProductionEntryPattern } from './protocols.js'; | ||
import { _tryResolve as tryResolve } from './require.js'; | ||
export const toCamelCase = (name) => name.toLowerCase().replace(/(-[a-z])/g, group => group.toUpperCase().replace('-', '')); | ||
@@ -92,1 +92,10 @@ export const hasDependency = (dependencies, values) => values.some(value => { | ||
}); | ||
export const resolveEntry = (options, specifier, rootDir = '.') => { | ||
const { configFileDir, configFileName } = options; | ||
const resolvedPath = isAbsolute(specifier) | ||
? specifier | ||
: tryResolve(join(configFileDir, rootDir, specifier), join(configFileDir, rootDir, configFileName)); | ||
if (resolvedPath) | ||
return toEntryPattern(relative(configFileDir, resolvedPath)); | ||
return specifier; | ||
}; |
@@ -1,1 +0,1 @@ | ||
export declare const version = "5.25.0-slim.0"; | ||
export declare const version = "5.25.0"; |
@@ -1,1 +0,1 @@ | ||
export const version = '5.25.0-slim.0'; | ||
export const version = '5.25.0'; |
{ | ||
"name": "knip", | ||
"version": "5.25.0-slim.0", | ||
"version": "5.25.0", | ||
"description": "Find unused files, dependencies and exports in your TypeScript and JavaScript projects", | ||
@@ -5,0 +5,0 @@ "homepage": "https://knip.dev", |
@@ -118,2 +118,5 @@ { | ||
"properties": { | ||
"binaries": { | ||
"$ref": "#/definitions/ruleValue" | ||
}, | ||
"classMembers": { | ||
@@ -125,2 +128,8 @@ "$ref": "#/definitions/ruleValue" | ||
}, | ||
"devDependencies": { | ||
"$ref": "#/definitions/ruleValue" | ||
}, | ||
"optionalPeerDependencies": { | ||
"$ref": "#/definitions/ruleValue" | ||
}, | ||
"duplicates": { | ||
@@ -127,0 +136,0 @@ "$ref": "#/definitions/ruleValue" |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
790583
17835
0