模組:HideInSkin
外观
模块文档[创建]
您可能想要创建本Scribunto模块的文档。 编者可以在本模块的沙盒 (创建 | 镜像)和测试样例 (创建)页面进行实验。 请在/doc子页面中添加分类。本模块的子页面。 |
local p = {}
local getArgs = require('Module:Arguments').getArgs
local yesno = require('Module:Yesno')
local allow_skins = {
'vector', -- = vector-legacy + vector-202
'vector-legacy',
'vector-2022',
'minerva',
'monobook',
'timeless',
}
local allow_skin_alias = {
['vector2010'] = 'vector-legacy',
['vector-2010'] = 'vector-legacy',
['vector2022'] = 'vector-2022'
}
function p._main(args)
local skin_is_added = {}
local has_class = false
local html = mw.html.create(args.wrapperTag or 'div')
for _, skin in ipairs(allow_skins) do
if yesno(args[skin]) and not skin_is_added[skin] then
has_class = true
skin_is_added[skin] = skin .. '-hide'
html:addClass(skin .. '-hide')
end
end
for alias, skin in pairs(allow_skin_alias) do
if yesno(args[skin]) and not skin_is_added[skin] then
has_class = true
skin_is_added[skin] = skin .. '-hide'
html:addClass(skin .. '-hide')
end
end
if not has_class and not args.ignoreNoSkin then
return tostring(args[1])
end
return tostring(
html
:wikitext(args[1])
:done()
)
end
function p.main(frame)
local args = getArgs(frame, {
trim = true,
removeBlanks = true,
parentFirst = true
})
return p._main(args)
end
return p