@koi-design/uxd-ui 14.0.6 → 14.0.8

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 (276) hide show
  1. package/es/components/Card/Card.d.ts +9 -9
  2. package/es/components/Card/Card.mjs +19 -26
  3. package/es/components/Card/Card.mjs.map +1 -1
  4. package/es/components/Card/Card.type.d.ts +4 -4
  5. package/es/components/Card/Card.type.mjs +4 -4
  6. package/es/components/Card/Card.type.mjs.map +1 -1
  7. package/es/components/Card/index.d.ts +15 -15
  8. package/es/components/Cascader/Cascader.d.ts +3 -3
  9. package/es/components/Cascader/Cascader.mjs +2 -4
  10. package/es/components/Cascader/Cascader.mjs.map +1 -1
  11. package/es/components/Cascader/Cascader.type.d.ts +1 -1
  12. package/es/components/Cascader/Cascader.type.mjs +1 -1
  13. package/es/components/Cascader/Cascader.type.mjs.map +1 -1
  14. package/es/components/Cascader/CascaderMenu.mjs +4 -4
  15. package/es/components/Cascader/CascaderMenu.mjs.map +1 -1
  16. package/es/components/Cascader/index.d.ts +6 -6
  17. package/es/components/Checkbox/Checkbox.mjs +1 -0
  18. package/es/components/Checkbox/Checkbox.mjs.map +1 -1
  19. package/es/components/Checkbox/Checkbox.type.d.ts +1 -0
  20. package/es/components/Checkbox/Checkbox.type.mjs +2 -1
  21. package/es/components/Checkbox/Checkbox.type.mjs.map +1 -1
  22. package/es/components/Checkbox/Checkbox.vue.d.ts +2 -0
  23. package/es/components/Checkbox/CheckboxGroup.vue.d.ts +2 -0
  24. package/es/components/Checkbox/index.d.ts +7 -0
  25. package/es/components/DatePicker/DatePicker.mjs +2 -4
  26. package/es/components/DatePicker/DatePicker.mjs.map +1 -1
  27. package/es/components/DatePicker/Panel/DatePickerPanel.mjs +1 -0
  28. package/es/components/DatePicker/Panel/DatePickerPanel.mjs.map +1 -1
  29. package/es/components/Layout/Layout.type.d.ts +2 -7
  30. package/es/components/Layout/Layout.type.mjs +2 -7
  31. package/es/components/Layout/Layout.type.mjs.map +1 -1
  32. package/es/components/Layout/Sider.mjs +20 -16
  33. package/es/components/Layout/Sider.mjs.map +1 -1
  34. package/es/components/Layout/Sider.vue.d.ts +9 -17
  35. package/es/components/Layout/index.d.ts +9 -17
  36. package/es/components/Menu/Menu.d.ts +0 -11
  37. package/es/components/Menu/Menu.mjs +1 -3
  38. package/es/components/Menu/Menu.mjs.map +1 -1
  39. package/es/components/Menu/Menu.type.d.ts +0 -6
  40. package/es/components/Menu/Menu.type.mjs +0 -5
  41. package/es/components/Menu/Menu.type.mjs.map +1 -1
  42. package/es/components/Menu/SubMenu.mjs +1 -3
  43. package/es/components/Menu/SubMenu.mjs.map +1 -1
  44. package/es/components/Menu/SubMenu.vue.d.ts +0 -1
  45. package/es/components/Menu/index.d.ts +0 -19
  46. package/es/components/Progress/Circle.mjs +1 -3
  47. package/es/components/Progress/Circle.mjs.map +1 -1
  48. package/es/components/Progress/Progress.mjs +2 -3
  49. package/es/components/Progress/Progress.mjs.map +1 -1
  50. package/es/components/Progress/Progress.type.d.ts +1 -6
  51. package/es/components/Progress/Progress.type.mjs +0 -6
  52. package/es/components/Progress/Progress.type.mjs.map +1 -1
  53. package/es/components/Progress/Progress.vue.d.ts +0 -16
  54. package/es/components/Progress/index.d.ts +0 -33
  55. package/es/components/Select/RefSelect.vue.d.ts +7 -0
  56. package/es/components/Table/BaseTable.vue.d.ts +7 -19
  57. package/es/components/Table/BodyTable.vue.d.ts +7 -19
  58. package/es/components/Table/HeadTable.vue.d.ts +7 -19
  59. package/es/components/Table/Table.vue.d.ts +14 -38
  60. package/es/components/Table/TableBox.vue.d.ts +14 -38
  61. package/es/components/Table/tableUnits/FilterDropdown.vue.d.ts +7 -19
  62. package/es/components/Table/tableUnits/SelectionBox.vue.d.ts +7 -0
  63. package/es/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +7 -19
  64. package/es/components/Table/tableUnits/TableHeader.vue.d.ts +7 -19
  65. package/es/components/Table/tableUnits/TableHeaderRow.vue.d.ts +7 -19
  66. package/es/components/Transfer/Operation.mjs +6 -4
  67. package/es/components/Transfer/Operation.mjs.map +1 -1
  68. package/es/components/Transfer/Transfer.mjs +2 -4
  69. package/es/components/Transfer/Transfer.mjs.map +1 -1
  70. package/es/components/Transfer/Transfer.type.d.ts +0 -5
  71. package/es/components/Transfer/Transfer.type.mjs +1 -8
  72. package/es/components/Transfer/Transfer.type.mjs.map +1 -1
  73. package/es/components/Transfer/Transfer.vue.d.ts +42 -11
  74. package/es/components/Transfer/TransferList.mjs +14 -10
  75. package/es/components/Transfer/TransferList.mjs.map +1 -1
  76. package/es/components/Transfer/TransferList.vue.d.ts +14 -0
  77. package/es/components/Transfer/TransferListItem.vue.d.ts +7 -0
  78. package/es/components/Transfer/index.d.ts +112 -18
  79. package/es/components/Tree/SubTree.vue.d.ts +7 -0
  80. package/es/components/Tree/Tree.vue.d.ts +7 -0
  81. package/es/components/Tree/TreeNode.vue.d.ts +7 -0
  82. package/es/components/Tree/index.d.ts +14 -0
  83. package/es/components/TreeSelect/TreeSelect.vue.d.ts +14 -0
  84. package/es/components/TreeSelect/index.d.ts +28 -0
  85. package/es/components/Upload/UploadList.vue.d.ts +0 -33
  86. package/es/components/base/CollapseTransition.mjs +0 -16
  87. package/es/components/base/CollapseTransition.mjs.map +1 -1
  88. package/es/components/base/hooks/useGlobalConfig.d.ts +1 -0
  89. package/es/components/locale/default.d.ts +1 -0
  90. package/es/components/locale/default.mjs.map +1 -1
  91. package/lib/components/Card/Card.d.ts +9 -9
  92. package/lib/components/Card/Card.js +22 -29
  93. package/lib/components/Card/Card.js.map +1 -1
  94. package/lib/components/Card/Card.type.d.ts +4 -4
  95. package/lib/components/Card/Card.type.js +4 -4
  96. package/lib/components/Card/Card.type.js.map +1 -1
  97. package/lib/components/Card/index.d.ts +15 -15
  98. package/lib/components/Cascader/Cascader.d.ts +3 -3
  99. package/lib/components/Cascader/Cascader.js +2 -4
  100. package/lib/components/Cascader/Cascader.js.map +1 -1
  101. package/lib/components/Cascader/Cascader.type.d.ts +1 -1
  102. package/lib/components/Cascader/Cascader.type.js +1 -1
  103. package/lib/components/Cascader/Cascader.type.js.map +1 -1
  104. package/lib/components/Cascader/CascaderMenu.js +3 -3
  105. package/lib/components/Cascader/CascaderMenu.js.map +1 -1
  106. package/lib/components/Cascader/index.d.ts +6 -6
  107. package/lib/components/Checkbox/Checkbox.js +1 -0
  108. package/lib/components/Checkbox/Checkbox.js.map +1 -1
  109. package/lib/components/Checkbox/Checkbox.type.d.ts +1 -0
  110. package/lib/components/Checkbox/Checkbox.type.js +2 -1
  111. package/lib/components/Checkbox/Checkbox.type.js.map +1 -1
  112. package/lib/components/Checkbox/Checkbox.vue.d.ts +2 -0
  113. package/lib/components/Checkbox/CheckboxGroup.vue.d.ts +2 -0
  114. package/lib/components/Checkbox/index.d.ts +7 -0
  115. package/lib/components/DatePicker/DatePicker.js +2 -4
  116. package/lib/components/DatePicker/DatePicker.js.map +1 -1
  117. package/lib/components/DatePicker/Panel/DatePickerPanel.js +1 -0
  118. package/lib/components/DatePicker/Panel/DatePickerPanel.js.map +1 -1
  119. package/lib/components/Layout/Layout.type.d.ts +2 -7
  120. package/lib/components/Layout/Layout.type.js +2 -7
  121. package/lib/components/Layout/Layout.type.js.map +1 -1
  122. package/lib/components/Layout/Sider.js +19 -15
  123. package/lib/components/Layout/Sider.js.map +1 -1
  124. package/lib/components/Layout/Sider.vue.d.ts +9 -17
  125. package/lib/components/Layout/index.d.ts +9 -17
  126. package/lib/components/Menu/Menu.d.ts +0 -11
  127. package/lib/components/Menu/Menu.js +1 -3
  128. package/lib/components/Menu/Menu.js.map +1 -1
  129. package/lib/components/Menu/Menu.type.d.ts +0 -6
  130. package/lib/components/Menu/Menu.type.js +0 -5
  131. package/lib/components/Menu/Menu.type.js.map +1 -1
  132. package/lib/components/Menu/SubMenu.js +1 -3
  133. package/lib/components/Menu/SubMenu.js.map +1 -1
  134. package/lib/components/Menu/SubMenu.vue.d.ts +0 -1
  135. package/lib/components/Menu/index.d.ts +0 -19
  136. package/lib/components/Progress/Circle.js +1 -3
  137. package/lib/components/Progress/Circle.js.map +1 -1
  138. package/lib/components/Progress/Progress.js +2 -3
  139. package/lib/components/Progress/Progress.js.map +1 -1
  140. package/lib/components/Progress/Progress.type.d.ts +1 -6
  141. package/lib/components/Progress/Progress.type.js +0 -6
  142. package/lib/components/Progress/Progress.type.js.map +1 -1
  143. package/lib/components/Progress/Progress.vue.d.ts +0 -16
  144. package/lib/components/Progress/index.d.ts +0 -33
  145. package/lib/components/Select/RefSelect.vue.d.ts +7 -0
  146. package/lib/components/Table/BaseTable.vue.d.ts +7 -19
  147. package/lib/components/Table/BodyTable.vue.d.ts +7 -19
  148. package/lib/components/Table/HeadTable.vue.d.ts +7 -19
  149. package/lib/components/Table/Table.vue.d.ts +14 -38
  150. package/lib/components/Table/TableBox.vue.d.ts +14 -38
  151. package/lib/components/Table/tableUnits/FilterDropdown.vue.d.ts +7 -19
  152. package/lib/components/Table/tableUnits/SelectionBox.vue.d.ts +7 -0
  153. package/lib/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +7 -19
  154. package/lib/components/Table/tableUnits/TableHeader.vue.d.ts +7 -19
  155. package/lib/components/Table/tableUnits/TableHeaderRow.vue.d.ts +7 -19
  156. package/lib/components/Transfer/Operation.js +6 -4
  157. package/lib/components/Transfer/Operation.js.map +1 -1
  158. package/lib/components/Transfer/Transfer.js +2 -4
  159. package/lib/components/Transfer/Transfer.js.map +1 -1
  160. package/lib/components/Transfer/Transfer.type.d.ts +0 -5
  161. package/lib/components/Transfer/Transfer.type.js +0 -7
  162. package/lib/components/Transfer/Transfer.type.js.map +1 -1
  163. package/lib/components/Transfer/Transfer.vue.d.ts +42 -11
  164. package/lib/components/Transfer/TransferList.js +14 -10
  165. package/lib/components/Transfer/TransferList.js.map +1 -1
  166. package/lib/components/Transfer/TransferList.vue.d.ts +14 -0
  167. package/lib/components/Transfer/TransferListItem.vue.d.ts +7 -0
  168. package/lib/components/Transfer/index.d.ts +112 -18
  169. package/lib/components/Tree/SubTree.vue.d.ts +7 -0
  170. package/lib/components/Tree/Tree.vue.d.ts +7 -0
  171. package/lib/components/Tree/TreeNode.vue.d.ts +7 -0
  172. package/lib/components/Tree/index.d.ts +14 -0
  173. package/lib/components/TreeSelect/TreeSelect.vue.d.ts +14 -0
  174. package/lib/components/TreeSelect/index.d.ts +28 -0
  175. package/lib/components/Upload/UploadList.vue.d.ts +0 -33
  176. package/lib/components/base/CollapseTransition.js +0 -16
  177. package/lib/components/base/CollapseTransition.js.map +1 -1
  178. package/lib/components/base/hooks/useGlobalConfig.d.ts +1 -0
  179. package/lib/components/locale/default.d.ts +1 -0
  180. package/lib/components/locale/default.js.map +1 -1
  181. package/package.json +1 -1
  182. package/styles/components/alert/index.css +1 -1
  183. package/styles/components/autoComplete/index.css +1 -1
  184. package/styles/components/avatar/index.css +1 -1
  185. package/styles/components/breadcrumb/index.css +1 -1
  186. package/styles/components/breadcrumb/index.less +5 -6
  187. package/styles/components/breadcrumb/var.less +4 -6
  188. package/styles/components/button/index.css +1 -1
  189. package/styles/components/card/index.css +1 -1
  190. package/styles/components/card/index.less +64 -70
  191. package/styles/components/card/var.less +4 -13
  192. package/styles/components/carousel/index.css +1 -1
  193. package/styles/components/carousel/index.less +38 -35
  194. package/styles/components/carousel/var.less +6 -19
  195. package/styles/components/cascader/index.css +1 -1
  196. package/styles/components/cascader/index.less +20 -32
  197. package/styles/components/datePicker/index.css +1 -1
  198. package/styles/components/form/index.css +1 -1
  199. package/styles/components/icon/index.css +1 -1
  200. package/styles/components/input/index.css +1 -1
  201. package/styles/components/inputNumber/index.css +1 -1
  202. package/styles/components/layout/index.css +1 -1
  203. package/styles/components/layout/index.less +40 -55
  204. package/styles/components/layout/var.less +9 -41
  205. package/styles/components/link/index.css +1 -1
  206. package/styles/components/mentions/index.css +1 -1
  207. package/styles/components/menu/index.css +1 -1
  208. package/styles/components/menu/index.less +63 -207
  209. package/styles/components/menu/var.less +40 -69
  210. package/styles/components/modal/index.css +1 -1
  211. package/styles/components/progress/index.css +1 -1
  212. package/styles/components/progress/index.less +42 -56
  213. package/styles/components/progress/var.less +3 -4
  214. package/styles/components/select/index.css +1 -1
  215. package/styles/components/spin/index.css +1 -1
  216. package/styles/components/timePicker/index.css +1 -1
  217. package/styles/components/transfer/index.css +1 -1
  218. package/styles/components/transfer/index.less +38 -42
  219. package/styles/components/transfer/var.less +8 -42
  220. package/styles/components/tree/index.css +1 -1
  221. package/styles/components/tree/index.less +17 -27
  222. package/styles/components/tree/var.less +5 -16
  223. package/styles/cssVariable.css +1 -1
  224. package/styles/cssVariable.less +8 -8
  225. package/styles/index.css +1 -1
  226. package/styles/tokens/typography.css +1 -1
  227. package/types/components/Card/Card.d.ts +9 -9
  228. package/types/components/Card/Card.type.d.ts +4 -4
  229. package/types/components/Card/index.d.ts +15 -15
  230. package/types/components/Cascader/Cascader.d.ts +3 -3
  231. package/types/components/Cascader/Cascader.type.d.ts +1 -1
  232. package/types/components/Cascader/index.d.ts +6 -6
  233. package/types/components/Checkbox/Checkbox.type.d.ts +1 -0
  234. package/types/components/Checkbox/Checkbox.vue.d.ts +2 -0
  235. package/types/components/Checkbox/CheckboxGroup.vue.d.ts +2 -0
  236. package/types/components/Checkbox/index.d.ts +7 -0
  237. package/types/components/Layout/Layout.type.d.ts +2 -7
  238. package/types/components/Layout/Sider.vue.d.ts +9 -17
  239. package/types/components/Layout/index.d.ts +9 -17
  240. package/types/components/Menu/Menu.d.ts +0 -11
  241. package/types/components/Menu/Menu.type.d.ts +0 -6
  242. package/types/components/Menu/SubMenu.vue.d.ts +0 -1
  243. package/types/components/Menu/index.d.ts +0 -19
  244. package/types/components/Progress/Progress.type.d.ts +1 -6
  245. package/types/components/Progress/Progress.vue.d.ts +0 -16
  246. package/types/components/Progress/index.d.ts +0 -33
  247. package/types/components/Select/RefSelect.vue.d.ts +7 -0
  248. package/types/components/Table/BaseTable.vue.d.ts +7 -19
  249. package/types/components/Table/BodyTable.vue.d.ts +7 -19
  250. package/types/components/Table/HeadTable.vue.d.ts +7 -19
  251. package/types/components/Table/Table.vue.d.ts +14 -38
  252. package/types/components/Table/TableBox.vue.d.ts +14 -38
  253. package/types/components/Table/tableUnits/FilterDropdown.vue.d.ts +7 -19
  254. package/types/components/Table/tableUnits/SelectionBox.vue.d.ts +7 -0
  255. package/types/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +7 -19
  256. package/types/components/Table/tableUnits/TableHeader.vue.d.ts +7 -19
  257. package/types/components/Table/tableUnits/TableHeaderRow.vue.d.ts +7 -19
  258. package/types/components/Transfer/Transfer.type.d.ts +0 -5
  259. package/types/components/Transfer/Transfer.vue.d.ts +42 -11
  260. package/types/components/Transfer/TransferList.vue.d.ts +14 -0
  261. package/types/components/Transfer/TransferListItem.vue.d.ts +7 -0
  262. package/types/components/Transfer/index.d.ts +112 -18
  263. package/types/components/Tree/SubTree.vue.d.ts +7 -0
  264. package/types/components/Tree/Tree.vue.d.ts +7 -0
  265. package/types/components/Tree/TreeNode.vue.d.ts +7 -0
  266. package/types/components/Tree/index.d.ts +14 -0
  267. package/types/components/TreeSelect/TreeSelect.vue.d.ts +14 -0
  268. package/types/components/TreeSelect/index.d.ts +28 -0
  269. package/types/components/Upload/UploadList.vue.d.ts +0 -33
  270. package/types/components/base/hooks/useGlobalConfig.d.ts +1 -0
  271. package/types/components/locale/default.d.ts +1 -0
  272. package/uxd-ui.css +1 -1
  273. package/uxd-ui.esm.min.mjs +6 -6
  274. package/uxd-ui.esm.mjs +513 -555
  275. package/uxd-ui.umd.js +512 -554
  276. package/uxd-ui.umd.min.js +6 -6
