@reusa/ngx-reusa-app-lib 0.0.1373 → 0.0.1374

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 (545) hide show
  1. package/esm2022/lib/components/add-employer/add-employer.component.mjs +1324 -2394
  2. package/esm2022/lib/components/add-participant/add-participant.component.mjs +105 -159
  3. package/esm2022/lib/components/add-payment/add-payment.component.mjs +53 -59
  4. package/esm2022/lib/components/address/address.component.mjs +152 -287
  5. package/esm2022/lib/components/bank-details/bank-details.component.mjs +219 -79
  6. package/esm2022/lib/components/contact-us/contact-us.component.mjs +43 -17
  7. package/esm2022/lib/components/correspondence-download/correspondence-download.component.mjs +9 -3
  8. package/esm2022/lib/components/dashboard-card/dashboard-card.component.mjs +4 -32
  9. package/esm2022/lib/components/dependent-grid/dependent-grid.component.mjs +15 -30
  10. package/esm2022/lib/components/disclosure/disclosure.component.mjs +1 -1
  11. package/esm2022/lib/components/dropdown/dropdown.component.mjs +4 -4
  12. package/esm2022/lib/components/dropdown/dropdown.interface.mjs +1 -1
  13. package/esm2022/lib/components/email-update/email-update.component.mjs +140 -63
  14. package/esm2022/lib/components/employer-grid/employer-grid.component.mjs +574 -422
  15. package/esm2022/lib/components/error/error.component.mjs +5 -22
  16. package/esm2022/lib/components/fav-menu/fav-menu.component.mjs +1 -1
  17. package/esm2022/lib/components/file-uploader/file-uploader.component.mjs +49 -178
  18. package/esm2022/lib/components/footer/footer.component.mjs +101 -112
  19. package/esm2022/lib/components/header/header.component.mjs +174 -440
  20. package/esm2022/lib/components/idle-detector/idle-detector.component.mjs +36 -25
  21. package/esm2022/lib/components/info/info.component.mjs +12 -4
  22. package/esm2022/lib/components/job-search-result-page/job-search-result-page.component.mjs +22 -16
  23. package/esm2022/lib/components/job-title/job-title.component.mjs +97 -92
  24. package/esm2022/lib/components/legal-disclaimar/legal-disclaimar.component.mjs +513 -143
  25. package/esm2022/lib/components/lexis-nexis/lexis-nexis.component.mjs +402 -0
  26. package/esm2022/lib/components/link/link.component.mjs +1 -1
  27. package/esm2022/lib/components/menu/menu.component.mjs +100 -68
  28. package/esm2022/lib/components/mfa/mfa.component.mjs +288 -158
  29. package/esm2022/lib/components/mfa-popup/mfa-popup.component.mjs +18 -11
  30. package/esm2022/lib/components/mfa2/mfa2.component.mjs +285 -0
  31. package/esm2022/lib/components/money-expect/money-expect.component.mjs +54 -158
  32. package/esm2022/lib/components/profile/profile.component.mjs +353 -749
  33. package/esm2022/lib/components/profile-redirect/profile-redirect.component.mjs +38 -108
  34. package/esm2022/lib/components/questionnaire/AppValidators.mjs +47 -296
  35. package/esm2022/lib/components/questionnaire/account-success/account-success.page.mjs +65 -110
  36. package/esm2022/lib/components/questionnaire/common-success/common-success.page.mjs +173 -377
  37. package/esm2022/lib/components/questionnaire/dynamic-form-panel.component.mjs +95 -76
  38. package/esm2022/lib/components/questionnaire/dynamic-form-question.component.mjs +1153 -877
  39. package/esm2022/lib/components/questionnaire/dynamic-form.component.mjs +699 -208
  40. package/esm2022/lib/components/questionnaire/form-builder/form-builder.page.mjs +22 -28
  41. package/esm2022/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.mjs +41 -128
  42. package/esm2022/lib/components/questionnaire/question-control.service.mjs +1 -2
  43. package/esm2022/lib/components/questionnaire/question.service.mjs +7 -5
  44. package/esm2022/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.mjs +29 -15
  45. package/esm2022/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.mjs +237 -497
  46. package/esm2022/lib/components/search-employer/search-employer.component.mjs +30 -155
  47. package/esm2022/lib/components/security-question/security-question.component.mjs +199 -0
  48. package/esm2022/lib/components/select/select.component.mjs +10 -5
  49. package/esm2022/lib/components/sign-ssn/sign-ssn.component.mjs +3 -3
  50. package/esm2022/lib/components/ssn-reverify/ssn-reverify.component.mjs +72 -52
  51. package/esm2022/lib/components/user-login/user-login.component.mjs +360 -139
  52. package/esm2022/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +387 -655
  53. package/esm2022/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.mjs +61 -125
  54. package/esm2022/lib/guards/auth.guard.mjs +2 -50
  55. package/esm2022/lib/guards/no-login/no-login.guard.mjs +1 -1
  56. package/esm2022/lib/interceptors/error-interceptor/http-error-interceptor.mjs +3 -51
  57. package/esm2022/lib/interceptors/header-interceptor/http-header.interceptor.mjs +1 -1
  58. package/esm2022/lib/models/EmployerDetailSearchResult.mjs +1 -1
  59. package/esm2022/lib/models/LexisNexisAccountCreationModel.mjs +2 -0
  60. package/esm2022/lib/models/LexisNexisAuthSelectionRequestModel.mjs +2 -0
  61. package/esm2022/lib/models/LexisNexisAuthSelectionResponseModel.mjs +2 -0
  62. package/esm2022/lib/models/LexisNexisEnabledResponseModel.mjs +2 -0
  63. package/esm2022/lib/models/LexisNexisResponseModel.mjs +3 -0
  64. package/esm2022/lib/models/LibConstants.mjs +6 -45
  65. package/esm2022/lib/models/OtpAuthModel.mjs +1 -1
  66. package/esm2022/lib/models/PartialEmploymentModel.mjs +3 -0
  67. package/esm2022/lib/models/PaymentComponentModel.mjs +1 -1
  68. package/esm2022/lib/models/SecurityQuestionModel.mjs +3 -0
  69. package/esm2022/lib/models/UserModel.mjs +1 -1
  70. package/esm2022/lib/models/dashboard-model.mjs +1 -1
  71. package/esm2022/lib/models/dependent.model.mjs +1 -1
  72. package/esm2022/lib/models/questionnaire/ClaimAppEmpResponseModel.mjs +1 -1
  73. package/esm2022/lib/models/questionnaire/ClaimAppEmployerDetailsModel.mjs +1 -2
  74. package/esm2022/lib/models/questionnaire/ClaimOnlyEmployerDataModel.mjs +1 -1
  75. package/esm2022/lib/models/questionnaire/ComboModel.mjs +653 -96
  76. package/esm2022/lib/models/questionnaire/ElementsModel.mjs +1 -1
  77. package/esm2022/lib/models/questionnaire/LegalDiscaimarModel.mjs +1 -1
  78. package/esm2022/lib/models/questionnaire/QuestionnaireSaveModel.mjs +1 -1
  79. package/esm2022/lib/models/questionnaire/StatusModel.mjs +1 -1
  80. package/esm2022/lib/ngx-reusa-app-lib.module.mjs +23 -135
  81. package/esm2022/lib/pages/BasePage.mjs +23 -4
  82. package/esm2022/lib/pages/common/accessibility-policy/accessibility-policy.page.mjs +18 -22
  83. package/esm2022/lib/pages/common/change-password/change-password.page.mjs +124 -142
  84. package/esm2022/lib/pages/common/landing/landing.component.mjs +8 -7
  85. package/esm2022/lib/pages/common/landing2/landing2.component.mjs +4 -4
  86. package/esm2022/lib/pages/common/login/login.component.mjs +13 -7
  87. package/esm2022/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.mjs +14 -14
  88. package/esm2022/lib/pages/common/security-policy/security-policy.page.mjs +5 -5
  89. package/esm2022/lib/pages/popovers/language/language.page.mjs +2 -1
  90. package/esm2022/lib/pages/popovers/my-notifications/my-notifications.page.mjs +4 -4
  91. package/esm2022/lib/pages/popovers/my-profile/my-profile.page.mjs +2 -7
  92. package/esm2022/lib/pipes/translate/dynamic-translate.pipe.mjs +2 -2
  93. package/esm2022/lib/services/base-service.mjs +1 -4
  94. package/esm2022/lib/services/chatbot/chatbot.service.mjs +2 -1
  95. package/esm2022/lib/services/claimant-service/claimant-usps-redirect.service.mjs +36 -0
  96. package/esm2022/lib/services/claimant-service/claimant.service.mjs +13 -7
  97. package/esm2022/lib/services/claims/claims.service.mjs +14 -105
  98. package/esm2022/lib/services/help/help.service.mjs +1 -1
  99. package/esm2022/lib/services/lexis-nexis/lexis.nexis.service.mjs +60 -0
  100. package/esm2022/lib/services/logger/logger.service.mjs +1 -1
  101. package/esm2022/lib/services/login/login.service.mjs +14 -29
  102. package/esm2022/lib/services/ovp/ovp.service.mjs +43 -0
  103. package/esm2022/lib/services/questionnaire/questionnaire.service.mjs +1 -4
  104. package/esm2022/lib/services/questionnaire/validation.service.mjs +1 -4
  105. package/esm2022/lib/services/security-service/security.service.mjs +6 -23
  106. package/esm2022/lib/services/util/util.service.mjs +5 -61
  107. package/esm2022/lib/services/weekly-cert/weekly-cert-v2.service.mjs +14 -186
  108. package/esm2022/lib/validations/AppRegex.mjs +3 -1
  109. package/esm2022/lib/validations/AppValidators.mjs +62 -78
  110. package/esm2022/public-api.mjs +5 -47
  111. package/fesm2022/reusa-ngx-reusa-app-lib.mjs +26939 -44815
  112. package/fesm2022/reusa-ngx-reusa-app-lib.mjs.map +1 -1
  113. package/lib/components/add-employer/add-employer.component.d.ts +53 -137
  114. package/lib/components/add-employer/add-employer.component.d.ts.map +1 -1
  115. package/lib/components/add-participant/add-participant.component.d.ts +5 -11
  116. package/lib/components/add-participant/add-participant.component.d.ts.map +1 -1
  117. package/lib/components/add-payment/add-payment.component.d.ts +3 -9
  118. package/lib/components/add-payment/add-payment.component.d.ts.map +1 -1
  119. package/lib/components/address/address.component.d.ts +15 -42
  120. package/lib/components/address/address.component.d.ts.map +1 -1
  121. package/lib/components/bank-details/bank-details.component.d.ts +23 -1
  122. package/lib/components/bank-details/bank-details.component.d.ts.map +1 -1
  123. package/lib/components/contact-us/contact-us.component.d.ts +4 -1
  124. package/lib/components/contact-us/contact-us.component.d.ts.map +1 -1
  125. package/lib/components/correspondence-download/correspondence-download.component.d.ts.map +1 -1
  126. package/lib/components/dashboard-card/dashboard-card.component.d.ts.map +1 -1
  127. package/lib/components/email-update/email-update.component.d.ts +12 -1
  128. package/lib/components/email-update/email-update.component.d.ts.map +1 -1
  129. package/lib/components/employer-grid/employer-grid.component.d.ts +15 -25
  130. package/lib/components/employer-grid/employer-grid.component.d.ts.map +1 -1
  131. package/lib/components/error/error.component.d.ts +2 -3
  132. package/lib/components/error/error.component.d.ts.map +1 -1
  133. package/lib/components/file-uploader/file-uploader.component.d.ts +1 -5
  134. package/lib/components/file-uploader/file-uploader.component.d.ts.map +1 -1
  135. package/lib/components/footer/footer.component.d.ts.map +1 -1
  136. package/lib/components/header/header.component.d.ts +5 -17
  137. package/lib/components/header/header.component.d.ts.map +1 -1
  138. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts +3 -1
  139. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts.map +1 -1
  140. package/lib/components/job-title/job-title.component.d.ts +23 -22
  141. package/lib/components/job-title/job-title.component.d.ts.map +1 -1
  142. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts +6 -5
  143. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts.map +1 -1
  144. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts +59 -0
  145. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts.map +1 -0
  146. package/lib/components/menu/menu.component.d.ts +12 -3
  147. package/lib/components/menu/menu.component.d.ts.map +1 -1
  148. package/lib/components/mfa/mfa.component.d.ts +19 -7
  149. package/lib/components/mfa/mfa.component.d.ts.map +1 -1
  150. package/lib/components/mfa-popup/mfa-popup.component.d.ts +8 -6
  151. package/lib/components/mfa-popup/mfa-popup.component.d.ts.map +1 -1
  152. package/lib/components/mfa2/mfa2.component.d.ts +48 -0
  153. package/lib/components/mfa2/mfa2.component.d.ts.map +1 -0
  154. package/lib/components/money-expect/money-expect.component.d.ts +4 -15
  155. package/lib/components/money-expect/money-expect.component.d.ts.map +1 -1
  156. package/lib/components/profile/profile.component.d.ts +49 -82
  157. package/lib/components/profile/profile.component.d.ts.map +1 -1
  158. package/lib/components/profile-redirect/profile-redirect.component.d.ts +2 -9
  159. package/lib/components/profile-redirect/profile-redirect.component.d.ts.map +1 -1
  160. package/lib/components/questionnaire/AppValidators.d.ts +0 -1
  161. package/lib/components/questionnaire/AppValidators.d.ts.map +1 -1
  162. package/lib/components/questionnaire/account-success/account-success.page.d.ts +10 -13
  163. package/lib/components/questionnaire/account-success/account-success.page.d.ts.map +1 -1
  164. package/lib/components/questionnaire/common-success/common-success.page.d.ts +1 -7
  165. package/lib/components/questionnaire/common-success/common-success.page.d.ts.map +1 -1
  166. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts +1 -3
  167. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts.map +1 -1
  168. package/lib/components/questionnaire/dynamic-form-question.component.d.ts +35 -33
  169. package/lib/components/questionnaire/dynamic-form-question.component.d.ts.map +1 -1
  170. package/lib/components/questionnaire/dynamic-form.component.d.ts +34 -10
  171. package/lib/components/questionnaire/dynamic-form.component.d.ts.map +1 -1
  172. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts +7 -0
  173. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts.map +1 -1
  174. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts +1 -7
  175. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts.map +1 -1
  176. package/lib/components/questionnaire/question-control.service.d.ts.map +1 -1
  177. package/lib/components/questionnaire/question.service.d.ts +1 -0
  178. package/lib/components/questionnaire/question.service.d.ts.map +1 -1
  179. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts +7 -1
  180. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts.map +1 -1
  181. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts +3 -11
  182. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts.map +1 -1
  183. package/lib/components/search-employer/search-employer.component.d.ts +4 -5
  184. package/lib/components/search-employer/search-employer.component.d.ts.map +1 -1
  185. package/lib/components/security-question/security-question.component.d.ts +37 -0
  186. package/lib/components/security-question/security-question.component.d.ts.map +1 -0
  187. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts +5 -1
  188. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts.map +1 -1
  189. package/lib/components/user-login/user-login.component.d.ts +38 -5
  190. package/lib/components/user-login/user-login.component.d.ts.map +1 -1
  191. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts +10 -27
  192. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts.map +1 -1
  193. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts +3 -9
  194. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts.map +1 -1
  195. package/lib/guards/auth.guard.d.ts.map +1 -1
  196. package/lib/interceptors/error-interceptor/http-error-interceptor.d.ts.map +1 -1
  197. package/lib/models/EmployerDetailSearchResult.d.ts +1 -4
  198. package/lib/models/EmployerDetailSearchResult.d.ts.map +1 -1
  199. package/lib/models/LexisNexisAccountCreationModel.d.ts +15 -0
  200. package/lib/models/LexisNexisAccountCreationModel.d.ts.map +1 -0
  201. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts +16 -0
  202. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts.map +1 -0
  203. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts +39 -0
  204. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts.map +1 -0
  205. package/lib/models/LexisNexisEnabledResponseModel.d.ts +5 -0
  206. package/lib/models/LexisNexisEnabledResponseModel.d.ts.map +1 -0
  207. package/lib/models/LexisNexisResponseModel.d.ts +7 -0
  208. package/lib/models/LexisNexisResponseModel.d.ts.map +1 -0
  209. package/lib/models/LibConstants.d.ts +1 -40
  210. package/lib/models/LibConstants.d.ts.map +1 -1
  211. package/lib/models/OtpAuthModel.d.ts +1 -0
  212. package/lib/models/OtpAuthModel.d.ts.map +1 -1
  213. package/lib/models/PartialEmploymentModel.d.ts +6 -0
  214. package/lib/models/PartialEmploymentModel.d.ts.map +1 -0
  215. package/lib/models/PaymentComponentModel.d.ts +1 -1
  216. package/lib/models/PaymentComponentModel.d.ts.map +1 -1
  217. package/lib/models/SecurityQuestionModel.d.ts +7 -0
  218. package/lib/models/SecurityQuestionModel.d.ts.map +1 -0
  219. package/lib/models/UserModel.d.ts +1 -0
  220. package/lib/models/UserModel.d.ts.map +1 -1
  221. package/lib/models/dashboard-model.d.ts +0 -22
  222. package/lib/models/dashboard-model.d.ts.map +1 -1
  223. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts +0 -3
  224. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts.map +1 -1
  225. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts +4 -15
  226. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts.map +1 -1
  227. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts +1 -4
  228. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts.map +1 -1
  229. package/lib/models/questionnaire/ComboModel.d.ts +82 -14
  230. package/lib/models/questionnaire/ComboModel.d.ts.map +1 -1
  231. package/lib/models/questionnaire/ElementsModel.d.ts +1 -0
  232. package/lib/models/questionnaire/ElementsModel.d.ts.map +1 -1
  233. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts +0 -2
  234. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts.map +1 -1
  235. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts +1 -0
  236. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts.map +1 -1
  237. package/lib/models/questionnaire/StatusModel.d.ts +0 -1
  238. package/lib/models/questionnaire/StatusModel.d.ts.map +1 -1
  239. package/lib/ngx-reusa-app-lib.module.d.ts +86 -124
  240. package/lib/ngx-reusa-app-lib.module.d.ts.map +1 -1
  241. package/lib/pages/BasePage.d.ts +6 -3
  242. package/lib/pages/BasePage.d.ts.map +1 -1
  243. package/lib/pages/common/change-password/change-password.page.d.ts +0 -3
  244. package/lib/pages/common/change-password/change-password.page.d.ts.map +1 -1
  245. package/lib/pages/common/login/login.component.d.ts.map +1 -1
  246. package/lib/pages/popovers/language/language.page.d.ts.map +1 -1
  247. package/lib/pages/popovers/my-profile/my-profile.page.d.ts.map +1 -1
  248. package/lib/services/base-service.d.ts +0 -12
  249. package/lib/services/base-service.d.ts.map +1 -1
  250. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts +16 -0
  251. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts.map +1 -0
  252. package/lib/services/claimant-service/claimant.service.d.ts +6 -5
  253. package/lib/services/claimant-service/claimant.service.d.ts.map +1 -1
  254. package/lib/services/claims/claims.service.d.ts +5 -39
  255. package/lib/services/claims/claims.service.d.ts.map +1 -1
  256. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts +26 -0
  257. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts.map +1 -0
  258. package/lib/services/login/login.service.d.ts +3 -5
  259. package/lib/services/login/login.service.d.ts.map +1 -1
  260. package/lib/services/ovp/ovp.service.d.ts +17 -0
  261. package/lib/services/ovp/ovp.service.d.ts.map +1 -0
  262. package/lib/services/questionnaire/questionnaire.service.d.ts +0 -1
  263. package/lib/services/questionnaire/questionnaire.service.d.ts.map +1 -1
  264. package/lib/services/questionnaire/validation.service.d.ts +0 -3
  265. package/lib/services/questionnaire/validation.service.d.ts.map +1 -1
  266. package/lib/services/security-service/security.service.d.ts +4 -12
  267. package/lib/services/security-service/security.service.d.ts.map +1 -1
  268. package/lib/services/util/util.service.d.ts +0 -6
  269. package/lib/services/util/util.service.d.ts.map +1 -1
  270. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts +5 -47
  271. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts.map +1 -1
  272. package/lib/validations/AppRegex.d.ts +2 -0
  273. package/lib/validations/AppRegex.d.ts.map +1 -1
  274. package/lib/validations/AppValidators.d.ts +24 -20
  275. package/lib/validations/AppValidators.d.ts.map +1 -1
  276. package/package.json +2 -2
  277. package/public-api.d.ts +4 -46
  278. package/public-api.d.ts.map +1 -1
  279. package/esm2022/lib/components/add-wage/add-wage.component.mjs +0 -161
  280. package/esm2022/lib/components/address-popup/address-popup.component.mjs +0 -97
  281. package/esm2022/lib/components/address-suggestion/address-suggestion.component.mjs +0 -289
  282. package/esm2022/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.mjs +0 -245
  283. package/esm2022/lib/components/associate-ssn/associate-ssn.component.mjs +0 -203
  284. package/esm2022/lib/components/claim-info/claim-info.component.mjs +0 -408
  285. package/esm2022/lib/components/dua-request-page/dua-request-page.component.mjs +0 -596
  286. package/esm2022/lib/components/dua-request-popup/dua-request-popup.component.mjs +0 -356
  287. package/esm2022/lib/components/employer-info/employer-info.component.mjs +0 -319
  288. package/esm2022/lib/components/employer-pay/employer-pay.component.mjs +0 -238
  289. package/esm2022/lib/components/employer-pay-grid/employer-pay-grid.component.mjs +0 -302
  290. package/esm2022/lib/components/farm-usage/farm-usage.component.mjs +0 -172
  291. package/esm2022/lib/components/gross-earnings/gross-earnings.component.mjs +0 -201
  292. package/esm2022/lib/components/history-page/history-page.component.mjs +0 -571
  293. package/esm2022/lib/components/idme/idme.component.mjs +0 -84
  294. package/esm2022/lib/components/offline-add-employer/offline-add-employer.component.mjs +0 -3661
  295. package/esm2022/lib/components/offline-bank-details/offline-bank-details.component.mjs +0 -258
  296. package/esm2022/lib/components/offline-employer-grid/offline-employer-grid.component.mjs +0 -853
  297. package/esm2022/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.mjs +0 -251
  298. package/esm2022/lib/components/proof-of-anything/proof-of-anything.component.mjs +0 -261
  299. package/esm2022/lib/components/proof-of-document-upload/proof-of-document-upload.component.mjs +0 -560
  300. package/esm2022/lib/components/scrollable-text/scrollable-text.component.mjs +0 -25
  301. package/esm2022/lib/components/sms/sms.component.mjs +0 -336
  302. package/esm2022/lib/components/wage-calculator/wage-calculator.component.mjs +0 -527
  303. package/esm2022/lib/components/wage-grid/wage-grid.component.mjs +0 -274
  304. package/esm2022/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.mjs +0 -147
  305. package/esm2022/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.mjs +0 -167
  306. package/esm2022/lib/components/weekly-certification/weekly-certification.component.mjs +0 -828
  307. package/esm2022/lib/components/weekly-confirmation/confirmation.component.mjs +0 -129
  308. package/esm2022/lib/components/weekly-interim-confirmation/interim-confirmation.component.mjs +0 -136
  309. package/esm2022/lib/components/weekly-summary-v2/summary.component-v2.mjs +0 -72
  310. package/esm2022/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.mjs +0 -50
  311. package/esm2022/lib/components/weekly-work-search-counter/work-search-counter.component.mjs +0 -92
  312. package/esm2022/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.mjs +0 -1190
  313. package/esm2022/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.mjs +0 -690
  314. package/esm2022/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.mjs +0 -524
  315. package/esm2022/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.mjs +0 -394
  316. package/esm2022/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.mjs +0 -640
  317. package/esm2022/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.mjs +0 -33
  318. package/esm2022/lib/enums/AddressValidationResponseEnum.mjs +0 -9
  319. package/esm2022/lib/enums/AddressValidationSourceFunctionEnum.mjs +0 -5
  320. package/esm2022/lib/models/ActiveClaimModel.mjs +0 -3
  321. package/esm2022/lib/models/CountyModel.mjs +0 -3
  322. package/esm2022/lib/models/DuaAppDataModel.mjs +0 -3
  323. package/esm2022/lib/models/DuaRequestModel.mjs +0 -3
  324. package/esm2022/lib/models/DuaRetroWeeksComponentModel.mjs +0 -6
  325. package/esm2022/lib/models/EmployerInfoComponentModel.mjs +0 -4
  326. package/esm2022/lib/models/EmployerPayInfoModel.mjs +0 -6
  327. package/esm2022/lib/models/FarmUsageComponentModel.mjs +0 -2
  328. package/esm2022/lib/models/GrossEarningsModel.mjs +0 -3
  329. package/esm2022/lib/models/HelpConstants.mjs +0 -5
  330. package/esm2022/lib/models/LexisNexisOtpDetailsResponseModel.mjs +0 -3
  331. package/esm2022/lib/models/ReasonSeparationRequestModel.mjs +0 -3
  332. package/esm2022/lib/models/RetroWeeksModel.mjs +0 -3
  333. package/esm2022/lib/models/SecurityQuestionAnswerModel.mjs +0 -3
  334. package/esm2022/lib/models/SendOtpRequestModel.mjs +0 -3
  335. package/esm2022/lib/models/VerifyOtpRequestModel.mjs +0 -3
  336. package/esm2022/lib/models/WageCalculatorModel.mjs +0 -3
  337. package/esm2022/lib/models/WageInfoModel.mjs +0 -4
  338. package/esm2022/lib/models/addressValidation/AddressRecommendationModel.mjs +0 -3
  339. package/esm2022/lib/models/addressValidation/AddressValidationRequestComponentModel.mjs +0 -3
  340. package/esm2022/lib/models/addressValidation/AddressValidationResponseComponentModel.mjs +0 -3
  341. package/esm2022/lib/models/addressValidation/AddressValidationReturnComponentModel.mjs +0 -3
  342. package/esm2022/lib/models/combo-model.mjs +0 -343
  343. package/esm2022/lib/models/fileupload/DocUploadModel.mjs +0 -7
  344. package/esm2022/lib/models/fileupload/EmployerDataModel.mjs +0 -3
  345. package/esm2022/lib/models/fileupload/FileObject.mjs +0 -3
  346. package/esm2022/lib/models/fileupload/FileObjectArray.mjs +0 -7
  347. package/esm2022/lib/models/questionnaire/AppealParticipantModel.mjs +0 -8
  348. package/esm2022/lib/models/questionnaire/ScrollableTextModel.mjs +0 -3
  349. package/esm2022/lib/models/questionnaire/WbaHelperTextModel.mjs +0 -3
  350. package/esm2022/lib/models/weekly-cert/WorkSearchWaiverModel.mjs +0 -3
  351. package/esm2022/lib/models/weekly-cert/address-detail-model.mjs +0 -2
  352. package/esm2022/lib/models/weekly-cert/admin-leave-details-model.mjs +0 -7
  353. package/esm2022/lib/models/weekly-cert/employer-info-v2-model.mjs +0 -7
  354. package/esm2022/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.mjs +0 -6
  355. package/esm2022/lib/models/weekly-cert/weekly-certification-v2-model.mjs +0 -34
  356. package/esm2022/lib/models/weekly-cert/work-search-record-v2-model.mjs +0 -15
  357. package/esm2022/lib/models/weekly-cert/work-search-v2-model.mjs +0 -11
  358. package/esm2022/lib/pipes/format-worksearch/format-worksearch.pipe.mjs +0 -101
  359. package/esm2022/lib/services/address-validation-service/address-validation.service.mjs +0 -151
  360. package/esm2022/lib/services/appeal/appeal.service.mjs +0 -37
  361. package/esm2022/lib/services/birt-service/birt.service.mjs +0 -57
  362. package/esm2022/lib/services/employer/employer-service.mjs +0 -35
  363. package/esm2022/lib/services/event-service/event-service.mjs +0 -44
  364. package/esm2022/lib/services/offline-claims/offline-claims.service.mjs +0 -327
  365. package/esm2022/lib/services/weekly-cert/review.service.mjs +0 -101
  366. package/esm2022/lib/services/weekly-cert/weekly-cert.service.mjs +0 -37
  367. package/esm2022/lib/services/weekly-cert/work-search.service.mjs +0 -58
  368. package/lib/components/add-wage/add-wage.component.d.ts +0 -30
  369. package/lib/components/add-wage/add-wage.component.d.ts.map +0 -1
  370. package/lib/components/address-popup/address-popup.component.d.ts +0 -16
  371. package/lib/components/address-popup/address-popup.component.d.ts.map +0 -1
  372. package/lib/components/address-suggestion/address-suggestion.component.d.ts +0 -43
  373. package/lib/components/address-suggestion/address-suggestion.component.d.ts.map +0 -1
  374. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts +0 -37
  375. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts.map +0 -1
  376. package/lib/components/associate-ssn/associate-ssn.component.d.ts +0 -33
  377. package/lib/components/associate-ssn/associate-ssn.component.d.ts.map +0 -1
  378. package/lib/components/claim-info/claim-info.component.d.ts +0 -49
  379. package/lib/components/claim-info/claim-info.component.d.ts.map +0 -1
  380. package/lib/components/dua-request-page/dua-request-page.component.d.ts +0 -74
  381. package/lib/components/dua-request-page/dua-request-page.component.d.ts.map +0 -1
  382. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts +0 -61
  383. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts.map +0 -1
  384. package/lib/components/employer-info/employer-info.component.d.ts +0 -50
  385. package/lib/components/employer-info/employer-info.component.d.ts.map +0 -1
  386. package/lib/components/employer-pay/employer-pay.component.d.ts +0 -51
  387. package/lib/components/employer-pay/employer-pay.component.d.ts.map +0 -1
  388. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts +0 -43
  389. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts.map +0 -1
  390. package/lib/components/farm-usage/farm-usage.component.d.ts +0 -33
  391. package/lib/components/farm-usage/farm-usage.component.d.ts.map +0 -1
  392. package/lib/components/gross-earnings/gross-earnings.component.d.ts +0 -42
  393. package/lib/components/gross-earnings/gross-earnings.component.d.ts.map +0 -1
  394. package/lib/components/history-page/history-page.component.d.ts +0 -80
  395. package/lib/components/history-page/history-page.component.d.ts.map +0 -1
  396. package/lib/components/idme/idme.component.d.ts +0 -19
  397. package/lib/components/idme/idme.component.d.ts.map +0 -1
  398. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts +0 -311
  399. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts.map +0 -1
  400. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts +0 -33
  401. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts.map +0 -1
  402. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts +0 -97
  403. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts.map +0 -1
  404. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts +0 -33
  405. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts.map +0 -1
  406. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts +0 -54
  407. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts.map +0 -1
  408. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts +0 -74
  409. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts.map +0 -1
  410. package/lib/components/scrollable-text/scrollable-text.component.d.ts +0 -11
  411. package/lib/components/scrollable-text/scrollable-text.component.d.ts.map +0 -1
  412. package/lib/components/sms/sms.component.d.ts +0 -63
  413. package/lib/components/sms/sms.component.d.ts.map +0 -1
  414. package/lib/components/wage-calculator/wage-calculator.component.d.ts +0 -44
  415. package/lib/components/wage-calculator/wage-calculator.component.d.ts.map +0 -1
  416. package/lib/components/wage-grid/wage-grid.component.d.ts +0 -43
  417. package/lib/components/wage-grid/wage-grid.component.d.ts.map +0 -1
  418. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts +0 -28
  419. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts.map +0 -1
  420. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts +0 -28
  421. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts.map +0 -1
  422. package/lib/components/weekly-certification/weekly-certification.component.d.ts +0 -101
  423. package/lib/components/weekly-certification/weekly-certification.component.d.ts.map +0 -1
  424. package/lib/components/weekly-confirmation/confirmation.component.d.ts +0 -21
  425. package/lib/components/weekly-confirmation/confirmation.component.d.ts.map +0 -1
  426. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts +0 -34
  427. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts.map +0 -1
  428. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts +0 -17
  429. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts.map +0 -1
  430. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts +0 -10
  431. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts.map +0 -1
  432. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts +0 -17
  433. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts.map +0 -1
  434. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts +0 -105
  435. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts.map +0 -1
  436. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts +0 -71
  437. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts.map +0 -1
  438. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts +0 -59
  439. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts.map +0 -1
  440. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts +0 -47
  441. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts.map +0 -1
  442. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts +0 -78
  443. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts.map +0 -1
  444. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts +0 -8
  445. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts.map +0 -1
  446. package/lib/enums/AddressValidationResponseEnum.d.ts +0 -8
  447. package/lib/enums/AddressValidationResponseEnum.d.ts.map +0 -1
  448. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts +0 -4
  449. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts.map +0 -1
  450. package/lib/models/ActiveClaimModel.d.ts +0 -8
  451. package/lib/models/ActiveClaimModel.d.ts.map +0 -1
  452. package/lib/models/CountyModel.d.ts +0 -8
  453. package/lib/models/CountyModel.d.ts.map +0 -1
  454. package/lib/models/DuaAppDataModel.d.ts +0 -5
  455. package/lib/models/DuaAppDataModel.d.ts.map +0 -1
  456. package/lib/models/DuaRequestModel.d.ts +0 -10
  457. package/lib/models/DuaRequestModel.d.ts.map +0 -1
  458. package/lib/models/DuaRetroWeeksComponentModel.d.ts +0 -5
  459. package/lib/models/DuaRetroWeeksComponentModel.d.ts.map +0 -1
  460. package/lib/models/EmployerInfoComponentModel.d.ts +0 -9
  461. package/lib/models/EmployerInfoComponentModel.d.ts.map +0 -1
  462. package/lib/models/EmployerPayInfoModel.d.ts +0 -20
  463. package/lib/models/EmployerPayInfoModel.d.ts.map +0 -1
  464. package/lib/models/FarmUsageComponentModel.d.ts +0 -10
  465. package/lib/models/FarmUsageComponentModel.d.ts.map +0 -1
  466. package/lib/models/GrossEarningsModel.d.ts +0 -6
  467. package/lib/models/GrossEarningsModel.d.ts.map +0 -1
  468. package/lib/models/HelpConstants.d.ts +0 -5
  469. package/lib/models/HelpConstants.d.ts.map +0 -1
  470. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts +0 -7
  471. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts.map +0 -1
  472. package/lib/models/ReasonSeparationRequestModel.d.ts +0 -7
  473. package/lib/models/ReasonSeparationRequestModel.d.ts.map +0 -1
  474. package/lib/models/RetroWeeksModel.d.ts +0 -11
  475. package/lib/models/RetroWeeksModel.d.ts.map +0 -1
  476. package/lib/models/SecurityQuestionAnswerModel.d.ts +0 -7
  477. package/lib/models/SecurityQuestionAnswerModel.d.ts.map +0 -1
  478. package/lib/models/SendOtpRequestModel.d.ts +0 -12
  479. package/lib/models/SendOtpRequestModel.d.ts.map +0 -1
  480. package/lib/models/VerifyOtpRequestModel.d.ts +0 -8
  481. package/lib/models/VerifyOtpRequestModel.d.ts.map +0 -1
  482. package/lib/models/WageCalculatorModel.d.ts +0 -15
  483. package/lib/models/WageCalculatorModel.d.ts.map +0 -1
  484. package/lib/models/WageInfoModel.d.ts +0 -9
  485. package/lib/models/WageInfoModel.d.ts.map +0 -1
  486. package/lib/models/addressValidation/AddressRecommendationModel.d.ts +0 -12
  487. package/lib/models/addressValidation/AddressRecommendationModel.d.ts.map +0 -1
  488. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts +0 -11
  489. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts.map +0 -1
  490. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts +0 -6
  491. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts.map +0 -1
  492. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts +0 -16
  493. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts.map +0 -1
  494. package/lib/models/combo-model.d.ts +0 -42
  495. package/lib/models/combo-model.d.ts.map +0 -1
  496. package/lib/models/fileupload/DocUploadModel.d.ts +0 -22
  497. package/lib/models/fileupload/DocUploadModel.d.ts.map +0 -1
  498. package/lib/models/fileupload/EmployerDataModel.d.ts +0 -6
  499. package/lib/models/fileupload/EmployerDataModel.d.ts.map +0 -1
  500. package/lib/models/fileupload/FileObject.d.ts +0 -8
  501. package/lib/models/fileupload/FileObject.d.ts.map +0 -1
  502. package/lib/models/fileupload/FileObjectArray.d.ts +0 -8
  503. package/lib/models/fileupload/FileObjectArray.d.ts.map +0 -1
  504. package/lib/models/questionnaire/AppealParticipantModel.d.ts +0 -17
  505. package/lib/models/questionnaire/AppealParticipantModel.d.ts.map +0 -1
  506. package/lib/models/questionnaire/ScrollableTextModel.d.ts +0 -4
  507. package/lib/models/questionnaire/ScrollableTextModel.d.ts.map +0 -1
  508. package/lib/models/questionnaire/WbaHelperTextModel.d.ts +0 -4
  509. package/lib/models/questionnaire/WbaHelperTextModel.d.ts.map +0 -1
  510. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts +0 -9
  511. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts.map +0 -1
  512. package/lib/models/weekly-cert/address-detail-model.d.ts +0 -14
  513. package/lib/models/weekly-cert/address-detail-model.d.ts.map +0 -1
  514. package/lib/models/weekly-cert/admin-leave-details-model.d.ts +0 -15
  515. package/lib/models/weekly-cert/admin-leave-details-model.d.ts.map +0 -1
  516. package/lib/models/weekly-cert/employer-info-v2-model.d.ts +0 -27
  517. package/lib/models/weekly-cert/employer-info-v2-model.d.ts.map +0 -1
  518. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts +0 -57
  519. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts.map +0 -1
  520. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts +0 -59
  521. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts.map +0 -1
  522. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts +0 -66
  523. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts.map +0 -1
  524. package/lib/models/weekly-cert/work-search-v2-model.d.ts +0 -18
  525. package/lib/models/weekly-cert/work-search-v2-model.d.ts.map +0 -1
  526. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts +0 -14
  527. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts.map +0 -1
  528. package/lib/services/address-validation-service/address-validation.service.d.ts +0 -44
  529. package/lib/services/address-validation-service/address-validation.service.d.ts.map +0 -1
  530. package/lib/services/appeal/appeal.service.d.ts +0 -16
  531. package/lib/services/appeal/appeal.service.d.ts.map +0 -1
  532. package/lib/services/birt-service/birt.service.d.ts +0 -17
  533. package/lib/services/birt-service/birt.service.d.ts.map +0 -1
  534. package/lib/services/employer/employer-service.d.ts +0 -16
  535. package/lib/services/employer/employer-service.d.ts.map +0 -1
  536. package/lib/services/event-service/event-service.d.ts +0 -20
  537. package/lib/services/event-service/event-service.d.ts.map +0 -1
  538. package/lib/services/offline-claims/offline-claims.service.d.ts +0 -64
  539. package/lib/services/offline-claims/offline-claims.service.d.ts.map +0 -1
  540. package/lib/services/weekly-cert/review.service.d.ts +0 -23
  541. package/lib/services/weekly-cert/review.service.d.ts.map +0 -1
  542. package/lib/services/weekly-cert/weekly-cert.service.d.ts +0 -17
  543. package/lib/services/weekly-cert/weekly-cert.service.d.ts.map +0 -1
  544. package/lib/services/weekly-cert/work-search.service.d.ts +0 -26
  545. package/lib/services/weekly-cert/work-search.service.d.ts.map +0 -1
