@reusa/ngx-reusa-app-lib 0.0.999 → 0.1.101

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 (372) hide show
  1. package/README.md +46 -46
  2. package/esm2022/lib/annimations/app-animations.mjs +1 -1
  3. package/esm2022/lib/components/add-employer/add-employer.component.mjs +1130 -2312
  4. package/esm2022/lib/components/add-participant/add-participant.component.mjs +1 -1
  5. package/esm2022/lib/components/add-payment/add-payment.component.mjs +16 -36
  6. package/esm2022/lib/components/address/address.component.mjs +58 -52
  7. package/esm2022/lib/components/bank-details/bank-details.component.mjs +25 -29
  8. package/esm2022/lib/components/captcha/captcha.component.mjs +6 -6
  9. package/esm2022/lib/components/card/card.component.mjs +1 -1
  10. package/esm2022/lib/components/content/content.component.mjs +1 -1
  11. package/esm2022/lib/components/correspondence-download/correspondence-download.component.mjs +1 -1
  12. package/esm2022/lib/components/dependent-grid/dependent-grid.component.mjs +14 -19
  13. package/esm2022/lib/components/disclosure/disclosure.component.mjs +1 -1
  14. package/esm2022/lib/components/dropdown/dropdown.component.mjs +6 -6
  15. package/esm2022/lib/components/dropdown/dropdown.interface.mjs +1 -1
  16. package/esm2022/lib/components/email-update/email-update.component.mjs +32 -14
  17. package/esm2022/lib/components/employer-grid/employer-grid.component.mjs +197 -192
  18. package/esm2022/lib/components/error/error.component.mjs +5 -22
  19. package/esm2022/lib/components/fav-menu/fav-menu.component.mjs +1 -1
  20. package/esm2022/lib/components/file-download/file-download.component.mjs +1 -1
  21. package/esm2022/lib/components/file-uploader/file-uploader.component.mjs +1 -1
  22. package/esm2022/lib/components/footer/footer.component.mjs +67 -90
  23. package/esm2022/lib/components/header/header.component.mjs +105 -169
  24. package/esm2022/lib/components/help/help.component.mjs +1 -1
  25. package/esm2022/lib/components/idle-detector/idle-detector.component.mjs +13 -13
  26. package/esm2022/lib/components/info/info.component.mjs +12 -4
  27. package/esm2022/lib/components/job-search-result-page/job-search-result-page.component.mjs +1 -1
  28. package/esm2022/lib/components/job-title/job-title.component.mjs +94 -93
  29. package/esm2022/lib/components/legal-disclaimar/legal-disclaimar.component.mjs +82 -93
  30. package/esm2022/lib/components/lexis-nexis/lexis-nexis.component.mjs +329 -0
  31. package/esm2022/lib/components/link/link.component.mjs +1 -1
  32. package/esm2022/lib/components/maintenance-detector/maintenance-detector.component.mjs +1 -1
  33. package/esm2022/lib/components/mask/mask.component.mjs +1 -1
  34. package/esm2022/lib/components/menu/menu.component.mjs +35 -44
  35. package/esm2022/lib/components/mfa/mfa.component.mjs +305 -103
  36. package/esm2022/lib/components/mfa-popup/mfa-popup.component.mjs +16 -7
  37. package/esm2022/lib/components/mfa2/mfa2.component.mjs +260 -0
  38. package/esm2022/lib/components/money-expect/money-expect.component.mjs +36 -148
  39. package/esm2022/lib/components/msg/msg.component.mjs +1 -1
  40. package/esm2022/lib/components/news/news.component.mjs +1 -1
  41. package/esm2022/lib/components/overlay-info/overlay-info.component.mjs +1 -1
  42. package/esm2022/lib/components/page/page.component.mjs +1 -1
  43. package/esm2022/lib/components/profile/profile.component.mjs +213 -56
  44. package/esm2022/lib/components/profile-redirect/profile-redirect.component.mjs +33 -106
  45. package/esm2022/lib/components/questionnaire/AppValidators.mjs +14 -165
  46. package/esm2022/lib/components/questionnaire/FbConstants.mjs +1 -1
  47. package/esm2022/lib/components/questionnaire/account-success/account-success.page.mjs +60 -110
  48. package/esm2022/lib/components/questionnaire/common-success/common-success.page.mjs +123 -367
  49. package/esm2022/lib/components/questionnaire/dynamic-form-panel.component.mjs +9 -9
  50. package/esm2022/lib/components/questionnaire/dynamic-form-question.component.mjs +1029 -769
  51. package/esm2022/lib/components/questionnaire/dynamic-form.component.mjs +325 -157
  52. package/esm2022/lib/components/questionnaire/form-builder/form-builder.page.mjs +17 -9
  53. package/esm2022/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.mjs +26 -93
  54. package/esm2022/lib/components/questionnaire/question-base.mjs +1 -1
  55. package/esm2022/lib/components/questionnaire/question-control.service.mjs +1 -2
  56. package/esm2022/lib/components/questionnaire/question.service.mjs +7 -5
  57. package/esm2022/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.mjs +25 -14
  58. package/esm2022/lib/components/read-more/read-more.component.mjs +6 -6
  59. package/esm2022/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.mjs +196 -333
  60. package/esm2022/lib/components/search-employer/search-employer.component.mjs +24 -47
  61. package/esm2022/lib/components/security-question/security-question.component.mjs +189 -0
  62. package/esm2022/lib/components/select/select.component.mjs +1 -1
  63. package/esm2022/lib/components/sign-ssn/sign-ssn.component.mjs +3 -3
  64. package/esm2022/lib/components/ssn/ssn.component.mjs +1 -1
  65. package/esm2022/lib/components/ssn-reverify/ssn-reverify.component.mjs +4 -4
  66. package/esm2022/lib/components/test/test.component.mjs +1 -1
  67. package/esm2022/lib/components/user-login/user-login.component.mjs +226 -115
  68. package/esm2022/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +155 -287
  69. package/esm2022/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.mjs +46 -62
  70. package/esm2022/lib/directives/auto-focus/auto-focus.directive.mjs +1 -1
  71. package/esm2022/lib/directives/caps-lock.directive.mjs +1 -1
  72. package/esm2022/lib/directives/required-roles/required-roles.directive.mjs +1 -1
  73. package/esm2022/lib/enums/EmailStatusEnum.mjs +1 -1
  74. package/esm2022/lib/guards/auth.guard.mjs +4 -26
  75. package/esm2022/lib/guards/no-login/no-login.guard.mjs +1 -1
  76. package/esm2022/lib/interceptors/error-interceptor/http-error-interceptor.mjs +1 -1
  77. package/esm2022/lib/interceptors/header-interceptor/http-header.interceptor.mjs +1 -1
  78. package/esm2022/lib/models/EmployerDetailSearchResult.mjs +1 -1
  79. package/esm2022/lib/models/ErrorModel.mjs +1 -1
  80. package/esm2022/lib/models/FileModel.mjs +1 -1
  81. package/esm2022/lib/models/LexisNexisAccountCreationModel.mjs +2 -0
  82. package/esm2022/lib/models/LexisNexisAuthSelectionRequestModel.mjs +2 -0
  83. package/esm2022/lib/models/LexisNexisAuthSelectionResponseModel.mjs +2 -0
  84. package/esm2022/lib/models/LexisNexisResponseModel.mjs +3 -0
  85. package/esm2022/lib/models/LibConstants.mjs +15 -12
  86. package/esm2022/lib/models/NotificationModel.mjs +1 -1
  87. package/esm2022/lib/models/OtpAuthModel.mjs +1 -1
  88. package/esm2022/lib/models/PartialEmploymentModel.mjs +3 -0
  89. package/esm2022/lib/models/PaymentComponentModel.mjs +1 -1
  90. package/esm2022/lib/models/SecurityQuestionModel.mjs +3 -0
  91. package/esm2022/lib/models/TrendModel.mjs +1 -1
  92. package/esm2022/lib/models/UserDetailsModel.mjs +1 -1
  93. package/esm2022/lib/models/UserModel.mjs +1 -1
  94. package/esm2022/lib/models/claimant/ClaimantModel.mjs +1 -1
  95. package/esm2022/lib/models/claimant/JobResultsData.mjs +1 -1
  96. package/esm2022/lib/models/claimant/MatchingJobs.mjs +1 -1
  97. package/esm2022/lib/models/claimant/ResetPasswordModel.mjs +1 -1
  98. package/esm2022/lib/models/dependent.model.mjs +1 -1
  99. package/esm2022/lib/models/questionnaire/ClaimAppEmpResponseModel.mjs +1 -1
  100. package/esm2022/lib/models/questionnaire/ClaimAppEmployerDetailsModel.mjs +1 -2
  101. package/esm2022/lib/models/questionnaire/ClaimOnlyEmployerDataModel.mjs +1 -1
  102. package/esm2022/lib/models/questionnaire/ComboModel.mjs +175 -73
  103. package/esm2022/lib/models/questionnaire/ElementsModel.mjs +1 -1
  104. package/esm2022/lib/models/questionnaire/KeyValueModel.mjs +1 -1
  105. package/esm2022/lib/models/questionnaire/LegalDiscaimarModel.mjs +1 -1
  106. package/esm2022/lib/models/questionnaire/StatusModel.mjs +1 -1
  107. package/esm2022/lib/ngx-reusa-app-lib.component.mjs +5 -5
  108. package/esm2022/lib/ngx-reusa-app-lib.module.mjs +13 -27
  109. package/esm2022/lib/ngx-reusa-app-lib.service.mjs +1 -1
  110. package/esm2022/lib/pages/BasePage.mjs +22 -3
  111. package/esm2022/lib/pages/common/accessibility-policy/accessibility-policy.page.mjs +18 -22
  112. package/esm2022/lib/pages/common/change-password/change-password.page.mjs +124 -142
  113. package/esm2022/lib/pages/common/landing/landing.component.mjs +8 -7
  114. package/esm2022/lib/pages/common/landing2/landing2.component.mjs +4 -4
  115. package/esm2022/lib/pages/common/login/login.component.mjs +5 -5
  116. package/esm2022/lib/pages/common/not-found/not-found.page.mjs +1 -1
  117. package/esm2022/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.mjs +14 -14
  118. package/esm2022/lib/pages/common/security-policy/security-policy.page.mjs +5 -5
  119. package/esm2022/lib/pages/common/unauthorized/unauthorized.page.mjs +1 -1
  120. package/esm2022/lib/pages/popovers/language/language.page.mjs +1 -1
  121. package/esm2022/lib/pages/popovers/my-notifications/my-notifications.page.mjs +1 -1
  122. package/esm2022/lib/pages/popovers/my-profile/my-profile.page.mjs +1 -1
  123. package/esm2022/lib/pages/popovers/user-search/user-search.component.mjs +1 -1
  124. package/esm2022/lib/pipes/filter.pipe.mjs +1 -1
  125. package/esm2022/lib/pipes/mask/mask.email.pipe.mjs +1 -1
  126. package/esm2022/lib/pipes/proper-case/proper-case.pipe.mjs +1 -1
  127. package/esm2022/lib/pipes/translate/dynamic-translate.pipe.mjs +1 -1
  128. package/esm2022/lib/pipes/trust-html/trust-html.pipe.mjs +1 -1
  129. package/esm2022/lib/services/base-service.mjs +1 -1
  130. package/esm2022/lib/services/captcha/captcha.service.mjs +1 -1
  131. package/esm2022/lib/services/chatbot/chatbot.service.mjs +2 -1
  132. package/esm2022/lib/services/chatbot/script.const.mjs +1 -1
  133. package/esm2022/lib/services/claimant/claimant.service.mjs +1 -1
  134. package/esm2022/lib/services/claimant-service/claimant-usps-redirect.service.mjs +36 -0
  135. package/esm2022/lib/services/claimant-service/claimant.service.mjs +13 -1
  136. package/esm2022/lib/services/claims/claims.service.mjs +14 -57
  137. package/esm2022/lib/services/dms-service/dms.service.mjs +1 -1
  138. package/esm2022/lib/services/fpjs/fingerprint.service.mjs +1 -1
  139. package/esm2022/lib/services/google-analytics/google-analytics.service.mjs +1 -1
  140. package/esm2022/lib/services/help/help.service.mjs +1 -1
  141. package/esm2022/lib/services/idle/idle.service.mjs +1 -1
  142. package/esm2022/lib/services/lexis-nexis/lexis.nexis.service.mjs +49 -0
  143. package/esm2022/lib/services/logger/logger.service.mjs +1 -1
  144. package/esm2022/lib/services/login/login.service.mjs +11 -1
  145. package/esm2022/lib/services/maintenance/maintenance.service.mjs +1 -1
  146. package/esm2022/lib/services/notification/notification.service.mjs +1 -1
  147. package/esm2022/lib/services/ovp/ovp.service.mjs +43 -0
  148. package/esm2022/lib/services/questionnaire/questionnaire.service.mjs +1 -4
  149. package/esm2022/lib/services/questionnaire/validation.service.mjs +1 -4
  150. package/esm2022/lib/services/security-service/security.service.mjs +6 -5
  151. package/esm2022/lib/services/tour/tour.service.mjs +1 -1
  152. package/esm2022/lib/services/util/util.service.mjs +5 -5
  153. package/esm2022/lib/services/weekly-cert/weekly-cert-v2.service.mjs +42 -0
  154. package/esm2022/lib/validations/AppRegex.mjs +1 -1
  155. package/esm2022/lib/validations/AppValidators.mjs +14 -34
  156. package/esm2022/public-api.mjs +5 -16
  157. package/fesm2022/reusa-ngx-reusa-app-lib.mjs +7480 -10431
  158. package/fesm2022/reusa-ngx-reusa-app-lib.mjs.map +1 -1
  159. package/lib/components/add-employer/add-employer.component.d.ts +48 -77
  160. package/lib/components/add-employer/add-employer.component.d.ts.map +1 -1
  161. package/lib/components/add-payment/add-payment.component.d.ts +2 -7
  162. package/lib/components/add-payment/add-payment.component.d.ts.map +1 -1
  163. package/lib/components/address/address.component.d.ts +3 -2
  164. package/lib/components/address/address.component.d.ts.map +1 -1
  165. package/lib/components/email-update/email-update.component.d.ts +7 -1
  166. package/lib/components/email-update/email-update.component.d.ts.map +1 -1
  167. package/lib/components/employer-grid/employer-grid.component.d.ts +3 -1
  168. package/lib/components/employer-grid/employer-grid.component.d.ts.map +1 -1
  169. package/lib/components/error/error.component.d.ts +2 -3
  170. package/lib/components/error/error.component.d.ts.map +1 -1
  171. package/lib/components/footer/footer.component.d.ts.map +1 -1
  172. package/lib/components/header/header.component.d.ts +0 -1
  173. package/lib/components/header/header.component.d.ts.map +1 -1
  174. package/lib/components/job-title/job-title.component.d.ts +21 -22
  175. package/lib/components/job-title/job-title.component.d.ts.map +1 -1
  176. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts +2 -5
  177. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts.map +1 -1
  178. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts +55 -0
  179. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts.map +1 -0
  180. package/lib/components/menu/menu.component.d.ts.map +1 -1
  181. package/lib/components/mfa/mfa.component.d.ts +26 -3
  182. package/lib/components/mfa/mfa.component.d.ts.map +1 -1
  183. package/lib/components/mfa-popup/mfa-popup.component.d.ts +4 -1
  184. package/lib/components/mfa-popup/mfa-popup.component.d.ts.map +1 -1
  185. package/lib/components/mfa2/mfa2.component.d.ts +48 -0
  186. package/lib/components/mfa2/mfa2.component.d.ts.map +1 -0
  187. package/lib/components/money-expect/money-expect.component.d.ts +4 -15
  188. package/lib/components/money-expect/money-expect.component.d.ts.map +1 -1
  189. package/lib/components/profile/profile.component.d.ts +32 -4
  190. package/lib/components/profile/profile.component.d.ts.map +1 -1
  191. package/lib/components/profile-redirect/profile-redirect.component.d.ts +2 -9
  192. package/lib/components/profile-redirect/profile-redirect.component.d.ts.map +1 -1
  193. package/lib/components/questionnaire/AppValidators.d.ts +0 -1
  194. package/lib/components/questionnaire/AppValidators.d.ts.map +1 -1
  195. package/lib/components/questionnaire/account-success/account-success.page.d.ts +10 -13
  196. package/lib/components/questionnaire/account-success/account-success.page.d.ts.map +1 -1
  197. package/lib/components/questionnaire/common-success/common-success.page.d.ts +0 -7
  198. package/lib/components/questionnaire/common-success/common-success.page.d.ts.map +1 -1
  199. package/lib/components/questionnaire/dynamic-form-question.component.d.ts +32 -14
  200. package/lib/components/questionnaire/dynamic-form-question.component.d.ts.map +1 -1
  201. package/lib/components/questionnaire/dynamic-form.component.d.ts +24 -3
  202. package/lib/components/questionnaire/dynamic-form.component.d.ts.map +1 -1
  203. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts +3 -0
  204. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts.map +1 -1
  205. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts +1 -6
  206. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts.map +1 -1
  207. package/lib/components/questionnaire/question-control.service.d.ts.map +1 -1
  208. package/lib/components/questionnaire/question.service.d.ts +1 -0
  209. package/lib/components/questionnaire/question.service.d.ts.map +1 -1
  210. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts +3 -1
  211. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts.map +1 -1
  212. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts +3 -6
  213. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts.map +1 -1
  214. package/lib/components/search-employer/search-employer.component.d.ts +2 -1
  215. package/lib/components/search-employer/search-employer.component.d.ts.map +1 -1
  216. package/lib/components/security-question/security-question.component.d.ts +37 -0
  217. package/lib/components/security-question/security-question.component.d.ts.map +1 -0
  218. package/lib/components/user-login/user-login.component.d.ts +22 -5
  219. package/lib/components/user-login/user-login.component.d.ts.map +1 -1
  220. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts +0 -6
  221. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts.map +1 -1
  222. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts +0 -1
  223. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts.map +1 -1
  224. package/lib/guards/auth.guard.d.ts +1 -3
  225. package/lib/guards/auth.guard.d.ts.map +1 -1
  226. package/lib/models/EmployerDetailSearchResult.d.ts +1 -3
  227. package/lib/models/EmployerDetailSearchResult.d.ts.map +1 -1
  228. package/lib/models/LexisNexisAccountCreationModel.d.ts +15 -0
  229. package/lib/models/LexisNexisAccountCreationModel.d.ts.map +1 -0
  230. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts +16 -0
  231. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts.map +1 -0
  232. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts +39 -0
  233. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts.map +1 -0
  234. package/lib/models/LexisNexisResponseModel.d.ts +7 -0
  235. package/lib/models/LexisNexisResponseModel.d.ts.map +1 -0
  236. package/lib/models/LibConstants.d.ts +12 -9
  237. package/lib/models/LibConstants.d.ts.map +1 -1
  238. package/lib/models/PartialEmploymentModel.d.ts +6 -0
  239. package/lib/models/PartialEmploymentModel.d.ts.map +1 -0
  240. package/lib/models/PaymentComponentModel.d.ts +1 -1
  241. package/lib/models/PaymentComponentModel.d.ts.map +1 -1
  242. package/lib/models/SecurityQuestionModel.d.ts +7 -0
  243. package/lib/models/SecurityQuestionModel.d.ts.map +1 -0
  244. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts +0 -1
  245. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts.map +1 -1
  246. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts +3 -13
  247. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts.map +1 -1
  248. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts +1 -2
  249. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts.map +1 -1
  250. package/lib/models/questionnaire/ComboModel.d.ts +16 -20
  251. package/lib/models/questionnaire/ComboModel.d.ts.map +1 -1
  252. package/lib/models/questionnaire/ElementsModel.d.ts +1 -0
  253. package/lib/models/questionnaire/ElementsModel.d.ts.map +1 -1
  254. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts +0 -2
  255. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts.map +1 -1
  256. package/lib/models/questionnaire/StatusModel.d.ts +0 -1
  257. package/lib/models/questionnaire/StatusModel.d.ts.map +1 -1
  258. package/lib/ngx-reusa-app-lib.module.d.ts +86 -95
  259. package/lib/ngx-reusa-app-lib.module.d.ts.map +1 -1
  260. package/lib/pages/BasePage.d.ts +6 -3
  261. package/lib/pages/BasePage.d.ts.map +1 -1
  262. package/lib/pages/common/change-password/change-password.page.d.ts +0 -3
  263. package/lib/pages/common/change-password/change-password.page.d.ts.map +1 -1
  264. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts +16 -0
  265. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts.map +1 -0
  266. package/lib/services/claimant-service/claimant.service.d.ts +5 -0
  267. package/lib/services/claimant-service/claimant.service.d.ts.map +1 -1
  268. package/lib/services/claims/claims.service.d.ts +5 -24
  269. package/lib/services/claims/claims.service.d.ts.map +1 -1
  270. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts +23 -0
  271. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts.map +1 -0
  272. package/lib/services/login/login.service.d.ts +3 -0
  273. package/lib/services/login/login.service.d.ts.map +1 -1
  274. package/lib/services/ovp/ovp.service.d.ts +17 -0
  275. package/lib/services/ovp/ovp.service.d.ts.map +1 -0
  276. package/lib/services/questionnaire/questionnaire.service.d.ts +0 -1
  277. package/lib/services/questionnaire/questionnaire.service.d.ts.map +1 -1
  278. package/lib/services/questionnaire/validation.service.d.ts +0 -3
  279. package/lib/services/questionnaire/validation.service.d.ts.map +1 -1
  280. package/lib/services/security-service/security.service.d.ts +4 -5
  281. package/lib/services/security-service/security.service.d.ts.map +1 -1
  282. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts +17 -0
  283. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts.map +1 -0
  284. package/lib/validations/AppValidators.d.ts +3 -7
  285. package/lib/validations/AppValidators.d.ts.map +1 -1
  286. package/package.json +2 -2
  287. package/public-api.d.ts +4 -15
  288. package/public-api.d.ts.map +1 -1
  289. package/esm2022/lib/components/add-wage/add-wage.component.mjs +0 -160
  290. package/esm2022/lib/components/associate-ssn/associate-ssn.component.mjs +0 -174
  291. package/esm2022/lib/components/dua-request-popup/dua-request-popup.component.mjs +0 -335
  292. package/esm2022/lib/components/employer-info/employer-info.component.mjs +0 -326
  293. package/esm2022/lib/components/employer-pay/employer-pay.component.mjs +0 -243
  294. package/esm2022/lib/components/employer-pay-grid/employer-pay-grid.component.mjs +0 -302
  295. package/esm2022/lib/components/farm-usage/farm-usage.component.mjs +0 -172
  296. package/esm2022/lib/components/gross-earnings/gross-earnings.component.mjs +0 -179
  297. package/esm2022/lib/components/idme/idme.component.mjs +0 -80
  298. package/esm2022/lib/components/scrollable-text/scrollable-text.component.mjs +0 -25
  299. package/esm2022/lib/components/sms/sms.component.mjs +0 -334
  300. package/esm2022/lib/components/wage-grid/wage-grid.component.mjs +0 -274
  301. package/esm2022/lib/models/CountyModel.mjs +0 -3
  302. package/esm2022/lib/models/DuaRequestModel.mjs +0 -3
  303. package/esm2022/lib/models/DuaRetroWeeksComponentModel.mjs +0 -6
  304. package/esm2022/lib/models/EmployerInfoComponentModel.mjs +0 -4
  305. package/esm2022/lib/models/EmployerPayInfoModel.mjs +0 -6
  306. package/esm2022/lib/models/FarmUsageComponentModel.mjs +0 -2
  307. package/esm2022/lib/models/GrossEarningsModel.mjs +0 -3
  308. package/esm2022/lib/models/LexisNexisOtpDetailsResponseModel.mjs +0 -3
  309. package/esm2022/lib/models/ReasonSeparationRequestModel.mjs +0 -3
  310. package/esm2022/lib/models/RetroWeeksModel.mjs +0 -3
  311. package/esm2022/lib/models/SendOtpRequestModel.mjs +0 -3
  312. package/esm2022/lib/models/VerifyOtpRequestModel.mjs +0 -3
  313. package/esm2022/lib/models/WageInfoModel.mjs +0 -4
  314. package/esm2022/lib/models/questionnaire/ScrollableTextModel.mjs +0 -3
  315. package/esm2022/lib/models/questionnaire/WbaHelperTextModel.mjs +0 -3
  316. package/esm2022/lib/services/employer/employer-service.mjs +0 -35
  317. package/lib/components/add-wage/add-wage.component.d.ts +0 -29
  318. package/lib/components/add-wage/add-wage.component.d.ts.map +0 -1
  319. package/lib/components/associate-ssn/associate-ssn.component.d.ts +0 -28
  320. package/lib/components/associate-ssn/associate-ssn.component.d.ts.map +0 -1
  321. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts +0 -59
  322. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts.map +0 -1
  323. package/lib/components/employer-info/employer-info.component.d.ts +0 -48
  324. package/lib/components/employer-info/employer-info.component.d.ts.map +0 -1
  325. package/lib/components/employer-pay/employer-pay.component.d.ts +0 -51
  326. package/lib/components/employer-pay/employer-pay.component.d.ts.map +0 -1
  327. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts +0 -43
  328. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts.map +0 -1
  329. package/lib/components/farm-usage/farm-usage.component.d.ts +0 -33
  330. package/lib/components/farm-usage/farm-usage.component.d.ts.map +0 -1
  331. package/lib/components/gross-earnings/gross-earnings.component.d.ts +0 -37
  332. package/lib/components/gross-earnings/gross-earnings.component.d.ts.map +0 -1
  333. package/lib/components/idme/idme.component.d.ts +0 -19
  334. package/lib/components/idme/idme.component.d.ts.map +0 -1
  335. package/lib/components/scrollable-text/scrollable-text.component.d.ts +0 -11
  336. package/lib/components/scrollable-text/scrollable-text.component.d.ts.map +0 -1
  337. package/lib/components/sms/sms.component.d.ts +0 -63
  338. package/lib/components/sms/sms.component.d.ts.map +0 -1
  339. package/lib/components/wage-grid/wage-grid.component.d.ts +0 -43
  340. package/lib/components/wage-grid/wage-grid.component.d.ts.map +0 -1
  341. package/lib/models/CountyModel.d.ts +0 -8
  342. package/lib/models/CountyModel.d.ts.map +0 -1
  343. package/lib/models/DuaRequestModel.d.ts +0 -10
  344. package/lib/models/DuaRequestModel.d.ts.map +0 -1
  345. package/lib/models/DuaRetroWeeksComponentModel.d.ts +0 -5
  346. package/lib/models/DuaRetroWeeksComponentModel.d.ts.map +0 -1
  347. package/lib/models/EmployerInfoComponentModel.d.ts +0 -9
  348. package/lib/models/EmployerInfoComponentModel.d.ts.map +0 -1
  349. package/lib/models/EmployerPayInfoModel.d.ts +0 -20
  350. package/lib/models/EmployerPayInfoModel.d.ts.map +0 -1
  351. package/lib/models/FarmUsageComponentModel.d.ts +0 -10
  352. package/lib/models/FarmUsageComponentModel.d.ts.map +0 -1
  353. package/lib/models/GrossEarningsModel.d.ts +0 -6
  354. package/lib/models/GrossEarningsModel.d.ts.map +0 -1
  355. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts +0 -7
  356. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts.map +0 -1
  357. package/lib/models/ReasonSeparationRequestModel.d.ts +0 -7
  358. package/lib/models/ReasonSeparationRequestModel.d.ts.map +0 -1
  359. package/lib/models/RetroWeeksModel.d.ts +0 -10
  360. package/lib/models/RetroWeeksModel.d.ts.map +0 -1
  361. package/lib/models/SendOtpRequestModel.d.ts +0 -12
  362. package/lib/models/SendOtpRequestModel.d.ts.map +0 -1
  363. package/lib/models/VerifyOtpRequestModel.d.ts +0 -8
  364. package/lib/models/VerifyOtpRequestModel.d.ts.map +0 -1
  365. package/lib/models/WageInfoModel.d.ts +0 -9
  366. package/lib/models/WageInfoModel.d.ts.map +0 -1
  367. package/lib/models/questionnaire/ScrollableTextModel.d.ts +0 -4
  368. package/lib/models/questionnaire/ScrollableTextModel.d.ts.map +0 -1
  369. package/lib/models/questionnaire/WbaHelperTextModel.d.ts +0 -4
  370. package/lib/models/questionnaire/WbaHelperTextModel.d.ts.map +0 -1
  371. package/lib/services/employer/employer-service.d.ts +0 -16
  372. package/lib/services/employer/employer-service.d.ts.map +0 -1
