x-ui-design 0.7.75 → 0.7.77

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.
@@ -12,11 +12,11 @@ export declare const MenuContext: React.Context<{
12
12
  toggleOpen: (key: string, level?: "1" | "2") => void;
13
13
  onItemClick: (key: string, domEvent?: MouseEvent) => void;
14
14
  triggerSubMenuAction?: "hover" | "click";
15
- prefixCls: string;
16
15
  } | null>;
17
16
  declare const ItemGroup: FC<{
18
17
  title?: ReactNode;
19
18
  children?: ReactNode;
19
+ prefixCls?: string;
20
20
  }>;
21
21
  declare const Menu: FC<MenuProps> & {
22
22
  Item: typeof MenuItem;
package/dist/index.esm.js CHANGED
@@ -4427,34 +4427,34 @@ const MenuItem = ({
4427
4427
  danger,
4428
4428
  extra,
4429
4429
  selected,
4430
- className = ''
4430
+ className = '',
4431
+ prefixCls = prefixClsMenu
4431
4432
  }) => {
4432
- const ctx = useContext(MenuContext);
4433
- if (!ctx) {
4434
- return null;
4433
+ const menuContext = useContext(MenuContext);
4434
+ if (!menuContext) {
4435
+ throw new Error('MenuItem must be used within a Menu');
4435
4436
  }
4436
- const prefix = ctx?.prefixCls ?? prefixClsMenu;
4437
4437
  const handleClick = e => {
4438
4438
  if (disabled) {
4439
4439
  return;
4440
4440
  }
4441
- ctx?.onItemClick(itemKey, e);
4441
+ menuContext?.onItemClick(itemKey, e);
4442
4442
  };
4443
4443
  return /*#__PURE__*/React.createElement("li", {
4444
4444
  role: "menuitem",
4445
4445
  title: title,
4446
4446
  onClick: handleClick,
4447
- className: clsx([`${prefix}-item ${className}`, {
4448
- [`${prefix}-item-disabled`]: disabled,
4449
- [`${prefix}-item-selected`]: selected,
4450
- [`${prefix}-item-danger`]: danger
4447
+ className: clsx([`${prefixCls}-item ${className}`, {
4448
+ [`${prefixCls}-item-disabled`]: disabled,
4449
+ [`${prefixCls}-item-selected`]: selected,
4450
+ [`${prefixCls}-item-danger`]: danger
4451
4451
  }])
4452
4452
  }, icon && /*#__PURE__*/React.createElement("span", {
4453
- className: `${prefix}-item-icon`
4453
+ className: `${prefixCls}-item-icon`
4454
4454
  }, icon), /*#__PURE__*/React.createElement("span", {
4455
- className: `${prefix}-item-label`
4455
+ className: `${prefixCls}-item-label`
4456
4456
  }, label), extra && /*#__PURE__*/React.createElement("span", {
4457
- className: `${prefix}-item-extra`
4457
+ className: `${prefixCls}-item-extra`
4458
4458
  }, extra));
4459
4459
  };
4460
4460
 
@@ -4469,18 +4469,18 @@ const SubMenu = ({
4469
4469
  icon,
4470
4470
  children,
4471
4471
  className = '',
4472
- level
4472
+ level,
4473
+ prefixCls = prefixClsMenu
4473
4474
  }) => {
4474
- const ctx = useContext(MenuContext);
4475
- if (!ctx) {
4476
- return null;
4475
+ const menuContext = useContext(MenuContext);
4476
+ if (!menuContext) {
4477
+ throw new Error('MenuItem must be used within a Menu');
4477
4478
  }
4478
4479
  const {
4479
- prefixCls,
4480
4480
  openKeys,
4481
4481
  toggleOpen,
4482
4482
  triggerSubMenuAction
4483
- } = ctx;
4483
+ } = menuContext;
4484
4484
  const isOpen = openKeys.includes(itemKey);
4485
4485
  const handleClick = useCallback(() => {
4486
4486
  if (triggerSubMenuAction === "click") {
@@ -4524,16 +4524,15 @@ styleInject(css_248z);
4524
4524
  const MenuContext = /*#__PURE__*/createContext(null);
4525
4525
  const ItemGroup = ({
4526
4526
  title,
4527
- children
4527
+ children,
4528
+ prefixCls
4528
4529
  }) => {
4529
- const ctx = useContext(MenuContext);
4530
- const prefix = ctx?.prefixCls ?? prefixClsMenu;
4531
4530
  return /*#__PURE__*/React.createElement("li", {
4532
- className: `${prefix}-group`
4531
+ className: `${prefixCls}-group`
4533
4532
  }, title && /*#__PURE__*/React.createElement("div", {
4534
- className: `${prefix}-group-title`
4533
+ className: `${prefixCls}-group-title`
4535
4534
  }, title), /*#__PURE__*/React.createElement("ul", {
4536
- className: `${prefix}-group-list`
4535
+ className: `${prefixCls}-group-list`
4537
4536
  }, children));
4538
4537
  };
4539
4538
  const Menu = ({
@@ -4609,7 +4608,7 @@ const Menu = ({
4609
4608
  });
4610
4609
  }
4611
4610
  }, [multiple, onClick, onSelect, onDeselect, selectedKeys, selectable, selectedKeysProp]);
4612
- const ctxValue = useMemo(() => ({
4611
+ const menuContext = useMemo(() => ({
4613
4612
  mode,
4614
4613
  inlineIndent,
4615
4614
  inlineCollapsed,
@@ -4618,10 +4617,10 @@ const Menu = ({
4618
4617
  toggleOpen,
4619
4618
  onItemClick,
4620
4619
  triggerSubMenuAction: _triggerSubMenuActionClick,
4621
- prefixCls: prefixCls ?? prefixClsMenu
4620
+ prefixCls
4622
4621
  }), [mode, inlineIndent, inlineCollapsed, selectedKeys, openKeys, toggleOpen, onItemClick, _triggerSubMenuActionClick, prefixCls]);
4623
4622
  return /*#__PURE__*/React.createElement(MenuContext.Provider, {
4624
- value: ctxValue ?? {}
4623
+ value: menuContext
4625
4624
  }, /*#__PURE__*/React.createElement("ul", {
4626
4625
  role: "menu",
4627
4626
  style: style,