chowa
Version:
UI component library based on React
44 lines (43 loc) • 1.91 kB
JavaScript
/**
* @license chowa v1.1.3
*
* Copyright (c) Chowa Techonlogies Co.,Ltd.(http://www.chowa.cn).
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const React = require("react");
const PropTypes = require("prop-types");
const classnames_1 = require("classnames");
const utils_1 = require("../utils");
const avatar_1 = require("../avatar");
const Profile = (props) => {
const { className, style, mode, src, title, introduce, actions } = props;
const componentClass = classnames_1.default({
[utils_1.preClass('profile')]: true,
[utils_1.preClass(`profile-${mode}`)]: true,
[className]: utils_1.isExist(className)
});
return (React.createElement("div", { className: componentClass, style: style },
React.createElement(avatar_1.default, { theme: 'light', src: src, className: utils_1.preClass('profile-avatar') }),
React.createElement("div", { className: utils_1.preClass('profile-info') },
React.createElement("h3", { className: utils_1.preClass('profile-title') }, title),
React.createElement("div", { className: utils_1.preClass('profile-introduce') }, introduce)),
utils_1.isExist(actions) &&
React.createElement("ul", { className: utils_1.preClass('profile-actions-wrapper') }, actions.map((action, key) => (React.createElement("li", { key: key, className: utils_1.preClass('profile-action') }, action))))));
};
Profile.propTypes = {
className: PropTypes.string,
style: PropTypes.object,
mode: PropTypes.oneOf(['simple', 'complete']),
src: PropTypes.string,
title: PropTypes.string.isRequired,
introduce: PropTypes.node,
actions: PropTypes.array
};
Profile.defaultProps = {
mode: 'simple'
};
exports.default = Profile;