SCollapsesItem.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import { resolveComponent as n, openBlock as o, createElementBlock as i, normalizeStyle as r, createElementVNode as p, toDisplayString as u, createBlock as c, createCommentVNode as _, withDirectives as f, renderSlot as C, vShow as g } from "vue";
  2. import { l as h } from "./index2.js";
  3. const y = {
  4. name: "CollapsesItem",
  5. data() {
  6. return {
  7. isCollapsesExpend: !0,
  8. col: 1
  9. };
  10. },
  11. props: {
  12. title: {
  13. type: String,
  14. default: ""
  15. },
  16. column: {
  17. type: [Number, String],
  18. default: 1
  19. }
  20. },
  21. methods: {
  22. getUUID() {
  23. const t = Math.floor(Math.random() * 1e6);
  24. return `${(/* @__PURE__ */ new Date()).getTime()}${t}`;
  25. }
  26. },
  27. mounted() {
  28. this.col = this.column > 4 ? 4 : this.column;
  29. }
  30. }, v = { class: "s-collapses-item" }, k = ["id"];
  31. function x(t, s, l, D, e, m) {
  32. const a = n("UpOutlined"), d = n("DownOutlined");
  33. return o(), i("div", v, [
  34. l.title ? (o(), i("div", {
  35. key: 0,
  36. class: "s-collapses-item-title",
  37. onClick: s[0] || (s[0] = (E) => e.isCollapsesExpend = !e.isCollapsesExpend),
  38. style: r({ borderColor: t.$theme.bgColor }),
  39. id: m.getUUID()
  40. }, [
  41. p("span", null, u(l.title), 1),
  42. e.isCollapsesExpend ? (o(), c(a, { key: 0 })) : (o(), c(d, { key: 1 }))
  43. ], 12, k)) : _("", !0),
  44. f(p("div", {
  45. class: "s-collapses-item-content",
  46. style: r({
  47. display: "grid",
  48. gridTemplateColumns: `repeat(${e.col}, 1fr)`,
  49. gap: "20px"
  50. })
  51. }, [
  52. C(t.$slots, "default", {}, void 0, !0)
  53. ], 4), [
  54. [g, e.isCollapsesExpend]
  55. ])
  56. ]);
  57. }
  58. const w = /* @__PURE__ */ h(y, [["render", x], ["__scopeId", "data-v-c2748316"]]);
  59. export {
  60. w as default
  61. };