Commit 467b7a40 by Hugo Häggmark Committed by Leonard Gram

teams: feature toggle component

parent aedc4782
import React, { FunctionComponent } from 'react';
export interface Props {
featureToggle: boolean;
}
export const WithFeatureToggle: FunctionComponent<Props> = ({ featureToggle, children }) => {
if (featureToggle === true) {
return <>{children}</>;
}
return null;
};
......@@ -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,6 +80,7 @@ export class TeamMembers extends PureComponent<Props, State> {
</td>
<td>{member.login}</td>
<td>{member.email}</td>
<WithFeatureToggle featureToggle={config.editorsCanOwn}>
<td>
<div className="gf-form">
<Select
......@@ -89,7 +92,8 @@ export class TeamMembers extends PureComponent<Props, State> {
isDisabled={true}
/>
</div>
</td>{' '}
</td>
</WithFeatureToggle>
{syncEnabled && this.renderLabels(member.labels)}
<td className="text-right">
<DeleteButton onConfirm={() => this.onRemoveMember(member)} />
......@@ -145,7 +149,9 @@ export class TeamMembers extends PureComponent<Props, State> {
<th />
<th>Name</th>
<th>Email</th>
<WithFeatureToggle featureToggle={config.editorsCanOwn}>
<th>Permission</th>
</WithFeatureToggle>
{syncEnabled && <th />}
<th style={{ width: '1%' }} />
</tr>
......
......@@ -69,9 +69,13 @@ exports[`Render should render component 1`] = `
<th>
Email
</th>
<Component
featureToggle={false}
>
<th>
Permission
</th>
</Component>
<th
style={
Object {
......@@ -156,9 +160,13 @@ exports[`Render should render team members 1`] = `
<th>
Email
</th>
<Component
featureToggle={false}
>
<th>
Permission
</th>
</Component>
<th
style={
Object {
......@@ -186,6 +194,9 @@ exports[`Render should render team members 1`] = `
<td>
test@test.com
</td>
<Component
featureToggle={false}
>
<td>
<div
className="gf-form"
......@@ -227,7 +238,7 @@ exports[`Render should render team members 1`] = `
/>
</div>
</td>
</Component>
<td
className="text-right"
>
......@@ -253,6 +264,9 @@ exports[`Render should render team members 1`] = `
<td>
test@test.com
</td>
<Component
featureToggle={false}
>
<td>
<div
className="gf-form"
......@@ -294,7 +308,7 @@ exports[`Render should render team members 1`] = `
/>
</div>
</td>
</Component>
<td
className="text-right"
>
......@@ -320,6 +334,9 @@ exports[`Render should render team members 1`] = `
<td>
test@test.com
</td>
<Component
featureToggle={false}
>
<td>
<div
className="gf-form"
......@@ -361,7 +378,7 @@ exports[`Render should render team members 1`] = `
/>
</div>
</td>
</Component>
<td
className="text-right"
>
......@@ -387,6 +404,9 @@ exports[`Render should render team members 1`] = `
<td>
test@test.com
</td>
<Component
featureToggle={false}
>
<td>
<div
className="gf-form"
......@@ -428,7 +448,7 @@ exports[`Render should render team members 1`] = `
/>
</div>
</td>
</Component>
<td
className="text-right"
>
......@@ -454,6 +474,9 @@ exports[`Render should render team members 1`] = `
<td>
test@test.com
</td>
<Component
featureToggle={false}
>
<td>
<div
className="gf-form"
......@@ -495,7 +518,7 @@ exports[`Render should render team members 1`] = `
/>
</div>
</td>
</Component>
<td
className="text-right"
>
......@@ -579,9 +602,13 @@ exports[`Render should render team members when sync enabled 1`] = `
<th>
Email
</th>
<Component
featureToggle={false}
>
<th>
Permission
</th>
</Component>
<th />
<th
style={
......@@ -610,6 +637,9 @@ exports[`Render should render team members when sync enabled 1`] = `
<td>
test@test.com
</td>
<Component
featureToggle={false}
>
<td>
<div
className="gf-form"
......@@ -651,7 +681,7 @@ exports[`Render should render team members when sync enabled 1`] = `
/>
</div>
</td>
</Component>
<td>
<TagBadge
count={0}
......@@ -693,6 +723,9 @@ exports[`Render should render team members when sync enabled 1`] = `
<td>
test@test.com
</td>
<Component
featureToggle={false}
>
<td>
<div
className="gf-form"
......@@ -734,7 +767,7 @@ exports[`Render should render team members when sync enabled 1`] = `
/>
</div>
</td>
</Component>
<td>
<TagBadge
count={0}
......@@ -776,6 +809,9 @@ exports[`Render should render team members when sync enabled 1`] = `
<td>
test@test.com
</td>
<Component
featureToggle={false}
>
<td>
<div
className="gf-form"
......@@ -817,7 +853,7 @@ exports[`Render should render team members when sync enabled 1`] = `
/>
</div>
</td>
</Component>
<td>
<TagBadge
count={0}
......@@ -859,6 +895,9 @@ exports[`Render should render team members when sync enabled 1`] = `
<td>
test@test.com
</td>
<Component
featureToggle={false}
>
<td>
<div
className="gf-form"
......@@ -900,7 +939,7 @@ exports[`Render should render team members when sync enabled 1`] = `
/>
</div>
</td>
</Component>
<td>
<TagBadge
count={0}
......@@ -942,6 +981,9 @@ exports[`Render should render team members when sync enabled 1`] = `
<td>
test@test.com
</td>
<Component
featureToggle={false}
>
<td>
<div
className="gf-form"
......@@ -983,7 +1025,7 @@ exports[`Render should render team members when sync enabled 1`] = `
/>
</div>
</td>
</Component>
<td>
<TagBadge
count={0}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment