vxe-pc-ui 3.14.19 → 3.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 +72 -18
  25. package/es/ui/index.js +2 -1
  26. package/es/ui/src/log.js +1 -1
  27. package/lib/index.umd.js +110 -51
  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 +72 -23
  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 +76 -26
  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.1779445582657.ttf → iconfont.1779687100417.ttf} +0 -0
  132. /package/es/icon/{iconfont.1779445582657.woff → iconfont.1779687100417.woff} +0 -0
  133. /package/es/icon/{iconfont.1779445582657.woff2 → iconfont.1779687100417.woff2} +0 -0
  134. /package/es/{iconfont.1779445582657.ttf → iconfont.1779687100417.ttf} +0 -0
  135. /package/es/{iconfont.1779445582657.woff → iconfont.1779687100417.woff} +0 -0
  136. /package/es/{iconfont.1779445582657.woff2 → iconfont.1779687100417.woff2} +0 -0
  137. /package/lib/icon/style/{iconfont.1779445582657.ttf → iconfont.1779687100417.ttf} +0 -0
  138. /package/lib/icon/style/{iconfont.1779445582657.woff → iconfont.1779687100417.woff} +0 -0
  139. /package/lib/icon/style/{iconfont.1779445582657.woff2 → iconfont.1779687100417.woff2} +0 -0
  140. /package/lib/{iconfont.1779445582657.ttf → iconfont.1779687100417.ttf} +0 -0
  141. /package/lib/{iconfont.1779445582657.woff → iconfont.1779687100417.woff} +0 -0
  142. /package/lib/{iconfont.1779445582657.woff2 → iconfont.1779687100417.woff2} +0 -0
@@ -23,14 +23,17 @@ function createReactData() {
23
23
  triggerFocusPanel: false,
24
24
  visiblePanel: false,
25
25
  isAniVisible: false,
26
- isActivated: false
26
+ isActivated: false,
27
+ fullOptFlag: 1,
28
+ lazyOptFlag: 1
27
29
  };
28
30
  }
29
31
  function createInternalData() {
30
32
  return {
31
33
  // hpTimeout: undefined,
32
34
  fullOptionList: [],
33
- fullNodeMaps: {}
35
+ fullNodeMaps: {},
36
+ lazyNodeMaps: {}
34
37
  };
35
38
  }
