niuma-ui 2.0.4 → 2.0.9

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 (279) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/dist/components/_shared/index.d.ts +2 -2
  3. package/dist/components/_shared/src/overlay-utils.d.ts +44 -1
  4. package/dist/components/_shared/src/overlay-utils.js +87 -2
  5. package/dist/components/_shared/src/reka.js +2 -2
  6. package/dist/components/alert/index.d.ts +1 -0
  7. package/dist/components/alert/src/RsAlert.css +120 -65
  8. package/dist/components/alert/src/RsAlert.d.ts +24 -5
  9. package/dist/components/alert/src/RsAlert.impl.js +108 -36
  10. package/dist/components/alert/src/RsAlert.js +1 -1
  11. package/dist/components/alert/src/alert-utils.d.ts +37 -0
  12. package/dist/components/alert/src/alert-utils.js +71 -0
  13. package/dist/components/auto-complete/src/RsAutoComplete.d.ts +1 -1
  14. package/dist/components/button/src/RsButton.impl.js +1 -1
  15. package/dist/components/card/src/RsCard.d.ts +1 -1
  16. package/dist/components/code-block/index.d.ts +1 -0
  17. package/dist/components/code-block/src/RsCodeBlock.css +93 -52
  18. package/dist/components/code-block/src/RsCodeBlock.d.ts +36 -9
  19. package/dist/components/code-block/src/RsCodeBlock.impl.js +203 -84
  20. package/dist/components/code-block/src/RsCodeBlock.js +1 -1
  21. package/dist/components/code-block/src/code-block-highlight.d.ts +4 -0
  22. package/dist/components/code-block/src/code-block-highlight.js +34 -0
  23. package/dist/components/code-block/src/code-block-utils.d.ts +23 -0
  24. package/dist/components/code-block/src/code-block-utils.js +71 -0
  25. package/dist/components/code-editor/index.d.ts +1 -1
  26. package/dist/components/code-editor/src/RsCodeEditor.css +118 -92
  27. package/dist/components/code-editor/src/RsCodeEditor.d.ts +14 -3
  28. package/dist/components/code-editor/src/RsCodeEditor.impl.js +261 -94
  29. package/dist/components/code-editor/src/RsCodeEditor.js +1 -1
  30. package/dist/components/code-editor/src/code-editor-utils.d.ts +15 -0
  31. package/dist/components/code-editor/src/code-editor-utils.js +36 -1
  32. package/dist/components/code-editor/src/code-mirror-completion.d.ts +1 -1
  33. package/dist/components/code-editor/src/code-mirror-completion.js +8 -5
  34. package/dist/components/code-editor/src/code-mirror-diagnostics.d.ts +2 -3
  35. package/dist/components/code-editor/src/code-mirror-diagnostics.js +3 -4
  36. package/dist/components/code-editor/src/code-mirror-ghost.d.ts +1 -1
  37. package/dist/components/code-editor/src/code-mirror-ghost.js +12 -3
  38. package/dist/components/code-editor/src/code-mirror-inline-edit.js +8 -3
  39. package/dist/components/code-editor/src/code-mirror-intel.d.ts +2 -2
  40. package/dist/components/code-editor/src/code-mirror-intel.js +50 -39
  41. package/dist/components/code-editor/src/code-mirror-lang.js +4 -0
  42. package/dist/components/code-editor/src/code-mirror-session.d.ts +13 -0
  43. package/dist/components/code-editor/src/code-mirror-session.js +30 -0
  44. package/dist/components/context-menu/index.d.ts +1 -1
  45. package/dist/components/context-menu/src/RsContextMenu.css +115 -89
  46. package/dist/components/context-menu/src/RsContextMenu.d.ts +32 -11
  47. package/dist/components/context-menu/src/RsContextMenu.impl.js +795 -48
  48. package/dist/components/context-menu/src/RsContextMenuItems.d.ts +25 -1
  49. package/dist/components/context-menu/src/RsContextMenuItems.impl.js +110 -61
  50. package/dist/components/context-menu/src/context-menu-utils.d.ts +89 -3
  51. package/dist/components/context-menu/src/context-menu-utils.js +168 -3
  52. package/dist/components/date-picker/src/RsDatePicker.d.ts +2 -2
  53. package/dist/components/date-picker/src/RsDateTimePicker.d.ts +2 -2
  54. package/dist/components/descriptions/index.d.ts +1 -1
  55. package/dist/components/descriptions/src/RsDescriptions.css +38 -11
  56. package/dist/components/descriptions/src/RsDescriptions.d.ts +20 -4
  57. package/dist/components/descriptions/src/RsDescriptions.impl.js +89 -19
  58. package/dist/components/descriptions/src/RsDescriptionsItem.impl.js +13 -6
  59. package/dist/components/descriptions/src/descriptions-utils.d.ts +19 -0
  60. package/dist/components/descriptions/src/descriptions-utils.js +39 -1
  61. package/dist/components/dialog/index.d.ts +1 -1
  62. package/dist/components/dialog/src/RsConfirmDialog.css +47 -21
  63. package/dist/components/dialog/src/RsConfirmDialog.d.ts +19 -7
  64. package/dist/components/dialog/src/RsConfirmDialog.impl.js +349 -119
  65. package/dist/components/dialog/src/RsConfirmDialog.js +2 -1
  66. package/dist/components/dialog/src/RsDialog.css +102 -109
  67. package/dist/components/dialog/src/RsDialog.d.ts +34 -24
  68. package/dist/components/dialog/src/RsDialog.impl.js +410 -177
  69. package/dist/components/dialog/src/RsDialog.js +2 -1
  70. package/dist/components/dialog/src/dialog-utils.d.ts +40 -1
  71. package/dist/components/dialog/src/dialog-utils.js +152 -1
  72. package/dist/components/dialog/src/dialog-window.js +29 -8
  73. package/dist/components/drawer/index.d.ts +1 -1
  74. package/dist/components/drawer/src/RsDrawer.css +61 -29
  75. package/dist/components/drawer/src/RsDrawer.d.ts +37 -21
  76. package/dist/components/drawer/src/RsDrawer.impl.js +441 -223
  77. package/dist/components/drawer/src/drawer-utils.d.ts +35 -0
  78. package/dist/components/drawer/src/drawer-utils.js +131 -1
  79. package/dist/components/dropdown/index.d.ts +1 -1
  80. package/dist/components/dropdown/src/RsDropdown.css +140 -61
  81. package/dist/components/dropdown/src/RsDropdown.d.ts +39 -6
  82. package/dist/components/dropdown/src/RsDropdown.impl.js +693 -63
  83. package/dist/components/dropdown/src/RsDropdownItemView.impl.js +17 -7
  84. package/dist/components/dropdown/src/RsDropdownItems.d.ts +32 -3
  85. package/dist/components/dropdown/src/RsDropdownItems.impl.js +171 -59
  86. package/dist/components/dropdown/src/dropdown-utils.d.ts +50 -0
  87. package/dist/components/dropdown/src/dropdown-utils.js +103 -3
  88. package/dist/components/empty/index.d.ts +1 -0
  89. package/dist/components/empty/src/RsEmpty.css +105 -23
  90. package/dist/components/empty/src/RsEmpty.d.ts +27 -4
  91. package/dist/components/empty/src/RsEmpty.impl.js +154 -11
  92. package/dist/components/empty/src/RsEmpty.js +2 -1
  93. package/dist/components/empty/src/empty-utils.d.ts +28 -0
  94. package/dist/components/empty/src/empty-utils.js +55 -0
  95. package/dist/components/form/src/RsForm.d.ts +1 -1
  96. package/dist/components/input-number/src/RsInputNumber.d.ts +1 -1
  97. package/dist/components/label/src/RsLabel.d.ts +1 -1
  98. package/dist/components/loading/index.d.ts +1 -0
  99. package/dist/components/loading/src/RsLoading.css +13 -97
  100. package/dist/components/loading/src/RsLoading.d.ts +52 -2
  101. package/dist/components/loading/src/RsLoading.impl.js +216 -33
  102. package/dist/components/loading/src/RsLoading.js +2 -1
  103. package/dist/components/loading/src/loading-status.css +210 -0
  104. package/dist/components/loading/src/loading-status.d.ts +34 -0
  105. package/dist/components/loading/src/loading-status.impl.js +84 -0
  106. package/dist/components/loading/src/loading-status.js +8 -0
  107. package/dist/components/loading/src/loading-utils.d.ts +51 -4
  108. package/dist/components/loading/src/loading-utils.js +122 -0
  109. package/dist/components/loading-bar/index.d.ts +1 -0
  110. package/dist/components/loading-bar/src/RsLoadingBar.css +72 -8
  111. package/dist/components/loading-bar/src/RsLoadingBar.d.ts +55 -11
  112. package/dist/components/loading-bar/src/RsLoadingBar.impl.js +298 -57
  113. package/dist/components/loading-bar/src/RsLoadingBar.js +1 -1
  114. package/dist/components/loading-bar/src/loading-bar-utils.d.ts +69 -0
  115. package/dist/components/loading-bar/src/loading-bar-utils.js +97 -0
  116. package/dist/components/log/src/RsLog.css +52 -144
  117. package/dist/components/log/src/RsLog.d.ts +12 -11
  118. package/dist/components/log/src/RsLog.impl.js +181 -148
  119. package/dist/components/log/src/RsLog.js +1 -1
  120. package/dist/components/log/src/RsLogRow.css +152 -0
  121. package/dist/components/log/src/RsLogRow.d.ts +35 -0
  122. package/dist/components/log/src/RsLogRow.impl.js +91 -0
  123. package/dist/components/log/src/RsLogRow.js +8 -0
  124. package/dist/components/log/src/log-utils.d.ts +8 -0
  125. package/dist/components/log/src/log-utils.js +71 -10
  126. package/dist/components/markdown/index.d.ts +1 -1
  127. package/dist/components/markdown/src/RsMarkdown.css +75 -32
  128. package/dist/components/markdown/src/RsMarkdown.d.ts +6 -2
  129. package/dist/components/markdown/src/RsMarkdown.impl.js +185 -17
  130. package/dist/components/markdown/src/markdown-utils.d.ts +26 -0
  131. package/dist/components/markdown/src/markdown-utils.js +114 -12
  132. package/dist/components/mentions/src/RsMentions.d.ts +2 -2
  133. package/dist/components/menu/index.d.ts +1 -1
  134. package/dist/components/menu/src/RsMenu.css +70 -29
  135. package/dist/components/menu/src/RsMenu.d.ts +58 -4
  136. package/dist/components/menu/src/RsMenu.impl.js +93 -46
  137. package/dist/components/menu/src/RsMenuItems.d.ts +22 -5
  138. package/dist/components/menu/src/RsMenuItems.impl.js +506 -154
  139. package/dist/components/menu/src/menu-utils.d.ts +56 -0
  140. package/dist/components/menu/src/menu-utils.js +139 -6
  141. package/dist/components/monaco-editor/index.d.ts +1 -1
  142. package/dist/components/monaco-editor/src/RsMonacoEditor.css +28 -16
  143. package/dist/components/monaco-editor/src/RsMonacoEditor.d.ts +39 -41
  144. package/dist/components/monaco-editor/src/RsMonacoEditor.impl.js +212 -133
  145. package/dist/components/monaco-editor/src/RsMonacoEditor.js +1 -1
  146. package/dist/components/monaco-editor/src/monaco-editor-utils.d.ts +126 -0
  147. package/dist/components/monaco-editor/src/monaco-editor-utils.js +302 -0
  148. package/dist/components/pagination/index.d.ts +2 -2
  149. package/dist/components/pagination/src/RsPagination.css +93 -46
  150. package/dist/components/pagination/src/RsPagination.d.ts +68 -8
  151. package/dist/components/pagination/src/RsPagination.impl.js +229 -86
  152. package/dist/components/pagination/src/RsPagination.js +1 -1
  153. package/dist/components/pagination/src/pagination-utils.d.ts +59 -0
  154. package/dist/components/pagination/src/pagination-utils.js +105 -1
  155. package/dist/components/popover/index.d.ts +1 -0
  156. package/dist/components/popover/src/RsPopover.css +124 -14
  157. package/dist/components/popover/src/RsPopover.d.ts +38 -7
  158. package/dist/components/popover/src/RsPopover.impl.js +546 -35
  159. package/dist/components/popover/src/RsPopover.js +2 -1
  160. package/dist/components/popover/src/popover-utils.d.ts +24 -2
  161. package/dist/components/popover/src/popover-utils.js +55 -0
  162. package/dist/components/sidebar/index.d.ts +1 -0
  163. package/dist/components/sidebar/src/RsSidebar.css +91 -33
  164. package/dist/components/sidebar/src/RsSidebar.d.ts +17 -9
  165. package/dist/components/sidebar/src/RsSidebar.impl.js +124 -22
  166. package/dist/components/sidebar/src/RsSidebar.js +1 -1
  167. package/dist/components/sidebar/src/RsSidebarGroup.css +23 -6
  168. package/dist/components/sidebar/src/RsSidebarGroup.d.ts +6 -2
  169. package/dist/components/sidebar/src/RsSidebarGroup.impl.js +17 -4
  170. package/dist/components/sidebar/src/RsSidebarGroup.js +1 -1
  171. package/dist/components/sidebar/src/RsSidebarItem.css +50 -20
  172. package/dist/components/sidebar/src/RsSidebarItem.d.ts +21 -3
  173. package/dist/components/sidebar/src/RsSidebarItem.impl.js +71 -20
  174. package/dist/components/sidebar/src/RsSidebarItem.js +1 -1
  175. package/dist/components/sidebar/src/sidebar-utils.d.ts +47 -0
  176. package/dist/components/sidebar/src/sidebar-utils.js +72 -0
  177. package/dist/components/split-pane/index.d.ts +2 -2
  178. package/dist/components/split-pane/src/RsSplitPane.css +41 -30
  179. package/dist/components/split-pane/src/RsSplitPane.d.ts +6 -2
  180. package/dist/components/split-pane/src/RsSplitPane.impl.js +153 -45
  181. package/dist/components/split-pane/src/split-pane-utils.d.ts +23 -0
  182. package/dist/components/split-pane/src/split-pane-utils.js +18 -1
  183. package/dist/components/stat-card/index.d.ts +1 -0
  184. package/dist/components/stat-card/src/RsStatCard.css +129 -25
  185. package/dist/components/stat-card/src/RsStatCard.d.ts +40 -4
  186. package/dist/components/stat-card/src/RsStatCard.impl.js +106 -12
  187. package/dist/components/stat-card/src/RsStatCard.js +1 -1
  188. package/dist/components/stat-card/src/stat-card-utils.d.ts +39 -0
  189. package/dist/components/stat-card/src/stat-card-utils.js +113 -0
  190. package/dist/components/steps/index.d.ts +1 -1
  191. package/dist/components/steps/src/RsSteps.css +158 -37
  192. package/dist/components/steps/src/RsSteps.d.ts +69 -5
  193. package/dist/components/steps/src/RsSteps.impl.js +168 -28
  194. package/dist/components/steps/src/RsSteps.js +1 -1
  195. package/dist/components/steps/src/steps-utils.d.ts +51 -1
  196. package/dist/components/steps/src/steps-utils.js +67 -1
  197. package/dist/components/table/src/RsTable.impl.js +4 -2
  198. package/dist/components/table/src/composables/useRsTableContextMenu.d.ts +16 -0
  199. package/dist/components/table/src/composables/useRsTableContextMenu.js +1 -1
  200. package/dist/components/table/src/composables/useRsTableEngine.js +6 -2
  201. package/dist/components/table/src/composables/useRsTableScrollLayout.js +2 -0
  202. package/dist/components/table/src/composables/useRsTableShell.d.ts +16 -0
  203. package/dist/components/table/src/rs-table-props.d.ts +1 -1
  204. package/dist/components/table/src/rs-table-props.js +0 -1
  205. package/dist/components/table/src/table-body/RsTableBody.impl.js +1 -0
  206. package/dist/components/table/src/table-body/RsTableCellEditor.impl.js +10 -2
  207. package/dist/components/table/src/table-body/RsTableColGroup.impl.js +1 -0
  208. package/dist/components/table/src/table-footer/RsTableSummaryRow.impl.js +1 -0
  209. package/dist/components/table/src/table-header/RsTableHeader.impl.js +1 -0
  210. package/dist/components/table/src/utils/table-utils.d.ts +10 -6
  211. package/dist/components/table/src/utils/table-utils.js +27 -25
  212. package/dist/components/table/style/rs-table.css +34 -20
  213. package/dist/components/tabs/index.d.ts +2 -2
  214. package/dist/components/tabs/src/RsTabs.css +225 -101
  215. package/dist/components/tabs/src/RsTabs.d.ts +37 -8
  216. package/dist/components/tabs/src/RsTabs.impl.js +400 -270
  217. package/dist/components/tabs/src/tabs-utils.d.ts +41 -2
  218. package/dist/components/tabs/src/tabs-utils.js +55 -1
  219. package/dist/components/terminal/index.d.ts +1 -1
  220. package/dist/components/terminal/src/RsTerminal.css +60 -37
  221. package/dist/components/terminal/src/RsTerminal.d.ts +36 -4
  222. package/dist/components/terminal/src/RsTerminal.impl.js +288 -68
  223. package/dist/components/terminal/src/RsTerminal.js +1 -1
  224. package/dist/components/terminal/src/terminal-utils.d.ts +42 -4
  225. package/dist/components/terminal/src/terminal-utils.js +113 -10
  226. package/dist/components/textarea/src/RsTextarea.d.ts +1 -1
  227. package/dist/components/time-picker/src/RsTimePicker.d.ts +2 -2
  228. package/dist/components/toaster/src/RsToaster.css +156 -203
  229. package/dist/components/toaster/src/RsToaster.d.ts +32 -2
  230. package/dist/components/toaster/src/RsToaster.impl.js +309 -34
  231. package/dist/components/toaster/src/toast-store.d.ts +95 -0
  232. package/dist/components/toaster/src/toast-store.js +177 -0
  233. package/dist/components/toaster/src/toast-utils.d.ts +60 -0
  234. package/dist/components/toaster/src/toast-utils.js +86 -0
  235. package/dist/components/toolbar/index.d.ts +1 -1
  236. package/dist/components/toolbar/src/RsToolbar.css +206 -32
  237. package/dist/components/toolbar/src/RsToolbar.d.ts +41 -16
  238. package/dist/components/toolbar/src/RsToolbar.impl.js +146 -18
  239. package/dist/components/toolbar/src/RsToolbar.js +2 -1
  240. package/dist/components/toolbar/src/toolbar-utils.d.ts +20 -0
  241. package/dist/components/toolbar/src/toolbar-utils.js +105 -0
  242. package/dist/components/tooltip/index.d.ts +1 -0
  243. package/dist/components/tooltip/src/RsTooltip.css +104 -26
  244. package/dist/components/tooltip/src/RsTooltip.d.ts +38 -16
  245. package/dist/components/tooltip/src/RsTooltip.impl.js +420 -51
  246. package/dist/components/tooltip/src/RsTooltip.js +2 -1
  247. package/dist/components/tooltip/src/RsTooltipProvider.d.ts +4 -4
  248. package/dist/components/tooltip/src/RsTooltipProvider.impl.js +51 -14
  249. package/dist/components/tooltip/src/tooltip-utils.d.ts +30 -0
  250. package/dist/components/tooltip/src/tooltip-utils.js +23 -0
  251. package/dist/components/tree/index.d.ts +2 -2
  252. package/dist/components/tree/src/RsTree.css +84 -75
  253. package/dist/components/tree/src/RsTree.d.ts +20 -20
  254. package/dist/components/tree/src/RsTree.impl.js +292 -66
  255. package/dist/components/tree/src/RsTree.js +1 -1
  256. package/dist/components/tree/src/tree-utils.d.ts +22 -0
  257. package/dist/components/tree/src/tree-utils.js +18 -4
  258. package/dist/components/tree-select/src/RsTreeSelect.d.ts +1 -1
  259. package/dist/components/virtual-list/index.d.ts +1 -1
  260. package/dist/components/virtual-list/src/RsVirtualList.css +64 -9
  261. package/dist/components/virtual-list/src/RsVirtualList.d.ts +31 -5
  262. package/dist/components/virtual-list/src/RsVirtualList.impl.js +425 -76
  263. package/dist/components/virtual-list/src/RsVirtualList.js +1 -1
  264. package/dist/components/virtual-list/src/virtual-list-utils.d.ts +64 -1
  265. package/dist/components/virtual-list/src/virtual-list-utils.js +215 -1
  266. package/dist/composables/useRsLoadingBar.d.ts +2 -5
  267. package/dist/composables/useRsLoadingBar.js +21 -5
  268. package/dist/composables/useRsTabsNav.d.ts +3 -1
  269. package/dist/composables/useRsTabsNav.js +96 -28
  270. package/dist/composables/useRsToast.d.ts +11 -13
  271. package/dist/composables/useRsToast.js +66 -17
  272. package/dist/index.d.ts +30 -21
  273. package/dist/index.js +14 -0
  274. package/dist/locale/apply.js +6 -1
  275. package/dist/locale/messages.js +128 -2
  276. package/dist/styles.css +460 -797
  277. package/dist/theme/brand.example.css +2 -1
  278. package/dist/vite-plugins/niuma-ui-host.js +1 -1
  279. package/package.json +2 -3
