UNPKG

@ohu-mobile/core

Version:
46 lines (45 loc) 1.82 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _vnode = require("../_utils/vnode"); var _CardHeader = require("./CardHeader"); var _Divider = _interopRequireDefault(require("../Divider")); var _defineComponent = require("../_utils/defineComponent"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var Card = (0, _defineComponent.defineComponent)('card').create({ props: { shadow: (0, _defineComponent.props)(Boolean).default(false), borderless: (0, _defineComponent.props)(Boolean).default(false), divider: (0, _defineComponent.props)(Boolean).default(false), padding: (0, _defineComponent.props)(Boolean).default(true) }, render: function render() { var h = arguments[0]; var root = this.$rootCls(); var $slots = this.$slots, divider = this.divider; root.has([!this.borderless && this.shadow && 'shadow', !this.borderless && 'radius', this.padding && 'padding']); // detect card-header, extra other vnode as content if ($slots.default instanceof Array) { var headerNodes = (0, _vnode.getVNodesByName)($slots.default, _CardHeader.cardHeaderBaseName); if (headerNodes.length > 0) { var contentNodes = (0, _vnode.getVNodesByName)($slots.default, function (name) { return name !== _CardHeader.cardHeaderBaseName; }); return h("div", { "class": root }, [headerNodes, divider && h(_Divider.default), contentNodes.length > 0 && h("div", { "class": root.element('content') }, [contentNodes])]); } } return h("div", { "class": root }, [h("div", { "class": root.element('content') }, [$slots.default])]); } }); var _default = exports.default = Card;