@yh-ui/components 0.1.21 → 0.1.22

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 (484) hide show
  1. package/README.md +2 -0
  2. package/dist/form/index.cjs +1 -1
  3. package/dist/form/index.d.ts +1 -1
  4. package/dist/form/index.mjs +1 -1
  5. package/dist/icon/index.cjs +1 -1
  6. package/dist/icon/index.d.ts +1 -1
  7. package/dist/icon/index.mjs +1 -1
  8. package/dist/loading/index.cjs +1 -1
  9. package/dist/loading/index.d.ts +1 -1
  10. package/dist/loading/index.mjs +1 -1
  11. package/dist/message/src/method.cjs +1 -1
  12. package/dist/message/src/method.d.ts +1 -1
  13. package/dist/message/src/method.mjs +1 -1
  14. package/dist/message-box/index.cjs +1 -1
  15. package/dist/message-box/index.d.ts +1 -1
  16. package/dist/message-box/index.mjs +1 -1
  17. package/dist/notification/src/method.cjs +1 -1
  18. package/dist/notification/src/method.d.ts +1 -1
  19. package/dist/notification/src/method.mjs +1 -1
  20. package/dist/resolver.cjs +1 -1
  21. package/dist/resolver.d.ts +7 -5
  22. package/dist/resolver.mjs +1 -1
  23. package/dist/style.css +584 -0
  24. package/package.json +6 -6
  25. package/dist/affix/__tests__/affix.bottom.test.cjs +0 -101
  26. package/dist/affix/__tests__/affix.bottom.test.mjs +0 -88
  27. package/dist/affix/__tests__/affix.ssr.test.cjs +0 -38
  28. package/dist/affix/__tests__/affix.ssr.test.mjs +0 -51
  29. package/dist/affix/__tests__/affix.test.cjs +0 -185
  30. package/dist/affix/__tests__/affix.test.mjs +0 -180
  31. package/dist/ai-action-group/__tests__/ai-action-group.ssr.test.cjs +0 -55
  32. package/dist/ai-action-group/__tests__/ai-action-group.ssr.test.mjs +0 -39
  33. package/dist/ai-action-group/__tests__/ai-action-group.test.cjs +0 -235
  34. package/dist/ai-action-group/__tests__/ai-action-group.test.mjs +0 -157
  35. package/dist/ai-agent-card/__tests__/ai-agent-card.ssr.test.cjs +0 -61
  36. package/dist/ai-agent-card/__tests__/ai-agent-card.ssr.test.mjs +0 -65
  37. package/dist/ai-agent-card/__tests__/ai-agent-card.test.cjs +0 -205
  38. package/dist/ai-agent-card/__tests__/ai-agent-card.test.mjs +0 -133
  39. package/dist/ai-artifacts/__tests__/ai-artifacts.ssr.test.cjs +0 -73
  40. package/dist/ai-artifacts/__tests__/ai-artifacts.ssr.test.mjs +0 -68
  41. package/dist/ai-artifacts/__tests__/ai-artifacts.test.cjs +0 -128
  42. package/dist/ai-artifacts/__tests__/ai-artifacts.test.mjs +0 -109
  43. package/dist/ai-attachments/__tests__/ai-attachments.ssr.test.cjs +0 -50
  44. package/dist/ai-attachments/__tests__/ai-attachments.ssr.test.mjs +0 -33
  45. package/dist/ai-attachments/__tests__/ai-attachments.test.cjs +0 -113
  46. package/dist/ai-attachments/__tests__/ai-attachments.test.mjs +0 -81
  47. package/dist/ai-bubble/__tests__/ai-bubble.ssr.test.cjs +0 -95
  48. package/dist/ai-bubble/__tests__/ai-bubble.ssr.test.mjs +0 -66
  49. package/dist/ai-bubble/__tests__/ai-bubble.test.cjs +0 -624
  50. package/dist/ai-bubble/__tests__/ai-bubble.test.mjs +0 -393
  51. package/dist/ai-bubble-list/__tests__/ai-bubble-list.ssr.test.cjs +0 -51
  52. package/dist/ai-bubble-list/__tests__/ai-bubble-list.ssr.test.mjs +0 -51
  53. package/dist/ai-bubble-list/__tests__/ai-bubble-list.test.cjs +0 -138
  54. package/dist/ai-bubble-list/__tests__/ai-bubble-list.test.mjs +0 -112
  55. package/dist/ai-chat/__tests__/ai-chat.ssr.test.cjs +0 -90
  56. package/dist/ai-chat/__tests__/ai-chat.ssr.test.mjs +0 -77
  57. package/dist/ai-chat/__tests__/ai-chat.test.cjs +0 -177
  58. package/dist/ai-chat/__tests__/ai-chat.test.mjs +0 -129
  59. package/dist/ai-code-block/__tests__/ai-code-block.ssr.test.cjs +0 -75
  60. package/dist/ai-code-block/__tests__/ai-code-block.ssr.test.mjs +0 -57
  61. package/dist/ai-code-block/__tests__/ai-code-block.test.cjs +0 -174
  62. package/dist/ai-code-block/__tests__/ai-code-block.test.mjs +0 -108
  63. package/dist/ai-code-editor/__tests__/ai-code-editor.ssr.test.cjs +0 -46
  64. package/dist/ai-code-editor/__tests__/ai-code-editor.ssr.test.mjs +0 -39
  65. package/dist/ai-code-editor/__tests__/ai-code-editor.test.cjs +0 -90
  66. package/dist/ai-code-editor/__tests__/ai-code-editor.test.mjs +0 -78
  67. package/dist/ai-code-runner/__tests__/ai-code-runner.ssr.test.cjs +0 -28
  68. package/dist/ai-code-runner/__tests__/ai-code-runner.ssr.test.mjs +0 -26
  69. package/dist/ai-code-runner/__tests__/ai-code-runner.test.cjs +0 -69
  70. package/dist/ai-code-runner/__tests__/ai-code-runner.test.mjs +0 -66
  71. package/dist/ai-conversations/__tests__/ai-conversations.ssr.test.cjs +0 -50
  72. package/dist/ai-conversations/__tests__/ai-conversations.ssr.test.mjs +0 -42
  73. package/dist/ai-conversations/__tests__/ai-conversations.test.cjs +0 -67
  74. package/dist/ai-conversations/__tests__/ai-conversations.test.mjs +0 -51
  75. package/dist/ai-editor-sender/__tests__/ai-editor-sender.ssr.test.cjs +0 -62
  76. package/dist/ai-editor-sender/__tests__/ai-editor-sender.ssr.test.mjs +0 -50
  77. package/dist/ai-editor-sender/__tests__/ai-editor-sender.test.cjs +0 -315
  78. package/dist/ai-editor-sender/__tests__/ai-editor-sender.test.mjs +0 -226
  79. package/dist/ai-file-card/__tests__/ai-file-card.ssr.test.cjs +0 -45
  80. package/dist/ai-file-card/__tests__/ai-file-card.ssr.test.mjs +0 -29
  81. package/dist/ai-file-card/__tests__/ai-file-card.test.cjs +0 -160
  82. package/dist/ai-file-card/__tests__/ai-file-card.test.mjs +0 -109
  83. package/dist/ai-mention/__tests__/ai-mention.ssr.test.cjs +0 -38
  84. package/dist/ai-mention/__tests__/ai-mention.ssr.test.mjs +0 -37
  85. package/dist/ai-mention/__tests__/ai-mention.test.cjs +0 -113
  86. package/dist/ai-mention/__tests__/ai-mention.test.mjs +0 -84
  87. package/dist/ai-mermaid/__tests__/ai-mermaid.ssr.test.cjs +0 -43
  88. package/dist/ai-mermaid/__tests__/ai-mermaid.ssr.test.mjs +0 -33
  89. package/dist/ai-mermaid/__tests__/ai-mermaid.test.cjs +0 -113
  90. package/dist/ai-mermaid/__tests__/ai-mermaid.test.mjs +0 -92
  91. package/dist/ai-prompts/__tests__/ai-prompts.ssr.test.cjs +0 -49
  92. package/dist/ai-prompts/__tests__/ai-prompts.ssr.test.mjs +0 -41
  93. package/dist/ai-prompts/__tests__/ai-prompts.test.cjs +0 -54
  94. package/dist/ai-prompts/__tests__/ai-prompts.test.mjs +0 -38
  95. package/dist/ai-provider/__tests__/ai-provider.ssr.test.cjs +0 -33
  96. package/dist/ai-provider/__tests__/ai-provider.ssr.test.mjs +0 -34
  97. package/dist/ai-provider/__tests__/ai-provider.test.cjs +0 -38
  98. package/dist/ai-provider/__tests__/ai-provider.test.mjs +0 -33
  99. package/dist/ai-sender/__tests__/ai-sender.ssr.test.cjs +0 -46
  100. package/dist/ai-sender/__tests__/ai-sender.ssr.test.mjs +0 -37
  101. package/dist/ai-sender/__tests__/ai-sender.test.cjs +0 -511
  102. package/dist/ai-sender/__tests__/ai-sender.test.mjs +0 -322
  103. package/dist/ai-sources/__tests__/ai-sources.ssr.test.cjs +0 -72
  104. package/dist/ai-sources/__tests__/ai-sources.ssr.test.mjs +0 -82
  105. package/dist/ai-sources/__tests__/ai-sources.test.cjs +0 -200
  106. package/dist/ai-sources/__tests__/ai-sources.test.mjs +0 -160
  107. package/dist/ai-thinking/__tests__/ai-thinking.ssr.test.cjs +0 -56
  108. package/dist/ai-thinking/__tests__/ai-thinking.ssr.test.mjs +0 -42
  109. package/dist/ai-thinking/__tests__/ai-thinking.test.cjs +0 -151
  110. package/dist/ai-thinking/__tests__/ai-thinking.test.mjs +0 -96
  111. package/dist/ai-thought-chain/__tests__/ai-thought-chain.ssr.test.cjs +0 -88
  112. package/dist/ai-thought-chain/__tests__/ai-thought-chain.ssr.test.mjs +0 -55
  113. package/dist/ai-thought-chain/__tests__/ai-thought-chain.test.cjs +0 -344
  114. package/dist/ai-thought-chain/__tests__/ai-thought-chain.test.mjs +0 -237
  115. package/dist/ai-voice-trigger/__tests__/ai-voice-trigger.ssr.test.cjs +0 -32
  116. package/dist/ai-voice-trigger/__tests__/ai-voice-trigger.ssr.test.mjs +0 -25
  117. package/dist/ai-voice-trigger/__tests__/ai-voice-trigger.test.cjs +0 -130
  118. package/dist/ai-voice-trigger/__tests__/ai-voice-trigger.test.mjs +0 -103
  119. package/dist/ai-welcome/__tests__/ai-welcome.ssr.test.cjs +0 -57
  120. package/dist/ai-welcome/__tests__/ai-welcome.ssr.test.mjs +0 -39
  121. package/dist/ai-welcome/__tests__/ai-welcome.test.cjs +0 -169
  122. package/dist/ai-welcome/__tests__/ai-welcome.test.mjs +0 -113
  123. package/dist/alert/__tests__/alert.ssr.test.cjs +0 -28
  124. package/dist/alert/__tests__/alert.ssr.test.mjs +0 -29
  125. package/dist/alert/__tests__/alert.test.cjs +0 -123
  126. package/dist/alert/__tests__/alert.test.mjs +0 -110
  127. package/dist/autocomplete/__tests__/autocomplete.ssr.test.cjs +0 -54
  128. package/dist/autocomplete/__tests__/autocomplete.ssr.test.mjs +0 -47
  129. package/dist/autocomplete/__tests__/autocomplete.test.cjs +0 -299
  130. package/dist/autocomplete/__tests__/autocomplete.test.mjs +0 -263
  131. package/dist/avatar/__tests__/avatar.ssr.test.cjs +0 -103
  132. package/dist/avatar/__tests__/avatar.ssr.test.mjs +0 -108
  133. package/dist/avatar/__tests__/avatar.test.cjs +0 -146
  134. package/dist/avatar/__tests__/avatar.test.mjs +0 -125
  135. package/dist/back-top/__tests__/back-top.ssr.test.cjs +0 -13
  136. package/dist/back-top/__tests__/back-top.ssr.test.mjs +0 -10
  137. package/dist/back-top/__tests__/back-top.test.cjs +0 -88
  138. package/dist/back-top/__tests__/back-top.test.mjs +0 -76
  139. package/dist/badge/__tests__/badge.ssr.test.cjs +0 -36
  140. package/dist/badge/__tests__/badge.ssr.test.mjs +0 -33
  141. package/dist/badge/__tests__/badge.test.cjs +0 -115
  142. package/dist/badge/__tests__/badge.test.mjs +0 -112
  143. package/dist/breadcrumb/__tests__/breadcrumb.ssr.test.cjs +0 -22
  144. package/dist/breadcrumb/__tests__/breadcrumb.ssr.test.mjs +0 -20
  145. package/dist/breadcrumb/__tests__/breadcrumb.test.cjs +0 -64
  146. package/dist/breadcrumb/__tests__/breadcrumb.test.mjs +0 -51
  147. package/dist/button/__tests__/button.ssr.test.cjs +0 -52
  148. package/dist/button/__tests__/button.ssr.test.mjs +0 -55
  149. package/dist/button/__tests__/button.test.cjs +0 -207
  150. package/dist/button/__tests__/button.test.mjs +0 -141
  151. package/dist/calendar/__tests__/calendar.ssr.test.cjs +0 -65
  152. package/dist/calendar/__tests__/calendar.ssr.test.mjs +0 -63
  153. package/dist/calendar/__tests__/calendar.test.cjs +0 -263
  154. package/dist/calendar/__tests__/calendar.test.mjs +0 -255
  155. package/dist/card/__tests__/card.ssr.test.cjs +0 -37
  156. package/dist/card/__tests__/card.ssr.test.mjs +0 -40
  157. package/dist/card/__tests__/card.test.cjs +0 -131
  158. package/dist/card/__tests__/card.test.mjs +0 -124
  159. package/dist/carousel/__tests__/carousel.ssr.test.cjs +0 -27
  160. package/dist/carousel/__tests__/carousel.ssr.test.mjs +0 -27
  161. package/dist/carousel/__tests__/carousel.test.cjs +0 -115
  162. package/dist/carousel/__tests__/carousel.test.mjs +0 -98
  163. package/dist/cascader/__tests__/cascader-panel.test.cjs +0 -162
  164. package/dist/cascader/__tests__/cascader-panel.test.mjs +0 -151
  165. package/dist/cascader/__tests__/cascader.ssr.test.cjs +0 -61
  166. package/dist/cascader/__tests__/cascader.ssr.test.mjs +0 -55
  167. package/dist/cascader/__tests__/cascader.test.cjs +0 -342
  168. package/dist/cascader/__tests__/cascader.test.mjs +0 -316
  169. package/dist/category-nav/__tests__/category-nav.ssr.test.cjs +0 -35
  170. package/dist/category-nav/__tests__/category-nav.ssr.test.mjs +0 -21
  171. package/dist/category-nav/__tests__/category-nav.test.cjs +0 -53
  172. package/dist/category-nav/__tests__/category-nav.test.mjs +0 -33
  173. package/dist/checkbox/__tests__/checkbox.ssr.test.cjs +0 -52
  174. package/dist/checkbox/__tests__/checkbox.ssr.test.mjs +0 -57
  175. package/dist/checkbox/__tests__/checkbox.test.cjs +0 -173
  176. package/dist/checkbox/__tests__/checkbox.test.mjs +0 -133
  177. package/dist/col/__tests__/col.ssr.test.cjs +0 -44
  178. package/dist/col/__tests__/col.ssr.test.mjs +0 -42
  179. package/dist/col/__tests__/col.test.cjs +0 -128
  180. package/dist/col/__tests__/col.test.mjs +0 -116
  181. package/dist/color-picker/__tests__/color-picker.ssr.test.cjs +0 -34
  182. package/dist/color-picker/__tests__/color-picker.ssr.test.mjs +0 -39
  183. package/dist/color-picker/__tests__/color-picker.test.cjs +0 -227
  184. package/dist/color-picker/__tests__/color-picker.test.mjs +0 -176
  185. package/dist/config-provider/__tests__/config-provider.ssr.test.cjs +0 -43
  186. package/dist/config-provider/__tests__/config-provider.ssr.test.mjs +0 -42
  187. package/dist/config-provider/__tests__/config-provider.test.cjs +0 -75
  188. package/dist/config-provider/__tests__/config-provider.test.mjs +0 -64
  189. package/dist/container/__tests__/container.ssr.test.cjs +0 -71
  190. package/dist/container/__tests__/container.ssr.test.mjs +0 -50
  191. package/dist/container/__tests__/container.test.cjs +0 -111
  192. package/dist/container/__tests__/container.test.mjs +0 -84
  193. package/dist/countdown/__tests__/countdown.ssr.test.cjs +0 -86
  194. package/dist/countdown/__tests__/countdown.ssr.test.mjs +0 -78
  195. package/dist/countdown/__tests__/countdown.test.cjs +0 -767
  196. package/dist/countdown/__tests__/countdown.test.mjs +0 -722
  197. package/dist/coupon-card/__tests__/coupon-card.ssr.test.cjs +0 -21
  198. package/dist/coupon-card/__tests__/coupon-card.ssr.test.mjs +0 -18
  199. package/dist/coupon-card/__tests__/coupon-card.test.cjs +0 -67
  200. package/dist/coupon-card/__tests__/coupon-card.test.mjs +0 -64
  201. package/dist/date-picker/__tests__/date-picker-extended.test.cjs +0 -581
  202. package/dist/date-picker/__tests__/date-picker-extended.test.mjs +0 -455
  203. package/dist/date-picker/__tests__/date-picker.ssr.test.cjs +0 -26
  204. package/dist/date-picker/__tests__/date-picker.ssr.test.mjs +0 -23
  205. package/dist/date-picker/__tests__/date-picker.test.cjs +0 -170
  206. package/dist/date-picker/__tests__/date-picker.test.mjs +0 -136
  207. package/dist/descriptions/__tests__/descriptions.ssr.test.cjs +0 -67
  208. package/dist/descriptions/__tests__/descriptions.ssr.test.mjs +0 -72
  209. package/dist/descriptions/__tests__/descriptions.test.cjs +0 -150
  210. package/dist/descriptions/__tests__/descriptions.test.mjs +0 -130
  211. package/dist/dialog/__tests__/dialog.functional.test.cjs +0 -49
  212. package/dist/dialog/__tests__/dialog.functional.test.mjs +0 -49
  213. package/dist/dialog/__tests__/dialog.ssr.test.cjs +0 -31
  214. package/dist/dialog/__tests__/dialog.ssr.test.mjs +0 -29
  215. package/dist/dialog/__tests__/dialog.test.cjs +0 -561
  216. package/dist/dialog/__tests__/dialog.test.mjs +0 -388
  217. package/dist/divider/__tests__/divider.ssr.test.cjs +0 -41
  218. package/dist/divider/__tests__/divider.ssr.test.mjs +0 -44
  219. package/dist/divider/__tests__/divider.test.cjs +0 -71
  220. package/dist/divider/__tests__/divider.test.mjs +0 -68
  221. package/dist/drawer/__tests__/drawer.ssr.test.cjs +0 -25
  222. package/dist/drawer/__tests__/drawer.ssr.test.mjs +0 -23
  223. package/dist/drawer/__tests__/drawer.test.cjs +0 -145
  224. package/dist/drawer/__tests__/drawer.test.mjs +0 -122
  225. package/dist/dropdown/__tests__/dropdown.ssr.test.cjs +0 -49
  226. package/dist/dropdown/__tests__/dropdown.ssr.test.mjs +0 -64
  227. package/dist/dropdown/__tests__/dropdown.test.cjs +0 -310
  228. package/dist/dropdown/__tests__/dropdown.test.mjs +0 -269
  229. package/dist/empty/__tests__/empty.ssr.test.cjs +0 -96
  230. package/dist/empty/__tests__/empty.ssr.test.mjs +0 -99
  231. package/dist/empty/__tests__/empty.test.cjs +0 -110
  232. package/dist/empty/__tests__/empty.test.mjs +0 -101
  233. package/dist/filter-bar/__tests__/filter-bar.ssr.test.cjs +0 -29
  234. package/dist/filter-bar/__tests__/filter-bar.ssr.test.mjs +0 -16
  235. package/dist/filter-bar/__tests__/filter-bar.test.cjs +0 -51
  236. package/dist/filter-bar/__tests__/filter-bar.test.mjs +0 -29
  237. package/dist/form/__tests__/form-schema.test.cjs +0 -636
  238. package/dist/form/__tests__/form-schema.test.mjs +0 -366
  239. package/dist/form/__tests__/form.ssr.test.cjs +0 -74
  240. package/dist/form/__tests__/form.ssr.test.mjs +0 -73
  241. package/dist/form/__tests__/form.test.cjs +0 -208
  242. package/dist/form/__tests__/form.test.mjs +0 -128
  243. package/dist/gantt-chart/__tests__/debug_ssr.test.cjs +0 -51
  244. package/dist/gantt-chart/__tests__/debug_ssr.test.mjs +0 -37
  245. package/dist/gantt-chart/__tests__/gantt-chart.ssr.test.cjs +0 -95
  246. package/dist/gantt-chart/__tests__/gantt-chart.ssr.test.mjs +0 -94
  247. package/dist/gantt-chart/__tests__/gantt-chart.test.cjs +0 -86
  248. package/dist/gantt-chart/__tests__/gantt-chart.test.mjs +0 -79
  249. package/dist/grid/__tests__/grid.ssr.test.cjs +0 -81
  250. package/dist/grid/__tests__/grid.ssr.test.mjs +0 -63
  251. package/dist/grid/__tests__/grid.test.cjs +0 -142
  252. package/dist/grid/__tests__/grid.test.mjs +0 -89
  253. package/dist/icon/__tests__/icon.ssr.test.cjs +0 -35
  254. package/dist/icon/__tests__/icon.ssr.test.mjs +0 -26
  255. package/dist/icon/__tests__/icon.test.cjs +0 -144
  256. package/dist/icon/__tests__/icon.test.mjs +0 -123
  257. package/dist/image/__tests__/image-viewer.test.cjs +0 -101
  258. package/dist/image/__tests__/image-viewer.test.mjs +0 -94
  259. package/dist/image/__tests__/image.ssr.test.cjs +0 -73
  260. package/dist/image/__tests__/image.ssr.test.mjs +0 -72
  261. package/dist/image/__tests__/image.test.cjs +0 -171
  262. package/dist/image/__tests__/image.test.mjs +0 -159
  263. package/dist/image-magnifier/__tests__/image-magnifier.ssr.test.cjs +0 -54
  264. package/dist/image-magnifier/__tests__/image-magnifier.ssr.test.mjs +0 -35
  265. package/dist/image-magnifier/__tests__/image-magnifier.test.cjs +0 -257
  266. package/dist/image-magnifier/__tests__/image-magnifier.test.mjs +0 -177
  267. package/dist/infinite-scroll/__tests__/infinite-scroll.ssr.test.cjs +0 -59
  268. package/dist/infinite-scroll/__tests__/infinite-scroll.ssr.test.mjs +0 -84
  269. package/dist/infinite-scroll/__tests__/infinite-scroll.test.cjs +0 -255
  270. package/dist/infinite-scroll/__tests__/infinite-scroll.test.mjs +0 -187
  271. package/dist/input/__tests__/input-utils.test.cjs +0 -77
  272. package/dist/input/__tests__/input-utils.test.mjs +0 -75
  273. package/dist/input/__tests__/input.ssr.test.cjs +0 -100
  274. package/dist/input/__tests__/input.ssr.test.mjs +0 -85
  275. package/dist/input/__tests__/input.test.cjs +0 -127
  276. package/dist/input/__tests__/input.test.mjs +0 -112
  277. package/dist/input-number/__tests__/input-number.hydration.test.cjs +0 -24
  278. package/dist/input-number/__tests__/input-number.hydration.test.mjs +0 -21
  279. package/dist/input-number/__tests__/input-number.ssr.test.cjs +0 -95
  280. package/dist/input-number/__tests__/input-number.ssr.test.mjs +0 -92
  281. package/dist/input-number/__tests__/input-number.test.cjs +0 -199
  282. package/dist/input-number/__tests__/input-number.test.mjs +0 -173
  283. package/dist/input-tag/__tests__/input-tag.ssr.test.cjs +0 -47
  284. package/dist/input-tag/__tests__/input-tag.ssr.test.mjs +0 -41
  285. package/dist/input-tag/__tests__/input-tag.test.cjs +0 -268
  286. package/dist/input-tag/__tests__/input-tag.test.mjs +0 -201
  287. package/dist/loading/__tests__/loading.ssr.test.cjs +0 -37
  288. package/dist/loading/__tests__/loading.ssr.test.mjs +0 -27
  289. package/dist/loading/__tests__/loading.test.cjs +0 -91
  290. package/dist/loading/__tests__/loading.test.mjs +0 -75
  291. package/dist/lucky-draw/__tests__/lucky-draw.ssr.test.cjs +0 -33
  292. package/dist/lucky-draw/__tests__/lucky-draw.ssr.test.mjs +0 -31
  293. package/dist/lucky-draw/__tests__/lucky-draw.test.cjs +0 -56
  294. package/dist/lucky-draw/__tests__/lucky-draw.test.mjs +0 -48
  295. package/dist/marquee/__tests__/marquee.ssr.test.cjs +0 -59
  296. package/dist/marquee/__tests__/marquee.ssr.test.mjs +0 -60
  297. package/dist/marquee/__tests__/marquee.test.cjs +0 -94
  298. package/dist/marquee/__tests__/marquee.test.mjs +0 -92
  299. package/dist/mention/__tests__/mention.ssr.test.cjs +0 -92
  300. package/dist/mention/__tests__/mention.ssr.test.mjs +0 -70
  301. package/dist/mention/__tests__/mention.test.cjs +0 -650
  302. package/dist/mention/__tests__/mention.test.mjs +0 -523
  303. package/dist/menu/__tests__/menu.ssr.test.cjs +0 -92
  304. package/dist/menu/__tests__/menu.ssr.test.mjs +0 -124
  305. package/dist/menu/__tests__/menu.test.cjs +0 -209
  306. package/dist/menu/__tests__/menu.test.mjs +0 -182
  307. package/dist/message/__tests__/message.ssr.test.cjs +0 -29
  308. package/dist/message/__tests__/message.ssr.test.mjs +0 -23
  309. package/dist/message/__tests__/message.test.cjs +0 -170
  310. package/dist/message/__tests__/message.test.mjs +0 -154
  311. package/dist/message-box/__tests__/message-box.ssr.test.cjs +0 -33
  312. package/dist/message-box/__tests__/message-box.ssr.test.mjs +0 -30
  313. package/dist/message-box/__tests__/message-box.test.cjs +0 -100
  314. package/dist/message-box/__tests__/message-box.test.mjs +0 -95
  315. package/dist/notification/__tests__/notification.ssr.test.cjs +0 -31
  316. package/dist/notification/__tests__/notification.ssr.test.mjs +0 -25
  317. package/dist/notification/__tests__/notification.test.cjs +0 -248
  318. package/dist/notification/__tests__/notification.test.mjs +0 -206
  319. package/dist/pagination/__tests__/pagination.ssr.test.cjs +0 -61
  320. package/dist/pagination/__tests__/pagination.ssr.test.mjs +0 -59
  321. package/dist/pagination/__tests__/pagination.test.cjs +0 -135
  322. package/dist/pagination/__tests__/pagination.test.mjs +0 -131
  323. package/dist/popconfirm/__tests__/popconfirm.ssr.test.cjs +0 -48
  324. package/dist/popconfirm/__tests__/popconfirm.ssr.test.mjs +0 -63
  325. package/dist/popconfirm/__tests__/popconfirm.test.cjs +0 -62
  326. package/dist/popconfirm/__tests__/popconfirm.test.mjs +0 -56
  327. package/dist/popover/__tests__/popover.ssr.test.cjs +0 -48
  328. package/dist/popover/__tests__/popover.ssr.test.mjs +0 -63
  329. package/dist/popover/__tests__/popover.test.cjs +0 -107
  330. package/dist/popover/__tests__/popover.test.mjs +0 -93
  331. package/dist/price/__tests__/price.ssr.test.cjs +0 -20
  332. package/dist/price/__tests__/price.ssr.test.mjs +0 -19
  333. package/dist/price/__tests__/price.test.cjs +0 -45
  334. package/dist/price/__tests__/price.test.mjs +0 -42
  335. package/dist/product-card/__tests__/product-card.ssr.test.cjs +0 -21
  336. package/dist/product-card/__tests__/product-card.ssr.test.mjs +0 -18
  337. package/dist/product-card/__tests__/product-card.test.cjs +0 -54
  338. package/dist/product-card/__tests__/product-card.test.mjs +0 -53
  339. package/dist/progress/__tests__/progress.ssr.test.cjs +0 -31
  340. package/dist/progress/__tests__/progress.ssr.test.mjs +0 -29
  341. package/dist/progress/__tests__/progress.test.cjs +0 -119
  342. package/dist/progress/__tests__/progress.test.mjs +0 -77
  343. package/dist/radio/__tests__/radio-button.test.cjs +0 -99
  344. package/dist/radio/__tests__/radio-button.test.mjs +0 -83
  345. package/dist/radio/__tests__/radio.ssr.test.cjs +0 -132
  346. package/dist/radio/__tests__/radio.ssr.test.mjs +0 -165
  347. package/dist/radio/__tests__/radio.test.cjs +0 -170
  348. package/dist/radio/__tests__/radio.test.mjs +0 -143
  349. package/dist/rate/__tests__/rate.ssr.test.cjs +0 -106
  350. package/dist/rate/__tests__/rate.ssr.test.mjs +0 -103
  351. package/dist/rate/__tests__/rate.test.cjs +0 -88
  352. package/dist/rate/__tests__/rate.test.mjs +0 -85
  353. package/dist/result/__tests__/result.ssr.test.cjs +0 -62
  354. package/dist/result/__tests__/result.ssr.test.mjs +0 -51
  355. package/dist/result/__tests__/result.test.cjs +0 -135
  356. package/dist/result/__tests__/result.test.mjs +0 -92
  357. package/dist/row/__tests__/row.ssr.test.cjs +0 -29
  358. package/dist/row/__tests__/row.ssr.test.mjs +0 -30
  359. package/dist/row/__tests__/row.test.cjs +0 -89
  360. package/dist/row/__tests__/row.test.mjs +0 -86
  361. package/dist/row/__tests__/row_ts.test.cjs +0 -31
  362. package/dist/row/__tests__/row_ts.test.mjs +0 -28
  363. package/dist/scrollbar/__tests__/scrollbar.ssr.test.cjs +0 -49
  364. package/dist/scrollbar/__tests__/scrollbar.ssr.test.mjs +0 -54
  365. package/dist/scrollbar/__tests__/scrollbar.test.cjs +0 -43
  366. package/dist/scrollbar/__tests__/scrollbar.test.mjs +0 -40
  367. package/dist/select/__tests__/select.perf.test.cjs +0 -191
  368. package/dist/select/__tests__/select.perf.test.mjs +0 -185
  369. package/dist/select/__tests__/select.ssr.test.cjs +0 -58
  370. package/dist/select/__tests__/select.ssr.test.mjs +0 -52
  371. package/dist/select/__tests__/select.test.cjs +0 -414
  372. package/dist/select/__tests__/select.test.mjs +0 -345
  373. package/dist/skeleton/__tests__/skeleton.ssr.test.cjs +0 -81
  374. package/dist/skeleton/__tests__/skeleton.ssr.test.mjs +0 -83
  375. package/dist/skeleton/__tests__/skeleton.test.cjs +0 -72
  376. package/dist/skeleton/__tests__/skeleton.test.mjs +0 -65
  377. package/dist/sku-selector/__tests__/sku-selector.ssr.test.cjs +0 -32
  378. package/dist/sku-selector/__tests__/sku-selector.ssr.test.mjs +0 -19
  379. package/dist/sku-selector/__tests__/sku-selector.test.cjs +0 -64
  380. package/dist/sku-selector/__tests__/sku-selector.test.mjs +0 -53
  381. package/dist/slider/__tests__/repro.test.cjs +0 -25
  382. package/dist/slider/__tests__/repro.test.mjs +0 -22
  383. package/dist/slider/__tests__/slider.ssr.test.cjs +0 -118
  384. package/dist/slider/__tests__/slider.ssr.test.mjs +0 -115
  385. package/dist/slider/__tests__/slider.test.cjs +0 -155
  386. package/dist/slider/__tests__/slider.test.mjs +0 -120
  387. package/dist/smart-address/__tests__/smart-address.ssr.test.cjs +0 -28
  388. package/dist/smart-address/__tests__/smart-address.ssr.test.mjs +0 -25
  389. package/dist/smart-address/__tests__/smart-address.test.cjs +0 -68
  390. package/dist/smart-address/__tests__/smart-address.test.mjs +0 -56
  391. package/dist/space/__tests__/space.ssr.test.cjs +0 -115
  392. package/dist/space/__tests__/space.ssr.test.mjs +0 -150
  393. package/dist/space/__tests__/space.test.cjs +0 -227
  394. package/dist/space/__tests__/space.test.mjs +0 -187
  395. package/dist/spin/__tests__/spin.ssr.test.cjs +0 -46
  396. package/dist/spin/__tests__/spin.ssr.test.mjs +0 -43
  397. package/dist/spin/__tests__/spin.test.cjs +0 -65
  398. package/dist/spin/__tests__/spin.test.mjs +0 -63
  399. package/dist/steps/__tests__/steps.ssr.test.cjs +0 -73
  400. package/dist/steps/__tests__/steps.ssr.test.mjs +0 -55
  401. package/dist/steps/__tests__/steps.test.cjs +0 -152
  402. package/dist/steps/__tests__/steps.test.mjs +0 -123
  403. package/dist/submit-bar/__tests__/submit-bar.ssr.test.cjs +0 -21
  404. package/dist/submit-bar/__tests__/submit-bar.ssr.test.mjs +0 -18
  405. package/dist/submit-bar/__tests__/submit-bar.test.cjs +0 -50
  406. package/dist/submit-bar/__tests__/submit-bar.test.mjs +0 -36
  407. package/dist/switch/__tests__/switch.ssr.test.cjs +0 -105
  408. package/dist/switch/__tests__/switch.ssr.test.mjs +0 -102
  409. package/dist/switch/__tests__/switch.test.cjs +0 -251
  410. package/dist/switch/__tests__/switch.test.mjs +0 -193
  411. package/dist/table/__tests__/table-advance.test.cjs +0 -180
  412. package/dist/table/__tests__/table-advance.test.mjs +0 -118
  413. package/dist/table/__tests__/table-interaction.test.cjs +0 -236
  414. package/dist/table/__tests__/table-interaction.test.mjs +0 -162
  415. package/dist/table/__tests__/table-utils.test.cjs +0 -690
  416. package/dist/table/__tests__/table-utils.test.mjs +0 -485
  417. package/dist/table/__tests__/table.perf.test.cjs +0 -231
  418. package/dist/table/__tests__/table.perf.test.mjs +0 -225
  419. package/dist/table/__tests__/table.ssr.test.cjs +0 -296
  420. package/dist/table/__tests__/table.ssr.test.mjs +0 -265
  421. package/dist/table/__tests__/table.test.cjs +0 -682
  422. package/dist/table/__tests__/table.test.mjs +0 -617
  423. package/dist/table/__tests__/use-column-drag.test.cjs +0 -238
  424. package/dist/table/__tests__/use-column-drag.test.mjs +0 -150
  425. package/dist/table/__tests__/use-table-export.test.cjs +0 -179
  426. package/dist/table/__tests__/use-table-export.test.mjs +0 -105
  427. package/dist/table/__tests__/use-table-import.test.cjs +0 -206
  428. package/dist/table/__tests__/use-table-import.test.mjs +0 -144
  429. package/dist/table/__tests__/use-table-print.test.cjs +0 -190
  430. package/dist/table/__tests__/use-table-print.test.mjs +0 -134
  431. package/dist/table/__tests__/use-virtual-scroll.test.cjs +0 -286
  432. package/dist/table/__tests__/use-virtual-scroll.test.mjs +0 -196
  433. package/dist/tabs/__tests__/tabs.ssr.test.cjs +0 -57
  434. package/dist/tabs/__tests__/tabs.ssr.test.mjs +0 -41
  435. package/dist/tabs/__tests__/tabs.test.cjs +0 -171
  436. package/dist/tabs/__tests__/tabs.test.mjs +0 -134
  437. package/dist/tag/__tests__/tag.ssr.test.cjs +0 -45
  438. package/dist/tag/__tests__/tag.ssr.test.mjs +0 -48
  439. package/dist/tag/__tests__/tag.test.cjs +0 -194
  440. package/dist/tag/__tests__/tag.test.mjs +0 -167
  441. package/dist/time-picker/__tests__/time-picker.ssr.test.cjs +0 -46
  442. package/dist/time-picker/__tests__/time-picker.ssr.test.mjs +0 -43
  443. package/dist/time-picker/__tests__/time-picker.test.cjs +0 -228
  444. package/dist/time-picker/__tests__/time-picker.test.mjs +0 -218
  445. package/dist/time-picker/__tests__/time-spinner.test.cjs +0 -196
  446. package/dist/time-picker/__tests__/time-spinner.test.mjs +0 -162
  447. package/dist/time-select/__tests__/time-select.ssr.test.cjs +0 -42
  448. package/dist/time-select/__tests__/time-select.ssr.test.mjs +0 -37
  449. package/dist/time-select/__tests__/time-select.test.cjs +0 -390
  450. package/dist/time-select/__tests__/time-select.test.mjs +0 -374
  451. package/dist/tooltip/__tests__/tooltip.ssr.test.cjs +0 -55
  452. package/dist/tooltip/__tests__/tooltip.ssr.test.mjs +0 -76
  453. package/dist/tooltip/__tests__/tooltip.test.cjs +0 -132
  454. package/dist/tooltip/__tests__/tooltip.test.mjs +0 -121
  455. package/dist/transfer/__tests__/transfer.ssr.test.cjs +0 -47
  456. package/dist/transfer/__tests__/transfer.ssr.test.mjs +0 -44
  457. package/dist/transfer/__tests__/transfer.test.cjs +0 -422
  458. package/dist/transfer/__tests__/transfer.test.mjs +0 -405
  459. package/dist/tree/__tests__/tree.perf.test.cjs +0 -182
  460. package/dist/tree/__tests__/tree.perf.test.mjs +0 -198
  461. package/dist/tree/__tests__/tree.ssr.test.cjs +0 -56
  462. package/dist/tree/__tests__/tree.ssr.test.mjs +0 -45
  463. package/dist/tree/__tests__/tree.test.cjs +0 -488
  464. package/dist/tree/__tests__/tree.test.mjs +0 -333
  465. package/dist/tree-select/__tests__/tree-select.ssr.test.cjs +0 -52
  466. package/dist/tree-select/__tests__/tree-select.ssr.test.mjs +0 -55
  467. package/dist/tree-select/__tests__/tree-select.test.cjs +0 -231
  468. package/dist/tree-select/__tests__/tree-select.test.mjs +0 -189
  469. package/dist/typography/__tests__/typography.ssr.test.cjs +0 -85
  470. package/dist/typography/__tests__/typography.ssr.test.mjs +0 -63
  471. package/dist/typography/__tests__/typography.test.cjs +0 -362
  472. package/dist/typography/__tests__/typography.test.mjs +0 -161
  473. package/dist/upload/__tests__/upload.ssr.test.cjs +0 -28
  474. package/dist/upload/__tests__/upload.ssr.test.mjs +0 -26
  475. package/dist/upload/__tests__/upload.test.cjs +0 -467
  476. package/dist/upload/__tests__/upload.test.mjs +0 -336
  477. package/dist/waterfall/__tests__/waterfall.ssr.test.cjs +0 -38
  478. package/dist/waterfall/__tests__/waterfall.ssr.test.mjs +0 -39
  479. package/dist/waterfall/__tests__/waterfall.test.cjs +0 -122
  480. package/dist/waterfall/__tests__/waterfall.test.mjs +0 -85
  481. package/dist/watermark/__tests__/watermark.ssr.test.cjs +0 -32
  482. package/dist/watermark/__tests__/watermark.ssr.test.mjs +0 -30
  483. package/dist/watermark/__tests__/watermark.test.cjs +0 -127
  484. package/dist/watermark/__tests__/watermark.test.mjs +0 -124
