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

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 +2392 -1322
  2. package/esm2022/lib/components/add-participant/add-participant.component.mjs +159 -105
  3. package/esm2022/lib/components/add-payment/add-payment.component.mjs +59 -53
  4. package/esm2022/lib/components/add-wage/add-wage.component.mjs +161 -0
  5. package/esm2022/lib/components/address/address.component.mjs +287 -152
  6. package/esm2022/lib/components/address-popup/address-popup.component.mjs +97 -0
  7. package/esm2022/lib/components/address-suggestion/address-suggestion.component.mjs +289 -0
  8. package/esm2022/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.mjs +245 -0
  9. package/esm2022/lib/components/associate-ssn/associate-ssn.component.mjs +203 -0
  10. package/esm2022/lib/components/bank-details/bank-details.component.mjs +79 -219
  11. package/esm2022/lib/components/claim-info/claim-info.component.mjs +408 -0
  12. package/esm2022/lib/components/contact-us/contact-us.component.mjs +17 -43
  13. package/esm2022/lib/components/correspondence-download/correspondence-download.component.mjs +3 -9
  14. package/esm2022/lib/components/dashboard-card/dashboard-card.component.mjs +32 -4
  15. package/esm2022/lib/components/dependent-grid/dependent-grid.component.mjs +30 -15
  16. package/esm2022/lib/components/disclosure/disclosure.component.mjs +1 -1
  17. package/esm2022/lib/components/dropdown/dropdown.component.mjs +4 -4
  18. package/esm2022/lib/components/dropdown/dropdown.interface.mjs +1 -1
  19. package/esm2022/lib/components/dua-request-page/dua-request-page.component.mjs +596 -0
  20. package/esm2022/lib/components/dua-request-popup/dua-request-popup.component.mjs +356 -0
  21. package/esm2022/lib/components/email-update/email-update.component.mjs +63 -140
  22. package/esm2022/lib/components/employer-grid/employer-grid.component.mjs +422 -574
  23. package/esm2022/lib/components/employer-info/employer-info.component.mjs +319 -0
  24. package/esm2022/lib/components/employer-pay/employer-pay.component.mjs +238 -0
  25. package/esm2022/lib/components/employer-pay-grid/employer-pay-grid.component.mjs +302 -0
  26. package/esm2022/lib/components/error/error.component.mjs +22 -5
  27. package/esm2022/lib/components/farm-usage/farm-usage.component.mjs +172 -0
  28. package/esm2022/lib/components/fav-menu/fav-menu.component.mjs +1 -1
  29. package/esm2022/lib/components/file-uploader/file-uploader.component.mjs +178 -49
  30. package/esm2022/lib/components/footer/footer.component.mjs +112 -101
  31. package/esm2022/lib/components/gross-earnings/gross-earnings.component.mjs +201 -0
  32. package/esm2022/lib/components/header/header.component.mjs +440 -174
  33. package/esm2022/lib/components/history-page/history-page.component.mjs +571 -0
  34. package/esm2022/lib/components/idle-detector/idle-detector.component.mjs +25 -36
  35. package/esm2022/lib/components/idme/idme.component.mjs +84 -0
  36. package/esm2022/lib/components/info/info.component.mjs +4 -12
  37. package/esm2022/lib/components/job-search-result-page/job-search-result-page.component.mjs +16 -22
  38. package/esm2022/lib/components/job-title/job-title.component.mjs +92 -97
  39. package/esm2022/lib/components/legal-disclaimar/legal-disclaimar.component.mjs +143 -513
  40. package/esm2022/lib/components/link/link.component.mjs +1 -1
  41. package/esm2022/lib/components/menu/menu.component.mjs +68 -100
  42. package/esm2022/lib/components/mfa/mfa.component.mjs +158 -288
  43. package/esm2022/lib/components/mfa-popup/mfa-popup.component.mjs +11 -18
  44. package/esm2022/lib/components/money-expect/money-expect.component.mjs +158 -54
  45. package/esm2022/lib/components/offline-add-employer/offline-add-employer.component.mjs +3661 -0
  46. package/esm2022/lib/components/offline-bank-details/offline-bank-details.component.mjs +258 -0
  47. package/esm2022/lib/components/offline-employer-grid/offline-employer-grid.component.mjs +853 -0
  48. package/esm2022/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.mjs +251 -0
  49. package/esm2022/lib/components/profile/profile.component.mjs +749 -353
  50. package/esm2022/lib/components/profile-redirect/profile-redirect.component.mjs +108 -38
  51. package/esm2022/lib/components/proof-of-anything/proof-of-anything.component.mjs +261 -0
  52. package/esm2022/lib/components/proof-of-document-upload/proof-of-document-upload.component.mjs +560 -0
  53. package/esm2022/lib/components/questionnaire/AppValidators.mjs +296 -47
  54. package/esm2022/lib/components/questionnaire/account-success/account-success.page.mjs +110 -65
  55. package/esm2022/lib/components/questionnaire/common-success/common-success.page.mjs +377 -173
  56. package/esm2022/lib/components/questionnaire/dynamic-form-panel.component.mjs +76 -95
  57. package/esm2022/lib/components/questionnaire/dynamic-form-question.component.mjs +877 -1153
  58. package/esm2022/lib/components/questionnaire/dynamic-form.component.mjs +208 -699
  59. package/esm2022/lib/components/questionnaire/form-builder/form-builder.page.mjs +28 -22
  60. package/esm2022/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.mjs +128 -41
  61. package/esm2022/lib/components/questionnaire/question-control.service.mjs +2 -1
  62. package/esm2022/lib/components/questionnaire/question.service.mjs +5 -7
  63. package/esm2022/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.mjs +15 -29
  64. package/esm2022/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.mjs +497 -237
  65. package/esm2022/lib/components/scrollable-text/scrollable-text.component.mjs +25 -0
  66. package/esm2022/lib/components/search-employer/search-employer.component.mjs +155 -30
  67. package/esm2022/lib/components/select/select.component.mjs +5 -10
  68. package/esm2022/lib/components/sign-ssn/sign-ssn.component.mjs +3 -3
  69. package/esm2022/lib/components/sms/sms.component.mjs +336 -0
  70. package/esm2022/lib/components/ssn-reverify/ssn-reverify.component.mjs +52 -72
  71. package/esm2022/lib/components/user-login/user-login.component.mjs +139 -360
  72. package/esm2022/lib/components/wage-calculator/wage-calculator.component.mjs +527 -0
  73. package/esm2022/lib/components/wage-grid/wage-grid.component.mjs +274 -0
  74. package/esm2022/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.mjs +147 -0
  75. package/esm2022/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.mjs +167 -0
  76. package/esm2022/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +655 -387
  77. package/esm2022/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.mjs +125 -61
  78. package/esm2022/lib/components/weekly-certification/weekly-certification.component.mjs +828 -0
  79. package/esm2022/lib/components/weekly-confirmation/confirmation.component.mjs +129 -0
  80. package/esm2022/lib/components/weekly-interim-confirmation/interim-confirmation.component.mjs +136 -0
  81. package/esm2022/lib/components/weekly-summary-v2/summary.component-v2.mjs +72 -0
  82. package/esm2022/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.mjs +50 -0
  83. package/esm2022/lib/components/weekly-work-search-counter/work-search-counter.component.mjs +92 -0
  84. package/esm2022/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.mjs +1190 -0
  85. package/esm2022/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.mjs +690 -0
  86. package/esm2022/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.mjs +524 -0
  87. package/esm2022/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.mjs +394 -0
  88. package/esm2022/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.mjs +640 -0
  89. package/esm2022/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.mjs +33 -0
  90. package/esm2022/lib/enums/AddressValidationResponseEnum.mjs +9 -0
  91. package/esm2022/lib/enums/AddressValidationSourceFunctionEnum.mjs +5 -0
  92. package/esm2022/lib/guards/auth.guard.mjs +50 -2
  93. package/esm2022/lib/guards/no-login/no-login.guard.mjs +1 -1
  94. package/esm2022/lib/interceptors/error-interceptor/http-error-interceptor.mjs +51 -3
  95. package/esm2022/lib/interceptors/header-interceptor/http-header.interceptor.mjs +1 -1
  96. package/esm2022/lib/models/ActiveClaimModel.mjs +3 -0
  97. package/esm2022/lib/models/CountyModel.mjs +3 -0
  98. package/esm2022/lib/models/DuaAppDataModel.mjs +3 -0
  99. package/esm2022/lib/models/DuaRequestModel.mjs +3 -0
  100. package/esm2022/lib/models/DuaRetroWeeksComponentModel.mjs +6 -0
  101. package/esm2022/lib/models/EmployerDetailSearchResult.mjs +1 -1
  102. package/esm2022/lib/models/EmployerInfoComponentModel.mjs +4 -0
  103. package/esm2022/lib/models/EmployerPayInfoModel.mjs +6 -0
  104. package/esm2022/lib/models/FarmUsageComponentModel.mjs +2 -0
  105. package/esm2022/lib/models/GrossEarningsModel.mjs +3 -0
  106. package/esm2022/lib/models/HelpConstants.mjs +5 -0
  107. package/esm2022/lib/models/LexisNexisOtpDetailsResponseModel.mjs +3 -0
  108. package/esm2022/lib/models/LibConstants.mjs +45 -6
  109. package/esm2022/lib/models/OtpAuthModel.mjs +1 -1
  110. package/esm2022/lib/models/PaymentComponentModel.mjs +1 -1
  111. package/esm2022/lib/models/ReasonSeparationRequestModel.mjs +3 -0
  112. package/esm2022/lib/models/RetroWeeksModel.mjs +3 -0
  113. package/esm2022/lib/models/SecurityQuestionAnswerModel.mjs +3 -0
  114. package/esm2022/lib/models/SendOtpRequestModel.mjs +3 -0
  115. package/esm2022/lib/models/UserModel.mjs +1 -1
  116. package/esm2022/lib/models/VerifyOtpRequestModel.mjs +3 -0
  117. package/esm2022/lib/models/WageCalculatorModel.mjs +3 -0
  118. package/esm2022/lib/models/WageInfoModel.mjs +4 -0
  119. package/esm2022/lib/models/addressValidation/AddressRecommendationModel.mjs +3 -0
  120. package/esm2022/lib/models/addressValidation/AddressValidationRequestComponentModel.mjs +3 -0
  121. package/esm2022/lib/models/addressValidation/AddressValidationResponseComponentModel.mjs +3 -0
  122. package/esm2022/lib/models/addressValidation/AddressValidationReturnComponentModel.mjs +3 -0
  123. package/esm2022/lib/models/combo-model.mjs +343 -0
  124. package/esm2022/lib/models/dashboard-model.mjs +1 -1
  125. package/esm2022/lib/models/dependent.model.mjs +1 -1
  126. package/esm2022/lib/models/fileupload/DocUploadModel.mjs +7 -0
  127. package/esm2022/lib/models/fileupload/EmployerDataModel.mjs +3 -0
  128. package/esm2022/lib/models/fileupload/FileObject.mjs +3 -0
  129. package/esm2022/lib/models/fileupload/FileObjectArray.mjs +7 -0
  130. package/esm2022/lib/models/questionnaire/AppealParticipantModel.mjs +8 -0
  131. package/esm2022/lib/models/questionnaire/ClaimAppEmpResponseModel.mjs +1 -1
  132. package/esm2022/lib/models/questionnaire/ClaimAppEmployerDetailsModel.mjs +2 -1
  133. package/esm2022/lib/models/questionnaire/ClaimOnlyEmployerDataModel.mjs +1 -1
  134. package/esm2022/lib/models/questionnaire/ComboModel.mjs +96 -653
  135. package/esm2022/lib/models/questionnaire/ElementsModel.mjs +1 -1
  136. package/esm2022/lib/models/questionnaire/LegalDiscaimarModel.mjs +1 -1
  137. package/esm2022/lib/models/questionnaire/QuestionnaireSaveModel.mjs +1 -1
  138. package/esm2022/lib/models/questionnaire/ScrollableTextModel.mjs +3 -0
  139. package/esm2022/lib/models/questionnaire/StatusModel.mjs +1 -1
  140. package/esm2022/lib/models/questionnaire/WbaHelperTextModel.mjs +3 -0
  141. package/esm2022/lib/models/weekly-cert/WorkSearchWaiverModel.mjs +3 -0
  142. package/esm2022/lib/models/weekly-cert/address-detail-model.mjs +2 -0
  143. package/esm2022/lib/models/weekly-cert/admin-leave-details-model.mjs +7 -0
  144. package/esm2022/lib/models/weekly-cert/employer-info-v2-model.mjs +7 -0
  145. package/esm2022/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.mjs +6 -0
  146. package/esm2022/lib/models/weekly-cert/weekly-certification-v2-model.mjs +34 -0
  147. package/esm2022/lib/models/weekly-cert/work-search-record-v2-model.mjs +15 -0
  148. package/esm2022/lib/models/weekly-cert/work-search-v2-model.mjs +11 -0
  149. package/esm2022/lib/ngx-reusa-app-lib.module.mjs +135 -23
  150. package/esm2022/lib/pages/BasePage.mjs +4 -23
  151. package/esm2022/lib/pages/common/accessibility-policy/accessibility-policy.page.mjs +22 -18
  152. package/esm2022/lib/pages/common/change-password/change-password.page.mjs +142 -124
  153. package/esm2022/lib/pages/common/landing/landing.component.mjs +7 -8
  154. package/esm2022/lib/pages/common/landing2/landing2.component.mjs +4 -4
  155. package/esm2022/lib/pages/common/login/login.component.mjs +7 -13
  156. package/esm2022/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.mjs +14 -14
  157. package/esm2022/lib/pages/common/security-policy/security-policy.page.mjs +5 -5
  158. package/esm2022/lib/pages/popovers/language/language.page.mjs +1 -2
  159. package/esm2022/lib/pages/popovers/my-notifications/my-notifications.page.mjs +4 -4
  160. package/esm2022/lib/pages/popovers/my-profile/my-profile.page.mjs +7 -2
  161. package/esm2022/lib/pipes/format-worksearch/format-worksearch.pipe.mjs +101 -0
  162. package/esm2022/lib/pipes/translate/dynamic-translate.pipe.mjs +2 -2
  163. package/esm2022/lib/services/address-validation-service/address-validation.service.mjs +151 -0
  164. package/esm2022/lib/services/appeal/appeal.service.mjs +37 -0
  165. package/esm2022/lib/services/base-service.mjs +4 -1
  166. package/esm2022/lib/services/birt-service/birt.service.mjs +57 -0
  167. package/esm2022/lib/services/chatbot/chatbot.service.mjs +1 -2
  168. package/esm2022/lib/services/claimant-service/claimant.service.mjs +7 -13
  169. package/esm2022/lib/services/claims/claims.service.mjs +105 -14
  170. package/esm2022/lib/services/employer/employer-service.mjs +35 -0
  171. package/esm2022/lib/services/event-service/event-service.mjs +44 -0
  172. package/esm2022/lib/services/help/help.service.mjs +1 -1
  173. package/esm2022/lib/services/logger/logger.service.mjs +1 -1
  174. package/esm2022/lib/services/login/login.service.mjs +29 -14
  175. package/esm2022/lib/services/offline-claims/offline-claims.service.mjs +327 -0
  176. package/esm2022/lib/services/questionnaire/questionnaire.service.mjs +4 -1
  177. package/esm2022/lib/services/questionnaire/validation.service.mjs +4 -1
  178. package/esm2022/lib/services/security-service/security.service.mjs +23 -6
  179. package/esm2022/lib/services/util/util.service.mjs +61 -5
  180. package/esm2022/lib/services/weekly-cert/review.service.mjs +101 -0
  181. package/esm2022/lib/services/weekly-cert/weekly-cert-v2.service.mjs +186 -14
  182. package/esm2022/lib/services/weekly-cert/weekly-cert.service.mjs +37 -0
  183. package/esm2022/lib/services/weekly-cert/work-search.service.mjs +58 -0
  184. package/esm2022/lib/validations/AppRegex.mjs +1 -3
  185. package/esm2022/lib/validations/AppValidators.mjs +78 -62
  186. package/esm2022/public-api.mjs +47 -5
  187. package/fesm2022/reusa-ngx-reusa-app-lib.mjs +41277 -23401
  188. package/fesm2022/reusa-ngx-reusa-app-lib.mjs.map +1 -1
  189. package/lib/components/add-employer/add-employer.component.d.ts +137 -53
  190. package/lib/components/add-employer/add-employer.component.d.ts.map +1 -1
  191. package/lib/components/add-participant/add-participant.component.d.ts +11 -5
  192. package/lib/components/add-participant/add-participant.component.d.ts.map +1 -1
  193. package/lib/components/add-payment/add-payment.component.d.ts +9 -3
  194. package/lib/components/add-payment/add-payment.component.d.ts.map +1 -1
  195. package/lib/components/add-wage/add-wage.component.d.ts +30 -0
  196. package/lib/components/add-wage/add-wage.component.d.ts.map +1 -0
  197. package/lib/components/address/address.component.d.ts +42 -15
  198. package/lib/components/address/address.component.d.ts.map +1 -1
  199. package/lib/components/address-popup/address-popup.component.d.ts +16 -0
  200. package/lib/components/address-popup/address-popup.component.d.ts.map +1 -0
  201. package/lib/components/address-suggestion/address-suggestion.component.d.ts +43 -0
  202. package/lib/components/address-suggestion/address-suggestion.component.d.ts.map +1 -0
  203. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts +37 -0
  204. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts.map +1 -0
  205. package/lib/components/associate-ssn/associate-ssn.component.d.ts +33 -0
  206. package/lib/components/associate-ssn/associate-ssn.component.d.ts.map +1 -0
  207. package/lib/components/bank-details/bank-details.component.d.ts +1 -23
  208. package/lib/components/bank-details/bank-details.component.d.ts.map +1 -1
  209. package/lib/components/claim-info/claim-info.component.d.ts +49 -0
  210. package/lib/components/claim-info/claim-info.component.d.ts.map +1 -0
  211. package/lib/components/contact-us/contact-us.component.d.ts +1 -4
  212. package/lib/components/contact-us/contact-us.component.d.ts.map +1 -1
  213. package/lib/components/correspondence-download/correspondence-download.component.d.ts.map +1 -1
  214. package/lib/components/dashboard-card/dashboard-card.component.d.ts.map +1 -1
  215. package/lib/components/dua-request-page/dua-request-page.component.d.ts +74 -0
  216. package/lib/components/dua-request-page/dua-request-page.component.d.ts.map +1 -0
  217. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts +61 -0
  218. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts.map +1 -0
  219. package/lib/components/email-update/email-update.component.d.ts +1 -12
  220. package/lib/components/email-update/email-update.component.d.ts.map +1 -1
  221. package/lib/components/employer-grid/employer-grid.component.d.ts +25 -15
  222. package/lib/components/employer-grid/employer-grid.component.d.ts.map +1 -1
  223. package/lib/components/employer-info/employer-info.component.d.ts +50 -0
  224. package/lib/components/employer-info/employer-info.component.d.ts.map +1 -0
  225. package/lib/components/employer-pay/employer-pay.component.d.ts +51 -0
  226. package/lib/components/employer-pay/employer-pay.component.d.ts.map +1 -0
  227. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts +43 -0
  228. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts.map +1 -0
  229. package/lib/components/error/error.component.d.ts +3 -2
  230. package/lib/components/error/error.component.d.ts.map +1 -1
  231. package/lib/components/farm-usage/farm-usage.component.d.ts +33 -0
  232. package/lib/components/farm-usage/farm-usage.component.d.ts.map +1 -0
  233. package/lib/components/file-uploader/file-uploader.component.d.ts +5 -1
  234. package/lib/components/file-uploader/file-uploader.component.d.ts.map +1 -1
  235. package/lib/components/footer/footer.component.d.ts.map +1 -1
  236. package/lib/components/gross-earnings/gross-earnings.component.d.ts +42 -0
  237. package/lib/components/gross-earnings/gross-earnings.component.d.ts.map +1 -0
  238. package/lib/components/header/header.component.d.ts +17 -5
  239. package/lib/components/header/header.component.d.ts.map +1 -1
  240. package/lib/components/history-page/history-page.component.d.ts +80 -0
  241. package/lib/components/history-page/history-page.component.d.ts.map +1 -0
  242. package/lib/components/idme/idme.component.d.ts +19 -0
  243. package/lib/components/idme/idme.component.d.ts.map +1 -0
  244. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts +1 -3
  245. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts.map +1 -1
  246. package/lib/components/job-title/job-title.component.d.ts +22 -23
  247. package/lib/components/job-title/job-title.component.d.ts.map +1 -1
  248. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts +5 -6
  249. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts.map +1 -1
  250. package/lib/components/menu/menu.component.d.ts +3 -12
  251. package/lib/components/menu/menu.component.d.ts.map +1 -1
  252. package/lib/components/mfa/mfa.component.d.ts +7 -19
  253. package/lib/components/mfa/mfa.component.d.ts.map +1 -1
  254. package/lib/components/mfa-popup/mfa-popup.component.d.ts +6 -8
  255. package/lib/components/mfa-popup/mfa-popup.component.d.ts.map +1 -1
  256. package/lib/components/money-expect/money-expect.component.d.ts +15 -4
  257. package/lib/components/money-expect/money-expect.component.d.ts.map +1 -1
  258. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts +311 -0
  259. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts.map +1 -0
  260. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts +33 -0
  261. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts.map +1 -0
  262. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts +97 -0
  263. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts.map +1 -0
  264. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts +33 -0
  265. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts.map +1 -0
  266. package/lib/components/profile/profile.component.d.ts +82 -49
  267. package/lib/components/profile/profile.component.d.ts.map +1 -1
  268. package/lib/components/profile-redirect/profile-redirect.component.d.ts +9 -2
  269. package/lib/components/profile-redirect/profile-redirect.component.d.ts.map +1 -1
  270. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts +54 -0
  271. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts.map +1 -0
  272. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts +74 -0
  273. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts.map +1 -0
  274. package/lib/components/questionnaire/AppValidators.d.ts +1 -0
  275. package/lib/components/questionnaire/AppValidators.d.ts.map +1 -1
  276. package/lib/components/questionnaire/account-success/account-success.page.d.ts +13 -10
  277. package/lib/components/questionnaire/account-success/account-success.page.d.ts.map +1 -1
  278. package/lib/components/questionnaire/common-success/common-success.page.d.ts +7 -1
  279. package/lib/components/questionnaire/common-success/common-success.page.d.ts.map +1 -1
  280. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts +3 -1
  281. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts.map +1 -1
  282. package/lib/components/questionnaire/dynamic-form-question.component.d.ts +33 -35
  283. package/lib/components/questionnaire/dynamic-form-question.component.d.ts.map +1 -1
  284. package/lib/components/questionnaire/dynamic-form.component.d.ts +10 -34
  285. package/lib/components/questionnaire/dynamic-form.component.d.ts.map +1 -1
  286. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts +0 -7
  287. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts.map +1 -1
  288. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts +7 -1
  289. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts.map +1 -1
  290. package/lib/components/questionnaire/question-control.service.d.ts.map +1 -1
  291. package/lib/components/questionnaire/question.service.d.ts +0 -1
  292. package/lib/components/questionnaire/question.service.d.ts.map +1 -1
  293. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts +1 -7
  294. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts.map +1 -1
  295. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts +11 -3
  296. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts.map +1 -1
  297. package/lib/components/scrollable-text/scrollable-text.component.d.ts +11 -0
  298. package/lib/components/scrollable-text/scrollable-text.component.d.ts.map +1 -0
  299. package/lib/components/search-employer/search-employer.component.d.ts +5 -4
  300. package/lib/components/search-employer/search-employer.component.d.ts.map +1 -1
  301. package/lib/components/sms/sms.component.d.ts +63 -0
  302. package/lib/components/sms/sms.component.d.ts.map +1 -0
  303. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts +1 -5
  304. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts.map +1 -1
  305. package/lib/components/user-login/user-login.component.d.ts +5 -38
  306. package/lib/components/user-login/user-login.component.d.ts.map +1 -1
  307. package/lib/components/wage-calculator/wage-calculator.component.d.ts +44 -0
  308. package/lib/components/wage-calculator/wage-calculator.component.d.ts.map +1 -0
  309. package/lib/components/wage-grid/wage-grid.component.d.ts +43 -0
  310. package/lib/components/wage-grid/wage-grid.component.d.ts.map +1 -0
  311. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts +28 -0
  312. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts.map +1 -0
  313. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts +28 -0
  314. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts.map +1 -0
  315. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts +27 -10
  316. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts.map +1 -1
  317. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts +9 -3
  318. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts.map +1 -1
  319. package/lib/components/weekly-certification/weekly-certification.component.d.ts +101 -0
  320. package/lib/components/weekly-certification/weekly-certification.component.d.ts.map +1 -0
  321. package/lib/components/weekly-confirmation/confirmation.component.d.ts +21 -0
  322. package/lib/components/weekly-confirmation/confirmation.component.d.ts.map +1 -0
  323. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts +34 -0
  324. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts.map +1 -0
  325. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts +17 -0
  326. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts.map +1 -0
  327. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts +10 -0
  328. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts.map +1 -0
  329. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts +17 -0
  330. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts.map +1 -0
  331. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts +105 -0
  332. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts.map +1 -0
  333. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts +71 -0
  334. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts.map +1 -0
  335. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts +59 -0
  336. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts.map +1 -0
  337. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts +47 -0
  338. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts.map +1 -0
  339. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts +78 -0
  340. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts.map +1 -0
  341. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts +8 -0
  342. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts.map +1 -0
  343. package/lib/enums/AddressValidationResponseEnum.d.ts +8 -0
  344. package/lib/enums/AddressValidationResponseEnum.d.ts.map +1 -0
  345. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts +4 -0
  346. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts.map +1 -0
  347. package/lib/guards/auth.guard.d.ts.map +1 -1
  348. package/lib/interceptors/error-interceptor/http-error-interceptor.d.ts.map +1 -1
  349. package/lib/models/ActiveClaimModel.d.ts +8 -0
  350. package/lib/models/ActiveClaimModel.d.ts.map +1 -0
  351. package/lib/models/CountyModel.d.ts +8 -0
  352. package/lib/models/CountyModel.d.ts.map +1 -0
  353. package/lib/models/DuaAppDataModel.d.ts +5 -0
  354. package/lib/models/DuaAppDataModel.d.ts.map +1 -0
  355. package/lib/models/DuaRequestModel.d.ts +10 -0
  356. package/lib/models/DuaRequestModel.d.ts.map +1 -0
  357. package/lib/models/DuaRetroWeeksComponentModel.d.ts +5 -0
  358. package/lib/models/DuaRetroWeeksComponentModel.d.ts.map +1 -0
  359. package/lib/models/EmployerDetailSearchResult.d.ts +4 -1
  360. package/lib/models/EmployerDetailSearchResult.d.ts.map +1 -1
  361. package/lib/models/EmployerInfoComponentModel.d.ts +9 -0
  362. package/lib/models/EmployerInfoComponentModel.d.ts.map +1 -0
  363. package/lib/models/EmployerPayInfoModel.d.ts +20 -0
  364. package/lib/models/EmployerPayInfoModel.d.ts.map +1 -0
  365. package/lib/models/FarmUsageComponentModel.d.ts +10 -0
  366. package/lib/models/FarmUsageComponentModel.d.ts.map +1 -0
  367. package/lib/models/GrossEarningsModel.d.ts +6 -0
  368. package/lib/models/GrossEarningsModel.d.ts.map +1 -0
  369. package/lib/models/HelpConstants.d.ts +5 -0
  370. package/lib/models/HelpConstants.d.ts.map +1 -0
  371. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts +7 -0
  372. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts.map +1 -0
  373. package/lib/models/LibConstants.d.ts +40 -1
  374. package/lib/models/LibConstants.d.ts.map +1 -1
  375. package/lib/models/OtpAuthModel.d.ts +0 -1
  376. package/lib/models/OtpAuthModel.d.ts.map +1 -1
  377. package/lib/models/PaymentComponentModel.d.ts +1 -1
  378. package/lib/models/PaymentComponentModel.d.ts.map +1 -1
  379. package/lib/models/ReasonSeparationRequestModel.d.ts +7 -0
  380. package/lib/models/ReasonSeparationRequestModel.d.ts.map +1 -0
  381. package/lib/models/RetroWeeksModel.d.ts +11 -0
  382. package/lib/models/RetroWeeksModel.d.ts.map +1 -0
  383. package/lib/models/SecurityQuestionAnswerModel.d.ts +7 -0
  384. package/lib/models/SecurityQuestionAnswerModel.d.ts.map +1 -0
  385. package/lib/models/SendOtpRequestModel.d.ts +12 -0
  386. package/lib/models/SendOtpRequestModel.d.ts.map +1 -0
  387. package/lib/models/UserModel.d.ts +0 -1
  388. package/lib/models/UserModel.d.ts.map +1 -1
  389. package/lib/models/VerifyOtpRequestModel.d.ts +8 -0
  390. package/lib/models/VerifyOtpRequestModel.d.ts.map +1 -0
  391. package/lib/models/WageCalculatorModel.d.ts +15 -0
  392. package/lib/models/WageCalculatorModel.d.ts.map +1 -0
  393. package/lib/models/WageInfoModel.d.ts +9 -0
  394. package/lib/models/WageInfoModel.d.ts.map +1 -0
  395. package/lib/models/addressValidation/AddressRecommendationModel.d.ts +12 -0
  396. package/lib/models/addressValidation/AddressRecommendationModel.d.ts.map +1 -0
  397. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts +11 -0
  398. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts.map +1 -0
  399. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts +6 -0
  400. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts.map +1 -0
  401. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts +16 -0
  402. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts.map +1 -0
  403. package/lib/models/combo-model.d.ts +42 -0
  404. package/lib/models/combo-model.d.ts.map +1 -0
  405. package/lib/models/dashboard-model.d.ts +22 -0
  406. package/lib/models/dashboard-model.d.ts.map +1 -1
  407. package/lib/models/fileupload/DocUploadModel.d.ts +22 -0
  408. package/lib/models/fileupload/DocUploadModel.d.ts.map +1 -0
  409. package/lib/models/fileupload/EmployerDataModel.d.ts +6 -0
  410. package/lib/models/fileupload/EmployerDataModel.d.ts.map +1 -0
  411. package/lib/models/fileupload/FileObject.d.ts +8 -0
  412. package/lib/models/fileupload/FileObject.d.ts.map +1 -0
  413. package/lib/models/fileupload/FileObjectArray.d.ts +8 -0
  414. package/lib/models/fileupload/FileObjectArray.d.ts.map +1 -0
  415. package/lib/models/questionnaire/AppealParticipantModel.d.ts +17 -0
  416. package/lib/models/questionnaire/AppealParticipantModel.d.ts.map +1 -0
  417. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts +3 -0
  418. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts.map +1 -1
  419. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts +15 -4
  420. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts.map +1 -1
  421. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts +4 -1
  422. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts.map +1 -1
  423. package/lib/models/questionnaire/ComboModel.d.ts +14 -82
  424. package/lib/models/questionnaire/ComboModel.d.ts.map +1 -1
  425. package/lib/models/questionnaire/ElementsModel.d.ts +0 -1
  426. package/lib/models/questionnaire/ElementsModel.d.ts.map +1 -1
  427. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts +2 -0
  428. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts.map +1 -1
  429. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts +0 -1
  430. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts.map +1 -1
  431. package/lib/models/questionnaire/ScrollableTextModel.d.ts +4 -0
  432. package/lib/models/questionnaire/ScrollableTextModel.d.ts.map +1 -0
  433. package/lib/models/questionnaire/StatusModel.d.ts +1 -0
  434. package/lib/models/questionnaire/StatusModel.d.ts.map +1 -1
  435. package/lib/models/questionnaire/WbaHelperTextModel.d.ts +4 -0
  436. package/lib/models/questionnaire/WbaHelperTextModel.d.ts.map +1 -0
  437. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts +9 -0
  438. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts.map +1 -0
  439. package/lib/models/weekly-cert/address-detail-model.d.ts +14 -0
  440. package/lib/models/weekly-cert/address-detail-model.d.ts.map +1 -0
  441. package/lib/models/weekly-cert/admin-leave-details-model.d.ts +15 -0
  442. package/lib/models/weekly-cert/admin-leave-details-model.d.ts.map +1 -0
  443. package/lib/models/weekly-cert/employer-info-v2-model.d.ts +27 -0
  444. package/lib/models/weekly-cert/employer-info-v2-model.d.ts.map +1 -0
  445. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts +57 -0
  446. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts.map +1 -0
  447. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts +59 -0
  448. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts.map +1 -0
  449. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts +66 -0
  450. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts.map +1 -0
  451. package/lib/models/weekly-cert/work-search-v2-model.d.ts +18 -0
  452. package/lib/models/weekly-cert/work-search-v2-model.d.ts.map +1 -0
  453. package/lib/ngx-reusa-app-lib.module.d.ts +124 -86
  454. package/lib/ngx-reusa-app-lib.module.d.ts.map +1 -1
  455. package/lib/pages/BasePage.d.ts +3 -6
  456. package/lib/pages/BasePage.d.ts.map +1 -1
  457. package/lib/pages/common/change-password/change-password.page.d.ts +3 -0
  458. package/lib/pages/common/change-password/change-password.page.d.ts.map +1 -1
  459. package/lib/pages/common/login/login.component.d.ts.map +1 -1
  460. package/lib/pages/popovers/language/language.page.d.ts.map +1 -1
  461. package/lib/pages/popovers/my-profile/my-profile.page.d.ts.map +1 -1
  462. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts +14 -0
  463. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts.map +1 -0
  464. package/lib/services/address-validation-service/address-validation.service.d.ts +44 -0
  465. package/lib/services/address-validation-service/address-validation.service.d.ts.map +1 -0
  466. package/lib/services/appeal/appeal.service.d.ts +16 -0
  467. package/lib/services/appeal/appeal.service.d.ts.map +1 -0
  468. package/lib/services/base-service.d.ts +12 -0
  469. package/lib/services/base-service.d.ts.map +1 -1
  470. package/lib/services/birt-service/birt.service.d.ts +17 -0
  471. package/lib/services/birt-service/birt.service.d.ts.map +1 -0
  472. package/lib/services/claimant-service/claimant.service.d.ts +5 -6
  473. package/lib/services/claimant-service/claimant.service.d.ts.map +1 -1
  474. package/lib/services/claims/claims.service.d.ts +39 -5
  475. package/lib/services/claims/claims.service.d.ts.map +1 -1
  476. package/lib/services/employer/employer-service.d.ts +16 -0
  477. package/lib/services/employer/employer-service.d.ts.map +1 -0
  478. package/lib/services/event-service/event-service.d.ts +20 -0
  479. package/lib/services/event-service/event-service.d.ts.map +1 -0
  480. package/lib/services/login/login.service.d.ts +5 -3
  481. package/lib/services/login/login.service.d.ts.map +1 -1
  482. package/lib/services/offline-claims/offline-claims.service.d.ts +64 -0
  483. package/lib/services/offline-claims/offline-claims.service.d.ts.map +1 -0
  484. package/lib/services/questionnaire/questionnaire.service.d.ts +1 -0
  485. package/lib/services/questionnaire/questionnaire.service.d.ts.map +1 -1
  486. package/lib/services/questionnaire/validation.service.d.ts +3 -0
  487. package/lib/services/questionnaire/validation.service.d.ts.map +1 -1
  488. package/lib/services/security-service/security.service.d.ts +12 -4
  489. package/lib/services/security-service/security.service.d.ts.map +1 -1
  490. package/lib/services/util/util.service.d.ts +6 -0
  491. package/lib/services/util/util.service.d.ts.map +1 -1
  492. package/lib/services/weekly-cert/review.service.d.ts +23 -0
  493. package/lib/services/weekly-cert/review.service.d.ts.map +1 -0
  494. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts +47 -5
  495. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts.map +1 -1
  496. package/lib/services/weekly-cert/weekly-cert.service.d.ts +17 -0
  497. package/lib/services/weekly-cert/weekly-cert.service.d.ts.map +1 -0
  498. package/lib/services/weekly-cert/work-search.service.d.ts +26 -0
  499. package/lib/services/weekly-cert/work-search.service.d.ts.map +1 -0
  500. package/lib/validations/AppRegex.d.ts +0 -2
  501. package/lib/validations/AppRegex.d.ts.map +1 -1
  502. package/lib/validations/AppValidators.d.ts +20 -24
  503. package/lib/validations/AppValidators.d.ts.map +1 -1
  504. package/package.json +2 -2
  505. package/public-api.d.ts +46 -4
  506. package/public-api.d.ts.map +1 -1
  507. package/esm2022/lib/components/lexis-nexis/lexis-nexis.component.mjs +0 -402
  508. package/esm2022/lib/components/mfa2/mfa2.component.mjs +0 -285
  509. package/esm2022/lib/components/security-question/security-question.component.mjs +0 -199
  510. package/esm2022/lib/models/LexisNexisAccountCreationModel.mjs +0 -2
  511. package/esm2022/lib/models/LexisNexisAuthSelectionRequestModel.mjs +0 -2
  512. package/esm2022/lib/models/LexisNexisAuthSelectionResponseModel.mjs +0 -2
  513. package/esm2022/lib/models/LexisNexisEnabledResponseModel.mjs +0 -2
  514. package/esm2022/lib/models/LexisNexisResponseModel.mjs +0 -3
  515. package/esm2022/lib/models/PartialEmploymentModel.mjs +0 -3
  516. package/esm2022/lib/models/SecurityQuestionModel.mjs +0 -3
  517. package/esm2022/lib/services/claimant-service/claimant-usps-redirect.service.mjs +0 -36
  518. package/esm2022/lib/services/lexis-nexis/lexis.nexis.service.mjs +0 -60
  519. package/esm2022/lib/services/ovp/ovp.service.mjs +0 -43
  520. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts +0 -59
  521. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts.map +0 -1
  522. package/lib/components/mfa2/mfa2.component.d.ts +0 -48
  523. package/lib/components/mfa2/mfa2.component.d.ts.map +0 -1
  524. package/lib/components/security-question/security-question.component.d.ts +0 -37
  525. package/lib/components/security-question/security-question.component.d.ts.map +0 -1
  526. package/lib/models/LexisNexisAccountCreationModel.d.ts +0 -15
  527. package/lib/models/LexisNexisAccountCreationModel.d.ts.map +0 -1
  528. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts +0 -16
  529. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts.map +0 -1
  530. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts +0 -39
  531. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts.map +0 -1
  532. package/lib/models/LexisNexisEnabledResponseModel.d.ts +0 -5
  533. package/lib/models/LexisNexisEnabledResponseModel.d.ts.map +0 -1
  534. package/lib/models/LexisNexisResponseModel.d.ts +0 -7
  535. package/lib/models/LexisNexisResponseModel.d.ts.map +0 -1
  536. package/lib/models/PartialEmploymentModel.d.ts +0 -6
  537. package/lib/models/PartialEmploymentModel.d.ts.map +0 -1
  538. package/lib/models/SecurityQuestionModel.d.ts +0 -7
  539. package/lib/models/SecurityQuestionModel.d.ts.map +0 -1
  540. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts +0 -16
  541. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts.map +0 -1
  542. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts +0 -26
  543. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts.map +0 -1
  544. package/lib/services/ovp/ovp.service.d.ts +0 -17
  545. package/lib/services/ovp/ovp.service.d.ts.map +0 -1
