@element-plus/nightly 0.0.20240307 → 0.0.20240308

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 (290) hide show
  1. package/dist/index.full.js +7 -3
  2. package/dist/index.full.min.js +2 -2
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +2 -2
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +7 -3
  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/anchor/index.mjs +2 -2
  244. package/es/components/anchor/src/anchor.mjs +38 -193
  245. package/es/components/anchor/src/anchor.mjs.map +1 -1
  246. package/es/components/anchor/src/anchor2.mjs +193 -38
  247. package/es/components/anchor/src/anchor2.mjs.map +1 -1
  248. package/es/components/index.mjs +3 -3
  249. package/es/components/slider/index.mjs +2 -2
  250. package/es/components/slider/src/slider.mjs +233 -91
  251. package/es/components/slider/src/slider.mjs.map +1 -1
  252. package/es/components/slider/src/slider2.mjs +91 -233
  253. package/es/components/slider/src/slider2.mjs.map +1 -1
  254. package/es/components/tabs/index.mjs +1 -1
  255. package/es/components/tabs/src/tab-bar.mjs +75 -7
  256. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  257. package/es/components/tabs/src/tab-bar2.mjs +7 -75
  258. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  259. package/es/components/tabs/src/tab-nav.mjs +1 -1
  260. package/es/index.mjs +3 -3
  261. package/es/utils/dom/element.mjs +5 -1
  262. package/es/utils/dom/element.mjs.map +1 -1
  263. package/es/version.d.ts +1 -1
  264. package/es/version.mjs +1 -1
  265. package/es/version.mjs.map +1 -1
  266. package/lib/components/anchor/index.js +2 -2
  267. package/lib/components/anchor/src/anchor.js +38 -192
  268. package/lib/components/anchor/src/anchor.js.map +1 -1
  269. package/lib/components/anchor/src/anchor2.js +192 -38
  270. package/lib/components/anchor/src/anchor2.js.map +1 -1
  271. package/lib/components/index.js +3 -3
  272. package/lib/components/slider/index.js +2 -2
  273. package/lib/components/slider/src/slider.js +233 -92
  274. package/lib/components/slider/src/slider.js.map +1 -1
  275. package/lib/components/slider/src/slider2.js +92 -233
  276. package/lib/components/slider/src/slider2.js.map +1 -1
  277. package/lib/components/tabs/index.js +1 -1
  278. package/lib/components/tabs/src/tab-bar.js +75 -7
  279. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  280. package/lib/components/tabs/src/tab-bar2.js +7 -75
  281. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  282. package/lib/components/tabs/src/tab-nav.js +1 -1
  283. package/lib/index.js +3 -3
  284. package/lib/utils/dom/element.js +5 -1
  285. package/lib/utils/dom/element.js.map +1 -1
  286. package/lib/version.d.ts +1 -1
  287. package/lib/version.js +1 -1
  288. package/lib/version.js.map +1 -1
  289. package/package.json +2 -2
  290. package/web-types.json +1 -1
@@ -7,7 +7,11 @@ const getElement = (target) => {
7
7
  if (!isClient || target === "")
8
8
  return null;
9
9
  if (isString(target)) {
10
- return document.querySelector(target);
10
+ try {
11
+ return document.querySelector(target);
12
+ } catch (e) {
13
+ return null;
14
+ }
11
15
  }
12
16
  return target;
13
17
  };
@@ -1 +1 @@
1
- {"version":3,"file":"element.mjs","sources":["../../../../../packages/utils/dom/element.ts"],"sourcesContent":["import { isString } from '../types'\nimport { isClient } from '../browser'\n\ntype GetElement = <T extends string | HTMLElement | Window | null | undefined>(\n target: T\n) => T extends string ? HTMLElement | null : T\n\nexport const getElement = ((\n target: string | HTMLElement | Window | null | undefined\n) => {\n if (!isClient || target === '') return null\n if (isString(target)) {\n return document.querySelector<HTMLElement>(target)\n }\n return target\n}) as GetElement\n"],"names":[],"mappings":";;;;;AAEY,MAAC,UAAU,GAAG,CAAC,MAAM,KAAK;AACtC,EAAE,IAAI,CAAC,QAAQ,IAAI,MAAM,KAAK,EAAE;AAChC,IAAI,OAAO,IAAI,CAAC;AAChB,EAAE,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;AACxB,IAAI,OAAO,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,OAAO,MAAM,CAAC;AAChB;;;;"}
1
+ {"version":3,"file":"element.mjs","sources":["../../../../../packages/utils/dom/element.ts"],"sourcesContent":["import { isString } from '../types'\nimport { isClient } from '../browser'\n\ntype GetElement = <T extends string | HTMLElement | Window | null | undefined>(\n target: T\n) => T extends string ? HTMLElement | null : T\n\nexport const getElement = ((\n target: string | HTMLElement | Window | null | undefined\n) => {\n if (!isClient || target === '') return null\n if (isString(target)) {\n try {\n return document.querySelector<HTMLElement>(target)\n } catch {\n return null\n }\n }\n return target\n}) as GetElement\n"],"names":[],"mappings":";;;;;AAEY,MAAC,UAAU,GAAG,CAAC,MAAM,KAAK;AACtC,EAAE,IAAI,CAAC,QAAQ,IAAI,MAAM,KAAK,EAAE;AAChC,IAAI,OAAO,IAAI,CAAC;AAChB,EAAE,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;AACxB,IAAI,IAAI;AACR,MAAM,OAAO,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AAC5C,KAAK,CAAC,OAAO,CAAC,EAAE;AAChB,MAAM,OAAO,IAAI,CAAC;AAClB,KAAK;AACL,GAAG;AACH,EAAE,OAAO,MAAM,CAAC;AAChB;;;;"}
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.20240307";
1
+ export declare const version = "0.0.20240308";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.0.20240307";
1
+ const version = "0.0.20240308";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20240307'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20240308'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('../../utils/index.js');
6
- var anchor$1 = require('./src/anchor.js');
6
+ var anchor$1 = require('./src/anchor2.js');
7
7
  var anchorLink = require('./src/anchor-link2.js');
