{"version":3,"file":"single.mjs","sources":["../../../../../../packages/components/select/style/single.ts"],"sourcesContent":["import type { CSSInterpolation, CSSObject } from '@antdv/theme';\nimport type { SelectToken } from '.';\nimport { mergeToken, resetComponent } from '@antdv/theme';\n\nfunction genSizeStyle(token: SelectToken, suffix?: string): CSSObject {\n  const { componentCls, inputPaddingHorizontalBase, borderRadius } = token;\n\n  const selectHeightWithoutBorder = token.controlHeight - token.lineWidth * 2;\n\n  const selectionItemPadding = Math.ceil(token.fontSize * 1.25);\n\n  const suffixCls = suffix ? `${componentCls}-${suffix}` : '';\n\n  return {\n    [`${componentCls}-single${suffixCls}`]: {\n      fontSize: token.fontSize,\n\n      // ========================= Selector =========================\n      [`${componentCls}-selector`]: {\n        ...resetComponent(token),\n\n        display: 'flex',\n        borderRadius,\n\n        [`${componentCls}-selection-search`]: {\n          'position': 'absolute',\n          'top': 0,\n          'insetInlineStart': inputPaddingHorizontalBase,\n          'insetInlineEnd': inputPaddingHorizontalBase,\n          'bottom': 0,\n\n          '&-input': {\n            width: '100%',\n          },\n        },\n\n        [`\n          ${componentCls}-selection-item,\n          ${componentCls}-selection-placeholder\n        `]: {\n          'padding': 0,\n          'lineHeight': `${selectHeightWithoutBorder}px`,\n          'transition': `all ${token.motionDurationSlow}`,\n\n          // Firefox inline-block position calculation is not same as Chrome & Safari. Patch this:\n          '@supports (-moz-appearance: meterbar)': {\n            lineHeight: `${selectHeightWithoutBorder}px`,\n          },\n        },\n\n        [`${componentCls}-selection-item`]: {\n          position: 'relative',\n          userSelect: 'none',\n        },\n\n        [`${componentCls}-selection-placeholder`]: {\n          transition: 'none',\n          pointerEvents: 'none',\n        },\n\n        // For common baseline align\n        [[\n          '&:after',\n          /* For '' value baseline align */\n          `${componentCls}-selection-item:after`,\n          /* For undefined value baseline align */\n          `${componentCls}-selection-placeholder:after`,\n        ].join(',')]: {\n          display: 'inline-block',\n          width: 0,\n          visibility: 'hidden',\n          content: '\"\\\\a0\"',\n        },\n      },\n\n      [`\n        &${componentCls}-show-arrow ${componentCls}-selection-item,\n        &${componentCls}-show-arrow ${componentCls}-selection-placeholder\n      `]: {\n        paddingInlineEnd: selectionItemPadding,\n      },\n\n      // Opacity selection if open\n      [`&${componentCls}-open ${componentCls}-selection-item`]: {\n        color: token.colorTextPlaceholder,\n      },\n\n      // ========================== Input ==========================\n      // We only change the style of non-customize input which is only support by `combobox` mode.\n      // Not customize\n      [`&:not(${componentCls}-customize-input)`]: {\n        [`${componentCls}-selector`]: {\n          'width': '100%',\n          'height': token.controlHeight,\n          'padding': `0 ${inputPaddingHorizontalBase}px`,\n\n          [`${componentCls}-selection-search-input`]: {\n            height: selectHeightWithoutBorder,\n          },\n\n          '&:after': {\n            lineHeight: `${selectHeightWithoutBorder}px`,\n          },\n        },\n      },\n\n      [`&${componentCls}-customize-input`]: {\n        [`${componentCls}-selector`]: {\n          '&:after': {\n            display: 'none',\n          },\n\n          [`${componentCls}-selection-search`]: {\n            position: 'static',\n            width: '100%',\n          },\n\n          [`${componentCls}-selection-placeholder`]: {\n            'position': 'absolute',\n            'insetInlineStart': 0,\n            'insetInlineEnd': 0,\n            'padding': `0 ${inputPaddingHorizontalBase}px`,\n\n            '&:after': {\n              display: 'none',\n            },\n          },\n        },\n      },\n    },\n  };\n}\n\nexport default function genSingleStyle(token: SelectToken): CSSInterpolation {\n  const { componentCls } = token;\n\n  const inputPaddingHorizontalSM = token.controlPaddingHorizontalSM - token.lineWidth;\n\n  return [\n    genSizeStyle(token),\n\n    // ======================== Small ========================\n    // Shared\n    genSizeStyle(\n      mergeToken<any>(token, {\n        controlHeight: token.controlHeightSM,\n        borderRadius: token.borderRadiusSM,\n      }),\n      'sm',\n    ),\n\n    // padding\n    {\n      [`${componentCls}-single${componentCls}-sm`]: {\n        [`&:not(${componentCls}-customize-input)`]: {\n          [`${componentCls}-selection-search`]: {\n            insetInlineStart: inputPaddingHorizontalSM,\n            insetInlineEnd: inputPaddingHorizontalSM,\n          },\n\n          [`${componentCls}-selector`]: {\n            padding: `0 ${inputPaddingHorizontalSM}px`,\n          },\n\n          // With arrow should provides `padding-right` to show the arrow\n          [`&${componentCls}-show-arrow ${componentCls}-selection-search`]: {\n            insetInlineEnd: inputPaddingHorizontalSM + token.fontSize * 1.5,\n          },\n\n          [`\n            &${componentCls}-show-arrow ${componentCls}-selection-item,\n            &${componentCls}-show-arrow ${componentCls}-selection-placeholder\n          `]: {\n            paddingInlineEnd: token.fontSize * 1.5,\n          },\n        },\n      },\n    },\n\n    // ======================== Large ========================\n    // Shared\n    genSizeStyle(\n      mergeToken<any>(token, {\n        controlHeight: token.controlHeightLG,\n        fontSize: token.fontSizeLG,\n        borderRadius: token.borderRadiusLG,\n      }),\n      'lg',\n    ),\n  ];\n}\n"],"names":["mergeToken"],"mappings":"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"}