@element-plus/nightly 0.0.20240817 → 0.0.20240819

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 (308) hide show
  1. package/dist/index.full.js +5 -7
  2. package/dist/index.full.min.js +9 -9
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +10 -10
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +5 -7
  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/my.js +1 -1
  152. package/dist/locale/my.min.js +1 -1
  153. package/dist/locale/my.min.mjs +1 -1
  154. package/dist/locale/my.mjs +1 -1
  155. package/dist/locale/nb-no.js +1 -1
  156. package/dist/locale/nb-no.min.js +1 -1
  157. package/dist/locale/nb-no.min.mjs +1 -1
  158. package/dist/locale/nb-no.mjs +1 -1
  159. package/dist/locale/nl.js +1 -1
  160. package/dist/locale/nl.min.js +1 -1
  161. package/dist/locale/nl.min.mjs +1 -1
  162. package/dist/locale/nl.mjs +1 -1
  163. package/dist/locale/pa.js +1 -1
  164. package/dist/locale/pa.min.js +1 -1
  165. package/dist/locale/pa.min.mjs +1 -1
  166. package/dist/locale/pa.mjs +1 -1
  167. package/dist/locale/pl.js +1 -1
  168. package/dist/locale/pl.min.js +1 -1
  169. package/dist/locale/pl.min.mjs +1 -1
  170. package/dist/locale/pl.mjs +1 -1
  171. package/dist/locale/pt-br.js +1 -1
  172. package/dist/locale/pt-br.min.js +1 -1
  173. package/dist/locale/pt-br.min.mjs +1 -1
  174. package/dist/locale/pt-br.mjs +1 -1
  175. package/dist/locale/pt.js +1 -1
  176. package/dist/locale/pt.min.js +1 -1
  177. package/dist/locale/pt.min.mjs +1 -1
  178. package/dist/locale/pt.mjs +1 -1
  179. package/dist/locale/ro.js +1 -1
  180. package/dist/locale/ro.min.js +1 -1
  181. package/dist/locale/ro.min.mjs +1 -1
  182. package/dist/locale/ro.mjs +1 -1
  183. package/dist/locale/ru.js +1 -1
  184. package/dist/locale/ru.min.js +1 -1
  185. package/dist/locale/ru.min.mjs +1 -1
  186. package/dist/locale/ru.mjs +1 -1
  187. package/dist/locale/sk.js +1 -1
  188. package/dist/locale/sk.min.js +1 -1
  189. package/dist/locale/sk.min.mjs +1 -1
  190. package/dist/locale/sk.mjs +1 -1
  191. package/dist/locale/sl.js +1 -1
  192. package/dist/locale/sl.min.js +1 -1
  193. package/dist/locale/sl.min.mjs +1 -1
  194. package/dist/locale/sl.mjs +1 -1
  195. package/dist/locale/sr.js +1 -1
  196. package/dist/locale/sr.min.js +1 -1
  197. package/dist/locale/sr.min.mjs +1 -1
  198. package/dist/locale/sr.mjs +1 -1
  199. package/dist/locale/sv.js +1 -1
  200. package/dist/locale/sv.min.js +1 -1
  201. package/dist/locale/sv.min.mjs +1 -1
  202. package/dist/locale/sv.mjs +1 -1
  203. package/dist/locale/sw.js +1 -1
  204. package/dist/locale/sw.min.js +1 -1
  205. package/dist/locale/sw.min.mjs +1 -1
  206. package/dist/locale/sw.mjs +1 -1
  207. package/dist/locale/ta.js +1 -1
  208. package/dist/locale/ta.min.js +1 -1
  209. package/dist/locale/ta.min.mjs +1 -1
  210. package/dist/locale/ta.mjs +1 -1
  211. package/dist/locale/th.js +1 -1
  212. package/dist/locale/th.min.js +1 -1
  213. package/dist/locale/th.min.mjs +1 -1
  214. package/dist/locale/th.mjs +1 -1
  215. package/dist/locale/tk.js +1 -1
  216. package/dist/locale/tk.min.js +1 -1
  217. package/dist/locale/tk.min.mjs +1 -1
  218. package/dist/locale/tk.mjs +1 -1
  219. package/dist/locale/tr.js +1 -1
  220. package/dist/locale/tr.min.js +1 -1
  221. package/dist/locale/tr.min.mjs +1 -1
  222. package/dist/locale/tr.mjs +1 -1
  223. package/dist/locale/ug-cn.js +1 -1
  224. package/dist/locale/ug-cn.min.js +1 -1
  225. package/dist/locale/ug-cn.min.mjs +1 -1
  226. package/dist/locale/ug-cn.mjs +1 -1
  227. package/dist/locale/uk.js +1 -1
  228. package/dist/locale/uk.min.js +1 -1
  229. package/dist/locale/uk.min.mjs +1 -1
  230. package/dist/locale/uk.mjs +1 -1
  231. package/dist/locale/uz-uz.js +1 -1
  232. package/dist/locale/uz-uz.min.js +1 -1
  233. package/dist/locale/uz-uz.min.mjs +1 -1
  234. package/dist/locale/uz-uz.mjs +1 -1
  235. package/dist/locale/vi.js +1 -1
  236. package/dist/locale/vi.min.js +1 -1
  237. package/dist/locale/vi.min.mjs +1 -1
  238. package/dist/locale/vi.mjs +1 -1
  239. package/dist/locale/zh-cn.js +1 -1
  240. package/dist/locale/zh-cn.min.js +1 -1
  241. package/dist/locale/zh-cn.min.mjs +1 -1
  242. package/dist/locale/zh-cn.mjs +1 -1
  243. package/dist/locale/zh-tw.js +1 -1
  244. package/dist/locale/zh-tw.min.js +1 -1
  245. package/dist/locale/zh-tw.min.mjs +1 -1
  246. package/dist/locale/zh-tw.mjs +1 -1
  247. package/es/components/dropdown/src/dropdown.mjs +1 -1
  248. package/es/components/index.mjs +3 -3
  249. package/es/components/popover/src/popover.mjs +1 -1
  250. package/es/components/segmented/src/segmented2.mjs +1 -4
  251. package/es/components/segmented/src/segmented2.mjs.map +1 -1
  252. package/es/components/statistic/index.mjs +2 -2
  253. package/es/components/statistic/src/statistic.mjs +70 -25
  254. package/es/components/statistic/src/statistic.mjs.map +1 -1
  255. package/es/components/statistic/src/statistic2.mjs +25 -70
  256. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  257. package/es/components/table/src/store/watcher.mjs +2 -1
  258. package/es/components/table/src/store/watcher.mjs.map +1 -1
  259. package/es/components/tooltip/index.mjs +1 -1
  260. package/es/components/tooltip/src/tooltip.mjs +1 -1
  261. package/es/components/tooltip/src/tooltip2.mjs +1 -1
  262. package/es/components/tooltip/src/trigger.mjs +16 -73
  263. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  264. package/es/components/tooltip/src/trigger2.mjs +73 -16
  265. package/es/components/tooltip/src/trigger2.mjs.map +1 -1
  266. package/es/components/tree/src/model/tree-store.mjs +1 -0
  267. package/es/components/tree/src/model/tree-store.mjs.map +1 -1
  268. package/es/components/watermark/index.mjs +2 -2
  269. package/es/components/watermark/src/watermark.mjs +209 -28
  270. package/es/components/watermark/src/watermark.mjs.map +1 -1
  271. package/es/components/watermark/src/watermark2.mjs +28 -209
  272. package/es/components/watermark/src/watermark2.mjs.map +1 -1
  273. package/es/index.mjs +3 -3
  274. package/es/version.d.ts +1 -1
  275. package/es/version.mjs +1 -1
  276. package/es/version.mjs.map +1 -1
  277. package/lib/components/dropdown/src/dropdown.js +1 -1
  278. package/lib/components/index.js +3 -3
  279. package/lib/components/popover/src/popover.js +1 -1
  280. package/lib/components/segmented/src/segmented2.js +1 -4
  281. package/lib/components/segmented/src/segmented2.js.map +1 -1
  282. package/lib/components/statistic/index.js +2 -2
  283. package/lib/components/statistic/src/statistic.js +70 -25
  284. package/lib/components/statistic/src/statistic.js.map +1 -1
  285. package/lib/components/statistic/src/statistic2.js +25 -70
  286. package/lib/components/statistic/src/statistic2.js.map +1 -1
  287. package/lib/components/table/src/store/watcher.js +2 -1
  288. package/lib/components/table/src/store/watcher.js.map +1 -1
  289. package/lib/components/tooltip/index.js +1 -1
  290. package/lib/components/tooltip/src/tooltip.js +1 -1
  291. package/lib/components/tooltip/src/tooltip2.js +1 -1
  292. package/lib/components/tooltip/src/trigger.js +16 -73
  293. package/lib/components/tooltip/src/trigger.js.map +1 -1
  294. package/lib/components/tooltip/src/trigger2.js +73 -16
  295. package/lib/components/tooltip/src/trigger2.js.map +1 -1
  296. package/lib/components/tree/src/model/tree-store.js +1 -0
  297. package/lib/components/tree/src/model/tree-store.js.map +1 -1
  298. package/lib/components/watermark/index.js +2 -2
  299. package/lib/components/watermark/src/watermark.js +209 -28
  300. package/lib/components/watermark/src/watermark.js.map +1 -1
  301. package/lib/components/watermark/src/watermark2.js +28 -209
  302. package/lib/components/watermark/src/watermark2.js.map +1 -1
  303. package/lib/index.js +3 -3
  304. package/lib/version.d.ts +1 -1
  305. package/lib/version.js +1 -1
  306. package/lib/version.js.map +1 -1
  307. package/package.json +2 -2
  308. package/web-types.json +1 -1
