antdv-next 1.5.0 → 1.5.2

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 (208) hide show
  1. package/dist/_util/hooks/useClosable.d.ts +4 -2
  2. package/dist/_util/hooks/useClosable.js +9 -3
  3. package/dist/_util/hooks/useMergeSemantic.d.ts +7 -4
  4. package/dist/_util/hooks/useMergeSemantic.js +8 -3
  5. package/dist/_util/statusUtils.d.ts +1 -1
  6. package/dist/_util/vueNode.d.ts +2 -6
  7. package/dist/alert/style/index.d.ts +5 -0
  8. package/dist/alert/style/index.js +2 -1
  9. package/dist/anchor/Anchor.js +12 -6
  10. package/dist/antd-with-locales.esm.js +12799 -12587
  11. package/dist/antd-with-locales.js +82 -82
  12. package/dist/antd.css +1 -1
  13. package/dist/antd.esm.js +10540 -10546
  14. package/dist/antd.js +57 -57
  15. package/dist/avatar/AvatarGroup.d.ts +4 -1
  16. package/dist/avatar/AvatarGroup.js +6 -4
  17. package/dist/avatar/index.d.ts +2 -2
  18. package/dist/badge/Ribbon.d.ts +4 -1
  19. package/dist/badge/Ribbon.js +11 -11
  20. package/dist/badge/index.d.ts +3 -2
  21. package/dist/badge/index.js +26 -24
  22. package/dist/border-beam/BorderBeam.d.ts +1 -0
  23. package/dist/border-beam/BorderBeam.js +30 -11
  24. package/dist/border-beam/hooks/useBorderSize.d.ts +3 -7
  25. package/dist/border-beam/hooks/useBorderSize.js +25 -26
  26. package/dist/border-beam/style/index.js +9 -8
  27. package/dist/border-beam/util.d.ts +3 -1
  28. package/dist/border-beam/util.js +4 -1
  29. package/dist/breadcrumb/Breadcrumb.d.ts +4 -1
  30. package/dist/breadcrumb/Breadcrumb.js +12 -7
  31. package/dist/breadcrumb/index.d.ts +2 -2
  32. package/dist/button/Button.js +5 -14
  33. package/dist/button/buttonHelper.d.ts +1 -1
  34. package/dist/button/style/index.js +0 -1
  35. package/dist/calendar/generateCalendar.d.ts +4 -1
  36. package/dist/calendar/generateCalendar.js +8 -5
  37. package/dist/calendar/index.d.ts +2 -2
  38. package/dist/calendar/locale/sq_AL.d.ts +2 -0
  39. package/dist/calendar/locale/sq_AL.js +5 -0
  40. package/dist/card/CardGrid.d.ts +4 -1
  41. package/dist/card/CardGrid.js +7 -4
  42. package/dist/card/CardMeta.d.ts +4 -1
  43. package/dist/card/CardMeta.js +5 -3
  44. package/dist/card/index.d.ts +3 -3
  45. package/dist/carousel/index.d.ts +1 -0
  46. package/dist/carousel/index.js +13 -10
  47. package/dist/collapse/Collapse.js +2 -4
  48. package/dist/color-picker/ColorPicker.js +4 -7
  49. package/dist/color-picker/components/ColorTrigger.js +1 -1
  50. package/dist/color-picker/style/index.js +1 -0
  51. package/dist/components.d.ts +25 -21
  52. package/dist/components.js +4 -3
  53. package/dist/config-provider/context.d.ts +24 -8
  54. package/dist/config-provider/define.d.ts +2 -1
  55. package/dist/config-provider/index.js +10 -0
  56. package/dist/date-picker/generatePicker/generateRangePicker.js +6 -7
  57. package/dist/date-picker/generatePicker/generateSinglePicker.js +2 -5
  58. package/dist/date-picker/generatePicker/useComponents.d.ts +2 -2
  59. package/dist/date-picker/hooks/useMergedPickerSemantic.d.ts +1 -1
  60. package/dist/date-picker/hooks/useMergedPickerSemantic.js +7 -3
  61. package/dist/date-picker/locale/sq_AL.d.ts +6 -0
  62. package/dist/date-picker/locale/sq_AL.js +72 -0
  63. package/dist/date-picker/locale/zh_TW.js +2 -2
  64. package/dist/date-picker/util.d.ts +2 -6
  65. package/dist/descriptions/hooks/useItems.d.ts +4 -4
  66. package/dist/descriptions/index.d.ts +4 -1
  67. package/dist/descriptions/index.js +5 -2
  68. package/dist/divider/index.d.ts +4 -1
  69. package/dist/divider/index.js +9 -6
  70. package/dist/drawer/DrawerPanel.js +5 -3
  71. package/dist/drawer/index.js +9 -13
  72. package/dist/drawer/style/index.js +1 -0
  73. package/dist/dropdown/dropdown.js +4 -6
  74. package/dist/empty/index.d.ts +4 -1
  75. package/dist/empty/index.js +5 -2
  76. package/dist/float-button/BackTop.d.ts +2 -0
  77. package/dist/float-button/BackTop.js +25 -43
  78. package/dist/float-button/FloatButtonGroup.d.ts +4 -1
  79. package/dist/float-button/FloatButtonGroup.js +5 -4
  80. package/dist/float-button/hooks/useScroll.d.ts +16 -0
  81. package/dist/float-button/hooks/useScroll.js +80 -0
  82. package/dist/float-button/index.d.ts +2 -2
  83. package/dist/float-button/style/button.js +23 -0
  84. package/dist/form/ErrorList.js +2 -2
  85. package/dist/form/FormItem/ItemHolder.js +1 -1
  86. package/dist/form/FormItem/index.js +26 -28
  87. package/dist/form/context.d.ts +1 -1
  88. package/dist/form/hooks/useVariant.d.ts +2 -2
  89. package/dist/form/hooks/useVariant.js +15 -5
  90. package/dist/form/style/index.js +25 -12
  91. package/dist/form/types.d.ts +11 -3
  92. package/dist/form/utils/validateUtil.js +4 -0
  93. package/dist/image/hooks/usePreviewConfig.d.ts +5 -4
  94. package/dist/image/index.js +8 -9
  95. package/dist/index.d.ts +25 -21
  96. package/dist/index.js +2 -2
  97. package/dist/input/OTP/index.js +6 -3
  98. package/dist/input/Password.js +4 -1
  99. package/dist/input/Search.js +11 -6
  100. package/dist/input/index.d.ts +1 -1
  101. package/dist/input/style/token.js +2 -1
  102. package/dist/input/style/variants.js +1 -1
  103. package/dist/listy/interface.d.ts +3 -2
  104. package/dist/listy/style/index.js +5 -1
  105. package/dist/locale/en_US.js +4 -0
  106. package/dist/locale/index.d.ts +4 -0
  107. package/dist/locale/is_IS.js +1 -1
  108. package/dist/locale/mn_MN.js +1 -1
  109. package/dist/locale/sq_AL.d.ts +5 -0
  110. package/dist/locale/sq_AL.js +151 -0
  111. package/dist/locale/zh_CN.js +4 -0
  112. package/dist/locale/zh_TW.js +41 -41
  113. package/dist/masonry/Masonry.js +4 -4
  114. package/dist/mentions/index.d.ts +1 -0
  115. package/dist/mentions/index.js +4 -0
  116. package/dist/menu/MenuItem.js +12 -2
  117. package/dist/menu/SubMenu.d.ts +1 -1
  118. package/dist/menu/style/vertical.js +2 -6
  119. package/dist/message/useMessage.js +4 -4
  120. package/dist/modal/PurePanel.js +4 -7
  121. package/dist/notification/index.js +2 -1
  122. package/dist/notification/useNotification.js +12 -9
  123. package/dist/package.js +1 -1
  124. package/dist/package.json.d.ts +4 -0
  125. package/dist/pagination/Pagination.js +14 -6
  126. package/dist/pagination/index.d.ts +2 -2
  127. package/dist/pagination/interface.d.ts +20 -3
  128. package/dist/popconfirm/index.js +17 -8
  129. package/dist/popover/PurePanel.js +10 -0
  130. package/dist/popover/index.js +24 -16
  131. package/dist/qrcode/index.d.ts +4 -1
  132. package/dist/qrcode/index.js +16 -13
  133. package/dist/radio/group.js +2 -2
  134. package/dist/rate/style/index.js +12 -9
  135. package/dist/result/index.d.ts +4 -1
  136. package/dist/result/index.js +7 -4
  137. package/dist/select/index.js +1 -1
  138. package/dist/select/style/dropdown.js +4 -0
  139. package/dist/select/style/index.js +1 -1
  140. package/dist/select/style/select-input.js +1 -1
  141. package/dist/select/style/token.js +4 -2
  142. package/dist/select/useIcons.d.ts +2 -6
  143. package/dist/skeleton/Skeleton.d.ts +4 -1
  144. package/dist/skeleton/Skeleton.js +10 -4
  145. package/dist/skeleton/index.d.ts +2 -2
  146. package/dist/slider/SliderTooltip.js +5 -0
  147. package/dist/slider/index.d.ts +5 -1
  148. package/dist/slider/index.js +9 -9
  149. package/dist/space/Compact.d.ts +5 -2
  150. package/dist/space/Compact.js +8 -3
  151. package/dist/space/index.d.ts +2 -2
  152. package/dist/space/index.js +3 -3
  153. package/dist/spin/index.d.ts +4 -1
  154. package/dist/spin/index.js +7 -5
  155. package/dist/splitter/Splitter.d.ts +4 -1
  156. package/dist/splitter/Splitter.js +4 -2
  157. package/dist/splitter/index.d.ts +2 -2
  158. package/dist/splitter/style/index.js +2 -1
  159. package/dist/statistic/Statistic.d.ts +4 -1
  160. package/dist/statistic/index.d.ts +2 -2
  161. package/dist/steps/index.js +6 -8
  162. package/dist/steps/style/index.js +2 -1
  163. package/dist/table/InternalTable.js +5 -4
  164. package/dist/table/hooks/useFilter/FilterDropdown.js +2 -2
  165. package/dist/table/style/radius.js +4 -0
  166. package/dist/table/style/virtual.js +4 -0
  167. package/dist/tag/hooks/useColor.d.ts +1 -1
  168. package/dist/tag/index.js +3 -3
  169. package/dist/theme/interface/seeds.d.ts +8 -0
  170. package/dist/theme/themes/seed.js +1 -0
  171. package/dist/theme/util/alias.js +1 -1
  172. package/dist/time-picker/locale/sq_AL.d.ts +5 -0
  173. package/dist/time-picker/locale/sq_AL.js +7 -0
  174. package/dist/timeline/Timeline.js +5 -7
  175. package/dist/tooltip/PurePanel.js +5 -0
  176. package/dist/tooltip/index.d.ts +1 -0
  177. package/dist/tooltip/index.js +27 -13
  178. package/dist/tour/index.js +10 -13
  179. package/dist/tour/panelRender.js +2 -8
  180. package/dist/transfer/ListBody.js +2 -1
  181. package/dist/transfer/ListItem.d.ts +1 -0
  182. package/dist/transfer/ListItem.js +6 -2
  183. package/dist/transfer/Transfer.d.ts +4 -1
  184. package/dist/transfer/Transfer.js +5 -2
  185. package/dist/transfer/index.d.ts +2 -2
  186. package/dist/transfer/search.js +2 -2
  187. package/dist/tree/index.d.ts +3 -2
  188. package/dist/tree/index.js +3 -2
  189. package/dist/tree/style/index.js +4 -0
  190. package/dist/tree/utils/dictUtil.js +3 -2
  191. package/dist/typography/Base/EllipsisTooltip.d.ts +6 -1
  192. package/dist/typography/Base/EllipsisTooltip.js +2 -2
  193. package/dist/typography/Base/index.js +9 -26
  194. package/dist/typography/hooks/useCopyClick.d.ts +1 -1
  195. package/dist/typography/hooks/useCopyClick.js +5 -15
  196. package/dist/upload/Upload.js +7 -9
  197. package/dist/upload/UploadList/ListItem.js +6 -13
  198. package/dist/upload/UploadList/index.js +8 -2
  199. package/dist/upload/index.d.ts +2 -2
  200. package/dist/version/token-meta.json +1 -0
  201. package/dist/version/token.json +1 -0
  202. package/dist/watermark/index.d.ts +4 -1
  203. package/dist/watermark/index.js +2 -1
  204. package/package.json +13 -9
  205. package/web-tags.json +1980 -1947
  206. package/web-types.json +5808 -5730
  207. package/dist/slider/useRafLock.d.ts +0 -5
  208. package/dist/slider/useRafLock.js +0 -23
