{"version":3,"file":"index.cjs","sources":["../../../../../../packages/components/select/style/index.ts"],"sourcesContent":["import type { CSSObject, FullToken, GenerateStyle } from '@antdv/theme';\nimport { genComponentStyleHook, mergeToken, resetComponent, resetIcon, textEllipsis } from '@antdv/theme';\nimport { genCompactItemStyle } from '@antdv/theme/style/compact-item';\nimport genDropdownStyle from './dropdown';\nimport genMultipleStyle from './multiple';\nimport genSingleStyle from './single';\n\nexport interface ComponentToken {\n  zIndexPopup: number\n}\n\nexport interface SelectToken extends FullToken<'Select'> {\n  rootPrefixCls: string\n  inputPaddingHorizontalBase: number\n}\n\n// ============================= Selector =============================\nconst genSelectorStyle: GenerateStyle<SelectToken, CSSObject> = (token) => {\n  const { componentCls } = token;\n\n  return {\n    position: 'relative',\n    backgroundColor: token.colorBgContainer,\n    border: `${token.lineWidth}px ${token.lineType} ${token.colorBorder}`,\n    transition: `all ${token.motionDurationMid} ${token.motionEaseInOut}`,\n\n    input: {\n      cursor: 'pointer',\n    },\n\n    [`${componentCls}-show-search&`]: {\n      cursor: 'text',\n\n      input: {\n        cursor: 'auto',\n        color: 'inherit',\n      },\n    },\n\n    [`${componentCls}-disabled&`]: {\n      color: token.colorTextDisabled,\n      background: token.colorBgContainerDisabled,\n      cursor: 'not-allowed',\n\n      [`${componentCls}-multiple&`]: {\n        background: token.colorBgContainerDisabled,\n      },\n\n      input: {\n        cursor: 'not-allowed',\n      },\n    },\n  };\n};\n\n// ============================== Status ==============================\nfunction genStatusStyle(rootSelectCls: string, token: {\n  componentCls: string\n  antCls: string\n  borderHoverColor: string\n  outlineColor: string\n  controlOutlineWidth: number\n  controlLineWidth: number\n}, overwriteDefaultBorder = false): CSSObject {\n  const { componentCls, borderHoverColor, outlineColor, antCls } = token;\n\n  const overwriteStyle: CSSObject = overwriteDefaultBorder\n    ? {\n        [`${componentCls}-selector`]: {\n          borderColor: borderHoverColor,\n        },\n      }\n    : {};\n\n  return {\n    [rootSelectCls]: {\n      [`&:not(${componentCls}-disabled):not(${componentCls}-customize-input):not(${antCls}-pagination-size-changer)`]:\n        {\n          ...overwriteStyle,\n\n          [`${componentCls}-focused& ${componentCls}-selector`]: {\n            borderColor: borderHoverColor,\n            boxShadow: `0 0 0 ${token.controlOutlineWidth}px ${outlineColor}`,\n            borderInlineEndWidth: `${token.controlLineWidth}px !important`,\n            outline: 0,\n          },\n\n          [`&:hover ${componentCls}-selector`]: {\n            borderColor: borderHoverColor,\n            borderInlineEndWidth: `${token.controlLineWidth}px !important`,\n          },\n        },\n    },\n  };\n}\n\n// ============================== Styles ==============================\n// /* Reset search input style */\nconst getSearchInputWithoutBorderStyle: GenerateStyle<SelectToken, CSSObject> = (token) => {\n  const { componentCls } = token;\n\n  return {\n    [`${componentCls}-selection-search-input`]: {\n      'margin': 0,\n      'padding': 0,\n      'background': 'transparent',\n      'border': 'none',\n      'outline': 'none',\n      'appearance': 'none',\n\n      '&::-webkit-search-cancel-button': {\n        'display': 'none',\n        '-webkit-appearance': 'none',\n      },\n    },\n  };\n};\n\n// =============================== Base ===============================\nconst genBaseStyle: GenerateStyle<SelectToken> = (token) => {\n  const { componentCls, inputPaddingHorizontalBase, iconCls } = token;\n\n  return {\n    [componentCls]: {\n      ...resetComponent(token),\n      'position': 'relative',\n      'display': 'inline-block',\n      'cursor': 'pointer',\n\n      [`&:not(${componentCls}-customize-input) ${componentCls}-selector`]: {\n        ...genSelectorStyle(token),\n        ...getSearchInputWithoutBorderStyle(token),\n      },\n\n      // [`&:not(&-disabled):hover ${selectCls}-selector`]: {\n      //   ...genHoverStyle(token),\n      // },\n\n      // ======================== Selection ========================\n      [`${componentCls}-selection-item`]: {\n        flex: 1,\n        fontWeight: 'normal',\n        ...textEllipsis,\n      },\n\n      // ======================= Placeholder =======================\n      [`${componentCls}-selection-placeholder`]: {\n        ...textEllipsis,\n        flex: 1,\n        color: token.colorTextPlaceholder,\n        pointerEvents: 'none',\n      },\n\n      // ========================== Arrow ==========================\n      [`${componentCls}-arrow`]: {\n        ...resetIcon(),\n        'position': 'absolute',\n        'top': '50%',\n        'insetInlineStart': 'auto',\n        'insetInlineEnd': inputPaddingHorizontalBase,\n        'height': token.fontSizeIcon,\n        'marginTop': -token.fontSizeIcon / 2,\n        'color': token.colorTextQuaternary,\n        'fontSize': token.fontSizeIcon,\n        'lineHeight': 1,\n        'textAlign': 'center',\n        'pointerEvents': 'none',\n        'display': 'flex',\n        'alignItems': 'center',\n\n        [iconCls]: {\n          'verticalAlign': 'top',\n          'transition': `transform ${token.motionDurationSlow}`,\n\n          '> svg': {\n            verticalAlign: 'top',\n          },\n\n          [`&:not(${componentCls}-suffix)`]: {\n            pointerEvents: 'auto',\n          },\n        },\n\n        [`${componentCls}-disabled &`]: {\n          cursor: 'not-allowed',\n        },\n\n        '> *:not(:last-child)': {\n          marginInlineEnd: 8, // FIXME: magic\n        },\n      },\n\n      // ========================== Clear ==========================\n      [`${componentCls}-clear`]: {\n        'position': 'absolute',\n        'top': '50%',\n        'insetInlineStart': 'auto',\n        'insetInlineEnd': inputPaddingHorizontalBase,\n        'zIndex': 1,\n        'display': 'inline-block',\n        'width': token.fontSizeIcon,\n        'height': token.fontSizeIcon,\n        'marginTop': -token.fontSizeIcon / 2,\n        'color': token.colorTextQuaternary,\n        'fontSize': token.fontSizeIcon,\n        'fontStyle': 'normal',\n        'lineHeight': 1,\n        'textAlign': 'center',\n        'textTransform': 'none',\n        'background': token.colorBgContainer,\n        'cursor': 'pointer',\n        'opacity': 0,\n        'transition': `color ${token.motionDurationMid} ease, opacity ${token.motionDurationSlow} ease`,\n        'textRendering': 'auto',\n\n        '&:before': {\n          display: 'block',\n        },\n\n        '&:hover': {\n          color: token.colorTextTertiary,\n        },\n      },\n\n      '&:hover': {\n        [`${componentCls}-clear`]: {\n          opacity: 1,\n        },\n      },\n    },\n\n    // ========================= Feedback ==========================\n    [`${componentCls}-has-feedback`]: {\n      [`${componentCls}-clear`]: {\n        insetInlineEnd: inputPaddingHorizontalBase + token.fontSize + token.paddingXXS,\n      },\n    },\n  };\n};\n\n// ============================== Styles ==============================\nconst genSelectStyle: GenerateStyle<SelectToken> = (token) => {\n  const { componentCls } = token;\n\n  return [\n    {\n      [componentCls]: {\n        // ==================== BorderLess ====================\n        [`&-borderless ${componentCls}-selector`]: {\n          backgroundColor: 'transparent !important',\n          borderColor: 'transparent !important',\n          boxShadow: 'none !important',\n        },\n\n        // ==================== In Form ====================\n        [`&${componentCls}-in-form-item`]: {\n          width: '100%',\n        },\n      },\n    },\n\n    // =====================================================\n    // ==                       LTR                       ==\n    // =====================================================\n    // Base\n    genBaseStyle(token),\n\n    // Single\n    genSingleStyle(token),\n\n    // Multiple\n    genMultipleStyle(token),\n\n    // Dropdown\n    genDropdownStyle(token),\n\n    // =====================================================\n    // ==                       RTL                       ==\n    // =====================================================\n    {\n      [`${componentCls}-rtl`]: {\n        direction: 'rtl',\n      },\n    },\n\n    // =====================================================\n    // ==                     Status                      ==\n    // =====================================================\n    genStatusStyle(\n      componentCls,\n      mergeToken<any>(token, {\n        borderHoverColor: token.colorPrimaryHover,\n        outlineColor: token.controlOutline,\n      }),\n    ),\n    genStatusStyle(\n      `${componentCls}-status-error`,\n      mergeToken<any>(token, {\n        borderHoverColor: token.colorErrorHover,\n        outlineColor: token.colorErrorOutline,\n      }),\n      true,\n    ),\n    genStatusStyle(\n      `${componentCls}-status-warning`,\n      mergeToken<any>(token, {\n        borderHoverColor: token.colorWarningHover,\n        outlineColor: token.colorWarningOutline,\n      }),\n      true,\n    ),\n    // =====================================================\n    // ==             Space Compact                       ==\n    // =====================================================\n    genCompactItemStyle(token, {\n      borderElCls: `${componentCls}-selector`,\n      focusElCls: `${componentCls}-focused`,\n    }),\n  ];\n};\n\n// ============================== Export ==============================\nexport default genComponentStyleHook(\n  'Select',\n  (token, { rootPrefixCls }) => {\n    const selectToken: SelectToken = mergeToken<SelectToken>(token, {\n      rootPrefixCls,\n      inputPaddingHorizontalBase: token.paddingSM - 1,\n    });\n\n    return [genSelectStyle(selectToken)];\n  },\n  token => ({\n    zIndexPopup: token.zIndexPopupBase + 50,\n  }),\n);\n"],"names":["resetComponent","textEllipsis","resetIcon","genSingleStyle","genMultipleStyle","genDropdownStyle","mergeToken","genCompactItemStyle","genComponentStyleHook"],"mappings":"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"}