import { resolveComponent as d, resolveDirective as r, withDirectives as c, createBlock as f, openBlock as u, normalizeClass as p, withCtx as i, renderSlot as a } from "vue";
import { _ as m } from "../../_plugin-vue_export-helper-CHgC5LLL.js";
import _ from "../button/button.js";
import { BUTTON_ICON_SIZES as b } from "../button/button-constants.js";
const g = {
  compatConfig: { MODE: 3 },
  name: "SplitButtonAlpha",
  components: {
    DtButton: _
  },
  props: {
    /**
     * Determines whether the button should have active styling
     */
    active: {
      type: Boolean,
      default: !1
    },
    /**
     * Descriptive label for the button
     */
    ariaLabel: {
      type: String,
      default: null
    },
    /**
     * The position of the icon slot within the button.
     */
    iconPosition: {
      type: String,
      default: "left"
    },
    /**
     * Used to customize the label container
     */
    labelClass: {
      type: [String, Array, Object],
      default: ""
    },
    /**
     * Whether the button should display a loading animation or not.
     */
    loading: {
      type: Boolean,
      default: !1
    },
    /**
     * Text shown in tooltip when you hover the button
     */
    tooltipText: {
      type: String,
      default: ""
    },
    /**
     * Determines whether a screenreader reads live updates of
     * the button content to the user while the button is in focus.
     */
    assertiveOnFocus: {
      type: Boolean,
      default: !1
    },
    /**
     * HTML button disabled attribute
     */
    disabled: {
      type: Boolean,
      default: !1
    },
    /**
     * The fill and outline of the button associated with its visual importance.
     */
    importance: {
      type: String,
      default: "primary"
    },
    /**
     * The color of the button.
     */
    kind: {
      type: String,
      default: "default"
    },
    /**
     * The size of the button.
     */
    size: {
      type: String,
      default: "md"
    }
  },
  data() {
    return {
      BUTTON_ICON_SIZES: b
    };
  },
  computed: {
    tooltipConfig() {
      return {
        message: this.tooltipText,
        inverted: this.kind === "inverted"
      };
    }
  }
};
function v(e, S, t, y, l, o) {
  const n = d("dt-button"), s = r("dt-tooltip");
  return c((u(), f(n, {
    "data-qa": "dt-split-button-alpha",
    active: t.active,
    "aria-label": t.ariaLabel,
    "assertive-on-focus": t.assertiveOnFocus,
    class: p(`d-split-btn__alpha d-split-btn__alpha--${t.size}`),
    disabled: t.disabled,
    "icon-position": t.iconPosition,
    importance: t.importance,
    kind: t.kind,
    "label-class": t.labelClass,
    loading: t.loading,
    size: t.size
  }, {
    icon: i(() => [
      a(e.$slots, "icon", {
        size: l.BUTTON_ICON_SIZES[t.size]
      })
    ]),
    default: i(() => [
      a(e.$slots, "default")
    ]),
    _: 3
  }, 8, ["active", "aria-label", "assertive-on-focus", "class", "disabled", "icon-position", "importance", "kind", "label-class", "loading", "size"])), [
    [s, o.tooltipConfig]
  ]);
}
const O = /* @__PURE__ */ m(g, [["render", v]]);
export {
  O as default
};
//# sourceMappingURL=split-button-alpha.js.map
