asp-smart-ui-plus-test
Version:
A Component Library for Vue 3
62 lines (57 loc) • 2.28 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var vue = require('vue');
var pluginVue_exportHelper = require('../../../../../_virtual/plugin-vue_export-helper.js');
const __default__ = vue.defineComponent({
name: "AspButtonList"
});
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
...__default__,
props: {
buttonList: { type: Array, required: true },
position: { type: String, required: false }
},
setup(__props) {
const handleClick = (item) => {
if (typeof item.clickFunc !== "function") {
return;
}
item.clickFunc && item.clickFunc();
};
const operationDisabled = (item) => {
if (typeof item.disabledFunc === "function") {
return item.disabledFunc();
}
return !!item.disabled;
};
const operationShow = (btn) => {
if (typeof btn.showFunc === "function") {
return btn.showFunc();
}
return btn.show === void 0 ? true : !!btn.show;
};
return (_ctx, _cache) => {
const _component_asp_button = vue.resolveComponent("asp-button");
return vue.openBlock(), vue.createElementBlock("div", {
class: vue.normalizeClass(["asp-button-list", "is_" + __props.position])
}, [
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.buttonList, (item, index) => {
return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
operationShow(item) ? (vue.openBlock(), vue.createBlock(_component_asp_button, vue.mergeProps({ key: index }, item, {
disabled: operationDisabled(item)
}, vue.toHandlers(item.events), {
onClick: ($event) => handleClick(item)
}), {
default: vue.withCtx(() => [
vue.createTextVNode(vue.toDisplayString(item.label), 1)
]),
_: 2
}, 1040, ["disabled", "onClick"])) : vue.createCommentVNode("v-if", true)
], 64);
}), 256))
], 2);
};
}
});
var ButtonList = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "E:\\code\\SmartUIPlus\\asp-packages\\components\\pc\\advanced\\button-list\\src\\button-list.vue"]]);
exports["default"] = ButtonList;