Module:shortcut box: Difference between revisions

From Laenkea
Jump to navigation Jump to search
No edit summary
No edit summary
Line 19: Line 19:
local formatted_shortcuts = export.format_shortcuts(shortcuts)
local formatted_shortcuts = export.format_shortcuts(shortcuts)
return m_message_box.main("mbox", {
return m_message_box.main("mbox", {
text = "'''Shortcuts'''\n----\n" .. formatted_shortcuts,
text = "'''Shortcuts'''\n<hr style=\"margin-bottom:6px;\"/>\n" .. formatted_shortcuts,
type = "notice",
type = "notice",
small = true,
small = true,

Revision as of 14:38, 7 August 2023

Documentation for this module may be created at Module:shortcut box/documentation

local export = {}

local m_message_box = require("Module:Message box")
local m_template = require("Module:template")

function export.format_shortcuts(shortcuts)
	local text = {}
	for _, shortcut in ipairs(shortcuts) do
		if string.sub(shortcut, 1, 9) == "Template:" then
			table.insert(text, m_template.make_template({[1] = string.sub(shortcut, 10)}, false))
		else
			table.insert(text, shortcut)
		end
	end
	return table.concat(text, "\n")
end

function export.render_box(shortcuts)
	local formatted_shortcuts = export.format_shortcuts(shortcuts)
	return m_message_box.main("mbox", {
		text = "'''Shortcuts'''\n<hr style=\"margin-bottom:6px;\"/>\n" .. formatted_shortcuts,
		type = "notice",
		small = true,
		style = "text-align:center;",
	})
end

function export.show(frame)
	return export.render_box(frame:getParent().args)
end

return export