| 89 | } |
| 90 | |
| 91 | std::vector<ScannedMod> ScanLocalMods(const std::string& modsRoot) |
| 92 | { |
| 93 | // The catalog view of a local scan: ScanModsRoot does the work (and sorts by |
| 94 | // display name); ScannedMod is the slimmer install-status projection of Mod. |
| 95 | std::vector<ScannedMod> mods; |
| 96 | for (const Mod& m : ScanModsRoot(modsRoot, ModSource::Local)) |
| 97 | mods.push_back({m.catalogId.empty() ? m.id : m.catalogId, m.id, m.name, m.version, m.sizeBytes}); |
| 98 | return mods; |
| 99 | } |
| 100 | |
| 101 | bool WriteInstalledModManifest(const std::string& installDir, const std::string& modId, const std::string& name, |
| 102 | const std::string& version, const std::string& folderName, |
no test coverage detected