straw-ui-vue 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/components/st-button/st-button.vue_vue_type_script_setup_true_lang.cjs +1 -1
  2. package/dist/components/st-button/st-button.vue_vue_type_script_setup_true_lang.js +6 -6
  3. package/dist/components/st-button/types.d.ts +2 -2
  4. package/dist/components/st-checkbox/st-checkbox.vue_vue_type_script_setup_true_lang.cjs +1 -1
  5. package/dist/components/st-checkbox/st-checkbox.vue_vue_type_script_setup_true_lang.js +9 -18
  6. package/dist/components/st-dialog/index.d.ts +3 -3
  7. package/dist/components/st-dialog/st-dialog.vue.d.ts +1 -1
  8. package/dist/components/st-dialog/st-dialog.vue_vue_type_script_setup_true_lang.cjs +1 -1
  9. package/dist/components/st-dialog/st-dialog.vue_vue_type_script_setup_true_lang.js +2 -2
  10. package/dist/components/st-dialog/types.d.ts +1 -1
  11. package/dist/components/st-input/st-input.vue.cjs +1 -1
  12. package/dist/components/st-input/st-input.vue.js +1 -1
  13. package/dist/components/st-input/st-input.vue_vue_type_script_setup_true_lang.cjs +1 -1
  14. package/dist/components/st-input/st-input.vue_vue_type_script_setup_true_lang.js +2 -2
  15. package/dist/components/st-menu/index.d.ts +3 -0
  16. package/dist/components/st-menu/st-menu-node.vue_vue_type_script_setup_true_lang.cjs +1 -1
  17. package/dist/components/st-menu/st-menu-node.vue_vue_type_script_setup_true_lang.js +1 -1
  18. package/dist/components/st-menu/st-menu.vue.d.ts +1 -0
  19. package/dist/components/st-menu/st-menu.vue_vue_type_script_setup_true_lang.cjs +1 -1
  20. package/dist/components/st-menu/st-menu.vue_vue_type_script_setup_true_lang.js +10 -4
  21. package/dist/components/st-popover/index.d.ts +3 -3
  22. package/dist/components/st-popover/st-popover.vue.d.ts +1 -1
  23. package/dist/components/st-popover/types.d.ts +2 -2
  24. package/dist/components/st-select/index.d.ts +6 -6
  25. package/dist/components/st-select/st-select.vue.d.ts +2 -2
  26. package/dist/components/st-select/st-select.vue_vue_type_script_setup_true_lang.cjs +1 -1
  27. package/dist/components/st-select/st-select.vue_vue_type_script_setup_true_lang.js +3 -3
  28. package/dist/components/st-select/types.d.ts +2 -2
  29. package/dist/components/st-toggle/st-toggle.vue_vue_type_script_setup_true_lang.cjs +1 -1
  30. package/dist/components/st-toggle/st-toggle.vue_vue_type_script_setup_true_lang.js +1 -1
  31. package/dist/components/st-tree/st-tree-node.vue_vue_type_script_setup_true_lang.cjs +1 -1
  32. package/dist/components/st-tree/st-tree-node.vue_vue_type_script_setup_true_lang.js +1 -1
  33. package/dist/generated-safelist.cjs +1 -1
  34. package/dist/generated-safelist.js +1 -1
  35. package/dist/index.css +1 -1
  36. package/dist/index.d.ts +15 -12
  37. package/package.json +93 -94
@@ -1 +1 @@
1
- const e=require("../../utils/cn.cjs"),t=require("../../utils/cva/index.cjs");let n=require("vue");var r=[`disabled`],i={key:0,class:`i-ri-loader-4-line animate-spin`},a=(0,n.defineComponent)({inheritAttrs:!1,__name:`st-button`,props:{variant:{default:`default`},type:{default:`default`},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},prefixIcon:{},suffixIcon:{}},emits:[`click`],setup(a,{emit:o}){let s={default:`h-9 px-4 text-3.5 gap-1.5`,icon:`w-9 h-9`},c={primary:`bg-primary text-primary-foreground`,default:`bg-secondary text-secondary-foreground`,ghost:`bg-transparent text-foreground`},l={primary:`hover:bg-primary/90`,default:`hover:bg-secondary/80`,ghost:`hover:bg-secondary/80`},u=a,d=(0,n.useAttrs)(),f=o,p=(0,n.useSlots)(),m=t.cva({base:`inline-flex items-center justify-center rounded-radius font-default transition-all duration-150 ease-in-out border-none outline-none select-none`,variants:{variant:{primary:c.primary,default:c.default,ghost:c.ghost},type:{default:s.default,icon:s.icon},disabled:{true:`opacity-50 cursor-not-allowed`},loading:{true:`cursor-not-allowed`}},defaultVariants:{variant:`default`,type:`default`}}),h=(0,n.computed)(()=>e.cn(m({variant:u.variant,type:u.type,disabled:u.disabled,loading:u.loading}),!u.disabled&&!u.loading?l[u.variant]:``,d.class)),g=(0,n.computed)(()=>u.type===`icon`),_=(0,n.computed)(()=>u.disabled||u.loading),v=(0,n.computed)(()=>u.prefixIcon||p.prefixIcon),y=(0,n.computed)(()=>u.suffixIcon||p.suffixIcon),b=e=>`i-ri-${e}`,x=e=>{_.value||f(`click`,e)};return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`button`,{class:(0,n.normalizeClass)(h.value),style:(0,n.normalizeStyle)((0,n.unref)(d).style),disabled:_.value,onClick:x},[u.loading?((0,n.openBlock)(),(0,n.createElementBlock)(`i`,i)):(0,n.createCommentVNode)(``,!0),g.value?((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:1},[u.prefixIcon?((0,n.openBlock)(),(0,n.createElementBlock)(`i`,{key:0,class:(0,n.normalizeClass)(b(u.prefixIcon))},null,2)):(0,n.renderSlot)(e.$slots,`default`,{key:1})],64)):((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:2},[v.value?(0,n.renderSlot)(e.$slots,`prefixIcon`,{key:0},()=>[(0,n.createElementVNode)(`i`,{class:(0,n.normalizeClass)(b(u.prefixIcon))},null,2)]):(0,n.createCommentVNode)(``,!0),(0,n.renderSlot)(e.$slots,`default`),y.value?(0,n.renderSlot)(e.$slots,`suffixIcon`,{key:1},()=>[(0,n.createElementVNode)(`i`,{class:(0,n.normalizeClass)(b(u.suffixIcon))},null,2)]):(0,n.createCommentVNode)(``,!0)],64))],14,r))}});exports.default=a;
1
+ const e=require("../../utils/cn.cjs"),t=require("../../utils/cva/index.cjs");let n=require("vue");var r=[`disabled`],i={key:0,class:`i-lucide-loader-2 animate-spin`},a=(0,n.defineComponent)({inheritAttrs:!1,__name:`st-button`,props:{variant:{default:`default`},type:{default:`default`},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},prefixIcon:{},suffixIcon:{}},emits:[`click`],setup(a,{emit:o}){let s={default:`h-9 px-4 text-3.5 gap-1.5`,icon:`w-9 h-9`},c={primary:`bg-primary text-primary-foreground`,default:`bg-secondary text-secondary-foreground`,ghost:`bg-transparent text-foreground`},l={primary:`hover:bg-primary/90`,default:`hover:bg-secondary/80`,ghost:`hover:bg-secondary/80`},u=a,d=(0,n.useAttrs)(),f=o,p=(0,n.useSlots)(),m=t.cva({base:`inline-flex items-center justify-center rounded-radius font-default transition-all duration-150 ease-in-out border-none outline-none select-none`,variants:{variant:{primary:c.primary,default:c.default,ghost:c.ghost},type:{default:s.default,icon:s.icon},disabled:{true:`opacity-50 cursor-not-allowed`},loading:{true:`cursor-not-allowed`}},defaultVariants:{variant:`default`,type:`default`}}),h=(0,n.computed)(()=>e.cn(m({variant:u.variant,type:u.type,disabled:u.disabled,loading:u.loading}),!u.disabled&&!u.loading?l[u.variant]:``,d.class)),g=(0,n.computed)(()=>u.type===`icon`),_=(0,n.computed)(()=>u.disabled||u.loading),v=(0,n.computed)(()=>u.prefixIcon||p.prefixIcon),y=(0,n.computed)(()=>u.suffixIcon||p.suffixIcon),b=e=>{_.value||f(`click`,e)};return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`button`,{class:(0,n.normalizeClass)(h.value),style:(0,n.normalizeStyle)((0,n.unref)(d).style),disabled:_.value,onClick:b},[u.loading?((0,n.openBlock)(),(0,n.createElementBlock)(`i`,i)):(0,n.createCommentVNode)(``,!0),g.value?((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:1},[u.prefixIcon?((0,n.openBlock)(),(0,n.createElementBlock)(`i`,{key:0,class:(0,n.normalizeClass)(u.prefixIcon)},null,2)):(0,n.renderSlot)(e.$slots,`default`,{key:1})],64)):((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:2},[v.value?(0,n.renderSlot)(e.$slots,`prefixIcon`,{key:0},()=>[(0,n.createElementVNode)(`i`,{class:(0,n.normalizeClass)(u.prefixIcon)},null,2)]):(0,n.createCommentVNode)(``,!0),(0,n.renderSlot)(e.$slots,`default`),y.value?(0,n.renderSlot)(e.$slots,`suffixIcon`,{key:1},()=>[(0,n.createElementVNode)(`i`,{class:(0,n.normalizeClass)(u.suffixIcon)},null,2)]):(0,n.createCommentVNode)(``,!0)],64))],14,r))}});exports.default=a;
@@ -4,7 +4,7 @@ import { Fragment as n, computed as r, createCommentVNode as i, createElementBlo
4
4
  //#region src/components/st-button/st-button.vue?vue&type=script&setup=true&lang.ts
5
5
  var h = ["disabled"], g = {
6
6
  key: 0,
7
- class: "i-ri-loader-4-line animate-spin"
7
+ class: "i-lucide-loader-2 animate-spin"
8
8
  }, _ = /*@__PURE__*/ s({
9
9
  inheritAttrs: !1,
10
10
  __name: "st-button",
@@ -59,21 +59,21 @@ var h = ["disabled"], g = {
59
59
  type: x.type,
60
60
  disabled: x.disabled,
61
61
  loading: x.loading
62
- }), !x.disabled && !x.loading ? b[x.variant] : "", S.class)), D = r(() => x.type === "icon"), O = r(() => x.disabled || x.loading), k = r(() => x.prefixIcon || w.prefixIcon), A = r(() => x.suffixIcon || w.suffixIcon), j = (e) => `i-ri-${e}`, M = (e) => {
62
+ }), !x.disabled && !x.loading ? b[x.variant] : "", S.class)), D = r(() => x.type === "icon"), O = r(() => x.disabled || x.loading), k = r(() => x.prefixIcon || w.prefixIcon), A = r(() => x.suffixIcon || w.suffixIcon), j = (e) => {
63
63
  O.value || C("click", e);
64
64
  };
65
65
  return (e, t) => (u(), a("button", {
66
66
  class: c(E.value),
67
67
  style: l(f(S).style),
68
68
  disabled: O.value,
69
- onClick: M
69
+ onClick: j
70
70
  }, [x.loading ? (u(), a("i", g)) : i("", !0), D.value ? (u(), a(n, { key: 1 }, [x.prefixIcon ? (u(), a("i", {
71
71
  key: 0,
72
- class: c(j(x.prefixIcon))
72
+ class: c(x.prefixIcon)
73
73
  }, null, 2)) : d(e.$slots, "default", { key: 1 })], 64)) : (u(), a(n, { key: 2 }, [
74
- k.value ? d(e.$slots, "prefixIcon", { key: 0 }, () => [o("i", { class: c(j(x.prefixIcon)) }, null, 2)]) : i("", !0),
74
+ k.value ? d(e.$slots, "prefixIcon", { key: 0 }, () => [o("i", { class: c(x.prefixIcon) }, null, 2)]) : i("", !0),
75
75
  d(e.$slots, "default"),
76
- A.value ? d(e.$slots, "suffixIcon", { key: 1 }, () => [o("i", { class: c(j(x.suffixIcon)) }, null, 2)]) : i("", !0)
76
+ A.value ? d(e.$slots, "suffixIcon", { key: 1 }, () => [o("i", { class: c(x.suffixIcon) }, null, 2)]) : i("", !0)
77
77
  ], 64))], 14, h));
78
78
  }
79
79
  });
@@ -20,9 +20,9 @@ export interface ButtonProps {
20
20
  disabled?: boolean;
21
21
  /** 是否显示加载状态 */
22
22
  loading?: boolean;
23
- /** 前缀图标名称(Remix Icon,不含 i-ri- 前缀) */
23
+ /** 前缀图标名称(Lucide 图标,不含 i-lucide- 前缀) */
24
24
  prefixIcon?: string;
25
- /** 后缀图标名称(Remix Icon,不含 i-ri- 前缀) */
25
+ /** 后缀图标名称(Lucide 图标,不含 i-lucide- 前缀) */
26
26
  suffixIcon?: string;
27
27
  }
28
28
 
