react-native-advanced-input-mask
Version:
Text input mask for React Native on iOS, Android and web. Synchronous and easy formatting without hustle
38 lines (35 loc) • 778 B
text/typescript
import { StateName, type StateType } from "./types";
export const OPTIONAL_STATE_TYPES: Record<StateName, StateType> = {
numeric: {
regex: /^\d$/,
name: StateName.numeric,
typeString: "[9]",
},
literal: {
regex: /^[A-Za-z]$/,
name: StateName.literal,
typeString: "[a]",
},
alphaNumeric: {
regex: /^[A-Za-z0-9]$/,
name: StateName.alphaNumeric,
typeString: "[-]",
},
};
export const FIXED_STATE_TYPES: Record<StateName, StateType> = {
literal: {
regex: /^[A-Za-z]$/,
name: StateName.literal,
typeString: "[A]",
},
numeric: {
regex: /^\d$/,
name: StateName.numeric,
typeString: "[0]",
},
alphaNumeric: {
regex: /^[A-Za-z0-9]$/,
name: StateName.alphaNumeric,
typeString: "[_]",
},
};