@@ -1,258 +0,0 @@
1
- import { Component, forwardRef, ViewChild } from '@angular/core';
2
- import { NG_VALIDATORS, NG_VALUE_ACCESSOR, Validators } from '@angular/forms';
3
- import { AppRegex } from '../../validations/AppRegex';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/forms";
6
- import * as i2 from "../../services/util/util.service";
7
- import * as i3 from "@ionic/angular";
8
- import * as i4 from "primeng/password";
9
- import * as i5 from "primeng/inputtext";
10
- import * as i6 from "primeng/selectbutton";
11
- import * as i7 from "../error/error.component";
12
- import * as i8 from "../overlay-info/overlay-info.component";
13
- import * as i9 from "@ngx-translate/core";
14
- const _c0 = ["bankDetailsFormDirective"];
15
- const _c1 = () => ({ required: "required.", pattern: "please enter only letters" });
16
- const _c2 = () => ({ required: "required." });
17
- const _c3 = () => ({ required: "required.", hasRouting: "Must be at least 9 digits.", isRoutingNumberNotValid: "Invalid routing number." });
18
- const _c4 = () => ({ required: "required.", pattern: "enter only numbers.", hasNumber: "valid number", maxlength: "cannot exceed 17 characters" });
19
- const _c5 = "Account Number and Re-enter Account Number should match";
20
- const _c6 = () => ({ required: "required.", pattern: "enter only numbers.", accountNumbeComparision: _c5, maxlength: "cannot exceed 17 characters" });
21
- export class OfflineBankDetailsComponent {
22
- constructor(formBuilder, util) {
23
- this.formBuilder = formBuilder;
24
- this.util = util;
25
- this.routingNumberValidators = [
26
- Validators.minLength(9),
27
- Validators.maxLength(9),
28
- Validators.required
29
- ];
30
- this.onTouched = () => { };
31
- this.onChangeSubs = [];
32
- this.accountTypeOptions = [
33
- { text: 'checking', value: 'CHEC' },
34
- { text: 'savings', value: 'SAVE' },
35
- ];
36
- }
37
- ngOnInit() {
38
- this.bankDetailsForm = this.formBuilder.group({
39
- 'nameOnAccount': [null, Validators.compose([Validators.required, Validators.pattern(AppRegex.NAME_REGEX)])],
40
- 'accountType': [null, Validators.required],
41
- 'routingNumber': [null, Validators.compose([Validators.required, Validators.pattern(/^[0-9]{9}$/)])],
42
- // 'bankName': [null],
43
- 'accountNumber': [null, Validators.compose([Validators.required, Validators.pattern(AppRegex.ACCOUNT_NUMBER_REGEX), Validators.maxLength(17)])],
44
- 'reEnterAccountNumber': [null, Validators.compose([Validators.required, Validators.pattern(AppRegex.ACCOUNT_NUMBER_REGEX), Validators.maxLength(17)])]
45
- });
46
- this.setAccountNumberValidator();
47
- }
48
- submit() {
49
- if (this.bankDetailsFormDirective) {
50
- this.bankDetailsFormDirective.onSubmit(undefined);
51
- }
52
- }
53
- setAccountNumberValidator() {
54
- const ROUTING_NUMBER_9_DIGIT = /^[0-9]{9}$/;
55
- // Overwrite routingNumber validators with only a 9-digit check
56
- this.util.setValidation(this.routingNumber, [
57
- Validators.required,
58
- Validators.pattern(ROUTING_NUMBER_9_DIGIT)
59
- ]);
60
- // Remove the custom AppValidator (this is what's causing issues)
61
- // this.util.setValidation(this.routingNumber, AppValidators.isValidRoutingNumber); ←❌ remove this
62
- this.reEnterAccountNumber.valueChanges.subscribe(() => {
63
- if (this.accountNumber?.value !== this.reEnterAccountNumber.value) {
64
- this.reEnterAccountNumber.setErrors({ accountNumbeComparision: true });
65
- }
66
- });
67
- }
68
- // setAccountNumberValidator() {
69
- // let validators1: ValidatorFn[] = [];
70
- // let isRoutingNumberNotValid: boolean;
71
- // this.routingNumberValidators.forEach(v => validators1.push(v));
72
- // const ROUTING_NUMBER:RegExp = /^[0-4]{1}[0-9]{8}$/;
73
- // this.util.setValidation(this.routingNumber, validators1);
74
- // this.util.setValidation(this.routingNumber, AppValidators.isValidRoutingNumber);
75
- // this.reEnterAccountNumber.valueChanges.subscribe(val => {
76
- // if (this.accountNumber && (this.accountNumber.value != this.reEnterAccountNumber.value)) {
77
- // this.bankDetailsForm.controls['reEnterAccountNumber'].setErrors({ accountNumbeComparision: true });
78
- // return { accountNumbeComparision: true };
79
- // }
80
- // });
81
- // this.routingNumber.valueChanges.subscribe(val => {
82
- // const valid1 = ROUTING_NUMBER.test(this.routingNumber.value);
83
- // if (!valid1) {
84
- // this.bankDetailsForm.controls['routingNumber'].setErrors({ hasRouting: true });
85
- // return { hasRouting: true };
86
- // }
87
- // });
88
- // }
89
- get nameOnAccount() {
90
- return this.bankDetailsForm.controls['nameOnAccount'];
91
- }
92
- get accountType() {
93
- return this.bankDetailsForm.controls['accountType'];
94
- }
95
- get routingNumber() {
96
- return this.bankDetailsForm.controls['routingNumber'];
97
- }
98
- get accountNumber() {
99
- return this.bankDetailsForm.controls['accountNumber'];
100
- }
101
- // get bankNameControl() {
102
- // return this.bankDetailsForm.controls['bankName'];
103
- // }
104
- get reEnterAccountNumber() {
105
- return this.bankDetailsForm.controls['reEnterAccountNumber'];
106
- }
107
- ngOnDestroy() {
108
- for (let sub of this.onChangeSubs) {
109
- sub.unsubscribe();
110
- }
111
- }
112
- registerOnChange(onChange) {
113
- const sub = this.bankDetailsForm.valueChanges.subscribe(onChange);
114
- this.onChangeSubs.push(sub);
115
- }
116
- registerOnTouched(onTouched) {
117
- this.onTouched = onTouched;
118
- }
119
- setDisabledState(disabled) {
120
- if (disabled) {
121
- this.bankDetailsForm.disable();
122
- }
123
- else {
124
- this.bankDetailsForm.enable();
125
- }
126
- }
127
- writeValue(value) {
128
- if (value) {
129
- this.bankDetailsForm.setValue(value, { emitEvent: false });
130
- }
131
- }
132
- validate(control) {
133
- if (this.bankDetailsForm.valid) {
134
- return null;
135
- }
136
- }
137
- static { this.ɵfac = function OfflineBankDetailsComponent_Factory(t) { return new (t || OfflineBankDetailsComponent)(i0.ɵɵdirectiveInject(i1.UntypedFormBuilder), i0.ɵɵdirectiveInject(i2.UtilService)); }; }
138
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: OfflineBankDetailsComponent, selectors: [["app-offline-bank-details"]], viewQuery: function OfflineBankDetailsComponent_Query(rf, ctx) { if (rf & 1) {
139
- i0.ɵɵviewQuery(_c0, 5);
140
- } if (rf & 2) {
141
- let _t;
142
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.bankDetailsFormDirective = _t.first);
143
- } }, features: [i0.ɵɵProvidersFeature([{
144
- provide: NG_VALUE_ACCESSOR,
145
- useExisting: forwardRef(() => OfflineBankDetailsComponent),
146
- multi: true
147
- },
148
- {
149
- provide: NG_VALIDATORS,
150
- multi: true,
151
- useExisting: forwardRef(() => OfflineBankDetailsComponent),
152
- }])], decls: 63, vars: 59, consts: [[2, "margin-bottom", "0px", "margin-left", "0px", "margin-top", "6px", 3, "formGroup"], ["bankDetailsFormDirective", "ngForm"], [2, "padding", "0px"], [1, "p-formgrid"], [1, "field"], ["for", ""], ["id", "nameOnAccount", "type", "text", "pInputText", "", "maxlength", "30", 3, "formControl"], [3, "field", "form", "errDef"], [2, "display", "inline-flex"], ["optionLabel", "text", "optionValue", "value", 3, "options", "formControl", "multiple"], [2, "padding-left", "8px"], [1, "heading"], [1, "overlay-subheading", "ion-padding-top"], [1, "overlay-desc", "ion-padding-top"], ["alt", "check image", "src", "assets/icon/check1.png", 1, "ion-padding-top"], [1, "col"], ["for", "routingNumber"], ["id", "routingNumber", "type", "input", "pInputText", "", "maxlength", "9", 3, "formControl"], ["for", "accountNumber"], ["id", "accountNumber", 3, "formControl", "maxlength", "feedback", "toggleMask"], ["for", "reEnterAccountNumber"], ["id", "reEnterAccountNumber", 3, "formControl", "maxlength", "feedback", "toggleMask"]], template: function OfflineBankDetailsComponent_Template(rf, ctx) { if (rf & 1) {
153
- i0.ɵɵelementStart(0, "form", 0, 1)(2, "ion-grid", 2)(3, "div", 3)(4, "div", 4)(5, "label", 5);
154
- i0.ɵɵtext(6);
155
- i0.ɵɵpipe(7, "translate");
156
- i0.ɵɵelementEnd();
157
- i0.ɵɵelement(8, "br")(9, "input", 6)(10, "br")(11, "app-error", 7);
158
- i0.ɵɵelementEnd();
159
- i0.ɵɵelementStart(12, "div", 4)(13, "label", 5);
160
- i0.ɵɵtext(14);
161
- i0.ɵɵpipe(15, "translate");
162
- i0.ɵɵelementEnd();
163
- i0.ɵɵelement(16, "br");
164
- i0.ɵɵelementStart(17, "div", 8)(18, "div");
165
- i0.ɵɵelement(19, "p-selectButton", 9)(20, "app-error", 7);
166
- i0.ɵɵelementEnd();
167
- i0.ɵɵelementStart(21, "div", 10)(22, "app-overlay-info")(23, "div", 11);
168
- i0.ɵɵtext(24, "Banking numbers");
169
- i0.ɵɵelementEnd();
170
- i0.ɵɵelementStart(25, "div", 12);
171
- i0.ɵɵtext(26, "Checking Account");
172
- i0.ɵɵelementEnd();
173
- i0.ɵɵelementStart(27, "div", 13);
174
- i0.ɵɵtext(28, " Find your bank's routing number and your account number on the bottom of your personal checks. ");
175
- i0.ɵɵelementEnd();
176
- i0.ɵɵelement(29, "img", 14);
177
- i0.ɵɵelementStart(30, "div", 12);
178
- i0.ɵɵtext(31, "Savings Account");
179
- i0.ɵɵelementEnd();
180
- i0.ɵɵelementStart(32, "div", 13);
181
- i0.ɵɵtext(33, " If you prefer direct deposit into a saving account and don't have a checking account with the same bank, call your bank to get the routing number. If you have a checking account at the same bank, the routing number is the same, but the account number is different. ");
182
- i0.ɵɵelementEnd()()()()();
183
- i0.ɵɵelementStart(34, "ion-row")(35, "ion-col", 15)(36, "div", 4)(37, "label", 16);
184
- i0.ɵɵtext(38);
185
- i0.ɵɵpipe(39, "translate");
186
- i0.ɵɵelementEnd();
187
- i0.ɵɵelement(40, "br")(41, "input", 17)(42, "br")(43, "app-error", 7);
188
- i0.ɵɵelementEnd()()();
189
- i0.ɵɵelementStart(44, "ion-row")(45, "ion-col", 15)(46, "div", 4)(47, "label", 18);
190
- i0.ɵɵtext(48);
191
- i0.ɵɵpipe(49, "translate");
192
- i0.ɵɵelementEnd();
193
- i0.ɵɵelement(50, "br")(51, "p-password", 19)(52, "br")(53, "app-error", 7);
194
- i0.ɵɵelementEnd()();
195
- i0.ɵɵelementStart(54, "ion-col", 15)(55, "div", 4)(56, "label", 20);
196
- i0.ɵɵtext(57);
197
- i0.ɵɵpipe(58, "translate");
198
- i0.ɵɵelementEnd();
199
- i0.ɵɵelement(59, "br")(60, "p-password", 21)(61, "br")(62, "app-error", 7);
200
- i0.ɵɵelementEnd()()()()()();
201
- } if (rf & 2) {
202
- const _r0 = i0.ɵɵreference(1);
203
- i0.ɵɵproperty("formGroup", ctx.bankDetailsForm);
204
- i0.ɵɵadvance(6);
205
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(7, 44, "Name on Account"));
206
- i0.ɵɵadvance(3);
207
- i0.ɵɵproperty("formControl", ctx.nameOnAccount);
208
- i0.ɵɵadvance(2);
209
- i0.ɵɵclassMap("app-grid");
210
- i0.ɵɵproperty("field", ctx.nameOnAccount)("form", _r0)("errDef", i0.ɵɵpureFunction0(54, _c1));
211
- i0.ɵɵadvance(3);
212
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(15, 46, "Account Type"));
213
- i0.ɵɵadvance(5);
214
- i0.ɵɵproperty("options", ctx.accountTypeOptions)("formControl", ctx.accountType)("multiple", false);
215
- i0.ɵɵadvance(1);
216
- i0.ɵɵclassMap("app-grid");
217
- i0.ɵɵproperty("field", ctx.accountType)("form", _r0)("errDef", i0.ɵɵpureFunction0(55, _c2));
218
- i0.ɵɵadvance(18);
219
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(39, 48, "Routing Number"));
220
- i0.ɵɵadvance(3);
221
- i0.ɵɵproperty("formControl", ctx.routingNumber);
222
- i0.ɵɵadvance(2);
223
- i0.ɵɵclassMap("app-grid");
224
- i0.ɵɵproperty("field", ctx.routingNumber)("form", _r0)("errDef", i0.ɵɵpureFunction0(56, _c3));
225
- i0.ɵɵadvance(5);
226
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(49, 50, "Account Number"));
227
- i0.ɵɵadvance(3);
228
- i0.ɵɵproperty("formControl", ctx.accountNumber)("maxlength", 17)("feedback", false)("toggleMask", true);
229
- i0.ɵɵadvance(2);
230
- i0.ɵɵclassMap("app-grid");
231
- i0.ɵɵproperty("field", ctx.accountNumber)("form", _r0)("errDef", i0.ɵɵpureFunction0(57, _c4));
232
- i0.ɵɵadvance(4);
233
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(58, 52, "Re-enter Account"));
234
- i0.ɵɵadvance(3);
235
- i0.ɵɵproperty("formControl", ctx.reEnterAccountNumber)("maxlength", 17)("feedback", false)("toggleMask", true);
236
- i0.ɵɵadvance(2);
237
- i0.ɵɵclassMap("app-grid");
238
- i0.ɵɵproperty("field", ctx.reEnterAccountNumber)("form", _r0)("errDef", i0.ɵɵpureFunction0(58, _c6));
239
- } }, dependencies: [i3.IonCol, i3.IonGrid, i3.IonRow, i1.ɵNgNoValidate, i1.DefaultValueAccessor, i1.NgControlStatus, i1.NgControlStatusGroup, i1.MaxLengthValidator, i1.FormControlDirective, i1.FormGroupDirective, i4.Password, i5.InputText, i6.SelectButton, i7.ErrorComponent, i8.OverlayInfoComponent, i9.TranslatePipe], styles: [".col[_ngcontent-%COMP%]{padding-left:0;padding-top:0;padding-bottom:0;max-width:-moz-fit-content;max-width:fit-content}.form-lbl[_ngcontent-%COMP%]{padding-bottom:6px}.inline-flex[_ngcontent-%COMP%]{display:inline-flex}"] }); }
240
- }
241
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OfflineBankDetailsComponent, [{
242
- type: Component,
243
- args: [{ selector: 'app-offline-bank-details', providers: [{
244
- provide: NG_VALUE_ACCESSOR,
245
- useExisting: forwardRef(() => OfflineBankDetailsComponent),
246
- multi: true
247
- },
248
- {
249
- provide: NG_VALIDATORS,
250
- multi: true,
251
- useExisting: forwardRef(() => OfflineBankDetailsComponent),
252
- }], template: "<form [formGroup]=\"bankDetailsForm\" #bankDetailsFormDirective=\"ngForm\" style=\"margin-bottom: 0px; margin-left: 0px; margin-top: 6px;\">\r\n <ion-grid style=\"padding: 0px;\">\r\n <div class=\"p-formgrid\">\r\n <div class=\"field\">\r\n <label for=\"\">{{'Name on Account' | translate}}</label><br/>\r\n <input id=\"nameOnAccount\" type=\"text\" pInputText [formControl]=\"nameOnAccount\" maxlength=\"30\"/> \r\n <br/>\r\n <app-error [class]=\"'app-grid'\" [field]='nameOnAccount' [form]=\"bankDetailsFormDirective\"\r\n [errDef]=\"{ \r\n required: 'required.',\r\n pattern: 'please enter only letters'\r\n }\"></app-error>\r\n </div>\r\n <div class=\"field\">\r\n <label for=\"\">{{'Account Type' | translate}}</label><br/>\r\n <div style=\"display: inline-flex;\">\r\n <div>\r\n <p-selectButton [options]=\"accountTypeOptions\" [formControl]=\"accountType\" [multiple]=false\r\n optionLabel=\"text\" optionValue=\"value\"></p-selectButton>\r\n <app-error [class]=\"'app-grid'\" [field]='accountType' [form]=\"bankDetailsFormDirective\"\r\n [errDef]=\"{required: 'required.'}\"></app-error>\r\n </div>\r\n <div style=\"flex-grow: 1;\" style=\"padding-left: 8px\">\r\n <app-overlay-info>\r\n <div class=\"heading\">Banking numbers</div>\r\n <div class=\"overlay-subheading ion-padding-top\">Checking Account</div>\r\n <div class=\"overlay-desc ion-padding-top\">\r\n Find your bank's routing number and your account number on the bottom of your personal checks.\r\n </div>\r\n <img alt=\"check image\" src=\"assets/icon/check1.png\" class=\"ion-padding-top\"/>\r\n <div class=\"overlay-subheading ion-padding-top\">Savings Account</div>\r\n <div class=\"overlay-desc ion-padding-top\">\r\n If you prefer direct deposit into a saving account and don't have a checking account with the same bank, call your bank to get the routing number. If you have a checking account at the same bank, the routing number is the same, but the account number is different.\r\n </div>\r\n </app-overlay-info>\r\n </div>\r\n </div>\r\n </div>\r\n <ion-row>\r\n <ion-col class=\"col\">\r\n <div class=\"field\">\r\n <label for=\"routingNumber\">{{'Routing Number' | translate}}</label><br/>\r\n <input id=\"routingNumber\" type=\"input\" pInputText [formControl]=\"routingNumber\" maxlength=\"9\"/>\r\n <br/>\r\n <app-error [class]=\"'app-grid'\" [field]='routingNumber' [form]=\"bankDetailsFormDirective\"\r\n [errDef]=\"{ \r\n required: 'required.',\r\n hasRouting:'Must be at least 9 digits.',\r\n isRoutingNumberNotValid: 'Invalid routing number.'\r\n }\"></app-error>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row>\r\n <ion-col class=\"col\">\r\n <div class=\"field\">\r\n <label for=\"accountNumber\">{{'Account Number' | translate}}</label><br/>\r\n <p-password id=\"accountNumber\" [formControl]=\"accountNumber\" [maxlength]=\"17\"\r\n [feedback]=\"false\" [toggleMask]=\"true\"></p-password><br/>\r\n <app-error [class]=\"'app-grid'\" [field]='accountNumber' [form]=\"bankDetailsFormDirective\"\r\n [errDef]=\"{ \r\n required: 'required.',\r\n pattern: 'enter only numbers.',\r\n hasNumber: 'valid number',\r\n maxlength: 'cannot exceed 17 characters'\r\n }\"></app-error>\r\n </div>\r\n </ion-col>\r\n <ion-col class=\"col\">\r\n <div class=\"field\">\r\n <label for=\"reEnterAccountNumber\">{{'Re-enter Account' | translate}}</label><br/>\r\n <p-password id=\"reEnterAccountNumber\" [formControl]=\"reEnterAccountNumber\" [maxlength]=\"17\"\r\n [feedback]=\"false\" [toggleMask]=\"true\"></p-password><br/>\r\n <app-error [class]=\"'app-grid'\" [field]='reEnterAccountNumber' [form]=\"bankDetailsFormDirective\"\r\n [errDef]=\"{ \r\n required: 'required.',\r\n pattern: 'enter only numbers.',\r\n accountNumbeComparision:'Account Number and Re-enter Account Number should match',\r\n maxlength: 'cannot exceed 17 characters'\r\n }\"></app-error>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n </div>\r\n </ion-grid>\r\n</form>", styles: [".col{padding-left:0;padding-top:0;padding-bottom:0;max-width:-moz-fit-content;max-width:fit-content}.form-lbl{padding-bottom:6px}.inline-flex{display:inline-flex}\n"] }]
253
- }], () => [{ type: i1.UntypedFormBuilder }, { type: i2.UtilService }], { bankDetailsFormDirective: [{
254
- type: ViewChild,
255
- args: ['bankDetailsFormDirective', { static: false }]
256
- }] }); })();
257
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(OfflineBankDetailsComponent, { className: "OfflineBankDetailsComponent", filePath: "lib\\components\\offline-bank-details\\offline-bank-details.component.ts", lineNumber: 23 }); })();
258
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZmbGluZS1iYW5rLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9jb21wb25lbnRzL29mZmxpbmUtYmFuay1kZXRhaWxzL29mZmxpbmUtYmFuay1kZXRhaWxzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9vZmZsaW5lLWJhbmstZGV0YWlscy9vZmZsaW5lLWJhbmstZGV0YWlscy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBdUYsYUFBYSxFQUFFLGlCQUFpQixFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkzTCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWlCdEQsTUFBTSxPQUFPLDJCQUEyQjtJQWV0QyxZQUFtQixXQUErQixFQUFRLElBQWtCO1FBQXpELGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUFRLFNBQUksR0FBSixJQUFJLENBQWM7UUFONUUsNEJBQXVCLEdBQW1CO1lBQ3hDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLFVBQVUsQ0FBQyxRQUFRO1NBQ3BCLENBQUM7UUE2RkYsY0FBUyxHQUFhLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUVoQyxpQkFBWSxHQUFtQixFQUFFLENBQUM7UUEzRmhDLElBQUksQ0FBQyxrQkFBa0IsR0FBRztZQUN4QixFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsS0FB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LENBQUMsR0FBRyxFQUFFLDRCQUE0QixDQUFDO3dCQUMxRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtvQkFDRDt3QkFDRSxPQUFPLEVBQUUsYUFBYTt3QkFDdEIsS0FBSyxFQUFFLElBQUk7d0JBQ1gsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsNEJBQTRCLENBQUM7cUJBQzNELENBQUM7NkVBS0ssd0JBQXdCO2tCQUQ5QixTQUFTO21CQUFDLDBCQUEwQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTs7a0ZBRjdDLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBOZ0Zvcm0sIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0b3IsIFZhbGlkYXRvckZuLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3V0aWwvdXRpbC5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcFZhbGlkYXRvcnMgfSBmcm9tICcuLi8uLi92YWxpZGF0aW9ucy9BcHBWYWxpZGF0b3JzJztcbmltcG9ydCB7IEFwcFJlZ2V4IH0gZnJvbSAnLi4vLi4vdmFsaWRhdGlvbnMvQXBwUmVnZXgnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtb2ZmbGluZS1iYW5rLWRldGFpbHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vb2ZmbGluZS1iYW5rLWRldGFpbHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9vZmZsaW5lLWJhbmstZGV0YWlscy5jb21wb25lbnQuY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBPZmZsaW5lQmFua0RldGFpbHNDb21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH0sXG4gIHtcbiAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgIG11bHRpOiB0cnVlLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE9mZmxpbmVCYW5rRGV0YWlsc0NvbXBvbmVudCksXG4gIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBPZmZsaW5lQmFua0RldGFpbHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkRlc3Ryb3ksIFZhbGlkYXRvciB7XG5cbiAgQFZpZXdDaGlsZCgnYmFua0RldGFpbHNGb3JtRGlyZWN0aXZlJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHB1YmxpYyBiYW5rRGV0YWlsc0Zvcm1EaXJlY3RpdmU6IE5nRm9ybTtcblxuICBwdWJsaWMgYmFua0RldGFpbHNGb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBhY2NvdW50VHlwZU9wdGlvbnM6IGFueVtdO1xuXG4gIFxuICByb3V0aW5nTnVtYmVyVmFsaWRhdG9ycyA6IFZhbGlkYXRvckZuW10gPSBbXG4gICAgVmFsaWRhdG9ycy5taW5MZW5ndGgoOSksIFxuICAgIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDkpLCBcbiAgICBWYWxpZGF0b3JzLnJlcXVpcmVkXG4gIF07XG5cbiAgY29uc3RydWN0b3IocHVibGljIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIscHVibGljIHV0aWwgOiBVdGlsU2VydmljZSwpIFxuICB7IFxuICAgIHRoaXMuYWNjb3VudFR5cGVPcHRpb25zID0gW1xuICAgICAgeyB0ZXh0OiAnY2hlY2tpbmcnLCB2YWx1ZTogJ0NIRUMnIH0sXG4gICAgICB7IHRleHQ6ICdzYXZpbmdzJywgdmFsdWU6ICdTQVZFJyB9LFxuICAgIF07XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmJhbmtEZXRhaWxzRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgJ25hbWVPbkFjY291bnQnOiBbbnVsbCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oQXBwUmVnZXguTkFNRV9SRUdFWCldKV0sXG4gICAgICAnYWNjb3VudFR5cGUnOiBbbnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICAncm91dGluZ051bWJlcic6IFtudWxsLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXlswLTldezl9JC8pXSldLFxuICAgICAgLy8gJ2JhbmtOYW1lJzogW251bGxdLFxuICAgICAgJ2FjY291bnROdW1iZXInOiBbbnVsbCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oQXBwUmVnZXguQUNDT1VOVF9OVU1CRVJfUkVHRVgpLCBWYWxpZGF0b3JzLm1heExlbmd0aCgxNyldKV0sXG4gICAgICAncmVFbnRlckFjY291bnROdW1iZXInOiBbbnVsbCwgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oQXBwUmVnZXguQUNDT1VOVF9OVU1CRVJfUkVHRVgpLCBWYWxpZGF0b3JzLm1heExlbmd0aCgxNyldKV1cbiAgICB9KTtcblxuICAgIHRoaXMuc2V0QWNjb3VudE51bWJlclZhbGlkYXRvcigpO1xuICB9XG5cbiAgc3VibWl0KCl7XG4gICAgaWYodGhpcy5iYW5rRGV0YWlsc0Zvcm1EaXJlY3RpdmUpe1xuICAgICAgdGhpcy5iYW5rRGV0YWlsc0Zvcm1EaXJlY3RpdmUub25TdWJtaXQodW5kZWZpbmVkKTtcbiAgICB9XG4gIH1cblxuICBzZXRBY2NvdW50TnVtYmVyVmFsaWRhdG9yKCkge1xuICAgIGNvbnN0IFJPVVRJTkdfTlVNQkVSXzlfRElHSVQ6IFJlZ0V4cCA9IC9eWzAtOV17OX0kLztcbiAgXG4gICAgLy8gT3ZlcndyaXRlIHJvdXRpbmdOdW1iZXIgdmFsaWRhdG9ycyB3aXRoIG9ubHkgYSA5LWRpZ2l0IGNoZWNrXG4gICAgdGhpcy51dGlsLnNldFZhbGlkYXRpb24odGhpcy5yb3V0aW5nTnVtYmVyLCBbXG4gICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgVmFsaWRhdG9ycy5wYXR0ZXJuKFJPVVRJTkdfTlVNQkVSXzlfRElHSVQpXG4gICAgXSk7XG4gIFxuICAgIC8vIFJlbW92ZSB0aGUgY3VzdG9tIEFwcFZhbGlkYXRvciAodGhpcyBpcyB3aGF0J3MgY2F1c2luZyBpc3N1ZXMpXG4gICAgLy8gdGhpcy51dGlsLnNldFZhbGlkYXRpb24odGhpcy5yb3V0aW5nTnVtYmVyLCBBcHBWYWxpZGF0b3JzLmlzVmFsaWRSb3V0aW5nTnVtYmVyKTsg4oaQ4p2MIHJlbW92ZSB0aGlzXG4gIFxuICAgIHRoaXMucmVFbnRlckFjY291bnROdW1iZXIudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5hY2NvdW50TnVtYmVyPy52YWx1ZSAhPT0gdGhpcy5yZUVudGVyQWNjb3VudE51bWJlci52YWx1ZSkge1xuICAgICAgICB0aGlzLnJlRW50ZXJBY2NvdW50TnVtYmVyLnNldEVycm9ycyh7IGFjY291bnROdW1iZUNvbXBhcmlzaW9uOiB0cnVlIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIFxuXG4gIC8vIHNldEFjY291bnROdW1iZXJWYWxpZGF0b3IoKSB7XG4gIC8vICAgbGV0IHZhbGlkYXRvcnMxOiBWYWxpZGF0b3JGbltdID0gW107XG4gIC8vICAgbGV0IGlzUm91dGluZ051bWJlck5vdFZhbGlkOiBib29sZWFuO1xuICAvLyAgIHRoaXMucm91dGluZ051bWJlclZhbGlkYXRvcnMuZm9yRWFjaCh2ID0+IHZhbGlkYXRvcnMxLnB1c2godikpO1xuICAvLyAgIGNvbnN0IFJPVVRJTkdfTlVNQkVSOlJlZ0V4cCA9IC9eWzAtNF17MX1bMC05XXs4fSQvO1xuICAvLyAgIHRoaXMudXRpbC5zZXRWYWxpZGF0aW9uKHRoaXMucm91dGluZ051bWJlciwgdmFsaWRhdG9yczEpO1xuICAgIFxuICAvLyAgIHRoaXMudXRpbC5zZXRWYWxpZGF0aW9uKHRoaXMucm91dGluZ051bWJlciwgQXBwVmFsaWRhdG9ycy5pc1ZhbGlkUm91dGluZ051bWJlcik7XG5cbiAgLy8gICB0aGlzLnJlRW50ZXJBY2NvdW50TnVtYmVyLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsID0+IHtcbiAgLy8gICAgIGlmICh0aGlzLmFjY291bnROdW1iZXIgJiYgKHRoaXMuYWNjb3VudE51bWJlci52YWx1ZSAhPSB0aGlzLnJlRW50ZXJBY2NvdW50TnVtYmVyLnZhbHVlKSkge1xuICAvLyAgICAgICB0aGlzLmJhbmtEZXRhaWxzRm9ybS5jb250cm9sc1sncmVFbnRlckFjY291bnROdW1iZXInXS5zZXRFcnJvcnMoeyBhY2NvdW50TnVtYmVDb21wYXJpc2lvbjogdHJ1ZSB9KTtcbiAgLy8gICAgICAgcmV0dXJuIHsgYWNjb3VudE51bWJlQ29tcGFyaXNpb246IHRydWUgfTtcbiAgLy8gICAgIH1cbiAgLy8gICB9KTtcblxuICAvLyAgIHRoaXMucm91dGluZ051bWJlci52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbCA9PiB7XG4gIC8vICAgY29uc3QgdmFsaWQxID0gUk9VVElOR19OVU1CRVIudGVzdCh0aGlzLnJvdXRpbmdOdW1iZXIudmFsdWUpO1xuICAvLyAgICAgaWYgKCF2YWxpZDEpIHtcbiAgLy8gICAgICAgdGhpcy5iYW5rRGV0YWlsc0Zvcm0uY29udHJvbHNbJ3JvdXRpbmdOdW1iZXInXS5zZXRFcnJvcnMoeyBoYXNSb3V0aW5nOiB0cnVlIH0pO1xuICAvLyAgICAgICByZXR1cm4geyBoYXNSb3V0aW5nOiB0cnVlIH07XG4gIC8vICAgICB9XG4gIC8vICAgfSk7XG4gIC8vIH1cblxuICBnZXQgbmFtZU9uQWNjb3VudCgpIHtcbiAgICByZXR1cm4gdGhpcy5iYW5rRGV0YWlsc0Zvcm0uY29udHJvbHNbJ25hbWVPbkFjY291bnQnXTtcbiAgfVxuICBnZXQgYWNjb3VudFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuYmFua0RldGFpbHNGb3JtLmNvbnRyb2xzWydhY2NvdW50VHlwZSddO1xuICB9XG4gIGdldCByb3V0aW5nTnVtYmVyKCkge1xuICAgIHJldHVybiB0aGlzLmJhbmtEZXRhaWxzRm9ybS5jb250cm9sc1sncm91dGluZ051bWJlciddO1xuICB9XG4gIGdldCBhY2NvdW50TnVtYmVyKCkge1xuICAgIHJldHVybiB0aGlzLmJhbmtEZXRhaWxzRm9ybS5jb250cm9sc1snYWNjb3VudE51bWJlciddO1xuICB9XG4gIC8vIGdldCBiYW5rTmFtZUNvbnRyb2woKSB7XG4gIC8vICAgcmV0dXJuIHRoaXMuYmFua0RldGFpbHNGb3JtLmNvbnRyb2xzWydiYW5rTmFtZSddO1xuICAvLyB9XG4gIGdldCByZUVudGVyQWNjb3VudE51bWJlcigpIHtcbiAgICByZXR1cm4gdGhpcy5iYW5rRGV0YWlsc0Zvcm0uY29udHJvbHNbJ3JlRW50ZXJBY2NvdW50TnVtYmVyJ107XG4gIH1cblxuICBvblRvdWNoZWQ6IEZ1bmN0aW9uID0gKCkgPT4geyB9O1xuXG4gIG9uQ2hhbmdlU3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBmb3IgKGxldCBzdWIgb2YgdGhpcy5vbkNoYW5nZVN1YnMpIHtcbiAgICAgIHN1Yi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2Uob25DaGFuZ2U6IGFueSkge1xuICAgIGNvbnN0IHN1YiA9IHRoaXMuYmFua0RldGFpbHNGb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUob25DaGFuZ2UpO1xuICAgIHRoaXMub25DaGFuZ2VTdWJzLnB1c2goc3ViKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKG9uVG91Y2hlZDogRnVuY3Rpb24pIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IG9uVG91Y2hlZDtcbiAgfSBcbiAgXG4gIHNldERpc2FibGVkU3RhdGUoZGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuYmFua0RldGFpbHNGb3JtLmRpc2FibGUoKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLmJhbmtEZXRhaWxzRm9ybS5lbmFibGUoKTtcbiAgICB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuYmFua0RldGFpbHNGb3JtLnNldFZhbHVlKHZhbHVlLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgfVxuICB9XG5cblxuICB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpIHtcbiAgICBcbiAgICBpZiAodGhpcy5iYW5rRGV0YWlsc0Zvcm0udmFsaWQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8vIGZldGNoQmFua05hbWUoZXZlbnQpe1xuICAvLyAgIGlmKHRoaXMucm91dGluZ051bWJlciAmJiB0aGlzLnJvdXRpbmdOdW1iZXIudmFsdWUpeyAgIFxuICAvLyAgICAgdGhpcy5kbXNcbiAgLy8gICAgICAgLmdldEJhbmtOYW1lKHRoaXMucm91dGluZ051bWJlci52YWx1ZSlcbiAgLy8gICAgICAgLnN1YnNjcmliZShcbiAgLy8gICAgICAgICByZXMgPT4ge1xuICAvLyAgICAgICAgICAgdGhpcy5iYW5rRGV0YWlsc01vZGVsID0gcmVzO1xuICAvLyAgICAgICAgICAgdGhpcy5iYW5rTmFtZSA9IHJlcy5iYW5rTmFtZTtcbiAgLy8gICAgICAgICAgIHRoaXMuYmFua05hbWVDb250cm9sLnNldFZhbHVlKHJlcy5iYW5rTmFtZSk7XG4gIC8vICAgICAgICAgfSxcbiAgLy8gICAgICAgICBlcnIgPT4ge1xuICAvLyAgICAgICAgICAgdGhpcy5iYW5rTmFtZSA9IFwiTm8gTWF0Y2hpbmcgUm91dGluZyBOdW1iZXJzLlwiO1xuICAvLyAgICAgICAgICAgdGhpcy5iYW5rTmFtZUNvbnRyb2wuc2V0VmFsdWUobnVsbCk7XG4gIC8vICAgICAgICAgfVxuICAvLyAgICAgKTtcbiAgLy8gICB9XG4gIC8vIH1cblxuXG59XG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImJhbmtEZXRhaWxzRm9ybVwiICNiYW5rRGV0YWlsc0Zvcm1EaXJlY3RpdmU9XCJuZ0Zvcm1cIiBzdHlsZT1cIm1hcmdpbi1ib3R0b206IDBweDsgbWFyZ2luLWxlZnQ6IDBweDsgbWFyZ2luLXRvcDogNnB4O1wiPlxyXG4gICAgPGlvbi1ncmlkIHN0eWxlPVwicGFkZGluZzogMHB4O1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLWZvcm1ncmlkXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cIlwiPnt7J05hbWUgb24gQWNjb3VudCcgfCB0cmFuc2xhdGV9fTwvbGFiZWw+PGJyLz5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cIm5hbWVPbkFjY291bnRcIiB0eXBlPVwidGV4dFwiIHBJbnB1dFRleHQgW2Zvcm1Db250cm9sXT1cIm5hbWVPbkFjY291bnRcIiBtYXhsZW5ndGg9XCIzMFwiLz4gIFxyXG4gICAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSduYW1lT25BY2NvdW50JyBbZm9ybV09XCJiYW5rRGV0YWlsc0Zvcm1EaXJlY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtlcnJEZWZdPVwieyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdyZXF1aXJlZC4nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXR0ZXJuOiAncGxlYXNlIGVudGVyIG9ubHkgbGV0dGVycydcclxuICAgICAgICAgICAgICAgICAgICB9XCI+PC9hcHAtZXJyb3I+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJcIj57eydBY2NvdW50IFR5cGUnIHwgdHJhbnNsYXRlfX08L2xhYmVsPjxici8+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogaW5saW5lLWZsZXg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHAtc2VsZWN0QnV0dG9uIFtvcHRpb25zXT1cImFjY291bnRUeXBlT3B0aW9uc1wiIFtmb3JtQ29udHJvbF09XCJhY2NvdW50VHlwZVwiIFttdWx0aXBsZV09ZmFsc2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbkxhYmVsPVwidGV4dFwiIG9wdGlvblZhbHVlPVwidmFsdWVcIj48L3Atc2VsZWN0QnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0nYWNjb3VudFR5cGUnIFtmb3JtXT1cImJhbmtEZXRhaWxzRm9ybURpcmVjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXJyRGVmXT1cIntyZXF1aXJlZDogJ3JlcXVpcmVkLid9XCI+PC9hcHAtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImZsZXgtZ3JvdzogMTtcIiBzdHlsZT1cInBhZGRpbmctbGVmdDogOHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxhcHAtb3ZlcmxheS1pbmZvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmdcIj5CYW5raW5nIG51bWJlcnM8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvdmVybGF5LXN1YmhlYWRpbmcgaW9uLXBhZGRpbmctdG9wXCI+Q2hlY2tpbmcgQWNjb3VudDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm92ZXJsYXktZGVzYyBpb24tcGFkZGluZy10b3BcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaW5kIHlvdXIgYmFuaydzIHJvdXRpbmcgbnVtYmVyIGFuZCB5b3VyIGFjY291bnQgbnVtYmVyIG9uIHRoZSBib3R0b20gb2YgeW91ciBwZXJzb25hbCBjaGVja3MuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgYWx0PVwiY2hlY2sgaW1hZ2VcIiBzcmM9XCJhc3NldHMvaWNvbi9jaGVjazEucG5nXCIgY2xhc3M9XCJpb24tcGFkZGluZy10b3BcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3ZlcmxheS1zdWJoZWFkaW5nIGlvbi1wYWRkaW5nLXRvcFwiPlNhdmluZ3MgQWNjb3VudDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm92ZXJsYXktZGVzYyBpb24tcGFkZGluZy10b3BcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiB5b3UgcHJlZmVyIGRpcmVjdCBkZXBvc2l0IGludG8gYSBzYXZpbmcgYWNjb3VudCBhbmQgZG9uJ3QgaGF2ZSBhIGNoZWNraW5nIGFjY291bnQgd2l0aCB0aGUgc2FtZSBiYW5rLCBjYWxsIHlvdXIgYmFuayB0byBnZXQgdGhlIHJvdXRpbmcgbnVtYmVyLiAgSWYgeW91IGhhdmUgYSBjaGVja2luZyBhY2NvdW50IGF0IHRoZSBzYW1lIGJhbmssIHRoZSByb3V0aW5nIG51bWJlciBpcyB0aGUgc2FtZSwgYnV0IHRoZSBhY2NvdW50IG51bWJlciBpcyBkaWZmZXJlbnQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hcHAtb3ZlcmxheS1pbmZvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgICAgIDxpb24tY29sIGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJyb3V0aW5nTnVtYmVyXCI+e3snUm91dGluZyBOdW1iZXInIHwgdHJhbnNsYXRlfX08L2xhYmVsPjxici8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInJvdXRpbmdOdW1iZXJcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJyb3V0aW5nTnVtYmVyXCIgbWF4bGVuZ3RoPVwiOVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0ncm91dGluZ051bWJlcicgW2Zvcm1dPVwiYmFua0RldGFpbHNGb3JtRGlyZWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAncmVxdWlyZWQuJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNSb3V0aW5nOidNdXN0IGJlIGF0IGxlYXN0IDkgZGlnaXRzLicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNSb3V0aW5nTnVtYmVyTm90VmFsaWQ6ICdJbnZhbGlkIHJvdXRpbmcgbnVtYmVyLidcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgPC9pb24tcm93PlxyXG4gICAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgICAgIDxpb24tY29sIGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJhY2NvdW50TnVtYmVyXCI+e3snQWNjb3VudCBOdW1iZXInIHwgdHJhbnNsYXRlfX08L2xhYmVsPjxici8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwLXBhc3N3b3JkIGlkPVwiYWNjb3VudE51bWJlclwiIFtmb3JtQ29udHJvbF09XCJhY2NvdW50TnVtYmVyXCIgW21heGxlbmd0aF09XCIxN1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmZWVkYmFja109XCJmYWxzZVwiIFt0b2dnbGVNYXNrXT1cInRydWVcIj48L3AtcGFzc3dvcmQ+PGJyLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J2FjY291bnROdW1iZXInIFtmb3JtXT1cImJhbmtEZXRhaWxzRm9ybURpcmVjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAncmVxdWlyZWQuJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0dGVybjogJ2VudGVyIG9ubHkgbnVtYmVycy4nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNOdW1iZXI6ICd2YWxpZCBudW1iZXInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhsZW5ndGg6ICdjYW5ub3QgZXhjZWVkIDE3IGNoYXJhY3RlcnMnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInJlRW50ZXJBY2NvdW50TnVtYmVyXCI+e3snUmUtZW50ZXIgQWNjb3VudCcgfCB0cmFuc2xhdGV9fTwvbGFiZWw+PGJyLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHAtcGFzc3dvcmQgaWQ9XCJyZUVudGVyQWNjb3VudE51bWJlclwiIFtmb3JtQ29udHJvbF09XCJyZUVudGVyQWNjb3VudE51bWJlclwiIFttYXhsZW5ndGhdPVwiMTdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ZlZWRiYWNrXT1cImZhbHNlXCIgW3RvZ2dsZU1hc2tdPVwidHJ1ZVwiPjwvcC1wYXNzd29yZD48YnIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0ncmVFbnRlckFjY291bnROdW1iZXInIFtmb3JtXT1cImJhbmtEZXRhaWxzRm9ybURpcmVjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ3JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXR0ZXJuOiAnZW50ZXIgb25seSBudW1iZXJzLicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY2NvdW50TnVtYmVDb21wYXJpc2lvbjonQWNjb3VudCBOdW1iZXIgYW5kIFJlLWVudGVyIEFjY291bnQgTnVtYmVyIHNob3VsZCBtYXRjaCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhsZW5ndGg6ICdjYW5ub3QgZXhjZWVkIDE3IGNoYXJhY3RlcnMnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2lvbi1ncmlkPlxyXG48L2Zvcm0+Il19