@@ -8,267 +8,177 @@ import * as i2 from "@angular/forms";
8
8
  import * as i3 from "../../services/util/util.service";
9
9
  import * as i4 from "@ionic/angular";
10
10
  import * as i5 from "../../services/captcha/captcha.service";
11
- import * as i6 from "../../services/security-service/security.service";
12
- import * as i7 from "@angular/router";
13
- import * as i8 from "@ngx-translate/core";
14
- import * as i9 from "@angular/common";
15
- import * as i10 from "primeng/api";
16
- import * as i11 from "@angular/material/form-field";
17
- import * as i12 from "primeng/selectbutton";
18
- import * as i13 from "primeng/inputnumber";
19
- import * as i14 from "../error/error.component";
20
- import * as i15 from "../../pipes/mask/mask.email.pipe";
21
- const _c0 = ["otpField"];
22
- function MfaComponent_div_4_Template(rf, ctx) { if (rf & 1) {
11
+ import * as i6 from "@angular/common";
12
+ import * as i7 from "primeng/api";
13
+ import * as i8 from "@angular/material/form-field";
14
+ import * as i9 from "primeng/selectbutton";
15
+ import * as i10 from "primeng/inputnumber";
16
+ import * as i11 from "../error/error.component";
17
+ import * as i12 from "@ngx-translate/core";
18
+ import * as i13 from "../../pipes/mask/mask.email.pipe";
19
+ const _c0 = ["otpFormDirective"];
20
+ function MfaComponent_div_5_Template(rf, ctx) { if (rf & 1) {
23
21
  const _r6 = i0.ɵɵgetCurrentView();
24
22
  i0.ɵɵelementStart(0, "div", 6)(1, "div", 7)(2, "div", 8)(3, "label", 9);
25
23
  i0.ɵɵtext(4);
26
24
  i0.ɵɵpipe(5, "translate");
27
25
  i0.ɵɵelementEnd();
28
26
  i0.ɵɵelementStart(6, "p-selectButton", 10);
29
- i0.ɵɵlistener("onChange", function MfaComponent_div_4_Template_p_selectButton_onChange_6_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r5.sendOtp($event)); });
27
+ i0.ɵɵlistener("onChange", function MfaComponent_div_5_Template_p_selectButton_onChange_6_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r5.sendOtp($event)); });
30
28
  i0.ɵɵelementEnd()()()();
