UNPKG

react-email-builder

Version:
36 lines (35 loc) 1.69 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Button = void 0; const clsx_1 = __importDefault(require("clsx")); const react_1 = __importDefault(require("react")); const Icon_1 = require("../../components/Icon"); const utils_1 = require("../../utils"); function Button({ className, loading, children, style, block, size, secondary, icon, plain, onClick }) { const css = (0, utils_1.getCss)('Button', (ns) => ({ root: ns(), icon: ns('icon'), spin: (0, clsx_1.default)(ns('icon'), ns('spin')), text: ns('text'), loading: ns('loading'), input: ns('input'), inline: ns('inline'), small: ns('small'), primary: ns('primary'), plain: ns('plain') })); return (react_1.default.createElement("div", { className: (0, clsx_1.default)(css.root, className, { [css.loading]: loading, [css.inline]: !block, [css.small]: size === 'small', [css.primary]: !secondary && !plain, [css.plain]: plain }), style: style, onClick: onClick, role: "button" }, loading ? (react_1.default.createElement("div", { className: css.spin }, react_1.default.createElement(Icon_1.Icon, { name: "loading" }))) : (react_1.default.createElement(react_1.default.Fragment, null, icon ? react_1.default.createElement("div", { className: css.icon }, icon) : null)), react_1.default.createElement("div", { className: css.text }, children))); } exports.Button = Button;