Iterable<Product> get items { return _rawData["avalable"] .toMap() .entries .map( (e) => _products[e.key] ??= Product._( toInt(e.key), e.value.toMap(), ), ) .toList() ..sort((p1, p2) => p1.rankOrderValue - p2.rankOrderValue); }