31
29
  } if (rf & 2) {
32
30
  const ctx_r1 = i0.ɵɵnextContext();
33
31
  i0.ɵɵadvance(4);
34
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(5, 3, "mfa.how.send"));
32
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(5, 3, "How would you like us to send your access code?"));
35
33
  i0.ɵɵadvance(2);
36
34
  i0.ɵɵproperty("options", ctx_r1.options)("formControl", ctx_r1.option);
37
35
  } }
38
- function MfaComponent_div_5_span_3_Template(rf, ctx) { if (rf & 1) {
36
+ function MfaComponent_div_6_span_3_Template(rf, ctx) { if (rf & 1) {
39
37
  i0.ɵɵelementStart(0, "span");
40
- i0.ɵɵtext(1);
41
- i0.ɵɵpipe(2, "translate");
42
- i0.ɵɵelementStart(3, "b");
43
- i0.ɵɵtext(4);
44
- i0.ɵɵpipe(5, "maskEmail");
38
+ i0.ɵɵtext(1, "An access code has been sent to your email address:\u00A0 ");
39
+ i0.ɵɵelementStart(2, "b");
40
+ i0.ɵɵtext(3);
41
+ i0.ɵɵpipe(4, "maskEmail");
45
42
  i0.ɵɵelementEnd()();
46
43
  } if (rf & 2) {
47
44
  const ctx_r7 = i0.ɵɵnextContext(2);
48
- i0.ɵɵadvance(1);
49
- i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(2, 2, "mfa.code.sent.email"), ":\u00A0 ");
50
45
  i0.ɵɵadvance(3);
51
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(5, 4, ctx_r7.user == null ? null : ctx_r7.user.emailId));
46
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 1, ctx_r7.user == null ? null : ctx_r7.user.emailId));
52
47
  } }
53
- function MfaComponent_div_5_span_4_Template(rf, ctx) { if (rf & 1) {
48
+ function MfaComponent_div_6_span_4_Template(rf, ctx) { if (rf & 1) {
54
49
  i0.ɵɵelementStart(0, "span");
55
- i0.ɵɵtext(1);
56
- i0.ɵɵpipe(2, "translate");
57
- i0.ɵɵelementStart(3, "b");
58
- i0.ɵɵtext(4);
59
- i0.ɵɵpipe(5, "maskEmail");
50
+ i0.ɵɵtext(1, "An access code has been sent to your cellphone:\u00A0 ");
51
+ i0.ɵɵelementStart(2, "b");
52
+ i0.ɵɵtext(3);
53
+ i0.ɵɵpipe(4, "maskEmail");
60
54
  i0.ɵɵelementEnd()();
61
55
  } if (rf & 2) {
62
56
  const ctx_r8 = i0.ɵɵnextContext(2);
63
- i0.ɵɵadvance(1);
64
- i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(2, 2, "mfa.code.sent.cell"), "\u00A0 ");
65
57
  i0.ɵɵadvance(3);
66
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(5, 4, ctx_r8.user == null ? null : ctx_r8.user.cellphoneNo));
58
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 1, ctx_r8.user == null ? null : ctx_r8.user.cellphoneNo));
67
59
  } }
68
- function MfaComponent_div_5_span_5_Template(rf, ctx) { if (rf & 1) {
69
- i0.ɵɵelementStart(0, "span");
70
- i0.ɵɵtext(1);
71
- i0.ɵɵpipe(2, "translate");
72
- i0.ɵɵelementStart(3, "b");
73
- i0.ɵɵtext(4);
74
- i0.ɵɵpipe(5, "maskEmail");
75
- i0.ɵɵelementEnd()();
76
- } if (rf & 2) {
77
- const ctx_r9 = i0.ɵɵnextContext(2);
78
- i0.ɵɵadvance(1);
79
- i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(2, 2, "mfa.code.sent.cell"), "\u00A0 ");
80
- i0.ɵɵadvance(3);
81
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(5, 4, ctx_r9.user == null ? null : ctx_r9.user.cellphoneNo));
82
- } }
83
- function MfaComponent_div_5_ion_label_8_Template(rf, ctx) { if (rf & 1) {
60
+ function MfaComponent_div_6_ion_label_7_Template(rf, ctx) { if (rf & 1) {
84
61
  i0.ɵɵelementStart(0, "ion-label");
85
- i0.ɵɵtext(1);
86
- i0.ɵɵpipe(2, "translate");
62
+ i0.ɵɵtext(1, " Check your junk folder if you don't see it in your inbox. ");
87
63
  i0.ɵɵelementEnd();
88
- } if (rf & 2) {
89
- i0.ɵɵadvance(1);
90
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 1, "mfa.code.sent.junk"), " ");
91
64
  } }
92
- function MfaComponent_div_5_span_9_Template(rf, ctx) { if (rf & 1) {
65
+ function MfaComponent_div_6_span_8_Template(rf, ctx) { if (rf & 1) {
93
66
  i0.ɵɵelementStart(0, "span");
94
67
  i0.ɵɵelement(1, "br")(2, "br");
95
68
  i0.ɵɵelementEnd();
96
69
  } }
97
- function MfaComponent_div_5_label_11_Template(rf, ctx) { if (rf & 1) {
98
- i0.ɵɵelementStart(0, "label", 19);
99
- i0.ɵɵtext(1);
100
- i0.ɵɵpipe(2, "translate");
101
- i0.ɵɵelementEnd();
102
- } if (rf & 2) {
103
- i0.ɵɵadvance(1);
104
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, "mfa.enter.code"));
105
- } }
106
- function MfaComponent_div_5_label_13_Template(rf, ctx) { if (rf & 1) {
107
- i0.ɵɵelementStart(0, "label", 19);
108
- i0.ɵɵtext(1);
109
- i0.ɵɵpipe(2, "translate");
110
- i0.ɵɵelementEnd();
111
- } if (rf & 2) {
112
- i0.ɵɵadvance(1);
113
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, "mfa.enter.code.received"));
114
- } }
115
- const _c1 = (a0, a1, a2) => ({ required: a0, min: a1, max: a2 });
116
- function MfaComponent_div_5_app_error_17_Template(rf, ctx) { if (rf & 1) {
117
- i0.ɵɵelement(0, "app-error", 20);
118
- } if (rf & 2) {
119
- const ctx_r15 = i0.ɵɵnextContext(2);
120
- i0.ɵɵproperty("field", ctx_r15.otp)("form", ctx_r15.otpForm)("errDef", i0.ɵɵpureFunction3(3, _c1, ctx_r15.AccessRequired, ctx_r15.AccessVerify, ctx_r15.AccessVerify));
121
- } }
122
- function MfaComponent_div_5_ion_item_18_Template(rf, ctx) { if (rf & 1) {
123
- i0.ɵɵelementStart(0, "ion-item", 21);
124
- i0.ɵɵelement(1, "ion-checkbox", 22);
125
- i0.ɵɵelementStart(2, "ion-label", 23);
70
+ function MfaComponent_div_6_ion_item_15_Template(rf, ctx) { if (rf & 1) {
71
+ i0.ɵɵelementStart(0, "ion-item", 19);
72
+ i0.ɵɵelement(1, "ion-checkbox", 20);
73
+ i0.ɵɵelementStart(2, "ion-label", 21);
126
74
  i0.ɵɵtext(3);
127
75
  i0.ɵɵpipe(4, "translate");
128
76
  i0.ɵɵelementEnd()();
129
77
  } if (rf & 2) {
130
78
  i0.ɵɵadvance(3);
131
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 1, "mfa.browser.trust"));
79
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 1, "I trust this browser."));
132
80
  } }
133
- function MfaComponent_div_5_mat_error_19_Template(rf, ctx) { if (rf & 1) {
81
+ function MfaComponent_div_6_mat_error_16_Template(rf, ctx) { if (rf & 1) {
134
82
  i0.ɵɵelementStart(0, "mat-error");
135
83
  i0.ɵɵtext(1);
136
84
  i0.ɵɵelement(2, "br")(3, "br");
137
85
  i0.ɵɵelementEnd();
138
86
  } if (rf & 2) {
139
- const ctx_r17 = i0.ɵɵnextContext(2);
87
+ const ctx_r12 = i0.ɵɵnextContext(2);
140
88
  i0.ɵɵadvance(1);
141
- i0.ɵɵtextInterpolate(ctx_r17.errorDtls);
89
+ i0.ɵɵtextInterpolate(ctx_r12.errorDtls);
142
90
  } }
143
- function MfaComponent_div_5_ion_label_20_Template(rf, ctx) { if (rf & 1) {
144
- i0.ɵɵelementStart(0, "ion-label", 24);
91
+ function MfaComponent_div_6_ion_label_17_Template(rf, ctx) { if (rf & 1) {
92
+ i0.ɵɵelementStart(0, "ion-label", 22);
145
93
  i0.ɵɵtext(1);
146
94
  i0.ɵɵelement(2, "br")(3, "br");
147
95
  i0.ɵɵelementEnd();
148
96
  } if (rf & 2) {
149
- const ctx_r18 = i0.ɵɵnextContext(2);
97
+ const ctx_r13 = i0.ɵɵnextContext(2);
150
98
  i0.ɵɵadvance(1);
151
- i0.ɵɵtextInterpolate(ctx_r18.successDtls);
99
+ i0.ɵɵtextInterpolate(ctx_r13.successDtls);
152
100
  } }
153
- function MfaComponent_div_5_ion_label_21_span_1_Template(rf, ctx) { if (rf & 1) {
101
+ function MfaComponent_div_6_ion_label_18_span_1_Template(rf, ctx) { if (rf & 1) {
154
102
  i0.ɵɵelementStart(0, "span");
155
- i0.ɵɵtext(1);
156
- i0.ɵɵpipe(2, "translate");
157
- i0.ɵɵelementStart(3, "b");
158
- i0.ɵɵtext(4);
103
+ i0.ɵɵtext(1, " Haven't received the code? Resend option available in ");
104
+ i0.ɵɵelementStart(2, "b");
105
+ i0.ɵɵtext(3);
159
106
  i0.ɵɵelementEnd();
160
- i0.ɵɵtext(5, ". ");
107
+ i0.ɵɵtext(4, ". ");
161
108
  i0.ɵɵelementEnd();
162
109
  } if (rf & 2) {
163
- const ctx_r22 = i0.ɵɵnextContext(3);
164
- i0.ɵɵadvance(1);
165
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, "mfa.code.not.received"), " ");
110
+ const ctx_r16 = i0.ɵɵnextContext(3);
166
111
  i0.ɵɵadvance(3);
167
- i0.ɵɵtextInterpolate1("", ctx_r22.counter.getValue(), " second(s)");
112
+ i0.ɵɵtextInterpolate1("", ctx_r16.counter.getValue(), " second(s)");
168
113
  } }
169
- function MfaComponent_div_5_ion_label_21_span_2_Template(rf, ctx) { if (rf & 1) {
170
- const _r26 = i0.ɵɵgetCurrentView();
171
- i0.ɵɵelementStart(0, "span")(1, "a", 25);
172
- i0.ɵɵlistener("keyup.enter", function MfaComponent_div_5_ion_label_21_span_2_Template_a_keyup_enter_1_listener() { i0.ɵɵrestoreView(_r26); const ctx_r25 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r25.resendAuthCode(ctx_r25.option.value)); })("click", function MfaComponent_div_5_ion_label_21_span_2_Template_a_click_1_listener() { i0.ɵɵrestoreView(_r26); const ctx_r27 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r27.resendAuthCode(ctx_r27.option.value)); });
173
- i0.ɵɵtext(2);
174
- i0.ɵɵpipe(3, "translate");
114
+ function MfaComponent_div_6_ion_label_18_span_2_Template(rf, ctx) { if (rf & 1) {
115
+ const _r19 = i0.ɵɵgetCurrentView();
116
+ i0.ɵɵelementStart(0, "span")(1, "a", 18);
117
+ i0.ɵɵlistener("click", function MfaComponent_div_6_ion_label_18_span_2_Template_a_click_1_listener() { i0.ɵɵrestoreView(_r19); const ctx_r18 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r18.resendAuthCode(ctx_r18.option.value)); });
118
+ i0.ɵɵtext(2, "Get new code");
175
119
  i0.ɵɵelementEnd()();
176
- } if (rf & 2) {
177
- i0.ɵɵadvance(2);
178
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 1, "mfa.get.new.code"));
179
- } }
180
- function MfaComponent_div_5_ion_label_21_span_3_Template(rf, ctx) { if (rf & 1) {
181
- const _r29 = i0.ɵɵgetCurrentView();
182
- i0.ɵɵelementStart(0, "span")(1, "a", 25);
183
- i0.ɵɵlistener("keyup.enter", function MfaComponent_div_5_ion_label_21_span_3_Template_a_keyup_enter_1_listener() { i0.ɵɵrestoreView(_r29); const ctx_r28 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r28.resendAuthCode(ctx_r28.option.value)); })("click", function MfaComponent_div_5_ion_label_21_span_3_Template_a_click_1_listener() { i0.ɵɵrestoreView(_r29); const ctx_r30 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r30.resendAuthCode(ctx_r30.option.value)); });
184
- i0.ɵɵtext(2);
185
- i0.ɵɵpipe(3, "translate");
186
- i0.ɵɵelementEnd()();
187
- } if (rf & 2) {
188
- i0.ɵɵadvance(2);
189
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 1, "mfa.resend.verification.code"), "");
190
120
  } }
