ruleMessages.js 589 B

1234567891011121314151617181920
  1. 'use strict';
  2. /**
  3. * @type {import('stylelint').Utils['ruleMessages']}
  4. */
  5. module.exports = function ruleMessages(ruleName, messages) {
  6. /** @type {import('stylelint').RuleMessages} */
  7. const newMessages = {};
  8. for (const [messageId, messageText] of Object.entries(messages)) {
  9. if (typeof messageText === 'string') {
  10. newMessages[messageId] = `${messageText} (${ruleName})`;
  11. } else {
  12. newMessages[messageId] = (...args) => `${messageText(...args)} (${ruleName})`;
  13. }
  14. }
  15. // @ts-expect-error -- TS2322: Type 'RuleMessages' is not assignable to type 'R'.
  16. return newMessages;
  17. };