feat: enhance model version context with file metadata

- Rename `preview_overrides` to `version_context` to better reflect expanded purpose
- Add file_path and file_name fields to version serialization
- Update method names and parameter signatures for consistency
- Include file metadata from cache in version context building
- Maintain backward compatibility with existing preview URL functionality

The changes provide more comprehensive version information including file details while maintaining existing preview override behavior.
This commit is contained in:
Will Miao
2025-10-26 08:53:53 +08:00
parent 9ca2b9dd56
commit 795b9e8418
20 changed files with 1542 additions and 51 deletions

View File

@@ -854,13 +854,55 @@
"tabs": {
"examples": "Beispiele",
"description": "Modellbeschreibung",
"recipes": "Rezepte"
"recipes": "Rezepte",
"versions": "Versionen"
},
"loading": {
"exampleImages": "Beispielbilder werden geladen...",
"description": "Modellbeschreibung wird geladen...",
"recipes": "Rezepte werden geladen...",
"examples": "Beispiele werden geladen..."
"examples": "Beispiele werden geladen...",
"versions": "Versionen werden geladen..."
},
"versions": {
"heading": "Modellversionen",
"copy": "Verwalten Sie alle Versionen dieses Modells an einem Ort.",
"media": {
"placeholder": "Keine Vorschau"
},
"labels": {
"unnamed": "Unbenannte Version",
"noDetails": "Keine zusätzlichen Details"
},
"badges": {
"current": "Aktuelle Version",
"inLibrary": "In der Bibliothek",
"newer": "Neuere Version",
"ignored": "Ignoriert"
},
"actions": {
"download": "Herunterladen",
"delete": "Löschen",
"ignore": "Ignorieren",
"unignore": "Ignorierung aufheben",
"resumeModelUpdates": "Aktualisierungen für dieses Modell fortsetzen",
"ignoreModelUpdates": "Aktualisierungen für dieses Modell ignorieren",
"viewLocalVersions": "Alle lokalen Versionen anzeigen",
"viewLocalTooltip": "Demnächst verfügbar"
},
"empty": "Noch keine Versionshistorie für dieses Modell vorhanden.",
"error": "Versionen konnten nicht geladen werden.",
"missingModelId": "Für dieses Modell ist keine Civitai-Model-ID vorhanden.",
"confirm": {
"delete": "Diese Version aus Ihrer Bibliothek löschen?"
},
"toast": {
"modelIgnored": "Aktualisierungen für dieses Modell werden ignoriert",
"modelResumed": "Aktualisierungen für dieses Modell werden wieder geprüft",
"versionIgnored": "Aktualisierungen für diese Version werden ignoriert",
"versionUnignored": "Version wurde wieder aktiviert",
"versionDeleted": "Version gelöscht"
}
}
}
},

View File

@@ -853,13 +853,55 @@
"tabs": {
"examples": "Examples",
"description": "Model Description",
"recipes": "Recipes"
"recipes": "Recipes",
"versions": "Versions"
},
"loading": {
"exampleImages": "Loading example images...",
"description": "Loading model description...",
"recipes": "Loading recipes...",
"examples": "Loading examples..."
"examples": "Loading examples...",
"versions": "Loading versions..."
},
"versions": {
"heading": "Model versions",
"copy": "Track and manage every version of this model in one place.",
"media": {
"placeholder": "No preview"
},
"labels": {
"unnamed": "Untitled Version",
"noDetails": "No additional details"
},
"badges": {
"current": "Current Version",
"inLibrary": "In Library",
"newer": "Newer Version",
"ignored": "Ignored"
},
"actions": {
"download": "Download",
"delete": "Delete",
"ignore": "Ignore",
"unignore": "Unignore",
"resumeModelUpdates": "Resume updates for this model",
"ignoreModelUpdates": "Ignore updates for this model",
"viewLocalVersions": "View all local versions",
"viewLocalTooltip": "Coming soon"
},
"empty": "No version history available for this model yet.",
"error": "Failed to load versions.",
"missingModelId": "This model is missing a Civitai model id.",
"confirm": {
"delete": "Delete this version from your library?"
},
"toast": {
"modelIgnored": "Updates ignored for this model",
"modelResumed": "Update tracking resumed",
"versionIgnored": "Updates ignored for this version",
"versionUnignored": "Version re-enabled",
"versionDeleted": "Version deleted"
}
}
}
},

