import { defineComponent, useSlots, computed, resolveComponent, createBlock, openBlock, mergeProps, createSlots, withCtx, unref, renderSlot, normalizeProps, guardReactiveProps } from 'vue';
import { tableColumnProProps, TableColumnProName } from './tableColumnPro.mjs';

var _sfc_main = /* @__PURE__ */ defineComponent({
  ...{
    name: TableColumnProName
  },
  __name: "TableColumnPro",
  props: tableColumnProProps,
  setup(__props) {
    const slots = useSlots();
    const props = __props;
    const proSortable = computed(() => props.isSort ? "custom" : props.sortable);
    return (_ctx, _cache) => {
      const _component_gm_table_column = resolveComponent("gm-table-column");
      return openBlock(), createBlock(_component_gm_table_column, mergeProps(props, { sortable: proSortable.value }), createSlots({
        _: 2
        /* DYNAMIC */
      }, [
        unref(slots).default ? {
          name: "default",
          fn: withCtx((scope) => [
            renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(scope)))
          ]),
          key: "0"
        } : void 0,
        unref(slots).header ? {
          name: "header",
          fn: withCtx((scope) => [
            renderSlot(_ctx.$slots, "header", normalizeProps(guardReactiveProps(scope)))
          ]),
          key: "1"
        } : void 0
      ]), 1040, ["sortable"]);
    };
  }
});

export { _sfc_main as default };
//# sourceMappingURL=TableColumnPro.vue2.mjs.map
