@sdata/web-vue 3.13.0 → 3.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (300) hide show
  1. package/dist/sd.css +167 -114
  2. package/dist/sd.min.css +2 -2
  3. package/es/_components/input-label/input-label.d.ts +2 -0
  4. package/es/_components/input-label/input-label.js +4 -2
  5. package/es/_components/input-label/style/index.css +2 -2
  6. package/es/_components/picker/style/index.scss +8 -2
  7. package/es/_components/resize-observer.js +1 -1
  8. package/es/_components/resize-trigger.vue_vue_type_script_setup_true_lang.js +13 -3
  9. package/es/_components/select-view/select-view.d.ts +2 -0
  10. package/es/_components/select-view/select-view.js +7 -1
  11. package/es/_components/select-view/style/index.css +5 -5
  12. package/es/_hooks/use-focus-trap.d.ts +10 -0
  13. package/es/_hooks/use-focus-trap.js +115 -0
  14. package/es/_utils/dom.js +1 -10
  15. package/es/_utils/keyboard.d.ts +4 -0
  16. package/es/_utils/keyboard.js +21 -2
  17. package/es/alert/alert.vue.d.ts +2 -2
  18. package/es/alert/alert.vue_vue_type_script_setup_true_lang.js +16 -4
  19. package/es/alert/index.d.ts +5 -5
  20. package/es/alert/style/index.css +1 -1
  21. package/es/alert/style/index.scss +1 -1
  22. package/es/anchor/anchor-link.vue_vue_type_script_setup_true_lang.js +3 -1
  23. package/es/anchor/anchor.vue_vue_type_script_setup_true_lang.js +6 -1
  24. package/es/anchor/style/index.css +1 -1
  25. package/es/anchor/style/index.scss +3 -1
  26. package/es/auto-complete/auto-complete.js +8 -0
  27. package/es/avatar/avatar.vue_vue_type_script_setup_true_lang.js +8 -2
  28. package/es/avatar/style/index.css +2 -2
  29. package/es/avatar/style/index.scss +2 -2
  30. package/es/back-top/back-top.vue_vue_type_script_setup_true_lang.js +8 -1
  31. package/es/back-top/style/index.css +1 -1
  32. package/es/back-top/style/index.scss +2 -1
  33. package/es/badge/badge.js +4 -1
  34. package/es/badge/style/index.css +3 -3
  35. package/es/badge/style/index.scss +3 -3
  36. package/es/basic-crud-table/basic-crud-modal.js +5 -0
  37. package/es/basic-crud-table/basic-crud-modal.vue.d.ts +264 -0
  38. package/es/basic-crud-table/basic-crud-modal.vue_vue_type_script_setup_true_lang.js +139 -0
  39. package/es/basic-crud-table/basic-crud-table.js +5 -0
  40. package/es/basic-crud-table/basic-crud-table.vue.d.ts +935 -0
  41. package/es/basic-crud-table/basic-crud-table.vue_vue_type_script_setup_true_lang.js +510 -0
  42. package/es/basic-crud-table/index.d.ts +2722 -0
  43. package/es/basic-crud-table/index.js +9 -0
  44. package/es/basic-crud-table/style/css.js +2 -0
  45. package/es/basic-crud-table/style/index.css +42 -0
  46. package/es/basic-crud-table/style/index.d.ts +2 -0
  47. package/es/basic-crud-table/style/index.js +2 -0
  48. package/es/basic-crud-table/style/index.scss +33 -0
  49. package/es/basic-crud-table/style/token.scss +8 -0
  50. package/es/basic-crud-table/types.d.ts +69 -0
  51. package/es/breadcrumb/breadcrumb-item.js +4 -2
  52. package/es/breadcrumb/breadcrumb.js +3 -0
  53. package/es/button/button.vue_vue_type_script_setup_true_lang.js +10 -5
  54. package/es/button/style/index.css +15 -6
  55. package/es/button/style/index.scss +25 -7
  56. package/es/calendar/components/event.vue_vue_type_script_setup_true_lang.js +1 -1
  57. package/es/calendar/components/headings-bar.vue_vue_type_script_setup_true_lang.js +1 -1
  58. package/es/calendar/style/event.scss +2 -2
  59. package/es/calendar/style/index.css +2 -2
  60. package/es/card/style/index.css +3 -3
  61. package/es/card/style/index.scss +3 -3
  62. package/es/carousel/carousel-arrow.vue.d.ts +4 -4
  63. package/es/carousel/carousel-arrow.vue_vue_type_script_setup_true_lang.js +25 -5
  64. package/es/carousel/carousel-indicator.vue_vue_type_script_setup_true_lang.js +25 -4
  65. package/es/carousel/carousel-item.vue_vue_type_script_setup_true_lang.js +11 -2
  66. package/es/carousel/carousel.js +20 -1
  67. package/es/carousel/style/index.css +1 -1
  68. package/es/carousel/style/index.scss +1 -1
  69. package/es/cascader/cascader-option.js +1 -1
  70. package/es/cascader/cascader.vue_vue_type_script_setup_true_lang.js +13 -4
  71. package/es/cascader/style/index.css +2 -2
  72. package/es/cascader/style/index.scss +3 -1
  73. package/es/checkbox/checkbox-group.js +4 -1
  74. package/es/checkbox/checkbox.d.ts +9 -0
  75. package/es/checkbox/checkbox.js +14 -0
  76. package/es/checkbox/index.d.ts +15 -0
  77. package/es/checkbox/style/index.css +1 -1
  78. package/es/checkbox/style/index.scss +1 -1
  79. package/es/collapse/collapse-item.js +21 -3
  80. package/es/collapse/context.d.ts +1 -1
  81. package/es/color-picker/color-picker.js +6 -0
  82. package/es/color-picker/panel.js +5 -3
  83. package/es/components.d.ts +1 -0
  84. package/es/copy/copy.vue_vue_type_script_setup_true_lang.js +11 -3
  85. package/es/date-picker/hooks/use-provide-datepicker-transform.js +1 -1
  86. package/es/date-picker/panels/body.vue_vue_type_script_setup_true_lang.js +14 -1
  87. package/es/date-picker/panels/header.vue_vue_type_script_setup_true_lang.js +1 -1
  88. package/es/date-picker/picker.vue_vue_type_script_setup_true_lang.js +4 -3
  89. package/es/date-picker/range-picker.vue_vue_type_script_setup_true_lang.js +2 -2
  90. package/es/date-picker/style/index.css +5 -5
  91. package/es/date-picker/style/index.scss +4 -3
  92. package/es/drawer/drawer.vue.d.ts +1 -1
  93. package/es/drawer/drawer.vue_vue_type_script_setup_true_lang.js +31 -9
  94. package/es/drawer/index.d.ts +3 -3
  95. package/es/dropdown/dropdown-button.vue_vue_type_script_setup_true_lang.js +1 -1
  96. package/es/dropdown/dropdown-option.vue_vue_type_script_setup_true_lang.js +5 -1
  97. package/es/dropdown/dropdown-panel.vue.d.ts +9 -0
  98. package/es/dropdown/dropdown-panel.vue_vue_type_script_setup_true_lang.js +76 -3
  99. package/es/dropdown/dropdown-submenu.vue_vue_type_script_setup_true_lang.js +6 -3
  100. package/es/dropdown/dropdown.vue_vue_type_script_setup_true_lang.js +4 -2
  101. package/es/dropdown/style/index.css +1 -1
  102. package/es/dropdown/style/index.scss +3 -1
  103. package/es/file-previewer/file-previewer.vue.d.ts +1 -1
  104. package/es/file-previewer/file-previewer.vue_vue_type_script_setup_true_lang.js +18 -10
  105. package/es/file-previewer/index.d.ts +3 -3
  106. package/es/form/context.d.ts +1 -0
  107. package/es/form/form-item.vue_vue_type_script_setup_true_lang.js +7 -3
  108. package/es/form/index.js +1 -1
  109. package/es/form/style/index.css +2 -2
  110. package/es/form/style/index.scss +2 -2
  111. package/es/grid/grid-col.vue_vue_type_script_setup_true_lang.js +1 -1
  112. package/es/grid/grid-item.vue_vue_type_script_setup_true_lang.js +1 -1
  113. package/es/grid/grid-row.vue_vue_type_script_setup_true_lang.js +1 -1
  114. package/es/grid/grid.vue_vue_type_script_setup_true_lang.js +1 -1
  115. package/es/image/image.vue_vue_type_script_setup_true_lang.js +1 -1
  116. package/es/image/preview-arrow.vue_vue_type_script_setup_true_lang.js +1 -1
  117. package/es/image/preview.vue.d.ts +1 -1
  118. package/es/image/preview.vue_vue_type_script_setup_true_lang.js +2 -2
  119. package/es/index.css +167 -114
  120. package/es/index.d.ts +2 -0
  121. package/es/index.js +55 -54
  122. package/es/index.scss +1 -0
  123. package/es/input/input.js +18 -2
  124. package/es/input/style/index.css +2 -2
  125. package/es/input/style/input.scss +4 -4
  126. package/es/input-number/input-number.js +9 -3
  127. package/es/input-number/style/index.css +3 -3
  128. package/es/input-number/style/index.scss +5 -1
  129. package/es/input-tag/index.d.ts +3 -0
  130. package/es/input-tag/input-tag.d.ts +2 -0
  131. package/es/input-tag/input-tag.js +34 -30
  132. package/es/input-tag/style/index.css +8 -8
  133. package/es/input-tag/style/index.scss +11 -5
  134. package/es/json-form/style/index.css +0 -3
  135. package/es/json-form/style/index.scss +4 -3
  136. package/es/json-form/utils.js +4 -4
  137. package/es/layout/sider.vue_vue_type_script_setup_true_lang.js +34 -7
  138. package/es/layout/style/index.css +2 -2
  139. package/es/layout/style/index.scss +4 -2
  140. package/es/link/link.vue_vue_type_script_setup_true_lang.js +1 -1
  141. package/es/link/style/index.css +1 -1
  142. package/es/link/style/index.scss +3 -1
  143. package/es/list/list.js +1 -1
  144. package/es/locale/interface.d.ts +39 -0
  145. package/es/locale/lang/ar-eg.js +38 -0
  146. package/es/locale/lang/de-de.js +38 -0
  147. package/es/locale/lang/en-us.js +38 -0
  148. package/es/locale/lang/es-es.js +38 -0
  149. package/es/locale/lang/fr-fr.js +38 -0
  150. package/es/locale/lang/id-id.js +38 -0
  151. package/es/locale/lang/it-it.js +38 -0
  152. package/es/locale/lang/ja-jp.js +38 -0
  153. package/es/locale/lang/km-kh.js +38 -0
  154. package/es/locale/lang/ko-kr.js +38 -0
  155. package/es/locale/lang/ms-my.js +38 -0
  156. package/es/locale/lang/nl-nl.js +38 -0
  157. package/es/locale/lang/pt-pt.js +38 -0
  158. package/es/locale/lang/ru-ru.js +38 -0
  159. package/es/locale/lang/th-th.js +38 -0
  160. package/es/locale/lang/vi-vn.js +38 -0
  161. package/es/locale/lang/zh-cn.js +38 -0
  162. package/es/locale/lang/zh-tw.js +38 -0
  163. package/es/mention/mention.js +8 -0
  164. package/es/menu/base-menu.vue_vue_type_script_setup_true_lang.js +29 -3
  165. package/es/menu/item.d.ts +1 -1
  166. package/es/menu/item.js +14 -1
  167. package/es/menu/style/index.css +6 -6
  168. package/es/menu/style/index.scss +5 -3
  169. package/es/message/style/index.css +3 -3
  170. package/es/message/style/index.scss +5 -3
  171. package/es/modal/index.d.ts +3 -3
  172. package/es/modal/modal.vue.d.ts +1 -1
  173. package/es/modal/modal.vue_vue_type_script_setup_true_lang.js +31 -15
  174. package/es/modal/style/index.css +2 -2
  175. package/es/modal/style/index.scss +3 -2
  176. package/es/notification/style/index.css +3 -3
  177. package/es/notification/style/index.scss +11 -3
  178. package/es/overflow-list/overflow-list.js +1 -1
  179. package/es/page-header/page-header.vue.d.ts +6 -6
  180. package/es/page-header/page-header.vue_vue_type_script_setup_true_lang.js +19 -2
  181. package/es/pagination/page-item-ellipsis.vue_vue_type_script_setup_true_lang.js +15 -2
  182. package/es/pagination/page-item-step.vue.d.ts +2 -2
  183. package/es/pagination/page-item-step.vue_vue_type_script_setup_true_lang.js +23 -4
  184. package/es/pagination/page-item.vue.d.ts +2 -2
  185. package/es/pagination/page-item.vue_vue_type_script_setup_true_lang.js +21 -3
  186. package/es/pagination/pagination.js +5 -1
  187. package/es/pagination/style/index.css +6 -1
  188. package/es/pagination/style/index.scss +9 -3
  189. package/es/popconfirm/popconfirm.vue_vue_type_script_setup_true_lang.js +3 -1
  190. package/es/popover/popover.vue_vue_type_script_setup_true_lang.js +2 -0
  191. package/es/progress/style/index.css +2 -2
  192. package/es/progress/style/index.scss +5 -3
  193. package/es/qr-code/qr-code-status.vue_vue_type_script_setup_true_lang.js +5 -1
  194. package/es/qr-code/qr-code.vue_vue_type_script_setup_true_lang.js +13 -6
  195. package/es/radio/context.d.ts +1 -0
  196. package/es/radio/radio-group.js +6 -2
  197. package/es/radio/radio.js +1 -0
  198. package/es/radio/style/index.css +2 -2
  199. package/es/radio/style/index.scss +4 -2
  200. package/es/rate/rate.js +27 -1
  201. package/es/resize-box/resize-box.vue.d.ts +4 -4
  202. package/es/resize-box/resize-box.vue_vue_type_script_setup_true_lang.js +30 -1
  203. package/es/result/result.vue_vue_type_script_setup_true_lang.js +7 -4
  204. package/es/sd-vue.js +54 -52
  205. package/es/secret/secret.vue_vue_type_script_setup_true_lang.js +3 -1
  206. package/es/select/index.d.ts +124 -0
  207. package/es/select/select-dropdown.vue_vue_type_script_setup_true_lang.js +4 -1
  208. package/es/select/select.d.ts +62 -0
  209. package/es/select/select.js +20 -4
  210. package/es/select/style/index.css +1 -1
  211. package/es/select/style/index.scss +3 -1
  212. package/es/selectable-card/style/index.css +2 -2
  213. package/es/selectable-card/style/index.scss +5 -5
  214. package/es/skeleton/skeleton.vue_vue_type_script_setup_true_lang.js +5 -1
  215. package/es/slider/slider-button.vue.d.ts +2 -0
  216. package/es/slider/slider-button.vue_vue_type_script_setup_true_lang.js +7 -2
  217. package/es/slider/slider.vue_vue_type_script_setup_true_lang.js +23 -2
  218. package/es/slider/style/index.css +1 -1
  219. package/es/slider/style/index.scss +3 -1
  220. package/es/spin/spin.js +7 -2
  221. package/es/spin/style/index.css +1 -1
  222. package/es/spin/style/index.scss +1 -1
  223. package/es/split/split.vue.d.ts +4 -4
  224. package/es/split/split.vue_vue_type_script_setup_true_lang.js +27 -3
  225. package/es/statistic/statistic.vue_vue_type_script_setup_true_lang.js +1 -1
  226. package/es/steps/context.d.ts +1 -0
  227. package/es/steps/step.vue_vue_type_script_setup_true_lang.js +15 -2
  228. package/es/steps/steps.vue_vue_type_script_setup_true_lang.js +10 -2
  229. package/es/steps/style/index.css +1 -1
  230. package/es/steps/style/index.scss +1 -1
  231. package/es/style/animation/index.scss +1 -0
  232. package/es/style/animation/reduced-motion.scss +22 -0
  233. package/es/style/animation/zoom.scss +7 -6
  234. package/es/style/icon.scss +9 -1
  235. package/es/switch/style/index.css +1 -1
  236. package/es/switch/style/index.scss +4 -1
  237. package/es/switch/switch.vue_vue_type_script_setup_true_lang.js +6 -1
  238. package/es/table/index.d.ts +4 -4
  239. package/es/table/style/index.css +8 -8
  240. package/es/table/style/index.scss +11 -8
  241. package/es/table/table-operation-td.d.ts +15 -0
  242. package/es/table/table-operation-td.js +3 -3
  243. package/es/table/table-operation-th.js +1 -1
  244. package/es/table/table-tbody.js +4 -1
  245. package/es/table/table-td.js +2 -1
  246. package/es/table/table-th.d.ts +1 -1
  247. package/es/table/table-th.js +7 -5
  248. package/es/table/table-thead.js +4 -1
  249. package/es/table/table-tr.js +4 -1
  250. package/es/table/table.d.ts +1 -1
  251. package/es/table/table.js +8 -4
  252. package/es/tabs/context.d.ts +1 -0
  253. package/es/tabs/style/index.css +5 -5
  254. package/es/tabs/style/index.scss +7 -7
  255. package/es/tabs/tab-pane.vue_vue_type_script_setup_true_lang.js +21 -2
  256. package/es/tabs/tabs-button.js +1 -1
  257. package/es/tabs/tabs-nav.js +34 -1
  258. package/es/tabs/tabs-tab.vue_vue_type_script_setup_true_lang.js +27 -4
  259. package/es/tabs/tabs.js +4 -2
  260. package/es/tag/index.d.ts +5 -5
  261. package/es/tag/style/index.css +1 -1
  262. package/es/tag/style/index.scss +3 -1
  263. package/es/tag/tag.vue.d.ts +2 -2
  264. package/es/tag/tag.vue_vue_type_script_setup_true_lang.js +27 -4
  265. package/es/tag-group/tag-group.vue_vue_type_script_setup_true_lang.js +2 -2
  266. package/es/textarea/style/index.css +2 -2
  267. package/es/textarea/textarea.vue_vue_type_script_setup_true_lang.js +18 -3
  268. package/es/time-picker/time-column.vue_vue_type_script_setup_true_lang.js +11 -3
  269. package/es/time-picker/time-picker.vue_vue_type_script_setup_true_lang.js +6 -3
  270. package/es/toolbar/index.d.ts +3 -3
  271. package/es/toolbar/toolbar.vue.d.ts +2 -2
  272. package/es/toolbar/toolbar.vue_vue_type_script_setup_true_lang.js +5 -5
  273. package/es/tooltip/tooltip.vue_vue_type_script_setup_true_lang.js +1 -0
  274. package/es/transfer/style/index.css +1 -1
  275. package/es/transfer/style/index.scss +1 -1
  276. package/es/transfer/transfer-list-item.js +18 -2
  277. package/es/transfer/transfer.vue_vue_type_script_setup_true_lang.js +7 -5
  278. package/es/tree/base-node.vue_vue_type_script_setup_true_lang.js +28 -8
  279. package/es/tree/context.d.ts +2 -0
  280. package/es/tree/node-switcher.vue_vue_type_script_lang.js +1 -1
  281. package/es/tree/style/index.css +1 -1
  282. package/es/tree/style/index.scss +1 -1
  283. package/es/tree/tree.vue_vue_type_script_setup_true_lang.js +81 -2
  284. package/es/tree-select/tree-select.vue_vue_type_script_setup_true_lang.js +10 -1
  285. package/es/trigger/index.d.ts +45 -0
  286. package/es/trigger/trigger.d.ts +27 -0
  287. package/es/trigger/trigger.js +47 -5
  288. package/es/typography/edit-content.vue_vue_type_script_setup_true_lang.js +17 -8
  289. package/es/typography/operations.vue_vue_type_script_setup_true_lang.js +38 -6
  290. package/es/typography/style/index.css +2 -2
  291. package/es/typography/style/index.scss +2 -2
  292. package/es/upload/style/index.css +9 -9
  293. package/es/upload/style/index.scss +15 -9
  294. package/es/upload/upload-list-item.js +18 -5
  295. package/es/upload/upload-picture-item.js +27 -3
  296. package/es/verification-code/verification-code.js +8 -1
  297. package/json/vetur-attributes.json +15 -0
  298. package/json/vetur-tags.json +9 -2
  299. package/json/web-types.json +39 -1
  300. package/package.json +1 -1
