Package Exports
- commitlint-config-cz
- commitlint-config-cz/lib/config
- commitlint-config-cz/lib/cz-config
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (commitlint-config-cz) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
commitlint-config-cz
commitlint sharable configuration files, which also includes modules & API for config conversion.
If .cz-config.js that is for @whizark/cz-cli or
cz-customizable exists in your package root directory, its
{types,scopes,scopeOverrides} are merged with
rules.{type-enum,scope-enum}.
Installation
Install commitlint-config-cz as a local dependency.
npm install commitlint-config-cz --save-devUsage
Extend commitlint-config-cz in commitlint.config.js.
module.exports = {
extends: [
'other-config',
'cz'
]
};Modules & API
There are some modules and API to convert cz-customizable's config into commitlint's config.
config.js
Gets the commitlint config from the .cz-config.js in the package root.
const config = require('commitlint-config-cz/lib/config')();get(pathOrCzConfig: string | Object, defaultConfig?: Object): Object
Gets the commitlint config from a cz-customizable config.
const getConfig = require('commitlint-config-cz/lib/config').get;
// From a path.
const config = getConfig('path/to/.cz-config.js');const getConfig = require('commitlint-config-cz/lib/config').get;
const czConfig = { /* `cz-customizable` config object. */ };
// From a `cz-customizable` config object.
const config = getConfig(czConfig);const getConfig = require('commitlint-config-cz/lib/config').get;
const czConfig = { /* `cz-customizable` config object. */ };
const defaultConfig = { // The default `commitlint` config.
rules: {
'scope-enum': [ // rule
2, // [1] level
'always', // [2] applicability
[], // [3] value
],
'type-enum' : [ // rule
2, // [1] level
'always', // [2] applicability
[], // [3] value
],
},
};
// Converts and merges the `cz-customizable` config with the default `commitlint` config.
const config = getConfig(czConfig, defaultConfig);- If
cz-customizableconfig hasscopes,scopeOverridesortypesfield, the value(s) [3] of the defaultcommitlintconfig is/are REPLACED by converted value(s).
Level [1] and applicability [2] remain as they are. scope-enumrule or/andtype-enumrule is/are completely REMOVED, if its value is an empty array.
cz-config.js
Gets the .cz-config.js as an object in the package root.
const czConfig = require('commitlint-config-cz/lib/cz-config')();get(path: string): Object
Gets the cz-customizable config object from a path.
const getCzConfig = require('commitlint-config-cz/lib/cz-config').get;
const czConfig = getCzConfig('path/to/.cz-config.js');scopes.js
Gets the value for scope-enum rule from the .cz-config.js in the package root.
const scopes = require('commitlint-config-cz/lib/scopes')();get(czConfig: Object): string[]
Gets the value for scope-enum rule from a cz-customizable config object.
const getScopes = require('commitlint-config-cz/lib/scopes').get;
const czConfig = { /* `cz-customizable` config object. */ };
const scopes = getScopes(czConfig);types.js
Gets the value for type-enum rule from the .cz-config.js in the package root.
const types = require('commitlint-config-cz/lib/types')();get(czConfig: Object): string[]
Gets the value for type-enum rule from a cz-customizable config object.
const getTypes = require('commitlint-config-cz/lib/types').get;
const czConfig = { /* `cz-customizable` config object. */ };
const types = getTypes(czConfig);