element-plus 2.5.0 → 2.5.1

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 (356) hide show
  1. package/dist/index.full.js +46 -37
  2. package/dist/index.full.min.js +11 -11
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +11 -11
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +46 -37
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hr.js +1 -1
  92. package/dist/locale/hr.min.js +1 -1
  93. package/dist/locale/hr.min.mjs +1 -1
  94. package/dist/locale/hr.mjs +1 -1
  95. package/dist/locale/hu.js +1 -1
  96. package/dist/locale/hu.min.js +1 -1
  97. package/dist/locale/hu.min.mjs +1 -1
  98. package/dist/locale/hu.mjs +1 -1
  99. package/dist/locale/hy-am.js +1 -1
  100. package/dist/locale/hy-am.min.js +1 -1
  101. package/dist/locale/hy-am.min.mjs +1 -1
  102. package/dist/locale/hy-am.mjs +1 -1
  103. package/dist/locale/id.js +1 -1
  104. package/dist/locale/id.min.js +1 -1
  105. package/dist/locale/id.min.mjs +1 -1
  106. package/dist/locale/id.mjs +1 -1
  107. package/dist/locale/it.js +1 -1
  108. package/dist/locale/it.min.js +1 -1
  109. package/dist/locale/it.min.mjs +1 -1
  110. package/dist/locale/it.mjs +1 -1
  111. package/dist/locale/ja.js +1 -1
  112. package/dist/locale/ja.min.js +1 -1
  113. package/dist/locale/ja.min.mjs +1 -1
  114. package/dist/locale/ja.mjs +1 -1
  115. package/dist/locale/kk.js +1 -1
  116. package/dist/locale/kk.min.js +1 -1
  117. package/dist/locale/kk.min.mjs +1 -1
  118. package/dist/locale/kk.mjs +1 -1
  119. package/dist/locale/km.js +1 -1
  120. package/dist/locale/km.min.js +1 -1
  121. package/dist/locale/km.min.mjs +1 -1
  122. package/dist/locale/km.mjs +1 -1
  123. package/dist/locale/ko.js +1 -1
  124. package/dist/locale/ko.min.js +1 -1
  125. package/dist/locale/ko.min.mjs +1 -1
  126. package/dist/locale/ko.mjs +1 -1
  127. package/dist/locale/ku.js +1 -1
  128. package/dist/locale/ku.min.js +1 -1
  129. package/dist/locale/ku.min.mjs +1 -1
  130. package/dist/locale/ku.mjs +1 -1
  131. package/dist/locale/ky.js +1 -1
  132. package/dist/locale/ky.min.js +1 -1
  133. package/dist/locale/ky.min.mjs +1 -1
  134. package/dist/locale/ky.mjs +1 -1
  135. package/dist/locale/lt.js +1 -1
  136. package/dist/locale/lt.min.js +1 -1
  137. package/dist/locale/lt.min.mjs +1 -1
  138. package/dist/locale/lt.mjs +1 -1
  139. package/dist/locale/lv.js +1 -1
  140. package/dist/locale/lv.min.js +1 -1
  141. package/dist/locale/lv.min.mjs +1 -1
  142. package/dist/locale/lv.mjs +1 -1
  143. package/dist/locale/mg.js +1 -1
  144. package/dist/locale/mg.min.js +1 -1
  145. package/dist/locale/mg.min.mjs +1 -1
  146. package/dist/locale/mg.mjs +1 -1
  147. package/dist/locale/mn.js +1 -1
  148. package/dist/locale/mn.min.js +1 -1
  149. package/dist/locale/mn.min.mjs +1 -1
  150. package/dist/locale/mn.mjs +1 -1
  151. package/dist/locale/nb-no.js +1 -1
  152. package/dist/locale/nb-no.min.js +1 -1
  153. package/dist/locale/nb-no.min.mjs +1 -1
  154. package/dist/locale/nb-no.mjs +1 -1
  155. package/dist/locale/nl.js +1 -1
  156. package/dist/locale/nl.min.js +1 -1
  157. package/dist/locale/nl.min.mjs +1 -1
  158. package/dist/locale/nl.mjs +1 -1
  159. package/dist/locale/pa.js +1 -1
  160. package/dist/locale/pa.min.js +1 -1
  161. package/dist/locale/pa.min.mjs +1 -1
  162. package/dist/locale/pa.mjs +1 -1
  163. package/dist/locale/pl.js +1 -1
  164. package/dist/locale/pl.min.js +1 -1
  165. package/dist/locale/pl.min.mjs +1 -1
  166. package/dist/locale/pl.mjs +1 -1
  167. package/dist/locale/pt-br.js +1 -1
  168. package/dist/locale/pt-br.min.js +1 -1
  169. package/dist/locale/pt-br.min.mjs +1 -1
  170. package/dist/locale/pt-br.mjs +1 -1
  171. package/dist/locale/pt.js +1 -1
  172. package/dist/locale/pt.min.js +1 -1
  173. package/dist/locale/pt.min.mjs +1 -1
  174. package/dist/locale/pt.mjs +1 -1
  175. package/dist/locale/ro.js +1 -1
  176. package/dist/locale/ro.min.js +1 -1
  177. package/dist/locale/ro.min.mjs +1 -1
  178. package/dist/locale/ro.mjs +1 -1
  179. package/dist/locale/ru.js +1 -1
  180. package/dist/locale/ru.min.js +1 -1
  181. package/dist/locale/ru.min.mjs +1 -1
  182. package/dist/locale/ru.mjs +1 -1
  183. package/dist/locale/sk.js +1 -1
  184. package/dist/locale/sk.min.js +1 -1
  185. package/dist/locale/sk.min.mjs +1 -1
  186. package/dist/locale/sk.mjs +1 -1
  187. package/dist/locale/sl.js +1 -1
  188. package/dist/locale/sl.min.js +1 -1
  189. package/dist/locale/sl.min.mjs +1 -1
  190. package/dist/locale/sl.mjs +1 -1
  191. package/dist/locale/sr.js +1 -1
  192. package/dist/locale/sr.min.js +1 -1
  193. package/dist/locale/sr.min.mjs +1 -1
  194. package/dist/locale/sr.mjs +1 -1
  195. package/dist/locale/sv.js +1 -1
  196. package/dist/locale/sv.min.js +1 -1
  197. package/dist/locale/sv.min.mjs +1 -1
  198. package/dist/locale/sv.mjs +1 -1
  199. package/dist/locale/sw.js +1 -1
  200. package/dist/locale/sw.min.js +1 -1
  201. package/dist/locale/sw.min.mjs +1 -1
  202. package/dist/locale/sw.mjs +1 -1
  203. package/dist/locale/ta.js +1 -1
  204. package/dist/locale/ta.min.js +1 -1
  205. package/dist/locale/ta.min.mjs +1 -1
  206. package/dist/locale/ta.mjs +1 -1
  207. package/dist/locale/th.js +1 -1
  208. package/dist/locale/th.min.js +1 -1
  209. package/dist/locale/th.min.mjs +1 -1
  210. package/dist/locale/th.mjs +1 -1
  211. package/dist/locale/tk.js +1 -1
  212. package/dist/locale/tk.min.js +1 -1
  213. package/dist/locale/tk.min.mjs +1 -1
  214. package/dist/locale/tk.mjs +1 -1
  215. package/dist/locale/tr.js +1 -1
  216. package/dist/locale/tr.min.js +1 -1
  217. package/dist/locale/tr.min.mjs +1 -1
  218. package/dist/locale/tr.mjs +1 -1
  219. package/dist/locale/ug-cn.js +1 -1
  220. package/dist/locale/ug-cn.min.js +1 -1
  221. package/dist/locale/ug-cn.min.mjs +1 -1
  222. package/dist/locale/ug-cn.mjs +1 -1
  223. package/dist/locale/uk.js +1 -1
  224. package/dist/locale/uk.min.js +1 -1
  225. package/dist/locale/uk.min.mjs +1 -1
  226. package/dist/locale/uk.mjs +1 -1
  227. package/dist/locale/uz-uz.js +1 -1
  228. package/dist/locale/uz-uz.min.js +1 -1
  229. package/dist/locale/uz-uz.min.mjs +1 -1
  230. package/dist/locale/uz-uz.mjs +1 -1
  231. package/dist/locale/vi.js +1 -1
  232. package/dist/locale/vi.min.js +1 -1
  233. package/dist/locale/vi.min.mjs +1 -1
  234. package/dist/locale/vi.mjs +1 -1
  235. package/dist/locale/zh-cn.js +1 -1
  236. package/dist/locale/zh-cn.min.js +1 -1
  237. package/dist/locale/zh-cn.min.mjs +1 -1
  238. package/dist/locale/zh-cn.mjs +1 -1
  239. package/dist/locale/zh-tw.js +1 -1
  240. package/dist/locale/zh-tw.min.js +1 -1
  241. package/dist/locale/zh-tw.min.mjs +1 -1
  242. package/dist/locale/zh-tw.mjs +1 -1
  243. package/es/components/collection/index.mjs +1 -1
  244. package/es/components/collection/src/collection.mjs +62 -10
  245. package/es/components/collection/src/collection.mjs.map +1 -1
  246. package/es/components/collection/src/collection2.mjs +10 -62
  247. package/es/components/collection/src/collection2.mjs.map +1 -1
  248. package/es/components/color-picker/index.mjs +2 -2
  249. package/es/components/color-picker/src/color-picker.mjs +402 -40
  250. package/es/components/color-picker/src/color-picker.mjs.map +1 -1
  251. package/es/components/color-picker/src/color-picker2.mjs +40 -402
  252. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  253. package/es/components/color-picker/src/components/predefine.mjs +1 -1
  254. package/es/components/countdown/index.mjs +2 -2
  255. package/es/components/countdown/src/countdown.mjs +23 -74
  256. package/es/components/countdown/src/countdown.mjs.map +1 -1
  257. package/es/components/countdown/src/countdown2.mjs +74 -23
  258. package/es/components/countdown/src/countdown2.mjs.map +1 -1
  259. package/es/components/descriptions/index.mjs +2 -2
  260. package/es/components/descriptions/src/description.mjs +25 -112
  261. package/es/components/descriptions/src/description.mjs.map +1 -1
  262. package/es/components/descriptions/src/description2.mjs +112 -25
  263. package/es/components/descriptions/src/description2.mjs.map +1 -1
  264. package/es/components/dialog/src/dialog-content.mjs +29 -89
  265. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  266. package/es/components/dialog/src/dialog-content2.mjs +89 -29
  267. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  268. package/es/components/dialog/src/dialog.mjs +1 -1
  269. package/es/components/dialog/src/dialog2.mjs +1 -1
  270. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  271. package/es/components/dropdown/src/dropdown.mjs +1 -1
  272. package/es/components/form/index.mjs +2 -2
  273. package/es/components/form/src/form.mjs +152 -54
  274. package/es/components/form/src/form.mjs.map +1 -1
  275. package/es/components/form/src/form2.mjs +54 -152
  276. package/es/components/form/src/form2.mjs.map +1 -1
  277. package/es/components/index.mjs +5 -5
  278. package/es/components/pagination/src/components/sizes.mjs +69 -23
  279. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  280. package/es/components/pagination/src/components/sizes2.mjs +23 -69
  281. package/es/components/pagination/src/components/sizes2.mjs.map +1 -1
  282. package/es/components/pagination/src/pagination.mjs +1 -1
  283. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  284. package/es/components/select/src/select2.mjs +25 -24
  285. package/es/components/select/src/select2.mjs.map +1 -1
  286. package/es/components/select/src/useSelect.mjs +15 -9
  287. package/es/components/select/src/useSelect.mjs.map +1 -1
  288. package/es/components/select-v2/src/select.mjs +7 -5
  289. package/es/components/select-v2/src/select.mjs.map +1 -1
  290. package/es/components/steps/index.mjs +2 -2
  291. package/es/components/steps/src/item.mjs +191 -19
  292. package/es/components/steps/src/item.mjs.map +1 -1
  293. package/es/components/steps/src/item2.mjs +19 -191
  294. package/es/components/steps/src/item2.mjs.map +1 -1
  295. package/es/index.mjs +5 -5
  296. package/es/version.d.ts +1 -1
  297. package/es/version.mjs +1 -1
  298. package/es/version.mjs.map +1 -1
  299. package/lib/components/collection/index.js +1 -1
  300. package/lib/components/collection/src/collection.js +62 -9
  301. package/lib/components/collection/src/collection.js.map +1 -1
  302. package/lib/components/collection/src/collection2.js +9 -62
  303. package/lib/components/collection/src/collection2.js.map +1 -1
  304. package/lib/components/color-picker/index.js +2 -2
  305. package/lib/components/color-picker/src/color-picker.js +400 -40
  306. package/lib/components/color-picker/src/color-picker.js.map +1 -1
  307. package/lib/components/color-picker/src/color-picker2.js +40 -400
  308. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  309. package/lib/components/color-picker/src/components/predefine.js +1 -1
  310. package/lib/components/countdown/index.js +2 -2
  311. package/lib/components/countdown/src/countdown.js +24 -74
  312. package/lib/components/countdown/src/countdown.js.map +1 -1
  313. package/lib/components/countdown/src/countdown2.js +74 -24
  314. package/lib/components/countdown/src/countdown2.js.map +1 -1
  315. package/lib/components/descriptions/index.js +2 -2
  316. package/lib/components/descriptions/src/description.js +25 -112
  317. package/lib/components/descriptions/src/description.js.map +1 -1
  318. package/lib/components/descriptions/src/description2.js +112 -25
  319. package/lib/components/descriptions/src/description2.js.map +1 -1
  320. package/lib/components/dialog/src/dialog-content.js +29 -88
  321. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  322. package/lib/components/dialog/src/dialog-content2.js +88 -29
  323. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  324. package/lib/components/dialog/src/dialog.js +1 -1
  325. package/lib/components/dialog/src/dialog2.js +1 -1
  326. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  327. package/lib/components/dropdown/src/dropdown.js +1 -1
  328. package/lib/components/form/index.js +2 -2
  329. package/lib/components/form/src/form.js +151 -54
  330. package/lib/components/form/src/form.js.map +1 -1
  331. package/lib/components/form/src/form2.js +54 -151
  332. package/lib/components/form/src/form2.js.map +1 -1
  333. package/lib/components/index.js +5 -5
  334. package/lib/components/pagination/src/components/sizes.js +69 -23
  335. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  336. package/lib/components/pagination/src/components/sizes2.js +23 -69
  337. package/lib/components/pagination/src/components/sizes2.js.map +1 -1
  338. package/lib/components/pagination/src/pagination.js +1 -1
  339. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  340. package/lib/components/select/src/select2.js +24 -23
  341. package/lib/components/select/src/select2.js.map +1 -1
  342. package/lib/components/select/src/useSelect.js +13 -7
  343. package/lib/components/select/src/useSelect.js.map +1 -1
  344. package/lib/components/select-v2/src/select.js +7 -5
  345. package/lib/components/select-v2/src/select.js.map +1 -1
  346. package/lib/components/steps/index.js +2 -2
  347. package/lib/components/steps/src/item.js +191 -19
  348. package/lib/components/steps/src/item.js.map +1 -1
  349. package/lib/components/steps/src/item2.js +19 -191
  350. package/lib/components/steps/src/item2.js.map +1 -1
  351. package/lib/index.js +5 -5
  352. package/lib/version.d.ts +1 -1
  353. package/lib/version.js +1 -1
  354. package/lib/version.js.map +1 -1
  355. package/package.json +2 -2
  356. package/web-types.json +1 -1
