@messaia/cdk 12.3.5-rc21 → 13.0.0-rc02

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 (1093) hide show
  1. package/esm2020/lib/base/base.module.mjs +64 -0
  2. package/esm2020/lib/base/components/base.component.mjs +436 -0
  3. package/esm2020/lib/base/components/generic-form.component.mjs +482 -0
  4. package/esm2020/lib/base/components/generic-list.component.mjs +461 -0
  5. package/{esm2015/lib/base/constants/common.js → esm2020/lib/base/constants/common.mjs} +0 -0
  6. package/{esm2015/lib/base/enums/message-type.js → esm2020/lib/base/enums/message-type.mjs} +0 -0
  7. package/{esm2015/lib/base/helpers/auth-helper.js → esm2020/lib/base/helpers/auth-helper.mjs} +0 -0
  8. package/esm2020/lib/base/interceptors/base.interceptor.mjs +138 -0
  9. package/esm2020/lib/base/interceptors/caching-interceptor.mjs +68 -0
  10. package/esm2020/lib/base/interceptors/loading.interceptor.mjs +63 -0
  11. package/{esm2015/lib/base/models/auth-user.js → esm2020/lib/base/models/auth-user.mjs} +0 -0
  12. package/{esm2015/lib/base/public_api.js → esm2020/lib/base/public_api.mjs} +0 -0
  13. package/esm2020/lib/base/services/file.service.mjs +18 -0
  14. package/esm2020/lib/base/services/loading-screen.service.mjs +47 -0
  15. package/esm2020/lib/base/services/print.service.mjs +40 -0
  16. package/esm2020/lib/chips/chips.module.mjs +63 -0
  17. package/esm2020/lib/chips/components/chips.component.mjs +419 -0
  18. package/esm2020/lib/chips/public_api.mjs +3 -0
  19. package/{esm2015/lib/common/animations/collapse/collapse.animation.js → esm2020/lib/common/animations/collapse/collapse.animation.mjs} +0 -0
  20. package/{esm2015/lib/common/animations/common/interfaces.js → esm2020/lib/common/animations/common/interfaces.mjs} +0 -0
  21. package/{esm2015/lib/common/behaviors/constructor.js → esm2020/lib/common/behaviors/constructor.mjs} +0 -0
  22. package/esm2020/lib/common/behaviors/control-value-accesor.mixin.mjs +39 -0
  23. package/{esm2015/lib/common/behaviors/disabled.mixin.js → esm2020/lib/common/behaviors/disabled.mixin.mjs} +0 -0
  24. package/esm2020/lib/common/common.module.mjs +118 -0
  25. package/{esm2015/lib/common/constants/constants.js → esm2020/lib/common/constants/constants.mjs} +0 -0
  26. package/esm2020/lib/common/directives/disable-control.directive.mjs +34 -0
  27. package/{esm2015/lib/common/enums/salutation.js → esm2020/lib/common/enums/salutation.mjs} +0 -0
  28. package/{esm2015/lib/common/functions/decorators.js → esm2020/lib/common/functions/decorators.mjs} +0 -0
  29. package/{esm2015/lib/common/functions/functions.js → esm2020/lib/common/functions/functions.mjs} +0 -0
  30. package/esm2020/lib/common/functions/utils.mjs +161 -0
  31. package/esm2020/lib/common/helpers/app-storage.mjs +53 -0
  32. package/esm2020/lib/common/helpers/dynamic-builder.mjs +49 -0
  33. package/esm2020/lib/common/models/app-setting.mjs +10 -0
  34. package/{esm2015/lib/common/models/audit-user.js → esm2020/lib/common/models/audit-user.mjs} +0 -0
  35. package/{esm2015/lib/common/models/entity.js → esm2020/lib/common/models/entity.mjs} +0 -0
  36. package/{esm2015/lib/common/models/enum-item.js → esm2020/lib/common/models/enum-item.mjs} +0 -0
  37. package/{esm2015/lib/common/models/key-value.js → esm2020/lib/common/models/key-value.mjs} +0 -0
  38. package/{esm2015/lib/common/models/save-action.js → esm2020/lib/common/models/save-action.mjs} +0 -0
  39. package/esm2020/lib/common/pipes/data-source.pipe.mjs +15 -0
  40. package/esm2020/lib/common/pipes/enum.pipe.mjs +23 -0
  41. package/esm2020/lib/common/pipes/file-size.pipe.mjs +37 -0
  42. package/esm2020/lib/common/pipes/filter.pipe.mjs +23 -0
  43. package/esm2020/lib/common/pipes/first-letter.mjs +24 -0
  44. package/esm2020/lib/common/pipes/keys.mjs +18 -0
  45. package/esm2020/lib/common/pipes/month-name.pipe.mjs +27 -0
  46. package/esm2020/lib/common/pipes/only-number.mjs +53 -0
  47. package/esm2020/lib/common/pipes/order.pipe.mjs +183 -0
  48. package/esm2020/lib/common/pipes/placeholder.pipe.mjs +26 -0
  49. package/esm2020/lib/common/pipes/safe-html.pipe.mjs +31 -0
  50. package/esm2020/lib/common/pipes/time.pipe.mjs +20 -0
  51. package/esm2020/lib/common/pipes/titlecase.pipe.mjs +14 -0
  52. package/esm2020/lib/common/pipes/truncate.pipe.mjs +15 -0
  53. package/esm2020/lib/common/pipes/values.mjs +14 -0
  54. package/esm2020/lib/common/public_api.mjs +18 -0
  55. package/esm2020/lib/common/services/base.service.mjs +19 -0
  56. package/{esm2015/lib/common/services/context-helper.js → esm2020/lib/common/services/context-helper.mjs} +0 -0
  57. package/esm2020/lib/common/services/enum.service.mjs +44 -0
  58. package/{esm2015/lib/common/services/service-locator.js → esm2020/lib/common/services/service-locator.mjs} +0 -0
  59. package/esm2020/lib/dialogs/alert-dialog/alert-dialog.component.mjs +31 -0
  60. package/esm2020/lib/dialogs/confirm-dialog/confirm-dialog.component.mjs +37 -0
  61. package/esm2020/lib/dialogs/dialog.component.mjs +56 -0
  62. package/esm2020/lib/dialogs/dialogs.module.mjs +82 -0
  63. package/esm2020/lib/dialogs/prompt-dialog/prompt-dialog.component.mjs +40 -0
  64. package/{esm2015/lib/dialogs/public_api.js → esm2020/lib/dialogs/public_api.mjs} +0 -0
  65. package/esm2020/lib/dialogs/services/dialog.service.mjs +136 -0
  66. package/esm2020/lib/file/file-input.component.mjs +327 -0
  67. package/esm2020/lib/file/file.module.mjs +39 -0
  68. package/{esm2015/lib/file/public_api.js → esm2020/lib/file/public_api.mjs} +0 -0
  69. package/esm2020/lib/form-validators/abstract/typed-form.mjs +3 -0
  70. package/esm2020/lib/form-validators/algorithm/luhn-algorithm.mjs +15 -0
  71. package/esm2020/lib/form-validators/const/app-validators.const.mjs +68 -0
  72. package/esm2020/lib/form-validators/const/app.const.mjs +17 -0
  73. package/esm2020/lib/form-validators/const/config-names.const.mjs +9 -0
  74. package/esm2020/lib/form-validators/const/config-required-fields.const.mjs +11 -0
  75. package/esm2020/lib/form-validators/const/decorators.const.mjs +23 -0
  76. package/esm2020/lib/form-validators/const/events.const.mjs +14 -0
  77. package/esm2020/lib/form-validators/const/html-elements.const.mjs +7 -0
  78. package/esm2020/lib/form-validators/const/iban-country-wise-regex.const.mjs +80 -0
  79. package/esm2020/lib/form-validators/const/index.mjs +6 -0
  80. package/esm2020/lib/form-validators/const/operators.const.mjs +7 -0
  81. package/esm2020/lib/form-validators/const/validation-alphabet-locale.const.mjs +9 -0
  82. package/esm2020/lib/form-validators/const/validator.const.mjs +8 -0
  83. package/esm2020/lib/form-validators/core/defaultContainer.mjs +243 -0
  84. package/esm2020/lib/form-validators/core/validator.interface.mjs +2 -0
  85. package/esm2020/lib/form-validators/core/validator.static.mjs +74 -0
  86. package/esm2020/lib/form-validators/decorators/allOf.decorator.mjs +10 -0
  87. package/esm2020/lib/form-validators/decorators/alpha.decorator.mjs +10 -0
  88. package/esm2020/lib/form-validators/decorators/alphaNumeric.decorator.mjs +10 -0
  89. package/esm2020/lib/form-validators/decorators/and.decorator.mjs +6 -0
  90. package/esm2020/lib/form-validators/decorators/ascii.decorator.mjs +6 -0
  91. package/esm2020/lib/form-validators/decorators/async.decorator.mjs +6 -0
  92. package/esm2020/lib/form-validators/decorators/base-decorator.function.mjs +7 -0
  93. package/esm2020/lib/form-validators/decorators/choice.decorator.mjs +10 -0
  94. package/esm2020/lib/form-validators/decorators/compare.decorator.mjs +6 -0
  95. package/esm2020/lib/form-validators/decorators/compose.decorator.mjs +6 -0
  96. package/esm2020/lib/form-validators/decorators/contains.decorator.mjs +10 -0
  97. package/esm2020/lib/form-validators/decorators/credit-card.decorator.mjs +10 -0
  98. package/esm2020/lib/form-validators/decorators/cusip.decorator.mjs +6 -0
  99. package/esm2020/lib/form-validators/decorators/custom.decorator.mjs +10 -0
  100. package/esm2020/lib/form-validators/decorators/dataUri.decorator.mjs +6 -0
  101. package/esm2020/lib/form-validators/decorators/date.decorator.mjs +10 -0
  102. package/esm2020/lib/form-validators/decorators/different.decorator.mjs +6 -0
  103. package/esm2020/lib/form-validators/decorators/digit.decorator.mjs +6 -0
  104. package/esm2020/lib/form-validators/decorators/email.decorator.mjs +6 -0
  105. package/esm2020/lib/form-validators/decorators/endsWith.decorator.mjs +10 -0
  106. package/esm2020/lib/form-validators/decorators/even.decorator.mjs +6 -0
  107. package/esm2020/lib/form-validators/decorators/extension.decorator.mjs +10 -0
  108. package/esm2020/lib/form-validators/decorators/factor.decorator.mjs +10 -0
  109. package/esm2020/lib/form-validators/decorators/file.decorator.mjs +10 -0
  110. package/esm2020/lib/form-validators/decorators/fileSize.decorator.mjs +10 -0
  111. package/esm2020/lib/form-validators/decorators/greater-than-equal-to.decorator.mjs +10 -0
  112. package/esm2020/lib/form-validators/decorators/greater-than.decorator.mjs +10 -0
  113. package/esm2020/lib/form-validators/decorators/grid.decorator.mjs +6 -0
  114. package/esm2020/lib/form-validators/decorators/hexColor.decorator.mjs +6 -0
  115. package/esm2020/lib/form-validators/decorators/image.decorator.mjs +10 -0
  116. package/esm2020/lib/form-validators/decorators/index.mjs +91 -0
  117. package/esm2020/lib/form-validators/decorators/json.decorator.mjs +6 -0
  118. package/esm2020/lib/form-validators/decorators/latLong.decorator.mjs +6 -0
  119. package/esm2020/lib/form-validators/decorators/latitude.decorator.mjs +6 -0
  120. package/esm2020/lib/form-validators/decorators/leapYear.decorator.mjs +6 -0
  121. package/esm2020/lib/form-validators/decorators/less-than-equal-to.decorator.mjs +10 -0
  122. package/esm2020/lib/form-validators/decorators/less-than.decorator.mjs +10 -0
  123. package/esm2020/lib/form-validators/decorators/longitude.decorator.mjs +6 -0
  124. package/esm2020/lib/form-validators/decorators/lowercase.decorator.mjs +6 -0
  125. package/esm2020/lib/form-validators/decorators/mac.decorator.mjs +6 -0
  126. package/esm2020/lib/form-validators/decorators/mask.decorator.mjs +6 -0
  127. package/esm2020/lib/form-validators/decorators/maxDate.decorator.mjs +10 -0
  128. package/esm2020/lib/form-validators/decorators/maxLength.decorator.mjs +10 -0
  129. package/esm2020/lib/form-validators/decorators/maxNumber.decorator.mjs +10 -0
  130. package/esm2020/lib/form-validators/decorators/maxTime.decorator.mjs +10 -0
  131. package/esm2020/lib/form-validators/decorators/minDate.decorator.mjs +10 -0
  132. package/esm2020/lib/form-validators/decorators/minLength.decorator.mjs +10 -0
  133. package/esm2020/lib/form-validators/decorators/minNumber.decorator.mjs +10 -0
  134. package/esm2020/lib/form-validators/decorators/minTime.decorator.mjs +10 -0
  135. package/esm2020/lib/form-validators/decorators/model.decorator.mjs +7 -0
  136. package/esm2020/lib/form-validators/decorators/non-validation-decorators/disable.decorator.mjs +8 -0
  137. package/esm2020/lib/form-validators/decorators/non-validation-decorators/elementClass.decorator.mjs +8 -0
  138. package/esm2020/lib/form-validators/decorators/non-validation-decorators/error.decorator.mjs +8 -0
  139. package/esm2020/lib/form-validators/decorators/noneOf.decorator.mjs +10 -0
  140. package/esm2020/lib/form-validators/decorators/not.decorator.mjs +6 -0
  141. package/esm2020/lib/form-validators/decorators/notEmpty.decorator.mjs +6 -0
  142. package/esm2020/lib/form-validators/decorators/numeric.decorator.mjs +10 -0
  143. package/esm2020/lib/form-validators/decorators/odd.decorator.mjs +6 -0
  144. package/esm2020/lib/form-validators/decorators/oneOf.decorator.mjs +10 -0
  145. package/esm2020/lib/form-validators/decorators/or.decorator.mjs +6 -0
  146. package/esm2020/lib/form-validators/decorators/password.decorator.mjs +10 -0
  147. package/esm2020/lib/form-validators/decorators/pattern.decorator.mjs +10 -0
  148. package/esm2020/lib/form-validators/decorators/port.decorator.mjs +6 -0
  149. package/esm2020/lib/form-validators/decorators/primeNumber.decorator.mjs +6 -0
  150. package/esm2020/lib/form-validators/decorators/prop-array.decorator.mjs +18 -0
  151. package/esm2020/lib/form-validators/decorators/prop-object.decorator.mjs +8 -0
  152. package/esm2020/lib/form-validators/decorators/prop.decorator.mjs +16 -0
  153. package/esm2020/lib/form-validators/decorators/range.decorator.mjs +10 -0
  154. package/esm2020/lib/form-validators/decorators/required.decorator.mjs +6 -0
  155. package/esm2020/lib/form-validators/decorators/requiredTrue.decorator.mjs +6 -0
  156. package/esm2020/lib/form-validators/decorators/rule.decorator.mjs +6 -0
  157. package/esm2020/lib/form-validators/decorators/sanitize/blacklist.decorator.mjs +8 -0
  158. package/esm2020/lib/form-validators/decorators/sanitize/escape.decorator.mjs +8 -0
  159. package/esm2020/lib/form-validators/decorators/sanitize/ltrim.decorator.mjs +8 -0
  160. package/esm2020/lib/form-validators/decorators/sanitize/prefix.decorator.mjs +8 -0
  161. package/esm2020/lib/form-validators/decorators/sanitize/rtrim.decorator.mjs +8 -0
  162. package/esm2020/lib/form-validators/decorators/sanitize/sanitize.decorator.mjs +8 -0
  163. package/esm2020/lib/form-validators/decorators/sanitize/stripLow.decorator.mjs +8 -0
  164. package/esm2020/lib/form-validators/decorators/sanitize/suffix.decorator.mjs +8 -0
  165. package/esm2020/lib/form-validators/decorators/sanitize/toBoolean.decorator.mjs +8 -0
  166. package/esm2020/lib/form-validators/decorators/sanitize/toDate.decorator.mjs +8 -0
  167. package/esm2020/lib/form-validators/decorators/sanitize/toDouble.decorator.mjs +8 -0
  168. package/esm2020/lib/form-validators/decorators/sanitize/toFloat.decorator.mjs +8 -0
  169. package/esm2020/lib/form-validators/decorators/sanitize/toInt.decorator.mjs +8 -0
  170. package/esm2020/lib/form-validators/decorators/sanitize/toString.decorator.mjs +8 -0
  171. package/esm2020/lib/form-validators/decorators/sanitize/trim.decorator.mjs +8 -0
  172. package/esm2020/lib/form-validators/decorators/sanitize/whitelist.decorator.mjs +8 -0
  173. package/esm2020/lib/form-validators/decorators/startsWith.decorator.mjs +10 -0
  174. package/esm2020/lib/form-validators/decorators/time.decorator.mjs +10 -0
  175. package/esm2020/lib/form-validators/decorators/unique.decorator.mjs +6 -0
  176. package/esm2020/lib/form-validators/decorators/uppercase.decorator.mjs +6 -0
  177. package/esm2020/lib/form-validators/decorators/url.decorator.mjs +10 -0
  178. package/esm2020/lib/form-validators/directives/base-directive.mjs +43 -0
  179. package/esm2020/lib/form-validators/directives/control-host.directive.mjs +34 -0
  180. package/esm2020/lib/form-validators/directives/html-control-template.directive.mjs +20 -0
  181. package/esm2020/lib/form-validators/directives/rx-form.directive.mjs +134 -0
  182. package/esm2020/lib/form-validators/directives/template-validations/async-validation.directive.mjs +31 -0
  183. package/esm2020/lib/form-validators/directives/template-validations/base-validator.directive.mjs +42 -0
  184. package/esm2020/lib/form-validators/directives/template-validations/control-expression-process.mjs +26 -0
  185. package/esm2020/lib/form-validators/directives/template-validations/file-control.directive.mjs +91 -0
  186. package/esm2020/lib/form-validators/directives/template-validations/image-file-control.directive.mjs +50 -0
  187. package/esm2020/lib/form-validators/directives/template-validations/rxformcontrol.directive.mjs +277 -0
  188. package/esm2020/lib/form-validators/domain/disable-provider.mjs +93 -0
  189. package/esm2020/lib/form-validators/domain/element-processor/decimal.provider.mjs +59 -0
  190. package/esm2020/lib/form-validators/domain/element-processor/mask.provider.mjs +430 -0
  191. package/esm2020/lib/form-validators/domain/form-data.mjs +47 -0
  192. package/esm2020/lib/form-validators/enums/error-message-binding-strategy.mjs +11 -0
  193. package/esm2020/lib/form-validators/enums/index.mjs +5 -0
  194. package/esm2020/lib/form-validators/enums/ip-version.mjs +7 -0
  195. package/esm2020/lib/form-validators/enums/numeric-value-type.mjs +7 -0
  196. package/esm2020/lib/form-validators/enums/reset-type.mjs +10 -0
  197. package/esm2020/lib/form-validators/enums/url-validation-type.mjs +7 -0
  198. package/esm2020/lib/form-validators/models/config/alpha-config.mjs +2 -0
  199. package/esm2020/lib/form-validators/models/config/array-config.mjs +2 -0
  200. package/esm2020/lib/form-validators/models/config/base-config-fn.mjs +2 -0
  201. package/esm2020/lib/form-validators/models/config/base-config.mjs +2 -0
  202. package/esm2020/lib/form-validators/models/config/base-date-config.mjs +2 -0
  203. package/esm2020/lib/form-validators/models/config/choice-config.mjs +2 -0
  204. package/esm2020/lib/form-validators/models/config/compare-config.mjs +2 -0
  205. package/esm2020/lib/form-validators/models/config/component-config.mjs +2 -0
  206. package/esm2020/lib/form-validators/models/config/compose-config.mjs +2 -0
  207. package/esm2020/lib/form-validators/models/config/contains-config.mjs +2 -0
  208. package/esm2020/lib/form-validators/models/config/credit-card-config.mjs +2 -0
  209. package/esm2020/lib/form-validators/models/config/custom-config.mjs +2 -0
  210. package/esm2020/lib/form-validators/models/config/date-config.mjs +2 -0
  211. package/esm2020/lib/form-validators/models/config/default-config.mjs +2 -0
  212. package/esm2020/lib/form-validators/models/config/digit-config.mjs +2 -0
  213. package/esm2020/lib/form-validators/models/config/disable-config.mjs +2 -0
  214. package/esm2020/lib/form-validators/models/config/element-class-config.mjs +2 -0
  215. package/esm2020/lib/form-validators/models/config/email-config.mjs +2 -0
  216. package/esm2020/lib/form-validators/models/config/error-config.mjs +2 -0
  217. package/esm2020/lib/form-validators/models/config/extension-config.mjs +2 -0
  218. package/esm2020/lib/form-validators/models/config/factor-config.mjs +2 -0
  219. package/esm2020/lib/form-validators/models/config/field-config.mjs +2 -0
  220. package/esm2020/lib/form-validators/models/config/file-config.mjs +2 -0
  221. package/esm2020/lib/form-validators/models/config/hex-color-config.mjs +2 -0
  222. package/esm2020/lib/form-validators/models/config/iban-config.mjs +2 -0
  223. package/esm2020/lib/form-validators/models/config/image-config.mjs +2 -0
  224. package/esm2020/lib/form-validators/models/config/index.mjs +35 -0
  225. package/esm2020/lib/form-validators/models/config/ip-config.mjs +2 -0
  226. package/esm2020/lib/form-validators/models/config/logical-operator-config.mjs +2 -0
  227. package/esm2020/lib/form-validators/models/config/mask-config.mjs +2 -0
  228. package/esm2020/lib/form-validators/models/config/max-date-config.mjs +2 -0
  229. package/esm2020/lib/form-validators/models/config/message-config.mjs +2 -0
  230. package/esm2020/lib/form-validators/models/config/min-date-config.mjs +2 -0
  231. package/esm2020/lib/form-validators/models/config/model-config.mjs +2 -0
  232. package/esm2020/lib/form-validators/models/config/number-config.mjs +2 -0
  233. package/esm2020/lib/form-validators/models/config/numeric-config.mjs +2 -0
  234. package/esm2020/lib/form-validators/models/config/password-config.mjs +2 -0
  235. package/esm2020/lib/form-validators/models/config/pattern-config.mjs +2 -0
  236. package/esm2020/lib/form-validators/models/config/prop-config.mjs +2 -0
  237. package/esm2020/lib/form-validators/models/config/props-config.mjs +2 -0
  238. package/esm2020/lib/form-validators/models/config/range-config.mjs +2 -0
  239. package/esm2020/lib/form-validators/models/config/relational-operator-config.mjs +2 -0
  240. package/esm2020/lib/form-validators/models/config/required-config.mjs +2 -0
  241. package/esm2020/lib/form-validators/models/config/rule-config.mjs +2 -0
  242. package/esm2020/lib/form-validators/models/config/sanitize-config.mjs +2 -0
  243. package/esm2020/lib/form-validators/models/config/size-config.mjs +2 -0
  244. package/esm2020/lib/form-validators/models/config/string-comparison-config.mjs +2 -0
  245. package/esm2020/lib/form-validators/models/config/time-config.mjs +2 -0
  246. package/esm2020/lib/form-validators/models/config/todate-config.mjs +2 -0
  247. package/esm2020/lib/form-validators/models/config/unique-config.mjs +2 -0
  248. package/esm2020/lib/form-validators/models/config/url-config.mjs +2 -0
  249. package/esm2020/lib/form-validators/models/form-builder-configuration.mjs +8 -0
  250. package/esm2020/lib/form-validators/models/index.mjs +3 -0
  251. package/esm2020/lib/form-validators/models/interface/array-prop-instance-config.interface.mjs +2 -0
  252. package/esm2020/lib/form-validators/models/interface/auto-instance-config.interface.mjs +2 -0
  253. package/esm2020/lib/form-validators/models/interface/form-data-config.mjs +2 -0
  254. package/esm2020/lib/form-validators/models/interface/i-abstract-control.mjs +4 -0
  255. package/esm2020/lib/form-validators/models/interface/i-form-group.mjs +2 -0
  256. package/esm2020/lib/form-validators/models/interface/instance-argument.interface.mjs +2 -0
  257. package/esm2020/lib/form-validators/models/interface/object-prop-instance-config.interface.mjs +2 -0
  258. package/esm2020/lib/form-validators/models/interface/options.mjs +2 -0
  259. package/esm2020/lib/form-validators/models/password-validation.model.mjs +2 -0
  260. package/esm2020/lib/form-validators/models/prop-validation-config.mjs +2 -0
  261. package/esm2020/lib/form-validators/public_api.mjs +25 -0
  262. package/esm2020/lib/form-validators/reactive-form-validators/allOf.validator.mjs +22 -0
  263. package/esm2020/lib/form-validators/reactive-form-validators/alpha.validator.mjs +9 -0
  264. package/esm2020/lib/form-validators/reactive-form-validators/alphaNumeric.validator.mjs +9 -0
  265. package/esm2020/lib/form-validators/reactive-form-validators/and.validator.mjs +23 -0
  266. package/esm2020/lib/form-validators/reactive-form-validators/ascii.validator.mjs +9 -0
  267. package/esm2020/lib/form-validators/reactive-form-validators/async/base.async.validator.mjs +24 -0
  268. package/esm2020/lib/form-validators/reactive-form-validators/choice.validator.mjs +19 -0
  269. package/esm2020/lib/form-validators/reactive-form-validators/compare.validator.mjs +20 -0
  270. package/esm2020/lib/form-validators/reactive-form-validators/compose.validator.mjs +23 -0
  271. package/esm2020/lib/form-validators/reactive-form-validators/conditional-change.validator.mjs +63 -0
  272. package/esm2020/lib/form-validators/reactive-form-validators/contains.validator.mjs +15 -0
  273. package/esm2020/lib/form-validators/reactive-form-validators/credit-card.validator.mjs +48 -0
  274. package/esm2020/lib/form-validators/reactive-form-validators/cusip.validator.mjs +38 -0
  275. package/esm2020/lib/form-validators/reactive-form-validators/custom.validator.mjs +23 -0
  276. package/esm2020/lib/form-validators/reactive-form-validators/dataUri.validator.mjs +9 -0
  277. package/esm2020/lib/form-validators/reactive-form-validators/date.validator.mjs +8 -0
  278. package/esm2020/lib/form-validators/reactive-form-validators/different.validator.mjs +19 -0
  279. package/esm2020/lib/form-validators/reactive-form-validators/digit.validator.mjs +9 -0
  280. package/esm2020/lib/form-validators/reactive-form-validators/email.validator.mjs +9 -0
  281. package/esm2020/lib/form-validators/reactive-form-validators/endsWith.validator.mjs +16 -0
  282. package/esm2020/lib/form-validators/reactive-form-validators/even.validator.mjs +15 -0
  283. package/esm2020/lib/form-validators/reactive-form-validators/extension.validator.mjs +40 -0
  284. package/esm2020/lib/form-validators/reactive-form-validators/factor.validator.mjs +37 -0
  285. package/esm2020/lib/form-validators/reactive-form-validators/file.validator.mjs +26 -0
  286. package/esm2020/lib/form-validators/reactive-form-validators/fileSize.validator.mjs +32 -0
  287. package/esm2020/lib/form-validators/reactive-form-validators/greater-than-equal-to.validator.mjs +8 -0
  288. package/esm2020/lib/form-validators/reactive-form-validators/greater-than.validator.mjs +8 -0
  289. package/esm2020/lib/form-validators/reactive-form-validators/grid.validator.mjs +31 -0
  290. package/esm2020/lib/form-validators/reactive-form-validators/hexcolor.validator.mjs +9 -0
  291. package/esm2020/lib/form-validators/reactive-form-validators/iban.validator.mjs +30 -0
  292. package/esm2020/lib/form-validators/reactive-form-validators/image.validator.mjs +48 -0
  293. package/esm2020/lib/form-validators/reactive-form-validators/index.mjs +66 -0
  294. package/esm2020/lib/form-validators/reactive-form-validators/ip.validator.mjs +35 -0
  295. package/esm2020/lib/form-validators/reactive-form-validators/json.validator.mjs +26 -0
  296. package/esm2020/lib/form-validators/reactive-form-validators/latLong.validator.mjs +18 -0
  297. package/esm2020/lib/form-validators/reactive-form-validators/latitude.validator.mjs +9 -0
  298. package/esm2020/lib/form-validators/reactive-form-validators/leapYear.validator.mjs +16 -0
  299. package/esm2020/lib/form-validators/reactive-form-validators/less-than-equal-to.validator.mjs +8 -0
  300. package/esm2020/lib/form-validators/reactive-form-validators/less-than.validator.mjs +8 -0
  301. package/esm2020/lib/form-validators/reactive-form-validators/longitude.validator.mjs +9 -0
  302. package/esm2020/lib/form-validators/reactive-form-validators/lowercase.validator.mjs +15 -0
  303. package/esm2020/lib/form-validators/reactive-form-validators/mac.validator.mjs +9 -0
  304. package/esm2020/lib/form-validators/reactive-form-validators/mask.validator.mjs +13 -0
  305. package/esm2020/lib/form-validators/reactive-form-validators/maxDate.validator.mjs +8 -0
  306. package/esm2020/lib/form-validators/reactive-form-validators/maxLength.validator.mjs +16 -0
  307. package/esm2020/lib/form-validators/reactive-form-validators/maxNumber.validator.mjs +16 -0
  308. package/esm2020/lib/form-validators/reactive-form-validators/maxTime.validator.mjs +8 -0
  309. package/esm2020/lib/form-validators/reactive-form-validators/minDate.validator.mjs +8 -0
  310. package/esm2020/lib/form-validators/reactive-form-validators/minLength.validator.mjs +16 -0
  311. package/esm2020/lib/form-validators/reactive-form-validators/minNumber.validator.mjs +16 -0
  312. package/esm2020/lib/form-validators/reactive-form-validators/minTime.validator.mjs +8 -0
  313. package/esm2020/lib/form-validators/reactive-form-validators/noneOf.validator.mjs +24 -0
  314. package/esm2020/lib/form-validators/reactive-form-validators/not.validator.mjs +23 -0
  315. package/esm2020/lib/form-validators/reactive-form-validators/notEmpty.validator.mjs +17 -0
  316. package/esm2020/lib/form-validators/reactive-form-validators/numeric.validator.mjs +20 -0
  317. package/esm2020/lib/form-validators/reactive-form-validators/odd.validator.mjs +16 -0
  318. package/esm2020/lib/form-validators/reactive-form-validators/oneOf.validator.mjs +22 -0
  319. package/esm2020/lib/form-validators/reactive-form-validators/or.validator.mjs +23 -0
  320. package/esm2020/lib/form-validators/reactive-form-validators/password.validator.mjs +33 -0
  321. package/esm2020/lib/form-validators/reactive-form-validators/pattern.validator.mjs +17 -0
  322. package/esm2020/lib/form-validators/reactive-form-validators/port.validator.mjs +18 -0
  323. package/esm2020/lib/form-validators/reactive-form-validators/primeNumber.validator.mjs +26 -0
  324. package/esm2020/lib/form-validators/reactive-form-validators/range.validator.mjs +16 -0
  325. package/esm2020/lib/form-validators/reactive-form-validators/required.validator.mjs +17 -0
  326. package/esm2020/lib/form-validators/reactive-form-validators/requiredTrue.validator.mjs +16 -0
  327. package/esm2020/lib/form-validators/reactive-form-validators/rule.validator.mjs +20 -0
  328. package/esm2020/lib/form-validators/reactive-form-validators/startsWith.validator.mjs +16 -0
  329. package/esm2020/lib/form-validators/reactive-form-validators/time.validator.mjs +18 -0
  330. package/esm2020/lib/form-validators/reactive-form-validators/unique.validator.mjs +70 -0
  331. package/esm2020/lib/form-validators/reactive-form-validators/uppercase.validator.mjs +15 -0
  332. package/esm2020/lib/form-validators/reactive-form-validators/url.validator.mjs +28 -0
  333. package/esm2020/lib/form-validators/services/base-form-builder.mjs +115 -0
  334. package/esm2020/lib/form-validators/services/entity.service.mjs +64 -0
  335. package/esm2020/lib/form-validators/services/form-control.mjs +349 -0
  336. package/esm2020/lib/form-validators/services/form-group.mjs +2 -0
  337. package/esm2020/lib/form-validators/services/reactive-form.module.mjs +52 -0
  338. package/esm2020/lib/form-validators/services/rx-form-array.mjs +100 -0
  339. package/esm2020/lib/form-validators/services/rx-form-builder.mjs +559 -0
  340. package/esm2020/lib/form-validators/services/rx-form-group.mjs +299 -0
  341. package/esm2020/lib/form-validators/services/typed-form-builder.mjs +23 -0
  342. package/esm2020/lib/form-validators/util/alphabet-regex.locale.mjs +29 -0
  343. package/esm2020/lib/form-validators/util/app-util.mjs +141 -0
  344. package/esm2020/lib/form-validators/util/check-length.mjs +10 -0
  345. package/esm2020/lib/form-validators/util/config-provider.mjs +35 -0
  346. package/esm2020/lib/form-validators/util/date-checker.function.mjs +52 -0
  347. package/esm2020/lib/form-validators/util/date-provider.mjs +97 -0
  348. package/esm2020/lib/form-validators/util/form-const.mjs +3 -0
  349. package/esm2020/lib/form-validators/util/form-provider.mjs +37 -0
  350. package/esm2020/lib/form-validators/util/index.mjs +7 -0
  351. package/esm2020/lib/form-validators/util/instance-provider.function.mjs +30 -0
  352. package/esm2020/lib/form-validators/util/ip-checker.mjs +18 -0
  353. package/esm2020/lib/form-validators/util/linq.mjs +147 -0
  354. package/esm2020/lib/form-validators/util/object-maker.mjs +38 -0
  355. package/esm2020/lib/form-validators/util/reactive-form-config.mjs +23 -0
  356. package/esm2020/lib/form-validators/util/regex-rules.mjs +37 -0
  357. package/esm2020/lib/form-validators/util/regex-validator.mjs +74 -0
  358. package/esm2020/lib/form-validators/util/relational-checker.function.mjs +85 -0
  359. package/esm2020/lib/form-validators/util/reset-form.mjs +56 -0
  360. package/esm2020/lib/form-validators/util/sanitizers.mjs +131 -0
  361. package/esm2020/lib/form-validators/util/time-checker.function.mjs +48 -0
  362. package/esm2020/lib/form-validators/util/type.mjs +2 -0
  363. package/esm2020/lib/form-validators/util/validator-value-checker.mjs +17 -0
  364. package/esm2020/lib/form-validators/validators-extension/allOf-validator.extension.mjs +11 -0
  365. package/esm2020/lib/form-validators/validators-extension/alpha-validator.extension.mjs +11 -0
  366. package/esm2020/lib/form-validators/validators-extension/alphaNumeric-validator.extension.mjs +11 -0
  367. package/esm2020/lib/form-validators/validators-extension/and-validator.extension.mjs +7 -0
  368. package/esm2020/lib/form-validators/validators-extension/ascii-validator.extension.mjs +7 -0
  369. package/esm2020/lib/form-validators/validators-extension/base-validator.function.mjs +33 -0
  370. package/esm2020/lib/form-validators/validators-extension/choice-validator.extension.mjs +11 -0
  371. package/esm2020/lib/form-validators/validators-extension/compare-validator.extension.mjs +7 -0
  372. package/esm2020/lib/form-validators/validators-extension/compose-validator.extension.mjs +7 -0
  373. package/esm2020/lib/form-validators/validators-extension/contains-validator.extension.mjs +11 -0
  374. package/esm2020/lib/form-validators/validators-extension/credit-card-validator.extension.mjs +11 -0
  375. package/esm2020/lib/form-validators/validators-extension/cusip-validator.extension.mjs +7 -0
  376. package/esm2020/lib/form-validators/validators-extension/custom-validator.extension.mjs +11 -0
  377. package/esm2020/lib/form-validators/validators-extension/dataUri-validator.extension.mjs +7 -0
  378. package/esm2020/lib/form-validators/validators-extension/date-validator.extension.mjs +11 -0
  379. package/esm2020/lib/form-validators/validators-extension/different-validator.extension.mjs +7 -0
  380. package/esm2020/lib/form-validators/validators-extension/digit-validator.extension.mjs +7 -0
  381. package/esm2020/lib/form-validators/validators-extension/email-validator.extension.mjs +7 -0
  382. package/esm2020/lib/form-validators/validators-extension/endsWith-validator.extension.mjs +11 -0
  383. package/esm2020/lib/form-validators/validators-extension/even-validator.extension.mjs +7 -0
  384. package/esm2020/lib/form-validators/validators-extension/extension-validator.extension.mjs +10 -0
  385. package/esm2020/lib/form-validators/validators-extension/factor-validator.extension.mjs +11 -0
  386. package/esm2020/lib/form-validators/validators-extension/file-validator.extension.mjs +10 -0
  387. package/esm2020/lib/form-validators/validators-extension/fileSize-validator.extension.mjs +10 -0
  388. package/esm2020/lib/form-validators/validators-extension/greater-than-equal-to-validator.extension.mjs +11 -0
  389. package/esm2020/lib/form-validators/validators-extension/greater-than-validator.extension.mjs +11 -0
  390. package/esm2020/lib/form-validators/validators-extension/grid-validator.extension.mjs +7 -0
  391. package/esm2020/lib/form-validators/validators-extension/hexcolor-validator.extension.mjs +7 -0
  392. package/esm2020/lib/form-validators/validators-extension/iban-validator.extension.mjs +11 -0
  393. package/esm2020/lib/form-validators/validators-extension/image-validator.extension.mjs +10 -0
  394. package/esm2020/lib/form-validators/validators-extension/index.mjs +68 -0
  395. package/esm2020/lib/form-validators/validators-extension/ip-validator.extension.mjs +11 -0
  396. package/esm2020/lib/form-validators/validators-extension/json-validator.extension.mjs +7 -0
  397. package/esm2020/lib/form-validators/validators-extension/latLong-validator.extension.mjs +7 -0
  398. package/esm2020/lib/form-validators/validators-extension/latitude-validator.extension.mjs +7 -0
  399. package/esm2020/lib/form-validators/validators-extension/leapYear-validator.extension.mjs +7 -0
  400. package/esm2020/lib/form-validators/validators-extension/less-than-equal-to-validator.extension.mjs +11 -0
  401. package/esm2020/lib/form-validators/validators-extension/less-than-validator.extension.mjs +11 -0
  402. package/esm2020/lib/form-validators/validators-extension/longitude-validator.extension.mjs +7 -0
  403. package/esm2020/lib/form-validators/validators-extension/lowercase-validator.extension.mjs +7 -0
  404. package/esm2020/lib/form-validators/validators-extension/mac-validator.extension.mjs +7 -0
  405. package/esm2020/lib/form-validators/validators-extension/mask-validator.extension.mjs +7 -0
  406. package/esm2020/lib/form-validators/validators-extension/maxDate-validator.extension.mjs +11 -0
  407. package/esm2020/lib/form-validators/validators-extension/maxLength-validator.extension.mjs +11 -0
  408. package/esm2020/lib/form-validators/validators-extension/maxNumber-validator.extension.mjs +11 -0
  409. package/esm2020/lib/form-validators/validators-extension/maxTime-validator.extension.mjs +11 -0
  410. package/esm2020/lib/form-validators/validators-extension/minDate-validator.extension.mjs +11 -0
  411. package/esm2020/lib/form-validators/validators-extension/minLength-validator.extension.mjs +11 -0
  412. package/esm2020/lib/form-validators/validators-extension/minNumber-validator.extension.mjs +11 -0
  413. package/esm2020/lib/form-validators/validators-extension/minTime-validator.extension.mjs +11 -0
  414. package/esm2020/lib/form-validators/validators-extension/noneOf-validator.extension.mjs +11 -0
  415. package/esm2020/lib/form-validators/validators-extension/not-validator.extension.mjs +7 -0
  416. package/esm2020/lib/form-validators/validators-extension/notEmpty-validator.extension.mjs +7 -0
  417. package/esm2020/lib/form-validators/validators-extension/numeric-validator.extension.mjs +11 -0
  418. package/esm2020/lib/form-validators/validators-extension/odd-validator.extension.mjs +7 -0
  419. package/esm2020/lib/form-validators/validators-extension/oneOf-validator.extension.mjs +11 -0
  420. package/esm2020/lib/form-validators/validators-extension/or-validator.extension.mjs +7 -0
  421. package/esm2020/lib/form-validators/validators-extension/password-validator.extension.mjs +11 -0
  422. package/esm2020/lib/form-validators/validators-extension/pattern-validator.extension.mjs +11 -0
  423. package/esm2020/lib/form-validators/validators-extension/port-validator.extension.mjs +7 -0
  424. package/esm2020/lib/form-validators/validators-extension/primeNumber-validator.extension.mjs +7 -0
  425. package/esm2020/lib/form-validators/validators-extension/range-validator.extension.mjs +11 -0
  426. package/esm2020/lib/form-validators/validators-extension/required-validator.extension.mjs +7 -0
  427. package/esm2020/lib/form-validators/validators-extension/requiredTrue-validator.extension.mjs +7 -0
  428. package/esm2020/lib/form-validators/validators-extension/rxweb-validators.mjs +108 -0
  429. package/esm2020/lib/form-validators/validators-extension/startsWith-validator.extension.mjs +11 -0
  430. package/esm2020/lib/form-validators/validators-extension/time-validator.extension.mjs +11 -0
  431. package/esm2020/lib/form-validators/validators-extension/unique-validator.extension.mjs +7 -0
  432. package/esm2020/lib/form-validators/validators-extension/uppercase-validator.extension.mjs +7 -0
  433. package/esm2020/lib/form-validators/validators-extension/url-validator.extension.mjs +11 -0
  434. package/esm2020/lib/form-validators/validators-function/alpha-validation.function.mjs +37 -0
  435. package/esm2020/lib/form-validators/validators-function/regex-validation.function.mjs +16 -0
  436. package/esm2020/lib/forms/components/generic-form/generic-form.component.mjs +131 -0
  437. package/{esm2015/lib/forms/constants/constants.js → esm2020/lib/forms/constants/constants.mjs} +0 -0
  438. package/esm2020/lib/forms/directives/mat-form-field-readonly.directive.mjs +33 -0
  439. package/{esm2015/lib/forms/enums/form-field-type.js → esm2020/lib/forms/enums/form-field-type.mjs} +0 -0
  440. package/esm2020/lib/forms/forms.module.mjs +122 -0
  441. package/esm2020/lib/forms/functions/decorators.mjs +127 -0
  442. package/{esm2015/lib/forms/functions/functions.js → esm2020/lib/forms/functions/functions.mjs} +0 -0
  443. package/esm2020/lib/forms/helpers/abstract-mat-form-field.mjs +251 -0
  444. package/esm2020/lib/forms/helpers/value-accessor-base.mjs +141 -0
  445. package/{esm2015/lib/forms/models/form-field-definition.js → esm2020/lib/forms/models/form-field-definition.mjs} +0 -0
  446. package/{esm2015/lib/forms/models/form-field-group.js → esm2020/lib/forms/models/form-field-group.mjs} +0 -0
  447. package/esm2020/lib/forms/public_api.mjs +4 -0
  448. package/esm2020/lib/forms/validators/equal-validator.directive.mjs +79 -0
  449. package/esm2020/lib/forms/validators/native-element-injector.directive.mjs +32 -0
  450. package/esm2020/lib/forms/validators/unique-validator-directive.mjs +75 -0
  451. package/esm2020/lib/http/http.module.mjs +20 -0
  452. package/{esm2015/lib/http/public_api.js → esm2020/lib/http/public_api.mjs} +0 -0
  453. package/{esm2015/lib/http/services/generic.service.js → esm2020/lib/http/services/generic.service.mjs} +0 -0
  454. package/esm2020/lib/layout/layout-card-over/layout-card-over.component.mjs +43 -0
  455. package/esm2020/lib/layout/layout-footer/layout-footer.component.mjs +34 -0
  456. package/esm2020/lib/layout/layout-manage-list/layout-manage-list.component.mjs +128 -0
  457. package/esm2020/lib/layout/layout-manage-list/layout-manage-list.directives.mjs +81 -0
  458. package/esm2020/lib/layout/layout-nav/layout-nav.component.mjs +62 -0
  459. package/esm2020/lib/layout/layout-nav-list/layout-nav-list.component.mjs +123 -0
  460. package/esm2020/lib/layout/layout-nav-list/layout-nav-list.directives.mjs +81 -0
  461. package/esm2020/lib/layout/layout-toggle.class.mjs +71 -0
  462. package/esm2020/lib/layout/layout.component.mjs +82 -0
  463. package/esm2020/lib/layout/layout.directives.mjs +81 -0
  464. package/esm2020/lib/layout/layout.module.mjs +118 -0
  465. package/esm2020/lib/layout/navigation-drawer/navigation-drawer.component.mjs +167 -0
  466. package/{esm2015/lib/layout/public_api.js → esm2020/lib/layout/public_api.mjs} +0 -0
  467. package/esm2020/lib/media/directives/media-toggle.directive.mjs +115 -0
  468. package/esm2020/lib/media/media.module.mjs +37 -0
  469. package/{esm2015/lib/media/public_api.js → esm2020/lib/media/public_api.mjs} +0 -0
  470. package/esm2020/lib/media/services/media.service.mjs +108 -0
  471. package/esm2020/lib/menu/components/menu.component.mjs +52 -0
  472. package/{esm2015/lib/menu/enums/menu-scope.js → esm2020/lib/menu/enums/menu-scope.mjs} +0 -0
  473. package/esm2020/lib/menu/menu.module.mjs +50 -0
  474. package/{esm2015/lib/menu/models/menu-item.js → esm2020/lib/menu/models/menu-item.mjs} +0 -0
  475. package/{esm2015/lib/menu/models/menu.js → esm2020/lib/menu/models/menu.mjs} +0 -0
  476. package/{esm2015/lib/menu/public_api.js → esm2020/lib/menu/public_api.mjs} +0 -0
  477. package/esm2020/lib/menu/services/menu-items.service.mjs +19 -0
  478. package/esm2020/lib/menu/services/menu.resolve.mjs +55 -0
  479. package/esm2020/lib/menu/services/menu.service.mjs +19 -0
  480. package/{esm2015/lib/search/public_api.js → esm2020/lib/search/public_api.mjs} +0 -0
  481. package/esm2020/lib/search/search.module.mjs +47 -0
  482. package/esm2020/lib/search/vd-search-box/vd-search-box.component.mjs +143 -0
  483. package/esm2020/lib/search/vd-search-input/vd-search-input.component.mjs +148 -0
  484. package/esm2020/lib/select/public_api.mjs +3 -0
  485. package/esm2020/lib/select/select.component.mjs +407 -0
  486. package/esm2020/lib/select/select.module.mjs +45 -0
  487. package/esm2020/lib/table/components/dynamic-table/dynamic-table.component.mjs +301 -0
  488. package/esm2020/lib/table/components/filter-clear.component.mjs +44 -0
  489. package/esm2020/lib/table/components/filter-date.component.mjs +151 -0
  490. package/esm2020/lib/table/components/filter-input.component.mjs +198 -0
  491. package/esm2020/lib/table/components/filter-select.component.mjs +334 -0
  492. package/esm2020/lib/table/directives/data-source-filter.directive.mjs +45 -0
  493. package/{esm2015/lib/table/enums/table-column-type.js → esm2020/lib/table/enums/table-column-type.mjs} +0 -0
  494. package/esm2020/lib/table/functions/decorators.mjs +135 -0
  495. package/esm2020/lib/table/functions/functions.mjs +15 -0
  496. package/{esm2015/lib/table/models/pagination.js → esm2020/lib/table/models/pagination.mjs} +0 -0
  497. package/{esm2015/lib/table/models/table-column.js → esm2020/lib/table/models/table-column.mjs} +0 -0
  498. package/{esm2015/lib/table/models/table-definition.js → esm2020/lib/table/models/table-definition.mjs} +0 -0
  499. package/{esm2015/lib/table/models/table-menu-item.js → esm2020/lib/table/models/table-menu-item.mjs} +0 -0
  500. package/esm2020/lib/table/paginator-intl.mjs +44 -0
  501. package/esm2020/lib/table/public_api.mjs +3 -0
  502. package/esm2020/lib/table/table.data-source.mjs +210 -0
  503. package/esm2020/lib/table/table.module.mjs +140 -0
  504. package/esm2020/lib/table/table.static-data-source.mjs +133 -0
  505. package/esm2020/messaia-cdk.mjs +5 -0
  506. package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
  507. package/fesm2015/messaia-cdk.mjs +15946 -0
  508. package/fesm2015/messaia-cdk.mjs.map +1 -0
  509. package/fesm2020/messaia-cdk.mjs +15868 -0
  510. package/fesm2020/messaia-cdk.mjs.map +1 -0
  511. package/lib/base/base.module.d.ts +7 -0
  512. package/lib/base/components/base.component.d.ts +8 -0
  513. package/lib/base/components/generic-form.component.d.ts +3 -0
  514. package/lib/base/components/generic-list.component.d.ts +3 -0
  515. package/lib/base/interceptors/base.interceptor.d.ts +3 -0
  516. package/lib/base/interceptors/caching-interceptor.d.ts +3 -0
  517. package/lib/base/interceptors/loading.interceptor.d.ts +3 -0
  518. package/lib/base/services/file.service.d.ts +3 -0
  519. package/lib/base/services/loading-screen.service.d.ts +3 -0
  520. package/lib/base/services/print.service.d.ts +3 -0
  521. package/lib/chips/chips.module.d.ts +13 -2
  522. package/lib/chips/components/chips.component.d.ts +7 -0
  523. package/lib/chips/public_api.d.ts +1 -0
  524. package/lib/common/common.module.d.ts +20 -0
  525. package/lib/common/directives/disable-control.directive.d.ts +3 -0
  526. package/lib/common/functions/utils.d.ts +3 -0
  527. package/lib/common/helpers/app-storage.d.ts +3 -0
  528. package/lib/common/helpers/dynamic-builder.d.ts +3 -0
  529. package/lib/common/models/app-setting.d.ts +3 -0
  530. package/lib/common/pipes/data-source.pipe.d.ts +3 -0
  531. package/lib/common/pipes/enum.pipe.d.ts +3 -0
  532. package/lib/common/pipes/file-size.pipe.d.ts +3 -0
  533. package/lib/common/pipes/filter.pipe.d.ts +3 -0
  534. package/lib/common/pipes/first-letter.d.ts +3 -0
  535. package/lib/common/pipes/keys.d.ts +3 -0
  536. package/lib/common/pipes/month-name.pipe.d.ts +3 -0
  537. package/lib/common/pipes/only-number.d.ts +3 -0
  538. package/lib/common/pipes/order.pipe.d.ts +4 -1
  539. package/lib/common/pipes/placeholder.pipe.d.ts +3 -0
  540. package/lib/common/pipes/safe-html.pipe.d.ts +3 -0
  541. package/lib/common/pipes/time.pipe.d.ts +3 -0
  542. package/lib/common/pipes/titlecase.pipe.d.ts +3 -0
  543. package/lib/common/pipes/truncate.pipe.d.ts +3 -0
  544. package/lib/common/pipes/values.d.ts +3 -0
  545. package/lib/common/public_api.d.ts +16 -0
  546. package/lib/common/services/base.service.d.ts +3 -0
  547. package/lib/common/services/enum.service.d.ts +3 -0
  548. package/lib/common/styles/platform.scss +1 -1
  549. package/lib/common/theming/_all-theme.scss +1 -1
  550. package/lib/dialogs/alert-dialog/alert-dialog.component.d.ts +3 -0
  551. package/lib/dialogs/confirm-dialog/confirm-dialog.component.d.ts +3 -0
  552. package/lib/dialogs/dialog.component.d.ts +9 -0
  553. package/lib/dialogs/dialogs.module.d.ts +13 -0
  554. package/lib/dialogs/prompt-dialog/prompt-dialog.component.d.ts +3 -0
  555. package/lib/dialogs/services/dialog.service.d.ts +3 -0
  556. package/lib/file/file-input.component.d.ts +3 -0
  557. package/lib/file/file.module.d.ts +10 -0
  558. package/lib/form-validators/directives/base-directive.d.ts +3 -0
  559. package/lib/form-validators/directives/control-host.directive.d.ts +3 -0
  560. package/lib/form-validators/directives/html-control-template.directive.d.ts +3 -0
  561. package/lib/form-validators/directives/rx-form.directive.d.ts +3 -0
  562. package/lib/form-validators/directives/template-validations/async-validation.directive.d.ts +3 -0
  563. package/lib/form-validators/directives/template-validations/base-validator.directive.d.ts +3 -0
  564. package/lib/form-validators/directives/template-validations/control-expression-process.d.ts +3 -0
  565. package/lib/form-validators/directives/template-validations/file-control.directive.d.ts +3 -0
  566. package/lib/form-validators/directives/template-validations/image-file-control.directive.d.ts +3 -0
  567. package/lib/form-validators/directives/template-validations/rxformcontrol.directive.d.ts +3 -0
  568. package/lib/form-validators/domain/element-processor/decimal.provider.d.ts +3 -0
  569. package/lib/form-validators/services/reactive-form.module.d.ts +16 -0
  570. package/lib/form-validators/services/rx-form-builder.d.ts +3 -0
  571. package/lib/form-validators/services/typed-form-builder.d.ts +3 -0
  572. package/lib/forms/components/generic-form/generic-form.component.d.ts +11 -0
  573. package/lib/forms/directives/mat-form-field-readonly.directive.d.ts +3 -0
  574. package/lib/forms/forms.module.d.ts +23 -0
  575. package/lib/forms/helpers/abstract-mat-form-field.d.ts +4 -1
  576. package/lib/forms/helpers/value-accessor-base.d.ts +3 -0
  577. package/lib/forms/public_api.d.ts +2 -0
  578. package/lib/forms/validators/equal-validator.directive.d.ts +3 -0
  579. package/lib/forms/validators/native-element-injector.directive.d.ts +3 -0
  580. package/lib/forms/validators/unique-validator-directive.d.ts +3 -0
  581. package/lib/http/http.module.d.ts +5 -0
  582. package/lib/layout/layout-card-over/layout-card-over.component.d.ts +3 -0
  583. package/lib/layout/layout-footer/layout-footer.component.d.ts +3 -0
  584. package/lib/layout/layout-manage-list/layout-manage-list.component.d.ts +3 -0
  585. package/lib/layout/layout-manage-list/layout-manage-list.directives.d.ts +7 -0
  586. package/lib/layout/layout-nav/layout-nav.component.d.ts +3 -0
  587. package/lib/layout/layout-nav-list/layout-nav-list.component.d.ts +3 -0
  588. package/lib/layout/layout-nav-list/layout-nav-list.directives.d.ts +7 -0
  589. package/lib/layout/layout-toggle.class.d.ts +3 -0
  590. package/lib/layout/layout.component.d.ts +3 -0
  591. package/lib/layout/layout.directives.d.ts +7 -0
  592. package/lib/layout/layout.module.d.ts +22 -0
  593. package/lib/layout/navigation-drawer/navigation-drawer.component.d.ts +7 -0
  594. package/lib/media/directives/media-toggle.directive.d.ts +3 -0
  595. package/lib/media/media.module.d.ts +6 -0
  596. package/lib/media/services/media.service.d.ts +3 -0
  597. package/lib/menu/components/menu.component.d.ts +3 -0
  598. package/lib/menu/menu.module.d.ts +9 -0
  599. package/lib/menu/services/menu-items.service.d.ts +3 -0
  600. package/lib/menu/services/menu.resolve.d.ts +5 -0
  601. package/lib/menu/services/menu.service.d.ts +3 -0
  602. package/lib/search/search.module.d.ts +11 -0
  603. package/lib/search/vd-search-box/vd-search-box.component.d.ts +3 -0
  604. package/lib/search/vd-search-input/vd-search-input.component.d.ts +3 -0
  605. package/lib/select/public_api.d.ts +1 -0
  606. package/lib/select/select.component.d.ts +5 -0
  607. package/lib/select/select.module.d.ts +10 -0
  608. package/lib/table/components/dynamic-table/dynamic-table.component.d.ts +3 -0
  609. package/lib/table/components/filter-clear.component.d.ts +3 -0
  610. package/lib/table/components/filter-date.component.d.ts +3 -0
  611. package/lib/table/components/filter-input.component.d.ts +3 -0
  612. package/lib/table/components/filter-select.component.d.ts +5 -0
  613. package/lib/table/directives/data-source-filter.directive.d.ts +3 -0
  614. package/lib/table/paginator-intl.d.ts +3 -0
  615. package/lib/table/public_api.d.ts +1 -0
  616. package/lib/table/table.module.d.ts +28 -0
  617. package/messaia-cdk.d.ts +1 -25
  618. package/package.json +20 -8
  619. package/src/lib/common/styles/font/README.md +9 -0
  620. package/src/lib/layout/README.md +119 -0
  621. package/src/lib/layout/layout-card-over/README.md +36 -0
  622. package/src/lib/layout/layout-manage-list/README.md +76 -0
  623. package/src/lib/layout/layout-nav/README.md +40 -0
  624. package/src/lib/layout/layout-nav-list/README.md +85 -0
  625. package/bundles/messaia-cdk.umd.js +0 -17755
  626. package/bundles/messaia-cdk.umd.js.map +0 -1
  627. package/esm2015/lib/base/base.module.js +0 -47
  628. package/esm2015/lib/base/components/base.component.js +0 -441
  629. package/esm2015/lib/base/components/generic-form.component.js +0 -492
  630. package/esm2015/lib/base/components/generic-list.component.js +0 -469
  631. package/esm2015/lib/base/interceptors/base.interceptor.js +0 -148
  632. package/esm2015/lib/base/interceptors/caching-interceptor.js +0 -75
  633. package/esm2015/lib/base/interceptors/loading.interceptor.js +0 -70
  634. package/esm2015/lib/base/services/file.service.js +0 -25
  635. package/esm2015/lib/base/services/loading-screen.service.js +0 -46
  636. package/esm2015/lib/base/services/print.service.js +0 -49
  637. package/esm2015/lib/chips/chips.module.js +0 -44
  638. package/esm2015/lib/chips/components/chips.component.js +0 -420
  639. package/esm2015/lib/chips/public_api.js +0 -2
  640. package/esm2015/lib/common/behaviors/control-value-accesor.mixin.js +0 -41
  641. package/esm2015/lib/common/common.module.js +0 -86
  642. package/esm2015/lib/common/directives/disable-control.directive.js +0 -43
  643. package/esm2015/lib/common/functions/utils.js +0 -160
  644. package/esm2015/lib/common/helpers/app-storage.js +0 -51
  645. package/esm2015/lib/common/helpers/dynamic-builder.js +0 -58
  646. package/esm2015/lib/common/models/app-setting.js +0 -8
  647. package/esm2015/lib/common/pipes/data-source.pipe.js +0 -12
  648. package/esm2015/lib/common/pipes/enum.pipe.js +0 -20
  649. package/esm2015/lib/common/pipes/file-size.pipe.js +0 -34
  650. package/esm2015/lib/common/pipes/filter.pipe.js +0 -20
  651. package/esm2015/lib/common/pipes/first-letter.js +0 -21
  652. package/esm2015/lib/common/pipes/keys.js +0 -15
  653. package/esm2015/lib/common/pipes/month-name.pipe.js +0 -24
  654. package/esm2015/lib/common/pipes/only-number.js +0 -60
  655. package/esm2015/lib/common/pipes/order.pipe.js +0 -180
  656. package/esm2015/lib/common/pipes/placeholder.pipe.js +0 -23
  657. package/esm2015/lib/common/pipes/safe-html.pipe.js +0 -37
  658. package/esm2015/lib/common/pipes/time.pipe.js +0 -17
  659. package/esm2015/lib/common/pipes/titlecase.pipe.js +0 -11
  660. package/esm2015/lib/common/pipes/truncate.pipe.js +0 -12
  661. package/esm2015/lib/common/pipes/values.js +0 -11
  662. package/esm2015/lib/common/public_api.js +0 -2
  663. package/esm2015/lib/common/services/base.service.js +0 -26
  664. package/esm2015/lib/common/services/enum.service.js +0 -42
  665. package/esm2015/lib/dialogs/alert-dialog/alert-dialog.component.js +0 -38
  666. package/esm2015/lib/dialogs/confirm-dialog/confirm-dialog.component.js +0 -44
  667. package/esm2015/lib/dialogs/dialog.component.js +0 -47
  668. package/esm2015/lib/dialogs/dialogs.module.js +0 -54
  669. package/esm2015/lib/dialogs/prompt-dialog/prompt-dialog.component.js +0 -44
  670. package/esm2015/lib/dialogs/services/dialog.service.js +0 -145
  671. package/esm2015/lib/file/file-input.component.js +0 -301
  672. package/esm2015/lib/file/file.module.js +0 -25
  673. package/esm2015/lib/form-validators/abstract/typed-form.js +0 -3
  674. package/esm2015/lib/form-validators/algorithm/luhn-algorithm.js +0 -15
  675. package/esm2015/lib/form-validators/const/app-validators.const.js +0 -68
  676. package/esm2015/lib/form-validators/const/app.const.js +0 -17
  677. package/esm2015/lib/form-validators/const/config-names.const.js +0 -9
  678. package/esm2015/lib/form-validators/const/config-required-fields.const.js +0 -11
  679. package/esm2015/lib/form-validators/const/decorators.const.js +0 -23
  680. package/esm2015/lib/form-validators/const/events.const.js +0 -14
  681. package/esm2015/lib/form-validators/const/html-elements.const.js +0 -7
  682. package/esm2015/lib/form-validators/const/iban-country-wise-regex.const.js +0 -80
  683. package/esm2015/lib/form-validators/const/index.js +0 -6
  684. package/esm2015/lib/form-validators/const/operators.const.js +0 -7
  685. package/esm2015/lib/form-validators/const/validation-alphabet-locale.const.js +0 -9
  686. package/esm2015/lib/form-validators/const/validator.const.js +0 -8
  687. package/esm2015/lib/form-validators/core/defaultContainer.js +0 -243
  688. package/esm2015/lib/form-validators/core/validator.interface.js +0 -2
  689. package/esm2015/lib/form-validators/core/validator.static.js +0 -74
  690. package/esm2015/lib/form-validators/decorators/allOf.decorator.js +0 -10
  691. package/esm2015/lib/form-validators/decorators/alpha.decorator.js +0 -10
  692. package/esm2015/lib/form-validators/decorators/alphaNumeric.decorator.js +0 -10
  693. package/esm2015/lib/form-validators/decorators/and.decorator.js +0 -6
  694. package/esm2015/lib/form-validators/decorators/ascii.decorator.js +0 -6
  695. package/esm2015/lib/form-validators/decorators/async.decorator.js +0 -6
  696. package/esm2015/lib/form-validators/decorators/base-decorator.function.js +0 -7
  697. package/esm2015/lib/form-validators/decorators/choice.decorator.js +0 -10
  698. package/esm2015/lib/form-validators/decorators/compare.decorator.js +0 -6
  699. package/esm2015/lib/form-validators/decorators/compose.decorator.js +0 -6
  700. package/esm2015/lib/form-validators/decorators/contains.decorator.js +0 -10
  701. package/esm2015/lib/form-validators/decorators/credit-card.decorator.js +0 -10
  702. package/esm2015/lib/form-validators/decorators/cusip.decorator.js +0 -6
  703. package/esm2015/lib/form-validators/decorators/custom.decorator.js +0 -10
  704. package/esm2015/lib/form-validators/decorators/dataUri.decorator.js +0 -6
  705. package/esm2015/lib/form-validators/decorators/date.decorator.js +0 -10
  706. package/esm2015/lib/form-validators/decorators/different.decorator.js +0 -6
  707. package/esm2015/lib/form-validators/decorators/digit.decorator.js +0 -6
  708. package/esm2015/lib/form-validators/decorators/email.decorator.js +0 -6
  709. package/esm2015/lib/form-validators/decorators/endsWith.decorator.js +0 -10
  710. package/esm2015/lib/form-validators/decorators/even.decorator.js +0 -6
  711. package/esm2015/lib/form-validators/decorators/extension.decorator.js +0 -10
  712. package/esm2015/lib/form-validators/decorators/factor.decorator.js +0 -10
  713. package/esm2015/lib/form-validators/decorators/file.decorator.js +0 -10
  714. package/esm2015/lib/form-validators/decorators/fileSize.decorator.js +0 -10
  715. package/esm2015/lib/form-validators/decorators/greater-than-equal-to.decorator.js +0 -10
  716. package/esm2015/lib/form-validators/decorators/greater-than.decorator.js +0 -10
  717. package/esm2015/lib/form-validators/decorators/grid.decorator.js +0 -6
  718. package/esm2015/lib/form-validators/decorators/hexColor.decorator.js +0 -6
  719. package/esm2015/lib/form-validators/decorators/image.decorator.js +0 -10
  720. package/esm2015/lib/form-validators/decorators/index.js +0 -91
  721. package/esm2015/lib/form-validators/decorators/json.decorator.js +0 -6
  722. package/esm2015/lib/form-validators/decorators/latLong.decorator.js +0 -6
  723. package/esm2015/lib/form-validators/decorators/latitude.decorator.js +0 -6
  724. package/esm2015/lib/form-validators/decorators/leapYear.decorator.js +0 -6
  725. package/esm2015/lib/form-validators/decorators/less-than-equal-to.decorator.js +0 -10
  726. package/esm2015/lib/form-validators/decorators/less-than.decorator.js +0 -10
  727. package/esm2015/lib/form-validators/decorators/longitude.decorator.js +0 -6
  728. package/esm2015/lib/form-validators/decorators/lowercase.decorator.js +0 -6
  729. package/esm2015/lib/form-validators/decorators/mac.decorator.js +0 -6
  730. package/esm2015/lib/form-validators/decorators/mask.decorator.js +0 -6
  731. package/esm2015/lib/form-validators/decorators/maxDate.decorator.js +0 -10
  732. package/esm2015/lib/form-validators/decorators/maxLength.decorator.js +0 -10
  733. package/esm2015/lib/form-validators/decorators/maxNumber.decorator.js +0 -10
  734. package/esm2015/lib/form-validators/decorators/maxTime.decorator.js +0 -10
  735. package/esm2015/lib/form-validators/decorators/minDate.decorator.js +0 -10
  736. package/esm2015/lib/form-validators/decorators/minLength.decorator.js +0 -10
  737. package/esm2015/lib/form-validators/decorators/minNumber.decorator.js +0 -10
  738. package/esm2015/lib/form-validators/decorators/minTime.decorator.js +0 -10
  739. package/esm2015/lib/form-validators/decorators/model.decorator.js +0 -7
  740. package/esm2015/lib/form-validators/decorators/non-validation-decorators/disable.decorator.js +0 -8
  741. package/esm2015/lib/form-validators/decorators/non-validation-decorators/elementClass.decorator.js +0 -8
  742. package/esm2015/lib/form-validators/decorators/non-validation-decorators/error.decorator.js +0 -8
  743. package/esm2015/lib/form-validators/decorators/noneOf.decorator.js +0 -10
  744. package/esm2015/lib/form-validators/decorators/not.decorator.js +0 -6
  745. package/esm2015/lib/form-validators/decorators/notEmpty.decorator.js +0 -6
  746. package/esm2015/lib/form-validators/decorators/numeric.decorator.js +0 -10
  747. package/esm2015/lib/form-validators/decorators/odd.decorator.js +0 -6
  748. package/esm2015/lib/form-validators/decorators/oneOf.decorator.js +0 -10
  749. package/esm2015/lib/form-validators/decorators/or.decorator.js +0 -6
  750. package/esm2015/lib/form-validators/decorators/password.decorator.js +0 -10
  751. package/esm2015/lib/form-validators/decorators/pattern.decorator.js +0 -10
  752. package/esm2015/lib/form-validators/decorators/port.decorator.js +0 -6
  753. package/esm2015/lib/form-validators/decorators/primeNumber.decorator.js +0 -6
  754. package/esm2015/lib/form-validators/decorators/prop-array.decorator.js +0 -18
  755. package/esm2015/lib/form-validators/decorators/prop-object.decorator.js +0 -8
  756. package/esm2015/lib/form-validators/decorators/prop.decorator.js +0 -16
  757. package/esm2015/lib/form-validators/decorators/range.decorator.js +0 -10
  758. package/esm2015/lib/form-validators/decorators/required.decorator.js +0 -6
  759. package/esm2015/lib/form-validators/decorators/requiredTrue.decorator.js +0 -6
  760. package/esm2015/lib/form-validators/decorators/rule.decorator.js +0 -6
  761. package/esm2015/lib/form-validators/decorators/sanitize/blacklist.decorator.js +0 -8
  762. package/esm2015/lib/form-validators/decorators/sanitize/escape.decorator.js +0 -8
  763. package/esm2015/lib/form-validators/decorators/sanitize/ltrim.decorator.js +0 -8
  764. package/esm2015/lib/form-validators/decorators/sanitize/prefix.decorator.js +0 -8
  765. package/esm2015/lib/form-validators/decorators/sanitize/rtrim.decorator.js +0 -8
  766. package/esm2015/lib/form-validators/decorators/sanitize/sanitize.decorator.js +0 -8
  767. package/esm2015/lib/form-validators/decorators/sanitize/stripLow.decorator.js +0 -8
  768. package/esm2015/lib/form-validators/decorators/sanitize/suffix.decorator.js +0 -8
  769. package/esm2015/lib/form-validators/decorators/sanitize/toBoolean.decorator.js +0 -8
  770. package/esm2015/lib/form-validators/decorators/sanitize/toDate.decorator.js +0 -8
  771. package/esm2015/lib/form-validators/decorators/sanitize/toDouble.decorator.js +0 -8
  772. package/esm2015/lib/form-validators/decorators/sanitize/toFloat.decorator.js +0 -8
  773. package/esm2015/lib/form-validators/decorators/sanitize/toInt.decorator.js +0 -8
  774. package/esm2015/lib/form-validators/decorators/sanitize/toString.decorator.js +0 -8
  775. package/esm2015/lib/form-validators/decorators/sanitize/trim.decorator.js +0 -8
  776. package/esm2015/lib/form-validators/decorators/sanitize/whitelist.decorator.js +0 -8
  777. package/esm2015/lib/form-validators/decorators/startsWith.decorator.js +0 -10
  778. package/esm2015/lib/form-validators/decorators/time.decorator.js +0 -10
  779. package/esm2015/lib/form-validators/decorators/unique.decorator.js +0 -6
  780. package/esm2015/lib/form-validators/decorators/uppercase.decorator.js +0 -6
  781. package/esm2015/lib/form-validators/decorators/url.decorator.js +0 -10
  782. package/esm2015/lib/form-validators/directives/base-directive.js +0 -43
  783. package/esm2015/lib/form-validators/directives/control-host.directive.js +0 -42
  784. package/esm2015/lib/form-validators/directives/html-control-template.directive.js +0 -28
  785. package/esm2015/lib/form-validators/directives/rx-form.directive.js +0 -131
  786. package/esm2015/lib/form-validators/directives/template-validations/async-validation.directive.js +0 -26
  787. package/esm2015/lib/form-validators/directives/template-validations/base-validator.directive.js +0 -42
  788. package/esm2015/lib/form-validators/directives/template-validations/control-expression-process.js +0 -25
  789. package/esm2015/lib/form-validators/directives/template-validations/file-control.directive.js +0 -93
  790. package/esm2015/lib/form-validators/directives/template-validations/image-file-control.directive.js +0 -55
  791. package/esm2015/lib/form-validators/directives/template-validations/rxformcontrol.directive.js +0 -237
  792. package/esm2015/lib/form-validators/domain/disable-provider.js +0 -93
  793. package/esm2015/lib/form-validators/domain/element-processor/decimal.provider.js +0 -64
  794. package/esm2015/lib/form-validators/domain/element-processor/mask.provider.js +0 -430
  795. package/esm2015/lib/form-validators/domain/form-data.js +0 -47
  796. package/esm2015/lib/form-validators/enums/error-message-binding-strategy.js +0 -11
  797. package/esm2015/lib/form-validators/enums/index.js +0 -5
  798. package/esm2015/lib/form-validators/enums/ip-version.js +0 -7
  799. package/esm2015/lib/form-validators/enums/numeric-value-type.js +0 -7
  800. package/esm2015/lib/form-validators/enums/reset-type.js +0 -10
  801. package/esm2015/lib/form-validators/enums/url-validation-type.js +0 -7
  802. package/esm2015/lib/form-validators/models/config/alpha-config.js +0 -2
  803. package/esm2015/lib/form-validators/models/config/array-config.js +0 -2
  804. package/esm2015/lib/form-validators/models/config/base-config-fn.js +0 -2
  805. package/esm2015/lib/form-validators/models/config/base-config.js +0 -2
  806. package/esm2015/lib/form-validators/models/config/base-date-config.js +0 -2
  807. package/esm2015/lib/form-validators/models/config/choice-config.js +0 -2
  808. package/esm2015/lib/form-validators/models/config/compare-config.js +0 -2
  809. package/esm2015/lib/form-validators/models/config/component-config.js +0 -2
  810. package/esm2015/lib/form-validators/models/config/compose-config.js +0 -2
  811. package/esm2015/lib/form-validators/models/config/contains-config.js +0 -2
  812. package/esm2015/lib/form-validators/models/config/credit-card-config.js +0 -2
  813. package/esm2015/lib/form-validators/models/config/custom-config.js +0 -2
  814. package/esm2015/lib/form-validators/models/config/date-config.js +0 -2
  815. package/esm2015/lib/form-validators/models/config/default-config.js +0 -2
  816. package/esm2015/lib/form-validators/models/config/digit-config.js +0 -2
  817. package/esm2015/lib/form-validators/models/config/disable-config.js +0 -2
  818. package/esm2015/lib/form-validators/models/config/element-class-config.js +0 -2
  819. package/esm2015/lib/form-validators/models/config/email-config.js +0 -2
  820. package/esm2015/lib/form-validators/models/config/error-config.js +0 -2
  821. package/esm2015/lib/form-validators/models/config/extension-config.js +0 -2
  822. package/esm2015/lib/form-validators/models/config/factor-config.js +0 -2
  823. package/esm2015/lib/form-validators/models/config/field-config.js +0 -2
  824. package/esm2015/lib/form-validators/models/config/file-config.js +0 -2
  825. package/esm2015/lib/form-validators/models/config/hex-color-config.js +0 -2
  826. package/esm2015/lib/form-validators/models/config/iban-config.js +0 -2
  827. package/esm2015/lib/form-validators/models/config/image-config.js +0 -2
  828. package/esm2015/lib/form-validators/models/config/index.js +0 -35
  829. package/esm2015/lib/form-validators/models/config/ip-config.js +0 -2
  830. package/esm2015/lib/form-validators/models/config/logical-operator-config.js +0 -2
  831. package/esm2015/lib/form-validators/models/config/mask-config.js +0 -2
  832. package/esm2015/lib/form-validators/models/config/max-date-config.js +0 -2
  833. package/esm2015/lib/form-validators/models/config/message-config.js +0 -2
  834. package/esm2015/lib/form-validators/models/config/min-date-config.js +0 -2
  835. package/esm2015/lib/form-validators/models/config/model-config.js +0 -2
  836. package/esm2015/lib/form-validators/models/config/number-config.js +0 -2
  837. package/esm2015/lib/form-validators/models/config/numeric-config.js +0 -2
  838. package/esm2015/lib/form-validators/models/config/password-config.js +0 -2
  839. package/esm2015/lib/form-validators/models/config/pattern-config.js +0 -2
  840. package/esm2015/lib/form-validators/models/config/prop-config.js +0 -2
  841. package/esm2015/lib/form-validators/models/config/props-config.js +0 -2
  842. package/esm2015/lib/form-validators/models/config/range-config.js +0 -2
  843. package/esm2015/lib/form-validators/models/config/relational-operator-config.js +0 -2
  844. package/esm2015/lib/form-validators/models/config/required-config.js +0 -2
  845. package/esm2015/lib/form-validators/models/config/rule-config.js +0 -2
  846. package/esm2015/lib/form-validators/models/config/sanitize-config.js +0 -2
  847. package/esm2015/lib/form-validators/models/config/size-config.js +0 -2
  848. package/esm2015/lib/form-validators/models/config/string-comparison-config.js +0 -2
  849. package/esm2015/lib/form-validators/models/config/time-config.js +0 -2
  850. package/esm2015/lib/form-validators/models/config/todate-config.js +0 -2
  851. package/esm2015/lib/form-validators/models/config/unique-config.js +0 -2
  852. package/esm2015/lib/form-validators/models/config/url-config.js +0 -2
  853. package/esm2015/lib/form-validators/models/form-builder-configuration.js +0 -8
  854. package/esm2015/lib/form-validators/models/index.js +0 -3
  855. package/esm2015/lib/form-validators/models/interface/array-prop-instance-config.interface.js +0 -2
  856. package/esm2015/lib/form-validators/models/interface/auto-instance-config.interface.js +0 -2
  857. package/esm2015/lib/form-validators/models/interface/form-data-config.js +0 -2
  858. package/esm2015/lib/form-validators/models/interface/i-abstract-control.js +0 -4
  859. package/esm2015/lib/form-validators/models/interface/i-form-group.js +0 -2
  860. package/esm2015/lib/form-validators/models/interface/instance-argument.interface.js +0 -2
  861. package/esm2015/lib/form-validators/models/interface/object-prop-instance-config.interface.js +0 -2
  862. package/esm2015/lib/form-validators/models/interface/options.js +0 -2
  863. package/esm2015/lib/form-validators/models/password-validation.model.js +0 -2
  864. package/esm2015/lib/form-validators/models/prop-validation-config.js +0 -2
  865. package/esm2015/lib/form-validators/public_api.js +0 -25
  866. package/esm2015/lib/form-validators/reactive-form-validators/allOf.validator.js +0 -22
  867. package/esm2015/lib/form-validators/reactive-form-validators/alpha.validator.js +0 -9
  868. package/esm2015/lib/form-validators/reactive-form-validators/alphaNumeric.validator.js +0 -9
  869. package/esm2015/lib/form-validators/reactive-form-validators/and.validator.js +0 -23
  870. package/esm2015/lib/form-validators/reactive-form-validators/ascii.validator.js +0 -9
  871. package/esm2015/lib/form-validators/reactive-form-validators/async/base.async.validator.js +0 -24
  872. package/esm2015/lib/form-validators/reactive-form-validators/choice.validator.js +0 -19
  873. package/esm2015/lib/form-validators/reactive-form-validators/compare.validator.js +0 -20
  874. package/esm2015/lib/form-validators/reactive-form-validators/compose.validator.js +0 -23
  875. package/esm2015/lib/form-validators/reactive-form-validators/conditional-change.validator.js +0 -63
  876. package/esm2015/lib/form-validators/reactive-form-validators/contains.validator.js +0 -15
  877. package/esm2015/lib/form-validators/reactive-form-validators/credit-card.validator.js +0 -48
  878. package/esm2015/lib/form-validators/reactive-form-validators/cusip.validator.js +0 -38
  879. package/esm2015/lib/form-validators/reactive-form-validators/custom.validator.js +0 -23
  880. package/esm2015/lib/form-validators/reactive-form-validators/dataUri.validator.js +0 -9
  881. package/esm2015/lib/form-validators/reactive-form-validators/date.validator.js +0 -8
  882. package/esm2015/lib/form-validators/reactive-form-validators/different.validator.js +0 -19
  883. package/esm2015/lib/form-validators/reactive-form-validators/digit.validator.js +0 -9
  884. package/esm2015/lib/form-validators/reactive-form-validators/email.validator.js +0 -9
  885. package/esm2015/lib/form-validators/reactive-form-validators/endsWith.validator.js +0 -16
  886. package/esm2015/lib/form-validators/reactive-form-validators/even.validator.js +0 -15
  887. package/esm2015/lib/form-validators/reactive-form-validators/extension.validator.js +0 -40
  888. package/esm2015/lib/form-validators/reactive-form-validators/factor.validator.js +0 -37
  889. package/esm2015/lib/form-validators/reactive-form-validators/file.validator.js +0 -26
  890. package/esm2015/lib/form-validators/reactive-form-validators/fileSize.validator.js +0 -32
  891. package/esm2015/lib/form-validators/reactive-form-validators/greater-than-equal-to.validator.js +0 -8
  892. package/esm2015/lib/form-validators/reactive-form-validators/greater-than.validator.js +0 -8
  893. package/esm2015/lib/form-validators/reactive-form-validators/grid.validator.js +0 -31
  894. package/esm2015/lib/form-validators/reactive-form-validators/hexcolor.validator.js +0 -9
  895. package/esm2015/lib/form-validators/reactive-form-validators/iban.validator.js +0 -30
  896. package/esm2015/lib/form-validators/reactive-form-validators/image.validator.js +0 -48
  897. package/esm2015/lib/form-validators/reactive-form-validators/index.js +0 -66
  898. package/esm2015/lib/form-validators/reactive-form-validators/ip.validator.js +0 -35
  899. package/esm2015/lib/form-validators/reactive-form-validators/json.validator.js +0 -26
  900. package/esm2015/lib/form-validators/reactive-form-validators/latLong.validator.js +0 -18
  901. package/esm2015/lib/form-validators/reactive-form-validators/latitude.validator.js +0 -9
  902. package/esm2015/lib/form-validators/reactive-form-validators/leapYear.validator.js +0 -16
  903. package/esm2015/lib/form-validators/reactive-form-validators/less-than-equal-to.validator.js +0 -8
  904. package/esm2015/lib/form-validators/reactive-form-validators/less-than.validator.js +0 -8
  905. package/esm2015/lib/form-validators/reactive-form-validators/longitude.validator.js +0 -9
  906. package/esm2015/lib/form-validators/reactive-form-validators/lowercase.validator.js +0 -15
  907. package/esm2015/lib/form-validators/reactive-form-validators/mac.validator.js +0 -9
  908. package/esm2015/lib/form-validators/reactive-form-validators/mask.validator.js +0 -13
  909. package/esm2015/lib/form-validators/reactive-form-validators/maxDate.validator.js +0 -8
  910. package/esm2015/lib/form-validators/reactive-form-validators/maxLength.validator.js +0 -16
  911. package/esm2015/lib/form-validators/reactive-form-validators/maxNumber.validator.js +0 -16
  912. package/esm2015/lib/form-validators/reactive-form-validators/maxTime.validator.js +0 -8
  913. package/esm2015/lib/form-validators/reactive-form-validators/minDate.validator.js +0 -8
  914. package/esm2015/lib/form-validators/reactive-form-validators/minLength.validator.js +0 -16
  915. package/esm2015/lib/form-validators/reactive-form-validators/minNumber.validator.js +0 -16
  916. package/esm2015/lib/form-validators/reactive-form-validators/minTime.validator.js +0 -8
  917. package/esm2015/lib/form-validators/reactive-form-validators/noneOf.validator.js +0 -24
  918. package/esm2015/lib/form-validators/reactive-form-validators/not.validator.js +0 -23
  919. package/esm2015/lib/form-validators/reactive-form-validators/notEmpty.validator.js +0 -17
  920. package/esm2015/lib/form-validators/reactive-form-validators/numeric.validator.js +0 -20
  921. package/esm2015/lib/form-validators/reactive-form-validators/odd.validator.js +0 -16
  922. package/esm2015/lib/form-validators/reactive-form-validators/oneOf.validator.js +0 -22
  923. package/esm2015/lib/form-validators/reactive-form-validators/or.validator.js +0 -23
  924. package/esm2015/lib/form-validators/reactive-form-validators/password.validator.js +0 -33
  925. package/esm2015/lib/form-validators/reactive-form-validators/pattern.validator.js +0 -17
  926. package/esm2015/lib/form-validators/reactive-form-validators/port.validator.js +0 -18
  927. package/esm2015/lib/form-validators/reactive-form-validators/primeNumber.validator.js +0 -26
  928. package/esm2015/lib/form-validators/reactive-form-validators/range.validator.js +0 -16
  929. package/esm2015/lib/form-validators/reactive-form-validators/required.validator.js +0 -17
  930. package/esm2015/lib/form-validators/reactive-form-validators/requiredTrue.validator.js +0 -16
  931. package/esm2015/lib/form-validators/reactive-form-validators/rule.validator.js +0 -20
  932. package/esm2015/lib/form-validators/reactive-form-validators/startsWith.validator.js +0 -16
  933. package/esm2015/lib/form-validators/reactive-form-validators/time.validator.js +0 -18
  934. package/esm2015/lib/form-validators/reactive-form-validators/unique.validator.js +0 -70
  935. package/esm2015/lib/form-validators/reactive-form-validators/uppercase.validator.js +0 -15
  936. package/esm2015/lib/form-validators/reactive-form-validators/url.validator.js +0 -28
  937. package/esm2015/lib/form-validators/services/base-form-builder.js +0 -115
  938. package/esm2015/lib/form-validators/services/entity.service.js +0 -64
  939. package/esm2015/lib/form-validators/services/form-control.js +0 -349
  940. package/esm2015/lib/form-validators/services/form-group.js +0 -2
  941. package/esm2015/lib/form-validators/services/reactive-form.module.js +0 -53
  942. package/esm2015/lib/form-validators/services/rx-form-array.js +0 -100
  943. package/esm2015/lib/form-validators/services/rx-form-builder.js +0 -565
  944. package/esm2015/lib/form-validators/services/rx-form-group.js +0 -299
  945. package/esm2015/lib/form-validators/services/typed-form-builder.js +0 -29
  946. package/esm2015/lib/form-validators/util/alphabet-regex.locale.js +0 -29
  947. package/esm2015/lib/form-validators/util/app-util.js +0 -141
  948. package/esm2015/lib/form-validators/util/check-length.js +0 -10
  949. package/esm2015/lib/form-validators/util/config-provider.js +0 -35
  950. package/esm2015/lib/form-validators/util/date-checker.function.js +0 -52
  951. package/esm2015/lib/form-validators/util/date-provider.js +0 -97
  952. package/esm2015/lib/form-validators/util/form-const.js +0 -3
  953. package/esm2015/lib/form-validators/util/form-provider.js +0 -37
  954. package/esm2015/lib/form-validators/util/index.js +0 -7
  955. package/esm2015/lib/form-validators/util/instance-provider.function.js +0 -30
  956. package/esm2015/lib/form-validators/util/ip-checker.js +0 -18
  957. package/esm2015/lib/form-validators/util/linq.js +0 -147
  958. package/esm2015/lib/form-validators/util/object-maker.js +0 -38
  959. package/esm2015/lib/form-validators/util/reactive-form-config.js +0 -23
  960. package/esm2015/lib/form-validators/util/regex-rules.js +0 -37
  961. package/esm2015/lib/form-validators/util/regex-validator.js +0 -74
  962. package/esm2015/lib/form-validators/util/relational-checker.function.js +0 -85
  963. package/esm2015/lib/form-validators/util/reset-form.js +0 -56
  964. package/esm2015/lib/form-validators/util/sanitizers.js +0 -131
  965. package/esm2015/lib/form-validators/util/time-checker.function.js +0 -48
  966. package/esm2015/lib/form-validators/util/type.js +0 -2
  967. package/esm2015/lib/form-validators/util/validator-value-checker.js +0 -17
  968. package/esm2015/lib/form-validators/validators-extension/allOf-validator.extension.js +0 -11
  969. package/esm2015/lib/form-validators/validators-extension/alpha-validator.extension.js +0 -11
  970. package/esm2015/lib/form-validators/validators-extension/alphaNumeric-validator.extension.js +0 -11
  971. package/esm2015/lib/form-validators/validators-extension/and-validator.extension.js +0 -7
  972. package/esm2015/lib/form-validators/validators-extension/ascii-validator.extension.js +0 -7
  973. package/esm2015/lib/form-validators/validators-extension/base-validator.function.js +0 -33
  974. package/esm2015/lib/form-validators/validators-extension/choice-validator.extension.js +0 -11
  975. package/esm2015/lib/form-validators/validators-extension/compare-validator.extension.js +0 -7
  976. package/esm2015/lib/form-validators/validators-extension/compose-validator.extension.js +0 -7
  977. package/esm2015/lib/form-validators/validators-extension/contains-validator.extension.js +0 -11
  978. package/esm2015/lib/form-validators/validators-extension/credit-card-validator.extension.js +0 -11
  979. package/esm2015/lib/form-validators/validators-extension/cusip-validator.extension.js +0 -7
  980. package/esm2015/lib/form-validators/validators-extension/custom-validator.extension.js +0 -11
  981. package/esm2015/lib/form-validators/validators-extension/dataUri-validator.extension.js +0 -7
  982. package/esm2015/lib/form-validators/validators-extension/date-validator.extension.js +0 -11
  983. package/esm2015/lib/form-validators/validators-extension/different-validator.extension.js +0 -7
  984. package/esm2015/lib/form-validators/validators-extension/digit-validator.extension.js +0 -7
  985. package/esm2015/lib/form-validators/validators-extension/email-validator.extension.js +0 -7
  986. package/esm2015/lib/form-validators/validators-extension/endsWith-validator.extension.js +0 -11
  987. package/esm2015/lib/form-validators/validators-extension/even-validator.extension.js +0 -7
  988. package/esm2015/lib/form-validators/validators-extension/extension-validator.extension.js +0 -10
  989. package/esm2015/lib/form-validators/validators-extension/factor-validator.extension.js +0 -11
  990. package/esm2015/lib/form-validators/validators-extension/file-validator.extension.js +0 -10
  991. package/esm2015/lib/form-validators/validators-extension/fileSize-validator.extension.js +0 -10
  992. package/esm2015/lib/form-validators/validators-extension/greater-than-equal-to-validator.extension.js +0 -11
  993. package/esm2015/lib/form-validators/validators-extension/greater-than-validator.extension.js +0 -11
  994. package/esm2015/lib/form-validators/validators-extension/grid-validator.extension.js +0 -7
  995. package/esm2015/lib/form-validators/validators-extension/hexcolor-validator.extension.js +0 -7
  996. package/esm2015/lib/form-validators/validators-extension/iban-validator.extension.js +0 -11
  997. package/esm2015/lib/form-validators/validators-extension/image-validator.extension.js +0 -10
  998. package/esm2015/lib/form-validators/validators-extension/index.js +0 -68
  999. package/esm2015/lib/form-validators/validators-extension/ip-validator.extension.js +0 -11
  1000. package/esm2015/lib/form-validators/validators-extension/json-validator.extension.js +0 -7
  1001. package/esm2015/lib/form-validators/validators-extension/latLong-validator.extension.js +0 -7
  1002. package/esm2015/lib/form-validators/validators-extension/latitude-validator.extension.js +0 -7
  1003. package/esm2015/lib/form-validators/validators-extension/leapYear-validator.extension.js +0 -7
  1004. package/esm2015/lib/form-validators/validators-extension/less-than-equal-to-validator.extension.js +0 -11
  1005. package/esm2015/lib/form-validators/validators-extension/less-than-validator.extension.js +0 -11
  1006. package/esm2015/lib/form-validators/validators-extension/longitude-validator.extension.js +0 -7
  1007. package/esm2015/lib/form-validators/validators-extension/lowercase-validator.extension.js +0 -7
  1008. package/esm2015/lib/form-validators/validators-extension/mac-validator.extension.js +0 -7
  1009. package/esm2015/lib/form-validators/validators-extension/mask-validator.extension.js +0 -7
  1010. package/esm2015/lib/form-validators/validators-extension/maxDate-validator.extension.js +0 -11
  1011. package/esm2015/lib/form-validators/validators-extension/maxLength-validator.extension.js +0 -11
  1012. package/esm2015/lib/form-validators/validators-extension/maxNumber-validator.extension.js +0 -11
  1013. package/esm2015/lib/form-validators/validators-extension/maxTime-validator.extension.js +0 -11
  1014. package/esm2015/lib/form-validators/validators-extension/minDate-validator.extension.js +0 -11
  1015. package/esm2015/lib/form-validators/validators-extension/minLength-validator.extension.js +0 -11
  1016. package/esm2015/lib/form-validators/validators-extension/minNumber-validator.extension.js +0 -11
  1017. package/esm2015/lib/form-validators/validators-extension/minTime-validator.extension.js +0 -11
  1018. package/esm2015/lib/form-validators/validators-extension/noneOf-validator.extension.js +0 -11
  1019. package/esm2015/lib/form-validators/validators-extension/not-validator.extension.js +0 -7
  1020. package/esm2015/lib/form-validators/validators-extension/notEmpty-validator.extension.js +0 -7
  1021. package/esm2015/lib/form-validators/validators-extension/numeric-validator.extension.js +0 -11
  1022. package/esm2015/lib/form-validators/validators-extension/odd-validator.extension.js +0 -7
  1023. package/esm2015/lib/form-validators/validators-extension/oneOf-validator.extension.js +0 -11
  1024. package/esm2015/lib/form-validators/validators-extension/or-validator.extension.js +0 -7
  1025. package/esm2015/lib/form-validators/validators-extension/password-validator.extension.js +0 -11
  1026. package/esm2015/lib/form-validators/validators-extension/pattern-validator.extension.js +0 -11
  1027. package/esm2015/lib/form-validators/validators-extension/port-validator.extension.js +0 -7
  1028. package/esm2015/lib/form-validators/validators-extension/primeNumber-validator.extension.js +0 -7
  1029. package/esm2015/lib/form-validators/validators-extension/range-validator.extension.js +0 -11
  1030. package/esm2015/lib/form-validators/validators-extension/required-validator.extension.js +0 -7
  1031. package/esm2015/lib/form-validators/validators-extension/requiredTrue-validator.extension.js +0 -7
  1032. package/esm2015/lib/form-validators/validators-extension/rxweb-validators.js +0 -108
  1033. package/esm2015/lib/form-validators/validators-extension/startsWith-validator.extension.js +0 -11
  1034. package/esm2015/lib/form-validators/validators-extension/time-validator.extension.js +0 -11
  1035. package/esm2015/lib/form-validators/validators-extension/unique-validator.extension.js +0 -7
  1036. package/esm2015/lib/form-validators/validators-extension/uppercase-validator.extension.js +0 -7
  1037. package/esm2015/lib/form-validators/validators-extension/url-validator.extension.js +0 -11
  1038. package/esm2015/lib/form-validators/validators-function/alpha-validation.function.js +0 -37
  1039. package/esm2015/lib/form-validators/validators-function/regex-validation.function.js +0 -16
  1040. package/esm2015/lib/forms/components/generic-form/generic-form.component.js +0 -149
  1041. package/esm2015/lib/forms/directives/mat-form-field-readonly.directive.js +0 -40
  1042. package/esm2015/lib/forms/forms.module.js +0 -70
  1043. package/esm2015/lib/forms/functions/decorators.js +0 -129
  1044. package/esm2015/lib/forms/helpers/abstract-mat-form-field.js +0 -257
  1045. package/esm2015/lib/forms/helpers/value-accessor-base.js +0 -140
  1046. package/esm2015/lib/forms/public_api.js +0 -2
  1047. package/esm2015/lib/forms/validators/equal-validator.directive.js +0 -75
  1048. package/esm2015/lib/forms/validators/native-element-injector.directive.js +0 -38
  1049. package/esm2015/lib/forms/validators/unique-validator-directive.js +0 -78
  1050. package/esm2015/lib/http/http.module.js +0 -14
  1051. package/esm2015/lib/layout/layout-card-over/layout-card-over.component.js +0 -35
  1052. package/esm2015/lib/layout/layout-footer/layout-footer.component.js +0 -48
  1053. package/esm2015/lib/layout/layout-manage-list/layout-manage-list.component.js +0 -125
  1054. package/esm2015/lib/layout/layout-manage-list/layout-manage-list.directives.js +0 -103
  1055. package/esm2015/lib/layout/layout-nav/layout-nav.component.js +0 -59
  1056. package/esm2015/lib/layout/layout-nav-list/layout-nav-list.component.js +0 -111
  1057. package/esm2015/lib/layout/layout-nav-list/layout-nav-list.directives.js +0 -103
  1058. package/esm2015/lib/layout/layout-toggle.class.js +0 -80
  1059. package/esm2015/lib/layout/layout.component.js +0 -77
  1060. package/esm2015/lib/layout/layout.directives.js +0 -103
  1061. package/esm2015/lib/layout/layout.module.js +0 -64
  1062. package/esm2015/lib/layout/navigation-drawer/navigation-drawer.component.js +0 -148
  1063. package/esm2015/lib/media/directives/media-toggle.directive.js +0 -118
  1064. package/esm2015/lib/media/media.module.js +0 -29
  1065. package/esm2015/lib/media/services/media.service.js +0 -116
  1066. package/esm2015/lib/menu/components/menu.component.js +0 -45
  1067. package/esm2015/lib/menu/menu.module.js +0 -38
  1068. package/esm2015/lib/menu/services/menu-items.service.js +0 -26
  1069. package/esm2015/lib/menu/services/menu.resolve.js +0 -61
  1070. package/esm2015/lib/menu/services/menu.service.js +0 -26
  1071. package/esm2015/lib/search/search.module.js +0 -31
  1072. package/esm2015/lib/search/vd-search-box/vd-search-box.component.js +0 -111
  1073. package/esm2015/lib/search/vd-search-input/vd-search-input.component.js +0 -122
  1074. package/esm2015/lib/select/public_api.js +0 -2
  1075. package/esm2015/lib/select/select.component.js +0 -396
  1076. package/esm2015/lib/select/select.module.js +0 -29
  1077. package/esm2015/lib/table/components/dynamic-table/dynamic-table.component.js +0 -264
  1078. package/esm2015/lib/table/components/filter-clear.component.js +0 -45
  1079. package/esm2015/lib/table/components/filter-date.component.js +0 -133
  1080. package/esm2015/lib/table/components/filter-input.component.js +0 -179
  1081. package/esm2015/lib/table/components/filter-select.component.js +0 -309
  1082. package/esm2015/lib/table/directives/data-source-filter.directive.js +0 -43
  1083. package/esm2015/lib/table/functions/decorators.js +0 -137
  1084. package/esm2015/lib/table/functions/functions.js +0 -18
  1085. package/esm2015/lib/table/paginator-intl.js +0 -42
  1086. package/esm2015/lib/table/public_api.js +0 -2
  1087. package/esm2015/lib/table/table.data-source.js +0 -211
  1088. package/esm2015/lib/table/table.module.js +0 -84
  1089. package/esm2015/lib/table/table.static-data-source.js +0 -135
  1090. package/esm2015/messaia-cdk.js +0 -29
  1091. package/fesm2015/messaia-cdk.js +0 -15733
  1092. package/fesm2015/messaia-cdk.js.map +0 -1
  1093. package/messaia-cdk.metadata.json +0 -1