@@ -1 +1 @@
1
- const e=require("../../utils/cn.cjs"),t=require("../../utils/cva/index.cjs");let n=require("vue");var r=[`checked`,`disabled`],i=(0,n.defineComponent)({inheritAttrs:!1,__name:`st-checkbox`,props:(0,n.mergeModels)({disabled:{type:Boolean,default:!1},trueValue:{type:[Boolean,String,Number],default:!0},falseValue:{type:[Boolean,String,Number],default:!1}},{modelValue:{type:[Boolean,String,Number],default:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(i){let a=i,o=(0,n.useModel)(i,`modelValue`),s=(0,n.useSlots)(),c=(0,n.useAttrs)(),l=(0,n.inject)(`checkboxGroup`,null),u=(0,n.computed)(()=>!!s.default),d=(0,n.computed)(()=>l&&l.disabled.value||a.disabled),f=(0,n.computed)(()=>l?l.modelValue.value.includes(a.trueValue):o.value===a.trueValue),p=t.cva({base:`inline-flex items-center cursor-pointer select-none gap-2`,variants:{disabled:{true:`cursor-not-allowed opacity-50`,false:``}}}),m=(0,n.computed)(()=>e.cn(p({disabled:d.value}),c.class)),h=(0,n.computed)(()=>e.cn(`sr-only`)),g=t.cva({base:`flex items-center justify-center border-2 rounded-radius transition-all duration-200 w-5 h-5`,variants:{checked:{true:`bg-primary border-primary`,false:`bg-background border-input hover:border-ring`},disabled:{true:`cursor-not-allowed`,false:`cursor-pointer`}}}),_=(0,n.computed)(()=>g({checked:f.value,disabled:d.value})),v=(0,n.computed)(()=>e.cn(`text-primary-foreground w-2.5 h-2.5`)),y=(0,n.computed)(()=>e.cn(`w-full h-full`)),b=t.cva({base:`text-foreground text-sm`,variants:{disabled:{true:`text-muted-foreground`,false:``}}}),x=(0,n.computed)(()=>b({disabled:d.value})),S=e=>{d.value&&e.preventDefault()},C=()=>{d.value||(l?l.updateValue(a.trueValue,!f.value):o.value=f.value?a.falseValue:a.trueValue)};return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`label`,{class:(0,n.normalizeClass)(m.value),style:(0,n.normalizeStyle)((0,n.unref)(c).style),onClick:S},[(0,n.createElementVNode)(`input`,{checked:f.value,class:(0,n.normalizeClass)(h.value),disabled:d.value,type:`checkbox`,onChange:C},null,42,r),(0,n.createElementVNode)(`span`,{class:(0,n.normalizeClass)(_.value)},[f.value?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:0,class:(0,n.normalizeClass)(v.value)},[((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,{class:(0,n.normalizeClass)(y.value),fill:`none`,viewBox:`0 0 12 12`,xmlns:`http://www.w3.org/2000/svg`},[...t[0]||=[(0,n.createElementVNode)(`path`,{d:`M2 6L5 9L10 3`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`},null,-1)]],2))],2)):(0,n.createCommentVNode)(``,!0)],2),u.value?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:0,class:(0,n.normalizeClass)(x.value)},[(0,n.renderSlot)(e.$slots,`default`)],2)):(0,n.createCommentVNode)(``,!0)],6))}});exports.default=i;
1
+ const e=require("../../utils/cn.cjs"),t=require("../../utils/cva/index.cjs");let n=require("vue");var r=[`checked`,`disabled`],i=(0,n.defineComponent)({inheritAttrs:!1,__name:`st-checkbox`,props:(0,n.mergeModels)({disabled:{type:Boolean,default:!1},trueValue:{type:[Boolean,String,Number],default:!0},falseValue:{type:[Boolean,String,Number],default:!1}},{modelValue:{type:[Boolean,String,Number],default:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(i){let a=i,o=(0,n.useModel)(i,`modelValue`),s=(0,n.useSlots)(),c=(0,n.useAttrs)(),l=(0,n.inject)(`checkboxGroup`,null),u=(0,n.computed)(()=>!!s.default),d=(0,n.computed)(()=>l&&l.disabled.value||a.disabled),f=(0,n.computed)(()=>l?l.modelValue.value.includes(a.trueValue):o.value===a.trueValue),p=t.cva({base:`inline-flex items-center cursor-pointer select-none gap-2`,variants:{disabled:{true:`cursor-not-allowed opacity-50`,false:``}}}),m=(0,n.computed)(()=>e.cn(p({disabled:d.value}),c.class)),h=(0,n.computed)(()=>e.cn(`sr-only`)),g=t.cva({base:`flex items-center justify-center border-2 rounded-radius transition-all duration-200 w-5 h-5`,variants:{checked:{true:`bg-primary border-primary`,false:`bg-background border-input hover:border-ring`},disabled:{true:`cursor-not-allowed`,false:`cursor-pointer`}}}),_=(0,n.computed)(()=>g({checked:f.value,disabled:d.value})),v=(0,n.computed)(()=>e.cn(`text-primary-foreground w-full h-full inline-flex items-center justify-center text-3.5 translate-y-0.25`));(0,n.computed)(()=>e.cn(`w-full h-full`));let y=t.cva({base:`text-foreground text-sm`,variants:{disabled:{true:`text-muted-foreground`,false:``}}}),b=(0,n.computed)(()=>y({disabled:d.value})),x=e=>{d.value&&e.preventDefault()},S=()=>{d.value||(l?l.updateValue(a.trueValue,!f.value):o.value=f.value?a.falseValue:a.trueValue)};return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`label`,{class:(0,n.normalizeClass)(m.value),style:(0,n.normalizeStyle)((0,n.unref)(c).style),onClick:x},[(0,n.createElementVNode)(`input`,{checked:f.value,class:(0,n.normalizeClass)(h.value),disabled:d.value,type:`checkbox`,onChange:S},null,42,r),(0,n.createElementVNode)(`span`,{class:(0,n.normalizeClass)(_.value)},[f.value?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:0,class:(0,n.normalizeClass)(v.value)},[...t[0]||=[(0,n.createElementVNode)(`i`,{class:`i-lucide-check`},null,-1)]],2)):(0,n.createCommentVNode)(``,!0)],2),u.value?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:0,class:(0,n.normalizeClass)(b.value)},[(0,n.renderSlot)(e.$slots,`default`)],2)):(0,n.createCommentVNode)(``,!0)],6))}});exports.default=i;
@@ -60,47 +60,38 @@ var _ = ["checked", "disabled"], v = /*@__PURE__*/ o({
60
60
  }), k = n(() => O({
61
61
  checked: w.value,
62
62
  disabled: C.value
63
- })), A = n(() => e("text-primary-foreground w-2.5 h-2.5")), j = n(() => e("w-full h-full")), M = t({
63
+ })), A = n(() => e("text-primary-foreground w-full h-full inline-flex items-center justify-center text-3.5 translate-y-0.25"));
64
+ n(() => e("w-full h-full"));
65
+ let j = t({
64
66
  base: "text-foreground text-sm",
65
67
  variants: { disabled: {
66
68
  true: "text-muted-foreground",
67
69
  false: ""
68
70
  } }
69
- }), N = n(() => M({ disabled: C.value })), P = (e) => {
71
+ }), M = n(() => j({ disabled: C.value })), N = (e) => {
70
72
  C.value && e.preventDefault();
71
- }, F = () => {
73
+ }, P = () => {
72
74
  C.value || (x ? x.updateValue(c.trueValue, !w.value) : v.value = w.value ? c.falseValue : c.trueValue);
73
75
  };
74
76
  return (e, t) => (d(), i("label", {
75
77
  class: l(E.value),
76
78
  style: u(p(b).style),
77
- onClick: P
79
+ onClick: N
78
80
  }, [
79
81
  a("input", {
80
82
  checked: w.value,
81
83
  class: l(D.value),
82
84
  disabled: C.value,
83
85
  type: "checkbox",
84
- onChange: F
86
+ onChange: P
85
87
  }, null, 42, _),
86
88
  a("span", { class: l(k.value) }, [w.value ? (d(), i("span", {
87
89
  key: 0,
88
90
  class: l(A.value)
89
- }, [(d(), i("svg", {
90
- class: l(j.value),
91
- fill: "none",
92
- viewBox: "0 0 12 12",
93
- xmlns: "http://www.w3.org/2000/svg"
94
- }, [...t[0] ||= [a("path", {
95
- d: "M2 6L5 9L10 3",
96
- stroke: "currentColor",
97
- "stroke-linecap": "round",
98
- "stroke-linejoin": "round",
99
- "stroke-width": "2"
100
- }, null, -1)]], 2))], 2)) : r("", !0)], 2),
91
+ }, [...t[0] ||= [a("i", { class: "i-lucide-check" }, null, -1)]], 2)) : r("", !0)], 2),
101
92
  S.value ? (d(), i("span", {
102
93
  key: 0,
103
- class: l(N.value)
94
+ class: l(M.value)
104
95
  }, [f(e.$slots, "default")], 2)) : r("", !0)
105
96
  ], 6));
106
97
  }
@@ -16,7 +16,7 @@ export declare const StDialog: import('../../utils/with-install.js').SFCWithInst
16
16
  fullscreen: boolean;
17
17
  modal: boolean;
18
18
  closeOnClickModal: boolean;
19
- customClass: string;
19
+ customClass: commonClass;
20
20
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
21
21
  P: {};
22
22
  B: {};
@@ -39,7 +39,7 @@ export declare const StDialog: import('../../utils/with-install.js').SFCWithInst
39
39
  fullscreen: boolean;
40
40
  modal: boolean;
41
41
  closeOnClickModal: boolean;
42
- customClass: string;
42
+ customClass: commonClass;
43
43
  }>;
44
44
  __isFragment?: never;
45
45
  __isTeleport?: never;
@@ -61,7 +61,7 @@ export declare const StDialog: import('../../utils/with-install.js').SFCWithInst
61
61
  fullscreen: boolean;
62
62
  modal: boolean;
63
63
  closeOnClickModal: boolean;
64
- customClass: string;
64
+ customClass: commonClass;
65
65
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
66
66
  $slots: {
67
67
  title?: (props: {}) => any;
@@ -29,7 +29,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
29
29
  fullscreen: boolean;
30
30
  modal: boolean;
31
31
  closeOnClickModal: boolean;
32
- customClass: string;
32
+ customClass: commonClass;
33
33
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
34
34
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
35
35
  declare const _default: typeof __VLS_export;
@@ -1 +1 @@
1
- const e=require("../../utils/cn.cjs");let t=require("vue");var n={key:1,class:`text-4 font-600 text-foreground`},r={class:`flex items-center gap-2`},i={class:`flex-1 overflow-auto p-4`},a={key:0,class:`flex justify-end gap-2 border-t border-solid border-border p-4`},o=(0,t.defineComponent)({inheritAttrs:!1,__name:`st-dialog`,props:(0,t.mergeModels)({title:{default:``},width:{default:`500px`},height:{default:`auto`},closable:{type:Boolean,default:!0},draggable:{type:Boolean,default:!0},fullscreen:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},closeOnClickModal:{type:Boolean,default:!0},center:{type:Boolean,default:!0},customClass:{default:``},animation:{default:`zoom`}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(o){let s=(0,t.useAttrs)(),c=o,l=(0,t.useModel)(o,`modelValue`),u=(0,t.ref)(null),d=(0,t.ref)(null),f=(0,t.ref)(!1),p=(0,t.ref)({isDragging:!1,startX:0,startY:0,offsetX:0,offsetY:0}),m=(0,t.computed)(()=>e.cn(`st-dialog-overlay`,`fixed`,`inset-0`,`z-999`,`flex`,{"bg-black/50":c.modal,"items-center":c.center,"justify-center":c.center},s.class)),h=(0,t.computed)(()=>e.cn(`st-dialog-container`,`flex`,`flex-col`,`bg-background`,`rounded-radius`,`shadow-lg`,`overflow-hidden`,c.customClass,{"st-dialog-container--fullscreen":f.value,"w-screen h-screen":f.value,"cursor-move":c.draggable&&!p.value.isDragging,"cursor-grabbing":p.value.isDragging},s.class)),g=(0,t.computed)(()=>{if(f.value)return{};let e={width:c.width};return c.height!==`auto`&&(e.height=c.height),(p.value.offsetX!==0||p.value.offsetY!==0)&&(e.translate=`${p.value.offsetX}px ${p.value.offsetY}px`),e}),_=(0,t.computed)(()=>[`flex`,`items-center`,`justify-between`,`border-b`,`border-solid`,`border-border`,`p-4`,`select-none`,{"cursor-grab":c.draggable&&!p.value.isDragging,"cursor-grabbing":p.value.isDragging}]),v=(0,t.computed)(()=>[`inline-flex`,`items-center`,`justify-center`,`w-8`,`h-8`,`rounded-radius`,`cursor-pointer`,`text-4`,`text-muted-foreground`,`hover:bg-muted`,`hover:text-foreground`,`transition-all`,`duration-150`]),y=(0,t.computed)(()=>f.value?`i-ri-fullscreen-exit-line`:`i-ri-fullscreen-line`),b=()=>{f.value=!f.value,f.value&&x()},x=()=>{p.value={isDragging:!1,startX:0,startY:0,offsetX:0,offsetY:0}},S=e=>{!c.draggable||f.value||e.target.closest(`.flex.items-center.gap-2`)||(e.preventDefault(),p.value.isDragging=!0,p.value.startX=e.clientX-p.value.offsetX,p.value.startY=e.clientY-p.value.offsetY,document.addEventListener(`mousemove`,C),document.addEventListener(`mouseup`,w))},C=e=>{p.value.isDragging&&(p.value.offsetX=e.clientX-p.value.startX,p.value.offsetY=e.clientY-p.value.startY)},w=()=>{p.value.isDragging=!1,document.removeEventListener(`mousemove`,C),document.removeEventListener(`mouseup`,w)},T=()=>{l.value=!1},E=()=>{c.closeOnClickModal&&T()};return(0,t.watch)(l,e=>{e&&(x(),f.value=!1)}),(e,o)=>((0,t.openBlock)(),(0,t.createBlock)(t.Teleport,{to:`body`},[(0,t.createVNode)(t.Transition,{appear:``,"enter-from-class":`opacity-0`,"enter-active-class":`transition-opacity duration-250 ease-[var(--animate-ease-out)]`,"leave-active-class":`transition-opacity duration-150 ease-[var(--animate-ease-in)]`,"leave-to-class":`opacity-0`},{default:(0,t.withCtx)(()=>[l.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)(m.value),style:(0,t.normalizeStyle)((0,t.unref)(s).style),onClick:E},[(0,t.createVNode)(t.Transition,{appear:``,"enter-from-class":`scale-0 opacity-0`,"enter-active-class":`transition-[scale,opacity] duration-250 ease-[var(--animate-ease-out-back),var(--animate-ease-out)]`,"leave-active-class":`transition-[scale,opacity] duration-150 ease-[var(--animate-ease-in)]`,"leave-to-class":`scale-0 opacity-0`,onClick:o[0]||=(0,t.withModifiers)(()=>{},[`stop`])},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,{ref_key:`dialogRef`,ref:u,class:(0,t.normalizeClass)(h.value),style:(0,t.normalizeStyle)(g.value)},[(0,t.createElementVNode)(`div`,{ref_key:`headerRef`,ref:d,class:(0,t.normalizeClass)(_.value),onMousedown:S},[e.$slots.title?(0,t.renderSlot)(e.$slots,`title`,{key:0}):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,n,(0,t.toDisplayString)(c.title),1)),(0,t.createElementVNode)(`div`,r,[(0,t.renderSlot)(e.$slots,`extra`),c.fullscreen?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)(v.value),onClick:b},[(0,t.createElementVNode)(`i`,{class:(0,t.normalizeClass)(y.value)},null,2)],2)):(0,t.createCommentVNode)(``,!0),c.closable?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:1,class:(0,t.normalizeClass)(v.value),onClick:T},[...o[1]||=[(0,t.createElementVNode)(`i`,{class:`i-ri-close-line`},null,-1)]],2)):(0,t.createCommentVNode)(``,!0)])],34),(0,t.createElementVNode)(`div`,i,[(0,t.renderSlot)(e.$slots,`default`)]),e.$slots.footer?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,a,[(0,t.renderSlot)(e.$slots,`footer`)])):(0,t.createCommentVNode)(``,!0)],6)]),_:3})],6)):(0,t.createCommentVNode)(``,!0)]),_:3})]))}});exports.default=o;
1
+ const e=require("../../utils/cn.cjs");let t=require("vue");var n={key:1,class:`text-4 font-600 text-foreground`},r={class:`flex items-center gap-2`},i={class:`flex-1 overflow-auto p-4`},a={key:0,class:`flex justify-end gap-2 border-t border-solid border-border p-4`},o=(0,t.defineComponent)({inheritAttrs:!1,__name:`st-dialog`,props:(0,t.mergeModels)({title:{default:``},width:{default:`500px`},height:{default:`auto`},closable:{type:Boolean,default:!0},draggable:{type:Boolean,default:!0},fullscreen:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},closeOnClickModal:{type:Boolean,default:!0},center:{type:Boolean,default:!0},customClass:{default:``},animation:{default:`zoom`}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(o){let s=(0,t.useAttrs)(),c=o,l=(0,t.useModel)(o,`modelValue`),u=(0,t.ref)(null),d=(0,t.ref)(null),f=(0,t.ref)(!1),p=(0,t.ref)({isDragging:!1,startX:0,startY:0,offsetX:0,offsetY:0}),m=(0,t.computed)(()=>e.cn(`st-dialog-overlay`,`fixed`,`inset-0`,`z-999`,`flex`,{"bg-black/50":c.modal,"items-center":c.center,"justify-center":c.center},s.class)),h=(0,t.computed)(()=>e.cn(`st-dialog-container`,`flex`,`flex-col`,`bg-background`,`rounded-radius`,`shadow-lg`,`overflow-hidden`,c.customClass,{"st-dialog-container--fullscreen":f.value,"w-screen h-screen":f.value,"cursor-move":c.draggable&&!p.value.isDragging,"cursor-grabbing":p.value.isDragging},s.class)),g=(0,t.computed)(()=>{if(f.value)return{};let e={width:c.width};return c.height!==`auto`&&(e.height=c.height),(p.value.offsetX!==0||p.value.offsetY!==0)&&(e.translate=`${p.value.offsetX}px ${p.value.offsetY}px`),e}),_=(0,t.computed)(()=>[`flex`,`items-center`,`justify-between`,`border-b`,`border-solid`,`border-border`,`p-4`,`select-none`,{"cursor-grab":c.draggable&&!p.value.isDragging,"cursor-grabbing":p.value.isDragging}]),v=(0,t.computed)(()=>[`inline-flex`,`items-center`,`justify-center`,`w-8`,`h-8`,`rounded-radius`,`cursor-pointer`,`text-4`,`text-muted-foreground`,`hover:bg-muted`,`hover:text-foreground`,`transition-all`,`duration-150`]),y=(0,t.computed)(()=>f.value?`i-lucide-minimize-2`:`i-lucide-maximize-2`),b=()=>{f.value=!f.value,f.value&&x()},x=()=>{p.value={isDragging:!1,startX:0,startY:0,offsetX:0,offsetY:0}},S=e=>{!c.draggable||f.value||e.target.closest(`.flex.items-center.gap-2`)||(e.preventDefault(),p.value.isDragging=!0,p.value.startX=e.clientX-p.value.offsetX,p.value.startY=e.clientY-p.value.offsetY,document.addEventListener(`mousemove`,C),document.addEventListener(`mouseup`,w))},C=e=>{p.value.isDragging&&(p.value.offsetX=e.clientX-p.value.startX,p.value.offsetY=e.clientY-p.value.startY)},w=()=>{p.value.isDragging=!1,document.removeEventListener(`mousemove`,C),document.removeEventListener(`mouseup`,w)},T=()=>{l.value=!1},E=()=>{c.closeOnClickModal&&T()};return(0,t.watch)(l,e=>{e&&(x(),f.value=!1)}),(e,o)=>((0,t.openBlock)(),(0,t.createBlock)(t.Teleport,{to:`body`},[(0,t.createVNode)(t.Transition,{appear:``,"enter-from-class":`opacity-0`,"enter-active-class":`transition-opacity duration-250 ease-[var(--animate-ease-out)]`,"leave-active-class":`transition-opacity duration-150 ease-[var(--animate-ease-in)]`,"leave-to-class":`opacity-0`},{default:(0,t.withCtx)(()=>[l.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:(0,t.normalizeClass)(m.value),style:(0,t.normalizeStyle)((0,t.unref)(s).style),onClick:E},[(0,t.createVNode)(t.Transition,{appear:``,"enter-from-class":`scale-0 opacity-0`,"enter-active-class":`transition-[scale,opacity] duration-250 ease-[var(--animate-ease-out-back),var(--animate-ease-out)]`,"leave-active-class":`transition-[scale,opacity] duration-150 ease-[var(--animate-ease-in)]`,"leave-to-class":`scale-0 opacity-0`,onClick:o[0]||=(0,t.withModifiers)(()=>{},[`stop`])},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,{ref_key:`dialogRef`,ref:u,class:(0,t.normalizeClass)(h.value),style:(0,t.normalizeStyle)(g.value)},[(0,t.createElementVNode)(`div`,{ref_key:`headerRef`,ref:d,class:(0,t.normalizeClass)(_.value),onMousedown:S},[e.$slots.title?(0,t.renderSlot)(e.$slots,`title`,{key:0}):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,n,(0,t.toDisplayString)(c.title),1)),(0,t.createElementVNode)(`div`,r,[(0,t.renderSlot)(e.$slots,`extra`),c.fullscreen?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)(v.value),onClick:b},[(0,t.createElementVNode)(`i`,{class:(0,t.normalizeClass)(y.value)},null,2)],2)):(0,t.createCommentVNode)(``,!0),c.closable?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:1,class:(0,t.normalizeClass)(v.value),onClick:T},[...o[1]||=[(0,t.createElementVNode)(`i`,{class:`i-lucide-x`},null,-1)]],2)):(0,t.createCommentVNode)(``,!0)])],34),(0,t.createElementVNode)(`div`,i,[(0,t.renderSlot)(e.$slots,`default`)]),e.$slots.footer?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,a,[(0,t.renderSlot)(e.$slots,`footer`)])):(0,t.createCommentVNode)(``,!0)],6)]),_:3})],6)):(0,t.createCommentVNode)(``,!0)]),_:3})]))}});exports.default=o;
@@ -95,7 +95,7 @@ var C = {
95
95
  "hover:text-foreground",
96
96
  "transition-all",
97
97
  "duration-150"
98
- ]), R = r(() => j.value ? "i-ri-fullscreen-exit-line" : "i-ri-fullscreen-line"), z = () => {
98
+ ]), R = r(() => j.value ? "i-lucide-minimize-2" : "i-lucide-maximize-2"), z = () => {
99
99
  j.value = !j.value, j.value && B();
100
100
  }, B = () => {
101
101
  M.value = {
@@ -160,7 +160,7 @@ var C = {
160
160
  key: 1,
161
161
  class: d(L.value),
162
162
  onClick: W
163
- }, [...r[1] ||= [s("i", { class: "i-ri-close-line" }, null, -1)]], 2)) : a("", !0)
163
+ }, [...r[1] ||= [s("i", { class: "i-lucide-x" }, null, -1)]], 2)) : a("", !0)
164
164
  ])], 34),
165
165
  s("div", T, [h(e.$slots, "default")]),
166
166
  e.$slots.footer ? (p(), o("div", E, [h(e.$slots, "footer")])) : a("", !0)
@@ -21,7 +21,7 @@ export interface DialogProps {
21
21
  /** 是否居中显示 */
22
22
  center?: boolean;
23
23
  /** 自定义类名 */
24
- customClass?: string;
24
+ customClass?: commonClass;
25
25
  /** 弹窗打开时的动画名称 */
26
26
  animation?: string;
27
27
  }
@@ -1 +1 @@
1
- const e=require("./st-input.vue_vue_type_script_setup_true_lang.cjs");;/* empty css */var t=require("../../_virtual/_plugin-vue_export-helper.cjs").default(e.default,[[`__scopeId`,`data-v-19943572`]]);exports.default=t;
1
+ const e=require("./st-input.vue_vue_type_script_setup_true_lang.cjs");;/* empty css */var t=require("../../_virtual/_plugin-vue_export-helper.cjs").default(e.default,[[`__scopeId`,`data-v-1ab95bcc`]]);exports.default=t;
@@ -2,6 +2,6 @@ import e from "./st-input.vue_vue_type_script_setup_true_lang.js";
2
2
  /* empty css */
3
3
  import t from "../../_virtual/_plugin-vue_export-helper.js";
4
4
  //#region src/components/st-input/st-input.vue
5
- var n = /*#__PURE__*/ t(e, [["__scopeId", "data-v-19943572"]]);
5
+ var n = /*#__PURE__*/ t(e, [["__scopeId", "data-v-1ab95bcc"]]);
6
6
  //#endregion
7
7
  export { n as default };
@@ -1 +1 @@
1
- const e=require("../../utils/cn.cjs");let t=require("vue");var n={key:0,class:`st-input__prefix inline-flex items-center text-foreground`},r=[`autocomplete`,`disabled`,`maxlength`,`minlength`,`placeholder`,`readonly`,`type`],i={key:3,class:`st-input__word-limit select-none text-xs text-muted-foreground`},a={key:4,class:`st-input__suffix inline-flex items-center text-foreground`},o=(0,t.defineComponent)({inheritAttrs:!1,__name:`st-input`,props:(0,t.mergeModels)({modelValue:{},type:{default:`text`},placeholder:{default:``},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},showPassword:{type:Boolean,default:!1},maxlength:{},minlength:{},showWordLimit:{type:Boolean,default:!1},prefixIcon:{},suffixIcon:{}},{modelValue:{default:``},modelModifiers:{}}),emits:(0,t.mergeModels)([`update:modelValue`,`input`,`change`,`focus`,`blur`,`clear`],[`update:modelValue`]),setup(o,{expose:s,emit:c}){let l=(0,t.useAttrs)(),u=o,d=c;(0,t.useSlots)();let f=(0,t.useModel)(o,`modelValue`),p=(0,t.ref)(null),m=(0,t.ref)(!1),h=(0,t.ref)(!1),g=(0,t.ref)(!1),_=(0,t.computed)(()=>{let e=f.value;return typeof e==`string`?e.length:String(e).length}),v=(0,t.computed)(()=>u.type===`password`?m.value?`text`:`password`:u.type),y=(0,t.computed)(()=>{if(u.type===`password`)return`new-password`}),b=(0,t.computed)(()=>u.clearable&&!u.disabled&&f.value&&h.value),x=(0,t.computed)(()=>u.type===`password`&&u.showPassword&&!u.disabled),S=(0,t.computed)(()=>e.cn(`st-input`,`relative inline-flex items-center gap-2.5 px-2.5 rounded-radius border border-input bg-background transition-colors transition-shadow`,`focus-within:border-ring focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-0 focus-within:ring-offset-background`,`h-10 text-sm`,{"st-input--disabled cursor-not-allowed opacity-50":u.disabled},l.class)),C=(0,t.computed)(()=>e.cn(`st-input__inner`,`h-full w-full flex-1 min-w-0 min-h-0 bg-transparent outline-none text-foreground`,`placeholder:text-muted-foreground`,`disabled:cursor-not-allowed disabled:opacity-50`)),w=()=>{h.value=!0},T=()=>{h.value=!1},E=e=>{d(`input`,e)},D=e=>{d(`change`,e)},O=e=>{g.value=!0,d(`focus`,e)},k=e=>{g.value=!1,d(`blur`,e)},A=()=>{f.value=``,d(`clear`),p.value?.focus()},j=()=>{m.value=!m.value};return s({focus:()=>{p.value?.focus()},blur:()=>{p.value?.blur()},select:()=>{p.value?.select()},inputRef:p}),(e,o)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)(S.value),style:(0,t.normalizeStyle)((0,t.unref)(l).style),onMouseenter:w,onMouseleave:T},[e.$slots.prefix||u.prefixIcon?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,n,[(0,t.renderSlot)(e.$slots,`prefix`,{},()=>[u.prefixIcon?((0,t.openBlock)(),(0,t.createElementBlock)(`i`,{key:0,class:(0,t.normalizeClass)([u.prefixIcon,`st-input__prefix-icon text-foreground`])},null,2)):(0,t.createCommentVNode)(``,!0)],!0)])):(0,t.createCommentVNode)(``,!0),(0,t.withDirectives)((0,t.createElementVNode)(`input`,{ref_key:`inputRef`,ref:p,"onUpdate:modelValue":o[0]||=e=>f.value=e,autocomplete:y.value,class:(0,t.normalizeClass)(C.value),disabled:u.disabled,maxlength:u.maxlength,minlength:u.minlength,placeholder:u.placeholder,readonly:u.readonly,type:v.value,onBlur:k,onChange:D,onFocus:O,onInput:E},null,42,r),[[t.vModelDynamic,f.value]]),b.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:1,class:`st-input__clear text-foreground cursor-pointer active:opacity-80`,onClick:A},[...o[1]||=[(0,t.createElementVNode)(`i`,{class:`i-ri-close-fill`},null,-1)]])):(0,t.createCommentVNode)(``,!0),x.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:2,class:`st-input__password-toggle text-foreground cursor-pointer active:opacity-80`,onClick:j},[(0,t.createElementVNode)(`i`,{class:(0,t.normalizeClass)(m.value?`i-ri-eye-off-line`:`i-ri-eye-line`)},null,2)])):(0,t.createCommentVNode)(``,!0),u.showWordLimit&&u.maxlength?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,i,(0,t.toDisplayString)(_.value)+`/`+(0,t.toDisplayString)(u.maxlength),1)):(0,t.createCommentVNode)(``,!0),e.$slots.suffix||u.suffixIcon?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,a,[(0,t.renderSlot)(e.$slots,`suffix`,{},()=>[u.suffixIcon?((0,t.openBlock)(),(0,t.createElementBlock)(`i`,{key:0,class:(0,t.normalizeClass)([u.suffixIcon,`st-input__suffix-icon text-foreground`])},null,2)):(0,t.createCommentVNode)(``,!0)],!0)])):(0,t.createCommentVNode)(``,!0)],38))}});exports.default=o;
1
+ const e=require("../../utils/cn.cjs");let t=require("vue");var n={key:0,class:`st-input__prefix inline-flex items-center text-foreground`},r=[`autocomplete`,`disabled`,`maxlength`,`minlength`,`placeholder`,`readonly`,`type`],i={key:3,class:`st-input__word-limit select-none text-xs text-muted-foreground`},a={key:4,class:`st-input__suffix inline-flex items-center text-foreground`},o=(0,t.defineComponent)({inheritAttrs:!1,__name:`st-input`,props:(0,t.mergeModels)({modelValue:{},type:{default:`text`},placeholder:{default:``},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},showPassword:{type:Boolean,default:!1},maxlength:{},minlength:{},showWordLimit:{type:Boolean,default:!1},prefixIcon:{},suffixIcon:{}},{modelValue:{default:``},modelModifiers:{}}),emits:(0,t.mergeModels)([`update:modelValue`,`input`,`change`,`focus`,`blur`,`clear`],[`update:modelValue`]),setup(o,{expose:s,emit:c}){let l=(0,t.useAttrs)(),u=o,d=c;(0,t.useSlots)();let f=(0,t.useModel)(o,`modelValue`),p=(0,t.ref)(null),m=(0,t.ref)(!1),h=(0,t.ref)(!1),g=(0,t.ref)(!1),_=(0,t.computed)(()=>{let e=f.value;return typeof e==`string`?e.length:String(e).length}),v=(0,t.computed)(()=>u.type===`password`?m.value?`text`:`password`:u.type),y=(0,t.computed)(()=>{if(u.type===`password`)return`new-password`}),b=(0,t.computed)(()=>u.clearable&&!u.disabled&&f.value&&h.value),x=(0,t.computed)(()=>u.type===`password`&&u.showPassword&&!u.disabled),S=(0,t.computed)(()=>e.cn(`st-input`,`relative inline-flex items-center gap-2.5 px-2.5 rounded-radius border border-input bg-background transition-colors transition-shadow`,`focus-within:border-ring focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-0 focus-within:ring-offset-background`,`h-10 text-sm`,{"st-input--disabled cursor-not-allowed opacity-50":u.disabled},l.class)),C=(0,t.computed)(()=>e.cn(`st-input__inner`,`h-full w-full flex-1 min-w-0 min-h-0 bg-transparent outline-none text-foreground`,`placeholder:text-muted-foreground`,`disabled:cursor-not-allowed disabled:opacity-50`)),w=()=>{h.value=!0},T=()=>{h.value=!1},E=e=>{d(`input`,e)},D=e=>{d(`change`,e)},O=e=>{g.value=!0,d(`focus`,e)},k=e=>{g.value=!1,d(`blur`,e)},A=()=>{f.value=``,d(`clear`),p.value?.focus()},j=()=>{m.value=!m.value};return s({focus:()=>{p.value?.focus()},blur:()=>{p.value?.blur()},select:()=>{p.value?.select()},inputRef:p}),(e,o)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)(S.value),style:(0,t.normalizeStyle)((0,t.unref)(l).style),onMouseenter:w,onMouseleave:T},[e.$slots.prefix||u.prefixIcon?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,n,[(0,t.renderSlot)(e.$slots,`prefix`,{},()=>[u.prefixIcon?((0,t.openBlock)(),(0,t.createElementBlock)(`i`,{key:0,class:(0,t.normalizeClass)([u.prefixIcon,`st-input__prefix-icon text-foreground`])},null,2)):(0,t.createCommentVNode)(``,!0)],!0)])):(0,t.createCommentVNode)(``,!0),(0,t.withDirectives)((0,t.createElementVNode)(`input`,{ref_key:`inputRef`,ref:p,"onUpdate:modelValue":o[0]||=e=>f.value=e,autocomplete:y.value,class:(0,t.normalizeClass)(C.value),disabled:u.disabled,maxlength:u.maxlength,minlength:u.minlength,placeholder:u.placeholder,readonly:u.readonly,type:v.value,onBlur:k,onChange:D,onFocus:O,onInput:E},null,42,r),[[t.vModelDynamic,f.value]]),b.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:1,class:`st-input__clear text-foreground cursor-pointer active:opacity-80`,onClick:A},[...o[1]||=[(0,t.createElementVNode)(`i`,{class:`i-lucide-x`},null,-1)]])):(0,t.createCommentVNode)(``,!0),x.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:2,class:`st-input__password-toggle text-foreground cursor-pointer active:opacity-80`,onClick:j},[(0,t.createElementVNode)(`i`,{class:(0,t.normalizeClass)(m.value?`i-lucide-eye-off`:`i-lucide-eye`)},null,2)])):(0,t.createCommentVNode)(``,!0),u.showWordLimit&&u.maxlength?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,i,(0,t.toDisplayString)(_.value)+`/`+(0,t.toDisplayString)(u.maxlength),1)):(0,t.createCommentVNode)(``,!0),e.$slots.suffix||u.suffixIcon?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,a,[(0,t.renderSlot)(e.$slots,`suffix`,{},()=>[u.suffixIcon?((0,t.openBlock)(),(0,t.createElementBlock)(`i`,{key:0,class:(0,t.normalizeClass)([u.suffixIcon,`st-input__suffix-icon text-foreground`])},null,2)):(0,t.createCommentVNode)(``,!0)],!0)])):(0,t.createCommentVNode)(``,!0)],38))}});exports.default=o;
@@ -128,12 +128,12 @@ var y = {
128
128
  key: 1,
129
129
  class: "st-input__clear text-foreground cursor-pointer active:opacity-80",
130
130
  onClick: G
131
- }, [...t[1] ||= [i("i", { class: "i-ri-close-fill" }, null, -1)]])) : n("", !0),
131
+ }, [...t[1] ||= [i("i", { class: "i-lucide-x" }, null, -1)]])) : n("", !0),
132
132
  I.value ? (l(), r("span", {
133
133
  key: 2,
134
134
  class: "st-input__password-toggle text-foreground cursor-pointer active:opacity-80",
135
135
  onClick: K
136
- }, [i("i", { class: s(k.value ? "i-ri-eye-off-line" : "i-ri-eye-line") }, null, 2)])) : n("", !0),
136
+ }, [i("i", { class: s(k.value ? "i-lucide-eye-off" : "i-lucide-eye") }, null, 2)])) : n("", !0),
137
137
  T.showWordLimit && T.maxlength ? (l(), r("span", x, f(M.value) + "/" + f(T.maxlength), 1)) : n("", !0),
138
138
  e.$slots.suffix || T.suffixIcon ? (l(), r("span", S, [d(e.$slots, "suffix", {}, () => [T.suffixIcon ? (l(), r("i", {
139
139
  key: 0,
@@ -3,6 +3,7 @@ export declare const StMenu: import('../../utils/with-install.js').SFCWithInstal
3
3
  list: import("./types.d.ts").MenuItem[];
4
4
  placement?: import("./types.d.ts").MenuPlacement;
5
5
  trigger?: import("./types.d.ts").MenuTrigger;
6
+ triggerClass?: commonClass;
6
7
  }> & Readonly<{
7
8
  onSelect?: (item: import("./types.d.ts").MenuItem) => any;
8
9
  }>, import("./types.d.ts").MenuExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -21,6 +22,7 @@ export declare const StMenu: import('../../utils/with-install.js').SFCWithInstal
21
22
  list: import("./types.d.ts").MenuItem[];
22
23
  placement?: import("./types.d.ts").MenuPlacement;
23
24
  trigger?: import("./types.d.ts").MenuTrigger;
25
+ triggerClass?: commonClass;
24
26
  }> & Readonly<{
25
27
  onSelect?: (item: import("./types.d.ts").MenuItem) => any;
26
28
  }>, import("./types.d.ts").MenuExpose, {}, {}, {}, {
@@ -34,6 +36,7 @@ export declare const StMenu: import('../../utils/with-install.js').SFCWithInstal
34
36
  list: import("./types.d.ts").MenuItem[];
35
37
  placement?: import("./types.d.ts").MenuPlacement;
36
38
  trigger?: import("./types.d.ts").MenuTrigger;
39
+ triggerClass?: commonClass;
37
40
  }> & Readonly<{
38
41
  onSelect?: (item: import("./types.d.ts").MenuItem) => any;
39
42
  }>, import("./types.d.ts").MenuExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -1 +1 @@
1
- const e=require("../../utils/cn.cjs"),t=require("../st-popover/st-popover.vue.cjs");let n=require("vue");var r={key:0,class:`h-px my-1 mx-2 bg-border`},i={key:1,class:`block`},a={key:0,class:`px-3 pt-1.5 pb-0.5 text-2.5 font-semibold tracking-wide uppercase text-muted-foreground select-none`},o={class:`flex items-center gap-2 px-3 py-1.25 rounded-radius cursor-pointer transition-colors duration-100 select-none whitespace-nowrap text-3.25 leading-5 text-foreground hover:bg-accent`},s={key:0,class:`inline-flex items-center justify-center w-4.5 h-4.5 text-4 flex-shrink-0`},c={class:`flex-1 min-w-0 min-h-0 truncate`},l={key:1,class:`text-3 text-muted-foreground ml-3 flex-shrink-0`},u={class:`flex items-center gap-2 px-3 py-1.25 rounded-radius cursor-pointer transition-colors duration-100 select-none whitespace-nowrap text-3.25 leading-5 text-foreground hover:bg-accent`},d={key:0,class:`inline-flex items-center justify-center w-4.5 h-4.5 text-4 flex-shrink-0`},f={class:`flex-1 min-w-0 min-h-0 truncate`},p={key:1,class:`text-3 text-muted-foreground ml-3 flex-shrink-0`},m=(0,n.defineComponent)({name:`StMenuNode`,inheritAttrs:!1,__name:`st-menu-node`,props:{item:{},depth:{default:0}},emits:[`select`],setup(m,{emit:h}){let g=(0,n.useAttrs)(),_=m,v=h,y=(0,n.inject)(`st-menu-hide`,()=>{}),b=(0,n.inject)(`st-menu-has-icon`,(0,n.ref)(!1)),x=(0,n.computed)(()=>!!(_.item.children&&_.item.children.length>0));(0,n.provide)(`st-menu-has-icon`,(0,n.computed)(()=>{if(!x.value)return!1;for(let e of _.item.children??[])if(e.type!==`divider`){if(e.type===`group`){for(let t of e.children??[])if(t.icon)return!0}else if(e.icon)return!0}return!1}));let S=(0,n.computed)(()=>e.cn(`relative rounded-radius`,`block`,{"opacity-40 cursor-not-allowed":_.item.disabled},g.class)),C=(0,n.computed)(()=>[`min-w-35`,`max-w-80`,`p-1`,`backdrop-blur-16`]);function w(){_.item.disabled||(_.item.action&&_.item.action(),v(`select`,_.item),y())}function T(e){v(`select`,e)}return(e,h)=>{let g=(0,n.resolveComponent)(`StMenuNode`,!0);return m.item.type===`divider`?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,r)):m.item.type===`group`?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,i,[m.item.label?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,a,(0,n.toDisplayString)(m.item.label),1)):(0,n.createCommentVNode)(``,!0),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(m.item.children??[],(e,t)=>((0,n.openBlock)(),(0,n.createBlock)(g,{key:e.key??t,depth:m.depth+1,item:e,onSelect:T},null,8,[`depth`,`item`]))),128))])):x.value?((0,n.openBlock)(),(0,n.createBlock)(t.default,{key:2,class:(0,n.normalizeClass)(C.value),"close-delay":200,"open-delay":150,"show-arrow":!1,"trigger-class":`block`,placement:`right-top`,trigger:`hover`},{trigger:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,{class:(0,n.normalizeClass)(S.value)},[(0,n.createElementVNode)(`div`,o,[(0,n.unref)(b)?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,s,[m.item.icon?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:0,class:(0,n.normalizeClass)(m.item.icon)},null,2)):(0,n.createCommentVNode)(``,!0)])):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`span`,c,(0,n.toDisplayString)(m.item.label),1),m.item.shortcut?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,l,(0,n.toDisplayString)(m.item.shortcut),1)):(0,n.createCommentVNode)(``,!0),h[0]||=(0,n.createElementVNode)(`span`,{class:`inline-flex items-center justify-center w-4 h-4 text-3.5 flex-shrink-0 ml-auto opacity-50`},[(0,n.createElementVNode)(`span`,{class:`i-ri-arrow-right-s-line`})],-1)])],2)]),content:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(m.item.children,(e,t)=>((0,n.openBlock)(),(0,n.createBlock)(g,{key:e.key??t,depth:m.depth+1,item:e,onSelect:T},null,8,[`depth`,`item`]))),128))]),_:1},8,[`class`])):((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:3,class:(0,n.normalizeClass)(S.value),onClick:w},[(0,n.createElementVNode)(`div`,u,[(0,n.unref)(b)?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,d,[m.item.icon?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:0,class:(0,n.normalizeClass)(m.item.icon)},null,2)):(0,n.createCommentVNode)(``,!0)])):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`span`,f,(0,n.toDisplayString)(m.item.label),1),m.item.shortcut?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,p,(0,n.toDisplayString)(m.item.shortcut),1)):(0,n.createCommentVNode)(``,!0)])],2))}}});exports.default=m;
1
+ const e=require("../../utils/cn.cjs"),t=require("../st-popover/st-popover.vue.cjs");let n=require("vue");var r={key:0,class:`h-px my-1 mx-2 bg-border`},i={key:1,class:`block`},a={key:0,class:`px-3 pt-1.5 pb-0.5 text-2.5 font-semibold tracking-wide uppercase text-muted-foreground select-none`},o={class:`flex items-center gap-2 px-3 py-1.25 rounded-radius cursor-pointer transition-colors duration-100 select-none whitespace-nowrap text-3.25 leading-5 text-foreground hover:bg-accent`},s={key:0,class:`inline-flex items-center justify-center w-4.5 h-4.5 text-4 flex-shrink-0`},c={class:`flex-1 min-w-0 min-h-0 truncate`},l={key:1,class:`text-3 text-muted-foreground ml-3 flex-shrink-0`},u={class:`flex items-center gap-2 px-3 py-1.25 rounded-radius cursor-pointer transition-colors duration-100 select-none whitespace-nowrap text-3.25 leading-5 text-foreground hover:bg-accent`},d={key:0,class:`inline-flex items-center justify-center w-4.5 h-4.5 text-4 flex-shrink-0`},f={class:`flex-1 min-w-0 min-h-0 truncate`},p={key:1,class:`text-3 text-muted-foreground ml-3 flex-shrink-0`},m=(0,n.defineComponent)({name:`StMenuNode`,inheritAttrs:!1,__name:`st-menu-node`,props:{item:{},depth:{default:0}},emits:[`select`],setup(m,{emit:h}){let g=(0,n.useAttrs)(),_=m,v=h,y=(0,n.inject)(`st-menu-hide`,()=>{}),b=(0,n.inject)(`st-menu-has-icon`,(0,n.ref)(!1)),x=(0,n.computed)(()=>!!(_.item.children&&_.item.children.length>0));(0,n.provide)(`st-menu-has-icon`,(0,n.computed)(()=>{if(!x.value)return!1;for(let e of _.item.children??[])if(e.type!==`divider`){if(e.type===`group`){for(let t of e.children??[])if(t.icon)return!0}else if(e.icon)return!0}return!1}));let S=(0,n.computed)(()=>e.cn(`relative rounded-radius`,`block`,{"opacity-40 cursor-not-allowed":_.item.disabled},g.class)),C=(0,n.computed)(()=>[`min-w-35`,`max-w-80`,`p-1`,`backdrop-blur-16`]);function w(){_.item.disabled||(_.item.action&&_.item.action(),v(`select`,_.item),y())}function T(e){v(`select`,e)}return(e,h)=>{let g=(0,n.resolveComponent)(`StMenuNode`,!0);return m.item.type===`divider`?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,r)):m.item.type===`group`?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,i,[m.item.label?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,a,(0,n.toDisplayString)(m.item.label),1)):(0,n.createCommentVNode)(``,!0),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(m.item.children??[],(e,t)=>((0,n.openBlock)(),(0,n.createBlock)(g,{key:e.key??t,depth:m.depth+1,item:e,onSelect:T},null,8,[`depth`,`item`]))),128))])):x.value?((0,n.openBlock)(),(0,n.createBlock)(t.default,{key:2,class:(0,n.normalizeClass)(C.value),"close-delay":200,"open-delay":150,"show-arrow":!1,"trigger-class":`block`,placement:`right-top`,trigger:`hover`},{trigger:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,{class:(0,n.normalizeClass)(S.value)},[(0,n.createElementVNode)(`div`,o,[(0,n.unref)(b)?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,s,[m.item.icon?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:0,class:(0,n.normalizeClass)(m.item.icon)},null,2)):(0,n.createCommentVNode)(``,!0)])):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`span`,c,(0,n.toDisplayString)(m.item.label),1),m.item.shortcut?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,l,(0,n.toDisplayString)(m.item.shortcut),1)):(0,n.createCommentVNode)(``,!0),h[0]||=(0,n.createElementVNode)(`span`,{class:`inline-flex items-center justify-center w-4 h-4 text-3.5 flex-shrink-0 ml-auto opacity-50`},[(0,n.createElementVNode)(`span`,{class:`i-lucide-chevron-right`})],-1)])],2)]),content:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(m.item.children,(e,t)=>((0,n.openBlock)(),(0,n.createBlock)(g,{key:e.key??t,depth:m.depth+1,item:e,onSelect:T},null,8,[`depth`,`item`]))),128))]),_:1},8,[`class`])):((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:3,class:(0,n.normalizeClass)(S.value),onClick:w},[(0,n.createElementVNode)(`div`,u,[(0,n.unref)(b)?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,d,[m.item.icon?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:0,class:(0,n.normalizeClass)(m.item.icon)},null,2)):(0,n.createCommentVNode)(``,!0)])):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`span`,f,(0,n.toDisplayString)(m.item.label),1),m.item.shortcut?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,p,(0,n.toDisplayString)(m.item.shortcut),1)):(0,n.createCommentVNode)(``,!0)])],2))}}});exports.default=m;
@@ -79,7 +79,7 @@ var b = {
79
79
  }, null, 2)) : a("", !0)])) : a("", !0),
80
80
  s("span", T, g(c.item.label), 1),
81
81
  c.item.shortcut ? (d(), o("span", E, g(c.item.shortcut), 1)) : a("", !0),
82
- r[0] ||= s("span", { class: "inline-flex items-center justify-center w-4 h-4 text-3.5 flex-shrink-0 ml-auto opacity-50" }, [s("span", { class: "i-ri-arrow-right-s-line" })], -1)
82
+ r[0] ||= s("span", { class: "inline-flex items-center justify-center w-4 h-4 text-3.5 flex-shrink-0 ml-auto opacity-50" }, [s("span", { class: "i-lucide-chevron-right" })], -1)
83
83
  ])], 2)]),
84
84
  content: y(() => [(d(!0), o(n, null, m(c.item.children, (e, t) => (d(), i(l, {
85
85
  key: e.key ?? t,
@@ -3,6 +3,7 @@ type __VLS_Props = {
3
3
  list: MenuItem[];
4
4
  placement?: MenuPlacement;
5
5
  trigger?: MenuTrigger;
6
+ triggerClass?: commonClass;
6
7
  };
7
8
  declare var __VLS_10: {};
8
9
  type __VLS_Slots = {} & {
@@ -1 +1 @@
1
- const e=require("../../utils/cn.cjs"),t=require("../st-popover/st-popover.vue.cjs"),n=require("./st-menu-node.vue.cjs");let r=require("vue");var i=(0,r.defineComponent)({name:`StMenu`,inheritAttrs:!1,__name:`st-menu`,props:{list:{},placement:{default:`bottom`},trigger:{default:`click`}},emits:[`select`],setup(i,{expose:a,emit:o}){let s=(0,r.useAttrs)(),c=new Set;function l(e){for(let t of c)t!==e&&t()}function u(e){for(let t of e)if(t.type!==`divider`){if(t.type===`group`){if(u(t.children??[]))return!0}else if(t.icon)return!0}return!1}function d(e){return{top:`top-left`,bottom:`bottom-left`,left:`left-top`,right:`right-top`}[e]}let f=i,p=o,m=(0,r.ref)(null);function h(){m.value?.hide(),c.delete(h)}(0,r.provide)(`st-menu-hide`,h),(0,r.provide)(`st-menu-has-icon`,(0,r.computed)(()=>u(f.list)));let g=(0,r.computed)(()=>e.cn([`min-w-35`,`max-w-80`,`p-1`,`rounded-radius`,`bg-popover`,`backdrop-blur-16`,`border`,`border-border`,`shadow-lg`],s.class)),_=(0,r.computed)(()=>f.trigger),v=(0,r.computed)(()=>d(f.placement));function y(e){l(h),m.value?.show(e),c.add(h)}function b(e){p(`select`,e),h()}return a({show:y,hide:h}),(e,a)=>((0,r.openBlock)(),(0,r.createBlock)(t.default,{ref_key:`popoverRef`,ref:m,trigger:_.value,placement:v.value,"show-arrow":!1},{trigger:(0,r.withCtx)(()=>[(0,r.renderSlot)(e.$slots,`default`)]),content:(0,r.withCtx)(()=>[(0,r.createElementVNode)(`div`,{class:(0,r.normalizeClass)(g.value),style:(0,r.normalizeStyle)((0,r.unref)(s).style),onClick:a[0]||=(0,r.withModifiers)(()=>{},[`stop`]),onContextmenu:a[1]||=(0,r.withModifiers)(()=>{},[`prevent`])},[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(i.list,(e,t)=>((0,r.openBlock)(),(0,r.createBlock)(n.default,{key:e.key??t,depth:0,item:e,onSelect:b},null,8,[`item`]))),128))],38)]),_:3},8,[`trigger`,`placement`]))}});exports.default=i;
1
+ const e=require("../../utils/cn.cjs"),t=require("../st-popover/st-popover.vue.cjs"),n=require("./st-menu-node.vue.cjs");let r=require("vue");var i=(0,r.defineComponent)({name:`StMenu`,inheritAttrs:!1,__name:`st-menu`,props:{list:{},placement:{default:`bottom`},trigger:{default:`click`},triggerClass:{}},emits:[`select`],setup(i,{expose:a,emit:o}){let s=(0,r.useAttrs)(),c=new Set;function l(e){for(let t of c)t!==e&&t()}function u(e){for(let t of e)if(t.type!==`divider`){if(t.type===`group`){if(u(t.children??[]))return!0}else if(t.icon)return!0}return!1}function d(e){return{top:`top-left`,bottom:`bottom-left`,left:`left-top`,right:`right-top`}[e]}let f=i,p=o,m=(0,r.ref)(null);function h(){m.value?.hide(),c.delete(h)}(0,r.provide)(`st-menu-hide`,h),(0,r.provide)(`st-menu-has-icon`,(0,r.computed)(()=>u(f.list)));let g=(0,r.computed)(()=>e.cn([`min-w-35`,`max-w-80`,`p-1`,`rounded-radius`,`bg-popover`,`backdrop-blur-16`,`border`,`border-border`,`shadow-lg`],s.class)),_=(0,r.computed)(()=>f.trigger),v=(0,r.computed)(()=>d(f.placement));function y(e){l(h),m.value?.show(e),c.add(h)}function b(e){p(`select`,e),h()}return a({show:y,hide:h}),(e,a)=>((0,r.openBlock)(),(0,r.createBlock)(t.default,{ref_key:`popoverRef`,ref:m,placement:v.value,"show-arrow":!1,trigger:_.value,"trigger-class":i.triggerClass},{trigger:(0,r.withCtx)(()=>[(0,r.renderSlot)(e.$slots,`default`)]),content:(0,r.withCtx)(()=>[(0,r.createElementVNode)(`div`,{class:(0,r.normalizeClass)(g.value),style:(0,r.normalizeStyle)((0,r.unref)(s).style),onClick:a[0]||=(0,r.withModifiers)(()=>{},[`stop`]),onContextmenu:a[1]||=(0,r.withModifiers)(()=>{},[`prevent`])},[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(i.list,(e,t)=>((0,r.openBlock)(),(0,r.createBlock)(n.default,{key:e.key??t,depth:0,item:e,onSelect:b},null,8,[`item`]))),128))],38)]),_:3},8,[`placement`,`trigger`,`trigger-class`]))}});exports.default=i;
@@ -10,7 +10,8 @@ var b = /*@__PURE__*/ c({
10
10
  props: {
11
11
  list: {},
12
12
  placement: { default: "bottom" },
13
- trigger: { default: "click" }
13
+ trigger: { default: "click" },
14
+ triggerClass: {}
14
15
  },
15
16
  emits: ["select"],
16
17
  setup(c, { expose: b, emit: x }) {
@@ -62,9 +63,10 @@ var b = /*@__PURE__*/ c({
62
63
  }), (e, i) => (d(), a(t, {
63
64
  ref_key: "popoverRef",
64
65
  ref: k,
65
- trigger: M.value,
66
66
  placement: N.value,
67
- "show-arrow": !1
67
+ "show-arrow": !1,
68
+ trigger: M.value,
69
+ "trigger-class": c.triggerClass
68
70
  }, {
69
71
  trigger: v(() => [h(e.$slots, "default")]),
70
72
  content: v(() => [s("div", {
@@ -79,7 +81,11 @@ var b = /*@__PURE__*/ c({
79
81
  onSelect: F
80
82
  }, null, 8, ["item"]))), 128))], 38)]),
81
83
  _: 3
82
- }, 8, ["trigger", "placement"]));
84
+ }, 8, [
85
+ "placement",
86
+ "trigger",
87
+ "trigger-class"
88
+ ]));
83
89
  }
84
90
  });
85
91
  //#endregion
@@ -17,7 +17,7 @@ export declare const StPopover: import('../../utils/with-install.js').SFCWithIns
17
17
  closeOnEsc: boolean;
18
18
  openDelay: number;
19
19
  closeDelay: number;
20
- triggerClass: string;
20
+ triggerClass: commonClass;
21
21
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
22
22
  P: {};
23
23
  B: {};
@@ -40,7 +40,7 @@ export declare const StPopover: import('../../utils/with-install.js').SFCWithIns
40
40
  closeOnEsc: boolean;
41
41
  openDelay: number;
42
42
  closeDelay: number;
43
- triggerClass: string;
43
+ triggerClass: commonClass;
44
44
  }>;
45
45
  __isFragment?: never;
46
46
  __isTeleport?: never;
@@ -63,7 +63,7 @@ export declare const StPopover: import('../../utils/with-install.js').SFCWithIns
63
63
  closeOnEsc: boolean;
64
64
  openDelay: number;
65
65
  closeDelay: number;
66
- triggerClass: string;
66
+ triggerClass: commonClass;
67
67
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
68
68
  $slots: {
69
69
  trigger?: (props: {}) => any;
@@ -25,7 +25,7 @@ declare const __VLS_base: import("vue").DefineComponent<PopoverProps, PopoverExp
25
25
  closeOnEsc: boolean;
26
26
  openDelay: number;
27
27
  closeDelay: number;
28
- triggerClass: string;
28
+ triggerClass: commonClass;
29
29
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
30
30
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
31
31
  declare const _default: typeof __VLS_export;
@@ -63,7 +63,7 @@ export interface PopoverProps {
63
63
  /** hover 触发时隐藏的延迟时间(毫秒) */
64
64
  closeDelay?: number;
65
65
  /** 触发元素的类名 */
66
- triggerClass?: string;
66
+ triggerClass?: commonClass;
67
67
  }
68
68
 
69
69
  /**
@@ -100,4 +100,4 @@ export interface PopoverExpose {
100
100
  toggle: () => void;
101
101
  }
102
102
 
103
- export {};
103
+ export {};
@@ -22,11 +22,11 @@ export declare const StSelect: import('../../utils/with-install.js').SFCWithInst
22
22
  valueKey: string;
23
23
  placeholder: string;
24
24
  clearable: boolean;
25
- popoverStyle: string | Record<string, string>;
25
+ popoverStyle: commonStyle;
26
26
  multiple: boolean;
27
27
  filterable: boolean;
28
28
  group: boolean;
29
- popoverClass: string;
29
+ popoverClass: commonClass;
30
30
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
31
31
  P: {};
32
32
  B: {};
@@ -50,11 +50,11 @@ export declare const StSelect: import('../../utils/with-install.js').SFCWithInst
50
50
  valueKey: string;
51
51
  placeholder: string;
52
52
  clearable: boolean;
53
- popoverStyle: string | Record<string, string>;
53
+ popoverStyle: commonStyle;
54
54
  multiple: boolean;
55
55
  filterable: boolean;
56
56
  group: boolean;
57
- popoverClass: string;
57
+ popoverClass: commonClass;
58
58
  }>;
59
59
  __isFragment?: never;
60
60
  __isTeleport?: never;
@@ -82,11 +82,11 @@ export declare const StSelect: import('../../utils/with-install.js').SFCWithInst
82
82
  valueKey: string;
83
83
  placeholder: string;
84
84
  clearable: boolean;
85
- popoverStyle: string | Record<string, string>;
85
+ popoverStyle: commonStyle;
86
86
  multiple: boolean;
87
87
  filterable: boolean;
88
88
  group: boolean;
89
- popoverClass: string;
89
+ popoverClass: commonClass;
90
90
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
91
91
  $slots: {
92
92
  prefix?: (props: {}) => any;
@@ -31,11 +31,11 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, Selec
31
31
  valueKey: string;
32
32
  placeholder: string;
33
33
  clearable: boolean;
34
- popoverStyle: string | Record<string, string>;
34
+ popoverStyle: commonStyle;
35
35
  multiple: boolean;
36
36
  filterable: boolean;
37
37
  group: boolean;
38
- popoverClass: string;
38
+ popoverClass: commonClass;
39
39
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
40
40
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
41
41
  declare const _default: typeof __VLS_export;
@@ -1 +1 @@
1
- const e=require("../../utils/cn.cjs"),t=require("../st-input/st-input.vue.cjs"),n=require("../st-popover/st-popover.vue.cjs");let r=require("vue");var i={class:`st-select__dropdown max-h-60 w-full overflow-auto px-1 py-1.5`},a={class:`st-select__group-label px-3 py-2 text-xs font-semibold text-muted-foreground`},o=[`onClick`],s={class:`flex-1 truncate text-foreground`},c={key:0,class:`st-select__check text-primary`},l=[`onClick`],u={class:`flex-1 truncate text-foreground`},d={key:0,class:`st-select__check text-primary`},f={key:1,class:`st-select__empty px-3 py-2 text-center text-muted-foreground`},p=(0,r.defineComponent)({name:`StSelect`,inheritAttrs:!1,__name:`st-select`,props:(0,r.mergeModels)({list:{default:()=>[]},labelKey:{default:`label`},valueKey:{default:`value`},placeholder:{default:``},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},filterable:{type:Boolean,default:!1},group:{type:Boolean,default:!1},popoverClass:{default:``},popoverStyle:{default:``}},{modelValue:{default:void 0},modelModifiers:{}}),emits:(0,r.mergeModels)([`update:modelValue`,`change`,`clear`,`visibleChange`,`removeTag`,`filter`],[`update:modelValue`]),setup(p,{expose:m,emit:h}){(0,r.useSlots)();let g=(0,r.useAttrs)(),_=p,v=h,y=(0,r.useModel)(p,`modelValue`),b=(0,r.ref)(null),x=(0,r.ref)(null),S=(0,r.ref)(!1),C=(0,r.ref)(``),w=(0,r.ref)(!1),T=(0,r.ref)(!1),E=(0,r.ref)(0),D=e=>String(e.label),O=e=>e.value,k=(e,t)=>e[t],A=(0,r.computed)(()=>_.list.map(e=>{if(typeof e==`object`&&e){let t=e,n=k(t,_.labelKey),r=k(t,_.valueKey);return{label:String(n??``),value:r,disabled:e.disabled,children:e.children}}return{label:String(e),value:e}})),j=(0,r.computed)(()=>{if(!_.group)return A.value;let e=[];return A.value.forEach(t=>{t.children&&t.children.length>0&&e.push(...t.children)}),e}),M=(0,r.computed)(()=>{if(!_.filterable||!C.value)return _.group?j.value:A.value;let e=C.value.toLowerCase();return(_.group?j.value:A.value).filter(t=>t.label.toLowerCase().includes(e))}),N=(0,r.computed)(()=>{if(!_.group)return[];if(!_.filterable||!C.value)return A.value.filter(e=>e.children&&e.children.length>0).map(e=>({label:e.label,children:e.children}));let e=C.value.toLowerCase();return A.value.filter(e=>e.children&&e.children.length>0).map(t=>({label:t.label,children:t.children.filter(t=>t.label.toLowerCase().includes(e))})).filter(e=>e.children.length>0)}),P=(0,r.computed)(()=>{if(!_.multiple||!Array.isArray(y.value))return[];let e=y.value,t=_.group?j.value:A.value;return e.map(e=>{let n=t.find(t=>t.value===e);return n?n.label:``}).filter(e=>e!==``)}),F=(0,r.computed)(()=>{if(_.multiple||y.value===void 0)return``;let e=(_.group?j.value:A.value).find(e=>e.value===y.value);return e?e.label:``}),I=e=>_.multiple&&Array.isArray(y.value)?y.value.includes(e.value):y.value===e.value,L=(0,r.computed)(()=>e.cn(`st-select`,g.class,{"st-select--focused":S.value})),R=(0,r.computed)(()=>e.cn(`st-select__arrow`,`inline-flex items-center transition-transform duration-200`,{"rotate-180":S.value})),z=(0,r.computed)(()=>!_.clearable||_.disabled?!1:_.multiple?Array.isArray(y.value)&&y.value.length>0&&T.value:y.value!==void 0&&y.value!==null&&T.value),B=(0,r.computed)(()=>_.filterable&&w.value&&!_.multiple?C.value:_.multiple?P.value.join(`,`):F.value),V=(0,r.computed)(()=>_.filterable&&w.value&&!_.multiple?F.value||_.placeholder||`请选择`:(_.multiple?P.value.length>0:F.value)?``:_.placeholder||`请选择`),H=(0,r.computed)(()=>_.popoverStyle?_.popoverStyle:E.value>0?{width:`${E.value}px`}:{}),U=t=>e.cn(`st-select__option`,`flex items-center gap-2 px-3 py-1.25 rounded-radius cursor-pointer transition-colors duration-100 select-none whitespace-nowrap text-3.25 leading-5 text-foreground`,`hover:bg-accent`,{"st-select__option--selected bg-accent":I(t),"st-select__option--disabled cursor-not-allowed opacity-50":t.disabled}),W=e=>{if(!e.disabled)if(_.multiple){let t=Array.isArray(y.value)?[...y.value]:[],n=t.indexOf(e.value);n>-1?t.splice(n,1):t.push(e.value),y.value=t,v(`change`,t)}else y.value=e.value,v(`change`,e.value),S.value=!1,C.value=``},G=()=>{_.disabled||(y.value,y.value=_.multiple?[]:void 0,v(`clear`),v(`change`,_.multiple?[]:void 0))},K=()=>{T.value=!0},q=()=>{T.value=!1},J=e=>{v(`filter`,e.target.value)},Y=e=>{_.filterable&&w.value&&(C.value=String(e))},X=e=>{v(`visibleChange`,e),e?(b.value&&(E.value=b.value.$el.getBoundingClientRect().width),_.filterable&&!_.multiple&&(w.value=!0)):(w.value=!1,C.value=``)};return m({focus:()=>{b.value?.focus()},blur:()=>{b.value?.blur()},clear:()=>{G()}}),(e,p)=>((0,r.openBlock)(),(0,r.createBlock)(n.default,{ref_key:`popoverRef`,ref:x,visible:S.value,"onUpdate:visible":p[0]||=e=>S.value=e,disabled:_.disabled,"show-arrow":!1,class:(0,r.normalizeClass)(_.popoverClass),style:(0,r.normalizeStyle)(H.value),placement:`bottom-left`,trigger:`click`,onVisibleChange:X},{trigger:(0,r.withCtx)(()=>[(0,r.createVNode)(t.default,{ref_key:`selectRef`,ref:b,class:(0,r.normalizeClass)(L.value),style:(0,r.normalizeStyle)((0,r.unref)(g).style),clearable:z.value,disabled:_.disabled,placeholder:V.value,readonly:!_.filterable,"model-value":B.value,onClear:G,onInput:J,"onUpdate:modelValue":Y,onMouseenter:K,onMouseleave:q},(0,r.createSlots)({suffix:(0,r.withCtx)(()=>[(0,r.createElementVNode)(`span`,{class:(0,r.normalizeClass)(R.value)},[...p[1]||=[(0,r.createElementVNode)(`i`,{class:`i-ri-arrow-down-s-line`},null,-1)]],2)]),_:2},[e.$slots.prefix?{name:`prefix`,fn:(0,r.withCtx)(()=>[(0,r.renderSlot)(e.$slots,`prefix`)]),key:`0`}:void 0]),1032,[`class`,`style`,`clearable`,`disabled`,`placeholder`,`readonly`,`model-value`])]),content:(0,r.withCtx)(()=>[(0,r.createElementVNode)(`div`,i,[M.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[_.group?((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,{key:0},(0,r.renderList)(N.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:e.label},[(0,r.createElementVNode)(`div`,a,(0,r.toDisplayString)(e.label),1),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(e.children,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:O(e),class:(0,r.normalizeClass)(U(e)),onClick:t=>W(e)},[(0,r.createElementVNode)(`span`,s,(0,r.toDisplayString)(D(e)),1),I(e)?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,c,[...p[2]||=[(0,r.createElementVNode)(`i`,{class:`i-ri-check-line`},null,-1)]])):(0,r.createCommentVNode)(``,!0)],10,o))),128))],64))),128)):((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,{key:1},(0,r.renderList)(M.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:O(e),class:(0,r.normalizeClass)(U(e)),onClick:t=>W(e)},[(0,r.createElementVNode)(`span`,u,(0,r.toDisplayString)(D(e)),1),I(e)?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,d,[...p[3]||=[(0,r.createElementVNode)(`i`,{class:`i-ri-check-line`},null,-1)]])):(0,r.createCommentVNode)(``,!0)],10,l))),128))],64)):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[e.$slots.empty?(0,r.renderSlot)(e.$slots,`empty`,{key:0}):((0,r.openBlock)(),(0,r.createElementBlock)(`div`,f,`暂无数据`))],64))])]),_:3},8,[`visible`,`disabled`,`class`,`style`]))}});exports.default=p;
1
+ const e=require("../../utils/cn.cjs"),t=require("../st-input/st-input.vue.cjs"),n=require("../st-popover/st-popover.vue.cjs");let r=require("vue");var i={class:`st-select__dropdown max-h-60 w-full overflow-auto px-1 py-1.5`},a={class:`st-select__group-label px-3 py-2 text-xs font-semibold text-muted-foreground`},o=[`onClick`],s={class:`flex-1 truncate text-foreground`},c={key:0,class:`st-select__check text-primary`},l=[`onClick`],u={class:`flex-1 truncate text-foreground`},d={key:0,class:`st-select__check text-primary`},f={key:1,class:`st-select__empty px-3 py-2 text-center text-muted-foreground`},p=(0,r.defineComponent)({name:`StSelect`,inheritAttrs:!1,__name:`st-select`,props:(0,r.mergeModels)({list:{default:()=>[]},labelKey:{default:`label`},valueKey:{default:`value`},placeholder:{default:``},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},filterable:{type:Boolean,default:!1},group:{type:Boolean,default:!1},popoverClass:{default:``},popoverStyle:{default:``}},{modelValue:{default:void 0},modelModifiers:{}}),emits:(0,r.mergeModels)([`update:modelValue`,`change`,`clear`,`visibleChange`,`removeTag`,`filter`],[`update:modelValue`]),setup(p,{expose:m,emit:h}){(0,r.useSlots)();let g=(0,r.useAttrs)(),_=p,v=h,y=(0,r.useModel)(p,`modelValue`),b=(0,r.ref)(null),x=(0,r.ref)(null),S=(0,r.ref)(!1),C=(0,r.ref)(``),w=(0,r.ref)(!1),T=(0,r.ref)(!1),E=(0,r.ref)(0),D=e=>String(e.label),O=e=>e.value,k=(e,t)=>e[t],A=(0,r.computed)(()=>_.list.map(e=>{if(typeof e==`object`&&e){let t=e,n=k(t,_.labelKey),r=k(t,_.valueKey);return{label:String(n??``),value:r,disabled:e.disabled,children:e.children}}return{label:String(e),value:e}})),j=(0,r.computed)(()=>{if(!_.group)return A.value;let e=[];return A.value.forEach(t=>{t.children&&t.children.length>0&&e.push(...t.children)}),e}),M=(0,r.computed)(()=>{if(!_.filterable||!C.value)return _.group?j.value:A.value;let e=C.value.toLowerCase();return(_.group?j.value:A.value).filter(t=>t.label.toLowerCase().includes(e))}),N=(0,r.computed)(()=>{if(!_.group)return[];if(!_.filterable||!C.value)return A.value.filter(e=>e.children&&e.children.length>0).map(e=>({label:e.label,children:e.children}));let e=C.value.toLowerCase();return A.value.filter(e=>e.children&&e.children.length>0).map(t=>({label:t.label,children:t.children.filter(t=>t.label.toLowerCase().includes(e))})).filter(e=>e.children.length>0)}),P=(0,r.computed)(()=>{if(!_.multiple||!Array.isArray(y.value))return[];let e=y.value,t=_.group?j.value:A.value;return e.map(e=>{let n=t.find(t=>t.value===e);return n?n.label:``}).filter(e=>e!==``)}),F=(0,r.computed)(()=>{if(_.multiple||y.value===void 0)return``;let e=(_.group?j.value:A.value).find(e=>e.value===y.value);return e?e.label:``}),I=e=>_.multiple&&Array.isArray(y.value)?y.value.includes(e.value):y.value===e.value,L=(0,r.computed)(()=>e.cn(`st-select`,g.class,{"st-select--focused":S.value})),R=(0,r.computed)(()=>e.cn(`st-select__arrow`,`inline-flex items-center transition-transform duration-200`,{"rotate-180":S.value})),z=(0,r.computed)(()=>!_.clearable||_.disabled?!1:_.multiple?Array.isArray(y.value)&&y.value.length>0&&T.value:y.value!==void 0&&y.value!==null&&T.value),B=(0,r.computed)(()=>_.filterable&&w.value&&!_.multiple?C.value:_.multiple?P.value.join(`,`):F.value),V=(0,r.computed)(()=>_.filterable&&w.value&&!_.multiple?F.value||_.placeholder||`请选择`:(_.multiple?P.value.length>0:F.value)?``:_.placeholder||`请选择`),H=(0,r.computed)(()=>_.popoverStyle?_.popoverStyle:E.value>0?{width:`${E.value}px`}:{}),U=t=>e.cn(`st-select__option`,`flex items-center gap-2 px-3 py-1.25 rounded-radius cursor-pointer transition-colors duration-100 select-none whitespace-nowrap text-3.25 leading-5 text-foreground`,`hover:bg-accent`,{"st-select__option--selected bg-accent":I(t),"st-select__option--disabled cursor-not-allowed opacity-50":t.disabled}),W=e=>{if(!e.disabled)if(_.multiple){let t=Array.isArray(y.value)?[...y.value]:[],n=t.indexOf(e.value);n>-1?t.splice(n,1):t.push(e.value),y.value=t,v(`change`,t)}else y.value=e.value,v(`change`,e.value),S.value=!1,C.value=``},G=()=>{_.disabled||(y.value,y.value=_.multiple?[]:void 0,v(`clear`),v(`change`,_.multiple?[]:void 0))},K=()=>{T.value=!0},q=()=>{T.value=!1},J=e=>{v(`filter`,e.target.value)},Y=e=>{_.filterable&&w.value&&(C.value=String(e))},X=e=>{v(`visibleChange`,e),e?(b.value&&(E.value=b.value.$el.getBoundingClientRect().width),_.filterable&&!_.multiple&&(w.value=!0)):(w.value=!1,C.value=``)};return m({focus:()=>{b.value?.focus()},blur:()=>{b.value?.blur()},clear:()=>{G()}}),(e,p)=>((0,r.openBlock)(),(0,r.createBlock)(n.default,{ref_key:`popoverRef`,ref:x,visible:S.value,"onUpdate:visible":p[0]||=e=>S.value=e,disabled:_.disabled,"show-arrow":!1,class:(0,r.normalizeClass)(_.popoverClass),style:(0,r.normalizeStyle)(H.value),placement:`bottom-left`,trigger:`click`,onVisibleChange:X},{trigger:(0,r.withCtx)(()=>[(0,r.createVNode)(t.default,{ref_key:`selectRef`,ref:b,class:(0,r.normalizeClass)(L.value),style:(0,r.normalizeStyle)((0,r.unref)(g).style),clearable:z.value,disabled:_.disabled,placeholder:V.value,readonly:!_.filterable,"model-value":B.value,onClear:G,onInput:J,"onUpdate:modelValue":Y,onMouseenter:K,onMouseleave:q},(0,r.createSlots)({suffix:(0,r.withCtx)(()=>[(0,r.createElementVNode)(`span`,{class:(0,r.normalizeClass)(R.value)},[...p[1]||=[(0,r.createElementVNode)(`i`,{class:`i-lucide-chevron-down`},null,-1)]],2)]),_:2},[e.$slots.prefix?{name:`prefix`,fn:(0,r.withCtx)(()=>[(0,r.renderSlot)(e.$slots,`prefix`)]),key:`0`}:void 0]),1032,[`class`,`style`,`clearable`,`disabled`,`placeholder`,`readonly`,`model-value`])]),content:(0,r.withCtx)(()=>[(0,r.createElementVNode)(`div`,i,[M.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[_.group?((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,{key:0},(0,r.renderList)(N.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:e.label},[(0,r.createElementVNode)(`div`,a,(0,r.toDisplayString)(e.label),1),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(e.children,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:O(e),class:(0,r.normalizeClass)(U(e)),onClick:t=>W(e)},[(0,r.createElementVNode)(`span`,s,(0,r.toDisplayString)(D(e)),1),I(e)?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,c,[...p[2]||=[(0,r.createElementVNode)(`i`,{class:`i-lucide-check`},null,-1)]])):(0,r.createCommentVNode)(``,!0)],10,o))),128))],64))),128)):((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,{key:1},(0,r.renderList)(M.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:O(e),class:(0,r.normalizeClass)(U(e)),onClick:t=>W(e)},[(0,r.createElementVNode)(`span`,u,(0,r.toDisplayString)(D(e)),1),I(e)?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,d,[...p[3]||=[(0,r.createElementVNode)(`i`,{class:`i-lucide-check`},null,-1)]])):(0,r.createCommentVNode)(``,!0)],10,l))),128))],64)):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[e.$slots.empty?(0,r.renderSlot)(e.$slots,`empty`,{key:0}):((0,r.openBlock)(),(0,r.createElementBlock)(`div`,f,`暂无数据`))],64))])]),_:3},8,[`visible`,`disabled`,`class`,`style`]))}});exports.default=p;
@@ -163,7 +163,7 @@ var ie = { class: "st-select__dropdown max-h-60 w-full overflow-auto px-1 py-1.5
163
163
  onMouseenter: de,
164
164
  onMouseleave: fe
165
165
  }, c({
166
- suffix: b(() => [s("span", { class: d(X.value) }, [...i[1] ||= [s("i", { class: "i-ri-arrow-down-s-line" }, null, -1)]], 2)]),
166
+ suffix: b(() => [s("span", { class: d(X.value) }, [...i[1] ||= [s("i", { class: "i-lucide-chevron-down" }, null, -1)]], 2)]),
167
167
  _: 2
168
168
  }, [e.$slots.prefix ? {
169
169
  name: "prefix",
@@ -182,11 +182,11 @@ var ie = { class: "st-select__dropdown max-h-60 w-full overflow-auto px-1 py-1.5
182
182
  key: V(e),
183
183
  class: d(Z(e)),
184
184
  onClick: (t) => Q(e)
185
- }, [s("span", C, _(B(e)), 1), Y(e) ? (p(), o("span", w, [...i[2] ||= [s("i", { class: "i-ri-check-line" }, null, -1)]])) : a("", !0)], 10, S))), 128))], 64))), 128)) : (p(!0), o(r, { key: 1 }, h(G.value, (e) => (p(), o("div", {
185
+ }, [s("span", C, _(B(e)), 1), Y(e) ? (p(), o("span", w, [...i[2] ||= [s("i", { class: "i-lucide-check" }, null, -1)]])) : a("", !0)], 10, S))), 128))], 64))), 128)) : (p(!0), o(r, { key: 1 }, h(G.value, (e) => (p(), o("div", {
186
186
  key: V(e),
187
187
  class: d(Z(e)),
188
188
  onClick: (t) => Q(e)
189
- }, [s("span", E, _(B(e)), 1), Y(e) ? (p(), o("span", D, [...i[3] ||= [s("i", { class: "i-ri-check-line" }, null, -1)]])) : a("", !0)], 10, T))), 128))], 64)) : (p(), o(r, { key: 1 }, [e.$slots.empty ? g(e.$slots, "empty", { key: 0 }) : (p(), o("div", O, "暂无数据"))], 64))])]),
189
+ }, [s("span", E, _(B(e)), 1), Y(e) ? (p(), o("span", D, [...i[3] ||= [s("i", { class: "i-lucide-check" }, null, -1)]])) : a("", !0)], 10, T))), 128))], 64)) : (p(), o(r, { key: 1 }, [e.$slots.empty ? g(e.$slots, "empty", { key: 0 }) : (p(), o("div", O, "暂无数据"))], 64))])]),
190
190
  _: 3
191
191
  }, 8, [
192
192
  "visible",
@@ -35,9 +35,9 @@ export interface SelectProps {
35
35
  /** 是否分组 */
36
36
  group?: boolean;
37
37
  /** popover 下拉菜单的类名 */
38
- popoverClass?: string;
38
+ popoverClass?: commonClass;
39
39
  /** popover 下拉菜单的样式 */
40
- popoverStyle?: string | Record<string, string>;
40
+ popoverStyle?: commonStyle;
41
41
  }
42
42
 
43
43
  /**
@@ -1 +1 @@
1
- const e=require("../../utils/cn.cjs"),t=require("../../utils/cva/index.cjs");let n=require("vue");var r=[`disabled`,`aria-pressed`],i=(0,n.defineComponent)({inheritAttrs:!1,__name:`st-toggle`,props:{variant:{default:`default`},disabled:{type:Boolean,default:!1},modelValue:{type:Boolean,default:void 0},defaultPressed:{type:Boolean,default:!1}},emits:[`update:modelValue`,`pressed-change`],setup(i,{emit:a}){let o={default:`bg-transparent text-muted-foreground`,outline:`bg-transparent text-muted-foreground border border-input`},s={default:`hover:bg-muted hover:text-muted-foreground`,outline:`hover:bg-muted hover:text-muted-foreground hover:border-muted-foreground/20`},c={default:`bg-accent text-accent-foreground`,outline:`bg-accent text-accent-foreground border-accent-foreground/30`},l=i,u=a,d=(0,n.useAttrs)(),f=(0,n.ref)(l.defaultPressed),p=(0,n.computed)(()=>l.modelValue===void 0?f.value:l.modelValue),m=(0,n.computed)(()=>l.disabled),h=t.cva({base:`inline-flex items-center justify-center rounded-radius font-default transition-all duration-150 ease-in-out outline-none select-none h-10 min-w-10 px-3 gap-2`,variants:{variant:{default:o.default,outline:o.outline},disabled:{true:`opacity-50 cursor-not-allowed`}},defaultVariants:{variant:`default`}}),g=(0,n.computed)(()=>e.cn(h({variant:l.variant,disabled:l.disabled}),!l.disabled&&!p.value?s[l.variant]:``,p.value?c[l.variant]:``,d.class)),_=()=>{if(m.value)return;let e=!p.value;l.modelValue===void 0&&(f.value=e),u(`update:modelValue`,e),u(`pressed-change`,e)};return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`button`,{class:(0,n.normalizeClass)(g.value),style:(0,n.normalizeStyle)((0,n.unref)(d).style),disabled:m.value,"aria-pressed":p.value,onClick:_},[(0,n.renderSlot)(e.$slots,`default`)],14,r))}});exports.default=i;
1
+ const e=require("../../utils/cn.cjs"),t=require("../../utils/cva/index.cjs");let n=require("vue");var r=[`disabled`,`aria-pressed`],i=(0,n.defineComponent)({inheritAttrs:!1,__name:`st-toggle`,props:{variant:{default:`default`},disabled:{type:Boolean,default:!1},modelValue:{type:Boolean,default:void 0},defaultPressed:{type:Boolean,default:!1}},emits:[`update:modelValue`,`pressed-change`],setup(i,{emit:a}){let o={default:`bg-transparent text-muted-foreground`,outline:`bg-transparent text-muted-foreground border border-input`},s={default:`hover:bg-muted hover:text-muted-foreground`,outline:`hover:bg-muted hover:text-muted-foreground hover:border-muted-foreground/20`},c={default:`bg-accent text-accent-foreground`,outline:`bg-accent text-accent-foreground border-accent-foreground/30`},l=i,u=a,d=(0,n.useAttrs)(),f=(0,n.ref)(l.defaultPressed),p=(0,n.computed)(()=>l.modelValue===void 0?f.value:l.modelValue),m=(0,n.computed)(()=>l.disabled),h=t.cva({base:`inline-flex items-center justify-center rounded-radius font-default transition-all duration-150 ease-in-out outline-none select-none h-10 px-3 gap-2`,variants:{variant:{default:o.default,outline:o.outline},disabled:{true:`opacity-50 cursor-not-allowed`}},defaultVariants:{variant:`default`}}),g=(0,n.computed)(()=>e.cn(h({variant:l.variant,disabled:l.disabled}),!l.disabled&&!p.value?s[l.variant]:``,p.value?c[l.variant]:``,d.class)),_=()=>{if(m.value)return;let e=!p.value;l.modelValue===void 0&&(f.value=e),u(`update:modelValue`,e),u(`pressed-change`,e)};return(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`button`,{class:(0,n.normalizeClass)(g.value),style:(0,n.normalizeStyle)((0,n.unref)(d).style),disabled:m.value,"aria-pressed":p.value,onClick:_},[(0,n.renderSlot)(e.$slots,`default`)],14,r))}});exports.default=i;
@@ -32,7 +32,7 @@ var f = ["disabled", "aria-pressed"], p = /*@__PURE__*/ i({
32
32
  default: "bg-accent text-accent-foreground",
33
33
  outline: "bg-accent text-accent-foreground border-accent-foreground/30"
34
34
  }, _ = i, v = p, y = d(), b = c(_.defaultPressed), x = n(() => _.modelValue === void 0 ? b.value : _.modelValue), S = n(() => _.disabled), C = t({
35
- base: "inline-flex items-center justify-center rounded-radius font-default transition-all duration-150 ease-in-out outline-none select-none h-10 min-w-10 px-3 gap-2",
35
+ base: "inline-flex items-center justify-center rounded-radius font-default transition-all duration-150 ease-in-out outline-none select-none h-10 px-3 gap-2",
36
36
  variants: {
37
37
  variant: {
38
38
  default: m.default,
@@ -1 +1 @@
1
- let e=require("vue");var t={class:`flex-1 min-w-0 truncate`},n={key:0,class:`grid grid-rows-[1fr]`},r={class:`overflow-hidden`},i=(0,e.defineComponent)({inheritAttrs:!1,__name:`st-tree-node`,props:{node:{},level:{},indent:{},labelKey:{},valueKey:{},childrenKey:{},selectedValue:{},expandedKeys:{},onSelect:{type:Function},onToggle:{type:Function}},setup(i){let a=i,o=(0,e.useAttrs)();function s(e){return e[a.valueKey]}let c=(0,e.computed)(()=>s(a.node)),l=(0,e.computed)(()=>a.node[a.labelKey]),u=(0,e.computed)(()=>a.node[a.childrenKey]||[]),d=(0,e.computed)(()=>u.value.length===0),f=(0,e.computed)(()=>u.value.length>0),p=(0,e.computed)(()=>a.expandedKeys.includes(c.value)),m=(0,e.computed)(()=>a.selectedValue===c.value);function h(){a.onSelect(c.value)}function g(){d.value||a.onToggle(c.value)}return(a,c)=>{let _=(0,e.resolveComponent)(`StTreeNode`,!0);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,{class:(0,e.normalizeClass)((0,e.unref)(o).class)},[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`flex items-center gap-2 px-3 py-1.25 rounded-radius cursor-pointer transition-colors duration-100 select-none whitespace-nowrap text-3.25 leading-5 text-foreground`,{"hover:bg-accent":!m.value,"bg-accent":m.value}]),style:(0,e.normalizeStyle)({paddingLeft:`${i.level*i.indent+12}px`}),onClick:h},[(0,e.createElementVNode)(`span`,{class:(0,e.normalizeClass)([`flex items-center justify-center flex-shrink-0 w-4.5 h-4.5 rounded-radius color-muted-foreground transition-all duration-200 ease-in-out`,{"rotate-90":p.value,invisible:d.value,"hover:bg-accent hover:color-foreground":!d.value}]),onClick:(0,e.withModifiers)(g,[`stop`])},[...c[0]||=[(0,e.createElementVNode)(`i`,{class:`i-ri-arrow-right-s-line text-3.5`},null,-1)]],2),(0,e.createElementVNode)(`p`,t,(0,e.toDisplayString)(l.value),1)],6),(0,e.createVNode)(e.Transition,{"enter-active-class":`transition-[grid-template-rows] duration-250 ease-[var(--animate-ease-menu)]`,"enter-from-class":`!grid-rows-[0fr]`,"enter-to-class":`grid-rows-[1fr]`,"leave-active-class":`transition-[grid-template-rows] duration-200 ease-[var(--animate-ease-menu)]`,"leave-from-class":`grid-rows-[1fr]`,"leave-to-class":`!grid-rows-[0fr]`},{default:(0,e.withCtx)(()=>[f.value&&p.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,n,[(0,e.createElementVNode)(`div`,r,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(u.value,t=>((0,e.openBlock)(),(0,e.createBlock)(_,{key:s(t),"children-key":i.childrenKey,"expanded-keys":i.expandedKeys,indent:i.indent,"label-key":i.labelKey,level:i.level+1,node:t,"on-select":i.onSelect,"on-toggle":i.onToggle,"selected-value":i.selectedValue,"value-key":i.valueKey},null,8,[`children-key`,`expanded-keys`,`indent`,`label-key`,`level`,`node`,`on-select`,`on-toggle`,`selected-value`,`value-key`]))),128))])])):(0,e.createCommentVNode)(``,!0)]),_:1})],2)}}});exports.default=i;
1
+ let e=require("vue");var t={class:`flex-1 min-w-0 truncate`},n={key:0,class:`grid grid-rows-[1fr]`},r={class:`overflow-hidden`},i=(0,e.defineComponent)({inheritAttrs:!1,__name:`st-tree-node`,props:{node:{},level:{},indent:{},labelKey:{},valueKey:{},childrenKey:{},selectedValue:{},expandedKeys:{},onSelect:{type:Function},onToggle:{type:Function}},setup(i){let a=i,o=(0,e.useAttrs)();function s(e){return e[a.valueKey]}let c=(0,e.computed)(()=>s(a.node)),l=(0,e.computed)(()=>a.node[a.labelKey]),u=(0,e.computed)(()=>a.node[a.childrenKey]||[]),d=(0,e.computed)(()=>u.value.length===0),f=(0,e.computed)(()=>u.value.length>0),p=(0,e.computed)(()=>a.expandedKeys.includes(c.value)),m=(0,e.computed)(()=>a.selectedValue===c.value);function h(){a.onSelect(c.value)}function g(){d.value||a.onToggle(c.value)}return(a,c)=>{let _=(0,e.resolveComponent)(`StTreeNode`,!0);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,{class:(0,e.normalizeClass)((0,e.unref)(o).class)},[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`flex items-center gap-2 px-3 py-1.25 rounded-radius cursor-pointer transition-colors duration-100 select-none whitespace-nowrap text-3.25 leading-5 text-foreground`,{"hover:bg-accent":!m.value,"bg-accent":m.value}]),style:(0,e.normalizeStyle)({paddingLeft:`${i.level*i.indent+12}px`}),onClick:h},[(0,e.createElementVNode)(`span`,{class:(0,e.normalizeClass)([`flex items-center justify-center flex-shrink-0 w-4.5 h-4.5 rounded-radius color-muted-foreground transition-all duration-200 ease-in-out`,{"rotate-90":p.value,invisible:d.value,"hover:bg-accent hover:color-foreground":!d.value}]),onClick:(0,e.withModifiers)(g,[`stop`])},[...c[0]||=[(0,e.createElementVNode)(`i`,{class:`i-lucide-chevron-right text-3.5`},null,-1)]],2),(0,e.createElementVNode)(`p`,t,(0,e.toDisplayString)(l.value),1)],6),(0,e.createVNode)(e.Transition,{"enter-active-class":`transition-[grid-template-rows] duration-250 ease-[var(--animate-ease-menu)]`,"enter-from-class":`!grid-rows-[0fr]`,"enter-to-class":`grid-rows-[1fr]`,"leave-active-class":`transition-[grid-template-rows] duration-200 ease-[var(--animate-ease-menu)]`,"leave-from-class":`grid-rows-[1fr]`,"leave-to-class":`!grid-rows-[0fr]`},{default:(0,e.withCtx)(()=>[f.value&&p.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,n,[(0,e.createElementVNode)(`div`,r,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(u.value,t=>((0,e.openBlock)(),(0,e.createBlock)(_,{key:s(t),"children-key":i.childrenKey,"expanded-keys":i.expandedKeys,indent:i.indent,"label-key":i.labelKey,level:i.level+1,node:t,"on-select":i.onSelect,"on-toggle":i.onToggle,"selected-value":i.selectedValue,"value-key":i.valueKey},null,8,[`children-key`,`expanded-keys`,`indent`,`label-key`,`level`,`node`,`on-select`,`on-toggle`,`selected-value`,`value-key`]))),128))])])):(0,e.createCommentVNode)(``,!0)]),_:1})],2)}}});exports.default=i;
@@ -46,7 +46,7 @@ var y = { class: "flex-1 min-w-0 truncate" }, b = {
46
46
  "hover:bg-accent hover:color-foreground": !O.value
47
47
  }]),
48
48
  onClick: v(N, ["stop"])
49
- }, [...g[0] ||= [o("i", { class: "i-ri-arrow-right-s-line text-3.5" }, null, -1)]], 2), o("p", y, m(E.value), 1)], 6), s(t, {
49
+ }, [...g[0] ||= [o("i", { class: "i-lucide-chevron-right text-3.5" }, null, -1)]], 2), o("p", y, m(E.value), 1)], 6), s(t, {
50
50
  "enter-active-class": "transition-[grid-template-rows] duration-250 ease-[var(--animate-ease-menu)]",
51
51
  "enter-from-class": "!grid-rows-[0fr]",
52
52
  "enter-to-class": "grid-rows-[1fr]",
@@ -1 +1 @@
1
- var e=`!grid-rows-[0fr] -bottom-1 -left-1 -right-1 -top-1 -translate-x-1/2 -translate-y-1/2 absolute active:opacity-80 animate-spin backdrop-blur-16 bg-accent bg-background bg-black/50 bg-border bg-popover bg-primary bg-secondary bg-sidebar bg-transparent block border border-2 border-accent-foreground/30 border-b border-b-0 border-border border-input border-l-0 border-primary border-r border-r-0 border-solid border-t border-t-0 bottom-2 bottom-center bottom-left bottom-right box-border contents cursor-grab cursor-grabbing cursor-move cursor-not-allowed cursor-pointer disabled:cursor-not-allowed disabled:opacity-50 duration-100 duration-150 duration-160 duration-200 duration-250 ease ease-[var(--animate-ease-in)] ease-[var(--animate-ease-menu)] ease-[var(--animate-ease-out)] ease-[var(--animate-ease-out-back),var(--animate-ease-out)] fixed flex flex-1 flex-col flex-row flex-shrink-0 flex-wrap font-600 font-semibold gap-1.5 gap-2 gap-4 grid grid-rows-[1fr] h-2 h-2.5 h-4 h-4.5 h-5 h-8 h-9 h-full h-px h-screen hidden hover:bg-accent hover:bg-muted hover:bg-primary/90 hover:bg-secondary/80 hover:border-muted-foreground/20 hover:border-ring hover:text-foreground hover:text-muted-foreground i-ri- i-ri-arrow-down-s-line i-ri-arrow-right-s-line i-ri-check-line i-ri-close-fill i-ri-close-line i-ri-fullscreen-exit-line i-ri-fullscreen-line i-ri-loader-4-line inline-flex inset-0 items-center justify-between justify-center justify-end leading-5 left-1/2 left-2 left-bottom left-center left-top max-h-60 max-w-80 min-h-0 min-w-0 min-w-35 ml-3 ml-auto mx-2 my-1 opacity-0 opacity-40 opacity-50 outline-none overflow-auto overflow-hidden overflow-y-auto p-0.5 p-1 p-4 pb-0.5 placeholder:text-muted-foreground pt-1.5 px-1 px-3 px-4 py-1 py-1.25 py-1.5 py-2 relative right-2 right-bottom right-center right-top rotate-180 rotate-45 rounded-full rounded-radius scale-0 scale-100 scale-94 scale-96 scroll-mt-0 scrollbar-thin scrollbar-thumb-scrollbar scrollbar-track-transparent select-none shadow-lg sr-only text-2.5 text-3 text-3.25 text-3.5 text-4 text-accent-foreground text-center text-foreground text-muted-foreground text-primary text-primary-foreground text-secondary-foreground text-sm text-xs top-1/2 top-2 top-center top-left top-right tracking-wide transition-[grid-template-rows] transition-[scale,opacity] transition-[transform,opacity] transition-all transition-colors transition-opacity transition-transform truncate uppercase w-2 w-2.5 w-4 w-4.5 w-5 w-50 w-8 w-9 w-full w-screen whitespace-nowrap z-50 z-999`.split(` `);exports.default=e;
1
+ var e=`!grid-rows-[0fr] -bottom-1 -left-1 -right-1 -top-1 -translate-x-1/2 -translate-y-1/2 absolute active:opacity-80 animate-spin backdrop-blur-16 before:absolute before:bg-primary before:bottom-1 before:content-empty before:left-0 before:rounded-radius before:top-1 before:w-0.75 bg-accent bg-background bg-black/50 bg-border bg-popover bg-primary bg-secondary bg-sidebar bg-transparent block border border-2 border-accent-foreground/30 border-b border-b-0 border-border border-input border-l-0 border-none border-primary border-r border-r-0 border-solid border-t border-t-0 bottom-2 bottom-center bottom-left bottom-right box-border contents cursor-ew-resize cursor-grab cursor-grabbing cursor-move cursor-not-allowed cursor-ns-resize cursor-pointer data-[active=true]:h-10 data-[active=true]:w-10 disabled:cursor-not-allowed disabled:opacity-50 duration-100 duration-150 duration-160 duration-200 duration-250 ease ease-[var(--animate-ease-in)] ease-[var(--animate-ease-menu)] ease-[var(--animate-ease-out)] ease-[var(--animate-ease-out-back),var(--animate-ease-out)] ease-in-out fixed flex flex-1 flex-col flex-row flex-shrink-0 flex-wrap focus-within:border-ring focus-within:ring-2 focus-within:ring-offset-0 focus-within:ring-offset-background focus-within:ring-ring font-600 font-default font-semibold gap-0 gap-1.5 gap-2 gap-2.5 gap-4 grid grid-rows-[1fr] h-0.5 h-10 h-2 h-4 h-4.5 h-5 h-6 h-8 h-9 h-full h-px h-screen hidden hover:bg-accent hover:bg-muted hover:bg-primary/90 hover:bg-secondary/80 hover:border-muted-foreground/20 hover:border-ring hover:color-foreground hover:text-foreground hover:text-muted-foreground i-lucide- i-lucide-check i-lucide-chevron-down i-lucide-chevron-right i-lucide-loader-2 i-lucide-maximize-2 i-lucide-minimize-2 i-lucide-x inline-flex inset-0 items-center justify-between justify-center justify-end leading-5 left-1/2 left-2 left-bottom left-center left-top max-h-60 max-w-80 min-h-0 min-w-0 min-w-35 ml-3 ml-auto mx-2 my-1 opacity-0 opacity-100 opacity-40 opacity-50 outline-none overflow-auto overflow-hidden overflow-y-auto p-0.5 p-1 p-4 pb-0.5 placeholder:text-muted-foreground pt-1.5 px-1 px-2.5 px-3 px-4 py-1 py-1.25 py-1.5 py-2 relative right-2 right-bottom right-center right-top rotate-180 rotate-45 rotate-90 rounded-full rounded-radius scale-0 scale-100 scale-94 scale-96 scroll-mt-0 scrollbar-thin scrollbar-thumb-scrollbar scrollbar-track-transparent select-none shadow-lg sr-only text-2.5 text-3 text-3.25 text-3.5 text-4 text-accent-foreground text-center text-foreground text-muted-foreground text-primary text-primary-foreground text-secondary-foreground text-sm text-xs top-1/2 top-2 top-center top-left top-right tracking-wide transition-[grid-template-rows] transition-[opacity,height,width] transition-[scale,opacity] transition-[transform,opacity] transition-all transition-colors transition-opacity transition-shadow transition-transform translate-y-0.25 truncate uppercase w-0.5 w-2 w-4 w-4.5 w-5 w-50 w-6 w-8 w-9 w-full w-screen whitespace-nowrap z-1 z-50 z-999`.split(` `);exports.default=e;
@@ -1,4 +1,4 @@
1
1
  //#region src/generated-safelist.ts
2
- var e = /* @__PURE__ */ "!grid-rows-[0fr] -bottom-1 -left-1 -right-1 -top-1 -translate-x-1/2 -translate-y-1/2 absolute active:opacity-80 animate-spin backdrop-blur-16 bg-accent bg-background bg-black/50 bg-border bg-popover bg-primary bg-secondary bg-sidebar bg-transparent block border border-2 border-accent-foreground/30 border-b border-b-0 border-border border-input border-l-0 border-primary border-r border-r-0 border-solid border-t border-t-0 bottom-2 bottom-center bottom-left bottom-right box-border contents cursor-grab cursor-grabbing cursor-move cursor-not-allowed cursor-pointer disabled:cursor-not-allowed disabled:opacity-50 duration-100 duration-150 duration-160 duration-200 duration-250 ease ease-[var(--animate-ease-in)] ease-[var(--animate-ease-menu)] ease-[var(--animate-ease-out)] ease-[var(--animate-ease-out-back),var(--animate-ease-out)] fixed flex flex-1 flex-col flex-row flex-shrink-0 flex-wrap font-600 font-semibold gap-1.5 gap-2 gap-4 grid grid-rows-[1fr] h-2 h-2.5 h-4 h-4.5 h-5 h-8 h-9 h-full h-px h-screen hidden hover:bg-accent hover:bg-muted hover:bg-primary/90 hover:bg-secondary/80 hover:border-muted-foreground/20 hover:border-ring hover:text-foreground hover:text-muted-foreground i-ri- i-ri-arrow-down-s-line i-ri-arrow-right-s-line i-ri-check-line i-ri-close-fill i-ri-close-line i-ri-fullscreen-exit-line i-ri-fullscreen-line i-ri-loader-4-line inline-flex inset-0 items-center justify-between justify-center justify-end leading-5 left-1/2 left-2 left-bottom left-center left-top max-h-60 max-w-80 min-h-0 min-w-0 min-w-35 ml-3 ml-auto mx-2 my-1 opacity-0 opacity-40 opacity-50 outline-none overflow-auto overflow-hidden overflow-y-auto p-0.5 p-1 p-4 pb-0.5 placeholder:text-muted-foreground pt-1.5 px-1 px-3 px-4 py-1 py-1.25 py-1.5 py-2 relative right-2 right-bottom right-center right-top rotate-180 rotate-45 rounded-full rounded-radius scale-0 scale-100 scale-94 scale-96 scroll-mt-0 scrollbar-thin scrollbar-thumb-scrollbar scrollbar-track-transparent select-none shadow-lg sr-only text-2.5 text-3 text-3.25 text-3.5 text-4 text-accent-foreground text-center text-foreground text-muted-foreground text-primary text-primary-foreground text-secondary-foreground text-sm text-xs top-1/2 top-2 top-center top-left top-right tracking-wide transition-[grid-template-rows] transition-[scale,opacity] transition-[transform,opacity] transition-all transition-colors transition-opacity transition-transform truncate uppercase w-2 w-2.5 w-4 w-4.5 w-5 w-50 w-8 w-9 w-full w-screen whitespace-nowrap z-50 z-999".split(" ");
2
+ var e = /* @__PURE__ */ "!grid-rows-[0fr] -bottom-1 -left-1 -right-1 -top-1 -translate-x-1/2 -translate-y-1/2 absolute active:opacity-80 animate-spin backdrop-blur-16 before:absolute before:bg-primary before:bottom-1 before:content-empty before:left-0 before:rounded-radius before:top-1 before:w-0.75 bg-accent bg-background bg-black/50 bg-border bg-popover bg-primary bg-secondary bg-sidebar bg-transparent block border border-2 border-accent-foreground/30 border-b border-b-0 border-border border-input border-l-0 border-none border-primary border-r border-r-0 border-solid border-t border-t-0 bottom-2 bottom-center bottom-left bottom-right box-border contents cursor-ew-resize cursor-grab cursor-grabbing cursor-move cursor-not-allowed cursor-ns-resize cursor-pointer data-[active=true]:h-10 data-[active=true]:w-10 disabled:cursor-not-allowed disabled:opacity-50 duration-100 duration-150 duration-160 duration-200 duration-250 ease ease-[var(--animate-ease-in)] ease-[var(--animate-ease-menu)] ease-[var(--animate-ease-out)] ease-[var(--animate-ease-out-back),var(--animate-ease-out)] ease-in-out fixed flex flex-1 flex-col flex-row flex-shrink-0 flex-wrap focus-within:border-ring focus-within:ring-2 focus-within:ring-offset-0 focus-within:ring-offset-background focus-within:ring-ring font-600 font-default font-semibold gap-0 gap-1.5 gap-2 gap-2.5 gap-4 grid grid-rows-[1fr] h-0.5 h-10 h-2 h-4 h-4.5 h-5 h-6 h-8 h-9 h-full h-px h-screen hidden hover:bg-accent hover:bg-muted hover:bg-primary/90 hover:bg-secondary/80 hover:border-muted-foreground/20 hover:border-ring hover:color-foreground hover:text-foreground hover:text-muted-foreground i-lucide- i-lucide-check i-lucide-chevron-down i-lucide-chevron-right i-lucide-loader-2 i-lucide-maximize-2 i-lucide-minimize-2 i-lucide-x inline-flex inset-0 items-center justify-between justify-center justify-end leading-5 left-1/2 left-2 left-bottom left-center left-top max-h-60 max-w-80 min-h-0 min-w-0 min-w-35 ml-3 ml-auto mx-2 my-1 opacity-0 opacity-100 opacity-40 opacity-50 outline-none overflow-auto overflow-hidden overflow-y-auto p-0.5 p-1 p-4 pb-0.5 placeholder:text-muted-foreground pt-1.5 px-1 px-2.5 px-3 px-4 py-1 py-1.25 py-1.5 py-2 relative right-2 right-bottom right-center right-top rotate-180 rotate-45 rotate-90 rounded-full rounded-radius scale-0 scale-100 scale-94 scale-96 scroll-mt-0 scrollbar-thin scrollbar-thumb-scrollbar scrollbar-track-transparent select-none shadow-lg sr-only text-2.5 text-3 text-3.25 text-3.5 text-4 text-accent-foreground text-center text-foreground text-muted-foreground text-primary text-primary-foreground text-secondary-foreground text-sm text-xs top-1/2 top-2 top-center top-left top-right tracking-wide transition-[grid-template-rows] transition-[opacity,height,width] transition-[scale,opacity] transition-[transform,opacity] transition-all transition-colors transition-opacity transition-shadow transition-transform translate-y-0.25 truncate uppercase w-0.5 w-2 w-4 w-4.5 w-5 w-50 w-6 w-8 w-9 w-full w-screen whitespace-nowrap z-1 z-50 z-999".split(" ");
3
3
  //#endregion
4
4
  export { e as default };
package/dist/index.css CHANGED
@@ -1,2 +1,2 @@
1
- .st-input__inner[data-v-19943572]::-webkit-credentials-auto-fill-button{visibility:hidden;pointer-events:none;position:absolute;right:0}.st-input__inner[data-v-19943572]::-webkit-caps-lock-indicator{visibility:hidden}.st-input__inner[data-v-19943572]::-ms-reveal{display:none}
1
+ .st-input__inner[data-v-1ab95bcc]::-webkit-credentials-auto-fill-button{visibility:hidden;pointer-events:none;position:absolute;right:0}.st-input__inner[data-v-1ab95bcc]::-webkit-caps-lock-indicator{visibility:hidden}.st-input__inner[data-v-1ab95bcc]::-ms-reveal{display:none}
2
2
  /*$vite$:1*/
package/dist/index.d.ts CHANGED
@@ -417,7 +417,7 @@ declare const _default: {
417
417
  closeOnEsc: boolean;
418
418
  openDelay: number;
419
419
  closeDelay: number;
420
- triggerClass: string;
420
+ triggerClass: commonClass;
421
421
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
422
422
  P: {};
423
423
  B: {};
@@ -440,7 +440,7 @@ declare const _default: {
440
440
  closeOnEsc: boolean;
441
441
  openDelay: number;
442
442
  closeDelay: number;
443
- triggerClass: string;
443
+ triggerClass: commonClass;
444
444
  }>;
445
445
  __isFragment?: never;
446
446
  __isTeleport?: never;
@@ -463,7 +463,7 @@ declare const _default: {
463
463
  closeOnEsc: boolean;
464
464
  openDelay: number;
465
465
  closeDelay: number;
466
- triggerClass: string;
466
+ triggerClass: commonClass;
467
467
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
468
468
  $slots: {
469
469
  trigger?: (props: {}) => any;
@@ -552,11 +552,11 @@ declare const _default: {
552
552
  valueKey: string;
553
553
  placeholder: string;
554
554
  clearable: boolean;
555
- popoverStyle: string | Record<string, string>;
555
+ popoverStyle: commonStyle;
556
556
  multiple: boolean;
557
557
  filterable: boolean;
558
558
  group: boolean;
559
- popoverClass: string;
559
+ popoverClass: commonClass;
560
560
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
561
561
  P: {};
562
562
  B: {};
@@ -580,11 +580,11 @@ declare const _default: {
580
580
  valueKey: string;
581
581
  placeholder: string;
582
582
  clearable: boolean;
583
- popoverStyle: string | Record<string, string>;
583
+ popoverStyle: commonStyle;
584
584
  multiple: boolean;
585
585
  filterable: boolean;
586
586
  group: boolean;
587
- popoverClass: string;
587
+ popoverClass: commonClass;
588
588
  }>;
589
589
  __isFragment?: never;
590
590
  __isTeleport?: never;
@@ -612,11 +612,11 @@ declare const _default: {
612
612
  valueKey: string;
613
613
  placeholder: string;
614
614
  clearable: boolean;
615
- popoverStyle: string | Record<string, string>;
615
+ popoverStyle: commonStyle;
616
616
  multiple: boolean;
617
617
  filterable: boolean;
618
618
  group: boolean;
619
- popoverClass: string;
619
+ popoverClass: commonClass;
620
620
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
621
621
  $slots: {
622
622
  prefix?: (props: {}) => any;
@@ -642,7 +642,7 @@ declare const _default: {
642
642
  fullscreen: boolean;
643
643
  modal: boolean;
644
644
  closeOnClickModal: boolean;
645
- customClass: string;
645
+ customClass: commonClass;
646
646
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
647
647
  P: {};
648
648
  B: {};
@@ -665,7 +665,7 @@ declare const _default: {
665
665
  fullscreen: boolean;
666
666
  modal: boolean;
667
667
  closeOnClickModal: boolean;
668
- customClass: string;
668
+ customClass: commonClass;
669
669
  }>;
670
670
  __isFragment?: never;
671
671
  __isTeleport?: never;
@@ -687,7 +687,7 @@ declare const _default: {
687
687
  fullscreen: boolean;
688
688
  modal: boolean;
689
689
  closeOnClickModal: boolean;
690
- customClass: string;
690
+ customClass: commonClass;
691
691
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
692
692
  $slots: {
693
693
  title?: (props: {}) => any;
@@ -704,6 +704,7 @@ declare const _default: {
704
704
  list: import("./index.ts").MenuItem[];
705
705
  placement?: import("./index.ts").MenuPlacement;
706
706
  trigger?: import("./index.ts").MenuTrigger;
707
+ triggerClass?: commonClass;
707
708
  }> & Readonly<{
708
709
  onSelect?: (item: import("./index.ts").MenuItem) => any;
709
710
  }>, import("./index.ts").MenuExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -722,6 +723,7 @@ declare const _default: {
722
723
  list: import("./index.ts").MenuItem[];
723
724
  placement?: import("./index.ts").MenuPlacement;
724
725
  trigger?: import("./index.ts").MenuTrigger;
726
+ triggerClass?: commonClass;
725
727
  }> & Readonly<{
726
728
  onSelect?: (item: import("./index.ts").MenuItem) => any;
727
729
  }>, import("./index.ts").MenuExpose, {}, {}, {}, {
@@ -735,6 +737,7 @@ declare const _default: {
735
737
  list: import("./index.ts").MenuItem[];
736
738
  placement?: import("./index.ts").MenuPlacement;
737
739
  trigger?: import("./index.ts").MenuTrigger;
740
+ triggerClass?: commonClass;
738
741
  }> & Readonly<{
739
742
  onSelect?: (item: import("./index.ts").MenuItem) => any;
740
743
  }>, import("./index.ts").MenuExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
package/package.json CHANGED
@@ -1,95 +1,94 @@
1
1
  {
2
- "name": "straw-ui-vue",
3
- "version": "0.1.1",
4
- "description": "A Vue 3 directive library",
5
- "type": "module",
6
- "main": "./dist/index.cjs",
7
- "module": "./dist/index.js",
8
- "types": "./dist/index.d.ts",
9
- "author": {
10
- "name": "叶落ぃ无尘"
11
- },
12
- "exports": {
13
- ".": {
14
- "types": "./dist/index.d.ts",
15
- "import": "./dist/index.js",
16
- "require": "./dist/index.cjs"
17
- },
18
- "./global-components": {
19
- "types": "./dist/global-components.d.ts"
20
- },
21
- "./components/*": {
22
- "types": "./dist/components/*/index.d.ts",
23
- "import": "./dist/components/*.js",
24
- "require": "./dist/components/*.cjs"
25
- },
26
- "./dist/index.css": "./dist/index.css",
27
- "./dist/variables.css": "./dist/variables.css",
28
- "./unocss": {
29
- "types": "./dist/unocss-preset.d.ts",
30
- "import": "./dist/unocssPreset.js",
31
- "require": "./dist/unocssPreset.cjs"
32
- }
33
- },
34
- "files": [
35
- "dist",
36
- "README.md"
37
- ],
38
- "sideEffects": [
39
- "**/*.css",
40
- "**/*.less"
41
- ],
42
- "scripts": {
43
- "dev": "vite",
44
- "build": "vite build",
45
- "generate-safelist": "node scripts/generate-safelist.mjs",
46
- "copy-types": "node scripts/copy-types.mjs",
47
- "build:lib": "npm run generate-safelist && vite build && vue-tsc -p tsconfig.app.json --emitDeclarationOnly && npm run copy-types",
48
- "type-check": "vue-tsc -p tsconfig.app.json --noEmit",
49
- "preview": "vite preview",
50
- "format": "prettier --write --experimental-cli src/",
51
- "docs:dev": "vitepress dev docs",
52
- "docs:build": "vitepress build docs",
53
- "prepublishOnly": "npm run build:lib"
54
- },
55
- "keywords": [
56
- "vue3",
57
- "vue",
58
- "directives",
59
- "component-library"
60
- ],
61
- "license": "MIT",
62
- "repository": {
63
- "type": "git",
64
- "url": ""
65
- },
66
- "peerDependencies": {
67
- "clsx": "^2.1.0",
68
- "tailwind-merge": "^3.6.0",
69
- "vue": "^3.3.0"
70
- },
71
- "devDependencies": {
72
- "@iconify/json": "2.2.483",
73
- "@tsconfig/node24": "24.0.4",
74
- "@types/node": "25.9.2",
75
- "@vitejs/plugin-vue": "6.0.7",
76
- "@vitejs/plugin-vue-jsx": "5.1.5",
77
- "@vue/tsconfig": "0.9.1",
78
- "clsx": "2.1.1",
79
- "less": "4.6.4",
80
- "npm-run-all2": "9.0.1",
81
- "pinia": "3.0.4",
82
- "prettier": "3.8.3",
83
- "tailwind-merge": "3.6.0",
84
- "typescript": "6.0.3",
85
- "unocss": "66.7.0",
86
- "vite": "8.0.16",
87
- "vite-plugin-vue-devtools": "8.1.2",
88
- "vue": "3.5.35",
89
- "vue-router": "5.1.0",
90
- "vue-tsc": "3.3.3"
91
- },
92
- "engines": {
93
- "node": "^20.19.0 || >=22.12.0"
94
- }
95
- }
2
+ "name": "straw-ui-vue",
3
+ "version": "0.1.3",
4
+ "description": "A Vue 3 directive library",
5
+ "type": "module",
6
+ "main": "./dist/index.cjs",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "author": {
10
+ "name": "叶落ぃ无尘"
11
+ },
12
+ "exports": {
13
+ ".": {
14
+ "types": "./dist/index.d.ts",
15
+ "import": "./dist/index.js",
16
+ "require": "./dist/index.cjs"
17
+ },
18
+ "./global-components": {
19
+ "types": "./dist/global-components.d.ts"
20
+ },
21
+ "./components/*": {
22
+ "types": "./dist/components/*/index.d.ts",
23
+ "import": "./dist/components/*.js",
24
+ "require": "./dist/components/*.cjs"
25
+ },
26
+ "./dist/index.css": "./dist/index.css",
27
+ "./dist/variables.css": "./dist/variables.css",
28
+ "./unocss": {
29
+ "types": "./dist/unocss-preset.d.ts",
30
+ "import": "./dist/unocssPreset.js",
31
+ "require": "./dist/unocssPreset.cjs"
32
+ }
33
+ },
34
+ "files": [
35
+ "dist",
36
+ "README.md"
37
+ ],
38
+ "sideEffects": [
39
+ "**/*.css",
40
+ "**/*.less"
41
+ ],
42
+ "keywords": [
43
+ "vue3",
44
+ "vue",
45
+ "directives",
46
+ "component-library"
47
+ ],
48
+ "license": "MIT",
49
+ "repository": {
50
+ "type": "git",
51
+ "url": ""
52
+ },
53
+ "peerDependencies": {
54
+ "clsx": "^2.1.0",
55
+ "tailwind-merge": "^3.6.0",
56
+ "vue": "^3.3.0"
57
+ },
58
+ "devDependencies": {
59
+ "@iconify-json/lucide": "1.2.111",
60
+ "@tsconfig/node24": "24.0.4",
61
+ "@types/node": "25.9.2",
62
+ "@vitejs/plugin-vue": "6.0.7",
63
+ "@vitejs/plugin-vue-jsx": "5.1.5",
64
+ "@vue/tsconfig": "0.9.1",
65
+ "clsx": "2.1.1",
66
+ "less": "4.6.4",
67
+ "npm-run-all2": "9.0.1",
68
+ "pinia": "3.0.4",
69
+ "prettier": "3.8.3",
70
+ "tailwind-merge": "3.6.0",
71
+ "typescript": "6.0.3",
72
+ "unocss": "66.7.0",
73
+ "vite": "8.0.16",
74
+ "vite-plugin-vue-devtools": "8.1.2",
75
+ "vue": "3.5.35",
76
+ "vue-router": "5.1.0",
77
+ "vue-tsc": "3.3.3"
78
+ },
79
+ "engines": {
80
+ "node": "^20.19.0 || >=22.12.0"
81
+ },
82
+ "scripts": {
83
+ "dev": "vite",
84
+ "build": "vite build",
85
+ "generate-safelist": "node scripts/generate-safelist.mjs",
86
+ "copy-types": "node scripts/copy-types.mjs",
87
+ "build:lib": "npm run generate-safelist && vite build && vue-tsc -p tsconfig.app.json --emitDeclarationOnly && npm run copy-types",
88
+ "type-check": "vue-tsc -p tsconfig.app.json --noEmit",
89
+ "preview": "vite preview",
90
+ "format": "prettier --write --experimental-cli src/",
91
+ "docs:dev": "vitepress dev docs",
92
+ "docs:build": "vitepress build docs"
93
+ }
94
+ }