niuma-ui 2.0.4 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (291) hide show
  1. package/CHANGELOG.md +67 -0
  2. package/NOTICE +0 -1
  3. package/README.md +3 -3
  4. package/README.zh-CN.md +3 -3
  5. package/dist/components/_shared/index.d.ts +2 -2
  6. package/dist/components/_shared/src/overlay-utils.d.ts +44 -1
  7. package/dist/components/_shared/src/overlay-utils.js +87 -2
  8. package/dist/components/alert/index.d.ts +1 -0
  9. package/dist/components/alert/src/RsAlert.css +120 -65
  10. package/dist/components/alert/src/RsAlert.d.ts +24 -5
  11. package/dist/components/alert/src/RsAlert.impl.js +108 -36
  12. package/dist/components/alert/src/RsAlert.js +1 -1
  13. package/dist/components/alert/src/alert-utils.d.ts +37 -0
  14. package/dist/components/alert/src/alert-utils.js +71 -0
  15. package/dist/components/auto-complete/src/RsAutoComplete.d.ts +1 -1
  16. package/dist/components/button/src/RsButton.css +75 -72
  17. package/dist/components/button/src/RsButton.d.ts +1 -4
  18. package/dist/components/button/src/RsButton.impl.js +3 -7
  19. package/dist/components/button/src/RsButton.js +1 -1
  20. package/dist/components/card/src/RsCard.d.ts +1 -1
  21. package/dist/components/code-block/index.d.ts +1 -0
  22. package/dist/components/code-block/src/RsCodeBlock.css +93 -52
  23. package/dist/components/code-block/src/RsCodeBlock.d.ts +36 -9
  24. package/dist/components/code-block/src/RsCodeBlock.impl.js +203 -84
  25. package/dist/components/code-block/src/RsCodeBlock.js +1 -1
  26. package/dist/components/code-block/src/code-block-highlight.d.ts +4 -0
  27. package/dist/components/code-block/src/code-block-highlight.js +34 -0
  28. package/dist/components/code-block/src/code-block-utils.d.ts +23 -0
  29. package/dist/components/code-block/src/code-block-utils.js +71 -0
  30. package/dist/components/code-editor/index.d.ts +1 -1
  31. package/dist/components/code-editor/src/RsCodeEditor.css +118 -92
  32. package/dist/components/code-editor/src/RsCodeEditor.d.ts +14 -3
  33. package/dist/components/code-editor/src/RsCodeEditor.impl.js +261 -94
  34. package/dist/components/code-editor/src/RsCodeEditor.js +1 -1
  35. package/dist/components/code-editor/src/code-editor-utils.d.ts +15 -0
  36. package/dist/components/code-editor/src/code-editor-utils.js +36 -1
  37. package/dist/components/code-editor/src/code-mirror-completion.d.ts +1 -1
  38. package/dist/components/code-editor/src/code-mirror-completion.js +8 -5
  39. package/dist/components/code-editor/src/code-mirror-diagnostics.d.ts +2 -3
  40. package/dist/components/code-editor/src/code-mirror-diagnostics.js +3 -4
  41. package/dist/components/code-editor/src/code-mirror-ghost.d.ts +1 -1
  42. package/dist/components/code-editor/src/code-mirror-ghost.js +12 -3
  43. package/dist/components/code-editor/src/code-mirror-inline-edit.js +8 -3
  44. package/dist/components/code-editor/src/code-mirror-intel.d.ts +2 -2
  45. package/dist/components/code-editor/src/code-mirror-intel.js +50 -39
  46. package/dist/components/code-editor/src/code-mirror-lang.js +4 -0
  47. package/dist/components/code-editor/src/code-mirror-session.d.ts +13 -0
  48. package/dist/components/code-editor/src/code-mirror-session.js +30 -0
  49. package/dist/components/config-provider/src/RsConfigProvider.css +1 -1
  50. package/dist/components/config-provider/src/RsConfigProvider.d.ts +2 -2
  51. package/dist/components/config-provider/src/RsConfigProvider.impl.js +7 -16
  52. package/dist/components/config-provider/src/RsConfigProvider.js +1 -1
  53. package/dist/components/context-menu/index.d.ts +1 -1
  54. package/dist/components/context-menu/src/RsContextMenu.css +115 -89
  55. package/dist/components/context-menu/src/RsContextMenu.d.ts +32 -11
  56. package/dist/components/context-menu/src/RsContextMenu.impl.js +795 -48
  57. package/dist/components/context-menu/src/RsContextMenuItems.d.ts +25 -1
  58. package/dist/components/context-menu/src/RsContextMenuItems.impl.js +110 -61
  59. package/dist/components/context-menu/src/context-menu-utils.d.ts +89 -3
  60. package/dist/components/context-menu/src/context-menu-utils.js +168 -3
  61. package/dist/components/date-picker/src/RsDatePicker.d.ts +2 -2
  62. package/dist/components/date-picker/src/RsDateTimePicker.d.ts +2 -2
  63. package/dist/components/descriptions/index.d.ts +1 -1
  64. package/dist/components/descriptions/src/RsDescriptions.css +38 -11
  65. package/dist/components/descriptions/src/RsDescriptions.d.ts +20 -4
  66. package/dist/components/descriptions/src/RsDescriptions.impl.js +89 -19
  67. package/dist/components/descriptions/src/RsDescriptionsItem.impl.js +13 -6
  68. package/dist/components/descriptions/src/descriptions-utils.d.ts +19 -0
  69. package/dist/components/descriptions/src/descriptions-utils.js +39 -1
  70. package/dist/components/dialog/index.d.ts +1 -1
  71. package/dist/components/dialog/src/RsConfirmDialog.css +47 -21
  72. package/dist/components/dialog/src/RsConfirmDialog.d.ts +19 -7
  73. package/dist/components/dialog/src/RsConfirmDialog.impl.js +349 -119
  74. package/dist/components/dialog/src/RsConfirmDialog.js +2 -1
  75. package/dist/components/dialog/src/RsDialog.css +102 -109
  76. package/dist/components/dialog/src/RsDialog.d.ts +34 -24
  77. package/dist/components/dialog/src/RsDialog.impl.js +410 -177
  78. package/dist/components/dialog/src/RsDialog.js +2 -1
  79. package/dist/components/dialog/src/dialog-utils.d.ts +40 -1
  80. package/dist/components/dialog/src/dialog-utils.js +152 -1
  81. package/dist/components/dialog/src/dialog-window.js +29 -8
  82. package/dist/components/drawer/index.d.ts +1 -1
  83. package/dist/components/drawer/src/RsDrawer.css +61 -29
  84. package/dist/components/drawer/src/RsDrawer.d.ts +37 -21
  85. package/dist/components/drawer/src/RsDrawer.impl.js +441 -223
  86. package/dist/components/drawer/src/drawer-utils.d.ts +35 -0
  87. package/dist/components/drawer/src/drawer-utils.js +131 -1
  88. package/dist/components/dropdown/index.d.ts +1 -1
  89. package/dist/components/dropdown/src/RsDropdown.css +140 -61
  90. package/dist/components/dropdown/src/RsDropdown.d.ts +39 -6
  91. package/dist/components/dropdown/src/RsDropdown.impl.js +693 -63
  92. package/dist/components/dropdown/src/RsDropdownItemView.impl.js +17 -7
  93. package/dist/components/dropdown/src/RsDropdownItems.d.ts +32 -3
  94. package/dist/components/dropdown/src/RsDropdownItems.impl.js +171 -59
  95. package/dist/components/dropdown/src/dropdown-utils.d.ts +50 -0
  96. package/dist/components/dropdown/src/dropdown-utils.js +103 -3
  97. package/dist/components/empty/index.d.ts +1 -0
  98. package/dist/components/empty/src/RsEmpty.css +105 -23
  99. package/dist/components/empty/src/RsEmpty.d.ts +27 -4
  100. package/dist/components/empty/src/RsEmpty.impl.js +154 -11
  101. package/dist/components/empty/src/RsEmpty.js +2 -1
  102. package/dist/components/empty/src/empty-utils.d.ts +28 -0
  103. package/dist/components/empty/src/empty-utils.js +55 -0
  104. package/dist/components/form/src/RsForm.d.ts +1 -1
  105. package/dist/components/input-number/src/RsInputNumber.d.ts +1 -1
  106. package/dist/components/label/src/RsLabel.d.ts +1 -1
  107. package/dist/components/loading/index.d.ts +1 -0
  108. package/dist/components/loading/src/RsLoading.css +13 -97
  109. package/dist/components/loading/src/RsLoading.d.ts +52 -2
  110. package/dist/components/loading/src/RsLoading.impl.js +216 -33
  111. package/dist/components/loading/src/RsLoading.js +2 -1
  112. package/dist/components/loading/src/loading-status.css +210 -0
  113. package/dist/components/loading/src/loading-status.d.ts +34 -0
  114. package/dist/components/loading/src/loading-status.impl.js +84 -0
  115. package/dist/components/loading/src/loading-status.js +8 -0
  116. package/dist/components/loading/src/loading-utils.d.ts +51 -4
  117. package/dist/components/loading/src/loading-utils.js +122 -0
  118. package/dist/components/loading-bar/index.d.ts +1 -0
  119. package/dist/components/loading-bar/src/RsLoadingBar.css +72 -8
  120. package/dist/components/loading-bar/src/RsLoadingBar.d.ts +55 -11
  121. package/dist/components/loading-bar/src/RsLoadingBar.impl.js +298 -57
  122. package/dist/components/loading-bar/src/RsLoadingBar.js +1 -1
  123. package/dist/components/loading-bar/src/loading-bar-utils.d.ts +69 -0
  124. package/dist/components/loading-bar/src/loading-bar-utils.js +97 -0
  125. package/dist/components/log/src/RsLog.css +52 -144
  126. package/dist/components/log/src/RsLog.d.ts +12 -11
  127. package/dist/components/log/src/RsLog.impl.js +181 -148
  128. package/dist/components/log/src/RsLog.js +1 -1
  129. package/dist/components/log/src/RsLogRow.css +152 -0
  130. package/dist/components/log/src/RsLogRow.d.ts +35 -0
  131. package/dist/components/log/src/RsLogRow.impl.js +91 -0
  132. package/dist/components/log/src/RsLogRow.js +8 -0
  133. package/dist/components/log/src/log-utils.d.ts +8 -0
  134. package/dist/components/log/src/log-utils.js +71 -10
  135. package/dist/components/markdown/index.d.ts +1 -1
  136. package/dist/components/markdown/src/RsMarkdown.css +75 -32
  137. package/dist/components/markdown/src/RsMarkdown.d.ts +6 -2
  138. package/dist/components/markdown/src/RsMarkdown.impl.js +185 -17
  139. package/dist/components/markdown/src/markdown-utils.d.ts +26 -0
  140. package/dist/components/markdown/src/markdown-utils.js +114 -12
  141. package/dist/components/mentions/src/RsMentions.d.ts +2 -2
  142. package/dist/components/menu/index.d.ts +1 -1
  143. package/dist/components/menu/src/RsMenu.css +70 -29
  144. package/dist/components/menu/src/RsMenu.d.ts +58 -4
  145. package/dist/components/menu/src/RsMenu.impl.js +93 -46
  146. package/dist/components/menu/src/RsMenuItems.d.ts +22 -5
  147. package/dist/components/menu/src/RsMenuItems.impl.js +506 -154
  148. package/dist/components/menu/src/menu-utils.d.ts +56 -0
  149. package/dist/components/menu/src/menu-utils.js +139 -6
  150. package/dist/components/monaco-editor/index.d.ts +1 -1
  151. package/dist/components/monaco-editor/src/RsMonacoEditor.css +28 -16
  152. package/dist/components/monaco-editor/src/RsMonacoEditor.d.ts +39 -41
  153. package/dist/components/monaco-editor/src/RsMonacoEditor.impl.js +212 -133
  154. package/dist/components/monaco-editor/src/RsMonacoEditor.js +1 -1
  155. package/dist/components/monaco-editor/src/monaco-editor-utils.d.ts +126 -0
  156. package/dist/components/monaco-editor/src/monaco-editor-utils.js +302 -0
  157. package/dist/components/pagination/index.d.ts +2 -2
  158. package/dist/components/pagination/src/RsPagination.css +93 -46
  159. package/dist/components/pagination/src/RsPagination.d.ts +68 -8
  160. package/dist/components/pagination/src/RsPagination.impl.js +229 -86
  161. package/dist/components/pagination/src/RsPagination.js +1 -1
  162. package/dist/components/pagination/src/pagination-utils.d.ts +59 -0
  163. package/dist/components/pagination/src/pagination-utils.js +105 -1
  164. package/dist/components/popover/index.d.ts +1 -0
  165. package/dist/components/popover/src/RsPopover.css +124 -14
  166. package/dist/components/popover/src/RsPopover.d.ts +38 -7
  167. package/dist/components/popover/src/RsPopover.impl.js +546 -35
  168. package/dist/components/popover/src/RsPopover.js +2 -1
  169. package/dist/components/popover/src/popover-utils.d.ts +24 -2
  170. package/dist/components/popover/src/popover-utils.js +55 -0
  171. package/dist/components/sidebar/index.d.ts +1 -0
  172. package/dist/components/sidebar/src/RsSidebar.css +91 -33
  173. package/dist/components/sidebar/src/RsSidebar.d.ts +17 -9
  174. package/dist/components/sidebar/src/RsSidebar.impl.js +124 -22
  175. package/dist/components/sidebar/src/RsSidebar.js +1 -1
  176. package/dist/components/sidebar/src/RsSidebarGroup.css +23 -6
  177. package/dist/components/sidebar/src/RsSidebarGroup.d.ts +6 -2
  178. package/dist/components/sidebar/src/RsSidebarGroup.impl.js +17 -4
  179. package/dist/components/sidebar/src/RsSidebarGroup.js +1 -1
  180. package/dist/components/sidebar/src/RsSidebarItem.css +50 -20
  181. package/dist/components/sidebar/src/RsSidebarItem.d.ts +21 -3
  182. package/dist/components/sidebar/src/RsSidebarItem.impl.js +71 -20
  183. package/dist/components/sidebar/src/RsSidebarItem.js +1 -1
  184. package/dist/components/sidebar/src/sidebar-utils.d.ts +47 -0
  185. package/dist/components/sidebar/src/sidebar-utils.js +72 -0
  186. package/dist/components/split-pane/index.d.ts +2 -2
  187. package/dist/components/split-pane/src/RsSplitPane.css +41 -30
  188. package/dist/components/split-pane/src/RsSplitPane.d.ts +6 -2
  189. package/dist/components/split-pane/src/RsSplitPane.impl.js +153 -45
  190. package/dist/components/split-pane/src/split-pane-utils.d.ts +23 -0
  191. package/dist/components/split-pane/src/split-pane-utils.js +18 -1
  192. package/dist/components/stat-card/index.d.ts +1 -0
  193. package/dist/components/stat-card/src/RsStatCard.css +129 -25
  194. package/dist/components/stat-card/src/RsStatCard.d.ts +40 -4
  195. package/dist/components/stat-card/src/RsStatCard.impl.js +106 -12
  196. package/dist/components/stat-card/src/RsStatCard.js +1 -1
  197. package/dist/components/stat-card/src/stat-card-utils.d.ts +39 -0
  198. package/dist/components/stat-card/src/stat-card-utils.js +113 -0
  199. package/dist/components/steps/index.d.ts +1 -1
  200. package/dist/components/steps/src/RsSteps.css +158 -37
  201. package/dist/components/steps/src/RsSteps.d.ts +69 -5
  202. package/dist/components/steps/src/RsSteps.impl.js +168 -28
  203. package/dist/components/steps/src/RsSteps.js +1 -1
  204. package/dist/components/steps/src/steps-utils.d.ts +51 -1
  205. package/dist/components/steps/src/steps-utils.js +67 -1
  206. package/dist/components/table/src/RsTable.impl.js +4 -2
  207. package/dist/components/table/src/composables/useRsTableContextMenu.d.ts +16 -0
  208. package/dist/components/table/src/composables/useRsTableContextMenu.js +1 -1
  209. package/dist/components/table/src/composables/useRsTableEngine.js +6 -2
  210. package/dist/components/table/src/composables/useRsTableScrollLayout.js +2 -0
  211. package/dist/components/table/src/composables/useRsTableShell.d.ts +16 -0
  212. package/dist/components/table/src/rs-table-props.d.ts +1 -1
  213. package/dist/components/table/src/rs-table-props.js +0 -1
  214. package/dist/components/table/src/table-body/RsTableBody.impl.js +1 -0
  215. package/dist/components/table/src/table-body/RsTableCell.impl.js +1 -1
  216. package/dist/components/table/src/table-body/RsTableCellEditor.impl.js +10 -2
  217. package/dist/components/table/src/table-body/RsTableColGroup.impl.js +1 -0
  218. package/dist/components/table/src/table-footer/RsTableSummaryRow.impl.js +1 -0
  219. package/dist/components/table/src/table-header/RsTableHeader.impl.js +1 -0
  220. package/dist/components/table/src/utils/table-utils.d.ts +10 -6
  221. package/dist/components/table/src/utils/table-utils.js +27 -25
  222. package/dist/components/table/style/rs-table.css +86 -28
  223. package/dist/components/tabs/index.d.ts +2 -2
  224. package/dist/components/tabs/src/RsTabs.css +225 -101
  225. package/dist/components/tabs/src/RsTabs.d.ts +37 -8
  226. package/dist/components/tabs/src/RsTabs.impl.js +400 -270
  227. package/dist/components/tabs/src/tabs-utils.d.ts +41 -2
  228. package/dist/components/tabs/src/tabs-utils.js +55 -1
  229. package/dist/components/terminal/index.d.ts +1 -1
  230. package/dist/components/terminal/src/RsTerminal.css +60 -37
  231. package/dist/components/terminal/src/RsTerminal.d.ts +36 -4
  232. package/dist/components/terminal/src/RsTerminal.impl.js +288 -68
  233. package/dist/components/terminal/src/RsTerminal.js +1 -1
  234. package/dist/components/terminal/src/terminal-utils.d.ts +42 -4
  235. package/dist/components/terminal/src/terminal-utils.js +113 -10
  236. package/dist/components/textarea/src/RsTextarea.d.ts +1 -1
  237. package/dist/components/time-picker/src/RsTimePicker.d.ts +2 -2
  238. package/dist/components/toaster/src/RsToaster.css +156 -203
  239. package/dist/components/toaster/src/RsToaster.d.ts +32 -2
  240. package/dist/components/toaster/src/RsToaster.impl.js +309 -34
  241. package/dist/components/toaster/src/toast-store.d.ts +95 -0
  242. package/dist/components/toaster/src/toast-store.js +177 -0
  243. package/dist/components/toaster/src/toast-utils.d.ts +60 -0
  244. package/dist/components/toaster/src/toast-utils.js +86 -0
  245. package/dist/components/toolbar/index.d.ts +1 -1
  246. package/dist/components/toolbar/src/RsToolbar.css +206 -32
  247. package/dist/components/toolbar/src/RsToolbar.d.ts +41 -16
  248. package/dist/components/toolbar/src/RsToolbar.impl.js +146 -18
  249. package/dist/components/toolbar/src/RsToolbar.js +2 -1
  250. package/dist/components/toolbar/src/toolbar-utils.d.ts +20 -0
  251. package/dist/components/toolbar/src/toolbar-utils.js +105 -0
  252. package/dist/components/tooltip/index.d.ts +1 -0
  253. package/dist/components/tooltip/src/RsTooltip.css +104 -26
  254. package/dist/components/tooltip/src/RsTooltip.d.ts +38 -16
  255. package/dist/components/tooltip/src/RsTooltip.impl.js +420 -51
  256. package/dist/components/tooltip/src/RsTooltip.js +2 -1
  257. package/dist/components/tooltip/src/RsTooltipProvider.d.ts +4 -4
  258. package/dist/components/tooltip/src/RsTooltipProvider.impl.js +51 -14
  259. package/dist/components/tooltip/src/tooltip-utils.d.ts +30 -0
  260. package/dist/components/tooltip/src/tooltip-utils.js +23 -0
  261. package/dist/components/tree/index.d.ts +2 -2
  262. package/dist/components/tree/src/RsTree.css +84 -75
  263. package/dist/components/tree/src/RsTree.d.ts +20 -20
  264. package/dist/components/tree/src/RsTree.impl.js +292 -66
  265. package/dist/components/tree/src/RsTree.js +1 -1
  266. package/dist/components/tree/src/tree-utils.d.ts +22 -0
  267. package/dist/components/tree/src/tree-utils.js +18 -4
  268. package/dist/components/tree-select/src/RsTreeSelect.d.ts +1 -1
  269. package/dist/components/virtual-list/index.d.ts +1 -1
  270. package/dist/components/virtual-list/src/RsVirtualList.css +64 -9
  271. package/dist/components/virtual-list/src/RsVirtualList.d.ts +31 -5
  272. package/dist/components/virtual-list/src/RsVirtualList.impl.js +425 -76
  273. package/dist/components/virtual-list/src/RsVirtualList.js +1 -1
  274. package/dist/components/virtual-list/src/virtual-list-utils.d.ts +64 -1
  275. package/dist/components/virtual-list/src/virtual-list-utils.js +215 -1
  276. package/dist/composables/useRsLoadingBar.d.ts +2 -5
  277. package/dist/composables/useRsLoadingBar.js +21 -5
  278. package/dist/composables/useRsTabsNav.d.ts +3 -1
  279. package/dist/composables/useRsTabsNav.js +96 -28
  280. package/dist/composables/useRsToast.d.ts +11 -13
  281. package/dist/composables/useRsToast.js +66 -17
  282. package/dist/index.d.ts +30 -21
  283. package/dist/index.js +14 -0
  284. package/dist/locale/apply.js +6 -1
  285. package/dist/locale/messages.js +128 -2
  286. package/dist/styles.css +465 -808
  287. package/dist/theme/brand.example.css +3 -2
  288. package/dist/vite-plugins/niuma-ui-host.js +1 -1
  289. package/package.json +2 -5
  290. package/dist/components/_shared/src/reka.d.ts +0 -2
  291. package/dist/components/_shared/src/reka.js +0 -2
