@skyux/validation 4.0.0 → 5.0.0-beta.2

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 (39) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -1
  3. package/bundles/skyux-validation.umd.js +110 -256
  4. package/bundles/skyux-validation.umd.js.map +1 -1
  5. package/documentation.json +905 -0
  6. package/esm2015/modules/email-validation/email-validation.directive.js +18 -11
  7. package/esm2015/modules/email-validation/email-validation.module.js +22 -17
  8. package/esm2015/modules/url-validation/url-validation.directive.js +18 -11
  9. package/esm2015/modules/url-validation/url-validation.module.js +22 -17
  10. package/esm2015/modules/validation/validation.js +1 -1
  11. package/esm2015/modules/validators/validators.js +15 -1
  12. package/esm2015/public-api.js +7 -0
  13. package/esm2015/skyux-validation.js +2 -4
  14. package/fesm2015/skyux-validation.js +88 -46
  15. package/fesm2015/skyux-validation.js.map +1 -1
  16. package/modules/email-validation/email-validation.directive.d.ts +8 -0
  17. package/modules/email-validation/email-validation.module.d.ts +6 -0
  18. package/modules/url-validation/url-validation.directive.d.ts +8 -0
  19. package/modules/url-validation/url-validation.module.d.ts +6 -0
  20. package/modules/validators/validators.d.ts +14 -0
  21. package/package.json +9 -23
  22. package/{public_api.d.ts → public-api.d.ts} +2 -0
  23. package/skyux-validation.d.ts +2 -3
  24. package/CHANGELOG.md +0 -44
  25. package/bundles/skyux-validation.umd.min.js +0 -16
  26. package/bundles/skyux-validation.umd.min.js.map +0 -1
  27. package/esm2015/public_api.js +0 -5
  28. package/esm5/modules/email-validation/email-validation.directive.js +0 -40
  29. package/esm5/modules/email-validation/email-validation.module.js +0 -24
  30. package/esm5/modules/url-validation/url-validation.directive.js +0 -40
  31. package/esm5/modules/url-validation/url-validation.module.js +0 -24
  32. package/esm5/modules/validation/validation.js +0 -18
  33. package/esm5/modules/validators/validators.js +0 -25
  34. package/esm5/public_api.js +0 -5
  35. package/esm5/skyux-validation.js +0 -7
  36. package/fesm5/skyux-validation.js +0 -158
  37. package/fesm5/skyux-validation.js.map +0 -1
  38. package/skyux-validation.metadata.json +0 -1
  39. package/src/assets/locales/resources_en_US.json +0 -1
@@ -1,7 +1,7 @@
1
- import { __decorate } from "tslib";
2
1
  import { Directive, forwardRef } from '@angular/core';
3
2
  import { NG_VALIDATORS } from '@angular/forms';
4
3
  import { SkyValidation } from '../validation/validation';
4
+ import * as i0 from "@angular/core";
5
5
  // tslint:disable:no-forward-ref no-use-before-declare
