Módulo:Character.Skin
Ir para navegação
Ir para pesquisar
A documentação para este módulo pode ser criada em Módulo:Character.Skin/doc
-- Módulo:Character.Skin — função skin()
local p = {}
local utils = require("Módulo:Character.Utils")
local normalizeDim = utils.normalizeDim
--------------------------------------------------------------------------------
-- Serializer de skin (para {{Skin}})
--------------------------------------------------------------------------------
function p.skin(frame)
local a = frame.args
local function nz(s)
s = mw.text.trim(tostring(s or ""))
return (s ~= "" and s or nil)
end
-- i18n para tooltip (mantém legado)
local pack = {
pt = nz(a.tooltip_pt),
en = nz(a.tooltip_en),
es = nz(a.tooltip_es),
pl = nz(a.tooltip_pl)
}
local tooltip
if pack.pt or pack.en or pack.es or pack.pl then
tooltip = mw.text.jsonEncode(pack)
else
tooltip = a.tooltip or ''
end
local obj = {
sprite = a.sprite or '',
background = a.background or '',
tooltip = tooltip,
youtube = a.youtube or '',
source = a.source or '',
name = a.name or a.nome or '',
w = normalizeDim(a.w or a.width),
h = normalizeDim(a.h or a.height)
}
return mw.text.jsonEncode(obj)
end
return p