Module:Flex columns/sandbox explained

local p =

local function setCleanArgs(argsTable) local cleanArgs = for key, val in pairs(argsTable) do if type(val)

'string' then val = val:match('^%s*(.-)%s*$') if val ~= then cleanArgs[key] = val end else cleanArgs[key] = val end end return cleanArgsend

p.main = function(frame) local parent = frame.getParent(frame) local output = p._main(parent.args) return frame:extensionTag .. frame:preprocess(output)end

p._main = function(_args) local args = setCleanArgs(_args) local ii = 1 local container = mw.html.create('div') :addClass('flex-columns-container') while args[ii] do local column = container:tag('div') :addClass('flex-columns-column') :wikitext(args[ii]) if tonumber(args['flex'..ii]) > 0 and tonumber(args['flex'..ii]) <= 3 then -- keep in sync with styles column:addClass('flex-columns-column-'..args['flex'..ii]) end ii = ii + 1 end return tostring(container)end

return p