@@ -56,7 +56,7 @@ export declare const ULayout: {
56
56
  type: BooleanConstructor;
57
57
  default: undefined;
58
58
  };
59
- reverseArrow: {
59
+ isRight: {
60
60
  type: BooleanConstructor;
61
61
  default: boolean;
62
62
  };
@@ -74,7 +74,7 @@ export declare const ULayout: {
74
74
  type: (StringConstructor | NumberConstructor)[];
75
75
  default: number;
76
76
  };
77
- collapseWidth: {
77
+ collapsedWidth: {
78
78
  type: (StringConstructor | NumberConstructor)[];
79
79
  default: number;
80
80
  };
@@ -82,11 +82,6 @@ export declare const ULayout: {
82
82
  type: import("vue").PropType<"xxl" | "xl" | "lg" | "md" | "sm" | "xs">;
83
83
  validator: (val: "xxl" | "xl" | "lg" | "md" | "sm" | "xs") => boolean;
84
84
  };
85
- theme: {
86
- type: import("vue").PropType<"light" | "dark">;
87
- default: string;
88
- validator: (val: "light" | "dark") => boolean;
89
- };
90
85
  background: {
91
86
  type: StringConstructor;
92
87
  };
@@ -112,7 +107,7 @@ export declare const ULayout: {
112
107
  type: BooleanConstructor;
113
108
  default: undefined;
114
109
  };
115
- reverseArrow: {
110
+ isRight: {
116
111
  type: BooleanConstructor;
117
112
  default: boolean;
118
113
  };
@@ -130,7 +125,7 @@ export declare const ULayout: {
130
125
  type: (StringConstructor | NumberConstructor)[];
131
126
  default: number;
132
127
  };
133
- collapseWidth: {
128
+ collapsedWidth: {
134
129
  type: (StringConstructor | NumberConstructor)[];
135
130
  default: number;
136
131
  };
@@ -138,11 +133,6 @@ export declare const ULayout: {
138
133
  type: import("vue").PropType<"xxl" | "xl" | "lg" | "md" | "sm" | "xs">;
139
134
  validator: (val: "xxl" | "xl" | "lg" | "md" | "sm" | "xs") => boolean;
140
135
  };
141
- theme: {
142
- type: import("vue").PropType<"light" | "dark">;
143
- default: string;
144
- validator: (val: "light" | "dark") => boolean;
145
- };
146
136
  background: {
147
137
  type: StringConstructor;
148
138
  };
@@ -154,11 +144,10 @@ export declare const ULayout: {
154
144
  width: string | number;
155
145
  collapsible: boolean;
156
146
  collapsed: boolean;
157
- reverseArrow: boolean;
147
+ isRight: boolean;
158
148
  hideTrigger: boolean;
159
149
  zeroTrigger: boolean;
160
- collapseWidth: string | number;
161
- theme: "light" | "dark";
150
+ collapsedWidth: string | number;
162
151
  }, {}, {
163
152
  UIcon: {
164
153
  new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
@@ -292,6 +281,9 @@ export declare const ULayout: {
292
281
  spin: boolean;
293
282
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin<any[]> & Record<string, any>;
294
283
  PanelLeft: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
284
+ PanelRight: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
285
+ ChevronLeft: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
286
+ ChevronRight: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
295
287
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
296
288
  Content: import("vue").DefineComponent<{}, {
297
289
  prefixCls: import("vue").ComputedRef<string>;
@@ -5,11 +5,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5
5
  default: string;
6
6
  validator: (val: "inline" | "horizontal" | "vertical" | "vertical-left" | "vertical-right") => boolean;
7
7
  };
8
- theme: {
9
- type: import("vue").PropType<"dark" | "light">;
10
- default: string;
11
- validator: (val: "dark" | "light") => boolean;
12
- };
13
8
  selectedKeys: {
14
9
  type: import("vue").PropType<(string | number)[]>;
15
10
  validator: (val: any[]) => boolean;
@@ -63,11 +58,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
63
58
  default: string;
64
59
  validator: (val: "inline" | "horizontal" | "vertical" | "vertical-left" | "vertical-right") => boolean;
65
60
  };
66
- theme: {
67
- type: import("vue").PropType<"dark" | "light">;
68
- default: string;
69
- validator: (val: "dark" | "light") => boolean;
70
- };
71
61
  selectedKeys: {
72
62
  type: import("vue").PropType<(string | number)[]>;
73
63
  validator: (val: any[]) => boolean;
@@ -112,7 +102,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
112
102
  }>, {
113
103
  multiple: boolean;
114
104
  mode: "inline" | "horizontal" | "vertical" | "vertical-left" | "vertical-right";
115
- theme: "dark" | "light";
116
105
  openKeys: (string | number)[];
117
106
  subMenuOpenDelay: number;
118
107
  subMenuCloseDelay: number;
@@ -31,7 +31,6 @@ var Menu = vue.defineComponent({
31
31
  } = useGlobalConfig["default"](inDrop ? "dropdown-menu" : "menu");
32
32
  const {
33
33
  mode,
34
- theme,
35
34
  subMenuOpenDelay,
36
35
  subMenuCloseDelay,
37
36
  inlineCollapsed
@@ -164,7 +163,6 @@ var Menu = vue.defineComponent({
164
163
  vue.provide("menuStore", {
165
164
  mode: computedMode,
166
165
  originalMode: mode,
167
- theme,
168
166
  selectedKeys,
169
167
  openKeys,
170
168
  subMenuOpenDelay,
@@ -195,7 +193,7 @@ var Menu = vue.defineComponent({
195
193
  return vue.createVNode("ul", {
196
194
  "ref": "rootMenu",
197
195
  "role": this.role || "menu",
198
- "class": [`${this.computedPrefixCls}`, `${this.computedPrefixCls}-${this.computedMode}`, `${this.computedPrefixCls}-root`, `${this.computedPrefixCls}-${this.theme}`, {
196
+ "class": [`${this.computedPrefixCls}`, `${this.computedPrefixCls}-${this.computedMode}`, `${this.computedPrefixCls}-root`, {
199
197
  [`${this.computedPrefixCls}-inline-collapsed`]: this.inlineCollapsed || !!this.layoutSiderCollapsed
200
198
  }]
201
199
  }, [this.renderChild()]);
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","sources":["../../../../src/components/Menu/Menu.tsx"],"sourcesContent":["import { defineComponent, provide, inject, ref, toRefs, watch, computed } from 'vue';\nimport warn from '../../utils/warn';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport Render from '../base/Render';\nimport useWrapDom from './hooks/useWrapDom';\nimport type { DropdownContext } from '../Dropdown/Dropdown.type';\nimport type { LayoutSiderContext } from '../Layout/Layout.type';\nimport { menuProps, menuEmits, type MenuItemClickEvent, type MenuClickEvent, type MenuOpenEvent } from './Menu.type';\n\nexport default defineComponent({\n name: 'UMenu',\n components: { Render },\n props: menuProps,\n emits: menuEmits,\n setup(props, { emit, slots }) {\n const dropdownContext = inject<DropdownContext | undefined>('dropdownContext', undefined);\n const layoutSiderContext = inject<LayoutSiderContext>('layoutSiderContext', {} as LayoutSiderContext);\n const inDrop = dropdownContext !== undefined;\n const { collapsed: layoutSiderCollapsed } = layoutSiderContext;\n const { prefixCls: statePrefixCls } = useGlobalConfig(inDrop ? 'dropdown-menu' : 'menu');\n const { mode, theme, subMenuOpenDelay, subMenuCloseDelay, inlineCollapsed } = toRefs(props);\n\n const computedPrefixCls = computed(() => props.prefixCls || statePrefixCls.value);\n if (props.mode !== 'inline' && props.inlineCollapsed !== undefined) {\n warn('inlineCollapsed only use in inline mode!');\n }\n const selectedKeys = ref(props.selectedKeys || []);\n const openKeys = ref(!props.inlineCollapsed && props.openKeys ? props.openKeys : []);\n const inlineOpenKeys = ref(props.inlineCollapsed ? props.openKeys : []);\n\n const rootMenu = ref<any | null>(null);\n let keypath: (string | number)[] = [];\n\n // const computedMode = computed(() => {\n // if (props.mode === 'inline') {\n // return props.inlineCollapsed || layoutSiderCollapsed?.value ? 'vertical' : props.mode;\n // }\n // return props.mode;\n // });\n const computedMode = ref(props.mode);\n const setInlineMode = () => {\n if (props.mode === 'inline') {\n computedMode.value = props.inlineCollapsed || layoutSiderCollapsed?.value ? 'vertical' : props.mode;\n }\n };\n setInlineMode();\n const collapsed = ref(false);\n // const handleTransitionEnd = (e: any) => {\n // if (e.target !== rootMenu.value || e.propertyName !== 'width') {\n // return;\n // }\n // if (props.mode === 'inline') {\n // if (props.inlineCollapsed || layoutSiderCollapsed?.value) {\n // computedMode.value = 'vertical';\n // inlineOpenKeys.value = openKeys.value;\n // openKeys.value = [];\n // collapsed.value = true;\n // } else {\n // computedMode.value = 'inline';\n // openKeys.value = inlineOpenKeys.value;\n // inlineOpenKeys.value = [];\n // collapsed.value = false;\n // }\n // }\n // };\n\n // #region methods\n const collapsedChange = (val: boolean) => {\n setTimeout(() => {\n setInlineMode();\n }, 300);\n\n if (val) {\n inlineOpenKeys.value = openKeys.value;\n openKeys.value = [];\n collapsed.value = true;\n } else {\n openKeys.value = inlineOpenKeys.value;\n inlineOpenKeys.value = [];\n collapsed.value = false;\n }\n };\n\n const updateKeyPath = (key: string | number, type: string) => {\n if (type === 'item') {\n keypath = [key];\n } else if (type === 'sub') {\n keypath.push(key);\n }\n };\n\n const fireMenuClick = (event: MenuItemClickEvent) => {\n const info: MenuClickEvent = {\n ...event,\n keypath\n };\n emit('click', info);\n if (dropdownContext && dropdownContext.fireItemClick && info.key) {\n dropdownContext.fireItemClick(info);\n }\n };\n\n const selectable = computed(() => {\n return !inDrop || !!props.selectable;\n });\n\n const fireMenuDeselect = (event: MenuItemClickEvent) => {\n if (selectable.value && props.multiple) {\n const _selectedKeys = selectedKeys.value.filter((x) => x !== event.key);\n\n emit('deselect', {\n key: event.key,\n item: event.item,\n selectedKeys: _selectedKeys\n });\n if (props.selectedKeys === undefined) {\n selectedKeys.value = _selectedKeys;\n }\n emit('update:selectedKeys', _selectedKeys);\n }\n };\n\n const fireMenuSelect = (event: MenuItemClickEvent) => {\n if (selectable.value) {\n let _selectedKeys = [] as (string | number)[];\n if (props.multiple) {\n _selectedKeys = [...selectedKeys.value, event.key];\n } else {\n _selectedKeys = [event.key];\n }\n emit('select', {\n key: event.key,\n item: event.item,\n selectedKeys: _selectedKeys\n });\n if (props.selectedKeys === undefined) {\n selectedKeys.value = _selectedKeys;\n }\n\n emit('update:selectedKeys', _selectedKeys);\n }\n };\n\n const fireMenuOpenChange = (event: MenuOpenEvent) => {\n const { open, key } = event;\n let _openKeys = openKeys.value;\n if (open) {\n _openKeys = [..._openKeys, key];\n } else {\n _openKeys = _openKeys.filter((x) => x !== key);\n }\n emit('open-change', _openKeys, event);\n openKeys.value = _openKeys;\n emit('update:openKeys', _openKeys);\n };\n // #endregion\n\n watch(\n () => props.selectedKeys,\n (val) => {\n selectedKeys.value = val || [];\n }\n );\n\n watch(\n () => props.openKeys,\n (val) => {\n openKeys.value = val;\n }\n );\n watch(\n () => props.inlineCollapsed,\n (val) => {\n if (val !== undefined) {\n collapsedChange(val);\n }\n }\n );\n\n if (layoutSiderContext && layoutSiderCollapsed) {\n watch(layoutSiderCollapsed, (val) => {\n collapsedChange(val);\n });\n }\n\n // #region provides\n // just children to use it\n provide('parentMenu', {\n isRootMenu: true,\n getPopupContainer: () => {\n if (dropdownContext) {\n return rootMenu.value?.parentNode;\n }\n return document.body;\n }\n });\n // rootMenu's props supply to descendants use\n provide('menuStore', {\n mode: computedMode,\n originalMode: mode,\n theme,\n selectedKeys,\n openKeys,\n subMenuOpenDelay,\n subMenuCloseDelay,\n rootPrefixCls: computedPrefixCls,\n updateKeyPath,\n // inlineIndent,\n inlineCollapsed,\n collapsed\n });\n // descendants trigger rootMenu's events\n provide('menuEvent', {\n fireMenuClick,\n fireMenuDeselect,\n fireMenuSelect,\n fireMenuOpenChange\n });\n // #endregion\n\n const { renderChild } = useWrapDom(props.mode, rootMenu, slots);\n\n return {\n rootMenu,\n computedPrefixCls,\n computedMode,\n layoutSiderCollapsed,\n renderChild\n };\n },\n render() {\n return (\n <ul\n ref=\"rootMenu\"\n role={this.role || 'menu'}\n class={[\n `${this.computedPrefixCls}`,\n `${this.computedPrefixCls}-${this.computedMode}`,\n `${this.computedPrefixCls}-root`,\n `${this.computedPrefixCls}-${this.theme}`,\n {\n [`${this.computedPrefixCls}-inline-collapsed`]: this.inlineCollapsed || !!this.layoutSiderCollapsed\n }\n ]}\n >\n {this.renderChild()}\n </ul>\n );\n }\n});\n"],"names":["defineComponent","name","components","Render","props","menuProps","emits","menuEmits","setup","emit","slots","dropdownContext","inject","undefined","layoutSiderContext","inDrop","collapsed","layoutSiderCollapsed","prefixCls","statePrefixCls","useGlobalConfig","mode","theme","subMenuOpenDelay","subMenuCloseDelay","inlineCollapsed","toRefs","computedPrefixCls","computed","value","warn","selectedKeys","ref","openKeys","inlineOpenKeys","rootMenu","keypath","computedMode","setInlineMode","collapsedChange","val","setTimeout","updateKeyPath","key","type","push","fireMenuClick","event","info","fireItemClick","selectable","fireMenuDeselect","multiple","_selectedKeys","filter","x","item","fireMenuSelect","fireMenuOpenChange","open","_openKeys","watch","provide","isRootMenu","getPopupContainer","parentNode","document","body","originalMode","rootPrefixCls","renderChild","useWrapDom","render","_createVNode","role"],"mappings":"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"}
1
+ {"version":3,"file":"Menu.js","sources":["../../../../src/components/Menu/Menu.tsx"],"sourcesContent":["import { defineComponent, provide, inject, ref, toRefs, watch, computed } from 'vue';\nimport warn from '../../utils/warn';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport Render from '../base/Render';\nimport useWrapDom from './hooks/useWrapDom';\nimport type { DropdownContext } from '../Dropdown/Dropdown.type';\nimport type { LayoutSiderContext } from '../Layout/Layout.type';\nimport { menuProps, menuEmits, type MenuItemClickEvent, type MenuClickEvent, type MenuOpenEvent } from './Menu.type';\n\nexport default defineComponent({\n name: 'UMenu',\n components: { Render },\n props: menuProps,\n emits: menuEmits,\n setup(props, { emit, slots }) {\n const dropdownContext = inject<DropdownContext | undefined>('dropdownContext', undefined);\n const layoutSiderContext = inject<LayoutSiderContext>('layoutSiderContext', {} as LayoutSiderContext);\n const inDrop = dropdownContext !== undefined;\n const { collapsed: layoutSiderCollapsed } = layoutSiderContext;\n const { prefixCls: statePrefixCls } = useGlobalConfig(inDrop ? 'dropdown-menu' : 'menu');\n const { mode, subMenuOpenDelay, subMenuCloseDelay, inlineCollapsed } = toRefs(props);\n\n const computedPrefixCls = computed(() => props.prefixCls || statePrefixCls.value);\n if (props.mode !== 'inline' && props.inlineCollapsed !== undefined) {\n warn('inlineCollapsed only use in inline mode!');\n }\n const selectedKeys = ref(props.selectedKeys || []);\n const openKeys = ref(!props.inlineCollapsed && props.openKeys ? props.openKeys : []);\n const inlineOpenKeys = ref(props.inlineCollapsed ? props.openKeys : []);\n\n const rootMenu = ref<any | null>(null);\n let keypath: (string | number)[] = [];\n\n // const computedMode = computed(() => {\n // if (props.mode === 'inline') {\n // return props.inlineCollapsed || layoutSiderCollapsed?.value ? 'vertical' : props.mode;\n // }\n // return props.mode;\n // });\n const computedMode = ref(props.mode);\n const setInlineMode = () => {\n if (props.mode === 'inline') {\n computedMode.value = props.inlineCollapsed || layoutSiderCollapsed?.value ? 'vertical' : props.mode;\n }\n };\n setInlineMode();\n const collapsed = ref(false);\n // const handleTransitionEnd = (e: any) => {\n // if (e.target !== rootMenu.value || e.propertyName !== 'width') {\n // return;\n // }\n // if (props.mode === 'inline') {\n // if (props.inlineCollapsed || layoutSiderCollapsed?.value) {\n // computedMode.value = 'vertical';\n // inlineOpenKeys.value = openKeys.value;\n // openKeys.value = [];\n // collapsed.value = true;\n // } else {\n // computedMode.value = 'inline';\n // openKeys.value = inlineOpenKeys.value;\n // inlineOpenKeys.value = [];\n // collapsed.value = false;\n // }\n // }\n // };\n\n // #region methods\n const collapsedChange = (val: boolean) => {\n setTimeout(() => {\n setInlineMode();\n }, 300);\n\n if (val) {\n inlineOpenKeys.value = openKeys.value;\n openKeys.value = [];\n collapsed.value = true;\n } else {\n openKeys.value = inlineOpenKeys.value;\n inlineOpenKeys.value = [];\n collapsed.value = false;\n }\n };\n\n const updateKeyPath = (key: string | number, type: string) => {\n if (type === 'item') {\n keypath = [key];\n } else if (type === 'sub') {\n keypath.push(key);\n }\n };\n\n const fireMenuClick = (event: MenuItemClickEvent) => {\n const info: MenuClickEvent = {\n ...event,\n keypath\n };\n emit('click', info);\n if (dropdownContext && dropdownContext.fireItemClick && info.key) {\n dropdownContext.fireItemClick(info);\n }\n };\n\n const selectable = computed(() => {\n return !inDrop || !!props.selectable;\n });\n\n const fireMenuDeselect = (event: MenuItemClickEvent) => {\n if (selectable.value && props.multiple) {\n const _selectedKeys = selectedKeys.value.filter((x) => x !== event.key);\n\n emit('deselect', {\n key: event.key,\n item: event.item,\n selectedKeys: _selectedKeys\n });\n if (props.selectedKeys === undefined) {\n selectedKeys.value = _selectedKeys;\n }\n emit('update:selectedKeys', _selectedKeys);\n }\n };\n\n const fireMenuSelect = (event: MenuItemClickEvent) => {\n if (selectable.value) {\n let _selectedKeys = [] as (string | number)[];\n if (props.multiple) {\n _selectedKeys = [...selectedKeys.value, event.key];\n } else {\n _selectedKeys = [event.key];\n }\n emit('select', {\n key: event.key,\n item: event.item,\n selectedKeys: _selectedKeys\n });\n if (props.selectedKeys === undefined) {\n selectedKeys.value = _selectedKeys;\n }\n\n emit('update:selectedKeys', _selectedKeys);\n }\n };\n\n const fireMenuOpenChange = (event: MenuOpenEvent) => {\n const { open, key } = event;\n let _openKeys = openKeys.value;\n if (open) {\n _openKeys = [..._openKeys, key];\n } else {\n _openKeys = _openKeys.filter((x) => x !== key);\n }\n emit('open-change', _openKeys, event);\n openKeys.value = _openKeys;\n emit('update:openKeys', _openKeys);\n };\n // #endregion\n\n watch(\n () => props.selectedKeys,\n (val) => {\n selectedKeys.value = val || [];\n }\n );\n\n watch(\n () => props.openKeys,\n (val) => {\n openKeys.value = val;\n }\n );\n watch(\n () => props.inlineCollapsed,\n (val) => {\n if (val !== undefined) {\n collapsedChange(val);\n }\n }\n );\n\n if (layoutSiderContext && layoutSiderCollapsed) {\n watch(layoutSiderCollapsed, (val) => {\n collapsedChange(val);\n });\n }\n\n // #region provides\n // just children to use it\n provide('parentMenu', {\n isRootMenu: true,\n getPopupContainer: () => {\n if (dropdownContext) {\n return rootMenu.value?.parentNode;\n }\n return document.body;\n }\n });\n // rootMenu's props supply to descendants use\n provide('menuStore', {\n mode: computedMode,\n originalMode: mode,\n selectedKeys,\n openKeys,\n subMenuOpenDelay,\n subMenuCloseDelay,\n rootPrefixCls: computedPrefixCls,\n updateKeyPath,\n // inlineIndent,\n inlineCollapsed,\n collapsed\n });\n // descendants trigger rootMenu's events\n provide('menuEvent', {\n fireMenuClick,\n fireMenuDeselect,\n fireMenuSelect,\n fireMenuOpenChange\n });\n // #endregion\n\n const { renderChild } = useWrapDom(props.mode, rootMenu, slots);\n\n return {\n rootMenu,\n computedPrefixCls,\n computedMode,\n layoutSiderCollapsed,\n renderChild\n };\n },\n render() {\n return (\n <ul\n ref=\"rootMenu\"\n role={this.role || 'menu'}\n class={[\n `${this.computedPrefixCls}`,\n `${this.computedPrefixCls}-${this.computedMode}`,\n `${this.computedPrefixCls}-root`,\n {\n [`${this.computedPrefixCls}-inline-collapsed`]: this.inlineCollapsed || !!this.layoutSiderCollapsed\n }\n ]}\n >\n {this.renderChild()}\n </ul>\n );\n }\n});\n"],"names":["defineComponent","name","components","Render","props","menuProps","emits","menuEmits","setup","emit","slots","dropdownContext","inject","undefined","layoutSiderContext","inDrop","collapsed","layoutSiderCollapsed","prefixCls","statePrefixCls","useGlobalConfig","mode","subMenuOpenDelay","subMenuCloseDelay","inlineCollapsed","toRefs","computedPrefixCls","computed","value","warn","selectedKeys","ref","openKeys","inlineOpenKeys","rootMenu","keypath","computedMode","setInlineMode","collapsedChange","val","setTimeout","updateKeyPath","key","type","push","fireMenuClick","event","info","fireItemClick","selectable","fireMenuDeselect","multiple","_selectedKeys","filter","x","item","fireMenuSelect","fireMenuOpenChange","open","_openKeys","watch","provide","isRootMenu","getPopupContainer","parentNode","document","body","originalMode","rootPrefixCls","renderChild","useWrapDom","render","_createVNode","role"],"mappings":"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"}
@@ -15,11 +15,6 @@ export declare const menuProps: {
15
15
  default: string;
16
16
  validator: (val: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right") => boolean;
17
17
  };
18
- theme: {
19
- type: PropType<"light" | "dark">;
20
- default: string;
21
- validator: (val: "light" | "dark") => boolean;
22
- };
23
18
  selectedKeys: {
24
19
  type: PropType<(string | number)[]>;
25
20
  validator: (val: any[]) => boolean;
@@ -67,7 +62,6 @@ export interface ParentMenu {
67
62
  export interface MenuStore {
68
63
  mode: ComputedRef<MenuMode>;
69
64
  originalMode: Ref<MenuMode>;
70
- theme: Ref<MenuTheme>;
71
65
  selectedKeys: Ref<(string | number)[]>;
72
66
  openKeys: Ref<(string | number)[]>;
73
67
  subMenuOpenDelay: Ref<number>;
@@ -14,11 +14,6 @@ const menuProps = {
14
14
  default: "vertical",
15
15
  validator: propsValidators.oneOf(menuMode)
16
16
  },
17
- theme: {
18
- type: String,
19
- default: "light",
20
- validator: propsValidators.oneOf(menuTheme)
21
- },
22
17
  selectedKeys: {
23
18
  type: Array,
24
19
  validator: propsValidators.isArrayOf([Number, String])
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.type.js","sources":["../../../../src/components/Menu/Menu.type.ts"],"sourcesContent":["import type { Ref, ComputedRef, PropType, ExtractPropTypes } from 'vue';\nimport type { GetPopupContainer, PopupTrigger } from '@uxd-ui/components/Popup/Popup.type';\nimport { isArrayOf, oneOf } from '../../utils/propsValidators';\n\nimport type Menu from './Menu';\n\nimport type MenuItem from './MenuItem.vue';\n\nimport type SubMenu from './SubMenu.vue';\n\nimport type MenuItemGroup from './MenuItemGroup.vue';\n\nimport type MenuDivider from './MenuDivider.vue';\nimport type { ColorType } from '../../utils';\nimport { colorType } from '../../utils';\n\nexport const menuMode = ['horizontal', 'vertical', 'vertical-left', 'vertical-right', 'inline'] as const;\nexport type MenuMode = (typeof menuMode)[number];\nexport const menuTheme = ['light', 'dark'] as const;\nexport type MenuTheme = (typeof menuTheme)[number];\n\nexport const menuProps = {\n mode: {\n type: String as PropType<MenuMode>,\n default: 'vertical',\n validator: oneOf(menuMode)\n },\n theme: {\n type: String as PropType<MenuTheme>,\n default: 'light',\n validator: oneOf(menuTheme)\n },\n selectedKeys: {\n type: Array as PropType<(string | number)[]>,\n validator: isArrayOf([Number, String])\n },\n multiple: {\n type: Boolean,\n default: false\n },\n openKeys: {\n type: Array as PropType<(string | number)[]>,\n default: () => [] as string[]\n },\n subMenuOpenDelay: {\n type: Number,\n default: 0.1\n },\n subMenuCloseDelay: {\n type: Number,\n default: 0.1\n },\n inlineCollapsed: {\n type: Boolean,\n default: undefined as undefined\n },\n // inlineIndent: {\n // type: Number,\n // default: 24\n // },\n prefixCls: {\n type: String\n },\n role: {\n type: String\n },\n selectable: {\n type: Boolean,\n default: undefined as undefined\n }\n};\nexport type MenuProps = ExtractPropTypes<typeof menuProps>;\n\nexport interface ParentMenu {\n isRootMenu: boolean;\n getPopupContainer: GetPopupContainer;\n level?: number;\n setSubMenuSelected?: (key: string | number, value: boolean) => void;\n fireSubmenuClick?: () => void;\n subMode?: ComputedRef<MenuMode>;\n}\n\nexport interface MenuStore {\n mode: ComputedRef<MenuMode>;\n originalMode: Ref<MenuMode>;\n theme: Ref<MenuTheme>;\n selectedKeys: Ref<(string | number)[]>;\n openKeys: Ref<(string | number)[]>;\n subMenuOpenDelay: Ref<number>;\n subMenuCloseDelay: Ref<number>;\n rootPrefixCls: ComputedRef<string>;\n updateKeyPath: (key: string | number, type: string) => void;\n inlineIndent: Ref<number>;\n inlineCollapsed: Ref<boolean>;\n collapsed: Ref<boolean>;\n}\n\nexport interface MenuItemClickEvent {\n key: string | number;\n item: any;\n}\n\nexport type MenuClickEvent = MenuItemClickEvent & {\n keypath: (string | number)[];\n};\n\nexport interface MenuOpenEvent {\n key: string | number;\n trigger: PopupTrigger & 'Click';\n item: any;\n open: boolean;\n}\n\nexport interface MenuSelectEvent {\n key: string | number;\n item: any;\n selectedKeys: (string | number)[];\n}\n\nexport interface MenuEvent {\n fireMenuClick: (event: MenuItemClickEvent) => void;\n fireMenuDeselect: (event: MenuItemClickEvent) => void;\n fireMenuSelect: (event: MenuItemClickEvent) => void;\n fireMenuOpenChange: (event: MenuOpenEvent) => void;\n}\n\nexport const menuEmits = {\n click: (e: MenuClickEvent) => e.keypath && e.key !== undefined,\n select: (e: MenuSelectEvent) => (typeof e.key === 'string' || typeof e.key === 'number') && Array.isArray(e.selectedKeys),\n deselect: (e: MenuSelectEvent) => (typeof e.key === 'string' || typeof e.key === 'number') && Array.isArray(e.selectedKeys),\n 'update:selectedKeys': (selectedKeys: (string | number)[]) => Array.isArray(selectedKeys),\n 'open-change': (openKeys: (string | number)[], event: MenuOpenEvent) => Array.isArray(openKeys) && event.trigger && typeof event.open === 'boolean',\n 'update:openKeys': (openKeys: (string | number)[]) => Array.isArray(openKeys)\n};\n\nexport type MenuInstanceType = InstanceType<typeof Menu>;\n\nexport const menuItemProps = {\n name: {\n type: [String, Number]\n },\n disabled: {\n type: Boolean,\n default: undefined as undefined\n },\n title: {\n type: String\n },\n color: {\n type: String as PropType<ColorType | undefined>,\n default: undefined as undefined | ColorType,\n validator: oneOf(colorType)\n }\n};\n\nexport type MenuItemProps = ExtractPropTypes<typeof menuItemProps>;\n\nexport const menuItemEmits = {\n click: (e: MenuItemClickEvent) => typeof e.key === 'string' || typeof e.key === 'number'\n};\n\nexport type MenuItemEmits = typeof menuItemEmits;\n\nexport type MenuItemInstanceType = InstanceType<typeof MenuItem>;\n\nexport const subMenuProps = {\n name: {\n type: [String, Number]\n },\n title: {\n type: String\n },\n disabled: {\n type: Boolean,\n default: undefined as undefined\n },\n popupClassName: {\n type: String\n },\n color: {\n type: String as PropType<ColorType | undefined>,\n default: undefined as undefined | ColorType,\n validator: oneOf(colorType)\n }\n};\n\nexport type SubMenuProps = ExtractPropTypes<typeof subMenuProps>;\n\nexport const subMenuEmits = {\n 'title-click': (e: { key: string | number }) => typeof e.key === 'string' || typeof e.key === 'number'\n};\n\nexport type SubMenuEmits = typeof subMenuEmits;\n\nexport type SubMenuInstanceType = InstanceType<typeof SubMenu>;\n\nexport const menuItemGroupProps = {\n title: {\n type: String\n }\n};\n\nexport type MenuItemGroupProps = ExtractPropTypes<typeof menuItemGroupProps>;\n\nexport type MenuItemGroupInstanceType = InstanceType<typeof MenuItemGroup>;\n\nexport type MenuDividerInstanceType = InstanceType<typeof MenuDivider>;\n"],"names":["oneOf","isArrayOf","colorType"],"mappings":";;;;;;;;MAgBa,WAAW,CAAC,cAAc,YAAY,iBAAiB,kBAAkB,QAAQ;MAEjF,YAAY,CAAC,SAAS,MAAM;MAG5B,YAAY;AAAA,EACvB,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAM,QAAQ;AAAA;AAC3B,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAM,SAAS;AAAA;AAC5B,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,WAAWC,0BAAU,CAAC,QAAQ,MAAM,CAAC;AAAA;AACvC,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS,MAAM;AAAC;AAClB,EACA,kBAAkB;AAAA,IAChB,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,mBAAmB;AAAA,IACjB,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EAKA,WAAW;AAAA,IACT,MAAM;AAAA;AACR,EACA,MAAM;AAAA,IACJ,MAAM;AAAA;AACR,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA;AAEb;MAwDa,YAAY;AAAA,EACvB,OAAO,CAAC,MAAsB,EAAE,WAAW,EAAE,QAAQ;AAAA,EACrD,QAAQ,CAAC,OAAwB,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ,aAAa,MAAM,QAAQ,EAAE,YAAY;AAAA,EACxH,UAAU,CAAC,OAAwB,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ,aAAa,MAAM,QAAQ,EAAE,YAAY;AAAA,EAC1H,uBAAuB,CAAC,iBAAsC,MAAM,QAAQ,YAAY;AAAA,EACxF,eAAe,CAAC,UAA+B,UAAyB,MAAM,QAAQ,QAAQ,KAAK,MAAM,WAAW,OAAO,MAAM,SAAS;AAAA,EAC1I,mBAAmB,CAAC,aAAkC,MAAM,QAAQ,QAAQ;AAC9E;MAIa,gBAAgB;AAAA,EAC3B,MAAM;AAAA,IACJ,MAAM,CAAC,QAAQ,MAAM;AAAA;AACvB,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,OAAO;AAAA,IACL,MAAM;AAAA;AACR,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWD,sBAAME,oBAAS;AAAA;AAE9B;MAIa,gBAAgB;AAAA,EAC3B,OAAO,CAAC,MAA0B,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ;AAClF;MAMa,eAAe;AAAA,EAC1B,MAAM;AAAA,IACJ,MAAM,CAAC,QAAQ,MAAM;AAAA;AACvB,EACA,OAAO;AAAA,IACL,MAAM;AAAA;AACR,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA;AACR,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWF,sBAAME,oBAAS;AAAA;AAE9B;MAIa,eAAe;AAAA,EAC1B,eAAe,CAAC,MAAgC,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ;AAChG;MAMa,qBAAqB;AAAA,EAChC,OAAO;AAAA,IACL,MAAM;AAAA;AAEV;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Menu.type.js","sources":["../../../../src/components/Menu/Menu.type.ts"],"sourcesContent":["import type { Ref, ComputedRef, PropType, ExtractPropTypes } from 'vue';\nimport type { GetPopupContainer, PopupTrigger } from '@uxd-ui/components/Popup/Popup.type';\nimport { isArrayOf, oneOf } from '../../utils/propsValidators';\n\nimport type Menu from './Menu';\n\nimport type MenuItem from './MenuItem.vue';\n\nimport type SubMenu from './SubMenu.vue';\n\nimport type MenuItemGroup from './MenuItemGroup.vue';\n\nimport type MenuDivider from './MenuDivider.vue';\nimport type { ColorType } from '../../utils';\nimport { colorType } from '../../utils';\n\nexport const menuMode = ['horizontal', 'vertical', 'vertical-left', 'vertical-right', 'inline'] as const;\nexport type MenuMode = (typeof menuMode)[number];\nexport const menuTheme = ['light', 'dark'] as const;\nexport type MenuTheme = (typeof menuTheme)[number];\n\nexport const menuProps = {\n mode: {\n type: String as PropType<MenuMode>,\n default: 'vertical',\n validator: oneOf(menuMode)\n },\n selectedKeys: {\n type: Array as PropType<(string | number)[]>,\n validator: isArrayOf([Number, String])\n },\n multiple: {\n type: Boolean,\n default: false\n },\n openKeys: {\n type: Array as PropType<(string | number)[]>,\n default: () => [] as string[]\n },\n subMenuOpenDelay: {\n type: Number,\n default: 0.1\n },\n subMenuCloseDelay: {\n type: Number,\n default: 0.1\n },\n inlineCollapsed: {\n type: Boolean,\n default: undefined as undefined\n },\n // inlineIndent: {\n // type: Number,\n // default: 24\n // },\n prefixCls: {\n type: String\n },\n role: {\n type: String\n },\n selectable: {\n type: Boolean,\n default: undefined as undefined\n }\n};\nexport type MenuProps = ExtractPropTypes<typeof menuProps>;\n\nexport interface ParentMenu {\n isRootMenu: boolean;\n getPopupContainer: GetPopupContainer;\n level?: number;\n setSubMenuSelected?: (key: string | number, value: boolean) => void;\n fireSubmenuClick?: () => void;\n subMode?: ComputedRef<MenuMode>;\n}\n\nexport interface MenuStore {\n mode: ComputedRef<MenuMode>;\n originalMode: Ref<MenuMode>;\n selectedKeys: Ref<(string | number)[]>;\n openKeys: Ref<(string | number)[]>;\n subMenuOpenDelay: Ref<number>;\n subMenuCloseDelay: Ref<number>;\n rootPrefixCls: ComputedRef<string>;\n updateKeyPath: (key: string | number, type: string) => void;\n inlineIndent: Ref<number>;\n inlineCollapsed: Ref<boolean>;\n collapsed: Ref<boolean>;\n}\n\nexport interface MenuItemClickEvent {\n key: string | number;\n item: any;\n}\n\nexport type MenuClickEvent = MenuItemClickEvent & {\n keypath: (string | number)[];\n};\n\nexport interface MenuOpenEvent {\n key: string | number;\n trigger: PopupTrigger & 'Click';\n item: any;\n open: boolean;\n}\n\nexport interface MenuSelectEvent {\n key: string | number;\n item: any;\n selectedKeys: (string | number)[];\n}\n\nexport interface MenuEvent {\n fireMenuClick: (event: MenuItemClickEvent) => void;\n fireMenuDeselect: (event: MenuItemClickEvent) => void;\n fireMenuSelect: (event: MenuItemClickEvent) => void;\n fireMenuOpenChange: (event: MenuOpenEvent) => void;\n}\n\nexport const menuEmits = {\n click: (e: MenuClickEvent) => e.keypath && e.key !== undefined,\n select: (e: MenuSelectEvent) => (typeof e.key === 'string' || typeof e.key === 'number') && Array.isArray(e.selectedKeys),\n deselect: (e: MenuSelectEvent) => (typeof e.key === 'string' || typeof e.key === 'number') && Array.isArray(e.selectedKeys),\n 'update:selectedKeys': (selectedKeys: (string | number)[]) => Array.isArray(selectedKeys),\n 'open-change': (openKeys: (string | number)[], event: MenuOpenEvent) => Array.isArray(openKeys) && event.trigger && typeof event.open === 'boolean',\n 'update:openKeys': (openKeys: (string | number)[]) => Array.isArray(openKeys)\n};\n\nexport type MenuInstanceType = InstanceType<typeof Menu>;\n\nexport const menuItemProps = {\n name: {\n type: [String, Number]\n },\n disabled: {\n type: Boolean,\n default: undefined as undefined\n },\n title: {\n type: String\n },\n color: {\n type: String as PropType<ColorType | undefined>,\n default: undefined as undefined | ColorType,\n validator: oneOf(colorType)\n }\n};\n\nexport type MenuItemProps = ExtractPropTypes<typeof menuItemProps>;\n\nexport const menuItemEmits = {\n click: (e: MenuItemClickEvent) => typeof e.key === 'string' || typeof e.key === 'number'\n};\n\nexport type MenuItemEmits = typeof menuItemEmits;\n\nexport type MenuItemInstanceType = InstanceType<typeof MenuItem>;\n\nexport const subMenuProps = {\n name: {\n type: [String, Number]\n },\n title: {\n type: String\n },\n disabled: {\n type: Boolean,\n default: undefined as undefined\n },\n popupClassName: {\n type: String\n },\n color: {\n type: String as PropType<ColorType | undefined>,\n default: undefined as undefined | ColorType,\n validator: oneOf(colorType)\n }\n};\n\nexport type SubMenuProps = ExtractPropTypes<typeof subMenuProps>;\n\nexport const subMenuEmits = {\n 'title-click': (e: { key: string | number }) => typeof e.key === 'string' || typeof e.key === 'number'\n};\n\nexport type SubMenuEmits = typeof subMenuEmits;\n\nexport type SubMenuInstanceType = InstanceType<typeof SubMenu>;\n\nexport const menuItemGroupProps = {\n title: {\n type: String\n }\n};\n\nexport type MenuItemGroupProps = ExtractPropTypes<typeof menuItemGroupProps>;\n\nexport type MenuItemGroupInstanceType = InstanceType<typeof MenuItemGroup>;\n\nexport type MenuDividerInstanceType = InstanceType<typeof MenuDivider>;\n"],"names":["oneOf","isArrayOf","colorType"],"mappings":";;;;;;;;MAgBa,WAAW,CAAC,cAAc,YAAY,iBAAiB,kBAAkB,QAAQ;MAEjF,YAAY,CAAC,SAAS,MAAM;MAG5B,YAAY;AAAA,EACvB,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAM,QAAQ;AAAA;AAC3B,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,WAAWC,0BAAU,CAAC,QAAQ,MAAM,CAAC;AAAA;AACvC,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS,MAAM;AAAC;AAClB,EACA,kBAAkB;AAAA,IAChB,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,mBAAmB;AAAA,IACjB,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EAKA,WAAW;AAAA,IACT,MAAM;AAAA;AACR,EACA,MAAM;AAAA,IACJ,MAAM;AAAA;AACR,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA;AAEb;MAuDa,YAAY;AAAA,EACvB,OAAO,CAAC,MAAsB,EAAE,WAAW,EAAE,QAAQ;AAAA,EACrD,QAAQ,CAAC,OAAwB,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ,aAAa,MAAM,QAAQ,EAAE,YAAY;AAAA,EACxH,UAAU,CAAC,OAAwB,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ,aAAa,MAAM,QAAQ,EAAE,YAAY;AAAA,EAC1H,uBAAuB,CAAC,iBAAsC,MAAM,QAAQ,YAAY;AAAA,EACxF,eAAe,CAAC,UAA+B,UAAyB,MAAM,QAAQ,QAAQ,KAAK,MAAM,WAAW,OAAO,MAAM,SAAS;AAAA,EAC1I,mBAAmB,CAAC,aAAkC,MAAM,QAAQ,QAAQ;AAC9E;MAIa,gBAAgB;AAAA,EAC3B,MAAM;AAAA,IACJ,MAAM,CAAC,QAAQ,MAAM;AAAA;AACvB,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,OAAO;AAAA,IACL,MAAM;AAAA;AACR,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWD,sBAAME,oBAAS;AAAA;AAE9B;MAIa,gBAAgB;AAAA,EAC3B,OAAO,CAAC,MAA0B,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ;AAClF;MAMa,eAAe;AAAA,EAC1B,MAAM;AAAA,IACJ,MAAM,CAAC,QAAQ,MAAM;AAAA;AACvB,EACA,OAAO;AAAA,IACL,MAAM;AAAA;AACR,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA;AACR,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWF,sBAAME,oBAAS;AAAA;AAE9B;MAIa,eAAe;AAAA,EAC1B,eAAe,CAAC,MAAgC,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ;AAChG;MAMa,qBAAqB;AAAA,EAChC,OAAO;AAAA,IACL,MAAM;AAAA;AAEV;;;;;;;;;;;;"}
@@ -31,7 +31,6 @@ const _sfc_main = vue.defineComponent({
31
31
  const {
32
32
  openKeys,
33
33
  mode: menuMode,
34
- theme,
35
34
  subMenuOpenDelay,
36
35
  subMenuCloseDelay,
37
36
  rootPrefixCls,
@@ -132,7 +131,6 @@ const _sfc_main = vue.defineComponent({
132
131
  titleStyle,
133
132
  mode,
134
133
  subMode,
135
- theme,
136
134
  isOpen,
137
135
  isSelected,
138
136
  menuId,
@@ -211,7 +209,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
211
209
  key: 1,
212
210
  "aria-owns": _ctx.menuId,
213
211
  "aria-haspopup": "true",
214
- "popup-class": `${_ctx.prefixCls}-popup ${_ctx.rootPrefixCls}-${_ctx.theme} ${_ctx.popupClassName || ""}`,
212
+ "popup-class": `${_ctx.prefixCls}-popup ${_ctx.popupClassName || ""}`,
215
213
  prefix: _ctx.prefixCls,
216
214
  placement: _ctx.popupPlacement,
217
215
  offset: _ctx.popupOffset,
@@ -1 +1 @@
1
- {"version":3,"file":"SubMenu.js","sources":["../../../../src/components/Menu/SubMenu.vue"],"sourcesContent":["<template>\n <li\n role=\"menuitem\"\n :class=\"[\n prefixCls,\n `${prefixCls}-${mode}`,\n {\n [`${prefixCls}-open`]: isOpen,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-selected`]: isSelected\n }\n ]\"\n >\n <template v-if=\"mode === 'inline'\">\n <div :class=\"[`${prefixCls}-title`]\" :style=\"titleStyle\" :aria-expanded=\"isOpen\" :aria-owns=\"menuId\" aria-haspopup=\"true\" @click=\"onTitleClick\">\n <slot name=\"title\">\n {{ title }}\n </slot>\n <UIcon :class=\"`${prefixCls}-arrow`\">\n <ChevronDown />\n </UIcon>\n </div>\n <!-- <transition name=\"slide-up\"> -->\n <CollapseTransition appear>\n <ul\n v-show=\"isOpen\"\n :id=\"menuId\"\n class=\"collapse-transition\"\n :class=\"[rootPrefixCls, `${rootPrefixCls}-${mode}`, `${rootPrefixCls}-sub`]\"\n :style=\"subMenuStyle\"\n >\n <slot />\n </ul>\n </CollapseTransition>\n <!-- </transition> -->\n </template>\n <template v-else>\n <Popup\n :aria-owns=\"menuId\"\n aria-haspopup=\"true\"\n :popup-class=\"`${prefixCls}-popup ${rootPrefixCls}-${theme} ${popupClassName || ''}`\"\n :prefix=\"prefixCls\"\n :placement=\"popupPlacement\"\n :offset=\"popupOffset\"\n :trigger=\"disabled ? [] : trigger\"\n :mouse-enter-delay=\"subMenuOpenDelay\"\n :mouse-leave-delay=\"subMenuCloseDelay\"\n :transition-name=\"mode === 'horizontal' ? 'slide-up' : 'zoom-big'\"\n :get-popup-container=\"getPopupContainer\"\n @popup-visible-change=\"onPopupVisibleChange\"\n @click=\"onTitleClick\"\n >\n <div\n :class=\"{\n [`${prefixCls}-title`]: true,\n [`${prefixCls}-title-disabled`]: disabled\n }\"\n :data-color=\"color\"\n :aria-owns=\"menuId\"\n aria-haspopup=\"true\"\n >\n <slot name=\"title\">\n {{ title }}\n </slot>\n <UIcon :class=\"`${prefixCls}-arrow`\">\n <ChevronRight />\n </UIcon>\n </div>\n\n <template #popup>\n <ul :id=\"menuId\" :class=\"[rootPrefixCls, `${rootPrefixCls}-${subMode}`, `${rootPrefixCls}-sub`]\">\n <slot />\n </ul>\n </template>\n </Popup>\n </template>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, provide, inject, computed, reactive } from 'vue';\nimport Popup from '@uxd-ui/components/Popup';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { ChevronDown, ChevronRight } from 'lucide-vue-next';\nimport warn from '../../utils/warn';\nimport useGetTriggerProps from './hooks/useGetTriggerProps';\nimport { isFunction } from '../../utils/isValid';\nimport CollapseTransition from '../base/CollapseTransition';\nimport { subMenuProps, subMenuEmits, type MenuEvent, type MenuStore, type MenuOpenEvent, type ParentMenu } from './Menu.type';\nimport type { GetPopupContainer } from '../Popup/Popup.type';\n\nlet guid = -1;\n\nexport default defineComponent({\n name: 'USubMenu',\n components: {\n Popup,\n UIcon,\n ChevronDown,\n ChevronRight,\n CollapseTransition\n },\n props: subMenuProps,\n emits: subMenuEmits,\n setup(props, { emit }) {\n const parentMenu = inject<ParentMenu>('parentMenu', {} as ParentMenu);\n const {\n openKeys,\n mode: menuMode,\n theme,\n subMenuOpenDelay,\n subMenuCloseDelay,\n rootPrefixCls,\n updateKeyPath\n // inlineIndent\n } = inject<MenuStore>('menuStore', {} as MenuStore);\n const childrenSelected: Record<string, boolean> = reactive({});\n\n if (menuMode === undefined) {\n warn('cannot find menu parent Component ,OR! the menu mode is error');\n }\n const { fireMenuOpenChange } = inject<MenuEvent>('menuEvent', {} as MenuEvent);\n const prefixCls = computed(() => `${rootPrefixCls.value}-submenu`);\n guid += 1;\n const menuId = computed(() => (props.name ? `${props.name}$Menu` : `${guid}$Menu`));\n\n const level = parentMenu.isRootMenu ? 1 : (parentMenu.level || 0) + 1;\n\n // #region computed\n const mode = computed(() => {\n return (parentMenu.subMode || menuMode).value;\n });\n const subMode = computed(() => {\n if (parentMenu.subMode) {\n // fix useGetTriggerProps\n return parentMenu.subMode.value;\n }\n return mode.value === 'horizontal' ? 'vertical' : mode.value;\n });\n\n const subMenuStyle = computed(() => {\n return `--menu-level: ${level};`;\n });\n\n const eventKey = computed(() => {\n if (props.name) {\n return props.name;\n }\n return menuId.value;\n });\n\n const isOpen = computed(() => {\n return openKeys.value.includes(eventKey.value);\n });\n\n const isClickOpen = computed(() => {\n return mode.value === 'inline';\n });\n const titleStyle = computed(() => {\n if (mode.value === 'inline') {\n return {\n // paddingLeft: `${inlineIndent.value * level}px`\n };\n }\n return {};\n });\n const isSelected = computed(() => {\n const selected = Object.keys(childrenSelected).some((key) => childrenSelected[key]);\n if (parentMenu.setSubMenuSelected) {\n parentMenu.setSubMenuSelected(eventKey.value, selected);\n }\n return selected;\n });\n // #endregion\n const { popupPlacement, popupOffset, trigger } = useGetTriggerProps(mode);\n\n // #region methods\n const setSubMenuSelected = (key: string | number, value: boolean) => {\n childrenSelected[`${key}`] = value;\n };\n\n const getPopupContainer: GetPopupContainer = parentMenu.isRootMenu\n ? () => parentMenu.getPopupContainer()\n : (node?: HTMLElement) => {\n return (node?.parentNode as HTMLElement) || undefined;\n };\n\n const triggerOpenChange = (open: boolean, type: string) => {\n const _event = {\n key: eventKey.value,\n trigger: type,\n item: {},\n open\n } as MenuOpenEvent;\n fireMenuOpenChange && isFunction(fireMenuOpenChange) && fireMenuOpenChange(_event);\n };\n\n const onTitleClick = () => {\n const _event = {\n key: eventKey.value\n };\n emit('title-click', _event);\n if (isClickOpen.value) {\n triggerOpenChange(!isOpen.value, 'click');\n }\n };\n\n const onPopupVisibleChange = (visible: boolean) => {\n triggerOpenChange(visible, trigger.value[0]);\n };\n\n const fireSubmenuClick = () => {\n const key = eventKey.value;\n updateKeyPath && isFunction(updateKeyPath) && updateKeyPath(key, 'sub');\n if (parentMenu.fireSubmenuClick && isFunction(parentMenu.fireSubmenuClick)) {\n parentMenu.fireSubmenuClick();\n }\n };\n // #endregion\n\n provide('parentMenu', {\n isRootMenu: false,\n isSubMenu: true,\n fireSubmenuClick,\n setSubMenuSelected,\n level,\n subMode\n });\n\n return {\n prefixCls,\n rootPrefixCls,\n titleStyle,\n mode,\n subMode,\n theme,\n isOpen,\n isSelected,\n menuId,\n popupPlacement,\n popupOffset,\n trigger,\n subMenuOpenDelay,\n subMenuCloseDelay,\n subMenuStyle,\n getPopupContainer,\n onTitleClick,\n onPopupVisibleChange\n };\n }\n});\n</script>\n"],"names":["defineComponent","Popup","UIcon","ChevronDown","ChevronRight","CollapseTransition","subMenuProps","subMenuEmits","inject","reactive","computed","useGetTriggerProps","isFunction","_createElementBlock","_normalizeClass","_Fragment","_createElementVNode","_normalizeStyle","_renderSlot","_createVNode","_createCommentVNode","_createBlock","_withCtx"],"mappings":"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"}
1
+ {"version":3,"file":"SubMenu.js","sources":["../../../../src/components/Menu/SubMenu.vue"],"sourcesContent":["<template>\n <li\n role=\"menuitem\"\n :class=\"[\n prefixCls,\n `${prefixCls}-${mode}`,\n {\n [`${prefixCls}-open`]: isOpen,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-selected`]: isSelected\n }\n ]\"\n >\n <template v-if=\"mode === 'inline'\">\n <div :class=\"[`${prefixCls}-title`]\" :style=\"titleStyle\" :aria-expanded=\"isOpen\" :aria-owns=\"menuId\" aria-haspopup=\"true\" @click=\"onTitleClick\">\n <slot name=\"title\">\n {{ title }}\n </slot>\n <UIcon :class=\"`${prefixCls}-arrow`\">\n <ChevronDown />\n </UIcon>\n </div>\n <!-- <transition name=\"slide-up\"> -->\n <CollapseTransition appear>\n <ul\n v-show=\"isOpen\"\n :id=\"menuId\"\n class=\"collapse-transition\"\n :class=\"[rootPrefixCls, `${rootPrefixCls}-${mode}`, `${rootPrefixCls}-sub`]\"\n :style=\"subMenuStyle\"\n >\n <slot />\n </ul>\n </CollapseTransition>\n <!-- </transition> -->\n </template>\n <template v-else>\n <Popup\n :aria-owns=\"menuId\"\n aria-haspopup=\"true\"\n :popup-class=\"`${prefixCls}-popup ${popupClassName || ''}`\"\n :prefix=\"prefixCls\"\n :placement=\"popupPlacement\"\n :offset=\"popupOffset\"\n :trigger=\"disabled ? [] : trigger\"\n :mouse-enter-delay=\"subMenuOpenDelay\"\n :mouse-leave-delay=\"subMenuCloseDelay\"\n :transition-name=\"mode === 'horizontal' ? 'slide-up' : 'zoom-big'\"\n :get-popup-container=\"getPopupContainer\"\n @popup-visible-change=\"onPopupVisibleChange\"\n @click=\"onTitleClick\"\n >\n <div\n :class=\"{\n [`${prefixCls}-title`]: true,\n [`${prefixCls}-title-disabled`]: disabled\n }\"\n :data-color=\"color\"\n :aria-owns=\"menuId\"\n aria-haspopup=\"true\"\n >\n <slot name=\"title\">\n {{ title }}\n </slot>\n <UIcon :class=\"`${prefixCls}-arrow`\">\n <ChevronRight />\n </UIcon>\n </div>\n\n <template #popup>\n <ul :id=\"menuId\" :class=\"[rootPrefixCls, `${rootPrefixCls}-${subMode}`, `${rootPrefixCls}-sub`]\">\n <slot />\n </ul>\n </template>\n </Popup>\n </template>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, provide, inject, computed, reactive } from 'vue';\nimport Popup from '@uxd-ui/components/Popup';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { ChevronDown, ChevronRight } from 'lucide-vue-next';\nimport warn from '../../utils/warn';\nimport useGetTriggerProps from './hooks/useGetTriggerProps';\nimport { isFunction } from '../../utils/isValid';\nimport CollapseTransition from '../base/CollapseTransition';\nimport { subMenuProps, subMenuEmits, type MenuEvent, type MenuStore, type MenuOpenEvent, type ParentMenu } from './Menu.type';\nimport type { GetPopupContainer } from '../Popup/Popup.type';\n\nlet guid = -1;\n\nexport default defineComponent({\n name: 'USubMenu',\n components: {\n Popup,\n UIcon,\n ChevronDown,\n ChevronRight,\n CollapseTransition\n },\n props: subMenuProps,\n emits: subMenuEmits,\n setup(props, { emit }) {\n const parentMenu = inject<ParentMenu>('parentMenu', {} as ParentMenu);\n const {\n openKeys,\n mode: menuMode,\n subMenuOpenDelay,\n subMenuCloseDelay,\n rootPrefixCls,\n updateKeyPath\n // inlineIndent\n } = inject<MenuStore>('menuStore', {} as MenuStore);\n const childrenSelected: Record<string, boolean> = reactive({});\n\n if (menuMode === undefined) {\n warn('cannot find menu parent Component ,OR! the menu mode is error');\n }\n const { fireMenuOpenChange } = inject<MenuEvent>('menuEvent', {} as MenuEvent);\n const prefixCls = computed(() => `${rootPrefixCls.value}-submenu`);\n guid += 1;\n const menuId = computed(() => (props.name ? `${props.name}$Menu` : `${guid}$Menu`));\n\n const level = parentMenu.isRootMenu ? 1 : (parentMenu.level || 0) + 1;\n\n // #region computed\n const mode = computed(() => {\n return (parentMenu.subMode || menuMode).value;\n });\n const subMode = computed(() => {\n if (parentMenu.subMode) {\n // fix useGetTriggerProps\n return parentMenu.subMode.value;\n }\n return mode.value === 'horizontal' ? 'vertical' : mode.value;\n });\n\n const subMenuStyle = computed(() => {\n return `--menu-level: ${level};`;\n });\n\n const eventKey = computed(() => {\n if (props.name) {\n return props.name;\n }\n return menuId.value;\n });\n\n const isOpen = computed(() => {\n return openKeys.value.includes(eventKey.value);\n });\n\n const isClickOpen = computed(() => {\n return mode.value === 'inline';\n });\n const titleStyle = computed(() => {\n if (mode.value === 'inline') {\n return {\n // paddingLeft: `${inlineIndent.value * level}px`\n };\n }\n return {};\n });\n const isSelected = computed(() => {\n const selected = Object.keys(childrenSelected).some((key) => childrenSelected[key]);\n if (parentMenu.setSubMenuSelected) {\n parentMenu.setSubMenuSelected(eventKey.value, selected);\n }\n return selected;\n });\n // #endregion\n const { popupPlacement, popupOffset, trigger } = useGetTriggerProps(mode);\n\n // #region methods\n const setSubMenuSelected = (key: string | number, value: boolean) => {\n childrenSelected[`${key}`] = value;\n };\n\n const getPopupContainer: GetPopupContainer = parentMenu.isRootMenu\n ? () => parentMenu.getPopupContainer()\n : (node?: HTMLElement) => {\n return (node?.parentNode as HTMLElement) || undefined;\n };\n\n const triggerOpenChange = (open: boolean, type: string) => {\n const _event = {\n key: eventKey.value,\n trigger: type,\n item: {},\n open\n } as MenuOpenEvent;\n fireMenuOpenChange && isFunction(fireMenuOpenChange) && fireMenuOpenChange(_event);\n };\n\n const onTitleClick = () => {\n const _event = {\n key: eventKey.value\n };\n emit('title-click', _event);\n if (isClickOpen.value) {\n triggerOpenChange(!isOpen.value, 'click');\n }\n };\n\n const onPopupVisibleChange = (visible: boolean) => {\n triggerOpenChange(visible, trigger.value[0]);\n };\n\n const fireSubmenuClick = () => {\n const key = eventKey.value;\n updateKeyPath && isFunction(updateKeyPath) && updateKeyPath(key, 'sub');\n if (parentMenu.fireSubmenuClick && isFunction(parentMenu.fireSubmenuClick)) {\n parentMenu.fireSubmenuClick();\n }\n };\n // #endregion\n\n provide('parentMenu', {\n isRootMenu: false,\n isSubMenu: true,\n fireSubmenuClick,\n setSubMenuSelected,\n level,\n subMode\n });\n\n return {\n prefixCls,\n rootPrefixCls,\n titleStyle,\n mode,\n subMode,\n isOpen,\n isSelected,\n menuId,\n popupPlacement,\n popupOffset,\n trigger,\n subMenuOpenDelay,\n subMenuCloseDelay,\n subMenuStyle,\n getPopupContainer,\n onTitleClick,\n onPopupVisibleChange\n };\n }\n});\n</script>\n"],"names":["defineComponent","Popup","UIcon","ChevronDown","ChevronRight","CollapseTransition","subMenuProps","subMenuEmits","inject","reactive","computed","useGetTriggerProps","isFunction","_createElementBlock","_normalizeClass","_Fragment","_createElementVNode","_normalizeStyle","_renderSlot","_createVNode","_createCommentVNode","_createBlock","_withCtx"],"mappings":"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"}
@@ -24,7 +24,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
24
24
  titleStyle: import("vue").ComputedRef<{}>;
25
25
  mode: import("vue").ComputedRef<"inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right">;
26
26
  subMode: import("vue").ComputedRef<"inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right">;
27
- theme: import("vue").Ref<"light" | "dark", "light" | "dark">;
28
27
  isOpen: import("vue").ComputedRef<boolean>;
29
28
  isSelected: import("vue").ComputedRef<boolean>;
30
29
  menuId: import("vue").ComputedRef<string>;
@@ -9,11 +9,6 @@ export declare const UMenu: {
9
9
  default: string;
10
10
  validator: (val: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right") => boolean;
11
11
  };
12
- theme: {
13
- type: import("vue").PropType<"light" | "dark">;
14
- default: string;
15
- validator: (val: "light" | "dark") => boolean;
16
- };
17
12
  selectedKeys: {
18
13
  type: import("vue").PropType<(string | number)[]>;
19
14
  validator: (val: any[]) => boolean;
@@ -71,7 +66,6 @@ export declare const UMenu: {
71
66
  }, import("vue").PublicProps, {
72
67
  mode: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right";
73
68
  multiple: boolean;
74
- theme: "light" | "dark";
75
69
  openKeys: (string | number)[];
76
70
  subMenuOpenDelay: number;
77
71
  subMenuCloseDelay: number;
@@ -99,11 +93,6 @@ export declare const UMenu: {
99
93
  default: string;
100
94
  validator: (val: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right") => boolean;
101
95
  };
102
- theme: {
103
- type: import("vue").PropType<"light" | "dark">;
104
- default: string;
105
- validator: (val: "light" | "dark") => boolean;
106
- };
107
96
  selectedKeys: {
108
97
  type: import("vue").PropType<(string | number)[]>;
109
98
  validator: (val: any[]) => boolean;
@@ -154,7 +143,6 @@ export declare const UMenu: {
154
143
  }, {}, {}, {}, {
155
144
  mode: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right";
156
145
  multiple: boolean;
157
- theme: "light" | "dark";
158
146
  openKeys: (string | number)[];
159
147
  subMenuOpenDelay: number;
160
148
  subMenuCloseDelay: number;
@@ -170,11 +158,6 @@ export declare const UMenu: {
170
158
  default: string;
171
159
  validator: (val: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right") => boolean;
172
160
  };
173
- theme: {
174
- type: import("vue").PropType<"light" | "dark">;
175
- default: string;
176
- validator: (val: "light" | "dark") => boolean;
177
- };
178
161
  selectedKeys: {
179
162
  type: import("vue").PropType<(string | number)[]>;
180
163
  validator: (val: any[]) => boolean;
@@ -232,7 +215,6 @@ export declare const UMenu: {
232
215
  }, string, {
233
216
  mode: "inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right";
234
217
  multiple: boolean;
235
- theme: "light" | "dark";
236
218
  openKeys: (string | number)[];
237
219
  subMenuOpenDelay: number;
238
220
  subMenuCloseDelay: number;
@@ -1025,7 +1007,6 @@ export declare const UMenu: {
1025
1007
  titleStyle: import("vue").ComputedRef<{}>;
1026
1008
  mode: import("vue").ComputedRef<"inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right">;
1027
1009
  subMode: import("vue").ComputedRef<"inline" | "vertical" | "horizontal" | "vertical-left" | "vertical-right">;
1028
- theme: import("vue").Ref<"light" | "dark", "light" | "dark">;
1029
1010
  isOpen: import("vue").ComputedRef<boolean>;
1030
1011
  isSelected: import("vue").ComputedRef<boolean>;
1031
1012
  menuId: import("vue").ComputedRef<string>;
@@ -129,9 +129,7 @@ var UCircle = vue.defineComponent({
129
129
  const iconSvg = statusIcon.value;
130
130
  const defaultTextRender = isStatus.value ? vue.createVNode("span", {
131
131
  "class": `${prefixCls.value}-text-inner`
132
- }, [vue.createVNode(index.UIcon, {
133
- "style": "font-size: 24px"
134
- }, {
132
+ }, [vue.createVNode(index.UIcon, null, {
135
133
  default: () => [vue.createVNode(iconSvg, null, null)]
136
134
  })]) : vue.createVNode("span", {
137
135
  "class": `${prefixCls.value}-text-inner`
@@ -1 +1 @@
1
- {"version":3,"file":"Circle.js","sources":["../../../../src/components/Progress/Circle.tsx"],"sourcesContent":["import { defineComponent, watch, onMounted } from 'vue';\nimport type { PropType } from 'vue';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { oneOf } from '../../utils/propsValidators';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport URender from '../base/Render';\nimport useProgress from './hooks/useProgress';\nimport { progressEmits, progressStatus, type ProgressStauts } from './Progress.type';\nimport { getSlot } from '../../utils/slots';\n\nconst defineProps = {\n percent: {\n type: Number,\n default: 0\n },\n successPercent: {\n type: Number,\n default: 0\n },\n status: {\n type: String as PropType<ProgressStauts>,\n default: 'normal',\n validator: oneOf(progressStatus)\n },\n hideInfo: {\n type: Boolean,\n default: false\n },\n strokeWidth: {\n type: Number,\n default: 6\n },\n strokeColor: {\n type: [String, Array] as PropType<string | string[]>\n },\n textInside: {\n type: Boolean,\n default: false\n }\n};\n\nexport default defineComponent({\n name: 'UCircle',\n components: {\n URender,\n UIcon\n },\n props: defineProps,\n emits: progressEmits,\n setup(props, { emit, slots }) {\n const { prefixCls } = useGlobalConfig('progress');\n // data\n const patchColor = '#F3F3F3';\n const statusColorMap: Record<ProgressStauts, string> = {\n normal: '#4d9bee',\n active: '#4d9bee',\n wrong: '#ed3f14',\n success: '#19be6b'\n };\n const radius = Math.ceil(44 - props.strokeWidth / 2);\n const len = Math.ceil(Math.PI * 2 * radius);\n\n const { currentStatus, isStatus, statusIcon, handleStatus } = useProgress(props, { emit });\n // computed\n\n // watch\n watch(\n () => props.percent,\n (nv, ov) => {\n if (nv < ov) {\n handleStatus(true);\n } else {\n handleStatus();\n }\n }\n );\n watch(\n () => props.status,\n (nv) => {\n currentStatus.value = nv;\n }\n );\n // lifecycle\n onMounted(() => {\n handleStatus();\n });\n // methods\n const circleStyle = {\n cx: '50%',\n cy: '50%',\n r: '40',\n transform: 'rotate(-90 50 50)',\n 'stroke-width': props.strokeWidth,\n 'stroke-linecap': props.percent === 0 ? 'butt' : 'round'\n };\n\n return () => {\n const { strokeColor, successPercent, percent } = props;\n\n const gradientRender =\n strokeColor !== undefined ? (\n <defs>\n <linearGradient id=\"svg-gradient\" gradientUnits=\"userSpaceOnUse\" x1=\"100%\" y1=\"100%\" x2=\"0\" y2=\"0\">\n <stop offset=\"0%\" stop-color={Array.isArray(props.strokeColor) ? props.strokeColor[0] : props.strokeColor} />\n <stop offset=\"100%\" stop-color={Array.isArray(props.strokeColor) ? props.strokeColor[1] : props.strokeColor} />\n </linearGradient>\n </defs>\n ) : null;\n\n const pathRender = <circle {...circleStyle} stroke={patchColor}></circle>;\n const percentRender = (\n <circle\n {...circleStyle}\n stroke={!props.strokeColor || isStatus.value ? statusColorMap[currentStatus.value] : 'url(#svg-gradient)'}\n stroke-dasharray={`${Math.ceil((props.percent / 100) * len)}, ${len}`}\n stroke-linecap={Math.ceil(props.percent / 100) ? 'round' : 'butt'}\n ></circle>\n );\n\n const successPercentRender = successPercent ? (\n <circle\n {...circleStyle}\n stroke={statusColorMap.success}\n stroke-dasharray={`${Math.ceil((props.successPercent / 100) * len)}, ${len}`}\n ></circle>\n ) : null;\n\n const iconSvg = statusIcon.value;\n\n const defaultTextRender = isStatus.value ? (\n <span class={`${prefixCls.value}-text-inner`}>\n <UIcon style=\"font-size: 24px\">\n <iconSvg></iconSvg>\n </UIcon>\n </span>\n ) : (\n <span class={`${prefixCls.value}-text-inner`}>{percent}%</span>\n );\n\n return (\n <div class={[`${prefixCls.value}`, `${prefixCls.value}-circle`, `${prefixCls.value}-${currentStatus.value}`]}>\n <div class={`${prefixCls.value}-inner`}>\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"100%\" width=\"100%\" viewBox=\"0 0 100 100\">\n {gradientRender}\n {pathRender}\n {percentRender}\n {successPercentRender}\n </svg>\n <div class={`${prefixCls.value}-text`}>{getSlot(slots).length ? getSlot(slots) : defaultTextRender}</div>\n </div>\n </div>\n );\n };\n }\n});\n"],"names":["defineProps","percent","type","Number","default","successPercent","status","String","validator","oneOf","progressStatus","hideInfo","Boolean","strokeWidth","strokeColor","Array","textInside","defineComponent","name","components","URender","UIcon","props","emits","progressEmits","setup","emit","slots","prefixCls","useGlobalConfig","patchColor","statusColorMap","normal","active","wrong","success","radius","Math","ceil","len","PI","currentStatus","isStatus","statusIcon","handleStatus","useProgress","watch","nv","ov","value","onMounted","circleStyle","cx","cy","r","transform","gradientRender","undefined","_createVNode","isArray","pathRender","_mergeProps","percentRender","successPercentRender","iconSvg","defaultTextRender","_createTextVNode","getSlot","length"],"mappings":"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"}
1
+ {"version":3,"file":"Circle.js","sources":["../../../../src/components/Progress/Circle.tsx"],"sourcesContent":["import { defineComponent, watch, onMounted } from 'vue';\nimport type { PropType } from 'vue';\nimport UIcon from '@uxd-ui/components/Icon';\nimport { oneOf } from '../../utils/propsValidators';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport URender from '../base/Render';\nimport useProgress from './hooks/useProgress';\nimport { progressEmits, progressStatus, type ProgressStauts } from './Progress.type';\nimport { getSlot } from '../../utils/slots';\n\nconst defineProps = {\n percent: {\n type: Number,\n default: 0\n },\n successPercent: {\n type: Number,\n default: 0\n },\n status: {\n type: String as PropType<ProgressStauts>,\n default: 'normal',\n validator: oneOf(progressStatus)\n },\n hideInfo: {\n type: Boolean,\n default: false\n },\n strokeWidth: {\n type: Number,\n default: 6\n },\n strokeColor: {\n type: [String, Array] as PropType<string | string[]>\n },\n textInside: {\n type: Boolean,\n default: false\n }\n};\n\nexport default defineComponent({\n name: 'UCircle',\n components: {\n URender,\n UIcon\n },\n props: defineProps,\n emits: progressEmits,\n setup(props, { emit, slots }) {\n const { prefixCls } = useGlobalConfig('progress');\n // data\n const patchColor = '#F3F3F3';\n const statusColorMap: Record<ProgressStauts, string> = {\n normal: '#4d9bee',\n active: '#4d9bee',\n wrong: '#ed3f14',\n success: '#19be6b'\n };\n const radius = Math.ceil(44 - props.strokeWidth / 2);\n const len = Math.ceil(Math.PI * 2 * radius);\n\n const { currentStatus, isStatus, statusIcon, handleStatus } = useProgress(props, { emit });\n // computed\n\n // watch\n watch(\n () => props.percent,\n (nv, ov) => {\n if (nv < ov) {\n handleStatus(true);\n } else {\n handleStatus();\n }\n }\n );\n watch(\n () => props.status,\n (nv) => {\n currentStatus.value = nv;\n }\n );\n // lifecycle\n onMounted(() => {\n handleStatus();\n });\n // methods\n const circleStyle = {\n cx: '50%',\n cy: '50%',\n r: '40',\n transform: 'rotate(-90 50 50)',\n 'stroke-width': props.strokeWidth,\n 'stroke-linecap': props.percent === 0 ? ('butt' as const) : ('round' as const)\n };\n\n return () => {\n const { strokeColor, successPercent, percent } = props;\n\n const gradientRender =\n strokeColor !== undefined ? (\n <defs>\n <linearGradient id=\"svg-gradient\" gradientUnits=\"userSpaceOnUse\" x1=\"100%\" y1=\"100%\" x2=\"0\" y2=\"0\">\n <stop offset=\"0%\" stop-color={Array.isArray(props.strokeColor) ? props.strokeColor[0] : props.strokeColor} />\n <stop offset=\"100%\" stop-color={Array.isArray(props.strokeColor) ? props.strokeColor[1] : props.strokeColor} />\n </linearGradient>\n </defs>\n ) : null;\n\n const pathRender = <circle {...circleStyle} stroke={patchColor}></circle>;\n const percentRender = (\n <circle\n {...circleStyle}\n stroke={!props.strokeColor || isStatus.value ? statusColorMap[currentStatus.value] : 'url(#svg-gradient)'}\n stroke-dasharray={`${Math.ceil((props.percent / 100) * len)}, ${len}`}\n stroke-linecap={Math.ceil(props.percent / 100) ? 'round' : 'butt'}\n ></circle>\n );\n\n const successPercentRender = successPercent ? (\n <circle\n {...circleStyle}\n stroke={statusColorMap.success}\n stroke-dasharray={`${Math.ceil((props.successPercent / 100) * len)}, ${len}`}\n ></circle>\n ) : null;\n\n const iconSvg = statusIcon.value;\n\n const defaultTextRender = isStatus.value ? (\n <span class={`${prefixCls.value}-text-inner`}>\n <UIcon>\n <iconSvg></iconSvg>\n </UIcon>\n </span>\n ) : (\n <span class={`${prefixCls.value}-text-inner`}>{percent}%</span>\n );\n\n return (\n <div class={[`${prefixCls.value}`, `${prefixCls.value}-circle`, `${prefixCls.value}-${currentStatus.value}`]}>\n <div class={`${prefixCls.value}-inner`}>\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"100%\" width=\"100%\" viewBox=\"0 0 100 100\">\n {gradientRender}\n {pathRender}\n {percentRender}\n {successPercentRender}\n </svg>\n <div class={`${prefixCls.value}-text`}>{getSlot(slots).length ? getSlot(slots) : defaultTextRender}</div>\n </div>\n </div>\n );\n };\n }\n});\n"],"names":["defineProps","percent","type","Number","default","successPercent","status","String","validator","oneOf","progressStatus","hideInfo","Boolean","strokeWidth","strokeColor","Array","textInside","defineComponent","name","components","URender","UIcon","props","emits","progressEmits","setup","emit","slots","prefixCls","useGlobalConfig","patchColor","statusColorMap","normal","active","wrong","success","radius","Math","ceil","len","PI","currentStatus","isStatus","statusIcon","handleStatus","useProgress","watch","nv","ov","value","onMounted","circleStyle","cx","cy","r","transform","gradientRender","undefined","_createVNode","isArray","pathRender","_mergeProps","percentRender","successPercentRender","iconSvg","defaultTextRender","_createTextVNode","getSlot","length"],"mappings":"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"}
@@ -48,14 +48,13 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
48
48
  "stroke-width": _ctx.strokeWidth,
49
49
  "stroke-color": _ctx.strokeColor,
50
50
  vertical: _ctx.vertical,
51
- "text-inside": _ctx.textInside,
52
- "data-color": _ctx.color
51
+ "text-inside": _ctx.textInside
53
52
  }, {
54
53
  default: vue.withCtx(() => [
55
54
  vue.renderSlot(_ctx.$slots, "default")
56
55
  ]),
57
56
  _: 3
58
- }, 8, ["percent", "success-percent", "status", "hide-info", "stroke-width", "stroke-color", "vertical", "text-inside", "data-color"]);
57
+ }, 8, ["percent", "success-percent", "status", "hide-info", "stroke-width", "stroke-color", "vertical", "text-inside"]);
59
58
  }
60
59
  var Progress = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render], ["__file", "/Users/admin/Documents/uxd/uxd-ui/src/components/Progress/Progress.vue"]]);
61
60
 
@@ -1 +1 @@
1
- {"version":3,"file":"Progress.js","sources":["../../../../src/components/Progress/Progress.vue"],"sourcesContent":["<template>\n <component\n :is=\"wrapperComponent\"\n :percent=\"percent\"\n :success-percent=\"successPercent\"\n :status=\"status\"\n :hide-info=\"hideInfo\"\n :stroke-width=\"strokeWidth\"\n :stroke-color=\"strokeColor\"\n :vertical=\"vertical\"\n :text-inside=\"textInside\"\n :data-color=\"color\"\n >\n <slot />\n </component>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, computed } from 'vue';\nimport ULine from './Line.vue';\nimport UCircle from './Circle';\nimport UWater from './Water.vue';\n\nimport { progressProps } from './Progress.type';\n\nexport default defineComponent({\n name: 'UProgress',\n components: {\n ULine,\n UCircle,\n UWater\n },\n props: progressProps,\n setup(props) {\n const wrapperComponent = computed(() => {\n const { type } = props;\n let wrapComponent = '';\n switch (type) {\n case 'circle':\n wrapComponent = 'u-circle';\n break;\n case 'water':\n wrapComponent = 'u-water';\n break;\n default:\n wrapComponent = 'u-line';\n }\n return wrapComponent;\n });\n return {\n props,\n wrapperComponent\n };\n }\n});\n</script>\n"],"names":["defineComponent","ULine","UCircle","UWater","progressProps","computed","_createBlock","_resolveDynamicComponent","_renderSlot"],"mappings":";;;;;;;;;;;AAyBA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,WACVC;AAAA,aACAC;AAAA,YACAC;AAAA;AACF,EACA,OAAOC;AAAA,EACP,MAAM,OAAO;UACL,mBAAmBC,aAAS,MAAM;YAChC,EAAE,SAAS;UACb,gBAAgB;cACZ;AAAA,aACD;0BACa;;aAEb;0BACa;;;0BAGA;AAAA;aAEb;AAAA,KACR;WACM;AAAA,MACL;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;0BArDCC,gBAaYC,4BAZL,qBAAgB;IACpB,SAAS;IACT,mBAAiB;IACjB,QAAQ;IACR,aAAW;IACX,gBAAc;IACd,gBAAc;IACd,UAAU;IACV,eAAa;IACb,cAAY;;yBAEb,MAAQ;AAAA,MAARC,eAAQ;;;;;;;;;"}
1
+ {"version":3,"file":"Progress.js","sources":["../../../../src/components/Progress/Progress.vue"],"sourcesContent":["<template>\n <component\n :is=\"wrapperComponent\"\n :percent=\"percent\"\n :success-percent=\"successPercent\"\n :status=\"status\"\n :hide-info=\"hideInfo\"\n :stroke-width=\"strokeWidth\"\n :stroke-color=\"strokeColor\"\n :vertical=\"vertical\"\n :text-inside=\"textInside\"\n >\n <slot />\n </component>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, computed } from 'vue';\nimport ULine from './Line.vue';\nimport UCircle from './Circle';\nimport UWater from './Water.vue';\n\nimport { progressProps } from './Progress.type';\n\nexport default defineComponent({\n name: 'UProgress',\n components: {\n ULine,\n UCircle,\n UWater\n },\n props: progressProps,\n setup(props) {\n const wrapperComponent = computed(() => {\n const { type } = props;\n let wrapComponent = '';\n switch (type) {\n case 'circle':\n wrapComponent = 'u-circle';\n break;\n case 'water':\n wrapComponent = 'u-water';\n break;\n default:\n wrapComponent = 'u-line';\n }\n return wrapComponent;\n });\n return {\n props,\n wrapperComponent\n };\n }\n});\n</script>\n"],"names":["defineComponent","ULine","UCircle","UWater","progressProps","computed","_createBlock","_resolveDynamicComponent","_renderSlot"],"mappings":";;;;;;;;;;;AAwBA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,WACVC;AAAA,aACAC;AAAA,YACAC;AAAA;AACF,EACA,OAAOC;AAAA,EACP,MAAM,OAAO;UACL,mBAAmBC,aAAS,MAAM;YAChC,EAAE,SAAS;UACb,gBAAgB;cACZ;AAAA,aACD;0BACa;;aAEb;0BACa;;;0BAGA;AAAA;aAEb;AAAA,KACR;WACM;AAAA,MACL;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;0BApDCC,gBAYYC,4BAXL,qBAAgB;IACpB,SAAS;IACT,mBAAiB;IACjB,QAAQ;IACR,aAAW;IACX,gBAAc;IACd,gBAAc;IACd,UAAU;IACV,eAAa;;yBAEd,MAAQ;AAAA,MAARC,eAAQ;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import type { ExtractPropTypes, PropType } from 'vue';
2
- import { type EmitFn } from '../../utils/globalType';
2
+ import type { EmitFn } from '../../utils/globalType';
3
3
  import type Progress from './Progress.vue';
4
4
  export declare const progressStatus: readonly ["normal", "active", "wrong", "success"];
5
5
  export declare type ProgressStauts = (typeof progressStatus)[number];
@@ -43,11 +43,6 @@ export declare const progressProps: {
43
43
  default: string;
44
44
  validator: (val: "circle" | "line" | "water") => boolean;
45
45
  };
46
- color: {
47
- type: PropType<"primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint">;
48
- default: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
49
- validator: (val: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint") => boolean;
50
- };
51
46
  };
52
47
  export declare type ProgressProps = ExtractPropTypes<typeof progressProps>;
53
48
  export declare const progressEmits: {
@@ -2,7 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var globalType = require('../../utils/globalType.js');
6
5
  var propsValidators = require('../../utils/propsValidators.js');
7
6
 
8
7
  const progressStatus = ["normal", "active", "wrong", "success"];
@@ -44,11 +43,6 @@ const progressProps = {
44
43
  type: String,
45
44
  default: "line",
46
45
  validator: propsValidators.oneOf(progressType)
47
- },
48
- color: {
49
- type: String,
50
- default: void 0,
51
- validator: propsValidators.oneOf(globalType.colorType)
52
46
  }
53
47
  };
54
48
  const progressEmits = {
@@ -1 +1 @@
1
- {"version":3,"file":"Progress.type.js","sources":["../../../../src/components/Progress/Progress.type.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue';\nimport { colorType, type ColorType, type EmitFn } from '../../utils/globalType';\nimport { oneOf } from '../../utils/propsValidators';\nimport type Progress from './Progress.vue';\n\nexport const progressStatus = ['normal', 'active', 'wrong', 'success'] as const;\nexport type ProgressStauts = (typeof progressStatus)[number];\nexport const progressType = ['line', 'circle', 'water'] as const;\nexport type ProgressType = (typeof progressType)[number];\n\nexport const progressProps = {\n percent: {\n type: Number,\n default: 0\n },\n successPercent: {\n type: Number,\n default: 0\n },\n status: {\n type: String as PropType<ProgressStauts>,\n default: 'normal',\n validator: oneOf(progressStatus)\n },\n hideInfo: {\n type: Boolean,\n default: false\n },\n strokeWidth: {\n type: Number,\n default: 8\n },\n strokeColor: {\n type: [String, Array] as PropType<string | string[]>\n },\n vertical: {\n type: Boolean,\n default: false\n },\n textInside: {\n type: Boolean,\n default: false\n },\n type: {\n type: String as PropType<ProgressType>,\n default: 'line',\n validator: oneOf(progressType)\n },\n color: {\n type: String as PropType<ColorType | undefined>,\n default: undefined as undefined | ColorType,\n validator: oneOf(colorType)\n }\n};\n\nexport type ProgressProps = ExtractPropTypes<typeof progressProps>;\n\nexport const progressEmits = {\n 'status-change': (status: ProgressStauts) => progressStatus.includes(status)\n};\n\nexport type ProgressEmits = typeof progressEmits;\n\nexport type ProgressEmit = EmitFn<ProgressEmits>;\n\nexport type ProgressInstanceType = InstanceType<typeof Progress>;\n"],"names":["oneOf","colorType"],"mappings":";;;;;;;MAKa,iBAAiB,CAAC,UAAU,UAAU,SAAS,SAAS;MAExD,eAAe,CAAC,QAAQ,UAAU,OAAO;MAGzC,gBAAgB;AAAA,EAC3B,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAM,cAAc;AAAA;AACjC,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,aAAa;AAAA,IACX,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,aAAa;AAAA,IACX,MAAM,CAAC,QAAQ,KAAK;AAAA;AACtB,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAM,YAAY;AAAA;AAC/B,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAMC,oBAAS;AAAA;AAE9B;MAIa,gBAAgB;AAAA,EAC3B,iBAAiB,CAAC,WAA2B,eAAe,SAAS,MAAM;AAC7E;;;;;;;"}
1
+ {"version":3,"file":"Progress.type.js","sources":["../../../../src/components/Progress/Progress.type.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue';\nimport type { EmitFn } from '../../utils/globalType';\nimport { oneOf } from '../../utils/propsValidators';\nimport type Progress from './Progress.vue';\n\nexport const progressStatus = ['normal', 'active', 'wrong', 'success'] as const;\nexport type ProgressStauts = (typeof progressStatus)[number];\nexport const progressType = ['line', 'circle', 'water'] as const;\nexport type ProgressType = (typeof progressType)[number];\n\nexport const progressProps = {\n percent: {\n type: Number,\n default: 0\n },\n successPercent: {\n type: Number,\n default: 0\n },\n status: {\n type: String as PropType<ProgressStauts>,\n default: 'normal',\n validator: oneOf(progressStatus)\n },\n hideInfo: {\n type: Boolean,\n default: false\n },\n strokeWidth: {\n type: Number,\n default: 8\n },\n strokeColor: {\n type: [String, Array] as PropType<string | string[]>\n },\n vertical: {\n type: Boolean,\n default: false\n },\n textInside: {\n type: Boolean,\n default: false\n },\n type: {\n type: String as PropType<ProgressType>,\n default: 'line',\n validator: oneOf(progressType)\n }\n};\n\nexport type ProgressProps = ExtractPropTypes<typeof progressProps>;\n\nexport const progressEmits = {\n 'status-change': (status: ProgressStauts) => progressStatus.includes(status)\n};\n\nexport type ProgressEmits = typeof progressEmits;\n\nexport type ProgressEmit = EmitFn<ProgressEmits>;\n\nexport type ProgressInstanceType = InstanceType<typeof Progress>;\n"],"names":["oneOf"],"mappings":";;;;;;MAKa,iBAAiB,CAAC,UAAU,UAAU,SAAS,SAAS;MAExD,eAAe,CAAC,QAAQ,UAAU,OAAO;MAGzC,gBAAgB;AAAA,EAC3B,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAM,cAAc;AAAA;AACjC,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,aAAa;AAAA,IACX,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,aAAa;AAAA,IACX,MAAM,CAAC,QAAQ,KAAK;AAAA;AACtB,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAWA,sBAAM,YAAY;AAAA;AAEjC;MAIa,gBAAgB;AAAA,EAC3B,iBAAiB,CAAC,WAA2B,eAAe,SAAS,MAAM;AAC7E;;;;;;;"}