6
6
  const SKY_EMAIL_VALIDATION_VALIDATOR = {
7
7
  provide: NG_VALIDATORS,
@@ -9,7 +9,12 @@ const SKY_EMAIL_VALIDATION_VALIDATOR = {
9
9
  multi: true
10
10
  };
11
11
  // tslint:enable
12
- let SkyEmailValidationDirective = class SkyEmailValidationDirective {
12
+ /**
13
+ * Creates an input to validate email addresses. Place this attribute on an `input` element.
14
+ * If users enter values that are not valid email addresses, an error message appears.
15
+ * The directive uses `NgModel` to bind data.
16
+ */
17
+ export class SkyEmailValidationDirective {
13
18
  validate(control) {
14
19
  let value = control.value;
15
20
  if (!value) {
@@ -26,12 +31,14 @@ let SkyEmailValidationDirective = class SkyEmailValidationDirective {
26
31
  emailIsValid(email) {
27
32
  return SkyValidation.isEmail(email);
28
33
  }
29
- };
30
- SkyEmailValidationDirective = __decorate([
31
- Directive({
32
- selector: '[skyEmailValidation]',
33
- providers: [SKY_EMAIL_VALIDATION_VALIDATOR]
34
- })
35
- ], SkyEmailValidationDirective);
36
- export { SkyEmailValidationDirective };
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtdmFsaWRhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2t5dXgvdmFsaWRhdGlvbi8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvZW1haWwtdmFsaWRhdGlvbi9lbWFpbC12YWxpZGF0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1gsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVMLGFBQWEsRUFFZCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCxhQUFhLEVBQ2QsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxzREFBc0Q7QUFDdEQsTUFBTSw4QkFBOEIsR0FBRztJQUNyQyxPQUFPLEVBQUUsYUFBYTtJQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDJCQUEyQixDQUFDO0lBQzFELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQUNGLGdCQUFnQjtBQU9oQixJQUFhLDJCQUEyQixHQUF4QyxNQUFhLDJCQUEyQjtJQUUvQixRQUFRLENBQUMsT0FBd0I7UUFDdEMsSUFBSSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUUxQixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDN0IsT0FBTztnQkFDTCxVQUFVLEVBQUU7b0JBQ1YsT0FBTyxFQUFFLE9BQU8sQ0FBQyxLQUFLO2lCQUN2QjthQUNGLENBQUM7U0FDSDtJQUVILENBQUM7SUFFTSxZQUFZLENBQUMsS0FBYTtRQUMvQixPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEMsQ0FBQztDQUNGLENBQUE7QUF0QlksMkJBQTJCO0lBTHZDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxzQkFBc0I7UUFDaEMsU0FBUyxFQUFFLENBQUMsOEJBQThCLENBQUM7S0FDNUMsQ0FBQztHQUVXLDJCQUEyQixDQXNCdkM7U0F0QlksMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBmb3J3YXJkUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBWYWxpZGF0b3IsXG4gIE5HX1ZBTElEQVRPUlMsXG4gIEFic3RyYWN0Q29udHJvbFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7XG4gIFNreVZhbGlkYXRpb25cbn0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uJztcblxuLy8gdHNsaW50OmRpc2FibGU6bm8tZm9yd2FyZC1yZWYgbm8tdXNlLWJlZm9yZS1kZWNsYXJlXG5jb25zdCBTS1lfRU1BSUxfVkFMSURBVElPTl9WQUxJREFUT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreUVtYWlsVmFsaWRhdGlvbkRpcmVjdGl2ZSksXG4gIG11bHRpOiB0cnVlXG59O1xuLy8gdHNsaW50OmVuYWJsZVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2t5RW1haWxWYWxpZGF0aW9uXScsXG4gIHByb3ZpZGVyczogW1NLWV9FTUFJTF9WQUxJREFUSU9OX1ZBTElEQVRPUl1cbn0pXG5cbmV4cG9ydCBjbGFzcyBTa3lFbWFpbFZhbGlkYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBWYWxpZGF0b3Ige1xuXG4gIHB1YmxpYyB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7W2tleTogc3RyaW5nXTogYW55fSB7XG4gICAgbGV0IHZhbHVlID0gY29udHJvbC52YWx1ZTtcblxuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuZW1haWxJc1ZhbGlkKHZhbHVlKSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3NreUVtYWlsJzoge1xuICAgICAgICAgIGludmFsaWQ6IGNvbnRyb2wudmFsdWVcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9XG5cbiAgfVxuXG4gIHB1YmxpYyBlbWFpbElzVmFsaWQoZW1haWw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBTa3lWYWxpZGF0aW9uLmlzRW1haWwoZW1haWwpO1xuICB9XG59XG4iXX0=
34
+ }
35
+ SkyEmailValidationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
36
+ SkyEmailValidationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.6", type: SkyEmailValidationDirective, selector: "[skyEmailValidation]", providers: [SKY_EMAIL_VALIDATION_VALIDATOR], ngImport: i0 });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationDirective, decorators: [{
38
+ type: Directive,
39
+ args: [{
40
+ selector: '[skyEmailValidation]',
41
+ providers: [SKY_EMAIL_VALIDATION_VALIDATOR]
42
+ }]
43
+ }] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtdmFsaWRhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWxpZGF0aW9uL3NyYy9tb2R1bGVzL2VtYWlsLXZhbGlkYXRpb24vZW1haWwtdmFsaWRhdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1gsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVMLGFBQWEsRUFFZCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCxhQUFhLEVBQ2QsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFbEMsc0RBQXNEO0FBQ3RELE1BQU0sOEJBQThCLEdBQUc7SUFDckMsT0FBTyxFQUFFLGFBQWE7SUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztJQUMxRCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFDRixnQkFBZ0I7QUFFaEI7Ozs7R0FJRztBQU1ILE1BQU0sT0FBTywyQkFBMkI7SUFFL0IsUUFBUSxDQUFDLE9BQXdCO1FBQ3RDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFFMUIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzdCLE9BQU87Z0JBQ0wsVUFBVSxFQUFFO29CQUNWLE9BQU8sRUFBRSxPQUFPLENBQUMsS0FBSztpQkFDdkI7YUFDRixDQUFDO1NBQ0g7SUFFSCxDQUFDO0lBRU0sWUFBWSxDQUFDLEtBQWE7UUFDL0IsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7O3dIQXJCVSwyQkFBMkI7NEdBQTNCLDJCQUEyQiwrQ0FIM0IsQ0FBQyw4QkFBOEIsQ0FBQzsyRkFHaEMsMkJBQTJCO2tCQUx2QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixDQUFDO2lCQUM1QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgZm9yd2FyZFJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgVmFsaWRhdG9yLFxuICBOR19WQUxJREFUT1JTLFxuICBBYnN0cmFjdENvbnRyb2xcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge1xuICBTa3lWYWxpZGF0aW9uXG59IGZyb20gJy4uL3ZhbGlkYXRpb24vdmFsaWRhdGlvbic7XG5cbi8vIHRzbGludDpkaXNhYmxlOm5vLWZvcndhcmQtcmVmIG5vLXVzZS1iZWZvcmUtZGVjbGFyZVxuY29uc3QgU0tZX0VNQUlMX1ZBTElEQVRJT05fVkFMSURBVE9SID0ge1xuICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTa3lFbWFpbFZhbGlkYXRpb25EaXJlY3RpdmUpLFxuICBtdWx0aTogdHJ1ZVxufTtcbi8vIHRzbGludDplbmFibGVcblxuLyoqXG4gKiBDcmVhdGVzIGFuIGlucHV0IHRvIHZhbGlkYXRlIGVtYWlsIGFkZHJlc3Nlcy4gUGxhY2UgdGhpcyBhdHRyaWJ1dGUgb24gYW4gYGlucHV0YCBlbGVtZW50LlxuICogSWYgdXNlcnMgZW50ZXIgdmFsdWVzIHRoYXQgYXJlIG5vdCB2YWxpZCBlbWFpbCBhZGRyZXNzZXMsIGFuIGVycm9yIG1lc3NhZ2UgYXBwZWFycy5cbiAqIFRoZSBkaXJlY3RpdmUgdXNlcyBgTmdNb2RlbGAgdG8gYmluZCBkYXRhLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2t5RW1haWxWYWxpZGF0aW9uXScsXG4gIHByb3ZpZGVyczogW1NLWV9FTUFJTF9WQUxJREFUSU9OX1ZBTElEQVRPUl1cbn0pXG5cbmV4cG9ydCBjbGFzcyBTa3lFbWFpbFZhbGlkYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBWYWxpZGF0b3Ige1xuXG4gIHB1YmxpYyB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7W2tleTogc3RyaW5nXTogYW55fSB7XG4gICAgbGV0IHZhbHVlID0gY29udHJvbC52YWx1ZTtcblxuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuZW1haWxJc1ZhbGlkKHZhbHVlKSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3NreUVtYWlsJzoge1xuICAgICAgICAgIGludmFsaWQ6IGNvbnRyb2wudmFsdWVcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9XG5cbiAgfVxuXG4gIHB1YmxpYyBlbWFpbElzVmFsaWQoZW1haWw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBTa3lWYWxpZGF0aW9uLmlzRW1haWwoZW1haWwpO1xuICB9XG59XG4iXX0=
@@ -1,21 +1,26 @@
1
- import { __decorate } from "tslib";
2
1
  import { NgModule } from '@angular/core';
3
2
  import { FormsModule } from '@angular/forms';
4
3
  import { SkyEmailValidationDirective } from './email-validation.directive';
5
- let SkyEmailValidationModule = class SkyEmailValidationModule {
6
- };
7
- SkyEmailValidationModule = __decorate([
8
- NgModule({
9
- declarations: [
10
- SkyEmailValidationDirective
11
- ],
12
- imports: [
4
+ import * as i0 from "@angular/core";
5
+ export class SkyEmailValidationModule {
6
+ }
7
+ SkyEmailValidationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ SkyEmailValidationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationModule, declarations: [SkyEmailValidationDirective], imports: [FormsModule], exports: [SkyEmailValidationDirective] });
9
+ SkyEmailValidationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationModule, imports: [[
13
10
  FormsModule
14
- ],
15
- exports: [
16
- SkyEmailValidationDirective
17
- ]
18
- })
19
- ], SkyEmailValidationModule);
20
- export { SkyEmailValidationModule };
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtdmFsaWRhdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2t5dXgvdmFsaWRhdGlvbi8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvZW1haWwtdmFsaWRhdGlvbi9lbWFpbC12YWxpZGF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsV0FBVyxFQUNaLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFhM0UsSUFBYSx3QkFBd0IsR0FBckMsTUFBYSx3QkFBd0I7Q0FBSSxDQUFBO0FBQTVCLHdCQUF3QjtJQVhwQyxRQUFRLENBQUM7UUFDTixZQUFZLEVBQUU7WUFDViwyQkFBMkI7U0FDOUI7UUFDRCxPQUFPLEVBQUU7WUFDTCxXQUFXO1NBQ2Q7UUFDRCxPQUFPLEVBQUU7WUFDTCwyQkFBMkI7U0FDOUI7S0FDSixDQUFDO0dBQ1csd0JBQXdCLENBQUk7U0FBNUIsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTmdNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBGb3Jtc01vZHVsZVxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFNreUVtYWlsVmFsaWRhdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4vZW1haWwtdmFsaWRhdGlvbi5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBTa3lFbWFpbFZhbGlkYXRpb25EaXJlY3RpdmVcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgRm9ybXNNb2R1bGVcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgU2t5RW1haWxWYWxpZGF0aW9uRGlyZWN0aXZlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBTa3lFbWFpbFZhbGlkYXRpb25Nb2R1bGUgeyB9XG4iXX0=
11
+ ]] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ declarations: [
16
+ SkyEmailValidationDirective
17
+ ],
18
+ imports: [
19
+ FormsModule
20
+ ],
21
+ exports: [
22
+ SkyEmailValidationDirective
23
+ ]
24
+ }]
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwtdmFsaWRhdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWxpZGF0aW9uL3NyYy9tb2R1bGVzL2VtYWlsLXZhbGlkYXRpb24vZW1haWwtdmFsaWRhdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsV0FBVyxFQUNaLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBYTNFLE1BQU0sT0FBTyx3QkFBd0I7O3FIQUF4Qix3QkFBd0I7c0hBQXhCLHdCQUF3QixpQkFUN0IsMkJBQTJCLGFBRzNCLFdBQVcsYUFHWCwyQkFBMkI7c0hBR3RCLHdCQUF3QixZQVB4QjtZQUNMLFdBQVc7U0FDZDsyRkFLUSx3QkFBd0I7a0JBWHBDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFO3dCQUNWLDJCQUEyQjtxQkFDOUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLFdBQVc7cUJBQ2Q7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLDJCQUEyQjtxQkFDOUI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBOZ01vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEZvcm1zTW9kdWxlXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgU2t5RW1haWxWYWxpZGF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9lbWFpbC12YWxpZGF0aW9uLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIFNreUVtYWlsVmFsaWRhdGlvbkRpcmVjdGl2ZVxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBGb3Jtc01vZHVsZVxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBTa3lFbWFpbFZhbGlkYXRpb25EaXJlY3RpdmVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFNreUVtYWlsVmFsaWRhdGlvbk1vZHVsZSB7IH1cbiJdfQ==
@@ -1,7 +1,7 @@
1
- import { __decorate } from "tslib";
2
1
  import { Directive, forwardRef } from '@angular/core';
