UNPKG

bbm-component-library-test

Version:

React based component library for all BBM web applications

104 lines (90 loc) 3.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.icons = undefined; var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; var _react = require("react"); var _react2 = _interopRequireDefault(_react); var _propTypes = require("prop-types"); var _styles = require("./styles"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } var icons = exports.icons = { Arrow: require("./Arrow").default, BoldArrow: require("./BoldArrow").default, BoldDoubleArrow: require("./BoldDoubleArrow").default, AssetPosition: require("./AssetPosition").default, Attention: require("./Attention").default, Bank: require("./Bank").default, Cash: require("./Cash").default, CashTransfer: require("./CashTransfer").default, Check: require("./Check").default, Checked: require("./Checked").default, Close: require("./Close").default, ForeignExchange: require("./ForeignExchange").default, EmptyWallet: require("./EmptyWallet").default, Document: require("./Document").default, Download: require("./Download").default, Email: require("./Email").default, Summary: require("./Summary").default, SmallArrow: require("./SmallArrow").default, Filter: require("./Filter").default, Signatures: require("./Signatures").default, SignatureGroup: require("./SignatureGroup").default, Info: require("./Info").default, Lock: require("./Lock").default, LinkArrow: require("./LinkArrow").default, Logo: require("./Logo").default, Logout: require("./Logout").default, Menu: require("./Menu").default, Transactions: require("./Transactions").default, MenuClose: require("./MenuClose").default, BrandLogo: require("./BrandLogo").default, Papers: require("./Papers").default, Portfolio: require("./Portfolio").default, Wallet: require("./Wallet").default, NotFound: require("./NotFound").default, Keyboard: require("./Keyboard").default, FlagBR: require("./FlagBR").default, FlagUSA: require("./FlagUSA").default, FlagCN: require("./FlagCN").default, Erase: require("./Erase").default, ToastrClose: require("./ToastrClose").default, WaitingWarning: require("./WaitingWarning").default, SentMail: require("./SentMail").default }; function Icon(_ref) { var type = _ref.type, color = _ref.color, width = _ref.width, height = _ref.height, dataTest = _ref.dataTest, props = _objectWithoutProperties(_ref, ["type", "color", "width", "height", "dataTest"]); var IconSvg = icons[type]; if (IconSvg) { return _react2.default.createElement( _styles.Span, _extends({ color: color, width: width, height: height, "data-test": dataTest }, props), _react2.default.createElement(IconSvg, null) ); } return null; } Icon.defaultProps = { color: null, height: null, width: null }; Icon.propTypes = { color: _propTypes.string, height: _propTypes.string, width: _propTypes.string, type: _propTypes.string.isRequired // eslint-disable-line react/no-typos }; exports.default = Icon;