UNPKG

react-native-advanced-input-mask

Version:

Text input mask for React Native on iOS, Android and web. Synchronous and easy formatting without hustle

29 lines 897 B
import { CaretGravityType } from "../model/types"; class CaretStringIterator { constructor(caretString, currentIndex = 0) { this.caretString = caretString; this.currentIndex = currentIndex; } insertionAffectsCaret() { const { caretGravity, caretPosition } = this.caretString; const isBackwardGravity = caretGravity.type === CaretGravityType.Backward; return isBackwardGravity ? this.currentIndex <= caretPosition : this.currentIndex < caretPosition; } deletionAffectsCaret = () => this.currentIndex < this.caretString.caretPosition; next() { const { string } = this.caretString; if (this.currentIndex >= string.length) { return null; } const char = string.charAt(this.currentIndex); this.currentIndex += 1; return char; } } export default CaretStringIterator; //# sourceMappingURL=CaretStringIterator.js.map