vxe-pc-ui 3.16.6 → 3.16.7

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 (43) hide show
  1. package/es/icon/style.css +1 -1
  2. package/es/menu/src/menu.js +81 -32
  3. package/es/menu/style.css +16 -7
  4. package/es/menu/style.min.css +1 -1
  5. package/es/style.css +1 -1
  6. package/es/style.min.css +1 -1
  7. package/es/ui/index.js +3 -3
  8. package/es/ui/src/log.js +1 -1
  9. package/es/vxe-menu/style.css +16 -7
  10. package/es/vxe-menu/style.min.css +1 -1
  11. package/lib/icon/style/style.css +1 -1
  12. package/lib/icon/style/style.min.css +1 -1
  13. package/lib/index.umd.js +88 -33
  14. package/lib/index.umd.min.js +1 -1
  15. package/lib/menu/src/menu.js +84 -29
  16. package/lib/menu/src/menu.min.js +1 -1
  17. package/lib/menu/style/style.css +16 -7
  18. package/lib/menu/style/style.min.css +1 -1
  19. package/lib/style.css +1 -1
  20. package/lib/style.min.css +1 -1
  21. package/lib/ui/index.js +3 -3
  22. package/lib/ui/index.min.js +1 -1
  23. package/lib/ui/src/log.js +1 -1
  24. package/lib/ui/src/log.min.js +1 -1
  25. package/lib/vxe-menu/style/style.css +16 -7
  26. package/lib/vxe-menu/style/style.min.css +1 -1
  27. package/package.json +1 -1
  28. package/packages/menu/src/menu.ts +91 -29
  29. package/packages/ui/index.ts +2 -2
  30. package/styles/components/menu.scss +10 -4
  31. package/types/components/menu.d.ts +6 -0
  32. /package/es/icon/{iconfont.1783838609874.ttf → iconfont.1783873707609.ttf} +0 -0
  33. /package/es/icon/{iconfont.1783838609874.woff → iconfont.1783873707609.woff} +0 -0
  34. /package/es/icon/{iconfont.1783838609874.woff2 → iconfont.1783873707609.woff2} +0 -0
  35. /package/es/{iconfont.1783838609874.ttf → iconfont.1783873707609.ttf} +0 -0
  36. /package/es/{iconfont.1783838609874.woff → iconfont.1783873707609.woff} +0 -0
  37. /package/es/{iconfont.1783838609874.woff2 → iconfont.1783873707609.woff2} +0 -0
  38. /package/lib/icon/style/{iconfont.1783838609874.ttf → iconfont.1783873707609.ttf} +0 -0
  39. /package/lib/icon/style/{iconfont.1783838609874.woff → iconfont.1783873707609.woff} +0 -0
  40. /package/lib/icon/style/{iconfont.1783838609874.woff2 → iconfont.1783873707609.woff2} +0 -0
  41. /package/lib/{iconfont.1783838609874.ttf → iconfont.1783873707609.ttf} +0 -0
  42. /package/lib/{iconfont.1783838609874.woff → iconfont.1783873707609.woff} +0 -0
  43. /package/lib/{iconfont.1783838609874.woff2 → iconfont.1783873707609.woff2} +0 -0
package/lib/index.umd.js CHANGED
@@ -13256,7 +13256,7 @@ var es_array_join = __webpack_require__(8598);
13256
13256
 
13257
13257
 
13258
13258
  var log_log = VxeUI.log;
