niuma-ui 2.0.2 → 2.0.4

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 (242) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/README.md +2 -0
  3. package/README.zh-CN.md +2 -0
  4. package/dist/components/_shared/src/reka.d.ts +1 -1
  5. package/dist/components/_shared/src/reka.js +2 -2
  6. package/dist/components/anchor/index.d.ts +1 -1
  7. package/dist/components/anchor/src/RsAnchor.css +63 -32
  8. package/dist/components/anchor/src/RsAnchor.d.ts +29 -2
  9. package/dist/components/anchor/src/RsAnchor.impl.js +199 -81
  10. package/dist/components/anchor/src/RsAnchor.js +1 -1
  11. package/dist/components/anchor/src/anchor-utils.d.ts +36 -4
  12. package/dist/components/anchor/src/anchor-utils.js +81 -19
  13. package/dist/components/auto-complete/index.d.ts +2 -0
  14. package/dist/components/auto-complete/src/RsAutoComplete.css +122 -0
  15. package/dist/components/auto-complete/src/RsAutoComplete.d.ts +47 -7
  16. package/dist/components/auto-complete/src/RsAutoComplete.impl.js +180 -72
  17. package/dist/components/auto-complete/src/RsAutoComplete.js +4 -1
  18. package/dist/components/auto-complete/src/auto-complete-utils.d.ts +7 -0
  19. package/dist/components/auto-complete/src/auto-complete-utils.js +17 -0
  20. package/dist/components/avatar/index.d.ts +1 -0
  21. package/dist/components/avatar/src/RsAvatar.css +36 -19
  22. package/dist/components/avatar/src/RsAvatar.d.ts +9 -3
  23. package/dist/components/avatar/src/RsAvatar.impl.js +57 -33
  24. package/dist/components/avatar/src/RsAvatar.js +2 -1
  25. package/dist/components/avatar/src/avatar-utils.d.ts +16 -7
  26. package/dist/components/avatar/src/avatar-utils.js +41 -3
  27. package/dist/components/badge/index.d.ts +1 -0
  28. package/dist/components/badge/src/RsBadge.css +61 -8
  29. package/dist/components/badge/src/RsBadge.d.ts +19 -3
  30. package/dist/components/badge/src/RsBadge.impl.js +46 -3
  31. package/dist/components/badge/src/RsBadge.js +1 -1
  32. package/dist/components/badge/src/badge-utils.d.ts +11 -0
  33. package/dist/components/badge/src/badge-utils.js +32 -0
  34. package/dist/components/breadcrumb/index.d.ts +1 -1
  35. package/dist/components/breadcrumb/src/RsBreadcrumb.css +50 -17
  36. package/dist/components/breadcrumb/src/RsBreadcrumb.d.ts +45 -6
  37. package/dist/components/breadcrumb/src/RsBreadcrumb.impl.js +111 -12
  38. package/dist/components/breadcrumb/src/RsBreadcrumb.js +2 -1
  39. package/dist/components/breadcrumb/src/breadcrumb-utils.d.ts +37 -5
  40. package/dist/components/breadcrumb/src/breadcrumb-utils.js +70 -9
  41. package/dist/components/button/src/RsButton.css +87 -71
  42. package/dist/components/button/src/RsButton.d.ts +7 -3
  43. package/dist/components/button/src/RsButton.impl.js +43 -31
  44. package/dist/components/button/src/RsButton.js +1 -1
  45. package/dist/components/button/src/button-utils.d.ts +17 -0
  46. package/dist/components/button/src/button-utils.js +14 -1
  47. package/dist/components/calendar-grid/index.d.ts +2 -0
  48. package/dist/components/calendar-grid/src/RsCalendarGrid.css +105 -45
  49. package/dist/components/calendar-grid/src/RsCalendarGrid.d.ts +62 -2
  50. package/dist/components/calendar-grid/src/RsCalendarGrid.impl.js +265 -94
  51. package/dist/components/calendar-grid/src/RsCalendarGrid.js +1 -1
  52. package/dist/components/calendar-grid/src/calendar-grid-utils.d.ts +72 -0
  53. package/dist/components/calendar-grid/src/calendar-grid-utils.js +122 -0
  54. package/dist/components/card/index.d.ts +1 -1
  55. package/dist/components/card/src/RsCard.css +108 -98
  56. package/dist/components/card/src/RsCard.d.ts +3 -12
  57. package/dist/components/card/src/RsCard.impl.js +29 -25
  58. package/dist/components/card/src/RsCard.js +2 -1
  59. package/dist/components/card/src/card-utils.d.ts +25 -0
  60. package/dist/components/card/src/card-utils.js +10 -0
  61. package/dist/components/cascader/index.d.ts +1 -0
  62. package/dist/components/cascader/src/RsCascader.css +175 -30
  63. package/dist/components/cascader/src/RsCascader.d.ts +14 -2
  64. package/dist/components/cascader/src/RsCascader.impl.js +277 -48
  65. package/dist/components/cascader/src/RsCascader.js +1 -1
  66. package/dist/components/cascader/src/cascader-utils.d.ts +2 -0
  67. package/dist/components/cascader/src/cascader-utils.js +8 -1
  68. package/dist/components/checkbox/index.d.ts +1 -0
  69. package/dist/components/checkbox/src/RsCheckbox.css +46 -23
  70. package/dist/components/checkbox/src/RsCheckbox.d.ts +11 -1
  71. package/dist/components/checkbox/src/RsCheckbox.impl.js +37 -9
  72. package/dist/components/checkbox/src/RsCheckbox.js +2 -1
  73. package/dist/components/checkbox/src/checkbox-utils.d.ts +4 -0
  74. package/dist/components/checkbox/src/checkbox-utils.js +12 -0
  75. package/dist/components/container/index.d.ts +1 -1
  76. package/dist/components/container/src/RsContainer.css +11 -11
  77. package/dist/components/container/src/RsContainer.d.ts +2 -12
  78. package/dist/components/container/src/RsContainer.impl.js +10 -57
  79. package/dist/components/container/src/RsContainer.js +1 -1
  80. package/dist/components/container/src/container-utils.d.ts +23 -0
  81. package/dist/components/container/src/container-utils.js +51 -0
  82. package/dist/components/date-picker/index.d.ts +4 -2
  83. package/dist/components/date-picker/src/RsDatePicker.css +42 -22
  84. package/dist/components/date-picker/src/RsDatePicker.d.ts +44 -20
  85. package/dist/components/date-picker/src/RsDatePicker.impl.js +484 -222
  86. package/dist/components/date-picker/src/RsDatePicker.js +1 -3
  87. package/dist/components/date-picker/src/RsDateTimePicker.d.ts +33 -6
  88. package/dist/components/date-picker/src/RsDateTimePicker.impl.js +47 -6
  89. package/dist/components/date-picker/src/date-picker-utils.d.ts +19 -0
  90. package/dist/components/date-picker/src/date-picker-utils.js +33 -10
  91. package/dist/components/divider/index.d.ts +1 -0
  92. package/dist/components/divider/src/RsDivider.css +37 -22
  93. package/dist/components/divider/src/RsDivider.d.ts +4 -2
  94. package/dist/components/divider/src/RsDivider.impl.js +26 -12
  95. package/dist/components/divider/src/RsDivider.js +1 -1
  96. package/dist/components/divider/src/divider-utils.d.ts +4 -0
  97. package/dist/components/dynamic-tags/index.d.ts +1 -1
  98. package/dist/components/dynamic-tags/src/RsDynamicTags.css +115 -38
  99. package/dist/components/dynamic-tags/src/RsDynamicTags.d.ts +59 -18
  100. package/dist/components/dynamic-tags/src/RsDynamicTags.impl.js +269 -106
  101. package/dist/components/dynamic-tags/src/RsDynamicTags.js +1 -1
  102. package/dist/components/dynamic-tags/src/dynamic-tags-utils.d.ts +19 -0
  103. package/dist/components/dynamic-tags/src/dynamic-tags-utils.js +60 -0
  104. package/dist/components/fieldset/src/RsFieldset.css +71 -41
  105. package/dist/components/fieldset/src/RsFieldset.d.ts +21 -2
  106. package/dist/components/fieldset/src/RsFieldset.impl.js +93 -26
  107. package/dist/components/fieldset/src/RsFieldset.js +1 -1
  108. package/dist/components/fieldset/src/fieldset-utils.d.ts +4 -0
  109. package/dist/components/fieldset/src/fieldset-utils.js +9 -1
  110. package/dist/components/form/index.d.ts +1 -0
  111. package/dist/components/form/src/RsForm.css +15 -12
  112. package/dist/components/form/src/RsForm.d.ts +20 -22
  113. package/dist/components/form/src/RsForm.impl.js +33 -20
  114. package/dist/components/form/src/RsForm.js +1 -1
  115. package/dist/components/form/src/form-utils.d.ts +7 -0
  116. package/dist/components/form/src/form-utils.js +28 -1
  117. package/dist/components/icon/src/RsIcon.css +9 -4
  118. package/dist/components/icon/src/RsIcon.d.ts +4 -3
  119. package/dist/components/icon/src/RsIcon.impl.js +9 -32
  120. package/dist/components/icon/src/RsIcon.js +1 -1
  121. package/dist/components/icon/src/icon-utils.d.ts +17 -0
  122. package/dist/components/icon/src/icon-utils.js +39 -0
  123. package/dist/components/input/index.d.ts +1 -1
  124. package/dist/components/input/src/RsInput.css +78 -260
  125. package/dist/components/input/src/RsInput.d.ts +5 -3
  126. package/dist/components/input/src/RsInput.impl.js +8 -16
  127. package/dist/components/input/src/RsInput.js +1 -1
  128. package/dist/components/input/src/input-utils.d.ts +11 -0
  129. package/dist/components/input/src/input-utils.js +22 -0
  130. package/dist/components/input-number/index.d.ts +1 -0
  131. package/dist/components/input-number/src/RsInputNumber.css +31 -31
  132. package/dist/components/input-number/src/RsInputNumber.d.ts +15 -13
  133. package/dist/components/input-number/src/RsInputNumber.impl.js +17 -4
  134. package/dist/components/input-number/src/RsInputNumber.js +1 -1
  135. package/dist/components/label/src/RsLabel.css +30 -11
  136. package/dist/components/label/src/RsLabel.d.ts +18 -1
  137. package/dist/components/label/src/RsLabel.impl.js +63 -10
  138. package/dist/components/label/src/RsLabel.js +1 -1
  139. package/dist/components/label/src/label-utils.d.ts +6 -0
  140. package/dist/components/label/src/label-utils.js +16 -0
  141. package/dist/components/link/index.d.ts +1 -0
  142. package/dist/components/link/src/RsLink.css +58 -17
  143. package/dist/components/link/src/RsLink.d.ts +12 -4
  144. package/dist/components/link/src/RsLink.impl.js +26 -25
  145. package/dist/components/link/src/RsLink.js +2 -1
  146. package/dist/components/link/src/link-utils.d.ts +9 -0
  147. package/dist/components/link/src/link-utils.js +15 -0
  148. package/dist/components/loading/src/RsLoading.d.ts +2 -2
  149. package/dist/components/mentions/index.d.ts +2 -1
  150. package/dist/components/mentions/src/RsMentions.css +119 -3
  151. package/dist/components/mentions/src/RsMentions.d.ts +56 -4
  152. package/dist/components/mentions/src/RsMentions.impl.js +298 -79
  153. package/dist/components/mentions/src/RsMentions.js +1 -3
  154. package/dist/components/mentions/src/mentions-utils.d.ts +5 -1
  155. package/dist/components/mentions/src/mentions-utils.js +28 -9
  156. package/dist/components/popover/src/RsPopover.d.ts +1 -1
  157. package/dist/components/radio/index.d.ts +1 -1
  158. package/dist/components/radio/src/RsRadio.css +7 -6
  159. package/dist/components/radio/src/RsRadio.d.ts +8 -5
  160. package/dist/components/radio/src/RsRadio.impl.js +34 -24
  161. package/dist/components/radio/src/RsRadio.js +2 -1
  162. package/dist/components/radio/src/RsRadioItem.css +61 -44
  163. package/dist/components/radio/src/RsRadioItem.d.ts +2 -2
  164. package/dist/components/radio/src/RsRadioItem.impl.js +53 -20
  165. package/dist/components/radio/src/RsRadioItem.js +2 -1
  166. package/dist/components/radio/src/radio-utils.d.ts +12 -1
  167. package/dist/components/radio/src/radio-utils.js +15 -1
  168. package/dist/components/scrollbar/src/RsScrollbar.css +71 -24
  169. package/dist/components/scrollbar/src/RsScrollbar.d.ts +9 -5
  170. package/dist/components/scrollbar/src/RsScrollbar.impl.js +372 -47
  171. package/dist/components/scrollbar/src/RsScrollbar.js +2 -1
  172. package/dist/components/scrollbar/src/scrollbar-utils.d.ts +34 -2
  173. package/dist/components/scrollbar/src/scrollbar-utils.js +64 -1
  174. package/dist/components/select/index.d.ts +1 -0
  175. package/dist/components/select/src/RsSelect.css +54 -42
  176. package/dist/components/select/src/RsSelect.d.ts +19 -2
  177. package/dist/components/select/src/RsSelect.impl.js +727 -312
  178. package/dist/components/select/src/RsSelect.js +1 -1
  179. package/dist/components/select/src/select-utils.d.ts +4 -2
  180. package/dist/components/select/src/select-utils.js +8 -3
  181. package/dist/components/select/src/use-rs-select.d.ts +1 -0
  182. package/dist/components/select/src/use-rs-select.js +23 -17
  183. package/dist/components/switch/index.d.ts +2 -1
  184. package/dist/components/switch/src/RsSwitch.css +36 -18
  185. package/dist/components/switch/src/RsSwitch.d.ts +18 -5
  186. package/dist/components/switch/src/RsSwitch.impl.js +61 -29
  187. package/dist/components/switch/src/RsSwitch.js +2 -1
  188. package/dist/components/switch/src/switch-utils.d.ts +4 -0
  189. package/dist/components/switch/src/switch-utils.js +9 -0
  190. package/dist/components/tag/index.d.ts +1 -1
  191. package/dist/components/tag/src/RsTag.css +42 -38
  192. package/dist/components/tag/src/RsTag.d.ts +3 -2
  193. package/dist/components/tag/src/RsTag.impl.js +18 -9
  194. package/dist/components/tag/src/RsTag.js +1 -1
  195. package/dist/components/tag/src/tag-utils.d.ts +8 -0
  196. package/dist/components/terminal/src/RsTerminal.d.ts +1 -1
  197. package/dist/components/textarea/src/RsTextarea.css +23 -23
  198. package/dist/components/textarea/src/RsTextarea.d.ts +6 -12
  199. package/dist/components/textarea/src/RsTextarea.impl.js +37 -46
  200. package/dist/components/textarea/src/RsTextarea.js +1 -1
  201. package/dist/components/textarea/src/textarea-utils.d.ts +27 -0
  202. package/dist/components/textarea/src/textarea-utils.js +61 -0
  203. package/dist/components/time-picker/index.d.ts +3 -2
  204. package/dist/components/time-picker/src/RsTimePicker.css +41 -24
  205. package/dist/components/time-picker/src/RsTimePicker.d.ts +52 -7
  206. package/dist/components/time-picker/src/RsTimePicker.impl.js +520 -156
  207. package/dist/components/time-picker/src/RsTimePicker.js +1 -3
  208. package/dist/components/time-picker/src/RsTimePickerColumns.css +26 -18
  209. package/dist/components/time-picker/src/RsTimePickerColumns.d.ts +3 -1
  210. package/dist/components/time-picker/src/RsTimePickerColumns.impl.js +62 -9
  211. package/dist/components/time-picker/src/RsTimePickerColumns.js +1 -1
  212. package/dist/components/time-picker/src/time-picker-utils.d.ts +38 -0
  213. package/dist/components/time-picker/src/time-picker-utils.js +97 -5
  214. package/dist/components/toaster/src/RsToaster.d.ts +1 -1
  215. package/dist/components/tooltip/src/RsTooltip.d.ts +1 -1
  216. package/dist/components/tree/src/RsTree.d.ts +3 -3
  217. package/dist/components/tree-select/index.d.ts +2 -0
  218. package/dist/components/tree-select/src/RsTreeSelect.css +100 -25
  219. package/dist/components/tree-select/src/RsTreeSelect.d.ts +91 -7
  220. package/dist/components/tree-select/src/RsTreeSelect.impl.js +464 -79
  221. package/dist/components/tree-select/src/RsTreeSelect.js +1 -1
  222. package/dist/components/tree-select/src/tree-select-utils.d.ts +20 -0
  223. package/dist/components/tree-select/src/tree-select-utils.js +60 -0
  224. package/dist/components/upload/index.d.ts +2 -1
  225. package/dist/components/upload/src/RsUpload.css +223 -75
  226. package/dist/components/upload/src/RsUpload.d.ts +77 -1
  227. package/dist/components/upload/src/RsUpload.impl.js +404 -90
  228. package/dist/components/upload/src/RsUpload.js +1 -1
  229. package/dist/components/upload/src/upload-utils.d.ts +21 -2
  230. package/dist/components/upload/src/upload-utils.js +139 -9
  231. package/dist/index.d.ts +24 -11
  232. package/dist/index.js +6 -0
  233. package/dist/locale/messages.js +46 -2
  234. package/dist/styles.css +518 -154
  235. package/dist/theme/brand.example.css +1 -1
  236. package/package.json +9 -8
  237. package/dist/components/breadcrumb/src/RsBreadcrumbItems.d.ts +0 -8
  238. package/dist/components/breadcrumb/src/RsBreadcrumbItems.impl.js +0 -40
  239. package/dist/components/breadcrumb/src/RsBreadcrumbItems.js +0 -5
  240. package/dist/components/date-picker/src/RsDatePicker-1.css +0 -157
  241. package/dist/components/mentions/src/RsMentions-1.css +0 -29
  242. package/dist/components/time-picker/src/RsTimePicker-1.css +0 -98
