module

ContributorMural::Resolver

Merges config users and API contributors into the final render list. Pure: takes already-fetched contributor data, performs no IO.

Class methods

grouped(users : Array(EmbeddedUser), config : Config) : Array(Tuple(String | Nil, Array(EmbeddedUser)))

Splits embedded users into ordered (title, members) sections. Ungrouped users come first without a heading; explicit groups fixes the order, otherwise groups appear as first mentioned in the config.

This is the one place a person can land in more than one bucket. Everything upstream — the fetch, the sort, the limit — has already treated them as the single person they are; also_in only decides how many times that one entry is drawn.

Source
resolve(config : Config, api_users : Array(ResolvedUser) = [] of ResolvedUser) : Array(ResolvedUser)
Source