@@ -1,13 +1,65 @@
1
- import { defineComponent, renderSlot } from 'vue';
2
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
1
+ import { ref, unref, provide, inject, onMounted, onBeforeUnmount } from 'vue';
2
+ import Collection from './collection2.mjs';
3
+ import CollectionItem from './collection-item.mjs';
3
4
 
4
- const _sfc_main = /* @__PURE__ */ defineComponent({
5
- inheritAttrs: false
6
- });
7
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
8
- return renderSlot(_ctx.$slots, "default");
9
- }
10
- var Collection = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "collection.vue"]]);
5
+ const COLLECTION_ITEM_SIGN = `data-el-collection-item`;
6
+ const createCollectionWithScope = (name) => {
7
+ const COLLECTION_NAME = `El${name}Collection`;
8
+ const COLLECTION_ITEM_NAME = `${COLLECTION_NAME}Item`;
9
+ const COLLECTION_INJECTION_KEY = Symbol(COLLECTION_NAME);
10
+ const COLLECTION_ITEM_INJECTION_KEY = Symbol(COLLECTION_ITEM_NAME);
11
+ const ElCollection = {
12
+ ...Collection,
13
+ name: COLLECTION_NAME,
14
+ setup() {
15
+ const collectionRef = ref(null);
16
+ const itemMap = /* @__PURE__ */ new Map();
17
+ const getItems = () => {
18
+ const collectionEl = unref(collectionRef);
19
+ if (!collectionEl)
20
+ return [];
21
+ const orderedNodes = Array.from(collectionEl.querySelectorAll(`[${COLLECTION_ITEM_SIGN}]`));
22
+ const items = [...itemMap.values()];
23
+ return items.sort((a, b) => orderedNodes.indexOf(a.ref) - orderedNodes.indexOf(b.ref));
24
+ };
25
+ provide(COLLECTION_INJECTION_KEY, {
26
+ itemMap,
27
+ getItems,
28
+ collectionRef
29
+ });
30
+ }
31
+ };
32
+ const ElCollectionItem = {
33
+ ...CollectionItem,
34
+ name: COLLECTION_ITEM_NAME,
35
+ setup(_, { attrs }) {
36
+ const collectionItemRef = ref(null);
37
+ const collectionInjection = inject(COLLECTION_INJECTION_KEY, void 0);
38
+ provide(COLLECTION_ITEM_INJECTION_KEY, {
39
+ collectionItemRef
40
+ });
41
+ onMounted(() => {
42
+ const collectionItemEl = unref(collectionItemRef);
43
+ if (collectionItemEl) {
44
+ collectionInjection.itemMap.set(collectionItemEl, {
45
+ ref: collectionItemEl,
46
+ ...attrs
47
+ });
48
+ }
49
+ });
50
+ onBeforeUnmount(() => {
51
+ const collectionItemEl = unref(collectionItemRef);
52
+ collectionInjection.itemMap.delete(collectionItemEl);
53
+ });
54
+ }
55
+ };
56
+ return {
57
+ COLLECTION_INJECTION_KEY,
58
+ COLLECTION_ITEM_INJECTION_KEY,
59
+ ElCollection,
60
+ ElCollectionItem
61
+ };
62
+ };
11
63
 
