@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,1102 @@
1
+ import { afterNextRender, AfterRenderPhase, ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR, FormGroup, FormControl, Validators } from '@angular/forms';
3
+ import { ClaimAppEmpResponseModel } from '../../models/questionnaire/ClaimAppEmpResponseModel';
4
+ import { ClaimAppEmployerDetailsModel } from '../../models/questionnaire/ClaimAppEmployerDetailsModel';
5
+ import { ClaimAppEmpRequestModel } from '../../models/questionnaire/ClaimAppEmpRequestModel';
6
+ import { ClaimOnlyEmployerDataModel } from '../../models/questionnaire/ClaimOnlyEmployerDataModel';
7
+ import { EmployerWagesModel } from '../../models/questionnaire/EmployerWagesModel';
8
+ import { ComboOption } from '../../models/questionnaire/ComboModel';
9
+ import { FbConstants } from '../questionnaire/FbConstants';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@ionic/angular";
12
+ import * as i2 from "../../services/logger/logger.service";
13
+ import * as i3 from "../../services/questionnaire/validation.service";
14
+ import * as i4 from "../../services/util/util.service";
15
+ import * as i5 from "../../services/login/login.service";
16
+ import * as i6 from "@angular/router";
17
+ import * as i7 from "../../services/claims/claims.service";
18
+ import * as i8 from "@ionic/storage-angular";
19
+ import * as i9 from "@angular/common";
20
+ import * as i10 from "primeng/api";
21
+ import * as i11 from "@angular/forms";
22
+ import * as i12 from "primeng/dialog";
23
+ import * as i13 from "primeng/table";
24
+ import * as i14 from "@fortawesome/angular-fontawesome";
25
+ import * as i15 from "primeng/dropdown";
26
+ import * as i16 from "../add-employer/add-employer.component";
27
+ import * as i17 from "@ngx-translate/core";
28
+ import * as i18 from "../../pipes/trust-html/trust-html.pipe";
29
+ function EmployerGridComponent_p_table_27_ng_template_2_Template(rf, ctx) { if (rf & 1) {
30
+ i0.ɵɵelementStart(0, "tr")(1, "th", 11);
31
+ i0.ɵɵtext(2);
32
+ i0.ɵɵpipe(3, "translate");
33
+ i0.ɵɵelementEnd();
34
+ i0.ɵɵelementStart(4, "th");
35
+ i0.ɵɵtext(5);
36
+ i0.ɵɵpipe(6, "translate");
37
+ i0.ɵɵelementEnd();
38
+ i0.ɵɵelementStart(7, "th");
39
+ i0.ɵɵtext(8);
40
+ i0.ɵɵpipe(9, "translate");
41
+ i0.ɵɵelementEnd();
42
+ i0.ɵɵelementStart(10, "th");
43
+ i0.ɵɵtext(11);
44
+ i0.ɵɵpipe(12, "translate");
45
+ i0.ɵɵelementEnd();
46
+ i0.ɵɵelementStart(13, "th");
47
+ i0.ɵɵtext(14);
48
+ i0.ɵɵpipe(15, "translate");
49
+ i0.ɵɵelementEnd()();
50
+ } if (rf & 2) {
51
+ i0.ɵɵadvance(2);
52
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 5, "induction.employment.table.employer.name"), " ");
53
+ i0.ɵɵadvance(3);
54
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 7, "induction.employment.table.job.title"), " ");
55
+ i0.ɵɵadvance(3);
56
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(9, 9, "induction.employment.table.pay"), " ");
57
+ i0.ɵɵadvance(3);
58
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(12, 11, "induction.employment.table.dates"), " ");
59
+ i0.ɵɵadvance(3);
60
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(15, 13, "induction.employment.table.sep.reason"), " ");
61
+ } }
62
+ function EmployerGridComponent_p_table_27_ng_template_3_td_1_Template(rf, ctx) { if (rf & 1) {
63
+ i0.ɵɵelementStart(0, "td", 21)(1, "span", 22);
64
+ i0.ɵɵtext(2);
65
+ i0.ɵɵpipe(3, "translate");
66
+ i0.ɵɵelementEnd();
67
+ i0.ɵɵelementStart(4, "span");
68
+ i0.ɵɵtext(5);
69
+ i0.ɵɵelement(6, "br");
70
+ i0.ɵɵtext(7);
71
+ i0.ɵɵelement(8, "br");
72
+ i0.ɵɵelementEnd();
73
+ i0.ɵɵelement(9, "div", 23);
74
+ i0.ɵɵpipe(10, "trustHtml");
75
+ i0.ɵɵelementEnd();
76
+ } if (rf & 2) {
77
+ const employer_r9 = i0.ɵɵnextContext().$implicit;
78
+ i0.ɵɵadvance(2);
79
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 4, "induction.employment.employer.text"));
80
+ i0.ɵɵadvance(3);
81
+ i0.ɵɵtextInterpolate1(" ", employer_r9.employerData.displayName, "");
82
+ i0.ɵɵadvance(2);
83
+ i0.ɵɵtextInterpolate1(" ", employer_r9.employerData.tradeName, "");
84
+ i0.ɵɵadvance(2);
85
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(10, 6, employer_r9.employerData.mailingAddressDisplay), i0.ɵɵsanitizeHtml);
86
+ } }
87
+ function EmployerGridComponent_p_table_27_ng_template_3_td_2_Template(rf, ctx) { if (rf & 1) {
88
+ i0.ɵɵelementStart(0, "td", 21)(1, "span", 22);
89
+ i0.ɵɵtext(2);
90
+ i0.ɵɵpipe(3, "translate");
91
+ i0.ɵɵelementEnd();
92
+ i0.ɵɵelement(4, "span");
93
+ i0.ɵɵelementEnd();
94
+ } if (rf & 2) {
95
+ i0.ɵɵadvance(2);
96
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 1, "induction.employment.employer.text"));
97
+ } }
98
+ function EmployerGridComponent_p_table_27_ng_template_3_td_3_Template(rf, ctx) { if (rf & 1) {
99
+ i0.ɵɵelementStart(0, "td")(1, "span", 24);
100
+ i0.ɵɵtext(2);
101
+ i0.ɵɵpipe(3, "translate");
102
+ i0.ɵɵelementEnd();
103
+ i0.ɵɵelementStart(4, "span");
104
+ i0.ɵɵtext(5);
105
+ i0.ɵɵelement(6, "br");
106
+ i0.ɵɵelementEnd()();
107
+ } if (rf & 2) {
108
+ const employer_r9 = i0.ɵɵnextContext().$implicit;
109
+ i0.ɵɵadvance(2);
110
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 2, "induction.employment.employer.text"));
111
+ i0.ɵɵadvance(3);
112
+ i0.ɵɵtextInterpolate1(" ", employer_r9.serviceBranch.text, " ");
113
+ } }
114
+ const _c0 = () => ["fal", "edit"];
115
+ function EmployerGridComponent_p_table_27_ng_template_3_ion_button_5_Template(rf, ctx) { if (rf & 1) {
116
+ const _r36 = i0.ɵɵgetCurrentView();
117
+ i0.ɵɵelementStart(0, "ion-button", 25);
118
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_27_ng_template_3_ion_button_5_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r36); const employer_r9 = i0.ɵɵnextContext().$implicit; const ctx_r34 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r34.editBasePeriodEmployer(employer_r9)); });
119
+ i0.ɵɵelement(1, "fa-icon", 26);
120
+ i0.ɵɵelementEnd();
121
+ } if (rf & 2) {
122
+ i0.ɵɵadvance(1);
123
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(1, _c0));
124
+ } }
125
+ function EmployerGridComponent_p_table_27_ng_template_3_ion_button_6_Template(rf, ctx) { if (rf & 1) {
126
+ const _r39 = i0.ɵɵgetCurrentView();
127
+ i0.ɵɵelementStart(0, "ion-button", 27);
128
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_27_ng_template_3_ion_button_6_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r39); const employer_r9 = i0.ɵɵnextContext().$implicit; const ctx_r37 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r37.editEmployer(employer_r9)); });
129
+ i0.ɵɵelement(1, "fa-icon", 26);
130
+ i0.ɵɵelementEnd();
131
+ } if (rf & 2) {
132
+ i0.ɵɵadvance(1);
133
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(1, _c0));
134
+ } }
135
+ const _c1 = () => ["fal", "check-circle"];
136
+ function EmployerGridComponent_p_table_27_ng_template_3_ion_button_7_Template(rf, ctx) { if (rf & 1) {
137
+ const _r42 = i0.ɵɵgetCurrentView();
138
+ i0.ɵɵelementStart(0, "ion-button", 28);
139
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_27_ng_template_3_ion_button_7_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r42); const employer_r9 = i0.ɵɵnextContext().$implicit; const ctx_r40 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r40.finish(employer_r9)); });
140
+ i0.ɵɵelement(1, "fa-icon", 26);
141
+ i0.ɵɵelementEnd();
142
+ } if (rf & 2) {
143
+ i0.ɵɵadvance(1);
144
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(1, _c1));
145
+ } }
146
+ const _c2 = () => ["fal", "trash-alt"];
147
+ function EmployerGridComponent_p_table_27_ng_template_3_ion_button_8_Template(rf, ctx) { if (rf & 1) {
148
+ const _r45 = i0.ɵɵgetCurrentView();
149
+ i0.ɵɵelementStart(0, "ion-button", 29);
150
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_27_ng_template_3_ion_button_8_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r45); const rowIndex_r10 = i0.ɵɵnextContext().rowIndex; const ctx_r43 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r43.deleteEmployer(rowIndex_r10)); });
151
+ i0.ɵɵelement(1, "fa-icon", 26);
152
+ i0.ɵɵelementEnd();
153
+ } if (rf & 2) {
154
+ i0.ɵɵadvance(1);
155
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(1, _c2));
156
+ } }
157
+ function EmployerGridComponent_p_table_27_ng_template_3_ion_button_9_Template(rf, ctx) { if (rf & 1) {
158
+ const _r48 = i0.ɵɵgetCurrentView();
159
+ i0.ɵɵelementStart(0, "ion-button", 29);
160
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_27_ng_template_3_ion_button_9_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r48); const ctx_r47 = i0.ɵɵnextContext(); const employer_r9 = ctx_r47.$implicit; const rowIndex_r10 = ctx_r47.rowIndex; const ctx_r46 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r46.removeEmployment(employer_r9, rowIndex_r10)); });
161
+ i0.ɵɵelement(1, "fa-icon", 26);
162
+ i0.ɵɵelementEnd();
163
+ } if (rf & 2) {
164
+ i0.ɵɵadvance(1);
165
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(1, _c2));
166
+ } }
167
+ const _c3 = () => ["fal", "trash-restore-alt"];
168
+ function EmployerGridComponent_p_table_27_ng_template_3_ion_button_10_Template(rf, ctx) { if (rf & 1) {
169
+ const _r51 = i0.ɵɵgetCurrentView();
170
+ i0.ɵɵelementStart(0, "ion-button", 30);
171
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_27_ng_template_3_ion_button_10_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r51); const ctx_r50 = i0.ɵɵnextContext(); const employer_r9 = ctx_r50.$implicit; const rowIndex_r10 = ctx_r50.rowIndex; const ctx_r49 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r49.restoreEmployment(employer_r9, rowIndex_r10)); });
172
+ i0.ɵɵelement(1, "fa-icon", 26);
173
+ i0.ɵɵelementEnd();
174
+ } if (rf & 2) {
175
+ i0.ɵɵadvance(1);
176
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(1, _c3));
177
+ } }
178
+ function EmployerGridComponent_p_table_27_ng_template_3_td_11_Template(rf, ctx) { if (rf & 1) {
179
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
180
+ i0.ɵɵtext(2);
181
+ i0.ɵɵpipe(3, "translate");
182
+ i0.ɵɵelementEnd();
183
+ i0.ɵɵtext(4);
184
+ i0.ɵɵelementEnd();
185
+ } if (rf & 2) {
186
+ const employer_r9 = i0.ɵɵnextContext().$implicit;
187
+ i0.ɵɵadvance(2);
188
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 2, "induction.employment.job.title"));
189
+ i0.ɵɵadvance(2);
190
+ i0.ɵɵtextInterpolate(employer_r9.jobTileOrPosition);
191
+ } }
192
+ function EmployerGridComponent_p_table_27_ng_template_3_td_12_Template(rf, ctx) { if (rf & 1) {
193
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
194
+ i0.ɵɵtext(2);
195
+ i0.ɵɵpipe(3, "translate");
196
+ i0.ɵɵelementEnd()();
197
+ } if (rf & 2) {
198
+ i0.ɵɵadvance(2);
199
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 1, "induction.employment.job.title"));
200
+ } }
201
+ function EmployerGridComponent_p_table_27_ng_template_3_td_13_Template(rf, ctx) { if (rf & 1) {
202
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
203
+ i0.ɵɵtext(2);
204
+ i0.ɵɵpipe(3, "translate");
205
+ i0.ɵɵelementEnd();
206
+ i0.ɵɵtext(4);
207
+ i0.ɵɵelementEnd();
208
+ } if (rf & 2) {
209
+ const employer_r9 = i0.ɵɵnextContext().$implicit;
210
+ i0.ɵɵadvance(2);
211
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 2, "induction.employment.job.title"));
212
+ i0.ɵɵadvance(2);
213
+ i0.ɵɵtextInterpolate(employer_r9.fedJobTileOrPosition);
214
+ } }
215
+ function EmployerGridComponent_p_table_27_ng_template_3_td_14_Template(rf, ctx) { if (rf & 1) {
216
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
217
+ i0.ɵɵtext(2);
218
+ i0.ɵɵpipe(3, "translate");
219
+ i0.ɵɵelementEnd();
220
+ i0.ɵɵtext(4);
221
+ i0.ɵɵelementEnd();
222
+ } if (rf & 2) {
223
+ const employer_r9 = i0.ɵɵnextContext().$implicit;
224
+ i0.ɵɵadvance(2);
225
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 3, "induction.employment.job.title"));
226
+ i0.ɵɵadvance(2);
227
+ i0.ɵɵtextInterpolate2("", employer_r9.jobTileOrPosition, "", employer_r9.fedJobTileOrPosition, "");
228
+ } }
229
+ function EmployerGridComponent_p_table_27_ng_template_3_td_15_Template(rf, ctx) { if (rf & 1) {
230
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
231
+ i0.ɵɵtext(2);
232
+ i0.ɵɵpipe(3, "translate");
233
+ i0.ɵɵelementEnd();
234
+ i0.ɵɵtext(4);
235
+ i0.ɵɵpipe(5, "currency");
236
+ i0.ɵɵelementEnd();
237
+ } if (rf & 2) {
238
+ const employer_r9 = i0.ɵɵnextContext().$implicit;
239
+ i0.ɵɵadvance(2);
240
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 3, "induction.employment.pay"));
241
+ i0.ɵɵadvance(2);
242
+ i0.ɵɵtextInterpolate2("", i0.ɵɵpipeBind1(5, 5, employer_r9.payRate), "/", employer_r9.payRateFrequency.text, "");
243
+ } }
244
+ function EmployerGridComponent_p_table_27_ng_template_3_td_16_Template(rf, ctx) { if (rf & 1) {
245
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
246
+ i0.ɵɵtext(2);
247
+ i0.ɵɵpipe(3, "translate");
248
+ i0.ɵɵelementEnd()();
249
+ } if (rf & 2) {
250
+ i0.ɵɵadvance(2);
251
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 1, "induction.employment.pay"));
252
+ } }
253
+ function EmployerGridComponent_p_table_27_ng_template_3_td_17_Template(rf, ctx) { if (rf & 1) {
254
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
255
+ i0.ɵɵtext(2);
256
+ i0.ɵɵpipe(3, "translate");
257
+ i0.ɵɵelementEnd();
258
+ i0.ɵɵtext(4);
259
+ i0.ɵɵpipe(5, "date");
260
+ i0.ɵɵpipe(6, "date");
261
+ i0.ɵɵelementEnd();
262
+ } if (rf & 2) {
263
+ const employer_r9 = i0.ɵɵnextContext().$implicit;
264
+ i0.ɵɵadvance(2);
265
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 3, "induction.employment.start.and.end"));
266
+ i0.ɵɵadvance(2);
267
+ i0.ɵɵtextInterpolate2(" ", i0.ɵɵpipeBind2(5, 5, employer_r9.startDate, "M/d/yyyy"), " - ", i0.ɵɵpipeBind2(6, 8, employer_r9.endDate, "M/d/yyyy"), " ");
268
+ } }
269
+ function EmployerGridComponent_p_table_27_ng_template_3_td_18_Template(rf, ctx) { if (rf & 1) {
270
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
271
+ i0.ɵɵtext(2);
272
+ i0.ɵɵpipe(3, "translate");
273
+ i0.ɵɵelementEnd();
274
+ i0.ɵɵtext(4);
275
+ i0.ɵɵpipe(5, "date");
276
+ i0.ɵɵpipe(6, "date");
277
+ i0.ɵɵelementEnd();
278
+ } if (rf & 2) {
279
+ const employer_r9 = i0.ɵɵnextContext().$implicit;
280
+ i0.ɵɵadvance(2);
281
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 3, "induction.employment.start.and.end"));
282
+ i0.ɵɵadvance(2);
283
+ i0.ɵɵtextInterpolate2(" ", i0.ɵɵpipeBind2(5, 5, employer_r9.startDateFed, "M/d/yyyy"), " - ", i0.ɵɵpipeBind2(6, 8, employer_r9.endDateFed, "M/d/yyyy"), " ");
284
+ } }
285
+ function EmployerGridComponent_p_table_27_ng_template_3_td_19_Template(rf, ctx) { if (rf & 1) {
286
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
287
+ i0.ɵɵtext(2);
288
+ i0.ɵɵpipe(3, "translate");
289
+ i0.ɵɵelementEnd();
290
+ i0.ɵɵtext(4);
291
+ i0.ɵɵpipe(5, "date");
292
+ i0.ɵɵpipe(6, "date");
293
+ i0.ɵɵelementEnd();
294
+ } if (rf & 2) {
295
+ const employer_r9 = i0.ɵɵnextContext().$implicit;
296
+ i0.ɵɵadvance(2);
297
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 3, "induction.employment.start.and.end"));
298
+ i0.ɵɵadvance(2);
299
+ i0.ɵɵtextInterpolate2(" ", i0.ɵɵpipeBind2(5, 5, employer_r9.startDateMil, "M/d/yyyy"), " - ", i0.ɵɵpipeBind2(6, 8, employer_r9.endDateMil, "M/d/yyyy"), " ");
300
+ } }
301
+ function EmployerGridComponent_p_table_27_ng_template_3_td_20_Template(rf, ctx) { if (rf & 1) {
302
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
303
+ i0.ɵɵtext(2);
304
+ i0.ɵɵpipe(3, "translate");
305
+ i0.ɵɵelementEnd()();
306
+ } if (rf & 2) {
307
+ i0.ɵɵadvance(2);
308
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 1, "induction.employment.start.and.end"));
309
+ } }
310
+ function EmployerGridComponent_p_table_27_ng_template_3_td_21_Template(rf, ctx) { if (rf & 1) {
311
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
312
+ i0.ɵɵtext(2);
313
+ i0.ɵɵpipe(3, "translate");
314
+ i0.ɵɵelementEnd();
315
+ i0.ɵɵtext(4);
316
+ i0.ɵɵelementEnd();
317
+ } if (rf & 2) {
318
+ const employer_r9 = i0.ɵɵnextContext().$implicit;
319
+ i0.ɵɵadvance(2);
320
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 2, "induction.employment.seperation.reason"));
321
+ i0.ɵɵadvance(2);
322
+ i0.ɵɵtextInterpolate1("", employer_r9.reasonSeparation.text, " ");
323
+ } }
324
+ function EmployerGridComponent_p_table_27_ng_template_3_td_22_Template(rf, ctx) { if (rf & 1) {
325
+ i0.ɵɵelementStart(0, "td")(1, "span", 22);
326
+ i0.ɵɵtext(2);
327
+ i0.ɵɵpipe(3, "translate");
328
+ i0.ɵɵelementEnd()();
329
+ } if (rf & 2) {
330
+ i0.ɵɵadvance(2);
331
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 1, "induction.employment.seperation.reason"));
332
+ } }
333
+ function EmployerGridComponent_p_table_27_ng_template_3_Template(rf, ctx) { if (rf & 1) {
334
+ i0.ɵɵelementStart(0, "tr", 12);
335
+ i0.ɵɵtemplate(1, EmployerGridComponent_p_table_27_ng_template_3_td_1_Template, 11, 8, "td", 13)(2, EmployerGridComponent_p_table_27_ng_template_3_td_2_Template, 5, 3, "td", 13)(3, EmployerGridComponent_p_table_27_ng_template_3_td_3_Template, 7, 4, "td", 14);
336
+ i0.ɵɵelementStart(4, "td", 15);
337
+ i0.ɵɵtemplate(5, EmployerGridComponent_p_table_27_ng_template_3_ion_button_5_Template, 2, 2, "ion-button", 16)(6, EmployerGridComponent_p_table_27_ng_template_3_ion_button_6_Template, 2, 2, "ion-button", 17)(7, EmployerGridComponent_p_table_27_ng_template_3_ion_button_7_Template, 2, 2, "ion-button", 18)(8, EmployerGridComponent_p_table_27_ng_template_3_ion_button_8_Template, 2, 2, "ion-button", 19)(9, EmployerGridComponent_p_table_27_ng_template_3_ion_button_9_Template, 2, 2, "ion-button", 19)(10, EmployerGridComponent_p_table_27_ng_template_3_ion_button_10_Template, 2, 2, "ion-button", 20);
338
+ i0.ɵɵelementEnd();
339
+ i0.ɵɵtemplate(11, EmployerGridComponent_p_table_27_ng_template_3_td_11_Template, 5, 4, "td", 14)(12, EmployerGridComponent_p_table_27_ng_template_3_td_12_Template, 4, 3, "td", 14)(13, EmployerGridComponent_p_table_27_ng_template_3_td_13_Template, 5, 4, "td", 14)(14, EmployerGridComponent_p_table_27_ng_template_3_td_14_Template, 5, 5, "td", 14)(15, EmployerGridComponent_p_table_27_ng_template_3_td_15_Template, 6, 7, "td", 14)(16, EmployerGridComponent_p_table_27_ng_template_3_td_16_Template, 4, 3, "td", 14)(17, EmployerGridComponent_p_table_27_ng_template_3_td_17_Template, 7, 11, "td", 14)(18, EmployerGridComponent_p_table_27_ng_template_3_td_18_Template, 7, 11, "td", 14)(19, EmployerGridComponent_p_table_27_ng_template_3_td_19_Template, 7, 11, "td", 14)(20, EmployerGridComponent_p_table_27_ng_template_3_td_20_Template, 4, 3, "td", 14)(21, EmployerGridComponent_p_table_27_ng_template_3_td_21_Template, 5, 4, "td", 14)(22, EmployerGridComponent_p_table_27_ng_template_3_td_22_Template, 4, 3, "td", 14);
340
+ i0.ɵɵelementEnd();
341
+ } if (rf & 2) {
342
+ const employer_r9 = ctx.$implicit;
343
+ i0.ɵɵproperty("ngClass", employer_r9.empDeleted == "Y" ? "strikethrough" : null);
344
+ i0.ɵɵadvance(1);
345
+ i0.ɵɵproperty("ngIf", (employer_r9.employerData.tradeName || employer_r9.employerData.displayName) && employer_r9.employerType != "MIL");
346
+ i0.ɵɵadvance(1);
347
+ i0.ɵɵproperty("ngIf", !employer_r9.employerData.displayName && employer_r9.employerType != "MIL");
348
+ i0.ɵɵadvance(1);
349
+ i0.ɵɵproperty("ngIf", employer_r9.employerType === "MIL");
350
+ i0.ɵɵadvance(2);
351
+ i0.ɵɵproperty("ngIf", employer_r9.bpEmployerFlag === "1" && employer_r9.payRate && employer_r9.startDate && employer_r9.empDeleted != "Y");
352
+ i0.ɵɵadvance(1);
353
+ i0.ɵɵproperty("ngIf", employer_r9.bpEmployerFlag === "0");
354
+ i0.ɵɵadvance(1);
355
+ i0.ɵɵproperty("ngIf", employer_r9.bpEmployerFlag === "1" && !employer_r9.payRate && !employer_r9.startDate && employer_r9.empDeleted != "Y");
356
+ i0.ɵɵadvance(1);
357
+ i0.ɵɵproperty("ngIf", employer_r9.bpEmployerFlag === "0");
358
+ i0.ɵɵadvance(1);
359
+ i0.ɵɵproperty("ngIf", employer_r9.bpEmployerFlag === "1" && employer_r9.empDeleted != "Y");
360
+ i0.ɵɵadvance(1);
361
+ i0.ɵɵproperty("ngIf", employer_r9.bpEmployerFlag === "1" && employer_r9.empDeleted == "Y");
362
+ i0.ɵɵadvance(1);
363
+ i0.ɵɵproperty("ngIf", employer_r9.jobTileOrPosition && !employer_r9.fedJobTileOrPosition);
364
+ i0.ɵɵadvance(1);
365
+ i0.ɵɵproperty("ngIf", !employer_r9.jobTileOrPosition && !employer_r9.fedJobTileOrPosition);
366
+ i0.ɵɵadvance(1);
367
+ i0.ɵɵproperty("ngIf", !employer_r9.jobTileOrPosition && employer_r9.fedJobTileOrPosition);
368
+ i0.ɵɵadvance(1);
369
+ i0.ɵɵproperty("ngIf", employer_r9.jobTileOrPosition && employer_r9.fedJobTileOrPosition);
370
+ i0.ɵɵadvance(1);
371
+ i0.ɵɵproperty("ngIf", employer_r9.payRate);
372
+ i0.ɵɵadvance(1);
373
+ i0.ɵɵproperty("ngIf", !employer_r9.payRate);
374
+ i0.ɵɵadvance(1);
375
+ i0.ɵɵproperty("ngIf", employer_r9.employerType === "REG");
376
+ i0.ɵɵadvance(1);
377
+ i0.ɵɵproperty("ngIf", employer_r9.employerType === "FED");
378
+ i0.ɵɵadvance(1);
379
+ i0.ɵɵproperty("ngIf", employer_r9.employerType === "MIL");
380
+ i0.ɵɵadvance(1);
381
+ i0.ɵɵproperty("ngIf", !employer_r9.startDate && !employer_r9.startDateFed && !employer_r9.startDateMil);
382
+ i0.ɵɵadvance(1);
383
+ i0.ɵɵproperty("ngIf", employer_r9.employerType != "MIL" && employer_r9.reasonSeparation);
384
+ i0.ɵɵadvance(1);
385
+ i0.ɵɵproperty("ngIf", employer_r9.employerType === "MIL" && !employer_r9.reasonSeparation);
386
+ } }
387
+ const _c4 = () => ["fal", "plus"];
388
+ function EmployerGridComponent_p_table_27_ng_template_4_Template(rf, ctx) { if (rf & 1) {
389
+ const _r62 = i0.ɵɵgetCurrentView();
390
+ i0.ɵɵelementStart(0, "table")(1, "tr")(2, "td", 31);
391
+ i0.ɵɵelement(3, "div", 2);
392
+ i0.ɵɵpipe(4, "trustHtml");
393
+ i0.ɵɵpipe(5, "translate");
394
+ i0.ɵɵelementEnd();
395
+ i0.ɵɵelementStart(6, "td", 32)(7, "ion-button", 33);
396
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_27_ng_template_4_Template_ion_button_click_7_listener() { i0.ɵɵrestoreView(_r62); const ctx_r61 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r61.addNewEmpDetails()); });
397
+ i0.ɵɵelement(8, "fa-icon", 26);
398
+ i0.ɵɵelementEnd()();
399
+ i0.ɵɵelementStart(9, "td", 34);
400
+ i0.ɵɵtext(10, "\u00A0");
401
+ i0.ɵɵelementEnd()()();
402
+ } if (rf & 2) {
403
+ i0.ɵɵadvance(2);
404
+ i0.ɵɵattribute("colspan", 2);
405
+ i0.ɵɵadvance(1);
406
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(4, 4, i0.ɵɵpipeBind1(5, 6, "induction.employment.footer.label")), i0.ɵɵsanitizeHtml);
407
+ i0.ɵɵadvance(4);
408
+ i0.ɵɵproperty("id", "btnAddEmployer");
409
+ i0.ɵɵadvance(1);
410
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(8, _c4));
411
+ } }
412
+ function EmployerGridComponent_p_table_27_Template(rf, ctx) { if (rf & 1) {
413
+ i0.ɵɵelementStart(0, "p-table", 6, 7);
414
+ i0.ɵɵtemplate(2, EmployerGridComponent_p_table_27_ng_template_2_Template, 16, 15, "ng-template", 8)(3, EmployerGridComponent_p_table_27_ng_template_3_Template, 23, 22, "ng-template", 9)(4, EmployerGridComponent_p_table_27_ng_template_4_Template, 11, 9, "ng-template", 10);
415
+ i0.ɵɵelementEnd();
416
+ } if (rf & 2) {
417
+ const ctx_r0 = i0.ɵɵnextContext();
418
+ i0.ɵɵproperty("columns", ctx_r0.cols)("value", ctx_r0.claimAppEmpResponseModelFromService.bpEmpList)("loading", ctx_r0.showProgressBar)("rowHover", true);
419
+ } }
420
+ function EmployerGridComponent_app_add_employer_28_Template(rf, ctx) { if (rf & 1) {
421
+ const _r64 = i0.ɵɵgetCurrentView();
422
+ i0.ɵɵelementStart(0, "app-add-employer", 35);
423
+ i0.ɵɵlistener("success", function EmployerGridComponent_app_add_employer_28_Template_app_add_employer_success_0_listener($event) { i0.ɵɵrestoreView(_r64); const ctx_r63 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r63.addEmployer($event)); })("basePeriodIndex", function EmployerGridComponent_app_add_employer_28_Template_app_add_employer_basePeriodIndex_0_listener($event) { i0.ɵɵrestoreView(_r64); const ctx_r65 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r65.deleteBpEmpl($event)); })("modelCancel", function EmployerGridComponent_app_add_employer_28_Template_app_add_employer_modelCancel_0_listener($event) { i0.ɵɵrestoreView(_r64); const ctx_r66 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r66.onModelCancel($event)); });
424
+ i0.ɵɵelementEnd();
425
+ } if (rf & 2) {
426
+ const ctx_r1 = i0.ɵɵnextContext();
427
+ i0.ɵɵproperty("recordIndexToEdit", ctx_r1.indexToEdit)("isBasePeriodEmployer", ctx_r1.isBasePeriodEmployer)("isNewClaim", ctx_r1.isNewClaim)("dob", ctx_r1.claimantDob)("noEditMode", ctx_r1.noEditMode);
428
+ } }
429
+ function EmployerGridComponent_p_dialog_29_ng_template_51_Template(rf, ctx) { if (rf & 1) {
430
+ const _r69 = i0.ɵɵgetCurrentView();
431
+ i0.ɵɵelementStart(0, "ion-button", 40);
432
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_dialog_29_ng_template_51_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r69); const ctx_r68 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r68.close()); });
433
+ i0.ɵɵtext(1);
434
+ i0.ɵɵpipe(2, "translate");
435
+ i0.ɵɵelementEnd();
436
+ i0.ɵɵelementStart(3, "ion-button", 41);
437
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_dialog_29_ng_template_51_Template_ion_button_click_3_listener() { i0.ɵɵrestoreView(_r69); const ctx_r70 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r70.displayBpEmpConfirmation()); });
438
+ i0.ɵɵtext(4);
439
+ i0.ɵɵpipe(5, "translate");
440
+ i0.ɵɵelementEnd();
441
+ } if (rf & 2) {
442
+ i0.ɵɵadvance(1);
443
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, "induction.employment.grid.popup.cancel"), " ");
444
+ i0.ɵɵadvance(3);
445
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 4, "induction.employment.grid.popup.remove"), " ");
446
+ } }
447
+ const _c5 = () => ({ width: "45vw" });
448
+ const _c6 = () => ({ "1200px": "660px", "992px": "660px", "768px": "660px", "576px": "100vw" });
449
+ function EmployerGridComponent_p_dialog_29_Template(rf, ctx) { if (rf & 1) {
450
+ i0.ɵɵelementStart(0, "p-dialog", 36)(1, "h4", 37);
451
+ i0.ɵɵtext(2);
452
+ i0.ɵɵpipe(3, "translate");
453
+ i0.ɵɵelementEnd();
454
+ i0.ɵɵelementStart(4, "ion-label");
455
+ i0.ɵɵtext(5);
456
+ i0.ɵɵelementEnd();
457
+ i0.ɵɵelement(6, "br");
458
+ i0.ɵɵelementStart(7, "ion-label");
459
+ i0.ɵɵtext(8);
460
+ i0.ɵɵelementEnd();
461
+ i0.ɵɵelementStart(9, "ion-label");
462
+ i0.ɵɵelement(10, "div", 23);
463
+ i0.ɵɵpipe(11, "trustHtml");
464
+ i0.ɵɵelementEnd();
465
+ i0.ɵɵelement(12, "br");
466
+ i0.ɵɵelementStart(13, "ion-label", 38);
467
+ i0.ɵɵtext(14);
468
+ i0.ɵɵpipe(15, "translate");
469
+ i0.ɵɵelementEnd();
470
+ i0.ɵɵelement(16, "br")(17, "br");
471
+ i0.ɵɵelementStart(18, "ion-label")(19, "b");
472
+ i0.ɵɵtext(20);
473
+ i0.ɵɵpipe(21, "translate");
474
+ i0.ɵɵelementEnd()();
475
+ i0.ɵɵelement(22, "br");
476
+ i0.ɵɵelementStart(23, "ion-label");
477
+ i0.ɵɵtext(24);
478
+ i0.ɵɵpipe(25, "translate");
479
+ i0.ɵɵelementEnd();
480
+ i0.ɵɵelement(26, "br")(27, "br");
481
+ i0.ɵɵelementStart(28, "ion-label")(29, "b");
482
+ i0.ɵɵtext(30);
483
+ i0.ɵɵpipe(31, "translate");
484
+ i0.ɵɵelementEnd()();
485
+ i0.ɵɵelement(32, "br");
486
+ i0.ɵɵelementStart(33, "ion-label");
487
+ i0.ɵɵtext(34);
488
+ i0.ɵɵpipe(35, "translate");
489
+ i0.ɵɵelementEnd();
490
+ i0.ɵɵelement(36, "br")(37, "br");
491
+ i0.ɵɵelementStart(38, "ion-label")(39, "b");
492
+ i0.ɵɵtext(40);
493
+ i0.ɵɵpipe(41, "translate");
494
+ i0.ɵɵelementEnd()();
495
+ i0.ɵɵelement(42, "br");
496
+ i0.ɵɵelementStart(43, "ion-label");
497
+ i0.ɵɵtext(44);
498
+ i0.ɵɵpipe(45, "translate");
499
+ i0.ɵɵelementEnd();
500
+ i0.ɵɵelement(46, "br")(47, "br");
501
+ i0.ɵɵelementStart(48, "ion-label");
502
+ i0.ɵɵtext(49);
503
+ i0.ɵɵpipe(50, "translate");
504
+ i0.ɵɵelementEnd();
505
+ i0.ɵɵtemplate(51, EmployerGridComponent_p_dialog_29_ng_template_51_Template, 6, 6, "ng-template", 39);
506
+ i0.ɵɵelementEnd();
507
+ } if (rf & 2) {
508
+ const ctx_r2 = i0.ɵɵnextContext();
509
+ i0.ɵɵstyleMap(i0.ɵɵpureFunction0(40, _c5));
510
+ i0.ɵɵproperty("visible", ctx_r2.showConfirmPopup)("modal", true)("breakpoints", i0.ɵɵpureFunction0(41, _c6))("baseZIndex", 5000)("draggable", false)("resizable", false);
511
+ i0.ɵɵadvance(2);
512
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 20, "induction.employment.grid.popup.heading"));
513
+ i0.ɵɵadvance(3);
514
+ i0.ɵɵtextInterpolate(ctx_r2.selectedEmployer.employerData.displayName);
515
+ i0.ɵɵadvance(3);
516
+ i0.ɵɵtextInterpolate(ctx_r2.selectedEmployer.employerData.tradeName);
517
+ i0.ɵɵadvance(2);
518
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(11, 22, ctx_r2.selectedEmployer.employerData.mailingAddressDisplay), i0.ɵɵsanitizeHtml);
519
+ i0.ɵɵadvance(4);
520
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(15, 24, "induction.employment.grid.popup.failure.label"), " ");
521
+ i0.ɵɵadvance(6);
522
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(21, 26, "induction.employment.grid.popup.text1.q.label"));
523
+ i0.ɵɵadvance(4);
524
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(25, 28, "induction.employment.grid.popup.text1.a.label"), " ");
525
+ i0.ɵɵadvance(6);
526
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(31, 30, "induction.employment.grid.popup.text2.q.label"));
527
+ i0.ɵɵadvance(4);
528
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(35, 32, "induction.employment.grid.popup.text2.a.label"), " ");
529
+ i0.ɵɵadvance(6);
530
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(41, 34, "induction.employment.grid.popup.text3.q.label"));
531
+ i0.ɵɵadvance(4);
532
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(45, 36, "induction.employment.grid.popup.text3.a.label"), " ");
533
+ i0.ɵɵadvance(5);
534
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(50, 38, "induction.employment.grid.popup.didnt.work.label"), " ");
535
+ } }
536
+ function EmployerGridComponent_p_dialog_30_div_7_small_7_Template(rf, ctx) { if (rf & 1) {
537
+ i0.ɵɵelementStart(0, "small", 46);
538
+ i0.ɵɵtext(1);
539
+ i0.ɵɵpipe(2, "translate");
540
+ i0.ɵɵelementEnd();
541
+ } if (rf & 2) {
542
+ i0.ɵɵadvance(1);
543
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 1, "induction.employment.grid.delete.bpemployer.popup.field.required"), " ");
544
+ } }
545
+ function EmployerGridComponent_p_dialog_30_div_7_Template(rf, ctx) { if (rf & 1) {
546
+ i0.ɵɵelementStart(0, "div")(1, "label", 43);
547
+ i0.ɵɵtext(2);
548
+ i0.ɵɵpipe(3, "translate");
549
+ i0.ɵɵelementEnd();
550
+ i0.ɵɵelement(4, "br")(5, "textarea", 44);
551
+ i0.ɵɵpipe(6, "translate");
552
+ i0.ɵɵtemplate(7, EmployerGridComponent_p_dialog_30_div_7_small_7_Template, 3, 3, "small", 45);
553
+ i0.ɵɵelementStart(8, "small");
554
+ i0.ɵɵtext(9);
555
+ i0.ɵɵpipe(10, "translate");
556
+ i0.ɵɵelementEnd()();
557
+ } if (rf & 2) {
558
+ const ctx_r71 = i0.ɵɵnextContext(2);
559
+ let tmp_2_0;
560
+ i0.ɵɵadvance(2);
561
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 4, "induction.employment.grid.delete.bpemployer.popup.reason.selecting"), " ");
562
+ i0.ɵɵadvance(3);
563
+ i0.ɵɵpropertyInterpolate("placeholder", i0.ɵɵpipeBind1(6, 6, "induction.employment.grid.delete.bpemployer.popup.explain.reason"));
564
+ i0.ɵɵadvance(2);
565
+ i0.ɵɵproperty("ngIf", ((tmp_2_0 = ctx_r71.form.get("otherComment")) == null ? null : tmp_2_0.invalid) && ((tmp_2_0 = ctx_r71.form.get("otherComment")) == null ? null : tmp_2_0.touched));
566
+ i0.ɵɵadvance(2);
567
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(10, 8, "induction.employment.grid.delete.bpemployer.popup.maxlength.250"), " ");
568
+ } }
569
+ function EmployerGridComponent_p_dialog_30_ng_template_8_Template(rf, ctx) { if (rf & 1) {
570
+ const _r75 = i0.ɵɵgetCurrentView();
571
+ i0.ɵɵelementStart(0, "ion-button", 40);
572
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_dialog_30_ng_template_8_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r75); const ctx_r74 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r74.close()); });
573
+ i0.ɵɵtext(1);
574
+ i0.ɵɵpipe(2, "translate");
575
+ i0.ɵɵelementEnd();
576
+ i0.ɵɵelementStart(3, "ion-button", 47);
577
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_dialog_30_ng_template_8_Template_ion_button_click_3_listener() { i0.ɵɵrestoreView(_r75); const ctx_r76 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r76.removeBasePeriodEmployer()); });
578
+ i0.ɵɵtext(4);
579
+ i0.ɵɵpipe(5, "translate");
580
+ i0.ɵɵelementEnd();
581
+ } if (rf & 2) {
582
+ const ctx_r72 = i0.ɵɵnextContext(2);
583
+ i0.ɵɵadvance(1);
584
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 3, "induction.employment.grid.delete.bpemployer.popup.cancel"), " ");
585
+ i0.ɵɵadvance(2);
586
+ i0.ɵɵproperty("disabled", ctx_r72.form.invalid);
587
+ i0.ɵɵadvance(1);
588
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 5, "induction.employment.grid.delete.bpemployer.popup.remove"), " ");
589
+ } }
590
+ function EmployerGridComponent_p_dialog_30_Template(rf, ctx) { if (rf & 1) {
591
+ const _r78 = i0.ɵɵgetCurrentView();
592
+ i0.ɵɵelementStart(0, "p-dialog", 36)(1, "h4", 37);
593
+ i0.ɵɵtext(2);
594
+ i0.ɵɵpipe(3, "translate");
595
+ i0.ɵɵelementEnd();
596
+ i0.ɵɵelement(4, "br");
597
+ i0.ɵɵelementStart(5, "p-dropdown", 42);
598
+ i0.ɵɵlistener("ngModelChange", function EmployerGridComponent_p_dialog_30_Template_p_dropdown_ngModelChange_5_listener($event) { i0.ɵɵrestoreView(_r78); const ctx_r77 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r77.selectedOption = $event); })("onChange", function EmployerGridComponent_p_dialog_30_Template_p_dropdown_onChange_5_listener($event) { i0.ɵɵrestoreView(_r78); const ctx_r79 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r79.onDropdownChange($event)); });
599
+ i0.ɵɵpipe(6, "translate");
600
+ i0.ɵɵelementEnd();
601
+ i0.ɵɵtemplate(7, EmployerGridComponent_p_dialog_30_div_7_Template, 11, 10, "div", 14)(8, EmployerGridComponent_p_dialog_30_ng_template_8_Template, 6, 7, "ng-template", 39);
602
+ i0.ɵɵelementEnd();
603
+ } if (rf & 2) {
604
+ const ctx_r3 = i0.ɵɵnextContext();
605
+ i0.ɵɵstyleMap(i0.ɵɵpureFunction0(18, _c5));
606
+ i0.ɵɵproperty("visible", ctx_r3.showbpEmpDelPopup)("modal", true)("breakpoints", i0.ɵɵpureFunction0(19, _c6))("baseZIndex", 5000)("draggable", false)("resizable", false);
607
+ i0.ɵɵadvance(2);
608
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 14, "induction.employment.grid.delete.bpemployer.popup.heading"));
609
+ i0.ɵɵadvance(3);
610
+ i0.ɵɵpropertyInterpolate("placeholder", i0.ɵɵpipeBind1(6, 16, "induction.employment.grid.delete.bpemployer.popup.heading.placeholder"));
611
+ i0.ɵɵproperty("options", ctx_r3.bpEmpDelOptions)("ngModel", ctx_r3.selectedOption)("autoDisplayFirst", false);
612
+ i0.ɵɵadvance(2);
613
+ i0.ɵɵproperty("ngIf", ctx_r3.showCommentBox);
614
+ } }
615
+ export class EmployerGridComponent {
616
+ constructor(popup, logger, validationService, navController, util, ls, activatedRoute, claimsService, storage) {
617
+ this.popup = popup;
618
+ this.logger = logger;
619
+ this.validationService = validationService;
620
+ this.navController = navController;
621
+ this.util = util;
622
+ this.ls = ls;
623
+ this.activatedRoute = activatedRoute;
624
+ this.claimsService = claimsService;
625
+ this.storage = storage;
626
+ this.claimAppEmpResponseModelFromService = new ClaimAppEmpResponseModel();
627
+ this.modelDisplay = new EventEmitter();
628
+ this.onComplete = new EventEmitter();
629
+ this.modelDataPass = new EventEmitter();
630
+ this.claimdetailModel = new ClaimAppEmployerDetailsModel();
631
+ this.caimAppEmpResponseModel = new ClaimAppEmpResponseModel();
632
+ this.isBasePeriodEmployer = false;
633
+ this.isNewClaim = false;
634
+ this.showConfirmPopup = false;
635
+ this.showbpEmpDelPopup = false;
636
+ this.showProgressBar = false;
637
+ this.uuid = null;
638
+ this.dischargeReasonOptionsAll = [];
639
+ this.volQuitReasonOptionsAll = [];
640
+ this.employmentStatusOptionsAll = [];
641
+ this.payRateOptions = [];
642
+ this.countryOptions = [];
643
+ this.workCountryOptions = [];
644
+ this.statesOptions = [];
645
+ this.militaryServiceOptions = [];
646
+ this.showCommentBox = false;
647
+ this.bpEmpDelOptions = [];
648
+ this.onChange = (value) => {
649
+ };
650
+ this.onTouch = () => {
651
+ };
652
+ afterNextRender(() => {
653
+ document.querySelectorAll('p-table table').forEach(e => {
654
+ e.setAttribute('role', 'presentation');
655
+ });
656
+ document.querySelectorAll('p-selectbutton div div').forEach(el => {
657
+ el.removeAttribute('aria-labelledby');
658
+ el.removeAttribute('aria-pressed');
659
+ });
660
+ }, { phase: AfterRenderPhase.Write });
661
+ }
662
+ loadMasterData() {
663
+ this.claimsService.loadMasterData();
664
+ this.claimsService.getReasonSeparation().subscribe(value => {
665
+ value.forEach(arr => this.employmentStatusOptionsAll.push(arr));
666
+ });
667
+ this.claimsService.getDischargeReasons().subscribe(value => {
668
+ value.forEach(arr => this.dischargeReasonOptionsAll.push(arr));
669
+ });
670
+ this.claimsService.getQuitReasons().subscribe(value => {
671
+ value.forEach(arr => this.volQuitReasonOptionsAll.push(arr));
672
+ });
673
+ }
674
+ ngOnInit() {
675
+ this.logger.debug('ng onit of employer grid');
676
+ this.loadMasterData();
677
+ if (localStorage.getItem("language") === "es") {
678
+ this.payRateOptions = ComboOption.PAY_PERIOD_ES;
679
+ this.countryOptions = ComboOption.COUNTRY_ES;
680
+ this.workCountryOptions = ComboOption.WORK_COUNTRY_ES;
681
+ this.statesOptions = ComboOption.US_STATES_ES;
682
+ this.militaryServiceOptions = ComboOption.MILITARY_SERVICE_ES;
683
+ this.bpEmpDelOptions = ComboOption.BP_EMP_DEL_OPTS_ES;
684
+ }
685
+ else {
686
+ this.payRateOptions = ComboOption.PAY_PERIOD;
687
+ this.countryOptions = ComboOption.COUNTRY;
688
+ this.workCountryOptions = ComboOption.WORK_COUNTRY;
689
+ this.statesOptions = ComboOption.US_STATES;
690
+ this.militaryServiceOptions = ComboOption.MILITARY_SERVICE;
691
+ this.bpEmpDelOptions = ComboOption.BP_EMP_DEL_OPTS;
692
+ }
693
+ this.cols = [
694
+ { field: 'employer', header: 'Employer' },
695
+ { field: 'jobTitle', header: 'Job Title' },
696
+ { field: 'Pay', header: 'Pay' },
697
+ { field: 'startEndDate', header: 'Start and End' },
698
+ { field: 'separationReason', header: 'Separation Reason' },
699
+ { field: '', header: '' }
700
+ ];
701
+ this.form = new FormGroup({
702
+ selectedDropdown: new FormControl(null, Validators.required),
703
+ otherComment: new FormControl('', Validators.required)
704
+ });
705
+ if (this.validationService.bpEmpLstFrmService) {
706
+ this.validationService.bpEmpLstFrmService.subscribe(res => {
707
+ if (res) {
708
+ this.claimAppEmpResponseModelFromService = res.valueOf();
709
+ if (this.claimAppEmpResponseModelFromService && this.claimAppEmpResponseModelFromService.isNewClaimApplication) {
710
+ this.isNewClaim = this.claimAppEmpResponseModelFromService.isNewClaimApplication.valueOf();
711
+ this.claimantDob = new Date(this.claimAppEmpResponseModelFromService.dateOfBirth.replace("-", "/").replace("-", "/"));
712
+ }
713
+ }
714
+ });
715
+ }
716
+ }
717
+ onDropdownChange(event) {
718
+ this.selectedOption = event.value;
719
+ this.showCommentBox = (this.selectedOption === 'Other' || this.selectedOption === 'Otro'); // Check if 'other' is selected
720
+ if (this.showCommentBox) {
721
+ this.form.get('otherComment')?.setValidators(Validators.required);
722
+ }
723
+ else {
724
+ this.form.get('otherComment')?.clearValidators();
725
+ }
726
+ this.form.get('otherComment')?.updateValueAndValidity();
727
+ }
728
+ async addNewEmpDetails() {
729
+ this.display = true;
730
+ this.isBasePeriodEmployer = false;
731
+ this.noEditMode = false;
732
+ this.modelDisplay.emit(true);
733
+ }
734
+ writeValue(value) {
735
+ if (value) {
736
+ this.validationService.bpEmpLstFrmService.next(value);
737
+ }
738
+ else {
739
+ this.setupEmployer();
740
+ }
741
+ }
742
+ registerOnChange(fn) {
743
+ this.onChange = fn;
744
+ this.validationService.bpEmpLstFrmService.subscribe(fn);
745
+ }
746
+ registerOnTouched(fn) {
747
+ this.onTouch = fn;
748
+ }
749
+ async getIdentifier() {
750
+ let uuid;
751
+ let data = this.activatedRoute.snapshot.queryParamMap.get('identifier');
752
+ this.logger.debug("data for identifier is : ", data);
753
+ if (data) {
754
+ uuid = data;
755
+ }
756
+ else {
757
+ uuid = await this.storage.get(FbConstants.uuid);
758
+ }
759
+ return uuid;
760
+ }
761
+ async setupEmployer() {
762
+ let model = new ClaimAppEmpRequestModel();
763
+ if (!this.validationService.bpEmpLstFrmService.getValue()) {
764
+ this.uuid = await this.getIdentifier();
765
+ this.logger.debug('uuid is ====', this.uuid);
766
+ let url = "";
767
+ if (this.ls.isClaimant() === true) {
768
+ url = "/claims-service/claim/claimant/app/bpemployers";
769
+ let processtype = this.activatedRoute.snapshot.queryParamMap.get('processtype');
770
+ if (processtype === 'aic-reopen') {
771
+ this.storage.remove(FbConstants.uuid);
772
+ model.flowFrom = "Aic-Reopen-flow";
773
+ }
774
+ else if (localStorage.getItem("flowKey") == '600') {
775
+ model.flowFrom = "Aic-Reopen-flow";
776
+ }
777
+ }
778
+ else {
779
+ let data = this.activatedRoute.snapshot.queryParamMap.get('key');
780
+ if (data) {
781
+ this.ssnForCSR = JSON.parse(atob(data));
782
+ model.ssn = this.ssnForCSR;
783
+ }
784
+ url = "/claims-service/claim/app/bpemployers";
785
+ }
786
+ this.logger.info('the uuid used in model is : ', this.uuid);
787
+ if (model.flowFrom === 'Aic-Reopen-flow') {
788
+ this.logger.info("Inside aic reopen flow");
789
+ this.fetchEmployersFromBackEnd(model, url);
790
+ }
791
+ else if (this.uuid) {
792
+ this.logger.info("Inside getting values based on uuid");
793
+ model.uuid = this.uuid;
794
+ this.fetchEmployersFromBackEnd(model, url);
795
+ }
796
+ else {
797
+ this.logger.info("Keep waiting....uuid not found..");
798
+ }
799
+ }
800
+ }
801
+ fetchEmployersFromBackEnd(model, url) {
802
+ this.showProgressBar = true;
803
+ this.validationService.post(url, model).subscribe(res => {
804
+ if (res.bpEmpList.length > 0) {
805
+ res.bpEmpList.forEach(emp => this.setChoiseModels(emp));
806
+ }
807
+ this.validationService.bpEmpLstFrmService.next(res);
808
+ this.onComplete.emit(this.validationService.bpEmpLstFrmService.getValue());
809
+ this.onChange(this.validationService.bpEmpLstFrmService.getValue());
810
+ this.logger.debug('employer List from Service', this.validationService.bpEmpLstFrmService.getValue());
811
+ this.showProgressBar = false;
812
+ }, err => {
813
+ let list = new ClaimAppEmpResponseModel();
814
+ this.validationService.bpEmpLstFrmService.next(list);
815
+ this.showProgressBar = false;
816
+ });
817
+ }
818
+ deleteBpEmpl(event) {
819
+ this.logger.debug('Delete method called ', event);
820
+ this.claimAppEmpResponseModelFromService.bpEmpList.splice(event, 1);
821
+ }
822
+ deleteEmployer(elementIndex) {
823
+ this.logger.debug('Delete method called for = ', elementIndex);
824
+ this.isBasePeriodEmployer = false;
825
+ //this.claimAppEmpResponseModelFromService.bpEmpList[elementIndex].empDeleted = "Y";
826
+ this.claimAppEmpResponseModelFromService.bpEmpList.splice(elementIndex, 1);
827
+ this.logger.debug('After delete list is = ', this.claimAppEmpResponseModelFromService);
828
+ }
829
+ deleteEmployerBasePeriod(elementIndex) {
830
+ this.logger.debug('Delete method base period employer called for = ', elementIndex);
831
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[elementIndex].workFlag = "N";
832
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[elementIndex].empDeleted = "Y";
833
+ const bpDelReason = this.selectedOption + " " + (this.showCommentBox ? "- " + this.form.get('otherComment')?.value : "");
834
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[elementIndex].bpEmpDelReason = bpDelReason;
835
+ this.logger.debug('After delete base period employer list is = ', this.claimAppEmpResponseModelFromService);
836
+ }
837
+ editEmployer(employer) {
838
+ this.logger.debug('Edit method called', employer);
839
+ this.indexToEdit = this.claimAppEmpResponseModelFromService.bpEmpList.indexOf(employer);
840
+ this.logger.debug('Index To Edit = ', this.indexToEdit);
841
+ this.display = true;
842
+ this.noEditMode = true;
843
+ }
844
+ finish(employer) {
845
+ this.logger.debug('Finish Employer called', employer);
846
+ this.indexToEdit = this.claimAppEmpResponseModelFromService.bpEmpList.indexOf(employer);
847
+ employer.workFlag = 'Y';
848
+ this.isBasePeriodEmployer = true;
849
+ this.display = true;
850
+ this.modelDisplay.emit(true);
851
+ }
852
+ editBasePeriodEmployer(employer) {
853
+ this.logger.debug('Edit BasePeriod Employer called for ', employer);
854
+ this.indexToEdit = this.claimAppEmpResponseModelFromService.bpEmpList.indexOf(employer);
855
+ this.display = true;
856
+ this.isBasePeriodEmployer = true;
857
+ this.logger.debug('Index To Edit = ', this.indexToEdit);
858
+ }
859
+ onModelCancel(cancel) {
860
+ this.logger.debug('Cancel Method ', cancel);
861
+ this.display = cancel;
862
+ this.basePerioddisplay = cancel;
863
+ this.indexToEdit = null;
864
+ this.isBasePeriodEmployer = false;
865
+ this.logger.debug('after value change on employer grid ', this.display);
866
+ }
867
+ addEmployer(event) {
868
+ this.logger.debug('Add Employer called from grid ', event, 'indexToEdit', this.indexToEdit, 'this.isBasePeriodEmployer', this.isBasePeriodEmployer);
869
+ event.empDeleted = 'N';
870
+ if (this.indexToEdit || this.indexToEdit == 0) {
871
+ this.logger.debug('Inside if of add employer -- ', event);
872
+ let empDataModel = new ClaimOnlyEmployerDataModel();
873
+ let empProvidedWageModel = new EmployerWagesModel();
874
+ if (this.isBasePeriodEmployer) {
875
+ this.claimdetailModel = new ClaimAppEmployerDetailsModel();
876
+ this.claimdetailModel = event;
877
+ empDataModel = this.validationService.bpEmpLstFrmService.getValue().bpEmpList[this.indexToEdit].employerData;
878
+ empProvidedWageModel = this.validationService.bpEmpLstFrmService.getValue().bpEmpList[this.indexToEdit].employerProvidedWages;
879
+ event.bpEmployerFlag = '1';
880
+ event.employerData = empDataModel;
881
+ event.employerProvidedWages = empProvidedWageModel;
882
+ this.logger.debug('resetting the value again = ', event);
883
+ }
884
+ else {
885
+ this.claimdetailModel = new ClaimAppEmployerDetailsModel();
886
+ this.claimdetailModel = event;
887
+ empDataModel = new ClaimOnlyEmployerDataModel();
888
+ if (event.employerType === 'REG') {
889
+ if (event.prevWorkedState === 'KS') {
890
+ empDataModel.displayName = event.employerName;
891
+ }
892
+ else {
893
+ empDataModel.displayName = event.othStateEmpName;
894
+ empDataModel.prevWorkedState = event.prevWorkedState;
895
+ }
896
+ empDataModel.mailingAddressDisplay =
897
+ event.address['streetAddress'] + '<br>-' + event.address['city'] + '-' + (event.address['state'] ? event.address['state'].text : '') + '-<br>' + (event.address['country'] ? event.address['country'].value : '');
898
+ }
899
+ else if (event.employerType === 'FED') {
900
+ empDataModel.displayName = event.fedEmployerName;
901
+ empDataModel.mailingAddressDisplay =
902
+ event.address['streetAddress'] + '<br>-' + event.address['city'] + '-' + (event.address['state'] ? event.address['state'].text : '') + '-<br>' + (event.address['country'] ? event.address['country'].value : '');
903
+ }
904
+ else {
905
+ this.logger.debug("no address for this employer type");
906
+ }
907
+ empDataModel.employerType = event.employerType;
908
+ event.employerData = empDataModel;
909
+ empDataModel.employerId = event.employerId;
910
+ empDataModel.mailAddressLine1 = event.address?.streetAddress;
911
+ empDataModel.mailAddressLine2 = event.address?.optionalAddress;
912
+ event.bpEmployerFlag = '0';
913
+ }
914
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[this.indexToEdit] = event;
915
+ }
916
+ else {
917
+ this.logger.debug('Inside else of add employer -- ', event);
918
+ this.claimdetailModel = new ClaimAppEmployerDetailsModel();
919
+ let empDataModel = new ClaimOnlyEmployerDataModel();
920
+ this.claimdetailModel = event;
921
+ empDataModel = new ClaimOnlyEmployerDataModel();
922
+ if (event.employerType === 'REG') {
923
+ if (event.prevWorkedState === 'KS') {
924
+ empDataModel.displayName = event.employerName;
925
+ }
926
+ else {
927
+ empDataModel.displayName = event.othStateEmpName;
928
+ empDataModel.prevWorkedState = event.prevWorkedState;
929
+ }
930
+ empDataModel.mailingAddressDisplay =
931
+ event.address['streetAddress'] + '<br>' + event.address['city'] + '-' + (event.address['state'] ? event.address['state'].text : '') + '-<br>' + (event.address['country'] ? event.address['country'].value : '');
932
+ }
933
+ else if (event.employerType === 'FED') {
934
+ empDataModel.displayName = event.fedEmployerName;
935
+ empDataModel.mailingAddressDisplay =
936
+ event.address['streetAddress'] + '<br>' + event.address['city'] + '-' + (event.address['state'] ? event.address['state'].text : '') + '-<br>' + (event.address['country'] ? event.address['country'].value : '');
937
+ }
938
+ else {
939
+ this.logger.debug("Inside else - no address for this employer type");
940
+ }
941
+ empDataModel.employerType = event.employerType;
942
+ empDataModel.employerId = event.employerId;
943
+ empDataModel.mailAddressLine1 = event.address?.streetAddress;
944
+ empDataModel.mailAddressLine2 = event.address?.optionalAddress;
945
+ if (this.isBasePeriodEmployer) {
946
+ this.claimdetailModel.bpEmployerFlag = '1';
947
+ }
948
+ else {
949
+ this.claimdetailModel.bpEmployerFlag = '0';
950
+ }
951
+ console.log("Adding emplr data to claimdetailmode::", empDataModel);
952
+ this.claimdetailModel.employerData = empDataModel;
953
+ console.log("Adding emplr data to claimdetailmode::", empDataModel);
954
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList.push(this.claimdetailModel);
955
+ console.log("from bplist in grid:::", this.validationService.bpEmpLstFrmService.getValue().bpEmpList.length);
956
+ this.modelDataPass.emit(empDataModel);
957
+ }
958
+ this.display = false;
959
+ this.indexToEdit = null;
960
+ }
961
+ removeEmployment(selectedEmployer, index) {
962
+ this.indexToEdit = index;
963
+ this.selectedEmployer = selectedEmployer;
964
+ this.showConfirmPopup = true;
965
+ }
966
+ displayBpEmpConfirmation() {
967
+ this.showbpEmpDelPopup = true;
968
+ }
969
+ removeBasePeriodEmployer() {
970
+ this.deleteEmployerBasePeriod(this.indexToEdit);
971
+ this.showConfirmPopup = false;
972
+ this.showbpEmpDelPopup = false;
973
+ this.selectedEmployer = null;
974
+ this.indexToEdit = null;
975
+ }
976
+ restoreEmployment(selectedEmployer, index) {
977
+ this.logger.debug('Delete method base period employer called for = ', index);
978
+ let currentWorkFlagValue = this.validationService.bpEmpLstFrmService.getValue().bpEmpList[index].workFlag;
979
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[index].workFlag = currentWorkFlagValue ? (currentWorkFlagValue == "N" ? "Y" : "N") : null;
980
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[index].empDeleted = "N";
981
+ this.logger.debug('After delete base period employer list is = ', this.claimAppEmpResponseModelFromService);
982
+ }
983
+ close() {
984
+ this.indexToEdit = null;
985
+ this.showConfirmPopup = false;
986
+ this.showbpEmpDelPopup = false;
987
+ this.selectedEmployer = null;
988
+ this.form.reset();
989
+ }
990
+ setChoiseModels(emp) {
991
+ let sepReason = this.employmentStatusOptionsAll.filter(s => s.value == emp.reasonSeparation?.value);
992
+ if (sepReason.length > 0) {
993
+ emp.reasonSeparation = sepReason[0];
994
+ }
995
+ let dischargeReason = this.dischargeReasonOptionsAll.filter(s => s.value == emp.dischargeDetail?.value);
996
+ if (dischargeReason.length > 0) {
997
+ emp.dischargeDetail = dischargeReason[0];
998
+ }
999
+ let volQuit = this.volQuitReasonOptionsAll.filter(s => s.value == emp.volQuitDetails?.value);
1000
+ if (volQuit.length > 0) {
1001
+ emp.volQuitDetails = volQuit[0];
1002
+ }
1003
+ let payRateFrequency = this.payRateOptions.filter(s => s.value == emp.payRateFrequency?.value);
1004
+ if (payRateFrequency.length > 0) {
1005
+ emp.payRateFrequency = payRateFrequency[0];
1006
+ }
1007
+ let country = this.workCountryOptions.filter(s => s.value == emp.fedWorkCountry?.value);
1008
+ if (country.length > 0) {
1009
+ emp.fedWorkCountry = country[0];
1010
+ }
1011
+ let state = this.statesOptions.filter(s => s.value == emp.fedWorkState?.value);
1012
+ if (state.length > 0) {
1013
+ emp.fedWorkState = state[0];
1014
+ }
1015
+ let serviceBranch = this.militaryServiceOptions.filter(s => s.value == emp.serviceBranch?.value);
1016
+ if (serviceBranch.length > 0) {
1017
+ emp.serviceBranch = serviceBranch[0];
1018
+ }
1019
+ let workState = this.statesOptions.filter(s => s.value == emp.workState?.value?.trim());
1020
+ emp.workState = workState[0];
1021
+ }
1022
+ static { this.ɵfac = function EmployerGridComponent_Factory(t) { return new (t || EmployerGridComponent)(i0.ɵɵdirectiveInject(i1.PopoverController), i0.ɵɵdirectiveInject(i2.LoggerService), i0.ɵɵdirectiveInject(i3.ValidationService), i0.ɵɵdirectiveInject(i1.NavController), i0.ɵɵdirectiveInject(i4.UtilService), i0.ɵɵdirectiveInject(i5.LoginService), i0.ɵɵdirectiveInject(i6.ActivatedRoute), i0.ɵɵdirectiveInject(i7.ClaimService), i0.ɵɵdirectiveInject(i8.Storage)); }; }
1023
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EmployerGridComponent, selectors: [["app-employer-grid"]], inputs: { form: "form", dynamicParam: "dynamicParam" }, outputs: { modelDisplay: "modelDisplay", onComplete: "onComplete", modelDataPass: "modelDataPass" }, features: [i0.ɵɵProvidersFeature([{
1024
+ provide: NG_VALUE_ACCESSOR,
1025
+ useExisting: EmployerGridComponent,
1026
+ multi: true
1027
+ }])], decls: 31, vars: 40, consts: [[2, "margin-left", "-5px", 3, "formGroup"], [1, "action-icon", "font-bold", 3, "icon"], [3, "innerHtml"], ["styleClass", "p-datatable-striped app-datatable ion-padding-top", 3, "columns", "value", "loading", "rowHover", 4, "ngIf"], [3, "recordIndexToEdit", "isBasePeriodEmployer", "isNewClaim", "dob", "noEditMode", "success", "basePeriodIndex", "modelCancel", 4, "ngIf"], ["appendTo", "body", "position", "top", "appendTo", "body", "closeOnEscape", "false", 3, "visible", "modal", "breakpoints", "style", "baseZIndex", "draggable", "resizable", 4, "ngIf"], ["styleClass", "p-datatable-striped app-datatable ion-padding-top", 3, "columns", "value", "loading", "rowHover"], ["dt", ""], ["pTemplate", "header", "role", "presentation"], ["pTemplate", "body"], ["pTemplate", "summary"], ["colspan", "2", "scope", "colgroup", 2, "width", "20%"], [1, "ui-selectable-row", 3, "ngClass"], ["style", "width: 20%;", 4, "ngIf"], [4, "ngIf"], [2, "text-align", "center"], ["size", "small", "color", "success", "fill", "outline", "class", "action-button", "aria-label", "Add employer", 3, "click", 4, "ngIf"], ["size", "small", "color", "success", "fill", "outline", "class", "action-button", "aria-label", "Edit employer", 3, "click", 4, "ngIf"], ["size", "small", "color", "success", "fill", "outline", "class", "action-button", "aria-label", "Confirm employer", 3, "click", 4, "ngIf"], ["size", "small", "color", "success", "fill", "outline", "class", "action-button", "aria-label", "Remove employer", 3, "click", 4, "ngIf"], ["size", "small", "color", "success", "fill", "outline", "class", "action-button", "aria-label", "Restore", 3, "click", 4, "ngIf"], [2, "width", "20%"], [1, "p-column-title"], [2, "font-size", "12px", 3, "innerHtml"], [1, "p-column-title", 2, "width", "20%"], ["size", "small", "color", "success", "fill", "outline", "aria-label", "Add employer", 1, "action-button", 3, "click"], [1, "action-icon", 3, "icon"], ["size", "small", "color", "success", "fill", "outline", "aria-label", "Edit employer", 1, "action-button", 3, "click"], ["size", "small", "color", "success", "fill", "outline", "aria-label", "Confirm employer", 1, "action-button", 3, "click"], ["size", "small", "color", "success", "fill", "outline", "aria-label", "Remove employer", 1, "action-button", 3, "click"], ["size", "small", "color", "success", "fill", "outline", "aria-label", "Restore", 1, "action-button", 3, "click"], [2, "width", "40%"], [2, "width", "9.75%", "text-align", "right"], ["fill", "outline", "size", "small", "aria-label", "Add employer", 1, "action-button", 3, "id", "click"], ["colspan", "4"], [3, "recordIndexToEdit", "isBasePeriodEmployer", "isNewClaim", "dob", "noEditMode", "success", "basePeriodIndex", "modelCancel"], ["appendTo", "body", "position", "top", "appendTo", "body", "closeOnEscape", "false", 3, "visible", "modal", "breakpoints", "baseZIndex", "draggable", "resizable"], [1, "heading"], ["color", "danger"], ["pTemplate", "footer"], ["shape", "round", "type", "submit", "fill", "outline", 3, "click"], ["shape", "round", "type", "submit", "fill", "solid", 3, "click"], ["formControlName", "selectedDropdown", "inputId", "bpEmpDelOptions", "appendTo", "body", "optionLabel", "text", "optionValue", "value", "required", "", 3, "options", "ngModel", "autoDisplayFirst", "placeholder", "ngModelChange", "onChange"], ["for", "comment"], ["formControlName", "otherComment", "rows", "5", "cols", "30", "maxlength", "250", 3, "placeholder"], ["class", "p-error", 4, "ngIf"], [1, "p-error"], ["shape", "round", "type", "submit", "fill", "solid", 3, "disabled", "click"]], template: function EmployerGridComponent_Template(rf, ctx) { if (rf & 1) {
1028
+ i0.ɵɵelementStart(0, "div", 0)(1, "ion-row")(2, "ion-col");
1029
+ i0.ɵɵelement(3, "fa-icon", 1)(4, "span", 2);
1030
+ i0.ɵɵpipe(5, "trustHtml");
1031
+ i0.ɵɵpipe(6, "translate");
1032
+ i0.ɵɵtext(7, ",\u00A0 ");
1033
+ i0.ɵɵelement(8, "fa-icon", 1)(9, "span", 2);
1034
+ i0.ɵɵpipe(10, "trustHtml");
1035
+ i0.ɵɵpipe(11, "translate");
1036
+ i0.ɵɵtext(12, ",\u00A0 ");
1037
+ i0.ɵɵelement(13, "fa-icon", 1)(14, "span", 2);
1038
+ i0.ɵɵpipe(15, "trustHtml");
1039
+ i0.ɵɵpipe(16, "translate");
1040
+ i0.ɵɵtext(17, ",\u00A0 ");
1041
+ i0.ɵɵelement(18, "fa-icon", 1)(19, "span", 2);
1042
+ i0.ɵɵpipe(20, "trustHtml");
1043
+ i0.ɵɵpipe(21, "translate");
1044
+ i0.ɵɵtext(22, ",\u00A0 ");
1045
+ i0.ɵɵelement(23, "fa-icon", 1)(24, "span", 2);
1046
+ i0.ɵɵpipe(25, "trustHtml");
1047
+ i0.ɵɵpipe(26, "translate");
1048
+ i0.ɵɵelementEnd()();
1049
+ i0.ɵɵtemplate(27, EmployerGridComponent_p_table_27_Template, 5, 4, "p-table", 3)(28, EmployerGridComponent_app_add_employer_28_Template, 1, 5, "app-add-employer", 4)(29, EmployerGridComponent_p_dialog_29_Template, 52, 42, "p-dialog", 5)(30, EmployerGridComponent_p_dialog_30_Template, 9, 20, "p-dialog", 5);
1050
+ i0.ɵɵelementEnd();
1051
+ } if (rf & 2) {
1052
+ i0.ɵɵproperty("formGroup", ctx.form);
1053
+ i0.ɵɵadvance(3);
1054
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(35, _c1));
1055
+ i0.ɵɵadvance(1);
1056
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(5, 15, i0.ɵɵpipeBind1(6, 17, "induction.employment.subheader.confirm")), i0.ɵɵsanitizeHtml);
1057
+ i0.ɵɵadvance(4);
1058
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(36, _c2));
1059
+ i0.ɵɵadvance(1);
1060
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(10, 19, i0.ɵɵpipeBind1(11, 21, "induction.employment.subheader.delete")), i0.ɵɵsanitizeHtml);
1061
+ i0.ɵɵadvance(4);
1062
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(37, _c4));
1063
+ i0.ɵɵadvance(1);
1064
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(15, 23, i0.ɵɵpipeBind1(16, 25, "induction.employment.subheader.add")), i0.ɵɵsanitizeHtml);
1065
+ i0.ɵɵadvance(4);
1066
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(38, _c0));
1067
+ i0.ɵɵadvance(1);
1068
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(20, 27, i0.ɵɵpipeBind1(21, 29, "induction.employment.subheader.edit")), i0.ɵɵsanitizeHtml);
1069
+ i0.ɵɵadvance(4);
1070
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(39, _c3));
1071
+ i0.ɵɵadvance(1);
1072
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(25, 31, i0.ɵɵpipeBind1(26, 33, "induction.employment.subheader.restore")), i0.ɵɵsanitizeHtml);
1073
+ i0.ɵɵadvance(3);
1074
+ i0.ɵɵproperty("ngIf", ctx.claimAppEmpResponseModelFromService);
1075
+ i0.ɵɵadvance(1);
1076
+ i0.ɵɵproperty("ngIf", ctx.display);
1077
+ i0.ɵɵadvance(1);
1078
+ i0.ɵɵproperty("ngIf", ctx.selectedEmployer);
1079
+ i0.ɵɵadvance(1);
1080
+ i0.ɵɵproperty("ngIf", ctx.selectedEmployer);
1081
+ } }, dependencies: [i1.IonButton, i1.IonCol, i1.IonLabel, i1.IonRow, i9.NgClass, i9.NgIf, i10.PrimeTemplate, i11.DefaultValueAccessor, i11.NgControlStatus, i11.NgControlStatusGroup, i11.RequiredValidator, i11.MaxLengthValidator, i11.FormGroupDirective, i11.FormControlName, i12.Dialog, i13.Table, i14.FaIconComponent, i15.Dropdown, i16.AddEmployerComponent, i9.CurrencyPipe, i9.DatePipe, i17.TranslatePipe, i18.TrustHtmlPipe], styles: ["[_nghost-%COMP%] .p-datatable-worksearch .p-datatable-tbody>tr>td .p-column-title{display:none}[_nghost-%COMP%] .p-datatable.p-datatable-worksearch .p-datatable-thead>tr>th, [_nghost-%COMP%] .p-datatable.p-datatable-worksearch .p-datatable-tfoot>tr>td{color:var(--ion-color-primary);text-align:left;font-weight:700;padding:8px;width:-webkit-fill-available!important}[_nghost-%COMP%] .p-datatable.p-datatable-worksearch .p-datatable-tbody>tr>td{font-size:16px;padding:3px;width:-webkit-fill-available!important}[_nghost-%COMP%] .p-datatable.p-datatable-striped .p-datatable-tbody>tr:nth-child(2n){background:none}@media screen and (max-width: 50rem){ion-col[_ngcontent-%COMP%]{text-align:left!important}[_nghost-%COMP%] .p-datatable.p-datatable-worksearch .p-datatable-thead>tr>th, [_nghost-%COMP%] .p-datatable.p-datatable-worksearch .p-datatable-tfoot>tr>td{display:none!important}[_nghost-%COMP%] .p-datatable.p-datatable-worksearch .p-datatable-tbody>tr>td{text-align:left!important;display:block;width:100%;float:left;clear:left;border:0 none}[_nghost-%COMP%] .p-datatable.p-datatable-worksearch .p-datatable-tbody>tr>td .p-column-title{padding:.6rem;min-width:30%;display:inline-block;margin:-.4em 1em -.4em -.4rem;font-weight:700}[_nghost-%COMP%] .p-datatable.p-datatable-worksearch .p-datatable-tbody>tr>td:last-child{border-bottom:1px solid var(--surface-d)}}.strikethrough[_ngcontent-%COMP%]{text-decoration:line-through}"] }); }
1082
+ }
1083
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EmployerGridComponent, [{
1084
+ type: Component,
1085
+ args: [{ selector: 'app-employer-grid', providers: [{
1086
+ provide: NG_VALUE_ACCESSOR,
1087
+ useExisting: EmployerGridComponent,
1088
+ multi: true
1089
+ }], changeDetection: ChangeDetectionStrategy.Default, template: "<div [formGroup]=\"form\" style=\"margin-left: -5px;\">\r\n<ion-row>\r\n <ion-col>\r\n <fa-icon [icon]=\"['fal', 'check-circle']\" class=\"action-icon font-bold\"></fa-icon>\r\n <span [innerHtml]=\"'induction.employment.subheader.confirm' | translate | trustHtml\"></span>,&nbsp;\r\n <fa-icon [icon]=\"['fal', 'trash-alt']\" class=\"action-icon font-bold\"></fa-icon>\r\n <span [innerHtml]=\"'induction.employment.subheader.delete' | translate | trustHtml\"></span>,&nbsp;\r\n <fa-icon [icon]=\"['fal', 'plus']\" class=\"action-icon font-bold\"></fa-icon>\r\n <span [innerHtml]=\"'induction.employment.subheader.add' | translate | trustHtml\"></span>,&nbsp;\r\n <fa-icon [icon]=\"['fal', 'edit']\" class=\"action-icon font-bold\"></fa-icon>\r\n <span [innerHtml]=\"'induction.employment.subheader.edit' | translate | trustHtml\"></span>,&nbsp;\r\n <fa-icon [icon]=\"['fal', 'trash-restore-alt']\" class=\"action-icon font-bold\"></fa-icon>\r\n <span [innerHtml]=\"'induction.employment.subheader.restore' | translate | trustHtml\"></span>\r\n </ion-col>\r\n</ion-row>\r\n\r\n<p-table #dt [columns]=\"cols\" [value]=\"claimAppEmpResponseModelFromService.bpEmpList\" [loading]=\"showProgressBar\"\r\n [rowHover]=\"true\" *ngIf=\"claimAppEmpResponseModelFromService\" styleClass=\"p-datatable-striped app-datatable ion-padding-top\">\r\n <ng-template pTemplate=\"header\" let-columns role=\"presentation\">\r\n <tr>\r\n <th colspan=\"2\" scope=\"colgroup\" style=\"width: 20%;\">\r\n {{\"induction.employment.table.employer.name\"|translate}}\r\n </th>\r\n <th>\r\n {{\"induction.employment.table.job.title\"|translate}}\r\n </th>\r\n <th>\r\n {{\"induction.employment.table.pay\"|translate}}\r\n </th>\r\n <th>\r\n {{\"induction.employment.table.dates\"|translate}}\r\n </th>\r\n <th>\r\n {{\"induction.employment.table.sep.reason\"|translate}}\r\n </th>\r\n \r\n </tr>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"body\" let-employer let-rowIndex=\"rowIndex\">\r\n <tr class=\"ui-selectable-row\" [ngClass]=\"employer.empDeleted=='Y' ? 'strikethrough' : null\">\r\n\r\n <td *ngIf=\"(employer.employerData.tradeName || employer.employerData.displayName) && employer.employerType!='MIL'\" style=\"width: 20%;\"><span class=\"p-column-title\">{{\"induction.employment.employer.text\"|translate}}</span><span>\r\n {{employer.employerData.displayName}}<br>\r\n {{employer.employerData.tradeName}}<br>\r\n </span><div style=\"font-size: 12px;\" [innerHtml]=\"employer.employerData.mailingAddressDisplay | trustHtml\">\r\n </div>\r\n </td>\r\n \r\n <td *ngIf=\"!employer.employerData.displayName && employer.employerType!='MIL'\" style=\"width: 20%;\"><span class=\"p-column-title\">{{\"induction.employment.employer.text\"|translate}}</span><span>\r\n </span>\r\n </td>\r\n\r\n <td *ngIf=\"employer.employerType==='MIL'\"><span class=\"p-column-title\" style=\"width: 20%;\">{{\"induction.employment.employer.text\"|translate}}</span><span>\r\n {{employer.serviceBranch.text}} <br>\r\n </span>\r\n </td>\r\n <td style=\"text-align: center;\"> \r\n <ion-button size=\"small\" *ngIf=\"employer.bpEmployerFlag==='1' && employer.payRate && employer.startDate && employer.empDeleted!='Y'\" color=\"success\" fill=\"outline\" \r\n (click)=\"editBasePeriodEmployer(employer);\" class=\"action-button\" aria-label=\"Add employer\">\r\n <fa-icon [icon]=\"['fal', 'edit']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n\r\n <ion-button size=\"small\" *ngIf=\"employer.bpEmployerFlag==='0'\" color=\"success\" fill=\"outline\" \r\n (click)=\"editEmployer(employer);\" class=\"action-button\" aria-label=\"Edit employer\">\r\n <fa-icon [icon]=\"['fal', 'edit']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n\r\n <ion-button size=\"small\" *ngIf=\"employer.bpEmployerFlag==='1' && !employer.payRate && !employer.startDate && employer.empDeleted!='Y'\" color=\"success\" fill=\"outline\" \r\n (click)=\"finish(employer);\" class=\"action-button\" aria-label=\"Confirm employer\">\r\n <fa-icon [icon]=\"['fal', 'check-circle']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n\r\n <ion-button size=\"small\" *ngIf=\"employer.bpEmployerFlag==='0'\" color=\"success\" fill=\"outline\" \r\n (click)=\"deleteEmployer(rowIndex);\" class=\"action-button\" aria-label=\"Remove employer\">\r\n <fa-icon [icon]=\"['fal', 'trash-alt']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n\r\n <ion-button size=\"small\" *ngIf=\"employer.bpEmployerFlag==='1' && employer.empDeleted!='Y'\" color=\"success\" fill=\"outline\" \r\n (click)=\"removeEmployment(employer, rowIndex);\" class=\"action-button\" aria-label=\"Remove employer\">\r\n <fa-icon [icon]=\"['fal', 'trash-alt']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n\r\n <ion-button size=\"small\" *ngIf=\"employer.bpEmployerFlag==='1' && employer.empDeleted=='Y'\" color=\"success\" fill=\"outline\" \r\n (click)=\"restoreEmployment(employer, rowIndex);\" class=\"action-button\" aria-label=\"Restore\">\r\n <fa-icon [icon]=\"['fal', 'trash-restore-alt']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n </td>\r\n <td *ngIf=\"employer.jobTileOrPosition && !employer.fedJobTileOrPosition\"><span class=\"p-column-title\">{{\"induction.employment.job.title\"|translate}}</span>{{employer.jobTileOrPosition}}</td>\r\n <td *ngIf=\"!employer.jobTileOrPosition && !employer.fedJobTileOrPosition\"><span class=\"p-column-title\">{{\"induction.employment.job.title\"|translate}}</span></td>\r\n <td *ngIf=\"!employer.jobTileOrPosition && employer.fedJobTileOrPosition\"><span class=\"p-column-title\">{{\"induction.employment.job.title\"|translate}}</span>{{employer.fedJobTileOrPosition}}</td>\r\n <td *ngIf=\"employer.jobTileOrPosition && employer.fedJobTileOrPosition\"><span class=\"p-column-title\">{{\"induction.employment.job.title\"|translate}}</span>{{employer.jobTileOrPosition}}{{employer.fedJobTileOrPosition}}</td>\r\n \r\n <td *ngIf=\"employer.payRate\"><span class=\"p-column-title\">{{\"induction.employment.pay\"|translate}}</span>{{employer.payRate | currency}}/{{employer.payRateFrequency.text}}</td>\r\n <td *ngIf=\"!employer.payRate\"><span class=\"p-column-title\">{{\"induction.employment.pay\"|translate}}</span></td>\r\n \r\n <td *ngIf=\"employer.employerType==='REG'\"><span class=\"p-column-title\">{{\"induction.employment.start.and.end\"|translate}}</span>\r\n {{employer.startDate | date:'M/d/yyyy'}} - {{employer.endDate | date:'M/d/yyyy'}}\r\n </td>\r\n \r\n <td *ngIf=\"employer.employerType==='FED'\"><span class=\"p-column-title\">{{\"induction.employment.start.and.end\"|translate}}</span>\r\n {{employer.startDateFed | date:'M/d/yyyy'}} - {{employer.endDateFed | date:'M/d/yyyy'}}\r\n </td>\r\n\r\n <td *ngIf=\"employer.employerType==='MIL'\"><span class=\"p-column-title\">{{\"induction.employment.start.and.end\"|translate}}</span>\r\n {{employer.startDateMil | date:'M/d/yyyy'}} - {{employer.endDateMil | date:'M/d/yyyy'}}\r\n </td>\r\n\r\n <td *ngIf=\"!employer.startDate && !employer.startDateFed && !employer.startDateMil\"><span class=\"p-column-title\">{{\"induction.employment.start.and.end\"|translate}}</span></td>\r\n\r\n <td *ngIf=\"employer.employerType!='MIL' && employer.reasonSeparation\"><span class=\"p-column-title\">{{\"induction.employment.seperation.reason\"|translate}}</span>{{employer.reasonSeparation.text}}\r\n </td>\r\n \r\n <td *ngIf=\"employer.employerType==='MIL' && !employer.reasonSeparation\"><span class=\"p-column-title\">{{\"induction.employment.seperation.reason\"|translate}}</span>\r\n </td>\r\n \r\n \r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"summary\" let-columns>\r\n <table>\r\n <tr>\r\n <td [attr.colspan]=\"2\" style=\"width: 40%;\">\r\n <div [innerHtml]=\"'induction.employment.footer.label' | translate | trustHtml\"></div>\r\n </td>\r\n <td style=\"width: 9.75%; text-align: right;\">\r\n <ion-button fill=\"outline\" size=\"small\" class=\"action-button\" (click)=\"addNewEmpDetails()\" class=\"action-button\" aria-label=\"Add employer\" [id]=\"'btnAddEmployer'\">\r\n <fa-icon [icon]=\"['fal', 'plus']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n </td>\r\n <td colspan=\"4\">&nbsp;</td>\r\n </tr>\r\n </table>\r\n </ng-template>\r\n\r\n</p-table>\r\n <app-add-employer *ngIf=\"display\" (success)=\"addEmployer($event)\" [recordIndexToEdit]=\"indexToEdit\" \r\n (basePeriodIndex)=\"deleteBpEmpl($event)\" [isBasePeriodEmployer]=\"isBasePeriodEmployer\" [isNewClaim]=\"isNewClaim\" \r\n (modelCancel)=\"onModelCancel($event)\" [dob]=\"claimantDob\" [noEditMode]=\"noEditMode\">\r\n </app-add-employer>\r\n\r\n <p-dialog [visible]=\"showConfirmPopup\" [modal]=\"true\" appendTo=\"body\" position=\"top\" [breakpoints]=\"{'1200px': '660px', '992px': '660px', '768px': '660px', '576px': '100vw'}\" [style]=\"{width: '45vw'}\"\r\n [baseZIndex]=\"5000\" [draggable]=\"false\" [resizable]=\"false\" appendTo=\"body\" closeOnEscape=\"false\" *ngIf=\"selectedEmployer\">\r\n <h4 class=\"heading\">{{'induction.employment.grid.popup.heading' | translate}}</h4>\r\n <ion-label>{{selectedEmployer.employerData.displayName}}</ion-label><br/>\r\n <ion-label>{{selectedEmployer.employerData.tradeName}}</ion-label>\r\n <ion-label><div style=\"font-size: 12px;\" [innerHtml]=\"selectedEmployer.employerData.mailingAddressDisplay | trustHtml\"></div></ion-label><br/>\r\n <ion-label color=\"danger\">\r\n {{'induction.employment.grid.popup.failure.label' | translate}}\r\n </ion-label><br/><br/>\r\n <ion-label>\r\n <b>{{'induction.employment.grid.popup.text1.q.label' | translate}}</b>\r\n </ion-label><br/>\r\n <ion-label>\r\n {{'induction.employment.grid.popup.text1.a.label' | translate}}\r\n </ion-label><br/><br/>\r\n <ion-label>\r\n <b>{{'induction.employment.grid.popup.text2.q.label' | translate}}</b>\r\n </ion-label><br/>\r\n <ion-label>\r\n {{'induction.employment.grid.popup.text2.a.label' | translate}}\r\n </ion-label><br/><br/>\r\n <ion-label>\r\n <b>{{'induction.employment.grid.popup.text3.q.label' | translate}}</b>\r\n </ion-label><br/>\r\n <ion-label>\r\n {{'induction.employment.grid.popup.text3.a.label' | translate}}\r\n </ion-label><br/><br/>\r\n <ion-label>\r\n {{'induction.employment.grid.popup.didnt.work.label' | translate}}\r\n </ion-label>\r\n <ng-template pTemplate=\"footer\">\r\n <ion-button shape=\"round\" type=\"submit\" fill=\"outline\" (click)=\"close()\">\r\n {{'induction.employment.grid.popup.cancel' | translate}}\r\n </ion-button>\r\n <ion-button shape=\"round\" type=\"submit\" fill=\"solid\" (click)=\"displayBpEmpConfirmation()\">\r\n {{'induction.employment.grid.popup.remove' | translate}}\r\n </ion-button>\r\n </ng-template>\r\n </p-dialog>\r\n <p-dialog [visible]=\"showbpEmpDelPopup\" [modal]=\"true\" appendTo=\"body\" position=\"top\" [breakpoints]=\"{'1200px': '660px', '992px': '660px', '768px': '660px', '576px': '100vw'}\" [style]=\"{width: '45vw'}\"\r\n [baseZIndex]=\"5000\" [draggable]=\"false\" [resizable]=\"false\" appendTo=\"body\" closeOnEscape=\"false\" *ngIf=\"selectedEmployer\">\r\n <h4 class=\"heading\">{{'induction.employment.grid.delete.bpemployer.popup.heading' | translate}}</h4><br/>\r\n <p-dropdown formControlName=\"selectedDropdown\" inputId=\"bpEmpDelOptions\" [options]=\"bpEmpDelOptions\" [(ngModel)]=\"selectedOption\" [autoDisplayFirst]=\"false\" (onChange)=\"onDropdownChange($event)\" appendTo=\"body\"\r\n placeholder='{{\"induction.employment.grid.delete.bpemployer.popup.heading.placeholder\" | translate}}' optionLabel=\"text\" optionValue=\"value\" required> \r\n </p-dropdown>\r\n <div *ngIf=\"showCommentBox\">\r\n <label for=\"comment\">\r\n {{'induction.employment.grid.delete.bpemployer.popup.reason.selecting' | translate}}\r\n </label><br/>\r\n <textarea formControlName=\"otherComment\" rows=\"5\" cols=\"30\" maxlength=\"250\" placeholder='{{\"induction.employment.grid.delete.bpemployer.popup.explain.reason\" | translate}}'></textarea>\r\n <small *ngIf=\"this.form.get('otherComment')?.invalid && this.form.get('otherComment')?.touched\" class=\"p-error\">\r\n {{'induction.employment.grid.delete.bpemployer.popup.field.required' | translate}}\r\n </small>\r\n <small>\r\n {{'induction.employment.grid.delete.bpemployer.popup.maxlength.250' | translate}}\r\n </small>\r\n\r\n </div>\r\n <ng-template pTemplate=\"footer\">\r\n <ion-button shape=\"round\" type=\"submit\" fill=\"outline\" (click)=\"close()\">\r\n {{'induction.employment.grid.delete.bpemployer.popup.cancel' | translate}}\r\n </ion-button>\r\n <ion-button shape=\"round\" type=\"submit\" [disabled]=\"this.form.invalid\" fill=\"solid\" (click)=\"removeBasePeriodEmployer()\">\r\n {{'induction.employment.grid.delete.bpemployer.popup.remove' | translate}}\r\n </ion-button>\r\n </ng-template>\r\n </p-dialog>\r\n</div>", styles: [":host ::ng-deep .p-datatable-worksearch .p-datatable-tbody>tr>td .p-column-title{display:none}:host ::ng-deep .p-datatable.p-datatable-worksearch .p-datatable-thead>tr>th,:host ::ng-deep .p-datatable.p-datatable-worksearch .p-datatable-tfoot>tr>td{color:var(--ion-color-primary);text-align:left;font-weight:700;padding:8px;width:-webkit-fill-available!important}:host ::ng-deep .p-datatable.p-datatable-worksearch .p-datatable-tbody>tr>td{font-size:16px;padding:3px;width:-webkit-fill-available!important}:host ::ng-deep .p-datatable.p-datatable-striped .p-datatable-tbody>tr:nth-child(2n){background:none}@media screen and (max-width: 50rem){ion-col{text-align:left!important}:host ::ng-deep .p-datatable.p-datatable-worksearch .p-datatable-thead>tr>th,:host ::ng-deep .p-datatable.p-datatable-worksearch .p-datatable-tfoot>tr>td{display:none!important}:host ::ng-deep .p-datatable.p-datatable-worksearch .p-datatable-tbody>tr>td{text-align:left!important;display:block;width:100%;float:left;clear:left;border:0 none}:host ::ng-deep .p-datatable.p-datatable-worksearch .p-datatable-tbody>tr>td .p-column-title{padding:.6rem;min-width:30%;display:inline-block;margin:-.4em 1em -.4em -.4rem;font-weight:700}:host ::ng-deep .p-datatable.p-datatable-worksearch .p-datatable-tbody>tr>td:last-child{border-bottom:1px solid var(--surface-d)}}.strikethrough{text-decoration:line-through}\n"] }]
1090
+ }], () => [{ type: i1.PopoverController }, { type: i2.LoggerService }, { type: i3.ValidationService }, { type: i1.NavController }, { type: i4.UtilService }, { type: i5.LoginService }, { type: i6.ActivatedRoute }, { type: i7.ClaimService }, { type: i8.Storage }], { form: [{
1091
+ type: Input
1092
+ }], dynamicParam: [{
1093
+ type: Input
1094
+ }], modelDisplay: [{
1095
+ type: Output
1096
+ }], onComplete: [{
1097
+ type: Output
1098
+ }], modelDataPass: [{
1099
+ type: Output
1100
+ }] }); })();
1101
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EmployerGridComponent, { className: "EmployerGridComponent", filePath: "lib\\components\\employer-grid\\employer-grid.component.ts", lineNumber: 32 }); })();
1102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZXItZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZW1wbG95ZXItZ3JpZC9lbXBsb3llci1ncmlkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9lbXBsb3llci1ncmlkL2VtcGxveWVyLWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBb0IsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRTVLLE9BQU8sRUFBMEMsaUJBQWlCLEVBQWUsU0FBUyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1SSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUMvRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN2RyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUM3RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUtuRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUduRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNHdkQsMEJBQUksYUFBQTtJQUVBLFlBQ0Y7O0lBQUEsaUJBQUs7SUFDTCwwQkFBSTtJQUNGLFlBQ0Q7O0lBQUEsaUJBQUs7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QyxrREFBcUM7WUFDeEMsZUFBOEU7WUFBOUUsdUlBQThFO1lBS3BFLGVBQXlDO1lBQXpDLDhEQUF5QztZQXdIeEMsZUFBYTtZQUFiLGtDQUFhO1lBTXFFLGVBQXNCO1lBQXRCLDJDQUFzQjtZQXVDdEIsZUFBc0I7WUFBdEIsMkNBQXNCOzs7aUZEdkpoSCxxQkFBcUI7Y0FaakMsU0FBUzsyQkFDRSxtQkFBbUIsYUFHbEIsQ0FBQzt3QkFDVixPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLHVCQUF1Qjt3QkFDbEMsS0FBSyxFQUFFLElBQUk7cUJBQ1osQ0FBQyxtQkFDZSx1QkFBdUIsQ0FBQyxPQUFPOzZRQXNCdkMsSUFBSTtrQkFBWixLQUFLO1lBQ0csWUFBWTtrQkFBcEIsS0FBSztZQUlJLFlBQVk7a0JBQXJCLE1BQU07WUFDRyxVQUFVO2tCQUFuQixNQUFNO1lBQ0csYUFBYTtrQkFBdEIsTUFBTTs7a0ZBMUJJLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFmdGVyTmV4dFJlbmRlciwgQWZ0ZXJSZW5kZXJQaGFzZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgTmdNb2R1bGUsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmF2Q29udHJvbGxlciwgUG9wb3ZlckNvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBVbnR5cGVkRm9ybUdyb3VwLCBOR19WQUxVRV9BQ0NFU1NPUiwgRm9ybXNNb2R1bGUsIEZvcm1Hcm91cCwgRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2dnZXIvbG9nZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9DbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWwnO1xyXG5pbXBvcnQgeyBDbGFpbUFwcEVtcGxveWVyRGV0YWlsc01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3F1ZXN0aW9ubmFpcmUvQ2xhaW1BcHBFbXBsb3llckRldGFpbHNNb2RlbCc7XHJcbmltcG9ydCB7IENsYWltQXBwRW1wUmVxdWVzdE1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3F1ZXN0aW9ubmFpcmUvQ2xhaW1BcHBFbXBSZXF1ZXN0TW9kZWwnO1xyXG5pbXBvcnQgeyBDbGFpbU9ubHlFbXBsb3llckRhdGFNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9xdWVzdGlvbm5haXJlL0NsYWltT25seUVtcGxveWVyRGF0YU1vZGVsJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9xdWVzdGlvbm5haXJlL3ZhbGlkYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbC91dGlsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2dpblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2dpbi9sb2dpbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBFbXBsb3llcldhZ2VzTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9FbXBsb3llcldhZ2VzTW9kZWwnO1xyXG5pbXBvcnQgeyBDbGFpbVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jbGFpbXMvY2xhaW1zLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDaG9pY2VzTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvQWRkcmVzc0NvbXBvbmVudE1vZGVsJztcclxuaW1wb3J0IHsgQ29tYm9PcHRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9Db21ib01vZGVsJztcclxuaW1wb3J0IHsgRmJDb25zdGFudHMgfSBmcm9tICcuLi9xdWVzdGlvbm5haXJlL0ZiQ29uc3RhbnRzJztcclxuaW1wb3J0IHsgU3RvcmFnZSB9IGZyb20gJ0Bpb25pYy9zdG9yYWdlLWFuZ3VsYXInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtZW1wbG95ZXItZ3JpZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2VtcGxveWVyLWdyaWQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2VtcGxveWVyLWdyaWQuY29tcG9uZW50LnNjc3MnXSxcclxuICBwcm92aWRlcnM6IFt7XHJcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgIHVzZUV4aXN0aW5nOiBFbXBsb3llckdyaWRDb21wb25lbnQsXHJcbiAgICBtdWx0aTogdHJ1ZVxyXG4gIH1dLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdFxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIEVtcGxveWVyR3JpZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcG9wdXA6IFBvcG92ZXJDb250cm9sbGVyLCBwdWJsaWMgbG9nZ2VyOiBMb2dnZXJTZXJ2aWNlLFxyXG4gICAgcHVibGljIHZhbGlkYXRpb25TZXJ2aWNlOiBWYWxpZGF0aW9uU2VydmljZSwgcHVibGljIG5hdkNvbnRyb2xsZXI6IE5hdkNvbnRyb2xsZXIsIHB1YmxpYyB1dGlsOiBVdGlsU2VydmljZSxcclxuICAgIHB1YmxpYyBsczogTG9naW5TZXJ2aWNlLCBwdWJsaWMgYWN0aXZhdGVkUm91dGUgOiBBY3RpdmF0ZWRSb3V0ZSwgcHVibGljIGNsYWltc1NlcnZpY2UgOiBDbGFpbVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHN0b3JhZ2UgOiBTdG9yYWdlKSB7XHJcbiAgICAgIGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XHJcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgncC10YWJsZSB0YWJsZScpLmZvckVhY2goZSA9PiB7XHJcbiAgICAgICAgICBlLnNldEF0dHJpYnV0ZSgncm9sZScsICdwcmVzZW50YXRpb24nKVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3Atc2VsZWN0YnV0dG9uIGRpdiBkaXYnKS5mb3JFYWNoKGVsID0+IHtcclxuICAgICAgICAgIGVsLnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1sYWJlbGxlZGJ5Jyk7XHJcbiAgICAgICAgICBlbC5yZW1vdmVBdHRyaWJ1dGUoJ2FyaWEtcHJlc3NlZCcpOyBcclxuICAgICAgfSk7XHJcbiAgICAgIH0sIHtwaGFzZTogQWZ0ZXJSZW5kZXJQaGFzZS5Xcml0ZX0pO1xyXG4gIH1cclxuXHJcbiAgY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2U6ICBDbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWwgPSBuZXcgQ2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsKCk7XHJcbiAgY29sczogYW55W107XHJcbiAgQElucHV0KCkgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcclxuICBASW5wdXQoKSBkeW5hbWljUGFyYW0gOiBhbnk7XHJcbiAgZGlzcGxheTogYm9vbGVhbjtcclxuICBub0VkaXRNb2RlOiBib29sZWFuO1xyXG4gIGJhc2VQZXJpb2RkaXNwbGF5OiBib29sZWFuO1xyXG4gIEBPdXRwdXQoKSBtb2RlbERpc3BsYXkgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcbiAgQE91dHB1dCgpIG9uQ29tcGxldGUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIG1vZGVsRGF0YVBhc3MgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgY2xhaW1kZXRhaWxNb2RlbCA9IG5ldyBDbGFpbUFwcEVtcGxveWVyRGV0YWlsc01vZGVsKCk7XHJcbiAgY2FpbUFwcEVtcFJlc3BvbnNlTW9kZWwgPSBuZXcgQ2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsKCk7XHJcbiAgc2VsZWN0ZWRFbXBsb3llcjogQ2xhaW1BcHBFbXBsb3llckRldGFpbHNNb2RlbDtcclxuICBzZWxlY3RlZEJhc2VQZXJpb2RFbXBsb3llcjogQ2xhaW1BcHBFbXBsb3llckRldGFpbHNNb2RlbDtcclxuICBwdWJsaWMgaW5kZXhUb0VkaXQ7XHJcbiAgcHVibGljIGlzQmFzZVBlcmlvZEVtcGxveWVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGlzTmV3Q2xhaW06IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd0NvbmZpcm1Qb3B1cCA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd2JwRW1wRGVsUG9wdXAgOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc3NuRm9yQ1NSIDogc3RyaW5nO1xyXG4gIHB1YmxpYyBzaG93UHJvZ3Jlc3NCYXIgPSBmYWxzZTtcclxuICB1dWlkOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICBwdWJsaWMgZGlzY2hhcmdlUmVhc29uT3B0aW9uc0FsbDogQ2hvaWNlc01vZGVsW10gPSBbXTtcclxuICBwdWJsaWMgdm9sUXVpdFJlYXNvbk9wdGlvbnNBbGw6IENob2ljZXNNb2RlbFtdID0gW107XHJcbiAgcHVibGljIGVtcGxveW1lbnRTdGF0dXNPcHRpb25zQWxsOiBDaG9pY2VzTW9kZWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBwYXlSYXRlT3B0aW9ucyA6IGFueSA9IFtdO1xyXG4gIHB1YmxpYyBjb3VudHJ5T3B0aW9ucyA6IGFueSA9IFtdO1xyXG4gIHB1YmxpYyB3b3JrQ291bnRyeU9wdGlvbnMgOiBhbnkgPSBbXTtcclxuICBwdWJsaWMgc3RhdGVzT3B0aW9ucyA6IGFueSA9IFtdO1xyXG4gIHB1YmxpYyBtaWxpdGFyeVNlcnZpY2VPcHRpb25zIDogYW55ID0gW107XHJcbiAgcHVibGljIGNsYWltYW50RG9iIDogRGF0ZTtcclxuICBwdWJsaWMgc2VsZWN0ZWRPcHRpb246IHN0cmluZztcclxuICBwdWJsaWMgc2hvd0NvbW1lbnRCb3g6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgYnBFbXBEZWxPcHRpb25zIDogYW55ID0gW107XHJcblxyXG4gIGxvYWRNYXN0ZXJEYXRhKCl7XHJcbiAgICB0aGlzLmNsYWltc1NlcnZpY2UubG9hZE1hc3RlckRhdGEoKTtcclxuICAgIHRoaXMuY2xhaW1zU2VydmljZS5nZXRSZWFzb25TZXBhcmF0aW9uKCkuc3Vic2NyaWJlKFxyXG4gICAgICB2YWx1ZSA9PiB7XHJcbiAgICAgICAgdmFsdWUuZm9yRWFjaChhcnIgPT4gIHRoaXMuZW1wbG95bWVudFN0YXR1c09wdGlvbnNBbGwucHVzaChhcnIpKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmNsYWltc1NlcnZpY2UuZ2V0RGlzY2hhcmdlUmVhc29ucygpLnN1YnNjcmliZShcclxuICAgICAgdmFsdWUgPT4ge1xyXG4gICAgICAgIHZhbHVlLmZvckVhY2goYXJyID0+ICB0aGlzLmRpc2NoYXJnZVJlYXNvbk9wdGlvbnNBbGwucHVzaChhcnIpKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmNsYWltc1NlcnZpY2UuZ2V0UXVpdFJlYXNvbnMoKS5zdWJzY3JpYmUoXHJcbiAgICAgIHZhbHVlID0+IHtcclxuICAgICAgICB2YWx1ZS5mb3JFYWNoKGFyciA9PiAgdGhpcy52b2xRdWl0UmVhc29uT3B0aW9uc0FsbC5wdXNoKGFycikpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmxvZ2dlci5kZWJ1Zygnbmcgb25pdCBvZiBlbXBsb3llciBncmlkJylcclxuICAgIHRoaXMubG9hZE1hc3RlckRhdGEoKTtcclxuICAgIGlmKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibGFuZ3VhZ2VcIikgPT09IFwiZXNcIil7XHJcbiAgICAgIHRoaXMucGF5UmF0ZU9wdGlvbnMgPSBDb21ib09wdGlvbi5QQVlfUEVSSU9EX0VTO1xyXG4gICAgICB0aGlzLmNvdW50cnlPcHRpb25zID0gQ29tYm9PcHRpb24uQ09VTlRSWV9FUztcclxuICAgICAgdGhpcy53b3JrQ291bnRyeU9wdGlvbnMgPSBDb21ib09wdGlvbi5XT1JLX0NPVU5UUllfRVM7XHJcbiAgICAgIHRoaXMuc3RhdGVzT3B0aW9ucyA9IENvbWJvT3B0aW9uLlVTX1NUQVRFU19FUztcclxuICAgICAgdGhpcy5taWxpdGFyeVNlcnZpY2VPcHRpb25zID0gQ29tYm9PcHRpb24uTUlMSVRBUllfU0VSVklDRV9FUztcclxuICAgICAgdGhpcy5icEVtcERlbE9wdGlvbnMgPSBDb21ib09wdGlvbi5CUF9FTVBfREVMX09QVFNfRVM7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnBheVJhdGVPcHRpb25zID0gQ29tYm9PcHRpb24uUEFZX1BFUklPRDtcclxuICAgICAgdGhpcy5jb3VudHJ5T3B0aW9ucyA9IENvbWJvT3B0aW9uLkNPVU5UUlk7XHJcbiAgICAgIHRoaXMud29ya0NvdW50cnlPcHRpb25zID0gQ29tYm9PcHRpb24uV09SS19DT1VOVFJZO1xyXG4gICAgICB0aGlzLnN0YXRlc09wdGlvbnMgPSBDb21ib09wdGlvbi5VU19TVEFURVM7XHJcbiAgICAgIHRoaXMubWlsaXRhcnlTZXJ2aWNlT3B0aW9ucyA9IENvbWJvT3B0aW9uLk1JTElUQVJZX1NFUlZJQ0U7XHJcbiAgICAgIHRoaXMuYnBFbXBEZWxPcHRpb25zID0gQ29tYm9PcHRpb24uQlBfRU1QX0RFTF9PUFRTO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb2xzID0gW1xyXG4gICAgICB7IGZpZWxkOiAnZW1wbG95ZXInLCBoZWFkZXI6ICdFbXBsb3llcicgfSxcclxuICAgICAgeyBmaWVsZDogJ2pvYlRpdGxlJywgaGVhZGVyOiAnSm9iIFRpdGxlJyB9LFxyXG4gICAgICB7IGZpZWxkOiAnUGF5JywgaGVhZGVyOiAnUGF5JyB9LFxyXG4gICAgICB7IGZpZWxkOiAnc3RhcnRFbmREYXRlJywgaGVhZGVyOiAnU3RhcnQgYW5kIEVuZCcgfSxcclxuICAgICAgeyBmaWVsZDogJ3NlcGFyYXRpb25SZWFzb24nLCBoZWFkZXI6ICdTZXBhcmF0aW9uIFJlYXNvbicgfSxcclxuICAgICAgeyBmaWVsZDogJycsIGhlYWRlcjogJycgfVxyXG4gICAgXTtcclxuICAgIHRoaXMuZm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xyXG4gICAgICBzZWxlY3RlZERyb3Bkb3duOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICAgIG90aGVyQ29tbWVudDogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLnJlcXVpcmVkICl9KTtcclxuXHJcbiAgICBpZiAodGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2UpIHtcclxuICAgICAgdGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2Uuc3Vic2NyaWJlKFxyXG4gICAgICAgIHJlcyA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UgPSByZXMudmFsdWVPZigpO1xyXG4gICAgICAgICAgICBpZih0aGlzLmNsYWltQXBwRW1wUmVzcG9uc2VNb2RlbEZyb21TZXJ2aWNlICYmIHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UuaXNOZXdDbGFpbUFwcGxpY2F0aW9uKXtcclxuICAgICAgICAgICAgICB0aGlzLmlzTmV3Q2xhaW0gPSB0aGlzLmNsYWltQXBwRW1wUmVzcG9uc2VNb2RlbEZyb21TZXJ2aWNlLmlzTmV3Q2xhaW1BcHBsaWNhdGlvbi52YWx1ZU9mKCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5jbGFpbWFudERvYiA9IG5ldyBEYXRlKHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UuZGF0ZU9mQmlydGgucmVwbGFjZShcIi1cIixcIi9cIikucmVwbGFjZShcIi1cIixcIi9cIikpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkRyb3Bkb3duQ2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRPcHRpb24gPSBldmVudC52YWx1ZTtcclxuICAgIHRoaXMuc2hvd0NvbW1lbnRCb3ggPSAodGhpcy5zZWxlY3RlZE9wdGlvbiA9PT0gJ090aGVyJyB8fCB0aGlzLnNlbGVjdGVkT3B0aW9uID09PSAnT3RybycpOyAvLyBDaGVjayBpZiAnb3RoZXInIGlzIHNlbGVjdGVkXHJcbiAgICBpZiAodGhpcy5zaG93Q29tbWVudEJveCkge1xyXG4gICAgICB0aGlzLmZvcm0uZ2V0KCdvdGhlckNvbW1lbnQnKT8uc2V0VmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZm9ybS5nZXQoJ290aGVyQ29tbWVudCcpPy5jbGVhclZhbGlkYXRvcnMoKTtcclxuICAgIH1cclxuICAgIHRoaXMuZm9ybS5nZXQoJ290aGVyQ29tbWVudCcpPy51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBhZGROZXdFbXBEZXRhaWxzKCkge1xyXG4gICAgdGhpcy5kaXNwbGF5ID0gdHJ1ZTtcclxuICAgIHRoaXMuaXNCYXNlUGVyaW9kRW1wbG95ZXI9ZmFsc2U7XHJcbiAgICB0aGlzLm5vRWRpdE1vZGU9ZmFsc2U7XHJcbiAgICB0aGlzLm1vZGVsRGlzcGxheS5lbWl0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkNoYW5nZTogRnVuY3Rpb24gPSAodmFsdWU6IFN0cmluZykgPT4ge1xyXG4gIH07XHJcblxyXG4gIHByaXZhdGUgb25Ub3VjaDogRnVuY3Rpb24gPSAoKSA9PiB7XHJcbiAgfTtcclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZih2YWx1ZSl7XHJcbiAgICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLm5leHQodmFsdWUpO1xyXG4gICAgfSBlbHNle1xyXG4gICAgICB0aGlzLnNldHVwRW1wbG95ZXIoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuXHJcbiAgICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5zdWJzY3JpYmUoZm4pO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xyXG4gICAgdGhpcy5vblRvdWNoID0gZm5cclxuICB9XHJcblxyXG4gIGFzeW5jIGdldElkZW50aWZpZXIoKXtcclxuICAgIGxldCB1dWlkO1xyXG4gICAgbGV0IGRhdGEgPSB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1NYXAuZ2V0KCdpZGVudGlmaWVyJyk7XHJcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcImRhdGEgZm9yIGlkZW50aWZpZXIgaXMgOiBcIiwgZGF0YSlcclxuICAgICAgaWYoZGF0YSl7ICAgICAgICAgIFxyXG4gICAgICAgIHV1aWQgPSBkYXRhO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHV1aWQgPSBhd2FpdCB0aGlzLnN0b3JhZ2UuZ2V0KEZiQ29uc3RhbnRzLnV1aWQpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB1dWlkO1xyXG4gIH1cclxuICBhc3luYyBzZXR1cEVtcGxveWVyKCkge1xyXG4gICAgbGV0IG1vZGVsID0gbmV3IENsYWltQXBwRW1wUmVxdWVzdE1vZGVsKCk7XHJcbiAgICBpZiAoIXRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkpIHtcclxuICAgICAgdGhpcy51dWlkID0gYXdhaXQgdGhpcy5nZXRJZGVudGlmaWVyKCk7XHJcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCd1dWlkIGlzID09PT0nLCB0aGlzLnV1aWQpO1xyXG4gICAgICBsZXQgdXJsID0gXCJcIjtcclxuICAgICAgaWYodGhpcy5scy5pc0NsYWltYW50KCkgPT09IHRydWUpe1xyXG4gICAgICAgIHVybCA9IFwiL2NsYWltcy1zZXJ2aWNlL2NsYWltL2NsYWltYW50L2FwcC9icGVtcGxveWVyc1wiO1xyXG4gICAgICAgIGxldCBwcm9jZXNzdHlwZSA9IHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbU1hcC5nZXQoJ3Byb2Nlc3N0eXBlJyk7XHJcbiAgICAgICAgaWYocHJvY2Vzc3R5cGUgPT09ICdhaWMtcmVvcGVuJyl7XHJcbiAgICAgICAgICB0aGlzLnN0b3JhZ2UucmVtb3ZlKEZiQ29uc3RhbnRzLnV1aWQpO1xyXG4gICAgICAgICAgbW9kZWwuZmxvd0Zyb20gPSBcIkFpYy1SZW9wZW4tZmxvd1wiO1xyXG4gICAgICAgIH0gIGVsc2UgaWYobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJmbG93S2V5XCIpID09ICc2MDAnKSB7XHJcbiAgICAgICAgICBtb2RlbC5mbG93RnJvbSA9IFwiQWljLVJlb3Blbi1mbG93XCI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGxldCBkYXRhID0gdGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtTWFwLmdldCgna2V5Jyk7XHJcbiAgICAgICAgaWYoZGF0YSl7XHJcbiAgICAgICAgICB0aGlzLnNzbkZvckNTUiA9IEpTT04ucGFyc2UoYXRvYihkYXRhKSk7XHJcbiAgICAgICAgICBtb2RlbC5zc24gPSB0aGlzLnNzbkZvckNTUjtcclxuICAgICAgICB9ICAgXHJcbiAgICAgICAgdXJsID0gXCIvY2xhaW1zLXNlcnZpY2UvY2xhaW0vYXBwL2JwZW1wbG95ZXJzXCI7XHJcbiAgICAgIH1cclxuICAgICAgIHRoaXMubG9nZ2VyLmluZm8oJ3RoZSB1dWlkIHVzZWQgaW4gbW9kZWwgaXMgOiAnLCB0aGlzLnV1aWQpO1xyXG4gICAgICBpZihtb2RlbC5mbG93RnJvbSA9PT0gJ0FpYy1SZW9wZW4tZmxvdycpe1xyXG4gICAgICAgIHRoaXMubG9nZ2VyLmluZm8oXCJJbnNpZGUgYWljIHJlb3BlbiBmbG93XCIpO1xyXG4gICAgICAgIHRoaXMuZmV0Y2hFbXBsb3llcnNGcm9tQmFja0VuZChtb2RlbCwgdXJsKTtcclxuICAgICAgfSBlbHNlIGlmKHRoaXMudXVpZCl7XHJcbiAgICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKFwiSW5zaWRlIGdldHRpbmcgdmFsdWVzIGJhc2VkIG9uIHV1aWRcIik7XHJcbiAgICAgICAgICBtb2RlbC51dWlkID0gdGhpcy51dWlkO1xyXG4gICAgICAgICAgdGhpcy5mZXRjaEVtcGxveWVyc0Zyb21CYWNrRW5kKG1vZGVsLCB1cmwpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubG9nZ2VyLmluZm8oXCJLZWVwIHdhaXRpbmcuLi4udXVpZCBub3QgZm91bmQuLlwiKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBmZXRjaEVtcGxveWVyc0Zyb21CYWNrRW5kKG1vZGVsOiBDbGFpbUFwcEVtcFJlcXVlc3RNb2RlbCwgdXJsOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuc2hvd1Byb2dyZXNzQmFyID0gdHJ1ZTtcclxuICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UucG9zdDxDbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWw+KHVybCwgbW9kZWwpLnN1YnNjcmliZShcclxuICAgICAgcmVzID0+IHtcclxuICAgICAgICBpZihyZXMuYnBFbXBMaXN0Lmxlbmd0aCA+IDApe1xyXG4gICAgICAgICAgcmVzLmJwRW1wTGlzdC5mb3JFYWNoKGVtcCA9PiB0aGlzLnNldENob2lzZU1vZGVscyhlbXApKVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5uZXh0KHJlcyk7XHJcbiAgICAgICAgdGhpcy5vbkNvbXBsZXRlLmVtaXQodGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2UuZ2V0VmFsdWUoKSk7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpKTtcclxuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnZW1wbG95ZXIgTGlzdCBmcm9tIFNlcnZpY2UnLCB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpKTtcclxuICAgICAgICB0aGlzLnNob3dQcm9ncmVzc0JhciA9IGZhbHNlO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnIgPT4ge1xyXG4gICAgICAgIGxldCBsaXN0ID0gbmV3IENsYWltQXBwRW1wUmVzcG9uc2VNb2RlbCgpO1xyXG4gICAgICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLm5leHQobGlzdCk7XHJcbiAgICAgICAgdGhpcy5zaG93UHJvZ3Jlc3NCYXIgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcbiAgXHJcbiAgZGVsZXRlQnBFbXBsKGV2ZW50Om51bWJlcil7XHJcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnRGVsZXRlIG1ldGhvZCBjYWxsZWQgJywgZXZlbnQpO1xyXG4gICAgdGhpcy5jbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZS5icEVtcExpc3Quc3BsaWNlKGV2ZW50LCAxKTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZUVtcGxveWVyKGVsZW1lbnRJbmRleCkge1xyXG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0RlbGV0ZSBtZXRob2QgY2FsbGVkIGZvciA9ICcsIGVsZW1lbnRJbmRleCk7XHJcbiAgICB0aGlzLmlzQmFzZVBlcmlvZEVtcGxveWVyPWZhbHNlO1xyXG4gICAgLy90aGlzLmNsYWltQXBwRW1wUmVzcG9uc2VNb2RlbEZyb21TZXJ2aWNlLmJwRW1wTGlzdFtlbGVtZW50SW5kZXhdLmVtcERlbGV0ZWQgPSBcIllcIjtcclxuICAgIHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UuYnBFbXBMaXN0LnNwbGljZShlbGVtZW50SW5kZXgsIDEpO1xyXG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0FmdGVyIGRlbGV0ZSBsaXN0IGlzID0gJywgdGhpcy5jbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBkZWxldGVFbXBsb3llckJhc2VQZXJpb2QoZWxlbWVudEluZGV4KSB7XHJcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnRGVsZXRlIG1ldGhvZCBiYXNlIHBlcmlvZCBlbXBsb3llciBjYWxsZWQgZm9yID0gJywgZWxlbWVudEluZGV4KTtcclxuICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkuYnBFbXBMaXN0W2VsZW1lbnRJbmRleF0ud29ya0ZsYWcgPSBcIk5cIjtcclxuICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkuYnBFbXBMaXN0W2VsZW1lbnRJbmRleF0uZW1wRGVsZXRlZCA9IFwiWVwiO1xyXG4gICAgY29uc3QgYnBEZWxSZWFzb24gPSB0aGlzLnNlbGVjdGVkT3B0aW9uICsgXCIgXCIgKyAodGhpcy5zaG93Q29tbWVudEJveCA/IFwiLSBcIit0aGlzLmZvcm0uZ2V0KCdvdGhlckNvbW1lbnQnKT8udmFsdWU6IFwiXCIpO1xyXG4gICAgdGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2UuZ2V0VmFsdWUoKS5icEVtcExpc3RbZWxlbWVudEluZGV4XS5icEVtcERlbFJlYXNvbiA9IGJwRGVsUmVhc29uO1xyXG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0FmdGVyIGRlbGV0ZSBiYXNlIHBlcmlvZCBlbXBsb3llciBsaXN0IGlzID0gJywgdGhpcy5jbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBlZGl0RW1wbG95ZXIoZW1wbG95ZXIpIHtcclxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdFZGl0IG1ldGhvZCBjYWxsZWQnLCBlbXBsb3llcik7XHJcbiAgICB0aGlzLmluZGV4VG9FZGl0ID0gdGhpcy5jbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZS5icEVtcExpc3QuaW5kZXhPZihlbXBsb3llcik7XHJcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnSW5kZXggVG8gRWRpdCA9ICcsIHRoaXMuaW5kZXhUb0VkaXQpO1xyXG4gICAgdGhpcy5kaXNwbGF5ID0gdHJ1ZTtcclxuICAgIHRoaXMubm9FZGl0TW9kZSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBmaW5pc2goZW1wbG95ZXIpIHtcclxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdGaW5pc2ggRW1wbG95ZXIgY2FsbGVkJywgZW1wbG95ZXIpO1xyXG4gICAgdGhpcy5pbmRleFRvRWRpdCA9IHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UuYnBFbXBMaXN0LmluZGV4T2YoZW1wbG95ZXIpO1xyXG4gICAgZW1wbG95ZXIud29ya0ZsYWcgPSAnWSc7XHJcbiAgICB0aGlzLmlzQmFzZVBlcmlvZEVtcGxveWVyID0gdHJ1ZTtcclxuICAgIHRoaXMuZGlzcGxheSA9IHRydWU7XHJcbiAgICB0aGlzLm1vZGVsRGlzcGxheS5lbWl0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgZWRpdEJhc2VQZXJpb2RFbXBsb3llcihlbXBsb3llcikge1xyXG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0VkaXQgQmFzZVBlcmlvZCBFbXBsb3llciBjYWxsZWQgZm9yICcsIGVtcGxveWVyKTtcclxuICAgIHRoaXMuaW5kZXhUb0VkaXQgPSB0aGlzLmNsYWltQXBwRW1wUmVzcG9uc2VNb2RlbEZyb21TZXJ2aWNlLmJwRW1wTGlzdC5pbmRleE9mKGVtcGxveWVyKTtcclxuICAgIHRoaXMuZGlzcGxheSA9IHRydWU7XHJcbiAgICB0aGlzLmlzQmFzZVBlcmlvZEVtcGxveWVyID0gdHJ1ZTtcclxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdJbmRleCBUbyBFZGl0ID0gJywgdGhpcy5pbmRleFRvRWRpdCk7XHJcbiAgfVxyXG5cclxuICBvbk1vZGVsQ2FuY2VsKGNhbmNlbDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0NhbmNlbCBNZXRob2QgICcsIGNhbmNlbCk7XHJcbiAgICB0aGlzLmRpc3BsYXkgPSBjYW5jZWw7XHJcbiAgICB0aGlzLmJhc2VQZXJpb2RkaXNwbGF5ID0gY2FuY2VsO1xyXG4gICAgdGhpcy5pbmRleFRvRWRpdCA9IG51bGw7XHJcbiAgICB0aGlzLmlzQmFzZVBlcmlvZEVtcGxveWVyID0gZmFsc2U7XHJcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnYWZ0ZXIgdmFsdWUgY2hhbmdlIG9uIGVtcGxveWVyIGdyaWQgJywgdGhpcy5kaXNwbGF5KTtcclxuICB9XHJcblxyXG4gIGFkZEVtcGxveWVyKGV2ZW50OiBDbGFpbUFwcEVtcGxveWVyRGV0YWlsc01vZGVsKSB7XHJcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQWRkIEVtcGxveWVyIGNhbGxlZCBmcm9tIGdyaWQgJywgZXZlbnQsICdpbmRleFRvRWRpdCcsIHRoaXMuaW5kZXhUb0VkaXQsJ3RoaXMuaXNCYXNlUGVyaW9kRW1wbG95ZXInLHRoaXMuaXNCYXNlUGVyaW9kRW1wbG95ZXIpO1xyXG4gICAgZXZlbnQuZW1wRGVsZXRlZCA9ICdOJztcclxuICAgIGlmICh0aGlzLmluZGV4VG9FZGl0IHx8IHRoaXMuaW5kZXhUb0VkaXQgPT0gMCkge1xyXG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnSW5zaWRlIGlmIG9mIGFkZCBlbXBsb3llciAtLSAnLGV2ZW50KVxyXG4gICAgICBsZXQgZW1wRGF0YU1vZGVsID0gbmV3IENsYWltT25seUVtcGxveWVyRGF0YU1vZGVsKCk7XHJcbiAgICAgIGxldCBlbXBQcm92aWRlZFdhZ2VNb2RlbCA9IG5ldyBFbXBsb3llcldhZ2VzTW9kZWwoKTtcclxuICAgICAgaWYgKHRoaXMuaXNCYXNlUGVyaW9kRW1wbG95ZXIpIHtcclxuICAgICAgICB0aGlzLmNsYWltZGV0YWlsTW9kZWwgPSBuZXcgQ2xhaW1BcHBFbXBsb3llckRldGFpbHNNb2RlbCgpO1xyXG4gICAgICAgIHRoaXMuY2xhaW1kZXRhaWxNb2RlbCA9IGV2ZW50O1xyXG4gICAgICAgIGVtcERhdGFNb2RlbCA9ICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpLmJwRW1wTGlzdFt0aGlzLmluZGV4VG9FZGl0XS5lbXBsb3llckRhdGE7XHJcbiAgICAgICAgZW1wUHJvdmlkZWRXYWdlTW9kZWwgPSB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpLmJwRW1wTGlzdFt0aGlzLmluZGV4VG9FZGl0XS5lbXBsb3llclByb3ZpZGVkV2FnZXM7XHJcbiAgICAgICAgZXZlbnQuYnBFbXBsb3llckZsYWcgPSAnMSdcclxuICAgICAgICBldmVudC5lbXBsb3llckRhdGEgPSBlbXBEYXRhTW9kZWw7XHJcbiAgICAgICAgZXZlbnQuZW1wbG95ZXJQcm92aWRlZFdhZ2VzID0gZW1wUHJvdmlkZWRXYWdlTW9kZWw7XHJcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ3Jlc2V0dGluZyB0aGUgdmFsdWUgYWdhaW4gPSAgJyxldmVudCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsID0gbmV3IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwoKTtcclxuICAgICAgICB0aGlzLmNsYWltZGV0YWlsTW9kZWwgPSBldmVudDtcclxuICAgICAgICBlbXBEYXRhTW9kZWwgPSBuZXcgQ2xhaW1Pbmx5RW1wbG95ZXJEYXRhTW9kZWwoKTtcclxuICAgICAgIGlmKGV2ZW50LmVtcGxveWVyVHlwZT09PSdSRUcnKXtcclxuICAgICAgICBpZihldmVudC5wcmV2V29ya2VkU3RhdGU9PT0nS1MnKXtcclxuICAgICAgICBlbXBEYXRhTW9kZWwuZGlzcGxheU5hbWUgPSBldmVudC5lbXBsb3llck5hbWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICBlbXBEYXRhTW9kZWwuZGlzcGxheU5hbWUgPSBldmVudC5vdGhTdGF0ZUVtcE5hbWU7XHJcbiAgICAgICAgZW1wRGF0YU1vZGVsLnByZXZXb3JrZWRTdGF0ZSA9IGV2ZW50LnByZXZXb3JrZWRTdGF0ZTsgIFxyXG4gICAgICAgIH1cclxuICAgICAgICBlbXBEYXRhTW9kZWwubWFpbGluZ0FkZHJlc3NEaXNwbGF5ID1cclxuICAgICAgICBldmVudC5hZGRyZXNzWydzdHJlZXRBZGRyZXNzJ10gKyAnPGJyPi0nICsgZXZlbnQuYWRkcmVzc1snY2l0eSddICArICctJyArIChldmVudC5hZGRyZXNzWydzdGF0ZSddID8gZXZlbnQuYWRkcmVzc1snc3RhdGUnXS50ZXh0IDogJycpICsgJy08YnI+JyArIChldmVudC5hZGRyZXNzWydjb3VudHJ5J10gPyBldmVudC5hZGRyZXNzWydjb3VudHJ5J10udmFsdWUgOiAnJyk7XHJcbiAgICAgIH0gZWxzZSBpZihldmVudC5lbXBsb3llclR5cGU9PT0nRkVEJyl7IFxyXG4gICAgICAgIGVtcERhdGFNb2RlbC5kaXNwbGF5TmFtZSA9IGV2ZW50LmZlZEVtcGxveWVyTmFtZTtcclxuICAgICAgICBlbXBEYXRhTW9kZWwubWFpbGluZ0FkZHJlc3NEaXNwbGF5ID1cclxuICAgICAgICBldmVudC5hZGRyZXNzWydzdHJlZXRBZGRyZXNzJ10gKyAnPGJyPi0nICsgZXZlbnQuYWRkcmVzc1snY2l0eSddICArICctJyArIChldmVudC5hZGRyZXNzWydzdGF0ZSddID8gZXZlbnQuYWRkcmVzc1snc3RhdGUnXS50ZXh0IDogJycpICsgJy08YnI+JyArIChldmVudC5hZGRyZXNzWydjb3VudHJ5J10gPyBldmVudC5hZGRyZXNzWydjb3VudHJ5J10udmFsdWUgOiAnJyk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXCJubyBhZGRyZXNzIGZvciB0aGlzIGVtcGxveWVyIHR5cGVcIik7XHJcbiAgICAgIH1cclxuICAgICAgICBlbXBEYXRhTW9kZWwuZW1wbG95ZXJUeXBlID0gZXZlbnQuZW1wbG95ZXJUeXBlO1xyXG4gICAgICAgIGV2ZW50LmVtcGxveWVyRGF0YSA9IGVtcERhdGFNb2RlbDtcclxuICAgICAgICBlbXBEYXRhTW9kZWwuZW1wbG95ZXJJZD1ldmVudC5lbXBsb3llcklkO1xyXG4gICAgICAgIGVtcERhdGFNb2RlbC5tYWlsQWRkcmVzc0xpbmUxPWV2ZW50LmFkZHJlc3M/LnN0cmVldEFkZHJlc3M7XHJcbiAgICAgICAgZW1wRGF0YU1vZGVsLm1haWxBZGRyZXNzTGluZTI9ZXZlbnQuYWRkcmVzcz8ub3B0aW9uYWxBZGRyZXNzO1xyXG4gICAgICAgIGV2ZW50LmJwRW1wbG95ZXJGbGFnID0gJzAnXHJcbiAgICAgIH1cclxuICAgICAgdGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2UuZ2V0VmFsdWUoKS5icEVtcExpc3RbdGhpcy5pbmRleFRvRWRpdF0gPSBldmVudDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdJbnNpZGUgZWxzZSBvZiBhZGQgZW1wbG95ZXIgLS0gJyxldmVudClcclxuICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsID0gbmV3IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwoKTtcclxuICAgICAgbGV0IGVtcERhdGFNb2RlbCA9IG5ldyBDbGFpbU9ubHlFbXBsb3llckRhdGFNb2RlbCgpXHJcbiAgICAgIHRoaXMuY2xhaW1kZXRhaWxNb2RlbCA9IGV2ZW50O1xyXG4gICAgICBlbXBEYXRhTW9kZWwgPSBuZXcgQ2xhaW1Pbmx5RW1wbG95ZXJEYXRhTW9kZWwoKTtcclxuICAgICAgaWYoZXZlbnQuZW1wbG95ZXJUeXBlPT09J1JFRycpe1xyXG4gICAgICAgIGlmKGV2ZW50LnByZXZXb3JrZWRTdGF0ZT09PSdLUycpe1xyXG4gICAgICAgICAgICBlbXBEYXRhTW9kZWwuZGlzcGxheU5hbWUgPSBldmVudC5lbXBsb3llck5hbWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGVtcERhdGFNb2RlbC5kaXNwbGF5TmFtZSA9IGV2ZW50Lm90aFN0YXRlRW1wTmFtZTtcclxuICAgICAgICAgIGVtcERhdGFNb2RlbC5wcmV2V29ya2VkU3RhdGUgPSBldmVudC5wcmV2V29ya2VkU3RhdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICBlbXBEYXRhTW9kZWwubWFpbGluZ0FkZHJlc3NEaXNwbGF5ID1cclxuICAgICAgZXZlbnQuYWRkcmVzc1snc3RyZWV0QWRkcmVzcyddICsgJzxicj4nKyBldmVudC5hZGRyZXNzWydjaXR5J10gICsgJy0nICsgKGV2ZW50LmFkZHJlc3NbJ3N0YXRlJ10gPyBldmVudC5hZGRyZXNzWydzdGF0ZSddLnRleHQgOiAnJykgKyAnLTxicj4nICsoZXZlbnQuYWRkcmVzc1snY291bnRyeSddID8gZXZlbnQuYWRkcmVzc1snY291bnRyeSddLnZhbHVlIDogJycpO1xyXG4gICAgICB9IGVsc2UgaWYoZXZlbnQuZW1wbG95ZXJUeXBlPT09J0ZFRCcpe1xyXG4gICAgICAgIGVtcERhdGFNb2RlbC5kaXNwbGF5TmFtZSA9IGV2ZW50LmZlZEVtcGxveWVyTmFtZTtcclxuICAgICAgICBlbXBEYXRhTW9kZWwubWFpbGluZ0FkZHJlc3NEaXNwbGF5ID1cclxuICAgICAgICBldmVudC5hZGRyZXNzWydzdHJlZXRBZGRyZXNzJ10rICc8YnI+JyArIGV2ZW50LmFkZHJlc3NbJ2NpdHknXSAgKyAnLScgKyAoZXZlbnQuYWRkcmVzc1snc3RhdGUnXSA/IGV2ZW50LmFkZHJlc3NbJ3N0YXRlJ10udGV4dCA6ICcnKSArICctPGJyPicgKyAoZXZlbnQuYWRkcmVzc1snY291bnRyeSddID8gZXZlbnQuYWRkcmVzc1snY291bnRyeSddLnZhbHVlIDogJycpO1xyXG4gICAgICB9ZWxzZSB7XHJcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXCJJbnNpZGUgZWxzZSAtIG5vIGFkZHJlc3MgZm9yIHRoaXMgZW1wbG95ZXIgdHlwZVwiKTtcclxuICAgICAgfVxyXG4gICAgICBlbXBEYXRhTW9kZWwuZW1wbG95ZXJUeXBlID0gZXZlbnQuZW1wbG95ZXJUeXBlO1xyXG4gICAgICBlbXBEYXRhTW9kZWwuZW1wbG95ZXJJZD1ldmVudC5lbXBsb3llcklkO1xyXG4gICAgICBlbXBEYXRhTW9kZWwubWFpbEFkZHJlc3NMaW5lMT1ldmVudC5hZGRyZXNzPy5zdHJlZXRBZGRyZXNzO1xyXG4gICAgICBlbXBEYXRhTW9kZWwubWFpbEFkZHJlc3NMaW5lMj1ldmVudC5hZGRyZXNzPy5vcHRpb25hbEFkZHJlc3M7XHJcbiAgICAgIGlmICh0aGlzLmlzQmFzZVBlcmlvZEVtcGxveWVyKSB7XHJcbiAgICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsLmJwRW1wbG95ZXJGbGFnID0gJzEnO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuY2xhaW1kZXRhaWxNb2RlbC5icEVtcGxveWVyRmxhZyA9ICcwJztcclxuICAgICAgfVxyXG4gICAgICBjb25zb2xlLmxvZyhcIkFkZGluZyBlbXBsciBkYXRhIHRvIGNsYWltZGV0YWlsbW9kZTo6XCIsZW1wRGF0YU1vZGVsKTtcclxuICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsLmVtcGxveWVyRGF0YSA9IGVtcERhdGFNb2RlbDtcclxuICAgICAgY29uc29sZS5sb2coXCJBZGRpbmcgZW1wbHIgZGF0YSB0byBjbGFpbWRldGFpbG1vZGU6OlwiLGVtcERhdGFNb2RlbCk7XHJcbiAgICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkuYnBFbXBMaXN0LnB1c2godGhpcy5jbGFpbWRldGFpbE1vZGVsKTtcclxuICAgICAgY29uc29sZS5sb2coXCJmcm9tIGJwbGlzdCBpbiBncmlkOjo6XCIsdGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2UuZ2V0VmFsdWUoKS5icEVtcExpc3QubGVuZ3RoKTtcclxuICAgICAgdGhpcy5tb2RlbERhdGFQYXNzLmVtaXQoZW1wRGF0YU1vZGVsKTtcclxuICAgIH1cclxuICAgIHRoaXMuZGlzcGxheSA9IGZhbHNlO1xyXG4gICAgdGhpcy5pbmRleFRvRWRpdCA9IG51bGw7XHJcbiAgfVxyXG5cclxuICByZW1vdmVFbXBsb3ltZW50KHNlbGVjdGVkRW1wbG95ZXI6IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwsIGluZGV4KXtcclxuICAgIHRoaXMuaW5kZXhUb0VkaXQgPSBpbmRleDtcclxuICAgIHRoaXMuc2VsZWN0ZWRFbXBsb3llciA9IHNlbGVjdGVkRW1wbG95ZXI7XHJcbiAgICB0aGlzLnNob3dDb25maXJtUG9wdXAgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgZGlzcGxheUJwRW1wQ29uZmlybWF0aW9uKCl7XHJcbiAgICB0aGlzLnNob3dicEVtcERlbFBvcHVwID0gdHJ1ZTtcclxuICB9XHJcbiAgcmVtb3ZlQmFzZVBlcmlvZEVtcGxveWVyKCl7XHJcbiAgICB0aGlzLmRlbGV0ZUVtcGxveWVyQmFzZVBlcmlvZCh0aGlzLmluZGV4VG9FZGl0KTtcclxuICAgIHRoaXMuc2hvd0NvbmZpcm1Qb3B1cCA9IGZhbHNlO1xyXG4gICAgdGhpcy5zaG93YnBFbXBEZWxQb3B1cCA9IGZhbHNlO1xyXG4gICAgdGhpcy5zZWxlY3RlZEVtcGxveWVyID0gbnVsbDtcclxuICAgIHRoaXMuaW5kZXhUb0VkaXQgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmVzdG9yZUVtcGxveW1lbnQoc2VsZWN0ZWRFbXBsb3llcjogQ2xhaW1BcHBFbXBsb3llckRldGFpbHNNb2RlbCwgaW5kZXgpe1xyXG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0RlbGV0ZSBtZXRob2QgYmFzZSBwZXJpb2QgZW1wbG95ZXIgY2FsbGVkIGZvciA9ICcsIGluZGV4KTtcclxuICAgIGxldCBjdXJyZW50V29ya0ZsYWdWYWx1ZSA9IHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkuYnBFbXBMaXN0W2luZGV4XS53b3JrRmxhZztcclxuICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkuYnBFbXBMaXN0W2luZGV4XS53b3JrRmxhZyA9IGN1cnJlbnRXb3JrRmxhZ1ZhbHVlID8gKGN1cnJlbnRXb3JrRmxhZ1ZhbHVlID09IFwiTlwiID8gXCJZXCIgOiBcIk5cIikgOiBudWxsO1xyXG4gICAgdGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2UuZ2V0VmFsdWUoKS5icEVtcExpc3RbaW5kZXhdLmVtcERlbGV0ZWQgPSBcIk5cIjtcclxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdBZnRlciBkZWxldGUgYmFzZSBwZXJpb2QgZW1wbG95ZXIgbGlzdCBpcyA9ICcsIHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLmluZGV4VG9FZGl0ID0gbnVsbDtcclxuICAgIHRoaXMuc2hvd0NvbmZpcm1Qb3B1cCA9IGZhbHNlO1xyXG4gICAgdGhpcy5zaG93YnBFbXBEZWxQb3B1cCA9IGZhbHNlO1xyXG4gICAgdGhpcy5zZWxlY3RlZEVtcGxveWVyID0gbnVsbDtcclxuICAgIHRoaXMuZm9ybS5yZXNldCgpO1xyXG4gIH1cclxuICBzZXRDaG9pc2VNb2RlbHMoZW1wOiBDbGFpbUFwcEVtcGxveWVyRGV0YWlsc01vZGVsKTogdm9pZCB7XHJcbiAgICBsZXQgc2VwUmVhc29uIDogQ2hvaWNlc01vZGVsW10gPSB0aGlzLmVtcGxveW1lbnRTdGF0dXNPcHRpb25zQWxsLmZpbHRlcihzID0+IHMudmFsdWUgPT0gZW1wLnJlYXNvblNlcGFyYXRpb24/LnZhbHVlKTtcclxuICAgIGlmKHNlcFJlYXNvbi5sZW5ndGggPiAwKXtcclxuICAgICAgZW1wLnJlYXNvblNlcGFyYXRpb24gPSBzZXBSZWFzb25bMF07XHJcbiAgICB9XHJcbiAgICBsZXQgZGlzY2hhcmdlUmVhc29uIDogQ2hvaWNlc01vZGVsW10gPSB0aGlzLmRpc2NoYXJnZVJlYXNvbk9wdGlvbnNBbGwuZmlsdGVyKHMgPT4gcy52YWx1ZSA9PSBlbXAuZGlzY2hhcmdlRGV0YWlsPy52YWx1ZSk7XHJcbiAgICBpZihkaXNjaGFyZ2VSZWFzb24ubGVuZ3RoID4gMCl7XHJcbiAgICAgIGVtcC5kaXNjaGFyZ2VEZXRhaWwgPSBkaXNjaGFyZ2VSZWFzb25bMF07XHJcbiAgICB9XHJcbiAgICBsZXQgdm9sUXVpdCA6IENob2ljZXNNb2RlbFtdID0gdGhpcy52b2xRdWl0UmVhc29uT3B0aW9uc0FsbC5maWx0ZXIocyA9PiBzLnZhbHVlID09IGVtcC52b2xRdWl0RGV0YWlscz8udmFsdWUpO1xyXG4gICAgaWYodm9sUXVpdC5sZW5ndGggPiAwKXtcclxuICAgICAgZW1wLnZvbFF1aXREZXRhaWxzID0gdm9sUXVpdFswXTtcclxuICAgIH1cclxuICAgIGxldCBwYXlSYXRlRnJlcXVlbmN5IDogQ2hvaWNlc01vZGVsW10gPSB0aGlzLnBheVJhdGVPcHRpb25zLmZpbHRlcihzID0+IHMudmFsdWUgPT0gZW1wLnBheVJhdGVGcmVxdWVuY3k/LnZhbHVlKTtcclxuICAgIGlmKHBheVJhdGVGcmVxdWVuY3kubGVuZ3RoID4gMCl7XHJcbiAgICAgIGVtcC5wYXlSYXRlRnJlcXVlbmN5ID0gcGF5UmF0ZUZyZXF1ZW5jeVswXTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgY291bnRyeSA6IENob2ljZXNNb2RlbFtdID0gdGhpcy53b3JrQ291bnRyeU9wdGlvbnMuZmlsdGVyKHMgPT4gcy52YWx1ZSA9PSBlbXAuZmVkV29ya0NvdW50cnk/LnZhbHVlKTtcclxuICAgIGlmKGNvdW50cnkubGVuZ3RoID4gMCl7XHJcbiAgICAgIGVtcC5mZWRXb3JrQ291bnRyeSA9IGNvdW50cnlbMF07XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHN0YXRlIDogQ2hvaWNlc01vZGVsW10gPSB0aGlzLnN0YXRlc09wdGlvbnMuZmlsdGVyKHMgPT4gcy52YWx1ZSA9PSBlbXAuZmVkV29ya1N0YXRlPy52YWx1ZSk7XHJcbiAgICBpZihzdGF0ZS5sZW5ndGggPiAwKXtcclxuICAgICAgZW1wLmZlZFdvcmtTdGF0ZSA9IHN0YXRlWzBdO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBzZXJ2aWNlQnJhbmNoIDogQ2hvaWNlc01vZGVsW10gPSB0aGlzLm1pbGl0YXJ5U2VydmljZU9wdGlvbnMuZmlsdGVyKHMgPT4gcy52YWx1ZSA9PSBlbXAuc2VydmljZUJyYW5jaD8udmFsdWUpO1xyXG4gICAgaWYoc2VydmljZUJyYW5jaC5sZW5ndGggPiAwKXtcclxuICAgICAgZW1wLnNlcnZpY2VCcmFuY2ggPSBzZXJ2aWNlQnJhbmNoWzBdO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCB3b3JrU3RhdGUgOiBDaG9pY2VzTW9kZWxbXSA9IHRoaXMuc3RhdGVzT3B0aW9ucy5maWx0ZXIocyA9PiBzLnZhbHVlID09IGVtcC53b3JrU3RhdGU/LnZhbHVlPy50cmltKCkpO1xyXG4gICAgZW1wLndvcmtTdGF0ZSA9IHdvcmtTdGF0ZVswXTtcclxuXHJcbiAgfVxyXG59XHJcblxyXG5cclxuIiwiPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1cIiBzdHlsZT1cIm1hcmdpbi1sZWZ0OiAtNXB4O1wiPlxyXG48aW9uLXJvdz5cclxuICA8aW9uLWNvbD5cclxuICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ2NoZWNrLWNpcmNsZSddXCIgY2xhc3M9XCJhY3Rpb24taWNvbiBmb250LWJvbGRcIj48L2ZhLWljb24+XHJcbiAgICA8c3BhbiBbaW5uZXJIdG1sXT1cIidpbmR1Y3Rpb24uZW1wbG95bWVudC5zdWJoZWFkZXIuY29uZmlybScgfCB0cmFuc2xhdGUgfCB0cnVzdEh0bWxcIj48L3NwYW4+LCZuYnNwO1xyXG4gICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAndHJhc2gtYWx0J11cIiBjbGFzcz1cImFjdGlvbi1pY29uIGZvbnQtYm9sZFwiPjwvZmEtaWNvbj5cclxuICAgIDxzcGFuIFtpbm5lckh0bWxdPVwiJ2luZHVjdGlvbi5lbXBsb3ltZW50LnN1YmhlYWRlci5kZWxldGUnIHwgdHJhbnNsYXRlIHwgdHJ1c3RIdG1sXCI+PC9zcGFuPiwmbmJzcDtcclxuICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ3BsdXMnXVwiIGNsYXNzPVwiYWN0aW9uLWljb24gZm9udC1ib2xkXCI+PC9mYS1pY29uPlxyXG4gICAgPHNwYW4gW2lubmVySHRtbF09XCInaW5kdWN0aW9uLmVtcGxveW1lbnQuc3ViaGVhZGVyLmFkZCcgfCB0cmFuc2xhdGUgfCB0cnVzdEh0bWxcIj48L3NwYW4+LCZuYnNwO1xyXG4gICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAnZWRpdCddXCIgY2xhc3M9XCJhY3Rpb24taWNvbiBmb250LWJvbGRcIj48L2ZhLWljb24+XHJcbiAgICA8c3BhbiBbaW5uZXJIdG1sXT1cIidpbmR1Y3Rpb24uZW1wbG95bWVudC5zdWJoZWFkZXIuZWRpdCcgfCB0cmFuc2xhdGUgfCB0cnVzdEh0bWxcIj48L3NwYW4+LCZuYnNwO1xyXG4gICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAndHJhc2gtcmVzdG9yZS1hbHQnXVwiIGNsYXNzPVwiYWN0aW9uLWljb24gZm9udC1ib2xkXCI+PC9mYS1pY29uPlxyXG4gICAgPHNwYW4gW2lubmVySHRtbF09XCInaW5kdWN0aW9uLmVtcGxveW1lbnQuc3ViaGVhZGVyLnJlc3RvcmUnIHwgdHJhbnNsYXRlIHwgdHJ1c3RIdG1sXCI+PC9zcGFuPlxyXG4gIDwvaW9uLWNvbD5cclxuPC9pb24tcm93PlxyXG5cclxuPHAtdGFibGUgI2R0IFtjb2x1bW5zXT1cImNvbHNcIiBbdmFsdWVdPVwiY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UuYnBFbXBMaXN0XCIgW2xvYWRpbmddPVwic2hvd1Byb2dyZXNzQmFyXCJcclxuIFtyb3dIb3Zlcl09XCJ0cnVlXCIgKm5nSWY9XCJjbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZVwiIHN0eWxlQ2xhc3M9XCJwLWRhdGF0YWJsZS1zdHJpcGVkIGFwcC1kYXRhdGFibGUgaW9uLXBhZGRpbmctdG9wXCI+XHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zIHJvbGU9XCJwcmVzZW50YXRpb25cIj5cclxuICAgIDx0cj5cclxuICAgICAgPHRoIGNvbHNwYW49XCIyXCIgc2NvcGU9XCJjb2xncm91cFwiIHN0eWxlPVwid2lkdGg6IDIwJTtcIj5cclxuICAgICAgICB7e1wiaW5kdWN0aW9uLmVtcGxveW1lbnQudGFibGUuZW1wbG95ZXIubmFtZVwifHRyYW5zbGF0ZX19XHJcbiAgICAgIDwvdGg+XHJcbiAgICAgIDx0aD5cclxuICAgICAgICB7e1wiaW5kdWN0aW9uLmVtcGxveW1lbnQudGFibGUuam9iLnRpdGxlXCJ8dHJhbnNsYXRlfX1cclxuICAgICAgIDwvdGg+XHJcbiAgICAgICA8dGg+XHJcbiAgICAgICAge3tcImluZHVjdGlvbi5lbXBsb3ltZW50LnRhYmxlLnBheVwifHRyYW5zbGF0ZX19XHJcbiAgICAgICA8L3RoPlxyXG4gICAgICAgPHRoPlxyXG4gICAgICAgIHt7XCJpbmR1Y3Rpb24uZW1wbG95bWVudC50YWJsZS5kYXRlc1wifHRyYW5zbGF0ZX19XHJcbiAgICAgICA8L3RoPlxyXG4gICAgICAgPHRoPlxyXG4gICAgICAgIHt7XCJpbmR1Y3Rpb24uZW1wbG95bWVudC50YWJsZS5zZXAucmVhc29uXCJ8dHJhbnNsYXRlfX1cclxuICAgICAgIDwvdGg+XHJcbiAgICAgICBcclxuICAgIDwvdHI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuICBcclxuICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1lbXBsb3llciBsZXQtcm93SW5kZXg9XCJyb3dJbmRleFwiPlxyXG4gICAgPHRyIGNsYXNzPVwidWktc2VsZWN0YWJsZS1yb3dcIiBbbmdDbGFzc109XCJlbXBsb3llci5lbXBEZWxldGVkPT0nWScgPyAnc3RyaWtldGhyb3VnaCcgOiBudWxsXCI+XHJcblxyXG4gICAgICA8dGQgKm5nSWY9XCIoZW1wbG95ZXIuZW1wbG95ZXJEYXRhLnRyYWRlTmFtZSB8fCBlbXBsb3llci5lbXBsb3llckRhdGEuZGlzcGxheU5hbWUpICYmIGVtcGxveWVyLmVtcGxveWVyVHlwZSE9J01JTCdcIiBzdHlsZT1cIndpZHRoOiAyMCU7XCI+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPnt7XCJpbmR1Y3Rpb24uZW1wbG95bWVudC5lbXBsb3llci50ZXh0XCJ8dHJhbnNsYXRlfX08L3NwYW4+PHNwYW4+XHJcbiAgICAgICAge3tlbXBsb3llci5lbXBsb3llckRhdGEuZGlzcGxheU5hbWV9fTxicj5cclxuICAgICAgICB7e2VtcGxveWVyLmVtcGxveWVyRGF0YS50cmFkZU5hbWV9fTxicj5cclxuICAgICAgPC9zcGFuPjxkaXYgc3R5bGU9XCJmb250LXNpemU6IDEycHg7XCIgW2lubmVySHRtbF09XCJlbXBsb3llci5lbXBsb3llckRhdGEubWFpbGluZ0FkZHJlc3NEaXNwbGF5IHwgdHJ1c3RIdG1sXCI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8L3RkPlxyXG4gICAgICBcclxuICAgICAgPHRkICpuZ0lmPVwiIWVtcGxveWVyLmVtcGxveWVyRGF0YS5kaXNwbGF5TmFtZSAmJiBlbXBsb3llci5lbXBsb3llclR5cGUhPSdNSUwnXCIgc3R5bGU9XCJ3aWR0aDogMjAlO1wiPjxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj57e1wiaW5kdWN0aW9uLmVtcGxveW1lbnQuZW1wbG95ZXIudGV4dFwifHRyYW5zbGF0ZX19PC9zcGFuPjxzcGFuPlxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC90ZD5cclxuXHJcbiAgICAgIDx0ZCAqbmdJZj1cImVtcGxveWVyLmVtcGxveWVyVHlwZT09PSdNSUwnXCI+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiIHN0eWxlPVwid2lkdGg6IDIwJTtcIj57e1wiaW5kdWN0aW9uLmVtcGxveW1lbnQuZW1wbG95ZXIudGV4dFwifHRyYW5zbGF0ZX19PC9zcGFuPjxzcGFuPlxyXG4gICAgICAgICAge3tlbXBsb3llci5zZXJ2aWNlQnJhbmNoLnRleHR9fSA8YnI+XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgICA8L3RkPlxyXG4gICAgICA8dGQgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+IFxyXG4gICAgICAgIDxpb24tYnV0dG9uIHNpemU9XCJzbWFsbFwiICAqbmdJZj1cImVtcGxveWVyLmJwRW1wbG95ZXJGbGFnPT09JzEnICYmIGVtcGxveWVyLnBheVJhdGUgJiYgZW1wbG95ZXIuc3RhcnREYXRlICYmIGVtcGxveWVyLmVtcERlbGV0ZWQhPSdZJ1wiIGNvbG9yPVwic3VjY2Vzc1wiIGZpbGw9XCJvdXRsaW5lXCIgXHJcbiAgICAgICAgICAoY2xpY2spPVwiZWRpdEJhc2VQZXJpb2RFbXBsb3llcihlbXBsb3llcik7XCIgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCIgYXJpYS1sYWJlbD1cIkFkZCBlbXBsb3llclwiPlxyXG4gICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAnZWRpdCddXCIgY2xhc3M9XCJhY3Rpb24taWNvblwiPjwvZmEtaWNvbj5cclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcblxyXG4gICAgICAgIDxpb24tYnV0dG9uIHNpemU9XCJzbWFsbFwiICpuZ0lmPVwiZW1wbG95ZXIuYnBFbXBsb3llckZsYWc9PT0nMCdcIiBjb2xvcj1cInN1Y2Nlc3NcIiBmaWxsPVwib3V0bGluZVwiIFxyXG4gICAgICAgICAgKGNsaWNrKT1cImVkaXRFbXBsb3llcihlbXBsb3llcik7XCIgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCIgYXJpYS1sYWJlbD1cIkVkaXQgZW1wbG95ZXJcIj5cclxuICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ2VkaXQnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBzaXplPVwic21hbGxcIiAqbmdJZj1cImVtcGxveWVyLmJwRW1wbG95ZXJGbGFnPT09JzEnICYmICFlbXBsb3llci5wYXlSYXRlICYmICFlbXBsb3llci5zdGFydERhdGUgJiYgZW1wbG95ZXIuZW1wRGVsZXRlZCE9J1knXCIgY29sb3I9XCJzdWNjZXNzXCIgZmlsbD1cIm91dGxpbmVcIiBcclxuICAgICAgICAgIChjbGljayk9XCJmaW5pc2goZW1wbG95ZXIpO1wiIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiIGFyaWEtbGFiZWw9XCJDb25maXJtIGVtcGxveWVyXCI+XHJcbiAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJbJ2ZhbCcsICdjaGVjay1jaXJjbGUnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBzaXplPVwic21hbGxcIiAqbmdJZj1cImVtcGxveWVyLmJwRW1wbG95ZXJGbGFnPT09JzAnXCIgY29sb3I9XCJzdWNjZXNzXCIgZmlsbD1cIm91dGxpbmVcIiBcclxuICAgICAgICAgIChjbGljayk9XCJkZWxldGVFbXBsb3llcihyb3dJbmRleCk7XCIgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCIgYXJpYS1sYWJlbD1cIlJlbW92ZSBlbXBsb3llclwiPlxyXG4gICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAndHJhc2gtYWx0J11cIiBjbGFzcz1cImFjdGlvbi1pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuXHJcbiAgICAgICAgPGlvbi1idXR0b24gc2l6ZT1cInNtYWxsXCIgKm5nSWY9XCJlbXBsb3llci5icEVtcGxveWVyRmxhZz09PScxJyAmJiBlbXBsb3llci5lbXBEZWxldGVkIT0nWSdcIiBjb2xvcj1cInN1Y2Nlc3NcIiBmaWxsPVwib3V0bGluZVwiIFxyXG4gICAgICAgICAgKGNsaWNrKT1cInJlbW92ZUVtcGxveW1lbnQoZW1wbG95ZXIsIHJvd0luZGV4KTtcIiBjbGFzcz1cImFjdGlvbi1idXR0b25cIiBhcmlhLWxhYmVsPVwiUmVtb3ZlIGVtcGxveWVyXCI+XHJcbiAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJbJ2ZhbCcsICd0cmFzaC1hbHQnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBzaXplPVwic21hbGxcIiAqbmdJZj1cImVtcGxveWVyLmJwRW1wbG95ZXJGbGFnPT09JzEnICYmIGVtcGxveWVyLmVtcERlbGV0ZWQ9PSdZJ1wiIGNvbG9yPVwic3VjY2Vzc1wiIGZpbGw9XCJvdXRsaW5lXCIgXHJcbiAgICAgICAgICAoY2xpY2spPVwicmVzdG9yZUVtcGxveW1lbnQoZW1wbG95ZXIsIHJvd0luZGV4KTtcIiBjbGFzcz1cImFjdGlvbi1idXR0b25cIiBhcmlhLWxhYmVsPVwiUmVzdG9yZVwiPlxyXG4gICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAndHJhc2gtcmVzdG9yZS1hbHQnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICA8L3RkPlxyXG4gICAgICA8dGQgKm5nSWY9XCJlbXBsb3llci5qb2JUaWxlT3JQb3NpdGlvbiAmJiAhZW1wbG95ZXIuZmVkSm9iVGlsZU9yUG9zaXRpb25cIj48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+e3tcImluZHVjdGlvbi5lbXBsb3ltZW50LmpvYi50aXRsZVwifHRyYW5zbGF0ZX19PC9zcGFuPnt7ZW1wbG95ZXIuam9iVGlsZU9yUG9zaXRpb259fTwvdGQ+XHJcbiAgICAgIDx0ZCAqbmdJZj1cIiFlbXBsb3llci5qb2JUaWxlT3JQb3NpdGlvbiAmJiAhZW1wbG95ZXIuZmVkSm9iVGlsZU9yUG9zaXRpb25cIj48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+e3tcImluZHVjdGlvbi5lbXBsb3ltZW50LmpvYi50aXRsZVwifHRyYW5zbGF0ZX19PC9zcGFuPjwvdGQ+XHJcbiAgICAgIDx0ZCAqbmdJZj1cIiFlbXBsb3llci5qb2JUaWxlT3JQb3NpdGlvbiAmJiBlbXBsb3llci5mZWRKb2JUaWxlT3JQb3NpdGlvblwiPjxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj57e1wiaW5kdWN0aW9uLmVtcGxveW1lbnQuam9iLnRpdGxlXCJ8dHJhbnNsYXRlfX08L3NwYW4+e3tlbXBsb3llci5mZWRKb2JUaWxlT3JQb3NpdGlvbn19PC90ZD5cclxuICAgICAgPHRkICpuZ0lmPVwiZW1wbG95ZXIuam9iVGlsZU9yUG9zaXRpb24gJiYgZW1wbG95ZXIuZmVkSm9iVGlsZU9yUG9zaXRpb25cIj48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+e3tcImluZHVjdGlvbi5lbXBsb3ltZW50LmpvYi50aXRsZVwifHRyYW5zbGF0ZX19PC9zcGFuPnt7ZW1wbG95ZXIuam9iVGlsZU9yUG9zaXRpb259fXt7ZW1wbG95ZXIuZmVkSm9iVGlsZU9yUG9zaXRpb259fTwvdGQ+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICA8dGQgKm5nSWY9XCJlbXBsb3llci5wYXlSYXRlXCI+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPnt7XCJpbmR1Y3Rpb24uZW1wbG95bWVudC5wYXlcInx0cmFuc2xhdGV9fTwvc3Bhbj57e2VtcGxveWVyLnBheVJhdGUgfCBjdXJyZW5jeX19L3t7ZW1wbG95ZXIucGF5UmF0ZUZyZXF1ZW5jeS50ZXh0fX08L3RkPlxyXG4gICAgICA8dGQgKm5nSWY9XCIhZW1wbG95ZXIucGF5UmF0ZVwiPjxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj57e1wiaW5kdWN0aW9uLmVtcGxveW1lbnQucGF5XCJ8dHJhbnNsYXRlfX08L3NwYW4+PC90ZD5cclxuICAgICAgXHJcbiAgICAgIDx0ZCAqbmdJZj1cImVtcGxveWVyLmVtcGxveWVyVHlwZT09PSdSRUcnXCI+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPnt7XCJpbmR1Y3Rpb24uZW1wbG95bWVudC5zdGFydC5hbmQuZW5kXCJ8dHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAge3tlbXBsb3llci5zdGFydERhdGUgfCBkYXRlOidNL2QveXl5eSd9fSAtIHt7ZW1wbG95ZXIuZW5kRGF0ZSB8IGRhdGU6J00vZC95eXl5J319XHJcbiAgICAgIDwvdGQ+XHJcbiAgICAgIFxyXG4gICAgICA8dGQgKm5nSWY9XCJlbXBsb3llci5lbXBsb3llclR5cGU9PT0nRkVEJ1wiPjxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj57e1wiaW5kdWN0aW9uLmVtcGxveW1lbnQuc3RhcnQuYW5kLmVuZFwifHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICAgIHt7ZW1wbG95ZXIuc3RhcnREYXRlRmVkIHwgZGF0ZTonTS9kL3l5eXknfX0gLSB7e2VtcGxveWVyLmVuZERhdGVGZWQgfCBkYXRlOidNL2QveXl5eSd9fVxyXG4gICAgICA8L3RkPlxyXG5cclxuICAgICAgPHRkICpuZ0lmPVwiZW1wbG95ZXIuZW1wbG95ZXJUeXBlPT09J01JTCdcIj48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+e3tcImluZHVjdGlvbi5lbXBsb3ltZW50LnN0YXJ0LmFuZC5lbmRcInx0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICB7e2VtcGxveWVyLnN0YXJ0RGF0ZU1pbCB8IGRhdGU6J00vZC95eXl5J319IC0ge3tlbXBsb3llci5lbmREYXRlTWlsIHwgZGF0ZTonTS9kL3l5eXknfX1cclxuICAgICAgPC90ZD5cclxuXHJcbiAgICAgIDx0ZCAqbmdJZj1cIiFlbXBsb3llci5zdGFydERhdGUgJiYgICFlbXBsb3llci5zdGFydERhdGVGZWQgJiYgIWVtcGxveWVyLnN0YXJ0RGF0ZU1pbFwiPjxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj57e1wiaW5kdWN0aW9uLmVtcGxveW1lbnQuc3RhcnQuYW5kLmVuZFwifHRyYW5zbGF0ZX19PC9zcGFuPjwvdGQ+XHJcblxyXG4gICAgICA8dGQgKm5nSWY9XCJlbXBsb3llci5lbXBsb3llclR5cGUhPSdNSUwnICYmIGVtcGxveWVyLnJlYXNvblNlcGFyYXRpb25cIj48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+e3tcImluZHVjdGlvbi5lbXBsb3ltZW50LnNlcGVyYXRpb24ucmVhc29uXCJ8dHJhbnNsYXRlfX08L3NwYW4+e3tlbXBsb3llci5yZWFzb25TZXBhcmF0aW9uLnRleHR9fVxyXG4gICAgICA8L3RkPlxyXG4gICAgICBcclxuICAgICAgPHRkICpuZ0lmPVwiZW1wbG95ZXIuZW1wbG95ZXJUeXBlPT09J01JTCcgJiYgIWVtcGxveWVyLnJlYXNvblNlcGFyYXRpb25cIj48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+e3tcImluZHVjdGlvbi5lbXBsb3ltZW50LnNlcGVyYXRpb24ucmVhc29uXCJ8dHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICBcclxuICAgICAgXHJcbiAgICA8L3RyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJzdW1tYXJ5XCIgbGV0LWNvbHVtbnM+XHJcbiAgICA8dGFibGU+XHJcbiAgICAgIDx0cj5cclxuICAgICAgICA8dGQgW2F0dHIuY29sc3Bhbl09XCIyXCIgc3R5bGU9XCJ3aWR0aDogNDAlO1wiPlxyXG4gICAgICAgICAgPGRpdiBbaW5uZXJIdG1sXT1cIidpbmR1Y3Rpb24uZW1wbG95bWVudC5mb290ZXIubGFiZWwnIHwgdHJhbnNsYXRlIHwgdHJ1c3RIdG1sXCI+PC9kaXY+XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogOS43NSU7IHRleHQtYWxpZ246IHJpZ2h0O1wiPlxyXG4gICAgICAgICAgPGlvbi1idXR0b24gZmlsbD1cIm91dGxpbmVcIiBzaXplPVwic21hbGxcIiBjbGFzcz1cImFjdGlvbi1idXR0b25cIiAoY2xpY2spPVwiYWRkTmV3RW1wRGV0YWlscygpXCIgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCIgYXJpYS1sYWJlbD1cIkFkZCBlbXBsb3llclwiIFtpZF09XCInYnRuQWRkRW1wbG95ZXInXCI+XHJcbiAgICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ3BsdXMnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgICA8dGQgY29sc3Bhbj1cIjRcIj4mbmJzcDs8L3RkPlxyXG4gICAgICA8L3RyPlxyXG4gICAgPC90YWJsZT5cclxuICA8L25nLXRlbXBsYXRlPlxyXG5cclxuPC9wLXRhYmxlPlxyXG4gIDxhcHAtYWRkLWVtcGxveWVyICpuZ0lmPVwiZGlzcGxheVwiIChzdWNjZXNzKT1cImFkZEVtcGxveWVyKCRldmVudClcIiAgW3JlY29yZEluZGV4VG9FZGl0XT1cImluZGV4VG9FZGl0XCIgXHJcbiAgICAoYmFzZVBlcmlvZEluZGV4KT1cImRlbGV0ZUJwRW1wbCgkZXZlbnQpXCIgW2lzQmFzZVBlcmlvZEVtcGxveWVyXT1cImlzQmFzZVBlcmlvZEVtcGxveWVyXCIgW2lzTmV3Q2xhaW1dPVwiaXNOZXdDbGFpbVwiIFxyXG4gICAgKG1vZGVsQ2FuY2VsKT1cIm9uTW9kZWxDYW5jZWwoJGV2ZW50KVwiIFtkb2JdPVwiY2xhaW1hbnREb2JcIiBbbm9FZGl0TW9kZV09XCJub0VkaXRNb2RlXCI+XHJcbiAgPC9hcHAtYWRkLWVtcGxveWVyPlxyXG5cclxuICA8cC1kaWFsb2cgW3Zpc2libGVdPVwic2hvd0NvbmZpcm1Qb3B1cFwiIFttb2RhbF09XCJ0cnVlXCIgYXBwZW5kVG89XCJib2R5XCIgcG9zaXRpb249XCJ0b3BcIiBbYnJlYWtwb2ludHNdPVwieycxMjAwcHgnOiAnNjYwcHgnLCAnOTkycHgnOiAnNjYwcHgnLCAnNzY4cHgnOiAnNjYwcHgnLCAnNTc2cHgnOiAnMTAwdncnfVwiIFtzdHlsZV09XCJ7d2lkdGg6ICc0NXZ3J31cIlxyXG4gICAgW2Jhc2VaSW5kZXhdPVwiNTAwMFwiIFtkcmFnZ2FibGVdPVwiZmFsc2VcIiBbcmVzaXphYmxlXT1cImZhbHNlXCIgYXBwZW5kVG89XCJib2R5XCIgY2xvc2VPbkVzY2FwZT1cImZhbHNlXCIgKm5nSWY9XCJzZWxlY3RlZEVtcGxveWVyXCI+XHJcbiAgICAgICAgPGg0IGNsYXNzPVwiaGVhZGluZ1wiPnt7J2luZHVjdGlvbi5lbXBsb3ltZW50LmdyaWQucG9wdXAuaGVhZGluZycgfCB0cmFuc2xhdGV9fTwvaDQ+XHJcbiAgICAgICAgPGlvbi1sYWJlbD57e3NlbGVjdGVkRW1wbG95ZXIuZW1wbG95ZXJEYXRhLmRpc3BsYXlOYW1lfX08L2lvbi1sYWJlbD48YnIvPlxyXG4gICAgICAgIDxpb24tbGFiZWw+e3tzZWxlY3RlZEVtcGxveWVyLmVtcGxveWVyRGF0YS50cmFkZU5hbWV9fTwvaW9uLWxhYmVsPlxyXG4gICAgICAgIDxpb24tbGFiZWw+PGRpdiBzdHlsZT1cImZvbnQtc2l6ZTogMTJweDtcIiBbaW5uZXJIdG1sXT1cInNlbGVjdGVkRW1wbG95ZXIuZW1wbG95ZXJEYXRhLm1haWxpbmdBZGRyZXNzRGlzcGxheSB8IHRydXN0SHRtbFwiPjwvZGl2PjwvaW9uLWxhYmVsPjxici8+XHJcbiAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cImRhbmdlclwiPlxyXG4gICAgICAgICAge3snaW5kdWN0aW9uLmVtcGxveW1lbnQuZ3JpZC5wb3B1cC5mYWlsdXJlLmxhYmVsJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgPC9pb24tbGFiZWw+PGJyLz48YnIvPlxyXG4gICAgICAgIDxpb24tbGFiZWw+XHJcbiAgICAgICAgICA8Yj57eydpbmR1Y3Rpb24uZW1wbG95bWVudC5ncmlkLnBvcHVwLnRleHQxLnEubGFiZWwnIHwgdHJhbnNsYXRlfX08L2I+XHJcbiAgICAgICAgPC9pb24tbGFiZWw+PGJyLz5cclxuICAgICAgICA8aW9uLWxhYmVsPlxyXG4gICAgICAgICAge3snaW5kdWN0aW9uLmVtcGxveW1lbnQuZ3JpZC5wb3B1cC50ZXh0MS5hLmxhYmVsJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgPC9pb24tbGFiZWw+PGJyLz48YnIvPlxyXG4gICAgICAgIDxpb24tbGFiZWw+XHJcbiAgICAgICAgICA8Yj57eydpbmR1Y3Rpb24uZW1wbG95bWVudC5ncmlkLnBvcHVwLnRleHQyLnEubGFiZWwnIHwgdHJhbnNsYXRlfX08L2I+XHJcbiAgICAgICAgPC9pb24tbGFiZWw+PGJyLz5cclxuICAgICAgICA8aW9uLWxhYmVsPlxyXG4gICAgICAgICAge3snaW5kdWN0aW9uLmVtcGxveW1lbnQuZ3JpZC5wb3B1cC50ZXh0Mi5hLmxhYmVsJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgPC9pb24tbGFiZWw+PGJyLz48YnIvPlxyXG4gICAgICAgIDxpb24tbGFiZWw+XHJcbiAgICAgICAgICA8Yj57eydpbmR1Y3Rpb24uZW1wbG95bWVudC5ncmlkLnBvcHVwLnRleHQzLnEubGFiZWwnIHwgdHJhbnNsYXRlfX08L2I+XHJcbiAgICAgICAgPC9pb24tbGFiZWw+PGJyLz5cclxuICAgICAgICA8aW9uLWxhYmVsPlxyXG4gICAgICAgICAge3snaW5kdWN0aW9uLmVtcGxveW1lbnQuZ3JpZC5wb3B1cC50ZXh0My5hLmxhYmVsJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgPC9pb24tbGFiZWw+PGJyLz48YnIvPlxyXG4gICAgICAgIDxpb24tbGFiZWw+XHJcbiAgICAgICAgICB7eydpbmR1Y3Rpb24uZW1wbG95bWVudC5ncmlkLnBvcHVwLmRpZG50LndvcmsubGFiZWwnIHwgdHJhbnNsYXRlfX1cclxuICAgICAgICA8L2lvbi1sYWJlbD5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZm9vdGVyXCI+XHJcbiAgICAgICAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwicm91bmRcIiB0eXBlPVwic3VibWl0XCIgZmlsbD1cIm91dGxpbmVcIiAoY2xpY2spPVwiY2xvc2UoKVwiPlxyXG4gICAgICAgICAgICAgIHt7J2luZHVjdGlvbi5lbXBsb3ltZW50LmdyaWQucG9wdXAuY2FuY2VsJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICAgICAgPGlvbi1idXR0b24gc2hhcGU9XCJyb3VuZFwiIHR5cGU9XCJzdWJtaXRcIiBmaWxsPVwic29saWRcIiAoY2xpY2spPVwiZGlzcGxheUJwRW1wQ29uZmlybWF0aW9uKClcIj5cclxuICAgICAgICAgICAgICB7eydpbmR1Y3Rpb24uZW1wbG95bWVudC5ncmlkLnBvcHVwLnJlbW92ZScgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvcC1kaWFsb2c+XHJcbiAgICA8cC1kaWFsb2cgW3Zpc2libGVdPVwic2hvd2JwRW1wRGVsUG9wdXBcIiBbbW9kYWxdPVwidHJ1ZVwiIGFwcGVuZFRvPVwiYm9keVwiIHBvc2l0aW9uPVwidG9wXCIgW2JyZWFrcG9pbnRzXT1cInsnMTIwMHB4JzogJzY2MHB4JywgJzk5MnB4JzogJzY2MHB4JywgJzc2OHB4JzogJzY2MHB4JywgJzU3NnB4JzogJzEwMHZ3J31cIiBbc3R5bGVdPVwie3dpZHRoOiAnNDV2dyd9XCJcclxuICAgIFtiYXNlWkluZGV4XT1cIjUwMDBcIiBbZHJhZ2dhYmxlXT1cImZhbHNlXCIgW3Jlc2l6YWJsZV09XCJmYWxzZVwiIGFwcGVuZFRvPVwiYm9keVwiIGNsb3NlT25Fc2NhcGU9XCJmYWxzZVwiICpuZ0lmPVwic2VsZWN0ZWRFbXBsb3llclwiPlxyXG4gICAgICAgIDxoNCBjbGFzcz1cImhlYWRpbmdcIj57eydpbmR1Y3Rpb24uZW1wbG95bWVudC5ncmlkLmRlbGV0ZS5icGVtcGxveWVyLnBvcHVwLmhlYWRpbmcnIHwgdHJhbnNsYXRlfX08L2g0Pjxici8+XHJcbiAgICAgICAgPHAtZHJvcGRvd24gZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0ZWREcm9wZG93blwiIGlucHV0SWQ9XCJicEVtcERlbE9wdGlvbnNcIiAgIFtvcHRpb25zXT1cImJwRW1wRGVsT3B0aW9uc1wiIFsobmdNb2RlbCldPVwic2VsZWN0ZWRPcHRpb25cIiAgW2F1dG9EaXNwbGF5Rmlyc3RdPVwiZmFsc2VcIiAob25DaGFuZ2UpPVwib25Ecm9wZG93bkNoYW5nZSgkZXZlbnQpXCIgYXBwZW5kVG89XCJib2R5XCJcclxuICAgICAgICAgcGxhY2Vob2xkZXI9J3t7XCJpbmR1Y3Rpb24uZW1wbG95bWVudC5ncmlkLmRlbGV0ZS5icGVtcGxveWVyLnBvcHVwLmhlYWRpbmcucGxhY2Vob2xkZXJcIiB8IHRyYW5zbGF0ZX19JyBvcHRpb25MYWJlbD1cInRleHRcIiBvcHRpb25WYWx1ZT1cInZhbHVlXCIgcmVxdWlyZWQ+IFxyXG4gICAgICAgIDwvcC1kcm9wZG93bj5cclxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93Q29tbWVudEJveFwiPlxyXG4gICAgICAgICAgPGxhYmVsIGZvcj1cImNvbW1lbnRcIj5cclxuICAgICAgICAgICAge3snaW5kdWN0aW9uLmVtcGxveW1lbnQuZ3JpZC5kZWxldGUuYnBlbXBsb3llci5wb3B1cC5yZWFzb24uc2VsZWN0aW5nJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgICA8L2xhYmVsPjxici8+XHJcbiAgICAgICAgICA8dGV4dGFyZWEgZm9ybUNvbnRyb2xOYW1lPVwib3RoZXJDb21tZW50XCIgcm93cz1cIjVcIiBjb2xzPVwiMzBcIiBtYXhsZW5ndGg9XCIyNTBcIiBwbGFjZWhvbGRlcj0ne3tcImluZHVjdGlvbi5lbXBsb3ltZW50LmdyaWQuZGVsZXRlLmJwZW1wbG95ZXIucG9wdXAuZXhwbGFpbi5yZWFzb25cIiB8IHRyYW5zbGF0ZX19Jz48L3RleHRhcmVhPlxyXG4gICAgICAgICAgPHNtYWxsICpuZ0lmPVwidGhpcy5mb3JtLmdldCgnb3RoZXJDb21tZW50Jyk/LmludmFsaWQgJiYgdGhpcy5mb3JtLmdldCgnb3RoZXJDb21tZW50Jyk/LnRvdWNoZWRcIiBjbGFzcz1cInAtZXJyb3JcIj5cclxuICAgICAgICAgICAge3snaW5kdWN0aW9uLmVtcGxveW1lbnQuZ3JpZC5kZWxldGUuYnBlbXBsb3llci5wb3B1cC5maWVsZC5yZXF1aXJlZCcgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgIDxzbWFsbD5cclxuICAgICAgICAgICAge3snaW5kdWN0aW9uLmVtcGxveW1lbnQuZ3JpZC5kZWxldGUuYnBlbXBsb3llci5wb3B1cC5tYXhsZW5ndGguMjUwJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgICA8L3NtYWxsPlxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZm9vdGVyXCI+XHJcbiAgICAgICAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwicm91bmRcIiB0eXBlPVwic3VibWl0XCIgZmlsbD1cIm91dGxpbmVcIiAoY2xpY2spPVwiY2xvc2UoKVwiPlxyXG4gICAgICAgICAgICAgIHt7J2luZHVjdGlvbi5lbXBsb3ltZW50LmdyaWQuZGVsZXRlLmJwZW1wbG95ZXIucG9wdXAuY2FuY2VsJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICAgICAgPGlvbi1idXR0b24gc2hhcGU9XCJyb3VuZFwiIHR5cGU9XCJzdWJtaXRcIiBbZGlzYWJsZWRdPVwidGhpcy5mb3JtLmludmFsaWRcIiBmaWxsPVwic29saWRcIiAoY2xpY2spPVwicmVtb3ZlQmFzZVBlcmlvZEVtcGxveWVyKClcIj5cclxuICAgICAgICAgICAgICB7eydpbmR1Y3Rpb24uZW1wbG95bWVudC5ncmlkLmRlbGV0ZS5icGVtcGxveWVyLnBvcHVwLnJlbW92ZScgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvcC1kaWFsb2c+XHJcbjwvZGl2PiJdfQ==