element-ps 2.0.36 → 2.0.37

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 (326) hide show
  1. package/dist/index.full.js +3 -1
  2. package/dist/index.full.min.js +1 -1
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +1 -1
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +3 -1
  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 +29 -61
  19. package/es/components/avatar/src/avatar.mjs.map +1 -1
  20. package/es/components/avatar/src/avatar2.mjs +61 -29
  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/calendar/index.mjs +2 -2
  34. package/es/components/calendar/src/calendar.mjs +188 -9
  35. package/es/components/calendar/src/calendar.mjs.map +1 -1
  36. package/es/components/calendar/src/calendar2.mjs +9 -188
  37. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  38. package/es/components/card/index.mjs +2 -2
  39. package/es/components/card/src/card.mjs +35 -15
  40. package/es/components/card/src/card.mjs.map +1 -1
  41. package/es/components/card/src/card2.mjs +15 -35
  42. package/es/components/card/src/card2.mjs.map +1 -1
  43. package/es/components/carousel/index.mjs +2 -2
  44. package/es/components/carousel/src/carousel.mjs +43 -201
  45. package/es/components/carousel/src/carousel.mjs.map +1 -1
  46. package/es/components/carousel/src/carousel2.mjs +201 -43
  47. package/es/components/carousel/src/carousel2.mjs.map +1 -1
  48. package/es/components/collection/index.mjs +1 -1
  49. package/es/components/collection/src/collection.mjs +30 -10
  50. package/es/components/collection/src/collection.mjs.map +1 -1
  51. package/es/components/collection/src/collection2.mjs +10 -30
  52. package/es/components/collection/src/collection2.mjs.map +1 -1
  53. package/es/components/dialog/src/dialog-content.mjs +34 -79
  54. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  55. package/es/components/dialog/src/dialog-content2.mjs +79 -34
  56. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  57. package/es/components/dialog/src/dialog.mjs +1 -1
  58. package/es/components/dialog/src/dialog2.mjs +1 -1
  59. package/es/components/divider/index.mjs +2 -2
  60. package/es/components/divider/src/divider.mjs +34 -17
  61. package/es/components/divider/src/divider.mjs.map +1 -1
  62. package/es/components/divider/src/divider2.mjs +17 -34
  63. package/es/components/divider/src/divider2.mjs.map +1 -1
  64. package/es/components/drawer/index.mjs +2 -2
  65. package/es/components/drawer/src/drawer.mjs +117 -23
  66. package/es/components/drawer/src/drawer.mjs.map +1 -1
  67. package/es/components/drawer/src/drawer2.mjs +23 -117
  68. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  69. package/es/components/dropdown/index.mjs +2 -2
  70. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  71. package/es/components/dropdown/src/dropdown-item.mjs +1 -1
  72. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  73. package/es/components/dropdown/src/dropdown.mjs +100 -109
  74. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  75. package/es/components/dropdown/src/dropdown2.mjs +109 -100
  76. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  77. package/es/components/empty/index.mjs +2 -2
  78. package/es/components/empty/src/empty.mjs +11 -56
  79. package/es/components/empty/src/empty.mjs.map +1 -1
  80. package/es/components/empty/src/empty2.mjs +56 -11
  81. package/es/components/empty/src/empty2.mjs.map +1 -1
  82. package/es/components/form/index.mjs +4 -4
  83. package/es/components/form/src/form-item.mjs +171 -46
  84. package/es/components/form/src/form-item.mjs.map +1 -1
  85. package/es/components/form/src/form-item2.mjs +46 -171
  86. package/es/components/form/src/form-item2.mjs.map +1 -1
  87. package/es/components/form/src/form.mjs +45 -40
  88. package/es/components/form/src/form.mjs.map +1 -1
  89. package/es/components/form/src/form2.mjs +40 -45
  90. package/es/components/form/src/form2.mjs.map +1 -1
  91. package/es/components/icon/index.mjs +2 -2
  92. package/es/components/icon/src/icon.mjs +35 -8
  93. package/es/components/icon/src/icon.mjs.map +1 -1
  94. package/es/components/icon/src/icon2.mjs +8 -35
  95. package/es/components/icon/src/icon2.mjs.map +1 -1
  96. package/es/components/image/index.mjs +2 -2
  97. package/es/components/image/src/image.mjs +50 -127
  98. package/es/components/image/src/image.mjs.map +1 -1
  99. package/es/components/image/src/image2.mjs +127 -50
  100. package/es/components/image/src/image2.mjs.map +1 -1
  101. package/es/components/image-viewer/index.mjs +2 -2
  102. package/es/components/image-viewer/src/image-viewer.mjs +31 -210
  103. package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
  104. package/es/components/image-viewer/src/image-viewer2.mjs +210 -31
  105. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  106. package/es/components/index.mjs +27 -27
  107. package/es/components/menu/index.mjs +2 -2
  108. package/es/components/menu/src/menu-item-group.mjs +35 -4
  109. package/es/components/menu/src/menu-item-group.mjs.map +1 -1
  110. package/es/components/menu/src/menu-item-group2.mjs +4 -35
  111. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  112. package/es/components/page-header/index.mjs +2 -2
  113. package/es/components/page-header/src/page-header.mjs +14 -55
  114. package/es/components/page-header/src/page-header.mjs.map +1 -1
  115. package/es/components/page-header/src/page-header2.mjs +55 -14
  116. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  117. package/es/components/popconfirm/src/popconfirm.mjs +1 -1
  118. package/es/components/popconfirm/src/popconfirm2.mjs +4 -2
  119. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  120. package/es/components/popover/src/popover.mjs +1 -1
  121. package/es/components/popper/index.mjs +4 -4
  122. package/es/components/popper/src/arrow.mjs +31 -7
  123. package/es/components/popper/src/arrow.mjs.map +1 -1
  124. package/es/components/popper/src/arrow2.mjs +7 -31
  125. package/es/components/popper/src/arrow2.mjs.map +1 -1
  126. package/es/components/popper/src/content.mjs +64 -52
  127. package/es/components/popper/src/content.mjs.map +1 -1
  128. package/es/components/popper/src/content2.mjs +52 -64
  129. package/es/components/popper/src/content2.mjs.map +1 -1
  130. package/es/components/rate/index.mjs +2 -2
  131. package/es/components/rate/src/rate.mjs +84 -169
  132. package/es/components/rate/src/rate.mjs.map +1 -1
  133. package/es/components/rate/src/rate2.mjs +169 -84
  134. package/es/components/rate/src/rate2.mjs.map +1 -1
  135. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  136. package/es/components/tabs/index.mjs +1 -1
  137. package/es/components/tabs/src/tab-bar.mjs +76 -7
  138. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  139. package/es/components/tabs/src/tab-bar2.mjs +7 -76
  140. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  141. package/es/components/tabs/src/tab-nav.mjs +1 -1
  142. package/es/components/tooltip/src/tooltip.mjs +1 -1
  143. package/es/components/tooltip/src/tooltip2.mjs +1 -1
  144. package/es/components/tooltip-v2/index.mjs +2 -2
  145. package/es/components/tooltip-v2/src/arrow.mjs +22 -38
  146. package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
  147. package/es/components/tooltip-v2/src/arrow2.mjs +38 -22
  148. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  149. package/es/components/tooltip-v2/src/tooltip.mjs +2 -2
  150. package/es/components/tooltip-v2/src/tooltip2.mjs +4 -4
  151. package/es/components/tooltip-v2/src/trigger.mjs +11 -89
  152. package/es/components/tooltip-v2/src/trigger.mjs.map +1 -1
  153. package/es/components/tooltip-v2/src/trigger2.mjs +89 -11
  154. package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
  155. package/es/components/upload/index.mjs +2 -2
  156. package/es/components/upload/src/upload-content.mjs +46 -15
  157. package/es/components/upload/src/upload-content.mjs.map +1 -1
  158. package/es/components/upload/src/upload-content2.mjs +15 -46
  159. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  160. package/es/components/upload/src/upload-dragger.mjs +32 -11
  161. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  162. package/es/components/upload/src/upload-dragger2.mjs +11 -32
  163. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  164. package/es/components/upload/src/upload2.mjs +1 -1
  165. package/es/index.mjs +27 -27
  166. package/lib/components/alert/index.js +2 -2
  167. package/lib/components/alert/src/alert.js +82 -33
  168. package/lib/components/alert/src/alert.js.map +1 -1
  169. package/lib/components/alert/src/alert2.js +33 -82
  170. package/lib/components/alert/src/alert2.js.map +1 -1
  171. package/lib/components/autocomplete/index.js +2 -2
  172. package/lib/components/autocomplete/src/autocomplete.js +58 -94
  173. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  174. package/lib/components/autocomplete/src/autocomplete2.js +94 -58
  175. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  176. package/lib/components/avatar/index.js +2 -2
  177. package/lib/components/avatar/src/avatar.js +29 -61
  178. package/lib/components/avatar/src/avatar.js.map +1 -1
  179. package/lib/components/avatar/src/avatar2.js +61 -29
  180. package/lib/components/avatar/src/avatar2.js.map +1 -1
  181. package/lib/components/badge/index.js +2 -2
  182. package/lib/components/badge/src/badge.js +17 -54
  183. package/lib/components/badge/src/badge.js.map +1 -1
  184. package/lib/components/badge/src/badge2.js +54 -17
  185. package/lib/components/badge/src/badge2.js.map +1 -1
  186. package/lib/components/button/index.js +2 -2
  187. package/lib/components/button/src/button-group.js +1 -1
  188. package/lib/components/button/src/button.js +96 -50
  189. package/lib/components/button/src/button.js.map +1 -1
  190. package/lib/components/button/src/button2.js +50 -96
  191. package/lib/components/button/src/button2.js.map +1 -1
  192. package/lib/components/calendar/index.js +2 -2
  193. package/lib/components/calendar/src/calendar.js +192 -9
  194. package/lib/components/calendar/src/calendar.js.map +1 -1
  195. package/lib/components/calendar/src/calendar2.js +9 -192
  196. package/lib/components/calendar/src/calendar2.js.map +1 -1
  197. package/lib/components/card/index.js +2 -2
  198. package/lib/components/card/src/card.js +35 -15
  199. package/lib/components/card/src/card.js.map +1 -1
  200. package/lib/components/card/src/card2.js +15 -35
  201. package/lib/components/card/src/card2.js.map +1 -1
  202. package/lib/components/carousel/index.js +2 -2
  203. package/lib/components/carousel/src/carousel.js +43 -201
  204. package/lib/components/carousel/src/carousel.js.map +1 -1
  205. package/lib/components/carousel/src/carousel2.js +201 -43
  206. package/lib/components/carousel/src/carousel2.js.map +1 -1
  207. package/lib/components/collection/index.js +1 -1
  208. package/lib/components/collection/src/collection.js +30 -9
  209. package/lib/components/collection/src/collection.js.map +1 -1
  210. package/lib/components/collection/src/collection2.js +9 -30
  211. package/lib/components/collection/src/collection2.js.map +1 -1
  212. package/lib/components/dialog/src/dialog-content.js +33 -78
  213. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  214. package/lib/components/dialog/src/dialog-content2.js +78 -33
  215. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  216. package/lib/components/dialog/src/dialog.js +1 -1
  217. package/lib/components/dialog/src/dialog2.js +1 -1
  218. package/lib/components/divider/index.js +2 -2
  219. package/lib/components/divider/src/divider.js +34 -17
  220. package/lib/components/divider/src/divider.js.map +1 -1
  221. package/lib/components/divider/src/divider2.js +17 -34
  222. package/lib/components/divider/src/divider2.js.map +1 -1
  223. package/lib/components/drawer/index.js +2 -2
  224. package/lib/components/drawer/src/drawer.js +117 -23
  225. package/lib/components/drawer/src/drawer.js.map +1 -1
  226. package/lib/components/drawer/src/drawer2.js +23 -117
  227. package/lib/components/drawer/src/drawer2.js.map +1 -1
  228. package/lib/components/dropdown/index.js +2 -2
  229. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  230. package/lib/components/dropdown/src/dropdown-item.js +1 -1
  231. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  232. package/lib/components/dropdown/src/dropdown.js +109 -109
  233. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  234. package/lib/components/dropdown/src/dropdown2.js +109 -109
  235. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  236. package/lib/components/empty/index.js +2 -2
  237. package/lib/components/empty/src/empty.js +11 -56
  238. package/lib/components/empty/src/empty.js.map +1 -1
  239. package/lib/components/empty/src/empty2.js +56 -11
  240. package/lib/components/empty/src/empty2.js.map +1 -1
  241. package/lib/components/form/index.js +4 -4
  242. package/lib/components/form/src/form-item.js +171 -47
  243. package/lib/components/form/src/form-item.js.map +1 -1
  244. package/lib/components/form/src/form-item2.js +47 -171
  245. package/lib/components/form/src/form-item2.js.map +1 -1
  246. package/lib/components/form/src/form.js +45 -40
  247. package/lib/components/form/src/form.js.map +1 -1
  248. package/lib/components/form/src/form2.js +40 -45
  249. package/lib/components/form/src/form2.js.map +1 -1
  250. package/lib/components/icon/index.js +2 -2
  251. package/lib/components/icon/src/icon.js +35 -8
  252. package/lib/components/icon/src/icon.js.map +1 -1
  253. package/lib/components/icon/src/icon2.js +8 -35
  254. package/lib/components/icon/src/icon2.js.map +1 -1
  255. package/lib/components/image/index.js +2 -2
  256. package/lib/components/image/src/image.js +50 -127
  257. package/lib/components/image/src/image.js.map +1 -1
  258. package/lib/components/image/src/image2.js +127 -50
  259. package/lib/components/image/src/image2.js.map +1 -1
  260. package/lib/components/image-viewer/index.js +2 -2
  261. package/lib/components/image-viewer/src/image-viewer.js +31 -210
  262. package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
  263. package/lib/components/image-viewer/src/image-viewer2.js +210 -31
  264. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  265. package/lib/components/index.js +27 -27
  266. package/lib/components/menu/index.js +2 -2
  267. package/lib/components/menu/src/menu-item-group.js +35 -4
  268. package/lib/components/menu/src/menu-item-group.js.map +1 -1
  269. package/lib/components/menu/src/menu-item-group2.js +4 -35
  270. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  271. package/lib/components/page-header/index.js +2 -2
  272. package/lib/components/page-header/src/page-header.js +14 -55
  273. package/lib/components/page-header/src/page-header.js.map +1 -1
  274. package/lib/components/page-header/src/page-header2.js +55 -14
  275. package/lib/components/page-header/src/page-header2.js.map +1 -1
  276. package/lib/components/popconfirm/src/popconfirm.js +1 -1
  277. package/lib/components/popconfirm/src/popconfirm2.js +3 -1
  278. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  279. package/lib/components/popover/src/popover.js +1 -1
  280. package/lib/components/popper/index.js +4 -4
  281. package/lib/components/popper/src/arrow.js +31 -7
  282. package/lib/components/popper/src/arrow.js.map +1 -1
  283. package/lib/components/popper/src/arrow2.js +7 -31
  284. package/lib/components/popper/src/arrow2.js.map +1 -1
  285. package/lib/components/popper/src/content.js +65 -52
  286. package/lib/components/popper/src/content.js.map +1 -1
  287. package/lib/components/popper/src/content2.js +52 -65
  288. package/lib/components/popper/src/content2.js.map +1 -1
  289. package/lib/components/rate/index.js +2 -2
  290. package/lib/components/rate/src/rate.js +84 -169
  291. package/lib/components/rate/src/rate.js.map +1 -1
  292. package/lib/components/rate/src/rate2.js +169 -84
  293. package/lib/components/rate/src/rate2.js.map +1 -1
  294. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  295. package/lib/components/tabs/index.js +1 -1
  296. package/lib/components/tabs/src/tab-bar.js +76 -7
  297. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  298. package/lib/components/tabs/src/tab-bar2.js +7 -76
  299. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  300. package/lib/components/tabs/src/tab-nav.js +1 -1
  301. package/lib/components/tooltip/src/tooltip.js +1 -1
  302. package/lib/components/tooltip/src/tooltip2.js +1 -1
  303. package/lib/components/tooltip-v2/index.js +2 -2
  304. package/lib/components/tooltip-v2/src/arrow.js +23 -38
  305. package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
  306. package/lib/components/tooltip-v2/src/arrow2.js +38 -23
  307. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  308. package/lib/components/tooltip-v2/src/tooltip.js +2 -2
  309. package/lib/components/tooltip-v2/src/tooltip2.js +4 -4
  310. package/lib/components/tooltip-v2/src/trigger.js +11 -89
  311. package/lib/components/tooltip-v2/src/trigger.js.map +1 -1
  312. package/lib/components/tooltip-v2/src/trigger2.js +89 -11
  313. package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
  314. package/lib/components/upload/index.js +2 -2
  315. package/lib/components/upload/src/upload-content.js +46 -15
  316. package/lib/components/upload/src/upload-content.js.map +1 -1
  317. package/lib/components/upload/src/upload-content2.js +15 -46
  318. package/lib/components/upload/src/upload-content2.js.map +1 -1
  319. package/lib/components/upload/src/upload-dragger.js +32 -12
  320. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  321. package/lib/components/upload/src/upload-dragger2.js +12 -32
  322. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  323. package/lib/components/upload/src/upload2.js +1 -1
  324. package/lib/index.js +27 -27
  325. package/package.json +1 -1
  326. package/web-types.json +1 -1
