wix-storybook-utils
Version:
Utilities for automated component documentation within Storybook
43 lines • 2.01 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var react_1 = tslib_1.__importStar(require("react"));
var classnames_1 = tslib_1.__importDefault(require("classnames"));
var button_scss_1 = tslib_1.__importDefault(require("./button.scss"));
var prop_types_1 = tslib_1.__importDefault(require("prop-types"));
var Button = /** @class */ (function (_super) {
tslib_1.__extends(Button, _super);
function Button() {
return _super !== null && _super.apply(this, arguments) || this;
}
Button.prototype.render = function () {
var _a;
var _b = this.props, size = _b.size, className = _b.className, fullWidth = _b.fullWidth, children = _b.children, dataHook = _b.dataHook, disabled = _b.disabled, onClick = _b.onClick;
return (react_1.default.createElement("button", { className: (0, classnames_1.default)(className, button_scss_1.default.root, button_scss_1.default["size-".concat(size)], (_a = {},
_a[button_scss_1.default.fluid] = fullWidth,
_a)), disabled: disabled, "data-hook": dataHook, onClick: onClick }, children));
};
Button.displayName = 'Button';
Button.propTypes = {
/** Additional classes */
className: prop_types_1.default.string,
/** Size of Button content */
size: prop_types_1.default.oneOf(['tiny', 'small', 'medium', 'large']),
/** Click event handler */
onClick: prop_types_1.default.func,
/** Sets button width to 100% */
fullWidth: prop_types_1.default.bool,
/** Applies disabled styles */
disabled: prop_types_1.default.bool,
/** String based node */
children: prop_types_1.default.node,
/** String based data hook */
dataHook: prop_types_1.default.string,
};
Button.defaultProps = {
size: 'medium',
};
return Button;
}(react_1.PureComponent));
exports.default = Button;
//# sourceMappingURL=button.js.map