straw-ui-vue 0.1.0

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 (200) hide show
  1. package/README.md +42 -0
  2. package/dist/_virtual/_plugin-vue_export-helper.cjs +1 -0
  3. package/dist/_virtual/_plugin-vue_export-helper.js +8 -0
  4. package/dist/components/st-button/index.d.ts +162 -0
  5. package/dist/components/st-button/st-button.vue.cjs +1 -0
  6. package/dist/components/st-button/st-button.vue.d.ts +29 -0
  7. package/dist/components/st-button/st-button.vue.js +5 -0
  8. package/dist/components/st-button/st-button.vue_vue_type_script_setup_true_lang.cjs +1 -0
  9. package/dist/components/st-button/st-button.vue_vue_type_script_setup_true_lang.js +81 -0
  10. package/dist/components/st-button/types.d.ts +49 -0
  11. package/dist/components/st-button.cjs +1 -0
  12. package/dist/components/st-button.js +6 -0
  13. package/dist/components/st-checkbox/index.d.ts +153 -0
  14. package/dist/components/st-checkbox/st-checkbox.vue.cjs +1 -0
  15. package/dist/components/st-checkbox/st-checkbox.vue.d.ts +27 -0
  16. package/dist/components/st-checkbox/st-checkbox.vue.js +5 -0
  17. package/dist/components/st-checkbox/st-checkbox.vue_vue_type_script_setup_true_lang.cjs +1 -0
  18. package/dist/components/st-checkbox/st-checkbox.vue_vue_type_script_setup_true_lang.js +109 -0
  19. package/dist/components/st-checkbox/types.d.ts +20 -0
  20. package/dist/components/st-checkbox-group/index.d.ts +171 -0
  21. package/dist/components/st-checkbox-group/st-checkbox-group.vue.cjs +1 -0
  22. package/dist/components/st-checkbox-group/st-checkbox-group.vue.d.ts +29 -0
  23. package/dist/components/st-checkbox-group/st-checkbox-group.vue.js +5 -0
  24. package/dist/components/st-checkbox-group/st-checkbox-group.vue_vue_type_script_setup_true_lang.cjs +1 -0
  25. package/dist/components/st-checkbox-group/st-checkbox-group.vue_vue_type_script_setup_true_lang.js +63 -0
  26. package/dist/components/st-checkbox-group/types.d.ts +43 -0
  27. package/dist/components/st-checkbox-group.cjs +1 -0
  28. package/dist/components/st-checkbox-group.js +6 -0
  29. package/dist/components/st-checkbox.cjs +1 -0
  30. package/dist/components/st-checkbox.js +6 -0
  31. package/dist/components/st-dialog/index.d.ts +243 -0
  32. package/dist/components/st-dialog/st-dialog.vue.cjs +1 -0
  33. package/dist/components/st-dialog/st-dialog.vue.d.ts +41 -0
  34. package/dist/components/st-dialog/st-dialog.vue.js +5 -0
  35. package/dist/components/st-dialog/st-dialog.vue_vue_type_script_setup_true_lang.cjs +1 -0
  36. package/dist/components/st-dialog/st-dialog.vue_vue_type_script_setup_true_lang.js +175 -0
  37. package/dist/components/st-dialog/types.d.ts +29 -0
  38. package/dist/components/st-dialog.cjs +1 -0
  39. package/dist/components/st-dialog.js +6 -0
  40. package/dist/components/st-input/index.d.ts +315 -0
  41. package/dist/components/st-input/st-input.vue.cjs +1 -0
  42. package/dist/components/st-input/st-input.vue.d.ts +48 -0
  43. package/dist/components/st-input/st-input.vue.js +7 -0
  44. package/dist/components/st-input/st-input.vue_vue_type_script_setup_true_lang.cjs +1 -0
  45. package/dist/components/st-input/st-input.vue_vue_type_script_setup_true_lang.js +146 -0
  46. package/dist/components/st-input/types.d.ts +68 -0
  47. package/dist/components/st-input.cjs +1 -0
  48. package/dist/components/st-input.js +6 -0
  49. package/dist/components/st-menu/index.d.ts +217 -0
  50. package/dist/components/st-menu/st-menu-node.vue.cjs +1 -0
  51. package/dist/components/st-menu/st-menu-node.vue.d.ts +14 -0
  52. package/dist/components/st-menu/st-menu-node.vue.js +5 -0
  53. package/dist/components/st-menu/st-menu-node.vue_vue_type_script_setup_true_lang.cjs +1 -0
  54. package/dist/components/st-menu/st-menu-node.vue_vue_type_script_setup_true_lang.js +107 -0
  55. package/dist/components/st-menu/st-menu.vue.cjs +1 -0
  56. package/dist/components/st-menu/st-menu.vue.d.ts +26 -0
  57. package/dist/components/st-menu/st-menu.vue.js +5 -0
  58. package/dist/components/st-menu/st-menu.vue_vue_type_script_setup_true_lang.cjs +1 -0
  59. package/dist/components/st-menu/st-menu.vue_vue_type_script_setup_true_lang.js +86 -0
  60. package/dist/components/st-menu/types.d.ts +82 -0
  61. package/dist/components/st-menu.cjs +1 -0
  62. package/dist/components/st-menu.js +7 -0
  63. package/dist/components/st-popover/index.d.ts +243 -0
  64. package/dist/components/st-popover/st-popover.vue.cjs +1 -0
  65. package/dist/components/st-popover/st-popover.vue.d.ts +37 -0
  66. package/dist/components/st-popover/st-popover.vue.js +5 -0
  67. package/dist/components/st-popover/st-popover.vue_vue_type_script_setup_true_lang.cjs +1 -0
  68. package/dist/components/st-popover/st-popover.vue_vue_type_script_setup_true_lang.js +355 -0
  69. package/dist/components/st-popover/types.d.ts +103 -0
  70. package/dist/components/st-popover.cjs +1 -0
  71. package/dist/components/st-popover.js +6 -0
  72. package/dist/components/st-radio/index.d.ts +135 -0
  73. package/dist/components/st-radio/st-radio.vue.cjs +1 -0
  74. package/dist/components/st-radio/st-radio.vue.d.ts +28 -0
  75. package/dist/components/st-radio/st-radio.vue.js +5 -0
  76. package/dist/components/st-radio/st-radio.vue_vue_type_script_setup_true_lang.cjs +1 -0
  77. package/dist/components/st-radio/st-radio.vue_vue_type_script_setup_true_lang.js +88 -0
  78. package/dist/components/st-radio/types.d.ts +15 -0
  79. package/dist/components/st-radio-group/index.d.ts +180 -0
  80. package/dist/components/st-radio-group/st-radio-group.vue.cjs +1 -0
  81. package/dist/components/st-radio-group/st-radio-group.vue.d.ts +35 -0
  82. package/dist/components/st-radio-group/st-radio-group.vue.js +5 -0
  83. package/dist/components/st-radio-group/st-radio-group.vue_vue_type_script_setup_true_lang.cjs +1 -0
  84. package/dist/components/st-radio-group/st-radio-group.vue_vue_type_script_setup_true_lang.js +66 -0
  85. package/dist/components/st-radio-group/types.d.ts +43 -0
  86. package/dist/components/st-radio-group.cjs +1 -0
  87. package/dist/components/st-radio-group.js +6 -0
  88. package/dist/components/st-radio.cjs +1 -0
  89. package/dist/components/st-radio.js +6 -0
  90. package/dist/components/st-select/index.d.ts +306 -0
  91. package/dist/components/st-select/st-select.vue.cjs +1 -0
  92. package/dist/components/st-select/st-select.vue.d.ts +47 -0
  93. package/dist/components/st-select/st-select.vue.js +5 -0
  94. package/dist/components/st-select/st-select.vue_vue_type_script_setup_true_lang.cjs +1 -0
  95. package/dist/components/st-select/st-select.vue_vue_type_script_setup_true_lang.js +200 -0
  96. package/dist/components/st-select/types.d.ts +85 -0
  97. package/dist/components/st-select.cjs +1 -0
  98. package/dist/components/st-select.js +6 -0
  99. package/dist/components/st-sidebar/index.d.ts +63 -0
  100. package/dist/components/st-sidebar/st-sidebar.vue.cjs +1 -0
  101. package/dist/components/st-sidebar/st-sidebar.vue.d.ts +11 -0
  102. package/dist/components/st-sidebar/st-sidebar.vue.js +5 -0
  103. package/dist/components/st-sidebar/st-sidebar.vue_vue_type_script_setup_true_lang.cjs +1 -0
  104. package/dist/components/st-sidebar/st-sidebar.vue_vue_type_script_setup_true_lang.js +108 -0
  105. package/dist/components/st-sidebar/types.d.ts +56 -0
  106. package/dist/components/st-sidebar-item/index.d.ts +63 -0
  107. package/dist/components/st-sidebar-item/st-sidebar-item.vue.cjs +1 -0
  108. package/dist/components/st-sidebar-item/st-sidebar-item.vue.d.ts +11 -0
  109. package/dist/components/st-sidebar-item/st-sidebar-item.vue.js +5 -0
  110. package/dist/components/st-sidebar-item/st-sidebar-item.vue_vue_type_script_setup_true_lang.cjs +1 -0
  111. package/dist/components/st-sidebar-item/st-sidebar-item.vue_vue_type_script_setup_true_lang.js +38 -0
  112. package/dist/components/st-sidebar-item/types.d.ts +19 -0
  113. package/dist/components/st-sidebar-item.cjs +1 -0
  114. package/dist/components/st-sidebar-item.js +6 -0
  115. package/dist/components/st-sidebar.cjs +1 -0
  116. package/dist/components/st-sidebar.js +6 -0
  117. package/dist/components/st-splitter/index.d.ts +88 -0
  118. package/dist/components/st-splitter/st-splitter.vue.cjs +1 -0
  119. package/dist/components/st-splitter/st-splitter.vue.d.ts +16 -0
  120. package/dist/components/st-splitter/st-splitter.vue.js +5 -0
  121. package/dist/components/st-splitter/st-splitter.vue_vue_type_script_setup_true_lang.cjs +1 -0
  122. package/dist/components/st-splitter/st-splitter.vue_vue_type_script_setup_true_lang.js +29 -0
  123. package/dist/components/st-splitter/types.d.ts +192 -0
  124. package/dist/components/st-splitter/useSplitter.cjs +1 -0
  125. package/dist/components/st-splitter/useSplitter.d.ts +24 -0
  126. package/dist/components/st-splitter/useSplitter.js +129 -0
  127. package/dist/components/st-splitter-panel/index.d.ts +180 -0
  128. package/dist/components/st-splitter-panel/st-splitter-panel.vue.cjs +1 -0
  129. package/dist/components/st-splitter-panel/st-splitter-panel.vue.d.ts +33 -0
  130. package/dist/components/st-splitter-panel/st-splitter-panel.vue.js +5 -0
  131. package/dist/components/st-splitter-panel/st-splitter-panel.vue_vue_type_script_setup_true_lang.cjs +1 -0
  132. package/dist/components/st-splitter-panel/st-splitter-panel.vue_vue_type_script_setup_true_lang.js +164 -0
  133. package/dist/components/st-splitter-panel/types.d.ts +27 -0
  134. package/dist/components/st-splitter-panel.cjs +1 -0
  135. package/dist/components/st-splitter-panel.js +6 -0
  136. package/dist/components/st-splitter.cjs +1 -0
  137. package/dist/components/st-splitter.js +7 -0
  138. package/dist/components/st-toggle/index.d.ts +159 -0
  139. package/dist/components/st-toggle/st-toggle.vue.cjs +1 -0
  140. package/dist/components/st-toggle/st-toggle.vue.d.ts +25 -0
  141. package/dist/components/st-toggle/st-toggle.vue.js +5 -0
  142. package/dist/components/st-toggle/st-toggle.vue_vue_type_script_setup_true_lang.cjs +1 -0
  143. package/dist/components/st-toggle/st-toggle.vue_vue_type_script_setup_true_lang.js +62 -0
  144. package/dist/components/st-toggle/types.d.ts +38 -0
  145. package/dist/components/st-toggle.cjs +1 -0
  146. package/dist/components/st-toggle.js +6 -0
  147. package/dist/components/st-tooltip/index.d.ts +183 -0
  148. package/dist/components/st-tooltip/st-tooltip.vue.cjs +1 -0
  149. package/dist/components/st-tooltip/st-tooltip.vue.d.ts +29 -0
  150. package/dist/components/st-tooltip/st-tooltip.vue.js +5 -0
  151. package/dist/components/st-tooltip/st-tooltip.vue_vue_type_script_setup_true_lang.cjs +1 -0
  152. package/dist/components/st-tooltip/st-tooltip.vue_vue_type_script_setup_true_lang.js +71 -0
  153. package/dist/components/st-tooltip/types.d.ts +79 -0
  154. package/dist/components/st-tooltip.cjs +1 -0
  155. package/dist/components/st-tooltip.js +6 -0
  156. package/dist/components/st-tree/index.d.ts +114 -0
  157. package/dist/components/st-tree/st-tree-node.vue.cjs +1 -0
  158. package/dist/components/st-tree/st-tree-node.vue.d.ts +4 -0
  159. package/dist/components/st-tree/st-tree-node.vue.js +5 -0
  160. package/dist/components/st-tree/st-tree-node.vue_vue_type_script_setup_true_lang.cjs +1 -0
  161. package/dist/components/st-tree/st-tree-node.vue_vue_type_script_setup_true_lang.js +87 -0
  162. package/dist/components/st-tree/st-tree.vue.cjs +1 -0
  163. package/dist/components/st-tree/st-tree.vue.d.ts +50 -0
  164. package/dist/components/st-tree/st-tree.vue.js +5 -0
  165. package/dist/components/st-tree/st-tree.vue_vue_type_script_setup_true_lang.cjs +1 -0
  166. package/dist/components/st-tree/st-tree.vue_vue_type_script_setup_true_lang.js +59 -0
  167. package/dist/components/st-tree/types.d.ts +87 -0
  168. package/dist/components/st-tree.cjs +1 -0
  169. package/dist/components/st-tree.js +6 -0
  170. package/dist/components/types.d.ts +41 -0
  171. package/dist/index.cjs +1 -0
  172. package/dist/index.css +2 -0
  173. package/dist/index.d.ts +3005 -0
  174. package/dist/index.js +47 -0
  175. package/dist/utils/cn.cjs +1 -0
  176. package/dist/utils/cn.d.ts +11 -0
  177. package/dist/utils/cn.js +8 -0
  178. package/dist/utils/cva/index.cjs +1 -0
  179. package/dist/utils/cva/index.d.ts +9 -0
  180. package/dist/utils/cva/index.js +25 -0
  181. package/dist/utils/cva/types.d.ts +45 -0
  182. package/dist/utils/directive/index.cjs +1 -0
  183. package/dist/utils/directive/index.d.ts +4 -0
  184. package/dist/utils/directive/index.js +10 -0
  185. package/dist/utils/directive/intersection.cjs +1 -0
  186. package/dist/utils/directive/intersection.d.ts +6 -0
  187. package/dist/utils/directive/intersection.js +20 -0
  188. package/dist/utils/directive/interval.cjs +1 -0
  189. package/dist/utils/directive/interval.d.ts +6 -0
  190. package/dist/utils/directive/interval.js +14 -0
  191. package/dist/utils/directive/move.cjs +1 -0
  192. package/dist/utils/directive/move.d.ts +6 -0
  193. package/dist/utils/directive/move.js +42 -0
  194. package/dist/utils/directive/resize.cjs +1 -0
  195. package/dist/utils/directive/resize.d.ts +6 -0
  196. package/dist/utils/directive/resize.js +17 -0
  197. package/dist/utils/with-install.cjs +1 -0
  198. package/dist/utils/with-install.d.ts +4 -0
  199. package/dist/utils/with-install.js +10 -0
  200. package/package.json +87 -0
