Files
pnpm/exec/lifecycle/README.md
Zoltan Kochan 184ce26f3f docs: fix package names in README files (#11409)
* docs: fix package names in README files

* docs: update links to point to npmx.dev
2026-04-30 22:59:17 +02:00

51 lines
1.0 KiB
Markdown

# @pnpm/exec.lifecycle
> Package lifecycle hook runner
<!--@shields('npm')-->
[![npm version](https://img.shields.io/npm/v/@pnpm/exec.lifecycle.svg)](https://npmx.dev/package/@pnpm/exec.lifecycle)
<!--/@-->
## Installation
```sh
pnpm add @pnpm/logger @pnpm/exec.lifecycle
```
## Usage
```ts
import runLifecycleHook, {runPostinstallHooks} from '@pnpm/exec.lifecycle'
const targetPkgRoot = path.resolve('node_modules/target-pkg')
const pkg = require(path.join(targetPkgRoot, 'package.json'))
// Run a specific hook
await runLifecycleHook('preinstall', pkg, {
pkgId: 'target-pkg/1.0.0',
pkgRoot: targetPkgRoot,
rawConfig: {},
rootModulesDir: path.resolve('node_modules'),
unsafePerm: true,
})
// Run all install hooks
await runPostinstallHooks({
pkgId: 'target-pkg/1.0.0',
pkgRoot: targetPkgRoot,
rawConfig: {},
rootModulesDir: path.resolve('node_modules'),
unsafePerm: true,
})
```
## API
### `runLifecycleHook(stage, packageManifest, opts): Promise<void>`
### `runPostinstallHooks(opts): Promise<void>`
## License
MIT