- const uuid = item ? item.uuid : '';
- try {
- if (item) {
- const d: Partial<CollectionResource> = {
- properties: JSON.parse(JSON.stringify(item.properties))
- };
- d.properties[data.key] = data.value;
- const updatedCollection = await services.collectionService.update(uuid, d);
- item.properties[data.key] = data.value;
- dispatch(resourcesActions.SET_RESOURCES([updatedCollection]));
- dispatch(snackbarActions.OPEN_SNACKBAR({ message: "Tag has been successfully added.", hideDuration: 2000, kind: SnackbarKind.SUCCESS }));
- return updatedCollection;
+ if (!item) { return; }
+
+ const properties = Object.assign({}, item.properties);
+ const key = data.keyID || data.key;
+ const value = data.valueID || data.value;
+ services.collectionService.update(
+ item.uuid, {
+ properties: addProperty(properties, key, value)