niuma-ui 1.1.12 → 1.2.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 (893) hide show
  1. package/CHANGELOG.md +17 -18
  2. package/README.en.md +12 -9
  3. package/README.md +13 -10
  4. package/dist/_virtual/_plugin-vue_export-helper.js +8 -0
  5. package/dist/components/RsAlert.css +111 -0
  6. package/dist/components/RsAlert.d.ts +32 -0
  7. package/dist/components/RsAlert.impl.js +83 -0
  8. package/dist/components/RsAlert.js +8 -0
  9. package/dist/components/RsAvatar.css +60 -0
  10. package/dist/components/RsAvatar.d.ts +30 -0
  11. package/dist/components/RsAvatar.impl.js +59 -0
  12. package/dist/components/RsAvatar.js +7 -0
  13. package/dist/components/RsBadge.css +41 -0
  14. package/dist/components/RsBadge.d.ts +18 -0
  15. package/dist/components/RsBadge.impl.js +13 -0
  16. package/dist/components/RsBadge.js +8 -0
  17. package/dist/components/RsBreadcrumb.css +37 -0
  18. package/dist/components/RsBreadcrumb.d.ts +11 -0
  19. package/dist/components/RsBreadcrumb.impl.js +26 -0
  20. package/dist/components/RsBreadcrumb.js +7 -0
  21. package/dist/components/RsBreadcrumbItems.d.ts +8 -0
  22. package/dist/components/RsBreadcrumbItems.impl.js +40 -0
  23. package/dist/components/RsBreadcrumbItems.js +5 -0
  24. package/dist/components/RsButton.css +298 -0
  25. package/dist/components/RsButton.d.ts +56 -0
  26. package/dist/components/RsButton.impl.js +244 -0
  27. package/dist/components/RsButton.js +8 -0
  28. package/dist/components/RsCalendarGrid.css +99 -0
  29. package/dist/components/RsCalendarGrid.d.ts +30 -0
  30. package/dist/components/RsCalendarGrid.impl.js +182 -0
  31. package/dist/components/RsCalendarGrid.js +8 -0
  32. package/dist/components/RsCard.css +282 -0
  33. package/dist/components/RsCard.d.ts +78 -0
  34. package/dist/components/RsCard.impl.js +104 -0
  35. package/dist/components/RsCard.js +7 -0
  36. package/dist/components/RsCheckbox.css +104 -0
  37. package/dist/components/RsCheckbox.d.ts +36 -0
  38. package/dist/components/RsCheckbox.impl.js +86 -0
  39. package/dist/components/RsCheckbox.js +7 -0
  40. package/dist/components/RsCodeBlock.css +102 -0
  41. package/dist/components/RsCodeBlock.d.ts +34 -0
  42. package/dist/components/RsCodeBlock.impl.js +173 -0
  43. package/dist/components/RsCodeBlock.js +8 -0
  44. package/dist/components/RsCodeEditor.css +214 -0
  45. package/dist/components/RsCodeEditor.d.ts +88 -0
  46. package/dist/components/RsCodeEditor.impl.js +308 -0
  47. package/dist/components/RsCodeEditor.js +8 -0
  48. package/dist/components/RsConfigProvider.css +7 -0
  49. package/dist/components/RsConfigProvider.d.ts +36 -0
  50. package/dist/components/RsConfigProvider.impl.js +49 -0
  51. package/dist/components/RsConfigProvider.js +8 -0
  52. package/dist/components/RsConfirmDialog.css +118 -0
  53. package/dist/components/RsConfirmDialog.d.ts +72 -0
  54. package/dist/components/RsConfirmDialog.impl.js +207 -0
  55. package/dist/components/RsConfirmDialog.js +7 -0
  56. package/dist/components/RsContainer.css +94 -0
  57. package/dist/components/RsContainer.d.ts +52 -0
  58. package/dist/components/RsContainer.impl.js +99 -0
  59. package/dist/components/RsContainer.js +8 -0
  60. package/dist/components/RsContextMenu.css +178 -0
  61. package/dist/components/RsContextMenu.d.ts +35 -0
  62. package/dist/components/RsContextMenu.impl.js +81 -0
  63. package/dist/components/RsContextMenu.js +7 -0
  64. package/dist/components/RsContextMenuItems.d.ts +11 -0
  65. package/dist/components/RsContextMenuItems.impl.js +90 -0
  66. package/dist/components/RsContextMenuItems.js +5 -0
  67. package/dist/components/RsDatePicker-1.css +157 -0
  68. package/dist/components/RsDatePicker.css +100 -0
  69. package/dist/components/RsDatePicker.d.ts +72 -0
  70. package/dist/components/RsDatePicker.impl.js +719 -0
  71. package/dist/components/RsDatePicker.js +10 -0
  72. package/dist/components/RsDateTimePicker.d.ts +50 -0
  73. package/dist/components/RsDateTimePicker.impl.js +70 -0
  74. package/dist/components/RsDateTimePicker.js +5 -0
  75. package/dist/components/RsDescriptions.css +86 -0
  76. package/dist/components/RsDescriptions.d.ts +34 -0
  77. package/dist/components/RsDescriptions.impl.js +69 -0
  78. package/dist/components/RsDescriptions.js +7 -0
  79. package/dist/components/RsDescriptionsItem.d.ts +21 -0
  80. package/dist/components/RsDescriptionsItem.impl.js +26 -0
  81. package/dist/components/RsDescriptionsItem.js +5 -0
  82. package/dist/components/RsDialog.css +298 -0
  83. package/dist/components/RsDialog.d.ts +143 -0
  84. package/dist/components/RsDialog.impl.js +410 -0
  85. package/dist/components/RsDialog.js +7 -0
  86. package/dist/components/RsDivider.css +51 -0
  87. package/dist/components/RsDivider.d.ts +20 -0
  88. package/dist/components/RsDivider.impl.js +31 -0
  89. package/dist/components/RsDivider.js +8 -0
  90. package/dist/components/RsDrawer.css +368 -0
  91. package/dist/components/RsDrawer.d.ts +104 -0
  92. package/dist/components/RsDrawer.impl.js +497 -0
  93. package/dist/components/RsDrawer.js +7 -0
  94. package/dist/components/RsDropdown.css +157 -0
  95. package/dist/components/RsDropdown.d.ts +34 -0
  96. package/dist/components/RsDropdown.impl.js +100 -0
  97. package/dist/components/RsDropdown.js +7 -0
  98. package/dist/components/RsDropdownItems.d.ts +15 -0
  99. package/dist/components/RsDropdownItems.impl.js +99 -0
  100. package/dist/components/RsDropdownItems.js +5 -0
  101. package/dist/components/RsDynamicTags.css +148 -0
  102. package/dist/components/RsDynamicTags.d.ts +71 -0
  103. package/dist/components/RsDynamicTags.impl.js +313 -0
  104. package/dist/components/RsDynamicTags.js +8 -0
  105. package/dist/components/RsEmpty.css +52 -0
  106. package/dist/components/RsEmpty.d.ts +32 -0
  107. package/dist/components/RsEmpty.impl.js +43 -0
  108. package/dist/components/RsEmpty.js +7 -0
  109. package/dist/components/RsForm.css +30 -0
  110. package/dist/components/RsForm.d.ts +80 -0
  111. package/dist/components/RsForm.impl.js +188 -0
  112. package/dist/components/RsForm.js +8 -0
  113. package/dist/components/RsFormItem.css +52 -0
  114. package/dist/components/RsFormItem.d.ts +78 -0
  115. package/dist/components/RsFormItem.impl.js +288 -0
  116. package/dist/components/RsFormItem.js +8 -0
  117. package/dist/components/RsFormItemControl.d.ts +21 -0
  118. package/dist/components/RsFormItemControl.impl.js +19 -0
  119. package/dist/components/RsFormItemControl.js +5 -0
  120. package/dist/components/RsFormList.d.ts +23 -0
  121. package/dist/components/RsFormList.impl.js +86 -0
  122. package/dist/components/RsFormList.js +5 -0
  123. package/dist/components/RsIcon.css +14 -0
  124. package/dist/components/RsIcon.d.ts +24 -0
  125. package/dist/components/RsIcon.impl.js +77 -0
  126. package/dist/components/RsIcon.js +8 -0
  127. package/dist/components/RsInput.css +528 -0
  128. package/dist/components/RsInput.d.ts +147 -0
  129. package/dist/components/RsInput.impl.js +439 -0
  130. package/dist/components/RsInput.js +8 -0
  131. package/dist/components/RsInputNumber.css +163 -0
  132. package/dist/components/RsInputNumber.d.ts +88 -0
  133. package/dist/components/RsInputNumber.impl.js +375 -0
  134. package/dist/components/RsInputNumber.js +8 -0
  135. package/dist/components/RsLabel.css +33 -0
  136. package/dist/components/RsLabel.d.ts +25 -0
  137. package/dist/components/RsLabel.impl.js +45 -0
  138. package/dist/components/RsLabel.js +8 -0
  139. package/dist/components/RsLink.css +45 -0
  140. package/dist/components/RsLink.d.ts +25 -0
  141. package/dist/components/RsLink.impl.js +59 -0
  142. package/dist/components/RsLink.js +7 -0
  143. package/dist/components/RsLoading.css +106 -0
  144. package/dist/components/RsLoading.d.ts +24 -0
  145. package/dist/components/RsLoading.impl.js +72 -0
  146. package/dist/components/RsLoading.js +7 -0
  147. package/dist/components/RsLoadingBar.css +20 -0
  148. package/dist/components/RsLoadingBar.d.ts +31 -0
  149. package/dist/components/RsLoadingBar.impl.js +111 -0
  150. package/dist/components/RsLoadingBar.js +8 -0
  151. package/dist/components/RsMarkdown.css +214 -0
  152. package/dist/components/RsMarkdown.d.ts +36 -0
  153. package/dist/components/RsMarkdown.impl.js +139 -0
  154. package/dist/components/RsMarkdown.js +7 -0
  155. package/dist/components/RsMenu.css +200 -0
  156. package/dist/components/RsMenu.d.ts +28 -0
  157. package/dist/components/RsMenu.impl.js +108 -0
  158. package/dist/components/RsMenu.js +7 -0
  159. package/dist/components/RsMenuItems.d.ts +25 -0
  160. package/dist/components/RsMenuItems.impl.js +282 -0
  161. package/dist/components/RsMenuItems.js +5 -0
  162. package/dist/components/RsMonacoEditor.css +28 -0
  163. package/dist/components/RsMonacoEditor.d.ts +105 -0
  164. package/dist/components/RsMonacoEditor.impl.js +353 -0
  165. package/dist/components/RsMonacoEditor.js +8 -0
  166. package/dist/components/RsPagination.css +83 -0
  167. package/dist/components/RsPagination.d.ts +44 -0
  168. package/dist/components/RsPagination.impl.js +208 -0
  169. package/dist/components/RsPagination.js +8 -0
  170. package/dist/components/RsPopover.css +24 -0
  171. package/dist/components/RsPopover.d.ts +43 -0
  172. package/dist/components/RsPopover.impl.js +71 -0
  173. package/dist/components/RsPopover.js +7 -0
  174. package/dist/components/RsProseEditor.css +19 -0
  175. package/dist/components/RsProseEditor.d.ts +38 -0
  176. package/dist/components/RsProseEditor.impl.js +137 -0
  177. package/dist/components/RsProseEditor.js +8 -0
  178. package/dist/components/RsRadio.css +19 -0
  179. package/dist/components/RsRadio.d.ts +34 -0
  180. package/dist/components/RsRadio.impl.js +66 -0
  181. package/dist/components/RsRadio.js +7 -0
  182. package/dist/components/RsRadioItem.css +90 -0
  183. package/dist/components/RsRadioItem.d.ts +23 -0
  184. package/dist/components/RsRadioItem.impl.js +55 -0
  185. package/dist/components/RsRadioItem.js +7 -0
  186. package/dist/components/RsScrollbar.css +68 -0
  187. package/dist/components/RsScrollbar.d.ts +31 -0
  188. package/dist/components/RsScrollbar.impl.js +81 -0
  189. package/dist/components/RsScrollbar.js +7 -0
  190. package/dist/components/RsSelect.css +233 -0
  191. package/dist/components/RsSelect.d.ts +148 -0
  192. package/dist/components/RsSelect.impl.js +506 -0
  193. package/dist/components/RsSelect.js +8 -0
  194. package/dist/components/RsSidebar.css +61 -0
  195. package/dist/components/RsSidebar.d.ts +44 -0
  196. package/dist/components/RsSidebar.impl.js +63 -0
  197. package/dist/components/RsSidebar.js +8 -0
  198. package/dist/components/RsSidebarGroup.css +15 -0
  199. package/dist/components/RsSidebarGroup.d.ts +17 -0
  200. package/dist/components/RsSidebarGroup.impl.js +22 -0
  201. package/dist/components/RsSidebarGroup.js +8 -0
  202. package/dist/components/RsSidebarItem.css +45 -0
  203. package/dist/components/RsSidebarItem.d.ts +20 -0
  204. package/dist/components/RsSidebarItem.impl.js +41 -0
  205. package/dist/components/RsSidebarItem.js +8 -0
  206. package/dist/components/RsSplitPane.css +183 -0
  207. package/dist/components/RsSplitPane.d.ts +51 -0
  208. package/dist/components/RsSplitPane.impl.js +408 -0
  209. package/dist/components/RsSplitPane.js +7 -0
  210. package/dist/components/RsStatCard.css +51 -0
  211. package/dist/components/RsStatCard.d.ts +26 -0
  212. package/dist/components/RsStatCard.impl.js +41 -0
  213. package/dist/components/RsStatCard.js +8 -0
  214. package/dist/components/RsSteps.css +83 -0
  215. package/dist/components/RsSteps.d.ts +22 -0
  216. package/dist/components/RsSteps.impl.js +55 -0
  217. package/dist/components/RsSteps.js +8 -0
  218. package/dist/components/RsSwitch.css +101 -0
  219. package/dist/components/RsSwitch.d.ts +41 -0
  220. package/dist/components/RsSwitch.impl.js +92 -0
  221. package/dist/components/RsSwitch.js +7 -0
  222. package/dist/components/RsTable.d.ts +139 -0
  223. package/dist/components/RsTable.impl.js +676 -0
  224. package/dist/components/RsTable.js +5 -0
  225. package/dist/components/RsTabs.css +616 -0
  226. package/dist/components/RsTabs.d.ts +92 -0
  227. package/dist/components/RsTabs.impl.js +526 -0
  228. package/dist/components/RsTabs.js +7 -0
  229. package/dist/components/RsTag.css +94 -0
  230. package/dist/components/RsTag.d.ts +33 -0
  231. package/dist/components/RsTag.impl.js +70 -0
  232. package/dist/components/RsTag.js +8 -0
  233. package/dist/components/RsTerminal.css +119 -0
  234. package/dist/components/RsTerminal.d.ts +85 -0
  235. package/dist/components/RsTerminal.impl.js +525 -0
  236. package/dist/components/RsTerminal.js +8 -0
  237. package/dist/components/RsTimePicker-1.css +98 -0
  238. package/dist/components/RsTimePicker.css +106 -0
  239. package/dist/components/RsTimePicker.d.ts +41 -0
  240. package/dist/components/RsTimePicker.impl.js +374 -0
  241. package/dist/components/RsTimePicker.js +10 -0
  242. package/dist/components/RsTimePickerColumns.css +104 -0
  243. package/dist/components/RsTimePickerColumns.d.ts +30 -0
  244. package/dist/components/RsTimePickerColumns.impl.js +172 -0
  245. package/dist/components/RsTimePickerColumns.js +8 -0
  246. package/dist/components/RsToaster.css +329 -0
  247. package/dist/components/RsToaster.d.ts +17 -0
  248. package/dist/components/RsToaster.impl.js +67 -0
  249. package/dist/components/RsToaster.js +7 -0
  250. package/dist/components/RsToolbar.css +61 -0
  251. package/dist/components/RsToolbar.d.ts +43 -0
  252. package/dist/components/RsToolbar.impl.js +57 -0
  253. package/dist/components/RsToolbar.js +7 -0
  254. package/dist/components/RsTooltip.css +59 -0
  255. package/dist/components/RsTooltip.d.ts +47 -0
  256. package/dist/components/RsTooltip.impl.js +88 -0
  257. package/dist/components/RsTooltip.js +7 -0
  258. package/dist/components/RsTooltipProvider.d.ts +26 -0
  259. package/dist/components/RsTooltipProvider.impl.js +32 -0
  260. package/dist/components/RsTooltipProvider.js +5 -0
  261. package/dist/components/RsTree.css +308 -0
  262. package/dist/components/RsTree.d.ts +131 -0
  263. package/dist/components/RsTree.impl.js +762 -0
  264. package/dist/components/RsTree.js +8 -0
  265. package/dist/components/RsUpload.css +191 -0
  266. package/dist/components/RsUpload.d.ts +38 -0
  267. package/dist/components/RsUpload.impl.js +198 -0
  268. package/dist/components/RsUpload.js +8 -0
  269. package/dist/components/RsVNodeHost.d.ts +18 -0
  270. package/dist/components/RsVNodeHost.impl.js +18 -0
  271. package/dist/components/RsVNodeHost.js +5 -0
  272. package/dist/components/RsVirtualList.css +29 -0
  273. package/dist/components/RsVirtualList.d.ts +37 -0
  274. package/dist/components/RsVirtualList.impl.js +138 -0
  275. package/dist/components/RsVirtualList.js +8 -0
  276. package/dist/components/avatar-utils.d.ts +11 -0
  277. package/dist/components/avatar-utils.js +13 -0
  278. package/dist/components/breadcrumb-utils.d.ts +12 -0
  279. package/dist/components/breadcrumb-utils.js +12 -0
  280. package/dist/components/button-utils.d.ts +17 -0
  281. package/dist/components/button-utils.js +13 -0
  282. package/dist/components/class-utils.d.ts +2 -0
  283. package/dist/components/code-editor-utils.d.ts +33 -0
  284. package/dist/components/code-editor-utils.js +64 -0
  285. package/dist/components/code-mirror-completion.d.ts +5 -0
  286. package/dist/components/code-mirror-completion.js +37 -0
  287. package/dist/components/code-mirror-diagnostics.d.ts +6 -0
  288. package/dist/components/code-mirror-diagnostics.js +35 -0
  289. package/dist/components/code-mirror-ghost.d.ts +8 -0
  290. package/dist/components/code-mirror-ghost.js +133 -0
  291. package/dist/components/code-mirror-inline-edit.d.ts +11 -0
  292. package/dist/components/code-mirror-inline-edit.js +51 -0
  293. package/dist/components/code-mirror-intel.d.ts +22 -0
  294. package/dist/components/code-mirror-intel.js +62 -0
  295. package/dist/components/code-mirror-lang.d.ts +10 -0
  296. package/dist/components/code-mirror-lang.js +113 -0
  297. package/dist/components/context-menu-utils.d.ts +21 -0
  298. package/dist/components/context-menu-utils.js +8 -0
  299. package/dist/components/date-picker-utils.d.ts +115 -0
  300. package/dist/components/date-picker-utils.js +270 -0
  301. package/dist/components/date-range-validation.d.ts +15 -0
  302. package/dist/components/date-range-validation.js +16 -0
  303. package/dist/components/date-validation.d.ts +15 -0
  304. package/dist/components/date-validation.js +46 -0
  305. package/dist/components/descriptions-utils.d.ts +18 -0
  306. package/dist/components/descriptions-utils.js +4 -0
  307. package/dist/components/dialog-utils.d.ts +95 -0
  308. package/dist/components/dialog-utils.js +58 -0
  309. package/dist/components/dialog-viewport.d.ts +14 -0
  310. package/dist/components/dialog-viewport.js +38 -0
  311. package/dist/components/dialog-window.d.ts +45 -0
  312. package/dist/components/dialog-window.js +275 -0
  313. package/dist/components/drawer-utils.d.ts +37 -0
  314. package/dist/components/drawer-utils.js +59 -0
  315. package/dist/components/dropdown-utils.d.ts +13 -0
  316. package/dist/components/dropdown-utils.js +12 -0
  317. package/dist/components/form-item-control.d.ts +7 -0
  318. package/dist/components/form-item-control.js +46 -0
  319. package/dist/components/form-path.d.ts +29 -0
  320. package/dist/components/form-path.js +78 -0
  321. package/dist/components/form-rules.d.ts +82 -0
  322. package/dist/components/form-rules.js +130 -0
  323. package/dist/components/form-utils.d.ts +120 -0
  324. package/dist/components/form-utils.js +67 -0
  325. package/dist/components/input-number-utils.d.ts +36 -0
  326. package/dist/components/input-number-utils.js +74 -0
  327. package/dist/components/input-rules.d.ts +15 -0
  328. package/dist/components/input-rules.js +59 -0
  329. package/dist/components/loading-utils.d.ts +6 -0
  330. package/dist/components/markdown-utils.d.ts +16 -0
  331. package/dist/components/markdown-utils.js +143 -0
  332. package/dist/components/menu-utils.d.ts +16 -0
  333. package/dist/components/menu-utils.js +29 -0
  334. package/dist/components/overlay-utils.d.ts +23 -0
  335. package/dist/components/overlay-utils.js +17 -0
  336. package/dist/components/pagination-utils.d.ts +9 -0
  337. package/dist/components/pagination-utils.js +53 -0
  338. package/dist/components/popover-utils.d.ts +6 -0
  339. package/dist/components/radio-utils.d.ts +9 -0
  340. package/dist/components/radio-utils.js +4 -0
  341. package/dist/components/reka.d.ts +2 -0
  342. package/dist/components/reka.js +2 -0
  343. package/dist/components/resolve-radius.d.ts +9 -0
  344. package/dist/components/resolve-radius.js +18 -0
  345. package/dist/components/resolve-size.d.ts +10 -0
  346. package/dist/components/resolve-size.js +20 -0
  347. package/dist/components/scrollbar-utils.d.ts +3 -0
  348. package/dist/components/scrollbar-utils.js +7 -0
  349. package/dist/components/select-utils.d.ts +83 -0
  350. package/dist/components/select-utils.js +211 -0
  351. package/dist/components/split-pane-utils.d.ts +74 -0
  352. package/dist/components/split-pane-utils.js +135 -0
  353. package/dist/components/steps-utils.d.ts +12 -0
  354. package/dist/components/steps-utils.js +12 -0
  355. package/dist/components/table/RsTableBody.d.ts +47 -0
  356. package/dist/components/table/RsTableBody.impl.js +312 -0
  357. package/dist/components/table/RsTableBody.js +5 -0
  358. package/dist/components/table/RsTableBodyRow.d.ts +149 -0
  359. package/dist/components/table/RsTableBodyRow.impl.js +438 -0
  360. package/dist/components/table/RsTableBodyRow.js +5 -0
  361. package/dist/components/table/RsTableCell.d.ts +59 -0
  362. package/dist/components/table/RsTableCell.impl.js +213 -0
  363. package/dist/components/table/RsTableCell.js +5 -0
  364. package/dist/components/table/RsTableCellContent.d.ts +19 -0
  365. package/dist/components/table/RsTableCellContent.js +25 -0
  366. package/dist/components/table/RsTableCellEditor.d.ts +46 -0
  367. package/dist/components/table/RsTableCellEditor.impl.js +341 -0
  368. package/dist/components/table/RsTableCellEditor.js +5 -0
  369. package/dist/components/table/RsTableColGroup.d.ts +18 -0
  370. package/dist/components/table/RsTableColGroup.impl.js +58 -0
  371. package/dist/components/table/RsTableColGroup.js +5 -0
  372. package/dist/components/table/RsTableEditGutter.d.ts +17 -0
  373. package/dist/components/table/RsTableEditGutter.impl.js +52 -0
  374. package/dist/components/table/RsTableEditGutter.js +5 -0
  375. package/dist/components/table/RsTableHeader.d.ts +22 -0
  376. package/dist/components/table/RsTableHeader.impl.js +184 -0
  377. package/dist/components/table/RsTableHeader.js +5 -0
  378. package/dist/components/table/RsTableHeaderFilter.css +24 -0
  379. package/dist/components/table/RsTableHeaderFilter.d.ts +19 -0
  380. package/dist/components/table/RsTableHeaderFilter.impl.js +102 -0
  381. package/dist/components/table/RsTableHeaderFilter.js +8 -0
  382. package/dist/components/table/RsTableRowStatus.css +30 -0
  383. package/dist/components/table/RsTableRowStatus.d.ts +14 -0
  384. package/dist/components/table/RsTableRowStatus.impl.js +44 -0
  385. package/dist/components/table/RsTableRowStatus.js +8 -0
  386. package/dist/components/table/RsTableSummaryRow.d.ts +37 -0
  387. package/dist/components/table/RsTableSummaryRow.impl.js +57 -0
  388. package/dist/components/table/RsTableSummaryRow.js +5 -0
  389. package/dist/components/table/rs-table-api.d.ts +65 -0
  390. package/dist/components/table/rs-table-api.js +22 -0
  391. package/dist/components/table/rs-table-compat-matrix.d.ts +24 -0
  392. package/dist/components/table/rs-table-compat-matrix.js +64 -0
  393. package/dist/components/table/rs-table-echarts-adapter.d.ts +47 -0
  394. package/dist/components/table/rs-table-echarts-adapter.js +49 -0
  395. package/dist/components/table/rs-table-feature-host.d.ts +61 -0
  396. package/dist/components/table/rs-table-feature-host.js +97 -0
  397. package/dist/components/table/rs-table-grid-nav.d.ts +22 -0
  398. package/dist/components/table/rs-table-grid-nav.js +80 -0
  399. package/dist/components/table/rs-table-header-types.d.ts +45 -0
  400. package/dist/components/table/rs-table-module-registry.d.ts +37 -0
  401. package/dist/components/table/rs-table-module-registry.js +51 -0
  402. package/dist/components/table/rs-table-props.d.ts +315 -0
  403. package/dist/components/table/rs-table-props.js +64 -0
  404. package/dist/components/table/rs-table-view-context.d.ts +218 -0
  405. package/dist/components/table/rs-table-view-context.js +47 -0
  406. package/dist/components/table/table-chart-utils.d.ts +62 -0
  407. package/dist/components/table/table-chart-utils.js +91 -0
  408. package/dist/components/table/table-context-menu.d.ts +13 -0
  409. package/dist/components/table/table-context-menu.js +30 -0
  410. package/dist/components/table/table-edit-utils.d.ts +94 -0
  411. package/dist/components/table/table-edit-utils.js +282 -0
  412. package/dist/components/table/table-features.d.ts +149 -0
  413. package/dist/components/table/table-features.js +119 -0
  414. package/dist/components/table/table-keys.d.ts +5 -0
  415. package/dist/components/table/table-keys.js +6 -0
  416. package/dist/components/table/table-summary-utils.d.ts +90 -0
  417. package/dist/components/table/table-summary-utils.js +97 -0
  418. package/dist/components/table-drag.d.ts +39 -0
  419. package/dist/components/table-drag.js +130 -0
  420. package/dist/components/table-utils.d.ts +440 -0
  421. package/dist/components/table-utils.js +722 -0
  422. package/dist/components/tabs-utils.d.ts +71 -0
  423. package/dist/components/tabs-utils.js +147 -0
  424. package/dist/components/terminal-utils.d.ts +59 -0
  425. package/dist/components/terminal-utils.js +210 -0
  426. package/dist/components/terminal-wheel.d.ts +24 -0
  427. package/dist/components/terminal-wheel.js +42 -0
  428. package/dist/components/time-picker-utils.d.ts +51 -0
  429. package/dist/components/time-picker-utils.js +158 -0
  430. package/dist/components/time-range-validation.d.ts +11 -0
  431. package/dist/components/time-range-validation.js +15 -0
  432. package/dist/components/time-validation.d.ts +11 -0
  433. package/dist/components/time-validation.js +22 -0
  434. package/dist/components/tree-utils.d.ts +112 -0
  435. package/dist/components/tree-utils.js +310 -0
  436. package/dist/components/upload-utils.d.ts +26 -0
  437. package/dist/components/upload-utils.js +177 -0
  438. package/dist/components/use-rs-select.d.ts +78 -0
  439. package/dist/components/use-rs-select.js +266 -0
  440. package/dist/components/virtual-list-utils.d.ts +7 -0
  441. package/dist/components/virtual-list-utils.js +28 -0
  442. package/dist/composables/assembleRsTableApi.d.ts +34 -0
  443. package/dist/composables/assembleRsTableApi.js +26 -0
  444. package/dist/composables/bindRsTableViewContext.d.ts +73 -0
  445. package/dist/composables/bindRsTableViewContext.js +104 -0
  446. package/dist/composables/createRsDialog.d.ts +77 -0
  447. package/dist/composables/createRsDialog.js +263 -0
  448. package/dist/composables/createRsTableEditEmitBridge.d.ts +16 -0
  449. package/dist/composables/createRsTableEditEmitBridge.js +25 -0
  450. package/dist/composables/useClickOutside.d.ts +2 -0
  451. package/dist/composables/useRsConfig.d.ts +26 -0
  452. package/dist/composables/useRsConfig.js +55 -0
  453. package/dist/composables/useRsI18n.d.ts +9 -0
  454. package/dist/composables/useRsI18n.js +25 -0
  455. package/dist/composables/useRsLoadingBar.d.ts +13 -0
  456. package/dist/composables/useRsLoadingBar.js +30 -0
  457. package/dist/composables/useRsTable.d.ts +61 -0
  458. package/dist/composables/useRsTable.js +57 -0
  459. package/dist/composables/useRsTableA11y.d.ts +35 -0
  460. package/dist/composables/useRsTableA11y.js +34 -0
  461. package/dist/composables/useRsTableChartBridge.d.ts +37 -0
  462. package/dist/composables/useRsTableChartBridge.js +47 -0
  463. package/dist/composables/useRsTableColumnLayout.d.ts +75 -0
  464. package/dist/composables/useRsTableColumnLayout.js +250 -0
  465. package/dist/composables/useRsTableColumnResize.d.ts +35 -0
  466. package/dist/composables/useRsTableColumnResize.js +182 -0
  467. package/dist/composables/useRsTableColumnVirtual.d.ts +76 -0
  468. package/dist/composables/useRsTableColumnVirtual.js +116 -0
  469. package/dist/composables/useRsTableColumns.d.ts +70 -0
  470. package/dist/composables/useRsTableColumns.js +132 -0
  471. package/dist/composables/useRsTableContextMenu.d.ts +83 -0
  472. package/dist/composables/useRsTableContextMenu.js +152 -0
  473. package/dist/composables/useRsTableCore.d.ts +177 -0
  474. package/dist/composables/useRsTableCore.js +164 -0
  475. package/dist/composables/useRsTableEditActions.d.ts +129 -0
  476. package/dist/composables/useRsTableEditActions.js +376 -0
  477. package/dist/composables/useRsTableEditLayer.d.ts +228 -0
  478. package/dist/composables/useRsTableEditLayer.js +146 -0
  479. package/dist/composables/useRsTableEngine.d.ts +115 -0
  480. package/dist/composables/useRsTableEngine.js +225 -0
  481. package/dist/composables/useRsTableGridKeyboard.d.ts +38 -0
  482. package/dist/composables/useRsTableGridKeyboard.js +70 -0
  483. package/dist/composables/useRsTableHeadless.d.ts +138 -0
  484. package/dist/composables/useRsTableHeadless.js +105 -0
  485. package/dist/composables/useRsTableInteraction.d.ts +145 -0
  486. package/dist/composables/useRsTableInteraction.js +249 -0
  487. package/dist/composables/useRsTableScrollHost.d.ts +25 -0
  488. package/dist/composables/useRsTableScrollHost.js +42 -0
  489. package/dist/composables/useRsTableScrollLayout.d.ts +42 -0
  490. package/dist/composables/useRsTableScrollLayout.js +195 -0
  491. package/dist/composables/useRsTableSelectionSource.d.ts +38 -0
  492. package/dist/composables/useRsTableSelectionSource.js +57 -0
  493. package/dist/composables/useRsTableShell.d.ts +380 -0
  494. package/dist/composables/useRsTableShell.js +237 -0
  495. package/dist/composables/useRsTableShellChrome.d.ts +126 -0
  496. package/dist/composables/useRsTableShellChrome.js +110 -0
  497. package/dist/composables/useRsTableSummary.d.ts +44 -0
  498. package/dist/composables/useRsTableSummary.js +52 -0
  499. package/dist/composables/useRsTableViewProvide.d.ts +111 -0
  500. package/dist/composables/useRsTableViewProvide.js +93 -0
  501. package/dist/composables/useRsTableVirtual.d.ts +75 -0
  502. package/dist/composables/useRsTableVirtual.js +83 -0
  503. package/dist/composables/useRsTabsNav.d.ts +33 -0
  504. package/dist/composables/useRsTabsNav.js +137 -0
  505. package/dist/composables/useRsToast.d.ts +15 -0
  506. package/dist/composables/useRsToast.js +30 -0
  507. package/dist/composables/useTableCellTooltip.d.ts +28 -0
  508. package/dist/composables/useTableCellTooltip.js +177 -0
  509. package/dist/composables/useTableEdit.d.ts +63 -0
  510. package/dist/composables/useTableEdit.js +176 -0
  511. package/dist/composables/useTableRowHighlight.d.ts +14 -0
  512. package/dist/composables/useTableRowHighlight.js +35 -0
  513. package/dist/dev/vite-codemirror-deps.d.ts +20 -0
  514. package/dist/dev/vite-codemirror-deps.js +16 -0
  515. package/dist/dev/vite-xterm-deps.d.ts +8 -0
  516. package/dist/dev/vite-xterm-deps.js +3 -0
  517. package/dist/icons/custom/api.d.ts +37 -0
  518. package/dist/icons/custom/api.js +56 -0
  519. package/dist/icons/custom/clickhouse.d.ts +37 -0
  520. package/dist/icons/custom/clickhouse.js +61 -0
  521. package/dist/icons/custom/dameng.d.ts +37 -0
  522. package/dist/icons/custom/dameng.js +81 -0
  523. package/dist/icons/custom/ftp.d.ts +37 -0
  524. package/dist/icons/custom/ftp.js +62 -0
  525. package/dist/icons/custom/kingbase.d.ts +37 -0
  526. package/dist/icons/custom/kingbase.js +61 -0
  527. package/dist/icons/custom/mongodb.d.ts +37 -0
  528. package/dist/icons/custom/mongodb.js +59 -0
  529. package/dist/icons/custom/mysql.d.ts +37 -0
  530. package/dist/icons/custom/mysql.js +60 -0
  531. package/dist/icons/custom/oracle.d.ts +37 -0
  532. package/dist/icons/custom/oracle.js +61 -0
  533. package/dist/icons/custom/postgres.d.ts +37 -0
  534. package/dist/icons/custom/postgres.js +61 -0
  535. package/dist/icons/custom/redis.d.ts +38 -0
  536. package/dist/icons/custom/redis.js +60 -0
  537. package/dist/icons/custom/sqlite.d.ts +37 -0
  538. package/dist/icons/custom/sqlite.js +59 -0
  539. package/dist/icons/custom/sqlserver.d.ts +37 -0
  540. package/dist/icons/custom/sqlserver.js +61 -0
  541. package/dist/icons/custom/vastbase.d.ts +37 -0
  542. package/dist/icons/custom/vastbase.js +67 -0
  543. package/dist/icons/lucide.d.ts +7 -0
  544. package/dist/icons/lucide.js +74 -0
  545. package/dist/icons/registry.d.ts +3 -0
  546. package/dist/icons/registry.js +31 -0
  547. package/dist/index.d.ts +209 -0
  548. package/dist/index.js +156 -0
  549. package/dist/lib/iso-local-datetime.d.ts +17 -0
  550. package/dist/lib/iso-local-datetime.js +103 -0
  551. package/dist/lib/rs-dayjs.d.ts +15 -0
  552. package/dist/lib/rs-dayjs.js +41 -0
  553. package/dist/locale/interpolate.d.ts +14 -0
  554. package/dist/locale/interpolate.js +24 -0
  555. package/dist/locale/messages.d.ts +7 -0
  556. package/dist/locale/messages.js +407 -0
  557. package/dist/locale/types.d.ts +3 -0
  558. package/dist/locale/types.js +4 -0
  559. package/dist/monaco/debug-decorations.d.ts +21 -0
  560. package/dist/monaco/debug-decorations2.js +44 -0
  561. package/dist/monaco/index.d.ts +5 -0
  562. package/dist/monaco/languages/index.d.ts +3 -0
  563. package/dist/monaco/languages/mongodb-shell.d.ts +7 -0
  564. package/dist/monaco/languages/mongodb-shell.js +222 -0
  565. package/dist/monaco/languages/types.d.ts +30 -0
  566. package/dist/monaco/languages/types.js +25 -0
  567. package/dist/monaco/setup.d.ts +9 -0
  568. package/dist/monaco/setup.js +53 -0
  569. package/dist/styles.css +2005 -0
  570. package/dist/theme/apply.d.ts +6 -0
  571. package/dist/theme/apply.js +10 -0
  572. package/dist/theme/css-token.d.ts +27 -0
  573. package/dist/theme/css-token.js +72 -0
  574. package/dist/theme/presets.d.ts +7 -0
  575. package/dist/theme/presets.js +74 -0
  576. package/dist/theme/types.d.ts +97 -0
  577. package/dist/theme/types.js +65 -0
  578. package/dist/utils/rs-clipboard.d.ts +17 -0
  579. package/dist/utils/rs-clipboard.js +187 -0
  580. package/dist/vite-plugins/monaco-zh-nls.d.ts +2 -0
  581. package/dist/vite-plugins/monaco-zh-nls.js +92 -0
  582. package/dist/vite-plugins/silence-antlr-parse-console.d.ts +9 -0
  583. package/dist/vite-plugins/silence-antlr-parse-console.js +26 -0
  584. package/package.json +38 -15
  585. package/src/__tests__/RsBadge.spec.ts +0 -40
  586. package/src/__tests__/RsBreadcrumb.spec.ts +0 -172
  587. package/src/__tests__/RsButton.spec.ts +0 -188
  588. package/src/__tests__/RsCalendarGrid.spec.ts +0 -101
  589. package/src/__tests__/RsCard.spec.ts +0 -256
  590. package/src/__tests__/RsCheckbox.spec.ts +0 -36
  591. package/src/__tests__/RsCodeEditor.spec.ts +0 -111
  592. package/src/__tests__/RsConfirmDialog.spec.ts +0 -285
  593. package/src/__tests__/RsContainer.spec.ts +0 -89
  594. package/src/__tests__/RsContextMenu.spec.ts +0 -130
  595. package/src/__tests__/RsDatePicker.spec.ts +0 -109
  596. package/src/__tests__/RsDateTimePicker.spec.ts +0 -80
  597. package/src/__tests__/RsDescriptions.spec.ts +0 -50
  598. package/src/__tests__/RsDialog.spec.ts +0 -595
  599. package/src/__tests__/RsDrawer.spec.ts +0 -292
  600. package/src/__tests__/RsDropdown.spec.ts +0 -135
  601. package/src/__tests__/RsDynamicTags.spec.ts +0 -52
  602. package/src/__tests__/RsEmpty.spec.ts +0 -99
  603. package/src/__tests__/RsForm.spec.ts +0 -417
  604. package/src/__tests__/RsFormItem.spec.ts +0 -478
  605. package/src/__tests__/RsFormList.spec.ts +0 -109
  606. package/src/__tests__/RsIcon.spec.ts +0 -258
  607. package/src/__tests__/RsInput.spec.ts +0 -377
  608. package/src/__tests__/RsInputNumber.spec.ts +0 -151
  609. package/src/__tests__/RsLabel.spec.ts +0 -106
  610. package/src/__tests__/RsLink.spec.ts +0 -49
  611. package/src/__tests__/RsLoading.spec.ts +0 -84
  612. package/src/__tests__/RsMarkdown.spec.ts +0 -180
  613. package/src/__tests__/RsMenu.spec.ts +0 -511
  614. package/src/__tests__/RsNewComponents.spec.ts +0 -17
  615. package/src/__tests__/RsPagination.spec.ts +0 -223
  616. package/src/__tests__/RsPopover.spec.ts +0 -140
  617. package/src/__tests__/RsScrollbar.spec.ts +0 -53
  618. package/src/__tests__/RsSelect.spec.ts +0 -850
  619. package/src/__tests__/RsSidebar.spec.ts +0 -119
  620. package/src/__tests__/RsSplitPane.spec.ts +0 -177
  621. package/src/__tests__/RsStatCard.spec.ts +0 -79
  622. package/src/__tests__/RsSteps.spec.ts +0 -125
  623. package/src/__tests__/RsSwitch.spec.ts +0 -74
  624. package/src/__tests__/RsTable.a11y.spec.ts +0 -83
  625. package/src/__tests__/RsTable.dom-baseline.spec.ts +0 -87
  626. package/src/__tests__/RsTable.perf.spec.ts +0 -122
  627. package/src/__tests__/RsTable.spec.ts +0 -1207
  628. package/src/__tests__/RsTable.ssr.spec.ts +0 -71
  629. package/src/__tests__/RsTable.summary.spec.ts +0 -45
  630. package/src/__tests__/RsTabs.spec.ts +0 -426
  631. package/src/__tests__/RsTerminal.spec.ts +0 -218
  632. package/src/__tests__/RsTimePicker.spec.ts +0 -97
  633. package/src/__tests__/RsToaster.spec.ts +0 -95
  634. package/src/__tests__/RsToolbar.spec.ts +0 -75
  635. package/src/__tests__/RsTooltip.spec.ts +0 -154
  636. package/src/__tests__/RsTree.spec.ts +0 -573
  637. package/src/__tests__/RsUpload.spec.ts +0 -216
  638. package/src/__tests__/RsVirtualList.spec.ts +0 -77
  639. package/src/__tests__/createRsDialog.spec.ts +0 -158
  640. package/src/__tests__/css-token.spec.ts +0 -51
  641. package/src/__tests__/date-picker-utils.spec.ts +0 -119
  642. package/src/__tests__/dialog-utils.spec.ts +0 -43
  643. package/src/__tests__/dialog-viewport.spec.ts +0 -38
  644. package/src/__tests__/form-path.spec.ts +0 -46
  645. package/src/__tests__/form-rules.spec.ts +0 -139
  646. package/src/__tests__/iso-local-datetime.spec.ts +0 -58
  647. package/src/__tests__/perf-budgets.ts +0 -32
  648. package/src/__tests__/rs-clipboard.spec.ts +0 -142
  649. package/src/__tests__/rs-select-model.types.spec.ts +0 -28
  650. package/src/__tests__/rs-table-api.spec.ts +0 -206
  651. package/src/__tests__/rs-table-compat-matrix.spec.ts +0 -108
  652. package/src/__tests__/rs-table-echarts-adapter.spec.ts +0 -43
  653. package/src/__tests__/rs-table-grid-nav.spec.ts +0 -63
  654. package/src/__tests__/rs-table-isolation.spec.ts +0 -158
  655. package/src/__tests__/rs-table-slots.types.spec.ts +0 -20
  656. package/src/__tests__/setup.ts +0 -12
  657. package/src/__tests__/split-pane-utils.spec.ts +0 -157
  658. package/src/__tests__/table-chart-utils.spec.ts +0 -88
  659. package/src/__tests__/table-drag.spec.ts +0 -35
  660. package/src/__tests__/table-edit-utils.spec.ts +0 -194
  661. package/src/__tests__/table-summary-utils.spec.ts +0 -62
  662. package/src/__tests__/table-utils.spec.ts +0 -410
  663. package/src/__tests__/theme.spec.ts +0 -49
  664. package/src/__tests__/tree-utils.spec.ts +0 -234
  665. package/src/__tests__/useRsTableColumnResize.spec.ts +0 -25
  666. package/src/__tests__/useRsTableCore.perf.spec.ts +0 -170
  667. package/src/__tests__/useTableCellTooltip.spec.ts +0 -101
  668. package/src/components/RsAlert.vue +0 -212
  669. package/src/components/RsAvatar.vue +0 -115
  670. package/src/components/RsBadge.vue +0 -59
  671. package/src/components/RsBreadcrumb.vue +0 -65
  672. package/src/components/RsBreadcrumbItems.vue +0 -36
  673. package/src/components/RsButton.vue +0 -596
  674. package/src/components/RsCalendarGrid.vue +0 -318
  675. package/src/components/RsCard.vue +0 -421
  676. package/src/components/RsCheckbox.vue +0 -189
  677. package/src/components/RsCodeBlock.vue +0 -327
  678. package/src/components/RsCodeEditor.vue +0 -597
  679. package/src/components/RsConfigProvider.vue +0 -92
  680. package/src/components/RsConfirmDialog.vue +0 -365
  681. package/src/components/RsContainer.vue +0 -235
  682. package/src/components/RsContextMenu.vue +0 -277
  683. package/src/components/RsContextMenuItems.vue +0 -77
  684. package/src/components/RsDatePicker.vue +0 -1033
  685. package/src/components/RsDateTimePicker.vue +0 -67
  686. package/src/components/RsDescriptions.vue +0 -186
  687. package/src/components/RsDescriptionsItem.vue +0 -32
  688. package/src/components/RsDialog.vue +0 -813
  689. package/src/components/RsDivider.vue +0 -89
  690. package/src/components/RsDrawer.vue +0 -979
  691. package/src/components/RsDropdown.vue +0 -283
  692. package/src/components/RsDropdownItems.vue +0 -90
  693. package/src/components/RsDynamicTags.vue +0 -531
  694. package/src/components/RsEmpty.vue +0 -107
  695. package/src/components/RsForm.vue +0 -287
  696. package/src/components/RsFormItem.vue +0 -423
  697. package/src/components/RsFormItemControl.vue +0 -21
  698. package/src/components/RsFormList.vue +0 -117
  699. package/src/components/RsIcon.vue +0 -104
  700. package/src/components/RsInput.vue +0 -1508
  701. package/src/components/RsInputNumber.vue +0 -582
  702. package/src/components/RsLabel.vue +0 -69
  703. package/src/components/RsLink.vue +0 -106
  704. package/src/components/RsLoading.vue +0 -171
  705. package/src/components/RsLoadingBar.vue +0 -151
  706. package/src/components/RsMarkdown.vue +0 -348
  707. package/src/components/RsMenu.vue +0 -314
  708. package/src/components/RsMenuItems.vue +0 -263
  709. package/src/components/RsMonacoEditor.vue +0 -567
  710. package/src/components/RsPagination.vue +0 -263
  711. package/src/components/RsPopover.vue +0 -79
  712. package/src/components/RsProseEditor.vue +0 -160
  713. package/src/components/RsRadio.vue +0 -81
  714. package/src/components/RsRadioItem.vue +0 -156
  715. package/src/components/RsScrollbar.vue +0 -171
  716. package/src/components/RsSelect.vue +0 -786
  717. package/src/components/RsSidebar.vue +0 -121
  718. package/src/components/RsSidebarGroup.vue +0 -32
  719. package/src/components/RsSidebarItem.vue +0 -72
  720. package/src/components/RsSplitPane.vue +0 -714
  721. package/src/components/RsStatCard.vue +0 -85
  722. package/src/components/RsSteps.vue +0 -138
  723. package/src/components/RsSwitch.vue +0 -192
  724. package/src/components/RsTable.vue +0 -762
  725. package/src/components/RsTabs.vue +0 -1283
  726. package/src/components/RsTag.vue +0 -191
  727. package/src/components/RsTerminal.vue +0 -840
  728. package/src/components/RsTimePicker.vue +0 -617
  729. package/src/components/RsTimePickerColumns.vue +0 -285
  730. package/src/components/RsToaster.vue +0 -436
  731. package/src/components/RsToolbar.vue +0 -135
  732. package/src/components/RsTooltip.vue +0 -151
  733. package/src/components/RsTooltipProvider.vue +0 -30
  734. package/src/components/RsTree.vue +0 -1270
  735. package/src/components/RsUpload.vue +0 -412
  736. package/src/components/RsVNodeHost.vue +0 -20
  737. package/src/components/RsVirtualList.vue +0 -217
  738. package/src/components/avatar-utils.ts +0 -19
  739. package/src/components/breadcrumb-utils.ts +0 -19
  740. package/src/components/button-utils.ts +0 -39
  741. package/src/components/class-utils.ts +0 -29
  742. package/src/components/code-editor-utils.ts +0 -106
  743. package/src/components/code-mirror-completion.ts +0 -40
  744. package/src/components/code-mirror-diagnostics.ts +0 -52
  745. package/src/components/code-mirror-ghost.ts +0 -158
  746. package/src/components/code-mirror-inline-edit.ts +0 -55
  747. package/src/components/code-mirror-intel.ts +0 -81
  748. package/src/components/code-mirror-lang.ts +0 -128
  749. package/src/components/context-menu-utils.ts +0 -26
  750. package/src/components/date-picker-utils.ts +0 -475
  751. package/src/components/date-range-validation.ts +0 -29
  752. package/src/components/date-validation.ts +0 -38
  753. package/src/components/descriptions-utils.ts +0 -24
  754. package/src/components/dialog-utils.ts +0 -183
  755. package/src/components/dialog-viewport.ts +0 -48
  756. package/src/components/dialog-window.ts +0 -318
  757. package/src/components/drawer-utils.ts +0 -109
  758. package/src/components/dropdown-utils.ts +0 -31
  759. package/src/components/form-item-control.ts +0 -55
  760. package/src/components/form-path.ts +0 -92
  761. package/src/components/form-rules.ts +0 -311
  762. package/src/components/form-utils.ts +0 -219
  763. package/src/components/input-number-utils.ts +0 -128
  764. package/src/components/input-rules.ts +0 -84
  765. package/src/components/loading-utils.ts +0 -8
  766. package/src/components/markdown-utils.ts +0 -174
  767. package/src/components/menu-utils.ts +0 -59
  768. package/src/components/overlay-utils.ts +0 -50
  769. package/src/components/pagination-utils.ts +0 -38
  770. package/src/components/popover-utils.ts +0 -8
  771. package/src/components/radio-utils.ts +0 -12
  772. package/src/components/reka.ts +0 -111
  773. package/src/components/resolve-radius.ts +0 -22
  774. package/src/components/resolve-size.ts +0 -29
  775. package/src/components/scrollbar-utils.ts +0 -10
  776. package/src/components/select-utils.ts +0 -372
  777. package/src/components/split-pane-utils.ts +0 -254
  778. package/src/components/steps-utils.ts +0 -22
  779. package/src/components/table/RsTableBody.vue +0 -217
  780. package/src/components/table/RsTableBodyRow.vue +0 -376
  781. package/src/components/table/RsTableCell.vue +0 -239
  782. package/src/components/table/RsTableCellContent.ts +0 -18
  783. package/src/components/table/RsTableCellEditor.vue +0 -352
  784. package/src/components/table/RsTableColGroup.vue +0 -41
  785. package/src/components/table/RsTableEditGutter.vue +0 -54
  786. package/src/components/table/RsTableHeader.vue +0 -158
  787. package/src/components/table/RsTableHeaderFilter.vue +0 -107
  788. package/src/components/table/RsTableRowStatus.vue +0 -69
  789. package/src/components/table/RsTableSummaryRow.vue +0 -52
  790. package/src/components/table/rs-table-api.ts +0 -99
  791. package/src/components/table/rs-table-compat-matrix.ts +0 -71
  792. package/src/components/table/rs-table-echarts-adapter.ts +0 -81
  793. package/src/components/table/rs-table-feature-host.ts +0 -178
  794. package/src/components/table/rs-table-grid-nav.ts +0 -122
  795. package/src/components/table/rs-table-header-types.ts +0 -47
  796. package/src/components/table/rs-table-module-registry.ts +0 -72
  797. package/src/components/table/rs-table-props.ts +0 -340
  798. package/src/components/table/rs-table-view-context.ts +0 -258
  799. package/src/components/table/table-chart-utils.ts +0 -165
  800. package/src/components/table/table-context-menu.ts +0 -53
  801. package/src/components/table/table-edit-utils.ts +0 -496
  802. package/src/components/table/table-features.ts +0 -284
  803. package/src/components/table/table-keys.ts +0 -12
  804. package/src/components/table/table-summary-utils.ts +0 -194
  805. package/src/components/table-drag.ts +0 -215
  806. package/src/components/table-utils.ts +0 -1400
  807. package/src/components/tabs-utils.ts +0 -247
  808. package/src/components/terminal-utils.ts +0 -323
  809. package/src/components/terminal-wheel.ts +0 -74
  810. package/src/components/time-picker-utils.ts +0 -240
  811. package/src/components/time-range-validation.ts +0 -23
  812. package/src/components/time-validation.ts +0 -20
  813. package/src/components/tree-utils.ts +0 -518
  814. package/src/components/upload-utils.ts +0 -177
  815. package/src/components/use-rs-select.ts +0 -451
  816. package/src/components/virtual-list-utils.ts +0 -30
  817. package/src/composables/assembleRsTableApi.ts +0 -79
  818. package/src/composables/bindRsTableViewContext.ts +0 -269
  819. package/src/composables/createRsDialog.ts +0 -408
  820. package/src/composables/createRsTableEditEmitBridge.ts +0 -38
  821. package/src/composables/useClickOutside.ts +0 -22
  822. package/src/composables/useRsConfig.ts +0 -98
  823. package/src/composables/useRsI18n.ts +0 -33
  824. package/src/composables/useRsLoadingBar.ts +0 -36
  825. package/src/composables/useRsTable.ts +0 -134
  826. package/src/composables/useRsTableA11y.ts +0 -52
  827. package/src/composables/useRsTableChartBridge.ts +0 -79
  828. package/src/composables/useRsTableColumnLayout.ts +0 -320
  829. package/src/composables/useRsTableColumnResize.ts +0 -244
  830. package/src/composables/useRsTableColumnVirtual.ts +0 -180
  831. package/src/composables/useRsTableColumns.ts +0 -200
  832. package/src/composables/useRsTableContextMenu.ts +0 -257
  833. package/src/composables/useRsTableCore.ts +0 -258
  834. package/src/composables/useRsTableEditActions.ts +0 -606
  835. package/src/composables/useRsTableEditLayer.ts +0 -251
  836. package/src/composables/useRsTableEngine.ts +0 -357
  837. package/src/composables/useRsTableGridKeyboard.ts +0 -123
  838. package/src/composables/useRsTableHeadless.ts +0 -145
  839. package/src/composables/useRsTableInteraction.ts +0 -433
  840. package/src/composables/useRsTableScrollHost.ts +0 -75
  841. package/src/composables/useRsTableScrollLayout.ts +0 -255
  842. package/src/composables/useRsTableSelectionSource.ts +0 -89
  843. package/src/composables/useRsTableShell.ts +0 -416
  844. package/src/composables/useRsTableShellChrome.ts +0 -170
  845. package/src/composables/useRsTableSummary.ts +0 -113
  846. package/src/composables/useRsTableViewProvide.ts +0 -263
  847. package/src/composables/useRsTableVirtual.ts +0 -154
  848. package/src/composables/useRsTabsNav.ts +0 -191
  849. package/src/composables/useRsToast.ts +0 -48
  850. package/src/composables/useTableCellTooltip.ts +0 -240
  851. package/src/composables/useTableEdit.ts +0 -271
  852. package/src/composables/useTableRowHighlight.ts +0 -50
  853. package/src/dev/vite-codemirror-deps.ts +0 -20
  854. package/src/dev/vite-xterm-deps.ts +0 -8
  855. package/src/icons/custom/api.ts +0 -54
  856. package/src/icons/custom/clickhouse.ts +0 -52
  857. package/src/icons/custom/dameng.ts +0 -83
  858. package/src/icons/custom/ftp.ts +0 -61
  859. package/src/icons/custom/kingbase.ts +0 -52
  860. package/src/icons/custom/mongodb.ts +0 -50
  861. package/src/icons/custom/mysql.ts +0 -51
  862. package/src/icons/custom/oracle.ts +0 -52
  863. package/src/icons/custom/postgres.ts +0 -52
  864. package/src/icons/custom/redis.ts +0 -51
  865. package/src/icons/custom/sqlite.ts +0 -50
  866. package/src/icons/custom/sqlserver.ts +0 -52
  867. package/src/icons/custom/vastbase.ts +0 -57
  868. package/src/icons/lucide.ts +0 -94
  869. package/src/icons/registry.ts +0 -35
  870. package/src/index.ts +0 -813
  871. package/src/lib/iso-local-datetime.ts +0 -152
  872. package/src/lib/rs-dayjs.ts +0 -56
  873. package/src/locale/interpolate.ts +0 -32
  874. package/src/locale/messages.ts +0 -408
  875. package/src/locale/types.ts +0 -5
  876. package/src/monaco/debug-decorations.ts +0 -70
  877. package/src/monaco/index.ts +0 -23
  878. package/src/monaco/languages/index.ts +0 -22
  879. package/src/monaco/languages/mongodb-shell.ts +0 -125
  880. package/src/monaco/languages/types.ts +0 -59
  881. package/src/monaco/setup.ts +0 -101
  882. package/src/styles.css +0 -1364
  883. package/src/theme/apply.ts +0 -12
  884. package/src/theme/css-token.ts +0 -107
  885. package/src/theme/presets.ts +0 -73
  886. package/src/theme/types.ts +0 -149
  887. package/src/utils/rs-clipboard.ts +0 -272
  888. package/src/vite-env.d.ts +0 -7
  889. package/vite-plugins/monaco-zh-nls.ts +0 -101
  890. package/vite-plugins/silence-antlr-parse-console.ts +0 -29
  891. /package/{src → dist}/components/table/rs-table.css +0 -0
  892. /package/{src → dist}/monaco/debug-decorations.css +0 -0
  893. /package/{src → dist}/theme/brand.example.css +0 -0
