Блоки должны быть независимы друг от друга. Если что-то зависит от блока, то лучше сделать это элементом или модификатором.
Но если у вас для каждого элемента и каждого модификатора будет отдельный JS файл, то лучше подключать вторым способом. Если решили делать всё по разным файлам, то, наверное, лучше и подключать каждый файл отдельно, тем более ручной работы будет меньше, если все необходимые блоки / элементы / модификаторы подключаются сборщиком автоматически. Не придется прописывать импорты вручную для каждого элемента / модификатора.