View File

@@ -853,13 +853,55 @@
"tabs": {
"examples": "Ejemplos",
"description": "Descripción del modelo",
"recipes": "Recetas"
"recipes": "Recetas",
"versions": "Versiones"
},
"loading": {
"exampleImages": "Cargando imágenes de ejemplo...",
"description": "Cargando descripción del modelo...",
"recipes": "Cargando recetas...",
"examples": "Cargando ejemplos..."
"examples": "Cargando ejemplos...",
"versions": "Cargando versiones..."
},
"versions": {
"heading": "Versiones del modelo",
"copy": "Administra todas las versiones de este modelo en un solo lugar.",
"media": {
"placeholder": "Sin vista previa"
},
"labels": {
"unnamed": "Versión sin nombre",
"noDetails": "Sin detalles adicionales"
},
"badges": {
"current": "Versión actual",
"inLibrary": "En la biblioteca",
"newer": "Versión más reciente",
"ignored": "Ignorada"
},
"actions": {
"download": "Descargar",
"delete": "Eliminar",
"ignore": "Ignorar",
"unignore": "Dejar de ignorar",
"resumeModelUpdates": "Reanudar actualizaciones para este modelo",
"ignoreModelUpdates": "Ignorar actualizaciones para este modelo",
"viewLocalVersions": "Ver todas las versiones locales",
"viewLocalTooltip": "Disponible pronto"
},
"empty": "Aún no hay historial de versiones para este modelo.",
"error": "No se pudieron cargar las versiones.",
"missingModelId": "Este modelo no tiene un ID de modelo de Civitai.",
"confirm": {
"delete": "¿Eliminar esta versión de tu biblioteca?"
},
"toast": {
"modelIgnored": "Se ignoran las actualizaciones de este modelo",
"modelResumed": "Seguimiento de actualizaciones reanudado",
"versionIgnored": "Se ignoran las actualizaciones de esta versión",
"versionUnignored": "Versión habilitada nuevamente",
"versionDeleted": "Versión eliminada"
}
}
}
},

View File

@@ -853,13 +853,55 @@
"tabs": {
"examples": "Exemples",
"description": "Description du modèle",
"recipes": "Recipes"
"recipes": "Recipes",
"versions": "Versions"
},
"loading": {
"exampleImages": "Chargement des images d'exemple...",
"description": "Chargement de la description du modèle...",
"recipes": "Chargement des recipes...",
"examples": "Chargement des exemples..."
"examples": "Chargement des exemples...",
"versions": "Chargement des versions..."
},
"versions": {
"heading": "Versions du modèle",
"copy": "Gérez toutes les versions de ce modèle en un seul endroit.",
"media": {
"placeholder": "Aucune prévisualisation"
},
"labels": {
"unnamed": "Version sans nom",
"noDetails": "Aucun détail supplémentaire"
},
"badges": {
"current": "Version actuelle",
"inLibrary": "Dans la bibliothèque",
"newer": "Version plus récente",
"ignored": "Ignorée"
},
"actions": {
"download": "Télécharger",
"delete": "Supprimer",
"ignore": "Ignorer",
"unignore": "Ne plus ignorer",
"resumeModelUpdates": "Reprendre les mises à jour pour ce modèle",
"ignoreModelUpdates": "Ignorer les mises à jour pour ce modèle",
"viewLocalVersions": "Voir toutes les versions locales",
"viewLocalTooltip": "Bientôt disponible"
},
"empty": "Aucun historique de versions n'est disponible pour ce modèle pour le moment.",
"error": "Échec du chargement des versions.",
"missingModelId": "Ce modèle ne possède pas d'identifiant de modèle Civitai.",
"confirm": {
"delete": "Supprimer cette version de votre bibliothèque ?"
},
"toast": {
"modelIgnored": "Les mises à jour de ce modèle sont ignorées",
"modelResumed": "Suivi des mises à jour repris",
"versionIgnored": "Les mises à jour de cette version sont ignorées",
"versionUnignored": "Version réactivée",
"versionDeleted": "Version supprimée"
}
}
}
},

