{"version":3,"file":"index.mjs","sources":["../../../../../../packages/components/alert/style/index.ts"],"sourcesContent":["import type { CSSInterpolation, CSSObject, FullToken, GenerateStyle } from '@antdv/theme';\nimport { genComponentStyleHook, mergeToken, resetComponent } from '@antdv/theme';\n\nexport interface ComponentToken {}\n\ntype AlertToken = FullToken<'Alert'> & {\n  alertIconSizeLG: number\n  alertPaddingHorizontal: number\n};\n\nfunction genAlertTypeStyle(\n  bgColor: string,\n  borderColor: string,\n  iconColor: string,\n  token: AlertToken,\n  alertCls: string,\n): CSSObject {\n  return {\n    backgroundColor: bgColor,\n    border: `${token.lineWidth}px ${token.lineType} ${borderColor}`,\n    [`${alertCls}-icon`]: {\n      color: iconColor,\n    },\n  };\n}\n\nexport const genBaseStyle: GenerateStyle<AlertToken> = (token: AlertToken): CSSObject => {\n  const {\n    componentCls,\n    motionDurationSlow: duration,\n    marginXS,\n    marginSM,\n    fontSize,\n    fontSizeLG,\n    lineHeight,\n    borderRadiusLG: borderRadius,\n    motionEaseInOutCirc,\n    alertIconSizeLG,\n    colorText,\n    paddingContentVerticalSM,\n    alertPaddingHorizontal,\n    paddingMD,\n    paddingContentHorizontalLG,\n  } = token;\n\n  return {\n    [componentCls]: {\n      ...resetComponent(token),\n      'position': 'relative',\n      'display': 'flex',\n      'alignItems': 'center',\n      'padding': `${paddingContentVerticalSM}px ${alertPaddingHorizontal}px`, // Fixed horizontal padding here.\n      'wordWrap': 'break-word',\n      borderRadius,\n\n      [`&${componentCls}-rtl`]: {\n        direction: 'rtl',\n      },\n\n      [`${componentCls}-content`]: {\n        flex: 1,\n        minWidth: 0,\n      },\n\n      [`${componentCls}-icon`]: {\n        marginInlineEnd: marginXS,\n        lineHeight: 0,\n      },\n\n      '&-description': {\n        display: 'none',\n        fontSize,\n        lineHeight,\n      },\n\n      '&-message': {\n        color: colorText,\n      },\n\n      [`&${componentCls}-motion-leave`]: {\n        overflow: 'hidden',\n        opacity: 1,\n        transition: `max-height ${duration} ${motionEaseInOutCirc}, opacity ${duration} ${motionEaseInOutCirc},\n        padding-top ${duration} ${motionEaseInOutCirc}, padding-bottom ${duration} ${motionEaseInOutCirc},\n        margin-bottom ${duration} ${motionEaseInOutCirc}`,\n      },\n\n      [`&${componentCls}-motion-leave-active`]: {\n        maxHeight: 0,\n        marginBottom: '0 !important',\n        paddingTop: 0,\n        paddingBottom: 0,\n        opacity: 0,\n      },\n    },\n\n    [`${componentCls}-with-description`]: {\n      alignItems: 'flex-start',\n      paddingInline: paddingContentHorizontalLG,\n      paddingBlock: paddingMD,\n\n      [`${componentCls}-icon`]: {\n        marginInlineEnd: marginSM,\n        fontSize: alertIconSizeLG,\n        lineHeight: 0,\n      },\n\n      [`${componentCls}-message`]: {\n        display: 'block',\n        marginBottom: marginXS,\n        color: colorText,\n        fontSize: fontSizeLG,\n      },\n\n      [`${componentCls}-description`]: {\n        display: 'block',\n      },\n    },\n\n    [`${componentCls}-banner`]: {\n      marginBottom: 0,\n      border: '0 !important',\n      borderRadius: 0,\n    },\n  };\n};\n\nexport const genTypeStyle: GenerateStyle<AlertToken> = (token: AlertToken): CSSObject => {\n  const {\n    componentCls,\n\n    colorSuccess,\n    colorSuccessBorder,\n    colorSuccessBg,\n\n    colorWarning,\n    colorWarningBorder,\n    colorWarningBg,\n\n    colorError,\n    colorErrorBorder,\n    colorErrorBg,\n\n    colorInfo,\n    colorInfoBorder,\n    colorInfoBg,\n  } = token;\n\n  return {\n    [componentCls]: {\n      '&-success': genAlertTypeStyle(\n        colorSuccessBg,\n        colorSuccessBorder,\n        colorSuccess,\n        token,\n        componentCls,\n      ),\n      '&-info': genAlertTypeStyle(colorInfoBg, colorInfoBorder, colorInfo, token, componentCls),\n      '&-warning': genAlertTypeStyle(\n        colorWarningBg,\n        colorWarningBorder,\n        colorWarning,\n        token,\n        componentCls,\n      ),\n      '&-error': {\n        ...genAlertTypeStyle(colorErrorBg, colorErrorBorder, colorError, token, componentCls),\n        [`${componentCls}-description > pre`]: {\n          margin: 0,\n          padding: 0,\n        },\n      },\n    },\n  };\n};\n\nexport const genActionStyle: GenerateStyle<AlertToken> = (token: AlertToken): CSSObject => {\n  const {\n    componentCls,\n    iconCls,\n    motionDurationMid,\n    marginXS,\n    fontSizeIcon,\n    colorIcon,\n    colorIconHover,\n  } = token;\n\n  return {\n    [componentCls]: {\n      '&-action': {\n        marginInlineStart: marginXS,\n      },\n\n      [`${componentCls}-close-icon`]: {\n        marginInlineStart: marginXS,\n        padding: 0,\n        overflow: 'hidden',\n        fontSize: fontSizeIcon,\n        lineHeight: `${fontSizeIcon}px`,\n        backgroundColor: 'transparent',\n        border: 'none',\n        outline: 'none',\n        cursor: 'pointer',\n\n        [`${iconCls}-close`]: {\n          'color': colorIcon,\n          'transition': `color ${motionDurationMid}`,\n          '&:hover': {\n            color: colorIconHover,\n          },\n        },\n      },\n\n      '&-close-text': {\n        'color': colorIcon,\n        'transition': `color ${motionDurationMid}`,\n        '&:hover': {\n          color: colorIconHover,\n        },\n      },\n    },\n  };\n};\n\nexport const genAlertStyle: GenerateStyle<AlertToken> = (token: AlertToken): CSSInterpolation => [\n  genBaseStyle(token),\n  genTypeStyle(token),\n  genActionStyle(token),\n];\n\nexport default genComponentStyleHook('Alert', (token) => {\n  const { fontSizeHeading3 } = token;\n\n  const alertToken = mergeToken<AlertToken>(token, {\n    alertIconSizeLG: fontSizeHeading3,\n    alertPaddingHorizontal: 12, // Fixed value here.\n  });\n\n  return [genAlertStyle(alertToken)];\n});\n"],"names":["mergeToken"],"mappings":"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"}