3
2
  import { NG_VALIDATORS } from '@angular/forms';
4
3
  import { SkyValidation } from '../validation/validation';
4
+ import * as i0 from "@angular/core";
5
5
  // tslint:disable:no-forward-ref no-use-before-declare
6
6
  const SKY_URL_VALIDATION_VALIDATOR = {
7
7
  provide: NG_VALIDATORS,
@@ -9,7 +9,12 @@ const SKY_URL_VALIDATION_VALIDATOR = {
9
9
  multi: true
10
10
  };
11
11
  // tslint:enable
12
- let SkyUrlValidationDirective = class SkyUrlValidationDirective {
12
+ /**
13
+ * Creates an input to validate URLs. Place this attribute on an `input` element.
14
+ * If users enters values that are not valid URLs, an error message appears.
15
+ * This directive uses `NgModel` to bind data.
16
+ */
17
+ export class SkyUrlValidationDirective {
13
18
  validate(control) {
14
19
  const value = control.value;
15
20
  if (!value) {
@@ -26,12 +31,14 @@ let SkyUrlValidationDirective = class SkyUrlValidationDirective {
26
31
  urlIsValid(url) {
27
32
  return SkyValidation.isUrl(url);
28
33
  }
29
- };
30
- SkyUrlValidationDirective = __decorate([
31
- Directive({
32
- selector: '[skyUrlValidation]',
33
- providers: [SKY_URL_VALIDATION_VALIDATOR]
34
- })
35
- ], SkyUrlValidationDirective);
36
- export { SkyUrlValidationDirective };
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXZhbGlkYXRpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNreXV4L3ZhbGlkYXRpb24vIiwic291cmNlcyI6WyJtb2R1bGVzL3VybC12YWxpZGF0aW9uL3VybC12YWxpZGF0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1gsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVMLGFBQWEsRUFFZCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCxhQUFhLEVBQ2QsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxzREFBc0Q7QUFDdEQsTUFBTSw0QkFBNEIsR0FBRztJQUNuQyxPQUFPLEVBQUUsYUFBYTtJQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO0lBQ3hELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQUNGLGdCQUFnQjtBQU1oQixJQUFhLHlCQUF5QixHQUF0QyxNQUFhLHlCQUF5QjtJQUM3QixRQUFRLENBQUMsT0FBd0I7UUFDdEMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUU1QixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDM0IsT0FBTztnQkFDTCxRQUFRLEVBQUU7b0JBQ1IsT0FBTyxFQUFFLE9BQU8sQ0FBQyxLQUFLO2lCQUN2QjthQUNGLENBQUM7U0FDSDtJQUNILENBQUM7SUFFTSxVQUFVLENBQUMsR0FBVztRQUMzQixPQUFPLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQztDQUNGLENBQUE7QUFwQlkseUJBQXlCO0lBTHJDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxvQkFBb0I7UUFDOUIsU0FBUyxFQUFFLENBQUMsNEJBQTRCLENBQUM7S0FDMUMsQ0FBQztHQUVXLHlCQUF5QixDQW9CckM7U0FwQlkseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBmb3J3YXJkUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBWYWxpZGF0b3IsXG4gIE5HX1ZBTElEQVRPUlMsXG4gIEFic3RyYWN0Q29udHJvbFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7XG4gIFNreVZhbGlkYXRpb25cbn0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uJztcblxuLy8gdHNsaW50OmRpc2FibGU6bm8tZm9yd2FyZC1yZWYgbm8tdXNlLWJlZm9yZS1kZWNsYXJlXG5jb25zdCBTS1lfVVJMX1ZBTElEQVRJT05fVkFMSURBVE9SID0ge1xuICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTa3lVcmxWYWxpZGF0aW9uRGlyZWN0aXZlKSxcbiAgbXVsdGk6IHRydWVcbn07XG4vLyB0c2xpbnQ6ZW5hYmxlXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2t5VXJsVmFsaWRhdGlvbl0nLFxuICBwcm92aWRlcnM6IFtTS1lfVVJMX1ZBTElEQVRJT05fVkFMSURBVE9SXVxufSlcblxuZXhwb3J0IGNsYXNzIFNreVVybFZhbGlkYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBWYWxpZGF0b3Ige1xuICBwdWJsaWMgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKToge1trZXk6IHN0cmluZ106IGFueX0ge1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbC52YWx1ZTtcblxuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMudXJsSXNWYWxpZCh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdza3lVcmwnOiB7XG4gICAgICAgICAgaW52YWxpZDogY29udHJvbC52YWx1ZVxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB1cmxJc1ZhbGlkKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIFNreVZhbGlkYXRpb24uaXNVcmwodXJsKTtcbiAgfVxufVxuIl19
34
+ }
35
+ SkyUrlValidationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
36
+ SkyUrlValidationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.6", type: SkyUrlValidationDirective, selector: "[skyUrlValidation]", providers: [SKY_URL_VALIDATION_VALIDATOR], ngImport: i0 });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationDirective, decorators: [{
38
+ type: Directive,
39
+ args: [{
40
+ selector: '[skyUrlValidation]',
41
+ providers: [SKY_URL_VALIDATION_VALIDATOR]
42
+ }]
43
+ }] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXZhbGlkYXRpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsaWRhdGlvbi9zcmMvbW9kdWxlcy91cmwtdmFsaWRhdGlvbi91cmwtdmFsaWRhdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1gsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVMLGFBQWEsRUFFZCxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCxhQUFhLEVBQ2QsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFbEMsc0RBQXNEO0FBQ3RELE1BQU0sNEJBQTRCLEdBQUc7SUFDbkMsT0FBTyxFQUFFLGFBQWE7SUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztJQUN4RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFDRixnQkFBZ0I7QUFFaEI7Ozs7R0FJRztBQU1ILE1BQU0sT0FBTyx5QkFBeUI7SUFDN0IsUUFBUSxDQUFDLE9BQXdCO1FBQ3RDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFFNUIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzNCLE9BQU87Z0JBQ0wsUUFBUSxFQUFFO29CQUNSLE9BQU8sRUFBRSxPQUFPLENBQUMsS0FBSztpQkFDdkI7YUFDRixDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRU0sVUFBVSxDQUFDLEdBQVc7UUFDM0IsT0FBTyxhQUFhLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7O3NIQW5CVSx5QkFBeUI7MEdBQXpCLHlCQUF5Qiw2Q0FIekIsQ0FBQyw0QkFBNEIsQ0FBQzsyRkFHOUIseUJBQXlCO2tCQUxyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFNBQVMsRUFBRSxDQUFDLDRCQUE0QixDQUFDO2lCQUMxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgZm9yd2FyZFJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgVmFsaWRhdG9yLFxuICBOR19WQUxJREFUT1JTLFxuICBBYnN0cmFjdENvbnRyb2xcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge1xuICBTa3lWYWxpZGF0aW9uXG59IGZyb20gJy4uL3ZhbGlkYXRpb24vdmFsaWRhdGlvbic7XG5cbi8vIHRzbGludDpkaXNhYmxlOm5vLWZvcndhcmQtcmVmIG5vLXVzZS1iZWZvcmUtZGVjbGFyZVxuY29uc3QgU0tZX1VSTF9WQUxJREFUSU9OX1ZBTElEQVRPUiA9IHtcbiAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2t5VXJsVmFsaWRhdGlvbkRpcmVjdGl2ZSksXG4gIG11bHRpOiB0cnVlXG59O1xuLy8gdHNsaW50OmVuYWJsZVxuXG4vKipcbiAqIENyZWF0ZXMgYW4gaW5wdXQgdG8gdmFsaWRhdGUgVVJMcy4gUGxhY2UgdGhpcyBhdHRyaWJ1dGUgb24gYW4gYGlucHV0YCBlbGVtZW50LlxuICogSWYgdXNlcnMgZW50ZXJzIHZhbHVlcyB0aGF0IGFyZSBub3QgdmFsaWQgVVJMcywgYW4gZXJyb3IgbWVzc2FnZSBhcHBlYXJzLlxuICogVGhpcyBkaXJlY3RpdmUgdXNlcyBgTmdNb2RlbGAgdG8gYmluZCBkYXRhLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2t5VXJsVmFsaWRhdGlvbl0nLFxuICBwcm92aWRlcnM6IFtTS1lfVVJMX1ZBTElEQVRJT05fVkFMSURBVE9SXVxufSlcblxuZXhwb3J0IGNsYXNzIFNreVVybFZhbGlkYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBWYWxpZGF0b3Ige1xuICBwdWJsaWMgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKToge1trZXk6IHN0cmluZ106IGFueX0ge1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbC52YWx1ZTtcblxuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMudXJsSXNWYWxpZCh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdza3lVcmwnOiB7XG4gICAgICAgICAgaW52YWxpZDogY29udHJvbC52YWx1ZVxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB1cmxJc1ZhbGlkKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIFNreVZhbGlkYXRpb24uaXNVcmwodXJsKTtcbiAgfVxufVxuIl19
@@ -1,21 +1,26 @@
1
- import { __decorate } from "tslib";
2
1
  import { NgModule } from '@angular/core';
3
2
  import { FormsModule } from '@angular/forms';
4
3
  import { SkyUrlValidationDirective } from './url-validation.directive';
5
- let SkyUrlValidationModule = class SkyUrlValidationModule {
6
- };
7
- SkyUrlValidationModule = __decorate([
8
- NgModule({
9
- declarations: [
10
- SkyUrlValidationDirective
11
- ],
12
- imports: [
4
+ import * as i0 from "@angular/core";
5
+ export class SkyUrlValidationModule {
6
+ }
7
+ SkyUrlValidationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ SkyUrlValidationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationModule, declarations: [SkyUrlValidationDirective], imports: [FormsModule], exports: [SkyUrlValidationDirective] });
9
+ SkyUrlValidationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationModule, imports: [[
13
10
  FormsModule
14
- ],
15
- exports: [
16
- SkyUrlValidationDirective
17
- ]
18
- })
19
- ], SkyUrlValidationModule);
20
- export { SkyUrlValidationModule };
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXZhbGlkYXRpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNreXV4L3ZhbGlkYXRpb24vIiwic291cmNlcyI6WyJtb2R1bGVzL3VybC12YWxpZGF0aW9uL3VybC12YWxpZGF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsV0FBVyxFQUNaLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLHlCQUF5QixFQUMxQixNQUFNLDRCQUE0QixDQUFDO0FBYXBDLElBQWEsc0JBQXNCLEdBQW5DLE1BQWEsc0JBQXNCO0NBQUksQ0FBQTtBQUExQixzQkFBc0I7SUFYbEMsUUFBUSxDQUFDO1FBQ1IsWUFBWSxFQUFFO1lBQ1oseUJBQXlCO1NBQzFCO1FBQ0QsT0FBTyxFQUFFO1lBQ1AsV0FBVztTQUNaO1FBQ0QsT0FBTyxFQUFFO1lBQ1AseUJBQXlCO1NBQzFCO0tBQ0YsQ0FBQztHQUNXLHNCQUFzQixDQUFJO1NBQTFCLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE5nTW9kdWxlXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgRm9ybXNNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge1xuICBTa3lVcmxWYWxpZGF0aW9uRGlyZWN0aXZlXG59IGZyb20gJy4vdXJsLXZhbGlkYXRpb24uZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2t5VXJsVmFsaWRhdGlvbkRpcmVjdGl2ZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgRm9ybXNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFNreVVybFZhbGlkYXRpb25EaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTa3lVcmxWYWxpZGF0aW9uTW9kdWxlIHsgfVxuIl19
11
+ ]] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ declarations: [
16
+ SkyUrlValidationDirective
17
+ ],
18
+ imports: [
19
+ FormsModule
20
+ ],
21
+ exports: [
22
+ SkyUrlValidationDirective
23
+ ]
24
+ }]
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXZhbGlkYXRpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsaWRhdGlvbi9zcmMvbW9kdWxlcy91cmwtdmFsaWRhdGlvbi91cmwtdmFsaWRhdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsV0FBVyxFQUNaLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLHlCQUF5QixFQUMxQixNQUFNLDRCQUE0QixDQUFDOztBQWFwQyxNQUFNLE9BQU8sc0JBQXNCOzttSEFBdEIsc0JBQXNCO29IQUF0QixzQkFBc0IsaUJBVC9CLHlCQUF5QixhQUd6QixXQUFXLGFBR1gseUJBQXlCO29IQUdoQixzQkFBc0IsWUFQeEI7WUFDUCxXQUFXO1NBQ1o7MkZBS1Usc0JBQXNCO2tCQVhsQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWix5QkFBeUI7cUJBQzFCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxXQUFXO3FCQUNaO29CQUNELE9BQU8sRUFBRTt3QkFDUCx5QkFBeUI7cUJBQzFCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTmdNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBGb3Jtc01vZHVsZVxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7XG4gIFNreVVybFZhbGlkYXRpb25EaXJlY3RpdmVcbn0gZnJvbSAnLi91cmwtdmFsaWRhdGlvbi5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBTa3lVcmxWYWxpZGF0aW9uRGlyZWN0aXZlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2t5VXJsVmFsaWRhdGlvbkRpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNreVVybFZhbGlkYXRpb25Nb2R1bGUgeyB9XG4iXX0=
@@ -11,4 +11,4 @@ export class SkyValidation {
11
11
  return regex.test(url);
12
12
  }
