@element-plus/nightly 0.0.20240322 → 0.0.20240324
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.
- package/dist/index.full.js +6 -3
- package/dist/index.full.min.js +3 -3
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +3 -3
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +6 -3
- package/dist/locale/af.js +1 -1
- package/dist/locale/af.min.js +1 -1
- package/dist/locale/af.min.mjs +1 -1
- package/dist/locale/af.mjs +1 -1
- package/dist/locale/ar-eg.js +1 -1
- package/dist/locale/ar-eg.min.js +1 -1
- package/dist/locale/ar-eg.min.mjs +1 -1
- package/dist/locale/ar-eg.mjs +1 -1
- package/dist/locale/ar.js +1 -1
- package/dist/locale/ar.min.js +1 -1
- package/dist/locale/ar.min.mjs +1 -1
- package/dist/locale/ar.mjs +1 -1
- package/dist/locale/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.mjs +1 -1
- package/dist/locale/bn.js +1 -1
- package/dist/locale/bn.min.js +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.mjs +1 -1
- package/dist/locale/ca.js +1 -1
- package/dist/locale/ca.min.js +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.mjs +1 -1
- package/dist/locale/ckb.js +1 -1
- package/dist/locale/ckb.min.js +1 -1
- package/dist/locale/ckb.min.mjs +1 -1
- package/dist/locale/ckb.mjs +1 -1
- package/dist/locale/cs.js +1 -1
- package/dist/locale/cs.min.js +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.mjs +1 -1
- package/dist/locale/da.js +1 -1
- package/dist/locale/da.min.js +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.mjs +1 -1
- package/dist/locale/de.js +1 -1
- package/dist/locale/de.min.js +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.mjs +1 -1
- package/dist/locale/el.js +1 -1
- package/dist/locale/el.min.js +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.mjs +1 -1
- package/dist/locale/en.js +1 -1
- package/dist/locale/en.min.js +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.mjs +1 -1
- package/dist/locale/eo.js +1 -1
- package/dist/locale/eo.min.js +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.mjs +1 -1
- package/dist/locale/es.js +1 -1
- package/dist/locale/es.min.js +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.mjs +1 -1
- package/dist/locale/et.js +1 -1
- package/dist/locale/et.min.js +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.mjs +1 -1
- package/dist/locale/eu.js +1 -1
- package/dist/locale/eu.min.js +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.mjs +1 -1
- package/dist/locale/fa.js +1 -1
- package/dist/locale/fa.min.js +1 -1
- package/dist/locale/fa.min.mjs +1 -1
- package/dist/locale/fa.mjs +1 -1
- package/dist/locale/fi.js +1 -1
- package/dist/locale/fi.min.js +1 -1
- package/dist/locale/fi.min.mjs +1 -1
- package/dist/locale/fi.mjs +1 -1
- package/dist/locale/fr.js +1 -1
- package/dist/locale/fr.min.js +1 -1
- package/dist/locale/fr.min.mjs +1 -1
- package/dist/locale/fr.mjs +1 -1
- package/dist/locale/he.js +1 -1
- package/dist/locale/he.min.js +1 -1
- package/dist/locale/he.min.mjs +1 -1
- package/dist/locale/he.mjs +1 -1
- package/dist/locale/hr.js +1 -1
- package/dist/locale/hr.min.js +1 -1
- package/dist/locale/hr.min.mjs +1 -1
- package/dist/locale/hr.mjs +1 -1
- package/dist/locale/hu.js +1 -1
- package/dist/locale/hu.min.js +1 -1
- package/dist/locale/hu.min.mjs +1 -1
- package/dist/locale/hu.mjs +1 -1
- package/dist/locale/hy-am.js +1 -1
- package/dist/locale/hy-am.min.js +1 -1
- package/dist/locale/hy-am.min.mjs +1 -1
- package/dist/locale/hy-am.mjs +1 -1
- package/dist/locale/id.js +1 -1
- package/dist/locale/id.min.js +1 -1
- package/dist/locale/id.min.mjs +1 -1
- package/dist/locale/id.mjs +1 -1
- package/dist/locale/it.js +1 -1
- package/dist/locale/it.min.js +1 -1
- package/dist/locale/it.min.mjs +1 -1
- package/dist/locale/it.mjs +1 -1
- package/dist/locale/ja.js +1 -1
- package/dist/locale/ja.min.js +1 -1
- package/dist/locale/ja.min.mjs +1 -1
- package/dist/locale/ja.mjs +1 -1
- package/dist/locale/kk.js +1 -1
- package/dist/locale/kk.min.js +1 -1
- package/dist/locale/kk.min.mjs +1 -1
- package/dist/locale/kk.mjs +1 -1
- package/dist/locale/km.js +1 -1
- package/dist/locale/km.min.js +1 -1
- package/dist/locale/km.min.mjs +1 -1
- package/dist/locale/km.mjs +1 -1
- package/dist/locale/ko.js +1 -1
- package/dist/locale/ko.min.js +1 -1
- package/dist/locale/ko.min.mjs +1 -1
- package/dist/locale/ko.mjs +1 -1
- package/dist/locale/ku.js +1 -1
- package/dist/locale/ku.min.js +1 -1
- package/dist/locale/ku.min.mjs +1 -1
- package/dist/locale/ku.mjs +1 -1
- package/dist/locale/ky.js +1 -1
- package/dist/locale/ky.min.js +1 -1
- package/dist/locale/ky.min.mjs +1 -1
- package/dist/locale/ky.mjs +1 -1
- package/dist/locale/lt.js +1 -1
- package/dist/locale/lt.min.js +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.mjs +1 -1
- package/dist/locale/lv.js +1 -1
- package/dist/locale/lv.min.js +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.mjs +1 -1
- package/dist/locale/mg.js +1 -1
- package/dist/locale/mg.min.js +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.mjs +1 -1
- package/dist/locale/mn.js +1 -1
- package/dist/locale/mn.min.js +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.mjs +1 -1
- package/dist/locale/nb-no.js +1 -1
- package/dist/locale/nb-no.min.js +1 -1
- package/dist/locale/nb-no.min.mjs +1 -1
- package/dist/locale/nb-no.mjs +1 -1
- package/dist/locale/nl.js +1 -1
- package/dist/locale/nl.min.js +1 -1
- package/dist/locale/nl.min.mjs +1 -1
- package/dist/locale/nl.mjs +1 -1
- package/dist/locale/pa.js +1 -1
- package/dist/locale/pa.min.js +1 -1
- package/dist/locale/pa.min.mjs +1 -1
- package/dist/locale/pa.mjs +1 -1
- package/dist/locale/pl.js +1 -1
- package/dist/locale/pl.min.js +1 -1
- package/dist/locale/pl.min.mjs +1 -1
- package/dist/locale/pl.mjs +1 -1
- package/dist/locale/pt-br.js +1 -1
- package/dist/locale/pt-br.min.js +1 -1
- package/dist/locale/pt-br.min.mjs +1 -1
- package/dist/locale/pt-br.mjs +1 -1
- package/dist/locale/pt.js +1 -1
- package/dist/locale/pt.min.js +1 -1
- package/dist/locale/pt.min.mjs +1 -1
- package/dist/locale/pt.mjs +1 -1
- package/dist/locale/ro.js +1 -1
- package/dist/locale/ro.min.js +1 -1
- package/dist/locale/ro.min.mjs +1 -1
- package/dist/locale/ro.mjs +1 -1
- package/dist/locale/ru.js +13 -13
- package/dist/locale/ru.min.js +1 -1
- package/dist/locale/ru.min.js.map +1 -1
- package/dist/locale/ru.min.mjs +1 -1
- package/dist/locale/ru.min.mjs.map +1 -1
- package/dist/locale/ru.mjs +13 -13
- package/dist/locale/sk.js +1 -1
- package/dist/locale/sk.min.js +1 -1
- package/dist/locale/sk.min.mjs +1 -1
- package/dist/locale/sk.mjs +1 -1
- package/dist/locale/sl.js +1 -1
- package/dist/locale/sl.min.js +1 -1
- package/dist/locale/sl.min.mjs +1 -1
- package/dist/locale/sl.mjs +1 -1
- package/dist/locale/sr.js +1 -1
- package/dist/locale/sr.min.js +1 -1
- package/dist/locale/sr.min.mjs +1 -1
- package/dist/locale/sr.mjs +1 -1
- package/dist/locale/sv.js +1 -1
- package/dist/locale/sv.min.js +1 -1
- package/dist/locale/sv.min.mjs +1 -1
- package/dist/locale/sv.mjs +1 -1
- package/dist/locale/sw.js +1 -1
- package/dist/locale/sw.min.js +1 -1
- package/dist/locale/sw.min.mjs +1 -1
- package/dist/locale/sw.mjs +1 -1
- package/dist/locale/ta.js +1 -1
- package/dist/locale/ta.min.js +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.mjs +1 -1
- package/dist/locale/th.js +1 -1
- package/dist/locale/th.min.js +1 -1
- package/dist/locale/th.min.mjs +1 -1
- package/dist/locale/th.mjs +1 -1
- package/dist/locale/tk.js +1 -1
- package/dist/locale/tk.min.js +1 -1
- package/dist/locale/tk.min.mjs +1 -1
- package/dist/locale/tk.mjs +1 -1
- package/dist/locale/tr.js +1 -1
- package/dist/locale/tr.min.js +1 -1
- package/dist/locale/tr.min.mjs +1 -1
- package/dist/locale/tr.mjs +1 -1
- package/dist/locale/ug-cn.js +1 -1
- package/dist/locale/ug-cn.min.js +1 -1
- package/dist/locale/ug-cn.min.mjs +1 -1
- package/dist/locale/ug-cn.mjs +1 -1
- package/dist/locale/uk.js +1 -1
- package/dist/locale/uk.min.js +1 -1
- package/dist/locale/uk.min.mjs +1 -1
- package/dist/locale/uk.mjs +1 -1
- package/dist/locale/uz-uz.js +1 -1
- package/dist/locale/uz-uz.min.js +1 -1
- package/dist/locale/uz-uz.min.mjs +1 -1
- package/dist/locale/uz-uz.mjs +1 -1
- package/dist/locale/vi.js +1 -1
- package/dist/locale/vi.min.js +1 -1
- package/dist/locale/vi.min.mjs +1 -1
- package/dist/locale/vi.mjs +1 -1
- package/dist/locale/zh-cn.js +1 -1
- package/dist/locale/zh-cn.min.js +1 -1
- package/dist/locale/zh-cn.min.mjs +1 -1
- package/dist/locale/zh-cn.mjs +1 -1
- package/dist/locale/zh-tw.js +1 -1
- package/dist/locale/zh-tw.min.js +1 -1
- package/dist/locale/zh-tw.min.mjs +1 -1
- package/dist/locale/zh-tw.mjs +1 -1
- package/es/components/affix/index.mjs +2 -2
- package/es/components/affix/src/affix.mjs +26 -117
- package/es/components/affix/src/affix.mjs.map +1 -1
- package/es/components/affix/src/affix2.mjs +117 -26
- package/es/components/affix/src/affix2.mjs.map +1 -1
- package/es/components/index.mjs +2 -2
- package/es/components/skeleton/index.mjs +2 -2
- package/es/components/skeleton/src/skeleton.mjs +49 -22
- package/es/components/skeleton/src/skeleton.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton2.mjs +22 -49
- package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
- package/es/components/tree/src/model/node.mjs +4 -1
- package/es/components/tree/src/model/node.mjs.map +1 -1
- package/es/index.mjs +2 -2
- package/es/locale/lang/ru.mjs +12 -12
- package/es/locale/lang/ru.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/affix/index.js +2 -2
- package/lib/components/affix/src/affix.js +27 -117
- package/lib/components/affix/src/affix.js.map +1 -1
- package/lib/components/affix/src/affix2.js +117 -27
- package/lib/components/affix/src/affix2.js.map +1 -1
- package/lib/components/index.js +2 -2
- package/lib/components/skeleton/index.js +2 -2
- package/lib/components/skeleton/src/skeleton.js +49 -22
- package/lib/components/skeleton/src/skeleton.js.map +1 -1
- package/lib/components/skeleton/src/skeleton2.js +22 -49
- package/lib/components/skeleton/src/skeleton2.js.map +1 -1
- package/lib/components/tree/src/model/node.js +4 -1
- package/lib/components/tree/src/model/node.js.map +1 -1
- package/lib/index.js +2 -2
- package/lib/locale/lang/ru.js +12 -12
- package/lib/locale/lang/ru.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/web-types.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skeleton.mjs","sources":["../../../../../../packages/components/skeleton/src/skeleton.
|
|
1
|
+
{"version":3,"file":"skeleton.mjs","sources":["../../../../../../packages/components/skeleton/src/skeleton.vue"],"sourcesContent":["<template>\n <template v-if=\"uiLoading\">\n <div :class=\"[ns.b(), ns.is('animated', animated)]\" v-bind=\"$attrs\">\n <template v-for=\"i in count\" :key=\"i\">\n <slot v-if=\"loading\" :key=\"i\" name=\"template\">\n <el-skeleton-item :class=\"ns.is('first')\" variant=\"p\" />\n <el-skeleton-item\n v-for=\"item in rows\"\n :key=\"item\"\n :class=\"[\n ns.e('paragraph'),\n ns.is('last', item === rows && rows > 1),\n ]\"\n variant=\"p\"\n />\n </slot>\n </template>\n </div>\n </template>\n <template v-else>\n <slot v-bind=\"$attrs\" />\n </template>\n</template>\n\n<script lang=\"ts\" setup>\nimport { toRef } from 'vue'\nimport { useNamespace, useThrottleRender } from '@element-plus/hooks'\nimport { skeletonProps } from './skeleton'\nimport ElSkeletonItem from './skeleton-item.vue'\n\ndefineOptions({\n name: 'ElSkeleton',\n})\nconst props = defineProps(skeletonProps)\n\nconst ns = useNamespace('skeleton')\nconst uiLoading = useThrottleRender(toRef(props, 'loading'), props.throttle)\n\ndefineExpose({\n /** @description loading state */\n uiLoading,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;mCA8Bc,CAAA;AAAA,EACZ,IAAM,EAAA,YAAA;AACR,CAAA,CAAA,CAAA;;;;;;AAGA,IAAM,MAAA,EAAA,GAAK,aAAa,UAAU,CAAA,CAAA;AAClC,IAAA,MAAM,YAAY,iBAAkB,CAAA,KAAA,CAAM,OAAO,SAAS,CAAA,EAAG,MAAM,QAAQ,CAAA,CAAA;AAE3E,IAAa,MAAA,CAAA;AAAA,MAEX,SAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,54 +1,27 @@
|
|
|
1
|
-
import
|
|
2
|
-
import '../../../
|
|
3
|
-
import { skeletonProps } from './skeleton.mjs';
|
|
4
|
-
import SkeletonItem from './skeleton-item2.mjs';
|
|
5
|
-
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
6
|
-
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
7
|
-
import { useThrottleRender } from '../../../hooks/use-throttle-render/index.mjs';
|
|
1
|
+
import '../../../utils/index.mjs';
|
|
2
|
+
import { buildProps } from '../../../utils/vue/props/runtime.mjs';
|
|
8
3
|
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
return openBlock(), createElementBlock(Fragment, { key: i }, [
|
|
29
|
-
_ctx.loading ? renderSlot(_ctx.$slots, "template", { key: i }, () => [
|
|
30
|
-
createVNode(SkeletonItem, {
|
|
31
|
-
class: normalizeClass(unref(ns).is("first")),
|
|
32
|
-
variant: "p"
|
|
33
|
-
}, null, 8, ["class"]),
|
|
34
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.rows, (item) => {
|
|
35
|
-
return openBlock(), createBlock(SkeletonItem, {
|
|
36
|
-
key: item,
|
|
37
|
-
class: normalizeClass([
|
|
38
|
-
unref(ns).e("paragraph"),
|
|
39
|
-
unref(ns).is("last", item === _ctx.rows && _ctx.rows > 1)
|
|
40
|
-
]),
|
|
41
|
-
variant: "p"
|
|
42
|
-
}, null, 8, ["class"]);
|
|
43
|
-
}), 128))
|
|
44
|
-
]) : createCommentVNode("v-if", true)
|
|
45
|
-
], 64);
|
|
46
|
-
}), 128))
|
|
47
|
-
], 16)) : renderSlot(_ctx.$slots, "default", normalizeProps(mergeProps({ key: 1 }, _ctx.$attrs)));
|
|
48
|
-
};
|
|
4
|
+
const skeletonProps = buildProps({
|
|
5
|
+
animated: {
|
|
6
|
+
type: Boolean,
|
|
7
|
+
default: false
|
|
8
|
+
},
|
|
9
|
+
count: {
|
|
10
|
+
type: Number,
|
|
11
|
+
default: 1
|
|
12
|
+
},
|
|
13
|
+
rows: {
|
|
14
|
+
type: Number,
|
|
15
|
+
default: 3
|
|
16
|
+
},
|
|
17
|
+
loading: {
|
|
18
|
+
type: Boolean,
|
|
19
|
+
default: true
|
|
20
|
+
},
|
|
21
|
+
throttle: {
|
|
22
|
+
type: Number
|
|
49
23
|
}
|
|
50
24
|
});
|
|
51
|
-
var Skeleton = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "skeleton.vue"]]);
|
|
52
25
|
|
|
53
|
-
export {
|
|
26
|
+
export { skeletonProps };
|
|
54
27
|
//# sourceMappingURL=skeleton2.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skeleton2.mjs","sources":["../../../../../../packages/components/skeleton/src/skeleton.
|
|
1
|
+
{"version":3,"file":"skeleton2.mjs","sources":["../../../../../../packages/components/skeleton/src/skeleton.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\nimport type Skeleton from './skeleton.vue'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const skeletonProps = buildProps({\n /**\n * @description whether showing the animation\n */\n animated: {\n type: Boolean,\n default: false,\n },\n /**\n * @description how many fake items to render to the DOM\n */\n count: {\n type: Number,\n default: 1,\n },\n /**\n * @description whether showing the real DOM\n */\n rows: {\n type: Number,\n default: 3,\n },\n /**\n * @description numbers of the row, only useful when no template slot were given\n */\n loading: {\n type: Boolean,\n default: true,\n },\n /**\n * @description rendering delay in milliseconds\n */\n throttle: {\n type: Number,\n },\n} as const)\nexport type SkeletonProps = ExtractPropTypes<typeof skeletonProps>\n\nexport type SkeletonInstance = InstanceType<typeof Skeleton>\n"],"names":[],"mappings":";;;AACY,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,CAAC;;;;"}
|
|
@@ -415,7 +415,10 @@ class Node {
|
|
|
415
415
|
callback.call(this, children);
|
|
416
416
|
}
|
|
417
417
|
};
|
|
418
|
-
|
|
418
|
+
const reject = () => {
|
|
419
|
+
this.loading = false;
|
|
420
|
+
};
|
|
421
|
+
this.store.load(this, resolve, reject);
|
|
419
422
|
} else {
|
|
420
423
|
if (callback) {
|
|
421
424
|
callback.call(this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.mjs","sources":["../../../../../../../packages/components/tree/src/model/node.ts"],"sourcesContent":["// @ts-nocheck\nimport { reactive } from 'vue'\nimport { hasOwn } from '@element-plus/utils'\nimport { NODE_KEY, markNodeData } from './util'\nimport type TreeStore from './tree-store'\n\nimport type { Nullable } from '@element-plus/utils'\nimport type {\n FakeNode,\n TreeKey,\n TreeNodeChildState,\n TreeNodeData,\n TreeNodeLoadedDefaultProps,\n TreeNodeOptions,\n} from '../tree.type'\n\nexport const getChildState = (node: Node[]): TreeNodeChildState => {\n let all = true\n let none = true\n let allWithoutDisable = true\n for (let i = 0, j = node.length; i < j; i++) {\n const n = node[i]\n if (n.checked !== true || n.indeterminate) {\n all = false\n if (!n.disabled) {\n allWithoutDisable = false\n }\n }\n if (n.checked !== false || n.indeterminate) {\n none = false\n }\n }\n\n return { all, none, allWithoutDisable, half: !all && !none }\n}\n\nconst reInitChecked = function (node: Node): void {\n if (node.childNodes.length === 0 || node.loading) return\n\n const { all, none, half } = getChildState(node.childNodes)\n if (all) {\n node.checked = true\n node.indeterminate = false\n } else if (half) {\n node.checked = false\n node.indeterminate = true\n } else if (none) {\n node.checked = false\n node.indeterminate = false\n }\n\n const parent = node.parent\n if (!parent || parent.level === 0) return\n\n if (!node.store.checkStrictly) {\n reInitChecked(parent)\n }\n}\n\nconst getPropertyFromData = function (node: Node, prop: string): any {\n const props = node.store.props\n const data = node.data || {}\n const config = props[prop]\n\n if (typeof config === 'function') {\n return config(data, node)\n } else if (typeof config === 'string') {\n return data[config]\n } else if (typeof config === 'undefined') {\n const dataProp = data[prop]\n return dataProp === undefined ? '' : dataProp\n }\n}\n\nlet nodeIdSeed = 0\n\nclass Node {\n id: number\n text: string\n checked: boolean\n indeterminate: boolean\n data: TreeNodeData\n expanded: boolean\n parent: Node\n visible: boolean\n isCurrent: boolean\n store: TreeStore\n isLeafByUser: boolean\n isLeaf: boolean\n canFocus: boolean\n\n level: number\n loaded: boolean\n childNodes: Node[]\n loading: boolean\n\n constructor(options: TreeNodeOptions) {\n this.id = nodeIdSeed++\n this.text = null\n this.checked = false\n this.indeterminate = false\n this.data = null\n this.expanded = false\n this.parent = null\n this.visible = true\n this.isCurrent = false\n this.canFocus = false\n\n for (const name in options) {\n if (hasOwn(options, name)) {\n this[name] = options[name]\n }\n }\n\n // internal\n this.level = 0\n this.loaded = false\n this.childNodes = []\n this.loading = false\n\n if (this.parent) {\n this.level = this.parent.level + 1\n }\n }\n\n initialize() {\n const store = this.store\n if (!store) {\n throw new Error('[Node]store is required!')\n }\n store.registerNode(this)\n\n const props = store.props\n if (props && typeof props.isLeaf !== 'undefined') {\n const isLeaf = getPropertyFromData(this, 'isLeaf')\n if (typeof isLeaf === 'boolean') {\n this.isLeafByUser = isLeaf\n }\n }\n\n if (store.lazy !== true && this.data) {\n this.setData(this.data)\n\n if (store.defaultExpandAll) {\n this.expanded = true\n this.canFocus = true\n }\n } else if (this.level > 0 && store.lazy && store.defaultExpandAll) {\n this.expand()\n }\n if (!Array.isArray(this.data)) {\n markNodeData(this, this.data)\n }\n if (!this.data) return\n\n const defaultExpandedKeys = store.defaultExpandedKeys\n const key = store.key\n\n if (key && defaultExpandedKeys && defaultExpandedKeys.includes(this.key)) {\n this.expand(null, store.autoExpandParent)\n }\n\n if (\n key &&\n store.currentNodeKey !== undefined &&\n this.key === store.currentNodeKey\n ) {\n store.currentNode = this\n store.currentNode.isCurrent = true\n }\n\n if (store.lazy) {\n store._initDefaultCheckedNode(this)\n }\n\n this.updateLeafState()\n if (this.parent && (this.level === 1 || this.parent.expanded === true))\n this.canFocus = true\n }\n\n setData(data: TreeNodeData): void {\n if (!Array.isArray(data)) {\n markNodeData(this, data)\n }\n\n this.data = data\n this.childNodes = []\n\n let children\n if (this.level === 0 && Array.isArray(this.data)) {\n children = this.data\n } else {\n children = getPropertyFromData(this, 'children') || []\n }\n\n for (let i = 0, j = children.length; i < j; i++) {\n this.insertChild({ data: children[i] })\n }\n }\n\n get label(): string {\n return getPropertyFromData(this, 'label')\n }\n\n get key(): TreeKey {\n const nodeKey = this.store.key\n if (this.data) return this.data[nodeKey]\n return null\n }\n\n get disabled(): boolean {\n return getPropertyFromData(this, 'disabled')\n }\n\n get nextSibling(): Nullable<Node> {\n const parent = this.parent\n if (parent) {\n const index = parent.childNodes.indexOf(this)\n if (index > -1) {\n return parent.childNodes[index + 1]\n }\n }\n return null\n }\n\n get previousSibling(): Nullable<Node> {\n const parent = this.parent\n if (parent) {\n const index = parent.childNodes.indexOf(this)\n if (index > -1) {\n return index > 0 ? parent.childNodes[index - 1] : null\n }\n }\n return null\n }\n\n contains(target: Node, deep = true): boolean {\n return (this.childNodes || []).some(\n (child) => child === target || (deep && child.contains(target))\n )\n }\n\n remove(): void {\n const parent = this.parent\n if (parent) {\n parent.removeChild(this)\n }\n }\n\n insertChild(child?: FakeNode | Node, index?: number, batch?: boolean): void {\n if (!child) throw new Error('InsertChild error: child is required.')\n\n if (!(child instanceof Node)) {\n if (!batch) {\n const children = this.getChildren(true)\n if (!children.includes(child.data)) {\n if (typeof index === 'undefined' || index < 0) {\n children.push(child.data)\n } else {\n children.splice(index, 0, child.data)\n }\n }\n }\n Object.assign(child, {\n parent: this,\n store: this.store,\n })\n child = reactive(new Node(child as TreeNodeOptions))\n if (child instanceof Node) {\n child.initialize()\n }\n }\n\n ;(child as Node).level = this.level + 1\n\n if (typeof index === 'undefined' || index < 0) {\n this.childNodes.push(child as Node)\n } else {\n this.childNodes.splice(index, 0, child as Node)\n }\n\n this.updateLeafState()\n }\n\n insertBefore(child: FakeNode | Node, ref: Node): void {\n let index\n if (ref) {\n index = this.childNodes.indexOf(ref)\n }\n this.insertChild(child, index)\n }\n\n insertAfter(child: FakeNode | Node, ref: Node): void {\n let index\n if (ref) {\n index = this.childNodes.indexOf(ref)\n if (index !== -1) index += 1\n }\n this.insertChild(child, index)\n }\n\n removeChild(child: Node): void {\n const children = this.getChildren() || []\n const dataIndex = children.indexOf(child.data)\n if (dataIndex > -1) {\n children.splice(dataIndex, 1)\n }\n\n const index = this.childNodes.indexOf(child)\n\n if (index > -1) {\n this.store && this.store.deregisterNode(child)\n child.parent = null\n this.childNodes.splice(index, 1)\n }\n\n this.updateLeafState()\n }\n\n removeChildByData(data: TreeNodeData): void {\n let targetNode: Node = null\n\n for (let i = 0; i < this.childNodes.length; i++) {\n if (this.childNodes[i].data === data) {\n targetNode = this.childNodes[i]\n break\n }\n }\n\n if (targetNode) {\n this.removeChild(targetNode)\n }\n }\n\n expand(callback?: () => void, expandParent?: boolean): void {\n const done = (): void => {\n if (expandParent) {\n let parent = this.parent\n while (parent.level > 0) {\n parent.expanded = true\n parent = parent.parent\n }\n }\n this.expanded = true\n if (callback) callback()\n this.childNodes.forEach((item) => {\n item.canFocus = true\n })\n }\n\n if (this.shouldLoadData()) {\n this.loadData((data) => {\n if (Array.isArray(data)) {\n if (this.checked) {\n this.setChecked(true, true)\n } else if (!this.store.checkStrictly) {\n reInitChecked(this)\n }\n done()\n }\n })\n } else {\n done()\n }\n }\n\n doCreateChildren(\n array: TreeNodeData[],\n defaultProps: TreeNodeLoadedDefaultProps = {}\n ): void {\n array.forEach((item) => {\n this.insertChild(\n Object.assign({ data: item }, defaultProps),\n undefined,\n true\n )\n })\n }\n\n collapse(): void {\n this.expanded = false\n this.childNodes.forEach((item) => {\n item.canFocus = false\n })\n }\n\n shouldLoadData(): boolean {\n return this.store.lazy === true && this.store.load && !this.loaded\n }\n\n updateLeafState(): void {\n if (\n this.store.lazy === true &&\n this.loaded !== true &&\n typeof this.isLeafByUser !== 'undefined'\n ) {\n this.isLeaf = this.isLeafByUser\n return\n }\n const childNodes = this.childNodes\n if (\n !this.store.lazy ||\n (this.store.lazy === true && this.loaded === true)\n ) {\n this.isLeaf = !childNodes || childNodes.length === 0\n return\n }\n this.isLeaf = false\n }\n\n setChecked(\n value?: boolean | string,\n deep?: boolean,\n recursion?: boolean,\n passValue?: boolean\n ) {\n this.indeterminate = value === 'half'\n this.checked = value === true\n\n if (this.store.checkStrictly) return\n\n if (!(this.shouldLoadData() && !this.store.checkDescendants)) {\n const { all, allWithoutDisable } = getChildState(this.childNodes)\n\n if (!this.isLeaf && !all && allWithoutDisable) {\n this.checked = false\n value = false\n }\n\n const handleDescendants = (): void => {\n if (deep) {\n const childNodes = this.childNodes\n for (let i = 0, j = childNodes.length; i < j; i++) {\n const child = childNodes[i]\n passValue = passValue || value !== false\n const isCheck = child.disabled ? child.checked : passValue\n child.setChecked(isCheck, deep, true, passValue)\n }\n const { half, all } = getChildState(childNodes)\n if (!all) {\n this.checked = all\n this.indeterminate = half\n }\n }\n }\n\n if (this.shouldLoadData()) {\n // Only work on lazy load data.\n this.loadData(\n () => {\n handleDescendants()\n reInitChecked(this)\n },\n {\n checked: value !== false,\n }\n )\n return\n } else {\n handleDescendants()\n }\n }\n\n const parent = this.parent\n if (!parent || parent.level === 0) return\n\n if (!recursion) {\n reInitChecked(parent)\n }\n }\n\n getChildren(forceInit = false): TreeNodeData | TreeNodeData[] {\n // this is data\n if (this.level === 0) return this.data\n const data = this.data\n if (!data) return null\n\n const props = this.store.props\n let children = 'children'\n if (props) {\n children = props.children || 'children'\n }\n\n if (data[children] === undefined) {\n data[children] = null\n }\n\n if (forceInit && !data[children]) {\n data[children] = []\n }\n\n return data[children]\n }\n\n updateChildren(): void {\n const newData = (this.getChildren() || []) as TreeNodeData[]\n const oldData = this.childNodes.map((node) => node.data)\n\n const newDataMap = {}\n const newNodes = []\n\n newData.forEach((item, index) => {\n const key = item[NODE_KEY]\n const isNodeExists =\n !!key && oldData.findIndex((data) => data[NODE_KEY] === key) >= 0\n if (isNodeExists) {\n newDataMap[key] = { index, data: item }\n } else {\n newNodes.push({ index, data: item })\n }\n })\n\n if (!this.store.lazy) {\n oldData.forEach((item) => {\n if (!newDataMap[item[NODE_KEY]]) this.removeChildByData(item)\n })\n }\n\n newNodes.forEach(({ index, data }) => {\n this.insertChild({ data }, index)\n })\n\n this.updateLeafState()\n }\n\n loadData(\n callback: (node: Node) => void,\n defaultProps: TreeNodeLoadedDefaultProps = {}\n ) {\n if (\n this.store.lazy === true &&\n this.store.load &&\n !this.loaded &&\n (!this.loading || Object.keys(defaultProps).length)\n ) {\n this.loading = true\n\n const resolve = (children) => {\n this.childNodes = []\n\n this.doCreateChildren(children, defaultProps)\n this.loaded = true\n this.loading = false\n\n this.updateLeafState()\n if (callback) {\n callback.call(this, children)\n }\n }\n\n this.store.load(this, resolve)\n } else {\n if (callback) {\n callback.call(this)\n }\n }\n }\n}\n\nexport default Node\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node.mjs","sources":["../../../../../../../packages/components/tree/src/model/node.ts"],"sourcesContent":["// @ts-nocheck\nimport { reactive } from 'vue'\nimport { hasOwn } from '@element-plus/utils'\nimport { NODE_KEY, markNodeData } from './util'\nimport type TreeStore from './tree-store'\n\nimport type { Nullable } from '@element-plus/utils'\nimport type {\n FakeNode,\n TreeKey,\n TreeNodeChildState,\n TreeNodeData,\n TreeNodeLoadedDefaultProps,\n TreeNodeOptions,\n} from '../tree.type'\n\nexport const getChildState = (node: Node[]): TreeNodeChildState => {\n let all = true\n let none = true\n let allWithoutDisable = true\n for (let i = 0, j = node.length; i < j; i++) {\n const n = node[i]\n if (n.checked !== true || n.indeterminate) {\n all = false\n if (!n.disabled) {\n allWithoutDisable = false\n }\n }\n if (n.checked !== false || n.indeterminate) {\n none = false\n }\n }\n\n return { all, none, allWithoutDisable, half: !all && !none }\n}\n\nconst reInitChecked = function (node: Node): void {\n if (node.childNodes.length === 0 || node.loading) return\n\n const { all, none, half } = getChildState(node.childNodes)\n if (all) {\n node.checked = true\n node.indeterminate = false\n } else if (half) {\n node.checked = false\n node.indeterminate = true\n } else if (none) {\n node.checked = false\n node.indeterminate = false\n }\n\n const parent = node.parent\n if (!parent || parent.level === 0) return\n\n if (!node.store.checkStrictly) {\n reInitChecked(parent)\n }\n}\n\nconst getPropertyFromData = function (node: Node, prop: string): any {\n const props = node.store.props\n const data = node.data || {}\n const config = props[prop]\n\n if (typeof config === 'function') {\n return config(data, node)\n } else if (typeof config === 'string') {\n return data[config]\n } else if (typeof config === 'undefined') {\n const dataProp = data[prop]\n return dataProp === undefined ? '' : dataProp\n }\n}\n\nlet nodeIdSeed = 0\n\nclass Node {\n id: number\n text: string\n checked: boolean\n indeterminate: boolean\n data: TreeNodeData\n expanded: boolean\n parent: Node\n visible: boolean\n isCurrent: boolean\n store: TreeStore\n isLeafByUser: boolean\n isLeaf: boolean\n canFocus: boolean\n\n level: number\n loaded: boolean\n childNodes: Node[]\n loading: boolean\n\n constructor(options: TreeNodeOptions) {\n this.id = nodeIdSeed++\n this.text = null\n this.checked = false\n this.indeterminate = false\n this.data = null\n this.expanded = false\n this.parent = null\n this.visible = true\n this.isCurrent = false\n this.canFocus = false\n\n for (const name in options) {\n if (hasOwn(options, name)) {\n this[name] = options[name]\n }\n }\n\n // internal\n this.level = 0\n this.loaded = false\n this.childNodes = []\n this.loading = false\n\n if (this.parent) {\n this.level = this.parent.level + 1\n }\n }\n\n initialize() {\n const store = this.store\n if (!store) {\n throw new Error('[Node]store is required!')\n }\n store.registerNode(this)\n\n const props = store.props\n if (props && typeof props.isLeaf !== 'undefined') {\n const isLeaf = getPropertyFromData(this, 'isLeaf')\n if (typeof isLeaf === 'boolean') {\n this.isLeafByUser = isLeaf\n }\n }\n\n if (store.lazy !== true && this.data) {\n this.setData(this.data)\n\n if (store.defaultExpandAll) {\n this.expanded = true\n this.canFocus = true\n }\n } else if (this.level > 0 && store.lazy && store.defaultExpandAll) {\n this.expand()\n }\n if (!Array.isArray(this.data)) {\n markNodeData(this, this.data)\n }\n if (!this.data) return\n\n const defaultExpandedKeys = store.defaultExpandedKeys\n const key = store.key\n\n if (key && defaultExpandedKeys && defaultExpandedKeys.includes(this.key)) {\n this.expand(null, store.autoExpandParent)\n }\n\n if (\n key &&\n store.currentNodeKey !== undefined &&\n this.key === store.currentNodeKey\n ) {\n store.currentNode = this\n store.currentNode.isCurrent = true\n }\n\n if (store.lazy) {\n store._initDefaultCheckedNode(this)\n }\n\n this.updateLeafState()\n if (this.parent && (this.level === 1 || this.parent.expanded === true))\n this.canFocus = true\n }\n\n setData(data: TreeNodeData): void {\n if (!Array.isArray(data)) {\n markNodeData(this, data)\n }\n\n this.data = data\n this.childNodes = []\n\n let children\n if (this.level === 0 && Array.isArray(this.data)) {\n children = this.data\n } else {\n children = getPropertyFromData(this, 'children') || []\n }\n\n for (let i = 0, j = children.length; i < j; i++) {\n this.insertChild({ data: children[i] })\n }\n }\n\n get label(): string {\n return getPropertyFromData(this, 'label')\n }\n\n get key(): TreeKey {\n const nodeKey = this.store.key\n if (this.data) return this.data[nodeKey]\n return null\n }\n\n get disabled(): boolean {\n return getPropertyFromData(this, 'disabled')\n }\n\n get nextSibling(): Nullable<Node> {\n const parent = this.parent\n if (parent) {\n const index = parent.childNodes.indexOf(this)\n if (index > -1) {\n return parent.childNodes[index + 1]\n }\n }\n return null\n }\n\n get previousSibling(): Nullable<Node> {\n const parent = this.parent\n if (parent) {\n const index = parent.childNodes.indexOf(this)\n if (index > -1) {\n return index > 0 ? parent.childNodes[index - 1] : null\n }\n }\n return null\n }\n\n contains(target: Node, deep = true): boolean {\n return (this.childNodes || []).some(\n (child) => child === target || (deep && child.contains(target))\n )\n }\n\n remove(): void {\n const parent = this.parent\n if (parent) {\n parent.removeChild(this)\n }\n }\n\n insertChild(child?: FakeNode | Node, index?: number, batch?: boolean): void {\n if (!child) throw new Error('InsertChild error: child is required.')\n\n if (!(child instanceof Node)) {\n if (!batch) {\n const children = this.getChildren(true)\n if (!children.includes(child.data)) {\n if (typeof index === 'undefined' || index < 0) {\n children.push(child.data)\n } else {\n children.splice(index, 0, child.data)\n }\n }\n }\n Object.assign(child, {\n parent: this,\n store: this.store,\n })\n child = reactive(new Node(child as TreeNodeOptions))\n if (child instanceof Node) {\n child.initialize()\n }\n }\n\n ;(child as Node).level = this.level + 1\n\n if (typeof index === 'undefined' || index < 0) {\n this.childNodes.push(child as Node)\n } else {\n this.childNodes.splice(index, 0, child as Node)\n }\n\n this.updateLeafState()\n }\n\n insertBefore(child: FakeNode | Node, ref: Node): void {\n let index\n if (ref) {\n index = this.childNodes.indexOf(ref)\n }\n this.insertChild(child, index)\n }\n\n insertAfter(child: FakeNode | Node, ref: Node): void {\n let index\n if (ref) {\n index = this.childNodes.indexOf(ref)\n if (index !== -1) index += 1\n }\n this.insertChild(child, index)\n }\n\n removeChild(child: Node): void {\n const children = this.getChildren() || []\n const dataIndex = children.indexOf(child.data)\n if (dataIndex > -1) {\n children.splice(dataIndex, 1)\n }\n\n const index = this.childNodes.indexOf(child)\n\n if (index > -1) {\n this.store && this.store.deregisterNode(child)\n child.parent = null\n this.childNodes.splice(index, 1)\n }\n\n this.updateLeafState()\n }\n\n removeChildByData(data: TreeNodeData): void {\n let targetNode: Node = null\n\n for (let i = 0; i < this.childNodes.length; i++) {\n if (this.childNodes[i].data === data) {\n targetNode = this.childNodes[i]\n break\n }\n }\n\n if (targetNode) {\n this.removeChild(targetNode)\n }\n }\n\n expand(callback?: () => void, expandParent?: boolean): void {\n const done = (): void => {\n if (expandParent) {\n let parent = this.parent\n while (parent.level > 0) {\n parent.expanded = true\n parent = parent.parent\n }\n }\n this.expanded = true\n if (callback) callback()\n this.childNodes.forEach((item) => {\n item.canFocus = true\n })\n }\n\n if (this.shouldLoadData()) {\n this.loadData((data) => {\n if (Array.isArray(data)) {\n if (this.checked) {\n this.setChecked(true, true)\n } else if (!this.store.checkStrictly) {\n reInitChecked(this)\n }\n done()\n }\n })\n } else {\n done()\n }\n }\n\n doCreateChildren(\n array: TreeNodeData[],\n defaultProps: TreeNodeLoadedDefaultProps = {}\n ): void {\n array.forEach((item) => {\n this.insertChild(\n Object.assign({ data: item }, defaultProps),\n undefined,\n true\n )\n })\n }\n\n collapse(): void {\n this.expanded = false\n this.childNodes.forEach((item) => {\n item.canFocus = false\n })\n }\n\n shouldLoadData(): boolean {\n return this.store.lazy === true && this.store.load && !this.loaded\n }\n\n updateLeafState(): void {\n if (\n this.store.lazy === true &&\n this.loaded !== true &&\n typeof this.isLeafByUser !== 'undefined'\n ) {\n this.isLeaf = this.isLeafByUser\n return\n }\n const childNodes = this.childNodes\n if (\n !this.store.lazy ||\n (this.store.lazy === true && this.loaded === true)\n ) {\n this.isLeaf = !childNodes || childNodes.length === 0\n return\n }\n this.isLeaf = false\n }\n\n setChecked(\n value?: boolean | string,\n deep?: boolean,\n recursion?: boolean,\n passValue?: boolean\n ) {\n this.indeterminate = value === 'half'\n this.checked = value === true\n\n if (this.store.checkStrictly) return\n\n if (!(this.shouldLoadData() && !this.store.checkDescendants)) {\n const { all, allWithoutDisable } = getChildState(this.childNodes)\n\n if (!this.isLeaf && !all && allWithoutDisable) {\n this.checked = false\n value = false\n }\n\n const handleDescendants = (): void => {\n if (deep) {\n const childNodes = this.childNodes\n for (let i = 0, j = childNodes.length; i < j; i++) {\n const child = childNodes[i]\n passValue = passValue || value !== false\n const isCheck = child.disabled ? child.checked : passValue\n child.setChecked(isCheck, deep, true, passValue)\n }\n const { half, all } = getChildState(childNodes)\n if (!all) {\n this.checked = all\n this.indeterminate = half\n }\n }\n }\n\n if (this.shouldLoadData()) {\n // Only work on lazy load data.\n this.loadData(\n () => {\n handleDescendants()\n reInitChecked(this)\n },\n {\n checked: value !== false,\n }\n )\n return\n } else {\n handleDescendants()\n }\n }\n\n const parent = this.parent\n if (!parent || parent.level === 0) return\n\n if (!recursion) {\n reInitChecked(parent)\n }\n }\n\n getChildren(forceInit = false): TreeNodeData | TreeNodeData[] {\n // this is data\n if (this.level === 0) return this.data\n const data = this.data\n if (!data) return null\n\n const props = this.store.props\n let children = 'children'\n if (props) {\n children = props.children || 'children'\n }\n\n if (data[children] === undefined) {\n data[children] = null\n }\n\n if (forceInit && !data[children]) {\n data[children] = []\n }\n\n return data[children]\n }\n\n updateChildren(): void {\n const newData = (this.getChildren() || []) as TreeNodeData[]\n const oldData = this.childNodes.map((node) => node.data)\n\n const newDataMap = {}\n const newNodes = []\n\n newData.forEach((item, index) => {\n const key = item[NODE_KEY]\n const isNodeExists =\n !!key && oldData.findIndex((data) => data[NODE_KEY] === key) >= 0\n if (isNodeExists) {\n newDataMap[key] = { index, data: item }\n } else {\n newNodes.push({ index, data: item })\n }\n })\n\n if (!this.store.lazy) {\n oldData.forEach((item) => {\n if (!newDataMap[item[NODE_KEY]]) this.removeChildByData(item)\n })\n }\n\n newNodes.forEach(({ index, data }) => {\n this.insertChild({ data }, index)\n })\n\n this.updateLeafState()\n }\n\n loadData(\n callback: (node: Node) => void,\n defaultProps: TreeNodeLoadedDefaultProps = {}\n ) {\n if (\n this.store.lazy === true &&\n this.store.load &&\n !this.loaded &&\n (!this.loading || Object.keys(defaultProps).length)\n ) {\n this.loading = true\n\n const resolve = (children) => {\n this.childNodes = []\n\n this.doCreateChildren(children, defaultProps)\n this.loaded = true\n this.loading = false\n\n this.updateLeafState()\n if (callback) {\n callback.call(this, children)\n }\n }\n const reject = () => {\n this.loading = false\n }\n\n this.store.load(this, resolve, reject)\n } else {\n if (callback) {\n callback.call(this)\n }\n }\n }\n}\n\nexport default Node\n"],"names":[],"mappings":"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"}
|
package/es/index.mjs
CHANGED
|
@@ -6,7 +6,7 @@ import './directives/index.mjs';
|
|
|
6
6
|
import './hooks/index.mjs';
|
|
7
7
|
export { makeInstaller } from './make-installer.mjs';
|
|
8
8
|
export { default as dayjs } from 'dayjs';
|
|
9
|
-
export { affixEmits, affixProps } from './components/affix/src/
|
|
9
|
+
export { affixEmits, affixProps } from './components/affix/src/affix.mjs';
|
|
10
10
|
export { ElAffix } from './components/affix/index.mjs';
|
|
11
11
|
export { alertEffects, alertEmits, alertProps } from './components/alert/src/alert.mjs';
|
|
12
12
|
export { ElAlert } from './components/alert/index.mjs';
|
|
@@ -143,7 +143,7 @@ export { selectGroupKey, selectKey } from './components/select/src/token.mjs';
|
|
|
143
143
|
export { ElOption, ElOptionGroup, ElSelect } from './components/select/index.mjs';
|
|
144
144
|
export { selectV2InjectionKey } from './components/select-v2/src/token.mjs';
|
|
145
145
|
export { ElSelectV2 } from './components/select-v2/index.mjs';
|
|
146
|
-
export { skeletonProps } from './components/skeleton/src/
|
|
146
|
+
export { skeletonProps } from './components/skeleton/src/skeleton2.mjs';
|
|
147
147
|
export { skeletonItemProps } from './components/skeleton/src/skeleton-item.mjs';
|
|
148
148
|
export { ElSkeleton, ElSkeletonItem } from './components/skeleton/index.mjs';
|
|
149
149
|
export { sliderEmits, sliderProps } from './components/slider/src/slider.mjs';
|
package/es/locale/lang/ru.mjs
CHANGED
|
@@ -2,7 +2,7 @@ var ru = {
|
|
|
2
2
|
name: "ru",
|
|
3
3
|
el: {
|
|
4
4
|
breadcrumb: {
|
|
5
|
-
label: "
|
|
5
|
+
label: "\u0425\u043B\u0435\u0431\u043D\u044B\u0435 \u043A\u0440\u043E\u0448\u043A\u0438"
|
|
6
6
|
},
|
|
7
7
|
colorpicker: {
|
|
8
8
|
confirm: "OK",
|
|
@@ -79,12 +79,12 @@ var ru = {
|
|
|
79
79
|
pagesize: " \u043D\u0430 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0435",
|
|
80
80
|
total: "\u0412\u0441\u0435\u0433\u043E {total}",
|
|
81
81
|
pageClassifier: "",
|
|
82
|
-
page: "
|
|
83
|
-
prev: "
|
|
84
|
-
next: "
|
|
85
|
-
currentPage: "
|
|
86
|
-
prevPages: "
|
|
87
|
-
nextPages: "
|
|
82
|
+
page: "\u0421\u0442\u0440\u0430\u043D\u0438\u0446\u0430",
|
|
83
|
+
prev: "\u041F\u0435\u0440\u0435\u0439\u0442\u0438 \u043D\u0430 \u043F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0443\u044E \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443",
|
|
84
|
+
next: "\u041F\u0435\u0440\u0435\u0439\u0442\u0438 \u043D\u0430 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0443\u044E \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443",
|
|
85
|
+
currentPage: "\u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 {pager}",
|
|
86
|
+
prevPages: "\u041F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0438\u0435 {pager} \u0441\u0442\u0440\u0430\u043D\u0438\u0446",
|
|
87
|
+
nextPages: "\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 {pager} \u0441\u0442\u0440\u0430\u043D\u0438\u0446"
|
|
88
88
|
},
|
|
89
89
|
messagebox: {
|
|
90
90
|
title: "\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435",
|
|
@@ -122,19 +122,19 @@ var ru = {
|
|
|
122
122
|
hasCheckedFormat: "{checked}/{total} \u0432\u044B\u0431\u0440\u0430\u043D\u043E"
|
|
123
123
|
},
|
|
124
124
|
image: {
|
|
125
|
-
error: "
|
|
125
|
+
error: "\u041E\u0428\u0418\u0411\u041A\u0410"
|
|
126
126
|
},
|
|
127
127
|
pageHeader: {
|
|
128
|
-
title: "
|
|
128
|
+
title: "\u041D\u0430\u0437\u0430\u0434"
|
|
129
129
|
},
|
|
130
130
|
popconfirm: {
|
|
131
131
|
confirmButtonText: "OK",
|
|
132
132
|
cancelButtonText: "\u041E\u0442\u043C\u0435\u043D\u0430"
|
|
133
133
|
},
|
|
134
134
|
carousel: {
|
|
135
|
-
leftArrow: "
|
|
136
|
-
rightArrow: "
|
|
137
|
-
indicator: "
|
|
135
|
+
leftArrow: "\u0421\u043B\u0430\u0439\u0434\u0435\u0440 \u0441\u0442\u0440\u0435\u043B\u043A\u0430 \u0432\u043B\u0435\u0432\u043E",
|
|
136
|
+
rightArrow: "\u0421\u043B\u0430\u0439\u0434\u0435\u0440 \u0441\u0442\u0440\u0435\u043B\u043A\u0430 \u0432\u043F\u0440\u0430\u0432\u043E",
|
|
137
|
+
indicator: "\u0421\u043B\u0430\u0439\u0434\u0435\u0440 \u043F\u0435\u0440\u0435\u0439\u0442\u0438 \u043D\u0430 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 \u043F\u043E\u0434 \u043D\u043E\u043C\u0435\u0440\u043E\u043C {index}"
|
|
138
138
|
}
|
|
139
139
|
}
|
|
140
140
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ru.mjs","sources":["../../../../../packages/locale/lang/ru.ts"],"sourcesContent":["export default {\n name: 'ru',\n el: {\n breadcrumb: {\n label: '
|
|
1
|
+
{"version":3,"file":"ru.mjs","sources":["../../../../../packages/locale/lang/ru.ts"],"sourcesContent":["export default {\n name: 'ru',\n el: {\n breadcrumb: {\n label: 'Хлебные крошки',\n },\n colorpicker: {\n confirm: 'OK',\n clear: 'Очистить',\n },\n datepicker: {\n now: 'Сейчас',\n today: 'Сегодня',\n cancel: 'Отмена',\n clear: 'Очистить',\n confirm: 'OK',\n selectDate: 'Выбрать дату',\n selectTime: 'Выбрать время',\n startDate: 'Дата начала',\n startTime: 'Время начала',\n endDate: 'Дата окончания',\n endTime: 'Время окончания',\n prevYear: 'Предыдущий год',\n nextYear: 'Следующий год',\n prevMonth: 'Предыдущий месяц',\n nextMonth: 'Следующий месяц',\n year: '',\n month1: 'Январь',\n month2: 'Февраль',\n month3: 'Март',\n month4: 'Апрель',\n month5: 'Май',\n month6: 'Июнь',\n month7: 'Июль',\n month8: 'Август',\n month9: 'Сентябрь',\n month10: 'Октябрь',\n month11: 'Ноябрь',\n month12: 'Декабрь',\n week: 'неделя',\n weeks: {\n sun: 'Вс',\n mon: 'Пн',\n tue: 'Вт',\n wed: 'Ср',\n thu: 'Чт',\n fri: 'Пт',\n sat: 'Сб',\n },\n months: {\n jan: 'Янв',\n feb: 'Фев',\n mar: 'Мар',\n apr: 'Апр',\n may: 'Май',\n jun: 'Июн',\n jul: 'Июл',\n aug: 'Авг',\n sep: 'Сен',\n oct: 'Окт',\n nov: 'Ноя',\n dec: 'Дек',\n },\n },\n select: {\n loading: 'Загрузка',\n noMatch: 'Совпадений не найдено',\n noData: 'Нет данных',\n placeholder: 'Выбрать',\n },\n cascader: {\n noMatch: 'Совпадений не найдено',\n loading: 'Загрузка',\n placeholder: 'Выбрать',\n noData: 'Нет данных',\n },\n pagination: {\n goto: 'Перейти',\n pagesize: ' на странице',\n total: 'Всего {total}',\n pageClassifier: '',\n page: 'Страница',\n prev: 'Перейти на предыдущую страницу',\n next: 'Перейти на следующую страницу',\n currentPage: 'страница {pager}',\n prevPages: 'Предыдущие {pager} страниц',\n nextPages: 'Следующие {pager} страниц',\n },\n messagebox: {\n title: 'Сообщение',\n confirm: 'OK',\n cancel: 'Отмена',\n error: 'Недопустимый ввод данных',\n },\n upload: {\n deleteTip: 'Нажмите [Удалить] для удаления',\n delete: 'Удалить',\n preview: 'Превью',\n continue: 'Продолжить',\n },\n table: {\n emptyText: 'Нет данных',\n confirmFilter: 'Подтвердить',\n resetFilter: 'Сбросить',\n clearFilter: 'Все',\n sumText: 'Сумма',\n },\n tour: {\n next: 'Далее',\n previous: 'Назад',\n finish: 'Завершить',\n },\n tree: {\n emptyText: 'Нет данных',\n },\n transfer: {\n noMatch: 'Совпадений не найдено',\n noData: 'Нет данных',\n titles: ['Список 1', 'Список 2'],\n filterPlaceholder: 'Введите ключевое слово',\n noCheckedFormat: '{total} пунктов',\n hasCheckedFormat: '{checked}/{total} выбрано',\n },\n image: {\n error: 'ОШИБКА',\n },\n pageHeader: {\n title: 'Назад',\n },\n popconfirm: {\n confirmButtonText: 'OK',\n cancelButtonText: 'Отмена',\n },\n carousel: {\n leftArrow: 'Слайдер стрелка влево',\n rightArrow: 'Слайдер стрелка вправо',\n indicator: 'Слайдер перейти на страницу под номером {index}',\n },\n },\n}\n"],"names":[],"mappings":"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"}
|
package/es/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "0.0.
|
|
1
|
+
export declare const version = "0.0.20240324";
|
package/es/version.mjs
CHANGED
package/es/version.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.
|
|
1
|
+
{"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20240324'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
require('../../utils/index.js');
|
|
6
|
-
var affix$1 = require('./src/
|
|
7
|
-
var affix = require('./src/
|
|
6
|
+
var affix$1 = require('./src/affix2.js');
|
|
7
|
+
var affix = require('./src/affix.js');
|
|
8
8
|
var install = require('../../utils/vue/install.js');
|
|
9
9
|
|
|
10
10
|
const ElAffix = install.withInstall(affix$1["default"]);
|
|
@@ -2,126 +2,36 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var vue = require('vue');
|
|
6
|
-
var core = require('@vueuse/core');
|
|
7
5
|
require('../../../utils/index.js');
|
|
8
|
-
require('../../../
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var style = require('../../../utils/dom/style.js');
|
|
13
|
-
var error = require('../../../utils/error.js');
|
|
14
|
-
var scroll = require('../../../utils/dom/scroll.js');
|
|
6
|
+
require('../../../constants/index.js');
|
|
7
|
+
var runtime = require('../../../utils/vue/props/runtime.js');
|
|
8
|
+
var types = require('../../../utils/types.js');
|
|
9
|
+
var event = require('../../../constants/event.js');
|
|
15
10
|
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
width: rootWidth,
|
|
34
|
-
top: rootTop,
|
|
35
|
-
bottom: rootBottom,
|
|
36
|
-
update: updateRoot
|
|
37
|
-
} = core.useElementBounding(root, { windowScroll: false });
|
|
38
|
-
const targetRect = core.useElementBounding(target);
|
|
39
|
-
const fixed = vue.ref(false);
|
|
40
|
-
const scrollTop = vue.ref(0);
|
|
41
|
-
const transform = vue.ref(0);
|
|
42
|
-
const rootStyle = vue.computed(() => {
|
|
43
|
-
return {
|
|
44
|
-
height: fixed.value ? `${rootHeight.value}px` : "",
|
|
45
|
-
width: fixed.value ? `${rootWidth.value}px` : ""
|
|
46
|
-
};
|
|
47
|
-
});
|
|
48
|
-
const affixStyle = vue.computed(() => {
|
|
49
|
-
if (!fixed.value)
|
|
50
|
-
return {};
|
|
51
|
-
const offset = props.offset ? style.addUnit(props.offset) : 0;
|
|
52
|
-
return {
|
|
53
|
-
height: `${rootHeight.value}px`,
|
|
54
|
-
width: `${rootWidth.value}px`,
|
|
55
|
-
top: props.position === "top" ? offset : "",
|
|
56
|
-
bottom: props.position === "bottom" ? offset : "",
|
|
57
|
-
transform: transform.value ? `translateY(${transform.value}px)` : "",
|
|
58
|
-
zIndex: props.zIndex
|
|
59
|
-
};
|
|
60
|
-
});
|
|
61
|
-
const update = () => {
|
|
62
|
-
if (!scrollContainer.value)
|
|
63
|
-
return;
|
|
64
|
-
scrollTop.value = scrollContainer.value instanceof Window ? document.documentElement.scrollTop : scrollContainer.value.scrollTop || 0;
|
|
65
|
-
if (props.position === "top") {
|
|
66
|
-
if (props.target) {
|
|
67
|
-
const difference = targetRect.bottom.value - props.offset - rootHeight.value;
|
|
68
|
-
fixed.value = props.offset > rootTop.value && targetRect.bottom.value > 0;
|
|
69
|
-
transform.value = difference < 0 ? difference : 0;
|
|
70
|
-
} else {
|
|
71
|
-
fixed.value = props.offset > rootTop.value;
|
|
72
|
-
}
|
|
73
|
-
} else if (props.target) {
|
|
74
|
-
const difference = windowHeight.value - targetRect.top.value - props.offset - rootHeight.value;
|
|
75
|
-
fixed.value = windowHeight.value - props.offset < rootBottom.value && windowHeight.value > targetRect.top.value;
|
|
76
|
-
transform.value = difference < 0 ? -difference : 0;
|
|
77
|
-
} else {
|
|
78
|
-
fixed.value = windowHeight.value - props.offset < rootBottom.value;
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
const handleScroll = () => {
|
|
82
|
-
updateRoot();
|
|
83
|
-
emit("scroll", {
|
|
84
|
-
scrollTop: scrollTop.value,
|
|
85
|
-
fixed: fixed.value
|
|
86
|
-
});
|
|
87
|
-
};
|
|
88
|
-
vue.watch(fixed, (val) => emit("change", val));
|
|
89
|
-
vue.onMounted(() => {
|
|
90
|
-
var _a;
|
|
91
|
-
if (props.target) {
|
|
92
|
-
target.value = (_a = document.querySelector(props.target)) != null ? _a : void 0;
|
|
93
|
-
if (!target.value)
|
|
94
|
-
error.throwError(COMPONENT_NAME, `Target is not existed: ${props.target}`);
|
|
95
|
-
} else {
|
|
96
|
-
target.value = document.documentElement;
|
|
97
|
-
}
|
|
98
|
-
scrollContainer.value = scroll.getScrollContainer(root.value, true);
|
|
99
|
-
updateRoot();
|
|
100
|
-
});
|
|
101
|
-
core.useEventListener(scrollContainer, "scroll", handleScroll);
|
|
102
|
-
vue.watchEffect(update);
|
|
103
|
-
expose({
|
|
104
|
-
update,
|
|
105
|
-
updateRoot
|
|
106
|
-
});
|
|
107
|
-
return (_ctx, _cache) => {
|
|
108
|
-
return vue.openBlock(), vue.createElementBlock("div", {
|
|
109
|
-
ref_key: "root",
|
|
110
|
-
ref: root,
|
|
111
|
-
class: vue.normalizeClass(vue.unref(ns).b()),
|
|
112
|
-
style: vue.normalizeStyle(vue.unref(rootStyle))
|
|
113
|
-
}, [
|
|
114
|
-
vue.createElementVNode("div", {
|
|
115
|
-
class: vue.normalizeClass({ [vue.unref(ns).m("fixed")]: fixed.value }),
|
|
116
|
-
style: vue.normalizeStyle(vue.unref(affixStyle))
|
|
117
|
-
}, [
|
|
118
|
-
vue.renderSlot(_ctx.$slots, "default")
|
|
119
|
-
], 6)
|
|
120
|
-
], 6);
|
|
121
|
-
};
|
|
11
|
+
const affixProps = runtime.buildProps({
|
|
12
|
+
zIndex: {
|
|
13
|
+
type: runtime.definePropType([Number, String]),
|
|
14
|
+
default: 100
|
|
15
|
+
},
|
|
16
|
+
target: {
|
|
17
|
+
type: String,
|
|
18
|
+
default: ""
|
|
19
|
+
},
|
|
20
|
+
offset: {
|
|
21
|
+
type: Number,
|
|
22
|
+
default: 0
|
|
23
|
+
},
|
|
24
|
+
position: {
|
|
25
|
+
type: String,
|
|
26
|
+
values: ["top", "bottom"],
|
|
27
|
+
default: "top"
|
|
122
28
|
}
|
|
123
29
|
});
|
|
124
|
-
|
|
30
|
+
const affixEmits = {
|
|
31
|
+
scroll: ({ scrollTop, fixed }) => types.isNumber(scrollTop) && types.isBoolean(fixed),
|
|
32
|
+
[event.CHANGE_EVENT]: (fixed) => types.isBoolean(fixed)
|
|
33
|
+
};
|
|
125
34
|
|
|
126
|
-
exports
|
|
35
|
+
exports.affixEmits = affixEmits;
|
|
36
|
+
exports.affixProps = affixProps;
|
|
127
37
|
//# sourceMappingURL=affix.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"affix.js","sources":["../../../../../../packages/components/affix/src/affix.
|
|
1
|
+
{"version":3,"file":"affix.js","sources":["../../../../../../packages/components/affix/src/affix.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isBoolean,\n isNumber,\n} from '@element-plus/utils'\nimport { CHANGE_EVENT } from '@element-plus/constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type { ZIndexProperty } from 'csstype'\nimport type Affix from './affix.vue'\n\nexport const affixProps = buildProps({\n /**\n * @description affix element zIndex value\n * */\n zIndex: {\n type: definePropType<ZIndexProperty>([Number, String]),\n default: 100,\n },\n /**\n * @description target container. (CSS selector)\n */\n target: {\n type: String,\n default: '',\n },\n /**\n * @description offset distance\n * */\n offset: {\n type: Number,\n default: 0,\n },\n /**\n * @description position of affix\n * */\n position: {\n type: String,\n values: ['top', 'bottom'],\n default: 'top',\n },\n} as const)\nexport type AffixProps = ExtractPropTypes<typeof affixProps>\n\nexport const affixEmits = {\n scroll: ({ scrollTop, fixed }: { scrollTop: number; fixed: boolean }) =>\n isNumber(scrollTop) && isBoolean(fixed),\n [CHANGE_EVENT]: (fixed: boolean) => isBoolean(fixed),\n}\nexport type AffixEmits = typeof affixEmits\n\nexport type AffixInstance = InstanceType<typeof Affix>\n"],"names":["buildProps","definePropType","isNumber","isBoolean","CHANGE_EVENT"],"mappings":";;;;;;;;;;AAOY,MAAC,UAAU,GAAGA,kBAAU,CAAC;AACrC,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;AAC7B,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,KAAKC,cAAQ,CAAC,SAAS,CAAC,IAAIC,eAAS,CAAC,KAAK,CAAC;AAC3E,EAAE,CAACC,kBAAY,GAAG,CAAC,KAAK,KAAKD,eAAS,CAAC,KAAK,CAAC;AAC7C;;;;;"}
|