Updated ItemsModel to use mutation for better performance