mt-ui-components-vue3
Version:
玛果添实UI组件库(Vue3)
85 lines (84 loc) • 3.6 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _vue = require("vue");
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _components = require("../components");
var _useConfigInject2 = _interopRequireDefault(require("ant-design-vue/es/config-provider/hooks/useConfigInject"));
var _index = _interopRequireDefault(require("./style/index.style"));
var _classNames2 = _interopRequireDefault(require("ant-design-vue/es/_util/classNames"));
var cardOptionProps = function cardOptionProps() {
return {
active: {
type: Boolean,
default: false
},
disabled: {
type: Boolean,
default: false
},
item: {
type: Object,
default: function _default() {
return {};
}
}
};
};
var Option = (0, _vue.defineComponent)({
name: 'CardOption',
slots: ['subLabel', 'title', 'image'],
props: cardOptionProps(),
emits: ['click'],
setup: function setup(props, _ref) {
var slots = _ref.slots,
expose = _ref.expose,
emit = _ref.emit;
// const emit = defineEmits(['click']);
var click = function click() {
emit('click', props.item.value, props.item);
};
var _useConfigInject = (0, _useConfigInject2.default)('card-select-option', props),
prefixCls = _useConfigInject.prefixCls;
var _useStyle = (0, _index.default)(prefixCls),
_useStyle2 = (0, _slicedToArray2.default)(_useStyle, 2),
wrapSSR = _useStyle2[0],
hashId = _useStyle2[1];
var prefixClsValue = prefixCls.value;
var rootCls = (0, _classNames2.default)(prefixClsValue, (0, _defineProperty2.default)({}, hashId.value, true));
return function () {
return wrapSSR((0, _vue.createVNode)("div", {
"class": rootCls
}, [(0, _vue.createVNode)("div", {
"class": "\n j-card-item\n ".concat(props.active ? 'active' : '', "\n ").concat(props.disabled ? 'disabled' : '', "\n ").concat(props.item.type === 'horizontal' ? 'horizontal' : '', "\n ").concat(props.item.type === 'vertical' ? 'vertical' : '', "\n ").concat(props.item.float === 'right' ? 'right' : '', "\n ").concat(props.item.float === 'left' ? 'left' : '', "\n "),
"onClick": click
}, [(0, _vue.createVNode)("div", {
"class": "j-card-title-warp"
}, [(0, _vue.createVNode)("slot", {
"name": "title",
"title": props.item.label
}, [(0, _vue.createVNode)("div", {
"class": "title"
}, [props.item.label])]), props.item.subLabel && props.item.showSubLabel && (0, _vue.createVNode)("slot", {
"name": "subLabel",
"sub-label": props.item.subLabel
}, [(0, _vue.createVNode)("div", {
"class": "sub-title"
}, [props.item.subLabel])])]), props.item.showImage && (0, _vue.createVNode)("div", {
"class": "j-card-image"
}, [(0, _vue.createVNode)("slot", {
"name": "image",
"image": props.item.iconUrl
}, [(0, _vue.createVNode)(_components.Avatar, {
"class": "icon box-shadow",
"src": props.item.iconUrl
}, null)])])])]));
};
}
});
var _default2 = Option;
exports.default = _default2;