@@ -1,320 +0,0 @@
1
- /**
2
- * RsTable 列布局:拉满补宽、渲染列宽、fixed/overflow/前缀 lead 样式。
3
- *
4
- * 性能约定:
5
- * - `emptyFillExtras` 使用冻结空对象恒等,避免无补宽时 renderColumnWidths 复制整表
6
- * - 列 style Map 一次遍历构建,模板热路径按 key O(1) 取用
7
- */
8
-
9
- import { computed, type ComputedRef, type Ref } from 'vue'
10
- import { measureRsTablePrefixWidth, RS_TABLE_PREFIX_COL_WIDTH } from './useRsTableColumnVirtual'
11
- import {
12
- fixedCellStyle,
13
- parseColumnWidth,
14
- resolveColumnStyle,
15
- resolveFixedColumnStyles,
16
- type RsTableColumn,
17
- type RsTableRowData,
18
- } from '../components/table-utils'
19
-
20
- /** ComputedRef / Ref / getter 均可 */
21
- type Source<T> = ComputedRef<T> | Ref<T> | (() => T)
22
-
23
- function read<T>(source: Source<T>): T {
24
- if (typeof source === 'function') return (source as () => T)()
25
- return (source as Ref<T> | ComputedRef<T>).value
26
- }
27
-
28
- /** 无补宽时的共享空对象(恒等比较,避免无意义拷贝) */
29
- const EMPTY_FILL_EXTRAS: Record<string, number> = Object.freeze({})
30
-
31
- export interface UseRsTableColumnLayoutOptions<T extends RsTableRowData> {
32
- displayColumns: Source<RsTableColumn<T>[]>
33
- effectiveColumnWidths: Source<Record<string, number>>
34
- measuredViewportWidth: Source<number>
35
- tableMinWidth: Source<string | undefined>
36
- resizable: Source<boolean>
37
- columnLayout: Source<'auto' | 'fixed'>
38
- useStableColumnWidths: Source<boolean>
39
- isColumnResizing: Source<boolean>
40
- virtualColumnsEnabled: Source<boolean>
41
- scrollX: Source<number | string | undefined>
42
- showRowDragHandle: Source<boolean>
43
- detailExpandable: Source<boolean>
44
- showSelectColumn: Source<boolean>
45
- showEditGutterColumn: Source<boolean>
46
- showIndexColumn: Source<boolean>
47
- showRowStatusColumn: Source<boolean>
48
- resolvedGutterWidth: Source<number>
49
- resolvedIndexWidth: Source<number>
50
- dragColumnOffset: Source<number>
51
- expandColumnOffset: Source<number>
52
- selectColumnOffset: Source<number>
53
- /** 拖拽会话快照列宽;非空表示正在/刚进入 resize paint */
54
- resizePaintWidths: Source<Record<string, number> | null>
55
- }
56
-
57
- /**
58
- * 列布局与样式缓存。
59
- */
60
- export function useRsTableColumnLayout<T extends RsTableRowData>(
61
- options: UseRsTableColumnLayoutOptions<T>,
62
- ) {
63
- const PREFIX = RS_TABLE_PREFIX_COL_WIDTH
64
-
65
- /** 前缀列总宽(不含 status;status 在部分合计里另加) */
66
- function measurePrefixColumnWidth(): number {
67
- return measureRsTablePrefixWidth({
68
- showRowDragHandle: read(options.showRowDragHandle),
69
- detailExpandable: read(options.detailExpandable),
70
- showSelectColumn: read(options.showSelectColumn),
71
- showEditGutterColumn: read(options.showEditGutterColumn),
72
- showIndexColumn: read(options.showIndexColumn),
73
- gutterWidth: read(options.resolvedGutterWidth),
74
- indexWidth: read(options.resolvedIndexWidth),
75
- })
76
- }
77
-
78
- /** resizable 且列宽稳定时,或拖拽会话中:表格内容最小宽度 = 各列宽度之和 */
79
- const resizableTableWidth = computed(() => {
80
- if (!read(options.resizable)) return undefined
81
- if (
82
- !read(options.resizePaintWidths) &&
83
- read(options.columnLayout) === 'auto' &&
84
- !read(options.useStableColumnWidths)
85
- ) {
86
- return undefined
87
- }
88
- let sum = measurePrefixColumnWidth()
89
- const widths = read(options.effectiveColumnWidths)
90
- for (const col of read(options.displayColumns)) {
91
- sum += widths[col.key] ?? parseColumnWidth(col.width ?? col.minWidth)
92
- }
93
- return `${sum}px`
94
- })
95
-
96
- const useFixedColumnLayout = computed(
97
- () => read(options.useStableColumnWidths) || read(options.isColumnResizing),
98
- )
99
-
100
- /**
101
- * 列总宽不足视口时,把剩余像素均分到数据列(前缀列不动)。
102
- * 列虚拟开启时不做拉满,避免与横向切片打架。
103
- */
104
- const columnFillExtras = computed((): Record<string, number> => {
105
- if (read(options.isColumnResizing)) return EMPTY_FILL_EXTRAS
106
- if (!useFixedColumnLayout.value) return EMPTY_FILL_EXTRAS
107
- if (read(options.virtualColumnsEnabled)) return EMPTY_FILL_EXTRAS
108
- const viewportW = read(options.measuredViewportWidth)
109
- if (viewportW <= 0) return EMPTY_FILL_EXTRAS
110
- const cols = read(options.displayColumns)
111
- if (cols.length === 0) return EMPTY_FILL_EXTRAS
112
-
113
- let sum = measurePrefixColumnWidth()
114
- if (read(options.showRowStatusColumn)) sum += PREFIX.status
115
- const widths = read(options.effectiveColumnWidths)
116
- for (const col of cols) {
117
- sum += widths[col.key] ?? parseColumnWidth(col.width ?? col.minWidth)
118
- }
119
- const excess = Math.floor(viewportW - sum) - 1
120
- if (excess <= 0) return EMPTY_FILL_EXTRAS
121
-
122
- const extras: Record<string, number> = {}
123
- const base = Math.floor(excess / cols.length)
124
- let rem = excess - base * cols.length
125
- for (const col of cols) {
126
- extras[col.key] = base + (rem > 0 ? 1 : 0)
127
- if (rem > 0) rem -= 1
128
- }
129
- return extras
130
- })
131
-
132
- /** 渲染用列宽 = 持久化/拖拽列宽 + 拉满补宽;无补宽时直接返回 base 引用 */
133
- const renderColumnWidths = computed(() => {
134
- const extras = columnFillExtras.value
135
- const base = read(options.effectiveColumnWidths)
136
- if (extras === EMPTY_FILL_EXTRAS) return base
137
- const next: Record<string, number> = { ...base }
138
- for (const col of read(options.displayColumns)) {
139
- const extra = extras[col.key]
140
- if (!extra) continue
141
- const cur = next[col.key] ?? parseColumnWidth(col.width ?? col.minWidth)
142
- next[col.key] = cur + extra
143
- }
144
- return next
145
- })
146
-
147
- const tableInlineStyle = computed(() => {
148
- if (read(options.isColumnResizing)) return undefined
149
- if (read(options.resizable)) {
150
- if (read(options.columnLayout) === 'auto' && !read(options.useStableColumnWidths)) {
151
- const minW = read(options.tableMinWidth)
152
- return minW ? { width: '100%', minWidth: minW } : { width: '100%' }
153
- }
154
- const width = resizableTableWidth.value
155
- if (!width) return undefined
156
- return { width: '100%', minWidth: read(options.tableMinWidth) ?? width }
157
- }
158
- const minW = read(options.tableMinWidth)
159
- return minW ? { minWidth: minW } : undefined
160
- })
161
-
162
- function estimateRequiredTableWidth(): number {
163
- let sum = measurePrefixColumnWidth()
164
- if (read(options.showRowStatusColumn)) sum += PREFIX.status
165
- const widths = read(options.effectiveColumnWidths)
166
- for (const col of read(options.displayColumns)) {
167
- const stored = widths[col.key]
168
- if (typeof stored === 'number') {
169
- sum += stored
170
- continue
171
- }
172
- if (typeof col.width === 'number') {
173
- sum += col.width
174
- continue
175
- }
176
- if (col.minWidth !== undefined) {
177
- sum += typeof col.minWidth === 'number' ? col.minWidth : parseColumnWidth(col.minWidth, 0)
178
- }
179
- }
180
- return sum
181
- }
182
-
183
- /** 仅当列宽确需超过容器时开启横向滚动 */
184
- const overflowXEnabled = computed(() => {
185
- if (read(options.virtualColumnsEnabled)) return true
186
- const scrollX = read(options.scrollX)
187
- if (scrollX != null && scrollX !== '') return true
188
- const viewportW = read(options.measuredViewportWidth)
189
- if (viewportW <= 0) return false
190
- if (useFixedColumnLayout.value) {
191
- const raw = resizableTableWidth.value
192
- const sum = raw ? Number.parseInt(raw, 10) : estimateRequiredTableWidth()
193
- return Number.isFinite(sum) && sum > viewportW
194
- }
195
- return estimateRequiredTableWidth() > viewportW
196
- })
197
-
198
- function resolvedDataColumnWidth(key: string, fallback?: number | string): number {
199
- const stored = renderColumnWidths.value[key]
200
- if (typeof stored === 'number') return stored
201
- return parseColumnWidth(fallback)
202
- }
203
-
204
- const fixedColumnStyles = computed(() =>
205
- resolveFixedColumnStyles(read(options.displayColumns), renderColumnWidths.value, {
206
- selectable: read(options.showSelectColumn),
207
- showIndex: read(options.showIndexColumn),
208
- showEditGutter: read(options.showEditGutterColumn),
209
- gutterWidth: read(options.resolvedGutterWidth),
210
- indexWidth: read(options.resolvedIndexWidth),
211
- expandable: read(options.detailExpandable),
212
- rowDraggable: read(options.showRowDragHandle),
213
- }),
214
- )
215
-
216
- /**
217
- * 一次遍历同时构建 body/header 列样式 Map,避免两遍 resolveColumnStyle。
218
- */
219
- const columnStyleMaps = computed(() => {
220
- const body = new Map<string, Record<string, string> | undefined>()
221
- const header = new Map<string, Record<string, string> | undefined>()
222
- const widths = renderColumnWidths.value
223
- const fixed = fixedColumnStyles.value
224
- for (const col of read(options.displayColumns)) {
225
- const base = resolveColumnStyle(col, widths) ?? {}
226
- const bodyFixed = fixedCellStyle(fixed.get(col.key))
227
- const headerFixed = fixedCellStyle(fixed.get(col.key), { header: true })
228
- let bodyMerged: Record<string, string> | undefined
229
- let headerMerged: Record<string, string> | undefined
230
- if (bodyFixed) bodyMerged = { ...base, ...bodyFixed }
231
- else if (Object.keys(base).length) bodyMerged = base
232
- if (headerFixed) headerMerged = { ...base, ...headerFixed }
233
- else if (Object.keys(base).length) headerMerged = base
234
- body.set(col.key, bodyMerged)
235
- header.set(col.key, headerMerged)
236
- }
237
- return { body, header }
238
- })
239
-
240
- const columnStyleMap = computed(() => columnStyleMaps.value.body)
241
- const columnHeaderStyleMap = computed(() => columnStyleMaps.value.header)
242
-
243
- /** td 静态 class Map:列配置不变时复用 */
244
- const columnTdClassMap = computed<Map<string, string[]>>(() => {
245
- const map = new Map<string, string[]>()
246
- for (const col of read(options.displayColumns)) {
247
- const classes: string[] = [`rs-table__cell--${col.align ?? 'left'}`]
248
- if (col.ellipsis) classes.push('rs-table__td--ellipsis')
249
- if (col.fixed) classes.push('rs-table__cell--fixed')
250
- map.set(col.key, classes)
251
- }
252
- return map
253
- })
254
-
255
- const dragLeadStyle = computed(() => fixedCellStyle({ fixed: 'left', left: 0 }) ?? {})
256
- const expandLeadStyle = computed(
257
- () => fixedCellStyle({ fixed: 'left', left: read(options.dragColumnOffset) }) ?? {},
258
- )
259
- const selectLeadStyle = computed(
260
- () => fixedCellStyle({ fixed: 'left', left: read(options.expandColumnOffset) }) ?? {},
261
- )
262
- const indexLeadStyle = computed(
263
- () => fixedCellStyle({ fixed: 'left', left: read(options.selectColumnOffset) }) ?? {},
264
- )
265
- const gutterLeadStyle = computed(
266
- () => fixedCellStyle({ fixed: 'left', left: read(options.selectColumnOffset) }) ?? {},
267
- )
268
- const dragLeadHeaderStyle = computed(
269
- () => fixedCellStyle({ fixed: 'left', left: 0 }, { header: true }) ?? {},
270
- )
271
- const expandLeadHeaderStyle = computed(
272
- () =>
273
- fixedCellStyle({ fixed: 'left', left: read(options.dragColumnOffset) }, { header: true }) ?? {},
274
- )
275
- const selectLeadHeaderStyle = computed(
276
- () =>
277
- fixedCellStyle({ fixed: 'left', left: read(options.expandColumnOffset) }, { header: true }) ??
278
- {},
279
- )
280
- const indexLeadHeaderStyle = computed(
281
- () =>
282
- fixedCellStyle({ fixed: 'left', left: read(options.selectColumnOffset) }, { header: true }) ??
283
- {},
284
- )
285
- const gutterLeadHeaderStyle = computed(
286
- () =>
287
- fixedCellStyle({ fixed: 'left', left: read(options.selectColumnOffset) }, { header: true }) ??
288
- {},
289
- )
290
-
291
- return {
292
- EMPTY_FILL_EXTRAS,
293
- measurePrefixColumnWidth,
294
- resizableTableWidth,
295
- useFixedColumnLayout,
296
- columnFillExtras,
297
- renderColumnWidths,
298
- tableInlineStyle,
299
- overflowXEnabled,
300
- resolvedDataColumnWidth,
301
- fixedColumnStyles,
302
- columnStyleMap,
303
- columnHeaderStyleMap,
304
- columnTdClassMap,
305
- dragLeadStyle,
306
- expandLeadStyle,
307
- selectLeadStyle,
308
- indexLeadStyle,
309
- gutterLeadStyle,
310
- dragLeadHeaderStyle,
311
- expandLeadHeaderStyle,
312
- selectLeadHeaderStyle,
313
- indexLeadHeaderStyle,
314
- gutterLeadHeaderStyle,
315
- }
316
- }
317
-
318
- export type RsTableColumnLayoutApi<T extends RsTableRowData> = ReturnType<
319
- typeof useRsTableColumnLayout<T>
320
- >
@@ -1,244 +0,0 @@
1
- /**
2
- * RsTable 列宽拖拽:mousemove 走 DOM 直写,避免整表 Vue 重渲。
3
- *
4
- * 性能关键:
5
- * - 会话开始时缓存 col/th 元素与基准总宽,RAF 内不再 querySelector 全表
6
- * - 拖拽中只更新变化列宽度 + table 总宽(O(1)),不重写其它列
7
- * - activeDragWidths 为非响应式 plain object,禁止写入 reactive
8
- */
9
-
10
- import { nextTick, onUnmounted, ref, type ComputedRef, type Ref } from 'vue'
11
- import { clampColumnWidth, parseColumnWidth, type RsTableColumn, type RsTableRowData } from '../components/table-utils'
12
-
13
- function read<T>(source: ComputedRef<T> | (() => T) | Ref<T>): T {
14
- if (typeof source === 'function') return (source as () => T)()
15
- return (source as Ref<T> | ComputedRef<T>).value
16
- }
17
-
18
- export interface UseRsTableColumnResizeOptions<T extends RsTableRowData> {
19
- resizable: ComputedRef<boolean> | (() => boolean)
20
- minColumnWidth: ComputedRef<number | undefined> | (() => number | undefined)
21
- maxColumnWidth: ComputedRef<number | undefined> | (() => number | undefined)
22
- displayColumns: ComputedRef<RsTableColumn<T>[]> | (() => RsTableColumn<T>[])
23
- resolvedColumnWidths: {
24
- get: () => Record<string, number>
25
- set: (value: Record<string, number>) => void
26
- }
27
- /** 前缀列总宽(px),用于 DOM 直写时的 table 总宽 */
28
- measurePrefixColumnWidth: () => number
29
- tableMinWidth: ComputedRef<string | undefined> | (() => string | undefined)
30
- onColumnResize: (key: string, width: number) => void
31
- }
32
-
33
- interface ResizeSession {
34
- key: string
35
- startX: number
36
- startWidth: number
37
- currentWidth: number
38
- domSnapshot: Record<string, number>
39
- /** 会话基准总宽(前缀 + 各列快照),便于 O(1) 更新 table.width */
40
- baseTableWidth: number
41
- colEls: Map<string, HTMLTableColElement>
42
- thEls: Map<string, HTMLTableCellElement>
43
- }
44
-
45
- /**
46
- * 列宽拖拽会话。
47
- */
48
- export function useRsTableColumnResize<T extends RsTableRowData>(
49
- options: UseRsTableColumnResizeOptions<T>,
50
- ) {
51
- const tableRef = ref<HTMLTableElement | null>(null)
52
- const isColumnResizing = ref(false)
53
- /** 拖拽会话中的列宽快照(仅首帧写入一次,供 colgroup 初始渲染) */
54
- const resizePaintWidths = ref<Record<string, number> | null>(null)
55
-
56
- let session: ResizeSession | null = null
57
- /** 非响应式:mousemove 高频更新不得触发 Vue */
58
- let activeDragWidths: Record<string, number> | null = null
59
- let resizeRafId = 0
60
- let latestResizeClientX = 0
61
- let resizeMoved = false
62
-
63
- function cacheColumnElements(table: HTMLTableElement): {
64
- colEls: Map<string, HTMLTableColElement>
65
- thEls: Map<string, HTMLTableCellElement>
66
- } {
67
- const colEls = new Map<string, HTMLTableColElement>()
68
- const thEls = new Map<string, HTMLTableCellElement>()
69
- for (const col of table.querySelectorAll<HTMLTableColElement>('colgroup col[data-col-key]')) {
70
- const key = col.dataset.colKey
71
- if (key) colEls.set(key, col)
72
- }
73
- for (const th of table.querySelectorAll<HTMLTableCellElement>('thead th[data-col-key]')) {
74
- const key = th.dataset.colKey
75
- if (key) thEls.set(key, th)
76
- }
77
- return { colEls, thEls }
78
- }
79
-
80
- /** 会话开始:一次性写满所有列宽到 DOM */
81
- function paintAllColumnWidths(table: HTMLTableElement, widths: Record<string, number>, cache: {
82
- colEls: Map<string, HTMLTableColElement>
83
- thEls: Map<string, HTMLTableCellElement>
84
- }): number {
85
- let sum = options.measurePrefixColumnWidth()
86
- for (const column of read(options.displayColumns)) {
87
- const width = widths[column.key] ?? parseColumnWidth(column.width ?? column.minWidth)
88
- const col = cache.colEls.get(column.key)
89
- if (col) col.style.width = `${width}px`
90
- const th = cache.thEls.get(column.key)
91
- if (th) th.style.width = `${width}px`
92
- sum += width
93
- }
94
- table.style.width = `${sum}px`
95
- const minWidth = read(options.tableMinWidth)
96
- if (minWidth) table.style.minWidth = minWidth
97
- return sum
98
- }
99
-
100
- /** 确保 colgroup 元素已缓存;fixed 布局首帧可能尚未挂上,失败则返回 false */
101
- function ensureSessionDomCache(): boolean {
102
- if (!session || !tableRef.value || !activeDragWidths) return false
103
- if (session.colEls.size > 0) return true
104
- const cache = cacheColumnElements(tableRef.value)
105
- if (cache.colEls.size === 0) return false
106
- session.colEls = cache.colEls
107
- session.thEls = cache.thEls
108
- session.baseTableWidth = paintAllColumnWidths(tableRef.value, activeDragWidths, cache)
109
- return true
110
- }
111
-
112
- /** RAF 热路径:只改变化列 + 总宽;缓存未就绪时先全量写一次 */
113
- function paintChangedColumnWidth(width: number): void {
114
- if (!session || !tableRef.value) return
115
- if (!ensureSessionDomCache()) return
116
- const { key, colEls, thEls, baseTableWidth, startWidth } = session
117
- const col = colEls.get(key)
118
- if (col) col.style.width = `${width}px`
119
- const th = thEls.get(key)
120
- if (th) th.style.width = `${width}px`
121
- tableRef.value.style.width = `${baseTableWidth - startWidth + width}px`
122
- }
123
-
124
- function beginResizeSession(): void {
125
- if (!session || isColumnResizing.value || !tableRef.value) return
126
- isColumnResizing.value = true
127
- activeDragWidths = { ...session.domSnapshot }
128
- resizePaintWidths.value = { ...activeDragWidths }
129
- // colgroup 依赖 fixed 布局重渲;先同步尝试,再 nextTick 兜底(避免 RAF 抢跑打空)
130
- if (!ensureSessionDomCache()) {
131
- void nextTick(() => {
132
- ensureSessionDomCache()
133
- })
134
- }
135
- }
136
-
137
- function onResizeMove(event: MouseEvent): void {
138
- if (!session) return
139
- latestResizeClientX = event.clientX
140
- if (!resizeMoved && Math.abs(latestResizeClientX - session.startX) < 1) return
141
- if (!resizeMoved) {
142
- resizeMoved = true
143
- beginResizeSession()
144
- }
145
- if (resizeRafId !== 0) return
146
- resizeRafId = requestAnimationFrame(() => {
147
- resizeRafId = 0
148
- if (!session || !activeDragWidths) return
149
- const nextWidth = clampColumnWidth(
150
- session.startWidth + latestResizeClientX - session.startX,
151
- read(options.minColumnWidth),
152
- read(options.maxColumnWidth),
153
- )
154
- if (nextWidth === session.currentWidth) return
155
- session.currentWidth = nextWidth
156
- activeDragWidths[session.key] = nextWidth
157
- paintChangedColumnWidth(nextWidth)
158
- })
159
- }
160
-
161
- function stopResize(): void {
162
- if (session && resizeMoved) {
163
- const finalWidth = clampColumnWidth(
164
- session.startWidth + latestResizeClientX - session.startX,
165
- read(options.minColumnWidth),
166
- read(options.maxColumnWidth),
167
- )
168
- if (finalWidth !== session.startWidth) {
169
- const merged = { ...session.domSnapshot, [session.key]: finalWidth }
170
- options.resolvedColumnWidths.set(merged)
171
- options.onColumnResize(session.key, finalWidth)
172
- }
173
- }
174
- if (tableRef.value) {
175
- tableRef.value.style.width = ''
176
- tableRef.value.style.minWidth = ''
177
- for (const th of tableRef.value.querySelectorAll<HTMLTableCellElement>('thead th[data-col-key]')) {
178
- th.style.width = ''
179
- }
180
- }
181
- isColumnResizing.value = false
182
- resizePaintWidths.value = null
183
- activeDragWidths = null
184
- session = null
185
- resizeMoved = false
186
- if (resizeRafId !== 0) {
187
- cancelAnimationFrame(resizeRafId)
188
- resizeRafId = 0
189
- }
190
- document.body.style.cursor = ''
191
- document.body.style.userSelect = ''
192
- document.removeEventListener('mousemove', onResizeMove)
193
- document.removeEventListener('mouseup', stopResize, { capture: true })
194
- }
195
-
196
- function onResizeStart(key: string, event: MouseEvent): void {
197
- if (!read(options.resizable)) return
198
-
199
- const thEl = (event.currentTarget as HTMLElement).closest('th') as HTMLTableCellElement | null
200
- if (!thEl) return
201
- const tableEl = thEl.closest('table') as HTMLTableElement | null
202
- if (!tableEl) return
203
-
204
- const dataThs = Array.from(
205
- tableEl.querySelectorAll<HTMLTableCellElement>('thead th[data-col-key]'),
206
- )
207
- const domSnapshot: Record<string, number> = {}
208
- for (const th of dataThs) {
209
- domSnapshot[th.dataset.colKey!] = th.offsetWidth
210
- }
211
-
212
- const startWidth = domSnapshot[key] ?? thEl.offsetWidth
213
- latestResizeClientX = event.clientX
214
- resizeMoved = false
215
- session = {
216
- key,
217
- startX: event.clientX,
218
- startWidth,
219
- currentWidth: startWidth,
220
- domSnapshot,
221
- baseTableWidth: 0,
222
- colEls: new Map(),
223
- thEls: new Map(),
224
- }
225
- document.body.style.cursor = 'col-resize'
226
- document.body.style.userSelect = 'none'
227
- document.addEventListener('mousemove', onResizeMove)
228
- document.addEventListener('mouseup', stopResize, { capture: true })
229
- }
230
-
231
- onUnmounted(() => {
232
- stopResize()
233
- })
234
-
235
- return {
236
- tableRef,
237
- isColumnResizing,
238
- resizePaintWidths,
239
- onResizeStart,
240
- stopResize,
241
- }
242
- }
243
-
244
- export type RsTableColumnResizeApi = ReturnType<typeof useRsTableColumnResize>