zmdms-webui 1.4.2 → 1.4.4

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.
@@ -39,7 +39,7 @@ var MainMenu = function (props) {
39
39
  addTab({
40
40
  key: newPath_1,
41
41
  path: newPath_1,
42
- label: menuItem.name,
42
+ label: menuItem.label || menuItem.name,
43
43
  });
44
44
  } }, { children: menuItem.name })));
45
45
  }
@@ -51,7 +51,7 @@ var MainMenu = function (props) {
51
51
  addTab({
52
52
  key: newPath,
53
53
  path: newPath,
54
- label: menuItem.name,
54
+ label: menuItem.label || menuItem.name,
55
55
  });
56
56
  } }, { children: menuItem.name })));
57
57
  }, [addTab, getPrefixByAppId, getNewPath, renderItem]);
@@ -15,7 +15,7 @@ import { Drawer, Menu } from 'antd';
15
15
  var defaultSubMenu = [];
16
16
  var SubMenu = function (props, ref) {
17
17
  var marginLeft = props.marginLeft, subMenuWidth = props.subMenuWidth, layoutSiderRef = props.layoutSiderRef, addTab = props.addTab, getPrefixByAppId = props.getPrefixByAppId, subMenuLogo = props.subMenuLogo, visible = props.visible, setVisible = props.setVisible, _a = props.defaultFixed, defaultFixed = _a === void 0 ? true : _a;
18
- var _b = useContext(LayoutMenuContext), mainMenuSelectedKeys = _b.mainMenuSelectedKeys, setMainMenuSelectedKeys = _b.setMainMenuSelectedKeys, activeTab = _b.activeTab, userSubMenus = _b.userSubMenus, innerUserSubMenus = _b.innerUserSubMenus, drawerTitle = _b.drawerTitle, selectMainMenu = _b.selectMainMenu, getNewPath = _b.getNewPath, renderItem = _b.renderItem;
18
+ var _b = useContext(LayoutMenuContext), mainMenuSelectedKeys = _b.mainMenuSelectedKeys, setMainMenuSelectedKeys = _b.setMainMenuSelectedKeys, activeTab = _b.activeTab, userMenus = _b.userMenus, userSubMenus = _b.userSubMenus, innerUserSubMenus = _b.innerUserSubMenus, drawerTitle = _b.drawerTitle, selectMainMenu = _b.selectMainMenu, getNewPath = _b.getNewPath, renderItem = _b.renderItem;
19
19
  // 二级菜单当前选中项
20
20
  var subMenusSelectedKeys = useMemo(function () {
21
21
  return activeTab ? [activeTab] : [];
@@ -40,6 +40,7 @@ var SubMenu = function (props, ref) {
40
40
  selectMainMenu: selectMainMenu,
41
41
  isClickSubMenu: isClickSubMenu,
42
42
  getNewPath: getNewPath,
43
+ userMenus: userMenus,
43
44
  }), subMenuOpenKeys = _c.subMenuOpenKeys, onSubMenuOpenChange = _c.onSubMenuOpenChange;
44
45
  // 如果是搜索或者收藏 把二级菜单都展开
45
46
  useEffect(function () {
@@ -148,7 +149,7 @@ var SubMenu = function (props, ref) {
148
149
  var classes = classNames("zmdms-menu--sub", {
149
150
  "zmdms-menu--sub-margin": !drawerTitle,
150
151
  });
151
- return (jsx(Drawer, __assign({ mask: false, placement: "left", width: subMenuWidth, zIndex: 101, closable: false, open: visible, className: classes, style: { marginLeft: marginLeft }, footer: footerDom, title: jsx("img", { src: subMenuLogo, title: "\u4EBA\u529B\u8D44\u6E90\u7CFB\u7EDF", alt: "cico_logo" }) }, { children: jsx(Menu, { inlineIndent: 5, selectedKeys: subMenusSelectedKeys, mode: "inline", items: items, openKeys: subMenuOpenKeys, onOpenChange: onSubMenuOpenChange }) })));
152
+ return (jsx(Drawer, __assign({ mask: false, placement: "left", width: subMenuWidth, zIndex: 101, closable: false, open: visible, className: classes, style: { marginLeft: marginLeft }, footer: footerDom, title: subMenuLogo ? (jsx("img", { src: subMenuLogo, title: "\u4EBA\u529B\u8D44\u6E90\u7CFB\u7EDF", alt: "cico_logo" })) : null }, { children: jsx(Menu, { inlineIndent: 5, selectedKeys: subMenusSelectedKeys, mode: "inline", items: items, openKeys: subMenuOpenKeys, onOpenChange: onSubMenuOpenChange }) })));
152
153
  };
153
154
  var SubMenu$1 = memo(forwardRef(SubMenu));
154
155
 
@@ -82,7 +82,7 @@ function useMainMenuOpenKeys(userMenus, mainMenuSelectedKeys, options) {
82
82
  }
83
83
  // 需要打开的二级菜单
84
84
  function useSubMenuOpenKeys(userSubMenus, activeTab, options) {
85
- var getPrefixByAppId = options.getPrefixByAppId, setMainMenuSelectedKeys = options.setMainMenuSelectedKeys, selectMainMenu = options.selectMainMenu, isClickSubMenu = options.isClickSubMenu, getNewPath = options.getNewPath;
85
+ var getPrefixByAppId = options.getPrefixByAppId, setMainMenuSelectedKeys = options.setMainMenuSelectedKeys, selectMainMenu = options.selectMainMenu, isClickSubMenu = options.isClickSubMenu, getNewPath = options.getNewPath, userMenus = options.userMenus;
86
86
  // 展开指定的二级菜单
87
87
  var _a = useState([]), openKeys = _a[0], setOpenKeys = _a[1];
88
88
  var onOpenChange = useCallback(function (openKeys) {
@@ -121,6 +121,44 @@ function useSubMenuOpenKeys(userSubMenus, activeTab, options) {
121
121
  return;
122
122
  }
123
123
  }
124
+ // 如果当前activeTab直接与一级菜单匹配上,那么说明当前选中的是主菜单带路由
125
+ var currentUserMenu = null;
126
+ userMenus.find(function (userMenu) {
127
+ var path = userMenu.path, children = userMenu.children;
128
+ if (path === activeTab) {
129
+ currentUserMenu = userMenu;
130
+ return true;
131
+ }
132
+ // 最多只往下遍历一层
133
+ if (Array.isArray(children)) {
134
+ return children.find(function (item) {
135
+ var path = item.path;
136
+ if (path === activeTab) {
137
+ currentUserMenu = item;
138
+ return true;
139
+ }
140
+ return false;
141
+ });
142
+ }
143
+ });
144
+ if (currentUserMenu) {
145
+ var id_1 = currentUserMenu.id;
146
+ // 如果在主菜单中找到了的话 那么说明是主菜单带路由
147
+ setMainMenuSelectedKeys &&
148
+ setMainMenuSelectedKeys(function (preMainMainIds) {
149
+ if (isEqual(preMainMainIds, [id_1])) {
150
+ return preMainMainIds;
151
+ }
152
+ return [id_1];
153
+ });
154
+ // 展开下面的菜单 如果有菜单的话
155
+ if (userSubMenus &&
156
+ Array.isArray(userSubMenus[id_1]) &&
157
+ userSubMenus[id_1].length > 0) {
158
+ setOpenKeys(userSubMenus[id_1].map(function (i) { return i.id; }));
159
+ }
160
+ return;
161
+ }
124
162
  var _loop_1 = function (key, value) {
125
163
  if (!Array.isArray(value)) {
126
164
  return "continue";
@@ -71,23 +71,32 @@ function tableValidate(dataSource, columns, restParams) {
71
71
  parseValidateFiledsHandle = function (columns) {
72
72
  if (Array.isArray(columns)) {
73
73
  columns.forEach(function (column, index) {
74
- var _a, _b;
74
+ var _a;
75
75
  if (!isMerge) {
76
- // 这里判断需要改动,只需要有rowSpan属性或者colSpan属性就有合并
77
- var mergeColumn = (_a = column === null || column === void 0 ? void 0 : column.onCell) === null || _a === void 0 ? void 0 : _a.call(column, {}, 1);
78
- // if (mergeColumn && (mergeColumn?.rowSpan || mergeColumn?.colSpan)) {
79
- if (mergeColumn &&
80
- (Reflect.has(mergeColumn, "rowSpan") ||
81
- Reflect.has(mergeColumn, "colSpan"))) {
76
+ // 29259116 这里判断是否有行列合并的逻辑变化一下。认为只要配置中传入了onCell
77
+ // 那就是有合并
78
+ // 因为如果用 column?.onCell?.({}, 1) 这种模式,可能开发会根据record来判断,而这里拿不到record
79
+ // 并且索引也不是所有的情况
80
+ if (column === null || column === void 0 ? void 0 : column.onCell) {
82
81
  isMerge = true;
83
82
  }
83
+ // // 这里判断需要改动,只需要有rowSpan属性或者colSpan属性就有合并
84
+ // const mergeColumn = column?.onCell?.({}, 1);
85
+ // // if (mergeColumn && (mergeColumn?.rowSpan || mergeColumn?.colSpan)) {
86
+ // if (
87
+ // mergeColumn &&
88
+ // (Reflect.has(mergeColumn, "rowSpan") ||
89
+ // Reflect.has(mergeColumn, "colSpan"))
90
+ // ) {
91
+ // isMerge = true;
92
+ // }
84
93
  }
85
94
  // 如果有子元素,需要递归往下遍历
86
95
  if (Array.isArray(column.children)) {
87
96
  parseValidateFiledsHandle(column.children);
88
97
  return;
89
98
  }
90
- var _key = ((_b = column === null || column === void 0 ? void 0 : column.validate) === null || _b === void 0 ? void 0 : _b.dataIndex)
99
+ var _key = ((_a = column === null || column === void 0 ? void 0 : column.validate) === null || _a === void 0 ? void 0 : _a.dataIndex)
91
100
  ? column.validate.dataIndex
92
101
  : (column === null || column === void 0 ? void 0 : column.key)
93
102
  ? column === null || column === void 0 ? void 0 : column.key
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zmdms-webui",
3
- "version": "1.4.2",
3
+ "version": "1.4.4",
4
4
  "private": false,
5
5
  "main": "dist/index.es.js",
6
6
  "module": "dist/index.es.js",