UNPKG

bootstrap-vue

Version:

Quickly integrate Bootstrap 4 components with Vue.js

66 lines (60 loc) 2.14 kB
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } import { mergeData, prefixPropName, copyProps } from "../../utils"; import { assign } from "../../utils/object"; import { cardMixin } from "../../mixins"; export var props = assign({}, copyProps(cardMixin.props, prefixPropName.bind(null, "body")), { bodyClass: { type: [String, Object, Array], default: null }, title: { type: String, default: null }, titleTag: { type: String, default: "h4" }, subTitle: { type: String, default: null }, subTitleTag: { type: String, default: "h6" }, overlay: { type: Boolean, default: false } }); export default { functional: true, props: props, render: function render(h, _ref) { var _ref2; var props = _ref.props, data = _ref.data, slots = _ref.slots; var cardBodyChildren = []; if (props.title) { cardBodyChildren.push(h(props.titleTag, { staticClass: "card-title", domProps: { innerHTML: props.title } })); } if (props.subTitle) { cardBodyChildren.push(h(props.subTitleTag, { staticClass: "card-subtitle mb-2 text-muted", domProps: { innerHTML: props.subTitle } })); } cardBodyChildren.push(slots().default); return h(props.bodyTag, mergeData(data, { staticClass: "card-body", class: [(_ref2 = { "card-img-overlay": props.overlay }, _defineProperty(_ref2, "bg-" + props.bodyBgVariant, Boolean(props.bodyBgVariant)), _defineProperty(_ref2, "border-" + props.bodyBorderVariant, Boolean(props.bodyBorderVariant)), _defineProperty(_ref2, "text-" + props.bodyTextVariant, Boolean(props.bodyTextVariant)), _ref2), props.bodyClass || {}] }), cardBodyChildren); } };