8
- var anchor = require('./src/anchor2.js');
8
+ var anchor = require('./src/anchor.js');
9
9
  var install = require('../../utils/vue/install.js');
10
10
 
11
11
  const ElAnchor = install.withInstall(anchor$1["default"], {
@@ -2,202 +2,48 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var core = require('@vueuse/core');
7
- require('../../../hooks/index.js');
8
5
  require('../../../utils/index.js');
9
- var anchor = require('./anchor2.js');
10
- var constants = require('./constants.js');
11
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
12
- var index = require('../../../hooks/use-namespace/index.js');
13
- var element = require('../../../utils/dom/element.js');
14
- var scroll = require('../../../utils/dom/scroll.js');
15
- var position = require('../../../utils/dom/position.js');
16
- var throttleByRaf = require('../../../utils/throttleByRaf.js');
6
+ var runtime = require('../../../utils/vue/props/runtime.js');
7
+ var shared = require('@vue/shared');
17
8
  var types = require('../../../utils/types.js');
18
9
 
19
- const __default__ = vue.defineComponent({
20
- name: "ElAnchor"
21
- });
22
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
23
- ...__default__,
24
- props: anchor.anchorProps,
25
- emits: anchor.anchorEmits,
26
- setup(__props, { expose, emit }) {
27
- const props = __props;
28
- const currentAnchor = vue.ref("");
29
- const anchorRef = vue.ref(null);
30
- const markerRef = vue.ref(null);
31
- const containerEl = vue.ref();
32
- const links = {};
33
- let isScrolling = false;
34
- let currentScrollTop = 0;
35
- const ns = index.useNamespace("anchor");
36
- const cls = vue.computed(() => [
37
- ns.b(),
38
- props.type === "underline" ? ns.m("underline") : "",
39
- ns.m(props.direction)
40
- ]);
41
- const addLink = (state) => {
42
- links[state.href] = state.el;
43
- };
44
- const removeLink = (href) => {
45
- delete links[href];
46
- };
47
- const setCurrentAnchor = (href) => {
48
- const activeHref = currentAnchor.value;
49
- if (activeHref !== href) {
50
- currentAnchor.value = href;
51
- emit("change", href);
52
- }
53
- };
54
- let clearAnimate = null;
55
- const scrollToAnchor = (href) => {
56
- if (!containerEl.value)
57
- return;
58
- const target = element.getElement(href);
59
- if (!target)
60
- return;
61
- if (clearAnimate)
62
- clearAnimate();
63
- isScrolling = true;
64
- const scrollEle = scroll.getScrollElement(target, containerEl.value);
65
- const distance = position.getOffsetTopDistance(target, scrollEle);
66
- const max = scrollEle.scrollHeight - scrollEle.clientHeight;
67
- const to = Math.min(distance - props.offset, max);
68
- clearAnimate = scroll.animateScrollTo(containerEl.value, currentScrollTop, to, props.duration, () => {
69
- setTimeout(() => {
70
- isScrolling = false;
71
- }, 20);
72
- });
73
- };
74
- const scrollTo = (href) => {
75
- if (href) {
76
- setCurrentAnchor(href);
77
- scrollToAnchor(href);
78
- }
79
- };
80
- const handleClick = (e, href) => {
81
- emit("click", e, href);
82
- scrollTo(href);
83
- };
84
- const handleScroll = throttleByRaf.throttleByRaf(() => {
85
- if (containerEl.value) {
86
- currentScrollTop = scroll.getScrollTop(containerEl.value);
87
- }
88
- const currentHref = getCurrentHref();
89
- if (isScrolling || types.isUndefined(currentHref))
90
- return;
91
- setCurrentAnchor(currentHref);
92
- });
93
- const getCurrentHref = () => {
94
- if (!containerEl.value)
95
- return;
96
- const scrollTop = scroll.getScrollTop(containerEl.value);
97
- const anchorTopList = [];
98
- for (const href of Object.keys(links)) {
99
- const target = element.getElement(href);
100
- if (!target)
101
- continue;
102
- const scrollEle = scroll.getScrollElement(target, containerEl.value);
103
- const distance = position.getOffsetTopDistance(target, scrollEle);
104
- anchorTopList.push({
105
- top: distance - props.offset - props.bound,
106
- href
107
- });
108
- }
109
- anchorTopList.sort((prev, next) => prev.top - next.top);
110
- for (let i = 0; i < anchorTopList.length; i++) {
111
- const item = anchorTopList[i];
112
- const next = anchorTopList[i + 1];
113
- if (i === 0 && scrollTop === 0) {
114
- return "";
115
- }
116
- if (item.top <= scrollTop && (!next || next.top > scrollTop)) {
117
- return item.href;
118
- }
119
- }
120
- };
121
- const getContainer = () => {
122
- const el = element.getElement(props.container);
123
- if (!el || types.isWindow(el)) {
124
- containerEl.value = window;
125
- } else {
126
- containerEl.value = el;
127
- }
128
- };
129
- core.useEventListener(containerEl, "scroll", handleScroll);
130
- const markerStyle = vue.computed(() => {
131
- if (!anchorRef.value || !markerRef.value || !currentAnchor.value)
132
- return {};
133
- const currentLinkEl = links[currentAnchor.value];
134
- if (!currentLinkEl)
135
- return {};
136
- const anchorRect = anchorRef.value.getBoundingClientRect();
137
- const markerRect = markerRef.value.getBoundingClientRect();
138
- const linkRect = currentLinkEl.getBoundingClientRect();
139
- if (props.direction === "horizontal") {
140
- const left = linkRect.left - anchorRect.left;
141
- return {
142
- left: `${left}px`,
143
- width: `${linkRect.width}px`,
144
- opacity: 1
145
- };
146
- } else {
147
- const top = linkRect.top - anchorRect.top + (linkRect.height - markerRect.height) / 2;
148
- return {
149
- top: `${top}px`,
150
- opacity: 1
151
- };
152
- }
153
- });
154
- vue.onMounted(() => {
155
- getContainer();
156
- const hash = decodeURIComponent(window.location.hash);
157
- const target = element.getElement(hash);
158
- if (target) {
159
- scrollTo(hash);
160
- } else {
161
- handleScroll();
162
- }
163
- });
164
- vue.watch(() => props.container, () => {
165
- getContainer();
166
- });
167
- vue.provide(constants.anchorKey, {
168
- ns,
169
- direction: props.direction,
170
- currentAnchor,
171
- addLink,
172
- removeLink,
173
- handleClick
174
- });
175
- expose({
176
- scrollTo
177
- });
178
- return (_ctx, _cache) => {
179
- return vue.openBlock(), vue.createElementBlock("div", {
180
- ref_key: "anchorRef",
181
- ref: anchorRef,
182
- class: vue.normalizeClass(vue.unref(cls))
183
- }, [
184
- _ctx.marker ? (vue.openBlock(), vue.createElementBlock("div", {
185
- key: 0,
186
- ref_key: "markerRef",
187
- ref: markerRef,
188
- class: vue.normalizeClass(vue.unref(ns).e("marker")),
189
- style: vue.normalizeStyle(vue.unref(markerStyle))
190
- }, null, 6)) : vue.createCommentVNode("v-if", true),
191
- vue.createElementVNode("div", {
192
- class: vue.normalizeClass(vue.unref(ns).e("list"))
193
- }, [
194
- vue.renderSlot(_ctx.$slots, "default")
195
- ], 2)
196
- ], 2);
197
- };
10
+ const anchorProps = runtime.buildProps({
11
+ container: {
12
+ type: runtime.definePropType([
13
+ String,
14
+ Object
15
+ ])
16
+ },
17
+ offset: {
18
+ type: Number,
19
+ default: 0
20
+ },
21
+ bound: {
22
+ type: Number,
23
+ default: 15
24
+ },
25
+ duration: {
26
+ type: Number,
27
+ default: 300
28
+ },
29
+ marker: {
30
+ type: Boolean,
31
+ default: true
32
+ },
33
+ type: {
34
+ type: runtime.definePropType(String),
35
+ default: "defalut"
36
+ },
37
+ direction: {
38
+ type: runtime.definePropType(String),
39
+ default: "vertical"
198
40
  }
199
41
  });
200
- var Anchor = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "anchor.vue"]]);
42
+ const anchorEmits = {
43
+ change: (href) => shared.isString(href),
44
+ click: (e, href) => e instanceof MouseEvent && (shared.isString(href) || types.isUndefined(href))
45
+ };
201
46
 
