UNPKG

react-polymorph

Version:

React components with highly customizable logic, markup and styles.

46 lines (33 loc) 1.83 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ButtonSpinnerSkin = void 0; var _react = _interopRequireDefault(require("react")); var _classnames = _interopRequireDefault(require("classnames")); var _LoadingSpinner = require("../../components/LoadingSpinner"); var _LoadingSpinnerSkin = require("./LoadingSpinnerSkin"); var _props = require("../../utils/props"); var _components = require("../../components"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _extends() { _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; }; return _extends.apply(this, arguments); } var ButtonSpinnerSkin = function ButtonSpinnerSkin(props) { var className = props.className, disabled = props.disabled, label = props.label, loading = props.loading, themeId = props.themeId; var buttonTheme = props.theme[themeId]; var spinnerTheme = props.theme[_components.IDENTIFIERS.LOADING_SPINNER]; var renderLoadingSpinner = function renderLoadingSpinner() { return /*#__PURE__*/_react["default"].createElement(_LoadingSpinner.LoadingSpinner, { skin: _LoadingSpinnerSkin.LoadingSpinnerSkin, theme: spinnerTheme }); }; return /*#__PURE__*/_react["default"].createElement("button", _extends({}, (0, _props.pickDOMProps)(props), { className: (0, _classnames["default"])([className, buttonTheme.root, disabled ? buttonTheme.disabled : null]) }), loading ? renderLoadingSpinner() : label); }; exports.ButtonSpinnerSkin = ButtonSpinnerSkin; //# sourceMappingURL=ButtonSpinnerSkin.js.map