12
- export { Collection as default };
64
+ export { COLLECTION_ITEM_SIGN, createCollectionWithScope };
13
65
  //# sourceMappingURL=collection.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection.mjs","sources":["../../../../../../packages/components/collection/src/collection.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n\n<script lang=\"ts\" setup>\ndefineOptions({\n inheritAttrs: false,\n})\n</script>\n"],"names":["DO_defineComponent","_renderSlot"],"mappings":";;;kCAKcA,eAAA,CAAA;AAAA,EACZ,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;SANEC,UAAQ,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA,CAAA;;;;;;"}
1
+ {"version":3,"file":"collection.mjs","sources":["../../../../../../packages/components/collection/src/collection.ts"],"sourcesContent":["import { inject, onBeforeUnmount, onMounted, provide, ref, unref } from 'vue'\nimport Collection from './collection.vue'\nimport CollectionItem from './collection-item.vue'\n\nimport type { InjectionKey } from 'vue'\nimport type { SetupContext } from '@vue/runtime-core'\nimport type {\n ElCollectionInjectionContext,\n ElCollectionItemInjectionContext,\n} from './tokens'\n\nexport const COLLECTION_ITEM_SIGN = `data-el-collection-item`\n\n// Make sure the first letter of name is capitalized\nexport const createCollectionWithScope = (name: string) => {\n const COLLECTION_NAME = `El${name}Collection`\n const COLLECTION_ITEM_NAME = `${COLLECTION_NAME}Item`\n const COLLECTION_INJECTION_KEY: InjectionKey<ElCollectionInjectionContext> =\n Symbol(COLLECTION_NAME)\n const COLLECTION_ITEM_INJECTION_KEY: InjectionKey<ElCollectionItemInjectionContext> =\n Symbol(COLLECTION_ITEM_NAME)\n\n const ElCollection = {\n ...Collection,\n name: COLLECTION_NAME,\n setup() {\n const collectionRef = ref<HTMLElement | null>(null)\n const itemMap: ElCollectionInjectionContext['itemMap'] = new Map()\n const getItems = () => {\n const collectionEl = unref(collectionRef)\n\n if (!collectionEl) return []\n const orderedNodes = Array.from(\n collectionEl.querySelectorAll(`[${COLLECTION_ITEM_SIGN}]`)\n )\n\n const items = [...itemMap.values()]\n\n return items.sort(\n (a, b) => orderedNodes.indexOf(a.ref!) - orderedNodes.indexOf(b.ref!)\n )\n }\n\n provide(COLLECTION_INJECTION_KEY, {\n itemMap,\n getItems,\n collectionRef,\n })\n },\n }\n\n const ElCollectionItem = {\n ...CollectionItem,\n name: COLLECTION_ITEM_NAME,\n setup(_: unknown, { attrs }: SetupContext) {\n const collectionItemRef = ref<HTMLElement | null>(null)\n const collectionInjection = inject(COLLECTION_INJECTION_KEY, undefined)!\n\n provide(COLLECTION_ITEM_INJECTION_KEY, {\n collectionItemRef,\n })\n\n onMounted(() => {\n const collectionItemEl = unref(collectionItemRef)\n if (collectionItemEl) {\n collectionInjection.itemMap.set(collectionItemEl, {\n ref: collectionItemEl,\n ...attrs,\n })\n }\n })\n\n onBeforeUnmount(() => {\n const collectionItemEl = unref(collectionItemRef)!\n collectionInjection.itemMap.delete(collectionItemEl)\n })\n },\n }\n\n return {\n COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY,\n ElCollection,\n ElCollectionItem,\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,65 +1,13 @@
1
- import { ref, unref, provide, inject, onMounted, onBeforeUnmount } from 'vue';
2
- import Collection from './collection.mjs';
3
- import CollectionItem from './collection-item.mjs';
1
+ import { defineComponent, renderSlot } from 'vue';
2
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
4
3
 
5
- const COLLECTION_ITEM_SIGN = `data-el-collection-item`;
6
- const createCollectionWithScope = (name) => {
7
- const COLLECTION_NAME = `El${name}Collection`;
8
- const COLLECTION_ITEM_NAME = `${COLLECTION_NAME}Item`;
9
- const COLLECTION_INJECTION_KEY = Symbol(COLLECTION_NAME);
10
- const COLLECTION_ITEM_INJECTION_KEY = Symbol(COLLECTION_ITEM_NAME);
11
- const ElCollection = {
12
- ...Collection,
13
- name: COLLECTION_NAME,
14
- setup() {
15
- const collectionRef = ref(null);
16
- const itemMap = /* @__PURE__ */ new Map();
17
- const getItems = () => {
18
- const collectionEl = unref(collectionRef);
19
- if (!collectionEl)
20
- return [];
21
- const orderedNodes = Array.from(collectionEl.querySelectorAll(`[${COLLECTION_ITEM_SIGN}]`));
22
- const items = [...itemMap.values()];
23
- return items.sort((a, b) => orderedNodes.indexOf(a.ref) - orderedNodes.indexOf(b.ref));
24
- };
25
- provide(COLLECTION_INJECTION_KEY, {
26
- itemMap,
27
- getItems,
28
- collectionRef
29
- });
30
- }
31
- };
32
- const ElCollectionItem = {
33
- ...CollectionItem,
34
- name: COLLECTION_ITEM_NAME,
35
- setup(_, { attrs }) {
36
- const collectionItemRef = ref(null);
37
- const collectionInjection = inject(COLLECTION_INJECTION_KEY, void 0);
38
- provide(COLLECTION_ITEM_INJECTION_KEY, {
39
- collectionItemRef
40
- });
41
- onMounted(() => {
42
- const collectionItemEl = unref(collectionItemRef);
43
- if (collectionItemEl) {
44
- collectionInjection.itemMap.set(collectionItemEl, {
45
- ref: collectionItemEl,
46
- ...attrs
47
- });
48
- }
49
- });
50
- onBeforeUnmount(() => {
51
- const collectionItemEl = unref(collectionItemRef);
52
- collectionInjection.itemMap.delete(collectionItemEl);
53
- });
54
- }
55
- };
56
- return {
57
- COLLECTION_INJECTION_KEY,
58
- COLLECTION_ITEM_INJECTION_KEY,
59
- ElCollection,
60
- ElCollectionItem
61
- };
62
- };
4
+ const _sfc_main = /* @__PURE__ */ defineComponent({
5
+ inheritAttrs: false
6
+ });
7
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
8
+ return renderSlot(_ctx.$slots, "default");
9
+ }
10
+ var Collection = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "collection.vue"]]);
63
11
 