202
- exports["default"] = Anchor;
47
+ exports.anchorEmits = anchorEmits;
48
+ exports.anchorProps = anchorProps;
203
49
  //# sourceMappingURL=anchor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"anchor.js","sources":["../../../../../../packages/components/anchor/src/anchor.vue"],"sourcesContent":["<template>\n <div ref=\"anchorRef\" :class=\"cls\">\n <div\n v-if=\"marker\"\n ref=\"markerRef\"\n :class=\"ns.e('marker')\"\n :style=\"markerStyle\"\n />\n <div :class=\"ns.e('list')\">\n <slot />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, provide, ref, watch } from 'vue'\nimport { useEventListener } from '@vueuse/core'\nimport { useNamespace } from '@element-plus/hooks'\nimport {\n animateScrollTo,\n getElement,\n getOffsetTopDistance,\n getScrollElement,\n getScrollTop,\n isUndefined,\n isWindow,\n throttleByRaf,\n} from '@element-plus/utils'\nimport { anchorEmits, anchorProps } from './anchor'\nimport { anchorKey } from './constants'\n\nimport type { AnchorLinkState } from './constants'\n\ndefineOptions({\n name: 'ElAnchor',\n})\n\nconst props = defineProps(anchorProps)\nconst emit = defineEmits(anchorEmits)\n\nconst currentAnchor = ref('')\nconst anchorRef = ref<HTMLElement | null>(null)\nconst markerRef = ref<HTMLElement | null>(null)\nconst containerEl = ref<HTMLElement | Window>()\n\nconst links: Record<string, HTMLElement> = {}\nlet isScrolling = false\nlet currentScrollTop = 0\n\nconst ns = useNamespace('anchor')\n\nconst cls = computed(() => [\n ns.b(),\n props.type === 'underline' ? ns.m('underline') : '',\n ns.m(props.direction),\n])\n\nconst addLink = (state: AnchorLinkState) => {\n links[state.href] = state.el\n}\n\nconst removeLink = (href: string) => {\n delete links[href]\n}\n\nconst setCurrentAnchor = (href: string) => {\n const activeHref = currentAnchor.value\n if (activeHref !== href) {\n currentAnchor.value = href\n emit('change', href)\n }\n}\n\nlet clearAnimate: (() => void) | null = null\n\nconst scrollToAnchor = (href: string) => {\n if (!containerEl.value) return\n const target = getElement(href)\n if (!target) return\n if (clearAnimate) clearAnimate()\n isScrolling = true\n const scrollEle = getScrollElement(target, containerEl.value)\n const distance = getOffsetTopDistance(target, scrollEle)\n const max = scrollEle.scrollHeight - scrollEle.clientHeight\n const to = Math.min(distance - props.offset, max)\n clearAnimate = animateScrollTo(\n containerEl.value,\n currentScrollTop,\n to,\n props.duration,\n () => {\n // make sure it is executed after throttleByRaf's handleScroll\n setTimeout(() => {\n isScrolling = false\n }, 20)\n }\n )\n}\n\nconst scrollTo = (href?: string) => {\n if (href) {\n setCurrentAnchor(href)\n scrollToAnchor(href)\n }\n}\n\nconst handleClick = (e: MouseEvent, href?: string) => {\n emit('click', e, href)\n scrollTo(href)\n}\n\nconst handleScroll = throttleByRaf(() => {\n if (containerEl.value) {\n currentScrollTop = getScrollTop(containerEl.value)\n }\n const currentHref = getCurrentHref()\n if (isScrolling || isUndefined(currentHref)) return\n setCurrentAnchor(currentHref)\n})\n\nconst getCurrentHref = () => {\n if (!containerEl.value) return\n const scrollTop = getScrollTop(containerEl.value)\n const anchorTopList: { top: number; href: string }[] = []\n\n for (const href of Object.keys(links)) {\n const target = getElement(href)\n if (!target) continue\n const scrollEle = getScrollElement(target, containerEl.value)\n const distance = getOffsetTopDistance(target, scrollEle)\n anchorTopList.push({\n top: distance - props.offset - props.bound,\n href,\n })\n }\n anchorTopList.sort((prev, next) => prev.top - next.top)\n\n for (let i = 0; i < anchorTopList.length; i++) {\n const item = anchorTopList[i]\n const next = anchorTopList[i + 1]\n\n if (i === 0 && scrollTop === 0) {\n return ''\n }\n if (item.top <= scrollTop && (!next || next.top > scrollTop)) {\n return item.href\n }\n }\n}\n\nconst getContainer = () => {\n const el = getElement(props.container)\n if (!el || isWindow(el)) {\n containerEl.value = window\n } else {\n containerEl.value = el\n }\n}\n\nuseEventListener(containerEl, 'scroll', handleScroll)\n\nconst markerStyle = computed(() => {\n if (!anchorRef.value || !markerRef.value || !currentAnchor.value) return {}\n const currentLinkEl = links[currentAnchor.value]\n if (!currentLinkEl) return {}\n const anchorRect = anchorRef.value.getBoundingClientRect()\n const markerRect = markerRef.value.getBoundingClientRect()\n const linkRect = currentLinkEl.getBoundingClientRect()\n\n if (props.direction === 'horizontal') {\n const left = linkRect.left - anchorRect.left\n return {\n left: `${left}px`,\n width: `${linkRect.width}px`,\n opacity: 1,\n }\n } else {\n const top =\n linkRect.top - anchorRect.top + (linkRect.height - markerRect.height) / 2\n return {\n top: `${top}px`,\n opacity: 1,\n }\n }\n})\n\nonMounted(() => {\n getContainer()\n const hash = decodeURIComponent(window.location.hash)\n const target = getElement(hash)\n if (target) {\n scrollTo(hash)\n } else {\n handleScroll()\n }\n})\n\nwatch(\n () => props.container,\n () => {\n getContainer()\n }\n)\n\nprovide(anchorKey, {\n ns,\n direction: props.direction,\n currentAnchor,\n addLink,\n removeLink,\n handleClick,\n})\n\ndefineExpose({\n scrollTo,\n})\n</script>\n"],"names":["ref","useNamespace","computed","getElement","getScrollElement","getOffsetTopDistance","animateScrollTo","throttleByRaf","getScrollTop","isUndefined","isWindow","useEventListener","onMounted","watch","provide","anchorKey"],"mappings":"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"}