@@ -1,263 +0,0 @@
1
- import { describe, it, expect, vi } from "vitest";
2
- import { mount } from "@vue/test-utils";
3
- import { nextTick } from "vue";
4
- import Autocomplete from "../src/autocomplete.vue";
5
- describe("YhAutocomplete", () => {
6
- const suggestions = [
7
- { value: "vue" },
8
- { value: "react" },
9
- { value: "angular" },
10
- { value: "svelte" }
11
- ];
12
- const fetchSuggestions = (query, cb) => {
13
- const results = query ? suggestions.filter((item) => item.value.toLowerCase().includes(query.toLowerCase())) : suggestions;
14
- cb(results);
15
- };
16
- it("should render correctly", () => {
17
- const wrapper = mount(Autocomplete);
18
- expect(wrapper.classes()).toContain("yh-autocomplete");
19
- expect(wrapper.find("input").exists()).toBe(true);
20
- });
21
- it("should work with v-model", async () => {
22
- const wrapper = mount(Autocomplete, {
23
- props: {
24
- modelValue: "test",
25
- "onUpdate:modelValue": (val) => wrapper.setProps({ modelValue: val })
26
- }
27
- });
28
- expect(wrapper.find("input").element.value).toBe("test");
29
- await wrapper.find("input").setValue("new value");
30
- expect(wrapper.props("modelValue")).toBe("new value");
31
- });
32
- it("should display placeholder", () => {
33
- const wrapper = mount(Autocomplete, {
34
- props: { placeholder: "\u8BF7\u8F93\u5165\u5185\u5BB9" }
35
- });
36
- expect(wrapper.find("input").attributes("placeholder")).toBe("\u8BF7\u8F93\u5165\u5185\u5BB9");
37
- });
38
- it("should be disabled when disabled prop is true", () => {
39
- const wrapper = mount(Autocomplete, {
40
- props: { disabled: true }
41
- });
42
- expect(wrapper.classes()).toContain("is-disabled");
43
- expect(wrapper.find("input").attributes("disabled")).toBeDefined();
44
- });
45
- it("should apply size class", () => {
46
- const wrapper = mount(Autocomplete, {
47
- props: { size: "large" }
48
- });
49
- expect(wrapper.classes()).toContain("yh-autocomplete--large");
50
- });
51
- it("should apply small size class", () => {
52
- const wrapper = mount(Autocomplete, {
53
- props: { size: "small" }
54
- });
55
- expect(wrapper.classes()).toContain("yh-autocomplete--small");
56
- });
57
- it("should show clear button when clearable and has value", async () => {
58
- const wrapper = mount(Autocomplete, {
59
- props: {
60
- modelValue: "test",
61
- clearable: true
62
- }
63
- });
64
- await wrapper.find("input").trigger("focus");
65
- await nextTick();
66
- expect(wrapper.find(".yh-autocomplete__clear").exists()).toBe(true);
67
- });
68
- it("should clear value when clear button is clicked", async () => {
69
- const wrapper = mount(Autocomplete, {
70
- props: {
71
- modelValue: "test",
72
- clearable: true,
73
- "onUpdate:modelValue": (val) => wrapper.setProps({ modelValue: val })
74
- }
75
- });
76
- await wrapper.find("input").trigger("focus");
77
- await nextTick();
78
- await wrapper.find(".yh-autocomplete__clear").trigger("click");
79
- expect(wrapper.emitted("clear")).toBeTruthy();
80
- expect(wrapper.props("modelValue")).toBe("");
81
- });
82
- it("should emit focus and blur events", async () => {
83
- const wrapper = mount(Autocomplete);
84
- await wrapper.find("input").trigger("focus");
85
- expect(wrapper.emitted("focus")).toBeTruthy();
86
- await wrapper.find("input").trigger("blur");
87
- await new Promise((resolve) => setTimeout(resolve, 200));
88
- expect(wrapper.emitted("blur")).toBeTruthy();
89
- });
90
- it("should emit input event when typing", async () => {
91
- const wrapper = mount(Autocomplete, {
92
- props: {
93
- "onUpdate:modelValue": (val) => wrapper.setProps({ modelValue: val })
94
- }
95
- });
96
- await wrapper.find("input").setValue("test");
97
- expect(wrapper.emitted("input")).toBeTruthy();
98
- expect(wrapper.emitted("input")[0]).toEqual(["test"]);
99
- });
100
- it("should call fetchSuggestions on input", async () => {
101
- const mockFetch = vi.fn((query, cb) => cb(suggestions));
102
- const wrapper = mount(Autocomplete, {
103
- props: {
104
- fetchSuggestions: mockFetch,
105
- debounce: 0,
106
- "onUpdate:modelValue": (val) => wrapper.setProps({ modelValue: val })
107
- }
108
- });
109
- await wrapper.find("input").trigger("focus");
110
- await wrapper.find("input").setValue("v");
111
- await nextTick();
112
- await new Promise((resolve) => setTimeout(resolve, 50));
113
- expect(mockFetch).toHaveBeenCalled();
114
- });
115
- it("should trigger suggestions on focus when triggerOnFocus is true", async () => {
116
- const mockFetch = vi.fn((query, cb) => cb(suggestions));
117
- const wrapper = mount(Autocomplete, {
118
- props: {
119
- fetchSuggestions: mockFetch,
120
- triggerOnFocus: true
121
- }
122
- });
123
- await wrapper.find("input").trigger("focus");
124
- await nextTick();
125
- expect(mockFetch).toHaveBeenCalled();
126
- });
127
- it("should navigate down with ArrowDown key", async () => {
128
- const wrapper = mount(Autocomplete, {
129
- props: {
130
- fetchSuggestions,
131
- triggerOnFocus: true
132
- }
133
- });
134
- await wrapper.find("input").trigger("focus");
135
- await nextTick();
136
- await wrapper.find("input").trigger("keydown", { key: "ArrowDown" });
137
- await wrapper.find("input").trigger("keydown", { key: "ArrowDown" });
138
- expect(wrapper.emitted()).toBeTruthy();
139
- });
140
- it("should close dropdown on Escape key", async () => {
141
- const wrapper = mount(Autocomplete, {
142
- props: {
143
- fetchSuggestions,
144
- triggerOnFocus: true
145
- }
146
- });
147
- await wrapper.find("input").trigger("focus");
148
- await nextTick();
149
- await wrapper.find("input").trigger("keydown", { key: "Escape" });
150
- expect(wrapper.emitted()).toBeTruthy();
151
- });
152
- it("should have correct ARIA attributes", () => {
153
- const wrapper = mount(Autocomplete);
154
- const input = wrapper.find("input");
155
- expect(input.attributes("role")).toBe("combobox");
156
- expect(input.attributes("aria-autocomplete")).toBe("list");
157
- });
158
- it("should render prepend and append slots", () => {
159
- const wrapper = mount(Autocomplete, {
160
- slots: {
161
- prepend: "<span>http://</span>",
162
- append: "<span>.com</span>"
163
- }
164
- });
165
- expect(wrapper.find(".yh-autocomplete__prepend").exists()).toBe(true);
166
- expect(wrapper.find(".yh-autocomplete__append").exists()).toBe(true);
167
- });
168
- it("should render custom suggestion slot", async () => {
169
- const wrapper = mount(Autocomplete, {
170
- props: {
171
- fetchSuggestions,
172
- triggerOnFocus: true
173
- },
174
- slots: {
175
- default: ({ item }) => `Custom: ${item.value}`
176
- }
177
- });
178
- await wrapper.find("input").trigger("focus");
179
- await nextTick();
180
- expect(wrapper.emitted()).toBeTruthy();
181
- });
182
- it("should expose focus and blur methods", () => {
183
- const wrapper = mount(Autocomplete);
184
- const vm = wrapper.vm;
185
- expect(typeof vm.focus).toBe("function");
186
- expect(typeof vm.blur).toBe("function");
187
- expect(typeof vm.close).toBe("function");
188
- expect(typeof vm.highlight).toBe("function");
189
- });
190
- it("should highlight first item when highlightFirstItem is true", async () => {
191
- const mockFetch = vi.fn((query, cb) => cb(suggestions));
192
- const wrapper = mount(Autocomplete, {
193
- props: {
194
- fetchSuggestions: mockFetch,
195
- highlightFirstItem: true,
196
- triggerOnFocus: true
197
- }
198
- });
199
- await wrapper.find("input").trigger("focus");
200
- await nextTick();
201
- expect(wrapper.vm.highlightedIndex).toBe(0);
202
- });
203
- it("should support custom valueKey", async () => {
204
- const customSuggestions = [{ id: 1, name: "vue" }];
205
- const wrapper = mount(Autocomplete, {
206
- props: {
207
- fetchSuggestions: (q, cb) => cb(customSuggestions),
208
- valueKey: "name",
209
- triggerOnFocus: true,
210
- teleported: false
211
- }
212
- });
213
- await wrapper.find("input").trigger("focus");
214
- await nextTick();
215
- const items = wrapper.findAll(".yh-autocomplete__suggestion");
216
- expect(items[0].text()).toBe("vue");
217
- });
218
- it("should scroll to highlighted item", async () => {
219
- const manySuggestions = Array.from({ length: 20 }, (_, i) => ({ value: `item ${i}` }));
220
- const wrapper = mount(Autocomplete, {
221
- props: {
222
- fetchSuggestions: (q, cb) => cb(manySuggestions),
223
- triggerOnFocus: true,
224
- teleported: false
225
- }
226
- });
227
- await wrapper.find("input").trigger("focus");
228
- await nextTick();
229
- const vm = wrapper.vm;
230
- vm.highlight(15);
231
- await nextTick();
232
- expect(vm.highlightedIndex).toBe(15);
233
- });
234
- it("should render loading and empty slots", async () => {
235
- const wrapper = mount(Autocomplete, {
236
- props: {
237
- fetchSuggestions: (q, cb) => {
238
- },
239
- teleported: false
240
- },
241
- slots: {
242
- loading: '<div class="custom-loading">Loading...</div>'
243
- }
244
- });
245
- await wrapper.find("input").trigger("focus");
246
- await wrapper.find("input").setValue("a");
247
- await nextTick();
248
- expect(wrapper.find(".custom-loading").exists()).toBe(true);
249
- const wrapperEmpty = mount(Autocomplete, {
250
- props: {
251
- fetchSuggestions: (q, cb) => cb([]),
252
- teleported: false
253
- },
254
- slots: {
255
- empty: '<div class="custom-empty">No Data</div>'
256
- }
257
- });
258
- await wrapperEmpty.find("input").trigger("focus");
259
- await wrapperEmpty.find("input").setValue("a");
260
- await nextTick();
261
- expect(wrapperEmpty.find(".custom-empty").exists()).toBe(true);
262
- });
263
- });
@@ -1,103 +0,0 @@
1
- "use strict";
2
-
3
- var _vitest = require("vitest");
4
- var _avatar = _interopRequireDefault(require("../src/avatar.vue"));
5
- var _ssr = require("../../__tests__/utils/ssr.cjs");
6
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
- (0, _vitest.describe)("YhAvatar SSR", () => {
8
- (0, _vitest.it)("should render correctly in SSR", async () => {
9
- const html = await (0, _ssr.renderSSR)(_avatar.default, {
10
- shape: "circle",
11
- size: "default"
12
- });
13
- (0, _ssr.expectSSRHasClass)(html, "yh-avatar");
14
- (0, _ssr.expectSSRHasClass)(html, "yh-avatar--circle");
15
- });
16
- (0, _vitest.it)("should render square shape in SSR", async () => {
17
- const html = await (0, _ssr.renderSSR)(_avatar.default, {
18
- shape: "square"
19
- });
20
- (0, _ssr.expectSSRHasClass)(html, "yh-avatar--square");
21
- });
22
- (0, _vitest.it)("should render with image in SSR", async () => {
23
- const html = await (0, _ssr.renderSSR)(_avatar.default, {
24
- src: "https://example.com/avatar.png",
25
- alt: "User Avatar"
26
- });
27
- (0, _vitest.expect)(html).toContain('src="https://example.com/avatar.png"');
28
- (0, _vitest.expect)(html).toContain('alt="User Avatar"');
29
- (0, _ssr.expectSSRHasClass)(html, "yh-avatar__img");
30
- });
31
- (0, _vitest.it)("should render with srcSet in SSR", async () => {
32
- const html = await (0, _ssr.renderSSR)(_avatar.default, {
33
- src: "https://example.com/avatar.png",
34
- srcSet: "https://example.com/avatar-2x.png 2x"
35
- });
36
- (0, _vitest.expect)(html).toContain('srcset="https://example.com/avatar-2x.png 2x"');
37
- });
38
- (0, _vitest.it)("should render custom size in SSR", async () => {
39
- const html = await (0, _ssr.renderSSR)(_avatar.default, {
40
- size: 80
41
- });
42
- (0, _vitest.expect)(html).toMatch(/width:\s*80px/);
43
- (0, _vitest.expect)(html).toMatch(/height:\s*80px/);
44
- });
45
- (0, _vitest.it)("should render preset size in SSR", async () => {
46
- const html = await (0, _ssr.renderSSR)(_avatar.default, {
47
- size: "large"
48
- });
49
- (0, _ssr.expectSSRHasClass)(html, "yh-avatar--large");
50
- });
51
- (0, _vitest.it)("should render with fit in SSR", async () => {
52
- const html = await (0, _ssr.renderSSR)(_avatar.default, {
53
- src: "https://example.com/avatar.png",
54
- fit: "contain"
55
- });
56
- (0, _vitest.expect)(html).toMatch(/object-fit:\s*contain/);
57
- });
58
- (0, _vitest.it)("should render text content in SSR", async () => {
59
- const html = await (0, _ssr.renderSSR)(_avatar.default, {}, {
60
- default: () => "YH"
61
- });
62
- (0, _vitest.expect)(html).toContain("YH");
63
- });
64
- (0, _vitest.it)("should render custom background color in SSR", async () => {
65
- const html = await (0, _ssr.renderSSR)(_avatar.default, {
66
- backgroundColor: "#F56C6C"
67
- });
68
- (0, _vitest.expect)(html).toContain("background-color");
69
- });
70
- (0, _vitest.it)("should have role=img in SSR", async () => {
71
- const html = await (0, _ssr.renderSSR)(_avatar.default);
72
- (0, _vitest.expect)(html).toContain('role="img"');
73
- });
74
- (0, _vitest.it)("should hydrate without mismatch", async () => {
75
- const result = await (0, _ssr.testHydration)(_avatar.default, {
76
- shape: "circle",
77
- size: "default"
78
- });
79
- (0, _vitest.expect)(result.isMatch).toBe(true);
80
- });
81
- (0, _vitest.it)("should hydrate with image without mismatch", async () => {
82
- const result = await (0, _ssr.testHydration)(_avatar.default, {
83
- src: "https://example.com/avatar.png",
84
- alt: "Avatar"
85
- });
86
- (0, _vitest.expect)(result.isMatch).toBe(true);
87
- });
88
- (0, _vitest.it)("should hydrate with custom size without mismatch", async () => {
89
- const result = await (0, _ssr.testHydration)(_avatar.default, {
90
- size: 60,
91
- shape: "square"
92
- });
93
- (0, _vitest.expect)(result.isMatch).toBe(true);
94
- });
95
- (0, _vitest.it)("should hydrate text content without mismatch", async () => {
96
- const result = await (0, _ssr.testHydration)(_avatar.default, {
97
- size: "large"
98
- }, {
99
- default: () => "AB"
100
- });
101
- (0, _vitest.expect)(result.isMatch).toBe(true);
102
- });
103
- });
@@ -1,108 +0,0 @@
1
- import { describe, it, expect } from "vitest";
2
- import Avatar from "../src/avatar.vue";
3
- import { renderSSR, expectSSRHasClass, testHydration } from "../../__tests__/utils/ssr.mjs";
4
- describe("YhAvatar SSR", () => {
5
- it("should render correctly in SSR", async () => {
6
- const html = await renderSSR(Avatar, {
7
- shape: "circle",
8
- size: "default"
9
- });
10
- expectSSRHasClass(html, "yh-avatar");
11
- expectSSRHasClass(html, "yh-avatar--circle");
12
- });
13
- it("should render square shape in SSR", async () => {
14
- const html = await renderSSR(Avatar, {
15
- shape: "square"
16
- });
17
- expectSSRHasClass(html, "yh-avatar--square");
18
- });
19
- it("should render with image in SSR", async () => {
20
- const html = await renderSSR(Avatar, {
21
- src: "https://example.com/avatar.png",
22
- alt: "User Avatar"
23
- });
24
- expect(html).toContain('src="https://example.com/avatar.png"');
25
- expect(html).toContain('alt="User Avatar"');
26
- expectSSRHasClass(html, "yh-avatar__img");
27
- });
28
- it("should render with srcSet in SSR", async () => {
29
- const html = await renderSSR(Avatar, {
30
- src: "https://example.com/avatar.png",
31
- srcSet: "https://example.com/avatar-2x.png 2x"
32
- });
33
- expect(html).toContain('srcset="https://example.com/avatar-2x.png 2x"');
34
- });
35
- it("should render custom size in SSR", async () => {
36
- const html = await renderSSR(Avatar, {
37
- size: 80
38
- });
39
- expect(html).toMatch(/width:\s*80px/);
40
- expect(html).toMatch(/height:\s*80px/);
41
- });
42
- it("should render preset size in SSR", async () => {
43
- const html = await renderSSR(Avatar, {
44
- size: "large"
45
- });
46
- expectSSRHasClass(html, "yh-avatar--large");
47
- });
48
- it("should render with fit in SSR", async () => {
49
- const html = await renderSSR(Avatar, {
50
- src: "https://example.com/avatar.png",
51
- fit: "contain"
52
- });
53
- expect(html).toMatch(/object-fit:\s*contain/);
54
- });
55
- it("should render text content in SSR", async () => {
56
- const html = await renderSSR(
57
- Avatar,
58
- {},
59
- {
60
- default: () => "YH"
61
- }
62
- );
63
- expect(html).toContain("YH");
64
- });
65
- it("should render custom background color in SSR", async () => {
66
- const html = await renderSSR(Avatar, {
67
- backgroundColor: "#F56C6C"
68
- });
69
- expect(html).toContain("background-color");
70
- });
71
- it("should have role=img in SSR", async () => {
72
- const html = await renderSSR(Avatar);
73
- expect(html).toContain('role="img"');
74
- });
75
- it("should hydrate without mismatch", async () => {
76
- const result = await testHydration(Avatar, {
77
- shape: "circle",
78
- size: "default"
79
- });
80
- expect(result.isMatch).toBe(true);
81
- });
82
- it("should hydrate with image without mismatch", async () => {
83
- const result = await testHydration(Avatar, {
84
- src: "https://example.com/avatar.png",
85
- alt: "Avatar"
86
- });
87
- expect(result.isMatch).toBe(true);
88
- });
89
- it("should hydrate with custom size without mismatch", async () => {
90
- const result = await testHydration(Avatar, {
91
- size: 60,
92
- shape: "square"
93
- });
94
- expect(result.isMatch).toBe(true);
95
- });
96
- it("should hydrate text content without mismatch", async () => {
97
- const result = await testHydration(
98
- Avatar,
99
- {
100
- size: "large"
101
- },
102
- {
103
- default: () => "AB"
104
- }
105
- );
106
- expect(result.isMatch).toBe(true);
107
- });
108
- });
@@ -1,146 +0,0 @@
1
- "use strict";
2
-
3
- var _vitest = require("vitest");
4
- var _testUtils = require("@vue/test-utils");
5
- var _avatar = _interopRequireDefault(require("../src/avatar.vue"));
6
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
- (0, _vitest.describe)("YhAvatar \u7EC4\u4EF6", () => {
8
- (0, _vitest.it)("\u5E94\u8BE5\u6B63\u786E\u6E32\u67D3\u57FA\u7840\u7ED3\u6784", () => {
9
- const wrapper = (0, _testUtils.mount)(_avatar.default);
10
- (0, _vitest.expect)(wrapper.find(".yh-avatar").exists()).toBe(true);
11
- });
12
- (0, _vitest.it)("\u5E94\u8BE5\u9ED8\u8BA4\u4E3A\u5706\u5F62", () => {
13
- const wrapper = (0, _testUtils.mount)(_avatar.default);
14
- (0, _vitest.expect)(wrapper.find(".yh-avatar").classes()).toContain("yh-avatar--circle");
15
- });
16
- (0, _vitest.it)("\u5E94\u8BE5\u652F\u6301\u65B9\u5F62", () => {
17
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
18
- props: {
19
- shape: "square"
20
- }
21
- });
22
- (0, _vitest.expect)(wrapper.find(".yh-avatar").classes()).toContain("yh-avatar--square");
23
- });
24
- (0, _vitest.it)("\u5E94\u8BE5\u652F\u6301\u9884\u8BBE\u5C3A\u5BF8 small", () => {
25
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
26
- props: {
27
- size: "small"
28
- }
29
- });
30
- (0, _vitest.expect)(wrapper.find(".yh-avatar").classes()).toContain("yh-avatar--small");
31
- });
32
- (0, _vitest.it)("\u5E94\u8BE5\u652F\u6301\u9884\u8BBE\u5C3A\u5BF8 large", () => {
33
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
34
- props: {
35
- size: "large"
36
- }
37
- });
38
- (0, _vitest.expect)(wrapper.find(".yh-avatar").classes()).toContain("yh-avatar--large");
39
- });
40
- (0, _vitest.it)("\u5E94\u8BE5\u652F\u6301\u81EA\u5B9A\u4E49\u6570\u5B57\u5C3A\u5BF8", () => {
41
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
42
- props: {
43
- size: 80
44
- }
45
- });
46
- const style = wrapper.find(".yh-avatar").attributes("style");
47
- (0, _vitest.expect)(style).toContain("width: 80px");
48
- (0, _vitest.expect)(style).toContain("height: 80px");
49
- });
50
- (0, _vitest.it)("\u5E94\u8BE5\u6B63\u786E\u6E32\u67D3\u56FE\u7247", () => {
51
- const src = "https://example.com/avatar.png";
52
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
53
- props: {
54
- src
55
- }
56
- });
57
- const img = wrapper.find(".yh-avatar__img");
58
- (0, _vitest.expect)(img.exists()).toBe(true);
59
- (0, _vitest.expect)(img.attributes("src")).toBe(src);
60
- });
61
- (0, _vitest.it)("\u5E94\u8BE5\u652F\u6301 alt \u5C5E\u6027", () => {
62
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
63
- props: {
64
- src: "https://example.com/avatar.png",
65
- alt: "\u7528\u6237\u5934\u50CF"
66
- }
67
- });
68
- (0, _vitest.expect)(wrapper.find(".yh-avatar__img").attributes("alt")).toBe("\u7528\u6237\u5934\u50CF");
69
- (0, _vitest.expect)(wrapper.find(".yh-avatar").attributes("aria-label")).toBe("\u7528\u6237\u5934\u50CF");
70
- });
71
- (0, _vitest.it)("\u5E94\u8BE5\u652F\u6301 srcSet \u5C5E\u6027", () => {
72
- const srcSet = "https://example.com/avatar-2x.png 2x";
73
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
74
- props: {
75
- src: "https://example.com/avatar.png",
76
- srcSet
77
- }
78
- });
79
- (0, _vitest.expect)(wrapper.find(".yh-avatar__img").attributes("srcset")).toBe(srcSet);
80
- });
81
- (0, _vitest.it)("\u5E94\u8BE5\u652F\u6301 fit \u5C5E\u6027", () => {
82
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
83
- props: {
84
- src: "https://example.com/avatar.png",
85
- fit: "contain"
86
- }
87
- });
88
- const imgStyle = wrapper.find(".yh-avatar__img").attributes("style");
89
- (0, _vitest.expect)(imgStyle).toContain("object-fit: contain");
90
- });
91
- (0, _vitest.it)("\u5E94\u8BE5\u6B63\u786E\u5904\u7406\u56FE\u7247\u52A0\u8F7D\u5931\u8D25", async () => {
92
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
93
- props: {
94
- src: "https://invalid-url.com/avatar.png"
95
- }
96
- });
97
- await wrapper.find(".yh-avatar__img").trigger("error");
98
- (0, _vitest.expect)(wrapper.find(".yh-avatar__img").exists()).toBe(false);
99
- (0, _vitest.expect)(wrapper.emitted("error")).toBeTruthy();
100
- (0, _vitest.expect)(wrapper.emitted("error").length).toBe(1);
101
- });
102
- (0, _vitest.it)("\u5E94\u8BE5\u5728\u56FE\u7247\u52A0\u8F7D\u5931\u8D25\u540E\u663E\u793A\u9ED8\u8BA4\u63D2\u69FD", async () => {
103
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
104
- props: {
105
- src: "https://invalid-url.com/avatar.png"
106
- },
107
- slots: {
108
- default: '<span class="fallback">FB</span>'
109
- }
110
- });
111
- await wrapper.find(".yh-avatar__img").trigger("error");
112
- (0, _vitest.expect)(wrapper.find(".fallback").exists()).toBe(true);
113
- (0, _vitest.expect)(wrapper.find(".fallback").text()).toBe("FB");
114
- });
115
- (0, _vitest.it)("\u5E94\u8BE5\u652F\u6301\u9ED8\u8BA4\u63D2\u69FD\u663E\u793A\u6587\u5B57", () => {
116
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
117
- slots: {
118
- default: "YH"
119
- }
120
- });
121
- (0, _vitest.expect)(wrapper.text()).toContain("YH");
122
- (0, _vitest.expect)(wrapper.find(".yh-avatar__img").exists()).toBe(false);
123
- });
124
- (0, _vitest.it)("\u5E94\u8BE5\u652F\u6301\u81EA\u5B9A\u4E49\u80CC\u666F\u8272 backgroundColor", () => {
125
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
126
- props: {
127
- backgroundColor: "#F56C6C"
128
- }
129
- });
130
- const style = wrapper.find(".yh-avatar").attributes("style");
131
- (0, _vitest.expect)(style).toContain("background-color");
132
- });
133
- (0, _vitest.it)("\u5E94\u8BE5\u652F\u6301\u65E7 API color \u5C5E\u6027\u4F5C\u4E3A\u80CC\u666F\u8272", () => {
134
- const wrapper = (0, _testUtils.mount)(_avatar.default, {
135
- props: {
136
- color: "#67C23A"
137
- }
138
- });
139
- const style = wrapper.find(".yh-avatar").attributes("style");
140
- (0, _vitest.expect)(style).toContain("background-color");
141
- });
142
- (0, _vitest.it)("\u5E94\u8BE5\u6709 role=img", () => {
143
- const wrapper = (0, _testUtils.mount)(_avatar.default);
144
- (0, _vitest.expect)(wrapper.find(".yh-avatar").attributes("role")).toBe("img");
145
- });
146
- });