vxe-pc-ui 4.14.19 → 4.14.21

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 (142) hide show
  1. package/es/language/ar-EG.js +2 -2
  2. package/es/language/de-DE.js +2 -2
  3. package/es/language/en-US.js +2 -2
  4. package/es/language/es-ES.js +2 -2
  5. package/es/language/fr-FR.js +2 -2
  6. package/es/language/hu-HU.js +2 -2
  7. package/es/language/hy-AM.js +2 -2
  8. package/es/language/id-ID.js +2 -2
  9. package/es/language/it-IT.js +2 -2
  10. package/es/language/ja-JP.js +2 -2
  11. package/es/language/ko-KR.js +2 -2
  12. package/es/language/ms-MY.js +2 -2
  13. package/es/language/nb-NO.js +2 -2
  14. package/es/language/pt-BR.js +2 -2
  15. package/es/language/ru-RU.js +2 -2
  16. package/es/language/th-TH.js +2 -2
  17. package/es/language/ug-CN.js +2 -2
  18. package/es/language/uk-UA.js +2 -2
  19. package/es/language/uz-UZ.js +2 -2
  20. package/es/language/vi-VN.js +2 -2
  21. package/es/language/zh-CHT.js +2 -2
  22. package/es/language/zh-CN.js +2 -2
  23. package/es/tree/src/tree.js +24 -19
  24. package/es/tree-select/src/tree-select.js +66 -19
  25. package/es/ui/index.js +2 -1
  26. package/es/ui/src/log.js +1 -1
  27. package/lib/index.umd.js +107 -49
  28. package/lib/index.umd.min.js +1 -1
  29. package/lib/language/ar-EG.js +2 -2
  30. package/lib/language/ar-EG.min.js +1 -1
  31. package/lib/language/ar-EG.umd.js +2 -2
  32. package/lib/language/de-DE.js +2 -2
  33. package/lib/language/de-DE.min.js +1 -1
  34. package/lib/language/de-DE.umd.js +2 -2
  35. package/lib/language/en-US.js +2 -2
  36. package/lib/language/en-US.min.js +1 -1
  37. package/lib/language/en-US.umd.js +2 -2
  38. package/lib/language/es-ES.js +2 -2
  39. package/lib/language/es-ES.min.js +1 -1
  40. package/lib/language/es-ES.umd.js +2 -2
  41. package/lib/language/fr-FR.js +2 -2
  42. package/lib/language/fr-FR.min.js +1 -1
  43. package/lib/language/fr-FR.umd.js +2 -2
  44. package/lib/language/hu-HU.js +2 -2
  45. package/lib/language/hu-HU.min.js +1 -1
  46. package/lib/language/hu-HU.umd.js +2 -2
  47. package/lib/language/hy-AM.js +2 -2
  48. package/lib/language/hy-AM.min.js +1 -1
  49. package/lib/language/hy-AM.umd.js +2 -2
  50. package/lib/language/id-ID.js +2 -2
  51. package/lib/language/id-ID.min.js +1 -1
  52. package/lib/language/id-ID.umd.js +2 -2
  53. package/lib/language/it-IT.js +2 -2
  54. package/lib/language/it-IT.min.js +1 -1
  55. package/lib/language/it-IT.umd.js +2 -2
  56. package/lib/language/ja-JP.js +2 -2
  57. package/lib/language/ja-JP.min.js +1 -1
  58. package/lib/language/ja-JP.umd.js +2 -2
  59. package/lib/language/ko-KR.js +2 -2
  60. package/lib/language/ko-KR.min.js +1 -1
  61. package/lib/language/ko-KR.umd.js +2 -2
  62. package/lib/language/ms-MY.js +2 -2
  63. package/lib/language/ms-MY.min.js +1 -1
  64. package/lib/language/ms-MY.umd.js +2 -2
  65. package/lib/language/nb-NO.js +2 -2
  66. package/lib/language/nb-NO.min.js +1 -1
  67. package/lib/language/nb-NO.umd.js +2 -2
  68. package/lib/language/pt-BR.js +2 -2
  69. package/lib/language/pt-BR.min.js +1 -1
  70. package/lib/language/pt-BR.umd.js +2 -2
  71. package/lib/language/ru-RU.js +2 -2
  72. package/lib/language/ru-RU.min.js +1 -1
  73. package/lib/language/ru-RU.umd.js +2 -2
  74. package/lib/language/th-TH.js +2 -2
  75. package/lib/language/th-TH.min.js +1 -1
  76. package/lib/language/th-TH.umd.js +2 -2
  77. package/lib/language/ug-CN.js +2 -2
  78. package/lib/language/ug-CN.min.js +1 -1
  79. package/lib/language/ug-CN.umd.js +2 -2
  80. package/lib/language/uk-UA.js +2 -2
  81. package/lib/language/uk-UA.min.js +1 -1
  82. package/lib/language/uk-UA.umd.js +2 -2
  83. package/lib/language/uz-UZ.js +2 -2
  84. package/lib/language/uz-UZ.min.js +1 -1
  85. package/lib/language/uz-UZ.umd.js +2 -2
  86. package/lib/language/vi-VN.js +2 -2
  87. package/lib/language/vi-VN.min.js +1 -1
  88. package/lib/language/vi-VN.umd.js +2 -2
  89. package/lib/language/zh-CHT.js +2 -2
  90. package/lib/language/zh-CHT.min.js +1 -1
  91. package/lib/language/zh-CHT.umd.js +2 -2
  92. package/lib/language/zh-CN.js +2 -2
  93. package/lib/language/zh-CN.min.js +1 -1
  94. package/lib/language/zh-CN.umd.js +2 -2
  95. package/lib/tree/src/tree.js +33 -24
  96. package/lib/tree/src/tree.min.js +1 -1
  97. package/lib/tree-select/src/tree-select.js +69 -20
  98. package/lib/tree-select/src/tree-select.min.js +1 -1
  99. package/lib/ui/index.js +2 -1
  100. package/lib/ui/index.min.js +1 -1
  101. package/lib/ui/src/log.js +1 -1
  102. package/lib/ui/src/log.min.js +1 -1
  103. package/package.json +1 -1
  104. package/packages/language/ar-EG.ts +2 -2
  105. package/packages/language/de-DE.ts +2 -2
  106. package/packages/language/en-US.ts +2 -2
  107. package/packages/language/es-ES.ts +2 -2
  108. package/packages/language/fr-FR.ts +2 -2
  109. package/packages/language/hu-HU.ts +2 -2
  110. package/packages/language/hy-AM.ts +2 -2
  111. package/packages/language/id-ID.ts +2 -2
  112. package/packages/language/it-IT.ts +2 -2
  113. package/packages/language/ja-JP.ts +2 -2
  114. package/packages/language/ko-KR.ts +2 -2
  115. package/packages/language/ms-MY.ts +2 -2
  116. package/packages/language/nb-NO.ts +2 -2
  117. package/packages/language/pt-BR.ts +2 -2
  118. package/packages/language/ru-RU.ts +2 -2
  119. package/packages/language/th-TH.ts +2 -2
  120. package/packages/language/ug-CN.ts +2 -2
  121. package/packages/language/uk-UA.ts +2 -2
  122. package/packages/language/uz-UZ.ts +2 -2
  123. package/packages/language/vi-VN.ts +2 -2
  124. package/packages/language/zh-CHT.ts +2 -2
  125. package/packages/language/zh-CN.ts +2 -2
  126. package/packages/tree/src/tree.ts +25 -19
  127. package/packages/tree-select/src/tree-select.ts +71 -27
  128. package/packages/ui/index.ts +1 -0
  129. package/types/components/tree-select.d.ts +18 -7
  130. package/types/components/tree.d.ts +4 -0
  131. /package/es/icon/{iconfont.1779445589457.ttf → iconfont.1779687105351.ttf} +0 -0
  132. /package/es/icon/{iconfont.1779445589457.woff → iconfont.1779687105351.woff} +0 -0
  133. /package/es/icon/{iconfont.1779445589457.woff2 → iconfont.1779687105351.woff2} +0 -0
  134. /package/es/{iconfont.1779445589457.ttf → iconfont.1779687105351.ttf} +0 -0
  135. /package/es/{iconfont.1779445589457.woff → iconfont.1779687105351.woff} +0 -0
  136. /package/es/{iconfont.1779445589457.woff2 → iconfont.1779687105351.woff2} +0 -0
  137. /package/lib/icon/style/{iconfont.1779445589457.ttf → iconfont.1779687105351.ttf} +0 -0
  138. /package/lib/icon/style/{iconfont.1779445589457.woff → iconfont.1779687105351.woff} +0 -0
  139. /package/lib/icon/style/{iconfont.1779445589457.woff2 → iconfont.1779687105351.woff2} +0 -0
  140. /package/lib/{iconfont.1779445589457.ttf → iconfont.1779687105351.ttf} +0 -0
  141. /package/lib/{iconfont.1779445589457.woff → iconfont.1779687105351.woff} +0 -0
  142. /package/lib/{iconfont.1779445589457.woff2 → iconfont.1779687105351.woff2} +0 -0
