import { mergeProps, splitProps } from "solid-js";
import classNames from "./classnames";
import { useBootstrapPrefix } from "./ThemeProvider";
import { Dynamic } from "solid-js/web";
const defaultProps = {
    as: "div",
};
const Spinner = (p) => {
    const [local, props] = splitProps(mergeProps(defaultProps, p), [
        "as",
        "bsPrefix",
        "variant",
        "animation",
        "size",
        "className",
    ]);
    const bsPrefix = useBootstrapPrefix(local.bsPrefix, "spinner");
    const bsSpinnerPrefix = `${bsPrefix}-${local.animation}`;
    return (<Dynamic component={local.as} {...props} className={classNames(local.className, bsSpinnerPrefix, local.size && `${bsSpinnerPrefix}-${local.size}`, local.variant && `text-${local.variant}`)}>
      {props.children}
    </Dynamic>);
};
export default Spinner;
