element-ps 2.0.21 → 2.0.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 (338) hide show
  1. package/dist/index.full.js +1 -56
  2. package/dist/index.full.min.js +5 -5
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +5 -5
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +1 -56
  7. package/es/components/alert/index.mjs +2 -2
  8. package/es/components/alert/src/alert.mjs +83 -33
  9. package/es/components/alert/src/alert.mjs.map +1 -1
  10. package/es/components/alert/src/alert2.mjs +33 -83
  11. package/es/components/alert/src/alert2.mjs.map +1 -1
  12. package/es/components/autocomplete/index.mjs +2 -2
  13. package/es/components/autocomplete/src/autocomplete.mjs +58 -94
  14. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  15. package/es/components/autocomplete/src/autocomplete2.mjs +94 -58
  16. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  17. package/es/components/avatar/index.mjs +2 -2
  18. package/es/components/avatar/src/avatar.mjs +61 -29
  19. package/es/components/avatar/src/avatar.mjs.map +1 -1
  20. package/es/components/avatar/src/avatar2.mjs +29 -61
  21. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  22. package/es/components/badge/index.mjs +2 -2
  23. package/es/components/badge/src/badge.mjs +17 -54
  24. package/es/components/badge/src/badge.mjs.map +1 -1
  25. package/es/components/badge/src/badge2.mjs +54 -17
  26. package/es/components/badge/src/badge2.mjs.map +1 -1
  27. package/es/components/button/index.mjs +2 -2
  28. package/es/components/button/src/button-group.mjs +1 -1
  29. package/es/components/button/src/button.mjs +96 -48
  30. package/es/components/button/src/button.mjs.map +1 -1
  31. package/es/components/button/src/button2.mjs +48 -96
  32. package/es/components/button/src/button2.mjs.map +1 -1
  33. package/es/components/card/index.mjs +2 -2
  34. package/es/components/card/src/card.mjs +15 -35
  35. package/es/components/card/src/card.mjs.map +1 -1
  36. package/es/components/card/src/card2.mjs +35 -15
  37. package/es/components/card/src/card2.mjs.map +1 -1
  38. package/es/components/cascader/src/index.mjs +1 -1
  39. package/es/components/cascader-panel/src/config.mjs +1 -1
  40. package/es/components/cascader-panel/src/index.mjs +1 -1
  41. package/es/components/cascader-panel/src/menu.mjs +1 -1
  42. package/es/components/cascader-panel/src/node.mjs +120 -200
  43. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  44. package/es/components/cascader-panel/src/node2.mjs +200 -120
  45. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  46. package/es/components/cascader-panel/src/store.mjs +1 -1
  47. package/es/components/collapse/index.mjs +2 -2
  48. package/es/components/collapse/src/collapse.mjs +61 -14
  49. package/es/components/collapse/src/collapse.mjs.map +1 -1
  50. package/es/components/collapse/src/collapse2.mjs +14 -61
  51. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  52. package/es/components/collection/index.mjs +1 -1
  53. package/es/components/collection/src/collection.mjs +10 -30
  54. package/es/components/collection/src/collection.mjs.map +1 -1
  55. package/es/components/collection/src/collection2.mjs +30 -10
  56. package/es/components/collection/src/collection2.mjs.map +1 -1
  57. package/es/components/divider/index.mjs +2 -2
  58. package/es/components/divider/src/divider.mjs +17 -34
  59. package/es/components/divider/src/divider.mjs.map +1 -1
  60. package/es/components/divider/src/divider2.mjs +34 -17
  61. package/es/components/divider/src/divider2.mjs.map +1 -1
  62. package/es/components/drawer/index.mjs +2 -2
  63. package/es/components/drawer/src/drawer.mjs +23 -117
  64. package/es/components/drawer/src/drawer.mjs.map +1 -1
  65. package/es/components/drawer/src/drawer2.mjs +117 -23
  66. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  67. package/es/components/dropdown/src/dropdown.mjs +2 -2
  68. package/es/components/empty/index.mjs +2 -2
  69. package/es/components/empty/src/empty.mjs +56 -11
  70. package/es/components/empty/src/empty.mjs.map +1 -1
  71. package/es/components/empty/src/empty2.mjs +11 -56
  72. package/es/components/empty/src/empty2.mjs.map +1 -1
  73. package/es/components/image/index.mjs +2 -2
  74. package/es/components/image/src/image.mjs +46 -170
  75. package/es/components/image/src/image.mjs.map +1 -1
  76. package/es/components/image/src/image2.mjs +170 -46
  77. package/es/components/image/src/image2.mjs.map +1 -1
  78. package/es/components/index.mjs +25 -25
  79. package/es/components/input/index.mjs +2 -2
  80. package/es/components/input/src/input.mjs +85 -296
  81. package/es/components/input/src/input.mjs.map +1 -1
  82. package/es/components/input/src/input2.mjs +296 -85
  83. package/es/components/input/src/input2.mjs.map +1 -1
  84. package/es/components/popconfirm/src/popconfirm2.mjs +2 -2
  85. package/es/components/popover/src/popover.mjs +1 -1
  86. package/es/components/popper/index.mjs +2 -2
  87. package/es/components/popper/src/content.mjs +52 -64
  88. package/es/components/popper/src/content.mjs.map +1 -1
  89. package/es/components/popper/src/content2.mjs +64 -52
  90. package/es/components/popper/src/content2.mjs.map +1 -1
  91. package/es/components/rate/index.mjs +2 -2
  92. package/es/components/rate/src/rate.mjs +169 -84
  93. package/es/components/rate/src/rate.mjs.map +1 -1
  94. package/es/components/rate/src/rate2.mjs +84 -169
  95. package/es/components/rate/src/rate2.mjs.map +1 -1
  96. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  97. package/es/components/scrollbar/index.mjs +2 -2
  98. package/es/components/scrollbar/src/scrollbar.mjs +42 -112
  99. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  100. package/es/components/scrollbar/src/scrollbar2.mjs +112 -42
  101. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  102. package/es/components/select/src/select.mjs +1 -1
  103. package/es/components/select-v2/src/defaults.mjs +1 -1
  104. package/es/components/select-v2/src/select.mjs +1 -12
  105. package/es/components/select-v2/src/select.mjs.map +1 -1
  106. package/es/components/select-v2/src/useSelect.mjs +1 -25
  107. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  108. package/es/components/skeleton/index.mjs +2 -2
  109. package/es/components/skeleton/src/skeleton.mjs +49 -22
  110. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  111. package/es/components/skeleton/src/skeleton2.mjs +22 -49
  112. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  113. package/es/components/tabs/index.mjs +3 -3
  114. package/es/components/tabs/src/tab-bar.mjs +7 -76
  115. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  116. package/es/components/tabs/src/tab-bar2.mjs +76 -7
  117. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  118. package/es/components/tabs/src/tab-nav.mjs +1 -1
  119. package/es/components/tabs/src/tab-pane.mjs +60 -14
  120. package/es/components/tabs/src/tab-pane.mjs.map +1 -1
  121. package/es/components/tabs/src/tab-pane2.mjs +14 -60
  122. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  123. package/es/components/timeline/index.mjs +2 -2
  124. package/es/components/timeline/src/timeline-item.mjs +73 -39
  125. package/es/components/timeline/src/timeline-item.mjs.map +1 -1
  126. package/es/components/timeline/src/timeline-item2.mjs +39 -73
  127. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  128. package/es/components/tooltip/index.mjs +2 -2
  129. package/es/components/tooltip/src/tooltip.mjs +64 -51
  130. package/es/components/tooltip/src/tooltip.mjs.map +1 -1
  131. package/es/components/tooltip/src/tooltip2.mjs +51 -64
  132. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  133. package/es/components/tooltip/src/trigger.mjs +1 -1
  134. package/es/components/tooltip-v2/index.mjs +5 -5
  135. package/es/components/tooltip-v2/src/arrow.mjs +38 -22
  136. package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
  137. package/es/components/tooltip-v2/src/arrow2.mjs +22 -38
  138. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  139. package/es/components/tooltip-v2/src/root.mjs +17 -81
  140. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  141. package/es/components/tooltip-v2/src/root2.mjs +81 -17
  142. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  143. package/es/components/tooltip-v2/src/tooltip.mjs +74 -21
  144. package/es/components/tooltip-v2/src/tooltip.mjs.map +1 -1
  145. package/es/components/tooltip-v2/src/tooltip2.mjs +21 -74
  146. package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
  147. package/es/components/tooltip-v2/src/trigger.mjs +11 -89
  148. package/es/components/tooltip-v2/src/trigger.mjs.map +1 -1
  149. package/es/components/tooltip-v2/src/trigger2.mjs +89 -11
  150. package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
  151. package/es/components/upload/index.mjs +5 -5
  152. package/es/components/upload/src/upload-content.mjs +15 -46
  153. package/es/components/upload/src/upload-content.mjs.map +1 -1
  154. package/es/components/upload/src/upload-content2.mjs +46 -15
  155. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  156. package/es/components/upload/src/upload-dragger.mjs +11 -32
  157. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  158. package/es/components/upload/src/upload-dragger2.mjs +32 -11
  159. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  160. package/es/components/upload/src/upload-list.mjs +26 -155
  161. package/es/components/upload/src/upload-list.mjs.map +1 -1
  162. package/es/components/upload/src/upload-list2.mjs +155 -26
  163. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  164. package/es/components/upload/src/upload.mjs +106 -99
  165. package/es/components/upload/src/upload.mjs.map +1 -1
  166. package/es/components/upload/src/upload2.mjs +99 -106
  167. package/es/components/upload/src/upload2.mjs.map +1 -1
  168. package/es/index.mjs +25 -25
  169. package/lib/components/alert/index.js +2 -2
  170. package/lib/components/alert/src/alert.js +82 -33
  171. package/lib/components/alert/src/alert.js.map +1 -1
  172. package/lib/components/alert/src/alert2.js +33 -82
  173. package/lib/components/alert/src/alert2.js.map +1 -1
  174. package/lib/components/autocomplete/index.js +2 -2
  175. package/lib/components/autocomplete/src/autocomplete.js +58 -94
  176. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  177. package/lib/components/autocomplete/src/autocomplete2.js +94 -58
  178. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  179. package/lib/components/avatar/index.js +2 -2
  180. package/lib/components/avatar/src/avatar.js +61 -29
  181. package/lib/components/avatar/src/avatar.js.map +1 -1
  182. package/lib/components/avatar/src/avatar2.js +29 -61
  183. package/lib/components/avatar/src/avatar2.js.map +1 -1
  184. package/lib/components/badge/index.js +2 -2
  185. package/lib/components/badge/src/badge.js +17 -54
  186. package/lib/components/badge/src/badge.js.map +1 -1
  187. package/lib/components/badge/src/badge2.js +54 -17
  188. package/lib/components/badge/src/badge2.js.map +1 -1
  189. package/lib/components/button/index.js +2 -2
  190. package/lib/components/button/src/button-group.js +1 -1
  191. package/lib/components/button/src/button.js +96 -50
  192. package/lib/components/button/src/button.js.map +1 -1
  193. package/lib/components/button/src/button2.js +50 -96
  194. package/lib/components/button/src/button2.js.map +1 -1
  195. package/lib/components/card/index.js +2 -2
  196. package/lib/components/card/src/card.js +15 -35
  197. package/lib/components/card/src/card.js.map +1 -1
  198. package/lib/components/card/src/card2.js +35 -15
  199. package/lib/components/card/src/card2.js.map +1 -1
  200. package/lib/components/cascader/src/index.js +1 -1
  201. package/lib/components/cascader-panel/src/config.js +1 -1
  202. package/lib/components/cascader-panel/src/index.js +1 -1
  203. package/lib/components/cascader-panel/src/menu.js +1 -1
  204. package/lib/components/cascader-panel/src/node.js +121 -200
  205. package/lib/components/cascader-panel/src/node.js.map +1 -1
  206. package/lib/components/cascader-panel/src/node2.js +200 -121
  207. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  208. package/lib/components/cascader-panel/src/store.js +1 -1
  209. package/lib/components/collapse/index.js +2 -2
  210. package/lib/components/collapse/src/collapse.js +61 -16
  211. package/lib/components/collapse/src/collapse.js.map +1 -1
  212. package/lib/components/collapse/src/collapse2.js +16 -61
  213. package/lib/components/collapse/src/collapse2.js.map +1 -1
  214. package/lib/components/collection/index.js +1 -1
  215. package/lib/components/collection/src/collection.js +9 -30
  216. package/lib/components/collection/src/collection.js.map +1 -1
  217. package/lib/components/collection/src/collection2.js +30 -9
  218. package/lib/components/collection/src/collection2.js.map +1 -1
  219. package/lib/components/divider/index.js +2 -2
  220. package/lib/components/divider/src/divider.js +17 -34
  221. package/lib/components/divider/src/divider.js.map +1 -1
  222. package/lib/components/divider/src/divider2.js +34 -17
  223. package/lib/components/divider/src/divider2.js.map +1 -1
  224. package/lib/components/drawer/index.js +2 -2
  225. package/lib/components/drawer/src/drawer.js +23 -117
  226. package/lib/components/drawer/src/drawer.js.map +1 -1
  227. package/lib/components/drawer/src/drawer2.js +117 -23
  228. package/lib/components/drawer/src/drawer2.js.map +1 -1
  229. package/lib/components/dropdown/src/dropdown.js +2 -2
  230. package/lib/components/empty/index.js +2 -2
  231. package/lib/components/empty/src/empty.js +56 -11
  232. package/lib/components/empty/src/empty.js.map +1 -1
  233. package/lib/components/empty/src/empty2.js +11 -56
  234. package/lib/components/empty/src/empty2.js.map +1 -1
  235. package/lib/components/image/index.js +2 -2
  236. package/lib/components/image/src/image.js +46 -170
  237. package/lib/components/image/src/image.js.map +1 -1
  238. package/lib/components/image/src/image2.js +170 -46
  239. package/lib/components/image/src/image2.js.map +1 -1
  240. package/lib/components/index.js +25 -25
  241. package/lib/components/input/index.js +2 -2
  242. package/lib/components/input/src/input.js +84 -295
  243. package/lib/components/input/src/input.js.map +1 -1
  244. package/lib/components/input/src/input2.js +295 -84
  245. package/lib/components/input/src/input2.js.map +1 -1
  246. package/lib/components/popconfirm/src/popconfirm2.js +2 -2
  247. package/lib/components/popover/src/popover.js +1 -1
  248. package/lib/components/popper/index.js +2 -2
  249. package/lib/components/popper/src/content.js +52 -65
  250. package/lib/components/popper/src/content.js.map +1 -1
  251. package/lib/components/popper/src/content2.js +65 -52
  252. package/lib/components/popper/src/content2.js.map +1 -1
  253. package/lib/components/rate/index.js +2 -2
  254. package/lib/components/rate/src/rate.js +169 -84
  255. package/lib/components/rate/src/rate.js.map +1 -1
  256. package/lib/components/rate/src/rate2.js +84 -169
  257. package/lib/components/rate/src/rate2.js.map +1 -1
  258. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  259. package/lib/components/scrollbar/index.js +2 -2
  260. package/lib/components/scrollbar/src/scrollbar.js +42 -112
  261. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  262. package/lib/components/scrollbar/src/scrollbar2.js +112 -42
  263. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  264. package/lib/components/select/src/select.js +1 -1
  265. package/lib/components/select-v2/src/defaults.js +1 -1
  266. package/lib/components/select-v2/src/select.js +0 -11
  267. package/lib/components/select-v2/src/select.js.map +1 -1
  268. package/lib/components/select-v2/src/useSelect.js +1 -25
  269. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  270. package/lib/components/skeleton/index.js +2 -2
  271. package/lib/components/skeleton/src/skeleton.js +49 -22
  272. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  273. package/lib/components/skeleton/src/skeleton2.js +22 -49
  274. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  275. package/lib/components/tabs/index.js +3 -3
  276. package/lib/components/tabs/src/tab-bar.js +7 -76
  277. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  278. package/lib/components/tabs/src/tab-bar2.js +76 -7
  279. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  280. package/lib/components/tabs/src/tab-nav.js +1 -1
  281. package/lib/components/tabs/src/tab-pane.js +60 -14
  282. package/lib/components/tabs/src/tab-pane.js.map +1 -1
  283. package/lib/components/tabs/src/tab-pane2.js +14 -60
  284. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  285. package/lib/components/timeline/index.js +2 -2
  286. package/lib/components/timeline/src/timeline-item.js +73 -39
  287. package/lib/components/timeline/src/timeline-item.js.map +1 -1
  288. package/lib/components/timeline/src/timeline-item2.js +39 -73
  289. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  290. package/lib/components/tooltip/index.js +2 -2
  291. package/lib/components/tooltip/src/tooltip.js +65 -50
  292. package/lib/components/tooltip/src/tooltip.js.map +1 -1
  293. package/lib/components/tooltip/src/tooltip2.js +50 -65
  294. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  295. package/lib/components/tooltip/src/trigger.js +1 -1
  296. package/lib/components/tooltip-v2/index.js +5 -5
  297. package/lib/components/tooltip-v2/src/arrow.js +38 -23
  298. package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
  299. package/lib/components/tooltip-v2/src/arrow2.js +23 -38
  300. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  301. package/lib/components/tooltip-v2/src/root.js +17 -81
  302. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  303. package/lib/components/tooltip-v2/src/root2.js +81 -17
  304. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  305. package/lib/components/tooltip-v2/src/tooltip.js +74 -21
  306. package/lib/components/tooltip-v2/src/tooltip.js.map +1 -1
  307. package/lib/components/tooltip-v2/src/tooltip2.js +21 -74
  308. package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
  309. package/lib/components/tooltip-v2/src/trigger.js +11 -89
  310. package/lib/components/tooltip-v2/src/trigger.js.map +1 -1
  311. package/lib/components/tooltip-v2/src/trigger2.js +89 -11
  312. package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
  313. package/lib/components/upload/index.js +5 -5
  314. package/lib/components/upload/src/upload-content.js +15 -46
  315. package/lib/components/upload/src/upload-content.js.map +1 -1
  316. package/lib/components/upload/src/upload-content2.js +46 -15
  317. package/lib/components/upload/src/upload-content2.js.map +1 -1
  318. package/lib/components/upload/src/upload-dragger.js +12 -32
  319. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  320. package/lib/components/upload/src/upload-dragger2.js +32 -12
  321. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  322. package/lib/components/upload/src/upload-list.js +27 -155
  323. package/lib/components/upload/src/upload-list.js.map +1 -1
  324. package/lib/components/upload/src/upload-list2.js +155 -27
  325. package/lib/components/upload/src/upload-list2.js.map +1 -1
  326. package/lib/components/upload/src/upload.js +109 -99
  327. package/lib/components/upload/src/upload.js.map +1 -1
  328. package/lib/components/upload/src/upload2.js +99 -109
  329. package/lib/components/upload/src/upload2.js.map +1 -1
  330. package/lib/index.js +25 -25
  331. package/package.json +1 -1
  332. package/web-types.json +1 -1
  333. package/es/components/select-v2/src/util.d.ts +0 -2
  334. package/es/components/select-v2/src/util.mjs +0 -26
  335. package/es/components/select-v2/src/util.mjs.map +0 -1
  336. package/lib/components/select-v2/src/util.d.ts +0 -2
  337. package/lib/components/select-v2/src/util.js +0 -30
  338. package/lib/components/select-v2/src/util.js.map +0 -1
