@veltra/desktop 1.3.10 → 1.5.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 (451) hide show
  1. package/dist/components/action/action-group.vue_vue_type_script_setup_true_lang.js.map +1 -1
  2. package/dist/components/action/action.js.map +1 -1
  3. package/dist/components/auto-complete/auto-complete.js.map +1 -1
  4. package/dist/components/badge/badge.js.map +1 -1
  5. package/dist/components/badge/style.d.ts +1 -1
  6. package/dist/components/batch-edit/batch-edit-form.js +8 -12
  7. package/dist/components/batch-edit/batch-edit-form.js.map +1 -1
  8. package/dist/components/batch-edit/batch-edit-list.js.map +1 -1
  9. package/dist/components/batch-edit/batch-edit.js +2 -1
  10. package/dist/components/batch-edit/batch-edit.js.map +1 -1
  11. package/dist/components/batch-edit/di.js.map +1 -1
  12. package/dist/components/batch-edit/index.d.ts +2 -2
  13. package/dist/components/batch-edit/use-edit-state.js +11 -9
  14. package/dist/components/batch-edit/use-edit-state.js.map +1 -1
  15. package/dist/components/batch-edit/use-handlers.js.map +1 -1
  16. package/dist/components/breadcrumb/breadcrumb.js.map +1 -1
  17. package/dist/components/breadcrumb/style.d.ts +1 -1
  18. package/dist/components/button/button-group.js.map +1 -1
  19. package/dist/components/button/button.js.map +1 -1
  20. package/dist/components/calendar/calendar.js.map +1 -1
  21. package/dist/components/calendar/style.d.ts +1 -1
  22. package/dist/components/card/card-action.js.map +1 -1
  23. package/dist/components/card/card-content.js.map +1 -1
  24. package/dist/components/card/card-cover.js.map +1 -1
  25. package/dist/components/card/card-header.js.map +1 -1
  26. package/dist/components/card/card.js.map +1 -1
  27. package/dist/components/card/style.d.ts +1 -1
  28. package/dist/components/cascade/cascade-panel-item.js.map +1 -1
  29. package/dist/components/cascade/cascade.js.map +1 -1
  30. package/dist/components/check-tag/check-tag.js.map +1 -1
  31. package/dist/components/check-tag/style.d.ts +1 -1
  32. package/dist/components/checkbox/checkbox-button.js.map +1 -1
  33. package/dist/components/checkbox/checkbox.js.map +1 -1
  34. package/dist/components/checkbox-group/checkbox-group.js.map +1 -1
  35. package/dist/components/code-editor/basic-setup.js +2 -2
  36. package/dist/components/code-editor/code-editor.js +2 -2
  37. package/dist/components/code-editor/code-editor.js.map +1 -1
  38. package/dist/components/code-editor/lang-loaders.js +1 -1
  39. package/dist/components/code-editor/shell-extension.js +2 -2
  40. package/dist/components/collapse/collapse-item.js +34 -11
  41. package/dist/components/collapse/collapse-item.js.map +1 -1
  42. package/dist/components/collapse/collapse.js.map +1 -1
  43. package/dist/components/collapse/style.d.ts +1 -1
  44. package/dist/components/collapse/style2.css +29 -51
  45. package/dist/components/condition-editor/components/condition-group.js.map +1 -1
  46. package/dist/components/condition-editor/components/condition-row.js.map +1 -1
  47. package/dist/components/condition-editor/condition-editor.js.map +1 -1
  48. package/dist/components/condition-editor/index.d.ts +2 -2
  49. package/dist/components/contextmenu/contextmenu-item.js +13 -6
  50. package/dist/components/contextmenu/contextmenu-item.js.map +1 -1
  51. package/dist/components/contextmenu/contextmenu-panel.js +12 -6
  52. package/dist/components/contextmenu/contextmenu-panel.js.map +1 -1
  53. package/dist/components/contextmenu/contextmenu-sub.js.map +1 -1
  54. package/dist/components/contextmenu/contextmenu.js.map +1 -1
  55. package/dist/components/contextmenu/di.d.ts +15 -0
  56. package/dist/components/contextmenu/index.d.ts +3 -2
  57. package/dist/components/contextmenu/style2.css +13 -0
  58. package/dist/components/date-panel/date-panel.js.map +1 -1
  59. package/dist/components/date-panel/headers/day.js.map +1 -1
  60. package/dist/components/date-panel/headers/month.js.map +1 -1
  61. package/dist/components/date-panel/headers/year.js.map +1 -1
  62. package/dist/components/date-panel/panels/day.js.map +1 -1
  63. package/dist/components/date-panel/panels/month.js.map +1 -1
  64. package/dist/components/date-panel/panels/year.js.map +1 -1
  65. package/dist/components/date-panel/style.d.ts +1 -1
  66. package/dist/components/date-picker/date-picker.js.map +1 -1
  67. package/dist/components/date-range-picker/date-range-picker.js.map +1 -1
  68. package/dist/components/dialog/dialog.js.map +1 -1
  69. package/dist/components/drawer/drawer.js.map +1 -1
  70. package/dist/components/dropdown/dropdown.js.map +1 -1
  71. package/dist/components/dual-nav/dual-nav-app.js.map +1 -1
  72. package/dist/components/dual-nav/dual-nav.js.map +1 -1
  73. package/dist/components/empty/empty.js.map +1 -1
  74. package/dist/components/empty/style.d.ts +1 -1
  75. package/dist/components/expression-editor/components/path-preview.js.map +1 -1
  76. package/dist/components/expression-editor/components/variable-picker.js.map +1 -1
  77. package/dist/components/expression-editor/core/editor.js.map +1 -1
  78. package/dist/components/expression-editor/expression-editor.js.map +1 -1
  79. package/dist/components/expression-editor/style.d.ts +1 -1
  80. package/dist/components/file-picker/file-picker.js.map +1 -1
  81. package/dist/components/file-picker/style.d.ts +1 -1
  82. package/dist/components/file-viewer/file-viewer.js.map +1 -1
  83. package/dist/components/file-viewer/helper.js +1 -38
  84. package/dist/components/file-viewer/helper.js.map +1 -1
  85. package/dist/components/file-viewer/previewers/docx-previewer.js.map +1 -1
  86. package/dist/components/file-viewer/previewers/image-previewer.js.map +1 -1
  87. package/dist/components/file-viewer/previewers/pdf-previewer.js.map +1 -1
  88. package/dist/components/file-viewer/previewers/pdf-viewport-scroll.js.map +1 -1
  89. package/dist/components/file-viewer/previewers/pdf-zoom-bridge.js.map +1 -1
  90. package/dist/components/file-viewer/previewers/sheet-previewer.js +68 -37
  91. package/dist/components/file-viewer/previewers/sheet-previewer.js.map +1 -1
  92. package/dist/components/file-viewer/previewers/text-previewer.js +2 -2
  93. package/dist/components/file-viewer/previewers/text-previewer.js.map +1 -1
  94. package/dist/components/file-viewer/previewers/video-previewer.js.map +1 -1
  95. package/dist/components/file-viewer/style.d.ts +1 -1
  96. package/dist/components/float-button/float-button.js.map +1 -1
  97. package/dist/components/form/form.vue_vue_type_script_setup_true_lang.js.map +1 -1
  98. package/dist/components/form/style.d.ts +1 -1
  99. package/dist/components/form-item/form-item.vue_vue_type_script_setup_true_lang.js.map +1 -1
  100. package/dist/components/form-item/style.d.ts +1 -1
  101. package/dist/components/gantt-chart/gantt-chart.js.map +1 -1
  102. package/dist/components/gantt-chart/style.d.ts +1 -1
  103. package/dist/components/grid/grid-item.js.map +1 -1
  104. package/dist/components/grid/grid.js +3 -2
  105. package/dist/components/grid/grid.js.map +1 -1
  106. package/dist/components/grid/style.d.ts +1 -1
  107. package/dist/components/grid-input/grid-input.js.map +1 -1
  108. package/dist/components/grid-input/style.d.ts +1 -1
  109. package/dist/components/group-input/group-input.js.map +1 -1
  110. package/dist/components/group-nav/group-nav-item.js.map +1 -1
  111. package/dist/components/group-nav/group-nav.js.map +1 -1
  112. package/dist/components/group-nav/style.d.ts +1 -1
  113. package/dist/components/icon/icon.js.map +1 -1
  114. package/dist/components/icon/style.d.ts +1 -1
  115. package/dist/components/index.d.ts +91 -156
  116. package/dist/components/index.js +4 -1
  117. package/dist/components/input/input.vue_vue_type_script_setup_true_lang.js.map +1 -1
  118. package/dist/components/kbd/kbd.js.map +1 -1
  119. package/dist/components/kbd/style.d.ts +1 -1
  120. package/dist/components/layout/layout-resizer.js.map +1 -1
  121. package/dist/components/layout/layout.js.map +1 -1
  122. package/dist/components/layout/style.d.ts +1 -1
  123. package/dist/components/list/list-item.js.map +1 -1
  124. package/dist/components/list/list.js.map +1 -1
  125. package/dist/components/loading/directive.js +2 -1
  126. package/dist/components/loading/directive.js.map +1 -1
  127. package/dist/components/loading/index.d.ts +2 -2
  128. package/dist/components/loading/loading.js.map +1 -1
  129. package/dist/components/message/index.d.ts +2 -2
  130. package/dist/components/message/message-box.js.map +1 -1
  131. package/dist/components/message/message.js.map +1 -1
  132. package/dist/components/message/style.d.ts +1 -1
  133. package/dist/components/message-confirm/index.d.ts +2 -2
  134. package/dist/components/message-confirm/message-confirm-box.js.map +1 -1
  135. package/dist/components/message-confirm/message-confirm.js.map +1 -1
  136. package/dist/components/message-confirm/style.d.ts +1 -1
  137. package/dist/components/message-confirm/style2.css +18 -0
  138. package/dist/components/multi-select/multi-select-option.js.map +1 -1
  139. package/dist/components/multi-select/multi-select.js +6 -3
  140. package/dist/components/multi-select/multi-select.js.map +1 -1
  141. package/dist/components/multi-tree-select/multi-tree-select.js.map +1 -1
  142. package/dist/components/nav/nav-icon.js.map +1 -1
  143. package/dist/components/nav/nav-item-collapsed.js.map +1 -1
  144. package/dist/components/nav/nav-item.js +4 -2
  145. package/dist/components/nav/nav-item.js.map +1 -1
  146. package/dist/components/nav/nav-sub-collapsed.js.map +1 -1
  147. package/dist/components/nav/nav-sub.js.map +1 -1
  148. package/dist/components/nav/nav.js.map +1 -1
  149. package/dist/components/nav/style.d.ts +1 -1
  150. package/dist/components/node-render/style.d.ts +1 -1
  151. package/dist/components/notification/index.d.ts +2 -2
  152. package/dist/components/notification/notification-box.js +2 -2
  153. package/dist/components/notification/notification-box.js.map +1 -1
  154. package/dist/components/notification/notification.js.map +1 -1
  155. package/dist/components/notification/style.d.ts +1 -1
  156. package/dist/components/number/number.js.map +1 -1
  157. package/dist/components/number/style.d.ts +1 -1
  158. package/dist/components/number-input/number-input.js +2 -1
  159. package/dist/components/number-input/number-input.js.map +1 -1
  160. package/dist/components/number-range-input/number-range-input.js.map +1 -1
  161. package/dist/components/paginator/paginator.js.map +1 -1
  162. package/dist/components/palette/palette-alpha.js.map +1 -1
  163. package/dist/components/palette/palette-color-switch.js.map +1 -1
  164. package/dist/components/palette/palette-hue.js.map +1 -1
  165. package/dist/components/palette/palette-sv.js.map +1 -1
  166. package/dist/components/palette/palette.js.map +1 -1
  167. package/dist/components/password-input/password-input.js.map +1 -1
  168. package/dist/components/pop-confirm/pop-confirm.js.map +1 -1
  169. package/dist/components/progress/progress.js.map +1 -1
  170. package/dist/components/progress/style.d.ts +1 -1
  171. package/dist/components/progress-nodes/progress-nodes.js.map +1 -1
  172. package/dist/components/progress-nodes/style.d.ts +1 -1
  173. package/dist/components/radio/radio.js.map +1 -1
  174. package/dist/components/radio-group/radio-group.js.map +1 -1
  175. package/dist/components/rich-text-editor/rich-text-editor.js +2 -1
  176. package/dist/components/rich-text-editor/rich-text-editor.js.map +1 -1
  177. package/dist/components/rich-text-editor/style.d.ts +1 -1
  178. package/dist/components/rich-text-editor/toolbar.js +3 -4
  179. package/dist/components/rich-text-editor/toolbar.js.map +1 -1
  180. package/dist/components/scroll/scroll-bar.js.map +1 -1
  181. package/dist/components/scroll/scroll.js.map +1 -1
  182. package/dist/components/scroll/style.d.ts +1 -1
  183. package/dist/components/select/select.js.map +1 -1
  184. package/dist/components/slider/slider-thumb.js.map +1 -1
  185. package/dist/components/slider/slider.js.map +1 -1
  186. package/dist/components/slider/style.d.ts +1 -1
  187. package/dist/components/steps/steps.js.map +1 -1
  188. package/dist/components/steps/style.d.ts +1 -1
  189. package/dist/components/steps/style2.css +14 -14
  190. package/dist/components/switch/style.d.ts +1 -1
  191. package/dist/components/switch/switch.js.map +1 -1
  192. package/dist/components/table/index.d.ts +2 -2
  193. package/dist/components/table/node/col.d.ts +1 -49
  194. package/dist/components/table/table-body.js.map +1 -1
  195. package/dist/components/table/table-cell.js.map +1 -1
  196. package/dist/components/table/table-foot.js.map +1 -1
  197. package/dist/components/table/table-row.js +2 -1
  198. package/dist/components/table/table-row.js.map +1 -1
  199. package/dist/components/table/table.js.map +1 -1
  200. package/dist/components/table/use-check.js +2 -1
  201. package/dist/components/table/use-check.js.map +1 -1
  202. package/dist/components/table/use-columns.d.ts +1 -1
  203. package/dist/components/table/use-rows.js +2 -1
  204. package/dist/components/table/use-rows.js.map +1 -1
  205. package/dist/components/table-editor/table-editor.js.map +1 -1
  206. package/dist/components/tabs/tabs-horizontal.js +2 -1
  207. package/dist/components/tabs/tabs-horizontal.js.map +1 -1
  208. package/dist/components/tabs/tabs-vertical.js.map +1 -1
  209. package/dist/components/tabs/tabs.js.map +1 -1
  210. package/dist/components/tabs/use-tabs-bar.js +10 -25
  211. package/dist/components/tabs/use-tabs-bar.js.map +1 -1
  212. package/dist/components/tag/style.d.ts +1 -1
  213. package/dist/components/tag/tag.js.map +1 -1
  214. package/dist/components/text/style.d.ts +1 -1
  215. package/dist/components/text/text.js.map +1 -1
  216. package/dist/components/textarea/textarea.js.map +1 -1
  217. package/dist/components/theme/theme.js +3 -2
  218. package/dist/components/theme/theme.js.map +1 -1
  219. package/dist/components/tip/style.d.ts +1 -1
  220. package/dist/components/tip/tip.js.map +1 -1
  221. package/dist/components/tree/tree-node.js.map +1 -1
  222. package/dist/components/tree/tree.js.map +1 -1
  223. package/dist/components/tree-select/tree-select.js.map +1 -1
  224. package/dist/components/watermark/style.d.ts +1 -1
  225. package/dist/components/watermark/watermark.js.map +1 -1
  226. package/dist/index.d.ts +93 -97
  227. package/dist/index.js +2 -1
  228. package/dist/node_modules/.bun/@codemirror_autocomplete@6.20.3/node_modules/@codemirror/autocomplete/dist/index.js +2 -2
  229. package/dist/node_modules/.bun/@codemirror_autocomplete@6.20.3/node_modules/@codemirror/autocomplete/dist/index.js.map +1 -1
  230. package/dist/node_modules/.bun/@codemirror_commands@6.10.4/node_modules/@codemirror/commands/dist/index.js +3 -3
  231. package/dist/node_modules/.bun/@codemirror_commands@6.10.4/node_modules/@codemirror/commands/dist/index.js.map +1 -1
  232. package/dist/node_modules/.bun/@codemirror_lang-css@6.3.1/node_modules/@codemirror/lang-css/dist/index.js.map +1 -1
  233. package/dist/node_modules/.bun/@codemirror_lang-html@6.4.11/node_modules/@codemirror/lang-html/dist/index.js +5 -4
  234. package/dist/node_modules/.bun/@codemirror_lang-html@6.4.11/node_modules/@codemirror/lang-html/dist/index.js.map +1 -1
  235. package/dist/node_modules/.bun/@codemirror_lang-javascript@6.2.5/node_modules/@codemirror/lang-javascript/dist/index.js +2 -2
  236. package/dist/node_modules/.bun/{@codemirror_lang-markdown@6.5.1 → @codemirror_lang-markdown@6.5.2}/node_modules/@codemirror/lang-markdown/dist/index.js +4 -3
  237. package/dist/node_modules/.bun/@codemirror_lang-markdown@6.5.2/node_modules/@codemirror/lang-markdown/dist/index.js.map +1 -0
  238. package/dist/node_modules/.bun/@codemirror_lang-sql@6.10.0/node_modules/@codemirror/lang-sql/dist/index.js +2 -1
  239. package/dist/node_modules/.bun/@codemirror_lang-sql@6.10.0/node_modules/@codemirror/lang-sql/dist/index.js.map +1 -1
  240. package/dist/node_modules/.bun/@codemirror_language@6.12.4/node_modules/@codemirror/language/dist/index.js +2 -2
  241. package/dist/node_modules/.bun/@codemirror_language@6.12.4/node_modules/@codemirror/language/dist/index.js.map +1 -1
  242. package/dist/node_modules/.bun/@codemirror_lint@6.9.7/node_modules/@codemirror/lint/dist/index.js +4 -3
  243. package/dist/node_modules/.bun/@codemirror_lint@6.9.7/node_modules/@codemirror/lint/dist/index.js.map +1 -1
  244. package/dist/node_modules/.bun/@codemirror_search@6.7.1/node_modules/@codemirror/search/dist/index.js +2 -2
  245. package/dist/node_modules/.bun/@codemirror_search@6.7.1/node_modules/@codemirror/search/dist/index.js.map +1 -1
  246. package/dist/node_modules/.bun/{@codemirror_state@6.7.0 → @codemirror_state@6.7.1}/node_modules/@codemirror/state/dist/index.js +13 -3
  247. package/dist/node_modules/.bun/@codemirror_state@6.7.1/node_modules/@codemirror/state/dist/index.js.map +1 -0
  248. package/dist/node_modules/.bun/@codemirror_theme-one-dark@6.1.3/node_modules/@codemirror/theme-one-dark/dist/index.js +1 -1
  249. package/dist/node_modules/.bun/@codemirror_theme-one-dark@6.1.3/node_modules/@codemirror/theme-one-dark/dist/index.js.map +1 -1
  250. package/dist/node_modules/.bun/{@codemirror_view@6.43.4 → @codemirror_view@6.43.8}/node_modules/@codemirror/view/dist/index.js +86 -64
  251. package/dist/node_modules/.bun/@codemirror_view@6.43.8/node_modules/@codemirror/view/dist/index.js.map +1 -0
  252. package/dist/node_modules/.bun/@lezer_common@1.5.2/node_modules/@lezer/common/dist/index.js.map +1 -1
  253. package/dist/node_modules/.bun/@lezer_css@1.3.4/node_modules/@lezer/css/dist/index.js.map +1 -1
  254. package/dist/node_modules/.bun/@lezer_highlight@1.2.3/node_modules/@lezer/highlight/dist/index.js.map +1 -1
  255. package/dist/node_modules/.bun/@lezer_html@1.3.13/node_modules/@lezer/html/dist/index.js.map +1 -1
  256. package/dist/node_modules/.bun/@lezer_javascript@1.5.4/node_modules/@lezer/javascript/dist/index.js.map +1 -1
  257. package/dist/node_modules/.bun/@lezer_lr@1.4.10/node_modules/@lezer/lr/dist/index.js.map +1 -1
  258. package/dist/node_modules/.bun/@lezer_markdown@1.7.2/node_modules/@lezer/markdown/dist/index.js +1 -1
  259. package/dist/node_modules/.bun/@lezer_markdown@1.7.2/node_modules/@lezer/markdown/dist/index.js.map +1 -1
  260. package/dist/node_modules/.bun/@marijn_find-cluster-break@1.0.2/node_modules/@marijn/find-cluster-break/src/index.js.map +1 -1
  261. package/dist/node_modules/.bun/style-mod@4.1.3/node_modules/style-mod/src/style-mod.js.map +1 -1
  262. package/dist/types/collapse.d.ts +23 -4
  263. package/dist/types/contextmenu.d.ts +10 -4
  264. package/dist/types/index.d.ts +2 -8
  265. package/package.json +34 -30
  266. package/src/components/batch-edit/__test__/batch-edit.test.ts +199 -0
  267. package/src/components/batch-edit/batch-edit-form.vue +8 -8
  268. package/src/components/batch-edit/batch-edit.vue +2 -1
  269. package/src/components/batch-edit/di.ts +2 -0
  270. package/src/components/batch-edit/use-edit-state.ts +19 -12
  271. package/src/components/collapse/__test__/collapse.test.ts +178 -1
  272. package/src/components/collapse/collapse-item.vue +40 -12
  273. package/src/components/collapse/style.scss +26 -62
  274. package/src/components/contextmenu/__test__/contextmenu.test.ts +165 -0
  275. package/src/components/contextmenu/contextmenu-item.vue +7 -4
  276. package/src/components/contextmenu/contextmenu-panel.vue +7 -4
  277. package/src/components/contextmenu/index.ts +1 -0
  278. package/src/components/contextmenu/style.scss +16 -0
  279. package/src/components/file-viewer/helper.ts +0 -53
  280. package/src/components/file-viewer/previewers/sheet-previewer.vue +91 -46
  281. package/src/components/message-confirm/style.scss +19 -0
  282. package/src/components/notification/style.scss +16 -4
  283. package/src/components/radio-group/style.scss +1 -1
  284. package/src/components/slider/style.scss +1 -1
  285. package/src/components/steps/style.scss +2 -2
  286. package/src/components/tabs/use-tabs-bar.ts +15 -20
  287. package/src/types/collapse.ts +25 -3
  288. package/src/types/contextmenu.ts +10 -4
  289. package/dist/components/action/action-group.vue.d.ts +0 -25
  290. package/dist/components/action/action.vue.d.ts +0 -33
  291. package/dist/components/action/index.d.ts +0 -3
  292. package/dist/components/auto-complete/auto-complete.vue.d.ts +0 -41
  293. package/dist/components/auto-complete/index.d.ts +0 -2
  294. package/dist/components/badge/badge.vue.d.ts +0 -20
  295. package/dist/components/badge/index.d.ts +0 -2
  296. package/dist/components/batch-edit/batch-edit.vue.d.ts +0 -45
  297. package/dist/components/breadcrumb/breadcrumb.vue.d.ts +0 -24
  298. package/dist/components/breadcrumb/index.d.ts +0 -2
  299. package/dist/components/button/button-group.vue.d.ts +0 -19
  300. package/dist/components/button/button.vue.d.ts +0 -27
  301. package/dist/components/button/index.d.ts +0 -3
  302. package/dist/components/calendar/calendar.vue.d.ts +0 -17
  303. package/dist/components/calendar/index.d.ts +0 -2
  304. package/dist/components/card/card-action.vue.d.ts +0 -18
  305. package/dist/components/card/card-content.vue.d.ts +0 -18
  306. package/dist/components/card/card-cover.vue.d.ts +0 -8
  307. package/dist/components/card/card-header.vue.d.ts +0 -16
  308. package/dist/components/card/card.vue.d.ts +0 -18
  309. package/dist/components/card/index.d.ts +0 -6
  310. package/dist/components/cascade/cascade.vue.d.ts +0 -31
  311. package/dist/components/cascade/index.d.ts +0 -2
  312. package/dist/components/check-tag/check-tag.vue.d.ts +0 -22
  313. package/dist/components/check-tag/index.d.ts +0 -2
  314. package/dist/components/checkbox/checkbox-button.vue.d.ts +0 -35
  315. package/dist/components/checkbox/checkbox.vue.d.ts +0 -34
  316. package/dist/components/checkbox/index.d.ts +0 -3
  317. package/dist/components/checkbox-group/checkbox-group.vue.d.ts +0 -24
  318. package/dist/components/checkbox-group/index.d.ts +0 -2
  319. package/dist/components/code-editor/code-editor.vue.d.ts +0 -30
  320. package/dist/components/code-editor/index.d.ts +0 -2
  321. package/dist/components/collapse/collapse-item.vue.d.ts +0 -24
  322. package/dist/components/collapse/collapse.vue.d.ts +0 -27
  323. package/dist/components/collapse/index.d.ts +0 -3
  324. package/dist/components/condition-editor/condition-editor.vue.d.ts +0 -15
  325. package/dist/components/contextmenu/contextmenu.vue.d.ts +0 -14
  326. package/dist/components/date-panel/date-panel.vue.d.ts +0 -17
  327. package/dist/components/date-panel/index.d.ts +0 -2
  328. package/dist/components/date-picker/date-picker.vue.d.ts +0 -18
  329. package/dist/components/date-picker/index.d.ts +0 -2
  330. package/dist/components/date-range-picker/date-range-picker.vue.d.ts +0 -18
  331. package/dist/components/date-range-picker/index.d.ts +0 -2
  332. package/dist/components/dialog/dialog.vue.d.ts +0 -43
  333. package/dist/components/dialog/index.d.ts +0 -2
  334. package/dist/components/drawer/drawer.vue.d.ts +0 -36
  335. package/dist/components/drawer/index.d.ts +0 -2
  336. package/dist/components/dropdown/dropdown.vue.d.ts +0 -30
  337. package/dist/components/dropdown/index.d.ts +0 -2
  338. package/dist/components/dual-nav/dual-nav.vue.d.ts +0 -15
  339. package/dist/components/dual-nav/index.d.ts +0 -2
  340. package/dist/components/empty/empty.vue.d.ts +0 -11
  341. package/dist/components/empty/index.d.ts +0 -2
  342. package/dist/components/expression-editor/expression-editor.vue.d.ts +0 -16
  343. package/dist/components/expression-editor/index.d.ts +0 -2
  344. package/dist/components/file-picker/file-picker.vue.d.ts +0 -27
  345. package/dist/components/file-picker/index.d.ts +0 -2
  346. package/dist/components/file-viewer/file-viewer.vue.d.ts +0 -40
  347. package/dist/components/file-viewer/index.d.ts +0 -2
  348. package/dist/components/file-viewer/sheet-parser.js +0 -46
  349. package/dist/components/file-viewer/sheet-parser.js.map +0 -1
  350. package/dist/components/float-button/float-button.vue.d.ts +0 -12
  351. package/dist/components/float-button/index.d.ts +0 -2
  352. package/dist/components/form/form.vue.d.ts +0 -23
  353. package/dist/components/form/index.d.ts +0 -2
  354. package/dist/components/form-item/form-item.vue.d.ts +0 -21
  355. package/dist/components/form-item/index.d.ts +0 -2
  356. package/dist/components/gantt-chart/gantt-chart.vue.d.ts +0 -8
  357. package/dist/components/gantt-chart/index.d.ts +0 -2
  358. package/dist/components/grid/grid-item.vue.d.ts +0 -20
  359. package/dist/components/grid/grid.vue.d.ts +0 -27
  360. package/dist/components/grid/index.d.ts +0 -3
  361. package/dist/components/grid-input/grid-input.vue.d.ts +0 -19
  362. package/dist/components/grid-input/index.d.ts +0 -2
  363. package/dist/components/group-input/group-input.vue.d.ts +0 -26
  364. package/dist/components/group-input/index.d.ts +0 -2
  365. package/dist/components/group-nav/group-nav.vue.d.ts +0 -12
  366. package/dist/components/group-nav/index.d.ts +0 -2
  367. package/dist/components/icon/icon.vue.d.ts +0 -18
  368. package/dist/components/icon/index.d.ts +0 -2
  369. package/dist/components/input/index.d.ts +0 -2
  370. package/dist/components/input/input.vue.d.ts +0 -50
  371. package/dist/components/kbd/kbd.vue.d.ts +0 -16
  372. package/dist/components/layout/index.d.ts +0 -2
  373. package/dist/components/layout/layout.vue.d.ts +0 -20
  374. package/dist/components/list/index.d.ts +0 -3
  375. package/dist/components/list/list-item.vue.d.ts +0 -16
  376. package/dist/components/list/list.vue.d.ts +0 -21
  377. package/dist/components/loading/loading.vue.d.ts +0 -11
  378. package/dist/components/message/message.vue.d.ts +0 -16
  379. package/dist/components/message-confirm/message-confirm.vue.d.ts +0 -19
  380. package/dist/components/multi-select/index.d.ts +0 -2
  381. package/dist/components/multi-select/multi-select.vue.d.ts +0 -48
  382. package/dist/components/multi-tree-select/index.d.ts +0 -2
  383. package/dist/components/multi-tree-select/multi-tree-select.vue.d.ts +0 -44
  384. package/dist/components/nav/index.d.ts +0 -4
  385. package/dist/components/nav/nav-item.vue.d.ts +0 -12
  386. package/dist/components/nav/nav-sub.vue.d.ts +0 -13
  387. package/dist/components/nav/nav.vue.d.ts +0 -19
  388. package/dist/components/notification/notification.vue.d.ts +0 -18
  389. package/dist/components/number/index.d.ts +0 -2
  390. package/dist/components/number/number.vue.d.ts +0 -11
  391. package/dist/components/number-input/index.d.ts +0 -2
  392. package/dist/components/number-input/number-input.vue.d.ts +0 -39
  393. package/dist/components/number-range-input/index.d.ts +0 -2
  394. package/dist/components/number-range-input/number-range-input.vue.d.ts +0 -36
  395. package/dist/components/paginator/index.d.ts +0 -2
  396. package/dist/components/paginator/paginator.vue.d.ts +0 -29
  397. package/dist/components/palette/index.d.ts +0 -2
  398. package/dist/components/palette/palette.vue.d.ts +0 -20
  399. package/dist/components/password-input/index.d.ts +0 -2
  400. package/dist/components/password-input/password-input.vue.d.ts +0 -30
  401. package/dist/components/pop-confirm/index.d.ts +0 -2
  402. package/dist/components/pop-confirm/pop-confirm.vue.d.ts +0 -33
  403. package/dist/components/progress/index.d.ts +0 -2
  404. package/dist/components/progress/progress.vue.d.ts +0 -25
  405. package/dist/components/progress-nodes/index.d.ts +0 -2
  406. package/dist/components/progress-nodes/progress-nodes.vue.d.ts +0 -36
  407. package/dist/components/radio/index.d.ts +0 -2
  408. package/dist/components/radio/radio.vue.d.ts +0 -31
  409. package/dist/components/radio-group/index.d.ts +0 -2
  410. package/dist/components/radio-group/radio-group.vue.d.ts +0 -26
  411. package/dist/components/rich-text-editor/index.d.ts +0 -2
  412. package/dist/components/rich-text-editor/rich-text-editor.vue.d.ts +0 -23
  413. package/dist/components/scroll/index.d.ts +0 -2
  414. package/dist/components/scroll/scroll.vue.d.ts +0 -28
  415. package/dist/components/select/index.d.ts +0 -2
  416. package/dist/components/select/select.vue.d.ts +0 -38
  417. package/dist/components/slider/index.d.ts +0 -2
  418. package/dist/components/slider/slider.vue.d.ts +0 -21
  419. package/dist/components/steps/index.d.ts +0 -2
  420. package/dist/components/steps/steps.vue.d.ts +0 -29
  421. package/dist/components/switch/index.d.ts +0 -2
  422. package/dist/components/switch/switch.vue.d.ts +0 -24
  423. package/dist/components/table/node/row.d.ts +0 -49
  424. package/dist/components/table/table.vue.d.ts +0 -54
  425. package/dist/components/table-editor/index.d.ts +0 -2
  426. package/dist/components/table-editor/table-editor.vue.d.ts +0 -12
  427. package/dist/components/tabs/index.d.ts +0 -4
  428. package/dist/components/tabs/tabs-horizontal.vue.d.ts +0 -40
  429. package/dist/components/tabs/tabs-vertical.vue.d.ts +0 -39
  430. package/dist/components/tabs/tabs.vue.d.ts +0 -36
  431. package/dist/components/tag/index.d.ts +0 -2
  432. package/dist/components/tag/tag.vue.d.ts +0 -22
  433. package/dist/components/text/index.d.ts +0 -2
  434. package/dist/components/text/text.vue.d.ts +0 -10
  435. package/dist/components/textarea/index.d.ts +0 -2
  436. package/dist/components/textarea/textarea.vue.d.ts +0 -34
  437. package/dist/components/theme/index.d.ts +0 -2
  438. package/dist/components/theme/theme.vue.d.ts +0 -8
  439. package/dist/components/tip/index.d.ts +0 -2
  440. package/dist/components/tip/tip.vue.d.ts +0 -31
  441. package/dist/components/tree/di.d.ts +0 -12
  442. package/dist/components/tree/index.d.ts +0 -2
  443. package/dist/components/tree/tree.vue.d.ts +0 -40
  444. package/dist/components/tree-select/index.d.ts +0 -2
  445. package/dist/components/tree-select/tree-select.vue.d.ts +0 -48
  446. package/dist/components/watermark/index.d.ts +0 -2
  447. package/dist/components/watermark/watermark.vue.d.ts +0 -21
  448. package/dist/node_modules/.bun/@codemirror_lang-markdown@6.5.1/node_modules/@codemirror/lang-markdown/dist/index.js.map +0 -1
  449. package/dist/node_modules/.bun/@codemirror_state@6.7.0/node_modules/@codemirror/state/dist/index.js.map +0 -1
  450. package/dist/node_modules/.bun/@codemirror_view@6.43.4/node_modules/@codemirror/view/dist/index.js.map +0 -1
  451. package/src/components/file-viewer/sheet-parser.ts +0 -52
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../../../../../../../../node_modules/.bun/@marijn+find-cluster-break@1.0.2/node_modules/@marijn/find-cluster-break/src/index.js"],"sourcesContent":["// These are filled with ranges (rangeFrom[i] up to but not including\n// rangeTo[i]) of code points that count as extending characters.\nlet rangeFrom = [], rangeTo = []\n\n;(() => {\n // Compressed representation of the Grapheme_Cluster_Break=Extend\n // information from\n // http://www.unicode.org/Public/16.0.0/ucd/auxiliary/GraphemeBreakProperty.txt.\n // Each pair of elements represents a range, as an offet from the\n // previous range and a length. Numbers are in base-36, with the empty\n // string being a shorthand for 1.\n let numbers = \"lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o\".split(\",\").map(s => s ? parseInt(s, 36) : 1)\n for (let i = 0, n = 0; i < numbers.length; i++)\n (i % 2 ? rangeTo : rangeFrom).push(n = n + numbers[i])\n})()\n\nexport function isExtendingChar(code) {\n if (code < 768) return false\n for (let from = 0, to = rangeFrom.length;;) {\n let mid = (from + to) >> 1\n if (code < rangeFrom[mid]) to = mid\n else if (code >= rangeTo[mid]) from = mid + 1\n else return true\n if (from == to) return false\n }\n}\n\nfunction isRegionalIndicator(code) {\n return code >= 0x1F1E6 && code <= 0x1F1FF\n}\n\nfunction check(code) {\n for (let i = 0; i < rangeFrom.length; i++) {\n if (rangeTo[i] > code) return rangeFrom[i] <= code\n }\n return false\n}\n\nconst ZWJ = 0x200d\n\nexport function findClusterBreak(str, pos, forward = true, includeExtending = true) {\n return (forward ? nextClusterBreak : prevClusterBreak)(str, pos, includeExtending)\n}\n\nfunction nextClusterBreak(str, pos, includeExtending) {\n if (pos == str.length) return pos\n // If pos is in the middle of a surrogate pair, move to its start\n if (pos && surrogateLow(str.charCodeAt(pos)) && surrogateHigh(str.charCodeAt(pos - 1))) pos--\n let prev = codePointAt(str, pos)\n pos += codePointSize(prev)\n while (pos < str.length) {\n let next = codePointAt(str, pos)\n if (prev == ZWJ || next == ZWJ || includeExtending && isExtendingChar(next)) {\n pos += codePointSize(next)\n prev = next\n } else if (isRegionalIndicator(next)) {\n let countBefore = 0, i = pos - 2\n while (i >= 0 && isRegionalIndicator(codePointAt(str, i))) { countBefore++; i -= 2 }\n if (countBefore % 2 == 0) break\n else pos += 2\n } else {\n break\n }\n }\n return pos\n}\n\nfunction prevClusterBreak(str, pos, includeExtending) {\n while (pos > 0) {\n let found = nextClusterBreak(str, pos - 2, includeExtending)\n if (found < pos) return found\n pos--\n }\n return 0\n}\n\nfunction codePointAt(str, pos) {\n let code0 = str.charCodeAt(pos)\n if (!surrogateHigh(code0) || pos + 1 == str.length) return code0\n let code1 = str.charCodeAt(pos + 1)\n if (!surrogateLow(code1)) return code0\n return ((code0 - 0xd800) << 10) + (code1 - 0xdc00) + 0x10000\n}\n\nfunction surrogateLow(ch) { return ch >= 0xDC00 && ch < 0xE000 }\nfunction surrogateHigh(ch) { return ch >= 0xD800 && ch < 0xDC00 }\nfunction codePointSize(code) { return code < 0x10000 ? 1 : 2 }\n"],"x_google_ignoreList":[0],"mappings":";AAEA,IAAI,YAAY,CAAC;IAAG,UAAU,CAAC;OAEvB;CAON,IAAI,UAAU,izCAAizC,MAAM,GAAG,CAAC,CAAC,KAAI,MAAK,IAAI,SAAS,GAAG,EAAE,IAAI,CAAC;CAC12C,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,IAAI,QAAQ,QAAQ,KACzC,CAAC,IAAI,IAAI,UAAU,UAAA,CAAW,KAAK,IAAI,IAAI,QAAQ,EAAE;AACzD,EAAA,CAAG;AAEH,SAAgB,gBAAgB,MAAM;CACpC,IAAI,OAAO,KAAK,OAAO;CACvB,KAAK,IAAI,OAAO,GAAG,KAAK,UAAU,UAAU;EAC1C,IAAI,MAAO,OAAO,MAAO;EACzB,IAAI,OAAO,UAAU,MAAM,KAAK;OAC3B,IAAI,QAAQ,QAAQ,MAAM,OAAO,MAAM;OACvC,OAAO;EACZ,IAAI,QAAQ,IAAI,OAAO;CACzB;AACF;AAEA,SAAS,oBAAoB,MAAM;CACjC,OAAO,QAAQ,UAAW,QAAQ;AACpC;AASA,MAAM,MAAM;AAEZ,SAAgB,iBAAiB,KAAK,KAAK,UAAU,MAAM,mBAAmB,MAAM;CAClF,QAAQ,UAAU,mBAAmB,iBAAA,CAAkB,KAAK,KAAK,gBAAgB;AACnF;AAEA,SAAS,iBAAiB,KAAK,KAAK,kBAAkB;CACpD,IAAI,OAAO,IAAI,QAAQ,OAAO;CAE9B,IAAI,OAAO,aAAa,IAAI,WAAW,GAAG,CAAC,KAAK,cAAc,IAAI,WAAW,MAAM,CAAC,CAAC,GAAG;CACxF,IAAI,OAAO,YAAY,KAAK,GAAG;CAC/B,OAAO,cAAc,IAAI;CACzB,OAAO,MAAM,IAAI,QAAQ;EACvB,IAAI,OAAO,YAAY,KAAK,GAAG;EAC/B,IAAI,QAAQ,OAAO,QAAQ,OAAO,oBAAoB,gBAAgB,IAAI,GAAG;GAC3E,OAAO,cAAc,IAAI;GACzB,OAAO;EACT,OAAO,IAAI,oBAAoB,IAAI,GAAG;GACpC,IAAI,cAAc,GAAG,IAAI,MAAM;GAC/B,OAAO,KAAK,KAAK,oBAAoB,YAAY,KAAK,CAAC,CAAC,GAAG;IAAE;IAAe,KAAK;GAAE;GACnF,IAAI,cAAc,KAAK,GAAG;QACrB,OAAO;EACd,OACE;CAEJ;CACA,OAAO;AACT;AAEA,SAAS,iBAAiB,KAAK,KAAK,kBAAkB;CACpD,OAAO,MAAM,GAAG;EACd,IAAI,QAAQ,iBAAiB,KAAK,MAAM,GAAG,gBAAgB;EAC3D,IAAI,QAAQ,KAAK,OAAO;EACxB;CACF;CACA,OAAO;AACT;AAEA,SAAS,YAAY,KAAK,KAAK;CAC7B,IAAI,QAAQ,IAAI,WAAW,GAAG;CAC9B,IAAI,CAAC,cAAc,KAAK,KAAK,MAAM,KAAK,IAAI,QAAQ,OAAO;CAC3D,IAAI,QAAQ,IAAI,WAAW,MAAM,CAAC;CAClC,IAAI,CAAC,aAAa,KAAK,GAAG,OAAO;CACjC,QAAS,QAAQ,SAAW,OAAO,QAAQ,SAAU;AACvD;AAEA,SAAS,aAAa,IAAI;CAAE,OAAO,MAAM,SAAU,KAAK;AAAO;AAC/D,SAAS,cAAc,IAAI;CAAE,OAAO,MAAM,SAAU,KAAK;AAAO;AAChE,SAAS,cAAc,MAAM;CAAE,OAAO,OAAO,QAAU,IAAI;AAAE"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../../../../../../node_modules/.bun/@marijn+find-cluster-break@1.0.2/node_modules/@marijn/find-cluster-break/src/index.js"],"sourcesContent":["// These are filled with ranges (rangeFrom[i] up to but not including\n// rangeTo[i]) of code points that count as extending characters.\nlet rangeFrom = [], rangeTo = []\n\n;(() => {\n // Compressed representation of the Grapheme_Cluster_Break=Extend\n // information from\n // http://www.unicode.org/Public/16.0.0/ucd/auxiliary/GraphemeBreakProperty.txt.\n // Each pair of elements represents a range, as an offet from the\n // previous range and a length. Numbers are in base-36, with the empty\n // string being a shorthand for 1.\n let numbers = \"lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o\".split(\",\").map(s => s ? parseInt(s, 36) : 1)\n for (let i = 0, n = 0; i < numbers.length; i++)\n (i % 2 ? rangeTo : rangeFrom).push(n = n + numbers[i])\n})()\n\nexport function isExtendingChar(code) {\n if (code < 768) return false\n for (let from = 0, to = rangeFrom.length;;) {\n let mid = (from + to) >> 1\n if (code < rangeFrom[mid]) to = mid\n else if (code >= rangeTo[mid]) from = mid + 1\n else return true\n if (from == to) return false\n }\n}\n\nfunction isRegionalIndicator(code) {\n return code >= 0x1F1E6 && code <= 0x1F1FF\n}\n\nfunction check(code) {\n for (let i = 0; i < rangeFrom.length; i++) {\n if (rangeTo[i] > code) return rangeFrom[i] <= code\n }\n return false\n}\n\nconst ZWJ = 0x200d\n\nexport function findClusterBreak(str, pos, forward = true, includeExtending = true) {\n return (forward ? nextClusterBreak : prevClusterBreak)(str, pos, includeExtending)\n}\n\nfunction nextClusterBreak(str, pos, includeExtending) {\n if (pos == str.length) return pos\n // If pos is in the middle of a surrogate pair, move to its start\n if (pos && surrogateLow(str.charCodeAt(pos)) && surrogateHigh(str.charCodeAt(pos - 1))) pos--\n let prev = codePointAt(str, pos)\n pos += codePointSize(prev)\n while (pos < str.length) {\n let next = codePointAt(str, pos)\n if (prev == ZWJ || next == ZWJ || includeExtending && isExtendingChar(next)) {\n pos += codePointSize(next)\n prev = next\n } else if (isRegionalIndicator(next)) {\n let countBefore = 0, i = pos - 2\n while (i >= 0 && isRegionalIndicator(codePointAt(str, i))) { countBefore++; i -= 2 }\n if (countBefore % 2 == 0) break\n else pos += 2\n } else {\n break\n }\n }\n return pos\n}\n\nfunction prevClusterBreak(str, pos, includeExtending) {\n while (pos > 0) {\n let found = nextClusterBreak(str, pos - 2, includeExtending)\n if (found < pos) return found\n pos--\n }\n return 0\n}\n\nfunction codePointAt(str, pos) {\n let code0 = str.charCodeAt(pos)\n if (!surrogateHigh(code0) || pos + 1 == str.length) return code0\n let code1 = str.charCodeAt(pos + 1)\n if (!surrogateLow(code1)) return code0\n return ((code0 - 0xd800) << 10) + (code1 - 0xdc00) + 0x10000\n}\n\nfunction surrogateLow(ch) { return ch >= 0xDC00 && ch < 0xE000 }\nfunction surrogateHigh(ch) { return ch >= 0xD800 && ch < 0xDC00 }\nfunction codePointSize(code) { return code < 0x10000 ? 1 : 2 }\n"],"x_google_ignoreList":[0],"mappings":";AAEA,IAAI,YAAY,CAAC;AAAG,IAAA,UAAU,CAAC;OAEvB;CAON,IAAI,UAAU,izCAAizC,MAAM,GAAG,CAAC,CAAC,KAAI,MAAK,IAAI,SAAS,GAAG,EAAE,IAAI,CAAC;CAC12C,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,IAAI,QAAQ,QAAQ,KACzC,CAAC,IAAI,IAAI,UAAU,UAAA,CAAW,KAAK,IAAI,IAAI,QAAQ,EAAE;AACzD,EAAA,CAAG;AAEH,SAAgB,gBAAgB,MAAM;CACpC,IAAI,OAAO,KAAK,OAAO;CACvB,KAAK,IAAI,OAAO,GAAG,KAAK,UAAU,UAAU;EAC1C,IAAI,MAAO,OAAO,MAAO;EACzB,IAAI,OAAO,UAAU,MAAM,KAAK;OAC3B,IAAI,QAAQ,QAAQ,MAAM,OAAO,MAAM;OACvC,OAAO;EACZ,IAAI,QAAQ,IAAI,OAAO;CACzB;AACF;AAEA,SAAS,oBAAoB,MAAM;CACjC,OAAO,QAAQ,UAAW,QAAQ;AACpC;AASA,MAAM,MAAM;AAEZ,SAAgB,iBAAiB,KAAK,KAAK,UAAU,MAAM,mBAAmB,MAAM;CAClF,QAAQ,UAAU,mBAAmB,iBAAA,CAAkB,KAAK,KAAK,gBAAgB;AACnF;AAEA,SAAS,iBAAiB,KAAK,KAAK,kBAAkB;CACpD,IAAI,OAAO,IAAI,QAAQ,OAAO;CAE9B,IAAI,OAAO,aAAa,IAAI,WAAW,GAAG,CAAC,KAAK,cAAc,IAAI,WAAW,MAAM,CAAC,CAAC,GAAG;CACxF,IAAI,OAAO,YAAY,KAAK,GAAG;CAC/B,OAAO,cAAc,IAAI;CACzB,OAAO,MAAM,IAAI,QAAQ;EACvB,IAAI,OAAO,YAAY,KAAK,GAAG;EAC/B,IAAI,QAAQ,OAAO,QAAQ,OAAO,oBAAoB,gBAAgB,IAAI,GAAG;GAC3E,OAAO,cAAc,IAAI;GACzB,OAAO;EACT,OAAO,IAAI,oBAAoB,IAAI,GAAG;GACpC,IAAI,cAAc,GAAG,IAAI,MAAM;GAC/B,OAAO,KAAK,KAAK,oBAAoB,YAAY,KAAK,CAAC,CAAC,GAAG;IAAE;IAAe,KAAK;GAAE;GACnF,IAAI,cAAc,KAAK,GAAG;QACrB,OAAO;EACd,OACE;CAEJ;CACA,OAAO;AACT;AAEA,SAAS,iBAAiB,KAAK,KAAK,kBAAkB;CACpD,OAAO,MAAM,GAAG;EACd,IAAI,QAAQ,iBAAiB,KAAK,MAAM,GAAG,gBAAgB;EAC3D,IAAI,QAAQ,KAAK,OAAO;EACxB;CACF;CACA,OAAO;AACT;AAEA,SAAS,YAAY,KAAK,KAAK;CAC7B,IAAI,QAAQ,IAAI,WAAW,GAAG;CAC9B,IAAI,CAAC,cAAc,KAAK,KAAK,MAAM,KAAK,IAAI,QAAQ,OAAO;CAC3D,IAAI,QAAQ,IAAI,WAAW,MAAM,CAAC;CAClC,IAAI,CAAC,aAAa,KAAK,GAAG,OAAO;CACjC,QAAS,QAAQ,SAAW,OAAO,QAAQ,SAAU;AACvD;AAEA,SAAS,aAAa,IAAI;CAAE,OAAO,MAAM,SAAU,KAAK;AAAO;AAC/D,SAAS,cAAc,IAAI;CAAE,OAAO,MAAM,SAAU,KAAK;AAAO;AAChE,SAAS,cAAc,MAAM;CAAE,OAAO,OAAO,QAAU,IAAI;AAAE"}
@@ -1 +1 @@
1
- {"version":3,"file":"style-mod.js","names":[],"sources":["../../../../../../../../../node_modules/.bun/style-mod@4.1.3/node_modules/style-mod/src/style-mod.js"],"sourcesContent":["const C = \"\\u037c\"\nconst COUNT = typeof Symbol == \"undefined\" ? \"__\" + C : Symbol.for(C)\nconst SET = typeof Symbol == \"undefined\" ? \"__styleSet\" + Math.floor(Math.random() * 1e8) : Symbol(\"styleSet\")\nconst top = typeof globalThis != \"undefined\" ? globalThis : typeof window != \"undefined\" ? window : {}\n\n// :: - Style modules encapsulate a set of CSS rules defined from\n// JavaScript. Their definitions are only available in a given DOM\n// root after it has been _mounted_ there with `StyleModule.mount`.\n//\n// Style modules should be created once and stored somewhere, as\n// opposed to re-creating them every time you need them. The amount of\n// CSS rules generated for a given DOM root is bounded by the amount\n// of style modules that were used. So to avoid leaking rules, don't\n// create these dynamically, but treat them as one-time allocations.\nexport class StyleModule {\n // :: (Object<Style>, ?{finish: ?(string) → string})\n // Create a style module from the given spec.\n //\n // When `finish` is given, it is called on regular (non-`@`)\n // selectors (after `&` expansion) to compute the final selector.\n constructor(spec, options) {\n this.rules = []\n let {finish} = options || {}\n\n function splitSelector(selector) {\n return /^@/.test(selector) ? [selector] : selector.split(/,\\s*/)\n }\n\n function render(selectors, spec, target, isKeyframes) {\n let local = [], isAt = /^@(\\w+)\\b/.exec(selectors[0]), keyframes = isAt && isAt[1] == \"keyframes\"\n if (isAt && spec == null) return target.push(selectors[0] + \";\")\n for (let prop in spec) {\n let value = spec[prop]\n if (/&/.test(prop)) {\n render(prop.split(/,\\s*/).map(part => selectors.map(sel => part.replace(/&/, sel))).reduce((a, b) => a.concat(b)),\n value, target)\n } else if (value && typeof value == \"object\") {\n if (!isAt) throw new RangeError(\"The value of a property (\" + prop + \") should be a primitive value.\")\n render(splitSelector(prop), value, local, keyframes)\n } else if (value != null) {\n local.push(prop.replace(/_.*/, \"\").replace(/[A-Z]/g, l => \"-\" + l.toLowerCase()) + \": \" + value + \";\")\n }\n }\n if (local.length || keyframes) {\n target.push((finish && !isAt && !isKeyframes ? selectors.map(finish) : selectors).join(\", \") +\n \" {\" + local.join(\" \") + \"}\")\n }\n }\n\n for (let prop in spec) render(splitSelector(prop), spec[prop], this.rules)\n }\n\n // :: () → string\n // Returns a string containing the module's CSS rules.\n getRules() { return this.rules.join(\"\\n\") }\n\n // :: () → string\n // Generate a new unique CSS class name.\n static newName() {\n let id = top[COUNT] || 1\n top[COUNT] = id + 1\n return C + id.toString(36)\n }\n\n // :: (union<Document, ShadowRoot>, union<[StyleModule], StyleModule>, ?{nonce: ?string})\n //\n // Mount the given set of modules in the given DOM root, which ensures\n // that the CSS rules defined by the module are available in that\n // context.\n //\n // Rules are only added to the document once per root.\n //\n // Rule order will follow the order of the modules, so that rules from\n // modules later in the array take precedence of those from earlier\n // modules. If you call this function multiple times for the same root\n // in a way that changes the order of already mounted modules, the old\n // order will be changed.\n //\n // If a Content Security Policy nonce is provided, it is added to\n // the `<style>` tag generated by the library.\n static mount(root, modules, options) {\n let set = root[SET], nonce = options && options.nonce\n if (!set) set = new StyleSet(root, nonce)\n else if (nonce) set.setNonce(nonce)\n set.mount(Array.isArray(modules) ? modules : [modules], root)\n }\n}\n\nlet adoptedSet = new Map //<Document, StyleSet>\n\nclass StyleSet {\n constructor(root, nonce) {\n let doc = root.ownerDocument || root, win = doc.defaultView\n if (!root.head && root.adoptedStyleSheets && win.CSSStyleSheet) {\n let adopted = adoptedSet.get(doc)\n if (adopted) return root[SET] = adopted\n this.sheet = new win.CSSStyleSheet\n adoptedSet.set(doc, this)\n } else {\n this.styleTag = doc.createElement(\"style\")\n if (nonce) this.styleTag.setAttribute(\"nonce\", nonce)\n }\n this.modules = []\n root[SET] = this\n }\n\n mount(modules, root) {\n let sheet = this.sheet\n let pos = 0 /* Current rule offset */, j = 0 /* Index into this.modules */\n for (let i = 0; i < modules.length; i++) {\n let mod = modules[i], index = this.modules.indexOf(mod)\n if (index < j && index > -1) { // Ordering conflict\n this.modules.splice(index, 1)\n j--\n index = -1\n }\n if (index == -1) {\n this.modules.splice(j++, 0, mod)\n if (sheet) for (let k = 0; k < mod.rules.length; k++)\n sheet.insertRule(mod.rules[k], pos++)\n } else {\n while (j < index) pos += this.modules[j++].rules.length\n pos += mod.rules.length\n j++\n }\n }\n\n if (sheet) {\n if (root.adoptedStyleSheets.indexOf(this.sheet) < 0)\n root.adoptedStyleSheets = [this.sheet, ...root.adoptedStyleSheets]\n } else {\n let text = \"\"\n for (let i = 0; i < this.modules.length; i++)\n text += this.modules[i].getRules() + \"\\n\"\n this.styleTag.textContent = text\n let target = root.head || root\n if (this.styleTag.parentNode != target)\n target.insertBefore(this.styleTag, target.firstChild)\n }\n }\n\n setNonce(nonce) {\n if (this.styleTag && this.styleTag.getAttribute(\"nonce\") != nonce)\n this.styleTag.setAttribute(\"nonce\", nonce)\n }\n}\n\n// Style::Object<union<Style,string>>\n//\n// A style is an object that, in the simple case, maps CSS property\n// names to strings holding their values, as in `{color: \"red\",\n// fontWeight: \"bold\"}`. The property names can be given in\n// camel-case—the library will insert a dash before capital letters\n// when converting them to CSS.\n//\n// If you include an underscore in a property name, it and everything\n// after it will be removed from the output, which can be useful when\n// providing a property multiple times, for browser compatibility\n// reasons.\n//\n// A property in a style object can also be a sub-selector, which\n// extends the current context to add a pseudo-selector or a child\n// selector. Such a property should contain a `&` character, which\n// will be replaced by the current selector. For example `{\"&:before\":\n// {content: '\"hi\"'}}`. Sub-selectors and regular properties can\n// freely be mixed in a given object. Any property containing a `&` is\n// assumed to be a sub-selector.\n//\n// Finally, a property can specify an @-block to be wrapped around the\n// styles defined inside the object that's the property's value. For\n// example to create a media query you can do `{\"@media screen and\n// (min-width: 400px)\": {...}}`.\n"],"x_google_ignoreList":[0],"mappings":"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"}
1
+ {"version":3,"file":"style-mod.js","names":[],"sources":["../../../../../../../../../node_modules/.bun/style-mod@4.1.3/node_modules/style-mod/src/style-mod.js"],"sourcesContent":["const C = \"\\u037c\"\nconst COUNT = typeof Symbol == \"undefined\" ? \"__\" + C : Symbol.for(C)\nconst SET = typeof Symbol == \"undefined\" ? \"__styleSet\" + Math.floor(Math.random() * 1e8) : Symbol(\"styleSet\")\nconst top = typeof globalThis != \"undefined\" ? globalThis : typeof window != \"undefined\" ? window : {}\n\n// :: - Style modules encapsulate a set of CSS rules defined from\n// JavaScript. Their definitions are only available in a given DOM\n// root after it has been _mounted_ there with `StyleModule.mount`.\n//\n// Style modules should be created once and stored somewhere, as\n// opposed to re-creating them every time you need them. The amount of\n// CSS rules generated for a given DOM root is bounded by the amount\n// of style modules that were used. So to avoid leaking rules, don't\n// create these dynamically, but treat them as one-time allocations.\nexport class StyleModule {\n // :: (Object<Style>, ?{finish: ?(string) → string})\n // Create a style module from the given spec.\n //\n // When `finish` is given, it is called on regular (non-`@`)\n // selectors (after `&` expansion) to compute the final selector.\n constructor(spec, options) {\n this.rules = []\n let {finish} = options || {}\n\n function splitSelector(selector) {\n return /^@/.test(selector) ? [selector] : selector.split(/,\\s*/)\n }\n\n function render(selectors, spec, target, isKeyframes) {\n let local = [], isAt = /^@(\\w+)\\b/.exec(selectors[0]), keyframes = isAt && isAt[1] == \"keyframes\"\n if (isAt && spec == null) return target.push(selectors[0] + \";\")\n for (let prop in spec) {\n let value = spec[prop]\n if (/&/.test(prop)) {\n render(prop.split(/,\\s*/).map(part => selectors.map(sel => part.replace(/&/, sel))).reduce((a, b) => a.concat(b)),\n value, target)\n } else if (value && typeof value == \"object\") {\n if (!isAt) throw new RangeError(\"The value of a property (\" + prop + \") should be a primitive value.\")\n render(splitSelector(prop), value, local, keyframes)\n } else if (value != null) {\n local.push(prop.replace(/_.*/, \"\").replace(/[A-Z]/g, l => \"-\" + l.toLowerCase()) + \": \" + value + \";\")\n }\n }\n if (local.length || keyframes) {\n target.push((finish && !isAt && !isKeyframes ? selectors.map(finish) : selectors).join(\", \") +\n \" {\" + local.join(\" \") + \"}\")\n }\n }\n\n for (let prop in spec) render(splitSelector(prop), spec[prop], this.rules)\n }\n\n // :: () → string\n // Returns a string containing the module's CSS rules.\n getRules() { return this.rules.join(\"\\n\") }\n\n // :: () → string\n // Generate a new unique CSS class name.\n static newName() {\n let id = top[COUNT] || 1\n top[COUNT] = id + 1\n return C + id.toString(36)\n }\n\n // :: (union<Document, ShadowRoot>, union<[StyleModule], StyleModule>, ?{nonce: ?string})\n //\n // Mount the given set of modules in the given DOM root, which ensures\n // that the CSS rules defined by the module are available in that\n // context.\n //\n // Rules are only added to the document once per root.\n //\n // Rule order will follow the order of the modules, so that rules from\n // modules later in the array take precedence of those from earlier\n // modules. If you call this function multiple times for the same root\n // in a way that changes the order of already mounted modules, the old\n // order will be changed.\n //\n // If a Content Security Policy nonce is provided, it is added to\n // the `<style>` tag generated by the library.\n static mount(root, modules, options) {\n let set = root[SET], nonce = options && options.nonce\n if (!set) set = new StyleSet(root, nonce)\n else if (nonce) set.setNonce(nonce)\n set.mount(Array.isArray(modules) ? modules : [modules], root)\n }\n}\n\nlet adoptedSet = new Map //<Document, StyleSet>\n\nclass StyleSet {\n constructor(root, nonce) {\n let doc = root.ownerDocument || root, win = doc.defaultView\n if (!root.head && root.adoptedStyleSheets && win.CSSStyleSheet) {\n let adopted = adoptedSet.get(doc)\n if (adopted) return root[SET] = adopted\n this.sheet = new win.CSSStyleSheet\n adoptedSet.set(doc, this)\n } else {\n this.styleTag = doc.createElement(\"style\")\n if (nonce) this.styleTag.setAttribute(\"nonce\", nonce)\n }\n this.modules = []\n root[SET] = this\n }\n\n mount(modules, root) {\n let sheet = this.sheet\n let pos = 0 /* Current rule offset */, j = 0 /* Index into this.modules */\n for (let i = 0; i < modules.length; i++) {\n let mod = modules[i], index = this.modules.indexOf(mod)\n if (index < j && index > -1) { // Ordering conflict\n this.modules.splice(index, 1)\n j--\n index = -1\n }\n if (index == -1) {\n this.modules.splice(j++, 0, mod)\n if (sheet) for (let k = 0; k < mod.rules.length; k++)\n sheet.insertRule(mod.rules[k], pos++)\n } else {\n while (j < index) pos += this.modules[j++].rules.length\n pos += mod.rules.length\n j++\n }\n }\n\n if (sheet) {\n if (root.adoptedStyleSheets.indexOf(this.sheet) < 0)\n root.adoptedStyleSheets = [this.sheet, ...root.adoptedStyleSheets]\n } else {\n let text = \"\"\n for (let i = 0; i < this.modules.length; i++)\n text += this.modules[i].getRules() + \"\\n\"\n this.styleTag.textContent = text\n let target = root.head || root\n if (this.styleTag.parentNode != target)\n target.insertBefore(this.styleTag, target.firstChild)\n }\n }\n\n setNonce(nonce) {\n if (this.styleTag && this.styleTag.getAttribute(\"nonce\") != nonce)\n this.styleTag.setAttribute(\"nonce\", nonce)\n }\n}\n\n// Style::Object<union<Style,string>>\n//\n// A style is an object that, in the simple case, maps CSS property\n// names to strings holding their values, as in `{color: \"red\",\n// fontWeight: \"bold\"}`. The property names can be given in\n// camel-case—the library will insert a dash before capital letters\n// when converting them to CSS.\n//\n// If you include an underscore in a property name, it and everything\n// after it will be removed from the output, which can be useful when\n// providing a property multiple times, for browser compatibility\n// reasons.\n//\n// A property in a style object can also be a sub-selector, which\n// extends the current context to add a pseudo-selector or a child\n// selector. Such a property should contain a `&` character, which\n// will be replaced by the current selector. For example `{\"&:before\":\n// {content: '\"hi\"'}}`. Sub-selectors and regular properties can\n// freely be mixed in a given object. Any property containing a `&` is\n// assumed to be a sub-selector.\n//\n// Finally, a property can specify an @-block to be wrapped around the\n// styles defined inside the object that's the property's value. For\n// example to create a media query you can do `{\"@media screen and\n// (min-width: 400px)\": {...}}`.\n"],"x_google_ignoreList":[0],"mappings":"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"}
@@ -20,7 +20,7 @@ interface CollapseProps extends ComponentProps {
20
20
  */
21
21
  defaultCollapseAll?: boolean;
22
22
  /**
23
- * 自定义展开图标组件,活动态会自动旋转 90°。
23
+ * 自定义展开图标组件,活动态会自动旋转 180°。
24
24
  * 接受任意 Vue 组件(SFC、Functional Component 等)。
25
25
  */
26
26
  expandIcon?: Component;
@@ -32,13 +32,32 @@ interface CollapseEmits {
32
32
  }
33
33
  /** CollapseItem 组件属性 */
34
34
  interface CollapseItemProps {
35
- /** 唯一标识 */
36
- value: CollapseValue;
35
+ /**
36
+ * 唯一标识;在 `UCollapse` 内使用时必填。
37
+ * 独立使用时可选。
38
+ */
39
+ value?: CollapseValue;
40
+ /**
41
+ * 独立使用时的展开状态(`v-model`)。
42
+ * 在 `UCollapse` 内由父组件 `modelValue` 管理,此属性无效。
43
+ * @default false
44
+ */
45
+ modelValue?: boolean;
37
46
  /** 标题文本(也可使用 #title 插槽) */
38
47
  title?: string;
39
48
  /** 是否禁用 */
40
49
  disabled?: boolean;
50
+ /**
51
+ * 独立使用时的自定义展开图标,活动态会自动旋转 180°。
52
+ * 在 `UCollapse` 内由父组件 `expandIcon` 统一管理。
53
+ */
54
+ expandIcon?: Component;
55
+ }
56
+ interface CollapseItemEmits {
57
+ (e: 'update:modelValue', value: boolean): void;
58
+ /** 展开状态变更时触发(仅独立使用) */
59
+ (e: 'change', value: boolean): void;
41
60
  }
42
61
  //#endregion
43
- export { CollapseEmits, CollapseItemProps, CollapseModelValue, CollapseProps, CollapseValue };
62
+ export { CollapseEmits, CollapseItemEmits, CollapseItemProps, CollapseModelValue, CollapseProps, CollapseValue };
44
63
  //# sourceMappingURL=collapse.d.ts.map
@@ -5,8 +5,8 @@ import { ComponentProps, DeconstructValue } from "@veltra/utils";
5
5
  * 右键菜单项
6
6
  */
7
7
  interface ContextmenuItem {
8
- /** 菜单名称 */
9
- label: string;
8
+ /** 菜单名称(divider 时可空) */
9
+ label?: string;
10
10
  /** 菜单描述 */
11
11
  description?: string;
12
12
  /** 菜单图标 */
@@ -17,6 +17,12 @@ interface ContextmenuItem {
17
17
  callback?: () => any;
18
18
  /** 是否禁用 */
19
19
  disabled?: boolean | (() => boolean);
20
+ /** 渲染为分割线(忽略其余字段) */
21
+ divider?: boolean;
22
+ /** 自定义内容组件(替代 label 文本渲染) */
23
+ render?: Component;
24
+ /** 点击本项不触发关闭流程(供内嵌交互组件使用) */
25
+ keepOpen?: boolean;
20
26
  }
21
27
  /** 鼠标右键菜单组件属性 */
22
28
  interface ContextmenuProps extends ComponentProps {
@@ -26,8 +32,8 @@ interface ContextmenuProps extends ComponentProps {
26
32
  y: number;
27
33
  };
28
34
  /**
29
- * 菜单宽度
30
- * @default 200
35
+ * 菜单宽度。传数字为固定 px;传 `'max-content'` 时由内容撑开(配合根样式 min-width: 120px)。
36
+ * @default 150
31
37
  */
32
38
  width?: number | string;
33
39
  /** 菜单项 */
@@ -78,12 +78,6 @@ import { SwitchEmits, SwitchExposed, SwitchProps, _SwitchExposed } from "./switc
78
78
  import { StepsEmits, StepsExposed, StepsProps, StepsSlotScope, _StepsExposed } from "./steps.js";
79
79
  import { RichTextEditorEmits, RichTextEditorExposed, RichTextEditorProps, RichTextFormat, ToolbarItem, _RichTextEditorExposed } from "./rich-text-editor.js";
80
80
  import { FileViewerEmits, FileViewerExposed, FileViewerItem, FileViewerKind, FileViewerProps, _FileViewerExposed } from "./file-viewer.js";
81
- import { CollapseEmits, CollapseItemProps, CollapseModelValue, CollapseProps, CollapseValue } from "./collapse.js";
81
+ import { CollapseEmits, CollapseItemEmits, CollapseItemProps, CollapseModelValue, CollapseProps, CollapseValue } from "./collapse.js";
82
82
  export type * from "@veltra/utils";
83
- declare namespace index_d_exports {
84
- export { ActionEmits, ActionExposed, ActionGroupExposed, ActionGroupProps, ActionProps, AnimationEmits, AnimationExposed, AnimationProps, AutoCompleteEmits, AutoCompleteExposed, AutoCompleteProps, BadgeEmits, BadgeExposed, BadgeProps, BarType, BatchEditColumn, BatchEditEmits, BatchEditExposed, BatchEditFeature, BatchEditFormStatus, BatchEditProps, BatchEditSlots, BatchEditStates, BreadcrumbEmits, BreadcrumbExposed, BreadcrumbItem, BreadcrumbProps, BreadcrumbSlotScope, BreakCols, Breakpoint, ButtonEmits, ButtonExposed, ButtonProps, ButtonType, CalendarDay, CalendarEmits, CalendarExposed, CalendarMonth, CalendarProps, CalendarYear, CardActionProps, CardContentProps, CardCoverProps, CardEmits, CardExposed, CardProps, CascadeEmits, CascadeExposed, CascadeNode, CascadeProps, CheckTagEmits, CheckTagExposed, CheckTagProps, CheckboxButtonEmits, CheckboxButtonProps, CheckboxEmits, CheckboxExposed, CheckboxGroupEmits, CheckboxGroupExposed, CheckboxGroupProps, CheckboxProps, CodeEditorEmits, CodeEditorExposed, CodeEditorLang, CodeEditorProps, CollapseEmits, CollapseItemProps, CollapseModelValue, CollapseProps, CollapseValue, ConditionConnector, ConditionEditorEmits, ConditionEditorExposed, ConditionEditorProps, ConditionExpression, ConditionField, ConditionGroup, ConditionLeaf, ConditionNode, ConditionValue, ContextmenuEmits, ContextmenuExposed, ContextmenuItem, ContextmenuProps, CssTransitionEmits, CssTransitionExposed, CssTransitionProps, DatePanelEmits, DatePanelProps, DatePickerEmits, DatePickerExposed, DatePickerProps, DateRangePickerEmits, DateRangePickerExposed, DateRangePickerProps, DialogEmits, DialogExposed, DialogProps, DialogTransition, DrawerDirection, DrawerEmits, DrawerExposed, DrawerMode, DrawerProps, DropdownEmits, DropdownExposed, DropdownProps, DualNavEmits, DualNavExposed, DualNavProps, DualNavRailVariant, DualNavRootItem, EmptyEmits, EmptyExposed, EmptyProps, ExpressionEditorEmits, ExpressionEditorExposed, ExpressionEditorProps, ExpressionSelectableLevels, FileViewerEmits, FileViewerExposed, FileViewerItem, FileViewerKind, FileViewerProps, FloatButtonEmits, FloatButtonExposed, FloatButtonItem, FloatButtonProps, FormEmits, FormExposed, FormItemEmits, FormItemExposed, FormItemProps, FormProps, GanttChartEmits, GanttChartExposed, GanttChartProps, GridEmits, GridExposed, GridInputEmits, GridInputExposed, GridInputProps, GridItemProps, GridProps, GroupInputEmits, GroupInputExposed, GroupInputProps, GroupNavEmits, GroupNavGroup, GroupNavProps, IconEmits, IconExposed, IconProps, InputEmits, InputExposed, InputProps, LayoutEmits, LayoutExposed, LayoutProps, ListEmits, ListExposed, ListProps, LoadingEmits, LoadingExposed, LoadingProps, LoadingType, Message, MessageConfirm, MessageConfirmAction, MessageConfirmEmits, MessageConfirmExposed, MessageConfirmInstance, MessageConfirmOptions, MessageConfirmProps, MessageEmits, MessageExposed, MessageInstance, MessageOptions, MessageProps, MessageType, MultiAutoCompleteEmits, MultiAutoCompleteExposed, MultiAutoCompleteProps, MultiSelectEmits, MultiSelectExposed, MultiSelectProps, MultiTreeSelectEmits, MultiTreeSelectExposed, MultiTreeSelectProps, NavEmits, NavExposed, NavItem, NavProps, NodeRenderExposed, NodeRenderProps, Notification, NotificationEmits, NotificationExposed, NotificationInstance, NotificationOptions, NotificationPosition, NotificationProps, NumberEmits, NumberExposed, NumberInputEmits, NumberInputExposed, NumberInputProps, NumberProps, NumberRangeInputEmits, NumberRangeInputExposed, NumberRangeInputProps, NumberRangeTuple, PaginatorEmits, PaginatorExposed, PaginatorProps, PaletteColorType, PaletteEmits, PaletteExposed, PaletteHSV, PaletteProps, PaletteRGB, PanelItem, PanelType, PasswordInputEmits, PasswordInputExposed, PasswordInputProps, PopConfirmEmits, PopConfirmExposed, PopConfirmProps, PopEmits, PopExposed, PopProps, ProgressEmits, ProgressExposed, ProgressNodesEmits, ProgressNodesExposed, ProgressNodesProps, ProgressProps, QuickBatchEditEmits, QuickBatchEditExposed, QuickBatchEditProps, RadioEmits, RadioExposed, RadioGroupEmits, RadioGroupExposed, RadioGroupProps, RadioProps, RichTextEditorEmits, RichTextEditorExposed, RichTextEditorProps, RichTextFormat, ScrollEmits, ScrollExposed, ScrollPosition, ScrollProps, SelectEmits, SelectExposed, SelectProps, SliderEmits, SliderExposed, SliderProps, StepsEmits, StepsExposed, StepsProps, StepsSlotScope, SwitchEmits, SwitchExposed, SwitchProps, TabItem, TableColumn, TableColumnAlign, TableColumnNode, TableColumnRenderContext, TableColumnSlotsScope, TableEditorEmits, TableEditorExposed, TableEditorProps, TableEmits, TableExposed, TableProps, TableRow, TableRowSlotsScope, TableSummaryContext, TabsEmits, TabsExposed, TabsHorizontalEmits, TabsHorizontalExposed, TabsHorizontalProps, TabsProps, TabsVerticalEmits, TabsVerticalExposed, TabsVerticalProps, TagEmits, TagExposed, TagProps, TextEditorEmits, TextEditorExposed, TextEditorProps, TextEmits, TextExposed, TextProps, TextareaEmits, TextareaExposed, TextareaProps, ThemeExposed, ThemeProps, TipAlign, TipDirection, TipEmits, TipExposed, TipProps, ToolbarItem, TreeEmit, TreeExposed, TreeNode, TreeNodeProps, TreeProps, TreeSelectEmits, TreeSelectExposed, TreeSelectProps, UploaderEmits, UploaderExposed, UploaderProps, VariableItem, WatermarkEmits, WatermarkExposed, WatermarkProps, _ActionExposed, _ActionGroupExposed, _AnimationExposed, _AutoCompleteExposed, _BadgeExposed, _BatchEditExposed, _BreadcrumbExposed, _ButtonExposed, _CalendarExposed, _CardExposed, _CascadeExposed, _CheckTagExposed, _CodeEditorExposed, _ConditionEditorExposed, _ContextmenuExposed, _CssTransitionExposed, _DatePickerExposed, _DateRangePickerExposed, _DialogExposed, _DrawerExposed, _DropdownExposed, _DualNavExposed, _EmptyExposed, _ExpressionEditorExposed, _FileViewerExposed, _FloatButtonExposed, _FormExposed, _GanttChartExposed, _GridExposed, _GridInputExposed, _GroupInputExposed, _InputExposed, _LayoutExposed, _ListExposed, _LoadingExposed, _MessageConfirmExposed, _MessageExposed, _MultiAutoCompleteExposed, _MultiSelectExposed, _MultiTreeSelectExposed, _NavExposed, _NotificationExposed, _PaginatorExposed, _PaletteExposed, _PasswordInputExposed, _PopConfirmExposed, _PopExposed, _ProgressExposed, _ProgressNodesExposed, _QuickBatchEditExposed, _RadioExposed, _RadioGroupExposed, _RichTextEditorExposed, _ScrollExposed, _SelectExposed, _SliderExposed, _StepsExposed, _SwitchExposed, _TableEditorExposed, _TableExposed, _TabsExposed, _TabsHorizontalExposed, _TabsVerticalExposed, _TextEditorExposed, _TextExposed, _TextareaExposed, _ThemeExposed, _TipExposed, _TreeExposed, _TreeSelectExposed, _UploaderExposed, _WatermarkExposed };
85
- }
86
- import * as import__veltra_utils from "@veltra/utils";
87
- //#endregion
88
- export { ActionEmits, ActionExposed, ActionGroupExposed, ActionGroupProps, ActionProps, AnimationEmits, AnimationExposed, AnimationProps, AutoCompleteEmits, AutoCompleteExposed, AutoCompleteProps, BadgeEmits, BadgeExposed, BadgeProps, BarType, BatchEditColumn, BatchEditEmits, BatchEditExposed, BatchEditFeature, BatchEditFormStatus, BatchEditProps, BatchEditSlots, BatchEditStates, BreadcrumbEmits, BreadcrumbExposed, BreadcrumbItem, BreadcrumbProps, BreadcrumbSlotScope, BreakCols, Breakpoint, ButtonEmits, ButtonExposed, ButtonProps, ButtonType, CalendarDay, CalendarEmits, CalendarExposed, CalendarMonth, CalendarProps, CalendarYear, CardActionProps, CardContentProps, CardCoverProps, CardEmits, CardExposed, CardProps, CascadeEmits, CascadeExposed, CascadeNode, CascadeProps, CheckTagEmits, CheckTagExposed, CheckTagProps, CheckboxButtonEmits, CheckboxButtonProps, CheckboxEmits, CheckboxExposed, CheckboxGroupEmits, CheckboxGroupExposed, CheckboxGroupProps, CheckboxProps, CodeEditorEmits, CodeEditorExposed, CodeEditorLang, CodeEditorProps, CollapseEmits, CollapseItemProps, CollapseModelValue, CollapseProps, CollapseValue, ConditionConnector, ConditionEditorEmits, ConditionEditorExposed, ConditionEditorProps, ConditionExpression, ConditionField, ConditionGroup, ConditionLeaf, ConditionNode, ConditionValue, ContextmenuEmits, ContextmenuExposed, ContextmenuItem, ContextmenuProps, CssTransitionEmits, CssTransitionExposed, CssTransitionProps, DatePanelEmits, DatePanelProps, DatePickerEmits, DatePickerExposed, DatePickerProps, DateRangePickerEmits, DateRangePickerExposed, DateRangePickerProps, DialogEmits, DialogExposed, DialogProps, DialogTransition, DrawerDirection, DrawerEmits, DrawerExposed, DrawerMode, DrawerProps, DropdownEmits, DropdownExposed, DropdownProps, DualNavEmits, DualNavExposed, DualNavProps, DualNavRailVariant, DualNavRootItem, EmptyEmits, EmptyExposed, EmptyProps, ExpressionEditorEmits, ExpressionEditorExposed, ExpressionEditorProps, ExpressionSelectableLevels, FileViewerEmits, FileViewerExposed, FileViewerItem, FileViewerKind, FileViewerProps, FloatButtonEmits, FloatButtonExposed, FloatButtonItem, FloatButtonProps, FormEmits, FormExposed, FormItemEmits, FormItemExposed, FormItemProps, FormProps, GanttChartEmits, GanttChartExposed, GanttChartProps, GridEmits, GridExposed, GridInputEmits, GridInputExposed, GridInputProps, GridItemProps, GridProps, GroupInputEmits, GroupInputExposed, GroupInputProps, GroupNavEmits, GroupNavGroup, GroupNavProps, IconEmits, IconExposed, IconProps, InputEmits, InputExposed, InputProps, LayoutEmits, LayoutExposed, LayoutProps, ListEmits, ListExposed, ListProps, LoadingEmits, LoadingExposed, LoadingProps, LoadingType, Message, MessageConfirm, MessageConfirmAction, MessageConfirmEmits, MessageConfirmExposed, MessageConfirmInstance, MessageConfirmOptions, MessageConfirmProps, MessageEmits, MessageExposed, MessageInstance, MessageOptions, MessageProps, MessageType, MultiAutoCompleteEmits, MultiAutoCompleteExposed, MultiAutoCompleteProps, MultiSelectEmits, MultiSelectExposed, MultiSelectProps, MultiTreeSelectEmits, MultiTreeSelectExposed, MultiTreeSelectProps, NavEmits, NavExposed, NavItem, NavProps, NodeRenderExposed, NodeRenderProps, Notification, NotificationEmits, NotificationExposed, NotificationInstance, NotificationOptions, NotificationPosition, NotificationProps, NumberEmits, NumberExposed, NumberInputEmits, NumberInputExposed, NumberInputProps, NumberProps, NumberRangeInputEmits, NumberRangeInputExposed, NumberRangeInputProps, NumberRangeTuple, PaginatorEmits, PaginatorExposed, PaginatorProps, PaletteColorType, PaletteEmits, PaletteExposed, PaletteHSV, PaletteProps, PaletteRGB, PanelItem, PanelType, PasswordInputEmits, PasswordInputExposed, PasswordInputProps, PopConfirmEmits, PopConfirmExposed, PopConfirmProps, PopEmits, PopExposed, PopProps, ProgressEmits, ProgressExposed, ProgressNodesEmits, ProgressNodesExposed, ProgressNodesProps, ProgressProps, QuickBatchEditEmits, QuickBatchEditExposed, QuickBatchEditProps, RadioEmits, RadioExposed, RadioGroupEmits, RadioGroupExposed, RadioGroupProps, RadioProps, RichTextEditorEmits, RichTextEditorExposed, RichTextEditorProps, RichTextFormat, ScrollEmits, ScrollExposed, ScrollPosition, ScrollProps, SelectEmits, SelectExposed, SelectProps, SliderEmits, SliderExposed, SliderProps, StepsEmits, StepsExposed, StepsProps, StepsSlotScope, SwitchEmits, SwitchExposed, SwitchProps, TabItem, TableColumn, TableColumnAlign, TableColumnNode, TableColumnRenderContext, TableColumnSlotsScope, TableEditorEmits, TableEditorExposed, TableEditorProps, TableEmits, TableExposed, TableProps, TableRow, TableRowSlotsScope, TableSummaryContext, TabsEmits, TabsExposed, TabsHorizontalEmits, TabsHorizontalExposed, TabsHorizontalProps, TabsProps, TabsVerticalEmits, TabsVerticalExposed, TabsVerticalProps, TagEmits, TagExposed, TagProps, TextEditorEmits, TextEditorExposed, TextEditorProps, TextEmits, TextExposed, TextProps, TextareaEmits, TextareaExposed, TextareaProps, ThemeExposed, ThemeProps, TipAlign, TipDirection, TipEmits, TipExposed, TipProps, ToolbarItem, TreeEmit, TreeExposed, TreeNode, TreeNodeProps, TreeProps, TreeSelectEmits, TreeSelectExposed, TreeSelectProps, UploaderEmits, UploaderExposed, UploaderProps, VariableItem, WatermarkEmits, WatermarkExposed, WatermarkProps, _ActionExposed, _ActionGroupExposed, _AnimationExposed, _AutoCompleteExposed, _BadgeExposed, _BatchEditExposed, _BreadcrumbExposed, _ButtonExposed, _CalendarExposed, _CardExposed, _CascadeExposed, _CheckTagExposed, _CodeEditorExposed, _ConditionEditorExposed, _ContextmenuExposed, _CssTransitionExposed, _DatePickerExposed, _DateRangePickerExposed, _DialogExposed, _DrawerExposed, _DropdownExposed, _DualNavExposed, _EmptyExposed, _ExpressionEditorExposed, _FileViewerExposed, _FloatButtonExposed, _FormExposed, _GanttChartExposed, _GridExposed, _GridInputExposed, _GroupInputExposed, _InputExposed, _LayoutExposed, _ListExposed, _LoadingExposed, _MessageConfirmExposed, _MessageExposed, _MultiAutoCompleteExposed, _MultiSelectExposed, _MultiTreeSelectExposed, _NavExposed, _NotificationExposed, _PaginatorExposed, _PaletteExposed, _PasswordInputExposed, _PopConfirmExposed, _PopExposed, _ProgressExposed, _ProgressNodesExposed, _QuickBatchEditExposed, _RadioExposed, _RadioGroupExposed, _RichTextEditorExposed, _ScrollExposed, _SelectExposed, _SliderExposed, _StepsExposed, _SwitchExposed, _TableEditorExposed, _TableExposed, _TabsExposed, _TabsHorizontalExposed, _TabsVerticalExposed, _TextEditorExposed, _TextExposed, _TextareaExposed, _ThemeExposed, _TipExposed, _TreeExposed, _TreeSelectExposed, _UploaderExposed, _WatermarkExposed, index_d_exports };
89
- //# sourceMappingURL=index.d.ts.map
83
+ export { ActionEmits, ActionExposed, ActionGroupExposed, ActionGroupProps, ActionProps, AnimationEmits, AnimationExposed, AnimationProps, AutoCompleteEmits, AutoCompleteExposed, AutoCompleteProps, BadgeEmits, BadgeExposed, BadgeProps, BarType, BatchEditColumn, BatchEditEmits, BatchEditExposed, BatchEditFeature, BatchEditFormStatus, BatchEditProps, BatchEditSlots, BatchEditStates, BreadcrumbEmits, BreadcrumbExposed, BreadcrumbItem, BreadcrumbProps, BreadcrumbSlotScope, BreakCols, Breakpoint, ButtonEmits, ButtonExposed, ButtonProps, ButtonType, CalendarDay, CalendarEmits, CalendarExposed, CalendarMonth, CalendarProps, CalendarYear, CardActionProps, CardContentProps, CardCoverProps, CardEmits, CardExposed, CardProps, CascadeEmits, CascadeExposed, CascadeNode, CascadeProps, CheckTagEmits, CheckTagExposed, CheckTagProps, CheckboxButtonEmits, CheckboxButtonProps, CheckboxEmits, CheckboxExposed, CheckboxGroupEmits, CheckboxGroupExposed, CheckboxGroupProps, CheckboxProps, CodeEditorEmits, CodeEditorExposed, CodeEditorLang, CodeEditorProps, CollapseEmits, CollapseItemEmits, CollapseItemProps, CollapseModelValue, CollapseProps, CollapseValue, ConditionConnector, ConditionEditorEmits, ConditionEditorExposed, ConditionEditorProps, ConditionExpression, ConditionField, ConditionGroup, ConditionLeaf, ConditionNode, ConditionValue, ContextmenuEmits, ContextmenuExposed, ContextmenuItem, ContextmenuProps, CssTransitionEmits, CssTransitionExposed, CssTransitionProps, DatePanelEmits, DatePanelProps, DatePickerEmits, DatePickerExposed, DatePickerProps, DateRangePickerEmits, DateRangePickerExposed, DateRangePickerProps, DialogEmits, DialogExposed, DialogProps, DialogTransition, DrawerDirection, DrawerEmits, DrawerExposed, DrawerMode, DrawerProps, DropdownEmits, DropdownExposed, DropdownProps, DualNavEmits, DualNavExposed, DualNavProps, DualNavRailVariant, DualNavRootItem, EmptyEmits, EmptyExposed, EmptyProps, ExpressionEditorEmits, ExpressionEditorExposed, ExpressionEditorProps, ExpressionSelectableLevels, FileViewerEmits, FileViewerExposed, FileViewerItem, FileViewerKind, FileViewerProps, FloatButtonEmits, FloatButtonExposed, FloatButtonItem, FloatButtonProps, FormEmits, FormExposed, FormItemEmits, FormItemExposed, FormItemProps, FormProps, GanttChartEmits, GanttChartExposed, GanttChartProps, GridEmits, GridExposed, GridInputEmits, GridInputExposed, GridInputProps, GridItemProps, GridProps, GroupInputEmits, GroupInputExposed, GroupInputProps, GroupNavEmits, GroupNavGroup, GroupNavProps, IconEmits, IconExposed, IconProps, InputEmits, InputExposed, InputProps, LayoutEmits, LayoutExposed, LayoutProps, ListEmits, ListExposed, ListProps, LoadingEmits, LoadingExposed, LoadingProps, LoadingType, Message, MessageConfirm, MessageConfirmAction, MessageConfirmEmits, MessageConfirmExposed, MessageConfirmInstance, MessageConfirmOptions, MessageConfirmProps, MessageEmits, MessageExposed, MessageInstance, MessageOptions, MessageProps, MessageType, MultiAutoCompleteEmits, MultiAutoCompleteExposed, MultiAutoCompleteProps, MultiSelectEmits, MultiSelectExposed, MultiSelectProps, MultiTreeSelectEmits, MultiTreeSelectExposed, MultiTreeSelectProps, NavEmits, NavExposed, NavItem, NavProps, NodeRenderExposed, NodeRenderProps, Notification, NotificationEmits, NotificationExposed, NotificationInstance, NotificationOptions, NotificationPosition, NotificationProps, NumberEmits, NumberExposed, NumberInputEmits, NumberInputExposed, NumberInputProps, NumberProps, NumberRangeInputEmits, NumberRangeInputExposed, NumberRangeInputProps, NumberRangeTuple, PaginatorEmits, PaginatorExposed, PaginatorProps, PaletteColorType, PaletteEmits, PaletteExposed, PaletteHSV, PaletteProps, PaletteRGB, PanelItem, PanelType, PasswordInputEmits, PasswordInputExposed, PasswordInputProps, PopConfirmEmits, PopConfirmExposed, PopConfirmProps, PopEmits, PopExposed, PopProps, ProgressEmits, ProgressExposed, ProgressNodesEmits, ProgressNodesExposed, ProgressNodesProps, ProgressProps, QuickBatchEditEmits, QuickBatchEditExposed, QuickBatchEditProps, RadioEmits, RadioExposed, RadioGroupEmits, RadioGroupExposed, RadioGroupProps, RadioProps, RichTextEditorEmits, RichTextEditorExposed, RichTextEditorProps, RichTextFormat, ScrollEmits, ScrollExposed, ScrollPosition, ScrollProps, SelectEmits, SelectExposed, SelectProps, SliderEmits, SliderExposed, SliderProps, StepsEmits, StepsExposed, StepsProps, StepsSlotScope, SwitchEmits, SwitchExposed, SwitchProps, TabItem, TableColumn, TableColumnAlign, TableColumnNode, TableColumnRenderContext, TableColumnSlotsScope, TableEditorEmits, TableEditorExposed, TableEditorProps, TableEmits, TableExposed, TableProps, TableRow, TableRowSlotsScope, TableSummaryContext, TabsEmits, TabsExposed, TabsHorizontalEmits, TabsHorizontalExposed, TabsHorizontalProps, TabsProps, TabsVerticalEmits, TabsVerticalExposed, TabsVerticalProps, TagEmits, TagExposed, TagProps, TextEditorEmits, TextEditorExposed, TextEditorProps, TextEmits, TextExposed, TextProps, TextareaEmits, TextareaExposed, TextareaProps, ThemeExposed, ThemeProps, TipAlign, TipDirection, TipEmits, TipExposed, TipProps, ToolbarItem, TreeEmit, TreeExposed, TreeNode, TreeNodeProps, TreeProps, TreeSelectEmits, TreeSelectExposed, TreeSelectProps, UploaderEmits, UploaderExposed, UploaderProps, VariableItem, WatermarkEmits, WatermarkExposed, WatermarkProps, _ActionExposed, _ActionGroupExposed, _AnimationExposed, _AutoCompleteExposed, _BadgeExposed, _BatchEditExposed, _BreadcrumbExposed, _ButtonExposed, _CalendarExposed, _CardExposed, _CascadeExposed, _CheckTagExposed, _CodeEditorExposed, _ConditionEditorExposed, _ContextmenuExposed, _CssTransitionExposed, _DatePickerExposed, _DateRangePickerExposed, _DialogExposed, _DrawerExposed, _DropdownExposed, _DualNavExposed, _EmptyExposed, _ExpressionEditorExposed, _FileViewerExposed, _FloatButtonExposed, _FormExposed, _GanttChartExposed, _GridExposed, _GridInputExposed, _GroupInputExposed, _InputExposed, _LayoutExposed, _ListExposed, _LoadingExposed, _MessageConfirmExposed, _MessageExposed, _MultiAutoCompleteExposed, _MultiSelectExposed, _MultiTreeSelectExposed, _NavExposed, _NotificationExposed, _PaginatorExposed, _PaletteExposed, _PasswordInputExposed, _PopConfirmExposed, _PopExposed, _ProgressExposed, _ProgressNodesExposed, _QuickBatchEditExposed, _RadioExposed, _RadioGroupExposed, _RichTextEditorExposed, _ScrollExposed, _SelectExposed, _SliderExposed, _StepsExposed, _SwitchExposed, _TableEditorExposed, _TableExposed, _TabsExposed, _TabsHorizontalExposed, _TabsVerticalExposed, _TextEditorExposed, _TextExposed, _TextareaExposed, _ThemeExposed, _TipExposed, _TreeExposed, _TreeSelectExposed, _UploaderExposed, _WatermarkExposed };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veltra/desktop",
3
- "version": "1.3.10",
3
+ "version": "1.5.0",
4
4
  "files": [
5
5
  "dist",
6
6
  "src"
@@ -35,34 +35,22 @@
35
35
  }
36
36
  },
37
37
  "dependencies": {
38
- "@embedpdf/core": "^2.14.4",
39
- "@embedpdf/engines": "^2.14.4",
40
- "@embedpdf/plugin-document-manager": "^2.14.4",
41
- "@embedpdf/plugin-render": "^2.14.4",
42
- "@embedpdf/plugin-scroll": "^2.14.4",
43
- "@embedpdf/plugin-viewport": "^2.14.4",
44
- "@embedpdf/plugin-zoom": "^2.14.4",
45
- "@lexical/history": "^0.48.0",
46
- "@lexical/html": "^0.48.0",
47
- "@lexical/link": "^0.48.0",
48
- "@lexical/list": "^0.48.0",
49
- "@lexical/rich-text": "^0.48.0",
50
- "@lexical/selection": "^0.48.0",
51
- "@lexical/utils": "^0.48.0",
52
- "@visactor/vtable": "^1.26.5",
38
+ "@embedpdf/core": "^2.15.0",
39
+ "@embedpdf/engines": "^2.15.0",
40
+ "@embedpdf/plugin-document-manager": "^2.15.0",
41
+ "@embedpdf/plugin-render": "^2.15.0",
42
+ "@embedpdf/plugin-scroll": "^2.15.0",
43
+ "@embedpdf/plugin-viewport": "^2.15.0",
44
+ "@embedpdf/plugin-zoom": "^2.15.0",
45
+ "@lexical/history": "^0.49.0",
46
+ "@lexical/html": "^0.49.0",
47
+ "@lexical/link": "^0.49.0",
48
+ "@lexical/list": "^0.49.0",
49
+ "@lexical/rich-text": "^0.49.0",
50
+ "@lexical/selection": "^0.49.0",
51
+ "@lexical/utils": "^0.49.0",
53
52
  "docx-preview": "^0.4.0",
54
- "lexical": "^0.48.0"
55
- },
56
- "peerDependencies": {
57
- "@cat-kit/core": ">=1.1.8",
58
- "@cat-kit/excel": ">=1.0.0",
59
- "@cat-kit/fe": "^1.1.8",
60
- "@veltra/compositions": "1.3.10",
61
- "@veltra/directives": "1.3.10",
62
- "@veltra/icons": "1.3.10",
63
- "@veltra/styles": "1.3.10",
64
- "@veltra/utils": "1.3.10",
65
- "vue": ">=3.5.40"
53
+ "lexical": "^0.49.0"
66
54
  },
67
55
  "devDependencies": {
68
56
  "@codemirror/autocomplete": "6.20.3",
@@ -70,7 +58,7 @@
70
58
  "@codemirror/lang-java": "6.0.2",
71
59
  "@codemirror/lang-javascript": "6.2.5",
72
60
  "@codemirror/lang-json": "6.0.2",
73
- "@codemirror/lang-markdown": "6.5.1",
61
+ "@codemirror/lang-markdown": "6.5.2",
74
62
  "@codemirror/lang-sql": "6.10.0",
75
63
  "@codemirror/language": "6.12.4",
76
64
  "@codemirror/legacy-modes": "6.5.3",
@@ -78,6 +66,22 @@
78
66
  "@codemirror/search": "6.7.1",
79
67
  "@codemirror/state": "6.7.1",
80
68
  "@codemirror/theme-one-dark": "6.1.3",
81
- "@codemirror/view": "6.43.6"
69
+ "@codemirror/view": "6.43.8"
70
+ },
71
+ "peerDependencies": {
72
+ "@cat-kit/core": ">=1.1.8",
73
+ "@cat-kit/fe": ">=1.1.8",
74
+ "@veltra/compositions": "^1.5.0",
75
+ "@veltra/directives": "^1.5.0",
76
+ "@veltra/icons": "^1.5.0",
77
+ "@veltra/sheet-core": "^2.1.1",
78
+ "@veltra/styles": "^1.5.0",
79
+ "@veltra/utils": "^1.5.0",
80
+ "vue": ">=3.5.41"
81
+ },
82
+ "peerDependenciesMeta": {
83
+ "@veltra/sheet-core": {
84
+ "optional": true
85
+ }
82
86
  }
83
87
  }
@@ -0,0 +1,199 @@
1
+ import { describe, expect, it } from 'vitest'
2
+ import { createApp, h, nextTick, reactive, ref } from 'vue'
3
+
4
+ import { UInput } from '../../input'
5
+ import { USelect } from '../../select'
6
+ import { defineTableColumns } from '../../table'
7
+ import { UBatchEdit } from '../index'
8
+
9
+ function mountBatchEdit() {
10
+ const host = document.createElement('div')
11
+ document.body.appendChild(host)
12
+
13
+ const columns = defineTableColumns([
14
+ { key: 'label', name: '名称' },
15
+ { key: 'behavior', name: '行为' }
16
+ ])
17
+
18
+ const initialData = [
19
+ { id: '1', label: '存草稿', behavior: 'common-resource', submitType: 'DRAFT' },
20
+ { id: '2', label: '调接口', behavior: 'api', submitType: 'SUBMIT', apiMethod: 'POST' }
21
+ ]
22
+
23
+ const data = ref(initialData.map((item) => ({ ...item })))
24
+
25
+ const model = reactive({
26
+ id: '',
27
+ label: '',
28
+ behavior: 'event',
29
+ submitType: undefined as string | undefined,
30
+ apiMethod: undefined as string | undefined
31
+ })
32
+
33
+ const app = createApp({
34
+ render() {
35
+ return h(
36
+ UBatchEdit,
37
+ {
38
+ data: data.value,
39
+ 'onUpdate:data': (value: any[]) => {
40
+ data.value = value
41
+ },
42
+ columns,
43
+ model,
44
+ rowKey: 'id',
45
+ quickEdit: true
46
+ },
47
+ {
48
+ form: () => [
49
+ h(UInput, { field: 'label', label: '名称' }),
50
+ h(USelect, {
51
+ field: 'behavior',
52
+ label: '行为',
53
+ options: [
54
+ { label: '事件', value: 'event' },
55
+ { label: '通用资源', value: 'common-resource' },
56
+ { label: '接口', value: 'api' }
57
+ ]
58
+ }),
59
+ model.behavior === 'api' || model.behavior === 'common-resource'
60
+ ? h(USelect, {
61
+ field: 'submitType',
62
+ label: '提交类型',
63
+ options: [
64
+ { label: 'DRAFT', value: 'DRAFT' },
65
+ { label: 'SUBMIT', value: 'SUBMIT' },
66
+ { label: 'SAVE', value: 'SAVE' }
67
+ ]
68
+ })
69
+ : null,
70
+ model.behavior === 'api'
71
+ ? h(USelect, {
72
+ field: 'apiMethod',
73
+ label: 'HTTP 方法',
74
+ options: [
75
+ { label: 'POST', value: 'POST' },
76
+ { label: 'PUT', value: 'PUT' }
77
+ ]
78
+ })
79
+ : null
80
+ ]
81
+ }
82
+ )
83
+ }
84
+ })
85
+
86
+ app.mount(host)
87
+
88
+ return {
89
+ host,
90
+ data,
91
+ model,
92
+ unmount() {
93
+ app.unmount()
94
+ host.remove()
95
+ }
96
+ }
97
+ }
98
+
99
+ function queryRows(host: HTMLElement) {
100
+ return [...host.querySelectorAll<HTMLElement>('tr.u-table__row')]
101
+ }
102
+
103
+ async function clickRow(host: HTMLElement, index: number) {
104
+ const row = queryRows(host)[index]
105
+ expect(row, `第 ${index} 行应存在`).toBeTruthy()
106
+ row!.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true }))
107
+ await nextTick()
108
+ await nextTick()
109
+ }
110
+
111
+ describe('UBatchEdit quick-edit 切换编辑行', () => {
112
+ it('切换行时先重置表单再回显,不污染行数据', async () => {
113
+ const { host, data, model, unmount } = mountBatchEdit()
114
+
115
+ // 第一次点击第 1 行:正常回显
116
+ await clickRow(host, 0)
117
+ expect(model.label).toBe('存草稿')
118
+ expect(model.behavior).toBe('common-resource')
119
+ expect(model.submitType).toBe('DRAFT')
120
+ expect(model.apiMethod).toBeUndefined()
121
+
122
+ // 再点击第 2 行:先重置回 model 初始快照,再回显第 2 行数据
123
+ await clickRow(host, 1)
124
+ expect(model.label).toBe('调接口')
125
+ expect(model.behavior).toBe('api')
126
+ expect(model.submitType).toBe('SUBMIT')
127
+ expect(model.apiMethod).toBe('POST')
128
+
129
+ // 源数据不被默认值污染
130
+ expect(data.value).toEqual([
131
+ { id: '1', label: '存草稿', behavior: 'common-resource', submitType: 'DRAFT' },
132
+ { id: '2', label: '调接口', behavior: 'api', submitType: 'SUBMIT', apiMethod: 'POST' }
133
+ ])
134
+
135
+ unmount()
136
+ })
137
+
138
+ it('取消选中行后表单数据重置为 model 初始值', async () => {
139
+ const { host, data, model, unmount } = mountBatchEdit()
140
+
141
+ await clickRow(host, 1)
142
+ expect(model.label).toBe('调接口')
143
+
144
+ // 再次点击当前行 → 取消选中,表单恢复到 model 初始快照
145
+ await clickRow(host, 1)
146
+ expect(model.label).toBe('')
147
+ expect(model.behavior).toBe('event')
148
+ expect(model.submitType).toBeUndefined()
149
+ expect(model.apiMethod).toBeUndefined()
150
+
151
+ expect(data.value[1]).toEqual({
152
+ id: '2',
153
+ label: '调接口',
154
+ behavior: 'api',
155
+ submitType: 'SUBMIT',
156
+ apiMethod: 'POST'
157
+ })
158
+
159
+ unmount()
160
+ })
161
+
162
+ it('表单常驻挂载(v-show 控制显隐),切换行不重建表单', async () => {
163
+ const { host, unmount } = mountBatchEdit()
164
+
165
+ // model 存在即挂载表单,未选中行时仅隐藏(快照只在首次挂载时拍一次)
166
+ const aside = host.querySelector<HTMLElement>('.u-batch-edit__form')
167
+ expect(aside).toBeTruthy()
168
+ expect(aside!.style.display).toBe('none')
169
+
170
+ await clickRow(host, 0)
171
+ const formBody = host.querySelector('.u-batch-edit__form-body')
172
+ expect(aside!.style.display).not.toBe('none')
173
+
174
+ await clickRow(host, 1)
175
+ // 同一 DOM 节点:表单未因切行销毁重建,初始快照不会被重新生成
176
+ expect(host.querySelector('.u-batch-edit__form-body')).toBe(formBody)
177
+
178
+ unmount()
179
+ })
180
+
181
+ it('quick-edit 下用户输入仍实时写回行数据', async () => {
182
+ const { host, data, unmount } = mountBatchEdit()
183
+
184
+ await clickRow(host, 0)
185
+
186
+ const input = host.querySelector<HTMLInputElement>('.u-input input')
187
+ expect(input).toBeTruthy()
188
+ input!.value = '改过的名称'
189
+ input!.dispatchEvent(
190
+ new InputEvent('input', { bubbles: true, data: '改过的名称', inputType: 'insertText' })
191
+ )
192
+ await nextTick()
193
+ await nextTick()
194
+
195
+ expect(data.value[0]!.label).toBe('改过的名称')
196
+
197
+ unmount()
198
+ })
199
+ })
@@ -1,5 +1,6 @@
1
1
  <template>
