feat: mark already-added images as disabled in EntityPicker

This commit is contained in:
2026-03-28 15:16:37 +03:00
parent 3a644b3b0b
commit 62a9249abf
3 changed files with 33 additions and 8 deletions
+7 -2
View File
@@ -33,17 +33,22 @@
imagePickerLoading = true;
try {
const registries = await api.listRegistries();
// Collect existing project images to mark as already added.
const existingImages = new Set(projects.map(p => p.image.toLowerCase()));
const items: EntityPickerItem[] = [];
for (const reg of registries) {
if (!reg.owner) continue;
try {
const images = await api.listRegistryImages(reg.id);
for (const img of images) {
const alreadyAdded = existingImages.has(img.full_ref.toLowerCase());
items.push({
value: JSON.stringify({ full_ref: img.full_ref, registryName: reg.name }),
label: img.full_ref,
description: reg.name,
group: reg.name
description: alreadyAdded ? undefined : reg.name,
group: reg.name,
disabled: alreadyAdded,
disabledHint: alreadyAdded ? 'Already added' : undefined
});
}
} catch {