rnx-kit/packages/tools-node
renovate[bot] 57013d2191
fix(deps): update eslint (major) (#3394)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Tommy Nguyen <4123478+tido64@users.noreply.github.com>
2024-10-17 14:41:52 +00:00
..
src fix: bump minimum Node version to 16.17 (#3339) 2024-09-10 18:02:14 +00:00
test fix(tools-node): allow empty scope in package names (#3311) 2024-08-28 08:20:26 +02:00
CHANGELOG.md RELEASING: Releasing 44 package(s) (#3342) 2024-09-11 08:59:50 +02:00
README.md fix(tools-node): make package free of dependencies (#2875) 2023-12-04 15:44:32 +00:00
eslint.config.js chore: migrate to ESLint flat config (#2782) 2023-11-03 14:02:18 +01:00
module.d.ts chore: fix `lint` command to include more files (#2865) 2023-11-30 18:02:19 +01:00
module.js Tools package (#498) 2021-08-21 10:17:49 +02:00
package.d.ts chore: fix `lint` command to include more files (#2865) 2023-11-30 18:02:19 +01:00
package.js Tools package (#498) 2021-08-21 10:17:49 +02:00
package.json fix(deps): update eslint (major) (#3394) 2024-10-17 14:41:52 +00:00
path.d.ts fix(tools-node): make package free of dependencies (#2875) 2023-12-04 15:44:32 +00:00
path.js Tools package (#498) 2021-08-21 10:17:49 +02:00
tsconfig.json feat(tsconfig): base TypeScript configs for working with Node (#2886) 2023-12-18 12:05:07 +01:00

README.md

@rnx-kit/tools-node

Build npm version

@rnx-kit/tools-node is a collection of supplemental NodeJS functions and types.

You can import the entire package, or, to save space, import individual categories:

import * as tools from "@rnx-kit/tools-node";

// Alternatively...
import * as moduleTools from "@rnx-kit/tools-node/module";
import * as packageTools from "@rnx-kit/tools-node/package";
import * as pathTools from "@rnx-kit/tools-node/path";
Category Type Name Description
module FileModuleRef Module reference rooted to a file system location, either relative to a directory, or as an absolute path. For example, ./index or /repos/rnx-kit/packages/tools/src/index.
module PackageModuleRef Module reference relative to a package, such as react-native or @rnx-kit/tools/node/index.
package FindPackageDependencyOptions Options which control how package dependecies are located.
package PackageManifest Schema for the contents of a package.json manifest file.
package PackagePerson Schema for a reference to a person in package.json.
package PackageRef Components of a package reference.
Category Function Description
module getPackageModuleRefFromModulePath(modulePath) Convert a module path to a package module reference.
module isFileModuleRef(r) Is the module reference relative to a file location?
module isPackageModuleRef(r) Is the module reference a package module reference?
module parseModuleRef(r) Parse a module reference into either a package module reference or a file module reference.
package findPackage(startDir) Find the nearest package.json manifest file. Search upward through all parent directories.
package findPackageDependencyDir(ref, options) Find the package dependency's directory, starting from the given directory and moving outward, through all parent directories.
package findPackageDir(startDir) Find the parent directory of the nearest package.json manifest file. Search upward through all parent directories.
package parsePackageRef(r) Parse a package reference string. An example reference is the name property found in package.json.
package readPackage(pkgPath) Read a package.json manifest from a file.
package resolveDependencyChain(chain, startDir) Resolve the path to a dependency given a chain of dependencies leading up to it.
package writePackage(pkgPath, manifest, space) Write a package.json manifest to a file.
path findUp(names, options) Finds the specified file(s) or directory(s) by walking up parent directories.
path normalizePath(p) Normalize the separators in a path, converting each backslash ('\') to a foreward slash ('/').