use-mask-input 1.0.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/example/App.example.d.ts +3 -0
  2. package/dist/{useMaskInput.test.d.ts → example/index.d.ts} +0 -0
  3. package/dist/index.js +1 -2
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.modern.js +1 -2
  6. package/dist/index.modern.js.map +1 -1
  7. package/dist/useMaskInput.d.ts +3 -3
  8. package/node_modules/inputmask/README.md +109 -79
  9. package/node_modules/inputmask/bundle.js +6 -5
  10. package/node_modules/inputmask/dist/inputmask.es6.js +5 -0
  11. package/node_modules/inputmask/dist/inputmask.js +2892 -2608
  12. package/node_modules/inputmask/dist/inputmask.min.js +3 -3
  13. package/node_modules/inputmask/dist/jquery.inputmask.js +2829 -2534
  14. package/node_modules/inputmask/dist/jquery.inputmask.min.js +3 -3
  15. package/node_modules/inputmask/lib/bindings/inputmask.es6.js +5 -0
  16. package/node_modules/inputmask/lib/canUseDOM.js +7 -0
  17. package/node_modules/inputmask/lib/defaults.js +101 -0
  18. package/node_modules/inputmask/lib/definitions.js +13 -0
  19. package/node_modules/inputmask/lib/dependencyLibs/data.js +8 -0
  20. package/node_modules/inputmask/lib/dependencyLibs/events.js +199 -0
  21. package/node_modules/inputmask/lib/dependencyLibs/extend.js +58 -0
  22. package/node_modules/inputmask/lib/dependencyLibs/inputmask.dependencyLib.jquery.js +4 -3
  23. package/node_modules/inputmask/lib/dependencyLibs/inputmask.dependencyLib.js +12 -343
  24. package/node_modules/inputmask/lib/environment.js +9 -0
  25. package/node_modules/inputmask/lib/escapeRegex.js +4 -0
  26. package/node_modules/inputmask/lib/eventhandlers.js +513 -0
  27. package/node_modules/inputmask/lib/eventruler.js +124 -0
  28. package/node_modules/inputmask/lib/extensions/inputmask.date.extensions.js +552 -385
  29. package/node_modules/inputmask/lib/extensions/inputmask.extensions.js +116 -97
  30. package/node_modules/inputmask/lib/extensions/inputmask.numeric.extensions.js +594 -565
  31. package/node_modules/inputmask/lib/global/window.js +2 -6
  32. package/node_modules/inputmask/lib/inputHandling.js +252 -0
  33. package/node_modules/inputmask/lib/inputmask.js +129 -126
  34. package/node_modules/inputmask/lib/inputmaskElement.js +26 -20
  35. package/node_modules/inputmask/lib/jquery.inputmask.js +3 -1
  36. package/node_modules/inputmask/lib/keycode.json +6 -1
  37. package/node_modules/inputmask/lib/mask-lexer.js +467 -0
  38. package/node_modules/inputmask/lib/mask.js +244 -0
  39. package/node_modules/inputmask/lib/masktoken.js +13 -0
  40. package/node_modules/inputmask/lib/polyfills/Array.includes.js +48 -0
  41. package/node_modules/inputmask/lib/polyfills/Object.getPrototypeOf.js +7 -0
  42. package/node_modules/inputmask/lib/positioning.js +348 -0
  43. package/node_modules/inputmask/lib/validation-tests.js +597 -0
  44. package/node_modules/inputmask/lib/validation.js +664 -0
  45. package/node_modules/inputmask/package.json +41 -71
  46. package/package.json +40 -43
  47. package/node_modules/inputmask/CHANGELOG.md +0 -714
  48. package/node_modules/inputmask/index.js +0 -1
  49. package/node_modules/inputmask/lib/dependencyLibs/inputmask.dependencyLib.jqlite.js +0 -170
  50. package/node_modules/inputmask/lib/maskScope.js +0 -2498
  51. package/node_modules/inputmask/lib/maskset.js +0 -466
@@ -5,49 +5,12 @@
5
5
  Licensed under the MIT license
6
6
  */
7
7
 
8
- var window = require("../global/window"), document = window.document;
9
- //helper functions
8
+ import extend from "./extend";
9
+ import window from "../global/window";
10
+ import data from "./data";
11
+ import { on, off, trigger, Event} from "./events";
10
12
 
