UNPKG

ant-design-x-vue

Version:

Craft AI-driven interfaces effortlessly

117 lines (116 loc) 3.64 kB
import { defineComponent as k, mergeDefaults as x, toRef as u, useSlots as g, computed as c, createVNode as a, mergeProps as I } from "vue"; import { a as P, c as i } from "../attachments/Attachments2.mjs"; import w from "./style/index.mjs"; import S from "../x-provider/hooks/use-x-provider-context.mjs"; import "../x-provider/context.mjs"; import { Typography as L } from "ant-design-vue"; import V from "../_util/hooks/use-x-component-config.mjs"; const X = /* @__PURE__ */ k({ name: "AXPrompts", __name: "Prompts", props: x({ items: null, title: null, onItemClick: { type: Function }, vertical: { type: Boolean }, wrap: { type: Boolean }, styles: null, classNames: null, prefixCls: null, rootClassName: null }, { styles: () => ({}), classNames: () => ({}) }), setup(e) { const y = P(e, ["prefixCls", "title", "class", "items", "onItemClick", "vertical", "wrap", "rootClassName", "styles", "classNames", "style"]); u(e, "class"), u(e, "prefixCls"); const n = g(), { getPrefixCls: v, direction: C } = S(), t = v("prompts", e.prefixCls), l = V("prompts"), [d, N, $] = w(t), f = c(() => i(t, l.value.className, e.class, e.rootClassName, N.value, $, { [`${t}-rtl`]: C.value === "rtl" })), b = c(() => i(`${t}-list`, l.value.classNames.list, e.classNames.list, { [`${t}-list-wrap`]: e.wrap }, { [`${t}-list-vertical`]: e.vertical })), o = c(() => n.title ? n.title() : e.title); return () => { var r; return d(a("div", I(y, { class: f.value, style: { ...typeof e.style == "object" ? e.style : {}, ...typeof l.value.style == "object" ? l.value.style : {} } }), [o.value && a(L.Title, { level: 5, class: i(`${t}-title`, l.value.classNames.title, e.classNames.title), style: { ...l.value.styles.title, ...e.styles.title } }, { default: () => [o.value] }), a("div", { class: b.value, style: { ...l.value.styles.list, ...e.styles.list } }, [(r = e.items) == null ? void 0 : r.map((s, h) => { const m = s.children && s.children.length > 0; return a("div", { key: s.key || `key_${h}`, 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`]: m }), onClick: () => { !m && 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]), m && 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)])]); })])])); }; } }); export { X as default };