@@ -11,7 +11,7 @@ var _hoisted_1 = [
11
11
  ];
12
12
  var _hoisted_2 = {
13
13
  key: 2,
14
- class: "rs-table-cell-editor rs-table-cell-editor--custom"
14
+ class: "rs-table-cell-editor rs-table-cell-editor--inline rs-table-cell-editor--custom"
15
15
  };
16
16
  var RsTableCell_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
17
17
  __name: "RsTableCell",
@@ -5,7 +5,7 @@ import { unwrapSelectEntry } from "../../../select/src/select-utils.js";
5
5
  import RsSelect_default from "../../../select/src/RsSelect.js";
6
6
  import RsDatePicker_default from "../../../date-picker/src/RsDatePicker.js";
7
7
  import { applyFocusMode, isNullDraft, nullToEditText, resolveCellEditorInputType, usesOverlayEditor } from "../utils/table-edit-utils.js";
8
- import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, mergeModels, nextTick, normalizeClass, onMounted, openBlock, ref, toDisplayString, unref, useId, useModel, vModelText, watch, withDirectives, withModifiers } from "vue";
8
+ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, mergeModels, nextTick, normalizeClass, onBeforeUnmount, onMounted, openBlock, ref, toDisplayString, unref, useId, useModel, vModelText, watch, withDirectives, withModifiers } from "vue";
9
9
  //#region src/components/table/src/table-body/RsTableCellEditor.vue?vue&type=script&setup=true&lang.ts