View File

@@ -853,13 +853,55 @@
"tabs": {
"examples": "דוגמאות",
"description": "תיאור המודל",
"recipes": "מתכונים"
"recipes": "מתכונים",
"versions": "גרסאות"
},
"loading": {
"exampleImages": "טוען תמונות דוגמה...",
"description": "טוען תיאור מודל...",
"recipes": "טוען מתכונים...",
"examples": "טוען דוגמאות..."
"examples": "טוען דוגמאות...",
"versions": "טוען גרסאות..."
},
"versions": {
"heading": "גרסאות המודל",
"copy": "נהל את כל הגרסאות של המודל הזה במקום אחד.",
"media": {
"placeholder": "אין תצוגה מקדימה"
},
"labels": {
"unnamed": "גרסה ללא שם",
"noDetails": "אין פרטים נוספים"
},
"badges": {
"current": "גרסה נוכחית",
"inLibrary": "בספרייה",
"newer": "גרסה חדשה יותר",
"ignored": "התעלם"
},
"actions": {
"download": "הורדה",
"delete": "מחיקה",
"ignore": "התעלם",
"unignore": "בטל התעלמות",
"resumeModelUpdates": "המשך עדכונים עבור מודל זה",
"ignoreModelUpdates": "התעלם מעדכונים עבור מודל זה",
"viewLocalVersions": "הצג את כל הגרסאות המקומיות",
"viewLocalTooltip": "יגיע בקרוב"
},
"empty": "אין עדיין היסטוריית גרסאות למודל זה.",
"error": "טעינת הגרסאות נכשלה.",
"missingModelId": "למודל זה אין מזהה מודל של Civitai.",
"confirm": {
"delete": "למחוק גרסה זו מהספרייה שלך?"
},
"toast": {
"modelIgnored": "העדכונים עבור מודל זה נוגבו",
"modelResumed": "מעקב העדכונים חודש",
"versionIgnored": "העדכונים עבור גרסה זו נוגבו",
"versionUnignored": "הגרסה הופעלה מחדש",
"versionDeleted": "הגרסה נמחקה"
}
}
}
},

View File

@@ -853,13 +853,55 @@
"tabs": {
"examples": "例",
"description": "モデル説明",
"recipes": "レシピ"
"recipes": "レシピ",
"versions": "バージョン"
},
"loading": {
"exampleImages": "例画像を読み込み中...",
"description": "モデル説明を読み込み中...",
"recipes": "レシピを読み込み中...",
"examples": "例を読み込み中..."
"examples": "例を読み込み中...",
"versions": "バージョンを読み込み中..."
},
"versions": {
"heading": "モデルバージョン",
"copy": "このモデルのすべてのバージョンを一か所で管理します。",
"media": {
"placeholder": "プレビューなし"
},
"labels": {
"unnamed": "名前のないバージョン",
"noDetails": "追加情報なし"
},
"badges": {
"current": "現在のバージョン",
"inLibrary": "ライブラリにあります",
"newer": "新しいバージョン",
"ignored": "無視中"
},
"actions": {
"download": "ダウンロード",
"delete": "削除",
"ignore": "無視",
"unignore": "無視を解除",
"resumeModelUpdates": "このモデルの更新を再開",
"ignoreModelUpdates": "このモデルの更新を無視",
"viewLocalVersions": "ローカルの全バージョンを表示",
"viewLocalTooltip": "近日対応予定"
},
"empty": "このモデルにはまだバージョン履歴がありません。",
"error": "バージョンの読み込みに失敗しました。",
"missingModelId": "このモデルにはCivitaiのモデルIDがありません。",
"confirm": {
"delete": "このバージョンをライブラリから削除しますか?"
},
"toast": {
"modelIgnored": "このモデルの更新は無視されます",
"modelResumed": "更新の監視を再開しました",
"versionIgnored": "このバージョンの更新は無視されます",
"versionUnignored": "バージョンを再度有効にしました",
"versionDeleted": "バージョンを削除しました"
}
}
}
},