2
- <aside :class="cls.e('form')" v-if="state.formVisible && !!props.model">
2
+ <!-- 表单常驻挂载(快照只在挂载时对传入的 model 拍一次),仅用 v-show 控制显隐 -->
3
+ <aside :class="cls.e('form')" v-if="!!props.model" v-show="state.formVisible">
3
4
  <header :class="cls.e('form-header')">
4
5
  <span :class="[cls.e('form-icon'), bem.is(state.formActionType)]">
5
6
  <u-icon>
@@ -20,7 +21,7 @@
20
21
  />
21
22
  </header>
22
23
 
23
- <u-scroll always :class="cls.e('form-body')" :key="bodyKey">
24
+ <u-scroll always :class="cls.e('form-body')">
24
25
  <transition name="fade" appear mode="out-in">
25
26
  <u-form
26
27
  ref="formComponentRef"
@@ -90,7 +91,8 @@ defineOptions({ name: 'UBatchEditForm' })
90
91
 
91
92
  const batchEditCtx = inject(BatchEditDIKey)!
92
93
 
93
- const { cls, props, state, handleClose, handleSave, staticFeatures, dynamicFeatures } = batchEditCtx
94
+ const { cls, props, state, handleClose, handleSave, staticFeatures, dynamicFeatures, syncing } =
95
+ batchEditCtx
94
96
 