36
39
  export default {
@@ -58,6 +61,14 @@ export default {
58
61
  type: Boolean,
59
62
  default: null
60
63
  },
64
+ showFullLabel: {
65
+ type: Boolean,
66
+ default: getConfig().treeSelect.showFullLabel
67
+ },
68
+ separator: {
69
+ type: String,
70
+ default: getConfig().treeSelect.separator
71
+ },
61
72
  filterable: Boolean,
62
73
  filterConfig: Object,
63
74
  multiple: Boolean,
@@ -308,21 +319,22 @@ export default {
308
319
  computeSelectLabel() {
309
320
  const $xeTreeSelect = this;
310
321
  const props = $xeTreeSelect;
322
+ const reactData = $xeTreeSelect.reactData;
311
323
  const internalData = $xeTreeSelect.internalData;
312
- const { value: modelValue, lazyOptions } = props;
313
- const { fullNodeMaps } = internalData;
314
- const valueField = $xeTreeSelect.computeValueField;
324
+ const { value: modelValue, showFullLabel } = props;
325
+ const { fullOptFlag, lazyOptFlag } = reactData;
326
+ const { fullNodeMaps, lazyNodeMaps } = internalData;
315
327
  const labelField = $xeTreeSelect.computeLabelField;
316
328
  const selectVals = XEUtils.eqNull(modelValue) ? [] : (XEUtils.isArray(modelValue) ? modelValue : [modelValue]);
317
329
  return selectVals.map(val => {
318
330
  const cacheItem = fullNodeMaps[val];
319
- if (cacheItem) {
320
- return cacheItem.item[labelField];
331
+ if (fullOptFlag && cacheItem) {
332
+ return showFullLabel ? cacheItem.fullLabel : cacheItem.item[labelField];
321
333
  }
322
- if (lazyOptions) {
323
- const lazyItem = lazyOptions.find(item => item[valueField] === val);
324
- if (lazyItem) {
325
- return lazyItem[labelField];
334
+ if (lazyOptFlag) {
335
+ const lazyCacheItem = lazyNodeMaps[val];
336
+ if (lazyCacheItem) {
337
+ return showFullLabel ? lazyCacheItem.fullLabel : lazyCacheItem.item[labelField];
326
338
  }
327
339
  }
328
340
  return val;
@@ -379,17 +391,19 @@ export default {
379
391
  const nodeid = option[nodeKeyField];
380
392
  return nodeid ? encodeURIComponent(nodeid) : '';
381
393
  },
382
- cacheDataMap() {
394
+ handleCacheMap(optList) {
383
395
  const $xeTreeSelect = this;
384
396
  const props = $xeTreeSelect;
385
- const internalData = $xeTreeSelect.internalData;
386
- const { options } = props;
397
+ const { separator } = props;
398
+ const treeOpts = $xeTreeSelect.computeTreeOpts;
387
399
  const nodeKeyField = $xeTreeSelect.computeNodeKeyField;
388
400
  const childrenField = $xeTreeSelect.computeChildrenField;
389
401
  const valueField = $xeTreeSelect.computeValueField;
402
+ const labelField = $xeTreeSelect.computeLabelField;
403
+ const { transform } = treeOpts;
390
404
  const nodeMaps = {};
391
405
  const keyMaps = {};
392
- XEUtils.eachTree(options, (item, index, items, path, parent, nodes) => {
406
+ const handleOptNode = (item, index, items, path, parentItem, nodes) => {
393
407
  let nodeid = $xeTreeSelect.getNodeid(item);
394
408
  if (!nodeid) {
395
409
  nodeid = getOptUniqueId();
@@ -402,10 +416,45 @@ export default {
402
416
  if (nodeMaps[value]) {
403
417
  errLog('vxe.error.repeatKey', [`[tree-select] ${valueField}`, value]);
404
418
  }
405
- nodeMaps[value] = { item, index, items, parent, nodes };
406
- }, { children: childrenField });
419
+ nodeMaps[value] = {
420
+ item,
421
+ index,
422
+ items,
423
+ parent: parentItem,
424
+ nodes,
425
+ fullLabel: nodes.map(item => item[labelField]).join((separator || '/') + ' ')
426
+ };
427
+ };
428
+ if (optList) {
429
+ if (transform) {
430
+ optList.forEach((item, index, items) => {
431
+ handleOptNode(item, index, items, [], null, []);
432
+ });
433
+ }
434
+ else {
435
+ XEUtils.eachTree(optList, handleOptNode, { children: childrenField });
436
+ }
437
+ }
438
+ return nodeMaps;
439
+ },
440
+ cacheDataMap() {
441
+ const $xeTreeSelect = this;
442
+ const props = $xeTreeSelect;
443
+ const reactData = $xeTreeSelect.reactData;
444
+ const internalData = $xeTreeSelect.internalData;
445
+ const { options } = props;
446
+ internalData.fullNodeMaps = $xeTreeSelect.handleCacheMap(options || []);
407
447
  internalData.fullOptionList = options || [];
408
- internalData.fullNodeMaps = nodeMaps;
448
+ reactData.fullOptFlag++;
449
+ },
450
+ cacheLazyDataMap() {
451
+ const $xeTreeSelect = this;
452
+ const props = $xeTreeSelect;
453
+ const reactData = $xeTreeSelect.reactData;
454
+ const internalData = $xeTreeSelect.internalData;
455
+ const { lazyOptions } = props;
456
+ internalData.lazyNodeMaps = $xeTreeSelect.handleCacheMap(lazyOptions || []);
457
+ reactData.lazyOptFlag++;
409
458
  },
410
459
  updateZindex() {
411
460
  const $xeTreeSelect = this;
@@ -1039,11 +1088,16 @@ export default {
1039
1088
  options() {
1040
1089
  const $xeTreeSelect = this;
1041
1090
  $xeTreeSelect.cacheDataMap();
1091
+ },
1092
+ lazyOptions() {
1093
+ const $xeTreeSelect = this;
1094
+ $xeTreeSelect.cacheLazyDataMap();
1042
1095
  }
1043
1096
  },
1044
1097
  created() {
1045
1098
  const $xeTreeSelect = this;
1046
1099
  $xeTreeSelect.cacheDataMap();
1100
+ $xeTreeSelect.cacheLazyDataMap();
1047
1101
  },
1048
1102
  mounted() {
1049
1103
  const $xeTreeSelect = this;
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 = "3.14.19";
4
+ export const version = "3.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${"3.14.19"}`;
2
+ const version = `ui v${"3.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
@@ -13214,7 +13214,7 @@ function checkDynamic() {
13214
13214
  }
13215
13215
  ;// ./packages/ui/src/log.ts
13216
13216
 
13217
- var log_version = "ui v".concat("3.14.19");
13217
+ var log_version = "ui v".concat("3.14.21");
13218
13218
  var warnLog = log.create('warn', log_version);
13219
13219
  var errLog = log.create('error', log_version);
13220
13220
  ;// ./packages/ui/index.ts
@@ -13222,7 +13222,7 @@ var errLog = log.create('error', log_version);
13222
13222
 
13223
13223
 
13224
13224
 
13225
- var ui_version = "3.14.19";
13225
+ var ui_version = "3.14.21";
13226
13226
  VxeUI.uiVersion = ui_version;
13227
13227
  VxeUI.dynamicApp = dynamicApp;
13228
13228
  function config(options) {
@@ -13637,6 +13637,7 @@ setConfig({
13637
13637
  },
13638
13638
  treeSelect: {
13639
13639
  autoClose: null,
13640
+ // separator: '/',
13640
13641
  virtualYConfig: {
13641
13642
  enabled: true,
13642
13643
  gt: 0,
@@ -14046,7 +14047,7 @@ setIcon({
14046
14047
  cstmDragTarget: '移动:{0}',
14047
14048
  setting: {
14048
14049
  colSort: '排序',
14049
- sortHelpTip: '点击并拖动图标可以调整顺序',
14050
+ sortHelpTip: '点击图标开始拖动',
14050
14051
  colTitle: '列标题',
14051
14052
  colResizable: '列宽(像素)',
14052
14053
  colVisible: '是否显示',
@@ -14532,7 +14533,7 @@ setIcon({
14532
14533
  groupPlaceholder: '拖至此处进行分组',
14533
14534
  valuesPlaceholder: '拖至此处进行聚合',
14534
14535
  dragExistCol: '该列已存在',
14535
- sortHelpTip: '点击并拖动图标可以调整顺序'
14536
+ sortHelpTip: '点击图标开始拖动'
14536
14537
  },
14537
14538
  aggFuncs: {
14538
14539
  sum: '求和',
@@ -56887,6 +56888,17 @@ function handleNodeDragSwapEvent($xeTree, evnt, dragNode, prevDragNode, prevDrag
56887
56888
  clearCrossTreeDragStatus($xeTree);
56888
56889
  return Promise.resolve(errRest);
56889
56890
  }
56891
+ function handleVisibleOrCheckMode(mode, isExistChild, nLevel) {
56892
+ if (mode) {
56893
+ if (mode === 'first') {
56894
+ return !nLevel;
56895
+ }
56896
+ if (mode === 'last') {
56897
+ return !isExistChild;
56898
+ }
56899
+ }
56900
+ return true;
56901
+ }
56890
56902
  function tree_createInternalData() {
56891
56903
  return {
56892
56904
  // initialized: false,
@@ -59111,26 +59123,25 @@ function tree_createReactData() {
59111
59123
  }
59112
59124
  return renderEmptyElement($xeTree);
59113
59125
  },
59114
- renderRadio: function renderRadio(h, node, nodeid, isChecked) {
59126
+ renderRadio: function renderRadio(h, node, nodeid, isExistChild, nLevel, isChecked) {
59115
59127
  var $xeTree = this;
59116
59128
  var props = $xeTree;
59117
59129
  var showRadio = props.showRadio;
59118
59130
  var radioOpts = $xeTree.computeRadioOpts;
59119
59131
  var showIcon = radioOpts.showIcon,
59132
+ checkMode = radioOpts.checkMode,
59120
59133
  checkMethod = radioOpts.checkMethod,
59134
+ visibleMode = radioOpts.visibleMode,
59121
59135
  visibleMethod = radioOpts.visibleMethod;
59122
- var isVisible = !visibleMethod || visibleMethod({
59136
+ var isVisible = visibleMethod ? visibleMethod({
59123
59137
  $tree: $xeTree,
59124
59138
  node: node
59125
- });
59126
- var isDisabled = !!checkMethod;
59139
+ }) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel);
59127
59140
  if (showRadio && showIcon && isVisible) {
59128
- if (checkMethod) {
59129
- isDisabled = !checkMethod({
59130
- $tree: $xeTree,
59131
- node: node
59132
- });
59133
- }
59141
+ var isDisabled = checkMethod ? !checkMethod({
59142
+ $tree: $xeTree,
59143
+ node: node
59144
+ }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
59134
59145
  return h('div', {
59135
59146
  class: ['vxe-tree--radio-option', {
59136
59147
  'is--checked': isChecked,
@@ -59149,26 +59160,25 @@ function tree_createReactData() {
59149
59160
  }
59150
59161
  return renderEmptyElement($xeTree);
59151
59162
  },
59152
- renderCheckbox: function renderCheckbox(h, node, nodeid, isChecked, isIndeterminate) {
59163
+ renderCheckbox: function renderCheckbox(h, node, nodeid, isExistChild, nLevel, isChecked, isIndeterminate) {
59153
59164
  var $xeTree = this;
59154
59165
  var props = $xeTree;
59155
59166
  var showCheckbox = props.showCheckbox;
59156
59167
  var checkboxOpts = $xeTree.computeCheckboxOpts;
59157
59168
  var showIcon = checkboxOpts.showIcon,
59169
+ checkMode = checkboxOpts.checkMode,
59158
59170
  checkMethod = checkboxOpts.checkMethod,
59171
+ visibleMode = checkboxOpts.visibleMode,
59159
59172
  visibleMethod = checkboxOpts.visibleMethod;
59160
- var isVisible = !visibleMethod || visibleMethod({
59173
+ var isVisible = visibleMethod ? visibleMethod({
59161
59174
  $tree: $xeTree,
59162
59175
  node: node
59163
- });
59164
- var isDisabled = !!checkMethod;
59176
+ }) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel);
59165
59177
  if (showCheckbox && showIcon && isVisible) {
59166
- if (checkMethod) {
59167
- isDisabled = !checkMethod({
59168
- $tree: $xeTree,
59169
- node: node
59170
- });
59171
- }
59178
+ var isDisabled = checkMethod ? !checkMethod({
59179
+ $tree: $xeTree,
59180
+ node: node
59181
+ }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
59172
59182
  return h('div', {
59173
59183
  class: ['vxe-tree--checkbox-option', {
59174
59184
  'is--checked': isChecked,
@@ -59215,12 +59225,12 @@ function tree_createReactData() {
59215
59225
  var titleField = $xeTree.computeTitleField;
59216
59226
  var hasChildField = $xeTree.computeHasChildField;
59217
59227
  var childList = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(node, childrenField);
59218
- var hasChild = childList && childList.length;
59228
+ var isExistChild = childList && childList.length > 0;
59219
59229
  var iconSlot = slots.icon;
59220
59230
  var titleSlot = slots.title;
59221
59231
  var extraSlot = slots.extra;
59222
59232
  var isExpand = updateExpandedFlag && treeExpandedMaps[nodeid];
59223
- var nodeItem = nodeMaps[nodeid];
59233
+ var nodeItem = nodeMaps[nodeid] || {};
59224
59234
  var nodeValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(node, titleField);
59225
59235
  var nLevel = nodeItem.level;
59226
59236
  var isRadioChecked = false;
@@ -59290,7 +59300,7 @@ function tree_createReactData() {
59290
59300
  }
59291
59301
  })]) : renderEmptyElement($xeTree), h('div', {
59292
59302
  class: 'vxe-tree--node-item-switcher'
59293
- }, showIcon && (lazy ? isLazyLoaded ? hasChild : hasLazyChilds : hasChild) ? [h('div', {
59303
+ }, showIcon && (lazy ? isLazyLoaded ? isExistChild : hasLazyChilds : isExistChild) ? [h('div', {
59294
59304
  class: 'vxe-tree--node-item-icon',
59295
59305
  on: {
59296
59306
  click: function click(evnt) {
@@ -59299,7 +59309,7 @@ function tree_createReactData() {
59299
59309
  }
59300
59310
  }, iconSlot ? vn_getSlotVNs(iconSlot(nParams)) : [h('i', {
59301
59311
  class: isLazyLoading ? iconLoaded || tree_getIcon().TREE_NODE_LOADED : isExpand ? iconOpen || tree_getIcon().TREE_NODE_OPEN : iconClose || tree_getIcon().TREE_NODE_CLOSE
59302
- })])] : []), $xeTree.renderDragIcon(h, node, nodeid), $xeTree.renderRadio(h, node, nodeid, isRadioChecked), $xeTree.renderCheckbox(h, node, nodeid, isCheckboxChecked, isIndeterminate), h('div', {
59312
+ })])] : []), $xeTree.renderDragIcon(h, node, nodeid), $xeTree.renderRadio(h, node, nodeid, isExistChild, nLevel, isRadioChecked), $xeTree.renderCheckbox(h, node, nodeid, isExistChild, nLevel, isCheckboxChecked, isIndeterminate), h('div', {
59303
59313
  class: 'vxe-tree--node-item-inner'
59304
59314
  }, [h('div', {
59305
59315
  class: 'vxe-tree--node-item-title'
@@ -59608,14 +59618,17 @@ function tree_select_createReactData() {
59608
59618
  triggerFocusPanel: false,
59609
59619
  visiblePanel: false,
59610
59620
  isAniVisible: false,
59611
- isActivated: false
59621
+ isActivated: false,
59622
+ fullOptFlag: 1,
59623
+ lazyOptFlag: 1
59612
59624
  };
59613
59625
  }
59614
59626
  function tree_select_createInternalData() {
59615
59627
  return {
59616
59628
  // hpTimeout: undefined,
59617
59629
  fullOptionList: [],
59618
- fullNodeMaps: {}
59630
+ fullNodeMaps: {},
59631
+ lazyNodeMaps: {}
59619
59632
  };
59620
59633
  }
59621
59634
  /* harmony default export */ var tree_select = (/* define-vxe-component start */defineVxeComponent({
@@ -59643,6 +59656,14 @@ function tree_select_createInternalData() {
59643
59656
  type: Boolean,
59644
59657
  default: null
59645
59658
  },
59659
+ showFullLabel: {
59660
+ type: Boolean,
59661
+ default: getConfig().treeSelect.showFullLabel
59662
+ },
59663
+ separator: {
59664
+ type: String,
59665
+ default: getConfig().treeSelect.separator
59666
+ },
59646
59667
  filterable: Boolean,
59647
59668
  filterConfig: Object,
59648
59669
  multiple: Boolean,
@@ -59914,24 +59935,25 @@ function tree_select_createInternalData() {
59914
59935
  computeSelectLabel: function computeSelectLabel() {
59915
59936
  var $xeTreeSelect = this;
59916
59937
  var props = $xeTreeSelect;
59938
+ var reactData = $xeTreeSelect.reactData;
59917
59939
  var internalData = $xeTreeSelect.internalData;
59918
59940
  var modelValue = props.value,
59919
- lazyOptions = props.lazyOptions;
59920
- var fullNodeMaps = internalData.fullNodeMaps;
59921
- var valueField = $xeTreeSelect.computeValueField;
59941
+ showFullLabel = props.showFullLabel;
59942
+ var fullOptFlag = reactData.fullOptFlag,
59943
+ lazyOptFlag = reactData.lazyOptFlag;
59944
+ var fullNodeMaps = internalData.fullNodeMaps,
59945
+ lazyNodeMaps = internalData.lazyNodeMaps;
59922
59946
  var labelField = $xeTreeSelect.computeLabelField;
59923
59947
  var 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];
59924
59948
  return selectVals.map(function (val) {
59925
59949
  var cacheItem = fullNodeMaps[val];
59926
- if (cacheItem) {
59927
- return cacheItem.item[labelField];
59950
+ if (fullOptFlag && cacheItem) {
59951
+ return showFullLabel ? cacheItem.fullLabel : cacheItem.item[labelField];
59928
59952
  }
59929
- if (lazyOptions) {
59930
- var lazyItem = lazyOptions.find(function (item) {
59931
- return item[valueField] === val;
59932
- });
59933
- if (lazyItem) {
59934
- return lazyItem[labelField];
59953
+ if (lazyOptFlag) {
59954
+ var lazyCacheItem = lazyNodeMaps[val];
59955
+ if (lazyCacheItem) {
59956
+ return showFullLabel ? lazyCacheItem.fullLabel : lazyCacheItem.item[labelField];
59935
59957
  }
59936
59958
  }
59937
59959
  return val;
@@ -59991,17 +60013,19 @@ function tree_select_createInternalData() {
59991
60013
  var nodeid = option[nodeKeyField];
59992
60014
  return nodeid ? encodeURIComponent(nodeid) : '';
59993
60015
  },
59994
- cacheDataMap: function cacheDataMap() {
60016
+ handleCacheMap: function handleCacheMap(optList) {
59995
60017
  var $xeTreeSelect = this;
59996
60018
  var props = $xeTreeSelect;
59997
- var internalData = $xeTreeSelect.internalData;
59998
- var options = props.options;
60019
+ var separator = props.separator;
60020
+ var treeOpts = $xeTreeSelect.computeTreeOpts;
59999
60021
  var nodeKeyField = $xeTreeSelect.computeNodeKeyField;
60000
60022
  var childrenField = $xeTreeSelect.computeChildrenField;
60001
60023
  var valueField = $xeTreeSelect.computeValueField;
60024
+ var labelField = $xeTreeSelect.computeLabelField;
60025
+ var transform = treeOpts.transform;
60002
60026
  var nodeMaps = {};
60003
60027
  var keyMaps = {};
60004
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(options, function (item, index, items, path, parent, nodes) {
60028
+ var handleOptNode = function handleOptNode(item, index, items, path, parentItem, nodes) {
60005
60029
  var nodeid = $xeTreeSelect.getNodeid(item);
60006
60030
  if (!nodeid) {
60007
60031
  nodeid = tree_select_getOptUniqueId();
@@ -60018,14 +60042,44 @@ function tree_select_createInternalData() {
60018
60042
  item: item,
60019
60043
  index: index,
60020
60044
  items: items,
60021
- parent: parent,
60022
- nodes: nodes
60045
+ parent: parentItem,
60046
+ nodes: nodes,
60047
+ fullLabel: nodes.map(function (item) {
60048
+ return item[labelField];
60049
+ }).join((separator || '/') + ' ')
60023
60050
  };
60024
- }, {
60025
- children: childrenField
60026
- });
60051
+ };
60052
+ if (optList) {
60053
+ if (transform) {
60054
+ optList.forEach(function (item, index, items) {
60055
+ handleOptNode(item, index, items, [], null, []);
60056
+ });
60057
+ } else {
60058
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(optList, handleOptNode, {
60059
+ children: childrenField
60060
+ });
60061
+ }
60062
+ }
60063
+ return nodeMaps;
60064
+ },
60065
+ cacheDataMap: function cacheDataMap() {
60066
+ var $xeTreeSelect = this;
60067
+ var props = $xeTreeSelect;
60068
+ var reactData = $xeTreeSelect.reactData;
60069
+ var internalData = $xeTreeSelect.internalData;
60070
+ var options = props.options;
60071
+ internalData.fullNodeMaps = $xeTreeSelect.handleCacheMap(options || []);
60027
60072
  internalData.fullOptionList = options || [];
60028
- internalData.fullNodeMaps = nodeMaps;
60073
+ reactData.fullOptFlag++;
60074
+ },
60075
+ cacheLazyDataMap: function cacheLazyDataMap() {
60076
+ var $xeTreeSelect = this;
60077
+ var props = $xeTreeSelect;
60078
+ var reactData = $xeTreeSelect.reactData;
60079
+ var internalData = $xeTreeSelect.internalData;
60080
+ var lazyOptions = props.lazyOptions;
60081
+ internalData.lazyNodeMaps = $xeTreeSelect.handleCacheMap(lazyOptions || []);
60082
+ reactData.lazyOptFlag++;
60029
60083
  },
60030
60084
  updateZindex: function updateZindex() {
60031
60085
  var $xeTreeSelect = this;
@@ -60641,11 +60695,16 @@ function tree_select_createInternalData() {
60641
60695
  options: function options() {
60642
60696
  var $xeTreeSelect = this;
60643
60697
  $xeTreeSelect.cacheDataMap();
60698
+ },
60699
+ lazyOptions: function lazyOptions() {
60700
+ var $xeTreeSelect = this;
60701
+ $xeTreeSelect.cacheLazyDataMap();
60644
60702
  }
60645
60703
  },
60646
60704
  created: function created() {
60647
60705
  var $xeTreeSelect = this;
60648
60706
  $xeTreeSelect.cacheDataMap();
60707
+ $xeTreeSelect.cacheLazyDataMap();
60649
60708
  },
60650
60709
  mounted: function mounted() {
60651
60710
  var $xeTreeSelect = this;