UNPKG

@coreui/react

Version:

UI Components Library for React.js

28 lines (25 loc) 1.4 kB
import { __rest, __assign } from '../../node_modules/tslib/tslib.es6.js'; import React, { forwardRef } from 'react'; import PropTypes from 'prop-types'; import classNames from '../../_virtual/index.js'; import { colorPropType } from '../../props.js'; var CSpinner = forwardRef(function (_a, ref) { var _b; var _c = _a.as, Component = _c === void 0 ? 'div' : _c, className = _a.className, color = _a.color, size = _a.size, _d = _a.variant, variant = _d === void 0 ? 'border' : _d, _e = _a.visuallyHiddenLabel, visuallyHiddenLabel = _e === void 0 ? 'Loading...' : _e, rest = __rest(_a, ["as", "className", "color", "size", "variant", "visuallyHiddenLabel"]); return (React.createElement(Component, __assign({ className: classNames("spinner-".concat(variant), (_b = {}, _b["spinner-".concat(variant, "-").concat(size)] = size, _b["text-".concat(color)] = color, _b), className), role: "status" }, rest, { ref: ref }), React.createElement("span", { className: "visually-hidden" }, visuallyHiddenLabel))); }); CSpinner.propTypes = { as: PropTypes.string, className: PropTypes.string, color: colorPropType, size: PropTypes.oneOf(['sm']), variant: PropTypes.oneOf(['border', 'grow']), visuallyHiddenLabel: PropTypes.string, }; CSpinner.displayName = 'CSpinner'; export { CSpinner }; //# sourceMappingURL=CSpinner.js.map