component socket need a component, not a boolean, not a list.
and if socket need a boolean, not a list.
and you can not set ImageSprite.Enabled to false when dragging. otherwise it will be dragable.
You can refer to this for cannibalism Handling Sprite Cannibalism with AnyComponent