vue-styleguidist
Version:
Vue components style guide generator
35 lines • 1.15 kB
JavaScript
import "core-js/modules/es.array.concat.js";
import "core-js/modules/es.array.join.js";
import "core-js/modules/es.array.slice.js";
import React from 'react';
import PropTypes from 'prop-types';
import TabButton from 'rsg-components/TabButton';
import isEmpty from 'lodash/isEmpty';
var UsageTabButton = function UsageTabButton(props) {
var component = props.props;
var words = [];
if (!isEmpty(component.props)) {
words.push('props');
}
if (!isEmpty(component.events)) {
words.push('events');
}
if (!isEmpty(component.slots)) {
words.push('slots');
}
if (!isEmpty(component.methods)) {
words.push('methods');
}
var showButton = words.length > 0;
return showButton ? /*#__PURE__*/React.createElement(TabButton, props, words.length === 1 ? words[0] : "".concat(words.slice(0, -1).join(', '), " & ").concat(words[words.length - 1])) : null;
};
UsageTabButton.propTypes = {
onClick: PropTypes.func.isRequired,
name: PropTypes.string.isRequired,
props: PropTypes.shape({
props: PropTypes.array,
methods: PropTypes.array
}).isRequired,
active: PropTypes.bool
};
export default UsageTabButton;