UNPKG

chayns-components

Version:

A set of beautiful React components for developing chayns® applications.

73 lines (70 loc) 3.06 kB
"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 _clsx = _interopRequireDefault(require("clsx")); var _propTypes = _interopRequireDefault(require("prop-types")); var _react = _interopRequireWildcard(require("react")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } /** * @component */ /** * Badges are small, circular containers used to decorate other components with * glancable information. */ const Badge = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => { let { children, className, style, badgeRef, ...other } = _ref; const [minWidth, setMinWidth] = (0, _react.useState)(); const measureRef = (0, _react.useCallback)(node => { if (node) { setMinWidth(node.getBoundingClientRect().height); } }, []); return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({ className: (0, _clsx.default)(className, 'badge'), ref: node => { measureRef(node); if (ref) { ref(node); } if (badgeRef) { badgeRef(node); } }, style: { minWidth, ...style } }, other), children); }); var _default = Badge; exports.default = _default; Badge.propTypes = { /** * A React node that is displayed inside of the Badge. */ children: _propTypes.default.node.isRequired, /** * A classname that is applied to the Badge `<div>`-element. */ className: _propTypes.default.string, /** * A React style object that will be applied to the Badge `<div>`-element. */ style: _propTypes.default.objectOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number])), /** * Retrieves the ref to the Badge `<div>`-element. */ badgeRef: _propTypes.default.func }; Badge.displayName = 'Badge'; //# sourceMappingURL=Badge.js.map