Модуль:CssVarExtractor: различия между версиями

Материал из Space Station 14 Вики
Новая страница: «local p = {} local function extractParts(input) if not input or type(input) ~= 'string' then return nil, nil end local varPart, valuePart = mw.ustring.match( mw.ustring.trim(input), "^(var%([^,]+%))%s*,%s*([^)]+)%)$" ) return varPart, valuePart end local function getVarInternal(input) local varPart = extractParts(input) return varPart or input end local function getColorInternal(input) local _, value...»
 
мНет описания правки
Строка 5: Строка 5:
         return nil, nil
         return nil, nil
     end
     end
    input = mw.text.trim(input)
     local varPart, valuePart = mw.ustring.match(
     local varPart, valuePart = mw.ustring.match(
         mw.ustring.trim(input),
         input,
         "^(var%([^,]+%))%s*,%s*([^)]+)%)$"
         "^(var%([^,]+%))%s*,%s*([^)]+)%)$"
     )
     )

Версия от 07:48, 19 апреля 2025

Для документации этого модуля может быть создана страница Модуль:CssVarExtractor/doc

local p = {}

local function extractParts(input)
    if not input or type(input) ~= 'string' then
        return nil, nil
    end
    input = mw.text.trim(input)
    local varPart, valuePart = mw.ustring.match(
        input,
        "^(var%([^,]+%))%s*,%s*([^)]+)%)$"
    )
    return varPart, valuePart
end

local function getVarInternal(input)
    local varPart = extractParts(input)
    return varPart or input
end

local function getColorInternal(input)
    local _, valuePart = extractParts(input)
    return valuePart or input
end

function p.getVar(frameOrString)
    if type(frameOrString) == 'table' and frameOrString.args then
        local input = frameOrString.args[1] or ''
        return getVarInternal(input)
    end
    return getVarInternal(frameOrString)
end

function p.getColor(frameOrString)
    if type(frameOrString) == 'table' and frameOrString.args then
        local input = frameOrString.args[1] or ''
        return getColorInternal(input)
    end
    return getColorInternal(frameOrString)
end

return p