From 1b684aecbbf0a100459b37b8586e4bf293b165cd Mon Sep 17 00:00:00 2001 From: nessi Date: Tue, 17 Mar 2026 21:44:54 +0100 Subject: [PATCH] refactor: split toggleTarget into separate handlers for create and edit forms Replace conditional setter pattern with explicit if/else branches for editing and creating modes. Handle editForm state updates separately from form state updates to improve code clarity and maintainability. --- admin-web/src/features/policies/PoliciesPage.tsx | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/admin-web/src/features/policies/PoliciesPage.tsx b/admin-web/src/features/policies/PoliciesPage.tsx index 860f62d..2d054ec 100644 --- a/admin-web/src/features/policies/PoliciesPage.tsx +++ b/admin-web/src/features/policies/PoliciesPage.tsx @@ -140,8 +140,17 @@ export function PoliciesPage() { } function toggleTarget(id: string, editing = false) { - const setter = editing ? setEditForm : setForm; - setter((value) => ({ + if (editing) { + setEditForm((value) => ({ + ...value, + targetIds: value.targetIds.includes(id) + ? value.targetIds.filter((item) => item !== id) + : [...value.targetIds, id] + })); + return; + } + + setForm((value) => ({ ...value, targetIds: value.targetIds.includes(id) ? value.targetIds.filter((item) => item !== id)