package/es/index.d.ts CHANGED
@@ -18,6 +18,8 @@ export { default as BorderBeam } from './border-beam';
18
18
  export type { BorderBeamInstance, BorderBeamSize, BorderBeamTheme, BorderBeamColorVariant, BorderBeamFlowPreset, BorderBeamFlowPoint, BorderBeamFlowCoordinate, BorderBeamExposed, } from './border-beam';
19
19
  export { default as Badge } from './badge';
20
20
  export type { BadgeInstance } from './badge';
21
+ export { default as BasicCrudTable } from './basic-crud-table';
22
+ export type { BasicCrudTableActionSlotProps, BasicCrudTableDataResult, BasicCrudTableInstance, BasicCrudTableModalFormProps, BasicCrudTableModalProps, BasicCrudTableModalSlotProps, BasicCrudTableModalSubmitContext, BasicCrudTableProps, BasicCrudTableTableProps, BasicCrudTableToolbarProps, InferBasicCrudTableRow, InferBasicCrudTableRowFromValue, MaybePromise, } from './basic-crud-table';
21
23
  export { default as Breadcrumb, BreadcrumbItem } from './breadcrumb';
22
24
  export type { BreadcrumbInstance, BreadcrumbItemInstance, BreadcrumbRoute } from './breadcrumb';
