feat(settings): editable model library paths for standalone mode

Standalone users previously had to hand-edit settings.json to configure
primary folder_paths. Add a standalone-only Model Paths section to the
settings modal:

- Backend exposes standalone_mode, folder_paths (with template placeholder
  values filtered out) and a data-driven folder_path_schema derived from
  OTHER_MODEL_FOLDER_SUBTYPES via GET /api/lm/settings
- The new section renders multi-path editors per model type from the
  schema, with inline enable_other_models / sub-type controls so other
  model types are configured without leaving the tab
- Persistent restart-required cues after a save: nav dot, inline notice
  and a global banner (unique id per change so dismissals don't mute
  future reminders)
- The missing-model-paths startup banner and the Other Models no-paths
  empty state now deep-link into the new section instead of pointing at
  settings.json
This commit is contained in:
Will Miao
2026-09-18 19:36:19 +08:00
parent d4b82d98b2
commit 5adfa3be36
27 changed files with 1566 additions and 66 deletions
+29 -3
View File
@@ -382,7 +382,8 @@
"nav": {
"general": "Général",
"interface": "Interface",
"library": "Bibliothèque"
"library": "Bibliothèque",
"modelPaths": "[TODO: Translate] Model Paths"
},
"search": {
"placeholder": "Rechercher dans les paramètres...",
@@ -583,6 +584,30 @@
"checkpointUnetOverlapInline": "Ce chemin est déjà utilisé pour un autre type de modèle. Utilisez des dossiers séparés pour les checkpoints et les modèles de diffusion."
}
},
"modelPaths": {
"title": "[TODO: Translate] Model Library Paths",
"description": "[TODO: Translate] Root folders LoRA Manager scans for your models. These are the primary model locations read from settings.json in standalone mode.",
"restartRequired": "[TODO: Translate] Requires restart to take effect",
"coreTypes": "[TODO: Translate] Core Model Types",
"otherTypes": "[TODO: Translate] Other Model Types",
"otherTypesDisabledHint": "[TODO: Translate] No other model types are enabled. Turn on the types you need above to configure their folders.",
"saveSuccessRestart": "[TODO: Translate] Model library paths updated. Restart required to apply changes.",
"pendingRestartNotice": "[TODO: Translate] Path changes saved. Restart LoRA Manager for them to take effect.",
"pendingRestartBannerTitle": "[TODO: Translate] Restart required to apply path changes",
"pendingRestartBannerMessage": "[TODO: Translate] Model library paths were updated. Restart the LoRA Manager server to scan the new folders.",
"folderKeys": {
"loras": "[TODO: Translate] LoRA Paths",
"checkpoints": "[TODO: Translate] Checkpoint Paths",
"unet": "[TODO: Translate] Diffusion Model Paths",
"embeddings": "[TODO: Translate] Embedding Paths",
"vae": "[TODO: Translate] VAE Paths",
"upscale_models": "[TODO: Translate] Upscaler Paths",
"text_encoders": "[TODO: Translate] Text Encoder Paths",
"clip": "[TODO: Translate] CLIP Paths (legacy)",
"clip_vision": "[TODO: Translate] CLIP Vision Paths",
"controlnet": "[TODO: Translate] ControlNet Paths"
}
},
"priorityTags": {
"title": "Tags prioritaires",
"description": "Personnalisez l'ordre de priorité des tags pour chaque type de modèle (par ex. : character, concept, style(toon|toon_style))",
@@ -1241,11 +1266,12 @@
},
"noPaths": {
"title": "Aucun dossier dautres modèles trouvé",
"descriptionStandalone": "La gestion des autres modèles est activée, mais aucun dossier dautres modèles na été trouvé. Ajoutez les clés de dossiers dont vous avez besoin à la section folder_paths de votre settings.json, puis redémarrez LoRA Manager.",
"hintStandalone": "Seules les clés de dossiers listées ci-dessus sont analysées ; les clés inutiles peuvent être omises.",
"descriptionStandalone": "[TODO: Translate] Other Models management is on, but no other-model folders were found. Add your model folders under Settings → Model Paths, then restart LoRA Manager.",
"hintStandalone": "[TODO: Translate] Only enabled model types are scanned; enable the types you need under Library → Folder Settings.",
"descriptionComfyUI": "La gestion des autres modèles est activée, mais aucun des dossiers de modèles configurés nexiste sur le disque. Ajoutez les dossiers de modèles correspondants à vos chemins de modèles ComfyUI, puis rechargez cette page.",
"hintComfyUI": "Les autres modèles sont lus depuis les dossiers vae, upscale_models, text_encoders, clip_vision et controlnet de ComfyUI.",
"openSettings": "Ouvrir les paramètres",
"openModelPaths": "[TODO: Translate] Configure Model Folders",
"openSettingsFolder": "Ouvrir le dossier des paramètres"
}
},