@sdata/web-vue 1.11.1 → 1.12.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 (292) hide show
  1. package/dist/sd.css +177 -6
  2. package/dist/sd.min.css +1 -1
  3. package/es/_components/select-view/style/index.css +13 -6
  4. package/es/_components/virtual-list/virtual-list.vue_vue_type_script_lang.js +2 -2
  5. package/es/_hooks/use-allow-search.d.ts +10 -0
  6. package/es/_hooks/use-allow-search.js +31 -0
  7. package/es/_hooks/use-scrollbar.js +1 -1
  8. package/es/_utils/color.js +1 -1
  9. package/es/_utils/date.js +7 -1
  10. package/es/_utils/dom.js +1 -1
  11. package/es/_utils/global-config.js +1 -1
  12. package/es/_utils/omit.js +1 -1
  13. package/es/_utils/responsive-observe.js +1 -1
  14. package/es/_utils/virtual-dropdown.js +1 -1
  15. package/es/_utils/vue-utils.js +4 -18
  16. package/es/_virtual/{_@oxc-project_runtime@0.124.0 → _@oxc-project_runtime@0.130.0}/helpers/asyncToGenerator.js +1 -1
  17. package/es/_virtual/{_@oxc-project_runtime@0.124.0 → _@oxc-project_runtime@0.130.0}/helpers/defineProperty.js +1 -1
  18. package/es/_virtual/{_@oxc-project_runtime@0.124.0 → _@oxc-project_runtime@0.130.0}/helpers/extends.js +1 -1
  19. package/es/_virtual/{_@oxc-project_runtime@0.124.0 → _@oxc-project_runtime@0.130.0}/helpers/objectDestructuringEmpty.js +1 -1
  20. package/es/_virtual/{_@oxc-project_runtime@0.124.0 → _@oxc-project_runtime@0.130.0}/helpers/objectSpread2.js +1 -1
  21. package/es/_virtual/{_@oxc-project_runtime@0.124.0 → _@oxc-project_runtime@0.130.0}/helpers/objectWithoutProperties.js +1 -1
  22. package/es/_virtual/{_@oxc-project_runtime@0.124.0 → _@oxc-project_runtime@0.130.0}/helpers/objectWithoutPropertiesLoose.js +1 -1
  23. package/es/_virtual/{_@oxc-project_runtime@0.124.0 → _@oxc-project_runtime@0.130.0}/helpers/toPrimitive.js +1 -1
  24. package/es/_virtual/{_@oxc-project_runtime@0.124.0 → _@oxc-project_runtime@0.130.0}/helpers/toPropertyKey.js +1 -1
  25. package/es/_virtual/{_@oxc-project_runtime@0.124.0 → _@oxc-project_runtime@0.130.0}/helpers/typeof.js +1 -1
  26. package/es/affix/affix.vue_vue_type_script_lang.js +31 -3
  27. package/es/alert/alert.vue_vue_type_script_lang.js +55 -0
  28. package/es/anchor/anchor-link.vue_vue_type_script_lang.js +8 -0
  29. package/es/anchor/anchor.vue_vue_type_script_lang.js +32 -0
  30. package/es/auto-complete/auto-complete.js +102 -0
  31. package/es/avatar/avatar-group.js +31 -0
  32. package/es/avatar/avatar.vue_vue_type_script_lang.js +51 -1
  33. package/es/back-top/back-top.vue_vue_type_script_lang.js +16 -0
  34. package/es/badge/badge.js +34 -1
  35. package/es/breadcrumb/breadcrumb-item.js +27 -0
  36. package/es/breadcrumb/breadcrumb.js +39 -0
  37. package/es/button/button-group.vue_vue_type_script_lang.js +22 -0
  38. package/es/button/button.vue_vue_type_script_lang.js +58 -1
  39. package/es/calendar/calendar.js +47 -0
  40. package/es/calendar/month.js +1 -1
  41. package/es/calendar/year.js +1 -1
  42. package/es/card/card-grid.vue_vue_type_script_lang.js +6 -1
  43. package/es/card/card-meta.js +23 -0
  44. package/es/card/card.js +54 -0
  45. package/es/carousel/carousel.js +68 -1
  46. package/es/cascader/cascader-panel.js +2 -28
  47. package/es/cascader/cascader-panel.vue.d.ts +24 -306
  48. package/es/cascader/{cascader-panel.vue_vue_type_script_lang.js → cascader-panel.vue_vue_type_script_setup_true_lang.js} +92 -101
  49. package/es/cascader/cascader.js +2 -145
  50. package/es/cascader/cascader.vue.d.ts +53 -1289
  51. package/es/cascader/{cascader.vue_vue_type_script_lang.js → cascader.vue_vue_type_script_setup_true_lang.js} +236 -172
  52. package/es/cascader/index.d.ts +4 -2986
  53. package/es/cascader/types.d.ts +79 -0
  54. package/es/checkbox/checkbox-group.js +48 -0
  55. package/es/checkbox/checkbox.js +35 -0
  56. package/es/collapse/collapse-item.js +36 -0
  57. package/es/collapse/collapse.vue_vue_type_script_lang.js +47 -0
  58. package/es/color-picker/color-picker.js +90 -1
  59. package/es/color-picker/panel.js +5 -2
  60. package/es/color-picker/utils.js +1 -1
  61. package/es/comment/comment.js +47 -1
  62. package/es/components.d.ts +132 -127
  63. package/es/config-provider/config-provider.vue.d.ts +9 -0
  64. package/es/config-provider/config-provider.vue_vue_type_script_lang.js +72 -1
  65. package/es/config-provider/context.d.ts +1 -0
  66. package/es/config-provider/index.d.ts +15 -0
  67. package/es/config-provider/theme-provider.vue_vue_type_script_setup_true_lang.js +1 -1
  68. package/es/config-provider/theme.js +1 -1
  69. package/es/copy/copy.js +5 -0
  70. package/es/copy/copy.vue.d.ts +15 -0
  71. package/es/copy/copy.vue_vue_type_script_setup_true_lang.js +95 -0
  72. package/es/copy/index.d.ts +15 -0
  73. package/es/copy/index.js +10 -0
  74. package/es/copy/style/css.js +2 -0
  75. package/es/copy/style/index.css +25 -0
  76. package/es/copy/style/index.d.ts +2 -0
  77. package/es/copy/style/index.js +2 -0
  78. package/es/copy/style/index.scss +15 -0
  79. package/es/copy/style/token.scss +3 -0
  80. package/es/copy/types.d.ts +21 -0
  81. package/es/cropper/cropper.js +5 -0
  82. package/es/cropper/cropper.vue.d.ts +45 -0
  83. package/es/cropper/cropper.vue_vue_type_script_setup_true_lang.js +266 -0
  84. package/es/cropper/index.d.ts +130 -0
  85. package/es/cropper/index.js +10 -0
  86. package/es/cropper/interface.d.ts +59 -0
  87. package/es/cropper/style/css.js +2 -0
  88. package/es/cropper/style/index.css +51 -0
  89. package/es/cropper/style/index.d.ts +2 -0
  90. package/es/cropper/style/index.js +2 -0
  91. package/es/cropper/style/index.scss +43 -0
  92. package/es/cropper/style/token.scss +8 -0
  93. package/es/date-picker/hooks/use-range-time-picker-value.js +1 -1
  94. package/es/date-picker/index.d.ts +54 -576
  95. package/es/date-picker/panels/date/index.js +1 -1
  96. package/es/date-picker/panels/date/index.vue_vue_type_script_lang.js +1 -1
  97. package/es/date-picker/panels/footer.vue.d.ts +55 -577
  98. package/es/date-picker/panels/footer.vue_vue_type_script_lang.js +1 -1
  99. package/es/date-picker/panels/month/index.js +1 -1
  100. package/es/date-picker/panels/quarter/index.js +1 -1
  101. package/es/date-picker/panels/year/index.js +1 -1
  102. package/es/date-picker/picker-panel.vue.d.ts +54 -576
  103. package/es/date-picker/picker.js +1 -1
  104. package/es/date-picker/picker.vue.d.ts +54 -576
  105. package/es/date-picker/picker.vue_vue_type_script_lang.js +193 -1
  106. package/es/date-picker/pickers/date-picker.js +42 -0
  107. package/es/date-picker/pickers/month-picker.js +12 -0
  108. package/es/date-picker/pickers/quarter-picker.js +17 -0
  109. package/es/date-picker/pickers/week-picker.js +23 -0
  110. package/es/date-picker/pickers/year-picker.js +12 -0
  111. package/es/date-picker/range-picker-panel.vue.d.ts +54 -576
  112. package/es/date-picker/range-picker-panel.vue_vue_type_script_lang.js +1 -1
  113. package/es/date-picker/range-picker.js +1 -1
  114. package/es/date-picker/range-picker.vue.d.ts +54 -576
  115. package/es/date-picker/range-picker.vue_vue_type_script_lang.js +120 -1
  116. package/es/descriptions/descriptions-item.vue_vue_type_script_lang.js +16 -0
  117. package/es/descriptions/descriptions.js +65 -1
  118. package/es/divider/divider.js +24 -0
  119. package/es/drawer/drawer.vue_vue_type_script_lang.js +161 -2
  120. package/es/drawer/index.js +2 -2
  121. package/es/dropdown/dropdown-button.vue_vue_type_script_lang.js +70 -0
  122. package/es/dropdown/dropdown-group.vue_vue_type_script_lang.js +12 -1
  123. package/es/dropdown/dropdown-option.vue_vue_type_script_lang.js +20 -1
  124. package/es/dropdown/dropdown-submenu.vue_vue_type_script_lang.js +57 -0
  125. package/es/dropdown/dropdown.vue_vue_type_script_lang.js +55 -0
  126. package/es/ellipsis/ellipsis.vue_vue_type_script_lang.js +25 -2
  127. package/es/ellipsis/performant-ellipsis.vue_vue_type_script_lang.js +24 -1
  128. package/es/empty/empty.js +18 -0
  129. package/es/form/form-item.vue_vue_type_script_lang.js +146 -3
  130. package/es/form/form.vue_vue_type_script_lang.js +108 -0
  131. package/es/grid/grid-col.vue_vue_type_script_lang.js +42 -1
  132. package/es/grid/grid-item.vue_vue_type_script_lang.js +13 -1
  133. package/es/grid/grid-row.vue_vue_type_script_lang.js +21 -0
  134. package/es/grid/grid.vue_vue_type_script_lang.js +20 -0
  135. package/es/icon.js +5 -5
  136. package/es/image/image.js +1 -1
  137. package/es/image/image.vue_vue_type_script_lang.js +82 -0
  138. package/es/image/preview-action.js +8 -0
  139. package/es/image/preview-group.js +1 -1
  140. package/es/image/preview-group.vue_vue_type_script_lang.js +48 -0
  141. package/es/image/preview-toolbar.vue_vue_type_script_lang.js +1 -0
  142. package/es/image/preview.vue_vue_type_script_lang.js +56 -1
  143. package/es/index.css +177 -6
  144. package/es/index.d.ts +9 -1
  145. package/es/index.js +6 -2
  146. package/es/index.scss +4 -0
  147. package/es/input/input-password.vue_vue_type_script_lang.js +13 -0
  148. package/es/input/input-search.js +35 -1
  149. package/es/input/input.js +129 -1
  150. package/es/input-number/index.d.ts +35 -23
  151. package/es/input-number/input-number.d.ts +19 -10
  152. package/es/input-number/input-number.js +205 -23
  153. package/es/input-tag/input-tag.js +137 -1
  154. package/es/input-tag/style/index.css +13 -6
  155. package/es/input-tag/utils.js +1 -1
  156. package/es/layout/content.js +5 -0
  157. package/es/layout/footer.js +5 -0
  158. package/es/layout/header.js +5 -0
  159. package/es/layout/layout.vue_vue_type_script_lang.js +6 -1
  160. package/es/layout/sider.vue_vue_type_script_lang.js +46 -0
  161. package/es/link/index.d.ts +44 -564
  162. package/es/link/interface.d.ts +15 -0
  163. package/es/link/link.js +2 -17
  164. package/es/link/link.vue.d.ts +31 -286
  165. package/es/link/link.vue_vue_type_script_setup_true_lang.js +112 -0
  166. package/es/link/style/index.css +6 -0
  167. package/es/link/style/index.scss +10 -0
  168. package/es/list/list-item-meta.vue_vue_type_script_lang.js +23 -0
  169. package/es/list/list-item.js +21 -1
  170. package/es/list/list.js +104 -2
  171. package/es/mention/mention.js +87 -1
  172. package/es/menu/base-menu.vue_vue_type_script_lang.js +102 -0
  173. package/es/menu/item-group.vue_vue_type_script_lang.js +11 -1
  174. package/es/menu/item.d.ts +1 -1
  175. package/es/menu/item.js +13 -2
  176. package/es/menu/menu.js +2 -1
  177. package/es/menu/sub-menu-pop.vue.d.ts +1 -1
  178. package/es/menu/sub-menu.js +40 -1
  179. package/es/message/index.js +1 -1
  180. package/es/modal/index.js +2 -2
  181. package/es/modal/modal.vue_vue_type_script_lang.js +193 -2
  182. package/es/notification/index.js +1 -1
  183. package/es/overflow-list/overflow-list.js +25 -1
  184. package/es/page-header/page-header.vue_vue_type_script_lang.js +38 -0
  185. package/es/pagination/page-jumper.vue.d.ts +35 -22
  186. package/es/pagination/pagination.js +122 -0
  187. package/es/popconfirm/popconfirm.vue_vue_type_script_lang.js +95 -1
  188. package/es/popover/popover.vue_vue_type_script_lang.js +62 -0
  189. package/es/progress/line.vue_vue_type_script_lang.js +1 -1
  190. package/es/progress/progress.vue_vue_type_script_lang.js +48 -0
  191. package/es/radio/radio-group.js +53 -0
  192. package/es/radio/radio.js +36 -0
  193. package/es/rate/rate.js +54 -0
  194. package/es/resize-box/resize-box.vue_vue_type_script_lang.js +47 -1
  195. package/es/result/result.vue_vue_type_script_lang.js +40 -0
  196. package/es/scrollbar/scrollbar.vue_vue_type_script_lang.js +108 -2
  197. package/es/sd-vue.js +10 -2
  198. package/es/secret/index.d.ts +48 -0
  199. package/es/secret/index.js +10 -0
  200. package/es/secret/secret.js +5 -0
  201. package/es/secret/secret.vue.d.ts +17 -0
  202. package/es/secret/secret.vue_vue_type_script_setup_true_lang.js +64 -0
  203. package/es/secret/style/css.js +2 -0
  204. package/es/secret/style/index.css +54 -0
  205. package/es/secret/style/index.d.ts +2 -0
  206. package/es/secret/style/index.js +2 -0
  207. package/es/secret/style/index.scss +48 -0
  208. package/es/secret/style/token.scss +9 -0
  209. package/es/select/hooks/use-options.js +1 -1
  210. package/es/select/optgroup.vue_vue_type_script_lang.js +12 -1
  211. package/es/select/option.vue_vue_type_script_lang.js +27 -0
  212. package/es/select/select.js +8 -6
  213. package/es/select/utils.js +1 -1
  214. package/es/skeleton/line.vue_vue_type_script_lang.js +16 -0
  215. package/es/skeleton/shape.vue_vue_type_script_lang.js +10 -0
  216. package/es/skeleton/skeleton.vue_vue_type_script_lang.js +8 -0
  217. package/es/slider/index.d.ts +66 -42
  218. package/es/slider/slider-input.vue.d.ts +33 -21
  219. package/es/slider/slider.vue.d.ts +33 -21
  220. package/es/slider/slider.vue_vue_type_script_lang.js +55 -0
  221. package/es/space/space.js +27 -0
  222. package/es/spin/spin.js +35 -0
  223. package/es/split/split.vue_vue_type_script_lang.js +62 -1
  224. package/es/statistic/countdown.vue_vue_type_script_lang.js +36 -1
  225. package/es/statistic/statistic.vue_vue_type_script_lang.js +74 -0
  226. package/es/steps/step.vue_vue_type_script_lang.js +36 -0
  227. package/es/steps/steps.vue_vue_type_script_lang.js +47 -0
  228. package/es/switch/switch.vue_vue_type_script_lang.js +98 -1
  229. package/es/table/table-column.js +115 -0
  230. package/es/table/table-operation-td.js +1 -1
  231. package/es/table/table-operation-th.js +1 -1
  232. package/es/table/table-td.js +1 -1
  233. package/es/table/table-th.js +1 -1
  234. package/es/table/table.js +442 -3
  235. package/es/table/utils.js +1 -1
  236. package/es/tabs/tab-pane.vue_vue_type_script_lang.js +23 -1
  237. package/es/tabs/tabs.js +104 -0
  238. package/es/tag/index.d.ts +29237 -74
  239. package/es/tag/interface.d.ts +9 -1
  240. package/es/tag/style/index.css +13 -6
  241. package/es/tag/style/index.scss +16 -4
  242. package/es/tag/tag.js +26 -5
  243. package/es/tag/tag.vue.d.ts +11688 -7
  244. package/es/tag/tag.vue_vue_type_script_lang.js +139 -3
  245. package/es/tag-group/index.d.ts +64 -0
  246. package/es/tag-group/index.js +10 -0
  247. package/es/tag-group/interface.d.ts +18 -0
  248. package/es/tag-group/style/css.js +2 -0
  249. package/es/tag-group/style/index.css +92 -0
  250. package/es/tag-group/style/index.d.ts +2 -0
  251. package/es/tag-group/style/index.js +2 -0
  252. package/es/tag-group/style/index.scss +108 -0
  253. package/es/tag-group/style/token.scss +6 -0
  254. package/es/tag-group/tag-group.js +5 -0
  255. package/es/tag-group/tag-group.vue.d.ts +46 -0
  256. package/es/tag-group/tag-group.vue_vue_type_script_setup_true_lang.js +360 -0
  257. package/es/textarea/textarea.vue_vue_type_script_lang.js +90 -1
  258. package/es/time-picker/range-panel.js +1 -1
  259. package/es/time-picker/time-picker.js +1 -1
  260. package/es/time-picker/time-picker.vue_vue_type_script_lang.js +132 -0
  261. package/es/timeline/item.vue_vue_type_script_lang.js +38 -1
  262. package/es/timeline/timeline.js +28 -0
  263. package/es/tooltip/tooltip.vue_vue_type_script_lang.js +61 -1
  264. package/es/transfer/transfer.vue_vue_type_script_lang.js +136 -0
  265. package/es/tree/base-node.vue_vue_type_script_lang.js +7 -0
  266. package/es/tree/node.js +1 -1
  267. package/es/tree/tree.vue_vue_type_script_lang.js +287 -2
  268. package/es/tree/utils/tree-data.js +1 -1
  269. package/es/tree-select/hooks/use-selected-state.js +1 -1
  270. package/es/tree-select/panel.js +1 -1
  271. package/es/tree-select/tree-select.js +1 -1
  272. package/es/tree-select/tree-select.vue_vue_type_script_lang.js +281 -8
  273. package/es/trigger/trigger.js +161 -1
  274. package/es/trigger/utils.js +1 -1
  275. package/es/typography/base.d.ts +7 -0
  276. package/es/typography/base.js +127 -3
  277. package/es/typography/interface.d.ts +2 -0
  278. package/es/typography/operations.js +30 -0
  279. package/es/typography/paragraph.js +8 -0
  280. package/es/typography/title.js +6 -1
  281. package/es/upload/upload.js +279 -2
  282. package/es/verification-code/verification-code.js +59 -0
  283. package/es/watermark/hooks/use-mutation-observer.js +1 -1
  284. package/es/watermark/watermark.js +58 -1
  285. package/es/web-vue.css +24 -24
  286. package/json/vetur-attributes.json +134 -218
  287. package/json/vetur-tags.json +58 -67
  288. package/json/web-types.json +304 -493
  289. package/package.json +9 -7
  290. package/es/_utils/clipboard.d.ts +0 -1
  291. package/es/_utils/clipboard.js +0 -35
  292. package/es/link/link.vue_vue_type_script_lang.js +0 -56
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sdata/web-vue",
3
- "version": "1.11.1",
3
+ "version": "1.12.0",
4
4
  "description": "SD Design Vue: A Vue.js 3 UI Library",
