@vtex/styleguide
Version:
> VTEX Styleguide React components ([Docs](https://vtex.github.io/styleguide))
92 lines (78 loc) • 3.28 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.withDifferentSizes = exports.withOnMouseEvents = exports.withDifferentVariations = exports.withLoadingState = exports.Default = undefined;
var _react = require("react");
var _react2 = _interopRequireDefault(_react);
var _addonActions = require("@storybook/addon-actions");
var _ = require(".");
var _2 = _interopRequireDefault(_);
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 variations = ['primary', 'secondary', 'tertiary', 'danger', 'danger-tertiary', 'inverted-tertiary'];
var sizes = ['small', 'regular', 'large'];
exports.default = {
title: 'Components/Button',
component: _2.default,
argTypes: {
variation: {
control: {
type: 'select',
options: variations
}
},
size: {
control: {
type: 'inline-radio',
options: sizes
}
},
onClick: {
action: 'button-click'
}
}
};
var Template = function Template(args) {
return _react2.default.createElement(_2.default, _extends({}, args, {
type: "button"
}));
};
var Default = exports.Default = Template.bind({});
Default.args = {
variation: 'primary',
isLoading: false,
disabled: false,
block: false,
size: 'regular',
children: 'Button'
};
var withLoadingState = exports.withLoadingState = Template.bind({});
withLoadingState.args = _extends({}, Default.args, {
isLoading: true
});
var withDifferentVariations = exports.withDifferentVariations = function withDifferentVariations() {
return _react2.default.createElement(_react2.default.Fragment, null, variations.map(function (variation) {
return _react2.default.createElement(_react2.default.Fragment, null, _react2.default.createElement(_2.default, {
type: "button",
variation: variation
}, variation), _react2.default.createElement("br", null), _react2.default.createElement("br", null));
}));
};
var withOnMouseEvents = exports.withOnMouseEvents = Template.bind({});
withOnMouseEvents.args = _extends({}, Default.args, {
onMouseDown: (0, _addonActions.action)('button-on-mouse-down'),
onMouseEnter: (0, _addonActions.action)('button-on-mouse-enter'),
onMouseOver: (0, _addonActions.action)('button-on-mouse-over'),
onMouseLeave: (0, _addonActions.action)('button-on-mouse-leave'),
onMouseOut: (0, _addonActions.action)('button-on-mouse-out'),
onMouseUp: (0, _addonActions.action)('button-on-mouse-up')
});
var withDifferentSizes = exports.withDifferentSizes = function withDifferentSizes() {
return _react2.default.createElement(_react2.default.Fragment, null, sizes.map(function (size) {
return _react2.default.createElement(_react2.default.Fragment, null, _react2.default.createElement(_2.default, {
type: "button",
size: size
}, size), _react2.default.createElement("br", null), _react2.default.createElement("br", null));
}));
};