13
13
  }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC92YWxpZGF0aW9uLyIsInNvdXJjZXMiOlsibW9kdWxlcy92YWxpZGF0aW9uL3ZhbGlkYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFnQixhQUFhO0lBQzFCLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBb0I7UUFDeEMscURBQXFEO1FBQ3JELGdFQUFnRTtRQUNoRSwyQ0FBMkM7UUFDM0MsSUFBSSxLQUFLLEdBQUcsd0pBQXdKLENBQUM7UUFDckssT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQVc7UUFDN0IsSUFBSSxLQUFLLEdBQUcsMkNBQTJDLENBQUM7UUFDeEQsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTa3lWYWxpZGF0aW9uIHtcbiAgcHVibGljIHN0YXRpYyBpc0VtYWlsKGVtYWlsQWRkcmVzczogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgLy8gVGhlIHJlZ2V4IHdhcyBvYnRhaW5lZCBmcm9tIGh0dHA6Ly9lbWFpbHJlZ2V4LmNvbS9cbiAgICAvLyB3aGljaCBjbGFpbXMgdG8gY29ycmVjdGx5IGhhbmRsZSB+OTklIG9mIGFsbCBlbWFpbCBhZGRyZXNzZXMuXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm1heC1saW5lLWxlbmd0aFxuICAgIGxldCByZWdleCA9IC9eKChbXjw+KClcXFtcXF1cXFxcLiw7Olxcc0BcIl0rKFxcLltePD4oKVxcW1xcXVxcXFwuLDs6XFxzQFwiXSspKil8KFwiLitcIikpQCgoXFxbWzAtOV17MSwzfVxcLlswLTldezEsM31cXC5bMC05XXsxLDN9XFwuWzAtOV17MSwzfV0pfCgoW2EtekEtWlxcLTAtOV0rXFwuKStbYS16QS1aXXsyLH0pKSQvO1xuICAgIHJldHVybiByZWdleC50ZXN0KGVtYWlsQWRkcmVzcyk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGlzVXJsKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgbGV0IHJlZ2V4ID0gL14oKGh0dHB8aHR0cHMpOlxcL1xcLyk/KFtcXHdcXC1dK1xcLikrW1xcd1xcLV0rL2k7XG4gICAgcmV0dXJuIHJlZ2V4LnRlc3QodXJsKTtcbiAgfVxufVxuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbGlkYXRpb24vc3JjL21vZHVsZXMvdmFsaWRhdGlvbi92YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBZ0IsYUFBYTtJQUMxQixNQUFNLENBQUMsT0FBTyxDQUFDLFlBQW9CO1FBQ3hDLHFEQUFxRDtRQUNyRCxnRUFBZ0U7UUFDaEUsMkNBQTJDO1FBQzNDLElBQUksS0FBSyxHQUFHLHdKQUF3SixDQUFDO1FBQ3JLLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFXO1FBQzdCLElBQUksS0FBSyxHQUFHLDJDQUEyQyxDQUFDO1FBQ3hELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgYWJzdHJhY3QgY2xhc3MgU2t5VmFsaWRhdGlvbiB7XG4gIHB1YmxpYyBzdGF0aWMgaXNFbWFpbChlbWFpbEFkZHJlc3M6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIC8vIFRoZSByZWdleCB3YXMgb2J0YWluZWQgZnJvbSBodHRwOi8vZW1haWxyZWdleC5jb20vXG4gICAgLy8gd2hpY2ggY2xhaW1zIHRvIGNvcnJlY3RseSBoYW5kbGUgfjk5JSBvZiBhbGwgZW1haWwgYWRkcmVzc2VzLlxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTptYXgtbGluZS1sZW5ndGhcbiAgICBsZXQgcmVnZXggPSAvXigoW148PigpXFxbXFxdXFxcXC4sOzpcXHNAXCJdKyhcXC5bXjw+KClcXFtcXF1cXFxcLiw7Olxcc0BcIl0rKSopfChcIi4rXCIpKUAoKFxcW1swLTldezEsM31cXC5bMC05XXsxLDN9XFwuWzAtOV17MSwzfVxcLlswLTldezEsM31dKXwoKFthLXpBLVpcXC0wLTldK1xcLikrW2EtekEtWl17Mix9KSkkLztcbiAgICByZXR1cm4gcmVnZXgudGVzdChlbWFpbEFkZHJlc3MpO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBpc1VybCh1cmw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGxldCByZWdleCA9IC9eKChodHRwfGh0dHBzKTpcXC9cXC8pPyhbXFx3XFwtXStcXC4pK1tcXHdcXC1dKy9pO1xuICAgIHJldHVybiByZWdleC50ZXN0KHVybCk7XG4gIH1cbn1cbiJdfQ==