23
25
  export { default as Button, ButtonGroup } from './button';
package/es/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import { useFormItem } from "./_hooks/use-form-item.js";
2
2
  import { getCssVarToken } from "./_utils/global-config.js";
3
3
  import Affix from "./affix/index.js";
4
+ import { addI18nMessages, getLocale, useLocale } from "./locale/index.js";
4
5
  import Alert from "./alert/index.js";
5
6
  import anchor_link_default from "./anchor/anchor-link.js";
6
7
  import Anchor from "./anchor/index.js";
7
- import { addI18nMessages, getLocale, useLocale } from "./locale/index.js";
8
8
  import Trigger from "./trigger/index.js";
9
9
  import Tooltip from "./tooltip/index.js";
10
10
  import input_group_default from "./input/input-group.js";
@@ -21,8 +21,60 @@ import AvatarGroup from "./avatar/avatar-group.js";
21
21
  import Avatar from "./avatar/index.js";
22
22
  import BackTop from "./back-top/index.js";
23
23
  import Badge from "./badge/index.js";
24
- import BorderBeam from "./border-beam/index.js";
24
+ import Ellipsis, { PerformantEllipsis } from "./ellipsis/index.js";
25
+ import Link from "./link/index.js";
26
+ import Popconfirm from "./popconfirm/index.js";
27
+ import Space from "./space/index.js";
25
28
  import Empty from "./empty/index.js";
