@veltra/desktop 1.2.10 → 1.2.13

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 (449) hide show
  1. package/dist/components/action/action-group.js.map +1 -1
  2. package/dist/components/action/action-group.vue_vue_type_script_setup_true_lang.js +2 -2
  3. package/dist/components/action/action-group.vue_vue_type_script_setup_true_lang.js.map +1 -1
  4. package/dist/components/action/action.js +2 -2
  5. package/dist/components/action/action.js.map +1 -1
  6. package/dist/components/auto-complete/auto-complete.js +4 -4
  7. package/dist/components/auto-complete/auto-complete.js.map +1 -1
  8. package/dist/components/auto-complete/use-keyboard.js.map +1 -1
  9. package/dist/components/badge/badge.js +2 -2
  10. package/dist/components/badge/badge.js.map +1 -1
  11. package/dist/components/batch-edit/batch-edit-form.js +2 -2
  12. package/dist/components/batch-edit/batch-edit-form.js.map +1 -1
  13. package/dist/components/batch-edit/batch-edit-list.js +2 -2
  14. package/dist/components/batch-edit/batch-edit-list.js.map +1 -1
  15. package/dist/components/batch-edit/batch-edit.js +2 -2
  16. package/dist/components/batch-edit/batch-edit.js.map +1 -1
  17. package/dist/components/batch-edit/use-edit-state.js.map +1 -1
  18. package/dist/components/batch-edit/use-features.js.map +1 -1
  19. package/dist/components/batch-edit/use-handlers.js.map +1 -1
  20. package/dist/components/breadcrumb/breadcrumb.js +2 -2
  21. package/dist/components/breadcrumb/breadcrumb.js.map +1 -1
  22. package/dist/components/button/button-group.js +2 -2
  23. package/dist/components/button/button-group.js.map +1 -1
  24. package/dist/components/button/button.js +2 -2
  25. package/dist/components/button/button.js.map +1 -1
  26. package/dist/components/calendar/calendar.js +3 -3
  27. package/dist/components/calendar/calendar.js.map +1 -1
  28. package/dist/components/calendar/utils.js.map +1 -1
  29. package/dist/components/card/card-action.js +2 -2
  30. package/dist/components/card/card-action.js.map +1 -1
  31. package/dist/components/card/card-content.js +2 -2
  32. package/dist/components/card/card-content.js.map +1 -1
  33. package/dist/components/card/card-cover.js +2 -2
  34. package/dist/components/card/card-cover.js.map +1 -1
  35. package/dist/components/card/card-header.js +2 -2
  36. package/dist/components/card/card-header.js.map +1 -1
  37. package/dist/components/card/card.js +2 -2
  38. package/dist/components/card/card.js.map +1 -1
  39. package/dist/components/cascade/cascade-panel-item.js +1 -1
  40. package/dist/components/cascade/cascade-panel-item.js.map +1 -1
  41. package/dist/components/cascade/cascade.js +7 -3
  42. package/dist/components/cascade/cascade.js.map +1 -1
  43. package/dist/components/cascade/cascade.vue.d.ts +8 -5
  44. package/dist/components/cascade/use-check.js +3 -1
  45. package/dist/components/cascade/use-check.js.map +1 -1
  46. package/dist/components/cascade/use-data-map.js.map +1 -1
  47. package/dist/components/cascade/use-select.js +30 -14
  48. package/dist/components/cascade/use-select.js.map +1 -1
  49. package/dist/components/check-tag/check-tag.js +2 -2
  50. package/dist/components/check-tag/check-tag.js.map +1 -1
  51. package/dist/components/checkbox/checkbox-button.js +4 -4
  52. package/dist/components/checkbox/checkbox-button.js.map +1 -1
  53. package/dist/components/checkbox/checkbox.js +4 -4
  54. package/dist/components/checkbox/checkbox.js.map +1 -1
  55. package/dist/components/checkbox-group/checkbox-group.js +4 -4
  56. package/dist/components/checkbox-group/checkbox-group.js.map +1 -1
  57. package/dist/components/code-editor/basic-setup.js +44 -0
  58. package/dist/components/code-editor/basic-setup.js.map +1 -0
  59. package/dist/components/code-editor/code-editor.js +5 -5
  60. package/dist/components/code-editor/code-editor.js.map +1 -1
  61. package/dist/components/collapse/collapse-item.js +2 -2
  62. package/dist/components/collapse/collapse-item.js.map +1 -1
  63. package/dist/components/collapse/collapse.js +2 -2
  64. package/dist/components/collapse/collapse.js.map +1 -1
  65. package/dist/components/condition-editor/components/condition-group.js +2 -2
  66. package/dist/components/condition-editor/components/condition-group.js.map +1 -1
  67. package/dist/components/condition-editor/components/condition-row.js +2 -2
  68. package/dist/components/condition-editor/components/condition-row.js.map +1 -1
  69. package/dist/components/condition-editor/condition-editor.js +2 -2
  70. package/dist/components/condition-editor/condition-editor.js.map +1 -1
  71. package/dist/components/condition-editor/core/evaluator.js.map +1 -1
  72. package/dist/components/contextmenu/contextmenu-item.js +2 -2
  73. package/dist/components/contextmenu/contextmenu-item.js.map +1 -1
  74. package/dist/components/contextmenu/contextmenu-panel.js +2 -2
  75. package/dist/components/contextmenu/contextmenu-panel.js.map +1 -1
  76. package/dist/components/contextmenu/contextmenu-sub.js +2 -2
  77. package/dist/components/contextmenu/contextmenu-sub.js.map +1 -1
  78. package/dist/components/contextmenu/contextmenu.js +2 -2
  79. package/dist/components/contextmenu/contextmenu.js.map +1 -1
  80. package/dist/components/date-panel/date-panel.js +2 -2
  81. package/dist/components/date-panel/date-panel.js.map +1 -1
  82. package/dist/components/date-panel/headers/day.js +2 -2
  83. package/dist/components/date-panel/headers/day.js.map +1 -1
  84. package/dist/components/date-panel/headers/month.js +2 -2
  85. package/dist/components/date-panel/headers/month.js.map +1 -1
  86. package/dist/components/date-panel/headers/year.js +2 -2
  87. package/dist/components/date-panel/headers/year.js.map +1 -1
  88. package/dist/components/date-panel/panels/day.js +2 -2
  89. package/dist/components/date-panel/panels/day.js.map +1 -1
  90. package/dist/components/date-panel/panels/month.js +2 -2
  91. package/dist/components/date-panel/panels/month.js.map +1 -1
  92. package/dist/components/date-panel/panels/year.js +2 -2
  93. package/dist/components/date-panel/panels/year.js.map +1 -1
  94. package/dist/components/date-panel/use-panel-date.js.map +1 -1
  95. package/dist/components/date-picker/date-picker.js +2 -2
  96. package/dist/components/date-picker/date-picker.js.map +1 -1
  97. package/dist/components/date-range-picker/date-range-picker.js +2 -2
  98. package/dist/components/date-range-picker/date-range-picker.js.map +1 -1
  99. package/dist/components/dialog/dialog.js +4 -4
  100. package/dist/components/dialog/dialog.js.map +1 -1
  101. package/dist/components/drawer/drawer.js +4 -4
  102. package/dist/components/drawer/drawer.js.map +1 -1
  103. package/dist/components/dropdown/dropdown.js +2 -2
  104. package/dist/components/dropdown/dropdown.js.map +1 -1
  105. package/dist/components/dual-nav/dual-nav-app.js +2 -2
  106. package/dist/components/dual-nav/dual-nav-app.js.map +1 -1
  107. package/dist/components/dual-nav/dual-nav.js +2 -2
  108. package/dist/components/dual-nav/dual-nav.js.map +1 -1
  109. package/dist/components/empty/empty.js +2 -2
  110. package/dist/components/empty/empty.js.map +1 -1
  111. package/dist/components/expression-editor/components/path-preview.js +2 -2
  112. package/dist/components/expression-editor/components/path-preview.js.map +1 -1
  113. package/dist/components/expression-editor/components/variable-picker.js +2 -2
  114. package/dist/components/expression-editor/components/variable-picker.js.map +1 -1
  115. package/dist/components/expression-editor/core/editor.js.map +1 -1
  116. package/dist/components/expression-editor/core/model.js.map +1 -1
  117. package/dist/components/expression-editor/expression-editor.js +2 -2
  118. package/dist/components/expression-editor/expression-editor.js.map +1 -1
  119. package/dist/components/file-picker/file-picker.js +2 -2
  120. package/dist/components/file-picker/file-picker.js.map +1 -1
  121. package/dist/components/file-picker/helper.js.map +1 -1
  122. package/dist/components/file-viewer/file-viewer.js +4 -4
  123. package/dist/components/file-viewer/file-viewer.js.map +1 -1
  124. package/dist/components/file-viewer/helper.js.map +1 -1
  125. package/dist/components/file-viewer/previewers/docx-previewer.js +2 -2
  126. package/dist/components/file-viewer/previewers/docx-previewer.js.map +1 -1
  127. package/dist/components/file-viewer/previewers/image-previewer.js +2 -2
  128. package/dist/components/file-viewer/previewers/image-previewer.js.map +1 -1
  129. package/dist/components/file-viewer/previewers/pdf-previewer.js +2 -2
  130. package/dist/components/file-viewer/previewers/pdf-previewer.js.map +1 -1
  131. package/dist/components/file-viewer/previewers/pdf-viewport-scroll.js +2 -2
  132. package/dist/components/file-viewer/previewers/pdf-viewport-scroll.js.map +1 -1
  133. package/dist/components/file-viewer/previewers/pdf-zoom-bridge.js +2 -2
  134. package/dist/components/file-viewer/previewers/pdf-zoom-bridge.js.map +1 -1
  135. package/dist/components/file-viewer/previewers/sheet-previewer.js +2 -2
  136. package/dist/components/file-viewer/previewers/sheet-previewer.js.map +1 -1
  137. package/dist/components/file-viewer/previewers/text-previewer.js +2 -2
  138. package/dist/components/file-viewer/previewers/text-previewer.js.map +1 -1
  139. package/dist/components/file-viewer/previewers/video-previewer.js +2 -2
  140. package/dist/components/file-viewer/previewers/video-previewer.js.map +1 -1
  141. package/dist/components/file-viewer/sheet-parser.js.map +1 -1
  142. package/dist/components/float-button/float-button.js +2 -2
  143. package/dist/components/float-button/float-button.js.map +1 -1
  144. package/dist/components/form/form.js.map +1 -1
  145. package/dist/components/form/form.vue_vue_type_script_setup_true_lang.js +1 -1
  146. package/dist/components/form/form.vue_vue_type_script_setup_true_lang.js.map +1 -1
  147. package/dist/components/form/use-form-fields.js.map +1 -1
  148. package/dist/components/form/use-node-interceptor.js +1 -1
  149. package/dist/components/form/use-node-interceptor.js.map +1 -1
  150. package/dist/components/form-item/form-item.js.map +1 -1
  151. package/dist/components/form-item/form-item.vue_vue_type_script_setup_true_lang.js +1 -1
  152. package/dist/components/form-item/form-item.vue_vue_type_script_setup_true_lang.js.map +1 -1
  153. package/dist/components/form-item/validate.js.map +1 -1
  154. package/dist/components/gantt-chart/gantt-chart.js +2 -2
  155. package/dist/components/gantt-chart/gantt-chart.js.map +1 -1
  156. package/dist/components/grid/breakpoint.js.map +1 -1
  157. package/dist/components/grid/grid-item.js +2 -2
  158. package/dist/components/grid/grid-item.js.map +1 -1
  159. package/dist/components/grid/grid.js +2 -2
  160. package/dist/components/grid/grid.js.map +1 -1
  161. package/dist/components/grid-input/grid-input.js +2 -2
  162. package/dist/components/grid-input/grid-input.js.map +1 -1
  163. package/dist/components/grid-input/grid-input.vue.d.ts +1 -1
  164. package/dist/components/group-input/group-input.js +2 -2
  165. package/dist/components/group-input/group-input.js.map +1 -1
  166. package/dist/components/icon/icon.js +2 -2
  167. package/dist/components/icon/icon.js.map +1 -1
  168. package/dist/components/input/input.js.map +1 -1
  169. package/dist/components/input/input.vue_vue_type_script_setup_true_lang.js +1 -1
  170. package/dist/components/input/input.vue_vue_type_script_setup_true_lang.js.map +1 -1
  171. package/dist/components/kbd/kbd.js +2 -2
  172. package/dist/components/kbd/kbd.js.map +1 -1
  173. package/dist/components/layout/layout-resizer.js +2 -2
  174. package/dist/components/layout/layout-resizer.js.map +1 -1
  175. package/dist/components/layout/layout.js +2 -2
  176. package/dist/components/layout/layout.js.map +1 -1
  177. package/dist/components/list/list-item.js +2 -2
  178. package/dist/components/list/list-item.js.map +1 -1
  179. package/dist/components/list/list.js +2 -2
  180. package/dist/components/list/list.js.map +1 -1
  181. package/dist/components/loading/directive.js.map +1 -1
  182. package/dist/components/loading/loading.js +2 -2
  183. package/dist/components/loading/loading.js.map +1 -1
  184. package/dist/components/message/message-box.js +2 -2
  185. package/dist/components/message/message-box.js.map +1 -1
  186. package/dist/components/message/message.js +2 -2
  187. package/dist/components/message/message.js.map +1 -1
  188. package/dist/components/message/message2.js.map +1 -1
  189. package/dist/components/message-confirm/message-confirm.js +2 -2
  190. package/dist/components/message-confirm/message-confirm.js.map +1 -1
  191. package/dist/components/multi-select/multi-select-option.js +2 -2
  192. package/dist/components/multi-select/multi-select-option.js.map +1 -1
  193. package/dist/components/multi-select/multi-select.js +4 -4
  194. package/dist/components/multi-select/multi-select.js.map +1 -1
  195. package/dist/components/multi-tree-select/multi-tree-select.js +4 -4
  196. package/dist/components/multi-tree-select/multi-tree-select.js.map +1 -1
  197. package/dist/components/multi-tree-select/multi-tree-select.vue.d.ts +1 -1
  198. package/dist/components/nav/nav-icon.js +2 -2
  199. package/dist/components/nav/nav-icon.js.map +1 -1
  200. package/dist/components/nav/nav-item-collapsed.js +2 -2
  201. package/dist/components/nav/nav-item-collapsed.js.map +1 -1
  202. package/dist/components/nav/nav-item.js +2 -2
  203. package/dist/components/nav/nav-item.js.map +1 -1
  204. package/dist/components/nav/nav-sub-collapsed.js +2 -2
  205. package/dist/components/nav/nav-sub-collapsed.js.map +1 -1
  206. package/dist/components/nav/nav-sub.js +2 -2
  207. package/dist/components/nav/nav-sub.js.map +1 -1
  208. package/dist/components/nav/nav.js +2 -2
  209. package/dist/components/nav/nav.js.map +1 -1
  210. package/dist/components/notification/index.js.map +1 -1
  211. package/dist/components/notification/notification.js +2 -2
  212. package/dist/components/notification/notification.js.map +1 -1
  213. package/dist/components/number/number.js +2 -2
  214. package/dist/components/number/number.js.map +1 -1
  215. package/dist/components/number-input/number-input.js +4 -4
  216. package/dist/components/number-input/number-input.js.map +1 -1
  217. package/dist/components/number-range-input/number-range-input.js +4 -4
  218. package/dist/components/number-range-input/number-range-input.js.map +1 -1
  219. package/dist/components/number-range-input/number-range-input.vue.d.ts +1 -1
  220. package/dist/components/paginator/paginator.js +4 -4
  221. package/dist/components/paginator/paginator.js.map +1 -1
  222. package/dist/components/palette/color-transform.js.map +1 -1
  223. package/dist/components/palette/palette-alpha.js +2 -2
  224. package/dist/components/palette/palette-alpha.js.map +1 -1
  225. package/dist/components/palette/palette-color-switch.js +1 -1
  226. package/dist/components/palette/palette-color-switch.js.map +1 -1
  227. package/dist/components/palette/palette-hue.js +2 -2
  228. package/dist/components/palette/palette-hue.js.map +1 -1
  229. package/dist/components/palette/palette-sv.js +2 -2
  230. package/dist/components/palette/palette-sv.js.map +1 -1
  231. package/dist/components/palette/palette.js +3 -3
  232. package/dist/components/palette/palette.js.map +1 -1
  233. package/dist/components/palette/use-hsv.js.map +1 -1
  234. package/dist/components/password-input/password-input.js +3 -3
  235. package/dist/components/password-input/password-input.js.map +1 -1
  236. package/dist/components/pop-confirm/pop-confirm.js +2 -2
  237. package/dist/components/pop-confirm/pop-confirm.js.map +1 -1
  238. package/dist/components/progress/progress.js +2 -2
  239. package/dist/components/progress/progress.js.map +1 -1
  240. package/dist/components/progress-nodes/progress-nodes.js +2 -2
  241. package/dist/components/progress-nodes/progress-nodes.js.map +1 -1
  242. package/dist/components/progress-nodes/progress-nodes.vue.d.ts +1 -1
  243. package/dist/components/radio/radio.js +4 -4
  244. package/dist/components/radio/radio.js.map +1 -1
  245. package/dist/components/radio-group/radio-group.js +4 -4
  246. package/dist/components/radio-group/radio-group.js.map +1 -1
  247. package/dist/components/rich-text-editor/rich-text-editor.js +2 -2
  248. package/dist/components/rich-text-editor/rich-text-editor.js.map +1 -1
  249. package/dist/components/rich-text-editor/toolbar.js +1 -1
  250. package/dist/components/rich-text-editor/toolbar.js.map +1 -1
  251. package/dist/components/scroll/scroll-bar.js +2 -2
  252. package/dist/components/scroll/scroll-bar.js.map +1 -1
  253. package/dist/components/scroll/scroll.js +2 -2
  254. package/dist/components/scroll/scroll.js.map +1 -1
  255. package/dist/components/select/select.js +4 -4
  256. package/dist/components/select/select.js.map +1 -1
  257. package/dist/components/select/use-keyboard.js.map +1 -1
  258. package/dist/components/select/use-options.js.map +1 -1
  259. package/dist/components/slider/slider-thumb.js +1 -1
  260. package/dist/components/slider/slider-thumb.js.map +1 -1
  261. package/dist/components/slider/slider.js +2 -2
  262. package/dist/components/slider/slider.js.map +1 -1
  263. package/dist/components/steps/steps.js +2 -2
  264. package/dist/components/steps/steps.js.map +1 -1
  265. package/dist/components/steps/steps.vue.d.ts +2 -2
  266. package/dist/components/switch/switch.js +4 -4
  267. package/dist/components/switch/switch.js.map +1 -1
  268. package/dist/components/table/table-body.js +2 -2
  269. package/dist/components/table/table-body.js.map +1 -1
  270. package/dist/components/table/table-cell.js +2 -2
  271. package/dist/components/table/table-cell.js.map +1 -1
  272. package/dist/components/table/table-foot.js +2 -2
  273. package/dist/components/table/table-foot.js.map +1 -1
  274. package/dist/components/table/table-head.js.map +1 -1
  275. package/dist/components/table/table-row.js.map +1 -1
  276. package/dist/components/table/table.js +2 -2
  277. package/dist/components/table/table.js.map +1 -1
  278. package/dist/components/table/use-check.js.map +1 -1
  279. package/dist/components/table/use-col-resize.js.map +1 -1
  280. package/dist/components/table/use-columns.js.map +1 -1
  281. package/dist/components/table/use-rows.js.map +1 -1
  282. package/dist/components/table/use-table.js.map +1 -1
  283. package/dist/components/table-editor/table-editor.js +2 -2
  284. package/dist/components/table-editor/table-editor.js.map +1 -1
  285. package/dist/components/tabs/tabs-horizontal.js +4 -4
  286. package/dist/components/tabs/tabs-horizontal.js.map +1 -1
  287. package/dist/components/tabs/tabs-horizontal.vue.d.ts +3 -3
  288. package/dist/components/tabs/tabs-vertical.js +4 -4
  289. package/dist/components/tabs/tabs-vertical.js.map +1 -1
  290. package/dist/components/tabs/tabs-vertical.vue.d.ts +2 -2
  291. package/dist/components/tabs/tabs.js +4 -4
  292. package/dist/components/tabs/tabs.js.map +1 -1
  293. package/dist/components/tabs/tabs.vue.d.ts +3 -3
  294. package/dist/components/tag/tag.js +2 -2
  295. package/dist/components/tag/tag.js.map +1 -1
  296. package/dist/components/text/text.js +2 -2
  297. package/dist/components/text/text.js.map +1 -1
  298. package/dist/components/textarea/textarea.js +4 -4
  299. package/dist/components/textarea/textarea.js.map +1 -1
  300. package/dist/components/theme/theme.js +1 -1
  301. package/dist/components/theme/theme.js.map +1 -1
  302. package/dist/components/tip/tip.js +2 -2
  303. package/dist/components/tip/tip.js.map +1 -1
  304. package/dist/components/tip/use-nest.js.map +1 -1
  305. package/dist/components/tree/tree-node.js +2 -2
  306. package/dist/components/tree/tree-node.js.map +1 -1
  307. package/dist/components/tree/tree-node2.js.map +1 -1
  308. package/dist/components/tree/tree.js +2 -2
  309. package/dist/components/tree/tree.js.map +1 -1
  310. package/dist/components/tree/tree.vue.d.ts +1 -1
  311. package/dist/components/tree/use-check.js.map +1 -1
  312. package/dist/components/tree-select/tree-select.js +7 -6
  313. package/dist/components/tree-select/tree-select.js.map +1 -1
  314. package/dist/components/tree-select/tree-select.vue.d.ts +5 -4
  315. package/dist/components/watermark/watermark.js +2 -2
  316. package/dist/components/watermark/watermark.js.map +1 -1
  317. package/dist/types/cascade.d.ts +10 -6
  318. package/dist/types/tree-select.d.ts +2 -1
  319. package/package.json +24 -23
  320. package/src/components/action/action-group.vue +2 -2
  321. package/src/components/action/action.vue +1 -1
  322. package/src/components/auto-complete/auto-complete.vue +1 -1
  323. package/src/components/badge/badge.vue +1 -1
  324. package/src/components/batch-edit/batch-edit-form.vue +1 -1
  325. package/src/components/batch-edit/batch-edit-list.vue +1 -1
  326. package/src/components/batch-edit/batch-edit.vue +1 -1
  327. package/src/components/breadcrumb/breadcrumb.vue +1 -1
  328. package/src/components/button/button-group.vue +1 -1
  329. package/src/components/button/button.vue +1 -1
  330. package/src/components/calendar/calendar.vue +1 -1
  331. package/src/components/card/card-action.vue +1 -1
  332. package/src/components/card/card-content.vue +1 -1
  333. package/src/components/card/card-cover.vue +1 -1
  334. package/src/components/card/card-header.vue +1 -1
  335. package/src/components/card/card.vue +1 -1
  336. package/src/components/cascade/cascade.vue +3 -2
  337. package/src/components/cascade/use-check.ts +3 -1
  338. package/src/components/cascade/use-select.ts +43 -29
  339. package/src/components/check-tag/check-tag.vue +1 -1
  340. package/src/components/checkbox/checkbox-button.vue +1 -1
  341. package/src/components/checkbox/checkbox.vue +1 -1
  342. package/src/components/checkbox-group/checkbox-group.vue +1 -1
  343. package/src/components/code-editor/basic-setup.ts +63 -0
  344. package/src/components/code-editor/code-editor.vue +3 -3
  345. package/src/components/collapse/collapse-item.vue +1 -1
  346. package/src/components/collapse/collapse.vue +1 -1
  347. package/src/components/condition-editor/components/condition-group.vue +1 -1
  348. package/src/components/condition-editor/components/condition-row.vue +1 -1
  349. package/src/components/condition-editor/condition-editor.vue +1 -1
  350. package/src/components/contextmenu/contextmenu-item.vue +1 -1
  351. package/src/components/contextmenu/contextmenu-panel.vue +1 -1
  352. package/src/components/contextmenu/contextmenu-sub.vue +1 -1
  353. package/src/components/contextmenu/contextmenu.vue +1 -1
  354. package/src/components/date-panel/date-panel.vue +1 -1
  355. package/src/components/date-panel/headers/day.vue +1 -1
  356. package/src/components/date-panel/headers/month.vue +1 -1
  357. package/src/components/date-panel/headers/year.vue +1 -1
  358. package/src/components/date-panel/panels/day.vue +1 -1
  359. package/src/components/date-panel/panels/month.vue +1 -1
  360. package/src/components/date-panel/panels/year.vue +1 -1
  361. package/src/components/date-picker/date-picker.vue +1 -1
  362. package/src/components/date-range-picker/date-range-picker.vue +1 -1
  363. package/src/components/dialog/dialog.vue +1 -1
  364. package/src/components/drawer/drawer.vue +1 -1
  365. package/src/components/dropdown/dropdown.vue +1 -1
  366. package/src/components/dual-nav/dual-nav-app.vue +1 -1
  367. package/src/components/dual-nav/dual-nav.vue +1 -1
  368. package/src/components/empty/empty.vue +1 -1
  369. package/src/components/expression-editor/components/path-preview.vue +1 -1
  370. package/src/components/expression-editor/components/variable-picker.vue +1 -1
  371. package/src/components/expression-editor/expression-editor.vue +1 -1
  372. package/src/components/file-picker/file-picker.vue +1 -1
  373. package/src/components/file-viewer/file-viewer.vue +1 -1
  374. package/src/components/file-viewer/previewers/docx-previewer.vue +1 -1
  375. package/src/components/file-viewer/previewers/image-previewer.vue +1 -1
  376. package/src/components/file-viewer/previewers/pdf-previewer.vue +1 -1
  377. package/src/components/file-viewer/previewers/pdf-viewport-scroll.vue +1 -1
  378. package/src/components/file-viewer/previewers/pdf-zoom-bridge.vue +1 -1
  379. package/src/components/file-viewer/previewers/sheet-previewer.vue +1 -1
  380. package/src/components/file-viewer/previewers/text-previewer.vue +1 -1
  381. package/src/components/file-viewer/previewers/video-previewer.vue +1 -1
  382. package/src/components/float-button/float-button.vue +1 -1
  383. package/src/components/form/form.vue +1 -1
  384. package/src/components/form/use-node-interceptor.ts +2 -1
  385. package/src/components/form-item/form-item.vue +1 -1
  386. package/src/components/gantt-chart/gantt-chart.vue +1 -1
  387. package/src/components/grid/grid-item.vue +1 -1
  388. package/src/components/grid/grid.vue +1 -1
  389. package/src/components/grid-input/grid-input.vue +1 -1
  390. package/src/components/group-input/group-input.vue +1 -1
  391. package/src/components/icon/icon.vue +1 -1
  392. package/src/components/input/input.vue +1 -1
  393. package/src/components/kbd/kbd.vue +1 -1
  394. package/src/components/layout/layout-resizer.vue +1 -1
  395. package/src/components/layout/layout.vue +1 -1
  396. package/src/components/list/list-item.vue +1 -1
  397. package/src/components/list/list.vue +1 -1
  398. package/src/components/loading/loading.vue +1 -1
  399. package/src/components/message/message-box.vue +1 -1
  400. package/src/components/message/message.vue +1 -1
  401. package/src/components/message-confirm/message-confirm.vue +1 -1
  402. package/src/components/multi-select/multi-select-option.vue +1 -1
  403. package/src/components/multi-select/multi-select.vue +1 -1
  404. package/src/components/multi-tree-select/multi-tree-select.vue +1 -1
  405. package/src/components/nav/nav-icon.vue +1 -1
  406. package/src/components/nav/nav-item-collapsed.vue +1 -1
  407. package/src/components/nav/nav-item.vue +1 -1
  408. package/src/components/nav/nav-sub-collapsed.vue +1 -1
  409. package/src/components/nav/nav-sub.vue +1 -1
  410. package/src/components/nav/nav.vue +1 -1
  411. package/src/components/notification/notification.vue +1 -1
  412. package/src/components/number/number.vue +1 -1
  413. package/src/components/number-input/number-input.vue +1 -1
  414. package/src/components/number-range-input/number-range-input.vue +1 -1
  415. package/src/components/paginator/paginator.vue +1 -1
  416. package/src/components/palette/palette-alpha.vue +1 -1
  417. package/src/components/palette/palette-hue.vue +1 -1
  418. package/src/components/palette/palette-sv.vue +1 -1
  419. package/src/components/palette/palette.vue +1 -1
  420. package/src/components/password-input/password-input.vue +1 -1
  421. package/src/components/pop-confirm/pop-confirm.vue +1 -1
  422. package/src/components/progress/progress.vue +1 -1
  423. package/src/components/progress-nodes/progress-nodes.vue +1 -1
  424. package/src/components/radio/radio.vue +1 -1
  425. package/src/components/radio-group/radio-group.vue +1 -1
  426. package/src/components/scroll/scroll-bar.vue +1 -1
  427. package/src/components/scroll/scroll.vue +1 -1
  428. package/src/components/select/select.vue +1 -1
  429. package/src/components/slider/slider.vue +1 -1
  430. package/src/components/steps/steps.vue +1 -1
  431. package/src/components/switch/switch.vue +1 -1
  432. package/src/components/table/table-body.vue +1 -1
  433. package/src/components/table/table-cell.vue +1 -1
  434. package/src/components/table/table-foot.vue +1 -1
  435. package/src/components/table/table.vue +1 -1
  436. package/src/components/table-editor/table-editor.vue +1 -1
  437. package/src/components/tabs/tabs-horizontal.vue +1 -1
  438. package/src/components/tabs/tabs-vertical.vue +1 -1
  439. package/src/components/tabs/tabs.vue +1 -1
  440. package/src/components/tag/tag.vue +1 -1
  441. package/src/components/text/text.vue +1 -1
  442. package/src/components/textarea/textarea.vue +1 -1
  443. package/src/components/tip/tip.vue +1 -1
  444. package/src/components/tree/tree-node.vue +1 -1
  445. package/src/components/tree/tree.vue +1 -1
  446. package/src/components/tree-select/tree-select.vue +3 -3
  447. package/src/components/watermark/watermark.vue +1 -1
  448. package/src/types/cascade.ts +10 -6
  449. package/src/types/tree-select.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"use-check.js","names":[],"sources":["../../../src/components/tree/use-check.ts"],"sourcesContent":["import { dfs, o } from '@cat-kit/core'\nimport { nextTick, watch, type ComputedRef } from 'vue'\n\nimport type { TreeEmit, TreeProps } from '../../types'\nimport type { TreeNode } from './tree-node'\n\ninterface Options {\n emit: TreeEmit\n props: TreeProps\n nodeDict: ComputedRef<Map<any, TreeNode>>\n getFlattedNodes: () => void\n}\n\ninterface UseCheckReturned {\n checkedData: Set<Record<string, any>>\n toggleCheck: (node: TreeNode, check: boolean, ctrlKey?: boolean) => void\n}\n\n/**\n * 展开目标节点的所有祖先。返回是否发生了实际展开。\n */\nfunction expandAncestors(node: TreeNode): boolean {\n let changed = false\n node.bubbleSet((n) => {\n if (n.parent) {\n if (n.parent.expanded) return false\n n.parent.expanded = true\n changed = true\n }\n })\n return changed\n}\n\nexport function useCheck(options: Options): UseCheckReturned {\n const { emit, props, nodeDict, getFlattedNodes } = options\n\n const checkedData = new Set<Record<string, any>>()\n\n /**\n * 上一次回显使用的 value 集合(仅限 props.checked)。\n * 用于在相同 `nodeDict` 下走差集回显,避免每次全量清空再重建。\n */\n let lastCheckedSet = new Set<unknown>()\n /** 最近一次参与差集比较的 nodeDict 引用;引用变化时视为整棵树重建。 */\n let lastDict: Map<any, TreeNode> | null = null\n\n function checkNode(node: TreeNode): void {\n if (node.checked) return\n node.checked = true\n if (node.parent) {\n node.parent.childrenCheckCount++\n }\n checkedData.add(node.data)\n }\n\n function uncheckNode(node: TreeNode): void {\n if (!node.checked) return\n node.checked = false\n if (node.parent) {\n node.parent.childrenCheckCount--\n }\n checkedData.delete(node.data)\n }\n\n /**\n * 模型值是否由事件触发\n */\n let checkedByEvent = false\n\n // 回显\n watch(\n [() => props.checked, nodeDict],\n ([c, dict]) => {\n // 事件已经触发模型变更了,所以不再进行下面的计算\n if (checkedByEvent || !props.checkable) return\n if (!dict.size) return\n\n const nextSet = new Set<unknown>(c ?? [])\n\n // 森林重建(dict 引用变化)→ 走全量清空重建路径,\n // 因为所有 TreeNode 实例都是新的,上一轮缓存的 lastCheckedSet 失效。\n const dictChanged = dict !== lastDict\n if (dictChanged) {\n checkedData.clear()\n lastCheckedSet = new Set()\n }\n\n let mutated = false\n\n // 取消:上一轮有但本轮没有的 value\n for (const v of lastCheckedSet) {\n if (!nextSet.has(v)) {\n const node = dict.get(v)\n if (node) {\n uncheckNode(node)\n mutated = true\n }\n }\n }\n\n // 新增:本轮有但上一轮没有的 value\n let ancestorsExpanded = false\n for (const v of nextSet) {\n if (!lastCheckedSet.has(v) || dictChanged) {\n const node = dict.get(v)\n if (node) {\n checkNode(node)\n mutated = true\n if (expandAncestors(node)) {\n ancestorsExpanded = true\n }\n }\n }\n }\n\n lastCheckedSet = nextSet\n lastDict = dict\n\n // 只在真实发生变化时才触发扁平化,避免空转。\n if (mutated || ancestorsExpanded) {\n getFlattedNodes()\n }\n },\n { immediate: true }\n )\n\n function handleCheck(node: TreeNode, ctrlKey?: boolean) {\n const { checkStrictly } = props\n\n if (ctrlKey) {\n checkNode(node)\n } else {\n dfs(\n node as unknown as Record<string, unknown>,\n (n) => {\n const tn = n as unknown as TreeNode\n !tn.disabled && checkNode(tn)\n },\n props.childrenKey ?? 'children'\n )\n }\n\n // 非严格选择时还需要更新祖先节点,\n // 一旦子节点全部选中,父节点也要设置为选中状态\n if (!checkStrictly) {\n node.bubbleSet((node) => {\n const { parent } = node\n\n if (parent) {\n const parentChecked = parent.childrenCheckCount === parent.children!.length\n\n parentChecked ? checkNode(parent) : uncheckNode(parent)\n }\n })\n }\n }\n\n function handleUncheck(node: TreeNode, ctrlKey?: boolean) {\n const { checkStrictly } = props\n if (ctrlKey) {\n uncheckNode(node)\n } else {\n dfs(\n node as unknown as Record<string, unknown>,\n (n) => {\n const tn = n as unknown as TreeNode\n !tn.disabled && uncheckNode(tn)\n },\n props.childrenKey ?? 'children'\n )\n }\n\n // 非严格模式下,取消选中时,需要更新父节点\n if (!checkStrictly) {\n node.bubbleSet((node) => {\n const { parent } = node\n if (parent) {\n uncheckNode(parent)\n }\n })\n }\n }\n\n function toggleCheck(node: TreeNode, check: boolean, ctrlKey?: boolean) {\n checkedByEvent = true\n\n check ? handleCheck(node, ctrlKey) : handleUncheck(node, ctrlKey)\n\n const checkedArr = Array.from(checkedData)\n\n const valueKey = props.valueKey!\n const nextValues = checkedArr.map((item) => o(item).get(valueKey) as unknown)\n\n // 与外部 checked 保持差集缓存同步,避免下一次 watch 回调把刚勾选的值又误判为“新增”。\n lastCheckedSet = new Set(nextValues)\n\n emit('update:checked', nextValues as any[], checkedArr)\n\n nextTick(() => {\n checkedByEvent = false\n })\n }\n\n return { checkedData, toggleCheck }\n}\n"],"mappings":";;;;;;AAqBA,SAAS,gBAAgB,MAAyB;CAChD,IAAI,UAAU;CACd,KAAK,WAAW,MAAM;EACpB,IAAI,EAAE,QAAQ;GACZ,IAAI,EAAE,OAAO,UAAU,OAAO;GAC9B,EAAE,OAAO,WAAW;GACpB,UAAU;EACZ;CACF,CAAC;CACD,OAAO;AACT;AAEA,SAAgB,SAAS,SAAoC;CAC3D,MAAM,EAAE,MAAM,OAAO,UAAU,oBAAoB;CAEnD,MAAM,8BAAc,IAAI,IAAyB;;;;;CAMjD,IAAI,iCAAiB,IAAI,IAAa;;CAEtC,IAAI,WAAsC;CAE1C,SAAS,UAAU,MAAsB;EACvC,IAAI,KAAK,SAAS;EAClB,KAAK,UAAU;EACf,IAAI,KAAK,QACP,KAAK,OAAO;EAEd,YAAY,IAAI,KAAK,IAAI;CAC3B;CAEA,SAAS,YAAY,MAAsB;EACzC,IAAI,CAAC,KAAK,SAAS;EACnB,KAAK,UAAU;EACf,IAAI,KAAK,QACP,KAAK,OAAO;EAEd,YAAY,OAAO,KAAK,IAAI;CAC9B;;;;CAKA,IAAI,iBAAiB;CAGrB,MACE,OAAO,MAAM,SAAS,QAAQ,IAC7B,CAAC,GAAG,UAAU;EAEb,IAAI,kBAAkB,CAAC,MAAM,WAAW;EACxC,IAAI,CAAC,KAAK,MAAM;EAEhB,MAAM,UAAU,IAAI,IAAa,KAAK,CAAC,CAAC;EAIxC,MAAM,cAAc,SAAS;EAC7B,IAAI,aAAa;GACf,YAAY,MAAM;GAClB,iCAAiB,IAAI,IAAI;EAC3B;EAEA,IAAI,UAAU;EAGd,KAAK,MAAM,KAAK,gBACd,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG;GACnB,MAAM,OAAO,KAAK,IAAI,CAAC;GACvB,IAAI,MAAM;IACR,YAAY,IAAI;IAChB,UAAU;GACZ;EACF;EAIF,IAAI,oBAAoB;EACxB,KAAK,MAAM,KAAK,SACd,IAAI,CAAC,eAAe,IAAI,CAAC,KAAK,aAAa;GACzC,MAAM,OAAO,KAAK,IAAI,CAAC;GACvB,IAAI,MAAM;IACR,UAAU,IAAI;IACd,UAAU;IACV,IAAI,gBAAgB,IAAI,GACtB,oBAAoB;GAExB;EACF;EAGF,iBAAiB;EACjB,WAAW;EAGX,IAAI,WAAW,mBACb,gBAAgB;CAEpB,GACA,EAAE,WAAW,KAAK,CACpB;CAEA,SAAS,YAAY,MAAgB,SAAmB;EACtD,MAAM,EAAE,kBAAkB;EAE1B,IAAI,SACF,UAAU,IAAI;OAEd,IACE,OACC,MAAM;GACL,MAAM,KAAK;GACX,CAAC,GAAG,YAAY,UAAU,EAAE;EAC9B,GACA,MAAM,eAAe,UACvB;EAKF,IAAI,CAAC,eACH,KAAK,WAAW,SAAS;GACvB,MAAM,EAAE,WAAW;GAEnB,IAAI,QAGF,OAF6B,uBAAuB,OAAO,SAAU,SAErD,UAAU,MAAM,IAAI,YAAY,MAAM;EAE1D,CAAC;CAEL;CAEA,SAAS,cAAc,MAAgB,SAAmB;EACxD,MAAM,EAAE,kBAAkB;EAC1B,IAAI,SACF,YAAY,IAAI;OAEhB,IACE,OACC,MAAM;GACL,MAAM,KAAK;GACX,CAAC,GAAG,YAAY,YAAY,EAAE;EAChC,GACA,MAAM,eAAe,UACvB;EAIF,IAAI,CAAC,eACH,KAAK,WAAW,SAAS;GACvB,MAAM,EAAE,WAAW;GACnB,IAAI,QACF,YAAY,MAAM;EAEtB,CAAC;CAEL;CAEA,SAAS,YAAY,MAAgB,OAAgB,SAAmB;EACtE,iBAAiB;EAEjB,QAAQ,YAAY,MAAM,OAAO,IAAI,cAAc,MAAM,OAAO;EAEhE,MAAM,aAAa,MAAM,KAAK,WAAW;EAEzC,MAAM,WAAW,MAAM;EACvB,MAAM,aAAa,WAAW,KAAK,SAAS,EAAE,IAAI,EAAE,IAAI,QAAQ,CAAY;EAG5E,iBAAiB,IAAI,IAAI,UAAU;EAEnC,KAAK,kBAAkB,YAAqB,UAAU;EAEtD,eAAe;GACb,iBAAiB;EACnB,CAAC;CACH;CAEA,OAAO;EAAE;EAAa;CAAY;AACpC"}
