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.input = void 0;
|
7 | const load_1 = __importDefault(require("@commitlint/load"));
|
8 | const format_1 = __importDefault(require("./library/format"));
|
9 | const get_prompt_1 = __importDefault(require("./library/get-prompt"));
|
10 | const settings_1 = __importDefault(require("./settings"));
|
11 | const utils_1 = require("./library/utils");
|
12 | const InputCustomPrompt_1 = __importDefault(require("./inquirer/InputCustomPrompt"));
|
13 |
|
14 |
|
15 |
|
16 |
|
17 |
|
18 |
|
19 | async function input(prompter) {
|
20 | const { rules } = await (0, load_1.default)();
|
21 | const parts = ['type', 'scope', 'subject', 'body', 'footer'];
|
22 | const headerParts = ['type', 'scope', 'subject'];
|
23 | const headerLengthRule = (0, utils_1.getRules)('header', rules).find((0, utils_1.getHasName)('max-length'));
|
24 | const maxLength = (0, utils_1.getMaxLength)(headerLengthRule);
|
25 | try {
|
26 | const questions = [];
|
27 | prompter.registerPrompt('input-custom', InputCustomPrompt_1.default);
|
28 | for (const input of parts) {
|
29 | const inputSetting = settings_1.default[input];
|
30 | const inputRules = (0, utils_1.getRules)(input, rules);
|
31 | if (headerParts.includes(input) && maxLength < Infinity) {
|
32 | inputSetting.header = {
|
33 | length: maxLength,
|
34 | };
|
35 | }
|
36 | const question = (0, get_prompt_1.default)(input, inputRules, inputSetting);
|
37 | if (question) {
|
38 | questions.push(question);
|
39 | }
|
40 | }
|
41 | const results = await prompter(questions);
|
42 | return (0, format_1.default)(results);
|
43 | }
|
44 | catch (err) {
|
45 | console.error(err);
|
46 | return '';
|
47 | }
|
48 | }
|
49 | exports.input = input;
|
50 |
|
\ | No newline at end of file |