@@ -3,6 +3,13 @@ import { SkyValidation } from '../validation/validation';
3
3
  // See: https://github.com/ng-packagr/ng-packagr/issues/641
4
4
  // @dynamic
5
5
  export class SkyValidators {
6
+ /**
7
+ * Validates email addresses in reactive forms. Add this validator directly to the form control
8
+ * model in the component class. If users enter values that are not valid email addresses, the
9
+ * validator throws an error. Since this is a sync validator, it returns a set of validation
10
+ * errors or `undefined` immediately when users enter values.
11
+ * @param control
12
+ */
6
13
  static email(control) {
7
14
  const value = control.value;
8
15
  if (!value) {
@@ -10,6 +17,13 @@ export class SkyValidators {
10
17
  }
11
18
  return SkyValidation.isEmail(value) ? undefined : { 'skyEmail': { invalid: value } };
12
19
  }
20
+ /**
21
+ * Validates URLs in reactive forms. Add this validator directly to the form control model in
22
+ * the component class. If users enter values that are not valid URLs, the validator throws an
23
+ * error. Since this is a sync validator, it returns a set of validation errors or `undefined`
24
+ * immediately when users enter values.
25
+ * @param control
26
+ */
13
27
  static url(control) {
14
28
  const value = control.value;
15
29
  if (!value) {
@@ -18,4 +32,4 @@ export class SkyValidators {
18
32
  return SkyValidation.isUrl(value) ? undefined : { 'skyUrl': { invalid: value } };
19
33
  }
20
34
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC92YWxpZGF0aW9uLyIsInNvdXJjZXMiOlsibW9kdWxlcy92YWxpZGF0b3JzL3ZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsT0FBTyxFQUNMLGFBQWEsRUFDZCxNQUFNLDBCQUEwQixDQUFDO0FBRWxDLHFFQUFxRTtBQUNyRSwyREFBMkQ7QUFDM0QsV0FBVztBQUNYLE1BQU0sT0FBTyxhQUFhO0lBRWpCLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBd0I7UUFDMUMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUU1QixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFFRCxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztJQUN2RixDQUFDO0lBRU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUF3QjtRQUN4QyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBRTVCLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUVELE9BQU8sYUFBYSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO0lBQ25GLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgVmFsaWRhdGlvbkVycm9yc1xufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7XG4gIFNreVZhbGlkYXRpb25cbn0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uJztcblxuLy8gTmVlZCB0byBhZGQgdGhlIGZvbGxvd2luZyB0byBjbGFzc2VzIHdoaWNoIGNvbnRhaW4gc3RhdGljIG1ldGhvZHMuXG4vLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9uZy1wYWNrYWdyL25nLXBhY2thZ3IvaXNzdWVzLzY0MVxuLy8gQGR5bmFtaWNcbmV4cG9ydCBjbGFzcyBTa3lWYWxpZGF0b3JzIHtcblxuICBwdWJsaWMgc3RhdGljIGVtYWlsKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWU7XG5cbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiBTa3lWYWxpZGF0aW9uLmlzRW1haWwodmFsdWUpID8gdW5kZWZpbmVkIDogeyAnc2t5RW1haWwnOiB7IGludmFsaWQ6IHZhbHVlIH0gfTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgdXJsKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWU7XG5cbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiBTa3lWYWxpZGF0aW9uLmlzVXJsKHZhbHVlKSA/IHVuZGVmaW5lZCA6IHsgJ3NreVVybCc6IHsgaW52YWxpZDogdmFsdWUgfSB9O1xuICB9XG59XG4iXX0=
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbGlkYXRpb24vc3JjL21vZHVsZXMvdmFsaWRhdG9ycy92YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFDTCxhQUFhLEVBQ2QsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxxRUFBcUU7QUFDckUsMkRBQTJEO0FBQzNELFdBQVc7QUFDWCxNQUFNLE9BQU8sYUFBYTtJQUV4Qjs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQXdCO1FBQzFDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFFNUIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBRUQsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7SUFDdkYsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxHQUFHLENBQUMsT0FBd0I7UUFDeEMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUU1QixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFFRCxPQUFPLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztJQUNuRixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIFZhbGlkYXRpb25FcnJvcnNcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge1xuICBTa3lWYWxpZGF0aW9uXG59IGZyb20gJy4uL3ZhbGlkYXRpb24vdmFsaWRhdGlvbic7XG5cbi8vIE5lZWQgdG8gYWRkIHRoZSBmb2xsb3dpbmcgdG8gY2xhc3NlcyB3aGljaCBjb250YWluIHN0YXRpYyBtZXRob2RzLlxuLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vbmctcGFja2Fnci9uZy1wYWNrYWdyL2lzc3Vlcy82NDFcbi8vIEBkeW5hbWljXG5leHBvcnQgY2xhc3MgU2t5VmFsaWRhdG9ycyB7XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyBlbWFpbCBhZGRyZXNzZXMgaW4gcmVhY3RpdmUgZm9ybXMuIEFkZCB0aGlzIHZhbGlkYXRvciBkaXJlY3RseSB0byB0aGUgZm9ybSBjb250cm9sXG4gICAqIG1vZGVsIGluIHRoZSBjb21wb25lbnQgY2xhc3MuIElmIHVzZXJzIGVudGVyIHZhbHVlcyB0aGF0IGFyZSBub3QgdmFsaWQgZW1haWwgYWRkcmVzc2VzLCB0aGVcbiAgICogdmFsaWRhdG9yIHRocm93cyBhbiBlcnJvci4gU2luY2UgdGhpcyBpcyBhIHN5bmMgdmFsaWRhdG9yLCBpdCByZXR1cm5zIGEgc2V0IG9mIHZhbGlkYXRpb25cbiAgICogZXJyb3JzIG9yIGB1bmRlZmluZWRgIGltbWVkaWF0ZWx5IHdoZW4gdXNlcnMgZW50ZXIgdmFsdWVzLlxuICAgKiBAcGFyYW0gY29udHJvbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBlbWFpbChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgY29uc3QgdmFsdWUgPSBjb250cm9sLnZhbHVlO1xuXG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gU2t5VmFsaWRhdGlvbi5pc0VtYWlsKHZhbHVlKSA/IHVuZGVmaW5lZCA6IHsgJ3NreUVtYWlsJzogeyBpbnZhbGlkOiB2YWx1ZSB9IH07XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIFVSTHMgaW4gcmVhY3RpdmUgZm9ybXMuIEFkZCB0aGlzIHZhbGlkYXRvciBkaXJlY3RseSB0byB0aGUgZm9ybSBjb250cm9sIG1vZGVsIGluXG4gICAqIHRoZSBjb21wb25lbnQgY2xhc3MuIElmIHVzZXJzIGVudGVyIHZhbHVlcyB0aGF0IGFyZSBub3QgdmFsaWQgVVJMcywgdGhlIHZhbGlkYXRvciB0aHJvd3MgYW5cbiAgICogZXJyb3IuIFNpbmNlIHRoaXMgaXMgYSBzeW5jIHZhbGlkYXRvciwgaXQgcmV0dXJucyBhIHNldCBvZiB2YWxpZGF0aW9uIGVycm9ycyBvciBgdW5kZWZpbmVkYFxuICAgKiBpbW1lZGlhdGVseSB3aGVuIHVzZXJzIGVudGVyIHZhbHVlcy5cbiAgICogQHBhcmFtIGNvbnRyb2xcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgdXJsKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWU7XG5cbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiBTa3lWYWxpZGF0aW9uLmlzVXJsKHZhbHVlKSA/IHVuZGVmaW5lZCA6IHsgJ3NreVVybCc6IHsgaW52YWxpZDogdmFsdWUgfSB9O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,7 @@
1
+ export * from './modules/email-validation/email-validation.module';
2
+ export { SkyEmailValidationDirective as λ1 } from './modules/email-validation/email-validation.directive';
3
+ export * from './modules/url-validation/url-validation.module';
4
+ export { SkyUrlValidationDirective as λ2 } from './modules/url-validation/url-validation.directive';
5
+ export * from './modules/validation/validation';
6
+ export * from './modules/validators/validators';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ZhbGlkYXRpb24vc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxPQUFPLEVBQUMsMkJBQTJCLElBQUksRUFBRSxFQUFDLE1BQU0sdURBQXVELENBQUM7QUFDeEcsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDbEcsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tb2R1bGVzL2VtYWlsLXZhbGlkYXRpb24vZW1haWwtdmFsaWRhdGlvbi5tb2R1bGUnO1xuZXhwb3J0IHtTa3lFbWFpbFZhbGlkYXRpb25EaXJlY3RpdmUgYXMgzrsxfSBmcm9tICcuL21vZHVsZXMvZW1haWwtdmFsaWRhdGlvbi9lbWFpbC12YWxpZGF0aW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL21vZHVsZXMvdXJsLXZhbGlkYXRpb24vdXJsLXZhbGlkYXRpb24ubW9kdWxlJztcbmV4cG9ydCB7U2t5VXJsVmFsaWRhdGlvbkRpcmVjdGl2ZSBhcyDOuzJ9IGZyb20gJy4vbW9kdWxlcy91cmwtdmFsaWRhdGlvbi91cmwtdmFsaWRhdGlvbi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2R1bGVzL3ZhbGlkYXRpb24vdmFsaWRhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL21vZHVsZXMvdmFsaWRhdG9ycy92YWxpZGF0b3JzJztcbiJdfQ==
@@ -1,7 +1,5 @@
1
1
  /**
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
- export * from './public_api';
5
- export { SkyEmailValidationDirective as ɵa } from './modules/email-validation/email-validation.directive';
6
- export { SkyUrlValidationDirective as ɵb } from './modules/url-validation/url-validation.directive';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5dXgtdmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC92YWxpZGF0aW9uLyIsInNvdXJjZXMiOlsic2t5dXgtdmFsaWRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQywyQkFBMkIsSUFBSSxFQUFFLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUN4RyxPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sbURBQW1ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7U2t5RW1haWxWYWxpZGF0aW9uRGlyZWN0aXZlIGFzIMm1YX0gZnJvbSAnLi9tb2R1bGVzL2VtYWlsLXZhbGlkYXRpb24vZW1haWwtdmFsaWRhdGlvbi5kaXJlY3RpdmUnO1xuZXhwb3J0IHtTa3lVcmxWYWxpZGF0aW9uRGlyZWN0aXZlIGFzIMm1Yn0gZnJvbSAnLi9tb2R1bGVzL3VybC12YWxpZGF0aW9uL3VybC12YWxpZGF0aW9uLmRpcmVjdGl2ZSc7Il19
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5dXgtdmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ZhbGlkYXRpb24vc3JjL3NreXV4LXZhbGlkYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { __decorate } from 'tslib';
1
+ import * as i0 from '@angular/core';
2
2
  import { forwardRef, Directive, NgModule } from '@angular/core';
3
3
  import { NG_VALIDATORS, FormsModule } from '@angular/forms';
4
4
 
@@ -23,7 +23,12 @@ const SKY_EMAIL_VALIDATION_VALIDATOR = {
23
23
  multi: true
24
24
  };
25
25
  // tslint:enable
26
- let SkyEmailValidationDirective = class SkyEmailValidationDirective {
26
+ /**
27
+ * Creates an input to validate email addresses. Place this attribute on an `input` element.
28
+ * If users enter values that are not valid email addresses, an error message appears.
29
+ * The directive uses `NgModel` to bind data.
30
+ */
31
+ class SkyEmailValidationDirective {
27
32
  validate(control) {
28
33
  let value = control.value;
29
34
  if (!value) {
@@ -40,29 +45,38 @@ let SkyEmailValidationDirective = class SkyEmailValidationDirective {
40
45
  emailIsValid(email) {
41
46
  return SkyValidation.isEmail(email);
42
47
  }
43
- };
44
- SkyEmailValidationDirective = __decorate([
45
- Directive({
46
- selector: '[skyEmailValidation]',
47
- providers: [SKY_EMAIL_VALIDATION_VALIDATOR]
48
- })
49
- ], SkyEmailValidationDirective);
48
+ }
49
+ SkyEmailValidationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
50
+ SkyEmailValidationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.6", type: SkyEmailValidationDirective, selector: "[skyEmailValidation]", providers: [SKY_EMAIL_VALIDATION_VALIDATOR], ngImport: i0 });
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationDirective, decorators: [{
52
+ type: Directive,
53
+ args: [{
54
+ selector: '[skyEmailValidation]',
55
+ providers: [SKY_EMAIL_VALIDATION_VALIDATOR]
56
+ }]
57
+ }] });
50
58
 
51
- let SkyEmailValidationModule = class SkyEmailValidationModule {
52
- };
53
- SkyEmailValidationModule = __decorate([
54
- NgModule({
55
- declarations: [
56
- SkyEmailValidationDirective
57
- ],
58
- imports: [
59
+ class SkyEmailValidationModule {
60
+ }
61
+ SkyEmailValidationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
62
+ SkyEmailValidationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationModule, declarations: [SkyEmailValidationDirective], imports: [FormsModule], exports: [SkyEmailValidationDirective] });
63
+ SkyEmailValidationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationModule, imports: [[
59
64
  FormsModule
60
- ],
61
- exports: [
62
- SkyEmailValidationDirective
63
- ]
64
- })
65
- ], SkyEmailValidationModule);
65
+ ]] });
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyEmailValidationModule, decorators: [{
67
+ type: NgModule,
68
+ args: [{
69
+ declarations: [
70
+ SkyEmailValidationDirective
71
+ ],
72
+ imports: [
73
+ FormsModule
74
+ ],
75
+ exports: [
76
+ SkyEmailValidationDirective
77
+ ]
78
+ }]
79
+ }] });
66
80
 
