removeItemByKey method
void
removeItemByKey(
- K key
Implementation
void removeItemByKey(K key) {
if (!_itemsMap.containsKey(key)) {
throw ArgumentError.value(key, 'key', 'Item not found');
}
_itemsMap.remove(key);
if (!isServerSide) {
_localPaginationItems.removeWhere((x) => itemKey(x) == key);
}
final displayItems = value.displayItems;
final index = displayItems.indexWhere((x) => x.key == key);
if (index > -1) {
updateState(
who: 'removeItem',
displayItems: displayItems.copyWithRemovedAt(index),
totalItems: value.totalItems - 1,
selectedKeys: LinkedHashSet<K>.from(value.selectedKeys)..remove(key),
expandedKeys: LinkedHashSet<K>.from(value.expandedKeys)..remove(key),
);
}
}