import { cnb } from "cnbuilder";
import { bem } from "../utils/bem.js";
const sliderContainerStyles = bem("rmd-slider-container");
const sliderMarkStyles = bem("rmd-slider-mark");
const sliderMarkLabelStyles = bem("rmd-slider-mark-label");
const sliderThumbStyles = bem("rmd-slider-thumb");
const sliderTrackStyles = bem("rmd-slider-track");
const sliderValueTooltipStyles = bem("rmd-slider-tooltip");
/**
 * @since 6.0.0
 */ export function sliderContainer(options = {}) {
    const { className, vertical, beforeAddon, afterAddon } = options;
    return cnb(sliderContainerStyles({
        h: !vertical,
        "pad-left": !vertical && !beforeAddon,
        "pad-right": !vertical && !afterAddon,
        v: vertical,
        "pad-bottom": vertical && !beforeAddon,
        "pad-top": vertical && !afterAddon
    }), className);
}
/**
 * @since 6.0.0
 */ export function sliderMark(options) {
    const { className, active, vertical } = options;
    return cnb(sliderMarkStyles({
        active,
        inactive: !active,
        h: !vertical,
        v: vertical
    }), className);
}
/**
 * @since 6.0.0
 */ export function sliderMarkLabel(options) {
    const { className, vertical } = options;
    return cnb(sliderMarkLabelStyles({
        h: !vertical,
        v: vertical
    }), className);
}
/**
 * @since 6.0.0
 */ export function sliderThumb(options) {
    const { className, mask, index, active, animate, disabled, vertical } = options;
    const isSecondThumb = index === 2;
    return cnb(sliderThumbStyles({
        h: !vertical,
        h1: !vertical && !isSecondThumb,
        h2: !vertical && isSecondThumb,
        v: vertical,
        v1: vertical && !isSecondThumb,
        v2: vertical && isSecondThumb,
        mask,
        "mask-h": mask && !vertical,
        "mask-v": mask && vertical,
        active,
        animate,
        disabled,
        "disabled-h": disabled && !vertical && !mask,
        "disabled-v": disabled && vertical && !mask
    }), className);
}
/**
 * @since 6.0.0
 */ export function sliderThumbInput(options = {}) {
    const { className } = options;
    return cnb(sliderThumbStyles("input"), className);
}
/**
 * @since 6.0.0
 */ export function sliderTrack(options) {
    const { className, animate, disabled, vertical, isRangeSlider } = options;
    return cnb(sliderTrackStyles({
        animate,
        disabled,
        hoverable: !disabled,
        h: !vertical,
        h1: !vertical && !isRangeSlider,
        h2: !vertical && isRangeSlider,
        v: vertical,
        v1: vertical && !isRangeSlider,
        v2: vertical && isRangeSlider
    }), className);
}
/**
 * @since 6.0.0
 */ export function sliderValueTooltip(options) {
    const { className, index, animate, vertical } = options;
    return cnb(sliderValueTooltipStyles({
        h: !vertical,
        v: vertical
    }), animate && "rmd-slider-thumb--animate", `rmd-slider-thumb--${vertical ? "v" : "h"}${index}`, className);
}

//# sourceMappingURL=sliderStyles.js.map