'use strict';

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

"use strict";
const inputProps = runtime.buildProps({
  /**
   * @description input的defaultValue
   */
  defaultValue: {
    type: runtime.definePropType(String),
    default: ""
  },
  /**
   * @description input的value
   */
  value: {
    type: runtime.definePropType(String)
  },
  /**
   * @description 带有前缀图标的 input
   */
  prefixIcon: {
    type: String
  },
  /**
   * @description 带有后缀图标的 input
   */
  suffixIcon: {
    type: String
  },
  /**
   * @description 是否显示密码框
   */
  showPassword: {
    type: Boolean
  },
  /**
   * @description 是否点击清除图标删除内容
   */
  allowClear: {
    type: Boolean,
    default: true
  },
  /**
   * @description 是否禁用状态，默认为 false
   */
  disabled: {
    type: Boolean,
    default: false
  },
  /**
   * @description 是否只读状态，默认为 false ,allowClear需独立设置
   */
  readonly: {
    type: Boolean,
    default: false
  },
  /**
   * @description 是否灰色查询样式
   */
  isGray: {
    type: Boolean,
    default: false
  },
  // 最大输入数
  maxlength: {
    type: Number
  }
});
const inputSearchProps = runtime.buildProps({
  /**
   * @description input的defaultValue
   */
  defaultValue: {
    type: runtime.definePropType(String),
    default: ""
  },
  /**
   * @description input的value
   */
  value: {
    type: runtime.definePropType(String)
  },
  /**
   * @description 是否点击清除图标删除内容
   */
  allowClear: {
    type: Boolean,
    default: true
  },
  /**
   * @description 是否禁用状态，默认为 false
   */
  disabled: {
    type: Boolean,
    default: false
  }
});
const passwordInputProps = runtime.buildProps({
  // 是否灰色样式
  isGray: {
    type: Boolean,
    default: true
  },
  // 最大输入限制
  maxlength: Number,
  // 值
  value: {
    type: String,
    default: ""
  },
  // 校验正则
  rules: {
    type: runtime.definePropType(Array),
    default: () => []
  },
  // 是否显示密码强度
  pwdStrength: {
    type: Boolean,
    default: true
  },
  // 弱强度颜色
  weakColor: {
    type: String,
    default: "red"
  },
  // 中等强度颜色
  mediumColor: {
    type: String,
    default: "yellow"
  },
  // 非常强度颜色
  strongColor: {
    type: String,
    default: "green"
  },
  // 提示标题
  tipTitle: {
    type: String,
    default: "\u5EFA\u8BAE"
  },
  // 触发方式 点击切换 / 按下显示
  trigger: {
    type: String,
    default: "hold",
    values: ["click", "hold"]
  },
  // 密码是否可见
  visible: Boolean
});
const passwordInputEmits = {
  change: (value) => !!value || typeof value === "string",
  "update:value": (value) => !!value || typeof value === "string",
  "update:visible": (visible) => typeof visible === "boolean",
  state: (value) => typeof value === "boolean"
};

exports.inputProps = inputProps;
exports.inputSearchProps = inputSearchProps;
exports.passwordInputEmits = passwordInputEmits;
exports.passwordInputProps = passwordInputProps;
//# sourceMappingURL=input.js.map