@@ -2,82 +2,25 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- require('../../popper/index.js');
7
5
  require('../../../utils/index.js');
8
- require('../../../hooks/index.js');
9
- var constants = require('./constants.js');
10
- var trigger = require('./trigger2.js');
11
- var utils = require('./utils.js');
12
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
13
- var index = require('../../../hooks/use-namespace/index.js');
14
- var event = require('../../../utils/dom/event.js');
15
- var trigger$1 = require('../../popper/src/trigger2.js');
6
+ require('../../popper/index.js');
7
+ require('../../../constants/index.js');
8
+ var runtime = require('../../../utils/vue/props/runtime.js');
9
+ var trigger = require('../../popper/src/trigger.js');
10
+ var aria = require('../../../constants/aria.js');
16
11
 
17
- const __default__ = vue.defineComponent({
18
- name: "ElTooltipTrigger"
19
- });
20
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
21
- ...__default__,
22
- props: trigger.useTooltipTriggerProps,
23
- setup(__props, { expose }) {
24
- const props = __props;
25
- const ns = index.useNamespace("tooltip");
26
- const { controlled, id, open, onOpen, onClose, onToggle } = vue.inject(constants.TOOLTIP_INJECTION_KEY, void 0);
27
- const triggerRef = vue.ref(null);
28
- const stopWhenControlledOrDisabled = () => {
29
- if (vue.unref(controlled) || props.disabled) {
30
- return true;
31
- }
32
- };
33
- const trigger = vue.toRef(props, "trigger");
34
- const onMouseenter = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "hover", onOpen));
35
- const onMouseleave = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "hover", onClose));
36
- const onClick = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "click", (e) => {
37
- if (e.button === 0) {
38
- onToggle(e);
39
- }
40
- }));
41
- const onFocus = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "focus", onOpen));
42
- const onBlur = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "focus", onClose));
43
- const onContextMenu = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "contextmenu", (e) => {
44
- e.preventDefault();
45
- onToggle(e);
46
- }));
47
- const onKeydown = event.composeEventHandlers(stopWhenControlledOrDisabled, (e) => {
48
- const { code } = e;
49
- if (props.triggerKeys.includes(code)) {
50
- e.preventDefault();
51
- onToggle(e);
52
- }
53
- });
54
- expose({
55
- triggerRef
56
- });
57
- return (_ctx, _cache) => {
58
- return vue.openBlock(), vue.createBlock(vue.unref(trigger$1["default"]), {
59
- id: vue.unref(id),
60
- "virtual-ref": _ctx.virtualRef,
61
- open: vue.unref(open),
62
- "virtual-triggering": _ctx.virtualTriggering,
63
- class: vue.normalizeClass(vue.unref(ns).e("trigger")),
64
- onBlur: vue.unref(onBlur),
65
- onClick: vue.unref(onClick),
66
- onContextmenu: vue.unref(onContextMenu),
67
- onFocus: vue.unref(onFocus),
68
- onMouseenter: vue.unref(onMouseenter),
69
- onMouseleave: vue.unref(onMouseleave),
70
- onKeydown: vue.unref(onKeydown)
71
- }, {
72
- default: vue.withCtx(() => [
73
- vue.renderSlot(_ctx.$slots, "default")
74
- ]),
75
- _: 3
76
- }, 8, ["id", "virtual-ref", "open", "virtual-triggering", "class", "onBlur", "onClick", "onContextmenu", "onFocus", "onMouseenter", "onMouseleave", "onKeydown"]);
77
- };
12
+ const useTooltipTriggerProps = runtime.buildProps({
13
+ ...trigger.popperTriggerProps,
14
+ disabled: Boolean,
15
+ trigger: {
16
+ type: runtime.definePropType([String, Array]),
17
+ default: "hover"
18
+ },
19
+ triggerKeys: {
20
+ type: runtime.definePropType(Array),
21
+ default: () => [aria.EVENT_CODE.enter, aria.EVENT_CODE.space]
78
22
  }
79
23
  });
80
- var ElTooltipTrigger = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "trigger.vue"]]);
81
24
 
