@messaia/cdk 18.2.3 → 19.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 (669) hide show
  1. package/fesm2022/messaia-cdk.mjs +1592 -1239
  2. package/fesm2022/messaia-cdk.mjs.map +1 -1
  3. package/lib/base/base.module.d.ts +14 -13
  4. package/lib/base/components/base.component.d.ts +1 -1
  5. package/lib/base/components/generic-embedded-list.component.d.ts +1 -1
  6. package/lib/base/components/generic-form-base.component.d.ts +3 -2
  7. package/lib/base/components/generic-form.component.d.ts +1 -1
  8. package/lib/base/components/generic-list.component.d.ts +23 -3
  9. package/lib/base/components/generic-reactive-form.component.d.ts +1 -1
  10. package/lib/base/constants/common.d.ts +2 -0
  11. package/lib/base/helpers/auth-helper.d.ts +1 -1
  12. package/lib/chips/components/chips.component.d.ts +5 -16
  13. package/lib/common/functions/utils.d.ts +1 -1
  14. package/lib/common/helpers/app-storage.d.ts +1 -1
  15. package/lib/common/styles/_layout.scss +1 -1
  16. package/lib/common/styles/_variables.scss +4 -25
  17. package/lib/common/styles/colors/_colors-dark.scss +2 -0
  18. package/lib/common/styles/colors/_colors.scss +34 -4
  19. package/lib/common/styles/core/_button.scss +7 -21
  20. package/lib/common/styles/core/_card.scss +19 -88
  21. package/lib/common/styles/core/_core.scss +10 -21
  22. package/lib/common/styles/core/_overrides.scss +45 -0
  23. package/lib/common/styles/core/_sidenav.scss +9 -7
  24. package/lib/common/styles/core/_structure.scss +4 -11
  25. package/lib/common/styles/font/_font.scss +5 -13
  26. package/lib/common/styles/m2/_common-theme.scss +10 -10
  27. package/lib/common/styles/m2/platform.scss +13 -0
  28. package/lib/common/styles/m3/_common-theme.scss +27 -10
  29. package/lib/common/styles/m3/platform.scss +13 -0
  30. package/lib/common/styles/utilities/_general.scss +522 -492
  31. package/lib/common/styles/utilities/_pull.scss +23 -30
  32. package/lib/common/styles/utilities/_push.scss +23 -30
  33. package/lib/common/styles/utilities/_size.scss +3 -3
  34. package/lib/common/styles/utilities/_utilities.scss +14 -14
  35. package/lib/common/theming/_m2-all-theme.scss +4 -11
  36. package/lib/form-validators/directives/base-directive.d.ts +1 -1
  37. package/lib/form-validators/directives/template-validations/base-validator.directive.d.ts +1 -1
  38. package/lib/form-validators/directives/template-validations/control-expression-process.d.ts +1 -1
  39. package/lib/form-validators/services/rx-form-array.d.ts +2 -2
  40. package/lib/form-validators/util/reset-form.d.ts +3 -3
  41. package/lib/forms/directives/mat-form-field-editor.directive.d.ts +31 -28
  42. package/lib/forms/forms.module.d.ts +4 -3
  43. package/lib/forms/helpers/abstract-mat-form-field.d.ts +147 -91
  44. package/lib/forms/helpers/abstract-select-form-field.component.d.ts +144 -67
  45. package/lib/forms/helpers/value-accessor-base.d.ts +1 -1
  46. package/lib/layout/_m2-layout-theme.scss +14 -50
  47. package/lib/layout/layout-nav/layout-nav.component.d.ts +7 -1
  48. package/lib/layout/layout-toggle.class.d.ts +1 -1
  49. package/lib/list/components/list.component.d.ts +3 -15
  50. package/lib/menu/components/menu.component.d.ts +16 -1
  51. package/lib/menu/menu.module.d.ts +3 -2
  52. package/lib/select/components/select.component.d.ts +3 -16
  53. package/lib/table/components/dynamic-table/dynamic-table.component.d.ts +5 -1
  54. package/lib/table/components/filter-select/filter-select.component.d.ts +2 -3
  55. package/lib/table/models/table-definition.d.ts +69 -20
  56. package/package.json +3 -5
  57. package/esm2022/lib/base/base.module.mjs +0 -114
  58. package/esm2022/lib/base/components/base.component.mjs +0 -904
  59. package/esm2022/lib/base/components/dynamic-table-config-dialog/dynamic-table-config-dialog.comnponent.mjs +0 -123
  60. package/esm2022/lib/base/components/generic-embedded-list.component.mjs +0 -197
  61. package/esm2022/lib/base/components/generic-form-base.component.mjs +0 -891
  62. package/esm2022/lib/base/components/generic-form.component.mjs +0 -44
  63. package/esm2022/lib/base/components/generic-list.component.mjs +0 -966
  64. package/esm2022/lib/base/components/generic-reactive-form.component.mjs +0 -101
  65. package/esm2022/lib/base/components/task-dialog/task-dialog.component.mjs +0 -147
  66. package/esm2022/lib/base/constants/common.mjs +0 -92
  67. package/esm2022/lib/base/constants/global-roles.mjs +0 -9
  68. package/esm2022/lib/base/enums/message-type.mjs +0 -7
  69. package/esm2022/lib/base/helpers/auth-helper.mjs +0 -53
  70. package/esm2022/lib/base/interceptors/base.interceptor.mjs +0 -168
  71. package/esm2022/lib/base/interceptors/caching-interceptor.mjs +0 -67
  72. package/esm2022/lib/base/interceptors/loading.interceptor.mjs +0 -64
  73. package/esm2022/lib/base/interfaces/ibase-component.mjs +0 -2
  74. package/esm2022/lib/base/interfaces/igeneric-form-base.mjs +0 -2
  75. package/esm2022/lib/base/interfaces/igeneric-list-component.mjs +0 -2
  76. package/esm2022/lib/base/interfaces/igeneric-reactive-form-base.mjs +0 -2
  77. package/esm2022/lib/base/models/auth-user.mjs +0 -18
  78. package/esm2022/lib/base/models/task-dialog-data.mjs +0 -85
  79. package/esm2022/lib/base/public_api.mjs +0 -2
  80. package/esm2022/lib/base/services/file.service.mjs +0 -18
  81. package/esm2022/lib/base/services/loading-screen.service.mjs +0 -45
  82. package/esm2022/lib/base/services/print.service.mjs +0 -41
  83. package/esm2022/lib/chips/chips.module.mjs +0 -77
  84. package/esm2022/lib/chips/components/chips.component.mjs +0 -702
  85. package/esm2022/lib/chips/directives/autocomplete-option.directive.mjs +0 -18
  86. package/esm2022/lib/chips/directives/chip.directive.mjs +0 -18
  87. package/esm2022/lib/chips/public_api.mjs +0 -3
  88. package/esm2022/lib/common/animations/collapse/collapse.animation.mjs +0 -33
  89. package/esm2022/lib/common/animations/common/interfaces.mjs +0 -2
  90. package/esm2022/lib/common/behaviors/constructor.mjs +0 -2
  91. package/esm2022/lib/common/behaviors/control-value-accesor.mixin.mjs +0 -41
  92. package/esm2022/lib/common/behaviors/disabled.mixin.mjs +0 -24
  93. package/esm2022/lib/common/common.module.mjs +0 -176
  94. package/esm2022/lib/common/constants/constants.mjs +0 -3
  95. package/esm2022/lib/common/directives/autofocus.directive.mjs +0 -62
  96. package/esm2022/lib/common/directives/delayed-hover.directive.mjs +0 -133
  97. package/esm2022/lib/common/directives/disable-control.directive.mjs +0 -35
  98. package/esm2022/lib/common/enums/app-event-type.mjs +0 -6
  99. package/esm2022/lib/common/enums/filter-glue.mjs +0 -16
  100. package/esm2022/lib/common/enums/filter-operator.mjs +0 -15
  101. package/esm2022/lib/common/enums/salutation.mjs +0 -7
  102. package/esm2022/lib/common/functions/decorators.mjs +0 -22
  103. package/esm2022/lib/common/functions/functions.mjs +0 -22
  104. package/esm2022/lib/common/functions/utils.mjs +0 -271
  105. package/esm2022/lib/common/helpers/app-storage.mjs +0 -77
  106. package/esm2022/lib/common/helpers/delegate.mjs +0 -2
  107. package/esm2022/lib/common/helpers/dynamic-builder.mjs +0 -52
  108. package/esm2022/lib/common/helpers/dynamic-component-compiler.mjs +0 -11
  109. package/esm2022/lib/common/models/action-item.mjs +0 -77
  110. package/esm2022/lib/common/models/app-event.mjs +0 -21
  111. package/esm2022/lib/common/models/app-setting.mjs +0 -92
  112. package/esm2022/lib/common/models/audit-entity.mjs +0 -53
  113. package/esm2022/lib/common/models/audit-user.mjs +0 -24
  114. package/esm2022/lib/common/models/base-entity.mjs +0 -40
  115. package/esm2022/lib/common/models/common-error.mjs +0 -29
  116. package/esm2022/lib/common/models/common-handler-context.mjs +0 -45
  117. package/esm2022/lib/common/models/displayname-number-projection.mjs +0 -56
  118. package/esm2022/lib/common/models/displayname-projection.mjs +0 -38
  119. package/esm2022/lib/common/models/entity.mjs +0 -2
  120. package/esm2022/lib/common/models/enum-item.mjs +0 -2
  121. package/esm2022/lib/common/models/enum-metadata.mjs +0 -44
  122. package/esm2022/lib/common/models/filter-field.mjs +0 -2
  123. package/esm2022/lib/common/models/filter.mjs +0 -2
  124. package/esm2022/lib/common/models/icommon-handler-context.mjs +0 -2
  125. package/esm2022/lib/common/models/icon.mjs +0 -42
  126. package/esm2022/lib/common/models/key-value.mjs +0 -11
  127. package/esm2022/lib/common/models/modifiable-entity.mjs +0 -22
  128. package/esm2022/lib/common/models/name-number-projection.mjs +0 -35
  129. package/esm2022/lib/common/models/name-projection.mjs +0 -25
  130. package/esm2022/lib/common/models/permission.mjs +0 -29
  131. package/esm2022/lib/common/models/save-action.mjs +0 -7
  132. package/esm2022/lib/common/models/suffix-button.mjs +0 -15
  133. package/esm2022/lib/common/models/title-projection.mjs +0 -25
  134. package/esm2022/lib/common/pipes/bind.mjs +0 -31
  135. package/esm2022/lib/common/pipes/data-source.pipe.mjs +0 -15
  136. package/esm2022/lib/common/pipes/enum.pipe.mjs +0 -41
  137. package/esm2022/lib/common/pipes/file-size.pipe.mjs +0 -35
  138. package/esm2022/lib/common/pipes/filter.pipe.mjs +0 -54
  139. package/esm2022/lib/common/pipes/first-letter.mjs +0 -24
  140. package/esm2022/lib/common/pipes/form-array.pipe.mjs +0 -14
  141. package/esm2022/lib/common/pipes/form-control.pipe.mjs +0 -14
  142. package/esm2022/lib/common/pipes/form-group.pipe.mjs +0 -14
  143. package/esm2022/lib/common/pipes/func.pipe.mjs +0 -14
  144. package/esm2022/lib/common/pipes/join.pipe.mjs +0 -26
  145. package/esm2022/lib/common/pipes/keys.mjs +0 -18
  146. package/esm2022/lib/common/pipes/map.pipe.mjs +0 -48
  147. package/esm2022/lib/common/pipes/month-name.pipe.mjs +0 -25
  148. package/esm2022/lib/common/pipes/nested-property.mjs +0 -29
  149. package/esm2022/lib/common/pipes/only-number.mjs +0 -58
  150. package/esm2022/lib/common/pipes/order.pipe.mjs +0 -269
  151. package/esm2022/lib/common/pipes/placeholder.pipe.mjs +0 -26
  152. package/esm2022/lib/common/pipes/property-join.pipe.mjs +0 -27
  153. package/esm2022/lib/common/pipes/safe-html.pipe.mjs +0 -32
  154. package/esm2022/lib/common/pipes/split.pipe.mjs +0 -25
  155. package/esm2022/lib/common/pipes/time.pipe.mjs +0 -21
  156. package/esm2022/lib/common/pipes/titlecase.pipe.mjs +0 -14
  157. package/esm2022/lib/common/pipes/truncate.pipe.mjs +0 -15
  158. package/esm2022/lib/common/pipes/values.mjs +0 -14
  159. package/esm2022/lib/common/public_api.mjs +0 -41
  160. package/esm2022/lib/common/services/base.service.mjs +0 -19
  161. package/esm2022/lib/common/services/context-helper.mjs +0 -17
  162. package/esm2022/lib/common/services/enum.service.mjs +0 -81
  163. package/esm2022/lib/common/services/event-queue.service.mjs +0 -31
  164. package/esm2022/lib/common/services/service-locator.mjs +0 -25
  165. package/esm2022/lib/common/templates/templates.mjs +0 -87
  166. package/esm2022/lib/dialogs/alert-dialog/alert-dialog.component.mjs +0 -46
  167. package/esm2022/lib/dialogs/confirm-dialog/confirm-dialog.component.mjs +0 -60
  168. package/esm2022/lib/dialogs/dialog.component.mjs +0 -59
  169. package/esm2022/lib/dialogs/dialogs.module.mjs +0 -72
  170. package/esm2022/lib/dialogs/prompt-dialog/prompt-dialog.component.mjs +0 -44
  171. package/esm2022/lib/dialogs/public_api.mjs +0 -2
  172. package/esm2022/lib/dialogs/services/dialog.service.mjs +0 -154
  173. package/esm2022/lib/file/file-input.component.mjs +0 -334
  174. package/esm2022/lib/file/file.module.mjs +0 -37
  175. package/esm2022/lib/file/public_api.mjs +0 -2
  176. package/esm2022/lib/form-validators/abstract/typed-form.mjs +0 -13
  177. package/esm2022/lib/form-validators/algorithm/luhn-algorithm.mjs +0 -33
  178. package/esm2022/lib/form-validators/const/app-validators.const.mjs +0 -68
  179. package/esm2022/lib/form-validators/const/app.const.mjs +0 -65
  180. package/esm2022/lib/form-validators/const/config-names.const.mjs +0 -33
  181. package/esm2022/lib/form-validators/const/config-required-fields.const.mjs +0 -35
  182. package/esm2022/lib/form-validators/const/decorators.const.mjs +0 -23
  183. package/esm2022/lib/form-validators/const/events.const.mjs +0 -53
  184. package/esm2022/lib/form-validators/const/html-elements.const.mjs +0 -25
  185. package/esm2022/lib/form-validators/const/iban-country-wise-regex.const.mjs +0 -80
  186. package/esm2022/lib/form-validators/const/index.mjs +0 -6
  187. package/esm2022/lib/form-validators/const/operators.const.mjs +0 -7
  188. package/esm2022/lib/form-validators/const/validation-alphabet-locale.const.mjs +0 -9
  189. package/esm2022/lib/form-validators/const/validator.const.mjs +0 -29
  190. package/esm2022/lib/form-validators/core/annotation-types.mjs +0 -75
  191. package/esm2022/lib/form-validators/core/default-container.mjs +0 -500
  192. package/esm2022/lib/form-validators/decorators/allOf.decorator.mjs +0 -10
  193. package/esm2022/lib/form-validators/decorators/alpha.decorator.mjs +0 -10
  194. package/esm2022/lib/form-validators/decorators/alphaNumeric.decorator.mjs +0 -10
  195. package/esm2022/lib/form-validators/decorators/and.decorator.mjs +0 -6
  196. package/esm2022/lib/form-validators/decorators/ascii.decorator.mjs +0 -6
  197. package/esm2022/lib/form-validators/decorators/async.decorator.mjs +0 -6
  198. package/esm2022/lib/form-validators/decorators/base-decorator.function.mjs +0 -7
  199. package/esm2022/lib/form-validators/decorators/choice.decorator.mjs +0 -10
  200. package/esm2022/lib/form-validators/decorators/compare.decorator.mjs +0 -6
  201. package/esm2022/lib/form-validators/decorators/compose.decorator.mjs +0 -6
  202. package/esm2022/lib/form-validators/decorators/contains.decorator.mjs +0 -10
  203. package/esm2022/lib/form-validators/decorators/credit-card.decorator.mjs +0 -10
  204. package/esm2022/lib/form-validators/decorators/cusip.decorator.mjs +0 -6
  205. package/esm2022/lib/form-validators/decorators/custom.decorator.mjs +0 -10
  206. package/esm2022/lib/form-validators/decorators/dataUri.decorator.mjs +0 -6
  207. package/esm2022/lib/form-validators/decorators/date.decorator.mjs +0 -10
  208. package/esm2022/lib/form-validators/decorators/different.decorator.mjs +0 -6
  209. package/esm2022/lib/form-validators/decorators/digit.decorator.mjs +0 -6
  210. package/esm2022/lib/form-validators/decorators/email.decorator.mjs +0 -6
  211. package/esm2022/lib/form-validators/decorators/endsWith.decorator.mjs +0 -10
  212. package/esm2022/lib/form-validators/decorators/even.decorator.mjs +0 -6
  213. package/esm2022/lib/form-validators/decorators/extension.decorator.mjs +0 -10
  214. package/esm2022/lib/form-validators/decorators/factor.decorator.mjs +0 -10
  215. package/esm2022/lib/form-validators/decorators/file.decorator.mjs +0 -10
  216. package/esm2022/lib/form-validators/decorators/fileSize.decorator.mjs +0 -10
  217. package/esm2022/lib/form-validators/decorators/greater-than-equal-to.decorator.mjs +0 -10
  218. package/esm2022/lib/form-validators/decorators/greater-than.decorator.mjs +0 -10
  219. package/esm2022/lib/form-validators/decorators/grid.decorator.mjs +0 -6
  220. package/esm2022/lib/form-validators/decorators/hexColor.decorator.mjs +0 -6
  221. package/esm2022/lib/form-validators/decorators/image.decorator.mjs +0 -10
  222. package/esm2022/lib/form-validators/decorators/index.mjs +0 -93
  223. package/esm2022/lib/form-validators/decorators/json.decorator.mjs +0 -6
  224. package/esm2022/lib/form-validators/decorators/latLong.decorator.mjs +0 -6
  225. package/esm2022/lib/form-validators/decorators/latitude.decorator.mjs +0 -6
  226. package/esm2022/lib/form-validators/decorators/leapYear.decorator.mjs +0 -6
  227. package/esm2022/lib/form-validators/decorators/less-than-equal-to.decorator.mjs +0 -10
  228. package/esm2022/lib/form-validators/decorators/less-than.decorator.mjs +0 -10
  229. package/esm2022/lib/form-validators/decorators/longitude.decorator.mjs +0 -6
  230. package/esm2022/lib/form-validators/decorators/lowercase.decorator.mjs +0 -6
  231. package/esm2022/lib/form-validators/decorators/mac.decorator.mjs +0 -6
  232. package/esm2022/lib/form-validators/decorators/mask.decorator.mjs +0 -6
  233. package/esm2022/lib/form-validators/decorators/maxDate.decorator.mjs +0 -10
  234. package/esm2022/lib/form-validators/decorators/maxLength.decorator.mjs +0 -10
  235. package/esm2022/lib/form-validators/decorators/maxNumber.decorator.mjs +0 -10
  236. package/esm2022/lib/form-validators/decorators/maxTime.decorator.mjs +0 -10
  237. package/esm2022/lib/form-validators/decorators/minDate.decorator.mjs +0 -10
  238. package/esm2022/lib/form-validators/decorators/minLength.decorator.mjs +0 -10
  239. package/esm2022/lib/form-validators/decorators/minNumber.decorator.mjs +0 -10
  240. package/esm2022/lib/form-validators/decorators/minTime.decorator.mjs +0 -10
  241. package/esm2022/lib/form-validators/decorators/model.decorator.mjs +0 -7
  242. package/esm2022/lib/form-validators/decorators/non-validation-decorators/disable.decorator.mjs +0 -8
  243. package/esm2022/lib/form-validators/decorators/non-validation-decorators/elementClass.decorator.mjs +0 -8
  244. package/esm2022/lib/form-validators/decorators/non-validation-decorators/error.decorator.mjs +0 -8
  245. package/esm2022/lib/form-validators/decorators/non-validation-decorators/update-on.decorator.mjs +0 -6
  246. package/esm2022/lib/form-validators/decorators/noneOf.decorator.mjs +0 -10
  247. package/esm2022/lib/form-validators/decorators/not.decorator.mjs +0 -6
  248. package/esm2022/lib/form-validators/decorators/notEmpty.decorator.mjs +0 -6
  249. package/esm2022/lib/form-validators/decorators/numeric.decorator.mjs +0 -10
  250. package/esm2022/lib/form-validators/decorators/odd.decorator.mjs +0 -6
  251. package/esm2022/lib/form-validators/decorators/oneOf.decorator.mjs +0 -10
  252. package/esm2022/lib/form-validators/decorators/or.decorator.mjs +0 -6
  253. package/esm2022/lib/form-validators/decorators/password.decorator.mjs +0 -10
  254. package/esm2022/lib/form-validators/decorators/pattern.decorator.mjs +0 -10
  255. package/esm2022/lib/form-validators/decorators/port.decorator.mjs +0 -6
  256. package/esm2022/lib/form-validators/decorators/primeNumber.decorator.mjs +0 -6
  257. package/esm2022/lib/form-validators/decorators/prop-array.decorator.mjs +0 -18
  258. package/esm2022/lib/form-validators/decorators/prop-object.decorator.mjs +0 -8
  259. package/esm2022/lib/form-validators/decorators/prop.decorator.mjs +0 -18
  260. package/esm2022/lib/form-validators/decorators/range.decorator.mjs +0 -10
  261. package/esm2022/lib/form-validators/decorators/required.decorator.mjs +0 -6
  262. package/esm2022/lib/form-validators/decorators/requiredTrue.decorator.mjs +0 -6
  263. package/esm2022/lib/form-validators/decorators/rule.decorator.mjs +0 -6
  264. package/esm2022/lib/form-validators/decorators/sanitize/blacklist.decorator.mjs +0 -8
  265. package/esm2022/lib/form-validators/decorators/sanitize/escape.decorator.mjs +0 -8
  266. package/esm2022/lib/form-validators/decorators/sanitize/ltrim.decorator.mjs +0 -8
  267. package/esm2022/lib/form-validators/decorators/sanitize/prefix.decorator.mjs +0 -8
  268. package/esm2022/lib/form-validators/decorators/sanitize/rtrim.decorator.mjs +0 -8
  269. package/esm2022/lib/form-validators/decorators/sanitize/sanitize.decorator.mjs +0 -8
  270. package/esm2022/lib/form-validators/decorators/sanitize/stripLow.decorator.mjs +0 -8
  271. package/esm2022/lib/form-validators/decorators/sanitize/suffix.decorator.mjs +0 -8
  272. package/esm2022/lib/form-validators/decorators/sanitize/toBoolean.decorator.mjs +0 -8
  273. package/esm2022/lib/form-validators/decorators/sanitize/toDate.decorator.mjs +0 -8
  274. package/esm2022/lib/form-validators/decorators/sanitize/toDouble.decorator.mjs +0 -8
  275. package/esm2022/lib/form-validators/decorators/sanitize/toFloat.decorator.mjs +0 -8
  276. package/esm2022/lib/form-validators/decorators/sanitize/toInt.decorator.mjs +0 -8
  277. package/esm2022/lib/form-validators/decorators/sanitize/toString.decorator.mjs +0 -8
  278. package/esm2022/lib/form-validators/decorators/sanitize/trim.decorator.mjs +0 -8
  279. package/esm2022/lib/form-validators/decorators/sanitize/whitelist.decorator.mjs +0 -8
  280. package/esm2022/lib/form-validators/decorators/startsWith.decorator.mjs +0 -10
  281. package/esm2022/lib/form-validators/decorators/time.decorator.mjs +0 -10
  282. package/esm2022/lib/form-validators/decorators/unique.decorator.mjs +0 -6
  283. package/esm2022/lib/form-validators/decorators/uppercase.decorator.mjs +0 -6
  284. package/esm2022/lib/form-validators/decorators/url.decorator.mjs +0 -10
  285. package/esm2022/lib/form-validators/directives/base-directive.mjs +0 -75
  286. package/esm2022/lib/form-validators/directives/control-host.directive.mjs +0 -55
  287. package/esm2022/lib/form-validators/directives/html-control-template.directive.mjs +0 -36
  288. package/esm2022/lib/form-validators/directives/rx-form.directive.mjs +0 -234
  289. package/esm2022/lib/form-validators/directives/template-validations/async-validation.directive.mjs +0 -40
  290. package/esm2022/lib/form-validators/directives/template-validations/base-validator.directive.mjs +0 -76
  291. package/esm2022/lib/form-validators/directives/template-validations/control-expression-process.mjs +0 -60
  292. package/esm2022/lib/form-validators/directives/template-validations/file-control.directive.mjs +0 -122
  293. package/esm2022/lib/form-validators/directives/template-validations/image-file-control.directive.mjs +0 -74
  294. package/esm2022/lib/form-validators/directives/template-validations/rxformcontrol.directive.mjs +0 -394
  295. package/esm2022/lib/form-validators/domain/disable-provider.mjs +0 -198
  296. package/esm2022/lib/form-validators/domain/element-processor/decimal.provider.mjs +0 -134
  297. package/esm2022/lib/form-validators/domain/element-processor/mask.provider.mjs +0 -453
  298. package/esm2022/lib/form-validators/domain/form-data.mjs +0 -93
  299. package/esm2022/lib/form-validators/enums/error-message-binding-strategy.mjs +0 -11
  300. package/esm2022/lib/form-validators/enums/index.mjs +0 -5
  301. package/esm2022/lib/form-validators/enums/ip-version.mjs +0 -7
  302. package/esm2022/lib/form-validators/enums/numeric-value-type.mjs +0 -7
  303. package/esm2022/lib/form-validators/enums/reset-type.mjs +0 -10
  304. package/esm2022/lib/form-validators/enums/url-validation-type.mjs +0 -7
  305. package/esm2022/lib/form-validators/models/config/alpha-config.mjs +0 -2
  306. package/esm2022/lib/form-validators/models/config/array-config.mjs +0 -2
  307. package/esm2022/lib/form-validators/models/config/base-config-fn.mjs +0 -2
  308. package/esm2022/lib/form-validators/models/config/base-config.mjs +0 -2
  309. package/esm2022/lib/form-validators/models/config/base-date-config.mjs +0 -2
  310. package/esm2022/lib/form-validators/models/config/choice-config.mjs +0 -2
  311. package/esm2022/lib/form-validators/models/config/compare-config.mjs +0 -2
  312. package/esm2022/lib/form-validators/models/config/component-config.mjs +0 -2
  313. package/esm2022/lib/form-validators/models/config/compose-config.mjs +0 -2
  314. package/esm2022/lib/form-validators/models/config/contains-config.mjs +0 -2
  315. package/esm2022/lib/form-validators/models/config/credit-card-config.mjs +0 -2
  316. package/esm2022/lib/form-validators/models/config/custom-config.mjs +0 -2
  317. package/esm2022/lib/form-validators/models/config/date-config.mjs +0 -2
  318. package/esm2022/lib/form-validators/models/config/default-config.mjs +0 -2
  319. package/esm2022/lib/form-validators/models/config/digit-config.mjs +0 -2
  320. package/esm2022/lib/form-validators/models/config/disable-config.mjs +0 -2
  321. package/esm2022/lib/form-validators/models/config/element-class-config.mjs +0 -2
  322. package/esm2022/lib/form-validators/models/config/email-config.mjs +0 -2
  323. package/esm2022/lib/form-validators/models/config/error-config.mjs +0 -2
  324. package/esm2022/lib/form-validators/models/config/extension-config.mjs +0 -2
  325. package/esm2022/lib/form-validators/models/config/factor-config.mjs +0 -2
  326. package/esm2022/lib/form-validators/models/config/field-config.mjs +0 -2
  327. package/esm2022/lib/form-validators/models/config/file-config.mjs +0 -2
  328. package/esm2022/lib/form-validators/models/config/hex-color-config.mjs +0 -2
  329. package/esm2022/lib/form-validators/models/config/iban-config.mjs +0 -2
  330. package/esm2022/lib/form-validators/models/config/image-config.mjs +0 -2
  331. package/esm2022/lib/form-validators/models/config/index.mjs +0 -35
  332. package/esm2022/lib/form-validators/models/config/ip-config.mjs +0 -2
  333. package/esm2022/lib/form-validators/models/config/logical-operator-config.mjs +0 -2
  334. package/esm2022/lib/form-validators/models/config/mask-config.mjs +0 -2
  335. package/esm2022/lib/form-validators/models/config/max-date-config.mjs +0 -2
  336. package/esm2022/lib/form-validators/models/config/message-config.mjs +0 -2
  337. package/esm2022/lib/form-validators/models/config/min-date-config.mjs +0 -2
  338. package/esm2022/lib/form-validators/models/config/model-config.mjs +0 -2
  339. package/esm2022/lib/form-validators/models/config/number-config.mjs +0 -2
  340. package/esm2022/lib/form-validators/models/config/numeric-config.mjs +0 -2
  341. package/esm2022/lib/form-validators/models/config/password-config.mjs +0 -2
  342. package/esm2022/lib/form-validators/models/config/pattern-config.mjs +0 -2
  343. package/esm2022/lib/form-validators/models/config/prop-config.mjs +0 -2
  344. package/esm2022/lib/form-validators/models/config/props-config.mjs +0 -2
  345. package/esm2022/lib/form-validators/models/config/range-config.mjs +0 -2
  346. package/esm2022/lib/form-validators/models/config/relational-operator-config.mjs +0 -2
  347. package/esm2022/lib/form-validators/models/config/required-config.mjs +0 -2
  348. package/esm2022/lib/form-validators/models/config/rule-config.mjs +0 -2
  349. package/esm2022/lib/form-validators/models/config/sanitize-config.mjs +0 -2
  350. package/esm2022/lib/form-validators/models/config/size-config.mjs +0 -2
  351. package/esm2022/lib/form-validators/models/config/string-comparison-config.mjs +0 -2
  352. package/esm2022/lib/form-validators/models/config/string-value-config.mjs +0 -2
  353. package/esm2022/lib/form-validators/models/config/time-config.mjs +0 -2
  354. package/esm2022/lib/form-validators/models/config/todate-config.mjs +0 -2
  355. package/esm2022/lib/form-validators/models/config/unique-config.mjs +0 -2
  356. package/esm2022/lib/form-validators/models/config/update-on-config.mjs +0 -2
  357. package/esm2022/lib/form-validators/models/config/url-config.mjs +0 -2
  358. package/esm2022/lib/form-validators/models/control-info.mjs +0 -2
  359. package/esm2022/lib/form-validators/models/data-sanitizer.mjs +0 -2
  360. package/esm2022/lib/form-validators/models/decorator-configuration.mjs +0 -2
  361. package/esm2022/lib/form-validators/models/form-builder-configuration.mjs +0 -58
  362. package/esm2022/lib/form-validators/models/index.mjs +0 -3
  363. package/esm2022/lib/form-validators/models/instance-container.mjs +0 -2
  364. package/esm2022/lib/form-validators/models/interface/array-prop-instance-config.interface.mjs +0 -2
  365. package/esm2022/lib/form-validators/models/interface/auto-instance-config.interface.mjs +0 -2
  366. package/esm2022/lib/form-validators/models/interface/form-data-config.mjs +0 -2
  367. package/esm2022/lib/form-validators/models/interface/i-abstract-control.mjs +0 -30
  368. package/esm2022/lib/form-validators/models/interface/i-form-group.mjs +0 -2
  369. package/esm2022/lib/form-validators/models/interface/instance-argument.interface.mjs +0 -2
  370. package/esm2022/lib/form-validators/models/interface/object-prop-instance-config.interface.mjs +0 -2
  371. package/esm2022/lib/form-validators/models/interface/options.mjs +0 -2
  372. package/esm2022/lib/form-validators/models/password-validation.model.mjs +0 -2
  373. package/esm2022/lib/form-validators/models/prop-validation-config.mjs +0 -2
  374. package/esm2022/lib/form-validators/models/property-info.mjs +0 -2
  375. package/esm2022/lib/form-validators/public_api.mjs +0 -26
  376. package/esm2022/lib/form-validators/reactive-form-validators/allOf.validator.mjs +0 -33
  377. package/esm2022/lib/form-validators/reactive-form-validators/alpha.validator.mjs +0 -15
  378. package/esm2022/lib/form-validators/reactive-form-validators/alphaNumeric.validator.mjs +0 -15
  379. package/esm2022/lib/form-validators/reactive-form-validators/and.validator.mjs +0 -38
  380. package/esm2022/lib/form-validators/reactive-form-validators/ascii.validator.mjs +0 -15
  381. package/esm2022/lib/form-validators/reactive-form-validators/async/base.async.validator.mjs +0 -45
  382. package/esm2022/lib/form-validators/reactive-form-validators/choice.validator.mjs +0 -31
  383. package/esm2022/lib/form-validators/reactive-form-validators/compare.validator.mjs +0 -32
  384. package/esm2022/lib/form-validators/reactive-form-validators/compose.validator.mjs +0 -34
  385. package/esm2022/lib/form-validators/reactive-form-validators/conditional-change.validator.mjs +0 -63
  386. package/esm2022/lib/form-validators/reactive-form-validators/contains.validator.mjs +0 -22
  387. package/esm2022/lib/form-validators/reactive-form-validators/credit-card.validator.mjs +0 -48
  388. package/esm2022/lib/form-validators/reactive-form-validators/cusip.validator.mjs +0 -38
  389. package/esm2022/lib/form-validators/reactive-form-validators/custom.validator.mjs +0 -25
  390. package/esm2022/lib/form-validators/reactive-form-validators/dataUri.validator.mjs +0 -9
  391. package/esm2022/lib/form-validators/reactive-form-validators/date.validator.mjs +0 -8
  392. package/esm2022/lib/form-validators/reactive-form-validators/different.validator.mjs +0 -19
  393. package/esm2022/lib/form-validators/reactive-form-validators/digit.validator.mjs +0 -9
  394. package/esm2022/lib/form-validators/reactive-form-validators/email.validator.mjs +0 -9
  395. package/esm2022/lib/form-validators/reactive-form-validators/endsWith.validator.mjs +0 -23
  396. package/esm2022/lib/form-validators/reactive-form-validators/even.validator.mjs +0 -15
  397. package/esm2022/lib/form-validators/reactive-form-validators/extension.validator.mjs +0 -40
  398. package/esm2022/lib/form-validators/reactive-form-validators/factor.validator.mjs +0 -37
  399. package/esm2022/lib/form-validators/reactive-form-validators/file.validator.mjs +0 -26
  400. package/esm2022/lib/form-validators/reactive-form-validators/fileSize.validator.mjs +0 -34
  401. package/esm2022/lib/form-validators/reactive-form-validators/greater-than-equal-to.validator.mjs +0 -8
  402. package/esm2022/lib/form-validators/reactive-form-validators/greater-than.validator.mjs +0 -8
  403. package/esm2022/lib/form-validators/reactive-form-validators/grid.validator.mjs +0 -31
  404. package/esm2022/lib/form-validators/reactive-form-validators/hexcolor.validator.mjs +0 -9
  405. package/esm2022/lib/form-validators/reactive-form-validators/iban.validator.mjs +0 -28
  406. package/esm2022/lib/form-validators/reactive-form-validators/image.validator.mjs +0 -52
  407. package/esm2022/lib/form-validators/reactive-form-validators/index.mjs +0 -66
  408. package/esm2022/lib/form-validators/reactive-form-validators/ip.validator.mjs +0 -28
  409. package/esm2022/lib/form-validators/reactive-form-validators/json.validator.mjs +0 -26
  410. package/esm2022/lib/form-validators/reactive-form-validators/latLong.validator.mjs +0 -18
  411. package/esm2022/lib/form-validators/reactive-form-validators/latitude.validator.mjs +0 -9
  412. package/esm2022/lib/form-validators/reactive-form-validators/leapYear.validator.mjs +0 -16
  413. package/esm2022/lib/form-validators/reactive-form-validators/less-than-equal-to.validator.mjs +0 -8
  414. package/esm2022/lib/form-validators/reactive-form-validators/less-than.validator.mjs +0 -8
  415. package/esm2022/lib/form-validators/reactive-form-validators/longitude.validator.mjs +0 -9
  416. package/esm2022/lib/form-validators/reactive-form-validators/lowercase.validator.mjs +0 -15
  417. package/esm2022/lib/form-validators/reactive-form-validators/mac.validator.mjs +0 -9
  418. package/esm2022/lib/form-validators/reactive-form-validators/mask.validator.mjs +0 -14
  419. package/esm2022/lib/form-validators/reactive-form-validators/maxDate.validator.mjs +0 -8
  420. package/esm2022/lib/form-validators/reactive-form-validators/maxLength.validator.mjs +0 -17
  421. package/esm2022/lib/form-validators/reactive-form-validators/maxNumber.validator.mjs +0 -17
  422. package/esm2022/lib/form-validators/reactive-form-validators/maxTime.validator.mjs +0 -8
  423. package/esm2022/lib/form-validators/reactive-form-validators/minDate.validator.mjs +0 -8
  424. package/esm2022/lib/form-validators/reactive-form-validators/minLength.validator.mjs +0 -16
  425. package/esm2022/lib/form-validators/reactive-form-validators/minNumber.validator.mjs +0 -16
  426. package/esm2022/lib/form-validators/reactive-form-validators/minTime.validator.mjs +0 -8
  427. package/esm2022/lib/form-validators/reactive-form-validators/noneOf.validator.mjs +0 -24
  428. package/esm2022/lib/form-validators/reactive-form-validators/not.validator.mjs +0 -25
  429. package/esm2022/lib/form-validators/reactive-form-validators/notEmpty.validator.mjs +0 -17
  430. package/esm2022/lib/form-validators/reactive-form-validators/numeric.validator.mjs +0 -22
  431. package/esm2022/lib/form-validators/reactive-form-validators/odd.validator.mjs +0 -17
  432. package/esm2022/lib/form-validators/reactive-form-validators/oneOf.validator.mjs +0 -26
  433. package/esm2022/lib/form-validators/reactive-form-validators/or.validator.mjs +0 -25
  434. package/esm2022/lib/form-validators/reactive-form-validators/password.validator.mjs +0 -35
  435. package/esm2022/lib/form-validators/reactive-form-validators/pattern.validator.mjs +0 -19
  436. package/esm2022/lib/form-validators/reactive-form-validators/port.validator.mjs +0 -19
  437. package/esm2022/lib/form-validators/reactive-form-validators/primeNumber.validator.mjs +0 -27
  438. package/esm2022/lib/form-validators/reactive-form-validators/range.validator.mjs +0 -17
  439. package/esm2022/lib/form-validators/reactive-form-validators/required.validator.mjs +0 -17
  440. package/esm2022/lib/form-validators/reactive-form-validators/requiredTrue.validator.mjs +0 -16
  441. package/esm2022/lib/form-validators/reactive-form-validators/rule.validator.mjs +0 -22
  442. package/esm2022/lib/form-validators/reactive-form-validators/startsWith.validator.mjs +0 -25
  443. package/esm2022/lib/form-validators/reactive-form-validators/time.validator.mjs +0 -19
  444. package/esm2022/lib/form-validators/reactive-form-validators/unique.validator.mjs +0 -77
  445. package/esm2022/lib/form-validators/reactive-form-validators/uppercase.validator.mjs +0 -16
  446. package/esm2022/lib/form-validators/reactive-form-validators/url.validator.mjs +0 -28
  447. package/esm2022/lib/form-validators/services/base-form-builder.mjs +0 -220
  448. package/esm2022/lib/form-validators/services/entity.service.mjs +0 -76
  449. package/esm2022/lib/form-validators/services/form-control.mjs +0 -370
  450. package/esm2022/lib/form-validators/services/form-group.mjs +0 -2
  451. package/esm2022/lib/form-validators/services/reactive-form.module.mjs +0 -52
  452. package/esm2022/lib/form-validators/services/rx-form-array.mjs +0 -114
  453. package/esm2022/lib/form-validators/services/rx-form-builder.mjs +0 -1035
  454. package/esm2022/lib/form-validators/services/rx-form-group.mjs +0 -451
  455. package/esm2022/lib/form-validators/services/typed-form-builder.mjs +0 -25
  456. package/esm2022/lib/form-validators/util/alphabet-regex.locale.mjs +0 -29
  457. package/esm2022/lib/form-validators/util/app-util.mjs +0 -161
  458. package/esm2022/lib/form-validators/util/check-length.mjs +0 -11
  459. package/esm2022/lib/form-validators/util/config-provider.mjs +0 -37
  460. package/esm2022/lib/form-validators/util/date-checker.function.mjs +0 -52
  461. package/esm2022/lib/form-validators/util/date-provider.mjs +0 -108
  462. package/esm2022/lib/form-validators/util/form-const.mjs +0 -3
  463. package/esm2022/lib/form-validators/util/form-provider.mjs +0 -87
  464. package/esm2022/lib/form-validators/util/index.mjs +0 -7
  465. package/esm2022/lib/form-validators/util/instance-provider.function.mjs +0 -63
  466. package/esm2022/lib/form-validators/util/ip-checker.mjs +0 -19
  467. package/esm2022/lib/form-validators/util/linq.mjs +0 -157
  468. package/esm2022/lib/form-validators/util/object-maker.mjs +0 -68
  469. package/esm2022/lib/form-validators/util/reactive-form-config.mjs +0 -25
  470. package/esm2022/lib/form-validators/util/regex-rules.mjs +0 -37
  471. package/esm2022/lib/form-validators/util/regex-validator.mjs +0 -74
  472. package/esm2022/lib/form-validators/util/relational-checker.function.mjs +0 -92
  473. package/esm2022/lib/form-validators/util/reset-form.mjs +0 -57
  474. package/esm2022/lib/form-validators/util/sanitizers.mjs +0 -140
  475. package/esm2022/lib/form-validators/util/time-checker.function.mjs +0 -50
  476. package/esm2022/lib/form-validators/util/type.mjs +0 -2
  477. package/esm2022/lib/form-validators/util/validator-value-checker.mjs +0 -21
  478. package/esm2022/lib/form-validators/validators-extension/allOf-validator.extension.mjs +0 -11
  479. package/esm2022/lib/form-validators/validators-extension/alpha-validator.extension.mjs +0 -11
  480. package/esm2022/lib/form-validators/validators-extension/alphaNumeric-validator.extension.mjs +0 -11
  481. package/esm2022/lib/form-validators/validators-extension/and-validator.extension.mjs +0 -7
  482. package/esm2022/lib/form-validators/validators-extension/ascii-validator.extension.mjs +0 -7
  483. package/esm2022/lib/form-validators/validators-extension/base-validator.function.mjs +0 -34
  484. package/esm2022/lib/form-validators/validators-extension/choice-validator.extension.mjs +0 -11
  485. package/esm2022/lib/form-validators/validators-extension/compare-validator.extension.mjs +0 -7
  486. package/esm2022/lib/form-validators/validators-extension/compose-validator.extension.mjs +0 -7
  487. package/esm2022/lib/form-validators/validators-extension/contains-validator.extension.mjs +0 -11
  488. package/esm2022/lib/form-validators/validators-extension/credit-card-validator.extension.mjs +0 -11
  489. package/esm2022/lib/form-validators/validators-extension/cusip-validator.extension.mjs +0 -7
  490. package/esm2022/lib/form-validators/validators-extension/custom-validator.extension.mjs +0 -11
  491. package/esm2022/lib/form-validators/validators-extension/dataUri-validator.extension.mjs +0 -7
  492. package/esm2022/lib/form-validators/validators-extension/date-validator.extension.mjs +0 -11
  493. package/esm2022/lib/form-validators/validators-extension/different-validator.extension.mjs +0 -7
  494. package/esm2022/lib/form-validators/validators-extension/digit-validator.extension.mjs +0 -7
  495. package/esm2022/lib/form-validators/validators-extension/email-validator.extension.mjs +0 -7
  496. package/esm2022/lib/form-validators/validators-extension/endsWith-validator.extension.mjs +0 -11
  497. package/esm2022/lib/form-validators/validators-extension/even-validator.extension.mjs +0 -7
  498. package/esm2022/lib/form-validators/validators-extension/extension-validator.extension.mjs +0 -10
  499. package/esm2022/lib/form-validators/validators-extension/factor-validator.extension.mjs +0 -11
  500. package/esm2022/lib/form-validators/validators-extension/file-validator.extension.mjs +0 -10
  501. package/esm2022/lib/form-validators/validators-extension/fileSize-validator.extension.mjs +0 -10
  502. package/esm2022/lib/form-validators/validators-extension/greater-than-equal-to-validator.extension.mjs +0 -11
  503. package/esm2022/lib/form-validators/validators-extension/greater-than-validator.extension.mjs +0 -11
  504. package/esm2022/lib/form-validators/validators-extension/grid-validator.extension.mjs +0 -7
  505. package/esm2022/lib/form-validators/validators-extension/hexcolor-validator.extension.mjs +0 -7
  506. package/esm2022/lib/form-validators/validators-extension/iban-validator.extension.mjs +0 -11
  507. package/esm2022/lib/form-validators/validators-extension/image-validator.extension.mjs +0 -10
  508. package/esm2022/lib/form-validators/validators-extension/index.mjs +0 -68
  509. package/esm2022/lib/form-validators/validators-extension/ip-validator.extension.mjs +0 -11
  510. package/esm2022/lib/form-validators/validators-extension/json-validator.extension.mjs +0 -7
  511. package/esm2022/lib/form-validators/validators-extension/latLong-validator.extension.mjs +0 -7
  512. package/esm2022/lib/form-validators/validators-extension/latitude-validator.extension.mjs +0 -7
  513. package/esm2022/lib/form-validators/validators-extension/leapYear-validator.extension.mjs +0 -7
  514. package/esm2022/lib/form-validators/validators-extension/less-than-equal-to-validator.extension.mjs +0 -11
  515. package/esm2022/lib/form-validators/validators-extension/less-than-validator.extension.mjs +0 -11
  516. package/esm2022/lib/form-validators/validators-extension/longitude-validator.extension.mjs +0 -7
  517. package/esm2022/lib/form-validators/validators-extension/lowercase-validator.extension.mjs +0 -7
  518. package/esm2022/lib/form-validators/validators-extension/mac-validator.extension.mjs +0 -7
  519. package/esm2022/lib/form-validators/validators-extension/mask-validator.extension.mjs +0 -7
  520. package/esm2022/lib/form-validators/validators-extension/maxDate-validator.extension.mjs +0 -11
  521. package/esm2022/lib/form-validators/validators-extension/maxLength-validator.extension.mjs +0 -11
  522. package/esm2022/lib/form-validators/validators-extension/maxNumber-validator.extension.mjs +0 -11
  523. package/esm2022/lib/form-validators/validators-extension/maxTime-validator.extension.mjs +0 -11
  524. package/esm2022/lib/form-validators/validators-extension/minDate-validator.extension.mjs +0 -11
  525. package/esm2022/lib/form-validators/validators-extension/minLength-validator.extension.mjs +0 -11
  526. package/esm2022/lib/form-validators/validators-extension/minNumber-validator.extension.mjs +0 -11
  527. package/esm2022/lib/form-validators/validators-extension/minTime-validator.extension.mjs +0 -11
  528. package/esm2022/lib/form-validators/validators-extension/noneOf-validator.extension.mjs +0 -11
  529. package/esm2022/lib/form-validators/validators-extension/not-validator.extension.mjs +0 -7
  530. package/esm2022/lib/form-validators/validators-extension/notEmpty-validator.extension.mjs +0 -7
  531. package/esm2022/lib/form-validators/validators-extension/numeric-validator.extension.mjs +0 -11
  532. package/esm2022/lib/form-validators/validators-extension/odd-validator.extension.mjs +0 -7
  533. package/esm2022/lib/form-validators/validators-extension/oneOf-validator.extension.mjs +0 -11
  534. package/esm2022/lib/form-validators/validators-extension/or-validator.extension.mjs +0 -7
  535. package/esm2022/lib/form-validators/validators-extension/password-validator.extension.mjs +0 -11
  536. package/esm2022/lib/form-validators/validators-extension/pattern-validator.extension.mjs +0 -11
  537. package/esm2022/lib/form-validators/validators-extension/port-validator.extension.mjs +0 -7
  538. package/esm2022/lib/form-validators/validators-extension/primeNumber-validator.extension.mjs +0 -7
  539. package/esm2022/lib/form-validators/validators-extension/range-validator.extension.mjs +0 -11
  540. package/esm2022/lib/form-validators/validators-extension/required-validator.extension.mjs +0 -7
  541. package/esm2022/lib/form-validators/validators-extension/requiredTrue-validator.extension.mjs +0 -7
  542. package/esm2022/lib/form-validators/validators-extension/rxweb-validators.mjs +0 -108
  543. package/esm2022/lib/form-validators/validators-extension/startsWith-validator.extension.mjs +0 -11
  544. package/esm2022/lib/form-validators/validators-extension/time-validator.extension.mjs +0 -11
  545. package/esm2022/lib/form-validators/validators-extension/unique-validator.extension.mjs +0 -7
  546. package/esm2022/lib/form-validators/validators-extension/uppercase-validator.extension.mjs +0 -7
  547. package/esm2022/lib/form-validators/validators-extension/url-validator.extension.mjs +0 -11
  548. package/esm2022/lib/form-validators/validators-function/alpha-validation.function.mjs +0 -71
  549. package/esm2022/lib/form-validators/validators-function/regex-validation.function.mjs +0 -33
  550. package/esm2022/lib/forms/components/datepicker/datepicker-header.component.mjs +0 -84
  551. package/esm2022/lib/forms/components/generic-form/generic-form.component.mjs +0 -602
  552. package/esm2022/lib/forms/constants/constants.mjs +0 -4
  553. package/esm2022/lib/forms/directives/mat-form-field-editor.directive.mjs +0 -197
  554. package/esm2022/lib/forms/directives/mat-form-field-readonly.directive.mjs +0 -34
  555. package/esm2022/lib/forms/directives/parse-decimal-directive.mjs +0 -87
  556. package/esm2022/lib/forms/directives/vd-generic-form-custom-field.directive.mjs +0 -35
  557. package/esm2022/lib/forms/enums/form-field-type.mjs +0 -23
  558. package/esm2022/lib/forms/forms.module.mjs +0 -168
  559. package/esm2022/lib/forms/functions/decorators.mjs +0 -136
  560. package/esm2022/lib/forms/functions/functions.mjs +0 -72
  561. package/esm2022/lib/forms/helpers/abstract-mat-form-field.mjs +0 -308
  562. package/esm2022/lib/forms/helpers/abstract-select-form-field.component.mjs +0 -492
  563. package/esm2022/lib/forms/helpers/value-accessor-base.mjs +0 -146
  564. package/esm2022/lib/forms/models/form-definition.mjs +0 -63
  565. package/esm2022/lib/forms/models/form-field-definition.mjs +0 -468
  566. package/esm2022/lib/forms/models/form-field-group-definition.mjs +0 -55
  567. package/esm2022/lib/forms/pipes/field-func.pipe.mjs +0 -23
  568. package/esm2022/lib/forms/pipes/group-filter.pipe.mjs +0 -34
  569. package/esm2022/lib/forms/public_api.mjs +0 -5
  570. package/esm2022/lib/forms/validators/empty-string-reset.directive.mjs +0 -25
  571. package/esm2022/lib/forms/validators/equal-validator.directive.mjs +0 -69
  572. package/esm2022/lib/forms/validators/native-element-injector.directive.mjs +0 -41
  573. package/esm2022/lib/forms/validators/unique-validator-directive.mjs +0 -88
  574. package/esm2022/lib/http/http.module.mjs +0 -15
  575. package/esm2022/lib/http/models/response.mjs +0 -24
  576. package/esm2022/lib/http/public_api.mjs +0 -2
  577. package/esm2022/lib/http/services/generic.service.mjs +0 -331
  578. package/esm2022/lib/layout/dynamic-menu/dynamic-menu.component.mjs +0 -103
  579. package/esm2022/lib/layout/layout-card-over/layout-card-over.component.mjs +0 -49
  580. package/esm2022/lib/layout/layout-compact/layout-compact.component.mjs +0 -193
  581. package/esm2022/lib/layout/layout-footer/layout-footer.component.mjs +0 -37
  582. package/esm2022/lib/layout/layout-manage-list/layout-manage-list.component.mjs +0 -150
  583. package/esm2022/lib/layout/layout-manage-list/layout-manage-list.directives.mjs +0 -108
  584. package/esm2022/lib/layout/layout-nav/layout-nav.component.mjs +0 -146
  585. package/esm2022/lib/layout/layout-nav-list/layout-nav-list.component.mjs +0 -141
  586. package/esm2022/lib/layout/layout-nav-list/layout-nav-list.directives.mjs +0 -105
  587. package/esm2022/lib/layout/layout-toggle.class.mjs +0 -89
  588. package/esm2022/lib/layout/layout.component.mjs +0 -230
  589. package/esm2022/lib/layout/layout.directives.mjs +0 -81
  590. package/esm2022/lib/layout/layout.module.mjs +0 -144
  591. package/esm2022/lib/layout/list-toolbar/list-toolbar.component.mjs +0 -47
  592. package/esm2022/lib/layout/navigation-drawer/navigation-drawer.component.mjs +0 -275
  593. package/esm2022/lib/layout/public_api.mjs +0 -2
  594. package/esm2022/lib/list/components/list.component.mjs +0 -78
  595. package/esm2022/lib/list/directives/vd-list-option.directive.mjs +0 -23
  596. package/esm2022/lib/list/list.module.mjs +0 -36
  597. package/esm2022/lib/list/public_api.mjs +0 -3
  598. package/esm2022/lib/media/directives/media-toggle.directive.mjs +0 -154
  599. package/esm2022/lib/media/media.module.mjs +0 -35
  600. package/esm2022/lib/media/public_api.mjs +0 -2
  601. package/esm2022/lib/media/services/media.service.mjs +0 -110
  602. package/esm2022/lib/menu/components/menu.component.mjs +0 -95
  603. package/esm2022/lib/menu/enums/menu-scope.mjs +0 -6
  604. package/esm2022/lib/menu/menu.module.mjs +0 -64
  605. package/esm2022/lib/menu/models/menu-client.mjs +0 -39
  606. package/esm2022/lib/menu/models/menu-department.mjs +0 -39
  607. package/esm2022/lib/menu/models/menu-item-client.mjs +0 -39
  608. package/esm2022/lib/menu/models/menu-item-department.mjs +0 -39
  609. package/esm2022/lib/menu/models/menu-item.mjs +0 -351
  610. package/esm2022/lib/menu/models/menu-settings.mjs +0 -13
  611. package/esm2022/lib/menu/models/menu.mjs +0 -224
  612. package/esm2022/lib/menu/public_api.mjs +0 -3
  613. package/esm2022/lib/menu/resolvers/menu-form-includes.resolve.mjs +0 -50
  614. package/esm2022/lib/menu/resolvers/menu-item-form-includes.resolve.mjs +0 -50
  615. package/esm2022/lib/menu/resolvers/menu-list-projection.resolve.mjs +0 -51
  616. package/esm2022/lib/menu/resolvers/menu-settings.resolve.mjs +0 -24
  617. package/esm2022/lib/menu/services/menu-items.service.mjs +0 -19
  618. package/esm2022/lib/menu/services/menu.resolve.mjs +0 -68
  619. package/esm2022/lib/menu/services/menu.service.mjs +0 -19
  620. package/esm2022/lib/search/public_api.mjs +0 -2
  621. package/esm2022/lib/search/search.module.mjs +0 -33
  622. package/esm2022/lib/select/components/select.component.mjs +0 -215
  623. package/esm2022/lib/select/directives/vd-select-option.directive.mjs +0 -23
  624. package/esm2022/lib/select/directives/vd-select-trigger.directive.mjs +0 -23
  625. package/esm2022/lib/select/public_api.mjs +0 -4
  626. package/esm2022/lib/select/select.module.mjs +0 -48
  627. package/esm2022/lib/table/components/dynamic-table/dynamic-table.component.mjs +0 -810
  628. package/esm2022/lib/table/components/filter-clear/filter-clear.component.mjs +0 -36
  629. package/esm2022/lib/table/components/filter-date/filter-date.component.mjs +0 -146
  630. package/esm2022/lib/table/components/filter-input/filter-input.component.mjs +0 -198
  631. package/esm2022/lib/table/components/filter-select/filter-select.component.mjs +0 -375
  632. package/esm2022/lib/table/constants/constants.mjs +0 -3
  633. package/esm2022/lib/table/directives/data-source-filter.directive.mjs +0 -49
  634. package/esm2022/lib/table/directives/vd-table-field.directive.mjs +0 -35
  635. package/esm2022/lib/table/enums/grid.mjs +0 -12
  636. package/esm2022/lib/table/enums/table-column-type.mjs +0 -17
  637. package/esm2022/lib/table/functions/decorators.mjs +0 -163
  638. package/esm2022/lib/table/functions/functions.mjs +0 -28
  639. package/esm2022/lib/table/models/facet-value.mjs +0 -47
  640. package/esm2022/lib/table/models/facet.mjs +0 -48
  641. package/esm2022/lib/table/models/pagination.mjs +0 -27
  642. package/esm2022/lib/table/models/table-column-config.mjs +0 -128
  643. package/esm2022/lib/table/models/table-column.mjs +0 -270
  644. package/esm2022/lib/table/models/table-config.mjs +0 -41
  645. package/esm2022/lib/table/models/table-definition.mjs +0 -110
  646. package/esm2022/lib/table/models/table-query-config.mjs +0 -26
  647. package/esm2022/lib/table/paginator-intl.mjs +0 -41
  648. package/esm2022/lib/table/public_api.mjs +0 -2
  649. package/esm2022/lib/table/table.data-source.mjs +0 -326
  650. package/esm2022/lib/table/table.module.mjs +0 -165
  651. package/esm2022/lib/table/table.static-data-source.mjs +0 -198
  652. package/esm2022/messaia-cdk.mjs +0 -5
  653. package/esm2022/public_api.mjs +0 -19
  654. package/lib/common/styles/_elevation.scss +0 -147
  655. package/lib/common/styles/_rtl.scss +0 -28
  656. package/lib/common/styles/_styles.scss +0 -12
  657. package/lib/common/styles/_theme-functions.scss +0 -4
  658. package/lib/common/styles/_typography.scss +0 -76
  659. package/lib/common/styles/core/_content.scss +0 -42
  660. package/lib/common/styles/core/_divider.scss +0 -14
  661. package/lib/common/styles/core/_icons.scss +0 -27
  662. package/lib/common/styles/core/_list.scss +0 -8
  663. package/lib/common/styles/core/_toolbar.scss +0 -31
  664. package/lib/common/styles/core/_whiteframe.scss +0 -111
  665. package/lib/common/styles/m2/_theme-functions.scss +0 -21
  666. package/lib/common/styles/m3/_theme-functions.scss +0 -21
  667. package/lib/common/styles/platform.scss +0 -11
  668. package/lib/common/theming/_all-theme.scss +0 -27
  669. package/lib/common/typography/_all-typography.scss +0 -33
