Модуль:AIMeta: различия между версиями
Материал из Поле цифровой дидактики
Patarakin (обсуждение | вклад) Нет описания правки |
Patarakin (обсуждение | вклад) Нет описания правки |
||
| Строка 19: | Строка 19: | ||
local prompt = trim(args['AI prompt'] or args[2]) | local prompt = trim(args['AI prompt'] or args[2]) | ||
local | local out = {} | ||
if aiSystem then | if aiSystem or prompt then | ||
local setParts = {} | |||
if aiSystem then | |||
table.insert(setParts, 'AI system used=' .. aiSystem) | |||
end | |||
if prompt then | |||
table.insert(setParts, 'AI prompt=' .. prompt) | |||
end | |||
table.insert(out, '{{#set:' .. table.concat(setParts, '|') .. '}}') | |||
end | end | ||
if | if aiSystem then | ||
root: | local root = mw.html.create('div') | ||
root | |||
:css('clear', 'both') | |||
:css('margin-top', '1em') | |||
:css('padding', '0.45em 0.7em') | |||
:css('font-size', '0.82em') | |||
:css('line-height', '1.35') | |||
:css('color', '#777') | |||
:css('background', '#fafafa') | |||
:css('border-top', '1px solid #e8e8e8') | |||
root:tag('span'):wikitext('AI: [[' .. aiSystem .. ']]') | root:tag('span'):wikitext('AI: [[' .. aiSystem .. ']]') | ||
table.insert(out, tostring(root)) | |||
end | end | ||
return | return table.concat(out) | ||
end | end | ||
return p | return p | ||
Версия от 10:27, 3 апреля 2026
Для документации этого модуля может быть создана страница Модуль:AIMeta/doc
local p = {}
local function trim(s)
if s == nil then
return nil
end
s = mw.text.trim(tostring(s))
if s == '' then
return nil
end
return s
end
function p.render(frame)
local parent = frame:getParent()
local args = parent and parent.args or frame.args
local aiSystem = trim(args['AI system used'] or args[1])
local prompt = trim(args['AI prompt'] or args[2])
local out = {}
if aiSystem or prompt then
local setParts = {}
if aiSystem then
table.insert(setParts, 'AI system used=' .. aiSystem)
end
if prompt then
table.insert(setParts, 'AI prompt=' .. prompt)
end
table.insert(out, '{{#set:' .. table.concat(setParts, '|') .. '}}')
end
if aiSystem then
local root = mw.html.create('div')
root
:css('clear', 'both')
:css('margin-top', '1em')
:css('padding', '0.45em 0.7em')
:css('font-size', '0.82em')
:css('line-height', '1.35')
:css('color', '#777')
:css('background', '#fafafa')
:css('border-top', '1px solid #e8e8e8')
root:tag('span'):wikitext('AI: [[' .. aiSystem .. ']]')
table.insert(out, tostring(root))
end
return table.concat(out)
end
return p
