Modul:Wikidata/Sorters/alpha
Vzhled
require 'Modul:No globals'
local p = {}
local lib = require 'Modul:Wikidata/lib'
local Collation = require 'Modul:Collation'
local Formatters = require 'Modul:Wikidata/Formatters'
local function getValue(statement)
local value = Formatters.getRawValue(statement.mainsnak)
if statement.mainsnak.datavalue.type == 'wikibase-entityid' then
return mw.wikibase.label(value)
end
return value
end
function p.isComplete(statement)
return lib.IsSnakValue(statement.mainsnak) and (
statement.mainsnak.datavalue.type == 'string' or
statement.mainsnak.datavalue.type == 'monolingualtext' or
(getValue(statement.mainsnak) and true)
)
end
function p.mayCompare(statement)
return statement.mainsnak.datavalue.type == 'monolingualtext' or
statement.mainsnak.datavalue.type == 'string' or
statement.mainsnak.datavalue.type == 'wikibase-entityid'
end
function p.compare(first, second)
return Collation.compare(getValue(first), getValue(second))
end
return p