@@ -0,0 +1,87 @@
1
+ import { Fragment as e, Transition as t, computed as n, createBlock as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, createVNode as s, defineComponent as c, normalizeClass as l, normalizeStyle as u, openBlock as d, renderList as f, resolveComponent as p, toDisplayString as m, unref as h, useAttrs as g, withCtx as _, withModifiers as v } from "vue";
2
+ //#region src/components/st-tree/st-tree-node.vue?vue&type=script&setup=true&lang.ts
3
+ var y = { class: "flex-1 min-w-0 truncate" }, b = {
4
+ key: 0,
5
+ class: "grid grid-rows-[1fr]"
6
+ }, x = { class: "overflow-hidden" }, S = /*@__PURE__*/ c({
7
+ inheritAttrs: !1,
8
+ __name: "st-tree-node",
9
+ props: {
10
+ node: {},
11
+ level: {},
12
+ indent: {},
13
+ labelKey: {},
14
+ valueKey: {},
15
+ childrenKey: {},
16
+ selectedValue: {},
17
+ expandedKeys: {},
18
+ onSelect: { type: Function },
19
+ onToggle: { type: Function }
20
+ },
21
+ setup(c) {
22
+ let S = c, C = g();
23
+ function w(e) {
24
+ return e[S.valueKey];
25
+ }
26
+ let T = n(() => w(S.node)), E = n(() => S.node[S.labelKey]), D = n(() => S.node[S.childrenKey] || []), O = n(() => D.value.length === 0), k = n(() => D.value.length > 0), A = n(() => S.expandedKeys.includes(T.value)), j = n(() => S.selectedValue === T.value);
27
+ function M() {
28
+ S.onSelect(T.value);
29
+ }
30
+ function N() {
31
+ O.value || S.onToggle(T.value);
32
+ }
33
+ return (n, g) => {
34
+ let S = p("StTreeNode", !0);
35
+ return d(), a("div", { class: l(h(C).class) }, [o("div", {
36
+ class: l(["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", {
37
+ "hover:bg-accent": !j.value,
38
+ "bg-accent": j.value
39
+ }]),
40
+ style: u({ paddingLeft: `${c.level * c.indent + 12}px` }),
41
+ onClick: M
42
+ }, [o("span", {
43
+ class: l(["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", {
44
+ "rotate-90": A.value,
45
+ invisible: O.value,
46
+ "hover:bg-accent hover:color-foreground": !O.value
47
+ }]),
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, {
50
+ "enter-active-class": "transition-[grid-template-rows] duration-250 ease-[var(--animate-ease-menu)]",
51
+ "enter-from-class": "!grid-rows-[0fr]",
52
+ "enter-to-class": "grid-rows-[1fr]",
53
+ "leave-active-class": "transition-[grid-template-rows] duration-200 ease-[var(--animate-ease-menu)]",
54
+ "leave-from-class": "grid-rows-[1fr]",
55
+ "leave-to-class": "!grid-rows-[0fr]"
56
+ }, {
57
+ default: _(() => [k.value && A.value ? (d(), a("div", b, [o("div", x, [(d(!0), a(e, null, f(D.value, (e) => (d(), r(S, {
58
+ key: w(e),
59
+ "children-key": c.childrenKey,
60
+ "expanded-keys": c.expandedKeys,
61
+ indent: c.indent,
62
+ "label-key": c.labelKey,
63
+ level: c.level + 1,
64
+ node: e,
65
+ "on-select": c.onSelect,
66
+ "on-toggle": c.onToggle,
67
+ "selected-value": c.selectedValue,
68
+ "value-key": c.valueKey
69
+ }, null, 8, [
70
+ "children-key",
71
+ "expanded-keys",
72
+ "indent",
73
+ "label-key",
74
+ "level",
75
+ "node",
76
+ "on-select",
77
+ "on-toggle",
78
+ "selected-value",
79
+ "value-key"
80
+ ]))), 128))])])) : i("", !0)]),
81
+ _: 1
82
+ })], 2);
83
+ };
84
+ }
85
+ });
86
+ //#endregion
87
+ export { S as default };
@@ -0,0 +1 @@
1
+ var e=require("./st-tree.vue_vue_type_script_setup_true_lang.cjs").default;exports.default=e;
@@ -0,0 +1,50 @@
1
+ import type { TreeListItem } from './types.d.ts';
2
+ type __VLS_Props = {
3
+ /**
4
+ * 树数据列表
5
+ * */
6
+ list: TreeListItem[];
7
+ /**
8
+ * 显示文本的字段名
9
+ * */
10
+ labelKey?: string;
11
+ /**
12
+ * 值的字段名
13
+ * */
14
+ valueKey?: string;
15
+ /**
16
+ * 子节点的字段名
17
+ * */
18
+ childrenKey?: string;
19
+ /**
20
+ * 节点缩进距离
21
+ * */
22
+ indent?: number;
23
+ };
24
+ type __VLS_ModelProps = {
25
+ /**
26
+ * 选中值的双向绑定
27
+ * */
28
+ modelValue?: string | number | undefined;
29
+ /**
30
+ * 展开的节点值列表的双向绑定
31
+ * */
32
+ 'expandedKeys'?: (string | number)[];
33
+ };
34
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
35
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
36
+ select: (value: string | number) => any;
37
+ "update:modelValue": (value: string | number) => any;
38
+ "update:expandedKeys": (value: (string | number)[]) => any;
39
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
40
+ onSelect?: (value: string | number) => any;
41
+ "onUpdate:modelValue"?: (value: string | number) => any;
42
+ "onUpdate:expandedKeys"?: (value: (string | number)[]) => any;
43
+ }>, {
44
+ indent: number;
45
+ labelKey: string;
46
+ valueKey: string;
47
+ childrenKey: string;
48
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
49
+ declare const _default: typeof __VLS_export;
50
+ export default _default;
@@ -0,0 +1,5 @@
1
+ import e from "./st-tree.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/components/st-tree/st-tree.vue
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
@@ -0,0 +1 @@
1
+ const e=require("../../utils/cn.cjs"),t=require("./st-tree-node.vue.cjs");let n=require("vue");var r={class:`py-1`},i=(0,n.defineComponent)({inheritAttrs:!1,__name:`st-tree`,props:(0,n.mergeModels)({list:{},labelKey:{default:`label`},valueKey:{default:`value`},childrenKey:{default:`children`},indent:{default:20}},{modelValue:{},modelModifiers:{},expandedKeys:{default:()=>[]},expandedKeysModifiers:{}}),emits:(0,n.mergeModels)([`select`],[`update:modelValue`,`update:expandedKeys`]),setup(i,{emit:a}){let o=(0,n.useAttrs)(),s=i,c=(0,n.useModel)(i,`modelValue`),l=(0,n.useModel)(i,`expandedKeys`),u=a;function d(e){return e[s.valueKey]}function f(e){c.value=e,u(`select`,e)}function p(e){l.value.indexOf(e)>-1?l.value=l.value.filter(t=>t!==e):l.value=[...l.value,e]}return(a,s)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{class:(0,n.normalizeClass)((0,n.unref)(e.cn)(`text-3.5 text-foreground`,(0,n.unref)(o).class)),style:(0,n.normalizeStyle)((0,n.unref)(o).style)},[(0,n.createElementVNode)(`div`,r,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(i.list,e=>((0,n.openBlock)(),(0,n.createBlock)(t.default,{key:d(e),"children-key":i.childrenKey,"expanded-keys":l.value,indent:i.indent,"label-key":i.labelKey,level:0,node:e,"on-select":f,"on-toggle":p,"selected-value":c.value,"value-key":i.valueKey},null,8,[`children-key`,`expanded-keys`,`indent`,`label-key`,`node`,`selected-value`,`value-key`]))),128))])],6))}});exports.default=i;
@@ -0,0 +1,59 @@
1
+ import { cn as e } from "../../utils/cn.js";
2
+ import t from "./st-tree-node.vue.js";
3
+ import { Fragment as n, createBlock as r, createElementBlock as i, createElementVNode as a, defineComponent as o, mergeModels as s, normalizeClass as c, normalizeStyle as l, openBlock as u, renderList as d, unref as f, useAttrs as p, useModel as m } from "vue";
4
+ //#region src/components/st-tree/st-tree.vue?vue&type=script&setup=true&lang.ts
5
+ var h = { class: "py-1" }, g = /*@__PURE__*/ o({
6
+ inheritAttrs: !1,
7
+ __name: "st-tree",
8
+ props: /*@__PURE__*/ s({
9
+ list: {},
10
+ labelKey: { default: "label" },
11
+ valueKey: { default: "value" },
12
+ childrenKey: { default: "children" },
13
+ indent: { default: 20 }
14
+ }, {
15
+ modelValue: {},
16
+ modelModifiers: {},
17
+ expandedKeys: { default: () => [] },
18
+ expandedKeysModifiers: {}
19
+ }),
20
+ emits: /*@__PURE__*/ s(["select"], ["update:modelValue", "update:expandedKeys"]),
21
+ setup(o, { emit: s }) {
22
+ let g = p(), _ = o, v = m(o, "modelValue"), y = m(o, "expandedKeys"), b = s;
23
+ function x(e) {
24
+ return e[_.valueKey];
25
+ }
26
+ function S(e) {
27
+ v.value = e, b("select", e);
28
+ }
29
+ function C(e) {
30
+ y.value.indexOf(e) > -1 ? y.value = y.value.filter((t) => t !== e) : y.value = [...y.value, e];
31
+ }
32
+ return (s, p) => (u(), i("div", {
33
+ class: c(f(e)("text-3.5 text-foreground", f(g).class)),
34
+ style: l(f(g).style)
35
+ }, [a("div", h, [(u(!0), i(n, null, d(o.list, (e) => (u(), r(t, {
36
+ key: x(e),
37
+ "children-key": o.childrenKey,
38
+ "expanded-keys": y.value,
39
+ indent: o.indent,
40
+ "label-key": o.labelKey,
41
+ level: 0,
42
+ node: e,
43
+ "on-select": S,
44
+ "on-toggle": C,
45
+ "selected-value": v.value,
46
+ "value-key": o.valueKey
47
+ }, null, 8, [
48
+ "children-key",
49
+ "expanded-keys",
50
+ "indent",
51
+ "label-key",
52
+ "node",
53
+ "selected-value",
54
+ "value-key"
55
+ ]))), 128))])], 6));
56
+ }
57
+ });
58
+ //#endregion
59
+ export { g as default };
@@ -0,0 +1,87 @@
1
+ /**
2
+ * 树节点数据接口
3
+ * */
4
+ export interface TreeListItem {
5
+ /**
6
+ * 子节点列表
7
+ * */
8
+ children?: TreeListItem[];
9
+ /**
10
+ * 其他自定义属性
11
+ * */
12
+ [key: string]: unknown;
13
+ }
14
+
15
+ /**
16
+ * 树组件属性接口
17
+ * */
18
+ export interface StTreeProps {
19
+ /**
20
+ * 树数据列表
21
+ * */
22
+ list: TreeListItem[];
23
+ /**
24
+ * 显示文本的字段名
25
+ * */
26
+ labelKey?: string;
27
+ /**
28
+ * 值的字段名
29
+ * */
30
+ valueKey?: string;
31
+ /**
32
+ * 子节点的字段名
33
+ * */
34
+ childrenKey?: string;
35
+ /**
36
+ * 节点缩进距离
37
+ * */
38
+ indent?: number;
39
+ }
40
+
41
+ /**
42
+ * 树节点属性接口
43
+ * */
44
+ export interface StTreeNodeProps {
45
+ /**
46
+ * 节点数据
47
+ * */
48
+ node: TreeListItem;
49
+ /**
50
+ * 节点层级
51
+ * */
52
+ level: number;
53
+ /**
54
+ * 节点缩进距离
55
+ * */
56
+ indent?: number;
57
+ /**
58
+ * 显示文本的字段名
59
+ * */
60
+ labelKey: string;
61
+ /**
62
+ * 值的字段名
63
+ * */
64
+ valueKey: string;
65
+ /**
66
+ * 子节点的字段名
67
+ * */
68
+ childrenKey: string;
69
+ /**
70
+ * 当前选中的值
71
+ * */
72
+ selectedValue: string | number | undefined;
73
+ /**
74
+ * 展开的节点值列表
75
+ * */
76
+ expandedKeys: (string | number)[];
77
+ /**
78
+ * 处理节点选择
79
+ * */
80
+ onSelect: (value: string | number) => void;
81
+ /**
82
+ * 处理节点展开/收起
83
+ * */
84
+ onToggle: (value: string | number) => void;
85
+ }
86
+
87
+ export {};
@@ -0,0 +1 @@
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("../utils/with-install.cjs"),t=require("./st-tree/st-tree.vue.cjs");var n=e.withInstall(t.default);exports.StTree=n,exports.default=n;
@@ -0,0 +1,6 @@
1
+ import { withInstall as e } from "../utils/with-install.js";
2
+ import t from "./st-tree/st-tree.vue.js";
3
+ //#region src/components/st-tree/index.ts
4
+ var n = e(t);
5
+ //#endregion
6
+ export { n as StTree, n as default };
@@ -0,0 +1,41 @@
1
+ /**
2
+ * 组件尺寸类型
3
+ * 用于定义组件的尺寸变体
4
+ */
5
+ export type Size = 'small' | 'default' | 'large';
6
+
7
+ /**
8
+ * 按钮变体类型
9
+ * 用于定义按钮的颜色变体
10
+ */
11
+ export type ButtonVariant = 'primary' | 'default' | 'destructive';
12
+
13
+ /**
14
+ * 弹出层触发方式类型
15
+ * 用于定义弹出组件的触发方式
16
+ */
17
+ export type PopoverTrigger = 'click' | 'focus' | 'hover' | 'contextmenu';
18
+
19
+ /**
20
+ * 弹出层位置类型
21
+ * 用于定义弹出组件的显示位置
22
+ */
23
+ export type PopoverPlacement = 'top' | 'bottom' | 'left' | 'right';
24
+
25
+ /**
26
+ * 列表项基础类型
27
+ * 用于定义列表数据的通用结构
28
+ */
29
+ export interface ListItemBase {
30
+ [key: string]: unknown;
31
+ }
32
+
33
+ /**
34
+ * 分组列表项类型
35
+ * 用于定义带分组的列表数据结构
36
+ */
37
+ export interface GroupListItem extends ListItemBase {
38
+ group?: string;
39
+ }
40
+
41
+ export {};
package/dist/index.cjs ADDED
@@ -0,0 +1 @@
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./utils/directive/index.cjs"),t=require("./utils/cn.cjs"),n=require("./utils/cva/index.cjs"),r=require("./components/st-button.cjs"),i=require("./components/st-checkbox.cjs"),a=require("./components/st-checkbox-group.cjs"),o=require("./components/st-radio.cjs"),s=require("./components/st-radio-group.cjs"),c=require("./components/st-input.cjs"),l=require("./components/st-popover.cjs"),u=require("./components/st-tooltip.cjs"),d=require("./components/st-select.cjs"),f=require("./components/st-dialog.cjs"),p=require("./components/st-menu.cjs"),m=require("./components/st-sidebar.cjs"),h=require("./components/st-sidebar-item.cjs"),g=require("./components/st-splitter.cjs"),_=require("./components/st-splitter-panel.cjs"),v=require("./components/st-tree.cjs"),y=require("./components/st-toggle.cjs");var b={install(t){t.use(e.default),t.use(r.StButton),t.use(i.StCheckbox),t.use(a.StCheckboxGroup),t.use(o.StRadio),t.use(s.StRadioGroup),t.use(c.StInput),t.use(l.StPopover),t.use(u.StTooltip),t.use(d.StSelect),t.use(f.StDialog),t.use(p.StMenu),t.use(p.StMenuNode),t.use(m.StSidebar),t.use(h.StSidebarItem),t.use(g.StSplitter),t.use(_.StSplitterPanel),t.use(v.StTree),t.use(y.StToggle)},Directive:e.default,StButton:r.StButton,StCheckbox:i.StCheckbox,StCheckboxGroup:a.StCheckboxGroup,StRadio:o.StRadio,StRadioGroup:s.StRadioGroup,StInput:c.StInput,StPopover:l.StPopover,StTooltip:u.StTooltip,StSelect:d.StSelect,StDialog:f.StDialog,StMenu:p.StMenu,StMenuNode:p.StMenuNode,StSidebar:m.StSidebar,StSidebarItem:h.StSidebarItem,StSplitter:g.StSplitter,StSplitterPanel:_.StSplitterPanel,StTree:v.StTree,StToggle:y.StToggle};exports.Directive=e.default,exports.StButton=r.StButton,exports.StCheckbox=i.StCheckbox,exports.StCheckboxGroup=a.StCheckboxGroup,exports.StDialog=f.StDialog,exports.StInput=c.StInput,exports.StMenu=p.StMenu,exports.StMenuNode=p.StMenuNode,exports.StPopover=l.StPopover,exports.StRadio=o.StRadio,exports.StRadioGroup=s.StRadioGroup,exports.StSelect=d.StSelect,exports.StSidebar=m.StSidebar,exports.StSidebarItem=h.StSidebarItem,exports.StSplitter=g.StSplitter,exports.StSplitterPanel=_.StSplitterPanel,exports.StToggle=y.StToggle,exports.StTooltip=u.StTooltip,exports.StTree=v.StTree,exports.cn=t.cn,exports.cva=n.cva,exports.default=b;
package/dist/index.css ADDED
@@ -0,0 +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}
2
+ /*$vite$:1*/