5
5
  "keywords": [
6
6
  "sd",
@@ -55,13 +55,15 @@
55
55
  "b-tween": "^0.3.3",
56
56
  "b-validate": "^1.5.3",
57
57
  "compute-scroll-into-view": "^3.1.1",
58
+ "copy-to-clipboard": "^4.0.2",
59
+ "cropperjs": "^2.1.1",
58
60
  "dayjs": "^1.11.20",
59
61
  "es-toolkit": "^1.46.1",
60
62
  "number-precision": "^1.6.0",
61
- "overlayscrollbars": "^2.15.1",
63
+ "overlayscrollbars": "^2.16.0",
62
64
  "resize-observer-polyfill": "^1.5.1",
63
65
  "scroll-into-view-if-needed": "^3.1.0",
64
- "vue": "^3.5.32",
66
+ "vue": "^3.5.34",
65
67
  "vue-virtual-scroller": "^3.0.3"
66
68
  },
67
69
  "devDependencies": {
@@ -70,8 +72,8 @@
70
72
  "@semantic-release/commit-analyzer": "^13.0.1",
71
73
  "@semantic-release/exec": "^7.1.0",
72
74
  "@semantic-release/git": "^10.0.1",
73
- "@semantic-release/github": "^12.0.6",
74
- "@semantic-release/release-notes-generator": "^14.1.0",
75
+ "@semantic-release/github": "^12.0.8",
76
+ "@semantic-release/release-notes-generator": "^14.1.1",
75
77
  "@types/clean-css": "^4.2.11",
76
78
  "@vitejs/plugin-vue": "^6.0.6",
77
79
  "@vitejs/plugin-vue-jsx": "^5.1.5",
@@ -87,14 +89,14 @@
87
89
  "svgo": "^4.0.1",
88
90
  "type-fest": "^5.6.0",
89
91
  "typescript": "^6.0.3",
90
- "vite": "^8.0.8",
92
+ "vite": "^8.0.13",
91
93
  "vite-plus": "^0.1.20",
92
94
  "vitest": "^4.1.5",
93
95
  "vue-docgen-api": "4.79.2",
94
96
  "vue-tsc": "^3.2.6"
95
97
  },