@@ -44,7 +44,11 @@ const genListyStyle = (token) => {
44
44
  }
45
45
  },
46
46
  [`${componentCls}-group-section`]: { position: "relative" },
47
- [`${componentCls}-scrollbar`]: { zIndex: 1 },
47
+ [`${componentCls}-scrollbar`]: {
48
+ zIndex: 1,
49
+ cursor: "pointer",
50
+ "&:hover": { backgroundColor: token.colorFillQuaternary }
51
+ },
48
52
  "&-rtl": { direction: "rtl" }
49
53
  } };
50
54
  };
@@ -77,6 +77,10 @@ const localeValues = {
77
77
  expand: "Expand",
78
78
  collapse: "Collapse"
79
79
  },
80
+ Carousel: {
81
+ prevSlide: "Previous slide",
82
+ nextSlide: "Next slide"
83
+ },
80
84
  Form: {
81
85
  optional: "(optional)",
82
86
  defaultValidateMessages: {
@@ -67,6 +67,10 @@ interface Locale {
67
67
  refresh?: string;
68
68
  scanned?: string;
69
69
  };
70
+ Carousel?: {
71
+ prevSlide: string;
72
+ nextSlide: string;
73
+ };
70
74
  ColorPicker?: {
71
75
  presetEmpty: string;
72
76
  transparent: string;
@@ -104,7 +104,7 @@ const localeValues = {
104
104
  },
105
105
  number: {
106
106
  len: "${label} verður að vera jafngildi ${len}",
107
- min: "Lágmarksgildi ${label} er ${mín}",
107
+ min: "Lágmarksgildi ${label} er ${min}",
108
108
  max: "Hámarksgildi ${label} er ${max}",
109
109
  range: "${label} verður að vera á milli ${min}-${max}"
110
110
  },
@@ -118,7 +118,7 @@ const localeValues = {
118
118
  },
119
119
  array: {
120
120
  len: "${len} ${label} байх ёстой",
121
- min: "Дор хаяж ${мин} ${label}",
121
+ min: "Дор хаяж ${min} ${label}",
122
122
  max: "Хамгийн ихдээ ${max} ${label}",
123
123
  range: "${label}-н хэмжээ ${min}-${max} хооронд байх ёстой"
124
124
  },
@@ -0,0 +1,5 @@
1
+ import { Locale } from "./index.js";
2
+ //#region src/locale/sq_AL.d.ts
3
+ declare const localeValues: Locale;
4
+ //#endregion
5
+ export { localeValues as default };
@@ -0,0 +1,151 @@
1
+ import locale from "../time-picker/locale/sq_AL.js";
2
+ import locale$1 from "../date-picker/locale/sq_AL.js";
3
+ import sq_AL_default from "../calendar/locale/sq_AL.js";
4
+ //#region src/locale/sq_AL.ts
5
+ const typeTemplate = "${label} nuk është një ${type} i vlefshëm";
6
+ const localeValues = {
7
+ locale: "sq",
8
+ Pagination: {
9
+ items_per_page: "/ faqe",
10
+ jump_to: "Shko te",
11
+ jump_to_confirm: "konfirmo",
12
+ page: "Faqe",
13
+ prev_page: "Faqja e mëparshme",
14
+ next_page: "Faqja tjetër",
15
+ prev_5: "5 faqet e mëparshme",
16
+ next_5: "5 faqet e tjera",
17
+ prev_3: "3 faqet e mëparshme",
18
+ next_3: "3 faqet e tjera"
19
+ },
20
+ DatePicker: locale$1,
21
+ TimePicker: locale,
22
+ Calendar: sq_AL_default,
23
+ global: {
24
+ placeholder: "Ju lutemi zgjidhni",
25
+ close: "Mbyll",
26
+ sortable: "i renditshëm"
27
+ },
28
+ Table: {
29
+ filterTitle: "Menuja e filtrimit",
30
+ filterConfirm: "OK",
31
+ filterReset: "Rivendos",
32
+ filterEmptyText: "Pa filtra",
33
+ filterCheckAll: "Zgjidh të gjitha elementet",
34
+ filterSearchPlaceholder: "Kërko në filtra",
35
+ emptyText: "Nuk ka të dhëna",
36
+ selectAll: "Zgjidh faqen aktuale",
37
+ selectInvert: "Përmbys faqen aktuale",
38
+ selectNone: "Pastro të gjitha të dhënat",
39
+ selectionAll: "Zgjidh të gjitha të dhënat",
40
+ sortTitle: "Rendit",
41
+ expand: "Zgjero rreshtin",
42
+ collapse: "Mblidh rreshtin",
43
+ triggerDesc: "Kliko për renditje zbritëse",
44
+ triggerAsc: "Kliko për renditje ngjitëse",
45
+ cancelSort: "Kliko për të anuluar renditjen"
46
+ },
47
+ Tour: {
48
+ Next: "Tjetër",
49
+ Previous: "I mëparshëm",
50
+ Finish: "Përfundo"
51
+ },
52
+ Modal: {
53
+ okText: "OK",
54
+ cancelText: "Anulo",
55
+ justOkText: "OK"
56
+ },
57
+ Popconfirm: {
58
+ okText: "OK",
59
+ cancelText: "Anulo"
60
+ },
61
+ Transfer: {
62
+ titles: ["", ""],
63
+ searchPlaceholder: "Kërko këtu",
64
+ itemUnit: "element",
65
+ itemsUnit: "elemente",
66
+ remove: "Hiq",
67
+ selectCurrent: "Zgjidh faqen aktuale",
68
+ removeCurrent: "Hiq faqen aktuale",
69
+ selectAll: "Zgjidh të gjitha të dhënat",
70
+ deselectAll: "Çzgjidh të gjitha të dhënat",
71
+ removeAll: "Hiq të gjitha të dhënat",
72
+ selectInvert: "Përmbys faqen aktuale"
73
+ },
74
+ Upload: {
75
+ uploading: "Duke ngarkuar...",
76
+ removeFile: "Hiq skedarin",
77
+ uploadError: "Gabim gjatë ngarkimit",
78
+ previewFile: "Shiko skedarin",
79
+ downloadFile: "Shkarko skedarin"
80
+ },
81
+ Empty: { description: "Nuk ka të dhëna" },
82
+ Icon: { icon: "ikonë" },
83
+ Text: {
84
+ edit: "Ndrysho",
85
+ copy: "Kopjo",
86
+ copied: "U kopjua",
87
+ expand: "Zgjero",
88
+ collapse: "Mblidh"
89
+ },
90
+ Form: {
91
+ optional: "(opsionale)",
92
+ defaultValidateMessages: {
93
+ default: "Gabim në validimin e fushës ${label}",
94
+ required: "Ju lutemi shkruani ${label}",
95
+ enum: "${label} duhet të jetë një nga [${enum}]",
96
+ whitespace: "${label} nuk mund të jetë karakter bosh",
97
+ date: {
98
+ format: "Formati i datës për ${label} është i pavlefshëm",
99
+ parse: "${label} nuk mund të konvertohet në datë",
100
+ invalid: "${label} është datë e pavlefshme"
101
+ },
102
+ types: {
103
+ string: typeTemplate,
104
+ method: typeTemplate,
105
+ array: typeTemplate,
106
+ object: typeTemplate,
107
+ number: typeTemplate,
108
+ date: typeTemplate,
109
+ boolean: typeTemplate,
110
+ integer: typeTemplate,
111
+ float: typeTemplate,
112
+ regexp: typeTemplate,
113
+ email: typeTemplate,
114
+ url: typeTemplate,
115
+ hex: typeTemplate
116
+ },
117
+ string: {
118
+ len: "${label} duhet të ketë ${len} karaktere",
119
+ min: "${label} duhet të ketë të paktën ${min} karaktere",
120
+ max: "${label} duhet të ketë më së shumti ${max} karaktere",
121
+ range: "${label} duhet të ketë midis ${min}-${max} karaktere"
122
+ },
123
+ number: {
124
+ len: "${label} duhet të jetë e barabartë me ${len}",
125
+ min: "${label} duhet të jetë minimumi ${min}",
126
+ max: "${label} duhet të jetë maksimumi ${max}",
127
+ range: "${label} duhet të jetë midis ${min}-${max}"
128
+ },
129
+ array: {
130
+ len: "Duhet të ketë ${len} ${label}",
131
+ min: "Të paktën ${min} ${label}",
132
+ max: "Më së shumti ${max} ${label}",
133
+ range: "Sasia e ${label} duhet të jetë midis ${min}-${max}"
134
+ },
135
+ pattern: { mismatch: "${label} nuk përputhet me modelin ${pattern}" }
136
+ }
137
+ },
138
+ QRCode: {
139
+ expired: "Kodi QR ka skaduar",
140
+ refresh: "Rifresko",
141
+ scanned: "U skanua"
142
+ },
143
+ ColorPicker: {
144
+ presetEmpty: "Bosh",
145
+ transparent: "Transparent",
146
+ singleColor: "Një ngjyrë",
147
+ gradientColor: "Ngjyrë gradient"
148
+ }
149
+ };
150
+ //#endregion
151
+ export { localeValues as default };
@@ -77,6 +77,10 @@ const localeValues = {
77
77
  expand: "展开",
78
78
  collapse: "收起"
79
79
  },
80
+ Carousel: {
81
+ prevSlide: "上一张幻灯片",
82
+ nextSlide: "下一张幻灯片"
83
+ },
80
84
  Form: {
81
85
  optional: "(可选)",
82
86
  defaultValidateMessages: {
@@ -18,21 +18,21 @@ const localeValues = {
18
18
  Table: {
19
19
  filterTitle: "篩選器",
20
20
  filterConfirm: "確定",
21
- filterReset: "重置",
22
- filterEmptyText: "無篩選項",
21
+ filterReset: "重設",
22
+ filterEmptyText: "無篩選條件",
23
23
  filterCheckAll: "全選",
24
- filterSearchPlaceholder: "在篩選項中搜尋",
25
- emptyText: "暫無數據",
26
- selectAll: "全部選取",
27
- selectInvert: "反向選取",
28
- selectNone: "清空所有",
29
- selectionAll: "全選所有",
24
+ filterSearchPlaceholder: "搜尋篩選條件",
25
+ emptyText: "暫無資料",
26
+ selectAll: "選取目前頁面",
27
+ selectInvert: "反向選取目前頁面",
28
+ selectNone: "清除全部資料",
29
+ selectionAll: "選取所有資料",
30
30
  sortTitle: "排序",
31
- expand: "展開行",
32
- collapse: "關閉行",
33
- triggerDesc: "點擊降序",
34
- triggerAsc: "點擊升序",
35
- cancelSort: "取消排序"
31
+ expand: "展開列",
32
+ collapse: "收合列",
33
+ triggerDesc: "點擊以遞減排序",
34
+ triggerAsc: "點擊以遞增排序",
35
+ cancelSort: "點擊以取消排序"
36
36
  },
37
37
  Modal: {
38
38
  okText: "確定",
@@ -50,44 +50,44 @@ const localeValues = {
50
50
  },
51
51
  Transfer: {
52
52
  titles: ["", ""],
53
- searchPlaceholder: "搜尋資料",
53
+ searchPlaceholder: "在此搜尋",
54
54
  itemUnit: "項目",
55
55
  itemsUnit: "項目",
56
- remove: "删除",
57
- selectCurrent: "全選當頁",
58
- removeCurrent: "删除當頁",
59
- selectAll: "全選所有",
60
- removeAll: "删除全部",
61
- selectInvert: "反選當頁",
62
- deselectAll: "取消全選"
56
+ remove: "移除",
57
+ selectCurrent: "選取目前頁面",
58
+ removeCurrent: "移除目前頁面",
59
+ selectAll: "選取所有資料",
60
+ removeAll: "移除所有資料",
61
+ selectInvert: "反向選取目前頁面",
62
+ deselectAll: "取消選取所有資料"
63
63
  },
64
64
  Upload: {
65
65
  uploading: "正在上傳...",
66
- removeFile: "刪除檔案",
66
+ removeFile: "移除檔案",
67
67
  uploadError: "上傳失敗",
68
- previewFile: "檔案預覽",
69
- downloadFile: "下载文件"
68
+ previewFile: "預覽檔案",
69
+ downloadFile: "下載檔案"
70
70
  },
71
- Empty: { description: "無此資料" },
72
- Icon: { icon: "圖標" },
71
+ Empty: { description: "暫無資料" },
72
+ Icon: { icon: "圖示" },
73
73
  Text: {
74
74
  edit: "編輯",
75
75
  copy: "複製",
76
76
  copied: "複製成功",
77
77
  expand: "展開",
78
- collapse: "收起"
78
+ collapse: "收合"
79
79
  },
80
80
  Form: {
81
- optional: "(可選)",
81
+ optional: "(選填)",
82
82
  defaultValidateMessages: {
83
- default: "字段驗證錯誤${label}",
83
+ default: "欄位驗證錯誤:${label}",
84
84
  required: "請輸入${label}",
85
- enum: "${label}必須是其中一個[${enum}]",
86
- whitespace: "${label}不能為空字符",
85
+ enum: "${label}必須是 [${enum}] 其中之一",
86
+ whitespace: "${label}不能是空白字元",
87
87
  date: {
88
- format: "${label}日期格式無效",
89
- parse: "${label}不能轉換為日期",
90
- invalid: "${label}是一個無效日期"
88
+ format: "${label}的日期格式無效",
89
+ parse: "${label}無法轉換為日期",
90
+ invalid: "${label}是無效的日期"
91
91
  },
92
92
  types: {
93
93
  string: typeTemplate,
@@ -105,10 +105,10 @@ const localeValues = {
105
105
  hex: typeTemplate
106
106
  },
107
107
  string: {
108
- len: "${label}須為${len}個字符",
109
- min: "${label}最少${min}個字符",
110
- max: "${label}最多${max}個字符",
111
- range: "${label}須在${min}-${max}字符之間"
108
+ len: "${label}須為${len}個字元",
109
+ min: "${label}最少需要${min}個字元",
110
+ max: "${label}最多可為${max}個字元",
111
+ range: "${label}須介於${min}-${max}個字元之間"
112
112
  },
113
113
  number: {
114
114
  len: "${label}必須等於${len}",
@@ -122,12 +122,12 @@ const localeValues = {
122
122
  max: "最多${max}個${label}",
123
123
  range: "${label}數量須在${min}-${max}之間"
124
124
  },
125
- pattern: { mismatch: "${label}與模式不匹配${pattern}" }
125
+ pattern: { mismatch: "${label}與模式 ${pattern} 不相符" }
126
126
  }
127
127
  },
128
128
  QRCode: {
129
- expired: "二維碼過期",
130
- refresh: "點擊刷新",
129
+ expired: "QR Code 已過期",
130
+ refresh: "重新整理",
131
131
  scanned: "已掃描"
132
132
  },
133
133
  ColorPicker: {
@@ -1,6 +1,6 @@
1
1
  import { useComponentBaseConfig } from "../config-provider/context.js";
2
2
  import { genCssVar } from "../theme/util/genStyleUtils.js";
3
- import { getAttrStyleAndClass, useMergeSemantic, useToArr, useToProps } from "../_util/hooks/useMergeSemantic.js";
3
+ import { getAttrStyleAndClass, useMergeSemantic, useSemanticRootStyle, useToArr, useToProps } from "../_util/hooks/useMergeSemantic.js";
4
4
  import { toPropsRefs } from "../_util/tools.js";
5
5
  import useCSSVarCls from "../config-provider/hooks/useCSSVarCls.js";
6
6
  import { responsiveArray } from "../_util/responsiveObserver.js";
@@ -51,7 +51,8 @@ const Masonry = /* @__PURE__ */ defineComponent((props, { expose, emit, attrs, s
51
51
  columns: columnCount.value
52
52
  };
53
53
  });
54
- const [mergedClassNames, mergedStyles] = useMergeSemantic(useToArr(contextClassNames, classes), useToArr(contextStyles, styles), useToProps(mergedProps));
54
+ const contextStyleRoot = useSemanticRootStyle(contextStyle);
55
+ const [mergedClassNames, mergedStyles] = useMergeSemantic(useToArr(contextClassNames, classes), useToArr(contextStyles, contextStyleRoot, styles), useToProps(mergedProps));
55
56
  const itemHeights = ref([]);
56
57
  const collectItemSize = useDelay(() => {
57
58
  const nextItemHeights = mergedItems.value.map((item, index) => {
@@ -121,8 +122,7 @@ const Masonry = /* @__PURE__ */ defineComponent((props, { expose, emit, attrs, s
121
122
  "class": clsx(prefixCls.value, contextClassName.value, mergedClassNames.value?.root, props.rootClass, className, hashId.value, cssVarCls.value, { [`${prefixCls.value}-rtl`]: direction.value === "rtl" }),
122
123
  "style": {
123
124
  height: `${totalHeight.value}px`,
124
- ...contextStyles.value.root,
125
- ...contextStyle.value,
125
+ ...mergedStyles.value.root,
126
126
  ...style
127
127
  }
128
128
  }), [createVNode(TransitionGroup, transitionProps, _isSlot(_slot = itemWithPositions.value.map((motionInfo) => {
@@ -78,6 +78,7 @@ interface MentionsSlots {
78
78
  option: MentionsOptionProps;
79
79
  index: number;
80
80
  }) => any;
81
+ popupRender?: MentionProps['popupRender'];
81
82
  }
82
83
  interface MentionsProps extends MentionProps {}
83
84
  interface MentionsRef extends MentionsRef$1 {}
@@ -11,6 +11,7 @@ import { getMergedStatus, getStatusClassNames } from "../_util/statusUtils.js";
11
11
  import { DefaultRenderEmpty } from "../config-provider/defaultRenderEmpty.js";
12
12
  import { useFormItemInputContext } from "../form/context.js";
13
13
  import useVariant from "../form/hooks/useVariant.js";
14
+ import usePopupRender from "../select/usePopupRender.js";
14
15
  import getAllowClear from "../_util/getAllowClear.js";
15
16
  import toList from "../_util/toList.js";
16
17
  import Spin from "../spin/index.js";
@@ -41,6 +42,7 @@ const omitKeys = [
41
42
  "allowClear",
42
43
  "filterOption",
43
44
  "popupClassName",
45
+ "popupRender",
44
46
  "options",
45
47
  "notFoundContent"
46
48
  ];
@@ -170,6 +172,7 @@ const Mentions = /* @__PURE__ */ defineComponent((props, { slots, emit, expose,
170
172
  },
171
173
  suffix: mergedStyles.value.suffix
172
174
  };
175
+ const mergedPopupRender = usePopupRender(slots?.popupRender ?? props?.popupRender);
173
176
  const restProps = omit(props, omitKeys);
174
177
  return createVNode(VcMentions, mergeProps({ "ref": mentionsRef }, restAttrs, restProps, {
175
178
  "prefixCls": prefixCls.value,
@@ -178,6 +181,7 @@ const Mentions = /* @__PURE__ */ defineComponent((props, { slots, emit, expose,
178
181
  "classNames": classNames,
179
182
  "styles": mergedStylesValue,
180
183
  "popupClassName": props.popupClassName,
184
+ "popupRender": mergedPopupRender,
181
185
  "notFoundContent": notFoundContent.value,
182
186
  "disabled": mergedDisabled.value,
183
187
  "allowClear": mergedAllowClear.value,
@@ -3,7 +3,7 @@ import { getSlotPropsFnRun } from "../_util/tools.js";
3
3
  import InternalTooltip from "../tooltip/index.js";
4
4
  import { useSiderCtx } from "../layout/Sider.js";
5
5
  import { useMenuContext } from "./MenuContext.js";
6
- import { createVNode, defineComponent, isVNode, mergeProps } from "vue";
6
+ import { computed, createVNode, defineComponent, isVNode, mergeProps, shallowRef, watch } from "vue";
7
7
  import { clsx } from "@v-c/util";
8
8
  import { filterEmpty, getAttrStyleAndClass } from "@v-c/util/dist/props-util";
9
9
  import { omit } from "es-toolkit/compat";
@@ -15,6 +15,11 @@ function _isSlot(s) {
15
15
  const MenuItem = /* @__PURE__ */ defineComponent((props, { slots, attrs }) => {
16
16
  const menuContext = useMenuContext();
17
17
  const { siderCollapsed } = useSiderCtx();
18
+ const mergedCollapsed = computed(() => !!(siderCollapsed?.value || menuContext.value.inlineCollapsed));
19
+ const tooltipOpen = shallowRef(false);
20
+ watch(mergedCollapsed, () => {
21
+ tooltipOpen.value = false;
22
+ });
18
23
  return () => {
19
24
  const extra = getSlotPropsFnRun(slots, props, "extra");
20
25
  const icon = getSlotPropsFnRun(slots, props, "icon");
@@ -39,9 +44,14 @@ const MenuItem = /* @__PURE__ */ defineComponent((props, { slots, attrs }) => {
39
44
  if (typeof title === "undefined") tooltipTitle = firstLevel ? children : "";
40
45
  else if (title === false) tooltipTitle = "";
41
46
  const tooltipProps = { title: tooltipTitle };
42
- if (!siderCollapsed?.value && !isInlineCollapsed) {
47
+ if (!mergedCollapsed.value) {
43
48
  tooltipProps.title = null;
44
49
  tooltipProps.open = false;
50
+ } else {
51
+ tooltipProps.open = tooltipOpen.value;
52
+ tooltipProps.onOpenChange = (open) => {
53
+ tooltipOpen.value = open;
54
+ };
45
55
  }
46
56
  const childrenLength = children.length;
47
57
  let returnNode = createVNode(Item, mergeProps(omit(pureAttrs(attrs), ["itemData"]), omit(props, [
@@ -2,7 +2,7 @@ import { EmptyEmit, VueNode } from "../_util/type.js";
2
2
  import { SubMenuType } from "./interface.js";
3
3
  import { SlotsType } from "vue";
4
4
  //#region src/menu/SubMenu.d.ts
5
- interface SubMenuProps extends Omit<SubMenuType, 'key' | 'label' | 'children'> {
5
+ interface SubMenuProps extends Omit<SubMenuType, 'key' | 'label' | 'children' | 'title'> {
6
6
  title?: VueNode;
7
7
  }
8
8
  interface SubMenuSlots {
@@ -29,7 +29,7 @@ const getVerticalInlineStyle = (token) => {
29
29
  };
30
30
  };
31
31
  const getVerticalStyle = (token) => {
32
- const { componentCls, iconCls, itemHeight, colorTextLightSolid, dropdownWidth, controlHeightLG, motionEaseOut, padding, paddingXL, itemMarginInline, fontSizeLG, motionDurationFast, motionDurationSlow, paddingXS, boxShadowSecondary, collapsedWidth, collapsedIconSize } = token;
32
+ const { componentCls, iconCls, itemHeight, colorTextLightSolid, dropdownWidth, controlHeightLG, padding, paddingXL, itemMarginInline, fontSizeLG, motionDurationSlow, paddingXS, boxShadowSecondary, collapsedWidth, collapsedIconSize } = token;
33
33
  const inlineItemStyle = {
34
34
  height: itemHeight,
35
35
  lineHeight: unit(itemHeight),
@@ -63,11 +63,7 @@ const getVerticalStyle = (token) => {
63
63
  [`&${componentCls}-root`]: { [`${componentCls}-item, ${componentCls}-submenu-title`]: {
64
64
  display: "flex",
65
65
  alignItems: "center",
66
- transition: [
67
- `border-color ${motionDurationSlow}`,
68
- `background-color ${motionDurationSlow}`,
69
- `padding ${motionDurationFast} ${motionEaseOut}`
70
- ].join(","),
66
+ transition: [`border-color ${motionDurationSlow}`, `background-color ${motionDurationSlow}`].join(","),
71
67
  [`> ${componentCls}-title-content`]: {
72
68
  flex: "auto",
73
69
  minWidth: 0,
@@ -1,6 +1,6 @@
1
1
  import { devUseWarning } from "../_util/warning.js";
2
2
  import { useBaseConfig, useComponentBaseConfig } from "../config-provider/context.js";
3
- import { mergeClassNames, mergeStyles, resolveStyleOrClass, useMergeSemantic, useToArr, useToProps } from "../_util/hooks/useMergeSemantic.js";
3
+ import { mergeClassNames, mergeStyles, resolveStyleOrClass, useMergeSemantic, useSemanticRootStyle, useToArr, useToProps } from "../_util/hooks/useMergeSemantic.js";
4
4
  import { toPropsRefs } from "../_util/tools.js";
5
5
  import useCSSVarCls from "../config-provider/hooks/useCSSVarCls.js";
6
6
  import style_default from "./style/index.js";
@@ -63,7 +63,8 @@ const Holder = /* @__PURE__ */ defineComponent((props, { expose }) => {
63
63
  pauseOnHover: mergedPauseOnHover.value
64
64
  });
65
65
  const mergedProps = computed(() => props);
66
- const [mergedClassNames, mergedStyles] = useMergeSemantic(useToArr(classes, contextClasses), useToArr(styles, contextStyles), useToProps(mergedProps));
66
+ const contextStyleRoot = useSemanticRootStyle(contextStyle);
67
+ const [mergedClassNames, mergedStyles] = useMergeSemantic(useToArr(contextClasses, classes), useToArr(contextStyles, contextStyleRoot, styles), useToProps(mergedProps));
67
68
  expose({
68
69
  ...api,
69
70
  prefixCls,
@@ -143,7 +144,7 @@ function useInternalMessage(messageConfig) {
143
144
  fakeResult.then = () => {};
144
145
  return fakeResult;
145
146
  }
146
- const { open: originOpen, prefixCls, contextClassName, contextStyle, contextClasses, contextStyles, classNames: originClassNames, styles: originStyles } = holderRef.value;
147
+ const { open: originOpen, prefixCls, contextClassName, contextClasses, contextStyles, classNames: originClassNames, styles: originStyles } = holderRef.value;
147
148
  const noticePrefixCls = `${prefixCls}-notice`;
148
149
  const { content, icon, type, key, class: className, style, onClose, classes: configClassNames = {}, styles = {}, ...restConfig } = config;
149
150
  let mergedKey = key;
@@ -183,7 +184,6 @@ function useInternalMessage(messageConfig) {
183
184
  class: clsx({ [`${noticePrefixCls}-${type}`]: !!type }, className, contextClassName, mergedClassNames.root),
184
185
  style: {
185
186
  ...mergedStyles.root,
186
- ...contextStyle,
187
187
  ...style
188
188
  },
189
189
  onClose: () => {
@@ -1,5 +1,5 @@
1
1
  import { useComponentBaseConfig } from "../config-provider/context.js";
2
- import { getAttrStyleAndClass as getAttrStyleAndClass$1, useMergeSemantic, useToArr, useToProps } from "../_util/hooks/useMergeSemantic.js";
2
+ import { getAttrStyleAndClass as getAttrStyleAndClass$1, useMergeSemantic, useSemanticRootStyle, useToArr, useToProps } from "../_util/hooks/useMergeSemantic.js";
3
3
  import { getSlotPropsFnRun } from "../_util/tools.js";
4
4
  import useCSSVarCls from "../config-provider/hooks/useCSSVarCls.js";
5
5
  import { Footer, renderCloseIcon } from "./shared.js";
@@ -14,7 +14,8 @@ var PurePanel_default = withPureRenderTheme(/* @__PURE__ */ defineComponent((pro
14
14
  const { prefixCls, getPrefixCls, styles: contextStyles, classes: contextClassNames, class: contextClassName, style: contextStyle } = useComponentBaseConfig("modal", props, []);
15
15
  const { classes, styles } = toPropsRefs(props, "classes", "styles");
16
16
  const rootPrefixCls = computed(() => getPrefixCls(void 0, ""));
17
- const [mergedClassNames, mergedStyles] = useMergeSemantic(useToArr(contextClassNames, classes), useToArr(contextStyles, styles), useToProps(computed(() => props)));
17
+ const contextStyleRoot = useSemanticRootStyle(contextStyle);
18
+ const [mergedClassNames, mergedStyles] = useMergeSemantic(useToArr(contextClassNames, classes), useToArr(contextStyles, contextStyleRoot, styles), useToProps(computed(() => props)));
18
19
  const rootCls = useCSSVarCls(rootPrefixCls);
19
20
  const [hashId, cssVarCls] = style_default(prefixCls, rootCls);
20
21
  const confirmPrefixCls = computed(() => `${prefixCls.value}-confirm`);
@@ -45,11 +46,7 @@ var PurePanel_default = withPureRenderTheme(/* @__PURE__ */ defineComponent((pro
45
46
  "prefixCls": prefixCls.value,
46
47
  "className": clsx(hashId.value, `${prefixCls.value}-pure-panel`, type && confirmPrefixCls.value, type && `${confirmPrefixCls.value}-${type}`, attrClassName, contextClassName.value, cssVarCls.value, rootCls.value, props.rootClass, mergedClassNames.value?.root),
47
48
  "animationVisible": true,
48
- "style": [
49
- contextStyle,
50
- mergedStyles.value?.root,
51
- attrStyle
52
- ]
49
+ "style": [mergedStyles.value?.root, attrStyle]
53
50
  }, restAttrs, {
54
51
  "closeIcon": renderCloseIcon(prefixCls.value, slots.closeIcon || closeIcon),
55
52
  "closable": closable,
@@ -93,7 +93,8 @@ const GlobalHolderWrapper = /* @__PURE__ */ defineComponent((props) => {
93
93
  const configHolderNode = createVNode(ConfigProvider, {
94
94
  "prefixCls": global.getRootPrefixCls(),
95
95
  "iconPrefixCls": global.getIconPrefixCls(),
96
- "theme": global.theme.value
96
+ "theme": global.theme.value,
97
+ "locale": globalConfig().locale
97
98
  }, _isSlot(holderNode) ? holderNode : { default: () => [holderNode] });
98
99
  return global.holderRender ? global.holderRender(configHolderNode) : configHolderNode;
99
100
  };
@@ -1,11 +1,13 @@
1
1
  import { devUseWarning } from "../_util/warning.js";
2
2
  import { useBaseConfig, useComponentBaseConfig } from "../config-provider/context.js";
3
3
  import useToken from "../theme/useToken.js";
4
- import { mergeClassNames, mergeStyles, resolveStyleOrClass, useMergeSemantic, useToArr, useToProps } from "../_util/hooks/useMergeSemantic.js";
4
+ import { mergeClassNames, mergeStyles, resolveStyleOrClass, useMergeSemantic, useSemanticRootStyle, useToArr, useToProps } from "../_util/hooks/useMergeSemantic.js";
5
5
  import { toPropsRefs } from "../_util/tools.js";
6
6
  import useCSSVarCls from "../config-provider/hooks/useCSSVarCls.js";
7
7
  import style_default from "./style/index.js";
8
8
  import { getCloseIconConfig, getMotion, getPlacementStyle } from "./util.js";
9
+ import localeValues from "../locale/en_US.js";
10
+ import useLocale from "../locale/useLocale.js";
9
11
  import { computeClosable, pickClosable } from "../_util/hooks/useClosable.js";
10
12
  import { getCloseIcon, getIconWrapperClassName, resolveIconNode } from "./PurePanel.js";
11
13
  import { isRenderable } from "../_util/is.js";
@@ -41,7 +43,8 @@ const renderNotifications = (node, { prefixCls, key }) => {
41
43
  };
42
44
  const Holder = /* @__PURE__ */ defineComponent((props, { expose }) => {
43
45
  const { getPrefixCls, getPopupContainer, notification, direction } = useBaseConfig("notification");
44
- const { classes: contextClassNames, styles: contextStyles } = useComponentBaseConfig("notification", props);
46
+ const [contextLocale] = useLocale("global", localeValues.global);
47
+ const { classes: contextClassNames, style: contextStyle, styles: contextStyles } = useComponentBaseConfig("notification", props);
45
48
  const { classes, styles } = toPropsRefs(props, "classes", "styles");
46
49
  const [, token] = useToken();
47
50
  const prefixCls = computed(() => props.prefixCls || getPrefixCls("notification"));
@@ -49,7 +52,7 @@ const Holder = /* @__PURE__ */ defineComponent((props, { expose }) => {
49
52
  return typeof props.duration === "number" && props.duration > 0 ? props.duration : false;
50
53
  });
51
54
  const getStyle = (placement) => {
52
- return getPlacementStyle(placement, props?.top ?? DEFAULT_OFFSET, props?.bottom ?? DEFAULT_DURATION);
55
+ return getPlacementStyle(placement, props?.top ?? DEFAULT_OFFSET, props?.bottom ?? DEFAULT_OFFSET);
53
56
  };
54
57
  const getClassName = () => clsx({ [`${prefixCls.value}-rtl`]: props.rtl ?? direction.value === "rtl" });
55
58
  const getNotificationMotion = () => getMotion(prefixCls.value);
@@ -73,13 +76,15 @@ const Holder = /* @__PURE__ */ defineComponent((props, { expose }) => {
73
76
  }
74
77
  })));
75
78
  const mergedProps = computed(() => props);
76
- const [mergedClassNames, mergedStyles] = useMergeSemantic(useToArr(contextClassNames, classes), useToArr(contextStyles, styles), useToProps(mergedProps));
79
+ const contextStyleRoot = useSemanticRootStyle(contextStyle);
80
+ const [mergedClassNames, mergedStyles] = useMergeSemantic(useToArr(contextClassNames, classes), useToArr(contextStyles, contextStyleRoot, styles), useToProps(mergedProps));
77
81
  expose({
78
82
  ...api,
79
83
  prefixCls,
80
84
  notification,
81
85
  classNames: mergedClassNames,
82
- styles: mergedStyles
86
+ styles: mergedStyles,
87
+ closeLabel: computed(() => contextLocale.value?.close ?? localeValues.global?.close ?? "Close")
83
88
  });
84
89
  return () => {
85
90
  return holder?.();
@@ -173,9 +178,8 @@ function useInternalNotification(notificationConfig) {
173
178
  warning(false, "usage", "You are calling notice in render which will break in React 18 concurrent mode. Please trigger in effect instead.");
174
179
  return;
175
180
  }
176
- const { open: originOpen, prefixCls, notification, classNames: originClassNames, styles: originStyles } = holderRef.value;
181
+ const { open: originOpen, prefixCls, notification, classNames: originClassNames, styles: originStyles, closeLabel } = holderRef.value;
177
182
  const contextClassName = notification?.class || {};
178
- const contextStyle = notification?.style || {};
179
183
  const noticePrefixCls = `${prefixCls}-notice`;
180
184
  const { title, description, icon, type, actions, class: className, style, role = "alert", closeIcon, closable, classes: configClassNames = {}, styles = {}, ...restConfig } = config;
181
185
  const mergedTitle = title;
@@ -188,7 +192,7 @@ function useInternalNotification(notificationConfig) {
188
192
  }))), pickClosable(notificationContext), computed(() => ({
189
193
  closable: true,
190
194
  closeIcon: realCloseIcon
191
- })));
195
+ })), closeLabel);
192
196
  const mergedClosable = rawClosable ? {
193
197
  onClose: closable && typeof closable === "object" ? closable.onClose : void 0,
194
198
  closeIcon: mergedCloseIcon,
@@ -222,7 +226,6 @@ function useInternalNotification(notificationConfig) {
222
226
  },
223
227
  class: clsx({ [`${noticePrefixCls}-${type}`]: type }, { [`${noticePrefixCls}-with-icon`]: !!iconNode }, className, contextClassName, mergedClassNames.root),
224
228
  style: {
225
- ...contextStyle,
226
229
  ...mergedStyles.root,
227
230
  ...style
228
231
  },