67
81
  // tslint:disable:no-forward-ref no-use-before-declare
68
82
  const SKY_URL_VALIDATION_VALIDATOR = {
@@ -71,7 +85,12 @@ const SKY_URL_VALIDATION_VALIDATOR = {
71
85
  multi: true
72
86
  };
73
87
  // tslint:enable
74
- let SkyUrlValidationDirective = class SkyUrlValidationDirective {
88
+ /**
89
+ * Creates an input to validate URLs. Place this attribute on an `input` element.
90
+ * If users enters values that are not valid URLs, an error message appears.
91
+ * This directive uses `NgModel` to bind data.
92
+ */
93
+ class SkyUrlValidationDirective {
75
94
  validate(control) {
76
95
  const value = control.value;
77
96
  if (!value) {
@@ -88,34 +107,50 @@ let SkyUrlValidationDirective = class SkyUrlValidationDirective {
88
107
  urlIsValid(url) {
89
108
  return SkyValidation.isUrl(url);
90
109
  }
91
- };
92
- SkyUrlValidationDirective = __decorate([
93
- Directive({
94
- selector: '[skyUrlValidation]',
95
- providers: [SKY_URL_VALIDATION_VALIDATOR]
96
- })
97
- ], SkyUrlValidationDirective);
110
+ }
111
+ SkyUrlValidationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
112
+ SkyUrlValidationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.6", type: SkyUrlValidationDirective, selector: "[skyUrlValidation]", providers: [SKY_URL_VALIDATION_VALIDATOR], ngImport: i0 });
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationDirective, decorators: [{
114
+ type: Directive,
115
+ args: [{
116
+ selector: '[skyUrlValidation]',
117
+ providers: [SKY_URL_VALIDATION_VALIDATOR]
118
+ }]
119
+ }] });
98
120
 
99
- let SkyUrlValidationModule = class SkyUrlValidationModule {
100
- };
101
- SkyUrlValidationModule = __decorate([
102
- NgModule({
103
- declarations: [
104
- SkyUrlValidationDirective
105
- ],
106
- imports: [
121
+ class SkyUrlValidationModule {
122
+ }
123
+ SkyUrlValidationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
124
+ SkyUrlValidationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationModule, declarations: [SkyUrlValidationDirective], imports: [FormsModule], exports: [SkyUrlValidationDirective] });
125
+ SkyUrlValidationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationModule, imports: [[
107
126
  FormsModule
108
- ],
109
- exports: [
110
- SkyUrlValidationDirective
111
- ]
112
- })
113
- ], SkyUrlValidationModule);
127
+ ]] });
128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: SkyUrlValidationModule, decorators: [{
129
+ type: NgModule,
130
+ args: [{
131
+ declarations: [
132
+ SkyUrlValidationDirective
133
+ ],
134
+ imports: [
135
+ FormsModule
136
+ ],
137
+ exports: [
138
+ SkyUrlValidationDirective
139
+ ]
140
+ }]
141
+ }] });
114
142
 
