@reusa/ngx-reusa-app-lib 0.0.731 → 0.1.731

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 (472) hide show
  1. package/{esm2020 → esm2022}/lib/annimations/app-animations.mjs +36 -36
  2. package/esm2022/lib/components/add-employer/add-employer.component.mjs +3027 -0
  3. package/esm2022/lib/components/add-participant/add-participant.component.mjs +394 -0
  4. package/esm2022/lib/components/add-payment/add-payment.component.mjs +187 -0
  5. package/esm2022/lib/components/address/address.component.mjs +487 -0
  6. package/esm2022/lib/components/bank-details/bank-details.component.mjs +276 -0
  7. package/esm2022/lib/components/captcha/captcha.component.mjs +181 -0
  8. package/esm2022/lib/components/card/card.component.mjs +55 -0
  9. package/esm2022/lib/components/contact-us/contact-us.component.mjs +970 -0
  10. package/esm2022/lib/components/content/content.component.mjs +61 -0
  11. package/esm2022/lib/components/correspondence-download/correspondence-download.component.mjs +83 -0
  12. package/esm2022/lib/components/dashboard-card/dashboard-card.component.mjs +223 -0
  13. package/esm2022/lib/components/dependent-grid/dependent-grid.component.mjs +292 -0
  14. package/esm2022/lib/components/disclosure/disclosure.component.mjs +60 -0
  15. package/esm2022/lib/components/dropdown/dropdown.component.mjs +1974 -0
  16. package/esm2022/lib/components/dropdown/dropdown.interface.mjs +2 -0
  17. package/esm2022/lib/components/email-update/email-update.component.mjs +283 -0
  18. package/esm2022/lib/components/employer-grid/employer-grid.component.mjs +794 -0
  19. package/esm2022/lib/components/error/error.component.mjs +86 -0
  20. package/esm2022/lib/components/fav-menu/fav-menu.component.mjs +163 -0
  21. package/{esm2020 → esm2022}/lib/components/file-download/file-download.component.mjs +104 -104
  22. package/esm2022/lib/components/file-uploader/file-uploader.component.mjs +315 -0
  23. package/esm2022/lib/components/footer/footer.component.mjs +332 -0
  24. package/esm2022/lib/components/header/header.component.mjs +558 -0
  25. package/esm2022/lib/components/help/help.component.mjs +49 -0
  26. package/esm2022/lib/components/idle-detector/idle-detector.component.mjs +65 -0
  27. package/{esm2020 → esm2022}/lib/components/info/info.component.mjs +187 -188
  28. package/esm2022/lib/components/job-search-result-page/job-search-result-page.component.mjs +206 -0
  29. package/esm2022/lib/components/legal-disclaimar/legal-disclaimar.component.mjs +193 -0
  30. package/esm2022/lib/components/maintenance-detector/maintenance-detector.component.mjs +43 -0
  31. package/esm2022/lib/components/mask/mask.component.mjs +48 -0
  32. package/esm2022/lib/components/menu/menu.component.mjs +423 -0
  33. package/esm2022/lib/components/mfa/mfa.component.mjs +444 -0
  34. package/esm2022/lib/components/mfa-popup/mfa-popup.component.mjs +50 -0
  35. package/esm2022/lib/components/money-expect/money-expect.component.mjs +90 -0
  36. package/esm2022/lib/components/msg/msg.component.mjs +48 -0
  37. package/esm2022/lib/components/news/news.component.mjs +90 -0
  38. package/esm2022/lib/components/overlay-info/overlay-info.component.mjs +213 -0
  39. package/esm2022/lib/components/page/page.component.mjs +136 -0
  40. package/esm2022/lib/components/profile/profile.component.mjs +177 -0
  41. package/esm2022/lib/components/profile-redirect/profile-redirect.component.mjs +63 -0
  42. package/esm2022/lib/components/questionnaire/AppValidators.mjs +487 -0
  43. package/{esm2020 → esm2022}/lib/components/questionnaire/FbConstants.mjs +7 -7
  44. package/{esm2020 → esm2022}/lib/components/questionnaire/SelectItem.mjs +1 -1
  45. package/esm2022/lib/components/questionnaire/account-success/account-success.page.mjs +256 -0
  46. package/esm2022/lib/components/questionnaire/common-success/common-success.page.mjs +475 -0
  47. package/esm2022/lib/components/questionnaire/dynamic-form-panel.component.mjs +1094 -0
  48. package/esm2022/lib/components/questionnaire/dynamic-form-question.component.mjs +1882 -0
  49. package/esm2022/lib/components/questionnaire/dynamic-form.component.mjs +1263 -0
  50. package/esm2022/lib/components/questionnaire/form-builder/form-builder.page.mjs +244 -0
  51. package/{esm2020 → esm2022}/lib/components/questionnaire/input-focus.directive.mjs +44 -44
  52. package/esm2022/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.mjs +256 -0
  53. package/{esm2020 → esm2022}/lib/components/questionnaire/question-base.mjs +2 -2
  54. package/{esm2020 → esm2022}/lib/components/questionnaire/question-control.service.mjs +420 -419
  55. package/{esm2020 → esm2022}/lib/components/questionnaire/question.service.mjs +33 -33
  56. package/esm2022/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.mjs +262 -0
  57. package/{esm2020 → esm2022}/lib/components/read-more/read-more.component.mjs +67 -67
  58. package/esm2022/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.mjs +690 -0
  59. package/esm2022/lib/components/search-employer/search-employer.component.mjs +142 -0
  60. package/esm2022/lib/components/select/select.component.mjs +154 -0
  61. package/esm2022/lib/components/ssn/ssn.component.mjs +44 -0
  62. package/esm2022/lib/components/ssn-reverify/ssn-reverify.component.mjs +151 -0
  63. package/esm2022/lib/components/test/test.component.mjs +19 -0
  64. package/esm2022/lib/components/user-login/user-login.component.mjs +398 -0
  65. package/esm2022/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +442 -0
  66. package/esm2022/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.mjs +307 -0
  67. package/{esm2020 → esm2022}/lib/directives/auto-focus/auto-focus.directive.mjs +31 -31
  68. package/{esm2020 → esm2022}/lib/directives/caps-lock.directive.mjs +38 -38
  69. package/{esm2020 → esm2022}/lib/directives/required-roles/required-roles.directive.mjs +30 -30
  70. package/{esm2020 → esm2022}/lib/enums/EmailStatusEnum.mjs +8 -8
  71. package/{esm2020 → esm2022}/lib/guards/auth.guard.mjs +138 -138
  72. package/esm2022/lib/guards/no-login/no-login.guard.mjs +21 -0
  73. package/{esm2020 → esm2022}/lib/interceptors/error-interceptor/http-error-interceptor.mjs +107 -107
  74. package/{esm2020 → esm2022}/lib/interceptors/header-interceptor/http-header.interceptor.mjs +99 -99
  75. package/{esm2020 → esm2022}/lib/models/AddressComponentModel.mjs +2 -2
  76. package/{esm2020 → esm2022}/lib/models/BankDetailsComponentModel.mjs +2 -2
  77. package/{esm2020 → esm2022}/lib/models/BankDetailsModel.mjs +3 -3
  78. package/{esm2020 → esm2022}/lib/models/CinRequalificationCriteriaModel.mjs +3 -3
  79. package/{esm2020 → esm2022}/lib/models/EmployerDetailSearchResult.mjs +5 -5
  80. package/{esm2020 → esm2022}/lib/models/ErrorModel.mjs +5 -5
  81. package/{esm2020 → esm2022}/lib/models/FileModel.mjs +1 -1
  82. package/{esm2020 → esm2022}/lib/models/LibConstants.mjs +119 -119
  83. package/{esm2020 → esm2022}/lib/models/NewsAndAnnouncementModel.mjs +2 -2
  84. package/{esm2020 → esm2022}/lib/models/NotificationModel.mjs +5 -5
  85. package/{esm2020 → esm2022}/lib/models/OtpAuthModel.mjs +2 -2
  86. package/{esm2020 → esm2022}/lib/models/PaymentComponentModel.mjs +2 -2
  87. package/esm2022/lib/models/RequalifyLiftPageModel.mjs +11 -0
  88. package/{esm2020 → esm2022}/lib/models/SsaVerificationModel.mjs +3 -3
  89. package/{esm2020 → esm2022}/lib/models/TrendModel.mjs +2 -2
  90. package/{esm2020 → esm2022}/lib/models/UserDetailsModel.mjs +2 -2
  91. package/{esm2020 → esm2022}/lib/models/UserModel.mjs +5 -5
  92. package/{esm2020 → esm2022}/lib/models/case/CaseAttachmentModel.mjs +3 -3
  93. package/{esm2020 → esm2022}/lib/models/claimant/ClaimantModel.mjs +2 -2
  94. package/{esm2020 → esm2022}/lib/models/claimant/JobResultsData.mjs +2 -2
  95. package/{esm2020 → esm2022}/lib/models/claimant/MatchingJobs.mjs +2 -2
  96. package/{esm2020 → esm2022}/lib/models/claimant/ResetPasswordModel.mjs +2 -2
  97. package/esm2022/lib/models/cmp/CaseCoreModel.mjs +3 -0
  98. package/{esm2020 → esm2022}/lib/models/cmp/ComplaintCategoryModel.mjs +3 -3
  99. package/{esm2020 → esm2022}/lib/models/cmp/ComplaintCategoryOutputModel.mjs +5 -5
  100. package/esm2022/lib/models/cmp/ContactUsModel.mjs +3 -0
  101. package/{esm2020 → esm2022}/lib/models/cmp/EmailTemplateModel.mjs +3 -3
  102. package/esm2022/lib/models/cmp/contactUsInqueryModel.mjs +7 -0
  103. package/{esm2020 → esm2022}/lib/models/cmp/messageRourceModel.mjs +3 -3
  104. package/esm2022/lib/models/dashboard-model.mjs +3 -0
  105. package/esm2022/lib/models/dependent.model.mjs +8 -0
  106. package/{esm2020 → esm2022}/lib/models/questionnaire/ClaimAppEmpRequestModel.mjs +2 -2
  107. package/{esm2020 → esm2022}/lib/models/questionnaire/ClaimAppEmpResponseModel.mjs +7 -7
  108. package/{esm2020 → esm2022}/lib/models/questionnaire/ClaimAppEmployerDetailsModel.mjs +5 -5
  109. package/{esm2020 → esm2022}/lib/models/questionnaire/ClaimOnlyEmployerDataModel.mjs +2 -2
  110. package/esm2022/lib/models/questionnaire/ComboModel.mjs +337 -0
  111. package/{esm2020 → esm2022}/lib/models/questionnaire/ElementsModel.mjs +7 -7
  112. package/{esm2020 → esm2022}/lib/models/questionnaire/EmployerDetailSearchResult.mjs +2 -2
  113. package/{esm2020 → esm2022}/lib/models/questionnaire/EmployerWagesModel.mjs +3 -3
  114. package/{esm2020 → esm2022}/lib/models/questionnaire/FBConfigModel.mjs +5 -5
  115. package/{esm2020 → esm2022}/lib/models/questionnaire/KeyValueModel.mjs +2 -2
  116. package/{esm2020 → esm2022}/lib/models/questionnaire/LegalDiscaimarModel.mjs +2 -2
  117. package/{esm2020 → esm2022}/lib/models/questionnaire/LoaderModel.mjs +2 -2
  118. package/{esm2020 → esm2022}/lib/models/questionnaire/PollingStatusModel.mjs +3 -3
  119. package/{esm2020 → esm2022}/lib/models/questionnaire/QtrYearEmployerWageModel.mjs +2 -2
  120. package/{esm2020 → esm2022}/lib/models/questionnaire/QuestionnaireQueryModel.mjs +7 -7
  121. package/{esm2020 → esm2022}/lib/models/questionnaire/QuestionnaireReturnModel.mjs +10 -10
  122. package/{esm2020 → esm2022}/lib/models/questionnaire/QuestionnaireSaveModel.mjs +2 -2
  123. package/esm2022/lib/models/questionnaire/RequalifyLiftIssuesModel.mjs +3 -0
  124. package/{esm2020 → esm2022}/lib/models/questionnaire/ServiceActionResponseModel.mjs +3 -3
  125. package/esm2022/lib/models/questionnaire/StatusModel.mjs +6 -0
  126. package/{esm2020 → esm2022}/lib/models/questionnaire/SuccessPageElement.mjs +2 -2
  127. package/esm2022/lib/models/questionnaire/UI512AResponseModel.mjs +3 -0
  128. package/{esm2020 → esm2022}/lib/models/questionnaire/ValidationModel.mjs +2 -2
  129. package/esm2022/lib/ngx-reusa-app-lib.component.mjs +23 -0
  130. package/esm2022/lib/ngx-reusa-app-lib.module.mjs +402 -0
  131. package/{esm2020 → esm2022}/lib/ngx-reusa-app-lib.service.mjs +14 -14
  132. package/{esm2020 → esm2022}/lib/pages/BasePage.mjs +76 -76
  133. package/esm2022/lib/pages/common/accessibility-policy/accessibility-policy.page.mjs +81 -0
  134. package/esm2022/lib/pages/common/change-password/change-password.page.mjs +463 -0
  135. package/esm2022/lib/pages/common/landing/landing.component.mjs +208 -0
  136. package/esm2022/lib/pages/common/landing2/landing2.component.mjs +244 -0
  137. package/esm2022/lib/pages/common/login/login.component.mjs +526 -0
  138. package/esm2022/lib/pages/common/not-found/not-found.page.mjs +24 -0
  139. package/esm2022/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.mjs +306 -0
  140. package/esm2022/lib/pages/common/security-policy/security-policy.page.mjs +61 -0
  141. package/esm2022/lib/pages/common/unauthorized/unauthorized.page.mjs +24 -0
  142. package/esm2022/lib/pages/popovers/language/language.page.mjs +61 -0
  143. package/esm2022/lib/pages/popovers/my-notifications/my-notifications.page.mjs +204 -0
  144. package/esm2022/lib/pages/popovers/my-profile/my-profile.page.mjs +129 -0
  145. package/esm2022/lib/pages/popovers/user-search/user-search.component.mjs +251 -0
  146. package/{esm2020 → esm2022}/lib/pipes/filter.pipe.mjs +30 -30
  147. package/{esm2020 → esm2022}/lib/pipes/mask/mask.email.pipe.mjs +23 -23
  148. package/{esm2020 → esm2022}/lib/pipes/proper-case/proper-case.pipe.mjs +27 -27
  149. package/{esm2020 → esm2022}/lib/pipes/translate/dynamic-translate.pipe.mjs +44 -44
  150. package/{esm2020 → esm2022}/lib/pipes/trust-html/trust-html.pipe.mjs +20 -20
  151. package/{esm2020 → esm2022}/lib/services/base-service.mjs +49 -49
  152. package/{esm2020 → esm2022}/lib/services/captcha/captcha.service.mjs +46 -46
  153. package/{esm2020 → esm2022}/lib/services/case-service/case.service.mjs +47 -47
  154. package/{esm2020 → esm2022}/lib/services/chatbot/chatbot.service.mjs +257 -257
  155. package/esm2022/lib/services/chatbot/script.const.mjs +42 -0
  156. package/{esm2020 → esm2022}/lib/services/claimant/claimant.service.mjs +31 -31
  157. package/esm2022/lib/services/claimant-context/claimant-context.service.mjs +48 -0
  158. package/{esm2020 → esm2022}/lib/services/claimant-service/claimant.service.mjs +47 -47
  159. package/{esm2020 → esm2022}/lib/services/claims/claims.service.mjs +99 -99
  160. package/{esm2020 → esm2022}/lib/services/cmp-service/cmp.service.mjs +84 -84
  161. package/{esm2020 → esm2022}/lib/services/dms-service/dms.service.mjs +60 -60
  162. package/{esm2020 → esm2022}/lib/services/fpjs/fingerprint.service.mjs +70 -70
  163. package/{esm2020 → esm2022}/lib/services/google-analytics/google-analytics.service.mjs +29 -29
  164. package/{esm2020 → esm2022}/lib/services/help/help.service.mjs +63 -63
  165. package/{esm2020 → esm2022}/lib/services/idle/idle.service.mjs +159 -159
  166. package/{esm2020 → esm2022}/lib/services/logger/logger.service.mjs +67 -67
  167. package/esm2022/lib/services/login/login.service.mjs +330 -0
  168. package/{esm2020 → esm2022}/lib/services/maintenance/maintenance.service.mjs +21 -21
  169. package/{esm2020 → esm2022}/lib/services/notification/notification.service.mjs +113 -113
  170. package/{esm2020 → esm2022}/lib/services/questionnaire/questionnaire.service.mjs +69 -69
  171. package/{esm2020 → esm2022}/lib/services/questionnaire/validation.service.mjs +59 -59
  172. package/{esm2020 → esm2022}/lib/services/security-service/security.service.mjs +35 -35
  173. package/{esm2020 → esm2022}/lib/services/tour/tour.service.mjs +60 -60
  174. package/{esm2020 → esm2022}/lib/services/util/util.service.mjs +424 -424
  175. package/esm2022/lib/validations/AppRegex.mjs +45 -0
  176. package/{esm2020 → esm2022}/lib/validations/AppValidators.mjs +165 -165
  177. package/{esm2020 → esm2022}/public-api.mjs +131 -131
  178. package/{esm2020 → esm2022}/reusa-ngx-reusa-app-lib.mjs +4 -4
  179. package/{fesm2020 → fesm2022}/reusa-ngx-reusa-app-lib.mjs +27966 -27877
  180. package/fesm2022/reusa-ngx-reusa-app-lib.mjs.map +1 -0
  181. package/index.d.ts +5 -5
  182. package/lib/annimations/app-animations.d.ts +3 -3
  183. package/lib/components/add-employer/add-employer.component.d.ts +276 -276
  184. package/lib/components/add-participant/add-participant.component.d.ts +45 -45
  185. package/lib/components/add-payment/add-payment.component.d.ts +33 -33
  186. package/lib/components/address/address.component.d.ts +68 -68
  187. package/lib/components/address/address.component.d.ts.map +1 -1
  188. package/lib/components/bank-details/bank-details.component.d.ts +39 -39
  189. package/lib/components/captcha/captcha.component.d.ts +44 -44
  190. package/lib/components/card/card.component.d.ts +11 -11
  191. package/lib/components/contact-us/contact-us.component.d.ts +105 -107
  192. package/lib/components/contact-us/contact-us.component.d.ts.map +1 -1
  193. package/lib/components/content/content.component.d.ts +13 -13
  194. package/lib/components/correspondence-download/correspondence-download.component.d.ts +21 -21
  195. package/lib/components/dashboard-card/dashboard-card.component.d.ts +25 -25
  196. package/lib/components/dashboard-card/dashboard-card.component.d.ts.map +1 -1
  197. package/lib/components/dependent-grid/dependent-grid.component.d.ts +35 -35
  198. package/lib/components/disclosure/disclosure.component.d.ts +12 -12
  199. package/lib/components/dropdown/dropdown.component.d.ts +581 -207
  200. package/lib/components/dropdown/dropdown.component.d.ts.map +1 -1
  201. package/lib/components/dropdown/dropdown.interface.d.ts +155 -0
  202. package/lib/components/dropdown/dropdown.interface.d.ts.map +1 -0
  203. package/lib/components/email-update/email-update.component.d.ts +31 -31
  204. package/lib/components/employer-grid/employer-grid.component.d.ts +95 -94
  205. package/lib/components/employer-grid/employer-grid.component.d.ts.map +1 -1
  206. package/lib/components/error/error.component.d.ts +17 -17
  207. package/lib/components/fav-menu/fav-menu.component.d.ts +21 -21
  208. package/lib/components/file-download/file-download.component.d.ts +22 -22
  209. package/lib/components/file-uploader/file-uploader.component.d.ts +47 -47
  210. package/lib/components/footer/footer.component.d.ts +36 -36
  211. package/lib/components/header/header.component.d.ts +59 -58
  212. package/lib/components/header/header.component.d.ts.map +1 -1
  213. package/lib/components/help/help.component.d.ts +10 -10
  214. package/lib/components/idle-detector/idle-detector.component.d.ts +15 -15
  215. package/lib/components/info/info.component.d.ts +22 -22
  216. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts +21 -21
  217. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts +33 -33
  218. package/lib/components/maintenance-detector/maintenance-detector.component.d.ts +15 -15
  219. package/lib/components/mask/mask.component.d.ts +11 -11
  220. package/lib/components/menu/menu.component.d.ts +43 -43
  221. package/lib/components/mfa/mfa.component.d.ts +59 -59
  222. package/lib/components/mfa-popup/mfa-popup.component.d.ts +16 -16
  223. package/lib/components/money-expect/money-expect.component.d.ts +18 -18
  224. package/lib/components/msg/msg.component.d.ts +10 -10
  225. package/lib/components/news/news.component.d.ts +14 -14
  226. package/lib/components/overlay-info/overlay-info.component.d.ts +34 -34
  227. package/lib/components/page/page.component.d.ts +23 -23
  228. package/lib/components/profile/profile.component.d.ts +28 -28
  229. package/lib/components/profile-redirect/profile-redirect.component.d.ts +13 -13
  230. package/lib/components/questionnaire/AppValidators.d.ts +14 -14
  231. package/lib/components/questionnaire/AppValidators.d.ts.map +1 -1
  232. package/lib/components/questionnaire/FbConstants.d.ts +7 -7
  233. package/lib/components/questionnaire/SelectItem.d.ts +4 -4
  234. package/lib/components/questionnaire/account-success/account-success.page.d.ts +53 -53
  235. package/lib/components/questionnaire/common-success/common-success.page.d.ts +75 -75
  236. package/lib/components/questionnaire/common-success/common-success.page.d.ts.map +1 -1
  237. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts +46 -46
  238. package/lib/components/questionnaire/dynamic-form-question.component.d.ts +82 -82
  239. package/lib/components/questionnaire/dynamic-form-question.component.d.ts.map +1 -1
  240. package/lib/components/questionnaire/dynamic-form.component.d.ts +130 -130
  241. package/lib/components/questionnaire/dynamic-form.component.d.ts.map +1 -1
  242. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts +66 -64
  243. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts.map +1 -1
  244. package/lib/components/questionnaire/input-focus.directive.d.ts +11 -11
  245. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts +38 -38
  246. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts.map +1 -1
  247. package/lib/components/questionnaire/question-base.d.ts +16 -16
  248. package/lib/components/questionnaire/question-control.service.d.ts +19 -19
  249. package/lib/components/questionnaire/question-control.service.d.ts.map +1 -1
  250. package/lib/components/questionnaire/question.service.d.ts +18 -18
  251. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts +75 -74
  252. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts.map +1 -1
  253. package/lib/components/read-more/read-more.component.d.ts +14 -14
  254. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts +67 -67
  255. package/lib/components/search-employer/search-employer.component.d.ts +37 -36
  256. package/lib/components/search-employer/search-employer.component.d.ts.map +1 -1
  257. package/lib/components/select/select.component.d.ts +55 -55
  258. package/lib/components/ssn/ssn.component.d.ts +11 -11
  259. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts +22 -22
  260. package/lib/components/test/test.component.d.ts +8 -8
  261. package/lib/components/user-login/user-login.component.d.ts +48 -48
  262. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts +59 -59
  263. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts +45 -45
  264. package/lib/directives/auto-focus/auto-focus.directive.d.ts +12 -12
  265. package/lib/directives/caps-lock.directive.d.ts +11 -11
  266. package/lib/directives/required-roles/required-roles.directive.d.ts +14 -14
  267. package/lib/enums/EmailStatusEnum.d.ts +7 -7
  268. package/lib/guards/auth.guard.d.ts +28 -28
  269. package/lib/guards/auth.guard.d.ts.map +1 -1
  270. package/lib/guards/no-login/no-login.guard.d.ts +11 -11
  271. package/lib/guards/no-login/no-login.guard.d.ts.map +1 -1
  272. package/lib/interceptors/error-interceptor/http-error-interceptor.d.ts +22 -22
  273. package/lib/interceptors/header-interceptor/http-header.interceptor.d.ts +21 -21
  274. package/lib/interceptors/header-interceptor/http-header.interceptor.d.ts.map +1 -1
  275. package/lib/models/AddressComponentModel.d.ts +12 -12
  276. package/lib/models/BankDetailsComponentModel.d.ts +11 -11
  277. package/lib/models/BankDetailsModel.d.ts +4 -4
  278. package/lib/models/CinRequalificationCriteriaModel.d.ts +10 -10
  279. package/lib/models/EmployerDetailSearchResult.d.ts +47 -47
  280. package/lib/models/ErrorModel.d.ts +6 -6
  281. package/lib/models/FileModel.d.ts +4 -4
  282. package/lib/models/LibConstants.d.ts +112 -112
  283. package/lib/models/NewsAndAnnouncementModel.d.ts +5 -5
  284. package/lib/models/NotificationModel.d.ts +10 -10
  285. package/lib/models/OtpAuthModel.d.ts +6 -6
  286. package/lib/models/PaymentComponentModel.d.ts +7 -7
  287. package/lib/models/RequalifyLiftPageModel.d.ts +11 -11
  288. package/lib/models/SsaVerificationModel.d.ts +8 -8
  289. package/lib/models/TrendModel.d.ts +13 -13
  290. package/lib/models/UserDetailsModel.d.ts +9 -9
  291. package/lib/models/UserModel.d.ts +46 -46
  292. package/lib/models/case/CaseAttachmentModel.d.ts +5 -5
  293. package/lib/models/claimant/ClaimantModel.d.ts +22 -22
  294. package/lib/models/claimant/JobResultsData.d.ts +7 -7
  295. package/lib/models/claimant/MatchingJobs.d.ts +12 -12
  296. package/lib/models/claimant/ResetPasswordModel.d.ts +8 -8
  297. package/lib/models/cmp/CaseCoreModel.d.ts +20 -20
  298. package/lib/models/cmp/ComplaintCategoryModel.d.ts +8 -8
  299. package/lib/models/cmp/ComplaintCategoryOutputModel.d.ts +5 -5
  300. package/lib/models/cmp/ContactUsModel.d.ts +22 -22
  301. package/lib/models/cmp/EmailTemplateModel.d.ts +6 -6
  302. package/lib/models/cmp/contactUsInqueryModel.d.ts +46 -46
  303. package/lib/models/cmp/messageRourceModel.d.ts +5 -5
  304. package/lib/models/dashboard-model.d.ts +43 -43
  305. package/lib/models/dependent.model.d.ts +11 -18
  306. package/lib/models/dependent.model.d.ts.map +1 -1
  307. package/lib/models/questionnaire/ClaimAppEmpRequestModel.d.ts +8 -8
  308. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts +16 -16
  309. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts +151 -151
  310. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts +16 -16
  311. package/lib/models/questionnaire/ComboModel.d.ts +85 -85
  312. package/lib/models/questionnaire/ElementsModel.d.ts +68 -68
  313. package/lib/models/questionnaire/EmployerDetailSearchResult.d.ts +17 -17
  314. package/lib/models/questionnaire/EmployerWagesModel.d.ts +4 -4
  315. package/lib/models/questionnaire/FBConfigModel.d.ts +11 -11
  316. package/lib/models/questionnaire/KeyValueModel.d.ts +10 -10
  317. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts +10 -10
  318. package/lib/models/questionnaire/LoaderModel.d.ts +4 -4
  319. package/lib/models/questionnaire/PollingStatusModel.d.ts +6 -6
  320. package/lib/models/questionnaire/QtrYearEmployerWageModel.d.ts +8 -8
  321. package/lib/models/questionnaire/QuestionnaireQueryModel.d.ts +23 -23
  322. package/lib/models/questionnaire/QuestionnaireReturnModel.d.ts +20 -20
  323. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts +24 -24
  324. package/lib/models/questionnaire/RequalifyLiftIssuesModel.d.ts +13 -13
  325. package/lib/models/questionnaire/ServiceActionResponseModel.d.ts +6 -6
  326. package/lib/models/questionnaire/StatusModel.d.ts +15 -15
  327. package/lib/models/questionnaire/SuccessPageElement.d.ts +8 -8
  328. package/lib/models/questionnaire/UI512AResponseModel.d.ts +12 -12
  329. package/lib/models/questionnaire/ValidationModel.d.ts +17 -17
  330. package/lib/ngx-reusa-app-lib.component.d.ts +8 -8
  331. package/lib/ngx-reusa-app-lib.module.d.ts +148 -145
  332. package/lib/ngx-reusa-app-lib.module.d.ts.map +1 -1
  333. package/lib/ngx-reusa-app-lib.service.d.ts +6 -6
  334. package/lib/pages/BasePage.d.ts +26 -26
  335. package/lib/pages/common/accessibility-policy/accessibility-policy.page.d.ts +11 -11
  336. package/lib/pages/common/change-password/change-password.page.d.ts +40 -40
  337. package/lib/pages/common/landing/landing.component.d.ts +24 -24
  338. package/lib/pages/common/landing2/landing2.component.d.ts +30 -30
  339. package/lib/pages/common/login/login.component.d.ts +64 -64
  340. package/lib/pages/common/not-found/not-found.page.d.ts +8 -8
  341. package/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.d.ts +11 -11
  342. package/lib/pages/common/security-policy/security-policy.page.d.ts +11 -11
  343. package/lib/pages/common/unauthorized/unauthorized.page.d.ts +8 -8
  344. package/lib/pages/popovers/language/language.page.d.ts +16 -16
  345. package/lib/pages/popovers/my-notifications/my-notifications.page.d.ts +21 -21
  346. package/lib/pages/popovers/my-profile/my-profile.page.d.ts +20 -20
  347. package/lib/pages/popovers/user-search/user-search.component.d.ts +31 -31
  348. package/lib/pipes/filter.pipe.d.ts +7 -7
  349. package/lib/pipes/mask/mask.email.pipe.d.ts +10 -10
  350. package/lib/pipes/proper-case/proper-case.pipe.d.ts +8 -8
  351. package/lib/pipes/translate/dynamic-translate.pipe.d.ts +10 -10
  352. package/lib/pipes/trust-html/trust-html.pipe.d.ts +10 -10
  353. package/lib/services/base-service.d.ts +92 -92
  354. package/lib/services/captcha/captcha.service.d.ts +15 -15
  355. package/lib/services/case-service/case.service.d.ts +19 -19
  356. package/lib/services/chatbot/chatbot.service.d.ts +60 -60
  357. package/lib/services/chatbot/script.const.d.ts +15 -15
  358. package/lib/services/claimant/claimant.service.d.ts +17 -17
  359. package/lib/services/claimant-context/claimant-context.service.d.ts +18 -18
  360. package/lib/services/claimant-context/claimant-context.service.d.ts.map +1 -1
  361. package/lib/services/claimant-service/claimant.service.d.ts +19 -19
  362. package/lib/services/claims/claims.service.d.ts +39 -39
  363. package/lib/services/cmp-service/cmp.service.d.ts +33 -33
  364. package/lib/services/dms-service/dms.service.d.ts +23 -23
  365. package/lib/services/fpjs/fingerprint.service.d.ts +18 -18
  366. package/lib/services/google-analytics/google-analytics.service.d.ts +8 -8
  367. package/lib/services/help/help.service.d.ts +25 -25
  368. package/lib/services/help/help.service.d.ts.map +1 -1
  369. package/lib/services/idle/idle.service.d.ts +43 -43
  370. package/lib/services/logger/logger.service.d.ts +31 -31
  371. package/lib/services/logger/logger.service.d.ts.map +1 -1
  372. package/lib/services/login/login.service.d.ts +75 -75
  373. package/lib/services/login/login.service.d.ts.map +1 -1
  374. package/lib/services/maintenance/maintenance.service.d.ts +15 -15
  375. package/lib/services/notification/notification.service.d.ts +38 -38
  376. package/lib/services/questionnaire/questionnaire.service.d.ts +35 -35
  377. package/lib/services/questionnaire/validation.service.d.ts +81 -81
  378. package/lib/services/security-service/security.service.d.ts +14 -14
  379. package/lib/services/tour/tour.service.d.ts +24 -24
  380. package/lib/services/util/util.service.d.ts +190 -190
  381. package/lib/validations/AppRegex.d.ts +43 -43
  382. package/lib/validations/AppValidators.d.ts +53 -53
  383. package/package.json +6 -11
  384. package/public-api.d.ts +121 -121
  385. package/esm2020/lib/components/add-employer/add-employer.component.mjs +0 -3099
  386. package/esm2020/lib/components/add-participant/add-participant.component.mjs +0 -396
  387. package/esm2020/lib/components/add-payment/add-payment.component.mjs +0 -186
  388. package/esm2020/lib/components/address/address.component.mjs +0 -480
  389. package/esm2020/lib/components/bank-details/bank-details.component.mjs +0 -275
  390. package/esm2020/lib/components/captcha/captcha.component.mjs +0 -180
  391. package/esm2020/lib/components/card/card.component.mjs +0 -54
  392. package/esm2020/lib/components/contact-us/contact-us.component.mjs +0 -1004
  393. package/esm2020/lib/components/content/content.component.mjs +0 -60
  394. package/esm2020/lib/components/correspondence-download/correspondence-download.component.mjs +0 -82
  395. package/esm2020/lib/components/dashboard-card/dashboard-card.component.mjs +0 -219
  396. package/esm2020/lib/components/dependent-grid/dependent-grid.component.mjs +0 -297
  397. package/esm2020/lib/components/disclosure/disclosure.component.mjs +0 -59
  398. package/esm2020/lib/components/dropdown/dropdown.component.mjs +0 -1552
  399. package/esm2020/lib/components/email-update/email-update.component.mjs +0 -287
  400. package/esm2020/lib/components/employer-grid/employer-grid.component.mjs +0 -800
  401. package/esm2020/lib/components/error/error.component.mjs +0 -85
  402. package/esm2020/lib/components/fav-menu/fav-menu.component.mjs +0 -163
  403. package/esm2020/lib/components/file-uploader/file-uploader.component.mjs +0 -317
  404. package/esm2020/lib/components/footer/footer.component.mjs +0 -337
  405. package/esm2020/lib/components/header/header.component.mjs +0 -566
  406. package/esm2020/lib/components/help/help.component.mjs +0 -48
  407. package/esm2020/lib/components/idle-detector/idle-detector.component.mjs +0 -64
  408. package/esm2020/lib/components/job-search-result-page/job-search-result-page.component.mjs +0 -209
  409. package/esm2020/lib/components/legal-disclaimar/legal-disclaimar.component.mjs +0 -192
  410. package/esm2020/lib/components/maintenance-detector/maintenance-detector.component.mjs +0 -42
  411. package/esm2020/lib/components/mask/mask.component.mjs +0 -48
  412. package/esm2020/lib/components/menu/menu.component.mjs +0 -430
  413. package/esm2020/lib/components/mfa/mfa.component.mjs +0 -451
  414. package/esm2020/lib/components/mfa-popup/mfa-popup.component.mjs +0 -49
  415. package/esm2020/lib/components/money-expect/money-expect.component.mjs +0 -89
  416. package/esm2020/lib/components/msg/msg.component.mjs +0 -48
  417. package/esm2020/lib/components/news/news.component.mjs +0 -89
  418. package/esm2020/lib/components/overlay-info/overlay-info.component.mjs +0 -235
  419. package/esm2020/lib/components/page/page.component.mjs +0 -138
  420. package/esm2020/lib/components/profile/profile.component.mjs +0 -182
  421. package/esm2020/lib/components/profile-redirect/profile-redirect.component.mjs +0 -62
  422. package/esm2020/lib/components/questionnaire/AppValidators.mjs +0 -523
  423. package/esm2020/lib/components/questionnaire/account-success/account-success.page.mjs +0 -259
  424. package/esm2020/lib/components/questionnaire/common-success/common-success.page.mjs +0 -483
  425. package/esm2020/lib/components/questionnaire/dynamic-form-panel.component.mjs +0 -1137
  426. package/esm2020/lib/components/questionnaire/dynamic-form-question.component.mjs +0 -1948
  427. package/esm2020/lib/components/questionnaire/dynamic-form.component.mjs +0 -1257
  428. package/esm2020/lib/components/questionnaire/form-builder/form-builder.page.mjs +0 -240
  429. package/esm2020/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.mjs +0 -259
  430. package/esm2020/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.mjs +0 -260
  431. package/esm2020/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.mjs +0 -703
  432. package/esm2020/lib/components/search-employer/search-employer.component.mjs +0 -142
  433. package/esm2020/lib/components/select/select.component.mjs +0 -153
  434. package/esm2020/lib/components/ssn/ssn.component.mjs +0 -43
  435. package/esm2020/lib/components/ssn-reverify/ssn-reverify.component.mjs +0 -150
  436. package/esm2020/lib/components/test/test.component.mjs +0 -18
  437. package/esm2020/lib/components/user-login/user-login.component.mjs +0 -401
  438. package/esm2020/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +0 -445
  439. package/esm2020/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.mjs +0 -308
  440. package/esm2020/lib/guards/no-login/no-login.guard.mjs +0 -21
  441. package/esm2020/lib/models/RequalifyLiftPageModel.mjs +0 -11
  442. package/esm2020/lib/models/cmp/CaseCoreModel.mjs +0 -3
  443. package/esm2020/lib/models/cmp/ContactUsModel.mjs +0 -3
  444. package/esm2020/lib/models/cmp/contactUsInqueryModel.mjs +0 -7
  445. package/esm2020/lib/models/dashboard-model.mjs +0 -3
  446. package/esm2020/lib/models/dependent.model.mjs +0 -8
  447. package/esm2020/lib/models/questionnaire/ComboModel.mjs +0 -337
  448. package/esm2020/lib/models/questionnaire/RequalifyLiftIssuesModel.mjs +0 -3
  449. package/esm2020/lib/models/questionnaire/StatusModel.mjs +0 -6
  450. package/esm2020/lib/models/questionnaire/UI512AResponseModel.mjs +0 -3
  451. package/esm2020/lib/ngx-reusa-app-lib.component.mjs +0 -22
  452. package/esm2020/lib/ngx-reusa-app-lib.module.mjs +0 -390
  453. package/esm2020/lib/pages/common/accessibility-policy/accessibility-policy.page.mjs +0 -80
  454. package/esm2020/lib/pages/common/change-password/change-password.page.mjs +0 -477
  455. package/esm2020/lib/pages/common/landing/landing.component.mjs +0 -207
  456. package/esm2020/lib/pages/common/landing2/landing2.component.mjs +0 -244
  457. package/esm2020/lib/pages/common/login/login.component.mjs +0 -542
  458. package/esm2020/lib/pages/common/not-found/not-found.page.mjs +0 -23
  459. package/esm2020/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.mjs +0 -305
  460. package/esm2020/lib/pages/common/security-policy/security-policy.page.mjs +0 -60
  461. package/esm2020/lib/pages/common/unauthorized/unauthorized.page.mjs +0 -23
  462. package/esm2020/lib/pages/popovers/language/language.page.mjs +0 -60
  463. package/esm2020/lib/pages/popovers/my-notifications/my-notifications.page.mjs +0 -205
  464. package/esm2020/lib/pages/popovers/my-profile/my-profile.page.mjs +0 -129
  465. package/esm2020/lib/pages/popovers/user-search/user-search.component.mjs +0 -253
  466. package/esm2020/lib/services/chatbot/script.const.mjs +0 -42
  467. package/esm2020/lib/services/claimant-context/claimant-context.service.mjs +0 -47
  468. package/esm2020/lib/services/login/login.service.mjs +0 -330
  469. package/esm2020/lib/validations/AppRegex.mjs +0 -45
  470. package/fesm2015/reusa-ngx-reusa-app-lib.mjs +0 -30728
  471. package/fesm2015/reusa-ngx-reusa-app-lib.mjs.map +0 -1
  472. package/fesm2020/reusa-ngx-reusa-app-lib.mjs.map +0 -1