64
- export { COLLECTION_ITEM_SIGN, createCollectionWithScope };
12
+ export { Collection as default };
65
13
  //# sourceMappingURL=collection2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection2.mjs","sources":["../../../../../../packages/components/collection/src/collection.ts"],"sourcesContent":["import { inject, onBeforeUnmount, onMounted, provide, ref, unref } from 'vue'\nimport Collection from './collection.vue'\nimport CollectionItem from './collection-item.vue'\n\nimport type { InjectionKey } from 'vue'\nimport type { SetupContext } from '@vue/runtime-core'\nimport type {\n ElCollectionInjectionContext,\n ElCollectionItemInjectionContext,\n} from './tokens'\n\nexport const COLLECTION_ITEM_SIGN = `data-el-collection-item`\n\n// Make sure the first letter of name is capitalized\nexport const createCollectionWithScope = (name: string) => {\n const COLLECTION_NAME = `El${name}Collection`\n const COLLECTION_ITEM_NAME = `${COLLECTION_NAME}Item`\n const COLLECTION_INJECTION_KEY: InjectionKey<ElCollectionInjectionContext> =\n Symbol(COLLECTION_NAME)\n const COLLECTION_ITEM_INJECTION_KEY: InjectionKey<ElCollectionItemInjectionContext> =\n Symbol(COLLECTION_ITEM_NAME)\n\n const ElCollection = {\n ...Collection,\n name: COLLECTION_NAME,\n setup() {\n const collectionRef = ref<HTMLElement | null>(null)\n const itemMap: ElCollectionInjectionContext['itemMap'] = new Map()\n const getItems = () => {\n const collectionEl = unref(collectionRef)\n\n if (!collectionEl) return []\n const orderedNodes = Array.from(\n collectionEl.querySelectorAll(`[${COLLECTION_ITEM_SIGN}]`)\n )\n\n const items = [...itemMap.values()]\n\n return items.sort(\n (a, b) => orderedNodes.indexOf(a.ref!) - orderedNodes.indexOf(b.ref!)\n )\n }\n\n provide(COLLECTION_INJECTION_KEY, {\n itemMap,\n getItems,\n collectionRef,\n })\n },\n }\n\n const ElCollectionItem = {\n ...CollectionItem,\n name: COLLECTION_ITEM_NAME,\n setup(_: unknown, { attrs }: SetupContext) {\n const collectionItemRef = ref<HTMLElement | null>(null)\n const collectionInjection = inject(COLLECTION_INJECTION_KEY, undefined)!\n\n provide(COLLECTION_ITEM_INJECTION_KEY, {\n collectionItemRef,\n })\n\n onMounted(() => {\n const collectionItemEl = unref(collectionItemRef)\n if (collectionItemEl) {\n collectionInjection.itemMap.set(collectionItemEl, {\n ref: collectionItemEl,\n ...attrs,\n })\n }\n })\n\n onBeforeUnmount(() => {\n const collectionItemEl = unref(collectionItemRef)!\n collectionInjection.itemMap.delete(collectionItemEl)\n })\n },\n }\n\n return {\n COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY,\n ElCollection,\n ElCollectionItem,\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collection2.mjs","sources":["../../../../../../packages/components/collection/src/collection.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n\n<script lang=\"ts\" setup>\ndefineOptions({\n inheritAttrs: false,\n})\n</script>\n"],"names":["DO_defineComponent","_renderSlot"],"mappings":";;;kCAKcA,eAAA,CAAA;AAAA,EACZ,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;SANEC,UAAQ,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA,CAAA;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import '../../utils/index.mjs';
