@skyux/validation 6.19.0 → 6.21.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.
- package/documentation.json +71 -98
- package/esm2020/lib/modules/email-validation/email-validation.directive.mjs +10 -14
- package/esm2020/lib/modules/url-validation/url-validation.directive.mjs +2 -4
- package/fesm2015/skyux-validation.mjs +9 -15
- package/fesm2015/skyux-validation.mjs.map +1 -1
- package/fesm2020/skyux-validation.mjs +9 -15
- package/fesm2020/skyux-validation.mjs.map +1 -1
- package/lib/modules/email-validation/email-validation.directive.d.ts +3 -7
- package/lib/modules/url-validation/url-validation.directive.d.ts +1 -3
- package/package.json +1 -1
package/documentation.json
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"originalName": "",
|
|
18
18
|
"children": [
|
|
19
19
|
{
|
|
20
|
-
"id":
|
|
20
|
+
"id": 27,
|
|
21
21
|
"name": "SkyEmailValidationModule",
|
|
22
22
|
"kind": 128,
|
|
23
23
|
"kindString": "Class",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"title": "Constructors",
|
|
43
43
|
"kind": 512,
|
|
44
44
|
"children": [
|
|
45
|
-
|
|
45
|
+
28
|
|
46
46
|
]
|
|
47
47
|
}
|
|
48
48
|
],
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
]
|
|
56
56
|
},
|
|
57
57
|
{
|
|
58
|
-
"id":
|
|
58
|
+
"id": 32,
|
|
59
59
|
"name": "SkyUrlValidationModule",
|
|
60
60
|
"kind": 128,
|
|
61
61
|
"kindString": "Class",
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
"title": "Constructors",
|
|
81
81
|
"kind": 512,
|
|
82
82
|
"children": [
|
|
83
|
-
|
|
83
|
+
33
|
|
84
84
|
]
|
|
85
85
|
}
|
|
86
86
|
],
|
|
@@ -93,7 +93,7 @@
|
|
|
93
93
|
]
|
|
94
94
|
},
|
|
95
95
|
{
|
|
96
|
-
"id":
|
|
96
|
+
"id": 35,
|
|
97
97
|
"name": "SkyValidation",
|
|
98
98
|
"kind": 128,
|
|
99
99
|
"kindString": "Class",
|
|
@@ -102,7 +102,7 @@
|
|
|
102
102
|
},
|
|
103
103
|
"children": [
|
|
104
104
|
{
|
|
105
|
-
"id":
|
|
105
|
+
"id": 36,
|
|
106
106
|
"name": "isEmail",
|
|
107
107
|
"kind": 2048,
|
|
108
108
|
"kindString": "Method",
|
|
@@ -119,14 +119,14 @@
|
|
|
119
119
|
],
|
|
120
120
|
"signatures": [
|
|
121
121
|
{
|
|
122
|
-
"id":
|
|
122
|
+
"id": 37,
|
|
123
123
|
"name": "isEmail",
|
|
124
124
|
"kind": 4096,
|
|
125
125
|
"kindString": "Call signature",
|
|
126
126
|
"flags": {},
|
|
127
127
|
"parameters": [
|
|
128
128
|
{
|
|
129
|
-
"id":
|
|
129
|
+
"id": 38,
|
|
130
130
|
"name": "emailAddress",
|
|
131
131
|
"kind": 32768,
|
|
132
132
|
"kindString": "Parameter",
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
]
|
|
146
146
|
},
|
|
147
147
|
{
|
|
148
|
-
"id":
|
|
148
|
+
"id": 39,
|
|
149
149
|
"name": "isUrl",
|
|
150
150
|
"kind": 2048,
|
|
151
151
|
"kindString": "Method",
|
|
@@ -162,14 +162,14 @@
|
|
|
162
162
|
],
|
|
163
163
|
"signatures": [
|
|
164
164
|
{
|
|
165
|
-
"id":
|
|
165
|
+
"id": 40,
|
|
166
166
|
"name": "isUrl",
|
|
167
167
|
"kind": 4096,
|
|
168
168
|
"kindString": "Call signature",
|
|
169
169
|
"flags": {},
|
|
170
170
|
"parameters": [
|
|
171
171
|
{
|
|
172
|
-
"id":
|
|
172
|
+
"id": 41,
|
|
173
173
|
"name": "value",
|
|
174
174
|
"kind": 32768,
|
|
175
175
|
"kindString": "Parameter",
|
|
@@ -180,7 +180,7 @@
|
|
|
180
180
|
}
|
|
181
181
|
},
|
|
182
182
|
{
|
|
183
|
-
"id":
|
|
183
|
+
"id": 42,
|
|
184
184
|
"name": "options",
|
|
185
185
|
"kind": 32768,
|
|
186
186
|
"kindString": "Parameter",
|
|
@@ -189,7 +189,7 @@
|
|
|
189
189
|
},
|
|
190
190
|
"type": {
|
|
191
191
|
"type": "reference",
|
|
192
|
-
"id":
|
|
192
|
+
"id": 30,
|
|
193
193
|
"name": "SkyUrlValidationOptions"
|
|
194
194
|
}
|
|
195
195
|
}
|
|
@@ -207,15 +207,15 @@
|
|
|
207
207
|
"title": "Constructors",
|
|
208
208
|
"kind": 512,
|
|
209
209
|
"children": [
|
|
210
|
-
|
|
210
|
+
43
|
|
211
211
|
]
|
|
212
212
|
},
|
|
213
213
|
{
|
|
214
214
|
"title": "Methods",
|
|
215
215
|
"kind": 2048,
|
|
216
216
|
"children": [
|
|
217
|
-
|
|
218
|
-
|
|
217
|
+
36,
|
|
218
|
+
39
|
|
219
219
|
]
|
|
220
220
|
}
|
|
221
221
|
],
|
|
@@ -228,14 +228,14 @@
|
|
|
228
228
|
]
|
|
229
229
|
},
|
|
230
230
|
{
|
|
231
|
-
"id":
|
|
231
|
+
"id": 45,
|
|
232
232
|
"name": "SkyValidators",
|
|
233
233
|
"kind": 128,
|
|
234
234
|
"kindString": "Class",
|
|
235
235
|
"flags": {},
|
|
236
236
|
"children": [
|
|
237
237
|
{
|
|
238
|
-
"id":
|
|
238
|
+
"id": 46,
|
|
239
239
|
"name": "email",
|
|
240
240
|
"kind": 2048,
|
|
241
241
|
"kindString": "Method",
|
|
@@ -252,7 +252,7 @@
|
|
|
252
252
|
],
|
|
253
253
|
"signatures": [
|
|
254
254
|
{
|
|
255
|
-
"id":
|
|
255
|
+
"id": 47,
|
|
256
256
|
"name": "email",
|
|
257
257
|
"kind": 4096,
|
|
258
258
|
"kindString": "Call signature",
|
|
@@ -262,7 +262,7 @@
|
|
|
262
262
|
},
|
|
263
263
|
"parameters": [
|
|
264
264
|
{
|
|
265
|
-
"id":
|
|
265
|
+
"id": 48,
|
|
266
266
|
"name": "control",
|
|
267
267
|
"kind": 32768,
|
|
268
268
|
"kindString": "Parameter",
|
|
@@ -285,7 +285,7 @@
|
|
|
285
285
|
]
|
|
286
286
|
},
|
|
287
287
|
{
|
|
288
|
-
"id":
|
|
288
|
+
"id": 49,
|
|
289
289
|
"name": "url",
|
|
290
290
|
"kind": 2048,
|
|
291
291
|
"kindString": "Method",
|
|
@@ -302,7 +302,7 @@
|
|
|
302
302
|
],
|
|
303
303
|
"signatures": [
|
|
304
304
|
{
|
|
305
|
-
"id":
|
|
305
|
+
"id": 50,
|
|
306
306
|
"name": "url",
|
|
307
307
|
"kind": 4096,
|
|
308
308
|
"kindString": "Call signature",
|
|
@@ -312,7 +312,7 @@
|
|
|
312
312
|
},
|
|
313
313
|
"parameters": [
|
|
314
314
|
{
|
|
315
|
-
"id":
|
|
315
|
+
"id": 51,
|
|
316
316
|
"name": "abstractControl",
|
|
317
317
|
"kind": 32768,
|
|
318
318
|
"kindString": "Parameter",
|
|
@@ -333,7 +333,7 @@
|
|
|
333
333
|
}
|
|
334
334
|
},
|
|
335
335
|
{
|
|
336
|
-
"id":
|
|
336
|
+
"id": 52,
|
|
337
337
|
"name": "url",
|
|
338
338
|
"kind": 4096,
|
|
339
339
|
"kindString": "Call signature",
|
|
@@ -343,14 +343,14 @@
|
|
|
343
343
|
},
|
|
344
344
|
"parameters": [
|
|
345
345
|
{
|
|
346
|
-
"id":
|
|
346
|
+
"id": 53,
|
|
347
347
|
"name": "skyUrlValidationOptions",
|
|
348
348
|
"kind": 32768,
|
|
349
349
|
"kindString": "Parameter",
|
|
350
350
|
"flags": {},
|
|
351
351
|
"type": {
|
|
352
352
|
"type": "reference",
|
|
353
|
-
"id":
|
|
353
|
+
"id": 30,
|
|
354
354
|
"name": "SkyUrlValidationOptions"
|
|
355
355
|
}
|
|
356
356
|
}
|
|
@@ -370,15 +370,15 @@
|
|
|
370
370
|
"title": "Constructors",
|
|
371
371
|
"kind": 512,
|
|
372
372
|
"children": [
|
|
373
|
-
|
|
373
|
+
54
|
|
374
374
|
]
|
|
375
375
|
},
|
|
376
376
|
{
|
|
377
377
|
"title": "Methods",
|
|
378
378
|
"kind": 2048,
|
|
379
379
|
"children": [
|
|
380
|
-
|
|
381
|
-
|
|
380
|
+
46,
|
|
381
|
+
49
|
|
382
382
|
]
|
|
383
383
|
}
|
|
384
384
|
],
|
|
@@ -397,7 +397,7 @@
|
|
|
397
397
|
"kindString": "Class",
|
|
398
398
|
"flags": {},
|
|
399
399
|
"comment": {
|
|
400
|
-
"shortText": "
|
|
400
|
+
"shortText": "Adds email address validation to an input element. The directive uses `NgModel` to bind data."
|
|
401
401
|
},
|
|
402
402
|
"decorators": [
|
|
403
403
|
{
|
|
@@ -415,7 +415,7 @@
|
|
|
415
415
|
],
|
|
416
416
|
"children": [
|
|
417
417
|
{
|
|
418
|
-
"id":
|
|
418
|
+
"id": 7,
|
|
419
419
|
"name": "emailIsValid",
|
|
420
420
|
"kind": 2048,
|
|
421
421
|
"kindString": "Method",
|
|
@@ -425,20 +425,20 @@
|
|
|
425
425
|
"sources": [
|
|
426
426
|
{
|
|
427
427
|
"fileName": "projects/validation/src/modules/email-validation/email-validation.directive.ts",
|
|
428
|
-
"line":
|
|
428
|
+
"line": 39,
|
|
429
429
|
"character": 9
|
|
430
430
|
}
|
|
431
431
|
],
|
|
432
432
|
"signatures": [
|
|
433
433
|
{
|
|
434
|
-
"id":
|
|
434
|
+
"id": 8,
|
|
435
435
|
"name": "emailIsValid",
|
|
436
436
|
"kind": 4096,
|
|
437
437
|
"kindString": "Call signature",
|
|
438
438
|
"flags": {},
|
|
439
439
|
"parameters": [
|
|
440
440
|
{
|
|
441
|
-
"id":
|
|
441
|
+
"id": 9,
|
|
442
442
|
"name": "email",
|
|
443
443
|
"kind": 32768,
|
|
444
444
|
"kindString": "Parameter",
|
|
@@ -467,7 +467,7 @@
|
|
|
467
467
|
"sources": [
|
|
468
468
|
{
|
|
469
469
|
"fileName": "projects/validation/src/modules/email-validation/email-validation.directive.ts",
|
|
470
|
-
"line":
|
|
470
|
+
"line": 25,
|
|
471
471
|
"character": 9
|
|
472
472
|
}
|
|
473
473
|
],
|
|
@@ -494,37 +494,10 @@
|
|
|
494
494
|
}
|
|
495
495
|
],
|
|
496
496
|
"type": {
|
|
497
|
-
"type": "
|
|
498
|
-
"
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
"kind": 65536,
|
|
502
|
-
"kindString": "Type literal",
|
|
503
|
-
"flags": {},
|
|
504
|
-
"indexSignature": {
|
|
505
|
-
"id": 8,
|
|
506
|
-
"name": "__index",
|
|
507
|
-
"kind": 8192,
|
|
508
|
-
"kindString": "Index signature",
|
|
509
|
-
"flags": {},
|
|
510
|
-
"parameters": [
|
|
511
|
-
{
|
|
512
|
-
"id": 9,
|
|
513
|
-
"name": "key",
|
|
514
|
-
"kind": 32768,
|
|
515
|
-
"flags": {},
|
|
516
|
-
"type": {
|
|
517
|
-
"type": "intrinsic",
|
|
518
|
-
"name": "string"
|
|
519
|
-
}
|
|
520
|
-
}
|
|
521
|
-
],
|
|
522
|
-
"type": {
|
|
523
|
-
"type": "intrinsic",
|
|
524
|
-
"name": "any"
|
|
525
|
-
}
|
|
526
|
-
}
|
|
527
|
-
}
|
|
497
|
+
"type": "reference",
|
|
498
|
+
"qualifiedName": "ValidationErrors",
|
|
499
|
+
"package": "@angular/forms",
|
|
500
|
+
"name": "ValidationErrors"
|
|
528
501
|
},
|
|
529
502
|
"implementationOf": {
|
|
530
503
|
"type": "reference",
|
|
@@ -550,7 +523,7 @@
|
|
|
550
523
|
"title": "Methods",
|
|
551
524
|
"kind": 2048,
|
|
552
525
|
"children": [
|
|
553
|
-
|
|
526
|
+
7,
|
|
554
527
|
4
|
|
555
528
|
]
|
|
556
529
|
}
|
|
@@ -558,7 +531,7 @@
|
|
|
558
531
|
"sources": [
|
|
559
532
|
{
|
|
560
533
|
"fileName": "projects/validation/src/modules/email-validation/email-validation.directive.ts",
|
|
561
|
-
"line":
|
|
534
|
+
"line": 24,
|
|
562
535
|
"character": 13
|
|
563
536
|
}
|
|
564
537
|
],
|
|
@@ -572,13 +545,13 @@
|
|
|
572
545
|
]
|
|
573
546
|
},
|
|
574
547
|
{
|
|
575
|
-
"id":
|
|
548
|
+
"id": 10,
|
|
576
549
|
"name": "SkyUrlValidationDirective",
|
|
577
550
|
"kind": 128,
|
|
578
551
|
"kindString": "Class",
|
|
579
552
|
"flags": {},
|
|
580
553
|
"comment": {
|
|
581
|
-
"shortText": "
|
|
554
|
+
"shortText": "Adds URL validation to an input element. The directive uses `NgModel` to bind data."
|
|
582
555
|
},
|
|
583
556
|
"decorators": [
|
|
584
557
|
{
|
|
@@ -596,7 +569,7 @@
|
|
|
596
569
|
],
|
|
597
570
|
"children": [
|
|
598
571
|
{
|
|
599
|
-
"id":
|
|
572
|
+
"id": 13,
|
|
600
573
|
"name": "skyUrlValidation",
|
|
601
574
|
"kind": 262144,
|
|
602
575
|
"kindString": "Accessor",
|
|
@@ -618,13 +591,13 @@
|
|
|
618
591
|
"sources": [
|
|
619
592
|
{
|
|
620
593
|
"fileName": "projects/validation/src/modules/url-validation/url-validation.directive.ts",
|
|
621
|
-
"line":
|
|
594
|
+
"line": 32,
|
|
622
595
|
"character": 13
|
|
623
596
|
}
|
|
624
597
|
],
|
|
625
598
|
"setSignature": [
|
|
626
599
|
{
|
|
627
|
-
"id":
|
|
600
|
+
"id": 14,
|
|
628
601
|
"name": "skyUrlValidation",
|
|
629
602
|
"kind": 1048576,
|
|
630
603
|
"kindString": "Set signature",
|
|
@@ -634,14 +607,14 @@
|
|
|
634
607
|
},
|
|
635
608
|
"parameters": [
|
|
636
609
|
{
|
|
637
|
-
"id":
|
|
610
|
+
"id": 15,
|
|
638
611
|
"name": "value",
|
|
639
612
|
"kind": 32768,
|
|
640
613
|
"kindString": "Parameter",
|
|
641
614
|
"flags": {},
|
|
642
615
|
"type": {
|
|
643
616
|
"type": "reference",
|
|
644
|
-
"id":
|
|
617
|
+
"id": 30,
|
|
645
618
|
"name": "SkyUrlValidationOptions"
|
|
646
619
|
}
|
|
647
620
|
}
|
|
@@ -654,7 +627,7 @@
|
|
|
654
627
|
]
|
|
655
628
|
},
|
|
656
629
|
{
|
|
657
|
-
"id":
|
|
630
|
+
"id": 22,
|
|
658
631
|
"name": "registerOnValidatorChange",
|
|
659
632
|
"kind": 2048,
|
|
660
633
|
"kindString": "Method",
|
|
@@ -664,20 +637,20 @@
|
|
|
664
637
|
"sources": [
|
|
665
638
|
{
|
|
666
639
|
"fileName": "projects/validation/src/modules/url-validation/url-validation.directive.ts",
|
|
667
|
-
"line":
|
|
640
|
+
"line": 54,
|
|
668
641
|
"character": 9
|
|
669
642
|
}
|
|
670
643
|
],
|
|
671
644
|
"signatures": [
|
|
672
645
|
{
|
|
673
|
-
"id":
|
|
646
|
+
"id": 23,
|
|
674
647
|
"name": "registerOnValidatorChange",
|
|
675
648
|
"kind": 4096,
|
|
676
649
|
"kindString": "Call signature",
|
|
677
650
|
"flags": {},
|
|
678
651
|
"parameters": [
|
|
679
652
|
{
|
|
680
|
-
"id":
|
|
653
|
+
"id": 24,
|
|
681
654
|
"name": "fn",
|
|
682
655
|
"kind": 32768,
|
|
683
656
|
"kindString": "Parameter",
|
|
@@ -685,14 +658,14 @@
|
|
|
685
658
|
"type": {
|
|
686
659
|
"type": "reflection",
|
|
687
660
|
"declaration": {
|
|
688
|
-
"id":
|
|
661
|
+
"id": 25,
|
|
689
662
|
"name": "__type",
|
|
690
663
|
"kind": 65536,
|
|
691
664
|
"kindString": "Type literal",
|
|
692
665
|
"flags": {},
|
|
693
666
|
"signatures": [
|
|
694
667
|
{
|
|
695
|
-
"id":
|
|
668
|
+
"id": 26,
|
|
696
669
|
"name": "__type",
|
|
697
670
|
"kind": 4096,
|
|
698
671
|
"kindString": "Call signature",
|
|
@@ -723,7 +696,7 @@
|
|
|
723
696
|
}
|
|
724
697
|
},
|
|
725
698
|
{
|
|
726
|
-
"id":
|
|
699
|
+
"id": 19,
|
|
727
700
|
"name": "validate",
|
|
728
701
|
"kind": 2048,
|
|
729
702
|
"kindString": "Method",
|
|
@@ -733,20 +706,20 @@
|
|
|
733
706
|
"sources": [
|
|
734
707
|
{
|
|
735
708
|
"fileName": "projects/validation/src/modules/url-validation/url-validation.directive.ts",
|
|
736
|
-
"line":
|
|
709
|
+
"line": 42,
|
|
737
710
|
"character": 9
|
|
738
711
|
}
|
|
739
712
|
],
|
|
740
713
|
"signatures": [
|
|
741
714
|
{
|
|
742
|
-
"id":
|
|
715
|
+
"id": 20,
|
|
743
716
|
"name": "validate",
|
|
744
717
|
"kind": 4096,
|
|
745
718
|
"kindString": "Call signature",
|
|
746
719
|
"flags": {},
|
|
747
720
|
"parameters": [
|
|
748
721
|
{
|
|
749
|
-
"id":
|
|
722
|
+
"id": 21,
|
|
750
723
|
"name": "control",
|
|
751
724
|
"kind": 32768,
|
|
752
725
|
"kindString": "Parameter",
|
|
@@ -782,29 +755,29 @@
|
|
|
782
755
|
"title": "Constructors",
|
|
783
756
|
"kind": 512,
|
|
784
757
|
"children": [
|
|
785
|
-
|
|
758
|
+
11
|
|
786
759
|
]
|
|
787
760
|
},
|
|
788
761
|
{
|
|
789
762
|
"title": "Accessors",
|
|
790
763
|
"kind": 262144,
|
|
791
764
|
"children": [
|
|
792
|
-
|
|
765
|
+
13
|
|
793
766
|
]
|
|
794
767
|
},
|
|
795
768
|
{
|
|
796
769
|
"title": "Methods",
|
|
797
770
|
"kind": 2048,
|
|
798
771
|
"children": [
|
|
799
|
-
|
|
800
|
-
|
|
772
|
+
22,
|
|
773
|
+
19
|
|
801
774
|
]
|
|
802
775
|
}
|
|
803
776
|
],
|
|
804
777
|
"sources": [
|
|
805
778
|
{
|
|
806
779
|
"fileName": "projects/validation/src/modules/url-validation/url-validation.directive.ts",
|
|
807
|
-
"line":
|
|
780
|
+
"line": 27,
|
|
808
781
|
"character": 13
|
|
809
782
|
}
|
|
810
783
|
],
|
|
@@ -818,7 +791,7 @@
|
|
|
818
791
|
]
|
|
819
792
|
},
|
|
820
793
|
{
|
|
821
|
-
"id":
|
|
794
|
+
"id": 30,
|
|
822
795
|
"name": "SkyUrlValidationOptions",
|
|
823
796
|
"kind": 256,
|
|
824
797
|
"kindString": "Interface",
|
|
@@ -828,7 +801,7 @@
|
|
|
828
801
|
},
|
|
829
802
|
"children": [
|
|
830
803
|
{
|
|
831
|
-
"id":
|
|
804
|
+
"id": 31,
|
|
832
805
|
"name": "rulesetVersion",
|
|
833
806
|
"kind": 1024,
|
|
834
807
|
"kindString": "Property",
|
|
@@ -863,7 +836,7 @@
|
|
|
863
836
|
"title": "Properties",
|
|
864
837
|
"kind": 1024,
|
|
865
838
|
"children": [
|
|
866
|
-
|
|
839
|
+
31
|
|
867
840
|
]
|
|
868
841
|
}
|
|
869
842
|
],
|
|
@@ -881,19 +854,19 @@
|
|
|
881
854
|
"title": "Classes",
|
|
882
855
|
"kind": 128,
|
|
883
856
|
"children": [
|
|
884
|
-
|
|
857
|
+
27,
|
|
858
|
+
32,
|
|
885
859
|
35,
|
|
886
|
-
|
|
887
|
-
48,
|
|
860
|
+
45,
|
|
888
861
|
1,
|
|
889
|
-
|
|
862
|
+
10
|
|
890
863
|
]
|
|
891
864
|
},
|
|
892
865
|
{
|
|
893
866
|
"title": "Interfaces",
|
|
894
867
|
"kind": 256,
|
|
895
868
|
"children": [
|
|
896
|
-
|
|
869
|
+
30
|
|
897
870
|
]
|
|
898
871
|
}
|
|
899
872
|
],
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Directive, forwardRef } from '@angular/core';
|
|
2
|
-
import { NG_VALIDATORS } from '@angular/forms';
|
|
2
|
+
import { NG_VALIDATORS, } from '@angular/forms';
|
|
3
3
|
import { SkyValidation } from '../validation/validation';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
const SKY_EMAIL_VALIDATION_VALIDATOR = {
|
|
@@ -8,23 +8,19 @@ const SKY_EMAIL_VALIDATION_VALIDATOR = {
|
|
|
8
8
|
multi: true,
|
|
9
9
|
};
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
* If users enter values that are not valid email addresses, an error message appears.
|
|
13
|
-
* The directive uses `NgModel` to bind data.
|
|
11
|
+
* Adds email address validation to an input element. The directive uses `NgModel` to bind data.
|
|
14
12
|
*/
|
|
15
13
|
export class SkyEmailValidationDirective {
|
|
16
14
|
validate(control) {
|
|
17
15
|
const value = control.value;
|
|
18
|
-
if (!value) {
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
if (!this.emailIsValid(value)) {
|
|
22
|
-
return {
|
|
23
|
-
skyEmail: {
|
|
24
|
-
invalid: control.value,
|
|
25
|
-
},
|
|
26
|
-
};
|
|
16
|
+
if (!value || this.emailIsValid(value)) {
|
|
17
|
+
return null;
|
|
27
18
|
}
|
|
19
|
+
return {
|
|
20
|
+
skyEmail: {
|
|
21
|
+
invalid: control.value,
|
|
22
|
+
},
|
|
23
|
+
};
|
|
28
24
|
}
|
|
29
25
|
emailIsValid(email) {
|
|
30
26
|
return SkyValidation.isEmail(email);
|
|
@@ -39,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
39
35
|
providers: [SKY_EMAIL_VALIDATION_VALIDATOR],
|
|
40
36
|
}]
|
|
41
37
|
}] });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtdmFsaWRhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdmFsaWRhdGlvbi9zcmMvbGliL21vZHVsZXMvZW1haWwtdmFsaWRhdGlvbi9lbWFpbC12YWxpZGF0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBRUwsYUFBYSxHQUdkLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUV6RCxNQUFNLDhCQUE4QixHQUFHO0lBQ3JDLE9BQU8sRUFBRSxhQUFhO0lBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMkJBQTJCLENBQUM7SUFDMUQsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBRUY7O0dBRUc7QUFLSCxNQUFNLE9BQU8sMkJBQTJCO0lBQy9CLFFBQVEsQ0FBQyxPQUF3QjtRQUN0QyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBRTVCLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN0QyxPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsT0FBTztZQUNMLFFBQVEsRUFBRTtnQkFDUixPQUFPLEVBQUUsT0FBTyxDQUFDLEtBQUs7YUFDdkI7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVNLFlBQVksQ0FBQyxLQUFhO1FBQy9CLE9BQU8sYUFBYSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDOzt3SEFqQlUsMkJBQTJCOzRHQUEzQiwyQkFBMkIsK0NBRjNCLENBQUMsOEJBQThCLENBQUM7MkZBRWhDLDJCQUEyQjtrQkFKdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxTQUFTLEVBQUUsQ0FBQyw4QkFBOEIsQ0FBQztpQkFDNUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgTkdfVkFMSURBVE9SUyxcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFNreVZhbGlkYXRpb24gfSBmcm9tICcuLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24nO1xuXG5jb25zdCBTS1lfRU1BSUxfVkFMSURBVElPTl9WQUxJREFUT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreUVtYWlsVmFsaWRhdGlvbkRpcmVjdGl2ZSksXG4gIG11bHRpOiB0cnVlLFxufTtcblxuLyoqXG4gKiBBZGRzIGVtYWlsIGFkZHJlc3MgdmFsaWRhdGlvbiB0byBhbiBpbnB1dCBlbGVtZW50LiBUaGUgZGlyZWN0aXZlIHVzZXMgYE5nTW9kZWxgIHRvIGJpbmQgZGF0YS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NreUVtYWlsVmFsaWRhdGlvbl0nLFxuICBwcm92aWRlcnM6IFtTS1lfRU1BSUxfVkFMSURBVElPTl9WQUxJREFUT1JdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lFbWFpbFZhbGlkYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBWYWxpZGF0b3Ige1xuICBwdWJsaWMgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbC52YWx1ZTtcblxuICAgIGlmICghdmFsdWUgfHwgdGhpcy5lbWFpbElzVmFsaWQodmFsdWUpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgc2t5RW1haWw6IHtcbiAgICAgICAgaW52YWxpZDogY29udHJvbC52YWx1ZSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBlbWFpbElzVmFsaWQoZW1haWw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBTa3lWYWxpZGF0aW9uLmlzRW1haWwoZW1haWwpO1xuICB9XG59XG4iXX0=
|
|
@@ -9,9 +9,7 @@ const SKY_URL_VALIDATION_VALIDATOR = {
|
|
|
9
9
|
multi: true,
|
|
10
10
|
};
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
13
|
-
* If users enters values that are not valid URLs, an error message appears.
|
|
14
|
-
* This directive uses `NgModel` to bind data.
|
|
12
|
+
* Adds URL validation to an input element. The directive uses `NgModel` to bind data.
|
|
15
13
|
*/
|
|
16
14
|
export class SkyUrlValidationDirective {
|
|
17
15
|
constructor() {
|
|
@@ -49,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
49
47
|
}], propDecorators: { skyUrlValidation: [{
|
|
50
48
|
type: Input
|
|
51
49
|
}] } });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXZhbGlkYXRpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3ZhbGlkYXRpb24vc3JjL2xpYi9tb2R1bGVzL3VybC12YWxpZGF0aW9uL3VybC12YWxpZGF0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUVMLGFBQWEsR0FHZCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFJekQsc0RBQXNEO0FBQ3RELE1BQU0sNEJBQTRCLEdBQUc7SUFDbkMsT0FBTyxFQUFFLGFBQWE7SUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztJQUN4RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFFRjs7R0FFRztBQUtILE1BQU0sT0FBTyx5QkFBeUI7SUFKdEM7UUFnQkUsZ0VBQWdFO1FBQ3hELHFCQUFnQixHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztLQWlCckM7SUE3QkM7O09BRUc7SUFDSCxJQUNXLGdCQUFnQixDQUFDLEtBQTBDO1FBQ3BFLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxLQUFLLENBQUM7UUFDdEMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQU9NLFFBQVEsQ0FBQyxPQUF3QjtRQUN0QyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBRTVCLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsT0FBTyxhQUFhLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsd0JBQXdCLENBQUM7WUFDOUQsQ0FBQyxDQUFDLElBQUk7WUFDTixDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU0seUJBQXlCLENBQUMsRUFBYztRQUM3QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0lBQzdCLENBQUM7O3NIQTdCVSx5QkFBeUI7MEdBQXpCLHlCQUF5QiwrRkFGekIsQ0FBQyw0QkFBNEIsQ0FBQzsyRkFFOUIseUJBQXlCO2tCQUpyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFNBQVMsRUFBRSxDQUFDLDRCQUE0QixDQUFDO2lCQUMxQzs4QkFNWSxnQkFBZ0I7c0JBRDFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIE5HX1ZBTElEQVRPUlMsXG4gIFZhbGlkYXRpb25FcnJvcnMsXG4gIFZhbGlkYXRvcixcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBTa3lWYWxpZGF0aW9uIH0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uJztcblxuaW1wb3J0IHsgU2t5VXJsVmFsaWRhdGlvbk9wdGlvbnMgfSBmcm9tICcuL3VybC12YWxpZGF0aW9uLW9wdGlvbnMnO1xuXG4vLyB0c2xpbnQ6ZGlzYWJsZTpuby1mb3J3YXJkLXJlZiBuby11c2UtYmVmb3JlLWRlY2xhcmVcbmNvbnN0IFNLWV9VUkxfVkFMSURBVElPTl9WQUxJREFUT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreVVybFZhbGlkYXRpb25EaXJlY3RpdmUpLFxuICBtdWx0aTogdHJ1ZSxcbn07XG5cbi8qKlxuICogQWRkcyBVUkwgdmFsaWRhdGlvbiB0byBhbiBpbnB1dCBlbGVtZW50LiBUaGUgZGlyZWN0aXZlIHVzZXMgYE5nTW9kZWxgIHRvIGJpbmQgZGF0YS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NreVVybFZhbGlkYXRpb25dJyxcbiAgcHJvdmlkZXJzOiBbU0tZX1VSTF9WQUxJREFUSU9OX1ZBTElEQVRPUl0sXG59KVxuZXhwb3J0IGNsYXNzIFNreVVybFZhbGlkYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBWYWxpZGF0b3Ige1xuICAvKipcbiAgICogU3BlY2lmaWVzIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIFVSTCB2YWxpZGF0aW9uIGNvbXBvbmVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2t5VXJsVmFsaWRhdGlvbih2YWx1ZTogU2t5VXJsVmFsaWRhdGlvbk9wdGlvbnMgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9za3lVcmxWYWxpZGF0aW9uT3B0aW9ucyA9IHZhbHVlO1xuICAgIHRoaXMuX3ZhbGlkYXRvckNoYW5nZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2t5VXJsVmFsaWRhdGlvbk9wdGlvbnM6IFNreVVybFZhbGlkYXRpb25PcHRpb25zIHwgdW5kZWZpbmVkO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgcHJpdmF0ZSBfdmFsaWRhdG9yQ2hhbmdlID0gKCkgPT4ge307XG5cbiAgcHVibGljIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWU7XG5cbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gU2t5VmFsaWRhdGlvbi5pc1VybCh2YWx1ZSwgdGhpcy5fc2t5VXJsVmFsaWRhdGlvbk9wdGlvbnMpXG4gICAgICA/IG51bGxcbiAgICAgIDogeyBza3lVcmw6IHsgaW52YWxpZDogdmFsdWUgfSB9O1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2UoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLl92YWxpZGF0b3JDaGFuZ2UgPSBmbjtcbiAgfVxufVxuIl19
|
|
@@ -37,23 +37,19 @@ const SKY_EMAIL_VALIDATION_VALIDATOR = {
|
|
|
37
37
|
multi: true,
|
|
38
38
|
};
|
|
39
39
|
/**
|
|
40
|
-
*
|
|
41
|
-
* If users enter values that are not valid email addresses, an error message appears.
|
|
42
|
-
* The directive uses `NgModel` to bind data.
|
|
40
|
+
* Adds email address validation to an input element. The directive uses `NgModel` to bind data.
|
|
43
41
|
*/
|
|
44
42
|
class SkyEmailValidationDirective {
|
|
45
43
|
validate(control) {
|
|
46
44
|
const value = control.value;
|
|
47
|
-
if (!value) {
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
if (!this.emailIsValid(value)) {
|
|
51
|
-
return {
|
|
52
|
-
skyEmail: {
|
|
53
|
-
invalid: control.value,
|
|
54
|
-
},
|
|
55
|
-
};
|
|
45
|
+
if (!value || this.emailIsValid(value)) {
|
|
46
|
+
return null;
|
|
56
47
|
}
|
|
48
|
+
return {
|
|
49
|
+
skyEmail: {
|
|
50
|
+
invalid: control.value,
|
|
51
|
+
},
|
|
52
|
+
};
|
|
57
53
|
}
|
|
58
54
|
emailIsValid(email) {
|
|
59
55
|
return SkyValidation.isEmail(email);
|
|
@@ -90,9 +86,7 @@ const SKY_URL_VALIDATION_VALIDATOR = {
|
|
|
90
86
|
multi: true,
|
|
91
87
|
};
|
|
92
88
|
/**
|
|
93
|
-
*
|
|
94
|
-
* If users enters values that are not valid URLs, an error message appears.
|
|
95
|
-
* This directive uses `NgModel` to bind data.
|
|
89
|
+
* Adds URL validation to an input element. The directive uses `NgModel` to bind data.
|
|
96
90
|
*/
|
|
97
91
|
class SkyUrlValidationDirective {
|
|
98
92
|
constructor() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-validation.mjs","sources":["../../../../../libs/components/validation/src/lib/modules/validation/validation.ts","../../../../../libs/components/validation/src/lib/modules/email-validation/email-validation.directive.ts","../../../../../libs/components/validation/src/lib/modules/email-validation/email-validation.module.ts","../../../../../libs/components/validation/src/lib/modules/url-validation/url-validation.directive.ts","../../../../../libs/components/validation/src/lib/modules/url-validation/url-validation.module.ts","../../../../../libs/components/validation/src/lib/modules/validators/validators.ts","../../../../../libs/components/validation/src/skyux-validation.ts"],"sourcesContent":["import isURL from 'validator/es/lib/isURL';\n\nimport { SkyUrlValidationOptions } from '../url-validation/url-validation-options';\n\nexport abstract class SkyValidation {\n public static isEmail(emailAddress: string): boolean {\n // The regex was obtained from http://emailregex.com/\n // which claims to correctly handle ~99% of all email addresses.\n const regex =\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return regex.test(emailAddress);\n }\n\n public static isUrl(\n value: unknown,\n options?: SkyUrlValidationOptions\n ): boolean {\n if (typeof value !== 'string') {\n return false;\n }\n\n const url: string = value;\n\n const regex = /^((http|https):\\/\\/)?([\\w-]+\\.)+[\\w-]+/i;\n if (options) {\n switch (options.rulesetVersion) {\n case 1:\n return regex.test(url);\n case 2:\n // we are using the `validator` package's default options\n return isURL(url);\n }\n } else {\n return regex.test(url);\n }\n }\n}\n","import { Directive, forwardRef } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, Validator } from '@angular/forms';\n\nimport { SkyValidation } from '../validation/validation';\n\nconst SKY_EMAIL_VALIDATION_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyEmailValidationDirective),\n multi: true,\n};\n\n/**\n * Creates an input to validate email addresses. Place this attribute on an `input` element.\n * If users enter values that are not valid email addresses, an error message appears.\n * The directive uses `NgModel` to bind data.\n */\n@Directive({\n selector: '[skyEmailValidation]',\n providers: [SKY_EMAIL_VALIDATION_VALIDATOR],\n})\nexport class SkyEmailValidationDirective implements Validator {\n public validate(control: AbstractControl): { [key: string]: any } {\n const value = control.value;\n\n if (!value) {\n return;\n }\n\n if (!this.emailIsValid(value)) {\n return {\n skyEmail: {\n invalid: control.value,\n },\n };\n }\n }\n\n public emailIsValid(email: string): boolean {\n return SkyValidation.isEmail(email);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyEmailValidationDirective } from './email-validation.directive';\n\n@NgModule({\n declarations: [SkyEmailValidationDirective],\n imports: [FormsModule],\n exports: [SkyEmailValidationDirective],\n})\nexport class SkyEmailValidationModule {}\n","import { Directive, Input, forwardRef } from '@angular/core';\nimport {\n AbstractControl,\n NG_VALIDATORS,\n ValidationErrors,\n Validator,\n} from '@angular/forms';\n\nimport { SkyValidation } from '../validation/validation';\n\nimport { SkyUrlValidationOptions } from './url-validation-options';\n\n// tslint:disable:no-forward-ref no-use-before-declare\nconst SKY_URL_VALIDATION_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyUrlValidationDirective),\n multi: true,\n};\n\n/**\n * Creates an input to validate URLs. Place this attribute on an `input` element.\n * If users enters values that are not valid URLs, an error message appears.\n * This directive uses `NgModel` to bind data.\n */\n@Directive({\n selector: '[skyUrlValidation]',\n providers: [SKY_URL_VALIDATION_VALIDATOR],\n})\nexport class SkyUrlValidationDirective implements Validator {\n /**\n * Specifies configuration options for the URL validation component.\n */\n @Input()\n public set skyUrlValidation(value: SkyUrlValidationOptions | undefined) {\n this._skyUrlValidationOptions = value;\n this._validatorChange();\n }\n\n private _skyUrlValidationOptions: SkyUrlValidationOptions | undefined;\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n private _validatorChange = () => {};\n\n public validate(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return null;\n }\n\n return SkyValidation.isUrl(value, this._skyUrlValidationOptions)\n ? null\n : { skyUrl: { invalid: value } };\n }\n\n public registerOnValidatorChange(fn: () => void): void {\n this._validatorChange = fn;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyUrlValidationDirective } from './url-validation.directive';\n\n@NgModule({\n declarations: [SkyUrlValidationDirective],\n imports: [FormsModule],\n exports: [SkyUrlValidationDirective],\n})\nexport class SkyUrlValidationModule {}\n","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';\n\nimport { SkyUrlValidationOptions } from '../url-validation/url-validation-options';\nimport { SkyValidation } from '../validation/validation';\n\n// Need to add the following to classes which contain static methods.\n// See: https://github.com/ng-packagr/ng-packagr/issues/641\n// @dynamic\nexport class SkyValidators {\n /**\n * Validates email addresses in reactive forms. Add this validator directly to the form control\n * model in the component class. If users enter values that are not valid email addresses, the\n * validator throws an error. Since this is a sync validator, it returns a set of validation\n * errors or `null` immediately when users enter values.\n */\n public static email(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return null;\n }\n\n return SkyValidation.isEmail(value)\n ? null\n : { skyEmail: { invalid: value } };\n }\n\n /**\n * Validates URLs in reactive forms. Add this validator directly to the form control model in\n * the component class. If users enter values that are not valid URLs, the validator throws an\n * error. Since this is a sync validator, it returns a set of validation errors or `null`\n * immediately when users enter values.\n */\n public static url(abstractControl: AbstractControl): ValidationErrors | null;\n\n /**\n * Validates URLs in reactive forms. Add this validator with ruleset parameters directly to\n * the form control model in the component class. If users enter values that are not valid\n * URLs, the validator throws an error. Since this is a sync validator, it returns a set of\n * validation errors or `null` immediately when users enter values.\n */\n public static url(\n skyUrlValidationOptions: SkyUrlValidationOptions\n ): ValidatorFn | null;\n\n public static url(\n value: AbstractControl | SkyUrlValidationOptions\n ): ValidatorFn | ValidationErrors | null {\n const typeTester = value as SkyUrlValidationOptions;\n if (typeTester.rulesetVersion === undefined) {\n // there are no SkyUrlValidationOptions passed in, so return ValidationErrors | null\n const abstractControl = value as AbstractControl;\n const abstractControlValue = abstractControl.value;\n if (!abstractControlValue) {\n return null;\n }\n return SkyValidation.isUrl(abstractControlValue)\n ? null\n : { skyUrl: { invalid: abstractControlValue } };\n } else {\n // there are SkyUrlValidationOptions passed in, so return ValidatorFn\n const skyUrlValidationOptions = value as SkyUrlValidationOptions;\n return (abstractControl: AbstractControl): ValidationErrors | null => {\n const abstractControlValue = abstractControl.value;\n if (!abstractControlValue) {\n return null;\n }\n\n return SkyValidation.isUrl(\n abstractControl.value,\n skyUrlValidationOptions\n )\n ? null\n : { skyUrl: { invalid: abstractControl.value } };\n };\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-validation.mjs","sources":["../../../../../libs/components/validation/src/lib/modules/validation/validation.ts","../../../../../libs/components/validation/src/lib/modules/email-validation/email-validation.directive.ts","../../../../../libs/components/validation/src/lib/modules/email-validation/email-validation.module.ts","../../../../../libs/components/validation/src/lib/modules/url-validation/url-validation.directive.ts","../../../../../libs/components/validation/src/lib/modules/url-validation/url-validation.module.ts","../../../../../libs/components/validation/src/lib/modules/validators/validators.ts","../../../../../libs/components/validation/src/skyux-validation.ts"],"sourcesContent":["import isURL from 'validator/es/lib/isURL';\n\nimport { SkyUrlValidationOptions } from '../url-validation/url-validation-options';\n\nexport abstract class SkyValidation {\n public static isEmail(emailAddress: string): boolean {\n // The regex was obtained from http://emailregex.com/\n // which claims to correctly handle ~99% of all email addresses.\n const regex =\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return regex.test(emailAddress);\n }\n\n public static isUrl(\n value: unknown,\n options?: SkyUrlValidationOptions\n ): boolean {\n if (typeof value !== 'string') {\n return false;\n }\n\n const url: string = value;\n\n const regex = /^((http|https):\\/\\/)?([\\w-]+\\.)+[\\w-]+/i;\n if (options) {\n switch (options.rulesetVersion) {\n case 1:\n return regex.test(url);\n case 2:\n // we are using the `validator` package's default options\n return isURL(url);\n }\n } else {\n return regex.test(url);\n }\n }\n}\n","import { Directive, forwardRef } from '@angular/core';\nimport {\n AbstractControl,\n NG_VALIDATORS,\n ValidationErrors,\n Validator,\n} from '@angular/forms';\n\nimport { SkyValidation } from '../validation/validation';\n\nconst SKY_EMAIL_VALIDATION_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyEmailValidationDirective),\n multi: true,\n};\n\n/**\n * Adds email address validation to an input element. The directive uses `NgModel` to bind data.\n */\n@Directive({\n selector: '[skyEmailValidation]',\n providers: [SKY_EMAIL_VALIDATION_VALIDATOR],\n})\nexport class SkyEmailValidationDirective implements Validator {\n public validate(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value || this.emailIsValid(value)) {\n return null;\n }\n\n return {\n skyEmail: {\n invalid: control.value,\n },\n };\n }\n\n public emailIsValid(email: string): boolean {\n return SkyValidation.isEmail(email);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyEmailValidationDirective } from './email-validation.directive';\n\n@NgModule({\n declarations: [SkyEmailValidationDirective],\n imports: [FormsModule],\n exports: [SkyEmailValidationDirective],\n})\nexport class SkyEmailValidationModule {}\n","import { Directive, Input, forwardRef } from '@angular/core';\nimport {\n AbstractControl,\n NG_VALIDATORS,\n ValidationErrors,\n Validator,\n} from '@angular/forms';\n\nimport { SkyValidation } from '../validation/validation';\n\nimport { SkyUrlValidationOptions } from './url-validation-options';\n\n// tslint:disable:no-forward-ref no-use-before-declare\nconst SKY_URL_VALIDATION_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyUrlValidationDirective),\n multi: true,\n};\n\n/**\n * Adds URL validation to an input element. The directive uses `NgModel` to bind data.\n */\n@Directive({\n selector: '[skyUrlValidation]',\n providers: [SKY_URL_VALIDATION_VALIDATOR],\n})\nexport class SkyUrlValidationDirective implements Validator {\n /**\n * Specifies configuration options for the URL validation component.\n */\n @Input()\n public set skyUrlValidation(value: SkyUrlValidationOptions | undefined) {\n this._skyUrlValidationOptions = value;\n this._validatorChange();\n }\n\n private _skyUrlValidationOptions: SkyUrlValidationOptions | undefined;\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n private _validatorChange = () => {};\n\n public validate(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return null;\n }\n\n return SkyValidation.isUrl(value, this._skyUrlValidationOptions)\n ? null\n : { skyUrl: { invalid: value } };\n }\n\n public registerOnValidatorChange(fn: () => void): void {\n this._validatorChange = fn;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyUrlValidationDirective } from './url-validation.directive';\n\n@NgModule({\n declarations: [SkyUrlValidationDirective],\n imports: [FormsModule],\n exports: [SkyUrlValidationDirective],\n})\nexport class SkyUrlValidationModule {}\n","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';\n\nimport { SkyUrlValidationOptions } from '../url-validation/url-validation-options';\nimport { SkyValidation } from '../validation/validation';\n\n// Need to add the following to classes which contain static methods.\n// See: https://github.com/ng-packagr/ng-packagr/issues/641\n// @dynamic\nexport class SkyValidators {\n /**\n * Validates email addresses in reactive forms. Add this validator directly to the form control\n * model in the component class. If users enter values that are not valid email addresses, the\n * validator throws an error. Since this is a sync validator, it returns a set of validation\n * errors or `null` immediately when users enter values.\n */\n public static email(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return null;\n }\n\n return SkyValidation.isEmail(value)\n ? null\n : { skyEmail: { invalid: value } };\n }\n\n /**\n * Validates URLs in reactive forms. Add this validator directly to the form control model in\n * the component class. If users enter values that are not valid URLs, the validator throws an\n * error. Since this is a sync validator, it returns a set of validation errors or `null`\n * immediately when users enter values.\n */\n public static url(abstractControl: AbstractControl): ValidationErrors | null;\n\n /**\n * Validates URLs in reactive forms. Add this validator with ruleset parameters directly to\n * the form control model in the component class. If users enter values that are not valid\n * URLs, the validator throws an error. Since this is a sync validator, it returns a set of\n * validation errors or `null` immediately when users enter values.\n */\n public static url(\n skyUrlValidationOptions: SkyUrlValidationOptions\n ): ValidatorFn | null;\n\n public static url(\n value: AbstractControl | SkyUrlValidationOptions\n ): ValidatorFn | ValidationErrors | null {\n const typeTester = value as SkyUrlValidationOptions;\n if (typeTester.rulesetVersion === undefined) {\n // there are no SkyUrlValidationOptions passed in, so return ValidationErrors | null\n const abstractControl = value as AbstractControl;\n const abstractControlValue = abstractControl.value;\n if (!abstractControlValue) {\n return null;\n }\n return SkyValidation.isUrl(abstractControlValue)\n ? null\n : { skyUrl: { invalid: abstractControlValue } };\n } else {\n // there are SkyUrlValidationOptions passed in, so return ValidatorFn\n const skyUrlValidationOptions = value as SkyUrlValidationOptions;\n return (abstractControl: AbstractControl): ValidationErrors | null => {\n const abstractControlValue = abstractControl.value;\n if (!abstractControlValue) {\n return null;\n }\n\n return SkyValidation.isUrl(\n abstractControl.value,\n skyUrlValidationOptions\n )\n ? null\n : { skyUrl: { invalid: abstractControl.value } };\n };\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -37,23 +37,19 @@ const SKY_EMAIL_VALIDATION_VALIDATOR = {
|
|
|
37
37
|
multi: true,
|
|
38
38
|
};
|
|
39
39
|
/**
|
|
40
|
-
*
|
|
41
|
-
* If users enter values that are not valid email addresses, an error message appears.
|
|
42
|
-
* The directive uses `NgModel` to bind data.
|
|
40
|
+
* Adds email address validation to an input element. The directive uses `NgModel` to bind data.
|
|
43
41
|
*/
|
|
44
42
|
class SkyEmailValidationDirective {
|
|
45
43
|
validate(control) {
|
|
46
44
|
const value = control.value;
|
|
47
|
-
if (!value) {
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
if (!this.emailIsValid(value)) {
|
|
51
|
-
return {
|
|
52
|
-
skyEmail: {
|
|
53
|
-
invalid: control.value,
|
|
54
|
-
},
|
|
55
|
-
};
|
|
45
|
+
if (!value || this.emailIsValid(value)) {
|
|
46
|
+
return null;
|
|
56
47
|
}
|
|
48
|
+
return {
|
|
49
|
+
skyEmail: {
|
|
50
|
+
invalid: control.value,
|
|
51
|
+
},
|
|
52
|
+
};
|
|
57
53
|
}
|
|
58
54
|
emailIsValid(email) {
|
|
59
55
|
return SkyValidation.isEmail(email);
|
|
@@ -90,9 +86,7 @@ const SKY_URL_VALIDATION_VALIDATOR = {
|
|
|
90
86
|
multi: true,
|
|
91
87
|
};
|
|
92
88
|
/**
|
|
93
|
-
*
|
|
94
|
-
* If users enters values that are not valid URLs, an error message appears.
|
|
95
|
-
* This directive uses `NgModel` to bind data.
|
|
89
|
+
* Adds URL validation to an input element. The directive uses `NgModel` to bind data.
|
|
96
90
|
*/
|
|
97
91
|
class SkyUrlValidationDirective {
|
|
98
92
|
constructor() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-validation.mjs","sources":["../../../../../libs/components/validation/src/lib/modules/validation/validation.ts","../../../../../libs/components/validation/src/lib/modules/email-validation/email-validation.directive.ts","../../../../../libs/components/validation/src/lib/modules/email-validation/email-validation.module.ts","../../../../../libs/components/validation/src/lib/modules/url-validation/url-validation.directive.ts","../../../../../libs/components/validation/src/lib/modules/url-validation/url-validation.module.ts","../../../../../libs/components/validation/src/lib/modules/validators/validators.ts","../../../../../libs/components/validation/src/skyux-validation.ts"],"sourcesContent":["import isURL from 'validator/es/lib/isURL';\n\nimport { SkyUrlValidationOptions } from '../url-validation/url-validation-options';\n\nexport abstract class SkyValidation {\n public static isEmail(emailAddress: string): boolean {\n // The regex was obtained from http://emailregex.com/\n // which claims to correctly handle ~99% of all email addresses.\n const regex =\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return regex.test(emailAddress);\n }\n\n public static isUrl(\n value: unknown,\n options?: SkyUrlValidationOptions\n ): boolean {\n if (typeof value !== 'string') {\n return false;\n }\n\n const url: string = value;\n\n const regex = /^((http|https):\\/\\/)?([\\w-]+\\.)+[\\w-]+/i;\n if (options) {\n switch (options.rulesetVersion) {\n case 1:\n return regex.test(url);\n case 2:\n // we are using the `validator` package's default options\n return isURL(url);\n }\n } else {\n return regex.test(url);\n }\n }\n}\n","import { Directive, forwardRef } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, Validator } from '@angular/forms';\n\nimport { SkyValidation } from '../validation/validation';\n\nconst SKY_EMAIL_VALIDATION_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyEmailValidationDirective),\n multi: true,\n};\n\n/**\n * Creates an input to validate email addresses. Place this attribute on an `input` element.\n * If users enter values that are not valid email addresses, an error message appears.\n * The directive uses `NgModel` to bind data.\n */\n@Directive({\n selector: '[skyEmailValidation]',\n providers: [SKY_EMAIL_VALIDATION_VALIDATOR],\n})\nexport class SkyEmailValidationDirective implements Validator {\n public validate(control: AbstractControl): { [key: string]: any } {\n const value = control.value;\n\n if (!value) {\n return;\n }\n\n if (!this.emailIsValid(value)) {\n return {\n skyEmail: {\n invalid: control.value,\n },\n };\n }\n }\n\n public emailIsValid(email: string): boolean {\n return SkyValidation.isEmail(email);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyEmailValidationDirective } from './email-validation.directive';\n\n@NgModule({\n declarations: [SkyEmailValidationDirective],\n imports: [FormsModule],\n exports: [SkyEmailValidationDirective],\n})\nexport class SkyEmailValidationModule {}\n","import { Directive, Input, forwardRef } from '@angular/core';\nimport {\n AbstractControl,\n NG_VALIDATORS,\n ValidationErrors,\n Validator,\n} from '@angular/forms';\n\nimport { SkyValidation } from '../validation/validation';\n\nimport { SkyUrlValidationOptions } from './url-validation-options';\n\n// tslint:disable:no-forward-ref no-use-before-declare\nconst SKY_URL_VALIDATION_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyUrlValidationDirective),\n multi: true,\n};\n\n/**\n * Creates an input to validate URLs. Place this attribute on an `input` element.\n * If users enters values that are not valid URLs, an error message appears.\n * This directive uses `NgModel` to bind data.\n */\n@Directive({\n selector: '[skyUrlValidation]',\n providers: [SKY_URL_VALIDATION_VALIDATOR],\n})\nexport class SkyUrlValidationDirective implements Validator {\n /**\n * Specifies configuration options for the URL validation component.\n */\n @Input()\n public set skyUrlValidation(value: SkyUrlValidationOptions | undefined) {\n this._skyUrlValidationOptions = value;\n this._validatorChange();\n }\n\n private _skyUrlValidationOptions: SkyUrlValidationOptions | undefined;\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n private _validatorChange = () => {};\n\n public validate(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return null;\n }\n\n return SkyValidation.isUrl(value, this._skyUrlValidationOptions)\n ? null\n : { skyUrl: { invalid: value } };\n }\n\n public registerOnValidatorChange(fn: () => void): void {\n this._validatorChange = fn;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyUrlValidationDirective } from './url-validation.directive';\n\n@NgModule({\n declarations: [SkyUrlValidationDirective],\n imports: [FormsModule],\n exports: [SkyUrlValidationDirective],\n})\nexport class SkyUrlValidationModule {}\n","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';\n\nimport { SkyUrlValidationOptions } from '../url-validation/url-validation-options';\nimport { SkyValidation } from '../validation/validation';\n\n// Need to add the following to classes which contain static methods.\n// See: https://github.com/ng-packagr/ng-packagr/issues/641\n// @dynamic\nexport class SkyValidators {\n /**\n * Validates email addresses in reactive forms. Add this validator directly to the form control\n * model in the component class. If users enter values that are not valid email addresses, the\n * validator throws an error. Since this is a sync validator, it returns a set of validation\n * errors or `null` immediately when users enter values.\n */\n public static email(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return null;\n }\n\n return SkyValidation.isEmail(value)\n ? null\n : { skyEmail: { invalid: value } };\n }\n\n /**\n * Validates URLs in reactive forms. Add this validator directly to the form control model in\n * the component class. If users enter values that are not valid URLs, the validator throws an\n * error. Since this is a sync validator, it returns a set of validation errors or `null`\n * immediately when users enter values.\n */\n public static url(abstractControl: AbstractControl): ValidationErrors | null;\n\n /**\n * Validates URLs in reactive forms. Add this validator with ruleset parameters directly to\n * the form control model in the component class. If users enter values that are not valid\n * URLs, the validator throws an error. Since this is a sync validator, it returns a set of\n * validation errors or `null` immediately when users enter values.\n */\n public static url(\n skyUrlValidationOptions: SkyUrlValidationOptions\n ): ValidatorFn | null;\n\n public static url(\n value: AbstractControl | SkyUrlValidationOptions\n ): ValidatorFn | ValidationErrors | null {\n const typeTester = value as SkyUrlValidationOptions;\n if (typeTester.rulesetVersion === undefined) {\n // there are no SkyUrlValidationOptions passed in, so return ValidationErrors | null\n const abstractControl = value as AbstractControl;\n const abstractControlValue = abstractControl.value;\n if (!abstractControlValue) {\n return null;\n }\n return SkyValidation.isUrl(abstractControlValue)\n ? null\n : { skyUrl: { invalid: abstractControlValue } };\n } else {\n // there are SkyUrlValidationOptions passed in, so return ValidatorFn\n const skyUrlValidationOptions = value as SkyUrlValidationOptions;\n return (abstractControl: AbstractControl): ValidationErrors | null => {\n const abstractControlValue = abstractControl.value;\n if (!abstractControlValue) {\n return null;\n }\n\n return SkyValidation.isUrl(\n abstractControl.value,\n skyUrlValidationOptions\n )\n ? null\n : { skyUrl: { invalid: abstractControl.value } };\n };\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-validation.mjs","sources":["../../../../../libs/components/validation/src/lib/modules/validation/validation.ts","../../../../../libs/components/validation/src/lib/modules/email-validation/email-validation.directive.ts","../../../../../libs/components/validation/src/lib/modules/email-validation/email-validation.module.ts","../../../../../libs/components/validation/src/lib/modules/url-validation/url-validation.directive.ts","../../../../../libs/components/validation/src/lib/modules/url-validation/url-validation.module.ts","../../../../../libs/components/validation/src/lib/modules/validators/validators.ts","../../../../../libs/components/validation/src/skyux-validation.ts"],"sourcesContent":["import isURL from 'validator/es/lib/isURL';\n\nimport { SkyUrlValidationOptions } from '../url-validation/url-validation-options';\n\nexport abstract class SkyValidation {\n public static isEmail(emailAddress: string): boolean {\n // The regex was obtained from http://emailregex.com/\n // which claims to correctly handle ~99% of all email addresses.\n const regex =\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return regex.test(emailAddress);\n }\n\n public static isUrl(\n value: unknown,\n options?: SkyUrlValidationOptions\n ): boolean {\n if (typeof value !== 'string') {\n return false;\n }\n\n const url: string = value;\n\n const regex = /^((http|https):\\/\\/)?([\\w-]+\\.)+[\\w-]+/i;\n if (options) {\n switch (options.rulesetVersion) {\n case 1:\n return regex.test(url);\n case 2:\n // we are using the `validator` package's default options\n return isURL(url);\n }\n } else {\n return regex.test(url);\n }\n }\n}\n","import { Directive, forwardRef } from '@angular/core';\nimport {\n AbstractControl,\n NG_VALIDATORS,\n ValidationErrors,\n Validator,\n} from '@angular/forms';\n\nimport { SkyValidation } from '../validation/validation';\n\nconst SKY_EMAIL_VALIDATION_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyEmailValidationDirective),\n multi: true,\n};\n\n/**\n * Adds email address validation to an input element. The directive uses `NgModel` to bind data.\n */\n@Directive({\n selector: '[skyEmailValidation]',\n providers: [SKY_EMAIL_VALIDATION_VALIDATOR],\n})\nexport class SkyEmailValidationDirective implements Validator {\n public validate(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value || this.emailIsValid(value)) {\n return null;\n }\n\n return {\n skyEmail: {\n invalid: control.value,\n },\n };\n }\n\n public emailIsValid(email: string): boolean {\n return SkyValidation.isEmail(email);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyEmailValidationDirective } from './email-validation.directive';\n\n@NgModule({\n declarations: [SkyEmailValidationDirective],\n imports: [FormsModule],\n exports: [SkyEmailValidationDirective],\n})\nexport class SkyEmailValidationModule {}\n","import { Directive, Input, forwardRef } from '@angular/core';\nimport {\n AbstractControl,\n NG_VALIDATORS,\n ValidationErrors,\n Validator,\n} from '@angular/forms';\n\nimport { SkyValidation } from '../validation/validation';\n\nimport { SkyUrlValidationOptions } from './url-validation-options';\n\n// tslint:disable:no-forward-ref no-use-before-declare\nconst SKY_URL_VALIDATION_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyUrlValidationDirective),\n multi: true,\n};\n\n/**\n * Adds URL validation to an input element. The directive uses `NgModel` to bind data.\n */\n@Directive({\n selector: '[skyUrlValidation]',\n providers: [SKY_URL_VALIDATION_VALIDATOR],\n})\nexport class SkyUrlValidationDirective implements Validator {\n /**\n * Specifies configuration options for the URL validation component.\n */\n @Input()\n public set skyUrlValidation(value: SkyUrlValidationOptions | undefined) {\n this._skyUrlValidationOptions = value;\n this._validatorChange();\n }\n\n private _skyUrlValidationOptions: SkyUrlValidationOptions | undefined;\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n private _validatorChange = () => {};\n\n public validate(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return null;\n }\n\n return SkyValidation.isUrl(value, this._skyUrlValidationOptions)\n ? null\n : { skyUrl: { invalid: value } };\n }\n\n public registerOnValidatorChange(fn: () => void): void {\n this._validatorChange = fn;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyUrlValidationDirective } from './url-validation.directive';\n\n@NgModule({\n declarations: [SkyUrlValidationDirective],\n imports: [FormsModule],\n exports: [SkyUrlValidationDirective],\n})\nexport class SkyUrlValidationModule {}\n","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';\n\nimport { SkyUrlValidationOptions } from '../url-validation/url-validation-options';\nimport { SkyValidation } from '../validation/validation';\n\n// Need to add the following to classes which contain static methods.\n// See: https://github.com/ng-packagr/ng-packagr/issues/641\n// @dynamic\nexport class SkyValidators {\n /**\n * Validates email addresses in reactive forms. Add this validator directly to the form control\n * model in the component class. If users enter values that are not valid email addresses, the\n * validator throws an error. Since this is a sync validator, it returns a set of validation\n * errors or `null` immediately when users enter values.\n */\n public static email(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return null;\n }\n\n return SkyValidation.isEmail(value)\n ? null\n : { skyEmail: { invalid: value } };\n }\n\n /**\n * Validates URLs in reactive forms. Add this validator directly to the form control model in\n * the component class. If users enter values that are not valid URLs, the validator throws an\n * error. Since this is a sync validator, it returns a set of validation errors or `null`\n * immediately when users enter values.\n */\n public static url(abstractControl: AbstractControl): ValidationErrors | null;\n\n /**\n * Validates URLs in reactive forms. Add this validator with ruleset parameters directly to\n * the form control model in the component class. If users enter values that are not valid\n * URLs, the validator throws an error. Since this is a sync validator, it returns a set of\n * validation errors or `null` immediately when users enter values.\n */\n public static url(\n skyUrlValidationOptions: SkyUrlValidationOptions\n ): ValidatorFn | null;\n\n public static url(\n value: AbstractControl | SkyUrlValidationOptions\n ): ValidatorFn | ValidationErrors | null {\n const typeTester = value as SkyUrlValidationOptions;\n if (typeTester.rulesetVersion === undefined) {\n // there are no SkyUrlValidationOptions passed in, so return ValidationErrors | null\n const abstractControl = value as AbstractControl;\n const abstractControlValue = abstractControl.value;\n if (!abstractControlValue) {\n return null;\n }\n return SkyValidation.isUrl(abstractControlValue)\n ? null\n : { skyUrl: { invalid: abstractControlValue } };\n } else {\n // there are SkyUrlValidationOptions passed in, so return ValidatorFn\n const skyUrlValidationOptions = value as SkyUrlValidationOptions;\n return (abstractControl: AbstractControl): ValidationErrors | null => {\n const abstractControlValue = abstractControl.value;\n if (!abstractControlValue) {\n return null;\n }\n\n return SkyValidation.isUrl(\n abstractControl.value,\n skyUrlValidationOptions\n )\n ? null\n : { skyUrl: { invalid: abstractControl.value } };\n };\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import { AbstractControl, Validator } from '@angular/forms';
|
|
1
|
+
import { AbstractControl, ValidationErrors, Validator } from '@angular/forms';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
* If users enter values that are not valid email addresses, an error message appears.
|
|
6
|
-
* The directive uses `NgModel` to bind data.
|
|
4
|
+
* Adds email address validation to an input element. The directive uses `NgModel` to bind data.
|
|
7
5
|
*/
|
|
8
6
|
export declare class SkyEmailValidationDirective implements Validator {
|
|
9
|
-
validate(control: AbstractControl):
|
|
10
|
-
[key: string]: any;
|
|
11
|
-
};
|
|
7
|
+
validate(control: AbstractControl): ValidationErrors | null;
|
|
12
8
|
emailIsValid(email: string): boolean;
|
|
13
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<SkyEmailValidationDirective, never>;
|
|
14
10
|
static ɵdir: i0.ɵɵDirectiveDeclaration<SkyEmailValidationDirective, "[skyEmailValidation]", never, {}, {}, never>;
|
|
@@ -2,9 +2,7 @@ import { AbstractControl, ValidationErrors, Validator } from '@angular/forms';
|
|
|
2
2
|
import { SkyUrlValidationOptions } from './url-validation-options';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
6
|
-
* If users enters values that are not valid URLs, an error message appears.
|
|
7
|
-
* This directive uses `NgModel` to bind data.
|
|
5
|
+
* Adds URL validation to an input element. The directive uses `NgModel` to bind data.
|
|
8
6
|
*/
|
|
9
7
|
export declare class SkyUrlValidationDirective implements Validator {
|
|
10
8
|
/**
|