@@ -1,31 +1,125 @@
1
- import '../../../utils/index.mjs';
1
+ import { defineComponent, ref, computed, resolveComponent, resolveDirective, openBlock, createBlock, Teleport, withDirectives, createVNode, withCtx, createElementBlock, normalizeClass, normalizeStyle, renderSlot, createElementVNode, toDisplayString, createCommentVNode, vShow } from 'vue';
2
+ import { Close } from '@element-plus/icons-vue';
3
+ import { PsOverlay } from '../../overlay/index.mjs';
2
4
  import '../../dialog/index.mjs';
3
- import { buildProps } from '../../../utils/vue/props.mjs';
4
- import { dialogProps } from '../../dialog/src/dialog.mjs';
5
+ import { PsIcon } from '../../icon/index.mjs';
6
+ import '../../../directives/index.mjs';
7
+ import '../../../hooks/index.mjs';
8
+ import { drawerProps } from './drawer2.mjs';
9
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
10
+ import TrapFocus from '../../../directives/trap-focus/index.mjs';
11
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
12
+ import { useDialog } from '../../dialog/src/use-dialog.mjs';
5
13
 
6
- const drawerProps = buildProps({
7
- ...dialogProps,
8
- direction: {
9
- type: String,
10
- default: "rtl",
11
- values: ["ltr", "rtl", "ttb", "btt"]
14
+ const _sfc_main = defineComponent({
15
+ name: "PsDrawer",
16
+ components: {
17
+ PsOverlay,
18
+ PsIcon,
19
+ Close
12
20
  },
13
- size: {
14
- type: [String, Number],
15
- default: "30%"
21
+ directives: {
22
+ TrapFocus
16
23
  },
17
- withHeader: {
18
- type: Boolean,
19
- default: true
20
- },
21
- modalFade: {
22
- type: Boolean,
23
- default: true
24
- },
25
- widget: {
26
- type: String
24
+ props: drawerProps,
25
+ setup(props, ctx) {
26
+ const drawerRef = ref();
27
+ const ns = useNamespace("drawer");
28
+ const isHorizontal = computed(() => props.direction === "rtl" || props.direction === "ltr");
29
+ const drawerSize = computed(() => typeof props.size === "number" ? `${props.size}px` : props.size);
30
+ return {
31
+ ...useDialog(props, ctx, drawerRef),
32
+ drawerRef,
33
+ isHorizontal,
34
+ drawerSize,
35
+ ns
36
+ };
27
37
  }
28
38
  });
39
+ const _hoisted_1 = ["aria-labelledby", "aria-label", "widget"];
40
+ const _hoisted_2 = ["id", "widget"];
41
+ const _hoisted_3 = ["title"];
42
+ const _hoisted_4 = ["aria-label"];
43
+ const _hoisted_5 = ["widget"];
44
+ const _hoisted_6 = ["widget"];
45
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
46
+ const _component_close = resolveComponent("close");
47
+ const _component_ps_icon = resolveComponent("ps-icon");
48
+ const _component_ps_overlay = resolveComponent("ps-overlay");
49
+ const _directive_trap_focus = resolveDirective("trap-focus");
50
+ return openBlock(), createBlock(Teleport, {
51
+ to: "body",
52
+ disabled: !_ctx.appendToBody
53
+ }, [
54
+ withDirectives(createVNode(_component_ps_overlay, {
55
+ mask: _ctx.modal,
56
+ "overlay-class": (_ctx.modalClass || "") + (_ctx.widget ? ` ps--drawer-widget-class` : ""),
57
+ "z-index": _ctx.zIndex
58
+ }, {
59
+ default: withCtx(() => [
60
+ withDirectives((openBlock(), createElementBlock("div", {
61
+ ref: "drawerRef",
62
+ "aria-modal": "true",
63
+ "aria-labelledby": _ctx.ns.e("title"),
64
+ "aria-label": _ctx.title,
65
+ class: normalizeClass([_ctx.ns.b(), _ctx.direction, _ctx.visible && "open", _ctx.customClass]),
66
+ style: normalizeStyle(_ctx.isHorizontal ? "width: " + _ctx.drawerSize : "height: " + _ctx.drawerSize),
67
+ role: "dialog",
68
+ widget: _ctx.widget
69
+ }, [
70
+ _ctx.withHeader ? (openBlock(), createElementBlock("header", {
71
+ key: 0,
72
+ id: _ctx.ns.e("title"),
73
+ class: normalizeClass(_ctx.ns.e("header")),
74
+ widget: _ctx.widget ? "drawer:title:" + _ctx.widget.split(":")[1] : void 0
75
+ }, [
76
+ renderSlot(_ctx.$slots, "title", {}, () => [
77
+ createElementVNode("span", {
78
+ role: "heading",
79
+ title: _ctx.title
80
+ }, toDisplayString(_ctx.title), 9, _hoisted_3)
81
+ ]),
82
+ _ctx.showClose ? (openBlock(), createElementBlock("button", {
83
+ key: 0,
84
+ "aria-label": "close " + (_ctx.title || "drawer"),
85
+ class: normalizeClass(_ctx.ns.e("close-btn")),
86
+ type: "button"
87
+ }, [
88
+ createVNode(_component_ps_icon, {
89
+ class: normalizeClass(_ctx.ns.e("close"))
90
+ }, {
91
+ default: withCtx(() => [
92
+ createVNode(_component_close)
93
+ ]),
94
+ _: 1
95
+ }, 8, ["class"])
96
+ ], 10, _hoisted_4)) : createCommentVNode("v-if", true)
97
+ ], 10, _hoisted_2)) : createCommentVNode("v-if", true),
98
+ _ctx.rendered ? (openBlock(), createElementBlock("section", {
99
+ key: 1,
100
+ class: normalizeClass(_ctx.ns.e("body")),
101
+ widget: _ctx.widget ? "drawer:default:" + _ctx.widget.split(":")[1] : void 0
102
+ }, [
103
+ renderSlot(_ctx.$slots, "default")
104
+ ], 10, _hoisted_5)) : createCommentVNode("v-if", true),
105
+ _ctx.$slots.footer ? (openBlock(), createElementBlock("div", {
106
+ key: 2,
107
+ class: normalizeClass(_ctx.ns.e("footer")),
108
+ widget: _ctx.widget ? "drawer:footer:" + _ctx.widget.split(":")[1] : void 0
109
+ }, [
110
+ renderSlot(_ctx.$slots, "footer")
111
+ ], 10, _hoisted_6)) : createCommentVNode("v-if", true)
112
+ ], 14, _hoisted_1)), [
113
+ [_directive_trap_focus]
114
+ ])
115
+ ]),
116
+ _: 3
117
+ }, 8, ["mask", "overlay-class", "z-index"]), [
118
+ [vShow, _ctx.visible]
119
+ ])
120
+ ], 8, ["disabled"]);
121
+ }
122
+ var Drawer = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/meng/workspace/element-ps/packages/components/drawer/src/drawer.vue"]]);
29
123
 
30
- export { drawerProps };
124
+ export { Drawer as default };
31
125
  //# sourceMappingURL=drawer.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.mjs","sources":["../../../../../../packages/components/drawer/src/drawer.ts"],"sourcesContent":["import { buildProps } from '@element-ps/utils'\nimport { dialogProps } from '@element-ps/components/dialog'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const drawerProps = buildProps({\n ...dialogProps,\n direction: {\n type: String,\n default: 'rtl',\n values: ['ltr', 'rtl', 'ttb', 'btt'],\n },\n size: {\n type: [String, Number],\n default: '30%',\n },\n withHeader: {\n type: Boolean,\n default: true,\n },\n modalFade: {\n type: Boolean,\n default: true,\n },\n widget: {\n type: String,\n },\n} as const)\n\nexport type DrawerProps = ExtractPropTypes<typeof drawerProps>\n"],"names":[],"mappings":";;;;;AAEY,MAAC,WAAW,GAAG,UAAU,CAAC;AACtC,EAAE,GAAG,WAAW;AAChB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK;AAClB,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AACxC,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"drawer.mjs","sources":["../../../../../../packages/components/drawer/src/drawer.vue"],"sourcesContent":["<template>\n <teleport to=\"body\" :disabled=\"!appendToBody\">\n <ps-overlay\n v-show=\"visible\"\n :mask=\"modal\"\n :overlay-class=\"(modalClass || '') + (widget ? ` ps--drawer-widget-class` : '')\"\n :z-index=\"zIndex\"\n >\n <div\n ref=\"drawerRef\"\n v-trap-focus\n aria-modal=\"true\"\n :aria-labelledby=\"ns.e('title')\"\n :aria-label=\"title\"\n :class=\"[ns.b(), direction, visible && 'open', customClass]\"\n :style=\"\n isHorizontal ? 'width: ' + drawerSize : 'height: ' + drawerSize\n \"\n role=\"dialog\"\n :widget=\"widget\"\n >\n <header v-if=\"withHeader\"\n :id=\"ns.e('title')\" :class=\"ns.e('header')\"\n :widget=\"widget ? 'drawer:title:' + widget.split(':')[1] : undefined\"\n >\n <slot name=\"title\">\n <span role=\"heading\" :title=\"title\">\n {{ title }}\n </span>\n </slot>\n <button\n v-if=\"showClose\"\n :aria-label=\"'close ' + (title || 'drawer')\"\n :class=\"ns.e('close-btn')\"\n type=\"button\"\n >\n <ps-icon :class=\"ns.e('close')\"><close /></ps-icon>\n </button>\n </header>\n <template v-if=\"rendered\">\n <section :class=\"ns.e('body')\"\n :widget=\"widget ? 'drawer:default:' + widget.split(':')[1] : undefined\"\n >\n <slot />\n </section>\n </template>\n <div v-if=\"$slots.footer\"\n :class=\"ns.e('footer')\"\n :widget=\"widget ? 'drawer:footer:' + widget.split(':')[1] : undefined\"\n >\n <slot name=\"footer\" />\n </div>\n </div>\n </ps-overlay>\n </teleport>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport { Close } from '@element-plus/icons-vue'\n\nimport { PsOverlay } from '@element-ps/components/overlay'\nimport { useDialog } from '@element-ps/components/dialog'\nimport PsIcon from '@element-ps/components/icon'\nimport { TrapFocus } from '@element-ps/directives'\nimport { useNamespace } from '@element-ps/hooks'\nimport { drawerProps } from './drawer'\n\nexport default defineComponent({\n name: 'PsDrawer',\n components: {\n PsOverlay,\n PsIcon,\n Close,\n },\n directives: {\n TrapFocus,\n },\n props: drawerProps,\n\n setup(props, ctx) {\n const drawerRef = ref<HTMLElement>()\n const ns = useNamespace('drawer')\n\n const isHorizontal = computed(\n () => props.direction === 'rtl' || props.direction === 'ltr'\n )\n const drawerSize = computed(() =>\n typeof props.size === 'number' ? `${props.size}px` : props.size\n )\n\n return {\n ...useDialog(props, ctx, drawerRef),\n drawerRef,\n isHorizontal,\n drawerSize,\n ns,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_Teleport","_createVNode","_withDirectives","_openBlock","_createElementBlock","_normalizeClass","_normalizeStyle","_renderSlot","_createElementVNode","_toDisplayString","_createCommentVNode"],"mappings":"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"}
@@ -1,125 +1,31 @@
1
- import { defineComponent, ref, computed, resolveComponent, resolveDirective, openBlock, createBlock, Teleport, withDirectives, createVNode, withCtx, createElementBlock, normalizeClass, normalizeStyle, renderSlot, createElementVNode, toDisplayString, createCommentVNode, vShow } from 'vue';
2
- import { Close } from '@element-plus/icons-vue';
3
- import { PsOverlay } from '../../overlay/index.mjs';
1
+ import '../../../utils/index.mjs';
4
2
  import '../../dialog/index.mjs';
5
- import { PsIcon } from '../../icon/index.mjs';
6
- import '../../../directives/index.mjs';
7
- import '../../../hooks/index.mjs';
8
- import { drawerProps } from './drawer.mjs';
9
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
10
- import TrapFocus from '../../../directives/trap-focus/index.mjs';
11
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
12
- import { useDialog } from '../../dialog/src/use-dialog.mjs';
3
+ import { buildProps } from '../../../utils/vue/props.mjs';
4
+ import { dialogProps } from '../../dialog/src/dialog.mjs';
13
5
 
14
- const _sfc_main = defineComponent({
15
- name: "PsDrawer",
16
- components: {
17
- PsOverlay,
18
- PsIcon,
19
- Close
6
+ const drawerProps = buildProps({
7
+ ...dialogProps,
8
+ direction: {
9
+ type: String,
10
+ default: "rtl",
11
+ values: ["ltr", "rtl", "ttb", "btt"]
20
12
  },
21
- directives: {
22
- TrapFocus
13
+ size: {
14
+ type: [String, Number],
15
+ default: "30%"
23
16
  },
24
- props: drawerProps,
25
- setup(props, ctx) {
26
- const drawerRef = ref();
27
- const ns = useNamespace("drawer");
28
- const isHorizontal = computed(() => props.direction === "rtl" || props.direction === "ltr");
29
- const drawerSize = computed(() => typeof props.size === "number" ? `${props.size}px` : props.size);
30
- return {
31
- ...useDialog(props, ctx, drawerRef),
32
- drawerRef,
33
- isHorizontal,
34
- drawerSize,
35
- ns
36
- };
17
+ withHeader: {
18
+ type: Boolean,
19
+ default: true
20
+ },
21
+ modalFade: {
22
+ type: Boolean,
23
+ default: true
24
+ },
25
+ widget: {
26
+ type: String
37
27
  }
38
28
  });
39
- const _hoisted_1 = ["aria-labelledby", "aria-label", "widget"];
40
- const _hoisted_2 = ["id", "widget"];
41
- const _hoisted_3 = ["title"];
42
- const _hoisted_4 = ["aria-label"];
43
- const _hoisted_5 = ["widget"];
44
- const _hoisted_6 = ["widget"];
45
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
46
- const _component_close = resolveComponent("close");
47
- const _component_ps_icon = resolveComponent("ps-icon");
48
- const _component_ps_overlay = resolveComponent("ps-overlay");
49
- const _directive_trap_focus = resolveDirective("trap-focus");
50
- return openBlock(), createBlock(Teleport, {
51
- to: "body",
52
- disabled: !_ctx.appendToBody
53
- }, [
54
- withDirectives(createVNode(_component_ps_overlay, {
55
- mask: _ctx.modal,
56
- "overlay-class": (_ctx.modalClass || "") + (_ctx.widget ? ` ps--drawer-widget-class` : ""),
57
- "z-index": _ctx.zIndex
58
- }, {
59
- default: withCtx(() => [
60
- withDirectives((openBlock(), createElementBlock("div", {
61
- ref: "drawerRef",
62
- "aria-modal": "true",
63
- "aria-labelledby": _ctx.ns.e("title"),
64
- "aria-label": _ctx.title,
65
- class: normalizeClass([_ctx.ns.b(), _ctx.direction, _ctx.visible && "open", _ctx.customClass]),
66
- style: normalizeStyle(_ctx.isHorizontal ? "width: " + _ctx.drawerSize : "height: " + _ctx.drawerSize),
67
- role: "dialog",
68
- widget: _ctx.widget
69
- }, [
70
- _ctx.withHeader ? (openBlock(), createElementBlock("header", {
71
- key: 0,
72
- id: _ctx.ns.e("title"),
73
- class: normalizeClass(_ctx.ns.e("header")),
74
- widget: _ctx.widget ? "drawer:title:" + _ctx.widget.split(":")[1] : void 0
75
- }, [
76
- renderSlot(_ctx.$slots, "title", {}, () => [
77
- createElementVNode("span", {
78
- role: "heading",
79
- title: _ctx.title
80
- }, toDisplayString(_ctx.title), 9, _hoisted_3)
81
- ]),
82
- _ctx.showClose ? (openBlock(), createElementBlock("button", {
83
- key: 0,
84
- "aria-label": "close " + (_ctx.title || "drawer"),
85
- class: normalizeClass(_ctx.ns.e("close-btn")),
86
- type: "button"
87
- }, [
88
- createVNode(_component_ps_icon, {
89
- class: normalizeClass(_ctx.ns.e("close"))
90
- }, {
91
- default: withCtx(() => [
92
- createVNode(_component_close)
93
- ]),
94
- _: 1
95
- }, 8, ["class"])
96
- ], 10, _hoisted_4)) : createCommentVNode("v-if", true)
97
- ], 10, _hoisted_2)) : createCommentVNode("v-if", true),
98
- _ctx.rendered ? (openBlock(), createElementBlock("section", {
99
- key: 1,
100
- class: normalizeClass(_ctx.ns.e("body")),
101
- widget: _ctx.widget ? "drawer:default:" + _ctx.widget.split(":")[1] : void 0
102
- }, [
103
- renderSlot(_ctx.$slots, "default")
104
- ], 10, _hoisted_5)) : createCommentVNode("v-if", true),
105
- _ctx.$slots.footer ? (openBlock(), createElementBlock("div", {
106
- key: 2,
107
- class: normalizeClass(_ctx.ns.e("footer")),
108
- widget: _ctx.widget ? "drawer:footer:" + _ctx.widget.split(":")[1] : void 0
109
- }, [
110
- renderSlot(_ctx.$slots, "footer")
111
- ], 10, _hoisted_6)) : createCommentVNode("v-if", true)
112
- ], 14, _hoisted_1)), [
113
- [_directive_trap_focus]
114
- ])
115
- ]),
116
- _: 3
117
- }, 8, ["mask", "overlay-class", "z-index"]), [
118
- [vShow, _ctx.visible]
119
- ])
120
- ], 8, ["disabled"]);
121
- }
122
- var Drawer = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/meng/workspace/element-ps/packages/components/drawer/src/drawer.vue"]]);
123
29
 
124
- export { Drawer as default };
30
+ export { drawerProps };
125
31
  //# sourceMappingURL=drawer2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"drawer2.mjs","sources":["../../../../../../packages/components/drawer/src/drawer.vue"],"sourcesContent":["<template>\n <teleport to=\"body\" :disabled=\"!appendToBody\">\n <ps-overlay\n v-show=\"visible\"\n :mask=\"modal\"\n :overlay-class=\"(modalClass || '') + (widget ? ` ps--drawer-widget-class` : '')\"\n :z-index=\"zIndex\"\n >\n <div\n ref=\"drawerRef\"\n v-trap-focus\n aria-modal=\"true\"\n :aria-labelledby=\"ns.e('title')\"\n :aria-label=\"title\"\n :class=\"[ns.b(), direction, visible && 'open', customClass]\"\n :style=\"\n isHorizontal ? 'width: ' + drawerSize : 'height: ' + drawerSize\n \"\n role=\"dialog\"\n :widget=\"widget\"\n >\n <header v-if=\"withHeader\"\n :id=\"ns.e('title')\" :class=\"ns.e('header')\"\n :widget=\"widget ? 'drawer:title:' + widget.split(':')[1] : undefined\"\n >\n <slot name=\"title\">\n <span role=\"heading\" :title=\"title\">\n {{ title }}\n </span>\n </slot>\n <button\n v-if=\"showClose\"\n :aria-label=\"'close ' + (title || 'drawer')\"\n :class=\"ns.e('close-btn')\"\n type=\"button\"\n >\n <ps-icon :class=\"ns.e('close')\"><close /></ps-icon>\n </button>\n </header>\n <template v-if=\"rendered\">\n <section :class=\"ns.e('body')\"\n :widget=\"widget ? 'drawer:default:' + widget.split(':')[1] : undefined\"\n >\n <slot />\n </section>\n </template>\n <div v-if=\"$slots.footer\"\n :class=\"ns.e('footer')\"\n :widget=\"widget ? 'drawer:footer:' + widget.split(':')[1] : undefined\"\n >\n <slot name=\"footer\" />\n </div>\n </div>\n </ps-overlay>\n </teleport>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport { Close } from '@element-plus/icons-vue'\n\nimport { PsOverlay } from '@element-ps/components/overlay'\nimport { useDialog } from '@element-ps/components/dialog'\nimport PsIcon from '@element-ps/components/icon'\nimport { TrapFocus } from '@element-ps/directives'\nimport { useNamespace } from '@element-ps/hooks'\nimport { drawerProps } from './drawer'\n\nexport default defineComponent({\n name: 'PsDrawer',\n components: {\n PsOverlay,\n PsIcon,\n Close,\n },\n directives: {\n TrapFocus,\n },\n props: drawerProps,\n\n setup(props, ctx) {\n const drawerRef = ref<HTMLElement>()\n const ns = useNamespace('drawer')\n\n const isHorizontal = computed(\n () => props.direction === 'rtl' || props.direction === 'ltr'\n )\n const drawerSize = computed(() =>\n typeof props.size === 'number' ? `${props.size}px` : props.size\n )\n\n return {\n ...useDialog(props, ctx, drawerRef),\n drawerRef,\n isHorizontal,\n drawerSize,\n ns,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_Teleport","_createVNode","_withDirectives","_openBlock","_createElementBlock","_normalizeClass","_normalizeStyle","_renderSlot","_createElementVNode","_toDisplayString","_createCommentVNode"],"mappings":"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"}
1
+ {"version":3,"file":"drawer2.mjs","sources":["../../../../../../packages/components/drawer/src/drawer.ts"],"sourcesContent":["import { buildProps } from '@element-ps/utils'\nimport { dialogProps } from '@element-ps/components/dialog'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const drawerProps = buildProps({\n ...dialogProps,\n direction: {\n type: String,\n default: 'rtl',\n values: ['ltr', 'rtl', 'ttb', 'btt'],\n },\n size: {\n type: [String, Number],\n default: '30%',\n },\n withHeader: {\n type: Boolean,\n default: true,\n },\n modalFade: {\n type: Boolean,\n default: true,\n },\n widget: {\n type: String,\n },\n} as const)\n\nexport type DrawerProps = ExtractPropTypes<typeof drawerProps>\n"],"names":[],"mappings":";;;;;AAEY,MAAC,WAAW,GAAG,UAAU,CAAC;AACtC,EAAE,GAAG,WAAW;AAChB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK;AAClB,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AACxC,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,CAAC;;;;"}
@@ -1,8 +1,8 @@
1
1
  import '../../utils/index.mjs';
2
- import Dropdown from './src/dropdown.mjs';
2
+ import Dropdown from './src/dropdown2.mjs';
3
3
  import DropdownItem from './src/dropdown-item.mjs';
4
4
  import DropdownMenu from './src/dropdown-menu.mjs';
5
- export { DROPDOWN_COLLECTION_INJECTION_KEY, DROPDOWN_COLLECTION_ITEM_INJECTION_KEY, FIRST_KEYS, FIRST_LAST_KEYS, LAST_KEYS, PsCollection, PsCollectionItem, dropdownItemProps, dropdownMenuProps, dropdownProps } from './src/dropdown2.mjs';
5
+ export { DROPDOWN_COLLECTION_INJECTION_KEY, DROPDOWN_COLLECTION_ITEM_INJECTION_KEY, FIRST_KEYS, FIRST_LAST_KEYS, LAST_KEYS, PsCollection, PsCollectionItem, dropdownItemProps, dropdownMenuProps, dropdownProps } from './src/dropdown.mjs';
6
6
  export { DROPDOWN_INJECTION_KEY } from './src/tokens.mjs';
7
7
  import { withInstall, withNoopInstall } from '../../utils/vue/install.mjs';
8
8
 
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, resolveComponent, openBlock, createElementBlock, Fragment, mergeProps, createCommentVNode, createElementVNode, createBlock, withCtx, resolveDynamicComponent, renderSlot } from 'vue';
2
2
  import { PsIcon } from '../../icon/index.mjs';
3
3
  import '../../../hooks/index.mjs';
4
- import { dropdownItemProps } from './dropdown2.mjs';
4
+ import { dropdownItemProps } from './dropdown.mjs';
5
5
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
6
6
  import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
7
7
 
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, ref, computed, unref, resolveComponent, openBlock, createBlock, withCtx, createVNode, normalizeProps, guardReactiveProps, renderSlot } from 'vue';
2
2
  import '../../roving-focus-group/index.mjs';
3
3
  import PsDropdownItemImpl from './dropdown-item-impl.mjs';
4
- import { PsCollectionItem, dropdownItemProps } from './dropdown2.mjs';
4
+ import { PsCollectionItem, dropdownItemProps } from './dropdown.mjs';
5
5
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
6
6
  import PsRovingFocusItem from '../../roving-focus-group/src/roving-focus-item.mjs';
7
7
 
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, renderSlot } from 'vue';
2
2
  import '../../../hooks/index.mjs';
3
- import { dropdownMenuProps } from './dropdown2.mjs';
3
+ import { dropdownMenuProps } from './dropdown.mjs';
4
4
  import { useDropdown } from './useDropdown.mjs';
5
5
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
6
6
  import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
@@ -1,115 +1,106 @@
1
- import { defineComponent, getCurrentInstance, ref, computed, provide, toRef, resolveComponent, openBlock, createElementBlock, normalizeClass, renderSlot, createCommentVNode, createBlock, withCtx, createVNode, mergeProps } from 'vue';
2
- import { PsButton } from '../../button/index.mjs';
3
- import { PsIcon } from '../../icon/index.mjs';
4
1
  import '../../../utils/index.mjs';
5
- import { ArrowDown } from '@element-plus/icons-vue';
6
- import '../../../hooks/index.mjs';
7
- import { dropdownProps } from './dropdown2.mjs';
8
- import { DROPDOWN_INJECTION_KEY } from './tokens.mjs';
9
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
10
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
11
- import { addUnit } from '../../../utils/dom/style.mjs';
12
- import { useSize } from '../../../hooks/use-common-props/index.mjs';
2
+ import '../../../constants/index.mjs';
3
+ import '../../collection/index.mjs';
4
+ import '../../tooltip/index.mjs';
5
+ import { buildProps, definePropType } from '../../../utils/vue/props.mjs';
6
+ import { useTooltipTriggerProps, useTooltipContentProps } from '../../tooltip/src/tooltip.mjs';
7
+ import { iconPropType } from '../../../utils/vue/icon.mjs';
8
+ import { EVENT_CODE } from '../../../constants/aria.mjs';
9
+ import { createCollectionWithScope } from '../../collection/src/collection.mjs';
13
10
 
14
- const { ButtonGroup: PsButtonGroup } = PsButton;
15
- const _sfc_main = defineComponent({
16
- name: "PsDropdown",
17
- components: {
18
- PsButton,
19
- PsButtonGroup,
20
- PsIcon,
21
- ArrowDown
22
- },
23
- props: dropdownProps,
24
- emits: ["visible-change", "click", "command"],
25
- setup(props) {
26
- const _instance = getCurrentInstance();
27
- const ns = useNamespace("dropdown");
28
- const triggeringElementRef = ref();
29
- const referenceElementRef = ref();
30
- const popperRef = ref(null);
31
- const contentRef = ref(null);
32
- const scrollbar = ref(null);
33
- const currentTabId = ref(null);
34
- const isUsingKeyboard = ref(false);
35
- const wrapStyle = computed(() => ({
36
- maxHeight: addUnit(props.maxHeight)
37
- }));
38
- const dropdownTriggerKls = computed(() => [ns.m(dropdownSize.value)]);
39
- const dropdownSize = useSize();
40
- provide(DROPDOWN_INJECTION_KEY, {
41
- contentRef,
42
- isUsingKeyboard
43
- });
44
- provide("elDropdown", {
45
- instance: _instance,
46
- dropdownSize,
47
- trigger: toRef(props, "trigger"),
48
- hideOnClick: toRef(props, "hideOnClick")
49
- });
50
- return {
51
- ns,
52
- scrollbar,
53
- wrapStyle,
54
- dropdownTriggerKls,
55
- dropdownSize,
56
- currentTabId,
57
- popperRef,
58
- triggeringElementRef,
59
- referenceElementRef
60
- };
11
+ const dropdownProps = buildProps({
12
+ trigger: useTooltipTriggerProps.trigger,
13
+ effect: {
14
+ ...useTooltipContentProps.effect,
15
+ default: "light"
16
+ },
17
+ type: {
18
+ type: definePropType(String)
19
+ },
20
+ placement: {
21
+ type: definePropType(String),
22
+ default: "bottom"
23
+ },
24
+ popperOptions: {
25
+ type: definePropType(Object),
26
+ default: () => ({})
27
+ },
28
+ size: {
29
+ type: String,
30
+ default: ""
31
+ },
32
+ splitButton: Boolean,
33
+ hideOnClick: {
34
+ type: Boolean,
35
+ default: true
36
+ },
37
+ loop: {
38
+ type: Boolean
39
+ },
40
+ showTimeout: {
41
+ type: Number,
42
+ default: 150
43
+ },
44
+ hideTimeout: {
45
+ type: Number,
46
+ default: 150
47
+ },
48
+ tabindex: {
49
+ type: definePropType([Number, String]),
50
+ default: 0
51
+ },
52
+ maxHeight: {
53
+ type: definePropType([Number, String]),
54
+ default: ""
55
+ },
56
+ popperClass: {
57
+ type: String,
58
+ default: ""
59
+ },
60
+ disabled: {
61
+ type: Boolean,
62
+ default: false
63
+ },
64
+ buttonProps: {
65
+ type: definePropType(Object)
66
+ },
67
+ offset: {
68
+ type: Number,
69
+ default: 0
70
+ },
71
+ showArrow: {
72
+ type: Boolean,
73
+ default: true
61
74
  }
62
75
  });
63
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
64
- const _component_ps_button = resolveComponent("ps-button");
65
- const _component_arrow_down = resolveComponent("arrow-down");
66
- const _component_ps_icon = resolveComponent("ps-icon");
67
- const _component_ps_button_group = resolveComponent("ps-button-group");
68
- return openBlock(), createElementBlock("div", {
69
- class: normalizeClass([_ctx.ns.b(), _ctx.ns.is("disabled", _ctx.disabled)])
70
- }, [
71
- !_ctx.splitButton ? (openBlock(), createElementBlock("div", {
72
- key: 0,
73
- class: normalizeClass(_ctx.dropdownTriggerKls)
74
- }, [
75
- renderSlot(_ctx.$slots, "default")
76
- ], 2)) : createCommentVNode("v-if", true),
77
- _ctx.splitButton ? (openBlock(), createBlock(_component_ps_button_group, { key: 1 }, {
78
- default: withCtx(() => [
79
- createVNode(_component_ps_button, mergeProps({ ref: "referenceElementRef" }, _ctx.buttonProps, {
80
- size: _ctx.dropdownSize,
81
- type: _ctx.type,
82
- disabled: _ctx.disabled
83
- }), {
84
- default: withCtx(() => [
85
- renderSlot(_ctx.$slots, "default")
86
- ]),
87
- _: 3
88
- }, 16, ["size", "type", "disabled"]),
89
- createVNode(_component_ps_button, mergeProps({ ref: "triggeringElementRef" }, _ctx.buttonProps, {
90
- size: _ctx.dropdownSize,
91
- type: _ctx.type,
92
- class: _ctx.ns.e("caret-button"),
93
- disabled: _ctx.disabled
94
- }), {
95
- default: withCtx(() => [
96
- createVNode(_component_ps_icon, {
97
- class: normalizeClass(_ctx.ns.e("icon"))
98
- }, {
99
- default: withCtx(() => [
100
- createVNode(_component_arrow_down)
101
- ]),
102
- _: 1
103
- }, 8, ["class"])
104
- ]),
105
- _: 1
106
- }, 16, ["size", "type", "class", "disabled"])
107
- ]),
108
- _: 3
109
- })) : createCommentVNode("v-if", true)
110
- ], 2);
111
- }
112
- var Dropdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/meng/workspace/element-ps/packages/components/dropdown/src/dropdown.vue"]]);
76
+ const dropdownItemProps = buildProps({
77
+ command: {
78
+ type: [Object, String, Number],
79
+ default: () => ({})
80
+ },
81
+ disabled: Boolean,
82
+ divided: Boolean,
83
+ textValue: String,
84
+ icon: {
85
+ type: iconPropType
86
+ }
87
+ });
88
+ const dropdownMenuProps = buildProps({
89
+ onKeydown: { type: definePropType(Function) }
90
+ });
91
+ const FIRST_KEYS = [
92
+ EVENT_CODE.down,
93
+ EVENT_CODE.pageDown,
94
+ EVENT_CODE.home
95
+ ];
96
+ const LAST_KEYS = [EVENT_CODE.up, EVENT_CODE.pageUp, EVENT_CODE.end];
97
+ const FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS];
98
+ const {
99
+ PsCollection,
100
+ PsCollectionItem,
101
+ COLLECTION_INJECTION_KEY,
102
+ COLLECTION_ITEM_INJECTION_KEY
103
+ } = createCollectionWithScope("Dropdown");
113
104
 
114
- export { Dropdown as default };
105
+ export { COLLECTION_INJECTION_KEY as DROPDOWN_COLLECTION_INJECTION_KEY, COLLECTION_ITEM_INJECTION_KEY as DROPDOWN_COLLECTION_ITEM_INJECTION_KEY, FIRST_KEYS, FIRST_LAST_KEYS, LAST_KEYS, PsCollection, PsCollectionItem, dropdownItemProps, dropdownMenuProps, dropdownProps };
115
106
  //# sourceMappingURL=dropdown.mjs.map