react-base-guide
Version:
react ui components
21 lines • 1.33 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const jsx_runtime_1 = require("react/jsx-runtime");
const react_1 = require("react");
const loader_1 = __importDefault(require("../loader"));
const ripple_1 = __importDefault(require("../ripple"));
const base_1 = __importDefault(require("./base"));
const onRef = (ref, buttonRef) => {
return typeof ref === "function" ?
(e) => { ref(e); buttonRef.current = e; }
: buttonRef;
};
const Button = (props, ref) => {
const buttonRef = (typeof ref !== "function" && !!ref) ? ref : (0, react_1.useRef)(undefined);
return ((0, jsx_runtime_1.jsx)(ripple_1.default, Object.assign({ disabled: props.disabled || props.progress, className: props.className, styled: props.styled }, { children: (0, jsx_runtime_1.jsxs)(base_1.default, Object.assign({}, props, { ref: onRef(ref, buttonRef), disabled: props.disabled || props.progress, className: undefined, styled: { display: "block" } }, { children: [props.children, props.progress && (0, jsx_runtime_1.jsx)(loader_1.default, {})] })) })));
};
exports.default = (0, react_1.forwardRef)(Button);
//# sourceMappingURL=index.js.map