@@ -2,95 +2,306 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var vue = require('vue');
6
+ var core = require('@vueuse/core');
7
+ var lodashUnified = require('lodash-unified');
8
+ var iconsVue = require('@element-plus/icons-vue');
5
9
  require('../../../utils/index.js');
6
10
  require('../../../hooks/index.js');
7
- var props = require('../../../utils/vue/props.js');
8
- var index = require('../../../hooks/use-common-props/index.js');
11
+ var utils = require('./utils.js');
12
+ var input = require('./input.js');
13
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
14
+ var index = require('../../../hooks/use-attrs/index.js');
15
+ var index$1 = require('../../../hooks/use-form-item/index.js');
16
+ var index$2 = require('../../../hooks/use-common-props/index.js');
17
+ var index$3 = require('../../../hooks/use-namespace/index.js');
9
18
  var icon = require('../../../utils/vue/icon.js');
10
- var typescript = require('../../../utils/typescript.js');
19
+ var shared = require('@vue/shared');
20
+ var error = require('../../../utils/error.js');
11
21
 
12
- const inputProps = props.buildProps({
13
- size: index.useSizeProp,
14
- disabled: Boolean,
15
- modelValue: {
16
- type: props.definePropType([
17
- String,
18
- Number,
19
- Object
20
- ]),
21
- default: ""
22
- },
23
- type: {
24
- type: String,
25
- default: "text"
26
- },
27
- resize: {
28
- type: String,
29
- values: ["none", "both", "horizontal", "vertical"]
30
- },
31
- autosize: {
32
- type: props.definePropType([Boolean, Object]),
33
- default: false
34
- },
35
- autocomplete: {
36
- type: String,
37
- default: "off"
38
- },
39
- formatter: {
40
- type: Function
41
- },
42
- parser: {
43
- type: Function
44
- },
45
- placeholder: {
46
- type: String
47
- },
48
- form: {
49
- type: String,
50
- default: ""
51
- },
52
- readonly: {
53
- type: Boolean,
54
- default: false
55
- },
56
- clearable: {
57
- type: Boolean,
58
- default: false
59
- },
60
- showPassword: {
61
- type: Boolean,
62
- default: false
63
- },
64
- showWordLimit: {
65
- type: Boolean,
66
- default: false
67
- },
68
- suffixIcon: {
69
- type: icon.iconPropType,
70
- default: ""
71
- },
72
- prefixIcon: {
73
- type: icon.iconPropType,
74
- default: ""
75
- },
76
- label: {
77
- type: String
78
- },
79
- tabindex: {
80
- type: [Number, String]
81
- },
82
- validateEvent: {
83
- type: Boolean,
84
- default: true
85
- },
86
- inputStyle: {
87
- type: props.definePropType([Object, Array, String]),
88
- default: () => typescript.mutable({})
89
- },
90
- widget: {
91
- type: String
22
+ const _hoisted_1 = ["widget"];
23
+ const _hoisted_2 = ["type", "disabled", "formatter", "parser", "readonly", "autocomplete", "tabindex", "aria-label", "placeholder"];
24
+ const _hoisted_3 = ["tabindex", "disabled", "readonly", "autocomplete", "aria-label", "placeholder"];
25
+ const __default__ = {
26
+ name: "PsInput",
27
+ inheritAttrs: false
28
+ };
29
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
30
+ ...__default__,
31
+ props: input.inputProps,
32
+ setup(__props, { expose }) {
33
+ const props = __props;
34
+ const PENDANT_MAP = {
35
+ suffix: "append",
36
+ prefix: "prepend"
37
+ };
38
+ const instance = vue.getCurrentInstance();
39
+ const rawAttrs = vue.useAttrs();
40
+ const slots = vue.useSlots();
41
+ const attrs = index.useAttrs();
42
+ const { form, formItem } = index$1.useFormItem();
43
+ const inputSize = index$2.useSize();
44
+ const inputDisabled = index$2.useDisabled();
45
+ const nsInput = index$3.useNamespace("input");
46
+ const nsTextarea = index$3.useNamespace("textarea");
47
+ const input = vue.shallowRef();
48
+ const textarea = vue.shallowRef();
49
+ const focused = vue.ref(false);
50
+ const hovering = vue.ref(false);
51
+ const isComposing = vue.ref(false);
52
+ const passwordVisible = vue.ref(false);
53
+ const textareaCalcStyle = vue.shallowRef(props.inputStyle);
54
+ const _ref = vue.computed(() => input.value || textarea.value);
55
+ const needStatusIcon = vue.computed(() => {
56
+ var _a;
57
+ return (_a = form == null ? void 0 : form.statusIcon) != null ? _a : false;
58
+ });
59
+ const validateState = vue.computed(() => (formItem == null ? void 0 : formItem.validateState) || "");
60
+ const validateIcon = vue.computed(() => icon.ValidateComponentsMap[validateState.value]);
61
+ const passwordIcon = vue.computed(() => passwordVisible.value ? iconsVue.View : iconsVue.Hide);
62
+ const containerStyle = vue.computed(() => [
63
+ rawAttrs.style,
64
+ props.inputStyle
65
+ ]);
66
+ const textareaStyle = vue.computed(() => [
67
+ props.inputStyle,
68
+ textareaCalcStyle.value,
69
+ { resize: props.resize }
70
+ ]);
71
+ const nativeInputValue = vue.computed(() => lodashUnified.isNil(props.modelValue) ? "" : String(props.modelValue));
72
+ const showClear = vue.computed(() => props.clearable && !inputDisabled.value && !props.readonly && !!nativeInputValue.value && (focused.value || hovering.value));
73
+ const showPwdVisible = vue.computed(() => props.showPassword && !inputDisabled.value && !props.readonly && (!!nativeInputValue.value || focused.value));
74
+ const isWordLimitVisible = vue.computed(() => props.showWordLimit && !!attrs.value.maxlength && (props.type === "text" || props.type === "textarea") && !inputDisabled.value && !props.readonly && !props.showPassword);
75
+ const textLength = vue.computed(() => Array.from(nativeInputValue.value).length);
76
+ const inputExceed = vue.computed(() => !!isWordLimitVisible.value && textLength.value > Number(attrs.value.maxlength));
77
+ const suffixVisible = vue.computed(() => !!slots.suffix || !!props.suffixIcon || showClear.value || props.showPassword || isWordLimitVisible.value || !!validateState.value && needStatusIcon.value);
78
+ const resizeTextarea = () => {
79
+ const { type, autosize } = props;
80
+ if (!core.isClient || type !== "textarea")
81
+ return;
82
+ if (autosize) {
83
+ const minRows = shared.isObject(autosize) ? autosize.minRows : void 0;
84
+ const maxRows = shared.isObject(autosize) ? autosize.maxRows : void 0;
85
+ textareaCalcStyle.value = {
86
+ ...utils.calcTextareaHeight(textarea.value, minRows, maxRows)
87
+ };
88
+ } else {
89
+ textareaCalcStyle.value = {
90
+ minHeight: utils.calcTextareaHeight(textarea.value).minHeight
91
+ };
92
+ }
93
+ };
94
+ const setNativeInputValue = () => {
95
+ const input2 = _ref.value;
96
+ if (!input2 || input2.value === nativeInputValue.value)
97
+ return;
98
+ input2.value = nativeInputValue.value;
99
+ };
100
+ const calcIconOffset = (place) => {
101
+ const { el } = instance.vnode;
102
+ if (!el)
103
+ return;
104
+ const elList = Array.from(el.querySelectorAll(`.${nsInput.e(place)}`));
105
+ const target = elList.find((item) => item.parentNode === el);
106
+ if (!target)
107
+ return;
108
+ const pendant = PENDANT_MAP[place];
109
+ if (slots[pendant]) {
110
+ target.style.transform = `translateX(${place === "suffix" ? "-" : ""}${el.querySelector(`.${nsInput.be("group", pendant)}`).offsetWidth}px)`;
111
+ } else {
112
+ target.removeAttribute("style");
113
+ }
114
+ };
115
+ const updateIconOffset = () => {
116
+ calcIconOffset("prefix");
117
+ calcIconOffset("suffix");
118
+ };
119
+ vue.onMounted(async () => {
120
+ if (!props.formatter && props.parser) {
121
+ error.debugWarn("PsInput", "If you set the parser, you also need to set the formatter.");
122
+ }
123
+ setNativeInputValue();
124
+ updateIconOffset();
125
+ await vue.nextTick();
126
+ resizeTextarea();
127
+ });
128
+ vue.onUpdated(async () => {
129
+ await vue.nextTick();
130
+ updateIconOffset();
131
+ });
132
+ expose({
133
+ input,
134
+ textarea,
135
+ ref: _ref,
136
+ textareaStyle,
137
+ autosize: vue.toRef(props, "autosize")
138
+ });
139
+ return (_ctx, _cache) => {
140
+ const _component_ps_icon = vue.resolveComponent("ps-icon");
141
+ const _component_circle_close = vue.resolveComponent("circle-close");
142
+ return vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
143
+ class: vue.normalizeClass([
144
+ _ctx.type === "textarea" ? vue.unref(nsTextarea).b() : vue.unref(nsInput).b(),
145
+ vue.unref(nsInput).m(vue.unref(inputSize)),
146
+ vue.unref(nsInput).is("disabled", vue.unref(inputDisabled)),
147
+ vue.unref(nsInput).is("exceed", vue.unref(inputExceed)),
148
+ {
149
+ [vue.unref(nsInput).b("group")]: _ctx.$slots.prepend || _ctx.$slots.append,
150
+ [vue.unref(nsInput).bm("group", "append")]: _ctx.$slots.append,
151
+ [vue.unref(nsInput).bm("group", "prepend")]: _ctx.$slots.prepend,
152
+ [vue.unref(nsInput).m("prefix")]: _ctx.$slots.prefix || _ctx.prefixIcon,
153
+ [vue.unref(nsInput).m("suffix")]: _ctx.$slots.suffix || _ctx.suffixIcon || _ctx.clearable || _ctx.showPassword,
154
+ [vue.unref(nsInput).bm("suffix", "password-clear")]: vue.unref(showClear) && vue.unref(showPwdVisible)
155
+ },
156
+ _ctx.$attrs.class
157
+ ]),
158
+ style: vue.normalizeStyle(vue.unref(containerStyle)),
159
+ widget: _ctx.widget
160
+ }, [
161
+ vue.createCommentVNode(" input "),
162
+ _ctx.type !== "textarea" ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
163
+ vue.createCommentVNode(" prepend slot "),
164
+ _ctx.$slots.prepend ? (vue.openBlock(), vue.createElementBlock("div", {
165
+ key: 0,
166
+ class: vue.normalizeClass(vue.unref(nsInput).be("group", "prepend"))
167
+ }, [
168
+ vue.renderSlot(_ctx.$slots, "prepend")
169
+ ], 2)) : vue.createCommentVNode("v-if", true),
170
+ vue.createElementVNode("div", {
171
+ class: vue.normalizeClass([vue.unref(nsInput).e("wrapper"), vue.unref(nsInput).is("focus", focused.value)])
172
+ }, [
173
+ vue.createCommentVNode(" prefix slot "),
174
+ _ctx.$slots.prefix || _ctx.prefixIcon ? (vue.openBlock(), vue.createElementBlock("span", {
175
+ key: 0,
176
+ class: vue.normalizeClass(vue.unref(nsInput).e("prefix"))
177
+ }, [
178
+ vue.createElementVNode("span", {
179
+ class: vue.normalizeClass(vue.unref(nsInput).e("prefix-inner"))
180
+ }, [
181
+ vue.renderSlot(_ctx.$slots, "prefix"),
182
+ _ctx.prefixIcon ? (vue.openBlock(), vue.createBlock(_component_ps_icon, {
183
+ key: 0,
184
+ class: vue.normalizeClass(vue.unref(nsInput).e("icon"))
185
+ }, {
186
+ default: vue.withCtx(() => [
187
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.prefixIcon)))
188
+ ]),
189
+ _: 1
190
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true)
191
+ ], 2)
192
+ ], 2)) : vue.createCommentVNode("v-if", true),
193
+ vue.createElementVNode("input", vue.mergeProps({
194
+ ref_key: "input",
195
+ ref: input,
196
+ class: vue.unref(nsInput).e("inner")
197
+ }, vue.unref(attrs), {
198
+ type: _ctx.showPassword ? passwordVisible.value ? "text" : "password" : _ctx.type,
199
+ disabled: vue.unref(inputDisabled),
200
+ formatter: _ctx.formatter,
201
+ parser: _ctx.parser,
202
+ readonly: _ctx.readonly,
203
+ autocomplete: _ctx.autocomplete,
204
+ tabindex: _ctx.tabindex,
205
+ "aria-label": _ctx.label,
206
+ placeholder: _ctx.placeholder,
207
+ style: _ctx.inputStyle
208
+ }), null, 16, _hoisted_2),
209
+ vue.createCommentVNode(" suffix slot "),
210
+ vue.unref(suffixVisible) ? (vue.openBlock(), vue.createElementBlock("span", {
211
+ key: 1,
212
+ class: vue.normalizeClass(vue.unref(nsInput).e("suffix"))
213
+ }, [
214
+ vue.createElementVNode("span", {
215
+ class: vue.normalizeClass(vue.unref(nsInput).e("suffix-inner"))
216
+ }, [
217
+ !vue.unref(showClear) || !vue.unref(showPwdVisible) || !vue.unref(isWordLimitVisible) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
218
+ vue.renderSlot(_ctx.$slots, "suffix"),
219
+ _ctx.suffixIcon ? (vue.openBlock(), vue.createBlock(_component_ps_icon, {
220
+ key: 0,
221
+ class: vue.normalizeClass(vue.unref(nsInput).e("icon"))
222
+ }, {
223
+ default: vue.withCtx(() => [
224
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.suffixIcon)))
225
+ ]),
226
+ _: 1
227
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true)
228
+ ], 64)) : vue.createCommentVNode("v-if", true),
229
+ vue.unref(showClear) ? (vue.openBlock(), vue.createBlock(_component_ps_icon, {
230
+ key: 1,
231
+ class: vue.normalizeClass([vue.unref(nsInput).e("icon"), vue.unref(nsInput).e("clear")])
232
+ }, {
233
+ default: vue.withCtx(() => [
234
+ vue.createVNode(_component_circle_close)
235
+ ]),
236
+ _: 1
237
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
238
+ vue.unref(showPwdVisible) ? (vue.openBlock(), vue.createBlock(_component_ps_icon, {
239
+ key: 2,
240
+ class: vue.normalizeClass([vue.unref(nsInput).e("icon"), vue.unref(nsInput).e("password")])
241
+ }, {
242
+ default: vue.withCtx(() => [
243
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(passwordIcon))))
244
+ ]),
245
+ _: 1
246
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
247
+ vue.unref(isWordLimitVisible) ? (vue.openBlock(), vue.createElementBlock("span", {
248
+ key: 3,
249
+ class: vue.normalizeClass(vue.unref(nsInput).e("count"))
250
+ }, [
251
+ vue.createElementVNode("span", {
252
+ class: vue.normalizeClass(vue.unref(nsInput).e("count-inner"))
253
+ }, vue.toDisplayString(vue.unref(textLength)) + " / " + vue.toDisplayString(vue.unref(attrs).maxlength), 3)
254
+ ], 2)) : vue.createCommentVNode("v-if", true),
255
+ vue.unref(validateState) && vue.unref(validateIcon) && vue.unref(needStatusIcon) ? (vue.openBlock(), vue.createBlock(_component_ps_icon, {
256
+ key: 4,
257
+ class: vue.normalizeClass([
258
+ vue.unref(nsInput).e("icon"),
259
+ vue.unref(nsInput).e("validateIcon"),
260
+ vue.unref(nsInput).is("loading", vue.unref(validateState) === "validating")
261
+ ])
262
+ }, {
263
+ default: vue.withCtx(() => [
264
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(validateIcon))))
265
+ ]),
266
+ _: 1
267
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true)
268
+ ], 2)
269
+ ], 2)) : vue.createCommentVNode("v-if", true)
270
+ ], 2),
271
+ vue.createCommentVNode(" append slot "),
272
+ _ctx.$slots.append ? (vue.openBlock(), vue.createElementBlock("div", {
273
+ key: 1,
274
+ class: vue.normalizeClass(vue.unref(nsInput).be("group", "append"))
275
+ }, [
276
+ vue.renderSlot(_ctx.$slots, "append")
277
+ ], 2)) : vue.createCommentVNode("v-if", true)
278
+ ], 64)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
279
+ vue.createCommentVNode(" textarea "),
280
+ vue.createElementVNode("textarea", vue.mergeProps({
281
+ ref_key: "textarea",
282
+ ref: textarea,
283
+ class: vue.unref(nsTextarea).e("inner")
284
+ }, vue.unref(attrs), {
285
+ tabindex: _ctx.tabindex,
286
+ disabled: vue.unref(inputDisabled),
287
+ readonly: _ctx.readonly,
288
+ autocomplete: _ctx.autocomplete,
289
+ style: vue.unref(textareaStyle),
290
+ "aria-label": _ctx.label,
291
+ placeholder: _ctx.placeholder
292
+ }), null, 16, _hoisted_3),
293
+ vue.unref(isWordLimitVisible) ? (vue.openBlock(), vue.createElementBlock("span", {
294
+ key: 0,
295
+ class: vue.normalizeClass(vue.unref(nsInput).e("count"))
296
+ }, vue.toDisplayString(vue.unref(textLength)) + " / " + vue.toDisplayString(vue.unref(attrs).maxlength), 3)) : vue.createCommentVNode("v-if", true)
297
+ ], 64))
298
+ ], 14, _hoisted_1)), [
299
+ [vue.vShow, _ctx.type !== "hidden"]
300
+ ]);
301
+ };
92
302
  }
