All files / elements/grid/Box component.js

100% Statements 5/5
100% Branches 0/0
100% Functions 1/1
100% Lines 5/5

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48                        17x       720x 720x                                         17x         17x        
 
import React from 'react';
import PropTypes from 'prop-types';
import {
  getProgress,
  getProgressDefaultProps,
  getProgressPropTypes,
} from 'src/elements/Progress';
import { Hideable } from 'src/elements/utils';
import { removeSomeProps } from 'src/utils/componentHelpers';
import { defaultFlexBoxStylesPropsToTrim } from '../utils';
 
export const BoxComponent = props => {
  const {
    children,
    progressPlacement,
  } = props;
  return (
    <div {...removeSomeProps(props, defaultFlexBoxStylesPropsToTrim)}>
      <Hideable
        isHidden={
          progressPlacement !== 'top'
        }
      >
        {getProgress(props)}
      </Hideable>
      {children}
      <Hideable
        isHidden={
          progressPlacement !== 'bottom'
        }
      >
        {getProgress(props)}
      </Hideable>
    </div>
  );
};
 
BoxComponent.propTypes = {
  ...getProgressPropTypes,
  children: PropTypes.any,
};
 
BoxComponent.defaultProps = {
  ...getProgressDefaultProps,
  children: null,
};