#include "immichpathtraverser.h" #include "logger.h" ImmichPathTraverser::ImmichPathTraverser(const ImmichConfig &configIn) : PathTraverser(""), config(configIn), client(configIn), cache(configIn) { loadAssets(); } ImmichPathTraverser::~ImmichPathTraverser() {} void ImmichPathTraverser::loadAssets() { assetIds.clear(); assetNames.clear(); QVector assets = client.fetchAssets(); for (const auto &asset : assets) { if (asset.id.isEmpty()) continue; assetIds.append(asset.id); assetNames.insert(asset.id, asset.originalFileName); } Log("Immich assets loaded: ", assetIds.size()); } QStringList ImmichPathTraverser::getImages() const { return assetIds; } const std::string ImmichPathTraverser::getImagePath(const std::string image) const { QString assetId = QString::fromStdString(image); QString name = assetNames.value(assetId); QString path = cache.getCachedPath(assetId, name, client); return path.toStdString(); } ImageDisplayOptions ImmichPathTraverser::UpdateOptionsForImage(const std::string& filename, const ImageDisplayOptions& options) const { Q_UNUSED(filename); return options; }