Module:Singular-plural

From Forsaken Saga Wiki
Revision as of 09:08, 13 June 2024 by 176.40.36.35 (talk) (Created page with "local getArgs = require('Module:Arguments').getArgs local ul = require('Module:Ul').main local listify = require('Module:Listify') local p = {} function p.label(frame) local args = getArgs(frame) local singular = args['singular'] or args['s'] local plural = args['plural'] or args['p'] local items = listify(args[1]) if #items == 1 then return singular else return plural end end function p.value(frame) local args = getArgs(frame) local class =...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Documentation for this module may be created at Module:Singular-plural/doc

local getArgs = require('Module:Arguments').getArgs
local ul = require('Module:Ul').main
local listify = require('Module:Listify')

local p = {}

function p.label(frame)
  local args = getArgs(frame)
  local singular = args['singular'] or args['s']
  local plural = args['plural'] or args['p']
  local items = listify(args[1])
  if #items == 1 then
    return singular
  else
    return plural
  end
end

function p.value(frame)
  local args = getArgs(frame)
  local class = args['class']
  local items = listify(args[1])
  if #items == 0 then
    return ''
  elseif #items == 1 then
    return items[1]
  else
    local list = ul(items)
    return mw.html.create('div'):addClass(class):wikitext(list)
  end
end

return p