95
97
  const focused = toRef(batchEditCtx, 'focused')
96
98
 
@@ -104,6 +106,9 @@ defineExpose<_FormExposed>({
104
106
  })
105
107
 
106
108
  function handleFieldChange(field: string, value: any) {
109
+ // 编程方式重置/回显期间不写回行数据,避免默认值污染源数据
110
+ if (syncing.value) return
111
+
107
112
  if (state.row && props.quickEdit) {
108
113
  o(state.row.data).set(field, value)
109
114
  }
@@ -133,9 +138,4 @@ const showSaveBtn = computed(() => {
133
138
  })
134
139
 
135
140
  const headerInfo = computed(() => FORM_ACTION_HEADER_MAP[state.formActionType])
136
-
137
- /** 通过 row 切换 / 类型切换驱动表单内容淡出淡入 */
138
- const bodyKey = computed(() => {
139
- return `${state.formActionType}-${state.row?.uid ?? 'create'}-${state.parentRow?.uid ?? 'root'}`
140
- })
141
141
  </script>
@@ -46,7 +46,7 @@ const cls = bem('batch-edit')
46
46
 
47
47
  const formRef = useTemplateRef<FormExposed>('form')
48
48
 
49
- const { state, resetState } = useEditState({ props, formRef })
49
+ const { state, resetState, syncing } = useEditState({ props, formRef })
50
50
 
51
51
  const { staticFeatures, dynamicFeatures } = useFeatures({ props })
52
52
 
@@ -72,6 +72,7 @@ provide(BatchEditDIKey, {
72
72
  staticFeatures,
73
73
  dynamicFeatures,
74
74
  focused,
75
+ syncing,
75
76
  ...handlers
76
77
  })
77
78
  </script>
@@ -22,5 +22,7 @@ export const BatchEditDIKey: InjectionKey<
22
22
  >
23
23
  /** 组件或其子节点是否处于聚焦状态 */
24
24
  focused: ShallowRef<boolean>
25
+ /** 是否正在以编程方式重置/回显表单,此期间禁止 quick-edit 回写行数据 */
26
+ syncing: ShallowRef<boolean>
25
27
  } & EditReturned