2
- import ColorPicker from './src/color-picker2.mjs';
3
- export { colorPickerContextKey, colorPickerEmits, colorPickerProps } from './src/color-picker.mjs';
2
+ import ColorPicker from './src/color-picker.mjs';
3
+ export { colorPickerContextKey, colorPickerEmits, colorPickerProps } from './src/color-picker2.mjs';
4
4
  import { withInstall } from '../../utils/vue/install.mjs';
5
5
 
6
6
  const ElColorPicker = withInstall(ColorPicker);
@@ -1,47 +1,409 @@
1
- import { isNil } from 'lodash-unified';
2
- import '../../../utils/index.mjs';
1
+ import { defineComponent, ref, reactive, computed, nextTick, onMounted, watch, provide, openBlock, createBlock, unref, withCtx, withDirectives, createElementBlock, withKeys, createElementVNode, normalizeClass, createVNode, createCommentVNode, createTextVNode, toDisplayString, normalizeStyle, vShow } from 'vue';
2
+ import { debounce } from 'lodash-unified';
3
+ import { ElButton } from '../../button/index.mjs';
4
+ import { ElIcon } from '../../icon/index.mjs';
5
+ import '../../../directives/index.mjs';
6
+ import { ElTooltip } from '../../tooltip/index.mjs';
7
+ import { ElInput } from '../../input/index.mjs';
8
+ import '../../form/index.mjs';
3
9
  import '../../../hooks/index.mjs';
