@sbcore/ng-absolute-validator 14.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/README.md +257 -0
  2. package/esm2020/i18n/bn.mjs +68 -0
  3. package/esm2020/i18n/de.mjs +68 -0
  4. package/esm2020/i18n/en.mjs +68 -0
  5. package/esm2020/i18n/es.mjs +68 -0
  6. package/esm2020/i18n/fr.mjs +68 -0
  7. package/esm2020/i18n/hi.mjs +68 -0
  8. package/esm2020/i18n/ja.mjs +68 -0
  9. package/esm2020/i18n/pt.mjs +68 -0
  10. package/esm2020/i18n/ru.mjs +68 -0
  11. package/esm2020/i18n/zh.mjs +68 -0
  12. package/esm2020/lib/common.utils.mjs +49 -0
  13. package/esm2020/lib/config-interface.mjs +3 -0
  14. package/esm2020/lib/constant.mjs +87 -0
  15. package/esm2020/lib/directive/error-trigger/error-trigger-on.directive.mjs +35 -0
  16. package/esm2020/lib/directive/index.mjs +3 -0
  17. package/esm2020/lib/directive/native-element/native-element.directive.mjs +34 -0
  18. package/esm2020/lib/interface.mjs +14 -0
  19. package/esm2020/lib/ng-absolute-validator.component.mjs +194 -0
  20. package/esm2020/lib/ng-absolute-validator.module.mjs +125 -0
  21. package/esm2020/lib/ng-absolute-validator.service.mjs +67 -0
  22. package/esm2020/lib/rule/above/above.directive.mjs +45 -0
  23. package/esm2020/lib/rule/accepted/accepted.directive.mjs +44 -0
  24. package/esm2020/lib/rule/after/after.directive.mjs +46 -0
  25. package/esm2020/lib/rule/alpha/alpha.directive.mjs +41 -0
  26. package/esm2020/lib/rule/alpha_dash/alpha-dash.directive.mjs +41 -0
  27. package/esm2020/lib/rule/alpha_numeric/alpha-numeric.directive.mjs +41 -0
  28. package/esm2020/lib/rule/array/array.directive.mjs +41 -0
  29. package/esm2020/lib/rule/before/before.directive.mjs +46 -0
  30. package/esm2020/lib/rule/between/between.directive.mjs +46 -0
  31. package/esm2020/lib/rule/boolean/boolean.directive.mjs +41 -0
  32. package/esm2020/lib/rule/confirmed/confirmed.directive.mjs +64 -0
  33. package/esm2020/lib/rule/credit_card/credit-card.directive.mjs +43 -0
  34. package/esm2020/lib/rule/cvv/cvv.directive.mjs +41 -0
  35. package/esm2020/lib/rule/date/date.directive.mjs +46 -0
  36. package/esm2020/lib/rule/date_format/date-format.directive.mjs +46 -0
  37. package/esm2020/lib/rule/debit_card/debit-card.directive.mjs +43 -0
  38. package/esm2020/lib/rule/different/different.directive.mjs +63 -0
  39. package/esm2020/lib/rule/dimension/dimension.directive.mjs +49 -0
  40. package/esm2020/lib/rule/email/email.directive.mjs +41 -0
  41. package/esm2020/lib/rule/ends_with/ends-with.directive.mjs +45 -0
  42. package/esm2020/lib/rule/equals/equals.directive.mjs +45 -0
  43. package/esm2020/lib/rule/exists/exists.directive.mjs +49 -0
  44. package/esm2020/lib/rule/image/image.directive.mjs +41 -0
  45. package/esm2020/lib/rule/in/in.directive.mjs +45 -0
  46. package/esm2020/lib/rule/includes/includes.directive.mjs +45 -0
  47. package/esm2020/lib/rule/index.mjs +60 -0
  48. package/esm2020/lib/rule/integer/integer.directive.mjs +41 -0
  49. package/esm2020/lib/rule/ip/ip.directive.mjs +41 -0
  50. package/esm2020/lib/rule/ipv4/ipv4.directive.mjs +41 -0
  51. package/esm2020/lib/rule/ipv6/ipv6.directive.mjs +41 -0
  52. package/esm2020/lib/rule/json/json.directive.mjs +41 -0
  53. package/esm2020/lib/rule/max/max.directive.mjs +51 -0
  54. package/esm2020/lib/rule/mimes/mimes.directive.mjs +47 -0
  55. package/esm2020/lib/rule/min/min.directive.mjs +51 -0
  56. package/esm2020/lib/rule/not_equals/not-equals.directive.mjs +44 -0
  57. package/esm2020/lib/rule/not_in/not-in.directive.mjs +45 -0
  58. package/esm2020/lib/rule/not_regex/not-regex.directive.mjs +45 -0
  59. package/esm2020/lib/rule/number/number.directive.mjs +41 -0
  60. package/esm2020/lib/rule/phone_no/phone-no.directive.mjs +45 -0
  61. package/esm2020/lib/rule/range/range.directive.mjs +46 -0
  62. package/esm2020/lib/rule/regex/regex.directive.mjs +45 -0
  63. package/esm2020/lib/rule/required/required.directive.mjs +41 -0
  64. package/esm2020/lib/rule/required_if/required-if.directive.mjs +66 -0
  65. package/esm2020/lib/rule/required_unless/required-unless.directive.mjs +65 -0
  66. package/esm2020/lib/rule/required_with/required-with.directive.mjs +67 -0
  67. package/esm2020/lib/rule/required_with_all/required-with-all.directive.mjs +67 -0
  68. package/esm2020/lib/rule/required_without/required-without.directive.mjs +67 -0
  69. package/esm2020/lib/rule/required_without_all/required-without-all.directive.mjs +67 -0
  70. package/esm2020/lib/rule/rule.directive.mjs +35 -0
  71. package/esm2020/lib/rule/rule.module.mjs +141 -0
  72. package/esm2020/lib/rule/same/same.directive.mjs +62 -0
  73. package/esm2020/lib/rule/size/size.directive.mjs +44 -0
  74. package/esm2020/lib/rule/starts_with/starts-with.directive.mjs +45 -0
  75. package/esm2020/lib/rule/strength/strength.directive.mjs +47 -0
  76. package/esm2020/lib/rule/string/string.directive.mjs +41 -0
  77. package/esm2020/lib/rule/under/under.directive.mjs +44 -0
  78. package/esm2020/lib/rule/unique/unique.directive.mjs +48 -0
  79. package/esm2020/lib/rule/url/url.directive.mjs +41 -0
  80. package/esm2020/lib/rule/uuid/uuid.directive.mjs +41 -0
  81. package/esm2020/lib/rule/video/video.directive.mjs +41 -0
  82. package/esm2020/lib/services/http.request.service.mjs +20 -0
  83. package/esm2020/lib/services/messages-builder.service.mjs +46 -0
  84. package/esm2020/lib/services/reactive.validate.mjs +69 -0
  85. package/esm2020/lib/services/utils.service.mjs +476 -0
  86. package/esm2020/lib/services/validate-rule.service.mjs +103 -0
  87. package/esm2020/lib/transator.loader.mjs +38 -0
  88. package/esm2020/public-api.mjs +11 -0
  89. package/esm2020/sbcore-ng-absolute-validator.mjs +5 -0
  90. package/fesm2015/sbcore-ng-absolute-validator.mjs +4488 -0
  91. package/fesm2015/sbcore-ng-absolute-validator.mjs.map +1 -0
  92. package/fesm2020/sbcore-ng-absolute-validator.mjs +4480 -0
  93. package/fesm2020/sbcore-ng-absolute-validator.mjs.map +1 -0
  94. package/i18n/bn.d.ts +68 -0
  95. package/i18n/de.d.ts +68 -0
  96. package/i18n/en.d.ts +68 -0
  97. package/i18n/es.d.ts +68 -0
  98. package/i18n/fr.d.ts +68 -0
  99. package/i18n/hi.d.ts +68 -0
  100. package/i18n/ja.d.ts +68 -0
  101. package/i18n/pt.d.ts +68 -0
  102. package/i18n/ru.d.ts +68 -0
  103. package/i18n/zh.d.ts +68 -0
  104. package/index.d.ts +5 -0
  105. package/lib/directive/error-trigger/error-trigger-on.directive.d.ts +10 -0
  106. package/lib/directive/index.d.ts +2 -0
  107. package/lib/directive/native-element/native-element.directive.d.ts +12 -0
  108. package/lib/ng-absolute-validator.module.d.ts +20 -0
  109. package/lib/rule/above/above.directive.d.ts +20 -0
  110. package/lib/rule/accepted/accepted.directive.d.ts +20 -0
  111. package/lib/rule/after/after.directive.d.ts +20 -0
  112. package/lib/rule/alpha/alpha.directive.d.ts +19 -0
  113. package/lib/rule/alpha_dash/alpha-dash.directive.d.ts +19 -0
  114. package/lib/rule/alpha_numeric/alpha-numeric.directive.d.ts +19 -0
  115. package/lib/rule/array/array.directive.d.ts +19 -0
  116. package/lib/rule/before/before.directive.d.ts +20 -0
  117. package/lib/rule/between/between.directive.d.ts +20 -0
  118. package/lib/rule/boolean/boolean.directive.d.ts +19 -0
  119. package/lib/rule/confirmed/confirmed.directive.d.ts +24 -0
  120. package/lib/rule/credit_card/credit-card.directive.d.ts +19 -0
  121. package/lib/rule/cvv/cvv.directive.d.ts +19 -0
  122. package/lib/rule/date/date.directive.d.ts +20 -0
  123. package/lib/rule/date_format/date-format.directive.d.ts +20 -0
  124. package/lib/rule/debit_card/debit-card.directive.d.ts +19 -0
  125. package/lib/rule/different/different.directive.d.ts +24 -0
  126. package/lib/rule/dimension/dimension.directive.d.ts +21 -0
  127. package/lib/rule/email/email.directive.d.ts +19 -0
  128. package/lib/rule/ends_with/ends-with.directive.d.ts +20 -0
  129. package/lib/rule/equals/equals.directive.d.ts +20 -0
  130. package/lib/rule/exists/exists.directive.d.ts +21 -0
  131. package/lib/rule/image/image.directive.d.ts +19 -0
  132. package/lib/rule/in/in.directive.d.ts +20 -0
  133. package/lib/rule/includes/includes.directive.d.ts +20 -0
  134. package/lib/rule/index.d.ts +59 -0
  135. package/lib/rule/integer/integer.directive.d.ts +19 -0
  136. package/lib/rule/ip/ip.directive.d.ts +19 -0
  137. package/lib/rule/ipv4/ipv4.directive.d.ts +19 -0
  138. package/lib/rule/ipv6/ipv6.directive.d.ts +19 -0
  139. package/lib/rule/json/json.directive.d.ts +19 -0
  140. package/lib/rule/max/max.directive.d.ts +20 -0
  141. package/lib/rule/mimes/mimes.directive.d.ts +20 -0
  142. package/lib/rule/min/min.directive.d.ts +20 -0
  143. package/lib/rule/not_equals/not-equals.directive.d.ts +20 -0
  144. package/lib/rule/not_in/not-in.directive.d.ts +20 -0
  145. package/lib/rule/not_regex/not-regex.directive.d.ts +20 -0
  146. package/lib/rule/number/number.directive.d.ts +19 -0
  147. package/lib/rule/phone_no/phone-no.directive.d.ts +20 -0
  148. package/lib/rule/range/range.directive.d.ts +20 -0
  149. package/lib/rule/regex/regex.directive.d.ts +20 -0
  150. package/lib/rule/required/required.directive.d.ts +19 -0
  151. package/lib/rule/required_if/required-if.directive.d.ts +24 -0
  152. package/lib/rule/required_unless/required-unless.directive.d.ts +24 -0
  153. package/lib/rule/required_with/required-with.directive.d.ts +24 -0
  154. package/lib/rule/required_with_all/required-with-all.directive.d.ts +24 -0
  155. package/lib/rule/required_without/required-without.directive.d.ts +24 -0
  156. package/lib/rule/required_without_all/required-without-all.directive.d.ts +24 -0
  157. package/lib/rule/rule.module.d.ts +65 -0
  158. package/lib/rule/same/same.directive.d.ts +24 -0
  159. package/lib/rule/size/size.directive.d.ts +20 -0
  160. package/lib/rule/starts_with/starts-with.directive.d.ts +20 -0
  161. package/lib/rule/strength/strength.directive.d.ts +20 -0
  162. package/lib/rule/string/string.directive.d.ts +19 -0
  163. package/lib/rule/under/under.directive.d.ts +20 -0
  164. package/lib/rule/unique/unique.directive.d.ts +21 -0
  165. package/lib/rule/url/url.directive.d.ts +19 -0
  166. package/lib/rule/uuid/uuid.directive.d.ts +19 -0
  167. package/lib/rule/video/video.directive.d.ts +19 -0
  168. package/lib/services/reactive.validate.d.ts +21 -0
  169. package/lib/transator.loader.d.ts +10 -0
  170. package/package.json +66 -0
  171. package/public-api.d.ts +7 -0
