spaceChildren property

List<SpaceChild> get spaceChildren

List all children of this space. Children without a via domain will be ignored. Children are sorted by the order while those without this field will be sorted at the end of the list.

Implementation

List<SpaceChild> get spaceChildren => !isSpace
    ? throw Exception('Room is not a space!')
    : (states[EventTypes.SpaceChild]
            ?.values
            .map((state) => SpaceChild.fromState(state))
            .where((child) => child.via.isNotEmpty)
            .toList() ??
        [])
  ..sort(
    (a, b) => a.order.isEmpty || b.order.isEmpty
        ? b.order.compareTo(a.order)
        : a.order.compareTo(b.order),
  );