@messaia/cdk 0.0.0-CDK

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 (1078) hide show
  1. package/esm2020/lib/base/base.module.mjs +66 -0
  2. package/esm2020/lib/base/components/base.component.mjs +441 -0
  3. package/esm2020/lib/base/components/generic-form-base.component.mjs +602 -0
  4. package/esm2020/lib/base/components/generic-form.component.mjs +31 -0
  5. package/esm2020/lib/base/components/generic-list.component.mjs +539 -0
  6. package/esm2020/lib/base/components/generic-reactive-form.component.mjs +54 -0
  7. package/esm2020/lib/base/constants/common.mjs +24 -0
  8. package/esm2020/lib/base/enums/message-type.mjs +7 -0
  9. package/esm2020/lib/base/helpers/auth-helper.mjs +46 -0
  10. package/esm2020/lib/base/interceptors/base.interceptor.mjs +138 -0
  11. package/esm2020/lib/base/interceptors/caching-interceptor.mjs +68 -0
  12. package/esm2020/lib/base/interceptors/loading.interceptor.mjs +63 -0
  13. package/esm2020/lib/base/models/auth-user.mjs +3 -0
  14. package/esm2020/lib/base/public_api.mjs +2 -0
  15. package/esm2020/lib/base/services/file.service.mjs +18 -0
  16. package/esm2020/lib/base/services/loading-screen.service.mjs +47 -0
  17. package/esm2020/lib/base/services/print.service.mjs +40 -0
  18. package/esm2020/lib/chips/chips.module.mjs +63 -0
  19. package/esm2020/lib/chips/components/chips.component.mjs +419 -0
  20. package/esm2020/lib/chips/public_api.mjs +3 -0
  21. package/esm2020/lib/common/animations/collapse/collapse.animation.mjs +44 -0
  22. package/esm2020/lib/common/animations/common/interfaces.mjs +2 -0
  23. package/esm2020/lib/common/behaviors/constructor.mjs +2 -0
  24. package/esm2020/lib/common/behaviors/control-value-accesor.mixin.mjs +39 -0
  25. package/esm2020/lib/common/behaviors/disabled.mixin.mjs +24 -0
  26. package/esm2020/lib/common/common.module.mjs +121 -0
  27. package/esm2020/lib/common/constants/constants.mjs +2 -0
  28. package/esm2020/lib/common/directives/disable-control.directive.mjs +34 -0
  29. package/esm2020/lib/common/enums/salutation.mjs +7 -0
  30. package/esm2020/lib/common/functions/decorators.mjs +22 -0
  31. package/esm2020/lib/common/functions/functions.mjs +9 -0
  32. package/esm2020/lib/common/functions/utils.mjs +161 -0
  33. package/esm2020/lib/common/helpers/app-storage.mjs +53 -0
  34. package/esm2020/lib/common/helpers/dynamic-builder.mjs +49 -0
  35. package/esm2020/lib/common/models/action-menu-item.mjs +12 -0
  36. package/esm2020/lib/common/models/app-setting.mjs +10 -0
  37. package/esm2020/lib/common/models/audit-entity.mjs +18 -0
  38. package/esm2020/lib/common/models/audit-user.mjs +3 -0
  39. package/esm2020/lib/common/models/base-entity.mjs +18 -0
  40. package/esm2020/lib/common/models/entity.mjs +2 -0
  41. package/esm2020/lib/common/models/enum-item.mjs +2 -0
  42. package/esm2020/lib/common/models/key-value.mjs +3 -0
  43. package/esm2020/lib/common/models/save-action.mjs +7 -0
  44. package/esm2020/lib/common/pipes/data-source.pipe.mjs +15 -0
  45. package/esm2020/lib/common/pipes/enum.pipe.mjs +23 -0
  46. package/esm2020/lib/common/pipes/file-size.pipe.mjs +37 -0
  47. package/esm2020/lib/common/pipes/filter.pipe.mjs +23 -0
  48. package/esm2020/lib/common/pipes/first-letter.mjs +24 -0
  49. package/esm2020/lib/common/pipes/keys.mjs +18 -0
  50. package/esm2020/lib/common/pipes/month-name.pipe.mjs +27 -0
  51. package/esm2020/lib/common/pipes/only-number.mjs +53 -0
  52. package/esm2020/lib/common/pipes/order.pipe.mjs +183 -0
  53. package/esm2020/lib/common/pipes/placeholder.pipe.mjs +26 -0
  54. package/esm2020/lib/common/pipes/safe-html.pipe.mjs +31 -0
  55. package/esm2020/lib/common/pipes/time.pipe.mjs +20 -0
  56. package/esm2020/lib/common/pipes/titlecase.pipe.mjs +14 -0
  57. package/esm2020/lib/common/pipes/truncate.pipe.mjs +15 -0
  58. package/esm2020/lib/common/pipes/values.mjs +14 -0
  59. package/esm2020/lib/common/public_api.mjs +18 -0
  60. package/esm2020/lib/common/services/base.service.mjs +19 -0
  61. package/esm2020/lib/common/services/context-helper.mjs +4 -0
  62. package/esm2020/lib/common/services/enum.service.mjs +44 -0
  63. package/esm2020/lib/common/services/service-locator.mjs +24 -0
  64. package/esm2020/lib/dialogs/alert-dialog/alert-dialog.component.mjs +31 -0
  65. package/esm2020/lib/dialogs/confirm-dialog/confirm-dialog.component.mjs +37 -0
  66. package/esm2020/lib/dialogs/dialog.component.mjs +56 -0
  67. package/esm2020/lib/dialogs/dialogs.module.mjs +82 -0
  68. package/esm2020/lib/dialogs/prompt-dialog/prompt-dialog.component.mjs +40 -0
  69. package/esm2020/lib/dialogs/public_api.mjs +2 -0
  70. package/esm2020/lib/dialogs/services/dialog.service.mjs +136 -0
  71. package/esm2020/lib/file/file-input.component.mjs +327 -0
  72. package/esm2020/lib/file/file.module.mjs +39 -0
  73. package/esm2020/lib/file/public_api.mjs +2 -0
  74. package/esm2020/lib/form-validators/abstract/typed-form.mjs +3 -0
  75. package/esm2020/lib/form-validators/algorithm/luhn-algorithm.mjs +15 -0
  76. package/esm2020/lib/form-validators/const/app-validators.const.mjs +68 -0
  77. package/esm2020/lib/form-validators/const/app.const.mjs +17 -0
  78. package/esm2020/lib/form-validators/const/config-names.const.mjs +9 -0
  79. package/esm2020/lib/form-validators/const/config-required-fields.const.mjs +11 -0
  80. package/esm2020/lib/form-validators/const/decorators.const.mjs +23 -0
  81. package/esm2020/lib/form-validators/const/events.const.mjs +14 -0
  82. package/esm2020/lib/form-validators/const/html-elements.const.mjs +7 -0
  83. package/esm2020/lib/form-validators/const/iban-country-wise-regex.const.mjs +80 -0
  84. package/esm2020/lib/form-validators/const/index.mjs +6 -0
  85. package/esm2020/lib/form-validators/const/operators.const.mjs +7 -0
  86. package/esm2020/lib/form-validators/const/validation-alphabet-locale.const.mjs +9 -0
  87. package/esm2020/lib/form-validators/const/validator.const.mjs +8 -0
  88. package/esm2020/lib/form-validators/core/defaultContainer.mjs +243 -0
  89. package/esm2020/lib/form-validators/core/validator.interface.mjs +2 -0
  90. package/esm2020/lib/form-validators/core/validator.static.mjs +74 -0
  91. package/esm2020/lib/form-validators/decorators/allOf.decorator.mjs +10 -0
  92. package/esm2020/lib/form-validators/decorators/alpha.decorator.mjs +10 -0
  93. package/esm2020/lib/form-validators/decorators/alphaNumeric.decorator.mjs +10 -0
  94. package/esm2020/lib/form-validators/decorators/and.decorator.mjs +6 -0
  95. package/esm2020/lib/form-validators/decorators/ascii.decorator.mjs +6 -0
  96. package/esm2020/lib/form-validators/decorators/async.decorator.mjs +6 -0
  97. package/esm2020/lib/form-validators/decorators/base-decorator.function.mjs +7 -0
  98. package/esm2020/lib/form-validators/decorators/choice.decorator.mjs +10 -0
  99. package/esm2020/lib/form-validators/decorators/compare.decorator.mjs +6 -0
  100. package/esm2020/lib/form-validators/decorators/compose.decorator.mjs +6 -0
  101. package/esm2020/lib/form-validators/decorators/contains.decorator.mjs +10 -0
  102. package/esm2020/lib/form-validators/decorators/credit-card.decorator.mjs +10 -0
  103. package/esm2020/lib/form-validators/decorators/cusip.decorator.mjs +6 -0
  104. package/esm2020/lib/form-validators/decorators/custom.decorator.mjs +10 -0
  105. package/esm2020/lib/form-validators/decorators/dataUri.decorator.mjs +6 -0
  106. package/esm2020/lib/form-validators/decorators/date.decorator.mjs +10 -0
  107. package/esm2020/lib/form-validators/decorators/different.decorator.mjs +6 -0
  108. package/esm2020/lib/form-validators/decorators/digit.decorator.mjs +6 -0
  109. package/esm2020/lib/form-validators/decorators/email.decorator.mjs +6 -0
  110. package/esm2020/lib/form-validators/decorators/endsWith.decorator.mjs +10 -0
  111. package/esm2020/lib/form-validators/decorators/even.decorator.mjs +6 -0
  112. package/esm2020/lib/form-validators/decorators/extension.decorator.mjs +10 -0
  113. package/esm2020/lib/form-validators/decorators/factor.decorator.mjs +10 -0
  114. package/esm2020/lib/form-validators/decorators/file.decorator.mjs +10 -0
  115. package/esm2020/lib/form-validators/decorators/fileSize.decorator.mjs +10 -0
  116. package/esm2020/lib/form-validators/decorators/greater-than-equal-to.decorator.mjs +10 -0
  117. package/esm2020/lib/form-validators/decorators/greater-than.decorator.mjs +10 -0
  118. package/esm2020/lib/form-validators/decorators/grid.decorator.mjs +6 -0
  119. package/esm2020/lib/form-validators/decorators/hexColor.decorator.mjs +6 -0
  120. package/esm2020/lib/form-validators/decorators/image.decorator.mjs +10 -0
  121. package/esm2020/lib/form-validators/decorators/index.mjs +91 -0
  122. package/esm2020/lib/form-validators/decorators/json.decorator.mjs +6 -0
  123. package/esm2020/lib/form-validators/decorators/latLong.decorator.mjs +6 -0
  124. package/esm2020/lib/form-validators/decorators/latitude.decorator.mjs +6 -0
  125. package/esm2020/lib/form-validators/decorators/leapYear.decorator.mjs +6 -0
  126. package/esm2020/lib/form-validators/decorators/less-than-equal-to.decorator.mjs +10 -0
  127. package/esm2020/lib/form-validators/decorators/less-than.decorator.mjs +10 -0
  128. package/esm2020/lib/form-validators/decorators/longitude.decorator.mjs +6 -0
  129. package/esm2020/lib/form-validators/decorators/lowercase.decorator.mjs +6 -0
  130. package/esm2020/lib/form-validators/decorators/mac.decorator.mjs +6 -0
  131. package/esm2020/lib/form-validators/decorators/mask.decorator.mjs +6 -0
  132. package/esm2020/lib/form-validators/decorators/maxDate.decorator.mjs +10 -0
  133. package/esm2020/lib/form-validators/decorators/maxLength.decorator.mjs +10 -0
  134. package/esm2020/lib/form-validators/decorators/maxNumber.decorator.mjs +10 -0
  135. package/esm2020/lib/form-validators/decorators/maxTime.decorator.mjs +10 -0
  136. package/esm2020/lib/form-validators/decorators/minDate.decorator.mjs +10 -0
  137. package/esm2020/lib/form-validators/decorators/minLength.decorator.mjs +10 -0
  138. package/esm2020/lib/form-validators/decorators/minNumber.decorator.mjs +10 -0
  139. package/esm2020/lib/form-validators/decorators/minTime.decorator.mjs +10 -0
  140. package/esm2020/lib/form-validators/decorators/model.decorator.mjs +7 -0
  141. package/esm2020/lib/form-validators/decorators/non-validation-decorators/disable.decorator.mjs +8 -0
  142. package/esm2020/lib/form-validators/decorators/non-validation-decorators/elementClass.decorator.mjs +8 -0
  143. package/esm2020/lib/form-validators/decorators/non-validation-decorators/error.decorator.mjs +8 -0
  144. package/esm2020/lib/form-validators/decorators/noneOf.decorator.mjs +10 -0
  145. package/esm2020/lib/form-validators/decorators/not.decorator.mjs +6 -0
  146. package/esm2020/lib/form-validators/decorators/notEmpty.decorator.mjs +6 -0
  147. package/esm2020/lib/form-validators/decorators/numeric.decorator.mjs +10 -0
  148. package/esm2020/lib/form-validators/decorators/odd.decorator.mjs +6 -0
  149. package/esm2020/lib/form-validators/decorators/oneOf.decorator.mjs +10 -0
  150. package/esm2020/lib/form-validators/decorators/or.decorator.mjs +6 -0
  151. package/esm2020/lib/form-validators/decorators/password.decorator.mjs +10 -0
  152. package/esm2020/lib/form-validators/decorators/pattern.decorator.mjs +10 -0
  153. package/esm2020/lib/form-validators/decorators/port.decorator.mjs +6 -0
  154. package/esm2020/lib/form-validators/decorators/primeNumber.decorator.mjs +6 -0
  155. package/esm2020/lib/form-validators/decorators/prop-array.decorator.mjs +18 -0
  156. package/esm2020/lib/form-validators/decorators/prop-object.decorator.mjs +8 -0
  157. package/esm2020/lib/form-validators/decorators/prop.decorator.mjs +16 -0
  158. package/esm2020/lib/form-validators/decorators/range.decorator.mjs +10 -0
  159. package/esm2020/lib/form-validators/decorators/required.decorator.mjs +6 -0
  160. package/esm2020/lib/form-validators/decorators/requiredTrue.decorator.mjs +6 -0
  161. package/esm2020/lib/form-validators/decorators/rule.decorator.mjs +6 -0
  162. package/esm2020/lib/form-validators/decorators/sanitize/blacklist.decorator.mjs +8 -0
  163. package/esm2020/lib/form-validators/decorators/sanitize/escape.decorator.mjs +8 -0
  164. package/esm2020/lib/form-validators/decorators/sanitize/ltrim.decorator.mjs +8 -0
  165. package/esm2020/lib/form-validators/decorators/sanitize/prefix.decorator.mjs +8 -0
  166. package/esm2020/lib/form-validators/decorators/sanitize/rtrim.decorator.mjs +8 -0
  167. package/esm2020/lib/form-validators/decorators/sanitize/sanitize.decorator.mjs +8 -0
  168. package/esm2020/lib/form-validators/decorators/sanitize/stripLow.decorator.mjs +8 -0
  169. package/esm2020/lib/form-validators/decorators/sanitize/suffix.decorator.mjs +8 -0
  170. package/esm2020/lib/form-validators/decorators/sanitize/toBoolean.decorator.mjs +8 -0
  171. package/esm2020/lib/form-validators/decorators/sanitize/toDate.decorator.mjs +8 -0
  172. package/esm2020/lib/form-validators/decorators/sanitize/toDouble.decorator.mjs +8 -0
  173. package/esm2020/lib/form-validators/decorators/sanitize/toFloat.decorator.mjs +8 -0
  174. package/esm2020/lib/form-validators/decorators/sanitize/toInt.decorator.mjs +8 -0
  175. package/esm2020/lib/form-validators/decorators/sanitize/toString.decorator.mjs +8 -0
  176. package/esm2020/lib/form-validators/decorators/sanitize/trim.decorator.mjs +8 -0
  177. package/esm2020/lib/form-validators/decorators/sanitize/whitelist.decorator.mjs +8 -0
  178. package/esm2020/lib/form-validators/decorators/startsWith.decorator.mjs +10 -0
  179. package/esm2020/lib/form-validators/decorators/time.decorator.mjs +10 -0
  180. package/esm2020/lib/form-validators/decorators/unique.decorator.mjs +6 -0
  181. package/esm2020/lib/form-validators/decorators/uppercase.decorator.mjs +6 -0
  182. package/esm2020/lib/form-validators/decorators/url.decorator.mjs +10 -0
  183. package/esm2020/lib/form-validators/directives/base-directive.mjs +43 -0
  184. package/esm2020/lib/form-validators/directives/control-host.directive.mjs +34 -0
  185. package/esm2020/lib/form-validators/directives/html-control-template.directive.mjs +20 -0
  186. package/esm2020/lib/form-validators/directives/rx-form.directive.mjs +134 -0
  187. package/esm2020/lib/form-validators/directives/template-validations/async-validation.directive.mjs +31 -0
  188. package/esm2020/lib/form-validators/directives/template-validations/base-validator.directive.mjs +42 -0
  189. package/esm2020/lib/form-validators/directives/template-validations/control-expression-process.mjs +26 -0
  190. package/esm2020/lib/form-validators/directives/template-validations/file-control.directive.mjs +91 -0
  191. package/esm2020/lib/form-validators/directives/template-validations/image-file-control.directive.mjs +50 -0
  192. package/esm2020/lib/form-validators/directives/template-validations/rxformcontrol.directive.mjs +277 -0
  193. package/esm2020/lib/form-validators/domain/disable-provider.mjs +93 -0
  194. package/esm2020/lib/form-validators/domain/element-processor/decimal.provider.mjs +59 -0
  195. package/esm2020/lib/form-validators/domain/element-processor/mask.provider.mjs +430 -0
  196. package/esm2020/lib/form-validators/domain/form-data.mjs +47 -0
  197. package/esm2020/lib/form-validators/enums/error-message-binding-strategy.mjs +11 -0
  198. package/esm2020/lib/form-validators/enums/index.mjs +5 -0
  199. package/esm2020/lib/form-validators/enums/ip-version.mjs +7 -0
  200. package/esm2020/lib/form-validators/enums/numeric-value-type.mjs +7 -0
  201. package/esm2020/lib/form-validators/enums/reset-type.mjs +10 -0
  202. package/esm2020/lib/form-validators/enums/url-validation-type.mjs +7 -0
  203. package/esm2020/lib/form-validators/models/config/alpha-config.mjs +2 -0
  204. package/esm2020/lib/form-validators/models/config/array-config.mjs +2 -0
  205. package/esm2020/lib/form-validators/models/config/base-config-fn.mjs +2 -0
  206. package/esm2020/lib/form-validators/models/config/base-config.mjs +2 -0
  207. package/esm2020/lib/form-validators/models/config/base-date-config.mjs +2 -0
  208. package/esm2020/lib/form-validators/models/config/choice-config.mjs +2 -0
  209. package/esm2020/lib/form-validators/models/config/compare-config.mjs +2 -0
  210. package/esm2020/lib/form-validators/models/config/component-config.mjs +2 -0
  211. package/esm2020/lib/form-validators/models/config/compose-config.mjs +2 -0
  212. package/esm2020/lib/form-validators/models/config/contains-config.mjs +2 -0
  213. package/esm2020/lib/form-validators/models/config/credit-card-config.mjs +2 -0
  214. package/esm2020/lib/form-validators/models/config/custom-config.mjs +2 -0
  215. package/esm2020/lib/form-validators/models/config/date-config.mjs +2 -0
  216. package/esm2020/lib/form-validators/models/config/default-config.mjs +2 -0
  217. package/esm2020/lib/form-validators/models/config/digit-config.mjs +2 -0
  218. package/esm2020/lib/form-validators/models/config/disable-config.mjs +2 -0
  219. package/esm2020/lib/form-validators/models/config/element-class-config.mjs +2 -0
  220. package/esm2020/lib/form-validators/models/config/email-config.mjs +2 -0
  221. package/esm2020/lib/form-validators/models/config/error-config.mjs +2 -0
  222. package/esm2020/lib/form-validators/models/config/extension-config.mjs +2 -0
  223. package/esm2020/lib/form-validators/models/config/factor-config.mjs +2 -0
  224. package/esm2020/lib/form-validators/models/config/field-config.mjs +2 -0
  225. package/esm2020/lib/form-validators/models/config/file-config.mjs +2 -0
  226. package/esm2020/lib/form-validators/models/config/hex-color-config.mjs +2 -0
  227. package/esm2020/lib/form-validators/models/config/iban-config.mjs +2 -0
  228. package/esm2020/lib/form-validators/models/config/image-config.mjs +2 -0
  229. package/esm2020/lib/form-validators/models/config/index.mjs +35 -0
  230. package/esm2020/lib/form-validators/models/config/ip-config.mjs +2 -0
  231. package/esm2020/lib/form-validators/models/config/logical-operator-config.mjs +2 -0
  232. package/esm2020/lib/form-validators/models/config/mask-config.mjs +2 -0
  233. package/esm2020/lib/form-validators/models/config/max-date-config.mjs +2 -0
  234. package/esm2020/lib/form-validators/models/config/message-config.mjs +2 -0
  235. package/esm2020/lib/form-validators/models/config/min-date-config.mjs +2 -0
  236. package/esm2020/lib/form-validators/models/config/model-config.mjs +2 -0
  237. package/esm2020/lib/form-validators/models/config/number-config.mjs +2 -0
  238. package/esm2020/lib/form-validators/models/config/numeric-config.mjs +2 -0
  239. package/esm2020/lib/form-validators/models/config/password-config.mjs +2 -0
  240. package/esm2020/lib/form-validators/models/config/pattern-config.mjs +2 -0
  241. package/esm2020/lib/form-validators/models/config/prop-config.mjs +2 -0
  242. package/esm2020/lib/form-validators/models/config/props-config.mjs +2 -0
  243. package/esm2020/lib/form-validators/models/config/range-config.mjs +2 -0
  244. package/esm2020/lib/form-validators/models/config/relational-operator-config.mjs +2 -0
  245. package/esm2020/lib/form-validators/models/config/required-config.mjs +2 -0
  246. package/esm2020/lib/form-validators/models/config/rule-config.mjs +2 -0
  247. package/esm2020/lib/form-validators/models/config/sanitize-config.mjs +2 -0
  248. package/esm2020/lib/form-validators/models/config/size-config.mjs +2 -0
  249. package/esm2020/lib/form-validators/models/config/string-comparison-config.mjs +2 -0
  250. package/esm2020/lib/form-validators/models/config/time-config.mjs +2 -0
  251. package/esm2020/lib/form-validators/models/config/todate-config.mjs +2 -0
  252. package/esm2020/lib/form-validators/models/config/unique-config.mjs +2 -0
  253. package/esm2020/lib/form-validators/models/config/url-config.mjs +2 -0
  254. package/esm2020/lib/form-validators/models/form-builder-configuration.mjs +8 -0
  255. package/esm2020/lib/form-validators/models/index.mjs +3 -0
  256. package/esm2020/lib/form-validators/models/interface/array-prop-instance-config.interface.mjs +2 -0
  257. package/esm2020/lib/form-validators/models/interface/auto-instance-config.interface.mjs +2 -0
  258. package/esm2020/lib/form-validators/models/interface/form-data-config.mjs +2 -0
  259. package/esm2020/lib/form-validators/models/interface/i-abstract-control.mjs +4 -0
  260. package/esm2020/lib/form-validators/models/interface/i-form-group.mjs +2 -0
  261. package/esm2020/lib/form-validators/models/interface/instance-argument.interface.mjs +2 -0
  262. package/esm2020/lib/form-validators/models/interface/object-prop-instance-config.interface.mjs +2 -0
  263. package/esm2020/lib/form-validators/models/interface/options.mjs +2 -0
  264. package/esm2020/lib/form-validators/models/password-validation.model.mjs +2 -0
  265. package/esm2020/lib/form-validators/models/prop-validation-config.mjs +2 -0
  266. package/esm2020/lib/form-validators/public_api.mjs +25 -0
  267. package/esm2020/lib/form-validators/reactive-form-validators/allOf.validator.mjs +22 -0
  268. package/esm2020/lib/form-validators/reactive-form-validators/alpha.validator.mjs +9 -0
  269. package/esm2020/lib/form-validators/reactive-form-validators/alphaNumeric.validator.mjs +9 -0
  270. package/esm2020/lib/form-validators/reactive-form-validators/and.validator.mjs +23 -0
  271. package/esm2020/lib/form-validators/reactive-form-validators/ascii.validator.mjs +9 -0
  272. package/esm2020/lib/form-validators/reactive-form-validators/async/base.async.validator.mjs +24 -0
  273. package/esm2020/lib/form-validators/reactive-form-validators/choice.validator.mjs +19 -0
  274. package/esm2020/lib/form-validators/reactive-form-validators/compare.validator.mjs +20 -0
  275. package/esm2020/lib/form-validators/reactive-form-validators/compose.validator.mjs +23 -0
  276. package/esm2020/lib/form-validators/reactive-form-validators/conditional-change.validator.mjs +63 -0
  277. package/esm2020/lib/form-validators/reactive-form-validators/contains.validator.mjs +15 -0
  278. package/esm2020/lib/form-validators/reactive-form-validators/credit-card.validator.mjs +48 -0
  279. package/esm2020/lib/form-validators/reactive-form-validators/cusip.validator.mjs +38 -0
  280. package/esm2020/lib/form-validators/reactive-form-validators/custom.validator.mjs +23 -0
  281. package/esm2020/lib/form-validators/reactive-form-validators/dataUri.validator.mjs +9 -0
  282. package/esm2020/lib/form-validators/reactive-form-validators/date.validator.mjs +8 -0
  283. package/esm2020/lib/form-validators/reactive-form-validators/different.validator.mjs +19 -0
  284. package/esm2020/lib/form-validators/reactive-form-validators/digit.validator.mjs +9 -0
  285. package/esm2020/lib/form-validators/reactive-form-validators/email.validator.mjs +9 -0
  286. package/esm2020/lib/form-validators/reactive-form-validators/endsWith.validator.mjs +16 -0
  287. package/esm2020/lib/form-validators/reactive-form-validators/even.validator.mjs +15 -0
  288. package/esm2020/lib/form-validators/reactive-form-validators/extension.validator.mjs +40 -0
  289. package/esm2020/lib/form-validators/reactive-form-validators/factor.validator.mjs +37 -0
  290. package/esm2020/lib/form-validators/reactive-form-validators/file.validator.mjs +26 -0
  291. package/esm2020/lib/form-validators/reactive-form-validators/fileSize.validator.mjs +32 -0
  292. package/esm2020/lib/form-validators/reactive-form-validators/greater-than-equal-to.validator.mjs +8 -0
  293. package/esm2020/lib/form-validators/reactive-form-validators/greater-than.validator.mjs +8 -0
  294. package/esm2020/lib/form-validators/reactive-form-validators/grid.validator.mjs +31 -0
  295. package/esm2020/lib/form-validators/reactive-form-validators/hexcolor.validator.mjs +9 -0
  296. package/esm2020/lib/form-validators/reactive-form-validators/iban.validator.mjs +30 -0
  297. package/esm2020/lib/form-validators/reactive-form-validators/image.validator.mjs +48 -0
  298. package/esm2020/lib/form-validators/reactive-form-validators/index.mjs +66 -0
  299. package/esm2020/lib/form-validators/reactive-form-validators/ip.validator.mjs +35 -0
  300. package/esm2020/lib/form-validators/reactive-form-validators/json.validator.mjs +26 -0
  301. package/esm2020/lib/form-validators/reactive-form-validators/latLong.validator.mjs +18 -0
  302. package/esm2020/lib/form-validators/reactive-form-validators/latitude.validator.mjs +9 -0
  303. package/esm2020/lib/form-validators/reactive-form-validators/leapYear.validator.mjs +16 -0
  304. package/esm2020/lib/form-validators/reactive-form-validators/less-than-equal-to.validator.mjs +8 -0
  305. package/esm2020/lib/form-validators/reactive-form-validators/less-than.validator.mjs +8 -0
  306. package/esm2020/lib/form-validators/reactive-form-validators/longitude.validator.mjs +9 -0
  307. package/esm2020/lib/form-validators/reactive-form-validators/lowercase.validator.mjs +15 -0
  308. package/esm2020/lib/form-validators/reactive-form-validators/mac.validator.mjs +9 -0
  309. package/esm2020/lib/form-validators/reactive-form-validators/mask.validator.mjs +13 -0
  310. package/esm2020/lib/form-validators/reactive-form-validators/maxDate.validator.mjs +8 -0
  311. package/esm2020/lib/form-validators/reactive-form-validators/maxLength.validator.mjs +16 -0
  312. package/esm2020/lib/form-validators/reactive-form-validators/maxNumber.validator.mjs +16 -0
  313. package/esm2020/lib/form-validators/reactive-form-validators/maxTime.validator.mjs +8 -0
  314. package/esm2020/lib/form-validators/reactive-form-validators/minDate.validator.mjs +8 -0
  315. package/esm2020/lib/form-validators/reactive-form-validators/minLength.validator.mjs +16 -0
  316. package/esm2020/lib/form-validators/reactive-form-validators/minNumber.validator.mjs +16 -0
  317. package/esm2020/lib/form-validators/reactive-form-validators/minTime.validator.mjs +8 -0
  318. package/esm2020/lib/form-validators/reactive-form-validators/noneOf.validator.mjs +24 -0
  319. package/esm2020/lib/form-validators/reactive-form-validators/not.validator.mjs +23 -0
  320. package/esm2020/lib/form-validators/reactive-form-validators/notEmpty.validator.mjs +17 -0
  321. package/esm2020/lib/form-validators/reactive-form-validators/numeric.validator.mjs +20 -0
  322. package/esm2020/lib/form-validators/reactive-form-validators/odd.validator.mjs +16 -0
  323. package/esm2020/lib/form-validators/reactive-form-validators/oneOf.validator.mjs +22 -0
  324. package/esm2020/lib/form-validators/reactive-form-validators/or.validator.mjs +23 -0
  325. package/esm2020/lib/form-validators/reactive-form-validators/password.validator.mjs +33 -0
  326. package/esm2020/lib/form-validators/reactive-form-validators/pattern.validator.mjs +17 -0
  327. package/esm2020/lib/form-validators/reactive-form-validators/port.validator.mjs +18 -0
  328. package/esm2020/lib/form-validators/reactive-form-validators/primeNumber.validator.mjs +26 -0
  329. package/esm2020/lib/form-validators/reactive-form-validators/range.validator.mjs +16 -0
  330. package/esm2020/lib/form-validators/reactive-form-validators/required.validator.mjs +17 -0
  331. package/esm2020/lib/form-validators/reactive-form-validators/requiredTrue.validator.mjs +16 -0
  332. package/esm2020/lib/form-validators/reactive-form-validators/rule.validator.mjs +20 -0
  333. package/esm2020/lib/form-validators/reactive-form-validators/startsWith.validator.mjs +16 -0
  334. package/esm2020/lib/form-validators/reactive-form-validators/time.validator.mjs +18 -0
  335. package/esm2020/lib/form-validators/reactive-form-validators/unique.validator.mjs +70 -0
  336. package/esm2020/lib/form-validators/reactive-form-validators/uppercase.validator.mjs +15 -0
  337. package/esm2020/lib/form-validators/reactive-form-validators/url.validator.mjs +28 -0
  338. package/esm2020/lib/form-validators/services/base-form-builder.mjs +115 -0
  339. package/esm2020/lib/form-validators/services/entity.service.mjs +64 -0
  340. package/esm2020/lib/form-validators/services/form-control.mjs +349 -0
  341. package/esm2020/lib/form-validators/services/form-group.mjs +2 -0
  342. package/esm2020/lib/form-validators/services/reactive-form.module.mjs +52 -0
  343. package/esm2020/lib/form-validators/services/rx-form-array.mjs +100 -0
  344. package/esm2020/lib/form-validators/services/rx-form-builder.mjs +559 -0
  345. package/esm2020/lib/form-validators/services/rx-form-group.mjs +299 -0
  346. package/esm2020/lib/form-validators/services/typed-form-builder.mjs +23 -0
  347. package/esm2020/lib/form-validators/util/alphabet-regex.locale.mjs +29 -0
  348. package/esm2020/lib/form-validators/util/app-util.mjs +141 -0
  349. package/esm2020/lib/form-validators/util/check-length.mjs +10 -0
  350. package/esm2020/lib/form-validators/util/config-provider.mjs +35 -0
  351. package/esm2020/lib/form-validators/util/date-checker.function.mjs +52 -0
  352. package/esm2020/lib/form-validators/util/date-provider.mjs +97 -0
  353. package/esm2020/lib/form-validators/util/form-const.mjs +3 -0
  354. package/esm2020/lib/form-validators/util/form-provider.mjs +37 -0
  355. package/esm2020/lib/form-validators/util/index.mjs +7 -0
  356. package/esm2020/lib/form-validators/util/instance-provider.function.mjs +30 -0
  357. package/esm2020/lib/form-validators/util/ip-checker.mjs +18 -0
  358. package/esm2020/lib/form-validators/util/linq.mjs +147 -0
  359. package/esm2020/lib/form-validators/util/object-maker.mjs +38 -0
  360. package/esm2020/lib/form-validators/util/reactive-form-config.mjs +23 -0
  361. package/esm2020/lib/form-validators/util/regex-rules.mjs +37 -0
  362. package/esm2020/lib/form-validators/util/regex-validator.mjs +74 -0
  363. package/esm2020/lib/form-validators/util/relational-checker.function.mjs +85 -0
  364. package/esm2020/lib/form-validators/util/reset-form.mjs +56 -0
  365. package/esm2020/lib/form-validators/util/sanitizers.mjs +131 -0
  366. package/esm2020/lib/form-validators/util/time-checker.function.mjs +48 -0
  367. package/esm2020/lib/form-validators/util/type.mjs +2 -0
  368. package/esm2020/lib/form-validators/util/validator-value-checker.mjs +17 -0
  369. package/esm2020/lib/form-validators/validators-extension/allOf-validator.extension.mjs +11 -0
  370. package/esm2020/lib/form-validators/validators-extension/alpha-validator.extension.mjs +11 -0
  371. package/esm2020/lib/form-validators/validators-extension/alphaNumeric-validator.extension.mjs +11 -0
  372. package/esm2020/lib/form-validators/validators-extension/and-validator.extension.mjs +7 -0
  373. package/esm2020/lib/form-validators/validators-extension/ascii-validator.extension.mjs +7 -0
  374. package/esm2020/lib/form-validators/validators-extension/base-validator.function.mjs +33 -0
  375. package/esm2020/lib/form-validators/validators-extension/choice-validator.extension.mjs +11 -0
  376. package/esm2020/lib/form-validators/validators-extension/compare-validator.extension.mjs +7 -0
  377. package/esm2020/lib/form-validators/validators-extension/compose-validator.extension.mjs +7 -0
  378. package/esm2020/lib/form-validators/validators-extension/contains-validator.extension.mjs +11 -0
  379. package/esm2020/lib/form-validators/validators-extension/credit-card-validator.extension.mjs +11 -0
  380. package/esm2020/lib/form-validators/validators-extension/cusip-validator.extension.mjs +7 -0
  381. package/esm2020/lib/form-validators/validators-extension/custom-validator.extension.mjs +11 -0
  382. package/esm2020/lib/form-validators/validators-extension/dataUri-validator.extension.mjs +7 -0
  383. package/esm2020/lib/form-validators/validators-extension/date-validator.extension.mjs +11 -0
  384. package/esm2020/lib/form-validators/validators-extension/different-validator.extension.mjs +7 -0
  385. package/esm2020/lib/form-validators/validators-extension/digit-validator.extension.mjs +7 -0
  386. package/esm2020/lib/form-validators/validators-extension/email-validator.extension.mjs +7 -0
  387. package/esm2020/lib/form-validators/validators-extension/endsWith-validator.extension.mjs +11 -0
  388. package/esm2020/lib/form-validators/validators-extension/even-validator.extension.mjs +7 -0
  389. package/esm2020/lib/form-validators/validators-extension/extension-validator.extension.mjs +10 -0
  390. package/esm2020/lib/form-validators/validators-extension/factor-validator.extension.mjs +11 -0
  391. package/esm2020/lib/form-validators/validators-extension/file-validator.extension.mjs +10 -0
  392. package/esm2020/lib/form-validators/validators-extension/fileSize-validator.extension.mjs +10 -0
  393. package/esm2020/lib/form-validators/validators-extension/greater-than-equal-to-validator.extension.mjs +11 -0
  394. package/esm2020/lib/form-validators/validators-extension/greater-than-validator.extension.mjs +11 -0
  395. package/esm2020/lib/form-validators/validators-extension/grid-validator.extension.mjs +7 -0
  396. package/esm2020/lib/form-validators/validators-extension/hexcolor-validator.extension.mjs +7 -0
  397. package/esm2020/lib/form-validators/validators-extension/iban-validator.extension.mjs +11 -0
  398. package/esm2020/lib/form-validators/validators-extension/image-validator.extension.mjs +10 -0
  399. package/esm2020/lib/form-validators/validators-extension/index.mjs +68 -0
  400. package/esm2020/lib/form-validators/validators-extension/ip-validator.extension.mjs +11 -0
  401. package/esm2020/lib/form-validators/validators-extension/json-validator.extension.mjs +7 -0
  402. package/esm2020/lib/form-validators/validators-extension/latLong-validator.extension.mjs +7 -0
  403. package/esm2020/lib/form-validators/validators-extension/latitude-validator.extension.mjs +7 -0
  404. package/esm2020/lib/form-validators/validators-extension/leapYear-validator.extension.mjs +7 -0
  405. package/esm2020/lib/form-validators/validators-extension/less-than-equal-to-validator.extension.mjs +11 -0
  406. package/esm2020/lib/form-validators/validators-extension/less-than-validator.extension.mjs +11 -0
  407. package/esm2020/lib/form-validators/validators-extension/longitude-validator.extension.mjs +7 -0
  408. package/esm2020/lib/form-validators/validators-extension/lowercase-validator.extension.mjs +7 -0
  409. package/esm2020/lib/form-validators/validators-extension/mac-validator.extension.mjs +7 -0
  410. package/esm2020/lib/form-validators/validators-extension/mask-validator.extension.mjs +7 -0
  411. package/esm2020/lib/form-validators/validators-extension/maxDate-validator.extension.mjs +11 -0
  412. package/esm2020/lib/form-validators/validators-extension/maxLength-validator.extension.mjs +11 -0
  413. package/esm2020/lib/form-validators/validators-extension/maxNumber-validator.extension.mjs +11 -0
  414. package/esm2020/lib/form-validators/validators-extension/maxTime-validator.extension.mjs +11 -0
  415. package/esm2020/lib/form-validators/validators-extension/minDate-validator.extension.mjs +11 -0
  416. package/esm2020/lib/form-validators/validators-extension/minLength-validator.extension.mjs +11 -0
  417. package/esm2020/lib/form-validators/validators-extension/minNumber-validator.extension.mjs +11 -0
  418. package/esm2020/lib/form-validators/validators-extension/minTime-validator.extension.mjs +11 -0
  419. package/esm2020/lib/form-validators/validators-extension/noneOf-validator.extension.mjs +11 -0
  420. package/esm2020/lib/form-validators/validators-extension/not-validator.extension.mjs +7 -0
  421. package/esm2020/lib/form-validators/validators-extension/notEmpty-validator.extension.mjs +7 -0
  422. package/esm2020/lib/form-validators/validators-extension/numeric-validator.extension.mjs +11 -0
  423. package/esm2020/lib/form-validators/validators-extension/odd-validator.extension.mjs +7 -0
  424. package/esm2020/lib/form-validators/validators-extension/oneOf-validator.extension.mjs +11 -0
  425. package/esm2020/lib/form-validators/validators-extension/or-validator.extension.mjs +7 -0
  426. package/esm2020/lib/form-validators/validators-extension/password-validator.extension.mjs +11 -0
  427. package/esm2020/lib/form-validators/validators-extension/pattern-validator.extension.mjs +11 -0
  428. package/esm2020/lib/form-validators/validators-extension/port-validator.extension.mjs +7 -0
  429. package/esm2020/lib/form-validators/validators-extension/primeNumber-validator.extension.mjs +7 -0
  430. package/esm2020/lib/form-validators/validators-extension/range-validator.extension.mjs +11 -0
  431. package/esm2020/lib/form-validators/validators-extension/required-validator.extension.mjs +7 -0
  432. package/esm2020/lib/form-validators/validators-extension/requiredTrue-validator.extension.mjs +7 -0
  433. package/esm2020/lib/form-validators/validators-extension/rxweb-validators.mjs +108 -0
  434. package/esm2020/lib/form-validators/validators-extension/startsWith-validator.extension.mjs +11 -0
  435. package/esm2020/lib/form-validators/validators-extension/time-validator.extension.mjs +11 -0
  436. package/esm2020/lib/form-validators/validators-extension/unique-validator.extension.mjs +7 -0
  437. package/esm2020/lib/form-validators/validators-extension/uppercase-validator.extension.mjs +7 -0
  438. package/esm2020/lib/form-validators/validators-extension/url-validator.extension.mjs +11 -0
  439. package/esm2020/lib/form-validators/validators-function/alpha-validation.function.mjs +37 -0
  440. package/esm2020/lib/form-validators/validators-function/regex-validation.function.mjs +16 -0
  441. package/esm2020/lib/forms/components/generic-form/generic-form.component.mjs +131 -0
  442. package/esm2020/lib/forms/constants/constants.mjs +2 -0
  443. package/esm2020/lib/forms/directives/mat-form-field-editor.directive.mjs +162 -0
  444. package/esm2020/lib/forms/directives/mat-form-field-readonly.directive.mjs +33 -0
  445. package/esm2020/lib/forms/enums/form-field-type.mjs +19 -0
  446. package/esm2020/lib/forms/forms.module.mjs +125 -0
  447. package/esm2020/lib/forms/functions/decorators.mjs +127 -0
  448. package/esm2020/lib/forms/functions/functions.mjs +10 -0
  449. package/esm2020/lib/forms/helpers/abstract-mat-form-field.mjs +251 -0
  450. package/esm2020/lib/forms/helpers/value-accessor-base.mjs +141 -0
  451. package/esm2020/lib/forms/models/form-field-definition.mjs +18 -0
  452. package/esm2020/lib/forms/models/form-field-group.mjs +11 -0
  453. package/esm2020/lib/forms/public_api.mjs +4 -0
  454. package/esm2020/lib/forms/validators/equal-validator.directive.mjs +79 -0
  455. package/esm2020/lib/forms/validators/native-element-injector.directive.mjs +32 -0
  456. package/esm2020/lib/forms/validators/unique-validator-directive.mjs +75 -0
  457. package/esm2020/lib/http/http.module.mjs +20 -0
  458. package/esm2020/lib/http/public_api.mjs +2 -0
  459. package/esm2020/lib/http/services/generic.service.mjs +319 -0
  460. package/esm2020/lib/layout/form-toolbar/form-toolbar.component.mjs +30 -0
  461. package/esm2020/lib/layout/form-toolbar-menu/form-toolbar-menu.component.mjs +17 -0
  462. package/esm2020/lib/layout/layout-card-over/layout-card-over.component.mjs +43 -0
  463. package/esm2020/lib/layout/layout-footer/layout-footer.component.mjs +34 -0
  464. package/esm2020/lib/layout/layout-manage-list/layout-manage-list.component.mjs +130 -0
  465. package/esm2020/lib/layout/layout-manage-list/layout-manage-list.directives.mjs +108 -0
  466. package/esm2020/lib/layout/layout-nav/layout-nav.component.mjs +95 -0
  467. package/esm2020/lib/layout/layout-nav-list/layout-nav-list.component.mjs +123 -0
  468. package/esm2020/lib/layout/layout-nav-list/layout-nav-list.directives.mjs +81 -0
  469. package/esm2020/lib/layout/layout-toggle.class.mjs +71 -0
  470. package/esm2020/lib/layout/layout.component.mjs +82 -0
  471. package/esm2020/lib/layout/layout.directives.mjs +81 -0
  472. package/esm2020/lib/layout/layout.module.mjs +146 -0
  473. package/esm2020/lib/layout/list-toolbar/list-toolbar.component.mjs +23 -0
  474. package/esm2020/lib/layout/list-toolbar-menu/list-toolbar-menu.component.mjs +17 -0
  475. package/esm2020/lib/layout/navigation-drawer/navigation-drawer.component.mjs +167 -0
  476. package/esm2020/lib/layout/public_api.mjs +2 -0
  477. package/esm2020/lib/media/directives/media-toggle.directive.mjs +115 -0
  478. package/esm2020/lib/media/media.module.mjs +37 -0
  479. package/esm2020/lib/media/public_api.mjs +2 -0
  480. package/esm2020/lib/media/services/media.service.mjs +108 -0
  481. package/esm2020/lib/menu/components/menu.component.mjs +52 -0
  482. package/esm2020/lib/menu/enums/menu-scope.mjs +6 -0
  483. package/esm2020/lib/menu/menu.module.mjs +50 -0
  484. package/esm2020/lib/menu/models/menu-item.mjs +3 -0
  485. package/esm2020/lib/menu/models/menu.mjs +3 -0
  486. package/esm2020/lib/menu/public_api.mjs +2 -0
  487. package/esm2020/lib/menu/services/menu-items.service.mjs +19 -0
  488. package/esm2020/lib/menu/services/menu.resolve.mjs +62 -0
  489. package/esm2020/lib/menu/services/menu.service.mjs +19 -0
  490. package/esm2020/lib/search/public_api.mjs +2 -0
  491. package/esm2020/lib/search/search.module.mjs +47 -0
  492. package/esm2020/lib/search/vd-search-box/vd-search-box.component.mjs +143 -0
  493. package/esm2020/lib/search/vd-search-input/vd-search-input.component.mjs +148 -0
  494. package/esm2020/lib/select/public_api.mjs +3 -0
  495. package/esm2020/lib/select/select.component.mjs +407 -0
  496. package/esm2020/lib/select/select.module.mjs +45 -0
  497. package/esm2020/lib/table/components/dynamic-table/dynamic-table.component.mjs +349 -0
  498. package/esm2020/lib/table/components/filter-clear.component.mjs +44 -0
  499. package/esm2020/lib/table/components/filter-date.component.mjs +151 -0
  500. package/esm2020/lib/table/components/filter-input.component.mjs +198 -0
  501. package/esm2020/lib/table/components/filter-select.component.mjs +334 -0
  502. package/esm2020/lib/table/directives/data-source-filter.directive.mjs +45 -0
  503. package/esm2020/lib/table/enums/table-column-type.mjs +14 -0
  504. package/esm2020/lib/table/functions/decorators.mjs +135 -0
  505. package/esm2020/lib/table/functions/functions.mjs +15 -0
  506. package/esm2020/lib/table/models/pagination.mjs +3 -0
  507. package/esm2020/lib/table/models/table-column.mjs +10 -0
  508. package/esm2020/lib/table/models/table-definition.mjs +17 -0
  509. package/esm2020/lib/table/models/table-menu-item.mjs +12 -0
  510. package/esm2020/lib/table/paginator-intl.mjs +44 -0
  511. package/esm2020/lib/table/public_api.mjs +3 -0
  512. package/esm2020/lib/table/table.data-source.mjs +212 -0
  513. package/esm2020/lib/table/table.module.mjs +139 -0
  514. package/esm2020/lib/table/table.static-data-source.mjs +131 -0
  515. package/esm2020/messaia-cdk.mjs +5 -0
  516. package/esm2020/public_api.mjs +18 -0
  517. package/fesm2015/messaia-cdk.mjs +16621 -0
  518. package/fesm2015/messaia-cdk.mjs.map +1 -0
  519. package/fesm2020/messaia-cdk.mjs +16538 -0
  520. package/fesm2020/messaia-cdk.mjs.map +1 -0
  521. package/lib/base/base.module.d.ts +25 -0
  522. package/lib/base/components/base.component.d.ts +258 -0
  523. package/lib/base/components/generic-form-base.component.d.ts +310 -0
  524. package/lib/base/components/generic-form.component.d.ts +32 -0
  525. package/lib/base/components/generic-list.component.d.ts +273 -0
  526. package/lib/base/components/generic-reactive-form.component.d.ts +47 -0
  527. package/lib/base/constants/common.d.ts +9 -0
  528. package/lib/base/enums/message-type.d.ts +5 -0
  529. package/lib/base/helpers/auth-helper.d.ts +26 -0
  530. package/lib/base/interceptors/base.interceptor.d.ts +40 -0
  531. package/lib/base/interceptors/caching-interceptor.d.ts +35 -0
  532. package/lib/base/interceptors/loading.interceptor.d.ts +30 -0
  533. package/lib/base/models/auth-user.d.ts +15 -0
  534. package/lib/base/public_api.d.ts +1 -0
  535. package/lib/base/services/file.service.d.ts +10 -0
  536. package/lib/base/services/loading-screen.service.d.ts +30 -0
  537. package/lib/base/services/print.service.d.ts +23 -0
  538. package/lib/chips/chips.module.d.ts +15 -0
  539. package/lib/chips/components/chips.component.d.ts +223 -0
  540. package/lib/chips/public_api.d.ts +2 -0
  541. package/lib/common/animations/collapse/collapse.animation.d.ts +21 -0
  542. package/lib/common/animations/common/interfaces.d.ts +5 -0
  543. package/lib/common/behaviors/constructor.d.ts +1 -0
  544. package/lib/common/behaviors/control-value-accesor.mixin.d.ts +16 -0
  545. package/lib/common/behaviors/disabled.mixin.d.ts +8 -0
  546. package/lib/common/common.module.d.ts +53 -0
  547. package/lib/common/constants/constants.d.ts +1 -0
  548. package/lib/common/directives/disable-control.directive.d.ts +16 -0
  549. package/lib/common/enums/salutation.d.ts +5 -0
  550. package/lib/common/functions/decorators.d.ts +12 -0
  551. package/lib/common/functions/functions.d.ts +6 -0
  552. package/lib/common/functions/utils.d.ts +73 -0
  553. package/lib/common/helpers/app-storage.d.ts +32 -0
  554. package/lib/common/helpers/dynamic-builder.d.ts +19 -0
  555. package/lib/common/models/action-menu-item.d.ts +15 -0
  556. package/lib/common/models/app-setting.d.ts +17 -0
  557. package/lib/common/models/audit-entity.d.ts +12 -0
  558. package/lib/common/models/audit-user.d.ts +5 -0
  559. package/lib/common/models/base-entity.d.ts +10 -0
  560. package/lib/common/models/entity.d.ts +3 -0
  561. package/lib/common/models/enum-item.d.ts +4 -0
  562. package/lib/common/models/key-value.d.ts +4 -0
  563. package/lib/common/models/save-action.d.ts +5 -0
  564. package/lib/common/pipes/data-source.pipe.d.ts +7 -0
  565. package/lib/common/pipes/enum.pipe.d.ts +12 -0
  566. package/lib/common/pipes/file-size.pipe.d.ts +13 -0
  567. package/lib/common/pipes/filter.pipe.d.ts +13 -0
  568. package/lib/common/pipes/first-letter.d.ts +12 -0
  569. package/lib/common/pipes/keys.d.ts +7 -0
  570. package/lib/common/pipes/month-name.pipe.d.ts +15 -0
  571. package/lib/common/pipes/only-number.d.ts +21 -0
  572. package/lib/common/pipes/order.pipe.d.ts +77 -0
  573. package/lib/common/pipes/placeholder.pipe.d.ts +13 -0
  574. package/lib/common/pipes/safe-html.pipe.d.ts +22 -0
  575. package/lib/common/pipes/time.pipe.d.ts +7 -0
  576. package/lib/common/pipes/titlecase.pipe.d.ts +7 -0
  577. package/lib/common/pipes/truncate.pipe.d.ts +7 -0
  578. package/lib/common/pipes/values.d.ts +7 -0
  579. package/lib/common/public_api.d.ts +17 -0
  580. package/lib/common/services/base.service.d.ts +10 -0
  581. package/lib/common/services/context-helper.d.ts +17 -0
  582. package/lib/common/services/enum.service.d.ts +23 -0
  583. package/lib/common/services/service-locator.d.ts +19 -0
  584. package/lib/common/styles/_common-theme.scss +27 -0
  585. package/lib/common/styles/_elevation.scss +147 -0
  586. package/lib/common/styles/_layout.scss +588 -0
  587. package/lib/common/styles/_rtl.scss +28 -0
  588. package/lib/common/styles/_styles.scss +12 -0
  589. package/lib/common/styles/_theme-functions.scss +27 -0
  590. package/lib/common/styles/_typography-functions.scss +35 -0
  591. package/lib/common/styles/_typography.scss +76 -0
  592. package/lib/common/styles/_variables.scss +98 -0
  593. package/lib/common/styles/colors/_colors-dark.scss +388 -0
  594. package/lib/common/styles/colors/_colors-light.scss +904 -0
  595. package/lib/common/styles/colors/_colors.scss +7 -0
  596. package/lib/common/styles/core/_button.scss +59 -0
  597. package/lib/common/styles/core/_card.scss +160 -0
  598. package/lib/common/styles/core/_content.scss +42 -0
  599. package/lib/common/styles/core/_core.scss +23 -0
  600. package/lib/common/styles/core/_divider.scss +14 -0
  601. package/lib/common/styles/core/_icons.scss +26 -0
  602. package/lib/common/styles/core/_list.scss +8 -0
  603. package/lib/common/styles/core/_sidenav.scss +20 -0
  604. package/lib/common/styles/core/_structure.scss +126 -0
  605. package/lib/common/styles/core/_toolbar.scss +31 -0
  606. package/lib/common/styles/core/_whiteframe.scss +111 -0
  607. package/lib/common/styles/font/_font.scss +92 -0
  608. package/lib/common/styles/material-icons.scss +3 -0
  609. package/lib/common/styles/platform.scss +11 -0
  610. package/lib/common/styles/utilities/_general.scss +81 -0
  611. package/lib/common/styles/utilities/_pad.scss +36 -0
  612. package/lib/common/styles/utilities/_pull.scss +36 -0
  613. package/lib/common/styles/utilities/_push.scss +36 -0
  614. package/lib/common/styles/utilities/_size.scss +24 -0
  615. package/lib/common/styles/utilities/_text.scss +87 -0
  616. package/lib/common/styles/utilities/_utilities.scss +15 -0
  617. package/lib/common/theming/_all-theme.scss +14 -0
  618. package/lib/common/typography/_all-typography.scss +33 -0
  619. package/lib/dialogs/alert-dialog/alert-dialog.component.d.ts +20 -0
  620. package/lib/dialogs/confirm-dialog/confirm-dialog.component.d.ts +24 -0
  621. package/lib/dialogs/dialog.component.d.ts +23 -0
  622. package/lib/dialogs/dialogs.module.d.ts +21 -0
  623. package/lib/dialogs/prompt-dialog/prompt-dialog.component.d.ts +25 -0
  624. package/lib/dialogs/public_api.d.ts +1 -0
  625. package/lib/dialogs/services/dialog.service.d.ts +96 -0
  626. package/lib/file/file-input.component.d.ts +191 -0
  627. package/lib/file/file.module.d.ts +13 -0
  628. package/lib/file/public_api.d.ts +1 -0
  629. package/lib/form-validators/abstract/typed-form.d.ts +4 -0
  630. package/lib/form-validators/algorithm/luhn-algorithm.d.ts +1 -0
  631. package/lib/form-validators/const/app-validators.const.d.ts +3 -0
  632. package/lib/form-validators/const/app.const.d.ts +16 -0
  633. package/lib/form-validators/const/config-names.const.d.ts +8 -0
  634. package/lib/form-validators/const/config-required-fields.const.d.ts +3 -0
  635. package/lib/form-validators/const/decorators.const.d.ts +3 -0
  636. package/lib/form-validators/const/events.const.d.ts +13 -0
  637. package/lib/form-validators/const/html-elements.const.d.ts +6 -0
  638. package/lib/form-validators/const/iban-country-wise-regex.const.d.ts +79 -0
  639. package/lib/form-validators/const/index.d.ts +5 -0
  640. package/lib/form-validators/const/operators.const.d.ts +3 -0
  641. package/lib/form-validators/const/validation-alphabet-locale.const.d.ts +3 -0
  642. package/lib/form-validators/const/validator.const.d.ts +7 -0
  643. package/lib/form-validators/core/defaultContainer.d.ts +19 -0
  644. package/lib/form-validators/core/validator.interface.d.ts +61 -0
  645. package/lib/form-validators/core/validator.static.d.ts +3 -0
  646. package/lib/form-validators/decorators/allOf.decorator.d.ts +3 -0
  647. package/lib/form-validators/decorators/alpha.decorator.d.ts +3 -0
  648. package/lib/form-validators/decorators/alphaNumeric.decorator.d.ts +3 -0
  649. package/lib/form-validators/decorators/and.decorator.d.ts +2 -0
  650. package/lib/form-validators/decorators/ascii.decorator.d.ts +2 -0
  651. package/lib/form-validators/decorators/async.decorator.d.ts +2 -0
  652. package/lib/form-validators/decorators/base-decorator.function.d.ts +1 -0
  653. package/lib/form-validators/decorators/choice.decorator.d.ts +3 -0
  654. package/lib/form-validators/decorators/compare.decorator.d.ts +2 -0
  655. package/lib/form-validators/decorators/compose.decorator.d.ts +2 -0
  656. package/lib/form-validators/decorators/contains.decorator.d.ts +3 -0
  657. package/lib/form-validators/decorators/credit-card.decorator.d.ts +3 -0
  658. package/lib/form-validators/decorators/cusip.decorator.d.ts +2 -0
  659. package/lib/form-validators/decorators/custom.decorator.d.ts +3 -0
  660. package/lib/form-validators/decorators/dataUri.decorator.d.ts +2 -0
  661. package/lib/form-validators/decorators/date.decorator.d.ts +3 -0
  662. package/lib/form-validators/decorators/different.decorator.d.ts +2 -0
  663. package/lib/form-validators/decorators/digit.decorator.d.ts +2 -0
  664. package/lib/form-validators/decorators/email.decorator.d.ts +2 -0
  665. package/lib/form-validators/decorators/endsWith.decorator.d.ts +3 -0
  666. package/lib/form-validators/decorators/even.decorator.d.ts +2 -0
  667. package/lib/form-validators/decorators/extension.decorator.d.ts +3 -0
  668. package/lib/form-validators/decorators/factor.decorator.d.ts +3 -0
  669. package/lib/form-validators/decorators/file.decorator.d.ts +3 -0
  670. package/lib/form-validators/decorators/fileSize.decorator.d.ts +3 -0
  671. package/lib/form-validators/decorators/greater-than-equal-to.decorator.d.ts +3 -0
  672. package/lib/form-validators/decorators/greater-than.decorator.d.ts +3 -0
  673. package/lib/form-validators/decorators/grid.decorator.d.ts +2 -0
  674. package/lib/form-validators/decorators/hexColor.decorator.d.ts +2 -0
  675. package/lib/form-validators/decorators/image.decorator.d.ts +3 -0
  676. package/lib/form-validators/decorators/index.d.ts +90 -0
  677. package/lib/form-validators/decorators/json.decorator.d.ts +2 -0
  678. package/lib/form-validators/decorators/latLong.decorator.d.ts +2 -0
  679. package/lib/form-validators/decorators/latitude.decorator.d.ts +2 -0
  680. package/lib/form-validators/decorators/leapYear.decorator.d.ts +2 -0
  681. package/lib/form-validators/decorators/less-than-equal-to.decorator.d.ts +3 -0
  682. package/lib/form-validators/decorators/less-than.decorator.d.ts +3 -0
  683. package/lib/form-validators/decorators/longitude.decorator.d.ts +2 -0
  684. package/lib/form-validators/decorators/lowercase.decorator.d.ts +2 -0
  685. package/lib/form-validators/decorators/mac.decorator.d.ts +2 -0
  686. package/lib/form-validators/decorators/mask.decorator.d.ts +2 -0
  687. package/lib/form-validators/decorators/maxDate.decorator.d.ts +3 -0
  688. package/lib/form-validators/decorators/maxLength.decorator.d.ts +3 -0
  689. package/lib/form-validators/decorators/maxNumber.decorator.d.ts +3 -0
  690. package/lib/form-validators/decorators/maxTime.decorator.d.ts +3 -0
  691. package/lib/form-validators/decorators/minDate.decorator.d.ts +3 -0
  692. package/lib/form-validators/decorators/minLength.decorator.d.ts +3 -0
  693. package/lib/form-validators/decorators/minNumber.decorator.d.ts +3 -0
  694. package/lib/form-validators/decorators/minTime.decorator.d.ts +3 -0
  695. package/lib/form-validators/decorators/model.decorator.d.ts +2 -0
  696. package/lib/form-validators/decorators/non-validation-decorators/disable.decorator.d.ts +2 -0
  697. package/lib/form-validators/decorators/non-validation-decorators/elementClass.decorator.d.ts +2 -0
  698. package/lib/form-validators/decorators/non-validation-decorators/error.decorator.d.ts +2 -0
  699. package/lib/form-validators/decorators/noneOf.decorator.d.ts +3 -0
  700. package/lib/form-validators/decorators/not.decorator.d.ts +2 -0
  701. package/lib/form-validators/decorators/notEmpty.decorator.d.ts +2 -0
  702. package/lib/form-validators/decorators/numeric.decorator.d.ts +3 -0
  703. package/lib/form-validators/decorators/odd.decorator.d.ts +2 -0
  704. package/lib/form-validators/decorators/oneOf.decorator.d.ts +3 -0
  705. package/lib/form-validators/decorators/or.decorator.d.ts +2 -0
  706. package/lib/form-validators/decorators/password.decorator.d.ts +3 -0
  707. package/lib/form-validators/decorators/pattern.decorator.d.ts +3 -0
  708. package/lib/form-validators/decorators/port.decorator.d.ts +2 -0
  709. package/lib/form-validators/decorators/primeNumber.decorator.d.ts +2 -0
  710. package/lib/form-validators/decorators/prop-array.decorator.d.ts +3 -0
  711. package/lib/form-validators/decorators/prop-object.decorator.d.ts +3 -0
  712. package/lib/form-validators/decorators/prop.decorator.d.ts +2 -0
  713. package/lib/form-validators/decorators/range.decorator.d.ts +3 -0
  714. package/lib/form-validators/decorators/required.decorator.d.ts +2 -0
  715. package/lib/form-validators/decorators/requiredTrue.decorator.d.ts +2 -0
  716. package/lib/form-validators/decorators/rule.decorator.d.ts +2 -0
  717. package/lib/form-validators/decorators/sanitize/blacklist.decorator.d.ts +1 -0
  718. package/lib/form-validators/decorators/sanitize/escape.decorator.d.ts +1 -0
  719. package/lib/form-validators/decorators/sanitize/ltrim.decorator.d.ts +1 -0
  720. package/lib/form-validators/decorators/sanitize/prefix.decorator.d.ts +1 -0
  721. package/lib/form-validators/decorators/sanitize/rtrim.decorator.d.ts +1 -0
  722. package/lib/form-validators/decorators/sanitize/sanitize.decorator.d.ts +2 -0
  723. package/lib/form-validators/decorators/sanitize/stripLow.decorator.d.ts +1 -0
  724. package/lib/form-validators/decorators/sanitize/suffix.decorator.d.ts +1 -0
  725. package/lib/form-validators/decorators/sanitize/toBoolean.decorator.d.ts +1 -0
  726. package/lib/form-validators/decorators/sanitize/toDate.decorator.d.ts +2 -0
  727. package/lib/form-validators/decorators/sanitize/toDouble.decorator.d.ts +1 -0
  728. package/lib/form-validators/decorators/sanitize/toFloat.decorator.d.ts +1 -0
  729. package/lib/form-validators/decorators/sanitize/toInt.decorator.d.ts +1 -0
  730. package/lib/form-validators/decorators/sanitize/toString.decorator.d.ts +1 -0
  731. package/lib/form-validators/decorators/sanitize/trim.decorator.d.ts +1 -0
  732. package/lib/form-validators/decorators/sanitize/whitelist.decorator.d.ts +1 -0
  733. package/lib/form-validators/decorators/startsWith.decorator.d.ts +3 -0
  734. package/lib/form-validators/decorators/time.decorator.d.ts +3 -0
  735. package/lib/form-validators/decorators/unique.decorator.d.ts +2 -0
  736. package/lib/form-validators/decorators/uppercase.decorator.d.ts +2 -0
  737. package/lib/form-validators/decorators/url.decorator.d.ts +3 -0
  738. package/lib/form-validators/directives/base-directive.d.ts +8 -0
  739. package/lib/form-validators/directives/control-host.directive.d.ts +11 -0
  740. package/lib/form-validators/directives/html-control-template.directive.d.ts +9 -0
  741. package/lib/form-validators/directives/rx-form.directive.d.ts +18 -0
  742. package/lib/form-validators/directives/template-validations/async-validation.directive.d.ts +9 -0
  743. package/lib/form-validators/directives/template-validations/base-validator.directive.d.ts +17 -0
  744. package/lib/form-validators/directives/template-validations/control-expression-process.d.ts +18 -0
  745. package/lib/form-validators/directives/template-validations/file-control.directive.d.ts +29 -0
  746. package/lib/form-validators/directives/template-validations/image-file-control.directive.d.ts +17 -0
  747. package/lib/form-validators/directives/template-validations/rxformcontrol.directive.d.ts +89 -0
  748. package/lib/form-validators/domain/disable-provider.d.ts +15 -0
  749. package/lib/form-validators/domain/element-processor/decimal.provider.d.ts +17 -0
  750. package/lib/form-validators/domain/element-processor/mask.provider.d.ts +63 -0
  751. package/lib/form-validators/domain/form-data.d.ts +10 -0
  752. package/lib/form-validators/enums/error-message-binding-strategy.d.ts +9 -0
  753. package/lib/form-validators/enums/index.d.ts +4 -0
  754. package/lib/form-validators/enums/ip-version.d.ts +5 -0
  755. package/lib/form-validators/enums/numeric-value-type.d.ts +5 -0
  756. package/lib/form-validators/enums/reset-type.d.ts +8 -0
  757. package/lib/form-validators/enums/url-validation-type.d.ts +5 -0
  758. package/lib/form-validators/models/config/alpha-config.d.ts +5 -0
  759. package/lib/form-validators/models/config/array-config.d.ts +4 -0
  760. package/lib/form-validators/models/config/base-config-fn.d.ts +10 -0
  761. package/lib/form-validators/models/config/base-config.d.ts +7 -0
  762. package/lib/form-validators/models/config/base-date-config.d.ts +4 -0
  763. package/lib/form-validators/models/config/choice-config.d.ts +5 -0
  764. package/lib/form-validators/models/config/compare-config.d.ts +5 -0
  765. package/lib/form-validators/models/config/component-config.d.ts +3 -0
  766. package/lib/form-validators/models/config/compose-config.d.ts +5 -0
  767. package/lib/form-validators/models/config/contains-config.d.ts +4 -0
  768. package/lib/form-validators/models/config/credit-card-config.d.ts +5 -0
  769. package/lib/form-validators/models/config/custom-config.d.ts +5 -0
  770. package/lib/form-validators/models/config/date-config.d.ts +6 -0
  771. package/lib/form-validators/models/config/default-config.d.ts +4 -0
  772. package/lib/form-validators/models/config/digit-config.d.ts +3 -0
  773. package/lib/form-validators/models/config/disable-config.d.ts +3 -0
  774. package/lib/form-validators/models/config/element-class-config.d.ts +3 -0
  775. package/lib/form-validators/models/config/email-config.d.ts +3 -0
  776. package/lib/form-validators/models/config/error-config.d.ts +3 -0
  777. package/lib/form-validators/models/config/extension-config.d.ts +5 -0
  778. package/lib/form-validators/models/config/factor-config.d.ts +5 -0
  779. package/lib/form-validators/models/config/field-config.d.ts +4 -0
  780. package/lib/form-validators/models/config/file-config.d.ts +5 -0
  781. package/lib/form-validators/models/config/hex-color-config.d.ts +4 -0
  782. package/lib/form-validators/models/config/iban-config.d.ts +4 -0
  783. package/lib/form-validators/models/config/image-config.d.ts +7 -0
  784. package/lib/form-validators/models/config/index.d.ts +34 -0
  785. package/lib/form-validators/models/config/ip-config.d.ts +6 -0
  786. package/lib/form-validators/models/config/logical-operator-config.d.ts +5 -0
  787. package/lib/form-validators/models/config/mask-config.d.ts +6 -0
  788. package/lib/form-validators/models/config/max-date-config.d.ts +4 -0
  789. package/lib/form-validators/models/config/message-config.d.ts +3 -0
  790. package/lib/form-validators/models/config/min-date-config.d.ts +4 -0
  791. package/lib/form-validators/models/config/model-config.d.ts +4 -0
  792. package/lib/form-validators/models/config/number-config.d.ts +4 -0
  793. package/lib/form-validators/models/config/numeric-config.d.ts +8 -0
  794. package/lib/form-validators/models/config/password-config.d.ts +13 -0
  795. package/lib/form-validators/models/config/pattern-config.d.ts +6 -0
  796. package/lib/form-validators/models/config/prop-config.d.ts +14 -0
  797. package/lib/form-validators/models/config/props-config.d.ts +12 -0
  798. package/lib/form-validators/models/config/range-config.d.ts +5 -0
  799. package/lib/form-validators/models/config/relational-operator-config.d.ts +6 -0
  800. package/lib/form-validators/models/config/required-config.d.ts +3 -0
  801. package/lib/form-validators/models/config/rule-config.d.ts +4 -0
  802. package/lib/form-validators/models/config/sanitize-config.d.ts +3 -0
  803. package/lib/form-validators/models/config/size-config.d.ts +5 -0
  804. package/lib/form-validators/models/config/string-comparison-config.d.ts +4 -0
  805. package/lib/form-validators/models/config/time-config.d.ts +15 -0
  806. package/lib/form-validators/models/config/todate-config.d.ts +3 -0
  807. package/lib/form-validators/models/config/unique-config.d.ts +4 -0
  808. package/lib/form-validators/models/config/url-config.d.ts +5 -0
  809. package/lib/form-validators/models/form-builder-configuration.d.ts +28 -0
  810. package/lib/form-validators/models/index.d.ts +2 -0
  811. package/lib/form-validators/models/interface/array-prop-instance-config.interface.d.ts +5 -0
  812. package/lib/form-validators/models/interface/auto-instance-config.interface.d.ts +7 -0
  813. package/lib/form-validators/models/interface/form-data-config.d.ts +3 -0
  814. package/lib/form-validators/models/interface/i-abstract-control.d.ts +15 -0
  815. package/lib/form-validators/models/interface/i-form-group.d.ts +37 -0
  816. package/lib/form-validators/models/interface/instance-argument.interface.d.ts +3 -0
  817. package/lib/form-validators/models/interface/object-prop-instance-config.interface.d.ts +4 -0
  818. package/lib/form-validators/models/interface/options.d.ts +9 -0
  819. package/lib/form-validators/models/password-validation.model.d.ts +20 -0
  820. package/lib/form-validators/models/prop-validation-config.d.ts +78 -0
  821. package/lib/form-validators/public_api.d.ts +24 -0
  822. package/lib/form-validators/reactive-form-validators/allOf.validator.d.ts +3 -0
  823. package/lib/form-validators/reactive-form-validators/alpha.validator.d.ts +3 -0
  824. package/lib/form-validators/reactive-form-validators/alphaNumeric.validator.d.ts +3 -0
  825. package/lib/form-validators/reactive-form-validators/and.validator.d.ts +3 -0
  826. package/lib/form-validators/reactive-form-validators/ascii.validator.d.ts +3 -0
  827. package/lib/form-validators/reactive-form-validators/async/base.async.validator.d.ts +2 -0
  828. package/lib/form-validators/reactive-form-validators/choice.validator.d.ts +3 -0
  829. package/lib/form-validators/reactive-form-validators/compare.validator.d.ts +3 -0
  830. package/lib/form-validators/reactive-form-validators/compose.validator.d.ts +3 -0
  831. package/lib/form-validators/reactive-form-validators/conditional-change.validator.d.ts +2 -0
  832. package/lib/form-validators/reactive-form-validators/contains.validator.d.ts +3 -0
  833. package/lib/form-validators/reactive-form-validators/credit-card.validator.d.ts +3 -0
  834. package/lib/form-validators/reactive-form-validators/cusip.validator.d.ts +3 -0
  835. package/lib/form-validators/reactive-form-validators/custom.validator.d.ts +3 -0
  836. package/lib/form-validators/reactive-form-validators/dataUri.validator.d.ts +3 -0
  837. package/lib/form-validators/reactive-form-validators/date.validator.d.ts +3 -0
  838. package/lib/form-validators/reactive-form-validators/different.validator.d.ts +3 -0
  839. package/lib/form-validators/reactive-form-validators/digit.validator.d.ts +3 -0
  840. package/lib/form-validators/reactive-form-validators/email.validator.d.ts +3 -0
  841. package/lib/form-validators/reactive-form-validators/endsWith.validator.d.ts +3 -0
  842. package/lib/form-validators/reactive-form-validators/even.validator.d.ts +3 -0
  843. package/lib/form-validators/reactive-form-validators/extension.validator.d.ts +2 -0
  844. package/lib/form-validators/reactive-form-validators/factor.validator.d.ts +3 -0
  845. package/lib/form-validators/reactive-form-validators/file.validator.d.ts +2 -0
  846. package/lib/form-validators/reactive-form-validators/fileSize.validator.d.ts +2 -0
  847. package/lib/form-validators/reactive-form-validators/greater-than-equal-to.validator.d.ts +3 -0
  848. package/lib/form-validators/reactive-form-validators/greater-than.validator.d.ts +3 -0
  849. package/lib/form-validators/reactive-form-validators/grid.validator.d.ts +3 -0
  850. package/lib/form-validators/reactive-form-validators/hexcolor.validator.d.ts +3 -0
  851. package/lib/form-validators/reactive-form-validators/iban.validator.d.ts +3 -0
  852. package/lib/form-validators/reactive-form-validators/image.validator.d.ts +2 -0
  853. package/lib/form-validators/reactive-form-validators/index.d.ts +65 -0
  854. package/lib/form-validators/reactive-form-validators/ip.validator.d.ts +3 -0
  855. package/lib/form-validators/reactive-form-validators/json.validator.d.ts +3 -0
  856. package/lib/form-validators/reactive-form-validators/latLong.validator.d.ts +3 -0
  857. package/lib/form-validators/reactive-form-validators/latitude.validator.d.ts +3 -0
  858. package/lib/form-validators/reactive-form-validators/leapYear.validator.d.ts +3 -0
  859. package/lib/form-validators/reactive-form-validators/less-than-equal-to.validator.d.ts +3 -0
  860. package/lib/form-validators/reactive-form-validators/less-than.validator.d.ts +3 -0
  861. package/lib/form-validators/reactive-form-validators/longitude.validator.d.ts +3 -0
  862. package/lib/form-validators/reactive-form-validators/lowercase.validator.d.ts +3 -0
  863. package/lib/form-validators/reactive-form-validators/mac.validator.d.ts +3 -0
  864. package/lib/form-validators/reactive-form-validators/mask.validator.d.ts +3 -0
  865. package/lib/form-validators/reactive-form-validators/maxDate.validator.d.ts +3 -0
  866. package/lib/form-validators/reactive-form-validators/maxLength.validator.d.ts +3 -0
  867. package/lib/form-validators/reactive-form-validators/maxNumber.validator.d.ts +3 -0
  868. package/lib/form-validators/reactive-form-validators/maxTime.validator.d.ts +3 -0
  869. package/lib/form-validators/reactive-form-validators/minDate.validator.d.ts +3 -0
  870. package/lib/form-validators/reactive-form-validators/minLength.validator.d.ts +3 -0
  871. package/lib/form-validators/reactive-form-validators/minNumber.validator.d.ts +3 -0
  872. package/lib/form-validators/reactive-form-validators/minTime.validator.d.ts +3 -0
  873. package/lib/form-validators/reactive-form-validators/noneOf.validator.d.ts +3 -0
  874. package/lib/form-validators/reactive-form-validators/not.validator.d.ts +3 -0
  875. package/lib/form-validators/reactive-form-validators/notEmpty.validator.d.ts +3 -0
  876. package/lib/form-validators/reactive-form-validators/numeric.validator.d.ts +3 -0
  877. package/lib/form-validators/reactive-form-validators/odd.validator.d.ts +3 -0
  878. package/lib/form-validators/reactive-form-validators/oneOf.validator.d.ts +3 -0
  879. package/lib/form-validators/reactive-form-validators/or.validator.d.ts +3 -0
  880. package/lib/form-validators/reactive-form-validators/password.validator.d.ts +3 -0
  881. package/lib/form-validators/reactive-form-validators/pattern.validator.d.ts +3 -0
  882. package/lib/form-validators/reactive-form-validators/port.validator.d.ts +3 -0
  883. package/lib/form-validators/reactive-form-validators/primeNumber.validator.d.ts +3 -0
  884. package/lib/form-validators/reactive-form-validators/range.validator.d.ts +3 -0
  885. package/lib/form-validators/reactive-form-validators/required.validator.d.ts +3 -0
  886. package/lib/form-validators/reactive-form-validators/requiredTrue.validator.d.ts +3 -0
  887. package/lib/form-validators/reactive-form-validators/rule.validator.d.ts +3 -0
  888. package/lib/form-validators/reactive-form-validators/startsWith.validator.d.ts +3 -0
  889. package/lib/form-validators/reactive-form-validators/time.validator.d.ts +3 -0
  890. package/lib/form-validators/reactive-form-validators/unique.validator.d.ts +3 -0
  891. package/lib/form-validators/reactive-form-validators/uppercase.validator.d.ts +3 -0
  892. package/lib/form-validators/reactive-form-validators/url.validator.d.ts +3 -0
  893. package/lib/form-validators/services/base-form-builder.d.ts +13 -0
  894. package/lib/form-validators/services/entity.service.d.ts +15 -0
  895. package/lib/form-validators/services/form-control.d.ts +99 -0
  896. package/lib/form-validators/services/form-group.d.ts +9 -0
  897. package/lib/form-validators/services/reactive-form.module.d.ts +24 -0
  898. package/lib/form-validators/services/rx-form-array.d.ts +38 -0
  899. package/lib/form-validators/services/rx-form-builder.d.ts +54 -0
  900. package/lib/form-validators/services/rx-form-group.d.ts +66 -0
  901. package/lib/form-validators/services/typed-form-builder.d.ts +14 -0
  902. package/lib/form-validators/util/alphabet-regex.locale.d.ts +28 -0
  903. package/lib/form-validators/util/app-util.d.ts +28 -0
  904. package/lib/form-validators/util/check-length.d.ts +1 -0
  905. package/lib/form-validators/util/config-provider.d.ts +1 -0
  906. package/lib/form-validators/util/date-checker.function.d.ts +7 -0
  907. package/lib/form-validators/util/date-provider.d.ts +9 -0
  908. package/lib/form-validators/util/form-const.d.ts +2 -0
  909. package/lib/form-validators/util/form-provider.d.ts +8 -0
  910. package/lib/form-validators/util/index.d.ts +6 -0
  911. package/lib/form-validators/util/instance-provider.function.d.ts +3 -0
  912. package/lib/form-validators/util/ip-checker.d.ts +2 -0
  913. package/lib/form-validators/util/linq.d.ts +15 -0
  914. package/lib/form-validators/util/object-maker.d.ts +7 -0
  915. package/lib/form-validators/util/reactive-form-config.d.ts +17 -0
  916. package/lib/form-validators/util/regex-rules.d.ts +3 -0
  917. package/lib/form-validators/util/regex-validator.d.ts +11 -0
  918. package/lib/form-validators/util/relational-checker.function.d.ts +2 -0
  919. package/lib/form-validators/util/reset-form.d.ts +21 -0
  920. package/lib/form-validators/util/sanitizers.d.ts +3 -0
  921. package/lib/form-validators/util/time-checker.function.d.ts +4 -0
  922. package/lib/form-validators/util/type.d.ts +3 -0
  923. package/lib/form-validators/util/validator-value-checker.d.ts +5 -0
  924. package/lib/form-validators/validators-extension/allOf-validator.extension.d.ts +4 -0
  925. package/lib/form-validators/validators-extension/alpha-validator.extension.d.ts +4 -0
  926. package/lib/form-validators/validators-extension/alphaNumeric-validator.extension.d.ts +4 -0
  927. package/lib/form-validators/validators-extension/and-validator.extension.d.ts +3 -0
  928. package/lib/form-validators/validators-extension/ascii-validator.extension.d.ts +3 -0
  929. package/lib/form-validators/validators-extension/base-validator.function.d.ts +3 -0
  930. package/lib/form-validators/validators-extension/choice-validator.extension.d.ts +4 -0
  931. package/lib/form-validators/validators-extension/compare-validator.extension.d.ts +3 -0
  932. package/lib/form-validators/validators-extension/compose-validator.extension.d.ts +3 -0
  933. package/lib/form-validators/validators-extension/contains-validator.extension.d.ts +4 -0
  934. package/lib/form-validators/validators-extension/credit-card-validator.extension.d.ts +4 -0
  935. package/lib/form-validators/validators-extension/cusip-validator.extension.d.ts +3 -0
  936. package/lib/form-validators/validators-extension/custom-validator.extension.d.ts +4 -0
  937. package/lib/form-validators/validators-extension/dataUri-validator.extension.d.ts +3 -0
  938. package/lib/form-validators/validators-extension/date-validator.extension.d.ts +4 -0
  939. package/lib/form-validators/validators-extension/different-validator.extension.d.ts +3 -0
  940. package/lib/form-validators/validators-extension/digit-validator.extension.d.ts +3 -0
  941. package/lib/form-validators/validators-extension/email-validator.extension.d.ts +3 -0
  942. package/lib/form-validators/validators-extension/endsWith-validator.extension.d.ts +4 -0
  943. package/lib/form-validators/validators-extension/even-validator.extension.d.ts +3 -0
  944. package/lib/form-validators/validators-extension/extension-validator.extension.d.ts +4 -0
  945. package/lib/form-validators/validators-extension/factor-validator.extension.d.ts +4 -0
  946. package/lib/form-validators/validators-extension/file-validator.extension.d.ts +4 -0
  947. package/lib/form-validators/validators-extension/fileSize-validator.extension.d.ts +4 -0
  948. package/lib/form-validators/validators-extension/greater-than-equal-to-validator.extension.d.ts +4 -0
  949. package/lib/form-validators/validators-extension/greater-than-validator.extension.d.ts +4 -0
  950. package/lib/form-validators/validators-extension/grid-validator.extension.d.ts +3 -0
  951. package/lib/form-validators/validators-extension/hexcolor-validator.extension.d.ts +3 -0
  952. package/lib/form-validators/validators-extension/iban-validator.extension.d.ts +4 -0
  953. package/lib/form-validators/validators-extension/image-validator.extension.d.ts +4 -0
  954. package/lib/form-validators/validators-extension/index.d.ts +67 -0
  955. package/lib/form-validators/validators-extension/ip-validator.extension.d.ts +4 -0
  956. package/lib/form-validators/validators-extension/json-validator.extension.d.ts +3 -0
  957. package/lib/form-validators/validators-extension/latLong-validator.extension.d.ts +3 -0
  958. package/lib/form-validators/validators-extension/latitude-validator.extension.d.ts +3 -0
  959. package/lib/form-validators/validators-extension/leapYear-validator.extension.d.ts +3 -0
  960. package/lib/form-validators/validators-extension/less-than-equal-to-validator.extension.d.ts +4 -0
  961. package/lib/form-validators/validators-extension/less-than-validator.extension.d.ts +4 -0
  962. package/lib/form-validators/validators-extension/longitude-validator.extension.d.ts +3 -0
  963. package/lib/form-validators/validators-extension/lowercase-validator.extension.d.ts +3 -0
  964. package/lib/form-validators/validators-extension/mac-validator.extension.d.ts +3 -0
  965. package/lib/form-validators/validators-extension/mask-validator.extension.d.ts +3 -0
  966. package/lib/form-validators/validators-extension/maxDate-validator.extension.d.ts +4 -0
  967. package/lib/form-validators/validators-extension/maxLength-validator.extension.d.ts +4 -0
  968. package/lib/form-validators/validators-extension/maxNumber-validator.extension.d.ts +4 -0
  969. package/lib/form-validators/validators-extension/maxTime-validator.extension.d.ts +4 -0
  970. package/lib/form-validators/validators-extension/minDate-validator.extension.d.ts +4 -0
  971. package/lib/form-validators/validators-extension/minLength-validator.extension.d.ts +4 -0
  972. package/lib/form-validators/validators-extension/minNumber-validator.extension.d.ts +4 -0
  973. package/lib/form-validators/validators-extension/minTime-validator.extension.d.ts +4 -0
  974. package/lib/form-validators/validators-extension/noneOf-validator.extension.d.ts +4 -0
  975. package/lib/form-validators/validators-extension/not-validator.extension.d.ts +3 -0
  976. package/lib/form-validators/validators-extension/notEmpty-validator.extension.d.ts +3 -0
  977. package/lib/form-validators/validators-extension/numeric-validator.extension.d.ts +4 -0
  978. package/lib/form-validators/validators-extension/odd-validator.extension.d.ts +3 -0
  979. package/lib/form-validators/validators-extension/oneOf-validator.extension.d.ts +4 -0
  980. package/lib/form-validators/validators-extension/or-validator.extension.d.ts +3 -0
  981. package/lib/form-validators/validators-extension/password-validator.extension.d.ts +4 -0
  982. package/lib/form-validators/validators-extension/pattern-validator.extension.d.ts +4 -0
  983. package/lib/form-validators/validators-extension/port-validator.extension.d.ts +3 -0
  984. package/lib/form-validators/validators-extension/primeNumber-validator.extension.d.ts +3 -0
  985. package/lib/form-validators/validators-extension/range-validator.extension.d.ts +4 -0
  986. package/lib/form-validators/validators-extension/required-validator.extension.d.ts +3 -0
  987. package/lib/form-validators/validators-extension/requiredTrue-validator.extension.d.ts +3 -0
  988. package/lib/form-validators/validators-extension/rxweb-validators.d.ts +107 -0
  989. package/lib/form-validators/validators-extension/startsWith-validator.extension.d.ts +4 -0
  990. package/lib/form-validators/validators-extension/time-validator.extension.d.ts +4 -0
  991. package/lib/form-validators/validators-extension/unique-validator.extension.d.ts +3 -0
  992. package/lib/form-validators/validators-extension/uppercase-validator.extension.d.ts +3 -0
  993. package/lib/form-validators/validators-extension/url-validator.extension.d.ts +4 -0
  994. package/lib/form-validators/validators-function/alpha-validation.function.d.ts +3 -0
  995. package/lib/form-validators/validators-function/regex-validation.function.d.ts +4 -0
  996. package/lib/forms/components/generic-form/generic-form.component.d.ts +91 -0
  997. package/lib/forms/constants/constants.d.ts +1 -0
  998. package/lib/forms/directives/mat-form-field-editor.directive.d.ts +82 -0
  999. package/lib/forms/directives/mat-form-field-readonly.directive.d.ts +16 -0
  1000. package/lib/forms/enums/form-field-type.d.ts +17 -0
  1001. package/lib/forms/forms.module.d.ts +39 -0
  1002. package/lib/forms/functions/decorators.d.ts +14 -0
  1003. package/lib/forms/functions/functions.d.ts +7 -0
  1004. package/lib/forms/helpers/abstract-mat-form-field.d.ts +182 -0
  1005. package/lib/forms/helpers/value-accessor-base.d.ts +92 -0
  1006. package/lib/forms/models/form-field-definition.d.ts +39 -0
  1007. package/lib/forms/models/form-field-group.d.ts +12 -0
  1008. package/lib/forms/public_api.d.ts +3 -0
  1009. package/lib/forms/validators/equal-validator.directive.d.ts +20 -0
  1010. package/lib/forms/validators/native-element-injector.directive.d.ts +17 -0
  1011. package/lib/forms/validators/unique-validator-directive.d.ts +36 -0
  1012. package/lib/http/http.module.d.ts +8 -0
  1013. package/lib/http/public_api.d.ts +1 -0
  1014. package/lib/http/services/generic.service.d.ts +166 -0
  1015. package/lib/layout/_layout-theme.scss +89 -0
  1016. package/lib/layout/form-toolbar/form-toolbar.component.d.ts +23 -0
  1017. package/lib/layout/form-toolbar-menu/form-toolbar-menu.component.d.ts +10 -0
  1018. package/lib/layout/layout-card-over/layout-card-over.component.d.ts +31 -0
  1019. package/lib/layout/layout-footer/layout-footer.component.d.ts +17 -0
  1020. package/lib/layout/layout-manage-list/layout-manage-list.component.d.ts +100 -0
  1021. package/lib/layout/layout-manage-list/layout-manage-list.directives.d.ts +61 -0
  1022. package/lib/layout/layout-nav/layout-nav.component.d.ts +85 -0
  1023. package/lib/layout/layout-nav-list/layout-nav-list.component.d.ts +94 -0
  1024. package/lib/layout/layout-nav-list/layout-nav-list.directives.d.ts +25 -0
  1025. package/lib/layout/layout-toggle.class.d.ts +37 -0
  1026. package/lib/layout/layout.component.d.ts +56 -0
  1027. package/lib/layout/layout.directives.d.ts +25 -0
  1028. package/lib/layout/layout.module.d.ts +46 -0
  1029. package/lib/layout/list-toolbar/list-toolbar.component.d.ts +19 -0
  1030. package/lib/layout/list-toolbar-menu/list-toolbar-menu.component.d.ts +10 -0
  1031. package/lib/layout/navigation-drawer/navigation-drawer.component.d.ts +114 -0
  1032. package/lib/layout/public_api.d.ts +1 -0
  1033. package/lib/media/directives/media-toggle.directive.d.ts +44 -0
  1034. package/lib/media/media.module.d.ts +11 -0
  1035. package/lib/media/public_api.d.ts +1 -0
  1036. package/lib/media/services/media.service.d.ts +37 -0
  1037. package/lib/menu/components/menu.component.d.ts +28 -0
  1038. package/lib/menu/enums/menu-scope.d.ts +4 -0
  1039. package/lib/menu/menu.module.d.ts +19 -0
  1040. package/lib/menu/models/menu-item.d.ts +17 -0
  1041. package/lib/menu/models/menu.d.ts +14 -0
  1042. package/lib/menu/public_api.d.ts +1 -0
  1043. package/lib/menu/services/menu-items.service.d.ts +12 -0
  1044. package/lib/menu/services/menu.resolve.d.ts +39 -0
  1045. package/lib/menu/services/menu.service.d.ts +12 -0
  1046. package/lib/search/public_api.d.ts +1 -0
  1047. package/lib/search/search.module.d.ts +15 -0
  1048. package/lib/search/vd-search-box/vd-search-box.component.d.ts +60 -0
  1049. package/lib/search/vd-search-input/vd-search-input.component.d.ts +57 -0
  1050. package/lib/select/public_api.d.ts +2 -0
  1051. package/lib/select/select.component.d.ts +233 -0
  1052. package/lib/select/select.module.d.ts +13 -0
  1053. package/lib/table/components/dynamic-table/dynamic-table.component.d.ts +202 -0
  1054. package/lib/table/components/filter-clear.component.d.ts +16 -0
  1055. package/lib/table/components/filter-date.component.d.ts +70 -0
  1056. package/lib/table/components/filter-input.component.d.ts +94 -0
  1057. package/lib/table/components/filter-select.component.d.ts +178 -0
  1058. package/lib/table/directives/data-source-filter.directive.d.ts +28 -0
  1059. package/lib/table/enums/table-column-type.d.ts +12 -0
  1060. package/lib/table/functions/decorators.d.ts +17 -0
  1061. package/lib/table/functions/functions.d.ts +8 -0
  1062. package/lib/table/models/pagination.d.ts +7 -0
  1063. package/lib/table/models/table-column.d.ts +59 -0
  1064. package/lib/table/models/table-definition.d.ts +24 -0
  1065. package/lib/table/models/table-menu-item.d.ts +8 -0
  1066. package/lib/table/paginator-intl.d.ts +27 -0
  1067. package/lib/table/public_api.d.ts +2 -0
  1068. package/lib/table/table.data-source.d.ts +140 -0
  1069. package/lib/table/table.module.d.ts +46 -0
  1070. package/lib/table/table.static-data-source.d.ts +88 -0
  1071. package/messaia-cdk.d.ts +5 -0
  1072. package/package.json +31 -0
  1073. package/public_api.d.ts +14 -0
  1074. package/src/lib/layout/README.md +119 -0
  1075. package/src/lib/layout/layout-card-over/README.md +36 -0
  1076. package/src/lib/layout/layout-manage-list/README.md +76 -0
  1077. package/src/lib/layout/layout-nav/README.md +40 -0
  1078. package/src/lib/layout/layout-nav-list/README.md +85 -0