1
+ {"version":3,"file":"anchor.js","sources":["../../../../../../packages/components/anchor/src/anchor.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isString,\n isUndefined,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type Anchor from './anchor.vue'\n\nexport const anchorProps = buildProps({\n /**\n * @description scroll container\n */\n container: {\n type: definePropType<string | HTMLElement | Window | null>([\n String,\n Object,\n ]),\n },\n /**\n * @description Set the offset of the anchor scroll\n */\n offset: {\n type: Number,\n default: 0,\n },\n /**\n * @description The offset of the element starting to trigger the anchor\n */\n bound: {\n type: Number,\n default: 15,\n },\n /**\n * @description Set the scroll duration of the container when the anchor is clicked, in milliseconds\n */\n duration: {\n type: Number,\n default: 300,\n },\n /**\n * @description Whether to show the marker\n */\n marker: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Set Anchor type\n */\n type: {\n type: definePropType<'defalut' | 'underline'>(String),\n default: 'defalut',\n },\n /**\n * @description Set Anchor direction\n */\n direction: {\n type: definePropType<'vertical' | 'horizontal'>(String),\n default: 'vertical',\n },\n})\n\nexport type AnchorProps = ExtractPropTypes<typeof anchorProps>\nexport type AnchorInstance = InstanceType<typeof Anchor>\n\nexport const anchorEmits = {\n change: (href: string) => isString(href),\n click: (e: MouseEvent, href?: string) =>\n e instanceof MouseEvent && (isString(href) || isUndefined(href)),\n}\nexport type AnchorEmits = typeof anchorEmits\n"],"names":["buildProps","definePropType","isString","isUndefined"],"mappings":";;;;;;;;;AAMY,MAAC,WAAW,GAAGA,kBAAU,CAAC;AACtC,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAEC,sBAAc,CAAC;AACzB,MAAM,MAAM;AACZ,MAAM,MAAM;AACZ,KAAK,CAAC;AACN,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,SAAS;AACtB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,UAAU;AACvB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAG;AAC3B,EAAE,MAAM,EAAE,CAAC,IAAI,KAAKC,eAAQ,CAAC,IAAI,CAAC;AAClC,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,YAAY,UAAU,KAAKA,eAAQ,CAAC,IAAI,CAAC,IAAIC,iBAAW,CAAC,IAAI,CAAC,CAAC;AACtF;;;;;"}
@@ -2,48 +2,202 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var vue = require('vue');
6
+ var core = require('@vueuse/core');
7
+ require('../../../hooks/index.js');
5
8
  require('../../../utils/index.js');
