@coreui/react
Version:
UI Components Library for React.js
28 lines (25 loc) • 1.4 kB
JavaScript
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