{"version":3,"file":"index.cjs","sources":["../../../../../../packages/components/drawer/style/index.ts"],"sourcesContent":["import type { FullToken, GenerateStyle } from '@antdv/theme';\nimport { genComponentStyleHook, mergeToken } from '@antdv/theme';\nimport genMotionStyle from './motion';\n\nexport interface ComponentToken {\n  zIndexPopup: number\n}\n\nexport interface DrawerToken extends FullToken<'Drawer'> {\n  drawerFooterPaddingVertical: number\n  drawerFooterPaddingHorizontal: number\n}\n\n// =============================== Base ===============================\nconst genDrawerStyle: GenerateStyle<DrawerToken> = (token: DrawerToken) => {\n  const {\n    componentCls,\n    zIndexPopup,\n    colorBgMask,\n    colorBgElevated,\n    motionDurationSlow,\n    motionDurationMid,\n    padding,\n    paddingLG,\n    fontSizeLG,\n    lineHeightLG,\n    lineWidth,\n    lineType,\n    colorSplit,\n    marginSM,\n    colorIcon,\n    colorIconHover,\n    colorText,\n    fontWeightStrong,\n    drawerFooterPaddingVertical,\n    drawerFooterPaddingHorizontal,\n  } = token;\n\n  const wrapperCls = `${componentCls}-content-wrapper`;\n\n  return {\n    [componentCls]: {\n      'position': 'fixed',\n      'inset': 0,\n      'zIndex': zIndexPopup,\n      'pointerEvents': 'none',\n\n      '&-pure': {\n        position: 'relative',\n        background: colorBgElevated,\n\n        [`&${componentCls}-left`]: {\n          boxShadow: token.boxShadowDrawerLeft,\n        },\n        [`&${componentCls}-right`]: {\n          boxShadow: token.boxShadowDrawerRight,\n        },\n        [`&${componentCls}-top`]: {\n          boxShadow: token.boxShadowDrawerUp,\n        },\n        [`&${componentCls}-bottom`]: {\n          boxShadow: token.boxShadowDrawerDown,\n        },\n      },\n\n      '&-inline': {\n        position: 'absolute',\n      },\n\n      // ====================== Mask ======================\n      [`${componentCls}-mask`]: {\n        position: 'absolute',\n        inset: 0,\n        zIndex: zIndexPopup,\n        background: colorBgMask,\n        pointerEvents: 'auto',\n      },\n\n      // ==================== Content =====================\n      [wrapperCls]: {\n        'position': 'absolute',\n        'zIndex': zIndexPopup,\n        'transition': `all ${motionDurationSlow}`,\n\n        '&-hidden': {\n          display: 'none',\n        },\n      },\n\n      // Placement\n      [`&-left > ${wrapperCls}`]: {\n        top: 0,\n        bottom: 0,\n        left: {\n          _skip_check_: true,\n          value: 0,\n        },\n        boxShadow: token.boxShadowDrawerLeft,\n      },\n      [`&-right > ${wrapperCls}`]: {\n        top: 0,\n        right: {\n          _skip_check_: true,\n          value: 0,\n        },\n        bottom: 0,\n        boxShadow: token.boxShadowDrawerRight,\n      },\n      [`&-top > ${wrapperCls}`]: {\n        top: 0,\n        insetInline: 0,\n        boxShadow: token.boxShadowDrawerUp,\n      },\n      [`&-bottom > ${wrapperCls}`]: {\n        bottom: 0,\n        insetInline: 0,\n        boxShadow: token.boxShadowDrawerDown,\n      },\n\n      [`${componentCls}-content`]: {\n        width: '100%',\n        height: '100%',\n        overflow: 'auto',\n        background: colorBgElevated,\n        pointerEvents: 'auto',\n      },\n\n      // ===================== Panel ======================\n      [`${componentCls}-wrapper-body`]: {\n        display: 'flex',\n        flexDirection: 'column',\n        width: '100%',\n        height: '100%',\n      },\n\n      // Header\n      [`${componentCls}-header`]: {\n        'display': 'flex',\n        'flex': 0,\n        'alignItems': 'center',\n        'padding': `${padding}px ${paddingLG}px`,\n        'fontSize': fontSizeLG,\n        'lineHeight': lineHeightLG,\n        'borderBottom': `${lineWidth}px ${lineType} ${colorSplit}`,\n\n        '&-title': {\n          display: 'flex',\n          flex: 1,\n          alignItems: 'center',\n          minWidth: 0,\n          minHeight: 0,\n        },\n      },\n\n      [`${componentCls}-extra`]: {\n        flex: 'none',\n      },\n\n      [`${componentCls}-close`]: {\n        'display': 'inline-block',\n        'marginInlineEnd': marginSM,\n        'color': colorIcon,\n        'fontWeight': fontWeightStrong,\n        'fontSize': fontSizeLG,\n        'fontStyle': 'normal',\n        'lineHeight': 1,\n        'textAlign': 'center',\n        'textTransform': 'none',\n        'textDecoration': 'none',\n        'background': 'transparent',\n        'border': 0,\n        'outline': 0,\n        'cursor': 'pointer',\n        'transition': `color ${motionDurationMid}`,\n        'textRendering': 'auto',\n\n        '&:focus, &:hover': {\n          color: colorIconHover,\n          textDecoration: 'none',\n        },\n      },\n\n      [`${componentCls}-title`]: {\n        flex: 1,\n        margin: 0,\n        color: colorText,\n        fontWeight: token.fontWeightStrong,\n        fontSize: fontSizeLG,\n        lineHeight: lineHeightLG,\n      },\n\n      // Body\n      [`${componentCls}-body`]: {\n        flex: 1,\n        minWidth: 0,\n        minHeight: 0,\n        padding: paddingLG,\n        overflow: 'auto',\n      },\n\n      // Footer\n      [`${componentCls}-footer`]: {\n        flexShrink: 0,\n        padding: `${drawerFooterPaddingVertical}px ${drawerFooterPaddingHorizontal}px`,\n        borderTop: `${lineWidth}px ${lineType} ${colorSplit}`,\n      },\n\n      // ====================== RTL =======================\n      '&-rtl': {\n        direction: 'rtl',\n      },\n    },\n  };\n};\n\n// ============================== Export ==============================\nexport default genComponentStyleHook(\n  'Drawer',\n  (token) => {\n    const drawerToken = mergeToken<DrawerToken>(token, {\n      drawerFooterPaddingVertical: token.paddingXS,\n      drawerFooterPaddingHorizontal: token.padding,\n    });\n\n    return [genDrawerStyle(drawerToken), genMotionStyle(drawerToken)];\n  },\n  token => ({\n    zIndexPopup: token.zIndexPopupBase,\n  }),\n);\n"],"names":["genComponentStyleHook","mergeToken","genMotionStyle"],"mappings":"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"}