6
- var runtime = require('../../../utils/vue/props/runtime.js');
7
- var shared = require('@vue/shared');
9
+ var anchor = require('./anchor.js');
10
+ var constants = require('./constants.js');
11
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
12
+ var index = require('../../../hooks/use-namespace/index.js');
13
+ var element = require('../../../utils/dom/element.js');
14
+ var scroll = require('../../../utils/dom/scroll.js');
15
+ var position = require('../../../utils/dom/position.js');
16
+ var throttleByRaf = require('../../../utils/throttleByRaf.js');
8
17
  var types = require('../../../utils/types.js');
9
18
 
10
- const anchorProps = runtime.buildProps({
11
- container: {
12
- type: runtime.definePropType([
13
- String,
14
- Object
15
- ])
16
- },
17
- offset: {
18
- type: Number,
19
- default: 0
20
- },
21
- bound: {
22
- type: Number,
23
- default: 15
24
- },
25
- duration: {
26
- type: Number,
27
- default: 300
28
- },
29
- marker: {
30
- type: Boolean,
31
- default: true
32
- },
33
- type: {
34
- type: runtime.definePropType(String),
35
- default: "defalut"
36
- },
37
- direction: {
38
- type: runtime.definePropType(String),
39
- default: "vertical"
19
+ const __default__ = vue.defineComponent({
20
+ name: "ElAnchor"
21
+ });
22
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
23
+ ...__default__,
24
+ props: anchor.anchorProps,
25
+ emits: anchor.anchorEmits,
26
+ setup(__props, { expose, emit }) {
27
+ const props = __props;
28
+ const currentAnchor = vue.ref("");
29
+ const anchorRef = vue.ref(null);
30
+ const markerRef = vue.ref(null);
31
+ const containerEl = vue.ref();
32
+ const links = {};
33
+ let isScrolling = false;
34
+ let currentScrollTop = 0;
35
+ const ns = index.useNamespace("anchor");
36
+ const cls = vue.computed(() => [
37
+ ns.b(),
38
+ props.type === "underline" ? ns.m("underline") : "",
39
+ ns.m(props.direction)
40
+ ]);
41
+ const addLink = (state) => {
42
+ links[state.href] = state.el;
43
+ };
44
+ const removeLink = (href) => {
45
+ delete links[href];
46
+ };
47
+ const setCurrentAnchor = (href) => {
48
+ const activeHref = currentAnchor.value;
49
+ if (activeHref !== href) {
50
+ currentAnchor.value = href;
51
+ emit("change", href);
52
+ }
53
+ };
54
+ let clearAnimate = null;
55
+ const scrollToAnchor = (href) => {
56
+ if (!containerEl.value)
57
+ return;
58
+ const target = element.getElement(href);
59
+ if (!target)
60
+ return;
61
+ if (clearAnimate)
62
+ clearAnimate();
63
+ isScrolling = true;
64
+ const scrollEle = scroll.getScrollElement(target, containerEl.value);
65
+ const distance = position.getOffsetTopDistance(target, scrollEle);
66
+ const max = scrollEle.scrollHeight - scrollEle.clientHeight;
67
+ const to = Math.min(distance - props.offset, max);
68
+ clearAnimate = scroll.animateScrollTo(containerEl.value, currentScrollTop, to, props.duration, () => {
69
+ setTimeout(() => {
70
+ isScrolling = false;
71
+ }, 20);
72
+ });
73
+ };
74
+ const scrollTo = (href) => {
75
+ if (href) {
76
+ setCurrentAnchor(href);
77
+ scrollToAnchor(href);
78
+ }
79
+ };
80
+ const handleClick = (e, href) => {
81
+ emit("click", e, href);
82
+ scrollTo(href);
83
+ };
84
+ const handleScroll = throttleByRaf.throttleByRaf(() => {
85
+ if (containerEl.value) {
86
+ currentScrollTop = scroll.getScrollTop(containerEl.value);
87
+ }
88
+ const currentHref = getCurrentHref();
89
+ if (isScrolling || types.isUndefined(currentHref))
90
+ return;
91
+ setCurrentAnchor(currentHref);
92
+ });
93
+ const getCurrentHref = () => {
94
+ if (!containerEl.value)
95
+ return;
96
+ const scrollTop = scroll.getScrollTop(containerEl.value);
97
+ const anchorTopList = [];
98
+ for (const href of Object.keys(links)) {
99
+ const target = element.getElement(href);
100
+ if (!target)
101
+ continue;
102
+ const scrollEle = scroll.getScrollElement(target, containerEl.value);
103
+ const distance = position.getOffsetTopDistance(target, scrollEle);
104
+ anchorTopList.push({
105
+ top: distance - props.offset - props.bound,
106
+ href
107
+ });
108
+ }
109
+ anchorTopList.sort((prev, next) => prev.top - next.top);
110
+ for (let i = 0; i < anchorTopList.length; i++) {
111
+ const item = anchorTopList[i];
112
+ const next = anchorTopList[i + 1];
113
+ if (i === 0 && scrollTop === 0) {
114
+ return "";
115
+ }
116
+ if (item.top <= scrollTop && (!next || next.top > scrollTop)) {
117
+ return item.href;
118
+ }
119
+ }
120
+ };
121
+ const getContainer = () => {
122
+ const el = element.getElement(props.container);
123
+ if (!el || types.isWindow(el)) {
124
+ containerEl.value = window;
125
+ } else {
126
+ containerEl.value = el;
127
+ }
128
+ };
129
+ core.useEventListener(containerEl, "scroll", handleScroll);
130
+ const markerStyle = vue.computed(() => {
131
+ if (!anchorRef.value || !markerRef.value || !currentAnchor.value)
132
+ return {};
133
+ const currentLinkEl = links[currentAnchor.value];
134
+ if (!currentLinkEl)
135
+ return {};
136
+ const anchorRect = anchorRef.value.getBoundingClientRect();
137
+ const markerRect = markerRef.value.getBoundingClientRect();
138
+ const linkRect = currentLinkEl.getBoundingClientRect();
139
+ if (props.direction === "horizontal") {
140
+ const left = linkRect.left - anchorRect.left;
141
+ return {
142
+ left: `${left}px`,
143
+ width: `${linkRect.width}px`,
144
+ opacity: 1
145
+ };
146
+ } else {
147
+ const top = linkRect.top - anchorRect.top + (linkRect.height - markerRect.height) / 2;
148
+ return {
149
+ top: `${top}px`,
150
+ opacity: 1
151
+ };
152
+ }
153
+ });
154
+ vue.onMounted(() => {
155
+ getContainer();
156
+ const hash = decodeURIComponent(window.location.hash);
157
+ const target = element.getElement(hash);
158
+ if (target) {
159
+ scrollTo(hash);
160
+ } else {
161
+ handleScroll();
162
+ }
163
+ });
164
+ vue.watch(() => props.container, () => {
165
+ getContainer();
166
+ });
167
+ vue.provide(constants.anchorKey, {
168
+ ns,
169
+ direction: props.direction,
170
+ currentAnchor,
171
+ addLink,
172
+ removeLink,
173
+ handleClick
174
+ });
175
+ expose({
176
+ scrollTo
177
+ });
178
+ return (_ctx, _cache) => {
179
+ return vue.openBlock(), vue.createElementBlock("div", {
180
+ ref_key: "anchorRef",
181
+ ref: anchorRef,
182
+ class: vue.normalizeClass(vue.unref(cls))
183
+ }, [
184
+ _ctx.marker ? (vue.openBlock(), vue.createElementBlock("div", {
185
+ key: 0,
186
+ ref_key: "markerRef",
187
+ ref: markerRef,
188
+ class: vue.normalizeClass(vue.unref(ns).e("marker")),
189
+ style: vue.normalizeStyle(vue.unref(markerStyle))
190
+ }, null, 6)) : vue.createCommentVNode("v-if", true),
191
+ vue.createElementVNode("div", {
192
+ class: vue.normalizeClass(vue.unref(ns).e("list"))
193
+ }, [
194
+ vue.renderSlot(_ctx.$slots, "default")
195
+ ], 2)
196
+ ], 2);
197
+ };
40
198
  }
41
199
  });
42
- const anchorEmits = {
43
- change: (href) => shared.isString(href),
44
- click: (e, href) => e instanceof MouseEvent && (shared.isString(href) || types.isUndefined(href))
45
- };
200
+ var Anchor = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "anchor.vue"]]);
46
201
 
