Module:AchievementSystem: Difference between revisions

// via Wikitext Extension for VSCode
// via Wikitext Extension for VSCode
Line 6: Line 6:
-- All achievement styling is defined in CSS/Templates.css, not in the JSON. This module assigns CSS classes based on achievement IDs in the format:
-- All achievement styling is defined in CSS/Templates.css, not in the JSON. This module assigns CSS classes based on achievement IDs in the format:
-- .person-template .template-title.achievement-{id}::after {}
-- .person-template .template-title.achievement-{id}::after {}
---@class UserAchievement
---@field type string
---@field date? string


local Achievements = {}
local Achievements = {}
Line 324: Line 328:
local userAchievementsCache = {}
local userAchievementsCache = {}


---@return UserAchievement[]
function Achievements.getUserAchievements(pageId)
function Achievements.getUserAchievements(pageId)
     if not pageId or pageId == '' then
     if not pageId or pageId == '' then
Line 386: Line 391:
-- @return Array of badge achievement objects
-- @return Array of badge achievement objects
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
---@class Achievement
---@field type string
---@field date string
---@field name string
---@return Achievement[]
function Achievements.getBadgeAchievements(pageId, frame)
function Achievements.getBadgeAchievements(pageId, frame)
     if not pageId or pageId == '' then
     if not pageId or pageId == '' then