@@ -1,394 +0,0 @@
1
- /* ngModel, formControlName, and formControl are the selectors for this directive */
2
- import { Directive, ElementRef, forwardRef, Input, Renderer2 } from '@angular/core';
3
- /* Required imports for form control handling */
4
- import { NG_VALIDATORS } from '@angular/forms';
5
- /* Constants used in the directive */
6
- import { BLANK, BLUR, ELEMENT_VALUE, FOCUS } from "../../const";
7
- /* Importing validator-related constants and configurations */
8
- import { APP_VALIDATORS } from '../../const/app-validators.const';
9
- import { CONDITIONAL_VALIDATOR, TEMPLATE_VALIDATION_CONFIG, VALIDATOR_CONFIG } from '../../const/app.const';
10
- /* Providers for decimal and mask processing */
11
- import { DecimalProvider } from "../../domain/element-processor/decimal.provider";
12
- import { MaskProvider } from '../../domain/element-processor/mask.provider';
13
- /* Utility functions and classes */
14
- import { RegexValidator } from '../../util';
15
- import { ApplicationUtil } from '../../util/app-util';
16
- /* Base validator class */
17
- import { BaseValidator } from './base-validator.directive';
18
- import * as i0 from "@angular/core";
19
- import * as i1 from "../../domain/element-processor/decimal.provider";
20
- /* Configuration object for NG_VALIDATORS binding */
21
- const NGMODEL_BINDING = {
22
- provide: NG_VALIDATORS,
23
- useExisting: forwardRef(() => RxFormControlDirective),
24
- multi: true
25
- };
26
- /* List of validators that can be used without configuration */
27
- const ALLOW_VALIDATOR_WITHOUT_CONFIG = ['required', 'notEmpty', 'alpha', 'alphaNumeric', 'ascii', 'dataUri', 'digit', 'email', 'even', 'hexColor', 'json', 'latitude', 'latLong', 'leapYear', 'longitude', 'lowerCase', 'mac', 'odd', 'port', 'primeNumber', 'time', 'upperCase', 'url', 'unique', 'cusip', 'gird'];
28
- /* Constants for numeric validation */
29
- const NUMERIC = "numeric";
30
- const IS_FORMAT = "isFormat";
31
- const DIGITS_INFO = "digitsInfo";
32
- /* Directive class definition */
33
- export class RxFormControlDirective extends BaseValidator {
34
- elementRef;
35
- renderer;
36
- decimalProvider;
37
- eventListeners = [];
38
- isNumericSubscribed = false;
39
- isFocusCalled = false;
40
- isMasked = false;
41
- set validationControls(value) { this.controls = value; }
42
- get validationControls() { return this.controls; }
43
- /* Input properties for various validators */
44
- rxalpha;
45
- rxalphaNumeric;
46
- rxascii;
47
- rxcompare;
48
- rxcompose;
49
- rxcontains;
50
- rxcreditCard;
51
- rxdataUri;
52
- rxdifferent;
53
- rxdigit;
54
- rxemail;
55
- rxendsWith;
56
- rxeven;
57
- rxextension;
58
- rxfactor;
59
- rxfileSize;
60
- rxgreaterThanEqualTo;
61
- rxgreaterThan;
62
- rxhexColor;
63
- rxjson;
64
- rxlatitude;
65
- rxlatLong;
66
- rxleapYear;
67
- rxlessThan;
68
- rxlessThanEqualTo;
69
- rxlongitude;
70
- rxlowerCase;
71
- rxmac;
72
- rxmaxDate;
73
- rxmaxLength;
74
- rxmaxNumber;
75
- rxminDate;
76
- rxminLength;
77
- rxminNumber;
78
- rxnumeric;
79
- rxodd;
80
- rxpassword;
81
- rxport;
82
- rxprimeNumber;
83
- rxrequired;
84
- rxrange;
85
- rxrule;
86
- rxstartsWith;
87
- rxtime;
88
- rxupperCase;
89
- rxurl;
90
- rxunique;
91
- rxnotEmpty;
92
- rxcusip;
93
- rxgrid;
94
- rxdate;
95
- /**
96
- * Constructor with injected dependencies
97
- * @param elementRef
98
- * @param renderer
99
- * @param decimalProvider
100
- */
101
- constructor(elementRef, renderer, decimalProvider) {
102
- super();
103
- this.elementRef = elementRef;
104
- this.renderer = renderer;
105
- this.decimalProvider = decimalProvider;
106
- this.element = elementRef.nativeElement;
107
- this.setEventName();
108
- }
109
- ngOnInit() {
110
- let validators = [];
111
- /* Iterate through available validators and add them to the list if configured */
112
- Object.keys(APP_VALIDATORS).forEach(validatorName => {
113
- if ((this[`rx${validatorName}`]) || (ALLOW_VALIDATOR_WITHOUT_CONFIG.indexOf(validatorName) != -1 && this[`rx${validatorName}`] == BLANK)) {
114
- validators.push(APP_VALIDATORS[validatorName](this[`rx${validatorName}`]));
115
- /* Configure control if name is available */
116
- if (this.name && !(this.formControlName && this.formControl)) {
117
- ApplicationUtil.configureControl(this.controlConfig, this[`rx${validatorName}`], validatorName);
118
- }
119
- }
120
- });
121
- if (validators.length > 0) {
122
- this.validators = validators;
123
- }
124
- /* Bind numeric element event if rxnumeric is present */
125
- if (this.rxnumeric && (this.rxnumeric.isFormat || this.rxnumeric.digitsInfo)) {
126
- this.bindNumericElementEvent();
127
- }
128
- }
129
- /**
130
- * Method for handling blur event
131
- */
132
- blurEvent() {
133
- if (!(this.formControl && this.formControl.errors && this.formControl.errors.numeric)) {
134
- if (this.formControl.value !== null && this.formControl.value !== undefined) {
135
- let value = this.decimalProvider.transFormDecimal(this.formControl.value, this.rxnumeric.digitsInfo, this.rxnumeric.persistZero);
136
- value = (!this.rxnumeric.isFormat) ? this.decimalProvider.replacer(value) : value;
137
- this.setValueOnElement(value);
138
- }
139
- this.isFocusCalled = false;
140
- }
141
- }
142
- /**
143
- * Bind numeric element events
144
- * @param config
145
- */
146
- bindNumericElementEvent(config) {
147
- if (config)
148
- this.rxnumeric = config;
149
- let listener = this.renderer.listen(this.element, BLUR, this.blurEvent.bind(this));
150
- this.eventListeners.push(listener);
151
- listener = this.renderer.listen(this.element, FOCUS, (event) => {
152
- this.isFocusCalled = true;
153
- if (!(this.formControl && this.formControl.errors && this.formControl.errors.numeric) && this.formControl.value != null) {
154
- let value = this.decimalProvider.replacer(this.element.value);
155
- this.setValueOnElement(value);
156
- }
157
- });
158
- this.eventListeners.push(listener);
159
- }
160
- /**
161
- * Bind value change event
162
- */
163
- bindValueChangeEvent() {
164
- if (this.eventName && this.eventName != BLANK) {
165
- let listener = this.renderer.listen(this.element, this.eventName, () => {
166
- if (this.validationControls) {
167
- Object.keys(this.validationControls).forEach(fieldName => {
168
- this.validationControls[fieldName].updateValueAndValidity();
169
- });
170
- }
171
- });
172
- this.eventListeners.push(listener);
173
- }
174
- }
175
- /**
176
- * Subscribe to numeric formatter
177
- */
178
- subscribeNumericFormatter() {
179
- if (this.formControl[VALIDATOR_CONFIG] && this.formControl[VALIDATOR_CONFIG][NUMERIC] && (this.formControl[VALIDATOR_CONFIG][NUMERIC][IS_FORMAT] || this.formControl[VALIDATOR_CONFIG][NUMERIC][DIGITS_INFO])) {
180
- if (!this.isNumericSubscribed) {
181
- this.bindNumericElementEvent(this.formControl[VALIDATOR_CONFIG][NUMERIC]);
182
- this.isNumericSubscribed = true;
183
- }
184
- if (!this.isFocusCalled && RegexValidator.isNotBlank(this.formControl.value)) {
185
- this.blurEvent();
186
- }
187
- }
188
- }
189
- /**
190
- * Subscribe to mask validator
191
- */
192
- subscribeMaskValidator() {
193
- if (this.formControl[VALIDATOR_CONFIG] && this.formControl[VALIDATOR_CONFIG]["mask"] && !this.isMasked) {
194
- let config = this.formControl[VALIDATOR_CONFIG]["mask"];
195
- this.maskProvider = new MaskProvider(this.element, config.mask, this.renderer, this.formControl, config);
196
- this.isMasked = true;
197
- }
198
- }
199
- /**
200
- * Set value on element
201
- * @param value
202
- */
203
- setValueOnElement(value) {
204
- this.renderer.setProperty(this.element, ELEMENT_VALUE, value);
205
- }
206
- /**
207
- * Set template validators
208
- * @param control
209
- */
210
- setTemplateValidators(control) {
211
- for (let validatorName in control[VALIDATOR_CONFIG]) {
212
- this[validatorName] = control[VALIDATOR_CONFIG][validatorName];
213
- }
214
- delete control[TEMPLATE_VALIDATION_CONFIG];
215
- delete control[VALIDATOR_CONFIG];
216
- this.ngOnInit();
217
- }
218
- /**
219
- * Update element class on change
220
- * @param element
221
- * @returns
222
- */
223
- updateOnElementClass(element) {
224
- var previousClassName = '';
225
- return function (className) {
226
- if (previousClassName)
227
- element.classList.remove(previousClassName);
228
- if (className)
229
- element.classList.add(className);
230
- previousClassName = className;
231
- };
232
- }
233
- /**
234
- * Set validator configuration
235
- * @param control
236
- */
237
- setValidatorConfig(control) {
238
- if (!this.formControl) {
239
- this.formControl = control;
240
- let rxFormControl = this.formControl;
241
- if (rxFormControl.updateOnElementClass)
242
- rxFormControl.updateOnElementClass = this.updateOnElementClass(this.element);
243
- }
244
- this.subscribeMaskValidator();
245
- this.subscribeNumericFormatter();
246
- if (control[TEMPLATE_VALIDATION_CONFIG])
247
- this.setTemplateValidators(control);
248
- if (control[CONDITIONAL_VALIDATOR]) {
249
- this.conditionalValidator = control[CONDITIONAL_VALIDATOR];
250
- delete control[CONDITIONAL_VALIDATOR];
251
- }
252
- }
253
- /**
254
- * Validate the control
255
- * @param control
256
- * @returns
257
- */
258
- validate(control) {
259
- this.setValidatorConfig(control);
260
- if (this.conditionalValidator) {
261
- this.conditionalValidator(control);
262
- }
263
- if (!this.isProcessed) {
264
- this.setModelConfig(control);
265
- }
266
- return ((this.validators && this.validators.length > 0) || this.maskProvider) ? this.validation(control) : null;
267
- }
268
- /**
269
- * Destroy the directive
270
- */
271
- ngOnDestroy() {
272
- this.controls = undefined;
273
- let eventCount = this.eventListeners.length;
274
- for (var i = 0; i < eventCount; i++) {
275
- this.eventListeners[0]();
276
- this.eventListeners.splice(0, 1);
277
- }
278
- this.eventListeners = [];
279
- if (this.maskProvider)
280
- this.maskProvider.onDestroy();
281
- }
282
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RxFormControlDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.DecimalProvider }], target: i0.ɵɵFactoryTarget.Directive });
283
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: RxFormControlDirective, selector: "[ngModel],[formControlName],[formControl]", inputs: { rxalpha: "rxalpha", rxalphaNumeric: "rxalphaNumeric", rxascii: "rxascii", rxcompare: "rxcompare", rxcompose: "rxcompose", rxcontains: "rxcontains", rxcreditCard: "rxcreditCard", rxdataUri: "rxdataUri", rxdifferent: "rxdifferent", rxdigit: "rxdigit", rxemail: "rxemail", rxendsWith: "rxendsWith", rxeven: "rxeven", rxextension: "rxextension", rxfactor: "rxfactor", rxfileSize: "rxfileSize", rxgreaterThanEqualTo: "rxgreaterThanEqualTo", rxgreaterThan: "rxgreaterThan", rxhexColor: "rxhexColor", rxjson: "rxjson", rxlatitude: "rxlatitude", rxlatLong: "rxlatLong", rxleapYear: "rxleapYear", rxlessThan: "rxlessThan", rxlessThanEqualTo: "rxlessThanEqualTo", rxlongitude: "rxlongitude", rxlowerCase: "rxlowerCase", rxmac: "rxmac", rxmaxDate: "rxmaxDate", rxmaxLength: "rxmaxLength", rxmaxNumber: "rxmaxNumber", rxminDate: "rxminDate", rxminLength: "rxminLength", rxminNumber: "rxminNumber", rxnumeric: "rxnumeric", rxodd: "rxodd", rxpassword: "rxpassword", rxport: "rxport", rxprimeNumber: "rxprimeNumber", rxrequired: "rxrequired", rxrange: "rxrange", rxrule: "rxrule", rxstartsWith: "rxstartsWith", rxtime: "rxtime", rxupperCase: "rxupperCase", rxurl: "rxurl", rxunique: "rxunique", rxnotEmpty: "rxnotEmpty", rxcusip: "rxcusip", rxgrid: "rxgrid", rxdate: "rxdate" }, providers: [NGMODEL_BINDING], usesInheritance: true, ngImport: i0 });
284
- }
285
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RxFormControlDirective, decorators: [{
286
- type: Directive,
287
- args: [{
288
- selector: '[ngModel],[formControlName],[formControl]',
289
- providers: [NGMODEL_BINDING],
290
- }]
291
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.DecimalProvider }], propDecorators: { rxalpha: [{
292
- type: Input
293
- }], rxalphaNumeric: [{
294
- type: Input
295
- }], rxascii: [{
296
- type: Input
297
- }], rxcompare: [{
298
- type: Input
299
- }], rxcompose: [{
300
- type: Input
301
- }], rxcontains: [{
302
- type: Input
303
- }], rxcreditCard: [{
304
- type: Input
305
- }], rxdataUri: [{
306
- type: Input
307
- }], rxdifferent: [{
308
- type: Input
309
- }], rxdigit: [{
310
- type: Input
311
- }], rxemail: [{
312
- type: Input
313
- }], rxendsWith: [{
314
- type: Input
315
- }], rxeven: [{
316
- type: Input
317
- }], rxextension: [{
318
- type: Input
319
- }], rxfactor: [{
320
- type: Input
321
- }], rxfileSize: [{
322
- type: Input
323
- }], rxgreaterThanEqualTo: [{
324
- type: Input
325
- }], rxgreaterThan: [{
326
- type: Input
327
- }], rxhexColor: [{
328
- type: Input
329
- }], rxjson: [{
330
- type: Input
331
- }], rxlatitude: [{
332
- type: Input
333
- }], rxlatLong: [{
334
- type: Input
335
- }], rxleapYear: [{
336
- type: Input
337
- }], rxlessThan: [{
338
- type: Input
339
- }], rxlessThanEqualTo: [{
340
- type: Input
341
- }], rxlongitude: [{
342
- type: Input
343
- }], rxlowerCase: [{
344
- type: Input
345
- }], rxmac: [{
346
- type: Input
347
- }], rxmaxDate: [{
348
- type: Input
349
- }], rxmaxLength: [{
350
- type: Input
351
- }], rxmaxNumber: [{
352
- type: Input
353
- }], rxminDate: [{
354
- type: Input
355
- }], rxminLength: [{
356
- type: Input
357
- }], rxminNumber: [{
358
- type: Input
359
- }], rxnumeric: [{
360
- type: Input
361
- }], rxodd: [{
362
- type: Input
363
- }], rxpassword: [{
364
- type: Input
365
- }], rxport: [{
366
- type: Input
367
- }], rxprimeNumber: [{
368
- type: Input
369
- }], rxrequired: [{
370
- type: Input
371
- }], rxrange: [{
372
- type: Input
373
- }], rxrule: [{
374
- type: Input
375
- }], rxstartsWith: [{
376
- type: Input
377
- }], rxtime: [{
378
- type: Input
379
- }], rxupperCase: [{
380
- type: Input
381
- }], rxurl: [{
382
- type: Input
383
- }], rxunique: [{
384
- type: Input
385
- }], rxnotEmpty: [{
386
- type: Input
387
- }], rxcusip: [{
388
- type: Input
389
- }], rxgrid: [{
390
- type: Input
391
- }], rxdate: [{
392
- type: Input
393
- }] } });
394
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnhmb3JtY29udHJvbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc3JjL2xpYi9mb3JtLXZhbGlkYXRvcnMvZGlyZWN0aXZlcy90ZW1wbGF0ZS12YWxpZGF0aW9ucy9yeGZvcm1jb250cm9sLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvRkFBb0Y7QUFDcEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZHLGdEQUFnRDtBQUNoRCxPQUFPLEVBQWdDLGFBQWEsRUFBMEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRyxxQ0FBcUM7QUFDckMsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVoRSw4REFBOEQ7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSwwQkFBMEIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTVHLCtDQUErQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saURBQWlELENBQUM7QUFDbEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBYTVFLG1DQUFtQztBQUNuQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RCwwQkFBMEI7QUFDMUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7QUFFM0Qsb0RBQW9EO0FBQ3BELE1BQU0sZUFBZSxHQUFRO0lBQ3pCLE9BQU8sRUFBRSxhQUFhO0lBQ3RCLFdBQVcs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TUFBTTtzQkFBZCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qIG5nTW9kZWwsIGZvcm1Db250cm9sTmFtZSwgYW5kIGZvcm1Db250cm9sIGFyZSB0aGUgc2VsZWN0b3JzIGZvciB0aGlzIGRpcmVjdGl2ZSAqL1xyXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vKiBSZXF1aXJlZCBpbXBvcnRzIGZvciBmb3JtIGNvbnRyb2wgaGFuZGxpbmcgKi9cclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQ29udHJvbCwgTkdfVkFMSURBVE9SUywgVmFsaWRhdG9yLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbi8qIENvbnN0YW50cyB1c2VkIGluIHRoZSBkaXJlY3RpdmUgKi9cclxuaW1wb3J0IHsgQkxBTkssIEJMVVIsIEVMRU1FTlRfVkFMVUUsIEZPQ1VTIH0gZnJvbSBcIi4uLy4uL2NvbnN0XCI7XHJcblxyXG4vKiBJbXBvcnRpbmcgdmFsaWRhdG9yLXJlbGF0ZWQgY29uc3RhbnRzIGFuZCBjb25maWd1cmF0aW9ucyAqL1xyXG5pbXBvcnQgeyBBUFBfVkFMSURBVE9SUyB9IGZyb20gJy4uLy4uL2NvbnN0L2FwcC12YWxpZGF0b3JzLmNvbnN0JztcclxuaW1wb3J0IHsgQ09ORElUSU9OQUxfVkFMSURBVE9SLCBURU1QTEFURV9WQUxJREFUSU9OX0NPTkZJRywgVkFMSURBVE9SX0NPTkZJRyB9IGZyb20gJy4uLy4uL2NvbnN0L2FwcC5jb25zdCc7XHJcblxyXG4vKiBQcm92aWRlcnMgZm9yIGRlY2ltYWwgYW5kIG1hc2sgcHJvY2Vzc2luZyAqL1xyXG5pbXBvcnQgeyBEZWNpbWFsUHJvdmlkZXIgfSBmcm9tIFwiLi4vLi4vZG9tYWluL2VsZW1lbnQtcHJvY2Vzc29yL2RlY2ltYWwucHJvdmlkZXJcIjtcclxuaW1wb3J0IHsgTWFza1Byb3ZpZGVyIH0gZnJvbSAnLi4vLi4vZG9tYWluL2VsZW1lbnQtcHJvY2Vzc29yL21hc2sucHJvdmlkZXInO1xyXG5cclxuLyogQ29uZmlndXJhdGlvbiBtb2RlbHMgdXNlZCBieSB0aGUgZGlyZWN0aXZlICovXHJcbmltcG9ydCB7XHJcbiAgICBBbHBoYUNvbmZpZywgQmFzZUNvbmZpZywgQ29tcGFyZUNvbmZpZywgQ29tcG9zZUNvbmZpZywgQ29udGFpbnNDb25maWcsIENyZWRpdENhcmRDb25maWcsIERhdGVDb25maWcsXHJcbiAgICBEZWZhdWx0Q29uZmlnLCBEaWZmZXJlbnRDb25maWcsIERpZ2l0Q29uZmlnLCBFbWFpbENvbmZpZywgRXh0ZW5zaW9uQ29uZmlnLCBGYWN0b3JDb25maWcsIE1lc3NhZ2VDb25maWcsXHJcbiAgICBOdW1iZXJDb25maWcsIE51bWVyaWNDb25maWcsIFBhc3N3b3JkQ29uZmlnLCBSYW5nZUNvbmZpZywgUmVsYXRpb25hbE9wZXJhdG9yQ29uZmlnLCBSZXF1aXJlZENvbmZpZywgUnVsZUNvbmZpZyxcclxuICAgIFNpemVDb25maWcsIFRpbWVDb25maWcsIFVuaXF1ZUNvbmZpZ1xyXG59IGZyb20gJy4uLy4uL21vZGVscy9jb25maWcnO1xyXG5cclxuLyogU2VydmljZSBmb3IgZm9ybSBjb250cm9sIG1hbmlwdWxhdGlvbiAqL1xyXG5pbXBvcnQgeyBSeEZvcm1Db250cm9sIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2Zvcm0tY29udHJvbFwiO1xyXG5cclxuLyogVXRpbGl0eSBmdW5jdGlvbnMgYW5kIGNsYXNzZXMgKi9cclxuaW1wb3J0IHsgUmVnZXhWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi91dGlsJztcclxuaW1wb3J0IHsgQXBwbGljYXRpb25VdGlsIH0gZnJvbSAnLi4vLi4vdXRpbC9hcHAtdXRpbCc7XHJcblxyXG4vKiBCYXNlIHZhbGlkYXRvciBjbGFzcyAqL1xyXG5pbXBvcnQgeyBCYXNlVmFsaWRhdG9yIH0gZnJvbSAnLi9iYXNlLXZhbGlkYXRvci5kaXJlY3RpdmUnO1xyXG5cclxuLyogQ29uZmlndXJhdGlvbiBvYmplY3QgZm9yIE5HX1ZBTElEQVRPUlMgYmluZGluZyAqL1xyXG5jb25zdCBOR01PREVMX0JJTkRJTkc6IGFueSA9IHtcclxuICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXHJcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBSeEZvcm1Db250cm9sRGlyZWN0aXZlKSxcclxuICAgIG11bHRpOiB0cnVlXHJcbn07XHJcblxyXG4vKiBMaXN0IG9mIHZhbGlkYXRvcnMgdGhhdCBjYW4gYmUgdXNlZCB3aXRob3V0IGNvbmZpZ3VyYXRpb24gKi9cclxuY29uc3QgQUxMT1dfVkFMSURBVE9SX1dJVEhPVVRfQ09ORklHID0gWydyZXF1aXJlZCcsICdub3RFbXB0eScsICdhbHBoYScsICdhbHBoYU51bWVyaWMnLCAnYXNjaWknLCAnZGF0YVVyaScsICdkaWdpdCcsICdlbWFpbCcsICdldmVuJywgJ2hleENvbG9yJywgJ2pzb24nLCAnbGF0aXR1ZGUnLCAnbGF0TG9uZycsICdsZWFwWWVhcicsICdsb25naXR1ZGUnLCAnbG93ZXJDYXNlJywgJ21hYycsICdvZGQnLCAncG9ydCcsICdwcmltZU51bWJlcicsICd0aW1lJywgJ3VwcGVyQ2FzZScsICd1cmwnLCAndW5pcXVlJywgJ2N1c2lwJywgJ2dpcmQnXTtcclxuXHJcbi8qIENvbnN0YW50cyBmb3IgbnVtZXJpYyB2YWxpZGF0aW9uICovXHJcbmNvbnN0IE5VTUVSSUM6IHN0cmluZyA9IFwibnVtZXJpY1wiO1xyXG5jb25zdCBJU19GT1JNQVQ6IHN0cmluZyA9IFwiaXNGb3JtYXRcIjtcclxuY29uc3QgRElHSVRTX0lORk86IHN0cmluZyA9IFwiZGlnaXRzSW5mb1wiO1xyXG5cclxuLyogRGlyZWN0aXZlIGNsYXNzIGRlZmluaXRpb24gKi9cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1tuZ01vZGVsXSxbZm9ybUNvbnRyb2xOYW1lXSxbZm9ybUNvbnRyb2xdJyxcclxuICAgIHByb3ZpZGVyczogW05HTU9ERUxfQklORElOR10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSeEZvcm1Db250cm9sRGlyZWN0aXZlIGV4dGVuZHMgQmFzZVZhbGlkYXRvciBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBWYWxpZGF0b3Ige1xyXG4gICAgcHJpdmF0ZSBldmVudExpc3RlbmVyczogYW55W10gPSBbXTtcclxuICAgIHByaXZhdGUgaXNOdW1lcmljU3Vic2NyaWJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBpc0ZvY3VzQ2FsbGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwcml2YXRlIGlzTWFza2VkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgc2V0IHZhbGlkYXRpb25Db250cm9scyh2YWx1ZTogeyBba2V5OiBzdHJpbmddOiBGb3JtQ29udHJvbCB9KSB7IHRoaXMuY29udHJvbHMgPSB2YWx1ZTsgfVxyXG5cclxuICAgIGdldCB2YWxpZGF0aW9uQ29udHJvbHMoKTogeyBba2V5OiBzdHJpbmddOiBGb3JtQ29udHJvbCB9IHwgdW5kZWZpbmVkIHsgcmV0dXJuIHRoaXMuY29udHJvbHM7IH1cclxuXHJcbiAgICAvKiBJbnB1dCBwcm9wZXJ0aWVzIGZvciB2YXJpb3VzIHZhbGlkYXRvcnMgKi9cclxuICAgIEBJbnB1dCgpIHJ4YWxwaGE/OiBBbHBoYUNvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4YWxwaGFOdW1lcmljPzogQWxwaGFDb25maWc7XHJcbiAgICBASW5wdXQoKSByeGFzY2lpPzogQmFzZUNvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4Y29tcGFyZT86IENvbXBhcmVDb25maWc7XHJcbiAgICBASW5wdXQoKSByeGNvbXBvc2U/OiBDb21wb3NlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhjb250YWlucz86IENvbnRhaW5zQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhjcmVkaXRDYXJkPzogQ3JlZGl0Q2FyZENvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4ZGF0YVVyaT86IEJhc2VDb25maWc7XHJcbiAgICBASW5wdXQoKSByeGRpZmZlcmVudD86IERpZmZlcmVudENvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4ZGlnaXQ/OiBEaWdpdENvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4ZW1haWw/OiBFbWFpbENvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4ZW5kc1dpdGg/OiBEZWZhdWx0Q29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhldmVuPzogQmFzZUNvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4ZXh0ZW5zaW9uPzogRXh0ZW5zaW9uQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhmYWN0b3I/OiBGYWN0b3JDb25maWc7XHJcbiAgICBASW5wdXQoKSByeGZpbGVTaXplPzogU2l6ZUNvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4Z3JlYXRlclRoYW5FcXVhbFRvPzogUmVsYXRpb25hbE9wZXJhdG9yQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhncmVhdGVyVGhhbj86IFJlbGF0aW9uYWxPcGVyYXRvckNvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4aGV4Q29sb3I/OiBNZXNzYWdlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhqc29uPzogRGVmYXVsdENvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4bGF0aXR1ZGU/OiBCYXNlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhsYXRMb25nPzogQmFzZUNvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4bGVhcFllYXI/OiBCYXNlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhsZXNzVGhhbj86IFJlbGF0aW9uYWxPcGVyYXRvckNvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4bGVzc1RoYW5FcXVhbFRvPzogUmVsYXRpb25hbE9wZXJhdG9yQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhsb25naXR1ZGU/OiBCYXNlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhsb3dlckNhc2U/OiBNZXNzYWdlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhtYWM/OiBCYXNlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhtYXhEYXRlPzogRGF0ZUNvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4bWF4TGVuZ3RoPzogTnVtYmVyQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhtYXhOdW1iZXI/OiBOdW1iZXJDb25maWc7XHJcbiAgICBASW5wdXQoKSByeG1pbkRhdGU/OiBEYXRlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhtaW5MZW5ndGg/OiBOdW1iZXJDb25maWc7XHJcbiAgICBASW5wdXQoKSByeG1pbk51bWJlcj86IE51bWJlckNvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4bnVtZXJpYz86IE51bWVyaWNDb25maWc7XHJcbiAgICBASW5wdXQoKSByeG9kZD86IEJhc2VDb25maWc7XHJcbiAgICBASW5wdXQoKSByeHBhc3N3b3JkPzogUGFzc3dvcmRDb25maWc7XHJcbiAgICBASW5wdXQoKSByeHBvcnQ/OiBCYXNlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhwcmltZU51bWJlcj86IEJhc2VDb25maWc7XHJcbiAgICBASW5wdXQoKSByeHJlcXVpcmVkPzogUmVxdWlyZWRDb25maWc7XHJcbiAgICBASW5wdXQoKSByeHJhbmdlPzogUmFuZ2VDb25maWc7XHJcbiAgICBASW5wdXQoKSByeHJ1bGU/OiBSdWxlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhzdGFydHNXaXRoPzogRGVmYXVsdENvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4dGltZT86IFRpbWVDb25maWc7XHJcbiAgICBASW5wdXQoKSByeHVwcGVyQ2FzZT86IE1lc3NhZ2VDb25maWc7XHJcbiAgICBASW5wdXQoKSByeHVybD86IERlZmF1bHRDb25maWc7XHJcbiAgICBASW5wdXQoKSByeHVuaXF1ZT86IFVuaXF1ZUNvbmZpZztcclxuICAgIEBJbnB1dCgpIHJ4bm90RW1wdHk/OiBCYXNlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhjdXNpcD86IEJhc2VDb25maWc7XHJcbiAgICBASW5wdXQoKSByeGdyaWQ/OiBCYXNlQ29uZmlnO1xyXG4gICAgQElucHV0KCkgcnhkYXRlPzogQmFzZUNvbmZpZztcclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnN0cnVjdG9yIHdpdGggaW5qZWN0ZWQgZGVwZW5kZW5jaWVzXHJcbiAgICAgKiBAcGFyYW0gZWxlbWVudFJlZiBcclxuICAgICAqIEBwYXJhbSByZW5kZXJlciBcclxuICAgICAqIEBwYXJhbSBkZWNpbWFsUHJvdmlkZXIgXHJcbiAgICAgKi9cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIGRlY2ltYWxQcm92aWRlcjogRGVjaW1hbFByb3ZpZGVyKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgICAgICB0aGlzLmVsZW1lbnQgPSBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgYXMgTm9kZTtcclxuICAgICAgICB0aGlzLnNldEV2ZW50TmFtZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIGxldCB2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdID0gW107XHJcblxyXG4gICAgICAgIC8qIEl0ZXJhdGUgdGhyb3VnaCBhdmFpbGFibGUgdmFsaWRhdG9ycyBhbmQgYWRkIHRoZW0gdG8gdGhlIGxpc3QgaWYgY29uZmlndXJlZCAqL1xyXG4gICAgICAgIE9iamVjdC5rZXlzKEFQUF9WQUxJREFUT1JTKS5mb3JFYWNoKHZhbGlkYXRvck5hbWUgPT4ge1xyXG4gICAgICAgICAgICBpZiAoKCh0aGlzIGFzIGFueSlbYHJ4JHt2YWxpZGF0b3JOYW1lfWBdKSB8fCAoQUxMT1dfVkFMSURBVE9SX1dJVEhPVVRfQ09ORklHLmluZGV4T2YodmFsaWRhdG9yTmFtZSkgIT0gLTEgJiYgKHRoaXMgYXMgYW55KVtgcngke3ZhbGlkYXRvck5hbWV9YF0gPT0gQkxBTkspKSB7XHJcbiAgICAgICAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goQVBQX1ZBTElEQVRPUlNbdmFsaWRhdG9yTmFtZV0oKHRoaXMgYXMgYW55KVtgcngke3ZhbGlkYXRvck5hbWV9YF0pKTtcclxuXHJcbiAgICAgICAgICAgICAgICAvKiBDb25maWd1cmUgY29udHJvbCBpZiBuYW1lIGlzIGF2YWlsYWJsZSAqL1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMubmFtZSAmJiAhKHRoaXMuZm9ybUNvbnRyb2xOYW1lICYmIHRoaXMuZm9ybUNvbnRyb2wpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQXBwbGljYXRpb25VdGlsLmNvbmZpZ3VyZUNvbnRyb2wodGhpcy5jb250cm9sQ29uZmlnLCAodGhpcyBhcyBhbnkpW2ByeCR7dmFsaWRhdG9yTmFtZX1gXSwgdmFsaWRhdG9yTmFtZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG5cclxuICAgICAgICBpZiAodmFsaWRhdG9ycy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmFsaWRhdG9ycyA9IHZhbGlkYXRvcnM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBCaW5kIG51bWVyaWMgZWxlbWVudCBldmVudCBpZiByeG51bWVyaWMgaXMgcHJlc2VudCAqL1xyXG4gICAgICAgIGlmICh0aGlzLnJ4bnVtZXJpYyAmJiAodGhpcy5yeG51bWVyaWMuaXNGb3JtYXQgfHwgdGhpcy5yeG51bWVyaWMuZGlnaXRzSW5mbykpIHtcclxuICAgICAgICAgICAgdGhpcy5iaW5kTnVtZXJpY0VsZW1lbnRFdmVudCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE1ldGhvZCBmb3IgaGFuZGxpbmcgYmx1ciBldmVudFxyXG4gICAgICovXHJcbiAgICBibHVyRXZlbnQoKSB7XHJcbiAgICAgICAgaWYgKCEodGhpcy5mb3JtQ29udHJvbCAmJiB0aGlzLmZvcm1Db250cm9sLmVycm9ycyAmJiB0aGlzLmZvcm1Db250cm9sLmVycm9ycy5udW1lcmljKSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5mb3JtQ29udHJvbCEudmFsdWUgIT09IG51bGwgJiYgdGhpcy5mb3JtQ29udHJvbCEudmFsdWUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gdGhpcy5kZWNpbWFsUHJvdmlkZXIudHJhbnNGb3JtRGVjaW1hbCh0aGlzLmZvcm1Db250cm9sIS52YWx1ZSwgdGhpcy5yeG51bWVyaWMhLmRpZ2l0c0luZm8hLCB0aGlzLnJ4bnVtZXJpYyEucGVyc2lzdFplcm8hKTtcclxuICAgICAgICAgICAgICAgIHZhbHVlID0gKCF0aGlzLnJ4bnVtZXJpYyEuaXNGb3JtYXQpID8gdGhpcy5kZWNpbWFsUHJvdmlkZXIucmVwbGFjZXIodmFsdWUpIDogdmFsdWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFZhbHVlT25FbGVtZW50KHZhbHVlKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5pc0ZvY3VzQ2FsbGVkID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQmluZCBudW1lcmljIGVsZW1lbnQgZXZlbnRzXHJcbiAgICAgKiBAcGFyYW0gY29uZmlnIFxyXG4gICAgICovXHJcbiAgICBiaW5kTnVtZXJpY0VsZW1lbnRFdmVudChjb25maWc/OiBOdW1lcmljQ29uZmlnKSB7XHJcbiAgICAgICAgaWYgKGNvbmZpZylcclxuICAgICAgICAgICAgdGhpcy5yeG51bWVyaWMgPSBjb25maWc7XHJcblxyXG4gICAgICAgIGxldCBsaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHRoaXMuZWxlbWVudCwgQkxVUiwgdGhpcy5ibHVyRXZlbnQuYmluZCh0aGlzKSk7XHJcbiAgICAgICAgdGhpcy5ldmVudExpc3RlbmVycy5wdXNoKGxpc3RlbmVyKTtcclxuXHJcbiAgICAgICAgbGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0aGlzLmVsZW1lbnQsIEZPQ1VTLCAoZXZlbnQpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5pc0ZvY3VzQ2FsbGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgaWYgKCEodGhpcy5mb3JtQ29udHJvbCAmJiB0aGlzLmZvcm1Db250cm9sLmVycm9ycyAmJiB0aGlzLmZvcm1Db250cm9sLmVycm9ycy5udW1lcmljKSAmJiB0aGlzLmZvcm1Db250cm9sIS52YWx1ZSAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSB0aGlzLmRlY2ltYWxQcm92aWRlci5yZXBsYWNlcih0aGlzLmVsZW1lbnQudmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRWYWx1ZU9uRWxlbWVudCh2YWx1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmV2ZW50TGlzdGVuZXJzLnB1c2gobGlzdGVuZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQmluZCB2YWx1ZSBjaGFuZ2UgZXZlbnRcclxuICAgICAqL1xyXG4gICAgYmluZFZhbHVlQ2hhbmdlRXZlbnQoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZXZlbnROYW1lICYmIHRoaXMuZXZlbnROYW1lICE9IEJMQU5LKSB7XHJcbiAgICAgICAgICAgIGxldCBsaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHRoaXMuZWxlbWVudCwgdGhpcy5ldmVudE5hbWUhLCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy52YWxpZGF0aW9uQ29udHJvbHMpIHtcclxuICAgICAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyh0aGlzLnZhbGlkYXRpb25Db250cm9scyEpLmZvckVhY2goZmllbGROYW1lID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgKHRoaXMudmFsaWRhdGlvbkNvbnRyb2xzIGFzIGFueSlbZmllbGROYW1lXS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB0aGlzLmV2ZW50TGlzdGVuZXJzLnB1c2gobGlzdGVuZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFN1YnNjcmliZSB0byBudW1lcmljIGZvcm1hdHRlclxyXG4gICAgICovXHJcbiAgICBzdWJzY3JpYmVOdW1lcmljRm9ybWF0dGVyKCkge1xyXG4gICAgICAgIGlmICgodGhpcy5mb3JtQ29udHJvbCBhcyBhbnkpW1ZBTElEQVRPUl9DT05GSUddICYmICh0aGlzLmZvcm1Db250cm9sIGFzIGFueSlbVkFMSURBVE9SX0NPTkZJR11bTlVNRVJJQ10gJiYgKCh0aGlzLmZvcm1Db250cm9sIGFzIGFueSlbVkFMSURBVE9SX0NPTkZJR11bTlVNRVJJQ11bSVNfRk9STUFUXSB8fCAodGhpcy5mb3JtQ29udHJvbCBhcyBhbnkpW1ZBTElEQVRPUl9DT05GSUddW05VTUVSSUNdW0RJR0lUU19JTkZPXSkpIHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLmlzTnVtZXJpY1N1YnNjcmliZWQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuYmluZE51bWVyaWNFbGVtZW50RXZlbnQoKHRoaXMuZm9ybUNvbnRyb2wgYXMgYW55KVtWQUxJREFUT1JfQ09ORklHXVtOVU1FUklDXSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmlzTnVtZXJpY1N1YnNjcmliZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAoIXRoaXMuaXNGb2N1c0NhbGxlZCAmJiBSZWdleFZhbGlkYXRvci5pc05vdEJsYW5rKCh0aGlzLmZvcm1Db250cm9sIGFzIGFueSkudmFsdWUpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmJsdXJFdmVudCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogU3Vic2NyaWJlIHRvIG1hc2sgdmFsaWRhdG9yXHJcbiAgICAgKi9cclxuICAgIHN1YnNjcmliZU1hc2tWYWxpZGF0b3IoKSB7XHJcbiAgICAgICAgaWYgKCh0aGlzLmZvcm1Db250cm9sIGFzIGFueSlbVkFMSURBVE9SX0NPTkZJR10gJiYgKHRoaXMuZm9ybUNvbnRyb2wgYXMgYW55KVtWQUxJREFUT1JfQ09ORklHXVtcIm1hc2tcIl0gJiYgIXRoaXMuaXNNYXNrZWQpIHtcclxuICAgICAgICAgICAgbGV0IGNvbmZpZyA9ICh0aGlzLmZvcm1Db250cm9sIGFzIGFueSlbVkFMSURBVE9SX0NPTkZJR11bXCJtYXNrXCJdO1xyXG4gICAgICAgICAgICB0aGlzLm1hc2tQcm92aWRlciA9IG5ldyBNYXNrUHJvdmlkZXIodGhpcy5lbGVtZW50LCBjb25maWcubWFzaywgdGhpcy5yZW5kZXJlciwgdGhpcy5mb3JtQ29udHJvbCBhcyBGb3JtQ29udHJvbCwgY29uZmlnKTtcclxuICAgICAgICAgICAgdGhpcy5pc01hc2tlZCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogU2V0IHZhbHVlIG9uIGVsZW1lbnRcclxuICAgICAqIEBwYXJhbSB2YWx1ZSBcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBzZXRWYWx1ZU9uRWxlbWVudCh2YWx1ZTogYW55KSB7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnQsIEVMRU1FTlRfVkFMVUUsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFNldCB0ZW1wbGF0ZSB2YWxpZGF0b3JzXHJcbiAgICAgKiBAcGFyYW0gY29udHJvbCBcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBzZXRUZW1wbGF0ZVZhbGlkYXRvcnMoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XHJcbiAgICAgICAgZm9yIChsZXQgdmFsaWRhdG9yTmFtZSBpbiAoY29udHJvbCBhcyBhbnkpW1ZBTElEQVRPUl9DT05GSUddKSB7XHJcbiAgICAgICAgICAgICh0aGlzIGFzIGFueSlbdmFsaWRhdG9yTmFtZV0gPSAoY29udHJvbCBhcyBhbnkpW1ZBTElEQVRPUl9DT05GSUddW3ZhbGlkYXRvck5hbWVdO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZGVsZXRlIChjb250cm9sIGFzIGFueSlbVEVNUExBVEVfVkFMSURBVElPTl9DT05GSUddO1xyXG4gICAgICAgIGRlbGV0ZSAoY29udHJvbCBhcyBhbnkpW1ZBTElEQVRPUl9DT05GSUddO1xyXG4gICAgICAgIHRoaXMubmdPbkluaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFVwZGF0ZSBlbGVtZW50IGNsYXNzIG9uIGNoYW5nZVxyXG4gICAgICogQHBhcmFtIGVsZW1lbnQgXHJcbiAgICAgKiBAcmV0dXJucyBcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSB1cGRhdGVPbkVsZW1lbnRDbGFzcyhlbGVtZW50OiBIVE1MRWxlbWVudCkge1xyXG4gICAgICAgIHZhciBwcmV2aW91c0NsYXNzTmFtZTogc3RyaW5nID0gJyc7XHJcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIChjbGFzc05hbWU6IHN0cmluZykge1xyXG4gICAgICAgICAgICBpZiAocHJldmlvdXNDbGFzc05hbWUpXHJcbiAgICAgICAgICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUocHJldmlvdXNDbGFzc05hbWUpO1xyXG5cclxuICAgICAgICAgICAgaWYgKGNsYXNzTmFtZSlcclxuICAgICAgICAgICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZChjbGFzc05hbWUpO1xyXG5cclxuICAgICAgICAgICAgcHJldmlvdXNDbGFzc05hbWUgPSBjbGFzc05hbWU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogU2V0IHZhbGlkYXRvciBjb25maWd1cmF0aW9uXHJcbiAgICAgKiBAcGFyYW0gY29udHJvbCBcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBzZXRWYWxpZGF0b3JDb25maWcoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmZvcm1Db250cm9sKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2wgPSBjb250cm9sO1xyXG4gICAgICAgICAgICBsZXQgcnhGb3JtQ29udHJvbCA9IHRoaXMuZm9ybUNvbnRyb2wgYXMgUnhGb3JtQ29udHJvbDtcclxuXHJcbiAgICAgICAgICAgIGlmIChyeEZvcm1Db250cm9sLnVwZGF0ZU9uRWxlbWVudENsYXNzKVxyXG4gICAgICAgICAgICAgICAgcnhGb3JtQ29udHJvbC51cGRhdGVPbkVsZW1lbnRDbGFzcyA9IHRoaXMudXBkYXRlT25FbGVtZW50Q2xhc3ModGhpcy5lbGVtZW50KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuc3Vic2NyaWJlTWFza1ZhbGlkYXRvcigpO1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaWJlTnVtZXJpY0Zvcm1hdHRlcigpO1xyXG5cclxuICAgICAgICBpZiAoKGNvbnRyb2wgYXMgYW55KVtURU1QTEFURV9WQUxJREFUSU9OX0NPTkZJR10pXHJcbiAgICAgICAgICAgIHRoaXMuc2V0VGVtcGxhdGVWYWxpZGF0b3JzKGNvbnRyb2wpO1xyXG5cclxuICAgICAgICBpZiAoKGNvbnRyb2wgYXMgYW55KVtDT05ESVRJT05BTF9WQUxJREFUT1JdKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29uZGl0aW9uYWxWYWxpZGF0b3IgPSAoY29udHJvbCBhcyBhbnkpW0NPTkRJVElPTkFMX1ZBTElEQVRPUl07XHJcbiAgICAgICAgICAgIGRlbGV0ZSAoY29udHJvbCBhcyBhbnkpW0NPTkRJVElPTkFMX1ZBTElEQVRPUl07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmFsaWRhdGUgdGhlIGNvbnRyb2xcclxuICAgICAqIEBwYXJhbSBjb250cm9sIFxyXG4gICAgICogQHJldHVybnMgXHJcbiAgICAgKi9cclxuICAgIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0gfCBudWxsIHtcclxuICAgICAgICB0aGlzLnNldFZhbGlkYXRvckNvbmZpZyhjb250cm9sKTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuY29uZGl0aW9uYWxWYWxpZGF0b3IpIHtcclxuICAgICAgICAgICAgdGhpcy5jb25kaXRpb25hbFZhbGlkYXRvcihjb250cm9sKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5pc1Byb2Nlc3NlZCkge1xyXG4gICAgICAgICAgICB0aGlzLnNldE1vZGVsQ29uZmlnKGNvbnRyb2wpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuICgodGhpcy52YWxpZGF0b3JzICYmIHRoaXMudmFsaWRhdG9ycy5sZW5ndGggPiAwKSB8fCB0aGlzLm1hc2tQcm92aWRlcikgPyB0aGlzLnZhbGlkYXRpb24oY29udHJvbCkgOiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGVzdHJveSB0aGUgZGlyZWN0aXZlXHJcbiAgICAgKi9cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMuY29udHJvbHMgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgbGV0IGV2ZW50Q291bnQgPSB0aGlzLmV2ZW50TGlzdGVuZXJzLmxlbmd0aDtcclxuXHJcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBldmVudENvdW50OyBpKyspIHtcclxuICAgICAgICAgICAgdGhpcy5ldmVudExpc3RlbmVyc1swXSgpO1xyXG4gICAgICAgICAgICB0aGlzLmV2ZW50TGlzdGVuZXJzLnNwbGljZSgwLCAxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuZXZlbnRMaXN0ZW5lcnMgPSBbXTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMubWFza1Byb3ZpZGVyKVxyXG4gICAgICAgICAgICB0aGlzLm1hc2tQcm92aWRlci5vbkRlc3Ryb3koKTtcclxuICAgIH1cclxufVxyXG4iXX0=