@@ -15,6 +15,7 @@ export class MfaPopupComponent {
15
15
  close(event) {
16
16
  this.clear.emit();
17
17
  this.user = null;
18
+ this.display = false;
18
19
  }
19
20
  loginSuccess(event) {
20
21
  this.success.emit(event);
@@ -23,22 +24,30 @@ export class MfaPopupComponent {
23
24
  this.error.emit(event);
24
25
  }
25
26
  static { this.ɵfac = function MfaPopupComponent_Factory(t) { return new (t || MfaPopupComponent)(); }; }
26
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MfaPopupComponent, selectors: [["app-mfa-popup"]], inputs: { user: "user" }, outputs: { clear: "clear", success: "success", error: "error" }, decls: 2, vars: 8, consts: [["appendTo", "body", "position", "top", 3, "visible", "modal", "breakpoints"], [3, "user", "success", "clear"]], template: function MfaPopupComponent_Template(rf, ctx) { if (rf & 1) {
27
- i0.ɵɵelementStart(0, "p-dialog", 0)(1, "app-mfa", 1);
27
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MfaPopupComponent, selectors: [["app-mfa-popup"]], inputs: { user: "user", returningUser: "returningUser", display: "display", heading: "heading" }, outputs: { clear: "clear", success: "success", error: "error" }, decls: 2, vars: 10, consts: [["appendTo", "body", "position", "top", 3, "visible", "modal", "breakpoints", "visibleChange"], [3, "user", "returningUser", "heading", "success", "clear"]], template: function MfaPopupComponent_Template(rf, ctx) { if (rf & 1) {
28
+ i0.ɵɵelementStart(0, "p-dialog", 0);
29
+ i0.ɵɵlistener("visibleChange", function MfaPopupComponent_Template_p_dialog_visibleChange_0_listener($event) { return ctx.display = $event; });
30
+ i0.ɵɵelementStart(1, "app-mfa", 1);
28
31
  i0.ɵɵlistener("success", function MfaPopupComponent_Template_app_mfa_success_1_listener($event) { return ctx.loginSuccess($event); })("clear", function MfaPopupComponent_Template_app_mfa_clear_1_listener($event) { return ctx.close($event); });
29
32
  i0.ɵɵelementEnd()();
30
33
  } if (rf & 2) {
31
- i0.ɵɵstyleMap(i0.ɵɵpureFunction0(6, _c0));
32
- i0.ɵɵproperty("visible", true)("modal", true)("breakpoints", i0.ɵɵpureFunction0(7, _c1));
34
+ i0.ɵɵstyleMap(i0.ɵɵpureFunction0(8, _c0));
35
+ i0.ɵɵproperty("visible", ctx.display)("modal", true)("breakpoints", i0.ɵɵpureFunction0(9, _c1));
33
36
  i0.ɵɵadvance(1);
34
- i0.ɵɵproperty("user", ctx.user);
37
+ i0.ɵɵproperty("user", ctx.user)("returningUser", ctx.returningUser)("heading", ctx.heading);
35
38
  } }, dependencies: [i1.Dialog, i2.MfaComponent] }); }
36
39
  }
