conventional-changelog-preset-loader
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/conventional-changelog-preset-loader package

5.0.0 • Public • Published

conventional-changelog-preset-loader

ESM-only package NPM version Node version Dependencies status Install size Build status Coverage status

Configuration preset loader for conventional-changelog.


Install   •   Usage   •   Preset package resolution   •   Preset exports   •   Preset options

Install

# pnpm
pnpm add conventional-changelog-preset-loader
# yarn
yarn add conventional-changelog-preset-loader
# npm
npm i conventional-changelog-preset-loader

Usage

Import loadPreset function from the package and use it to load the preset:

import { loadPreset } from 'conventional-changelog-preset-loader'

loadPreset('angular').then((config) => {
  // do something with config object
})

By default it uses import to load preset. If you want to use require instead, you can create own loader with createPresetLoader function:

import { createRequire } from 'node:module'
import { createPresetLoader } from 'conventional-changelog-preset-loader'

const require = createRequire(import.meta.url)
const loadPreset = createPresetLoader(require)

Preset package resolution

Firstly, loader will try prepend conventional-changelog to the preset name and load it.

For example:

  • angular => conventional-changelog-angular
  • angular/preset/path => conventional-changelog-angular/preset/path
  • @scope/angular => @scope/conventional-changelog-angular
  • @scope/angular/preset/path => @scope/conventional-changelog-angular/preset/path

If it fails, it will try to load preset using name as is.

Preset exports

Preset package should have default export which is a async (returns Promise) or sync function that accepts optional options object and returns the config object:

export default function createPreset(options) {
  return {
    // config
  }
}

Preset options

To pass options to the preset, loadPreset function accepts object with name property as first argument:

import { loadPreset } from 'conventional-changelog-preset-loader'

loadPreset({
  name: 'angular',
  ...presetOptions
}).then((config) => {
  // do something with config object
})

License

MIT © Steve Mao

Package Sidebar

Install

npm i conventional-changelog-preset-loader

Weekly Downloads

2,129,246

Version

5.0.0

License

MIT

Unpacked Size

16.6 kB

Total Files

12

Last publish

Collaborators

  • bcoe
  • oss-bot