mirror of
https://github.com/tenrok/maska.git
synced 2026-06-23 20:40:35 +03:00
feat: data-maska-number attribute
This commit is contained in:
@@ -35,7 +35,7 @@ export const parseInput = (
|
|||||||
if (input.dataset.maskaNumberUnsigned != null) {
|
if (input.dataset.maskaNumberUnsigned != null) {
|
||||||
number.unsigned = parseBool(input.dataset.maskaNumberUnsigned)
|
number.unsigned = parseBool(input.dataset.maskaNumberUnsigned)
|
||||||
}
|
}
|
||||||
if (Object.values(number).length > 0) {
|
if (input.dataset.maskaNumber != null || Object.values(number).length > 0) {
|
||||||
opts.number = number
|
opts.number = number
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2117,6 +2117,19 @@ describe('Cursor position eager mask', () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
describe('Number mask', () => {
|
describe('Number mask', () => {
|
||||||
|
test('default number', async () => {
|
||||||
|
document.body.innerHTML = `<input id="input" data-maska-number>`
|
||||||
|
const input = <HTMLInputElement>document.getElementById('input')
|
||||||
|
const mask = new MaskInput(input)
|
||||||
|
|
||||||
|
expect(mask.items.get(input)?.opts.number).toStrictEqual({})
|
||||||
|
|
||||||
|
await user.type(input, '1234.56')
|
||||||
|
expect(input).toHaveValue('123,456')
|
||||||
|
|
||||||
|
await user.clear(input)
|
||||||
|
})
|
||||||
|
|
||||||
test('fraction number', async () => {
|
test('fraction number', async () => {
|
||||||
document.body.innerHTML = `<input id="input" data-maska-number-fraction="2">`
|
document.body.innerHTML = `<input id="input" data-maska-number-fraction="2">`
|
||||||
const input = <HTMLInputElement>document.getElementById('input')
|
const input = <HTMLInputElement>document.getElementById('input')
|
||||||
|
|||||||
Reference in New Issue
Block a user