47
- exports.anchorEmits = anchorEmits;
48
- exports.anchorProps = anchorProps;
202
+ exports["default"] = Anchor;
49
203
  //# sourceMappingURL=anchor2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"anchor2.js","sources":["../../../../../../packages/components/anchor/src/anchor.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isString,\n isUndefined,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type Anchor from './anchor.vue'\n\nexport const anchorProps = buildProps({\n /**\n * @description scroll container\n */\n container: {\n type: definePropType<string | HTMLElement | Window | null>([\n String,\n Object,\n ]),\n },\n /**\n * @description Set the offset of the anchor scroll\n */\n offset: {\n type: Number,\n default: 0,\n },\n /**\n * @description The offset of the element starting to trigger the anchor\n */\n bound: {\n type: Number,\n default: 15,\n },\n /**\n * @description Set the scroll duration of the container when the anchor is clicked, in milliseconds\n */\n duration: {\n type: Number,\n default: 300,\n },\n /**\n * @description Whether to show the marker\n */\n marker: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Set Anchor type\n */\n type: {\n type: definePropType<'defalut' | 'underline'>(String),\n default: 'defalut',\n },\n /**\n * @description Set Anchor direction\n */\n direction: {\n type: definePropType<'vertical' | 'horizontal'>(String),\n default: 'vertical',\n },\n})\n\nexport type AnchorProps = ExtractPropTypes<typeof anchorProps>\nexport type AnchorInstance = InstanceType<typeof Anchor>\n\nexport const anchorEmits = {\n change: (href: string) => isString(href),\n click: (e: MouseEvent, href?: string) =>\n e instanceof MouseEvent && (isString(href) || isUndefined(href)),\n}\nexport type AnchorEmits = typeof anchorEmits\n"],"names":["buildProps","definePropType","isString","isUndefined"],"mappings":";;;;;;;;;AAMY,MAAC,WAAW,GAAGA,kBAAU,CAAC;AACtC,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAEC,sBAAc,CAAC;AACzB,MAAM,MAAM;AACZ,MAAM,MAAM;AACZ,KAAK,CAAC;AACN,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,SAAS;AACtB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,UAAU;AACvB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAG;AAC3B,EAAE,MAAM,EAAE,CAAC,IAAI,KAAKC,eAAQ,CAAC,IAAI,CAAC;AAClC,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,YAAY,UAAU,KAAKA,eAAQ,CAAC,IAAI,CAAC,IAAIC,iBAAW,CAAC,IAAI,CAAC,CAAC;AACtF;;;;;"}