@@ -1,299 +0,0 @@
1
- import { FormGroup, FormArray, FormControl } from "@angular/forms";
2
- import { RxFormControl } from "./form-control";
3
- import { clone } from './entity.service';
4
- import { RegexValidator } from '../util/regex-validator';
5
- import { ApplicationUtil } from '../util/app-util';
6
- import { RxFormArray } from './rx-form-array';
7
- import { FormDataProvider } from "../domain/form-data";
8
- import { isResetControl, getNestedOptions } from '../util/reset-form';
9
- import { defaultContainer } from '../core/defaultContainer';
10
- export class RxFormGroup extends FormGroup {
11
- constructor(model, entityObject, controls, validatorOrOpts, asyncValidator) {
12
- super(controls, validatorOrOpts, asyncValidator);
13
- this.model = model;
14
- this.entityObject = entityObject;
15
- this._modified = {};
16
- this._isModified = false;
17
- this.changing = false;
18
- this.baseObject = {};
19
- for (var column in this.entityObject)
20
- this.baseObject[column] = this.entityObject[column];
21
- this.formDataProvider = new FormDataProvider();
22
- }
23
- bindPrimaryKey(modelInstance, jObject) {
24
- let instanceContainer = defaultContainer.get(modelInstance.constructor);
25
- if (instanceContainer) {
26
- let primaryKeyProp = instanceContainer.properties.filter(x => x.isPrimaryKey)[0];
27
- if (primaryKeyProp && this.modelInstance[primaryKeyProp.name])
28
- jObject[primaryKeyProp.name] = this.modelInstance[primaryKeyProp.name];
29
- }
30
- }
31
- get modifiedValue() {
32
- let jObject = {};
33
- if (Object.keys(this._modified).length > 0) {
34
- this.bindPrimaryKey(this.modelInstance, jObject);
35
- for (var columnName in this._modified) {
36
- if (this.controls[columnName] instanceof RxFormGroup)
37
- jObject[columnName] = this.controls[columnName].modifiedValue;
38
- else if (this.controls[columnName] instanceof FormArray) {
39
- let formArray = this.controls[columnName];
40
- jObject[columnName] = [];
41
- for (var i = 0; i < this._modified[columnName].length; i++) {
42
- let modifiedValue = formArray.controls[i].modifiedValue;
43
- if (Object.keys(modifiedValue).length > 0)
44
- jObject[columnName].push(modifiedValue);
45
- }
46
- if (jObject[columnName].length == 0)
47
- delete jObject[columnName];
48
- }
49
- else
50
- jObject[columnName] = this._modified[columnName];
51
- }
52
- return jObject;
53
- }
54
- return this._modified;
55
- }
56
- get isModified() {
57
- return this._isModified;
58
- }
59
- patch(controlName) {
60
- if (controlName) {
61
- let control = this.controls[controlName];
62
- this.processModified(controlName, control);
63
- }
64
- else {
65
- this.nestedFormsModification();
66
- }
67
- this._isModified = Object.keys(this._modified).length > 0;
68
- if (!this._isModified)
69
- this.nestedArrayIsModified();
70
- if (this.parent && this.parent.patch)
71
- this.parent.patch();
72
- }
73
- isDirty() {
74
- let isDirty = false;
75
- for (let name in this.value) {
76
- let currentValue = this.modelInstance[name];
77
- if (!(this.controls[name] instanceof FormGroup || this.controls[name] instanceof FormArray)) {
78
- isDirty = ApplicationUtil.notEqualTo(this.baseObject[name], currentValue);
79
- }
80
- else if (this.controls[name] instanceof RxFormGroup)
81
- isDirty = this.controls[name].isDirty();
82
- else if (this.controls[name] instanceof FormArray) {
83
- for (let formGroup of this.controls[name].controls) {
84
- isDirty = formGroup.isDirty();
85
- }
86
- }
87
- if (isDirty)
88
- break;
89
- }
90
- return isDirty;
91
- }
92
- ;
93
- resetForm(options) {
94
- for (let name in this.controls) {
95
- if (isResetControl(name, this.controls[name], options)) {
96
- if (this.controls[name] instanceof FormGroup)
97
- this.controls[name].resetForm(getNestedOptions(name, options));
98
- else if (this.controls[name] instanceof FormArray) {
99
- this.controls[name].resetForm(options && options.value ? options.value[name] : undefined);
100
- }
101
- else {
102
- if (options && options.value && RegexValidator.isNotBlank(options.value[name]))
103
- this.controls[name].reset(options.value[name]);
104
- else
105
- this.controls[name].reset();
106
- }
107
- }
108
- }
109
- }
110
- commit() {
111
- for (let name in this.controls) {
112
- if (this.controls[name] instanceof FormGroup)
113
- this.controls[name].commit();
114
- else if (this.controls[name] instanceof FormArray) {
115
- this.controls[name].commit();
116
- }
117
- else {
118
- this.controls[name].commit();
119
- }
120
- }
121
- }
122
- patchModelValue(value, options) {
123
- if (value) {
124
- for (let name in this.controls) {
125
- if (this.controls[name] instanceof RxFormGroup && value[name])
126
- this.controls[name].patchModelValue(value[name], options);
127
- else if (this.controls[name] instanceof FormArray && Array.isArray(value[name])) {
128
- let index = 0;
129
- for (let formGroup of this.controls[name].controls) {
130
- if (value[name][index])
131
- formGroup.patchModelValue(value[name][index], options);
132
- index = index + 1;
133
- }
134
- }
135
- else if (value[name] !== undefined)
136
- this.controls[name].patchValue(value[name], options);
137
- }
138
- }
139
- }
140
- getErrorSummary(onlyMessage) {
141
- let jObject = {};
142
- Object.keys(this.controls).forEach(columnName => {
143
- if (this.controls[columnName] instanceof FormGroup) {
144
- let error = this.controls[columnName].getErrorSummary(false);
145
- if (Object.keys(error).length > 0)
146
- jObject[columnName] = error;
147
- }
148
- else if (this.controls[columnName] instanceof FormArray) {
149
- let index = 0;
150
- for (let formGroup of this.controls[columnName].controls) {
151
- let error = formGroup.getErrorSummary(false);
152
- if (Object.keys(error).length > 0) {
153
- error.index = index;
154
- if (!jObject[columnName])
155
- jObject[columnName] = [];
156
- jObject[columnName].push(error);
157
- }
158
- index++;
159
- }
160
- }
161
- else {
162
- if (this.controls[columnName].errors) {
163
- let error = this.controls[columnName].errors;
164
- if (onlyMessage)
165
- for (let validationName in error)
166
- jObject[columnName] = error[validationName].message;
167
- else
168
- jObject[columnName] = error;
169
- }
170
- }
171
- });
172
- return jObject;
173
- }
174
- valueChangedSync() {
175
- Object.keys(this.controls).forEach(columnName => {
176
- if (!(this.controls[columnName] instanceof FormArray || this.controls[columnName] instanceof RxFormArray) && !(this.controls[columnName] instanceof FormGroup || this.controls[columnName] instanceof RxFormGroup) && !(this.entityObject[columnName] instanceof FormControl || this.entityObject[columnName] instanceof RxFormControl) && this.controls[columnName].getControlValue && ApplicationUtil.notEqualTo(this.controls[columnName].getControlValue(), this.entityObject[columnName])) {
177
- this.controls[columnName].setValue(this.entityObject[columnName], { updateChanged: true });
178
- }
179
- else if ((this.controls[columnName] instanceof FormArray || this.controls[columnName] instanceof RxFormArray)) {
180
- for (let formGroup of this.controls[columnName].controls) {
181
- formGroup.valueChangedSync();
182
- }
183
- }
184
- else if ((this.controls[columnName] instanceof RxFormGroup)) {
185
- this.controls[columnName].valueChangedSync();
186
- }
187
- });
188
- }
189
- refreshDisable() {
190
- Object.keys(this.controls).forEach(columnName => {
191
- if (!(this.controls[columnName] instanceof FormArray || this.controls[columnName] instanceof RxFormArray) && !(this.controls[columnName] instanceof FormGroup || this.controls[columnName] instanceof RxFormGroup)) {
192
- this.controls[columnName].refresh();
193
- }
194
- else if ((this.controls[columnName] instanceof RxFormGroup)) {
195
- this.controls[columnName].refreshDisable();
196
- }
197
- });
198
- }
199
- bindErrorMessages() {
200
- Object.keys(this.controls).forEach(columnName => {
201
- if (!(this.controls[columnName] instanceof FormArray || this.controls[columnName] instanceof RxFormArray) && !(this.controls[columnName] instanceof FormGroup || this.controls[columnName] instanceof RxFormGroup)) {
202
- this.controls[columnName].bindError();
203
- }
204
- else if ((this.controls[columnName] instanceof RxFormGroup)) {
205
- this.controls[columnName].bindErrorMessages();
206
- }
207
- });
208
- }
209
- get submitted() {
210
- return this._submitted;
211
- }
212
- set submitted(value) {
213
- this._submitted = value;
214
- Object.keys(this.controls).forEach(columnName => {
215
- if (this.controls[columnName] instanceof FormArray) {
216
- let formArray = this.controls[columnName];
217
- for (let formGroup of formArray.controls)
218
- formGroup.submitted = value;
219
- }
220
- else if (this.controls[columnName] instanceof FormGroup) {
221
- this.controls[columnName].submitted = value;
222
- }
223
- else
224
- this.controls[columnName].bindError();
225
- });
226
- }
227
- get modelInstanceValue() {
228
- return clone(this.entityObject);
229
- }
230
- get modelInstance() {
231
- return this.entityObject;
232
- }
233
- get controlsError() {
234
- return this.getErrorSummary(true);
235
- }
236
- toFormData(options) {
237
- return this.formDataProvider.convertToFormData(this.value, options);
238
- }
239
- processModified(controlName, control) {
240
- if (control.isModified)
241
- this._modified[controlName] = control.value;
242
- else
243
- delete this._modified[controlName];
244
- this._isModified = Object.keys(this._modified).length > 0;
245
- }
246
- nestedArrayIsModified() {
247
- for (var controlName in this.controls) {
248
- if (this.controls[controlName] instanceof RxFormArray)
249
- this._isModified = this.controls[controlName].isModified;
250
- if (this._isModified)
251
- break;
252
- }
253
- }
254
- setBackEndErrors(errors) {
255
- Object.keys(errors).forEach(controlName => {
256
- if (this.controls[controlName]) {
257
- if (this.controls[controlName] instanceof FormGroup)
258
- this.controls[controlName].setBackEndErrors(errors[controlName]);
259
- else
260
- this.controls[controlName].setBackEndErrors(errors[controlName]);
261
- }
262
- });
263
- }
264
- clearBackEndErrors(errors) {
265
- let clearErrors = errors ? Object.keys(errors) : Object.keys(this.controls);
266
- clearErrors.forEach(controlName => {
267
- if (this.controls[controlName]) {
268
- if (this.controls[controlName] instanceof FormGroup)
269
- errors ? this.controls[controlName].clearBackEndErrors(errors[controlName]) : this.controls[controlName].clearBackEndErrors();
270
- else
271
- errors ? this.controls[controlName].clearBackEndErrors(errors[controlName]) : this.controls[controlName].clearBackEndErrors();
272
- }
273
- });
274
- }
275
- nestedFormsModification() {
276
- for (var controlName in this.controls) {
277
- if (this.controls[controlName] instanceof RxFormGroup)
278
- this.processModified(controlName, this.controls[controlName]);
279
- else if (this.controls[controlName] instanceof RxFormArray) {
280
- if (this.controls[controlName].isModified) {
281
- let formGroups = this.controls[controlName].controls;
282
- this._modified[controlName] = [];
283
- for (var formGroup of formGroups) {
284
- if (formGroup.isModified) {
285
- if (!this._modified[controlName])
286
- this._modified[controlName] = [];
287
- this._modified[controlName].push(formGroup.modifiedValue);
288
- }
289
- }
290
- if (this._modified[controlName].length == 0)
291
- delete this._modified[controlName];
292
- }
293
- else if (this._modified[controlName])
294
- delete this._modified[controlName];
295
- }
296
- }
297
- }
298
- }
299
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicngtZm9ybS1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9zcmMvbGliL2Zvcm0tdmFsaWRhdG9ycy9zZXJ2aWNlcy9yeC1mb3JtLWdyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBcUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXZELE9BQU8sRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUUzRCxNQUFNLE9BQU8sV0FBWSxTQUFRLFNBQVM7SUFPdEMsWUFBb0IsS0FBVSxFQUFVLFlBQW9DLEVBQUUsUUFFN0UsRUFBRSxlQUFxQixFQUFFLGNBQTZEO1FBQ25GLEtBQUssQ0FBQyxRQUFRLEVBQUUsZUFBZSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBSGpDLFVBQUssR0FBTCxLQUFLLENBQUs7UUFBVSxpQkFBWSxHQUFaLFlBQVksQ0FBd0I7UUFIcEUsY0FBUyxHQUEyQixFQUFFLENBQUM7UUFDdkMsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDckMsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUt0QixJQUFJLENBQUMsVUFBVSxHQUFHLEVB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QkFDakQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO2lCQUM3RCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFlBQVksV0FBVyxFQUFFO2dCQUN4RCxJQUFrQixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBRSxDQUFDLFVBQVUsRUFBRTtvQkFDdEQsSUFBSSxVQUFVLEdBQWlCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFFLENBQUMsUUFBUSxDQUFDO29CQUNwRSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDakMsS0FBSyxJQUFJLFNBQVMsSUFBSSxVQUFVLEVBQUU7d0JBQzlCLElBQWtCLFNBQVUsQ0FBQyxVQUFVLEVBQUU7NEJBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQztnQ0FDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUM7NEJBQ3JDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFlLFNBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQTt5QkFDM0U7cUJBRUo7b0JBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDO3dCQUN2QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7aUJBQzFDO3FCQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUM7b0JBQ2xDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUMxQztTQUNKO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3JtQXJyYXksIEZvcm1Db250cm9sLCBBYnN0cmFjdENvbnRyb2wsIEFzeW5jVmFsaWRhdG9yRm4gfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IFJ4Rm9ybUNvbnRyb2wgfSBmcm9tIFwiLi9mb3JtLWNvbnRyb2xcIjtcbmltcG9ydCB7IGNsb25lIH0gZnJvbSAnLi9lbnRpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBSZWdleFZhbGlkYXRvciB9IGZyb20gJy4uL3V0aWwvcmVnZXgtdmFsaWRhdG9yJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uVXRpbCB9IGZyb20gJy4uL3V0aWwvYXBwLXV0aWwnO1xuaW1wb3J0IHsgUnhGb3JtQXJyYXkgfSBmcm9tICcuL3J4LWZvcm0tYXJyYXknO1xuaW1wb3J0IHsgRm9ybURhdGFQcm92aWRlciB9IGZyb20gXCIuLi9kb21haW4vZm9ybS1kYXRhXCI7XG5pbXBvcnQgeyBSZXNldEZvcm1UeXBlIH0gZnJvbSBcIi4uL2VudW1zL3Jlc2V0LXR5cGVcIjtcbmltcG9ydCB7IGlzUmVzZXRDb250cm9sLCBnZXROZXN0ZWRPcHRpb25zIH0gZnJvbSAnLi4vdXRpbC9yZXNldC1mb3JtJ1xuaW1wb3J0IHsgZGVmYXVsdENvbnRhaW5lciB9IGZyb20gJy4uL2NvcmUvZGVmYXVsdENvbnRhaW5lcidcbmltcG9ydCB7IEZvcm1EYXRhQ29uZmlnIH0gZnJvbSBcIi4uL21vZGVscy9pbnRlcmZhY2UvZm9ybS1kYXRhLWNvbmZpZ1wiO1xuZXhwb3J0IGNsYXNzIFJ4Rm9ybUdyb3VwIGV4dGVuZHMgRm9ybUdyb3VwIHtcbiAgICBwcml2YXRlIGJhc2VPYmplY3Q6IHsgW2tleTogc3RyaW5nXTogYW55IH1cbiAgICBwcml2YXRlIGZvcm1EYXRhUHJvdmlkZXI6IEZvcm1EYXRhUHJvdmlkZXI7XG4gICAgcHJpdmF0ZSBfc3VibWl0dGVkOiBib29sZWFuO1xuICAgIHByaXZhdGUgX21vZGlmaWVkOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XG4gICAgcHJpdmF0ZSBfaXNNb2RpZmllZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIGNoYW5naW5nOiBib29sZWFuID0gZmFsc2U7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBtb2RlbDogYW55LCBwcml2YXRlIGVudGl0eU9iamVjdDogeyBba2V5OiBzdHJpbmddOiBhbnkgfSwgY29udHJvbHM6IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogQWJzdHJhY3RDb250cm9sO1xuICAgIH0sIHZhbGlkYXRvck9yT3B0cz86IGFueSwgYXN5bmNWYWxpZGF0b3I/OiBBc3luY1ZhbGlkYXRvckZuIHwgQXN5bmNWYWxpZGF0b3JGbltdIHwgbnVsbCkge1xuICAgICAgICBzdXBlcihjb250cm9scywgdmFsaWRhdG9yT3JPcHRzLCBhc3luY1ZhbGlkYXRvcik7XG4gICAgICAgIHRoaXMuYmFzZU9iamVjdCA9IHt9XG4gICAgICAgIGZvciAodmFyIGNvbHVtbiBpbiB0aGlzLmVudGl0eU9iamVjdClcbiAgICAgICAgICAgIHRoaXMuYmFzZU9iamVjdFtjb2x1bW5dID0gdGhpcy5lbnRpdHlPYmplY3RbY29sdW1uXVxuICAgICAgICB0aGlzLmZvcm1EYXRhUHJvdmlkZXIgPSBuZXcgRm9ybURhdGFQcm92aWRlcigpO1xuICAgIH1cblxuICAgIGJpbmRQcmltYXJ5S2V5KG1vZGVsSW5zdGFuY2U6IGFueSwgak9iamVjdDogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xuICAgICAgICBsZXQgaW5zdGFuY2VDb250YWluZXIgPSBkZWZhdWx0Q29udGFpbmVyLmdldChtb2RlbEluc3RhbmNlLmNvbnN0cnVjdG9yKTsgICAgXG4gICAgICAgIGlmIChpbnN0YW5jZUNvbnRhaW5lcilcbiAgICAgICAge1xuICAgICAgICAgICAgbGV0IHByaW1hcnlLZXlQcm9wID0gaW5zdGFuY2VDb250YWluZXIucHJvcGVydGllcy5maWx0ZXIoeCA9PiB4LmlzUHJpbWFyeUtleSlbMF07XG4gICAgICAgICAgICBpZiAocHJpbWFyeUtleVByb3AgJiYgdGhpcy5tb2RlbEluc3RhbmNlW3ByaW1hcnlLZXlQcm9wLm5hbWVdKVxuICAgICAgICAgICAgICAgIGpPYmplY3RbcHJpbWFyeUtleVByb3AubmFtZV0gPSB0aGlzLm1vZGVsSW5zdGFuY2VbcHJpbWFyeUtleVByb3AubmFtZV07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgbW9kaWZpZWRWYWx1ZSgpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IHtcbiAgICAgICAgbGV0IGpPYmplY3QgPSB7fTtcbiAgICAgICAgaWYgKE9iamVjdC5rZXlzKHRoaXMuX21vZGlmaWVkKS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0aGlzLmJpbmRQcmltYXJ5S2V5KHRoaXMubW9kZWxJbnN0YW5jZSwgak9iamVjdClcbiAgICAgICAgICAgIGZvciAodmFyIGNvbHVtbk5hbWUgaW4gdGhpcy5fbW9kaWZpZWQpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKVxuICAgICAgICAgICAgICAgICAgICBqT2JqZWN0W2NvbHVtbk5hbWVdID0gKDxSeEZvcm1Hcm91cD50aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdKS5tb2RpZmllZFZhbHVlO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGZvcm1BcnJheSA9IHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gYXMgRm9ybUFycmF5O1xuICAgICAgICAgICAgICAgICAgICBqT2JqZWN0W2NvbHVtbk5hbWVdID0gW107XG4gICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fbW9kaWZpZWRbY29sdW1uTmFtZV0ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBtb2RpZmllZFZhbHVlID0gKDxSeEZvcm1Hcm91cD5mb3JtQXJyYXkuY29udHJvbHNbaV0pLm1vZGlmaWVkVmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhtb2RpZmllZFZhbHVlKS5sZW5ndGggPiAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpPYmplY3RbY29sdW1uTmFtZV0ucHVzaChtb2RpZmllZFZhbHVlKVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChqT2JqZWN0W2NvbHVtbk5hbWVdLmxlbmd0aCA9PSAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIGpPYmplY3RbY29sdW1uTmFtZV07XG4gICAgICAgICAgICAgICAgfSBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGpPYmplY3RbY29sdW1uTmFtZV0gPSB0aGlzLl9tb2RpZmllZFtjb2x1bW5OYW1lXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBqT2JqZWN0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl9tb2RpZmllZDtcbiAgICB9XG5cbiAgICBnZXQgaXNNb2RpZmllZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzTW9kaWZpZWQ7XG4gICAgfVxuXG4gICAgcGF0Y2goY29udHJvbE5hbWU/OiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKGNvbnRyb2xOYW1lKSB7XG4gICAgICAgICAgICBsZXQgY29udHJvbCA9IDxSeEZvcm1Db250cm9sPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdO1xuICAgICAgICAgICAgdGhpcy5wcm9jZXNzTW9kaWZpZWQoY29udHJvbE5hbWUsIGNvbnRyb2wpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uZXN0ZWRGb3Jtc01vZGlmaWNhdGlvbigpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2lzTW9kaWZpZWQgPSBPYmplY3Qua2V5cyh0aGlzLl9tb2RpZmllZCkubGVuZ3RoID4gMDtcbiAgICAgICAgaWYgKCF0aGlzLl9pc01vZGlmaWVkKVxuICAgICAgICAgICAgdGhpcy5uZXN0ZWRBcnJheUlzTW9kaWZpZWQoKTtcbiAgICAgICAgaWYgKHRoaXMucGFyZW50ICYmICg8UnhGb3JtR3JvdXA+dGhpcy5wYXJlbnQpLnBhdGNoKVxuICAgICAgICAgICAgKDxSeEZvcm1Hcm91cD50aGlzLnBhcmVudCkucGF0Y2goKTtcbiAgICB9XG5cbiAgICBpc0RpcnR5KCk6IGJvb2xlYW4ge1xuICAgICAgICBsZXQgaXNEaXJ0eTogYm9vbGVhbiA9IGZhbHNlO1xuICAgICAgICBmb3IgKGxldCBuYW1lIGluIHRoaXMudmFsdWUpIHtcbiAgICAgICAgICAgIGxldCBjdXJyZW50VmFsdWUgPSB0aGlzLm1vZGVsSW5zdGFuY2VbbmFtZV07XG4gICAgICAgICAgICBpZiAoISh0aGlzLmNvbnRyb2xzW25hbWVdIGluc3RhbmNlb2YgRm9ybUdyb3VwIHx8IHRoaXMuY29udHJvbHNbbmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkpKSB7XG4gICAgICAgICAgICAgICAgaXNEaXJ0eSA9IEFwcGxpY2F0aW9uVXRpbC5ub3RFcXVhbFRvKHRoaXMuYmFzZU9iamVjdFtuYW1lXSwgY3VycmVudFZhbHVlKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5jb250cm9sc1tuYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKVxuICAgICAgICAgICAgICAgIGlzRGlydHkgPSAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbbmFtZV0pLmlzRGlydHkoKTtcbiAgICAgICAgICAgIGVsc2UgaWYgKHRoaXMuY29udHJvbHNbbmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkpIHtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBmb3JtR3JvdXAgb2YgKDxGb3JtQXJyYXk+dGhpcy5jb250cm9sc1tuYW1lXSkuY29udHJvbHMpIHtcbiAgICAgICAgICAgICAgICAgICAgaXNEaXJ0eSA9ICg8UnhGb3JtR3JvdXA+Zm9ybUdyb3VwKS5pc0RpcnR5KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzRGlydHkpXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGlzRGlydHk7XG4gICAgfTtcblxuICAgIHJlc2V0Rm9ybShvcHRpb25zPzoge1xuICAgICAgICByZXNldFR5cGU/OiBSZXNldEZvcm1UeXBlLFxuICAgICAgICB3aXRoPzogc3RyaW5nW10sXG4gICAgICAgIHZhbHVlPzogeyBba2V5OiBzdHJpbmddOmFueX1cbiAgICB9KTogdm9pZCB7XG4gICAgICAgIGZvciAobGV0IG5hbWUgaW4gdGhpcy5jb250cm9scykge1xuICAgICAgICAgICAgaWYgKGlzUmVzZXRDb250cm9sKG5hbWUsIHRoaXMuY29udHJvbHNbbmFtZV0sIG9wdGlvbnMpKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbbmFtZV0gaW5zdGFuY2VvZiBGb3JtR3JvdXApXG4gICAgICAgICAgICAgICAgICAgICg8UnhGb3JtR3JvdXA+dGhpcy5jb250cm9sc1tuYW1lXSkucmVzZXRGb3JtKGdldE5lc3RlZE9wdGlvbnMobmFtZSxvcHRpb25zKSk7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAodGhpcy5jb250cm9sc1tuYW1lXSBpbnN0YW5jZW9mIEZvcm1BcnJheSkge1xuICAgICAgICAgICAgICAgICAgICAoPFJ4Rm9ybUFycmF5PnRoaXMuY29udHJvbHNbbmFtZV0pLnJlc2V0Rm9ybShvcHRpb25zICYmIG9wdGlvbnMudmFsdWUgPyBvcHRpb25zLnZhbHVlW25hbWVdIDogdW5kZWZpbmVkKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnZhbHVlICYmIFJlZ2V4VmFsaWRhdG9yLmlzTm90Qmxhbmsob3B0aW9ucy52YWx1ZVtuYW1lXSkpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xzW25hbWVdLnJlc2V0KG9wdGlvbnMudmFsdWVbbmFtZV0pO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xzW25hbWVdLnJlc2V0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29tbWl0KCkge1xuICAgICAgICBmb3IgKGxldCBuYW1lIGluIHRoaXMuY29udHJvbHMpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2xzW25hbWVdIGluc3RhbmNlb2YgRm9ybUdyb3VwKVxuICAgICAgICAgICAgICAgICg8UnhGb3JtR3JvdXA+dGhpcy5jb250cm9sc1tuYW1lXSkuY29tbWl0KCk7XG4gICAgICAgICAgICBlbHNlIGlmICh0aGlzLmNvbnRyb2xzW25hbWVdIGluc3RhbmNlb2YgRm9ybUFycmF5KSB7XG4gICAgICAgICAgICAgICAgKDxSeEZvcm1BcnJheT50aGlzLmNvbnRyb2xzW25hbWVdKS5jb21taXQoKTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgKDxSeEZvcm1Db250cm9sPnRoaXMuY29udHJvbHNbbmFtZV0pLmNvbW1pdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcGF0Y2hNb2RlbFZhbHVlKHZhbHVlOiB7XG4gICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICB9LCBvcHRpb25zPzoge1xuICAgICAgICBvbmx5U2VsZj86IGJvb2xlYW47XG4gICAgICAgIGVtaXRFdmVudD86IGJvb2xlYW47XG4gICAgfSk6IHZvaWQge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIGZvciAobGV0IG5hbWUgaW4gdGhpcy5jb250cm9scykge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2xzW25hbWVdIGluc3RhbmNlb2YgUnhGb3JtR3JvdXAgJiYgdmFsdWVbbmFtZV0pXG4gICAgICAgICAgICAgICAgICAgICg8UnhGb3JtR3JvdXA+dGhpcy5jb250cm9sc1tuYW1lXSkucGF0Y2hNb2RlbFZhbHVlKHZhbHVlW25hbWVdLCBvcHRpb25zKTtcbiAgICAgICAgICAgICAgICBlbHNlIGlmICh0aGlzLmNvbnRyb2xzW25hbWVdIGluc3RhbmNlb2YgRm9ybUFycmF5ICYmIEFycmF5LmlzQXJyYXkodmFsdWVbbmFtZV0pKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBpbmRleCA9IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGZvcm1Hcm91cCBvZiAoPEZvcm1BcnJheT50aGlzLmNvbnRyb2xzW25hbWVdKS5jb250cm9scykge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlW25hbWVdW2luZGV4XSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoPFJ4Rm9ybUdyb3VwPmZvcm1Hcm91cCkucGF0Y2hNb2RlbFZhbHVlKHZhbHVlW25hbWVdW2luZGV4XSwgb3B0aW9ucyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbmRleCA9IGluZGV4ICsgMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gZWxzZVxuICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWVbbmFtZV0gIT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbHNbbmFtZV0ucGF0Y2hWYWx1ZSh2YWx1ZVtuYW1lXSwgb3B0aW9ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIGdldEVycm9yU3VtbWFyeShvbmx5TWVzc2FnZTogYm9vbGVhbik6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICAgICAgICBsZXQgak9iamVjdDogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmNvbnRyb2xzKS5mb3JFYWNoKGNvbHVtbk5hbWUgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtR3JvdXApIHtcbiAgICAgICAgICAgICAgICBsZXQgZXJyb3IgPSAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0pLmdldEVycm9yU3VtbWFyeShmYWxzZSk7XG4gICAgICAgICAgICAgICAgaWYgKE9iamVjdC5rZXlzKGVycm9yKS5sZW5ndGggPiAwKVxuICAgICAgICAgICAgICAgICAgICBqT2JqZWN0W2NvbHVtbk5hbWVdID0gZXJyb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh0aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgRm9ybUFycmF5KSB7XG4gICAgICAgICAgICAgICAgbGV0IGluZGV4ID0gMDtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBmb3JtR3JvdXAgb2YgKDxGb3JtQXJyYXk+dGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSkuY29udHJvbHMpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGVycm9yID0gKDxSeEZvcm1Hcm91cD5mb3JtR3JvdXApLmdldEVycm9yU3VtbWFyeShmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhlcnJvcikubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IuaW5kZXggPSBpbmRleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghak9iamVjdFtjb2x1bW5OYW1lXSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqT2JqZWN0W2NvbHVtbk5hbWVdID0gW107XG4gICAgICAgICAgICAgICAgICAgICAgICBqT2JqZWN0W2NvbHVtbk5hbWVdLnB1c2goZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGluZGV4Kys7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXS5lcnJvcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGVycm9yID0gdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXS5lcnJvcnM7XG4gICAgICAgICAgICAgICAgICAgIGlmIChvbmx5TWVzc2FnZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IHZhbGlkYXRpb25OYW1lIGluIGVycm9yKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpPYmplY3RbY29sdW1uTmFtZV0gPSBlcnJvclt2YWxpZGF0aW9uTmFtZV0ubWVzc2FnZTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgak9iamVjdFtjb2x1bW5OYW1lXSA9IGVycm9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIGpPYmplY3Q7XG4gICAgfVxuXG4gICAgdmFsdWVDaGFuZ2VkU3luYygpIHtcbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5jb250cm9scykuZm9yRWFjaChjb2x1bW5OYW1lID0+IHtcbiAgICAgICAgICAgIGlmICghKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkgfHwgdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUFycmF5KSAmJiAhKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtR3JvdXAgfHwgdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKSAmJiAhKHRoaXMuZW50aXR5T2JqZWN0W2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgRm9ybUNvbnRyb2wgfHwgdGhpcy5lbnRpdHlPYmplY3RbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBSeEZvcm1Db250cm9sKSAmJiAoPFJ4Rm9ybUNvbnRyb2w+dGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSkuZ2V0Q29udHJvbFZhbHVlICYmIEFwcGxpY2F0aW9uVXRpbC5ub3RFcXVhbFRvKCg8UnhGb3JtQ29udHJvbD50aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdKS5nZXRDb250cm9sVmFsdWUoKSwgdGhpcy5lbnRpdHlPYmplY3RbY29sdW1uTmFtZV0pKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXS5zZXRWYWx1ZSh0aGlzLmVudGl0eU9iamVjdFtjb2x1bW5OYW1lXSwgeyB1cGRhdGVDaGFuZ2VkOiB0cnVlIH0pO1xuICAgICAgICAgICAgfSBlbHNlIGlmICgodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIEZvcm1BcnJheSB8fCB0aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgUnhGb3JtQXJyYXkpKSB7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgZm9ybUdyb3VwIG9mICg8Rm9ybUFycmF5PnRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0pLmNvbnRyb2xzKSB7XG4gICAgICAgICAgICAgICAgICAgICg8UnhGb3JtR3JvdXA+Zm9ybUdyb3VwKS52YWx1ZUNoYW5nZWRTeW5jKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIGlmICgodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKSkge1xuICAgICAgICAgICAgICAgICg8UnhGb3JtR3JvdXA+dGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSkudmFsdWVDaGFuZ2VkU3luYygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIHJlZnJlc2hEaXNhYmxlKCkge1xuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmNvbnRyb2xzKS5mb3JFYWNoKGNvbHVtbk5hbWUgPT4ge1xuICAgICAgICAgICAgaWYgKCEodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIEZvcm1BcnJheSB8fCB0aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgUnhGb3JtQXJyYXkpICYmICEodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIEZvcm1Hcm91cCB8fCB0aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgUnhGb3JtR3JvdXApKSB7XG4gICAgICAgICAgICAgICAgKDxSeEZvcm1Db250cm9sPnRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0pLnJlZnJlc2goKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBSeEZvcm1Hcm91cCkpIHtcbiAgICAgICAgICAgICAgICAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0pLnJlZnJlc2hEaXNhYmxlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICB9XG5cbiAgICBiaW5kRXJyb3JNZXNzYWdlcygpIHtcbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5jb250cm9scykuZm9yRWFjaChjb2x1bW5OYW1lID0+IHtcbiAgICAgICAgICAgIGlmICghKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkgfHwgdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUFycmF5KSAmJiAhKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtR3JvdXAgfHwgdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKSkge1xuICAgICAgICAgICAgICAgICg8UnhGb3JtQ29udHJvbD50aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdKS5iaW5kRXJyb3IoKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBSeEZvcm1Hcm91cCkpIHtcbiAgICAgICAgICAgICAgICAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0pLmJpbmRFcnJvck1lc3NhZ2VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgZ2V0IHN1Ym1pdHRlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N1Ym1pdHRlZDtcbiAgICB9XG5cbiAgICBzZXQgc3VibWl0dGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3N1Ym1pdHRlZCA9IHZhbHVlO1xuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmNvbnRyb2xzKS5mb3JFYWNoKGNvbHVtbk5hbWUgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkpIHtcbiAgICAgICAgICAgICAgICBsZXQgZm9ybUFycmF5ID0gdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBhcyBGb3JtQXJyYXk7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgZm9ybUdyb3VwIG9mIGZvcm1BcnJheS5jb250cm9scylcbiAgICAgICAgICAgICAgICAgICAgKDxSeEZvcm1Hcm91cD5mb3JtR3JvdXApLnN1Ym1pdHRlZCA9IHZhbHVlO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgRm9ybUdyb3VwKSB7XG4gICAgICAgICAgICAgICAgKDxSeEZvcm1Hcm91cD50aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdKS5zdWJtaXR0ZWQgPSB2YWx1ZTtcbiAgICAgICAgICAgIH0gZWxzZVxuICAgICAgICAgICAgICAgICg8UnhGb3JtQ29udHJvbD50aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdKS5iaW5kRXJyb3IoKTtcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBnZXQgbW9kZWxJbnN0YW5jZVZhbHVlKCkge1xuICAgICAgICByZXR1cm4gY2xvbmUodGhpcy5lbnRpdHlPYmplY3QpO1xuICAgIH1cblxuICAgIGdldCBtb2RlbEluc3RhbmNlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lbnRpdHlPYmplY3Q7XG4gICAgfVxuXG4gICAgZ2V0IGNvbnRyb2xzRXJyb3IoKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEVycm9yU3VtbWFyeSh0cnVlKTtcbiAgICB9XG5cbiAgICB0b0Zvcm1EYXRhKG9wdGlvbnM/OiBGb3JtRGF0YUNvbmZpZyk6IEZvcm1EYXRhIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybURhdGFQcm92aWRlci5jb252ZXJ0VG9Gb3JtRGF0YSh0aGlzLnZhbHVlLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3NNb2RpZmllZChjb250cm9sTmFtZTpzdHJpbmcsY29udHJvbDogYW55KSB7XG4gICAgICAgIGlmIChjb250cm9sLmlzTW9kaWZpZWQpXG4gICAgICAgICAgICB0aGlzLl9tb2RpZmllZFtjb250cm9sTmFtZV0gPSBjb250cm9sLnZhbHVlO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBkZWxldGUgdGhpcy5fbW9kaWZpZWRbY29udHJvbE5hbWVdO1xuICAgICAgICB0aGlzLl9pc01vZGlmaWVkID0gT2JqZWN0LmtleXModGhpcy5fbW9kaWZpZWQpLmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBuZXN0ZWRBcnJheUlzTW9kaWZpZWQoKSB7XG4gICAgICAgIGZvciAodmFyIGNvbnRyb2xOYW1lIGluIHRoaXMuY29udHJvbHMpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2xzW2NvbnRyb2xOYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUFycmF5KVxuICAgICAgICAgICAgICAgIHRoaXMuX2lzTW9kaWZpZWQgPSAoPFJ4Rm9ybUFycmF5PnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5pc01vZGlmaWVkO1xuICAgICAgICAgICAgaWYgKHRoaXMuX2lzTW9kaWZpZWQpXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRCYWNrRW5kRXJyb3JzKGVycm9yczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xuICAgICAgICBPYmplY3Qua2V5cyhlcnJvcnMpLmZvckVhY2goY29udHJvbE5hbWUgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdIGluc3RhbmNlb2YgRm9ybUdyb3VwKVxuICAgICAgICAgICAgICAgICAgICAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5zZXRCYWNrRW5kRXJyb3JzKGVycm9yc1tjb250cm9sTmFtZV0pXG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAoPFJ4Rm9ybUNvbnRyb2w+dGhpcy5jb250cm9sc1tjb250cm9sTmFtZV0pLnNldEJhY2tFbmRFcnJvcnMoZXJyb3JzW2NvbnRyb2xOYW1lXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuXG4gICBjbGVhckJhY2tFbmRFcnJvcnMoZXJyb3JzPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xuICAgICAgICBsZXQgY2xlYXJFcnJvcnMgPSBlcnJvcnMgPyBPYmplY3Qua2V5cyhlcnJvcnMpIDogT2JqZWN0LmtleXModGhpcy5jb250cm9scyk7XG4gICAgICAgIGNsZWFyRXJyb3JzLmZvckVhY2goY29udHJvbE5hbWUgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdIGluc3RhbmNlb2YgRm9ybUdyb3VwKVxuICAgICAgICAgICAgICAgICAgICBlcnJvcnMgPyAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5jbGVhckJhY2tFbmRFcnJvcnMoZXJyb3JzW2NvbnRyb2xOYW1lXSkgOiAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5jbGVhckJhY2tFbmRFcnJvcnMoKVxuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JzID8gKDxSeEZvcm1Db250cm9sPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5jbGVhckJhY2tFbmRFcnJvcnMoZXJyb3JzW2NvbnRyb2xOYW1lXSkgOiAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5jbGVhckJhY2tFbmRFcnJvcnMoKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIHByaXZhdGUgbmVzdGVkRm9ybXNNb2RpZmljYXRpb24oKSB7XG4gICAgICAgIGZvciAodmFyIGNvbnRyb2xOYW1lIGluIHRoaXMuY29udHJvbHMpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2xzW2NvbnRyb2xOYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKSBcbiAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3NNb2RpZmllZChjb250cm9sTmFtZSwgdGhpcy5jb250cm9sc1tjb250cm9sTmFtZV0pO1xuICAgICAgICAgICAgZWxzZSBpZiAodGhpcy5jb250cm9sc1tjb250cm9sTmFtZV0gaW5zdGFuY2VvZiBSeEZvcm1BcnJheSkge1xuICAgICAgICAgICAgICAgIGlmICgoPFJ4Rm9ybUFycmF5PnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5pc01vZGlmaWVkKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBmb3JtR3JvdXBzID0gKDxSeEZvcm1BcnJheT50aGlzLmNvbnRyb2xzW2NvbnRyb2xOYW1lXSkuY29udHJvbHM7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX21vZGlmaWVkW2NvbnRyb2xOYW1lXSA9IFtdO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBmb3JtR3JvdXAgb2YgZm9ybUdyb3Vwcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCg8UnhGb3JtR3JvdXA+Zm9ybUdyb3VwKS5pc01vZGlmaWVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLl9tb2RpZmllZFtjb250cm9sTmFtZV0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX21vZGlmaWVkW2NvbnRyb2xOYW1lXSA9IFtdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX21vZGlmaWVkW2NvbnRyb2xOYW1lXS5wdXNoKCg8UnhGb3JtR3JvdXA+Zm9ybUdyb3VwKS5tb2RpZmllZFZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX21vZGlmaWVkW2NvbnRyb2xOYW1lXS5sZW5ndGggPT0gMClcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9tb2RpZmllZFtjb250cm9sTmFtZV07XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9tb2RpZmllZFtjb250cm9sTmFtZV0pXG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9tb2RpZmllZFtjb250cm9sTmFtZV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -1,29 +0,0 @@
1
- import { FormBuilder } from "@angular/forms";
2
- import { RxFormBuilder } from "./rx-form-builder";
3
- import { FUNCTION_STRING } from "../const/app.const";
4
- import { Injectable } from "@angular/core";
5
- export class TypedFormBuilder {
6
- constructor() {
7
- this.formBuilder = new FormBuilder();
8
- this.rxFormBuilder = new RxFormBuilder();
9
- }
10
- group(controlsConfig, options) {
11
- let paramOptions = options || {};
12
- if (typeof controlsConfig == FUNCTION_STRING)
13
- return !(paramOptions && paramOptions.isInstance) ? this.rxFormBuilder.formGroup(controlsConfig, paramOptions.data, paramOptions.config) : this.rxFormBuilder.formGroup(controlsConfig, paramOptions.data, paramOptions.config).modelInstance;
14
- return this.formBuilder.group(controlsConfig, options);
15
- }
16
- }
17
- /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
18
- TypedFormBuilder.decorators = [
19
- { type: Injectable }
20
- ];
21
- /**
22
- * @type {function(): !Array<(null|{
23
- * type: ?,
24
- * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
25
- * })>}
26
- * @nocollapse
27
- */
28
- TypedFormBuilder.ctorParameters = () => [];
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtZm9ybS1idWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3NlcnZpY2VzL3R5cGVkLWZvcm0tYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFxQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFJcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxNQUFNLE9BQU8sZ0JBQWdCO0lBR3pCO1FBQ0ksSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsS0FBSyxDQUFJLGNBRVIsRUFBRSxPQUVLO1FBQ0osSUFBSSxZQUFZLEdBQVksT0FBTyxJQUFTLEVBQUUsQ0FBQztRQUMvQyxJQUFJLE9BQU8sY0FBYyxJQUFJLGVBQWU7WUFDeEMsT0FBTyxDQUFDLENBQUMsWUFBWSxJQUFJLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLE1BQU0sQ0FBa0IsQ0FBQyxDQUFDLENBQWUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLE1BQU0sQ0FBRSxDQUFDLGFBQWtCLENBQUM7UUFDdlIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUMsT0FBTyxDQUFDLENBQUM7SUFDMUQsQ0FBQzs7OztZQWxCSixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgQWJzdHJhY3RDb250cm9sT3B0aW9ucyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgUnhGb3JtQnVpbGRlciB9IGZyb20gXCIuL3J4LWZvcm0tYnVpbGRlclwiO1xuaW1wb3J0IHsgRlVOQ1RJT05fU1RSSU5HIH0gZnJvbSBcIi4uL2NvbnN0L2FwcC5jb25zdFwiXG5pbXBvcnQgeyBPcHRpb25zIH0gZnJvbSBcIi4uL21vZGVscy9pbnRlcmZhY2Uvb3B0aW9uc1wiXG5pbXBvcnQgeyBSeEZvcm1Hcm91cCB9IGZyb20gXCIuL3J4LWZvcm0tZ3JvdXBcIjtcbmltcG9ydCB7IElGb3JtR3JvdXAgfSBmcm9tIFwiLi4vbW9kZWxzL2ludGVyZmFjZS9pLWZvcm0tZ3JvdXBcIjtcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFR5cGVkRm9ybUJ1aWxkZXIge1xuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyO1xuICAgIHByaXZhdGUgcnhGb3JtQnVpbGRlcjogUnhGb3JtQnVpbGRlcjtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5mb3JtQnVpbGRlciA9IG5ldyBGb3JtQnVpbGRlcigpO1xuICAgICAgICB0aGlzLnJ4Rm9ybUJ1aWxkZXIgPSBuZXcgUnhGb3JtQnVpbGRlcigpO1xuICAgIH1cblxuICAgIGdyb3VwPFQ+KGNvbnRyb2xzQ29uZmlnOiB7XG4gICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICB9LCBvcHRpb25zPzogQWJzdHJhY3RDb250cm9sT3B0aW9ucyB8IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgIH0gfCBudWxsKTogRm9ybUdyb3VwIHwgVCB7XG4gICAgICAgIGxldCBwYXJhbU9wdGlvbnMgPSA8T3B0aW9ucz5vcHRpb25zIHx8IDxhbnk+e307XG4gICAgICAgIGlmICh0eXBlb2YgY29udHJvbHNDb25maWcgPT0gRlVOQ1RJT05fU1RSSU5HKVxuICAgICAgICAgICAgcmV0dXJuICEocGFyYW1PcHRpb25zICYmIHBhcmFtT3B0aW9ucy5pc0luc3RhbmNlKSA/IHRoaXMucnhGb3JtQnVpbGRlci5mb3JtR3JvdXAoY29udHJvbHNDb25maWcsIHBhcmFtT3B0aW9ucy5kYXRhLCBwYXJhbU9wdGlvbnMuY29uZmlnKSBhcyBJRm9ybUdyb3VwPFQ+IDogKDxSeEZvcm1Hcm91cD50aGlzLnJ4Rm9ybUJ1aWxkZXIuZm9ybUdyb3VwKGNvbnRyb2xzQ29uZmlnLCBwYXJhbU9wdGlvbnMuZGF0YSwgcGFyYW1PcHRpb25zLmNvbmZpZykpLm1vZGVsSW5zdGFuY2UgYXMgVDtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoY29udHJvbHNDb25maWcsb3B0aW9ucyk7XG4gICAgfVxufSJdfQ==
@@ -1,29 +0,0 @@
1
- export const alphabet = {
2
- 'danish': /^[A-ZÆØÅ]+$/,
3
- 'french': /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/,
4
- 'german': /^[A-ZÄÖÜß]+$/,
5
- 'spanish': /^[a-zñáéíóúü]+$/i,
6
- 'russian': /^[А-ЯЁ]+$/,
7
- };
8
- export const alphaWithWhitespace = {
9
- 'danish': /^[A-ZÆØÅ\s]+$/,
10
- 'french': /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ\s]+$/,
11
- 'german': /^[A-ZÄÖÜß\s]+$/,
12
- 'spanish': /^[a-zñáéíóúü\s]+$/i,
13
- 'russian': /^[А-ЯЁ\s]+$/,
14
- };
15
- export const alphanumeric = {
16
- 'danish': /^[0-9A-ZÆØÅ]+$/,
17
- 'french': /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/,
18
- 'german': /^[0-9A-ZÄÖÜß]+$/,
19
- 'spanish': /^[0-9a-zñáéíóúü]+$/i,
20
- 'russian': /^[0-9А-ЯЁ]+$/,
21
- };
22
- export const alphanumericWithWitespace = {
23
- 'danish': /^[0-9A-ZÆØÅ]+$/,
24
- 'french': /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/,
25
- 'german': /^[0-9A-ZÄÖÜß]+$/,
26
- 'spanish': /^[0-9a-zñáéíóúü\s]+$/i,
27
- 'russian': /^[0-9А-ЯЁ]+$/,
28
- };
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxwaGFiZXQtcmVnZXgubG9jYWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3V0aWwvYWxwaGFiZXQtcmVnZXgubG9jYWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRztJQUNwQixRQUFRLEVBQUUsYUFBYTtJQUN2QixRQUFRLEVBQUUsMEJBQTBCO0lBQ3BDLFFBQVEsRUFBRSxjQUFjO0lBQ3hCLFNBQVMsRUFBRSxrQkFBa0I7SUFDN0IsU0FBUyxFQUFFLFdBQVc7Q0FFekIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQy9CLFFBQVEsRUFBRSxlQUFlO0lBQ3pCLFFBQVEsRUFBRSw0QkFBNEI7SUFDdEMsUUFBUSxFQUFFLGdCQUFnQjtJQUMxQixTQUFTLEVBQUUsb0JBQW9CO0lBQy9CLFNBQVMsRUFBRSxhQUFhO0NBRTNCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDeEIsUUFBUSxFQUFFLGdCQUFnQjtJQUMxQixRQUFRLEVBQUUsNkJBQTZCO0lBQ3ZDLFFBQVEsRUFBRSxpQkFBaUI7SUFDM0IsU0FBUyxFQUFFLHFCQUFxQjtJQUNoQyxTQUFTLEVBQUUsY0FBYztDQUM1QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUc7SUFDckMsUUFBUSxFQUFFLGdCQUFnQjtJQUMxQixRQUFRLEVBQUUsNkJBQTZCO0lBQ3ZDLFFBQVEsRUFBRSxpQkFBaUI7SUFDM0IsU0FBUyxFQUFFLHVCQUF1QjtJQUNsQyxTQUFTLEVBQUUsY0FBYztDQUM1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGFscGhhYmV0ID0ge1xuICAgICdkYW5pc2gnOiAvXltBLVrDhsOYw4VdKyQvLFxuICAgICdmcmVuY2gnOiAvXltBLVrDgMOCw4bDh8OJw4jDisOLw4/DjsOUxZLDmcObw5zFuF0rJC8sXG4gICAgJ2dlcm1hbic6IC9eW0EtWsOEw5bDnMOfXSskLyxcbiAgICAnc3BhbmlzaCc6IC9eW2EtesOxw6HDqcOtw7PDusO8XSskL2ksXG4gICAgJ3J1c3NpYW4nOiAvXlvQkC3Qr9CBXSskLyxcblxufTtcblxuZXhwb3J0IGNvbnN0IGFscGhhV2l0aFdoaXRlc3BhY2UgPSB7XG4gICAgJ2RhbmlzaCc6IC9eW0EtWsOGw5jDhVxcc10rJC8sXG4gICAgJ2ZyZW5jaCc6IC9eW0EtWsOAw4LDhsOHw4nDiMOKw4vDj8OOw5TFksOZw5vDnMW4XFxzXSskLyxcbiAgICAnZ2VybWFuJzogL15bQS1aw4TDlsOcw59cXHNdKyQvLFxuICAgICdzcGFuaXNoJzogL15bYS16w7HDocOpw63Ds8O6w7xcXHNdKyQvaSxcbiAgICAncnVzc2lhbic6IC9eW9CQLdCv0IFcXHNdKyQvLFxuXG59O1xuXG5leHBvcnQgY29uc3QgYWxwaGFudW1lcmljID0ge1xuICAgICdkYW5pc2gnOiAvXlswLTlBLVrDhsOYw4VdKyQvLFxuICAgICdmcmVuY2gnOiAvXlswLTlBLVrDgMOCw4bDh8OJw4jDisOLw4/DjsOUxZLDmcObw5zFuF0rJC8sXG4gICAgJ2dlcm1hbic6IC9eWzAtOUEtWsOEw5bDnMOfXSskLyxcbiAgICAnc3BhbmlzaCc6IC9eWzAtOWEtesOxw6HDqcOtw7PDusO8XSskL2ksXG4gICAgJ3J1c3NpYW4nOiAvXlswLTnQkC3Qr9CBXSskLyxcbn07XG5cbmV4cG9ydCBjb25zdCBhbHBoYW51bWVyaWNXaXRoV2l0ZXNwYWNlID0ge1xuICAgICdkYW5pc2gnOiAvXlswLTlBLVrDhsOYw4VdKyQvLFxuICAgICdmcmVuY2gnOiAvXlswLTlBLVrDgMOCw4bDh8OJw4jDisOLw4/DjsOUxZLDmcObw5zFuF0rJC8sXG4gICAgJ2dlcm1hbic6IC9eWzAtOUEtWsOEw5bDnMOfXSskLyxcbiAgICAnc3BhbmlzaCc6IC9eWzAtOWEtesOxw6HDqcOtw7PDusO8XFxzXSskL2ksXG4gICAgJ3J1c3NpYW4nOiAvXlswLTnQkC3Qr9CBXSskLyxcbn07XG5cbiJdfQ==
@@ -1,141 +0,0 @@
1
- import { FormArray } from "@angular/forms";
2
- import { RxFormArray } from "../services/rx-form-array";
3
- import { NumericValueType } from '../enums';
4
- import { ReactiveFormConfig } from "./reactive-form-config";
5
- const MODEL_INSTANCE_VALUE = "modelInstanceValue";
6
- export class ApplicationUtil {
7
- static getParentObjectValue(control) {
8
- if (control.parent) {
9
- let parent = this.parentObjectValue(control.parent);
10
- return parent.value;
11
- }
12
- return {};
13
- }
14
- static getParentModelInstanceValue(control) {
15
- if (control.parent) {
16
- let parent = this.parentObjectValue(control.parent);
17
- return parent[MODEL_INSTANCE_VALUE];
18
- }
19
- return {};
20
- }
21
- static getRootFormGroup(control) {
22
- if (control.parent) {
23
- return this.getRootFormGroup(control.parent);
24
- }
25
- return control;
26
- }
27
- static getParentControl(control) {
28
- if (control.parent) {
29
- let parent = this.parentObjectValue(control.parent);
30
- return parent;
31
- }
32
- return control;
33
- }
34
- static getFormControlName(control) {
35
- let controlName = '';
36
- if (control.parent) {
37
- for (var formControlName in control.parent.controls) {
38
- if (control.parent.controls[formControlName] == control) {
39
- controlName = formControlName;
40
- break;
41
- }
42
- }
43
- }
44
- return controlName;
45
- }
46
- static getParentFormArray(control) {
47
- if (control.parent && !(control.parent instanceof FormArray || control.parent instanceof RxFormArray)) {
48
- let parent = this.getParentFormArray(control.parent);
49
- return parent;
50
- }
51
- return control.parent;
52
- }
53
- static toLower(value) {
54
- if (value)
55
- return String(value).toLowerCase().trim();
56
- return value;
57
- }
58
- static getControl(fieldName, formGroup) {
59
- let splitText = fieldName.split('.');
60
- if (splitText.length > 1) {
61
- var formControl = formGroup;
62
- splitText.forEach((name, index) => { formControl = formControl.controls[name]; });
63
- return formControl;
64
- }
65
- else
66
- return formGroup.controls[fieldName];
67
- }
68
- static getFormControl(fieldName, control) {
69
- let splitText = fieldName.split('.');
70
- if (splitText.length > 1 && control.parent) {
71
- var formControl = this.getParentControl(control);
72
- splitText.forEach((name, index) => { formControl = formControl.controls[name]; });
73
- return formControl;
74
- }
75
- return (control.parent) ? control.parent.get([fieldName]) : undefined;
76
- }
77
- static parentObjectValue(control) {
78
- if (!control.parent)
79
- return control;
80
- else
81
- control = this.parentObjectValue(control.parent);
82
- return control;
83
- }
84
- static isNumeric(value) {
85
- return (value - parseFloat(value) + 1) >= 0;
86
- }
87
- static notEqualTo(primaryValue, secondaryValue) {
88
- let firstValue = (primaryValue === undefined || primaryValue === null) ? "" : primaryValue;
89
- let secondValue = (secondaryValue === undefined || secondaryValue === null) ? "" : secondaryValue;
90
- if (firstValue instanceof Date && secondValue instanceof Date)
91
- return +firstValue != +secondValue;
92
- return (firstValue != secondValue);
93
- }
94
- static numericValidation(allowDecimal, acceptValue) {
95
- let decimalSymbol;
96
- if (ReactiveFormConfig && ReactiveFormConfig.number) {
97
- decimalSymbol = (ReactiveFormConfig.json && ReactiveFormConfig.json.allowDecimalSymbol) ? ReactiveFormConfig.json.allowDecimalSymbol : ReactiveFormConfig.number.decimalSymbol;
98
- }
99
- else {
100
- decimalSymbol = ".";
101
- }
102
- acceptValue = (acceptValue == undefined) ? NumericValueType.PositiveNumber : acceptValue;
103
- let regex = /^[0-9]+$/;
104
- switch (acceptValue) {
105
- case NumericValueType.PositiveNumber:
106
- regex = (!allowDecimal) ? /^[0-9]+$/ : (decimalSymbol == "." || decimalSymbol == undefined) ? /^[0-9\.]+$/ : /^[0-9\,]+$/;
107
- break;
108
- case NumericValueType.NegativeNumber:
109
- regex = (!allowDecimal) ? /^[-][0-9]+$/ : (decimalSymbol == "." || decimalSymbol == undefined) ? /^[-][0-9\.]+$/ : /^[-][0-9\,]+$/;
110
- break;
111
- case NumericValueType.Both:
112
- regex = (!allowDecimal) ? /^[-|+]?[0-9]+$/ : (decimalSymbol == "." || decimalSymbol == undefined) ? /^[-|+]?[0-9\.]+$/ : /^[-|+]?[0-9\,]+$/;
113
- break;
114
- }
115
- return regex;
116
- }
117
- static configureControl(control, config, type) {
118
- if (!control.validatorConfig) {
119
- let jObject = {};
120
- jObject[type] = config;
121
- Object.assign(control, { validatorConfig: jObject });
122
- }
123
- else
124
- control.validatorConfig[type] = config;
125
- }
126
- static lowerCaseWithTrim(value) {
127
- return typeof value === "string" ? value.toLowerCase().trim() : String(value).toLowerCase().trim();
128
- }
129
- /** Check if a value is an object */
130
- static isObject(value) {
131
- return Object.prototype.toString.call(value) === '[object Object]';
132
- }
133
- /** Check if a value is an object */
134
- static isArray(value) {
135
- return Array.isArray(value);
136
- }
137
- static cloneValue(value) {
138
- return ApplicationUtil.isObject(value) ? ApplicationUtil.isArray(value) ? [...value] : Object.assign({}, value) : value;
139
- }
140
- }
141
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc3JjL2xpYi9mb3JtLXZhbGlkYXRvcnMvdXRpbC9hcHAtdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQThCLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFDMUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsTUFBTSxvQkFBb0IsR0FBRyxvQkFBb0IsQ0FBQztBQUNsRCxNQUFNLE9BQU8sZUFBZTtJQUN4QixNQUFNLENBQUMsb0JBQW9CLENBQUMsT0FBd0I7UUFDaEQsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO1lBQ2hCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUE7WUFDbkQsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDO1NBQ3ZCO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxDQUFDLDJCQUEyQixDQUFDLE9BQXdCO1FBQ3ZELElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNoQixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1lBQ25ELE9BQU8sTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDdkM7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBdUI7UUFDN0MsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO1lBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FB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SyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLG1CQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDOUcsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtR3JvdXAsIEZvcm1BcnJheSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgUnhGb3JtQXJyYXkgfSBmcm9tIFwiLi4vc2VydmljZXMvcngtZm9ybS1hcnJheVwiO1xuaW1wb3J0IHtOdW1lcmljVmFsdWVUeXBlIH0gZnJvbSAnLi4vZW51bXMnXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1Db25maWcgfSBmcm9tIFwiLi9yZWFjdGl2ZS1mb3JtLWNvbmZpZ1wiO1xuY29uc3QgTU9ERUxfSU5TVEFOQ0VfVkFMVUUgPSBcIm1vZGVsSW5zdGFuY2VWYWx1ZVwiO1xuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uVXRpbHtcbiAgICBzdGF0aWMgZ2V0UGFyZW50T2JqZWN0VmFsdWUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA6eyBba2V5OnN0cmluZ106YW55fSB7XG4gICAgICAgIGlmIChjb250cm9sLnBhcmVudCkge1xuICAgICAgICAgICAgbGV0IHBhcmVudCA9IHRoaXMucGFyZW50T2JqZWN0VmFsdWUoY29udHJvbC5wYXJlbnQpXG4gICAgICAgICAgICByZXR1cm4gcGFyZW50LnZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7fTtcbiAgICB9XG5cbiAgICBzdGF0aWMgZ2V0UGFyZW50TW9kZWxJbnN0YW5jZVZhbHVlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICAgICAgICBpZiAoY29udHJvbC5wYXJlbnQpIHtcbiAgICAgICAgICAgIGxldCBwYXJlbnQgPSB0aGlzLnBhcmVudE9iamVjdFZhbHVlKGNvbnRyb2wucGFyZW50KVxuICAgICAgICAgICAgcmV0dXJuIHBhcmVudFtNT0RFTF9JTlNUQU5DRV9WQUxVRV07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHt9O1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRSb290Rm9ybUdyb3VwKGNvbnRyb2w6QWJzdHJhY3RDb250cm9sKTpGb3JtR3JvdXB7XG4gICAgICBpZiAoY29udHJvbC5wYXJlbnQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Um9vdEZvcm1Hcm91cChjb250cm9sLnBhcmVudCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZvcm1Hcm91cD5jb250cm9sO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGdldFBhcmVudENvbnRyb2woY29udHJvbDpBYnN0cmFjdENvbnRyb2wpe1xuICAgICAgICBpZiAoY29udHJvbC5wYXJlbnQpIHtcbiAgICAgICAgICAgIGxldCBwYXJlbnQgPSB0aGlzLnBhcmVudE9iamVjdFZhbHVlKGNvbnRyb2wucGFyZW50KVxuICAgICAgICAgICAgcmV0dXJuIHBhcmVudDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udHJvbDtcbiAgICB9XG5cbiAgICBzdGF0aWMgZ2V0Rm9ybUNvbnRyb2xOYW1lKGNvbnRyb2w6QWJzdHJhY3RDb250cm9sKXtcbiAgICAgICAgbGV0IGNvbnRyb2xOYW1lOnN0cmluZyA9ICcnO1xuICAgICAgICBpZihjb250cm9sLnBhcmVudCl7XG4gICAgICAgICAgZm9yKHZhciBmb3JtQ29udHJvbE5hbWUgaW4gY29udHJvbC5wYXJlbnQuY29udHJvbHMpe1xuICAgICAgICAgICAgaWYoY29udHJvbC5wYXJlbnQuY29udHJvbHNbZm9ybUNvbnRyb2xOYW1lXSA9PSBjb250cm9sKXtcbiAgICAgICAgICAgICAgY29udHJvbE5hbWUgPSBmb3JtQ29udHJvbE5hbWU7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgcmV0dXJuIGNvbnRyb2xOYW1lO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRQYXJlbnRGb3JtQXJyYXkoY29udHJvbDpBYnN0cmFjdENvbnRyb2wpe1xuICAgICAgICBpZiAoY29udHJvbC5wYXJlbnQgJiYgIShjb250cm9sLnBhcmVudCBpbnN0YW5jZW9mIEZvcm1BcnJheSB8fCBjb250cm9sLnBhcmVudCBpbnN0YW5jZW9mIFJ4Rm9ybUFycmF5KSkge1xuICAgICAgICAgICAgbGV0IHBhcmVudCA9IHRoaXMuZ2V0UGFyZW50Rm9ybUFycmF5KGNvbnRyb2wucGFyZW50KVxuICAgICAgICAgICAgcmV0dXJuIHBhcmVudDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udHJvbC5wYXJlbnQ7XG4gICAgfVxuXG4gICAgc3RhdGljIHRvTG93ZXIodmFsdWUpe1xuICAgICAgICBpZiAodmFsdWUpXG4gICAgICAgICAgICByZXR1cm4gU3RyaW5nKHZhbHVlKS50b0xvd2VyQ2FzZSgpLnRyaW0oKTtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRDb250cm9sKGZpZWxkTmFtZTpzdHJpbmcsZm9ybUdyb3VwOkZvcm1Hcm91cCl7XG4gICAgICBsZXQgc3BsaXRUZXh0ID0gZmllbGROYW1lLnNwbGl0KCcuJyk7XG4gICAgICBpZihzcGxpdFRleHQubGVuZ3RoID4gMSl7XG4gICAgICAgIHZhciBmb3JtQ29udHJvbDphbnkgPSBmb3JtR3JvdXA7XG4gICAgICAgIHNwbGl0VGV4dC5mb3JFYWNoKChuYW1lLGluZGV4KT0+eyBmb3JtQ29udHJvbCA9IGZvcm1Db250cm9sLmNvbnRyb2xzW25hbWVdfSlcbiAgICAgICAgcmV0dXJuIGZvcm1Db250cm9sO1xuICAgICAgfWVsc2VcbiAgICAgIHJldHVybiBmb3JtR3JvdXAuY29udHJvbHNbZmllbGROYW1lXTtcblxuICAgIH1cblxuICAgIHN0YXRpYyBnZXRGb3JtQ29udHJvbChmaWVsZE5hbWU6c3RyaW5nLGNvbnRyb2w6QWJzdHJhY3RDb250cm9sKXtcbiAgICAgICAgbGV0IHNwbGl0VGV4dCA9IGZpZWxkTmFtZS5zcGxpdCgnLicpO1xuICAgICAgICAgIGlmKHNwbGl0VGV4dC5sZW5ndGggPiAxICYmIGNvbnRyb2wucGFyZW50KXtcbiAgICAgICAgICB2YXIgZm9ybUNvbnRyb2w6YW55ID0gdGhpcy5nZXRQYXJlbnRDb250cm9sKGNvbnRyb2wpO1xuICAgICAgICAgIHNwbGl0VGV4dC5mb3JFYWNoKChuYW1lLGluZGV4KT0+eyBmb3JtQ29udHJvbCA9IGZvcm1Db250cm9sLmNvbnRyb2xzW25hbWVdfSlcbiAgICAgICAgICByZXR1cm4gZm9ybUNvbnRyb2w7XG4gICAgICAgICAgfVxuICAgICAgICByZXR1cm4gKGNvbnRyb2wucGFyZW50KSA/IGNvbnRyb2wucGFyZW50LmdldChbZmllbGROYW1lXSkgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgcGFyZW50T2JqZWN0VmFsdWUoY29udHJvbDogRm9ybUdyb3VwIHwgRm9ybUFycmF5KTogRm9ybUdyb3VwIHwgRm9ybUFycmF5IHtcbiAgICAgICAgaWYgKCFjb250cm9sLnBhcmVudClcbiAgICAgICAgICAgIHJldHVybiBjb250cm9sO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBjb250cm9sID0gdGhpcy5wYXJlbnRPYmplY3RWYWx1ZShjb250cm9sLnBhcmVudClcbiAgICAgICAgcmV0dXJuIGNvbnRyb2xcbiAgICB9XG5cbiAgICBcblxuICAgIHN0YXRpYyBpc051bWVyaWModmFsdWU6YW55KXtcbiAgICAgICByZXR1cm4gKHZhbHVlIC0gcGFyc2VGbG9hdCh2YWx1ZSkgKyAxKSA+PSAwO1xuICB9XG5cbiAgc3RhdGljIG5vdEVxdWFsVG8ocHJpbWFyeVZhbHVlOiBhbnksIHNlY29uZGFyeVZhbHVlOiBhbnkpIHtcbiAgICBsZXQgZmlyc3RWYWx1ZSA9IChwcmltYXJ5VmFsdWUgPT09IHVuZGVmaW5lZCB8fCBwcmltYXJ5VmFsdWUgPT09IG51bGwpID8gXCJcIiA6IHByaW1hcnlWYWx1ZTtcbiAgICBsZXQgc2Vjb25kVmFsdWUgPSAoc2Vjb25kYXJ5VmFsdWUgPT09IHVuZGVmaW5lZCB8fCBzZWNvbmRhcnlWYWx1ZSA9PT0gbnVsbCkgPyBcIlwiIDogc2Vjb25kYXJ5VmFsdWU7XG4gICAgaWYoZmlyc3RWYWx1ZSBpbnN0YW5jZW9mIERhdGUgJiYgc2Vjb25kVmFsdWUgaW5zdGFuY2VvZiBEYXRlKVxuICAgICAgICByZXR1cm4gK2ZpcnN0VmFsdWUgIT0gK3NlY29uZFZhbHVlO1xuICAgIHJldHVybiAoZmlyc3RWYWx1ZSAhPSBzZWNvbmRWYWx1ZSlcbiAgfVxuXG4gICAgc3RhdGljIG51bWVyaWNWYWxpZGF0aW9uKGFsbG93RGVjaW1hbDpib29sZWFuLCBhY2NlcHRWYWx1ZTpOdW1lcmljVmFsdWVUeXBlKSB7XG4gICAgICBsZXQgZGVjaW1hbFN5bWJvbDpzdHJpbmc7XG4gICAgICBpZihSZWFjdGl2ZUZvcm1Db25maWcgJiYgUmVhY3RpdmVGb3JtQ29uZmlnLm51bWJlcil7XG4gICAgICAgIGRlY2ltYWxTeW1ib2wgPSAoUmVhY3RpdmVGb3JtQ29uZmlnLmpzb24gJiYgUmVhY3RpdmVGb3JtQ29uZmlnLmpzb24uYWxsb3dEZWNpbWFsU3ltYm9sKSA/IFJlYWN0aXZlRm9ybUNvbmZpZy5qc29uLmFsbG93RGVjaW1hbFN5bWJvbCA6ICBSZWFjdGl2ZUZvcm1Db25maWcubnVtYmVyLmRlY2ltYWxTeW1ib2w7XG4gICAgICB9ZWxzZXtcbiAgICAgICAgZGVjaW1hbFN5bWJvbCA9IFwiLlwiO1xuICAgICAgfVxuICAgICAgICBcbiAgICAgICAgYWNjZXB0VmFsdWUgPSAoYWNjZXB0VmFsdWUgPT0gdW5kZWZpbmVkKSA/IE51bWVyaWNWYWx1ZVR5cGUuUG9zaXRpdmVOdW1iZXIgOiBhY2NlcHRWYWx1ZTtcbiAgICAgICAgbGV0IHJlZ2V4ID0gL15bMC05XSskLztcbiAgICAgICAgc3dpdGNoKGFjY2VwdFZhbHVlKXtcbiAgICAgICAgICAgIGNhc2UgTnVtZXJpY1ZhbHVlVHlwZS5Qb3NpdGl2ZU51bWJlcjpcbiAgICAgICAgICAgICAgcmVnZXggPSAoIWFsbG93RGVjaW1hbCkgPyAvXlswLTldKyQvIDogKGRlY2ltYWxTeW1ib2wgPT0gXCIuXCIgIHx8IGRlY2ltYWxTeW1ib2wgPT0gdW5kZWZpbmVkKSA/IC9eWzAtOVxcLl0rJC8gOiAvXlswLTlcXCxdKyQvO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICBOdW1lcmljVmFsdWVUeXBlLk5lZ2F0aXZlTnVtYmVyOlxuICAgICAgICAgICAgICAgIHJlZ2V4ID0gKCFhbGxvd0RlY2ltYWwpID8gL15bLV1bMC05XSskLyA6IChkZWNpbWFsU3ltYm9sID09IFwiLlwiIHx8IGRlY2ltYWxTeW1ib2wgPT0gdW5kZWZpbmVkKT8gIC9eWy1dWzAtOVxcLl0rJC8gOiAvXlstXVswLTlcXCxdKyQvO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIE51bWVyaWNWYWx1ZVR5cGUuQm90aCA6XG4gICAgICAgICAgICAgICAgcmVnZXggPSAoIWFsbG93RGVjaW1hbCkgPyAvXlstfCtdP1swLTldKyQvIDogKGRlY2ltYWxTeW1ib2wgPT0gXCIuXCIgfHwgZGVjaW1hbFN5bWJvbCA9PSB1bmRlZmluZWQpID8gIC9eWy18K10/WzAtOVxcLl0rJC8gOiAvXlstfCtdP1swLTlcXCxdKyQvO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIHJldHVybiByZWdleDtcbiAgICB9XG5cbiAgICBzdGF0aWMgY29uZmlndXJlQ29udHJvbChjb250cm9sOmFueSxjb25maWc6YW55LHR5cGU6c3RyaW5nKXtcbiAgICAgICAgICBpZighY29udHJvbC52YWxpZGF0b3JDb25maWcpe1xuICAgICAgICAgICAgbGV0IGpPYmplY3Q9IHt9O1xuICAgICAgICAgICAgak9iamVjdFt0eXBlXSA9IGNvbmZpZztcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oY29udHJvbCx7dmFsaWRhdG9yQ29uZmlnOmpPYmplY3R9KVxuICAgICAgICAgIH0gZWxzZVxuICAgICAgICAgICAgY29udHJvbC52YWxpZGF0b3JDb25maWdbdHlwZV0gPSBjb25maWc7XG4gICAgfVxuXG4gICAgc3RhdGljIGxvd2VyQ2FzZVdpdGhUcmltKHZhbHVlOnN0cmluZykge1xuICAgICAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiID8gdmFsdWUudG9Mb3dlckNhc2UoKS50cmltKCkgOiBTdHJpbmcodmFsdWUpLnRvTG93ZXJDYXNlKCkudHJpbSgpO1xuICAgIH1cblxuICAgIC8qKiBDaGVjayBpZiBhIHZhbHVlIGlzIGFuIG9iamVjdCAqL1xuICAgIHN0YXRpYyBpc09iamVjdCh2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodmFsdWUpID09PSAnW29iamVjdCBPYmplY3RdJztcbiAgICB9XG5cbiAgICAvKiogQ2hlY2sgaWYgYSB2YWx1ZSBpcyBhbiBvYmplY3QgKi9cbiAgICBzdGF0aWMgaXNBcnJheSh2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBzdGF0aWMgY2xvbmVWYWx1ZSh2YWx1ZTogYW55KTogYW55IHtcbiAgICAgICAgcmV0dXJuIEFwcGxpY2F0aW9uVXRpbC5pc09iamVjdCh2YWx1ZSkgPyBBcHBsaWNhdGlvblV0aWwuaXNBcnJheSh2YWx1ZSkgPyBbLi4udmFsdWVdIDogey4uLnZhbHVlfSA6IHZhbHVlO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,10 +0,0 @@
1
- export function checkLength(length, checks) {
2
- let isPassed = false;
3
- for (let check of checks) {
4
- isPassed = (check == length);
5
- if (isPassed)
6
- break;
7
- }
8
- return isPassed;
9
- }
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stbGVuZ3RoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3V0aWwvY2hlY2stbGVuZ3RoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxXQUFXLENBQUMsTUFBYyxFQUFFLE1BQWdCO0lBQzFELElBQUksUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNyQixLQUFLLElBQUksS0FBSyxJQUFJLE1BQU0sRUFBRTtRQUN4QixRQUFRLEdBQUcsQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDLENBQUE7UUFDNUIsSUFBSSxRQUFRO1lBQ1YsTUFBTTtLQUNUO0lBQ0QsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBjaGVja0xlbmd0aChsZW5ndGg6IG51bWJlciwgY2hlY2tzOiBudW1iZXJbXSk6IGJvb2xlYW4ge1xuICBsZXQgaXNQYXNzZWQgPSBmYWxzZTtcbiAgZm9yIChsZXQgY2hlY2sgb2YgY2hlY2tzKSB7XG4gICAgaXNQYXNzZWQgPSAoY2hlY2sgPT0gbGVuZ3RoKVxuICAgIGlmIChpc1Bhc3NlZClcbiAgICAgIGJyZWFrO1xuICB9XG4gIHJldHVybiBpc1Bhc3NlZDtcbn1cbiJdfQ==