View File

@@ -853,13 +853,55 @@
"tabs": {
"examples": "예시",
"description": "모델 설명",
"recipes": "레시피"
"recipes": "레시피",
"versions": "버전"
},
"loading": {
"exampleImages": "예시 이미지 로딩 중...",
"description": "모델 설명 로딩 중...",
"recipes": "레시피 로딩 중...",
"examples": "예시 로딩 중..."
"examples": "예시 로딩 중...",
"versions": "버전 로딩 중..."
},
"versions": {
"heading": "모델 버전",
"copy": "이 모델의 모든 버전을 한 곳에서 관리하세요.",
"media": {
"placeholder": "미리보기 없음"
},
"labels": {
"unnamed": "이름 없는 버전",
"noDetails": "추가 정보 없음"
},
"badges": {
"current": "현재 버전",
"inLibrary": "라이브러리에 있음",
"newer": "최신 버전",
"ignored": "무시됨"
},
"actions": {
"download": "다운로드",
"delete": "삭제",
"ignore": "무시",
"unignore": "무시 해제",
"resumeModelUpdates": "이 모델 업데이트 재개",
"ignoreModelUpdates": "이 모델 업데이트 무시",
"viewLocalVersions": "로컬 버전 모두 보기",
"viewLocalTooltip": "곧 제공 예정"
},
"empty": "이 모델에는 아직 버전 기록이 없습니다.",
"error": "버전을 불러오지 못했습니다.",
"missingModelId": "이 모델에는 Civitai 모델 ID가 없습니다.",
"confirm": {
"delete": "이 버전을 라이브러리에서 삭제하시겠습니까?"
},
"toast": {
"modelIgnored": "이 모델의 업데이트가 무시됩니다",
"modelResumed": "업데이트 추적이 재개되었습니다",
"versionIgnored": "이 버전의 업데이트가 무시됩니다",
"versionUnignored": "버전이 다시 활성화되었습니다",
"versionDeleted": "버전이 삭제되었습니다"
}
}
}
},

View File

@@ -853,13 +853,55 @@
"tabs": {
"examples": "Примеры",
"description": "Описание модели",
"recipes": "Рецепты"
"recipes": "Рецепты",
"versions": "Версии"
},
"loading": {
"exampleImages": "Загрузка примеров изображений...",
"description": "Загрузка описания модели...",
"recipes": "Загрузка рецептов...",
"examples": "Загрузка примеров..."
"examples": "Загрузка примеров...",
"versions": "Загрузка версий..."
},
"versions": {
"heading": "Версии модели",
"copy": "Управляйте всеми версиями этой модели в одном месте.",
"media": {
"placeholder": "Нет превью"
},
"labels": {
"unnamed": "Версия без названия",
"noDetails": "Дополнительная информация отсутствует"
},
"badges": {
"current": "Текущая версия",
"inLibrary": "В библиотеке",
"newer": "Более новая версия",
"ignored": "Игнорируется"
},
"actions": {
"download": "Скачать",
"delete": "Удалить",
"ignore": "Игнорировать",
"unignore": "Перестать игнорировать",
"resumeModelUpdates": "Возобновить обновления для этой модели",
"ignoreModelUpdates": "Игнорировать обновления для этой модели",
"viewLocalVersions": "Показать все локальные версии",
"viewLocalTooltip": "Скоро появится"
},
"empty": "Для этой модели пока нет истории версий.",
"error": "Не удалось загрузить версии.",
"missingModelId": "У этой модели отсутствует идентификатор модели Civitai.",
"confirm": {
"delete": "Удалить эту версию из библиотеки?"
},
"toast": {
"modelIgnored": "Обновления для этой модели игнорируются",
"modelResumed": "Отслеживание обновлений возобновлено",
"versionIgnored": "Обновления для этой версии игнорируются",
"versionUnignored": "Версия снова активна",
"versionDeleted": "Версия удалена"
}
}
}
},

