@wfrog/vc-ui 1.0.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 (301) hide show
  1. package/README.md +95 -0
  2. package/dist/es/chunk/-EkpfdcW.mjs +1100 -0
  3. package/dist/es/chunk/8rLUmOVR.mjs +29 -0
  4. package/dist/es/chunk/B-rxnVJv.mjs +3 -0
  5. package/dist/es/chunk/BAGoDD49.mjs +36 -0
  6. package/dist/es/chunk/BAtns-Mc.mjs +96 -0
  7. package/dist/es/chunk/BJS5Pdfp.mjs +55 -0
  8. package/dist/es/chunk/BMzd-IS6.mjs +900 -0
  9. package/dist/es/chunk/BWcCXRRK.mjs +229 -0
  10. package/dist/es/chunk/BX-Ogf7p.mjs +3743 -0
  11. package/dist/es/chunk/B_tU9Nax.mjs +49 -0
  12. package/dist/es/chunk/BdDihk0t.mjs +3420 -0
  13. package/dist/es/chunk/C2LgraHx.mjs +489 -0
  14. package/dist/es/chunk/C5hWsUfD.mjs +64 -0
  15. package/dist/es/chunk/C7iSSBUr.mjs +303 -0
  16. package/dist/es/chunk/CD98REcR.mjs +666 -0
  17. package/dist/es/chunk/CEClY-_T.mjs +445 -0
  18. package/dist/es/chunk/CEm0brzD.mjs +35 -0
  19. package/dist/es/chunk/CMABHk8B.mjs +1942 -0
  20. package/dist/es/chunk/CS4VKsqy.mjs +19 -0
  21. package/dist/es/chunk/CVlj9F0I.mjs +291 -0
  22. package/dist/es/chunk/CZ4ggqDE.mjs +140 -0
  23. package/dist/es/chunk/CaTfZePA.mjs +533 -0
  24. package/dist/es/chunk/Ce9ApjrT.mjs +201 -0
  25. package/dist/es/chunk/ClZGuAIb.mjs +10 -0
  26. package/dist/es/chunk/Coex0GxM.mjs +450 -0
  27. package/dist/es/chunk/Ct6q2FXg.mjs +5 -0
  28. package/dist/es/chunk/CyxEcbcy.mjs +29 -0
  29. package/dist/es/chunk/D389hx_T.mjs +35 -0
  30. package/dist/es/chunk/D3DXeVfC.mjs +1171 -0
  31. package/dist/es/chunk/D3uV7vm-.mjs +45 -0
  32. package/dist/es/chunk/D5259bwd.mjs +50 -0
  33. package/dist/es/chunk/DMHNh_tw.mjs +49 -0
  34. package/dist/es/chunk/DVNTpOBR.mjs +4 -0
  35. package/dist/es/chunk/DZACQ9LT.mjs +95 -0
  36. package/dist/es/chunk/De_EXLIy.mjs +22 -0
  37. package/dist/es/chunk/Dh4jaUSg.mjs +89 -0
  38. package/dist/es/chunk/DhhdKtyu.mjs +439 -0
  39. package/dist/es/chunk/DqUIKX7f.mjs +2039 -0
  40. package/dist/es/chunk/Dqz1zvKN.mjs +59 -0
  41. package/dist/es/chunk/Dvi7RsXg.mjs +727 -0
  42. package/dist/es/chunk/DyDMGLoF.mjs +123 -0
  43. package/dist/es/chunk/E_WRn0OP.mjs +449 -0
  44. package/dist/es/chunk/Fo0dZYnz.mjs +128 -0
  45. package/dist/es/chunk/HSv8BL8o.mjs +72 -0
  46. package/dist/es/chunk/JCIyOUEY.mjs +105 -0
  47. package/dist/es/chunk/O-uhUKF4.mjs +43 -0
  48. package/dist/es/chunk/Spa-JKB4.mjs +1046 -0
  49. package/dist/es/chunk/VAdRxe-1.mjs +16 -0
  50. package/dist/es/chunk/VCrtRnxt.mjs +1477 -0
  51. package/dist/es/chunk/ViP2SEY4.mjs +211 -0
  52. package/dist/es/chunk/aibQ9WSZ.mjs +249 -0
  53. package/dist/es/chunk/nWBcrYxV.mjs +690 -0
  54. package/dist/es/chunk/pcqpp-6-.mjs +9 -0
  55. package/dist/es/chunk/qY9OvNHY.mjs +283 -0
  56. package/dist/es/chunk/su2Zrql0.mjs +53 -0
  57. package/dist/es/chunk/zfg5SOj1.mjs +138 -0
  58. package/dist/es/components/awesome-icon/awesome-icon.d.ts +6 -0
  59. package/dist/es/components/awesome-icon/awesome-icon.mjs +41 -0
  60. package/dist/es/components/awesome-icon/awesome-icon.vue.d.ts +5 -0
  61. package/dist/es/components/awesome-icon/index.d.ts +4 -0
  62. package/dist/es/components/awesome-icon/index.mjs +6 -0
  63. package/dist/es/components/backbottom/backbottom.d.ts +7 -0
  64. package/dist/es/components/backbottom/backbottom.mjs +172 -0
  65. package/dist/es/components/backbottom/backbottom.vue.d.ts +7 -0
  66. package/dist/es/components/backbottom/components/child.vue.d.ts +30 -0
  67. package/dist/es/components/backbottom/index.d.ts +4 -0
  68. package/dist/es/components/backbottom/index.mjs +6 -0
  69. package/dist/es/components/button/button.d.ts +18 -0
  70. package/dist/es/components/button/button.mjs +313 -0
  71. package/dist/es/components/button/button.vue.d.ts +33 -0
  72. package/dist/es/components/button/index.css +9 -0
  73. package/dist/es/components/button/index.d.ts +4 -0
  74. package/dist/es/components/button/index.mjs +6 -0
  75. package/dist/es/components/cdn-tag.vue.d.ts +5 -0
  76. package/dist/es/components/chat-container/chat-container.d.ts +9 -0
  77. package/dist/es/components/chat-container/chat-container.mjs +77 -0
  78. package/dist/es/components/chat-container/chat-container.vue.d.ts +29 -0
  79. package/dist/es/components/chat-container/index.css +9 -0
  80. package/dist/es/components/chat-container/index.d.ts +4 -0
  81. package/dist/es/components/chat-container/index.mjs +6 -0
  82. package/dist/es/components/choice/choice.d.ts +6 -0
  83. package/dist/es/components/choice/choice.mjs +53 -0
  84. package/dist/es/components/choice/choice.vue.d.ts +5 -0
  85. package/dist/es/components/choice/index.css +7 -0
  86. package/dist/es/components/choice/index.d.ts +4 -0
  87. package/dist/es/components/choice/index.mjs +6 -0
  88. package/dist/es/components/choice-boolean/choice-boolean.d.ts +5 -0
  89. package/dist/es/components/choice-boolean/choice-boolean.mjs +32 -0
  90. package/dist/es/components/choice-boolean/choice-boolean.vue.d.ts +10 -0
  91. package/dist/es/components/choice-boolean/index.d.ts +4 -0
  92. package/dist/es/components/choice-boolean/index.mjs +6 -0
  93. package/dist/es/components/config-provider/config-provider.d.ts +16 -0
  94. package/dist/es/components/config-provider/config-provider.mjs +29 -0
  95. package/dist/es/components/config-provider/config-provider.vue.d.ts +18 -0
  96. package/dist/es/components/config-provider/config-provider2.mjs +6 -0
  97. package/dist/es/components/config-provider/index.d.ts +4 -0
  98. package/dist/es/components/config-provider/index.mjs +6 -0
  99. package/dist/es/components/cropper/cropper.d.ts +12 -0
  100. package/dist/es/components/cropper/cropper.mjs +333 -0
  101. package/dist/es/components/cropper/cropper.vue.d.ts +32 -0
  102. package/dist/es/components/cropper/index.css +4 -0
  103. package/dist/es/components/cropper/index.d.ts +4 -0
  104. package/dist/es/components/cropper/index.mjs +6 -0
  105. package/dist/es/components/currency/currency.d.ts +21 -0
  106. package/dist/es/components/currency/currency.mjs +185 -0
  107. package/dist/es/components/currency/currency.vue.d.ts +14 -0
  108. package/dist/es/components/currency/index.css +8 -0
  109. package/dist/es/components/currency/index.d.ts +4 -0
  110. package/dist/es/components/currency/index.mjs +6 -0
  111. package/dist/es/components/daterange-picker/daterange-picker.d.ts +6 -0
  112. package/dist/es/components/daterange-picker/daterange-picker.mjs +5550 -0
  113. package/dist/es/components/daterange-picker/daterange-picker.vue.d.ts +13 -0
  114. package/dist/es/components/daterange-picker/index.d.ts +4 -0
  115. package/dist/es/components/daterange-picker/index.mjs +6 -0
  116. package/dist/es/components/dialog/dialog.d.ts +13 -0
  117. package/dist/es/components/dialog/dialog.mjs +537 -0
  118. package/dist/es/components/dialog/dialog.vue.d.ts +38 -0
  119. package/dist/es/components/dialog/index.css +87 -0
  120. package/dist/es/components/dialog/index.d.ts +4 -0
  121. package/dist/es/components/dialog/index.mjs +6 -0
  122. package/dist/es/components/dialog-camera-upload/dialog-camera-upload.d.ts +33 -0
  123. package/dist/es/components/dialog-camera-upload/dialog-camera-upload.mjs +412 -0
  124. package/dist/es/components/dialog-camera-upload/dialog-camera-upload.vue.d.ts +23 -0
  125. package/dist/es/components/dialog-camera-upload/index.css +66 -0
  126. package/dist/es/components/dialog-camera-upload/index.d.ts +4 -0
  127. package/dist/es/components/dialog-camera-upload/index.mjs +6 -0
  128. package/dist/es/components/dialog-map-point/dialog-map-point.d.ts +9 -0
  129. package/dist/es/components/dialog-map-point/dialog-map-point.mjs +183 -0
  130. package/dist/es/components/dialog-map-point/dialog-map-point.vue.d.ts +22 -0
  131. package/dist/es/components/dialog-map-point/index.css +11 -0
  132. package/dist/es/components/dialog-map-point/index.d.ts +4 -0
  133. package/dist/es/components/dialog-map-point/index.mjs +6 -0
  134. package/dist/es/components/dialog-upload-images/dialog-upload-images.d.ts +16 -0
  135. package/dist/es/components/dialog-upload-images/dialog-upload-images.mjs +1391 -0
  136. package/dist/es/components/dialog-upload-images/dialog-upload-images.vue.d.ts +19 -0
  137. package/dist/es/components/dialog-upload-images/index.css +62 -0
  138. package/dist/es/components/dialog-upload-images/index.d.ts +4 -0
  139. package/dist/es/components/dialog-upload-images/index.mjs +6 -0
  140. package/dist/es/components/document.vue.d.ts +14 -0
  141. package/dist/es/components/drawer/drawer.d.ts +7 -0
  142. package/dist/es/components/drawer/drawer.mjs +412 -0
  143. package/dist/es/components/drawer/drawer.vue.d.ts +31 -0
  144. package/dist/es/components/drawer/index.css +56 -0
  145. package/dist/es/components/drawer/index.d.ts +4 -0
  146. package/dist/es/components/drawer/index.mjs +6 -0
  147. package/dist/es/components/easy-pagination/easy-pagination.d.ts +8 -0
  148. package/dist/es/components/easy-pagination/easy-pagination.mjs +74 -0
  149. package/dist/es/components/easy-pagination/easy-pagination.vue.d.ts +19 -0
  150. package/dist/es/components/easy-pagination/index.css +10 -0
  151. package/dist/es/components/easy-pagination/index.d.ts +4 -0
  152. package/dist/es/components/easy-pagination/index.mjs +6 -0
  153. package/dist/es/components/el-icon/el-icon.d.ts +6 -0
  154. package/dist/es/components/el-icon/el-icon.mjs +46 -0
  155. package/dist/es/components/el-icon/el-icon.vue.d.ts +6 -0
  156. package/dist/es/components/el-icon/index.css +7 -0
  157. package/dist/es/components/el-icon/index.d.ts +4 -0
  158. package/dist/es/components/el-icon/index.mjs +6 -0
  159. package/dist/es/components/example-wrapper.vue.d.ts +19 -0
  160. package/dist/es/components/flag/flag.mjs +44 -0
  161. package/dist/es/components/flag/flag.vue.d.ts +5 -0
  162. package/dist/es/components/flag/flags.d.ts +8 -0
  163. package/dist/es/components/flag/index.d.ts +4 -0
  164. package/dist/es/components/flag/index.mjs +6 -0
  165. package/dist/es/components/icon/icon.d.ts +6 -0
  166. package/dist/es/components/icon/icon.mjs +54 -0
  167. package/dist/es/components/icon/icon.vue.d.ts +3 -0
  168. package/dist/es/components/icon/icon2.mjs +27 -0
  169. package/dist/es/components/icon/index.css +9 -0
  170. package/dist/es/components/icon/index.d.ts +4 -0
  171. package/dist/es/components/icon/index.mjs +6 -0
  172. package/dist/es/components/image/image.d.ts +16 -0
  173. package/dist/es/components/image/image.mjs +167 -0
  174. package/dist/es/components/image/image.vue.d.ts +206 -0
  175. package/dist/es/components/image/index.css +20 -0
  176. package/dist/es/components/image/index.d.ts +4 -0
  177. package/dist/es/components/image/index.mjs +6 -0
  178. package/dist/es/components/input/index.css +9 -0
  179. package/dist/es/components/input/index.d.ts +4 -0
  180. package/dist/es/components/input/index.mjs +6 -0
  181. package/dist/es/components/input/input.d.ts +4 -0
  182. package/dist/es/components/input/input.mjs +85 -0
  183. package/dist/es/components/input/input.vue.d.ts +1232 -0
  184. package/dist/es/components/input-number/index.css +24 -0
  185. package/dist/es/components/input-number/index.d.ts +4 -0
  186. package/dist/es/components/input-number/index.mjs +6 -0
  187. package/dist/es/components/input-number/input-number.d.ts +8 -0
  188. package/dist/es/components/input-number/input-number.mjs +137 -0
  189. package/dist/es/components/input-number/input-number.vue.d.ts +35 -0
  190. package/dist/es/components/pca-picker/components/c.vue.d.ts +123 -0
  191. package/dist/es/components/pca-picker/components/elevator-item.vue.d.ts +7 -0
  192. package/dist/es/components/pca-picker/components/filter.vue.d.ts +2 -0
  193. package/dist/es/components/pca-picker/components/history.vue.d.ts +2 -0
  194. package/dist/es/components/pca-picker/components/hot.vue.d.ts +2 -0
  195. package/dist/es/components/pca-picker/components/p.vue.d.ts +2 -0
  196. package/dist/es/components/pca-picker/components/pca.vue.d.ts +9 -0
  197. package/dist/es/components/pca-picker/index.css +107 -0
  198. package/dist/es/components/pca-picker/index.d.ts +4 -0
  199. package/dist/es/components/pca-picker/index.mjs +6 -0
  200. package/dist/es/components/pca-picker/pca-picker.d.ts +78 -0
  201. package/dist/es/components/pca-picker/pca-picker.mjs +1667 -0
  202. package/dist/es/components/pca-picker/pca-picker.vue.d.ts +583 -0
  203. package/dist/es/components/qr-code/index.d.ts +4 -0
  204. package/dist/es/components/qr-code/index.mjs +6 -0
  205. package/dist/es/components/qr-code/qr-code.d.ts +9 -0
  206. package/dist/es/components/qr-code/qr-code.mjs +69 -0
  207. package/dist/es/components/qr-code/qr-code.vue.d.ts +13 -0
  208. package/dist/es/components/screenfull/index.css +14 -0
  209. package/dist/es/components/screenfull/index.d.ts +4 -0
  210. package/dist/es/components/screenfull/index.mjs +6 -0
  211. package/dist/es/components/screenfull/screenfull.d.ts +4 -0
  212. package/dist/es/components/screenfull/screenfull.mjs +91 -0
  213. package/dist/es/components/screenfull/screenfull.vue.d.ts +20 -0
  214. package/dist/es/components/select/index.css +9 -0
  215. package/dist/es/components/select/index.d.ts +4 -0
  216. package/dist/es/components/select/index.mjs +6 -0
  217. package/dist/es/components/select/select.d.ts +6 -0
  218. package/dist/es/components/select/select.mjs +63 -0
  219. package/dist/es/components/select/select.vue.d.ts +6 -0
  220. package/dist/es/components/single-player/index.css +45 -0
  221. package/dist/es/components/single-player/index.d.ts +4 -0
  222. package/dist/es/components/single-player/index.mjs +6 -0
  223. package/dist/es/components/single-player/single-player.d.ts +4 -0
  224. package/dist/es/components/single-player/single-player.mjs +1172 -0
  225. package/dist/es/components/single-player/single-player.vue.d.ts +13 -0
  226. package/dist/es/components/svg-icon/index.css +9 -0
  227. package/dist/es/components/svg-icon/index.d.ts +4 -0
  228. package/dist/es/components/svg-icon/index.mjs +6 -0
  229. package/dist/es/components/svg-icon/svg-icon.d.ts +5 -0
  230. package/dist/es/components/svg-icon/svg-icon.mjs +46 -0
  231. package/dist/es/components/svg-icon/svg-icon.vue.d.ts +18 -0
  232. package/dist/es/components/switch/index.css +15 -0
  233. package/dist/es/components/switch/index.d.ts +4 -0
  234. package/dist/es/components/switch/index.mjs +6 -0
  235. package/dist/es/components/switch/switch.d.ts +9 -0
  236. package/dist/es/components/switch/switch.mjs +82 -0
  237. package/dist/es/components/switch/switch.vue.d.ts +14 -0
  238. package/dist/es/components/sync-scroll-container/index.css +82 -0
  239. package/dist/es/components/sync-scroll-container/index.d.ts +4 -0
  240. package/dist/es/components/sync-scroll-container/index.mjs +6 -0
  241. package/dist/es/components/sync-scroll-container/sync-scroll-container.d.ts +6 -0
  242. package/dist/es/components/sync-scroll-container/sync-scroll-container.mjs +157 -0
  243. package/dist/es/components/sync-scroll-container/sync-scroll-container.vue.d.ts +36 -0
  244. package/dist/es/components/tags/index.css +17 -0
  245. package/dist/es/components/tags/index.d.ts +4 -0
  246. package/dist/es/components/tags/index.mjs +6 -0
  247. package/dist/es/components/tags/tags.d.ts +9 -0
  248. package/dist/es/components/tags/tags.mjs +296 -0
  249. package/dist/es/components/tags/tags.vue.d.ts +20 -0
  250. package/dist/es/components/text-ellipsis/index.css +15 -0
  251. package/dist/es/components/text-ellipsis/index.d.ts +4 -0
  252. package/dist/es/components/text-ellipsis/index.mjs +6 -0
  253. package/dist/es/components/text-ellipsis/text-ellipsis.d.ts +12 -0
  254. package/dist/es/components/text-ellipsis/text-ellipsis.mjs +137 -0
  255. package/dist/es/components/text-ellipsis/text-ellipsis.vue.d.ts +41 -0
  256. package/dist/es/components/thousand-input/index.css +4 -0
  257. package/dist/es/components/thousand-input/index.d.ts +4 -0
  258. package/dist/es/components/thousand-input/index.mjs +6 -0
  259. package/dist/es/components/thousand-input/thousand-input.d.ts +11 -0
  260. package/dist/es/components/thousand-input/thousand-input.mjs +159 -0
  261. package/dist/es/components/thousand-input/thousand-input.vue.d.ts +2558 -0
  262. package/dist/es/components/tinymce/config.d.ts +25 -0
  263. package/dist/es/components/tinymce/index.css +9 -0
  264. package/dist/es/components/tinymce/index.d.ts +4 -0
  265. package/dist/es/components/tinymce/index.mjs +6 -0
  266. package/dist/es/components/tinymce/tinymce.d.ts +9 -0
  267. package/dist/es/components/tinymce/tinymce.mjs +176 -0
  268. package/dist/es/components/tinymce/tinymce.vue.d.ts +20 -0
  269. package/dist/es/components/tree-picker/components/popover-cascader.d.ts +8 -0
  270. package/dist/es/components/tree-picker/components/popover-cascader.vue.d.ts +1361 -0
  271. package/dist/es/components/tree-picker/docs/data.d.ts +2 -0
  272. package/dist/es/components/tree-picker/index.css +41 -0
  273. package/dist/es/components/tree-picker/index.d.ts +4 -0
  274. package/dist/es/components/tree-picker/index.mjs +6 -0
  275. package/dist/es/components/tree-picker/popover-cascader.css +23 -0
  276. package/dist/es/components/tree-picker/tree-picker.d.ts +14 -0
  277. package/dist/es/components/tree-picker/tree-picker.mjs +173 -0
  278. package/dist/es/components/tree-picker/tree-picker.vue.d.ts +575 -0
  279. package/dist/es/components/upload-file/index.css +30 -0
  280. package/dist/es/components/upload-file/index.d.ts +4 -0
  281. package/dist/es/components/upload-file/index.mjs +6 -0
  282. package/dist/es/components/upload-file/upload-file.d.ts +39 -0
  283. package/dist/es/components/upload-file/upload-file.mjs +202 -0
  284. package/dist/es/components/upload-file/upload-file.vue.d.ts +30 -0
  285. package/dist/es/directives/cleave/index.d.ts +3 -0
  286. package/dist/es/directives/focus/index.d.ts +4 -0
  287. package/dist/es/directives/index.d.ts +3 -0
  288. package/dist/es/directives/thousand/index.d.ts +3 -0
  289. package/dist/es/index.d.ts +42 -0
  290. package/dist/es/index.mjs +122 -0
  291. package/dist/es/use/useSmallScreen/index.d.ts +4 -0
  292. package/dist/es/use/useSmallScreen/index.mjs +10 -0
  293. package/dist/es/use/useStore/index.d.ts +3 -0
  294. package/dist/es/use/useStore/index.mjs +22 -0
  295. package/dist/es/utils/index.d.ts +6 -0
  296. package/dist/es/utils/resolver.d.ts +3 -0
  297. package/dist/es/utils/resolver.mjs +24 -0
  298. package/dist/es/utils/typescript.d.ts +6 -0
  299. package/dist/global.d.ts +42 -0
  300. package/dist/index.css +869 -0
  301. package/package.json +58 -0
