як я робив
в мене була куча таких блоків
і були в мене такі:
тип А_1, можу переносити в А_2, в них нічого переносити не можу
тип А_2, можу переносити в всередині, але назовні нічого
тип Б_1, можу переносити в Б_2, в них нічого переносити не можу
тип Б_2, можу переносити в всередині, але назовні нічого
і я їм давав необхідні класи
а щоб не можна було переносити і між однаковими списками, я додавав унікальний клас (типу drag_list_n - образно)
і перевіряв уже наявність тих чи інших класів, а не порівнював ноди