@@ -1,10 +1,8 @@
1
1
  import './RsDatePicker.css'
2
- import './RsDatePicker-1.css'
3
2
  import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_export-helper.js";
4
3
  import RsDatePicker_vue_vue_type_script_setup_true_lang_default from "./RsDatePicker.impl.js";
5
4
 
6
-
7
5
  //#region src/components/date-picker/src/RsDatePicker.vue
8
- var RsDatePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsDatePicker_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-816760df"]]);
6
+ var RsDatePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsDatePicker_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-e481c787"]]);
9
7
  //#endregion
10
8
  export { RsDatePicker_default as default };
@@ -1,9 +1,15 @@
1
- import type { RsComponentSize } from '../../../theme/types';
2
- import type { RsDatePickerModelValue, RsDatePickerShortcut, RsDatePickerValueFormat, RsDateRangeValue } from './date-picker-utils';
1
+ import { type RsDatePickerExpose, type RsDatePickerLabelPosition } from './RsDatePicker.js';
2
+ import type { RsComponentSize, RsRadius } from '../../../theme/types';
3
+ import type { RsDatePickerDisabledDate, RsDatePickerGetPopupContainer, RsDatePickerModelValue, RsDatePickerShortcut, RsDatePickerValueFormat, RsDateRangeValue, RsWeekStartsOn } from './date-picker-utils';
3
4
  export type RsDateTimeRangeValue = RsDateRangeValue;