29
+ import InputNumber from "./input-number/index.js";
30
+ import Pagination from "./pagination/index.js";
31
+ import checkbox_group_default from "./checkbox/checkbox-group.js";
32
+ import Checkbox from "./checkbox/index.js";
33
+ import radio_group_default from "./radio/radio-group.js";
34
+ import Radio from "./radio/index.js";
35
+ import table_tbody_default from "./table/table-tbody.js";
36
+ import table_td_default from "./table/table-td.js";
37
+ import table_th_default from "./table/table-th.js";
38
+ import table_thead_default from "./table/table-thead.js";
39
+ import table_tr_default from "./table/table-tr.js";
40
+ import table_column_default from "./table/table-column.js";
41
+ import Table from "./table/index.js";
42
+ import grid_col_default from "./grid/grid-col.js";
43
+ import grid_item_default from "./grid/grid-item.js";
44
+ import grid_row_default from "./grid/grid-row.js";
45
+ import Grid from "./grid/index.js";
46
+ import form_item_default from "./form/form-item.js";
47
+ import Form from "./form/index.js";
48
+ import { A2UI_0_8, defineJsonFormComponents, defineJsonFormSchemas } from "./json-form/types.js";
49
+ import cascader_panel_default from "./cascader/cascader-panel.js";
50
+ import Tag from "./tag/index.js";
51
+ import InputTag from "./input-tag/index.js";
52
+ import Cascader from "./cascader/index.js";
53
+ import month_picker_default from "./date-picker/pickers/month-picker.js";
54
+ import quarter_picker_default from "./date-picker/pickers/quarter-picker.js";
55
+ import week_picker_default from "./date-picker/pickers/week-picker.js";
56
+ import year_picker_default from "./date-picker/pickers/year-picker.js";
57
+ import range_picker_default from "./date-picker/range-picker.js";
58
+ import DatePicker from "./date-picker/index.js";
59
+ import Textarea from "./textarea/index.js";
60
+ import Mention from "./mention/index.js";
61
+ import Rate from "./rate/index.js";
62
+ import Select from "./select/index.js";
63
+ import Slider from "./slider/index.js";
64
+ import Switch from "./switch/index.js";
65
+ import TimePicker from "./time-picker/index.js";
66
+ import list_item_default from "./list/list-item.js";
67
+ import list_item_meta_default from "./list/list-item-meta.js";
68
+ import List from "./list/index.js";
69
+ import Transfer from "./transfer/index.js";
70
+ import Tree from "./tree/index.js";
71
+ import TreeSelect from "./tree-select/index.js";
72
+ import VerificationCode from "./verification-code/index.js";
73
+ import JsonForm from "./json-form/index.js";
74
+ import Toolbar from "./toolbar/index.js";
75
+ import Modal from "./modal/index.js";
76
+ import BasicCrudTable from "./basic-crud-table/index.js";
77
+ import BorderBeam from "./border-beam/index.js";
26
78
  import dropdown_button_default from "./dropdown/dropdown-button.js";
27
79
  import dropdown_group_default from "./dropdown/dropdown-group.js";
28
80
  import dropdown_option_default from "./dropdown/dropdown-option.js";
@@ -30,38 +82,20 @@ import dropdown_submenu_default from "./dropdown/dropdown-submenu.js";
30
82
  import Dropdown from "./dropdown/index.js";
31
83
  import breadcrumb_item_default from "./breadcrumb/breadcrumb-item.js";
32
84
  import Breadcrumb from "./breadcrumb/index.js";
33
- import Ellipsis, { PerformantEllipsis } from "./ellipsis/index.js";
34
85
  import Calendar from "./calendar/index.js";
35
86
  import card_grid_default from "./card/card-grid.js";
36
87
  import card_meta_default from "./card/card-meta.js";
37
88
  import Card from "./card/index.js";
38
89
  import carousel_item_default from "./carousel/carousel-item.js";
39
90
  import Carousel from "./carousel/index.js";
40
- import checkbox_group_default from "./checkbox/checkbox-group.js";
41
- import Checkbox from "./checkbox/index.js";
42
- import radio_group_default from "./radio/radio-group.js";
43
- import Radio from "./radio/index.js";
44
- import cascader_panel_default from "./cascader/cascader-panel.js";
45
- import Tag from "./tag/index.js";
46
- import InputTag from "./input-tag/index.js";
47
- import Cascader from "./cascader/index.js";
48
91
  import collapse_item_default from "./collapse/collapse-item.js";
49
92
  import Collapse from "./collapse/index.js";
50
- import InputNumber from "./input-number/index.js";
51
- import Select from "./select/index.js";
52
93
  import ColorPicker from "./color-picker/index.js";
53
94
  import Comment from "./comment/index.js";
54
95
  import ConfigProvider from "./config-provider/index.js";
55
- import Link from "./link/index.js";
56
96
  import Message from "./message/index.js";
57
97
  import Copy from "./copy/index.js";
58
98
  import Cropper from "./cropper/index.js";
59
- import month_picker_default from "./date-picker/pickers/month-picker.js";
60
- import quarter_picker_default from "./date-picker/pickers/quarter-picker.js";
61
- import week_picker_default from "./date-picker/pickers/week-picker.js";
62
- import year_picker_default from "./date-picker/pickers/year-picker.js";
63
- import range_picker_default from "./date-picker/range-picker.js";
64
- import DatePicker from "./date-picker/index.js";
65
99
  import descriptions_item_default from "./descriptions/descriptions-item.js";
66
100
  import Descriptions from "./descriptions/index.js";
67
101
  import Divider from "./divider/index.js";
@@ -71,29 +105,7 @@ import preview_default from "./image/preview.js";
71
105
  import preview_group_default from "./image/preview-group.js";
72
106
  import Image from "./image/index.js";
73
107
  import FilePreviewer from "./file-previewer/index.js";
74
- import grid_col_default from "./grid/grid-col.js";
75
- import grid_item_default from "./grid/grid-item.js";
76
- import grid_row_default from "./grid/grid-row.js";
77
- import Grid from "./grid/index.js";
78
- import form_item_default from "./form/form-item.js";
79
- import Form from "./form/index.js";
80
108
  import Icon from "./icon-component/index.js";
81
- import { A2UI_0_8, defineJsonFormComponents, defineJsonFormSchemas } from "./json-form/types.js";
82
- import Textarea from "./textarea/index.js";
83
- import Mention from "./mention/index.js";
84
- import Rate from "./rate/index.js";
85
- import Slider from "./slider/index.js";
86
- import Switch from "./switch/index.js";
87
- import TimePicker from "./time-picker/index.js";
88
- import Pagination from "./pagination/index.js";
89
- import list_item_default from "./list/list-item.js";
90
- import list_item_meta_default from "./list/list-item-meta.js";
91
- import List from "./list/index.js";
92
- import Transfer from "./transfer/index.js";
93
- import Tree from "./tree/index.js";
94
- import TreeSelect from "./tree-select/index.js";
95
- import VerificationCode from "./verification-code/index.js";
96
- import JsonForm from "./json-form/index.js";
97
109
  import content_default from "./layout/content.js";
98
110
  import footer_default from "./layout/footer.js";
99
111
  import header_default from "./layout/header.js";
@@ -103,11 +115,9 @@ import item_default from "./menu/item.js";
103
115
  import item_group_default from "./menu/item-group.js";
104
116
  import sub_menu_default from "./menu/sub-menu.js";
105
117
  import Menu from "./menu/index.js";
106
- import Modal from "./modal/index.js";
107
118
  import Notification from "./notification/index.js";
108
119
  import OverflowList from "./overflow-list/index.js";
109
120
  import PageHeader from "./page-header/index.js";
110
- import Popconfirm from "./popconfirm/index.js";
111
121
  import Progress from "./progress/index.js";
112
122
  import QrCode from "./qr-code/index.js";
113
123
  import ResizeBox from "./resize-box/index.js";
@@ -117,26 +127,17 @@ import SelectableCard from "./selectable-card/index.js";
117
127
  import line_default from "./skeleton/line.js";
118
128
  import shape_default from "./skeleton/shape.js";
119
129
  import Skeleton from "./skeleton/index.js";
120
- import Space from "./space/index.js";
121
130
  import Split from "./split/index.js";
122
131
  import countdown_default from "./statistic/countdown.js";
123
132
  import Statistic from "./statistic/index.js";
124
133
  import step_default from "./steps/step.js";
125
134
  import Steps from "./steps/index.js";