191
- function MfaComponent_div_5_ion_label_21_Template(rf, ctx) { if (rf & 1) {
121
+ function MfaComponent_div_6_ion_label_18_Template(rf, ctx) { if (rf & 1) {
192
122
  i0.ɵɵelementStart(0, "ion-label");
193
- i0.ɵɵtemplate(1, MfaComponent_div_5_ion_label_21_span_1_Template, 6, 4, "span", 12)(2, MfaComponent_div_5_ion_label_21_span_2_Template, 4, 3, "span", 12)(3, MfaComponent_div_5_ion_label_21_span_3_Template, 4, 3, "span", 12);
123
+ i0.ɵɵtemplate(1, MfaComponent_div_6_ion_label_18_span_1_Template, 5, 1, "span", 12)(2, MfaComponent_div_6_ion_label_18_span_2_Template, 3, 0, "span", 12);
194
124
  i0.ɵɵelementEnd();
195
125
  } if (rf & 2) {
196
- const ctx_r19 = i0.ɵɵnextContext(2);
197
- i0.ɵɵadvance(1);
198
- i0.ɵɵproperty("ngIf", ctx_r19.counter.getValue() != 1 && !ctx_r19.returningUser);
126
+ const ctx_r14 = i0.ɵɵnextContext(2);
199
127
  i0.ɵɵadvance(1);
200
- i0.ɵɵproperty("ngIf", ctx_r19.counter.getValue() == 1 && !ctx_r19.returningUser);
128
+ i0.ɵɵproperty("ngIf", ctx_r14.counter.getValue() != 1);
201
129
  i0.ɵɵadvance(1);
202
- i0.ɵɵproperty("ngIf", ctx_r19.counter.getValue() == 1 && ctx_r19.returningUser);
203
- } }
204
- function MfaComponent_div_5_p_22_Template(rf, ctx) { if (rf & 1) {
205
- const _r32 = i0.ɵɵgetCurrentView();
206
- i0.ɵɵelementStart(0, "p")(1, "a", 25);
207
- i0.ɵɵlistener("keyup.enter", function MfaComponent_div_5_p_22_Template_a_keyup_enter_1_listener($event) { i0.ɵɵrestoreView(_r32); const ctx_r31 = i0.ɵɵnextContext(2); ctx_r31.showHelp = !ctx_r31.showHelp; return i0.ɵɵresetView($event.preventDefault()); })("click", function MfaComponent_div_5_p_22_Template_a_click_1_listener($event) { i0.ɵɵrestoreView(_r32); const ctx_r33 = i0.ɵɵnextContext(2); ctx_r33.showHelp = !ctx_r33.showHelp; return i0.ɵɵresetView($event.preventDefault()); });
208
- i0.ɵɵtext(2);
209
- i0.ɵɵelementEnd()();
210
- } if (rf & 2) {
211
- const ctx_r20 = i0.ɵɵnextContext(2);
212
- i0.ɵɵadvance(2);
213
- i0.ɵɵtextInterpolate1("Can't get to your ", ctx_r20.option.value == "text" ? "cellphone" : "email", "?");
130
+ i0.ɵɵproperty("ngIf", ctx_r14.counter.getValue() == 1);
214
131
  } }
215
- function MfaComponent_div_5_p_23_Template(rf, ctx) { if (rf & 1) {
132
+ function MfaComponent_div_6_p_22_Template(rf, ctx) { if (rf & 1) {
216
133
  i0.ɵɵelementStart(0, "p");
217
- i0.ɵɵtext(1);
218
- i0.ɵɵpipe(2, "translate");
219
- i0.ɵɵelement(3, "br");
220
- i0.ɵɵtext(4, " or");
221
- i0.ɵɵelement(5, "br");
222
- i0.ɵɵtext(6);
134
+ i0.ɵɵtext(1, " Your code is good for 15 minutes. You can try again later.");
135
+ i0.ɵɵelement(2, "br");
136
+ i0.ɵɵtext(3, " or");
137
+ i0.ɵɵelement(4, "br");
138
+ i0.ɵɵtext(5);
223
139
  i0.ɵɵelementEnd();
224
140
  } if (rf & 2) {
225
- const ctx_r21 = i0.ɵɵnextContext(2);
226
- i0.ɵɵadvance(1);
227
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, "mfa.good.for.time"), "");
141
+ const ctx_r15 = i0.ɵɵnextContext(2);
228
142
  i0.ɵɵadvance(5);
229
- i0.ɵɵtextInterpolate1(" If your ", ctx_r21.option.value == "text" ? "cellphone number" : "email address", " has changed call KDOL at 785-575-1460, Monday through Friday from 8 am to 4:30 pm. ");
143
+ i0.ɵɵtextInterpolate1(" If your ", ctx_r15.option.value == "text" ? "cellphone number" : "email address", " has changed call MDES at 601-493-9427, Monday through Friday from 8 am to 5 pm. ");
230
144
  } }
231
- function MfaComponent_div_5_Template(rf, ctx) { if (rf & 1) {
232
- const _r35 = i0.ɵɵgetCurrentView();
145
+ const _c1 = () => ({ required: "Access code is required.", minlength: "Access code should have 6 numbers." });
146
+ function MfaComponent_div_6_Template(rf, ctx) { if (rf & 1) {
147
+ const _r21 = i0.ɵɵgetCurrentView();
233
148
  i0.ɵɵelementStart(0, "div", 6)(1, "div", 11)(2, "ion-label");
234
- i0.ɵɵtemplate(3, MfaComponent_div_5_span_3_Template, 6, 6, "span", 12)(4, MfaComponent_div_5_span_4_Template, 6, 6, "span", 12)(5, MfaComponent_div_5_span_5_Template, 6, 6, "span", 12);
149
+ i0.ɵɵtemplate(3, MfaComponent_div_6_span_3_Template, 5, 3, "span", 12)(4, MfaComponent_div_6_span_4_Template, 5, 3, "span", 12);
235
150
  i0.ɵɵelementEnd();
236
- i0.ɵɵelement(6, "br")(7, "br");
237
- i0.ɵɵtemplate(8, MfaComponent_div_5_ion_label_8_Template, 3, 3, "ion-label", 12)(9, MfaComponent_div_5_span_9_Template, 3, 0, "span", 12);
238
- i0.ɵɵelementStart(10, "div", 8);
239
- i0.ɵɵtemplate(11, MfaComponent_div_5_label_11_Template, 3, 3, "label", 13);
240
- i0.ɵɵelement(12, "br");
241
- i0.ɵɵtemplate(13, MfaComponent_div_5_label_13_Template, 3, 3, "label", 13);
242
- i0.ɵɵelement(14, "br");
243
- i0.ɵɵelementStart(15, "p-inputNumber", 14, 15);
244
- i0.ɵɵlistener("click", function MfaComponent_div_5_Template_p_inputNumber_click_15_listener() { i0.ɵɵrestoreView(_r35); const ctx_r34 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r34.hideOptValidator = false); })("keyup", function MfaComponent_div_5_Template_p_inputNumber_keyup_15_listener() { i0.ɵɵrestoreView(_r35); const ctx_r36 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r36.hideOptValidator = false); })("keyup.enter", function MfaComponent_div_5_Template_p_inputNumber_keyup_enter_15_listener() { i0.ɵɵrestoreView(_r35); const ctx_r37 = i0.ɵɵnextContext(); return i0.ɵɵresetView(!ctx_r37.requestCode && ctx_r37.option.value ? ctx_r37.signIn() : ctx_r37.submit()); });
151
+ i0.ɵɵelement(5, "br")(6, "br");
152
+ i0.ɵɵtemplate(7, MfaComponent_div_6_ion_label_7_Template, 2, 0, "ion-label", 12)(8, MfaComponent_div_6_span_8_Template, 3, 0, "span", 12);
153
+ i0.ɵɵelementStart(9, "div", 8)(10, "label", 13);
154
+ i0.ɵɵtext(11, "Enter code");
245
155
  i0.ɵɵelementEnd();
246
- i0.ɵɵtemplate(17, MfaComponent_div_5_app_error_17_Template, 1, 7, "app-error", 16);
156
+ i0.ɵɵelement(12, "br")(13, "p-inputNumber", 14)(14, "app-error", 15);
247
157
  i0.ɵɵelementEnd();
248
- i0.ɵɵtemplate(18, MfaComponent_div_5_ion_item_18_Template, 5, 3, "ion-item", 17);
158
+ i0.ɵɵtemplate(15, MfaComponent_div_6_ion_item_15_Template, 5, 3, "ion-item", 16);
249
159
  i0.ɵɵelementEnd();
250
- i0.ɵɵtemplate(19, MfaComponent_div_5_mat_error_19_Template, 4, 1, "mat-error", 12)(20, MfaComponent_div_5_ion_label_20_Template, 4, 1, "ion-label", 18)(21, MfaComponent_div_5_ion_label_21_Template, 4, 3, "ion-label", 12)(22, MfaComponent_div_5_p_22_Template, 3, 1, "p", 12)(23, MfaComponent_div_5_p_23_Template, 7, 4, "p", 12);
160
+ i0.ɵɵtemplate(16, MfaComponent_div_6_mat_error_16_Template, 4, 1, "mat-error", 12)(17, MfaComponent_div_6_ion_label_17_Template, 4, 1, "ion-label", 17)(18, MfaComponent_div_6_ion_label_18_Template, 3, 2, "ion-label", 12);
161
+ i0.ɵɵelementStart(19, "p")(20, "a", 18);
162
+ i0.ɵɵlistener("click", function MfaComponent_div_6_Template_a_click_20_listener($event) { i0.ɵɵrestoreView(_r21); const ctx_r20 = i0.ɵɵnextContext(); ctx_r20.showHelp = !ctx_r20.showHelp; return i0.ɵɵresetView($event.preventDefault()); });
163
+ i0.ɵɵtext(21);
164
+ i0.ɵɵelementEnd()();
165
+ i0.ɵɵtemplate(22, MfaComponent_div_6_p_22_Template, 6, 1, "p", 12);
251
166
  i0.ɵɵelementEnd();
252
167
  } if (rf & 2) {
253
168
  const ctx_r2 = i0.ɵɵnextContext();
169
+ const _r0 = i0.ɵɵreference(1);
254
170
  i0.ɵɵadvance(3);
255
- i0.ɵɵproperty("ngIf", ctx_r2.option.value == "email" && !ctx_r2.returningUser);
256
- i0.ɵɵadvance(1);
257
- i0.ɵɵproperty("ngIf", ctx_r2.option.value == "text" && !ctx_r2.returningUser);
171
+ i0.ɵɵproperty("ngIf", ctx_r2.option.value == "email");
258
172
  i0.ɵɵadvance(1);
259
- i0.ɵɵproperty("ngIf", ctx_r2.returningUser);
173
+ i0.ɵɵproperty("ngIf", ctx_r2.option.value == "text");
260
174
  i0.ɵɵadvance(3);
261
- i0.ɵɵproperty("ngIf", ctx_r2.option.value == "email" && !ctx_r2.returningUser);
175
+ i0.ɵɵproperty("ngIf", ctx_r2.option.value == "email");
262
176
  i0.ɵɵadvance(1);
263
- i0.ɵɵproperty("ngIf", ctx_r2.option.value == "email" && !ctx_r2.returningUser);
264
- i0.ɵɵadvance(2);
265
- i0.ɵɵproperty("ngIf", !ctx_r2.returningUser);
266
- i0.ɵɵadvance(2);
267
- i0.ɵɵproperty("ngIf", ctx_r2.returningUser);
268
- i0.ɵɵadvance(2);
177
+ i0.ɵɵproperty("ngIf", ctx_r2.option.value == "email");
178
+ i0.ɵɵadvance(5);
269
179
  i0.ɵɵproperty("useGrouping", false)("inputId", "authCode");
270
- i0.ɵɵadvance(2);
271
- i0.ɵɵproperty("ngIf", !ctx_r2.hideOptValidator);
180
+ i0.ɵɵadvance(1);
181
+ i0.ɵɵproperty("field", ctx_r2.otp)("form", _r0)("errDef", i0.ɵɵpureFunction0(15, _c1));
272
182
  i0.ɵɵadvance(1);
273
183
  i0.ɵɵproperty("ngIf", false);
274
184
  i0.ɵɵadvance(1);
@@ -277,72 +187,56 @@ function MfaComponent_div_5_Template(rf, ctx) { if (rf & 1) {
277
187
  i0.ɵɵproperty("ngIf", ctx_r2.successDtls);
278
188
  i0.ɵɵadvance(1);
279
189
  i0.ɵɵproperty("ngIf", !ctx_r2.blocked);
190
+ i0.ɵɵadvance(3);
191
+ i0.ɵɵtextInterpolate1("Can't get to your ", ctx_r2.option.value == "text" ? "cellphone" : "email", "?");
280
192
  i0.ɵɵadvance(1);
281
- i0.ɵɵproperty("ngIf", !ctx_r2.returningUser);
282
- i0.ɵɵadvance(1);
283
- i0.ɵɵproperty("ngIf", ctx_r2.showHelp && !ctx_r2.returningUser);
193
+ i0.ɵɵproperty("ngIf", ctx_r2.showHelp);
284
194
  } }
285
- function MfaComponent_div_7_Template(rf, ctx) { if (rf & 1) {
286
- i0.ɵɵelementStart(0, "div", 26);
287
- i0.ɵɵelement(1, "ion-spinner", 27);
195
+ function MfaComponent_div_8_Template(rf, ctx) { if (rf & 1) {
196
+ i0.ɵɵelementStart(0, "div", 23);
197
+ i0.ɵɵelement(1, "ion-spinner", 24);
288
198
  i0.ɵɵelementEnd();
289
199
  } }
290
- function MfaComponent_div_8_ion_button_4_Template(rf, ctx) { if (rf & 1) {
291
- const _r41 = i0.ɵɵgetCurrentView();
292
- i0.ɵɵelementStart(0, "ion-button", 31);
293
- i0.ɵɵlistener("keyup.enter", function MfaComponent_div_8_ion_button_4_Template_ion_button_keyup_enter_0_listener() { i0.ɵɵrestoreView(_r41); const ctx_r40 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r40.signIn()); })("click", function MfaComponent_div_8_ion_button_4_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r41); const ctx_r42 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r42.signIn()); });
294
- i0.ɵɵtext(1);
295
- i0.ɵɵpipe(2, "translate");
200
+ function MfaComponent_div_9_ion_button_3_Template(rf, ctx) { if (rf & 1) {
201
+ const _r25 = i0.ɵɵgetCurrentView();
202
+ i0.ɵɵelementStart(0, "ion-button", 28);
203
+ i0.ɵɵlistener("click", function MfaComponent_div_9_ion_button_3_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r25); const ctx_r24 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r24.signIn()); });
204
+ i0.ɵɵtext(1, " Submit ");
296
205
  i0.ɵɵelementEnd();
297
- } if (rf & 2) {
298
- i0.ɵɵadvance(1);
299
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 1, "common.submit"), " ");
300
206
  } }
301
- function MfaComponent_div_8_ion_button_5_Template(rf, ctx) { if (rf & 1) {
302
- const _r44 = i0.ɵɵgetCurrentView();
303
- i0.ɵɵelementStart(0, "ion-button", 31);
304
- i0.ɵɵlistener("keyup.enter", function MfaComponent_div_8_ion_button_5_Template_ion_button_keyup_enter_0_listener() { i0.ɵɵrestoreView(_r44); const ctx_r43 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r43.submit()); })("click", function MfaComponent_div_8_ion_button_5_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r44); const ctx_r45 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r45.submit()); });
305
- i0.ɵɵtext(1);
306
- i0.ɵɵpipe(2, "translate");
207
+ function MfaComponent_div_9_ion_button_4_Template(rf, ctx) { if (rf & 1) {
208
+ const _r27 = i0.ɵɵgetCurrentView();
209
+ i0.ɵɵelementStart(0, "ion-button", 28);
210
+ i0.ɵɵlistener("click", function MfaComponent_div_9_ion_button_4_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r27); const ctx_r26 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r26.submit()); });
211
+ i0.ɵɵtext(1, " Submit ");
307
212
  i0.ɵɵelementEnd();
308
- } if (rf & 2) {
309
- i0.ɵɵadvance(1);
310
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 1, "common.submit"), " ");
311
213
  } }
312
- function MfaComponent_div_8_Template(rf, ctx) { if (rf & 1) {
313
- const _r47 = i0.ɵɵgetCurrentView();
314
- i0.ɵɵelementStart(0, "div", 28)(1, "ion-button", 29);
315
- i0.ɵɵlistener("keyup.enter", function MfaComponent_div_8_Template_ion_button_keyup_enter_1_listener() { i0.ɵɵrestoreView(_r47); const ctx_r46 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r46.close(false)); })("click", function MfaComponent_div_8_Template_ion_button_click_1_listener() { i0.ɵɵrestoreView(_r47); const ctx_r48 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r48.close(false)); });
316
- i0.ɵɵtext(2);
317
- i0.ɵɵpipe(3, "translate");
214
+ function MfaComponent_div_9_Template(rf, ctx) { if (rf & 1) {
215
+ const _r29 = i0.ɵɵgetCurrentView();
216
+ i0.ɵɵelementStart(0, "div", 25)(1, "ion-button", 26);
217
+ i0.ɵɵlistener("click", function MfaComponent_div_9_Template_ion_button_click_1_listener() { i0.ɵɵrestoreView(_r29); const ctx_r28 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r28.close()); });
218
+ i0.ɵɵtext(2, " Close ");
318
219
  i0.ɵɵelementEnd();
319
- i0.ɵɵtemplate(4, MfaComponent_div_8_ion_button_4_Template, 3, 3, "ion-button", 30)(5, MfaComponent_div_8_ion_button_5_Template, 3, 3, "ion-button", 30);
220
+ i0.ɵɵtemplate(3, MfaComponent_div_9_ion_button_3_Template, 2, 0, "ion-button", 27)(4, MfaComponent_div_9_ion_button_4_Template, 2, 0, "ion-button", 27);
320
221
  i0.ɵɵelementEnd();
321
222
  } if (rf & 2) {
322
223
  const ctx_r4 = i0.ɵɵnextContext();
323
- i0.ɵɵadvance(2);
324
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 3, "common.close"), " ");
325
- i0.ɵɵadvance(2);
224
+ i0.ɵɵadvance(3);
326
225
  i0.ɵɵproperty("ngIf", !ctx_r4.requestCode && ctx_r4.option.value);
327
226
  i0.ɵɵadvance(1);
328
227
  i0.ɵɵproperty("ngIf", ctx_r4.requestCode && ctx_r4.option.value);
329
228
  } }
