Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions lua/wikis/ageofempires/Infobox/League/Custom.lua
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ function CustomInjector:parse(id, widgets)
end
elseif id == 'sponsors' then
if not String.isEmpty(args.sponsors) then
local sponsors = mw.text.split(args.sponsors, ',', true)
local sponsors = Array.parseCommaSeparatedString(args.sponsors)
table.insert(widgets, Cell{
name = 'Sponsor(s)',
children = {table.concat(sponsors, ' • ')}
Expand Down Expand Up @@ -275,7 +275,7 @@ function CustomLeague:_getGameModes(args)
return {default}
end

local gameModes = mw.text.split(args.gamemode, ',', true)
local gameModes = Array.parseCommaSeparatedString(args.gamemode)
Array.forEach(gameModes,
function(mode, index)
gameModes[index] = GameModeLookup.getName(mode) or ''
Expand All @@ -295,10 +295,10 @@ function CustomLeague:_getMaps()
local args = self.args

local maps = {}
for prefix, mapInput in Table.iter.pairsByPrefix(args, 'map', {strict = true}) do
for prefix, rawMapInput in Table.iter.pairsByPrefix(args, 'map', {strict = true}) do
local mode = String.isNotEmpty(args[prefix .. 'mode']) and MapMode.get({args[prefix .. 'mode']}) or nil

mapInput = mw.text.split(mapInput, '|', true)
local mapInput = Array.parseCommaSeparatedString(rawMapInput, '|')
local display, link

if String.isNotEmpty(args[prefix .. 'link']) then
Expand Down
10 changes: 5 additions & 5 deletions lua/wikis/ageofempires/Infobox/Person/Player/Custom.lua
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ function CustomInjector:parse(id, widgets)
elseif id == 'status' then
table.insert(widgets, Cell{
name = 'Years Active',
children = args.years_active and mw.text.split(args.years_active, ',') or {}
children = Array.parseCommaSeparatedString(args.years_active)
})
elseif id == 'region' then
return {}
Expand Down Expand Up @@ -256,9 +256,9 @@ function CustomPlayer:_getGames()

-- Games entered manually
local manualGames = args.games and Array.map(
mw.text.split(args.games, ','),
Array.parseCommaSeparatedString(args.games),
function(game)
return {game = Game.name{game = mw.text.trim(game), useDefault = false}}
return {game = Game.name{game = game, useDefault = false}}
end
) or {}
Array.extendWith(games, Array.filter(manualGames,
Expand All @@ -269,9 +269,9 @@ function CustomPlayer:_getGames()

-- Games entered manually as inactive
local manualInactiveGames = args.games_inactive and Array.map(
mw.text.split(args.games_inactive, ','),
Array.parseCommaSeparatedString(args.games_inactive),
function(game)
return {game = Game.name{game = mw.text.trim(game), useDefault = false}}
return {game = Game.name{game = game, useDefault = false}}
end
) or {}
Array.extendWith(games, Array.filter(manualInactiveGames,
Expand Down
8 changes: 4 additions & 4 deletions lua/wikis/ageofempires/Infobox/Team/Custom.lua
Original file line number Diff line number Diff line change
Expand Up @@ -67,11 +67,11 @@ end
function CustomTeam:_getGames()
local games = self:_queryGames()

local manualGames = self.args.games and Array.map(
mw.text.split(self.args.games, ','),
local manualGames = Array.map(
Array.parseCommaSeparatedString(self.args.games),
function(game)
return {game = GameLookup.getName(mw.text.trim(game))}
end) or {}
return {game = GameLookup.getName(game)}
end)

Array.extendWith(games, Array.filter(manualGames,
function(entry)
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/apexlegends/Infobox/League/Custom.lua
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ function CustomLeague:addToLpdb(lpdbData, args)
String.isEmpty(args.sponsor3) and
String.isNotEmpty(args.sponsor)
then
local sponsors = Table.map(mw.text.split(args.sponsor, '<br>', true), function(index, value)
local sponsors = Table.map(Array.parseCommaSeparatedString(args.sponsor, '<br>'), function(index, value)
return 'sponsor' .. index, value
end)
lpdbData.sponsors = mw.ext.LiquipediaDB.lpdb_create_json(sponsors)
Expand Down
8 changes: 3 additions & 5 deletions lua/wikis/apexlegends/Infobox/Map/Custom.lua
Original file line number Diff line number Diff line change
Expand Up @@ -97,11 +97,9 @@ end
---@param ringData string
---@return WidgetTableRow
function CustomMap:_createRingTableRow(ringData)
local cells = {}
for _, item in ipairs(mw.text.split(ringData, ',')) do
table.insert(cells, TableCell{children = {item}})
end
return TableRow{children = cells}
return TableRow{children = Array.map(Array.parseCommaSeparatedString(ringData), function(item)
return TableCell{children = {item}}
end)}
end

---@param args table
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/clashofclans/MatchGroup/Input/Custom.lua
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ function MapFunctions.readTimes(map)

for _, timeInput in Table.iter.pairsByPrefix(map, 'time') do
local timeFragments = Array.map(
Array.reverse(mw.text.split(timeInput, ':', true)),
Array.reverse(Array.parseCommaSeparatedString(timeInput, ':')),
function(number, index)
number = tonumber(number)
return number and ((60 ^ (index - 1)) * number) or number
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/commons/AgeCalculation.lua
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ local Date = Class.new(
self.location = location
self.isEmpty = false
self.isExact = true
local fields = mw.text.split(dateString, '-')
local fields = Array.parseCommaSeparatedString(dateString, '-')

self.year = tonumber(fields[1])
self.month = tonumber(fields[2])
Expand Down
5 changes: 1 addition & 4 deletions lua/wikis/commons/BroadcasterCard.lua
Original file line number Diff line number Diff line change
Expand Up @@ -67,10 +67,7 @@ function BroadcasterCard.create(frame)
title = Abbreviation.make{text = TBD, title = 'To Be Determined'}
else
-- Create a title from the position.
local positions = Array.map(
mw.text.split(position, '/'),
String.trim
)
local positions = Array.parseCommaSeparatedString(position, '/')
if args.b2 then
positions = Array.map(positions, BroadcasterCard._pluralisePosition)
end
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/commons/Count.lua
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ function Count.placements(args)

if String.isNotEmpty(args.placement) then
local placementConditions = ConditionTree(BooleanOperator.any)
Array.forEach(Array.map(mw.text.split(args.placement, ',', true), String.trim),
Array.forEach(Array.parseCommaSeparatedString(args.placement),
function(placementValue)
placementConditions:add{ConditionNode(ColumnName('placement'), Comparator.eq, placementValue)}
end
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/commons/Error/Display.lua
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ function ErrorDisplay.ClassicError(error)
end

local stackEntry = {content = frame}
local frameSplit = mw.text.split(frame, ':', true)
local frameSplit = Array.parseCommaSeparatedString(frame, ':')
if (frameSplit[1] == '[C]' or frameSplit[1] == '(tail call)') then
stackEntry.prefix = frameSplit[1]
stackEntry.content = mw.text.trim(table.concat(frameSplit, ':', 2))
Expand Down
5 changes: 1 addition & 4 deletions lua/wikis/commons/Faction.lua
Original file line number Diff line number Diff line change
Expand Up @@ -140,10 +140,7 @@ function Faction.readMultiFaction(input, options)
local singleFaction = Faction.read(input, options)
if singleFaction then return {singleFaction} end

local inputArray = Array.map(
mw.text.split(input, options.sep or '', true),
String.trim
)
local inputArray = Array.parseCommaSeparatedString(input, options.sep or '')

local factions = Array.map(inputArray, function(faction) return Faction.read(faction, options) end)

Expand Down
4 changes: 2 additions & 2 deletions lua/wikis/commons/GetMatchGroupCopyPaste.lua
Original file line number Diff line number Diff line change
Expand Up @@ -103,11 +103,11 @@ function CopyPaste._getHeader(headerCode, customHeader)
return '', false
end

local headerCodeArray = mw.text.split(string.gsub(headerCode, '$', '!'), '!')
local headerCodeArray = Array.parseCommaSeparatedString(string.gsub(headerCode, '$', '!'), '!')
local index = Logic.isEmpty(headerCodeArray[1]) and 2 or 1

local headerMessage = I18n.translate('brkts-header-' .. headerCodeArray[index], {round = headerCodeArray[index + 1]})
local header = mw.text.split(headerMessage, ',')[1]
local header = Array.parseCommaSeparatedString(headerMessage)[1]
header = '\n' .. '<!-- ' .. header .. ' -->'

return header, customHeader
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/commons/Infobox/Extension/PlacementStats.lua
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ function PlacementStats._fetchForTier(tier, baseConditions, placementData)

for _, placement in pairs(queryData) do
local count = tonumber(placement.count_placement)
local place = tonumber(mw.text.split(placement.placement or '', '-', true)[1])
local place = tonumber(Array.parseCommaSeparatedString(placement.placement, '-')[1])

placementData.tiers[tier].all = placementData.tiers[tier].all + count
placementData.totals.all = placementData.totals.all + count
Expand Down
7 changes: 4 additions & 3 deletions lua/wikis/commons/LeagueIcon.lua
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
local Lua = require('Module:Lua')

local LeagueIcon = {}
local Array = Lua.import('Module:Array')
local Class = Lua.import('Module:Class')
local Template = Lua.import('Module:Template')
local Logic = Lua.import('Module:Logic')
Expand Down Expand Up @@ -120,14 +121,14 @@ function LeagueIcon.getIconFromTemplate(args)

--if LeagueIconSmall template exists retrieve the icons from it
if String.isEmpty(icon) and String.isEmpty(iconDark) and stringOfExpandedTemplate then
local stringOfExpandedTemplateArray = mw.text.split(stringOfExpandedTemplate, 'File:')
local stringOfExpandedTemplateArray = Array.parseCommaSeparatedString(stringOfExpandedTemplate, 'File:')

--extract series icon from template:LeagueIconSmall
local iconArray = mw.text.split(stringOfExpandedTemplateArray[2] or '', '|')
local iconArray = Array.parseCommaSeparatedString(stringOfExpandedTemplateArray[2] or '', '|')
icon = iconArray[1]
--when Template:LeagueIconSmall has a darkmode icon retrieve that from the template too
if String.isEmpty(iconDark) then
local iconDarkArray = mw.text.split(stringOfExpandedTemplateArray[3] or '', '|')
local iconDarkArray = Array.parseCommaSeparatedString(stringOfExpandedTemplateArray[3] or '', '|')
iconDark = iconDarkArray[1]
end
elseif String.isEmpty(icon) then
Expand Down
4 changes: 2 additions & 2 deletions lua/wikis/commons/Links/Stream.lua
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ function StreamLinks.filterStreams(streamsInput)

local streams = {}
for rawHost, stream in Table.iter.spairs(streamsInput) do
if #(mw.text.split(rawHost, '_', true)) == 3 then
if #(Array.parseCommaSeparatedString(rawHost, '_')) == 3 then
local streamKey = StreamLinks.StreamKey(rawHost)
local platform = streamKey.platform
if not streams[platform] then
Expand Down Expand Up @@ -251,7 +251,7 @@ function StreamKey:new(tbl, languageCode, index)
---@cast tbl -StreamKey
platform = tbl
elseif type(tbl) == 'string' then
local components = mw.text.split(tbl, '_', true)
local components = Array.parseCommaSeparatedString(tbl, '_')
-- Input is in legacy format (eg. twitch2)
if #components == 1 then
platform, index = self:_fromLegacy(tbl)
Expand Down
9 changes: 5 additions & 4 deletions lua/wikis/commons/MatchGroup/Input/Util.lua
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ function MatchGroupInputUtil.readDate(dateString, dateFallbacks)
-- Extracts the '-4:00' out of <abbr data-tz="-4:00" title="Eastern Daylight Time (UTC-4)">EDT</abbr>
local timezoneOffset = dateString:match('data%-tz%=[\"\']([%d%-%+%:]+)[\"\']')
local timezoneId = dateString:match('>(%a-)<')
local matchDate = mw.text.split(dateString, '<', true)[1]:gsub('-', '')
local matchDate = Array.parseCommaSeparatedString(dateString, '<')[1]:gsub('-', '')
local isDateExact = String.contains(matchDate .. (timezoneOffset or ''), '[%+%-]')
local date = contentLanguage:formatDate('c', matchDate .. (timezoneOffset or ''))
return {
Expand Down Expand Up @@ -344,12 +344,13 @@ function MatchGroupInputUtil.readMvp(match, opponents)
local mvppoints = match.mvppoints or 1

-- Split the input
local players = mw.text.split(match.mvp, ',')
local players = Array.parseCommaSeparatedString(match.mvp)

-- parse the players to get their information
opponents = Logic.isNotDeepEmpty(opponents) and opponents or MatchGroupUtil.normalizeSubtype(match, 'opponent')
local parsedPlayers = Array.map(players, function(player, playerIndex)
local link = mw.ext.TeamLiquidIntegration.resolve_redirect(mw.text.split(player, '|')[1]):gsub(' ', '_')
local link = mw.ext.TeamLiquidIntegration.resolve_redirect(Array.parseCommaSeparatedString(player, '|')[1])
:gsub(' ', '_')
for _, opponent in ipairs(opponents) do
for _, lookUpPlayer in pairs(opponent.match2players or {}) do
if link == lookUpPlayer.name then
Expand All @@ -359,7 +360,7 @@ function MatchGroupInputUtil.readMvp(match, opponents)
end
end

local nameComponents = mw.text.split(player, '|')
local nameComponents = Array.parseCommaSeparatedString(player, '|')
return {
displayname = nameComponents[#nameComponents],
name = link,
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/commons/MatchGroup/Util/Starcraft.lua
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ end
---@param matchOpponents StarcraftStandardOpponent[]
---@return StarcraftMatchGroupUtilGameOpponent[]
function StarcraftMatchGroupUtil.computeGameOpponents(game, matchOpponents)
local modeParts = mw.text.split(game.mode or '', 'v')
local modeParts = Array.parseCommaSeparatedString(game.mode, 'v')

return Array.map(game.opponents, function(mapOpponent, opponentIndex)
local mode = modeParts[opponentIndex]
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/commons/MatchTicker/DisplayComponents.lua
Original file line number Diff line number Diff line change
Expand Up @@ -421,7 +421,7 @@ function Match:_expandHeader(inheritedHeader)
return
end

local headerArray = mw.text.split(inheritedHeader, '!')
local headerArray = Array.parseCommaSeparatedString(inheritedHeader, '!')

local index = 1
if String.isEmpty(headerArray[1]) then
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/commons/Mock/Lpdb.lua
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,7 @@ end
function mockLpdb._applyQuery(data, query)
if String.isNotEmpty(query) then
---@cast query -nil
local fields = Array.map(mw.text.split(query, ','), String.trim)
local fields = Array.parseCommaSeparatedString(query)

return Array.map(data, function(entry)
return Table.map(entry, function(field, value)
Expand Down
5 changes: 3 additions & 2 deletions lua/wikis/commons/Placement.lua
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

local Lua = require('Module:Lua')

local Array = Lua.import('Module:Array')
local Class = Lua.import('Module:Class')
local HtmlWidgets = Lua.import('Module:Widget/Html/All')
local Logic = Lua.import('Module:Logic')
Expand Down Expand Up @@ -119,7 +120,7 @@ function Placement.raw(placement)
local raw = {}

-- Nil check on input and split placement if joint
raw.placement = mw.text.split(string.lower(placement or ''), '-', true)
raw.placement = Array.parseCommaSeparatedString(string.lower(placement or ''), '-')

-- Identify appropriate background class
if PLACEMENT_CLASSES[raw.placement[1]] then
Expand All @@ -140,7 +141,7 @@ function Placement.raw(placement)
-- Intercept non-numeric placements for sorting and ordinal creation
if not MathUtil.isInteger(raw.placement[1]) then
raw.sort = CUSTOM_SORTS[raw.placement[1]] or CUSTOM_SORTS['']
raw.ordinal = mw.text.split(string.upper(placement or ''), '-', true)
raw.ordinal = Array.parseCommaSeparatedString(string.upper(placement or ''), '-')
else
raw.sort = raw.placement[1] .. (raw.placement[2] and ('-' .. raw.placement[2]) or '')
raw.ordinal = Placement._makeOrdinal(raw.placement)
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/commons/Player/Ext.lua
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ function PlayerExt.extractFromLink(name)
:gsub('%b[]', '')
name = mw.text.trim(name)

local pageName, displayName = unpack(mw.text.split(name, '|', true))
local pageName, displayName = unpack(Array.parseCommaSeparatedString(name, '|'))
pageName = Page.applyUnderScoresIfEnforced(pageName)
if displayName and displayName ~= '' then
return String.nilIfEmpty(pageName), displayName
Expand Down
12 changes: 5 additions & 7 deletions lua/wikis/commons/PortalPlayers.lua
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ end
---@return {[string]: {players: table[]?, nonPlayers: table[]?}}
function PortalPlayers:_getPlayers()
local games = String.isNotEmpty(self.args.game) and
Array.map(Array.map(mw.text.split(self.args.game, ',', true), String.trim), function (game)
Array.map(Array.parseCommaSeparatedString(self.args.game), function (game)
return '[[extradata_maingame::' .. game .. ']]'
end)
local gameConditions = games and ('(' .. table.concat(games, ' OR ') .. ')') or ''
Expand Down Expand Up @@ -146,14 +146,12 @@ end
---@param gameConditions string?
---@return string[], string[]
function PortalPlayers._getCountries(regionsInput, countriesInput, gameConditions)
local regionConditions = String.isNotEmpty(regionsInput) and
Array.map(Array.map(mw.text.split(regionsInput --[[@as string]], ',', true), String.trim), function (region)
return '[[region::' .. region .. ']]'
end) or {}
local regionConditions = Array.map(Array.parseCommaSeparatedString(regionsInput), function (region)
return '[[region::' .. region .. ']]'
end)

if String.isNotEmpty(countriesInput) then
---@cast countriesInput -nil
local countries = Array.map(mw.text.split(countriesInput, ',', true), String.trim)
local countries = Array.parseCommaSeparatedString(countriesInput)
if Table.isNotEmpty(countries) then
return countries, regionConditions
end
Expand Down
2 changes: 1 addition & 1 deletion lua/wikis/commons/PortalStatistics.lua
Original file line number Diff line number Diff line change
Expand Up @@ -1470,7 +1470,7 @@ function StatisticsPortal._isTableOrSplitOrDefault(input, default)
return default or {}
end
---@cast input -nil
return Array.map(mw.text.split(input, ',', true), String.trim)
return Array.parseCommaSeparatedString(input)
end


Expand Down
9 changes: 2 additions & 7 deletions lua/wikis/commons/PrizePool/Import.lua
Original file line number Diff line number Diff line change
Expand Up @@ -115,18 +115,13 @@ function Import._getConfig(args, placements)
placementsToSkip = tonumber(args.placementsToSkip),
matchGroupsSpec = TournamentStructure.readMatchGroupsSpec(args)
or TournamentStructure.currentPageSpec(),
groupElimStatuses = Array.map(
mw.text.split(args.groupElimStatuses or DEFAULT_ELIMINATION_STATUS, ','),
String.trim
),
groupElimStatuses = Array.parseCommaSeparatedString(args.groupElimStatuses or DEFAULT_ELIMINATION_STATUS),
groupScoreDelimiter = args.groupScoreDelimiter or GROUPSCORE_DELIMITER,
allGroupsUseWdl = Logic.readBool(args.allGroupsUseWdl),
stageImportLimits = processStagesConfig('importLimit', tonumber),
stagePlacementsToSkip = processStagesConfig('placementsToSkip', tonumber),
stageImportWinners = processStagesConfig('importWinners', Logic.readBoolOrNil),
stageGroupElimStatuses = processStagesConfig('groupElimStatuses', function(val)
return Array.map(mw.text.split(val, ','), String.trim)
end),
stageGroupElimStatuses = processStagesConfig('groupElimStatuses', Array.parseCommaSeparatedString),
shiftPlacementsBy = tonumber(args.shiftPlacementsBy) or 0,
}
end
Expand Down
Loading
Loading