4
- export type RsDateTimePickerLabelPosition = 'top' | 'left';
5
- export type { RsDatePickerModelValue, RsDatePickerShortcut, RsDatePickerValueFormat, };
5
+ export type RsDateTimePickerLabelPosition = RsDatePickerLabelPosition;
6
+ export type { RsDatePickerDisabledDate, RsDatePickerGetPopupContainer, RsDatePickerModelValue, RsDatePickerShortcut, RsDatePickerValueFormat, RsWeekStartsOn, };
7
+ export type RsDateTimePickerExpose = RsDatePickerExpose;
8
+ export type RsDateTimePickerInstance = RsDateTimePickerExpose & {
9
+ $el: HTMLElement;
10
+ };
6
11
  type __VLS_Props = {
12
+ name?: string;
7
13
  label?: string;
8
14
  hint?: string;
9
15
  placeholder?: string;
@@ -14,33 +20,54 @@ type __VLS_Props = {
14
20
  minDate?: string;
15
21
  maxDate?: string;
16
22
  /**
17
- * 绑定值格式(展示仍为墙钟)。
23
+ * 绑定值格式(展示仍为墙钟,除非另传 format)。
18
24
  * string:YYYY-MM-DD HH:mm:ss;timestamp:毫秒;iso:本地偏移 RFC3339;
19
25
  * 亦可传入 dayjs 模板。
20
26
  */
21
27
  valueFormat?: RsDatePickerValueFormat;
28
+ format?: string;
22
29
  labelPosition?: RsDateTimePickerLabelPosition;
23
30
  shortcuts?: RsDatePickerShortcut[];
24
31
  size?: RsComponentSize;
32
+ radius?: RsRadius;
25
33
  id?: string;
26
34
  invalid?: boolean;
27
35
  showValidateMessage?: boolean;
36
+ clearable?: boolean;
37
+ readonly?: boolean;
38
+ ariaLabel?: string;
39
+ weekStartsOn?: RsWeekStartsOn;
40
+ disabledDates?: string[];
41
+ disabledDate?: RsDatePickerDisabledDate;
42
+ getPopupContainer?: RsDatePickerGetPopupContainer;
28
43
  };
29
44
  type __VLS_ModelProps = {
30
45
  modelValue?: RsDatePickerModelValue;
31
46
  'open'?: boolean;
32
47
  };
33
48
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
34
- declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
49
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, RsDatePickerExpose, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
50
+ change: (value: RsDatePickerModelValue) => any;
51
+ blur: () => any;
52
+ focus: () => any;
53
+ clear: () => any;
35
54
  "update:modelValue": (value: RsDatePickerModelValue) => any;
36
55
  "update:open": (value: boolean) => any;
56
+ openChange: (open: boolean) => any;
37
57
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
58
+ onChange?: ((value: RsDatePickerModelValue) => any) | undefined;
59
+ onBlur?: (() => any) | undefined;
60
+ onFocus?: (() => any) | undefined;
61
+ onClear?: (() => any) | undefined;
38
62
  "onUpdate:modelValue"?: ((value: RsDatePickerModelValue) => any) | undefined;
39
63
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
64
+ onOpenChange?: ((open: boolean) => any) | undefined;
40
65
  }>, {
41
66
  required: boolean;
42
67
  disabled: boolean;
43
68
  range: boolean;
69
+ readonly: boolean;
70
+ clearable: boolean;
44
71
  showValidateMessage: boolean;
45
72
  labelPosition: RsDateTimePickerLabelPosition;
46
73
  withSeconds: boolean;
@@ -1,9 +1,11 @@
1
1
  import RsDatePicker_default from "./RsDatePicker.js";
2
- import { createBlock, defineComponent, mergeModels, mergeProps, openBlock, useModel } from "vue";
2
+ import { createBlock, defineComponent, mergeModels, mergeProps, openBlock, useModel, useTemplateRef } from "vue";
3
3
  //#region src/components/date-picker/src/RsDateTimePicker.vue?vue&type=script&setup=true&lang.ts
4
4
  var RsDateTimePicker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
5
+ name: "RsDateTimePicker",
5
6
  __name: "RsDateTimePicker",
6
7
  props: /*@__PURE__*/ mergeModels({
8
+ name: {},
7
9
  label: {},
8
10
  hint: {},
9
11
  placeholder: {},
@@ -26,15 +28,30 @@ var RsDateTimePicker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
26
28
  minDate: {},
27
29
  maxDate: {},
28
30
  valueFormat: { default: "string" },
31
+ format: {},
29
32
  labelPosition: { default: "top" },
30
33
  shortcuts: {},
31
34
  size: {},
35
+ radius: {},
32
36
  id: {},
33
37
  invalid: { type: Boolean },
34
38
  showValidateMessage: {
35
39
  type: Boolean,
36
40
  default: true
37
- }
41
+ },
42
+ clearable: {
43
+ type: Boolean,
44
+ default: false
45
+ },
46
+ readonly: {
47
+ type: Boolean,
48
+ default: false
49
+ },
50
+ ariaLabel: {},
51
+ weekStartsOn: {},
52
+ disabledDates: {},
53
+ disabledDate: {},
54
+ getPopupContainer: {}
38
55
  }, {
39
56
  "modelValue": { default: "" },
40
57
  "modelModifiers": {},
@@ -44,19 +61,43 @@ var RsDateTimePicker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
44
61
  },
45
62
  "openModifiers": {}
46
63
  }),
