/**
 * ldesign v0.2.3
 * (c) 2022年9月24日 swimly
 * @license MIT
 */

import { g as getWeeks, c as getQuarters, d as getMonths, f as getYears, h as flagActive } from '../../../chunks/utils2.js';
import '../../../hooks/use-config.js';
import { useConfig } from '../../config-provider/useConfig.js';
import '../../../chunks/defineProperty-56324511.js';
import '../../../chunks/dayjs.min-be98bc0e.js';
import '../../../chunks/_commonjsHelpers-8b4be15a.js';
import '../../../chunks/_isIndex-9a2ec669.js';
import '../../../chunks/isObjectLike-a2de5c2f.js';
import '@vue/composition-api';
import '../../config-provider/context.js';
import 'lodash';
import '../../../chunks/zh_CN.js';
import '../../config-provider/type.js';

function useTableData(props) {
  const {
    global
  } = useConfig("datePicker");
  const options = {
    minDate: props.minDate,
    maxDate: props.maxDate,
    disableDate: props.disableDate,
    firstDayOfWeek: props.firstDayOfWeek ?? global.value.firstDayOfWeek,
    monthLocal: global.value.months,
    quarterLocal: global.value.quarters,
    showWeekOfYear: props.mode === "week"
  };
  let data = [];

  if (props.mode === "date") {
    data = getWeeks({
      year: props.year,
      month: props.month
    }, options);
  } else if (props.mode === "week") {
    data = getWeeks({
      year: props.year,
      month: props.month
    }, options);
  } else if (props.mode === "quarter") {
    data = getQuarters(props.year, options);
  } else if (props.mode === "month") {
    data = getMonths(props.year, options);
  } else if (props.mode === "year") {
    data = getYears(props.year, options);
  }

  return flagActive(data, {
    start: props.start,
    end: props.end,
    hoverStart: props.hoverStart,
    hoverEnd: props.hoverEnd,
    type: props.mode,
    isRange: props.isRange
  });
}

export { useTableData as default };
//# sourceMappingURL=use-table-data.js.map
