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
@@ -0,0 +1,84 @@
1
+ import { resolveRsLoadingSkeletonCount } from "./loading-utils.js";
2
+ import { Fragment, computed, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, defineComponent, normalizeClass, openBlock, renderList, renderSlot, toDisplayString } from "vue";
3
+ //#region src/components/loading/src/loading-status.vue?vue&type=script&setup=true&lang.ts
4
+ var _hoisted_1 = ["id", "aria-label"];
5
+ var _hoisted_2 = {
6
+ key: 0,
7
+ class: "rs-loading__label"
8
+ };
9
+ var loading_status_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
10
+ name: "RsLoadingStatus",
11
+ __name: "loading-status",
12
+ props: {
13
+ id: {},
14
+ variant: {},
15
+ size: {},
16
+ tone: {},
17
+ label: {},
18
+ ariaLabel: {},
19
+ showText: {
20
+ type: Boolean,
21
+ default: false
22
+ },
23
+ block: {
24
+ type: Boolean,
25
+ default: false
26
+ },
27
+ overlay: {
28
+ type: Boolean,
29
+ default: false
30
+ },
31
+ fullscreen: {
32
+ type: Boolean,
33
+ default: false
34
+ },
35
+ skeletonCount: {}
36
+ },
37
+ setup(__props) {
38
+ const props = __props;
39
+ const lines = computed(() => Array.from({ length: resolveRsLoadingSkeletonCount(props.skeletonCount) }, (_, index) => index));
40
+ const rootClass = computed(() => [
41
+ "rs-loading",
42
+ `rs-loading--${props.size}`,
43
+ `rs-loading--tone-${props.tone}`,
44
+ {
45
+ "rs-loading--block": props.block,
46
+ "rs-loading--overlay": props.overlay,
47
+ "rs-loading--fullscreen": props.fullscreen
48
+ }
49
+ ]);
50
+ return (_ctx, _cache) => {
51
+ return openBlock(), createElementBlock("div", {
52
+ id: __props.id,
53
+ class: normalizeClass(rootClass.value),
54
+ role: "status",
55
+ "aria-busy": "true",
56
+ "aria-label": __props.ariaLabel
57
+ }, [createElementVNode("div", {
58
+ class: normalizeClass(["rs-loading__mark", { "rs-loading__mark--fill": __props.variant === "skeleton" && !_ctx.$slots.indicator }]),
59
+ "aria-hidden": "true"
60
+ }, [renderSlot(_ctx.$slots, "indicator", {}, () => [__props.variant === "spinner" ? (openBlock(), createElementBlock("span", {
61
+ key: 0,
62
+ class: normalizeClass(["rs-loading__spinner", [`rs-loading__spinner--${__props.size}`, `rs-loading__spinner--${__props.tone}`]])
63
+ }, null, 2)) : __props.variant === "dots" ? (openBlock(), createElementBlock("span", {
64
+ key: 1,
65
+ class: normalizeClass(["rs-loading__dots", `rs-loading__dots--${__props.size}`])
66
+ }, [(openBlock(), createElementBlock(Fragment, null, renderList(3, (dot) => {
67
+ return createElementVNode("span", {
68
+ key: dot,
69
+ class: "rs-loading__dot"
70
+ });
71
+ }), 64))], 2)) : (openBlock(), createElementBlock("div", {
72
+ key: 2,
73
+ class: normalizeClass(["rs-loading__skeleton", `rs-loading__skeleton--${__props.size}`])
74
+ }, [(openBlock(true), createElementBlock(Fragment, null, renderList(lines.value, (line) => {
75
+ return openBlock(), createElementBlock("span", {
76
+ key: line,
77
+ class: "rs-loading__skeleton-line"
78
+ });
79
+ }), 128))], 2))], true)], 2), __props.showText ? (openBlock(), createElementBlock("div", _hoisted_2, [renderSlot(_ctx.$slots, "label", {}, () => [createTextVNode(toDisplayString(__props.label), 1)], true)])) : createCommentVNode("", true)], 10, _hoisted_1);
80
+ };
81
+ }
82
+ });
83
+ //#endregion
84
+ export { loading_status_vue_vue_type_script_setup_true_lang_default as default };
@@ -0,0 +1,8 @@
1
+ import './loading-status.css'
2
+ import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_export-helper.js";
3
+ import loading_status_vue_vue_type_script_setup_true_lang_default from "./loading-status.impl.js";
4
+
5
+ //#region src/components/loading/src/loading-status.vue
6
+ var loading_status_default = /*#__PURE__*/ _plugin_vue_export_helper_default(loading_status_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-3e88a656"]]);
7
+ //#endregion
8
+ export { loading_status_default as default };
@@ -1,6 +1,53 @@
1
- /** 加载指示器尺寸 */
1
+ /** 加载指示器尺寸。不是表单控件四档,不跟 ConfigProvider。 */
2
2
  export type RsLoadingSize = 'sm' | 'md' | 'lg';
3
- /** 加载指示器色调 */
4
- export type RsLoadingTone = 'default' | 'primary';
5
- /** 加载指示器变体 */
3
+ /**
4
+ * 色相。`default` 是旧调用,画面与 `neutral` 相同。
5
+ * 形态仍由 variant 决定。
6
+ */
7
+ export type RsLoadingTone = 'default' | 'neutral' | 'primary' | 'success' | 'warning' | 'danger' | 'info';
8
+ /** 加载指示器形态。 */
6
9
  export type RsLoadingVariant = 'spinner' | 'dots' | 'skeleton';
10
+ /** 骨架行上限,避免一次挂出过多无限动画节点。 */
11
+ export declare const RS_LOADING_SKELETON_MAX = 12;
12
+ /** delay / minDuration 上限(毫秒)。非法值或非有限数视为 0。 */
13
+ export declare const RS_LOADING_MAX_MS = 60000;
14
+ export declare function resolveRsLoadingSize(size?: string | null): RsLoadingSize;
15
+ export declare function resolveRsLoadingTone(tone?: string | null): RsLoadingTone;
16
+ export declare function resolveRsLoadingVariant(variant?: string | null): RsLoadingVariant;
17
+ export declare function resolveRsLoadingSkeletonCount(lines: number | undefined, fallback?: number): number;
18
+ export declare function clampRsLoadingDuration(value: number | undefined): number;
19
+ export type RsLoadingVisibilityPlan = {
20
+ action: 'show';
21
+ shownAt: number;
22
+ } | {
23
+ action: 'hide';
24
+ } | {
25
+ action: 'idle';
26
+ } | {
27
+ action: 'keep';
28
+ } | {
29
+ action: 'wait';
30
+ ms: number;
31
+ then: 'show' | 'hide';
32
+ };
33
+ /**
34
+ * 纯函数:决定指示器现在出现、消失,还是再等一会儿。
35
+ * 组件负责定时器,并在卸载时清掉。
36
+ */
37
+ export declare function planRsLoadingVisibility(input: {
38
+ loading: boolean;
39
+ visible: boolean;
40
+ delayMs: number;
41
+ minDurationMs: number;
42
+ shownAt: number | null;
43
+ now: number;
44
+ }): RsLoadingVisibilityPlan;
45
+ /** 全屏传送目标。非全屏不调用 getContainer。失败或空节点回退 body。 */
46
+ export declare function resolveRsLoadingTeleportTarget(fullscreen: boolean, getContainer?: () => HTMLElement | string | null): string | HTMLElement;
47
+ /**
48
+ * 全屏锁滚动,并暂时挡住页面点击。引用计数,释放函数可重复调用。
49
+ * 不改焦点陷阱。无 document 时返回空操作(SSR)。
50
+ */
51
+ export declare function acquireRsLoadingScrollLock(): () => void;
52
+ /** 单测收尾。生产路径靠释放函数把计数减到 0。 */
53
+ export declare function resetRsLoadingScrollLock(): void;
@@ -0,0 +1,122 @@
1
+ //#region src/components/loading/src/loading-utils.ts
2
+ var SIZES = /* @__PURE__ */ new Set([
3
+ "sm",
4
+ "md",
5
+ "lg"
6
+ ]);
7
+ var TONES = /* @__PURE__ */ new Set([
8
+ "default",
9
+ "neutral",
10
+ "primary",
11
+ "success",
12
+ "warning",
13
+ "danger",
14
+ "info"
15
+ ]);
16
+ var VARIANTS = /* @__PURE__ */ new Set([
17
+ "spinner",
18
+ "dots",
19
+ "skeleton"
20
+ ]);
21
+ /** delay / minDuration 上限(毫秒)。非法值或非有限数视为 0。 */
22
+ var RS_LOADING_MAX_MS = 6e4;
23
+ function resolveRsLoadingSize(size) {
24
+ if (size && SIZES.has(size)) return size;
25
+ return "md";
26
+ }
27
+ function resolveRsLoadingTone(tone) {
28
+ if (tone && TONES.has(tone)) return tone;
29
+ return "primary";
30
+ }
31
+ function resolveRsLoadingVariant(variant) {
32
+ if (variant && VARIANTS.has(variant)) return variant;
33
+ return "spinner";
34
+ }
35
+ function resolveRsLoadingSkeletonCount(lines, fallback = 4) {
36
+ return Math.min(12, Math.max(1, typeof lines === "number" && Number.isFinite(lines) ? Math.floor(lines) : fallback));
37
+ }
38
+ function clampRsLoadingDuration(value) {
39
+ if (typeof value !== "number" || !Number.isFinite(value) || value <= 0) return 0;
40
+ return Math.min(value, RS_LOADING_MAX_MS);
41
+ }
42
+ /**
43
+ * 纯函数:决定指示器现在出现、消失,还是再等一会儿。
44
+ * 组件负责定时器,并在卸载时清掉。
45
+ */
46
+ function planRsLoadingVisibility(input) {
47
+ const delay = clampRsLoadingDuration(input.delayMs);
48
+ const minDuration = clampRsLoadingDuration(input.minDurationMs);
49
+ if (input.loading) {
50
+ if (input.visible) return { action: "keep" };
51
+ if (delay <= 0) return {
52
+ action: "show",
53
+ shownAt: input.now
54
+ };
55
+ return {
56
+ action: "wait",
57
+ ms: delay,
58
+ then: "show"
59
+ };
60
+ }
61
+ if (!input.visible) return { action: "idle" };
62
+ if (input.shownAt == null || minDuration <= 0) return { action: "hide" };
63
+ const remaining = minDuration - (input.now - input.shownAt);
64
+ if (remaining <= 0) return { action: "hide" };
65
+ return {
66
+ action: "wait",
67
+ ms: remaining,
68
+ then: "hide"
69
+ };
70
+ }
71
+ function isElementNode(value) {
72
+ return Boolean(value) && typeof value === "object" && value.nodeType === 1;
73
+ }
74
+ /** 全屏传送目标。非全屏不调用 getContainer。失败或空节点回退 body。 */
75
+ function resolveRsLoadingTeleportTarget(fullscreen, getContainer) {
76
+ if (!fullscreen || !getContainer) return "body";
77
+ try {
78
+ const target = getContainer();
79
+ if (typeof target === "string" && target.trim()) return target;
80
+ if (isElementNode(target)) return target;
81
+ } catch {
82
+ return "body";
83
+ }
84
+ return "body";
85
+ }
86
+ var lockCount = 0;
87
+ var previousOverflow = null;
88
+ var previousPointer = null;
89
+ var previousBusy = null;
90
+ /**
91
+ * 全屏锁滚动,并暂时挡住页面点击。引用计数,释放函数可重复调用。
92
+ * 不改焦点陷阱。无 document 时返回空操作(SSR)。
93
+ */
94
+ function acquireRsLoadingScrollLock() {
95
+ if (typeof document === "undefined" || !document.body) return () => {};
96
+ if (lockCount === 0) {
97
+ previousOverflow = document.body.style.overflow;
98
+ previousPointer = document.body.style.pointerEvents;
99
+ previousBusy = document.documentElement.getAttribute("aria-busy");
100
+ document.body.style.overflow = "hidden";
101
+ document.body.style.pointerEvents = "none";
102
+ document.documentElement.setAttribute("aria-busy", "true");
103
+ }
104
+ lockCount += 1;
105
+ let released = false;
106
+ return () => {
107
+ if (released) return;
108
+ released = true;
109
+ lockCount = Math.max(0, lockCount - 1);
110
+ if (lockCount === 0 && document.body) {
111
+ document.body.style.overflow = previousOverflow ?? "";
112
+ document.body.style.pointerEvents = previousPointer ?? "";
113
+ if (previousBusy == null) document.documentElement.removeAttribute("aria-busy");
114
+ else document.documentElement.setAttribute("aria-busy", previousBusy);
115
+ previousOverflow = null;
116
+ previousPointer = null;
117
+ previousBusy = null;
118
+ }
119
+ };
120
+ }
121
+ //#endregion
122
+ export { RS_LOADING_MAX_MS, acquireRsLoadingScrollLock, clampRsLoadingDuration, planRsLoadingVisibility, resolveRsLoadingSize, resolveRsLoadingSkeletonCount, resolveRsLoadingTeleportTarget, resolveRsLoadingTone, resolveRsLoadingVariant };
@@ -1 +1,2 @@
1
1
  export { default as RsLoadingBar } from './src/RsLoadingBar.js';
2
+ export type { RsLoadingBarAttach, RsLoadingBarExpose, RsLoadingBarInstance, RsLoadingBarPosition, RsLoadingBarTone, } from './src/loading-bar-utils';
@@ -1,19 +1,83 @@
1
1
 
2
- .rs-loading-bar[data-v-98c35618] {
2
+ .rs-loading-bar[data-v-aff2ed50] {
3
3
  position: fixed;
4
- top: 0;
4
+ inset-block-start: 0;
5
5
  inset-inline: 0;
6
6
  z-index: var(--rs-z-loading-bar);
7
+ height: var(--rs-loading-bar-size, 2px);
8
+ overflow: hidden;
7
9
  pointer-events: none;
8
10
  opacity: 0;
9
- transition: opacity 0.2s ease;
11
+ transition: opacity var(--rs-transition-normal);
10
12
  }
11
- .rs-loading-bar--visible[data-v-98c35618] {
13
+ .rs-loading-bar--bottom[data-v-aff2ed50] {
14
+ inset-block-start: auto;
15
+ inset-block-end: 0;
16
+ }
17
+ .rs-loading-bar--parent[data-v-aff2ed50] {
18
+ position: absolute;
19
+ }
20
+ .rs-loading-bar--visible[data-v-aff2ed50] {
12
21
  opacity: 1;
13
22
  }
14
- .rs-loading-bar__peg[data-v-98c35618] {
15
- height: 2px;
23
+ .rs-loading-bar--neutral[data-v-aff2ed50] {
24
+ --rs-loading-bar-color: var(--rs-text-secondary);
25
+ }
26
+ .rs-loading-bar--info[data-v-aff2ed50] {
27
+ --rs-loading-bar-color: var(--rs-info);
28
+ }
29
+ .rs-loading-bar--success[data-v-aff2ed50] {
30
+ --rs-loading-bar-color: var(--rs-success);
31
+ }
32
+ .rs-loading-bar--warning[data-v-aff2ed50] {
33
+ --rs-loading-bar-color: var(--rs-warning);
34
+ }
35
+ .rs-loading-bar--danger[data-v-aff2ed50] {
36
+ --rs-loading-bar-color: var(--rs-danger);
37
+ }
38
+ .rs-loading-bar__peg[data-v-aff2ed50] {
39
+ height: 100%;
40
+ width: var(--rs-loading-bar-progress, 0%);
41
+ background-color: var(--rs-loading-bar-color, var(--rs-primary));
16
42
  transition:
17
- width 0.2s ease,
18
- background-color 0.2s ease;
43
+ width var(--rs-transition-normal),
44
+ background-color var(--rs-transition-normal);
45
+ }
46
+ .rs-loading-bar--error .rs-loading-bar__peg[data-v-aff2ed50] {
47
+ background-color: var(--rs-loading-bar-error, var(--rs-danger));
48
+ }
49
+ .rs-loading-bar--indeterminate .rs-loading-bar__peg[data-v-aff2ed50] {
50
+ position: absolute;
51
+ inset-block: 0;
52
+ width: 38%;
53
+ transition: none;
54
+ animation: rs-loading-bar-slide-aff2ed50 1.15s ease-in-out infinite;
55
+ }
56
+ @keyframes rs-loading-bar-slide-aff2ed50 {
57
+ from {
58
+ inset-inline-start: -40%;
59
+ }
60
+ to {
61
+ inset-inline-start: 100%;
62
+ }
63
+ }
64
+ @media (prefers-reduced-motion: reduce) {
65
+ .rs-loading-bar[data-v-aff2ed50],
66
+ .rs-loading-bar__peg[data-v-aff2ed50] {
67
+ transition: none;
68
+ animation: none;
69
+ }
70
+ .rs-loading-bar--indeterminate .rs-loading-bar__peg[data-v-aff2ed50] {
71
+ width: 100%;
72
+ inset-inline-start: 0;
73
+ }
74
+ }
75
+ @media (forced-colors: active) {
76
+ .rs-loading-bar__peg[data-v-aff2ed50] {
77
+ forced-color-adjust: none;
78
+ background-color: Highlight;
79
+ }
80
+ .rs-loading-bar--error .rs-loading-bar__peg[data-v-aff2ed50] {
81
+ background-color: Mark;
82
+ }
19
83
  }
@@ -1,25 +1,69 @@
1
+ import { type RsLoadingBarAttach, type RsLoadingBarPosition, type RsLoadingBarTone } from './loading-bar-utils';
1
2
  type __VLS_Props = {
2
- /** 受控进度 0-100;未传时由 start/finish/error 驱动 */
3
+ /** 受控进度 0–100。传入后显隐只跟这个值,命令式 API 不再改这条。 */
3
4
  progress?: number;
5
+ /** 条高(px)。默认 2,与 --rs-loading-bar-size 一致;未改默认时不写内联,方便覆盖 token。 */
4
6
  height?: number;
7
+ /** 进度色。未传走 tone / --rs-loading-bar-color。 */
5
8
  color?: string;
9
+ /** 失败色。未传走 --rs-loading-bar-error。 */
6
10
  errorColor?: string;
11
+ /** 色相。color 传入时以 color 为准。 */
12
+ tone?: RsLoadingBarTone;
13
+ /** 贴上沿或下沿。 */
14
+ position?: RsLoadingBarPosition;
15
+ /** viewport 固定在窗口;parent 绝对定位到最近的定位祖先。 */
16
+ attach?: RsLoadingBarAttach;
17
+ /** 是否自动向 maximum 蠕动。 */
18
+ trickle?: boolean;
19
+ /** trickle 间隔(ms)。小于 16 回落 200。 */
20
+ trickleSpeed?: number;
21
+ /** start 的起步进度。 */
22
+ minimum?: number;
23
+ /** trickle 停住的上限,finish 才会到 100。 */
24
+ maximum?: number;
25
+ /** 短请求不闪条。delay 内 finish 则从不显示。0 与历史行为一致。 */
26
+ delay?: number;
27
+ /** finish 后淡出毫秒。 */
28
+ finishDuration?: number;
29
+ /** error 后淡出毫秒。 */
30
+ errorDuration?: number;
31
+ /** 重叠的 start/finish 计数。默认关闭,每次 start 仍会回到 minimum。 */
32
+ nesting?: boolean;
33
+ /** 未知进度:滑动条,不报 aria-valuenow。 */
34
+ indeterminate?: boolean;
35
+ /** 覆盖可访问名称。未传走 loadingBar.label / loadingBar.error。 */
36
+ ariaLabel?: string;
37
+ id?: string;
7
38
  };
8
- declare function start(): void;
9
- declare function finish(): void;
10
- declare function error(): void;
11
39
  declare var __VLS_1: {};
12
40
  type __VLS_Slots = {} & {
13
41
  default?: (props: typeof __VLS_1) => any;
14
42
  };
15
- declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
16
- start: typeof start;
17
- finish: typeof finish;
18
- error: typeof error;
19
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
20
- color: string;
43
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, import("./loading-bar-utils").RsLoadingBarExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
44
+ change: (progress: number) => any;
45
+ error: () => any;
46
+ start: (pending: number) => any;
47
+ finish: (pending: number) => any;
48
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
49
+ onChange?: ((progress: number) => any) | undefined;
50
+ onError?: (() => any) | undefined;
51
+ onStart?: ((pending: number) => any) | undefined;
52
+ onFinish?: ((pending: number) => any) | undefined;
53
+ }>, {
21
54
  height: number;
22
- errorColor: string;
55
+ tone: RsLoadingBarTone;
56
+ indeterminate: boolean;
57
+ position: RsLoadingBarPosition;
58
+ attach: RsLoadingBarAttach;
59
+ trickle: boolean;
60
+ trickleSpeed: number;
61
+ minimum: number;
62
+ maximum: number;
63
+ delay: number;
64
+ finishDuration: number;
65
+ errorDuration: number;
66
+ nesting: boolean;
23
67
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
24
68
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
25
69
  declare const _default: typeof __VLS_export;