diff --git a/src/mask.js b/src/mask.js index 7fed7a1..1426914 100644 --- a/src/mask.js +++ b/src/mask.js @@ -36,13 +36,11 @@ export default function mask (value, mask, tokens, masked = true) { // fix mask that ends with parentesis while (masked && im < mask.length) { // eslint-disable-line no-unmodified-loop-condition const maskCharRest = mask[im] - if (tokens[maskCharRest] && !tokens[maskCharRest].repeat) { + if (tokens[maskCharRest]) { rest = '' break } - if (!tokens[maskCharRest]) { - rest += maskCharRest - } + rest += maskCharRest im++ } diff --git a/test/mask.test.js b/test/mask.test.js index 6f560a1..8f92cdc 100644 --- a/test/mask.test.js +++ b/test/mask.test.js @@ -102,7 +102,8 @@ test('123abc (#*)A*', () => { }) test('123abc -> # (A*)', () => { - expect(mask('123abc', '# (A*)', tokens)).toBe('1 (ABC)') + expect(mask('123abc', '# (A*)', tokens)).toBe('1 (ABC') + expect(mask('123abc ', '# (A*)', tokens)).toBe('1 (ABC)') }) test('Raw 123abc ##(A*)', () => {