@commitlint/cz-commitlint 13.2.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 +43 -0
- package/README.md +61 -0
- package/lib/Process.d.ts +4 -0
- package/lib/Process.d.ts.map +1 -0
- package/lib/Process.js +23 -0
- package/lib/Process.js.map +1 -0
- package/lib/Question.d.ts +42 -0
- package/lib/Question.d.ts.map +1 -0
- package/lib/Question.js +134 -0
- package/lib/Question.js.map +1 -0
- package/lib/SectionBody.d.ts +4 -0
- package/lib/SectionBody.d.ts.map +1 -0
- package/lib/SectionBody.js +42 -0
- package/lib/SectionBody.js.map +1 -0
- package/lib/SectionFooter.d.ts +12 -0
- package/lib/SectionFooter.d.ts.map +1 -0
- package/lib/SectionFooter.js +138 -0
- package/lib/SectionFooter.js.map +1 -0
- package/lib/SectionHeader.d.ts +12 -0
- package/lib/SectionHeader.d.ts.map +1 -0
- package/lib/SectionHeader.js +51 -0
- package/lib/SectionHeader.js.map +1 -0
- package/lib/index.d.ts +11 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +21 -0
- package/lib/index.js.map +1 -0
- package/lib/services/getRuleQuestionConfig.d.ts +4 -0
- package/lib/services/getRuleQuestionConfig.d.ts.map +1 -0
- package/lib/services/getRuleQuestionConfig.js +63 -0
- package/lib/services/getRuleQuestionConfig.js.map +1 -0
- package/lib/store/defaultPromptConfigs.d.ts +29 -0
- package/lib/store/defaultPromptConfigs.d.ts.map +1 -0
- package/lib/store/defaultPromptConfigs.js +30 -0
- package/lib/store/defaultPromptConfigs.js.map +1 -0
- package/lib/store/prompts.d.ts +5 -0
- package/lib/store/prompts.d.ts.map +1 -0
- package/lib/store/prompts.js +39 -0
- package/lib/store/prompts.js.map +1 -0
- package/lib/store/rules.d.ts +7 -0
- package/lib/store/rules.d.ts.map +1 -0
- package/lib/store/rules.js +19 -0
- package/lib/store/rules.js.map +1 -0
- package/lib/types.d.ts +3 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +3 -0
- package/lib/types.js.map +1 -0
- package/lib/utils/case-fn.d.ts +9 -0
- package/lib/utils/case-fn.d.ts.map +1 -0
- package/lib/utils/case-fn.js +52 -0
- package/lib/utils/case-fn.js.map +1 -0
- package/lib/utils/full-stop-fn-test.d.ts +2 -0
- package/lib/utils/full-stop-fn-test.d.ts.map +1 -0
- package/lib/utils/full-stop-fn-test.js +63 -0
- package/lib/utils/full-stop-fn-test.js.map +1 -0
- package/lib/utils/full-stop-fn.d.ts +9 -0
- package/lib/utils/full-stop-fn.d.ts.map +1 -0
- package/lib/utils/full-stop-fn.js +32 -0
- package/lib/utils/full-stop-fn.js.map +1 -0
- package/lib/utils/leading-blank-fn-test.d.ts +2 -0
- package/lib/utils/leading-blank-fn-test.d.ts.map +1 -0
- package/lib/utils/leading-blank-fn-test.js +39 -0
- package/lib/utils/leading-blank-fn-test.js.map +1 -0
- package/lib/utils/leading-blank-fn.d.ts +8 -0
- package/lib/utils/leading-blank-fn.d.ts.map +1 -0
- package/lib/utils/leading-blank-fn.js +27 -0
- package/lib/utils/leading-blank-fn.js.map +1 -0
- package/lib/utils/rules.d.ts +30 -0
- package/lib/utils/rules.d.ts.map +1 -0
- package/lib/utils/rules.js +79 -0
- package/lib/utils/rules.js.map +1 -0
- package/license.md +19 -0
- package/package.json +53 -0
package/lib/index.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.prompter = void 0;
|
|
7
|
+
const load_1 = __importDefault(require("@commitlint/load"));
|
|
8
|
+
const Process_1 = __importDefault(require("./Process"));
|
|
9
|
+
/**
|
|
10
|
+
* Entry point for commitizen
|
|
11
|
+
* @param inquirer instance passed by commitizen, unused
|
|
12
|
+
* @param commit callback to execute with complete commit message
|
|
13
|
+
* @return {void}
|
|
14
|
+
*/
|
|
15
|
+
function prompter(inquirer, commit) {
|
|
16
|
+
(0, load_1.default)().then(({ rules, prompt = {} }) => {
|
|
17
|
+
(0, Process_1.default)(rules, prompt, inquirer).then(commit);
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
exports.prompter = prompter;
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,4DAAoC;AAEpC,wDAAgC;AAGhC;;;;;GAKG;AACH,SAAgB,QAAQ,CAAC,QAAkB,EAAE,MAAc;IAC1D,IAAA,cAAI,GAAE,CAAC,IAAI,CAAC,CAAC,EAAC,KAAK,EAAE,MAAM,GAAG,EAAE,EAAC,EAAE,EAAE;QACpC,IAAA,iBAAO,EAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACJ,CAAC;AAJD,4BAIC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getRuleQuestionConfig.d.ts","sourceRoot":"","sources":["../../src/services/getRuleQuestionConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC;AAe3C,MAAM,CAAC,OAAO,WAAW,UAAU,EAAE,SAAS,GAAG,cAAc,GAAG,IAAI,CAyDrE"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const prompts_1 = require("../store/prompts");
|
|
7
|
+
const rules_1 = require("../store/rules");
|
|
8
|
+
const case_fn_1 = __importDefault(require("../utils/case-fn"));
|
|
9
|
+
const full_stop_fn_1 = __importDefault(require("../utils/full-stop-fn"));
|
|
10
|
+
const rules_2 = require("../utils/rules");
|
|
11
|
+
function default_1(rulePrefix) {
|
|
12
|
+
var _a;
|
|
13
|
+
const questions = (0, prompts_1.getPromptQuestions)();
|
|
14
|
+
const questionSettings = questions[rulePrefix];
|
|
15
|
+
const emptyRule = (0, rules_1.getRule)(rulePrefix, 'empty');
|
|
16
|
+
const mustBeEmpty = emptyRule && (0, rules_2.ruleIsActive)(emptyRule) && (0, rules_2.ruleIsApplicable)(emptyRule);
|
|
17
|
+
if (mustBeEmpty) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
const canBeSkip = !emptyRule || (0, rules_2.ruleIsDisabled)(emptyRule);
|
|
21
|
+
const enumRule = (0, rules_1.getRule)(rulePrefix, 'enum');
|
|
22
|
+
const enumRuleList = enumRule && (0, rules_2.enumRuleIsActive)(enumRule) ? (0, rules_2.getEnumList)(enumRule) : null;
|
|
23
|
+
let enumList;
|
|
24
|
+
if (enumRuleList) {
|
|
25
|
+
const enumDescriptions = questionSettings === null || questionSettings === void 0 ? void 0 : questionSettings['enum'];
|
|
26
|
+
if (enumDescriptions) {
|
|
27
|
+
const enumNames = Object.keys(enumDescriptions);
|
|
28
|
+
const longest = Math.max(...enumRuleList.map((enumName) => enumName.length));
|
|
29
|
+
// TODO emoji + title
|
|
30
|
+
enumList = enumRuleList
|
|
31
|
+
.sort((a, b) => enumNames.indexOf(a) - enumNames.indexOf(b))
|
|
32
|
+
.map((enumName) => {
|
|
33
|
+
var _a;
|
|
34
|
+
const enumDescription = (_a = enumDescriptions[enumName]) === null || _a === void 0 ? void 0 : _a.description;
|
|
35
|
+
if (enumDescription) {
|
|
36
|
+
return {
|
|
37
|
+
name: `${enumName}:`.padEnd(longest + 4) + enumDescription,
|
|
38
|
+
value: enumName,
|
|
39
|
+
short: enumName,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
return enumName;
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
enumList = [...enumRuleList];
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return {
|
|
52
|
+
skip: canBeSkip,
|
|
53
|
+
enumList,
|
|
54
|
+
title: (_a = questionSettings === null || questionSettings === void 0 ? void 0 : questionSettings['description']) !== null && _a !== void 0 ? _a : `${rulePrefix}:`,
|
|
55
|
+
caseFn: (0, case_fn_1.default)((0, rules_1.getRule)(rulePrefix, 'case')),
|
|
56
|
+
fullStopFn: (0, full_stop_fn_1.default)((0, rules_1.getRule)(rulePrefix, 'full-stop')),
|
|
57
|
+
minLength: (0, rules_2.getMinLength)((0, rules_1.getRule)(rulePrefix, 'min-length')),
|
|
58
|
+
maxLength: (0, rules_2.getMaxLength)((0, rules_1.getRule)(rulePrefix, 'max-length')),
|
|
59
|
+
messages: (0, prompts_1.getPromptMessages)(),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
exports.default = default_1;
|
|
63
|
+
//# sourceMappingURL=getRuleQuestionConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getRuleQuestionConfig.js","sourceRoot":"","sources":["../../src/services/getRuleQuestionConfig.ts"],"names":[],"mappings":";;;;;AAEA,8CAAuE;AACvE,0CAAuC;AACvC,+DAAyC;AACzC,yEAAkD;AAClD,0CAQwB;AAExB,mBAAyB,UAAqB;;IAC7C,MAAM,SAAS,GAAG,IAAA,4BAAkB,GAAE,CAAC;IACvC,MAAM,gBAAgB,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAA,eAAO,EAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAE/C,MAAM,WAAW,GAChB,SAAS,IAAI,IAAA,oBAAY,EAAC,SAAS,CAAC,IAAI,IAAA,wBAAgB,EAAC,SAAS,CAAC,CAAC;IAErE,IAAI,WAAW,EAAE;QAChB,OAAO,IAAI,CAAC;KACZ;IAED,MAAM,SAAS,GAAG,CAAC,SAAS,IAAI,IAAA,sBAAc,EAAC,SAAS,CAAC,CAAC;IAE1D,MAAM,QAAQ,GAAG,IAAA,eAAO,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7C,MAAM,YAAY,GACjB,QAAQ,IAAI,IAAA,wBAAgB,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAW,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvE,IAAI,QAAQ,CAAC;IAEb,IAAI,YAAY,EAAE;QACjB,MAAM,gBAAgB,GAAG,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAG,MAAM,CAAC,CAAC;QAEpD,IAAI,gBAAgB,EAAE;YACrB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAChD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CACvB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAClD,CAAC;YACF,qBAAqB;YACrB,QAAQ,GAAG,YAAY;iBACrB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;iBAC3D,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;;gBACjB,MAAM,eAAe,GAAG,MAAA,gBAAgB,CAAC,QAAQ,CAAC,0CAAE,WAAW,CAAC;gBAChE,IAAI,eAAe,EAAE;oBACpB,OAAO;wBACN,IAAI,EAAE,GAAG,QAAQ,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,eAAe;wBAC1D,KAAK,EAAE,QAAQ;wBACf,KAAK,EAAE,QAAQ;qBACf,CAAC;iBACF;qBAAM;oBACN,OAAO,QAAQ,CAAC;iBAChB;YACF,CAAC,CAAC,CAAC;SACJ;aAAM;YACN,QAAQ,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;SAC7B;KACD;IAED,OAAO;QACN,IAAI,EAAE,SAAS;QACf,QAAQ;QACR,KAAK,EAAE,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAG,aAAa,CAAC,mCAAI,GAAG,UAAU,GAAG;QAC5D,MAAM,EAAE,IAAA,iBAAS,EAAC,IAAA,eAAO,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC9C,UAAU,EAAE,IAAA,sBAAa,EAAC,IAAA,eAAO,EAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAC3D,SAAS,EAAE,IAAA,oBAAY,EAAC,IAAA,eAAO,EAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC1D,SAAS,EAAE,IAAA,oBAAY,EAAC,IAAA,eAAO,EAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC1D,QAAQ,EAAE,IAAA,2BAAiB,GAAE;KAC7B,CAAC;AACH,CAAC;AAzDD,4BAyDC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
messages: {
|
|
3
|
+
skip: string;
|
|
4
|
+
max: string;
|
|
5
|
+
min: string;
|
|
6
|
+
emptyWarning: string;
|
|
7
|
+
upperLimitWarning: string;
|
|
8
|
+
lowerLimitWarning: string;
|
|
9
|
+
};
|
|
10
|
+
questions: {
|
|
11
|
+
type: {
|
|
12
|
+
description: string;
|
|
13
|
+
};
|
|
14
|
+
scope: {
|
|
15
|
+
description: string;
|
|
16
|
+
};
|
|
17
|
+
subject: {
|
|
18
|
+
description: string;
|
|
19
|
+
};
|
|
20
|
+
body: {
|
|
21
|
+
description: string;
|
|
22
|
+
};
|
|
23
|
+
footer: {
|
|
24
|
+
description: string;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
export default _default;
|
|
29
|
+
//# sourceMappingURL=defaultPromptConfigs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaultPromptConfigs.d.ts","sourceRoot":"","sources":["../../src/store/defaultPromptConfigs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wBA4BE"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = {
|
|
4
|
+
messages: {
|
|
5
|
+
skip: '(press enter to skip)',
|
|
6
|
+
max: '(max %d chars)',
|
|
7
|
+
min: '(min %d chars)',
|
|
8
|
+
emptyWarning: '(%s is required)',
|
|
9
|
+
upperLimitWarning: '%s is %d characters longer than the upper limit',
|
|
10
|
+
lowerLimitWarning: '%s is %d characters less than the lower limit',
|
|
11
|
+
},
|
|
12
|
+
questions: {
|
|
13
|
+
type: {
|
|
14
|
+
description: '<type> holds information about the goal of a change.',
|
|
15
|
+
},
|
|
16
|
+
scope: {
|
|
17
|
+
description: '<scope> marks which sub-component of the project is affected',
|
|
18
|
+
},
|
|
19
|
+
subject: {
|
|
20
|
+
description: '<subject> is a short, high-level description of the change',
|
|
21
|
+
},
|
|
22
|
+
body: {
|
|
23
|
+
description: '<body> holds additional information about the change',
|
|
24
|
+
},
|
|
25
|
+
footer: {
|
|
26
|
+
description: '<footer> holds further meta data, such as breaking changes and issue ids',
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=defaultPromptConfigs.js.map
|
|
@@ -0,0 +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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { PromptConfig, UserPromptConfig } from '@commitlint/types';
|
|
2
|
+
export declare function setPromptConfig(newPromptConfig: UserPromptConfig): void;
|
|
3
|
+
export declare function getPromptMessages(): Readonly<PromptConfig['messages']>;
|
|
4
|
+
export declare function getPromptQuestions(): Readonly<PromptConfig['questions']>;
|
|
5
|
+
//# sourceMappingURL=prompts.d.ts.map
|
|
@@ -0,0 +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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getPromptQuestions = exports.getPromptMessages = exports.setPromptConfig = void 0;
|
|
7
|
+
const isPlainObject_1 = __importDefault(require("lodash/isPlainObject"));
|
|
8
|
+
const defaultPromptConfigs_1 = __importDefault(require("./defaultPromptConfigs"));
|
|
9
|
+
const storeKey = Symbol('promptConfig');
|
|
10
|
+
const store = {
|
|
11
|
+
[storeKey]: defaultPromptConfigs_1.default,
|
|
12
|
+
};
|
|
13
|
+
function setPromptConfig(newPromptConfig) {
|
|
14
|
+
const { messages, questions } = newPromptConfig;
|
|
15
|
+
if (messages) {
|
|
16
|
+
const requiredMessageKeys = Object.keys(defaultPromptConfigs_1.default.messages);
|
|
17
|
+
requiredMessageKeys.forEach((key) => {
|
|
18
|
+
const message = messages[key];
|
|
19
|
+
if (typeof message === 'string') {
|
|
20
|
+
store[storeKey]['messages'][key] = message;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
if (questions && (0, isPlainObject_1.default)(questions)) {
|
|
25
|
+
store[storeKey]['questions'] = questions;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.setPromptConfig = setPromptConfig;
|
|
29
|
+
function getPromptMessages() {
|
|
30
|
+
var _a;
|
|
31
|
+
return (_a = (store[storeKey] && store[storeKey]['messages'])) !== null && _a !== void 0 ? _a : {};
|
|
32
|
+
}
|
|
33
|
+
exports.getPromptMessages = getPromptMessages;
|
|
34
|
+
function getPromptQuestions() {
|
|
35
|
+
var _a;
|
|
36
|
+
return (_a = (store[storeKey] && store[storeKey]['questions'])) !== null && _a !== void 0 ? _a : {};
|
|
37
|
+
}
|
|
38
|
+
exports.getPromptQuestions = getPromptQuestions;
|
|
39
|
+
//# sourceMappingURL=prompts.js.map
|
|
@@ -0,0 +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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { QualifiedRules } from '@commitlint/types';
|
|
2
|
+
import { Rule } from '../types';
|
|
3
|
+
export declare function getRule(key: string, property: string): Rule | undefined;
|
|
4
|
+
export declare function setRules(newRules: QualifiedRules): void;
|
|
5
|
+
export declare type GetRuleMethod = typeof getRule;
|
|
6
|
+
export declare type SetRulesMethod = typeof setRules;
|
|
7
|
+
//# sourceMappingURL=rules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/store/rules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAU9B,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAKvE;AAED,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAEvD;AAED,oBAAY,aAAa,GAAG,OAAO,OAAO,CAAC;AAC3C,oBAAY,cAAc,GAAG,OAAO,QAAQ,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setRules = exports.getRule = void 0;
|
|
4
|
+
const storeKey = Symbol('rules');
|
|
5
|
+
const store = {
|
|
6
|
+
[storeKey]: {},
|
|
7
|
+
};
|
|
8
|
+
function getRule(key, property) {
|
|
9
|
+
if (key.split('-').length > 1) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
return store[storeKey][`${key}-${property}`];
|
|
13
|
+
}
|
|
14
|
+
exports.getRule = getRule;
|
|
15
|
+
function setRules(newRules) {
|
|
16
|
+
store[storeKey] = newRules;
|
|
17
|
+
}
|
|
18
|
+
exports.setRules = setRules;
|
|
19
|
+
//# sourceMappingURL=rules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/store/rules.ts"],"names":[],"mappings":";;;AAGA,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;AAEjC,MAAM,KAAK,GAEP;IACH,CAAC,QAAQ,CAAC,EAAE,EAAE;CACd,CAAC;AAEF,SAAgB,OAAO,CAAC,GAAW,EAAE,QAAgB;IACpD,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9B,OAAO;KACP;IACD,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC,CAAC;AAC9C,CAAC;AALD,0BAKC;AAED,SAAgB,QAAQ,CAAC,QAAwB;IAChD,KAAK,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;AAC5B,CAAC;AAFD,4BAEC"}
|
package/lib/types.d.ts
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { RuleConfigCondition, RuleConfigSeverity } from '@commitlint/types';
|
|
2
|
+
export declare type Rule = Readonly<[RuleConfigSeverity.Disabled]> | Readonly<[RuleConfigSeverity, RuleConfigCondition]> | Readonly<[RuleConfigSeverity, RuleConfigCondition, unknown]>;
|
|
3
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAE,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;AAE1E,oBAAY,IAAI,GACb,QAAQ,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,GACvC,QAAQ,CAAC,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC,GACnD,QAAQ,CAAC,CAAC,kBAAkB,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC,CAAC"}
|
package/lib/types.js
ADDED
package/lib/types.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Rule } from '../types';
|
|
2
|
+
export declare type CaseFn = (input: string) => string;
|
|
3
|
+
/**
|
|
4
|
+
* Get forced case for rule
|
|
5
|
+
* @param rule to parse
|
|
6
|
+
* @return transform function applying the enforced case
|
|
7
|
+
*/
|
|
8
|
+
export default function getCaseFn(rule?: Rule): CaseFn;
|
|
9
|
+
//# sourceMappingURL=case-fn.d.ts.map
|
|
@@ -0,0 +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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
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
|
+
const rules_1 = require("./rules");
|
|
12
|
+
/**
|
|
13
|
+
* Get forced case for rule
|
|
14
|
+
* @param rule to parse
|
|
15
|
+
* @return transform function applying the enforced case
|
|
16
|
+
*/
|
|
17
|
+
function getCaseFn(rule) {
|
|
18
|
+
const noop = (input) => input;
|
|
19
|
+
if (!rule || !(0, rules_1.ruleIsActive)(rule) || (0, rules_1.ruleIsNotApplicable)(rule)) {
|
|
20
|
+
return noop;
|
|
21
|
+
}
|
|
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
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.default = getCaseFn;
|
|
52
|
+
//# sourceMappingURL=case-fn.js.map
|
|
@@ -0,0 +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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"full-stop-fn-test.d.ts","sourceRoot":"","sources":["../../src/utils/full-stop-fn-test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const types_1 = require("@commitlint/types");
|
|
7
|
+
const full_stop_fn_1 = __importDefault(require("./full-stop-fn"));
|
|
8
|
+
test('should not apply', () => {
|
|
9
|
+
let rule = (0, full_stop_fn_1.default)([types_1.RuleConfigSeverity.Disabled]);
|
|
10
|
+
expect(rule('test.')).toBe('test.');
|
|
11
|
+
expect(rule('test')).toBe('test');
|
|
12
|
+
expect(rule('test..')).toBe('test..');
|
|
13
|
+
expect(rule('')).toBe('');
|
|
14
|
+
rule = (0, full_stop_fn_1.default)();
|
|
15
|
+
expect(rule('test.')).toBe('test.');
|
|
16
|
+
expect(rule('test')).toBe('test');
|
|
17
|
+
expect(rule('test..')).toBe('test..');
|
|
18
|
+
expect(rule('')).toBe('');
|
|
19
|
+
rule = (0, full_stop_fn_1.default)([types_1.RuleConfigSeverity.Disabled, 'always']);
|
|
20
|
+
expect(rule('test.')).toBe('test.');
|
|
21
|
+
expect(rule('test')).toBe('test');
|
|
22
|
+
expect(rule('test..')).toBe('test..');
|
|
23
|
+
expect(rule('')).toBe('');
|
|
24
|
+
rule = (0, full_stop_fn_1.default)([types_1.RuleConfigSeverity.Disabled, 'always', 1]);
|
|
25
|
+
expect(rule('test.')).toBe('test.');
|
|
26
|
+
expect(rule('test')).toBe('test');
|
|
27
|
+
expect(rule('test..')).toBe('test..');
|
|
28
|
+
expect(rule('')).toBe('');
|
|
29
|
+
rule = (0, full_stop_fn_1.default)([types_1.RuleConfigSeverity.Disabled, 'never']);
|
|
30
|
+
expect(rule('test.')).toBe('test.');
|
|
31
|
+
expect(rule('test')).toBe('test');
|
|
32
|
+
expect(rule('test..')).toBe('test..');
|
|
33
|
+
expect(rule('')).toBe('');
|
|
34
|
+
rule = (0, full_stop_fn_1.default)([types_1.RuleConfigSeverity.Disabled, 'never', ['.']]);
|
|
35
|
+
expect(rule('test.')).toBe('test.');
|
|
36
|
+
expect(rule('test')).toBe('test');
|
|
37
|
+
expect(rule('test..')).toBe('test..');
|
|
38
|
+
expect(rule('')).toBe('');
|
|
39
|
+
});
|
|
40
|
+
test('should add full stop', () => {
|
|
41
|
+
let rule = (0, full_stop_fn_1.default)([types_1.RuleConfigSeverity.Error, 'always', '.']);
|
|
42
|
+
expect(rule('test')).toBe('test.');
|
|
43
|
+
expect(rule('test.')).toBe('test.');
|
|
44
|
+
expect(rule('')).toBe('.');
|
|
45
|
+
rule = (0, full_stop_fn_1.default)([types_1.RuleConfigSeverity.Error, 'always', '\n']);
|
|
46
|
+
expect(rule('test')).toBe('test\n');
|
|
47
|
+
expect(rule('test.')).toBe('test.\n');
|
|
48
|
+
expect(rule('')).toBe('\n');
|
|
49
|
+
});
|
|
50
|
+
test('should remove full stop', () => {
|
|
51
|
+
let rule = (0, full_stop_fn_1.default)([types_1.RuleConfigSeverity.Error, 'never', '.']);
|
|
52
|
+
expect(rule('test')).toBe('test');
|
|
53
|
+
expect(rule('test.')).toBe('test');
|
|
54
|
+
expect(rule('')).toBe('');
|
|
55
|
+
expect(rule('test..')).toBe('test');
|
|
56
|
+
expect(rule('test.end')).toBe('test.end');
|
|
57
|
+
rule = (0, full_stop_fn_1.default)([types_1.RuleConfigSeverity.Error, 'never', '\n']);
|
|
58
|
+
expect(rule('test')).toBe('test');
|
|
59
|
+
expect(rule('test.')).toBe('test.');
|
|
60
|
+
expect(rule('test\n\n')).toBe('test');
|
|
61
|
+
expect(rule('test.\n')).toBe('test.');
|
|
62
|
+
});
|
|
63
|
+
//# sourceMappingURL=full-stop-fn-test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"full-stop-fn-test.js","sourceRoot":"","sources":["../../src/utils/full-stop-fn-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Rule } from '../types';
|
|
2
|
+
export declare type FullStopFn = (input: string) => string;
|
|
3
|
+
/**
|
|
4
|
+
* Get forced case for rule
|
|
5
|
+
* @param rule to parse
|
|
6
|
+
* @return transform function applying the enforced case
|
|
7
|
+
*/
|
|
8
|
+
export default function getFullStopFn(rule?: Rule): FullStopFn;
|
|
9
|
+
//# sourceMappingURL=full-stop-fn.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"full-stop-fn.d.ts","sourceRoot":"","sources":["../../src/utils/full-stop-fn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAG9B,oBAAY,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAEnD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,UAAU,CAuB7D"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const rules_1 = require("./rules");
|
|
4
|
+
/**
|
|
5
|
+
* Get forced case for rule
|
|
6
|
+
* @param rule to parse
|
|
7
|
+
* @return transform function applying the enforced case
|
|
8
|
+
*/
|
|
9
|
+
function getFullStopFn(rule) {
|
|
10
|
+
const noop = (_) => _;
|
|
11
|
+
if (!rule || !(0, rules_1.ruleIsActive)(rule)) {
|
|
12
|
+
return noop;
|
|
13
|
+
}
|
|
14
|
+
if (typeof rule[2] !== 'string')
|
|
15
|
+
return noop;
|
|
16
|
+
const symbol = rule[2];
|
|
17
|
+
if ((0, rules_1.ruleIsNotApplicable)(rule)) {
|
|
18
|
+
return (input) => {
|
|
19
|
+
while (input.length > 0 && input.endsWith(symbol)) {
|
|
20
|
+
input = input.slice(0, input.length - 1);
|
|
21
|
+
}
|
|
22
|
+
return input;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
return (input) => {
|
|
27
|
+
return !input.endsWith(symbol) ? input + symbol : input;
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.default = getFullStopFn;
|
|
32
|
+
//# sourceMappingURL=full-stop-fn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"full-stop-fn.js","sourceRoot":"","sources":["../../src/utils/full-stop-fn.ts"],"names":[],"mappings":";;AACA,mCAA0D;AAI1D;;;;GAIG;AACH,SAAwB,aAAa,CAAC,IAAW;IAChD,MAAM,IAAI,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC;IAE9B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,EAAE;QACjC,OAAO,IAAI,CAAC;KACZ;IAED,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE7C,MAAM,MAAM,GAAW,IAAI,CAAC,CAAC,CAAC,CAAC;IAE/B,IAAI,IAAA,2BAAmB,EAAC,IAAI,CAAC,EAAE;QAC9B,OAAO,CAAC,KAAa,EAAE,EAAE;YACxB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAClD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;aACzC;YACD,OAAO,KAAK,CAAC;QACd,CAAC,CAAC;KACF;SAAM;QACN,OAAO,CAAC,KAAa,EAAE,EAAE;YACxB,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACzD,CAAC,CAAC;KACF;AACF,CAAC;AAvBD,gCAuBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leading-blank-fn-test.d.ts","sourceRoot":"","sources":["../../src/utils/leading-blank-fn-test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const types_1 = require("@commitlint/types");
|
|
7
|
+
const leading_blank_fn_1 = __importDefault(require("./leading-blank-fn"));
|
|
8
|
+
test('should not apply', () => {
|
|
9
|
+
let rule = (0, leading_blank_fn_1.default)([types_1.RuleConfigSeverity.Disabled]);
|
|
10
|
+
expect(rule('test')).toBe('test');
|
|
11
|
+
expect(rule('\ntest')).toBe('\ntest');
|
|
12
|
+
expect(rule('aaa\ntest')).toBe('aaa\ntest');
|
|
13
|
+
expect(rule('')).toBe('');
|
|
14
|
+
rule = (0, leading_blank_fn_1.default)();
|
|
15
|
+
expect(rule('test')).toBe('test');
|
|
16
|
+
expect(rule('\ntest')).toBe('\ntest');
|
|
17
|
+
expect(rule('aaa\ntest')).toBe('aaa\ntest');
|
|
18
|
+
expect(rule('')).toBe('');
|
|
19
|
+
});
|
|
20
|
+
test('should add leading blank', () => {
|
|
21
|
+
const rule = (0, leading_blank_fn_1.default)([types_1.RuleConfigSeverity.Error, 'always']);
|
|
22
|
+
expect(rule('test')).toBe('\ntest');
|
|
23
|
+
expect(rule('\ntest')).toBe('\ntest');
|
|
24
|
+
expect(rule('\n\ntest')).toBe('\n\ntest');
|
|
25
|
+
expect(rule('aaa\ntest')).toBe('\naaa\ntest');
|
|
26
|
+
expect(rule('\naaa\ntest')).toBe('\naaa\ntest');
|
|
27
|
+
expect(rule('')).toBe('\n');
|
|
28
|
+
});
|
|
29
|
+
test('should remove leading blank', () => {
|
|
30
|
+
const rule = (0, leading_blank_fn_1.default)([types_1.RuleConfigSeverity.Error, 'never']);
|
|
31
|
+
expect(rule('test')).toBe('test');
|
|
32
|
+
expect(rule('\ntest')).toBe('test');
|
|
33
|
+
expect(rule('\n\ntest')).toBe('test');
|
|
34
|
+
expect(rule('aaa\ntest')).toBe('aaa\ntest');
|
|
35
|
+
expect(rule('\naaa\ntest')).toBe('aaa\ntest');
|
|
36
|
+
expect(rule('\n\n\naaa\ntest')).toBe('aaa\ntest');
|
|
37
|
+
expect(rule('')).toBe('');
|
|
38
|
+
});
|
|
39
|
+
//# sourceMappingURL=leading-blank-fn-test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leading-blank-fn-test.js","sourceRoot":"","sources":["../../src/utils/leading-blank-fn-test.ts"],"names":[],"mappings":";;;;;AAAA,6CAAqD;AACrD,0EAAmD;AAEnD,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC7B,IAAI,IAAI,GAAG,IAAA,0BAAiB,EAAC,CAAC,0BAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5D,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE1B,IAAI,GAAG,IAAA,0BAAiB,GAAE,CAAC;IAC3B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACrC,MAAM,IAAI,GAAG,IAAA,0BAAiB,EAAC,CAAC,0BAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IACrE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1C,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9C,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAChD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACxC,MAAM,IAAI,GAAG,IAAA,0BAAiB,EAAC,CAAC,0BAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACpE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Rule } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Get forced leading for rule
|
|
4
|
+
* @param rule to parse
|
|
5
|
+
* @return transform function applying the leading
|
|
6
|
+
*/
|
|
7
|
+
export default function getLeadingBlankFn(rule?: Rule): (input: string) => string;
|
|
8
|
+
//# sourceMappingURL=leading-blank-fn.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leading-blank-fn.d.ts","sourceRoot":"","sources":["../../src/utils/leading-blank-fn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAG9B;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACxC,IAAI,CAAC,EAAE,IAAI,GACT,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAkB3B"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const rules_1 = require("./rules");
|
|
4
|
+
/**
|
|
5
|
+
* Get forced leading for rule
|
|
6
|
+
* @param rule to parse
|
|
7
|
+
* @return transform function applying the leading
|
|
8
|
+
*/
|
|
9
|
+
function getLeadingBlankFn(rule) {
|
|
10
|
+
if (!rule || !(0, rules_1.ruleIsActive)(rule)) {
|
|
11
|
+
return (input) => input;
|
|
12
|
+
}
|
|
13
|
+
const remove = (input) => {
|
|
14
|
+
const fragments = input.split('\n');
|
|
15
|
+
while (fragments.length > 0 && fragments[0] === '') {
|
|
16
|
+
fragments.shift();
|
|
17
|
+
}
|
|
18
|
+
return fragments.join('\n');
|
|
19
|
+
};
|
|
20
|
+
const lead = (input) => {
|
|
21
|
+
const fragments = input.split('\n');
|
|
22
|
+
return fragments[0] === '' ? input : ['', ...fragments].join('\n');
|
|
23
|
+
};
|
|
24
|
+
return !(0, rules_1.ruleIsNotApplicable)(rule) ? lead : remove;
|
|
25
|
+
}
|
|
26
|
+
exports.default = getLeadingBlankFn;
|
|
27
|
+
//# sourceMappingURL=leading-blank-fn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leading-blank-fn.js","sourceRoot":"","sources":["../../src/utils/leading-blank-fn.ts"],"names":[],"mappings":";;AACA,mCAA0D;AAE1D;;;;GAIG;AACH,SAAwB,iBAAiB,CACxC,IAAW;IAEX,IAAI,CAAC,IAAI,IAAI,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,EAAE;QACjC,OAAO,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC;KACxC;IAED,MAAM,MAAM,GAAG,CAAC,KAAa,EAAU,EAAE;QACxC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;YACnD,SAAS,CAAC,KAAK,EAAE,CAAC;SAClB;QACD,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,KAAa,EAAU,EAAE;QACtC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC,CAAC;IAEF,OAAO,CAAC,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;AACnD,CAAC;AApBD,oCAoBC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { RuleConfigSeverity } from '@commitlint/types';
|
|
2
|
+
import { Rule } from '../types';
|
|
3
|
+
export declare function ruleIsDisabled(rule: Rule): rule is Readonly<[RuleConfigSeverity.Disabled]>;
|
|
4
|
+
/**
|
|
5
|
+
* Check if a rule definition is active
|
|
6
|
+
* @param rule to check
|
|
7
|
+
* @return if the rule definition is active
|
|
8
|
+
*/
|
|
9
|
+
export declare function ruleIsActive<T extends Rule>(rule: T): rule is Exclude<T, Readonly<[RuleConfigSeverity.Disabled]>>;
|
|
10
|
+
/**
|
|
11
|
+
* Check if a rule definition is applicable
|
|
12
|
+
* @param rule to check
|
|
13
|
+
* @return if the rule definition is applicable
|
|
14
|
+
*/
|
|
15
|
+
export declare function ruleIsApplicable(rule: Rule): rule is Readonly<[RuleConfigSeverity, 'always']> | Readonly<[RuleConfigSeverity, 'always', unknown]>;
|
|
16
|
+
/**
|
|
17
|
+
* Check if a rule definition is applicable
|
|
18
|
+
* @param rule to check
|
|
19
|
+
* @return if the rule definition is applicable
|
|
20
|
+
*/
|
|
21
|
+
export declare function ruleIsNotApplicable(rule: Rule): rule is Readonly<[RuleConfigSeverity, 'never']> | Readonly<[RuleConfigSeverity, 'never', unknown]>;
|
|
22
|
+
export declare function enumRuleIsActive(rule: Rule): rule is Readonly<[
|
|
23
|
+
RuleConfigSeverity.Warning | RuleConfigSeverity.Error,
|
|
24
|
+
'always',
|
|
25
|
+
string[]
|
|
26
|
+
]>;
|
|
27
|
+
export declare function getEnumList(rule: Rule): string[];
|
|
28
|
+
export declare function getMaxLength(rule?: Rule): number;
|
|
29
|
+
export declare function getMinLength(rule?: Rule): number;
|
|
30
|
+
//# sourceMappingURL=rules.d.ts.map
|