@@ -0,0 +1,49 @@
1
+ import { distinctUntilChanged, first } from 'rxjs/operators';
2
+ import { Directive, Input } from '@angular/core';
3
+ import { NG_ASYNC_VALIDATORS } from '@angular/forms';
4
+ import { debounceTime, map, of, switchMap } from 'rxjs';
5
+ import { cloneDeep } from '../../common.utils';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../services/utils.service";
8
+ import * as i2 from "../../services/messages-builder.service";
9
+ export class ExistsDirective {
10
+ constructor(el, utl, mb) {
11
+ this.el = el;
12
+ this.utl = utl;
13
+ this.mb = mb;
14
+ this.vmessage = {};
15
+ this.fieldName = 'field';
16
+ this.fieldName = this.el.nativeElement.name;
17
+ }
18
+ set message(data) {
19
+ this.vmessage = data;
20
+ }
21
+ validate(control) {
22
+ this.utl.setValidationRules(control, 'exists');
23
+ return control.valueChanges.pipe(debounceTime(200), distinctUntilChanged(), switchMap((value) => value ? this.isValid(value) : of(null)), first());
24
+ }
25
+ isValid(value) {
26
+ let cloned = cloneDeep(this.exists);
27
+ let request = { ...{ [this.exists.field || this.fieldName]: value }, ...cloned['request'] };
28
+ let exists = Object.assign(cloned, { request });
29
+ return this.utl.exists(exists).pipe(map((isValid) => {
30
+ return !isValid ? { 'exists': this.mb.call('exists', this.fieldName, this.vmessage) } : null;
31
+ }));
32
+ }
33
+ }
34
+ ExistsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ExistsDirective, deps: [{ token: i0.ElementRef }, { token: i1.UtilService }, { token: i2.MessageBuilderService }], target: i0.ɵɵFactoryTarget.Directive });
35
+ ExistsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: ExistsDirective, selector: "[exists]", inputs: { exists: "exists", message: "message" }, providers: [{ provide: NG_ASYNC_VALIDATORS, useExisting: ExistsDirective, multi: true }], ngImport: i0 });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ExistsDirective, decorators: [{
37
+ type: Directive,
38
+ args: [{
39
+ selector: '[exists]',
40
+ providers: [{ provide: NG_ASYNC_VALIDATORS, useExisting: ExistsDirective, multi: true }]
41
+ }]
42
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.UtilService }, { type: i2.MessageBuilderService }]; }, propDecorators: { exists: [{
43
+ type: Input,
44
+ args: ['exists']
45
+ }], message: [{
46
+ type: Input,
47
+ args: ['message']
48
+ }] } });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhpc3RzLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWFic29sdXRlLXZhbGlkYXRvci9zcmMvbGliL3J1bGUvZXhpc3RzL2V4aXN0cy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEtBQUssRUFBTyxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxTQUFTLEVBQWEsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxtQkFBbUIsRUFBcUQsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4RyxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7OztBQU8vQyxNQUFNLE9BQU8sZUFBZTtJQVczQixZQUNTLEVBQWlCLEVBQ2pCLEdBQWtCLEVBQ2xCLEVBQTJCO1FBRjNCLE9BQUUsR0FBRixFQUFFLENBQWU7UUFDakIsUUFBRyxHQUFILEdBQUcsQ0FBZTtRQUNsQixPQUFFLEdBQUYsRUFBRSxDQUF5QjtRQVp6QixhQUFRLEdBQXVCLEVBQUUsQ0FBQTtRQUNqQyxjQUFTLEdBQVksT0FBTyxDQUFDO1FBYWpDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFBO0lBQy9DLENBQUM7SUFYSixJQUNPLE9BQU8sQ0FBQyxJQUFxQjtRQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQTtJQUN4QixDQUFDO0lBVUQsUUFBUSxDQUFDLE9BQXVCO1FBQ2xDLElBQUksQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQzVCLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFDakIsb0JBQW9CLEVBQUUsRUFDdEIsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUM1RCxLQUFLLEVBQUUsQ0FDVixDQUFBO0lBQ1IsQ0FBQztJQUVVLE9BQU8sQ0FBQyxLQUFhO1FBQ3pCLElBQUksTUFBTSxHQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDcEMsSUFBSSxPQUFPLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQTtRQUMzRixJQUFJLE1BQU0sR0FBSSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBQyxFQUFDLE9BQU8sRUFBQyxDQUFDLENBQUE7UUFFN0MsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQy9CLEdBQUcsQ0FBQyxDQUFDLE9BQWdCLEVBQUUsRUFBRTtZQUNyQixPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFBO1FBQ2hHLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDOzs0R0F2Q1EsZUFBZTtnR0FBZixlQUFlLHFGQUZiLENBQUMsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7MkZBRS9FLGVBQWU7a0JBSjNCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFVBQVU7b0JBQ3BCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDO2lCQUMzRjsrSkFNaUIsTUFBTTtzQkFBdEIsS0FBSzt1QkFBQyxRQUFRO2dCQUVSLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpcnN0LCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IERpcmVjdGl2ZSxFbGVtZW50UmVmLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19BU1lOQ19WQUxJREFUT1JTLCBBc3luY1ZhbGlkYXRvciwgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3V0aWxzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIG1hcCwgT2JzZXJ2YWJsZSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBIdHRwUmVxdWVzdEFyZ3MsIExvY2FsaXplZE1lc3NhZ2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBNZXNzYWdlQnVpbGRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tZXNzYWdlcy1idWlsZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICcuLi8uLi9jb21tb24udXRpbHMnO1xyXG5cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbZXhpc3RzXScsXHJcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE5HX0FTWU5DX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBFeGlzdHNEaXJlY3RpdmUsIG11bHRpOiB0cnVlIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFeGlzdHNEaXJlY3RpdmUgaW1wbGVtZW50cyBBc3luY1ZhbGlkYXRvcntcclxuXHJcbiAgICBwcml2YXRlIHZtZXNzYWdlICA6IExvY2FsaXplZE1lc3NhZ2UgPSB7fVxyXG4gICAgcHJpdmF0ZSBmaWVsZE5hbWUgOiBzdHJpbmcgPSAnZmllbGQnO1xyXG5cclxuXHRASW5wdXQoJ2V4aXN0cycpIGV4aXN0cyAhOiBIdHRwUmVxdWVzdEFyZ3M7XHJcblx0QElucHV0KCdtZXNzYWdlJylcclxuICAgIHNldCBtZXNzYWdlKGRhdGE6TG9jYWxpemVkTWVzc2FnZSl7XHJcbiAgICAgICAgdGhpcy52bWVzc2FnZSA9IGRhdGFcclxuICAgIH1cclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIGVsIFx0IDogRWxlbWVudFJlZixcclxuXHRcdHByaXZhdGUgdXRsICA6IFV0aWxTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBtYlx0IDogTWVzc2FnZUJ1aWxkZXJTZXJ2aWNlLFxyXG5cdCl7XHJcbiAgICAgICAgdGhpcy5maWVsZE5hbWUgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQubmFtZVxyXG4gICAgfVxyXG5cclxuICAgIHZhbGlkYXRlKGNvbnRyb2w6QWJzdHJhY3RDb250cm9sKSA6IFByb21pc2U8VmFsaWRhdGlvbkVycm9yc3xudWxsPnwgT2JzZXJ2YWJsZTxWYWxpZGF0aW9uRXJyb3JzfG51bGw+ICB7XHJcblx0XHR0aGlzLnV0bC5zZXRWYWxpZGF0aW9uUnVsZXMoY29udHJvbCwnZXhpc3RzJyk7XHJcbiAgICAgICAgcmV0dXJuIGNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXHJcbiAgICAgICAgICAgIGRlYm91bmNlVGltZSgyMDApLFxyXG4gICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxyXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKHZhbHVlKSA9PiB2YWx1ZSA/IHRoaXMuaXNWYWxpZCh2YWx1ZSkgOiBvZihudWxsKSksXHJcbiAgICAgICAgICAgIGZpcnN0KClcclxuICAgICAgICApXHJcblx0fVxyXG5cclxuICAgIHByaXZhdGUgaXNWYWxpZCh2YWx1ZTogc3RyaW5nKTogUHJvbWlzZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4gfCBPYnNlcnZhYmxlPFZhbGlkYXRpb25FcnJvcnMgfCBudWxsPiB7XHJcbiAgICAgICAgbGV0IGNsb25lZCAgPSBjbG9uZURlZXAodGhpcy5leGlzdHMpXHJcbiAgICAgICAgbGV0IHJlcXVlc3QgPSB7IC4uLnsgW3RoaXMuZXhpc3RzLmZpZWxkIHx8IHRoaXMuZmllbGROYW1lXTogdmFsdWUgfSwgLi4uY2xvbmVkWydyZXF1ZXN0J10gfVxyXG4gICAgICAgIGxldCBleGlzdHMgID0gT2JqZWN0LmFzc2lnbihjbG9uZWQse3JlcXVlc3R9KVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy51dGwuZXhpc3RzKGV4aXN0cykucGlwZShcclxuICAgICAgICAgICAgbWFwKChpc1ZhbGlkOiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gIWlzVmFsaWQgPyB7ICdleGlzdHMnOiB0aGlzLm1iLmNhbGwoJ2V4aXN0cycsIHRoaXMuZmllbGROYW1lLCB0aGlzLnZtZXNzYWdlKSB9IDogbnVsbFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,41 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { NG_VALIDATORS } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/messages-builder.service";
5
+ import * as i2 from "../../services/utils.service";
6
+ export class ImageDirective {
7
+ constructor(mb, el, utl) {
8
+ this.mb = mb;
9
+ this.el = el;
10
+ this.utl = utl;
11
+ this.vmessage = {};
12
+ this.fieldName = 'field';
13
+ this.fieldName = this.el.nativeElement.name;
14
+ }
15
+ set message(data) {
16
+ this.vmessage = data;
17
+ }
18
+ validate(control) {
19
+ this.utl.setValidationRules(control, 'image');
20
+ return this.isValid(this.el.nativeElement.files);
21
+ }
22
+ isValid(fileInstance) {
23
+ if (!!fileInstance && fileInstance.length > 0 && !this.utl.image(fileInstance)) {
24
+ return { 'image': this.mb.call('image', this.fieldName, this.message) };
25
+ }
26
+ return null;
27
+ }
28
+ }
29
+ ImageDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ImageDirective, deps: [{ token: i1.MessageBuilderService }, { token: i0.ElementRef }, { token: i2.UtilService }], target: i0.ɵɵFactoryTarget.Directive });
30
+ ImageDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: ImageDirective, selector: "[image]", inputs: { message: "message" }, providers: [{ provide: NG_VALIDATORS, useExisting: ImageDirective, multi: true }], ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ImageDirective, decorators: [{
32
+ type: Directive,
33
+ args: [{
34
+ selector: '[image]',
35
+ providers: [{ provide: NG_VALIDATORS, useExisting: ImageDirective, multi: true }]
36
+ }]
37
+ }], ctorParameters: function () { return [{ type: i1.MessageBuilderService }, { type: i0.ElementRef }, { type: i2.UtilService }]; }, propDecorators: { message: [{
38
+ type: Input,
39
+ args: ['message']
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctYWJzb2x1dGUtdmFsaWRhdG9yL3NyYy9saWIvcnVsZS9pbWFnZS9pbWFnZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBZ0QsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVM3RixNQUFNLE9BQU8sY0FBYztJQVV2QixZQUNZLEVBQXlCLEVBQ3pCLEVBQWMsRUFDZCxHQUFnQjtRQUZoQixPQUFFLEdBQUYsRUFBRSxDQUF1QjtRQUN6QixPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsUUFBRyxHQUFILEdBQUcsQ0FBYTtRQVhwQixhQUFRLEdBQXFCLEVBQUUsQ0FBQTtRQUMvQixjQUFTLEdBQVcsT0FBTyxDQUFDO1FBV2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFBO0lBQUMsQ0FBQztJQVRqRCxJQUNJLE9BQU8sQ0FBQyxJQUFzQjtRQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQTtJQUN4QixDQUFDO0lBU0QsUUFBUSxDQUFDLE9BQXdCO1FBQzdCLElBQUksQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzlDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU8sT0FBTyxDQUFDLFlBQW9CO1FBQ2hDLElBQUksQ0FBQyxDQUFDLFlBQVksSUFBSSxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQzVFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUE7U0FDMUU7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOzsyR0EzQlEsY0FBYzsrRkFBZCxjQUFjLGtFQUZaLENBQUMsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDOzJGQUV4RSxjQUFjO2tCQUoxQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxTQUFTO29CQUNuQixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7aUJBQ3BGOytKQU9PLE9BQU87c0JBRFYsS0FBSzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBWYWxpZGF0b3IsIEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91dGlscy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWVzc2FnZUJ1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWVzc2FnZXMtYnVpbGRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9jYWxpemVkTWVzc2FnZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiAnW2ltYWdlXScsXHJcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBJbWFnZURpcmVjdGl2ZSwgbXVsdGk6IHRydWUgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEltYWdlRGlyZWN0aXZlIGltcGxlbWVudHMgVmFsaWRhdG9yIHtcclxuXHJcbiAgICBwcml2YXRlIHZtZXNzYWdlOiBMb2NhbGl6ZWRNZXNzYWdlID0ge31cclxuICAgIHByaXZhdGUgZmllbGROYW1lOiBzdHJpbmcgPSAnZmllbGQnO1xyXG5cclxuICAgIEBJbnB1dCgnbWVzc2FnZScpXHJcbiAgICBzZXQgbWVzc2FnZShkYXRhOiBMb2NhbGl6ZWRNZXNzYWdlKSB7XHJcbiAgICAgICAgdGhpcy52bWVzc2FnZSA9IGRhdGFcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIG1iOiBNZXNzYWdlQnVpbGRlclNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgICAgICBwcml2YXRlIHV0bDogVXRpbFNlcnZpY2VcclxuICAgICkgeyB0aGlzLmZpZWxkTmFtZSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5uYW1lIH1cclxuXHJcblxyXG4gICAgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xyXG4gICAgICAgIHRoaXMudXRsLnNldFZhbGlkYXRpb25SdWxlcyhjb250cm9sLCAnaW1hZ2UnKTtcclxuICAgICAgICByZXR1cm4gdGhpcy5pc1ZhbGlkKHRoaXMuZWwubmF0aXZlRWxlbWVudC5maWxlcyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpc1ZhbGlkKGZpbGVJbnN0YW5jZTogRmlsZVtdKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xyXG4gICAgICAgIGlmICghIWZpbGVJbnN0YW5jZSAmJiBmaWxlSW5zdGFuY2UubGVuZ3RoID4gMCAmJiAhdGhpcy51dGwuaW1hZ2UoZmlsZUluc3RhbmNlKSkge1xyXG4gICAgICAgICAgICByZXR1cm4geyAnaW1hZ2UnOiB0aGlzLm1iLmNhbGwoJ2ltYWdlJywgdGhpcy5maWVsZE5hbWUsIHRoaXMubWVzc2FnZSkgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbiJdfQ==
@@ -0,0 +1,45 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { NG_VALIDATORS } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/messages-builder.service";
5
+ import * as i2 from "../../services/utils.service";
6
+ export class InDirective {
7
+ constructor(mb, el, utl) {
8
+ this.mb = mb;
9
+ this.el = el;
10
+ this.utl = utl;
11
+ this.vmessage = {};
12
+ this.fieldName = 'field';
13
+ this.in = [];
14
+ this.fieldName = this.el.nativeElement.name;
15
+ }
16
+ set message(data) {
17
+ this.vmessage = data;
18
+ }
19
+ validate(control) {
20
+ this.utl.setValidationRules(control, 'in');
21
+ return this.isValid(control.value);
22
+ }
23
+ isValid(value) {
24
+ if (!!value && !this.utl.in(value, this.in)) {
25
+ return { 'in': this.mb.call('in', this.fieldName, this.in, this.vmessage) };
26
+ }
27
+ return null;
28
+ }
29
+ }
30
+ InDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: InDirective, deps: [{ token: i1.MessageBuilderService }, { token: i0.ElementRef }, { token: i2.UtilService }], target: i0.ɵɵFactoryTarget.Directive });
31
+ InDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: InDirective, selector: "[in]", inputs: { in: "in", message: "message" }, providers: [{ provide: NG_VALIDATORS, useExisting: InDirective, multi: true }], ngImport: i0 });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: InDirective, decorators: [{
33
+ type: Directive,
34
+ args: [{
35
+ selector: '[in]',
36
+ providers: [{ provide: NG_VALIDATORS, useExisting: InDirective, multi: true }]
37
+ }]
38
+ }], ctorParameters: function () { return [{ type: i1.MessageBuilderService }, { type: i0.ElementRef }, { type: i2.UtilService }]; }, propDecorators: { in: [{
39
+ type: Input,
40
+ args: ['in']
41
+ }], message: [{
42
+ type: Input,
43
+ args: ['message']
44
+ }] } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW4uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctYWJzb2x1dGUtdmFsaWRhdG9yL3NyYy9saWIvcnVsZS9pbi9pbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBWSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBK0MsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVM1RixNQUFNLE9BQU8sV0FBVztJQVd2QixZQUNTLEVBQTBCLEVBQzFCLEVBQWdCLEVBQ2hCLEdBQWlCO1FBRmpCLE9BQUUsR0FBRixFQUFFLENBQXdCO1FBQzFCLE9BQUUsR0FBRixFQUFFLENBQWM7UUFDaEIsUUFBRyxHQUFILEdBQUcsQ0FBYztRQVpmLGFBQVEsR0FBdUIsRUFBRSxDQUFBO1FBQ2pDLGNBQVMsR0FBWSxPQUFPLENBQUM7UUFFM0IsT0FBRSxHQUF5QixFQUFFLENBQUM7UUFVekMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUM7SUFBQSxDQUFDO0lBVC9DLElBQ08sT0FBTyxDQUFDLElBQXFCO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFBO0lBQ3hCLENBQUM7SUFTRixRQUFRLENBQUMsT0FBdUI7UUFDakMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU8sT0FBTyxDQUFDLEtBQVk7UUFDM0IsSUFBRyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBQztZQUN6QyxPQUFPLEVBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBQyxJQUFJLENBQUMsU0FBUyxFQUFDLElBQUksQ0FBQyxFQUFFLEVBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFDLENBQUE7U0FDdEU7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNiLENBQUM7O3dHQTVCVyxXQUFXOzRGQUFYLFdBQVcseUVBRlQsQ0FBQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7MkZBRXJFLFdBQVc7a0JBSnZCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLE1BQU07b0JBQ2hCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7aUJBQ2pGOytKQU1hLEVBQUU7c0JBQWQsS0FBSzt1QkFBQyxJQUFJO2dCQUVKLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLEVsZW1lbnRSZWYsSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMSURBVE9SUywgVmFsaWRhdG9yLEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91dGlscy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWVzc2FnZUJ1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWVzc2FnZXMtYnVpbGRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9jYWxpemVkTWVzc2FnZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiAnW2luXScsXHJcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBJbkRpcmVjdGl2ZSwgbXVsdGk6IHRydWUgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEluRGlyZWN0aXZlIGltcGxlbWVudHMgVmFsaWRhdG9ye1xyXG5cclxuICAgIHByaXZhdGUgdm1lc3NhZ2UgIDogTG9jYWxpemVkTWVzc2FnZSA9IHt9XHJcbiAgICBwcml2YXRlIGZpZWxkTmFtZSA6IHN0cmluZyA9ICdmaWVsZCc7XHJcblxyXG5cdEBJbnB1dCgnaW4nKSBpbiAgIDogc3RyaW5nIHwgc3RyaW5nW10gPSBbXTtcclxuXHRASW5wdXQoJ21lc3NhZ2UnKVxyXG4gICAgc2V0IG1lc3NhZ2UoZGF0YTpMb2NhbGl6ZWRNZXNzYWdlKXtcclxuICAgICAgICB0aGlzLnZtZXNzYWdlID0gZGF0YVxyXG4gICAgfVxyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgbWJcdDogTWVzc2FnZUJ1aWxkZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBlbCBcdDogRWxlbWVudFJlZixcclxuXHRcdHByaXZhdGUgdXRsIDogVXRpbFNlcnZpY2VcclxuXHQpe3RoaXMuZmllbGROYW1lID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50Lm5hbWU7fVxyXG5cclxuXHJcbiAgXHR2YWxpZGF0ZShjb250cm9sOkFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxse1xyXG5cdFx0dGhpcy51dGwuc2V0VmFsaWRhdGlvblJ1bGVzKGNvbnRyb2wsJ2luJyk7XHJcblx0XHRyZXR1cm4gdGhpcy5pc1ZhbGlkKGNvbnRyb2wudmFsdWUpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBpc1ZhbGlkKHZhbHVlOnN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxse1xyXG5cdFx0aWYoISF2YWx1ZSAmJiAhdGhpcy51dGwuaW4odmFsdWUsdGhpcy5pbikpe1xyXG5cdFx0XHRyZXR1cm4geydpbic6IHRoaXMubWIuY2FsbCgnaW4nLHRoaXMuZmllbGROYW1lLHRoaXMuaW4sdGhpcy52bWVzc2FnZSl9XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gbnVsbDtcclxuXHR9XHJcbn1cclxuIl19
@@ -0,0 +1,45 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { NG_VALIDATORS } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/messages-builder.service";
5
+ import * as i2 from "../../services/utils.service";
6
+ export class IncludesDirective {
7
+ constructor(mb, el, utl) {
8
+ this.mb = mb;
9
+ this.el = el;
10
+ this.utl = utl;
11
+ this.vmessage = {};
12
+ this.fieldName = 'field';
13
+ this.includes = [];
14
+ this.fieldName = this.el.nativeElement.name;
15
+ }
16
+ set message(data) {
17
+ this.vmessage = data;
18
+ }
19
+ validate(control) {
20
+ this.utl.setValidationRules(control, 'includes');
21
+ return this.isValid(control.value);
22
+ }
23
+ isValid(value) {
24
+ if (!!value && !this.utl.includes(value, this.includes)) {
25
+ return { 'includes': this.mb.call('includes', this.fieldName, this.includes, this.vmessage) };
26
+ }
27
+ return null;
28
+ }
29
+ }
30
+ IncludesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: IncludesDirective, deps: [{ token: i1.MessageBuilderService }, { token: i0.ElementRef }, { token: i2.UtilService }], target: i0.ɵɵFactoryTarget.Directive });
31
+ IncludesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: IncludesDirective, selector: "[includes]", inputs: { includes: "includes", message: "message" }, providers: [{ provide: NG_VALIDATORS, useExisting: IncludesDirective, multi: true }], ngImport: i0 });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: IncludesDirective, decorators: [{
33
+ type: Directive,
34
+ args: [{
35
+ selector: '[includes]',
36
+ providers: [{ provide: NG_VALIDATORS, useExisting: IncludesDirective, multi: true }]
37
+ }]
38
+ }], ctorParameters: function () { return [{ type: i1.MessageBuilderService }, { type: i0.ElementRef }, { type: i2.UtilService }]; }, propDecorators: { includes: [{
39
+ type: Input,
40
+ args: ['includes']
41
+ }], message: [{
42
+ type: Input,
43
+ args: ['message']
44
+ }] } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jbHVkZXMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctYWJzb2x1dGUtdmFsaWRhdG9yL3NyYy9saWIvcnVsZS9pbmNsdWRlcy9pbmNsdWRlcy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBWSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBK0MsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVM1RixNQUFNLE9BQU8saUJBQWlCO0lBVzdCLFlBQ1MsRUFBMEIsRUFDMUIsRUFBZ0IsRUFDaEIsR0FBaUI7UUFGakIsT0FBRSxHQUFGLEVBQUUsQ0FBd0I7UUFDMUIsT0FBRSxHQUFGLEVBQUUsQ0FBYztRQUNoQixRQUFHLEdBQUgsR0FBRyxDQUFjO1FBWmYsYUFBUSxHQUF1QixFQUFFLENBQUE7UUFDakMsY0FBUyxHQUFZLE9BQU8sQ0FBQztRQUVyQixhQUFRLEdBQXVCLEVBQUUsQ0FBQztRQVVuRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztJQUFBLENBQUM7SUFUL0MsSUFDTyxPQUFPLENBQUMsSUFBcUI7UUFDN0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUE7SUFDeEIsQ0FBQztJQVNGLFFBQVEsQ0FBQyxPQUF1QjtRQUNqQyxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBQyxVQUFVLENBQUMsQ0FBQztRQUNoRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFVSxPQUFPLENBQUMsS0FBYTtRQUN6QixJQUFJLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQTtTQUNoRztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7OzhHQTVCUSxpQkFBaUI7a0dBQWpCLGlCQUFpQiwyRkFGZixDQUFDLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDOzJGQUUzRSxpQkFBaUI7a0JBSjdCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLG1CQUFtQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQztpQkFDdkY7K0pBTW1CLFFBQVE7c0JBQTFCLEtBQUs7dUJBQUMsVUFBVTtnQkFFVixPQUFPO3NCQURiLEtBQUs7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSxFbGVtZW50UmVmLElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIFZhbGlkYXRvcixBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbHMuc2VydmljZSc7XHJcbmltcG9ydCB7IE1lc3NhZ2VCdWlsZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21lc3NhZ2VzLWJ1aWxkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IExvY2FsaXplZE1lc3NhZ2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1tpbmNsdWRlc10nLFxyXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBOR19WQUxJREFUT1JTLCB1c2VFeGlzdGluZzogSW5jbHVkZXNEaXJlY3RpdmUsIG11bHRpOiB0cnVlIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmNsdWRlc0RpcmVjdGl2ZSBpbXBsZW1lbnRzIFZhbGlkYXRvcntcclxuXHJcbiAgICBwcml2YXRlIHZtZXNzYWdlICA6IExvY2FsaXplZE1lc3NhZ2UgPSB7fVxyXG4gICAgcHJpdmF0ZSBmaWVsZE5hbWUgOiBzdHJpbmcgPSAnZmllbGQnO1xyXG5cclxuXHRASW5wdXQoJ2luY2x1ZGVzJykgaW5jbHVkZXMgOiBzdHJpbmcgfCBzdHJpbmdbXSA9IFtdO1xyXG5cdEBJbnB1dCgnbWVzc2FnZScpXHJcbiAgICBzZXQgbWVzc2FnZShkYXRhOkxvY2FsaXplZE1lc3NhZ2Upe1xyXG4gICAgICAgIHRoaXMudm1lc3NhZ2UgPSBkYXRhXHJcbiAgICB9XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHJpdmF0ZSBtYlx0OiBNZXNzYWdlQnVpbGRlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGVsIFx0OiBFbGVtZW50UmVmLFxyXG5cdFx0cHJpdmF0ZSB1dGwgOiBVdGlsU2VydmljZVxyXG5cdCl7dGhpcy5maWVsZE5hbWUgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQubmFtZTt9XHJcblxyXG5cclxuICBcdHZhbGlkYXRlKGNvbnRyb2w6QWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGx7XHJcblx0XHR0aGlzLnV0bC5zZXRWYWxpZGF0aW9uUnVsZXMoY29udHJvbCwnaW5jbHVkZXMnKTtcclxuXHRcdHJldHVybiB0aGlzLmlzVmFsaWQoY29udHJvbC52YWx1ZSk7XHJcblx0fVxyXG5cclxuICAgIHByaXZhdGUgaXNWYWxpZCh2YWx1ZTogc3RyaW5nKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xyXG4gICAgICAgIGlmICghIXZhbHVlICYmICF0aGlzLnV0bC5pbmNsdWRlcyh2YWx1ZSwgdGhpcy5pbmNsdWRlcykpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHsgJ2luY2x1ZGVzJzogdGhpcy5tYi5jYWxsKCdpbmNsdWRlcycsIHRoaXMuZmllbGROYW1lLCB0aGlzLmluY2x1ZGVzLCB0aGlzLnZtZXNzYWdlKSB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,60 @@
1
+ export * from './above/above.directive';
2
+ export * from './accepted/accepted.directive';
3
+ export * from './after/after.directive';
4
+ export * from './alpha/alpha.directive';
5
+ export * from './alpha_numeric/alpha-numeric.directive';
6
+ export * from './array/array.directive';
7
+ export * from './before/before.directive';
8
+ export * from './boolean/boolean.directive';
9
+ export * from './confirmed/confirmed.directive';
10
+ export * from './date/date.directive';
11
+ export * from './date_format/date-format.directive';
12
+ export * from './different/different.directive';
13
+ export * from './email/email.directive';
14
+ export * from './ends_with/ends-with.directive';
15
+ export * from './equals/equals.directive';
16
+ export * from './in/in.directive';
17
+ export * from './includes/includes.directive';
18
+ export * from './integer/integer.directive';
19
+ export * from './ip/ip.directive';
20
+ export * from './ipv4/ipv4.directive';
21
+ export * from './ipv6/ipv6.directive';
22
+ export * from './json/json.directive';
23
+ export * from './max/max.directive';
24
+ export * from './min/min.directive';
25
+ export * from './not_equals/not-equals.directive';
26
+ export * from './not_in/not-in.directive';
27
+ export * from './number/number.directive';
28
+ export * from './range/range.directive';
29
+ export * from './between/between.directive';
30
+ export * from './regex/regex.directive';
31
+ export * from './same/same.directive';
32
+ export * from './starts_with/starts-with.directive';
33
+ export * from './string/string.directive';
34
+ export * from './under/under.directive';
35
+ export * from './url/url.directive';
36
+ export * from './alpha_dash/alpha-dash.directive';
37
+ export * from './not_regex/not-regex.directive';
38
+ export * from './uuid/uuid.directive';
39
+ export * from './unique/unique.directive';
40
+ export * from './credit_card/credit-card.directive';
41
+ export * from './debit_card/debit-card.directive';
42
+ export * from './cvv/cvv.directive';
43
+ export * from './strength/strength.directive';
44
+ export * from './phone_no/phone-no.directive';
45
+ export * from './required/required.directive';
46
+ export * from './required_if/required-if.directive';
47
+ export * from './required_unless/required-unless.directive';
48
+ export * from './required_with/required-with.directive';
49
+ export * from './required_with_all/required-with-all.directive';
50
+ export * from './required_without/required-without.directive';
51
+ export * from './required_without_all/required-without-all.directive';
52
+ export * from './mimes/mimes.directive';
53
+ export * from './size/size.directive';
54
+ export * from './dimension/dimension.directive';
55
+ export * from './image/image.directive';
56
+ export * from './video/video.directive';
57
+ export * from './exists/exists.directive';
58
+ export * from './rule.directive';
59
+ export * from './rule.module';
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1hYnNvbHV0ZS12YWxpZGF0b3Ivc3JjL2xpYi9ydWxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDO0FBRTFDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Fib3ZlL2Fib3ZlLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYWNjZXB0ZWQvYWNjZXB0ZWQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9hZnRlci9hZnRlci5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2FscGhhL2FscGhhLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYWxwaGFfbnVtZXJpYy9hbHBoYS1udW1lcmljLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYXJyYXkvYXJyYXkuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9iZWZvcmUvYmVmb3JlLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYm9vbGVhbi9ib29sZWFuLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlybWVkL2NvbmZpcm1lZC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2RhdGUvZGF0ZS5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2RhdGVfZm9ybWF0L2RhdGUtZm9ybWF0LmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZGlmZmVyZW50L2RpZmZlcmVudC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2VtYWlsL2VtYWlsLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZW5kc193aXRoL2VuZHMtd2l0aC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2VxdWFscy9lcXVhbHMuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9pbi9pbi5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2luY2x1ZGVzL2luY2x1ZGVzLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vaW50ZWdlci9pbnRlZ2VyLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vaXAvaXAuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9pcHY0L2lwdjQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9pcHY2L2lwdjYuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9qc29uL2pzb24uZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9tYXgvbWF4LmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbWluL21pbi5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL25vdF9lcXVhbHMvbm90LWVxdWFscy5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL25vdF9pbi9ub3QtaW4uZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9udW1iZXIvbnVtYmVyLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmFuZ2UvcmFuZ2UuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9iZXR3ZWVuL2JldHdlZW4uZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9yZWdleC9yZWdleC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3NhbWUvc2FtZS5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3N0YXJ0c193aXRoL3N0YXJ0cy13aXRoLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3RyaW5nL3N0cmluZy5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3VuZGVyL3VuZGVyLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdXJsL3VybC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2FscGhhX2Rhc2gvYWxwaGEtZGFzaC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL25vdF9yZWdleC9ub3QtcmVnZXguZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi91dWlkL3V1aWQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi91bmlxdWUvdW5pcXVlLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY3JlZGl0X2NhcmQvY3JlZGl0LWNhcmQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9kZWJpdF9jYXJkL2RlYml0LWNhcmQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9jdnYvY3Z2LmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3RyZW5ndGgvc3RyZW5ndGguZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9waG9uZV9uby9waG9uZS1uby5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3JlcXVpcmVkL3JlcXVpcmVkLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVxdWlyZWRfaWYvcmVxdWlyZWQtaWYuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9yZXF1aXJlZF91bmxlc3MvcmVxdWlyZWQtdW5sZXNzLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVxdWlyZWRfd2l0aC9yZXF1aXJlZC13aXRoLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVxdWlyZWRfd2l0aF9hbGwvcmVxdWlyZWQtd2l0aC1hbGwuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9yZXF1aXJlZF93aXRob3V0L3JlcXVpcmVkLXdpdGhvdXQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9yZXF1aXJlZF93aXRob3V0X2FsbC9yZXF1aXJlZC13aXRob3V0LWFsbC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL21pbWVzL21pbWVzLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2l6ZS9zaXplLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZGltZW5zaW9uL2RpbWVuc2lvbi5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ltYWdlL2ltYWdlLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdmlkZW8vdmlkZW8uZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9leGlzdHMvZXhpc3RzLmRpcmVjdGl2ZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL3J1bGUuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9ydWxlLm1vZHVsZSc7XHJcblxyXG4iXX0=
@@ -0,0 +1,41 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { NG_VALIDATORS } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/messages-builder.service";
5
+ import * as i2 from "../../services/utils.service";
6
+ export class IntegerDirective {
7
+ constructor(mb, el, utl) {
8
+ this.mb = mb;
9
+ this.el = el;
10
+ this.utl = utl;
11
+ this.vmessage = {};
12
+ this.fieldName = 'field';
13
+ this.fieldName = this.el.nativeElement.name;
14
+ }
15
+ set message(data) {
16
+ this.vmessage = data;
17
+ }
18
+ validate(control) {
19
+ this.utl.setValidationRules(control, 'integer');
20
+ return this.isValid(control.value);
21
+ }
22
+ isValid(value) {
23
+ if (!!value && !this.utl.integer(value)) {
24
+ return { 'integer': this.mb.call('integer', this.fieldName, this.vmessage) };
25
+ }
26
+ return null;
27
+ }
28
+ }
29
+ IntegerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: IntegerDirective, deps: [{ token: i1.MessageBuilderService }, { token: i0.ElementRef }, { token: i2.UtilService }], target: i0.ɵɵFactoryTarget.Directive });
30
+ IntegerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: IntegerDirective, selector: "[integer]", inputs: { message: "message" }, providers: [{ provide: NG_VALIDATORS, useExisting: IntegerDirective, multi: true }], ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: IntegerDirective, decorators: [{
32
+ type: Directive,
33
+ args: [{
34
+ selector: '[integer]',
35
+ providers: [{ provide: NG_VALIDATORS, useExisting: IntegerDirective, multi: true }]
36
+ }]
37
+ }], ctorParameters: function () { return [{ type: i1.MessageBuilderService }, { type: i0.ElementRef }, { type: i2.UtilService }]; }, propDecorators: { message: [{
38
+ type: Input,
39
+ args: ['message']
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1hYnNvbHV0ZS12YWxpZGF0b3Ivc3JjL2xpYi9ydWxlL2ludGVnZXIvaW50ZWdlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBWSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBK0MsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVM1RixNQUFNLE9BQU8sZ0JBQWdCO0lBVTVCLFlBQ1MsRUFBMEIsRUFDMUIsRUFBZ0IsRUFDaEIsR0FBaUI7UUFGakIsT0FBRSxHQUFGLEVBQUUsQ0FBd0I7UUFDMUIsT0FBRSxHQUFGLEVBQUUsQ0FBYztRQUNoQixRQUFHLEdBQUgsR0FBRyxDQUFjO1FBWGYsYUFBUSxHQUF1QixFQUFFLENBQUE7UUFDakMsY0FBUyxHQUFZLE9BQU8sQ0FBQztRQVd0QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQTtJQUFBLENBQUM7SUFUOUMsSUFDTyxPQUFPLENBQUMsSUFBcUI7UUFDN0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUE7SUFDeEIsQ0FBQztJQVNGLFFBQVEsQ0FBQyxPQUF1QjtRQUNqQyxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBQyxTQUFTLENBQUMsQ0FBQztRQUMvQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFVSxPQUFPLENBQUMsS0FBYTtRQUN6QixJQUFJLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNyQyxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFBO1NBQy9FO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQzs7NkdBM0JRLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLG9FQUZkLENBQUMsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7MkZBRTFFLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsV0FBVztvQkFDckIsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDO2lCQUN0RjsrSkFPTyxPQUFPO3NCQURiLEtBQUs7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSxFbGVtZW50UmVmLElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIFZhbGlkYXRvcixBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbHMuc2VydmljZSc7XHJcbmltcG9ydCB7IE1lc3NhZ2VCdWlsZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21lc3NhZ2VzLWJ1aWxkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IExvY2FsaXplZE1lc3NhZ2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1tpbnRlZ2VyXScsXHJcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBJbnRlZ2VyRGlyZWN0aXZlLCBtdWx0aTogdHJ1ZSB9XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW50ZWdlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIFZhbGlkYXRvcntcclxuXHJcbiAgICBwcml2YXRlIHZtZXNzYWdlICA6IExvY2FsaXplZE1lc3NhZ2UgPSB7fVxyXG4gICAgcHJpdmF0ZSBmaWVsZE5hbWUgOiBzdHJpbmcgPSAnZmllbGQnO1xyXG5cclxuXHRASW5wdXQoJ21lc3NhZ2UnKVxyXG4gICAgc2V0IG1lc3NhZ2UoZGF0YTpMb2NhbGl6ZWRNZXNzYWdlKXtcclxuICAgICAgICB0aGlzLnZtZXNzYWdlID0gZGF0YVxyXG4gICAgfVxyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgbWJcdDogTWVzc2FnZUJ1aWxkZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBlbCBcdDogRWxlbWVudFJlZixcclxuXHRcdHByaXZhdGUgdXRsIDogVXRpbFNlcnZpY2VcclxuXHQpe3RoaXMuZmllbGROYW1lID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50Lm5hbWV9XHJcblxyXG5cclxuICBcdHZhbGlkYXRlKGNvbnRyb2w6QWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGx7XHJcblx0XHR0aGlzLnV0bC5zZXRWYWxpZGF0aW9uUnVsZXMoY29udHJvbCwnaW50ZWdlcicpO1xyXG5cdFx0cmV0dXJuIHRoaXMuaXNWYWxpZChjb250cm9sLnZhbHVlKTtcclxuXHR9XHJcblxyXG4gICAgcHJpdmF0ZSBpc1ZhbGlkKHZhbHVlOiBzdHJpbmcpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XHJcbiAgICAgICAgaWYgKCEhdmFsdWUgJiYgIXRoaXMudXRsLmludGVnZXIodmFsdWUpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7ICdpbnRlZ2VyJzogdGhpcy5tYi5jYWxsKCdpbnRlZ2VyJywgdGhpcy5maWVsZE5hbWUsIHRoaXMudm1lc3NhZ2UpIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,41 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { NG_VALIDATORS } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/messages-builder.service";
5
+ import * as i2 from "../../services/utils.service";
6
+ export class IpDirective {
7
+ constructor(mb, el, utl) {
8
+ this.mb = mb;
9
+ this.el = el;
10
+ this.utl = utl;
11
+ this.vmessage = {};
12
+ this.fieldName = 'field';
13
+ this.fieldName = this.el.nativeElement.name;
14
+ }
15
+ set message(data) {
16
+ this.vmessage = data;
17
+ }
18
+ validate(control) {
19
+ this.utl.setValidationRules(control, 'ip');
20
+ return this.isValid(control.value);
21
+ }
22
+ isValid(value) {
23
+ if (!!value && !this.utl.ip(value)) {
24
+ return { 'ip': this.mb.call('ip', this.fieldName, this.vmessage) };
25
+ }
26
+ return null;
27
+ }
28
+ }
29
+ IpDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: IpDirective, deps: [{ token: i1.MessageBuilderService }, { token: i0.ElementRef }, { token: i2.UtilService }], target: i0.ɵɵFactoryTarget.Directive });
30
+ IpDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: IpDirective, selector: "[ip]", inputs: { message: "message" }, providers: [{ provide: NG_VALIDATORS, useExisting: IpDirective, multi: true }], ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: IpDirective, decorators: [{
32
+ type: Directive,
33
+ args: [{
34
+ selector: '[ip]',
35
+ providers: [{ provide: NG_VALIDATORS, useExisting: IpDirective, multi: true }]
36
+ }]
37
+ }], ctorParameters: function () { return [{ type: i1.MessageBuilderService }, { type: i0.ElementRef }, { type: i2.UtilService }]; }, propDecorators: { message: [{
38
+ type: Input,
39
+ args: ['message']
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXAuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctYWJzb2x1dGUtdmFsaWRhdG9yL3NyYy9saWIvcnVsZS9pcC9pcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLGFBQWEsRUFBK0MsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVM1RixNQUFNLE9BQU8sV0FBVztJQVV2QixZQUNTLEVBQTBCLEVBQzFCLEVBQWdCLEVBQ2hCLEdBQWlCO1FBRmpCLE9BQUUsR0FBRixFQUFFLENBQXdCO1FBQzFCLE9BQUUsR0FBRixFQUFFLENBQWM7UUFDaEIsUUFBRyxHQUFILEdBQUcsQ0FBYztRQVhmLGFBQVEsR0FBdUIsRUFBRSxDQUFBO1FBQ2pDLGNBQVMsR0FBWSxPQUFPLENBQUM7UUFXdEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUE7SUFBQSxDQUFDO0lBVDlDLElBQ08sT0FBTyxDQUFDLElBQXFCO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFBO0lBQ3hCLENBQUM7SUFTRCxRQUFRLENBQUMsT0FBd0I7UUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDM0MsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU8sT0FBTyxDQUFDLEtBQWE7UUFDekIsSUFBSSxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDaEMsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQTtTQUNyRTtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7O3dHQTNCUSxXQUFXOzRGQUFYLFdBQVcsK0RBRlQsQ0FBQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7MkZBRXJFLFdBQVc7a0JBSnZCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLE1BQU07b0JBQ2hCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7aUJBQ2pGOytKQU9PLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCxFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIFZhbGlkYXRvcixBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbHMuc2VydmljZSc7XHJcbmltcG9ydCB7IE1lc3NhZ2VCdWlsZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21lc3NhZ2VzLWJ1aWxkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IExvY2FsaXplZE1lc3NhZ2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1tpcF0nLFxyXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBOR19WQUxJREFUT1JTLCB1c2VFeGlzdGluZzogSXBEaXJlY3RpdmUsIG11bHRpOiB0cnVlIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJcERpcmVjdGl2ZSBpbXBsZW1lbnRzIFZhbGlkYXRvcntcclxuXHJcbiAgICBwcml2YXRlIHZtZXNzYWdlICA6IExvY2FsaXplZE1lc3NhZ2UgPSB7fVxyXG4gICAgcHJpdmF0ZSBmaWVsZE5hbWUgOiBzdHJpbmcgPSAnZmllbGQnO1xyXG5cclxuXHRASW5wdXQoJ21lc3NhZ2UnKVxyXG4gICAgc2V0IG1lc3NhZ2UoZGF0YTpMb2NhbGl6ZWRNZXNzYWdlKXtcclxuICAgICAgICB0aGlzLnZtZXNzYWdlID0gZGF0YVxyXG4gICAgfVxyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgbWJcdDogTWVzc2FnZUJ1aWxkZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBlbCBcdDogRWxlbWVudFJlZixcclxuXHRcdHByaXZhdGUgdXRsIDogVXRpbFNlcnZpY2VcclxuXHQpe3RoaXMuZmllbGROYW1lID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50Lm5hbWV9XHJcblxyXG5cclxuICAgIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcclxuICAgICAgICB0aGlzLnV0bC5zZXRWYWxpZGF0aW9uUnVsZXMoY29udHJvbCwgJ2lwJyk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNWYWxpZChjb250cm9sLnZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGlzVmFsaWQodmFsdWU6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcclxuICAgICAgICBpZiAoISF2YWx1ZSAmJiAhdGhpcy51dGwuaXAodmFsdWUpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7ICdpcCc6IHRoaXMubWIuY2FsbCgnaXAnLCB0aGlzLmZpZWxkTmFtZSwgdGhpcy52bWVzc2FnZSkgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,41 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { NG_VALIDATORS } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/messages-builder.service";
5
+ import * as i2 from "../../services/utils.service";
6
+ export class Ipv4Directive {
7
+ constructor(mb, el, utl) {
8
+ this.mb = mb;
9
+ this.el = el;
10
+ this.utl = utl;
11
+ this.vmessage = {};
12
+ this.fieldName = 'field';
13
+ this.fieldName = this.el.nativeElement.name;
14
+ }
15
+ set message(data) {
16
+ this.vmessage = data;
17
+ }
18
+ validate(control) {
19
+ this.utl.setValidationRules(control, 'ipv4');
20
+ return this.isValid(control.value);
21
+ }
22
+ isValid(value) {
23
+ if (!!value && !this.utl.ipv4(value)) {
24
+ return { 'ipv4': this.mb.call('ipv4', this.fieldName, this.vmessage) };
25
+ }
26
+ return null;
27
+ }
28
+ }
29
+ Ipv4Directive.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: Ipv4Directive, deps: [{ token: i1.MessageBuilderService }, { token: i0.ElementRef }, { token: i2.UtilService }], target: i0.ɵɵFactoryTarget.Directive });
30
+ Ipv4Directive.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: Ipv4Directive, selector: "[ipv4]", inputs: { message: "message" }, providers: [{ provide: NG_VALIDATORS, useExisting: Ipv4Directive, multi: true }], ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: Ipv4Directive, decorators: [{
32
+ type: Directive,
33
+ args: [{
34
+ selector: '[ipv4]',
35
+ providers: [{ provide: NG_VALIDATORS, useExisting: Ipv4Directive, multi: true }]
36
+ }]
37
+ }], ctorParameters: function () { return [{ type: i1.MessageBuilderService }, { type: i0.ElementRef }, { type: i2.UtilService }]; }, propDecorators: { message: [{
38
+ type: Input,
39
+ args: ['message']
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXB2NC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1hYnNvbHV0ZS12YWxpZGF0b3Ivc3JjL2xpYi9ydWxlL2lwdjQvaXB2NC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLGFBQWEsRUFBK0MsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVM1RixNQUFNLE9BQU8sYUFBYTtJQVV6QixZQUNTLEVBQTBCLEVBQzFCLEVBQWdCLEVBQ2hCLEdBQWlCO1FBRmpCLE9BQUUsR0FBRixFQUFFLENBQXdCO1FBQzFCLE9BQUUsR0FBRixFQUFFLENBQWM7UUFDaEIsUUFBRyxHQUFILEdBQUcsQ0FBYztRQVhmLGFBQVEsR0FBdUIsRUFBRSxDQUFBO1FBQ2pDLGNBQVMsR0FBWSxPQUFPLENBQUM7UUFXdEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUE7SUFBQSxDQUFDO0lBVDlDLElBQ08sT0FBTyxDQUFDLElBQXFCO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFBO0lBQ3hCLENBQUM7SUFTRCxRQUFRLENBQUMsT0FBd0I7UUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDN0MsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU8sT0FBTyxDQUFDLEtBQWE7UUFDekIsSUFBSSxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDbEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQTtTQUN6RTtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7OzBHQTNCUSxhQUFhOzhGQUFiLGFBQWEsaUVBRlgsQ0FBQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7MkZBRXZFLGFBQWE7a0JBSnpCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFFBQVE7b0JBQ2xCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLGVBQWUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7aUJBQ25GOytKQU9PLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCxFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIFZhbGlkYXRvcixBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbHMuc2VydmljZSc7XHJcbmltcG9ydCB7IE1lc3NhZ2VCdWlsZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21lc3NhZ2VzLWJ1aWxkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IExvY2FsaXplZE1lc3NhZ2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1tpcHY0XScsXHJcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBJcHY0RGlyZWN0aXZlLCBtdWx0aTogdHJ1ZSB9XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSXB2NERpcmVjdGl2ZSBpbXBsZW1lbnRzIFZhbGlkYXRvcntcclxuXHJcbiAgICBwcml2YXRlIHZtZXNzYWdlICA6IExvY2FsaXplZE1lc3NhZ2UgPSB7fVxyXG4gICAgcHJpdmF0ZSBmaWVsZE5hbWUgOiBzdHJpbmcgPSAnZmllbGQnO1xyXG5cclxuXHRASW5wdXQoJ21lc3NhZ2UnKVxyXG4gICAgc2V0IG1lc3NhZ2UoZGF0YTpMb2NhbGl6ZWRNZXNzYWdlKXtcclxuICAgICAgICB0aGlzLnZtZXNzYWdlID0gZGF0YVxyXG4gICAgfVxyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgbWJcdDogTWVzc2FnZUJ1aWxkZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBlbCBcdDogRWxlbWVudFJlZixcclxuXHRcdHByaXZhdGUgdXRsIDogVXRpbFNlcnZpY2VcclxuXHQpe3RoaXMuZmllbGROYW1lID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50Lm5hbWV9XHJcblxyXG5cclxuICAgIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcclxuICAgICAgICB0aGlzLnV0bC5zZXRWYWxpZGF0aW9uUnVsZXMoY29udHJvbCwgJ2lwdjQnKTtcclxuICAgICAgICByZXR1cm4gdGhpcy5pc1ZhbGlkKGNvbnRyb2wudmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaXNWYWxpZCh2YWx1ZTogc3RyaW5nKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xyXG4gICAgICAgIGlmICghIXZhbHVlICYmICF0aGlzLnV0bC5pcHY0KHZhbHVlKSkge1xyXG4gICAgICAgICAgICByZXR1cm4geyAnaXB2NCc6IHRoaXMubWIuY2FsbCgnaXB2NCcsIHRoaXMuZmllbGROYW1lLCB0aGlzLnZtZXNzYWdlKSB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,41 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { NG_VALIDATORS } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/messages-builder.service";
5
+ import * as i2 from "../../services/utils.service";
6
+ export class Ipv6Directive {
7
+ constructor(mb, el, utl) {
8
+ this.mb = mb;
9
+ this.el = el;
10
+ this.utl = utl;
11
+ this.vmessage = {};
12
+ this.fieldName = 'field';
13
+ this.fieldName = this.el.nativeElement.name;
14
+ }
15
+ set message(data) {
16
+ this.vmessage = data;
17
+ }
18
+ validate(control) {
19
+ this.utl.setValidationRules(control, 'ipv6');
20
+ return this.isValid(control.value);
21
+ }
22
+ isValid(value) {
23
+ if (!this.utl.ipv6(value) && !!value) {
24
+ return { 'ipv6': this.mb.call('ipv6', this.fieldName, this.vmessage) };
25
+ }
26
+ return null;
27
+ }
28
+ }
29
+ Ipv6Directive.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: Ipv6Directive, deps: [{ token: i1.MessageBuilderService }, { token: i0.ElementRef }, { token: i2.UtilService }], target: i0.ɵɵFactoryTarget.Directive });
30
+ Ipv6Directive.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: Ipv6Directive, selector: "[ipv6]", inputs: { message: "message" }, providers: [{ provide: NG_VALIDATORS, useExisting: Ipv6Directive, multi: true }], ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: Ipv6Directive, decorators: [{
32
+ type: Directive,
33
+ args: [{
34
+ selector: '[ipv6]',
35
+ providers: [{ provide: NG_VALIDATORS, useExisting: Ipv6Directive, multi: true }]
36
+ }]
37
+ }], ctorParameters: function () { return [{ type: i1.MessageBuilderService }, { type: i0.ElementRef }, { type: i2.UtilService }]; }, propDecorators: { message: [{
38
+ type: Input,
39
+ args: ['message']
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXB2Ni5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1hYnNvbHV0ZS12YWxpZGF0b3Ivc3JjL2xpYi9ydWxlL2lwdjYvaXB2Ni5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLGFBQWEsRUFBK0MsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVM1RixNQUFNLE9BQU8sYUFBYTtJQVV6QixZQUNTLEVBQTBCLEVBQzFCLEVBQWdCLEVBQ2hCLEdBQWlCO1FBRmpCLE9BQUUsR0FBRixFQUFFLENBQXdCO1FBQzFCLE9BQUUsR0FBRixFQUFFLENBQWM7UUFDaEIsUUFBRyxHQUFILEdBQUcsQ0FBYztRQVhsQixhQUFRLEdBQXVCLEVBQUUsQ0FBQTtRQUM5QixjQUFTLEdBQVksT0FBTyxDQUFDO1FBV3RDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFBO0lBQUEsQ0FBQztJQVQzQyxJQUNJLE9BQU8sQ0FBQyxJQUFxQjtRQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQTtJQUN4QixDQUFDO0lBUUQsUUFBUSxDQUFDLE9BQXdCO1FBQzdCLElBQUksQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVPLE9BQU8sQ0FBQyxLQUFhO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFO1lBQ2xDLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUE7U0FDekU7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOzswR0ExQlEsYUFBYTs4RkFBYixhQUFhLGlFQUZYLENBQUMsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDOzJGQUV2RSxhQUFhO2tCQUp6QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxRQUFRO29CQUNsQixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxlQUFlLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDO2lCQUNuRjsrSkFPTyxPQUFPO3NCQURWLEtBQUs7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBWYWxpZGF0b3IsQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3V0aWxzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNZXNzYWdlQnVpbGRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tZXNzYWdlcy1idWlsZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZWRNZXNzYWdlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbaXB2Nl0nLFxyXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBOR19WQUxJREFUT1JTLCB1c2VFeGlzdGluZzogSXB2NkRpcmVjdGl2ZSwgbXVsdGk6IHRydWUgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIElwdjZEaXJlY3RpdmUgaW1wbGVtZW50cyBWYWxpZGF0b3J7XHJcblxyXG5cdHByaXZhdGUgdm1lc3NhZ2UgIDogTG9jYWxpemVkTWVzc2FnZSA9IHt9XHJcbiAgICBwcml2YXRlIGZpZWxkTmFtZSA6IHN0cmluZyA9ICdmaWVsZCc7XHJcblxyXG4gICAgQElucHV0KCdtZXNzYWdlJylcclxuICAgIHNldCBtZXNzYWdlKGRhdGE6TG9jYWxpemVkTWVzc2FnZSl7XHJcbiAgICAgICAgdGhpcy52bWVzc2FnZSA9IGRhdGFcclxuICAgIH1cclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIG1iXHQ6IE1lc3NhZ2VCdWlsZGVyU2VydmljZSxcclxuXHRcdHByaXZhdGUgZWwgXHQ6IEVsZW1lbnRSZWYsXHJcblx0XHRwcml2YXRlIHV0bCA6IFV0aWxTZXJ2aWNlXHJcblx0KXt0aGlzLmZpZWxkTmFtZSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5uYW1lfVxyXG5cclxuICAgIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcclxuICAgICAgICB0aGlzLnV0bC5zZXRWYWxpZGF0aW9uUnVsZXMoY29udHJvbCwgJ2lwdjYnKTtcclxuICAgICAgICByZXR1cm4gdGhpcy5pc1ZhbGlkKGNvbnRyb2wudmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaXNWYWxpZCh2YWx1ZTogc3RyaW5nKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xyXG4gICAgICAgIGlmICghdGhpcy51dGwuaXB2Nih2YWx1ZSkgJiYgISF2YWx1ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4geyAnaXB2Nic6IHRoaXMubWIuY2FsbCgnaXB2NicsIHRoaXMuZmllbGROYW1lLCB0aGlzLnZtZXNzYWdlKSB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,41 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { NG_VALIDATORS } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/messages-builder.service";
5
+ import * as i2 from "../../services/utils.service";
6
+ export class JsonDirective {
7
+ constructor(mb, el, utl) {
8
+ this.mb = mb;
9
+ this.el = el;
10
+ this.utl = utl;
11
+ this.vmessage = {};
12
+ this.fieldName = 'field';
13
+ this.fieldName = this.el.nativeElement.name;
14
+ }
15
+ set message(data) {
16
+ this.vmessage = data;
17
+ }
18
+ validate(control) {
19
+ this.utl.setValidationRules(control, 'json');
20
+ return this.isValid(control.value);
21
+ }
22
+ isValid(value) {
23
+ if (!!value && !this.utl.json(value)) {
24
+ return { 'json': this.mb.call('json', this.fieldName, this.vmessage) };
25
+ }
26
+ return null;
27
+ }
28
+ }
29
+ JsonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: JsonDirective, deps: [{ token: i1.MessageBuilderService }, { token: i0.ElementRef }, { token: i2.UtilService }], target: i0.ɵɵFactoryTarget.Directive });
30
+ JsonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: JsonDirective, selector: "[json]", inputs: { message: "message" }, providers: [{ provide: NG_VALIDATORS, useExisting: JsonDirective, multi: true }], ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: JsonDirective, decorators: [{
32
+ type: Directive,
33
+ args: [{
34
+ selector: '[json]',
35
+ providers: [{ provide: NG_VALIDATORS, useExisting: JsonDirective, multi: true }]
36
+ }]
37
+ }], ctorParameters: function () { return [{ type: i1.MessageBuilderService }, { type: i0.ElementRef }, { type: i2.UtilService }]; }, propDecorators: { message: [{
38
+ type: Input,
39
+ args: ['message']
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1hYnNvbHV0ZS12YWxpZGF0b3Ivc3JjL2xpYi9ydWxlL2pzb24vanNvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLGFBQWEsRUFBK0MsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVM1RixNQUFNLE9BQU8sYUFBYTtJQVV6QixZQUNTLEVBQTBCLEVBQzFCLEVBQWdCLEVBQ2hCLEdBQWlCO1FBRmpCLE9BQUUsR0FBRixFQUFFLENBQXdCO1FBQzFCLE9BQUUsR0FBRixFQUFFLENBQWM7UUFDaEIsUUFBRyxHQUFILEdBQUcsQ0FBYztRQVhsQixhQUFRLEdBQXVCLEVBQUUsQ0FBQTtRQUM5QixjQUFTLEdBQVksT0FBTyxDQUFDO1FBV3RDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFBO0lBQUEsQ0FBQztJQVQzQyxJQUNJLE9BQU8sQ0FBQyxJQUFxQjtRQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQTtJQUN4QixDQUFDO0lBU0QsUUFBUSxDQUFDLE9BQXdCO1FBQzdCLElBQUksQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVPLE9BQU8sQ0FBQyxLQUFhO1FBQ3pCLElBQUksQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2xDLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUE7U0FDekU7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOzswR0EzQlEsYUFBYTs4RkFBYixhQUFhLGlFQUZYLENBQUMsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDOzJGQUV2RSxhQUFhO2tCQUp6QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxRQUFRO29CQUNsQixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxlQUFlLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDO2lCQUNuRjsrSkFPTyxPQUFPO3NCQURWLEtBQUs7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBWYWxpZGF0b3IsQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3V0aWxzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNZXNzYWdlQnVpbGRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tZXNzYWdlcy1idWlsZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZWRNZXNzYWdlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbanNvbl0nLFxyXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBOR19WQUxJREFUT1JTLCB1c2VFeGlzdGluZzogSnNvbkRpcmVjdGl2ZSwgbXVsdGk6IHRydWUgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEpzb25EaXJlY3RpdmUgaW1wbGVtZW50cyBWYWxpZGF0b3J7XHJcblxyXG5cdHByaXZhdGUgdm1lc3NhZ2UgIDogTG9jYWxpemVkTWVzc2FnZSA9IHt9XHJcbiAgICBwcml2YXRlIGZpZWxkTmFtZSA6IHN0cmluZyA9ICdmaWVsZCc7XHJcblxyXG4gICAgQElucHV0KCdtZXNzYWdlJylcclxuICAgIHNldCBtZXNzYWdlKGRhdGE6TG9jYWxpemVkTWVzc2FnZSl7XHJcbiAgICAgICAgdGhpcy52bWVzc2FnZSA9IGRhdGFcclxuICAgIH1cclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIG1iXHQ6IE1lc3NhZ2VCdWlsZGVyU2VydmljZSxcclxuXHRcdHByaXZhdGUgZWwgXHQ6IEVsZW1lbnRSZWYsXHJcblx0XHRwcml2YXRlIHV0bCA6IFV0aWxTZXJ2aWNlXHJcblx0KXt0aGlzLmZpZWxkTmFtZSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5uYW1lfVxyXG5cclxuXHJcbiAgICB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XHJcbiAgICAgICAgdGhpcy51dGwuc2V0VmFsaWRhdGlvblJ1bGVzKGNvbnRyb2wsICdqc29uJyk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNWYWxpZChjb250cm9sLnZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGlzVmFsaWQodmFsdWU6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcclxuICAgICAgICBpZiAoISF2YWx1ZSAmJiAhdGhpcy51dGwuanNvbih2YWx1ZSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHsgJ2pzb24nOiB0aGlzLm1iLmNhbGwoJ2pzb24nLCB0aGlzLmZpZWxkTmFtZSwgdGhpcy52bWVzc2FnZSkgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,51 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { NG_VALIDATORS } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/messages-builder.service";
5
+ import * as i2 from "../../services/utils.service";
6
+ export class MaxDirective {
7
+ constructor(mb, el, utl) {
8
+ this.mb = mb;
9
+ this.el = el;
10
+ this.utl = utl;
11
+ this.vmessage = {};
12
+ this.fieldName = 'field';
13
+ this.fieldName = this.el.nativeElement.name;
14
+ }
15
+ set message(data) {
16
+ this.vmessage = data;
17
+ }
18
+ validate(control) {
19
+ this.utl.setValidationRules(control, 'max');
20
+ return this.isValid(control.value);
21
+ }
22
+ isValid(value) {
23
+ let fnName = 'max.string';
24
+ if (this.utl.integer(value)) {
25
+ fnName = 'max.numeric';
26
+ }
27
+ if (this.utl.array(value)) {
28
+ fnName = 'max.array';
29
+ }
30
+ if (!this.utl.max(value, this.max) && !!value) {
31
+ return { 'max': this.mb.call(fnName, this.fieldName, this.max, this.vmessage) };
32
+ }
33
+ return null;
34
+ }
35
+ }
36
+ MaxDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MaxDirective, deps: [{ token: i1.MessageBuilderService }, { token: i0.ElementRef }, { token: i2.UtilService }], target: i0.ɵɵFactoryTarget.Directive });
37
+ MaxDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: MaxDirective, selector: "[max]", inputs: { max: "max", message: "message" }, providers: [{ provide: NG_VALIDATORS, useExisting: MaxDirective, multi: true }], ngImport: i0 });
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MaxDirective, decorators: [{
39
+ type: Directive,
40
+ args: [{
41
+ selector: '[max]',
42
+ providers: [{ provide: NG_VALIDATORS, useExisting: MaxDirective, multi: true }]
43
+ }]
44
+ }], ctorParameters: function () { return [{ type: i1.MessageBuilderService }, { type: i0.ElementRef }, { type: i2.UtilService }]; }, propDecorators: { max: [{
45
+ type: Input,
46
+ args: ['max']
47
+ }], message: [{
48
+ type: Input,
49
+ args: ['message']
50
+ }] } });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWFic29sdXRlLXZhbGlkYXRvci9zcmMvbGliL3J1bGUvbWF4L21heC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLGFBQWEsRUFBK0MsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVM1RixNQUFNLE9BQU8sWUFBWTtJQVd4QixZQUNTLEVBQTBCLEVBQzFCLEVBQWdCLEVBQ2hCLEdBQWlCO1FBRmpCLE9BQUUsR0FBRixFQUFFLENBQXdCO1FBQzFCLE9BQUUsR0FBRixFQUFFLENBQWM7UUFDaEIsUUFBRyxHQUFILEdBQUcsQ0FBYztRQVpmLGFBQVEsR0FBdUIsRUFBRSxDQUFBO1FBQ2pDLGNBQVMsR0FBWSxPQUFPLENBQUM7UUFZdEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUE7SUFBQSxDQUFDO0lBVDlDLElBQ08sT0FBTyxDQUFDLElBQXFCO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFBO0lBQ3hCLENBQUM7SUFTRixRQUFRLENBQUMsT0FBdUI7UUFDakMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRVUsT0FBTyxDQUFDLEtBQWE7UUFDekIsSUFBSSxNQUFNLEdBQUcsWUFBWSxDQUFDO1FBQzFCLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFBRSxNQUFNLEdBQUcsYUFBYSxDQUFDO1NBQUU7UUFDeEQsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUFFLE1BQU0sR0FBRyxXQUFXLENBQUM7U0FBRTtRQUVwRCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFO1lBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQTtTQUNsRjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7O3lHQWhDUSxZQUFZOzZGQUFaLFlBQVksNEVBRlYsQ0FBQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7MkZBRXRFLFlBQVk7a0JBSnhCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLE9BQU87b0JBQ2pCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLGNBQWMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7aUJBQ2xGOytKQU1jLEdBQUc7c0JBQWhCLEtBQUs7dUJBQUMsS0FBSztnQkFFTCxPQUFPO3NCQURiLEtBQUs7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBWYWxpZGF0b3IsQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3V0aWxzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNZXNzYWdlQnVpbGRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tZXNzYWdlcy1idWlsZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZWRNZXNzYWdlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbbWF4XScsXHJcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBNYXhEaXJlY3RpdmUsIG11bHRpOiB0cnVlIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXhEaXJlY3RpdmUgaW1wbGVtZW50cyBWYWxpZGF0b3J7XHJcblxyXG4gICAgcHJpdmF0ZSB2bWVzc2FnZSAgOiBMb2NhbGl6ZWRNZXNzYWdlID0ge31cclxuICAgIHByaXZhdGUgZmllbGROYW1lIDogc3RyaW5nID0gJ2ZpZWxkJztcclxuXHJcblx0QElucHV0KCdtYXgnKSBtYXggITogbnVtYmVyO1xyXG5cdEBJbnB1dCgnbWVzc2FnZScpXHJcbiAgICBzZXQgbWVzc2FnZShkYXRhOkxvY2FsaXplZE1lc3NhZ2Upe1xyXG4gICAgICAgIHRoaXMudm1lc3NhZ2UgPSBkYXRhXHJcbiAgICB9XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHJpdmF0ZSBtYlx0OiBNZXNzYWdlQnVpbGRlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGVsIFx0OiBFbGVtZW50UmVmLFxyXG5cdFx0cHJpdmF0ZSB1dGwgOiBVdGlsU2VydmljZVxyXG5cdCl7dGhpcy5maWVsZE5hbWUgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQubmFtZX1cclxuXHJcblxyXG4gIFx0dmFsaWRhdGUoY29udHJvbDpBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbHtcclxuXHRcdHRoaXMudXRsLnNldFZhbGlkYXRpb25SdWxlcyhjb250cm9sLCdtYXgnKTtcclxuICAgICAgICByZXR1cm4gdGhpcy5pc1ZhbGlkKGNvbnRyb2wudmFsdWUpO1xyXG5cdH1cclxuXHJcbiAgICBwcml2YXRlIGlzVmFsaWQodmFsdWU6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcclxuICAgICAgICBsZXQgZm5OYW1lID0gJ21heC5zdHJpbmcnO1xyXG4gICAgICAgIGlmICh0aGlzLnV0bC5pbnRlZ2VyKHZhbHVlKSkgeyBmbk5hbWUgPSAnbWF4Lm51bWVyaWMnOyB9XHJcbiAgICAgICAgaWYgKHRoaXMudXRsLmFycmF5KHZhbHVlKSkgeyBmbk5hbWUgPSAnbWF4LmFycmF5JzsgfVxyXG5cclxuICAgICAgICBpZiAoIXRoaXMudXRsLm1heCh2YWx1ZSwgdGhpcy5tYXgpICYmICEhdmFsdWUpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHsgJ21heCc6IHRoaXMubWIuY2FsbChmbk5hbWUsIHRoaXMuZmllbGROYW1lLCB0aGlzLm1heCwgdGhpcy52bWVzc2FnZSkgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxufVxyXG4iXX0=