1
+ {"version":3,"file":"use-check.js","names":[],"sources":["../../../src/components/tree/use-check.ts"],"sourcesContent":["import { dfs, o } from '@cat-kit/core'\nimport { nextTick, watch, type ComputedRef } from 'vue'\n\nimport type { TreeEmit, TreeProps } from '../../types'\nimport type { TreeNode } from './tree-node'\n\ninterface Options {\n emit: TreeEmit\n props: TreeProps\n nodeDict: ComputedRef<Map<any, TreeNode>>\n getFlattedNodes: () => void\n}\n\ninterface UseCheckReturned {\n checkedData: Set<Record<string, any>>\n toggleCheck: (node: TreeNode, check: boolean, ctrlKey?: boolean) => void\n}\n\n/**\n * 展开目标节点的所有祖先。返回是否发生了实际展开。\n */\nfunction expandAncestors(node: TreeNode): boolean {\n let changed = false\n node.bubbleSet((n) => {\n if (n.parent) {\n if (n.parent.expanded) return false\n n.parent.expanded = true\n changed = true\n }\n })\n return changed\n}\n\nexport function useCheck(options: Options): UseCheckReturned {\n const { emit, props, nodeDict, getFlattedNodes } = options\n\n const checkedData = new Set<Record<string, any>>()\n\n /**\n * 上一次回显使用的 value 集合(仅限 props.checked)。\n * 用于在相同 `nodeDict` 下走差集回显,避免每次全量清空再重建。\n */\n let lastCheckedSet = new Set<unknown>()\n /** 最近一次参与差集比较的 nodeDict 引用;引用变化时视为整棵树重建。 */\n let lastDict: Map<any, TreeNode> | null = null\n\n function checkNode(node: TreeNode): void {\n if (node.checked) return\n node.checked = true\n if (node.parent) {\n node.parent.childrenCheckCount++\n }\n checkedData.add(node.data)\n }\n\n function uncheckNode(node: TreeNode): void {\n if (!node.checked) return\n node.checked = false\n if (node.parent) {\n node.parent.childrenCheckCount--\n }\n checkedData.delete(node.data)\n }\n\n /**\n * 模型值是否由事件触发\n */\n let checkedByEvent = false\n\n // 回显\n watch(\n [() => props.checked, nodeDict],\n ([c, dict]) => {\n // 事件已经触发模型变更了,所以不再进行下面的计算\n if (checkedByEvent || !props.checkable) return\n if (!dict.size) return\n\n const nextSet = new Set<unknown>(c ?? [])\n\n // 森林重建(dict 引用变化)→ 走全量清空重建路径,\n // 因为所有 TreeNode 实例都是新的,上一轮缓存的 lastCheckedSet 失效。\n const dictChanged = dict !== lastDict\n if (dictChanged) {\n checkedData.clear()\n lastCheckedSet = new Set()\n }\n\n let mutated = false\n\n // 取消:上一轮有但本轮没有的 value\n for (const v of lastCheckedSet) {\n if (!nextSet.has(v)) {\n const node = dict.get(v)\n if (node) {\n uncheckNode(node)\n mutated = true\n }\n }\n }\n\n // 新增:本轮有但上一轮没有的 value\n let ancestorsExpanded = false\n for (const v of nextSet) {\n if (!lastCheckedSet.has(v) || dictChanged) {\n const node = dict.get(v)\n if (node) {\n checkNode(node)\n mutated = true\n if (expandAncestors(node)) {\n ancestorsExpanded = true\n }\n }\n }\n }\n\n lastCheckedSet = nextSet\n lastDict = dict\n\n // 只在真实发生变化时才触发扁平化,避免空转。\n if (mutated || ancestorsExpanded) {\n getFlattedNodes()\n }\n },\n { immediate: true }\n )\n\n function handleCheck(node: TreeNode, ctrlKey?: boolean) {\n const { checkStrictly } = props\n\n if (ctrlKey) {\n checkNode(node)\n } else {\n dfs(\n node as unknown as Record<string, unknown>,\n (n) => {\n const tn = n as unknown as TreeNode\n !tn.disabled && checkNode(tn)\n },\n props.childrenKey ?? 'children'\n )\n }\n\n // 非严格选择时还需要更新祖先节点,\n // 一旦子节点全部选中,父节点也要设置为选中状态\n if (!checkStrictly) {\n node.bubbleSet((node) => {\n const { parent } = node\n\n if (parent) {\n const parentChecked = parent.childrenCheckCount === parent.children!.length\n\n parentChecked ? checkNode(parent) : uncheckNode(parent)\n }\n })\n }\n }\n\n function handleUncheck(node: TreeNode, ctrlKey?: boolean) {\n const { checkStrictly } = props\n if (ctrlKey) {\n uncheckNode(node)\n } else {\n dfs(\n node as unknown as Record<string, unknown>,\n (n) => {\n const tn = n as unknown as TreeNode\n !tn.disabled && uncheckNode(tn)\n },\n props.childrenKey ?? 'children'\n )\n }\n\n // 非严格模式下,取消选中时,需要更新父节点\n if (!checkStrictly) {\n node.bubbleSet((node) => {\n const { parent } = node\n if (parent) {\n uncheckNode(parent)\n }\n })\n }\n }\n\n function toggleCheck(node: TreeNode, check: boolean, ctrlKey?: boolean) {\n checkedByEvent = true\n\n check ? handleCheck(node, ctrlKey) : handleUncheck(node, ctrlKey)\n\n const checkedArr = Array.from(checkedData)\n\n const valueKey = props.valueKey!\n const nextValues = checkedArr.map((item) => o(item).get(valueKey) as unknown)\n\n // 与外部 checked 保持差集缓存同步,避免下一次 watch 回调把刚勾选的值又误判为“新增”。\n lastCheckedSet = new Set(nextValues)\n\n emit('update:checked', nextValues as any[], checkedArr)\n\n nextTick(() => {\n checkedByEvent = false\n })\n }\n\n return { checkedData, toggleCheck }\n}\n"],"mappings":"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"}
@@ -8,10 +8,10 @@ import { FORM_EMPTY_CONTENT, bem, injectFormContext } from "@veltra/utils";
8
8
  import { ArrowDown, Search } from "@veltra/icons/normal";
