"Any" group to group different domains (like old style yaml groups)

Problem

As HA wants to go away from users configuring stuff in plain yaml and instead do it in the frontend,
“old style” groups are something that’s still missing.

Those “old style” groups are currently the only viable way of creating a room-based entity which:

  1. can show you, at a glance, if anything is still turned on
  2. allowes you to turn off a room
  3. allowes you to group groups to f.e. turn off all rooms when leaving the house.
  4. Use that “group of room groups” for automations like “Notify me if something is still turned on when I leave”

While you can work around this to some extent, I’m sure people would agree that grouping entities together on a room-by-room basis is something sorely missing in ha, especially as areas (in there current state) aren’t all that usefull (no entity that can be controlled).

Groups also give you a nice popup with all entities which can allow you to declutter the frontend if so desired.

There are probably many more examples where grouping different domains would makes sense.

Proposal

First off.
I already tried implementing this based on group/switch.py but as far as I can tell it’s not that easy as the current implementation of the group component relies on grouping a singular domain.
As I’m not familiar with the framework I have no Idea how to get around this or if I’m missunderstanding it.

How I would expect the end result to “look” like is simple.

  • Allow grouping of any domain (Required)
  • For each selected entity allow the user to select whether: (Optional, but could be useful. Covers come to mind)
    • The on/off state should propergate to the group
    • Turning the group on/off should also turn on/off the entity

This group would only support the generic turn_on / turn_off action.