82
- exports["default"] = ElTooltipTrigger;
25
+ exports.useTooltipTriggerProps = useTooltipTriggerProps;
83
26
  //# sourceMappingURL=trigger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.js","sources":["../../../../../../packages/components/tooltip/src/trigger.vue"],"sourcesContent":["<template>\n <el-popper-trigger\n :id=\"id\"\n :virtual-ref=\"virtualRef\"\n :open=\"open\"\n :virtual-triggering=\"virtualTriggering\"\n :class=\"ns.e('trigger')\"\n @blur=\"onBlur\"\n @click=\"onClick\"\n @contextmenu=\"onContextMenu\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseenter\"\n @mouseleave=\"onMouseleave\"\n @keydown=\"onKeydown\"\n >\n <slot />\n </el-popper-trigger>\n</template>\n<script lang=\"ts\" setup>\nimport { inject, ref, toRef, unref } from 'vue'\nimport { ElPopperTrigger } from '@element-plus/components/popper'\nimport { composeEventHandlers } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { TOOLTIP_INJECTION_KEY } from './constants'\nimport { useTooltipTriggerProps } from './trigger'\nimport { whenTrigger } from './utils'\nimport type { OnlyChildExpose } from '@element-plus/components/slot'\n\ndefineOptions({\n name: 'ElTooltipTrigger',\n})\n\nconst props = defineProps(useTooltipTriggerProps)\n\nconst ns = useNamespace('tooltip')\nconst { controlled, id, open, onOpen, onClose, onToggle } = inject(\n TOOLTIP_INJECTION_KEY,\n undefined\n)!\n\nconst triggerRef = ref<OnlyChildExpose | null>(null)\n\nconst stopWhenControlledOrDisabled = () => {\n if (unref(controlled) || props.disabled) {\n return true\n }\n}\nconst trigger = toRef(props, 'trigger')\nconst onMouseenter = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onOpen)\n)\nconst onMouseleave = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onClose)\n)\nconst onClick = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'click', (e) => {\n // distinguish left click\n if ((e as MouseEvent).button === 0) {\n onToggle(e)\n }\n })\n)\n\nconst onFocus = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onOpen)\n)\n\nconst onBlur = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onClose)\n)\n\nconst onContextMenu = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'contextmenu', (e: Event) => {\n e.preventDefault()\n onToggle(e)\n })\n)\n\nconst onKeydown = composeEventHandlers(\n stopWhenControlledOrDisabled,\n (e: KeyboardEvent) => {\n const { code } = e\n if (props.triggerKeys.includes(code)) {\n e.preventDefault()\n onToggle(e)\n }\n }\n)\n\ndefineExpose({\n /**\n * @description trigger element\n */\n triggerRef,\n})\n</script>\n"],"names":["useNamespace","inject","TOOLTIP_INJECTION_KEY","ref","unref","toRef","composeEventHandlers","whenTrigger"],"mappings":";;;;;;;;;;;;;;;;uCA4Bc,CAAA;AAAA,EACZ,IAAM,EAAA,kBAAA;AACR,CAAA,CAAA,CAAA;;;;;;AAIA,IAAM,MAAA,EAAA,GAAKA,mBAAa,SAAS,CAAA,CAAA;AACjC,IAAM,MAAA,EAAE,YAAY,EAAI,EAAA,IAAA,EAAM,QAAQ,OAAS,EAAA,QAAA,EAAA,GAAaC,UAC1D,CAAAC,+BAAA,EACA,KACF,CAAA,CAAA,CAAA;AAEA,IAAM,MAAA,UAAA,GAAaC,QAA4B,IAAI,CAAA,CAAA;AAEnD,IAAA,MAAM,+BAA+B,MAAM;AACzC,MAAA,IAAIC,SAAM,CAAA,UAAU,CAAK,IAAA,KAAA,CAAM,QAAU,EAAA;AACvC,QAAO,OAAA,IAAA,CAAA;AAAA,OACT;AAAA,KACF,CAAA;AACA,IAAM,MAAA,OAAA,GAAUC,SAAM,CAAA,KAAA,EAAO,SAAS,CAAA,CAAA;AACtC,IAAA,MAAM,eAAeC,0BACnB,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,OAAA,EAAS,MAAM,CACtC,CAAA,CAAA;AACA,IAAA,MAAM,eAAeD,0BACnB,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,OAAA,EAAS,OAAO,CACvC,CAAA,CAAA;AACA,IAAA,MAAM,UAAUD,0BACd,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,OAAA,EAAS,CAAC,CAAM,KAAA;AAEnC,MAAK,IAAA,CAAA,CAAiB,WAAW,CAAG,EAAA;AAClC,QAAA,QAAA,CAAS,CAAC,CAAA,CAAA;AAAA,OACZ;AAAA,KACD,CACH,CAAA,CAAA;AAEA,IAAA,MAAM,UAAUD,0BACd,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,OAAA,EAAS,MAAM,CACtC,CAAA,CAAA;AAEA,IAAA,MAAM,SAASD,0BACb,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,OAAA,EAAS,OAAO,CACvC,CAAA,CAAA;AAEA,IAAA,MAAM,gBAAgBD,0BACpB,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,aAAA,EAAe,CAAC,CAAa,KAAA;AAChD,MAAA,CAAA,CAAE,cAAe,EAAA,CAAA;AACjB,MAAA,QAAA,CAAS,CAAC,CAAA,CAAA;AAAA,KACX,CACH,CAAA,CAAA;AAEA,IAAA,MAAM,SAAY,GAAAD,0BAAA,CAChB,4BACA,EAAA,CAAC,CAAqB,KAAA;AACpB,MAAA,MAAM,EAAE,IAAS,EAAA,GAAA,CAAA,CAAA;AACjB,MAAA,IAAI,KAAM,CAAA,WAAA,CAAY,QAAS,CAAA,IAAI,CAAG,EAAA;AACpC,QAAA,CAAA,CAAE,cAAe,EAAA,CAAA;AACjB,QAAA,QAAA,CAAS,CAAC,CAAA,CAAA;AAAA,OACZ;AAAA,KAEJ,CAAA,CAAA;AAEA,IAAa,MAAA,CAAA;AAAA,MAIX,UAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"trigger.js","sources":["../../../../../../packages/components/tooltip/src/trigger.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\nimport { popperTriggerProps } from '@element-plus/components/popper'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport type { Arrayable } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\n\nexport type TooltipTriggerType = 'hover' | 'focus' | 'click' | 'contextmenu'\n\nexport const useTooltipTriggerProps = buildProps({\n ...popperTriggerProps,\n /**\n * @description whether Tooltip is disabled\n */\n disabled: Boolean,\n /**\n * @description How should the tooltip be triggered (to show)\n */\n trigger: {\n type: definePropType<Arrayable<TooltipTriggerType>>([String, Array]),\n default: 'hover',\n },\n /**\n * @description When you click the mouse to focus on the trigger element, you can define a set of keyboard codes to control the display of tooltip through the keyboard\n */\n triggerKeys: {\n type: definePropType<string[]>(Array),\n default: () => [EVENT_CODE.enter, EVENT_CODE.space],\n },\n} as const)\n\nexport type ElTooltipTriggerProps = ExtractPropTypes<\n typeof useTooltipTriggerProps\n>\n"],"names":["buildProps","popperTriggerProps","definePropType","EVENT_CODE"],"mappings":";;;;;;;;;;;AAGY,MAAC,sBAAsB,GAAGA,kBAAU,CAAC;AACjD,EAAE,GAAGC,0BAAkB;AACvB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,CAACC,eAAU,CAAC,KAAK,EAAEA,eAAU,CAAC,KAAK,CAAC;AACvD,GAAG;AACH,CAAC;;;;"}
@@ -2,25 +2,82 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../../utils/index.js');
5
+ var vue = require('vue');
6
6
  require('../../popper/index.js');
7
- require('../../../constants/index.js');
8
- var runtime = require('../../../utils/vue/props/runtime.js');
9
- var trigger = require('../../popper/src/trigger.js');
10
- var aria = require('../../../constants/aria.js');
7
+ require('../../../utils/index.js');
8
+ require('../../../hooks/index.js');
9
+ var constants = require('./constants.js');
10
+ var trigger = require('./trigger.js');
11
+ var utils = require('./utils.js');
12
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
13
+ var index = require('../../../hooks/use-namespace/index.js');
14
+ var event = require('../../../utils/dom/event.js');
15
+ var trigger$1 = require('../../popper/src/trigger2.js');
11
16
 
12
- const useTooltipTriggerProps = runtime.buildProps({
13
- ...trigger.popperTriggerProps,
14
- disabled: Boolean,
15
- trigger: {
16
- type: runtime.definePropType([String, Array]),
17
- default: "hover"
18
- },
19
- triggerKeys: {
20
- type: runtime.definePropType(Array),
21
- default: () => [aria.EVENT_CODE.enter, aria.EVENT_CODE.space]
17
+ const __default__ = vue.defineComponent({
18
+ name: "ElTooltipTrigger"
19
+ });
20
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
21
+ ...__default__,
22
+ props: trigger.useTooltipTriggerProps,
23
+ setup(__props, { expose }) {
24
+ const props = __props;
25
+ const ns = index.useNamespace("tooltip");
26
+ const { controlled, id, open, onOpen, onClose, onToggle } = vue.inject(constants.TOOLTIP_INJECTION_KEY, void 0);
27
+ const triggerRef = vue.ref(null);
28
+ const stopWhenControlledOrDisabled = () => {
29
+ if (vue.unref(controlled) || props.disabled) {
30
+ return true;
31
+ }
32
+ };
33
+ const trigger = vue.toRef(props, "trigger");
34
+ const onMouseenter = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "hover", onOpen));
35
+ const onMouseleave = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "hover", onClose));
36
+ const onClick = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "click", (e) => {
37
+ if (e.button === 0) {
38
+ onToggle(e);
39
+ }
40
+ }));
41
+ const onFocus = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "focus", onOpen));
42
+ const onBlur = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "focus", onClose));
43
+ const onContextMenu = event.composeEventHandlers(stopWhenControlledOrDisabled, utils.whenTrigger(trigger, "contextmenu", (e) => {
44
+ e.preventDefault();
45
+ onToggle(e);
46
+ }));
47
+ const onKeydown = event.composeEventHandlers(stopWhenControlledOrDisabled, (e) => {
48
+ const { code } = e;
49
+ if (props.triggerKeys.includes(code)) {
50
+ e.preventDefault();
51
+ onToggle(e);
52
+ }
53
+ });
54
+ expose({
55
+ triggerRef
56
+ });
57
+ return (_ctx, _cache) => {
58
+ return vue.openBlock(), vue.createBlock(vue.unref(trigger$1["default"]), {
59
+ id: vue.unref(id),
60
+ "virtual-ref": _ctx.virtualRef,
61
+ open: vue.unref(open),
62
+ "virtual-triggering": _ctx.virtualTriggering,
63
+ class: vue.normalizeClass(vue.unref(ns).e("trigger")),
64
+ onBlur: vue.unref(onBlur),
65
+ onClick: vue.unref(onClick),
66
+ onContextmenu: vue.unref(onContextMenu),
67
+ onFocus: vue.unref(onFocus),
68
+ onMouseenter: vue.unref(onMouseenter),
69
+ onMouseleave: vue.unref(onMouseleave),
70
+ onKeydown: vue.unref(onKeydown)
71
+ }, {
72
+ default: vue.withCtx(() => [
73
+ vue.renderSlot(_ctx.$slots, "default")
74
+ ]),
75
+ _: 3
76
+ }, 8, ["id", "virtual-ref", "open", "virtual-triggering", "class", "onBlur", "onClick", "onContextmenu", "onFocus", "onMouseenter", "onMouseleave", "onKeydown"]);
77
+ };
22
78
  }
