export function lintCommit()

in packages/vscode-extension-web-ide/src/scm/commit/lintCommit.ts [22:44]


export function lintCommit({
  value,
  pushRules,
}: {
  value: string;
  pushRules: GitLabProjectPushRules;
}) {
  if (!value || !pushRules) {
    return '';
  }

  const positiveRegExp = asRegExp(pushRules.commit_message_regex);
  const negativeRegExp = asRegExp(pushRules.commit_message_negative_regex);

  if (positiveRegExp && !positiveRegExp.test(value)) {
    return positiveRegexErrorMessage(pushRules.commit_message_regex);
  }
  if (negativeRegExp && negativeRegExp.test(value)) {
    return negativeRegexErrorMessage(pushRules.commit_message_negative_regex);
  }

  return '';
}