From 467b7a40d8044aee5385e2cfee0e1cdfc5931c53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=A4ggmark?= Date: Fri, 8 Mar 2019 10:46:52 +0100 Subject: [PATCH] teams: feature toggle component --- .../app/core/components/WithFeatureToggle.tsx | 13 + public/app/features/teams/TeamMembers.tsx | 32 +- .../__snapshots__/TeamMembers.test.tsx.snap | 800 +++++++++--------- 3 files changed, 453 insertions(+), 392 deletions(-) create mode 100644 public/app/core/components/WithFeatureToggle.tsx diff --git a/public/app/core/components/WithFeatureToggle.tsx b/public/app/core/components/WithFeatureToggle.tsx new file mode 100644 index 00000000000..250697e0029 --- /dev/null +++ b/public/app/core/components/WithFeatureToggle.tsx @@ -0,0 +1,13 @@ +import React, { FunctionComponent } from 'react'; + +export interface Props { + featureToggle: boolean; +} + +export const WithFeatureToggle: FunctionComponent = ({ featureToggle, children }) => { + if (featureToggle === true) { + return <>{children}; + } + + return null; +}; diff --git a/public/app/features/teams/TeamMembers.tsx b/public/app/features/teams/TeamMembers.tsx index 341d9311b53..3054524023d 100644 --- a/public/app/features/teams/TeamMembers.tsx +++ b/public/app/features/teams/TeamMembers.tsx @@ -8,6 +8,8 @@ import { TeamMember, User, teamsPermissionLevels } from 'app/types'; import { loadTeamMembers, addTeamMember, removeTeamMember, setSearchMemberQuery } from './state/actions'; import { getSearchMemberQuery, getTeamMembers } from './state/selectors'; import { FilterInput } from 'app/core/components/FilterInput/FilterInput'; +import { WithFeatureToggle } from 'app/core/components/WithFeatureToggle'; +import { config } from 'app/core/config'; export interface Props { members: TeamMember[]; @@ -78,18 +80,20 @@ export class TeamMembers extends PureComponent { {member.login} {member.email} - -
- {}} + className="gf-form-select-box__control--menu-right" + value={currentPermissionLevel} + isDisabled={true} + /> +
+ + {syncEnabled && this.renderLabels(member.labels)} this.onRemoveMember(member)} /> @@ -145,7 +149,9 @@ export class TeamMembers extends PureComponent { Name Email - Permission + + Permission + {syncEnabled && } diff --git a/public/app/features/teams/__snapshots__/TeamMembers.test.tsx.snap b/public/app/features/teams/__snapshots__/TeamMembers.test.tsx.snap index ba20817b836..fc168457334 100644 --- a/public/app/features/teams/__snapshots__/TeamMembers.test.tsx.snap +++ b/public/app/features/teams/__snapshots__/TeamMembers.test.tsx.snap @@ -69,9 +69,13 @@ exports[`Render should render component 1`] = ` Email - - Permission - + + + Permission + + Email - - Permission - + + + Permission + + test@test.com - -
- -
- - + width={null} + /> + + + @@ -253,48 +264,51 @@ exports[`Render should render team members 1`] = ` test@test.com - -
- -
- - + width={null} + /> + + + @@ -320,48 +334,51 @@ exports[`Render should render team members 1`] = ` test@test.com - -
- -
- - + width={null} + /> + + + @@ -387,48 +404,51 @@ exports[`Render should render team members 1`] = ` test@test.com - -
- -
- - + width={null} + /> + + + @@ -454,48 +474,51 @@ exports[`Render should render team members 1`] = ` test@test.com - -
- -
- - + width={null} + /> + + + @@ -579,9 +602,13 @@ exports[`Render should render team members when sync enabled 1`] = ` Email - - Permission - + + + Permission + + test@test.com - -
- -
- - + width={null} + /> + + + test@test.com - -
- -
- - + width={null} + /> + + + test@test.com - -
- -
- - + width={null} + /> + + + test@test.com - -
- -
- - + width={null} + /> + + + test@test.com - -
- -
- - + width={null} + /> + + +