@@ -0,0 +1,20 @@
1
+ import { FIELD_CONFIG } from "../const/config-names.const";
2
+ import { AnnotationTypes } from "../core/validator.static";
3
+ import { ApplicationUtil } from '../util/app-util';
4
+ import { getConfigObject } from "../util/config-provider";
5
+ import { ObjectMaker } from "../util/object-maker";
6
+ import { RegexValidator } from "../util/regex-validator";
7
+ export function compareValidator(configModel) {
8
+ return (control) => {
9
+ let config = getConfigObject(configModel, control, FIELD_CONFIG);
10
+ const compareControl = ApplicationUtil.getFormControl(config.fieldName, control);
11
+ const controlValue = control.value;
12
+ const compareControlValue = (compareControl) ? compareControl.value : '';
13
+ if (RegexValidator.isNotBlank(controlValue) || RegexValidator.isNotBlank(compareControlValue)) {
14
+ if (!(compareControl && compareControl.value === controlValue))
15
+ return ObjectMaker.toJson(AnnotationTypes.compare, config, [controlValue, compareControlValue]);
16
+ }
17
+ return ObjectMaker.null();
18
+ };
19
+ }
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGFyZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc3JjL2xpYi9mb3JtLXZhbGlkYXRvcnMvcmVhY3RpdmUtZm9ybS12YWxpZGF0b3JzL2NvbXBhcmUudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXpELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxXQUEwQjtJQUN6RCxPQUFPLENBQUMsT0FBa0IsRUFBMEIsRUFBRTtRQUNwRCxJQUFJLE1BQU0sR0FBRyxlQUFlLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNqRSxNQUFNLGNBQWMsR0FBUSxlQUFlLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDdEYsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUNuQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN6RSxJQUFJLGNBQWMsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksY0FBYyxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFO1lBQzdGLElBQUksQ0FBQyxDQUFDLGNBQWMsSUFBSSxjQUFjLENBQUMsS0FBSyxLQUFLLFlBQVksQ0FBQztnQkFDNUQsT0FBTyxXQUFXLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQztTQUNuRztRQUNELE9BQU8sV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUMsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtR3JvdXAsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEZJRUxEX0NPTkZJRyB9IGZyb20gXCIuLi9jb25zdC9jb25maWctbmFtZXMuY29uc3RcIjtcclxuaW1wb3J0IHsgQW5ub3RhdGlvblR5cGVzIH0gZnJvbSBcIi4uL2NvcmUvdmFsaWRhdG9yLnN0YXRpY1wiO1xyXG5pbXBvcnQgeyBDb21wYXJlQ29uZmlnIH0gZnJvbSBcIi4uL21vZGVscy9jb25maWcvY29tcGFyZS1jb25maWdcIjtcclxuaW1wb3J0IHsgQXBwbGljYXRpb25VdGlsIH0gZnJvbSAnLi4vdXRpbC9hcHAtdXRpbCc7XHJcbmltcG9ydCB7IGdldENvbmZpZ09iamVjdCB9IGZyb20gXCIuLi91dGlsL2NvbmZpZy1wcm92aWRlclwiO1xyXG5pbXBvcnQgeyBPYmplY3RNYWtlciB9IGZyb20gXCIuLi91dGlsL29iamVjdC1tYWtlclwiO1xyXG5pbXBvcnQgeyBSZWdleFZhbGlkYXRvciB9IGZyb20gXCIuLi91dGlsL3JlZ2V4LXZhbGlkYXRvclwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvbXBhcmVWYWxpZGF0b3IoY29uZmlnTW9kZWw6IENvbXBhcmVDb25maWcpOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBGb3JtR3JvdXApOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcclxuICAgIGxldCBjb25maWcgPSBnZXRDb25maWdPYmplY3QoY29uZmlnTW9kZWwsIGNvbnRyb2wsIEZJRUxEX0NPTkZJRyk7XHJcbiAgICBjb25zdCBjb21wYXJlQ29udHJvbDogYW55ID0gQXBwbGljYXRpb25VdGlsLmdldEZvcm1Db250cm9sKGNvbmZpZy5maWVsZE5hbWUsIGNvbnRyb2wpO1xyXG4gICAgY29uc3QgY29udHJvbFZhbHVlID0gY29udHJvbC52YWx1ZTtcclxuICAgIGNvbnN0IGNvbXBhcmVDb250cm9sVmFsdWUgPSAoY29tcGFyZUNvbnRyb2wpID8gY29tcGFyZUNvbnRyb2wudmFsdWUgOiAnJztcclxuICAgIGlmIChSZWdleFZhbGlkYXRvci5pc05vdEJsYW5rKGNvbnRyb2xWYWx1ZSkgfHwgUmVnZXhWYWxpZGF0b3IuaXNOb3RCbGFuayhjb21wYXJlQ29udHJvbFZhbHVlKSkge1xyXG4gICAgICBpZiAoIShjb21wYXJlQ29udHJvbCAmJiBjb21wYXJlQ29udHJvbC52YWx1ZSA9PT0gY29udHJvbFZhbHVlKSlcclxuICAgICAgICByZXR1cm4gT2JqZWN0TWFrZXIudG9Kc29uKEFubm90YXRpb25UeXBlcy5jb21wYXJlLCBjb25maWcsIFtjb250cm9sVmFsdWUsIGNvbXBhcmVDb250cm9sVmFsdWVdKTtcclxuICAgIH1cclxuICAgIHJldHVybiBPYmplY3RNYWtlci5udWxsKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,23 @@
1
+ import { AnnotationTypes } from "../core/validator.static";
2
+ import { getConfigObject } from "../util/config-provider";
3
+ import { FormProvider } from '../util/form-provider';
4
+ import { ObjectMaker } from "../util/object-maker";
5
+ export function composeValidator(configModel) {
6
+ return (control) => {
7
+ let config = getConfigObject(configModel, control);
8
+ if (FormProvider.ProcessRule(control, config)) {
9
+ if (config.validators) {
10
+ let result = undefined;
11
+ for (let validator of config.validators) {
12
+ result = validator(control);
13
+ if (result)
14
+ break;
15
+ }
16
+ if (result)
17
+ return (config.messageKey || config.message) ? ObjectMaker.toJson(config.messageKey || AnnotationTypes.compose, config, [control.value]) : result;
18
+ }
19
+ }
20
+ return ObjectMaker.null();
21
+ };
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc3JjL2xpYi9mb3JtLXZhbGlkYXRvcnMvcmVhY3RpdmUtZm9ybS12YWxpZGF0b3JzL2NvbXBvc2UudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsV0FBMEI7SUFDekQsT0FBTyxDQUFDLE9BQXdCLEVBQTBCLEVBQUU7UUFDMUQsSUFBSSxNQUFNLEdBQUcsZUFBZSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNuRCxJQUFJLFlBQVksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQzdDLElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRTtnQkFDckIsSUFBSSxNQUFNLEdBQUcsU0FBUyxDQUFDO2dCQUN2QixLQUFLLElBQUksU0FBUyxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUU7b0JBQ3ZDLE1BQU0sR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQzVCLElBQUksTUFBTTt3QkFDUixNQUFNO2lCQUNUO2dCQUNELElBQUksTUFBTTtvQkFDUixPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsSUFBSSxlQUFlLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7YUFDcko7U0FDRjtRQUFDLE9BQU8sV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzlCLENBQUMsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEFubm90YXRpb25UeXBlcyB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRvci5zdGF0aWNcIjtcclxuaW1wb3J0IHsgQ29tcG9zZUNvbmZpZyB9IGZyb20gXCIuLi9tb2RlbHMvY29uZmlnL2NvbXBvc2UtY29uZmlnXCI7XHJcbmltcG9ydCB7IGdldENvbmZpZ09iamVjdCB9IGZyb20gXCIuLi91dGlsL2NvbmZpZy1wcm92aWRlclwiO1xyXG5pbXBvcnQgeyBGb3JtUHJvdmlkZXIgfSBmcm9tICcuLi91dGlsL2Zvcm0tcHJvdmlkZXInO1xyXG5pbXBvcnQgeyBPYmplY3RNYWtlciB9IGZyb20gXCIuLi91dGlsL29iamVjdC1tYWtlclwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvbXBvc2VWYWxpZGF0b3IoY29uZmlnTW9kZWw6IENvbXBvc2VDb25maWcpOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcclxuICAgIGxldCBjb25maWcgPSBnZXRDb25maWdPYmplY3QoY29uZmlnTW9kZWwsIGNvbnRyb2wpO1xyXG4gICAgaWYgKEZvcm1Qcm92aWRlci5Qcm9jZXNzUnVsZShjb250cm9sLCBjb25maWcpKSB7XHJcbiAgICAgIGlmIChjb25maWcudmFsaWRhdG9ycykge1xyXG4gICAgICAgIGxldCByZXN1bHQgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgZm9yIChsZXQgdmFsaWRhdG9yIG9mIGNvbmZpZy52YWxpZGF0b3JzKSB7XHJcbiAgICAgICAgICByZXN1bHQgPSB2YWxpZGF0b3IoY29udHJvbCk7XHJcbiAgICAgICAgICBpZiAocmVzdWx0KVxyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlc3VsdClcclxuICAgICAgICAgIHJldHVybiAoY29uZmlnLm1lc3NhZ2VLZXkgfHwgY29uZmlnLm1lc3NhZ2UpID8gT2JqZWN0TWFrZXIudG9Kc29uKGNvbmZpZy5tZXNzYWdlS2V5IHx8IEFubm90YXRpb25UeXBlcy5jb21wb3NlLCBjb25maWcsIFtjb250cm9sLnZhbHVlXSkgOiByZXN1bHQ7XHJcbiAgICAgIH1cclxuICAgIH0gcmV0dXJuIE9iamVjdE1ha2VyLm51bGwoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,63 @@
1
+ import { ApplicationUtil } from "../util/app-util";
2
+ import { FormProvider } from "../util/form-provider";
3
+ import { ObjectMaker } from "../util/object-maker";
4
+ const DISABLED_EXPRESSION = "disableExpression";
5
+ export function conditionalChangeValidator(conditionalValidationProps) {
6
+ var timeOuts = [];
7
+ var oldValue = undefined;
8
+ var setTimeOut = (control, config) => {
9
+ if (control[DISABLED_EXPRESSION])
10
+ runDisabledExpression(control, config);
11
+ var timeOut = setTimeout(t => {
12
+ clearTimeout(timeOut);
13
+ control.updateValueAndValidity({ onlySelf: true });
14
+ }, 100);
15
+ };
16
+ return (control) => {
17
+ let value = control.value;
18
+ if (control.parent && oldValue != value) {
19
+ const rootFormGroup = ApplicationUtil.getRootFormGroup(control);
20
+ const parentFormGroup = control.parent;
21
+ oldValue = value;
22
+ timeOuts = [];
23
+ let controlName = ApplicationUtil.getFormControlName(control);
24
+ let disabledConfig = { [controlName]: value };
25
+ conditionalValidationProps.forEach(t => {
26
+ let a = control;
27
+ if (t.indexOf("[]") != -1) {
28
+ var splitText = t.split("[]");
29
+ var formArray = rootFormGroup.get([splitText[0]]);
30
+ if (formArray)
31
+ formArray.controls.forEach(formGroup => {
32
+ var abstractControl = formGroup.get(splitText[1]);
33
+ if (abstractControl) {
34
+ setTimeOut(abstractControl, disabledConfig);
35
+ }
36
+ });
37
+ }
38
+ else {
39
+ let splitText = t.split('.');
40
+ if (splitText.length > 1) {
41
+ var control = null;
42
+ t.split('.').forEach((name, index) => { control = (index == 0) ? rootFormGroup.controls[name] : control.controls[name]; });
43
+ }
44
+ else {
45
+ control = parentFormGroup.controls[t];
46
+ }
47
+ if (control) {
48
+ setTimeOut(control, disabledConfig);
49
+ }
50
+ }
51
+ });
52
+ }
53
+ return ObjectMaker.null();
54
+ };
55
+ }
56
+ function runDisabledExpression(control, config) {
57
+ let isDisabled = FormProvider.ProcessRule(control, { conditionalExpression: control[DISABLED_EXPRESSION], disableConfig: config });
58
+ if (isDisabled && !control.disabled)
59
+ control.disable();
60
+ else if (control.disabled)
61
+ control.enable();
62
+ }
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZGl0aW9uYWwtY2hhbmdlLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9zcmMvbGliL2Zvcm0tdmFsaWRhdG9ycy9yZWFjdGl2ZS1mb3JtLXZhbGlkYXRvcnMvY29uZGl0aW9uYWwtY2hhbmdlLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxNQUFNLG1CQUFtQixHQUFXLG1CQUFtQixDQUFDO0FBQ3hELE1BQU0sVUFBVSwwQkFBMEIsQ0FBQywwQkFBb0M7SUFDM0UsSUFBSSxRQUFRLEdBQWEsRUFBRSxDQUFDO0lBQzVCLElBQUksUUFBUSxHQUFXLFNBQVMsQ0FBQztJQUNqQyxJQUFJLFVBQVUsR0FBRyxDQUFDLE9BQXdCLEVBQUUsTUFBVyxFQUFFLEVBQUU7UUFDdkQsSUFBSSxPQUFPLENBQUMsbUJBQW1CLENBQUM7WUFDNUIscUJBQXFCLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzNDLElBQUksT0FBTyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN6QixZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDdEIsT0FBTyxDQUFDLHNCQUFzQixDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7UUFDdEQsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBQ1gsQ0FBQyxDQUFBO0lBQ0QsT0FBTyxDQUFDLE9BQXdCLEVBQTBCLEVBQUU7UUFDeEQsSUFBSSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLE9BQU8sQ0FBQyxNQUFNLElBQUksUUFBUSxJQUFJLEtBQUssRUFBRTtZQUNyQyxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDaEUsTUFBTSxlQUFlLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQztZQUN2QyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQ2pCLFFBQVEsR0FBRyxFQUFFLENBQUM7WUFDZCxJQUFJLFdBQVcsR0FBRyxlQUFlLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUQsSUFBSSxjQUFjLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQzlDLDBCQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDbkMsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDO2dCQUNoQixJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUU7b0JBQ3ZCLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQzlCLElBQUksU0FBUyxHQUFjLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUM3RCxJQUFJLFNBQVM7d0JBQ1QsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7NEJBQ25DLElBQUksZUFBZSxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7NEJBQ2xELElBQUksZUFBZSxFQUFFO2dDQUNqQixVQUFVLENBQUMsZUFBZSxFQUFFLGNBQWMsQ0FBQyxDQUFDOzZCQUMvQzt3QkFDTCxDQUFDLENBQUMsQ0FBQTtpQkFDVDtxQkFBTTtvQkFFSCxJQUFJLFNBQVMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUM3QixJQUFJLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO3dCQUN0QixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUM7d0JBQ25CLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsT0FBTyxHQUFHLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7cUJBQzdIO3lCQUNJO3dCQUNELE9BQU8sR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUN6QztvQkFFRCxJQUFJLE9BQU8sRUFBRTt3QkFFVCxVQUFVLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO3FCQUN2QztpQkFDSjtZQUNMLENBQUMsQ0FBQyxDQUFBO1NBQ0w7UUFDRCxPQUFPLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM5QixDQUFDLENBQUE7QUFDTCxDQUFDO0FBQ0QsU0FBUyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsTUFBTTtJQUMxQyxJQUFJLFVBQVUsR0FBRyxZQUFZLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxFQUFFLHFCQUFxQixFQUFFLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ25JLElBQUksVUFBVSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVE7UUFDL0IsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2pCLElBQUksT0FBTyxDQUFDLFFBQVE7UUFDckIsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO0FBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1BcnJheSwgVmFsaWRhdG9yRm4gfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgQXBwbGljYXRpb25VdGlsIH0gZnJvbSBcIi4uL3V0aWwvYXBwLXV0aWxcIjtcclxuaW1wb3J0IHsgRm9ybVByb3ZpZGVyIH0gZnJvbSBcIi4uL3V0aWwvZm9ybS1wcm92aWRlclwiO1xyXG5pbXBvcnQgeyBPYmplY3RNYWtlciB9IGZyb20gXCIuLi91dGlsL29iamVjdC1tYWtlclwiO1xyXG5cclxuY29uc3QgRElTQUJMRURfRVhQUkVTU0lPTjogc3RyaW5nID0gXCJkaXNhYmxlRXhwcmVzc2lvblwiO1xyXG5leHBvcnQgZnVuY3Rpb24gY29uZGl0aW9uYWxDaGFuZ2VWYWxpZGF0b3IoY29uZGl0aW9uYWxWYWxpZGF0aW9uUHJvcHM6IHN0cmluZ1tdKTogVmFsaWRhdG9yRm4ge1xyXG4gICAgdmFyIHRpbWVPdXRzOiBudW1iZXJbXSA9IFtdO1xyXG4gICAgdmFyIG9sZFZhbHVlOiBzdHJpbmcgPSB1bmRlZmluZWQ7XHJcbiAgICB2YXIgc2V0VGltZU91dCA9IChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wsIGNvbmZpZzogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGNvbnRyb2xbRElTQUJMRURfRVhQUkVTU0lPTl0pXHJcbiAgICAgICAgICAgIHJ1bkRpc2FibGVkRXhwcmVzc2lvbihjb250cm9sLCBjb25maWcpO1xyXG4gICAgICAgIHZhciB0aW1lT3V0ID0gc2V0VGltZW91dCh0ID0+IHtcclxuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVPdXQpO1xyXG4gICAgICAgICAgICBjb250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoeyBvbmx5U2VsZjogdHJ1ZSB9KVxyXG4gICAgICAgIH0sIDEwMClcclxuICAgIH1cclxuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9PiB7XHJcbiAgICAgICAgbGV0IHZhbHVlID0gY29udHJvbC52YWx1ZTtcclxuICAgICAgICBpZiAoY29udHJvbC5wYXJlbnQgJiYgb2xkVmFsdWUgIT0gdmFsdWUpIHtcclxuICAgICAgICAgICAgY29uc3Qgcm9vdEZvcm1Hcm91cCA9IEFwcGxpY2F0aW9uVXRpbC5nZXRSb290Rm9ybUdyb3VwKGNvbnRyb2wpO1xyXG4gICAgICAgICAgICBjb25zdCBwYXJlbnRGb3JtR3JvdXAgPSBjb250cm9sLnBhcmVudDtcclxuICAgICAgICAgICAgb2xkVmFsdWUgPSB2YWx1ZTtcclxuICAgICAgICAgICAgdGltZU91dHMgPSBbXTtcclxuICAgICAgICAgICAgbGV0IGNvbnRyb2xOYW1lID0gQXBwbGljYXRpb25VdGlsLmdldEZvcm1Db250cm9sTmFtZShjb250cm9sKTtcclxuICAgICAgICAgICAgbGV0IGRpc2FibGVkQ29uZmlnID0geyBbY29udHJvbE5hbWVdOiB2YWx1ZSB9O1xyXG4gICAgICAgICAgICBjb25kaXRpb25hbFZhbGlkYXRpb25Qcm9wcy5mb3JFYWNoKHQgPT4ge1xyXG4gICAgICAgICAgICAgICAgbGV0IGEgPSBjb250cm9sO1xyXG4gICAgICAgICAgICAgICAgaWYgKHQuaW5kZXhPZihcIltdXCIpICE9IC0xKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNwbGl0VGV4dCA9IHQuc3BsaXQoXCJbXVwiKTtcclxuICAgICAgICAgICAgICAgICAgICB2YXIgZm9ybUFycmF5ID0gPEZvcm1BcnJheT5yb290Rm9ybUdyb3VwLmdldChbc3BsaXRUZXh0WzBdXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZvcm1BcnJheSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUFycmF5LmNvbnRyb2xzLmZvckVhY2goZm9ybUdyb3VwID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBhYnN0cmFjdENvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KHNwbGl0VGV4dFsxXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYWJzdHJhY3RDb250cm9sKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZU91dChhYnN0cmFjdENvbnRyb2wsIGRpc2FibGVkQ29uZmlnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGxldCBzcGxpdFRleHQgPSB0LnNwbGl0KCcuJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNwbGl0VGV4dC5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjb250cm9sID0gbnVsbDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdC5zcGxpdCgnLicpLmZvckVhY2goKG5hbWUsIGluZGV4KSA9PiB7IGNvbnRyb2wgPSAoaW5kZXggPT0gMCkgPyByb290Rm9ybUdyb3VwLmNvbnRyb2xzW25hbWVdIDogY29udHJvbC5jb250cm9sc1tuYW1lXTsgfSlcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2wgPSBwYXJlbnRGb3JtR3JvdXAuY29udHJvbHNbdF07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBpZiAoY29udHJvbCkge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZU91dChjb250cm9sLCBkaXNhYmxlZENvbmZpZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gT2JqZWN0TWFrZXIubnVsbCgpO1xyXG4gICAgfVxyXG59XHJcbmZ1bmN0aW9uIHJ1bkRpc2FibGVkRXhwcmVzc2lvbihjb250cm9sLCBjb25maWcpIHtcclxuICAgIGxldCBpc0Rpc2FibGVkID0gRm9ybVByb3ZpZGVyLlByb2Nlc3NSdWxlKGNvbnRyb2wsIHsgY29uZGl0aW9uYWxFeHByZXNzaW9uOiBjb250cm9sW0RJU0FCTEVEX0VYUFJFU1NJT05dLCBkaXNhYmxlQ29uZmlnOiBjb25maWcgfSk7XHJcbiAgICBpZiAoaXNEaXNhYmxlZCAmJiAhY29udHJvbC5kaXNhYmxlZClcclxuICAgICAgICBjb250cm9sLmRpc2FibGUoKTtcclxuICAgIGVsc2UgaWYgKGNvbnRyb2wuZGlzYWJsZWQpXHJcbiAgICAgICAgY29udHJvbC5lbmFibGUoKTtcclxufVxyXG4iXX0=
@@ -0,0 +1,15 @@
1
+ import { AnnotationTypes } from "../core/validator.static";
2
+ import { getConfigObject } from "../util/config-provider";
3
+ import { ObjectMaker } from "../util/object-maker";
4
+ import { ValidatorValueChecker } from "../util/validator-value-checker";
5
+ export function containsValidator(configModel) {
6
+ return (control) => {
7
+ let config = getConfigObject(configModel, control);
8
+ if (ValidatorValueChecker.pass(control, config)) {
9
+ if (control.value.indexOf(config.value) == -1)
10
+ return ObjectMaker.toJson(AnnotationTypes.contains, config, [control.value, config.value]);
11
+ }
12
+ return ObjectMaker.null();
13
+ };
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbnMudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3JlYWN0aXZlLWZvcm0tdmFsaWRhdG9ycy9jb250YWlucy52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFeEUsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFdBQTBCO0lBQzFELE9BQU8sQ0FBQyxPQUF3QixFQUEwQixFQUFFO1FBQzFELElBQUksTUFBTSxHQUFHLGVBQWUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkQsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQy9DLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDM0MsT0FBTyxXQUFXLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUM5RjtRQUNELE9BQU8sV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUMsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEFubm90YXRpb25UeXBlcyB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRvci5zdGF0aWNcIjtcclxuaW1wb3J0IHsgRGVmYXVsdENvbmZpZyB9IGZyb20gXCIuLi9tb2RlbHMvY29uZmlnL2RlZmF1bHQtY29uZmlnXCI7XHJcbmltcG9ydCB7IGdldENvbmZpZ09iamVjdCB9IGZyb20gXCIuLi91dGlsL2NvbmZpZy1wcm92aWRlclwiO1xyXG5pbXBvcnQgeyBPYmplY3RNYWtlciB9IGZyb20gXCIuLi91dGlsL29iamVjdC1tYWtlclwiO1xyXG5pbXBvcnQgeyBWYWxpZGF0b3JWYWx1ZUNoZWNrZXIgfSBmcm9tIFwiLi4vdXRpbC92YWxpZGF0b3ItdmFsdWUtY2hlY2tlclwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvbnRhaW5zVmFsaWRhdG9yKGNvbmZpZ01vZGVsOiBEZWZhdWx0Q29uZmlnKTogVmFsaWRhdG9yRm4ge1xyXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9PiB7XHJcbiAgICBsZXQgY29uZmlnID0gZ2V0Q29uZmlnT2JqZWN0KGNvbmZpZ01vZGVsLCBjb250cm9sKTtcclxuICAgIGlmIChWYWxpZGF0b3JWYWx1ZUNoZWNrZXIucGFzcyhjb250cm9sLCBjb25maWcpKSB7XHJcbiAgICAgIGlmIChjb250cm9sLnZhbHVlLmluZGV4T2YoY29uZmlnLnZhbHVlKSA9PSAtMSlcclxuICAgICAgICByZXR1cm4gT2JqZWN0TWFrZXIudG9Kc29uKEFubm90YXRpb25UeXBlcy5jb250YWlucywgY29uZmlnLCBbY29udHJvbC52YWx1ZSwgY29uZmlnLnZhbHVlXSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gT2JqZWN0TWFrZXIubnVsbCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,48 @@
1
+ import { calculate } from '../algorithm/luhn-algorithm';
2
+ import { AnnotationTypes } from "../core/validator.static";
3
+ import { checkLength } from '../util/check-length';
4
+ import { getConfigObject } from "../util/config-provider";
5
+ import { FormProvider } from '../util/form-provider';
6
+ import { ObjectMaker } from "../util/object-maker";
7
+ import { RegexValidator } from "../util/regex-validator";
8
+ export function creditCardValidator(configModel) {
9
+ let cardDigits = {
10
+ AmericanExpress: [15],
11
+ DinersClub: [14, 16, 19],
12
+ Discover: [16, 19],
13
+ JCB: [16, 19],
14
+ Maestro: [12, 16, 19],
15
+ MasterCard: [16],
16
+ Visa: [13, 16, 19]
17
+ };
18
+ function validate(creditCardNumber) {
19
+ var digit = parseInt(creditCardNumber.substring(creditCardNumber.length - 1, creditCardNumber.length));
20
+ return calculate(creditCardNumber.substring(0, creditCardNumber.length - 1)) == parseInt(String(digit)) ? !0 : !1;
21
+ }
22
+ function getCardProviderName(cardNumber) {
23
+ var cardProviderName = "";
24
+ return /^(5018|5020|5038|5612|5893|6304|6759|6761|6762|6763|0604|6390)\d+$/.test(cardNumber) ? cardProviderName = "Maestro" : /^5[1-5]/.test(cardNumber) ? cardProviderName = "MasterCard" : /^4/.test(cardNumber) ? cardProviderName = "Visa" : /^3[47]/.test(cardNumber) ? cardProviderName = "AmericanExpress" : /^(?:2131|1800|35)/.test(cardNumber) ? cardProviderName = "JCB" : /^3(?:0[0-5]|[68])/.test(cardNumber) ? cardProviderName = "DinersClub" : /^6(?:011|5)/.test(cardNumber) && (cardProviderName = "Discover"), cardProviderName;
25
+ }
26
+ return (control) => {
27
+ const controlValue = control.value;
28
+ let config = getConfigObject(configModel, control);
29
+ const parentObject = (control.parent) ? control.parent.value : undefined;
30
+ if (FormProvider.ProcessRule(control, config)) {
31
+ if (RegexValidator.isNotBlank(controlValue)) {
32
+ let isValid = false;
33
+ let cardTypes = config.fieldName && parentObject[config.fieldName] ? [parentObject[config.fieldName]] : config.creditCardTypes;
34
+ let cardType = '';
35
+ for (let creditCardType of cardTypes) {
36
+ isValid = checkLength(controlValue.length, cardDigits[creditCardType]) && getCardProviderName(controlValue) == creditCardType && validate(controlValue);
37
+ cardType = creditCardType;
38
+ if (isValid)
39
+ break;
40
+ }
41
+ if (!isValid)
42
+ return ObjectMaker.toJson(AnnotationTypes.creditCard, config, [controlValue, cardType]);
43
+ }
44
+ }
45
+ return ObjectMaker.null();
46
+ };
47
+ }
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGl0LWNhcmQudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3JlYWN0aXZlLWZvcm0tdmFsaWRhdG9ycy9jcmVkaXQtY2FyZC52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3pELE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxXQUE2QjtJQUM3RCxJQUFJLFVBQVUsR0FBZ0M7UUFDMUMsZUFBZSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ3JCLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQ3hCLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFDbEIsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUNiLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQ3JCLFVBQVUsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNoQixJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztLQUNyQixDQUFBO0lBQ0QsU0FBUyxRQUFRLENBQUMsZ0JBQXdCO1FBQ3RDLElBQUksS0FBSyxHQUFHLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLE9BQU8sU0FBUyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDckgsQ0FBQztJQUVELFNBQVMsbUJBQW1CLENBQUMsVUFBa0I7UUFDM0MsSUFBSSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDMUIsT0FBTyxvRUFBb0UsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixHQUFHLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxVQUFVLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQztJQUN2aEIsQ0FBQztJQUVELE9BQU8sQ0FBQyxPQUF3QixFQUEwQixFQUFFO1FBQ3hELE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDbkMsSUFBSSxNQUFNLEdBQUcsZUFBZSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNuRCxNQUFNLFlBQVksR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUN6RSxJQUFJLFlBQVksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQzNDLElBQUksY0FBYyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsRUFBRTtnQkFDekMsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUNwQixJQUFJLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxJQUFJLFlBQVksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFBO2dCQUM5SCxJQUFJLFFBQVEsR0FBVyxFQUFFLENBQUM7Z0JBQzFCLEtBQUssSUFBSSxjQUFjLElBQUksU0FBUyxFQUFFO29CQUNsQyxPQUFPLEdBQUcsV0FBVyxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksbUJBQW1CLENBQUMsWUFBWSxDQUFDLElBQUksY0FBYyxJQUFJLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztvQkFDeEosUUFBUSxHQUFHLGNBQWMsQ0FBQztvQkFDMUIsSUFBSSxPQUFPO3dCQUNQLE1BQU07aUJBQ2I7Z0JBQ0QsSUFBSSxDQUFDLE9BQU87b0JBQ1IsT0FBTyxXQUFXLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUE7YUFDOUY7U0FDSjtRQUNELE9BQU8sV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBRTlCLENBQUMsQ0FBQTtBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IGNhbGN1bGF0ZSB9IGZyb20gJy4uL2FsZ29yaXRobS9sdWhuLWFsZ29yaXRobSc7XHJcbmltcG9ydCB7IEFubm90YXRpb25UeXBlcyB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRvci5zdGF0aWNcIjtcclxuaW1wb3J0IHsgQ3JlZGl0Q2FyZENvbmZpZyB9IGZyb20gXCIuLi9tb2RlbHMvY29uZmlnL2NyZWRpdC1jYXJkLWNvbmZpZ1wiO1xyXG5pbXBvcnQgeyBjaGVja0xlbmd0aCB9IGZyb20gJy4uL3V0aWwvY2hlY2stbGVuZ3RoJztcclxuaW1wb3J0IHsgZ2V0Q29uZmlnT2JqZWN0IH0gZnJvbSBcIi4uL3V0aWwvY29uZmlnLXByb3ZpZGVyXCI7XHJcbmltcG9ydCB7IEZvcm1Qcm92aWRlciB9IGZyb20gJy4uL3V0aWwvZm9ybS1wcm92aWRlcic7XHJcbmltcG9ydCB7IE9iamVjdE1ha2VyIH0gZnJvbSBcIi4uL3V0aWwvb2JqZWN0LW1ha2VyXCI7XHJcbmltcG9ydCB7IFJlZ2V4VmFsaWRhdG9yIH0gZnJvbSBcIi4uL3V0aWwvcmVnZXgtdmFsaWRhdG9yXCI7XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWRpdENhcmRWYWxpZGF0b3IoY29uZmlnTW9kZWw6IENyZWRpdENhcmRDb25maWcpOiBWYWxpZGF0b3JGbiB7XHJcbiAgICBsZXQgY2FyZERpZ2l0czogeyBba2V5OiBzdHJpbmddOiBudW1iZXJbXSB9ID0ge1xyXG4gICAgICAgIEFtZXJpY2FuRXhwcmVzczogWzE1XSxcclxuICAgICAgICBEaW5lcnNDbHViOiBbMTQsIDE2LCAxOV0sXHJcbiAgICAgICAgRGlzY292ZXI6IFsxNiwgMTldLFxyXG4gICAgICAgIEpDQjogWzE2LCAxOV0sXHJcbiAgICAgICAgTWFlc3RybzogWzEyLCAxNiwgMTldLFxyXG4gICAgICAgIE1hc3RlckNhcmQ6IFsxNl0sXHJcbiAgICAgICAgVmlzYTogWzEzLCAxNiwgMTldXHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiB2YWxpZGF0ZShjcmVkaXRDYXJkTnVtYmVyOiBzdHJpbmcpIHtcclxuICAgICAgICB2YXIgZGlnaXQgPSBwYXJzZUludChjcmVkaXRDYXJkTnVtYmVyLnN1YnN0cmluZyhjcmVkaXRDYXJkTnVtYmVyLmxlbmd0aCAtIDEsIGNyZWRpdENhcmROdW1iZXIubGVuZ3RoKSk7XHJcbiAgICAgICAgcmV0dXJuIGNhbGN1bGF0ZShjcmVkaXRDYXJkTnVtYmVyLnN1YnN0cmluZygwLCBjcmVkaXRDYXJkTnVtYmVyLmxlbmd0aCAtIDEpKSA9PSBwYXJzZUludChTdHJpbmcoZGlnaXQpKSA/ICEwIDogITFcclxuICAgIH1cclxuXHJcbiAgICBmdW5jdGlvbiBnZXRDYXJkUHJvdmlkZXJOYW1lKGNhcmROdW1iZXI6IHN0cmluZykge1xyXG4gICAgICAgIHZhciBjYXJkUHJvdmlkZXJOYW1lID0gXCJcIjtcclxuICAgICAgICByZXR1cm4gL14oNTAxOHw1MDIwfDUwMzh8NTYxMnw1ODkzfDYzMDR8Njc1OXw2NzYxfDY3NjJ8Njc2M3wwNjA0fDYzOTApXFxkKyQvLnRlc3QoY2FyZE51bWJlcikgPyBjYXJkUHJvdmlkZXJOYW1lID0gXCJNYWVzdHJvXCIgOiAvXjVbMS01XS8udGVzdChjYXJkTnVtYmVyKSA/IGNhcmRQcm92aWRlck5hbWUgPSBcIk1hc3RlckNhcmRcIiA6IC9eNC8udGVzdChjYXJkTnVtYmVyKSA/IGNhcmRQcm92aWRlck5hbWUgPSBcIlZpc2FcIiA6IC9eM1s0N10vLnRlc3QoY2FyZE51bWJlcikgPyBjYXJkUHJvdmlkZXJOYW1lID0gXCJBbWVyaWNhbkV4cHJlc3NcIiA6IC9eKD86MjEzMXwxODAwfDM1KS8udGVzdChjYXJkTnVtYmVyKSA/IGNhcmRQcm92aWRlck5hbWUgPSBcIkpDQlwiIDogL14zKD86MFswLTVdfFs2OF0pLy50ZXN0KGNhcmROdW1iZXIpID8gY2FyZFByb3ZpZGVyTmFtZSA9IFwiRGluZXJzQ2x1YlwiIDogL142KD86MDExfDUpLy50ZXN0KGNhcmROdW1iZXIpICYmIChjYXJkUHJvdmlkZXJOYW1lID0gXCJEaXNjb3ZlclwiKSwgY2FyZFByb3ZpZGVyTmFtZTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPT4ge1xyXG4gICAgICAgIGNvbnN0IGNvbnRyb2xWYWx1ZSA9IGNvbnRyb2wudmFsdWU7XHJcbiAgICAgICAgbGV0IGNvbmZpZyA9IGdldENvbmZpZ09iamVjdChjb25maWdNb2RlbCwgY29udHJvbCk7XHJcbiAgICAgICAgY29uc3QgcGFyZW50T2JqZWN0ID0gKGNvbnRyb2wucGFyZW50KSA/IGNvbnRyb2wucGFyZW50LnZhbHVlIDogdW5kZWZpbmVkO1xyXG4gICAgICAgIGlmIChGb3JtUHJvdmlkZXIuUHJvY2Vzc1J1bGUoY29udHJvbCwgY29uZmlnKSkge1xyXG4gICAgICAgICAgICBpZiAoUmVnZXhWYWxpZGF0b3IuaXNOb3RCbGFuayhjb250cm9sVmFsdWUpKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgaXNWYWxpZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IGNhcmRUeXBlcyA9IGNvbmZpZy5maWVsZE5hbWUgJiYgcGFyZW50T2JqZWN0W2NvbmZpZy5maWVsZE5hbWVdID8gW3BhcmVudE9iamVjdFtjb25maWcuZmllbGROYW1lXV0gOiBjb25maWcuY3JlZGl0Q2FyZFR5cGVzXHJcbiAgICAgICAgICAgICAgICBsZXQgY2FyZFR5cGU6IHN0cmluZyA9ICcnO1xyXG4gICAgICAgICAgICAgICAgZm9yIChsZXQgY3JlZGl0Q2FyZFR5cGUgb2YgY2FyZFR5cGVzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaXNWYWxpZCA9IGNoZWNrTGVuZ3RoKGNvbnRyb2xWYWx1ZS5sZW5ndGgsIGNhcmREaWdpdHNbY3JlZGl0Q2FyZFR5cGVdKSAmJiBnZXRDYXJkUHJvdmlkZXJOYW1lKGNvbnRyb2xWYWx1ZSkgPT0gY3JlZGl0Q2FyZFR5cGUgJiYgdmFsaWRhdGUoY29udHJvbFZhbHVlKTtcclxuICAgICAgICAgICAgICAgICAgICBjYXJkVHlwZSA9IGNyZWRpdENhcmRUeXBlO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChpc1ZhbGlkKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmICghaXNWYWxpZClcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gT2JqZWN0TWFrZXIudG9Kc29uKEFubm90YXRpb25UeXBlcy5jcmVkaXRDYXJkLCBjb25maWcsIFtjb250cm9sVmFsdWUsIGNhcmRUeXBlXSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gT2JqZWN0TWFrZXIubnVsbCgpO1xyXG5cclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,38 @@
1
+ import { AnnotationTypes } from "../core/validator.static";
2
+ import { getConfigObject } from "../util/config-provider";
3
+ import { ObjectMaker } from "../util/object-maker";
4
+ import { RegExRule } from "../util/regex-rules";
5
+ import { RegexValidator } from "../util/regex-validator";
6
+ import { ValidatorValueChecker } from "../util/validator-value-checker";
7
+ export function cusipValidator(configModel) {
8
+ return (control) => {
9
+ let config = getConfigObject(configModel, control);
10
+ if (ValidatorValueChecker.pass(control, config)) {
11
+ var controlValue = control.value.toUpperCase();
12
+ let isValid = RegexValidator.isValid(controlValue, RegExRule.cusip);
13
+ if (isValid) {
14
+ let numericValues = controlValue.split("").map((value) => {
15
+ var charCode = value.charCodeAt(0);
16
+ return charCode >= "A".charCodeAt(0) && charCode <= "Z".charCodeAt(0) ? charCode - "A".charCodeAt(0) + 10 : value;
17
+ });
18
+ let totalCount = 0;
19
+ for (var i = 0; i < numericValues.length - 1; i++) {
20
+ var numericValue = parseInt(numericValues[i], 10);
21
+ if (i % 2 !== 0) {
22
+ numericValue *= 2;
23
+ }
24
+ if (numericValue > 9) {
25
+ numericValue -= 9;
26
+ }
27
+ totalCount += numericValue;
28
+ }
29
+ totalCount = (10 - (totalCount % 10)) % 10;
30
+ isValid = totalCount == numericValues[numericValues.length - 1];
31
+ }
32
+ if (!isValid)
33
+ return ObjectMaker.toJson(AnnotationTypes.cusip, config, [control.value]);
34
+ }
35
+ return ObjectMaker.null();
36
+ };
37
+ }
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzaXAudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3JlYWN0aXZlLWZvcm0tdmFsaWRhdG9ycy9jdXNpcC52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUd4RSxNQUFNLFVBQVUsY0FBYyxDQUFDLFdBQXVCO0lBQ3BELE9BQU8sQ0FBQyxPQUF3QixFQUEwQixFQUFFO1FBQzFELElBQUksTUFBTSxHQUFHLGVBQWUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkQsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQy9DLElBQUksWUFBWSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDL0MsSUFBSSxPQUFPLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ25FLElBQUksT0FBTyxFQUFFO2dCQUVYLElBQUksYUFBYSxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7b0JBQ3ZELElBQUksUUFBUSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ25DLE9BQU8sUUFBUSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksUUFBUSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO2dCQUNuSCxDQUFDLENBQUMsQ0FBQztnQkFDSCxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7Z0JBQ25CLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtvQkFDakQsSUFBSSxZQUFZLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDbEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTt3QkFDZixZQUFZLElBQUksQ0FBQyxDQUFDO3FCQUNuQjtvQkFDRCxJQUFJLFlBQVksR0FBRyxDQUFDLEVBQUU7d0JBQ3BCLFlBQVksSUFBSSxDQUFDLENBQUM7cUJBQ25CO29CQUNELFVBQVUsSUFBSSxZQUFZLENBQUM7aUJBQzVCO2dCQUVELFVBQVUsR0FBRyxDQUFDLEVBQUUsR0FBRyxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDM0MsT0FBTyxHQUFHLFVBQVUsSUFBSSxhQUFhLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQzthQUNqRTtZQUNELElBQUksQ0FBQyxPQUFPO2dCQUNWLE9BQU8sV0FBVyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQzdFO1FBQ0QsT0FBTyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgQW5ub3RhdGlvblR5cGVzIH0gZnJvbSBcIi4uL2NvcmUvdmFsaWRhdG9yLnN0YXRpY1wiO1xyXG5pbXBvcnQgeyBCYXNlQ29uZmlnIH0gZnJvbSBcIi4uL21vZGVscy9jb25maWcvYmFzZS1jb25maWdcIjtcclxuaW1wb3J0IHsgZ2V0Q29uZmlnT2JqZWN0IH0gZnJvbSBcIi4uL3V0aWwvY29uZmlnLXByb3ZpZGVyXCI7XHJcbmltcG9ydCB7IE9iamVjdE1ha2VyIH0gZnJvbSBcIi4uL3V0aWwvb2JqZWN0LW1ha2VyXCI7XHJcbmltcG9ydCB7IFJlZ0V4UnVsZSB9IGZyb20gXCIuLi91dGlsL3JlZ2V4LXJ1bGVzXCI7XHJcbmltcG9ydCB7IFJlZ2V4VmFsaWRhdG9yIH0gZnJvbSBcIi4uL3V0aWwvcmVnZXgtdmFsaWRhdG9yXCI7XHJcbmltcG9ydCB7IFZhbGlkYXRvclZhbHVlQ2hlY2tlciB9IGZyb20gXCIuLi91dGlsL3ZhbGlkYXRvci12YWx1ZS1jaGVja2VyXCI7XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGN1c2lwVmFsaWRhdG9yKGNvbmZpZ01vZGVsOiBCYXNlQ29uZmlnKTogVmFsaWRhdG9yRm4ge1xyXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9PiB7XHJcbiAgICBsZXQgY29uZmlnID0gZ2V0Q29uZmlnT2JqZWN0KGNvbmZpZ01vZGVsLCBjb250cm9sKTtcclxuICAgIGlmIChWYWxpZGF0b3JWYWx1ZUNoZWNrZXIucGFzcyhjb250cm9sLCBjb25maWcpKSB7XHJcbiAgICAgIHZhciBjb250cm9sVmFsdWUgPSBjb250cm9sLnZhbHVlLnRvVXBwZXJDYXNlKCk7XHJcbiAgICAgIGxldCBpc1ZhbGlkID0gUmVnZXhWYWxpZGF0b3IuaXNWYWxpZChjb250cm9sVmFsdWUsIFJlZ0V4UnVsZS5jdXNpcClcclxuICAgICAgaWYgKGlzVmFsaWQpIHtcclxuXHJcbiAgICAgICAgbGV0IG51bWVyaWNWYWx1ZXMgPSBjb250cm9sVmFsdWUuc3BsaXQoXCJcIikubWFwKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgdmFyIGNoYXJDb2RlID0gdmFsdWUuY2hhckNvZGVBdCgwKTtcclxuICAgICAgICAgIHJldHVybiBjaGFyQ29kZSA+PSBcIkFcIi5jaGFyQ29kZUF0KDApICYmIGNoYXJDb2RlIDw9IFwiWlwiLmNoYXJDb2RlQXQoMCkgPyBjaGFyQ29kZSAtIFwiQVwiLmNoYXJDb2RlQXQoMCkgKyAxMCA6IHZhbHVlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgbGV0IHRvdGFsQ291bnQgPSAwO1xyXG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbnVtZXJpY1ZhbHVlcy5sZW5ndGggLSAxOyBpKyspIHtcclxuICAgICAgICAgIHZhciBudW1lcmljVmFsdWUgPSBwYXJzZUludChudW1lcmljVmFsdWVzW2ldLCAxMCk7XHJcbiAgICAgICAgICBpZiAoaSAlIDIgIT09IDApIHtcclxuICAgICAgICAgICAgbnVtZXJpY1ZhbHVlICo9IDI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAobnVtZXJpY1ZhbHVlID4gOSkge1xyXG4gICAgICAgICAgICBudW1lcmljVmFsdWUgLT0gOTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRvdGFsQ291bnQgKz0gbnVtZXJpY1ZhbHVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdG90YWxDb3VudCA9ICgxMCAtICh0b3RhbENvdW50ICUgMTApKSAlIDEwO1xyXG4gICAgICAgIGlzVmFsaWQgPSB0b3RhbENvdW50ID09IG51bWVyaWNWYWx1ZXNbbnVtZXJpY1ZhbHVlcy5sZW5ndGggLSAxXTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoIWlzVmFsaWQpXHJcbiAgICAgICAgcmV0dXJuIE9iamVjdE1ha2VyLnRvSnNvbihBbm5vdGF0aW9uVHlwZXMuY3VzaXAsIGNvbmZpZywgW2NvbnRyb2wudmFsdWVdKTtcclxuICAgIH1cclxuICAgIHJldHVybiBPYmplY3RNYWtlci5udWxsKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,23 @@
1
+ import { ApplicationUtil } from '../util/app-util';
2
+ import { getConfigObject } from "../util/config-provider";
3
+ import { FormProvider } from '../util/form-provider';
4
+ import { ObjectMaker } from "../util/object-maker";
5
+ export function customValidator(configModel) {
6
+ return (control) => {
7
+ let config = getConfigObject(configModel, control);
8
+ if (FormProvider.ProcessRule(control, config)) {
9
+ const formGroupValue = ApplicationUtil.getParentObjectValue(control);
10
+ const parentObject = (control.parent) ? control.parent.value : undefined;
11
+ let result = null;
12
+ for (let rule of config.customRules) {
13
+ result = rule(formGroupValue, parentObject, config.additionalValue);
14
+ if (result)
15
+ break;
16
+ }
17
+ if (result)
18
+ return result;
19
+ }
20
+ return ObjectMaker.null();
21
+ };
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9zcmMvbGliL2Zvcm0tdmFsaWRhdG9ycy9yZWFjdGl2ZS1mb3JtLXZhbGlkYXRvcnMvY3VzdG9tLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHbkQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxXQUF5QjtJQUN2RCxPQUFPLENBQUMsT0FBd0IsRUFBMEIsRUFBRTtRQUMxRCxJQUFJLE1BQU0sR0FBRyxlQUFlLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ25ELElBQUksWUFBWSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDN0MsTUFBTSxjQUFjLEdBQUcsZUFBZSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JFLE1BQU0sWUFBWSxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ3pFLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQztZQUNsQixLQUFLLElBQUksSUFBSSxJQUFJLE1BQU0sQ0FBQyxXQUFXLEVBQUU7Z0JBQ25DLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLFlBQVksRUFBRSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQ3BFLElBQUksTUFBTTtvQkFDUixNQUFNO2FBQ1Q7WUFDRCxJQUFJLE1BQU07Z0JBQ1IsT0FBTyxNQUFNLENBQUM7U0FDakI7UUFBQyxPQUFPLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM5QixDQUFDLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0b3JGbiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBDdXN0b21Db25maWcgfSBmcm9tIFwiLi4vbW9kZWxzL2NvbmZpZy9jdXN0b20tY29uZmlnXCI7XHJcbmltcG9ydCB7IEFwcGxpY2F0aW9uVXRpbCB9IGZyb20gJy4uL3V0aWwvYXBwLXV0aWwnO1xyXG5pbXBvcnQgeyBnZXRDb25maWdPYmplY3QgfSBmcm9tIFwiLi4vdXRpbC9jb25maWctcHJvdmlkZXJcIjtcclxuaW1wb3J0IHsgRm9ybVByb3ZpZGVyIH0gZnJvbSAnLi4vdXRpbC9mb3JtLXByb3ZpZGVyJztcclxuaW1wb3J0IHsgT2JqZWN0TWFrZXIgfSBmcm9tIFwiLi4vdXRpbC9vYmplY3QtbWFrZXJcIjtcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3VzdG9tVmFsaWRhdG9yKGNvbmZpZ01vZGVsOiBDdXN0b21Db25maWcpOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcclxuICAgIGxldCBjb25maWcgPSBnZXRDb25maWdPYmplY3QoY29uZmlnTW9kZWwsIGNvbnRyb2wpO1xyXG4gICAgaWYgKEZvcm1Qcm92aWRlci5Qcm9jZXNzUnVsZShjb250cm9sLCBjb25maWcpKSB7XHJcbiAgICAgIGNvbnN0IGZvcm1Hcm91cFZhbHVlID0gQXBwbGljYXRpb25VdGlsLmdldFBhcmVudE9iamVjdFZhbHVlKGNvbnRyb2wpO1xyXG4gICAgICBjb25zdCBwYXJlbnRPYmplY3QgPSAoY29udHJvbC5wYXJlbnQpID8gY29udHJvbC5wYXJlbnQudmFsdWUgOiB1bmRlZmluZWQ7XHJcbiAgICAgIGxldCByZXN1bHQgPSBudWxsO1xyXG4gICAgICBmb3IgKGxldCBydWxlIG9mIGNvbmZpZy5jdXN0b21SdWxlcykge1xyXG4gICAgICAgIHJlc3VsdCA9IHJ1bGUoZm9ybUdyb3VwVmFsdWUsIHBhcmVudE9iamVjdCwgY29uZmlnLmFkZGl0aW9uYWxWYWx1ZSk7XHJcbiAgICAgICAgaWYgKHJlc3VsdClcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChyZXN1bHQpXHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH0gcmV0dXJuIE9iamVjdE1ha2VyLm51bGwoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,9 @@
1
+ import { AnnotationTypes } from "../core/validator.static";
2
+ import { RegExRule } from "../util/regex-rules";
3
+ import { regexValidation } from "../validators-function/regex-validation.function";
4
+ export function dataUriValidator(configModel) {
5
+ return (control) => {
6
+ return regexValidation(configModel, control, RegExRule.dataUri, AnnotationTypes.dataUri);
7
+ };
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YVVyaS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc3JjL2xpYi9mb3JtLXZhbGlkYXRvcnMvcmVhY3RpdmUtZm9ybS12YWxpZGF0b3JzL2RhdGFVcmkudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBR25GLE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxXQUF1QjtJQUN0RCxPQUFPLENBQUMsT0FBd0IsRUFBMEIsRUFBRTtRQUMxRCxPQUFPLGVBQWUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQzFGLENBQUMsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEFubm90YXRpb25UeXBlcyB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRvci5zdGF0aWNcIjtcclxuaW1wb3J0IHsgQmFzZUNvbmZpZyB9IGZyb20gXCIuLi9tb2RlbHMvY29uZmlnL2Jhc2UtY29uZmlnXCI7XHJcbmltcG9ydCB7IFJlZ0V4UnVsZSB9IGZyb20gXCIuLi91dGlsL3JlZ2V4LXJ1bGVzXCI7XHJcbmltcG9ydCB7IHJlZ2V4VmFsaWRhdGlvbiB9IGZyb20gXCIuLi92YWxpZGF0b3JzLWZ1bmN0aW9uL3JlZ2V4LXZhbGlkYXRpb24uZnVuY3Rpb25cIjtcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGF0YVVyaVZhbGlkYXRvcihjb25maWdNb2RlbDogQmFzZUNvbmZpZyk6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPT4ge1xyXG4gICAgcmV0dXJuIHJlZ2V4VmFsaWRhdGlvbihjb25maWdNb2RlbCwgY29udHJvbCwgUmVnRXhSdWxlLmRhdGFVcmksIEFubm90YXRpb25UeXBlcy5kYXRhVXJpKVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,8 @@
1
+ import { AnnotationTypes } from "../core/validator.static";
2
+ import { validateDate } from "../util/date-checker.function";
3
+ export function dateValidator(configModel) {
4
+ return (control) => {
5
+ return validateDate(control, configModel, AnnotationTypes.date);
6
+ };
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc3JjL2xpYi9mb3JtLXZhbGlkYXRvcnMvcmVhY3RpdmUtZm9ybS12YWxpZGF0b3JzL2RhdGUudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsTUFBTSxVQUFVLGFBQWEsQ0FBQyxXQUF1QjtJQUNuRCxPQUFPLENBQUMsT0FBd0IsRUFBMEIsRUFBRTtRQUMxRCxPQUFPLFlBQVksQ0FBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRSxDQUFDLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0b3JGbiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBBbm5vdGF0aW9uVHlwZXMgfSBmcm9tIFwiLi4vY29yZS92YWxpZGF0b3Iuc3RhdGljXCI7XHJcbmltcG9ydCB7IEJhc2VDb25maWcgfSBmcm9tIFwiLi4vbW9kZWxzL2NvbmZpZy9iYXNlLWNvbmZpZ1wiO1xyXG5pbXBvcnQgeyB2YWxpZGF0ZURhdGUgfSBmcm9tIFwiLi4vdXRpbC9kYXRlLWNoZWNrZXIuZnVuY3Rpb25cIjtcclxuZXhwb3J0IGZ1bmN0aW9uIGRhdGVWYWxpZGF0b3IoY29uZmlnTW9kZWw6IEJhc2VDb25maWcpOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcclxuICAgIHJldHVybiB2YWxpZGF0ZURhdGUoY29udHJvbCwgY29uZmlnTW9kZWwsIEFubm90YXRpb25UeXBlcy5kYXRlKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,19 @@
1
+ import { FIELD_CONFIG } from "../const/config-names.const";
2
+ import { AnnotationTypes } from "../core/validator.static";
3
+ import { ApplicationUtil } from "../util/app-util";
4
+ import { getConfigObject } from "../util/config-provider";
5
+ import { ObjectMaker } from "../util/object-maker";
6
+ import { ValidatorValueChecker } from "../util/validator-value-checker";
7
+ export function differentValidator(configModel) {
8
+ return (control) => {
9
+ let config = getConfigObject(configModel, control, FIELD_CONFIG);
10
+ if (ValidatorValueChecker.pass(control, config)) {
11
+ const differentControl = ApplicationUtil.getFormControl(config.fieldName, control);
12
+ const differentControlValue = (differentControl) ? differentControl.value : '';
13
+ if (!(differentControl && differentControl.value != control.value))
14
+ return ObjectMaker.toJson(AnnotationTypes.different, config, [control.value, differentControlValue]);
15
+ }
16
+ return ObjectMaker.null();
17
+ };
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlmZmVyZW50LnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9zcmMvbGliL2Zvcm0tdmFsaWRhdG9ycy9yZWFjdGl2ZS1mb3JtLXZhbGlkYXRvcnMvZGlmZmVyZW50LnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXhFLE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxXQUE0QjtJQUM3RCxPQUFPLENBQUMsT0FBd0IsRUFBMEIsRUFBRTtRQUMxRCxJQUFJLE1BQU0sR0FBRyxlQUFlLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNqRSxJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDL0MsTUFBTSxnQkFBZ0IsR0FBRyxlQUFlLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDbkYsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQy9FLElBQUksQ0FBQyxDQUFDLGdCQUFnQixJQUFJLGdCQUFnQixDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUNoRSxPQUFPLFdBQVcsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLHFCQUFxQixDQUFDLENBQUMsQ0FBQztTQUN4RztRQUNELE9BQU8sV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUMsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEZJRUxEX0NPTkZJRyB9IGZyb20gXCIuLi9jb25zdC9jb25maWctbmFtZXMuY29uc3RcIjtcclxuaW1wb3J0IHsgQW5ub3RhdGlvblR5cGVzIH0gZnJvbSBcIi4uL2NvcmUvdmFsaWRhdG9yLnN0YXRpY1wiO1xyXG5pbXBvcnQgeyBEaWZmZXJlbnRDb25maWcgfSBmcm9tIFwiLi4vbW9kZWxzL2NvbmZpZy9jb21wYXJlLWNvbmZpZ1wiO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvblV0aWwgfSBmcm9tIFwiLi4vdXRpbC9hcHAtdXRpbFwiO1xyXG5pbXBvcnQgeyBnZXRDb25maWdPYmplY3QgfSBmcm9tIFwiLi4vdXRpbC9jb25maWctcHJvdmlkZXJcIjtcclxuaW1wb3J0IHsgT2JqZWN0TWFrZXIgfSBmcm9tIFwiLi4vdXRpbC9vYmplY3QtbWFrZXJcIjtcclxuaW1wb3J0IHsgVmFsaWRhdG9yVmFsdWVDaGVja2VyIH0gZnJvbSBcIi4uL3V0aWwvdmFsaWRhdG9yLXZhbHVlLWNoZWNrZXJcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkaWZmZXJlbnRWYWxpZGF0b3IoY29uZmlnTW9kZWw6IERpZmZlcmVudENvbmZpZyk6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPT4ge1xyXG4gICAgbGV0IGNvbmZpZyA9IGdldENvbmZpZ09iamVjdChjb25maWdNb2RlbCwgY29udHJvbCwgRklFTERfQ09ORklHKTtcclxuICAgIGlmIChWYWxpZGF0b3JWYWx1ZUNoZWNrZXIucGFzcyhjb250cm9sLCBjb25maWcpKSB7XHJcbiAgICAgIGNvbnN0IGRpZmZlcmVudENvbnRyb2wgPSBBcHBsaWNhdGlvblV0aWwuZ2V0Rm9ybUNvbnRyb2woY29uZmlnLmZpZWxkTmFtZSwgY29udHJvbCk7XHJcbiAgICAgIGNvbnN0IGRpZmZlcmVudENvbnRyb2xWYWx1ZSA9IChkaWZmZXJlbnRDb250cm9sKSA/IGRpZmZlcmVudENvbnRyb2wudmFsdWUgOiAnJztcclxuICAgICAgaWYgKCEoZGlmZmVyZW50Q29udHJvbCAmJiBkaWZmZXJlbnRDb250cm9sLnZhbHVlICE9IGNvbnRyb2wudmFsdWUpKVxyXG4gICAgICAgIHJldHVybiBPYmplY3RNYWtlci50b0pzb24oQW5ub3RhdGlvblR5cGVzLmRpZmZlcmVudCwgY29uZmlnLCBbY29udHJvbC52YWx1ZSwgZGlmZmVyZW50Q29udHJvbFZhbHVlXSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gT2JqZWN0TWFrZXIubnVsbCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,9 @@
1
+ import { AnnotationTypes } from "../core/validator.static";
2
+ import { RegExRule } from "../util/regex-rules";
3
+ import { regexValidation } from "../validators-function/regex-validation.function";
4
+ export function digitValidator(configModel) {
5
+ return (control) => {
6
+ return regexValidation(configModel, control, RegExRule.onlyDigit, AnnotationTypes.digit);
7
+ };
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlnaXQudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3JlYWN0aXZlLWZvcm0tdmFsaWRhdG9ycy9kaWdpdC52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFHbkYsTUFBTSxVQUFVLGNBQWMsQ0FBQyxXQUF3QjtJQUNyRCxPQUFPLENBQUMsT0FBd0IsRUFBMEIsRUFBRTtRQUMxRCxPQUFPLGVBQWUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQyxTQUFTLEVBQUUsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzFGLENBQUMsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEFubm90YXRpb25UeXBlcyB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRvci5zdGF0aWNcIjtcclxuaW1wb3J0IHsgRGlnaXRDb25maWcgfSBmcm9tIFwiLi4vbW9kZWxzL2NvbmZpZy9kaWdpdC1jb25maWdcIjtcclxuaW1wb3J0IHsgUmVnRXhSdWxlIH0gZnJvbSBcIi4uL3V0aWwvcmVnZXgtcnVsZXNcIjtcclxuaW1wb3J0IHsgcmVnZXhWYWxpZGF0aW9uIH0gZnJvbSBcIi4uL3ZhbGlkYXRvcnMtZnVuY3Rpb24vcmVnZXgtdmFsaWRhdGlvbi5mdW5jdGlvblwiO1xyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkaWdpdFZhbGlkYXRvcihjb25maWdNb2RlbDogRGlnaXRDb25maWcpOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcclxuICAgIHJldHVybiByZWdleFZhbGlkYXRpb24oY29uZmlnTW9kZWwsIGNvbnRyb2wsIFJlZ0V4UnVsZS5vbmx5RGlnaXQsIEFubm90YXRpb25UeXBlcy5kaWdpdClcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,9 @@
1
+ import { AnnotationTypes } from "../core/validator.static";
2
+ import { RegExRule } from "../util/regex-rules";
3
+ import { regexValidation } from "../validators-function/regex-validation.function";
4
+ export function emailValidator(configModel) {
5
+ return (control) => {
6
+ return regexValidation(configModel, control, RegExRule.basicEmail, AnnotationTypes.email);
7
+ };
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3JlYWN0aXZlLWZvcm0tdmFsaWRhdG9ycy9lbWFpbC52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDbkYsTUFBTSxVQUFVLGNBQWMsQ0FBQyxXQUF3QjtJQUNyRCxPQUFPLENBQUMsT0FBd0IsRUFBMEIsRUFBRTtRQUMxRCxPQUFPLGVBQWUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQyxVQUFVLEVBQUUsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzNGLENBQUMsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEFubm90YXRpb25UeXBlcyB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRvci5zdGF0aWNcIjtcclxuaW1wb3J0IHsgRW1haWxDb25maWcgfSBmcm9tIFwiLi4vbW9kZWxzL2NvbmZpZy9lbWFpbC1jb25maWdcIjtcclxuaW1wb3J0IHsgUmVnRXhSdWxlIH0gZnJvbSBcIi4uL3V0aWwvcmVnZXgtcnVsZXNcIjtcclxuaW1wb3J0IHsgcmVnZXhWYWxpZGF0aW9uIH0gZnJvbSBcIi4uL3ZhbGlkYXRvcnMtZnVuY3Rpb24vcmVnZXgtdmFsaWRhdGlvbi5mdW5jdGlvblwiO1xyXG5leHBvcnQgZnVuY3Rpb24gZW1haWxWYWxpZGF0b3IoY29uZmlnTW9kZWw6IEVtYWlsQ29uZmlnKTogVmFsaWRhdG9yRm4ge1xyXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9PiB7XHJcbiAgICByZXR1cm4gcmVnZXhWYWxpZGF0aW9uKGNvbmZpZ01vZGVsLCBjb250cm9sLCBSZWdFeFJ1bGUuYmFzaWNFbWFpbCwgQW5ub3RhdGlvblR5cGVzLmVtYWlsKVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,16 @@
1
+ import { AnnotationTypes } from "../core/validator.static";
2
+ import { getConfigObject } from "../util/config-provider";
3
+ import { ObjectMaker } from "../util/object-maker";
4
+ import { ValidatorValueChecker } from "../util/validator-value-checker";
5
+ export function endsWithValidator(configModel) {
6
+ return (control) => {
7
+ let config = getConfigObject(configModel, control);
8
+ if (ValidatorValueChecker.pass(control, config)) {
9
+ var endString = String(control.value).substr(control.value.length - config.value.length, config.value.length);
10
+ if (endString != config.value)
11
+ return ObjectMaker.toJson(AnnotationTypes.endsWith, config, [control.value, config.value]);
12
+ }
13
+ return ObjectMaker.null();
14
+ };
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5kc1dpdGgudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3JlYWN0aXZlLWZvcm0tdmFsaWRhdG9ycy9lbmRzV2l0aC52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFeEUsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFdBQTBCO0lBQzFELE9BQU8sQ0FBQyxPQUF3QixFQUEwQixFQUFFO1FBQzFELElBQUksTUFBTSxHQUFHLGVBQWUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkQsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQy9DLElBQUksU0FBUyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDOUcsSUFBSSxTQUFTLElBQUksTUFBTSxDQUFDLEtBQUs7Z0JBQzNCLE9BQU8sV0FBVyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDOUY7UUFDRCxPQUFPLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QixDQUFDLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0b3JGbiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBBbm5vdGF0aW9uVHlwZXMgfSBmcm9tIFwiLi4vY29yZS92YWxpZGF0b3Iuc3RhdGljXCI7XHJcbmltcG9ydCB7IERlZmF1bHRDb25maWcgfSBmcm9tIFwiLi4vbW9kZWxzL2NvbmZpZy9kZWZhdWx0LWNvbmZpZ1wiO1xyXG5pbXBvcnQgeyBnZXRDb25maWdPYmplY3QgfSBmcm9tIFwiLi4vdXRpbC9jb25maWctcHJvdmlkZXJcIjtcclxuaW1wb3J0IHsgT2JqZWN0TWFrZXIgfSBmcm9tIFwiLi4vdXRpbC9vYmplY3QtbWFrZXJcIjtcclxuaW1wb3J0IHsgVmFsaWRhdG9yVmFsdWVDaGVja2VyIH0gZnJvbSBcIi4uL3V0aWwvdmFsaWRhdG9yLXZhbHVlLWNoZWNrZXJcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBlbmRzV2l0aFZhbGlkYXRvcihjb25maWdNb2RlbDogRGVmYXVsdENvbmZpZyk6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPT4ge1xyXG4gICAgbGV0IGNvbmZpZyA9IGdldENvbmZpZ09iamVjdChjb25maWdNb2RlbCwgY29udHJvbCk7XHJcbiAgICBpZiAoVmFsaWRhdG9yVmFsdWVDaGVja2VyLnBhc3MoY29udHJvbCwgY29uZmlnKSkge1xyXG4gICAgICB2YXIgZW5kU3RyaW5nID0gU3RyaW5nKGNvbnRyb2wudmFsdWUpLnN1YnN0cihjb250cm9sLnZhbHVlLmxlbmd0aCAtIGNvbmZpZy52YWx1ZS5sZW5ndGgsIGNvbmZpZy52YWx1ZS5sZW5ndGgpO1xyXG4gICAgICBpZiAoZW5kU3RyaW5nICE9IGNvbmZpZy52YWx1ZSlcclxuICAgICAgICByZXR1cm4gT2JqZWN0TWFrZXIudG9Kc29uKEFubm90YXRpb25UeXBlcy5lbmRzV2l0aCwgY29uZmlnLCBbY29udHJvbC52YWx1ZSwgY29uZmlnLnZhbHVlXSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gT2JqZWN0TWFrZXIubnVsbCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,15 @@
1
+ import { AnnotationTypes } from "../core/validator.static";
2
+ import { getConfigObject } from "../util/config-provider";
3
+ import { ObjectMaker } from "../util/object-maker";
4
+ import { ValidatorValueChecker } from "../util/validator-value-checker";
5
+ export function evenValidator(configModel) {
6
+ return (control) => {
7
+ let config = getConfigObject(configModel, control);
8
+ if (ValidatorValueChecker.pass(control, config)) {
9
+ if (!(control.value % 2 == 0))
10
+ return ObjectMaker.toJson(AnnotationTypes.even, config, [control.value]);
11
+ }
12
+ return ObjectMaker.null();
13
+ };
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbi52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc3JjL2xpYi9mb3JtLXZhbGlkYXRvcnMvcmVhY3RpdmUtZm9ybS12YWxpZGF0b3JzL2V2ZW4udmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXhFLE1BQU0sVUFBVSxhQUFhLENBQUMsV0FBdUI7SUFDbkQsT0FBTyxDQUFDLE9BQXdCLEVBQTBCLEVBQUU7UUFDMUQsSUFBSSxNQUFNLEdBQUcsZUFBZSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNuRCxJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDL0MsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMzQixPQUFPLFdBQVcsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUM1RTtRQUNELE9BQU8sV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUMsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEFubm90YXRpb25UeXBlcyB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRvci5zdGF0aWNcIjtcclxuaW1wb3J0IHsgQmFzZUNvbmZpZyB9IGZyb20gXCIuLi9tb2RlbHMvY29uZmlnL2Jhc2UtY29uZmlnXCI7XHJcbmltcG9ydCB7IGdldENvbmZpZ09iamVjdCB9IGZyb20gXCIuLi91dGlsL2NvbmZpZy1wcm92aWRlclwiO1xyXG5pbXBvcnQgeyBPYmplY3RNYWtlciB9IGZyb20gXCIuLi91dGlsL29iamVjdC1tYWtlclwiO1xyXG5pbXBvcnQgeyBWYWxpZGF0b3JWYWx1ZUNoZWNrZXIgfSBmcm9tIFwiLi4vdXRpbC92YWxpZGF0b3ItdmFsdWUtY2hlY2tlclwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGV2ZW5WYWxpZGF0b3IoY29uZmlnTW9kZWw6IEJhc2VDb25maWcpOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcclxuICAgIGxldCBjb25maWcgPSBnZXRDb25maWdPYmplY3QoY29uZmlnTW9kZWwsIGNvbnRyb2wpO1xyXG4gICAgaWYgKFZhbGlkYXRvclZhbHVlQ2hlY2tlci5wYXNzKGNvbnRyb2wsIGNvbmZpZykpIHtcclxuICAgICAgaWYgKCEoY29udHJvbC52YWx1ZSAlIDIgPT0gMCkpXHJcbiAgICAgICAgcmV0dXJuIE9iamVjdE1ha2VyLnRvSnNvbihBbm5vdGF0aW9uVHlwZXMuZXZlbiwgY29uZmlnLCBbY29udHJvbC52YWx1ZV0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIE9iamVjdE1ha2VyLm51bGwoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,40 @@
1
+ import { VALIDATOR_CONFIG } from "../const/app.const";
2
+ import { AnnotationTypes } from "../core/validator.static";
3
+ import { ApplicationUtil } from '../util/app-util';
4
+ import { getConfigObject } from "../util/config-provider";
5
+ import { FormProvider } from '../util/form-provider';
6
+ import { ObjectMaker } from "../util/object-maker";
7
+ import { RegexValidator } from "../util/regex-validator";
8
+ export function extensionValidator(configModel) {
9
+ return (control, files) => {
10
+ let config = getConfigObject(configModel, control);
11
+ if (!control[VALIDATOR_CONFIG] || !control[VALIDATOR_CONFIG][AnnotationTypes.extension])
12
+ ApplicationUtil.configureControl(control, config, AnnotationTypes.extension);
13
+ if (files && FormProvider.ProcessRule(control, config)) {
14
+ if (RegexValidator.isNotBlank(control.value)) {
15
+ let testResult = true;
16
+ let extension = '';
17
+ for (var i = 0; i < files.length; i++) {
18
+ let file = files.item(i);
19
+ let splitText = file.name.split(".");
20
+ extension = splitText[splitText.length - 1];
21
+ let result = config.extensions.filter(t => { return extension.toLowerCase() == t.toLowerCase(); })[0];
22
+ if (!result && !configModel.isExcludeExtensions) {
23
+ testResult = false;
24
+ break;
25
+ }
26
+ else {
27
+ if (result && configModel.isExcludeExtensions) {
28
+ testResult = false;
29
+ break;
30
+ }
31
+ }
32
+ }
33
+ if (!testResult)
34
+ return ObjectMaker.toJson(AnnotationTypes.extension, config, [extension, config.extensions.join(",")]);
35
+ }
36
+ }
37
+ return ObjectMaker.null();
38
+ };
39
+ }
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5zaW9uLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9zcmMvbGliL2Zvcm0tdmFsaWRhdG9ycy9yZWFjdGl2ZS1mb3JtLXZhbGlkYXRvcnMvZXh0ZW5zaW9uLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV6RCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsV0FBNEI7SUFDN0QsT0FBTyxDQUFDLE9BQXdCLEVBQUUsS0FBZSxFQUEwQixFQUFFO1FBQzNFLElBQUksTUFBTSxHQUFHLGVBQWUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQztZQUNyRixlQUFlLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0UsSUFBSSxLQUFLLElBQUksWUFBWSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDdEQsSUFBSSxjQUFjLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDNUMsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUN0QixJQUFJLFNBQVMsR0FBVyxFQUFFLENBQUM7Z0JBQzNCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO29CQUNyQyxJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUN6QixJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDckMsU0FBUyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUM1QyxJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLE9BQU8sU0FBUyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNyRyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixFQUFFO3dCQUMvQyxVQUFVLEdBQUcsS0FBSyxDQUFDO3dCQUNuQixNQUFNO3FCQUNQO3lCQUFNO3dCQUNMLElBQUksTUFBTSxJQUFJLFdBQVcsQ0FBQyxtQkFBbUIsRUFBRTs0QkFDN0MsVUFBVSxHQUFHLEtBQUssQ0FBQzs0QkFDbkIsTUFBTTt5QkFDUDtxQkFDRjtpQkFDRjtnQkFDRCxJQUFJLENBQUMsVUFBVTtvQkFDYixPQUFPLFdBQVcsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzFHO1NBQ0Y7UUFBQyxPQUFPLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM5QixDQUFDLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IFZBTElEQVRPUl9DT05GSUcgfSBmcm9tIFwiLi4vY29uc3QvYXBwLmNvbnN0XCI7XHJcbmltcG9ydCB7IEFubm90YXRpb25UeXBlcyB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRvci5zdGF0aWNcIjtcclxuaW1wb3J0IHsgRXh0ZW5zaW9uQ29uZmlnIH0gZnJvbSBcIi4uL21vZGVscy9jb25maWcvZXh0ZW5zaW9uLWNvbmZpZ1wiO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvblV0aWwgfSBmcm9tICcuLi91dGlsL2FwcC11dGlsJztcclxuaW1wb3J0IHsgZ2V0Q29uZmlnT2JqZWN0IH0gZnJvbSBcIi4uL3V0aWwvY29uZmlnLXByb3ZpZGVyXCI7XHJcbmltcG9ydCB7IEZvcm1Qcm92aWRlciB9IGZyb20gJy4uL3V0aWwvZm9ybS1wcm92aWRlcic7XHJcbmltcG9ydCB7IE9iamVjdE1ha2VyIH0gZnJvbSBcIi4uL3V0aWwvb2JqZWN0LW1ha2VyXCI7XHJcbmltcG9ydCB7IFJlZ2V4VmFsaWRhdG9yIH0gZnJvbSBcIi4uL3V0aWwvcmVnZXgtdmFsaWRhdG9yXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZXh0ZW5zaW9uVmFsaWRhdG9yKGNvbmZpZ01vZGVsOiBFeHRlbnNpb25Db25maWcpOiBhbnkge1xyXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sLCBmaWxlczogRmlsZUxpc3QpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcclxuICAgIGxldCBjb25maWcgPSBnZXRDb25maWdPYmplY3QoY29uZmlnTW9kZWwsIGNvbnRyb2wpO1xyXG4gICAgaWYgKCFjb250cm9sW1ZBTElEQVRPUl9DT05GSUddIHx8ICFjb250cm9sW1ZBTElEQVRPUl9DT05GSUddW0Fubm90YXRpb25UeXBlcy5leHRlbnNpb25dKVxyXG4gICAgICBBcHBsaWNhdGlvblV0aWwuY29uZmlndXJlQ29udHJvbChjb250cm9sLCBjb25maWcsIEFubm90YXRpb25UeXBlcy5leHRlbnNpb24pO1xyXG4gICAgaWYgKGZpbGVzICYmIEZvcm1Qcm92aWRlci5Qcm9jZXNzUnVsZShjb250cm9sLCBjb25maWcpKSB7XHJcbiAgICAgIGlmIChSZWdleFZhbGlkYXRvci5pc05vdEJsYW5rKGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgICAgbGV0IHRlc3RSZXN1bHQgPSB0cnVlO1xyXG4gICAgICAgIGxldCBleHRlbnNpb246IHN0cmluZyA9ICcnO1xyXG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZmlsZXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGxldCBmaWxlID0gZmlsZXMuaXRlbShpKTtcclxuICAgICAgICAgIGxldCBzcGxpdFRleHQgPSBmaWxlLm5hbWUuc3BsaXQoXCIuXCIpO1xyXG4gICAgICAgICAgZXh0ZW5zaW9uID0gc3BsaXRUZXh0W3NwbGl0VGV4dC5sZW5ndGggLSAxXTtcclxuICAgICAgICAgIGxldCByZXN1bHQgPSBjb25maWcuZXh0ZW5zaW9ucy5maWx0ZXIodCA9PiB7IHJldHVybiBleHRlbnNpb24udG9Mb3dlckNhc2UoKSA9PSB0LnRvTG93ZXJDYXNlKCkgfSlbMF07XHJcbiAgICAgICAgICBpZiAoIXJlc3VsdCAmJiAhY29uZmlnTW9kZWwuaXNFeGNsdWRlRXh0ZW5zaW9ucykge1xyXG4gICAgICAgICAgICB0ZXN0UmVzdWx0ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKHJlc3VsdCAmJiBjb25maWdNb2RlbC5pc0V4Y2x1ZGVFeHRlbnNpb25zKSB7XHJcbiAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghdGVzdFJlc3VsdClcclxuICAgICAgICAgIHJldHVybiBPYmplY3RNYWtlci50b0pzb24oQW5ub3RhdGlvblR5cGVzLmV4dGVuc2lvbiwgY29uZmlnLCBbZXh0ZW5zaW9uLCBjb25maWcuZXh0ZW5zaW9ucy5qb2luKFwiLFwiKV0pO1xyXG4gICAgICB9XHJcbiAgICB9IHJldHVybiBPYmplY3RNYWtlci5udWxsKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,37 @@
1
+ import { AnnotationTypes } from "../core/validator.static";
2
+ import { ApplicationUtil } from '../util/app-util';
3
+ import { getConfigObject } from "../util/config-provider";
4
+ import { FormProvider } from '../util/form-provider';
5
+ import { ObjectMaker } from "../util/object-maker";
6
+ import { RegExRule } from "../util/regex-rules";
7
+ import { RegexValidator } from "../util/regex-validator";
8
+ export function factorValidator(configModel) {
9
+ function positiveFactors(dividend, value) {
10
+ let isPositive = false;
11
+ for (var index = 1; index <= Math.floor(Math.sqrt(dividend)); index += 1) {
12
+ if (dividend % index === 0) {
13
+ if (index == value)
14
+ isPositive = true;
15
+ if (dividend / index !== index)
16
+ if ((dividend / index) == value)
17
+ isPositive = true;
18
+ if (isPositive)
19
+ break;
20
+ }
21
+ }
22
+ return isPositive;
23
+ }
24
+ return (control) => {
25
+ let config = getConfigObject(configModel, control);
26
+ const dividendField = (control.parent && config.fieldName) ? ApplicationUtil.getFormControl(config.fieldName, control) : undefined;
27
+ const dividend = (config.fieldName && dividendField) ? dividendField.value : config.dividend;
28
+ if (FormProvider.ProcessRule(control, config)) {
29
+ if (RegexValidator.isNotBlank(control.value) && dividend > 0) {
30
+ if (!RegexValidator.isValid(control.value, RegExRule.onlyDigit) || !positiveFactors(dividend, parseInt(control.value)))
31
+ return ObjectMaker.toJson(AnnotationTypes.factor, config, [control.value]);
32
+ }
33
+ }
34
+ return ObjectMaker.null();
35
+ };
36
+ }
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9zcmMvbGliL2Zvcm0tdmFsaWRhdG9ycy9yZWFjdGl2ZS1mb3JtLXZhbGlkYXRvcnMvZmFjdG9yLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFekQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxXQUF5QjtJQUV4RCxTQUFTLGVBQWUsQ0FBQyxRQUFRLEVBQUUsS0FBSztRQUN2QyxJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDdkIsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUU7WUFDekUsSUFBSSxRQUFRLEdBQUcsS0FBSyxLQUFLLENBQUMsRUFBRTtnQkFDM0IsSUFBSSxLQUFLLElBQUksS0FBSztvQkFDakIsVUFBVSxHQUFHLElBQUksQ0FBQztnQkFDbkIsSUFBSSxRQUFRLEdBQUcsS0FBSyxLQUFLLEtBQUs7b0JBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLElBQUksS0FBSzt3QkFDOUIsVUFBVSxHQUFHLElBQUksQ0FBQztnQkFDcEIsSUFBSSxVQUFVO29CQUNiLE1BQU07YUFDUDtTQUNEO1FBQ0QsT0FBTyxVQUFVLENBQUM7SUFDbkIsQ0FBQztJQUVELE9BQU8sQ0FBQyxPQUFrQixFQUEwQixFQUFFO1FBQ3JELElBQUksTUFBTSxHQUFHLGVBQWUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkQsTUFBTSxhQUFhLEdBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUE7UUFDdkksTUFBTSxRQUFRLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQzdGLElBQUksWUFBWSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDOUMsSUFBSSxjQUFjLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxFQUFFO2dCQUM3RCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDckgsT0FBTyxXQUFXLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDNUU7U0FDRDtRQUNELE9BQU8sV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNCLENBQUMsQ0FBQTtBQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtR3JvdXAsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEFubm90YXRpb25UeXBlcyB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRvci5zdGF0aWNcIjtcclxuaW1wb3J0IHsgRmFjdG9yQ29uZmlnIH0gZnJvbSBcIi4uL21vZGVscy9jb25maWcvZmFjdG9yLWNvbmZpZ1wiO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvblV0aWwgfSBmcm9tICcuLi91dGlsL2FwcC11dGlsJztcclxuaW1wb3J0IHsgZ2V0Q29uZmlnT2JqZWN0IH0gZnJvbSBcIi4uL3V0aWwvY29uZmlnLXByb3ZpZGVyXCI7XHJcbmltcG9ydCB7IEZvcm1Qcm92aWRlciB9IGZyb20gJy4uL3V0aWwvZm9ybS1wcm92aWRlcic7XHJcbmltcG9ydCB7IE9iamVjdE1ha2VyIH0gZnJvbSBcIi4uL3V0aWwvb2JqZWN0LW1ha2VyXCI7XHJcbmltcG9ydCB7IFJlZ0V4UnVsZSB9IGZyb20gXCIuLi91dGlsL3JlZ2V4LXJ1bGVzXCI7XHJcbmltcG9ydCB7IFJlZ2V4VmFsaWRhdG9yIH0gZnJvbSBcIi4uL3V0aWwvcmVnZXgtdmFsaWRhdG9yXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZmFjdG9yVmFsaWRhdG9yKGNvbmZpZ01vZGVsOiBGYWN0b3JDb25maWcpOiBWYWxpZGF0b3JGbiB7XHJcblxyXG5cdGZ1bmN0aW9uIHBvc2l0aXZlRmFjdG9ycyhkaXZpZGVuZCwgdmFsdWUpIHtcclxuXHRcdGxldCBpc1Bvc2l0aXZlID0gZmFsc2U7XHJcblx0XHRmb3IgKHZhciBpbmRleCA9IDE7IGluZGV4IDw9IE1hdGguZmxvb3IoTWF0aC5zcXJ0KGRpdmlkZW5kKSk7IGluZGV4ICs9IDEpIHtcclxuXHRcdFx0aWYgKGRpdmlkZW5kICUgaW5kZXggPT09IDApIHtcclxuXHRcdFx0XHRpZiAoaW5kZXggPT0gdmFsdWUpXHJcblx0XHRcdFx0XHRpc1Bvc2l0aXZlID0gdHJ1ZTtcclxuXHRcdFx0XHRpZiAoZGl2aWRlbmQgLyBpbmRleCAhPT0gaW5kZXgpXHJcblx0XHRcdFx0XHRpZiAoKGRpdmlkZW5kIC8gaW5kZXgpID09IHZhbHVlKVxyXG5cdFx0XHRcdFx0XHRpc1Bvc2l0aXZlID0gdHJ1ZTtcclxuXHRcdFx0XHRpZiAoaXNQb3NpdGl2ZSlcclxuXHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gaXNQb3NpdGl2ZTtcclxuXHR9XHJcblxyXG5cdHJldHVybiAoY29udHJvbDogRm9ybUdyb3VwKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9PiB7XHJcblx0XHRsZXQgY29uZmlnID0gZ2V0Q29uZmlnT2JqZWN0KGNvbmZpZ01vZGVsLCBjb250cm9sKTtcclxuXHRcdGNvbnN0IGRpdmlkZW5kRmllbGQ6IGFueSA9IChjb250cm9sLnBhcmVudCAmJiBjb25maWcuZmllbGROYW1lKSA/IEFwcGxpY2F0aW9uVXRpbC5nZXRGb3JtQ29udHJvbChjb25maWcuZmllbGROYW1lLCBjb250cm9sKSA6IHVuZGVmaW5lZFxyXG5cdFx0Y29uc3QgZGl2aWRlbmQgPSAoY29uZmlnLmZpZWxkTmFtZSAmJiBkaXZpZGVuZEZpZWxkKSA/IGRpdmlkZW5kRmllbGQudmFsdWUgOiBjb25maWcuZGl2aWRlbmQ7XHJcblx0XHRpZiAoRm9ybVByb3ZpZGVyLlByb2Nlc3NSdWxlKGNvbnRyb2wsIGNvbmZpZykpIHtcclxuXHRcdFx0aWYgKFJlZ2V4VmFsaWRhdG9yLmlzTm90QmxhbmsoY29udHJvbC52YWx1ZSkgJiYgZGl2aWRlbmQgPiAwKSB7XHJcblx0XHRcdFx0aWYgKCFSZWdleFZhbGlkYXRvci5pc1ZhbGlkKGNvbnRyb2wudmFsdWUsIFJlZ0V4UnVsZS5vbmx5RGlnaXQpIHx8ICFwb3NpdGl2ZUZhY3RvcnMoZGl2aWRlbmQsIHBhcnNlSW50KGNvbnRyb2wudmFsdWUpKSlcclxuXHRcdFx0XHRcdHJldHVybiBPYmplY3RNYWtlci50b0pzb24oQW5ub3RhdGlvblR5cGVzLmZhY3RvciwgY29uZmlnLCBbY29udHJvbC52YWx1ZV0pO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gT2JqZWN0TWFrZXIubnVsbCgpO1xyXG5cdH1cclxufVxyXG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { RegexValidator } from "../util/regex-validator";
2
+ import { ObjectMaker } from "../util/object-maker";
3
+ import { AnnotationTypes } from "../core/validator.static";
4
+ import { FormProvider } from '../util/form-provider';
5
+ import { ApplicationUtil } from '../util/app-util';
6
+ import { getConfigObject } from "../util/config-provider";
7
+ import { VALIDATOR_CONFIG } from "../const/app.const";
8
+ export function fileValidator(configModel) {
9
+ return (control, files) => {
10
+ let config = getConfigObject(configModel, control);
11
+ if (!control[VALIDATOR_CONFIG] || !control[VALIDATOR_CONFIG][AnnotationTypes.file])
12
+ ApplicationUtil.configureControl(control, config, AnnotationTypes.file);
13
+ if (files) {
14
+ if (FormProvider.ProcessRule(control, config)) {
15
+ if (RegexValidator.isNotBlank(control.value)) {
16
+ let minFiles = config.minFiles ? config.minFiles : 0;
17
+ let maxFiles = config.maxFiles ? config.maxFiles : files.length;
18
+ if (!(files.length > 0 && files[0] instanceof File && files.length >= minFiles && files.length <= maxFiles))
19
+ return ObjectMaker.toJson(AnnotationTypes.file, config, [files.length, minFiles, maxFiles]);
20
+ }
21
+ }
22
+ }
23
+ return ObjectMaker.null();
24
+ };
25
+ }
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc3JjL2xpYi9mb3JtLXZhbGlkYXRvcnMvcmVhY3RpdmUtZm9ybS12YWxpZGF0b3JzL2ZpbGUudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE1BQU0sVUFBVSxhQUFhLENBQUMsV0FBdUI7SUFDbkQsT0FBTyxDQUFDLE9BQXdCLEVBQUUsS0FBZSxFQUEwQixFQUFFO1FBQzNFLElBQUksTUFBTSxHQUFHLGVBQWUsQ0FBQyxXQUFXLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQztZQUM5RSxlQUFlLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUUsSUFBRyxLQUFLLEVBQUM7WUFDUCxJQUFJLFlBQVksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxFQUFFO2dCQUM3QyxJQUFJLGNBQWMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO29CQUM1QyxJQUFJLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ3JELElBQUksUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7b0JBQ2hFLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsWUFBWSxJQUFJLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxRQUFRLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUM7d0JBQ3pHLE9BQU8sV0FBVyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7aUJBQy9GO2FBQ0Y7U0FDRjtRQUNBLE9BQU8sV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdCLENBQUMsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFic3RyYWN0Q29udHJvbFxyXG59IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuaW1wb3J0IHsgUmVnZXhWYWxpZGF0b3IgfSBmcm9tIFwiLi4vdXRpbC9yZWdleC12YWxpZGF0b3JcIjtcclxuaW1wb3J0IHsgT2JqZWN0TWFrZXIgfSBmcm9tIFwiLi4vdXRpbC9vYmplY3QtbWFrZXJcIjtcclxuaW1wb3J0IHsgRmlsZUNvbmZpZyB9IGZyb20gXCIuLi9tb2RlbHMvY29uZmlnL2ZpbGUtY29uZmlnXCI7XHJcbmltcG9ydCB7IEFubm90YXRpb25UeXBlcyB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRvci5zdGF0aWNcIjtcclxuaW1wb3J0IHsgRm9ybVByb3ZpZGVyIH0gZnJvbSAnLi4vdXRpbC9mb3JtLXByb3ZpZGVyJztcclxuaW1wb3J0IHsgQXBwbGljYXRpb25VdGlsIH0gZnJvbSAnLi4vdXRpbC9hcHAtdXRpbCc7XHJcbmltcG9ydCB7Z2V0Q29uZmlnT2JqZWN0fSBmcm9tIFwiLi4vdXRpbC9jb25maWctcHJvdmlkZXJcIjtcclxuaW1wb3J0IHsgVkFMSURBVE9SX0NPTkZJRyB9IGZyb20gXCIuLi9jb25zdC9hcHAuY29uc3RcIjtcclxuZXhwb3J0IGZ1bmN0aW9uIGZpbGVWYWxpZGF0b3IoY29uZmlnTW9kZWw6IEZpbGVDb25maWcpOiBhbnkge1xyXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sLCBmaWxlczogRmlsZUxpc3QpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0+IHtcclxuICAgIGxldCBjb25maWcgPSBnZXRDb25maWdPYmplY3QoY29uZmlnTW9kZWwsY29udHJvbCk7ICAgIFxyXG4gICAgaWYgKCFjb250cm9sW1ZBTElEQVRPUl9DT05GSUddIHx8ICFjb250cm9sW1ZBTElEQVRPUl9DT05GSUddW0Fubm90YXRpb25UeXBlcy5maWxlXSlcclxuICAgICAgICBBcHBsaWNhdGlvblV0aWwuY29uZmlndXJlQ29udHJvbChjb250cm9sLCBjb25maWcsIEFubm90YXRpb25UeXBlcy5maWxlKTtcclxuICAgIGlmKGZpbGVzKXtcclxuICAgICAgaWYgKEZvcm1Qcm92aWRlci5Qcm9jZXNzUnVsZShjb250cm9sLCBjb25maWcpKSB7XHJcbiAgICAgICAgaWYgKFJlZ2V4VmFsaWRhdG9yLmlzTm90QmxhbmsoY29udHJvbC52YWx1ZSkpIHtcclxuICAgICAgICAgIGxldCBtaW5GaWxlcyA9IGNvbmZpZy5taW5GaWxlcyA/IGNvbmZpZy5taW5GaWxlcyA6IDA7XHJcbiAgICAgICAgICBsZXQgbWF4RmlsZXMgPSBjb25maWcubWF4RmlsZXMgPyBjb25maWcubWF4RmlsZXMgOiBmaWxlcy5sZW5ndGg7XHJcbiAgICAgICAgICBpZiAoIShmaWxlcy5sZW5ndGggPiAwICYmIGZpbGVzWzBdIGluc3RhbmNlb2YgRmlsZSAmJiBmaWxlcy5sZW5ndGggPj0gbWluRmlsZXMgJiYgZmlsZXMubGVuZ3RoIDw9IG1heEZpbGVzKSlcclxuICAgICAgICAgICAgcmV0dXJuIE9iamVjdE1ha2VyLnRvSnNvbihBbm5vdGF0aW9uVHlwZXMuZmlsZSwgY29uZmlnLCBbZmlsZXMubGVuZ3RoLCBtaW5GaWxlcywgbWF4RmlsZXNdKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICByZXR1cm4gT2JqZWN0TWFrZXIubnVsbCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,32 @@
1
+ import { RegexValidator } from "../util/regex-validator";
2
+ import { ObjectMaker } from "../util/object-maker";
3
+ import { AnnotationTypes } from "../core/validator.static";
4
+ import { FormProvider } from '../util/form-provider';
5
+ import { ApplicationUtil } from '../util/app-util';
6
+ import { getConfigObject } from "../util/config-provider";
7
+ import { VALIDATOR_CONFIG } from "../const/app.const";
8
+ export function fileSizeValidator(configModel) {
9
+ return (control, files) => {
10
+ let config = getConfigObject(configModel, control);
11
+ if (!control[VALIDATOR_CONFIG] || !control[VALIDATOR_CONFIG][AnnotationTypes.fileSize])
12
+ ApplicationUtil.configureControl(control, config, AnnotationTypes.fileSize);
13
+ if (files && FormProvider.ProcessRule(control, config)) {
14
+ if (RegexValidator.isNotBlank(control.value)) {
15
+ let minFileSize = config.minSize ? config.minSize : 0;
16
+ let testResult = false;
17
+ let fileSize = 0;
18
+ for (var i = 0; i < files.length; i++) {
19
+ let file = files.item(i);
20
+ fileSize = file.size;
21
+ testResult = (!(fileSize >= minFileSize && fileSize <= config.maxSize));
22
+ if (testResult)
23
+ break;
24
+ }
25
+ if (testResult)
26
+ return ObjectMaker.toJson(AnnotationTypes.fileSize, config, [fileSize, config.maxSize]);
27
+ }
28
+ }
29
+ return ObjectMaker.null();
30
+ };
31
+ }
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZVNpemUudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3JlYWN0aXZlLWZvcm0tdmFsaWRhdG9ycy9maWxlU2l6ZS52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFdBQXVCO0lBQ3ZELE9BQU8sQ0FBQyxPQUF3QixFQUFFLEtBQWUsRUFBMEIsRUFBRTtRQUMzRSxJQUFJLE1BQU0sR0FBRyxlQUFlLENBQUMsV0FBVyxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUM7WUFDcEYsZUFBZSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlFLElBQUksS0FBSyxJQUFJLFlBQVksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQ3RELElBQUksY0FBYyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQzVDLElBQUksV0FBVyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDdEQsSUFBSSxVQUFVLEdBQUcsS0FBSyxDQUFDO2dCQUN2QixJQUFJLFFBQVEsR0FBVyxDQUFDLENBQUM7Z0JBQ3pCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO29CQUNyQyxJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUN6QixRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztvQkFDckIsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsSUFBSSxXQUFXLElBQUksUUFBUSxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO29CQUN4RSxJQUFJLFVBQVU7d0JBQ1osTUFBTTtpQkFDVDtnQkFDRCxJQUFJLFVBQVU7b0JBQ1osT0FBTyxXQUFXLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2FBQzNGO1NBQ0Y7UUFBQyxPQUFPLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM5QixDQUFDLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBYnN0cmFjdENvbnRyb2xcclxufSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuXHJcbmltcG9ydCB7IFJlZ2V4VmFsaWRhdG9yIH0gZnJvbSBcIi4uL3V0aWwvcmVnZXgtdmFsaWRhdG9yXCI7XHJcbmltcG9ydCB7IE9iamVjdE1ha2VyIH0gZnJvbSBcIi4uL3V0aWwvb2JqZWN0LW1ha2VyXCI7XHJcbmltcG9ydCB7IFNpemVDb25maWcgfSBmcm9tIFwiLi4vbW9kZWxzL2NvbmZpZy9zaXplLWNvbmZpZ1wiO1xyXG5pbXBvcnQgeyBBbm5vdGF0aW9uVHlwZXMgfSBmcm9tIFwiLi4vY29yZS92YWxpZGF0b3Iuc3RhdGljXCI7XHJcbmltcG9ydCB7IEZvcm1Qcm92aWRlciB9IGZyb20gJy4uL3V0aWwvZm9ybS1wcm92aWRlcic7XHJcbmltcG9ydCB7IEFwcGxpY2F0aW9uVXRpbCB9IGZyb20gJy4uL3V0aWwvYXBwLXV0aWwnO1xyXG5pbXBvcnQge2dldENvbmZpZ09iamVjdH0gZnJvbSBcIi4uL3V0aWwvY29uZmlnLXByb3ZpZGVyXCI7XHJcbmltcG9ydCB7IFZBTElEQVRPUl9DT05GSUcgfSBmcm9tIFwiLi4vY29uc3QvYXBwLmNvbnN0XCI7XHJcbmV4cG9ydCBmdW5jdGlvbiBmaWxlU2l6ZVZhbGlkYXRvcihjb25maWdNb2RlbDogU2l6ZUNvbmZpZyk6IGFueSB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wsIGZpbGVzOiBGaWxlTGlzdCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPT4ge1xyXG4gICAgbGV0IGNvbmZpZyA9IGdldENvbmZpZ09iamVjdChjb25maWdNb2RlbCxjb250cm9sKTtcclxuICAgIGlmICghY29udHJvbFtWQUxJREFUT1JfQ09ORklHXSB8fCAhY29udHJvbFtWQUxJREFUT1JfQ09ORklHXVtBbm5vdGF0aW9uVHlwZXMuZmlsZVNpemVdKVxyXG4gICAgICBBcHBsaWNhdGlvblV0aWwuY29uZmlndXJlQ29udHJvbChjb250cm9sLCBjb25maWcsIEFubm90YXRpb25UeXBlcy5maWxlU2l6ZSk7XHJcbiAgICBpZiAoZmlsZXMgJiYgRm9ybVByb3ZpZGVyLlByb2Nlc3NSdWxlKGNvbnRyb2wsIGNvbmZpZykpIHtcclxuICAgICAgaWYgKFJlZ2V4VmFsaWRhdG9yLmlzTm90QmxhbmsoY29udHJvbC52YWx1ZSkpIHtcclxuICAgICAgICBsZXQgbWluRmlsZVNpemUgPSBjb25maWcubWluU2l6ZSA/IGNvbmZpZy5taW5TaXplIDogMDtcclxuICAgICAgICBsZXQgdGVzdFJlc3VsdCA9IGZhbHNlO1xyXG4gICAgICAgIGxldCBmaWxlU2l6ZTogbnVtYmVyID0gMDtcclxuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGZpbGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICBsZXQgZmlsZSA9IGZpbGVzLml0ZW0oaSk7XHJcbiAgICAgICAgICBmaWxlU2l6ZSA9IGZpbGUuc2l6ZTtcclxuICAgICAgICAgIHRlc3RSZXN1bHQgPSAoIShmaWxlU2l6ZSA+PSBtaW5GaWxlU2l6ZSAmJiBmaWxlU2l6ZSA8PSBjb25maWcubWF4U2l6ZSkpO1xyXG4gICAgICAgICAgaWYgKHRlc3RSZXN1bHQpXHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGVzdFJlc3VsdClcclxuICAgICAgICAgIHJldHVybiBPYmplY3RNYWtlci50b0pzb24oQW5ub3RhdGlvblR5cGVzLmZpbGVTaXplLCBjb25maWcsIFtmaWxlU2l6ZSwgY29uZmlnLm1heFNpemVdKTtcclxuICAgICAgfVxyXG4gICAgfSByZXR1cm4gT2JqZWN0TWFrZXIubnVsbCgpO1xyXG4gIH1cclxufVxyXG4iXX0=