26
28
  > = Symbol('BatchEditDIKey')
@@ -1,5 +1,5 @@
1
1
  import { o } from '@cat-kit/core'
2
- import { nextTick, shallowReactive, watch, type ShallowRef } from 'vue'
2
+ import { nextTick, shallowReactive, shallowRef, watch, type ShallowRef } from 'vue'
3
3
 
4
4
  import type { BatchEditProps, BatchEditStates, FormExposed } from '../../types'
5
5
 
@@ -21,8 +21,11 @@ export function useEditState(options: Options) {
21
21
 
22
22
  const state = shallowReactive({ ...defaultState })
23
23
 
24
+ /** 是否正在以编程方式重置/回显表单,此期间禁止 quick-edit 回写行数据 */
25
+ const syncing = shallowRef(false)
26
+
24
27
  function resetState() {
25
- // 销毁表单前先重置,避免下次 v-if 重挂载时 Form 拍到脏 model
28
+ // 表单常驻挂载,重置即恢复到 model 初始快照
26
29
  formRef.value?.reset()
27
30
 
28
31
  if (state.row) {
@@ -39,26 +42,30 @@ export function useEditState(options: Options) {
39
42
  watch(
40
43
  () => state.row,
41
44
  (row) => {
45
+ syncing.value = true
46
+
47
+ // 先重置回 model 初始快照,再同步回显行数据。
48
+ // 同一 tick 内的连续写入会被表单字段 watcher 合并,
49
+ // 重置产生的默认值不会触发 field:change 回写行数据
42
50
  formRef.value?.reset()
43
51
 
44
52
  if (row) {
45
- /** 延迟设置 model,防止表单初始状态丢失 */
46
- nextTick(() => {
47
- if (props.model) {
48
- o(props.model).deepExtend(row.data)
49
- }
50
- })
53
+ if (props.model) {
54
+ o(props.model).deepExtend(row.data)
55
+ }
51
56
  state.formActionType = props.readonly ? 'view' : 'update'
52
57
  state.formVisible = true
53
58
  state.depth = row.depth
54
59
  state.indexPath = [...row.indexes]
55
-
56
- return
60
+ } else {
61
+ resetState()
57
62
  }
58
63
 
59
- resetState()
64
+ nextTick(() => {
65
+ syncing.value = false
66
+ })
60
67
  }
61
68
  )
62
69
 
63
- return { state, resetState }
70
+ return { state, resetState, syncing }
64
71
  }