115
143
  // Need to add the following to classes which contain static methods.
116
144
  // See: https://github.com/ng-packagr/ng-packagr/issues/641
117
145
  // @dynamic
118
146
  class SkyValidators {
147
+ /**
148
+ * Validates email addresses in reactive forms. Add this validator directly to the form control
149
+ * model in the component class. If users enter values that are not valid email addresses, the
150
+ * validator throws an error. Since this is a sync validator, it returns a set of validation
151
+ * errors or `undefined` immediately when users enter values.
152
+ * @param control
153
+ */
119
154
  static email(control) {
120
155
  const value = control.value;
121
156
  if (!value) {
@@ -123,6 +158,13 @@ class SkyValidators {
123
158
  }
124
159
  return SkyValidation.isEmail(value) ? undefined : { 'skyEmail': { invalid: value } };
125
160
  }
161
+ /**
162
+ * Validates URLs in reactive forms. Add this validator directly to the form control model in
163
+ * the component class. If users enter values that are not valid URLs, the validator throws an
164
+ * error. Since this is a sync validator, it returns a set of validation errors or `undefined`
165
+ * immediately when users enter values.
166
+ * @param control
167
+ */
126
168
  static url(control) {
127
169
  const value = control.value;
128
170
  if (!value) {
@@ -136,5 +178,5 @@ class SkyValidators {
136
178
  * Generated bundle index. Do not edit.
137
179
  */
138
180
 
139
- export { SkyEmailValidationModule, SkyUrlValidationModule, SkyValidation, SkyValidators, SkyEmailValidationDirective as ɵa, SkyUrlValidationDirective as ɵb };
181
+ export { SkyEmailValidationModule, SkyUrlValidationModule, SkyValidation, SkyValidators, SkyEmailValidationDirective as λ1, SkyUrlValidationDirective as λ2 };
140
182
  //# sourceMappingURL=skyux-validation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-validation.js","sources":["ng://@skyux/validation/modules/validation/validation.ts","ng://@skyux/validation/modules/email-validation/email-validation.directive.ts","ng://@skyux/validation/modules/email-validation/email-validation.module.ts","ng://@skyux/validation/modules/url-validation/url-validation.directive.ts","ng://@skyux/validation/modules/url-validation/url-validation.module.ts","ng://@skyux/validation/modules/validators/validators.ts","ng://@skyux/validation/skyux-validation.ts"],"sourcesContent":["export 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 // tslint:disable-next-line:max-line-length\n let regex = /^(([^<>()\\[\\]\\\\.,;:\\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(url: string): boolean {\n let regex = /^((http|https):\\/\\/)?([\\w\\-]+\\.)+[\\w\\-]+/i;\n return regex.test(url);\n }\n}\n","import {\n Directive,\n forwardRef\n} from '@angular/core';\n\nimport {\n Validator,\n NG_VALIDATORS,\n AbstractControl\n} from '@angular/forms';\n\nimport {\n SkyValidation\n} from '../validation/validation';\n\n// tslint:disable:no-forward-ref no-use-before-declare\nconst SKY_EMAIL_VALIDATION_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyEmailValidationDirective),\n multi: true\n};\n// tslint:enable\n\n@Directive({\n selector: '[skyEmailValidation]',\n providers: [SKY_EMAIL_VALIDATION_VALIDATOR]\n})\n\nexport class SkyEmailValidationDirective implements Validator {\n\n public validate(control: AbstractControl): {[key: string]: any} {\n let 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\n public emailIsValid(email: string): boolean {\n return SkyValidation.isEmail(email);\n }\n}\n","import {\n NgModule\n} from '@angular/core';\nimport {\n FormsModule\n} from '@angular/forms';\n\nimport { SkyEmailValidationDirective } from './email-validation.directive';\n\n@NgModule({\n declarations: [\n SkyEmailValidationDirective\n ],\n imports: [\n FormsModule\n ],\n exports: [\n SkyEmailValidationDirective\n ]\n})\nexport class SkyEmailValidationModule { }\n","import {\n Directive,\n forwardRef\n} from '@angular/core';\n\nimport {\n Validator,\n NG_VALIDATORS,\n AbstractControl\n} from '@angular/forms';\n\nimport {\n SkyValidation\n} from '../validation/validation';\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// tslint:enable\n@Directive({\n selector: '[skyUrlValidation]',\n providers: [SKY_URL_VALIDATION_VALIDATOR]\n})\n\nexport class SkyUrlValidationDirective 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.urlIsValid(value)) {\n return {\n 'skyUrl': {\n invalid: control.value\n }\n };\n }\n }\n\n public urlIsValid(url: string): boolean {\n return SkyValidation.isUrl(url);\n }\n}\n","import {\n NgModule\n} from '@angular/core';\nimport {\n FormsModule\n} from '@angular/forms';\n\nimport {\n SkyUrlValidationDirective\n} from './url-validation.directive';\n\n@NgModule({\n declarations: [\n SkyUrlValidationDirective\n ],\n imports: [\n FormsModule\n ],\n exports: [\n SkyUrlValidationDirective\n ]\n})\nexport class SkyUrlValidationModule { }\n","import {\n AbstractControl,\n ValidationErrors\n} from '@angular/forms';\n\nimport {\n SkyValidation\n} 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 public static email(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return undefined;\n }\n\n return SkyValidation.isEmail(value) ? undefined : { 'skyEmail': { invalid: value } };\n }\n\n public static url(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return undefined;\n }\n\n return SkyValidation.isUrl(value) ? undefined : { 'skyUrl': { invalid: value } };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {SkyEmailValidationDirective as ɵa} from './modules/email-validation/email-validation.directive';\nexport {SkyUrlValidationDirective as ɵb} from './modules/url-validation/url-validation.directive';"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skyux-validation.js","sources":["../../../projects/validation/src/modules/validation/validation.ts","../../../projects/validation/src/modules/email-validation/email-validation.directive.ts","../../../projects/validation/src/modules/email-validation/email-validation.module.ts","../../../projects/validation/src/modules/url-validation/url-validation.directive.ts","../../../projects/validation/src/modules/url-validation/url-validation.module.ts","../../../projects/validation/src/modules/validators/validators.ts","../../../projects/validation/src/skyux-validation.ts"],"sourcesContent":["export 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 // tslint:disable-next-line:max-line-length\n let regex = /^(([^<>()\\[\\]\\\\.,;:\\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(url: string): boolean {\n let regex = /^((http|https):\\/\\/)?([\\w\\-]+\\.)+[\\w\\-]+/i;\n return regex.test(url);\n }\n}\n","import {\n Directive,\n forwardRef\n} from '@angular/core';\n\nimport {\n Validator,\n NG_VALIDATORS,\n AbstractControl\n} from '@angular/forms';\n\nimport {\n SkyValidation\n} from '../validation/validation';\n\n// tslint:disable:no-forward-ref no-use-before-declare\nconst SKY_EMAIL_VALIDATION_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyEmailValidationDirective),\n multi: true\n};\n// tslint:enable\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})\n\nexport class SkyEmailValidationDirective implements Validator {\n\n public validate(control: AbstractControl): {[key: string]: any} {\n let 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\n public emailIsValid(email: string): boolean {\n return SkyValidation.isEmail(email);\n }\n}\n","import {\n NgModule\n} from '@angular/core';\nimport {\n FormsModule\n} from '@angular/forms';\n\nimport { SkyEmailValidationDirective } from './email-validation.directive';\n\n@NgModule({\n declarations: [\n SkyEmailValidationDirective\n ],\n imports: [\n FormsModule\n ],\n exports: [\n SkyEmailValidationDirective\n ]\n})\nexport class SkyEmailValidationModule { }\n","import {\n Directive,\n forwardRef\n} from '@angular/core';\n\nimport {\n Validator,\n NG_VALIDATORS,\n AbstractControl\n} from '@angular/forms';\n\nimport {\n SkyValidation\n} from '../validation/validation';\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// tslint:enable\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})\n\nexport class SkyUrlValidationDirective 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.urlIsValid(value)) {\n return {\n 'skyUrl': {\n invalid: control.value\n }\n };\n }\n }\n\n public urlIsValid(url: string): boolean {\n return SkyValidation.isUrl(url);\n }\n}\n","import {\n NgModule\n} from '@angular/core';\nimport {\n FormsModule\n} from '@angular/forms';\n\nimport {\n SkyUrlValidationDirective\n} from './url-validation.directive';\n\n@NgModule({\n declarations: [\n SkyUrlValidationDirective\n ],\n imports: [\n FormsModule\n ],\n exports: [\n SkyUrlValidationDirective\n ]\n})\nexport class SkyUrlValidationModule { }\n","import {\n AbstractControl,\n ValidationErrors\n} from '@angular/forms';\n\nimport {\n SkyValidation\n} 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 /**\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 `undefined` immediately when users enter values.\n * @param control\n */\n public static email(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return undefined;\n }\n\n return SkyValidation.isEmail(value) ? undefined : { '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 `undefined`\n * immediately when users enter values.\n * @param control\n */\n public static url(control: AbstractControl): ValidationErrors | null {\n const value = control.value;\n\n if (!value) {\n return undefined;\n }\n\n return SkyValidation.isUrl(value) ? undefined : { 'skyUrl': { invalid: value } };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,15 @@
1
1
  import { Validator, AbstractControl } from '@angular/forms';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * Creates an input to validate email addresses. Place this attribute on an `input` element.
5
+ * If users enter values that are not valid email addresses, an error message appears.
6
+ * The directive uses `NgModel` to bind data.
7
+ */
2
8
  export declare class SkyEmailValidationDirective implements Validator {
3
9
  validate(control: AbstractControl): {
4
10
  [key: string]: any;
5
11
  };
6
12
  emailIsValid(email: string): boolean;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyEmailValidationDirective, never>;
14
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SkyEmailValidationDirective, "[skyEmailValidation]", never, {}, {}, never>;
7
15
  }
@@ -1,2 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./email-validation.directive";
3
+ import * as i2 from "@angular/forms";
1
4
  export declare class SkyEmailValidationModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyEmailValidationModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SkyEmailValidationModule, [typeof i1.SkyEmailValidationDirective], [typeof i2.FormsModule], [typeof i1.SkyEmailValidationDirective]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<SkyEmailValidationModule>;
2
8
  }
@@ -1,7 +1,15 @@
1
1
  import { Validator, AbstractControl } from '@angular/forms';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * Creates an input to validate URLs. Place this attribute on an `input` element.
5
+ * If users enters values that are not valid URLs, an error message appears.
6
+ * This directive uses `NgModel` to bind data.
7
+ */
2
8
  export declare class SkyUrlValidationDirective implements Validator {
3
9
  validate(control: AbstractControl): {
4
10
  [key: string]: any;
5
11
  };
6
12
  urlIsValid(url: string): boolean;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyUrlValidationDirective, never>;
14
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SkyUrlValidationDirective, "[skyUrlValidation]", never, {}, {}, never>;
7
15
  }
@@ -1,2 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./url-validation.directive";
3
+ import * as i2 from "@angular/forms";
1
4
  export declare class SkyUrlValidationModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyUrlValidationModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SkyUrlValidationModule, [typeof i1.SkyUrlValidationDirective], [typeof i2.FormsModule], [typeof i1.SkyUrlValidationDirective]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<SkyUrlValidationModule>;
2
8
  }
@@ -1,5 +1,19 @@
1
1
  import { AbstractControl, ValidationErrors } from '@angular/forms';
2
2
  export declare class SkyValidators {
3
+ /**
4
+ * Validates email addresses in reactive forms. Add this validator directly to the form control
5
+ * model in the component class. If users enter values that are not valid email addresses, the
6
+ * validator throws an error. Since this is a sync validator, it returns a set of validation
7
+ * errors or `undefined` immediately when users enter values.
8
+ * @param control
9
+ */
3
10
  static email(control: AbstractControl): ValidationErrors | null;
11
+ /**
12
+ * Validates URLs in reactive forms. Add this validator directly to the form control model in
13
+ * the component class. If users enter values that are not valid URLs, the validator throws an
14
+ * error. Since this is a sync validator, it returns a set of validation errors or `undefined`
15
+ * immediately when users enter values.
16
+ * @param control
17
+ */
4
18
  static url(control: AbstractControl): ValidationErrors | null;
5
19
  }