@commitlint/cz-commitlint 13.2.1 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,57 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [16.0.0](https://github.com/conventional-changelog/commitlint/compare/v15.0.0...v16.0.0) (2021-12-26)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **cz-commitlint:** combine commit body with issuesBody/breakingBody when body has an empty string ([#2915](https://github.com/conventional-changelog/commitlint/issues/2915)) ([a038b41](https://github.com/conventional-changelog/commitlint/commit/a038b419f7f1d2073977ec1e6fe59ffcbba38931))
12
+
13
+
14
+ ### Features
15
+
16
+ * **cz-commitlint:** support select scope with radio list by setting disableMultipleScopes ([#2911](https://github.com/conventional-changelog/commitlint/issues/2911)) ([9d8d73f](https://github.com/conventional-changelog/commitlint/commit/9d8d73f36e0c62c8cd9e3e913b66a5ca46ebf622)), closes [#2782](https://github.com/conventional-changelog/commitlint/issues/2782)
17
+
18
+
19
+ ### BREAKING CHANGES
20
+
21
+ * **cz-commitlint:** users who is using multiple scopes need to set enableMultipleScopes to true
22
+
23
+
24
+
25
+
26
+
27
+ # [15.0.0](https://github.com/conventional-changelog/commitlint/compare/v14.2.0...v15.0.0) (2021-11-17)
28
+
29
+ **Note:** Version bump only for package @commitlint/cz-commitlint
30
+
31
+
32
+
33
+
34
+
35
+ # [14.1.0](https://github.com/conventional-changelog/commitlint/compare/v14.0.0...v14.1.0) (2021-11-01)
36
+
37
+ **Note:** Version bump only for package @commitlint/cz-commitlint
38
+
39
+
40
+
41
+
42
+
43
+ # [14.0.0](https://github.com/conventional-changelog/commitlint/compare/v13.2.1...v14.0.0) (2021-10-26)
44
+
45
+
46
+ * support multiple scopes and multiple cases & fix sentence-case is not consistent with commitlint/cli (#2806) ([2c71a7e](https://github.com/conventional-changelog/commitlint/commit/2c71a7e2965a2beff805982d37243b79a48c9360)), closes [#2806](https://github.com/conventional-changelog/commitlint/issues/2806) [#2782](https://github.com/conventional-changelog/commitlint/issues/2782)
47
+
48
+
49
+ ### BREAKING CHANGES
50
+
51
+ * add prompt.settings configuration
52
+
53
+
54
+
55
+
56
+
6
57
  ## [13.2.1](https://github.com/conventional-changelog/commitlint/compare/v13.2.0...v13.2.1) (2021-10-09)
7
58
 
8
59
  **Note:** Version bump only for package @commitlint/cz-commitlint
package/lib/Question.d.ts CHANGED
@@ -14,6 +14,8 @@ export declare type QuestionConfig = {
14
14
  name: string;
15
15
  value: string;
16
16
  }> | null;
17
+ multipleValueDelimiters?: RegExp;
18
+ multipleSelectDefaultDelimiter?: string;
17
19
  fullStopFn?: FullStopFn;
18
20
  caseFn?: CaseFn;
19
21
  };
@@ -26,7 +28,9 @@ export default class Question {
26
28
  private title;
27
29
  private caseFn;
28
30
  private fullStopFn;
29
- constructor(name: PromptName, { title, enumList, messages, defaultValue, when, skip, fullStopFn, caseFn, maxLength, minLength, }: QuestionConfig);
31
+ private multipleValueDelimiters?;
32
+ private multipleSelectDefaultDelimiter?;
33
+ constructor(name: PromptName, { title, enumList, messages, defaultValue, when, skip, fullStopFn, caseFn, maxLength, minLength, multipleValueDelimiters, multipleSelectDefaultDelimiter, }: QuestionConfig);
30
34
  getMessage(key: string): string;
31
35
  get question(): Readonly<DistinctQuestion>;
32
36
  get maxLength(): number;
@@ -35,7 +39,7 @@ export default class Question {
35
39
  set minLength(minLength: number);
36
40
  protected beforeQuestionStart(_answers: Answers): void;
37
41
  protected validate(input: string): boolean | string;
38
- protected filter(input: string): string;
42
+ protected filter(input: string | string[]): string;
39
43
  protected transformer(input: string, _answers: Answers): string;
40
44
  protected decorateMessage(_answers: Answers): string;
41
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Question.d.ts","sourceRoot":"","sources":["../src/Question.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAE7D,OAAiB,EAAC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,UAAU,CAAC;AAC/E,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAEhD,oBAAY,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,gBAAgB,CAAC;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACd,CAAC,GAAG,IAAI,CAAC;IACV,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC5B,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,IAAI,CAAU;IACtB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,UAAU,CAAa;gBAE9B,IAAI,EAAE,UAAU,EAChB,EACC,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,MAAM,EACN,SAAS,EACT,SAAS,GACT,EAAE,cAAc;IAgDlB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI/B,IAAI,QAAQ,IAAI,QAAQ,CAAC,gBAAgB,CAAC,CAEzC;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,EAE9B;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,EAE9B;IAED,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAItD,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM;IAsBnD,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIvC,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM;IAa/D,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM;CAgCpD"}
1
+ {"version":3,"file":"Question.d.ts","sourceRoot":"","sources":["../src/Question.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAE7D,OAAiB,EAAC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,UAAU,CAAC;AAC/E,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAEhD,oBAAY,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,gBAAgB,CAAC;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACd,CAAC,GAAG,IAAI,CAAC;IACV,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC5B,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,IAAI,CAAU;IACtB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,uBAAuB,CAAC,CAAS;IACzC,OAAO,CAAC,8BAA8B,CAAC,CAAS;gBAE/C,IAAI,EAAE,UAAU,EAChB,EACC,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,MAAM,EACN,SAAS,EACT,SAAS,EACT,uBAAuB,EACvB,8BAA8B,GAC9B,EAAE,cAAc;IAqDlB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI/B,IAAI,QAAQ,IAAI,QAAQ,CAAC,gBAAgB,CAAC,CAEzC;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,EAE9B;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,EAE9B;IAED,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAItD,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM;IAsBnD,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM;IAqBlD,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM;IAa/D,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM;CAgCpD"}
package/lib/Question.js CHANGED
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const chalk_1 = __importDefault(require("chalk"));
7
7
  const inquirer_1 = __importDefault(require("inquirer"));
8
8
  class Question {
9
- constructor(name, { title, enumList, messages, defaultValue, when, skip, fullStopFn, caseFn, maxLength, minLength, }) {
9
+ constructor(name, { title, enumList, messages, defaultValue, when, skip, fullStopFn, caseFn, maxLength, minLength, multipleValueDelimiters, multipleSelectDefaultDelimiter, }) {
10
10
  if (!name || typeof name !== 'string')
11
11
  throw new Error('Question: name is required');
12
12
  this._maxLength = maxLength !== null && maxLength !== void 0 ? maxLength : Infinity;
@@ -15,10 +15,13 @@ class Question {
15
15
  this.title = title !== null && title !== void 0 ? title : '';
16
16
  this.skip = skip !== null && skip !== void 0 ? skip : false;
17
17
  this.fullStopFn = fullStopFn !== null && fullStopFn !== void 0 ? fullStopFn : ((_) => _);
18
- this.caseFn = caseFn !== null && caseFn !== void 0 ? caseFn : ((_) => _);
18
+ this.caseFn =
19
+ caseFn !== null && caseFn !== void 0 ? caseFn : ((input, delimiter) => Array.isArray(input) ? input.join(delimiter) : input);
20
+ this.multipleValueDelimiters = multipleValueDelimiters;
21
+ this.multipleSelectDefaultDelimiter = multipleSelectDefaultDelimiter;
19
22
  if (enumList && Array.isArray(enumList)) {
20
23
  this._question = {
21
- type: 'list',
24
+ type: multipleSelectDefaultDelimiter ? 'checkbox' : 'list',
22
25
  choices: skip
23
26
  ? [
24
27
  ...enumList,
@@ -93,7 +96,22 @@ class Question {
93
96
  return true;
94
97
  }
95
98
  filter(input) {
96
- return this.caseFn(this.fullStopFn(input));
99
+ let toCased;
100
+ if (Array.isArray(input)) {
101
+ toCased = this.caseFn(input, this.multipleSelectDefaultDelimiter);
102
+ }
103
+ else if (this.multipleValueDelimiters) {
104
+ const segments = input.split(this.multipleValueDelimiters);
105
+ const casedString = this.caseFn(segments, ',');
106
+ const casedSegments = casedString.split(',');
107
+ toCased = input.replace(new RegExp(`[^${this.multipleValueDelimiters.source}]+`, 'g'), (segment) => {
108
+ return casedSegments[segments.indexOf(segment)];
109
+ });
110
+ }
111
+ else {
112
+ toCased = this.caseFn(input);
113
+ }
114
+ return this.fullStopFn(toCased);
97
115
  }
98
116
  transformer(input, _answers) {
99
117
  const output = this.filter(input);
@@ -103,7 +121,7 @@ class Question {
103
121
  const color = output.length <= this.maxLength && output.length >= this.minLength
104
122
  ? chalk_1.default.green
105
123
  : chalk_1.default.red;
106
- return color('(' + output.length + ') ' + input);
124
+ return color('(' + output.length + ') ' + output);
107
125
  }
108
126
  decorateMessage(_answers) {
109
127
  this.beforeQuestionStart && this.beforeQuestionStart(_answers);
@@ -1 +1 @@
1
- {"version":3,"file":"Question.js","sourceRoot":"","sources":["../src/Question.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Question.js","sourceRoot":"","sources":["../src/Question.ts"],"names":[],"mappings":"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"}
@@ -20,11 +20,10 @@ function getQuestions() {
20
20
  }
21
21
  exports.getQuestions = getQuestions;
22
22
  function combineCommitMessage(answers) {
23
- var _a, _b;
24
23
  const maxLineLength = (0, rules_2.getMaxLength)((0, rules_1.getRule)('body', 'max-line-length'));
25
24
  const leadingBlankFn = (0, leading_blank_fn_1.default)((0, rules_1.getRule)('body', 'leading-blank'));
26
25
  const { body, breakingBody, issuesBody } = answers;
27
- const commitBody = (_b = (_a = body !== null && body !== void 0 ? body : breakingBody) !== null && _a !== void 0 ? _a : issuesBody) !== null && _b !== void 0 ? _b : '-';
26
+ const commitBody = body || breakingBody || issuesBody || '-';
28
27
  if (commitBody) {
29
28
  return leadingBlankFn(maxLineLength < Infinity
30
29
  ? (0, word_wrap_1.default)(commitBody, {
@@ -1 +1 @@
1
- {"version":3,"file":"SectionBody.js","sourceRoot":"","sources":["../src/SectionBody.ts"],"names":[],"mappings":";;;;;;AACA,0DAA6B;AAC7B,0DAAkC;AAClC,6FAAqE;AACrE,yCAAsC;AACtC,gFAAyD;AACzD,yCAA2C;AAE3C,SAAgB,YAAY;IAC3B,OAAO;IACP,MAAM,cAAc,GAAG,IAAA,+BAAqB,EAAC,MAAM,CAAC,CAAC;IAErD,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,CAAC;;QAC1B,OAAO,CAAC,IAAI,kBAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAND,oCAMC;AAED,SAAgB,oBAAoB,CAAC,OAAgB;;IACpD,MAAM,aAAa,GAAG,IAAA,oBAAY,EAAC,IAAA,eAAO,EAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACvE,MAAM,cAAc,GAAG,IAAA,0BAAiB,EAAC,IAAA,eAAO,EAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;IAC3E,MAAM,EAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAC,GAAG,OAAO,CAAC;IAEjD,MAAM,UAAU,GAAG,MAAA,MAAA,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,YAAY,mCAAI,UAAU,mCAAI,GAAG,CAAC;IAE7D,IAAI,UAAU,EAAE;QACf,OAAO,cAAc,CACpB,aAAa,GAAG,QAAQ;YACvB,CAAC,CAAC,IAAA,mBAAI,EAAC,UAAU,EAAE;gBACjB,KAAK,EAAE,aAAa;gBACpB,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,EAAE;aACT,CAAC;YACJ,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CACpB,CAAC;KACF;SAAM;QACN,OAAO,EAAE,CAAC;KACV;AACF,CAAC;AApBD,oDAoBC"}
1
+ {"version":3,"file":"SectionBody.js","sourceRoot":"","sources":["../src/SectionBody.ts"],"names":[],"mappings":";;;;;;AACA,0DAA6B;AAC7B,0DAAkC;AAClC,6FAAqE;AACrE,yCAAsC;AACtC,gFAAyD;AACzD,yCAA2C;AAE3C,SAAgB,YAAY;IAC3B,OAAO;IACP,MAAM,cAAc,GAAG,IAAA,+BAAqB,EAAC,MAAM,CAAC,CAAC;IAErD,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,CAAC;;QAC1B,OAAO,CAAC,IAAI,kBAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAND,oCAMC;AAED,SAAgB,oBAAoB,CAAC,OAAgB;IACpD,MAAM,aAAa,GAAG,IAAA,oBAAY,EAAC,IAAA,eAAO,EAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACvE,MAAM,cAAc,GAAG,IAAA,0BAAiB,EAAC,IAAA,eAAO,EAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;IAC3E,MAAM,EAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAC,GAAG,OAAO,CAAC;IAEjD,MAAM,UAAU,GAAG,IAAI,IAAI,YAAY,IAAI,UAAU,IAAI,GAAG,CAAC;IAE7D,IAAI,UAAU,EAAE;QACf,OAAO,cAAc,CACpB,aAAa,GAAG,QAAQ;YACvB,CAAC,CAAC,IAAA,mBAAI,EAAC,UAAU,EAAE;gBACjB,KAAK,EAAE,aAAa;gBACpB,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,EAAE;aACT,CAAC;YACJ,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CACpB,CAAC;KACF;SAAM;QACN,OAAO,EAAE,CAAC;KACV;AACF,CAAC;AApBD,oDAoBC"}
@@ -1,6 +1,7 @@
1
- import { PromptName } from '@commitlint/types';
1
+ import { PromptName, RuleField } from '@commitlint/types';
2
2
  import { Answers, DistinctQuestion } from 'inquirer';
3
3
  import Question, { QuestionConfig } from './Question';
4
+ import getRuleQuestionConfig from './services/getRuleQuestionConfig';
4
5
  export declare class HeaderQuestion extends Question {
5
6
  headerMaxLength: number;
6
7
  headerMinLength: number;
@@ -9,4 +10,5 @@ export declare class HeaderQuestion extends Question {
9
10
  }
10
11
  export declare function combineCommitMessage(answers: Answers): string;
11
12
  export declare function getQuestions(): Array<DistinctQuestion>;
13
+ export declare function getQuestionConfig(name: RuleField): ReturnType<typeof getRuleQuestionConfig>;
12
14
  //# sourceMappingURL=SectionHeader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SectionHeader.d.ts","sourceRoot":"","sources":["../src/SectionHeader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAY,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAC,OAAO,EAAE,gBAAgB,EAAC,MAAM,UAAU,CAAC;AACnD,OAAO,QAAQ,EAAE,EAAC,cAAc,EAAC,MAAM,YAAY,CAAC;AAGpD,qBAAa,cAAe,SAAQ,QAAQ;IAC3C,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;gBAEvB,IAAI,EAAE,UAAU,EAChB,cAAc,EAAE,cAAc,EAC9B,eAAe,CAAC,EAAE,MAAM,EACxB,eAAe,CAAC,EAAE,MAAM;IAMzB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;CAM3C;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAS7D;AAED,wBAAgB,YAAY,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAwBtD"}
1
+ {"version":3,"file":"SectionHeader.d.ts","sourceRoot":"","sources":["../src/SectionHeader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,SAAS,EAAC,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAC,OAAO,EAAE,gBAAgB,EAAC,MAAM,UAAU,CAAC;AACnD,OAAO,QAAQ,EAAE,EAAC,cAAc,EAAC,MAAM,YAAY,CAAC;AACpD,OAAO,qBAAqB,MAAM,kCAAkC,CAAC;AAGrE,qBAAa,cAAe,SAAQ,QAAQ;IAC3C,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;gBAEvB,IAAI,EAAE,UAAU,EAChB,cAAc,EAAE,cAAc,EAC9B,eAAe,CAAC,EAAE,MAAM,EACxB,eAAe,CAAC,EAAE,MAAM;IAMzB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;CAM3C;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAS7D;AAED,wBAAgB,YAAY,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAwBtD;AAED,wBAAgB,iBAAiB,CAChC,IAAI,EAAE,SAAS,GACb,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAe1C"}
@@ -3,9 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getQuestions = exports.combineCommitMessage = exports.HeaderQuestion = void 0;
6
+ exports.getQuestionConfig = exports.getQuestions = exports.combineCommitMessage = exports.HeaderQuestion = void 0;
7
7
  const Question_1 = __importDefault(require("./Question"));
8
8
  const getRuleQuestionConfig_1 = __importDefault(require("./services/getRuleQuestionConfig"));
9
+ const prompts_1 = require("./store/prompts");
9
10
  class HeaderQuestion extends Question_1.default {
10
11
  constructor(name, questionConfig, headerMaxLength, headerMinLength) {
11
12
  super(name, questionConfig);
@@ -39,7 +40,7 @@ function getQuestions() {
39
40
  return [];
40
41
  }
41
42
  headerRuleFields.forEach((name) => {
42
- const questionConfig = (0, getRuleQuestionConfig_1.default)(name);
43
+ const questionConfig = getQuestionConfig(name);
43
44
  if (questionConfig) {
44
45
  const instance = new HeaderQuestion(name, questionConfig, headerRuleQuestionConfig.maxLength, headerRuleQuestionConfig.minLength);
45
46
  questions.push(instance.question);
@@ -48,4 +49,19 @@ function getQuestions() {
48
49
  return questions;
49
50
  }
50
51
  exports.getQuestions = getQuestions;
52
+ function getQuestionConfig(name) {
53
+ const questionConfig = (0, getRuleQuestionConfig_1.default)(name);
54
+ if (questionConfig) {
55
+ if (name === 'scope') {
56
+ if ((0, prompts_1.getPromptSettings)()['enableMultipleScopes']) {
57
+ questionConfig.multipleSelectDefaultDelimiter =
58
+ (0, prompts_1.getPromptSettings)()['scopeEnumSeparator'];
59
+ }
60
+ // split scope string to segments, match commitlint rules
61
+ questionConfig.multipleValueDelimiters = /\/|\\|,/g;
62
+ }
63
+ }
64
+ return questionConfig;
65
+ }
66
+ exports.getQuestionConfig = getQuestionConfig;
51
67
  //# sourceMappingURL=SectionHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SectionHeader.js","sourceRoot":"","sources":["../src/SectionHeader.ts"],"names":[],"mappings":";;;;;;AAEA,0DAAoD;AACpD,6FAAqE;AAErE,MAAa,cAAe,SAAQ,kBAAQ;IAG3C,YACC,IAAgB,EAChB,cAA8B,EAC9B,eAAwB,EACxB,eAAwB;QAExB,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,QAAQ,CAAC;QACnD,IAAI,CAAC,eAAe,GAAG,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,CAAC,CAAC;IAC7C,CAAC;IACD,mBAAmB,CAAC,OAAgB;QACnC,MAAM,kBAAkB,GACvB,IAAI,CAAC,eAAe,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;QAC7D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IACjE,CAAC;CACD;AAnBD,wCAmBC;AAED,SAAgB,oBAAoB,CAAC,OAAgB;IACpD,MAAM,EAAC,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE,EAAC,GAAG,OAAO,CAAC;IACtD,MAAM,MAAM,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAErD,IAAI,OAAO,EAAE;QACZ,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;KACxD;SAAM;QACN,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;KACrB;AACF,CAAC;AATD,oDASC;AAED,SAAgB,YAAY;IAC3B,+BAA+B;IAC/B,MAAM,SAAS,GAA4B,EAAE,CAAC;IAE9C,MAAM,gBAAgB,GAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,wBAAwB,GAAG,IAAA,+BAAqB,EAAC,QAAQ,CAAC,CAAC;IAEjE,IAAI,CAAC,wBAAwB,EAAE;QAC9B,OAAO,EAAE,CAAC;KACV;IAED,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACjC,MAAM,cAAc,GAAG,IAAA,+BAAqB,EAAC,IAAI,CAAC,CAAC;QACnD,IAAI,cAAc,EAAE;YACnB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAClC,IAAI,EACJ,cAAc,EACd,wBAAwB,CAAC,SAAS,EAClC,wBAAwB,CAAC,SAAS,CAClC,CAAC;YACF,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;SAClC;IACF,CAAC,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AAClB,CAAC;AAxBD,oCAwBC"}
1
+ {"version":3,"file":"SectionHeader.js","sourceRoot":"","sources":["../src/SectionHeader.ts"],"names":[],"mappings":";;;;;;AAEA,0DAAoD;AACpD,6FAAqE;AACrE,6CAAkD;AAElD,MAAa,cAAe,SAAQ,kBAAQ;IAG3C,YACC,IAAgB,EAChB,cAA8B,EAC9B,eAAwB,EACxB,eAAwB;QAExB,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,QAAQ,CAAC;QACnD,IAAI,CAAC,eAAe,GAAG,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,CAAC,CAAC;IAC7C,CAAC;IACD,mBAAmB,CAAC,OAAgB;QACnC,MAAM,kBAAkB,GACvB,IAAI,CAAC,eAAe,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;QAC7D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IACjE,CAAC;CACD;AAnBD,wCAmBC;AAED,SAAgB,oBAAoB,CAAC,OAAgB;IACpD,MAAM,EAAC,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE,EAAC,GAAG,OAAO,CAAC;IACtD,MAAM,MAAM,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAErD,IAAI,OAAO,EAAE;QACZ,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;KACxD;SAAM;QACN,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;KACrB;AACF,CAAC;AATD,oDASC;AAED,SAAgB,YAAY;IAC3B,+BAA+B;IAC/B,MAAM,SAAS,GAA4B,EAAE,CAAC;IAE9C,MAAM,gBAAgB,GAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,wBAAwB,GAAG,IAAA,+BAAqB,EAAC,QAAQ,CAAC,CAAC;IAEjE,IAAI,CAAC,wBAAwB,EAAE;QAC9B,OAAO,EAAE,CAAC;KACV;IAED,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACjC,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,cAAc,EAAE;YACnB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAClC,IAAI,EACJ,cAAc,EACd,wBAAwB,CAAC,SAAS,EAClC,wBAAwB,CAAC,SAAS,CAClC,CAAC;YACF,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;SAClC;IACF,CAAC,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AAClB,CAAC;AAxBD,oCAwBC;AAED,SAAgB,iBAAiB,CAChC,IAAe;IAEf,MAAM,cAAc,GAAG,IAAA,+BAAqB,EAAC,IAAI,CAAC,CAAC;IAEnD,IAAI,cAAc,EAAE;QACnB,IAAI,IAAI,KAAK,OAAO,EAAE;YACrB,IAAI,IAAA,2BAAiB,GAAE,CAAC,sBAAsB,CAAC,EAAE;gBAChD,cAAc,CAAC,8BAA8B;oBAC5C,IAAA,2BAAiB,GAAE,CAAC,oBAAoB,CAAC,CAAC;aAC3C;YACD,yDAAyD;YACzD,cAAc,CAAC,uBAAuB,GAAG,UAAU,CAAC;SACpD;KACD;IAED,OAAO,cAAc,CAAC;AACvB,CAAC;AAjBD,8CAiBC"}
@@ -1,4 +1,8 @@
1
1
  declare const _default: {
2
+ settings: {
3
+ scopeEnumSeparator: string;
4
+ enableMultipleScopes: boolean;
5
+ };
2
6
  messages: {
3
7
  skip: string;
4
8
  max: string;
@@ -1 +1 @@
1
- {"version":3,"file":"defaultPromptConfigs.d.ts","sourceRoot":"","sources":["../../src/store/defaultPromptConfigs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wBA4BE"}
1
+ {"version":3,"file":"defaultPromptConfigs.d.ts","sourceRoot":"","sources":["../../src/store/defaultPromptConfigs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wBAgCE"}
@@ -1,6 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = {
4
+ settings: {
5
+ scopeEnumSeparator: ',',
6
+ enableMultipleScopes: false,
7
+ },
4
8
  messages: {
5
9
  skip: '(press enter to skip)',
6
10
  max: '(max %d chars)',
@@ -1 +1 @@
1
- {"version":3,"file":"defaultPromptConfigs.js","sourceRoot":"","sources":["../../src/store/defaultPromptConfigs.ts"],"names":[],"mappings":";;AAAA,kBAAe;IACd,QAAQ,EAAE;QACT,IAAI,EAAE,uBAAuB;QAC7B,GAAG,EAAE,gBAAgB;QACrB,GAAG,EAAE,gBAAgB;QACrB,YAAY,EAAE,kBAAkB;QAChC,iBAAiB,EAAE,iDAAiD;QACpE,iBAAiB,EAAE,+CAA+C;KAClE;IACD,SAAS,EAAE;QACV,IAAI,EAAE;YACL,WAAW,EAAE,sDAAsD;SACnE;QACD,KAAK,EAAE;YACN,WAAW,EACV,8DAA8D;SAC/D;QACD,OAAO,EAAE;YACR,WAAW,EAAE,4DAA4D;SACzE;QACD,IAAI,EAAE;YACL,WAAW,EAAE,sDAAsD;SACnE;QACD,MAAM,EAAE;YACP,WAAW,EACV,0EAA0E;SAC3E;KACD;CACD,CAAC"}
1
+ {"version":3,"file":"defaultPromptConfigs.js","sourceRoot":"","sources":["../../src/store/defaultPromptConfigs.ts"],"names":[],"mappings":";;AAAA,kBAAe;IACd,QAAQ,EAAE;QACT,kBAAkB,EAAE,GAAG;QACvB,oBAAoB,EAAE,KAAK;KAC3B;IACD,QAAQ,EAAE;QACT,IAAI,EAAE,uBAAuB;QAC7B,GAAG,EAAE,gBAAgB;QACrB,GAAG,EAAE,gBAAgB;QACrB,YAAY,EAAE,kBAAkB;QAChC,iBAAiB,EAAE,iDAAiD;QACpE,iBAAiB,EAAE,+CAA+C;KAClE;IACD,SAAS,EAAE;QACV,IAAI,EAAE;YACL,WAAW,EAAE,sDAAsD;SACnE;QACD,KAAK,EAAE;YACN,WAAW,EACV,8DAA8D;SAC/D;QACD,OAAO,EAAE;YACR,WAAW,EAAE,4DAA4D;SACzE;QACD,IAAI,EAAE;YACL,WAAW,EAAE,sDAAsD;SACnE;QACD,MAAM,EAAE;YACP,WAAW,EACV,0EAA0E;SAC3E;KACD;CACD,CAAC"}
@@ -2,4 +2,5 @@ import { PromptConfig, UserPromptConfig } from '@commitlint/types';
2
2
  export declare function setPromptConfig(newPromptConfig: UserPromptConfig): void;
3
3
  export declare function getPromptMessages(): Readonly<PromptConfig['messages']>;
4
4
  export declare function getPromptQuestions(): Readonly<PromptConfig['questions']>;
5
+ export declare function getPromptSettings(): Readonly<PromptConfig['settings']>;
5
6
  //# sourceMappingURL=prompts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/store/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAYjE,wBAAgB,eAAe,CAAC,eAAe,EAAE,gBAAgB,GAAG,IAAI,CAevE;AAED,wBAAgB,iBAAiB,IAAI,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAEtE;AAED,wBAAgB,kBAAkB,IAAI,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAExE"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/store/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAYjE,wBAAgB,eAAe,CAAC,eAAe,EAAE,gBAAgB,GAAG,IAAI,CA+BvE;AAED,wBAAgB,iBAAiB,IAAI,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAEtE;AAED,wBAAgB,kBAAkB,IAAI,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAExE;AAED,wBAAgB,iBAAiB,IAAI,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAEtE"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getPromptQuestions = exports.getPromptMessages = exports.setPromptConfig = void 0;
6
+ exports.getPromptSettings = exports.getPromptQuestions = exports.getPromptMessages = exports.setPromptConfig = void 0;
7
7
  const isPlainObject_1 = __importDefault(require("lodash/isPlainObject"));
8
8
  const defaultPromptConfigs_1 = __importDefault(require("./defaultPromptConfigs"));
9
9
  const storeKey = Symbol('promptConfig');
@@ -11,7 +11,7 @@ const store = {
11
11
  [storeKey]: defaultPromptConfigs_1.default,
12
12
  };
13
13
  function setPromptConfig(newPromptConfig) {
14
- const { messages, questions } = newPromptConfig;
14
+ const { settings, messages, questions } = newPromptConfig;
15
15
  if (messages) {
16
16
  const requiredMessageKeys = Object.keys(defaultPromptConfigs_1.default.messages);
17
17
  requiredMessageKeys.forEach((key) => {
@@ -24,6 +24,14 @@ function setPromptConfig(newPromptConfig) {
24
24
  if (questions && (0, isPlainObject_1.default)(questions)) {
25
25
  store[storeKey]['questions'] = questions;
26
26
  }
27
+ if (settings && (0, isPlainObject_1.default)(settings)) {
28
+ if (settings['scopeEnumSeparator'] &&
29
+ !/^\/|\\|,$/.test(settings['scopeEnumSeparator'])) {
30
+ console.log(`prompt.settings.scopeEnumSeparator must be one of ',', '\\', '/'.`);
31
+ process.exit(1);
32
+ }
33
+ store[storeKey]['settings'] = Object.assign(Object.assign({}, defaultPromptConfigs_1.default.settings), settings);
34
+ }
27
35
  }
28
36
  exports.setPromptConfig = setPromptConfig;
29
37
  function getPromptMessages() {
@@ -36,4 +44,9 @@ function getPromptQuestions() {
36
44
  return (_a = (store[storeKey] && store[storeKey]['questions'])) !== null && _a !== void 0 ? _a : {};
37
45
  }
38
46
  exports.getPromptQuestions = getPromptQuestions;
47
+ function getPromptSettings() {
48
+ var _a;
49
+ return (_a = (store[storeKey] && store[storeKey]['settings'])) !== null && _a !== void 0 ? _a : {};
50
+ }
51
+ exports.getPromptSettings = getPromptSettings;
39
52
  //# sourceMappingURL=prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/store/prompts.ts"],"names":[],"mappings":";;;;;;AACA,yEAAiD;AACjD,kFAA0D;AAE1D,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAExC,MAAM,KAAK,GAEP;IACH,CAAC,QAAQ,CAAC,EAAE,8BAAoB;CAChC,CAAC;AAEF,SAAgB,eAAe,CAAC,eAAiC;IAChE,MAAM,EAAC,QAAQ,EAAE,SAAS,EAAC,GAAG,eAAe,CAAC;IAC9C,IAAI,QAAQ,EAAE;QACb,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,8BAAoB,CAAC,QAAQ,CAAC,CAAC;QACvE,mBAAmB,CAAC,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE;YAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC9B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;gBAChC,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;aAC3C;QACF,CAAC,CAAC,CAAC;KACH;IAED,IAAI,SAAS,IAAI,IAAA,uBAAa,EAAC,SAAS,CAAC,EAAE;QAC1C,KAAK,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;KACzC;AACF,CAAC;AAfD,0CAeC;AAED,SAAgB,iBAAiB;;IAChC,OAAO,MAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,mCAAI,EAAE,CAAC;AAC/D,CAAC;AAFD,8CAEC;AAED,SAAgB,kBAAkB;;IACjC,OAAO,MAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,mCAAI,EAAE,CAAC;AAChE,CAAC;AAFD,gDAEC"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/store/prompts.ts"],"names":[],"mappings":";;;;;;AACA,yEAAiD;AACjD,kFAA0D;AAE1D,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAExC,MAAM,KAAK,GAEP;IACH,CAAC,QAAQ,CAAC,EAAE,8BAAoB;CAChC,CAAC;AAEF,SAAgB,eAAe,CAAC,eAAiC;IAChE,MAAM,EAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAC,GAAG,eAAe,CAAC;IACxD,IAAI,QAAQ,EAAE;QACb,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,8BAAoB,CAAC,QAAQ,CAAC,CAAC;QACvE,mBAAmB,CAAC,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE;YAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC9B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;gBAChC,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;aAC3C;QACF,CAAC,CAAC,CAAC;KACH;IAED,IAAI,SAAS,IAAI,IAAA,uBAAa,EAAC,SAAS,CAAC,EAAE;QAC1C,KAAK,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;KACzC;IAED,IAAI,QAAQ,IAAI,IAAA,uBAAa,EAAC,QAAQ,CAAC,EAAE;QACxC,IACC,QAAQ,CAAC,oBAAoB,CAAC;YAC9B,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,EAChD;YACD,OAAO,CAAC,GAAG,CACV,mEAAmE,CACnE,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAChB;QACD,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,mCACvB,8BAAoB,CAAC,QAAQ,GAC7B,QAAQ,CACX,CAAC;KACF;AACF,CAAC;AA/BD,0CA+BC;AAED,SAAgB,iBAAiB;;IAChC,OAAO,MAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,mCAAI,EAAE,CAAC;AAC/D,CAAC;AAFD,8CAEC;AAED,SAAgB,kBAAkB;;IACjC,OAAO,MAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,mCAAI,EAAE,CAAC;AAChE,CAAC;AAFD,gDAEC;AAED,SAAgB,iBAAiB;;IAChC,OAAO,MAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,mCAAI,EAAE,CAAC;AAC/D,CAAC;AAFD,8CAEC"}
@@ -1,5 +1,5 @@
1
1
  import { Rule } from '../types';
2
- export declare type CaseFn = (input: string) => string;
2
+ export declare type CaseFn = (input: string | string[], delimiter?: string) => string;
3
3
  /**
4
4
  * Get forced case for rule
5
5
  * @param rule to parse
@@ -1 +1 @@
1
- {"version":3,"file":"case-fn.d.ts","sourceRoot":"","sources":["../../src/utils/case-fn.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAG9B,oBAAY,MAAM,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAE/C;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,CAsCrD"}
1
+ {"version":3,"file":"case-fn.d.ts","sourceRoot":"","sources":["../../src/utils/case-fn.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAE9B,oBAAY,MAAM,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;AAE9E;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,CA8BrD"}
@@ -1,52 +1,35 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const camelCase_1 = __importDefault(require("lodash/camelCase"));
7
- const kebabCase_1 = __importDefault(require("lodash/kebabCase"));
8
- const snakeCase_1 = __importDefault(require("lodash/snakeCase"));
9
- const startCase_1 = __importDefault(require("lodash/startCase"));
10
- const upperFirst_1 = __importDefault(require("lodash/upperFirst"));
11
3
  const rules_1 = require("./rules");
4
+ const ensure_1 = require("@commitlint/ensure");
12
5
  /**
13
6
  * Get forced case for rule
14
7
  * @param rule to parse
15
8
  * @return transform function applying the enforced case
16
9
  */
17
10
  function getCaseFn(rule) {
18
- const noop = (input) => input;
11
+ const noop = (input, delimiter) => Array.isArray(input) ? input.join(delimiter) : input;
19
12
  if (!rule || !(0, rules_1.ruleIsActive)(rule) || (0, rules_1.ruleIsNotApplicable)(rule)) {
20
13
  return noop;
21
14
  }
22
- const target = rule[2];
23
- if (Array.isArray(target)) {
24
- return noop;
25
- }
26
- switch (target) {
27
- case 'camel-case':
28
- return (input) => (0, camelCase_1.default)(input);
29
- case 'kebab-case':
30
- return (input) => (0, kebabCase_1.default)(input);
31
- case 'snake-case':
32
- return (input) => (0, snakeCase_1.default)(input);
33
- case 'pascal-case':
34
- return (input) => (0, upperFirst_1.default)((0, camelCase_1.default)(input));
35
- case 'start-case':
36
- return (input) => (0, startCase_1.default)(input);
37
- case 'upper-case':
38
- case 'uppercase':
39
- return (input) => input.toUpperCase();
40
- case 'sentence-case':
41
- case 'sentencecase':
42
- return (input) => `${input.charAt(0).toUpperCase()}${input.substring(1).toLowerCase()}`;
43
- case 'lower-case':
44
- case 'lowercase':
45
- case 'lowerCase': // Backwards compat config-angular v4
46
- return (input) => input.toLowerCase();
47
- default:
48
- throw new TypeError(`Unknown target case "${target}"`);
49
- }
15
+ const value = rule[2];
16
+ const caseList = Array.isArray(value) ? value : [value];
17
+ return (input, delimiter) => {
18
+ let matchedCase = caseList[0];
19
+ const segments = Array.isArray(input) ? input : [input];
20
+ for (const segment of segments) {
21
+ const check = caseList.find((a) => (0, ensure_1.case)(segment, a));
22
+ if (check) {
23
+ matchedCase = check;
24
+ break;
25
+ }
26
+ }
27
+ return segments
28
+ .map((segment) => {
29
+ return (0, ensure_1.toCase)(segment, matchedCase);
30
+ })
31
+ .join(delimiter);
32
+ };
50
33
  }
51
34
  exports.default = getCaseFn;
52
35
  //# sourceMappingURL=case-fn.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"case-fn.js","sourceRoot":"","sources":["../../src/utils/case-fn.ts"],"names":[],"mappings":";;;;;AAAA,iEAAyC;AACzC,iEAAyC;AACzC,iEAAyC;AACzC,iEAAyC;AACzC,mEAA2C;AAE3C,mCAA0D;AAI1D;;;;GAIG;AACH,SAAwB,SAAS,CAAC,IAAW;IAC5C,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC;IAEtC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,IAAI,IAAA,2BAAmB,EAAC,IAAI,CAAC,EAAE;QAC9D,OAAO,IAAI,CAAC;KACZ;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC1B,OAAO,IAAI,CAAC;KACZ;IAED,QAAQ,MAAM,EAAE;QACf,KAAK,YAAY;YAChB,OAAO,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,mBAAS,EAAC,KAAK,CAAC,CAAC;QAC5C,KAAK,YAAY;YAChB,OAAO,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,mBAAS,EAAC,KAAK,CAAC,CAAC;QAC5C,KAAK,YAAY;YAChB,OAAO,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,mBAAS,EAAC,KAAK,CAAC,CAAC;QAC5C,KAAK,aAAa;YACjB,OAAO,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,oBAAU,EAAC,IAAA,mBAAS,EAAC,KAAK,CAAC,CAAC,CAAC;QACxD,KAAK,YAAY;YAChB,OAAO,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,mBAAS,EAAC,KAAK,CAAC,CAAC;QAC5C,KAAK,YAAY,CAAC;QAClB,KAAK,WAAW;YACf,OAAO,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC/C,KAAK,eAAe,CAAC;QACrB,KAAK,cAAc;YAClB,OAAO,CAAC,KAAa,EAAE,EAAE,CACxB,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QACxE,KAAK,YAAY,CAAC;QAClB,KAAK,WAAW,CAAC;QACjB,KAAK,WAAW,EAAE,qCAAqC;YACtD,OAAO,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC/C;YACC,MAAM,IAAI,SAAS,CAAC,wBAAwB,MAAM,GAAG,CAAC,CAAC;KACxD;AACF,CAAC;AAtCD,4BAsCC"}
1
+ {"version":3,"file":"case-fn.js","sourceRoot":"","sources":["../../src/utils/case-fn.ts"],"names":[],"mappings":";;AAAA,mCAA0D;AAE1D,+CAA8D;AAK9D;;;;GAIG;AACH,SAAwB,SAAS,CAAC,IAAW;IAC5C,MAAM,IAAI,GAAG,CAAC,KAAwB,EAAE,SAAkB,EAAE,EAAE,CAC7D,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAEtD,IAAI,CAAC,IAAI,IAAI,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,IAAI,IAAA,2BAAmB,EAAC,IAAI,CAAC,EAAE;QAC9D,OAAO,IAAI,CAAC;KACZ;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAEtB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAExD,OAAO,CAAC,KAAwB,EAAE,SAAkB,EAAE,EAAE;QACvD,IAAI,WAAW,GAAmB,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAExD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC/B,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,aAAU,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3D,IAAI,KAAK,EAAE;gBACV,WAAW,GAAG,KAAK,CAAC;gBACpB,MAAM;aACN;SACD;QAED,OAAO,QAAQ;aACb,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YAChB,OAAO,IAAA,eAAM,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACrC,CAAC,CAAC;aACD,IAAI,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC,CAAC;AACH,CAAC;AA9BD,4BA8BC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@commitlint/cz-commitlint",
3
- "version": "13.2.1",
3
+ "version": "16.0.0",
4
4
  "description": "Commitizen adapter using the commitlint.config.js",
5
5
  "main": "./lib/index.js",
6
6
  "files": [
@@ -16,13 +16,14 @@
16
16
  "scripts": {
17
17
  "commit": "git-cz"
18
18
  },
19
- "homepage": "https://github.com/conventional-changelog/commitlint#readme",
19
+ "homepage": "https://commitlint.js.org/",
20
20
  "bugs": {
21
21
  "url": "https://github.com/conventional-changelog/commitlint/issues"
22
22
  },
23
23
  "repository": {
24
24
  "type": "git",
25
- "url": "https://github.com/conventional-changelog/commitlint.git"
25
+ "url": "https://github.com/conventional-changelog/commitlint.git",
26
+ "directory": "@commitlint/cz-commitlint"
26
27
  },
27
28
  "engineStrict": true,
28
29
  "engines": {
@@ -36,8 +37,9 @@
36
37
  }
37
38
  },
38
39
  "dependencies": {
39
- "@commitlint/load": "^13.2.1",
40
- "@commitlint/types": "^13.2.0",
40
+ "@commitlint/ensure": "^16.0.0",
41
+ "@commitlint/load": "^16.0.0",
42
+ "@commitlint/types": "^16.0.0",
41
43
  "chalk": "^4.1.0",
42
44
  "lodash": "^4.17.21",
43
45
  "word-wrap": "^1.2.3"
@@ -47,7 +49,7 @@
47
49
  "inquirer": "^8.0.0"
48
50
  },
49
51
  "devDependencies": {
50
- "@types/inquirer": "^8.0.0"
51
- },
52
- "gitHead": "b2a552a9693cb27dd291f61ea736e0dd5c02a20f"
52
+ "@types/inquirer": "^8.0.0",
53
+ "commitizen": "^4.2.4"
54
+ }
53
55
  }