9
9
  import { dfs, o } from "@cat-kit/core";
10
10
  //#region src/components/tree-select/tree-select.vue
11
- const _sfc_main = /* @__PURE__ */ defineComponent({
12
- name: "TreeSelect",
11
+ const _sfc_main = /*@__PURE__*/ defineComponent({
12
+ name: "UTreeSelect",
13
13
  __name: "tree-select",
14
- props: /* @__PURE__ */ mergeModels({
14
+ props: /*@__PURE__*/ mergeModels({
15
15
  modelValue: {},
16
16
  placeholder: { default: "请选择" },
17
17
  clearable: {
@@ -58,8 +58,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
58
58
  "modelValue": {},
59
59
  "modelModifiers": {}
60
60
  }),
61
- emits: /* @__PURE__ */ mergeModels([
61
+ emits: /*@__PURE__*/ mergeModels([
62
62
  "clear",
63
+ "update:modelValue",
63
64
  "change",
64
65
  "update:text"
65
66
  ], ["update:modelValue"]),
@@ -98,7 +99,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
98
99
  model.value = "";
99
100
  label.value = void 0;
100
101
  emit("clear");
101
- emit("change", "", void 0);
102
+ emit("change", void 0);
102
103
  emit("update:text", "");
103
104
  };
104
105
  let changedByEvent = false;
@@ -130,7 +131,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
130
131
  model.value = selected ?? "";
131
132
  if (selectedData) label.value = o(selectedData).get(props.labelKey);
132
133
  else label.value = "";
133
- emit("change", selected, selectedData);
134
+ emit("change", selectedData);
134
135
  emit("update:text", label.value);
135
136
  dropdownRef.value?.close();
136
137
  };
@@ -1 +1 @@
1
- {"version":3,"file":"tree-select.js","names":["$slots"],"sources":["../../../src/components/tree-select/tree-select.vue"],"sourcesContent":["<template>\n <u-dropdown\n v-if=\"!readonly\"\n :class=\"[cls.b, bem.is('disabled', disabled)]\"\n trigger=\"click\"\n :content-class=\"[cls.e('panel'), cls.em('panel', size), contentClass]\"\n :content-style=\"contentStyle\"\n ref=\"dropdownRef\"\n :min-width=\"minWidth\"\n :width=\"width\"\n :disabled=\"disabled\"\n @update:visible=\"handleDropdownVisible\"\n >\n <template #trigger>\n <u-input\n :size=\"size\"\n :disabled=\"disabled\"\n :placeholder=\"placeholder\"\n :clearable=\"clearable\"\n :model-value=\"text ?? (model ? label : undefined)\"\n @clear=\"handleClear\"\n native-readonly\n >\n <template #prefix v-if=\"$slots.prefix\">\n <slot name=\"prefix\" />\n </template>\n <template #suffix>\n <u-icon :class=\"cls.e('arrow')\"><ArrowDown /></u-icon>\n </template>\n </u-input>\n </template>\n <template #content>\n <!-- 过滤器 -->\n <div v-if=\"filterable\" :class=\"[cls.e('content-filter'), cls.m(size)]\">\n <u-input placeholder=\"输入关键字进行过滤\" v-model=\"qs\">\n <template #suffix>\n <u-icon><Search /></u-icon>\n </template>\n </u-input>\n </div>\n <!-- 菜单列表 -->\n\n <u-tree\n v-bind=\"treeProps\"\n :selected=\"model\"\n @update:selected=\"handleSelect\"\n ref=\"treeRef\"\n selectable\n :class=\"cls.e('content-tree')\"\n :slots=\"slots\"\n scroll-to-view\n />\n </template>\n </u-dropdown>\n\n <template v-else>\n {{ text || label || FORM_EMPTY_CONTENT }}\n </template>\n</template>\n\n<script lang=\"ts\" setup>\nimport { dfs, o } from '@cat-kit/core'\nimport { useFormFallbackProps } from '@veltra/compositions'\nimport { ArrowDown, Search } from '@veltra/icons/normal'\nimport { bem, FORM_EMPTY_CONTENT } from '@veltra/utils'\nimport { injectFormContext } from '@veltra/utils'\nimport { computed, nextTick, shallowRef, watch } from 'vue'\n\nimport type { TreeSelectProps, TreeSelectEmits, TreeExposed } from '../../types'\nimport { UDropdown } from '../dropdown'\nimport { UIcon } from '../icon'\nimport { UInput } from '../input'\nimport { UTree } from '../tree'\nimport type { TreeSlotsScope } from '../tree/di'\n\ndefineOptions({ name: 'TreeSelect' })\n\nconst props = withDefaults(defineProps<TreeSelectProps>(), {\n labelKey: 'label',\n valueKey: 'value',\n placeholder: '请选择',\n expandAll: false,\n clearable: true,\n disabled: undefined,\n readonly: undefined,\n filterable: false,\n minWidth: '280px'\n})\n\nconst emit = defineEmits<TreeSelectEmits>()\n\nconst slots = defineSlots<{\n /** 默认插槽 */\n default?: (props: TreeSlotsScope) => any\n /** 前缀插槽 */\n prefix?: () => any\n}>()\n\nconst treeProps = computed(() => {\n return o(props as Record<string, any>).omit([\n 'tips',\n 'field',\n 'placeholder',\n 'disabled',\n 'label',\n 'readonly',\n 'contentClass',\n 'contentStyle',\n 'minWidth',\n 'width'\n ])\n})\n\nconst cls = bem('tree-select')\n\n/**过滤 */\nconst qs = shallowRef('')\nwatch(qs, (qs) => {\n treeRef.value?.filter(qs)\n})\n\nconst model = defineModel<string | number>()\n\nconst label = shallowRef<string>()\n\nconst { formProps } = injectFormContext()\n\nconst { size, disabled, readonly } = useFormFallbackProps([formProps ?? {}, props])\n\nconst treeRef = shallowRef<TreeExposed>()\n\nconst dropdownRef = shallowRef<InstanceType<typeof UDropdown>>()\n\n/**清空 */\nconst handleClear = () => {\n model.value = ''\n label.value = undefined\n emit('clear')\n emit('change', '', undefined)\n emit('update:text', '')\n}\n\nlet changedByEvent = false\nwatch(\n [() => props.data, model],\n ([data, model]) => {\n if (changedByEvent) return\n if (!data?.length || model === undefined) {\n label.value = undefined\n model = undefined\n return\n }\n\n let founded = false\n const childrenKey = props.childrenKey ?? 'children'\n data.some((item) => {\n dfs(\n item,\n (v) => {\n if (v[props.valueKey] === model) {\n label.value = v[props.labelKey]\n founded = true\n return true\n }\n },\n childrenKey\n )\n\n return founded\n })\n },\n { immediate: true }\n)\n\nconst handleSelect = (selected?: string | number, selectedData?: Record<string, any>) => {\n changedByEvent = true\n nextTick(() => {\n changedByEvent = false\n })\n\n model.value = selected ?? ''\n\n if (selectedData) {\n label.value = o(selectedData).get(props.labelKey)\n } else {\n label.value = ''\n }\n\n emit('change', selected, selectedData)\n emit('update:text', label.value)\n dropdownRef.value?.close()\n}\n\nconst handleDropdownVisible = (visible: boolean) => {\n if (!visible) {\n qs.value = ''\n }\n}\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"tree-select.js","names":["$slots"],"sources":["../../../src/components/tree-select/tree-select.vue"],"sourcesContent":["<template>\n <u-dropdown\n v-if=\"!readonly\"\n :class=\"[cls.b, bem.is('disabled', disabled)]\"\n trigger=\"click\"\n :content-class=\"[cls.e('panel'), cls.em('panel', size), contentClass]\"\n :content-style=\"contentStyle\"\n ref=\"dropdownRef\"\n :min-width=\"minWidth\"\n :width=\"width\"\n :disabled=\"disabled\"\n @update:visible=\"handleDropdownVisible\"\n >\n <template #trigger>\n <u-input\n :size=\"size\"\n :disabled=\"disabled\"\n :placeholder=\"placeholder\"\n :clearable=\"clearable\"\n :model-value=\"text ?? (model ? label : undefined)\"\n @clear=\"handleClear\"\n native-readonly\n >\n <template #prefix v-if=\"$slots.prefix\">\n <slot name=\"prefix\" />\n </template>\n <template #suffix>\n <u-icon :class=\"cls.e('arrow')\"><ArrowDown /></u-icon>\n </template>\n </u-input>\n </template>\n <template #content>\n <!-- 过滤器 -->\n <div v-if=\"filterable\" :class=\"[cls.e('content-filter'), cls.m(size)]\">\n <u-input placeholder=\"输入关键字进行过滤\" v-model=\"qs\">\n <template #suffix>\n <u-icon><Search /></u-icon>\n </template>\n </u-input>\n </div>\n <!-- 菜单列表 -->\n\n <u-tree\n v-bind=\"treeProps\"\n :selected=\"model\"\n @update:selected=\"handleSelect\"\n ref=\"treeRef\"\n selectable\n :class=\"cls.e('content-tree')\"\n :slots=\"slots\"\n scroll-to-view\n />\n </template>\n </u-dropdown>\n\n <template v-else>\n {{ text || label || FORM_EMPTY_CONTENT }}\n </template>\n</template>\n\n<script lang=\"ts\" setup>\nimport { dfs, o } from '@cat-kit/core'\nimport { useFormFallbackProps } from '@veltra/compositions'\nimport { ArrowDown, Search } from '@veltra/icons/normal'\nimport { bem, FORM_EMPTY_CONTENT } from '@veltra/utils'\nimport { injectFormContext } from '@veltra/utils'\nimport { computed, nextTick, shallowRef, watch } from 'vue'\n\nimport type { TreeSelectProps, TreeSelectEmits, TreeExposed } from '../../types'\nimport { UDropdown } from '../dropdown'\nimport { UIcon } from '../icon'\nimport { UInput } from '../input'\nimport { UTree } from '../tree'\nimport type { TreeSlotsScope } from '../tree/di'\n\ndefineOptions({ name: 'UTreeSelect' })\n\nconst props = withDefaults(defineProps<TreeSelectProps>(), {\n labelKey: 'label',\n valueKey: 'value',\n placeholder: '请选择',\n expandAll: false,\n clearable: true,\n disabled: undefined,\n readonly: undefined,\n filterable: false,\n minWidth: '280px'\n})\n\nconst emit = defineEmits<TreeSelectEmits>()\n\nconst slots = defineSlots<{\n /** 默认插槽 */\n default?: (props: TreeSlotsScope) => any\n /** 前缀插槽 */\n prefix?: () => any\n}>()\n\nconst treeProps = computed(() => {\n return o(props as Record<string, any>).omit([\n 'tips',\n 'field',\n 'placeholder',\n 'disabled',\n 'label',\n 'readonly',\n 'contentClass',\n 'contentStyle',\n 'minWidth',\n 'width'\n ])\n})\n\nconst cls = bem('tree-select')\n\n/**过滤 */\nconst qs = shallowRef('')\nwatch(qs, (qs) => {\n treeRef.value?.filter(qs)\n})\n\nconst model = defineModel<string | number>()\n\nconst label = shallowRef<string>()\n\nconst { formProps } = injectFormContext()\n\nconst { size, disabled, readonly } = useFormFallbackProps([formProps ?? {}, props])\n\nconst treeRef = shallowRef<TreeExposed>()\n\nconst dropdownRef = shallowRef<InstanceType<typeof UDropdown>>()\n\n/**清空 */\nconst handleClear = () => {\n model.value = ''\n label.value = undefined\n emit('clear')\n emit('change', undefined)\n emit('update:text', '')\n}\n\nlet changedByEvent = false\nwatch(\n [() => props.data, model],\n ([data, model]) => {\n if (changedByEvent) return\n if (!data?.length || model === undefined) {\n label.value = undefined\n model = undefined\n return\n }\n\n let founded = false\n const childrenKey = props.childrenKey ?? 'children'\n data.some((item) => {\n dfs(\n item,\n (v) => {\n if (v[props.valueKey] === model) {\n label.value = v[props.labelKey]\n founded = true\n return true\n }\n },\n childrenKey\n )\n\n return founded\n })\n },\n { immediate: true }\n)\n\nconst handleSelect = (selected?: string | number, selectedData?: Record<string, any>) => {\n changedByEvent = true\n nextTick(() => {\n changedByEvent = false\n })\n\n model.value = selected ?? ''\n\n if (selectedData) {\n label.value = o(selectedData).get(props.labelKey)\n } else {\n label.value = ''\n }\n\n emit('change', selectedData)\n emit('update:text', label.value)\n dropdownRef.value?.close()\n}\n\nconst handleDropdownVisible = (visible: boolean) => {\n if (!visible) {\n qs.value = ''\n }\n}\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6EA,MAAM,QAAQ;EAYd,MAAM,OAAO;EAEb,MAAM,QAAQ,SAAA;EAOd,MAAM,YAAY,eAAe;GAC/B,OAAO,EAAE,KAA4B,CAAC,CAAC,KAAK;IAC1C;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;GACF,CAAC;EACH,CAAC;EAED,MAAM,MAAM,IAAI,aAAa;;EAG7B,MAAM,KAAK,WAAW,EAAE;EACxB,MAAM,KAAK,OAAO;GAChB,QAAQ,OAAO,OAAO,EAAE;EAC1B,CAAC;EAED,MAAM,QAAQ,SAA4B,SAAA,YAAC;EAE3C,MAAM,QAAQ,WAAmB;EAEjC,MAAM,EAAE,cAAc,kBAAkB;EAExC,MAAM,EAAE,MAAM,UAAU,aAAa,qBAAqB,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC;EAElF,MAAM,UAAU,WAAwB;EAExC,MAAM,cAAc,WAA2C;;EAG/D,MAAM,oBAAoB;GACxB,MAAM,QAAQ;GACd,MAAM,QAAQ,KAAA;GACd,KAAK,OAAO;GACZ,KAAK,UAAU,KAAA,CAAS;GACxB,KAAK,eAAe,EAAE;EACxB;EAEA,IAAI,iBAAiB;EACrB,MACE,OAAO,MAAM,MAAM,KAAK,IACvB,CAAC,MAAM,WAAW;GACjB,IAAI,gBAAgB;GACpB,IAAI,CAAC,MAAM,UAAU,UAAU,KAAA,GAAW;IACxC,MAAM,QAAQ,KAAA;IACd,QAAQ,KAAA;IACR;GACF;GAEA,IAAI,UAAU;GACd,MAAM,cAAc,MAAM,eAAe;GACzC,KAAK,MAAM,SAAS;IAClB,IACE,OACC,MAAM;KACL,IAAI,EAAE,MAAM,cAAc,OAAO;MAC/B,MAAM,QAAQ,EAAE,MAAM;MACtB,UAAU;MACV,OAAO;KACT;IACF,GACA,WACF;IAEA,OAAO;GACT,CAAC;EACH,GACA,EAAE,WAAW,KAAK,CACpB;EAEA,MAAM,gBAAgB,UAA4B,iBAAuC;GACvF,iBAAiB;GACjB,eAAe;IACb,iBAAiB;GACnB,CAAC;GAED,MAAM,QAAQ,YAAY;GAE1B,IAAI,cACF,MAAM,QAAQ,EAAE,YAAY,CAAC,CAAC,IAAI,MAAM,QAAQ;QAEhD,MAAM,QAAQ;GAGhB,KAAK,UAAU,YAAY;GAC3B,KAAK,eAAe,MAAM,KAAK;GAC/B,YAAY,OAAO,MAAM;EAC3B;EAEA,MAAM,yBAAyB,YAAqB;GAClD,IAAI,CAAC,SACH,GAAG,QAAQ;EAEf;;WAnMW,MAAA,QAAA,KAAA,UAAA,GADT,YAoDa,MAAA,WAAA,GAAA;;IAlDV,OAAK,eAAA,CAAG,MAAA,GAAA,CAAG,CAAC,GAAG,MAAA,GAAA,CAAG,CAAC,GAAE,YAAa,MAAA,QAAA,CAAQ,CAAA,CAAA;IAC3C,SAAQ;IACP,iBAAa;KAAG,MAAA,GAAA,CAAG,CAAC,EAAC,OAAA;KAAW,MAAA,GAAA,CAAG,CAAC,GAAE,SAAU,MAAA,IAAA,CAAI;KAAG,QAAA;IAAY;IACnE,iBAAe,QAAA;aACZ;IAAJ,KAAI;IACH,aAAW,QAAA;IACX,OAAO,QAAA;IACP,UAAU,MAAA,QAAA;IACV,oBAAgB;;IAEN,SAAO,cAgBN,CAfV,YAeU,MAAA,aAAA,GAAA;KAdP,MAAM,MAAA,IAAA;KACN,UAAU,MAAA,QAAA;KACV,aAAa,QAAA;KACb,WAAW,QAAA;KACX,eAAa,QAAA,SAAS,MAAA,QAAQ,MAAA,QAAQ,KAAA;KACtC,SAAO;KACR,mBAAA;;KAKW,QAAM,cACuC,CAAtD,YAAsD,MAAA,WAAA,GAAA,EAA7C,OAAK,eAAE,MAAA,GAAA,CAAG,CAAC,EAAC,OAAA,CAAA,EAAA,GAAA;6BAAwB,CAAb,YAAa,MAAA,SAAA,CAAA,CAAA,CAAA;;;;QAJvBA,KAAAA,OAAO,SAAA;WAApB;uBACa,CAAtB,WAAsB,KAAA,QAAA,QAAA,CAAA,CAAA;;;;;;;;;IAOjB,SAAO,cACJ;KAAZ,mBAAA,OAAA;KACW,QAAA,cAAA,UAAA,GAAX,mBAMM,OAAA;;MANkB,OAAK,eAAA,CAAG,MAAA,GAAA,CAAG,CAAC,EAAC,gBAAA,GAAoB,MAAA,GAAA,CAAG,CAAC,EAAE,MAAA,IAAA,CAAI,CAAA,CAAA;SACjE,YAIU,MAAA,aAAA,GAAA;MAJD,aAAY;kBAAqB,GAAA;mEAAA,GAAE,QAAA;;MAC/B,QAAM,cACY,CAA3B,YAA2B,MAAA,WAAA,GAAA,MAAA;8BAAT,CAAV,YAAU,MAAA,MAAA,CAAA,CAAA,CAAA;;;;;KAIxB,mBAAA,QAAA;KAEA,YASE,MAAA,WAAA,GATF,WACU,UAQR,OARiB;MAChB,UAAU,MAAA;MACV,qBAAiB;eACd;MAAJ,KAAI;MACJ,YAAA;MACC,OAAO,MAAA,GAAA,CAAG,CAAC,EAAC,cAAA;MACL;MACR,kBAAA;;;;;;;;;;;uBAKN,mBAEW,UAAA,EAAA,KAAA,EAAA,GAAA,CAAA,gBAAA,gBADN,QAAA,QAAQ,MAAA,SAAS,MAAA,kBAAA,CAAkB,GAAA,CAAA,CAAA,GAAA,EAAA"}
@@ -14,20 +14,21 @@ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
14
14
  declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
15
  "update:modelValue": (value: string | number | undefined) => any;
16
16
  } & {
17
+ "update:modelValue": (value?: string | number | undefined) => any;
17
18
  clear: () => any;
18
- change: (value?: string | number | undefined, selectedData?: Record<string, any> | undefined) => any;
19
+ change: (selectedData?: Record<string, any> | undefined) => any;
19
20
  "update:text": (text?: string | undefined) => any;
20
21
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
21
- "onUpdate:modelValue"?: ((value: string | number | undefined) => any) | undefined;
22
+ "onUpdate:modelValue"?: ((value?: string | number | undefined) => any) | undefined;
22
23
  onClear?: (() => any) | undefined;
23
- onChange?: ((value?: string | number | undefined, selectedData?: Record<string, any> | undefined) => any) | undefined;
24
+ onChange?: ((selectedData?: Record<string, any> | undefined) => any) | undefined;
24
25
  "onUpdate:text"?: ((text?: string | undefined) => any) | undefined;
25
26
  }>, {
27
+ expandAll: boolean;
26
28
  labelKey: string;
27
29
  valueKey: string;
28
30
  disabled: boolean;
29
31
  readonly: boolean;
30
- expandAll: boolean;
31
32
  placeholder: string;
32
33
  clearable: boolean;
33
34
  filterable: boolean;
@@ -2,8 +2,8 @@ import { Teleport, createBlock, createElementBlock, createElementVNode, defineCo
2
2
  import { bem, setStyles, zIndex } from "@veltra/utils";
3
3
  import { debounce } from "@cat-kit/core";
4
4
  //#region src/components/watermark/watermark.vue
5
- const _sfc_main = /* @__PURE__ */ defineComponent({
6
- name: "Watermark",
5
+ const _sfc_main = /*@__PURE__*/ defineComponent({
6
+ name: "UWatermark",
7
7
  __name: "watermark",
8
8
  props: {
9
9
  text: {},
@@ -1 +1 @@
1
- {"version":3,"file":"watermark.js","names":[],"sources":["../../../src/components/watermark/watermark.vue"],"sourcesContent":["<template>\n <Teleport v-if=\"appendToBody\" to=\"body\">\n <div :class=\"cls.b\" ref=\"watermark\" :style=\"{ zIndex: zIndex() }\"></div>\n </Teleport>\n\n <div v-else :class=\"cls.b\" ref=\"watermark\" :style=\"{ zIndex: zIndex() }\">\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { debounce } from '@cat-kit/core'\nimport { bem, setStyles, zIndex } from '@veltra/utils'\nimport { onBeforeUnmount, onMounted, reactive, useTemplateRef } from 'vue'\n\nimport type { WatermarkProps, WatermarkEmits } from '../../types'\n\ndefineOptions({ name: 'Watermark' })\nconst cls = bem('watermark')\nconst props = withDefaults(defineProps<WatermarkProps>(), { route: -30, fontSize: 60 })\ndefineEmits<WatermarkEmits>()\n\nconst watermarkRef = useTemplateRef('watermark')\n\nconst styles = reactive({ fontColor: 'rgba(0,0,0,.1)', fontFamily: 'Arial', image: props.image })\n\nconst setWatermark = debounce(async () => {\n const str = props.text\n const container = watermarkRef.value\n\n if (!container || !str) return\n\n // 创建canvas\n let canvas: HTMLCanvasElement | null = document.createElement('canvas')\n\n // 创建canvs画布\n let ctx = canvas.getContext('2d')!\n // 字体\n ctx.font = `${props.fontSize}px ${styles.fontFamily}`\n\n const textWidth = ctx.measureText(str).width\n canvas = document.createElement('canvas')\n canvas.width = textWidth\n canvas.height = textWidth\n ctx = canvas.getContext('2d')!\n // 字体\n ctx.font = `${props.fontSize}px ${styles.fontFamily}`\n ctx = canvas.getContext('2d')!\n // 字体颜色\n ctx.fillStyle = styles.fontColor\n // 对齐方式\n ctx.textAlign = 'left'\n // 文本基线\n ctx.textBaseline = 'top'\n\n // 逆时旋转\n ctx.translate(textWidth / 2, textWidth / 2)\n ctx.rotate((props.route * Math.PI) / 180)\n ctx.translate(-textWidth / 2, -textWidth / 2)\n // 编制文字\n ctx.fillText(str, 0, (textWidth - props.fontSize) / 2)\n\n setStyles(container, { background: `url(${canvas.toDataURL('image/png')}) repeat` })\n\n ctx.clearRect(0, 0, canvas.width, canvas.height)\n canvas = null\n}, 150)\n\nwindow.addEventListener('resize', setWatermark)\n\nonBeforeUnmount(() => {\n window.removeEventListener('resize', setWatermark)\n})\n\nonMounted(() => {\n setWatermark()\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;EAkBA,MAAM,MAAM,IAAI,WAAW;EAC3B,MAAM,QAAQ;EAGd,MAAM,eAAe,eAAe,WAAW;EAE/C,MAAM,SAAS,SAAS;GAAE,WAAW;GAAkB,YAAY;GAAS,OAAO,MAAM;EAAM,CAAC;EAEhG,MAAM,eAAe,SAAS,YAAY;GACxC,MAAM,MAAM,MAAM;GAClB,MAAM,YAAY,aAAa;GAE/B,IAAI,CAAC,aAAa,CAAC,KAAK;GAGxB,IAAI,SAAmC,SAAS,cAAc,QAAQ;GAGtE,IAAI,MAAM,OAAO,WAAW,IAAI;GAEhC,IAAI,OAAO,GAAG,MAAM,SAAS,KAAK,OAAO;GAEzC,MAAM,YAAY,IAAI,YAAY,GAAG,EAAE;GACvC,SAAS,SAAS,cAAc,QAAQ;GACxC,OAAO,QAAQ;GACf,OAAO,SAAS;GAChB,MAAM,OAAO,WAAW,IAAI;GAE5B,IAAI,OAAO,GAAG,MAAM,SAAS,KAAK,OAAO;GACzC,MAAM,OAAO,WAAW,IAAI;GAE5B,IAAI,YAAY,OAAO;GAEvB,IAAI,YAAY;GAEhB,IAAI,eAAe;GAGnB,IAAI,UAAU,YAAY,GAAG,YAAY,CAAC;GAC1C,IAAI,OAAQ,MAAM,QAAQ,KAAK,KAAM,GAAG;GACxC,IAAI,UAAU,CAAC,YAAY,GAAG,CAAC,YAAY,CAAC;GAE5C,IAAI,SAAS,KAAK,IAAI,YAAY,MAAM,YAAY,CAAC;GAErD,UAAU,WAAW,EAAE,YAAY,OAAO,OAAO,UAAU,WAAW,EAAE,UAAU,CAAC;GAEnF,IAAI,UAAU,GAAG,GAAG,OAAO,OAAO,OAAO,MAAM;GAC/C,SAAS;EACX,GAAG,GAAG;EAEN,OAAO,iBAAiB,UAAU,YAAY;EAE9C,sBAAsB;GACpB,OAAO,oBAAoB,UAAU,YAAY;EACnD,CAAC;EAED,gBAAgB;GACd,aAAa;EACf,CAAC;;UA3EiB,QAAA,gBAAA,UAAA,GAAhB,YAEW,UAAA;;IAFmB,IAAG;OAC/B,mBAAwE,OAAA;IAAlE,OAAK,eAAE,MAAA,GAAA,EAAI,CAAC;IAAE,KAAI;IAAa,OAAK,eAAA,EAAA,QAAY,MAAA,MAAA,EAAM,EAAA,CAAA;kCAG9D,mBAEM,OAAA;;IAFO,OAAK,eAAE,MAAA,GAAA,EAAI,CAAC;IAAE,KAAI;IAAa,OAAK,eAAA,EAAA,QAAY,MAAA,MAAA,EAAM,EAAA,CAAA;OACjE,WAAQ,KAAA,QAAA,SAAA,CAAA,GAAA,CAAA"}
1
+ {"version":3,"file":"watermark.js","names":[],"sources":["../../../src/components/watermark/watermark.vue"],"sourcesContent":["<template>\n <Teleport v-if=\"appendToBody\" to=\"body\">\n <div :class=\"cls.b\" ref=\"watermark\" :style=\"{ zIndex: zIndex() }\"></div>\n </Teleport>\n\n <div v-else :class=\"cls.b\" ref=\"watermark\" :style=\"{ zIndex: zIndex() }\">\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { debounce } from '@cat-kit/core'\nimport { bem, setStyles, zIndex } from '@veltra/utils'\nimport { onBeforeUnmount, onMounted, reactive, useTemplateRef } from 'vue'\n\nimport type { WatermarkProps, WatermarkEmits } from '../../types'\n\ndefineOptions({ name: 'UWatermark' })\nconst cls = bem('watermark')\nconst props = withDefaults(defineProps<WatermarkProps>(), { route: -30, fontSize: 60 })\ndefineEmits<WatermarkEmits>()\n\nconst watermarkRef = useTemplateRef('watermark')\n\nconst styles = reactive({ fontColor: 'rgba(0,0,0,.1)', fontFamily: 'Arial', image: props.image })\n\nconst setWatermark = debounce(async () => {\n const str = props.text\n const container = watermarkRef.value\n\n if (!container || !str) return\n\n // 创建canvas\n let canvas: HTMLCanvasElement | null = document.createElement('canvas')\n\n // 创建canvs画布\n let ctx = canvas.getContext('2d')!\n // 字体\n ctx.font = `${props.fontSize}px ${styles.fontFamily}`\n\n const textWidth = ctx.measureText(str).width\n canvas = document.createElement('canvas')\n canvas.width = textWidth\n canvas.height = textWidth\n ctx = canvas.getContext('2d')!\n // 字体\n ctx.font = `${props.fontSize}px ${styles.fontFamily}`\n ctx = canvas.getContext('2d')!\n // 字体颜色\n ctx.fillStyle = styles.fontColor\n // 对齐方式\n ctx.textAlign = 'left'\n // 文本基线\n ctx.textBaseline = 'top'\n\n // 逆时旋转\n ctx.translate(textWidth / 2, textWidth / 2)\n ctx.rotate((props.route * Math.PI) / 180)\n ctx.translate(-textWidth / 2, -textWidth / 2)\n // 编制文字\n ctx.fillText(str, 0, (textWidth - props.fontSize) / 2)\n\n setStyles(container, { background: `url(${canvas.toDataURL('image/png')}) repeat` })\n\n ctx.clearRect(0, 0, canvas.width, canvas.height)\n canvas = null\n}, 150)\n\nwindow.addEventListener('resize', setWatermark)\n\nonBeforeUnmount(() => {\n window.removeEventListener('resize', setWatermark)\n})\n\nonMounted(() => {\n setWatermark()\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;EAkBA,MAAM,MAAM,IAAI,WAAW;EAC3B,MAAM,QAAQ;EAGd,MAAM,eAAe,eAAe,WAAW;EAE/C,MAAM,SAAS,SAAS;GAAE,WAAW;GAAkB,YAAY;GAAS,OAAO,MAAM;EAAM,CAAC;EAEhG,MAAM,eAAe,SAAS,YAAY;GACxC,MAAM,MAAM,MAAM;GAClB,MAAM,YAAY,aAAa;GAE/B,IAAI,CAAC,aAAa,CAAC,KAAK;GAGxB,IAAI,SAAmC,SAAS,cAAc,QAAQ;GAGtE,IAAI,MAAM,OAAO,WAAW,IAAI;GAEhC,IAAI,OAAO,GAAG,MAAM,SAAS,KAAK,OAAO;GAEzC,MAAM,YAAY,IAAI,YAAY,GAAG,CAAC,CAAC;GACvC,SAAS,SAAS,cAAc,QAAQ;GACxC,OAAO,QAAQ;GACf,OAAO,SAAS;GAChB,MAAM,OAAO,WAAW,IAAI;GAE5B,IAAI,OAAO,GAAG,MAAM,SAAS,KAAK,OAAO;GACzC,MAAM,OAAO,WAAW,IAAI;GAE5B,IAAI,YAAY,OAAO;GAEvB,IAAI,YAAY;GAEhB,IAAI,eAAe;GAGnB,IAAI,UAAU,YAAY,GAAG,YAAY,CAAC;GAC1C,IAAI,OAAQ,MAAM,QAAQ,KAAK,KAAM,GAAG;GACxC,IAAI,UAAU,CAAC,YAAY,GAAG,CAAC,YAAY,CAAC;GAE5C,IAAI,SAAS,KAAK,IAAI,YAAY,MAAM,YAAY,CAAC;GAErD,UAAU,WAAW,EAAE,YAAY,OAAO,OAAO,UAAU,WAAW,EAAE,UAAU,CAAC;GAEnF,IAAI,UAAU,GAAG,GAAG,OAAO,OAAO,OAAO,MAAM;GAC/C,SAAS;EACX,GAAG,GAAG;EAEN,OAAO,iBAAiB,UAAU,YAAY;EAE9C,sBAAsB;GACpB,OAAO,oBAAoB,UAAU,YAAY;EACnD,CAAC;EAED,gBAAgB;GACd,aAAa;EACf,CAAC;;UA3EiB,QAAA,gBAAA,UAAA,GAAhB,YAEW,UAAA;;IAFmB,IAAG;OAC/B,mBAAwE,OAAA;IAAlE,OAAK,eAAE,MAAA,GAAA,CAAG,CAAC,CAAC;IAAE,KAAI;IAAa,OAAK,eAAA,EAAA,QAAY,MAAA,MAAA,CAAM,CAAA,EAAA,CAAA;kCAG9D,mBAEM,OAAA;;IAFO,OAAK,eAAE,MAAA,GAAA,CAAG,CAAC,CAAC;IAAE,KAAI;IAAa,OAAK,eAAA,EAAA,QAAY,MAAA,MAAA,CAAM,CAAA,EAAA,CAAA;OACjE,WAAQ,KAAA,QAAA,SAAA,CAAA,GAAA,CAAA"}
@@ -29,13 +29,15 @@ interface CascadeProps extends FormComponentProps {
29
29
  /** 严格模式 */
30
30
  strict?: boolean;
31
31
  /**
32
- * 数据项
32
+ * 是否展示/提交完整路径
33
+ * @default true
34
+ * false 时显示、modelValue、update:label 均只体现选中叶子节点
33
35
  */
34
- data?: Record<string, any>[];
36
+ showFullPath?: boolean;
35
37
  /**
36
- * 禁用项
38
+ * 数据项
37
39
  */
38
- disabledNode?: (item: Record<string, any>) => boolean;
40
+ data?: Record<string, any>[];
39
41
  /**
40
42
  * 多选
41
43
  */
@@ -52,9 +54,11 @@ interface PanelItem {
52
54
  }
53
55
  /** 级联选择器组件定义的事件 */
54
56
  interface CascadeEmits {
57
+ /** 触发更新 label 事件 */
58
+ (e: 'update:label', label?: string | string[]): void;
55
59
  (e: 'update:modelValue', value?: string | string[]): void;
56
- (e: 'change', value: string[], label: string[], data: Record<string, any>[]): void;
57
- (e: 'change', value?: string, label?: string, item?: Record<string, any>): void;
60
+ (e: 'change', items: Record<string, any>[]): void;
61
+ (e: 'change', item?: Record<string, any>): void;
58
62
  (e: 'clear'): void;
59
63
  }
60
64
  /** 级联选择器组件暴露的属性和方法(组件内部使用) */
@@ -36,7 +36,8 @@ interface TreeSelectProps extends FormComponentProps, Omit<TreeProps, 'selected'
36
36
  /** 树形选择器组件定义的事件 */
37
37
  interface TreeSelectEmits {
38
38
  (e: 'clear'): void;
39
- (e: 'change', value?: string | number, selectedData?: Record<string, any>): void;
39
+ (e: 'update:modelValue', value?: string | number): void;
40
+ (e: 'change', selectedData?: Record<string, any>): void;
40
41
  (e: 'update:text', text?: string): void;
41
42
  }
42
43
  /** 树形选择器组件暴露的属性和方法(组件内部使用) */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veltra/desktop",
3
- "version": "1.2.10",
3
+ "version": "1.2.13",
4
4
  "files": [
5
5
  "dist",
6
6
  "src"
@@ -34,24 +34,26 @@
34
34
  "import": "./dist/*"
35
35
  }
36
36
  },
37
- "scripts": {
38
- "build": "vp pack"
39
- },
40
37
  "dependencies": {
38
+ "@codemirror/autocomplete": "^6.20.2",
39
+ "@codemirror/commands": "^6.10.3",
41
40
  "@codemirror/lang-java": "^6.0.2",
42
41
  "@codemirror/lang-javascript": "^6.2.5",
43
42
  "@codemirror/lang-json": "^6.0.2",
44
43
  "@codemirror/lang-sql": "^6.10.0",
45
- "@codemirror/state": "^6.6.0",
44
+ "@codemirror/language": "^6.12.3",
45
+ "@codemirror/lint": "^6.9.6",
46
+ "@codemirror/search": "^6.7.0",
47
+ "@codemirror/state": "^6.7.0",
46
48
  "@codemirror/theme-one-dark": "^6.1.3",
47
- "@codemirror/view": "^6.41.1",
48
- "@embedpdf/core": "^2.14.3",
49
- "@embedpdf/engines": "^2.14.3",
50
- "@embedpdf/plugin-document-manager": "^2.14.3",
51
- "@embedpdf/plugin-render": "^2.14.3",
52
- "@embedpdf/plugin-scroll": "^2.14.3",
53
- "@embedpdf/plugin-viewport": "^2.14.3",
54
- "@embedpdf/plugin-zoom": "^2.14.1",
49
+ "@codemirror/view": "^6.43.4",
50
+ "@embedpdf/core": "^2.14.4",
51
+ "@embedpdf/engines": "^2.14.4",
52
+ "@embedpdf/plugin-document-manager": "^2.14.4",
53
+ "@embedpdf/plugin-render": "^2.14.4",
54
+ "@embedpdf/plugin-scroll": "^2.14.4",
55
+ "@embedpdf/plugin-viewport": "^2.14.4",
56
+ "@embedpdf/plugin-zoom": "^2.14.4",
55
57
  "@lexical/history": "^0.45.0",
56
58
  "@lexical/html": "^0.45.0",
57
59
  "@lexical/link": "^0.45.0",
@@ -59,20 +61,19 @@
59
61
  "@lexical/rich-text": "^0.45.0",
60
62
  "@lexical/selection": "^0.45.0",
61
63
  "@lexical/utils": "^0.45.0",
62
- "@visactor/vtable": "^1.26.1",
63
- "codemirror": "^6.0.2",
64
+ "@visactor/vtable": "^1.26.3",
64
65
  "docx-preview": "^0.3.7",
65
66
  "lexical": "^0.45.0"
66
67
  },
67
68
  "peerDependencies": {
68
- "@cat-kit/core": ">=1.1.6",
69
+ "@cat-kit/core": ">=1.1.8",
69
70
  "@cat-kit/excel": ">=1.0.0",
70
- "@cat-kit/fe": "^1.1.6",
71
- "@veltra/compositions": "1.2.10",
72
- "@veltra/directives": "1.2.10",
73
- "@veltra/icons": "1.2.10",
74
- "@veltra/styles": "1.2.10",
75
- "@veltra/utils": "1.2.10",
76
- "vue": ">=3.5.0"
71
+ "@cat-kit/fe": "^1.1.8",
72
+ "@veltra/compositions": "1.2.13",
73
+ "@veltra/directives": "1.2.13",
74
+ "@veltra/icons": "1.2.13",
75
+ "@veltra/styles": "1.2.13",
76
+ "@veltra/utils": "1.2.13",
77
+ "vue": ">=3.5.39"
77
78
  }
78
79
  }
@@ -13,7 +13,7 @@ import { UTip } from '../tip'
13
13
  import { ActionDIKey } from './di'
14
14
 
15
15
  defineOptions({
16
- name: 'ActionGroup',
16
+ name: 'UActionGroup',
17
17
  inheritAttrs: false
18
18
  })
19
19
 
@@ -65,7 +65,7 @@ function getSlotsNodes() {
65
65
  if (!nodes) return []
66
66
 
67
67
  const extracted = extractNormalVNodes(nodes).filter(
68
- (node) => (node.type as { name?: string } | null | undefined)?.name === 'Action'
68
+ (node) => (node.type as { name?: string } | null | undefined)?.name === 'UAction'
69
69
  )
70
70
 
71
71
  const visible: VNode[] = []
@@ -42,7 +42,7 @@ import { UButton } from '../button'
42
42
  import { UPopConfirm } from '../pop-confirm'
43
43
  import { ActionDIKey } from './di'
44
44
 
45
- defineOptions({ name: 'Action', inheritAttrs: false })
45
+ defineOptions({ name: 'UAction', inheritAttrs: false })
46
46
 
47
47
  // 这里所有可继承自 `<u-action-group>` 的默认值都强制为 `undefined`,
48
48
  // 否则 Vue 对 Boolean 类型 prop 的默认值(false)会让 `??` 兜底始终失效
@@ -85,7 +85,7 @@ import { UScroll } from '../scroll'
85
85
  import { useKeyboard } from './use-keyboard'
86
86
  import { useSuggestions } from './use-suggestions'
87
87
 
88
- defineOptions({ name: 'AutoComplete', inheritAttrs: false })
88
+ defineOptions({ name: 'UAutoComplete', inheritAttrs: false })
89
89
 
90
90
  const props = withDefaults(defineProps<AutoCompleteProps>(), {
91
91
  placeholder: '请输入',
@@ -12,7 +12,7 @@ import { computed, nextTick, onMounted, shallowRef, watch } from 'vue'
12
12
 
13
13
  import type { BadgeProps, ComponentSize } from '../../types'
14
14
 
15
- defineOptions({ name: 'Badge' })
15
+ defineOptions({ name: 'UBadge' })
16
16
 
17
17
  const cls = bem('badge')
18
18
 
@@ -78,7 +78,7 @@ import { UScroll } from '../scroll'
78
78
  import { BatchEditDIKey } from './di'
79
79
  import { FORM_ACTION_HEADER_MAP } from './form-action-header'
80
80
 
81
- defineOptions({ name: 'BatchEditForm' })
81
+ defineOptions({ name: 'UBatchEditForm' })
82
82
 
83
83
  const batchEditCtx = inject(BatchEditDIKey)!
84
84
 
@@ -70,7 +70,7 @@ import { UButton } from '../button'
70
70
  import { UTable } from '../table'
71
71
  import { BatchEditDIKey } from './di'
72
72
 
73
- defineOptions({ name: 'BatchEditList' })
73
+ defineOptions({ name: 'UBatchEditList' })
74
74
 
75
75
  defineProps<{ slots: Slots }>()
76
76
 
@@ -34,7 +34,7 @@ import { useFeatures } from './use-features'
34
34
  import { useHandlers } from './use-handlers'
35
35
  import { useShortcutKey } from './use-shortcut-key'
36
36
 
37
- defineOptions({ name: 'BatchEdit' })
37
+ defineOptions({ name: 'UBatchEdit' })
38
38
 
39
39
  const props = withDefaults(defineProps<BatchEditProps>(), { cols: () => ['1fr', '420px'] })
40
40
 
@@ -47,7 +47,7 @@ import type {
47
47
  ComponentSize
48
48
  } from '../../types'
49
49
 
50
- defineOptions({ name: 'Breadcrumb' })
50
+ defineOptions({ name: 'UBreadcrumb' })
51
51
 
52
52
  const props = withDefaults(defineProps<BreadcrumbProps>(), { lastLinked: false })
53
53
 
@@ -9,7 +9,7 @@ import { bem } from '@veltra/utils'
9
9
 
10
10
  import type { ButtonProps } from '../../types'
11
11
 
12
- defineOptions({ name: 'ButtonGroup' })
12
+ defineOptions({ name: 'UButtonGroup' })
13
13
 
14
14
  const props = defineProps<ButtonProps>()
15
15
 
@@ -36,7 +36,7 @@ import { computed, shallowRef } from 'vue'
36
36
  import type { ButtonEmits, ButtonProps, _ButtonExposed, ComponentSize } from '../../types'
37
37
  import { UIcon } from '../icon'
38
38
 
39
- defineOptions({ name: 'Button' })
39
+ defineOptions({ name: 'UButton' })
40
40
 
41
41
  const props = withDefaults(defineProps<ButtonProps>(), {
42
42
  iconPosition: 'left',
@@ -19,7 +19,7 @@ import { computed } from 'vue'
19
19
  import type { CalendarProps } from '../../types'
20
20
  import { getMonthDays } from './utils'
21
21
 
22
- defineOptions({ name: 'Calendar' })
22
+ defineOptions({ name: 'UCalendar' })
23
23
 
24
24
  defineProps<CalendarProps>()
25
25
 
@@ -10,7 +10,7 @@ import { type CSSProperties, computed, inject } from 'vue'
10
10
  import type { CardActionProps } from '../../types'
11
11
  import { CardDIKey } from './di'
12
12
 
13
- defineOptions({ name: 'CardAction' })
13
+ defineOptions({ name: 'UCardAction' })
14
14
 
15
15
  const props = defineProps<CardActionProps>()
16
16
 
@@ -10,7 +10,7 @@ import { computed, inject, type CSSProperties } from 'vue'
10
10
  import type { CardContentProps } from '../../types'
11
11
  import { CardDIKey } from './di'
12
12
 
13
- defineOptions({ name: 'CardContent' })
13
+ defineOptions({ name: 'UCardContent' })
14
14
 
15
15
  const props = defineProps<CardContentProps>()
16
16
 
@@ -17,7 +17,7 @@ import { computed, inject } from 'vue'
17
17
  import type { CardCoverProps } from '../../types'
18
18
  import { CardDIKey } from './di'
19
19
 
20
- defineOptions({ name: 'CardCover' })
20
+ defineOptions({ name: 'UCardCover' })
21
21
 
22
22
  const props = defineProps<CardCoverProps>()
23
23
 
@@ -9,7 +9,7 @@ import { computed, inject } from 'vue'
9
9
 
10
10
  import { CardDIKey } from './di'
11
11
 
12
- defineOptions({ name: 'CardHeader' })
12
+ defineOptions({ name: 'UCardHeader' })
13
13
 
14
14
  const injected = inject(CardDIKey)
15
15
  const { cls } = injected || {}
@@ -12,7 +12,7 @@ import { computed, provide } from 'vue'
12
12
  import type { CardProps } from '../../types'
13
13
  import { CardDIKey } from './di'
14
14
 
15
- defineOptions({ name: 'Card' })
15
+ defineOptions({ name: 'UCard' })
16
16
 
17
17
  const props = defineProps<CardProps>()
18
18
 
@@ -124,7 +124,7 @@ import { useCheck } from './use-check'
124
124
  import { useDataMap } from './use-data-map'
125
125
  import { useSelect } from './use-select'
126
126
 
127
- defineOptions({ name: 'Cascade' })
127
+ defineOptions({ name: 'UCascade' })
128
128
 
129
129
  const props = withDefaults(defineProps<CascadeProps>(), {
130
130
  labelKey: 'label',
@@ -137,7 +137,8 @@ const props = withDefaults(defineProps<CascadeProps>(), {
137
137
  childrenKey: 'children',
138
138
  filterable: false,
139
139
  data: () => [],
140
- visibilityLimit: 3
140
+ visibilityLimit: 3,
141
+ showFullPath: true
141
142
  })
142
143
 
143
144
  const emit = defineEmits<CascadeEmits>()
@@ -68,8 +68,10 @@ export function useCheck(options: CheckOptions): UseCheckReturned {
68
68
  const checkedArr = Array.from(checkedSet.value)
69
69
  const targetValues = checkedArr.map((item) => item.value)
70
70
  const targetLabels = checkedArr.map((item) => item.label)
71
+ const targetItems = checkedArr.map((item) => item.data as Record<string, any>)
71
72
  emit('update:modelValue', targetValues)
72
- emit('change', targetValues, targetLabels, checkedArr)
73
+ emit('update:label', targetLabels.length ? targetLabels : undefined)
74
+ emit('change', targetItems)
73
75
  }
74
76
 
75
77
  const restTag = computed(() => {