mirror of
https://github.com/grafana/grafana.git
synced 2025-02-20 11:48:34 -06:00
* creating types, actions, reducer * load teams and store in redux * delete team * set search query action and tests * Teampages page * team members, bug in fetching team * flattened team state, tests for TeamMembers * test for team member selector * team settings * actions for group sync * tests for team groups * removed comment * remove old stores * fix: formating of datasource.go * fix: minor changes to imports * adding debounce and fixing issue in teamlist * refactoring: moving types to their own files
31 lines
933 B
TypeScript
31 lines
933 B
TypeScript
import { Team, TeamsState, TeamState } from 'app/types';
|
|
|
|
export const getSearchQuery = (state: TeamsState) => state.searchQuery;
|
|
export const getSearchMemberQuery = (state: TeamState) => state.searchMemberQuery;
|
|
export const getTeamGroups = (state: TeamState) => state.groups;
|
|
export const getTeamsCount = (state: TeamsState) => state.teams.length;
|
|
|
|
export const getTeam = (state: TeamState, currentTeamId): Team | null => {
|
|
if (state.team.id === parseInt(currentTeamId, 10)) {
|
|
return state.team;
|
|
}
|
|
|
|
return null;
|
|
};
|
|
|
|
export const getTeams = (state: TeamsState) => {
|
|
const regex = RegExp(state.searchQuery, 'i');
|
|
|
|
return state.teams.filter(team => {
|
|
return regex.test(team.name);
|
|
});
|
|
};
|
|
|
|
export const getTeamMembers = (state: TeamState) => {
|
|
const regex = RegExp(state.searchMemberQuery, 'i');
|
|
|
|
return state.members.filter(member => {
|
|
return regex.test(member.login) || regex.test(member.email);
|
|
});
|
|
};
|