react-flexinput-mask
v1.0.15
Published
Input masked component for React allowing to use variable length sections in mask definitions
Downloads
6
Maintainers
Readme
react-flexinput-mask
Input masked component for React allowing to use variable length sections in mask definitions. Ability to enter text sections of variable length allows to impement masked input of e-mail addresses, post addresses and other structured text of variable length.
Live Demo
Install
npm install react-flexinput-mask
Quick start
import React from 'react';
import {FlexInputMask} from 'react-flexinput-mask/index';
function App() {
return (
<FlexInputMask placeHolder={[
{text:"abc",delimiterText:"@",regex:"^[a-zA-Z0-9#!%$‘&+*–/=^_~]*$",isVariableLength:true},
{text:"gmail",delimiterText:".",regex:"^[a-zA-Z0-9]*$",isVariableLength:true},
{text:"com",regex:"^[a-zA-Z]*",isVariableLength:true}
]}/>);
}
Properties
| Name |Type | Default | Description |
|-- |-- |--|--|
| placeHolder |IPlaceHolderItem[]
||The placeHolder property is an array of sections. Each section contains properties that determine the appearance of the section and the rules for entering symbols. |
| style? |object ||custom css style that applies to PlaceHolderItem(section) element|
Events
| Name | Event Handler Type| Description | |-|-|-| | onSectionGotFocus?|(instance: FlexInputMask)=>void |fires when any section of placeHolder gets a focus| | onChange?|(instance: FlexInputMask, newValue:string)=>boolean) =>void |fires when user changes section content. newValue - not commited changes, if onChange handler returns false the changes would be rejected (previous value will be restored) | | onSectionLostFocus?|(instance:FlexInputMask) =>void |fires when any section of placeHolder losts a focus.|
Methods
getFormattedValue(includeDelimiters:boolean = true):string
Returns value of FlexInputMask component. Depending on parameter includeDelimiters returned string would contain delimiters or not.
IPlaceHolderItem
PlaceHolderItem used to define input section rules
Properties
| Name |Type | Description |
|-- |-- |--|
|text|string|Text of section that will be displayed as placeholder|
|isPersistant?|boolean|There are 2 types of sections: editable and readonly. If isPersistant == false or omitted then section is editable|
|isVariableLength|boolean|Allows to enter strings of variable length if true|
|delimitertext?|string|Delimiter symbol. Delimiter symbol will be displayed after section value, After entering delimiter symbol into input section the focus will be moved to the next input section|
|regex?|string|Regular expresion used to filter symbols. If symbol is not allowed its input will be blocked|
|customCssClass?|string|ClassName attribute of the FlexInputMask component. See example of usage in "Style" partition of Live Demo[]
|