@@ -1,4 +1,9 @@
1
- import { createBlock, createCommentVNode, createElementBlock, defineComponent, normalizeClass, openBlock, renderSlot, resolveDynamicComponent, withCtx } from "vue";
1
+ import { useRsConfigOptional } from "../../../composables/useRsConfig.js";
2
+ import { resolveDirMode } from "../../../locale/apply.js";
3
+ import { useRsI18n } from "../../../composables/useRsI18n.js";
4
+ import { useResolvedRsComponentSize } from "../../_shared/src/resolve-size.js";
5
+ import { applyToolbarRovingTabindex, collectToolbarCommands, isToolbarTextField, nextToolbarIndex, resolveToolbarKeyboardDelta } from "./toolbar-utils.js";
6
+ import { computed, createBlock, createCommentVNode, createElementBlock, defineComponent, nextTick, normalizeClass, normalizeStyle, onMounted, onUpdated, openBlock, ref, renderSlot, resolveDynamicComponent, useSlots, withCtx } from "vue";
2
7
  //#region src/components/toolbar/src/RsToolbar.vue?vue&type=script&setup=true&lang.ts
3
8
  var _hoisted_1 = {
4
9
  key: 0,
@@ -13,11 +18,13 @@ var _hoisted_3 = {
13
18
  class: "rs-toolbar__end"
14
19
  };
15
20
  var RsToolbar_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
21
+ name: "RsToolbar",
16
22
  __name: "RsToolbar",
17
23
  props: {
18
24
  tag: { default: "header" },
19
- size: { default: "md" },
25
+ size: {},
20
26
  border: { default: "bottom" },
27
+ orientation: { default: "horizontal" },
21
28
  elevated: {
22
29
  type: Boolean,
23
30
  default: false
@@ -26,30 +33,151 @@ var RsToolbar_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ define
26
33
  type: Boolean,
27
34
  default: false
28
35
  },
29
- label: {}
36
+ wrap: {
37
+ type: Boolean,
38
+ default: false
39
+ },
40
+ sticky: {
41
+ type: Boolean,
42
+ default: false
43
+ },
44
+ stickyOffset: {},
45
+ disabled: {
46
+ type: Boolean,
47
+ default: false
48
+ },
49
+ keyboard: {
50
+ type: Boolean,
51
+ default: true
52
+ },
53
+ loop: {
54
+ type: Boolean,
55
+ default: true
56
+ },
57
+ ariaLabel: {},
58
+ label: {},
59
+ id: {}
30
60
  },
31
- setup(__props) {
32
- /** 工具栏高度密度,对应常见面板顶栏。 */
61
+ setup(__props, { expose: __expose }) {
62
+ const props = __props;
63
+ const slots = useSlots();
64
+ const { t, locale } = useRsI18n();
65
+ const config = useRsConfigOptional();
66
+ const rootRef = ref(null);
67
+ const resolvedSize = useResolvedRsComponentSize(() => props.size);
68
+ const writingDir = computed(() => resolveDirMode(config?.dir.value ?? "auto", locale.value));
69
+ const toolbarLabel = computed(() => props.ariaLabel || props.label || t("toolbar.label"));
70
+ const hasStart = computed(() => Boolean(slots.start || slots.left || slots.default));
71
+ const hasCenter = computed(() => Boolean(slots.center));
72
+ const hasEnd = computed(() => Boolean(slots.end || slots.right));
73
+ const rootClass = computed(() => [
74
+ "rs-toolbar",
75
+ `rs-toolbar--${resolvedSize.value}`,
76
+ `rs-toolbar--border-${props.border}`,
77
+ `rs-toolbar--${props.orientation}`,
78
+ {
79
+ "rs-toolbar--elevated": props.elevated,
80
+ "rs-toolbar--compact": props.compact,
81
+ "rs-toolbar--wrap": props.wrap,
82
+ "rs-toolbar--sticky": props.sticky,
83
+ "rs-toolbar--disabled": props.disabled,
84
+ "rs-toolbar--has-start": hasStart.value,
85
+ "rs-toolbar--has-center": hasCenter.value,
86
+ "rs-toolbar--has-end": hasEnd.value
87
+ }
88
+ ]);
89
+ const rootStyle = computed(() => {
90
+ if (props.stickyOffset == null) return void 0;
91
+ return { "--rs-toolbar-sticky-offset": `${props.stickyOffset}px` };
92
+ });
93
+ function commands() {
94
+ return collectToolbarCommands(rootRef.value);
95
+ }
96
+ function syncRoving(preferred) {
97
+ if (!props.keyboard || props.disabled) return;
98
+ applyToolbarRovingTabindex(commands(), preferred);
99
+ }
100
+ function focus() {
101
+ if (props.disabled) return;
102
+ const items = commands();
103
+ (applyToolbarRovingTabindex(items) ?? items[0])?.focus();
104
+ }
105
+ function blur() {
106
+ const root = rootRef.value;
107
+ const active = typeof document === "undefined" ? null : document.activeElement;
108
+ if (root && active instanceof HTMLElement && root.contains(active)) active.blur();
109
+ }
110
+ function onFocusIn(event) {
111
+ if (!props.keyboard || props.disabled) return;
112
+ const target = event.target;
113
+ if (!(target instanceof HTMLElement) || !rootRef.value?.contains(target)) return;
114
+ if (isToolbarTextField(target)) return;
115
+ if (commands().includes(target)) syncRoving(target);
116
+ }
117
+ function onKeydown(event) {
118
+ if (!props.keyboard || props.disabled) return;
119
+ if (event.altKey || event.ctrlKey || event.metaKey) return;
120
+ if (isToolbarTextField(event.target)) return;
121
+ const move = resolveToolbarKeyboardDelta(event.key, props.orientation, writingDir.value === "rtl");
122
+ if (move == null) return;
123
+ const items = commands();
124
+ if (!items.length) return;
125
+ const target = event.target;
126
+ const current = target instanceof HTMLElement ? items.indexOf(target) : -1;
127
+ if (current < 0) return;
128
+ event.preventDefault();
129
+ let next = nextToolbarIndex(current, items.length, typeof move === "number" ? move : 0, props.loop);
130
+ if (move === "start") next = 0;
131
+ if (move === "end") next = items.length - 1;
132
+ const el = items[next];
133
+ if (!el) return;
134
+ syncRoving(el);
135
+ el.focus();
136
+ }
137
+ onMounted(() => {
138
+ nextTick(() => syncRoving());
139
+ });
140
+ onUpdated(() => {
141
+ nextTick(() => syncRoving());
142
+ });
143
+ __expose({
144
+ focus,
145
+ blur
146
+ });
33
147
  return (_ctx, _cache) => {
34
148
  return openBlock(), createBlock(resolveDynamicComponent(__props.tag), {
35
- class: normalizeClass(["rs-toolbar", [
36
- `rs-toolbar--${__props.size}`,
37
- `rs-toolbar--border-${__props.border}`,
38
- {
39
- "rs-toolbar--elevated": __props.elevated,
40
- "rs-toolbar--compact": __props.compact
41
- }
42
- ]]),
149
+ id: __props.id,
150
+ ref_key: "rootRef",
151
+ ref: rootRef,
152
+ class: normalizeClass(rootClass.value),
153
+ style: normalizeStyle(rootStyle.value),
43
154
  role: "toolbar",
44
- "aria-label": __props.label
155
+ "aria-label": toolbarLabel.value,
156
+ "aria-orientation": __props.orientation,
157
+ "aria-disabled": __props.disabled ? "true" : void 0,
158
+ inert: __props.disabled || void 0,
159
+ onFocusin: onFocusIn,
160
+ onKeydown
45
161
  }, {
46
162
  default: withCtx(() => [
47
- _ctx.$slots.left || _ctx.$slots.default ? (openBlock(), createElementBlock("div", _hoisted_1, [renderSlot(_ctx.$slots, "left"), renderSlot(_ctx.$slots, "default")])) : createCommentVNode("", true),
48
- _ctx.$slots.center ? (openBlock(), createElementBlock("div", _hoisted_2, [renderSlot(_ctx.$slots, "center")])) : createCommentVNode("", true),
49
- _ctx.$slots.right ? (openBlock(), createElementBlock("div", _hoisted_3, [renderSlot(_ctx.$slots, "right")])) : createCommentVNode("", true)
163
+ hasStart.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
164
+ renderSlot(_ctx.$slots, "start", {}, void 0, true),
165
+ renderSlot(_ctx.$slots, "left", {}, void 0, true),
166
+ renderSlot(_ctx.$slots, "default", {}, void 0, true)
167
+ ])) : createCommentVNode("", true),
168
+ hasCenter.value ? (openBlock(), createElementBlock("div", _hoisted_2, [renderSlot(_ctx.$slots, "center", {}, void 0, true)])) : createCommentVNode("", true),
169
+ hasEnd.value ? (openBlock(), createElementBlock("div", _hoisted_3, [renderSlot(_ctx.$slots, "end", {}, void 0, true), renderSlot(_ctx.$slots, "right", {}, void 0, true)])) : createCommentVNode("", true)
50
170
  ]),
51
171
  _: 3
52
- }, 8, ["class", "aria-label"]);
172
+ }, 40, [
173
+ "id",
174
+ "class",
175
+ "style",
176
+ "aria-label",
177
+ "aria-orientation",
178
+ "aria-disabled",
179
+ "inert"
180
+ ]);
53
181
  };
