diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2d6aedcf78b..cb3c5edf68f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -141,6 +141,7 @@ when possible and accept [props](https://facebook.github.io/react/docs/component * Provide a storybook with your component named on the parent component with a `.stories.js` suffix (e.g., `ListGroup.stories.js`) * When your stories contain multiple files, put them in a subfolder named `Stories` * `src/**/*.stories.js` and `src/**/Stories/` are excluded from the package build output +* When writing a component and you want to use the classnames package, be sure to import and name it `classNames`. For example - ` import classNames from 'classnames' ` * Exporting components from other libraries (without manipulating them) to consumers is a common task, use: ```js diff --git a/src/components/AboutModal/AboutModalVersions.js b/src/components/AboutModal/AboutModalVersions.js index 4e938c9ebc3..337db5cd89b 100644 --- a/src/components/AboutModal/AboutModalVersions.js +++ b/src/components/AboutModal/AboutModalVersions.js @@ -1,9 +1,9 @@ -import cx from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; const AboutModalVersions = ({ children, className, ...rest }) => { - const classes = cx('product-versions-pf', className); + const classes = classNames('product-versions-pf', className); return (
diff --git a/src/components/Alert/Alert.js b/src/components/Alert/Alert.js index 853089ed25a..f0a32016343 100644 --- a/src/components/Alert/Alert.js +++ b/src/components/Alert/Alert.js @@ -1,4 +1,4 @@ -import ClassNames from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; import { Button } from '../Button'; @@ -16,7 +16,7 @@ import { const Alert = ({ children, className, onDismiss, type, ...props }) => { warnIfDeprecatedType(type); - const alertClass = ClassNames('alert', className, getClassName(type), { + const alertClass = classNames('alert', className, getClassName(type), { 'alert-dismissable': onDismiss }); diff --git a/src/components/Breadcrumb/Breadcrumb.js b/src/components/Breadcrumb/Breadcrumb.js index e205b0d51df..99650d6de54 100644 --- a/src/components/Breadcrumb/Breadcrumb.js +++ b/src/components/Breadcrumb/Breadcrumb.js @@ -1,10 +1,10 @@ import React from 'react'; -import cx from 'classnames'; +import classNames from 'classnames'; import PropTypes from 'prop-types'; import { Breadcrumb as BsBreadcrumb } from 'react-bootstrap'; const Breadcrumb = ({ title, ...props }) => { - const breadcrumbClass = cx({ + const breadcrumbClass = classNames({ 'breadcrumbs-pf-title': title }); return ; diff --git a/src/components/DropdownKebab/DropdownKebab.js b/src/components/DropdownKebab/DropdownKebab.js index 3fa14cf1613..de114ff98b8 100644 --- a/src/components/DropdownKebab/DropdownKebab.js +++ b/src/components/DropdownKebab/DropdownKebab.js @@ -1,4 +1,4 @@ -import ClassNames from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; import { Icon } from '../Icon'; @@ -16,7 +16,7 @@ const DropdownKebab = ({ componentClass, toggleStyle }) => { - const kebabClass = ClassNames('dropdown-kebab-pf', className); + const kebabClass = classNames('dropdown-kebab-pf', className); return ( { - const classes = ClassNames('blank-slate-pf', className); + const classes = classNames('blank-slate-pf', className); return (
diff --git a/src/components/EmptyState/EmptyStateAction.js b/src/components/EmptyState/EmptyStateAction.js index 5ac9104914d..f0d471b549d 100644 --- a/src/components/EmptyState/EmptyStateAction.js +++ b/src/components/EmptyState/EmptyStateAction.js @@ -1,4 +1,4 @@ -import ClassNames from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; @@ -6,7 +6,7 @@ import PropTypes from 'prop-types'; * EmptyStateAction renders contents of the element */ const EmptyStateAction = ({ children, className, secondary, ...props }) => { - const classes = ClassNames( + const classes = classNames( { 'blank-slate-pf-main-action': !secondary, 'blank-slate-pf-secondary-action': secondary diff --git a/src/components/EmptyState/EmptyStateHelp.js b/src/components/EmptyState/EmptyStateHelp.js index 575fc2d7876..ea56880d641 100644 --- a/src/components/EmptyState/EmptyStateHelp.js +++ b/src/components/EmptyState/EmptyStateHelp.js @@ -1,4 +1,4 @@ -import ClassNames from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; @@ -6,7 +6,7 @@ import PropTypes from 'prop-types'; * EmptyStateHelp renders contents of the element */ const EmptyStateHelp = ({ children, className, ...props }) => { - const classes = ClassNames('blank-slate-pf-helpLink', className); + const classes = classNames('blank-slate-pf-helpLink', className); return (

diff --git a/src/components/EmptyState/EmptyStateIcon.js b/src/components/EmptyState/EmptyStateIcon.js index 943fa7fecd1..7e0e647f5fb 100644 --- a/src/components/EmptyState/EmptyStateIcon.js +++ b/src/components/EmptyState/EmptyStateIcon.js @@ -1,4 +1,4 @@ -import ClassNames from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; import { Icon } from '../Icon'; @@ -7,7 +7,7 @@ import { Icon } from '../Icon'; * EmptyStateIcon renders element */ const EmptyStateIcon = ({ className, type, name, ...props }) => { - const classes = ClassNames('blank-slate-pf-icon', className); + const classes = classNames('blank-slate-pf-icon', className); return (

diff --git a/src/components/EmptyState/EmptyStateInfo.js b/src/components/EmptyState/EmptyStateInfo.js index 88407e77ef6..ecea8a1a374 100644 --- a/src/components/EmptyState/EmptyStateInfo.js +++ b/src/components/EmptyState/EmptyStateInfo.js @@ -1,4 +1,4 @@ -import ClassNames from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; @@ -6,7 +6,7 @@ import PropTypes from 'prop-types'; * EmptyStateInfo renders contents of the element */ const EmptyStateInfo = ({ children, className, ...props }) => { - const classes = ClassNames('blank-slate-pf-info', className); + const classes = classNames('blank-slate-pf-info', className); return (

diff --git a/src/components/EmptyState/EmptyStateTitle.js b/src/components/EmptyState/EmptyStateTitle.js index 636bef3935b..36f0eaf90f6 100644 --- a/src/components/EmptyState/EmptyStateTitle.js +++ b/src/components/EmptyState/EmptyStateTitle.js @@ -1,4 +1,4 @@ -import ClassNames from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; @@ -6,7 +6,7 @@ import PropTypes from 'prop-types'; * EmptyStateTitle renders contents of the element */ const EmptyStateTitle = ({ children, className, ...props }) => { - const classes = ClassNames('h1', 'blank-slate-pf-title', className); + const classes = classNames('h1', 'blank-slate-pf-title', className); return (

{children} diff --git a/src/components/Filter/Filter.js b/src/components/Filter/Filter.js index 5014fd84af3..2f3749100b1 100644 --- a/src/components/Filter/Filter.js +++ b/src/components/Filter/Filter.js @@ -1,4 +1,4 @@ -import cx from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; import { getContext } from 'recompose'; @@ -7,7 +7,7 @@ import { toolbarContextTypes } from '../Toolbar/ToolbarConstants'; // Disabled eslint due to `isDescendantOfToolbar` being a context property we don't want passed by consumers // eslint-disable-next-line react/prop-types const Filter = ({ children, className, isDescendantOfToolbar, ...rest }) => { - const classes = cx( + const classes = classNames( { 'filter-pf form-group': true, 'toolbar-pf-filter': isDescendantOfToolbar diff --git a/src/components/Filter/FilterActiveLabel.js b/src/components/Filter/FilterActiveLabel.js index f6c5a511879..cac7bf117f2 100644 --- a/src/components/Filter/FilterActiveLabel.js +++ b/src/components/Filter/FilterActiveLabel.js @@ -1,9 +1,9 @@ -import cx from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; const FilterActiveLabel = ({ children, className, ...rest }) => { - const classes = cx('filter-pf-active-label', className); + const classes = classNames('filter-pf-active-label', className); return

{children}

; }; diff --git a/src/components/Filter/FilterCategorySelector.js b/src/components/Filter/FilterCategorySelector.js index 1ec0e3c21b6..d38c6e8121d 100644 --- a/src/components/Filter/FilterCategorySelector.js +++ b/src/components/Filter/FilterCategorySelector.js @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import cx from 'classnames'; +import classNames from 'classnames'; import { DropdownButton } from '../Button'; import { MenuItem } from '../MenuItem'; import { noop } from '../../common/helpers'; @@ -15,7 +15,7 @@ const FilterCategorySelector = ({ onFilterCategorySelected, ...rest }) => { - const classes = cx('filter-pf-category-select', className); + const classes = classNames('filter-pf-category-select', className); if (placeholder || (filterCategories && filterCategories.length > 1)) { let title; diff --git a/src/components/Filter/FilterCategoryValueSelector.js b/src/components/Filter/FilterCategoryValueSelector.js index b1f4b4183de..762cc78773a 100644 --- a/src/components/Filter/FilterCategoryValueSelector.js +++ b/src/components/Filter/FilterCategoryValueSelector.js @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import cx from 'classnames'; +import classNames from 'classnames'; import { DropdownButton } from '../Button'; import { MenuItem } from '../MenuItem'; import { noop } from '../../common/helpers'; @@ -14,7 +14,7 @@ const FilterCategoryValueSelector = ({ onCategoryValueSelected, ...rest }) => { - const classes = cx('filter-pf-select', className); + const classes = classNames('filter-pf-select', className); if (placeholder || (categoryValues && categoryValues.length > 1)) { let title; diff --git a/src/components/Filter/FilterItem.js b/src/components/Filter/FilterItem.js index e86b1143304..0bd69131d88 100644 --- a/src/components/Filter/FilterItem.js +++ b/src/components/Filter/FilterItem.js @@ -1,11 +1,11 @@ -import ClassNames from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; import { noop } from '../../common/helpers'; import { DisposableLabel } from '../Label'; const FilterItem = ({ children, className, onRemove, filterData, ...rest }) => { - const classes = ClassNames(className); + const classes = classNames(className); return (
  • diff --git a/src/components/Filter/FilterList.js b/src/components/Filter/FilterList.js index 881f187a304..9acc511c51a 100644 --- a/src/components/Filter/FilterList.js +++ b/src/components/Filter/FilterList.js @@ -1,4 +1,4 @@ -import cx from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; @@ -6,7 +6,7 @@ const FilterList = ({ children, className, ...rest }) => { if (!children) { return null; } - const classes = cx('list-inline', className); + const classes = classNames('list-inline', className); return
      {children}
    ; }; diff --git a/src/components/Filter/FilterTypeSelector.js b/src/components/Filter/FilterTypeSelector.js index 636d012b2e0..5a7dfdbb322 100644 --- a/src/components/Filter/FilterTypeSelector.js +++ b/src/components/Filter/FilterTypeSelector.js @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import cx from 'classnames'; +import classNames from 'classnames'; import { DropdownButton } from '../Button'; import { MenuItem } from '../MenuItem'; import { noop } from '../../common/helpers'; @@ -14,7 +14,7 @@ const FilterTypeSelector = ({ onFilterTypeSelected, ...rest }) => { - const classes = cx('input-group-btn', className); + const classes = classNames('input-group-btn', className); if (placeholder || (filterTypes && filterTypes.length > 1)) { let title; if (currentFilterType) { diff --git a/src/components/Filter/FilterValueSelector.js b/src/components/Filter/FilterValueSelector.js index 1cc35d4bae9..0d5ab4f1468 100644 --- a/src/components/Filter/FilterValueSelector.js +++ b/src/components/Filter/FilterValueSelector.js @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import cx from 'classnames'; +import classNames from 'classnames'; import { DropdownButton } from '../Button'; import { MenuItem } from '../MenuItem'; import { noop } from '../../common/helpers'; @@ -14,7 +14,7 @@ const FilterValueSelector = ({ onFilterValueSelected, ...rest }) => { - const classes = cx('filter-pf-select', className); + const classes = classNames('filter-pf-select', className); if (placeholder || (filterValues && filterValues.length > 1)) { let title; diff --git a/src/components/Icon/InnerComponents/PatternflyIcon.js b/src/components/Icon/InnerComponents/PatternflyIcon.js index fb780f0c703..72f9be3133d 100644 --- a/src/components/Icon/InnerComponents/PatternflyIcon.js +++ b/src/components/Icon/InnerComponents/PatternflyIcon.js @@ -1,11 +1,11 @@ -import cx from 'classnames'; +import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; const PatternflyIcon = ({ name, className, ...props }) => (