diff --git a/inertia/components/configuration/CriteriaEditor.vue b/inertia/components/configuration/CriteriaEditor.vue index fd3ffff..6c94e2d 100644 --- a/inertia/components/configuration/CriteriaEditor.vue +++ b/inertia/components/configuration/CriteriaEditor.vue @@ -31,7 +31,18 @@ onMounted(async () => { try { const res = await fetch('/api/v1/devices/criteria-values') if (res.ok) { - suggestions.value = await res.json() + const data = await res.json() + // API returns plural keys, map to singular keys used by the form fields + suggestions.value = { + ...suggestions.value, + manufacturer: data.manufacturers ?? [], + oui: data.ouis ?? [], + productClass: data.productClasses ?? [], + serialNumber: data.serialNumbers ?? [], + modelName: data.modelNames ?? [], + hardwareVersion: data.hardwareVersions ?? [], + softwareVersion: data.softwareVersions ?? [], + } } } catch { // silently fail diff --git a/inertia/pages/firmware_catalog/FirmwareCatalogCreate.vue b/inertia/pages/firmware_catalog/FirmwareCatalogCreate.vue index 6a05b6c..2b91c4c 100644 --- a/inertia/pages/firmware_catalog/FirmwareCatalogCreate.vue +++ b/inertia/pages/firmware_catalog/FirmwareCatalogCreate.vue @@ -20,7 +20,7 @@ const productClasses = ref([]) onMounted(async () => { try { const res = await fetch('/api/v1/devices/criteria-values') - if (res.ok) productClasses.value = (await res.json()).productClass || [] + if (res.ok) productClasses.value = (await res.json()).productClasses || [] } catch { /* optional */ } }) diff --git a/inertia/pages/firmware_catalog/FirmwareCatalogEdit.vue b/inertia/pages/firmware_catalog/FirmwareCatalogEdit.vue index 9bab00f..ceff856 100644 --- a/inertia/pages/firmware_catalog/FirmwareCatalogEdit.vue +++ b/inertia/pages/firmware_catalog/FirmwareCatalogEdit.vue @@ -30,7 +30,7 @@ onMounted(async () => { entry.value = data.data const d = data.data form.value = { productClass: d.productClass, version: d.version, downloadUrl: d.downloadUrl, checksum: d.checksum, checksumType: d.checksumType || 'sha256', fileSize: d.fileSize ?? null } - if (suggestRes.ok) productClasses.value = (await suggestRes.json()).productClass || [] + if (suggestRes.ok) productClasses.value = (await suggestRes.json()).productClasses || [] } catch { router.get('/firmware-catalog') } })