O componente Input
e MoneyInput
contém funcionalidades de uma caixa de texto com estilos e controles embutidos para facilitar o desenvolvimento.
import Input from '@mamba/input';
import MoneyInput from '@mamba/input/Money.html';
Propriedades | Descrição | Tipo | Padrão |
---|---|---|---|
align | Alinha a entrada de acordo com parâmetro (left , right ) |
string |
'right' |
alphanumeric | Define o modo de entrada como alfanumérico | boolean |
false |
autofocus | Inicia o elemento com foco | boolean |
false |
forceFocus | Força o foco no elemento de input | boolean |
false |
isFocused | Retorna se o input está focado ou não | boolean |
false |
bgColor | Cor de Fundo da Caixa de Entrada |
string (hex) |
'#fff' |
disabled | Desabilita a entrada de texto | boolean |
false |
errorMessage | Define uma mensagem de erro caso a validação falhe | boolean |
false |
errorColor | Cor do Texto da Mensagem de Erro |
string (hex) |
#d5000 |
label | Título da Caixa de Entrada | string |
undefined |
readable | Possibilita esconder o texto de Entrada | boolean |
false |
type | Tipo de texto de entrada (password /text ) |
string |
'text' |
textColor | Cor do Texto da Caixa de Entrada |
string (hex) |
'#4a4a4a' |
labelColor | Cor do título do Input |
string (hex) |
'#4a4a4a' |
value | Valor de padrão de entrada | string |
false |
validation | Adiciona um método de validação | function |
undefined |
validateOn | Define em que momento a validação ocorre (input /submit ) |
string |
'submit' |
mask | Define uma máscara para o texto | string |
null |
compact | Define se o input é levemente compacto. Esta é uma variação pequena na altura do componente, para casos que a tela apresenta muitos elementos e precisa comportar a mensagem de erro de validação que é, dinâmica. Esta propriedade não serve para deixar o componente compatível com POS's de tela muito pequena. | boolean |
false |
showPasswordToggle | Define se deve mostrar o símbolo de olho, para alternar entre a exibição de um campo de senha ou não. O valor default vai depender do modelo do POS, se ele possuí touch. | boolean |
unknown |
keyboardOptions | Define as propriedades do teclado virtual no momento da criação do componente <Input /> . Tenha cuidado se tiver mais de um campo de entrada na mesma página, pois essas são propriedades globais do teclado (O que se aplicar para um <Input /> , será aplicado para todos) |
object |
{} |
Propriedades | Descrição | Tipo | Padrão |
---|---|---|---|
value | Valor do input em centavos |
string or number
|
0 |
readonlyOnEnter | Faz com que o campo se torne somente leitura no keypress do enter e se o valor em centavos for igual a zero |
boolean |
false |
<Input ... on:event="..." />
Eventos | Disparado quando ... | Tipo |
---|---|---|
submit | A validação( se houver ) do campo for bem-sucedida, quando o campo for submetido. | function(event) |
submitValid | O campo for inválido no momento do submit
|
function(event) |
submitInvalid | O campo for válido no momento do submit
|
function(event) |
Os eventos submit
, submitValid
e submitInvalid
, retornam as seguintes propriedades no objeto event
:
event = {
value: string; // Valor do campo (com máscara se houver)
rawValue: string; // Valor sem máscara ou formatação
isValid: boolean; // Representa o valor da validação (se houver)
}
Além desses eventos, o
Input
recebe os eventosfocus
,blur
,keydown
,keyup
einput
por padrão.
<MoneyInput ... on:event="..." />
O evento submit
, submitValid
e submitInvalid
retornam as seguintes propriedades no objeto event
para o MoneyInput
:
event = {
value: number; // Valor em centavos
formatted: string; // Valor formatado na moeda
isValid: boolean; // Representa o valor da validação (se houver)
}
Adiciona um valor fixo no ínicio do campo de digitação.
Adiciona um valor fixo no final do campo de digitação.
Coloca o foco no componente de input.
Desfoca o componente de input.
Força a validação do Input e retorna um booleano representando o resultado da validação.
Define que o input está com conteúdo inválido e mostra uma mensagem de erro opcional.
Desabilita o preenchimento do campo
Habilita o preenchimento do campo
O componente padrão Input
suporta máscaras para formatar o seu valor. Para definir uma máscara de input, basta passar um parâmetro mask
com uma ou mais máscaras. Uma máscara é definida por tokens que, por padrão, são:
-
#
- Dígito -
X
- Caractér alfanumérico -
S
- Letra -
A
- Letra maiúscula -
a
- Letra minúscula -
!
- Escapa o caractér do token
Exemplo de CPF/CNPJ:
<Input label="CPF/CNPJ" mask={['###.###.###-##', '##.###.###/####-##']} />
Força uma atualização do conteúdo do Input
para se adequar às máscaras definidas. Use apenas se a prop value
for definida manualmente através de um inputComponent.set({ value: ... })
.