4
10
  import '../../../constants/index.mjs';
5
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
6
- import { useSizeProp } from '../../../hooks/use-size/index.mjs';
7
- import { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '../../../constants/event.mjs';
8
- import { isString } from '@vue/shared';
11
+ import '../../../utils/index.mjs';
12
+ import { ArrowDown, Close } from '@element-plus/icons-vue';
13
+ import AlphaSlider from './components/alpha-slider.mjs';
14
+ import HueSlider from './components/hue-slider.mjs';
15
+ import Predefine from './components/predefine.mjs';
16
+ import SvPanel from './components/sv-panel.mjs';
17
+ import Color from './utils/color.mjs';
18
+ import { colorPickerProps, colorPickerEmits, colorPickerContextKey } from './color-picker2.mjs';
19
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
20
+ import { useLocale } from '../../../hooks/use-locale/index.mjs';
21
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
22
+ import { useFormItem, useFormItemInputId } from '../../form/src/hooks/use-form-item.mjs';
23
+ import { useFormSize, useFormDisabled } from '../../form/src/hooks/use-form-common-props.mjs';
24
+ import { useFocusController } from '../../../hooks/use-focus-controller/index.mjs';
25
+ import { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
26
+ import { debugWarn } from '../../../utils/error.mjs';
27
+ import { EVENT_CODE } from '../../../constants/aria.mjs';
28
+ import ClickOutside from '../../../directives/click-outside/index.mjs';
9
29
 
10
- const colorPickerProps = buildProps({
11
- modelValue: String,
12
- id: String,
13
- showAlpha: Boolean,
14
- colorFormat: String,
15
- disabled: Boolean,
16
- size: useSizeProp,
17
- popperClass: {
18
- type: String,
19
- default: ""
20
- },
21
- label: {
22
- type: String,
23
- default: void 0
24
- },
25
- tabindex: {
26
- type: [String, Number],
27
- default: 0
28
- },
29
- predefine: {
30
- type: definePropType(Array)
31
- },
32
- validateEvent: {
33
- type: Boolean,
34
- default: true
30
+ const _hoisted_1 = ["onKeydown"];
31
+ const _hoisted_2 = ["id", "aria-label", "aria-labelledby", "aria-description", "aria-disabled", "tabindex"];
32
+ const __default__ = defineComponent({
33
+ name: "ElColorPicker"
34
+ });
35
+ const _sfc_main = /* @__PURE__ */ defineComponent({
36
+ ...__default__,
37
+ props: colorPickerProps,
38
+ emits: colorPickerEmits,
39
+ setup(__props, { expose, emit }) {
40
+ const props = __props;
41
+ const { t } = useLocale();
42
+ const ns = useNamespace("color");
43
+ const { formItem } = useFormItem();
44
+ const colorSize = useFormSize();
45
+ const colorDisabled = useFormDisabled();
46
+ const { inputId: buttonId, isLabeledByFormItem } = useFormItemInputId(props, {
47
+ formItemContext: formItem
48
+ });
49
+ const hue = ref();
50
+ const sv = ref();
51
+ const alpha = ref();
52
+ const popper = ref();
53
+ const triggerRef = ref();
54
+ const inputRef = ref();
55
+ const {
56
+ isFocused,
57
+ handleFocus: _handleFocus,
58
+ handleBlur
59
+ } = useFocusController(triggerRef, {
60
+ beforeBlur(event) {
61
+ var _a;
62
+ return (_a = popper.value) == null ? void 0 : _a.isFocusInsideContent(event);
63
+ },
64
+ afterBlur() {
65
+ setShowPicker(false);
66
+ resetColor();
67
+ }
68
+ });
69
+ const handleFocus = (event) => {
70
+ if (colorDisabled.value)
71
+ return blur();
72
+ _handleFocus(event);
73
+ };
74
+ let shouldActiveChange = true;
75
+ const color = reactive(new Color({
76
+ enableAlpha: props.showAlpha,
77
+ format: props.colorFormat || "",
78
+ value: props.modelValue
79
+ }));
80
+ const showPicker = ref(false);
81
+ const showPanelColor = ref(false);
82
+ const customInput = ref("");
83
+ const displayedColor = computed(() => {
84
+ if (!props.modelValue && !showPanelColor.value) {
85
+ return "transparent";
86
+ }
87
+ return displayedRgb(color, props.showAlpha);
88
+ });
89
+ const currentColor = computed(() => {
90
+ return !props.modelValue && !showPanelColor.value ? "" : color.value;
91
+ });
92
+ const buttonAriaLabel = computed(() => {
93
+ return !isLabeledByFormItem.value ? props.label || t("el.colorpicker.defaultLabel") : void 0;
94
+ });
95
+ const buttonAriaLabelledby = computed(() => {
96
+ return isLabeledByFormItem.value ? formItem == null ? void 0 : formItem.labelId : void 0;
97
+ });
98
+ const btnKls = computed(() => {
99
+ return [
100
+ ns.b("picker"),
101
+ ns.is("disabled", colorDisabled.value),
102
+ ns.bm("picker", colorSize.value),
103
+ ns.is("focused", isFocused.value)
104
+ ];
105
+ });
106
+ function displayedRgb(color2, showAlpha) {
107
+ if (!(color2 instanceof Color)) {
108
+ throw new TypeError("color should be instance of _color Class");
109
+ }
110
+ const { r, g, b } = color2.toRgb();
111
+ return showAlpha ? `rgba(${r}, ${g}, ${b}, ${color2.get("alpha") / 100})` : `rgb(${r}, ${g}, ${b})`;
112
+ }
113
+ function setShowPicker(value) {
114
+ showPicker.value = value;
115
+ }
116
+ const debounceSetShowPicker = debounce(setShowPicker, 100, { leading: true });
117
+ function show() {
118
+ if (colorDisabled.value)
119
+ return;
120
+ setShowPicker(true);
121
+ }
122
+ function hide() {
123
+ debounceSetShowPicker(false);
124
+ resetColor();
125
+ }
126
+ function resetColor() {
127
+ nextTick(() => {
128
+ if (props.modelValue) {
129
+ color.fromString(props.modelValue);
130
+ } else {
131
+ color.value = "";
132
+ nextTick(() => {
133
+ showPanelColor.value = false;
134
+ });
135
+ }
136
+ });
137
+ }
138
+ function handleTrigger() {
139
+ if (colorDisabled.value)
140
+ return;
141
+ debounceSetShowPicker(!showPicker.value);
142
+ }
143
+ function handleConfirm() {
144
+ color.fromString(customInput.value);
145
+ }
146
+ function confirmValue() {
147
+ const value = color.value;
148
+ emit(UPDATE_MODEL_EVENT, value);
149
+ emit("change", value);
150
+ if (props.validateEvent) {
151
+ formItem == null ? void 0 : formItem.validate("change").catch((err) => debugWarn(err));
152
+ }
153
+ debounceSetShowPicker(false);
154
+ nextTick(() => {
155
+ const newColor = new Color({
156
+ enableAlpha: props.showAlpha,
157
+ format: props.colorFormat || "",
158
+ value: props.modelValue
159
+ });
160
+ if (!color.compare(newColor)) {
161
+ resetColor();
162
+ }
163
+ });
164
+ }
165
+ function clear() {
166
+ debounceSetShowPicker(false);
167
+ emit(UPDATE_MODEL_EVENT, null);
168
+ emit("change", null);
169
+ if (props.modelValue !== null && props.validateEvent) {
170
+ formItem == null ? void 0 : formItem.validate("change").catch((err) => debugWarn(err));
171
+ }
172
+ resetColor();
173
+ }
174
+ function handleClickOutside(event) {
175
+ if (!showPicker.value)
176
+ return;
177
+ hide();
178
+ if (isFocused.value) {
179
+ const _event = new FocusEvent("focus", event);
180
+ handleBlur(_event);
181
+ }
182
+ }
183
+ function handleEsc(event) {
184
+ event.preventDefault();
185
+ event.stopPropagation();
186
+ setShowPicker(false);
187
+ resetColor();
188
+ }
189
+ function handleKeyDown(event) {
190
+ switch (event.code) {
191
+ case EVENT_CODE.enter:
192
+ case EVENT_CODE.space:
193
+ event.preventDefault();
194
+ event.stopPropagation();
195
+ show();
196
+ inputRef.value.focus();
197
+ break;
198
+ case EVENT_CODE.esc:
199
+ handleEsc(event);
200
+ break;
201
+ }
202
+ }
203
+ function focus() {
204
+ triggerRef.value.focus();
205
+ }
206
+ function blur() {
207
+ triggerRef.value.blur();
208
+ }
209
+ onMounted(() => {
210
+ if (props.modelValue) {
211
+ customInput.value = currentColor.value;
212
+ }
213
+ });
214
+ watch(() => props.modelValue, (newVal) => {
215
+ if (!newVal) {
216
+ showPanelColor.value = false;
217
+ } else if (newVal && newVal !== color.value) {
218
+ shouldActiveChange = false;
219
+ color.fromString(newVal);
220
+ }
221
+ });
222
+ watch(() => currentColor.value, (val) => {
223
+ customInput.value = val;
224
+ shouldActiveChange && emit("activeChange", val);
225
+ shouldActiveChange = true;
226
+ });
227
+ watch(() => color.value, () => {
228
+ if (!props.modelValue && !showPanelColor.value) {
229
+ showPanelColor.value = true;
230
+ }
231
+ });
232
+ watch(() => showPicker.value, () => {
233
+ nextTick(() => {
234
+ var _a, _b, _c;
235
+ (_a = hue.value) == null ? void 0 : _a.update();
236
+ (_b = sv.value) == null ? void 0 : _b.update();
237
+ (_c = alpha.value) == null ? void 0 : _c.update();
238
+ });
239
+ });
240
+ provide(colorPickerContextKey, {
241
+ currentColor
242
+ });
243
+ expose({
244
+ color,
245
+ show,
246
+ hide,
247
+ focus,
248
+ blur
249
+ });
250
+ return (_ctx, _cache) => {
251
+ return openBlock(), createBlock(unref(ElTooltip), {
252
+ ref_key: "popper",
253
+ ref: popper,
254
+ visible: showPicker.value,
255
+ "show-arrow": false,
256
+ "fallback-placements": ["bottom", "top", "right", "left"],
257
+ offset: 0,
258
+ "gpu-acceleration": false,
259
+ "popper-class": [unref(ns).be("picker", "panel"), unref(ns).b("dropdown"), _ctx.popperClass],
260
+ "stop-popper-mouse-event": false,
261
+ effect: "light",
262
+ trigger: "click",
263
+ transition: `${unref(ns).namespace.value}-zoom-in-top`,
264
+ persistent: "",
265
+ onHide: _cache[2] || (_cache[2] = ($event) => setShowPicker(false))
266
+ }, {
267
+ content: withCtx(() => [
268
+ withDirectives((openBlock(), createElementBlock("div", {
269
+ onKeydown: withKeys(handleEsc, ["esc"])
270
+ }, [
271
+ createElementVNode("div", {
272
+ class: normalizeClass(unref(ns).be("dropdown", "main-wrapper"))
273
+ }, [
274
+ createVNode(HueSlider, {
275
+ ref_key: "hue",
276
+ ref: hue,
277
+ class: "hue-slider",
278
+ color: unref(color),
279
+ vertical: ""
280
+ }, null, 8, ["color"]),
281
+ createVNode(SvPanel, {
282
+ ref_key: "sv",
283
+ ref: sv,
284
+ color: unref(color)
285
+ }, null, 8, ["color"])
286
+ ], 2),
287
+ _ctx.showAlpha ? (openBlock(), createBlock(AlphaSlider, {
288
+ key: 0,
289
+ ref_key: "alpha",
290
+ ref: alpha,
291
+ color: unref(color)
292
+ }, null, 8, ["color"])) : createCommentVNode("v-if", true),
293
+ _ctx.predefine ? (openBlock(), createBlock(Predefine, {
294
+ key: 1,
295
+ ref: "predefine",
296
+ color: unref(color),
297
+ colors: _ctx.predefine
298
+ }, null, 8, ["color", "colors"])) : createCommentVNode("v-if", true),
299
+ createElementVNode("div", {
300
+ class: normalizeClass(unref(ns).be("dropdown", "btns"))
301
+ }, [
302
+ createElementVNode("span", {
303
+ class: normalizeClass(unref(ns).be("dropdown", "value"))
304
+ }, [
305
+ createVNode(unref(ElInput), {
306
+ ref_key: "inputRef",
307
+ ref: inputRef,
308
+ modelValue: customInput.value,
309
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => customInput.value = $event),
310
+ "validate-event": false,
311
+ size: "small",
312
+ onKeyup: withKeys(handleConfirm, ["enter"]),
313
+ onBlur: handleConfirm
314
+ }, null, 8, ["modelValue", "onKeyup"])
315
+ ], 2),
316
+ createVNode(unref(ElButton), {
317
+ class: normalizeClass(unref(ns).be("dropdown", "link-btn")),
318
+ text: "",
319
+ size: "small",
320
+ onClick: clear
321
+ }, {
322
+ default: withCtx(() => [
323
+ createTextVNode(toDisplayString(unref(t)("el.colorpicker.clear")), 1)
324
+ ]),
325
+ _: 1
326
+ }, 8, ["class"]),
327
+ createVNode(unref(ElButton), {
328
+ plain: "",
329
+ size: "small",
330
+ class: normalizeClass(unref(ns).be("dropdown", "btn")),
331
+ onClick: confirmValue
332
+ }, {
333
+ default: withCtx(() => [
334
+ createTextVNode(toDisplayString(unref(t)("el.colorpicker.confirm")), 1)
335
+ ]),
336
+ _: 1
337
+ }, 8, ["class"])
338
+ ], 2)
339
+ ], 40, _hoisted_1)), [
340
+ [unref(ClickOutside), handleClickOutside]
341
+ ])
342
+ ]),
343
+ default: withCtx(() => [
344
+ createElementVNode("div", {
345
+ id: unref(buttonId),
346
+ ref_key: "triggerRef",
347
+ ref: triggerRef,
348
+ class: normalizeClass(unref(btnKls)),
349
+ role: "button",
350
+ "aria-label": unref(buttonAriaLabel),
351
+ "aria-labelledby": unref(buttonAriaLabelledby),
352
+ "aria-description": unref(t)("el.colorpicker.description", { color: _ctx.modelValue || "" }),
353
+ "aria-disabled": unref(colorDisabled),
354
+ tabindex: unref(colorDisabled) ? -1 : _ctx.tabindex,
355
+ onKeydown: handleKeyDown,
356
+ onFocus: handleFocus,
357
+ onBlur: _cache[1] || (_cache[1] = (...args) => unref(handleBlur) && unref(handleBlur)(...args))
358
+ }, [
359
+ unref(colorDisabled) ? (openBlock(), createElementBlock("div", {
360
+ key: 0,
361
+ class: normalizeClass(unref(ns).be("picker", "mask"))
362
+ }, null, 2)) : createCommentVNode("v-if", true),
363
+ createElementVNode("div", {
364
+ class: normalizeClass(unref(ns).be("picker", "trigger")),
365
+ onClick: handleTrigger
366
+ }, [
367
+ createElementVNode("span", {
368
+ class: normalizeClass([unref(ns).be("picker", "color"), unref(ns).is("alpha", _ctx.showAlpha)])
369
+ }, [
370
+ createElementVNode("span", {
371
+ class: normalizeClass(unref(ns).be("picker", "color-inner")),
372
+ style: normalizeStyle({
373
+ backgroundColor: unref(displayedColor)
374
+ })
375
+ }, [
376
+ withDirectives(createVNode(unref(ElIcon), {
377
+ class: normalizeClass([unref(ns).be("picker", "icon"), unref(ns).is("icon-arrow-down")])
378
+ }, {
379
+ default: withCtx(() => [
380
+ createVNode(unref(ArrowDown))
381
+ ]),
382
+ _: 1
383
+ }, 8, ["class"]), [
384
+ [vShow, _ctx.modelValue || showPanelColor.value]
385
+ ]),
386
+ withDirectives(createVNode(unref(ElIcon), {
387
+ class: normalizeClass([unref(ns).be("picker", "empty"), unref(ns).is("icon-close")])
388
+ }, {
389
+ default: withCtx(() => [
390
+ createVNode(unref(Close))
391
+ ]),
392
+ _: 1
393
+ }, 8, ["class"]), [
394
+ [vShow, !_ctx.modelValue && !showPanelColor.value]
395
+ ])
396
+ ], 6)
397
+ ], 2)
398
+ ], 2)
399
+ ], 42, _hoisted_2)
400
+ ]),
401
+ _: 1
402
+ }, 8, ["visible", "popper-class", "transition"]);
403
+ };
35
404
  }
36
405
  });
37
- const colorPickerEmits = {
38
- [UPDATE_MODEL_EVENT]: (val) => isString(val) || isNil(val),
39
- [CHANGE_EVENT]: (val) => isString(val) || isNil(val),
40
- activeChange: (val) => isString(val) || isNil(val),
41
- focus: (event) => event instanceof FocusEvent,
42
- blur: (event) => event instanceof FocusEvent
43
- };
44
- const colorPickerContextKey = Symbol("colorPickerContextKey");
406
+ var ColorPicker = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "color-picker.vue"]]);
45
407
 
46
- export { colorPickerContextKey, colorPickerEmits, colorPickerProps };
408
+ export { ColorPicker as default };
47
409
  //# sourceMappingURL=color-picker.mjs.map