330
229
  export class MfaComponent {
331
- constructor(ls, fb, util, nav, cs, ss, router, translateService) {
230
+ constructor(ls, fb, util, nav, cs) {
332
231
  this.ls = ls;
333
232
  this.fb = fb;
334
233
  this.util = util;
335
234
  this.nav = nav;
336
235
  this.cs = cs;
337
- this.ss = ss;
338
- this.router = router;
339
- this.translateService = translateService;
340
236
  this.RESEND_CODE_ACTION_NAME = "MFA_RESEND_CODE";
341
237
  this.isChecked = false;
342
238
  this.showHelp = false;
343
- this.hideOptValidator = true;
344
239
  this.hideButtons = false;
345
- this.display = false;
346
240
  this.clear = new EventEmitter();
347
241
  this.success = new EventEmitter();
348
242
  this.error = new EventEmitter();
@@ -355,16 +249,12 @@ export class MfaComponent {
355
249
  { value: 'text', text: 'text' },
356
250
  { value: 'email', text: 'email' }
357
251
  ];
358
- this.translateService.use(localStorage.getItem("language"));
359
252
  }
360
253
  ngOnChanges(changes) {
361
254
  if (changes.mfaError?.currentValue) {
362
255
  this.errorDtls = this.mfaError.msg;
363
256
  this.successDtls = null;
364
257
  }
365
- if (changes.display.currentValue) { // window open
366
- this.ngOnInit();
367
- }
368
258
  }
369
259
  ngOnDestroy() {
370
260
  if (this.counterSubscription) {
@@ -372,7 +262,6 @@ export class MfaComponent {
372
262
  }
373
263
  }
374
264
  ngOnInit() {
375
- this.translateService.use(localStorage.getItem("language"));
376
265
  this.initilizeForm();
377
266
  //this.setCountdown();
378
267
  if (this.requestCode) {
@@ -387,9 +276,6 @@ export class MfaComponent {
387
276
  else {
388
277
  this.setCountdown();
389
278
  }
390
- setTimeout(_ => {
391
- this.otpField.input.nativeElement.focus();
392
- }, 100);
393
279
  }
394
280
  requestNewAuthCode(otpType) {
395
281
  this.blocked = true;
@@ -417,7 +303,7 @@ export class MfaComponent {
417
303
  initilizeForm() {
418
304
  let mfaOptions = this.user?.supportedMfaTypes?.split(",") || ['email'];
419
305
  this.otpForm = this.fb.group({
420
- 'otp': [null, Validators.compose([Validators.required, Validators.min(100000), Validators.max(999999)])],
306
+ 'otp': [null, [Validators.required, Validators.minLength(6)]],
421
307
  'checked': [false],
422
308
  'option': [mfaOptions && mfaOptions.length > 1 ? null : mfaOptions[0]]
423
309
  });
@@ -431,30 +317,23 @@ export class MfaComponent {
431
317
  get checked() {
432
318
  return this.otpForm.get('checked');
433
319
  }
434
- close(triggerExitAPI = true) {
435
- this.util.hideLoader();
436
- setTimeout(() => this.clear.emit(triggerExitAPI), 1000);
320
+ close() {
321
+ this.clear.emit();
437
322
  }
438
323
  submit() {
439
- this.hideOptValidator = false;
440
- if (this.otpForm.invalid) {
441
- console.log(this.otpForm);
442
- return;
324
+ if (this.otpForm.valid) {
325
+ this.ls.setAuthCode(this.otp.value);
326
+ this.success.emit(this.data);
443
327
  }
444
- this.ls.setAuthCode(this.otp.value);
445
- this.success.emit(this.data);
446
328
  }
447
- signIn() {
448
- this.hideOptValidator = false;
449
- if (this.otpForm.invalid) {
450
- console.log(this.otpForm);
329
+ async signIn() {
330
+ if (this.otp.invalid) {
451
331
  return;
452
332
  }
453
333
  let auth = {};
454
334
  auth.userId = this.user.username;
455
335
  auth.password = this.user.password;
456
336
  auth.otp = this.otp.value;
457
- auth.language = localStorage.getItem("language");
458
337
  auth.istrustedDevice = this.checked.value + "";
459
338
  this.blocked = true;
460
339
  this.successDtls = null;
@@ -472,15 +351,7 @@ export class MfaComponent {
472
351
  });
473
352
  }, err => {
474
353
  this.error.emit(err);
475
- if (err.msg[0].includes("Claimant Account is Locked - OTP attempts exceeded")) {
476
- console.log("Redirecting to identity proofing.");
477
- this.util.hideLoader();
478
- this.util.showError('Claimant Account is Locked - OTP attempts has exceeded');
479
- this.close();
480
- }
481
- else {
482
- this.errorDtls = err.msg;
483
- }
354
+ this.errorDtls = err.msg;
484
355
  this.util.hideLoader();
485
356
  this.blocked = false;
486
357
  });
@@ -489,65 +360,65 @@ export class MfaComponent {
489
360
  sendOtp(event) {
490
361
  this.resendAuthCode(event.value);
491
362
  }
492
- get AccessVerify() {
493
- return this.translateService.instant('mfa.access.verify.six');
494
- }
495
- get AccessRequired() {
496
- return this.translateService.instant('mfa.access.required');
497
- }
498
- get AccessConfirm() {
499
- return this.translateService.instant('mfa.access.confirm');
500
- }
501
363
  resendAuthCode(otpType) {
502
364
  this.successDtls = null;
503
365
  this.errorDtls = null;
504
- otpType = "TEX"; //This has to be changed in the backend once mfaPreference is saved
505
- this.ls.generateOtp(this.user.username, otpType).subscribe((res) => {
506
- this.blocked = false;
507
- this.successDtls = 'Access code sent successfully.';
508
- this.counter.next(60);
509
- this.setCountdown();
510
- }, (err) => {
366
+ this.blocked = true;
367
+ this.cs.generateCaptchaToken(this.RESEND_CODE_ACTION_NAME)
368
+ .subscribe((token) => {
369
+ this.cs.setInvisibelCaptcha(token);
370
+ this.ls
371
+ .generateOtp(this.user.username, otpType)
372
+ .subscribe(res => {
373
+ this.blocked = false;
374
+ this.successDtls = "Access code sent successfully.";
375
+ this.counter.next(60);
376
+ this.setCountdown();
377
+ }, err => {
378
+ this.successDtls = null;
379
+ this.blocked = false;
380
+ this.errorDtls = err.msg;
381
+ });
382
+ }, err => {
511
383
  this.successDtls = null;
512
384
  this.blocked = false;
513
- this.errorDtls = err.msg;
385
+ this.errorDtls = 'Captcha verification failed. Please retry.';
386
+ console.log('error while verifying captcha', err);
514
387
  });
515
388
  }
516
- static { this.ɵfac = function MfaComponent_Factory(t) { return new (t || MfaComponent)(i0.ɵɵdirectiveInject(i1.LoginService), i0.ɵɵdirectiveInject(i2.UntypedFormBuilder), i0.ɵɵdirectiveInject(i3.UtilService), i0.ɵɵdirectiveInject(i4.NavController), i0.ɵɵdirectiveInject(i5.CaptchaService), i0.ɵɵdirectiveInject(i6.SecurityService), i0.ɵɵdirectiveInject(i7.Router), i0.ɵɵdirectiveInject(i8.TranslateService)); }; }
389
+ static { this.ɵfac = function MfaComponent_Factory(t) { return new (t || MfaComponent)(i0.ɵɵdirectiveInject(i1.LoginService), i0.ɵɵdirectiveInject(i2.UntypedFormBuilder), i0.ɵɵdirectiveInject(i3.UtilService), i0.ɵɵdirectiveInject(i4.NavController), i0.ɵɵdirectiveInject(i5.CaptchaService)); }; }
517
390
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MfaComponent, selectors: [["app-mfa"]], viewQuery: function MfaComponent_Query(rf, ctx) { if (rf & 1) {
518
391
  i0.ɵɵviewQuery(_c0, 5);
519
392
  } if (rf & 2) {
520
393
  let _t;
521
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.otpField = _t.first);
522
- } }, inputs: { user: "user", heading: "heading", requestCode: "requestCode", data: "data", mfaError: "mfaError", hideButtons: "hideButtons", returningUser: "returningUser", display: "display" }, outputs: { clear: "clear", success: "success", error: "error" }, features: [i0.ɵɵNgOnChangesFeature], decls: 9, vars: 6, consts: [[3, "formGroup"], ["otpFormDirective", "ngForm"], [1, "heading", 2, "padding-left", "10px"], ["style", "padding-left: 10px;", 4, "ngIf"], ["class", "ion-text-center", 4, "ngIf"], ["class", "ion-text-right ion-padding-bottom", 4, "ngIf"], [2, "padding-left", "10px"], [1, "ion-padding-top", "p-formgrid", "p-grid"], [1, "field", "ion-text-left"], ["for", "otpType"], ["optionLabel", "text", "optionValue", "value", 3, "options", "formControl", "onChange"], [1, "ion-padding-top"], [4, "ngIf"], ["for", "authCode", 4, "ngIf"], ["formControlName", "otp", "maxlength", "6", "minlength", "6", "mode", "decimal", "size", "6", "autocomplete", "off", 3, "useGrouping", "inputId", "click", "keyup", "keyup.enter"], ["otpField", ""], [3, "field", "form", "errDef", 4, "ngIf"], ["lines", "none", 4, "ngIf"], ["style", "color: var(--ion-color-green)", 4, "ngIf"], ["for", "authCode"], [3, "field", "form", "errDef"], ["lines", "none"], ["slot", "start", "formControlName", "checked"], [1, "ion-text-wrap"], [2, "color", "var(--ion-color-green)"], ["tabindex", "0", 1, "link", 3, "keyup.enter", "click"], [1, "ion-text-center"], ["name", "dots"], [1, "ion-text-right", "ion-padding-bottom"], ["tabindex", "0", "shape", "round", "type", "reset", "color", "success", "fill", "outline", 3, "keyup.enter", "click"], ["tabindex", "0", "shape", "round", "type", "submit", "color", "success", 3, "keyup.enter", "click", 4, "ngIf"], ["tabindex", "0", "shape", "round", "type", "submit", "color", "success", 3, "keyup.enter", "click"]], template: function MfaComponent_Template(rf, ctx) { if (rf & 1) {
394
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.otpFormDirective = _t.first);
395
+ } }, inputs: { user: "user", heading: "heading", requestCode: "requestCode", data: "data", mfaError: "mfaError", hideButtons: "hideButtons" }, outputs: { clear: "clear", success: "success", error: "error" }, features: [i0.ɵɵNgOnChangesFeature], decls: 10, vars: 8, consts: [[3, "formGroup"], ["otpFormDirective", "ngForm"], [1, "heading", 2, "padding-left", "10px"], ["style", "padding-left: 10px;", 4, "ngIf"], ["class", "ion-text-center", 4, "ngIf"], ["class", "ion-text-right ion-padding-bottom", 4, "ngIf"], [2, "padding-left", "10px"], [1, "ion-padding-top", "p-formgrid", "p-grid"], [1, "field", "ion-text-left"], ["for", "otpType"], ["optionLabel", "text", "optionValue", "value", 3, "options", "formControl", "onChange"], [1, "ion-padding-top"], [4, "ngIf"], ["for", "authCode"], ["formControlName", "otp", "maxlength", "6", "minlength", "6", "mode", "decimal", "size", "6", 3, "useGrouping", "inputId"], [3, "field", "form", "errDef"], ["lines", "none", 4, "ngIf"], ["style", "color: var(--ion-color-green)", 4, "ngIf"], [1, "link", 3, "click"], ["lines", "none"], ["slot", "start", "formControlName", "checked"], [1, "ion-text-wrap"], [2, "color", "var(--ion-color-green)"], [1, "ion-text-center"], ["name", "dots"], [1, "ion-text-right", "ion-padding-bottom"], ["shape", "round", "type", "reset", "color", "success", "fill", "outline", 3, "click"], ["shape", "round", "type", "submit", "color", "success", 3, "click", 4, "ngIf"], ["shape", "round", "type", "submit", "color", "success", 3, "click"]], template: function MfaComponent_Template(rf, ctx) { if (rf & 1) {
523
396
  i0.ɵɵelementStart(0, "form", 0, 1)(2, "h4", 2);
524
397
  i0.ɵɵtext(3);
398
+ i0.ɵɵpipe(4, "translate");
525
399
  i0.ɵɵelementEnd();
526
- i0.ɵɵtemplate(4, MfaComponent_div_4_Template, 7, 5, "div", 3)(5, MfaComponent_div_5_Template, 24, 16, "div", 3);
527
- i0.ɵɵelementStart(6, "p-footer");
528
- i0.ɵɵtemplate(7, MfaComponent_div_7_Template, 2, 0, "div", 4)(8, MfaComponent_div_8_Template, 6, 5, "div", 5);
400
+ i0.ɵɵtemplate(5, MfaComponent_div_5_Template, 7, 5, "div", 3)(6, MfaComponent_div_6_Template, 23, 16, "div", 3);
401
+ i0.ɵɵelementStart(7, "p-footer");
402
+ i0.ɵɵtemplate(8, MfaComponent_div_8_Template, 2, 0, "div", 4)(9, MfaComponent_div_9_Template, 5, 2, "div", 5);
529
403
  i0.ɵɵelementEnd()();
530
404
  } if (rf & 2) {
531
405
  i0.ɵɵproperty("formGroup", ctx.otpForm);
532
406
  i0.ɵɵadvance(3);
533
- i0.ɵɵtextInterpolate(ctx.heading ? ctx.heading : ctx.AccessConfirm);
534
- i0.ɵɵadvance(1);
535
- i0.ɵɵproperty("ngIf", !ctx.option.value && !ctx.returningUser);
407
+ i0.ɵɵtextInterpolate(ctx.heading ? ctx.heading : i0.ɵɵpipeBind1(4, 6, "Confirm access to your account"));
408
+ i0.ɵɵadvance(2);
409
+ i0.ɵɵproperty("ngIf", !ctx.option.value);
536
410
  i0.ɵɵadvance(1);
537
411
  i0.ɵɵproperty("ngIf", ctx.option.value);
538
412
  i0.ɵɵadvance(2);
539
413
  i0.ɵɵproperty("ngIf", ctx.blocked);
540
414
  i0.ɵɵadvance(1);
541
415
  i0.ɵɵproperty("ngIf", !ctx.blocked && !ctx.hideButtons);
542
- } }, dependencies: [i4.IonButton, i4.IonCheckbox, i4.IonItem, i4.IonLabel, i4.IonSpinner, i4.BooleanValueAccessor, i9.NgIf, i10.Footer, i11.MatError, i2.ɵNgNoValidate, i2.NgControlStatus, i2.NgControlStatusGroup, i2.MinLengthValidator, i2.MaxLengthValidator, i2.FormControlDirective, i2.FormGroupDirective, i2.FormControlName, i12.SelectButton, i13.InputNumber, i14.ErrorComponent, i8.TranslatePipe, i15.MaskEmailPipe], styles: ["[_nghost-%COMP%] .panel{box-shadow:none!important}"] }); }
416
+ } }, dependencies: [i4.IonButton, i4.IonCheckbox, i4.IonItem, i4.IonLabel, i4.IonSpinner, i4.BooleanValueAccessor, i6.NgIf, i7.Footer, i8.MatError, i2.ɵNgNoValidate, i2.NgControlStatus, i2.NgControlStatusGroup, i2.MinLengthValidator, i2.MaxLengthValidator, i2.FormControlDirective, i2.FormGroupDirective, i2.FormControlName, i9.SelectButton, i10.InputNumber, i11.ErrorComponent, i12.TranslatePipe, i13.MaskEmailPipe], styles: ["[_nghost-%COMP%] .panel{box-shadow:none!important}"] }); }
543
417
  }
544
418
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MfaComponent, [{
545
419
  type: Component,
546
- args: [{ selector: 'app-mfa', template: "<form [formGroup]=\"otpForm\" #otpFormDirective=\"ngForm\">\r\n <h4 style=\"padding-left: 10px;\" class=\"heading\">{{ heading ? heading : AccessConfirm}}</h4>\r\n\r\n <div style=\"padding-left: 10px;\" *ngIf=\"!option.value && !returningUser\">\r\n <div class=\"ion-padding-top p-formgrid p-grid\">\r\n <div class=\"field ion-text-left\">\r\n <label for=\"otpType\">{{'mfa.how.send'|translate}}</label>\r\n <p-selectButton [options]=\"options\" optionLabel=\"text\" optionValue=\"value\" [formControl]=\"option\" (onChange)=\"sendOtp($event)\"></p-selectButton>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div style=\"padding-left: 10px;\" *ngIf=\"option.value\">\r\n <div class=\"ion-padding-top\">\r\n <ion-label>\r\n <span *ngIf=\"option.value == 'email' && !returningUser\">{{'mfa.code.sent.email'|translate}}:&nbsp; <b>{{user?.emailId | maskEmail}}</b></span>\r\n <span *ngIf=\"option.value == 'text' && !returningUser\">{{'mfa.code.sent.cell'|translate}}&nbsp; <b>{{user?.cellphoneNo | maskEmail}}</b></span>\r\n <span *ngIf=\"returningUser\">{{'mfa.code.sent.cell'|translate}}&nbsp; <b>{{user?.cellphoneNo | maskEmail}}</b></span>\r\n </ion-label><br/><br/>\r\n <ion-label *ngIf=\"option.value == 'email' && !returningUser\">\r\n {{'mfa.code.sent.junk'|translate}}\r\n </ion-label>\r\n <span *ngIf=\"option.value == 'email' && !returningUser\"><br/><br/></span>\r\n <div class=\"field ion-text-left\">\r\n <label for=\"authCode\" *ngIf=\"!returningUser\">{{'mfa.enter.code'|translate}}</label><br/>\r\n <label for=\"authCode\" *ngIf=\"returningUser\">{{'mfa.enter.code.received'|translate}}</label><br/>\r\n <p-inputNumber (click)=\"hideOptValidator=false\" (keyup)=\"hideOptValidator=false\" #otpField formControlName=\"otp\" maxlength=\"6\" minlength=\"6\" mode=\"decimal\" [useGrouping]=\"false\" size=\"6\" [inputId]=\"'authCode'\" autocomplete=\"off\" (keyup.enter)=\"(!requestCode && option.value) ? signIn() : submit()\">\r\n </p-inputNumber>\r\n <app-error *ngIf=\"!hideOptValidator\" [field]='otp' [form]=\"otpForm\" [errDef]=\"{ \r\n required: AccessRequired,\r\n min: AccessVerify,\r\n max: AccessVerify\r\n }\"></app-error>\r\n </div>\r\n <ion-item lines=\"none\" *ngIf=\"false\">\r\n <ion-checkbox slot=\"start\" formControlName=\"checked\"></ion-checkbox>\r\n <ion-label class=\"ion-text-wrap\">{{'mfa.browser.trust'|translate}}</ion-label>\r\n </ion-item>\r\n </div>\r\n \r\n <mat-error *ngIf=\"errorDtls\">{{errorDtls}}<br /><br /></mat-error>\r\n <ion-label *ngIf=\"successDtls\" style=\"color: var(--ion-color-green)\">{{successDtls}}<br/><br /></ion-label>\r\n <ion-label *ngIf=\"!blocked\">\r\n <span *ngIf=\"counter.getValue() != 1 && !returningUser\">\r\n {{'mfa.code.not.received'|translate}} <b>{{counter.getValue()}} second(s)</b>.\r\n </span>\r\n <span *ngIf=\"counter.getValue() == 1 && !returningUser\">\r\n <a tabindex=\"0\" (keyup.enter)=\"resendAuthCode(option.value)\" (click)=\"resendAuthCode(option.value)\" class=\"link\">{{'mfa.get.new.code'|translate}}</a>\r\n </span>\r\n <span *ngIf=\"counter.getValue() == 1 && returningUser\">\r\n <a tabindex=\"0\" (keyup.enter)=\"resendAuthCode(option.value)\" (click)=\"resendAuthCode(option.value)\" class=\"link\"> {{'mfa.resend.verification.code'|translate}}</a>\r\n </span>\r\n </ion-label>\r\n <p *ngIf=\"!returningUser\"><a tabindex=\"0\" class=\"link\" (keyup.enter)=\"showHelp = !showHelp; $event.preventDefault()\" (click)=\"showHelp = !showHelp; $event.preventDefault()\">Can't get to your {{option.value == 'text' ? 'cellphone' : 'email'}}?</a></p>\r\n <!-- <p *ngIf=\"returningUser\"><a tabindex=\"0\" class=\"link\" (keyup.enter)=\"close()\" (click)=\"close()\">Unable to verify</a></p> -->\r\n <p *ngIf=\"showHelp && !returningUser\">\r\n {{'mfa.good.for.time'|translate}}<br/>\r\n or<br/>\r\n If your {{option.value == 'text' ? 'cellphone number' : 'email address'}} has changed call KDOL at 785-575-1460, Monday through Friday from 8 am to 4:30 pm.\r\n </p>\r\n </div>\r\n\r\n <p-footer>\r\n <div *ngIf=\"blocked\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div class=\"ion-text-right ion-padding-bottom\" *ngIf=\"!blocked && !hideButtons\">\r\n <ion-button tabindex=\"0\" shape=\"round\" type=\"reset\" (keyup.enter)=\"close(false)\" (click)=\"close(false)\" color=\"success\" fill=\"outline\">\r\n {{'common.close'|translate}}\r\n </ion-button>\r\n <ion-button tabindex=\"0\" shape=\"round\" type=\"submit\" (keyup.enter)=\"signIn()\" (click)=\"signIn()\" color=\"success\" *ngIf=\"!requestCode && option.value\">\r\n {{'common.submit'|translate}}\r\n </ion-button>\r\n <ion-button tabindex=\"0\" shape=\"round\" type=\"submit\" (keyup.enter)=\"submit()\" (click)=\"submit()\" color=\"success\" *ngIf=\"requestCode && option.value\">\r\n {{'common.submit'|translate}}\r\n </ion-button>\r\n </div>\r\n </p-footer>\r\n</form>", styles: [":host ::ng-deep .panel{box-shadow:none!important}\n"] }]
547
- }], () => [{ type: i1.LoginService }, { type: i2.UntypedFormBuilder }, { type: i3.UtilService }, { type: i4.NavController }, { type: i5.CaptchaService }, { type: i6.SecurityService }, { type: i7.Router }, { type: i8.TranslateService }], { otpField: [{
548
- type: ViewChild,
549
- args: ["otpField"]
550
- }], user: [{
420
+ args: [{ selector: 'app-mfa', template: "<form [formGroup]=\"otpForm\" #otpFormDirective=\"ngForm\">\r\n <h4 style=\"padding-left: 10px;\" class=\"heading\">{{ heading ? heading : 'Confirm access to your account' | translate}}</h4>\r\n\r\n <div style=\"padding-left: 10px;\" *ngIf=\"!option.value\">\r\n <div class=\"ion-padding-top p-formgrid p-grid\">\r\n <div class=\"field ion-text-left\">\r\n <label for=\"otpType\">{{'How would you like us to send your access code?' | translate}}</label>\r\n <p-selectButton [options]=\"options\" optionLabel=\"text\" optionValue=\"value\" [formControl]=\"option\" (onChange)=\"sendOtp($event)\"></p-selectButton>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div style=\"padding-left: 10px;\" *ngIf=\"option.value\">\r\n <div class=\"ion-padding-top\">\r\n <ion-label>\r\n <span *ngIf=\"option.value == 'email'\">An access code has been sent to your email address:&nbsp; <b>{{user?.emailId | maskEmail}}</b></span>\r\n <span *ngIf=\"option.value == 'text'\">An access code has been sent to your cellphone:&nbsp; <b>{{user?.cellphoneNo | maskEmail}}</b></span>\r\n </ion-label><br/><br/>\r\n <ion-label *ngIf=\"option.value == 'email'\">\r\n Check your junk folder if you don't see it in your inbox.\r\n </ion-label>\r\n <span *ngIf=\"option.value == 'email'\"><br/><br/></span>\r\n <div class=\"field ion-text-left\">\r\n <label for=\"authCode\">Enter code</label><br/>\r\n <p-inputNumber formControlName=\"otp\" maxlength=\"6\" minlength=\"6\" mode=\"decimal\" [useGrouping]=\"false\" size=\"6\" [inputId]=\"'authCode'\">\r\n </p-inputNumber>\r\n <app-error [field]='otp' [form]=\"otpFormDirective\" [errDef]=\"{ \r\n required: 'Access code is required.',\r\n minlength: 'Access code should have 6 numbers.'\r\n }\"></app-error>\r\n </div>\r\n <ion-item lines=\"none\" *ngIf=\"false\">\r\n <ion-checkbox slot=\"start\" formControlName=\"checked\"></ion-checkbox>\r\n <ion-label class=\"ion-text-wrap\">{{'I trust this browser.' | translate}}</ion-label>\r\n </ion-item>\r\n </div>\r\n \r\n <mat-error *ngIf=\"errorDtls\">{{errorDtls}}<br /><br /></mat-error>\r\n <ion-label *ngIf=\"successDtls\" style=\"color: var(--ion-color-green)\">{{successDtls}}<br/><br /></ion-label>\r\n <ion-label *ngIf=\"!blocked\">\r\n <span *ngIf=\"counter.getValue() != 1\">\r\n Haven't received the code? Resend option available in <b>{{counter.getValue()}} second(s)</b>.\r\n </span>\r\n <span *ngIf=\"counter.getValue() == 1\">\r\n <a (click)=\"resendAuthCode(option.value)\" class=\"link\">Get new code</a>\r\n </span>\r\n </ion-label>\r\n <p><a class=\"link\" (click)=\"showHelp = !showHelp; $event.preventDefault()\">Can't get to your {{option.value == 'text' ? 'cellphone' : 'email'}}?</a></p>\r\n <p *ngIf=\"showHelp\">\r\n Your code is good for 15 minutes. You can try again later.<br/>\r\n or<br/>\r\n If your {{option.value == 'text' ? 'cellphone number' : 'email address'}} has changed call MDES at 601-493-9427, Monday through Friday from 8 am to 5 pm.\r\n </p>\r\n </div>\r\n\r\n <p-footer>\r\n <div *ngIf=\"blocked\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n <div class=\"ion-text-right ion-padding-bottom\" *ngIf=\"!blocked && !hideButtons\">\r\n <ion-button shape=\"round\" type=\"reset\" (click)=\"close()\" color=\"success\" fill=\"outline\">\r\n Close\r\n </ion-button>\r\n <ion-button shape=\"round\" type=\"submit\" (click)=\"signIn()\" color=\"success\" *ngIf=\"!requestCode && option.value\">\r\n Submit\r\n </ion-button>\r\n <ion-button shape=\"round\" type=\"submit\" (click)=\"submit()\" color=\"success\" *ngIf=\"requestCode && option.value\">\r\n Submit\r\n </ion-button>\r\n </div>\r\n </p-footer>\r\n</form>", styles: [":host ::ng-deep .panel{box-shadow:none!important}\n"] }]
421
+ }], () => [{ type: i1.LoginService }, { type: i2.UntypedFormBuilder }, { type: i3.UtilService }, { type: i4.NavController }, { type: i5.CaptchaService }], { user: [{
551
422
  type: Input
552
423
  }], heading: [{
553
424
  type: Input
@@ -559,16 +430,15 @@ export class MfaComponent {
559
430
  type: Input
560
431
  }], hideButtons: [{
561
432
  type: Input
562
- }], returningUser: [{
563
- type: Input
564
- }], display: [{
565
- type: Input
566
433
  }], clear: [{
567
434
  type: Output
568
435
  }], success: [{
569
436
  type: Output
570
437
  }], error: [{
571
438
  type: Output
439
+ }], otpFormDirective: [{
440
+ type: ViewChild,
441
+ args: ['otpFormDirective', { static: false }]
572
442
  }] }); })();
573
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MfaComponent, { className: "MfaComponent", filePath: "lib\\components\\mfa\\mfa.component.ts", lineNumber: 21 }); })();
574
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWZhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZmEvbWZhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZmEvbWZhLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBZ0MsTUFBTSxFQUFpQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUF3QyxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRixPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBZ0IsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNEcEMsOEJBQXlFLGFBQUEsYUFBQSxlQUFBO0lBRzlDLFlBQTRCOztJQUFBLGlCQUFRO0lBQ3pELDBDQUErSDtJQUE3Qiw2S0FBWSxlQUFBLHNCQUFlLENBQUEsSUFBQztJQUFDLGlCQUFpQixFQUFBLEVBQUEsRUFBQTs7O0lBRDNILGVBQTRCO0lBQTVCLDBEQUE0QjtJQUNqQyxlQUFtQjtJQUFuQix3Q0FBbUIsOEJBQUE7OztJQVFuQyw0QkFBd0Q7SUFBQSxZQUEyQzs7SUFBQSx5QkFBRztJQUFBLFlBQTZCOztJQUFBLGlCQUFJLEVBQUE7OztJQUEvRSxlQUEyQztJQUEzQyxrRkFBMkM7SUFBRyxlQUE2QjtJQUE3Qiw0RkFBNkI7OztJQUNuSSw0QkFBdUQ7SUFBQSxZQUF5Qzs7SUFBQSx5QkFBRztJQUFBLFlBQWlDOztJQUFBLGlCQUFJLEVBQUE7OztJQUFqRixlQUF5QztJQUF6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LElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQztRQUMzQixDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7NkVBclBVLFlBQVk7b0VBQVosWUFBWTs7Ozs7O1lDcEJ6QixrQ0FBdUQsWUFBQTtZQUNMLFlBQXNDO1lBQUEsaUJBQUs7WUFFM0YsNkRBT00sa0RBQUE7WUFvRE4sZ0NBQVU7WUFDUiw2REFFTSxnREFBQTtZQVlSLGlCQUFXLEVBQUE7O1lBN0VQLHVDQUFxQjtZQUN1QixlQUFzQztZQUF0QyxtRUFBc0M7WUFFcEQsZUFBcUM7WUFBckMsOERBQXFDO1lBU3JDLGVBQWtCO1lBQWxCLHVDQUFrQjtZQW1ENUMsZUFBYTtZQUFiLGtDQUFhO1lBRzZCLGVBQThCO1lBQTlCLHVEQUE4Qjs7O2lGRDlDckUsWUFBWTtjQUx4QixTQUFTOzJCQUNFLFNBQVM7bVBBTUksUUFBUTtrQkFBOUIsU0FBUzttQkFBQyxVQUFVO1lBYXJCLElBQUk7a0JBREgsS0FBSztZQUlHLE9BQU87a0JBQWYsS0FBSztZQUlOLFdBQVc7a0JBRFYsS0FBSztZQUtOLElBQUk7a0JBREgsS0FBSztZQUlOLFFBQVE7a0JBRFAsS0FBSztZQUlOLFdBQVc7a0JBRFYsS0FBSztZQUlOLGFBQWE7a0JBRFosS0FBSztZQUdOLE9BQU87a0JBRE4sS0FBSztZQUdJLEtBQUs7a0JBQWQsTUFBTTtZQUVHLE9BQU87a0JBQWhCLE1BQU07WUFFRyxLQUFLO2tCQUFkLE1BQU07O2tGQTNDSSxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE5hdkNvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgaW50ZXJ2YWwsIFN1YnNjcmlwdGlvbiwgdGltZXIgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgRXJyb3JNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9FcnJvck1vZGVsJztcclxuaW1wb3J0IHsgQ29tYm9PcHRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9Db21ib01vZGVsJztcclxuaW1wb3J0IHsgVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1VzZXJNb2RlbCc7XHJcbmltcG9ydCB7IENhcHRjaGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2FwdGNoYS9jYXB0Y2hhLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2dpblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2dpbi9sb2dpbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91dGlsL3V0aWwuc2VydmljZSc7XHJcbmltcG9ydCB7IFNlY3VyaXR5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NlY3VyaXR5LXNlcnZpY2Uvc2VjdXJpdHkuc2VydmljZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLW1mYScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21mYS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbWZhLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE1mYUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25DaGFuZ2VzLCBPbkluaXQge1xyXG5cclxuICBAVmlld0NoaWxkKFwib3RwRmllbGRcIikgb3RwRmllbGQ7XHJcbiAgcHJpdmF0ZSBSRVNFTkRfQ09ERV9BQ1RJT05fTkFNRSA9IFwiTUZBX1JFU0VORF9DT0RFXCI7XHJcbiAgXHJcbiAgcHVibGljIHN1Y2Nlc3NEdGxzO1xyXG5cclxuICBwdWJsaWMgYmxvY2tlZDogYm9vbGVhbjtcclxuXHJcbiAgcHVibGljIGlzQ2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgc2hvd0hlbHA6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIGhpZGVPcHRWYWxpZGF0b3IgPSB0cnVlO1xyXG4gIEBJbnB1dCgpXHJcbiAgdXNlciA6IFVzZXJNb2RlbDtcclxuXHJcbiAgLy9JZiBzcGVjaWZpZWQsIGl0IHdpbGwgY2hhbmdlIHRoZSBkZWZhdWx0IGhlYWRpbmcgb24gdGhlIGNvbXBvbmVudCB3aXRoIHRoZSBvbmNlIHNwZWNpZmllZCBpbiB0aGlzIGZpZWxkLlxyXG4gIEBJbnB1dCgpIGhlYWRpbmcgOiBzdHJpbmc7XHJcblxyXG4gIC8vUmVxdWVzdCBuZXcgYXV0aGNvZGUgd2hlbiBjb21wb25lbnRzIGxvYWQuXHJcbiAgQElucHV0KClcclxuICByZXF1ZXN0Q29kZSA6IGJvb2xlYW47XHJcblxyXG4gIC8vUGFzcyB0aGlzIGRhdGEgYWxvbmcgd2l0aCBvdXRwdXQgc28gdGhhdCBjYWxsaW5nIGNvbXBvbmVudCBjYW4gdGFrZSBjYXJlIG9mIGl0LlxyXG4gIEBJbnB1dCgpXHJcbiAgZGF0YSA6IGFueTtcclxuXHJcbiAgQElucHV0KClcclxuICBtZmFFcnJvciA6IEVycm9yTW9kZWw7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgaGlkZUJ1dHRvbnMgOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcmV0dXJuaW5nVXNlcjogYm9vbGVhbjtcclxuICBASW5wdXQoKVxyXG4gIGRpc3BsYXkgPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIGNsZWFyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpIHN1Y2Nlc3M6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAT3V0cHV0KCkgZXJyb3I6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBwdWJsaWMgb3RwRm9ybSA6IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIHB1YmxpYyBlcnJvckR0bHM7XHJcblxyXG4gIHB1YmxpYyB0aW1lID0gNjBcclxuICBwdWJsaWMgdGltZXJJbnRlcnZhbCA9IGludGVydmFsKDEwMDApOyAvLzFzXHJcbiAgcHVibGljIHRpbWVyID0gdGltZXIoNjAwMDApOyAvLzkwc1xyXG4gIHB1YmxpYyBjb3VudERvd24gPSB0aGlzLnRpbWVySW50ZXJ2YWwucGlwZSh0YWtlKHRoaXMudGltZSkpO1xyXG4gIHB1YmxpYyBjb3VudGVyIDogQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KDApO1xyXG4gIGNvdW50ZXJTdWJzY3JpcHRpb24gOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIHB1YmxpYyBvcHRpb25zIDogQ29tYm9PcHRpb25bXSA9IFtcclxuICAgIHt2YWx1ZSA6ICd0ZXh0JywgdGV4dCA6ICd0ZXh0J30sXHJcbiAgICB7dmFsdWUgOiAnZW1haWwnLCB0ZXh0IDogJ2VtYWlsJ31cclxuICBdO1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIGxzOiBMb2dpblNlcnZpY2UsIHB1YmxpYyBmYiA6IFVudHlwZWRGb3JtQnVpbGRlcixcclxuICAgICAgICAgICAgICBwcml2YXRlIHV0aWw6IFV0aWxTZXJ2aWNlLCBwdWJsaWMgbmF2IDogTmF2Q29udHJvbGxlciwgcHJpdmF0ZSBjczogQ2FwdGNoYVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgIHByaXZhdGUgc3M6IFNlY3VyaXR5U2VydmljZSwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgICAgICAgICAgICAgcHVibGljIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UpIHsgXHJcbiAgICAgICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UudXNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibGFuZ3VhZ2VcIikpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYoY2hhbmdlcy5tZmFFcnJvcj8uY3VycmVudFZhbHVlKXtcclxuICAgICAgdGhpcy5lcnJvckR0bHMgPSB0aGlzLm1mYUVycm9yLm1zZztcclxuICAgICAgdGhpcy5zdWNjZXNzRHRscyA9IG51bGw7XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlcy5kaXNwbGF5LmN1cnJlbnRWYWx1ZSkgeyAgLy8gd2luZG93IG9wZW5cclxuICAgICAgdGhpcy5uZ09uSW5pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICBcclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmKHRoaXMuY291bnRlclN1YnNjcmlwdGlvbil7XHJcbiAgICAgIHRoaXMuY291bnRlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UudXNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibGFuZ3VhZ2VcIikpO1xyXG4gICAgdGhpcy5pbml0aWxpemVGb3JtKCk7XHJcbiAgICAvL3RoaXMuc2V0Q291bnRkb3duKCk7XHJcbiAgICBpZih0aGlzLnJlcXVlc3RDb2RlKXtcclxuICAgICAgbGV0IG1mYU9wdGlvbnMgPSB0aGlzLnVzZXI/LnN1cHBvcnRlZE1mYVR5cGVzPy5zcGxpdChcIixcIikgfHwgWydlbWFpbCddO1xyXG4gICAgICBpZihtZmFPcHRpb25zLmxlbmd0aCA+IDEpe1xyXG4gICAgICAgIC8vYWxsb3cgdXNlciB0byBjaG9vc2Ugb3RwIG9wdGlvblxyXG4gICAgICB9IGVsc2V7XHJcbiAgICAgICAgdGhpcy5yZXF1ZXN0TmV3QXV0aENvZGUoJ2VtYWlsJyk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2V0Q291bnRkb3duKCk7XHJcbiAgICB9XHJcbiAgICBzZXRUaW1lb3V0KF8gPT4ge1xyXG4gICAgICB0aGlzLm90cEZpZWxkLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgIH0sIDEwMClcclxuICB9XHJcblxyXG4gIHJlcXVlc3ROZXdBdXRoQ29kZShvdHBUeXBlIDogc3RyaW5nKXtcclxuICAgIHRoaXMuYmxvY2tlZCA9IHRydWU7XHJcbiAgICB0aGlzLmxzLmdldE5ld0F1dGhDb2RlKG90cFR5cGUpXHJcbiAgICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICAgICAgdGhpcy5ibG9ja2VkID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLnN1Y2Nlc3NEdGxzID0gXCJBY2Nlc3MgY29kZSBzZW50IHN1Y2Nlc3NmdWxseS5cIjtcclxuICAgICAgICAgIHRoaXMuY291bnRlci5uZXh0KDYwKTtcclxuICAgICAgICAgIHRoaXMuc2V0Q291bnRkb3duKCk7XHJcbiAgICAgICAgfSwgZXJyID0+IHtcclxuICAgICAgICAgIHRoaXMuc3VjY2Vzc0R0bHMgPSBudWxsO1xyXG4gICAgICAgICAgdGhpcy5ibG9ja2VkID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLmVycm9yRHRscyA9IGVyci5tc2c7XHJcbiAgICAgICAgfSlcclxuICB9XHJcblxyXG4gIHNldENvdW50ZG93bigpe1xyXG4gICAgaWYodGhpcy5jb3VudGVyU3Vic2NyaXB0aW9uKXtcclxuICAgICAgdGhpcy5jb3VudGVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNvdW50ZXJTdWJzY3JpcHRpb24gPSB0aGlzLmNvdW50RG93bi5zdWJzY3JpYmUodmFsID0+e1xyXG4gICAgICBsZXQgdmFsdWUgPSB0aGlzLnRpbWUgLSB2YWw7XHJcbiAgICAgIHRoaXMuY291bnRlci5uZXh0KHZhbHVlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaW5pdGlsaXplRm9ybSgpe1xyXG4gICAgbGV0IG1mYU9wdGlvbnMgPSB0aGlzLnVzZXI/LnN1cHBvcnRlZE1mYVR5cGVzPy5zcGxpdChcIixcIikgfHwgWydlbWFpbCddO1xyXG4gICAgdGhpcy5vdHBGb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgICdvdHAnIDogW251bGwgLCBWYWxpZGF0b3JzLmNvbXBvc2UoW1ZhbGlkYXRvcnMucmVxdWlyZWQsICBWYWxpZGF0b3JzLm1pbigxMDBfMDAwKSxWYWxpZGF0b3JzLm1heCg5OTlfOTk5KV0pXSxcclxuICAgICAgJ2NoZWNrZWQnIDogW2ZhbHNlXSxcclxuICAgICAgJ29wdGlvbicgOiBbIG1mYU9wdGlvbnMgJiYgbWZhT3B0aW9ucy5sZW5ndGggPiAxID8gbnVsbCA6IG1mYU9wdGlvbnNbMF1dXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldCBvdHAoKXtcclxuICAgIHJldHVybiB0aGlzLm90cEZvcm0uZ2V0KCdvdHAnKTtcclxuICB9XHJcblxyXG4gIGdldCBvcHRpb24oKXtcclxuICAgIHJldHVybiB0aGlzLm90cEZvcm0uZ2V0KCdvcHRpb24nKTtcclxuICB9XHJcblxyXG4gIGdldCBjaGVja2VkKCl7XHJcbiAgICByZXR1cm4gdGhpcy5vdHBGb3JtLmdldCgnY2hlY2tlZCcpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UodHJpZ2dlckV4aXRBUEkgPSB0cnVlKXtcclxuICAgIHRoaXMudXRpbC5oaWRlTG9hZGVyKCk7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY2xlYXIuZW1pdCh0cmlnZ2VyRXhpdEFQSSksIDEwMDApO1xyXG4gIH1cclxuXHJcbiAgc3VibWl0KCl7XHJcbiAgICB0aGlzLmhpZGVPcHRWYWxpZGF0b3IgPSBmYWxzZTtcclxuICAgIGlmKHRoaXMub3RwRm9ybS5pbnZhbGlkKXtcclxuICAgICAgY29uc29sZS5sb2codGhpcy5vdHBGb3JtKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5scy5zZXRBdXRoQ29kZSh0aGlzLm90cC52YWx1ZSk7XHJcbiAgICB0aGlzLnN1Y2Nlc3MuZW1pdCh0aGlzLmRhdGEpO1xyXG4gIH1cclxuICBcclxuICBzaWduSW4oKXtcclxuICAgIHRoaXMuaGlkZU9wdFZhbGlkYXRvciA9IGZhbHNlO1xyXG4gICAgaWYodGhpcy5vdHBGb3JtLmludmFsaWQpe1xyXG4gICAgICBjb25zb2xlLmxvZyh0aGlzLm90cEZvcm0pO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBsZXQgYXV0aCA6IGFueSA9IHt9O1xyXG4gICAgYXV0aC51c2VySWQgPSB0aGlzLnVzZXIudXNlcm5hbWU7XHJcbiAgICBhdXRoLnBhc3N3b3JkID0gdGhpcy51c2VyLnBhc3N3b3JkO1xyXG4gICAgYXV0aC5vdHAgPSB0aGlzLm90cC52YWx1ZTtcclxuICAgIGF1dGgubGFuZ3VhZ2U9bG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJsYW5ndWFnZVwiKTtcclxuICAgIGF1dGguaXN0cnVzdGVkRGV2aWNlID0gdGhpcy5jaGVja2VkLnZhbHVlICsgXCJcIjtcclxuICAgIHRoaXMuYmxvY2tlZCA9IHRydWU7XHJcbiAgICB0aGlzLnN1Y2Nlc3NEdGxzID0gbnVsbDtcclxuICAgIHRoaXMuZXJyb3JEdGxzID0gbnVsbDtcclxuICAgIHRoaXMudXRpbFxyXG4gICAgICAgIC5zaG93TG9hZGVyKClcclxuICAgICAgICAudGhlbihcclxuICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5scy5sb2dpbkFuZENoZWNrRm9yTUZBKGF1dGgpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgcmVzID0+IHtcclxuICAgICAgICAgICAgICAgIGxldCB1c2VyTW9kZWwgOiBVc2VyTW9kZWwgPSByZXM7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmxzLnNldFVzZXIodXNlck1vZGVsKS50aGVuKFxyXG4gICAgICAgICAgICAgICAgICByZXMgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3VjY2Vzcy5lbWl0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ibG9ja2VkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51dGlsLmhpZGVMb2FkZXIoKTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIGVyciA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmVycm9yLmVtaXQoZXJyKTtcclxuICAgICAgICAgICAgICAgIGlmKGVyci5tc2dbMF0uaW5jbHVkZXMoXCJDbGFpbWFudCBBY2NvdW50IGlzIExvY2tlZCAtIE9UUCBhdHRlbXB0cyBleGNlZWRlZFwiKSl7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiUmVkaXJlY3RpbmcgdG8gaWRlbnRpdHkgcHJvb2ZpbmcuXCIpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLnV0aWwuaGlkZUxvYWRlcigpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLnV0aWwuc2hvd0Vycm9yKCdDbGFpbWFudCBBY2NvdW50IGlzIExvY2tlZCAtIE9UUCBhdHRlbXB0cyBoYXMgZXhjZWVkZWQnKTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5lcnJvckR0bHMgPSBlcnIubXNnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGhpcy51dGlsLmhpZGVMb2FkZXIoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuYmxvY2tlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gIH1cclxuXHJcbiAgc2VuZE90cChldmVudCl7XHJcbiAgICB0aGlzLnJlc2VuZEF1dGhDb2RlKGV2ZW50LnZhbHVlKTtcclxuICB9XHJcblxyXG4gIGdldCBBY2Nlc3NWZXJpZnkoKXtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnbWZhLmFjY2Vzcy52ZXJpZnkuc2l4Jyk7XHJcbiAgfVxyXG4gIGdldCBBY2Nlc3NSZXF1aXJlZCgpe1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdtZmEuYWNjZXNzLnJlcXVpcmVkJyk7XHJcbiAgfVxyXG5cclxuICBnZXQgQWNjZXNzQ29uZmlybSgpe1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdtZmEuYWNjZXNzLmNvbmZpcm0nKTtcclxuICB9XHJcbiAgcmVzZW5kQXV0aENvZGUob3RwVHlwZSA6IHN0cmluZyl7XHJcbiAgICB0aGlzLnN1Y2Nlc3NEdGxzID0gbnVsbDtcclxuICAgIHRoaXMuZXJyb3JEdGxzID0gbnVsbDtcclxuICAgIG90cFR5cGUgPSBcIlRFWFwiOyAvL1RoaXMgaGFzIHRvIGJlIGNoYW5nZWQgaW4gdGhlIGJhY2tlbmQgb25jZSBtZmFQcmVmZXJlbmNlIGlzIHNhdmVkXHJcbiAgICB0aGlzLmxzLmdlbmVyYXRlT3RwKHRoaXMudXNlci51c2VybmFtZSwgb3RwVHlwZSkuc3Vic2NyaWJlKFxyXG4gICAgICAocmVzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5ibG9ja2VkID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zdWNjZXNzRHRscyA9ICdBY2Nlc3MgY29kZSBzZW50IHN1Y2Nlc3NmdWxseS4nO1xyXG4gICAgICAgIHRoaXMuY291bnRlci5uZXh0KDYwKTtcclxuICAgICAgICB0aGlzLnNldENvdW50ZG93bigpO1xyXG4gICAgICB9LFxyXG4gICAgICAoZXJyKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zdWNjZXNzRHRscyA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5ibG9ja2VkID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5lcnJvckR0bHMgPSBlcnIubXNnO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cIm90cEZvcm1cIiAjb3RwRm9ybURpcmVjdGl2ZT1cIm5nRm9ybVwiPlxyXG4gIDxoNCBzdHlsZT1cInBhZGRpbmctbGVmdDogMTBweDtcIiBjbGFzcz1cImhlYWRpbmdcIj57eyBoZWFkaW5nID8gaGVhZGluZyA6IEFjY2Vzc0NvbmZpcm19fTwvaDQ+XHJcblxyXG4gIDxkaXYgc3R5bGU9XCJwYWRkaW5nLWxlZnQ6IDEwcHg7XCIgKm5nSWY9XCIhb3B0aW9uLnZhbHVlICYmICFyZXR1cm5pbmdVc2VyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaW9uLXBhZGRpbmctdG9wIHAtZm9ybWdyaWQgcC1ncmlkXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBpb24tdGV4dC1sZWZ0XCI+XHJcbiAgICAgICAgPGxhYmVsIGZvcj1cIm90cFR5cGVcIj57eydtZmEuaG93LnNlbmQnfHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICA8cC1zZWxlY3RCdXR0b24gW29wdGlvbnNdPVwib3B0aW9uc1wiIG9wdGlvbkxhYmVsPVwidGV4dFwiIG9wdGlvblZhbHVlPVwidmFsdWVcIiBbZm9ybUNvbnRyb2xdPVwib3B0aW9uXCIgKG9uQ2hhbmdlKT1cInNlbmRPdHAoJGV2ZW50KVwiPjwvcC1zZWxlY3RCdXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgc3R5bGU9XCJwYWRkaW5nLWxlZnQ6IDEwcHg7XCIgKm5nSWY9XCJvcHRpb24udmFsdWVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJpb24tcGFkZGluZy10b3BcIj5cclxuICAgICAgPGlvbi1sYWJlbD5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cIm9wdGlvbi52YWx1ZSA9PSAnZW1haWwnICYmICFyZXR1cm5pbmdVc2VyXCI+e3snbWZhLmNvZGUuc2VudC5lbWFpbCd8dHJhbnNsYXRlfX06Jm5ic3A7IDxiPnt7dXNlcj8uZW1haWxJZCB8IG1hc2tFbWFpbH19PC9iPjwvc3Bhbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cIm9wdGlvbi52YWx1ZSA9PSAndGV4dCcgJiYgIXJldHVybmluZ1VzZXJcIj57eydtZmEuY29kZS5zZW50LmNlbGwnfHRyYW5zbGF0ZX19Jm5ic3A7IDxiPnt7dXNlcj8uY2VsbHBob25lTm8gfCBtYXNrRW1haWx9fTwvYj48L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gKm5nSWY9XCJyZXR1cm5pbmdVc2VyXCI+e3snbWZhLmNvZGUuc2VudC5jZWxsJ3x0cmFuc2xhdGV9fSZuYnNwOyA8Yj57e3VzZXI/LmNlbGxwaG9uZU5vIHwgbWFza0VtYWlsfX08L2I+PC9zcGFuPlxyXG4gICAgICA8L2lvbi1sYWJlbD48YnIvPjxici8+XHJcbiAgICAgIDxpb24tbGFiZWwgKm5nSWY9XCJvcHRpb24udmFsdWUgPT0gJ2VtYWlsJyAmJiAhcmV0dXJuaW5nVXNlclwiPlxyXG4gICAgICAgIHt7J21mYS5jb2RlLnNlbnQuanVuayd8dHJhbnNsYXRlfX1cclxuICAgICAgPC9pb24tbGFiZWw+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwib3B0aW9uLnZhbHVlID09ICdlbWFpbCcgJiYgIXJldHVybmluZ1VzZXJcIj48YnIvPjxici8+PC9zcGFuPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgaW9uLXRleHQtbGVmdFwiPlxyXG4gICAgICAgIDxsYWJlbCBmb3I9XCJhdXRoQ29kZVwiICpuZ0lmPVwiIXJldHVybmluZ1VzZXJcIj57eydtZmEuZW50ZXIuY29kZSd8dHJhbnNsYXRlfX08L2xhYmVsPjxici8+XHJcbiAgICAgICAgPGxhYmVsIGZvcj1cImF1dGhDb2RlXCIgKm5nSWY9XCJyZXR1cm5pbmdVc2VyXCI+e3snbWZhLmVudGVyLmNvZGUucmVjZWl2ZWQnfHRyYW5zbGF0ZX19PC9sYWJlbD48YnIvPlxyXG4gICAgICAgIDxwLWlucHV0TnVtYmVyIChjbGljayk9XCJoaWRlT3B0VmFsaWRhdG9yPWZhbHNlXCIgKGtleXVwKT1cImhpZGVPcHRWYWxpZGF0b3I9ZmFsc2VcIiAjb3RwRmllbGQgZm9ybUNvbnRyb2xOYW1lPVwib3RwXCIgbWF4bGVuZ3RoPVwiNlwiIG1pbmxlbmd0aD1cIjZcIiBtb2RlPVwiZGVjaW1hbFwiIFt1c2VHcm91cGluZ109XCJmYWxzZVwiIHNpemU9XCI2XCIgW2lucHV0SWRdPVwiJ2F1dGhDb2RlJ1wiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIChrZXl1cC5lbnRlcik9XCIoIXJlcXVlc3RDb2RlICYmIG9wdGlvbi52YWx1ZSkgPyBzaWduSW4oKSA6IHN1Ym1pdCgpXCI+XHJcbiAgICAgICAgPC9wLWlucHV0TnVtYmVyPlxyXG4gICAgICAgIDxhcHAtZXJyb3IgKm5nSWY9XCIhaGlkZU9wdFZhbGlkYXRvclwiIFtmaWVsZF09J290cCcgW2Zvcm1dPVwib3RwRm9ybVwiIFtlcnJEZWZdPVwieyBcclxuICAgICAgICAgIHJlcXVpcmVkOiBBY2Nlc3NSZXF1aXJlZCxcclxuICAgICAgICAgIG1pbjogQWNjZXNzVmVyaWZ5LFxyXG4gICAgICAgICAgbWF4OiBBY2Nlc3NWZXJpZnlcclxuICAgICAgICB9XCI+PC9hcHAtZXJyb3I+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8aW9uLWl0ZW0gbGluZXM9XCJub25lXCIgKm5nSWY9XCJmYWxzZVwiPlxyXG4gICAgICAgIDxpb24tY2hlY2tib3ggc2xvdD1cInN0YXJ0XCIgZm9ybUNvbnRyb2xOYW1lPVwiY2hlY2tlZFwiPjwvaW9uLWNoZWNrYm94PlxyXG4gICAgICAgIDxpb24tbGFiZWwgY2xhc3M9XCJpb24tdGV4dC13cmFwXCI+e3snbWZhLmJyb3dzZXIudHJ1c3QnfHRyYW5zbGF0ZX19PC9pb24tbGFiZWw+XHJcbiAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICA8L2Rpdj5cclxuICAgIFxyXG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImVycm9yRHRsc1wiPnt7ZXJyb3JEdGxzfX08YnIgLz48YnIgLz48L21hdC1lcnJvcj5cclxuICAgIDxpb24tbGFiZWwgKm5nSWY9XCJzdWNjZXNzRHRsc1wiIHN0eWxlPVwiY29sb3I6IHZhcigtLWlvbi1jb2xvci1ncmVlbilcIj57e3N1Y2Nlc3NEdGxzfX08YnIvPjxiciAvPjwvaW9uLWxhYmVsPlxyXG4gICAgPGlvbi1sYWJlbCAqbmdJZj1cIiFibG9ja2VkXCI+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwiY291bnRlci5nZXRWYWx1ZSgpICE9IDEgJiYgIXJldHVybmluZ1VzZXJcIj5cclxuICAgICAgICB7eydtZmEuY29kZS5ub3QucmVjZWl2ZWQnfHRyYW5zbGF0ZX19IDxiPnt7Y291bnRlci5nZXRWYWx1ZSgpfX0gc2Vjb25kKHMpPC9iPi5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgICA8c3BhbiAqbmdJZj1cImNvdW50ZXIuZ2V0VmFsdWUoKSA9PSAxICYmICFyZXR1cm5pbmdVc2VyXCI+XHJcbiAgICAgICAgIDxhIHRhYmluZGV4PVwiMFwiIChrZXl1cC5lbnRlcik9XCJyZXNlbmRBdXRoQ29kZShvcHRpb24udmFsdWUpXCIgKGNsaWNrKT1cInJlc2VuZEF1dGhDb2RlKG9wdGlvbi52YWx1ZSlcIiBjbGFzcz1cImxpbmtcIj57eydtZmEuZ2V0Lm5ldy5jb2RlJ3x0cmFuc2xhdGV9fTwvYT5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgICA8c3BhbiAqbmdJZj1cImNvdW50ZXIuZ2V0VmFsdWUoKSA9PSAxICYmIHJldHVybmluZ1VzZXJcIj5cclxuICAgICAgICA8YSB0YWJpbmRleD1cIjBcIiAoa2V5dXAuZW50ZXIpPVwicmVzZW5kQXV0aENvZGUob3B0aW9uLnZhbHVlKVwiIChjbGljayk9XCJyZXNlbmRBdXRoQ29kZShvcHRpb24udmFsdWUpXCIgY2xhc3M9XCJsaW5rXCI+IHt7J21mYS5yZXNlbmQudmVyaWZpY2F0aW9uLmNvZGUnfHRyYW5zbGF0ZX19PC9hPlxyXG4gICAgIDwvc3Bhbj5cclxuICAgIDwvaW9uLWxhYmVsPlxyXG4gICAgPHAgKm5nSWY9XCIhcmV0dXJuaW5nVXNlclwiPjxhIHRhYmluZGV4PVwiMFwiIGNsYXNzPVwibGlua1wiIChrZXl1cC5lbnRlcik9XCJzaG93SGVscCA9ICFzaG93SGVscDsgJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIiAoY2xpY2spPVwic2hvd0hlbHAgPSAhc2hvd0hlbHA7ICRldmVudC5wcmV2ZW50RGVmYXVsdCgpXCI+Q2FuJ3QgZ2V0IHRvIHlvdXIge3tvcHRpb24udmFsdWUgPT0gJ3RleHQnID8gJ2NlbGxwaG9uZScgOiAnZW1haWwnfX0/PC9hPjwvcD5cclxuICAgIDwhLS0gPHAgKm5nSWY9XCJyZXR1cm5pbmdVc2VyXCI+PGEgdGFiaW5kZXg9XCIwXCIgY2xhc3M9XCJsaW5rXCIgKGtleXVwLmVudGVyKT1cImNsb3NlKClcIiAoY2xpY2spPVwiY2xvc2UoKVwiPlVuYWJsZSB0byB2ZXJpZnk8L2E+PC9wPiAtLT5cclxuICAgIDxwICpuZ0lmPVwic2hvd0hlbHAgJiYgIXJldHVybmluZ1VzZXJcIj5cclxuICAgICAge3snbWZhLmdvb2QuZm9yLnRpbWUnfHRyYW5zbGF0ZX19PGJyLz5cclxuICAgICAgb3I8YnIvPlxyXG4gICAgICBJZiB5b3VyIHt7b3B0aW9uLnZhbHVlID09ICd0ZXh0JyA/ICdjZWxscGhvbmUgbnVtYmVyJyA6ICdlbWFpbCBhZGRyZXNzJ319IGhhcyBjaGFuZ2VkIGNhbGwgS0RPTCBhdCA3ODUtNTc1LTE0NjAsIE1vbmRheSB0aHJvdWdoIEZyaWRheSBmcm9tIDggYW0gdG8gNDozMCBwbS5cclxuICAgIDwvcD5cclxuICA8L2Rpdj5cclxuXHJcbiAgPHAtZm9vdGVyPlxyXG4gICAgPGRpdiAqbmdJZj1cImJsb2NrZWRcIiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlclwiPlxyXG4gICAgICA8aW9uLXNwaW5uZXIgbmFtZT1cImRvdHNcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaW9uLXRleHQtcmlnaHQgaW9uLXBhZGRpbmctYm90dG9tXCIgKm5nSWY9XCIhYmxvY2tlZCAmJiAhaGlkZUJ1dHRvbnNcIj5cclxuICAgICAgPGlvbi1idXR0b24gdGFiaW5kZXg9XCIwXCIgc2hhcGU9XCJyb3VuZFwiIHR5cGU9XCJyZXNldFwiIChrZXl1cC5lbnRlcik9XCJjbG9zZShmYWxzZSlcIiAoY2xpY2spPVwiY2xvc2UoZmFsc2UpXCIgY29sb3I9XCJzdWNjZXNzXCIgZmlsbD1cIm91dGxpbmVcIj5cclxuICAgICAgICB7eydjb21tb24uY2xvc2UnfHRyYW5zbGF0ZX19XHJcbiAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgPGlvbi1idXR0b24gIHRhYmluZGV4PVwiMFwiIHNoYXBlPVwicm91bmRcIiB0eXBlPVwic3VibWl0XCIgKGtleXVwLmVudGVyKT1cInNpZ25JbigpXCIgKGNsaWNrKT1cInNpZ25JbigpXCIgY29sb3I9XCJzdWNjZXNzXCIgKm5nSWY9XCIhcmVxdWVzdENvZGUgJiYgb3B0aW9uLnZhbHVlXCI+XHJcbiAgICAgICAge3snY29tbW9uLnN1Ym1pdCd8dHJhbnNsYXRlfX1cclxuICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICA8aW9uLWJ1dHRvbiB0YWJpbmRleD1cIjBcIiBzaGFwZT1cInJvdW5kXCIgdHlwZT1cInN1Ym1pdFwiIChrZXl1cC5lbnRlcik9XCJzdWJtaXQoKVwiIChjbGljayk9XCJzdWJtaXQoKVwiIGNvbG9yPVwic3VjY2Vzc1wiICpuZ0lmPVwicmVxdWVzdENvZGUgJiYgb3B0aW9uLnZhbHVlXCI+XHJcbiAgICAgICAge3snY29tbW9uLnN1Ym1pdCd8dHJhbnNsYXRlfX1cclxuICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9wLWZvb3Rlcj5cclxuPC9mb3JtPiJdfQ==
443
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MfaComponent, { className: "MfaComponent", filePath: "lib\\components\\mfa\\mfa.component.ts", lineNumber: 18 }); })();
444
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWZhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZmEvbWZhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9tZmEvbWZhLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBZ0MsTUFBTSxFQUFpQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUFnRCxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxRixPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBZ0IsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDRHBDLDhCQUF1RCxhQUFBLGFBQUEsZUFBQTtJQUc1QixZQUFpRTs7SUFBQSxpQkFBUTtJQUM5RiwwQ0FBK0g7SUFBN0IsNktBQVksZUFBQSxzQkFBZSxDQUFBLElBQUM7SUFBQyxpQkFBaUIsRUFBQSxFQUFBLEVBQUE7OztJQUQzSCxlQUFpRTtJQUFqRSw2RkFBaUU7SUFDdEUsZUFBbUI7SUFBbkIsd0NBQW1CLDhCQUFBOzs7SUFRbkMsNEJBQXNDO0lBQUEsMEVBQTBEO0lBQUEseUJBQUc7SUFBQSxZQUE2Qjs7SUFBQSxpQkFBSSxFQUFBOzs7SUFBakMsZUFBNkI7SUFBN0IsNEZBQTZCOzs7SUFDaEksNEJBQXFDO0lBQUEsc0VBQXNEO0lBQUEseUJBQUc7SUFBQSxZQUFpQzs7SUFBQSxpQkFBSSxFQUFBOzs7SUFBckMsZUFBaUM7SUFBakMsZ0dBQWlDOzs7SUFFakksaUNBQTJDO0lB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O1lBQTlCLHVEQUE4Qjs7O2lGRDFDckUsWUFBWTtjQUx4QixTQUFTOzJCQUNFLFNBQVM7aUtBaUJuQixJQUFJO2tCQURILEtBQUs7WUFLTixPQUFPO2tCQUROLEtBQUs7WUFLTixXQUFXO2tCQURWLEtBQUs7WUFLTixJQUFJO2tCQURILEtBQUs7WUFJTixRQUFRO2tCQURQLEtBQUs7WUFJTixXQUFXO2tCQURWLEtBQUs7WUFHSSxLQUFLO2tCQUFkLE1BQU07WUFFRyxPQUFPO2tCQUFoQixNQUFNO1lBRUcsS0FBSztrQkFBZCxNQUFNO1lBR0EsZ0JBQWdCO2tCQUR0QixTQUFTO21CQUFDLGtCQUFrQixFQUFFLEVBQUMsTUFBTSxFQUFHLEtBQUssRUFBQzs7a0ZBdkNwQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBOZ0Zvcm0sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOYXZDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBpbnRlcnZhbCwgU3Vic2NyaXB0aW9uLCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEVycm9yTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvRXJyb3JNb2RlbCc7XG5pbXBvcnQgeyBDb21ib09wdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy9xdWVzdGlvbm5haXJlL0NvbWJvTW9kZWwnO1xuaW1wb3J0IHsgVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1VzZXJNb2RlbCc7XG5pbXBvcnQgeyBDYXB0Y2hhU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NhcHRjaGEvY2FwdGNoYS5zZXJ2aWNlJztcbmltcG9ydCB7IExvZ2luU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xvZ2luL2xvZ2luLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91dGlsL3V0aWwuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1tZmEnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWZhLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWZhLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWZhQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG5cbiAgcHJpdmF0ZSBSRVNFTkRfQ09ERV9BQ1RJT05fTkFNRSA9IFwiTUZBX1JFU0VORF9DT0RFXCI7XG4gIFxuICBwdWJsaWMgc3VjY2Vzc0R0bHM7XG5cbiAgcHVibGljIGJsb2NrZWQ6IGJvb2xlYW47XG5cbiAgcHVibGljIGlzQ2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyBzaG93SGVscDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHVzZXIgOiBVc2VyTW9kZWw7XG5cbiAgLy9JZiBzcGVjaWZpZWQsIGl0IHdpbGwgY2hhbmdlIHRoZSBkZWZhdWx0IGhlYWRpbmcgb24gdGhlIGNvbXBvbmVudCB3aXRoIHRoZSBvbmNlIHNwZWNpZmllZCBpbiB0aGlzIGZpZWxkLlxuICBASW5wdXQoKVxuICBoZWFkaW5nIDogc3RyaW5nO1xuXG4gIC8vUmVxdWVzdCBuZXcgYXV0aGNvZGUgd2hlbiBjb21wb25lbnRzIGxvYWQuXG4gIEBJbnB1dCgpXG4gIHJlcXVlc3RDb2RlIDogYm9vbGVhbjtcblxuICAvL1Bhc3MgdGhpcyBkYXRhIGFsb25nIHdpdGggb3V0cHV0IHNvIHRoYXQgY2FsbGluZyBjb21wb25lbnQgY2FuIHRha2UgY2FyZSBvZiBpdC5cbiAgQElucHV0KClcbiAgZGF0YSA6IGFueTtcblxuICBASW5wdXQoKVxuICBtZmFFcnJvciA6IEVycm9yTW9kZWw7XG5cbiAgQElucHV0KClcbiAgaGlkZUJ1dHRvbnMgOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIGNsZWFyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KCkgc3VjY2VzczogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpIGVycm9yOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKCdvdHBGb3JtRGlyZWN0aXZlJywge3N0YXRpYyA6IGZhbHNlfSkgXG4gIHB1YmxpYyBvdHBGb3JtRGlyZWN0aXZlOiBOZ0Zvcm07XG5cbiAgcHVibGljIG90cEZvcm0gOiBVbnR5cGVkRm9ybUdyb3VwO1xuXG4gIHB1YmxpYyBlcnJvckR0bHM7XG5cbiAgcHVibGljIHRpbWUgPSA2MFxuICBwdWJsaWMgdGltZXJJbnRlcnZhbCA9IGludGVydmFsKDEwMDApOyAvLzFzXG4gIHB1YmxpYyB0aW1lciA9IHRpbWVyKDYwMDAwKTsgLy85MHNcbiAgcHVibGljIGNvdW50RG93biA9IHRoaXMudGltZXJJbnRlcnZhbC5waXBlKHRha2UodGhpcy50aW1lKSk7XG4gIHB1YmxpYyBjb3VudGVyIDogQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KDApO1xuICBjb3VudGVyU3Vic2NyaXB0aW9uIDogU3Vic2NyaXB0aW9uO1xuXG4gIHB1YmxpYyBvcHRpb25zIDogQ29tYm9PcHRpb25bXSA9IFtcbiAgICB7dmFsdWUgOiAndGV4dCcsIHRleHQgOiAndGV4dCd9LFxuICAgIHt2YWx1ZSA6ICdlbWFpbCcsIHRleHQgOiAnZW1haWwnfVxuICBdO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBsczogTG9naW5TZXJ2aWNlLCBwdWJsaWMgZmIgOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgdXRpbDogVXRpbFNlcnZpY2UsIHB1YmxpYyBuYXYgOiBOYXZDb250cm9sbGVyLCBwcml2YXRlIGNzOiBDYXB0Y2hhU2VydmljZSkgeyBcbiAgICAgICAgICAgICAgICBcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZihjaGFuZ2VzLm1mYUVycm9yPy5jdXJyZW50VmFsdWUpe1xuICAgICAgdGhpcy5lcnJvckR0bHMgPSB0aGlzLm1mYUVycm9yLm1zZztcbiAgICAgIHRoaXMuc3VjY2Vzc0R0bHMgPSBudWxsO1xuICAgIH1cbiAgfVxuICBcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYodGhpcy5jb3VudGVyU3Vic2NyaXB0aW9uKXtcbiAgICAgIHRoaXMuY291bnRlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdGlsaXplRm9ybSgpO1xuICAgIC8vdGhpcy5zZXRDb3VudGRvd24oKTtcbiAgICBpZih0aGlzLnJlcXVlc3RDb2RlKXtcbiAgICAgIGxldCBtZmFPcHRpb25zID0gdGhpcy51c2VyPy5zdXBwb3J0ZWRNZmFUeXBlcz8uc3BsaXQoXCIsXCIpIHx8IFsnZW1haWwnXTtcbiAgICAgIGlmKG1mYU9wdGlvbnMubGVuZ3RoID4gMSl7XG4gICAgICAgIC8vYWxsb3cgdXNlciB0byBjaG9vc2Ugb3RwIG9wdGlvblxuICAgICAgfSBlbHNle1xuICAgICAgICB0aGlzLnJlcXVlc3ROZXdBdXRoQ29kZSgnZW1haWwnKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZXRDb3VudGRvd24oKTtcbiAgICB9XG4gIH1cblxuICByZXF1ZXN0TmV3QXV0aENvZGUob3RwVHlwZSA6IHN0cmluZyl7XG4gICAgdGhpcy5ibG9ja2VkID0gdHJ1ZTtcbiAgICB0aGlzLmxzLmdldE5ld0F1dGhDb2RlKG90cFR5cGUpXG4gICAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgICB0aGlzLmJsb2NrZWQgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLnN1Y2Nlc3NEdGxzID0gXCJBY2Nlc3MgY29kZSBzZW50IHN1Y2Nlc3NmdWxseS5cIjtcbiAgICAgICAgICB0aGlzLmNvdW50ZXIubmV4dCg2MCk7XG4gICAgICAgICAgdGhpcy5zZXRDb3VudGRvd24oKTtcbiAgICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgICB0aGlzLnN1Y2Nlc3NEdGxzID0gbnVsbDtcbiAgICAgICAgICB0aGlzLmJsb2NrZWQgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmVycm9yRHRscyA9IGVyci5tc2c7XG4gICAgICAgIH0pXG4gIH1cblxuICBzZXRDb3VudGRvd24oKXtcbiAgICBpZih0aGlzLmNvdW50ZXJTdWJzY3JpcHRpb24pe1xuICAgICAgdGhpcy5jb3VudGVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIHRoaXMuY291bnRlclN1YnNjcmlwdGlvbiA9IHRoaXMuY291bnREb3duLnN1YnNjcmliZSh2YWwgPT57XG4gICAgICBsZXQgdmFsdWUgPSB0aGlzLnRpbWUgLSB2YWw7XG4gICAgICB0aGlzLmNvdW50ZXIubmV4dCh2YWx1ZSk7XG4gICAgfSk7XG4gIH1cblxuICBpbml0aWxpemVGb3JtKCl7XG4gICAgbGV0IG1mYU9wdGlvbnMgPSB0aGlzLnVzZXI/LnN1cHBvcnRlZE1mYVR5cGVzPy5zcGxpdChcIixcIikgfHwgWydlbWFpbCddO1xuICAgIHRoaXMub3RwRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgJ290cCcgOiBbbnVsbCAsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCAgVmFsaWRhdG9ycy5taW5MZW5ndGgoNildXSxcbiAgICAgICdjaGVja2VkJyA6IFtmYWxzZV0sXG4gICAgICAnb3B0aW9uJyA6IFsgbWZhT3B0aW9ucyAmJiBtZmFPcHRpb25zLmxlbmd0aCA+IDEgPyBudWxsIDogbWZhT3B0aW9uc1swXV1cbiAgICB9KTtcbiAgfVxuXG4gIGdldCBvdHAoKXtcbiAgICByZXR1cm4gdGhpcy5vdHBGb3JtLmdldCgnb3RwJyk7XG4gIH1cblxuICBnZXQgb3B0aW9uKCl7XG4gICAgcmV0dXJuIHRoaXMub3RwRm9ybS5nZXQoJ29wdGlvbicpO1xuICB9XG5cbiAgZ2V0IGNoZWNrZWQoKXtcbiAgICByZXR1cm4gdGhpcy5vdHBGb3JtLmdldCgnY2hlY2tlZCcpO1xuICB9XG5cbiAgY2xvc2UoKXtcbiAgICB0aGlzLmNsZWFyLmVtaXQoKTtcbiAgfVxuXG4gIHN1Ym1pdCgpe1xuICAgIGlmKHRoaXMub3RwRm9ybS52YWxpZCl7XG4gICAgICB0aGlzLmxzLnNldEF1dGhDb2RlKHRoaXMub3RwLnZhbHVlKTtcbiAgICAgIHRoaXMuc3VjY2Vzcy5lbWl0KHRoaXMuZGF0YSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgc2lnbkluKCl7XG4gICAgaWYodGhpcy5vdHAuaW52YWxpZCl7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGxldCBhdXRoIDogYW55ID0ge307XG4gICAgYXV0aC51c2VySWQgPSB0aGlzLnVzZXIudXNlcm5hbWU7XG4gICAgYXV0aC5wYXNzd29yZCA9IHRoaXMudXNlci5wYXNzd29yZDtcbiAgICBhdXRoLm90cCA9IHRoaXMub3RwLnZhbHVlO1xuICAgIGF1dGguaXN0cnVzdGVkRGV2aWNlID0gdGhpcy5jaGVja2VkLnZhbHVlICsgXCJcIjtcbiAgICB0aGlzLmJsb2NrZWQgPSB0cnVlO1xuICAgIHRoaXMuc3VjY2Vzc0R0bHMgPSBudWxsO1xuICAgIHRoaXMuZXJyb3JEdGxzID0gbnVsbDtcbiAgICB0aGlzLnV0aWxcbiAgICAgICAgLnNob3dMb2FkZXIoKVxuICAgICAgICAudGhlbihcbiAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmxzLmxvZ2luQW5kQ2hlY2tGb3JNRkEoYXV0aClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHVzZXJNb2RlbCA6IFVzZXJNb2RlbCA9IHJlcztcbiAgICAgICAgICAgICAgICB0aGlzLmxzLnNldFVzZXIodXNlck1vZGVsKS50aGVuKFxuICAgICAgICAgICAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdWNjZXNzLmVtaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ibG9ja2VkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXRpbC5oaWRlTG9hZGVyKCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgZXJyID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmVycm9yLmVtaXQoZXJyKTtcbiAgICAgICAgICAgICAgICB0aGlzLmVycm9yRHRscyA9IGVyci5tc2c7XG4gICAgICAgICAgICAgICAgdGhpcy51dGlsLmhpZGVMb2FkZXIoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmJsb2NrZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgfVxuXG4gIHNlbmRPdHAoZXZlbnQpe1xuICAgIHRoaXMucmVzZW5kQXV0aENvZGUoZXZlbnQudmFsdWUpO1xuICB9XG5cbiAgcmVzZW5kQXV0aENvZGUob3RwVHlwZSA6IHN0cmluZyl7XG4gICAgdGhpcy5zdWNjZXNzRHRscyA9IG51bGw7XG4gICAgdGhpcy5lcnJvckR0bHMgPSBudWxsO1xuICAgIHRoaXMuYmxvY2tlZCA9IHRydWU7XG4gICAgdGhpcy5jcy5nZW5lcmF0ZUNhcHRjaGFUb2tlbih0aGlzLlJFU0VORF9DT0RFX0FDVElPTl9OQU1FKVxuICAgICAgICAuc3Vic2NyaWJlKCh0b2tlbjogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgdGhpcy5jcy5zZXRJbnZpc2liZWxDYXB0Y2hhKHRva2VuKTtcbiAgICAgICAgICB0aGlzLmxzXG4gICAgICAgICAgICAgIC5nZW5lcmF0ZU90cCh0aGlzLnVzZXIudXNlcm5hbWUsIG90cFR5cGUpXG4gICAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmJsb2NrZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLnN1Y2Nlc3NEdGxzID0gXCJBY2Nlc3MgY29kZSBzZW50IHN1Y2Nlc3NmdWxseS5cIjtcbiAgICAgICAgICAgICAgICB0aGlzLmNvdW50ZXIubmV4dCg2MCk7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRDb3VudGRvd24oKTtcbiAgICAgICAgICAgICAgfSxlcnIgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc3VjY2Vzc0R0bHMgPSBudWxsO1xuICAgICAgICAgICAgICAgIHRoaXMuYmxvY2tlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JEdGxzID0gZXJyLm1zZztcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuc3VjY2Vzc0R0bHMgPSBudWxsO1xuICAgICAgICAgICAgICB0aGlzLmJsb2NrZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgdGhpcy5lcnJvckR0bHMgPSAnQ2FwdGNoYSB2ZXJpZmljYXRpb24gZmFpbGVkLiBQbGVhc2UgcmV0cnkuJztcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coJ2Vycm9yIHdoaWxlIHZlcmlmeWluZyBjYXB0Y2hhJyxlcnIpO1xuICAgICAgICB9KTtcbiAgICBcbiAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJvdHBGb3JtXCIgI290cEZvcm1EaXJlY3RpdmU9XCJuZ0Zvcm1cIj5cclxuICA8aDQgc3R5bGU9XCJwYWRkaW5nLWxlZnQ6IDEwcHg7XCIgY2xhc3M9XCJoZWFkaW5nXCI+e3sgaGVhZGluZyA/IGhlYWRpbmcgOiAnQ29uZmlybSBhY2Nlc3MgdG8geW91ciBhY2NvdW50JyB8IHRyYW5zbGF0ZX19PC9oND5cclxuXHJcbiAgPGRpdiBzdHlsZT1cInBhZGRpbmctbGVmdDogMTBweDtcIiAqbmdJZj1cIiFvcHRpb24udmFsdWVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJpb24tcGFkZGluZy10b3AgcC1mb3JtZ3JpZCBwLWdyaWRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGlvbi10ZXh0LWxlZnRcIj5cclxuICAgICAgICA8bGFiZWwgZm9yPVwib3RwVHlwZVwiPnt7J0hvdyB3b3VsZCB5b3UgbGlrZSB1cyB0byBzZW5kIHlvdXIgYWNjZXNzIGNvZGU/JyB8IHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICA8cC1zZWxlY3RCdXR0b24gW29wdGlvbnNdPVwib3B0aW9uc1wiIG9wdGlvbkxhYmVsPVwidGV4dFwiIG9wdGlvblZhbHVlPVwidmFsdWVcIiBbZm9ybUNvbnRyb2xdPVwib3B0aW9uXCIgKG9uQ2hhbmdlKT1cInNlbmRPdHAoJGV2ZW50KVwiPjwvcC1zZWxlY3RCdXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgc3R5bGU9XCJwYWRkaW5nLWxlZnQ6IDEwcHg7XCIgKm5nSWY9XCJvcHRpb24udmFsdWVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJpb24tcGFkZGluZy10b3BcIj5cclxuICAgICAgPGlvbi1sYWJlbD5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cIm9wdGlvbi52YWx1ZSA9PSAnZW1haWwnXCI+QW4gYWNjZXNzIGNvZGUgaGFzIGJlZW4gc2VudCB0byB5b3VyIGVtYWlsIGFkZHJlc3M6Jm5ic3A7IDxiPnt7dXNlcj8uZW1haWxJZCB8IG1hc2tFbWFpbH19PC9iPjwvc3Bhbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cIm9wdGlvbi52YWx1ZSA9PSAndGV4dCdcIj5BbiBhY2Nlc3MgY29kZSBoYXMgYmVlbiBzZW50IHRvIHlvdXIgY2VsbHBob25lOiZuYnNwOyA8Yj57e3VzZXI/LmNlbGxwaG9uZU5vIHwgbWFza0VtYWlsfX08L2I+PC9zcGFuPlxyXG4gICAgICA8L2lvbi1sYWJlbD48YnIvPjxici8+XHJcbiAgICAgIDxpb24tbGFiZWwgKm5nSWY9XCJvcHRpb24udmFsdWUgPT0gJ2VtYWlsJ1wiPlxyXG4gICAgICAgIENoZWNrIHlvdXIganVuayBmb2xkZXIgaWYgeW91IGRvbid0IHNlZSBpdCBpbiB5b3VyIGluYm94LlxyXG4gICAgICA8L2lvbi1sYWJlbD5cclxuICAgICAgPHNwYW4gKm5nSWY9XCJvcHRpb24udmFsdWUgPT0gJ2VtYWlsJ1wiPjxici8+PGJyLz48L3NwYW4+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBpb24tdGV4dC1sZWZ0XCI+XHJcbiAgICAgICAgPGxhYmVsIGZvcj1cImF1dGhDb2RlXCI+RW50ZXIgY29kZTwvbGFiZWw+PGJyLz5cclxuICAgICAgICA8cC1pbnB1dE51bWJlciBmb3JtQ29udHJvbE5hbWU9XCJvdHBcIiBtYXhsZW5ndGg9XCI2XCIgbWlubGVuZ3RoPVwiNlwiIG1vZGU9XCJkZWNpbWFsXCIgW3VzZUdyb3VwaW5nXT1cImZhbHNlXCIgc2l6ZT1cIjZcIiBbaW5wdXRJZF09XCInYXV0aENvZGUnXCI+XHJcbiAgICAgICAgPC9wLWlucHV0TnVtYmVyPlxyXG4gICAgICAgIDxhcHAtZXJyb3IgW2ZpZWxkXT0nb3RwJyBbZm9ybV09XCJvdHBGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgcmVxdWlyZWQ6ICdBY2Nlc3MgY29kZSBpcyByZXF1aXJlZC4nLFxyXG4gICAgICAgICAgbWlubGVuZ3RoOiAnQWNjZXNzIGNvZGUgc2hvdWxkIGhhdmUgNiBudW1iZXJzLidcclxuICAgICAgICB9XCI+PC9hcHAtZXJyb3I+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8aW9uLWl0ZW0gbGluZXM9XCJub25lXCIgKm5nSWY9XCJmYWxzZVwiPlxyXG4gICAgICAgIDxpb24tY2hlY2tib3ggc2xvdD1cInN0YXJ0XCIgZm9ybUNvbnRyb2xOYW1lPVwiY2hlY2tlZFwiPjwvaW9uLWNoZWNrYm94PlxyXG4gICAgICAgIDxpb24tbGFiZWwgY2xhc3M9XCJpb24tdGV4dC13cmFwXCI+e3snSSB0cnVzdCB0aGlzIGJyb3dzZXIuJyB8IHRyYW5zbGF0ZX19PC9pb24tbGFiZWw+XHJcbiAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICA8L2Rpdj5cclxuICAgIFxyXG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImVycm9yRHRsc1wiPnt7ZXJyb3JEdGxzfX08YnIgLz48YnIgLz48L21hdC1lcnJvcj5cclxuICAgIDxpb24tbGFiZWwgKm5nSWY9XCJzdWNjZXNzRHRsc1wiIHN0eWxlPVwiY29sb3I6IHZhcigtLWlvbi1jb2xvci1ncmVlbilcIj57e3N1Y2Nlc3NEdGxzfX08YnIvPjxiciAvPjwvaW9uLWxhYmVsPlxyXG4gICAgPGlvbi1sYWJlbCAqbmdJZj1cIiFibG9ja2VkXCI+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwiY291bnRlci5nZXRWYWx1ZSgpICE9IDFcIj5cclxuICAgICAgICBIYXZlbid0IHJlY2VpdmVkIHRoZSBjb2RlPyBSZXNlbmQgb3B0aW9uIGF2YWlsYWJsZSBpbiA8Yj57e2NvdW50ZXIuZ2V0VmFsdWUoKX19IHNlY29uZChzKTwvYj4uXHJcbiAgICAgIDwvc3Bhbj5cclxuICAgICAgPHNwYW4gKm5nSWY9XCJjb3VudGVyLmdldFZhbHVlKCkgPT0gMVwiPlxyXG4gICAgICAgICA8YSAoY2xpY2spPVwicmVzZW5kQXV0aENvZGUob3B0aW9uLnZhbHVlKVwiIGNsYXNzPVwibGlua1wiPkdldCBuZXcgY29kZTwvYT5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9pb24tbGFiZWw+XHJcbiAgICA8cD48YSBjbGFzcz1cImxpbmtcIiAoY2xpY2spPVwic2hvd0hlbHAgPSAhc2hvd0hlbHA7ICRldmVudC5wcmV2ZW50RGVmYXVsdCgpXCI+Q2FuJ3QgZ2V0IHRvIHlvdXIge3tvcHRpb24udmFsdWUgPT0gJ3RleHQnID8gJ2NlbGxwaG9uZScgOiAnZW1haWwnfX0/PC9hPjwvcD5cclxuICAgIDxwICpuZ0lmPVwic2hvd0hlbHBcIj5cclxuICAgICAgWW91ciBjb2RlIGlzIGdvb2QgZm9yIDE1IG1pbnV0ZXMuIFlvdSBjYW4gdHJ5IGFnYWluIGxhdGVyLjxici8+XHJcbiAgICAgIG9yPGJyLz5cclxuICAgICAgSWYgeW91ciB7e29wdGlvbi52YWx1ZSA9PSAndGV4dCcgPyAnY2VsbHBob25lIG51bWJlcicgOiAnZW1haWwgYWRkcmVzcyd9fSBoYXMgY2hhbmdlZCBjYWxsIE1ERVMgYXQgNjAxLTQ5My05NDI3LCBNb25kYXkgdGhyb3VnaCBGcmlkYXkgZnJvbSA4IGFtIHRvIDUgcG0uXHJcbiAgICA8L3A+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxwLWZvb3Rlcj5cclxuICAgIDxkaXYgKm5nSWY9XCJibG9ja2VkXCIgY2xhc3M9XCJpb24tdGV4dC1jZW50ZXJcIj5cclxuICAgICAgPGlvbi1zcGlubmVyIG5hbWU9XCJkb3RzXCI+PC9pb24tc3Bpbm5lcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImlvbi10ZXh0LXJpZ2h0IGlvbi1wYWRkaW5nLWJvdHRvbVwiICpuZ0lmPVwiIWJsb2NrZWQgJiYgIWhpZGVCdXR0b25zXCI+XHJcbiAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwicm91bmRcIiB0eXBlPVwicmVzZXRcIiAoY2xpY2spPVwiY2xvc2UoKVwiIGNvbG9yPVwic3VjY2Vzc1wiIGZpbGw9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgQ2xvc2VcclxuICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgdHlwZT1cInN1Ym1pdFwiIChjbGljayk9XCJzaWduSW4oKVwiIGNvbG9yPVwic3VjY2Vzc1wiICpuZ0lmPVwiIXJlcXVlc3RDb2RlICYmIG9wdGlvbi52YWx1ZVwiPlxyXG4gICAgICAgIFN1Ym1pdFxyXG4gICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwicm91bmRcIiB0eXBlPVwic3VibWl0XCIgKGNsaWNrKT1cInN1Ym1pdCgpXCIgY29sb3I9XCJzdWNjZXNzXCIgKm5nSWY9XCJyZXF1ZXN0Q29kZSAmJiBvcHRpb24udmFsdWVcIj5cclxuICAgICAgICBTdWJtaXRcclxuICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9wLWZvb3Rlcj5cclxuPC9mb3JtPiJdfQ==