A commitizen adapter for Haaretz frontend with autodetection of affected monorepo packages (with Lerna) and linked ClickUp task integration.
yarn add --dev @haaretz/cz-htz
# or
npm install --save-dev @haaretz/cz-htz
The default export is the commitizen adapter. The default times can be imported
from defaultTypes.js
:
const types = require('@haaretz/cz-htz/defaultTypes');
Like commitizen, you specify the configuration of cz-htz through the package.json's config.commitizen
key.
{
// ... default values
"config": {
"commitizen": {
"path": "./node_modules/@haaretz/cz-htz",
"disableScopeLowerCase": false,
"disableSubjectLowerCase": false,
"maxHeaderWidth": 100,
"maxLineWidth": 100,
"defaultType": "",
"defaultScope": "",
"defaultSubject": "",
"defaultBody": "",
"defaultIssues": "",
"types": {
...
"feat": {
"description": "A new feature",
"title": "Features"
},
...
}
}
}
// ...
}
The following environment varibles can be used to override any default configuration or package.json based configuration.
- CZ_TYPE = defaultType
- CZ_SCOPE = defaultScope
- CZ_SUBJECT = defaultSubject
- CZ_BODY = defaultBody
- CZ_MAX_HEADER_WIDTH = maxHeaderWidth
- CZ_MAX_LINE_WIDTH = maxLineWidth
If using the commitlint js library, the "maxHeaderWidth" configuration property will default to the configuration of the "header-max-length" rule instead of the hard coded value of 100. This can be ovewritten by setting the 'maxHeaderWidth' configuration in package.json or the CZ_MAX_HEADER_WIDTH environment variable.