import '../../../utils/index.mjs';
import { buildProps, definePropType } from '../../../utils/props/runtime.mjs';

"use strict";
const defaultColumns = [
  { name: "text", label: "\u4EFB\u52A1\u540D", width: 200, tree: true },
  {
    name: "progress",
    label: "\u8FDB\u5EA6",
    width: 80,
    align: "center",
    template: function(a) {
      return `${Math.round(a.progress * 100)}%`;
    }
  },
  {
    name: "duration",
    label: "\u5DE5\u671F",
    width: 80,
    align: "center",
    template: function(a) {
      return `${a.duration} `;
    }
  }
];
const ganttProps = buildProps({
  // 任务数据
  data: {
    type: definePropType(Object),
    default: () => ({
      tasks: [],
      links: []
    })
  },
  // 事件映射(https://docs.dhtmlx.com/gantt/zh/api/overview/events-overview/)
  eventMap: {
    type: definePropType(Object),
    default: () => ({})
  },
  // 列配置
  columns: {
    type: definePropType(Array),
    default: null
  },
  // 额外配置(https://docs.dhtmlx.com/gantt/zh/api/overview/properties-overview/)
  extraConfig: {
    type: Object,
    default: () => ({})
  },
  // 额外配置(https://docs.dhtmlx.com/gantt/zh/api/overview/properties-overview/)
  extraTemplates: {
    type: Object,
    default: () => ({})
  },
  // 滚动条尺寸
  scrollSize: {
    type: Number,
    default: 6
  },
  // 是否显示网格
  showGrid: {
    type: Boolean,
    default: true
  },
  // 多选
  multiselect: {
    type: Boolean,
    default: true
  },
  // 日期格式
  dateFormat: {
    type: String,
    default: `%Y-%m-%d %H:%i:%s`
  },
  // 只读
  readonly: {
    type: Boolean,
    default: false
  },
  // 是否选择任务
  selectTask: {
    type: Boolean,
    default: true
  },
  // 是否显示任务单元格
  showTaskCells: {
    type: Boolean,
    default: true
  },
  // 网格宽度
  gridWidth: {
    type: Number,
    default: 440
  },
  // 是否开启工作时间
  workTime: {
    type: Boolean,
    default: false
  },
  // 是否修正工作时间
  correctWorkTime: {
    type: Boolean,
    default: false
  },
  // 工期单位
  durationUnit: {
    type: String,
    default: "hour",
    values: ["year", "month", "week", "day", "hour", "minute"]
  },
  // 工期单位步长
  durationStep: {
    type: Number,
    default: 1
  },
  // 显示进度
  showProgress: {
    type: Boolean,
    default: true
  },
  // 允许任务拖动进度
  dragProgress: {
    type: Boolean,
    default: true
  },
  // 任务条高度
  barHeight: {
    type: Number,
    default: 30
  },
  // 表格行高度
  rowHeight: {
    type: Number,
    default: 40
  },
  // 表头高度
  scaleHeight: {
    type: Number,
    default: 50
  },
  // 允许拖拽调整行高
  resizeRows: {
    type: Boolean,
    default: true
  },
  // 允许拖拽调整任务时间
  dragResize: {
    type: Boolean,
    default: true
  },
  // 允许拖拽表格列
  reorderGridColumns: {
    type: Boolean,
    default: true
  },
  // 拖拽任务时自动对齐单元格
  roundDndDates: {
    type: Boolean,
    default: true
  },
  // 拖拽任务时间步长
  timeStep: {
    type: Number,
    default: 60
  },
  // 连接线半径
  linkRadius: {
    type: Number,
    default: 4
  },
  // 连接线宽度
  linkLineWidth: {
    type: Number,
    default: 2
  },
  // 允许行拖拽排布任务(不改变级别)
  orderBranch: {
    type: Boolean,
    default: false
  },
  // 允许行拖拽排布任务时改变级别
  orderBranchFree: {
    type: Boolean,
    default: true
  },
  // 时间轴最小列宽
  minColumnWidth: {
    type: Number,
    default: 70
  },
  // 展开所有任务
  openTreeInitially: {
    type: Boolean,
    default: false
  },
  // 允许拖拽连接线
  dragLinks: {
    type: Boolean,
    default: true
  },
  // 允许拖拽移动任务
  dragMove: {
    type: Boolean,
    default: true
  },
  // 时间轴日期刻度
  scales: {
    type: definePropType(Array),
    default: null
  },
  // 任务条背景颜色
  taskLineBg: {
    type: String,
    default: ""
  },
  // 悬浮行背景颜色
  hoverRowBg: {
    type: String,
    default: ""
  },
  // 选中行背景颜色
  selectedRowBg: {
    type: String,
    default: ""
  },
  // 表头背景颜色
  gridScaleBg: {
    type: String,
    default: ""
  }
});

export { defaultColumns, ganttProps };
//# sourceMappingURL=gantt.mjs.map
