adjust spacing of org add/edit form, add CardCloseButton

This commit is contained in:
Keith Grant
2019-05-02 08:34:09 -04:00
parent 1be496cfc1
commit 1490235752
7 changed files with 84 additions and 46 deletions

View File

@@ -34,7 +34,7 @@
// sidebar overrides // sidebar overrides
// //
.pf-c-page__sidebar{ .pf-c-page__sidebar {
--pf-c-page__sidebar--md--Width: 255px; --pf-c-page__sidebar--md--Width: 255px;
.pf-c-nav { .pf-c-nav {
@@ -205,8 +205,25 @@
// pf card overrides // pf card overrides
// //
.pf-c-card { // specificity hack to override PatternFly
.pf-c-card.pf-c-card {
--pf-c-card--child--PaddingRight: 20px;
--pf-c-card--child--PaddingBottom: 24px;
--pf-c-card--child--PaddingLeft: 20px;
display: flex; display: flex;
position: relative;
}
.pf-c-card__close {
position: absolute;
top: 10px;
right: 4px;
color: var(--pf-c-button--m-plain--Color);
&.pf-c-button {
position: absolute;
}
} }
.pf-c-card__header { .pf-c-card__header {
@@ -300,14 +317,6 @@
margin-bottom: 10px; margin-bottom: 10px;
} }
.OrgsTab-closeButton {
color: black;
float: right;
position: relative;
top: -25px;
margin: 0 10px;
right: 10px;
}
.awx-c-form-action-group { .awx-c-form-action-group {
float: right; float: right;
display: block; display: block;

View File

@@ -0,0 +1,49 @@
import React from 'react';
import { string } from 'prop-types';
import { Link } from 'react-router-dom';
import { Button } from '@patternfly/react-core';
import { TimesIcon } from '@patternfly/react-icons';
import { I18n } from '@lingui/react';
import { t } from '@lingui/macro';
function CardCloseButton ({ linkTo, ...props }) {
if (linkTo) {
return (
<I18n>
{({ i18n }) => (
<Link
className="pf-c-button pf-c-card__close"
aria-label={i18n._(t`Close`)}
title={i18n._(t`Close`)}
to={linkTo}
{...props}
>
<TimesIcon />
</Link>
)}
</I18n>
);
}
return (
<I18n>
{({ i18n }) => (
<Button
variant="plain"
className="pf-c-card__close"
aria-label={i18n._(t`Close`)}
{...props}
>
<TimesIcon />
</Button>
)}
</I18n>
);
}
CardCloseButton.propTypes = {
linkTo: string,
};
CardCloseButton.defaultProps = {
linkTo: null,
};
export default CardCloseButton;

View File

@@ -1,21 +1,19 @@
import React from 'react'; import React from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { I18n } from '@lingui/react'; import { I18n } from '@lingui/react';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { import {
ActionGroup, ActionGroup,
Toolbar, Toolbar,
ToolbarGroup, ToolbarGroup,
Button Button
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import './styles.scss';
const formActionGroupStyle = { const formActionGroupStyle = {
display: 'flex', display: 'flex',
flexDirection: 'row', flexDirection: 'row',
justifyContent: 'flex-end', justifyContent: 'flex-end',
marginTop: '10px'
}; };
const buttonGroupStyle = { const buttonGroupStyle = {

View File

@@ -0,0 +1,3 @@
import FormActionGroup from './FormActionGroup';
export default FormActionGroup;

View File

@@ -0,0 +1,3 @@
.pf-c-form__group.pf-m-action {
--pf-c-form__group--m-action--MarginTop: 0;
}

View File

@@ -1,23 +1,11 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import { I18n, i18nMark } from '@lingui/react'; import { I18n, i18nMark } from '@lingui/react';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { import { Switch, Route, withRouter, Redirect } from 'react-router-dom';
Switch, import { Card, CardHeader, PageSection } from '@patternfly/react-core';
Route,
withRouter,
Redirect,
Link
} from 'react-router-dom';
import {
Card,
CardHeader,
PageSection,
} from '@patternfly/react-core';
import {
TimesIcon
} from '@patternfly/react-icons';
import { withNetwork } from '../../../../contexts/Network'; import { withNetwork } from '../../../../contexts/Network';
import NotifyAndRedirect from '../../../../components/NotifyAndRedirect'; import NotifyAndRedirect from '../../../../components/NotifyAndRedirect';
import CardCloseButton from '../../../../components/CardCloseButton';
import OrganizationAccess from './OrganizationAccess'; import OrganizationAccess from './OrganizationAccess';
import OrganizationDetail from './OrganizationDetail'; import OrganizationDetail from './OrganizationDetail';
import OrganizationEdit from './OrganizationEdit'; import OrganizationEdit from './OrganizationEdit';
@@ -125,7 +113,9 @@ class Organization extends Component {
} = this.state; } = this.state;
const tabsPaddingOverride = { const tabsPaddingOverride = {
padding: '0' paddingTop: '0',
paddingRight: '0',
paddingLeft: '0',
}; };
const canSeeNotificationsTab = me.is_system_auditor || isNotifAdmin || isAuditorOfThisOrg; const canSeeNotificationsTab = me.is_system_auditor || isNotifAdmin || isAuditorOfThisOrg;
@@ -164,13 +154,7 @@ class Organization extends Component {
labeltext={i18n._(t`Organization detail tabs`)} labeltext={i18n._(t`Organization detail tabs`)}
tabsArray={tabsArray} tabsArray={tabsArray}
/> />
<Link <CardCloseButton linkTo="/organizations" />
aria-label="Close"
title="Close"
to="/organizations"
>
<TimesIcon className="OrgsTab-closeButton" />
</Link>
</React.Fragment> </React.Fragment>
)} )}
</I18n> </I18n>

View File

@@ -8,13 +8,11 @@ import {
Card, Card,
CardHeader, CardHeader,
CardBody, CardBody,
Button,
Tooltip, Tooltip,
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import { TimesIcon } from '@patternfly/react-icons';
import { withNetwork } from '../../../contexts/Network'; import { withNetwork } from '../../../contexts/Network';
import CardCloseButton from '../../../components/CardCloseButton';
import OrganizationForm from '../components/OrganizationForm'; import OrganizationForm from '../components/OrganizationForm';
class OrganizationAdd extends React.Component { class OrganizationAdd extends React.Component {
@@ -70,13 +68,7 @@ class OrganizationAdd extends React.Component {
content={i18n._(t`Close`)} content={i18n._(t`Close`)}
position="top" position="top"
> >
<Button <CardCloseButton onClick={this.handleCancel} />
variant="plain"
aria-label={i18n._(t`Close`)}
onClick={this.handleCancel}
>
<TimesIcon />
</Button>
</Tooltip> </Tooltip>
</CardHeader> </CardHeader>
<CardBody> <CardBody>