import { defineComponent as y, useSlots as B, shallowRef as x, computed as g, openBlock as F, createBlock as S, normalizeProps as a, guardReactiveProps as s, unref as o, createSlots as p, withCtx as d, createVNode as k, mergeProps as C, renderList as u, renderSlot as f } from "vue";
import { isUndefined as P, omit as c, pick as q } from "lodash-unified";
import "../../../ap-field/index.mjs";
import { apFormItemSlotNames as m } from "../../constant.mjs";
import "../../item/index.vue2.mjs";
import R from "../../item/index.vue.mjs";
import $ from "../../../ap-field/select/index.vue.mjs";
const E = /* @__PURE__ */ y({
  name: "ApFormItemSelect",
  __name: "index",
  props: {
    htmlFor: {},
    prefixCls: {},
    label: {},
    help: {},
    extra: {},
    labelCol: {},
    wrapperCol: {},
    hasFeedback: { type: Boolean, default: !1 },
    colon: { type: Boolean, default: void 0 },
    labelAlign: {},
    prop: {},
    name: {},
    rules: {},
    autoLink: { type: Boolean, default: !0 },
    required: { type: Boolean, default: void 0 },
    validateFirst: { type: Boolean, default: void 0 },
    validateStatus: {},
    validateTrigger: {},
    messageVariables: {},
    hidden: { type: Boolean },
    noStyle: { type: Boolean },
    tooltip: {},
    span: {},
    order: {},
    offset: {},
    push: {},
    pull: {},
    xs: {},
    sm: {},
    md: {},
    lg: {},
    xl: {},
    xxl: {},
    flex: {},
    bordered: { type: Boolean },
    valuePropName: {},
    initialValue: {},
    _signal: {},
    transform: {},
    description: {},
    customFilled: {},
    disabled: { type: Boolean, default: void 0 },
    autoFocus: { type: Boolean },
    field: { default: () => ({}) },
    placeholder: {}
  },
  setup(b, { expose: _ }) {
    const e = b, n = B(), r = x(), v = g(() => ({
      placeholder: e.placeholder,
      disabled: e.disabled,
      ...e.field || {},
      bordered: e.bordered ? !1 : P(e.field?.bordered) ? !0 : e.field?.bordered
    }));
    return _({
      focus: () => {
        r.value?.focus();
      },
      blur: () => {
        r.value?.blur();
      },
      request: () => {
        r.value?.request();
      }
    }), (i, A) => (F(), S(R, a(s(o(c)(e, ["field", "placeholder"]))), p({
      default: d(() => [
        k(o($), C(v.value, {
          ref_key: "selectRef",
          ref: r
        }), p({ _: 2 }, [
          u(o(c)(n, o(m)), (h, l) => ({
            name: l,
            fn: d((t) => [
              f(i.$slots, l, a(s(t || {})))
            ])
          }))
        ]), 1040)
      ]),
      _: 2
    }, [
      u(o(q)(n, o(m)), (h, l) => ({
        name: l,
        fn: d((t) => [
          f(i.$slots, l, a(s(t || {})))
        ])
      }))
    ]), 1040));
  }
});
export {
  E as default
};
