Module:Newarticletext

local p = {} function p.main(frame) local td_attr = { valign='top' }   local td_css = { width='50%' }

local title = frame:getParent:getTitle local sections = mw.loadData('Module:Newarticletext/data') local output = {} -- For Each Section for i,section_data in ipairs(sections) do       if section_data['header'] and section_data['sections'] then local evenTest local section = page_layout(section_data['header']) local row local column -- For Each Link Area for j,link_data in ipairs(section_data['sections']) do               evenTest = j%2 if evenTest==1 then row = section:tag('tr') end column = row:tag('td') :attr(td_attr):css(td_css) if (type(link_data['link']) == 'table') then local ul = column:wikitext(link_data['text'] .. ' '):tag('ul') :addClass('pipe_delimit') :css('font-size',link_data['link']['size']) for k,sub_link in ipairs(link_data['link']) do                       ul:tag('li') :wikitext(preload_link(title,sub_link['link'],sub_link['text'])) end else column:wikitext(preload_link(title,link_data['link'],tostring(link_data['text']))) end end if evenTest==1 then column:attr('colspan',2) end table.insert(output, tostring(section)) end end

return table.concat(output) end function preload_link(page,preload,display) return '[' .. tostring(       mw.uri.fullUrl(page,{ action='edit', preload=preload })   ) .. ' ' .. display .. ']' end function page_layout(section_title) local table_attr = { class                = 'wikitable mw-collapsible mw-collapsed plainlinks', ['data-expandtext']  = '+', ['data-collapsetext'] = '-' }   local table_css = { width         = '100%', ['text-align'] = 'center' }

return mw.html.create('table') :attr(table_attr) :css(table_css) :tag('tr'):tag('th') :attr('colspan',2) :wikitext(section_title) :allDone end return p

-- Module is from https://genshin-impact.fandom.com/ --