{"version":3,"file":"vertical.cjs","sources":["../../../../../../packages/components/menu/style/vertical.ts"],"sourcesContent":["import type { CSSObject, GenerateStyle } from '@antdv/theme';\nimport type { MenuToken } from '.';\nimport { textEllipsis } from '@antdv/theme';\n\nconst getVerticalInlineStyle: GenerateStyle<MenuToken, CSSObject> = (token) => {\n  const {\n    componentCls,\n    menuItemHeight,\n    itemMarginInline,\n    padding,\n    menuArrowSize,\n    marginXS,\n    marginXXS,\n  } = token;\n\n  const paddingWithArrow = padding + menuArrowSize + marginXS;\n\n  return {\n    [`${componentCls}-item`]: {\n      position: 'relative',\n    },\n\n    [`${componentCls}-item, ${componentCls}-submenu-title`]: {\n      height: menuItemHeight,\n      lineHeight: `${menuItemHeight}px`,\n      paddingInline: padding,\n      overflow: 'hidden',\n      textOverflow: 'ellipsis',\n\n      marginInline: itemMarginInline,\n      marginBlock: marginXXS,\n      width: `calc(100% - ${itemMarginInline * 2}px)`,\n    },\n\n    // disable margin collapsed\n    [`${componentCls}-submenu`]: {\n      paddingBottom: 0.02,\n    },\n\n    [`> ${componentCls}-item,\n            > ${componentCls}-submenu > ${componentCls}-submenu-title`]: {\n      height: menuItemHeight,\n      lineHeight: `${menuItemHeight}px`,\n    },\n\n    [`${componentCls}-item-group-list ${componentCls}-submenu-title,\n            ${componentCls}-submenu-title`]: {\n      paddingInlineEnd: paddingWithArrow,\n    },\n  };\n};\n\nconst getVerticalStyle: GenerateStyle<MenuToken> = (token) => {\n  const {\n    componentCls,\n    iconCls,\n    menuItemHeight,\n    colorTextLightSolid,\n    dropdownWidth,\n    controlHeightLG,\n    motionDurationMid,\n    motionEaseOut,\n    paddingXL,\n    fontSizeSM,\n    fontSizeLG,\n    motionDurationSlow,\n    paddingXS,\n    boxShadowSecondary,\n  } = token;\n\n  const inlineItemStyle: CSSObject = {\n    height: menuItemHeight,\n    lineHeight: `${menuItemHeight}px`,\n    listStylePosition: 'inside',\n    listStyleType: 'disc',\n  };\n\n  return [\n    {\n      [componentCls]: {\n        '&-inline, &-vertical': {\n          [`&${componentCls}-root`]: {\n            boxShadow: 'none',\n          },\n\n          ...getVerticalInlineStyle(token),\n        },\n      },\n\n      [`${componentCls}-submenu-popup`]: {\n        [`${componentCls}-vertical`]: {\n          ...getVerticalInlineStyle(token),\n          boxShadow: boxShadowSecondary,\n        },\n      },\n    },\n\n    // Vertical only\n    {\n      [`${componentCls}-submenu-popup ${componentCls}-vertical${componentCls}-sub`]: {\n        'minWidth': dropdownWidth,\n        'maxHeight': `calc(100vh - ${controlHeightLG * 2.5}px)`,\n        'padding': '0',\n        'overflow': 'hidden',\n        'borderInlineEnd': 0,\n\n        // https://github.com/ant-design/ant-design/issues/22244\n        // https://github.com/ant-design/ant-design/issues/26812\n        '&:not([class*=\\'-active\\'])': {\n          overflowX: 'hidden',\n          overflowY: 'auto',\n        },\n      },\n    },\n\n    // Inline Only\n    {\n      [`${componentCls}-inline`]: {\n        width: '100%',\n\n        // Motion enhance for first level\n        [`&${componentCls}-root`]: {\n          [`${componentCls}-item, ${componentCls}-submenu-title`]: {\n            'display': 'flex',\n            'alignItems': 'center',\n            'transition': [\n              `border-color ${motionDurationSlow}`,\n              `background ${motionDurationSlow}`,\n              `padding ${motionDurationMid} ${motionEaseOut}`,\n            ].join(','),\n\n            [`> ${componentCls}-title-content`]: {\n              flex: 'auto',\n              minWidth: 0,\n              overflow: 'hidden',\n              textOverflow: 'ellipsis',\n            },\n\n            '> *': {\n              flex: 'none',\n            },\n          },\n        },\n\n        // >>>>> Sub\n        [`${componentCls}-sub${componentCls}-inline`]: {\n          padding: 0,\n          border: 0,\n          borderRadius: 0,\n          boxShadow: 'none',\n\n          [`& > ${componentCls}-submenu > ${componentCls}-submenu-title`]: inlineItemStyle,\n\n          [`& ${componentCls}-item-group-title`]: {\n            paddingInlineStart: paddingXL,\n          },\n        },\n\n        // >>>>> Item\n        [`${componentCls}-item`]: inlineItemStyle,\n      },\n    },\n\n    // Inline Collapse Only\n    {\n      [`${componentCls}-inline-collapsed`]: {\n        'width': menuItemHeight * 2,\n\n        [`&${componentCls}-root`]: {\n          [`${componentCls}-item, ${componentCls}-submenu ${componentCls}-submenu-title`]: {\n            [`> ${componentCls}-inline-collapsed-noicon`]: {\n              fontSize: fontSizeLG,\n              textAlign: 'center',\n            },\n          },\n        },\n\n        [`> ${componentCls}-item,\n          > ${componentCls}-item-group > ${componentCls}-item-group-list > ${componentCls}-item,\n          > ${componentCls}-item-group > ${componentCls}-item-group-list > ${componentCls}-submenu > ${componentCls}-submenu-title,\n          > ${componentCls}-submenu > ${componentCls}-submenu-title`]: {\n          insetInlineStart: 0,\n          paddingInline: `calc(50% - ${fontSizeSM}px)`,\n          textOverflow: 'clip',\n\n          [`\n            ${componentCls}-submenu-arrow,\n            ${componentCls}-submenu-expand-icon\n          `]: {\n            opacity: 0,\n          },\n\n          [`${componentCls}-item-icon, ${iconCls}`]: {\n            'margin': 0,\n            'fontSize': fontSizeLG,\n            'lineHeight': `${menuItemHeight}px`,\n\n            '+ span': {\n              display: 'inline-block',\n              opacity: 0,\n            },\n          },\n        },\n\n        [`${componentCls}-item-icon, ${iconCls}`]: {\n          display: 'inline-block',\n        },\n\n        '&-tooltip': {\n          'pointerEvents': 'none',\n\n          [`${componentCls}-item-icon, ${iconCls}`]: {\n            display: 'none',\n          },\n\n          'a, a:hover': {\n            color: colorTextLightSolid,\n          },\n        },\n\n        [`${componentCls}-item-group-title`]: {\n          ...textEllipsis,\n          paddingInline: paddingXS,\n        },\n      },\n    },\n  ];\n};\n\nexport default getVerticalStyle;\n"],"names":["textEllipsis"],"mappings":"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"}