mirror of
https://github.com/Unleash/unleash.git
synced 2025-02-09 00:18:00 +01:00
fix: truncate long environment name (#535)
* fix: truncate long environment name * fix: truncate no strategies in NoItemsStrategies * fix: open doc link in new tab * fix: redirect to add new strategy view from overview tab * fix: truncate environment name in create strategy header Co-authored-by: Fredrik Strand Oseberg <fredrik.no@gmail.com>
This commit is contained in:
parent
15300c96d2
commit
c2b1645083
@ -8,4 +8,9 @@ export const useStyles = makeStyles(theme => ({
|
|||||||
display: 'block',
|
display: 'block',
|
||||||
margin: '1rem 0 0 0',
|
margin: '1rem 0 0 0',
|
||||||
},
|
},
|
||||||
|
envName: {
|
||||||
|
position: 'relative',
|
||||||
|
top: '6px',
|
||||||
|
fontWeight: 'bold'
|
||||||
|
},
|
||||||
}));
|
}));
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
import { UPDATE_FEATURE } from '../../../providers/AccessProvider/permissions';
|
import { UPDATE_FEATURE } from '../../../providers/AccessProvider/permissions';
|
||||||
import ConditionallyRender from '../../ConditionallyRender';
|
import ConditionallyRender from '../../ConditionallyRender';
|
||||||
import PermissionButton from '../../PermissionButton/PermissionButton';
|
import PermissionButton from '../../PermissionButton/PermissionButton';
|
||||||
|
import StringTruncator from '../../StringTruncator/StringTruncator';
|
||||||
import NoItems from '../NoItems';
|
import NoItems from '../NoItems';
|
||||||
|
|
||||||
import { useStyles } from './NoItemsStrategies.styles';
|
import { useStyles } from './NoItemsStrategies.styles';
|
||||||
@ -21,7 +22,13 @@ const NoItemsStrategies = ({
|
|||||||
return (
|
return (
|
||||||
<NoItems>
|
<NoItems>
|
||||||
<p className={styles.noItemsParagraph}>
|
<p className={styles.noItemsParagraph}>
|
||||||
No strategies added in the {envName} environment
|
No strategies added in the{' '}
|
||||||
|
<StringTruncator
|
||||||
|
text={envName}
|
||||||
|
maxWidth={'130'}
|
||||||
|
className={styles.envName}
|
||||||
|
/>{' '}
|
||||||
|
environment
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p className={styles.noItemsParagraph}>
|
<p className={styles.noItemsParagraph}>
|
||||||
@ -30,6 +37,8 @@ const NoItemsStrategies = ({
|
|||||||
<a
|
<a
|
||||||
className={styles.link}
|
className={styles.link}
|
||||||
href="https://docs.getunleash.io/user_guide/environments"
|
href="https://docs.getunleash.io/user_guide/environments"
|
||||||
|
target="_blank"
|
||||||
|
rel="noreferrer"
|
||||||
>
|
>
|
||||||
Read more here
|
Read more here
|
||||||
</a>
|
</a>
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
import { CloudCircle } from '@material-ui/icons';
|
import { CloudCircle } from '@material-ui/icons';
|
||||||
|
import StringTruncator from '../../../../common/StringTruncator/StringTruncator';
|
||||||
import { ICreateEnvironmentSuccessProps } from '../CreateEnvironmentSuccess';
|
import { ICreateEnvironmentSuccessProps } from '../CreateEnvironmentSuccess';
|
||||||
import { useStyles } from './CreateEnvironmentSuccessCard.styles';
|
import { useStyles } from './CreateEnvironmentSuccessCard.styles';
|
||||||
|
|
||||||
@ -16,7 +17,9 @@ const CreateEnvironmentSuccessCard = ({
|
|||||||
<div className={styles.infoContainer}>
|
<div className={styles.infoContainer}>
|
||||||
<div className={styles.infoInnerContainer}>
|
<div className={styles.infoInnerContainer}>
|
||||||
<div className={styles.infoTitle}>Id</div>
|
<div className={styles.infoTitle}>Id</div>
|
||||||
<div>{name}</div>
|
<div>
|
||||||
|
<StringTruncator text={name} maxWidth={'250'} />
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className={styles.infoInnerContainer}>
|
<div className={styles.infoInnerContainer}>
|
||||||
<div className={styles.infoTitle}>Type</div>
|
<div className={styles.infoTitle}>Type</div>
|
||||||
|
@ -52,10 +52,7 @@ const EnvironmentDeleteConfirm = ({
|
|||||||
strategies that are active in this environment across all
|
strategies that are active in this environment across all
|
||||||
feature toggles.
|
feature toggles.
|
||||||
</Alert>
|
</Alert>
|
||||||
<CreateEnvironmentSuccessCard
|
<CreateEnvironmentSuccessCard name={env?.name} type={env?.type} />
|
||||||
name={env?.name}
|
|
||||||
type={env?.type}
|
|
||||||
/>
|
|
||||||
|
|
||||||
<p className={styles.deleteParagraph}>
|
<p className={styles.deleteParagraph}>
|
||||||
In order to delete this environment, please enter the id of the
|
In order to delete this environment, please enter the id of the
|
||||||
|
@ -24,6 +24,7 @@ import {
|
|||||||
import { useDrag, useDrop, DropTargetMonitor } from 'react-dnd';
|
import { useDrag, useDrop, DropTargetMonitor } from 'react-dnd';
|
||||||
import { XYCoord } from 'dnd-core';
|
import { XYCoord } from 'dnd-core';
|
||||||
import DisabledIndicator from '../../../common/DisabledIndicator/DisabledIndicator';
|
import DisabledIndicator from '../../../common/DisabledIndicator/DisabledIndicator';
|
||||||
|
import StringTruncator from '../../../common/StringTruncator/StringTruncator';
|
||||||
|
|
||||||
interface IEnvironmentListItemProps {
|
interface IEnvironmentListItemProps {
|
||||||
env: IEnvironment;
|
env: IEnvironment;
|
||||||
@ -132,7 +133,9 @@ const EnvironmentListItem = ({
|
|||||||
<ListItemText
|
<ListItemText
|
||||||
primary={
|
primary={
|
||||||
<>
|
<>
|
||||||
<strong>{env.name}</strong>
|
<strong>
|
||||||
|
<StringTruncator text={env.name} maxWidth={'125'} />
|
||||||
|
</strong>
|
||||||
<ConditionallyRender
|
<ConditionallyRender
|
||||||
condition={!env.enabled}
|
condition={!env.enabled}
|
||||||
show={<DisabledIndicator />}
|
show={<DisabledIndicator />}
|
||||||
|
@ -19,7 +19,7 @@ const FeatureOverviewEnvironmentBody = ({
|
|||||||
const { projectId, featureId } = useParams<IFeatureViewParams>();
|
const { projectId, featureId } = useParams<IFeatureViewParams>();
|
||||||
const styles = useStyles();
|
const styles = useStyles();
|
||||||
const history = useHistory();
|
const history = useHistory();
|
||||||
const strategiesLink = `/projects/${projectId}/features2/${featureId}/strategies?environment=${featureEnvironment?.name}`;
|
const strategiesLink = `/projects/${projectId}/features2/${featureId}/strategies?environment=${featureEnvironment?.name}&addStrategy=true`;
|
||||||
|
|
||||||
if (!featureEnvironment) return null;
|
if (!featureEnvironment) return null;
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
import { useContext } from 'react';
|
import { useContext } from 'react';
|
||||||
import FeatureStrategiesUIContext from '../../../../../../contexts/FeatureStrategiesUIContext';
|
import FeatureStrategiesUIContext from '../../../../../../contexts/FeatureStrategiesUIContext';
|
||||||
import EnvironmentIcon from '../../../../../common/EnvironmentIcon/EnvironmentIcon';
|
import EnvironmentIcon from '../../../../../common/EnvironmentIcon/EnvironmentIcon';
|
||||||
|
import StringTruncator from '../../../../../common/StringTruncator/StringTruncator';
|
||||||
import { useStyles } from './FeatureStrategiesCreateHeader.styles';
|
import { useStyles } from './FeatureStrategiesCreateHeader.styles';
|
||||||
|
|
||||||
const FeatureStrategiesCreateHeader = () => {
|
const FeatureStrategiesCreateHeader = () => {
|
||||||
@ -13,8 +14,12 @@ const FeatureStrategiesCreateHeader = () => {
|
|||||||
return (
|
return (
|
||||||
<div className={styles.container}>
|
<div className={styles.container}>
|
||||||
<div className={styles.headerContainer}>
|
<div className={styles.headerContainer}>
|
||||||
<EnvironmentIcon enabled={activeEnvironment?.enabled} />{' '}
|
<EnvironmentIcon enabled={activeEnvironment?.enabled} />
|
||||||
Configuring strategy for {activeEnvironment?.name}
|
Configuring strategy for
|
||||||
|
<StringTruncator
|
||||||
|
text={activeEnvironment?.name}
|
||||||
|
maxWidth={'200'}
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
Loading…
Reference in New Issue
Block a user