'use strict';

require('../../../utils/index.js');
var runtime = require('../../../utils/props/runtime.js');

"use strict";
const mode = ["compact", "loose"];
const buttonProps = runtime.buildProps({
  // 按钮类型
  type: {
    type: String,
    default: "default"
  },
  // 是否禁用
  disabled: {
    type: Boolean,
    default: false
  },
  // 按钮文本
  label: {
    type: String
  },
  //  图标信息
  icon: {
    type: runtime.definePropType(Object),
    default: () => ({
      iconName: "",
      color: "",
      size: ""
    })
  },
  // 图标方位
  iconDirection: {
    type: String,
    default: "left"
  },
  // 图标和文字间距
  iconSpace: {
    type: Number,
    default: 8
  },
  // 是否为灰色类型
  isGray: {
    type: Boolean,
    default: false
  },
  // 是否为独占一行
  isBlock: {
    type: Boolean,
    default: false
  },
  // 是否显示（用于按钮组）
  accessControl: {
    type: Boolean,
    default: true
  },
  // 使用自定义样式
  useCustomStyle: {
    type: Boolean,
    default: false
  },
  // 自定义背景
  bgColor: {
    type: String
  },
  // 自定义文本色
  color: {
    type: String
  },
  // 自定义悬浮背景
  hoverBgColor: {
    type: String
  },
  // 自定义悬浮文本色
  hoverColor: {
    type: String
  }
});
const buttonGroupProps = runtime.buildProps({
  // 数据配置
  items: {
    type: runtime.definePropType(Array),
    required: true,
    default: () => []
  },
  // 紧凑模式 / 宽松模式
  mode: {
    type: String,
    values: mode,
    default: "compact"
  },
  // 最多显示按钮数量
  maxCount: {
    type: Number,
    default: 0
  },
  // 按钮尺寸
  size: {
    type: String
  },
  // 继承按钮尺寸(服务设计器)
  extendSize: {
    type: String
  },
  // 图标和文字间距
  iconSpace: {
    type: Number,
    default: 4
  },
  // 更多文字
  moreText: {
    type: String,
    default: ""
  },
  // 更多按钮形状
  moreShape: {
    type: String,
    default: "default"
  },
  // 更多按钮类型
  moreType: {
    type: String,
    default: "default"
  },
  // 更多按钮图标方位
  moreIconDirection: {
    type: String,
    default: "left"
  },
  // 更多下拉触发方式
  moreTrigger: {
    type: Array,
    default: () => ["click"]
  },
  // 按钮图标
  moreIcon: {
    type: String,
    default: "icon-more"
  },
  // 是否全部禁用
  disabled: {
    type: Boolean,
    default: false
  },
  // 是否为幽灵按钮
  ghost: {
    type: Boolean,
    default: false
  },
  // 间距大小
  spaceSize: {
    type: Number,
    default: 8
  },
  // 按钮形状
  shape: {
    type: String,
    default: "default"
  },
  // 是否为无边框模式 ,仅紧凑型生效
  noBorder: {
    type: Boolean,
    default: false
  },
  // 可视区文本以文字提示方式展示
  useTip: {
    type: Boolean,
    default: false
  },
  // 是否显示文字提示（权重比useTip大）
  showTip: {
    type: Boolean,
    default: true
  },
  // 文字提示是否为白色背景
  isWhiteBg: {
    type: Boolean,
    default: true
  },
  // 文字提示是否显示箭头
  arrow: {
    type: Boolean,
    default: false
  }
});

exports.buttonGroupProps = buttonGroupProps;
exports.buttonProps = buttonProps;
exports.mode = mode;
//# sourceMappingURL=button.js.map