@@ -0,0 +1,727 @@
1
+ import { defineComponent, useAttrs, useSlots, computed, shallowRef, ref, watch, nextTick, onMounted, toRef, createElementBlock, openBlock, normalizeStyle, normalizeClass, unref, createCommentVNode, Fragment, createElementVNode, renderSlot, createBlock, withCtx, resolveDynamicComponent, mergeProps, withModifiers, toDisplayString } from 'vue';
2
+ import { i as isFirefox, e as useResizeObserver } from './CEClY-_T.mjs';
3
+ import { E as ElIcon } from './DMHNh_tw.mjs';
4
+ import { CircleClose, View, Hide } from '@element-plus/icons-vue';
5
+ import { f as isNumber, h as isString, c as buildProps, d as definePropType, u as useNamespace, k as isNil, e as debugWarn, N as NOOP, o as isClient, s as isObject } from './E_WRn0OP.mjs';
6
+ import { u as useSizeProp } from './CS4VKsqy.mjs';
7
+ import { i as iconPropType, V as ValidateComponentsMap } from '../components/icon/icon2.mjs';
8
+ import { m as mutable } from './B-rxnVJv.mjs';
9
+ import { u as useAriaProps } from './C2LgraHx.mjs';
10
+ import { U as UPDATE_MODEL_EVENT, C as CHANGE_EVENT, I as INPUT_EVENT } from './Ct6q2FXg.mjs';
11
+ import { _ as _export_sfc, w as withInstall } from './D389hx_T.mjs';
12
+ import { u as useAttrs$1 } from './De_EXLIy.mjs';
13
+ import { c as useFormSize, b as useFormDisabled, u as useFormItem, a as useFormItemInputId } from './DZACQ9LT.mjs';
14
+ import { u as useFocusController, a as useComposition } from './JCIyOUEY.mjs';
15
+
16
+ let hiddenTextarea = void 0;
17
+ const HIDDEN_STYLE = {
18
+ height: "0",
19
+ visibility: "hidden",
20
+ overflow: isFirefox() ? "" : "hidden",
21
+ position: "absolute",
22
+ "z-index": "-1000",
23
+ top: "0",
24
+ right: "0"
25
+ };
26
+ const CONTEXT_STYLE = [
27
+ "letter-spacing",
28
+ "line-height",
29
+ "padding-top",
30
+ "padding-bottom",
31
+ "font-family",
32
+ "font-weight",
33
+ "font-size",
34
+ "text-rendering",
35
+ "text-transform",
36
+ "width",
37
+ "text-indent",
38
+ "padding-left",
39
+ "padding-right",
40
+ "border-width",
41
+ "box-sizing",
42
+ "word-break"
43
+ ];
44
+ const looseToNumber = (val) => {
45
+ const n = Number.parseFloat(val);
46
+ return Number.isNaN(n) ? val : n;
47
+ };
48
+ function calculateNodeStyling(targetElement) {
49
+ const style = window.getComputedStyle(targetElement);
50
+ const boxSizing = style.getPropertyValue("box-sizing");
51
+ const paddingSize = Number.parseFloat(style.getPropertyValue("padding-bottom")) + Number.parseFloat(style.getPropertyValue("padding-top"));
52
+ const borderSize = Number.parseFloat(style.getPropertyValue("border-bottom-width")) + Number.parseFloat(style.getPropertyValue("border-top-width"));
53
+ const contextStyle = CONTEXT_STYLE.map((name) => [
54
+ name,
55
+ style.getPropertyValue(name)
56
+ ]);
57
+ return { contextStyle, paddingSize, borderSize, boxSizing };
58
+ }
59
+ function calcTextareaHeight(targetElement, minRows = 1, maxRows) {
60
+ var _a, _b;
61
+ if (!hiddenTextarea) {
62
+ hiddenTextarea = document.createElement("textarea");
63
+ ((_a = targetElement.parentNode) != null ? _a : document.body).appendChild(hiddenTextarea);
64
+ }
65
+ const { paddingSize, borderSize, boxSizing, contextStyle } = calculateNodeStyling(targetElement);
66
+ contextStyle.forEach(([key, value]) => hiddenTextarea == null ? void 0 : hiddenTextarea.style.setProperty(key, value));
67
+ Object.entries(HIDDEN_STYLE).forEach(([key, value]) => hiddenTextarea == null ? void 0 : hiddenTextarea.style.setProperty(key, value, "important"));
68
+ hiddenTextarea.value = targetElement.value || targetElement.placeholder || "";
69
+ let height = hiddenTextarea.scrollHeight;
70
+ const result = {};
71
+ if (boxSizing === "border-box") {
72
+ height = height + borderSize;
73
+ } else if (boxSizing === "content-box") {
74
+ height = height - paddingSize;
75
+ }
76
+ hiddenTextarea.value = "";
77
+ const singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;
78
+ if (isNumber(minRows)) {
79
+ let minHeight = singleRowHeight * minRows;
80
+ if (boxSizing === "border-box") {
81
+ minHeight = minHeight + paddingSize + borderSize;
82
+ }
83
+ height = Math.max(minHeight, height);
84
+ result.minHeight = `${minHeight}px`;
85
+ }
86
+ if (isNumber(maxRows)) {
87
+ let maxHeight = singleRowHeight * maxRows;
88
+ if (boxSizing === "border-box") {
89
+ maxHeight = maxHeight + paddingSize + borderSize;
90
+ }
91
+ height = Math.min(maxHeight, height);
92
+ }
93
+ result.height = `${height}px`;
94
+ (_b = hiddenTextarea.parentNode) == null ? void 0 : _b.removeChild(hiddenTextarea);
95
+ hiddenTextarea = void 0;
96
+ return result;
97
+ }
98
+
99
+ const inputProps = buildProps({
100
+ id: {
101
+ type: String,
102
+ default: void 0
103
+ },
104
+ size: useSizeProp,
105
+ disabled: {
106
+ type: Boolean,
107
+ default: void 0
108
+ },
109
+ modelValue: {
110
+ type: definePropType([
111
+ String,
112
+ Number,
113
+ Object
114
+ ]),
115
+ default: ""
116
+ },
117
+ modelModifiers: {
118
+ type: definePropType(Object),
119
+ default: () => ({})
120
+ },
121
+ maxlength: {
122
+ type: [String, Number]
123
+ },
124
+ minlength: {
125
+ type: [String, Number]
126
+ },
127
+ type: {
128
+ type: definePropType(String),
129
+ default: "text"
130
+ },
131
+ resize: {
132
+ type: String,
133
+ values: ["none", "both", "horizontal", "vertical"]
134
+ },
135
+ autosize: {
136
+ type: definePropType([Boolean, Object]),
137
+ default: false
138
+ },
139
+ autocomplete: {
140
+ type: definePropType(String),
141
+ default: "off"
142
+ },
143
+ formatter: {
144
+ type: Function
145
+ },
146
+ parser: {
147
+ type: Function
148
+ },
149
+ placeholder: {
150
+ type: String
151
+ },
152
+ form: {
153
+ type: String
154
+ },
155
+ readonly: Boolean,
156
+ clearable: Boolean,
157
+ clearIcon: {
158
+ type: iconPropType,
159
+ default: CircleClose
160
+ },
161
+ showPassword: Boolean,
162
+ showWordLimit: Boolean,
163
+ wordLimitPosition: {
164
+ type: String,
165
+ values: ["inside", "outside"],
166
+ default: "inside"
167
+ },
168
+ suffixIcon: {
169
+ type: iconPropType
170
+ },
171
+ prefixIcon: {
172
+ type: iconPropType
173
+ },
174
+ containerRole: {
175
+ type: String,
176
+ default: void 0
177
+ },
178
+ tabindex: {
179
+ type: [String, Number],
180
+ default: 0
181
+ },
182
+ validateEvent: {
183
+ type: Boolean,
184
+ default: true
185
+ },
186
+ inputStyle: {
187
+ type: definePropType([Object, Array, String]),
188
+ default: () => mutable({})
189
+ },
190
+ autofocus: Boolean,
191
+ rows: {
192
+ type: Number,
193
+ default: 2
194
+ },
195
+ ...useAriaProps(["ariaLabel"]),
196
+ inputmode: {
197
+ type: definePropType(String),
198
+ default: void 0
199
+ },
200
+ name: String
201
+ });
202
+ const inputEmits = {
203
+ [UPDATE_MODEL_EVENT]: (value) => isString(value),
204
+ input: (value) => isString(value),
205
+ change: (value, evt) => isString(value) && (evt instanceof Event || evt === void 0),
206
+ focus: (evt) => evt instanceof FocusEvent,
207
+ blur: (evt) => evt instanceof FocusEvent,
208
+ clear: () => true,
209
+ mouseleave: (evt) => evt instanceof MouseEvent,
210
+ mouseenter: (evt) => evt instanceof MouseEvent,
211
+ keydown: (evt) => evt instanceof Event,
212
+ compositionstart: (evt) => evt instanceof CompositionEvent,
213
+ compositionupdate: (evt) => evt instanceof CompositionEvent,
214
+ compositionend: (evt) => evt instanceof CompositionEvent
215
+ };
216
+
217
+ function useCursor(input) {
218
+ let selectionInfo;
219
+ function recordCursor() {
220
+ if (input.value == void 0)
221
+ return;
222
+ const { selectionStart, selectionEnd, value } = input.value;
223
+ if (selectionStart == null || selectionEnd == null)
224
+ return;
225
+ const beforeTxt = value.slice(0, Math.max(0, selectionStart));
226
+ const afterTxt = value.slice(Math.max(0, selectionEnd));
227
+ selectionInfo = {
228
+ selectionStart,
229
+ selectionEnd,
230
+ value,
231
+ beforeTxt,
232
+ afterTxt
233
+ };
234
+ }
235
+ function setCursor() {
236
+ if (input.value == void 0 || selectionInfo == void 0)
237
+ return;
238
+ const { value } = input.value;
239
+ const { beforeTxt, afterTxt, selectionStart } = selectionInfo;
240
+ if (beforeTxt == void 0 || afterTxt == void 0 || selectionStart == void 0)
241
+ return;
242
+ let startPos = value.length;
243
+ if (value.endsWith(afterTxt)) {
244
+ startPos = value.length - afterTxt.length;
245
+ } else if (value.startsWith(beforeTxt)) {
246
+ startPos = beforeTxt.length;
247
+ } else {
248
+ const beforeLastChar = beforeTxt[selectionStart - 1];
249
+ const newIndex = value.indexOf(beforeLastChar, selectionStart - 1);
250
+ if (newIndex !== -1) {
251
+ startPos = newIndex + 1;
252
+ }
253
+ }
254
+ input.value.setSelectionRange(startPos, startPos);
255
+ }
256
+ return [recordCursor, setCursor];
257
+ }
258
+
259
+ const COMPONENT_NAME = "ElInput";
260
+ const __default__ = defineComponent({
261
+ name: COMPONENT_NAME,
262
+ inheritAttrs: false
263
+ });
264
+ const _sfc_main = /* @__PURE__ */ defineComponent({
265
+ ...__default__,
266
+ props: inputProps,
267
+ emits: inputEmits,
268
+ setup(__props, { expose, emit }) {
269
+ const props = __props;
270
+ const rawAttrs = useAttrs();
271
+ const attrs = useAttrs$1();
272
+ const slots = useSlots();
273
+ const containerKls = computed(() => [
274
+ props.type === "textarea" ? nsTextarea.b() : nsInput.b(),
275
+ nsInput.m(inputSize.value),
276
+ nsInput.is("disabled", inputDisabled.value),
277
+ nsInput.is("exceed", inputExceed.value),
278
+ {
279
+ [nsInput.b("group")]: slots.prepend || slots.append,
280
+ [nsInput.m("prefix")]: slots.prefix || props.prefixIcon,
281
+ [nsInput.m("suffix")]: slots.suffix || props.suffixIcon || props.clearable || props.showPassword,
282
+ [nsInput.bm("suffix", "password-clear")]: showClear.value && showPwdVisible.value,
283
+ [nsInput.b("hidden")]: props.type === "hidden"
284
+ },
285
+ rawAttrs.class
286
+ ]);
287
+ const wrapperKls = computed(() => [
288
+ nsInput.e("wrapper"),
289
+ nsInput.is("focus", isFocused.value)
290
+ ]);
291
+ const { form: elForm, formItem: elFormItem } = useFormItem();
292
+ const { inputId } = useFormItemInputId(props, {
293
+ formItemContext: elFormItem
294
+ });
295
+ const inputSize = useFormSize();
296
+ const inputDisabled = useFormDisabled();
297
+ const nsInput = useNamespace("input");
298
+ const nsTextarea = useNamespace("textarea");
299
+ const input = shallowRef();
300
+ const textarea = shallowRef();
301
+ const hovering = ref(false);
302
+ const passwordVisible = ref(false);
303
+ const countStyle = ref();
304
+ const textareaCalcStyle = shallowRef(props.inputStyle);
305
+ const _ref = computed(() => input.value || textarea.value);
306
+ const { wrapperRef, isFocused, handleFocus, handleBlur } = useFocusController(_ref, {
307
+ disabled: inputDisabled,
308
+ afterBlur() {
309
+ var _a;
310
+ if (props.validateEvent) {
311
+ (_a = elFormItem == null ? void 0 : elFormItem.validate) == null ? void 0 : _a.call(elFormItem, "blur").catch((err) => debugWarn(err));
312
+ }
313
+ }
314
+ });
315
+ const needStatusIcon = computed(() => {
316
+ var _a;
317
+ return (_a = elForm == null ? void 0 : elForm.statusIcon) != null ? _a : false;
318
+ });
319
+ const validateState = computed(() => (elFormItem == null ? void 0 : elFormItem.validateState) || "");
320
+ const validateIcon = computed(() => validateState.value && ValidateComponentsMap[validateState.value]);
321
+ const passwordIcon = computed(() => passwordVisible.value ? View : Hide);
322
+ const containerStyle = computed(() => [
323
+ rawAttrs.style
324
+ ]);
325
+ const textareaStyle = computed(() => [
326
+ props.inputStyle,
327
+ textareaCalcStyle.value,
328
+ { resize: props.resize }
329
+ ]);
330
+ const nativeInputValue = computed(() => isNil(props.modelValue) ? "" : String(props.modelValue));
331
+ const showClear = computed(() => props.clearable && !inputDisabled.value && !props.readonly && !!nativeInputValue.value && (isFocused.value || hovering.value));
332
+ const showPwdVisible = computed(() => props.showPassword && !inputDisabled.value && !!nativeInputValue.value);
333
+ const isWordLimitVisible = computed(() => props.showWordLimit && !!props.maxlength && (props.type === "text" || props.type === "textarea") && !inputDisabled.value && !props.readonly && !props.showPassword);
334
+ const textLength = computed(() => nativeInputValue.value.length);
335
+ const inputExceed = computed(() => !!isWordLimitVisible.value && textLength.value > Number(props.maxlength));
336
+ const suffixVisible = computed(() => !!slots.suffix || !!props.suffixIcon || showClear.value || props.showPassword || isWordLimitVisible.value || !!validateState.value && needStatusIcon.value);
337
+ const hasModelModifiers = computed(() => !!Object.keys(props.modelModifiers).length);
338
+ const [recordCursor, setCursor] = useCursor(input);
339
+ useResizeObserver(textarea, (entries) => {
340
+ onceInitSizeTextarea();
341
+ if (!isWordLimitVisible.value || props.resize !== "both" && props.resize !== "horizontal")
342
+ return;
343
+ const entry = entries[0];
344
+ const { width } = entry.contentRect;
345
+ countStyle.value = {
346
+ right: `calc(100% - ${width + 22 - 10}px)`
347
+ };
348
+ });
349
+ const resizeTextarea = () => {
350
+ const { type, autosize } = props;
351
+ if (!isClient || type !== "textarea" || !textarea.value)
352
+ return;
353
+ if (autosize) {
354
+ const minRows = isObject(autosize) ? autosize.minRows : void 0;
355
+ const maxRows = isObject(autosize) ? autosize.maxRows : void 0;
356
+ const textareaStyle2 = calcTextareaHeight(textarea.value, minRows, maxRows);
357
+ textareaCalcStyle.value = {
358
+ overflowY: "hidden",
359
+ ...textareaStyle2
360
+ };
361
+ nextTick(() => {
362
+ textarea.value.offsetHeight;
363
+ textareaCalcStyle.value = textareaStyle2;
364
+ });
365
+ } else {
366
+ textareaCalcStyle.value = {
367
+ minHeight: calcTextareaHeight(textarea.value).minHeight
368
+ };
369
+ }
370
+ };
371
+ const createOnceInitResize = (resizeTextarea2) => {
372
+ let isInit = false;
373
+ return () => {
374
+ var _a;
375
+ if (isInit || !props.autosize)
376
+ return;
377
+ const isElHidden = ((_a = textarea.value) == null ? void 0 : _a.offsetParent) === null;
378
+ if (!isElHidden) {
379
+ setTimeout(resizeTextarea2);
380
+ isInit = true;
381
+ }
382
+ };
383
+ };
384
+ const onceInitSizeTextarea = createOnceInitResize(resizeTextarea);
385
+ const setNativeInputValue = () => {
386
+ const input2 = _ref.value;
387
+ const formatterValue = props.formatter ? props.formatter(nativeInputValue.value) : nativeInputValue.value;
388
+ if (!input2 || input2.value === formatterValue || props.type === "file")
389
+ return;
390
+ input2.value = formatterValue;
391
+ };
392
+ const formatValue = (value) => {
393
+ const { trim, number } = props.modelModifiers;
394
+ if (trim) {
395
+ value = value.trim();
396
+ }
397
+ if (number) {
398
+ value = `${looseToNumber(value)}`;
399
+ }
400
+ if (props.formatter && props.parser) {
401
+ value = props.parser(value);
402
+ }
403
+ return value;
404
+ };
405
+ const handleInput = async (event) => {
406
+ if (isComposing.value)
407
+ return;
408
+ const { lazy } = props.modelModifiers;
409
+ let { value } = event.target;
410
+ if (lazy) {
411
+ emit(INPUT_EVENT, value);
412
+ return;
413
+ }
414
+ value = formatValue(value);
415
+ if (String(value) === nativeInputValue.value) {
416
+ if (props.formatter) {
417
+ setNativeInputValue();
418
+ }
419
+ return;
420
+ }
421
+ recordCursor();
422
+ emit(UPDATE_MODEL_EVENT, value);
423
+ emit(INPUT_EVENT, value);
424
+ await nextTick();
425
+ if (props.formatter && props.parser || !hasModelModifiers.value) {
426
+ setNativeInputValue();
427
+ }
428
+ setCursor();
429
+ };
430
+ const handleChange = async (event) => {
431
+ let { value } = event.target;
432
+ value = formatValue(value);
433
+ if (props.modelModifiers.lazy) {
434
+ emit(UPDATE_MODEL_EVENT, value);
435
+ }
436
+ emit(CHANGE_EVENT, value, event);
437
+ await nextTick();
438
+ setNativeInputValue();
439
+ };
440
+ const {
441
+ isComposing,
442
+ handleCompositionStart,
443
+ handleCompositionUpdate,
444
+ handleCompositionEnd
445
+ } = useComposition({ emit, afterComposition: handleInput });
446
+ const handlePasswordVisible = () => {
447
+ passwordVisible.value = !passwordVisible.value;
448
+ };
449
+ const focus = () => {
450
+ var _a;
451
+ return (_a = _ref.value) == null ? void 0 : _a.focus();
452
+ };
453
+ const blur = () => {
454
+ var _a;
455
+ return (_a = _ref.value) == null ? void 0 : _a.blur();
456
+ };
457
+ const handleMouseLeave = (evt) => {
458
+ hovering.value = false;
459
+ emit("mouseleave", evt);
460
+ };
461
+ const handleMouseEnter = (evt) => {
462
+ hovering.value = true;
463
+ emit("mouseenter", evt);
464
+ };
465
+ const handleKeydown = (evt) => {
466
+ emit("keydown", evt);
467
+ };
468
+ const select = () => {
469
+ var _a;
470
+ (_a = _ref.value) == null ? void 0 : _a.select();
471
+ };
472
+ const clear = () => {
473
+ emit(UPDATE_MODEL_EVENT, "");
474
+ emit(CHANGE_EVENT, "");
475
+ emit("clear");
476
+ emit(INPUT_EVENT, "");
477
+ };
478
+ watch(() => props.modelValue, () => {
479
+ var _a;
480
+ nextTick(() => resizeTextarea());
481
+ if (props.validateEvent) {
482
+ (_a = elFormItem == null ? void 0 : elFormItem.validate) == null ? void 0 : _a.call(elFormItem, "change").catch((err) => debugWarn(err));
483
+ }
484
+ });
485
+ watch(nativeInputValue, (newValue) => {
486
+ if (!_ref.value) {
487
+ return;
488
+ }
489
+ const { trim, number } = props.modelModifiers;
490
+ const elValue = _ref.value.value;
491
+ const displayValue = (number || props.type === "number") && !/^0\d/.test(elValue) ? `${looseToNumber(elValue)}` : elValue;
492
+ if (displayValue === newValue) {
493
+ return;
494
+ }
495
+ if (document.activeElement === _ref.value && _ref.value.type !== "range") {
496
+ if (trim && displayValue.trim() === newValue) {
497
+ return;
498
+ }
499
+ }
500
+ setNativeInputValue();
501
+ });
502
+ watch(() => props.type, async () => {
503
+ await nextTick();
504
+ setNativeInputValue();
505
+ resizeTextarea();
506
+ });
507
+ onMounted(() => {
508
+ if (!props.formatter && props.parser) {
509
+ debugWarn(COMPONENT_NAME, "If you set the parser, you also need to set the formatter.");
510
+ }
511
+ setNativeInputValue();
512
+ nextTick(resizeTextarea);
513
+ });
514
+ expose({
515
+ input,
516
+ textarea,
517
+ ref: _ref,
518
+ textareaStyle,
519
+ autosize: toRef(props, "autosize"),
520
+ isComposing,
521
+ focus,
522
+ blur,
523
+ select,
524
+ clear,
525
+ resizeTextarea
526
+ });
527
+ return (_ctx, _cache) => {
528
+ return openBlock(), createElementBlock("div", {
529
+ class: normalizeClass([
530
+ unref(containerKls),
531
+ {
532
+ [unref(nsInput).bm("group", "append")]: _ctx.$slots.append,
533
+ [unref(nsInput).bm("group", "prepend")]: _ctx.$slots.prepend
534
+ }
535
+ ]),
536
+ style: normalizeStyle(unref(containerStyle)),
537
+ onMouseenter: handleMouseEnter,
538
+ onMouseleave: handleMouseLeave
539
+ }, [
540
+ createCommentVNode(" input "),
541
+ _ctx.type !== "textarea" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
542
+ createCommentVNode(" prepend slot "),
543
+ _ctx.$slots.prepend ? (openBlock(), createElementBlock("div", {
544
+ key: 0,
545
+ class: normalizeClass(unref(nsInput).be("group", "prepend"))
546
+ }, [
547
+ renderSlot(_ctx.$slots, "prepend")
548
+ ], 2)) : createCommentVNode("v-if", true),
549
+ createElementVNode("div", {
550
+ ref_key: "wrapperRef",
551
+ ref: wrapperRef,
552
+ class: normalizeClass(unref(wrapperKls))
553
+ }, [
554
+ createCommentVNode(" prefix slot "),
555
+ _ctx.$slots.prefix || _ctx.prefixIcon ? (openBlock(), createElementBlock("span", {
556
+ key: 0,
557
+ class: normalizeClass(unref(nsInput).e("prefix"))
558
+ }, [
559
+ createElementVNode("span", {
560
+ class: normalizeClass(unref(nsInput).e("prefix-inner"))
561
+ }, [
562
+ renderSlot(_ctx.$slots, "prefix"),
563
+ _ctx.prefixIcon ? (openBlock(), createBlock(unref(ElIcon), {
564
+ key: 0,
565
+ class: normalizeClass(unref(nsInput).e("icon"))
566
+ }, {
567
+ default: withCtx(() => [
568
+ (openBlock(), createBlock(resolveDynamicComponent(_ctx.prefixIcon)))
569
+ ]),
570
+ _: 1
571
+ }, 8, ["class"])) : createCommentVNode("v-if", true)
572
+ ], 2)
573
+ ], 2)) : createCommentVNode("v-if", true),
574
+ createElementVNode("input", mergeProps({
575
+ id: unref(inputId),
576
+ ref_key: "input",
577
+ ref: input,
578
+ class: unref(nsInput).e("inner")
579
+ }, unref(attrs), {
580
+ name: _ctx.name,
581
+ minlength: _ctx.minlength,
582
+ maxlength: _ctx.maxlength,
583
+ type: _ctx.showPassword ? passwordVisible.value ? "text" : "password" : _ctx.type,
584
+ disabled: unref(inputDisabled),
585
+ readonly: _ctx.readonly,
586
+ autocomplete: _ctx.autocomplete,
587
+ tabindex: _ctx.tabindex,
588
+ "aria-label": _ctx.ariaLabel,
589
+ placeholder: _ctx.placeholder,
590
+ style: _ctx.inputStyle,
591
+ form: _ctx.form,
592
+ autofocus: _ctx.autofocus,
593
+ role: _ctx.containerRole,
594
+ inputmode: _ctx.inputmode,
595
+ onCompositionstart: unref(handleCompositionStart),
596
+ onCompositionupdate: unref(handleCompositionUpdate),
597
+ onCompositionend: unref(handleCompositionEnd),
598
+ onInput: handleInput,
599
+ onChange: handleChange,
600
+ onKeydown: handleKeydown
601
+ }), null, 16, ["id", "name", "minlength", "maxlength", "type", "disabled", "readonly", "autocomplete", "tabindex", "aria-label", "placeholder", "form", "autofocus", "role", "inputmode", "onCompositionstart", "onCompositionupdate", "onCompositionend"]),
602
+ createCommentVNode(" suffix slot "),
603
+ unref(suffixVisible) ? (openBlock(), createElementBlock("span", {
604
+ key: 1,
605
+ class: normalizeClass(unref(nsInput).e("suffix"))
606
+ }, [
607
+ createElementVNode("span", {
608
+ class: normalizeClass(unref(nsInput).e("suffix-inner"))
609
+ }, [
610
+ !unref(showClear) || !unref(showPwdVisible) || !unref(isWordLimitVisible) ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
611
+ renderSlot(_ctx.$slots, "suffix"),
612
+ _ctx.suffixIcon ? (openBlock(), createBlock(unref(ElIcon), {
613
+ key: 0,
614
+ class: normalizeClass(unref(nsInput).e("icon"))
615
+ }, {
616
+ default: withCtx(() => [
617
+ (openBlock(), createBlock(resolveDynamicComponent(_ctx.suffixIcon)))
618
+ ]),
619
+ _: 1
620
+ }, 8, ["class"])) : createCommentVNode("v-if", true)
621
+ ], 64)) : createCommentVNode("v-if", true),
622
+ unref(showClear) ? (openBlock(), createBlock(unref(ElIcon), {
623
+ key: 1,
624
+ class: normalizeClass([unref(nsInput).e("icon"), unref(nsInput).e("clear")]),
625
+ onMousedown: withModifiers(unref(NOOP), ["prevent"]),
626
+ onClick: clear
627
+ }, {
628
+ default: withCtx(() => [
629
+ (openBlock(), createBlock(resolveDynamicComponent(_ctx.clearIcon)))
630
+ ]),
631
+ _: 1
632
+ }, 8, ["class", "onMousedown"])) : createCommentVNode("v-if", true),
633
+ unref(showPwdVisible) ? (openBlock(), createBlock(unref(ElIcon), {
634
+ key: 2,
635
+ class: normalizeClass([unref(nsInput).e("icon"), unref(nsInput).e("password")]),
636
+ onClick: handlePasswordVisible,
637
+ onMousedown: withModifiers(unref(NOOP), ["prevent"]),
638
+ onMouseup: withModifiers(unref(NOOP), ["prevent"])
639
+ }, {
640
+ default: withCtx(() => [
641
+ (openBlock(), createBlock(resolveDynamicComponent(unref(passwordIcon))))
642
+ ]),
643
+ _: 1
644
+ }, 8, ["class", "onMousedown", "onMouseup"])) : createCommentVNode("v-if", true),
645
+ unref(isWordLimitVisible) ? (openBlock(), createElementBlock("span", {
646
+ key: 3,
647
+ class: normalizeClass([
648
+ unref(nsInput).e("count"),
649
+ unref(nsInput).is("outside", _ctx.wordLimitPosition === "outside")
650
+ ])
651
+ }, [
652
+ createElementVNode("span", {
653
+ class: normalizeClass(unref(nsInput).e("count-inner"))
654
+ }, toDisplayString(unref(textLength)) + " / " + toDisplayString(_ctx.maxlength), 3)
655
+ ], 2)) : createCommentVNode("v-if", true),
656
+ unref(validateState) && unref(validateIcon) && unref(needStatusIcon) ? (openBlock(), createBlock(unref(ElIcon), {
657
+ key: 4,
658
+ class: normalizeClass([
659
+ unref(nsInput).e("icon"),
660
+ unref(nsInput).e("validateIcon"),
661
+ unref(nsInput).is("loading", unref(validateState) === "validating")
662
+ ])
663
+ }, {
664
+ default: withCtx(() => [
665
+ (openBlock(), createBlock(resolveDynamicComponent(unref(validateIcon))))
666
+ ]),
667
+ _: 1
668
+ }, 8, ["class"])) : createCommentVNode("v-if", true)
669
+ ], 2)
670
+ ], 2)) : createCommentVNode("v-if", true)
671
+ ], 2),
672
+ createCommentVNode(" append slot "),
673
+ _ctx.$slots.append ? (openBlock(), createElementBlock("div", {
674
+ key: 1,
675
+ class: normalizeClass(unref(nsInput).be("group", "append"))
676
+ }, [
677
+ renderSlot(_ctx.$slots, "append")
678
+ ], 2)) : createCommentVNode("v-if", true)
679
+ ], 64)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
680
+ createCommentVNode(" textarea "),
681
+ createElementVNode("textarea", mergeProps({
682
+ id: unref(inputId),
683
+ ref_key: "textarea",
684
+ ref: textarea,
685
+ class: [unref(nsTextarea).e("inner"), unref(nsInput).is("focus", unref(isFocused))]
686
+ }, unref(attrs), {
687
+ name: _ctx.name,
688
+ minlength: _ctx.minlength,
689
+ maxlength: _ctx.maxlength,
690
+ tabindex: _ctx.tabindex,
691
+ disabled: unref(inputDisabled),
692
+ readonly: _ctx.readonly,
693
+ autocomplete: _ctx.autocomplete,
694
+ style: unref(textareaStyle),
695
+ "aria-label": _ctx.ariaLabel,
696
+ placeholder: _ctx.placeholder,
697
+ form: _ctx.form,
698
+ autofocus: _ctx.autofocus,
699
+ rows: _ctx.rows,
700
+ role: _ctx.containerRole,
701
+ onCompositionstart: unref(handleCompositionStart),
702
+ onCompositionupdate: unref(handleCompositionUpdate),
703
+ onCompositionend: unref(handleCompositionEnd),
704
+ onInput: handleInput,
705
+ onFocus: unref(handleFocus),
706
+ onBlur: unref(handleBlur),
707
+ onChange: handleChange,
708
+ onKeydown: handleKeydown
709
+ }), null, 16, ["id", "name", "minlength", "maxlength", "tabindex", "disabled", "readonly", "autocomplete", "aria-label", "placeholder", "form", "autofocus", "rows", "role", "onCompositionstart", "onCompositionupdate", "onCompositionend", "onFocus", "onBlur"]),
710
+ unref(isWordLimitVisible) ? (openBlock(), createElementBlock("span", {
711
+ key: 0,
712
+ style: normalizeStyle(countStyle.value),
713
+ class: normalizeClass([
714
+ unref(nsInput).e("count"),
715
+ unref(nsInput).is("outside", _ctx.wordLimitPosition === "outside")
716
+ ])
717
+ }, toDisplayString(unref(textLength)) + " / " + toDisplayString(_ctx.maxlength), 7)) : createCommentVNode("v-if", true)
718
+ ], 64))
719
+ ], 38);
720
+ };
721
+ }
722
+ });
723
+ var Input = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "input.vue"]]);
724
+
725
+ const ElInput = withInstall(Input);
726
+
727
+ export { ElInput as E };