54
182
  }
55
183
  });
@@ -1,7 +1,8 @@
1
1
  import './RsToolbar.css'
2
+ import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_export-helper.js";
2
3
  import RsToolbar_vue_vue_type_script_setup_true_lang_default from "./RsToolbar.impl.js";
3
4
 
4
5
  //#region src/components/toolbar/src/RsToolbar.vue
5
- var RsToolbar_default = RsToolbar_vue_vue_type_script_setup_true_lang_default;
6
+ var RsToolbar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsToolbar_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-7b347879"]]);
6
7
  //#endregion
7
8
  export { RsToolbar_default as default };
@@ -0,0 +1,20 @@
1
+ import type { RsComponentSize } from '../../../theme/types';
2
+ export type RsToolbarSize = RsComponentSize;
3
+ export type RsToolbarBorder = 'bottom' | 'top' | 'both' | 'none';
4
+ export type RsToolbarOrientation = 'horizontal' | 'vertical';
5
+ export interface RsToolbarExpose {
6
+ /** 焦点落到当前命令控件;没有则落到第一项。禁用时不移动。 */
7
+ focus: () => void;
8
+ /** 焦点若在工具条内则失焦。 */
9
+ blur: () => void;
10
+ }
11
+ export type RsToolbarInstance = RsToolbarExpose & {
12
+ $el: HTMLElement;
13
+ };
14
+ export declare function isToolbarTextField(node: EventTarget | null): boolean;
15
+ export declare function isToolbarCommand(el: Element): boolean;
16
+ /** 收集工具条内可方向键移动的命令控件。输入框不进列表。无 window 假设。 */
17
+ export declare function collectToolbarCommands(root: HTMLElement | null | undefined): HTMLElement[];
18
+ export declare function nextToolbarIndex(current: number, length: number, delta: number, loop: boolean): number;
19
+ export declare function resolveToolbarKeyboardDelta(key: string, orientation: RsToolbarOrientation, rtl: boolean): number | 'start' | 'end' | null;
20
+ export declare function applyToolbarRovingTabindex(items: readonly HTMLElement[], active?: HTMLElement | null): HTMLElement | null;
@@ -0,0 +1,105 @@
1
+ //#region src/components/toolbar/src/toolbar-utils.ts
2
+ var COMMAND_SELECTOR = [
3
+ "button",
4
+ "a[href]",
5
+ "input",
6
+ "[role=\"button\"]",
7
+ "[role=\"menuitem\"]",
8
+ "[role=\"checkbox\"]",
9
+ "[role=\"radio\"]",
10
+ "[role=\"switch\"]",
11
+ "[role=\"tab\"]"
12
+ ].join(",");
13
+ var TEXT_INPUT_TYPES = /* @__PURE__ */ new Set([
14
+ "text",
15
+ "search",
16
+ "email",
17
+ "url",
18
+ "tel",
19
+ "password",
20
+ "number",
21
+ "date",
22
+ "datetime-local",
23
+ "month",
24
+ "week",
25
+ "time",
26
+ "color"
27
+ ]);
28
+ var COMMAND_INPUT_TYPES = /* @__PURE__ */ new Set([
29
+ "button",
30
+ "submit",
31
+ "reset",
32
+ "checkbox",
33
+ "radio"
34
+ ]);
35
+ function isToolbarTextField(node) {
36
+ if (!(node instanceof Element)) return false;
37
+ const el = node.closest("input, textarea, select, [contenteditable=\"true\"]");
38
+ if (!el) return false;
39
+ if (el instanceof HTMLTextAreaElement || el instanceof HTMLSelectElement) return true;
40
+ if (el.getAttribute("contenteditable") === "true") return true;
41
+ if (!(el instanceof HTMLInputElement)) return false;
42
+ const type = (el.type || "text").toLowerCase();
43
+ if (COMMAND_INPUT_TYPES.has(type) || type === "hidden" || type === "file" || type === "image") return false;
44
+ return TEXT_INPUT_TYPES.has(type) || type === "text";
45
+ }
46
+ function isToolbarCommand(el) {
47
+ if (!(el instanceof HTMLElement)) return false;
48
+ if (el.closest("[inert], [hidden]")) return false;
49
+ if (el.getAttribute("aria-hidden") === "true") return false;
50
+ if (el.hasAttribute("disabled")) return false;
51
+ if (el.getAttribute("aria-disabled") === "true") return false;
52
+ if (isToolbarTextField(el)) return false;
53
+ const tag = el.tagName;
54
+ if (tag === "BUTTON") return true;
55
+ if (tag === "A") return el.hasAttribute("href");
56
+ if (tag === "INPUT") return COMMAND_INPUT_TYPES.has(el.type.toLowerCase());
57
+ const role = el.getAttribute("role");
58
+ return role === "button" || role === "menuitem" || role === "checkbox" || role === "radio" || role === "switch" || role === "tab";
59
+ }
60
+ function hasCommandAncestor(el, root) {
61
+ let current = el.parentElement;
62
+ while (current && current !== root) {
63
+ if (isToolbarCommand(current)) return true;
64
+ current = current.parentElement;
65
+ }
66
+ return false;
67
+ }
68
+ /** 收集工具条内可方向键移动的命令控件。输入框不进列表。无 window 假设。 */
69
+ function collectToolbarCommands(root) {
70
+ if (!root) return [];
71
+ const items = [];
72
+ for (const node of root.querySelectorAll(COMMAND_SELECTOR)) {
73
+ if (!(node instanceof HTMLElement) || !isToolbarCommand(node)) continue;
74
+ if (hasCommandAncestor(node, root)) continue;
75
+ items.push(node);
76
+ }
77
+ return items;
78
+ }
79
+ function nextToolbarIndex(current, length, delta, loop) {
80
+ if (length <= 0) return -1;
81
+ if (current < 0) return delta > 0 ? 0 : length - 1;
82
+ const raw = current + delta;
83
+ if (loop) return (raw % length + length) % length;
84
+ return Math.max(0, Math.min(length - 1, raw));
85
+ }
86
+ function resolveToolbarKeyboardDelta(key, orientation, rtl) {
87
+ if (key === "Home") return "start";
88
+ if (key === "End") return "end";
89
+ if (orientation === "vertical") {
90
+ if (key === "ArrowDown") return 1;
91
+ if (key === "ArrowUp") return -1;
92
+ return null;
93
+ }
94
+ if (key === "ArrowRight") return rtl ? -1 : 1;
95
+ if (key === "ArrowLeft") return rtl ? 1 : -1;
96
+ return null;
97
+ }
98
+ function applyToolbarRovingTabindex(items, active) {
99
+ if (!items.length) return null;
100
+ const current = active && items.includes(active) ? active : items.find((el) => el.tabIndex === 0) ?? items[0] ?? null;
101
+ for (const el of items) el.tabIndex = el === current ? 0 : -1;
102
+ return current;
103
+ }
104
+ //#endregion
105
+ export { applyToolbarRovingTabindex, collectToolbarCommands, isToolbarCommand, isToolbarTextField, nextToolbarIndex, resolveToolbarKeyboardDelta };
@@ -1,2 +1,3 @@
1
1
  export { default as RsTooltip } from './src/RsTooltip.js';
