@routa/ui-vue 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (504) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +52 -0
  3. package/base.css +1 -0
  4. package/dist/autocomplete/AutoComplete.vue.d.ts +336 -0
  5. package/dist/autocomplete/index.d.ts +298 -0
  6. package/dist/autocomplete/index.js +4 -0
  7. package/dist/autocomplete/index.mjs +321 -0
  8. package/dist/autocomplete/types.d.ts +58 -0
  9. package/dist/avatar/Avatar.vue.d.ts +36 -0
  10. package/dist/avatar/AvatarGroup.vue.d.ts +7 -0
  11. package/dist/avatar/index.d.ts +7 -0
  12. package/dist/avatar/index.js +3 -0
  13. package/dist/avatar/index.mjs +192 -0
  14. package/dist/avatar/types.d.ts +111 -0
  15. package/dist/badge/Badge.vue.d.ts +25 -0
  16. package/dist/badge/index.d.ts +5 -0
  17. package/dist/badge/index.js +2 -0
  18. package/dist/badge/index.mjs +72 -0
  19. package/dist/badge/types.d.ts +86 -0
  20. package/dist/breadcrumb/Breadcrumb.vue.d.ts +38 -0
  21. package/dist/breadcrumb/BreadcrumbItem.vue.d.ts +48 -0
  22. package/dist/breadcrumb/index.d.ts +7 -0
  23. package/dist/breadcrumb/index.js +2 -0
  24. package/dist/breadcrumb/index.mjs +87 -0
  25. package/dist/breadcrumb/types.d.ts +28 -0
  26. package/dist/button/Button.vue.d.ts +27 -0
  27. package/dist/button/index.d.ts +5 -0
  28. package/dist/button/index.js +2 -0
  29. package/dist/button/index.mjs +10 -0
  30. package/dist/button/types.d.ts +14 -0
  31. package/dist/card/Card.vue.d.ts +49 -0
  32. package/dist/card/index.d.ts +72 -0
  33. package/dist/card/index.js +2 -0
  34. package/dist/card/index.mjs +60 -0
  35. package/dist/card/types.d.ts +16 -0
  36. package/dist/carousel/Carousel.vue.d.ts +134 -0
  37. package/dist/carousel/CarouselItem.vue.d.ts +23 -0
  38. package/dist/carousel/index.d.ts +250 -0
  39. package/dist/carousel/index.js +2 -0
  40. package/dist/carousel/index.mjs +354 -0
  41. package/dist/carousel/types.d.ts +97 -0
  42. package/dist/cascader/Cascader.vue.d.ts +109 -0
  43. package/dist/cascader/CascaderPanel.vue.d.ts +55 -0
  44. package/dist/cascader/index.d.ts +110 -0
  45. package/dist/cascader/index.js +5 -0
  46. package/dist/cascader/index.mjs +370 -0
  47. package/dist/cascader/types.d.ts +54 -0
  48. package/dist/checkbox/Checkbox.vue.d.ts +99 -0
  49. package/dist/checkbox/CheckboxGroup.vue.d.ts +59 -0
  50. package/dist/checkbox/constants.d.ts +2 -0
  51. package/dist/checkbox/index.d.ts +9 -0
  52. package/dist/checkbox/index.js +2 -0
  53. package/dist/checkbox/index.mjs +70 -0
  54. package/dist/checkbox/types.d.ts +64 -0
  55. package/dist/chunks/Button.vue_vue_type_script_setup_true_lang-BthtEkGw.mjs +170 -0
  56. package/dist/chunks/Button.vue_vue_type_script_setup_true_lang-Do1NtIFC.js +1 -0
  57. package/dist/chunks/Checkbox.vue_vue_type_script_setup_true_lang-DxecbRJE.js +1 -0
  58. package/dist/chunks/Checkbox.vue_vue_type_script_setup_true_lang-fOXXjwnz.mjs +289 -0
  59. package/dist/chunks/Icon.vue_vue_type_script_setup_true_lang-LQ-KuJ6a.mjs +57 -0
  60. package/dist/chunks/Icon.vue_vue_type_script_setup_true_lang-YDWguTmi.js +1 -0
  61. package/dist/chunks/Input.vue_vue_type_script_setup_true_lang-8x2HE2Cj.js +1 -0
  62. package/dist/chunks/Input.vue_vue_type_script_setup_true_lang-PeDZ7smO.mjs +391 -0
  63. package/dist/chunks/Popover.vue_vue_type_script_setup_true_lang-CVWbekIQ.mjs +176 -0
  64. package/dist/chunks/Popover.vue_vue_type_script_setup_true_lang-TF9OnqB0.js +1 -0
  65. package/dist/chunks/Scrollbar.vue_vue_type_script_setup_true_lang-CtBz7Ha9.js +1 -0
  66. package/dist/chunks/Scrollbar.vue_vue_type_script_setup_true_lang-kKvR0Hz3.mjs +124 -0
  67. package/dist/chunks/TimePanel.vue_vue_type_script_setup_true_lang-BNTM3OeU.js +1 -0
  68. package/dist/chunks/TimePanel.vue_vue_type_script_setup_true_lang-BxuIhLsF.mjs +170 -0
  69. package/dist/chunks/_plugin-vue_export-helper-BHFhmbuH.js +1 -0
  70. package/dist/chunks/_plugin-vue_export-helper-CHgC5LLL.mjs +9 -0
  71. package/dist/chunks/auto-update-6n8Xn1EH.js +1 -0
  72. package/dist/chunks/auto-update-Dw-2qIsQ.mjs +59 -0
  73. package/dist/chunks/color-BBpRjg5d.mjs +32 -0
  74. package/dist/chunks/color-m1q_rZ68.js +1 -0
  75. package/dist/chunks/context-BEsW77hb.js +1 -0
  76. package/dist/chunks/context-BlK-PJ3n.mjs +5 -0
  77. package/dist/chunks/controller-37WpkEdZ.js +1 -0
  78. package/dist/chunks/controller-3cWaJJMW.mjs +318 -0
  79. package/dist/chunks/controller-BQhkT8pi.mjs +95 -0
  80. package/dist/chunks/controller-BnNZOOMj.js +1 -0
  81. package/dist/chunks/controller-CV-a983I.js +1 -0
  82. package/dist/chunks/controller-D1BTHmfO.js +1 -0
  83. package/dist/chunks/controller-DZp6lWY1.mjs +96 -0
  84. package/dist/chunks/controller-DdEBnv9V.mjs +82 -0
  85. package/dist/chunks/id-CfLxBW9l.js +1 -0
  86. package/dist/chunks/id-VS2potoV.mjs +7 -0
  87. package/dist/chunks/index-B0yEC3RG.mjs +136 -0
  88. package/dist/chunks/index-B4GP5rXr.mjs +170 -0
  89. package/dist/chunks/index-DWAWrVaT.js +1 -0
  90. package/dist/chunks/index-RYR-1S7A.js +1 -0
  91. package/dist/chunks/install-DJNxamQ0.mjs +10 -0
  92. package/dist/chunks/install-gnn2dOg9.js +1 -0
  93. package/dist/chunks/manager-BUdQK4AD.mjs +156 -0
  94. package/dist/chunks/manager-C-VTKQvg.mjs +85 -0
  95. package/dist/chunks/manager-C0AUxQ1I.js +2 -0
  96. package/dist/chunks/manager-d-AJMlyO.js +1 -0
  97. package/dist/chunks/modal-BiivqQQz.mjs +86 -0
  98. package/dist/chunks/modal-CRbFkVcm.js +1 -0
  99. package/dist/chunks/responsive-BYScjISa.js +1 -0
  100. package/dist/chunks/responsive-jCVnPx1a.mjs +49 -0
  101. package/dist/chunks/style-C-58-Hx4.mjs +7 -0
  102. package/dist/chunks/style-CjCLKeeU.js +1 -0
  103. package/dist/chunks/types-CXAGM03M.mjs +92 -0
  104. package/dist/chunks/types-DS78vyi2.js +1 -0
  105. package/dist/chunks/use-form-item-CloIcyon.js +1 -0
  106. package/dist/chunks/use-form-item-CqDbWCiU.mjs +16 -0
  107. package/dist/chunks/use-id-BycaM3-h.js +1 -0
  108. package/dist/chunks/use-id-D3casveg.mjs +9 -0
  109. package/dist/chunks/use-signals-Bz1smiXh.js +1 -0
  110. package/dist/chunks/use-signals-CE1T2jXK.mjs +50 -0
  111. package/dist/chunks/useCanvasRenderer-BPTNzGy0.mjs +87 -0
  112. package/dist/chunks/useCanvasRenderer-D77k3JCQ.js +1 -0
  113. package/dist/chunks/useResizeObserver-Cki4q_CI.mjs +60 -0
  114. package/dist/chunks/useResizeObserver-DMkB1OF3.js +1 -0
  115. package/dist/chunks/z-index-CNZLw1v7.js +1 -0
  116. package/dist/chunks/z-index-D9ecXoNe.mjs +14 -0
  117. package/dist/collapse/Collapse.vue.d.ts +30 -0
  118. package/dist/collapse/CollapseItem.vue.d.ts +20 -0
  119. package/dist/collapse/index.d.ts +8 -0
  120. package/dist/collapse/index.js +3 -0
  121. package/dist/collapse/index.mjs +144 -0
  122. package/dist/collapse/types.d.ts +54 -0
  123. package/dist/color-picker/AlphaSlider.vue.d.ts +38 -0
  124. package/dist/color-picker/ColorPicker.vue.d.ts +57 -0
  125. package/dist/color-picker/HueSlider.vue.d.ts +28 -0
  126. package/dist/color-picker/SaturationPanel.vue.d.ts +46 -0
  127. package/dist/color-picker/index.d.ts +56 -0
  128. package/dist/color-picker/index.js +6 -0
  129. package/dist/color-picker/index.mjs +481 -0
  130. package/dist/config-provider/ConfigProvider.vue.d.ts +64 -0
  131. package/dist/config-provider/context.d.ts +888 -0
  132. package/dist/config-provider/index.d.ts +97 -0
  133. package/dist/config-provider/index.js +1 -0
  134. package/dist/config-provider/index.mjs +396 -0
  135. package/dist/config-provider/resolver.d.ts +2 -0
  136. package/dist/config-provider/runtime.d.ts +5 -0
  137. package/dist/config-provider/teleport.d.ts +6 -0
  138. package/dist/config-provider/types.d.ts +131 -0
  139. package/dist/context-menu/ContextMenu.vue.d.ts +87 -0
  140. package/dist/context-menu/index.d.ts +5 -0
  141. package/dist/context-menu/index.js +3 -0
  142. package/dist/context-menu/index.mjs +215 -0
  143. package/dist/context-menu/types.d.ts +34 -0
  144. package/dist/date-picker/Calendar.vue.d.ts +22 -0
  145. package/dist/date-picker/DatePicker.vue.d.ts +31 -0
  146. package/dist/date-picker/DateRangePicker.vue.d.ts +26 -0
  147. package/dist/date-picker/DateTimePicker.vue.d.ts +27 -0
  148. package/dist/date-picker/DateTimeRangePicker.vue.d.ts +27 -0
  149. package/dist/date-picker/index.d.ts +13 -0
  150. package/dist/date-picker/index.js +6 -0
  151. package/dist/date-picker/index.mjs +1229 -0
  152. package/dist/date-picker/utils.d.ts +3 -0
  153. package/dist/dialog/Dialog.vue.d.ts +97 -0
  154. package/dist/dialog/index.d.ts +5 -0
  155. package/dist/dialog/index.js +2 -0
  156. package/dist/dialog/index.mjs +161 -0
  157. package/dist/dialog/types.d.ts +38 -0
  158. package/dist/divider/Divider.vue.d.ts +74 -0
  159. package/dist/divider/index.d.ts +5 -0
  160. package/dist/divider/index.js +2 -0
  161. package/dist/divider/index.mjs +96 -0
  162. package/dist/divider/types.d.ts +57 -0
  163. package/dist/drawer/Drawer.vue.d.ts +106 -0
  164. package/dist/drawer/index.d.ts +5 -0
  165. package/dist/drawer/index.js +2 -0
  166. package/dist/drawer/index.mjs +168 -0
  167. package/dist/drawer/types.d.ts +42 -0
  168. package/dist/dropdown/Dropdown.vue.d.ts +109 -0
  169. package/dist/dropdown/DropdownItem.vue.d.ts +60 -0
  170. package/dist/dropdown/index.d.ts +7 -0
  171. package/dist/dropdown/index.js +3 -0
  172. package/dist/dropdown/index.mjs +310 -0
  173. package/dist/dropdown/types.d.ts +87 -0
  174. package/dist/empty/Empty.vue.d.ts +47 -0
  175. package/dist/empty/index.d.ts +70 -0
  176. package/dist/empty/index.js +2 -0
  177. package/dist/empty/index.mjs +50 -0
  178. package/dist/empty/types.d.ts +16 -0
  179. package/dist/feedback-runtime/manager.d.ts +109 -0
  180. package/dist/feedback-runtime/mount.d.ts +5 -0
  181. package/dist/feedback-runtime/types.d.ts +27 -0
  182. package/dist/form/Form.vue.d.ts +37 -0
  183. package/dist/form/FormItem.vue.d.ts +32 -0
  184. package/dist/form/FormSchemaFields.vue.d.ts +7 -0
  185. package/dist/form/context.d.ts +33 -0
  186. package/dist/form/index.d.ts +6 -0
  187. package/dist/form/index.js +2 -0
  188. package/dist/form/index.mjs +389 -0
  189. package/dist/grid/Col.vue.d.ts +101 -0
  190. package/dist/grid/Row.vue.d.ts +56 -0
  191. package/dist/grid/index.d.ts +7 -0
  192. package/dist/grid/index.js +2 -0
  193. package/dist/grid/index.mjs +182 -0
  194. package/dist/grid/responsive.d.ts +9 -0
  195. package/dist/grid/types.d.ts +85 -0
  196. package/dist/hooks/index.d.ts +3 -0
  197. package/dist/hooks/index.js +1 -0
  198. package/dist/hooks/index.mjs +9 -0
  199. package/dist/hooks/use-form-item.d.ts +13 -0
  200. package/dist/hooks/use-id.d.ts +5 -0
  201. package/dist/hooks/useCanvasRenderer.d.ts +10 -0
  202. package/dist/hooks/useImageLoader.d.ts +20 -0
  203. package/dist/hooks/useResizeObserver.d.ts +17 -0
  204. package/dist/icon/Icon.vue.d.ts +20 -0
  205. package/dist/icon/index.d.ts +5 -0
  206. package/dist/icon/index.js +2 -0
  207. package/dist/icon/index.mjs +10 -0
  208. package/dist/icon/types.d.ts +45 -0
  209. package/dist/image/Image.vue.d.ts +38 -0
  210. package/dist/image/index.d.ts +5 -0
  211. package/dist/image/index.js +2 -0
  212. package/dist/image/index.mjs +128 -0
  213. package/dist/image/types.d.ts +10 -0
  214. package/dist/index.d.ts +59 -0
  215. package/dist/index.js +1 -0
  216. package/dist/index.mjs +362 -0
  217. package/dist/input/Input.vue.d.ts +47 -0
  218. package/dist/input/index.d.ts +5 -0
  219. package/dist/input/index.js +2 -0
  220. package/dist/input/index.mjs +10 -0
  221. package/dist/input/types.d.ts +51 -0
  222. package/dist/input-number/InputNumber.vue.d.ts +119 -0
  223. package/dist/input-number/index.d.ts +5 -0
  224. package/dist/input-number/index.js +2 -0
  225. package/dist/input-number/index.mjs +312 -0
  226. package/dist/input-number/types.d.ts +58 -0
  227. package/dist/layout/Content.vue.d.ts +29 -0
  228. package/dist/layout/Footer.vue.d.ts +29 -0
  229. package/dist/layout/Header.vue.d.ts +29 -0
  230. package/dist/layout/Layout.vue.d.ts +32 -0
  231. package/dist/layout/Sider.vue.d.ts +59 -0
  232. package/dist/layout/index.d.ts +13 -0
  233. package/dist/layout/index.js +2 -0
  234. package/dist/layout/index.mjs +154 -0
  235. package/dist/layout/types.d.ts +51 -0
  236. package/dist/layout-system/responsive.d.ts +4 -0
  237. package/dist/layout-system/types.d.ts +3 -0
  238. package/dist/loading/Loading.vue.d.ts +57 -0
  239. package/dist/loading/LoadingMask.vue.d.ts +8 -0
  240. package/dist/loading/directive.d.ts +5 -0
  241. package/dist/loading/index.d.ts +7 -0
  242. package/dist/loading/index.js +2 -0
  243. package/dist/loading/index.mjs +275 -0
  244. package/dist/loading/types.d.ts +23 -0
  245. package/dist/mentions/Mentions.vue.d.ts +337 -0
  246. package/dist/mentions/index.d.ts +296 -0
  247. package/dist/mentions/index.js +5 -0
  248. package/dist/mentions/index.mjs +357 -0
  249. package/dist/mentions/types.d.ts +55 -0
  250. package/dist/menu/Menu.vue.d.ts +120 -0
  251. package/dist/menu/MenuDivider.vue.d.ts +2 -0
  252. package/dist/menu/MenuGroup.vue.d.ts +29 -0
  253. package/dist/menu/MenuItem.vue.d.ts +48 -0
  254. package/dist/menu/MenuNodeRenderer.vue.d.ts +6 -0
  255. package/dist/menu/SubMenu.vue.d.ts +57 -0
  256. package/dist/menu/index.d.ts +13 -0
  257. package/dist/menu/index.js +2 -0
  258. package/dist/menu/index.mjs +772 -0
  259. package/dist/menu/types.d.ts +126 -0
  260. package/dist/message/MessageHost.vue.d.ts +15 -0
  261. package/dist/message/MessageItem.vue.d.ts +15 -0
  262. package/dist/message/index.d.ts +10 -0
  263. package/dist/message/index.js +2 -0
  264. package/dist/message/index.mjs +199 -0
  265. package/dist/message/runtime.d.ts +149 -0
  266. package/dist/message/types.d.ts +12 -0
  267. package/dist/notification/NotificationHost.vue.d.ts +15 -0
  268. package/dist/notification/NotificationItem.vue.d.ts +15 -0
  269. package/dist/notification/index.d.ts +10 -0
  270. package/dist/notification/index.js +2 -0
  271. package/dist/notification/index.mjs +207 -0
  272. package/dist/notification/runtime.d.ts +155 -0
  273. package/dist/notification/types.d.ts +12 -0
  274. package/dist/otp-input/OTPInput.vue.d.ts +84 -0
  275. package/dist/otp-input/index.d.ts +5 -0
  276. package/dist/otp-input/index.js +2 -0
  277. package/dist/otp-input/index.mjs +216 -0
  278. package/dist/otp-input/types.d.ts +41 -0
  279. package/dist/pagination/Pagination.vue.d.ts +101 -0
  280. package/dist/pagination/index.d.ts +102 -0
  281. package/dist/pagination/index.js +2 -0
  282. package/dist/pagination/index.mjs +260 -0
  283. package/dist/pagination/types.d.ts +48 -0
  284. package/dist/popover/Popover.vue.d.ts +136 -0
  285. package/dist/popover/index.d.ts +5 -0
  286. package/dist/popover/index.js +2 -0
  287. package/dist/popover/index.mjs +13 -0
  288. package/dist/popover/types.d.ts +49 -0
  289. package/dist/radio/Radio.vue.d.ts +30 -0
  290. package/dist/radio/RadioGroup.vue.d.ts +26 -0
  291. package/dist/radio/constants.d.ts +3 -0
  292. package/dist/radio/index.d.ts +7 -0
  293. package/dist/radio/index.js +2 -0
  294. package/dist/radio/index.mjs +273 -0
  295. package/dist/radio/types.d.ts +45 -0
  296. package/dist/rate/Rate.vue.d.ts +139 -0
  297. package/dist/rate/index.d.ts +140 -0
  298. package/dist/rate/index.js +3 -0
  299. package/dist/rate/index.mjs +276 -0
  300. package/dist/rate/types.d.ts +66 -0
  301. package/dist/rich-text/RichText.vue.d.ts +25 -0
  302. package/dist/rich-text/index.d.ts +17 -0
  303. package/dist/rich-text/index.js +2 -0
  304. package/dist/rich-text/index.mjs +312 -0
  305. package/dist/scrollbar/Scrollbar.vue.d.ts +37 -0
  306. package/dist/scrollbar/index.d.ts +5 -0
  307. package/dist/scrollbar/index.js +2 -0
  308. package/dist/scrollbar/index.mjs +10 -0
  309. package/dist/scrollbar/types.d.ts +17 -0
  310. package/dist/select/Option.vue.d.ts +45 -0
  311. package/dist/select/Select.vue.d.ts +136 -0
  312. package/dist/select/index.d.ts +9 -0
  313. package/dist/select/index.js +3 -0
  314. package/dist/select/index.mjs +656 -0
  315. package/dist/select/types.d.ts +92 -0
  316. package/dist/slider/Slider.vue.d.ts +123 -0
  317. package/dist/slider/index.d.ts +5 -0
  318. package/dist/slider/index.js +2 -0
  319. package/dist/slider/index.mjs +326 -0
  320. package/dist/slider/types.d.ts +57 -0
  321. package/dist/space/Space.vue.d.ts +75 -0
  322. package/dist/space/index.d.ts +5 -0
  323. package/dist/space/index.js +2 -0
  324. package/dist/space/index.mjs +104 -0
  325. package/dist/space/types.d.ts +34 -0
  326. package/dist/splitter/Splitter.vue.d.ts +52 -0
  327. package/dist/splitter/SplitterPane.vue.d.ts +38 -0
  328. package/dist/splitter/index.d.ts +7 -0
  329. package/dist/splitter/index.js +2 -0
  330. package/dist/splitter/index.mjs +252 -0
  331. package/dist/splitter/types.d.ts +41 -0
  332. package/dist/splitter/utils.d.ts +6 -0
  333. package/dist/style/Button.css +1 -0
  334. package/dist/style/Checkbox.css +1 -0
  335. package/dist/style/Icon.css +1 -0
  336. package/dist/style/Input.css +1 -0
  337. package/dist/style/Popover.css +1 -0
  338. package/dist/style/Scrollbar.css +1 -0
  339. package/dist/style/TimePanel.css +1 -0
  340. package/dist/style/autocomplete.css +1 -0
  341. package/dist/style/avatar.css +1 -0
  342. package/dist/style/badge.css +1 -0
  343. package/dist/style/base.css +1 -0
  344. package/dist/style/breadcrumb.css +1 -0
  345. package/dist/style/card.css +1 -0
  346. package/dist/style/carousel.css +1 -0
  347. package/dist/style/cascader.css +1 -0
  348. package/dist/style/collapse.css +1 -0
  349. package/dist/style/color-picker.css +1 -0
  350. package/dist/style/context-menu.css +1 -0
  351. package/dist/style/date-picker.css +1 -0
  352. package/dist/style/dialog.css +1 -0
  353. package/dist/style/divider.css +1 -0
  354. package/dist/style/drawer.css +1 -0
  355. package/dist/style/empty.css +1 -0
  356. package/dist/style/form.css +1 -0
  357. package/dist/style/grid.css +1 -0
  358. package/dist/style/image.css +1 -0
  359. package/dist/style/index.css +1 -0
  360. package/dist/style/input-number.css +1 -0
  361. package/dist/style/layout.css +1 -0
  362. package/dist/style/loading.css +1 -0
  363. package/dist/style/mentions.css +1 -0
  364. package/dist/style/menu.css +1 -0
  365. package/dist/style/message.css +1 -0
  366. package/dist/style/notification.css +1 -0
  367. package/dist/style/otp-input.css +1 -0
  368. package/dist/style/pagination.css +1 -0
  369. package/dist/style/radio.css +1 -0
  370. package/dist/style/rate.css +1 -0
  371. package/dist/style/rich-text.css +1 -0
  372. package/dist/style/select.css +1 -0
  373. package/dist/style/slider.css +1 -0
  374. package/dist/style/space.css +1 -0
  375. package/dist/style/splitter.css +1 -0
  376. package/dist/style/switch.css +1 -0
  377. package/dist/style/table.css +1 -0
  378. package/dist/style/tabs.css +1 -0
  379. package/dist/style/tag.css +1 -0
  380. package/dist/style/tooltip.css +1 -0
  381. package/dist/style/transfer.css +1 -0
  382. package/dist/style/tree-select.css +1 -0
  383. package/dist/style/tree.css +1 -0
  384. package/dist/style/upload.css +1 -0
  385. package/dist/style/watermark.css +1 -0
  386. package/dist/switch/Switch.vue.d.ts +95 -0
  387. package/dist/switch/index.d.ts +5 -0
  388. package/dist/switch/index.js +2 -0
  389. package/dist/switch/index.mjs +285 -0
  390. package/dist/switch/types.d.ts +81 -0
  391. package/dist/table/Table.vue.d.ts +102 -0
  392. package/dist/table/index.d.ts +5 -0
  393. package/dist/table/index.js +2 -0
  394. package/dist/table/index.mjs +263 -0
  395. package/dist/table/types.d.ts +64 -0
  396. package/dist/tabs/TabPane.vue.d.ts +55 -0
  397. package/dist/tabs/Tabs.vue.d.ts +92 -0
  398. package/dist/tabs/index.d.ts +7 -0
  399. package/dist/tabs/index.js +2 -0
  400. package/dist/tabs/index.mjs +266 -0
  401. package/dist/tabs/types.d.ts +78 -0
  402. package/dist/tag/Tag.vue.d.ts +38 -0
  403. package/dist/tag/index.d.ts +5 -0
  404. package/dist/tag/index.js +2 -0
  405. package/dist/tag/index.mjs +123 -0
  406. package/dist/tag/types.d.ts +83 -0
  407. package/dist/time-picker/TimePanel.vue.d.ts +19 -0
  408. package/dist/time-picker/TimePicker.vue.d.ts +15 -0
  409. package/dist/time-picker/index.d.ts +6 -0
  410. package/dist/time-picker/index.js +4 -0
  411. package/dist/time-picker/index.mjs +91 -0
  412. package/dist/tooltip/Tooltip.vue.d.ts +99 -0
  413. package/dist/tooltip/index.d.ts +5 -0
  414. package/dist/tooltip/index.js +2 -0
  415. package/dist/tooltip/index.mjs +186 -0
  416. package/dist/tooltip/types.d.ts +37 -0
  417. package/dist/transfer/Transfer.vue.d.ts +104 -0
  418. package/dist/transfer/TransferPanel.vue.d.ts +90 -0
  419. package/dist/transfer/index.d.ts +167 -0
  420. package/dist/transfer/index.js +7 -0
  421. package/dist/transfer/index.mjs +343 -0
  422. package/dist/tree/Tree.vue.d.ts +237 -0
  423. package/dist/tree/TreeRow.vue.d.ts +24 -0
  424. package/dist/tree/TreeView.vue.d.ts +24 -0
  425. package/dist/tree/context.d.ts +3 -0
  426. package/dist/tree/index.d.ts +431 -0
  427. package/dist/tree/index.js +2 -0
  428. package/dist/tree/index.mjs +548 -0
  429. package/dist/tree/types.d.ts +127 -0
  430. package/dist/tree/use-tree-foundation.d.ts +37 -0
  431. package/dist/tree-select/TreeNode.vue.d.ts +7 -0
  432. package/dist/tree-select/TreeSelect.vue.d.ts +210 -0
  433. package/dist/tree-select/index.d.ts +7 -0
  434. package/dist/tree-select/index.js +3 -0
  435. package/dist/tree-select/index.mjs +799 -0
  436. package/dist/tree-select/types.d.ts +111 -0
  437. package/dist/upload/Upload.vue.d.ts +50 -0
  438. package/dist/upload/index.d.ts +67 -0
  439. package/dist/upload/index.js +3 -0
  440. package/dist/upload/index.mjs +271 -0
  441. package/dist/utils/install.d.ts +3 -0
  442. package/dist/utils/style.d.ts +1 -0
  443. package/dist/watermark/Watermark.vue.d.ts +98 -0
  444. package/dist/watermark/index.d.ts +5 -0
  445. package/dist/watermark/index.js +2 -0
  446. package/dist/watermark/index.mjs +183 -0
  447. package/dist/watermark/types.d.ts +85 -0
  448. package/package.json +69 -0
  449. package/src/autocomplete/style/index.css +80 -0
  450. package/src/avatar/style/index.css +105 -0
  451. package/src/badge/style/index.css +232 -0
  452. package/src/base.css +4 -0
  453. package/src/breadcrumb/style/index.css +75 -0
  454. package/src/button/style/index.css +242 -0
  455. package/src/card/style/index.css +60 -0
  456. package/src/carousel/style/index.css +195 -0
  457. package/src/cascader/style/index.css +153 -0
  458. package/src/checkbox/style/index.css +165 -0
  459. package/src/collapse/style/index.css +166 -0
  460. package/src/color-picker/style/index.css +132 -0
  461. package/src/context-menu/style/index.css +21 -0
  462. package/src/date-picker/style/index.css +372 -0
  463. package/src/dialog/style/index.css +141 -0
  464. package/src/divider/style/index.css +112 -0
  465. package/src/drawer/style/index.css +211 -0
  466. package/src/dropdown/style/index.css +118 -0
  467. package/src/empty/style/index.css +87 -0
  468. package/src/form/style/index.css +148 -0
  469. package/src/grid/style/index.css +16 -0
  470. package/src/icon/style/index.css +28 -0
  471. package/src/image/style/index.css +114 -0
  472. package/src/input/style/index.css +217 -0
  473. package/src/input-number/style/index.css +166 -0
  474. package/src/layout/style/index.css +37 -0
  475. package/src/loading/style/index.css +58 -0
  476. package/src/mentions/style/index.css +83 -0
  477. package/src/menu/style/index.css +300 -0
  478. package/src/message/style/index.css +109 -0
  479. package/src/notification/style/index.css +116 -0
  480. package/src/otp-input/style/index.css +96 -0
  481. package/src/pagination/style/index.css +96 -0
  482. package/src/popover/style/index.css +47 -0
  483. package/src/radio/style/index.css +185 -0
  484. package/src/rate/style/index.css +89 -0
  485. package/src/rich-text/style/index.css +154 -0
  486. package/src/scrollbar/style/index.css +57 -0
  487. package/src/select/style/index.css +262 -0
  488. package/src/slider/style/index.css +181 -0
  489. package/src/space/style/index.css +31 -0
  490. package/src/splitter/style/index.css +76 -0
  491. package/src/style.css +1 -0
  492. package/src/styles/reset.css +29 -0
  493. package/src/switch/style/index.css +164 -0
  494. package/src/table/style/index.css +108 -0
  495. package/src/tabs/style/index.css +270 -0
  496. package/src/tag/style/index.css +207 -0
  497. package/src/time-picker/style/index.css +135 -0
  498. package/src/tooltip/style/index.css +50 -0
  499. package/src/transfer/style/index.css +181 -0
  500. package/src/tree/style/index.css +246 -0
  501. package/src/tree-select/style/index.css +346 -0
  502. package/src/upload/style/index.css +166 -0
  503. package/src/watermark/style/index.css +15 -0
  504. package/style.css +1 -0
