imask
Version:
vanilla javascript input mask
50 lines (39 loc) • 921 B
JavaScript
import IMask from '../core/holder.js';
/** Generic element API to use with mask */
class MaskElement {
/** */
/** */
/** */
/** Safely returns selection start */
get selectionStart() {
let start;
try {
start = this._unsafeSelectionStart;
} catch {}
return start != null ? start : this.value.length;
}
/** Safely returns selection end */
get selectionEnd() {
let end;
try {
end = this._unsafeSelectionEnd;
} catch {}
return end != null ? end : this.value.length;
}
/** Safely sets element selection */
select(start, end) {
if (start == null || end == null || start === this.selectionStart && end === this.selectionEnd) return;
try {
this._unsafeSelect(start, end);
} catch {}
}
/** */
get isActive() {
return false;
}
/** */
/** */
/** */
}
IMask.MaskElement = MaskElement;
export { MaskElement as default };