import { extend } from '../vue'; // @vue/component export var formSelectionMixin = extend({ computed: { selectionStart: { // Expose selectionStart for formatters, etc cache: false, /* istanbul ignore next */ get: function get() { return this.$refs.input.selectionStart; }, /* istanbul ignore next */ set: function set(val) { this.$refs.input.selectionStart = val; } }, selectionEnd: { // Expose selectionEnd for formatters, etc cache: false, /* istanbul ignore next */ get: function get() { return this.$refs.input.selectionEnd; }, /* istanbul ignore next */ set: function set(val) { this.$refs.input.selectionEnd = val; } }, selectionDirection: { // Expose selectionDirection for formatters, etc cache: false, /* istanbul ignore next */ get: function get() { return this.$refs.input.selectionDirection; }, /* istanbul ignore next */ set: function set(val) { this.$refs.input.selectionDirection = val; } } }, methods: { /* istanbul ignore next */ select: function select() { var _this$$refs$input; // For external handler that may want a select() method (_this$$refs$input = this.$refs.input).select.apply(_this$$refs$input, arguments); }, /* istanbul ignore next */ setSelectionRange: function setSelectionRange() { var _this$$refs$input2; // For external handler that may want a setSelectionRange(a,b,c) method (_this$$refs$input2 = this.$refs.input).setSelectionRange.apply(_this$$refs$input2, arguments); }, /* istanbul ignore next */ setRangeText: function setRangeText() { var _this$$refs$input3; // For external handler that may want a setRangeText(a,b,c) method (_this$$refs$input3 = this.$refs.input).setRangeText.apply(_this$$refs$input3, arguments); } } });