"use strict";
const vue = require("vue");
const useDefaults = require("./useDefaults-YXpmugKp.js");
const keys = require("./keys-D70E9HED.js");
const _hoisted_1 = {
  key: 0,
  class: "input-group-text"
};
const _hoisted_2 = {
  key: 0,
  class: "input-group-text"
};
const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
  __name: "BInputGroup",
  props: {
    append: { default: void 0 },
    id: { default: void 0 },
    prepend: { default: void 0 },
    size: { default: "md" },
    tag: { default: "div" }
  },
  setup(__props) {
    vue.provide(keys.inputGroupKey, true);
    const _props = __props;
    const props = useDefaults.useDefaults(_props, "BInputGroup");
    const computedClasses = vue.computed(() => ({
      [`input-group-${props.size}`]: props.size !== "md"
    }));
    const hasAppend = vue.computed(() => !!props.append);
    const hasPrepend = vue.computed(() => !!props.prepend);
    return (_ctx, _cache) => {
      return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(props).tag), {
        id: vue.unref(props).id,
        class: vue.normalizeClass(["input-group", computedClasses.value]),
        role: "group"
      }, {
        default: vue.withCtx(() => [
          vue.renderSlot(_ctx.$slots, "prepend", {}, () => [
            hasPrepend.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1, [
              vue.createElementVNode("span", null, vue.toDisplayString(vue.unref(props).prepend), 1)
            ])) : vue.createCommentVNode("", true)
          ]),
          vue.renderSlot(_ctx.$slots, "default"),
          vue.renderSlot(_ctx.$slots, "append", {}, () => [
            hasAppend.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2, [
              vue.createElementVNode("span", null, vue.toDisplayString(vue.unref(props).append), 1)
            ])) : vue.createCommentVNode("", true)
          ])
        ]),
        _: 3
      }, 8, ["id", "class"]);
    };
  }
});
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
  __name: "BInputGroupText",
  props: {
    tag: { default: "div" },
    text: { default: void 0 }
  },
  setup(__props) {
    const _props = __props;
    const props = useDefaults.useDefaults(_props, "BInputGroupText");
    return (_ctx, _cache) => {
      return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(props).tag), { class: "input-group-text" }, {
        default: vue.withCtx(() => [
          vue.renderSlot(_ctx.$slots, "default", {}, () => [
            vue.createTextVNode(vue.toDisplayString(vue.unref(props).text), 1)
          ])
        ]),
        _: 3
      });
    };
  }
});
exports._sfc_main = _sfc_main$1;
exports._sfc_main$1 = _sfc_main;
//# sourceMappingURL=BInputGroupText.vue_vue_type_script_setup_true_lang-DXf0TXmw.js.map