37
40
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MfaPopupComponent, [{
38
41
  type: Component,
39
- args: [{ selector: 'app-mfa-popup', template: "<p-dialog [visible]=\"true\" [modal]=\"true\" appendTo=\"body\" [breakpoints]=\"{'960px': '40vw', '640px': '100vw'}\" [style]=\"{width: '50vw'}\" position=\"top\">\r\n <app-mfa [user]=\"user\" (success)=\"loginSuccess($event)\" (clear)=\"close($event)\"></app-mfa>\r\n</p-dialog>" }]
42
+ args: [{ selector: 'app-mfa-popup', template: "<p-dialog [(visible)]=\"display\" [modal]=\"true\" appendTo=\"body\" [breakpoints]=\"{'960px': '40vw', '640px': '100vw'}\" [style]=\"{width: '50vw'}\" position=\"top\">\r\n <app-mfa [user]=\"user\" (success)=\"loginSuccess($event)\" [returningUser]=\"returningUser\" [heading]=\"heading\" (clear)=\"close($event)\"></app-mfa>\r\n</p-dialog>" }]
40
43
  }], () => [], { user: [{
41
44
  type: Input
45
+ }], returningUser: [{
46
+ type: Input
47
+ }], display: [{
48
+ type: Input
49
+ }], heading: [{
50
+ type: Input
42
51
  }], clear: [{
43
52
  type: Output
44
53
  }], success: [{
@@ -47,4 +56,4 @@ export class MfaPopupComponent {
47
56
  type: Output
48
57
  }] }); })();