23
79
  });
80
+ var ElTooltipTrigger = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "trigger.vue"]]);
24
81
 
25
- exports.useTooltipTriggerProps = useTooltipTriggerProps;
82
+ exports["default"] = ElTooltipTrigger;
26
83
  //# sourceMappingURL=trigger2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trigger2.js","sources":["../../../../../../packages/components/tooltip/src/trigger.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\nimport { popperTriggerProps } from '@element-plus/components/popper'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport type { Arrayable } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\n\nexport type TooltipTriggerType = 'hover' | 'focus' | 'click' | 'contextmenu'\n\nexport const useTooltipTriggerProps = buildProps({\n ...popperTriggerProps,\n /**\n * @description whether Tooltip is disabled\n */\n disabled: Boolean,\n /**\n * @description How should the tooltip be triggered (to show)\n */\n trigger: {\n type: definePropType<Arrayable<TooltipTriggerType>>([String, Array]),\n default: 'hover',\n },\n /**\n * @description When you click the mouse to focus on the trigger element, you can define a set of keyboard codes to control the display of tooltip through the keyboard\n */\n triggerKeys: {\n type: definePropType<string[]>(Array),\n default: () => [EVENT_CODE.enter, EVENT_CODE.space],\n },\n} as const)\n\nexport type ElTooltipTriggerProps = ExtractPropTypes<\n typeof useTooltipTriggerProps\n>\n"],"names":["buildProps","popperTriggerProps","definePropType","EVENT_CODE"],"mappings":";;;;;;;;;;;AAGY,MAAC,sBAAsB,GAAGA,kBAAU,CAAC;AACjD,EAAE,GAAGC,0BAAkB;AACvB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,CAACC,eAAU,CAAC,KAAK,EAAEA,eAAU,CAAC,KAAK,CAAC;AACvD,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"trigger2.js","sources":["../../../../../../packages/components/tooltip/src/trigger.vue"],"sourcesContent":["<template>\n <el-popper-trigger\n :id=\"id\"\n :virtual-ref=\"virtualRef\"\n :open=\"open\"\n :virtual-triggering=\"virtualTriggering\"\n :class=\"ns.e('trigger')\"\n @blur=\"onBlur\"\n @click=\"onClick\"\n @contextmenu=\"onContextMenu\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseenter\"\n @mouseleave=\"onMouseleave\"\n @keydown=\"onKeydown\"\n >\n <slot />\n </el-popper-trigger>\n</template>\n<script lang=\"ts\" setup>\nimport { inject, ref, toRef, unref } from 'vue'\nimport { ElPopperTrigger } from '@element-plus/components/popper'\nimport { composeEventHandlers } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { TOOLTIP_INJECTION_KEY } from './constants'\nimport { useTooltipTriggerProps } from './trigger'\nimport { whenTrigger } from './utils'\nimport type { OnlyChildExpose } from '@element-plus/components/slot'\n\ndefineOptions({\n name: 'ElTooltipTrigger',\n})\n\nconst props = defineProps(useTooltipTriggerProps)\n\nconst ns = useNamespace('tooltip')\nconst { controlled, id, open, onOpen, onClose, onToggle } = inject(\n TOOLTIP_INJECTION_KEY,\n undefined\n)!\n\nconst triggerRef = ref<OnlyChildExpose | null>(null)\n\nconst stopWhenControlledOrDisabled = () => {\n if (unref(controlled) || props.disabled) {\n return true\n }\n}\nconst trigger = toRef(props, 'trigger')\nconst onMouseenter = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onOpen)\n)\nconst onMouseleave = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onClose)\n)\nconst onClick = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'click', (e) => {\n // distinguish left click\n if ((e as MouseEvent).button === 0) {\n onToggle(e)\n }\n })\n)\n\nconst onFocus = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onOpen)\n)\n\nconst onBlur = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onClose)\n)\n\nconst onContextMenu = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'contextmenu', (e: Event) => {\n e.preventDefault()\n onToggle(e)\n })\n)\n\nconst onKeydown = composeEventHandlers(\n stopWhenControlledOrDisabled,\n (e: KeyboardEvent) => {\n const { code } = e\n if (props.triggerKeys.includes(code)) {\n e.preventDefault()\n onToggle(e)\n }\n }\n)\n\ndefineExpose({\n /**\n * @description trigger element\n */\n triggerRef,\n})\n</script>\n"],"names":["useNamespace","inject","TOOLTIP_INJECTION_KEY","ref","unref","toRef","composeEventHandlers","whenTrigger"],"mappings":";;;;;;;;;;;;;;;;uCA4Bc,CAAA;AAAA,EACZ,IAAM,EAAA,kBAAA;AACR,CAAA,CAAA,CAAA;;;;;;AAIA,IAAM,MAAA,EAAA,GAAKA,mBAAa,SAAS,CAAA,CAAA;AACjC,IAAM,MAAA,EAAE,YAAY,EAAI,EAAA,IAAA,EAAM,QAAQ,OAAS,EAAA,QAAA,EAAA,GAAaC,UAC1D,CAAAC,+BAAA,EACA,KACF,CAAA,CAAA,CAAA;AAEA,IAAM,MAAA,UAAA,GAAaC,QAA4B,IAAI,CAAA,CAAA;AAEnD,IAAA,MAAM,+BAA+B,MAAM;AACzC,MAAA,IAAIC,SAAM,CAAA,UAAU,CAAK,IAAA,KAAA,CAAM,QAAU,EAAA;AACvC,QAAO,OAAA,IAAA,CAAA;AAAA,OACT;AAAA,KACF,CAAA;AACA,IAAM,MAAA,OAAA,GAAUC,SAAM,CAAA,KAAA,EAAO,SAAS,CAAA,CAAA;AACtC,IAAA,MAAM,eAAeC,0BACnB,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,OAAA,EAAS,MAAM,CACtC,CAAA,CAAA;AACA,IAAA,MAAM,eAAeD,0BACnB,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,OAAA,EAAS,OAAO,CACvC,CAAA,CAAA;AACA,IAAA,MAAM,UAAUD,0BACd,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,OAAA,EAAS,CAAC,CAAM,KAAA;AAEnC,MAAK,IAAA,CAAA,CAAiB,WAAW,CAAG,EAAA;AAClC,QAAA,QAAA,CAAS,CAAC,CAAA,CAAA;AAAA,OACZ;AAAA,KACD,CACH,CAAA,CAAA;AAEA,IAAA,MAAM,UAAUD,0BACd,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,OAAA,EAAS,MAAM,CACtC,CAAA,CAAA;AAEA,IAAA,MAAM,SAASD,0BACb,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,OAAA,EAAS,OAAO,CACvC,CAAA,CAAA;AAEA,IAAA,MAAM,gBAAgBD,0BACpB,CAAA,4BAAA,EACAC,kBAAY,OAAS,EAAA,aAAA,EAAe,CAAC,CAAa,KAAA;AAChD,MAAA,CAAA,CAAE,cAAe,EAAA,CAAA;AACjB,MAAA,QAAA,CAAS,CAAC,CAAA,CAAA;AAAA,KACX,CACH,CAAA,CAAA;AAEA,IAAA,MAAM,SAAY,GAAAD,0BAAA,CAChB,4BACA,EAAA,CAAC,CAAqB,KAAA;AACpB,MAAA,MAAM,EAAE,IAAS,EAAA,GAAA,CAAA,CAAA;AACjB,MAAA,IAAI,KAAM,CAAA,WAAA,CAAY,QAAS,CAAA,IAAI,CAAG,EAAA;AACpC,QAAA,CAAA,CAAE,cAAe,EAAA,CAAA;AACjB,QAAA,QAAA,CAAS,CAAC,CAAA,CAAA;AAAA,OACZ;AAAA,KAEJ,CAAA,CAAA;AAEA,IAAa,MAAA,CAAA;AAAA,MAIX,UAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -69,6 +69,7 @@ class TreeStore {