126
- import table_tbody_default from "./table/table-tbody.js";
127
- import table_td_default from "./table/table-td.js";
128
- import table_th_default from "./table/table-th.js";
129
- import table_thead_default from "./table/table-thead.js";
130
- import table_tr_default from "./table/table-tr.js";
131
- import table_column_default from "./table/table-column.js";
132
- import Table from "./table/index.js";
133
135
  import tab_pane_default from "./tabs/tab-pane.js";
134
136
  import Tabs from "./tabs/index.js";
135
137
  import TagGroup from "./tag-group/index.js";
136
138
  import ThemeProvider from "./theme-provider/index.js";
137
139
  import item_default$1 from "./timeline/item.js";
138
140
  import Timeline from "./timeline/index.js";
139
- import Toolbar from "./toolbar/index.js";
140
141
  import Tour from "./tour/index.js";
141
142
  import paragraph_default from "./typography/paragraph.js";
142
143
  import text_default from "./typography/text.js";
@@ -145,4 +146,4 @@ import Typography from "./typography/index.js";
145
146
  import Upload from "./upload/index.js";
146
147
  import Watermark from "./watermark/index.js";
147
148
  import SDVue from "./sd-vue.js";
148
- export { A2UI_0_8, Affix, Alert, Anchor, anchor_link_default as AnchorLink, AutoComplete, Avatar, AvatarGroup, BackTop, Badge, BorderBeam, Breadcrumb, breadcrumb_item_default as BreadcrumbItem, Button, button_group_default as ButtonGroup, Calendar, Card, card_grid_default as CardGrid, card_meta_default as CardMeta, Carousel, carousel_item_default as CarouselItem, Cascader, cascader_panel_default as CascaderPanel, Checkbox, checkbox_group_default as CheckboxGroup, grid_col_default as Col, Collapse, collapse_item_default as CollapseItem, ColorPicker, Comment, ConfigProvider, Copy, countdown_default as Countdown, Cropper, DatePicker, Descriptions, descriptions_item_default as DescriptionsItem, dropdown_group_default as Dgroup, Divider, dropdown_option_default as Doption, Drawer, Dropdown, dropdown_button_default as DropdownButton, dropdown_submenu_default as Dsubmenu, Ellipsis, Empty, FilePreviewer, Form, form_item_default as FormItem, Grid, grid_item_default as GridItem, Icon, Image, preview_default as ImagePreview, preview_action_default as ImagePreviewAction, preview_group_default as ImagePreviewGroup, Input, input_group_default as InputGroup, InputNumber, input_password_default as InputPassword, input_search_default as InputSearch, InputTag, JsonForm, Layout, content_default as LayoutContent, footer_default as LayoutFooter, header_default as LayoutHeader, sider_default as LayoutSider, Link, List, list_item_default as ListItem, list_item_meta_default as ListItemMeta, Mention, Menu, item_default as MenuItem, item_group_default as MenuItemGroup, Message, Modal, month_picker_default as MonthPicker, Notification, OverflowList, PageHeader, Pagination, PerformantEllipsis, Popconfirm, Popover, Progress, QrCode, quarter_picker_default as QuarterPicker, Radio, radio_group_default as RadioGroup, range_picker_default as RangePicker, Rate, ResizeBox, Result, grid_row_default as Row, Scrollbar, Secret, Select, SelectableCard, Skeleton, line_default as SkeletonLine, shape_default as SkeletonShape, Slider, Space, Spin, Split, Statistic, step_default as Step, Steps, sub_menu_default as SubMenu, Switch, tab_pane_default as TabPane, Table, table_column_default as TableColumn, Tabs, Tag, TagGroup, table_tbody_default as Tbody, table_td_default as Td, Textarea, table_th_default as Th, table_thead_default as Thead, ThemeProvider, TimePicker, Timeline, item_default$1 as TimelineItem, Toolbar, Tooltip, Tour, table_tr_default as Tr, Transfer, Tree, TreeSelect, Trigger, Typography, paragraph_default as TypographyParagraph, text_default as TypographyText, title_default as TypographyTitle, Upload, VerificationCode, Watermark, week_picker_default as WeekPicker, year_picker_default as YearPicker, addI18nMessages, SDVue as default, defineJsonFormComponents, defineJsonFormSchemas, getCssVarToken, getLocale, useFormItem, useLocale };
149
+ export { A2UI_0_8, Affix, Alert, Anchor, anchor_link_default as AnchorLink, AutoComplete, Avatar, AvatarGroup, BackTop, Badge, BasicCrudTable, BorderBeam, Breadcrumb, breadcrumb_item_default as BreadcrumbItem, Button, button_group_default as ButtonGroup, Calendar, Card, card_grid_default as CardGrid, card_meta_default as CardMeta, Carousel, carousel_item_default as CarouselItem, Cascader, cascader_panel_default as CascaderPanel, Checkbox, checkbox_group_default as CheckboxGroup, grid_col_default as Col, Collapse, collapse_item_default as CollapseItem, ColorPicker, Comment, ConfigProvider, Copy, countdown_default as Countdown, Cropper, DatePicker, Descriptions, descriptions_item_default as DescriptionsItem, dropdown_group_default as Dgroup, Divider, dropdown_option_default as Doption, Drawer, Dropdown, dropdown_button_default as DropdownButton, dropdown_submenu_default as Dsubmenu, Ellipsis, Empty, FilePreviewer, Form, form_item_default as FormItem, Grid, grid_item_default as GridItem, Icon, Image, preview_default as ImagePreview, preview_action_default as ImagePreviewAction, preview_group_default as ImagePreviewGroup, Input, input_group_default as InputGroup, InputNumber, input_password_default as InputPassword, input_search_default as InputSearch, InputTag, JsonForm, Layout, content_default as LayoutContent, footer_default as LayoutFooter, header_default as LayoutHeader, sider_default as LayoutSider, Link, List, list_item_default as ListItem, list_item_meta_default as ListItemMeta, Mention, Menu, item_default as MenuItem, item_group_default as MenuItemGroup, Message, Modal, month_picker_default as MonthPicker, Notification, OverflowList, PageHeader, Pagination, PerformantEllipsis, Popconfirm, Popover, Progress, QrCode, quarter_picker_default as QuarterPicker, Radio, radio_group_default as RadioGroup, range_picker_default as RangePicker, Rate, ResizeBox, Result, grid_row_default as Row, Scrollbar, Secret, Select, SelectableCard, Skeleton, line_default as SkeletonLine, shape_default as SkeletonShape, Slider, Space, Spin, Split, Statistic, step_default as Step, Steps, sub_menu_default as SubMenu, Switch, tab_pane_default as TabPane, Table, table_column_default as TableColumn, Tabs, Tag, TagGroup, table_tbody_default as Tbody, table_td_default as Td, Textarea, table_th_default as Th, table_thead_default as Thead, ThemeProvider, TimePicker, Timeline, item_default$1 as TimelineItem, Toolbar, Tooltip, Tour, table_tr_default as Tr, Transfer, Tree, TreeSelect, Trigger, Typography, paragraph_default as TypographyParagraph, text_default as TypographyText, title_default as TypographyTitle, Upload, VerificationCode, Watermark, week_picker_default as WeekPicker, year_picker_default as YearPicker, addI18nMessages, SDVue as default, defineJsonFormComponents, defineJsonFormSchemas, getCssVarToken, getLocale, useFormItem, useLocale };
package/es/index.scss CHANGED
@@ -80,6 +80,7 @@
80
80
  @use '@components/button/style/index.scss' as *;
81
81
  @use '@components/breadcrumb/style/index.scss' as *;
82
82
  @use '@components/badge/style/index.scss' as *;
83
+ @use '@components/basic-crud-table/style/index.scss' as *;
83
84
  @use '@components/back-top/style/index.scss' as *;
84
85
  @use '@components/border-beam/style/index.scss' as *;
85
86
  @use '@components/avatar/style/index.scss' as *;
