@ksremp/ngx-ksremp-app-lib 1.0.0

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 (592) hide show
  1. package/README.md +46 -0
  2. package/esm2022/ksremp-ngx-ksremp-app-lib.mjs +5 -0
  3. package/esm2022/lib/annimations/app-animations.mjs +37 -0
  4. package/esm2022/lib/components/add-employer/add-employer.component.mjs +2655 -0
  5. package/esm2022/lib/components/add-participant/add-participant.component.mjs +399 -0
  6. package/esm2022/lib/components/add-payment/add-payment.component.mjs +201 -0
  7. package/esm2022/lib/components/address/address.component.mjs +565 -0
  8. package/esm2022/lib/components/bank-details/bank-details.component.mjs +416 -0
  9. package/esm2022/lib/components/captcha/captcha.component.mjs +181 -0
  10. package/esm2022/lib/components/card/card.component.mjs +55 -0
  11. package/esm2022/lib/components/contact-us/contact-us.component.mjs +984 -0
  12. package/esm2022/lib/components/content/content.component.mjs +61 -0
  13. package/esm2022/lib/components/correspondence-download/correspondence-download.component.mjs +89 -0
  14. package/esm2022/lib/components/dashboard-card/dashboard-card.component.mjs +223 -0
  15. package/esm2022/lib/components/dependent-grid/dependent-grid.component.mjs +301 -0
  16. package/esm2022/lib/components/disclosure/disclosure.component.mjs +60 -0
  17. package/esm2022/lib/components/dropdown/dropdown.component.mjs +1974 -0
  18. package/esm2022/lib/components/dropdown/dropdown.interface.mjs +2 -0
  19. package/esm2022/lib/components/email-update/email-update.component.mjs +376 -0
  20. package/esm2022/lib/components/employer-grid/employer-grid.component.mjs +1102 -0
  21. package/esm2022/lib/components/error/error.component.mjs +86 -0
  22. package/esm2022/lib/components/fav-menu/fav-menu.component.mjs +163 -0
  23. package/esm2022/lib/components/file-download/file-download.component.mjs +104 -0
  24. package/esm2022/lib/components/file-uploader/file-uploader.component.mjs +315 -0
  25. package/esm2022/lib/components/footer/footer.component.mjs +350 -0
  26. package/esm2022/lib/components/header/header.component.mjs +535 -0
  27. package/esm2022/lib/components/help/help.component.mjs +49 -0
  28. package/esm2022/lib/components/idle-detector/idle-detector.component.mjs +76 -0
  29. package/esm2022/lib/components/info/info.component.mjs +187 -0
  30. package/esm2022/lib/components/job-search-result-page/job-search-result-page.component.mjs +212 -0
  31. package/esm2022/lib/components/job-title/job-title.component.mjs +162 -0
  32. package/esm2022/lib/components/legal-disclaimar/legal-disclaimar.component.mjs +617 -0
  33. package/esm2022/lib/components/lexis-nexis/lexis-nexis.component.mjs +402 -0
  34. package/esm2022/lib/components/link/link.component.mjs +131 -0
  35. package/esm2022/lib/components/maintenance-detector/maintenance-detector.component.mjs +43 -0
  36. package/esm2022/lib/components/mask/mask.component.mjs +48 -0
  37. package/esm2022/lib/components/menu/menu.component.mjs +452 -0
  38. package/esm2022/lib/components/mfa/mfa.component.mjs +574 -0
  39. package/esm2022/lib/components/mfa-popup/mfa-popup.component.mjs +57 -0
  40. package/esm2022/lib/components/mfa2/mfa2.component.mjs +285 -0
  41. package/esm2022/lib/components/money-expect/money-expect.component.mjs +98 -0
  42. package/esm2022/lib/components/msg/msg.component.mjs +48 -0
  43. package/esm2022/lib/components/news/news.component.mjs +90 -0
  44. package/esm2022/lib/components/overlay-info/overlay-info.component.mjs +213 -0
  45. package/esm2022/lib/components/page/page.component.mjs +136 -0
  46. package/esm2022/lib/components/profile/profile.component.mjs +505 -0
  47. package/esm2022/lib/components/profile-redirect/profile-redirect.component.mjs +70 -0
  48. package/esm2022/lib/components/questionnaire/AppValidators.mjs +541 -0
  49. package/esm2022/lib/components/questionnaire/FbConstants.mjs +8 -0
  50. package/esm2022/lib/components/questionnaire/SelectItem.mjs +2 -0
  51. package/esm2022/lib/components/questionnaire/account-success/account-success.page.mjs +310 -0
  52. package/esm2022/lib/components/questionnaire/common-success/common-success.page.mjs +528 -0
  53. package/esm2022/lib/components/questionnaire/dynamic-form-panel.component.mjs +1115 -0
  54. package/esm2022/lib/components/questionnaire/dynamic-form-question.component.mjs +2521 -0
  55. package/esm2022/lib/components/questionnaire/dynamic-form.component.mjs +1788 -0
  56. package/esm2022/lib/components/questionnaire/form-builder/form-builder.page.mjs +256 -0
  57. package/esm2022/lib/components/questionnaire/input-focus.directive.mjs +44 -0
  58. package/esm2022/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.mjs +255 -0
  59. package/esm2022/lib/components/questionnaire/question-base.mjs +3 -0
  60. package/esm2022/lib/components/questionnaire/question-control.service.mjs +408 -0
  61. package/esm2022/lib/components/questionnaire/question.service.mjs +33 -0
  62. package/esm2022/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.mjs +282 -0
  63. package/esm2022/lib/components/read-more/read-more.component.mjs +72 -0
  64. package/esm2022/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.mjs +690 -0
  65. package/esm2022/lib/components/search-employer/search-employer.component.mjs +132 -0
  66. package/esm2022/lib/components/security-question/security-question.component.mjs +199 -0
  67. package/esm2022/lib/components/select/select.component.mjs +159 -0
  68. package/esm2022/lib/components/sign-ssn/sign-ssn.component.mjs +141 -0
  69. package/esm2022/lib/components/ssn/ssn.component.mjs +44 -0
  70. package/esm2022/lib/components/ssn-reverify/ssn-reverify.component.mjs +171 -0
  71. package/esm2022/lib/components/test/test.component.mjs +19 -0
  72. package/esm2022/lib/components/user-login/user-login.component.mjs +619 -0
  73. package/esm2022/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +772 -0
  74. package/esm2022/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.mjs +356 -0
  75. package/esm2022/lib/directives/auto-focus/auto-focus.directive.mjs +31 -0
  76. package/esm2022/lib/directives/caps-lock.directive.mjs +38 -0
  77. package/esm2022/lib/directives/required-roles/required-roles.directive.mjs +30 -0
  78. package/esm2022/lib/enums/EmailStatusEnum.mjs +9 -0
  79. package/esm2022/lib/guards/auth.guard.mjs +138 -0
  80. package/esm2022/lib/guards/no-login/no-login.guard.mjs +21 -0
  81. package/esm2022/lib/interceptors/error-interceptor/http-error-interceptor.mjs +107 -0
  82. package/esm2022/lib/interceptors/header-interceptor/http-header.interceptor.mjs +99 -0
  83. package/esm2022/lib/models/AddressComponentModel.mjs +3 -0
  84. package/esm2022/lib/models/BankDetailsComponentModel.mjs +3 -0
  85. package/esm2022/lib/models/BankDetailsModel.mjs +3 -0
  86. package/esm2022/lib/models/CinRequalificationCriteriaModel.mjs +3 -0
  87. package/esm2022/lib/models/EmployerDetailSearchResult.mjs +6 -0
  88. package/esm2022/lib/models/ErrorModel.mjs +6 -0
  89. package/esm2022/lib/models/FileModel.mjs +2 -0
  90. package/esm2022/lib/models/LexisNexisAccountCreationModel.mjs +2 -0
  91. package/esm2022/lib/models/LexisNexisAuthSelectionRequestModel.mjs +2 -0
  92. package/esm2022/lib/models/LexisNexisAuthSelectionResponseModel.mjs +2 -0
  93. package/esm2022/lib/models/LexisNexisEnabledResponseModel.mjs +2 -0
  94. package/esm2022/lib/models/LexisNexisResponseModel.mjs +3 -0
  95. package/esm2022/lib/models/LibConstants.mjs +132 -0
  96. package/esm2022/lib/models/NewsAndAnnouncementModel.mjs +3 -0
  97. package/esm2022/lib/models/NotificationModel.mjs +6 -0
  98. package/esm2022/lib/models/OtpAuthModel.mjs +3 -0
  99. package/esm2022/lib/models/PartialEmploymentModel.mjs +3 -0
  100. package/esm2022/lib/models/PaymentComponentModel.mjs +2 -0
  101. package/esm2022/lib/models/RequalifyLiftPageModel.mjs +11 -0
  102. package/esm2022/lib/models/SecurityQuestionModel.mjs +3 -0
  103. package/esm2022/lib/models/SsaVerificationModel.mjs +3 -0
  104. package/esm2022/lib/models/TrendModel.mjs +3 -0
  105. package/esm2022/lib/models/UserDetailsModel.mjs +3 -0
  106. package/esm2022/lib/models/UserModel.mjs +6 -0
  107. package/esm2022/lib/models/case/CaseAttachmentModel.mjs +3 -0
  108. package/esm2022/lib/models/claimant/ClaimantModel.mjs +3 -0
  109. package/esm2022/lib/models/claimant/JobResultsData.mjs +3 -0
  110. package/esm2022/lib/models/claimant/MatchingJobs.mjs +3 -0
  111. package/esm2022/lib/models/claimant/ResetPasswordModel.mjs +3 -0
  112. package/esm2022/lib/models/cmp/CaseCoreModel.mjs +3 -0
  113. package/esm2022/lib/models/cmp/ComplaintCategoryModel.mjs +3 -0
  114. package/esm2022/lib/models/cmp/ComplaintCategoryOutputModel.mjs +5 -0
  115. package/esm2022/lib/models/cmp/ContactUsModel.mjs +3 -0
  116. package/esm2022/lib/models/cmp/EmailTemplateModel.mjs +3 -0
  117. package/esm2022/lib/models/cmp/contactUsInqueryModel.mjs +7 -0
  118. package/esm2022/lib/models/cmp/messageRourceModel.mjs +3 -0
  119. package/esm2022/lib/models/dashboard-model.mjs +3 -0
  120. package/esm2022/lib/models/dependent.model.mjs +8 -0
  121. package/esm2022/lib/models/questionnaire/AutocoderModel.mjs +3 -0
  122. package/esm2022/lib/models/questionnaire/ClaimAppEmpRequestModel.mjs +3 -0
  123. package/esm2022/lib/models/questionnaire/ClaimAppEmpResponseModel.mjs +8 -0
  124. package/esm2022/lib/models/questionnaire/ClaimAppEmployerDetailsModel.mjs +6 -0
  125. package/esm2022/lib/models/questionnaire/ClaimOnlyEmployerDataModel.mjs +3 -0
  126. package/esm2022/lib/models/questionnaire/ComboModel.mjs +1010 -0
  127. package/esm2022/lib/models/questionnaire/ElementsModel.mjs +8 -0
  128. package/esm2022/lib/models/questionnaire/EmployerDetailSearchResult.mjs +3 -0
  129. package/esm2022/lib/models/questionnaire/EmployerWagesModel.mjs +3 -0
  130. package/esm2022/lib/models/questionnaire/FBConfigModel.mjs +6 -0
  131. package/esm2022/lib/models/questionnaire/KeyValueModel.mjs +3 -0
  132. package/esm2022/lib/models/questionnaire/LegalDiscaimarModel.mjs +3 -0
  133. package/esm2022/lib/models/questionnaire/LoaderModel.mjs +3 -0
  134. package/esm2022/lib/models/questionnaire/PollingStatusModel.mjs +3 -0
  135. package/esm2022/lib/models/questionnaire/QtrYearEmployerWageModel.mjs +3 -0
  136. package/esm2022/lib/models/questionnaire/QuestionnaireQueryModel.mjs +8 -0
  137. package/esm2022/lib/models/questionnaire/QuestionnaireReturnModel.mjs +11 -0
  138. package/esm2022/lib/models/questionnaire/QuestionnaireSaveModel.mjs +3 -0
  139. package/esm2022/lib/models/questionnaire/RequalifyLiftIssuesModel.mjs +3 -0
  140. package/esm2022/lib/models/questionnaire/ServiceActionResponseModel.mjs +3 -0
  141. package/esm2022/lib/models/questionnaire/StatusModel.mjs +6 -0
  142. package/esm2022/lib/models/questionnaire/SuccessPageElement.mjs +3 -0
  143. package/esm2022/lib/models/questionnaire/UI512AResponseModel.mjs +3 -0
  144. package/esm2022/lib/models/questionnaire/ValidationModel.mjs +3 -0
  145. package/esm2022/lib/ngx-reusa-app-lib.component.mjs +23 -0
  146. package/esm2022/lib/ngx-reusa-app-lib.module.mjs +410 -0
  147. package/esm2022/lib/ngx-reusa-app-lib.service.mjs +14 -0
  148. package/esm2022/lib/pages/BasePage.mjs +98 -0
  149. package/esm2022/lib/pages/common/accessibility-policy/accessibility-policy.page.mjs +77 -0
  150. package/esm2022/lib/pages/common/change-password/change-password.page.mjs +471 -0
  151. package/esm2022/lib/pages/common/landing/landing.component.mjs +209 -0
  152. package/esm2022/lib/pages/common/landing2/landing2.component.mjs +244 -0
  153. package/esm2022/lib/pages/common/login/login.component.mjs +533 -0
  154. package/esm2022/lib/pages/common/not-found/not-found.page.mjs +24 -0
  155. package/esm2022/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.mjs +306 -0
  156. package/esm2022/lib/pages/common/security-policy/security-policy.page.mjs +61 -0
  157. package/esm2022/lib/pages/common/unauthorized/unauthorized.page.mjs +24 -0
  158. package/esm2022/lib/pages/popovers/language/language.page.mjs +62 -0
  159. package/esm2022/lib/pages/popovers/my-notifications/my-notifications.page.mjs +204 -0
  160. package/esm2022/lib/pages/popovers/my-profile/my-profile.page.mjs +129 -0
  161. package/esm2022/lib/pages/popovers/user-search/user-search.component.mjs +251 -0
  162. package/esm2022/lib/pipes/filter.pipe.mjs +30 -0
  163. package/esm2022/lib/pipes/mask/mask.email.pipe.mjs +23 -0
  164. package/esm2022/lib/pipes/proper-case/proper-case.pipe.mjs +27 -0
  165. package/esm2022/lib/pipes/translate/dynamic-translate.pipe.mjs +44 -0
  166. package/esm2022/lib/pipes/trust-html/trust-html.pipe.mjs +20 -0
  167. package/esm2022/lib/services/base-service.mjs +50 -0
  168. package/esm2022/lib/services/captcha/captcha.service.mjs +46 -0
  169. package/esm2022/lib/services/case-service/case.service.mjs +47 -0
  170. package/esm2022/lib/services/chatbot/chatbot.service.mjs +258 -0
  171. package/esm2022/lib/services/chatbot/script.const.mjs +42 -0
  172. package/esm2022/lib/services/claimant/claimant.service.mjs +31 -0
  173. package/esm2022/lib/services/claimant-context/claimant-context.service.mjs +48 -0
  174. package/esm2022/lib/services/claimant-service/claimant-usps-redirect.service.mjs +36 -0
  175. package/esm2022/lib/services/claimant-service/claimant.service.mjs +62 -0
  176. package/esm2022/lib/services/claims/claims.service.mjs +102 -0
  177. package/esm2022/lib/services/cmp-service/cmp.service.mjs +84 -0
  178. package/esm2022/lib/services/dms-service/dms.service.mjs +60 -0
  179. package/esm2022/lib/services/fpjs/fingerprint.service.mjs +70 -0
  180. package/esm2022/lib/services/google-analytics/google-analytics.service.mjs +29 -0
  181. package/esm2022/lib/services/help/help.service.mjs +63 -0
  182. package/esm2022/lib/services/idle/idle.service.mjs +159 -0
  183. package/esm2022/lib/services/lexis-nexis/lexis.nexis.service.mjs +60 -0
  184. package/esm2022/lib/services/logger/logger.service.mjs +67 -0
  185. package/esm2022/lib/services/login/login.service.mjs +343 -0
  186. package/esm2022/lib/services/maintenance/maintenance.service.mjs +21 -0
  187. package/esm2022/lib/services/notification/notification.service.mjs +113 -0
  188. package/esm2022/lib/services/ovp/ovp.service.mjs +43 -0
  189. package/esm2022/lib/services/questionnaire/questionnaire.service.mjs +69 -0
  190. package/esm2022/lib/services/questionnaire/validation.service.mjs +59 -0
  191. package/esm2022/lib/services/security-service/security.service.mjs +42 -0
  192. package/esm2022/lib/services/tour/tour.service.mjs +60 -0
  193. package/esm2022/lib/services/util/util.service.mjs +450 -0
  194. package/esm2022/lib/services/weekly-cert/weekly-cert-v2.service.mjs +42 -0
  195. package/esm2022/lib/validations/AppRegex.mjs +51 -0
  196. package/esm2022/lib/validations/AppValidators.mjs +253 -0
  197. package/esm2022/public-api.mjs +138 -0
  198. package/fesm2022/ksremp-ngx-ksremp-app-lib.mjs +33786 -0
  199. package/fesm2022/ksremp-ngx-ksremp-app-lib.mjs.map +1 -0
  200. package/index.d.ts +6 -0
  201. package/ksremp-ngx-ksremp-app-lib.d.ts.map +1 -0
  202. package/lib/annimations/app-animations.d.ts +4 -0
  203. package/lib/annimations/app-animations.d.ts.map +1 -0
  204. package/lib/components/add-employer/add-employer.component.d.ts +234 -0
  205. package/lib/components/add-employer/add-employer.component.d.ts.map +1 -0
  206. package/lib/components/add-participant/add-participant.component.d.ts +49 -0
  207. package/lib/components/add-participant/add-participant.component.d.ts.map +1 -0
  208. package/lib/components/add-payment/add-payment.component.d.ts +33 -0
  209. package/lib/components/add-payment/add-payment.component.d.ts.map +1 -0
  210. package/lib/components/address/address.component.d.ts +81 -0
  211. package/lib/components/address/address.component.d.ts.map +1 -0
  212. package/lib/components/bank-details/bank-details.component.d.ts +62 -0
  213. package/lib/components/bank-details/bank-details.component.d.ts.map +1 -0
  214. package/lib/components/captcha/captcha.component.d.ts +45 -0
  215. package/lib/components/captcha/captcha.component.d.ts.map +1 -0
  216. package/lib/components/card/card.component.d.ts +12 -0
  217. package/lib/components/card/card.component.d.ts.map +1 -0
  218. package/lib/components/contact-us/contact-us.component.d.ts +109 -0
  219. package/lib/components/contact-us/contact-us.component.d.ts.map +1 -0
  220. package/lib/components/content/content.component.d.ts +14 -0
  221. package/lib/components/content/content.component.d.ts.map +1 -0
  222. package/lib/components/correspondence-download/correspondence-download.component.d.ts +22 -0
  223. package/lib/components/correspondence-download/correspondence-download.component.d.ts.map +1 -0
  224. package/lib/components/dashboard-card/dashboard-card.component.d.ts +26 -0
  225. package/lib/components/dashboard-card/dashboard-card.component.d.ts.map +1 -0
  226. package/lib/components/dependent-grid/dependent-grid.component.d.ts +36 -0
  227. package/lib/components/dependent-grid/dependent-grid.component.d.ts.map +1 -0
  228. package/lib/components/disclosure/disclosure.component.d.ts +13 -0
  229. package/lib/components/disclosure/disclosure.component.d.ts.map +1 -0
  230. package/lib/components/dropdown/dropdown.component.d.ts +582 -0
  231. package/lib/components/dropdown/dropdown.component.d.ts.map +1 -0
  232. package/lib/components/dropdown/dropdown.interface.d.ts +155 -0
  233. package/lib/components/dropdown/dropdown.interface.d.ts.map +1 -0
  234. package/lib/components/email-update/email-update.component.d.ts +43 -0
  235. package/lib/components/email-update/email-update.component.d.ts.map +1 -0
  236. package/lib/components/employer-grid/employer-grid.component.d.ts +90 -0
  237. package/lib/components/employer-grid/employer-grid.component.d.ts.map +1 -0
  238. package/lib/components/error/error.component.d.ts +18 -0
  239. package/lib/components/error/error.component.d.ts.map +1 -0
  240. package/lib/components/fav-menu/fav-menu.component.d.ts +22 -0
  241. package/lib/components/fav-menu/fav-menu.component.d.ts.map +1 -0
  242. package/lib/components/file-download/file-download.component.d.ts +23 -0
  243. package/lib/components/file-download/file-download.component.d.ts.map +1 -0
  244. package/lib/components/file-uploader/file-uploader.component.d.ts +48 -0
  245. package/lib/components/file-uploader/file-uploader.component.d.ts.map +1 -0
  246. package/lib/components/footer/footer.component.d.ts +37 -0
  247. package/lib/components/footer/footer.component.d.ts.map +1 -0
  248. package/lib/components/header/header.component.d.ts +64 -0
  249. package/lib/components/header/header.component.d.ts.map +1 -0
  250. package/lib/components/help/help.component.d.ts +11 -0
  251. package/lib/components/help/help.component.d.ts.map +1 -0
  252. package/lib/components/idle-detector/idle-detector.component.d.ts +16 -0
  253. package/lib/components/idle-detector/idle-detector.component.d.ts.map +1 -0
  254. package/lib/components/info/info.component.d.ts +23 -0
  255. package/lib/components/info/info.component.d.ts.map +1 -0
  256. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts +24 -0
  257. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts.map +1 -0
  258. package/lib/components/job-title/job-title.component.d.ts +38 -0
  259. package/lib/components/job-title/job-title.component.d.ts.map +1 -0
  260. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts +39 -0
  261. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts.map +1 -0
  262. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts +59 -0
  263. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts.map +1 -0
  264. package/lib/components/link/link.component.d.ts +35 -0
  265. package/lib/components/link/link.component.d.ts.map +1 -0
  266. package/lib/components/maintenance-detector/maintenance-detector.component.d.ts +16 -0
  267. package/lib/components/maintenance-detector/maintenance-detector.component.d.ts.map +1 -0
  268. package/lib/components/mask/mask.component.d.ts +12 -0
  269. package/lib/components/mask/mask.component.d.ts.map +1 -0
  270. package/lib/components/menu/menu.component.d.ts +54 -0
  271. package/lib/components/menu/menu.component.d.ts.map +1 -0
  272. package/lib/components/mfa/mfa.component.d.ts +72 -0
  273. package/lib/components/mfa/mfa.component.d.ts.map +1 -0
  274. package/lib/components/mfa-popup/mfa-popup.component.d.ts +19 -0
  275. package/lib/components/mfa-popup/mfa-popup.component.d.ts.map +1 -0
  276. package/lib/components/mfa2/mfa2.component.d.ts +48 -0
  277. package/lib/components/mfa2/mfa2.component.d.ts.map +1 -0
  278. package/lib/components/money-expect/money-expect.component.d.ts +19 -0
  279. package/lib/components/money-expect/money-expect.component.d.ts.map +1 -0
  280. package/lib/components/msg/msg.component.d.ts +11 -0
  281. package/lib/components/msg/msg.component.d.ts.map +1 -0
  282. package/lib/components/news/news.component.d.ts +15 -0
  283. package/lib/components/news/news.component.d.ts.map +1 -0
  284. package/lib/components/overlay-info/overlay-info.component.d.ts +35 -0
  285. package/lib/components/overlay-info/overlay-info.component.d.ts.map +1 -0
  286. package/lib/components/page/page.component.d.ts +24 -0
  287. package/lib/components/page/page.component.d.ts.map +1 -0
  288. package/lib/components/profile/profile.component.d.ts +74 -0
  289. package/lib/components/profile/profile.component.d.ts.map +1 -0
  290. package/lib/components/profile-redirect/profile-redirect.component.d.ts +14 -0
  291. package/lib/components/profile-redirect/profile-redirect.component.d.ts.map +1 -0
  292. package/lib/components/questionnaire/AppValidators.d.ts +16 -0
  293. package/lib/components/questionnaire/AppValidators.d.ts.map +1 -0
  294. package/lib/components/questionnaire/FbConstants.d.ts +8 -0
  295. package/lib/components/questionnaire/FbConstants.d.ts.map +1 -0
  296. package/lib/components/questionnaire/SelectItem.d.ts +5 -0
  297. package/lib/components/questionnaire/SelectItem.d.ts.map +1 -0
  298. package/lib/components/questionnaire/account-success/account-success.page.d.ts +61 -0
  299. package/lib/components/questionnaire/account-success/account-success.page.d.ts.map +1 -0
  300. package/lib/components/questionnaire/common-success/common-success.page.d.ts +77 -0
  301. package/lib/components/questionnaire/common-success/common-success.page.d.ts.map +1 -0
  302. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts +47 -0
  303. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts.map +1 -0
  304. package/lib/components/questionnaire/dynamic-form-question.component.d.ts +128 -0
  305. package/lib/components/questionnaire/dynamic-form-question.component.d.ts.map +1 -0
  306. package/lib/components/questionnaire/dynamic-form.component.d.ts +161 -0
  307. package/lib/components/questionnaire/dynamic-form.component.d.ts.map +1 -0
  308. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts +74 -0
  309. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts.map +1 -0
  310. package/lib/components/questionnaire/input-focus.directive.d.ts +12 -0
  311. package/lib/components/questionnaire/input-focus.directive.d.ts.map +1 -0
  312. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts +39 -0
  313. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts.map +1 -0
  314. package/lib/components/questionnaire/question-base.d.ts +17 -0
  315. package/lib/components/questionnaire/question-base.d.ts.map +1 -0
  316. package/lib/components/questionnaire/question-control.service.d.ts +21 -0
  317. package/lib/components/questionnaire/question-control.service.d.ts.map +1 -0
  318. package/lib/components/questionnaire/question.service.d.ts +19 -0
  319. package/lib/components/questionnaire/question.service.d.ts.map +1 -0
  320. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts +83 -0
  321. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts.map +1 -0
  322. package/lib/components/read-more/read-more.component.d.ts +15 -0
  323. package/lib/components/read-more/read-more.component.d.ts.map +1 -0
  324. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts +68 -0
  325. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts.map +1 -0
  326. package/lib/components/search-employer/search-employer.component.d.ts +40 -0
  327. package/lib/components/search-employer/search-employer.component.d.ts.map +1 -0
  328. package/lib/components/security-question/security-question.component.d.ts +37 -0
  329. package/lib/components/security-question/security-question.component.d.ts.map +1 -0
  330. package/lib/components/select/select.component.d.ts +56 -0
  331. package/lib/components/select/select.component.d.ts.map +1 -0
  332. package/lib/components/sign-ssn/sign-ssn.component.d.ts +34 -0
  333. package/lib/components/sign-ssn/sign-ssn.component.d.ts.map +1 -0
  334. package/lib/components/ssn/ssn.component.d.ts +12 -0
  335. package/lib/components/ssn/ssn.component.d.ts.map +1 -0
  336. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts +27 -0
  337. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts.map +1 -0
  338. package/lib/components/test/test.component.d.ts +9 -0
  339. package/lib/components/test/test.component.d.ts.map +1 -0
  340. package/lib/components/user-login/user-login.component.d.ts +82 -0
  341. package/lib/components/user-login/user-login.component.d.ts.map +1 -0
  342. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts +67 -0
  343. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts.map +1 -0
  344. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts +47 -0
  345. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts.map +1 -0
  346. package/lib/directives/auto-focus/auto-focus.directive.d.ts +13 -0
  347. package/lib/directives/auto-focus/auto-focus.directive.d.ts.map +1 -0
  348. package/lib/directives/caps-lock.directive.d.ts +12 -0
  349. package/lib/directives/caps-lock.directive.d.ts.map +1 -0
  350. package/lib/directives/required-roles/required-roles.directive.d.ts +15 -0
  351. package/lib/directives/required-roles/required-roles.directive.d.ts.map +1 -0
  352. package/lib/enums/EmailStatusEnum.d.ts +8 -0
  353. package/lib/enums/EmailStatusEnum.d.ts.map +1 -0
  354. package/lib/guards/auth.guard.d.ts +29 -0
  355. package/lib/guards/auth.guard.d.ts.map +1 -0
  356. package/lib/guards/no-login/no-login.guard.d.ts +12 -0
  357. package/lib/guards/no-login/no-login.guard.d.ts.map +1 -0
  358. package/lib/interceptors/error-interceptor/http-error-interceptor.d.ts +23 -0
  359. package/lib/interceptors/error-interceptor/http-error-interceptor.d.ts.map +1 -0
  360. package/lib/interceptors/header-interceptor/http-header.interceptor.d.ts +22 -0
  361. package/lib/interceptors/header-interceptor/http-header.interceptor.d.ts.map +1 -0
  362. package/lib/models/AddressComponentModel.d.ts +14 -0
  363. package/lib/models/AddressComponentModel.d.ts.map +1 -0
  364. package/lib/models/BankDetailsComponentModel.d.ts +12 -0
  365. package/lib/models/BankDetailsComponentModel.d.ts.map +1 -0
  366. package/lib/models/BankDetailsModel.d.ts +5 -0
  367. package/lib/models/BankDetailsModel.d.ts.map +1 -0
  368. package/lib/models/CinRequalificationCriteriaModel.d.ts +11 -0
  369. package/lib/models/CinRequalificationCriteriaModel.d.ts.map +1 -0
  370. package/lib/models/EmployerDetailSearchResult.d.ts +51 -0
  371. package/lib/models/EmployerDetailSearchResult.d.ts.map +1 -0
  372. package/lib/models/ErrorModel.d.ts +7 -0
  373. package/lib/models/ErrorModel.d.ts.map +1 -0
  374. package/lib/models/FileModel.d.ts +5 -0
  375. package/lib/models/FileModel.d.ts.map +1 -0
  376. package/lib/models/LexisNexisAccountCreationModel.d.ts +15 -0
  377. package/lib/models/LexisNexisAccountCreationModel.d.ts.map +1 -0
  378. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts +16 -0
  379. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts.map +1 -0
  380. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts +39 -0
  381. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts.map +1 -0
  382. package/lib/models/LexisNexisEnabledResponseModel.d.ts +5 -0
  383. package/lib/models/LexisNexisEnabledResponseModel.d.ts.map +1 -0
  384. package/lib/models/LexisNexisResponseModel.d.ts +7 -0
  385. package/lib/models/LexisNexisResponseModel.d.ts.map +1 -0
  386. package/lib/models/LibConstants.d.ts +125 -0
  387. package/lib/models/LibConstants.d.ts.map +1 -0
  388. package/lib/models/NewsAndAnnouncementModel.d.ts +6 -0
  389. package/lib/models/NewsAndAnnouncementModel.d.ts.map +1 -0
  390. package/lib/models/NotificationModel.d.ts +11 -0
  391. package/lib/models/NotificationModel.d.ts.map +1 -0
  392. package/lib/models/OtpAuthModel.d.ts +8 -0
  393. package/lib/models/OtpAuthModel.d.ts.map +1 -0
  394. package/lib/models/PartialEmploymentModel.d.ts +6 -0
  395. package/lib/models/PartialEmploymentModel.d.ts.map +1 -0
  396. package/lib/models/PaymentComponentModel.d.ts +8 -0
  397. package/lib/models/PaymentComponentModel.d.ts.map +1 -0
  398. package/lib/models/RequalifyLiftPageModel.d.ts +12 -0
  399. package/lib/models/RequalifyLiftPageModel.d.ts.map +1 -0
  400. package/lib/models/SecurityQuestionModel.d.ts +7 -0
  401. package/lib/models/SecurityQuestionModel.d.ts.map +1 -0
  402. package/lib/models/SsaVerificationModel.d.ts +9 -0
  403. package/lib/models/SsaVerificationModel.d.ts.map +1 -0
  404. package/lib/models/TrendModel.d.ts +14 -0
  405. package/lib/models/TrendModel.d.ts.map +1 -0
  406. package/lib/models/UserDetailsModel.d.ts +10 -0
  407. package/lib/models/UserDetailsModel.d.ts.map +1 -0
  408. package/lib/models/UserModel.d.ts +48 -0
  409. package/lib/models/UserModel.d.ts.map +1 -0
  410. package/lib/models/case/CaseAttachmentModel.d.ts +6 -0
  411. package/lib/models/case/CaseAttachmentModel.d.ts.map +1 -0
  412. package/lib/models/claimant/ClaimantModel.d.ts +23 -0
  413. package/lib/models/claimant/ClaimantModel.d.ts.map +1 -0
  414. package/lib/models/claimant/JobResultsData.d.ts +8 -0
  415. package/lib/models/claimant/JobResultsData.d.ts.map +1 -0
  416. package/lib/models/claimant/MatchingJobs.d.ts +13 -0
  417. package/lib/models/claimant/MatchingJobs.d.ts.map +1 -0
  418. package/lib/models/claimant/ResetPasswordModel.d.ts +9 -0
  419. package/lib/models/claimant/ResetPasswordModel.d.ts.map +1 -0
  420. package/lib/models/cmp/CaseCoreModel.d.ts +21 -0
  421. package/lib/models/cmp/CaseCoreModel.d.ts.map +1 -0
  422. package/lib/models/cmp/ComplaintCategoryModel.d.ts +9 -0
  423. package/lib/models/cmp/ComplaintCategoryModel.d.ts.map +1 -0
  424. package/lib/models/cmp/ComplaintCategoryOutputModel.d.ts +6 -0
  425. package/lib/models/cmp/ComplaintCategoryOutputModel.d.ts.map +1 -0
  426. package/lib/models/cmp/ContactUsModel.d.ts +23 -0
  427. package/lib/models/cmp/ContactUsModel.d.ts.map +1 -0
  428. package/lib/models/cmp/EmailTemplateModel.d.ts +7 -0
  429. package/lib/models/cmp/EmailTemplateModel.d.ts.map +1 -0
  430. package/lib/models/cmp/contactUsInqueryModel.d.ts +47 -0
  431. package/lib/models/cmp/contactUsInqueryModel.d.ts.map +1 -0
  432. package/lib/models/cmp/messageRourceModel.d.ts +6 -0
  433. package/lib/models/cmp/messageRourceModel.d.ts.map +1 -0
  434. package/lib/models/dashboard-model.d.ts +44 -0
  435. package/lib/models/dashboard-model.d.ts.map +1 -0
  436. package/lib/models/dependent.model.d.ts +20 -0
  437. package/lib/models/dependent.model.d.ts.map +1 -0
  438. package/lib/models/questionnaire/AutocoderModel.d.ts +9 -0
  439. package/lib/models/questionnaire/AutocoderModel.d.ts.map +1 -0
  440. package/lib/models/questionnaire/ClaimAppEmpRequestModel.d.ts +9 -0
  441. package/lib/models/questionnaire/ClaimAppEmpRequestModel.d.ts.map +1 -0
  442. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts +18 -0
  443. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts.map +1 -0
  444. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts +156 -0
  445. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts.map +1 -0
  446. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts +18 -0
  447. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts.map +1 -0
  448. package/lib/models/questionnaire/ComboModel.d.ts +178 -0
  449. package/lib/models/questionnaire/ComboModel.d.ts.map +1 -0
  450. package/lib/models/questionnaire/ElementsModel.d.ts +71 -0
  451. package/lib/models/questionnaire/ElementsModel.d.ts.map +1 -0
  452. package/lib/models/questionnaire/EmployerDetailSearchResult.d.ts +18 -0
  453. package/lib/models/questionnaire/EmployerDetailSearchResult.d.ts.map +1 -0
  454. package/lib/models/questionnaire/EmployerWagesModel.d.ts +5 -0
  455. package/lib/models/questionnaire/EmployerWagesModel.d.ts.map +1 -0
  456. package/lib/models/questionnaire/FBConfigModel.d.ts +12 -0
  457. package/lib/models/questionnaire/FBConfigModel.d.ts.map +1 -0
  458. package/lib/models/questionnaire/KeyValueModel.d.ts +11 -0
  459. package/lib/models/questionnaire/KeyValueModel.d.ts.map +1 -0
  460. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts +11 -0
  461. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts.map +1 -0
  462. package/lib/models/questionnaire/LoaderModel.d.ts +5 -0
  463. package/lib/models/questionnaire/LoaderModel.d.ts.map +1 -0
  464. package/lib/models/questionnaire/PollingStatusModel.d.ts +7 -0
  465. package/lib/models/questionnaire/PollingStatusModel.d.ts.map +1 -0
  466. package/lib/models/questionnaire/QtrYearEmployerWageModel.d.ts +9 -0
  467. package/lib/models/questionnaire/QtrYearEmployerWageModel.d.ts.map +1 -0
  468. package/lib/models/questionnaire/QuestionnaireQueryModel.d.ts +24 -0
  469. package/lib/models/questionnaire/QuestionnaireQueryModel.d.ts.map +1 -0
  470. package/lib/models/questionnaire/QuestionnaireReturnModel.d.ts +21 -0
  471. package/lib/models/questionnaire/QuestionnaireReturnModel.d.ts.map +1 -0
  472. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts +26 -0
  473. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts.map +1 -0
  474. package/lib/models/questionnaire/RequalifyLiftIssuesModel.d.ts +14 -0
  475. package/lib/models/questionnaire/RequalifyLiftIssuesModel.d.ts.map +1 -0
  476. package/lib/models/questionnaire/ServiceActionResponseModel.d.ts +7 -0
  477. package/lib/models/questionnaire/ServiceActionResponseModel.d.ts.map +1 -0
  478. package/lib/models/questionnaire/StatusModel.d.ts +16 -0
  479. package/lib/models/questionnaire/StatusModel.d.ts.map +1 -0
  480. package/lib/models/questionnaire/SuccessPageElement.d.ts +9 -0
  481. package/lib/models/questionnaire/SuccessPageElement.d.ts.map +1 -0
  482. package/lib/models/questionnaire/UI512AResponseModel.d.ts +13 -0
  483. package/lib/models/questionnaire/UI512AResponseModel.d.ts.map +1 -0
  484. package/lib/models/questionnaire/ValidationModel.d.ts +18 -0
  485. package/lib/models/questionnaire/ValidationModel.d.ts.map +1 -0
  486. package/lib/ngx-reusa-app-lib.component.d.ts +9 -0
  487. package/lib/ngx-reusa-app-lib.component.d.ts.map +1 -0
  488. package/lib/ngx-reusa-app-lib.module.d.ts +155 -0
  489. package/lib/ngx-reusa-app-lib.module.d.ts.map +1 -0
  490. package/lib/ngx-reusa-app-lib.service.d.ts +7 -0
  491. package/lib/ngx-reusa-app-lib.service.d.ts.map +1 -0
  492. package/lib/pages/BasePage.d.ts +32 -0
  493. package/lib/pages/BasePage.d.ts.map +1 -0
  494. package/lib/pages/common/accessibility-policy/accessibility-policy.page.d.ts +12 -0
  495. package/lib/pages/common/accessibility-policy/accessibility-policy.page.d.ts.map +1 -0
  496. package/lib/pages/common/change-password/change-password.page.d.ts +41 -0
  497. package/lib/pages/common/change-password/change-password.page.d.ts.map +1 -0
  498. package/lib/pages/common/landing/landing.component.d.ts +25 -0
  499. package/lib/pages/common/landing/landing.component.d.ts.map +1 -0
  500. package/lib/pages/common/landing2/landing2.component.d.ts +31 -0
  501. package/lib/pages/common/landing2/landing2.component.d.ts.map +1 -0
  502. package/lib/pages/common/login/login.component.d.ts +65 -0
  503. package/lib/pages/common/login/login.component.d.ts.map +1 -0
  504. package/lib/pages/common/not-found/not-found.page.d.ts +9 -0
  505. package/lib/pages/common/not-found/not-found.page.d.ts.map +1 -0
  506. package/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.d.ts +12 -0
  507. package/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.d.ts.map +1 -0
  508. package/lib/pages/common/security-policy/security-policy.page.d.ts +12 -0
  509. package/lib/pages/common/security-policy/security-policy.page.d.ts.map +1 -0
  510. package/lib/pages/common/unauthorized/unauthorized.page.d.ts +9 -0
  511. package/lib/pages/common/unauthorized/unauthorized.page.d.ts.map +1 -0
  512. package/lib/pages/popovers/language/language.page.d.ts +17 -0
  513. package/lib/pages/popovers/language/language.page.d.ts.map +1 -0
  514. package/lib/pages/popovers/my-notifications/my-notifications.page.d.ts +22 -0
  515. package/lib/pages/popovers/my-notifications/my-notifications.page.d.ts.map +1 -0
  516. package/lib/pages/popovers/my-profile/my-profile.page.d.ts +21 -0
  517. package/lib/pages/popovers/my-profile/my-profile.page.d.ts.map +1 -0
  518. package/lib/pages/popovers/user-search/user-search.component.d.ts +32 -0
  519. package/lib/pages/popovers/user-search/user-search.component.d.ts.map +1 -0
  520. package/lib/pipes/filter.pipe.d.ts +8 -0
  521. package/lib/pipes/filter.pipe.d.ts.map +1 -0
  522. package/lib/pipes/mask/mask.email.pipe.d.ts +11 -0
  523. package/lib/pipes/mask/mask.email.pipe.d.ts.map +1 -0
  524. package/lib/pipes/proper-case/proper-case.pipe.d.ts +9 -0
  525. package/lib/pipes/proper-case/proper-case.pipe.d.ts.map +1 -0
  526. package/lib/pipes/translate/dynamic-translate.pipe.d.ts +11 -0
  527. package/lib/pipes/translate/dynamic-translate.pipe.d.ts.map +1 -0
  528. package/lib/pipes/trust-html/trust-html.pipe.d.ts +11 -0
  529. package/lib/pipes/trust-html/trust-html.pipe.d.ts.map +1 -0
  530. package/lib/services/base-service.d.ts +93 -0
  531. package/lib/services/base-service.d.ts.map +1 -0
  532. package/lib/services/captcha/captcha.service.d.ts +16 -0
  533. package/lib/services/captcha/captcha.service.d.ts.map +1 -0
  534. package/lib/services/case-service/case.service.d.ts +20 -0
  535. package/lib/services/case-service/case.service.d.ts.map +1 -0
  536. package/lib/services/chatbot/chatbot.service.d.ts +61 -0
  537. package/lib/services/chatbot/chatbot.service.d.ts.map +1 -0
  538. package/lib/services/chatbot/script.const.d.ts +16 -0
  539. package/lib/services/chatbot/script.const.d.ts.map +1 -0
  540. package/lib/services/claimant/claimant.service.d.ts +18 -0
  541. package/lib/services/claimant/claimant.service.d.ts.map +1 -0
  542. package/lib/services/claimant-context/claimant-context.service.d.ts +19 -0
  543. package/lib/services/claimant-context/claimant-context.service.d.ts.map +1 -0
  544. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts +16 -0
  545. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts.map +1 -0
  546. package/lib/services/claimant-service/claimant.service.d.ts +26 -0
  547. package/lib/services/claimant-service/claimant.service.d.ts.map +1 -0
  548. package/lib/services/claims/claims.service.d.ts +42 -0
  549. package/lib/services/claims/claims.service.d.ts.map +1 -0
  550. package/lib/services/cmp-service/cmp.service.d.ts +34 -0
  551. package/lib/services/cmp-service/cmp.service.d.ts.map +1 -0
  552. package/lib/services/dms-service/dms.service.d.ts +24 -0
  553. package/lib/services/dms-service/dms.service.d.ts.map +1 -0
  554. package/lib/services/fpjs/fingerprint.service.d.ts +19 -0
  555. package/lib/services/fpjs/fingerprint.service.d.ts.map +1 -0
  556. package/lib/services/google-analytics/google-analytics.service.d.ts +9 -0
  557. package/lib/services/google-analytics/google-analytics.service.d.ts.map +1 -0
  558. package/lib/services/help/help.service.d.ts +26 -0
  559. package/lib/services/help/help.service.d.ts.map +1 -0
  560. package/lib/services/idle/idle.service.d.ts +44 -0
  561. package/lib/services/idle/idle.service.d.ts.map +1 -0
  562. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts +26 -0
  563. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts.map +1 -0
  564. package/lib/services/logger/logger.service.d.ts +32 -0
  565. package/lib/services/logger/logger.service.d.ts.map +1 -0
  566. package/lib/services/login/login.service.d.ts +79 -0
  567. package/lib/services/login/login.service.d.ts.map +1 -0
  568. package/lib/services/maintenance/maintenance.service.d.ts +16 -0
  569. package/lib/services/maintenance/maintenance.service.d.ts.map +1 -0
  570. package/lib/services/notification/notification.service.d.ts +39 -0
  571. package/lib/services/notification/notification.service.d.ts.map +1 -0
  572. package/lib/services/ovp/ovp.service.d.ts +17 -0
  573. package/lib/services/ovp/ovp.service.d.ts.map +1 -0
  574. package/lib/services/questionnaire/questionnaire.service.d.ts +36 -0
  575. package/lib/services/questionnaire/questionnaire.service.d.ts.map +1 -0
  576. package/lib/services/questionnaire/validation.service.d.ts +82 -0
  577. package/lib/services/questionnaire/validation.service.d.ts.map +1 -0
  578. package/lib/services/security-service/security.service.d.ts +18 -0
  579. package/lib/services/security-service/security.service.d.ts.map +1 -0
  580. package/lib/services/tour/tour.service.d.ts +25 -0
  581. package/lib/services/tour/tour.service.d.ts.map +1 -0
  582. package/lib/services/util/util.service.d.ts +194 -0
  583. package/lib/services/util/util.service.d.ts.map +1 -0
  584. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts +17 -0
  585. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts.map +1 -0
  586. package/lib/validations/AppRegex.d.ts +50 -0
  587. package/lib/validations/AppRegex.d.ts.map +1 -0
  588. package/lib/validations/AppValidators.d.ts +82 -0
  589. package/lib/validations/AppValidators.d.ts.map +1 -0
  590. package/package.json +28 -0
  591. package/public-api.d.ts +128 -0
  592. package/public-api.d.ts.map +1 -0
