File Details
2.9.4
- R
- Oct 8, 2025
- 156.59 KB
- 3.0K
- 11.2.5
- Retail
File Name
GreatVaultList-2.9.4.zip
Supported Versions
- 11.2.5
Great Vault List
2.9.4 (2025-10-08)
Full Changelog Previous Releases
- Update GreatVaultList.toc (#30)
- Refactor vault data handling and cleanup unused code
Improves vault data management by clearing temporary data when no rewards are available and ensures activitiesData is stored. Removes commented and unused code from highestReward and vaultStatus column configurations for better maintainability. - Refactor vault data handling and tooltip generation
Introduces caching and retrieval of vault data via GreatVaultList.Data:GetVaultData, replacing direct calls to C_WeeklyRewards.GetActivities. Tooltip generation logic is centralized in GreatVaultListData.lua, and columns/highestReward.lua and columns/vaultStatus.lua are updated to use the new data source. Removes dependency on LibGearData for item level calculations and updates tooltip rendering in WeeklyRewardsRemoteFrame.lua to use precomputed tooltip data. - Hide reward frames when toggling GreatVaultList
Added calls to HideUIPanel for WeeklyRewardsRemoteFrame and WeeklyRewardsFrame when toggling the GreatVaultList window to ensure related frames are hidden. Also commented out unused raid reward tooltip logic and fixed indentation in WeeklyRewardsRemoteFrame.lua. - Improve panel handling and add ESC key support
Replaced manual show/hide logic with UIPanel API for WeeklyRewards frames to improve UI consistency. Added ESC key handling to GreatVaultListMixin to allow closing the frame with the keyboard, and updated XML to wire up key events. Also updated VSCode Lua settings for additional API recognition. - Refactor module initialization and window logic
Removed redundant OnEnable logic and moved module checking to a new checkModules function. Window display now ensures UI is loaded only when necessary. Added moduleTicker to handle module readiness and initialization sequence. - Refactor highest reward calculation logic
Replaces the previous reward calculation with a new approach using LibGearData and a mapping of activity types to data sources. Simplifies the store and populate functions, improves item level formatting, and updates event handling for weekly rewards. - Improve remote vault frame handling and add Readme
Added a Readme.md with feature overview. Improved handling of WeeklyRewardsRemoteFrame: now shows error if data is missing, avoids redundant frame display, and supports BlizzMove for the remote frame. Refactored activitiesData storage to column logic and removed duplicate code. Minor updates to VSCode settings. - Add remote Great Vault rewards frame and interactions
Introduces WeeklyRewardsRemoteFrame for displaying Great Vault rewards remotely, including new Lua and XML files. Updates TableCell to support clicking and showing the remote frame, modifies data storage to include activities data, and adjusts initialization and window logic. Also updates keystone column to use a utility function and extends VSCode Lua globals for new APIs. - Call storeAll on weekly rewards update
Added a call to self:storeAll() in the WEEKLY_REWARDS_UPDATE event handler to ensure data is stored when weekly rewards are updated and cannot be claimed. - Add skipStore logic for weekly rewards claim
Introduces a skipStore flag based on C_WeeklyRewards.CanClaimRewards() to prevent storing character info when weekly rewards can be claimed. Registers an event to update skipStore when rewards status changes, ensuring store and storeAll methods respect this condition. - Refactor initialization and data storage logic
Moved data initialization and storage from GREATVAULTLIST_COLUMNS.OnInitialize to the new GreatVaultList:OnEnable method. Removed timer-based data check and cleanup for improved clarity and reliability. - Revert "Summary (#27)"
- Summary (#27)
Fixed two critical bugs in the GreatVaultList addon that were causing data loss and stale information:
vaultStatus column not updating in real-time - Added missing event handlers
highestReward column losing data during fast login/logout - Improved data validation and fallback logic
Changes Made
columns/vaultStatus.lua
Added missing event configuration to listen for WEEKLY_REWARDS_UPDATE and WEEKLY_REWARDS_ITEM_CHANGED events
Now updates vault status immediately when items are looted instead of only on login/window open
Prevents stale "unclaimed rewards" status from persisting after looting
columns/highestReward.lua
Enhanced store function with robust data validation and fallback logic
Added hasValidData flag and apiCallsMade counter to distinguish between:
Legitimate "no rewards available" scenarios (allows setting to nil)
API failures/timing issues (preserves existing value)
Prevents data loss during fast login/logout cycles and crash recovery
Uses math.max() for cleaner item level comparison
Technical Details
vaultStatus: Now follows same event pattern as other columns (activities, raid, world, etc.)
highestReward: Implements defensive programming to handle race conditions and API loading delays
Both fixes maintain backward compatibility and follow existing addon architecture patterns
Impact
Vault status now updates in real-time when items are looted
Highest reward data is preserved during unstable login scenarios
Improved reliability for users who frequently log in/out or experience crashes
Better user experience with accurate, up-to-date information - Update ruRU.lua (#26)
- Refactor loot data sources to use LibGearData
Updated delves, dungeon, and raid loot tabs to fetch and process loot data directly from LibGearData instead of using static methods. Added new column for Delver's Bounty in delves loot, improved crest display in dungeon and raid loot, and updated locale strings accordingly. Also added LibGearData as an external dependency in .pkgmeta. - Refactor raid loot data building logic
Replaces hardcoded boss columns with dynamic generation based on raid loot data. Refactors data population to build the loot table from LibGearData:GetRaidLootList(), improving flexibility and maintainability. - Refactor loot data sources to use LibGearData
Replaced hardcoded loot tables in delvesLoot, dungeonLoot, and raidLoot tabs with data from LibGearData. Updated .toc to include LibGearData and removed an unused file reference. This change centralizes loot data management and simplifies future updates.