96
98
  "peerDependencies": {
97
- "vue": ">=3.1.0"
99
+ "vue": "^3.5.34"
98
100
  },
99
101
  "vetur": {
100
102
  "tags": "json/vetur-tags.json",
@@ -1 +0,0 @@
1
- export declare const clipboard: (text: string) => Promise<void>;
@@ -1,35 +0,0 @@
1
- import { _asyncToGenerator } from "../_virtual/_@oxc-project_runtime@0.124.0/helpers/asyncToGenerator.js";
2
- //#region components/_utils/clipboard.ts
3
- var clipboard = function() {
4
- var _ref = _asyncToGenerator(function* (text) {
5
- var _navigator$clipboard;
6
- if ((_navigator$clipboard = navigator.clipboard) === null || _navigator$clipboard === void 0 ? void 0 : _navigator$clipboard.writeText) try {
7
- yield navigator.clipboard.writeText(text);
8
- return;
9
- } catch (err) {
10
- console.error(err !== null && err !== void 0 ? err : new DOMException("The request is not allowed", "NotAllowedError"));
11
- }
12
- const span = document.createElement("span");
13
- span.textContent = text;
14
- span.style.whiteSpace = "pre";
15
- document.body.appendChild(span);
16
- const selection = window.getSelection();
17
- const range = window.document.createRange();
18
- selection === null || selection === void 0 || selection.removeAllRanges();
19
- range.selectNode(span);
20
- selection === null || selection === void 0 || selection.addRange(range);
21
- try {
22
- var _window$document$exec, _window$document;
23
- (_window$document$exec = (_window$document = window.document).execCommand) === null || _window$document$exec === void 0 || _window$document$exec.call(_window$document, "copy");
24
- } catch (err) {
25
- console.error(`execCommand Error: ${err}`);
26
- }
27
- selection === null || selection === void 0 || selection.removeAllRanges();
28
- window.document.body.removeChild(span);
29
- });
30
- return function clipboard(_x) {
31
- return _ref.apply(this, arguments);
32
- };
33
- }();
34
- //#endregion
35
- export { clipboard };
@@ -1,56 +0,0 @@
1
- import { getPrefixCls } from "../_utils/global-config.js";
2
- import IconLoading from "../icon/icon-loading/index.js";
3
- import { hasPropOrSlot } from "../_utils/use-prop-or-slot.js";
4
- import IconLink from "../icon/icon-link/index.js";
5
- import { computed, defineComponent } from "vue";
6
- //#region components/link/link.vue?vue&type=script&lang.ts
7
- var link_vue_vue_type_script_lang_default = defineComponent({
8
- name: "Link",
9
- components: {
10
- IconLink,
11
- IconLoading
12
- },
13
- props: {
14
- href: String,
15
- status: {
16
- type: String,
17
- default: "normal"
18
- },
19
- hoverable: {
20
- type: Boolean,
21
- default: true
22
- },
23
- icon: Boolean,
24
- loading: Boolean,
25
- disabled: Boolean
26
- },
27
- emits: { click: (_ev) => true },
28
- setup(props, { slots, emit }) {
29
- const prefixCls = getPrefixCls("link");
30
- const showIcon = hasPropOrSlot(props, slots, "icon");
31
- const handleClick = (ev) => {
32
- if (props.disabled || props.loading) {
33
- ev.preventDefault();
34
- return;
35
- }
36
- emit("click", ev);
37
- };
38
- return {
39
- cls: computed(() => [
40
- prefixCls,
41
- `${prefixCls}-status-${props.status}`,
42
- {
43
- [`${prefixCls}-disabled`]: props.disabled,
44
- [`${prefixCls}-loading`]: props.loading,
45
- [`${prefixCls}-hoverless`]: !props.hoverable,
46
- [`${prefixCls}-with-icon`]: props.loading || showIcon.value
47
- }
48
- ]),
49
- prefixCls,
50
- showIcon,
51
- handleClick
52
- };
53
- }
54
- });
55
- //#endregion
56
- export { link_vue_vue_type_script_lang_default as default };