* feat: 🎸 add scope filtering to role/add-principals route * fix: 🐛 remove unnecessary helper * feat: 🎸 add scope filtering to group add-members route
36 lines
897 B
JavaScript
36 lines
897 B
JavaScript
import Controller from '@ember/controller';
|
|
import { inject as service } from '@ember/service';
|
|
|
|
export default class ScopesScopeGroupsGroupAddMembersController extends Controller {
|
|
// =services
|
|
|
|
@service intl;
|
|
|
|
// =attributes
|
|
|
|
/**
|
|
* Translated new group breadcrumb
|
|
* @type {string}
|
|
*/
|
|
get breadCrumb() {
|
|
return this.intl.t('resources.group.messages.add-members.title');
|
|
}
|
|
|
|
/**
|
|
* Returns a flat array of scopes, sorted and "grouped by" parent scope,
|
|
* beginning with global.
|
|
*/
|
|
get flatSortedScopes() {
|
|
const { scopes } = this.model;
|
|
const global = scopes.find((scope) => scope.isGlobal);
|
|
const orgsAndProjects = scopes
|
|
.filter((scope) => scope.isOrg)
|
|
.map((org) => [
|
|
org,
|
|
...scopes.filter((scope) => scope.scopeID === org.id),
|
|
]);
|
|
const sorted = [global, ...orgsAndProjects].flat();
|
|
return sorted;
|
|
}
|
|
}
|