2
2
  export { default as RsTooltipProvider } from './src/RsTooltipProvider.js';
3
+ export type { RsTooltipAlign, RsTooltipExpose, RsTooltipGetContainer, RsTooltipInstance, RsTooltipSide, } from './src/tooltip-utils';
@@ -1,60 +1,138 @@
1
1
 
2
- .rs-tooltip__with-icon {
2
+ .rs-tooltip[data-v-3bb6995e]:not(.rs-tooltip--icon) {
3
+ display: contents;
4
+ }
5
+ .rs-tooltip--icon[data-v-3bb6995e] {
3
6
  display: inline-flex;
4
7
  flex-wrap: nowrap;
5
8
  align-items: center;
6
- gap: 0.25rem;
9
+ gap: var(--rs-space-xs);
7
10
  width: max-content;
8
11
  max-width: 100%;
9
12
  vertical-align: middle;
10
13
  }
11
- .rs-tooltip__label {
14
+ .rs-tooltip__label[data-v-3bb6995e] {
12
15
  display: inline;
13
16
  min-width: 0;
14
17
  }
15
- .rs-tooltip__icon-trigger {
18
+ .rs-tooltip__icon-trigger[data-v-3bb6995e] {
19
+ --rs-tooltip-icon: var(--rs-text-tertiary);
20
+ --rs-tooltip-icon-hover: var(--rs-text-primary);
16
21
  display: inline-flex;
17
22
  flex-shrink: 0;
18
23
  align-items: center;
19
24
  justify-content: center;
20
25
  margin: 0;
21
- padding: 0;
26
+ padding-block: 0;
27
+ padding-inline: 0;
22
28
  border: none;
23
29
  background: transparent;
24
- color: var(--rs-muted);
30
+ color: var(--rs-tooltip-icon);
25
31
  cursor: help;
26
32
  line-height: 0;
27
33
  border-radius: var(--rs-radius-full);
28
34
  }
29
- .rs-tooltip__icon-trigger:hover,
30
- .rs-tooltip__icon-trigger:focus-visible {
31
- color: var(--rs-text);
35
+ .rs-tooltip__icon-trigger[data-v-3bb6995e]:hover,
36
+ .rs-tooltip__icon-trigger[data-v-3bb6995e]:focus-visible {
37
+ color: var(--rs-tooltip-icon-hover);
32
38
  }
33
- .rs-tooltip__icon-trigger:focus-visible {
39
+ .rs-tooltip__icon-trigger[data-v-3bb6995e]:focus-visible {
34
40
  outline: none;
35
41
  box-shadow: 0 0 0 var(--rs-focus-ring-width, 2px) var(--rs-focus-ring);
36
42
  }
37
-
38
- /* 提到 modal 之上:Dialog 内悬浮时否则会被遮挡(portal 挂 body) */
39
- .rs-tooltip__content {
40
- z-index: calc(var(--rs-z-modal) + 2);
43
+ .rs-tooltip__content[data-v-3bb6995e] {
44
+ --rs-tooltip-bg: var(--rs-surface-elevated);
45
+ --rs-tooltip-fg: var(--rs-text-primary);
46
+ --rs-tooltip-border: var(--rs-border);
47
+ --rs-tooltip-shadow: var(--rs-shadow-sm);
48
+ --rs-tooltip-radius: var(--rs-radius-sm);
49
+ position: fixed;
50
+ z-index: var(--rs-tooltip-z);
41
51
  width: max-content;
42
- max-width: min(20rem, 90vw);
43
- padding: 0.375rem 0.625rem;
44
- border-radius: var(--rs-radius-sm);
45
- border: 1px solid var(--rs-border);
46
- background: var(--rs-surface-elevated);
47
- color: var(--rs-text);
52
+ max-width: var(--rs-tooltip-max-width);
53
+ margin: 0;
54
+ padding-block: var(--rs-tooltip-pad-block);
55
+ padding-inline: var(--rs-tooltip-pad-inline);
56
+ border-radius: var(--rs-tooltip-radius);
57
+ border: 1px solid var(--rs-tooltip-border);
58
+ background: var(--rs-tooltip-bg);
59
+ color: var(--rs-tooltip-fg);
60
+ font-family: var(--rs-font-sans);
48
61
  font-size: var(--rs-font-size-xs);
62
+ font-weight: var(--rs-font-weight-regular);
49
63
  line-height: var(--rs-line-height-tight);
50
- box-shadow: var(--rs-shadow-sm);
51
- overflow: hidden;
64
+ text-align: start;
65
+ box-shadow: var(--rs-tooltip-shadow);
52
66
  overflow-wrap: break-word;
67
+ pointer-events: none;
68
+ opacity: 1;
69
+ transition: opacity var(--rs-transition-fast);
53
70
  }
54
- [data-reka-popper-content-wrapper]:has(> .rs-tooltip__content) {
55
- z-index: calc(var(--rs-z-modal) + 2);
71
+ .rs-tooltip__content--interactive[data-v-3bb6995e] {
72
+ pointer-events: auto;
73
+ user-select: text;
56
74
  }
57
- .rs-tooltip__content--nowrap {
58
- max-width: min(48rem, 90vw);
75
+ .rs-tooltip__content--nowrap[data-v-3bb6995e] {
76
+ max-width: var(--rs-tooltip-max-width-nowrap);
59
77
  white-space: nowrap;
60
78
  }
79
+ .rs-tooltip__content[data-ready='false'][data-v-3bb6995e] {
80
+ visibility: hidden;
81
+ opacity: 0;
82
+ }
83
+ .rs-tooltip__arrow[data-v-3bb6995e] {
84
+ position: absolute;
85
+ width: 0.5rem;
86
+ height: 0.5rem;
87
+ background: var(--rs-tooltip-bg);
88
+ border: 1px solid var(--rs-tooltip-border);
89
+ pointer-events: none;
90
+ transform: rotate(45deg);
91
+ }
92
+ .rs-tooltip__content[data-side='top'] .rs-tooltip__arrow[data-v-3bb6995e] {
93
+ bottom: -0.28rem;
94
+ inset-inline-start: calc(50% - 0.25rem);
95
+ border-block-start: none;
96
+ border-inline-start: none;
97
+ }
98
+ .rs-tooltip__content[data-side='bottom'] .rs-tooltip__arrow[data-v-3bb6995e] {
99
+ top: -0.28rem;
100
+ inset-inline-start: calc(50% - 0.25rem);
101
+ border-block-end: none;
102
+ border-inline-end: none;
103
+ }
104
+ .rs-tooltip__content[data-side='left'] .rs-tooltip__arrow[data-v-3bb6995e] {
105
+ inset-inline-end: -0.28rem;
106
+ top: calc(50% - 0.25rem);
107
+ border-block-end: none;
108
+ border-inline-start: none;
109
+ }
110
+ .rs-tooltip__content[data-side='right'] .rs-tooltip__arrow[data-v-3bb6995e] {
111
+ inset-inline-start: -0.28rem;
112
+ top: calc(50% - 0.25rem);
113
+ border-block-start: none;
114
+ border-inline-end: none;
115
+ }
116
+ .rs-tooltip__content[data-side='top'][data-align='start'] .rs-tooltip__arrow[data-v-3bb6995e],
117
+ .rs-tooltip__content[data-side='bottom'][data-align='start'] .rs-tooltip__arrow[data-v-3bb6995e] {
118
+ inset-inline-start: 0.75rem;
119
+ }
120
+ .rs-tooltip__content[data-side='top'][data-align='end'] .rs-tooltip__arrow[data-v-3bb6995e],
121
+ .rs-tooltip__content[data-side='bottom'][data-align='end'] .rs-tooltip__arrow[data-v-3bb6995e] {
122
+ inset-inline-start: auto;
123
+ inset-inline-end: 0.75rem;
124
+ }
125
+ .rs-tooltip__content[data-side='left'][data-align='start'] .rs-tooltip__arrow[data-v-3bb6995e],
126
+ .rs-tooltip__content[data-side='right'][data-align='start'] .rs-tooltip__arrow[data-v-3bb6995e] {
127
+ top: 0.75rem;
128
+ }
129
+ .rs-tooltip__content[data-side='left'][data-align='end'] .rs-tooltip__arrow[data-v-3bb6995e],
130
+ .rs-tooltip__content[data-side='right'][data-align='end'] .rs-tooltip__arrow[data-v-3bb6995e] {
131
+ top: auto;
132
+ bottom: 0.75rem;
133
+ }
134
+ @media (prefers-reduced-motion: reduce) {
135
+ .rs-tooltip__content[data-v-3bb6995e] {
136
+ transition: none;
137
+ }
138
+ }
@@ -1,43 +1,65 @@
1
+ import { type RsTooltipAlign, type RsTooltipExpose, type RsTooltipGetContainer, type RsTooltipSide } from './tooltip-utils';
1
2
  type __VLS_Props = {
2
3
  content?: string;
3
- side?: 'top' | 'right' | 'bottom' | 'left';
4
- align?: 'start' | 'center' | 'end';
4
+ side?: RsTooltipSide;
5
+ align?: RsTooltipAlign;
5
6
  sideOffset?: number;
6
7
  disabled?: boolean;
7
8
  /**
8
- * 仅键盘 `:focus-visible` 时因焦点打开 tip。
9
- * 默认 true:避免 Dialog/Popover 关闭回焦误开(对齐 Reka 推荐与 RsButton tooltip)。
9
+ * 仅键盘 :focus-visible 时因焦点打开。
10
+ * 不传则跟随 RsTooltipProvider,再没有则为 true。
10
11
  */
11
12
  ignoreNonKeyboardFocus?: boolean;
12
13
  /** 单行展示并按内容撑开宽度(适合集合名等标识符) */
13
14
  nowrap?: boolean;
14
15
  /**
15
- * 业界表单帮助模式:标签后跟小图标,仅图标悬停出提示
16
- *(对齐 Ant Design Form.Item `tooltip` / Element Plus 问号说明)。
16
+ * 标签后跟小图标,只在图标上悬停出提示。
17
+ * 对齐表单帮助:名称在图标的 aria-label,长说明在气泡。
17
18
  */
18
19
  icon?: boolean;
19
- /** 后缀图标名,默认 info(问号/说明圆标;对齐表单帮助惯用) */
20
+ /** 后缀图标名,默认 info */
20
21
  iconName?: string;
21
22
  /** 帮助图标的无障碍名称;缺省用 content,再回退 locale `tooltip.help` */
22
23
  ariaLabel?: string;
24
+ /** 受控显隐。不传则组件自己管。 */
25
+ open?: boolean;
26
+ /** 覆盖 Provider 的悬停延迟(毫秒)。上限 60 秒。 */
27
+ delayDuration?: number;
28
+ /** 指针可以移进气泡选中文字。关掉则离开触发器立即收起。 */
29
+ interactive?: boolean;
30
+ /** 指向触发器的小箭头 */
31
+ arrow?: boolean;
32
+ /** 覆盖 --rs-tooltip-max-width */
33
+ maxWidth?: number | string;
34
+ /** 气泡挂载点。返回空则回到 document.body。 */
35
+ getContainer?: RsTooltipGetContainer;
36
+ /** 气泡元素 id,供 aria-describedby。不传则自动生成。 */
37
+ id?: string;
23
38
  };
24
- declare var __VLS_8: {}, __VLS_27: {}, __VLS_41: {};
39
+ declare var __VLS_1: {}, __VLS_8: {}, __VLS_16: {};
25
40
  type __VLS_Slots = {} & {
26
- default?: (props: typeof __VLS_8) => any;
41
+ default?: (props: typeof __VLS_1) => any;
27
42
  } & {
28
- default?: (props: typeof __VLS_27) => any;
43
+ default?: (props: typeof __VLS_8) => any;
29
44
  } & {
30
- content?: (props: typeof __VLS_41) => any;
45
+ content?: (props: typeof __VLS_16) => any;
31
46
  };
32
- declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
47
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, RsTooltipExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
48
+ openChange: (open: boolean) => any;
49
+ "update:open": (open: boolean) => any;
50
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
51
+ onOpenChange?: ((open: boolean) => any) | undefined;
52
+ "onUpdate:open"?: ((open: boolean) => any) | undefined;
53
+ }>, {
33
54
  icon: boolean;
34
55
  disabled: boolean;
35
56
  iconName: string;
36
- side: "top" | "right" | "bottom" | "left";
37
- sideOffset: number;
38
- align: "start" | "center" | "end";
39
57
  nowrap: boolean;
40
- ignoreNonKeyboardFocus: boolean;
58
+ align: RsTooltipAlign;
59
+ side: RsTooltipSide;
60
+ sideOffset: number;
61
+ interactive: boolean;
62
+ arrow: boolean;
41
63
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
42
64
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
43
65
  declare const _default: typeof __VLS_export;