Documentation icon دستاویز [تخلیق]
-- Return input text after converting any en digits and month names.

local en_digits = {
	['0'] = '0',
	['1'] = '1',
	['2'] = '2',
	['3'] = '3',
	['4'] = '4',
	['5'] = '5',
	['6'] = '6',
	['7'] = '7',
	['8'] = '8',
	['9'] = '9',
}

local en_months = {
	['January'] = 'جنوری',
	['january'] = 'جنوری',
	['February'] = 'فروری',
	['february'] = 'فروری',
	['March'] = 'مارچ',
	['march'] = 'مارچ',
	['April'] = 'اپریل',
	['april'] = 'اپریل',
	['May'] = 'مئی',
	['may'] = 'مئی',
	['June'] = 'جون',
	['june'] = 'جون',
	['July'] = 'جولائی',
	['july'] = 'جولائی',
	['August'] = 'اگست',
	['august'] = 'اگست',
	['September'] = 'ستمبر',
	['september'] = 'ستمبر',
	['October'] = 'اکتوبر',
	['october'] = 'اکتوبر',
	['November'] = 'نومبر',
	['november'] = 'نومبر',
	['December'] = 'دسمبر',
	['december'] = 'دسمبر',
}

local function _main(input)
	-- Callable from another module.
	input = input or ''
	return (input:gsub('%a+', en_months):gsub('%d', en_digits))
end

local function main(frame)
	-- Callable from #invoke or from a template.
	return _main(frame.args[1] or frame:getParent().args[1])
end

return { main = main, _main = _main }