View File

@@ -853,13 +853,55 @@
"tabs": {
"examples": "示例",
"description": "模型描述",
"recipes": "配方"
"recipes": "配方",
"versions": "版本"
},
"loading": {
"exampleImages": "正在加载示例图片...",
"description": "正在加载模型描述...",
"recipes": "正在加载配方...",
"examples": "正在加载示例..."
"examples": "正在加载示例...",
"versions": "正在加载版本..."
},
"versions": {
"heading": "模型版本",
"copy": "在一个位置管理该模型的所有版本。",
"media": {
"placeholder": "无预览"
},
"labels": {
"unnamed": "未命名版本",
"noDetails": "暂无更多信息"
},
"badges": {
"current": "当前版本",
"inLibrary": "已在库中",
"newer": "较新的版本",
"ignored": "已忽略"
},
"actions": {
"download": "下载",
"delete": "删除",
"ignore": "忽略",
"unignore": "取消忽略",
"resumeModelUpdates": "继续跟踪该模型的更新",
"ignoreModelUpdates": "忽略该模型的更新",
"viewLocalVersions": "查看所有本地版本",
"viewLocalTooltip": "敬请期待"
},
"empty": "该模型还没有版本历史。",
"error": "加载版本失败。",
"missingModelId": "该模型缺少 Civitai 模型 ID。",
"confirm": {
"delete": "从库中删除此版本?"
},
"toast": {
"modelIgnored": "已忽略该模型的更新",
"modelResumed": "已恢复更新跟踪",
"versionIgnored": "已忽略该版本的更新",
"versionUnignored": "已重新启用该版本",
"versionDeleted": "版本已删除"
}
}
}
},

View File

@@ -853,13 +853,55 @@
"tabs": {
"examples": "範例圖片",
"description": "模型描述",
"recipes": "配方"
"recipes": "配方",
"versions": "版本"
},
"loading": {
"exampleImages": "載入範例圖片中...",
"description": "載入模型描述中...",
"recipes": "載入配方中...",
"examples": "載入範例中..."
"examples": "載入範例中...",
"versions": "載入版本中..."
},
"versions": {
"heading": "模型版本",
"copy": "在同一位置追蹤並管理此模型的所有版本。",
"media": {
"placeholder": "無預覽"
},
"labels": {
"unnamed": "未命名版本",
"noDetails": "沒有其他資訊"
},
"badges": {
"current": "目前版本",
"inLibrary": "已在庫中",
"newer": "較新版本",
"ignored": "已忽略"
},
"actions": {
"download": "下載",
"delete": "刪除",
"ignore": "忽略",
"unignore": "取消忽略",
"resumeModelUpdates": "恢復追蹤此模型的更新",
"ignoreModelUpdates": "忽略此模型的更新",
"viewLocalVersions": "檢視所有本地版本",
"viewLocalTooltip": "敬請期待"
},
"empty": "此模型尚無版本歷史。",
"error": "載入版本失敗。",
"missingModelId": "此模型缺少 Civitai 模型 ID。",
"confirm": {
"delete": "要從庫中刪除此版本嗎?"
},
"toast": {
"modelIgnored": "已忽略此模型的更新",
"modelResumed": "已恢復更新追蹤",
"versionIgnored": "已忽略此版本的更新",
"versionUnignored": "已重新啟用此版本",
"versionDeleted": "已刪除此版本"
}
}
}
},