1
+ {"version":3,"file":"anchor2.js","sources":["../../../../../../packages/components/anchor/src/anchor.vue"],"sourcesContent":["<template>\n <div ref=\"anchorRef\" :class=\"cls\">\n <div\n v-if=\"marker\"\n ref=\"markerRef\"\n :class=\"ns.e('marker')\"\n :style=\"markerStyle\"\n />\n <div :class=\"ns.e('list')\">\n <slot />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, provide, ref, watch } from 'vue'\nimport { useEventListener } from '@vueuse/core'\nimport { useNamespace } from '@element-plus/hooks'\nimport {\n animateScrollTo,\n getElement,\n getOffsetTopDistance,\n getScrollElement,\n getScrollTop,\n isUndefined,\n isWindow,\n throttleByRaf,\n} from '@element-plus/utils'\nimport { anchorEmits, anchorProps } from './anchor'\nimport { anchorKey } from './constants'\n\nimport type { AnchorLinkState } from './constants'\n\ndefineOptions({\n name: 'ElAnchor',\n})\n\nconst props = defineProps(anchorProps)\nconst emit = defineEmits(anchorEmits)\n\nconst currentAnchor = ref('')\nconst anchorRef = ref<HTMLElement | null>(null)\nconst markerRef = ref<HTMLElement | null>(null)\nconst containerEl = ref<HTMLElement | Window>()\n\nconst links: Record<string, HTMLElement> = {}\nlet isScrolling = false\nlet currentScrollTop = 0\n\nconst ns = useNamespace('anchor')\n\nconst cls = computed(() => [\n ns.b(),\n props.type === 'underline' ? ns.m('underline') : '',\n ns.m(props.direction),\n])\n\nconst addLink = (state: AnchorLinkState) => {\n links[state.href] = state.el\n}\n\nconst removeLink = (href: string) => {\n delete links[href]\n}\n\nconst setCurrentAnchor = (href: string) => {\n const activeHref = currentAnchor.value\n if (activeHref !== href) {\n currentAnchor.value = href\n emit('change', href)\n }\n}\n\nlet clearAnimate: (() => void) | null = null\n\nconst scrollToAnchor = (href: string) => {\n if (!containerEl.value) return\n const target = getElement(href)\n if (!target) return\n if (clearAnimate) clearAnimate()\n isScrolling = true\n const scrollEle = getScrollElement(target, containerEl.value)\n const distance = getOffsetTopDistance(target, scrollEle)\n const max = scrollEle.scrollHeight - scrollEle.clientHeight\n const to = Math.min(distance - props.offset, max)\n clearAnimate = animateScrollTo(\n containerEl.value,\n currentScrollTop,\n to,\n props.duration,\n () => {\n // make sure it is executed after throttleByRaf's handleScroll\n setTimeout(() => {\n isScrolling = false\n }, 20)\n }\n )\n}\n\nconst scrollTo = (href?: string) => {\n if (href) {\n setCurrentAnchor(href)\n scrollToAnchor(href)\n }\n}\n\nconst handleClick = (e: MouseEvent, href?: string) => {\n emit('click', e, href)\n scrollTo(href)\n}\n\nconst handleScroll = throttleByRaf(() => {\n if (containerEl.value) {\n currentScrollTop = getScrollTop(containerEl.value)\n }\n const currentHref = getCurrentHref()\n if (isScrolling || isUndefined(currentHref)) return\n setCurrentAnchor(currentHref)\n})\n\nconst getCurrentHref = () => {\n if (!containerEl.value) return\n const scrollTop = getScrollTop(containerEl.value)\n const anchorTopList: { top: number; href: string }[] = []\n\n for (const href of Object.keys(links)) {\n const target = getElement(href)\n if (!target) continue\n const scrollEle = getScrollElement(target, containerEl.value)\n const distance = getOffsetTopDistance(target, scrollEle)\n anchorTopList.push({\n top: distance - props.offset - props.bound,\n href,\n })\n }\n anchorTopList.sort((prev, next) => prev.top - next.top)\n\n for (let i = 0; i < anchorTopList.length; i++) {\n const item = anchorTopList[i]\n const next = anchorTopList[i + 1]\n\n if (i === 0 && scrollTop === 0) {\n return ''\n }\n if (item.top <= scrollTop && (!next || next.top > scrollTop)) {\n return item.href\n }\n }\n}\n\nconst getContainer = () => {\n const el = getElement(props.container)\n if (!el || isWindow(el)) {\n containerEl.value = window\n } else {\n containerEl.value = el\n }\n}\n\nuseEventListener(containerEl, 'scroll', handleScroll)\n\nconst markerStyle = computed(() => {\n if (!anchorRef.value || !markerRef.value || !currentAnchor.value) return {}\n const currentLinkEl = links[currentAnchor.value]\n if (!currentLinkEl) return {}\n const anchorRect = anchorRef.value.getBoundingClientRect()\n const markerRect = markerRef.value.getBoundingClientRect()\n const linkRect = currentLinkEl.getBoundingClientRect()\n\n if (props.direction === 'horizontal') {\n const left = linkRect.left - anchorRect.left\n return {\n left: `${left}px`,\n width: `${linkRect.width}px`,\n opacity: 1,\n }\n } else {\n const top =\n linkRect.top - anchorRect.top + (linkRect.height - markerRect.height) / 2\n return {\n top: `${top}px`,\n opacity: 1,\n }\n }\n})\n\nonMounted(() => {\n getContainer()\n const hash = decodeURIComponent(window.location.hash)\n const target = getElement(hash)\n if (target) {\n scrollTo(hash)\n } else {\n handleScroll()\n }\n})\n\nwatch(\n () => props.container,\n () => {\n getContainer()\n }\n)\n\nprovide(anchorKey, {\n ns,\n direction: props.direction,\n currentAnchor,\n addLink,\n removeLink,\n handleClick,\n})\n\ndefineExpose({\n scrollTo,\n})\n</script>\n"],"names":["ref","useNamespace","computed","getElement","getScrollElement","getOffsetTopDistance","animateScrollTo","throttleByRaf","getScrollTop","isUndefined","isWindow","useEventListener","onMounted","watch","provide","anchorKey"],"mappings":"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"}
@@ -171,7 +171,7 @@ var token = require('./select/src/token.js');
171
171
  var token$1 = require('./select-v2/src/token.js');