69
69
  setData(newVal) {
70
70
  const instanceChanged = newVal !== this.root.data;
71
71
  if (instanceChanged) {
72
+ this.nodesMap = {};
72
73
  this.root.setData(newVal);
73
74
  this._initDefaultCheckedNodes();
74
75
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"tree-store.js","sources":["../../../../../../../packages/components/tree/src/model/tree-store.ts"],"sourcesContent":["// @ts-nocheck\nimport { hasOwn, isObject, isPropAbsent } from '@element-plus/utils'\nimport Node from './node'\nimport { getNodeKey } from './util'\n\nimport type {\n FilterNodeMethodFunction,\n FilterValue,\n LoadFunction,\n TreeData,\n TreeKey,\n TreeNodeData,\n TreeOptionProps,\n TreeStoreNodesMap,\n TreeStoreOptions,\n} from '../tree.type'\n\nexport default class TreeStore {\n currentNode: Node\n currentNodeKey: TreeKey\n nodesMap: TreeStoreNodesMap\n root: Node\n data: TreeData\n lazy: boolean\n load: LoadFunction\n filterNodeMethod: FilterNodeMethodFunction\n key: TreeKey\n defaultCheckedKeys: TreeKey[]\n checkStrictly: boolean\n defaultExpandedKeys: TreeKey[]\n autoExpandParent: boolean\n defaultExpandAll: boolean\n checkDescendants: boolean\n props: TreeOptionProps\n\n constructor(options: TreeStoreOptions) {\n this.currentNode = null\n this.currentNodeKey = null\n\n for (const option in options) {\n if (hasOwn(options, option)) {\n this[option] = options[option]\n }\n }\n\n this.nodesMap = {}\n }\n\n initialize() {\n this.root = new Node({\n data: this.data,\n store: this,\n })\n this.root.initialize()\n\n if (this.lazy && this.load) {\n const loadFn = this.load\n loadFn(this.root, (data) => {\n this.root.doCreateChildren(data)\n this._initDefaultCheckedNodes()\n })\n } else {\n this._initDefaultCheckedNodes()\n }\n }\n\n filter(value: FilterValue): void {\n const filterNodeMethod = this.filterNodeMethod\n const lazy = this.lazy\n const traverse = function (node: TreeStore | Node) {\n const childNodes = (node as TreeStore).root\n ? (node as TreeStore).root.childNodes\n : (node as Node).childNodes\n\n childNodes.forEach((child) => {\n child.visible = filterNodeMethod.call(child, value, child.data, child)\n\n traverse(child)\n })\n\n if (!(node as Node).visible && childNodes.length) {\n let allHidden = true\n allHidden = !childNodes.some((child) => child.visible)\n\n if ((node as TreeStore).root) {\n ;(node as TreeStore).root.visible = allHidden === false\n } else {\n ;(node as Node).visible = allHidden === false\n }\n }\n if (!value) return\n\n if ((node as Node).visible && !(node as Node).isLeaf) {\n if (!lazy || node.loaded) {\n ;(node as Node).expand()\n }\n }\n }\n\n traverse(this)\n }\n\n setData(newVal: TreeData): void {\n const instanceChanged = newVal !== this.root.data\n if (instanceChanged) {\n this.root.setData(newVal)\n this._initDefaultCheckedNodes()\n } else {\n this.root.updateChildren()\n }\n }\n\n getNode(data: TreeKey | TreeNodeData | Node): Node {\n if (data instanceof Node) return data\n const key = isObject(data) ? getNodeKey(this.key, data) : data\n return this.nodesMap[key] || null\n }\n\n insertBefore(\n data: TreeNodeData,\n refData: TreeKey | TreeNodeData | Node\n ): void {\n const refNode = this.getNode(refData)\n refNode.parent.insertBefore({ data }, refNode)\n }\n\n insertAfter(\n data: TreeNodeData,\n refData: TreeKey | TreeNodeData | Node\n ): void {\n const refNode = this.getNode(refData)\n refNode.parent.insertAfter({ data }, refNode)\n }\n\n remove(data: TreeNodeData | Node): void {\n const node = this.getNode(data)\n\n if (node && node.parent) {\n if (node === this.currentNode) {\n this.currentNode = null\n }\n node.parent.removeChild(node)\n }\n }\n\n append(data: TreeNodeData, parentData: TreeNodeData | TreeKey | Node): void {\n const parentNode = !isPropAbsent(parentData)\n ? this.getNode(parentData)\n : this.root\n\n if (parentNode) {\n parentNode.insertChild({ data })\n }\n }\n\n _initDefaultCheckedNodes(): void {\n const defaultCheckedKeys = this.defaultCheckedKeys || []\n const nodesMap = this.nodesMap\n\n defaultCheckedKeys.forEach((checkedKey) => {\n const node = nodesMap[checkedKey]\n\n if (node) {\n node.setChecked(true, !this.checkStrictly)\n }\n })\n }\n\n _initDefaultCheckedNode(node: Node): void {\n const defaultCheckedKeys = this.defaultCheckedKeys || []\n\n if (defaultCheckedKeys.includes(node.key)) {\n node.setChecked(true, !this.checkStrictly)\n }\n }\n\n setDefaultCheckedKey(newVal: TreeKey[]): void {\n if (newVal !== this.defaultCheckedKeys) {\n this.defaultCheckedKeys = newVal\n this._initDefaultCheckedNodes()\n }\n }\n\n registerNode(node: Node): void {\n const key = this.key\n if (!node || !node.data) return\n\n if (!key) {\n this.nodesMap[node.id] = node\n } else {\n const nodeKey = node.key\n if (nodeKey !== undefined) this.nodesMap[node.key] = node\n }\n }\n\n deregisterNode(node: Node): void {\n const key = this.key\n if (!key || !node || !node.data) return\n\n node.childNodes.forEach((child) => {\n this.deregisterNode(child)\n })\n\n delete this.nodesMap[node.key]\n }\n\n getCheckedNodes(\n leafOnly = false,\n includeHalfChecked = false\n ): TreeNodeData[] {\n const checkedNodes: TreeNodeData[] = []\n const traverse = function (node: TreeStore | Node) {\n const childNodes = (node as TreeStore).root\n ? (node as TreeStore).root.childNodes\n : (node as Node).childNodes\n\n childNodes.forEach((child) => {\n if (\n (child.checked || (includeHalfChecked && child.indeterminate)) &&\n (!leafOnly || (leafOnly && child.isLeaf))\n ) {\n checkedNodes.push(child.data)\n }\n\n traverse(child)\n })\n }\n\n traverse(this)\n\n return checkedNodes\n }\n\n getCheckedKeys(leafOnly = false): TreeKey[] {\n return this.getCheckedNodes(leafOnly).map((data) => (data || {})[this.key])\n }\n\n getHalfCheckedNodes(): TreeNodeData[] {\n const nodes: TreeNodeData[] = []\n const traverse = function (node: TreeStore | Node) {\n const childNodes = (node as TreeStore).root\n ? (node as TreeStore).root.childNodes\n : (node as Node).childNodes\n\n childNodes.forEach((child) => {\n if (child.indeterminate) {\n nodes.push(child.data)\n }\n\n traverse(child)\n })\n }\n\n traverse(this)\n\n return nodes\n }\n\n getHalfCheckedKeys(): TreeKey[] {\n return this.getHalfCheckedNodes().map((data) => (data || {})[this.key])\n }\n\n _getAllNodes(): Node[] {\n const allNodes: Node[] = []\n const nodesMap = this.nodesMap\n for (const nodeKey in nodesMap) {\n if (hasOwn(nodesMap, nodeKey)) {\n allNodes.push(nodesMap[nodeKey])\n }\n }\n\n return allNodes\n }\n\n updateChildren(key: TreeKey, data: TreeData): void {\n const node = this.nodesMap[key]\n if (!node) return\n const childNodes = node.childNodes\n for (let i = childNodes.length - 1; i >= 0; i--) {\n const child = childNodes[i]\n this.remove(child.data)\n }\n for (let i = 0, j = data.length; i < j; i++) {\n const child = data[i]\n this.append(child, node.data)\n }\n }\n\n _setCheckedKeys(\n key: TreeKey,\n leafOnly = false,\n checkedKeys: { [key: string]: boolean }\n ): void {\n const allNodes = this._getAllNodes().sort((a, b) => a.level - b.level)\n const cache = Object.create(null)\n const keys = Object.keys(checkedKeys)\n allNodes.forEach((node) => node.setChecked(false, false))\n const cacheCheckedChild = (node) => {\n node.childNodes.forEach((child) => {\n cache[child.data[key]] = true\n if (child.childNodes?.length) {\n cacheCheckedChild(child)\n }\n })\n }\n for (let i = 0, j = allNodes.length; i < j; i++) {\n const node = allNodes[i]\n const nodeKey = node.data[key].toString()\n const checked = keys.includes(nodeKey)\n if (!checked) {\n if (node.checked && !cache[nodeKey]) {\n node.setChecked(false, false)\n }\n continue\n }\n\n if (node.childNodes.length) {\n cacheCheckedChild(node)\n }\n\n if (node.isLeaf || this.checkStrictly) {\n node.setChecked(true, false)\n continue\n }\n node.setChecked(true, true)\n\n if (leafOnly) {\n node.setChecked(false, false)\n const traverse = function (node: Node): void {\n const childNodes = node.childNodes\n childNodes.forEach((child) => {\n if (!child.isLeaf) {\n child.setChecked(false, false)\n }\n traverse(child)\n })\n }\n traverse(node)\n }\n }\n }\n\n setCheckedNodes(array: Node[], leafOnly = false): void {\n const key = this.key\n const checkedKeys = {}\n array.forEach((item) => {\n checkedKeys[(item || {})[key]] = true\n })\n\n this._setCheckedKeys(key, leafOnly, checkedKeys)\n }\n\n setCheckedKeys(keys: TreeKey[], leafOnly = false): void {\n this.defaultCheckedKeys = keys\n const key = this.key\n const checkedKeys = {}\n keys.forEach((key) => {\n checkedKeys[key] = true\n })\n\n this._setCheckedKeys(key, leafOnly, checkedKeys)\n }\n\n setDefaultExpandedKeys(keys: TreeKey[]) {\n keys = keys || []\n this.defaultExpandedKeys = keys\n keys.forEach((key) => {\n const node = this.getNode(key)\n if (node) node.expand(null, this.autoExpandParent)\n })\n }\n\n setChecked(\n data: TreeKey | TreeNodeData,\n checked: boolean,\n deep: boolean\n ): void {\n const node = this.getNode(data)\n\n if (node) {\n node.setChecked(!!checked, deep)\n }\n }\n\n getCurrentNode(): Node {\n return this.currentNode\n }\n\n setCurrentNode(currentNode: Node): void {\n const prevCurrentNode = this.currentNode\n if (prevCurrentNode) {\n prevCurrentNode.isCurrent = false\n }\n this.currentNode = currentNode\n this.currentNode.isCurrent = true\n }\n\n setUserCurrentNode(node: Node, shouldAutoExpandParent = true): void {\n const key = node[this.key]\n const currNode = this.nodesMap[key]\n this.setCurrentNode(currNode)\n if (shouldAutoExpandParent && this.currentNode.level > 1) {\n this.currentNode.parent.expand(null, true)\n }\n }\n\n setCurrentNodeKey(key?: TreeKey, shouldAutoExpandParent = true): void {\n if (key === null || key === undefined) {\n this.currentNode && (this.currentNode.isCurrent = false)\n this.currentNode = null\n return\n }\n const node = this.getNode(key)\n if (node) {\n this.setCurrentNode(node)\n if (shouldAutoExpandParent && this.currentNode.level > 1) {\n this.currentNode.parent.expand(null, true)\n }\n }\n }\n}\n"],"names":["hasOwn","Node","isObject","getNodeKey","isPropAbsent"],"mappings":"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"}
1
+ {"version":3,"file":"tree-store.js","sources":["../../../../../../../packages/components/tree/src/model/tree-store.ts"],"sourcesContent":["// @ts-nocheck\nimport { hasOwn, isObject, isPropAbsent } from '@element-plus/utils'\nimport Node from './node'\nimport { getNodeKey } from './util'\n\nimport type {\n FilterNodeMethodFunction,\n FilterValue,\n LoadFunction,\n TreeData,\n TreeKey,\n TreeNodeData,\n TreeOptionProps,\n TreeStoreNodesMap,\n TreeStoreOptions,\n} from '../tree.type'\n\nexport default class TreeStore {\n currentNode: Node\n currentNodeKey: TreeKey\n nodesMap: TreeStoreNodesMap\n root: Node\n data: TreeData\n lazy: boolean\n load: LoadFunction\n filterNodeMethod: FilterNodeMethodFunction\n key: TreeKey\n defaultCheckedKeys: TreeKey[]\n checkStrictly: boolean\n defaultExpandedKeys: TreeKey[]\n autoExpandParent: boolean\n defaultExpandAll: boolean\n checkDescendants: boolean\n props: TreeOptionProps\n\n constructor(options: TreeStoreOptions) {\n this.currentNode = null\n this.currentNodeKey = null\n\n for (const option in options) {\n if (hasOwn(options, option)) {\n this[option] = options[option]\n }\n }\n\n this.nodesMap = {}\n }\n\n initialize() {\n this.root = new Node({\n data: this.data,\n store: this,\n })\n this.root.initialize()\n\n if (this.lazy && this.load) {\n const loadFn = this.load\n loadFn(this.root, (data) => {\n this.root.doCreateChildren(data)\n this._initDefaultCheckedNodes()\n })\n } else {\n this._initDefaultCheckedNodes()\n }\n }\n\n filter(value: FilterValue): void {\n const filterNodeMethod = this.filterNodeMethod\n const lazy = this.lazy\n const traverse = function (node: TreeStore | Node) {\n const childNodes = (node as TreeStore).root\n ? (node as TreeStore).root.childNodes\n : (node as Node).childNodes\n\n childNodes.forEach((child) => {\n child.visible = filterNodeMethod.call(child, value, child.data, child)\n\n traverse(child)\n })\n\n if (!(node as Node).visible && childNodes.length) {\n let allHidden = true\n allHidden = !childNodes.some((child) => child.visible)\n\n if ((node as TreeStore).root) {\n ;(node as TreeStore).root.visible = allHidden === false\n } else {\n ;(node as Node).visible = allHidden === false\n }\n }\n if (!value) return\n\n if ((node as Node).visible && !(node as Node).isLeaf) {\n if (!lazy || node.loaded) {\n ;(node as Node).expand()\n }\n }\n }\n\n traverse(this)\n }\n\n setData(newVal: TreeData): void {\n const instanceChanged = newVal !== this.root.data\n if (instanceChanged) {\n this.nodesMap = {}\n this.root.setData(newVal)\n this._initDefaultCheckedNodes()\n } else {\n this.root.updateChildren()\n }\n }\n\n getNode(data: TreeKey | TreeNodeData | Node): Node {\n if (data instanceof Node) return data\n const key = isObject(data) ? getNodeKey(this.key, data) : data\n return this.nodesMap[key] || null\n }\n\n insertBefore(\n data: TreeNodeData,\n refData: TreeKey | TreeNodeData | Node\n ): void {\n const refNode = this.getNode(refData)\n refNode.parent.insertBefore({ data }, refNode)\n }\n\n insertAfter(\n data: TreeNodeData,\n refData: TreeKey | TreeNodeData | Node\n ): void {\n const refNode = this.getNode(refData)\n refNode.parent.insertAfter({ data }, refNode)\n }\n\n remove(data: TreeNodeData | Node): void {\n const node = this.getNode(data)\n\n if (node && node.parent) {\n if (node === this.currentNode) {\n this.currentNode = null\n }\n node.parent.removeChild(node)\n }\n }\n\n append(data: TreeNodeData, parentData: TreeNodeData | TreeKey | Node): void {\n const parentNode = !isPropAbsent(parentData)\n ? this.getNode(parentData)\n : this.root\n\n if (parentNode) {\n parentNode.insertChild({ data })\n }\n }\n\n _initDefaultCheckedNodes(): void {\n const defaultCheckedKeys = this.defaultCheckedKeys || []\n const nodesMap = this.nodesMap\n\n defaultCheckedKeys.forEach((checkedKey) => {\n const node = nodesMap[checkedKey]\n\n if (node) {\n node.setChecked(true, !this.checkStrictly)\n }\n })\n }\n\n _initDefaultCheckedNode(node: Node): void {\n const defaultCheckedKeys = this.defaultCheckedKeys || []\n\n if (defaultCheckedKeys.includes(node.key)) {\n node.setChecked(true, !this.checkStrictly)\n }\n }\n\n setDefaultCheckedKey(newVal: TreeKey[]): void {\n if (newVal !== this.defaultCheckedKeys) {\n this.defaultCheckedKeys = newVal\n this._initDefaultCheckedNodes()\n }\n }\n\n registerNode(node: Node): void {\n const key = this.key\n if (!node || !node.data) return\n\n if (!key) {\n this.nodesMap[node.id] = node\n } else {\n const nodeKey = node.key\n if (nodeKey !== undefined) this.nodesMap[node.key] = node\n }\n }\n\n deregisterNode(node: Node): void {\n const key = this.key\n if (!key || !node || !node.data) return\n\n node.childNodes.forEach((child) => {\n this.deregisterNode(child)\n })\n\n delete this.nodesMap[node.key]\n }\n\n getCheckedNodes(\n leafOnly = false,\n includeHalfChecked = false\n ): TreeNodeData[] {\n const checkedNodes: TreeNodeData[] = []\n const traverse = function (node: TreeStore | Node) {\n const childNodes = (node as TreeStore).root\n ? (node as TreeStore).root.childNodes\n : (node as Node).childNodes\n\n childNodes.forEach((child) => {\n if (\n (child.checked || (includeHalfChecked && child.indeterminate)) &&\n (!leafOnly || (leafOnly && child.isLeaf))\n ) {\n checkedNodes.push(child.data)\n }\n\n traverse(child)\n })\n }\n\n traverse(this)\n\n return checkedNodes\n }\n\n getCheckedKeys(leafOnly = false): TreeKey[] {\n return this.getCheckedNodes(leafOnly).map((data) => (data || {})[this.key])\n }\n\n getHalfCheckedNodes(): TreeNodeData[] {\n const nodes: TreeNodeData[] = []\n const traverse = function (node: TreeStore | Node) {\n const childNodes = (node as TreeStore).root\n ? (node as TreeStore).root.childNodes\n : (node as Node).childNodes\n\n childNodes.forEach((child) => {\n if (child.indeterminate) {\n nodes.push(child.data)\n }\n\n traverse(child)\n })\n }\n\n traverse(this)\n\n return nodes\n }\n\n getHalfCheckedKeys(): TreeKey[] {\n return this.getHalfCheckedNodes().map((data) => (data || {})[this.key])\n }\n\n _getAllNodes(): Node[] {\n const allNodes: Node[] = []\n const nodesMap = this.nodesMap\n for (const nodeKey in nodesMap) {\n if (hasOwn(nodesMap, nodeKey)) {\n allNodes.push(nodesMap[nodeKey])\n }\n }\n\n return allNodes\n }\n\n updateChildren(key: TreeKey, data: TreeData): void {\n const node = this.nodesMap[key]\n if (!node) return\n const childNodes = node.childNodes\n for (let i = childNodes.length - 1; i >= 0; i--) {\n const child = childNodes[i]\n this.remove(child.data)\n }\n for (let i = 0, j = data.length; i < j; i++) {\n const child = data[i]\n this.append(child, node.data)\n }\n }\n\n _setCheckedKeys(\n key: TreeKey,\n leafOnly = false,\n checkedKeys: { [key: string]: boolean }\n ): void {\n const allNodes = this._getAllNodes().sort((a, b) => a.level - b.level)\n const cache = Object.create(null)\n const keys = Object.keys(checkedKeys)\n allNodes.forEach((node) => node.setChecked(false, false))\n const cacheCheckedChild = (node) => {\n node.childNodes.forEach((child) => {\n cache[child.data[key]] = true\n if (child.childNodes?.length) {\n cacheCheckedChild(child)\n }\n })\n }\n for (let i = 0, j = allNodes.length; i < j; i++) {\n const node = allNodes[i]\n const nodeKey = node.data[key].toString()\n const checked = keys.includes(nodeKey)\n if (!checked) {\n if (node.checked && !cache[nodeKey]) {\n node.setChecked(false, false)\n }\n continue\n }\n\n if (node.childNodes.length) {\n cacheCheckedChild(node)\n }\n\n if (node.isLeaf || this.checkStrictly) {\n node.setChecked(true, false)\n continue\n }\n node.setChecked(true, true)\n\n if (leafOnly) {\n node.setChecked(false, false)\n const traverse = function (node: Node): void {\n const childNodes = node.childNodes\n childNodes.forEach((child) => {\n if (!child.isLeaf) {\n child.setChecked(false, false)\n }\n traverse(child)\n })\n }\n traverse(node)\n }\n }\n }\n\n setCheckedNodes(array: Node[], leafOnly = false): void {\n const key = this.key\n const checkedKeys = {}\n array.forEach((item) => {\n checkedKeys[(item || {})[key]] = true\n })\n\n this._setCheckedKeys(key, leafOnly, checkedKeys)\n }\n\n setCheckedKeys(keys: TreeKey[], leafOnly = false): void {\n this.defaultCheckedKeys = keys\n const key = this.key\n const checkedKeys = {}\n keys.forEach((key) => {\n checkedKeys[key] = true\n })\n\n this._setCheckedKeys(key, leafOnly, checkedKeys)\n }\n\n setDefaultExpandedKeys(keys: TreeKey[]) {\n keys = keys || []\n this.defaultExpandedKeys = keys\n keys.forEach((key) => {\n const node = this.getNode(key)\n if (node) node.expand(null, this.autoExpandParent)\n })\n }\n\n setChecked(\n data: TreeKey | TreeNodeData,\n checked: boolean,\n deep: boolean\n ): void {\n const node = this.getNode(data)\n\n if (node) {\n node.setChecked(!!checked, deep)\n }\n }\n\n getCurrentNode(): Node {\n return this.currentNode\n }\n\n setCurrentNode(currentNode: Node): void {\n const prevCurrentNode = this.currentNode\n if (prevCurrentNode) {\n prevCurrentNode.isCurrent = false\n }\n this.currentNode = currentNode\n this.currentNode.isCurrent = true\n }\n\n setUserCurrentNode(node: Node, shouldAutoExpandParent = true): void {\n const key = node[this.key]\n const currNode = this.nodesMap[key]\n this.setCurrentNode(currNode)\n if (shouldAutoExpandParent && this.currentNode.level > 1) {\n this.currentNode.parent.expand(null, true)\n }\n }\n\n setCurrentNodeKey(key?: TreeKey, shouldAutoExpandParent = true): void {\n if (key === null || key === undefined) {\n this.currentNode && (this.currentNode.isCurrent = false)\n this.currentNode = null\n return\n }\n const node = this.getNode(key)\n if (node) {\n this.setCurrentNode(node)\n if (shouldAutoExpandParent && this.currentNode.level > 1) {\n this.currentNode.parent.expand(null, true)\n }\n }\n }\n}\n"],"names":["hasOwn","Node","isObject","getNodeKey","isPropAbsent"],"mappings":"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"}
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('../../utils/index.js');
6
- var watermark$1 = require('./src/watermark2.js');
7
- var watermark = require('./src/watermark.js');
6
+ var watermark$1 = require('./src/watermark.js');
7
+ var watermark = require('./src/watermark2.js');
8
8
  var install = require('../../utils/vue/install.js');
9
9
 
10
10
  const ElWatermark = install.withInstall(watermark$1["default"]);
@@ -2,36 +2,217 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../../utils/index.js');
6
- var runtime = require('../../../utils/vue/props/runtime.js');
5
+ var vue = require('vue');
6
+ var core = require('@vueuse/core');
7
+ var watermark = require('./watermark2.js');
8
+ var utils = require('./utils.js');
9
+ var useClips = require('./useClips.js');
10
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
7
11
 
8
- const watermarkProps = runtime.buildProps({
9
- zIndex: {
10
- type: Number,
11
- default: 9
12
- },
13
- rotate: {
14
- type: Number,
15
- default: -22
16
- },
17
- width: Number,
18
- height: Number,
19
- image: String,
20
- content: {
21
- type: runtime.definePropType([String, Array]),
22
- default: "Element Plus"
23
- },
24
- font: {
25
- type: runtime.definePropType(Object)
26
- },
27
- gap: {
28
- type: runtime.definePropType(Array),
29
- default: () => [100, 100]
30
- },
31
- offset: {
32
- type: runtime.definePropType(Array)
12
+ const __default__ = vue.defineComponent({
13
+ name: "ElWatermark"
14
+ });
15
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
16
+ ...__default__,
17
+ props: watermark.watermarkProps,
18
+ setup(__props) {
19
+ const props = __props;
20
+ const style = {
21
+ position: "relative"
22
+ };
23
+ const color = vue.computed(() => {
24
+ var _a, _b;
25
+ return (_b = (_a = props.font) == null ? void 0 : _a.color) != null ? _b : "rgba(0,0,0,.15)";
26
+ });
27
+ const fontSize = vue.computed(() => {
28
+ var _a, _b;
29
+ return (_b = (_a = props.font) == null ? void 0 : _a.fontSize) != null ? _b : 16;
30
+ });
31
+ const fontWeight = vue.computed(() => {
32
+ var _a, _b;
33
+ return (_b = (_a = props.font) == null ? void 0 : _a.fontWeight) != null ? _b : "normal";
34
+ });
35
+ const fontStyle = vue.computed(() => {
36
+ var _a, _b;
37
+ return (_b = (_a = props.font) == null ? void 0 : _a.fontStyle) != null ? _b : "normal";
38
+ });
39
+ const fontFamily = vue.computed(() => {
40
+ var _a, _b;
41
+ return (_b = (_a = props.font) == null ? void 0 : _a.fontFamily) != null ? _b : "sans-serif";
42
+ });
43
+ const textAlign = vue.computed(() => {
44
+ var _a, _b;
45
+ return (_b = (_a = props.font) == null ? void 0 : _a.textAlign) != null ? _b : "center";
46
+ });
47
+ const textBaseline = vue.computed(() => {
48
+ var _a, _b;
49
+ return (_b = (_a = props.font) == null ? void 0 : _a.textBaseline) != null ? _b : "hanging";
50
+ });
51
+ const gapX = vue.computed(() => props.gap[0]);
52
+ const gapY = vue.computed(() => props.gap[1]);
53
+ const gapXCenter = vue.computed(() => gapX.value / 2);
54
+ const gapYCenter = vue.computed(() => gapY.value / 2);
55
+ const offsetLeft = vue.computed(() => {
56
+ var _a, _b;
57
+ return (_b = (_a = props.offset) == null ? void 0 : _a[0]) != null ? _b : gapXCenter.value;
58
+ });
59
+ const offsetTop = vue.computed(() => {
60
+ var _a, _b;
61
+ return (_b = (_a = props.offset) == null ? void 0 : _a[1]) != null ? _b : gapYCenter.value;
62
+ });
63
+ const getMarkStyle = () => {
64
+ const markStyle = {
65
+ zIndex: props.zIndex,
66
+ position: "absolute",
67
+ left: 0,
68
+ top: 0,
69
+ width: "100%",
70
+ height: "100%",
71
+ pointerEvents: "none",
72
+ backgroundRepeat: "repeat"
73
+ };
74
+ let positionLeft = offsetLeft.value - gapXCenter.value;
75
+ let positionTop = offsetTop.value - gapYCenter.value;
76
+ if (positionLeft > 0) {
77
+ markStyle.left = `${positionLeft}px`;
78
+ markStyle.width = `calc(100% - ${positionLeft}px)`;
79
+ positionLeft = 0;
80
+ }
81
+ if (positionTop > 0) {
82
+ markStyle.top = `${positionTop}px`;
83
+ markStyle.height = `calc(100% - ${positionTop}px)`;
84
+ positionTop = 0;
85
+ }
86
+ markStyle.backgroundPosition = `${positionLeft}px ${positionTop}px`;
87
+ return markStyle;
88
+ };
89
+ const containerRef = vue.shallowRef(null);
90
+ const watermarkRef = vue.shallowRef();
91
+ const stopObservation = vue.ref(false);
92
+ const destroyWatermark = () => {
93
+ if (watermarkRef.value) {
94
+ watermarkRef.value.remove();
95
+ watermarkRef.value = void 0;
96
+ }
97
+ };
98
+ const appendWatermark = (base64Url, markWidth) => {
99
+ var _a;
100
+ if (containerRef.value && watermarkRef.value) {
101
+ stopObservation.value = true;
102
+ watermarkRef.value.setAttribute("style", utils.getStyleStr({
103
+ ...getMarkStyle(),
104
+ backgroundImage: `url('${base64Url}')`,
105
+ backgroundSize: `${Math.floor(markWidth)}px`
106
+ }));
107
+ (_a = containerRef.value) == null ? void 0 : _a.append(watermarkRef.value);
108
+ setTimeout(() => {
109
+ stopObservation.value = false;
110
+ });
111
+ }
112
+ };
113
+ const getMarkSize = (ctx) => {
114
+ let defaultWidth = 120;
115
+ let defaultHeight = 64;
116
+ const image = props.image;
117
+ const content = props.content;
118
+ const width = props.width;
119
+ const height = props.height;
120
+ if (!image && ctx.measureText) {
121
+ ctx.font = `${Number(fontSize.value)}px ${fontFamily.value}`;
122
+ const contents = Array.isArray(content) ? content : [content];
123
+ const sizes = contents.map((item) => {
124
+ const metrics = ctx.measureText(item);
125
+ return [
126
+ metrics.width,
127
+ metrics.fontBoundingBoxAscent !== void 0 ? metrics.fontBoundingBoxAscent + metrics.fontBoundingBoxDescent : metrics.actualBoundingBoxAscent + metrics.actualBoundingBoxDescent
128
+ ];
129
+ });
130
+ defaultWidth = Math.ceil(Math.max(...sizes.map((size) => size[0])));
131
+ defaultHeight = Math.ceil(Math.max(...sizes.map((size) => size[1]))) * contents.length + (contents.length - 1) * useClips.FontGap;
132
+ }
133
+ return [width != null ? width : defaultWidth, height != null ? height : defaultHeight];
134
+ };
135
+ const getClips = useClips["default"]();
136
+ const renderWatermark = () => {
137
+ const canvas = document.createElement("canvas");
138
+ const ctx = canvas.getContext("2d");
139
+ const image = props.image;
140
+ const content = props.content;
141
+ const rotate = props.rotate;
142
+ if (ctx) {
143
+ if (!watermarkRef.value) {
144
+ watermarkRef.value = document.createElement("div");
145
+ }
146
+ const ratio = utils.getPixelRatio();
147
+ const [markWidth, markHeight] = getMarkSize(ctx);
148
+ const drawCanvas = (drawContent) => {
149
+ const [textClips, clipWidth] = getClips(drawContent || "", rotate, ratio, markWidth, markHeight, {
150
+ color: color.value,
151
+ fontSize: fontSize.value,
152
+ fontStyle: fontStyle.value,
153
+ fontWeight: fontWeight.value,
154
+ fontFamily: fontFamily.value,
155
+ textAlign: textAlign.value,
156
+ textBaseline: textBaseline.value
157
+ }, gapX.value, gapY.value);
158
+ appendWatermark(textClips, clipWidth);
159
+ };
160
+ if (image) {
161
+ const img = new Image();
162
+ img.onload = () => {
163
+ drawCanvas(img);
164
+ };
165
+ img.onerror = () => {
166
+ drawCanvas(content);
167
+ };
168
+ img.crossOrigin = "anonymous";
169
+ img.referrerPolicy = "no-referrer";
170
+ img.src = image;
171
+ } else {
172
+ drawCanvas(content);
173
+ }
174
+ }
175
+ };
176
+ vue.onMounted(() => {
177
+ renderWatermark();
178
+ });
179
+ vue.watch(() => props, () => {
180
+ renderWatermark();
181
+ }, {
182
+ deep: true,
183
+ flush: "post"
184
+ });
185
+ vue.onBeforeUnmount(() => {
186
+ destroyWatermark();
187
+ });
188
+ const onMutate = (mutations) => {
189
+ if (stopObservation.value) {
190
+ return;
191
+ }
192
+ mutations.forEach((mutation) => {
193
+ if (utils.reRendering(mutation, watermarkRef.value)) {
194
+ destroyWatermark();
195
+ renderWatermark();
196
+ }
197
+ });
198
+ };
199
+ core.useMutationObserver(containerRef, onMutate, {
200
+ attributes: true,
201
+ subtree: true,
202
+ childList: true
203
+ });
204
+ return (_ctx, _cache) => {
205
+ return vue.openBlock(), vue.createElementBlock("div", {
206
+ ref_key: "containerRef",
207
+ ref: containerRef,
208
+ style: vue.normalizeStyle([style])
209
+ }, [
210
+ vue.renderSlot(_ctx.$slots, "default")
211
+ ], 4);
212
+ };
33
213
  }
34
214
  });
215
+ var Watermark = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "watermark.vue"]]);
35
216
 
36
- exports.watermarkProps = watermarkProps;
217
+ exports["default"] = Watermark;
37
218
  //# sourceMappingURL=watermark.js.map