SearchKit: Update of multiselect custom field is working in non-obvious way, which may result in data loss.
Overview
SearchKit allows to update the selected entities (especially: contacts). However, when updating a multiselect custom field, the old values are deleted when a new one is selected.
This might be how it was designed, but won't be (imho) the way the user would expect it to work: I would have expected to have this work such as "tagging" a contact - where one contact might get additional tags.
Example use-case
- Create a custom field for contacts as alphanumeric with multiselect, create at least two options.
- Open a contact and check the multiselect with option 1.
- Create a SearchKit where you can find the above contact.
- Select the contact
- Action: Update, check the multiselect with option 2
- Result: Instead of adding option 2 to the multiselect custom field and leaving option 1 as is, option 1 is unchecked.
Current behaviour
Instead of adding option 2 to the multiselect custom field and leaving option 1 as is, option 1 is unchecked.
This is not what a user might expect and will result in loss of data.
Proposed behaviour
The value for option 1 should be kept and option 2 should be added.
Comments
Perhaps it makes sense to add another action ("update add"), that will add new options.