@@ -0,0 +1,167 @@
1
+ export declare const LTransfer: import('../utils/install').SFCWithInstall<{
2
+ new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
3
+ modelValue: {
4
+ type: import('vue').PropType<(string | number)[]>;
5
+ default: () => never[];
6
+ };
7
+ data: {
8
+ type: import('vue').PropType<import('../../../headless/src/index.ts').TransferDataItem[]>;
9
+ default: () => never[];
10
+ };
11
+ titles: {
12
+ type: import('vue').PropType<string[]>;
13
+ default: () => string[];
14
+ };
15
+ buttonTexts: {
16
+ type: import('vue').PropType<string[]>;
17
+ default: () => never[];
18
+ };
19
+ filterable: {
20
+ type: BooleanConstructor;
21
+ default: boolean;
22
+ };
23
+ filterPlaceholder: StringConstructor;
24
+ disabled: {
25
+ type: BooleanConstructor;
26
+ default: boolean;
27
+ };
28
+ size: {
29
+ type: import('vue').PropType<"sm" | "md" | "lg">;
30
+ default: string;
31
+ };
32
+ height: {
33
+ type: import('vue').PropType<string | number>;
34
+ };
35
+ }>> & Readonly<{
36
+ onChange?: ((val: (string | number)[]) => any) | undefined;
37
+ "onUpdate:modelValue"?: ((val: (string | number)[]) => any) | undefined;
38
+ "onLeft-check-change"?: ((keys: (string | number)[]) => any) | undefined;
39
+ "onRight-check-change"?: ((keys: (string | number)[]) => any) | undefined;
40
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
41
+ change: (val: (string | number)[]) => any;
42
+ "update:modelValue": (val: (string | number)[]) => any;
43
+ "left-check-change": (keys: (string | number)[]) => any;
44
+ "right-check-change": (keys: (string | number)[]) => any;
45
+ }, import('vue').PublicProps, {
46
+ data: import('../../../headless/src/index.ts').TransferDataItem[];
47
+ size: "sm" | "md" | "lg";
48
+ disabled: boolean;
49
+ modelValue: (string | number)[];
50
+ filterable: boolean;
51
+ titles: string[];
52
+ buttonTexts: string[];
53
+ }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, HTMLDivElement, import('vue').ComponentProvideOptions, {
54
+ P: {};
55
+ B: {};
56
+ D: {};
57
+ C: {};
58
+ M: {};
59
+ Defaults: {};
60
+ }, Readonly<import('vue').ExtractPropTypes<{
61
+ modelValue: {
62
+ type: import('vue').PropType<(string | number)[]>;
63
+ default: () => never[];
64
+ };
65
+ data: {
66
+ type: import('vue').PropType<import('../../../headless/src/index.ts').TransferDataItem[]>;
67
+ default: () => never[];
68
+ };
69
+ titles: {
70
+ type: import('vue').PropType<string[]>;
71
+ default: () => string[];
72
+ };
73
+ buttonTexts: {
74
+ type: import('vue').PropType<string[]>;
75
+ default: () => never[];
76
+ };
77
+ filterable: {
78
+ type: BooleanConstructor;
79
+ default: boolean;
80
+ };
81
+ filterPlaceholder: StringConstructor;
82
+ disabled: {
83
+ type: BooleanConstructor;
84
+ default: boolean;
85
+ };
86
+ size: {
87
+ type: import('vue').PropType<"sm" | "md" | "lg">;
88
+ default: string;
89
+ };
90
+ height: {
91
+ type: import('vue').PropType<string | number>;
92
+ };
93
+ }>> & Readonly<{
94
+ onChange?: ((val: (string | number)[]) => any) | undefined;
95
+ "onUpdate:modelValue"?: ((val: (string | number)[]) => any) | undefined;
96
+ "onLeft-check-change"?: ((keys: (string | number)[]) => any) | undefined;
97
+ "onRight-check-change"?: ((keys: (string | number)[]) => any) | undefined;
98
+ }>, {}, {}, {}, {}, {
99
+ data: import('../../../headless/src/index.ts').TransferDataItem[];
100
+ size: "sm" | "md" | "lg";
101
+ disabled: boolean;
102
+ modelValue: (string | number)[];
103
+ filterable: boolean;
104
+ titles: string[];
105
+ buttonTexts: string[];
106
+ }>;
107
+ __isFragment?: never;
108
+ __isTeleport?: never;
109
+ __isSuspense?: never;
110
+ } & import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
111
+ modelValue: {
112
+ type: import('vue').PropType<(string | number)[]>;
113
+ default: () => never[];
114
+ };
115
+ data: {
116
+ type: import('vue').PropType<import('../../../headless/src/index.ts').TransferDataItem[]>;
117
+ default: () => never[];
118
+ };
119
+ titles: {
120
+ type: import('vue').PropType<string[]>;
121
+ default: () => string[];
122
+ };
123
+ buttonTexts: {
124
+ type: import('vue').PropType<string[]>;
125
+ default: () => never[];
126
+ };
127
+ filterable: {
128
+ type: BooleanConstructor;
129
+ default: boolean;
130
+ };
131
+ filterPlaceholder: StringConstructor;
132
+ disabled: {
133
+ type: BooleanConstructor;
134
+ default: boolean;
135
+ };
136
+ size: {
137
+ type: import('vue').PropType<"sm" | "md" | "lg">;
138
+ default: string;
139
+ };
140
+ height: {
141
+ type: import('vue').PropType<string | number>;
142
+ };
143
+ }>> & Readonly<{
144
+ onChange?: ((val: (string | number)[]) => any) | undefined;
145
+ "onUpdate:modelValue"?: ((val: (string | number)[]) => any) | undefined;
146
+ "onLeft-check-change"?: ((keys: (string | number)[]) => any) | undefined;
147
+ "onRight-check-change"?: ((keys: (string | number)[]) => any) | undefined;
148
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
149
+ change: (val: (string | number)[]) => any;
150
+ "update:modelValue": (val: (string | number)[]) => any;
151
+ "left-check-change": (keys: (string | number)[]) => any;
152
+ "right-check-change": (keys: (string | number)[]) => any;
153
+ }, string, {
154
+ data: import('../../../headless/src/index.ts').TransferDataItem[];
155
+ size: "sm" | "md" | "lg";
156
+ disabled: boolean;
157
+ modelValue: (string | number)[];
158
+ filterable: boolean;
159
+ titles: string[];
160
+ buttonTexts: string[];
161
+ }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
162
+ $slots: {
163
+ leftFooter?(_: {}): any;
164
+ rightFooter?(_: {}): any;
165
+ };
166
+ })>;
167
+ export default LTransfer;
@@ -0,0 +1,7 @@
1
+ require('../style/transfer.css');
2
+ require('../style/Button.css');
3
+ require('../style/Icon.css');
4
+ require('../style/Checkbox.css');
5
+ require('../style/Input.css');
6
+ require('../style/Scrollbar.css');
7
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const D=require("../chunks/install-gnn2dOg9.js"),e=require("vue"),T=require("../chunks/style-CjCLKeeU.js");require("../chunks/manager-C0AUxQ1I.js");const b=require("../chunks/index-DWAWrVaT.js"),E=require("../chunks/use-id-BycaM3-h.js"),z=require("../chunks/use-signals-Bz1smiXh.js"),$=require("../chunks/use-form-item-CloIcyon.js"),I=require("../chunks/Button.vue_vue_type_script_setup_true_lang-Do1NtIFC.js"),K=require("../chunks/Icon.vue_vue_type_script_setup_true_lang-YDWguTmi.js"),B=require("../chunks/Checkbox.vue_vue_type_script_setup_true_lang-DxecbRJE.js"),A=require("../chunks/Input.vue_vue_type_script_setup_true_lang-8x2HE2Cj.js"),F=require("../chunks/Scrollbar.vue_vue_type_script_setup_true_lang-CtBz7Ha9.js");function q(l){const k=b.signal(l.data),r=b.signal(new Set(l.modelValue??[])),c=b.signal(new Set),f=b.signal(new Set),m=b.signal(0),u=b.signal(0),g=b.signal(typeof l.disabled=="function"?l.disabled():l.disabled??!1),C=t=>k.value.some(a=>a.key===t&&a.disabled),i=t=>Array.from(t).filter(a=>!C(a)),h=b.computed(()=>k.value.filter(t=>!r.value.has(t.key))),p=b.computed(()=>k.value.filter(t=>r.value.has(t.key))),w=(t,a,s)=>{const o=s==="up"?-1:1;let y=a+o;for(;y>=0&&y<t.length;){if(!t[y].disabled)return y;y+=o}return a};return{state:{get sourceData(){return h.value},get targetData(){return p.value},get leftCheckedKeys(){return Array.from(c.value)},get rightCheckedKeys(){return Array.from(f.value)},get disabled(){return g.value},get leftFocusedIndex(){return m.value},get rightFocusedIndex(){return u.value}},actions:{moveRight:()=>{var a;if(g.value)return;const t=new Set(r.value);i(c.value).forEach(s=>t.add(s)),r.value=t,c.value=new Set,(a=l.onChange)==null||a.call(l,Array.from(t))},moveLeft:()=>{var a;if(g.value)return;const t=new Set(r.value);i(f.value).forEach(s=>t.delete(s)),r.value=t,f.value=new Set,(a=l.onChange)==null||a.call(l,Array.from(t))},toggleCheck:(t,a)=>{if(g.value||C(t))return;const s=a==="left"?c:f,o=new Set(s.value);o.has(t)?o.delete(t):o.add(t),s.value=o},selectAll:(t,a)=>{if(g.value)return;const s=t==="left"?c:f,o=i(a),y=o.every(V=>s.value.has(V)),S=new Set(s.value);y?o.forEach(V=>S.delete(V)):o.forEach(V=>S.add(V)),s.value=S},setTargetKeys:t=>{r.value=new Set(t)},setData:t=>{k.value=t},setDisabled:t=>{g.value=t},moveFocus:(t,a)=>{const s=t==="left"?h.value:p.value,o=t==="left"?m:u;s.length!==0&&(o.value=w(s,o.value,a))},setFocusedIndex:(t,a)=>{const s=t==="left"?m:u;s.value=a}},getListProps:t=>({role:"listbox","aria-label":t==="left"?"源列表":"目标列表","aria-multiselectable":!0}),getItemProps:(t,a,s,o)=>{const y=t==="left"?c.value:f.value,S=t==="left"?m.value:u.value;return{role:"option","aria-selected":y.has(a),tabindex:S===s?0:-1,"aria-disabled":o||!1}}}}const P={class:"l-transfer-panel__header"},L={class:"l-transfer-panel__header-count"},M={key:0,class:"l-transfer-panel__filter"},R=["onKeydown","onClick"],U={key:1,class:"l-transfer-panel__empty"},j={key:1,class:"l-transfer-panel__footer"},_=e.defineComponent({__name:"TransferPanel",props:{title:String,data:{type:Array,default:()=>[]},checkedKeys:{type:Array,default:()=>[]},filterable:Boolean,placeholder:{type:String,default:"请输入搜索内容"},disabled:Boolean,controller:{type:Object,required:!0},side:{type:String,required:!0},size:{type:String,default:"md"}},emits:["update:checkedKeys","check","all-check"],setup(l,{emit:k}){const r=l,c=k,{leftFocusedIndex:f,rightFocusedIndex:m}=z.useController(r.controller),u=e.ref(""),g=e.computed(()=>r.side==="left"?f.value:m.value),C=e.computed(()=>u.value?r.data.filter(n=>n.label.toLowerCase().includes(u.value.toLowerCase())):r.data),i=e.computed(()=>C.value.filter(n=>!n.disabled)),h=e.computed(()=>i.value.map(n=>n.key)),p=e.computed(()=>h.value.length===0?!1:h.value.every(n=>r.checkedKeys.includes(n))),w=e.computed(()=>{const n=h.value.filter(t=>r.checkedKeys.includes(t)).length;return n>0&&n<h.value.length}),x=()=>{c("all-check",h.value)},v=n=>{n.disabled||r.disabled||c("check",n.key)},d=(n,t)=>({...r.controller.getItemProps(r.side,n.key,t,n.disabled),tabindex:g.value===t?0:-1});return(n,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["l-transfer-panel",[`l-transfer-panel--${l.size}`]])},[e.createElementVNode("div",P,[e.createVNode(B._sfc_main,{"model-value":p.value,indeterminate:w.value,disabled:l.disabled||h.value.length===0,"onUpdate:modelValue":x},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.title),1)]),_:1},8,["model-value","indeterminate","disabled"]),e.createElementVNode("span",L,e.toDisplayString(l.checkedKeys.length)+"/"+e.toDisplayString(l.data.length),1)]),l.filterable?(e.openBlock(),e.createElementBlock("div",M,[e.createVNode(A._sfc_main,{modelValue:u.value,"onUpdate:modelValue":t[0]||(t[0]=a=>u.value=a),size:l.size==="lg"?"md":"sm",placeholder:l.placeholder,disabled:l.disabled},{prefix:e.withCtx(()=>[e.createVNode(K._sfc_main,{name:"lucide:search"})]),_:1},8,["modelValue","size","placeholder","disabled"])])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["l-transfer-panel__body",{"has-footer":n.$slots.footer}])},[e.createVNode(F._sfc_main,null,{default:e.withCtx(()=>[C.value.length>0?(e.openBlock(),e.createElementBlock("ul",e.mergeProps({key:0,class:"l-transfer-panel__list"},l.controller.getListProps(l.side)),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(a,s)=>(e.openBlock(),e.createElementBlock("li",e.mergeProps({key:a.key,class:["l-transfer-panel__item",{"is-disabled":a.disabled||l.disabled}]},{ref_for:!0},d(a,s),{onKeydown:[e.withKeys(e.withModifiers(o=>v(a),["stop"]),["enter"]),e.withKeys(e.withModifiers(o=>v(a),["stop"]),["space"]),t[1]||(t[1]=e.withKeys(e.withModifiers(o=>l.controller.actions.moveFocus(l.side,"up"),["prevent"]),["up"])),t[2]||(t[2]=e.withKeys(e.withModifiers(o=>l.controller.actions.moveFocus(l.side,"down"),["prevent"]),["down"]))],onClick:o=>v(a)}),[e.createVNode(B._sfc_main,{"model-value":l.checkedKeys.includes(a.key),disabled:a.disabled||l.disabled,style:{"pointer-events":"none"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.label),1)]),_:2},1032,["model-value","disabled"])],16,R))),128))],16)):(e.openBlock(),e.createElementBlock("div",U," 无匹配数据 "))]),_:1})],2),n.$slots.footer?(e.openBlock(),e.createElementBlock("div",j,[e.renderSlot(n.$slots,"footer")])):e.createCommentVNode("",!0)],2))}}),O=["id","disabled"],G={class:"l-transfer__buttons"},H={key:0},J={key:0},Q=e.defineComponent({name:"LTransfer",__name:"Transfer",props:{modelValue:{type:Array,default:()=>[]},data:{type:Array,default:()=>[]},titles:{type:Array,default:()=>["列表 1","列表 2"]},buttonTexts:{type:Array,default:()=>[]},filterable:{type:Boolean,default:!1},filterPlaceholder:String,disabled:{type:Boolean,default:!1},size:{type:String,default:"md"},height:{type:[String,Number]}},emits:["update:modelValue","change","left-check-change","right-check-change"],setup(l,{emit:k}){const r=l,c=k,{formItem:f,disabled:m,inputId:u}=$.useFormItem(r),g=E.useId("transfer"),C=(u==null?void 0:u.value)||g,i=q({data:r.data,modelValue:r.modelValue,disabled:()=>m.value,onChange:d=>{c("update:modelValue",d),c("change",d),f==null||f.validate("change").catch(()=>{})}}),{sourceData:h,targetData:p,leftCheckedKeys:w,rightCheckedKeys:x,disabled:v}=z.useController(i,{modelValue:()=>r.modelValue,data:()=>r.data,disabled:()=>m.value});return e.watch(()=>r.data,d=>{i.actions.setData(d)},{deep:!0}),e.watch(()=>r.modelValue,d=>{i.actions.setTargetKeys(d)},{deep:!0}),e.watch(m,d=>{i.actions.setDisabled(d)},{immediate:!0}),e.watch(w,d=>c("left-check-change",d)),e.watch(x,d=>c("right-check-change",d)),(d,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["l-transfer",[`l-transfer--${l.size}`,{"is-disabled":e.unref(v)}]]),style:e.normalizeStyle({height:e.unref(T.addUnit)(l.height)})},[e.createElementVNode("input",{id:e.unref(C),type:"text",style:{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)","white-space":"nowrap",border:"0"},"aria-hidden":"true",tabindex:"-1",disabled:e.unref(v)},null,8,O),e.createVNode(_,{class:"l-transfer__panel",title:l.titles[0],data:e.unref(h),"checked-keys":e.unref(w),filterable:l.filterable,placeholder:l.filterPlaceholder,disabled:e.unref(v),controller:e.unref(i),side:"left",size:l.size,onCheck:n[0]||(n[0]=t=>e.unref(i).actions.toggleCheck(t,"left")),onAllCheck:n[1]||(n[1]=t=>e.unref(i).actions.selectAll("left",t))},e.createSlots({_:2},[d.$slots.leftFooter?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"leftFooter")]),key:"0"}:void 0]),1032,["title","data","checked-keys","filterable","placeholder","disabled","controller","size"]),e.createElementVNode("div",G,[e.createVNode(I._sfc_main,{size:l.size,disabled:e.unref(v)||e.unref(x).length===0,"aria-label":l.buttonTexts[0]||"向左穿梭",onClick:e.unref(i).actions.moveLeft},{default:e.withCtx(()=>[e.createVNode(K._sfc_main,{name:"lucide:chevron-left"}),l.buttonTexts[0]?(e.openBlock(),e.createElementBlock("span",H,e.toDisplayString(l.buttonTexts[0]),1)):e.createCommentVNode("",!0)]),_:1},8,["size","disabled","aria-label","onClick"]),e.createVNode(I._sfc_main,{size:l.size,disabled:e.unref(v)||e.unref(w).length===0,"aria-label":l.buttonTexts[1]||"向右穿梭",onClick:e.unref(i).actions.moveRight},{default:e.withCtx(()=>[l.buttonTexts[1]?(e.openBlock(),e.createElementBlock("span",J,e.toDisplayString(l.buttonTexts[1]),1)):e.createCommentVNode("",!0),e.createVNode(K._sfc_main,{name:"lucide:chevron-right"})]),_:1},8,["size","disabled","aria-label","onClick"])]),e.createVNode(_,{class:"l-transfer__panel",title:l.titles[1],data:e.unref(p),"checked-keys":e.unref(x),filterable:l.filterable,placeholder:l.filterPlaceholder,disabled:e.unref(v),controller:e.unref(i),side:"right",size:l.size,onCheck:n[2]||(n[2]=t=>e.unref(i).actions.toggleCheck(t,"right")),onAllCheck:n[3]||(n[3]=t=>e.unref(i).actions.selectAll("right",t))},e.createSlots({_:2},[d.$slots.rightFooter?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"rightFooter")]),key:"0"}:void 0]),1032,["title","data","checked-keys","filterable","placeholder","disabled","controller","size"])],6))}}),N=D.withInstall(Q);exports.LTransfer=N;exports.default=N;
@@ -0,0 +1,343 @@
1
+ import '../style/transfer.css';
2
+ import '../style/Button.css';
3
+ import '../style/Icon.css';
4
+ import '../style/Checkbox.css';
5
+ import '../style/Input.css';
6
+ import '../style/Scrollbar.css';
7
+ import { w as W } from "../chunks/install-DJNxamQ0.mjs";
8
+ import { defineComponent as J, ref as X, computed as p, openBlock as y, createElementBlock as k, normalizeClass as B, createElementVNode as F, createVNode as v, withCtx as S, createTextVNode as R, toDisplayString as A, createCommentVNode as E, mergeProps as U, Fragment as Y, renderList as Z, withKeys as L, withModifiers as P, renderSlot as N, watch as D, normalizeStyle as _, unref as n, createSlots as M } from "vue";
9
+ import { a as ee } from "../chunks/style-C-58-Hx4.mjs";
10
+ import "../chunks/manager-BUdQK4AD.mjs";
11
+ import { s as K, c as j } from "../chunks/index-B0yEC3RG.mjs";
12
+ import { u as te } from "../chunks/use-id-D3casveg.mjs";
13
+ import { u as Q } from "../chunks/use-signals-CE1T2jXK.mjs";
14
+ import { u as le } from "../chunks/use-form-item-CqDbWCiU.mjs";
15
+ import { _ as O } from "../chunks/Button.vue_vue_type_script_setup_true_lang-BthtEkGw.mjs";
16
+ import { _ as q } from "../chunks/Icon.vue_vue_type_script_setup_true_lang-LQ-KuJ6a.mjs";
17
+ import { _ as G } from "../chunks/Checkbox.vue_vue_type_script_setup_true_lang-fOXXjwnz.mjs";
18
+ import { _ as ae } from "../chunks/Input.vue_vue_type_script_setup_true_lang-PeDZ7smO.mjs";
19
+ import { _ as se } from "../chunks/Scrollbar.vue_vue_type_script_setup_true_lang-kKvR0Hz3.mjs";
20
+ function ne(t) {
21
+ const x = K(t.data), s = K(new Set(t.modelValue ?? [])), c = K(/* @__PURE__ */ new Set()), f = K(/* @__PURE__ */ new Set()), g = K(0), u = K(0), b = K(typeof t.disabled == "function" ? t.disabled() : t.disabled ?? !1), w = (e) => x.value.some((l) => l.key === e && l.disabled), i = (e) => Array.from(e).filter((l) => !w(l)), h = j(() => x.value.filter((e) => !s.value.has(e.key))), I = j(() => x.value.filter((e) => s.value.has(e.key))), $ = (e, l, r) => {
22
+ const d = r === "up" ? -1 : 1;
23
+ let C = l + d;
24
+ for (; C >= 0 && C < e.length; ) {
25
+ if (!e[C].disabled)
26
+ return C;
27
+ C += d;
28
+ }
29
+ return l;
30
+ };
31
+ return {
32
+ state: {
33
+ get sourceData() {
34
+ return h.value;
35
+ },
36
+ get targetData() {
37
+ return I.value;
38
+ },
39
+ get leftCheckedKeys() {
40
+ return Array.from(c.value);
41
+ },
42
+ get rightCheckedKeys() {
43
+ return Array.from(f.value);
44
+ },
45
+ get disabled() {
46
+ return b.value;
47
+ },
48
+ get leftFocusedIndex() {
49
+ return g.value;
50
+ },
51
+ get rightFocusedIndex() {
52
+ return u.value;
53
+ }
54
+ },
55
+ actions: {
56
+ moveRight: () => {
57
+ var l;
58
+ if (b.value) return;
59
+ const e = new Set(s.value);
60
+ i(c.value).forEach((r) => e.add(r)), s.value = e, c.value = /* @__PURE__ */ new Set(), (l = t.onChange) == null || l.call(t, Array.from(e));
61
+ },
62
+ moveLeft: () => {
63
+ var l;
64
+ if (b.value) return;
65
+ const e = new Set(s.value);
66
+ i(f.value).forEach((r) => e.delete(r)), s.value = e, f.value = /* @__PURE__ */ new Set(), (l = t.onChange) == null || l.call(t, Array.from(e));
67
+ },
68
+ toggleCheck: (e, l) => {
69
+ if (b.value || w(e)) return;
70
+ const r = l === "left" ? c : f, d = new Set(r.value);
71
+ d.has(e) ? d.delete(e) : d.add(e), r.value = d;
72
+ },
73
+ selectAll: (e, l) => {
74
+ if (b.value) return;
75
+ const r = e === "left" ? c : f, d = i(l), C = d.every((V) => r.value.has(V)), T = new Set(r.value);
76
+ C ? d.forEach((V) => T.delete(V)) : d.forEach((V) => T.add(V)), r.value = T;
77
+ },
78
+ setTargetKeys: (e) => {
79
+ s.value = new Set(e);
80
+ },
81
+ setData: (e) => {
82
+ x.value = e;
83
+ },
84
+ setDisabled: (e) => {
85
+ b.value = e;
86
+ },
87
+ moveFocus: (e, l) => {
88
+ const r = e === "left" ? h.value : I.value, d = e === "left" ? g : u;
89
+ r.length !== 0 && (d.value = $(r, d.value, l));
90
+ },
91
+ setFocusedIndex: (e, l) => {
92
+ const r = e === "left" ? g : u;
93
+ r.value = l;
94
+ }
95
+ },
96
+ getListProps: (e) => ({
97
+ role: "listbox",
98
+ "aria-label": e === "left" ? "源列表" : "目标列表",
99
+ "aria-multiselectable": !0
100
+ }),
101
+ getItemProps: (e, l, r, d) => {
102
+ const C = e === "left" ? c.value : f.value, T = e === "left" ? g.value : u.value;
103
+ return {
104
+ role: "option",
105
+ "aria-selected": C.has(l),
106
+ tabindex: T === r ? 0 : -1,
107
+ "aria-disabled": d || !1
108
+ };
109
+ }
110
+ };
111
+ }
112
+ const re = { class: "l-transfer-panel__header" }, de = { class: "l-transfer-panel__header-count" }, oe = {
113
+ key: 0,
114
+ class: "l-transfer-panel__filter"
115
+ }, ie = ["onKeydown", "onClick"], ce = {
116
+ key: 1,
117
+ class: "l-transfer-panel__empty"
118
+ }, ue = {
119
+ key: 1,
120
+ class: "l-transfer-panel__footer"
121
+ }, H = /* @__PURE__ */ J({
122
+ __name: "TransferPanel",
123
+ props: {
124
+ title: String,
125
+ data: { type: Array, default: () => [] },
126
+ checkedKeys: { type: Array, default: () => [] },
127
+ filterable: Boolean,
128
+ placeholder: { type: String, default: "请输入搜索内容" },
129
+ disabled: Boolean,
130
+ controller: { type: Object, required: !0 },
131
+ side: { type: String, required: !0 },
132
+ size: { type: String, default: "md" }
133
+ },
134
+ emits: ["update:checkedKeys", "check", "all-check"],
135
+ setup(t, { emit: x }) {
136
+ const s = t, c = x, { leftFocusedIndex: f, rightFocusedIndex: g } = Q(s.controller), u = X(""), b = p(() => s.side === "left" ? f.value : g.value), w = p(() => u.value ? s.data.filter((a) => a.label.toLowerCase().includes(u.value.toLowerCase())) : s.data), i = p(() => w.value.filter((a) => !a.disabled)), h = p(() => i.value.map((a) => a.key)), I = p(() => h.value.length === 0 ? !1 : h.value.every((a) => s.checkedKeys.includes(a))), $ = p(() => {
137
+ const a = h.value.filter((e) => s.checkedKeys.includes(e)).length;
138
+ return a > 0 && a < h.value.length;
139
+ }), z = () => {
140
+ c("all-check", h.value);
141
+ }, m = (a) => {
142
+ a.disabled || s.disabled || c("check", a.key);
143
+ }, o = (a, e) => ({
144
+ ...s.controller.getItemProps(s.side, a.key, e, a.disabled),
145
+ tabindex: b.value === e ? 0 : -1
146
+ });
147
+ return (a, e) => (y(), k("div", {
148
+ class: B(["l-transfer-panel", [`l-transfer-panel--${t.size}`]])
149
+ }, [
150
+ F("div", re, [
151
+ v(G, {
152
+ "model-value": I.value,
153
+ indeterminate: $.value,
154
+ disabled: t.disabled || h.value.length === 0,
155
+ "onUpdate:modelValue": z
156
+ }, {
157
+ default: S(() => [
158
+ R(A(t.title), 1)
159
+ ]),
160
+ _: 1
161
+ }, 8, ["model-value", "indeterminate", "disabled"]),
162
+ F("span", de, A(t.checkedKeys.length) + "/" + A(t.data.length), 1)
163
+ ]),
164
+ t.filterable ? (y(), k("div", oe, [
165
+ v(ae, {
166
+ modelValue: u.value,
167
+ "onUpdate:modelValue": e[0] || (e[0] = (l) => u.value = l),
168
+ size: t.size === "lg" ? "md" : "sm",
169
+ placeholder: t.placeholder,
170
+ disabled: t.disabled
171
+ }, {
172
+ prefix: S(() => [
173
+ v(q, { name: "lucide:search" })
174
+ ]),
175
+ _: 1
176
+ }, 8, ["modelValue", "size", "placeholder", "disabled"])
177
+ ])) : E("", !0),
178
+ F("div", {
179
+ class: B(["l-transfer-panel__body", { "has-footer": a.$slots.footer }])
180
+ }, [
181
+ v(se, null, {
182
+ default: S(() => [
183
+ w.value.length > 0 ? (y(), k("ul", U({
184
+ key: 0,
185
+ class: "l-transfer-panel__list"
186
+ }, t.controller.getListProps(t.side)), [
187
+ (y(!0), k(Y, null, Z(w.value, (l, r) => (y(), k("li", U({
188
+ key: l.key,
189
+ class: ["l-transfer-panel__item", { "is-disabled": l.disabled || t.disabled }]
190
+ }, { ref_for: !0 }, o(l, r), {
191
+ onKeydown: [
192
+ L(P((d) => m(l), ["stop"]), ["enter"]),
193
+ L(P((d) => m(l), ["stop"]), ["space"]),
194
+ e[1] || (e[1] = L(P((d) => t.controller.actions.moveFocus(t.side, "up"), ["prevent"]), ["up"])),
195
+ e[2] || (e[2] = L(P((d) => t.controller.actions.moveFocus(t.side, "down"), ["prevent"]), ["down"]))
196
+ ],
197
+ onClick: (d) => m(l)
198
+ }), [
199
+ v(G, {
200
+ "model-value": t.checkedKeys.includes(l.key),
201
+ disabled: l.disabled || t.disabled,
202
+ style: { "pointer-events": "none" }
203
+ }, {
204
+ default: S(() => [
205
+ R(A(l.label), 1)
206
+ ]),
207
+ _: 2
208
+ }, 1032, ["model-value", "disabled"])
209
+ ], 16, ie))), 128))
210
+ ], 16)) : (y(), k("div", ce, " 无匹配数据 "))
211
+ ]),
212
+ _: 1
213
+ })
214
+ ], 2),
215
+ a.$slots.footer ? (y(), k("div", ue, [
216
+ N(a.$slots, "footer")
217
+ ])) : E("", !0)
218
+ ], 2));
219
+ }
220
+ }), fe = ["id", "disabled"], he = { class: "l-transfer__buttons" }, me = { key: 0 }, ve = { key: 0 }, ge = /* @__PURE__ */ J({
221
+ name: "LTransfer",
222
+ __name: "Transfer",
223
+ props: {
224
+ modelValue: { type: Array, default: () => [] },
225
+ data: { type: Array, default: () => [] },
226
+ titles: { type: Array, default: () => ["列表 1", "列表 2"] },
227
+ buttonTexts: { type: Array, default: () => [] },
228
+ filterable: { type: Boolean, default: !1 },
229
+ filterPlaceholder: String,
230
+ disabled: { type: Boolean, default: !1 },
231
+ size: { type: String, default: "md" },
232
+ height: { type: [String, Number] }
233
+ },
234
+ emits: ["update:modelValue", "change", "left-check-change", "right-check-change"],
235
+ setup(t, { emit: x }) {
236
+ const s = t, c = x, { formItem: f, disabled: g, inputId: u } = le(s), b = te("transfer"), w = (u == null ? void 0 : u.value) || b, i = ne({
237
+ data: s.data,
238
+ modelValue: s.modelValue,
239
+ disabled: () => g.value,
240
+ onChange: (o) => {
241
+ c("update:modelValue", o), c("change", o), f == null || f.validate("change").catch(() => {
242
+ });
243
+ }
244
+ }), { sourceData: h, targetData: I, leftCheckedKeys: $, rightCheckedKeys: z, disabled: m } = Q(i, {
245
+ modelValue: () => s.modelValue,
246
+ data: () => s.data,
247
+ disabled: () => g.value
248
+ });
249
+ return D(() => s.data, (o) => {
250
+ i.actions.setData(o);
251
+ }, { deep: !0 }), D(() => s.modelValue, (o) => {
252
+ i.actions.setTargetKeys(o);
253
+ }, { deep: !0 }), D(g, (o) => {
254
+ i.actions.setDisabled(o);
255
+ }, { immediate: !0 }), D($, (o) => c("left-check-change", o)), D(z, (o) => c("right-check-change", o)), (o, a) => (y(), k("div", {
256
+ class: B(["l-transfer", [`l-transfer--${t.size}`, { "is-disabled": n(m) }]]),
257
+ style: _({ height: n(ee)(t.height) })
258
+ }, [
259
+ F("input", {
260
+ id: n(w),
261
+ type: "text",
262
+ style: { position: "absolute", width: "1px", height: "1px", padding: "0", margin: "-1px", overflow: "hidden", clip: "rect(0, 0, 0, 0)", "white-space": "nowrap", border: "0" },
263
+ "aria-hidden": "true",
264
+ tabindex: "-1",
265
+ disabled: n(m)
266
+ }, null, 8, fe),
267
+ v(H, {
268
+ class: "l-transfer__panel",
269
+ title: t.titles[0],
270
+ data: n(h),
271
+ "checked-keys": n($),
272
+ filterable: t.filterable,
273
+ placeholder: t.filterPlaceholder,
274
+ disabled: n(m),
275
+ controller: n(i),
276
+ side: "left",
277
+ size: t.size,
278
+ onCheck: a[0] || (a[0] = (e) => n(i).actions.toggleCheck(e, "left")),
279
+ onAllCheck: a[1] || (a[1] = (e) => n(i).actions.selectAll("left", e))
280
+ }, M({ _: 2 }, [
281
+ o.$slots.leftFooter ? {
282
+ name: "footer",
283
+ fn: S(() => [
284
+ N(o.$slots, "leftFooter")
285
+ ]),
286
+ key: "0"
287
+ } : void 0
288
+ ]), 1032, ["title", "data", "checked-keys", "filterable", "placeholder", "disabled", "controller", "size"]),
289
+ F("div", he, [
290
+ v(O, {
291
+ size: t.size,
292
+ disabled: n(m) || n(z).length === 0,
293
+ "aria-label": t.buttonTexts[0] || "向左穿梭",
294
+ onClick: n(i).actions.moveLeft
295
+ }, {
296
+ default: S(() => [
297
+ v(q, { name: "lucide:chevron-left" }),
298
+ t.buttonTexts[0] ? (y(), k("span", me, A(t.buttonTexts[0]), 1)) : E("", !0)
299
+ ]),
300
+ _: 1
301
+ }, 8, ["size", "disabled", "aria-label", "onClick"]),
302
+ v(O, {
303
+ size: t.size,
304
+ disabled: n(m) || n($).length === 0,
305
+ "aria-label": t.buttonTexts[1] || "向右穿梭",
306
+ onClick: n(i).actions.moveRight
307
+ }, {
308
+ default: S(() => [
309
+ t.buttonTexts[1] ? (y(), k("span", ve, A(t.buttonTexts[1]), 1)) : E("", !0),
310
+ v(q, { name: "lucide:chevron-right" })
311
+ ]),
312
+ _: 1
313
+ }, 8, ["size", "disabled", "aria-label", "onClick"])
314
+ ]),
315
+ v(H, {
316
+ class: "l-transfer__panel",
317
+ title: t.titles[1],
318
+ data: n(I),
319
+ "checked-keys": n(z),
320
+ filterable: t.filterable,
321
+ placeholder: t.filterPlaceholder,
322
+ disabled: n(m),
323
+ controller: n(i),
324
+ side: "right",
325
+ size: t.size,
326
+ onCheck: a[2] || (a[2] = (e) => n(i).actions.toggleCheck(e, "right")),
327
+ onAllCheck: a[3] || (a[3] = (e) => n(i).actions.selectAll("right", e))
328
+ }, M({ _: 2 }, [
329
+ o.$slots.rightFooter ? {
330
+ name: "footer",
331
+ fn: S(() => [
332
+ N(o.$slots, "rightFooter")
333
+ ]),
334
+ key: "0"
335
+ } : void 0
336
+ ]), 1032, ["title", "data", "checked-keys", "filterable", "placeholder", "disabled", "controller", "size"])
337
+ ], 6));
338
+ }
339
+ }), Te = W(ge);
340
+ export {
341
+ Te as LTransfer,
342
+ Te as default
343
+ };