UNPKG

@elsikora/commitizen-plugin-commitlint-ai

Version:
41 lines (37 loc) 1.52 kB
'use strict'; var isPlainObject = require('lodash.isplainobject'); var defaultPromptConfigs = require('./defaultPromptConfigs.js'); const storeKey = Symbol("promptConfig"); const store = { [storeKey]: defaultPromptConfigs.default, }; function setPromptConfig(newPromptConfig) { const { messages, questions, settings } = newPromptConfig; if (messages) { const requiredMessageKeys = Object.keys(defaultPromptConfigs.default.messages); // eslint-disable-next-line @elsikora-unicorn/no-array-for-each requiredMessageKeys.forEach((key) => { const message = messages[key]; if (typeof message === "string") { store[storeKey].messages[key] = message; } }); } if (questions && isPlainObject(questions)) { store[storeKey].questions = questions; } if (settings && isPlainObject(settings)) { // eslint-disable-next-line @elsikora-sonar/anchor-precedence if (settings.scopeEnumSeparator && !/^\/|\\|,$/.test(settings.scopeEnumSeparator)) { console.log(`prompt.settings.scopeEnumSeparator must be one of ',', '\\', '/'.`); // eslint-disable-next-line @elsikora-unicorn/no-process-exit,elsikora-node/no-process-exit process.exit(1); } store[storeKey].settings = { ...defaultPromptConfigs.default.settings, ...settings, }; } } exports.setPromptConfig = setPromptConfig; //# sourceMappingURL=prompts.js.map