93
303
  });
304
+ var Input = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/Users/meng/workspace/element-ps/packages/components/input/src/input.vue"]]);
94
305
 
95
- exports.inputProps = inputProps;
306
+ exports["default"] = Input;
96
307
  //# sourceMappingURL=input2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"input2.js","sources":["../../../../../../packages/components/input/src/input.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n iconPropType,\n mutable,\n} from '@element-ps/utils'\nimport { useSizeProp } from '@element-ps/hooks'\nimport type Input from './input.vue'\nimport type { ExtractPropTypes, StyleValue } from 'vue'\n\nexport type InputAutoSize = { minRows?: number; maxRows?: number } | boolean\n\nexport const inputProps = buildProps({\n size: useSizeProp,\n disabled: Boolean,\n modelValue: {\n type: definePropType<string | number | null | undefined>([\n String,\n Number,\n Object,\n ]),\n default: '',\n },\n type: {\n type: String,\n default: 'text',\n },\n resize: {\n type: String,\n values: ['none', 'both', 'horizontal', 'vertical'],\n },\n autosize: {\n type: definePropType<InputAutoSize>([Boolean, Object]),\n default: false,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n formatter: {\n type: Function,\n },\n parser: {\n type: Function,\n },\n placeholder: {\n type: String,\n },\n form: {\n type: String,\n default: '',\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n clearable: {\n type: Boolean,\n default: false,\n },\n showPassword: {\n type: Boolean,\n default: false,\n },\n showWordLimit: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: iconPropType,\n default: '',\n },\n prefixIcon: {\n type: iconPropType,\n default: '',\n },\n label: {\n type: String,\n },\n tabindex: {\n type: [Number, String],\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n inputStyle: {\n type: definePropType<StyleValue>([Object, Array, String]),\n default: () => mutable({} as const),\n },\n widget: {\n type: String,\n },\n} as const)\nexport type InputProps = ExtractPropTypes<typeof inputProps>\n\nexport type InputInstance = InstanceType<typeof Input>\n"],"names":["buildProps","useSizeProp","definePropType","iconPropType","mutable"],"mappings":";;;;;;;;;;;AAOY,MAAC,UAAU,GAAGA,gBAAU,CAAC;AACrC,EAAE,IAAI,EAAEC,iBAAW;AACnB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEC,oBAAc,CAAC;AACzB,MAAM,MAAM;AACZ,MAAM,MAAM;AACZ,MAAM,MAAM;AACZ,KAAK,CAAC;AACN,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC;AACtD,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAEA,oBAAc,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC3C,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEC,iBAAY;AACtB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEA,iBAAY;AACtB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAED,oBAAc,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACjD,IAAI,OAAO,EAAE,MAAME,kBAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"input2.js","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div\n v-show=\"type !== 'hidden'\"\n :class=\"[\n type === 'textarea' ? nsTextarea.b() : nsInput.b(),\n nsInput.m(inputSize),\n nsInput.is('disabled', inputDisabled),\n nsInput.is('exceed', inputExceed),\n {\n [nsInput.b('group')]: $slots.prepend || $slots.append,\n [nsInput.bm('group', 'append')]: $slots.append,\n [nsInput.bm('group', 'prepend')]: $slots.prepend,\n [nsInput.m('prefix')]: $slots.prefix || prefixIcon,\n [nsInput.m('suffix')]:\n $slots.suffix || suffixIcon || clearable || showPassword,\n [nsInput.bm('suffix', 'password-clear')]: showClear && showPwdVisible,\n },\n $attrs.class,\n ]\"\n :style=\"containerStyle\"\n :widget=\"widget\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" :class=\"nsInput.be('group', 'prepend')\">\n <slot name=\"prepend\" />\n </div>\n\n <div :class=\"[nsInput.e('wrapper'), nsInput.is('focus', focused)]\">\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" :class=\"nsInput.e('prefix')\">\n <span :class=\"nsInput.e('prefix-inner')\">\n <slot name=\"prefix\" />\n <ps-icon v-if=\"prefixIcon\" :class=\"nsInput.e('icon')\">\n <component :is=\"prefixIcon\" />\n </ps-icon>\n </span>\n </span>\n\n <input\n ref=\"input\"\n :class=\"nsInput.e('inner')\"\n v-bind=\"attrs\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :formatter=\"formatter\"\n :parser=\"parser\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n />\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" :class=\"nsInput.e('suffix')\">\n <span :class=\"nsInput.e('suffix-inner')\">\n <template\n v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\"\n >\n <slot name=\"suffix\" />\n <ps-icon v-if=\"suffixIcon\" :class=\"nsInput.e('icon')\">\n <component :is=\"suffixIcon\" />\n </ps-icon>\n </template>\n <ps-icon\n v-if=\"showClear\"\n :class=\"[nsInput.e('icon'), nsInput.e('clear')]\"\n >\n <circle-close />\n </ps-icon>\n <ps-icon\n v-if=\"showPwdVisible\"\n :class=\"[nsInput.e('icon'), nsInput.e('password')]\"\n >\n <component :is=\"passwordIcon\" />\n </ps-icon>\n <span v-if=\"isWordLimitVisible\" :class=\"nsInput.e('count')\">\n <span :class=\"nsInput.e('count-inner')\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </span>\n <ps-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </ps-icon>\n </span>\n </span>\n </div>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" :class=\"nsInput.be('group', 'append')\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n ref=\"textarea\"\n :class=\"nsTextarea.e('inner')\"\n v-bind=\"attrs\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"textareaStyle\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n />\n <span v-if=\"isWordLimitVisible\" :class=\"nsInput.e('count')\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n getCurrentInstance,\n nextTick,\n onMounted,\n onUpdated,\n ref,\n shallowRef,\n toRef,\n useAttrs as useRawAttrs,\n useSlots,\n} from 'vue'\nimport { isClient } from '@vueuse/core'\nimport { isNil } from 'lodash-unified'\nimport {\n Hide as IconHide,\n View as IconView,\n} from '@element-plus/icons-vue'\nimport {\n ValidateComponentsMap,\n debugWarn,\n isObject,\n} from '@element-ps/utils'\nimport {\n useAttrs,\n useDisabled,\n useFormItem,\n useNamespace,\n useSize,\n} from '@element-ps/hooks'\nimport { calcTextareaHeight } from './utils'\nimport { inputProps } from './input'\nimport type { StyleValue } from 'vue'\n\ntype TargetElement = HTMLInputElement | HTMLTextAreaElement\nconst PENDANT_MAP = {\n suffix: 'append',\n prefix: 'prepend',\n} as const\n\ndefineOptions({\n name: 'PsInput',\n inheritAttrs: false,\n})\nconst props = defineProps(inputProps)\n\nconst instance = getCurrentInstance()!\nconst rawAttrs = useRawAttrs()\nconst slots = useSlots()\n\nconst attrs = useAttrs()\nconst { form, formItem } = useFormItem()\nconst inputSize = useSize()\nconst inputDisabled = useDisabled()\nconst nsInput = useNamespace('input')\nconst nsTextarea = useNamespace('textarea')\n\nconst input = shallowRef<HTMLInputElement>()\nconst textarea = shallowRef<HTMLTextAreaElement>()\n\nconst focused = ref(false)\nconst hovering = ref(false)\nconst isComposing = ref(false)\nconst passwordVisible = ref(false)\nconst textareaCalcStyle = shallowRef(props.inputStyle)\n\nconst _ref = computed(() => input.value || textarea.value)\n\nconst needStatusIcon = computed(() => form?.statusIcon ?? false)\nconst validateState = computed(() => formItem?.validateState || '')\nconst validateIcon = computed(() => ValidateComponentsMap[validateState.value])\nconst passwordIcon = computed(() =>\n passwordVisible.value ? IconView : IconHide\n)\nconst containerStyle = computed<StyleValue>(() => [\n rawAttrs.style as StyleValue,\n props.inputStyle,\n])\nconst textareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n textareaCalcStyle.value,\n { resize: props.resize },\n])\nconst nativeInputValue = computed(() =>\n isNil(props.modelValue) ? '' : String(props.modelValue)\n)\nconst showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (focused.value || hovering.value)\n)\nconst showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !props.readonly &&\n (!!nativeInputValue.value || focused.value)\n)\nconst isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!attrs.value.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n)\nconst textLength = computed(() => Array.from(nativeInputValue.value).length)\nconst inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value &&\n textLength.value > Number(attrs.value.maxlength)\n)\nconst suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n)\n\nconst resizeTextarea = () => {\n const { type, autosize } = props\n\n if (!isClient || type !== 'textarea') return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n textareaCalcStyle.value = {\n ...calcTextareaHeight(textarea.value!, minRows, maxRows),\n }\n } else {\n textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value!).minHeight,\n }\n }\n}\n\nconst setNativeInputValue = () => {\n const input = _ref.value\n if (!input || input.value === nativeInputValue.value) return\n input.value = nativeInputValue.value\n}\n\nconst calcIconOffset = (place: 'prefix' | 'suffix') => {\n const { el } = instance.vnode\n if (!el) return\n const elList = Array.from(\n (el as Element).querySelectorAll<HTMLSpanElement>(`.${nsInput.e(place)}`)\n )\n const target = elList.find((item) => item.parentNode === el)\n if (!target) return\n\n const pendant = PENDANT_MAP[place]\n\n if (slots[pendant]) {\n target.style.transform = `translateX(${place === 'suffix' ? '-' : ''}${\n el.querySelector(`.${nsInput.be('group', pendant)}`).offsetWidth\n }px)`\n } else {\n target.removeAttribute('style')\n }\n}\n\nconst updateIconOffset = () => {\n calcIconOffset('prefix')\n calcIconOffset('suffix')\n}\n\nonMounted(async () => {\n if (!props.formatter && props.parser) {\n debugWarn(\n 'PsInput',\n 'If you set the parser, you also need to set the formatter.'\n )\n }\n setNativeInputValue()\n updateIconOffset()\n await nextTick()\n resizeTextarea()\n})\n\nonUpdated(async () => {\n await nextTick()\n updateIconOffset()\n})\n\ndefineExpose({\n /** @description HTML input element */\n input,\n /** @description HTML textarea element */\n textarea,\n /** @description HTML element, input or textarea */\n ref: _ref,\n /** @description style of textarea. */\n textareaStyle,\n\n /** @description from props (used on unit test) */\n autosize: toRef(props, 'autosize'),\n})\n</script>\n"],"names":["getCurrentInstance","useRawAttrs","useSlots","useAttrs","useFormItem","useSize","useDisabled","useNamespace","shallowRef","ref","computed","ValidateComponentsMap","IconView","IconHide","isNil","isClient","isObject","calcTextareaHeight","onMounted","debugWarn","nextTick","onUpdated"],"mappings":"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"}
