From 09f40c36dfd765fba4dd7af79e8d556fec5cbe66 Mon Sep 17 00:00:00 2001 From: Debora Crescenzo Date: Wed, 27 Aug 2025 08:08:57 +0100 Subject: [PATCH] MT#63228 Restore setPreference behavior to pre-716d45f6 state Revert changes from commit 716d45f6 that altered setPreference. The previous commit limited the function to handling only true/false preferences, removing the ability to replace existing values. This change restores the original behavior, allowing setPreference to update existing preferences with new values, not just booleans. Change-Id: I9658515d9714c30607a652fcc0ee3af86a0c8fcd --- src/api/subscriber.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/api/subscriber.js b/src/api/subscriber.js index 7d54af0a..20452f74 100644 --- a/src/api/subscriber.js +++ b/src/api/subscriber.js @@ -41,9 +41,17 @@ export async function setPreference (id, field, value) { await removePreference(id, field) } else { try { - await addPreference(id, field, value) + await replacePreference(id, field, value) } catch (err) { - if (err) { + const errCode = `${err.status}` + if (errCode === '422') { + // eslint-disable-next-line no-useless-catch + try { + await addPreference(id, field, value) + } catch (innerErr) { + throw innerErr + } + } else { throw err } }