UNPKG

ant-design-x-vue

Version:
142 lines (141 loc) 4.21 kB
import { defineComponent as h, mergeDefaults as k, toRef as u, useSlots as P, computed as m, createVNode as a, mergeProps as q } from "vue"; import { c as I, _ as w } from "../chunks/helper-chunk.mjs"; import { b as i } from "../chunks/module-chunk.mjs"; import S from "./style/index.mjs"; import "../x-provider/index.mjs"; import j from "../_util/hooks/use-x-component-config.mjs"; import { Typography as p } from "ant-design-vue"; import "./index.mjs"; import L from "../x-provider/hooks/use-x-provider-context.mjs"; const V = /* @__PURE__ */ h({ name: "AXPrompts", __name: "Prompts", props: k({ items: { type: Array, required: !1 }, title: { required: !1 }, onItemClick: { type: Function, required: !1 }, vertical: { type: Boolean, required: !1 }, wrap: { type: Boolean, required: !1 }, styles: { type: Object, required: !1 }, classNames: { type: Object, required: !1 }, prefixCls: { type: String, required: !1 }, rootClassName: { type: String, required: !1 } }, { styles: () => ({}), classNames: () => ({}) }), setup(e, { expose: y }) { y(); const d = I(e, ["prefixCls", "title", "class", "items", "onItemClick", "vertical", "wrap", "rootClassName", "styles", "classNames", "style"]); u(e, "class"), u(e, "prefixCls"); const r = P(), { getPrefixCls: v, direction: C } = L(), t = v("prompts", e.prefixCls), l = j("prompts"), [f, N, b] = S(t), g = m(() => i(t, l.value.className, e.class, e.rootClassName, N.value, b, { [`${t}-rtl`]: C.value === "rtl" })), x = m(() => i(`${t}-list`, l.value.classNames.list, e.classNames.list, { [`${t}-list-wrap`]: e.wrap }, { [`${t}-list-vertical`]: e.vertical })), n = m(() => r.title ? r.title() : typeof e.title == "function" ? e.title() : e.title); return () => { var o; return f(a("div", q(d, { class: g.value, style: { ...typeof e.style == "object" ? e.style : {}, ...typeof l.value.style == "object" ? l.value.style : {} } }), [n.value && a(p.Title, { level: 5, class: i(`${t}-title`, l.value.classNames.title, e.classNames.title), style: { ...l.value.styles.title, ...e.styles.title } }, { default: () => [n.value] }), a("div", { class: x.value, style: { ...l.value.styles.list, ...e.styles.list } }, [(o = e.items) == null ? void 0 : o.map((s, $) => { const c = s.children && s.children.length > 0; return a("div", { key: s.key || `key_${$}`, style: { ...l.value.styles.item, ...e.styles.item }, class: i(`${t}-item`, l.value.classNames.item, e.classNames.item, { [`${t}-item-disabled`]: s.disabled, [`${t}-item-has-nest`]: c }), onClick: () => { !c && e.onItemClick && e.onItemClick({ data: s }); } }, [s.icon && a("div", { class: `${t}-icon` }, [s.icon]), a("div", { class: i(`${t}-content`, l.value.classNames.itemContent, e.classNames.itemContent), style: { ...l.value.styles.itemContent, ...e.styles.itemContent } }, [s.label && a("h6", { class: `${t}-label` }, [s.label]), s.description && a("p", { class: `${t}-desc` }, [s.description]), c && a(X, { class: `${t}-nested`, items: s.children, vertical: !0, onItemClick: e.onItemClick, classNames: { list: e.classNames.subList, item: e.classNames.subItem }, styles: { list: e.styles.subList, item: e.styles.subItem } }, null)])]); })])])); }; } }), X = /* @__PURE__ */ w(V, [["__file", "/Users/wangzhichao/办公/code/github/ant-design-x-vue-pure/ant-design-x-vue/src/prompts/Prompts.vue"]]); export { X as default };