1. conventional-changelog-preset-loader
Configuration preset loader for `conventional-changelog`.
conventional-changelog-preset-loader
Package: conventional-changelog-preset-loader
Created by: conventional-changelog
Last modified: Fri, 03 May 2024 22:57:08 GMT
Version: 5.0.0
License: MIT
Downloads: 9,358,107
Repository: https://github.com/conventional-changelog/conventional-changelog

Install

npm install conventional-changelog-preset-loader
yarn add conventional-changelog-preset-loader

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

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code