11
- // Use a stripped-down indexOf as it's faster than native
12
- // http://jsperf.com/thor-indexof-vs-for/5
13
- function indexOf(list, elem) {
14
- var i = 0,
15
- len = list.length;
16
- for (; i < len; i++) {
17
- if (list[i] === elem) {
18
- return i;
19
- }
20
- }
21
- return -1;
22
- }
23
-
24
- function isWindow(obj) {
25
- return obj != null && obj === obj["window"];
26
- }
27
-
28
- function isArraylike(obj) {
29
- // Support: iOS 8.2 (not reproducible in simulator)
30
- // `in` check used to prevent JIT error (gh-2145)
31
- // hasOwn isn't used here due to false negatives
32
- // regarding Nodelist length in IE
33
- var length = "length" in obj && obj.length,
34
- ltype = typeof obj;
35
-
36
- if (ltype === "function" || isWindow(obj)) {
37
- return false;
38
- }
39
-
40
- if (obj.nodeType === 1 && length) {
41
- return true;
42
- }
43
-
44
- return ltype === "array" || length === 0 ||
45
- typeof length === "number" && length > 0 && (length - 1) in obj;
46
- }
47
-
48
- function isValidElement(elem) {
49
- return elem instanceof Element;
50
- }
13
+ const document = window.document;
51
14
 
