From 00494da416fc8ccb725f9501652388dbeac279c9 Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Thu, 21 May 2026 09:54:11 +0900 Subject: [PATCH 1/6] ffa matchsummary components to widget3 --- .../Summary/Ffa/ContentItemContainer.lua | 64 +++++++------- .../Match/Summary/Ffa/CountdownIcon.lua | 20 ++--- .../Match/Summary/Ffa/GameCountdown.lua | 21 ++--- .../Widget/Match/Summary/Ffa/GameDetails.lua | 19 ++--- .../Match/Summary/Ffa/GamesSchedule.lua | 31 ++++--- .../Widget/Match/Summary/Ffa/Header.lua | 32 ++++--- .../Widget/Match/Summary/Ffa/MatchComment.lua | 17 ++-- .../Match/Summary/Ffa/MatchInformation.lua | 54 ++++++------ .../commons/Widget/Match/Summary/Ffa/Mvp.lua | 27 +++--- .../Widget/Match/Summary/Ffa/RankRange.lua | 19 ++--- .../commons/Widget/Match/Summary/Ffa/Tab.lua | 23 ++--- .../Widget/Match/Summary/Ffa/Table.lua | 21 ++--- .../Widget/Match/Summary/Ffa/TableHeader.lua | 21 ++--- .../Match/Summary/Ffa/TableHeaderCell.lua | 83 +++++++++---------- .../Widget/Match/Summary/Ffa/TableRow.lua | 21 ++--- .../Widget/Match/Summary/Ffa/TableRowCell.lua | 40 ++++----- .../Widget/Match/Summary/Ffa/Trophy.lua | 23 ++--- 17 files changed, 234 insertions(+), 302 deletions(-) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/ContentItemContainer.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/ContentItemContainer.lua index b668e4cc5a5..84be86d9583 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/ContentItemContainer.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/ContentItemContainer.lua @@ -8,58 +8,50 @@ local Lua = require('Module:Lua') local Array = Lua.import('Module:Array') -local Class = Lua.import('Module:Class') +local Logic = Lua.import('Module:Logic') -local Widget = Lua.import('Module:Widget') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Component = Lua.import('Module:Widget/Component') +local Html = Lua.import('Module:Widget/Html') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') ---@class MatchSummaryFfaContentItem ---@field icon Widget? ---@field title string? ----@field content (string|Html|Widget)? +---@field content Renderable? ----@class MatchSummaryFfaContentItemContainerParameters +---@class MatchSummaryFfaContentItemContainerProps ---@field collapsed boolean? ---@field collapsible boolean? ---@field contentClass string? ---@field title string? ---@field items MatchSummaryFfaContentItem[] ----@class MatchSummaryFfaContentItemContainer: Widget ----@operator call(table): MatchSummaryFfaContentItemContainer ----@field props MatchSummaryFfaContentItemContainerParameters -local MatchSummaryFfaContentItem = Class.new(Widget) -MatchSummaryFfaContentItem.defaultProps = { - collapsible = false, - collapsed = false, -} - ----@return Widget -function MatchSummaryFfaContentItem:render() - local hasContentClass = self.props.contentClass ~= nil - local contentContainer = HtmlWidgets.Div{ +---@param props MatchSummaryFfaContentItemContainerProps +---@return HtmlNode +local function MatchSummaryFfaContentItem(props) + local hasContentClass = props.contentClass ~= nil + local contentContainer = Html.Div{ classes = {'panel-content__container'}, attributes = { - ['data-js-battle-royale'] = self.props.collapsible and 'collapsible-container' or nil, + ['data-js-battle-royale'] = props.collapsible and 'collapsible-container' or nil, role = 'tabpanel', }, - children = HtmlWidgets.Ul{ - classes = {self.props.contentClass}, - children = Array.map(self.props.items, function(item) - return HtmlWidgets.Li{ - classes = hasContentClass and {self.props.contentClass .. '__list-item'} or nil, + children = Html.Ul{ + classes = {props.contentClass}, + children = Array.map(props.items, function(item) + return Html.Li{ + classes = hasContentClass and {props.contentClass .. '__list-item'} or nil, children = { - HtmlWidgets.Span{ - classes = hasContentClass and {self.props.contentClass .. '__icon'} or nil, + Html.Span{ + classes = hasContentClass and {props.contentClass .. '__icon'} or nil, children = item.icon, }, - HtmlWidgets.Span{ - classes = hasContentClass and {self.props.contentClass .. '__title'} or nil, + Html.Span{ + classes = hasContentClass and {props.contentClass .. '__title'} or nil, children = item.title, }, - HtmlWidgets.Div{ - classes = hasContentClass and {self.props.contentClass .. '__container'} or nil, + Html.Div{ + classes = hasContentClass and {props.contentClass .. '__container'} or nil, children = item.content, }, }, @@ -68,17 +60,17 @@ function MatchSummaryFfaContentItem:render() } } - if not self.props.collapsible then + if not Logic.readBool(props.collapsible) then return contentContainer end - return HtmlWidgets.Div{ - classes = {'panel-content__collapsible', self.props.collapsed and 'is--collapsed' or nil}, + return Html.Div{ + classes = {'panel-content__collapsible', Logic.readBool(props.collapsed) and 'is--collapsed' or nil}, attributes = { ['data-js-battle-royale'] = 'collapsible', }, children = { - HtmlWidgets.H5{ + Html.H5{ classes = {'panel-content__button'}, attributes = { ['data-js-battle-royale'] = 'collapsible-button', @@ -89,7 +81,7 @@ function MatchSummaryFfaContentItem:render() iconName = 'collapse', additionalClasses = {'panel-content__button-icon'}, }, - HtmlWidgets.Span{children = self.props.title}, + Html.Span{children = props.title}, } }, contentContainer, @@ -97,4 +89,4 @@ function MatchSummaryFfaContentItem:render() } end -return MatchSummaryFfaContentItem +return Component.component(MatchSummaryFfaContentItem) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/CountdownIcon.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/CountdownIcon.lua index 3aa83cf3cfd..dc15ff89eab 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/CountdownIcon.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/CountdownIcon.lua @@ -7,31 +7,25 @@ local Lua = require('Module:Lua') -local Class = Lua.import('Module:Class') - +local Component = Lua.import('Module:Widget/Component') local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') -local Widget = Lua.import('Module:Widget') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') ----@class MatchSummaryFfaCountdownIcon: Widget ----@operator call(table): MatchSummaryFfaCountdownIcon ----@field props {game: FFAMatchGroupUtilGame, additionalClasses: string[]?} -local MatchSummaryFfaCountdownIcon = Class.new(Widget) - local PHASE_ICONS = { finished = {iconName = 'concluded', color = 'icon--green'}, ongoing = {iconName = 'live', color = 'icon--red'}, upcoming = {iconName = 'upcomingandongoing'}, } ----@return Widget -function MatchSummaryFfaCountdownIcon:render() - local iconData = PHASE_ICONS[MatchGroupUtil.computeMatchPhase(self.props.game)] or {} +---@param props {game: FFAMatchGroupUtilMatch|FFAMatchGroupUtilGame, additionalClasses: string[]?} +---@return Renderable +local function MatchSummaryFfaCountdownIcon(props) + local iconData = PHASE_ICONS[MatchGroupUtil.computeMatchPhase(props.game)] or {} return IconWidget{ iconName = iconData.iconName, color = iconData.color, - additionalClasses = self.props.additionalClasses + additionalClasses = props.additionalClasses } end -return MatchSummaryFfaCountdownIcon +return Component.component(MatchSummaryFfaCountdownIcon) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/GameCountdown.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/GameCountdown.lua index 7a5c8685f85..256828656bb 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/GameCountdown.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/GameCountdown.lua @@ -7,23 +7,18 @@ local Lua = require('Module:Lua') -local Class = Lua.import('Module:Class') local Countdown = Lua.import('Module:Countdown') local Date = Lua.import('Module:Date/Ext') local Table = Lua.import('Module:Table') local VodLink = Lua.import('Module:VodLink') -local Widget = Lua.import('Module:Widget') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Component = Lua.import('Module:Widget/Component') +local Html = Lua.import('Module:Widget/Html') ----@class MatchSummaryFfaGameCountdown: Widget ----@operator call(table): MatchSummaryFfaGameCountdown ----@field props {game: FFAMatchGroupUtilGame?} -local MatchSummaryFfaGameCountdown = Class.new(Widget) - ----@return Widget? -function MatchSummaryFfaGameCountdown:render() - local game = self.props.game +---@param props {game: FFAMatchGroupUtilMatch|FFAMatchGroupUtilGame?} +---@return HtmlNode? +local function MatchSummaryFfaGameCountdown(props) + local game = props.game if not game then return nil end @@ -40,7 +35,7 @@ function MatchSummaryFfaGameCountdown:render() rawdatetime = (not game.dateIsExact) or game.winner ~= nil }) - return HtmlWidgets.Div{ + return Html.Div{ classes = {'match-countdown-block'}, children = { Countdown.create(streamParameters), @@ -49,4 +44,4 @@ function MatchSummaryFfaGameCountdown:render() } end -return MatchSummaryFfaGameCountdown +return Component.component(MatchSummaryFfaGameCountdown) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/GameDetails.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/GameDetails.lua index 1b7e976a428..a3566a88799 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/GameDetails.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/GameDetails.lua @@ -8,28 +8,23 @@ local Lua = require('Module:Lua') local Array = Lua.import('Module:Array') -local Class = Lua.import('Module:Class') local Logic = Lua.import('Module:Logic') local Page = Lua.import('Module:Page') local DisplayHelper = Lua.import('Module:MatchGroup/Display/Helper') -local Widget = Lua.import('Module:Widget') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Component = Lua.import('Module:Widget/Component') +local HtmlWidgets = Lua.import('Module:Widget/Html') local ContentItemContainer = Lua.import('Module:Widget/Match/Summary/Ffa/ContentItemContainer') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') local CountdownIcon = Lua.import('Module:Widget/Match/Summary/Ffa/CountdownIcon') local GameCountdown = Lua.import('Module:Widget/Match/Summary/Ffa/GameCountdown') local WidgetUtil = Lua.import('Module:Widget/Util') ----@class MatchSummaryFfaGameDetails: Widget ----@operator call(table): MatchSummaryFfaGameDetails ----@field props {game: FFAMatchGroupUtilGame} -local MatchSummaryFfaGameDetails = Class.new(Widget) - ----@return Widget -function MatchSummaryFfaGameDetails:render() - local game = self.props.game +---@param props {game: FFAMatchGroupUtilGame} +---@return VNode +local function MatchSummaryFfaGameDetails(props) + local game = props.game assert(game, 'No game provided') local casters = game.extradata.casters and DisplayHelper.createCastersDisplay(game.extradata.casters) or nil @@ -58,4 +53,4 @@ function MatchSummaryFfaGameDetails:render() )} end -return MatchSummaryFfaGameDetails +return Component.component(MatchSummaryFfaGameDetails) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/GamesSchedule.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/GamesSchedule.lua index 625ae0529fa..3fb18c1533b 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/GamesSchedule.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/GamesSchedule.lua @@ -8,28 +8,25 @@ local Lua = require('Module:Lua') local Array = Lua.import('Module:Array') -local Class = Lua.import('Module:Class') local DateExt = Lua.import('Module:Date/Ext') local Operator = Lua.import('Module:Operator') -local Widget = Lua.import('Module:Widget') +local Component = Lua.import('Module:Widget/Component') local ContentItemContainer = Lua.import('Module:Widget/Match/Summary/Ffa/ContentItemContainer') local CountdownIcon = Lua.import('Module:Widget/Match/Summary/Ffa/CountdownIcon') local GameCountdown = Lua.import('Module:Widget/Match/Summary/Ffa/GameCountdown') ----@class MatchSummaryFfaGamesSchedule: Widget ----@operator call(table): MatchSummaryFfaGamesSchedule ----@field props {match: FFAMatchGroupUtilMatch} -local MatchSummaryFfaGamesSchedule = Class.new(Widget) +local MatchSummaryFfaGamesSchedule = {} ----@return Widget? -function MatchSummaryFfaGamesSchedule:render() - local scheduleItems = self.props.match.games or {} - local showMatchDate = self:gamesHaveDifferentDates() - if showMatchDate and DateExt.isDefaultTimestamp(self.props.match.date) then +---@param props {match: FFAMatchGroupUtilMatch} +---@return VNode? +function MatchSummaryFfaGamesSchedule.render(props) + local scheduleItems = props.match.games or {} + local showMatchDate = MatchSummaryFfaGamesSchedule._gamesHaveDifferentDates(props.match) + if showMatchDate and DateExt.isDefaultTimestamp(props.match.date) then return nil elseif showMatchDate then - scheduleItems = {self.props.match} + scheduleItems = {props.match} end if #scheduleItems == 0 then @@ -48,10 +45,12 @@ function MatchSummaryFfaGamesSchedule:render() } end +---@private +---@param match FFAMatchGroupUtilMatch ---@return boolean -function MatchSummaryFfaGamesSchedule:gamesHaveDifferentDates() - local dates = Array.map(self.props.match.games or {}, Operator.property('date')) - return Array.all(dates, function(date) return date == self.props.match.date end) +function MatchSummaryFfaGamesSchedule._gamesHaveDifferentDates(match) + local dates = Array.map(match.games or {}, Operator.property('date')) + return Array.all(dates, function(date) return date == match.date end) end -return MatchSummaryFfaGamesSchedule +return Component.component(MatchSummaryFfaGamesSchedule.render) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua index d44de734326..9db1cb3ae6b 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua @@ -10,34 +10,30 @@ local Lua = require('Module:Lua') local Array = Lua.import('Module:Array') local Class = Lua.import('Module:Class') -local Widget = Lua.import('Module:Widget') +local Component = Lua.import('Module:Widget/Component') local WidgetUtil = Lua.import('Module:Widget/Util') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') local CountdownIcon = Lua.import('Module:Widget/Match/Summary/Ffa/CountdownIcon') ----@class MatchSummaryFfaHeader: Widget ----@operator call(table): MatchSummaryFfaHeader ----@field props {matchId: string, games: FFAMatchGroupUtilGame[]} -local MatchSummaryFfaHeader = Class.new(Widget) - ----@return Widget -function MatchSummaryFfaHeader:render() - assert(self.props.matchId, 'No matchId provided') - assert(type(self.props.games) == 'table', 'No games provided') +---@param props {matchId: string, games: FFAMatchGroupUtilGame[]} +---@return HtmlNode +local function MatchSummaryFfaHeader(props) + assert(props.matchId, 'No matchId provided') + assert(type(props.games) == 'table', 'No games provided') local function headerItem(title, icon, idx) - return HtmlWidgets.Li{ + return Html.Li{ classes = {'panel-tabs__list-item'}, attributes = { ['data-js-battle-royale'] = 'panel-tab', - ['data-js-battle-royale-content-target-id'] = self.props.matchId .. 'panel' .. idx, + ['data-js-battle-royale-content-target-id'] = props.matchId .. 'panel' .. idx, role = 'tab', tabindex = 0, }, children = { icon, - HtmlWidgets.H4{ + Html.H4{ classes = {'panel-tabs__title'}, children = title, }, @@ -47,19 +43,19 @@ function MatchSummaryFfaHeader:render() local standingsIcon = IconWidget{iconName = 'standings', additionalClasses = {'panel-tabs__list-icon'}} - return HtmlWidgets.Div{ + return Html.Div{ classes = {'panel-tabs'}, attributes = { role = 'tabpanel', }, - children = HtmlWidgets.Ul{ + children = Html.Ul{ classes = {'panel-tabs__list'}, attributes = { role = 'tablist', }, children = WidgetUtil.collect( headerItem('Overall standings', standingsIcon, 0), - Array.map(self.props.games, function (game, idx) + Array.map(props.games, function (game, idx) return headerItem('Game '.. idx, CountdownIcon{game = game, additionalClasses = {'panel-tabs__list-icon'}}, idx) end) ) @@ -67,4 +63,4 @@ function MatchSummaryFfaHeader:render() } end -return MatchSummaryFfaHeader +return Component.component(MatchSummaryFfaHeader) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchComment.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchComment.lua index f66d3b2eef0..afc54a39a62 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchComment.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchComment.lua @@ -7,22 +7,17 @@ local Lua = require('Module:Lua') -local Class = Lua.import('Module:Class') local Logic = Lua.import('Module:Logic') +local Component = Lua.import('Module:Widget/Component') local ContentItemContainer = Lua.import('Module:Widget/Match/Summary/Ffa/ContentItemContainer') local HtmlWidgets = Lua.import('Module:Widget/Html/All') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') -local Widget = Lua.import('Module:Widget') ----@class MatchSummaryFfaMatchComment: Widget ----@operator call(table): MatchSummaryFfaHeader ----@field props {match: FFAMatchGroupUtilMatch} -local MatchSummaryFfaMatchComment = Class.new(Widget) - ----@return Widget? -function MatchSummaryFfaMatchComment:render() - local comment = self.props.match.comment +---@param props {match: FFAMatchGroupUtilMatch} +---@return VNode? +local function MatchSummaryFfaMatchComment(props) + local comment = props.match.comment if Logic.isEmpty(comment) then return nil end return ContentItemContainer{contentClass = 'panel-content__game-schedule', items = {{ icon = IconWidget{iconName = 'comment'}, @@ -30,4 +25,4 @@ function MatchSummaryFfaMatchComment:render() }}} end -return MatchSummaryFfaMatchComment +return Component.component(MatchSummaryFfaMatchComment) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchInformation.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchInformation.lua index 83a7bcd19bc..7f0c4d9bc09 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchInformation.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchInformation.lua @@ -8,29 +8,26 @@ local Lua = require('Module:Lua') local Array = Lua.import('Module:Array') -local Class = Lua.import('Module:Class') local Logic = Lua.import('Module:Logic') local DisplayHelper = Lua.import('Module:MatchGroup/Display/Helper') +local Component = Lua.import('Module:Widget/Component') local ContentItemContainer = Lua.import('Module:Widget/Match/Summary/Ffa/ContentItemContainer') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') local Link = Lua.import('Module:Widget/Basic/Link') -local Widget = Lua.import('Module:Widget') local WidgetUtil = Lua.import('Module:Widget/Util') ----@class MatchSummaryFfaMatchInformation: Widget ----@operator call(table): MatchSummaryFfaMatchInformation ----@field props FFAMatchGroupUtilMatch -local MatchSummaryFfaMatchInformation = Class.new(Widget) +local MatchSummaryFfaMatchInformation = {} ----@return Widget? -function MatchSummaryFfaMatchInformation:render() +---@param props FFAMatchGroupUtilMatch +---@return VNode? +function MatchSummaryFfaMatchInformation.render(props) local items = WidgetUtil.collect( - self:_getMvpItem(), - self:_getCasterItem(), - self:_getCommentItem() + MatchSummaryFfaMatchInformation._getMvpItem(props.extradata.mvp), + MatchSummaryFfaMatchInformation._getCasterItem(props.extradata.casters), + MatchSummaryFfaMatchInformation._getCommentItem(props.comment) ) if #items == 0 then return end return ContentItemContainer{ @@ -43,27 +40,32 @@ function MatchSummaryFfaMatchInformation:render() end ---@private +---@param comment string? ---@return MatchSummaryFfaContentItem? -function MatchSummaryFfaMatchInformation:_getCommentItem() - local comment = self.props.comment +function MatchSummaryFfaMatchInformation._getCommentItem(comment) if not comment then return end return { icon = IconWidget{iconName = 'comment'}, - content = HtmlWidgets.Span{children = comment}, + content = Html.Span{children = comment}, } end ---@private +---@param mvp {players: MatchGroupMvpPlayer[], points: integer?}? ---@return MatchSummaryFfaContentItem? -function MatchSummaryFfaMatchInformation:_getMvpItem() - local mvp = self.props.extradata.mvp - if Logic.isEmpty(mvp) then return - elseif Logic.isEmpty(mvp.players) then return end +function MatchSummaryFfaMatchInformation:_getMvpItem(mvp) + if Logic.isEmpty(mvp) then + return + end + ---@cast mvp -nil + if Logic.isEmpty(mvp.players) then + return + end local points = tonumber(mvp.points) local players = Array.map(mvp.players, function(inputPlayer) local player = type(inputPlayer) ~= 'table' and {name = inputPlayer, displayname = inputPlayer} or inputPlayer - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { Link{link = player.name, children = player.displayname}, player.comment and ' (' .. player.comment .. ')' or nil }} @@ -71,7 +73,7 @@ function MatchSummaryFfaMatchInformation:_getMvpItem() return { icon = IconWidget{iconName = 'mvp', color = 'bright-sun-0-text', size = '0.875rem'}, title = 'MVP:', - content = HtmlWidgets.Span{children = Array.extend( + content = Html.Span{children = Array.extend( players, points and points > 1 and (' (' .. points .. ' pts)') or nil )} @@ -79,18 +81,18 @@ function MatchSummaryFfaMatchInformation:_getMvpItem() end ---@private +---@param rawCasters {name:string, displayName: string, flag: string?}[]? ---@return MatchSummaryFfaContentItem? -function MatchSummaryFfaMatchInformation:_getCasterItem() - local rawCasters = self.props.extradata.casters +function MatchSummaryFfaMatchInformation:_getCasterItem(rawCasters) if Logic.isEmpty(rawCasters) then return end - + ---@cast rawCasters -nil local casters = DisplayHelper.createCastersDisplay(rawCasters) if #casters == 0 then return end return { icon = IconWidget{iconName = 'casters', size = '0.875rem', hover = 'Caster' .. (#casters > 1 and 's' or '')}, - content = HtmlWidgets.Span{children = Array.interleave(casters, ', ')} + content = Html.Span{children = Array.interleave(casters, ', ')} } end -return MatchSummaryFfaMatchInformation +return Component.component(MatchSummaryFfaMatchInformation.render) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/Mvp.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/Mvp.lua index 8b3cc9789fd..59a8b90c25c 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/Mvp.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/Mvp.lua @@ -8,30 +8,25 @@ local Lua = require('Module:Lua') local Array = Lua.import('Module:Array') -local Class = Lua.import('Module:Class') local Logic = Lua.import('Module:Logic') +local Component = Lua.import('Module:Widget/Component') local ContentItemContainer = Lua.import('Module:Widget/Match/Summary/Ffa/ContentItemContainer') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') local Link = Lua.import('Module:Widget/Basic/Link') -local Widget = Lua.import('Module:Widget') ----@class MatchSummaryFfaMvp: Widget ----@operator call(table): MatchSummaryFfaHeader ----@field props {players: MatchGroupMvpPlayer[], points: integer} -local MatchSummaryFfaMvp = Class.new(Widget) - ----@return Widget? -function MatchSummaryFfaMvp:render() - if Logic.isEmpty(self.props.players) then +---@param props {players: MatchGroupMvpPlayer[], points: integer} +---@return VNode? +local function MatchSummaryFfaMvp(props) + if Logic.isEmpty(props.players) then return nil end - local points = tonumber(self.props.points) - local players = Array.map(self.props.players, function(inputPlayer) + local points = tonumber(props.points) + local players = Array.map(props.players, function(inputPlayer) local player = type(inputPlayer) ~= 'table' and {name = inputPlayer, displayname = inputPlayer} or inputPlayer - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { Link{link = player.name, children = player.displayname}, player.comment and ' (' .. player.comment .. ')' or nil }} @@ -40,11 +35,11 @@ function MatchSummaryFfaMvp:render() return ContentItemContainer{contentClass = 'panel-content__game-schedule', items = {{ icon = IconWidget{iconName = 'mvp', color = 'bright-sun-0-text', size = '0.875rem'}, title = 'MVP:', - content = HtmlWidgets.Span{children = Array.extend( + content = Html.Span{children = Array.extend( players, points and points > 1 and (' (' .. points .. ' pts)') or nil )}, }}} end -return MatchSummaryFfaMvp +return Component.component(MatchSummaryFfaMvp) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/RankRange.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/RankRange.lua index a92f348d136..7d1f90bca39 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/RankRange.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/RankRange.lua @@ -7,18 +7,15 @@ local Lua = require('Module:Lua') -local Class = Lua.import('Module:Class') +local Array = Lua.import('Module:Array') local Ordinal = Lua.import('Module:Ordinal') -local Widget = Lua.import('Module:Widget') +local Component = Lua.import('Module:Widget/Component') ----@class MatchSummaryFfaRankRange: Widget ----@operator call(table): MatchSummaryFfaRankRange -local MatchSummaryFfaRankRange = Class.new(Widget) - ----@return string -function MatchSummaryFfaRankRange:render() - local placementStart, placementEnd = self.props.rankStart, self.props.rankEnd +---@param props {rankStart: integer?, rankEnd: integer?} +---@return string[] +local function MatchSummaryFfaRankRange(props) + local placementStart, placementEnd = props.rankStart, props.rankEnd local places = {} if placementStart then @@ -29,7 +26,7 @@ function MatchSummaryFfaRankRange:render() table.insert(places, Ordinal.toOrdinal(placementEnd)) end - return table.concat(places, ' - ') + return Array.interleave(places, ' - ') end -return MatchSummaryFfaRankRange +return Component.component(MatchSummaryFfaRankRange) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/Tab.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/Tab.lua index 02b9772e161..2d563986ca2 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/Tab.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/Tab.lua @@ -7,25 +7,20 @@ local Lua = require('Module:Lua') -local Class = Lua.import('Module:Class') +local Component = Lua.import('Module:Widget/Component') +local Html = Lua.import('Module:Widget/Html') -local Widget = Lua.import('Module:Widget') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') - ----@class MatchSummaryFfaTab: Widget ----@operator call(table): MatchSummaryFfaTab -local MatchSummaryFfaTab = Class.new(Widget) - ----@return Widget -function MatchSummaryFfaTab:render() - return HtmlWidgets.Div{ +---@param props {matchId: string, idx: integer, children?: Renderable|Renderable[]} +---@return HtmlNode +local function MatchSummaryFfaTab(props) + return Html.Div{ classes = {'panel-content'}, attributes = { ['data-js-battle-royale'] = 'panel-content', - id = self.props.matchId .. 'panel' .. self.props.idx, + id = props.matchId .. 'panel' .. props.idx, }, - children = self.props.children, + children = props.children, } end -return MatchSummaryFfaTab +return Component.component(MatchSummaryFfaTab) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/Table.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/Table.lua index a619cd7c12f..058bf9bdd78 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/Table.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/Table.lua @@ -7,24 +7,19 @@ local Lua = require('Module:Lua') -local Class = Lua.import('Module:Class') +local Component = Lua.import('Module:Widget/Component') +local Html = Lua.import('Module:Widget/Html') -local Widget = Lua.import('Module:Widget') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') - ----@class MatchSummaryFfaTable: Widget ----@operator call(table): MatchSummaryFfaTable -local MatchSummaryFfaTable = Class.new(Widget) - ----@return Widget -function MatchSummaryFfaTable:render() - return HtmlWidgets.Div{ +---@param props {children?: Renderable|Renderable[]} +---@return HtmlNode +local function MatchSummaryFfaTable(props) + return Html.Div{ classes = {'panel-table'}, attributes = { ['data-js-battle-royale'] = 'table', }, - children = self.props.children, + children = props.children, } end -return MatchSummaryFfaTable +return Component.component(MatchSummaryFfaTable) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeader.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeader.lua index 80de0350e4d..f11bdc7bd43 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeader.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeader.lua @@ -7,24 +7,19 @@ local Lua = require('Module:Lua') -local Class = Lua.import('Module:Class') +local Component = Lua.import('Module:Widget/Component') +local Html = Lua.import('Module:Widget/Html') -local Widget = Lua.import('Module:Widget') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') - ----@class MatchSummaryFfaTableHeader: Widget ----@operator call(table): MatchSummaryFfaTableHeader -local MatchSummaryFfaTableHeader = Class.new(Widget) - ----@return Widget -function MatchSummaryFfaTableHeader:render() - return HtmlWidgets.Div{ +---@param props {children?: Renderable|Renderable[]} +---@return HtmlNode +function MatchSummaryFfaTableHeader(props) + return Html.Div{ classes = {'panel-table__row', 'row--header'}, attributes = { ['data-js-battle-royale'] = 'header-row' }, - children = self.props.children + children = props.children } end -return MatchSummaryFfaTableHeader +return Component.component(MatchSummaryFfaTableHeader) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeaderCell.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeaderCell.lua index 06541ea43f1..3ada431e7ad 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeaderCell.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeaderCell.lua @@ -7,57 +7,56 @@ local Lua = require('Module:Lua') -local Class = Lua.import('Module:Class') - -local Widget = Lua.import('Module:Widget') +local Component = Lua.import('Module:Widget/Component') local WidgetUtil = Lua.import('Module:Widget/Util') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') ----@class MatchSummaryFfaTableHeaderCell: Widget ----@operator call(table): MatchSummaryFfaTableHeaderCell -local MatchSummaryFfaTableHeaderCell = Class.new(Widget) +---@class MatchSummaryFfaTableHeaderCellProps +---@field class? string +---@field sortType? string +---@field sortable? boolean +---@field icon? string +---@field mobileValue? Renderable|Renderable[] +---@field value? Renderable|Renderable[] ----@return Widget? -function MatchSummaryFfaTableHeaderCell:render() - local isSortable = self.props.sortable +---@param props MatchSummaryFfaTableHeaderCellProps +---@return HtmlNode +local function MatchSummaryFfaTableHeaderCell(props) + local isSortable = props.sortable - return HtmlWidgets.Div{ - classes = {'panel-table__cell', self.props.class}, + return Html.Div{ + classes = {'panel-table__cell', props.class}, attributes = { - ['data-sort-type'] = isSortable and self.props.sortType or nil, + ['data-sort-type'] = isSortable and props.sortType or nil, }, - children = { - HtmlWidgets.Div{ - classes = {'panel-table__cell-grouped'}, - children = WidgetUtil.collect( - self.props.icon and IconWidget{ - iconName = self.props.icon, - additionalClasses = {'panel-table__cell-icon'} - } or nil, - HtmlWidgets.Span{ - classes = {self.props.mobileValue and 'd-none d-md-block' or nil}, - children = self.props.value - }, - self.props.mobileValue and HtmlWidgets.Span{ - classes = {'d-block d-md-none'}, - children = self.props.mobileValue - } or nil, - isSortable and HtmlWidgets.Div{ - classes = {'panel-table__sort'}, - children = { - IconWidget{ - iconName = 'sort', - attributes = { - ['data-js-battle-royale'] = 'sort-icon' - } - }, + children = Html.Div{ + classes = {'panel-table__cell-grouped'}, + children = WidgetUtil.collect( + props.icon and IconWidget{ + iconName = props.icon, + additionalClasses = {'panel-table__cell-icon'} + } or nil, + Html.Span{ + classes = {props.mobileValue and 'd-none d-md-block' or nil}, + children = props.value + }, + props.mobileValue and Html.Span{ + classes = {'d-block d-md-none'}, + children = props.mobileValue + } or nil, + isSortable and Html.Div{ + classes = {'panel-table__sort'}, + children = IconWidget{ + iconName = 'sort', + attributes = { + ['data-js-battle-royale'] = 'sort-icon' } - } or nil - ) - } + }, + } or nil + ) } } end -return MatchSummaryFfaTableHeaderCell +return Component.component(MatchSummaryFfaTableHeaderCell) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRow.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRow.lua index ff346afe732..be30da0d905 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRow.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRow.lua @@ -7,24 +7,19 @@ local Lua = require('Module:Lua') -local Class = Lua.import('Module:Class') +local Component = Lua.import('Module:Widget/Component') +local Html = Lua.import('Module:Widget/Html') -local Widget = Lua.import('Module:Widget') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') - ----@class MatchSummaryFfaTableRow: Widget ----@operator call(table): MatchSummaryFfaTableRow -local MatchSummaryFfaTableRow = Class.new(Widget) - ----@return Widget -function MatchSummaryFfaTableRow:render() - return HtmlWidgets.Div{ +---@param props {children?: Renderable|Renderable[]} +---@return HtmlNode +local function MatchSummaryFfaTableRow(props) + return Html.Div{ classes = {'panel-table__row'}, attributes = { ['data-js-battle-royale'] = 'row' }, - children = self.props.children + children = props.children } end -return MatchSummaryFfaTableRow +return Component.component(MatchSummaryFfaTableRow) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRowCell.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRowCell.lua index 5d05c7f0418..f1e1a413c8b 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRowCell.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRowCell.lua @@ -7,32 +7,32 @@ local Lua = require('Module:Lua') -local Class = Lua.import('Module:Class') +local Component = Lua.import('Module:Widget/Component') +local Html = Lua.import('Module:Widget/Html') -local Widget = Lua.import('Module:Widget') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +---@class MatchSummaryFfaTableRowCellProps +---@field class? string +---@field sortable? boolean +---@field sortType? string +---@field sortValue? string|number +---@field value? Renderable|Renderable[] ----@class MatchSummaryFfaTableRowCell: Widget ----@operator call(table): MatchSummaryFfaTableRowCell -local MatchSummaryFfaTableRowCell = Class.new(Widget) +---@param props MatchSummaryFfaTableRowCellProps +---@return HtmlNode +local function MatchSummaryFfaTableRowCell(props) + local isSortable = props.sortable ----@return Widget? -function MatchSummaryFfaTableRowCell:render() - local isSortable = self.props.sortable - - return HtmlWidgets.Div{ - classes = {'panel-table__cell', self.props.class}, + return Html.Div{ + classes = {'panel-table__cell', props.class}, attributes = { - ['data-sort-type'] = isSortable and self.props.sortType or nil, - ['data-sort-val'] = isSortable and self.props.sortValue or nil, + ['data-sort-type'] = isSortable and props.sortType or nil, + ['data-sort-val'] = isSortable and props.sortValue or nil, }, - children = { - HtmlWidgets.Div{ - classes = {'panel-table__cell-grouped'}, - children = self.props.value - } + children = Html.Div{ + classes = {'panel-table__cell-grouped'}, + children = props.value } } end -return MatchSummaryFfaTableRowCell +return Component.component(MatchSummaryFfaTableRowCell) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/Trophy.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/Trophy.lua index e2b4ef76bee..5a0471c20db 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/Trophy.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/Trophy.lua @@ -8,18 +8,10 @@ local Lua = require('Module:Lua') local Array = Lua.import('Module:Array') -local Class = Lua.import('Module:Class') -local Widget = Lua.import('Module:Widget') +local Component = Lua.import('Module:Widget/Component') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') ----@class MatchSummaryFfaTrophy: Widget ----@operator call(table): MatchSummaryFfaTrophy -local MatchSummaryFfaTrophy = Class.new(Widget) -MatchSummaryFfaTrophy.defaultProps = { - additionalClasses = {}, -} - local TROPHY_COLOR = { 'icon--gold', 'icon--silver', @@ -27,15 +19,16 @@ local TROPHY_COLOR = { 'icon--copper', } ----@return Widget? -function MatchSummaryFfaTrophy:render() - if not TROPHY_COLOR[self.props.place] then - return nil +---@param props {place: integer, additionalClasses?: string[]} +---@return HtmlNode? +local function MatchSummaryFfaTrophy(props) + if not TROPHY_COLOR[props.place] then + return end return IconWidget{ iconName = 'firstplace', - additionalClasses = Array.extend(self.props.additionalClasses, TROPHY_COLOR[self.props.place]) + additionalClasses = Array.extend(props.additionalClasses, TROPHY_COLOR[props.place]) } end -return MatchSummaryFfaTrophy +return Component.component(MatchSummaryFfaTrophy) From 41ddb8a1a53347c2df1b803c735ec2994a36e987 Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Fri, 12 Jun 2026 11:41:04 +0900 Subject: [PATCH 2/6] update type annotations --- lua/wikis/ageofempires/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/apexlegends/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/arenafps/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/autochess/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/callofduty/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/commons/GameSummary.lua | 2 +- lua/wikis/commons/MatchSummary/Base/Ffa.lua | 4 ++-- lua/wikis/commons/MatchSummary/Starcraft/Ffa.lua | 6 +++--- lua/wikis/counterstrike/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/fortnite/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/freefire/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/geoguessr/MatchSummary/Ffa.lua | 6 +++--- lua/wikis/halo/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/hearthstone/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/lab/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/naraka/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/pubg/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/pubgmobile/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/tft/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/thefinals/MatchSummary/Ffa.lua | 6 +++--- lua/wikis/trackmania/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/underlords/MatchSummary/Ffa.lua | 4 ++-- lua/wikis/warcraft/MatchSummary/Ffa.lua | 6 +++--- 23 files changed, 49 insertions(+), 49 deletions(-) diff --git a/lua/wikis/ageofempires/MatchSummary/Ffa.lua b/lua/wikis/ageofempires/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/ageofempires/MatchSummary/Ffa.lua +++ b/lua/wikis/ageofempires/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/apexlegends/MatchSummary/Ffa.lua b/lua/wikis/apexlegends/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/apexlegends/MatchSummary/Ffa.lua +++ b/lua/wikis/apexlegends/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/arenafps/MatchSummary/Ffa.lua b/lua/wikis/arenafps/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/arenafps/MatchSummary/Ffa.lua +++ b/lua/wikis/arenafps/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/autochess/MatchSummary/Ffa.lua b/lua/wikis/autochess/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/autochess/MatchSummary/Ffa.lua +++ b/lua/wikis/autochess/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/callofduty/MatchSummary/Ffa.lua b/lua/wikis/callofduty/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/callofduty/MatchSummary/Ffa.lua +++ b/lua/wikis/callofduty/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/commons/GameSummary.lua b/lua/wikis/commons/GameSummary.lua index 818e2cf4617..df48b60cc38 100644 --- a/lua/wikis/commons/GameSummary.lua +++ b/lua/wikis/commons/GameSummary.lua @@ -17,8 +17,8 @@ local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') ---@param props {bracketId: string, matchId: string, gameIdx: integer} ---@return Html function CustomGameSummary.getGameByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch local game = match.games[props.gameIdx] assert(game, 'Error Game ID ' .. tostring(props.gameIdx) .. ' not found') diff --git a/lua/wikis/commons/MatchSummary/Base/Ffa.lua b/lua/wikis/commons/MatchSummary/Base/Ffa.lua index b8b1c477dc2..33d9d04bbf4 100644 --- a/lua/wikis/commons/MatchSummary/Base/Ffa.lua +++ b/lua/wikis/commons/MatchSummary/Base/Ffa.lua @@ -418,7 +418,7 @@ end ---@param match table ---@param Parser FfaMatchSummaryParser? ----@return MatchSummaryFfaTable +---@return VNode function MatchSummaryFfa.standardMatch(match, Parser) Parser = Parser or {} local matchColumns = Parser.adjustMatchColumns @@ -549,7 +549,7 @@ end ---@param game table ---@param Parser FfaGameSummaryParser? ----@return MatchSummaryFfaTable +---@return VNode function MatchSummaryFfa.standardGame(game, Parser) Parser = Parser or {} local gameStandingsColumns = Parser.adjustGameStandingsColumns diff --git a/lua/wikis/commons/MatchSummary/Starcraft/Ffa.lua b/lua/wikis/commons/MatchSummary/Starcraft/Ffa.lua index 66f0f0e5538..6cde3bcf7f6 100644 --- a/lua/wikis/commons/MatchSummary/Starcraft/Ffa.lua +++ b/lua/wikis/commons/MatchSummary/Starcraft/Ffa.lua @@ -21,14 +21,14 @@ local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ----@type FfaMatchSummaryParser +---@class StarcraftFfaMatchSummaryParser: FfaMatchSummaryParser local Parser = {} ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function StarcraftMatchSummaryFfa.getByMatchId(props) local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) - ---@cast match StarcraftMatchGroupUtilMatch + ---@cast match FFAMatchGroupUtilMatch BaseMatchSummary.updateMatchOpponents(match) diff --git a/lua/wikis/counterstrike/MatchSummary/Ffa.lua b/lua/wikis/counterstrike/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/counterstrike/MatchSummary/Ffa.lua +++ b/lua/wikis/counterstrike/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/fortnite/MatchSummary/Ffa.lua b/lua/wikis/fortnite/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/fortnite/MatchSummary/Ffa.lua +++ b/lua/wikis/fortnite/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/freefire/MatchSummary/Ffa.lua b/lua/wikis/freefire/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/freefire/MatchSummary/Ffa.lua +++ b/lua/wikis/freefire/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/geoguessr/MatchSummary/Ffa.lua b/lua/wikis/geoguessr/MatchSummary/Ffa.lua index a825d6c11e4..2ba59002095 100644 --- a/lua/wikis/geoguessr/MatchSummary/Ffa.lua +++ b/lua/wikis/geoguessr/MatchSummary/Ffa.lua @@ -17,14 +17,14 @@ local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ----@type FfaMatchSummaryParser +---@class GeoguessrFfaMatchSummaryParser: FfaMatchSummaryParser local Parser = {} ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/halo/MatchSummary/Ffa.lua b/lua/wikis/halo/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/halo/MatchSummary/Ffa.lua +++ b/lua/wikis/halo/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/hearthstone/MatchSummary/Ffa.lua b/lua/wikis/hearthstone/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/hearthstone/MatchSummary/Ffa.lua +++ b/lua/wikis/hearthstone/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/lab/MatchSummary/Ffa.lua b/lua/wikis/lab/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/lab/MatchSummary/Ffa.lua +++ b/lua/wikis/lab/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/naraka/MatchSummary/Ffa.lua b/lua/wikis/naraka/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/naraka/MatchSummary/Ffa.lua +++ b/lua/wikis/naraka/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/pubg/MatchSummary/Ffa.lua b/lua/wikis/pubg/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/pubg/MatchSummary/Ffa.lua +++ b/lua/wikis/pubg/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/pubgmobile/MatchSummary/Ffa.lua b/lua/wikis/pubgmobile/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/pubgmobile/MatchSummary/Ffa.lua +++ b/lua/wikis/pubgmobile/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/tft/MatchSummary/Ffa.lua b/lua/wikis/tft/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/tft/MatchSummary/Ffa.lua +++ b/lua/wikis/tft/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/thefinals/MatchSummary/Ffa.lua b/lua/wikis/thefinals/MatchSummary/Ffa.lua index 0a90560dc4a..d54c29fa503 100644 --- a/lua/wikis/thefinals/MatchSummary/Ffa.lua +++ b/lua/wikis/thefinals/MatchSummary/Ffa.lua @@ -17,14 +17,14 @@ local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ----@type FfaMatchSummaryParser +---@class ThefinalsFfaMatchSummaryParser: FfaMatchSummaryParser local Parser = {} ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/trackmania/MatchSummary/Ffa.lua b/lua/wikis/trackmania/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/trackmania/MatchSummary/Ffa.lua +++ b/lua/wikis/trackmania/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/underlords/MatchSummary/Ffa.lua b/lua/wikis/underlords/MatchSummary/Ffa.lua index a3f072070c2..11cf8bd7266 100644 --- a/lua/wikis/underlords/MatchSummary/Ffa.lua +++ b/lua/wikis/underlords/MatchSummary/Ffa.lua @@ -17,10 +17,10 @@ local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function CustomMatchSummary.getByMatchId(props) - ---@class FFAMatchGroupUtilMatch local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) + ---@cast match FFAMatchGroupUtilMatch SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) diff --git a/lua/wikis/warcraft/MatchSummary/Ffa.lua b/lua/wikis/warcraft/MatchSummary/Ffa.lua index 6b349cddf2b..d5307b4d0e1 100644 --- a/lua/wikis/warcraft/MatchSummary/Ffa.lua +++ b/lua/wikis/warcraft/MatchSummary/Ffa.lua @@ -21,14 +21,14 @@ local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') local HtmlWidgets = Lua.import('Module:Widget/Html/All') local WidgetUtil = Lua.import('Module:Widget/Util') ----@type FfaMatchSummaryParser +---@class WarcraftFfaMatchSummaryParser: FfaMatchSummaryParser local Parser = {} ---@param props {bracketId: string, matchId: string} ----@return Widget +---@return Renderable function WarcraftMatchSummaryFfa.getByMatchId(props) local match = MatchGroupUtil.fetchMatchForBracketDisplay(props.bracketId, props.matchId) - ---@cast match StarcraftMatchGroupUtilMatch + ---@cast match FFAMatchGroupUtilMatch BaseMatchSummary.updateMatchOpponents(match) From d928323c850c4054c1cd2fdb37a389e873e5ab99 Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Fri, 12 Jun 2026 11:50:10 +0900 Subject: [PATCH 3/6] use widget3 html --- lua/wikis/ageofempires/MatchSummary/Ffa.lua | 4 +-- lua/wikis/apexlegends/MatchSummary/Ffa.lua | 4 +-- lua/wikis/arenafps/MatchSummary/Ffa.lua | 4 +-- lua/wikis/autochess/MatchSummary/Ffa.lua | 4 +-- lua/wikis/callofduty/MatchSummary/Ffa.lua | 4 +-- lua/wikis/commons/MatchSummary/Base/Ffa.lua | 32 +++++++++---------- .../commons/MatchSummary/Starcraft/Ffa.lua | 4 +-- lua/wikis/counterstrike/MatchSummary/Ffa.lua | 4 +-- lua/wikis/fortnite/MatchSummary/Ffa.lua | 4 +-- lua/wikis/freefire/MatchSummary/Ffa.lua | 4 +-- lua/wikis/geoguessr/MatchSummary/Ffa.lua | 4 +-- lua/wikis/halo/MatchSummary/Ffa.lua | 4 +-- lua/wikis/hearthstone/MatchSummary/Ffa.lua | 4 +-- lua/wikis/lab/MatchSummary/Ffa.lua | 4 +-- lua/wikis/naraka/MatchSummary/Ffa.lua | 4 +-- lua/wikis/pubg/MatchSummary/Ffa.lua | 4 +-- lua/wikis/pubgmobile/MatchSummary/Ffa.lua | 4 +-- lua/wikis/tft/MatchSummary/Ffa.lua | 4 +-- lua/wikis/thefinals/MatchSummary/Ffa.lua | 4 +-- lua/wikis/trackmania/MatchSummary/Ffa.lua | 4 +-- lua/wikis/underlords/MatchSummary/Ffa.lua | 4 +-- lua/wikis/warcraft/MatchSummary/Ffa.lua | 4 +-- 22 files changed, 58 insertions(+), 58 deletions(-) diff --git a/lua/wikis/ageofempires/MatchSummary/Ffa.lua b/lua/wikis/ageofempires/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/ageofempires/MatchSummary/Ffa.lua +++ b/lua/wikis/ageofempires/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/apexlegends/MatchSummary/Ffa.lua b/lua/wikis/apexlegends/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/apexlegends/MatchSummary/Ffa.lua +++ b/lua/wikis/apexlegends/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/arenafps/MatchSummary/Ffa.lua b/lua/wikis/arenafps/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/arenafps/MatchSummary/Ffa.lua +++ b/lua/wikis/arenafps/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/autochess/MatchSummary/Ffa.lua b/lua/wikis/autochess/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/autochess/MatchSummary/Ffa.lua +++ b/lua/wikis/autochess/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/callofduty/MatchSummary/Ffa.lua b/lua/wikis/callofduty/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/callofduty/MatchSummary/Ffa.lua +++ b/lua/wikis/callofduty/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/commons/MatchSummary/Base/Ffa.lua b/lua/wikis/commons/MatchSummary/Base/Ffa.lua index 33d9d04bbf4..46df9cad8cb 100644 --- a/lua/wikis/commons/MatchSummary/Base/Ffa.lua +++ b/lua/wikis/commons/MatchSummary/Base/Ffa.lua @@ -18,7 +18,7 @@ local OpponentDisplay = Lua.import('Module:OpponentDisplay/Custom') local MatchUtil = Lua.import('Module:Match/Util') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') local MatchSummaryFfa = {} @@ -87,9 +87,9 @@ local MATCH_OVERVIEW_COLUMNS = { value = function (opponent, idx) local place = opponent.placement ~= -1 and opponent.placement or idx local placementDisplay = tostring(MatchSummaryWidgets.RankRange{rankStart = place}) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Trophy{place = place, additionalClasses = {'panel-table__cell-icon'}}, - HtmlWidgets.Span{children = placementDisplay}, + Html.Span{children = placementDisplay}, }} end, }, @@ -187,9 +187,9 @@ local GAME_OVERVIEW_COLUMNS = { else placementDisplay = tostring(MatchSummaryWidgets.RankRange{rankStart = opponent.placement}) end - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Trophy{place = opponent.placement, additionalClasses = {'panel-table__cell-icon'}}, - HtmlWidgets.Span{ + Html.Span{ classes = {'panel-table__cell-game__text'}, children = placementDisplay, } @@ -262,9 +262,9 @@ local GAME_STANDINGS_COLUMNS = { else placementDisplay = tostring(MatchSummaryWidgets.RankRange{rankStart = place}) end - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Trophy{place = place, additionalClasses = {'panel-table__cell-icon'}}, - HtmlWidgets.Span{children = placementDisplay}, + Html.Span{children = placementDisplay}, }} end, }, @@ -442,13 +442,13 @@ function MatchSummaryFfa.standardMatch(match, Parser) } end) - local gameRowContainer = HtmlWidgets.Div{ + local gameRowContainer = Html.Div{ classes = {'panel-table__cell', 'cell--game-container'}, attributes = { ['data-js-battle-royale'] = 'game-container' }, children = Array.map(opponent.games, function(gameOpponent) - local gameRow = HtmlWidgets.Div{ + local gameRow = Html.Div{ classes = {'panel-table__cell', 'cell--game'}, children = Array.map(gameOverviewColumns, function(column) if column.show and not column.show(match) then @@ -485,29 +485,29 @@ function MatchSummaryFfa.standardMatch(match, Parser) local dates = Array.map(match.games, Operator.property('date')) local gamesHaveDifferentDates = Array.any(dates, function(date) return date ~= match.date end) - table.insert(cells, HtmlWidgets.Div{ + table.insert(cells, Html.Div{ classes = {'panel-table__cell', 'cell--game-container-nav-holder'}, attributes = { ['data-js-battle-royale'] = 'game-nav-holder' }, children = { - HtmlWidgets.Div{ + Html.Div{ classes = {'panel-table__cell', 'cell--game-container'}, attributes = { ['data-js-battle-royale'] = 'game-container' }, children = Array.map(match.games, function(game, idx) - return HtmlWidgets.Div{ + return Html.Div{ classes = {'panel-table__cell', 'cell--game'}, children = { - HtmlWidgets.Div{ + Html.Div{ classes = {'panel-table__cell__game-head'}, children = { - HtmlWidgets.Div{ + Html.Div{ classes = {'panel-table__cell__game-title'}, children = { MatchSummaryWidgets.CountdownIcon{game = game, additionalClasses = {'panel-table__cell-icon'}}, - HtmlWidgets.Span{ + Html.Span{ classes = {'panel-table__cell-text'}, children = 'Game ' .. idx } @@ -516,7 +516,7 @@ function MatchSummaryFfa.standardMatch(match, Parser) gamesHaveDifferentDates and MatchSummaryWidgets.GameCountdown{game = game} or nil, } }, - HtmlWidgets.Div{ + Html.Div{ classes = {'panel-table__cell__game-details'}, children = Array.map(gameOverviewColumns, function(column) if column.show and not column.show(match) then diff --git a/lua/wikis/commons/MatchSummary/Starcraft/Ffa.lua b/lua/wikis/commons/MatchSummary/Starcraft/Ffa.lua index 6cde3bcf7f6..5b8134e9dbd 100644 --- a/lua/wikis/commons/MatchSummary/Starcraft/Ffa.lua +++ b/lua/wikis/commons/MatchSummary/Starcraft/Ffa.lua @@ -18,7 +18,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local BaseMatchSummary = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@class StarcraftFfaMatchSummaryParser: FfaMatchSummaryParser @@ -32,7 +32,7 @@ function StarcraftMatchSummaryFfa.getByMatchId(props) BaseMatchSummary.updateMatchOpponents(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/counterstrike/MatchSummary/Ffa.lua b/lua/wikis/counterstrike/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/counterstrike/MatchSummary/Ffa.lua +++ b/lua/wikis/counterstrike/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/fortnite/MatchSummary/Ffa.lua b/lua/wikis/fortnite/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/fortnite/MatchSummary/Ffa.lua +++ b/lua/wikis/fortnite/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/freefire/MatchSummary/Ffa.lua b/lua/wikis/freefire/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/freefire/MatchSummary/Ffa.lua +++ b/lua/wikis/freefire/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/geoguessr/MatchSummary/Ffa.lua b/lua/wikis/geoguessr/MatchSummary/Ffa.lua index 2ba59002095..1ca06ea9190 100644 --- a/lua/wikis/geoguessr/MatchSummary/Ffa.lua +++ b/lua/wikis/geoguessr/MatchSummary/Ffa.lua @@ -14,7 +14,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@class GeoguessrFfaMatchSummaryParser: FfaMatchSummaryParser @@ -28,7 +28,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/halo/MatchSummary/Ffa.lua b/lua/wikis/halo/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/halo/MatchSummary/Ffa.lua +++ b/lua/wikis/halo/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/hearthstone/MatchSummary/Ffa.lua b/lua/wikis/hearthstone/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/hearthstone/MatchSummary/Ffa.lua +++ b/lua/wikis/hearthstone/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/lab/MatchSummary/Ffa.lua b/lua/wikis/lab/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/lab/MatchSummary/Ffa.lua +++ b/lua/wikis/lab/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/naraka/MatchSummary/Ffa.lua b/lua/wikis/naraka/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/naraka/MatchSummary/Ffa.lua +++ b/lua/wikis/naraka/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/pubg/MatchSummary/Ffa.lua b/lua/wikis/pubg/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/pubg/MatchSummary/Ffa.lua +++ b/lua/wikis/pubg/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/pubgmobile/MatchSummary/Ffa.lua b/lua/wikis/pubgmobile/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/pubgmobile/MatchSummary/Ffa.lua +++ b/lua/wikis/pubgmobile/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/tft/MatchSummary/Ffa.lua b/lua/wikis/tft/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/tft/MatchSummary/Ffa.lua +++ b/lua/wikis/tft/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/thefinals/MatchSummary/Ffa.lua b/lua/wikis/thefinals/MatchSummary/Ffa.lua index d54c29fa503..cad2351421f 100644 --- a/lua/wikis/thefinals/MatchSummary/Ffa.lua +++ b/lua/wikis/thefinals/MatchSummary/Ffa.lua @@ -14,7 +14,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@class ThefinalsFfaMatchSummaryParser: FfaMatchSummaryParser @@ -28,7 +28,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/trackmania/MatchSummary/Ffa.lua b/lua/wikis/trackmania/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/trackmania/MatchSummary/Ffa.lua +++ b/lua/wikis/trackmania/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/underlords/MatchSummary/Ffa.lua b/lua/wikis/underlords/MatchSummary/Ffa.lua index 11cf8bd7266..e4e4830081f 100644 --- a/lua/wikis/underlords/MatchSummary/Ffa.lua +++ b/lua/wikis/underlords/MatchSummary/Ffa.lua @@ -13,7 +13,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local SummaryHelper = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@param props {bracketId: string, matchId: string} @@ -24,7 +24,7 @@ function CustomMatchSummary.getByMatchId(props) SummaryHelper.updateMatchOpponents(match) local scoringData = SummaryHelper.createScoringData(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, diff --git a/lua/wikis/warcraft/MatchSummary/Ffa.lua b/lua/wikis/warcraft/MatchSummary/Ffa.lua index d5307b4d0e1..e02f6da676c 100644 --- a/lua/wikis/warcraft/MatchSummary/Ffa.lua +++ b/lua/wikis/warcraft/MatchSummary/Ffa.lua @@ -18,7 +18,7 @@ local MatchGroupUtil = Lua.import('Module:MatchGroup/Util/Custom') local BaseMatchSummary = Lua.import('Module:MatchSummary/Base/Ffa') local MatchSummaryWidgets = Lua.import('Module:Widget/Match/Summary/Ffa/All') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local WidgetUtil = Lua.import('Module:Widget/Util') ---@class WarcraftFfaMatchSummaryParser: FfaMatchSummaryParser @@ -32,7 +32,7 @@ function WarcraftMatchSummaryFfa.getByMatchId(props) BaseMatchSummary.updateMatchOpponents(match) - return HtmlWidgets.Fragment{children = { + return Html.Fragment{children = { MatchSummaryWidgets.Header{matchId = match.matchId, games = match.games}, MatchSummaryWidgets.Tab{ matchId = match.matchId, From 7eacf78ce3dc620f801dc9e34dabecdacd66dee9 Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Wed, 17 Jun 2026 17:59:28 +0900 Subject: [PATCH 4/6] clean up the rest --- .../commons/Widget/Match/Summary/Ffa/GameDetails.lua | 8 ++++---- .../commons/Widget/Match/Summary/Ffa/MatchComment.lua | 4 ++-- .../Widget/Match/Summary/Ffa/MatchInformation.lua | 4 ++-- .../Widget/Match/Summary/Ffa/PointsDistribution.lua | 10 +++++----- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/GameDetails.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/GameDetails.lua index a3566a88799..848565fd2da 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/GameDetails.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/GameDetails.lua @@ -14,7 +14,7 @@ local Page = Lua.import('Module:Page') local DisplayHelper = Lua.import('Module:MatchGroup/Display/Helper') local Component = Lua.import('Module:Widget/Component') -local HtmlWidgets = Lua.import('Module:Widget/Html') +local Html = Lua.import('Module:Widget/Html') local ContentItemContainer = Lua.import('Module:Widget/Match/Summary/Ffa/ContentItemContainer') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') local CountdownIcon = Lua.import('Module:Widget/Match/Summary/Ffa/CountdownIcon') @@ -36,7 +36,7 @@ local function MatchSummaryFfaGameDetails(props) }, game.map and { icon = IconWidget{iconName = 'map'}, - content = HtmlWidgets.Span{children = Page.makeInternalLink(game.mapDisplayName or game.map, game.map)}, + content = Html.Span{children = Page.makeInternalLink(game.mapDisplayName or game.map, game.map)}, } or nil, Logic.isNotEmpty(casters) and { icon = IconWidget{ @@ -44,11 +44,11 @@ local function MatchSummaryFfaGameDetails(props) additionalClasses = {'fa-fw'}, hover = 'Caster' .. (#casters > 1 and 's' or '') }, - content = HtmlWidgets.Span{children = Array.interleave(casters, ', ')}, + content = Html.Span{children = Array.interleave(casters, ', ')}, } or nil, game.comment and { icon = IconWidget{iconName = 'comment'}, - content = HtmlWidgets.Span{children = game.comment}, + content = Html.Span{children = game.comment}, } or nil )} end diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchComment.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchComment.lua index afc54a39a62..5e8675e009a 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchComment.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchComment.lua @@ -11,7 +11,7 @@ local Logic = Lua.import('Module:Logic') local Component = Lua.import('Module:Widget/Component') local ContentItemContainer = Lua.import('Module:Widget/Match/Summary/Ffa/ContentItemContainer') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') ---@param props {match: FFAMatchGroupUtilMatch} @@ -21,7 +21,7 @@ local function MatchSummaryFfaMatchComment(props) if Logic.isEmpty(comment) then return nil end return ContentItemContainer{contentClass = 'panel-content__game-schedule', items = {{ icon = IconWidget{iconName = 'comment'}, - content = HtmlWidgets.Span{children = comment}, + content = Html.Span{children = comment}, }}} end diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchInformation.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchInformation.lua index 7f0c4d9bc09..2a0523943a4 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchInformation.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/MatchInformation.lua @@ -53,7 +53,7 @@ end ---@private ---@param mvp {players: MatchGroupMvpPlayer[], points: integer?}? ---@return MatchSummaryFfaContentItem? -function MatchSummaryFfaMatchInformation:_getMvpItem(mvp) +function MatchSummaryFfaMatchInformation._getMvpItem(mvp) if Logic.isEmpty(mvp) then return end @@ -83,7 +83,7 @@ end ---@private ---@param rawCasters {name:string, displayName: string, flag: string?}[]? ---@return MatchSummaryFfaContentItem? -function MatchSummaryFfaMatchInformation:_getCasterItem(rawCasters) +function MatchSummaryFfaMatchInformation._getCasterItem(rawCasters) if Logic.isEmpty(rawCasters) then return end ---@cast rawCasters -nil local casters = DisplayHelper.createCastersDisplay(rawCasters) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/PointsDistribution.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/PointsDistribution.lua index caba48ce3d8..26dd982d24d 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/PointsDistribution.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/PointsDistribution.lua @@ -11,7 +11,7 @@ local Array = Lua.import('Module:Array') local Class = Lua.import('Module:Class') local Widget = Lua.import('Module:Widget') -local HtmlWidgets = Lua.import('Module:Widget/Html/All') +local Html = Lua.import('Module:Widget/Html') local ContentItemContainer = Lua.import('Module:Widget/Match/Summary/Ffa/ContentItemContainer') local Trophy = Lua.import('Module:Widget/Match/Summary/Ffa/Trophy') local RankRange = Lua.import('Module:Widget/Match/Summary/Ffa/RankRange') @@ -33,15 +33,15 @@ function MatchSummaryFfaPointsDistribution:render() return score .. ' ' .. 'point' .. (score ~= 1 and 's' or '') end local contentDisplay = { - HtmlWidgets.Span{children = suffixPoints(placementPoints)}, - hasKillPoints and HtmlWidgets.Span{children = suffixPoints(killPoints)} or nil, + Html.Span{children = suffixPoints(placementPoints)}, + hasKillPoints and Html.Span{children = suffixPoints(killPoints)} or nil, } return {icon = icon, title = title, content = contentDisplay} end local header = {title = 'Placement', content = { - HtmlWidgets.Span{children = HtmlWidgets.B{children = 'Placement Points'}}, - hasKillPoints and HtmlWidgets.Span{children = HtmlWidgets.B{children = 'Points per Kill'}} or nil, + Html.Span{children = Html.B{children = 'Placement Points'}}, + hasKillPoints and Html.Span{children = Html.B{children = 'Points per Kill'}} or nil, }} local placementItems = Array.map(self.props.scores, function(slot) From 3effaec83b0fcee979f33f528e8fcb98d46cddea Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Thu, 25 Jun 2026 14:58:17 +0900 Subject: [PATCH 5/6] update type annotations --- lua/wikis/commons/Widget/GeneralCollapsible/Toggle.lua | 2 +- lua/wikis/commons/Widget/Match/Page/Comment.lua | 2 +- .../commons/Widget/Match/Summary/Ffa/ContentItemContainer.lua | 2 +- lua/wikis/commons/Widget/Match/Summary/Ffa/GameCountdown.lua | 2 +- lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua | 2 +- lua/wikis/commons/Widget/Match/Summary/Ffa/Tab.lua | 2 +- lua/wikis/commons/Widget/Match/Summary/Ffa/Table.lua | 2 +- lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeaderCell.lua | 2 +- lua/wikis/commons/Widget/Match/Summary/Ffa/TableRow.lua | 2 +- lua/wikis/commons/Widget/Match/Summary/Ffa/TableRowCell.lua | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/lua/wikis/commons/Widget/GeneralCollapsible/Toggle.lua b/lua/wikis/commons/Widget/GeneralCollapsible/Toggle.lua index 5733d7eaa52..6e1025aef72 100644 --- a/lua/wikis/commons/Widget/GeneralCollapsible/Toggle.lua +++ b/lua/wikis/commons/Widget/GeneralCollapsible/Toggle.lua @@ -21,7 +21,7 @@ local Span = Html.Span ---@field hideButtonChildren? Renderable|Renderable[] ---@param props CollapsibleToggleProps ----@return HtmlNode +---@return VNode local function CollapsibleToggle(props) local showButton = Button{ classes = {'general-collapsible-expand-button'}, diff --git a/lua/wikis/commons/Widget/Match/Page/Comment.lua b/lua/wikis/commons/Widget/Match/Page/Comment.lua index f3403d08326..31a90e8cef0 100644 --- a/lua/wikis/commons/Widget/Match/Page/Comment.lua +++ b/lua/wikis/commons/Widget/Match/Page/Comment.lua @@ -11,7 +11,7 @@ local Component = Lua.import('Module:Widget/Component') local Html = Lua.import('Module:Widget/Html') ---@param props {children: Renderable|Renderable[]?} ----@return HtmlNode +---@return VNode local function MatchPageComment(props) return Html.Div{ classes = { 'match-bm-match-additional-comment' }, diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/ContentItemContainer.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/ContentItemContainer.lua index 84be86d9583..31621c57f4c 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/ContentItemContainer.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/ContentItemContainer.lua @@ -27,7 +27,7 @@ local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') ---@field items MatchSummaryFfaContentItem[] ---@param props MatchSummaryFfaContentItemContainerProps ----@return HtmlNode +---@return VNode local function MatchSummaryFfaContentItem(props) local hasContentClass = props.contentClass ~= nil local contentContainer = Html.Div{ diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/GameCountdown.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/GameCountdown.lua index 256828656bb..c480e3b8241 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/GameCountdown.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/GameCountdown.lua @@ -16,7 +16,7 @@ local Component = Lua.import('Module:Widget/Component') local Html = Lua.import('Module:Widget/Html') ---@param props {game: FFAMatchGroupUtilMatch|FFAMatchGroupUtilGame?} ----@return HtmlNode? +---@return VNode? local function MatchSummaryFfaGameCountdown(props) local game = props.game if not game then diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua index 9db1cb3ae6b..df600771613 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua @@ -17,7 +17,7 @@ local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') local CountdownIcon = Lua.import('Module:Widget/Match/Summary/Ffa/CountdownIcon') ---@param props {matchId: string, games: FFAMatchGroupUtilGame[]} ----@return HtmlNode +---@return VNode local function MatchSummaryFfaHeader(props) assert(props.matchId, 'No matchId provided') assert(type(props.games) == 'table', 'No games provided') diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/Tab.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/Tab.lua index 2d563986ca2..e49653a0d95 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/Tab.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/Tab.lua @@ -11,7 +11,7 @@ local Component = Lua.import('Module:Widget/Component') local Html = Lua.import('Module:Widget/Html') ---@param props {matchId: string, idx: integer, children?: Renderable|Renderable[]} ----@return HtmlNode +---@return VNode local function MatchSummaryFfaTab(props) return Html.Div{ classes = {'panel-content'}, diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/Table.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/Table.lua index 058bf9bdd78..0198f41630f 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/Table.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/Table.lua @@ -11,7 +11,7 @@ local Component = Lua.import('Module:Widget/Component') local Html = Lua.import('Module:Widget/Html') ---@param props {children?: Renderable|Renderable[]} ----@return HtmlNode +---@return VNode local function MatchSummaryFfaTable(props) return Html.Div{ classes = {'panel-table'}, diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeaderCell.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeaderCell.lua index 3ada431e7ad..395cafda581 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeaderCell.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeaderCell.lua @@ -21,7 +21,7 @@ local IconWidget = Lua.import('Module:Widget/Image/Icon/Fontawesome') ---@field value? Renderable|Renderable[] ---@param props MatchSummaryFfaTableHeaderCellProps ----@return HtmlNode +---@return VNode local function MatchSummaryFfaTableHeaderCell(props) local isSortable = props.sortable diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRow.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRow.lua index be30da0d905..869c40104c0 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRow.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRow.lua @@ -11,7 +11,7 @@ local Component = Lua.import('Module:Widget/Component') local Html = Lua.import('Module:Widget/Html') ---@param props {children?: Renderable|Renderable[]} ----@return HtmlNode +---@return VNode local function MatchSummaryFfaTableRow(props) return Html.Div{ classes = {'panel-table__row'}, diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRowCell.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRowCell.lua index f1e1a413c8b..9e48f94048e 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRowCell.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableRowCell.lua @@ -18,7 +18,7 @@ local Html = Lua.import('Module:Widget/Html') ---@field value? Renderable|Renderable[] ---@param props MatchSummaryFfaTableRowCellProps ----@return HtmlNode +---@return VNode local function MatchSummaryFfaTableRowCell(props) local isSortable = props.sortable From f5fbffbe6aa0d0644af6aabb321278cbf17274ca Mon Sep 17 00:00:00 2001 From: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com> Date: Thu, 25 Jun 2026 16:45:59 +0900 Subject: [PATCH 6/6] lint --- lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua | 1 - lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeader.lua | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua index df600771613..13baf9d9b32 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/Header.lua @@ -8,7 +8,6 @@ local Lua = require('Module:Lua') local Array = Lua.import('Module:Array') -local Class = Lua.import('Module:Class') local Component = Lua.import('Module:Widget/Component') local WidgetUtil = Lua.import('Module:Widget/Util') diff --git a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeader.lua b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeader.lua index f11bdc7bd43..d83f170ff93 100644 --- a/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeader.lua +++ b/lua/wikis/commons/Widget/Match/Summary/Ffa/TableHeader.lua @@ -12,7 +12,7 @@ local Html = Lua.import('Module:Widget/Html') ---@param props {children?: Renderable|Renderable[]} ---@return HtmlNode -function MatchSummaryFfaTableHeader(props) +local function MatchSummaryFfaTableHeader(props) return Html.Div{ classes = {'panel-table__row', 'row--header'}, attributes = {