10
10
  var _hoisted_1 = [
11
11
  "title",
@@ -30,6 +30,7 @@ var _hoisted_5 = [
30
30
  "disabled"
31
31
  ];
32
32
  var RsTableCellEditor_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
33
+ name: "RsTableCellEditor",
33
34
  __name: "RsTableCellEditor",
34
35
  props: /*@__PURE__*/ mergeModels({
35
36
  valueType: { default: "text" },
@@ -64,6 +65,7 @@ var RsTableCellEditor_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
64
65
  ], ["update:modelValue"]),
65
66
  setup(__props, { emit: __emit }) {
66
67
  const { t } = useRsI18n();
68
+ let blurCommitTimer = 0;
67
69
  const props = __props;
68
70
  const model = useModel(__props, "modelValue");
69
71
  const emit = __emit;
@@ -161,13 +163,19 @@ var RsTableCellEditor_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
161
163
  }
162
164
  function onBlur() {
163
165
  if (isDate.value && dateOverlayOpen.value) {
164
- window.setTimeout(() => {
166
+ window.clearTimeout(blurCommitTimer);
167
+ blurCommitTimer = window.setTimeout(() => {
168
+ blurCommitTimer = 0;
165
169
  if (shouldCommitOnBlur()) emit("commit");
166
170
  }, 0);
167
171
  return;
168
172
  }
169
173
  if (shouldCommitOnBlur()) emit("commit");
170
174
  }
175
+ onBeforeUnmount(() => {
176
+ window.clearTimeout(blurCommitTimer);
177
+ blurCommitTimer = 0;
178
+ });
171
179
  function onKeydown(event) {
172
180
  if (event.isComposing || composing.value) {
173
181
  if (event.key === "Process") return;
@@ -4,6 +4,7 @@ import { Fragment, createCommentVNode, createElementBlock, defineComponent, norm
4
4
  var _hoisted_1 = { key: 0 };
5
5
  var _hoisted_2 = ["data-col-key"];
6
6
  var RsTableColGroup_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
7
+ name: "RsTableColGroup",
7
8
  __name: "RsTableColGroup",
8
9
  setup(__props) {
9
10
  const view = useRsTableView();
@@ -4,6 +4,7 @@ var _hoisted_1 = { class: "rs-table__summary-row" };
4
4
  var _hoisted_2 = ["colspan"];
5
5
  var _hoisted_3 = ["data-col-key"];
6
6
  var RsTableSummaryRow_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
7
+ name: "RsTableSummaryRow",
7
8
  __name: "RsTableSummaryRow",
8
9
  props: {
9
10
  columns: {},
@@ -36,6 +36,7 @@ var _hoisted_10 = {
36
36
  };
37
37
  var _hoisted_11 = ["onMousedown"];
38
38
  var RsTableHeader_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
39
+ name: "RsTableHeader",
39
40
  __name: "RsTableHeader",
40
41
  setup(__props) {
41
42
  const view = useRsTableView();
@@ -233,16 +233,16 @@ export type RsTableCellTooltipMode = 'overflow' | 'always';
233
233
  export declare function columnUsesSharedTooltip<T extends RsTableRowData>(column: RsTableColumn<T>): boolean;
234
234
  export declare function resolveCellTooltipMode<T extends RsTableRowData>(column: RsTableColumn<T>): RsTableCellTooltipMode | null;
235
235
  export declare function resolveCellTooltipText<T extends RsTableRowData>(column: RsTableColumn<T>, row: T, index: number): string;
236
- export declare function compareTableValues(a: unknown, b: unknown): number;
236
+ export declare function compareTableValues(a: unknown, b: unknown, locale?: string): number;
237
237
  export declare function toggleSortState(current: RsTableSortState | null, key: string): RsTableSortState | null;
238
238
  export declare function toggleMultiSortState(sorts: readonly RsTableSortState[], key: string, maxSort?: number): RsTableSortState[];
239
239
  export declare function getSortOrderForKey(sorts: readonly RsTableSortState[], key: string): RsTableSortOrder;
240
240
  export declare function getSortPriorityForKey(sorts: readonly RsTableSortState[], key: string): number;
241
- export declare function compareTableRowsBySort<T extends RsTableRowData>(left: T, right: T, column: RsTableColumn<T>, order: Exclude<RsTableSortOrder, null>): number;
242
- export declare function sortTableRows<T extends RsTableRowData>(rows: readonly T[], columns: readonly RsTableColumn<T>[], sort: RsTableSortState | null): T[];
243
- export declare function sortTableRowsMulti<T extends RsTableRowData>(rows: readonly T[], columns: readonly RsTableColumn<T>[], sorts: readonly RsTableSortState[]): T[];
244
- export declare function filterTableRows<T extends RsTableRowData>(rows: readonly T[], query: string, columns: readonly RsTableColumn<T>[], keys?: string[]): T[];
245
- export declare function filterTableRowsByColumnFilters<T extends RsTableRowData>(rows: readonly T[], columns: readonly RsTableColumn<T>[], filters: Record<string, string>): T[];
241
+ export declare function compareTableRowsBySort<T extends RsTableRowData>(left: T, right: T, column: RsTableColumn<T>, order: Exclude<RsTableSortOrder, null>, locale?: string): number;
242
+ export declare function sortTableRows<T extends RsTableRowData>(rows: readonly T[], columns: readonly RsTableColumn<T>[], sort: RsTableSortState | null, locale?: string): T[];
243
+ export declare function sortTableRowsMulti<T extends RsTableRowData>(rows: readonly T[], columns: readonly RsTableColumn<T>[], sorts: readonly RsTableSortState[], locale?: string): T[];
244
+ export declare function filterTableRows<T extends RsTableRowData>(rows: readonly T[], query: string, columns: readonly RsTableColumn<T>[], keys?: string[], locale?: string): T[];
245
+ export declare function filterTableRowsByColumnFilters<T extends RsTableRowData>(rows: readonly T[], columns: readonly RsTableColumn<T>[], filters: Record<string, string>, locale?: string): T[];
246
246
  export declare function isColumnFilterActive(filters: Record<string, string>, key: string): boolean;
247
247
  export declare function resolveGroupKey<T extends RsTableRowData>(row: T, groupBy: RsTableGroupBy<T>): string;
248
248
  export declare function groupTableRows<T extends RsTableRowData>(rows: readonly T[], groupBy: RsTableGroupBy<T>, labelFormatter?: (key: string) => string): RsTableRowEntry<T>[];
@@ -261,6 +261,7 @@ export declare function buildTableEntries<T extends RsTableRowData>(rows: readon
261
261
  groupBy?: RsTableGroupBy<T>;
262
262
  groupLabel?: (key: string) => string;
263
263
  remoteSort?: boolean;
264
+ locale?: string;
264
265
  }): RsTableRowEntry<T>[];
265
266
  export declare function injectExpandRows<T extends RsTableRowData>(entries: readonly RsTableRowEntry<T>[], expandedKeys: ReadonlySet<string>, rowKey?: RsTableRowKey<T>, rowExpandable?: (row: T, index: number) => boolean): RsTableRowEntry<T>[];
266
267
  export declare function toggleExpandedRowKeys(keys: readonly string[], key: string): string[];
@@ -309,6 +310,7 @@ export declare function filterTableTreeRows<T extends RsTableRowData>(rows: read
309
310
  childrenField?: string;
310
311
  filterKeys?: string[];
311
312
  columnFilters?: Record<string, string>;
313
+ locale?: string;
312
314
  }): T[];
313
315
  /** 树排序:仅对同级节点排序,递归处理子树 */
314
316
  export declare function sortTableTreeRows<T extends RsTableRowData>(rows: readonly T[], columns: readonly RsTableColumn<T>[], options: {
@@ -316,6 +318,7 @@ export declare function sortTableTreeRows<T extends RsTableRowData>(rows: readon
316
318
  sort?: RsTableSortState | null;
317
319
  sorts?: readonly RsTableSortState[];
318
320
  multiSort?: boolean;
321
+ locale?: string;
319
322
  }): T[];
320
323
  /**
321
324
  * 按展开 key 展平可见树行为表格 row entries(不含 detail expand 行)。
@@ -342,6 +345,7 @@ export declare function buildTableTreeEntries<T extends RsTableRowData>(rows: re
342
345
  filterKeys?: string[];
343
346
  columnFilters?: Record<string, string>;
344
347
  remoteSort?: boolean;
348
+ locale?: string;
345
349
  }): RsTableRowEntry<T>[];
346
350
  /** 按表格 size 解析树缩进默认值 */
347
351
  export declare function resolveTableTreeIndent(size?: RsTableSize, custom?: number): number;
@@ -53,12 +53,12 @@ function resolveCellTooltipText(column, row, index) {
53
53
  }
54
54
  return String(value);
55
55
  }
56
- function compareTableValues(a, b) {
56
+ function compareTableValues(a, b, locale) {
57
57
  if (a === b) return 0;
58
58
  if (a === void 0 || a === null) return -1;
59
59
  if (b === void 0 || b === null) return 1;
60
60
  if (typeof a === "number" && typeof b === "number") return a - b;
61
- return formatComparableValue(a).localeCompare(formatComparableValue(b));
61
+ return formatComparableValue(a).localeCompare(formatComparableValue(b), locale);
62
62
  }
63
63
  function toggleSortState(current, key) {
64
64
  if (current?.key !== key) return {
@@ -95,40 +95,40 @@ function getSortPriorityForKey(sorts, key) {
95
95
  const index = sorts.findIndex((item) => item.key === key);
96
96
  return index >= 0 ? index + 1 : 0;
97
97
  }
98
- function compareTableRowsBySort(left, right, column, order) {
98
+ function compareTableRowsBySort(left, right, column, order, locale) {
99
99
  const direction = order === "asc" ? 1 : -1;
100
100
  if (column.sorter) return column.sorter(left, right) * direction;
101
- return compareTableValues(getCellValue(left, column), getCellValue(right, column)) * direction;
101
+ return compareTableValues(getCellValue(left, column), getCellValue(right, column), locale) * direction;
102
102
  }
103
- function sortTableRows(rows, columns, sort) {
103
+ function sortTableRows(rows, columns, sort, locale) {
104
104
  if (!sort) return rows;
105
105
  const column = columns.find((item) => item.key === sort.key);
106
106
  if (!column) return rows;
107
- return [...rows].sort((left, right) => compareTableRowsBySort(left, right, column, sort.order));
107
+ return [...rows].sort((left, right) => compareTableRowsBySort(left, right, column, sort.order, locale));
108
108
  }
109
- function sortTableRowsMulti(rows, columns, sorts) {
109
+ function sortTableRowsMulti(rows, columns, sorts, locale) {
110
110
  if (sorts.length === 0) return rows;
111
111
  return [...rows].sort((left, right) => {
112
112
  for (const sort of sorts) {
113
113
  const column = columns.find((item) => item.key === sort.key);
114
114
  if (!column) continue;
115
- const compare = compareTableRowsBySort(left, right, column, sort.order);
115
+ const compare = compareTableRowsBySort(left, right, column, sort.order, locale);
116
116
  if (compare !== 0) return compare;
117
117
  }
118
118
  return 0;
119
119
  });
120
120
  }
121
- function filterTableRows(rows, query, columns, keys) {
121
+ function filterTableRows(rows, query, columns, keys, locale) {
122
122
  const trimmed = query.trim();
123
123
  if (!trimmed) return rows;
124
124
  const searchKeys = keys ?? columns.map((column) => column.key);
125
- const lower = trimmed.toLowerCase();
125
+ const lower = trimmed.toLocaleLowerCase(locale);
126
126
  return rows.filter((row) => searchKeys.some((key) => {
127
127
  const column = columns.find((item) => item.key === key);
128
- return formatComparableValue(column ? getCellValue(row, column) : row[key]).toLowerCase().includes(lower);
128
+ return formatComparableValue(column ? getCellValue(row, column) : row[key]).toLocaleLowerCase(locale).includes(lower);
129
129
  }));
130
130
  }
131
- function filterTableRowsByColumnFilters(rows, columns, filters) {
131
+ function filterTableRowsByColumnFilters(rows, columns, filters, locale) {
132
132
  const active = Object.entries(filters).map(([key, query]) => [key, query.trim()]).filter(([, query]) => query.length > 0);
133
133
  if (!active.length) return rows;
134
134
  const columnMap = new Map(columns.map((column) => [column.key, column]));
@@ -137,8 +137,8 @@ function filterTableRowsByColumnFilters(rows, columns, filters) {
137
137
  if (!column) return true;
138
138
  const value = getCellValue(row, column);
139
139
  if (column.filter) return column.filter(value, row, query);
140
- const lower = query.toLowerCase();
141
- return formatComparableValue(value).toLowerCase().includes(lower);
140
+ const lower = query.toLocaleLowerCase(locale);
141
+ return formatComparableValue(value).toLocaleLowerCase(locale).includes(lower);
142
142
  }));
143
143
  }
144
144
  function isColumnFilterActive(filters, key) {
@@ -202,16 +202,16 @@ function reorderTableRows(rows, dragIndex, dropIndex, position) {
202
202
  function buildTableEntries(rows, columns, options = {}) {
203
203
  let processed = rows;
204
204
  const filterText = options.filterText ?? "";
205
- if (filterText.trim()) processed = filterTableRows(processed, filterText, columns, options.filterKeys);
205
+ if (filterText.trim()) processed = filterTableRows(processed, filterText, columns, options.filterKeys, options.locale);
206
206
  const columnFilters = options.columnFilters ?? {};
207
- if (Object.values(columnFilters).some((q) => q.trim())) processed = filterTableRowsByColumnFilters(processed, columns, columnFilters);
207
+ if (Object.values(columnFilters).some((q) => q.trim())) processed = filterTableRowsByColumnFilters(processed, columns, columnFilters, options.locale);
208
208
  if (!options.remoteSort) {
209
- if (options.multiSort && options.sorts?.length) processed = sortTableRowsMulti(processed, columns, options.sorts);
210
- else if (options.sort) processed = sortTableRows(processed, columns, options.sort);
209
+ if (options.multiSort && options.sorts?.length) processed = sortTableRowsMulti(processed, columns, options.sorts, options.locale);
210
+ else if (options.sort) processed = sortTableRows(processed, columns, options.sort, options.locale);
211
211
  }
212
212
  if (options.groupBy) {
213
213
  const groupBy = options.groupBy;
214
- processed = [...processed].sort((left, right) => compareTableValues(resolveGroupKey(left, groupBy), resolveGroupKey(right, groupBy)));
214
+ processed = [...processed].sort((left, right) => compareTableValues(resolveGroupKey(left, groupBy), resolveGroupKey(right, groupBy), options.locale));
215
215
  return groupTableRows(processed, groupBy, options.groupLabel);
216
216
  }
217
217
  return processed.map((row, rowIndex) => ({
@@ -363,8 +363,8 @@ function filterTableTreeRows(rows, query, columns, options = {}) {
363
363
  if (!trimmed && !hasColumnFilters) return rows;
364
364
  const matchesSelf = (row) => {
365
365
  let ok = true;
366
- if (trimmed) ok = filterTableRows([row], trimmed, columns, options.filterKeys).length > 0;
367
- if (ok && hasColumnFilters) ok = filterTableRowsByColumnFilters([row], columns, columnFilters).length > 0;
366
+ if (trimmed) ok = filterTableRows([row], trimmed, columns, options.filterKeys, options.locale).length > 0;
367
+ if (ok && hasColumnFilters) ok = filterTableRowsByColumnFilters([row], columns, columnFilters, options.locale).length > 0;
368
368
  return ok;
369
369
  };
370
370
  const walk = (items) => {
@@ -385,8 +385,8 @@ function filterTableTreeRows(rows, query, columns, options = {}) {
385
385
  function sortTableTreeRows(rows, columns, options) {
386
386
  const childrenField = options.childrenField ?? "children";
387
387
  let sorted;
388
- if (options.multiSort && options.sorts?.length) sorted = sortTableRowsMulti(rows, columns, options.sorts);
389
- else if (options.sort) sorted = sortTableRows(rows, columns, options.sort);
388
+ if (options.multiSort && options.sorts?.length) sorted = sortTableRowsMulti(rows, columns, options.sorts, options.locale);
389
+ else if (options.sort) sorted = sortTableRows(rows, columns, options.sort, options.locale);
390
390
  else sorted = rows;
391
391
  return sorted.map((row) => {
392
392
  const children = getTableTreeChildren(row, childrenField);
@@ -435,13 +435,15 @@ function buildTableTreeEntries(rows, columns, expandedKeys, options) {
435
435
  if (filterText.trim() || Object.values(columnFilters).some((q) => q.trim())) processed = filterTableTreeRows(processed, filterText, columns, {
436
436
  childrenField,
437
437
  filterKeys: options.filterKeys,
438
- columnFilters
438
+ columnFilters,
439
+ locale: options.locale
439
440
  });
440
441
  if (!options.remoteSort && (options.sort || options.multiSort && options.sorts?.length)) processed = sortTableTreeRows(processed, columns, {
441
442
  childrenField,
442
443
  sort: options.sort,
443
444
  sorts: options.sorts,
444
- multiSort: options.multiSort
445
+ multiSort: options.multiSort,
446
+ locale: options.locale
445
447
  });
446
448
  return flattenVisibleTableTreeEntries(processed, expandedKeys, {
447
449
  childrenField,
@@ -255,6 +255,9 @@
255
255
  .rs-table__th--drop-target {
256
256
  box-shadow: inset 2px 0 0 var(--rs-table-drop-indicator);
257
257
  }
258
+ :dir(rtl) .rs-table__th--drop-target {
259
+ box-shadow: inset -2px 0 0 var(--rs-table-drop-indicator);
260
+ }
258
261
  .rs-table__row--dragging > .rs-table__td {
259
262
  opacity: 0.42;
260
263
  }
@@ -278,7 +281,7 @@
278
281
  border: 1px solid var(--rs-border);
279
282
  border-radius: var(--rs-radius-xs);
280
283
  background: var(--rs-surface-elevated, var(--rs-surface));
281
- color: var(--rs-text);
284
+ color: var(--rs-text-primary);
282
285
  box-shadow: var(--rs-shadow-sm);
283
286
  font-size: var(--rs-font-size-xs);
284
287
  font-variant-numeric: tabular-nums;
@@ -307,6 +310,9 @@
307
310
  .rs-table__expand-btn--expanded {
308
311
  transform: rotate(90deg);
309
312
  }
313
+ :dir(rtl) .rs-table__expand-btn:not(.rs-table__expand-btn--expanded) {
314
+ transform: scaleX(-1);
315
+ }
310
316
  .rs-table__tree-cell {
311
317
  display: flex;
312
318
  align-items: center;
@@ -463,10 +469,14 @@
463
469
  .rs-table__row--selected .rs-table__cell--fixed:first-child {
464
470
  box-shadow: inset 3px 0 0 var(--rs-table-row-selected-accent, var(--rs-primary));
465
471
  }
472
+ :dir(rtl) .rs-table__row--selected .rs-table__td:first-child,
473
+ :dir(rtl) .rs-table__row--selected .rs-table__cell--fixed:first-child {
474
+ box-shadow: inset -3px 0 0 var(--rs-table-row-selected-accent, var(--rs-primary));
475
+ }
466
476
  .rs-table__row--selected .rs-table__td--gutter {
467
477
  background: color-mix(in srgb, var(--rs-table-row-selected) 90%, var(--rs-table-gutter-bg));
468
478
  color: var(--rs-table-row-selected-fg);
469
- border-right-color: var(--rs-table-gutter-border);
479
+ border-inline-end-color: var(--rs-table-gutter-border);
470
480
  }
471
481
  .rs-table__row:hover:not(.rs-table__row--disabled):not(.rs-table__row--selected):not(.rs-table__row--highlighted) {
472
482
  --rs-table-row-bg: var(--rs-table-row-hover);
@@ -482,10 +492,14 @@
482
492
  .rs-table__row--highlighted .rs-table__cell--fixed:first-child {
483
493
  box-shadow: inset 3px 0 0 var(--rs-table-row-highlight-accent);
484
494
  }
495
+ :dir(rtl) .rs-table__row--highlighted .rs-table__td:first-child,
496
+ :dir(rtl) .rs-table__row--highlighted .rs-table__cell--fixed:first-child {
497
+ box-shadow: inset -3px 0 0 var(--rs-table-row-highlight-accent);
498
+ }
485
499
  .rs-table__row--highlighted .rs-table__td--gutter {
486
500
  background: color-mix(in srgb, var(--rs-table-row-highlight) 90%, var(--rs-table-gutter-bg));
487
501
  color: var(--rs-table-row-highlight-fg, var(--rs-table-muted-fg));
488
- border-right-color: var(--rs-table-gutter-border);
502
+ border-inline-end-color: var(--rs-table-gutter-border);
489
503
  }
490
504
  .rs-table__row--highlighted:hover:not(.rs-table__row--disabled) {
491
505
  --rs-table-row-bg: var(--rs-table-row-highlight-hover);
@@ -494,7 +508,7 @@
494
508
  background: color-mix(in srgb, var(--rs-table-row-highlight-hover) 90%, var(--rs-table-gutter-bg));
495
509
  }
496
510
  .rs-table__row--dirty:not(.rs-table__row--selected):not(.rs-table__row--highlighted) {
497
- --rs-table-row-bg: color-mix(in srgb, var(--rs-warning, #f59e0b) 8%, var(--rs-table-row-bg, var(--rs-table-bg)));
511
+ --rs-table-row-bg: color-mix(in srgb, var(--rs-warning) 8%, var(--rs-table-row-bg, var(--rs-table-bg)));
498
512
  }
499
513
  .rs-table__td--editing {
500
514
  padding: 0;
@@ -653,7 +667,7 @@
653
667
  }
654
668
  .rs-table-edit-gutter__rollback:hover {
655
669
  background: var(--rs-surface-hover);
656
- color: var(--rs-text);
670
+ color: var(--rs-text-primary);
657
671
  }
658
672
  .rs-table__th--status,
659
673
  .rs-table__td--status {
@@ -686,7 +700,7 @@
686
700
  border-radius: var(--rs-radius-sm);
687
701
  border: 1px solid var(--rs-border);
688
702
  background: var(--rs-surface-elevated);
689
- color: var(--rs-text);
703
+ color: var(--rs-text-primary);
690
704
  font-size: var(--rs-font-size-xs);
691
705
  line-height: var(--rs-line-height-tight);
692
706
  box-shadow: var(--rs-shadow-sm);
@@ -744,7 +758,7 @@
744
758
  left: 50%;
745
759
  width: 0.3rem;
746
760
  height: 0.55rem;
747
- border: solid var(--rs-on-primary, #fff);
761
+ border: solid var(--rs-primary-foreground);
748
762
  border-width: 0 2px 2px 0;
749
763
  transform: translate(-50%, -50%) rotate(45deg);
750
764
  }
@@ -757,7 +771,7 @@
757
771
  height: 0.35rem;
758
772
  border: 0;
759
773
  border-radius: 999px;
760
- background: var(--rs-on-primary, #fff);
774
+ background: var(--rs-primary-foreground);
761
775
  transform: translate(-50%, -50%);
762
776
  }
763
777
  .rs-table__checkbox--indeterminate .rs-table__checkbox-box::after {
@@ -767,7 +781,7 @@
767
781
  left: 50%;
768
782
  width: 0.5rem;
769
783
  height: 2px;
770
- background: var(--rs-on-primary, #fff);
784
+ background: var(--rs-primary-foreground);
771
785
  border-radius: 1px;
772
786
  transform: translate(-50%, -50%);
773
787
  }
@@ -832,29 +846,41 @@
832
846
  touch-action: none;
833
847
  z-index: 2;
834
848
  }
835
- /* 默认与列 border 重合,不额外绘制;悬浮时高亮为可拖拽分隔线 */
849
+ /* 平时就画出列边,让人知道这里能拖;悬停改成主色 */
836
850
  .rs-table__resize-handle::after {
837
851
  content: '';
838
852
  position: absolute;
839
853
  top: 0;
840
854
  bottom: 0;
841
855
  left: 50%;
842
- width: 1px;
856
+ width: 2px;
843
857
  transform: translateX(-50%);
844
858
  border-radius: 0;
845
- background: transparent;
846
- opacity: 0;
847
- transition: opacity 0.12s ease, background 0.12s ease;
859
+ background: var(--rs-table-resize-handle);
860
+ opacity: 1;
861
+ transition: background 0.12s ease;
848
862
  }
849
863
  .rs-table__resize-handle:hover::after,
850
864
  .rs-table__resize-handle:active::after {
851
- opacity: 1;
852
865
  background: var(--rs-table-resize-handle-hover);
853
866
  }
854
- /* column-bordered:平时由单元格 border-right 承担分隔线,悬浮时由 handle 接管高亮 */
855
- .rs-table--column-bordered .rs-table__th:has(> .rs-table__resize-handle:hover),
856
- .rs-table--column-bordered .rs-table__th:has(> .rs-table__resize-handle:active) {
857
- border-right-color: transparent;
867
+ /* 已有列分隔线时不再另画 2px 拖拽线,避免表头粗线和表体细线错开。
868
+ 悬停只把这一条分隔线改成主色。最后一列没有分隔线,悬停才画出拖拽线。 */
869
+ .rs-table--column-bordered .rs-table__th:not(:last-child) > .rs-table__resize-handle::after,
870
+ .rs-table--column-bordered .rs-table__th:not(:last-child) > .rs-table__resize-handle:hover::after,
871
+ .rs-table--column-bordered .rs-table__th:not(:last-child) > .rs-table__resize-handle:active::after {
872
+ background: transparent;
873
+ }
874
+ .rs-table--column-bordered .rs-table__th:not(:last-child):has(> .rs-table__resize-handle:hover),
875
+ .rs-table--column-bordered .rs-table__th:not(:last-child):has(> .rs-table__resize-handle:active) {
876
+ border-inline-end-color: var(--rs-table-resize-handle-hover);
877
+ }
878
+ .rs-table--column-bordered .rs-table__th:last-child > .rs-table__resize-handle::after {
879
+ background: transparent;
880
+ }
881
+ .rs-table--column-bordered .rs-table__th:last-child > .rs-table__resize-handle:hover::after,
882
+ .rs-table--column-bordered .rs-table__th:last-child > .rs-table__resize-handle:active::after {
883
+ background: var(--rs-table-resize-handle-hover);
858
884
  }
859
885
  /* 滚动条交汇角与容器底色一致 */
860
886
  .rs-table.rs-native-scrollbar:has(.rs-table__head)::-webkit-scrollbar-corner {
@@ -879,13 +905,13 @@
879
905
  }
880
906
  .rs-table__cell-body--readonly {
881
907
  cursor: default;
882
- color: var(--rs-muted);
908
+ color: var(--rs-text-tertiary);
883
909
  }
884
910
  .rs-table__cell-body--dirty {
885
911
  color: var(--rs-primary);
886
912
  }
887
913
  .rs-table__cell-body--null {
888
- color: var(--rs-muted);
914
+ color: var(--rs-text-tertiary);
889
915
  font-style: italic;
890
916
  }
891
917
  .rs-table__cell-body--invalid {
@@ -1130,7 +1156,7 @@
1130
1156
  min-height: 1.25rem;
1131
1157
  }
1132
1158
  .rs-table__cell-check.rs-table__cell-check--dirty .rs-checkbox__box {
1133
- outline: 1px solid color-mix(in srgb, var(--rs-warning, #d97706) 70%, transparent);
1159
+ outline: 1px solid color-mix(in srgb, var(--rs-warning) 70%, transparent);
1134
1160
  outline-offset: 1px;
1135
1161
  }
1136
1162
 
@@ -1191,9 +1217,9 @@
1191
1217
  top: 2px;
1192
1218
  inset-inline-end: 4px;
1193
1219
  z-index: 1;
1194
- font-size: 10px;
1220
+ font-size: 0.625rem;
1195
1221
  line-height: 1;
1196
- color: var(--rs-muted);
1222
+ color: var(--rs-text-tertiary);
1197
1223
  pointer-events: none;
1198
1224
  }
1199
1225
  .rs-table-cell-editor__null-tag {
@@ -1201,9 +1227,9 @@
1201
1227
  top: 2px;
1202
1228
  inset-inline-end: 4px;
1203
1229
  z-index: 1;
1204
- font-size: 10px;
1230
+ font-size: 0.625rem;
1205
1231
  line-height: 1;
1206
- color: var(--rs-muted);
1232
+ color: var(--rs-text-tertiary);
1207
1233
  pointer-events: none;
1208
1234
  }
1209
1235
  .rs-table-cell-editor--invalid {
@@ -1214,13 +1240,45 @@
1214
1240
  top: 2px;
1215
1241
  inset-inline-end: 4px;
1216
1242
  z-index: 1;
1217
- font-size: 10px;
1243
+ font-size: 0.625rem;
1218
1244
  line-height: 1;
1219
- color: var(--rs-muted);
1245
+ color: var(--rs-text-tertiary);
1220
1246
  pointer-events: none;
1221
1247
  }
1222
1248
  .rs-table-cell-editor--custom {
1249
+ display: flex;
1250
+ align-items: stretch;
1251
+ width: 100%;
1252
+ height: 100%;
1253
+ min-width: 0;
1254
+ min-height: 0;
1255
+ }
1256
+ /* 插槽里的原生输入跟内置编辑器一样贴合格子,不再另画一圈边框 */
1257
+ .rs-table-cell-editor--custom > :where(input, textarea, select) {
1258
+ flex: 1 1 auto;
1223
1259
  width: 100%;
1224
1260
  height: 100%;
1225
1261
  min-width: 0;
1262
+ margin: 0;
1263
+ padding: var(--rs-space-sm) var(--rs-space-md);
1264
+ border: 0;
1265
+ border-radius: 0;
1266
+ outline: none;
1267
+ background: transparent;
1268
+ box-shadow: none;
1269
+ color: inherit;
1270
+ font: inherit;
1271
+ line-height: inherit;
1272
+ appearance: none;
1273
+ }
1274
+ .rs-table-cell-editor--custom > :where(input, textarea, select):focus {
1275
+ outline: none;
1276
+ box-shadow: none;
1277
+ }
1278
+ .rs-table--compact .rs-table-cell-editor--custom > :where(input, textarea, select),
1279
+ .rs-table--sm .rs-table-cell-editor--custom > :where(input, textarea, select) {
1280
+ padding: var(--rs-space-xs) var(--rs-space-sm);
1281
+ }
1282
+ .rs-table--lg .rs-table-cell-editor--custom > :where(input, textarea, select) {
1283
+ padding: var(--rs-space-md) var(--rs-space-lg);
1226
1284
  }
@@ -1,3 +1,3 @@
1
1
  export { default as RsTabs } from './src/RsTabs.js';
2
- export type { RsTabItem, RsTabsCloseAction, RsTabsContentGap, RsTabsOverflow, RsTabsSize, RsTabsJustify, RsTabsVariant, } from './src/tabs-utils';
3
- export { buildTabContextMenuItems, getNextTabAfterBatchClose, getNextTabAfterClose, isTabClosable, isTabFixed, isTabRenamable, reorderTabItems, resolveTabsToClose, resolveVisibleTabValues, } from './src/tabs-utils';
2
+ export type { RsTabItem, RsTabsActivation, RsTabsCloseAction, RsTabsContentGap, RsTabsExpose, RsTabsInstance, RsTabsOverflow, RsTabsPosition, RsTabsSize, RsTabsJustify, RsTabsTabSlot, RsTabsVariant, } from './src/tabs-utils';
3
+ export { buildTabContextMenuItems, getAdjacentTabValue, getEdgeTabValue, getEnabledTabValues, getNextTabAfterBatchClose, getNextTabAfterClose, isTabClosable, isTabFixed, isTabRenamable, isVerticalTabsPosition, reorderTabItems, resolveTabKeyboardMove, resolveTabsToClose, resolveVisibleTabValues, shouldRenderTabPanel, } from './src/tabs-utils';