52
15
  function DependencyLib(elem) {
53
16
  if (elem instanceof DependencyLib) {
@@ -65,308 +28,14 @@ function DependencyLib(elem) {
65
28
  }
66
29
 
67
30
  DependencyLib.prototype = {
68
- on: function (events, handler) {
69
- function addEvent(ev, namespace) {
70
- //register domevent
71
- if (elem.addEventListener) { // all browsers except IE before version 9
72
- elem.addEventListener(ev, handler, false);
73
- } else if (elem.attachEvent) { // IE before version 9
74
- elem.attachEvent("on" + ev, handler);
75
- }
76
- eventRegistry[ev] = eventRegistry[ev] || {};
77
- eventRegistry[ev][namespace] = eventRegistry[ev][namespace] || [];
78
- eventRegistry[ev][namespace].push(handler);
79
- }
80
-
81
- if (isValidElement(this[0])) {
82
- var eventRegistry = this[0].eventRegistry,
83
- elem = this[0];
84
-
85
-
86
- var _events = events.split(" ");
87
- for (var endx = 0; endx < _events.length; endx++) {
88
- var nsEvent = _events[endx].split("."),
89
- ev = nsEvent[0],
90
- namespace = nsEvent[1] || "global";
91
- addEvent(ev, namespace);
92
- }
93
- }
94
- return this;
95
- },
96
- off: function (events, handler) {
97
- var eventRegistry, elem;
98
-
99
- function removeEvent(ev, namespace, handler) {
100
- if (ev in eventRegistry === true) {
101
- //unbind to dom events
102
- if (elem.removeEventListener) { // all browsers except IE before version 9
103
- elem.removeEventListener(ev, handler, false);
104
- } else if (elem.detachEvent) { // IE before version 9
105
- elem.detachEvent("on" + ev, handler);
106
- }
107
- if (namespace === "global") {
108
- for (var nmsp in eventRegistry[ev]) {
109
- eventRegistry[ev][nmsp].splice(eventRegistry[ev][nmsp].indexOf(handler), 1);
110
- }
111
- } else {
112
- eventRegistry[ev][namespace].splice(eventRegistry[ev][namespace].indexOf(handler), 1);
113
- }
114
- }
115
- }
116
-
117
- function resolveNamespace(ev, namespace) {
118
- var evts = [],
119
- hndx, hndL;
120
- if (ev.length > 0) {
121
- if (handler === undefined) {
122
- for (hndx = 0, hndL = eventRegistry[ev][namespace].length; hndx < hndL; hndx++) {
123
- evts.push({
124
- ev: ev,
125
- namespace: namespace && namespace.length > 0 ? namespace : "global",
126
- handler: eventRegistry[ev][namespace][hndx]
127
- });
128
- }
129
- } else {
130
- evts.push({
131
- ev: ev,
132
- namespace: namespace && namespace.length > 0 ? namespace : "global",
133
- handler: handler
134
- });
135
- }
136
- } else if (namespace.length > 0) {
137
- for (var evNdx in eventRegistry) {
138
- for (var nmsp in eventRegistry[evNdx]) {
139
- if (nmsp === namespace) {
140
- if (handler === undefined) {
141
- for (hndx = 0, hndL = eventRegistry[evNdx][nmsp].length; hndx < hndL; hndx++) {
142
- evts.push({
143
- ev: evNdx,
144
- namespace: nmsp,
145
- handler: eventRegistry[evNdx][nmsp][hndx]
146
- });
147
- }
148
- } else {
149
- evts.push({
150
- ev: evNdx,
151
- namespace: nmsp,
152
- handler: handler
153
- });
154
- }
155
- }
156
- }
157
- }
158
- }
159
-
160
- return evts;
161
- }
162
-
163
- if (isValidElement(this[0])) {
164
- eventRegistry = this[0].eventRegistry;
165
- elem = this[0];
166
-
167
-
168
- var _events = events.split(" ");
169
- for (var endx = 0; endx < _events.length; endx++) {
170
- var nsEvent = _events[endx].split("."),
171
- offEvents = resolveNamespace(nsEvent[0], nsEvent[1]);
172
- for (var i = 0, offEventsL = offEvents.length; i < offEventsL; i++) {
173
- removeEvent(offEvents[i].ev, offEvents[i].namespace, offEvents[i].handler);
174
- }
175
- }
176
- }
177
- return this;
178
- },
179
- trigger: function (events /* , args... */) {
180
- if (isValidElement(this[0])) {
181
- var eventRegistry = this[0].eventRegistry,
182
- elem = this[0];
183
- var _events = typeof events === "string" ? events.split(" ") : [events.type];
184
- for (var endx = 0; endx < _events.length; endx++) {
185
- var nsEvent = _events[endx].split("."),
186
- ev = nsEvent[0],
187
- namespace = nsEvent[1] || "global";
188
- if (document !== undefined && namespace === "global") {
189
- //trigger domevent
190
- var evnt, i, params = {
191
- bubbles: true,
192
- cancelable: true,
193
- detail: arguments[1]
194
- };
195
- // The custom event that will be created
196
- if (document.createEvent) {
197
- try {
198
- evnt = new CustomEvent(ev, params);
199
- } catch (e) {
200
- evnt = document.createEvent("CustomEvent");
201
- evnt.initCustomEvent(ev, params.bubbles, params.cancelable, params.detail);
202
- }
203
- if (events.type) DependencyLib.extend(evnt, events);
204
- elem.dispatchEvent(evnt);
205
- } else {
206
- evnt = document.createEventObject();
207
- evnt.eventType = ev;
208
- evnt.detail = arguments[1];
209
- if (events.type) DependencyLib.extend(evnt, events);
210
- elem.fireEvent("on" + evnt.eventType, evnt);
211
- }
212
- } else if (eventRegistry[ev] !== undefined) {
213
- arguments[0] = arguments[0].type ? arguments[0] : DependencyLib.Event(arguments[0]);
214
- arguments[0].detail = arguments.slice(1);
215
- if (namespace === "global") {
216
- for (var nmsp in eventRegistry[ev]) {
217
- for (i = 0; i < eventRegistry[ev][nmsp].length; i++) {
218
- eventRegistry[ev][nmsp][i].apply(elem, arguments);
219
- }
220
- }
221
- } else {
222
- for (i = 0; i < eventRegistry[ev][namespace].length; i++) {
223
- eventRegistry[ev][namespace][i].apply(elem, arguments);
224
- }
225
- }
226
- }
227
- }
228
- }
229
- return this;
230
- }
31
+ on: on,
32
+ off: off,
33
+ trigger: trigger
231
34
  };
232
35
 
233
36
  //static
234
- DependencyLib.isFunction = function (obj) {
235
- return typeof obj === "function";
236
- };
237
- DependencyLib.noop = function () {
238
- };
239
- DependencyLib.isArray = Array.isArray;
240
- DependencyLib.inArray = function (elem, arr, i) {
241
- return arr == null ? -1 : indexOf(arr, elem, i);
242
- };
243
- DependencyLib.valHooks = undefined;
244
-
245
-
246
- DependencyLib.isPlainObject = function (obj) {
247
- // Not plain objects:
248
- // - Any object or value whose internal [[Class]] property is not "[object Object]"
249
- // - DOM nodes
250
- // - window
251
- if (typeof obj !== "object" || obj.nodeType || isWindow(obj)) {
252
- return false;
253
- }
254
-
255
- if (obj.constructor && !Object.hasOwnProperty.call(obj.constructor.prototype, "isPrototypeOf")) {
256
- return false;
257
- }
258
-
259
- // If the function hasn't returned already, we're confident that
260
- // |obj| is a plain object, created by {} or constructed with new Object
261
- return true;
262
- };
263
-
264
- DependencyLib.extend = function () {
265
- var options, name, src, copy, copyIsArray, clone,
266
- target = arguments[0] || {},
267
- i = 1,
268
- length = arguments.length,
269
- deep = false;
270
-
271
- // Handle a deep copy situation
272
- if (typeof target === "boolean") {
273
- deep = target;
274
-
275
- // Skip the boolean and the target
276
- target = arguments[i] || {};
277
- i++;
278
- }
279
-
280
- // Handle case when target is a string or something (possible in deep copy)
281
- if (typeof target !== "object" && !DependencyLib.isFunction(target)) {
282
- target = {};
283
- }
284
-
285
- // Extend jQuery itself if only one argument is passed
286
- if (i === length) {
287
- target = this;
288
- i--;
289
- }
290
-
291
- for (; i < length; i++) {
292
- // Only deal with non-null/undefined values
293
- if ((options = arguments[i]) != null) {
294
- // Extend the base object
295
- for (name in options) {
296
- src = target[name];
297
- copy = options[name];
298
-
299
- // Prevent never-ending loop
300
- if (target === copy) {
301
- continue;
302
- }
303
-
304
- // Recurse if we're merging plain objects or arrays
305
- if (deep && copy && (DependencyLib.isPlainObject(copy) || (copyIsArray = DependencyLib.isArray(copy)))) {
306
- if (copyIsArray) {
307
- copyIsArray = false;
308
- clone = src && DependencyLib.isArray(src) ? src : [];
309
-
310
- } else {
311
- clone = src && DependencyLib.isPlainObject(src) ? src : {};
312
- }
313
-
314
- // Never move original objects, clone them
315
- target[name] = DependencyLib.extend(deep, clone, copy);
316
-
317
- // Don't bring in undefined values
318
- } else if (copy !== undefined) {
319
- target[name] = copy;
320
- }
321
- }
322
- }
323
- }
324
-
325
- // Return the modified object
326
- return target;
327
- };
328
-
329
- DependencyLib.each = function (obj, callback) {
330
- var value, i = 0;
331
-
332
- if (isArraylike(obj)) {
333
- for (var length = obj.length; i < length; i++) {
334
- value = callback.call(obj[i], i, obj[i]);
335
- if (value === false) {
336
- break;
337
- }
338
- }
339
- } else {
340
- for (i in obj) {
341
- value = callback.call(obj[i], i, obj[i]);
342
- if (value === false) {
343
- break;
344
- }
345
- }
346
- }
347
-
348
- return obj;
349
- };
350
-
351
- DependencyLib.data = function (owner, key, value) {
352
- if (value === undefined) {
353
- return owner.__data ? owner.__data[key] : null;
354
- } else {
355
- owner.__data = owner.__data || {};
356
- owner.__data[key] = value;
357
- }
358
- };
359
-
360
- if (typeof window.CustomEvent === "function") {
361
- DependencyLib.Event = window.CustomEvent;
362
- } else {
363
- DependencyLib.Event = function (event, params) {
364
- params = params || {bubbles: false, cancelable: false, detail: undefined};
365
- var evt = document.createEvent("CustomEvent");
366
- evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);
367
- return evt;
368
- };
369
- DependencyLib.Event.prototype = window.Event.prototype;
370
- }
37
+ DependencyLib.extend = extend;
38
+ DependencyLib.data = data;
39
+ DependencyLib.Event = Event;
371
40
 
372
- module.exports = DependencyLib;
41
+ export default DependencyLib;
@@ -0,0 +1,9 @@
1
+ import window from "./global/window";
2
+
3
+ const ua = (window.navigator && window.navigator.userAgent) || "",
4
+ ie = (ua.indexOf("MSIE ") > 0) || (ua.indexOf("Trident/") > 0),
5
+ mobile = "ontouchstart" in window, //not entirely correct but will currently do
6
+ iemobile = /iemobile/i.test(ua),
7
+ iphone = /iphone/i.test(ua) && !iemobile;
8
+
9
+ export {ua, ie, mobile, iemobile, iphone};
@@ -0,0 +1,4 @@
1
+ const escapeRegexRegex = new RegExp("(\\" + ["/", ".", "*", "+", "?", "|", "(", ")", "[", "]", "{", "}", "\\", "$", "^"].join("|\\") + ")", "gim");
2
+ export default function (str) {
3
+ return str.replace(escapeRegexRegex, "\\$1");
4
+ }