0.8.5 • Published 8 months ago

@optimics/npm v0.8.5

Weekly downloads
-
License
MIT
Repository
github
Last release
8 months ago

@optmics/npm

Useful methods that extend npm functionality

Method collection

urlToPath(url: string): string

Translate the url using fileURLToPath when it contains url prefixed with protocol, otherwise it return the url unchanged, assuming, it is a file path.

urlToPath('file:///home/user/test.js')
// /home/user/test.js

urlToPath('/home/user/test.js')
// /home/user/test.js

urlToCwd(url: string): string

Translate url to nearest directory path.

urlToPath('file:///home/user/test.js')
// /home/user

urlToPath('/home/user/')
// /home/user

urlToPath('/home/user')
// /home/user

getRoot(cwd?: string): string

Return monorepository root. The directory, that contains your root package.json.

getRoot()
// /home/user/path/to/monorepo

filterUnique(item: T, index: number, src: T[]): boolean

Array helper method, that filters unique elements

[1,2,2,3].filter(filterUnique)
// [1,2,3]

extractProjectScope(p: PackageJson): string

Extracts the project scope from the package.json manifest.

'@myscope/mypackage' -> '@myscope'

extractPackageName(p: PackageJson | string): string

Extracts package name from the package.json manifest or package name.

'@myscope/mypackage' -> 'mypackage'

padScope(scope: string): string | null

Append at sign ('@') to the project scope, if it is missing

'myscope' -> '@myscope'

getPackages(cwd?: string, options: GetPackagesOptions = {}): PackageJson[]

Get manifests of all packages defined in the monorepository.

getPackageNames(cwd?: string, options: GetPackagesOptions = {}): string[]

Get list of all package names defined in the monorepository.

getPackageScopes(cwd?: string, options: GetPackagesOptions = {}): string[]

Get list of all package scopes defined in the monorepository.

getPackageJsonByName(cwd: string, packageName: string): PackageJson

Get package.json by package name.

readPackageJson(cwd: string): PackageJson

Read package JSON in a directory path.

0.8.5

8 months ago

0.8.2

9 months ago

0.8.0

9 months ago

0.7.0

10 months ago

0.6.0

10 months ago

0.3.0

10 months ago