@@ -24,14 +24,17 @@ function createReactData() {
24
24
  triggerFocusPanel: false,
25
25
  visiblePanel: false,
26
26
  isAniVisible: false,
27
- isActivated: false
27
+ isActivated: false,
28
+ fullOptFlag: 1,
29
+ lazyOptFlag: 1
28
30
  };
29
31
  }
30
32
  function createInternalData() {
31
33
  return {
32
34
  // hpTimeout: undefined,
33
35
  fullOptionList: [],
34
- fullNodeMaps: {}
36
+ fullNodeMaps: {},
37
+ lazyNodeMaps: {}
35
38
  };
36
39
  }
37
40
  export default defineVxeComponent({
@@ -52,6 +55,14 @@ export default defineVxeComponent({
52
55
  type: Boolean,
53
56
  default: null
54
57
  },
58
+ showFullLabel: {
59
+ type: Boolean,
60
+ default: getConfig().treeSelect.showFullLabel
61
+ },
62
+ separator: {
63
+ type: String,
64
+ default: getConfig().treeSelect.separator
65
+ },
55
66
  filterable: Boolean,
56
67
  filterConfig: Object,
57
68
  multiple: Boolean,
@@ -262,20 +273,20 @@ export default defineVxeComponent({
262
273
  return Object.assign({}, treeOpts.filterConfig, props.filterConfig);
263
274
  });
264
275
  const computeSelectLabel = computed(() => {
265
- const { modelValue, lazyOptions } = props;
266
- const { fullNodeMaps } = internalData;
267
- const valueField = computeValueField.value;
276
+ const { modelValue, showFullLabel } = props;
277
+ const { fullOptFlag, lazyOptFlag } = reactData;
278
+ const { fullNodeMaps, lazyNodeMaps } = internalData;
268
279
  const labelField = computeLabelField.value;
269
280
  const selectVals = XEUtils.eqNull(modelValue) ? [] : (XEUtils.isArray(modelValue) ? modelValue : [modelValue]);
270
281
  return selectVals.map(val => {
271
282
  const cacheItem = fullNodeMaps[val];
272
- if (cacheItem) {
273
- return cacheItem.item[labelField];
283
+ if (fullOptFlag && cacheItem) {
284
+ return showFullLabel ? cacheItem.fullLabel : cacheItem.item[labelField];
274
285
  }
275
- if (lazyOptions) {
276
- const lazyItem = lazyOptions.find(item => item[valueField] === val);
277
- if (lazyItem) {
278
- return lazyItem[labelField];
286
+ if (lazyOptFlag) {
287
+ const lazyCacheItem = lazyNodeMaps[val];
288
+ if (lazyCacheItem) {
289
+ return showFullLabel ? lazyCacheItem.fullLabel : lazyCacheItem.item[labelField];
279
290
  }
280
291
  }
281
292
  return val;
@@ -329,16 +340,17 @@ export default defineVxeComponent({
329
340
  const nodeid = option[nodeKeyField];
330
341
  return nodeid ? encodeURIComponent(nodeid) : '';
331
342
  };
332
- const cacheDataMap = () => {
333
- const { options } = props;
343
+ const handleCacheMap = (optList) => {
344
+ const { separator } = props;
334
345
  const treeOpts = computeTreeOpts.value;
335
346
  const nodeKeyField = computeNodeKeyField.value;
336
347
  const childrenField = computeChildrenField.value;
337
348
  const valueField = computeValueField.value;
349
+ const labelField = computeLabelField.value;
338
350
  const { transform } = treeOpts;
339
351
  const nodeMaps = {};
340
352
  const keyMaps = {};
341
- const handleOptNode = (item, index, items, path, parent, nodes) => {
353
+ const handleOptNode = (item, index, items, path, parentItem, nodes) => {
342
354
  let nodeid = getNodeid(item);
343
355
  if (!nodeid) {
344
356
  nodeid = getOptUniqueId();
@@ -351,20 +363,37 @@ export default defineVxeComponent({
351
363
  if (nodeMaps[value]) {
352
364
  errLog('vxe.error.repeatKey', [`[tree-select] ${valueField}`, value]);
353
365
  }
354
- nodeMaps[value] = { item, index, items, parent, nodes };
366
+ nodeMaps[value] = {
367
+ item,
368
+ index,
369
+ items,
370
+ parent: parentItem,
371
+ nodes,
372
+ fullLabel: nodes.map(item => item[labelField]).join((separator || '/') + ' ')
373
+ };
355
374
  };
356
- if (options) {
375
+ if (optList) {
357
376
  if (transform) {
358
- options.forEach((item, index, items) => {
377
+ optList.forEach((item, index, items) => {
359
378
  handleOptNode(item, index, items, [], null, []);
360
379
  });
361
380
  }
362
381
  else {
363
- XEUtils.eachTree(options, handleOptNode, { children: childrenField });
382
+ XEUtils.eachTree(optList, handleOptNode, { children: childrenField });
364
383
  }
365
384
  }
385
+ return nodeMaps;
386
+ };
387
+ const cacheDataMap = () => {
388
+ const { options } = props;
389
+ internalData.fullNodeMaps = handleCacheMap(options || []);
366
390
  internalData.fullOptionList = options || [];
367
- internalData.fullNodeMaps = nodeMaps;
391
+ reactData.fullOptFlag++;
392
+ };
393
+ const cacheLazyDataMap = () => {
394
+ const { lazyOptions } = props;
395
+ internalData.lazyNodeMaps = handleCacheMap(lazyOptions || []);
396
+ reactData.lazyOptFlag++;
368
397
  };
369
398
  const updateZindex = () => {
370
399
  const popupOpts = computePopupOpts.value;
@@ -894,10 +923,28 @@ export default defineVxeComponent({
894
923
  ])
895
924
  ]);
896
925
  };
926
+ const optFlag = ref(0);
927
+ watch(() => props.options ? props.options.length : -1, () => {
928
+ optFlag.value++;
929
+ });
897
930
  watch(() => props.options, () => {
931
+ optFlag.value++;
932
+ });
933
+ watch(optFlag, () => {
898
934
  cacheDataMap();
899
935
  });
936
+ const lazyOptFlag = ref(0);
937
+ watch(() => props.lazyOptions ? props.lazyOptions.length : -1, () => {
938
+ lazyOptFlag.value++;
939
+ });
940
+ watch(() => props.lazyOptions, () => {
941
+ lazyOptFlag.value++;
942
+ });
943
+ watch(lazyOptFlag, () => {
944
+ cacheLazyDataMap();
945
+ });
900
946
  cacheDataMap();
947
+ cacheLazyDataMap();
901
948
  onMounted(() => {
902
949
  if (XEUtils.isBoolean(props.autoClose)) {
903
950
  warnLog('vxe.error.delProp', ['auto-close', 'checked-closable | clear-closable']);
package/es/ui/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { VxeUI, setConfig, setIcon } from '@vxe-ui/core';
2
2
  import { dynamicApp } from '../dynamics';
3
3
  import { warnLog } from './src/log';
4
- export const version = "4.14.19";
4
+ export const version = "4.14.21";
5
5
  VxeUI.uiVersion = version;
6
6
  VxeUI.dynamicApp = dynamicApp;
7
7
  export function config(options) {
@@ -416,6 +416,7 @@ setConfig({
416
416
  },
417
417
  treeSelect: {
418
418
  autoClose: null,
419
+ // separator: '/',
419
420
  virtualYConfig: {
420
421
  enabled: true,
421
422
  gt: 0,
package/es/ui/src/log.js CHANGED
@@ -1,4 +1,4 @@
1
1
  import { log } from '@vxe-ui/core';
2
- const version = `ui v${"4.14.19"}`;
2
+ const version = `ui v${"4.14.21"}`;
3
3
  export const warnLog = log.create('warn', version);
4
4
  export const errLog = log.create('error', version);
package/lib/index.umd.js CHANGED
@@ -4646,7 +4646,7 @@ function checkDynamic() {
4646
4646
  }
4647
4647
  ;// ./packages/ui/src/log.ts
4648
4648
 
4649
- const log_version = `ui v${"4.14.19"}`;
4649
+ const log_version = `ui v${"4.14.21"}`;
4650
4650
  const warnLog = log.create('warn', log_version);
4651
4651
  const errLog = log.create('error', log_version);
4652
4652
  ;// ./packages/ui/index.ts
@@ -4654,7 +4654,7 @@ const errLog = log.create('error', log_version);
4654
4654
 
4655
4655
 
4656
4656
 
4657
- const ui_version = "4.14.19";
4657
+ const ui_version = "4.14.21";
4658
4658
  VxeUI.uiVersion = ui_version;
4659
4659
  VxeUI.dynamicApp = dynamicApp;
4660
4660
  function config(options) {
@@ -5069,6 +5069,7 @@ setConfig({
5069
5069
  },
5070
5070
  treeSelect: {
5071
5071
  autoClose: null,
5072
+ // separator: '/',
5072
5073
  virtualYConfig: {
5073
5074
  enabled: true,
5074
5075
  gt: 0,
@@ -5478,7 +5479,7 @@ setIcon({
5478
5479
  cstmDragTarget: '移动:{0}',
5479
5480
  setting: {
5480
5481
  colSort: '排序',
5481
- sortHelpTip: '点击并拖动图标可以调整顺序',
5482
+ sortHelpTip: '点击图标开始拖动',
5482
5483
  colTitle: '列标题',
5483
5484
  colResizable: '列宽(像素)',
5484
5485
  colVisible: '是否显示',
@@ -5964,7 +5965,7 @@ setIcon({
5964
5965
  groupPlaceholder: '拖至此处进行分组',
5965
5966
  valuesPlaceholder: '拖至此处进行聚合',
5966
5967
  dragExistCol: '该列已存在',
5967
- sortHelpTip: '点击并拖动图标可以调整顺序'
5968
+ sortHelpTip: '点击图标开始拖动'
5968
5969
  },
5969
5970
  aggFuncs: {
5970
5971
  sum: '求和',
@@ -46820,28 +46821,38 @@ function tree_createReactData() {
46820
46821
  }
46821
46822
  return renderEmptyElement($xeTree);
46822
46823
  };
46823
- const renderRadio = (node, nodeid, isChecked) => {
46824
+ const handleVisibleOrCheckMode = (mode, isExistChild, nLevel) => {
46825
+ if (mode) {
46826
+ if (mode === 'first') {
46827
+ return !nLevel;
46828
+ }
46829
+ if (mode === 'last') {
46830
+ return !isExistChild;
46831
+ }
46832
+ }
46833
+ return true;
46834
+ };
46835
+ const renderRadio = (node, nodeid, isExistChild, nLevel, isChecked) => {
46824
46836
  const {
46825
46837
  showRadio
46826
46838
  } = props;
46827
46839
  const radioOpts = computeRadioOpts.value;
46828
46840
  const {
46829
46841
  showIcon,
46842
+ checkMode,
46830
46843
  checkMethod,
46844
+ visibleMode,
46831
46845
  visibleMethod
46832
46846
  } = radioOpts;
46833
- const isVisible = !visibleMethod || visibleMethod({
46847
+ const isVisible = visibleMethod ? visibleMethod({
46834
46848
  $tree: $xeTree,
46835
46849
  node
46836
- });
46837
- let isDisabled = !!checkMethod;
46850
+ }) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel);
46838
46851
  if (showRadio && showIcon && isVisible) {
46839
- if (checkMethod) {
46840
- isDisabled = !checkMethod({
46841
- $tree: $xeTree,
46842
- node
46843
- });
46844
- }
46852
+ const isDisabled = checkMethod ? !checkMethod({
46853
+ $tree: $xeTree,
46854
+ node
46855
+ }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
46845
46856
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46846
46857
  class: ['vxe-tree--radio-option', {
46847
46858
  'is--checked': isChecked,
@@ -46858,28 +46869,27 @@ function tree_createReactData() {
46858
46869
  }
46859
46870
  return renderEmptyElement($xeTree);
46860
46871
  };
46861
- const renderCheckbox = (node, nodeid, isChecked, isIndeterminate) => {
46872
+ const renderCheckbox = (node, nodeid, isExistChild, nLevel, isChecked, isIndeterminate) => {
46862
46873
  const {
46863
46874
  showCheckbox
46864
46875
  } = props;
46865
46876
  const checkboxOpts = computeCheckboxOpts.value;
46866
46877
  const {
46867
46878
  showIcon,
46879
+ checkMode,
46868
46880
  checkMethod,
46881
+ visibleMode,
46869
46882
  visibleMethod
46870
46883
  } = checkboxOpts;
46871
- const isVisible = !visibleMethod || visibleMethod({
46884
+ const isVisible = visibleMethod ? visibleMethod({
46872
46885
  $tree: $xeTree,
46873
46886
  node
46874
- });
46875
- let isDisabled = !!checkMethod;
46887
+ }) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel);
46876
46888
  if (showCheckbox && showIcon && isVisible) {
46877
- if (checkMethod) {
46878
- isDisabled = !checkMethod({
46879
- $tree: $xeTree,
46880
- node
46881
- });
46882
- }
46889
+ const isDisabled = checkMethod ? !checkMethod({
46890
+ $tree: $xeTree,
46891
+ node
46892
+ }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
46883
46893
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46884
46894
  class: ['vxe-tree--checkbox-option', {
46885
46895
  'is--checked': isChecked,
@@ -46925,12 +46935,12 @@ function tree_createReactData() {
46925
46935
  const titleField = computeTitleField.value;
46926
46936
  const hasChildField = computeHasChildField.value;
46927
46937
  const childList = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(node, childrenField);
46928
- const hasChild = childList && childList.length;
46938
+ const isExistChild = childList && childList.length > 0;
46929
46939
  const iconSlot = slots.icon;
46930
46940
  const titleSlot = slots.title;
46931
46941
  const extraSlot = slots.extra;
46932
46942
  const isExpand = updateExpandedFlag && treeExpandedMaps[nodeid];
46933
- const nodeItem = nodeMaps[nodeid];
46943
+ const nodeItem = nodeMaps[nodeid] || {};
46934
46944
  const nodeValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(node, titleField);
46935
46945
  const nLevel = nodeItem.level;
46936
46946
  let isRadioChecked = false;
@@ -46998,14 +47008,14 @@ function tree_createReactData() {
46998
47008
  }
46999
47009
  })]) : renderEmptyElement($xeTree), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
47000
47010
  class: 'vxe-tree--node-item-switcher'
47001
- }, showIcon && (lazy ? isLazyLoaded ? hasChild : hasLazyChilds : hasChild) ? [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
47011
+ }, showIcon && (lazy ? isLazyLoaded ? isExistChild : hasLazyChilds : isExistChild) ? [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
47002
47012
  class: 'vxe-tree--node-item-icon',
47003
47013
  onClick(evnt) {
47004
47014
  toggleExpandEvent(evnt, node);
47005
47015
  }
47006
47016
  }, iconSlot ? vn_getSlotVNs(iconSlot(nParams)) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('i', {
47007
47017
  class: isLazyLoading ? iconLoaded || tree_getIcon().TREE_NODE_LOADED : isExpand ? iconOpen || tree_getIcon().TREE_NODE_OPEN : iconClose || tree_getIcon().TREE_NODE_CLOSE
47008
- })])] : []), renderDragIcon(node, nodeid), renderRadio(node, nodeid, isRadioChecked), renderCheckbox(node, nodeid, isCheckboxChecked, isIndeterminate), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
47018
+ })])] : []), renderDragIcon(node, nodeid), renderRadio(node, nodeid, isExistChild, nLevel, isRadioChecked), renderCheckbox(node, nodeid, isExistChild, nLevel, isCheckboxChecked, isIndeterminate), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
47009
47019
  class: 'vxe-tree--node-item-inner'
47010
47020
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
47011
47021
  class: 'vxe-tree--node-item-title'
@@ -47291,7 +47301,6 @@ const Tree = VxeTree;
47291
47301
 
47292
47302
 
47293
47303
 
47294
-
47295
47304
  function tree_select_getOptUniqueId() {
47296
47305
  return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId('node_');
47297
47306
  }
@@ -47306,14 +47315,17 @@ function tree_select_createReactData() {
47306
47315
  triggerFocusPanel: false,
47307
47316
  visiblePanel: false,
47308
47317
  isAniVisible: false,
47309
- isActivated: false
47318
+ isActivated: false,
47319
+ fullOptFlag: 1,
47320
+ lazyOptFlag: 1
47310
47321
  };
47311
47322
  }
47312
47323
  function tree_select_createInternalData() {
47313
47324
  return {
47314
47325
  // hpTimeout: undefined,
47315
47326
  fullOptionList: [],
47316
- fullNodeMaps: {}
47327
+ fullNodeMaps: {},
47328
+ lazyNodeMaps: {}
47317
47329
  };
47318
47330
  }
47319
47331
  /* harmony default export */ var tree_select = (defineVxeComponent({
@@ -47334,6 +47346,14 @@ function tree_select_createInternalData() {
47334
47346
  type: Boolean,
47335
47347
  default: null
47336
47348
  },
47349
+ showFullLabel: {
47350
+ type: Boolean,
47351
+ default: getConfig().treeSelect.showFullLabel
47352
+ },
47353
+ separator: {
47354
+ type: String,
47355
+ default: getConfig().treeSelect.separator
47356
+ },
47337
47357
  filterable: Boolean,
47338
47358
  filterConfig: Object,
47339
47359
  multiple: Boolean,
@@ -47551,23 +47571,27 @@ function tree_select_createInternalData() {
47551
47571
  const computeSelectLabel = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
47552
47572
  const {
47553
47573
  modelValue,
47554
- lazyOptions
47574
+ showFullLabel
47555
47575
  } = props;
47556
47576
  const {
47557
- fullNodeMaps
47577
+ fullOptFlag,
47578
+ lazyOptFlag
47579
+ } = reactData;
47580
+ const {
47581
+ fullNodeMaps,
47582
+ lazyNodeMaps
47558
47583
  } = internalData;
47559
- const valueField = computeValueField.value;
47560
47584
  const labelField = computeLabelField.value;
47561
47585
  const selectVals = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(modelValue) ? [] : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(modelValue) ? modelValue : [modelValue];
47562
47586
  return selectVals.map(val => {
47563
47587
  const cacheItem = fullNodeMaps[val];
47564
- if (cacheItem) {
47565
- return cacheItem.item[labelField];
47588
+ if (fullOptFlag && cacheItem) {
47589
+ return showFullLabel ? cacheItem.fullLabel : cacheItem.item[labelField];
47566
47590
  }
47567
- if (lazyOptions) {
47568
- const lazyItem = lazyOptions.find(item => item[valueField] === val);
47569
- if (lazyItem) {
47570
- return lazyItem[labelField];
47591
+ if (lazyOptFlag) {
47592
+ const lazyCacheItem = lazyNodeMaps[val];
47593
+ if (lazyCacheItem) {
47594
+ return showFullLabel ? lazyCacheItem.fullLabel : lazyCacheItem.item[labelField];
47571
47595
  }
47572
47596
  }
47573
47597
  return val;
@@ -47626,20 +47650,21 @@ function tree_select_createInternalData() {
47626
47650
  const nodeid = option[nodeKeyField];
47627
47651
  return nodeid ? encodeURIComponent(nodeid) : '';
47628
47652
  };
47629
- const cacheDataMap = () => {
47653
+ const handleCacheMap = optList => {
47630
47654
  const {
47631
- options
47655
+ separator
47632
47656
  } = props;
47633
47657
  const treeOpts = computeTreeOpts.value;
47634
47658
  const nodeKeyField = computeNodeKeyField.value;
47635
47659
  const childrenField = computeChildrenField.value;
47636
47660
  const valueField = computeValueField.value;
47661
+ const labelField = computeLabelField.value;
47637
47662
  const {
47638
47663
  transform
47639
47664
  } = treeOpts;
47640
47665
  const nodeMaps = {};
47641
47666
  const keyMaps = {};
47642
- const handleOptNode = (item, index, items, path, parent, nodes) => {
47667
+ const handleOptNode = (item, index, items, path, parentItem, nodes) => {
47643
47668
  let nodeid = getNodeid(item);
47644
47669
  if (!nodeid) {
47645
47670
  nodeid = tree_select_getOptUniqueId();
@@ -47656,23 +47681,38 @@ function tree_select_createInternalData() {
47656
47681
  item,
47657
47682
  index,
47658
47683
  items,
47659
- parent,
47660
- nodes
47684
+ parent: parentItem,
47685
+ nodes,
47686
+ fullLabel: nodes.map(item => item[labelField]).join((separator || '/') + ' ')
47661
47687
  };
47662
47688
  };
47663
- if (options) {
47689
+ if (optList) {
47664
47690
  if (transform) {
47665
- options.forEach((item, index, items) => {
47691
+ optList.forEach((item, index, items) => {
47666
47692
  handleOptNode(item, index, items, [], null, []);
47667
47693
  });
47668
47694
  } else {
47669
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(options, handleOptNode, {
47695
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(optList, handleOptNode, {
47670
47696
  children: childrenField
47671
47697
  });
47672
47698
  }
47673
47699
  }
47700
+ return nodeMaps;
47701
+ };
47702
+ const cacheDataMap = () => {
47703
+ const {
47704
+ options
47705
+ } = props;
47706
+ internalData.fullNodeMaps = handleCacheMap(options || []);
47674
47707
  internalData.fullOptionList = options || [];
47675
- internalData.fullNodeMaps = nodeMaps;
47708
+ reactData.fullOptFlag++;
47709
+ };
47710
+ const cacheLazyDataMap = () => {
47711
+ const {
47712
+ lazyOptions
47713
+ } = props;
47714
+ internalData.lazyNodeMaps = handleCacheMap(lazyOptions || []);
47715
+ reactData.lazyOptFlag++;
47676
47716
  };
47677
47717
  const updateZindex = () => {
47678
47718
  const popupOpts = computePopupOpts.value;
@@ -48231,10 +48271,28 @@ function tree_select_createInternalData() {
48231
48271
  onClick: closePanelEvent
48232
48272
  })]) : renderEmptyElement($xeTreeSelect)])]) : renderEmptyElement($xeTreeSelect)])] : [])])]);
48233
48273
  };
48274
+ const optFlag = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(0);
48275
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.options ? props.options.length : -1, () => {
48276
+ optFlag.value++;
48277
+ });
48234
48278
  (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.options, () => {
48279
+ optFlag.value++;
48280
+ });
48281
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(optFlag, () => {
48235
48282
  cacheDataMap();
48236
48283
  });
48284
+ const lazyOptFlag = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(0);
48285
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.lazyOptions ? props.lazyOptions.length : -1, () => {
48286
+ lazyOptFlag.value++;
48287
+ });
48288
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.lazyOptions, () => {
48289
+ lazyOptFlag.value++;
48290
+ });
48291
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(lazyOptFlag, () => {
48292
+ cacheLazyDataMap();
48293
+ });
48237
48294
  cacheDataMap();
48295
+ cacheLazyDataMap();
48238
48296
  (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
48239
48297
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(props.autoClose)) {
48240
48298
  warnLog('vxe.error.delProp', ['auto-close', 'checked-closable | clear-closable']);