47
- emits: ["update:modelValue", "update:open"],
48
- setup(__props) {
64
+ emits: /*@__PURE__*/ mergeModels([
65
+ "change",
66
+ "openChange",
67
+ "clear",
68
+ "focus",
69
+ "blur"
70
+ ], ["update:modelValue", "update:open"]),
71
+ setup(__props, { expose: __expose, emit: __emit }) {
49
72
  const model = useModel(__props, "modelValue");
50
73
  const open = useModel(__props, "open");
74
+ const pickerRef = useTemplateRef("pickerRef");
75
+ const emit = __emit;
76
+ __expose({
77
+ setValue: (value) => pickerRef.value?.setValue(value),
78
+ clearValidation: () => pickerRef.value?.clearValidation(),
79
+ setError: (message) => pickerRef.value?.setError(message),
80
+ validate: (trigger) => pickerRef.value?.validate(trigger) ?? Promise.resolve({ valid: true }),
81
+ focus: () => pickerRef.value?.focus(),
82
+ blur: () => pickerRef.value?.blur()
83
+ });
51
84
  return (_ctx, _cache) => {
52
- return openBlock(), createBlock(RsDatePicker_default, mergeProps(_ctx.$props, {
85
+ return openBlock(), createBlock(RsDatePicker_default, mergeProps({
86
+ ref_key: "pickerRef",
87
+ ref: pickerRef
88
+ }, _ctx.$props, {
53
89
  modelValue: model.value,
54
90
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
55
91
  open: open.value,
56
92
  "onUpdate:open": _cache[1] || (_cache[1] = ($event) => open.value = $event),
57
93
  "with-time": "",
58
94
  "with-seconds": __props.withSeconds,
59
- "value-format": __props.valueFormat
95
+ "value-format": __props.valueFormat,
96
+ onChange: _cache[2] || (_cache[2] = ($event) => emit("change", $event)),
97
+ onOpenChange: _cache[3] || (_cache[3] = ($event) => emit("openChange", $event)),
98
+ onClear: _cache[4] || (_cache[4] = ($event) => emit("clear")),
99
+ onFocus: _cache[5] || (_cache[5] = ($event) => emit("focus")),
100
+ onBlur: _cache[6] || (_cache[6] = ($event) => emit("blur"))
60
101
  }), null, 16, [
61
102
  "modelValue",
62
103
  "open",
@@ -112,4 +112,23 @@ export declare function isDateWithinBounds(year: number, month: number, day: num
112
112
  maxDate?: string;
113
113
  }): boolean;
114
114
  export declare function isDateRangeEmpty(value: RsDateRangeValue): boolean;
115
+ /** 一周从哪一天起:0 = 周日 … 6 = 周六,对齐 JS `Date.getDay()`。 */
116
+ export type RsWeekStartsOn = 0 | 1 | 2 | 3 | 4 | 5 | 6;
117
+ /** 禁用某一天。入参是墙钟年月日,不是 Date 对象。 */
118
+ export type RsDatePickerDisabledDate = (date: RsParsedDate) => boolean;
119
+ /** 把面板挂到何处。未传则 `body`。 */
120
+ export type RsDatePickerGetPopupContainer = (trigger?: HTMLElement) => HTMLElement | string | undefined;
121
+ /**
122
+ * 解析一周起始日。显式 `weekStartsOn` 优先;否则读 `Intl.Locale` weekInfo;
123
+ * 再按语言回退(en-US / en-CA / ja 周日,其它周一)。SSR 无 Intl.Locale 时回退周一。
124
+ */
125
+ export declare function resolveWeekStartsOn(locale: string, override?: number | null): RsWeekStartsOn;
126
+ /**
127
+ * 触发器展示文案。`format` 是 dayjs 模板;未传则墙钟 `YYYY-MM-DD` / `YYYY-MM-DD HH:mm:ss`。
128
+ */
129
+ export declare function formatPickerDisplay(value: string | undefined, options?: {
130
+ format?: string;
131
+ withTime?: boolean;
132
+ }): string;
133
+ export declare function resolveDatePickerPortalTarget(getPopupContainer: RsDatePickerGetPopupContainer | undefined, trigger?: HTMLElement | null): string | HTMLElement;
115
134
  export declare function buildCalendarGrid(year: number, month: number, weekStartsOn?: number): RsCalendarCell[];
@@ -160,15 +160,6 @@ function formatDateDisplay(value) {
160
160
  function formatDateTimeDisplay(value) {
161
161
  return formatDateTimeValue(value);
162
162
  }
163
- function formatDateRangeLabel(range, separator = " ~ ") {
164
- return formatDateRangeDisplay(range, { separator });
165
- }
166
- function formatDateTimeRangeLabel(range, separator = " ~ ") {
167
- return formatDateRangeDisplay(range, {
168
- separator,
169
- datetime: true
170
- });
171
- }
172
163
  function getTodayDate() {
173
164
  const today = dayjs();
174
165
  return {
@@ -233,6 +224,38 @@ function isDateWithinBounds(year, month, day, options = {}) {
233
224
  function isDateRangeEmpty(value) {
234
225
  return !value.start && !value.end;
235
226
  }
227
+ /**
228
+ * 解析一周起始日。显式 `weekStartsOn` 优先;否则读 `Intl.Locale` weekInfo;
229
+ * 再按语言回退(en-US / en-CA / ja 周日,其它周一)。SSR 无 Intl.Locale 时回退周一。
230
+ */
231
+ function resolveWeekStartsOn(locale, override) {
232
+ if (override != null && override >= 0 && override <= 6) return override;
233
+ try {
234
+ const withWeek = new Intl.Locale(locale);
235
+ const info = withWeek.weekInfo ?? withWeek.getWeekInfo?.();
236
+ if (info?.firstDay != null) {
237
+ const day = info.firstDay === 7 ? 0 : info.firstDay;
238
+ if (day >= 0 && day <= 6) return day;
239
+ }
240
+ } catch {}
241
+ const tag = locale.toLowerCase();
242
+ if (tag.startsWith("en-us") || tag.startsWith("en-ca") || tag.startsWith("ja")) return 0;
243
+ return 1;
244
+ }
245
+ /**
246
+ * 触发器展示文案。`format` 是 dayjs 模板;未传则墙钟 `YYYY-MM-DD` / `YYYY-MM-DD HH:mm:ss`。
247
+ */
248
+ function formatPickerDisplay(value, options) {
249
+ if (!value) return "";
250
+ if (!options?.format) return options?.withTime ? formatDateTimeDisplay(value) : formatDateDisplay(value);
251
+ const parsed = parseRsDateTimeDayjs(value) ?? parseRsDayjs(value);
252
+ return parsed ? parsed.format(options.format) : value;
253
+ }
254
+ function resolveDatePickerPortalTarget(getPopupContainer, trigger) {
255
+ if (typeof document === "undefined") return "body";
256
+ if (!getPopupContainer) return "body";
257
+ return getPopupContainer(trigger ?? void 0) ?? "body";
258
+ }
236
259
  function buildCalendarGrid(year, month, weekStartsOn = 1) {
237
260
  const daysInMonth = getDaysInMonth(year, month);
238
261
  const leading = (dayjs().year(year).month(month - 1).date(1).day() - weekStartsOn + 7) % 7;
@@ -267,4 +290,4 @@ function buildCalendarGrid(year, month, weekStartsOn = 1) {
267
290
  return cells;
268
291
  }
269
292
  //#endregion
270
- export { EMPTY_DATE_RANGE, RS_DATE_PICKER_VALUE_FORMAT_PRESETS, buildCalendarGrid, compareDates, dateToNumber, extractTimeFromDateTime, formatDateDisplay, formatDateParts, formatDateRangeDisplay, formatDateRangeLabel, formatDateTimeDisplay, formatDateTimeParts, formatDateTimeRangeLabel, formatDateTimeValue, formatDateValue, formatTimestampValue, fromInternalPickerValue, getDaysInMonth, getNextMonth, getNowDateTime, getTodayDate, isDateBetweenParsed, isDateRangeEmpty, isDateRangeOrdered, isDateTimeRangeOrdered, isDateWithinBounds, isSameDate, isTimestampRange, normalizeShortcutValue, parseDateTimeValue, parseDateToNumber, parseDateValue, parseTimestampValue, toInternalPickerValue, toRangeEndpointString };
293
+ export { EMPTY_DATE_RANGE, RS_DATE_PICKER_VALUE_FORMAT_PRESETS, buildCalendarGrid, compareDates, dateToNumber, extractTimeFromDateTime, formatDateDisplay, formatDateParts, formatDateRangeDisplay, formatDateTimeDisplay, formatDateTimeParts, formatDateTimeValue, formatDateValue, formatPickerDisplay, formatTimestampValue, fromInternalPickerValue, getDaysInMonth, getNextMonth, getNowDateTime, getTodayDate, isDateBetweenParsed, isDateRangeEmpty, isDateRangeOrdered, isDateTimeRangeOrdered, isDateWithinBounds, isSameDate, isTimestampRange, normalizeShortcutValue, parseDateTimeValue, parseDateToNumber, parseDateValue, parseTimestampValue, resolveDatePickerPortalTarget, resolveWeekStartsOn, toInternalPickerValue, toRangeEndpointString };
@@ -1 +1,2 @@
1
1
  export { default as RsDivider } from './src/RsDivider.js';
2
+ export type { RsDividerOrientation } from './src/divider-utils';
@@ -1,51 +1,66 @@
1
1
 
2
- .rs-divider[data-v-f0cd895b] {
2
+ .rs-divider[data-v-489327cb] {
3
+ --rs-divider-color: var(--rs-border);
4
+ --rs-divider-width: 1px;
5
+ --rs-divider-gap: var(--rs-space-md);
3
6
  flex-shrink: 0;
4
7
  box-sizing: border-box;
5
8
  border: 0;
6
9
  background: transparent;
7
10
  }
8
- .rs-divider--horizontal[data-v-f0cd895b] {
11
+ .rs-divider--horizontal[data-v-489327cb] {
9
12
  display: flex;
10
13
  align-items: center;
11
14
  width: 100%;
12
- margin: var(--rs-space-md) 0;
15
+ margin-block: var(--rs-divider-gap);
16
+ margin-inline: 0;
13
17
  }
14
- .rs-divider--horizontal[data-v-f0cd895b]:not(.rs-divider--with-label)::before {
15
- content: '';
18
+ hr.rs-divider--horizontal[data-v-489327cb] {
16
19
  display: block;
17
- width: 100%;
18
- border-top: 1px solid var(--rs-border);
20
+ height: 0;
21
+ border-block-start: var(--rs-divider-width) solid var(--rs-divider-color);
19
22
  }
20
- .rs-divider--horizontal.rs-divider--dashed[data-v-f0cd895b]:not(.rs-divider--with-label)::before {
21
- border-top-style: dashed;
23
+ hr.rs-divider--horizontal.rs-divider--dashed[data-v-489327cb] {
24
+ border-block-start-style: dashed;
22
25
  }
23
- .rs-divider--horizontal.rs-divider--with-label[data-v-f0cd895b]::before,
24
- .rs-divider--horizontal.rs-divider--with-label[data-v-f0cd895b]::after {
26
+ .rs-divider--horizontal.rs-divider--with-label[data-v-489327cb]::before,
27
+ .rs-divider--horizontal.rs-divider--with-label[data-v-489327cb]::after {
25
28
  content: '';
26
29
  flex: 1 1 auto;
27
- border-top: 1px solid var(--rs-border);
30
+ border-block-start: var(--rs-divider-width) solid var(--rs-divider-color);
28
31
  }
29
- .rs-divider--horizontal.rs-divider--dashed.rs-divider--with-label[data-v-f0cd895b]::before,
30
- .rs-divider--horizontal.rs-divider--dashed.rs-divider--with-label[data-v-f0cd895b]::after {
31
- border-top-style: dashed;
32
+ .rs-divider--horizontal.rs-divider--dashed.rs-divider--with-label[data-v-489327cb]::before,
33
+ .rs-divider--horizontal.rs-divider--dashed.rs-divider--with-label[data-v-489327cb]::after {
34
+ border-block-start-style: dashed;
32
35
  }
33
- .rs-divider__label[data-v-f0cd895b] {
36
+ .rs-divider__label[data-v-489327cb] {
34
37
  flex-shrink: 0;
35
- padding: 0 var(--rs-space-md);
38
+ padding-block: 0;
39
+ padding-inline: var(--rs-divider-gap);
36
40
  font-size: var(--rs-font-size-xs);
37
- color: var(--rs-muted);
41
+ color: var(--rs-text-secondary);
38
42
  white-space: nowrap;
39
43
  }
40
- .rs-divider--vertical[data-v-f0cd895b] {
44
+ .rs-divider--vertical[data-v-489327cb] {
41
45
  display: inline-block;
42
46
  align-self: stretch;
43
47
  width: 0;
44
48
  min-height: 1em;
45
- margin: 0 var(--rs-space-md);
46
- border-inline-start: 1px solid var(--rs-border);
49
+ margin-block: 0;
50
+ margin-inline: var(--rs-divider-gap);
51
+ border-inline-start: var(--rs-divider-width) solid var(--rs-divider-color);
47
52
  vertical-align: middle;
48
53
  }
49
- .rs-divider--vertical.rs-divider--dashed[data-v-f0cd895b] {
54
+ .rs-divider--vertical.rs-divider--dashed[data-v-489327cb] {
50
55
  border-inline-start-style: dashed;
51
56
  }
57
+ @media (forced-colors: active) {
58
+ hr.rs-divider--horizontal[data-v-489327cb],
59
+ .rs-divider--horizontal.rs-divider--with-label[data-v-489327cb]::before,
60
+ .rs-divider--horizontal.rs-divider--with-label[data-v-489327cb]::after {
61
+ border-block-start-color: CanvasText;
62
+ }
63
+ .rs-divider--vertical[data-v-489327cb] {
64
+ border-inline-start-color: CanvasText;
65
+ }
66
+ }
@@ -1,5 +1,7 @@
1
+ import { type RsDividerOrientation } from './divider-utils';
2
+ export type { RsDividerOrientation };
1
3
  type __VLS_Props = {
2
- orientation?: 'horizontal' | 'vertical';
4
+ orientation?: RsDividerOrientation;
3
5
  dashed?: boolean;
4
6
  };
5
7
  declare var __VLS_1: {};
@@ -7,7 +9,7 @@ type __VLS_Slots = {} & {
7
9
  default?: (props: typeof __VLS_1) => any;
8
10
  };
9
11
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
10
- orientation: "horizontal" | "vertical";
12
+ orientation: RsDividerOrientation;
11
13
  dashed: boolean;
12
14
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
15
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1,11 +1,9 @@
1
- import { createCommentVNode, createElementBlock, defineComponent, normalizeClass, openBlock, renderSlot } from "vue";
1
+ import { computed, createElementBlock, createElementVNode, defineComponent, normalizeClass, openBlock, renderSlot, unref, useId, useSlots } from "vue";
2
2
  //#region src/components/divider/src/RsDivider.vue?vue&type=script&setup=true&lang.ts
3
3
  var _hoisted_1 = ["aria-orientation"];
4
- var _hoisted_2 = {
5
- key: 0,
6
- class: "rs-divider__label"
7
- };
4
+ var _hoisted_2 = ["id"];
8
5
  var RsDivider_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
6
+ name: "RsDivider",
9
7
  __name: "RsDivider",
10
8
  props: {
11
9
  orientation: { default: "horizontal" },
@@ -15,15 +13,31 @@ var RsDivider_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ define
15
13
  }
16
14
  },
17
15
  setup(__props) {
16
+ const props = __props;
17
+ const slots = useSlots();
18
+ const labelId = useId();
19
+ const hasSlot = computed(() => Boolean(slots.default));
20
+ const showLabel = computed(() => hasSlot.value && props.orientation === "horizontal");
21
+ const rootClass = computed(() => [
22
+ "rs-divider",
23
+ `rs-divider--${props.orientation}`,
24
+ {
25
+ "rs-divider--dashed": props.dashed,
26
+ "rs-divider--with-label": hasSlot.value
27
+ }
28
+ ]);
18
29
  return (_ctx, _cache) => {
19
- return openBlock(), createElementBlock("div", {
20
- class: normalizeClass(["rs-divider", [`rs-divider--${__props.orientation}`, {
21
- "rs-divider--dashed": __props.dashed,
22
- "rs-divider--with-label": _ctx.$slots.default
23
- }]]),
24
- role: "separator",
30
+ return !showLabel.value ? (openBlock(), createElementBlock("hr", {
31
+ key: 0,
32
+ class: normalizeClass(rootClass.value),
25
33
  "aria-orientation": __props.orientation
26
- }, [_ctx.$slots.default && __props.orientation === "horizontal" ? (openBlock(), createElementBlock("span", _hoisted_2, [renderSlot(_ctx.$slots, "default", {}, void 0, true)])) : createCommentVNode("", true)], 10, _hoisted_1);
34
+ }, null, 10, _hoisted_1)) : (openBlock(), createElementBlock("div", {
35
+ key: 1,
36
+ class: normalizeClass(rootClass.value)
37
+ }, [createElementVNode("span", {
38
+ id: unref(labelId),
39
+ class: "rs-divider__label"
40
+ }, [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 8, _hoisted_2)], 2));
27
41
  };
28
42
  }
29
43
  });
@@ -3,6 +3,6 @@ import _plugin_vue_export_helper_default from "../../../_virtual/_plugin-vue_exp
3
3
  import RsDivider_vue_vue_type_script_setup_true_lang_default from "./RsDivider.impl.js";
4
4
 
5
5
  //#region src/components/divider/src/RsDivider.vue
6
- var RsDivider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsDivider_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-f0cd895b"]]);
6
+ var RsDivider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(RsDivider_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-489327cb"]]);
7
7
  //#endregion
8
8
  export { RsDivider_default as default };
@@ -0,0 +1,4 @@
1
+ export declare const RS_DIVIDER_ORIENTATIONS: readonly ["horizontal", "vertical"];
2
+ export type RsDividerOrientation = (typeof RS_DIVIDER_ORIENTATIONS)[number];
3
+ export declare function isRsDividerOrientation(value: unknown): value is RsDividerOrientation;
4
+ export declare function resolveRsDividerOrientation(orientation?: RsDividerOrientation | null): RsDividerOrientation;
@@ -1,2 +1,2 @@
1
1
  export { default as RsDynamicTags } from './src/RsDynamicTags.js';
2
- export type { RsDynamicTagsInputMode, RsDynamicTagsRejectReason, } from './src/RsDynamicTags.js';
2
+ export type { RsDynamicTagsExpose, RsDynamicTagsInputMode, RsDynamicTagsInstance, RsDynamicTagsParse, RsDynamicTagsRejectReason, } from './src/RsDynamicTags.js';