{"version":3,"file":"index.cjs","sources":["../../../../../../packages/components/switch/style/index.ts"],"sourcesContent":["import type { CSSObject, FullToken, GenerateStyle } from '@antdv/theme';\nimport { genComponentStyleHook, genFocusStyle, mergeToken, resetComponent } from '@antdv/theme';\nimport { TinyColor } from '@ctrl/tinycolor';\n\ninterface SwitchToken extends FullToken<'Switch'> {\n  switchMinWidth: number\n  switchHeight: number\n  switchDuration: string\n  switchColor: string\n  switchDisabledOpacity: number\n  switchInnerMarginMin: number\n  switchInnerMarginMax: number\n  switchPadding: number\n  switchPinSize: number\n  switchBg: string\n  switchMinWidthSM: number\n  switchHeightSM: number\n  switchInnerMarginMinSM: number\n  switchInnerMarginMaxSM: number\n  switchPinSizeSM: number\n  switchHandleShadow: string\n  switchLoadingIconSize: number\n  switchLoadingIconColor: string\n  switchHandleActiveInset: string\n}\n\nconst genSwitchSmallStyle: GenerateStyle<SwitchToken, CSSObject> = (token) => {\n  const { componentCls } = token;\n  const switchInnerCls = `${componentCls}-inner`;\n\n  return {\n    [componentCls]: {\n      [`&${componentCls}-small`]: {\n        minWidth: token.switchMinWidthSM,\n        height: token.switchHeightSM,\n        lineHeight: `${token.switchHeightSM}px`,\n\n        [`${componentCls}-inner`]: {\n          paddingInlineStart: token.switchInnerMarginMaxSM,\n          paddingInlineEnd: token.switchInnerMarginMinSM,\n          [`${switchInnerCls}-checked`]: {\n            marginInlineStart: `calc(-100% + ${\n              token.switchPinSizeSM + token.switchPadding * 2\n            }px - ${token.switchInnerMarginMaxSM * 2}px)`,\n            marginInlineEnd: `calc(100% - ${token.switchPinSizeSM + token.switchPadding * 2}px + ${\n              token.switchInnerMarginMaxSM * 2\n            }px)`,\n          },\n\n          [`${switchInnerCls}-unchecked`]: {\n            marginTop: -token.switchHeightSM,\n            marginInlineStart: 0,\n            marginInlineEnd: 0,\n          },\n        },\n\n        [`${componentCls}-handle`]: {\n          width: token.switchPinSizeSM,\n          height: token.switchPinSizeSM,\n        },\n\n        [`${componentCls}-loading-icon`]: {\n          top: (token.switchPinSizeSM - token.switchLoadingIconSize) / 2,\n          fontSize: token.switchLoadingIconSize,\n        },\n\n        [`&${componentCls}-checked`]: {\n          [`${componentCls}-inner`]: {\n            paddingInlineStart: token.switchInnerMarginMinSM,\n            paddingInlineEnd: token.switchInnerMarginMaxSM,\n            [`${switchInnerCls}-checked`]: {\n              marginInlineStart: 0,\n              marginInlineEnd: 0,\n            },\n\n            [`${switchInnerCls}-unchecked`]: {\n              marginInlineStart: `calc(100% - ${\n                token.switchPinSizeSM + token.switchPadding * 2\n              }px + ${token.switchInnerMarginMaxSM * 2}px)`,\n              marginInlineEnd: `calc(-100% + ${\n                token.switchPinSizeSM + token.switchPadding * 2\n              }px - ${token.switchInnerMarginMaxSM * 2}px)`,\n            },\n          },\n\n          [`${componentCls}-handle`]: {\n            insetInlineStart: `calc(100% - ${token.switchPinSizeSM + token.switchPadding}px)`,\n          },\n        },\n\n        [`&:not(${componentCls}-disabled):active`]: {\n          [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {\n            [`${switchInnerCls}-unchecked`]: {\n              marginInlineStart: token.marginXXS / 2,\n              marginInlineEnd: -token.marginXXS / 2,\n            },\n          },\n\n          [`&${componentCls}-checked ${switchInnerCls}`]: {\n            [`${switchInnerCls}-checked`]: {\n              marginInlineStart: -token.marginXXS / 2,\n              marginInlineEnd: token.marginXXS / 2,\n            },\n          },\n        },\n      },\n    },\n  };\n};\n\nconst genSwitchLoadingStyle: GenerateStyle<SwitchToken, CSSObject> = (token) => {\n  const { componentCls } = token;\n\n  return {\n    [componentCls]: {\n      [`${componentCls}-loading-icon${token.iconCls}`]: {\n        position: 'relative',\n        top: (token.switchPinSize - token.fontSize) / 2,\n        color: token.switchLoadingIconColor,\n        verticalAlign: 'top',\n      },\n\n      [`&${componentCls}-checked ${componentCls}-loading-icon`]: {\n        color: token.switchColor,\n      },\n    },\n  };\n};\n\nconst genSwitchHandleStyle: GenerateStyle<SwitchToken, CSSObject> = (token) => {\n  const { componentCls } = token;\n  const switchHandleCls = `${componentCls}-handle`;\n\n  return {\n    [componentCls]: {\n      [switchHandleCls]: {\n        'position': 'absolute',\n        'top': token.switchPadding,\n        'insetInlineStart': token.switchPadding,\n        'width': token.switchPinSize,\n        'height': token.switchPinSize,\n        'transition': `all ${token.switchDuration} ease-in-out`,\n\n        '&::before': {\n          position: 'absolute',\n          top: 0,\n          insetInlineEnd: 0,\n          bottom: 0,\n          insetInlineStart: 0,\n          backgroundColor: token.colorWhite,\n          borderRadius: token.switchPinSize / 2,\n          boxShadow: token.switchHandleShadow,\n          transition: `all ${token.switchDuration} ease-in-out`,\n          content: '\"\"',\n        },\n      },\n\n      [`&${componentCls}-checked ${switchHandleCls}`]: {\n        insetInlineStart: `calc(100% - ${token.switchPinSize + token.switchPadding}px)`,\n      },\n\n      [`&:not(${componentCls}-disabled):active`]: {\n        [`${switchHandleCls}::before`]: {\n          insetInlineEnd: token.switchHandleActiveInset,\n          insetInlineStart: 0,\n        },\n\n        [`&${componentCls}-checked ${switchHandleCls}::before`]: {\n          insetInlineEnd: 0,\n          insetInlineStart: token.switchHandleActiveInset,\n        },\n      },\n    },\n  };\n};\n\nconst genSwitchInnerStyle: GenerateStyle<SwitchToken, CSSObject> = (token) => {\n  const { componentCls } = token;\n  const switchInnerCls = `${componentCls}-inner`;\n\n  return {\n    [componentCls]: {\n      [switchInnerCls]: {\n        display: 'block',\n        overflow: 'hidden',\n        borderRadius: 100,\n        height: '100%',\n        paddingInlineStart: token.switchInnerMarginMax,\n        paddingInlineEnd: token.switchInnerMarginMin,\n        transition: `padding-inline-start ${token.switchDuration} ease-in-out, padding-inline-end ${token.switchDuration} ease-in-out`,\n\n        [`${switchInnerCls}-checked, ${switchInnerCls}-unchecked`]: {\n          display: 'block',\n          color: token.colorTextLightSolid,\n          fontSize: token.fontSizeSM,\n          transition: `margin-inline-start ${token.switchDuration} ease-in-out, margin-inline-end ${token.switchDuration} ease-in-out`,\n          pointerEvents: 'none',\n        },\n\n        [`${switchInnerCls}-checked`]: {\n          marginInlineStart: `calc(-100% + ${token.switchPinSize + token.switchPadding * 2}px - ${\n            token.switchInnerMarginMax * 2\n          }px)`,\n          marginInlineEnd: `calc(100% - ${token.switchPinSize + token.switchPadding * 2}px + ${\n            token.switchInnerMarginMax * 2\n          }px)`,\n        },\n\n        [`${switchInnerCls}-unchecked`]: {\n          marginTop: -token.switchHeight,\n          marginInlineStart: 0,\n          marginInlineEnd: 0,\n        },\n      },\n\n      [`&${componentCls}-checked ${switchInnerCls}`]: {\n        paddingInlineStart: token.switchInnerMarginMin,\n        paddingInlineEnd: token.switchInnerMarginMax,\n        [`${switchInnerCls}-checked`]: {\n          marginInlineStart: 0,\n          marginInlineEnd: 0,\n        },\n\n        [`${switchInnerCls}-unchecked`]: {\n          marginInlineStart: `calc(100% - ${token.switchPinSize + token.switchPadding * 2}px + ${\n            token.switchInnerMarginMax * 2\n          }px)`,\n          marginInlineEnd: `calc(-100% + ${token.switchPinSize + token.switchPadding * 2}px - ${\n            token.switchInnerMarginMax * 2\n          }px)`,\n        },\n      },\n\n      [`&:not(${componentCls}-disabled):active`]: {\n        [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {\n          [`${switchInnerCls}-unchecked`]: {\n            marginInlineStart: token.switchPadding * 2,\n            marginInlineEnd: -token.switchPadding * 2,\n          },\n        },\n\n        [`&${componentCls}-checked ${switchInnerCls}`]: {\n          [`${switchInnerCls}-checked`]: {\n            marginInlineStart: -token.switchPadding * 2,\n            marginInlineEnd: token.switchPadding * 2,\n          },\n        },\n      },\n    },\n  };\n};\n\nfunction genSwitchStyle(token: SwitchToken): CSSObject {\n  const { componentCls } = token;\n\n  return {\n    [componentCls]: {\n      ...resetComponent(token),\n\n      position: 'relative',\n      display: 'inline-block',\n      boxSizing: 'border-box',\n      minWidth: token.switchMinWidth,\n      height: token.switchHeight,\n      lineHeight: `${token.switchHeight}px`,\n      verticalAlign: 'middle',\n      background: token.colorTextQuaternary,\n      border: '0',\n      borderRadius: 100,\n      cursor: 'pointer',\n      transition: `all ${token.motionDurationMid}`,\n      userSelect: 'none',\n\n      [`&:hover:not(${componentCls}-disabled)`]: {\n        background: token.colorTextTertiary,\n      },\n\n      ...genFocusStyle(token),\n\n      [`&${componentCls}-checked`]: {\n        background: token.switchColor,\n\n        [`&:hover:not(${componentCls}-disabled)`]: {\n          background: token.colorPrimaryHover,\n        },\n      },\n\n      [`&${componentCls}-loading, &${componentCls}-disabled`]: {\n        'cursor': 'not-allowed',\n        'opacity': token.switchDisabledOpacity,\n\n        '*': {\n          boxShadow: 'none',\n          cursor: 'not-allowed',\n        },\n      },\n\n      // rtl style\n      [`&${componentCls}-rtl`]: {\n        direction: 'rtl',\n      },\n    },\n  };\n}\n\n// ============================== Export ==============================\nexport default genComponentStyleHook('Switch', (token) => {\n  const switchHeight = token.fontSize * token.lineHeight;\n  const switchHeightSM = token.controlHeight / 2;\n  const switchPadding = 2; // This is magic\n  const switchPinSize = switchHeight - switchPadding * 2;\n  const switchPinSizeSM = switchHeightSM - switchPadding * 2;\n\n  const switchToken = mergeToken<SwitchToken>(token, {\n    switchMinWidth: switchPinSize * 2 + switchPadding * 4,\n    switchHeight,\n    switchDuration: token.motionDurationMid,\n    switchColor: token.colorPrimary,\n    switchDisabledOpacity: token.opacityLoading,\n    switchInnerMarginMin: switchPinSize / 2,\n    switchInnerMarginMax: switchPinSize + switchPadding + switchPadding * 2,\n    switchPadding,\n    switchPinSize,\n    switchBg: token.colorBgContainer,\n    switchMinWidthSM: switchPinSizeSM * 2 + switchPadding * 2,\n    switchHeightSM,\n    switchInnerMarginMinSM: switchPinSizeSM / 2,\n    switchInnerMarginMaxSM: switchPinSizeSM + switchPadding + switchPadding * 2,\n    switchPinSizeSM,\n    switchHandleShadow: `0 2px 4px 0 ${new TinyColor('#00230b').setAlpha(0.2).toRgbString()}`,\n    switchLoadingIconSize: token.fontSizeIcon * 0.75,\n    switchLoadingIconColor: `rgba(0, 0, 0, ${token.opacityLoading})`,\n    switchHandleActiveInset: '-30%',\n  });\n\n  return [\n    genSwitchStyle(switchToken),\n\n    // inner style\n    genSwitchInnerStyle(switchToken),\n\n    // handle style\n    genSwitchHandleStyle(switchToken),\n\n    // loading style\n    genSwitchLoadingStyle(switchToken),\n\n    // small style\n    genSwitchSmallStyle(switchToken),\n  ];\n});\n"],"names":["resetComponent","genFocusStyle","genComponentStyleHook","mergeToken","TinyColor"],"mappings":"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"}