@fe6/water-pro
Version:
An enterprise-class UI design language and Vue-based implementation
124 lines (105 loc) • 3.59 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _vue = require("vue");
var _shared = require("@fe6/shared");
var _iconsVue = require("@ant-design/icons-vue/lib/icons");
var _tooltip = _interopRequireDefault(require("../../tooltip"));
var _useConfigInject2 = _interopRequireDefault(require("../../_util/hooks/useConfigInject"));
var _dom = require("../../_util/dom");
var _vue2 = require("../../_util/vue");
var _vueTypes = _interopRequireDefault(require("../../_util/vue-types"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _default2 = (0, _vue.defineComponent)({
name: 'ABasicHelp',
components: {
Tooltip: _tooltip.default
},
props: {
// max-width
maxWidth: _vueTypes.default.string.def('400px'),
// Whether to display the serial number
showIndex: _vueTypes.default.bool,
// color
color: _vueTypes.default.string.def('#ffffff'),
fontSize: _vueTypes.default.string.def('14px'),
placement: _vueTypes.default.string.def('bottom'),
prefixCls: _vueTypes.default.string,
absolute: _vueTypes.default.bool,
// Text list
text: _vueTypes.default.stringArray,
// 定位
position: {
type: [Object],
default: function _default() {
return {
position: 'absolute',
left: 0,
bottom: 0
};
}
}
},
setup: function setup(props, _ref) {
var slots = _ref.slots;
var _useConfigInject = (0, _useConfigInject2.default)('basic-help', props),
prefixClsNew = _useConfigInject.prefixCls;
var getOverlayStyle = (0, _vue.computed)(function () {
return {
maxWidth: props.maxWidth
};
});
var getWrapStyle = (0, _vue.computed)(function () {
return {
color: props.color,
fontSize: props.fontSize
};
});
var getMainStyleRef = (0, _vue.computed)(function () {
return props.absolute ? props.position : {};
});
var renderTitle = function renderTitle() {
var list = props.text;
if ((0, _shared.isString)(list)) {
return (0, _vue.createVNode)("p", {
"class": "".concat(prefixClsNew.value, "-text")
}, [list]);
}
if ((0, _shared.isArray)(list)) {
var arrList = list;
return arrList.map(function (item, index) {
return (0, _vue.createVNode)("p", {
"key": item
}, [(0, _vue.createVNode)(_vue.Fragment, null, [props.showIndex ? "".concat(index + 1, ". ") : '', item])]);
});
}
return null;
};
return function () {
return (0, _vue.createVNode)(_tooltip.default, {
"title": (0, _vue.createVNode)("div", {
"style": (0, _vue.unref)(getWrapStyle)
}, [renderTitle()]),
"overlayClassName": "".concat(prefixClsNew.value, "-wrap"),
"autoAdjustOverflow": true,
"overlayStyle": (0, _vue.unref)(getOverlayStyle),
"placement": props.placement,
"getPopupContainer": function getPopupContainer() {
return (0, _dom.getPopupContainer)();
}
}, {
default: function _default() {
return [(0, _vue.createVNode)("span", {
"class": prefixClsNew.value,
"style": (0, _vue.unref)(getMainStyleRef)
}, [(0, _vue2.getSlot)(slots) || (0, _vue.createVNode)(_iconsVue.InfoCircleOutlined, {
"class": "w-basic-help-icon"
}, null)])];
}
});
};
}
});
exports.default = _default2;