'use strict';

Object.defineProperty(exports, "__esModule", {
    value: true
});
var InputMixin = {
    props: {
        value: [String, Number],
        type: {
            type: String,
            'default': 'text',
            validator: function validator(value) {
                return ['text', 'password', 'phone', 'conference', 'bankCard'].indexOf(value) > -1;
            }
        },
        placeholder: String,
        editable: {
            type: Boolean,
            'default': true
        },
        disabled: {
            type: Boolean,
            'default': false
        },
        chunkSize: Number,
        maxlength: Number,
        clear: Boolean
    },

    methods: {
        /**
         * 是否为数字
         */
        isDigit: function isDigit(value) {
            var reg = /^[0-9]*$/;
            return reg.test(value);
        },


        /**
         * 是否为数字（仅正数），包括正整数、正小数、0
         */
        isNumber: function isNumber(value) {
            var reg = /^([0-9])+(\.[0-9]+)?$/;
            return reg.test(value);
        },


        /**
         * 是否为正整数，包括正整数和0
         */
        isInteger: function isInteger(value) {
            var reg = /^(([0-9])|([1-9]([0-9]+)))$/;
            return reg.test(value);
        },


        /**
         * 通过实例获取焦点
         */
        focus: function focus() {
            if (this.$refs.inputRef) {
                this.$refs.inputRef.focus();
            }
        }
    }
};

exports['default'] = InputMixin;
module.exports = exports.default;