aboutsummaryrefslogtreecommitdiffstats
path: root/src/angular/form-elements/validation/validators/regex.validator.component.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/angular/form-elements/validation/validators/regex.validator.component.ts')
-rw-r--r--src/angular/form-elements/validation/validators/regex.validator.component.ts24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/angular/form-elements/validation/validators/regex.validator.component.ts b/src/angular/form-elements/validation/validators/regex.validator.component.ts
new file mode 100644
index 0000000..5929016
--- /dev/null
+++ b/src/angular/form-elements/validation/validators/regex.validator.component.ts
@@ -0,0 +1,24 @@
+import { Input, Component } from "@angular/core";
+import { ValidatorComponent } from "./base.validator.component";
+import { IValidator } from './validator.interface';
+import template from "./base.validator.component.html";
+
+@Component({
+ selector: 'sdc-regex-validator',
+ template: template
+})
+export class RegexValidatorComponent extends ValidatorComponent implements IValidator {
+
+ @Input() public pattern: RegExp;
+
+ constructor() {
+ super();
+ }
+
+ public validate(value: any): boolean {
+ const regexp = new RegExp(this.pattern);
+ this.isValid = regexp.test(value);
+ return this.isValid;
+ }
+
+}