Bug fix: mask method did not accept NodeListOf and other array like objects.

This commit is contained in:
dmester
2019-02-10 21:25:55 +01:00
parent 7c11bfa278
commit 7f4b74ebed
3 changed files with 21 additions and 9 deletions
+3 -3
View File
@@ -543,7 +543,7 @@ declare namespace Inputmask {
*
* @param el Element selector, a single element or an array of elements.
*/
mask(selectorOrElement: string | HTMLElement | ReadonlyArray<HTMLElement>): Instance;
mask(selectorOrElement: string | HTMLElement | ArrayLike<HTMLElement>): Instance;
/**
* Get an option on an existing inputmask.
*
@@ -687,7 +687,7 @@ declare namespace Inputmask {
/**
* Remove the inputmask.
*/
remove(selectorOrElement: string | HTMLElement | ReadonlyArray<HTMLElement>): void;
remove(selectorOrElement: string | HTMLElement | ArrayLike<HTMLElement>): void;
/**
* The setvalue functionality is to set a value to the inputmask like you would do with jQuery.val, BUT it will
* trigger the internal event used by the inputmask always, whatever the case. This is particular usefull when
@@ -696,7 +696,7 @@ declare namespace Inputmask {
* However when setting the value with jQuery.val there is none of the events triggered in that case. The
* setvalue functionality does this for you.
*/
setValue(selectorOrElement: string | HTMLElement | ReadonlyArray<HTMLElement>, value: string): void;
setValue(selectorOrElement: string | HTMLElement | ArrayLike<HTMLElement>, value: string): void;
/**
* Unmask a given value against the mask.
*
@@ -78,9 +78,15 @@ Inputmask("9", { repeat: 10 }).mask("selector");
Inputmask({ regex: "\\d*" }).mask("selector");
Inputmask({ regex: String.raw`\d*` }).mask("selector");
let inputElement!: HTMLInputElement;
Inputmask().mask(inputElement);
Inputmask().mask([inputElement, inputElement]);
function testMask() {
const inputElement = document.querySelector("input");
if (inputElement) {
Inputmask().mask(inputElement);
Inputmask().mask([inputElement, inputElement]);
Inputmask().mask(document.querySelectorAll("input"));
Inputmask().mask(document.getElementsByTagName("input"));
}
}
Inputmask.extendDefaults({
autoUnmask: true
@@ -80,9 +80,15 @@ Inputmask("9", { repeat: 10 }).mask("selector");
Inputmask({ regex: "\\d*" }).mask("selector");
Inputmask({ regex: String.raw`\d*` }).mask("selector");
let inputElement!: HTMLInputElement;
Inputmask().mask(inputElement);
Inputmask().mask([inputElement, inputElement]);
function testMask() {
const inputElement = document.querySelector("input");
if (inputElement) {
Inputmask().mask(inputElement);
Inputmask().mask([inputElement, inputElement]);
Inputmask().mask(document.querySelectorAll("input"));
Inputmask().mask(document.getElementsByTagName("input"));
}
}
Inputmask.extendDefaults({
autoUnmask: true