UNPKG

@fe6/water-pro

Version:

An enterprise-class UI design language and Vue-based implementation

63 lines (54 loc) 2.76 kB
import { createVNode as _createVNode } from "vue"; function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } 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; } /** @format */ import { defineComponent } from 'vue'; import BasicHelp from '../basic-help/src/basic-help'; import Typography from '../typography/Typography'; import { getSlot } from '../_util/props-util'; import useConfigInject from '../_util/hooks/useConfigInject'; import PropTypes from '../_util/vue-types'; export default defineComponent({ name: 'ABasicTitle', props: { helpMessage: { type: [String, Array], default: '' }, span: PropTypes.bool, title: PropTypes.string, prefixCls: PropTypes.string, resetable: PropTypes.bool.def(true) }, setup: function setup(props) { var _useConfigInject = useConfigInject('basic-title', props), prefixClsNew = _useConfigInject.prefixCls; return { prefixClsNew: prefixClsNew }; }, render: function render() { var helpMessage = this.helpMessage; var text = this.$attrs.text; var helpNode = null; if (text || helpMessage) { helpNode = _createVNode(BasicHelp, _objectSpread({ "class": "".concat(this.prefixClsNew, "-help"), "text": this.helpMessage }, this.$attrs), null); } var titleNode = this.title; var children = getSlot(this); if (children.length > 0) { titleNode = children.slice(); } return _createVNode("span", { "class": [this.prefixClsNew, _defineProperty({}, "".concat(this.prefixClsNew, "-show-span"), this.span && (children.length > 0 || this.title))] }, [_createVNode(Typography.Title, this.$attrs, { default: function _default() { return [titleNode]; } }), helpNode]); } });