@temari/digitm
Version:
git commit 规范的 表情emoji 的提交
40 lines (39 loc) • 1.73 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
/*
* @Author: saber
* @Date: 2021-12-27 19:00:31
* @LastEditTime: 2021-12-30 14:52:46
* @LastEditors: saber
* @Description:
*/
const inquirer_1 = __importDefault(require("inquirer"));
const guard_1 = __importDefault(require("./guard"));
const TITLE_MAX_LENGTH_COUNT = 48;
// @ts-ignore
inquirer_1.default.registerPrompt('autocomplete', require('inquirer-autocomplete-prompt'));
exports.default = (gitmojis, options) => {
// const { title, message, scope } = getDefaultCommitContent(options)
const { title, message } = { title: null, message: null };
return [
{
name: 'gitmoji',
message: '选择表情:',
type: 'autocomplete',
source: (answersSoFor, input) => {
return Promise.resolve(gitmojis.map((gitmoji) => ({
name: `${gitmoji.emoji} - ${gitmoji.description}`,
// value: gitmoji[configurationVault.getEmojiFormat()]
value: `${gitmoji[`emoji`]} ${gitmoji[`commit-type`]}: `
})));
}
},
Object.assign({ name: 'title', message: 'Enter the commit title', validate: guard_1.default.title, transformer: (input) => {
return `[${(title || input).length}/${TITLE_MAX_LENGTH_COUNT}]: ${input}`;
} }, (title ? { default: title } : {})),
Object.assign({ name: 'message', message: 'Enter the commit message:', validate: guard_1.default.message }, (message ? { default: message } : {}))
];
};