{"version":3,"file":"index.cjs","sources":["../../../../../../packages/components/rate/style/index.ts"],"sourcesContent":["import type { CSSObject, FullToken, GenerateStyle } from '@antdv/theme';\nimport { genComponentStyleHook, mergeToken, resetComponent } from '@antdv/theme';\n\nexport interface ComponentToken {}\n\ninterface RateToken extends FullToken<'Rate'> {\n  rateStarColor: string\n  rateStarSize: number\n  rateStarHoverScale: CSSObject['transform']\n  defaultColor: string\n}\n\nconst genRateStarStyle: GenerateStyle<RateToken, CSSObject> = (token) => {\n  const { componentCls } = token;\n\n  return {\n    [`${componentCls}-star`]: {\n      'position': 'relative',\n      'display': 'inline-block',\n      'color': 'inherit',\n      'cursor': 'pointer',\n\n      '&:not(:last-child)': {\n        marginInlineEnd: token.marginXS,\n      },\n\n      '> div': {\n        'transition': `all ${token.motionDurationMid}, outline 0s`,\n\n        '&:hover': {\n          transform: token.rateStarHoverScale,\n        },\n\n        '&:focus': {\n          outline: 0,\n        },\n\n        '&:focus-visible': {\n          outline: `${token.lineWidth}px dashed ${token.rateStarColor}`,\n          transform: token.rateStarHoverScale,\n        },\n      },\n\n      '&-first, &-second': {\n        color: token.defaultColor,\n        transition: `all ${token.motionDurationMid}`,\n        userSelect: 'none',\n\n        [token.iconCls]: {\n          verticalAlign: 'middle',\n        },\n      },\n\n      '&-first': {\n        position: 'absolute',\n        top: 0,\n        insetInlineStart: 0,\n        width: '50%',\n        height: '100%',\n        overflow: 'hidden',\n        opacity: 0,\n      },\n\n      [`&-half ${componentCls}-star-first, &-half ${componentCls}-star-second`]: {\n        opacity: 1,\n      },\n\n      [`&-half ${componentCls}-star-first, &-full ${componentCls}-star-second`]: {\n        color: 'inherit',\n      },\n    },\n  };\n};\n\nfunction genRateRtlStyle(token: RateToken): CSSObject {\n  return {\n    [`&-rtl${token.componentCls}`]: {\n      direction: 'rtl',\n    },\n  };\n}\n\nconst genRateStyle: GenerateStyle<RateToken> = (token) => {\n  const { componentCls } = token;\n\n  return {\n    [componentCls]: {\n      ...resetComponent(token),\n\n      display: 'inline-block',\n      margin: 0,\n      padding: 0,\n      color: token.rateStarColor,\n      fontSize: token.rateStarSize,\n      lineHeight: 'unset',\n      listStyle: 'none',\n      outline: 'none',\n\n      // disable styles\n      [`&-disabled${componentCls} ${componentCls}-star`]: {\n        'cursor': 'default',\n\n        '&:hover': {\n          transform: 'scale(1)',\n        },\n      },\n\n      // star styles\n      ...genRateStarStyle(token),\n\n      // text styles\n      [`+ ${componentCls}-text`]: {\n        display: 'inline-block',\n        marginInlineStart: token.marginXS,\n        fontSize: token.fontSize,\n      },\n\n      // rtl styles\n      ...genRateRtlStyle(token),\n    },\n  };\n};\n\n// ============================== Export ==============================\nexport default genComponentStyleHook('Rate', (token) => {\n  const { colorFillContent } = token;\n\n  const rateToken = mergeToken<RateToken>(token, {\n    rateStarColor: token['yellow-6'],\n    rateStarSize: token.controlHeightLG * 0.5,\n    rateStarHoverScale: 'scale(1.1)',\n    defaultColor: colorFillContent,\n  });\n  return [genRateStyle(rateToken)];\n});\n"],"names":["resetComponent","genComponentStyleHook","mergeToken"],"mappings":";;;;;;;;;AAYA,MAAM,gBAAA,GAAwD,CAAC,KAAU,KAAA;AACvE,EAAM,MAAA,EAAE,cAAiB,GAAA,KAAA,CAAA;AAEzB,EAAO,OAAA;AAAA,IACL,CAAC,CAAA,EAAG,YAAY,CAAA,KAAA,CAAO,GAAG;AAAA,MACxB,UAAY,EAAA,UAAA;AAAA,MACZ,SAAW,EAAA,cAAA;AAAA,MACX,OAAS,EAAA,SAAA;AAAA,MACT,QAAU,EAAA,SAAA;AAAA,MAEV,oBAAsB,EAAA;AAAA,QACpB,iBAAiB,KAAM,CAAA,QAAA;AAAA,OACzB;AAAA,MAEA,OAAS,EAAA;AAAA,QACP,YAAA,EAAc,CAAO,IAAA,EAAA,KAAA,CAAM,iBAAiB,CAAA,YAAA,CAAA;AAAA,QAE5C,SAAW,EAAA;AAAA,UACT,WAAW,KAAM,CAAA,kBAAA;AAAA,SACnB;AAAA,QAEA,SAAW,EAAA;AAAA,UACT,OAAS,EAAA,CAAA;AAAA,SACX;AAAA,QAEA,iBAAmB,EAAA;AAAA,UACjB,SAAS,CAAG,EAAA,KAAA,CAAM,SAAS,CAAA,UAAA,EAAa,MAAM,aAAa,CAAA,CAAA;AAAA,UAC3D,WAAW,KAAM,CAAA,kBAAA;AAAA,SACnB;AAAA,OACF;AAAA,MAEA,mBAAqB,EAAA;AAAA,QACnB,OAAO,KAAM,CAAA,YAAA;AAAA,QACb,UAAA,EAAY,CAAO,IAAA,EAAA,KAAA,CAAM,iBAAiB,CAAA,CAAA;AAAA,QAC1C,UAAY,EAAA,MAAA;AAAA,QAEZ,CAAC,KAAM,CAAA,OAAO,GAAG;AAAA,UACf,aAAe,EAAA,QAAA;AAAA,SACjB;AAAA,OACF;AAAA,MAEA,SAAW,EAAA;AAAA,QACT,QAAU,EAAA,UAAA;AAAA,QACV,GAAK,EAAA,CAAA;AAAA,QACL,gBAAkB,EAAA,CAAA;AAAA,QAClB,KAAO,EAAA,KAAA;AAAA,QACP,MAAQ,EAAA,MAAA;AAAA,QACR,QAAU,EAAA,QAAA;AAAA,QACV,OAAS,EAAA,CAAA;AAAA,OACX;AAAA,MAEA,CAAC,CAAU,OAAA,EAAA,YAAY,CAAuB,oBAAA,EAAA,YAAY,cAAc,GAAG;AAAA,QACzE,OAAS,EAAA,CAAA;AAAA,OACX;AAAA,MAEA,CAAC,CAAU,OAAA,EAAA,YAAY,CAAuB,oBAAA,EAAA,YAAY,cAAc,GAAG;AAAA,QACzE,KAAO,EAAA,SAAA;AAAA,OACT;AAAA,KACF;AAAA,GACF,CAAA;AACF,CAAA,CAAA;AAEA,SAAS,gBAAgB,KAA6B,EAAA;AACpD,EAAO,OAAA;AAAA,IACL,CAAC,CAAA,KAAA,EAAQ,KAAM,CAAA,YAAY,EAAE,GAAG;AAAA,MAC9B,SAAW,EAAA,KAAA;AAAA,KACb;AAAA,GACF,CAAA;AACF,CAAA;AAEA,MAAM,YAAA,GAAyC,CAAC,KAAU,KAAA;AACxD,EAAM,MAAA,EAAE,cAAiB,GAAA,KAAA,CAAA;AAEzB,EAAO,OAAA;AAAA,IACL,CAAC,YAAY,GAAG;AAAA,MACd,GAAGA,qBAAe,KAAK,CAAA;AAAA,MAEvB,OAAS,EAAA,cAAA;AAAA,MACT,MAAQ,EAAA,CAAA;AAAA,MACR,OAAS,EAAA,CAAA;AAAA,MACT,OAAO,KAAM,CAAA,aAAA;AAAA,MACb,UAAU,KAAM,CAAA,YAAA;AAAA,MAChB,UAAY,EAAA,OAAA;AAAA,MACZ,SAAW,EAAA,MAAA;AAAA,MACX,OAAS,EAAA,MAAA;AAAA;AAAA,MAGT,CAAC,CAAa,UAAA,EAAA,YAAY,CAAI,CAAA,EAAA,YAAY,OAAO,GAAG;AAAA,QAClD,QAAU,EAAA,SAAA;AAAA,QAEV,SAAW,EAAA;AAAA,UACT,SAAW,EAAA,UAAA;AAAA,SACb;AAAA,OACF;AAAA;AAAA,MAGA,GAAG,iBAAiB,KAAK,CAAA;AAAA;AAAA,MAGzB,CAAC,CAAA,EAAA,EAAK,YAAY,CAAA,KAAA,CAAO,GAAG;AAAA,QAC1B,OAAS,EAAA,cAAA;AAAA,QACT,mBAAmB,KAAM,CAAA,QAAA;AAAA,QACzB,UAAU,KAAM,CAAA,QAAA;AAAA,OAClB;AAAA;AAAA,MAGA,GAAG,gBAAgB,KAAK,CAAA;AAAA,KAC1B;AAAA,GACF,CAAA;AACF,CAAA,CAAA;AAGA,eAAeC,6BAAA,CAAsB,MAAQ,EAAA,CAAC,KAAU,KAAA;AACtD,EAAM,MAAA,EAAE,kBAAqB,GAAA,KAAA,CAAA;AAE7B,EAAM,MAAA,SAAA,GAAYC,gBAAsB,KAAO,EAAA;AAAA,IAC7C,aAAA,EAAe,MAAM,UAAU,CAAA;AAAA,IAC/B,YAAA,EAAc,MAAM,eAAkB,GAAA,GAAA;AAAA,IACtC,kBAAoB,EAAA,YAAA;AAAA,IACpB,YAAc,EAAA,gBAAA;AAAA,GACf,CAAA,CAAA;AACD,EAAO,OAAA,CAAC,YAAa,CAAA,SAAS,CAAC,CAAA,CAAA;AACjC,CAAC,CAAA;;;;"}