package/es/input/input.js CHANGED
@@ -3,7 +3,9 @@ import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.133.0/helper
3
3
  import { getPrefixCls } from "../_utils/global-config.js";
4
4
  import { isFunction, isNull, isObject, isUndefined } from "../_utils/is.js";
5
5
  import icon_hover_default from "../_components/icon-hover.js";
6
+ import { isActivationKey } from "../_utils/keyboard.js";
6
7
  import IconClose from "../icon/icon-close/index.js";
8
+ import { useI18n } from "../locale/index.js";
7
9
  import { useAllowClear } from "../_hooks/use-allow-clear.js";
8
10
  import feedback_icon_default from "../_components/feedback-icon.js";
9
11
  import { useCursor } from "../_hooks/use-cursor.js";
@@ -192,10 +194,11 @@ var input_default = /* @__PURE__ */ defineComponent({
192
194
  * @slot append
193
195
  */
194
196
  setup(props, { emit, slots, attrs }) {
197
+ const { t } = useI18n();
195
198
  const { size, disabled, error, modelValue, allowClear } = toRefs(props);
196
199
  const prefixCls = getPrefixCls("input");
197
200
  const inputRef = ref();
198
- const { mergedSize: _mergedSize, mergedDisabled, mergedError: _mergedError, feedback, eventHandlers } = useFormItem({
201
+ const { mergedSize: _mergedSize, mergedDisabled, mergedError: _mergedError, feedback, eventHandlers, formItemCtx } = useFormItem({
199
202
  size,
200
203
  disabled,
201
204
  error
@@ -320,6 +323,12 @@ var input_default = /* @__PURE__ */ defineComponent({
320
323
  emitChange("", ev);
321
324
  emit("clear", ev);
322
325
  };
326
+ const handleClearKeydown = (ev) => {
327
+ if (isActivationKey(ev)) {
328
+ ev.preventDefault();
329
+ handleClear(ev);
330
+ }
331
+ };
323
332
  const handleKeyDown = (e) => {
324
333
  if (props.readonly && !mergedDisabled.value && isReadonlyModificationKey(e)) showReadonlyTip();
325
334
  const keyCode = e.key || e.code;
@@ -346,6 +355,7 @@ var input_default = /* @__PURE__ */ defineComponent({
346
355
  const inputAttrs = computed(() => pick(attrs, INPUT_EVENTS));
347
356
  const mergeInputAttrs = computed(() => {
348
357
  const attrs = _objectSpread2(_objectSpread2({}, inputAttrs.value), props.inputAttrs);
358
+ if (formItemCtx.fieldId && attrs.id === void 0) attrs.id = formItemCtx.fieldId;
349
359
  if (mergedError.value) attrs["aria-invalid"] = true;
350
360
  return attrs;
351
361
  });
@@ -375,7 +385,13 @@ var input_default = /* @__PURE__ */ defineComponent({
375
385
  showClearBtn.value && createVNode(icon_hover_default, mergeProps({
376
386
  "prefix": prefixCls,
377
387
  "class": `${prefixCls}-clear-btn`
378
- }, { onClick: handleClear }), { default: () => [createVNode(IconClose, null, null)] }),
388
+ }, {
389
+ "onClick": handleClear,
390
+ "onKeydown": handleClearKeydown,
391
+ "role": "button",
392
+ "tabindex": 0,
393
+ "aria-label": t("a11y.clear")
394
+ }), { default: () => [createVNode(IconClose, null, null)] }),
379
395
  (slots.suffix || Boolean(props.maxLength) && props.showWordLimit || Boolean(feedback.value)) && createVNode("span", { "class": [`${prefixCls}-suffix`, { [`${prefixCls}-suffix-has-feedback`]: feedback.value }] }, [
380
396
  Boolean(props.maxLength) && props.showWordLimit && createVNode("span", { "class": `${prefixCls}-word-limit` }, [
381
397
  valueLength.value,
@@ -55,7 +55,7 @@
55
55
  border: 1px solid transparent;
56
56
  border-radius: var(--sd-border-radius-small);
57
57
  cursor: text;
58
- transition: color 0.1s cubic-bezier(0, 0, 1, 1), border-color 0.1s cubic-bezier(0, 0, 1, 1), background-color 0.1s cubic-bezier(0, 0, 1, 1);
58
+ transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), border-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), background-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
59
59
  }
60
60
  .sd-input-wrapper:hover {
61
61
  background-color: var(--sd-color-fill-3);
@@ -140,7 +140,7 @@
140
140
  }
141
141
  .sd-input-wrapper .sd-input-clear-btn > svg {
142
142
  position: relative;
143
- transition: color 0.1s cubic-bezier(0, 0, 1, 1);
143
+ transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
144
144
  }
145
145
  .sd-input-wrapper:hover .sd-input-clear-btn {
146
146
  visibility: visible;
@@ -52,9 +52,9 @@
52
52
  border-radius: $input-border-radius;
53
53
  cursor: text;
54
54
  transition:
55
- color theme.$transition-duration-1 theme.$transition-timing-function-linear,
56
- border-color theme.$transition-duration-1 theme.$transition-timing-function-linear,
57
- background-color theme.$transition-duration-1 theme.$transition-timing-function-linear;
55
+ color theme.$transition-duration-1 theme.$transition-timing-function-standard,
56
+ border-color theme.$transition-duration-1 theme.$transition-timing-function-standard,
57
+ background-color theme.$transition-duration-1 theme.$transition-timing-function-standard;
58
58
 
59
59
  &:hover {
60
60
  background-color: $input-color-bg_hover;
@@ -143,7 +143,7 @@
143
143
 
144
144
  > svg {
145
145
  position: relative;
146
- transition: color theme.$transition-duration-1 theme.$transition-timing-function-linear;
146
+ transition: color theme.$transition-duration-1 theme.$transition-timing-function-standard;
147
147
  }
148
148
  }
149
149
 
@@ -2,15 +2,16 @@ import { useFormItem } from "../_hooks/use-form-item.js";
2
2
  import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.133.0/helpers/esm/objectSpread2.js";
3
3
  import { getPrefixCls } from "../_utils/global-config.js";
4
4
  import { isNumber, isUndefined } from "../_utils/is.js";
5
+ import { KEYBOARD_KEY, getKeyDownHandler } from "../_utils/keyboard.js";
6
+ import { useI18n } from "../locale/index.js";
5
7
  import { useAllowClear } from "../_hooks/use-allow-clear.js";
6
8
  import { useSize } from "../_hooks/use-size.js";
7
9
  import Button from "../button/index.js";
8
10
  import Input from "../input/index.js";
9
- import { KEYBOARD_KEY, getKeyDownHandler } from "../_utils/keyboard.js";
10
- import IconDown from "../icon/icon-down/index.js";
11
- import IconUp from "../icon/icon-up/index.js";
12
11
  import IconMinus from "../icon/icon-minus/index.js";
13
12
  import IconPlus from "../icon/icon-plus/index.js";
13
+ import IconDown from "../icon/icon-down/index.js";
14
+ import IconUp from "../icon/icon-up/index.js";
14
15
  import { Fragment, computed, createVNode, defineComponent, mergeProps, ref, toRefs, watch } from "vue";
15
16
  import NP from "number-precision";
16
17
  //#region components/input-number/input-number.tsx
@@ -223,6 +224,7 @@ var input_number_default = /* @__PURE__ */ defineComponent({
223
224
  */
224
225
  setup(props, { emit, slots }) {
225
226
  var _props$modelValue, _props$modelValue2;
227
+ const { t } = useI18n();
226
228
  const { size, disabled, allowClear } = toRefs(props);
227
229
  const prefixCls = getPrefixCls("input-number");
228
230
  const inputRef = ref();
@@ -392,6 +394,7 @@ var input_number_default = /* @__PURE__ */ defineComponent({
392
394
  "class": [`${prefixCls}-step-button`, { [`${prefixCls}-step-button-disabled`]: mergedDisabled.value || isMax.value }],
393
395
  "type": "button",
394
396
  "tabindex": "-1",
397
+ "aria-label": t("a11y.increase"),
395
398
  "disabled": mergedDisabled.value || isMax.value,
396
399
  "onMousedown": (e) => handleStepButton(e, "plus", true),
397
400
  "onMouseup": clearRepeatTimer,
@@ -400,6 +403,7 @@ var input_number_default = /* @__PURE__ */ defineComponent({
400
403
  "class": [`${prefixCls}-step-button`, { [`${prefixCls}-step-button-disabled`]: mergedDisabled.value || isMin.value }],
401
404
  "type": "button",
402
405
  "tabindex": "-1",
406
+ "aria-label": t("a11y.decrease"),
403
407
  "disabled": mergedDisabled.value || isMin.value,
404
408
  "onMousedown": (e) => handleStepButton(e, "minus", true),
405
409
  "onMouseup": clearRepeatTimer,
@@ -415,6 +419,7 @@ var input_number_default = /* @__PURE__ */ defineComponent({
415
419
  const renderPrependButton = () => {
416
420
  return createVNode(Button, mergeProps({
417
421
  "size": mergedSize.value,
422
+ "aria-label": t("a11y.decrease"),
418
423
  "class": `${prefixCls}-step-button`,
419
424
  "disabled": mergedDisabled.value || isMin.value
420
425
  }, {
@@ -427,6 +432,7 @@ var input_number_default = /* @__PURE__ */ defineComponent({
427
432
  const renderAppendButton = () => {
428
433
  return createVNode(Button, mergeProps({
429
434
  "size": mergedSize.value,
435
+ "aria-label": t("a11y.increase"),
430
436
  "class": `${prefixCls}-step-button`,
431
437
  "disabled": mergedDisabled.value || isMax.value
432
438
  }, {
@@ -36,7 +36,7 @@
36
36
  background-color: var(--sd-color-fill-2);
37
37
  cursor: pointer;
38
38
  user-select: none;
39
- transition: all 0.1s cubic-bezier(0, 0, 1, 1);
39
+ transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), background-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), border-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), opacity 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
40
40
  }
41
41
  .sd-input-number-step-button:hover {
42
42
  background-color: var(--sd-color-fill-3);
@@ -59,7 +59,7 @@
59
59
  position: relative;
60
60
  }
61
61
  .sd-input-number-prefix, .sd-input-number-suffix {
62
- transition: all 0.1s cubic-bezier(0, 0, 1, 1);
62
+ transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), background-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), border-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), opacity 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
63
63
  }
64
64
  .sd-input-number-mode-embed .sd-input-number-step {
65
65
  position: absolute;
@@ -70,7 +70,7 @@
70
70
  overflow: hidden;
71
71
  border-radius: 1px;
72
72
  opacity: 0;
73
- transition: all 0.1s cubic-bezier(0, 0, 1, 1);
73
+ transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), background-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), border-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), opacity 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
74
74
  }
75
75
  .sd-input-number-mode-embed .sd-input-number-step .sd-input-number-step-button {
76
76
  width: 100%;
@@ -14,7 +14,11 @@ $input-number-prefix-cls: string.unquote('#{theme.$prefix}-input-number');
14
14
  border-radius: $input-number-border-radius;
15
15
 
16
16
  @mixin transition() {
17
- transition: all theme.$transition-duration-1 theme.$transition-timing-function-linear;
17
+ transition:
18
+ color theme.$transition-duration-1 theme.$transition-timing-function-standard,
19
+ background-color theme.$transition-duration-1 theme.$transition-timing-function-standard,
20
+ border-color theme.$transition-duration-1 theme.$transition-timing-function-standard,
21
+ opacity theme.$transition-duration-1 theme.$transition-timing-function-standard;
18
22
  }
19
23
 
20
24
  &-step-button {
@@ -64,6 +64,7 @@ declare const InputTag: {
64
64
  focused: BooleanConstructor;
65
65
  disabledInput: BooleanConstructor;
66
66
  uninjectFormItemContext: BooleanConstructor;
67
+ inputAttrs: import("vue").PropType<Record<string, unknown>>;
67
68
  }>> & Readonly<{
68
69
  onFocus?: ((_ev: FocusEvent) => any) | undefined;
69
70
  onClear?: ((_ev: MouseEvent) => any) | undefined;
@@ -176,6 +177,7 @@ declare const InputTag: {
176
177
  focused: BooleanConstructor;
177
178
  disabledInput: BooleanConstructor;
178
179
  uninjectFormItemContext: BooleanConstructor;
180
+ inputAttrs: import("vue").PropType<Record<string, unknown>>;
179
181
  }>> & Readonly<{
180
182
  onFocus?: ((_ev: FocusEvent) => any) | undefined;
181
183
  onClear?: ((_ev: MouseEvent) => any) | undefined;
@@ -275,6 +277,7 @@ declare const InputTag: {
275
277
  focused: BooleanConstructor;
276
278
  disabledInput: BooleanConstructor;
277
279
  uninjectFormItemContext: BooleanConstructor;
280
+ inputAttrs: import("vue").PropType<Record<string, unknown>>;
278
281
  }>> & Readonly<{
279
282
  onFocus?: ((_ev: FocusEvent) => any) | undefined;
280
283
  onClear?: ((_ev: MouseEvent) => any) | undefined;
@@ -63,6 +63,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
63
63
  focused: BooleanConstructor;
64
64
  disabledInput: BooleanConstructor;
65
65
  uninjectFormItemContext: BooleanConstructor;
66
+ inputAttrs: PropType<Record<string, unknown>>;
66
67
  }>, {
67
68
  inputRef: import("vue").Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
68
69
  render: () => import("vue/jsx-runtime").JSX.Element;
@@ -141,6 +142,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
141
142
  focused: BooleanConstructor;
142
143
  disabledInput: BooleanConstructor;
143
144
  uninjectFormItemContext: BooleanConstructor;
145
+ inputAttrs: PropType<Record<string, unknown>>;
144
146
  }>> & Readonly<{
145
147
  onFocus?: ((_ev: FocusEvent) => any) | undefined;
146
148
  onClear?: ((_ev: MouseEvent) => any) | undefined;
@@ -152,7 +152,8 @@ var input_tag_default = /* @__PURE__ */ defineComponent({
152
152
  baseCls: String,
153
153
  focused: Boolean,
154
154
  disabledInput: Boolean,
155
- uninjectFormItemContext: Boolean
155
+ uninjectFormItemContext: Boolean,
156
+ inputAttrs: Object
156
157
  },
157
158
  emits: {
158
159
  "update:modelValue": (_value) => true,
@@ -567,35 +568,38 @@ var input_tag_default = /* @__PURE__ */ defineComponent({
567
568
  }, { class: [`${prefixCls}-inner`, {
568
569
  [`${prefixCls}-inner-responsive`]: isResponsiveMaxTagCount.value,
569
570
  [`${prefixCls}-nowrap`]: props.tagNowrap
570
- }] }), { default: () => [tags.value.map((item, index) => {
571
- let _slot;
572
- return createVNode(Tag, mergeProps({
573
- "key": `tag-${item.value}`,
574
- "class": [`${prefixCls}-tag`, {
575
- [`${prefixCls}-tag-counter`]: isOverflowCounterTag(item.value),
576
- [`${prefixCls}-tag-overflow`]: isCompressedResponsiveTag(index, item.value)
577
- }],
578
- "closable": isClosableTag(item),
579
- "visible": true,
580
- "nowrap": props.tagNowrap || isResponsiveMaxTagCount.value,
581
- "style": getTagStyle(index)
582
- }, item.tagProps, { "onClose": (ev) => handleRemove(item.value, index, ev) }), _isSlot(_slot = renderTagContent(item, index)) ? _slot : { default: () => [_slot] });
583
- }), createVNode("input", mergeProps(inputAttrs.value, {
584
- "ref": inputRef,
585
- "key": "input-tag-input",
586
- "class": `${prefixCls}-input`,
587
- "style": getInputStyle.value,
588
- "placeholder": valueData.value.length === 0 ? props.placeholder : void 0,
589
- "disabled": mergedDisabled.value,
590
- "readonly": !!(props.readonly || props.disabledInput),
591
- "onInput": handleInput,
592
- "onKeydown": handleKeyDown,
593
- "onFocus": handleFocus,
594
- "onBlur": handleBlur,
595
- "onCompositionstart": handleComposition,
596
- "onCompositionupdate": handleComposition,
597
- "onCompositionend": handleComposition
598
- }), null)] }),
571
+ }] }), { default: () => {
572
+ var _props$inputAttrs;
573
+ return [tags.value.map((item, index) => {
574
+ let _slot;
575
+ return createVNode(Tag, mergeProps({
576
+ "key": `tag-${item.value}`,
577
+ "class": [`${prefixCls}-tag`, {
578
+ [`${prefixCls}-tag-counter`]: isOverflowCounterTag(item.value),
579
+ [`${prefixCls}-tag-overflow`]: isCompressedResponsiveTag(index, item.value)
580
+ }],
581
+ "closable": isClosableTag(item),
582
+ "visible": true,
583
+ "nowrap": props.tagNowrap || isResponsiveMaxTagCount.value,
584
+ "style": getTagStyle(index)
585
+ }, item.tagProps, { "onClose": (ev) => handleRemove(item.value, index, ev) }), _isSlot(_slot = renderTagContent(item, index)) ? _slot : { default: () => [_slot] });
586
+ }), createVNode("input", mergeProps(inputAttrs.value, (_props$inputAttrs = props.inputAttrs) !== null && _props$inputAttrs !== void 0 ? _props$inputAttrs : {}, {
587
+ "ref": inputRef,
588
+ "key": "input-tag-input",
589
+ "class": `${prefixCls}-input`,
590
+ "style": getInputStyle.value,
591
+ "placeholder": valueData.value.length === 0 ? props.placeholder : void 0,
592
+ "disabled": mergedDisabled.value,
593
+ "readonly": !!(props.readonly || props.disabledInput),
594
+ "onInput": handleInput,
595
+ "onKeydown": handleKeyDown,
596
+ "onFocus": handleFocus,
597
+ "onBlur": handleBlur,
598
+ "onCompositionstart": handleComposition,
599
+ "onCompositionupdate": handleComposition,
600
+ "onCompositionend": handleComposition
601
+ }), null)];
602
+ } }),
599
603
  showClearBtn.value && createVNode(icon_hover_default, mergeProps({ "class": `${prefixCls}-clear-btn` }, {
600
604
  onClick: handleClear,
601
605
  onMousedown: (e) => e.stopPropagation()
@@ -44,7 +44,7 @@
44
44
  }
45
45
  .sd-tag-checkable {
46
46
  cursor: pointer;
47
- transition: all 0.1s cubic-bezier(0, 0, 1, 1);
47
+ transition: background-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), border-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
48
48
  }
49
49
  .sd-tag-checkable:hover {
50
50
  background-color: var(--sd-color-fill-2);
@@ -489,7 +489,7 @@
489
489
  border: 1px solid transparent;
490
490
  border-radius: var(--sd-border-radius-small);
491
491
  cursor: text;
492
- transition: color 0.1s cubic-bezier(0, 0, 1, 1), border-color 0.1s cubic-bezier(0, 0, 1, 1), background-color 0.1s cubic-bezier(0, 0, 1, 1);
492
+ transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), border-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), background-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
493
493
  }
494
494
  .sd-input-tag:hover {
495
495
  background-color: var(--sd-color-fill-3);
@@ -574,7 +574,7 @@
574
574
  }
575
575
  .sd-input-tag .sd-input-tag-clear-btn > svg {
576
576
  position: relative;
577
- transition: color 0.1s cubic-bezier(0, 0, 1, 1);
577
+ transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
578
578
  }
579
579
  .sd-input-tag:hover .sd-input-tag-clear-btn {
580
580
  visibility: visible;
@@ -808,7 +808,7 @@
808
808
  }
809
809
 
810
810
  .input-tag-zoom-enter-from {
811
- transform: scale(0.5, 0.5);
811
+ transform: scale(0.94, 0.94);
812
812
  opacity: 0;
813
813
  }
814
814
 
@@ -818,7 +818,7 @@
818
818
  }
819
819
 
820
820
  .input-tag-zoom-enter-active {
821
- transition: all 0.3s cubic-bezier(0.34, 0.69, 0.1, 1);
821
+ transition: transform 0.3s cubic-bezier(0.34, 0.69, 0.1, 1), opacity 0.3s cubic-bezier(0.34, 0.69, 0.1, 1);
822
822
  }
823
823
 
824
824
  .input-tag-zoom-leave-from {
@@ -827,15 +827,15 @@
827
827
  }
828
828
 
829
829
  .input-tag-zoom-leave-to {
830
- transform: scale(0.5, 0.5);
830
+ transform: scale(0.94, 0.94);
831
831
  opacity: 0;
832
832
  }
833
833
 
834
834
  .input-tag-zoom-leave-active {
835
835
  position: absolute;
836
- transition: all 0.3s cubic-bezier(0.3, 1.3, 0.3, 1);
836
+ transition: transform 0.3s cubic-bezier(0.34, 0.69, 0.1, 1), opacity 0.3s cubic-bezier(0.34, 0.69, 0.1, 1);
837
837
  }
838
838
 
839
839
  .input-tag-zoom-move {
840
- transition: all 0.3s cubic-bezier(0.3, 1.3, 0.3, 1);
840
+ transition: transform 0.3s cubic-bezier(0.3, 1.3, 0.3, 1);
841
841
  }
@@ -8,8 +8,9 @@ $input-tag-prefix-cls: string.unquote('#{theme.$prefix}-input-tag');
8
8
  @include input-tag-style($input-tag-prefix-cls);
9
9
  }
10
10
 
11
+ // 标签入场/退场:从 scale(0.94) 起步而非 scale(0.5),轻微弹出即可
11
12
  .input-tag-zoom-enter-from {
12
- transform: scale(0.5, 0.5);
13
+ transform: scale(0.94, 0.94);
13
14
  opacity: 0;
14
15
  }
15
16
 
@@ -19,7 +20,9 @@ $input-tag-prefix-cls: string.unquote('#{theme.$prefix}-input-tag');
19
20
  }
20
21
 
21
22
  .input-tag-zoom-enter-active {
22
- transition: all theme.$transition-duration-3 theme.$transition-timing-function-standard;
23
+ transition:
24
+ transform theme.$transition-duration-3 theme.$transition-timing-function-standard,
25
+ opacity theme.$transition-duration-3 theme.$transition-timing-function-standard;
23
26
  }
24
27
 
25
28
  .input-tag-zoom-leave-from {
@@ -28,15 +31,18 @@ $input-tag-prefix-cls: string.unquote('#{theme.$prefix}-input-tag');
28
31
  }
29
32
 
30
33
  .input-tag-zoom-leave-to {
31
- transform: scale(0.5, 0.5);
34
+ transform: scale(0.94, 0.94);
32
35
  opacity: 0;
33
36
  }
34
37
 
35
38
  .input-tag-zoom-leave-active {
36
39
  position: absolute;
37
- transition: all theme.$transition-duration-3 theme.$transition-timing-function-overshoot;
40
+ transition:
41
+ transform theme.$transition-duration-3 theme.$transition-timing-function-standard,
42
+ opacity theme.$transition-duration-3 theme.$transition-timing-function-standard;
38
43
  }
39
44
 
45
+ // 列表重排(FLIP)只过渡 transform
40
46
  .input-tag-zoom-move {
41
- transition: all theme.$transition-duration-3 theme.$transition-timing-function-overshoot;
47
+ transition: transform theme.$transition-duration-3 theme.$transition-timing-function-overshoot;
42
48
  }