@@ -1,477 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { Validators } from '@angular/forms';
3
- import { AppValidators } from '../../../validations/AppValidators';
4
- import { AppRegex } from '../../../validations/AppRegex';
5
- import { BasePage } from '../../BasePage';
6
- import { LibConstants } from '../../../models/LibConstants';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/forms";
9
- import * as i2 from "../../../services/login/login.service";
10
- import * as i3 from "../../../services/util/util.service";
11
- import * as i4 from "@ionic/angular";
12
- import * as i5 from "@angular/router";
13
- import * as i6 from "@angular/common";
14
- import * as i7 from "@angular/material/form-field";
15
- import * as i8 from "primeng/password";
16
- import * as i9 from "../../../directives/caps-lock.directive";
17
- import * as i10 from "../../../components/content/content.component";
18
- import * as i11 from "../../../components/header/header.component";
19
- import * as i12 from "../../../components/card/card.component";
20
- import * as i13 from "../../../directives/auto-focus/auto-focus.directive";
21
- function ChangePasswordPage_div_10_li_7_Template(rf, ctx) { if (rf & 1) {
22
- i0.ɵɵelementStart(0, "li", 10);
23
- i0.ɵɵtext(1, "Minimum 8 characters.");
24
- i0.ɵɵelementEnd();
25
- } if (rf & 2) {
26
- const ctx_r3 = i0.ɵɵnextContext(2);
27
- i0.ɵɵproperty("ngClass", !ctx_r3.password.hasError("minlength") && ctx_r3.password.dirty ? "success" : "error");
28
- } }
29
- function ChangePasswordPage_div_10_li_8_Template(rf, ctx) { if (rf & 1) {
30
- i0.ɵɵelementStart(0, "li", 10);
31
- i0.ɵɵtext(1, "Maximum 15 characters.");
32
- i0.ɵɵelementEnd();
33
- } if (rf & 2) {
34
- const ctx_r4 = i0.ɵɵnextContext(2);
35
- i0.ɵɵproperty("ngClass", !ctx_r4.password.hasError("maxlength") && ctx_r4.password.dirty ? "success" : "error");
36
- } }
37
- function ChangePasswordPage_div_10_li_9_Template(rf, ctx) { if (rf & 1) {
38
- i0.ɵɵelementStart(0, "li", 10);
39
- i0.ɵɵtext(1, "Minimum 14 characters.");
40
- i0.ɵɵelementEnd();
41
- } if (rf & 2) {
42
- const ctx_r5 = i0.ɵɵnextContext(2);
43
- i0.ɵɵproperty("ngClass", !ctx_r5.password.hasError("minlength") && ctx_r5.password.dirty ? "success" : "error");
44
- } }
45
- function ChangePasswordPage_div_10_li_10_Template(rf, ctx) { if (rf & 1) {
46
- i0.ɵɵelementStart(0, "li", 10);
47
- i0.ɵɵtext(1, "Maximum 21 characters.");
48
- i0.ɵɵelementEnd();
49
- } if (rf & 2) {
50
- const ctx_r6 = i0.ɵɵnextContext(2);
51
- i0.ɵɵproperty("ngClass", !ctx_r6.password.hasError("maxlength") && ctx_r6.password.dirty ? "success" : "error");
52
- } }
53
- function ChangePasswordPage_div_10_li_17_Template(rf, ctx) { if (rf & 1) {
54
- i0.ɵɵelementStart(0, "li", 10);
55
- i0.ɵɵtext(1, "At least 2 special characters from following ");
56
- i0.ɵɵelementStart(2, "strong");
57
- i0.ɵɵtext(3, "_ @ * $ ! # .");
58
- i0.ɵɵelementEnd()();
59
- } if (rf & 2) {
60
- const ctx_r7 = i0.ɵɵnextContext(2);
61
- i0.ɵɵproperty("ngClass", !ctx_r7.password.hasError("hasCsrSpecialCharacters") && ctx_r7.password.dirty ? "success" : "error");
62
- } }
63
- function ChangePasswordPage_div_10_li_18_Template(rf, ctx) { if (rf & 1) {
64
- i0.ɵɵelementStart(0, "li", 10);
65
- i0.ɵɵtext(1, "At least 1 special characters from following ");
66
- i0.ɵɵelementStart(2, "strong");
67
- i0.ɵɵtext(3, "_ @ * $ ! # .");
68
- i0.ɵɵelementEnd()();
69
- } if (rf & 2) {
70
- const ctx_r8 = i0.ɵɵnextContext(2);
71
- i0.ɵɵproperty("ngClass", !ctx_r8.password.hasError("hasClaimantSpecialCharacters") && ctx_r8.password.dirty ? "success" : "error");
72
- } }
73
- function ChangePasswordPage_div_10_li_19_Template(rf, ctx) { if (rf & 1) {
74
- i0.ɵɵelementStart(0, "li", 10);
75
- i0.ɵɵtext(1, "At least 2 special characters from following ");
76
- i0.ɵɵelementStart(2, "strong");
77
- i0.ɵɵtext(3, "_ @ * $ ! # .");
78
- i0.ɵɵelementEnd()();
79
- } if (rf & 2) {
80
- const ctx_r9 = i0.ɵɵnextContext(2);
81
- i0.ɵɵproperty("ngClass", !ctx_r9.password.hasError("hasClaimantSpecialCharacters") && ctx_r9.password.dirty ? "success" : "error");
82
- } }
83
- function ChangePasswordPage_div_10_mat_error_25_Template(rf, ctx) { if (rf & 1) {
84
- i0.ɵɵelementStart(0, "mat-error");
85
- i0.ɵɵtext(1, " Current Password is required. ");
86
- i0.ɵɵelementEnd();
87
- } }
88
- function ChangePasswordPage_div_10_mat_error_26_Template(rf, ctx) { if (rf & 1) {
89
- i0.ɵɵelementStart(0, "mat-error");
90
- i0.ɵɵtext(1, " Current Password should not be same as New Password. ");
91
- i0.ɵɵelementEnd();
92
- } }
93
- function ChangePasswordPage_div_10_mat_error_33_Template(rf, ctx) { if (rf & 1) {
94
- i0.ɵɵelementStart(0, "mat-error");
95
- i0.ɵɵtext(1, " New Password is required. ");
96
- i0.ɵɵelementEnd();
97
- } }
98
- function ChangePasswordPage_div_10_mat_error_34_Template(rf, ctx) { if (rf & 1) {
99
- i0.ɵɵelementStart(0, "mat-error");
100
- i0.ɵɵtext(1, " New Password and Confirm Password did not match. ");
101
- i0.ɵɵelementEnd();
102
- } }
103
- function ChangePasswordPage_div_10_mat_error_35_Template(rf, ctx) { if (rf & 1) {
104
- i0.ɵɵelementStart(0, "mat-error");
105
- i0.ɵɵtext(1, " Current Password should not be same as New Password. ");
106
- i0.ɵɵelementEnd();
107
- } }
108
- function ChangePasswordPage_div_10_mat_error_42_Template(rf, ctx) { if (rf & 1) {
109
- i0.ɵɵelementStart(0, "mat-error");
110
- i0.ɵɵtext(1, " Confirm Password is required. ");
111
- i0.ɵɵelementEnd();
112
- } }
113
- function ChangePasswordPage_div_10_mat_error_43_Template(rf, ctx) { if (rf & 1) {
114
- i0.ɵɵelementStart(0, "mat-error");
115
- i0.ɵɵtext(1, " Confirm Password should have minimum ");
116
- i0.ɵɵelementStart(2, "strong");
117
- i0.ɵɵtext(3, "14 characters");
118
- i0.ɵɵelementEnd();
119
- i0.ɵɵtext(4, ". ");
120
- i0.ɵɵelementEnd();
121
- } }
122
- function ChangePasswordPage_div_10_mat_error_44_Template(rf, ctx) { if (rf & 1) {
123
- i0.ɵɵelementStart(0, "mat-error");
124
- i0.ɵɵtext(1, " Confirm Password should not have more than ");
125
- i0.ɵɵelementStart(2, "strong");
126
- i0.ɵɵtext(3, "21 characters");
127
- i0.ɵɵelementEnd();
128
- i0.ɵɵtext(4, ". ");
129
- i0.ɵɵelementEnd();
130
- } }
131
- function ChangePasswordPage_div_10_mat_error_45_Template(rf, ctx) { if (rf & 1) {
132
- i0.ɵɵelementStart(0, "mat-error");
133
- i0.ɵɵtext(1, " Confirm Password should have minimum ");
134
- i0.ɵɵelementStart(2, "strong");
135
- i0.ɵɵtext(3, "8 characters");
136
- i0.ɵɵelementEnd();
137
- i0.ɵɵtext(4, ". ");
138
- i0.ɵɵelementEnd();
139
- } }
140
- function ChangePasswordPage_div_10_mat_error_46_Template(rf, ctx) { if (rf & 1) {
141
- i0.ɵɵelementStart(0, "mat-error");
142
- i0.ɵɵtext(1, " Confirm Password should not have more than ");
143
- i0.ɵɵelementStart(2, "strong");
144
- i0.ɵɵtext(3, "15 characters");
145
- i0.ɵɵelementEnd();
146
- i0.ɵɵtext(4, ". ");
147
- i0.ɵɵelementEnd();
148
- } }
149
- function ChangePasswordPage_div_10_mat_error_47_Template(rf, ctx) { if (rf & 1) {
150
- i0.ɵɵelementStart(0, "mat-error");
151
- i0.ɵɵtext(1, " New Password and Confirm Password did not match. ");
152
- i0.ɵɵelementEnd();
153
- } }
154
- function ChangePasswordPage_div_10_mat_error_48_Template(rf, ctx) { if (rf & 1) {
155
- i0.ɵɵelementStart(0, "mat-error");
156
- i0.ɵɵtext(1, " Current Password should not be same as Confirm Password. ");
157
- i0.ɵɵelementEnd();
158
- } }
159
- function ChangePasswordPage_div_10_label_49_Template(rf, ctx) { if (rf & 1) {
160
- i0.ɵɵelementStart(0, "label", 21)(1, "strong");
161
- i0.ɵɵtext(2, "Caps Lock is On");
162
- i0.ɵɵelementEnd()();
163
- } }
164
- function ChangePasswordPage_div_10_Template(rf, ctx) { if (rf & 1) {
165
- const _r24 = i0.ɵɵgetCurrentView();
166
- i0.ɵɵelementStart(0, "div")(1, "div");
167
- i0.ɵɵtext(2, " In order to ");
168
- i0.ɵɵelementStart(3, "strong");
169
- i0.ɵɵtext(4, "protect your account");
170
- i0.ɵɵelementEnd();
171
- i0.ɵɵtext(5, ", make sure your password has: ");
172
- i0.ɵɵelementStart(6, "ul", 8);
173
- i0.ɵɵtemplate(7, ChangePasswordPage_div_10_li_7_Template, 2, 1, "li", 9);
174
- i0.ɵɵtemplate(8, ChangePasswordPage_div_10_li_8_Template, 2, 1, "li", 9);
175
- i0.ɵɵtemplate(9, ChangePasswordPage_div_10_li_9_Template, 2, 1, "li", 9);
176
- i0.ɵɵtemplate(10, ChangePasswordPage_div_10_li_10_Template, 2, 1, "li", 9);
177
- i0.ɵɵelementStart(11, "li", 10);
178
- i0.ɵɵtext(12, "At least 1 number");
179
- i0.ɵɵelementEnd();
180
- i0.ɵɵelementStart(13, "li", 10);
181
- i0.ɵɵtext(14, "At least 1 uppercase letter");
182
- i0.ɵɵelementEnd();
183
- i0.ɵɵelementStart(15, "li", 10);
184
- i0.ɵɵtext(16, "At least 1 lowercase letter");
185
- i0.ɵɵelementEnd();
186
- i0.ɵɵtemplate(17, ChangePasswordPage_div_10_li_17_Template, 4, 1, "li", 9);
187
- i0.ɵɵtemplate(18, ChangePasswordPage_div_10_li_18_Template, 4, 1, "li", 9);
188
- i0.ɵɵtemplate(19, ChangePasswordPage_div_10_li_19_Template, 4, 1, "li", 9);
189
- i0.ɵɵelementEnd()();
190
- i0.ɵɵelementStart(20, "div", 11)(21, "span", 12);
191
- i0.ɵɵelement(22, "p-password", 13);
192
- i0.ɵɵelementStart(23, "label", 14);
193
- i0.ɵɵtext(24, "Current Password");
194
- i0.ɵɵelementEnd()();
195
- i0.ɵɵtemplate(25, ChangePasswordPage_div_10_mat_error_25_Template, 2, 0, "mat-error", 6);
196
- i0.ɵɵtemplate(26, ChangePasswordPage_div_10_mat_error_26_Template, 2, 0, "mat-error", 6);
197
- i0.ɵɵelementEnd();
198
- i0.ɵɵelement(27, "br");
199
- i0.ɵɵelementStart(28, "div", 11)(29, "span", 12);
200
- i0.ɵɵelement(30, "p-password", 15);
201
- i0.ɵɵelementStart(31, "label", 14);
202
- i0.ɵɵtext(32, "New Password");
203
- i0.ɵɵelementEnd()();
204
- i0.ɵɵtemplate(33, ChangePasswordPage_div_10_mat_error_33_Template, 2, 0, "mat-error", 6);
205
- i0.ɵɵtemplate(34, ChangePasswordPage_div_10_mat_error_34_Template, 2, 0, "mat-error", 6);
206
- i0.ɵɵtemplate(35, ChangePasswordPage_div_10_mat_error_35_Template, 2, 0, "mat-error", 6);
207
- i0.ɵɵelementEnd();
208
- i0.ɵɵelement(36, "br");
209
- i0.ɵɵelementStart(37, "div", 11)(38, "span", 12);
210
- i0.ɵɵelement(39, "p-password", 16);
211
- i0.ɵɵelementStart(40, "label", 14);
212
- i0.ɵɵtext(41, "Confirm Password");
213
- i0.ɵɵelementEnd()();
214
- i0.ɵɵtemplate(42, ChangePasswordPage_div_10_mat_error_42_Template, 2, 0, "mat-error", 6);
215
- i0.ɵɵtemplate(43, ChangePasswordPage_div_10_mat_error_43_Template, 5, 0, "mat-error", 6);
216
- i0.ɵɵtemplate(44, ChangePasswordPage_div_10_mat_error_44_Template, 5, 0, "mat-error", 6);
217
- i0.ɵɵtemplate(45, ChangePasswordPage_div_10_mat_error_45_Template, 5, 0, "mat-error", 6);
218
- i0.ɵɵtemplate(46, ChangePasswordPage_div_10_mat_error_46_Template, 5, 0, "mat-error", 6);
219
- i0.ɵɵtemplate(47, ChangePasswordPage_div_10_mat_error_47_Template, 2, 0, "mat-error", 6);
220
- i0.ɵɵtemplate(48, ChangePasswordPage_div_10_mat_error_48_Template, 2, 0, "mat-error", 6);
221
- i0.ɵɵelementEnd();
222
- i0.ɵɵtemplate(49, ChangePasswordPage_div_10_label_49_Template, 3, 0, "label", 17);
223
- i0.ɵɵelementStart(50, "div", 18)(51, "ion-button", 19);
224
- i0.ɵɵlistener("click", function ChangePasswordPage_div_10_Template_ion_button_click_51_listener() { i0.ɵɵrestoreView(_r24); const ctx_r23 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r23.save()); });
225
- i0.ɵɵelement(52, "ion-icon", 20);
226
- i0.ɵɵtext(53, " Change Password ");
227
- i0.ɵɵelementEnd()()();
228
- } if (rf & 2) {
229
- const ctx_r1 = i0.ɵɵnextContext();
230
- i0.ɵɵadvance(7);
231
- i0.ɵɵproperty("ngIf", !ctx_r1.isNewPasswordPolicyEnabled);
232
- i0.ɵɵadvance(1);
233
- i0.ɵɵproperty("ngIf", !ctx_r1.isNewPasswordPolicyEnabled);
234
- i0.ɵɵadvance(1);
235
- i0.ɵɵproperty("ngIf", ctx_r1.isNewPasswordPolicyEnabled);
236
- i0.ɵɵadvance(1);
237
- i0.ɵɵproperty("ngIf", ctx_r1.isNewPasswordPolicyEnabled);
238
- i0.ɵɵadvance(1);
239
- i0.ɵɵproperty("ngClass", !ctx_r1.password.hasError("hasNumber") && ctx_r1.password.dirty ? "success" : "error");
240
- i0.ɵɵadvance(2);
241
- i0.ɵɵproperty("ngClass", !ctx_r1.password.hasError("hasCapitalCase") && ctx_r1.password.dirty ? "success" : "error");
242
- i0.ɵɵadvance(2);
243
- i0.ɵɵproperty("ngClass", !ctx_r1.password.hasError("hasSmallCase") && ctx_r1.password.dirty ? "success" : "error");
244
- i0.ɵɵadvance(2);
245
- i0.ɵɵproperty("ngIf", !ctx_r1.loginService.isClaimant());
246
- i0.ɵɵadvance(1);
247
- i0.ɵɵproperty("ngIf", ctx_r1.loginService.isClaimant() && !ctx_r1.isSameSymbolPolicyForClaimantAndAgency);
248
- i0.ɵɵadvance(1);
249
- i0.ɵɵproperty("ngIf", ctx_r1.loginService.isClaimant() && ctx_r1.isSameSymbolPolicyForClaimantAndAgency);
250
- i0.ɵɵadvance(3);
251
- i0.ɵɵproperty("formControl", ctx_r1.oldPassword)("toggleMask", true)("feedback", false);
252
- i0.ɵɵadvance(3);
253
- i0.ɵɵproperty("ngIf", ctx_r1.oldPassword.hasError("required"));
254
- i0.ɵɵadvance(1);
255
- i0.ɵɵproperty("ngIf", ctx_r1.oldPassword.hasError("match"));
256
- i0.ɵɵadvance(4);
257
- i0.ɵɵproperty("formControl", ctx_r1.password)("toggleMask", true);
258
- i0.ɵɵadvance(3);
259
- i0.ɵɵproperty("ngIf", ctx_r1.password.hasError("required"));
260
- i0.ɵɵadvance(1);
261
- i0.ɵɵproperty("ngIf", ctx_r1.password.hasError("notMatch"));
262
- i0.ɵɵadvance(1);
263
- i0.ɵɵproperty("ngIf", ctx_r1.password.hasError("match"));
264
- i0.ɵɵadvance(4);
265
- i0.ɵɵproperty("formControl", ctx_r1.confirmPassword)("toggleMask", true);
266
- i0.ɵɵadvance(3);
267
- i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("required"));
268
- i0.ɵɵadvance(1);
269
- i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("minlength") && ctx_r1.isNewPasswordPolicyEnabled);
270
- i0.ɵɵadvance(1);
271
- i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("maxlength") && ctx_r1.isNewPasswordPolicyEnabled);
272
- i0.ɵɵadvance(1);
273
- i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("minlength") && !ctx_r1.isNewPasswordPolicyEnabled);
274
- i0.ɵɵadvance(1);
275
- i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("maxlength") && !ctx_r1.isNewPasswordPolicyEnabled);
276
- i0.ɵɵadvance(1);
277
- i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("notMatch"));
278
- i0.ɵɵadvance(1);
279
- i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("match"));
280
- i0.ɵɵadvance(1);
281
- i0.ɵɵproperty("ngIf", ctx_r1.capsOn);
282
- } }
283
- function ChangePasswordPage_div_11_strong_2_Template(rf, ctx) { if (rf & 1) {
284
- i0.ɵɵelementStart(0, "strong");
285
- i0.ɵɵtext(1);
286
- i0.ɵɵelementEnd();
287
- } if (rf & 2) {
288
- const ctx_r25 = i0.ɵɵnextContext(2);
289
- i0.ɵɵadvance(1);
290
- i0.ɵɵtextInterpolate(ctx_r25.user.daysTillPasswordExpire);
291
- } }
292
- function ChangePasswordPage_div_11_Template(rf, ctx) { if (rf & 1) {
293
- const _r27 = i0.ɵɵgetCurrentView();
294
- i0.ɵɵelementStart(0, "div", 22);
295
- i0.ɵɵtext(1, " Your password will expire in ");
296
- i0.ɵɵtemplate(2, ChangePasswordPage_div_11_strong_2_Template, 2, 1, "strong", 6);
297
- i0.ɵɵtext(3, " day(s). Consider changing it now. ");
298
- i0.ɵɵelementStart(4, "div", 18)(5, "ion-button", 19);
299
- i0.ɵɵlistener("click", function ChangePasswordPage_div_11_Template_ion_button_click_5_listener() { i0.ɵɵrestoreView(_r27); const ctx_r26 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r26.showChangePassword = "false"); });
300
- i0.ɵɵelement(6, "ion-icon", 23);
301
- i0.ɵɵtext(7, " Change Now ");
302
- i0.ɵɵelementEnd();
303
- i0.ɵɵelementStart(8, "ion-button", 19);
304
- i0.ɵɵlistener("click", function ChangePasswordPage_div_11_Template_ion_button_click_8_listener() { i0.ɵɵrestoreView(_r27); const ctx_r28 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r28.redirect()); });
305
- i0.ɵɵelement(9, "ion-icon", 24);
306
- i0.ɵɵtext(10, " Dashboard ");
307
- i0.ɵɵelementEnd()()();
308
- } if (rf & 2) {
309
- const ctx_r2 = i0.ɵɵnextContext();
310
- i0.ɵɵadvance(2);
311
- i0.ɵɵproperty("ngIf", ctx_r2.user);
312
- } }
313
- export class ChangePasswordPage extends BasePage {
314
- constructor(fb, loginService, util, nav, route, platform) {
315
- super();
316
- this.fb = fb;
317
- this.loginService = loginService;
318
- this.util = util;
319
- this.nav = nav;
320
- this.route = route;
321
- this.platform = platform;
322
- this.capsOn = false;
323
- this.commonValidators = [
324
- AppValidators.match(AppRegex.UPPER_CASE_REGEX, { hasCapitalCase: true }),
325
- AppValidators.match(AppRegex.LOWER_CASE_REGEX, { hasSmallCase: true }),
326
- AppValidators.match(AppRegex.NUMBER_REGEX, { hasNumber: true })
327
- ];
328
- this.csrPasswordValidators = [
329
- AppValidators.match(AppRegex.AGENCY_SYMBOL_REGEX, { hasCsrSpecialCharacters: true })
330
- ];
331
- this.csrConfirmPasswordValidators = [
332
- AppValidators.match(AppRegex.AGENCY_SYMBOL_REGEX, { hasCsrSpecialCharacters: true }),
333
- AppValidators.equal('password', { notMatch: true })
334
- ];
335
- this.claimantPasswordValidators = [
336
- AppValidators.match(this.isSameSymbolPolicyForClaimantAndAgency ? AppRegex.AGENCY_SYMBOL_REGEX : AppRegex.CLAIMANT_SYMBOL_REGEX, { hasClaimantSpecialCharacters: true })
337
- ];
338
- this.claimantConfirmPasswordValidators = [
339
- AppValidators.match(this.isSameSymbolPolicyForClaimantAndAgency ? AppRegex.AGENCY_SYMBOL_REGEX : AppRegex.CLAIMANT_SYMBOL_REGEX, { hasClaimantSpecialCharacters: true }),
340
- AppValidators.equal('password', { notMatch: true })
341
- ];
342
- this.hidePassword = true;
343
- this.hideConfirmPassword = true;
344
- this.hideOldPassword = true;
345
- this.showChangePassword = 'false';
346
- }
347
- ngOnInit() {
348
- this.initializeChangePwdForm();
349
- this.user = this.loginService.getUser();
350
- this.showChangePassword = this.route.snapshot.queryParamMap.get('changePwd') ? this.route.snapshot.queryParamMap.get('changePwd') : 'false';
351
- }
352
- initializeChangePwdForm() {
353
- this.changePwdForm = this.fb.group({
354
- 'oldPassword': [null, []],
355
- 'password': [null, []],
356
- 'confirmPassword': [null, []]
357
- });
358
- this.password.valueChanges.subscribe(v => {
359
- if (this.confirmPassword.value) {
360
- this.confirmPassword.updateValueAndValidity();
361
- }
362
- if (this.oldPassword.value) {
363
- this.oldPassword.updateValueAndValidity();
364
- }
365
- });
366
- this.setPasswordValidators();
367
- }
368
- setPasswordValidators() {
369
- let validators1 = [];
370
- let validators2 = [];
371
- let validators3 = [Validators.required, AppValidators.notEqual('password', { match: true })];
372
- this.commonValidators.forEach(v => validators1.push(v));
373
- this.commonValidators.forEach(v => validators2.push(v));
374
- if (this.isNewPasswordPolicyEnabled) {
375
- this.newPasswordPolicyValidators.forEach(v => validators1.push(v));
376
- this.newPasswordPolicyValidators.forEach(v => validators2.push(v));
377
- }
378
- else {
379
- this.oldPasswordPolicyValidators.forEach(v => validators1.push(v));
380
- this.oldPasswordPolicyValidators.forEach(v => validators2.push(v));
381
- }
382
- if (this.loginService.isCsr()) {
383
- this.csrPasswordValidators.forEach(v => validators1.push(v));
384
- this.csrConfirmPasswordValidators.forEach(v => validators2.push(v));
385
- }
386
- else {
387
- this.claimantPasswordValidators.forEach(v => validators1.push(v));
388
- this.claimantConfirmPasswordValidators.forEach(v => validators2.push(v));
389
- }
390
- this.util.setValidation(this.oldPassword, validators3);
391
- this.util.setValidation(this.password, validators1);
392
- this.util.setValidation(this.confirmPassword, validators2);
393
- }
394
- get oldPassword() {
395
- return this.changePwdForm.get('oldPassword');
396
- }
397
- get password() {
398
- return this.changePwdForm.get('password');
399
- }
400
- get confirmPassword() {
401
- return this.changePwdForm.get('confirmPassword');
402
- }
403
- save() {
404
- if (this.changePwdForm.invalid) {
405
- return;
406
- }
407
- this.util.showLoader()
408
- .then(() => {
409
- this.loginService.updatePassword(this.oldPassword.value, this.password.value, this.confirmPassword.value)
410
- .subscribe(res => {
411
- this.loginService.logout();
412
- this.nav
413
- .navigateRoot('login')
414
- .then(() => {
415
- this.util.success('Password Changed Successfully. Please login again.');
416
- this.util.hideLoader();
417
- });
418
- }, err => {
419
- this.util.hideLoader();
420
- this.util.errorHandler(err);
421
- });
422
- });
423
- }
424
- redirect() {
425
- let userModel = this.loginService.getUser();
426
- if (this.loginService.isClaimant()) {
427
- const isCapacitor = this.platform.is('capacitor');
428
- if (isCapacitor) {
429
- this.nav.navigateRoot("welcome");
430
- this.util.hideLoader();
431
- }
432
- else {
433
- if (LibConstants.legacyMenu == 'true') {
434
- this.nav.navigateRoot("welcome");
435
- this.util.hideLoader();
436
- }
437
- else {
438
- if ((LibConstants.ssoCookieName + "").includes('UAT') || (LibConstants.ssoCookieName + "").includes('PROD')) {
439
- window.open(`${LibConstants.msworksUrl}`, '_self');
440
- }
441
- else {
442
- window.open(`${LibConstants.benefitsUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299`, '_self');
443
- }
444
- }
445
- }
446
- }
447
- else if (this.loginService.isEmployer() || this.loginService.isTpa()) {
448
- window.open(`${LibConstants.taxUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299`, '_self');
449
- }
450
- else {
451
- window.open(`${LibConstants.benefitsUrl}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299`, '_self');
452
- }
453
- }
454
- }
455
- ChangePasswordPage.ɵfac = function ChangePasswordPage_Factory(t) { return new (t || ChangePasswordPage)(i0.ɵɵdirectiveInject(i1.UntypedFormBuilder), i0.ɵɵdirectiveInject(i2.LoginService), i0.ɵɵdirectiveInject(i3.UtilService), i0.ɵɵdirectiveInject(i4.NavController), i0.ɵɵdirectiveInject(i5.ActivatedRoute), i0.ɵɵdirectiveInject(i4.Platform)); };
456
- ChangePasswordPage.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ChangePasswordPage, selectors: [["app-change-password"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 12, vars: 3, consts: [["title", "Change Password", "pageId", "CNGPWD-001"], [3, "formGroup"], ["changePwdFormDirective", "ngForm"], ["color", "primary", 1, "ion-justify-content-center"], ["size-md", "6", "size-lg", "4", "size-xs", "12", "size-sm", "12", "size-xl", "4", 1, "ion-align-self-center"], ["title", "Change Password", 3, "capsLock"], [4, "ngIf"], ["class", "ion-text-center", 4, "ngIf"], [1, "p-pl-2", "p-ml-2", "p-mt-0", 2, "line-height", "1.5", "margin-left", "1rem !important", "list-style-type", "square"], [3, "ngClass", 4, "ngIf"], [3, "ngClass"], [2, "display", "grid"], [1, "p-float-label"], ["inputId", "oldPassword", "appAutofocus", "", 3, "formControl", "toggleMask", "feedback"], ["for", "float-input"], ["inputId", "password", "appendTo", "body", 3, "formControl", "toggleMask"], ["inputId", "confirmPassword", "appendTo", "body", 3, "formControl", "toggleMask"], ["style", "color:var(--ion-color-danger);", 4, "ngIf"], [1, "ion-text-center", "ion-padding-top"], ["shape", "round", "color", "success", "type", "submit", 3, "click"], ["name", "save-outline", "slot", "start"], [2, "color", "var(--ion-color-danger)"], [1, "ion-text-center"], ["name", "shuffle-outline", "slot", "start"], ["name", "analytics-outline", "slot", "start"]], template: function ChangePasswordPage_Template(rf, ctx) { if (rf & 1) {
457
- i0.ɵɵelementStart(0, "ion-header");
458
- i0.ɵɵelement(1, "app-header", 0);
459
- i0.ɵɵelementEnd();
460
- i0.ɵɵelementStart(2, "ion-content")(3, "app-content")(4, "form", 1, 2)(6, "ion-grid")(7, "ion-row", 3)(8, "ion-col", 4)(9, "app-card", 5);
461
- i0.ɵɵlistener("capsLock", function ChangePasswordPage_Template_app_card_capsLock_9_listener($event) { return ctx.capsOn = $event; });
462
- i0.ɵɵtemplate(10, ChangePasswordPage_div_10_Template, 54, 30, "div", 6);
463
- i0.ɵɵtemplate(11, ChangePasswordPage_div_11_Template, 11, 1, "div", 7);
464
- i0.ɵɵelementEnd()()()()()()();
465
- } if (rf & 2) {
466
- i0.ɵɵadvance(4);
467
- i0.ɵɵproperty("formGroup", ctx.changePwdForm);
468
- i0.ɵɵadvance(6);
469
- i0.ɵɵproperty("ngIf", ctx.showChangePassword == "false");
470
- i0.ɵɵadvance(1);
471
- i0.ɵɵproperty("ngIf", ctx.showChangePassword == "true");
472
- } }, dependencies: [i4.IonButton, i4.IonCol, i4.IonContent, i4.IonGrid, i4.IonHeader, i4.IonIcon, i4.IonRow, i6.NgClass, i6.NgIf, i7.MatError, i1.ɵNgNoValidate, i1.NgControlStatus, i1.NgControlStatusGroup, i1.FormControlDirective, i1.FormGroupDirective, i8.Password, i9.CapsLockDirective, i10.ContentComponent, i11.HeaderComponent, i12.CardComponent, i13.AutofocusDirective], styles: ["[_nghost-%COMP%] .p-inputwrapper, [_nghost-%COMP%] .p-inputtext{width:100%}.error[_ngcontent-%COMP%]{color:var(--ion-color-danger)}.success[_ngcontent-%COMP%]{color:var(--ion-color-green)}"] });
473
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ChangePasswordPage, [{
474
- type: Component,
475
- args: [{ selector: 'app-change-password', template: "<ion-header>\r\n <app-header title=\"Change Password\" pageId=\"CNGPWD-001\">\r\n </app-header>\r\n</ion-header>\r\n\r\n<ion-content>\r\n <app-content>\r\n <form [formGroup]=\"changePwdForm\" #changePwdFormDirective=\"ngForm\">\r\n <ion-grid>\r\n <ion-row color=\"primary\" class=\"ion-justify-content-center\">\r\n <ion-col class=\"ion-align-self-center\" size-md=\"6\" size-lg=\"4\" size-xs=\"12\" size-sm=\"12\" size-xl=\"4\">\r\n \r\n <app-card title=\"Change Password\" (capsLock)=\"capsOn=$event\">\r\n <div *ngIf=\"showChangePassword == 'false'\">\r\n <div>\r\n In order to <strong>protect your account</strong>, make sure your password has:\r\n <ul class=\"p-pl-2 p-ml-2 p-mt-0\" style=\"line-height: 1.5; margin-left: 1rem !important; list-style-type: square;\">\r\n <li [ngClass]=\"!password.hasError('minlength') && password.dirty ? 'success' : 'error'\" *ngIf=\"!isNewPasswordPolicyEnabled\">Minimum 8 characters.</li>\r\n <li [ngClass]=\"!password.hasError('maxlength') && password.dirty ? 'success' : 'error'\" *ngIf=\"!isNewPasswordPolicyEnabled\">Maximum 15 characters.</li>\r\n <li [ngClass]=\"!password.hasError('minlength') && password.dirty ? 'success' : 'error'\" *ngIf=\"isNewPasswordPolicyEnabled\">Minimum 14 characters.</li>\r\n <li [ngClass]=\"!password.hasError('maxlength') && password.dirty ? 'success' : 'error'\" *ngIf=\"isNewPasswordPolicyEnabled\">Maximum 21 characters.</li>\r\n <li [ngClass]=\"!password.hasError('hasNumber') && password.dirty ? 'success' : 'error'\">At least 1 number</li>\r\n <li [ngClass]=\"!password.hasError('hasCapitalCase') && password.dirty ? 'success' : 'error'\">At least 1 uppercase letter</li>\r\n <li [ngClass]=\"!password.hasError('hasSmallCase') && password.dirty ? 'success' : 'error'\">At least 1 lowercase letter</li>\r\n <li [ngClass]=\"!password.hasError('hasCsrSpecialCharacters') && password.dirty ? 'success' : 'error'\" *ngIf=\"!loginService.isClaimant()\">At least 2 special characters from following <strong>_ @ * $ ! # .</strong></li>\r\n <li [ngClass]=\"!password.hasError('hasClaimantSpecialCharacters') && password.dirty ? 'success' : 'error'\" *ngIf=\"loginService.isClaimant() && !isSameSymbolPolicyForClaimantAndAgency\">At least 1 special characters from following <strong>_ @ * $ ! # .</strong></li>\r\n <li [ngClass]=\"!password.hasError('hasClaimantSpecialCharacters') && password.dirty ? 'success' : 'error'\" *ngIf=\"loginService.isClaimant() && isSameSymbolPolicyForClaimantAndAgency\">At least 2 special characters from following <strong>_ @ * $ ! # .</strong></li>\r\n </ul>\r\n </div>\r\n <div style=\"display: grid;\">\r\n <span class=\"p-float-label\">\r\n <p-password [formControl]=\"oldPassword\" inputId=\"oldPassword\" [toggleMask]='true' [feedback]='false' appAutofocus></p-password> \r\n <label for=\"float-input\">Current Password</label>\r\n </span>\r\n <mat-error *ngIf=\"oldPassword.hasError('required')\">\r\n Current Password is required.\r\n </mat-error>\r\n <mat-error *ngIf=\"oldPassword.hasError('match')\">\r\n Current Password should not be same as New Password.\r\n </mat-error>\r\n </div>\r\n <br/>\r\n <div style=\"display: grid;\">\r\n <span class=\"p-float-label\">\r\n <p-password [formControl]=\"password\" inputId=\"password\" [toggleMask]='true' appendTo=\"body\">\r\n </p-password> \r\n <label for=\"float-input\">New Password</label>\r\n </span>\r\n <mat-error *ngIf=\"password.hasError('required')\">\r\n New Password is required.\r\n </mat-error>\r\n <mat-error *ngIf=\"password.hasError('notMatch')\">\r\n New Password and Confirm Password did not match.\r\n </mat-error>\r\n <mat-error *ngIf=\"password.hasError('match')\">\r\n Current Password should not be same as New Password.\r\n </mat-error>\r\n </div>\r\n \r\n <br/>\r\n <div style=\"display: grid;\">\r\n <span class=\"p-float-label\">\r\n <p-password [formControl]=\"confirmPassword\" inputId=\"confirmPassword\" [toggleMask]='true' appendTo=\"body\">\r\n </p-password> \r\n <label for=\"float-input\">Confirm Password</label>\r\n </span>\r\n <mat-error *ngIf=\"confirmPassword.hasError('required')\">\r\n Confirm Password is required.\r\n </mat-error>\r\n <mat-error *ngIf=\"confirmPassword.hasError('minlength') && isNewPasswordPolicyEnabled\">\r\n Confirm Password should have minimum <strong>14 characters</strong>.\r\n </mat-error>\r\n <mat-error *ngIf=\"confirmPassword.hasError('maxlength') && isNewPasswordPolicyEnabled\">\r\n Confirm Password should not have more than <strong>21 characters</strong>.\r\n </mat-error>\r\n <mat-error *ngIf=\"confirmPassword.hasError('minlength') && !isNewPasswordPolicyEnabled\">\r\n Confirm Password should have minimum <strong>8 characters</strong>.\r\n </mat-error>\r\n <mat-error *ngIf=\"confirmPassword.hasError('maxlength') && !isNewPasswordPolicyEnabled\">\r\n Confirm Password should not have more than <strong>15 characters</strong>.\r\n </mat-error>\r\n <mat-error *ngIf=\"confirmPassword.hasError('notMatch')\">\r\n New Password and Confirm Password did not match.\r\n </mat-error>\r\n <mat-error *ngIf=\"confirmPassword.hasError('match')\">\r\n Current Password should not be same as Confirm Password.\r\n </mat-error>\r\n </div>\r\n \r\n <label *ngIf=\"capsOn\" style=\"color:var(--ion-color-danger);\"><strong>Caps Lock is On</strong></label>\r\n \r\n <div class=\"ion-text-center ion-padding-top\">\r\n <ion-button shape=\"round\" (click)=\"save()\" color=\"success\" type=\"submit\">\r\n <ion-icon name=\"save-outline\" slot=\"start\" ></ion-icon>\r\n Change Password\r\n </ion-button>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showChangePassword == 'true'\" class=\"ion-text-center\">\r\n Your password will expire in <strong *ngIf=\"user\">{{user.daysTillPasswordExpire}}</strong> day(s). Consider changing it now.\r\n <div class=\"ion-text-center ion-padding-top\">\r\n <ion-button shape=\"round\" (click)=\"showChangePassword = 'false'\" color=\"success\" type=\"submit\">\r\n <ion-icon name=\"shuffle-outline\" slot=\"start\" ></ion-icon>\r\n Change Now\r\n </ion-button>\r\n <ion-button shape=\"round\" (click)=\"redirect()\" color=\"success\" type=\"submit\">\r\n <ion-icon name=\"analytics-outline\" slot=\"start\" ></ion-icon>\r\n Dashboard\r\n </ion-button>\r\n </div>\r\n </div>\r\n </app-card>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n </form>\r\n </app-content>\r\n</ion-content>", styles: [":host ::ng-deep .p-inputwrapper,:host ::ng-deep .p-inputtext{width:100%}.error{color:var(--ion-color-danger)}.success{color:var(--ion-color-green)}\n"] }]
476
- }], function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.LoginService }, { type: i3.UtilService }, { type: i4.NavController }, { type: i5.ActivatedRoute }, { type: i4.Platform }]; }, null); })();
477
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLnBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL3BhZ2VzL2NvbW1vbi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLnBhZ2UudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL3BhZ2VzL2NvbW1vbi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLnBhZ2UuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBd0MsVUFBVSxFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFHL0YsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0lDT3hDLDhCQUE0SDtJQUFBLHFDQUFxQjtJQUFBLGlCQUFLOzs7SUFBbEosK0dBQW1GOzs7SUFDdkYsOEJBQTRIO0lBQUEsc0NBQXNCO0lBQUEsaUJBQUs7OztJQUFuSiwrR0FBbUY7OztJQUN2Riw4QkFBMkg7SUFBQSxzQ0FBc0I7SUFBQSxpQkFBSzs7O0lBQWxKLCtHQUFtRjs7O0lBQ3ZGLDhCQUEySDtJQUFBLHNDQUFzQjtJQUFBLGlCQUFLOzs7SUFBbEosK0dBQW1GOzs7SUFJdkYsOEJBQTBJO0lBQUEsNkRBQTZDO0lBQUEsOEJBQVE7SUFBQSw2QkFBYTtJQUFBLGlCQUFTLEVBQUE7OztJQUFqTiw2SEFBa0c7OztJQUN0Ryw4QkFBeUw7SUFB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LFlBQVksQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFDO1lBQ3BFLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLENBQUMsY0FBYyx3Q0FBd0MsU0FBUyxDQUFDLFlBQVksTUFBTSxTQUFTLENBQUMsYUFBYSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDMUo7YUFBTTtZQUNMLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLENBQUMsV0FBVyx3Q0FBd0MsU0FBUyxDQUFDLFlBQVksTUFBTSxTQUFTLENBQUMsYUFBYSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDdko7SUFDSCxDQUFDOztvRkFoS1Usa0JBQWtCO3FFQUFsQixrQkFBa0I7UUNqQi9CLGtDQUFZO1FBQ1YsZ0NBQ2E7UUFDZixpQkFBYTtRQUViLG1DQUFhLGtCQUFBLGlCQUFBLGVBQUEsaUJBQUEsaUJBQUEsa0JBQUE7UUFPaUMsb0lBQTBCO1FBQzFELHVFQW9GTTtRQUNOLHNFQVlNO1FBQ1IsaUJBQVcsRUFBQSxFQUFBLEVBQUEsRUFBQSxFQUFBLEVBQUE7O1FBeEdiLGVBQTJCO1FBQTNCLDZDQUEyQjtRQU1qQixlQUFtQztRQUFuQyx3REFBbUM7UUFxRm5DLGVBQWtDO1FBQWxDLHVEQUFrQzs7dUZEakZ6QyxrQkFBa0I7Y0FMOUIsU0FBUzsyQkFDRSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE5hdkNvbnRyb2xsZXIsIFBsYXRmb3JtIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgQXBwVmFsaWRhdG9ycyB9IGZyb20gJy4uLy4uLy4uL3ZhbGlkYXRpb25zL0FwcFZhbGlkYXRvcnMnO1xuaW1wb3J0IHsgQXBwUmVnZXggfSBmcm9tICcuLi8uLi8uLi92YWxpZGF0aW9ucy9BcHBSZWdleCc7XG5pbXBvcnQgeyBCYXNlUGFnZSB9IGZyb20gJy4uLy4uL0Jhc2VQYWdlJztcbmltcG9ydCB7IFVzZXJNb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9Vc2VyTW9kZWwnO1xuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbG9naW4vbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWwvdXRpbC5zZXJ2aWNlJztcbmltcG9ydCB7IExpYkNvbnN0YW50cyB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9MaWJDb25zdGFudHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY2hhbmdlLXBhc3N3b3JkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYW5nZS1wYXNzd29yZC5wYWdlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jaGFuZ2UtcGFzc3dvcmQucGFnZS5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENoYW5nZVBhc3N3b3JkUGFnZSBleHRlbmRzIEJhc2VQYWdlIGltcGxlbWVudHMgT25Jbml0IHtcblxuICBwdWJsaWMgY2Fwc09uID0gZmFsc2U7XG5cbiAgY29tbW9uVmFsaWRhdG9ycyA6IFZhbGlkYXRvckZuW10gPSBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFwcFZhbGlkYXRvcnMubWF0Y2goQXBwUmVnZXguVVBQRVJfQ0FTRV9SRUdFWCwge2hhc0NhcGl0YWxDYXNlIDogdHJ1ZX0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBcHBWYWxpZGF0b3JzLm1hdGNoKEFwcFJlZ2V4LkxPV0VSX0NBU0VfUkVHRVgsIHtoYXNTbWFsbENhc2UgOiB0cnVlfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFwcFZhbGlkYXRvcnMubWF0Y2goQXBwUmVnZXguTlVNQkVSX1JFR0VYLCB7aGFzTnVtYmVyIDogdHJ1ZX0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdO1xuXG4gIGNzclBhc3N3b3JkVmFsaWRhdG9ycyA6IFZhbGlkYXRvckZuW10gPSBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXBwVmFsaWRhdG9ycy5tYXRjaChBcHBSZWdleC5BR0VOQ1lfU1lNQk9MX1JFR0VYLCB7aGFzQ3NyU3BlY2lhbENoYXJhY3RlcnMgOiB0cnVlfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXTtcblxuICBjc3JDb25maXJtUGFzc3dvcmRWYWxpZGF0b3JzIDogVmFsaWRhdG9yRm5bXSA9IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXBwVmFsaWRhdG9ycy5tYXRjaChBcHBSZWdleC5BR0VOQ1lfU1lNQk9MX1JFR0VYLCB7aGFzQ3NyU3BlY2lhbENoYXJhY3RlcnMgOiB0cnVlfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFwcFZhbGlkYXRvcnMuZXF1YWwoJ3Bhc3N3b3JkJywge25vdE1hdGNoIDogdHJ1ZX0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBjbGFpbWFudFBhc3N3b3JkVmFsaWRhdG9ycyA6IFZhbGlkYXRvckZuW10gPSBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFwcFZhbGlkYXRvcnMubWF0Y2godGhpcy5pc1NhbWVTeW1ib2xQb2xpY3lGb3JDbGFpbWFudEFuZEFnZW5jeT9BcHBSZWdleC5BR0VOQ1lfU1lNQk9MX1JFR0VYOkFwcFJlZ2V4LkNMQUlNQU5UX1NZTUJPTF9SRUdFWCwge2hhc0NsYWltYW50U3BlY2lhbENoYXJhY3RlcnMgOiB0cnVlfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF07XG5cbiAgY2xhaW1hbnRDb25maXJtUGFzc3dvcmRWYWxpZGF0b3JzIDogVmFsaWRhdG9yRm5bXSA9IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBcHBWYWxpZGF0b3JzLm1hdGNoKHRoaXMuaXNTYW1lU3ltYm9sUG9saWN5Rm9yQ2xhaW1hbnRBbmRBZ2VuY3k/QXBwUmVnZXguQUdFTkNZX1NZTUJPTF9SRUdFWDpBcHBSZWdleC5DTEFJTUFOVF9TWU1CT0xfUkVHRVgsIHtoYXNDbGFpbWFudFNwZWNpYWxDaGFyYWN0ZXJzIDogdHJ1ZX0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFwcFZhbGlkYXRvcnMuZXF1YWwoJ3Bhc3N3b3JkJywge25vdE1hdGNoIDogdHJ1ZX0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF07XG5cbiAgcHVibGljIGNoYW5nZVB3ZEZvcm0gOiBVbnR5cGVkRm9ybUdyb3VwO1xuXG4gIHB1YmxpYyBoaWRlUGFzc3dvcmQgPSB0cnVlO1xuXG4gIHB1YmxpYyBoaWRlQ29uZmlybVBhc3N3b3JkID0gdHJ1ZTtcblxuICBwdWJsaWMgaGlkZU9sZFBhc3N3b3JkID0gdHJ1ZTtcblxuICBwdWJsaWMgdXNlciA6IFVzZXJNb2RlbDtcblxuICBwdWJsaWMgc2hvd0NoYW5nZVBhc3N3b3JkID0gJ2ZhbHNlJztcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZmIgOiBVbnR5cGVkRm9ybUJ1aWxkZXIsIHB1YmxpYyBsb2dpblNlcnZpY2UgOiBMb2dpblNlcnZpY2UsIFxuICAgICAgICAgICAgICBwdWJsaWMgdXRpbCA6IFV0aWxTZXJ2aWNlLCBwcml2YXRlIG5hdjogTmF2Q29udHJvbGxlciwgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgICAgICAgIHByaXZhdGUgcGxhdGZvcm06IFBsYXRmb3JtKSB7XG4gICAgICAgICAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgICAgICAgIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXRpYWxpemVDaGFuZ2VQd2RGb3JtKCk7XG4gICAgdGhpcy51c2VyID0gdGhpcy5sb2dpblNlcnZpY2UuZ2V0VXNlcigpO1xuICAgIHRoaXMuc2hvd0NoYW5nZVBhc3N3b3JkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtTWFwLmdldCgnY2hhbmdlUHdkJykgPyB0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1NYXAuZ2V0KCdjaGFuZ2VQd2QnKSA6ICdmYWxzZSc7XG4gIH1cblxuICBpbml0aWFsaXplQ2hhbmdlUHdkRm9ybSgpe1xuICAgIHRoaXMuY2hhbmdlUHdkRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgJ29sZFBhc3N3b3JkJyA6IFtudWxsICwgW11dLFxuICAgICAgJ3Bhc3N3b3JkJzogW251bGwsIFtdXSxcbiAgICAgICdjb25maXJtUGFzc3dvcmQnOiBbbnVsbCwgW11dXG4gICAgfSk7XG5cbiAgICB0aGlzLnBhc3N3b3JkLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodiA9PiB7XG4gICAgICBpZih0aGlzLmNvbmZpcm1QYXNzd29yZC52YWx1ZSl7XG4gICAgICAgIHRoaXMuY29uZmlybVBhc3N3b3JkLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICAgIH1cbiAgICAgIGlmKHRoaXMub2xkUGFzc3dvcmQudmFsdWUpe1xuICAgICAgICB0aGlzLm9sZFBhc3N3b3JkLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBcbiAgICB0aGlzLnNldFBhc3N3b3JkVmFsaWRhdG9ycygpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRQYXNzd29yZFZhbGlkYXRvcnMoKSB7XG4gICAgbGV0IHZhbGlkYXRvcnMxOiBWYWxpZGF0b3JGbltdID0gW107XG4gICAgbGV0IHZhbGlkYXRvcnMyOiBWYWxpZGF0b3JGbltdID0gW107XG4gICAgbGV0IHZhbGlkYXRvcnMzOiBWYWxpZGF0b3JGbltdID0gW1ZhbGlkYXRvcnMucmVxdWlyZWQsIEFwcFZhbGlkYXRvcnMubm90RXF1YWwoJ3Bhc3N3b3JkJywge21hdGNoIDogdHJ1ZX0pXTtcblxuICAgIHRoaXMuY29tbW9uVmFsaWRhdG9ycy5mb3JFYWNoKHYgPT4gdmFsaWRhdG9yczEucHVzaCh2KSk7XG4gICAgdGhpcy5jb21tb25WYWxpZGF0b3JzLmZvckVhY2godiA9PiB2YWxpZGF0b3JzMi5wdXNoKHYpKTtcblxuICAgIGlmKHRoaXMuaXNOZXdQYXNzd29yZFBvbGljeUVuYWJsZWQpe1xuICAgICAgdGhpcy5uZXdQYXNzd29yZFBvbGljeVZhbGlkYXRvcnMuZm9yRWFjaCh2ID0+IHZhbGlkYXRvcnMxLnB1c2godikpO1xuICAgICAgdGhpcy5uZXdQYXNzd29yZFBvbGljeVZhbGlkYXRvcnMuZm9yRWFjaCh2ID0+IHZhbGlkYXRvcnMyLnB1c2godikpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9sZFBhc3N3b3JkUG9saWN5VmFsaWRhdG9ycy5mb3JFYWNoKHYgPT4gdmFsaWRhdG9yczEucHVzaCh2KSk7XG4gICAgICB0aGlzLm9sZFBhc3N3b3JkUG9saWN5VmFsaWRhdG9ycy5mb3JFYWNoKHYgPT4gdmFsaWRhdG9yczIucHVzaCh2KSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubG9naW5TZXJ2aWNlLmlzQ3NyKCkpIHtcbiAgICAgIHRoaXMuY3NyUGFzc3dvcmRWYWxpZGF0b3JzLmZvckVhY2godiA9PiB2YWxpZGF0b3JzMS5wdXNoKHYpKTtcbiAgICAgIHRoaXMuY3NyQ29uZmlybVBhc3N3b3JkVmFsaWRhdG9ycy5mb3JFYWNoKHYgPT4gdmFsaWRhdG9yczIucHVzaCh2KSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xhaW1hbnRQYXNzd29yZFZhbGlkYXRvcnMuZm9yRWFjaCh2ID0+IHZhbGlkYXRvcnMxLnB1c2godikpO1xuICAgICAgdGhpcy5jbGFpbWFudENvbmZpcm1QYXNzd29yZFZhbGlkYXRvcnMuZm9yRWFjaCh2ID0+IHZhbGlkYXRvcnMyLnB1c2godikpO1xuICAgIH1cbiAgICB0aGlzLnV0aWwuc2V0VmFsaWRhdGlvbih0aGlzLm9sZFBhc3N3b3JkLCB2YWxpZGF0b3JzMyk7XG4gICAgdGhpcy51dGlsLnNldFZhbGlkYXRpb24odGhpcy5wYXNzd29yZCwgdmFsaWRhdG9yczEpO1xuICAgIHRoaXMudXRpbC5zZXRWYWxpZGF0aW9uKHRoaXMuY29uZmlybVBhc3N3b3JkLCB2YWxpZGF0b3JzMik7XG4gIH1cblxuICBnZXQgb2xkUGFzc3dvcmQoKXtcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2VQd2RGb3JtLmdldCgnb2xkUGFzc3dvcmQnKTtcbiAgfVxuXG4gIGdldCBwYXNzd29yZCgpe1xuICAgIHJldHVybiB0aGlzLmNoYW5nZVB3ZEZvcm0uZ2V0KCdwYXNzd29yZCcpO1xuICB9XG5cbiAgZ2V0IGNvbmZpcm1QYXNzd29yZCgpe1xuICAgIHJldHVybiB0aGlzLmNoYW5nZVB3ZEZvcm0uZ2V0KCdjb25maXJtUGFzc3dvcmQnKTtcbiAgfVxuXG4gIHNhdmUoKXtcbiAgICBpZih0aGlzLmNoYW5nZVB3ZEZvcm0uaW52YWxpZCl7XG4gICAgICByZXR1cm4gO1xuICAgIH1cbiAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpXG4gICAgICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgdGhpcy5sb2dpblNlcnZpY2UudXBkYXRlUGFzc3dvcmQodGhpcy5vbGRQYXNzd29yZC52YWx1ZSwgdGhpcy5wYXNzd29yZC52YWx1ZSwgdGhpcy5jb25maXJtUGFzc3dvcmQudmFsdWUpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubG9naW5TZXJ2aWNlLmxvZ291dCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5uYXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubmF2aWdhdGVSb290KCdsb2dpbicpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXRpbC5zdWNjZXNzKCdQYXNzd29yZCBDaGFuZ2VkIFN1Y2Nlc3NmdWxseS4gUGxlYXNlIGxvZ2luIGFnYWluLicpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy51dGlsLmhpZGVMb2FkZXIoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXRpbC5oaWRlTG9hZGVyKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnV0aWwuZXJyb3JIYW5kbGVyKGVycik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgIH0pXG4gIH1cblxuICByZWRpcmVjdCgpe1xuICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxvZ2luU2VydmljZS5nZXRVc2VyKCk7XG4gICAgaWYodGhpcy5sb2dpblNlcnZpY2UuaXNDbGFpbWFudCgpKXtcbiAgICAgIGNvbnN0IGlzQ2FwYWNpdG9yID0gdGhpcy5wbGF0Zm9ybS5pcygnY2FwYWNpdG9yJyk7XG4gICAgICBpZihpc0NhcGFjaXRvcil7XG4gICAgICAgIHRoaXMubmF2Lm5hdmlnYXRlUm9vdChcIndlbGNvbWVcIik7XG4gICAgICAgIHRoaXMudXRpbC5oaWRlTG9hZGVyKCk7XG4gICAgICB9IGVsc2V7XG4gICAgICAgIGlmKExpYkNvbnN0YW50cy5sZWdhY3lNZW51ID09ICd0cnVlJyl7XG4gICAgICAgICAgdGhpcy5uYXYubmF2aWdhdGVSb290KFwid2VsY29tZVwiKTtcbiAgICAgICAgdGhpcy51dGlsLmhpZGVMb2FkZXIoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZigoTGliQ29uc3RhbnRzLnNzb0Nvb2tpZU5hbWUgKyBcIlwiKS5pbmNsdWRlcygnVUFUJykgfHwgKExpYkNvbnN0YW50cy5zc29Db29raWVOYW1lICsgXCJcIikuaW5jbHVkZXMoJ1BST0QnKSApe1xuICAgICAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLm1zd29ya3NVcmx9YCwgJ19zZWxmJyk7XG4gICAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICB3aW5kb3cub3BlbihgJHtMaWJDb25zdGFudHMuYmVuZWZpdHNVcmxFeHRlcm5hbH0vZmFjZXMvdmlydHVhbC9jb250ZXh0c3dpdGNoLnhodG1sP2E9JHt1c2VyTW9kZWwuYWNjZXNzX3Rva2VufSZyPSR7dXNlck1vZGVsLnJlZnJlc2hfdG9rZW59JnY9MjI5OWAsICdfc2VsZicpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZih0aGlzLmxvZ2luU2VydmljZS5pc0VtcGxveWVyKCkgfHwgdGhpcy5sb2dpblNlcnZpY2UuaXNUcGEoKSl7XG4gICAgICB3aW5kb3cub3BlbihgJHtMaWJDb25zdGFudHMudGF4VXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTlgLCAnX3NlbGYnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsfS9mYWNlcy92aXJ0dWFsL2NvbnRleHRzd2l0Y2gueGh0bWw/YT0ke3VzZXJNb2RlbC5hY2Nlc3NfdG9rZW59JnI9JHt1c2VyTW9kZWwucmVmcmVzaF90b2tlbn0mdj0yMjk5YCwgJ19zZWxmJyk7XG4gICAgfVxuICB9XG5cbn1cbiIsIjxpb24taGVhZGVyPlxyXG4gIDxhcHAtaGVhZGVyIHRpdGxlPVwiQ2hhbmdlIFBhc3N3b3JkXCIgcGFnZUlkPVwiQ05HUFdELTAwMVwiPlxyXG4gIDwvYXBwLWhlYWRlcj5cclxuPC9pb24taGVhZGVyPlxyXG5cclxuPGlvbi1jb250ZW50PlxyXG4gIDxhcHAtY29udGVudD5cclxuICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiY2hhbmdlUHdkRm9ybVwiICNjaGFuZ2VQd2RGb3JtRGlyZWN0aXZlPVwibmdGb3JtXCI+XHJcbiAgICAgIDxpb24tZ3JpZD5cclxuICAgICAgICA8aW9uLXJvdyBjb2xvcj1cInByaW1hcnlcIiBjbGFzcz1cImlvbi1qdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XHJcbiAgICAgICAgICA8aW9uLWNvbCBjbGFzcz1cImlvbi1hbGlnbi1zZWxmLWNlbnRlclwiIHNpemUtbWQ9XCI2XCIgc2l6ZS1sZz1cIjRcIiBzaXplLXhzPVwiMTJcIiBzaXplLXNtPVwiMTJcIiBzaXplLXhsPVwiNFwiPlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgPGFwcC1jYXJkIHRpdGxlPVwiQ2hhbmdlIFBhc3N3b3JkXCIgKGNhcHNMb2NrKT1cImNhcHNPbj0kZXZlbnRcIj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd0NoYW5nZVBhc3N3b3JkID09ICdmYWxzZSdcIj5cclxuICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgIEluIG9yZGVyIHRvIDxzdHJvbmc+cHJvdGVjdCB5b3VyIGFjY291bnQ8L3N0cm9uZz4sIG1ha2Ugc3VyZSB5b3VyIHBhc3N3b3JkIGhhczpcclxuICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwicC1wbC0yIHAtbWwtMiBwLW10LTBcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxLjU7IG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IGxpc3Qtc3R5bGUtdHlwZTogc3F1YXJlO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCIhcGFzc3dvcmQuaGFzRXJyb3IoJ21pbmxlbmd0aCcpICYmIHBhc3N3b3JkLmRpcnR5ID8gJ3N1Y2Nlc3MnIDogJ2Vycm9yJ1wiICpuZ0lmPVwiIWlzTmV3UGFzc3dvcmRQb2xpY3lFbmFibGVkXCI+TWluaW11bSA4IGNoYXJhY3RlcnMuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgW25nQ2xhc3NdPVwiIXBhc3N3b3JkLmhhc0Vycm9yKCdtYXhsZW5ndGgnKSAmJiBwYXNzd29yZC5kaXJ0eSA/ICdzdWNjZXNzJyA6ICdlcnJvcidcIiAqbmdJZj1cIiFpc05ld1Bhc3N3b3JkUG9saWN5RW5hYmxlZFwiPk1heGltdW0gMTUgY2hhcmFjdGVycy48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCIhcGFzc3dvcmQuaGFzRXJyb3IoJ21pbmxlbmd0aCcpICYmIHBhc3N3b3JkLmRpcnR5ID8gJ3N1Y2Nlc3MnIDogJ2Vycm9yJ1wiICpuZ0lmPVwiaXNOZXdQYXNzd29yZFBvbGljeUVuYWJsZWRcIj5NaW5pbXVtIDE0IGNoYXJhY3RlcnMuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgW25nQ2xhc3NdPVwiIXBhc3N3b3JkLmhhc0Vycm9yKCdtYXhsZW5ndGgnKSAmJiBwYXNzd29yZC5kaXJ0eSA/ICdzdWNjZXNzJyA6ICdlcnJvcidcIiAqbmdJZj1cImlzTmV3UGFzc3dvcmRQb2xpY3lFbmFibGVkXCI+TWF4aW11bSAyMSBjaGFyYWN0ZXJzLjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cIiFwYXNzd29yZC5oYXNFcnJvcignaGFzTnVtYmVyJykgJiYgcGFzc3dvcmQuZGlydHkgID8gJ3N1Y2Nlc3MnIDogJ2Vycm9yJ1wiPkF0IGxlYXN0IDEgbnVtYmVyPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgW25nQ2xhc3NdPVwiIXBhc3N3b3JkLmhhc0Vycm9yKCdoYXNDYXBpdGFsQ2FzZScpICYmIHBhc3N3b3JkLmRpcnR5ICA/ICdzdWNjZXNzJyA6ICdlcnJvcidcIj5BdCBsZWFzdCAxIHVwcGVyY2FzZSBsZXR0ZXI8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCIhcGFzc3dvcmQuaGFzRXJyb3IoJ2hhc1NtYWxsQ2FzZScpICYmIHBhc3N3b3JkLmRpcnR5ICA/ICdzdWNjZXNzJyA6ICdlcnJvcidcIj5BdCBsZWFzdCAxIGxvd2VyY2FzZSBsZXR0ZXI8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCIhcGFzc3dvcmQuaGFzRXJyb3IoJ2hhc0NzclNwZWNpYWxDaGFyYWN0ZXJzJykgJiYgcGFzc3dvcmQuZGlydHkgID8gJ3N1Y2Nlc3MnIDogJ2Vycm9yJ1wiICpuZ0lmPVwiIWxvZ2luU2VydmljZS5pc0NsYWltYW50KClcIj5BdCBsZWFzdCAyIHNwZWNpYWwgY2hhcmFjdGVycyBmcm9tIGZvbGxvd2luZyA8c3Ryb25nPl8gQCAqICQgISAjIC48L3N0cm9uZz48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCIhcGFzc3dvcmQuaGFzRXJyb3IoJ2hhc0NsYWltYW50U3BlY2lhbENoYXJhY3RlcnMnKSAmJiBwYXNzd29yZC5kaXJ0eSAgPyAnc3VjY2VzcycgOiAnZXJyb3InXCIgKm5nSWY9XCJsb2dpblNlcnZpY2UuaXNDbGFpbWFudCgpICYmICFpc1NhbWVTeW1ib2xQb2xpY3lGb3JDbGFpbWFudEFuZEFnZW5jeVwiPkF0IGxlYXN0IDEgc3BlY2lhbCBjaGFyYWN0ZXJzIGZyb20gZm9sbG93aW5nIDxzdHJvbmc+XyBAICogJCAhICMgLjwvc3Ryb25nPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cIiFwYXNzd29yZC5oYXNFcnJvcignaGFzQ2xhaW1hbnRTcGVjaWFsQ2hhcmFjdGVycycpICYmIHBhc3N3b3JkLmRpcnR5ICA/ICdzdWNjZXNzJyA6ICdlcnJvcidcIiAqbmdJZj1cImxvZ2luU2VydmljZS5pc0NsYWltYW50KCkgJiYgaXNTYW1lU3ltYm9sUG9saWN5Rm9yQ2xhaW1hbnRBbmRBZ2VuY3lcIj5BdCBsZWFzdCAyIHNwZWNpYWwgY2hhcmFjdGVycyBmcm9tIGZvbGxvd2luZyA8c3Ryb25nPl8gQCAqICQgISAjIC48L3N0cm9uZz48L2xpPlxyXG4gICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGdyaWQ7XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC1mbG9hdC1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwLXBhc3N3b3JkIFtmb3JtQ29udHJvbF09XCJvbGRQYXNzd29yZFwiIGlucHV0SWQ9XCJvbGRQYXNzd29yZFwiIFt0b2dnbGVNYXNrXT0ndHJ1ZScgW2ZlZWRiYWNrXT0nZmFsc2UnIGFwcEF1dG9mb2N1cz48L3AtcGFzc3dvcmQ+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJmbG9hdC1pbnB1dFwiPkN1cnJlbnQgUGFzc3dvcmQ8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJvbGRQYXNzd29yZC5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIEN1cnJlbnQgUGFzc3dvcmQgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwib2xkUGFzc3dvcmQuaGFzRXJyb3IoJ21hdGNoJylcIj5cclxuICAgICAgICAgICAgICAgICAgICBDdXJyZW50IFBhc3N3b3JkIHNob3VsZCBub3QgYmUgc2FtZSBhcyBOZXcgUGFzc3dvcmQuXHJcbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGdyaWQ7XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC1mbG9hdC1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwLXBhc3N3b3JkIFtmb3JtQ29udHJvbF09XCJwYXNzd29yZFwiIGlucHV0SWQ9XCJwYXNzd29yZFwiIFt0b2dnbGVNYXNrXT0ndHJ1ZScgYXBwZW5kVG89XCJib2R5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9wLXBhc3N3b3JkPiBcclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZmxvYXQtaW5wdXRcIj5OZXcgUGFzc3dvcmQ8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJwYXNzd29yZC5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIE5ldyBQYXNzd29yZCBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJwYXNzd29yZC5oYXNFcnJvcignbm90TWF0Y2gnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIE5ldyBQYXNzd29yZCBhbmQgQ29uZmlybSBQYXNzd29yZCBkaWQgbm90IG1hdGNoLlxyXG4gICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cInBhc3N3b3JkLmhhc0Vycm9yKCdtYXRjaCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQ3VycmVudCBQYXNzd29yZCBzaG91bGQgbm90IGJlIHNhbWUgYXMgTmV3IFBhc3N3b3JkLlxyXG4gICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gIFxyXG4gICAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBncmlkO1wiPlxyXG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInAtZmxvYXQtbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cC1wYXNzd29yZCBbZm9ybUNvbnRyb2xdPVwiY29uZmlybVBhc3N3b3JkXCIgaW5wdXRJZD1cImNvbmZpcm1QYXNzd29yZFwiIFt0b2dnbGVNYXNrXT0ndHJ1ZScgYXBwZW5kVG89XCJib2R5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9wLXBhc3N3b3JkPiBcclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZmxvYXQtaW5wdXRcIj5Db25maXJtIFBhc3N3b3JkPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiY29uZmlybVBhc3N3b3JkLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQ29uZmlybSBQYXNzd29yZCBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJjb25maXJtUGFzc3dvcmQuaGFzRXJyb3IoJ21pbmxlbmd0aCcpICYmIGlzTmV3UGFzc3dvcmRQb2xpY3lFbmFibGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQ29uZmlybSBQYXNzd29yZCBzaG91bGQgaGF2ZSBtaW5pbXVtIDxzdHJvbmc+MTQgY2hhcmFjdGVyczwvc3Ryb25nPi5cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJjb25maXJtUGFzc3dvcmQuaGFzRXJyb3IoJ21heGxlbmd0aCcpICYmIGlzTmV3UGFzc3dvcmRQb2xpY3lFbmFibGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQ29uZmlybSBQYXNzd29yZCBzaG91bGQgbm90IGhhdmUgbW9yZSB0aGFuIDxzdHJvbmc+MjEgY2hhcmFjdGVyczwvc3Ryb25nPi5cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJjb25maXJtUGFzc3dvcmQuaGFzRXJyb3IoJ21pbmxlbmd0aCcpICYmICFpc05ld1Bhc3N3b3JkUG9saWN5RW5hYmxlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIENvbmZpcm0gUGFzc3dvcmQgc2hvdWxkIGhhdmUgbWluaW11bSA8c3Ryb25nPjggY2hhcmFjdGVyczwvc3Ryb25nPi5cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJjb25maXJtUGFzc3dvcmQuaGFzRXJyb3IoJ21heGxlbmd0aCcpICYmICFpc05ld1Bhc3N3b3JkUG9saWN5RW5hYmxlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIENvbmZpcm0gUGFzc3dvcmQgc2hvdWxkIG5vdCBoYXZlIG1vcmUgdGhhbiA8c3Ryb25nPjE1IGNoYXJhY3RlcnM8L3N0cm9uZz4uXHJcbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiY29uZmlybVBhc3N3b3JkLmhhc0Vycm9yKCdub3RNYXRjaCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgTmV3IFBhc3N3b3JkIGFuZCBDb25maXJtIFBhc3N3b3JkIGRpZCBub3QgbWF0Y2guXHJcbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiY29uZmlybVBhc3N3b3JkLmhhc0Vycm9yKCdtYXRjaCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQ3VycmVudCBQYXNzd29yZCBzaG91bGQgbm90IGJlIHNhbWUgYXMgQ29uZmlybSBQYXNzd29yZC5cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPGxhYmVsICpuZ0lmPVwiY2Fwc09uXCIgc3R5bGU9XCJjb2xvcjp2YXIoLS1pb24tY29sb3ItZGFuZ2VyKTtcIj48c3Ryb25nPkNhcHMgTG9jayBpcyBPbjwvc3Ryb25nPjwvbGFiZWw+XHJcbiAgXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW9uLXRleHQtY2VudGVyIGlvbi1wYWRkaW5nLXRvcFwiPlxyXG4gICAgICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgKGNsaWNrKT1cInNhdmUoKVwiIGNvbG9yPVwic3VjY2Vzc1wiIHR5cGU9XCJzdWJtaXRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInNhdmUtb3V0bGluZVwiIHNsb3Q9XCJzdGFydFwiID48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIENoYW5nZSBQYXNzd29yZFxyXG4gICAgICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd0NoYW5nZVBhc3N3b3JkID09ICd0cnVlJ1wiIGNsYXNzPVwiaW9uLXRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICBZb3VyIHBhc3N3b3JkIHdpbGwgZXhwaXJlIGluIDxzdHJvbmcgKm5nSWY9XCJ1c2VyXCI+e3t1c2VyLmRheXNUaWxsUGFzc3dvcmRFeHBpcmV9fTwvc3Ryb25nPiBkYXkocykuIENvbnNpZGVyIGNoYW5naW5nIGl0IG5vdy5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpb24tdGV4dC1jZW50ZXIgaW9uLXBhZGRpbmctdG9wXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwicm91bmRcIiAoY2xpY2spPVwic2hvd0NoYW5nZVBhc3N3b3JkID0gJ2ZhbHNlJ1wiIGNvbG9yPVwic3VjY2Vzc1wiIHR5cGU9XCJzdWJtaXRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInNodWZmbGUtb3V0bGluZVwiIHNsb3Q9XCJzdGFydFwiID48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIENoYW5nZSBOb3dcclxuICAgICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgKGNsaWNrKT1cInJlZGlyZWN0KClcIiBjb2xvcj1cInN1Y2Nlc3NcIiB0eXBlPVwic3VibWl0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJhbmFseXRpY3Mtb3V0bGluZVwiIHNsb3Q9XCJzdGFydFwiID48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIERhc2hib2FyZFxyXG4gICAgICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9hcHAtY2FyZD5cclxuICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgIDwvaW9uLWdyaWQ+XHJcbiAgICA8L2Zvcm0+XHJcbiAgPC9hcHAtY29udGVudD5cclxuPC9pb24tY29udGVudD4iXX0=