13259
- var uiVersion = "ui v".concat("3.16.6");
13259
+ var uiVersion = "ui v".concat("3.16.7");
13260
13260
  function createComponentLog(name) {
13261
13261
  var tableVersion = VxeUI.tableVersion ? "table v".concat(VxeUI.tableVersion) : '';
13262
13262
  var ganttVersion = VxeUI.ganttVersion ? "gantt v".concat(VxeUI.ganttVersion) : '';
@@ -13274,7 +13274,7 @@ var errLog = log_log.create('error', uiVersion);
13274
13274
 
13275
13275
 
13276
13276
 
13277
- var ui_version = "3.16.6";
13277
+ var ui_version = "3.16.7";
13278
13278
  VxeUI.uiVersion = ui_version;
13279
13279
  VxeUI.dynamicApp = dynamicApp;
13280
13280
  function config(options) {
@@ -13770,8 +13770,8 @@ setIcon({
13770
13770
  BUTTON_LOADING: iconPrefix + 'spinner roll',
13771
13771
  BUTTON_TOOLTIP_ICON: iconPrefix + 'question-circle-fill',
13772
13772
  // menu
13773
- MENU_ITEM_EXPAND_OPEN: iconPrefix + 'arrow-down rotate180',
13774
- MENU_ITEM_EXPAND_CLOSE: iconPrefix + 'arrow-down',
13773
+ MENU_ITEM_EXPAND_OPEN: iconPrefix + 'arrow-right rotate90',
13774
+ MENU_ITEM_EXPAND_CLOSE: iconPrefix + 'arrow-right',
13775
13775
  // select
13776
13776
  SELECT_LOADED: iconPrefix + 'spinner roll',
13777
13777
  SELECT_OPEN: iconPrefix + 'caret-down rotate180',
@@ -47150,6 +47150,23 @@ var menu_createComponentLog = createComponentLog('menu'),
47150
47150
  var menu_menus = VxeUI.menus,
47151
47151
  menu_getConfig = VxeUI.getConfig,
47152
47152
  menu_getIcon = VxeUI.getIcon;
47153
+ function menu_createInternalData() {
47154
+ return {
47155
+ menuEffectMaps: {}
47156
+ };
47157
+ }
47158
+ function menu_createReactData() {
47159
+ return {
47160
+ initialized: false,
47161
+ isEnterCollapse: false,
47162
+ collapseStyle: {},
47163
+ collapseZindex: 0,
47164
+ activeName: '',
47165
+ menuList: [],
47166
+ itemHeight: 1
47167
+ };
47168
+ }
47169
+ var nemuUniqueKey = 100000000;
47153
47170
  /* harmony default export */ var menu = (/* define-vxe-component start */defineVxeComponent({
47154
47171
  name: 'VxeMenu',
47155
47172
  mixins: [globalMixins.sizeMixin, globalMixins.permissionMixin],
@@ -47188,19 +47205,11 @@ var menu_menus = VxeUI.menus,
47188
47205
  }
47189
47206
  },
47190
47207
  data: function data() {
47191
- var reactData = {
47192
- initialized: false,
47193
- isEnterCollapse: false,
47194
- collapseStyle: {},
47195
- collapseZindex: 0,
47196
- activeName: null,
47197
- menuList: [],
47198
- itemHeight: 1
47199
- };
47200
- return {
47208
+ var reactData = menu_createReactData();
47209
+ return _objectSpread2(_objectSpread2({}, {}), {}, {
47201
47210
  xID: external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId(),
47202
47211
  reactData: reactData
47203
- };
47212
+ });
47204
47213
  },
47205
47214
  computed: _objectSpread2(_objectSpread2({}, {}), {}, {
47206
47215
  computeMenuOpts: function computeMenuOpts() {
@@ -47315,6 +47324,7 @@ var menu_menus = VxeUI.menus,
47315
47324
  var objItem = _objectSpread2(_objectSpread2({}, item), {}, {
47316
47325
  parentKey: parent ? parent.name || path.slice(0, path.length - 1).join(',') : '',
47317
47326
  level: path.length,
47327
+ itemId: ++nemuUniqueKey,
47318
47328
  itemKey: item.name || path.join(','),
47319
47329
  isExactActive: false,
47320
47330
  isActive: false,
@@ -47380,12 +47390,19 @@ var menu_menus = VxeUI.menus,
47380
47390
  handleClickIconCollapse: function handleClickIconCollapse(evnt, item, itemList) {
47381
47391
  var $xeMenu = this;
47382
47392
  var props = $xeMenu;
47393
+ var internalData = $xeMenu.internalData;
47383
47394
  var accordion = props.accordion;
47384
- var hasChild = item.hasChild,
47395
+ var menuEffectMaps = internalData.menuEffectMaps;
47396
+ var itemId = item.itemId,
47397
+ hasChild = item.hasChild,
47385
47398
  isExpand = item.isExpand;
47399
+ var expanded = !isExpand;
47386
47400
  if (hasChild) {
47387
47401
  evnt.stopPropagation();
47388
47402
  evnt.preventDefault();
47403
+ if (menuEffectMaps[itemId]) {
47404
+ clearTimeout(menuEffectMaps[itemId]);
47405
+ }
47389
47406
  if (accordion) {
47390
47407
  itemList.forEach(function (obj) {
47391
47408
  if (obj !== item) {
@@ -47393,7 +47410,32 @@ var menu_menus = VxeUI.menus,
47393
47410
  }
47394
47411
  });
47395
47412
  }
47396
- item.isExpand = !isExpand;
47413
+ item.isExpand = expanded;
47414
+ var el = $xeMenu.$refs.refElem;
47415
+ if (el) {
47416
+ var nemuEl = el.querySelector(".vxe-menu--item-wrapper[data-menu-id=\"".concat(itemId, "\"]"));
47417
+ var groupEl = nemuEl ? nemuEl.querySelector('.vxe-menu--item-group') : null;
47418
+ if (groupEl) {
47419
+ if (expanded) {
47420
+ groupEl.style.height = '0';
47421
+ groupEl.setAttribute('data-effect', 'y');
47422
+ requestAnimationFrame(function () {
47423
+ groupEl.style.height = "".concat(groupEl.scrollHeight, "px");
47424
+ });
47425
+ } else {
47426
+ groupEl.style.height = "".concat(groupEl.scrollHeight, "px");
47427
+ groupEl.setAttribute('data-effect', 'y');
47428
+ requestAnimationFrame(function () {
47429
+ groupEl.style.height = '0';
47430
+ });
47431
+ }
47432
+ menuEffectMaps[itemId] = setTimeout(function () {
47433
+ delete menuEffectMaps[itemId];
47434
+ groupEl.removeAttribute('data-effect');
47435
+ groupEl.style.height = '';
47436
+ }, 350);
47437
+ }
47438
+ }
47397
47439
  }
47398
47440
  },
47399
47441
  handleContextmenuEvent: function handleContextmenuEvent(evnt, item) {
@@ -47480,7 +47522,7 @@ var menu_menus = VxeUI.menus,
47480
47522
  var $xeMenu = this;
47481
47523
  var reactData = $xeMenu.reactData;
47482
47524
  var collapseStyle = reactData.collapseStyle;
47483
- var el = this.$refs.refElem;
47525
+ var el = $xeMenu.$refs.refElem;
47484
47526
  reactData.collapseStyle = Object.assign({}, collapseStyle, {
47485
47527
  width: el ? toCssUnit(el.offsetWidth) : ''
47486
47528
  });
@@ -47533,7 +47575,8 @@ var menu_menus = VxeUI.menus,
47533
47575
  renderDefaultChildren: function renderDefaultChildren(h, item, itemList) {
47534
47576
  var $xeMenu = this;
47535
47577
  var reactData = $xeMenu.reactData;
47536
- var itemKey = item.itemKey,
47578
+ var itemId = item.itemId,
47579
+ itemKey = item.itemKey,
47537
47580
  level = item.level,
47538
47581
  hasChild = item.hasChild,
47539
47582
  isActive = item.isActive,
@@ -47554,7 +47597,10 @@ var menu_menus = VxeUI.menus,
47554
47597
  'is--exact-active': isExactActive,
47555
47598
  'is--active': isActive,
47556
47599
  'is--expand': (!isCollapsed || isEnterCollapse) && isExpand
47557
- }]
47600
+ }],
47601
+ attrs: {
47602
+ 'data-menu-id': itemId
47603
+ }
47558
47604
  }, [routerLink ? h('router-link', {
47559
47605
  class: 'vxe-menu--item-link',
47560
47606
  props: {
@@ -47587,7 +47633,8 @@ var menu_menus = VxeUI.menus,
47587
47633
  },
47588
47634
  renderCollapseChildren: function renderCollapseChildren(h, item, itemList) {
47589
47635
  var $xeMenu = this;
47590
- var itemKey = item.itemKey,
47636
+ var itemId = item.itemId,
47637
+ itemKey = item.itemKey,
47591
47638
  level = item.level,
47592
47639
  hasChild = item.hasChild,
47593
47640
  isActive = item.isActive,
@@ -47604,7 +47651,10 @@ var menu_menus = VxeUI.menus,
47604
47651
  class: ['vxe-menu--item-wrapper', "vxe-menu--item-level".concat(level), {
47605
47652
  'is--exact-active': isExactActive,
47606
47653
  'is--active': isActive
47607
- }]
47654
+ }],
47655
+ attrs: {
47656
+ 'data-menu-id': itemId
47657
+ }
47608
47658
  }, [routerLink ? h('router-link', {
47609
47659
  class: 'vxe-menu--item-link',
47610
47660
  props: {
@@ -47703,6 +47753,16 @@ var menu_menus = VxeUI.menus,
47703
47753
  $xeMenu.handleCollapseMenu();
47704
47754
  }
47705
47755
  },
47756
+ created: function created() {
47757
+ var $xeMenu = this;
47758
+ var props = $xeMenu;
47759
+ $xeMenu.internalData = menu_createInternalData();
47760
+ var reactData = $xeMenu.reactData;
47761
+ reactData.initialized = !!props.collapsed;
47762
+ reactData.activeName = props.value;
47763
+ $xeMenu.updateMenuConfig();
47764
+ $xeMenu.updateActiveMenu(true);
47765
+ },
47706
47766
  mounted: function mounted() {
47707
47767
  var $xeMenu = this;
47708
47768
  var props = $xeMenu;
@@ -47711,12 +47771,13 @@ var menu_menus = VxeUI.menus,
47711
47771
  if (menuConfig && !VxeUIContextMenu) {
47712
47772
  menu_errLog('vxe.error.reqComp', ['vxe-context-menu']);
47713
47773
  }
47714
- globalEvents.on($xeMenu, 'resize', $xeMenu.updateCollapseStyle);
47715
47774
  $xeMenu.updateCollapseStyle();
47775
+ globalEvents.on($xeMenu, 'resize', $xeMenu.updateCollapseStyle);
47716
47776
  },
47717
47777
  beforeDestroy: function beforeDestroy() {
47718
47778
  var $xeMenu = this;
47719
- globalEvents.off($xeMenu, 'resize');
47779
+ var reactData = $xeMenu.reactData;
47780
+ var internalData = $xeMenu.internalData;
47720
47781
  var collapseEl = $xeMenu.$refs.refCollapseElem;
47721
47782
  if (collapseEl) {
47722
47783
  var parentNode = collapseEl.parentNode;
@@ -47724,15 +47785,9 @@ var menu_menus = VxeUI.menus,
47724
47785
  parentNode.removeChild(collapseEl);
47725
47786
  }
47726
47787
  }
47727
- },
47728
- created: function created() {
47729
- var $xeMenu = this;
47730
- var props = $xeMenu;
47731
- var reactData = $xeMenu.reactData;
47732
- reactData.initialized = !!props.collapsed;
47733
- reactData.activeName = props.value;
47734
- $xeMenu.updateMenuConfig();
47735
- $xeMenu.updateActiveMenu(true);
47788
+ globalEvents.off($xeMenu, 'resize');
47789
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().assign(reactData, menu_createReactData());
47790
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().assign(internalData, menu_createInternalData());
47736
47791
  },
47737
47792
  render: function render(h) {
47738
47793
  return this.renderVN(h);