172
172
  var skeleton = require('./skeleton/src/skeleton.js');
173
173
  var skeletonItem = require('./skeleton/src/skeleton-item.js');
174
- var slider = require('./slider/src/slider.js');
174
+ var slider = require('./slider/src/slider2.js');
175
175
  var constants$e = require('./slider/src/constants.js');
176
176
  var space = require('./space/src/space.js');
177
177
  var useSpace = require('./space/src/use-space.js');
@@ -186,7 +186,7 @@ var autoResizer = require('./table-v2/src/auto-resizer.js');
186
186
  var table = require('./table-v2/src/table.js');
187
187
  var row$1 = require('./table-v2/src/row.js');
188
188
  var tabs = require('./tabs/src/tabs.js');
189
- var tabBar = require('./tabs/src/tab-bar.js');
189
+ var tabBar = require('./tabs/src/tab-bar2.js');
190
190
  var tabNav = require('./tabs/src/tab-nav.js');
191
191
  var tabPane = require('./tabs/src/tab-pane.js');
192
192
  var constants$g = require('./tabs/src/constants.js');
@@ -215,7 +215,7 @@ var dynamicSizeGrid = require('./virtual-list/src/components/dynamic-size-grid.j
215
215
  var props$1 = require('./virtual-list/src/props.js');
216
216
  var watermark = require('./watermark/src/watermark.js');
217
217
  var tour = require('./tour/src/tour.js');
218
- var anchor = require('./anchor/src/anchor2.js');
218
+ var anchor = require('./anchor/src/anchor.js');
219
219
  var directive = require('./loading/src/directive.js');
220
220
  var service = require('./loading/src/service.js');
221
221
  var message = require('./message/src/message.js');
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('../../utils/index.js');
6
- var slider$1 = require('./src/slider2.js');
7
- var slider = require('./src/slider.js');
6
+ var slider$1 = require('./src/slider.js');
7
+ var slider = require('./src/slider2.js');
8
8
  var constants = require('./src/constants.js');
9
9
  var install = require('../../utils/vue/install.js');
10
10