49
58
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MfaPopupComponent, { className: "MfaPopupComponent", filePath: "lib\\components\\mfa-popup\\mfa-popup.component.ts", lineNumber: 9 }); })();
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWZhLXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZmEtcG9wdXAvbWZhLXBvcHVwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZmEtcG9wdXAvbWZhLXBvcHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVEvRSxNQUFNLE9BQU8saUJBQWlCO0lBVzVCO1FBTlUsVUFBSyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTlDLFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVoRCxVQUFLLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFFeEMsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFLO1FBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQUs7UUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFLO1FBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztrRkEzQlUsaUJBQWlCO29FQUFqQixpQkFBaUI7WUNSOUIsbUNBQXVKLGlCQUFBO1lBQzVILHlHQUFXLHdCQUFvQixJQUFDLHdGQUFVLGlCQUFhLElBQXZCO1lBQXlCLGlCQUFVLEVBQUE7O1lBRGdCLHlDQUF5QjtZQUE3SCw4QkFBZ0IsZUFBQSwyQ0FBQTtZQUNiLGVBQWE7WUFBYiwrQkFBYTs7O2lGRE9iLGlCQUFpQjtjQUw3QixTQUFTOzJCQUNFLGVBQWU7b0JBT3pCLElBQUk7a0JBREgsS0FBSztZQUdJLEtBQUs7a0JBQWQsTUFBTTtZQUVHLE9BQU87a0JBQWhCLE1BQU07WUFFRyxLQUFLO2tCQUFkLE1BQU07O2tGQVRJLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVzZXJNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9Vc2VyTW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbWZhLXBvcHVwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21mYS1wb3B1cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21mYS1wb3B1cC5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWZhUG9wdXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIHVzZXIgOiBVc2VyTW9kZWw7XG5cbiAgQE91dHB1dCgpIGNsZWFyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KCkgc3VjY2VzczogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpIGVycm9yOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgY2xvc2UoZXZlbnQpe1xuICAgIHRoaXMuY2xlYXIuZW1pdCgpO1xuICAgIHRoaXMudXNlciA9IG51bGw7XG4gIH1cblxuICBsb2dpblN1Y2Nlc3MoZXZlbnQpe1xuICAgIHRoaXMuc3VjY2Vzcy5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHJlc2V0KGV2ZW50KXtcbiAgICB0aGlzLmVycm9yLmVtaXQoZXZlbnQpO1xuICB9XG5cbn1cbiIsIjxwLWRpYWxvZyBbdmlzaWJsZV09XCJ0cnVlXCIgW21vZGFsXT1cInRydWVcIiBhcHBlbmRUbz1cImJvZHlcIiBbYnJlYWtwb2ludHNdPVwieyc5NjBweCc6ICc0MHZ3JywgJzY0MHB4JzogJzEwMHZ3J31cIiBbc3R5bGVdPVwie3dpZHRoOiAnNTB2dyd9XCIgcG9zaXRpb249XCJ0b3BcIj5cclxuICAgIDxhcHAtbWZhIFt1c2VyXT1cInVzZXJcIiAoc3VjY2Vzcyk9XCJsb2dpblN1Y2Nlc3MoJGV2ZW50KVwiIChjbGVhcik9XCJjbG9zZSgkZXZlbnQpXCI+PC9hcHAtbWZhPlxyXG48L3AtZGlhbG9nPiJdfQ==
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWZhLXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZmEtcG9wdXAvbWZhLXBvcHVwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZmEtcG9wdXAvbWZhLXBvcHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVEvRSxNQUFNLE9BQU8saUJBQWlCO0lBb0I1QjtRQU5VLFVBQUssR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUU5QyxZQUFPLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFaEQsVUFBSyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRXhDLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSztRQUNULElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFLO1FBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSztRQUNULElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7a0ZBckNVLGlCQUFpQjtvRUFBakIsaUJBQWlCO1lDUjlCLG1DQUE0SjtZQUFsSiw4SUFBcUI7WUFDM0Isa0NBQW9JO1lBQTdHLHlHQUFXLHdCQUFvQixJQUFDLHdGQUE4RCxpQkFBYSxJQUEzRTtZQUE2RSxpQkFBVSxFQUFBOztZQUQvQix5Q0FBeUI7WUFBbEkscUNBQXFCLGVBQUEsMkNBQUE7WUFDbEIsZUFBYTtZQUFiLCtCQUFhLG9DQUFBLHdCQUFBOzs7aUZET2IsaUJBQWlCO2NBTDdCLFNBQVM7MkJBQ0UsZUFBZTtvQkFPekIsSUFBSTtrQkFESCxLQUFLO1lBSU4sYUFBYTtrQkFEWixLQUFLO1lBSU4sT0FBTztrQkFETixLQUFLO1lBSUcsT0FBTztrQkFBZixLQUFLO1lBRUksS0FBSztrQkFBZCxNQUFNO1lBRUcsT0FBTztrQkFBaEIsTUFBTTtZQUVHLEtBQUs7a0JBQWQsTUFBTTs7a0ZBbEJJLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1VzZXJNb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1tZmEtcG9wdXAnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZmEtcG9wdXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21mYS1wb3B1cC5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE1mYVBvcHVwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KClcclxuICB1c2VyIDogVXNlck1vZGVsO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHJldHVybmluZ1VzZXI6IGJvb2xlYW47XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZGlzcGxheTogYm9vbGVhbjtcclxuXHJcbiAgLy9JZiBzcGVjaWZpZWQsIGl0IHdpbGwgY2hhbmdlIHRoZSBkZWZhdWx0IGhlYWRpbmcgb24gdGhlIGNvbXBvbmVudCB3aXRoIHRoZSBvbmNlIHNwZWNpZmllZCBpbiB0aGlzIGZpZWxkLlxyXG4gIEBJbnB1dCgpIGhlYWRpbmcgOiBzdHJpbmc7XHJcblxyXG4gIEBPdXRwdXQoKSBjbGVhcjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKSBzdWNjZXNzOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpIGVycm9yOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBjbG9zZShldmVudCl7XHJcbiAgICB0aGlzLmNsZWFyLmVtaXQoKTtcclxuICAgIHRoaXMudXNlciA9IG51bGw7XHJcbiAgICB0aGlzLmRpc3BsYXkgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIGxvZ2luU3VjY2VzcyhldmVudCl7XHJcbiAgICB0aGlzLnN1Y2Nlc3MuZW1pdChldmVudCk7XHJcbiAgfVxyXG5cclxuICByZXNldChldmVudCl7XHJcbiAgICB0aGlzLmVycm9yLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPHAtZGlhbG9nIFsodmlzaWJsZSldPVwiZGlzcGxheVwiIFttb2RhbF09XCJ0cnVlXCIgYXBwZW5kVG89XCJib2R5XCIgW2JyZWFrcG9pbnRzXT1cInsnOTYwcHgnOiAnNDB2dycsICc2NDBweCc6ICcxMDB2dyd9XCIgW3N0eWxlXT1cInt3aWR0aDogJzUwdncnfVwiIHBvc2l0aW9uPVwidG9wXCI+XHJcbiAgICA8YXBwLW1mYSBbdXNlcl09XCJ1c2VyXCIgKHN1Y2Nlc3MpPVwibG9naW5TdWNjZXNzKCRldmVudClcIiBbcmV0dXJuaW5nVXNlcl09XCJyZXR1cm5pbmdVc2VyXCIgW2hlYWRpbmddPVwiaGVhZGluZ1wiIChjbGVhcik9XCJjbG9zZSgkZXZlbnQpXCI+PC9hcHAtbWZhPlxyXG48L3AtZGlhbG9nPiJdfQ==
@@ -0,0 +1,260 @@
1
+ import { Component, EventEmitter, Inject, Input, Output } from '@angular/core';
2
+ import { Validators } from '@angular/forms';
3
+ import { DOCUMENT } from '@angular/common';
4
+ import { catchError, throwError } from 'rxjs';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../services/login/login.service";
7
+ import * as i2 from "@angular/forms";
8
+ import * as i3 from "../../services/util/util.service";
9
+ import * as i4 from "@ionic/angular";
10
+ import * as i5 from "@angular/router";
11
+ import * as i6 from "../../services/claimant-service/claimant.service";
12
+ import * as i7 from "../../services/claimant-service/claimant-usps-redirect.service";
13
+ import * as i8 from "@angular/common";
14
+ import * as i9 from "primeng/dialog";
15
+ import * as i10 from "../error/error.component";
16
+ function Mfa2Component_div_10_Template(rf, ctx) { if (rf & 1) {
17
+ i0.ɵɵelementStart(0, "div", 12);
18
+ i0.ɵɵtext(1, " The validation code entered does not match our records, please try again. ");
19
+ i0.ɵɵelementEnd();
20
+ } }
21
+ function Mfa2Component_a_16_Template(rf, ctx) { if (rf & 1) {
22
+ const _r3 = i0.ɵɵgetCurrentView();
23
+ i0.ɵɵelementStart(0, "a", 9);
24
+ i0.ɵɵlistener("click", function Mfa2Component_a_16_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.close()); });
25
+ i0.ɵɵtext(1, " Change Phone Number ");
26
+ i0.ɵɵelementEnd();
27
+ } }
28
+ const _c0 = () => ({ required: "Authcode is required." });
29
+ export class Mfa2Component {
30
+ constructor(ls, fb, util, nav, document, router, cs, ur) {
31
+ this.ls = ls;
32
+ this.fb = fb;
33
+ this.util = util;
34
+ this.nav = nav;
35
+ this.document = document;
36
+ this.router = router;
37
+ this.cs = cs;
38
+ this.ur = ur;
39
+ this.returningUser = false;
40
+ this.display = false;
41
+ this.clear = new EventEmitter();
42
+ this.success = new EventEmitter();
43
+ this.error = new EventEmitter();
44
+ this.incorrectGuess = false;
45
+ }
46
+ ngOnInit() {
47
+ this.initilizeForm();
48
+ }
49
+ ngOnDestroy() {
50
+ this.display = false;
51
+ }
52
+ initilizeForm() {
53
+ this.otpAttemptCount = 0;
54
+ this.vCodeForm = this.fb.group({
55
+ vCode: [null, [Validators.required]],
56
+ });
57
+ }
58
+ get vCode() {
59
+ return this.vCodeForm.get('vCode');
60
+ }
61
+ close() {
62
+ this.display = false;
63
+ if (this.form?.value?.verification) {
64
+ this.form.value.verification = null;
65
+ }
66
+ this.clear.emit();
67
+ }
68
+ aboutUs() {
69
+ this.document.location.href =
70
+ 'https://www.dol.ks.gov/labor-market-information/contact-us';
71
+ }
72
+ signIn() {
73
+ if (!this.vCodeForm.valid) {
74
+ console.error(this.vCodeForm);
75
+ return;
76
+ }
77
+ let cleanedString;
78
+ if (this.form?.value?.phone) {
79
+ const decodedString = decodeURIComponent(this.form.value.phone);
80
+ // Remove any non-numeric characters
81
+ cleanedString = decodedString.replace(/[^0-9]/g, '');
82
+ }
83
+ this.util.showLoader();
84
+ this.ls
85
+ .verifyOtpForPhoneNumber(this.vCode.value, this.form?.value?.phone
86
+ ? cleanedString
87
+ : this.verificationPreference.phone, this.returningUser, this.ssn)
88
+ .subscribe((res) => {
89
+ if (res.message == 'Y') {
90
+ this.incorrectGuess = false;
91
+ this.display = false;
92
+ this.success.emit();
93
+ }
94
+ else if (res.message == 'N') {
95
+ console.error(this.vCodeForm);
96
+ this.incorrectGuess = true;
97
+ this.error.emit('Incorrect Validation Code');
98
+ }
99
+ this.util.hideLoader();
100
+ }, (err) => {
101
+ const errorMsgArray = err.msg;
102
+ const errorMsgString = errorMsgArray[0];
103
+ const specificMessage = 'Claimant Account is Locked - OTP attempts exceeded';
104
+ const isLocked = errorMsgString.includes(specificMessage);
105
+ if (isLocked) {
106
+ this.clear.emit();
107
+ this.uspsRedirectWithoutLogout(err);
108
+ }
109
+ else {
110
+ console.log('Error::', err);
111
+ this.error.emit(err);
112
+ }
113
+ });
114
+ }
115
+ uspsRedirectWithoutLogout(err) {
116
+ this.display = false;
117
+ this.clear.emit(err);
118
+ this.ur
119
+ .generateURLForUSPS()
120
+ .pipe(catchError((error) => {
121
+ this.util.showError('Failed to retrieve the data');
122
+ return throwError(() => new Error(error));
123
+ }))
124
+ .subscribe((response) => {
125
+ if (response !== null) {
126
+ this.uspsRedirectUrl = response.uspsUrl;
127
+ this.display = false;
128
+ if (err != null) {
129
+ this.clear.emit(err);
130
+ }
131
+ this.util.hideLoader();
132
+ this.ls.logout();
133
+ this.router.navigate(['/usps-redirect', this.uspsRedirectUrl]);
134
+ }
135
+ else {
136
+ this.util.info('Empty response received');
137
+ }
138
+ });
139
+ }
140
+ uspsRedirect(err) {
141
+ this.display = false;
142
+ this.clear.emit(err);
143
+ this.ur
144
+ .generateURLForUSPS()
145
+ .pipe(catchError((error) => {
146
+ this.util.showError('Failed to retrieve the data');
147
+ return throwError(() => new Error(error));
148
+ }))
149
+ .subscribe((response) => {
150
+ if (response !== null) {
151
+ this.uspsRedirectUrl = response.uspsUrl;
152
+ this.display = false;
153
+ if (err != null) {
154
+ this.clear.emit(err);
155
+ }
156
+ this.util.hideLoader();
157
+ this.cs.lockClaimantAccount(this.ssn).subscribe({
158
+ next: (res) => { },
159
+ error: (err) => {
160
+ if (err.msg[0].includes('Claimant Account is Locked - OTP attempts exceeded')) {
161
+ this.ls.logout();
162
+ this.router.navigate(['/usps-redirect', this.uspsRedirectUrl]);
163
+ }
164
+ },
165
+ });
166
+ }
167
+ else {
168
+ this.util.info('Empty response received');
169
+ }
170
+ });
171
+ }
172
+ regenerateOtp() {
173
+ let phone = this.form?.value?.phone || this.verificationPreference.phone;
174
+ let type = this.form?.value?.verification ||
175
+ this.verificationPreference.verification;
176
+ this.ls.generateOtpForNewUserCreation(phone, type).subscribe((res) => {
177
+ // Response is any of the String as mentioned below:
178
+ // 1) "ATTEMPT_EXCEEDED";
179
+ // 2) "Y";
180
+ // 3) "N";
181
+ console.log('Access code sent successfully.');
182
+ }, (err) => {
183
+ console.log('Could not generate the authentication otp code.');
184
+ });
185
+ }
186
+ logout() {
187
+ this.nav.navigateRoot('/landing');
188
+ this.ls.logout();
189
+ }
190
+ static { this.ɵfac = function Mfa2Component_Factory(t) { return new (t || Mfa2Component)(i0.ɵɵdirectiveInject(i1.LoginService), i0.ɵɵdirectiveInject(i2.UntypedFormBuilder), i0.ɵɵdirectiveInject(i3.UtilService), i0.ɵɵdirectiveInject(i4.NavController), i0.ɵɵdirectiveInject(DOCUMENT), i0.ɵɵdirectiveInject(i5.Router), i0.ɵɵdirectiveInject(i6.ClaimantService), i0.ɵɵdirectiveInject(i7.ClaimantUspsRedirectService)); }; }
191
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Mfa2Component, selectors: [["app-mfa2"]], inputs: { returningUser: "returningUser", user: "user", form: "form", display: "display", verificationPreference: "verificationPreference", ssn: "ssn" }, outputs: { clear: "clear", success: "success", error: "error" }, decls: 19, vars: 10, consts: [["appendTo", "body", "position", "top", 3, "visible", "modal", "visibleChange"], [3, "formGroup"], [1, "dialog-content"], [1, "heading"], ["formControlName", "vCode", "maxlength", "6", "minlength", "6", "autofocus", "", "autocomplete", "off", 3, "onChange", "keyup.enter"], [3, "field", "form", "errDef"], ["class", "errorText", 4, "ngIf"], ["shape", "round", "type", "submit", "color", "success", 3, "disabled", "click"], ["slot", "start", "name", "log-in-outline"], ["shape", "round", 3, "click"], ["shape", "round", 3, "click", 4, "ngIf"], [3, "click"], [1, "errorText"]], template: function Mfa2Component_Template(rf, ctx) { if (rf & 1) {
192
+ i0.ɵɵelementStart(0, "p-dialog", 0);
193
+ i0.ɵɵlistener("visibleChange", function Mfa2Component_Template_p_dialog_visibleChange_0_listener($event) { return ctx.display = $event; });
194
+ i0.ɵɵelementStart(1, "form", 1)(2, "div", 2)(3, "h4", 3);
195
+ i0.ɵɵtext(4, " Validation code has been sent to the phone number entered ");
196
+ i0.ɵɵelementEnd();
197
+ i0.ɵɵelementStart(5, "div")(6, "label");
198
+ i0.ɵɵtext(7, "Enter Validation Code Received: ");
199
+ i0.ɵɵelementEnd();
200
+ i0.ɵɵelementStart(8, "input", 4);
201
+ i0.ɵɵlistener("onChange", function Mfa2Component_Template_input_onChange_8_listener() { return ctx.incorrectGuess = false; })("keyup.enter", function Mfa2Component_Template_input_keyup_enter_8_listener() { return ctx.signIn(); });
202
+ i0.ɵɵelementEnd();
203
+ i0.ɵɵelement(9, "app-error", 5);
204
+ i0.ɵɵtemplate(10, Mfa2Component_div_10_Template, 2, 0, "div", 6);
205
+ i0.ɵɵelementEnd();
206
+ i0.ɵɵelementStart(11, "ion-button", 7);
207
+ i0.ɵɵlistener("click", function Mfa2Component_Template_ion_button_click_11_listener() { return ctx.signIn(); });
208
+ i0.ɵɵelement(12, "ion-icon", 8);
209
+ i0.ɵɵtext(13, " Submit ");
210
+ i0.ɵɵelementEnd();
211
+ i0.ɵɵelementStart(14, "a", 9);
212
+ i0.ɵɵlistener("click", function Mfa2Component_Template_a_click_14_listener() { return ctx.regenerateOtp(); });
213
+ i0.ɵɵtext(15, " Resend Verification Code ");
214
+ i0.ɵɵelementEnd();
215
+ i0.ɵɵtemplate(16, Mfa2Component_a_16_Template, 2, 0, "a", 10);
216
+ i0.ɵɵelementStart(17, "a", 11);
217
+ i0.ɵɵlistener("click", function Mfa2Component_Template_a_click_17_listener() { return ctx.returningUser ? ctx.uspsRedirect(null) : ctx.aboutUs(); });
218
+ i0.ɵɵtext(18, " Unable to verify ");
219
+ i0.ɵɵelementEnd()()()();
220
+ } if (rf & 2) {
221
+ i0.ɵɵproperty("visible", ctx.display)("modal", true);
222
+ i0.ɵɵadvance(1);
223
+ i0.ɵɵproperty("formGroup", ctx.vCodeForm);
224
+ i0.ɵɵadvance(8);
225
+ i0.ɵɵproperty("field", ctx.vCode)("form", ctx.vCodeForm)("errDef", i0.ɵɵpureFunction0(9, _c0));
226
+ i0.ɵɵadvance(1);
227
+ i0.ɵɵproperty("ngIf", ctx.incorrectGuess);
228
+ i0.ɵɵadvance(1);
229
+ i0.ɵɵpropertyInterpolate("disabled", ctx.vCodeForm.invalid);
230
+ i0.ɵɵadvance(5);
231
+ i0.ɵɵproperty("ngIf", !ctx.returningUser);
232
+ } }, dependencies: [i4.IonButton, i4.IonIcon, i8.NgIf, i2.ɵNgNoValidate, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i2.MinLengthValidator, i2.MaxLengthValidator, i2.FormGroupDirective, i2.FormControlName, i9.Dialog, i10.ErrorComponent], styles: [".dialog-content[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{display:block;margin-bottom:15px}.dialog-content[_ngcontent-%COMP%]{margin-bottom:20px}a[_ngcontent-%COMP%]{cursor:pointer}.errorText[_ngcontent-%COMP%]{color:red}"] }); }
233
+ }
234
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(Mfa2Component, [{
235
+ type: Component,
236
+ args: [{ selector: 'app-mfa2', template: "<p-dialog [(visible)]=\"display\" [modal]=\"true\" appendTo=\"body\" position=\"top\">\r\n <form [formGroup]=\"vCodeForm\">\r\n <div class=\"dialog-content\">\r\n <h4 class=\"heading\">\r\n Validation code has been sent to the phone number entered\r\n </h4>\r\n <div>\r\n <label>Enter Validation Code Received: </label>\r\n <input formControlName=\"vCode\" maxlength=\"6\" minlength=\"6\" (onChange)=\"incorrectGuess=false\" (keyup.enter)=\"signIn()\" autofocus autocomplete=\"off\">\r\n <app-error [field]='vCode' [form]=\"vCodeForm\" [errDef]=\"{ required: 'Authcode is required.'}\">\r\n </app-error>\r\n <div *ngIf=\"incorrectGuess\" class=\"errorText\">\r\n The validation code entered does not match our records, please try again.\r\n </div>\r\n </div>\r\n\r\n <ion-button shape=\"round\" type=\"submit\" (click)=\"signIn()\" color=\"success\" disabled=\"{{vCodeForm.invalid}}\">\r\n <ion-icon slot=\"start\" name=\"log-in-outline\"></ion-icon>\r\n Submit\r\n </ion-button>\r\n <a shape=\"round\" (click)=\"regenerateOtp()\">\r\n Resend Verification Code\r\n </a>\r\n <a *ngIf=\"!returningUser\" shape=\"round\" (click)=\"close()\">\r\n Change Phone Number\r\n </a>\r\n <a (click)=\"returningUser?uspsRedirect(null):aboutUs()\">\r\n Unable to verify\r\n </a>\r\n\r\n </div>\r\n </form>\r\n</p-dialog>\r\n ", styles: [".dialog-content>*{display:block;margin-bottom:15px}.dialog-content{margin-bottom:20px}a{cursor:pointer}.errorText{color:red}\n"] }]
237
+ }], () => [{ type: i1.LoginService }, { type: i2.UntypedFormBuilder }, { type: i3.UtilService }, { type: i4.NavController }, { type: Document, decorators: [{
238
+ type: Inject,
239
+ args: [DOCUMENT]
240
+ }] }, { type: i5.Router }, { type: i6.ClaimantService }, { type: i7.ClaimantUspsRedirectService }], { returningUser: [{
241
+ type: Input
242
+ }], user: [{
243
+ type: Input
244
+ }], form: [{
245
+ type: Input
246
+ }], display: [{
247
+ type: Input
248
+ }], verificationPreference: [{
249
+ type: Input
250
+ }], ssn: [{
251
+ type: Input
252
+ }], clear: [{
253
+ type: Output
254
+ }], success: [{
255
+ type: Output
256
+ }], error: [{
257
+ type: Output
258
+ }] }); })();
259
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(Mfa2Component, { className: "Mfa2Component", filePath: "lib\\components\\mfa2\\mfa2.component.ts", lineNumber: 18 }); })();
260
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWZhMi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbWZhMi9tZmEyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZmEyL21mYTIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUF3QyxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUtsRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFJM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7SUNDdEMsK0JBQThDO0lBQzVDLDJGQUNGO0lBQUEsaUJBQU07Ozs7SUFVUiw0QkFBMEQ7SUFBbEIsb0pBQVMsZUFBQSxjQUFPLENBQUEsSUFBQztJQUN2RCxxQ0FDRjtJQUFBLGlCQUFJOzs7QURSVixNQUFNLE9BQU8sYUFBYTtJQTBCeEIsWUFDUyxFQUFnQixFQUNoQixFQUFzQixFQUNyQixJQUFpQixFQUNsQixHQUFrQixFQUNDLFFBQWtCLEVBQ3BDLE1BQWMsRUFDZCxFQUFtQixFQUNuQixFQUErQjtRQVBoQyxPQUFFLEdBQUYsRUFBRSxDQUFjO1FBQ2hCLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3JCLFNBQUksR0FBSixJQUFJLENBQWE7UUFDbEIsUUFBRyxHQUFILEdBQUcsQ0FBZTtRQUNDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDcEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLE9BQUUsR0FBRixF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SUFBQztZQUNyRCxtQ0FDRjtZQUFBLGlCQUFJLEVBQUEsRUFBQSxFQUFBOztZQTVCQSxxQ0FBcUIsZUFBQTtZQUN2QixlQUF1QjtZQUF2Qix5Q0FBdUI7WUFRWixlQUFlO1lBQWYsaUNBQWUsdUJBQUEsc0NBQUE7WUFFcEIsZUFBb0I7WUFBcEIseUNBQW9CO1lBSytDLGVBQWdDO1lBQWhDLDJEQUFnQztZQU92RyxlQUFvQjtZQUFwQix5Q0FBb0I7OztpRkROakIsYUFBYTtjQUx6QixTQUFTOzJCQUNFLFVBQVU7O3NCQW1DakIsTUFBTTt1QkFBQyxRQUFRO2tIQTdCWCxhQUFhO2tCQURuQixLQUFLO1lBR0csSUFBSTtrQkFBWixLQUFLO1lBRUcsSUFBSTtrQkFBWixLQUFLO1lBRUcsT0FBTztrQkFBZixLQUFLO1lBRUcsc0JBQXNCO2tCQUE5QixLQUFLO1lBRUcsR0FBRztrQkFBWCxLQUFLO1lBRUksS0FBSztrQkFBZCxNQUFNO1lBRUcsT0FBTztrQkFBaEIsTUFBTTtZQUVHLEtBQUs7a0JBQWQsTUFBTTs7a0ZBbEJJLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBOYXZDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xyXG5pbXBvcnQgeyBVc2VyTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvVXNlck1vZGVsJztcclxuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbG9naW4vbG9naW4uc2VydmljZSc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbC91dGlsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IENsYWltYW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NsYWltYW50LXNlcnZpY2UvY2xhaW1hbnQuc2VydmljZSc7XHJcbmltcG9ydCB7IENsYWltYW50VXNwc1JlZGlyZWN0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NsYWltYW50LXNlcnZpY2UvY2xhaW1hbnQtdXNwcy1yZWRpcmVjdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtbWZhMicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21mYTIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21mYTIuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1mYTJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHJldHVybmluZ1VzZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgdXNlcjogVXNlck1vZGVsO1xyXG5cclxuICBASW5wdXQoKSBmb3JtO1xyXG5cclxuICBASW5wdXQoKSBkaXNwbGF5OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpIHZlcmlmaWNhdGlvblByZWZlcmVuY2U7XHJcblxyXG4gIEBJbnB1dCgpIHNzbjtcclxuXHJcbiAgQE91dHB1dCgpIGNsZWFyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpIHN1Y2Nlc3M6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAT3V0cHV0KCkgZXJyb3I6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBwdWJsaWMgdkNvZGVGb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG5cclxuICBwdWJsaWMgb3RwQXR0ZW1wdENvdW50OiBudW1iZXI7XHJcbiAgcHVibGljIGluY29ycmVjdEd1ZXNzOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHVzcHNSZWRpcmVjdFVybDogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBsczogTG9naW5TZXJ2aWNlLFxyXG4gICAgcHVibGljIGZiOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHV0aWw6IFV0aWxTZXJ2aWNlLFxyXG4gICAgcHVibGljIG5hdjogTmF2Q29udHJvbGxlcixcclxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50LFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgY3M6IENsYWltYW50U2VydmljZSxcclxuICAgIHByaXZhdGUgdXI6IENsYWltYW50VXNwc1JlZGlyZWN0U2VydmljZVxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmluaXRpbGl6ZUZvcm0oKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5kaXNwbGF5ID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBpbml0aWxpemVGb3JtKCkge1xyXG4gICAgdGhpcy5vdHBBdHRlbXB0Q291bnQgPSAwO1xyXG4gICAgdGhpcy52Q29kZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgdkNvZGU6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXQgdkNvZGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy52Q29kZUZvcm0uZ2V0KCd2Q29kZScpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLmRpc3BsYXkgPSBmYWxzZTtcclxuICAgIGlmICh0aGlzLmZvcm0/LnZhbHVlPy52ZXJpZmljYXRpb24pIHtcclxuICAgICAgdGhpcy5mb3JtLnZhbHVlLnZlcmlmaWNhdGlvbiA9IG51bGw7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNsZWFyLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIGFib3V0VXMoKSB7XHJcbiAgICB0aGlzLmRvY3VtZW50LmxvY2F0aW9uLmhyZWYgPVxyXG4gICAgICAnaHR0cHM6Ly93d3cuZG9sLmtzLmdvdi9sYWJvci1tYXJrZXQtaW5mb3JtYXRpb24vY29udGFjdC11cyc7XHJcbiAgfVxyXG5cclxuICBzaWduSW4oKSB7XHJcbiAgICBpZiAoIXRoaXMudkNvZGVGb3JtLnZhbGlkKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IodGhpcy52Q29kZUZvcm0pO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBsZXQgY2xlYW5lZFN0cmluZztcclxuICAgIGlmICh0aGlzLmZvcm0/LnZhbHVlPy5waG9uZSkge1xyXG4gICAgICBjb25zdCBkZWNvZGVkU3RyaW5nID0gZGVjb2RlVVJJQ29tcG9uZW50KHRoaXMuZm9ybS52YWx1ZS5waG9uZSk7XHJcbiAgICAgIC8vIFJlbW92ZSBhbnkgbm9uLW51bWVyaWMgY2hhcmFjdGVyc1xyXG4gICAgICBjbGVhbmVkU3RyaW5nID0gZGVjb2RlZFN0cmluZy5yZXBsYWNlKC9bXjAtOV0vZywgJycpO1xyXG4gICAgfVxyXG4gICAgdGhpcy51dGlsLnNob3dMb2FkZXIoKTtcclxuICAgIHRoaXMubHNcclxuICAgICAgLnZlcmlmeU90cEZvclBob25lTnVtYmVyKFxyXG4gICAgICAgIHRoaXMudkNvZGUudmFsdWUsXHJcbiAgICAgICAgdGhpcy5mb3JtPy52YWx1ZT8ucGhvbmVcclxuICAgICAgICAgID8gY2xlYW5lZFN0cmluZ1xyXG4gICAgICAgICAgOiB0aGlzLnZlcmlmaWNhdGlvblByZWZlcmVuY2UucGhvbmUsXHJcbiAgICAgICAgdGhpcy5yZXR1cm5pbmdVc2VyLFxyXG4gICAgICAgIHRoaXMuc3NuXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMubWVzc2FnZSA9PSAnWScpIHtcclxuICAgICAgICAgICAgdGhpcy5pbmNvcnJlY3RHdWVzcyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmRpc3BsYXkgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5zdWNjZXNzLmVtaXQoKTtcclxuICAgICAgICAgIH0gZWxzZSBpZiAocmVzLm1lc3NhZ2UgPT0gJ04nKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IodGhpcy52Q29kZUZvcm0pO1xyXG4gICAgICAgICAgICB0aGlzLmluY29ycmVjdEd1ZXNzID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5lcnJvci5lbWl0KCdJbmNvcnJlY3QgVmFsaWRhdGlvbiBDb2RlJyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnV0aWwuaGlkZUxvYWRlcigpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgKGVycikgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZXJyb3JNc2dBcnJheSA9IGVyci5tc2c7XHJcbiAgICAgICAgICBjb25zdCBlcnJvck1zZ1N0cmluZyA9IGVycm9yTXNnQXJyYXlbMF07XHJcbiAgICAgICAgICBjb25zdCBzcGVjaWZpY01lc3NhZ2UgPVxyXG4gICAgICAgICAgICAnQ2xhaW1hbnQgQWNjb3VudCBpcyBMb2NrZWQgLSBPVFAgYXR0ZW1wdHMgZXhjZWVkZWQnO1xyXG4gICAgICAgICAgY29uc3QgaXNMb2NrZWQgPSBlcnJvck1zZ1N0cmluZy5pbmNsdWRlcyhzcGVjaWZpY01lc3NhZ2UpO1xyXG4gICAgICAgICAgaWYgKGlzTG9ja2VkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xlYXIuZW1pdCgpO1xyXG4gICAgICAgICAgICB0aGlzLnVzcHNSZWRpcmVjdFdpdGhvdXRMb2dvdXQoZXJyKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdFcnJvcjo6JywgZXJyKTtcclxuICAgICAgICAgICAgdGhpcy5lcnJvci5lbWl0KGVycik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgdXNwc1JlZGlyZWN0V2l0aG91dExvZ291dChlcnIpIHtcclxuICAgIHRoaXMuZGlzcGxheSA9IGZhbHNlO1xyXG4gICAgdGhpcy5jbGVhci5lbWl0KGVycik7XHJcbiAgICB0aGlzLnVyXHJcbiAgICAgIC5nZW5lcmF0ZVVSTEZvclVTUFMoKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xyXG4gICAgICAgICAgdGhpcy51dGlsLnNob3dFcnJvcignRmFpbGVkIHRvIHJldHJpZXZlIHRoZSBkYXRhJyk7XHJcbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgRXJyb3IoZXJyb3IpKTtcclxuICAgICAgICB9KVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3BvbnNlOiBhbnkgfCBudWxsKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlICE9PSBudWxsKSB7XHJcbiAgICAgICAgICB0aGlzLnVzcHNSZWRpcmVjdFVybCA9IHJlc3BvbnNlLnVzcHNVcmw7XHJcbiAgICAgICAgICB0aGlzLmRpc3BsYXkgPSBmYWxzZTtcclxuICAgICAgICAgIGlmKGVyciAhPSBudWxsKXtcclxuICAgICAgICAgICAgdGhpcy5jbGVhci5lbWl0KGVycik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnV0aWwuaGlkZUxvYWRlcigpO1xyXG4gICAgICAgICAgdGhpcy5scy5sb2dvdXQoKTtcclxuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3VzcHMtcmVkaXJlY3QnLCB0aGlzLnVzcHNSZWRpcmVjdFVybF0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnV0aWwuaW5mbygnRW1wdHkgcmVzcG9uc2UgcmVjZWl2ZWQnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdXNwc1JlZGlyZWN0KGVycikge1xyXG4gICAgdGhpcy5kaXNwbGF5ID0gZmFsc2U7XHJcbiAgICB0aGlzLmNsZWFyLmVtaXQoZXJyKTtcclxuICAgIHRoaXMudXJcclxuICAgICAgLmdlbmVyYXRlVVJMRm9yVVNQUygpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnV0aWwuc2hvd0Vycm9yKCdGYWlsZWQgdG8gcmV0cmlldmUgdGhlIGRhdGEnKTtcclxuICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcihlcnJvcikpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZSgocmVzcG9uc2U6IGFueSB8IG51bGwpID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UgIT09IG51bGwpIHtcclxuICAgICAgICAgIHRoaXMudXNwc1JlZGlyZWN0VXJsID0gcmVzcG9uc2UudXNwc1VybDtcclxuICAgICAgICAgIHRoaXMuZGlzcGxheSA9IGZhbHNlO1xyXG4gICAgICAgICAgaWYoZXJyICE9IG51bGwpe1xyXG4gICAgICAgICAgICB0aGlzLmNsZWFyLmVtaXQoZXJyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMudXRpbC5oaWRlTG9hZGVyKCk7XHJcbiAgICAgICAgICB0aGlzLmNzLmxvY2tDbGFpbWFudEFjY291bnQodGhpcy5zc24pLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgIG5leHQ6IChyZXMpID0+IHt9LFxyXG4gICAgICAgICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgIGVyci5tc2dbMF0uaW5jbHVkZXMoXHJcbiAgICAgICAgICAgICAgICAgICdDbGFpbWFudCBBY2NvdW50IGlzIExvY2tlZCAtIE9UUCBhdHRlbXB0cyBleGNlZWRlZCdcclxuICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubHMubG9nb3V0KCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy91c3BzLXJlZGlyZWN0JywgdGhpcy51c3BzUmVkaXJlY3RVcmxdKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy51dGlsLmluZm8oJ0VtcHR5IHJlc3BvbnNlIHJlY2VpdmVkJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG5cclxuICByZWdlbmVyYXRlT3RwKCkge1xyXG4gICAgbGV0IHBob25lID0gdGhpcy5mb3JtPy52YWx1ZT8ucGhvbmUgfHwgdGhpcy52ZXJpZmljYXRpb25QcmVmZXJlbmNlLnBob25lO1xyXG4gICAgbGV0IHR5cGUgPVxyXG4gICAgICB0aGlzLmZvcm0/LnZhbHVlPy52ZXJpZmljYXRpb24gfHxcclxuICAgICAgdGhpcy52ZXJpZmljYXRpb25QcmVmZXJlbmNlLnZlcmlmaWNhdGlvbjtcclxuICAgIHRoaXMubHMuZ2VuZXJhdGVPdHBGb3JOZXdVc2VyQ3JlYXRpb24ocGhvbmUsIHR5cGUpLnN1YnNjcmliZShcclxuICAgICAgKHJlcykgPT4ge1xyXG4gICAgICAgIC8vIFJlc3BvbnNlIGlzIGFueSBvZiB0aGUgU3RyaW5nIGFzIG1lbnRpb25lZCBiZWxvdzpcclxuICAgICAgICAvLyAxKSBcIkFUVEVNUFRfRVhDRUVERURcIjtcclxuICAgICAgICAvLyAyKSBcIllcIjtcclxuICAgICAgICAvLyAzKSBcIk5cIjtcclxuICAgICAgICBjb25zb2xlLmxvZygnQWNjZXNzIGNvZGUgc2VudCBzdWNjZXNzZnVsbHkuJyk7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnIpID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZygnQ291bGQgbm90IGdlbmVyYXRlIHRoZSBhdXRoZW50aWNhdGlvbiBvdHAgY29kZS4nKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGxvZ291dCgpIHtcclxuICAgIHRoaXMubmF2Lm5hdmlnYXRlUm9vdCgnL2xhbmRpbmcnKTtcclxuICAgIHRoaXMubHMubG9nb3V0KCk7XHJcbiAgfVxyXG59IiwiPHAtZGlhbG9nIFsodmlzaWJsZSldPVwiZGlzcGxheVwiIFttb2RhbF09XCJ0cnVlXCIgYXBwZW5kVG89XCJib2R5XCIgcG9zaXRpb249XCJ0b3BcIj5cclxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cInZDb2RlRm9ybVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImRpYWxvZy1jb250ZW50XCI+XHJcbiAgICAgIDxoNCBjbGFzcz1cImhlYWRpbmdcIj5cclxuICAgICAgICBWYWxpZGF0aW9uIGNvZGUgaGFzIGJlZW4gc2VudCB0byB0aGUgcGhvbmUgbnVtYmVyIGVudGVyZWRcclxuICAgICAgPC9oND5cclxuICAgICAgPGRpdj5cclxuICAgICAgICA8bGFiZWw+RW50ZXIgVmFsaWRhdGlvbiBDb2RlIFJlY2VpdmVkOiA8L2xhYmVsPlxyXG4gICAgICAgIDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ2Q29kZVwiIG1heGxlbmd0aD1cIjZcIiBtaW5sZW5ndGg9XCI2XCIgKG9uQ2hhbmdlKT1cImluY29ycmVjdEd1ZXNzPWZhbHNlXCIgKGtleXVwLmVudGVyKT1cInNpZ25JbigpXCIgYXV0b2ZvY3VzIGF1dG9jb21wbGV0ZT1cIm9mZlwiPlxyXG4gICAgICAgIDxhcHAtZXJyb3IgW2ZpZWxkXT0ndkNvZGUnIFtmb3JtXT1cInZDb2RlRm9ybVwiIFtlcnJEZWZdPVwieyByZXF1aXJlZDogJ0F1dGhjb2RlIGlzIHJlcXVpcmVkLid9XCI+XHJcbiAgICAgICAgPC9hcHAtZXJyb3I+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImluY29ycmVjdEd1ZXNzXCIgY2xhc3M9XCJlcnJvclRleHRcIj5cclxuICAgICAgICAgIFRoZSB2YWxpZGF0aW9uIGNvZGUgZW50ZXJlZCBkb2VzIG5vdCBtYXRjaCBvdXIgcmVjb3JkcywgcGxlYXNlIHRyeSBhZ2Fpbi5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgdHlwZT1cInN1Ym1pdFwiIChjbGljayk9XCJzaWduSW4oKVwiIGNvbG9yPVwic3VjY2Vzc1wiIGRpc2FibGVkPVwie3t2Q29kZUZvcm0uaW52YWxpZH19XCI+XHJcbiAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJzdGFydFwiIG5hbWU9XCJsb2ctaW4tb3V0bGluZVwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgU3VibWl0XHJcbiAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgPGEgc2hhcGU9XCJyb3VuZFwiIChjbGljayk9XCJyZWdlbmVyYXRlT3RwKClcIj5cclxuICAgICAgICBSZXNlbmQgVmVyaWZpY2F0aW9uIENvZGVcclxuICAgICAgPC9hPlxyXG4gICAgICA8YSAqbmdJZj1cIiFyZXR1cm5pbmdVc2VyXCIgc2hhcGU9XCJyb3VuZFwiIChjbGljayk9XCJjbG9zZSgpXCI+XHJcbiAgICAgICAgQ2hhbmdlIFBob25lIE51bWJlclxyXG4gICAgICA8L2E+XHJcbiAgICAgIDxhIChjbGljayk9XCJyZXR1cm5pbmdVc2VyP3VzcHNSZWRpcmVjdChudWxsKTphYm91dFVzKClcIj5cclxuICAgICAgICBVbmFibGUgdG8gdmVyaWZ5XHJcbiAgICAgIDwvYT5cclxuXHJcbiAgICA8L2Rpdj5cclxuICA8L2Zvcm0+XHJcbjwvcC1kaWFsb2c+XHJcbiAgIl19