@@ -7,9 +7,9 @@ var iconsVue = require('@element-plus/icons-vue');
7
7
  require('../../../utils/index.js');
8
8
  require('../../tooltip/index.js');
9
9
  var props = require('../../../utils/vue/props.js');
10
- var button = require('../../button/src/button.js');
10
+ var button = require('../../button/src/button2.js');
11
11
  var icon = require('../../../utils/vue/icon.js');
12
- var tooltip = require('../../tooltip/src/tooltip2.js');
12
+ var tooltip = require('../../tooltip/src/tooltip.js');
13
13
 
14
14
  const popconfirmProps = props.buildProps({
15
15
  title: {
@@ -6,7 +6,7 @@ require('../../../utils/index.js');
6
6
  require('../../tooltip/index.js');
7
7
  require('../../dropdown/index.js');
8
8
  var props = require('../../../utils/vue/props.js');
9
- var tooltip = require('../../tooltip/src/tooltip2.js');
9
+ var tooltip = require('../../tooltip/src/tooltip.js');
10
10
  var dropdown = require('../../dropdown/src/dropdown.js');
11
11
 
12
12
  const usePopoverProps = props.buildProps({
@@ -6,10 +6,10 @@ require('../../utils/index.js');
6
6
  var popper$1 = require('./src/popper2.js');
7
7
  var arrow = require('./src/arrow2.js');
8
8
  var trigger = require('./src/trigger.js');
9
- var content = require('./src/content2.js');
9
+ var content = require('./src/content.js');
10
10
  var popper = require('./src/popper.js');
11
11
  var trigger$1 = require('./src/trigger2.js');
12
- var content$1 = require('./src/content.js');
12
+ var content$1 = require('./src/content2.js');
13
13
  var arrow$1 = require('./src/arrow.js');
14
14
  var deprecation = require('./src/deprecation.js');
15
15
  var install = require('../../utils/vue/install.js');
@@ -2,73 +2,60 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var core = require('@popperjs/core');
6
- require('../../../utils/index.js');
7
- var props = require('../../../utils/vue/props.js');
5
+ var vue = require('vue');
6
+ require('../../../hooks/index.js');
7
+ require('../../../tokens/index.js');
8
+ var content$1 = require('./content2.js');
9
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
10
+ var popper = require('../../../tokens/popper.js');
11
+ var index = require('../../../hooks/use-z-index/index.js');
12
+ var index$1 = require('../../../hooks/use-namespace/index.js');
8
13
 
9
- const POSITIONING_STRATEGIES = ["fixed", "absolute"];
10
- const usePopperCoreConfigProps = props.buildProps({
11
- boundariesPadding: {
12
- type: Number,
13
- default: 0
14
- },
15
- fallbackPlacements: {
16
- type: props.definePropType(Array),
17
- default: () => []
18
- },
19
- gpuAcceleration: {
20
- type: Boolean,
21
- default: true
22
- },
23
- offset: {
24
- type: Number,
25
- default: 12
26
- },
27
- placement: {
28
- type: String,
29
- values: core.placements,
30
- default: "bottom"
31
- },
32
- popperOptions: {
33
- type: props.definePropType(Object),
34
- default: () => ({})
35
- },
36
- strategy: {
37
- type: String,
38
- values: POSITIONING_STRATEGIES,
39
- default: "absolute"
14
+ const __default__ = {
15
+ name: "PsPopperContent"
16
+ };
17
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
18
+ ...__default__,
19
+ props: content$1.usePopperContentProps,
20
+ setup(__props, { expose }) {
21
+ const props = __props;
22
+ const { popperInstanceRef } = vue.inject(popper.POPPER_INJECTION_KEY, void 0);
23
+ const { nextZIndex } = index.useZIndex();
24
+ const ns = index$1.useNamespace("popper");
25
+ const popperContentRef = vue.ref();
26
+ const arrowRef = vue.ref();
27
+ const arrowOffset = vue.ref();
28
+ vue.provide(popper.POPPER_CONTENT_INJECTION_KEY, {
29
+ arrowRef,
30
+ arrowOffset
31
+ });
32
+ const contentZIndex = vue.ref(props.zIndex || nextZIndex());
33
+ const contentStyle = vue.computed(() => [{ zIndex: vue.unref(contentZIndex) }, props.popperStyle]);
34
+ const contentClass = vue.computed(() => [
35
+ ns.b(),
36
+ ns.is("pure", props.pure),
37
+ ns.is(props.effect),
38
+ props.popperClass
39
+ ]);
40
+ expose({
41
+ popperContentRef,
42
+ popperInstanceRef,
43
+ contentStyle
44
+ });
45
+ return (_ctx, _cache) => {
46
+ return vue.openBlock(), vue.createElementBlock("div", {
47
+ ref_key: "popperContentRef",
48
+ ref: popperContentRef,
49
+ style: vue.normalizeStyle(vue.unref(contentStyle)),
50
+ class: vue.normalizeClass(vue.unref(contentClass)),
51
+ role: "tooltip"
52
+ }, [
53
+ vue.renderSlot(_ctx.$slots, "default")
54
+ ], 6);
55
+ };
40
56
  }
41
57
  });
42
- const usePopperContentProps = props.buildProps({
43
- ...usePopperCoreConfigProps,
44
- style: { type: props.definePropType([String, Array, Object]) },
45
- className: { type: props.definePropType([String, Array, Object]) },
46
- effect: {
47
- type: String,
48
- default: "dark"
49
- },
50
- visible: Boolean,
51
- enterable: {
52
- type: Boolean,
53
- default: true
54
- },
55
- pure: Boolean,
56
- popperClass: {
57
- type: props.definePropType([String, Array, Object])
58
- },
59
- popperStyle: {
60
- type: props.definePropType([String, Array, Object])
61
- },
62
- referenceEl: {
63
- type: props.definePropType(Object)
64
- },
65
- stopPopperMouseEvent: {
66
- type: Boolean,
67
- default: true
68
- },
69
- zIndex: Number
70
- });
58
+ var content = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/Users/meng/workspace/element-ps/packages/components/popper/src/content.vue"]]);
71
59
 
72
- exports.usePopperContentProps = usePopperContentProps;
73
- exports.usePopperCoreConfigProps = usePopperCoreConfigProps;
60
+ exports["default"] = content;
74
61
  //# sourceMappingURL=content.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","sources":["../../../../../../packages/components/popper/src/content.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport { buildProps, definePropType } from '@element-ps/utils'\n\nimport type { ExtractPropTypes, StyleValue } from 'vue'\nimport type { Options, Placement } from '@popperjs/core'\n\ntype ClassObjectType = Record<string, boolean>\ntype ClassType = string | ClassObjectType | ClassType[]\n\nconst POSITIONING_STRATEGIES = ['fixed', 'absolute'] as const\nexport const usePopperCoreConfigProps = buildProps({\n boundariesPadding: {\n type: Number,\n default: 0,\n },\n fallbackPlacements: {\n type: definePropType<Placement[]>(Array),\n default: () => [],\n },\n gpuAcceleration: {\n type: Boolean,\n default: true,\n },\n offset: {\n type: Number,\n default: 12,\n },\n placement: {\n type: String,\n values: placements,\n default: 'bottom',\n },\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({}),\n },\n strategy: {\n type: String,\n values: POSITIONING_STRATEGIES,\n default: 'absolute',\n },\n} as const)\n\nexport const usePopperContentProps = buildProps({\n ...usePopperCoreConfigProps,\n style: { type: definePropType<StyleValue>([String, Array, Object]) },\n className: { type: definePropType<ClassType>([String, Array, Object]) },\n effect: {\n type: String,\n default: 'dark',\n },\n visible: Boolean,\n enterable: {\n type: Boolean,\n default: true,\n },\n pure: Boolean,\n popperClass: {\n type: definePropType<ClassType>([String, Array, Object]),\n },\n popperStyle: {\n type: definePropType<StyleValue>([String, Array, Object]),\n },\n referenceEl: {\n type: definePropType<HTMLElement>(Object),\n },\n stopPopperMouseEvent: {\n type: Boolean,\n default: true,\n },\n zIndex: Number,\n} as const)\n\nexport type UsePopperContentProps = ExtractPropTypes<\n typeof usePopperContentProps\n>\n\nexport type UsePopperCoreConfigProps = ExtractPropTypes<\n typeof usePopperCoreConfigProps\n>\n"],"names":["buildProps","definePropType","placements"],"mappings":";;;;;;;;AAEA,MAAM,sBAAsB,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AACzC,MAAC,wBAAwB,GAAGA,gBAAU,CAAC;AACnD,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAEC,oBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAEC,eAAU;AACtB,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAED,oBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;AACvB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,sBAAsB;AAClC,IAAI,OAAO,EAAE,UAAU;AACvB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,qBAAqB,GAAGD,gBAAU,CAAC;AAChD,EAAE,GAAG,wBAAwB;AAC7B,EAAE,KAAK,EAAE,EAAE,IAAI,EAAEC,oBAAc,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE;AAC1D,EAAE,SAAS,EAAE,EAAE,IAAI,EAAEA,oBAAc,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE;AAC9D,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,OAAO,EAAE,OAAO;AAClB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEA,oBAAc,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACjD,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEA,oBAAc,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACjD,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEA,oBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,MAAM,EAAE,MAAM;AAChB,CAAC;;;;;"}
1
+ {"version":3,"file":"content.js","sources":["../../../../../../packages/components/popper/src/content.vue"],"sourcesContent":["<template>\n <div\n ref=\"popperContentRef\"\n :style=\"contentStyle\"\n :class=\"contentClass\"\n role=\"tooltip\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, provide, ref, unref } from 'vue'\nimport { useNamespace, useZIndex } from '@element-ps/hooks'\nimport {\n POPPER_CONTENT_INJECTION_KEY,\n POPPER_INJECTION_KEY,\n} from '@element-ps/tokens'\nimport { usePopperContentProps } from './content'\n\ndefineOptions({\n name: 'PsPopperContent',\n})\n\nconst props = defineProps(usePopperContentProps)\n\nconst { popperInstanceRef } = inject(\n POPPER_INJECTION_KEY,\n undefined\n)!\nconst { nextZIndex } = useZIndex()\nconst ns = useNamespace('popper')\nconst popperContentRef = ref<HTMLElement>()\nconst arrowRef = ref<HTMLElement>()\nconst arrowOffset = ref<number>()\nprovide(POPPER_CONTENT_INJECTION_KEY, {\n arrowRef,\n arrowOffset,\n})\nconst contentZIndex = ref(props.zIndex || nextZIndex())\n\nconst contentStyle = computed(\n () => [{ zIndex: unref(contentZIndex) }, props.popperStyle] as any\n)\n\nconst contentClass = computed(() => [\n ns.b(),\n ns.is('pure', props.pure),\n ns.is(props.effect),\n props.popperClass,\n])\n\ndefineExpose({\n /**\n * @description popper content element\n */\n popperContentRef,\n /**\n * @description popperjs instance\n */\n popperInstanceRef,\n /**\n * @description content style\n */\n contentStyle,\n})\n</script>\n"],"names":["inject","POPPER_INJECTION_KEY","useZIndex","useNamespace","ref","provide","POPPER_CONTENT_INJECTION_KEY","computed","unref"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA0BA,IAAA,MAAA,EAAA,iBAAA,EAAA,GAAAA,UACA,CAAAC,2BAAA,EACA,KACA,CAAA,CAAA,CAAA;AACA,IAAA,MAAA,EAAA,eAAAC,eAAA,EAAA,CAAA;AACA,IAAA,MAAA,EAAA,GAAAC,qBAAA,QAAA,CAAA,CAAA;AACA,IAAA,MAAA,mBAAAC,OAAA,EAAA,CAAA;AACA,IAAA,MAAA,WAAAA,OAAA,EAAA,CAAA;AACA,IAAA,MAAA,cAAAA,OAAA,EAAA,CAAA;AACA,IAAAC,WAAA,CAAAC,mCAAA,EAAA;AAAA,MACA,QAAA;AAAA,MACA,WAAA;AAAA,KACA,CAAA,CAAA;AACA,IAAA,MAAA,aAAA,GAAAF,OAAA,CAAA,KAAA,CAAA,MAAA,IAAA,YAAA,CAAA,CAAA;AAEA,IAAA,MAAA,YAAA,GAAAG,YAAA,CACA,MAAA,CAAA,EAAA,MAAA,EAAAC,SAAA,CAAA,aAAA,CAAA,EAAA,EAAA,KAAA,CAAA,WAAA,CACA,CAAA,CAAA;AAEA,IAAA,MAAA,YAAA,GAAAD,aAAA,MAAA;AAAA,MACA,GAAA,CAAA,EAAA;AAAA,MACA,EAAA,CAAA,EAAA,CAAA,MAAA,EAAA,KAAA,CAAA,IAAA,CAAA;AAAA,MACA,EAAA,CAAA,EAAA,CAAA,KAAA,CAAA,MAAA,CAAA;AAAA,MACA,KAAA,CAAA,WAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,CAAA;AAAA,MAIA,gBAAA;AAAA,MAIA,iBAAA;AAAA,MAIA,YAAA;AAAA,KACA,CAAA,CAAA;;;;;;;;;;;;;;;;;;"}