| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | 'use strict';const {methodCallSelector, not} = require('./selectors/index.js');const {appendArgument} = require('./fix/index.js');const MESSAGE_ID = 'require-number-to-fixed-digits-argument';const messages = {	[MESSAGE_ID]: 'Missing the digits argument.',};const mathToFixed = [	methodCallSelector({		method: 'toFixed',		argumentsLength: 0,	}),	not('[callee.object.type="NewExpression"]'),].join('');/** @param {import('eslint').Rule.RuleContext} context */const create = context => {	const sourceCode = context.getSourceCode();	return {		[mathToFixed](node) {			const [				openingParenthesis,				closingParenthesis,			] = sourceCode.getLastTokens(node, 2);			return {				loc: {					start: openingParenthesis.loc.start,					end: closingParenthesis.loc.end,				},				messageId: MESSAGE_ID,				/** @param {import('eslint').Rule.RuleFixer} fixer */				fix: fixer => appendArgument(fixer, node, '0', sourceCode),			};		},	};};/** @type {import('eslint').Rule.RuleModule} */module.exports = {	create,	meta: {		type: 'suggestion',		docs: {			description: 'Enforce using the digits argument with `Number#toFixed()`.',		},		fixable: 'code',		messages,	},};
 |