@@ -0,0 +1,471 @@
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_13_Template(rf, ctx) { if (rf & 1) {
22
+ i0.ɵɵelementStart(0, "li", 9);
23
+ i0.ɵɵtext(1, "2 of the following symbols ");
24
+ i0.ɵɵelementStart(2, "strong");
25
+ i0.ɵɵtext(3, "!@#$*%");
26
+ i0.ɵɵelementEnd()();
27
+ } if (rf & 2) {
28
+ const ctx_r3 = i0.ɵɵnextContext(2);
29
+ i0.ɵɵproperty("ngClass", !ctx_r3.password.hasError("hasClaimantSpecialCharacters") && ctx_r3.password.dirty ? "success" : "error");
30
+ } }
31
+ function ChangePasswordPage_div_10_li_14_Template(rf, ctx) { if (rf & 1) {
32
+ i0.ɵɵelementStart(0, "li", 9);
33
+ i0.ɵɵtext(1, "2 of the following symbols ");
34
+ i0.ɵɵelementStart(2, "strong");
35
+ i0.ɵɵtext(3, "!@#$*%");
36
+ i0.ɵɵelementEnd()();
37
+ } if (rf & 2) {
38
+ const ctx_r4 = i0.ɵɵnextContext(2);
39
+ i0.ɵɵproperty("ngClass", !ctx_r4.password.hasError("hasClaimantSpecialCharacters") && ctx_r4.password.dirty ? "success" : "error");
40
+ } }
41
+ function ChangePasswordPage_div_10_li_15_Template(rf, ctx) { if (rf & 1) {
42
+ i0.ɵɵelementStart(0, "li", 9);
43
+ i0.ɵɵtext(1, "Minimum 14 characters");
44
+ i0.ɵɵelementEnd();
45
+ } if (rf & 2) {
46
+ const ctx_r5 = i0.ɵɵnextContext(2);
47
+ i0.ɵɵproperty("ngClass", !ctx_r5.password.hasError("minlength") && ctx_r5.password.dirty ? "success" : "error");
48
+ } }
49
+ function ChangePasswordPage_div_10_li_16_Template(rf, ctx) { if (rf & 1) {
50
+ i0.ɵɵelementStart(0, "li", 9);
51
+ i0.ɵɵtext(1, "Maximum 25 characters.");
52
+ i0.ɵɵelementEnd();
53
+ } if (rf & 2) {
54
+ const ctx_r6 = i0.ɵɵnextContext(2);
55
+ i0.ɵɵproperty("ngClass", !ctx_r6.password.hasError("maxlength") && ctx_r6.password.dirty ? "success" : "error");
56
+ } }
57
+ function ChangePasswordPage_div_10_li_17_Template(rf, ctx) { if (rf & 1) {
58
+ i0.ɵɵelementStart(0, "li", 9);
59
+ i0.ɵɵtext(1, "Minimum 14 characters.");
60
+ i0.ɵɵelementEnd();
61
+ } if (rf & 2) {
62
+ const ctx_r7 = i0.ɵɵnextContext(2);
63
+ i0.ɵɵproperty("ngClass", !ctx_r7.password.hasError("minlength") && ctx_r7.password.dirty ? "success" : "error");
64
+ } }
65
+ function ChangePasswordPage_div_10_li_18_Template(rf, ctx) { if (rf & 1) {
66
+ i0.ɵɵelementStart(0, "li", 9);
67
+ i0.ɵɵtext(1, "Maximum 25 characters.");
68
+ i0.ɵɵelementEnd();
69
+ } if (rf & 2) {
70
+ const ctx_r8 = i0.ɵɵnextContext(2);
71
+ i0.ɵɵproperty("ngClass", !ctx_r8.password.hasError("maxlength") && 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", 9);
75
+ i0.ɵɵtext(1, "Your password cannot contain your name and/or your user id.");
76
+ i0.ɵɵelementEnd();
77
+ } if (rf & 2) {
78
+ const ctx_r9 = i0.ɵɵnextContext(2);
79
+ i0.ɵɵproperty("ngClass", !ctx_r9.password.hasError("maxlength") && ctx_r9.password.dirty ? "success" : "error");
80
+ } }
81
+ function ChangePasswordPage_div_10_li_20_Template(rf, ctx) { if (rf & 1) {
82
+ i0.ɵɵelementStart(0, "li", 9);
83
+ i0.ɵɵtext(1, "At least 2 special characters from following ");
84
+ i0.ɵɵelementStart(2, "strong");
85
+ i0.ɵɵtext(3, "_ @ * $ ! # .");
86
+ i0.ɵɵelementEnd()();
87
+ } if (rf & 2) {
88
+ const ctx_r10 = i0.ɵɵnextContext(2);
89
+ i0.ɵɵproperty("ngClass", !ctx_r10.password.hasError("hasCsrSpecialCharacters") && ctx_r10.password.dirty ? "success" : "error");
90
+ } }
91
+ function ChangePasswordPage_div_10_mat_error_26_Template(rf, ctx) { if (rf & 1) {
92
+ i0.ɵɵelementStart(0, "mat-error");
93
+ i0.ɵɵtext(1, " Current Password is required. ");
94
+ i0.ɵɵelementEnd();
95
+ } }
96
+ function ChangePasswordPage_div_10_mat_error_27_Template(rf, ctx) { if (rf & 1) {
97
+ i0.ɵɵelementStart(0, "mat-error");
98
+ i0.ɵɵtext(1, " Current Password should not be same as New Password. ");
99
+ i0.ɵɵelementEnd();
100
+ } }
101
+ function ChangePasswordPage_div_10_mat_error_34_Template(rf, ctx) { if (rf & 1) {
102
+ i0.ɵɵelementStart(0, "mat-error");
103
+ i0.ɵɵtext(1, " New Password is required. ");
104
+ i0.ɵɵelementEnd();
105
+ } }
106
+ function ChangePasswordPage_div_10_mat_error_35_Template(rf, ctx) { if (rf & 1) {
107
+ i0.ɵɵelementStart(0, "mat-error");
108
+ i0.ɵɵtext(1, " New Password and Confirm Password did not match. ");
109
+ i0.ɵɵelementEnd();
110
+ } }
111
+ function ChangePasswordPage_div_10_mat_error_36_Template(rf, ctx) { if (rf & 1) {
112
+ i0.ɵɵelementStart(0, "mat-error");
113
+ i0.ɵɵtext(1, " Current Password should not be same as New Password. ");
114
+ i0.ɵɵelementEnd();
115
+ } }
116
+ function ChangePasswordPage_div_10_mat_error_43_Template(rf, ctx) { if (rf & 1) {
117
+ i0.ɵɵelementStart(0, "mat-error");
118
+ i0.ɵɵtext(1, " Confirm Password is required. ");
119
+ i0.ɵɵelementEnd();
120
+ } }
121
+ function ChangePasswordPage_div_10_mat_error_44_Template(rf, ctx) { if (rf & 1) {
122
+ i0.ɵɵelementStart(0, "mat-error");
123
+ i0.ɵɵtext(1, " Confirm Password should have minimum ");
124
+ i0.ɵɵelementStart(2, "strong");
125
+ i0.ɵɵtext(3, "14 characters");
126
+ i0.ɵɵelementEnd();
127
+ i0.ɵɵtext(4, ". ");
128
+ i0.ɵɵelementEnd();
129
+ } }
130
+ function ChangePasswordPage_div_10_mat_error_45_Template(rf, ctx) { if (rf & 1) {
131
+ i0.ɵɵelementStart(0, "mat-error");
132
+ i0.ɵɵtext(1, " Confirm Password should not have more than ");
133
+ i0.ɵɵelementStart(2, "strong");
134
+ i0.ɵɵtext(3, "25 characters");
135
+ i0.ɵɵelementEnd();
136
+ i0.ɵɵtext(4, ". ");
137
+ i0.ɵɵelementEnd();
138
+ } }
139
+ function ChangePasswordPage_div_10_mat_error_46_Template(rf, ctx) { if (rf & 1) {
140
+ i0.ɵɵelementStart(0, "mat-error");
141
+ i0.ɵɵtext(1, " Confirm Password should have minimum ");
142
+ i0.ɵɵelementStart(2, "strong");
143
+ i0.ɵɵtext(3, "14 characters");
144
+ i0.ɵɵelementEnd();
145
+ i0.ɵɵtext(4, ". ");
146
+ i0.ɵɵelementEnd();
147
+ } }
148
+ function ChangePasswordPage_div_10_mat_error_47_Template(rf, ctx) { if (rf & 1) {
149
+ i0.ɵɵelementStart(0, "mat-error");
150
+ i0.ɵɵtext(1, " Confirm Password should not have more than ");
151
+ i0.ɵɵelementStart(2, "strong");
152
+ i0.ɵɵtext(3, "25 characters");
153
+ i0.ɵɵelementEnd();
154
+ i0.ɵɵtext(4, ". ");
155
+ i0.ɵɵelementEnd();
156
+ } }
157
+ function ChangePasswordPage_div_10_mat_error_48_Template(rf, ctx) { if (rf & 1) {
158
+ i0.ɵɵelementStart(0, "mat-error");
159
+ i0.ɵɵtext(1, " New Password and Confirm Password did not match. ");
160
+ i0.ɵɵelementEnd();
161
+ } }
162
+ function ChangePasswordPage_div_10_mat_error_49_Template(rf, ctx) { if (rf & 1) {
163
+ i0.ɵɵelementStart(0, "mat-error");
164
+ i0.ɵɵtext(1, " Current Password should not be same as Confirm Password. ");
165
+ i0.ɵɵelementEnd();
166
+ } }
167
+ function ChangePasswordPage_div_10_label_50_Template(rf, ctx) { if (rf & 1) {
168
+ i0.ɵɵelementStart(0, "label", 21)(1, "strong");
169
+ i0.ɵɵtext(2, "Caps Lock is On");
170
+ i0.ɵɵelementEnd()();
171
+ } }
172
+ function ChangePasswordPage_div_10_Template(rf, ctx) { if (rf & 1) {
173
+ const _r25 = i0.ɵɵgetCurrentView();
174
+ i0.ɵɵelementStart(0, "div")(1, "div");
175
+ i0.ɵɵtext(2, " In order to ");
176
+ i0.ɵɵelementStart(3, "strong");
177
+ i0.ɵɵtext(4, "protect your account");
178
+ i0.ɵɵelementEnd();
179
+ i0.ɵɵtext(5, ", your password must include at least: ");
180
+ i0.ɵɵelementStart(6, "ul", 8)(7, "li", 9);
181
+ i0.ɵɵtext(8, "1 uppercase letter");
182
+ i0.ɵɵelementEnd();
183
+ i0.ɵɵelementStart(9, "li", 9);
184
+ i0.ɵɵtext(10, "1 lowercase letter");
185
+ i0.ɵɵelementEnd();
186
+ i0.ɵɵelementStart(11, "li", 9);
187
+ i0.ɵɵtext(12, "1 number");
188
+ i0.ɵɵelementEnd();
189
+ i0.ɵɵtemplate(13, ChangePasswordPage_div_10_li_13_Template, 4, 1, "li", 10)(14, ChangePasswordPage_div_10_li_14_Template, 4, 1, "li", 10)(15, ChangePasswordPage_div_10_li_15_Template, 2, 1, "li", 10)(16, ChangePasswordPage_div_10_li_16_Template, 2, 1, "li", 10)(17, ChangePasswordPage_div_10_li_17_Template, 2, 1, "li", 10)(18, ChangePasswordPage_div_10_li_18_Template, 2, 1, "li", 10)(19, ChangePasswordPage_div_10_li_19_Template, 2, 1, "li", 10)(20, ChangePasswordPage_div_10_li_20_Template, 4, 1, "li", 10);
190
+ i0.ɵɵelementEnd()();
191
+ i0.ɵɵelementStart(21, "div", 11)(22, "span", 12);
192
+ i0.ɵɵelement(23, "p-password", 13);
193
+ i0.ɵɵelementStart(24, "label", 14);
194
+ i0.ɵɵtext(25, "Current Password");
195
+ i0.ɵɵelementEnd()();
196
+ i0.ɵɵtemplate(26, ChangePasswordPage_div_10_mat_error_26_Template, 2, 0, "mat-error", 6)(27, ChangePasswordPage_div_10_mat_error_27_Template, 2, 0, "mat-error", 6);
197
+ i0.ɵɵelementEnd();
198
+ i0.ɵɵelement(28, "br");
199
+ i0.ɵɵelementStart(29, "div", 11)(30, "span", 12);
200
+ i0.ɵɵelement(31, "p-password", 15);
201
+ i0.ɵɵelementStart(32, "label", 14);
202
+ i0.ɵɵtext(33, "New Password");
203
+ i0.ɵɵelementEnd()();
204
+ i0.ɵɵtemplate(34, ChangePasswordPage_div_10_mat_error_34_Template, 2, 0, "mat-error", 6)(35, ChangePasswordPage_div_10_mat_error_35_Template, 2, 0, "mat-error", 6)(36, ChangePasswordPage_div_10_mat_error_36_Template, 2, 0, "mat-error", 6);
205
+ i0.ɵɵelementEnd();
206
+ i0.ɵɵelement(37, "br");
207
+ i0.ɵɵelementStart(38, "div", 11)(39, "span", 12);
208
+ i0.ɵɵelement(40, "p-password", 16);
209
+ i0.ɵɵelementStart(41, "label", 14);
210
+ i0.ɵɵtext(42, "Confirm Password");
211
+ i0.ɵɵelementEnd()();
212
+ i0.ɵɵtemplate(43, ChangePasswordPage_div_10_mat_error_43_Template, 2, 0, "mat-error", 6)(44, ChangePasswordPage_div_10_mat_error_44_Template, 5, 0, "mat-error", 6)(45, ChangePasswordPage_div_10_mat_error_45_Template, 5, 0, "mat-error", 6)(46, ChangePasswordPage_div_10_mat_error_46_Template, 5, 0, "mat-error", 6)(47, ChangePasswordPage_div_10_mat_error_47_Template, 5, 0, "mat-error", 6)(48, ChangePasswordPage_div_10_mat_error_48_Template, 2, 0, "mat-error", 6)(49, ChangePasswordPage_div_10_mat_error_49_Template, 2, 0, "mat-error", 6);
213
+ i0.ɵɵelementEnd();
214
+ i0.ɵɵtemplate(50, ChangePasswordPage_div_10_label_50_Template, 3, 0, "label", 17);
215
+ i0.ɵɵelementStart(51, "div", 18)(52, "ion-button", 19);
216
+ i0.ɵɵlistener("click", function ChangePasswordPage_div_10_Template_ion_button_click_52_listener() { i0.ɵɵrestoreView(_r25); const ctx_r24 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r24.save()); });
217
+ i0.ɵɵelement(53, "ion-icon", 20);
218
+ i0.ɵɵtext(54, " Change Password ");
219
+ i0.ɵɵelementEnd()()();
220
+ } if (rf & 2) {
221
+ const ctx_r1 = i0.ɵɵnextContext();
222
+ i0.ɵɵadvance(7);
223
+ i0.ɵɵproperty("ngClass", !ctx_r1.password.hasError("hasCapitalCase") && ctx_r1.password.dirty ? "success" : "error");
224
+ i0.ɵɵadvance(2);
225
+ i0.ɵɵproperty("ngClass", !ctx_r1.password.hasError("hasSmallCase") && ctx_r1.password.dirty ? "success" : "error");
226
+ i0.ɵɵadvance(2);
227
+ i0.ɵɵproperty("ngClass", !ctx_r1.password.hasError("hasNumber") && ctx_r1.password.dirty ? "success" : "error");
228
+ i0.ɵɵadvance(2);
229
+ i0.ɵɵproperty("ngIf", ctx_r1.loginService.isClaimant() && !ctx_r1.isSameSymbolPolicyForClaimantAndAgency);
230
+ i0.ɵɵadvance(1);
231
+ i0.ɵɵproperty("ngIf", ctx_r1.loginService.isClaimant() && ctx_r1.isSameSymbolPolicyForClaimantAndAgency);
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("ngIf", ctx_r1.isNewPasswordPolicyEnabled);
240
+ i0.ɵɵadvance(1);
241
+ i0.ɵɵproperty("ngIf", ctx_r1.isNewPasswordPolicyEnabled);
242
+ i0.ɵɵadvance(1);
243
+ i0.ɵɵproperty("ngIf", !ctx_r1.loginService.isClaimant());
244
+ i0.ɵɵadvance(3);
245
+ i0.ɵɵproperty("formControl", ctx_r1.oldPassword)("toggleMask", true)("feedback", false);
246
+ i0.ɵɵadvance(3);
247
+ i0.ɵɵproperty("ngIf", ctx_r1.oldPassword.hasError("required"));
248
+ i0.ɵɵadvance(1);
249
+ i0.ɵɵproperty("ngIf", ctx_r1.oldPassword.hasError("match"));
250
+ i0.ɵɵadvance(4);
251
+ i0.ɵɵproperty("formControl", ctx_r1.password)("toggleMask", true);
252
+ i0.ɵɵadvance(3);
253
+ i0.ɵɵproperty("ngIf", ctx_r1.password.hasError("required"));
254
+ i0.ɵɵadvance(1);
255
+ i0.ɵɵproperty("ngIf", ctx_r1.password.hasError("notMatch"));
256
+ i0.ɵɵadvance(1);
257
+ i0.ɵɵproperty("ngIf", ctx_r1.password.hasError("match"));
258
+ i0.ɵɵadvance(4);
259
+ i0.ɵɵproperty("formControl", ctx_r1.confirmPassword)("toggleMask", true);
260
+ i0.ɵɵadvance(3);
261
+ i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("required"));
262
+ i0.ɵɵadvance(1);
263
+ i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("minlength") && ctx_r1.isNewPasswordPolicyEnabled);
264
+ i0.ɵɵadvance(1);
265
+ i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("maxlength") && ctx_r1.isNewPasswordPolicyEnabled);
266
+ i0.ɵɵadvance(1);
267
+ i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("minlength") && !ctx_r1.isNewPasswordPolicyEnabled);
268
+ i0.ɵɵadvance(1);
269
+ i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("maxlength") && !ctx_r1.isNewPasswordPolicyEnabled);
270
+ i0.ɵɵadvance(1);
271
+ i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("notMatch"));
272
+ i0.ɵɵadvance(1);
273
+ i0.ɵɵproperty("ngIf", ctx_r1.confirmPassword.hasError("match"));
274
+ i0.ɵɵadvance(1);
275
+ i0.ɵɵproperty("ngIf", ctx_r1.capsOn);
276
+ } }
277
+ function ChangePasswordPage_div_11_strong_2_Template(rf, ctx) { if (rf & 1) {
278
+ i0.ɵɵelementStart(0, "strong");
279
+ i0.ɵɵtext(1);
280
+ i0.ɵɵelementEnd();
281
+ } if (rf & 2) {
282
+ const ctx_r26 = i0.ɵɵnextContext(2);
283
+ i0.ɵɵadvance(1);
284
+ i0.ɵɵtextInterpolate(ctx_r26.user.daysTillPasswordExpire);
285
+ } }
286
+ function ChangePasswordPage_div_11_Template(rf, ctx) { if (rf & 1) {
287
+ const _r28 = i0.ɵɵgetCurrentView();
288
+ i0.ɵɵelementStart(0, "div", 22);
289
+ i0.ɵɵtext(1, " Your password will expire in ");
290
+ i0.ɵɵtemplate(2, ChangePasswordPage_div_11_strong_2_Template, 2, 1, "strong", 6);
291
+ i0.ɵɵtext(3, " day(s). Consider changing it now. ");
292
+ i0.ɵɵelementStart(4, "div", 18)(5, "ion-button", 19);
293
+ i0.ɵɵlistener("click", function ChangePasswordPage_div_11_Template_ion_button_click_5_listener() { i0.ɵɵrestoreView(_r28); const ctx_r27 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r27.showChangePassword = "false"); });
294
+ i0.ɵɵelement(6, "ion-icon", 23);
295
+ i0.ɵɵtext(7, " Change Now ");
296
+ i0.ɵɵelementEnd();
297
+ i0.ɵɵelementStart(8, "ion-button", 19);
298
+ i0.ɵɵlistener("click", function ChangePasswordPage_div_11_Template_ion_button_click_8_listener() { i0.ɵɵrestoreView(_r28); const ctx_r29 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r29.redirect()); });
299
+ i0.ɵɵelement(9, "ion-icon", 24);
300
+ i0.ɵɵtext(10, " Dashboard ");
301
+ i0.ɵɵelementEnd()()();
302
+ } if (rf & 2) {
303
+ const ctx_r2 = i0.ɵɵnextContext();
304
+ i0.ɵɵadvance(2);
305
+ i0.ɵɵproperty("ngIf", ctx_r2.user);
306
+ } }
307
+ export class ChangePasswordPage extends BasePage {
308
+ constructor(fb, loginService, util, nav, route, platform) {
309
+ super();
310
+ this.fb = fb;
311
+ this.loginService = loginService;
312
+ this.util = util;
313
+ this.nav = nav;
314
+ this.route = route;
315
+ this.platform = platform;
316
+ this.capsOn = false;
317
+ this.commonValidators = [
318
+ AppValidators.match(AppRegex.UPPER_CASE_REGEX, { hasCapitalCase: true }),
319
+ AppValidators.match(AppRegex.LOWER_CASE_REGEX, { hasSmallCase: true }),
320
+ AppValidators.match(AppRegex.NUMBER_REGEX, { hasNumber: true })
321
+ ];
322
+ this.csrPasswordValidators = [
323
+ AppValidators.match(AppRegex.AGENCY_SYMBOL_REGEX, { hasCsrSpecialCharacters: true })
324
+ ];
325
+ this.csrConfirmPasswordValidators = [
326
+ AppValidators.match(AppRegex.AGENCY_SYMBOL_REGEX, { hasCsrSpecialCharacters: true }),
327
+ AppValidators.equal('password', { notMatch: true })
328
+ ];
329
+ this.claimantPasswordValidators = [
330
+ AppValidators.match(this.isSameSymbolPolicyForClaimantAndAgency ? AppRegex.AGENCY_SYMBOL_REGEX : AppRegex.CLAIMANT_SYMBOL_REGEX, { hasClaimantSpecialCharacters: true })
331
+ ];
332
+ this.claimantConfirmPasswordValidators = [
333
+ AppValidators.match(this.isSameSymbolPolicyForClaimantAndAgency ? AppRegex.AGENCY_SYMBOL_REGEX : AppRegex.CLAIMANT_SYMBOL_REGEX, { hasClaimantSpecialCharacters: true }),
334
+ AppValidators.equal('password', { notMatch: true })
335
+ ];
336
+ this.hidePassword = true;
337
+ this.hideConfirmPassword = true;
338
+ this.hideOldPassword = true;
339
+ this.showChangePassword = 'false';
340
+ }
341
+ ngOnInit() {
342
+ this.initializeChangePwdForm();
343
+ this.user = this.loginService.getUser();
344
+ this.showChangePassword = this.route.snapshot.queryParamMap.get('changePwd') ? this.route.snapshot.queryParamMap.get('changePwd') : 'false';
345
+ }
346
+ initializeChangePwdForm() {
347
+ this.changePwdForm = this.fb.group({
348
+ 'oldPassword': [null, []],
349
+ 'password': [null, []],
350
+ 'confirmPassword': [null, []]
351
+ });
352
+ this.password.valueChanges.subscribe(v => {
353
+ if (this.confirmPassword.value) {
354
+ this.confirmPassword.updateValueAndValidity();
355
+ }
356
+ if (this.oldPassword.value) {
357
+ this.oldPassword.updateValueAndValidity();
358
+ }
359
+ });
360
+ this.setPasswordValidators();
361
+ }
362
+ setPasswordValidators() {
363
+ let validators1 = [];
364
+ let validators2 = [];
365
+ let validators3 = [Validators.required, AppValidators.notEqual('password', { match: true })];
366
+ this.commonValidators.forEach(v => validators1.push(v));
367
+ this.commonValidators.forEach(v => validators2.push(v));
368
+ if (this.isNewPasswordPolicyEnabled) {
369
+ this.newPasswordPolicyValidators.forEach(v => validators1.push(v));
370
+ this.newPasswordPolicyValidators.forEach(v => validators2.push(v));
371
+ }
372
+ else {
373
+ this.oldPasswordPolicyValidators.forEach(v => validators1.push(v));
374
+ this.oldPasswordPolicyValidators.forEach(v => validators2.push(v));
375
+ }
376
+ if (this.loginService.isCsr()) {
377
+ this.csrPasswordValidators.forEach(v => validators1.push(v));
378
+ this.csrConfirmPasswordValidators.forEach(v => validators2.push(v));
379
+ }
380
+ else {
381
+ this.claimantPasswordValidators.forEach(v => validators1.push(v));
382
+ this.claimantConfirmPasswordValidators.forEach(v => validators2.push(v));
383
+ }
384
+ this.util.setValidation(this.oldPassword, validators3);
385
+ this.util.setValidation(this.password, validators1);
386
+ this.util.setValidation(this.confirmPassword, validators2);
387
+ }
388
+ get oldPassword() {
389
+ return this.changePwdForm.get('oldPassword');
390
+ }
391
+ get password() {
392
+ return this.changePwdForm.get('password');
393
+ }
394
+ get confirmPassword() {
395
+ return this.changePwdForm.get('confirmPassword');
396
+ }
397
+ save() {
398
+ if (this.changePwdForm.invalid) {
399
+ return;
400
+ }
401
+ this.util.showLoader()
402
+ .then(() => {
403
+ this.loginService.updatePassword(this.oldPassword.value, this.password.value, this.confirmPassword.value)
404
+ .subscribe(res => {
405
+ this.loginService.logout();
406
+ this.nav
407
+ .navigateRoot('login')
408
+ .then(() => {
409
+ this.util.success('Password Changed Successfully. Please login again.');
410
+ this.util.hideLoader();
411
+ });
412
+ }, err => {
413
+ this.util.hideLoader();
414
+ this.util.errorHandler(err);
415
+ });
416
+ });
417
+ }
418
+ redirect() {
419
+ let userModel = this.loginService.getUser();
420
+ if (this.loginService.isClaimant()) {
421
+ const isCapacitor = this.platform.is('capacitor');
422
+ if (isCapacitor) {
423
+ this.nav.navigateRoot("welcome");
424
+ this.util.hideLoader();
425
+ }
426
+ else {
427
+ if (LibConstants.legacyMenu == 'true') {
428
+ this.nav.navigateRoot("welcome");
429
+ this.util.hideLoader();
430
+ }
431
+ else {
432
+ if ((LibConstants.ssoCookieName + "").includes('UAT') || (LibConstants.ssoCookieName + "").includes('PROD')) {
433
+ window.open(`${LibConstants.msworksUrl}`, '_self');
434
+ }
435
+ else {
436
+ window.open(`${LibConstants.benefitsUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299`, '_self');
437
+ }
438
+ }
439
+ }
440
+ }
441
+ else if (this.loginService.isEmployer() || this.loginService.isTpa()) {
442
+ window.open(`${LibConstants.taxUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299`, '_self');
443
+ }
444
+ else {
445
+ window.open(`${LibConstants.benefitsUrl}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299`, '_self');
446
+ }
447
+ }
448
+ static { this.ɵ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)); }; }
449
+ static { this.ɵ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"], [3, "ngClass", 4, "ngIf"], [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) {
450
+ i0.ɵɵelementStart(0, "ion-header");
451
+ i0.ɵɵelement(1, "app-header", 0);
452
+ i0.ɵɵelementEnd();
453
+ 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);
454
+ i0.ɵɵlistener("capsLock", function ChangePasswordPage_Template_app_card_capsLock_9_listener($event) { return ctx.capsOn = $event; });
455
+ i0.ɵɵtemplate(10, ChangePasswordPage_div_10_Template, 55, 31, "div", 6)(11, ChangePasswordPage_div_11_Template, 11, 1, "div", 7);
456
+ i0.ɵɵelementEnd()()()()()()();
457
+ } if (rf & 2) {
458
+ i0.ɵɵadvance(4);
459
+ i0.ɵɵproperty("formGroup", ctx.changePwdForm);
460
+ i0.ɵɵadvance(6);
461
+ i0.ɵɵproperty("ngIf", ctx.showChangePassword == "false");
462
+ i0.ɵɵadvance(1);
463
+ i0.ɵɵproperty("ngIf", ctx.showChangePassword == "true");
464
+ } }, 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)}"] }); }
465
+ }
466
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ChangePasswordPage, [{
467
+ type: Component,
468
+ 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>, your password must include at least:\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('hasCapitalCase') && password.dirty ? 'success' : 'error'\">1 uppercase letter</li>\r\n <li [ngClass]=\"!password.hasError('hasSmallCase') && password.dirty ? 'success' : 'error'\">1 lowercase letter</li>\r\n <li [ngClass]=\"!password.hasError('hasNumber') && password.dirty ? 'success' : 'error'\">1 number</li>\r\n <li [ngClass]=\"!password.hasError('hasClaimantSpecialCharacters') && password.dirty ? 'success' : 'error'\" *ngIf=\"loginService.isClaimant() && !isSameSymbolPolicyForClaimantAndAgency\">2 of the following symbols <strong>!&#64;#$*%</strong></li>\r\n <li [ngClass]=\"!password.hasError('hasClaimantSpecialCharacters') && password.dirty ? 'success' : 'error'\" *ngIf=\"loginService.isClaimant() && isSameSymbolPolicyForClaimantAndAgency\">2 of the following symbols <strong>!&#64;#$*%</strong></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 25 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 25 characters.</li>\r\n <li [ngClass]=\"!password.hasError('maxlength') && password.dirty ? 'success' : 'error'\" *ngIf=\"isNewPasswordPolicyEnabled\">Your password cannot contain your name and/or your user id.</li>\r\n <li [ngClass]=\"!password.hasError('hasCsrSpecialCharacters') && password.dirty ? 'success' : 'error'\" *ngIf=\"!loginService.isClaimant()\">At least 2 special characters from following <strong>_ &#64; * $ ! # .</strong></li>\r\n \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>25 characters</strong>.\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>25 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"] }]
469
+ }], () => [{ type: i1.UntypedFormBuilder }, { type: i2.LoginService }, { type: i3.UtilService }, { type: i4.NavController }, { type: i5.ActivatedRoute }, { type: i4.Platform }], null); })();
470
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ChangePasswordPage, { className: "ChangePasswordPage", filePath: "lib\\pages\\common\\change-password\\change-password.page.ts", lineNumber: 18 }); })();
471
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLnBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL3BhZ2VzL2NvbW1vbi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLnBhZ2UudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL3BhZ2VzL2NvbW1vbi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLnBhZ2UuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBd0MsVUFBVSxFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFHL0YsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0lDVXhDLDZCQUF5TDtJQUFBLDJDQUEyQjtJQUFBLDhCQUFRO0lBQUEsc0JBQVU7SUFBQSxpQkFBUyxFQUFBOzs7SUFBM08sa0lBQXVHOzs7SUFDM0csNkJBQXdMO0lBQUEsMkNBQTJCO0lBQUEsOEJBQVE7SUFBQSxzQkFBVTtJQUFBLGlCQUFTLEVBQUE7OztJQUExTyxrSUFBdUc7OztJQUMzRyw2QkFBNEg7SUFBQSxxQ0FBcUI7SUFBQSxpQkFBSzs7O0lBQWxKLCtHQUFtRjs7O0lBQ3ZGLDZCQUE0SDtJQUFBLHNDQUFzQjtJQUFBLGlCQUFLOzs7SUFBbkosK0dBQW1GOzs7SUFDdkYsNkJBQTJIO0lBQUEsc0NBQXNCO0lBQUEsaUJBQUs7OztJQUFs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QyxVQUFVLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFDO1lBQ3BFLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLENBQUMsY0FBYyx3Q0FBd0MsU0FBUyxDQUFDLFlBQVksTUFBTSxTQUFTLENBQUMsYUFBYSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDMUo7YUFBTTtZQUNMLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLENBQUMsV0FBVyx3Q0FBd0MsU0FBUyxDQUFDLFlBQVksTUFBTSxTQUFTLENBQUMsYUFBYSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDdko7SUFDSCxDQUFDO21GQWhLVSxrQkFBa0I7b0VBQWxCLGtCQUFrQjtZQ2pCL0Isa0NBQVk7WUFDVixnQ0FDYTtZQUNmLGlCQUFhO1lBRWIsbUNBQWEsa0JBQUEsaUJBQUEsZUFBQSxpQkFBQSxpQkFBQSxrQkFBQTtZQU9pQyxvSUFBMEI7WUFDMUQsdUVBc0ZNLHlEQUFBO1lBY1IsaUJBQVcsRUFBQSxFQUFBLEVBQUEsRUFBQSxFQUFBLEVBQUE7O1lBMUdiLGVBQTJCO1lBQTNCLDZDQUEyQjtZQU1qQixlQUFtQztZQUFuQyx3REFBbUM7WUF1Rm5DLGVBQWtDO1lBQWxDLHVEQUFrQzs7O2lGRG5GekMsa0JBQWtCO2NBTDlCLFNBQVM7MkJBQ0UscUJBQXFCOztrRkFJcEIsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQnVpbGRlciwgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdG9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBOYXZDb250cm9sbGVyLCBQbGF0Zm9ybSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IEFwcFZhbGlkYXRvcnMgfSBmcm9tICcuLi8uLi8uLi92YWxpZGF0aW9ucy9BcHBWYWxpZGF0b3JzJztcbmltcG9ydCB7IEFwcFJlZ2V4IH0gZnJvbSAnLi4vLi4vLi4vdmFsaWRhdGlvbnMvQXBwUmVnZXgnO1xuaW1wb3J0IHsgQmFzZVBhZ2UgfSBmcm9tICcuLi8uLi9CYXNlUGFnZSc7XG5pbXBvcnQgeyBVc2VyTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvVXNlck1vZGVsJztcbmltcG9ydCB7IExvZ2luU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2xvZ2luL2xvZ2luLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91dGlsL3V0aWwuc2VydmljZSc7XG5pbXBvcnQgeyBMaWJDb25zdGFudHMgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvTGliQ29uc3RhbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWNoYW5nZS1wYXNzd29yZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGFuZ2UtcGFzc3dvcmQucGFnZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hhbmdlLXBhc3N3b3JkLnBhZ2Uuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFuZ2VQYXNzd29yZFBhZ2UgZXh0ZW5kcyBCYXNlUGFnZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIGNhcHNPbiA9IGZhbHNlO1xuXG4gIGNvbW1vblZhbGlkYXRvcnMgOiBWYWxpZGF0b3JGbltdID0gW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBcHBWYWxpZGF0b3JzLm1hdGNoKEFwcFJlZ2V4LlVQUEVSX0NBU0VfUkVHRVgsIHtoYXNDYXBpdGFsQ2FzZSA6IHRydWV9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXBwVmFsaWRhdG9ycy5tYXRjaChBcHBSZWdleC5MT1dFUl9DQVNFX1JFR0VYLCB7aGFzU21hbGxDYXNlIDogdHJ1ZX0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBcHBWYWxpZGF0b3JzLm1hdGNoKEFwcFJlZ2V4Lk5VTUJFUl9SRUdFWCwge2hhc051bWJlciA6IHRydWV9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXTtcblxuICBjc3JQYXNzd29yZFZhbGlkYXRvcnMgOiBWYWxpZGF0b3JGbltdID0gW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFwcFZhbGlkYXRvcnMubWF0Y2goQXBwUmVnZXguQUdFTkNZX1NZTUJPTF9SRUdFWCwge2hhc0NzclNwZWNpYWxDaGFyYWN0ZXJzIDogdHJ1ZX0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF07XG5cbiAgY3NyQ29uZmlybVBhc3N3b3JkVmFsaWRhdG9ycyA6IFZhbGlkYXRvckZuW10gPSBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFwcFZhbGlkYXRvcnMubWF0Y2goQXBwUmVnZXguQUdFTkNZX1NZTUJPTF9SRUdFWCwge2hhc0NzclNwZWNpYWxDaGFyYWN0ZXJzIDogdHJ1ZX0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBcHBWYWxpZGF0b3JzLmVxdWFsKCdwYXNzd29yZCcsIHtub3RNYXRjaCA6IHRydWV9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgY2xhaW1hbnRQYXNzd29yZFZhbGlkYXRvcnMgOiBWYWxpZGF0b3JGbltdID0gW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBcHBWYWxpZGF0b3JzLm1hdGNoKHRoaXMuaXNTYW1lU3ltYm9sUG9saWN5Rm9yQ2xhaW1hbnRBbmRBZ2VuY3k/QXBwUmVnZXguQUdFTkNZX1NZTUJPTF9SRUdFWDpBcHBSZWdleC5DTEFJTUFOVF9TWU1CT0xfUkVHRVgsIHtoYXNDbGFpbWFudFNwZWNpYWxDaGFyYWN0ZXJzIDogdHJ1ZX0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdO1xuXG4gIGNsYWltYW50Q29uZmlybVBhc3N3b3JkVmFsaWRhdG9ycyA6IFZhbGlkYXRvckZuW10gPSBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXBwVmFsaWRhdG9ycy5tYXRjaCh0aGlzLmlzU2FtZVN5bWJvbFBvbGljeUZvckNsYWltYW50QW5kQWdlbmN5P0FwcFJlZ2V4LkFHRU5DWV9TWU1CT0xfUkVHRVg6QXBwUmVnZXguQ0xBSU1BTlRfU1lNQk9MX1JFR0VYLCB7aGFzQ2xhaW1hbnRTcGVjaWFsQ2hhcmFjdGVycyA6IHRydWV9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBcHBWYWxpZGF0b3JzLmVxdWFsKCdwYXNzd29yZCcsIHtub3RNYXRjaCA6IHRydWV9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdO1xuXG4gIHB1YmxpYyBjaGFuZ2VQd2RGb3JtIDogVW50eXBlZEZvcm1Hcm91cDtcblxuICBwdWJsaWMgaGlkZVBhc3N3b3JkID0gdHJ1ZTtcblxuICBwdWJsaWMgaGlkZUNvbmZpcm1QYXNzd29yZCA9IHRydWU7XG5cbiAgcHVibGljIGhpZGVPbGRQYXNzd29yZCA9IHRydWU7XG5cbiAgcHVibGljIHVzZXIgOiBVc2VyTW9kZWw7XG5cbiAgcHVibGljIHNob3dDaGFuZ2VQYXNzd29yZCA9ICdmYWxzZSc7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGZiIDogVW50eXBlZEZvcm1CdWlsZGVyLCBwdWJsaWMgbG9naW5TZXJ2aWNlIDogTG9naW5TZXJ2aWNlLCBcbiAgICAgICAgICAgICAgcHVibGljIHV0aWwgOiBVdGlsU2VydmljZSwgcHJpdmF0ZSBuYXY6IE5hdkNvbnRyb2xsZXIsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICAgICAgICBwcml2YXRlIHBsYXRmb3JtOiBQbGF0Zm9ybSkge1xuICAgICAgICAgICAgICAgIHN1cGVyKCk7XG4gICAgICAgICAgICAgICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5pbml0aWFsaXplQ2hhbmdlUHdkRm9ybSgpO1xuICAgIHRoaXMudXNlciA9IHRoaXMubG9naW5TZXJ2aWNlLmdldFVzZXIoKTtcbiAgICB0aGlzLnNob3dDaGFuZ2VQYXNzd29yZCA9IHRoaXMucm91dGUuc25hcHNob3QucXVlcnlQYXJhbU1hcC5nZXQoJ2NoYW5nZVB3ZCcpID8gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtTWFwLmdldCgnY2hhbmdlUHdkJykgOiAnZmFsc2UnO1xuICB9XG5cbiAgaW5pdGlhbGl6ZUNoYW5nZVB3ZEZvcm0oKXtcbiAgICB0aGlzLmNoYW5nZVB3ZEZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICdvbGRQYXNzd29yZCcgOiBbbnVsbCAsIFtdXSxcbiAgICAgICdwYXNzd29yZCc6IFtudWxsLCBbXV0sXG4gICAgICAnY29uZmlybVBhc3N3b3JkJzogW251bGwsIFtdXVxuICAgIH0pO1xuXG4gICAgdGhpcy5wYXNzd29yZC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHYgPT4ge1xuICAgICAgaWYodGhpcy5jb25maXJtUGFzc3dvcmQudmFsdWUpe1xuICAgICAgICB0aGlzLmNvbmZpcm1QYXNzd29yZC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgICB9XG4gICAgICBpZih0aGlzLm9sZFBhc3N3b3JkLnZhbHVlKXtcbiAgICAgICAgdGhpcy5vbGRQYXNzd29yZC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgXG4gICAgdGhpcy5zZXRQYXNzd29yZFZhbGlkYXRvcnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UGFzc3dvcmRWYWxpZGF0b3JzKCkge1xuICAgIGxldCB2YWxpZGF0b3JzMTogVmFsaWRhdG9yRm5bXSA9IFtdO1xuICAgIGxldCB2YWxpZGF0b3JzMjogVmFsaWRhdG9yRm5bXSA9IFtdO1xuICAgIGxldCB2YWxpZGF0b3JzMzogVmFsaWRhdG9yRm5bXSA9IFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBBcHBWYWxpZGF0b3JzLm5vdEVxdWFsKCdwYXNzd29yZCcsIHttYXRjaCA6IHRydWV9KV07XG5cbiAgICB0aGlzLmNvbW1vblZhbGlkYXRvcnMuZm9yRWFjaCh2ID0+IHZhbGlkYXRvcnMxLnB1c2godikpO1xuICAgIHRoaXMuY29tbW9uVmFsaWRhdG9ycy5mb3JFYWNoKHYgPT4gdmFsaWRhdG9yczIucHVzaCh2KSk7XG5cbiAgICBpZih0aGlzLmlzTmV3UGFzc3dvcmRQb2xpY3lFbmFibGVkKXtcbiAgICAgIHRoaXMubmV3UGFzc3dvcmRQb2xpY3lWYWxpZGF0b3JzLmZvckVhY2godiA9PiB2YWxpZGF0b3JzMS5wdXNoKHYpKTtcbiAgICAgIHRoaXMubmV3UGFzc3dvcmRQb2xpY3lWYWxpZGF0b3JzLmZvckVhY2godiA9PiB2YWxpZGF0b3JzMi5wdXNoKHYpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vbGRQYXNzd29yZFBvbGljeVZhbGlkYXRvcnMuZm9yRWFjaCh2ID0+IHZhbGlkYXRvcnMxLnB1c2godikpO1xuICAgICAgdGhpcy5vbGRQYXNzd29yZFBvbGljeVZhbGlkYXRvcnMuZm9yRWFjaCh2ID0+IHZhbGlkYXRvcnMyLnB1c2godikpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxvZ2luU2VydmljZS5pc0NzcigpKSB7XG4gICAgICB0aGlzLmNzclBhc3N3b3JkVmFsaWRhdG9ycy5mb3JFYWNoKHYgPT4gdmFsaWRhdG9yczEucHVzaCh2KSk7XG4gICAgICB0aGlzLmNzckNvbmZpcm1QYXNzd29yZFZhbGlkYXRvcnMuZm9yRWFjaCh2ID0+IHZhbGlkYXRvcnMyLnB1c2godikpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNsYWltYW50UGFzc3dvcmRWYWxpZGF0b3JzLmZvckVhY2godiA9PiB2YWxpZGF0b3JzMS5wdXNoKHYpKTtcbiAgICAgIHRoaXMuY2xhaW1hbnRDb25maXJtUGFzc3dvcmRWYWxpZGF0b3JzLmZvckVhY2godiA9PiB2YWxpZGF0b3JzMi5wdXNoKHYpKTtcbiAgICB9XG4gICAgdGhpcy51dGlsLnNldFZhbGlkYXRpb24odGhpcy5vbGRQYXNzd29yZCwgdmFsaWRhdG9yczMpO1xuICAgIHRoaXMudXRpbC5zZXRWYWxpZGF0aW9uKHRoaXMucGFzc3dvcmQsIHZhbGlkYXRvcnMxKTtcbiAgICB0aGlzLnV0aWwuc2V0VmFsaWRhdGlvbih0aGlzLmNvbmZpcm1QYXNzd29yZCwgdmFsaWRhdG9yczIpO1xuICB9XG5cbiAgZ2V0IG9sZFBhc3N3b3JkKCl7XG4gICAgcmV0dXJuIHRoaXMuY2hhbmdlUHdkRm9ybS5nZXQoJ29sZFBhc3N3b3JkJyk7XG4gIH1cblxuICBnZXQgcGFzc3dvcmQoKXtcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2VQd2RGb3JtLmdldCgncGFzc3dvcmQnKTtcbiAgfVxuXG4gIGdldCBjb25maXJtUGFzc3dvcmQoKXtcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2VQd2RGb3JtLmdldCgnY29uZmlybVBhc3N3b3JkJyk7XG4gIH1cblxuICBzYXZlKCl7XG4gICAgaWYodGhpcy5jaGFuZ2VQd2RGb3JtLmludmFsaWQpe1xuICAgICAgcmV0dXJuIDtcbiAgICB9XG4gICAgdGhpcy51dGlsLnNob3dMb2FkZXIoKVxuICAgICAgICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgIHRoaXMubG9naW5TZXJ2aWNlLnVwZGF0ZVBhc3N3b3JkKHRoaXMub2xkUGFzc3dvcmQudmFsdWUsIHRoaXMucGFzc3dvcmQudmFsdWUsIHRoaXMuY29uZmlybVBhc3N3b3JkLnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvZ2luU2VydmljZS5sb2dvdXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubmF2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm5hdmlnYXRlUm9vdCgnbG9naW4nKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnV0aWwuc3VjY2VzcygnUGFzc3dvcmQgQ2hhbmdlZCBTdWNjZXNzZnVsbHkuIFBsZWFzZSBsb2dpbiBhZ2Fpbi4nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXRpbC5oaWRlTG9hZGVyKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVyciA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnV0aWwuaGlkZUxvYWRlcigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy51dGlsLmVycm9ySGFuZGxlcihlcnIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICB9KVxuICB9XG5cbiAgcmVkaXJlY3QoKXtcbiAgICBsZXQgdXNlck1vZGVsID0gdGhpcy5sb2dpblNlcnZpY2UuZ2V0VXNlcigpO1xuICAgIGlmKHRoaXMubG9naW5TZXJ2aWNlLmlzQ2xhaW1hbnQoKSl7XG4gICAgICBjb25zdCBpc0NhcGFjaXRvciA9IHRoaXMucGxhdGZvcm0uaXMoJ2NhcGFjaXRvcicpO1xuICAgICAgaWYoaXNDYXBhY2l0b3Ipe1xuICAgICAgICB0aGlzLm5hdi5uYXZpZ2F0ZVJvb3QoXCJ3ZWxjb21lXCIpO1xuICAgICAgICB0aGlzLnV0aWwuaGlkZUxvYWRlcigpO1xuICAgICAgfSBlbHNle1xuICAgICAgICBpZihMaWJDb25zdGFudHMubGVnYWN5TWVudSA9PSAndHJ1ZScpe1xuICAgICAgICAgIHRoaXMubmF2Lm5hdmlnYXRlUm9vdChcIndlbGNvbWVcIik7XG4gICAgICAgIHRoaXMudXRpbC5oaWRlTG9hZGVyKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYoKExpYkNvbnN0YW50cy5zc29Db29raWVOYW1lICsgXCJcIikuaW5jbHVkZXMoJ1VBVCcpIHx8IChMaWJDb25zdGFudHMuc3NvQ29va2llTmFtZSArIFwiXCIpLmluY2x1ZGVzKCdQUk9EJykgKXtcbiAgICAgICAgICAgIHdpbmRvdy5vcGVuKGAke0xpYkNvbnN0YW50cy5tc3dvcmtzVXJsfWAsICdfc2VsZicpO1xuICAgICAgICAgIH1lbHNle1xuICAgICAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTlgLCAnX3NlbGYnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYodGhpcy5sb2dpblNlcnZpY2UuaXNFbXBsb3llcigpIHx8IHRoaXMubG9naW5TZXJ2aWNlLmlzVHBhKCkpe1xuICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLnRheFVybEV4dGVybmFsfS9mYWNlcy92aXJ0dWFsL2NvbnRleHRzd2l0Y2gueGh0bWw/YT0ke3VzZXJNb2RlbC5hY2Nlc3NfdG9rZW59JnI9JHt1c2VyTW9kZWwucmVmcmVzaF90b2tlbn0mdj0yMjk5YCwgJ19zZWxmJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHdpbmRvdy5vcGVuKGAke0xpYkNvbnN0YW50cy5iZW5lZml0c1VybH0vZmFjZXMvdmlydHVhbC9jb250ZXh0c3dpdGNoLnhodG1sP2E9JHt1c2VyTW9kZWwuYWNjZXNzX3Rva2VufSZyPSR7dXNlck1vZGVsLnJlZnJlc2hfdG9rZW59JnY9MjI5OWAsICdfc2VsZicpO1xuICAgIH1cbiAgfVxuXG59XG4iLCI8aW9uLWhlYWRlcj5cclxuICA8YXBwLWhlYWRlciB0aXRsZT1cIkNoYW5nZSBQYXNzd29yZFwiIHBhZ2VJZD1cIkNOR1BXRC0wMDFcIj5cclxuICA8L2FwcC1oZWFkZXI+XHJcbjwvaW9uLWhlYWRlcj5cclxuXHJcbjxpb24tY29udGVudD5cclxuICA8YXBwLWNvbnRlbnQ+XHJcbiAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImNoYW5nZVB3ZEZvcm1cIiAjY2hhbmdlUHdkRm9ybURpcmVjdGl2ZT1cIm5nRm9ybVwiPlxyXG4gICAgICA8aW9uLWdyaWQ+XHJcbiAgICAgICAgPGlvbi1yb3cgY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJpb24tanVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxyXG4gICAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJpb24tYWxpZ24tc2VsZi1jZW50ZXJcIiBzaXplLW1kPVwiNlwiIHNpemUtbGc9XCI0XCIgc2l6ZS14cz1cIjEyXCIgc2l6ZS1zbT1cIjEyXCIgc2l6ZS14bD1cIjRcIj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDxhcHAtY2FyZCB0aXRsZT1cIkNoYW5nZSBQYXNzd29yZFwiIChjYXBzTG9jayk9XCJjYXBzT249JGV2ZW50XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dDaGFuZ2VQYXNzd29yZCA9PSAnZmFsc2UnXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICBJbiBvcmRlciB0byA8c3Ryb25nPnByb3RlY3QgeW91ciBhY2NvdW50PC9zdHJvbmc+LCB5b3VyIHBhc3N3b3JkIG11c3QgaW5jbHVkZSBhdCBsZWFzdDpcclxuICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwicC1wbC0yIHAtbWwtMiBwLW10LTBcIiBzdHlsZT1cImxpbmUtaGVpZ2h0OiAxLjU7IG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IGxpc3Qtc3R5bGUtdHlwZTogc3F1YXJlO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCIhcGFzc3dvcmQuaGFzRXJyb3IoJ2hhc0NhcGl0YWxDYXNlJykgJiYgcGFzc3dvcmQuZGlydHkgID8gJ3N1Y2Nlc3MnIDogJ2Vycm9yJ1wiPjEgdXBwZXJjYXNlIGxldHRlcjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cIiFwYXNzd29yZC5oYXNFcnJvcignaGFzU21hbGxDYXNlJykgJiYgcGFzc3dvcmQuZGlydHkgID8gJ3N1Y2Nlc3MnIDogJ2Vycm9yJ1wiPjEgbG93ZXJjYXNlIGxldHRlcjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cIiFwYXNzd29yZC5oYXNFcnJvcignaGFzTnVtYmVyJykgJiYgcGFzc3dvcmQuZGlydHkgID8gJ3N1Y2Nlc3MnIDogJ2Vycm9yJ1wiPjEgbnVtYmVyPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgW25nQ2xhc3NdPVwiIXBhc3N3b3JkLmhhc0Vycm9yKCdoYXNDbGFpbWFudFNwZWNpYWxDaGFyYWN0ZXJzJykgJiYgcGFzc3dvcmQuZGlydHkgID8gJ3N1Y2Nlc3MnIDogJ2Vycm9yJ1wiICpuZ0lmPVwibG9naW5TZXJ2aWNlLmlzQ2xhaW1hbnQoKSAmJiAhaXNTYW1lU3ltYm9sUG9saWN5Rm9yQ2xhaW1hbnRBbmRBZ2VuY3lcIj4yIG9mIHRoZSBmb2xsb3dpbmcgc3ltYm9scyA8c3Ryb25nPiEmIzY0OyMkKiU8L3N0cm9uZz48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCIhcGFzc3dvcmQuaGFzRXJyb3IoJ2hhc0NsYWltYW50U3BlY2lhbENoYXJhY3RlcnMnKSAmJiBwYXNzd29yZC5kaXJ0eSAgPyAnc3VjY2VzcycgOiAnZXJyb3InXCIgKm5nSWY9XCJsb2dpblNlcnZpY2UuaXNDbGFpbWFudCgpICYmIGlzU2FtZVN5bWJvbFBvbGljeUZvckNsYWltYW50QW5kQWdlbmN5XCI+MiBvZiB0aGUgZm9sbG93aW5nIHN5bWJvbHMgPHN0cm9uZz4hJiM2NDsjJColPC9zdHJvbmc+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgW25nQ2xhc3NdPVwiIXBhc3N3b3JkLmhhc0Vycm9yKCdtaW5sZW5ndGgnKSAmJiBwYXNzd29yZC5kaXJ0eSA/ICdzdWNjZXNzJyA6ICdlcnJvcidcIiAqbmdJZj1cIiFpc05ld1Bhc3N3b3JkUG9saWN5RW5hYmxlZFwiPk1pbmltdW0gMTQgY2hhcmFjdGVyczwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cIiFwYXNzd29yZC5oYXNFcnJvcignbWF4bGVuZ3RoJykgJiYgcGFzc3dvcmQuZGlydHkgPyAnc3VjY2VzcycgOiAnZXJyb3InXCIgKm5nSWY9XCIhaXNOZXdQYXNzd29yZFBvbGljeUVuYWJsZWRcIj5NYXhpbXVtIDI1IGNoYXJhY3RlcnMuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgW25nQ2xhc3NdPVwiIXBhc3N3b3JkLmhhc0Vycm9yKCdtaW5sZW5ndGgnKSAmJiBwYXNzd29yZC5kaXJ0eSA/ICdzdWNjZXNzJyA6ICdlcnJvcidcIiAqbmdJZj1cImlzTmV3UGFzc3dvcmRQb2xpY3lFbmFibGVkXCI+TWluaW11bSAxNCBjaGFyYWN0ZXJzLjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cIiFwYXNzd29yZC5oYXNFcnJvcignbWF4bGVuZ3RoJykgJiYgcGFzc3dvcmQuZGlydHkgPyAnc3VjY2VzcycgOiAnZXJyb3InXCIgKm5nSWY9XCJpc05ld1Bhc3N3b3JkUG9saWN5RW5hYmxlZFwiPk1heGltdW0gMjUgY2hhcmFjdGVycy48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCIhcGFzc3dvcmQuaGFzRXJyb3IoJ21heGxlbmd0aCcpICYmIHBhc3N3b3JkLmRpcnR5ID8gJ3N1Y2Nlc3MnIDogJ2Vycm9yJ1wiICpuZ0lmPVwiaXNOZXdQYXNzd29yZFBvbGljeUVuYWJsZWRcIj5Zb3VyIHBhc3N3b3JkIGNhbm5vdCBjb250YWluIHlvdXIgbmFtZSBhbmQvb3IgeW91ciB1c2VyIGlkLjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cIiFwYXNzd29yZC5oYXNFcnJvcignaGFzQ3NyU3BlY2lhbENoYXJhY3RlcnMnKSAmJiBwYXNzd29yZC5kaXJ0eSAgPyAnc3VjY2VzcycgOiAnZXJyb3InXCIgKm5nSWY9XCIhbG9naW5TZXJ2aWNlLmlzQ2xhaW1hbnQoKVwiPkF0IGxlYXN0IDIgc3BlY2lhbCBjaGFyYWN0ZXJzIGZyb20gZm9sbG93aW5nIDxzdHJvbmc+XyAmIzY0OyAqICQgISAjIC48L3N0cm9uZz48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGdyaWQ7XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC1mbG9hdC1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwLXBhc3N3b3JkIFtmb3JtQ29udHJvbF09XCJvbGRQYXNzd29yZFwiIGlucHV0SWQ9XCJvbGRQYXNzd29yZFwiIFt0b2dnbGVNYXNrXT0ndHJ1ZScgW2ZlZWRiYWNrXT0nZmFsc2UnIGFwcEF1dG9mb2N1cz48L3AtcGFzc3dvcmQ+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJmbG9hdC1pbnB1dFwiPkN1cnJlbnQgUGFzc3dvcmQ8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJvbGRQYXNzd29yZC5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIEN1cnJlbnQgUGFzc3dvcmQgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwib2xkUGFzc3dvcmQuaGFzRXJyb3IoJ21hdGNoJylcIj5cclxuICAgICAgICAgICAgICAgICAgICBDdXJyZW50IFBhc3N3b3JkIHNob3VsZCBub3QgYmUgc2FtZSBhcyBOZXcgUGFzc3dvcmQuXHJcbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGdyaWQ7XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC1mbG9hdC1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwLXBhc3N3b3JkIFtmb3JtQ29udHJvbF09XCJwYXNzd29yZFwiIGlucHV0SWQ9XCJwYXNzd29yZFwiIFt0b2dnbGVNYXNrXT0ndHJ1ZScgYXBwZW5kVG89XCJib2R5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9wLXBhc3N3b3JkPiBcclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZmxvYXQtaW5wdXRcIj5OZXcgUGFzc3dvcmQ8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJwYXNzd29yZC5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIE5ldyBQYXNzd29yZCBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJwYXNzd29yZC5oYXNFcnJvcignbm90TWF0Y2gnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIE5ldyBQYXNzd29yZCBhbmQgQ29uZmlybSBQYXNzd29yZCBkaWQgbm90IG1hdGNoLlxyXG4gICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cInBhc3N3b3JkLmhhc0Vycm9yKCdtYXRjaCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQ3VycmVudCBQYXNzd29yZCBzaG91bGQgbm90IGJlIHNhbWUgYXMgTmV3IFBhc3N3b3JkLlxyXG4gICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gIFxyXG4gICAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBncmlkO1wiPlxyXG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInAtZmxvYXQtbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cC1wYXNzd29yZCBbZm9ybUNvbnRyb2xdPVwiY29uZmlybVBhc3N3b3JkXCIgaW5wdXRJZD1cImNvbmZpcm1QYXNzd29yZFwiIFt0b2dnbGVNYXNrXT0ndHJ1ZScgYXBwZW5kVG89XCJib2R5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9wLXBhc3N3b3JkPiBcclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZmxvYXQtaW5wdXRcIj5Db25maXJtIFBhc3N3b3JkPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiY29uZmlybVBhc3N3b3JkLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQ29uZmlybSBQYXNzd29yZCBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJjb25maXJtUGFzc3dvcmQuaGFzRXJyb3IoJ21pbmxlbmd0aCcpICYmIGlzTmV3UGFzc3dvcmRQb2xpY3lFbmFibGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQ29uZmlybSBQYXNzd29yZCBzaG91bGQgaGF2ZSBtaW5pbXVtIDxzdHJvbmc+MTQgY2hhcmFjdGVyczwvc3Ryb25nPi5cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJjb25maXJtUGFzc3dvcmQuaGFzRXJyb3IoJ21heGxlbmd0aCcpICYmIGlzTmV3UGFzc3dvcmRQb2xpY3lFbmFibGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgQ29uZmlybSBQYXNzd29yZCBzaG91bGQgbm90IGhhdmUgbW9yZSB0aGFuIDxzdHJvbmc+MjUgY2hhcmFjdGVyczwvc3Ryb25nPi5cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJjb25maXJtUGFzc3dvcmQuaGFzRXJyb3IoJ21pbmxlbmd0aCcpICYmICFpc05ld1Bhc3N3b3JkUG9saWN5RW5hYmxlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIENvbmZpcm0gUGFzc3dvcmQgc2hvdWxkIGhhdmUgbWluaW11bSA8c3Ryb25nPjE0IGNoYXJhY3RlcnM8L3N0cm9uZz4uXHJcbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiY29uZmlybVBhc3N3b3JkLmhhc0Vycm9yKCdtYXhsZW5ndGgnKSAmJiAhaXNOZXdQYXNzd29yZFBvbGljeUVuYWJsZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICBDb25maXJtIFBhc3N3b3JkIHNob3VsZCBub3QgaGF2ZSBtb3JlIHRoYW4gPHN0cm9uZz4yNSBjaGFyYWN0ZXJzPC9zdHJvbmc+LlxyXG4gICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImNvbmZpcm1QYXNzd29yZC5oYXNFcnJvcignbm90TWF0Y2gnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIE5ldyBQYXNzd29yZCBhbmQgQ29uZmlybSBQYXNzd29yZCBkaWQgbm90IG1hdGNoLlxyXG4gICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImNvbmZpcm1QYXNzd29yZC5oYXNFcnJvcignbWF0Y2gnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIEN1cnJlbnQgUGFzc3dvcmQgc2hvdWxkIG5vdCBiZSBzYW1lIGFzIENvbmZpcm0gUGFzc3dvcmQuXHJcbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIDxsYWJlbCAqbmdJZj1cImNhcHNPblwiIHN0eWxlPVwiY29sb3I6dmFyKC0taW9uLWNvbG9yLWRhbmdlcik7XCI+PHN0cm9uZz5DYXBzIExvY2sgaXMgT248L3N0cm9uZz48L2xhYmVsPlxyXG4gIFxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlciBpb24tcGFkZGluZy10b3BcIj5cclxuICAgICAgICAgICAgICAgICAgPGlvbi1idXR0b24gc2hhcGU9XCJyb3VuZFwiIChjbGljayk9XCJzYXZlKClcIiBjb2xvcj1cInN1Y2Nlc3NcIiB0eXBlPVwic3VibWl0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJzYXZlLW91dGxpbmVcIiBzbG90PVwic3RhcnRcIiA+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgICAgICAgICBDaGFuZ2UgUGFzc3dvcmRcclxuICAgICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dDaGFuZ2VQYXNzd29yZCA9PSAndHJ1ZSdcIiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgWW91ciBwYXNzd29yZCB3aWxsIGV4cGlyZSBpbiA8c3Ryb25nICpuZ0lmPVwidXNlclwiPnt7dXNlci5kYXlzVGlsbFBhc3N3b3JkRXhwaXJlfX08L3N0cm9uZz4gZGF5KHMpLiBDb25zaWRlciBjaGFuZ2luZyBpdCBub3cuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW9uLXRleHQtY2VudGVyIGlvbi1wYWRkaW5nLXRvcFwiPlxyXG4gICAgICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgKGNsaWNrKT1cInNob3dDaGFuZ2VQYXNzd29yZCA9ICdmYWxzZSdcIiBjb2xvcj1cInN1Y2Nlc3NcIiB0eXBlPVwic3VibWl0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJzaHVmZmxlLW91dGxpbmVcIiBzbG90PVwic3RhcnRcIiA+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgICAgICAgICBDaGFuZ2UgTm93XHJcbiAgICAgICAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPGlvbi1idXR0b24gc2hhcGU9XCJyb3VuZFwiIChjbGljayk9XCJyZWRpcmVjdCgpXCIgY29sb3I9XCJzdWNjZXNzXCIgdHlwZT1cInN1Ym1pdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiYW5hbHl0aWNzLW91dGxpbmVcIiBzbG90PVwic3RhcnRcIiA+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgICAgICAgICBEYXNoYm9hcmRcclxuICAgICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvYXBwLWNhcmQ+XHJcbiAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgPC9pb24tcm93PlxyXG4gICAgICA8L2lvbi1ncmlkPlxyXG4gICAgPC9mb3JtPlxyXG4gIDwvYXBwLWNvbnRlbnQ+XHJcbjwvaW9uLWNvbnRlbnQ+Il19