@helpscout/hsds-react
Version:
React component library for Help Scout's Design System
80 lines (58 loc) • 2.77 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _getValidProps = _interopRequireDefault(require("@helpscout/react-utils/dist/getValidProps"));
var _classnames = _interopRequireDefault(require("classnames"));
var _Image = require("./Image.css");
var _Image2 = require("./Image.utils");
var _jsxRuntime = require("react/jsx-runtime");
var ImageComponent = function ImageComponent(props) {
var className = props.className,
block = props.block,
maxHeight = props.maxHeight,
maxWidth = props.maxWidth,
shape = props.shape,
style = props.style,
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["className", "block", "maxHeight", "maxWidth", "shape", "style"]);
var componentClassName = (0, _classnames.default)('c-Image', block && 'is-block', shape && "is-" + shape, className);
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Image.ImageUI, (0, _extends2.default)({}, (0, _getValidProps.default)(rest), {
className: componentClassName,
size: (0, _Image2.getImageSize)(props)
}));
};
ImageComponent.defaultProps = {
'data-cy': 'Image',
shape: '',
style: {}
};
ImageComponent.propTypes = {
/** Alt description for the image. */
alt: _propTypes.default.string,
/** Enables `display: block` for the image. */
block: _propTypes.default.bool,
/** Custom class names to be added to the component. */
className: _propTypes.default.string,
/** Width for the image. */
height: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
/** Max height for the image. */
maxHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
/** Max width for the image. */
maxWidth: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
/** Source for the image. Requried. */
src: _propTypes.default.string,
shape: _propTypes.default.oneOf(['rounded', 'square', '']),
/** Title description for the image. */
title: _propTypes.default.string,
/** Width for the image. */
width: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
/** Data attr for Cypress tests. */
'data-cy': _propTypes.default.string
};
ImageComponent.displayName = 'Image';
var _default = ImageComponent;
exports.default = _default;