Module:Region

local p = {} local getArgs = require( 'Module:Arguments' ).getArgs

local i18n = { region_cn = 'China', region_cis = 'CIS', region_eu = 'Europe', region_int = 'International', region_na = 'North America', region_sa = 'South America', region_sea = 'Southeast Asia', region_unknown = 'Unknown', }

local countries = { -- CIS ['belarus'] = i18n.region_cis, ['cis'] = i18n.region_cis, ['kyrgyzstan'] = i18n.region_cis, ['moldova'] = i18n.region_cis, ['russia'] = i18n.region_cis, ['tajikistan'] = i18n.region_cis, ['turkmenistan'] = i18n.region_cis, ['ukraine'] = i18n.region_cis, ['uzbekistan'] = i18n.region_cis, -- SEA ['australia'] = i18n.region_sea, ['brunei'] = i18n.region_sea, ['cambodia'] = i18n.region_sea, ['indonesia'] = i18n.region_sea, ['laos'] = i18n.region_sea, ['malaysia'] = i18n.region_sea, ['mongolia'] = i18n.region_sea, ['myanmar'] = i18n.region_sea, ['philippines'] = i18n.region_sea, ['sea'] = i18n.region_sea, ['singapore'] = i18n.region_sea, ['south korea'] = i18n.region_sea, ['thailand'] = i18n.region_sea, ['timor'] = i18n.region_sea, ['vietnam'] = i18n.region_sea, -- NA ['america'] = i18n.region_na, ['anguilla'] = i18n.region_na, ['antigua and barbuda'] = i18n.region_na, ['aruba'] = i18n.region_na, ['bahamas'] = i18n.region_na, ['barbados'] = i18n.region_na, ['belize'] = i18n.region_na, ['bermuda'] = i18n.region_na, ['british virgin islands'] = i18n.region_na, ['canada'] = i18n.region_na, ['caribbean netherlands'] = i18n.region_na, ['cayman islands'] = i18n.region_na, ['cayman'] = i18n.region_na, ['costa rica'] = i18n.region_na, ['cuba'] = i18n.region_na, ['curacao'] = i18n.region_na, ['curaçao'] = i18n.region_na, ['dominica'] = i18n.region_na, ['dominican republic'] = i18n.region_na, ['el salvador'] = i18n.region_na, ['greenland'] = i18n.region_na, ['grenada'] = i18n.region_na, ['guadeloupe'] = i18n.region_na, ['guatemala'] = i18n.region_na, ['haiti'] = i18n.region_na, ['honduras'] = i18n.region_na, ['jamaica'] = i18n.region_na, ['martinique'] = i18n.region_na, ['mexico'] = i18n.region_na, ['montserrat'] = i18n.region_na, ['nicaragua'] = i18n.region_na, ['north america'] = i18n.region_na, ['panama'] = i18n.region_na, ['puerto rico'] = i18n.region_na, ['saint barthélemy'] = i18n.region_na, ['saint kitts and nevis'] = i18n.region_na, ['saint lucia'] = i18n.region_na, ['saint martin'] = i18n.region_na, ['saint pierre and miquelon'] = i18n.region_na, ['saint vincent and the grenadines'] = i18n.region_na, ['sint maarten'] = i18n.region_na, ['trinidad and tobago'] = i18n.region_na, ['turks and caicos islands'] = i18n.region_na, ['us'] = i18n.region_na, ['usa'] = i18n.region_na, ['united states virgin islands'] = i18n.region_na, ['united states'] = i18n.region_na, ['virgin islands'] = i18n.region_na, -- SA ['argentina'] = i18n.region_sa, ['bolivia'] = i18n.region_sa, ['brazil'] = i18n.region_sa, ['chile'] = i18n.region_sa, ['colombia'] = i18n.region_sa, ['ecuador'] = i18n.region_sa, ['falkland islands'] = i18n.region_sa, ['french guiana'] = i18n.region_sa, ['guyana'] = i18n.region_sa, ['paraguay'] = i18n.region_sa, ['peru'] = i18n.region_sa, ['south america'] = i18n.region_sa, ['suriname'] = i18n.region_sa, ['uruguay'] = i18n.region_sa, ['venezuela'] = i18n.region_sa, -- EU ['albania'] = i18n.region_eu, ['andorra'] = i18n.region_eu, ['armenia'] = i18n.region_eu, ['austria'] = i18n.region_eu, ['azerbaijan'] = i18n.region_eu, ['belarus'] = i18n.region_eu, ['belgium'] = i18n.region_eu, ['bosnia and herzegovina'] = i18n.region_eu, ['bosnia'] = i18n.region_eu, ['bulgaria'] = i18n.region_eu, ['croatia'] = i18n.region_eu, ['cyprus'] = i18n.region_eu, ['czech republic'] = i18n.region_eu, ['czechia'] = i18n.region_eu, ['denmark'] = i18n.region_eu, ['estonia'] = i18n.region_eu, ['europe'] = i18n.region_eu, ['faroe islands'] = i18n.region_eu, ['finland'] = i18n.region_eu, ['france'] = i18n.region_eu, ['georgia'] = i18n.region_eu, ['germany'] = i18n.region_eu, ['gibraltar'] = i18n.region_eu, ['greece'] = i18n.region_eu, ['guernsey'] = i18n.region_eu, ['herzegovina'] = i18n.region_eu, ['hungary'] = i18n.region_eu, ['iceland'] = i18n.region_eu, ['ireland'] = i18n.region_eu, ['isle of man'] = i18n.region_eu, ['italy'] = i18n.region_eu, ['jersey'] = i18n.region_eu, ['kazakhstan'] = i18n.region_eu, ['kosovo'] = i18n.region_eu, ['latvia'] = i18n.region_eu, ['lichtenstein'] = i18n.region_eu, ['lithuania'] = i18n.region_eu, ['luxembourg'] = i18n.region_eu, ['macedonia'] = i18n.region_eu, ['malta'] = i18n.region_eu, ['moldova'] = i18n.region_eu, ['monaco'] = i18n.region_eu, ['montenegro'] = i18n.region_eu, ['netherlands'] = i18n.region_eu, ['norway'] = i18n.region_eu, ['poland'] = i18n.region_eu, ['portugal'] = i18n.region_eu, ['romania'] = i18n.region_eu, ['san marino'] = i18n.region_eu, ['serbia'] = i18n.region_eu, ['slovakia'] = i18n.region_eu, ['slovenia'] = i18n.region_eu, ['spain'] = i18n.region_eu, ['svalbard'] = i18n.region_eu, ['sweden'] = i18n.region_eu, ['switzerland'] = i18n.region_eu, ['turkey'] = i18n.region_eu, ['united kingdom'] = i18n.region_eu, ['vatican city'] = i18n.region_eu, ['vatican'] = i18n.region_eu, ['åland islands'] = i18n.region_eu, -- CN ['china'] = i18n.region_cn, -- International ['international'] = i18n.region_int, ['world'] = i18n.region_int, } -- Set a default value for the table. setmetatable( countries, {__index = function return i18n.region_unknown end} )

function p.main(frame) local args = getArgs(frame, {   wrappers = {      'Template:Region'    }  }) return p._main( args ) end

function p._main( args ) local region = i18n.region_unknown if args[1] then region = countries[string.lower(args[1])] end return region end

return p