@uiapplib/ngx-ui-web-lib 0.0.1

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 (820) hide show
  1. package/README.md +46 -0
  2. package/esm2022/lib/annimations/app-animations.mjs +37 -0
  3. package/esm2022/lib/components/add-employer/add-employer.component.mjs +3725 -0
  4. package/esm2022/lib/components/add-participant/add-participant.component.mjs +453 -0
  5. package/esm2022/lib/components/add-payment/add-payment.component.mjs +207 -0
  6. package/esm2022/lib/components/add-wage/add-wage.component.mjs +161 -0
  7. package/esm2022/lib/components/address/address.component.mjs +700 -0
  8. package/esm2022/lib/components/address-popup/address-popup.component.mjs +97 -0
  9. package/esm2022/lib/components/address-suggestion/address-suggestion.component.mjs +289 -0
  10. package/esm2022/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.mjs +245 -0
  11. package/esm2022/lib/components/associate-ssn/associate-ssn.component.mjs +203 -0
  12. package/esm2022/lib/components/bank-details/bank-details.component.mjs +276 -0
  13. package/esm2022/lib/components/captcha/captcha.component.mjs +181 -0
  14. package/esm2022/lib/components/card/card.component.mjs +55 -0
  15. package/esm2022/lib/components/claim-info/claim-info.component.mjs +408 -0
  16. package/esm2022/lib/components/contact-us/contact-us.component.mjs +958 -0
  17. package/esm2022/lib/components/content/content.component.mjs +61 -0
  18. package/esm2022/lib/components/correspondence-download/correspondence-download.component.mjs +83 -0
  19. package/esm2022/lib/components/dashboard-card/dashboard-card.component.mjs +251 -0
  20. package/esm2022/lib/components/dependent-grid/dependent-grid.component.mjs +316 -0
  21. package/esm2022/lib/components/disclosure/disclosure.component.mjs +60 -0
  22. package/esm2022/lib/components/dropdown/dropdown.component.mjs +1974 -0
  23. package/esm2022/lib/components/dropdown/dropdown.interface.mjs +2 -0
  24. package/esm2022/lib/components/dua-request-page/dua-request-page.component.mjs +596 -0
  25. package/esm2022/lib/components/dua-request-popup/dua-request-popup.component.mjs +356 -0
  26. package/esm2022/lib/components/email-update/email-update.component.mjs +283 -0
  27. package/esm2022/lib/components/employer-grid/employer-grid.component.mjs +950 -0
  28. package/esm2022/lib/components/employer-info/employer-info.component.mjs +319 -0
  29. package/esm2022/lib/components/employer-pay/employer-pay.component.mjs +238 -0
  30. package/esm2022/lib/components/employer-pay-grid/employer-pay-grid.component.mjs +302 -0
  31. package/esm2022/lib/components/error/error.component.mjs +103 -0
  32. package/esm2022/lib/components/farm-usage/farm-usage.component.mjs +172 -0
  33. package/esm2022/lib/components/fav-menu/fav-menu.component.mjs +163 -0
  34. package/esm2022/lib/components/file-download/file-download.component.mjs +104 -0
  35. package/esm2022/lib/components/file-uploader/file-uploader.component.mjs +444 -0
  36. package/esm2022/lib/components/footer/footer.component.mjs +361 -0
  37. package/esm2022/lib/components/gross-earnings/gross-earnings.component.mjs +201 -0
  38. package/esm2022/lib/components/header/header.component.mjs +801 -0
  39. package/esm2022/lib/components/help/help.component.mjs +49 -0
  40. package/esm2022/lib/components/history-page/history-page.component.mjs +571 -0
  41. package/esm2022/lib/components/idle-detector/idle-detector.component.mjs +65 -0
  42. package/esm2022/lib/components/idme/idme.component.mjs +84 -0
  43. package/esm2022/lib/components/info/info.component.mjs +179 -0
  44. package/esm2022/lib/components/job-search-result-page/job-search-result-page.component.mjs +206 -0
  45. package/esm2022/lib/components/job-title/job-title.component.mjs +157 -0
  46. package/esm2022/lib/components/legal-disclaimar/legal-disclaimar.component.mjs +247 -0
  47. package/esm2022/lib/components/link/link.component.mjs +131 -0
  48. package/esm2022/lib/components/maintenance-detector/maintenance-detector.component.mjs +43 -0
  49. package/esm2022/lib/components/mask/mask.component.mjs +48 -0
  50. package/esm2022/lib/components/menu/menu.component.mjs +420 -0
  51. package/esm2022/lib/components/mfa/mfa.component.mjs +444 -0
  52. package/esm2022/lib/components/mfa-popup/mfa-popup.component.mjs +50 -0
  53. package/esm2022/lib/components/money-expect/money-expect.component.mjs +202 -0
  54. package/esm2022/lib/components/msg/msg.component.mjs +48 -0
  55. package/esm2022/lib/components/news/news.component.mjs +90 -0
  56. package/esm2022/lib/components/offline-add-employer/offline-add-employer.component.mjs +3661 -0
  57. package/esm2022/lib/components/offline-bank-details/offline-bank-details.component.mjs +258 -0
  58. package/esm2022/lib/components/offline-employer-grid/offline-employer-grid.component.mjs +853 -0
  59. package/esm2022/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.mjs +251 -0
  60. package/esm2022/lib/components/overlay-info/overlay-info.component.mjs +213 -0
  61. package/esm2022/lib/components/page/page.component.mjs +136 -0
  62. package/esm2022/lib/components/profile/profile.component.mjs +901 -0
  63. package/esm2022/lib/components/profile-redirect/profile-redirect.component.mjs +140 -0
  64. package/esm2022/lib/components/proof-of-anything/proof-of-anything.component.mjs +261 -0
  65. package/esm2022/lib/components/proof-of-document-upload/proof-of-document-upload.component.mjs +560 -0
  66. package/esm2022/lib/components/questionnaire/AppValidators.mjs +790 -0
  67. package/esm2022/lib/components/questionnaire/FbConstants.mjs +8 -0
  68. package/esm2022/lib/components/questionnaire/SelectItem.mjs +2 -0
  69. package/esm2022/lib/components/questionnaire/account-success/account-success.page.mjs +355 -0
  70. package/esm2022/lib/components/questionnaire/common-success/common-success.page.mjs +732 -0
  71. package/esm2022/lib/components/questionnaire/dynamic-form-panel.component.mjs +1096 -0
  72. package/esm2022/lib/components/questionnaire/dynamic-form-question.component.mjs +2246 -0
  73. package/esm2022/lib/components/questionnaire/dynamic-form.component.mjs +1297 -0
  74. package/esm2022/lib/components/questionnaire/form-builder/form-builder.page.mjs +262 -0
  75. package/esm2022/lib/components/questionnaire/input-focus.directive.mjs +44 -0
  76. package/esm2022/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.mjs +342 -0
  77. package/esm2022/lib/components/questionnaire/question-base.mjs +3 -0
  78. package/esm2022/lib/components/questionnaire/question-control.service.mjs +409 -0
  79. package/esm2022/lib/components/questionnaire/question.service.mjs +31 -0
  80. package/esm2022/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.mjs +268 -0
  81. package/esm2022/lib/components/read-more/read-more.component.mjs +72 -0
  82. package/esm2022/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.mjs +950 -0
  83. package/esm2022/lib/components/scrollable-text/scrollable-text.component.mjs +25 -0
  84. package/esm2022/lib/components/search-employer/search-employer.component.mjs +257 -0
  85. package/esm2022/lib/components/select/select.component.mjs +154 -0
  86. package/esm2022/lib/components/sign-ssn/sign-ssn.component.mjs +141 -0
  87. package/esm2022/lib/components/sms/sms.component.mjs +336 -0
  88. package/esm2022/lib/components/ssn/ssn.component.mjs +44 -0
  89. package/esm2022/lib/components/ssn-reverify/ssn-reverify.component.mjs +151 -0
  90. package/esm2022/lib/components/test/test.component.mjs +19 -0
  91. package/esm2022/lib/components/user-login/user-login.component.mjs +398 -0
  92. package/esm2022/lib/components/wage-calculator/wage-calculator.component.mjs +527 -0
  93. package/esm2022/lib/components/wage-grid/wage-grid.component.mjs +274 -0
  94. package/esm2022/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.mjs +147 -0
  95. package/esm2022/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.mjs +167 -0
  96. package/esm2022/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +1040 -0
  97. package/esm2022/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.mjs +420 -0
  98. package/esm2022/lib/components/weekly-certification/weekly-certification.component.mjs +828 -0
  99. package/esm2022/lib/components/weekly-confirmation/confirmation.component.mjs +129 -0
  100. package/esm2022/lib/components/weekly-interim-confirmation/interim-confirmation.component.mjs +136 -0
  101. package/esm2022/lib/components/weekly-summary-v2/summary.component-v2.mjs +72 -0
  102. package/esm2022/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.mjs +50 -0
  103. package/esm2022/lib/components/weekly-work-search-counter/work-search-counter.component.mjs +92 -0
  104. package/esm2022/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.mjs +1190 -0
  105. package/esm2022/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.mjs +690 -0
  106. package/esm2022/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.mjs +524 -0
  107. package/esm2022/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.mjs +394 -0
  108. package/esm2022/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.mjs +640 -0
  109. package/esm2022/lib/directives/auto-focus/auto-focus.directive.mjs +31 -0
  110. package/esm2022/lib/directives/caps-lock.directive.mjs +38 -0
  111. package/esm2022/lib/directives/required-roles/required-roles.directive.mjs +30 -0
  112. package/esm2022/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.mjs +33 -0
  113. package/esm2022/lib/enums/AddressValidationResponseEnum.mjs +9 -0
  114. package/esm2022/lib/enums/AddressValidationSourceFunctionEnum.mjs +5 -0
  115. package/esm2022/lib/enums/EmailStatusEnum.mjs +9 -0
  116. package/esm2022/lib/guards/auth.guard.mjs +186 -0
  117. package/esm2022/lib/guards/no-login/no-login.guard.mjs +21 -0
  118. package/esm2022/lib/interceptors/error-interceptor/http-error-interceptor.mjs +155 -0
  119. package/esm2022/lib/interceptors/header-interceptor/http-header.interceptor.mjs +98 -0
  120. package/esm2022/lib/models/ActiveClaimModel.mjs +3 -0
  121. package/esm2022/lib/models/AddressComponentModel.mjs +3 -0
  122. package/esm2022/lib/models/BankDetailsComponentModel.mjs +3 -0
  123. package/esm2022/lib/models/BankDetailsModel.mjs +3 -0
  124. package/esm2022/lib/models/CinRequalificationCriteriaModel.mjs +3 -0
  125. package/esm2022/lib/models/CountyModel.mjs +3 -0
  126. package/esm2022/lib/models/DuaAppDataModel.mjs +3 -0
  127. package/esm2022/lib/models/DuaRequestModel.mjs +3 -0
  128. package/esm2022/lib/models/DuaRetroWeeksComponentModel.mjs +6 -0
  129. package/esm2022/lib/models/EmployerDetailSearchResult.mjs +6 -0
  130. package/esm2022/lib/models/EmployerInfoComponentModel.mjs +4 -0
  131. package/esm2022/lib/models/EmployerPayInfoModel.mjs +6 -0
  132. package/esm2022/lib/models/ErrorModel.mjs +6 -0
  133. package/esm2022/lib/models/FarmUsageComponentModel.mjs +2 -0
  134. package/esm2022/lib/models/FileModel.mjs +2 -0
  135. package/esm2022/lib/models/GrossEarningsModel.mjs +3 -0
  136. package/esm2022/lib/models/HelpConstants.mjs +5 -0
  137. package/esm2022/lib/models/LexisNexisOtpDetailsResponseModel.mjs +3 -0
  138. package/esm2022/lib/models/LibConstants.mjs +171 -0
  139. package/esm2022/lib/models/NewsAndAnnouncementModel.mjs +3 -0
  140. package/esm2022/lib/models/NotificationModel.mjs +6 -0
  141. package/esm2022/lib/models/OtpAuthModel.mjs +3 -0
  142. package/esm2022/lib/models/PaymentComponentModel.mjs +2 -0
  143. package/esm2022/lib/models/ReasonSeparationRequestModel.mjs +3 -0
  144. package/esm2022/lib/models/RequalifyLiftPageModel.mjs +11 -0
  145. package/esm2022/lib/models/RetroWeeksModel.mjs +3 -0
  146. package/esm2022/lib/models/SecurityQuestionAnswerModel.mjs +3 -0
  147. package/esm2022/lib/models/SendOtpRequestModel.mjs +3 -0
  148. package/esm2022/lib/models/SsaVerificationModel.mjs +3 -0
  149. package/esm2022/lib/models/TrendModel.mjs +3 -0
  150. package/esm2022/lib/models/UserDetailsModel.mjs +3 -0
  151. package/esm2022/lib/models/UserModel.mjs +6 -0
  152. package/esm2022/lib/models/VerifyOtpRequestModel.mjs +3 -0
  153. package/esm2022/lib/models/WageCalculatorModel.mjs +3 -0
  154. package/esm2022/lib/models/WageInfoModel.mjs +4 -0
  155. package/esm2022/lib/models/addressValidation/AddressRecommendationModel.mjs +3 -0
  156. package/esm2022/lib/models/addressValidation/AddressValidationRequestComponentModel.mjs +3 -0
  157. package/esm2022/lib/models/addressValidation/AddressValidationResponseComponentModel.mjs +3 -0
  158. package/esm2022/lib/models/addressValidation/AddressValidationReturnComponentModel.mjs +3 -0
  159. package/esm2022/lib/models/case/CaseAttachmentModel.mjs +3 -0
  160. package/esm2022/lib/models/claimant/ClaimantModel.mjs +3 -0
  161. package/esm2022/lib/models/claimant/JobResultsData.mjs +3 -0
  162. package/esm2022/lib/models/claimant/MatchingJobs.mjs +3 -0
  163. package/esm2022/lib/models/claimant/ResetPasswordModel.mjs +3 -0
  164. package/esm2022/lib/models/cmp/CaseCoreModel.mjs +3 -0
  165. package/esm2022/lib/models/cmp/ComplaintCategoryModel.mjs +3 -0
  166. package/esm2022/lib/models/cmp/ComplaintCategoryOutputModel.mjs +5 -0
  167. package/esm2022/lib/models/cmp/ContactUsModel.mjs +3 -0
  168. package/esm2022/lib/models/cmp/EmailTemplateModel.mjs +3 -0
  169. package/esm2022/lib/models/cmp/contactUsInqueryModel.mjs +7 -0
  170. package/esm2022/lib/models/cmp/messageRourceModel.mjs +3 -0
  171. package/esm2022/lib/models/combo-model.mjs +343 -0
  172. package/esm2022/lib/models/dashboard-model.mjs +3 -0
  173. package/esm2022/lib/models/dependent.model.mjs +8 -0
  174. package/esm2022/lib/models/fileupload/DocUploadModel.mjs +7 -0
  175. package/esm2022/lib/models/fileupload/EmployerDataModel.mjs +3 -0
  176. package/esm2022/lib/models/fileupload/FileObject.mjs +3 -0
  177. package/esm2022/lib/models/fileupload/FileObjectArray.mjs +7 -0
  178. package/esm2022/lib/models/questionnaire/AppealParticipantModel.mjs +8 -0
  179. package/esm2022/lib/models/questionnaire/AutocoderModel.mjs +3 -0
  180. package/esm2022/lib/models/questionnaire/ClaimAppEmpRequestModel.mjs +3 -0
  181. package/esm2022/lib/models/questionnaire/ClaimAppEmpResponseModel.mjs +8 -0
  182. package/esm2022/lib/models/questionnaire/ClaimAppEmployerDetailsModel.mjs +7 -0
  183. package/esm2022/lib/models/questionnaire/ClaimOnlyEmployerDataModel.mjs +3 -0
  184. package/esm2022/lib/models/questionnaire/ComboModel.mjs +453 -0
  185. package/esm2022/lib/models/questionnaire/ElementsModel.mjs +8 -0
  186. package/esm2022/lib/models/questionnaire/EmployerDetailSearchResult.mjs +3 -0
  187. package/esm2022/lib/models/questionnaire/EmployerWagesModel.mjs +3 -0
  188. package/esm2022/lib/models/questionnaire/FBConfigModel.mjs +6 -0
  189. package/esm2022/lib/models/questionnaire/KeyValueModel.mjs +3 -0
  190. package/esm2022/lib/models/questionnaire/LegalDiscaimarModel.mjs +3 -0
  191. package/esm2022/lib/models/questionnaire/LoaderModel.mjs +3 -0
  192. package/esm2022/lib/models/questionnaire/PollingStatusModel.mjs +3 -0
  193. package/esm2022/lib/models/questionnaire/QtrYearEmployerWageModel.mjs +3 -0
  194. package/esm2022/lib/models/questionnaire/QuestionnaireQueryModel.mjs +8 -0
  195. package/esm2022/lib/models/questionnaire/QuestionnaireReturnModel.mjs +11 -0
  196. package/esm2022/lib/models/questionnaire/QuestionnaireSaveModel.mjs +3 -0
  197. package/esm2022/lib/models/questionnaire/RequalifyLiftIssuesModel.mjs +3 -0
  198. package/esm2022/lib/models/questionnaire/ScrollableTextModel.mjs +3 -0
  199. package/esm2022/lib/models/questionnaire/ServiceActionResponseModel.mjs +3 -0
  200. package/esm2022/lib/models/questionnaire/StatusModel.mjs +6 -0
  201. package/esm2022/lib/models/questionnaire/SuccessPageElement.mjs +3 -0
  202. package/esm2022/lib/models/questionnaire/UI512AResponseModel.mjs +3 -0
  203. package/esm2022/lib/models/questionnaire/ValidationModel.mjs +3 -0
  204. package/esm2022/lib/models/questionnaire/WbaHelperTextModel.mjs +3 -0
  205. package/esm2022/lib/models/weekly-cert/WorkSearchWaiverModel.mjs +3 -0
  206. package/esm2022/lib/models/weekly-cert/address-detail-model.mjs +2 -0
  207. package/esm2022/lib/models/weekly-cert/admin-leave-details-model.mjs +7 -0
  208. package/esm2022/lib/models/weekly-cert/employer-info-v2-model.mjs +7 -0
  209. package/esm2022/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.mjs +6 -0
  210. package/esm2022/lib/models/weekly-cert/weekly-certification-v2-model.mjs +34 -0
  211. package/esm2022/lib/models/weekly-cert/work-search-record-v2-model.mjs +15 -0
  212. package/esm2022/lib/models/weekly-cert/work-search-v2-model.mjs +11 -0
  213. package/esm2022/lib/ngx-reusa-app-lib.component.mjs +23 -0
  214. package/esm2022/lib/ngx-reusa-app-lib.module.mjs +522 -0
  215. package/esm2022/lib/ngx-reusa-app-lib.service.mjs +14 -0
  216. package/esm2022/lib/pages/BasePage.mjs +79 -0
  217. package/esm2022/lib/pages/common/accessibility-policy/accessibility-policy.page.mjs +81 -0
  218. package/esm2022/lib/pages/common/change-password/change-password.page.mjs +489 -0
  219. package/esm2022/lib/pages/common/landing/landing.component.mjs +208 -0
  220. package/esm2022/lib/pages/common/landing2/landing2.component.mjs +244 -0
  221. package/esm2022/lib/pages/common/login/login.component.mjs +527 -0
  222. package/esm2022/lib/pages/common/not-found/not-found.page.mjs +24 -0
  223. package/esm2022/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.mjs +306 -0
  224. package/esm2022/lib/pages/common/security-policy/security-policy.page.mjs +61 -0
  225. package/esm2022/lib/pages/common/unauthorized/unauthorized.page.mjs +24 -0
  226. package/esm2022/lib/pages/popovers/language/language.page.mjs +61 -0
  227. package/esm2022/lib/pages/popovers/my-notifications/my-notifications.page.mjs +204 -0
  228. package/esm2022/lib/pages/popovers/my-profile/my-profile.page.mjs +134 -0
  229. package/esm2022/lib/pages/popovers/user-search/user-search.component.mjs +251 -0
  230. package/esm2022/lib/pipes/filter.pipe.mjs +30 -0
  231. package/esm2022/lib/pipes/format-worksearch/format-worksearch.pipe.mjs +101 -0
  232. package/esm2022/lib/pipes/mask/mask.email.pipe.mjs +23 -0
  233. package/esm2022/lib/pipes/proper-case/proper-case.pipe.mjs +27 -0
  234. package/esm2022/lib/pipes/translate/dynamic-translate.pipe.mjs +44 -0
  235. package/esm2022/lib/pipes/trust-html/trust-html.pipe.mjs +20 -0
  236. package/esm2022/lib/services/address-validation-service/address-validation.service.mjs +151 -0
  237. package/esm2022/lib/services/appeal/appeal.service.mjs +37 -0
  238. package/esm2022/lib/services/base-service.mjs +53 -0
  239. package/esm2022/lib/services/birt-service/birt.service.mjs +57 -0
  240. package/esm2022/lib/services/captcha/captcha.service.mjs +46 -0
  241. package/esm2022/lib/services/case-service/case.service.mjs +47 -0
  242. package/esm2022/lib/services/chatbot/chatbot.service.mjs +257 -0
  243. package/esm2022/lib/services/chatbot/script.const.mjs +42 -0
  244. package/esm2022/lib/services/claimant/claimant.service.mjs +31 -0
  245. package/esm2022/lib/services/claimant-context/claimant-context.service.mjs +48 -0
  246. package/esm2022/lib/services/claimant-service/claimant.service.mjs +56 -0
  247. package/esm2022/lib/services/claims/claims.service.mjs +193 -0
  248. package/esm2022/lib/services/cmp-service/cmp.service.mjs +84 -0
  249. package/esm2022/lib/services/dms-service/dms.service.mjs +60 -0
  250. package/esm2022/lib/services/employer/employer-service.mjs +35 -0
  251. package/esm2022/lib/services/event-service/event-service.mjs +44 -0
  252. package/esm2022/lib/services/fpjs/fingerprint.service.mjs +70 -0
  253. package/esm2022/lib/services/google-analytics/google-analytics.service.mjs +29 -0
  254. package/esm2022/lib/services/help/help.service.mjs +63 -0
  255. package/esm2022/lib/services/idle/idle.service.mjs +159 -0
  256. package/esm2022/lib/services/logger/logger.service.mjs +67 -0
  257. package/esm2022/lib/services/login/login.service.mjs +358 -0
  258. package/esm2022/lib/services/maintenance/maintenance.service.mjs +21 -0
  259. package/esm2022/lib/services/notification/notification.service.mjs +113 -0
  260. package/esm2022/lib/services/offline-claims/offline-claims.service.mjs +327 -0
  261. package/esm2022/lib/services/questionnaire/questionnaire.service.mjs +72 -0
  262. package/esm2022/lib/services/questionnaire/validation.service.mjs +62 -0
  263. package/esm2022/lib/services/security-service/security.service.mjs +59 -0
  264. package/esm2022/lib/services/tour/tour.service.mjs +60 -0
  265. package/esm2022/lib/services/util/util.service.mjs +506 -0
  266. package/esm2022/lib/services/weekly-cert/review.service.mjs +101 -0
  267. package/esm2022/lib/services/weekly-cert/weekly-cert-v2.service.mjs +214 -0
  268. package/esm2022/lib/services/weekly-cert/weekly-cert.service.mjs +37 -0
  269. package/esm2022/lib/services/weekly-cert/work-search.service.mjs +58 -0
  270. package/esm2022/lib/validations/AppRegex.mjs +49 -0
  271. package/esm2022/lib/validations/AppValidators.mjs +269 -0
  272. package/esm2022/public-api.mjs +180 -0
  273. package/esm2022/uiapplib-ngx-ui-web-lib.mjs +5 -0
  274. package/fesm2022/uiapplib-ngx-ui-web-lib.mjs +51647 -0
  275. package/fesm2022/uiapplib-ngx-ui-web-lib.mjs.map +1 -0
  276. package/index.d.ts +6 -0
  277. package/lib/annimations/app-animations.d.ts +4 -0
  278. package/lib/annimations/app-animations.d.ts.map +1 -0
  279. package/lib/components/add-employer/add-employer.component.d.ts +318 -0
  280. package/lib/components/add-employer/add-employer.component.d.ts.map +1 -0
  281. package/lib/components/add-participant/add-participant.component.d.ts +55 -0
  282. package/lib/components/add-participant/add-participant.component.d.ts.map +1 -0
  283. package/lib/components/add-payment/add-payment.component.d.ts +39 -0
  284. package/lib/components/add-payment/add-payment.component.d.ts.map +1 -0
  285. package/lib/components/add-wage/add-wage.component.d.ts +30 -0
  286. package/lib/components/add-wage/add-wage.component.d.ts.map +1 -0
  287. package/lib/components/address/address.component.d.ts +108 -0
  288. package/lib/components/address/address.component.d.ts.map +1 -0
  289. package/lib/components/address-popup/address-popup.component.d.ts +16 -0
  290. package/lib/components/address-popup/address-popup.component.d.ts.map +1 -0
  291. package/lib/components/address-suggestion/address-suggestion.component.d.ts +43 -0
  292. package/lib/components/address-suggestion/address-suggestion.component.d.ts.map +1 -0
  293. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts +37 -0
  294. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts.map +1 -0
  295. package/lib/components/associate-ssn/associate-ssn.component.d.ts +33 -0
  296. package/lib/components/associate-ssn/associate-ssn.component.d.ts.map +1 -0
  297. package/lib/components/bank-details/bank-details.component.d.ts +40 -0
  298. package/lib/components/bank-details/bank-details.component.d.ts.map +1 -0
  299. package/lib/components/captcha/captcha.component.d.ts +45 -0
  300. package/lib/components/captcha/captcha.component.d.ts.map +1 -0
  301. package/lib/components/card/card.component.d.ts +12 -0
  302. package/lib/components/card/card.component.d.ts.map +1 -0
  303. package/lib/components/claim-info/claim-info.component.d.ts +49 -0
  304. package/lib/components/claim-info/claim-info.component.d.ts.map +1 -0
  305. package/lib/components/contact-us/contact-us.component.d.ts +106 -0
  306. package/lib/components/contact-us/contact-us.component.d.ts.map +1 -0
  307. package/lib/components/content/content.component.d.ts +14 -0
  308. package/lib/components/content/content.component.d.ts.map +1 -0
  309. package/lib/components/correspondence-download/correspondence-download.component.d.ts +22 -0
  310. package/lib/components/correspondence-download/correspondence-download.component.d.ts.map +1 -0
  311. package/lib/components/dashboard-card/dashboard-card.component.d.ts +26 -0
  312. package/lib/components/dashboard-card/dashboard-card.component.d.ts.map +1 -0
  313. package/lib/components/dependent-grid/dependent-grid.component.d.ts +36 -0
  314. package/lib/components/dependent-grid/dependent-grid.component.d.ts.map +1 -0
  315. package/lib/components/disclosure/disclosure.component.d.ts +13 -0
  316. package/lib/components/disclosure/disclosure.component.d.ts.map +1 -0
  317. package/lib/components/dropdown/dropdown.component.d.ts +582 -0
  318. package/lib/components/dropdown/dropdown.component.d.ts.map +1 -0
  319. package/lib/components/dropdown/dropdown.interface.d.ts +155 -0
  320. package/lib/components/dropdown/dropdown.interface.d.ts.map +1 -0
  321. package/lib/components/dua-request-page/dua-request-page.component.d.ts +74 -0
  322. package/lib/components/dua-request-page/dua-request-page.component.d.ts.map +1 -0
  323. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts +61 -0
  324. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts.map +1 -0
  325. package/lib/components/email-update/email-update.component.d.ts +32 -0
  326. package/lib/components/email-update/email-update.component.d.ts.map +1 -0
  327. package/lib/components/employer-grid/employer-grid.component.d.ts +100 -0
  328. package/lib/components/employer-grid/employer-grid.component.d.ts.map +1 -0
  329. package/lib/components/employer-info/employer-info.component.d.ts +50 -0
  330. package/lib/components/employer-info/employer-info.component.d.ts.map +1 -0
  331. package/lib/components/employer-pay/employer-pay.component.d.ts +51 -0
  332. package/lib/components/employer-pay/employer-pay.component.d.ts.map +1 -0
  333. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts +43 -0
  334. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts.map +1 -0
  335. package/lib/components/error/error.component.d.ts +19 -0
  336. package/lib/components/error/error.component.d.ts.map +1 -0
  337. package/lib/components/farm-usage/farm-usage.component.d.ts +33 -0
  338. package/lib/components/farm-usage/farm-usage.component.d.ts.map +1 -0
  339. package/lib/components/fav-menu/fav-menu.component.d.ts +22 -0
  340. package/lib/components/fav-menu/fav-menu.component.d.ts.map +1 -0
  341. package/lib/components/file-download/file-download.component.d.ts +23 -0
  342. package/lib/components/file-download/file-download.component.d.ts.map +1 -0
  343. package/lib/components/file-uploader/file-uploader.component.d.ts +52 -0
  344. package/lib/components/file-uploader/file-uploader.component.d.ts.map +1 -0
  345. package/lib/components/footer/footer.component.d.ts +37 -0
  346. package/lib/components/footer/footer.component.d.ts.map +1 -0
  347. package/lib/components/gross-earnings/gross-earnings.component.d.ts +42 -0
  348. package/lib/components/gross-earnings/gross-earnings.component.d.ts.map +1 -0
  349. package/lib/components/header/header.component.d.ts +76 -0
  350. package/lib/components/header/header.component.d.ts.map +1 -0
  351. package/lib/components/help/help.component.d.ts +11 -0
  352. package/lib/components/help/help.component.d.ts.map +1 -0
  353. package/lib/components/history-page/history-page.component.d.ts +80 -0
  354. package/lib/components/history-page/history-page.component.d.ts.map +1 -0
  355. package/lib/components/idle-detector/idle-detector.component.d.ts +16 -0
  356. package/lib/components/idle-detector/idle-detector.component.d.ts.map +1 -0
  357. package/lib/components/idme/idme.component.d.ts +19 -0
  358. package/lib/components/idme/idme.component.d.ts.map +1 -0
  359. package/lib/components/info/info.component.d.ts +23 -0
  360. package/lib/components/info/info.component.d.ts.map +1 -0
  361. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts +22 -0
  362. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts.map +1 -0
  363. package/lib/components/job-title/job-title.component.d.ts +37 -0
  364. package/lib/components/job-title/job-title.component.d.ts.map +1 -0
  365. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts +38 -0
  366. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts.map +1 -0
  367. package/lib/components/link/link.component.d.ts +35 -0
  368. package/lib/components/link/link.component.d.ts.map +1 -0
  369. package/lib/components/maintenance-detector/maintenance-detector.component.d.ts +16 -0
  370. package/lib/components/maintenance-detector/maintenance-detector.component.d.ts.map +1 -0
  371. package/lib/components/mask/mask.component.d.ts +12 -0
  372. package/lib/components/mask/mask.component.d.ts.map +1 -0
  373. package/lib/components/menu/menu.component.d.ts +45 -0
  374. package/lib/components/menu/menu.component.d.ts.map +1 -0
  375. package/lib/components/mfa/mfa.component.d.ts +60 -0
  376. package/lib/components/mfa/mfa.component.d.ts.map +1 -0
  377. package/lib/components/mfa-popup/mfa-popup.component.d.ts +17 -0
  378. package/lib/components/mfa-popup/mfa-popup.component.d.ts.map +1 -0
  379. package/lib/components/money-expect/money-expect.component.d.ts +30 -0
  380. package/lib/components/money-expect/money-expect.component.d.ts.map +1 -0
  381. package/lib/components/msg/msg.component.d.ts +11 -0
  382. package/lib/components/msg/msg.component.d.ts.map +1 -0
  383. package/lib/components/news/news.component.d.ts +15 -0
  384. package/lib/components/news/news.component.d.ts.map +1 -0
  385. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts +311 -0
  386. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts.map +1 -0
  387. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts +33 -0
  388. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts.map +1 -0
  389. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts +97 -0
  390. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts.map +1 -0
  391. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts +33 -0
  392. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts.map +1 -0
  393. package/lib/components/overlay-info/overlay-info.component.d.ts +35 -0
  394. package/lib/components/overlay-info/overlay-info.component.d.ts.map +1 -0
  395. package/lib/components/page/page.component.d.ts +24 -0
  396. package/lib/components/page/page.component.d.ts.map +1 -0
  397. package/lib/components/profile/profile.component.d.ts +107 -0
  398. package/lib/components/profile/profile.component.d.ts.map +1 -0
  399. package/lib/components/profile-redirect/profile-redirect.component.d.ts +21 -0
  400. package/lib/components/profile-redirect/profile-redirect.component.d.ts.map +1 -0
  401. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts +54 -0
  402. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts.map +1 -0
  403. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts +74 -0
  404. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts.map +1 -0
  405. package/lib/components/questionnaire/AppValidators.d.ts +17 -0
  406. package/lib/components/questionnaire/AppValidators.d.ts.map +1 -0
  407. package/lib/components/questionnaire/FbConstants.d.ts +8 -0
  408. package/lib/components/questionnaire/FbConstants.d.ts.map +1 -0
  409. package/lib/components/questionnaire/SelectItem.d.ts +5 -0
  410. package/lib/components/questionnaire/SelectItem.d.ts.map +1 -0
  411. package/lib/components/questionnaire/account-success/account-success.page.d.ts +64 -0
  412. package/lib/components/questionnaire/account-success/account-success.page.d.ts.map +1 -0
  413. package/lib/components/questionnaire/common-success/common-success.page.d.ts +83 -0
  414. package/lib/components/questionnaire/common-success/common-success.page.d.ts.map +1 -0
  415. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts +49 -0
  416. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts.map +1 -0
  417. package/lib/components/questionnaire/dynamic-form-question.component.d.ts +126 -0
  418. package/lib/components/questionnaire/dynamic-form-question.component.d.ts.map +1 -0
  419. package/lib/components/questionnaire/dynamic-form.component.d.ts +137 -0
  420. package/lib/components/questionnaire/dynamic-form.component.d.ts.map +1 -0
  421. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts +67 -0
  422. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts.map +1 -0
  423. package/lib/components/questionnaire/input-focus.directive.d.ts +12 -0
  424. package/lib/components/questionnaire/input-focus.directive.d.ts.map +1 -0
  425. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts +45 -0
  426. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts.map +1 -0
  427. package/lib/components/questionnaire/question-base.d.ts +17 -0
  428. package/lib/components/questionnaire/question-base.d.ts.map +1 -0
  429. package/lib/components/questionnaire/question-control.service.d.ts +21 -0
  430. package/lib/components/questionnaire/question-control.service.d.ts.map +1 -0
  431. package/lib/components/questionnaire/question.service.d.ts +18 -0
  432. package/lib/components/questionnaire/question.service.d.ts.map +1 -0
  433. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts +77 -0
  434. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts.map +1 -0
  435. package/lib/components/read-more/read-more.component.d.ts +15 -0
  436. package/lib/components/read-more/read-more.component.d.ts.map +1 -0
  437. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts +76 -0
  438. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts.map +1 -0
  439. package/lib/components/scrollable-text/scrollable-text.component.d.ts +11 -0
  440. package/lib/components/scrollable-text/scrollable-text.component.d.ts.map +1 -0
  441. package/lib/components/search-employer/search-employer.component.d.ts +41 -0
  442. package/lib/components/search-employer/search-employer.component.d.ts.map +1 -0
  443. package/lib/components/select/select.component.d.ts +56 -0
  444. package/lib/components/select/select.component.d.ts.map +1 -0
  445. package/lib/components/sign-ssn/sign-ssn.component.d.ts +34 -0
  446. package/lib/components/sign-ssn/sign-ssn.component.d.ts.map +1 -0
  447. package/lib/components/sms/sms.component.d.ts +63 -0
  448. package/lib/components/sms/sms.component.d.ts.map +1 -0
  449. package/lib/components/ssn/ssn.component.d.ts +12 -0
  450. package/lib/components/ssn/ssn.component.d.ts.map +1 -0
  451. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts +23 -0
  452. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts.map +1 -0
  453. package/lib/components/test/test.component.d.ts +9 -0
  454. package/lib/components/test/test.component.d.ts.map +1 -0
  455. package/lib/components/user-login/user-login.component.d.ts +49 -0
  456. package/lib/components/user-login/user-login.component.d.ts.map +1 -0
  457. package/lib/components/wage-calculator/wage-calculator.component.d.ts +44 -0
  458. package/lib/components/wage-calculator/wage-calculator.component.d.ts.map +1 -0
  459. package/lib/components/wage-grid/wage-grid.component.d.ts +43 -0
  460. package/lib/components/wage-grid/wage-grid.component.d.ts.map +1 -0
  461. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts +28 -0
  462. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts.map +1 -0
  463. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts +28 -0
  464. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts.map +1 -0
  465. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts +84 -0
  466. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts.map +1 -0
  467. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts +53 -0
  468. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts.map +1 -0
  469. package/lib/components/weekly-certification/weekly-certification.component.d.ts +101 -0
  470. package/lib/components/weekly-certification/weekly-certification.component.d.ts.map +1 -0
  471. package/lib/components/weekly-confirmation/confirmation.component.d.ts +21 -0
  472. package/lib/components/weekly-confirmation/confirmation.component.d.ts.map +1 -0
  473. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts +34 -0
  474. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts.map +1 -0
  475. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts +17 -0
  476. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts.map +1 -0
  477. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts +10 -0
  478. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts.map +1 -0
  479. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts +17 -0
  480. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts.map +1 -0
  481. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts +105 -0
  482. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts.map +1 -0
  483. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts +71 -0
  484. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts.map +1 -0
  485. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts +59 -0
  486. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts.map +1 -0
  487. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts +47 -0
  488. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts.map +1 -0
  489. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts +78 -0
  490. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts.map +1 -0
  491. package/lib/directives/auto-focus/auto-focus.directive.d.ts +13 -0
  492. package/lib/directives/auto-focus/auto-focus.directive.d.ts.map +1 -0
  493. package/lib/directives/caps-lock.directive.d.ts +12 -0
  494. package/lib/directives/caps-lock.directive.d.ts.map +1 -0
  495. package/lib/directives/required-roles/required-roles.directive.d.ts +15 -0
  496. package/lib/directives/required-roles/required-roles.directive.d.ts.map +1 -0
  497. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts +8 -0
  498. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts.map +1 -0
  499. package/lib/enums/AddressValidationResponseEnum.d.ts +8 -0
  500. package/lib/enums/AddressValidationResponseEnum.d.ts.map +1 -0
  501. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts +4 -0
  502. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts.map +1 -0
  503. package/lib/enums/EmailStatusEnum.d.ts +8 -0
  504. package/lib/enums/EmailStatusEnum.d.ts.map +1 -0
  505. package/lib/guards/auth.guard.d.ts +29 -0
  506. package/lib/guards/auth.guard.d.ts.map +1 -0
  507. package/lib/guards/no-login/no-login.guard.d.ts +12 -0
  508. package/lib/guards/no-login/no-login.guard.d.ts.map +1 -0
  509. package/lib/interceptors/error-interceptor/http-error-interceptor.d.ts +23 -0
  510. package/lib/interceptors/error-interceptor/http-error-interceptor.d.ts.map +1 -0
  511. package/lib/interceptors/header-interceptor/http-header.interceptor.d.ts +22 -0
  512. package/lib/interceptors/header-interceptor/http-header.interceptor.d.ts.map +1 -0
  513. package/lib/models/ActiveClaimModel.d.ts +8 -0
  514. package/lib/models/ActiveClaimModel.d.ts.map +1 -0
  515. package/lib/models/AddressComponentModel.d.ts +14 -0
  516. package/lib/models/AddressComponentModel.d.ts.map +1 -0
  517. package/lib/models/BankDetailsComponentModel.d.ts +12 -0
  518. package/lib/models/BankDetailsComponentModel.d.ts.map +1 -0
  519. package/lib/models/BankDetailsModel.d.ts +5 -0
  520. package/lib/models/BankDetailsModel.d.ts.map +1 -0
  521. package/lib/models/CinRequalificationCriteriaModel.d.ts +11 -0
  522. package/lib/models/CinRequalificationCriteriaModel.d.ts.map +1 -0
  523. package/lib/models/CountyModel.d.ts +8 -0
  524. package/lib/models/CountyModel.d.ts.map +1 -0
  525. package/lib/models/DuaAppDataModel.d.ts +5 -0
  526. package/lib/models/DuaAppDataModel.d.ts.map +1 -0
  527. package/lib/models/DuaRequestModel.d.ts +10 -0
  528. package/lib/models/DuaRequestModel.d.ts.map +1 -0
  529. package/lib/models/DuaRetroWeeksComponentModel.d.ts +5 -0
  530. package/lib/models/DuaRetroWeeksComponentModel.d.ts.map +1 -0
  531. package/lib/models/EmployerDetailSearchResult.d.ts +54 -0
  532. package/lib/models/EmployerDetailSearchResult.d.ts.map +1 -0
  533. package/lib/models/EmployerInfoComponentModel.d.ts +9 -0
  534. package/lib/models/EmployerInfoComponentModel.d.ts.map +1 -0
  535. package/lib/models/EmployerPayInfoModel.d.ts +20 -0
  536. package/lib/models/EmployerPayInfoModel.d.ts.map +1 -0
  537. package/lib/models/ErrorModel.d.ts +7 -0
  538. package/lib/models/ErrorModel.d.ts.map +1 -0
  539. package/lib/models/FarmUsageComponentModel.d.ts +10 -0
  540. package/lib/models/FarmUsageComponentModel.d.ts.map +1 -0
  541. package/lib/models/FileModel.d.ts +5 -0
  542. package/lib/models/FileModel.d.ts.map +1 -0
  543. package/lib/models/GrossEarningsModel.d.ts +6 -0
  544. package/lib/models/GrossEarningsModel.d.ts.map +1 -0
  545. package/lib/models/HelpConstants.d.ts +5 -0
  546. package/lib/models/HelpConstants.d.ts.map +1 -0
  547. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts +7 -0
  548. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts.map +1 -0
  549. package/lib/models/LibConstants.d.ts +162 -0
  550. package/lib/models/LibConstants.d.ts.map +1 -0
  551. package/lib/models/NewsAndAnnouncementModel.d.ts +6 -0
  552. package/lib/models/NewsAndAnnouncementModel.d.ts.map +1 -0
  553. package/lib/models/NotificationModel.d.ts +11 -0
  554. package/lib/models/NotificationModel.d.ts.map +1 -0
  555. package/lib/models/OtpAuthModel.d.ts +7 -0
  556. package/lib/models/OtpAuthModel.d.ts.map +1 -0
  557. package/lib/models/PaymentComponentModel.d.ts +8 -0
  558. package/lib/models/PaymentComponentModel.d.ts.map +1 -0
  559. package/lib/models/ReasonSeparationRequestModel.d.ts +7 -0
  560. package/lib/models/ReasonSeparationRequestModel.d.ts.map +1 -0
  561. package/lib/models/RequalifyLiftPageModel.d.ts +12 -0
  562. package/lib/models/RequalifyLiftPageModel.d.ts.map +1 -0
  563. package/lib/models/RetroWeeksModel.d.ts +11 -0
  564. package/lib/models/RetroWeeksModel.d.ts.map +1 -0
  565. package/lib/models/SecurityQuestionAnswerModel.d.ts +7 -0
  566. package/lib/models/SecurityQuestionAnswerModel.d.ts.map +1 -0
  567. package/lib/models/SendOtpRequestModel.d.ts +12 -0
  568. package/lib/models/SendOtpRequestModel.d.ts.map +1 -0
  569. package/lib/models/SsaVerificationModel.d.ts +9 -0
  570. package/lib/models/SsaVerificationModel.d.ts.map +1 -0
  571. package/lib/models/TrendModel.d.ts +14 -0
  572. package/lib/models/TrendModel.d.ts.map +1 -0
  573. package/lib/models/UserDetailsModel.d.ts +10 -0
  574. package/lib/models/UserDetailsModel.d.ts.map +1 -0
  575. package/lib/models/UserModel.d.ts +47 -0
  576. package/lib/models/UserModel.d.ts.map +1 -0
  577. package/lib/models/VerifyOtpRequestModel.d.ts +8 -0
  578. package/lib/models/VerifyOtpRequestModel.d.ts.map +1 -0
  579. package/lib/models/WageCalculatorModel.d.ts +15 -0
  580. package/lib/models/WageCalculatorModel.d.ts.map +1 -0
  581. package/lib/models/WageInfoModel.d.ts +9 -0
  582. package/lib/models/WageInfoModel.d.ts.map +1 -0
  583. package/lib/models/addressValidation/AddressRecommendationModel.d.ts +12 -0
  584. package/lib/models/addressValidation/AddressRecommendationModel.d.ts.map +1 -0
  585. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts +11 -0
  586. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts.map +1 -0
  587. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts +6 -0
  588. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts.map +1 -0
  589. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts +16 -0
  590. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts.map +1 -0
  591. package/lib/models/case/CaseAttachmentModel.d.ts +6 -0
  592. package/lib/models/case/CaseAttachmentModel.d.ts.map +1 -0
  593. package/lib/models/claimant/ClaimantModel.d.ts +23 -0
  594. package/lib/models/claimant/ClaimantModel.d.ts.map +1 -0
  595. package/lib/models/claimant/JobResultsData.d.ts +8 -0
  596. package/lib/models/claimant/JobResultsData.d.ts.map +1 -0
  597. package/lib/models/claimant/MatchingJobs.d.ts +13 -0
  598. package/lib/models/claimant/MatchingJobs.d.ts.map +1 -0
  599. package/lib/models/claimant/ResetPasswordModel.d.ts +9 -0
  600. package/lib/models/claimant/ResetPasswordModel.d.ts.map +1 -0
  601. package/lib/models/cmp/CaseCoreModel.d.ts +21 -0
  602. package/lib/models/cmp/CaseCoreModel.d.ts.map +1 -0
  603. package/lib/models/cmp/ComplaintCategoryModel.d.ts +9 -0
  604. package/lib/models/cmp/ComplaintCategoryModel.d.ts.map +1 -0
  605. package/lib/models/cmp/ComplaintCategoryOutputModel.d.ts +6 -0
  606. package/lib/models/cmp/ComplaintCategoryOutputModel.d.ts.map +1 -0
  607. package/lib/models/cmp/ContactUsModel.d.ts +23 -0
  608. package/lib/models/cmp/ContactUsModel.d.ts.map +1 -0
  609. package/lib/models/cmp/EmailTemplateModel.d.ts +7 -0
  610. package/lib/models/cmp/EmailTemplateModel.d.ts.map +1 -0
  611. package/lib/models/cmp/contactUsInqueryModel.d.ts +47 -0
  612. package/lib/models/cmp/contactUsInqueryModel.d.ts.map +1 -0
  613. package/lib/models/cmp/messageRourceModel.d.ts +6 -0
  614. package/lib/models/cmp/messageRourceModel.d.ts.map +1 -0
  615. package/lib/models/combo-model.d.ts +42 -0
  616. package/lib/models/combo-model.d.ts.map +1 -0
  617. package/lib/models/dashboard-model.d.ts +66 -0
  618. package/lib/models/dashboard-model.d.ts.map +1 -0
  619. package/lib/models/dependent.model.d.ts +20 -0
  620. package/lib/models/dependent.model.d.ts.map +1 -0
  621. package/lib/models/fileupload/DocUploadModel.d.ts +22 -0
  622. package/lib/models/fileupload/DocUploadModel.d.ts.map +1 -0
  623. package/lib/models/fileupload/EmployerDataModel.d.ts +6 -0
  624. package/lib/models/fileupload/EmployerDataModel.d.ts.map +1 -0
  625. package/lib/models/fileupload/FileObject.d.ts +8 -0
  626. package/lib/models/fileupload/FileObject.d.ts.map +1 -0
  627. package/lib/models/fileupload/FileObjectArray.d.ts +8 -0
  628. package/lib/models/fileupload/FileObjectArray.d.ts.map +1 -0
  629. package/lib/models/questionnaire/AppealParticipantModel.d.ts +17 -0
  630. package/lib/models/questionnaire/AppealParticipantModel.d.ts.map +1 -0
  631. package/lib/models/questionnaire/AutocoderModel.d.ts +9 -0
  632. package/lib/models/questionnaire/AutocoderModel.d.ts.map +1 -0
  633. package/lib/models/questionnaire/ClaimAppEmpRequestModel.d.ts +9 -0
  634. package/lib/models/questionnaire/ClaimAppEmpRequestModel.d.ts.map +1 -0
  635. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts +21 -0
  636. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts.map +1 -0
  637. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts +167 -0
  638. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts.map +1 -0
  639. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts +21 -0
  640. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts.map +1 -0
  641. package/lib/models/questionnaire/ComboModel.d.ts +110 -0
  642. package/lib/models/questionnaire/ComboModel.d.ts.map +1 -0
  643. package/lib/models/questionnaire/ElementsModel.d.ts +70 -0
  644. package/lib/models/questionnaire/ElementsModel.d.ts.map +1 -0
  645. package/lib/models/questionnaire/EmployerDetailSearchResult.d.ts +18 -0
  646. package/lib/models/questionnaire/EmployerDetailSearchResult.d.ts.map +1 -0
  647. package/lib/models/questionnaire/EmployerWagesModel.d.ts +5 -0
  648. package/lib/models/questionnaire/EmployerWagesModel.d.ts.map +1 -0
  649. package/lib/models/questionnaire/FBConfigModel.d.ts +12 -0
  650. package/lib/models/questionnaire/FBConfigModel.d.ts.map +1 -0
  651. package/lib/models/questionnaire/KeyValueModel.d.ts +11 -0
  652. package/lib/models/questionnaire/KeyValueModel.d.ts.map +1 -0
  653. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts +13 -0
  654. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts.map +1 -0
  655. package/lib/models/questionnaire/LoaderModel.d.ts +5 -0
  656. package/lib/models/questionnaire/LoaderModel.d.ts.map +1 -0
  657. package/lib/models/questionnaire/PollingStatusModel.d.ts +7 -0
  658. package/lib/models/questionnaire/PollingStatusModel.d.ts.map +1 -0
  659. package/lib/models/questionnaire/QtrYearEmployerWageModel.d.ts +9 -0
  660. package/lib/models/questionnaire/QtrYearEmployerWageModel.d.ts.map +1 -0
  661. package/lib/models/questionnaire/QuestionnaireQueryModel.d.ts +24 -0
  662. package/lib/models/questionnaire/QuestionnaireQueryModel.d.ts.map +1 -0
  663. package/lib/models/questionnaire/QuestionnaireReturnModel.d.ts +21 -0
  664. package/lib/models/questionnaire/QuestionnaireReturnModel.d.ts.map +1 -0
  665. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts +25 -0
  666. package/lib/models/questionnaire/QuestionnaireSaveModel.d.ts.map +1 -0
  667. package/lib/models/questionnaire/RequalifyLiftIssuesModel.d.ts +14 -0
  668. package/lib/models/questionnaire/RequalifyLiftIssuesModel.d.ts.map +1 -0
  669. package/lib/models/questionnaire/ScrollableTextModel.d.ts +4 -0
  670. package/lib/models/questionnaire/ScrollableTextModel.d.ts.map +1 -0
  671. package/lib/models/questionnaire/ServiceActionResponseModel.d.ts +7 -0
  672. package/lib/models/questionnaire/ServiceActionResponseModel.d.ts.map +1 -0
  673. package/lib/models/questionnaire/StatusModel.d.ts +17 -0
  674. package/lib/models/questionnaire/StatusModel.d.ts.map +1 -0
  675. package/lib/models/questionnaire/SuccessPageElement.d.ts +9 -0
  676. package/lib/models/questionnaire/SuccessPageElement.d.ts.map +1 -0
  677. package/lib/models/questionnaire/UI512AResponseModel.d.ts +13 -0
  678. package/lib/models/questionnaire/UI512AResponseModel.d.ts.map +1 -0
  679. package/lib/models/questionnaire/ValidationModel.d.ts +18 -0
  680. package/lib/models/questionnaire/ValidationModel.d.ts.map +1 -0
  681. package/lib/models/questionnaire/WbaHelperTextModel.d.ts +4 -0
  682. package/lib/models/questionnaire/WbaHelperTextModel.d.ts.map +1 -0
  683. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts +9 -0
  684. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts.map +1 -0
  685. package/lib/models/weekly-cert/address-detail-model.d.ts +14 -0
  686. package/lib/models/weekly-cert/address-detail-model.d.ts.map +1 -0
  687. package/lib/models/weekly-cert/admin-leave-details-model.d.ts +15 -0
  688. package/lib/models/weekly-cert/admin-leave-details-model.d.ts.map +1 -0
  689. package/lib/models/weekly-cert/employer-info-v2-model.d.ts +27 -0
  690. package/lib/models/weekly-cert/employer-info-v2-model.d.ts.map +1 -0
  691. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts +57 -0
  692. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts.map +1 -0
  693. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts +59 -0
  694. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts.map +1 -0
  695. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts +66 -0
  696. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts.map +1 -0
  697. package/lib/models/weekly-cert/work-search-v2-model.d.ts +18 -0
  698. package/lib/models/weekly-cert/work-search-v2-model.d.ts.map +1 -0
  699. package/lib/ngx-reusa-app-lib.component.d.ts +9 -0
  700. package/lib/ngx-reusa-app-lib.component.d.ts.map +1 -0
  701. package/lib/ngx-reusa-app-lib.module.d.ts +193 -0
  702. package/lib/ngx-reusa-app-lib.module.d.ts.map +1 -0
  703. package/lib/ngx-reusa-app-lib.service.d.ts +7 -0
  704. package/lib/ngx-reusa-app-lib.service.d.ts.map +1 -0
  705. package/lib/pages/BasePage.d.ts +29 -0
  706. package/lib/pages/BasePage.d.ts.map +1 -0
  707. package/lib/pages/common/accessibility-policy/accessibility-policy.page.d.ts +12 -0
  708. package/lib/pages/common/accessibility-policy/accessibility-policy.page.d.ts.map +1 -0
  709. package/lib/pages/common/change-password/change-password.page.d.ts +44 -0
  710. package/lib/pages/common/change-password/change-password.page.d.ts.map +1 -0
  711. package/lib/pages/common/landing/landing.component.d.ts +25 -0
  712. package/lib/pages/common/landing/landing.component.d.ts.map +1 -0
  713. package/lib/pages/common/landing2/landing2.component.d.ts +31 -0
  714. package/lib/pages/common/landing2/landing2.component.d.ts.map +1 -0
  715. package/lib/pages/common/login/login.component.d.ts +65 -0
  716. package/lib/pages/common/login/login.component.d.ts.map +1 -0
  717. package/lib/pages/common/not-found/not-found.page.d.ts +9 -0
  718. package/lib/pages/common/not-found/not-found.page.d.ts.map +1 -0
  719. package/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.d.ts +12 -0
  720. package/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.d.ts.map +1 -0
  721. package/lib/pages/common/security-policy/security-policy.page.d.ts +12 -0
  722. package/lib/pages/common/security-policy/security-policy.page.d.ts.map +1 -0
  723. package/lib/pages/common/unauthorized/unauthorized.page.d.ts +9 -0
  724. package/lib/pages/common/unauthorized/unauthorized.page.d.ts.map +1 -0
  725. package/lib/pages/popovers/language/language.page.d.ts +17 -0
  726. package/lib/pages/popovers/language/language.page.d.ts.map +1 -0
  727. package/lib/pages/popovers/my-notifications/my-notifications.page.d.ts +22 -0
  728. package/lib/pages/popovers/my-notifications/my-notifications.page.d.ts.map +1 -0
  729. package/lib/pages/popovers/my-profile/my-profile.page.d.ts +21 -0
  730. package/lib/pages/popovers/my-profile/my-profile.page.d.ts.map +1 -0
  731. package/lib/pages/popovers/user-search/user-search.component.d.ts +32 -0
  732. package/lib/pages/popovers/user-search/user-search.component.d.ts.map +1 -0
  733. package/lib/pipes/filter.pipe.d.ts +8 -0
  734. package/lib/pipes/filter.pipe.d.ts.map +1 -0
  735. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts +14 -0
  736. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts.map +1 -0
  737. package/lib/pipes/mask/mask.email.pipe.d.ts +11 -0
  738. package/lib/pipes/mask/mask.email.pipe.d.ts.map +1 -0
  739. package/lib/pipes/proper-case/proper-case.pipe.d.ts +9 -0
  740. package/lib/pipes/proper-case/proper-case.pipe.d.ts.map +1 -0
  741. package/lib/pipes/translate/dynamic-translate.pipe.d.ts +11 -0
  742. package/lib/pipes/translate/dynamic-translate.pipe.d.ts.map +1 -0
  743. package/lib/pipes/trust-html/trust-html.pipe.d.ts +11 -0
  744. package/lib/pipes/trust-html/trust-html.pipe.d.ts.map +1 -0
  745. package/lib/services/address-validation-service/address-validation.service.d.ts +44 -0
  746. package/lib/services/address-validation-service/address-validation.service.d.ts.map +1 -0
  747. package/lib/services/appeal/appeal.service.d.ts +16 -0
  748. package/lib/services/appeal/appeal.service.d.ts.map +1 -0
  749. package/lib/services/base-service.d.ts +105 -0
  750. package/lib/services/base-service.d.ts.map +1 -0
  751. package/lib/services/birt-service/birt.service.d.ts +17 -0
  752. package/lib/services/birt-service/birt.service.d.ts.map +1 -0
  753. package/lib/services/captcha/captcha.service.d.ts +16 -0
  754. package/lib/services/captcha/captcha.service.d.ts.map +1 -0
  755. package/lib/services/case-service/case.service.d.ts +20 -0
  756. package/lib/services/case-service/case.service.d.ts.map +1 -0
  757. package/lib/services/chatbot/chatbot.service.d.ts +61 -0
  758. package/lib/services/chatbot/chatbot.service.d.ts.map +1 -0
  759. package/lib/services/chatbot/script.const.d.ts +16 -0
  760. package/lib/services/chatbot/script.const.d.ts.map +1 -0
  761. package/lib/services/claimant/claimant.service.d.ts +18 -0
  762. package/lib/services/claimant/claimant.service.d.ts.map +1 -0
  763. package/lib/services/claimant-context/claimant-context.service.d.ts +19 -0
  764. package/lib/services/claimant-context/claimant-context.service.d.ts.map +1 -0
  765. package/lib/services/claimant-service/claimant.service.d.ts +25 -0
  766. package/lib/services/claimant-service/claimant.service.d.ts.map +1 -0
  767. package/lib/services/claims/claims.service.d.ts +76 -0
  768. package/lib/services/claims/claims.service.d.ts.map +1 -0
  769. package/lib/services/cmp-service/cmp.service.d.ts +34 -0
  770. package/lib/services/cmp-service/cmp.service.d.ts.map +1 -0
  771. package/lib/services/dms-service/dms.service.d.ts +24 -0
  772. package/lib/services/dms-service/dms.service.d.ts.map +1 -0
  773. package/lib/services/employer/employer-service.d.ts +16 -0
  774. package/lib/services/employer/employer-service.d.ts.map +1 -0
  775. package/lib/services/event-service/event-service.d.ts +20 -0
  776. package/lib/services/event-service/event-service.d.ts.map +1 -0
  777. package/lib/services/fpjs/fingerprint.service.d.ts +19 -0
  778. package/lib/services/fpjs/fingerprint.service.d.ts.map +1 -0
  779. package/lib/services/google-analytics/google-analytics.service.d.ts +9 -0
  780. package/lib/services/google-analytics/google-analytics.service.d.ts.map +1 -0
  781. package/lib/services/help/help.service.d.ts +26 -0
  782. package/lib/services/help/help.service.d.ts.map +1 -0
  783. package/lib/services/idle/idle.service.d.ts +44 -0
  784. package/lib/services/idle/idle.service.d.ts.map +1 -0
  785. package/lib/services/logger/logger.service.d.ts +32 -0
  786. package/lib/services/logger/logger.service.d.ts.map +1 -0
  787. package/lib/services/login/login.service.d.ts +81 -0
  788. package/lib/services/login/login.service.d.ts.map +1 -0
  789. package/lib/services/maintenance/maintenance.service.d.ts +16 -0
  790. package/lib/services/maintenance/maintenance.service.d.ts.map +1 -0
  791. package/lib/services/notification/notification.service.d.ts +39 -0
  792. package/lib/services/notification/notification.service.d.ts.map +1 -0
  793. package/lib/services/offline-claims/offline-claims.service.d.ts +64 -0
  794. package/lib/services/offline-claims/offline-claims.service.d.ts.map +1 -0
  795. package/lib/services/questionnaire/questionnaire.service.d.ts +37 -0
  796. package/lib/services/questionnaire/questionnaire.service.d.ts.map +1 -0
  797. package/lib/services/questionnaire/validation.service.d.ts +85 -0
  798. package/lib/services/questionnaire/validation.service.d.ts.map +1 -0
  799. package/lib/services/security-service/security.service.d.ts +26 -0
  800. package/lib/services/security-service/security.service.d.ts.map +1 -0
  801. package/lib/services/tour/tour.service.d.ts +25 -0
  802. package/lib/services/tour/tour.service.d.ts.map +1 -0
  803. package/lib/services/util/util.service.d.ts +200 -0
  804. package/lib/services/util/util.service.d.ts.map +1 -0
  805. package/lib/services/weekly-cert/review.service.d.ts +23 -0
  806. package/lib/services/weekly-cert/review.service.d.ts.map +1 -0
  807. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts +59 -0
  808. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts.map +1 -0
  809. package/lib/services/weekly-cert/weekly-cert.service.d.ts +17 -0
  810. package/lib/services/weekly-cert/weekly-cert.service.d.ts.map +1 -0
  811. package/lib/services/weekly-cert/work-search.service.d.ts +26 -0
  812. package/lib/services/weekly-cert/work-search.service.d.ts.map +1 -0
  813. package/lib/validations/AppRegex.d.ts +48 -0
  814. package/lib/validations/AppRegex.d.ts.map +1 -0
  815. package/lib/validations/AppValidators.d.ts +78 -0
  816. package/lib/validations/AppValidators.d.ts.map +1 -0
  817. package/package.json +25 -0
  818. package/public-api.d.ts +170 -0
  819. package/public-api.d.ts.map +1 -0
  820. package/uiapplib-ngx-ui-web-lib.d.ts.map +1 -0
@@ -0,0 +1,950 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } 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
+ const _c0 = ["gridTop"];
20
+ const _c1 = () => ["fal", "edit"];
21
+ function EmployerGridComponent_div_24_Template(rf, ctx) { if (rf & 1) {
22
+ i0.ɵɵelementStart(0, "div", 11);
23
+ i0.ɵɵelement(1, "fa-icon", 5)(2, "span", 3);
24
+ i0.ɵɵpipe(3, "trustHtml");
25
+ i0.ɵɵpipe(4, "translate");
26
+ i0.ɵɵtext(5, ",\u00A0 ");
27
+ i0.ɵɵelementEnd();
28
+ } if (rf & 2) {
29
+ i0.ɵɵadvance(1);
30
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(6, _c1));
31
+ i0.ɵɵadvance(1);
32
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(3, 2, i0.ɵɵpipeBind1(4, 4, "induction.employment.subheader.edit")), i0.ɵɵsanitizeHtml);
33
+ } }
34
+ function EmployerGridComponent_br_25_Template(rf, ctx) { if (rf & 1) {
35
+ i0.ɵɵelement(0, "br", 4);
36
+ } }
37
+ function EmployerGridComponent_p_table_30_ng_template_2_Template(rf, ctx) { if (rf & 1) {
38
+ i0.ɵɵelementStart(0, "tr")(1, "th", 17);
39
+ i0.ɵɵtext(2);
40
+ i0.ɵɵpipe(3, "translate");
41
+ i0.ɵɵelementEnd();
42
+ i0.ɵɵelement(4, "th");
43
+ i0.ɵɵelementStart(5, "th");
44
+ i0.ɵɵtext(6);
45
+ i0.ɵɵpipe(7, "translate");
46
+ i0.ɵɵelementEnd();
47
+ i0.ɵɵelementStart(8, "th");
48
+ i0.ɵɵtext(9);
49
+ i0.ɵɵpipe(10, "translate");
50
+ i0.ɵɵelementEnd();
51
+ i0.ɵɵelementStart(11, "th");
52
+ i0.ɵɵtext(12);
53
+ i0.ɵɵpipe(13, "translate");
54
+ i0.ɵɵelementEnd();
55
+ i0.ɵɵelementStart(14, "th");
56
+ i0.ɵɵtext(15);
57
+ i0.ɵɵpipe(16, "translate");
58
+ i0.ɵɵelementEnd()();
59
+ } if (rf & 2) {
60
+ i0.ɵɵadvance(2);
61
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 5, "induction.employment.table.employer.name"), " ");
62
+ i0.ɵɵadvance(4);
63
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(7, 7, "induction.employment.table.job.title"), " ");
64
+ i0.ɵɵadvance(3);
65
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(10, 9, "induction.employment.table.pay"), " ");
66
+ i0.ɵɵadvance(3);
67
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(13, 11, "induction.employment.table.dates"), " ");
68
+ i0.ɵɵadvance(3);
69
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(16, 13, "induction.employment.table.sep.reason"), " ");
70
+ } }
71
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_1_Template(rf, ctx) { if (rf & 1) {
72
+ i0.ɵɵelementStart(0, "td", 17)(1, "span", 32);
73
+ i0.ɵɵtext(2, "Employer");
74
+ i0.ɵɵelementEnd();
75
+ i0.ɵɵelementStart(3, "span", 33);
76
+ i0.ɵɵtext(4);
77
+ i0.ɵɵelement(5, "br");
78
+ i0.ɵɵelementEnd()();
79
+ } if (rf & 2) {
80
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
81
+ i0.ɵɵstyleProp("color", !employer_r11.isEmployerEdited && employer_r11.isEmployerGridSubmitted ? "#eb445a" : "");
82
+ i0.ɵɵadvance(4);
83
+ i0.ɵɵtextInterpolate2(" ", employer_r11.employerData.displayName, " - ", employer_r11.employerData.displayState.text, "");
84
+ } }
85
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ng_template_2_td_0_Template(rf, ctx) { if (rf & 1) {
86
+ i0.ɵɵelementStart(0, "td", 17)(1, "span", 32);
87
+ i0.ɵɵtext(2, "Employer");
88
+ i0.ɵɵelementEnd();
89
+ i0.ɵɵelementStart(3, "span", 33);
90
+ i0.ɵɵtext(4);
91
+ i0.ɵɵelement(5, "br");
92
+ i0.ɵɵelementEnd()();
93
+ } if (rf & 2) {
94
+ const employer_r11 = i0.ɵɵnextContext(3).$implicit;
95
+ i0.ɵɵstyleProp("color", !employer_r11.isEmployerEdited && employer_r11.isEmployerGridSubmitted ? "#eb445a" : "");
96
+ i0.ɵɵadvance(4);
97
+ i0.ɵɵtextInterpolate2(" ", employer_r11.employerData.displayName, " - ", employer_r11.workState.text, "");
98
+ } }
99
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ng_template_2_Template(rf, ctx) { if (rf & 1) {
100
+ i0.ɵɵtemplate(0, EmployerGridComponent_p_table_30_ng_template_3_tr_0_ng_template_2_td_0_Template, 6, 4, "td", 20);
101
+ } if (rf & 2) {
102
+ i0.ɵɵnextContext();
103
+ const _r18 = i0.ɵɵreference(5);
104
+ const employer_r11 = i0.ɵɵnextContext().$implicit;
105
+ i0.ɵɵproperty("ngIf", employer_r11.osaBpEmployerFlag === "1" && employer_r11.employerType === "REG" && employer_r11.workState != null)("ngIfElse", _r18);
106
+ } }
107
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ng_template_4_td_0_Template(rf, ctx) { if (rf & 1) {
108
+ i0.ɵɵelementStart(0, "td", 17)(1, "span", 32);
109
+ i0.ɵɵtext(2, "Employer");
110
+ i0.ɵɵelementEnd();
111
+ i0.ɵɵelementStart(3, "span", 33);
112
+ i0.ɵɵtext(4);
113
+ i0.ɵɵelement(5, "br");
114
+ i0.ɵɵelementEnd();
115
+ i0.ɵɵelement(6, "div", 34);
116
+ i0.ɵɵpipe(7, "trustHtml");
117
+ i0.ɵɵelementEnd();
118
+ } if (rf & 2) {
119
+ const employer_r11 = i0.ɵɵnextContext(3).$implicit;
120
+ i0.ɵɵstyleProp("color", !employer_r11.isEmployerEdited && employer_r11.isEmployerGridSubmitted ? "#eb445a" : "");
121
+ i0.ɵɵadvance(4);
122
+ i0.ɵɵtextInterpolate1(" ", employer_r11.employerData.displayName, " ");
123
+ i0.ɵɵadvance(2);
124
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(7, 4, employer_r11.employerData.mailingAddressDisplay), i0.ɵɵsanitizeHtml);
125
+ } }
126
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ng_template_4_Template(rf, ctx) { if (rf & 1) {
127
+ i0.ɵɵtemplate(0, EmployerGridComponent_p_table_30_ng_template_3_tr_0_ng_template_4_td_0_Template, 8, 6, "td", 23);
128
+ } if (rf & 2) {
129
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
130
+ i0.ɵɵproperty("ngIf", employer_r11.employerData.displayName && employer_r11.employerType != "MIL");
131
+ } }
132
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_6_Template(rf, ctx) { if (rf & 1) {
133
+ i0.ɵɵelementStart(0, "td", 17)(1, "span", 32);
134
+ i0.ɵɵtext(2, "Employer");
135
+ i0.ɵɵelementEnd();
136
+ i0.ɵɵelement(3, "span");
137
+ i0.ɵɵelementEnd();
138
+ } if (rf & 2) {
139
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
140
+ i0.ɵɵstyleProp("color", !employer_r11.isEmployerEdited && employer_r11.isEmployerGridSubmitted ? "#eb445a" : "");
141
+ } }
142
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_7_Template(rf, ctx) { if (rf & 1) {
143
+ i0.ɵɵelementStart(0, "td", 17)(1, "span", 32);
144
+ i0.ɵɵtext(2, "Employer");
145
+ i0.ɵɵelementEnd();
146
+ i0.ɵɵelementStart(3, "span");
147
+ i0.ɵɵtext(4);
148
+ i0.ɵɵelement(5, "br");
149
+ i0.ɵɵelementEnd()();
150
+ } if (rf & 2) {
151
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
152
+ i0.ɵɵstyleProp("color", !employer_r11.isEmployerEdited && employer_r11.isEmployerGridSubmitted ? "#eb445a" : "");
153
+ i0.ɵɵadvance(4);
154
+ i0.ɵɵtextInterpolate1(" ", employer_r11.serviceBranch.text, " ");
155
+ } }
156
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_9_Template(rf, ctx) { if (rf & 1) {
157
+ const _r48 = i0.ɵɵgetCurrentView();
158
+ i0.ɵɵelementStart(0, "ion-button", 35);
159
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_9_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r48); const employer_r11 = i0.ɵɵnextContext(2).$implicit; const ctx_r46 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r46.editBasePeriodEmployer(employer_r11)); });
160
+ i0.ɵɵelement(1, "fa-icon", 36);
161
+ i0.ɵɵelementEnd();
162
+ } if (rf & 2) {
163
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
164
+ i0.ɵɵproperty("color", !employer_r11.isEmployerEdited && employer_r11.isEmployerGridSubmitted ? "danger" : "success");
165
+ i0.ɵɵadvance(1);
166
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(2, _c1));
167
+ } }
168
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_10_Template(rf, ctx) { if (rf & 1) {
169
+ const _r52 = i0.ɵɵgetCurrentView();
170
+ i0.ɵɵelementStart(0, "ion-button", 37);
171
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_10_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r52); const employer_r11 = i0.ɵɵnextContext(2).$implicit; const ctx_r50 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r50.editEmployer(employer_r11)); });
172
+ i0.ɵɵelement(1, "fa-icon", 36);
173
+ i0.ɵɵelementEnd();
174
+ } if (rf & 2) {
175
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
176
+ i0.ɵɵproperty("color", !employer_r11.isEmployerEdited && employer_r11.isEmployerGridSubmitted ? "danger" : "success");
177
+ i0.ɵɵadvance(1);
178
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(2, _c1));
179
+ } }
180
+ const _c2 = () => ["fal", "check-circle"];
181
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_11_Template(rf, ctx) { if (rf & 1) {
182
+ const _r56 = i0.ɵɵgetCurrentView();
183
+ i0.ɵɵelementStart(0, "ion-button", 38);
184
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_11_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r56); const employer_r11 = i0.ɵɵnextContext(2).$implicit; const ctx_r54 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r54.finish(employer_r11)); });
185
+ i0.ɵɵelement(1, "fa-icon", 36);
186
+ i0.ɵɵelementEnd();
187
+ } if (rf & 2) {
188
+ const ctx_r57 = i0.ɵɵnextContext(2);
189
+ const rowIndex_r12 = ctx_r57.rowIndex;
190
+ const employer_r11 = ctx_r57.$implicit;
191
+ const ctx_r23 = i0.ɵɵnextContext(2);
192
+ i0.ɵɵproperty("id", "btnConfirmEmployer-" + rowIndex_r12)("color", !employer_r11.isEmployerEdited && employer_r11.isEmployerGridSubmitted ? "danger" : "success");
193
+ i0.ɵɵadvance(1);
194
+ i0.ɵɵproperty("icon", ctx_r23.util.isState("MS") ? i0.ɵɵpureFunction0(3, _c1) : i0.ɵɵpureFunction0(4, _c2));
195
+ } }
196
+ const _c3 = () => ["fal", "trash-alt"];
197
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_12_Template(rf, ctx) { if (rf & 1) {
198
+ const _r60 = i0.ɵɵgetCurrentView();
199
+ i0.ɵɵelementStart(0, "ion-button", 39);
200
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_12_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r60); const rowIndex_r12 = i0.ɵɵnextContext(2).rowIndex; const ctx_r58 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r58.deleteEmployer(rowIndex_r12)); });
201
+ i0.ɵɵelement(1, "fa-icon", 36);
202
+ i0.ɵɵelementEnd();
203
+ } if (rf & 2) {
204
+ const rowIndex_r12 = i0.ɵɵnextContext(2).rowIndex;
205
+ i0.ɵɵproperty("id", "btnDeleteEmployer-" + rowIndex_r12);
206
+ i0.ɵɵadvance(1);
207
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(2, _c3));
208
+ } }
209
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_13_Template(rf, ctx) { if (rf & 1) {
210
+ const _r64 = i0.ɵɵgetCurrentView();
211
+ i0.ɵɵelementStart(0, "ion-button", 39);
212
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_13_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r64); const ctx_r63 = i0.ɵɵnextContext(2); const employer_r11 = ctx_r63.$implicit; const rowIndex_r12 = ctx_r63.rowIndex; const ctx_r62 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r62.removeEmployment(employer_r11, rowIndex_r12)); });
213
+ i0.ɵɵelement(1, "fa-icon", 36);
214
+ i0.ɵɵelementEnd();
215
+ } if (rf & 2) {
216
+ const rowIndex_r12 = i0.ɵɵnextContext(2).rowIndex;
217
+ i0.ɵɵproperty("id", "btnRemoveEmployer-" + rowIndex_r12);
218
+ i0.ɵɵadvance(1);
219
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(2, _c3));
220
+ } }
221
+ const _c4 = () => ["fal", "trash-restore-alt"];
222
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_14_Template(rf, ctx) { if (rf & 1) {
223
+ const _r68 = i0.ɵɵgetCurrentView();
224
+ i0.ɵɵelementStart(0, "ion-button", 40);
225
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_14_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r68); const ctx_r67 = i0.ɵɵnextContext(2); const employer_r11 = ctx_r67.$implicit; const rowIndex_r12 = ctx_r67.rowIndex; const ctx_r66 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r66.restoreEmployment(employer_r11, rowIndex_r12)); });
226
+ i0.ɵɵelement(1, "fa-icon", 36);
227
+ i0.ɵɵelementEnd();
228
+ } if (rf & 2) {
229
+ i0.ɵɵadvance(1);
230
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(1, _c4));
231
+ } }
232
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_15_Template(rf, ctx) { if (rf & 1) {
233
+ i0.ɵɵelementStart(0, "td")(1, "span", 32);
234
+ i0.ɵɵtext(2, "Job Title");
235
+ i0.ɵɵelementEnd();
236
+ i0.ɵɵtext(3);
237
+ i0.ɵɵelementEnd();
238
+ } if (rf & 2) {
239
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
240
+ i0.ɵɵadvance(3);
241
+ i0.ɵɵtextInterpolate(employer_r11.jobTileOrPosition);
242
+ } }
243
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_16_Template(rf, ctx) { if (rf & 1) {
244
+ i0.ɵɵelementStart(0, "td")(1, "span", 32);
245
+ i0.ɵɵtext(2, "Job Title");
246
+ i0.ɵɵelementEnd();
247
+ i0.ɵɵtext(3);
248
+ i0.ɵɵelementEnd();
249
+ } if (rf & 2) {
250
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
251
+ i0.ɵɵadvance(3);
252
+ i0.ɵɵtextInterpolate(employer_r11.fedJobTileOrPosition);
253
+ } }
254
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_17_Template(rf, ctx) { if (rf & 1) {
255
+ i0.ɵɵelementStart(0, "td")(1, "span", 32);
256
+ i0.ɵɵtext(2, "Job Title");
257
+ i0.ɵɵelementEnd()();
258
+ } }
259
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_18_Template(rf, ctx) { if (rf & 1) {
260
+ i0.ɵɵelementStart(0, "td")(1, "span", 32);
261
+ i0.ɵɵtext(2, "Pay");
262
+ i0.ɵɵelementEnd();
263
+ i0.ɵɵtext(3);
264
+ i0.ɵɵpipe(4, "currency");
265
+ i0.ɵɵelementEnd();
266
+ } if (rf & 2) {
267
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
268
+ i0.ɵɵadvance(3);
269
+ i0.ɵɵtextInterpolate2("", i0.ɵɵpipeBind1(4, 2, employer_r11.payRate), "/", employer_r11.payRateFrequency.text, "");
270
+ } }
271
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_19_Template(rf, ctx) { if (rf & 1) {
272
+ i0.ɵɵelementStart(0, "td")(1, "span", 32);
273
+ i0.ɵɵtext(2, "Pay");
274
+ i0.ɵɵelementEnd()();
275
+ } }
276
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_20_Template(rf, ctx) { if (rf & 1) {
277
+ i0.ɵɵelementStart(0, "td")(1, "span", 32);
278
+ i0.ɵɵtext(2, "Start and End");
279
+ i0.ɵɵelementEnd();
280
+ i0.ɵɵtext(3);
281
+ i0.ɵɵpipe(4, "date");
282
+ i0.ɵɵpipe(5, "date");
283
+ i0.ɵɵelementEnd();
284
+ } if (rf & 2) {
285
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
286
+ i0.ɵɵadvance(3);
287
+ i0.ɵɵtextInterpolate2(" ", i0.ɵɵpipeBind2(4, 2, employer_r11.startDate, "M/d/yyyy"), " - ", i0.ɵɵpipeBind2(5, 5, employer_r11.endDate, "M/d/yyyy"), " ");
288
+ } }
289
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_21_Template(rf, ctx) { if (rf & 1) {
290
+ i0.ɵɵelementStart(0, "td")(1, "span", 32);
291
+ i0.ɵɵtext(2, "Start and End");
292
+ i0.ɵɵelementEnd();
293
+ i0.ɵɵtext(3);
294
+ i0.ɵɵpipe(4, "date");
295
+ i0.ɵɵpipe(5, "date");
296
+ i0.ɵɵelementEnd();
297
+ } if (rf & 2) {
298
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
299
+ i0.ɵɵadvance(3);
300
+ i0.ɵɵtextInterpolate2(" ", i0.ɵɵpipeBind2(4, 2, employer_r11.startDateFed, "M/d/yyyy"), " - ", i0.ɵɵpipeBind2(5, 5, employer_r11.endDateFed, "M/d/yyyy"), " ");
301
+ } }
302
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_22_Template(rf, ctx) { if (rf & 1) {
303
+ i0.ɵɵelementStart(0, "td")(1, "span", 32);
304
+ i0.ɵɵtext(2, "Start and End");
305
+ i0.ɵɵelementEnd();
306
+ i0.ɵɵtext(3);
307
+ i0.ɵɵpipe(4, "date");
308
+ i0.ɵɵpipe(5, "date");
309
+ i0.ɵɵelementEnd();
310
+ } if (rf & 2) {
311
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
312
+ i0.ɵɵadvance(3);
313
+ i0.ɵɵtextInterpolate2(" ", i0.ɵɵpipeBind2(4, 2, employer_r11.startDateMil, "M/d/yyyy"), " - ", i0.ɵɵpipeBind2(5, 5, employer_r11.endDateMil, "M/d/yyyy"), " ");
314
+ } }
315
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_23_Template(rf, ctx) { if (rf & 1) {
316
+ i0.ɵɵelementStart(0, "td")(1, "span", 32);
317
+ i0.ɵɵtext(2, "Separation Reason");
318
+ i0.ɵɵelementEnd();
319
+ i0.ɵɵtext(3);
320
+ i0.ɵɵelementEnd();
321
+ } if (rf & 2) {
322
+ const employer_r11 = i0.ɵɵnextContext(2).$implicit;
323
+ i0.ɵɵadvance(3);
324
+ i0.ɵɵtextInterpolate1("", employer_r11.reasonSeparation.text, " ");
325
+ } }
326
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_24_Template(rf, ctx) { if (rf & 1) {
327
+ i0.ɵɵelementStart(0, "td")(1, "span", 32);
328
+ i0.ɵɵtext(2, "Separation Reason");
329
+ i0.ɵɵelementEnd()();
330
+ } }
331
+ function EmployerGridComponent_p_table_30_ng_template_3_tr_0_Template(rf, ctx) { if (rf & 1) {
332
+ i0.ɵɵelementStart(0, "tr", 19);
333
+ i0.ɵɵtemplate(1, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_1_Template, 6, 4, "td", 20)(2, EmployerGridComponent_p_table_30_ng_template_3_tr_0_ng_template_2_Template, 1, 2, "ng-template", null, 21, i0.ɵɵtemplateRefExtractor)(4, EmployerGridComponent_p_table_30_ng_template_3_tr_0_ng_template_4_Template, 1, 1, "ng-template", null, 22, i0.ɵɵtemplateRefExtractor)(6, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_6_Template, 4, 2, "td", 23)(7, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_7_Template, 6, 3, "td", 23);
334
+ i0.ɵɵelementStart(8, "td", 24);
335
+ i0.ɵɵtemplate(9, EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_9_Template, 2, 3, "ion-button", 25)(10, EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_10_Template, 2, 3, "ion-button", 26)(11, EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_11_Template, 2, 5, "ion-button", 27)(12, EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_12_Template, 2, 3, "ion-button", 28)(13, EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_13_Template, 2, 3, "ion-button", 28)(14, EmployerGridComponent_p_table_30_ng_template_3_tr_0_ion_button_14_Template, 2, 2, "ion-button", 29);
336
+ i0.ɵɵelementEnd();
337
+ i0.ɵɵtemplate(15, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_15_Template, 4, 1, "td", 30)(16, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_16_Template, 4, 1, "td", 30)(17, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_17_Template, 3, 0, "td", 30)(18, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_18_Template, 5, 4, "td", 30)(19, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_19_Template, 3, 0, "td", 30)(20, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_20_Template, 6, 8, "td", 30)(21, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_21_Template, 6, 8, "td", 30)(22, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_22_Template, 6, 8, "td", 30)(23, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_23_Template, 4, 1, "td", 30)(24, EmployerGridComponent_p_table_30_ng_template_3_tr_0_td_24_Template, 3, 0, "td", 30);
338
+ i0.ɵɵelement(25, "td", 31);
339
+ i0.ɵɵelementEnd();
340
+ } if (rf & 2) {
341
+ const _r16 = i0.ɵɵreference(3);
342
+ const employer_r11 = i0.ɵɵnextContext().$implicit;
343
+ i0.ɵɵproperty("ngClass", employer_r11.empDeleted == "Y" ? "strikethrough" : null);
344
+ i0.ɵɵadvance(1);
345
+ i0.ɵɵproperty("ngIf", employer_r11.osaBpEmployerFlag === "1" && employer_r11.employerType === "REG" && employer_r11.employerData.displayState != null)("ngIfElse", _r16);
346
+ i0.ɵɵadvance(5);
347
+ i0.ɵɵproperty("ngIf", !employer_r11.employerData.displayName && employer_r11.employerType != "MIL");
348
+ i0.ɵɵadvance(1);
349
+ i0.ɵɵproperty("ngIf", employer_r11.employerType === "MIL");
350
+ i0.ɵɵadvance(2);
351
+ i0.ɵɵproperty("ngIf", employer_r11.bpEmployerFlag === "1" && employer_r11.payRate && employer_r11.startDate && employer_r11.empDeleted != "Y");
352
+ i0.ɵɵadvance(1);
353
+ i0.ɵɵproperty("ngIf", employer_r11.bpEmployerFlag === "0");
354
+ i0.ɵɵadvance(1);
355
+ i0.ɵɵproperty("ngIf", employer_r11.bpEmployerFlag === "1" && !employer_r11.payRate && !employer_r11.startDate && employer_r11.empDeleted != "Y");
356
+ i0.ɵɵadvance(1);
357
+ i0.ɵɵproperty("ngIf", employer_r11.bpEmployerFlag === "0");
358
+ i0.ɵɵadvance(1);
359
+ i0.ɵɵproperty("ngIf", employer_r11.bpEmployerFlag === "1" && employer_r11.empDeleted != "Y");
360
+ i0.ɵɵadvance(1);
361
+ i0.ɵɵproperty("ngIf", employer_r11.bpEmployerFlag === "1" && employer_r11.empDeleted == "Y");
362
+ i0.ɵɵadvance(1);
363
+ i0.ɵɵproperty("ngIf", employer_r11.jobTileOrPosition && !employer_r11.fedJobTileOrPosition);
364
+ i0.ɵɵadvance(1);
365
+ i0.ɵɵproperty("ngIf", employer_r11.fedJobTileOrPosition && !employer_r11.jobTileOrPosition);
366
+ i0.ɵɵadvance(1);
367
+ i0.ɵɵproperty("ngIf", employer_r11.employerType == "MIL");
368
+ i0.ɵɵadvance(1);
369
+ i0.ɵɵproperty("ngIf", employer_r11.employerType != "MIL" && employer_r11.payRate && employer_r11.payRateFrequency);
370
+ i0.ɵɵadvance(1);
371
+ i0.ɵɵproperty("ngIf", employer_r11.employerType == "MIL");
372
+ i0.ɵɵadvance(1);
373
+ i0.ɵɵproperty("ngIf", employer_r11.employerType === "REG" && employer_r11.startDate && employer_r11.endDate);
374
+ i0.ɵɵadvance(1);
375
+ i0.ɵɵproperty("ngIf", employer_r11.employerType === "FED" && employer_r11.startDateFed && employer_r11.endDateFed);
376
+ i0.ɵɵadvance(1);
377
+ i0.ɵɵproperty("ngIf", employer_r11.employerType === "MIL" && employer_r11.startDateMil && employer_r11.endDateMil);
378
+ i0.ɵɵadvance(1);
379
+ i0.ɵɵproperty("ngIf", employer_r11.employerType != "MIL" && employer_r11.reasonSeparation);
380
+ i0.ɵɵadvance(1);
381
+ i0.ɵɵproperty("ngIf", employer_r11.employerType === "MIL");
382
+ } }
383
+ function EmployerGridComponent_p_table_30_ng_template_3_Template(rf, ctx) { if (rf & 1) {
384
+ i0.ɵɵtemplate(0, EmployerGridComponent_p_table_30_ng_template_3_tr_0_Template, 26, 21, "tr", 18);
385
+ } if (rf & 2) {
386
+ const employer_r11 = ctx.$implicit;
387
+ i0.ɵɵproperty("ngIf", employer_r11.displaySeasonalEmp === true);
388
+ } }
389
+ const _c5 = () => ["fal", "plus"];
390
+ function EmployerGridComponent_p_table_30_ng_template_4_Template(rf, ctx) { if (rf & 1) {
391
+ const _r79 = i0.ɵɵgetCurrentView();
392
+ i0.ɵɵelementStart(0, "table")(1, "tr")(2, "td", 41);
393
+ i0.ɵɵelement(3, "div", 3);
394
+ i0.ɵɵpipe(4, "trustHtml");
395
+ i0.ɵɵpipe(5, "translate");
396
+ i0.ɵɵelementEnd();
397
+ i0.ɵɵelementStart(6, "td", 42)(7, "ion-button", 43);
398
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_table_30_ng_template_4_Template_ion_button_click_7_listener() { i0.ɵɵrestoreView(_r79); const ctx_r78 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r78.addNewEmpDetails()); });
399
+ i0.ɵɵelement(8, "fa-icon", 36);
400
+ i0.ɵɵelementEnd()();
401
+ i0.ɵɵelementStart(9, "td", 31);
402
+ i0.ɵɵtext(10, "\u00A0");
403
+ i0.ɵɵelementEnd()()();
404
+ } if (rf & 2) {
405
+ i0.ɵɵadvance(2);
406
+ i0.ɵɵattribute("colspan", 2);
407
+ i0.ɵɵadvance(1);
408
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(4, 4, i0.ɵɵpipeBind1(5, 6, "induction.employment.footer.label")), i0.ɵɵsanitizeHtml);
409
+ i0.ɵɵadvance(4);
410
+ i0.ɵɵproperty("id", "btnAddEmployer");
411
+ i0.ɵɵadvance(1);
412
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(8, _c5));
413
+ } }
414
+ function EmployerGridComponent_p_table_30_Template(rf, ctx) { if (rf & 1) {
415
+ i0.ɵɵelementStart(0, "p-table", 12, 13);
416
+ i0.ɵɵtemplate(2, EmployerGridComponent_p_table_30_ng_template_2_Template, 17, 15, "ng-template", 14)(3, EmployerGridComponent_p_table_30_ng_template_3_Template, 1, 1, "ng-template", 15)(4, EmployerGridComponent_p_table_30_ng_template_4_Template, 11, 9, "ng-template", 16);
417
+ i0.ɵɵelementEnd();
418
+ } if (rf & 2) {
419
+ const ctx_r3 = i0.ɵɵnextContext();
420
+ i0.ɵɵproperty("columns", ctx_r3.cols)("value", ctx_r3.claimAppEmpResponseModelFromService.bpEmpList)("loading", ctx_r3.showProgressBar)("rowHover", true);
421
+ } }
422
+ function EmployerGridComponent_app_add_employer_31_Template(rf, ctx) { if (rf & 1) {
423
+ const _r81 = i0.ɵɵgetCurrentView();
424
+ i0.ɵɵelementStart(0, "app-add-employer", 44);
425
+ i0.ɵɵlistener("success", function EmployerGridComponent_app_add_employer_31_Template_app_add_employer_success_0_listener($event) { i0.ɵɵrestoreView(_r81); const ctx_r80 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r80.addEmployer($event)); })("basePeriodIndex", function EmployerGridComponent_app_add_employer_31_Template_app_add_employer_basePeriodIndex_0_listener($event) { i0.ɵɵrestoreView(_r81); const ctx_r82 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r82.deleteBpEmpl($event)); })("modelCancel", function EmployerGridComponent_app_add_employer_31_Template_app_add_employer_modelCancel_0_listener($event) { i0.ɵɵrestoreView(_r81); const ctx_r83 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r83.onModelCancel($event)); });
426
+ i0.ɵɵelementEnd();
427
+ } if (rf & 2) {
428
+ const ctx_r4 = i0.ɵɵnextContext();
429
+ i0.ɵɵproperty("recordIndexToEdit", ctx_r4.indexToEdit)("isBasePeriodEmployer", ctx_r4.isBasePeriodEmployer)("isNewClaim", ctx_r4.isNewClaim)("dob", ctx_r4.claimantDob);
430
+ } }
431
+ function EmployerGridComponent_p_dialog_32_div_6_Template(rf, ctx) { if (rf & 1) {
432
+ i0.ɵɵelementStart(0, "div");
433
+ i0.ɵɵtext(1);
434
+ i0.ɵɵpipe(2, "translate");
435
+ i0.ɵɵelementEnd();
436
+ } if (rf & 2) {
437
+ const ctx_r84 = i0.ɵɵnextContext(2);
438
+ i0.ɵɵadvance(1);
439
+ i0.ɵɵtextInterpolate2(" ", i0.ɵɵpipeBind1(2, 2, "induction.confirm.employment.dba"), " ", ctx_r84.selectedEmployer.employerData.tradeName, "");
440
+ } }
441
+ function EmployerGridComponent_p_dialog_32_ng_template_20_Template(rf, ctx) { if (rf & 1) {
442
+ const _r87 = i0.ɵɵgetCurrentView();
443
+ i0.ɵɵelementStart(0, "ion-button", 49);
444
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_dialog_32_ng_template_20_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r87); const ctx_r86 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r86.close()); });
445
+ i0.ɵɵtext(1);
446
+ i0.ɵɵpipe(2, "translate");
447
+ i0.ɵɵelementEnd();
448
+ i0.ɵɵelementStart(3, "ion-button", 50);
449
+ i0.ɵɵlistener("click", function EmployerGridComponent_p_dialog_32_ng_template_20_Template_ion_button_click_3_listener() { i0.ɵɵrestoreView(_r87); const ctx_r88 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r88.removeBasePeriodEmployer()); });
450
+ i0.ɵɵtext(4);
451
+ i0.ɵɵpipe(5, "translate");
452
+ i0.ɵɵelementEnd();
453
+ } if (rf & 2) {
454
+ i0.ɵɵadvance(1);
455
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, "induction.employment.grid.popup.cancel"), " ");
456
+ i0.ɵɵadvance(3);
457
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 4, "induction.employment.grid.popup.remove"), " ");
458
+ } }
459
+ const _c6 = () => ({ width: "45vw" });
460
+ const _c7 = () => ({ "1200px": "660px", "992px": "660px", "768px": "660px", "576px": "100vw" });
461
+ const _c8 = a0 => [a0];
462
+ function EmployerGridComponent_p_dialog_32_Template(rf, ctx) { if (rf & 1) {
463
+ i0.ɵɵelementStart(0, "p-dialog", 45)(1, "h4", 46);
464
+ i0.ɵɵtext(2);
465
+ i0.ɵɵpipe(3, "translate");
466
+ i0.ɵɵelementEnd();
467
+ i0.ɵɵelementStart(4, "ion-label");
468
+ i0.ɵɵtext(5);
469
+ i0.ɵɵtemplate(6, EmployerGridComponent_p_dialog_32_div_6_Template, 3, 4, "div", 30);
470
+ i0.ɵɵelement(7, "br");
471
+ i0.ɵɵelementEnd();
472
+ i0.ɵɵelementStart(8, "ion-label");
473
+ i0.ɵɵelement(9, "div", 47);
474
+ i0.ɵɵpipe(10, "trustHtml");
475
+ i0.ɵɵelementEnd();
476
+ i0.ɵɵelement(11, "br");
477
+ i0.ɵɵelementStart(12, "ion-label");
478
+ i0.ɵɵtext(13);
479
+ i0.ɵɵpipe(14, "translate");
480
+ i0.ɵɵelementEnd();
481
+ i0.ɵɵelement(15, "br")(16, "br");
482
+ i0.ɵɵelementStart(17, "ion-label");
483
+ i0.ɵɵelement(18, "div", 3);
484
+ i0.ɵɵpipe(19, "translate");
485
+ i0.ɵɵelementEnd();
486
+ i0.ɵɵtemplate(20, EmployerGridComponent_p_dialog_32_ng_template_20_Template, 6, 6, "ng-template", 48);
487
+ i0.ɵɵelementEnd();
488
+ } if (rf & 2) {
489
+ const ctx_r5 = i0.ɵɵnextContext();
490
+ i0.ɵɵstyleMap(i0.ɵɵpureFunction0(22, _c6));
491
+ i0.ɵɵproperty("visible", ctx_r5.showConfirmPopup)("modal", true)("breakpoints", i0.ɵɵpureFunction0(23, _c7))("baseZIndex", 5000)("draggable", false)("resizable", false);
492
+ i0.ɵɵadvance(2);
493
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 14, "induction.employment.grid.popup.heading"));
494
+ i0.ɵɵadvance(3);
495
+ i0.ɵɵtextInterpolate1(" ", ctx_r5.selectedEmployer.employerData.displayName, " ");
496
+ i0.ɵɵadvance(1);
497
+ i0.ɵɵproperty("ngIf", ctx_r5.selectedEmployer.employerData.tradeName != null);
498
+ i0.ɵɵadvance(3);
499
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(10, 16, ctx_r5.selectedEmployer.employerData.mailingAddressDisplay), i0.ɵɵsanitizeHtml);
500
+ i0.ɵɵadvance(4);
501
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(14, 18, "induction.employment.grid.popup.failure.label"), " ");
502
+ i0.ɵɵadvance(5);
503
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpureFunction1(24, _c8, i0.ɵɵpipeBind1(19, 20, "induction.employment.grid.popup.didnt.work.label")), i0.ɵɵsanitizeHtml);
504
+ } }
505
+ export class EmployerGridComponent {
506
+ constructor(popup, logger, validationService, navController, util, ls, activatedRoute, claimsService, storage) {
507
+ this.popup = popup;
508
+ this.logger = logger;
509
+ this.validationService = validationService;
510
+ this.navController = navController;
511
+ this.util = util;
512
+ this.ls = ls;
513
+ this.activatedRoute = activatedRoute;
514
+ this.claimsService = claimsService;
515
+ this.storage = storage;
516
+ this.claimAppEmpResponseModelFromService = new ClaimAppEmpResponseModel();
517
+ this.modelDisplay = new EventEmitter();
518
+ this.onComplete = new EventEmitter();
519
+ this.claimdetailModel = new ClaimAppEmployerDetailsModel();
520
+ this.caimAppEmpResponseModel = new ClaimAppEmpResponseModel();
521
+ this.isBasePeriodEmployer = false;
522
+ this.isNewClaim = false;
523
+ this.showConfirmPopup = false;
524
+ this.showProgressBar = false;
525
+ this.uuid = null;
526
+ this.dischargeReasonOptionsAll = [];
527
+ this.volQuitReasonOptionsAll = [];
528
+ this.employmentStatusOptionsAll = [];
529
+ this.payRateOptions = ComboOption.PAY_PERIOD;
530
+ this.countryOptions = ComboOption.COUNTRY;
531
+ this.workCountryOptions = ComboOption.WORK_COUNTRY;
532
+ this.statesOptions = ComboOption.US_STATES;
533
+ this.militaryServiceOptions = ComboOption.MILITARY_SERVICE;
534
+ this.count = 0;
535
+ this.onChange = (value) => {
536
+ };
537
+ this.onTouch = () => {
538
+ };
539
+ }
540
+ loadMasterData() {
541
+ this.claimsService.loadMasterData();
542
+ this.claimsService.getReasonSeparation().subscribe(value => {
543
+ value.forEach(arr => this.employmentStatusOptionsAll.push(arr));
544
+ });
545
+ this.claimsService.getDischargeReasons().subscribe(value => {
546
+ value.forEach(arr => this.dischargeReasonOptionsAll.push(arr));
547
+ });
548
+ this.claimsService.getQuitReasons().subscribe(value => {
549
+ value.forEach(arr => this.volQuitReasonOptionsAll.push(arr));
550
+ });
551
+ }
552
+ ngOnInit() {
553
+ this.logger.debug('ng onit of employer grid');
554
+ this.loadMasterData();
555
+ this.cols = [
556
+ { field: 'employer', header: 'Employer' },
557
+ { field: 'jobTitle', header: 'Job Title' },
558
+ { field: 'Pay', header: 'Pay' },
559
+ { field: 'startEndDate', header: 'Start and End' },
560
+ { field: 'separationReason', header: 'Separation Reason' },
561
+ { field: '', header: '' }
562
+ ];
563
+ if (this.validationService.bpEmpLstFrmService) {
564
+ this.validationService.bpEmpLstFrmService.subscribe(res => {
565
+ if (res) {
566
+ this.claimAppEmpResponseModelFromService = res.valueOf();
567
+ if (this.claimAppEmpResponseModelFromService && this.claimAppEmpResponseModelFromService.isNewClaimApplication) {
568
+ this.isNewClaim = this.claimAppEmpResponseModelFromService.isNewClaimApplication.valueOf();
569
+ this.claimantDob = new Date(this.claimAppEmpResponseModelFromService.dateOfBirth.replace("-", "/").replace("-", "/"));
570
+ }
571
+ }
572
+ });
573
+ }
574
+ }
575
+ async addNewEmpDetails() {
576
+ this.display = true;
577
+ this.isBasePeriodEmployer = false;
578
+ this.modelDisplay.emit(true);
579
+ }
580
+ writeValue(value) {
581
+ if (value) {
582
+ this.validationService.bpEmpLstFrmService.next(value);
583
+ }
584
+ else if (this.validationService.bpEmpLstFrmService.getValue()) {
585
+ this.validationService.bpEmpLstFrmService.next(this.validationService.bpEmpLstFrmService.getValue());
586
+ this.onChange(this.validationService.bpEmpLstFrmService.getValue());
587
+ }
588
+ else {
589
+ this.setupEmployer();
590
+ }
591
+ }
592
+ registerOnChange(fn) {
593
+ this.onChange = fn;
594
+ this.validationService.bpEmpLstFrmService.subscribe(fn);
595
+ }
596
+ registerOnTouched(fn) {
597
+ this.onTouch = fn;
598
+ }
599
+ async getIdentifier() {
600
+ let uuid;
601
+ let data = this.activatedRoute.snapshot.queryParamMap.get('identifier');
602
+ this.logger.debug("data for identifier is : ", data);
603
+ if (data) {
604
+ uuid = data;
605
+ }
606
+ else {
607
+ uuid = await this.storage.get(FbConstants.uuid);
608
+ }
609
+ return uuid;
610
+ }
611
+ async setupEmployer() {
612
+ let model = new ClaimAppEmpRequestModel();
613
+ if (!this.validationService.bpEmpLstFrmService.getValue()) {
614
+ this.uuid = await this.getIdentifier();
615
+ this.logger.debug('uuid is ====', this.uuid);
616
+ let url = "";
617
+ if (this.ls.isClaimant() === true) {
618
+ url = "/claims-service/claim/claimant/app/bpemployers";
619
+ let processtype = this.activatedRoute.snapshot.queryParamMap.get('processtype');
620
+ if (processtype === 'aic-reopen') {
621
+ this.storage.remove(FbConstants.uuid);
622
+ //this.logger.debug('objData ====', objData);
623
+ model.flowFrom = "Aic-Reopen-flow";
624
+ }
625
+ }
626
+ else {
627
+ url = "/claims-service/claim/app/bpemployers";
628
+ let processtype = this.activatedRoute.snapshot.queryParamMap.get('processtype');
629
+ if (processtype === 'aic-reopen') {
630
+ model.flowFrom = "Aic-Reopen-flow";
631
+ }
632
+ }
633
+ this.logger.debug('the uuid used in model is : ', this.uuid);
634
+ if (model.flowFrom === 'Aic-Reopen-flow') {
635
+ this.logger.debug("Inside aic reopen flow");
636
+ this.fetchEmployersFromBackEnd(model, url);
637
+ }
638
+ else if (this.uuid) {
639
+ this.logger.debug("Inside getting values based on uuid");
640
+ model.uuid = this.uuid;
641
+ this.fetchEmployersFromBackEnd(model, url);
642
+ }
643
+ else {
644
+ this.logger.debug("Keep waiting....uuid not found..");
645
+ }
646
+ }
647
+ }
648
+ fetchEmployersFromBackEnd(model, url) {
649
+ this.showProgressBar = true;
650
+ this.validationService.post(url, model).subscribe(res => {
651
+ if (res.bpEmpList.length > 0) {
652
+ res.bpEmpList.forEach(emp => this.setChoiseModels(emp));
653
+ }
654
+ this.validationService.bpEmpLstFrmService.next(res);
655
+ this.onComplete.emit(this.validationService.bpEmpLstFrmService.getValue());
656
+ this.onChange(this.validationService.bpEmpLstFrmService.getValue());
657
+ this.logger.debug('employer List from Service', this.validationService.bpEmpLstFrmService.getValue());
658
+ this.showProgressBar = false;
659
+ }, err => {
660
+ let list = new ClaimAppEmpResponseModel();
661
+ this.validationService.bpEmpLstFrmService.next(list);
662
+ this.showProgressBar = false;
663
+ });
664
+ }
665
+ deleteBpEmpl(event) {
666
+ this.logger.debug('Delete method called ', event);
667
+ this.claimAppEmpResponseModelFromService.bpEmpList.splice(event, 1);
668
+ }
669
+ deleteEmployer(elementIndex) {
670
+ this.logger.debug('Delete method called for = ', elementIndex);
671
+ this.isBasePeriodEmployer = false;
672
+ //this.claimAppEmpResponseModelFromService.bpEmpList[elementIndex].empDeleted = "Y";
673
+ this.claimAppEmpResponseModelFromService.bpEmpList.splice(elementIndex, 1);
674
+ this.logger.debug('After delete list is = ', this.claimAppEmpResponseModelFromService);
675
+ }
676
+ deleteEmployerBasePeriod(elementIndex) {
677
+ this.logger.debug('Delete method base period employer called for = ', elementIndex);
678
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[elementIndex].workFlag = "N";
679
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[elementIndex].empDeleted = "Y";
680
+ this.logger.debug('After delete base period employer list is = ', this.claimAppEmpResponseModelFromService);
681
+ }
682
+ editEmployer(employer) {
683
+ this.logger.debug('Edit method called', employer);
684
+ this.indexToEdit = this.claimAppEmpResponseModelFromService.bpEmpList.indexOf(employer);
685
+ this.logger.debug('Index To Edit = ', this.indexToEdit);
686
+ this.display = true;
687
+ }
688
+ finish(employer) {
689
+ this.logger.debug('Finish Employer called', employer);
690
+ this.indexToEdit = this.claimAppEmpResponseModelFromService.bpEmpList.indexOf(employer);
691
+ employer.workFlag = 'Y';
692
+ this.isBasePeriodEmployer = true;
693
+ this.display = true;
694
+ this.modelDisplay.emit(true);
695
+ }
696
+ editBasePeriodEmployer(employer) {
697
+ this.logger.debug('Edit BasePeriod Employer called for ', employer);
698
+ this.indexToEdit = this.claimAppEmpResponseModelFromService.bpEmpList.indexOf(employer);
699
+ this.display = true;
700
+ this.isBasePeriodEmployer = true;
701
+ this.logger.debug('Index To Edit = ', this.indexToEdit);
702
+ }
703
+ onModelCancel(cancel) {
704
+ this.logger.debug('Cancel Method ', cancel);
705
+ this.display = cancel;
706
+ this.basePerioddisplay = cancel;
707
+ this.indexToEdit = null;
708
+ this.isBasePeriodEmployer = false;
709
+ this.logger.debug('after value change on employer grid ', this.display);
710
+ }
711
+ addEmployer(event) {
712
+ this.logger.debug('Add Employer called from grid ', event, 'indexToEdit', this.indexToEdit, 'this.isBasePeriodEmployer', this.isBasePeriodEmployer);
713
+ event.empDeleted = 'N';
714
+ if (this.indexToEdit || this.indexToEdit == 0) {
715
+ this.logger.debug('Inside if of add employer -- ', event);
716
+ let empDataModel = new ClaimOnlyEmployerDataModel();
717
+ let empProvidedWageModel = new EmployerWagesModel();
718
+ if (this.isBasePeriodEmployer) {
719
+ this.claimdetailModel = new ClaimAppEmployerDetailsModel();
720
+ this.claimdetailModel = event;
721
+ empDataModel = this.validationService.bpEmpLstFrmService.getValue().bpEmpList[this.indexToEdit].employerData;
722
+ empProvidedWageModel = this.validationService.bpEmpLstFrmService.getValue().bpEmpList[this.indexToEdit].employerProvidedWages;
723
+ event.bpEmployerFlag = '1';
724
+ event.employerData = empDataModel;
725
+ event.employerProvidedWages = empProvidedWageModel;
726
+ this.logger.debug('resetting the value again = ', event);
727
+ }
728
+ else {
729
+ this.claimdetailModel = new ClaimAppEmployerDetailsModel();
730
+ this.claimdetailModel = event;
731
+ empDataModel = new ClaimOnlyEmployerDataModel();
732
+ if (event.employerType === 'REG') {
733
+ empDataModel.displayName = event.employerName;
734
+ empDataModel.mailingAddressDisplay =
735
+ event.address['streetAddress'] + ' ' + event.address['city'] + '-' + (event.address['state'] ? event.address['state'].text : '') + '-' + (event.address['country'] ? event.address['country'].value : '');
736
+ }
737
+ else if (event.employerType === 'FED') {
738
+ empDataModel.displayName = event.fedEmployerName;
739
+ empDataModel.mailingAddressDisplay =
740
+ event.address['streetAddress'] + ' ' + event.address['city'] + '-' + (event.address['state'] ? event.address['state'].text : '') + '-' + (event.address['country'] ? event.address['country'].value : '');
741
+ }
742
+ else {
743
+ this.logger.debug("no address for this employer type");
744
+ }
745
+ empDataModel.employerType = event.employerType;
746
+ event.employerData = empDataModel;
747
+ empDataModel.employerId = event.employerId;
748
+ empDataModel.mailAddressLine1 = event.address?.streetAddress;
749
+ empDataModel.mailAddressLine2 = event.address?.optionalAddress;
750
+ event.bpEmployerFlag = '0';
751
+ }
752
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[this.indexToEdit] = event;
753
+ }
754
+ else {
755
+ this.logger.debug('Inside else of add employer -- ', event);
756
+ this.claimdetailModel = new ClaimAppEmployerDetailsModel();
757
+ let empDataModel = new ClaimOnlyEmployerDataModel();
758
+ this.claimdetailModel = event;
759
+ empDataModel = new ClaimOnlyEmployerDataModel();
760
+ if (event.employerType === 'REG') {
761
+ empDataModel.displayName = event.employerName;
762
+ empDataModel.mailingAddressDisplay =
763
+ event.address['streetAddress'] + ' ' + event.address['city'] + '-' + (event.address['state'] ? event.address['state'].text : '') + '-' + (event.address['country'] ? event.address['country'].value : '');
764
+ }
765
+ else if (event.employerType === 'FED') {
766
+ empDataModel.displayName = event.fedEmployerName;
767
+ empDataModel.mailingAddressDisplay =
768
+ event.address['streetAddress'] + ' ' + event.address['city'] + '-' + (event.address['state'] ? event.address['state'].text : '') + '-' + (event.address['country'] ? event.address['country'].value : '');
769
+ }
770
+ else {
771
+ this.logger.debug("Inside else - no address for this employer type");
772
+ }
773
+ empDataModel.employerType = event.employerType;
774
+ empDataModel.employerId = event.employerId;
775
+ empDataModel.mailAddressLine1 = event.address?.streetAddress;
776
+ empDataModel.mailAddressLine2 = event.address?.optionalAddress;
777
+ if (this.isBasePeriodEmployer) {
778
+ this.claimdetailModel.bpEmployerFlag = '1';
779
+ }
780
+ else {
781
+ this.claimdetailModel.bpEmployerFlag = '0';
782
+ }
783
+ this.claimdetailModel.employerData = empDataModel;
784
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList.push(this.claimdetailModel);
785
+ }
786
+ this.display = false;
787
+ this.indexToEdit = null;
788
+ }
789
+ removeEmployment(selectedEmployer, index) {
790
+ this.indexToEdit = index;
791
+ this.selectedEmployer = selectedEmployer;
792
+ this.showConfirmPopup = true;
793
+ }
794
+ removeBasePeriodEmployer() {
795
+ this.deleteEmployerBasePeriod(this.indexToEdit);
796
+ this.showConfirmPopup = false;
797
+ this.selectedEmployer = null;
798
+ this.indexToEdit = null;
799
+ }
800
+ restoreEmployment(selectedEmployer, index) {
801
+ this.logger.debug('Delete method base period employer called for = ', index);
802
+ let currentWorkFlagValue = this.validationService.bpEmpLstFrmService.getValue().bpEmpList[index].workFlag;
803
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[index].workFlag = currentWorkFlagValue ? (currentWorkFlagValue == "N" ? "Y" : "N") : null;
804
+ this.validationService.bpEmpLstFrmService.getValue().bpEmpList[index].empDeleted = "N";
805
+ this.logger.debug('After delete base period employer list is = ', this.claimAppEmpResponseModelFromService);
806
+ }
807
+ close() {
808
+ this.indexToEdit = null;
809
+ this.showConfirmPopup = false;
810
+ this.selectedEmployer = null;
811
+ }
812
+ setChoiseModels(emp) {
813
+ let sepReason = this.employmentStatusOptionsAll.filter(s => s.value == emp.reasonSeparation?.value);
814
+ if (sepReason.length > 0) {
815
+ emp.reasonSeparation = sepReason[0];
816
+ }
817
+ let dischargeReason = this.dischargeReasonOptionsAll.filter(s => s.value == emp.dischargeDetail?.value);
818
+ if (dischargeReason.length > 0) {
819
+ emp.dischargeDetail = dischargeReason[0];
820
+ }
821
+ let volQuit = this.volQuitReasonOptionsAll.filter(s => s.value == emp.volQuitDetails?.value);
822
+ if (volQuit.length > 0) {
823
+ emp.volQuitDetails = volQuit[0];
824
+ }
825
+ let payRateFrequency = this.payRateOptions.filter(s => s.value == emp.payRateFrequency?.value);
826
+ if (payRateFrequency.length > 0) {
827
+ emp.payRateFrequency = payRateFrequency[0];
828
+ }
829
+ let country = this.workCountryOptions.filter(s => s.value == emp.fedWorkCountry?.value);
830
+ if (country.length > 0) {
831
+ emp.fedWorkCountry = country[0];
832
+ }
833
+ let state = this.statesOptions.filter(s => s.value == emp.fedWorkState?.value);
834
+ if (state.length > 0) {
835
+ emp.fedWorkState = state[0];
836
+ }
837
+ let serviceBranch = this.militaryServiceOptions.filter(s => s.value == emp.serviceBranch?.value);
838
+ if (serviceBranch.length > 0) {
839
+ emp.serviceBranch = serviceBranch[0];
840
+ }
841
+ let workState = this.statesOptions.filter(s => s.value == emp.workState?.value?.trim());
842
+ emp.workState = workState[0];
843
+ }
844
+ submit() {
845
+ this.claimAppEmpResponseModelFromService.bpEmpList.forEach(e => {
846
+ if (!e.isEmployerEdited) {
847
+ e.isEmployerGridSubmitted = true;
848
+ this.count = this.count + 1;
849
+ if (this.count <= this.claimAppEmpResponseModelFromService.bpEmpList.length) {
850
+ const ctrl = this.form?.get('prevwork');
851
+ if (!ctrl)
852
+ return;
853
+ const hasError = !!ctrl.errors?.bpEmplrFlag && (ctrl.touched || ctrl.dirty);
854
+ if (hasError) {
855
+ setTimeout(() => {
856
+ this.gridTop?.nativeElement?.scrollIntoView({
857
+ behavior: 'smooth',
858
+ block: 'center',
859
+ });
860
+ }, 100);
861
+ }
862
+ }
863
+ }
864
+ });
865
+ }
866
+ 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)); }; }
867
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EmployerGridComponent, selectors: [["app-employer-grid"]], viewQuery: function EmployerGridComponent_Query(rf, ctx) { if (rf & 1) {
868
+ i0.ɵɵviewQuery(_c0, 5);
869
+ } if (rf & 2) {
870
+ let _t;
871
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.gridTop = _t.first);
872
+ } }, inputs: { form: "form", dynamicParam: "dynamicParam" }, outputs: { modelDisplay: "modelDisplay", onComplete: "onComplete" }, features: [i0.ɵɵProvidersFeature([{
873
+ provide: NG_VALUE_ACCESSOR,
874
+ useExisting: EmployerGridComponent,
875
+ multi: true
876
+ }])], decls: 33, vars: 39, consts: [[2, "margin-left", "-5px", 3, "formGroup"], ["gridTop", ""], [3, "icon"], [3, "innerHtml"], [1, "mobile-action-view"], [1, "action-icon", "font-bold", 3, "icon"], ["style", "display: inline-block;", 4, "ngIf"], ["class", "mobile-action-view", 4, "ngIf"], ["styleClass", "p-datatable-striped app-datatable ion-padding-top", 3, "columns", "value", "loading", "rowHover", 4, "ngIf"], [3, "recordIndexToEdit", "isBasePeriodEmployer", "isNewClaim", "dob", "success", "basePeriodIndex", "modelCancel", 4, "ngIf"], ["appendTo", "body", "position", "top", "appendTo", "body", "closeOnEscape", "false", 3, "visible", "modal", "breakpoints", "style", "baseZIndex", "draggable", "resizable", 4, "ngIf"], [2, "display", "inline-block"], ["styleClass", "p-datatable-striped app-datatable ion-padding-top", 3, "columns", "value", "loading", "rowHover"], ["dt", ""], ["pTemplate", "header"], ["pTemplate", "body"], ["pTemplate", "summary"], ["colspan", "2", 1, "dataHeadings", 2, "width", "20%"], ["class", "ui-selectable-row", 3, "ngClass", 4, "ngIf"], [1, "ui-selectable-row", 3, "ngClass"], ["colspan", "2", "class", "dataHeadings", "style", "width:20%;", 3, "Color", 4, "ngIf", "ngIfElse"], ["workState", ""], ["notOsaBpAndRegEmployer", ""], ["colspan", "2", "class", "dataHeadings", "style", "width:20%;", 3, "Color", 4, "ngIf"], [2, "text-align", "center"], ["size", "small", "fill", "outline", "class", "action-button", "aria-label", "Add employer", 3, "color", "click", 4, "ngIf"], ["size", "small", "fill", "outline", "class", "action-button", "aria-label", "Edit employer", 3, "color", "click", 4, "ngIf"], ["size", "small", "fill", "outline", "class", "action-button", "aria-label", "Confirm employer", 3, "id", "color", "click", 4, "ngIf"], ["size", "small", "color", "success", "fill", "outline", "class", "action-button", "aria-label", "Remove employer", "style", "padding-left: 5px;", 3, "id", "click", 4, "ngIf"], ["size", "small", "color", "success", "fill", "outline", "class", "action-button", "aria-label", "Restore", 3, "click", 4, "ngIf"], [4, "ngIf"], ["colspan", "4"], [1, "p-column-title"], [1, "displayName"], [1, "displayNameText", 2, "font-size", "12px", 3, "innerHtml"], ["size", "small", "fill", "outline", "aria-label", "Add employer", 1, "action-button", 3, "color", "click"], [1, "action-icon", 3, "icon"], ["size", "small", "fill", "outline", "aria-label", "Edit employer", 1, "action-button", 3, "color", "click"], ["size", "small", "fill", "outline", "aria-label", "Confirm employer", 1, "action-button", 3, "id", "color", "click"], ["size", "small", "color", "success", "fill", "outline", "aria-label", "Remove employer", 1, "action-button", 2, "padding-left", "5px", 3, "id", "click"], ["size", "small", "color", "success", "fill", "outline", "aria-label", "Restore", 1, "action-button", 3, "click"], [1, "action-footer", 2, "width", "40%"], [1, "add-employer"], ["fill", "outline", "size", "small", "aria-label", "Add employer", 1, "action-button", 3, "id", "click"], [3, "recordIndexToEdit", "isBasePeriodEmployer", "isNewClaim", "dob", "success", "basePeriodIndex", "modelCancel"], ["appendTo", "body", "position", "top", "appendTo", "body", "closeOnEscape", "false", 3, "visible", "modal", "breakpoints", "baseZIndex", "draggable", "resizable"], [1, "heading"], [2, "font-size", "12px", 3, "innerHtml"], ["pTemplate", "footer"], ["shape", "round", "type", "submit", "fill", "outline", 3, "click"], ["shape", "round", "type", "submit", "fill", "solid", 3, "click"]], template: function EmployerGridComponent_Template(rf, ctx) { if (rf & 1) {
877
+ i0.ɵɵelementStart(0, "div", 0, 1)(2, "ion-row")(3, "ion-col");
878
+ i0.ɵɵelement(4, "fa-icon", 2)(5, "span", 3);
879
+ i0.ɵɵpipe(6, "trustHtml");
880
+ i0.ɵɵpipe(7, "translate");
881
+ i0.ɵɵpipe(8, "trustHtml");
882
+ i0.ɵɵpipe(9, "translate");
883
+ i0.ɵɵtext(10, ",\u00A0 ");
884
+ i0.ɵɵelement(11, "br", 4)(12, "fa-icon", 5)(13, "span", 3);
885
+ i0.ɵɵpipe(14, "trustHtml");
886
+ i0.ɵɵpipe(15, "translate");
887
+ i0.ɵɵtext(16, ",\u00A0 ");
888
+ i0.ɵɵelement(17, "br", 4)(18, "fa-icon", 5)(19, "span", 3);
889
+ i0.ɵɵpipe(20, "trustHtml");
890
+ i0.ɵɵpipe(21, "translate");
891
+ i0.ɵɵtext(22, ",\u00A0 ");
892
+ i0.ɵɵelement(23, "br", 4);
893
+ i0.ɵɵtemplate(24, EmployerGridComponent_div_24_Template, 6, 7, "div", 6)(25, EmployerGridComponent_br_25_Template, 1, 0, "br", 7);
894
+ i0.ɵɵelement(26, "fa-icon", 5)(27, "span", 3);
895
+ i0.ɵɵpipe(28, "trustHtml");
896
+ i0.ɵɵpipe(29, "translate");
897
+ i0.ɵɵelementEnd()();
898
+ i0.ɵɵtemplate(30, EmployerGridComponent_p_table_30_Template, 5, 4, "p-table", 8)(31, EmployerGridComponent_app_add_employer_31_Template, 1, 4, "app-add-employer", 9)(32, EmployerGridComponent_p_dialog_32_Template, 21, 26, "p-dialog", 10);
899
+ i0.ɵɵelementEnd();
900
+ } if (rf & 2) {
901
+ i0.ɵɵproperty("formGroup", ctx.form);
902
+ i0.ɵɵadvance(4);
903
+ i0.ɵɵproperty("icon", ctx.util.isState("MS") ? i0.ɵɵpureFunction0(34, _c1) : i0.ɵɵpureFunction0(35, _c2));
904
+ i0.ɵɵadvance(1);
905
+ i0.ɵɵproperty("innerHtml", ctx.util.isState("MS") ? i0.ɵɵpipeBind1(6, 14, i0.ɵɵpipeBind1(7, 16, "induction.employment.subheader.confirm.ms")) : i0.ɵɵpipeBind1(8, 18, i0.ɵɵpipeBind1(9, 20, "induction.employment.subheader.confirm")), i0.ɵɵsanitizeHtml);
906
+ i0.ɵɵadvance(7);
907
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(36, _c3));
908
+ i0.ɵɵadvance(1);
909
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(14, 22, i0.ɵɵpipeBind1(15, 24, "induction.employment.subheader.delete")), i0.ɵɵsanitizeHtml);
910
+ i0.ɵɵadvance(5);
911
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(37, _c5));
912
+ i0.ɵɵadvance(1);
913
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(20, 26, i0.ɵɵpipeBind1(21, 28, "induction.employment.subheader.add")), i0.ɵɵsanitizeHtml);
914
+ i0.ɵɵadvance(5);
915
+ i0.ɵɵproperty("ngIf", !ctx.util.isState("MS"));
916
+ i0.ɵɵadvance(1);
917
+ i0.ɵɵproperty("ngIf", !ctx.util.isState("MS"));
918
+ i0.ɵɵadvance(1);
919
+ i0.ɵɵproperty("icon", i0.ɵɵpureFunction0(38, _c4));
920
+ i0.ɵɵadvance(1);
921
+ i0.ɵɵproperty("innerHtml", i0.ɵɵpipeBind1(28, 30, i0.ɵɵpipeBind1(29, 32, "induction.employment.subheader.restore")), i0.ɵɵsanitizeHtml);
922
+ i0.ɵɵadvance(3);
923
+ i0.ɵɵproperty("ngIf", ctx.claimAppEmpResponseModelFromService);
924
+ i0.ɵɵadvance(1);
925
+ i0.ɵɵproperty("ngIf", ctx.display);
926
+ i0.ɵɵadvance(1);
927
+ i0.ɵɵproperty("ngIf", ctx.selectedEmployer);
928
+ } }, styles: [".add-employer[_ngcontent-%COMP%]{width:9.75%;text-align:right}.mobile-action-view[_ngcontent-%COMP%]{display:none}[_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: 767px){.mobile-action-view[_ngcontent-%COMP%]{display:block}}@media screen and (max-width: 40rem){.action-footer[_ngcontent-%COMP%]{width:300px!important}ion-col[_ngcontent-%COMP%]{text-align:left!important}.dataHeadings[_ngcontent-%COMP%]{width:500px!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%!important;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)}}@media screen and (max-width: 40rem){[_nghost-%COMP%] .p-datatable.app-datatable .p-datatable-thead>tr>th, [_nghost-%COMP%] .p-datatable.app-datatable .p-datatable-tfoot>tr>td{display:none!important}[_nghost-%COMP%] .p-datatable.app-datatable .p-datatable-tbody>tr>td .p-column-title{padding:.6rem;min-width:0%!important;display:inline-block;margin:-.4em 1em -.4em -.4rem;font-weight:700}}@media (min-width: 767px) and (max-width: 1325px){.displayNameText[_ngcontent-%COMP%]{font-size:12px!important;width:max-content}}.strikethrough[_ngcontent-%COMP%]{text-decoration:line-through}"] }); }
929
+ }
930
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EmployerGridComponent, [{
931
+ type: Component,
932
+ args: [{ selector: 'app-employer-grid', providers: [{
933
+ provide: NG_VALUE_ACCESSOR,
934
+ useExisting: EmployerGridComponent,
935
+ multi: true
936
+ }], changeDetection: ChangeDetectionStrategy.Default, template: "<div [formGroup]=\"form\" style=\"margin-left: -5px;\" #gridTop>\r\n<ion-row>\r\n <ion-col> \r\n <fa-icon [icon]=\"util.isState('MS') ? ['fal', 'edit'] : ['fal', 'check-circle']\"></fa-icon>\r\n <span [innerHtml]=\"util.isState('MS') ? ('induction.employment.subheader.confirm.ms' | translate | trustHtml) : ('induction.employment.subheader.confirm' | translate | trustHtml)\"></span>,&nbsp;\r\n <br class=\"mobile-action-view\">\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 <br class=\"mobile-action-view\">\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 <br class=\"mobile-action-view\">\r\n <div *ngIf=\"!util.isState('MS')\" style=\"display: inline-block;\">\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 </div>\r\n <br *ngIf=\"!util.isState('MS')\" class=\"mobile-action-view\">\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>\r\n <tr>\r\n <th colspan=\"2\" class=\"dataHeadings\" style=\"width:20%;\" >\r\n {{\"induction.employment.table.employer.name\"|translate}}\r\n </th>\r\n <th>\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\" *ngIf=\"employer.displaySeasonalEmp === true\">\r\n \r\n <td [style.Color]=\"(!employer.isEmployerEdited && employer.isEmployerGridSubmitted) ? '#eb445a':''\"\r\n *ngIf=\"employer.osaBpEmployerFlag === '1' && employer.employerType ==='REG' && employer.employerData.displayState != null; else workState\" colspan=\"2\" class=\"dataHeadings\" style=\"width:20%;\" ><span class=\"p-column-title\">Employer</span><span class=\"displayName\">\r\n {{employer.employerData.displayName}} - {{employer.employerData.displayState.text}}<br>\r\n </span>\r\n </td>\r\n <ng-template #workState>\r\n <td [style.Color]=\"(!employer.isEmployerEdited && employer.isEmployerGridSubmitted) ? '#eb445a':''\"\r\n *ngIf=\"employer.osaBpEmployerFlag === '1' && employer.employerType ==='REG' && employer.workState != null; else notOsaBpAndRegEmployer\" colspan=\"2\" class=\"dataHeadings\" style=\"width:20%;\" ><span class=\"p-column-title\">Employer</span><span class=\"displayName\">\r\n {{employer.employerData.displayName}} - {{employer.workState.text}}<br>\r\n </span>\r\n </td>\r\n </ng-template>\r\n <ng-template #notOsaBpAndRegEmployer>\r\n <td [style.Color]=\"(!employer.isEmployerEdited && employer.isEmployerGridSubmitted) ? '#eb445a':''\"\r\n *ngIf=\"employer.employerData.displayName && employer.employerType!='MIL'\" colspan=\"2\" class=\"dataHeadings\" style=\"width:20%;\" ><span class=\"p-column-title\">Employer</span><span class=\"displayName\">\r\n {{employer.employerData.displayName}} <br>\r\n </span><div style=\"font-size: 12px;\" class=\"displayNameText\" [innerHtml]=\"employer.employerData.mailingAddressDisplay | trustHtml\">\r\n </div>\r\n </td> \r\n </ng-template>\r\n \r\n <td [style.Color]=\"(!employer.isEmployerEdited && employer.isEmployerGridSubmitted) ? '#eb445a':''\"\r\n *ngIf=\"!employer.employerData.displayName && employer.employerType!='MIL'\" colspan=\"2\" class=\"dataHeadings\" style=\"width:20%;\" ><span class=\"p-column-title\">Employer</span><span>\r\n </span>\r\n </td>\r\n\r\n <td [style.Color]=\"(!employer.isEmployerEdited && employer.isEmployerGridSubmitted) ? '#eb445a':''\"\r\n *ngIf=\"employer.employerType==='MIL'\" colspan=\"2\" class=\"dataHeadings\" style=\"width:20%;\" ><span class=\"p-column-title\">Employer</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'\" \r\n [color]=\"(!employer.isEmployerEdited && employer.isEmployerGridSubmitted) ? 'danger':'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'\" fill=\"outline\" \r\n [color]=\"(!employer.isEmployerEdited && employer.isEmployerGridSubmitted) ? 'danger':'success'\"\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 [id]=\"'btnConfirmEmployer-' + rowIndex\" size=\"small\" [color]=\"(!employer.isEmployerEdited && employer.isEmployerGridSubmitted) ? 'danger':'success'\"\r\n *ngIf=\"employer.bpEmployerFlag==='1' && !employer.payRate && !employer.startDate && employer.empDeleted!='Y'\" fill=\"outline\" \r\n (click)=\"finish(employer);\" class=\"action-button\" aria-label=\"Confirm employer\">\r\n <fa-icon [icon]=\"util.isState('MS') ? ['fal', 'edit'] : ['fal', 'check-circle']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n\r\n <ion-button [id]=\"'btnDeleteEmployer-' + rowIndex\" size=\"small\" *ngIf=\"employer.bpEmployerFlag==='0'\" color=\"success\" fill=\"outline\" \r\n (click)=\"deleteEmployer(rowIndex);\" class=\"action-button\" aria-label=\"Remove employer\" style=\"padding-left: 5px;\">\r\n <fa-icon [icon]=\"['fal', 'trash-alt']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n\r\n <ion-button [id]=\"'btnRemoveEmployer-' + rowIndex\" 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\" style=\"padding-left: 5px;\">\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\">Job Title</span>{{employer.jobTileOrPosition}}</td>\r\n\r\n <td *ngIf=\"employer.fedJobTileOrPosition && !employer.jobTileOrPosition\"><span class=\"p-column-title\">Job Title</span>{{employer.fedJobTileOrPosition}}</td>\r\n\r\n <td *ngIf=\"employer.employerType =='MIL'\"><span class=\"p-column-title\">Job Title</span></td>\r\n\r\n \r\n <td *ngIf=\"employer.employerType !='MIL' && employer.payRate && employer.payRateFrequency\"><span class=\"p-column-title\">Pay</span>{{employer.payRate | currency}}/{{employer.payRateFrequency.text}}</td>\r\n <td *ngIf=\"employer.employerType =='MIL'\"><span class=\"p-column-title\">Pay</span></td>\r\n\r\n \r\n <td *ngIf=\"employer.employerType==='REG' && employer.startDate && employer.endDate\"><span class=\"p-column-title\">Start and End</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' && employer.startDateFed && employer.endDateFed\"><span class=\"p-column-title\">Start and End</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' && employer.startDateMil && employer.endDateMil\"><span class=\"p-column-title\">Start and End</span>\r\n {{employer.startDateMil | date:'M/d/yyyy'}} - {{employer.endDateMil | date:'M/d/yyyy'}}\r\n </td>\r\n\r\n\r\n <td *ngIf=\"employer.employerType!='MIL' && employer.reasonSeparation\"><span class=\"p-column-title\">Separation Reason</span>{{employer.reasonSeparation.text}}\r\n </td>\r\n\r\n <td *ngIf=\"employer.employerType==='MIL'\"><span class=\"p-column-title\">Separation Reason</span>\r\n </td>\r\n \r\n <td colspan=\"4\"></td>\r\n\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%;\" class=\"action-footer\">\r\n <div [innerHtml]=\"'induction.employment.footer.label' | translate | trustHtml\"></div>\r\n </td>\r\n <td class=\"add-employer\">\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\">\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>\r\n {{selectedEmployer.employerData.displayName}}\r\n <div *ngIf=\"selectedEmployer.employerData.tradeName != null\">\r\n {{\"induction.confirm.employment.dba\"|translate}} {{selectedEmployer.employerData.tradeName}}</div>\r\n <br>\r\n </ion-label>\r\n <ion-label><div style=\"font-size: 12px;\" [innerHtml]=\"selectedEmployer.employerData.mailingAddressDisplay | trustHtml\"></div></ion-label><br/>\r\n <ion-label>\r\n {{'induction.employment.grid.popup.failure.label' | translate}}\r\n </ion-label><br/><br/>\r\n <ion-label>\r\n <div [innerHtml]=\"['induction.employment.grid.popup.didnt.work.label' | translate]\"></div>\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)=\"removeBasePeriodEmployer()\">\r\n {{'induction.employment.grid.popup.remove' | translate}}\r\n </ion-button>\r\n </ng-template>\r\n </p-dialog>\r\n</div>", styles: [".add-employer{width:9.75%;text-align:right}.mobile-action-view{display:none}: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: 767px){.mobile-action-view{display:block}}@media screen and (max-width: 40rem){.action-footer{width:300px!important}ion-col{text-align:left!important}.dataHeadings{width:500px!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%!important;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)}}@media screen and (max-width: 40rem){:host ::ng-deep .p-datatable.app-datatable .p-datatable-thead>tr>th,:host ::ng-deep .p-datatable.app-datatable .p-datatable-tfoot>tr>td{display:none!important}:host ::ng-deep .p-datatable.app-datatable .p-datatable-tbody>tr>td .p-column-title{padding:.6rem;min-width:0%!important;display:inline-block;margin:-.4em 1em -.4em -.4rem;font-weight:700}}@media (min-width: 767px) and (max-width: 1325px){.displayNameText{font-size:12px!important;width:max-content}}.strikethrough{text-decoration:line-through}\n"] }]
937
+ }], () => [{ 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: [{
938
+ type: Input
939
+ }], dynamicParam: [{
940
+ type: Input
941
+ }], modelDisplay: [{
942
+ type: Output
943
+ }], onComplete: [{
944
+ type: Output
945
+ }], gridTop: [{
946
+ type: ViewChild,
947
+ args: ['gridTop', { static: false }]
948
+ }] }); })();
949
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EmployerGridComponent, { className: "EmployerGridComponent", filePath: "lib\\components\\employer-grid\\employer-grid.component.ts", lineNumber: 31 }); })();
950
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZXItZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZW1wbG95ZXItZ3JpZC9lbXBsb3llci1ncmlkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9lbXBsb3llci1ncmlkL2VtcGxveWVyLWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFJLE9BQU8sRUFBMEMsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUMvRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN2RyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUM3RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUtuRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUduRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7Ozs7Ozs7O0lDSnZELCtCQUFnRTtJQUNoRSw2QkFBMEUsY0FBQTs7O0lBQ2Usd0JBQ3pGO0lBQUEsaUJBQU07O0lBRkcsZUFBd0I7SUFBeEIsaURBQXdCO0lBQzNCLGVBQTJFO0lBQTNFLGdJQUEyRTs7O0lBRWpGLHdCQUEyRDs7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K0Isa0JBQUEsZUFBQTs7O1lBRXlELHlCQUN4RjtZQUFBLHlCQUErQjtZQUMvQix3RUFHTSx5REFBQTtZQUVOLDhCQUF1RixlQUFBOzs7WUFFekYsaUJBQVUsRUFBQTtZQUdaLGdGQWtKVSxxRkFBQSx3RUFBQTtZQStCVixpQkFBTTs7WUF2TUQsb0NBQWtCO1lBR1YsZUFBdUU7WUFBdkUseUdBQXVFO1lBQzFFLGVBQTZLO1lBQTdLLDBQQUE2SztZQUUxSyxlQUE2QjtZQUE3QixrREFBNkI7WUFDaEMsZUFBNkU7WUFBN0Usc0lBQTZFO1lBRTFFLGVBQXdCO1lBQXhCLGtEQUF3QjtZQUMzQixlQUEwRTtZQUExRSxtSUFBMEU7WUFFMUUsZUFBeUI7WUFBekIsOENBQXlCO1lBSTFCLGVBQXlCO1lBQXpCLDhDQUF5QjtZQUNyQixlQUFxQztZQUFyQyxrREFBcUM7WUFDeEMsZUFBOEU7WUFBOUUsdUlBQThFO1lBS3BFLGVBQXlDO1lBQXpDLDhEQUF5QztZQWtKeEMsZUFBYTtZQUFiLGtDQUFhO1lBTXFFLGVBQXNCO1lBQXRCLDJDQUFzQjs7O2lGRGpKaEgscUJBQXFCO2NBWGpDLFNBQVM7MkJBQ0UsbUJBQW1CLGFBR2xCLENBQUM7d0JBQ1YsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyx1QkFBdUI7d0JBQ2xDLEtBQUssRUFBRSxJQUFJO3FCQUNaLENBQUMsbUJBQ2UsdUJBQXVCLENBQUMsT0FBTzs2UUFhdkMsSUFBSTtrQkFBWixLQUFLO1lBQ0csWUFBWTtrQkFBcEIsS0FBSztZQUdJLFlBQVk7a0JBQXJCLE1BQU07WUFDRyxVQUFVO2tCQUFuQixNQUFNO1lBdUJrQyxPQUFPO2tCQUEvQyxTQUFTO21CQUFDLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7O2tGQXZDNUIscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZDb250cm9sbGVyLCBQb3BvdmVyQ29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBVbnR5cGVkRm9ybUdyb3VwLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2dnZXIvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3F1ZXN0aW9ubmFpcmUvQ2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsJztcbmltcG9ydCB7IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9DbGFpbUFwcEVtcGxveWVyRGV0YWlsc01vZGVsJztcbmltcG9ydCB7IENsYWltQXBwRW1wUmVxdWVzdE1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3F1ZXN0aW9ubmFpcmUvQ2xhaW1BcHBFbXBSZXF1ZXN0TW9kZWwnO1xuaW1wb3J0IHsgQ2xhaW1Pbmx5RW1wbG95ZXJEYXRhTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9DbGFpbU9ubHlFbXBsb3llckRhdGFNb2RlbCc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3F1ZXN0aW9ubmFpcmUvdmFsaWRhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbC91dGlsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbG9naW4vbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBFbXBsb3llcldhZ2VzTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9FbXBsb3llcldhZ2VzTW9kZWwnO1xuaW1wb3J0IHsgQ2xhaW1TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2xhaW1zL2NsYWltcy5zZXJ2aWNlJztcbmltcG9ydCB7IENob2ljZXNNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9BZGRyZXNzQ29tcG9uZW50TW9kZWwnO1xuaW1wb3J0IHsgQ29tYm9PcHRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9Db21ib01vZGVsJztcbmltcG9ydCB7IEZiQ29uc3RhbnRzIH0gZnJvbSAnLi4vcXVlc3Rpb25uYWlyZS9GYkNvbnN0YW50cyc7XG5pbXBvcnQgeyBTdG9yYWdlIH0gZnJvbSAnQGlvbmljL3N0b3JhZ2UtYW5ndWxhcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1lbXBsb3llci1ncmlkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VtcGxveWVyLWdyaWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbXBsb3llci1ncmlkLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogRW1wbG95ZXJHcmlkQ29tcG9uZW50LFxuICAgIG11bHRpOiB0cnVlXG4gIH1dLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHRcbn0pXG5leHBvcnQgY2xhc3MgRW1wbG95ZXJHcmlkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHBvcHVwOiBQb3BvdmVyQ29udHJvbGxlciwgcHVibGljIGxvZ2dlcjogTG9nZ2VyU2VydmljZSxcbiAgICBwdWJsaWMgdmFsaWRhdGlvblNlcnZpY2U6IFZhbGlkYXRpb25TZXJ2aWNlLCBwdWJsaWMgbmF2Q29udHJvbGxlcjogTmF2Q29udHJvbGxlciwgcHVibGljIHV0aWw6IFV0aWxTZXJ2aWNlLFxuICAgIHB1YmxpYyBsczogTG9naW5TZXJ2aWNlLCBwdWJsaWMgYWN0aXZhdGVkUm91dGUgOiBBY3RpdmF0ZWRSb3V0ZSwgcHVibGljIGNsYWltc1NlcnZpY2UgOiBDbGFpbVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yYWdlIDogU3RvcmFnZSkge1xuXG4gIH1cblxuICBjbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZTogIENsYWltQXBwRW1wUmVzcG9uc2VNb2RlbCA9IG5ldyBDbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWwoKTtcbiAgY29sczogYW55W107XG4gIEBJbnB1dCgpIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIGR5bmFtaWNQYXJhbSA6IGFueTtcbiAgZGlzcGxheTogYm9vbGVhbjtcbiAgYmFzZVBlcmlvZGRpc3BsYXk6IGJvb2xlYW47XG4gIEBPdXRwdXQoKSBtb2RlbERpc3BsYXkgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIEBPdXRwdXQoKSBvbkNvbXBsZXRlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBjbGFpbWRldGFpbE1vZGVsID0gbmV3IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwoKTtcbiAgY2FpbUFwcEVtcFJlc3BvbnNlTW9kZWwgPSBuZXcgQ2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsKCk7XG4gIHNlbGVjdGVkRW1wbG95ZXI6IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWw7XG4gIHNlbGVjdGVkQmFzZVBlcmlvZEVtcGxveWVyOiBDbGFpbUFwcEVtcGxveWVyRGV0YWlsc01vZGVsO1xuICBwdWJsaWMgaW5kZXhUb0VkaXQ7XG4gIHB1YmxpYyBpc0Jhc2VQZXJpb2RFbXBsb3llcjogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgaXNOZXdDbGFpbTogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgc2hvd0NvbmZpcm1Qb3B1cCA6IGJvb2xlYW4gPSBmYWxzZTtcbiAgc3NuRm9yQ1NSIDogc3RyaW5nO1xuICBwdWJsaWMgc2hvd1Byb2dyZXNzQmFyID0gZmFsc2U7XG4gIHV1aWQ6IHN0cmluZyA9IG51bGw7XG5cbiAgcHVibGljIGRpc2NoYXJnZVJlYXNvbk9wdGlvbnNBbGw6IENob2ljZXNNb2RlbFtdID0gW107XG4gIHB1YmxpYyB2b2xRdWl0UmVhc29uT3B0aW9uc0FsbDogQ2hvaWNlc01vZGVsW10gPSBbXTtcbiAgcHVibGljIGVtcGxveW1lbnRTdGF0dXNPcHRpb25zQWxsOiBDaG9pY2VzTW9kZWxbXSA9IFtdO1xuICBwdWJsaWMgcGF5UmF0ZU9wdGlvbnMgPSBDb21ib09wdGlvbi5QQVlfUEVSSU9EO1xuICBwdWJsaWMgY291bnRyeU9wdGlvbnMgPSBDb21ib09wdGlvbi5DT1VOVFJZO1xuICBwdWJsaWMgd29ya0NvdW50cnlPcHRpb25zID0gQ29tYm9PcHRpb24uV09SS19DT1VOVFJZO1xuICBwdWJsaWMgc3RhdGVzT3B0aW9ucyA9IENvbWJvT3B0aW9uLlVTX1NUQVRFUztcbiAgcHVibGljIG1pbGl0YXJ5U2VydmljZU9wdGlvbnMgPSBDb21ib09wdGlvbi5NSUxJVEFSWV9TRVJWSUNFO1xuICBwdWJsaWMgY2xhaW1hbnREb2IgOiBEYXRlO1xuICBjb3VudCA9IDA7XG4gIEBWaWV3Q2hpbGQoJ2dyaWRUb3AnLCB7IHN0YXRpYzogZmFsc2UgfSkgZ3JpZFRvcD86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIGxvYWRNYXN0ZXJEYXRhKCl7XG4gICAgdGhpcy5jbGFpbXNTZXJ2aWNlLmxvYWRNYXN0ZXJEYXRhKCk7XG4gICAgdGhpcy5jbGFpbXNTZXJ2aWNlLmdldFJlYXNvblNlcGFyYXRpb24oKS5zdWJzY3JpYmUoXG4gICAgICB2YWx1ZSA9PiB7XG4gICAgICAgIHZhbHVlLmZvckVhY2goYXJyID0+ICB0aGlzLmVtcGxveW1lbnRTdGF0dXNPcHRpb25zQWxsLnB1c2goYXJyKSk7XG4gICAgICB9XG4gICAgKTtcblxuICAgIHRoaXMuY2xhaW1zU2VydmljZS5nZXREaXNjaGFyZ2VSZWFzb25zKCkuc3Vic2NyaWJlKFxuICAgICAgdmFsdWUgPT4ge1xuICAgICAgICB2YWx1ZS5mb3JFYWNoKGFyciA9PiAgdGhpcy5kaXNjaGFyZ2VSZWFzb25PcHRpb25zQWxsLnB1c2goYXJyKSk7XG4gICAgICB9XG4gICAgKTtcblxuICAgIHRoaXMuY2xhaW1zU2VydmljZS5nZXRRdWl0UmVhc29ucygpLnN1YnNjcmliZShcbiAgICAgIHZhbHVlID0+IHtcbiAgICAgICAgdmFsdWUuZm9yRWFjaChhcnIgPT4gIHRoaXMudm9sUXVpdFJlYXNvbk9wdGlvbnNBbGwucHVzaChhcnIpKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG4gIFxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1Zygnbmcgb25pdCBvZiBlbXBsb3llciBncmlkJylcbiAgICB0aGlzLmxvYWRNYXN0ZXJEYXRhKCk7XG4gICAgdGhpcy5jb2xzID0gW1xuICAgICAgeyBmaWVsZDogJ2VtcGxveWVyJywgaGVhZGVyOiAnRW1wbG95ZXInIH0sXG4gICAgICB7IGZpZWxkOiAnam9iVGl0bGUnLCBoZWFkZXI6ICdKb2IgVGl0bGUnIH0sXG4gICAgICB7IGZpZWxkOiAnUGF5JywgaGVhZGVyOiAnUGF5JyB9LFxuICAgICAgeyBmaWVsZDogJ3N0YXJ0RW5kRGF0ZScsIGhlYWRlcjogJ1N0YXJ0IGFuZCBFbmQnIH0sXG4gICAgICB7IGZpZWxkOiAnc2VwYXJhdGlvblJlYXNvbicsIGhlYWRlcjogJ1NlcGFyYXRpb24gUmVhc29uJyB9LFxuICAgICAgeyBmaWVsZDogJycsIGhlYWRlcjogJycgfVxuICAgIF07XG4gICAgaWYgKHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlKSB7XG4gICAgICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5zdWJzY3JpYmUoXG4gICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgaWYgKHJlcykge1xuICAgICAgICAgICAgdGhpcy5jbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZSA9IHJlcy52YWx1ZU9mKCk7XG4gICAgICAgICAgICBpZih0aGlzLmNsYWltQXBwRW1wUmVzcG9uc2VNb2RlbEZyb21TZXJ2aWNlICYmIHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UuaXNOZXdDbGFpbUFwcGxpY2F0aW9uKXtcbiAgICAgICAgICAgICAgdGhpcy5pc05ld0NsYWltID0gdGhpcy5jbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZS5pc05ld0NsYWltQXBwbGljYXRpb24udmFsdWVPZigpO1xuICAgICAgICAgICAgICB0aGlzLmNsYWltYW50RG9iID0gbmV3IERhdGUodGhpcy5jbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZS5kYXRlT2ZCaXJ0aC5yZXBsYWNlKFwiLVwiLFwiL1wiKS5yZXBsYWNlKFwiLVwiLFwiL1wiKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgYXN5bmMgYWRkTmV3RW1wRGV0YWlscygpIHtcbiAgICB0aGlzLmRpc3BsYXkgPSB0cnVlO1xuICAgIHRoaXMuaXNCYXNlUGVyaW9kRW1wbG95ZXI9ZmFsc2U7XG4gICAgdGhpcy5tb2RlbERpc3BsYXkuZW1pdCh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgb25DaGFuZ2U6IEZ1bmN0aW9uID0gKHZhbHVlOiBTdHJpbmcpID0+IHtcbiAgfTtcblxuICBwcml2YXRlIG9uVG91Y2g6IEZ1bmN0aW9uID0gKCkgPT4ge1xuICB9O1xuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuICAgIGlmKHZhbHVlKXtcbiAgICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLm5leHQodmFsdWUpO1xuICAgIH0gZWxzZSBpZih0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpKSB7XG4gICAgICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5uZXh0KHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkpO1xuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpKTtcbiAgICB9ZWxzZXtcbiAgICAgIHRoaXMuc2V0dXBFbXBsb3llcigpO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmblxuICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLnN1YnNjcmliZShmbik7XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICBhc3luYyBnZXRJZGVudGlmaWVyKCl7XG4gICAgbGV0IHV1aWQ7XG4gICAgbGV0IGRhdGEgPSB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1NYXAuZ2V0KCdpZGVudGlmaWVyJyk7XG4gICAgdGhpcy5sb2dnZXIuZGVidWcoXCJkYXRhIGZvciBpZGVudGlmaWVyIGlzIDogXCIsIGRhdGEpXG4gICAgICBpZihkYXRhKXsgICAgICAgICAgXG4gICAgICAgIHV1aWQgPSBkYXRhO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdXVpZCA9IGF3YWl0IHRoaXMuc3RvcmFnZS5nZXQoRmJDb25zdGFudHMudXVpZCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdXVpZDtcbiAgfVxuICBhc3luYyBzZXR1cEVtcGxveWVyKCkge1xuICAgIGxldCBtb2RlbCA9IG5ldyBDbGFpbUFwcEVtcFJlcXVlc3RNb2RlbCgpO1xuICAgIGlmICghdGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2UuZ2V0VmFsdWUoKSkge1xuICAgICAgdGhpcy51dWlkID0gYXdhaXQgdGhpcy5nZXRJZGVudGlmaWVyKCk7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygndXVpZCBpcyA9PT09JywgdGhpcy51dWlkKTtcbiAgICAgIGxldCB1cmwgPSBcIlwiO1xuICAgICAgaWYodGhpcy5scy5pc0NsYWltYW50KCkgPT09IHRydWUpe1xuICAgICAgICB1cmwgPSBcIi9jbGFpbXMtc2VydmljZS9jbGFpbS9jbGFpbWFudC9hcHAvYnBlbXBsb3llcnNcIjsgICAgIFxuICAgICAgICBsZXQgcHJvY2Vzc3R5cGUgPSB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1NYXAuZ2V0KCdwcm9jZXNzdHlwZScpO1xuICAgICAgICBpZihwcm9jZXNzdHlwZSA9PT0gJ2FpYy1yZW9wZW4nKXtcbiAgICAgICAgICB0aGlzLnN0b3JhZ2UucmVtb3ZlKEZiQ29uc3RhbnRzLnV1aWQpO1xuICAgICAgICAgIC8vdGhpcy5sb2dnZXIuZGVidWcoJ29iakRhdGEgPT09PScsIG9iakRhdGEpO1xuICAgICAgICAgIG1vZGVsLmZsb3dGcm9tID0gXCJBaWMtUmVvcGVuLWZsb3dcIjtcbiAgICAgICAgfSAgXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB1cmwgPSBcIi9jbGFpbXMtc2VydmljZS9jbGFpbS9hcHAvYnBlbXBsb3llcnNcIjtcbiAgICAgICAgbGV0IHByb2Nlc3N0eXBlID0gdGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtTWFwLmdldCgncHJvY2Vzc3R5cGUnKTtcbiAgICAgICAgaWYocHJvY2Vzc3R5cGUgPT09ICdhaWMtcmVvcGVuJyl7XG4gICAgICAgICAgbW9kZWwuZmxvd0Zyb20gPSBcIkFpYy1SZW9wZW4tZmxvd1wiO1xuICAgICAgICB9ICBcbiAgICAgIH1cbiAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygndGhlIHV1aWQgdXNlZCBpbiBtb2RlbCBpcyA6ICcsIHRoaXMudXVpZCk7XG4gICAgICBpZihtb2RlbC5mbG93RnJvbSA9PT0gJ0FpYy1SZW9wZW4tZmxvdycpe1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcIkluc2lkZSBhaWMgcmVvcGVuIGZsb3dcIik7XG4gICAgICAgIHRoaXMuZmV0Y2hFbXBsb3llcnNGcm9tQmFja0VuZChtb2RlbCwgdXJsKTtcbiAgICAgIH0gZWxzZSBpZih0aGlzLnV1aWQpe1xuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFwiSW5zaWRlIGdldHRpbmcgdmFsdWVzIGJhc2VkIG9uIHV1aWRcIik7XG4gICAgICAgICAgbW9kZWwudXVpZCA9IHRoaXMudXVpZDtcbiAgICAgICAgICB0aGlzLmZldGNoRW1wbG95ZXJzRnJvbUJhY2tFbmQobW9kZWwsIHVybCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcIktlZXAgd2FpdGluZy4uLi51dWlkIG5vdCBmb3VuZC4uXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBmZXRjaEVtcGxveWVyc0Zyb21CYWNrRW5kKG1vZGVsOiBDbGFpbUFwcEVtcFJlcXVlc3RNb2RlbCwgdXJsOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNob3dQcm9ncmVzc0JhciA9IHRydWU7XG4gICAgdGhpcy52YWxpZGF0aW9uU2VydmljZS5wb3N0PENsYWltQXBwRW1wUmVzcG9uc2VNb2RlbD4odXJsLCBtb2RlbCkuc3Vic2NyaWJlKFxuICAgICAgcmVzID0+IHtcbiAgICAgICAgaWYocmVzLmJwRW1wTGlzdC5sZW5ndGggPiAwKXtcbiAgICAgICAgICByZXMuYnBFbXBMaXN0LmZvckVhY2goZW1wID0+IHRoaXMuc2V0Q2hvaXNlTW9kZWxzKGVtcCkpXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2UubmV4dChyZXMpO1xuICAgICAgICB0aGlzLm9uQ29tcGxldGUuZW1pdCh0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpKTtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ2VtcGxveWVyIExpc3QgZnJvbSBTZXJ2aWNlJywgdGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2UuZ2V0VmFsdWUoKSk7XG4gICAgICAgIHRoaXMuc2hvd1Byb2dyZXNzQmFyID0gZmFsc2U7XG4gICAgICB9LFxuICAgICAgZXJyID0+IHtcbiAgICAgICAgbGV0IGxpc3QgPSBuZXcgQ2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsKCk7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLm5leHQobGlzdCk7XG4gICAgICAgIHRoaXMuc2hvd1Byb2dyZXNzQmFyID0gZmFsc2U7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuICBcbiAgZGVsZXRlQnBFbXBsKGV2ZW50Om51bWJlcil7XG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0RlbGV0ZSBtZXRob2QgY2FsbGVkICcsIGV2ZW50KTtcbiAgICB0aGlzLmNsYWltQXBwRW1wUmVzcG9uc2VNb2RlbEZyb21TZXJ2aWNlLmJwRW1wTGlzdC5zcGxpY2UoZXZlbnQsIDEpO1xuICB9XG5cbiAgZGVsZXRlRW1wbG95ZXIoZWxlbWVudEluZGV4KSB7XG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0RlbGV0ZSBtZXRob2QgY2FsbGVkIGZvciA9ICcsIGVsZW1lbnRJbmRleCk7XG4gICAgdGhpcy5pc0Jhc2VQZXJpb2RFbXBsb3llcj1mYWxzZTtcbiAgICAvL3RoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UuYnBFbXBMaXN0W2VsZW1lbnRJbmRleF0uZW1wRGVsZXRlZCA9IFwiWVwiO1xuICAgIHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UuYnBFbXBMaXN0LnNwbGljZShlbGVtZW50SW5kZXgsIDEpO1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdBZnRlciBkZWxldGUgbGlzdCBpcyA9ICcsIHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UpO1xuICB9XG5cbiAgZGVsZXRlRW1wbG95ZXJCYXNlUGVyaW9kKGVsZW1lbnRJbmRleCkge1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdEZWxldGUgbWV0aG9kIGJhc2UgcGVyaW9kIGVtcGxveWVyIGNhbGxlZCBmb3IgPSAnLCBlbGVtZW50SW5kZXgpO1xuICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkuYnBFbXBMaXN0W2VsZW1lbnRJbmRleF0ud29ya0ZsYWcgPSBcIk5cIjtcbiAgICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpLmJwRW1wTGlzdFtlbGVtZW50SW5kZXhdLmVtcERlbGV0ZWQgPSBcIllcIjtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQWZ0ZXIgZGVsZXRlIGJhc2UgcGVyaW9kIGVtcGxveWVyIGxpc3QgaXMgPSAnLCB0aGlzLmNsYWltQXBwRW1wUmVzcG9uc2VNb2RlbEZyb21TZXJ2aWNlKTtcbiAgfVxuXG4gIGVkaXRFbXBsb3llcihlbXBsb3llcikge1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdFZGl0IG1ldGhvZCBjYWxsZWQnLCBlbXBsb3llcik7XG4gICAgdGhpcy5pbmRleFRvRWRpdCA9IHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UuYnBFbXBMaXN0LmluZGV4T2YoZW1wbG95ZXIpO1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdJbmRleCBUbyBFZGl0ID0gJywgdGhpcy5pbmRleFRvRWRpdCk7XG4gICAgdGhpcy5kaXNwbGF5ID0gdHJ1ZTtcbiAgfVxuXG4gIGZpbmlzaChlbXBsb3llcikge1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdGaW5pc2ggRW1wbG95ZXIgY2FsbGVkJywgZW1wbG95ZXIpO1xuICAgIHRoaXMuaW5kZXhUb0VkaXQgPSB0aGlzLmNsYWltQXBwRW1wUmVzcG9uc2VNb2RlbEZyb21TZXJ2aWNlLmJwRW1wTGlzdC5pbmRleE9mKGVtcGxveWVyKTtcbiAgICBlbXBsb3llci53b3JrRmxhZyA9ICdZJztcbiAgICB0aGlzLmlzQmFzZVBlcmlvZEVtcGxveWVyID0gdHJ1ZTtcbiAgICB0aGlzLmRpc3BsYXkgPSB0cnVlO1xuICAgIHRoaXMubW9kZWxEaXNwbGF5LmVtaXQodHJ1ZSk7XG4gIH1cblxuICBlZGl0QmFzZVBlcmlvZEVtcGxveWVyKGVtcGxveWVyKSB7XG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0VkaXQgQmFzZVBlcmlvZCBFbXBsb3llciBjYWxsZWQgZm9yICcsIGVtcGxveWVyKTtcbiAgICB0aGlzLmluZGV4VG9FZGl0ID0gdGhpcy5jbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZS5icEVtcExpc3QuaW5kZXhPZihlbXBsb3llcik7XG4gICAgdGhpcy5kaXNwbGF5ID0gdHJ1ZTtcbiAgICB0aGlzLmlzQmFzZVBlcmlvZEVtcGxveWVyID0gdHJ1ZTtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnSW5kZXggVG8gRWRpdCA9ICcsIHRoaXMuaW5kZXhUb0VkaXQpO1xuICB9XG5cbiAgb25Nb2RlbENhbmNlbChjYW5jZWw6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQ2FuY2VsIE1ldGhvZCAgJywgY2FuY2VsKTtcbiAgICB0aGlzLmRpc3BsYXkgPSBjYW5jZWw7XG4gICAgdGhpcy5iYXNlUGVyaW9kZGlzcGxheSA9IGNhbmNlbDtcbiAgICB0aGlzLmluZGV4VG9FZGl0ID0gbnVsbDtcbiAgICB0aGlzLmlzQmFzZVBlcmlvZEVtcGxveWVyID0gZmFsc2U7XG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ2FmdGVyIHZhbHVlIGNoYW5nZSBvbiBlbXBsb3llciBncmlkICcsIHRoaXMuZGlzcGxheSk7XG4gIH1cblxuICBhZGRFbXBsb3llcihldmVudDogQ2xhaW1BcHBFbXBsb3llckRldGFpbHNNb2RlbCkge1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdBZGQgRW1wbG95ZXIgY2FsbGVkIGZyb20gZ3JpZCAnLCBldmVudCwgJ2luZGV4VG9FZGl0JywgdGhpcy5pbmRleFRvRWRpdCwndGhpcy5pc0Jhc2VQZXJpb2RFbXBsb3llcicsdGhpcy5pc0Jhc2VQZXJpb2RFbXBsb3llcik7XG4gICAgZXZlbnQuZW1wRGVsZXRlZCA9ICdOJztcbiAgICBpZiAodGhpcy5pbmRleFRvRWRpdCB8fCB0aGlzLmluZGV4VG9FZGl0ID09IDApIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdJbnNpZGUgaWYgb2YgYWRkIGVtcGxveWVyIC0tICcsZXZlbnQpXG4gICAgICBsZXQgZW1wRGF0YU1vZGVsID0gbmV3IENsYWltT25seUVtcGxveWVyRGF0YU1vZGVsKCk7XG4gICAgICBsZXQgZW1wUHJvdmlkZWRXYWdlTW9kZWwgPSBuZXcgRW1wbG95ZXJXYWdlc01vZGVsKCk7XG4gICAgICBpZiAodGhpcy5pc0Jhc2VQZXJpb2RFbXBsb3llcikge1xuICAgICAgICB0aGlzLmNsYWltZGV0YWlsTW9kZWwgPSBuZXcgQ2xhaW1BcHBFbXBsb3llckRldGFpbHNNb2RlbCgpO1xuICAgICAgICB0aGlzLmNsYWltZGV0YWlsTW9kZWwgPSBldmVudDtcbiAgICAgICAgZW1wRGF0YU1vZGVsID0gIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkuYnBFbXBMaXN0W3RoaXMuaW5kZXhUb0VkaXRdLmVtcGxveWVyRGF0YTtcbiAgICAgICAgZW1wUHJvdmlkZWRXYWdlTW9kZWwgPSB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpLmJwRW1wTGlzdFt0aGlzLmluZGV4VG9FZGl0XS5lbXBsb3llclByb3ZpZGVkV2FnZXM7XG4gICAgICAgIGV2ZW50LmJwRW1wbG95ZXJGbGFnID0gJzEnXG4gICAgICAgIGV2ZW50LmVtcGxveWVyRGF0YSA9IGVtcERhdGFNb2RlbDtcbiAgICAgICAgZXZlbnQuZW1wbG95ZXJQcm92aWRlZFdhZ2VzID0gZW1wUHJvdmlkZWRXYWdlTW9kZWw7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdyZXNldHRpbmcgdGhlIHZhbHVlIGFnYWluID0gICcsZXZlbnQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsID0gbmV3IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwoKTtcbiAgICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsID0gZXZlbnQ7XG4gICAgICAgIGVtcERhdGFNb2RlbCA9IG5ldyBDbGFpbU9ubHlFbXBsb3llckRhdGFNb2RlbCgpO1xuICAgICAgIGlmKGV2ZW50LmVtcGxveWVyVHlwZT09PSdSRUcnKXtcbiAgICAgICAgZW1wRGF0YU1vZGVsLmRpc3BsYXlOYW1lID0gZXZlbnQuZW1wbG95ZXJOYW1lO1xuICAgICAgICBlbXBEYXRhTW9kZWwubWFpbGluZ0FkZHJlc3NEaXNwbGF5ID1cbiAgICAgICAgZXZlbnQuYWRkcmVzc1snc3RyZWV0QWRkcmVzcyddICsgJyAnICsgZXZlbnQuYWRkcmVzc1snY2l0eSddICArICctJyArIChldmVudC5hZGRyZXNzWydzdGF0ZSddID8gZXZlbnQuYWRkcmVzc1snc3RhdGUnXS50ZXh0IDogJycpICsnLScgKyAoZXZlbnQuYWRkcmVzc1snY291bnRyeSddID8gZXZlbnQuYWRkcmVzc1snY291bnRyeSddLnZhbHVlIDogJycpO1xuICAgICAgfSBlbHNlIGlmKGV2ZW50LmVtcGxveWVyVHlwZT09PSdGRUQnKXsgXG4gICAgICAgIGVtcERhdGFNb2RlbC5kaXNwbGF5TmFtZSA9IGV2ZW50LmZlZEVtcGxveWVyTmFtZTtcbiAgICAgICAgZW1wRGF0YU1vZGVsLm1haWxpbmdBZGRyZXNzRGlzcGxheSA9XG4gICAgICAgIGV2ZW50LmFkZHJlc3NbJ3N0cmVldEFkZHJlc3MnXSArICcgJyArIGV2ZW50LmFkZHJlc3NbJ2NpdHknXSAgKyAnLScgKyAoZXZlbnQuYWRkcmVzc1snc3RhdGUnXSA/IGV2ZW50LmFkZHJlc3NbJ3N0YXRlJ10udGV4dCA6ICcnKSArICctJyArIChldmVudC5hZGRyZXNzWydjb3VudHJ5J10gPyBldmVudC5hZGRyZXNzWydjb3VudHJ5J10udmFsdWUgOiAnJyk7XG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXCJubyBhZGRyZXNzIGZvciB0aGlzIGVtcGxveWVyIHR5cGVcIik7XG4gICAgICB9XG4gICAgICAgIGVtcERhdGFNb2RlbC5lbXBsb3llclR5cGUgPSBldmVudC5lbXBsb3llclR5cGU7XG4gICAgICAgIGV2ZW50LmVtcGxveWVyRGF0YSA9IGVtcERhdGFNb2RlbDtcbiAgICAgICAgZW1wRGF0YU1vZGVsLmVtcGxveWVySWQ9ZXZlbnQuZW1wbG95ZXJJZDtcbiAgICAgICAgZW1wRGF0YU1vZGVsLm1haWxBZGRyZXNzTGluZTE9ZXZlbnQuYWRkcmVzcz8uc3RyZWV0QWRkcmVzcztcbiAgICAgICAgZW1wRGF0YU1vZGVsLm1haWxBZGRyZXNzTGluZTI9ZXZlbnQuYWRkcmVzcz8ub3B0aW9uYWxBZGRyZXNzO1xuICAgICAgICBldmVudC5icEVtcGxveWVyRmxhZyA9ICcwJ1xuICAgICAgfVxuICAgICAgdGhpcy52YWxpZGF0aW9uU2VydmljZS5icEVtcExzdEZybVNlcnZpY2UuZ2V0VmFsdWUoKS5icEVtcExpc3RbdGhpcy5pbmRleFRvRWRpdF0gPSBldmVudDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ0luc2lkZSBlbHNlIG9mIGFkZCBlbXBsb3llciAtLSAnLGV2ZW50KVxuICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsID0gbmV3IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwoKTtcbiAgICAgIGxldCBlbXBEYXRhTW9kZWwgPSBuZXcgQ2xhaW1Pbmx5RW1wbG95ZXJEYXRhTW9kZWwoKVxuICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsID0gZXZlbnQ7XG4gICAgICBlbXBEYXRhTW9kZWwgPSBuZXcgQ2xhaW1Pbmx5RW1wbG95ZXJEYXRhTW9kZWwoKTtcbiAgICAgIGlmKGV2ZW50LmVtcGxveWVyVHlwZT09PSdSRUcnKXtcbiAgICAgIGVtcERhdGFNb2RlbC5kaXNwbGF5TmFtZSA9IGV2ZW50LmVtcGxveWVyTmFtZTtcbiAgICAgIGVtcERhdGFNb2RlbC5tYWlsaW5nQWRkcmVzc0Rpc3BsYXkgPVxuICAgICAgZXZlbnQuYWRkcmVzc1snc3RyZWV0QWRkcmVzcyddICsgJyAnICsgZXZlbnQuYWRkcmVzc1snY2l0eSddICArICctJyArIChldmVudC5hZGRyZXNzWydzdGF0ZSddID8gZXZlbnQuYWRkcmVzc1snc3RhdGUnXS50ZXh0IDogJycpICsgJy0nICsoZXZlbnQuYWRkcmVzc1snY291bnRyeSddID8gZXZlbnQuYWRkcmVzc1snY291bnRyeSddLnZhbHVlIDogJycpO1xuICAgICAgfSBlbHNlIGlmKGV2ZW50LmVtcGxveWVyVHlwZT09PSdGRUQnKXtcbiAgICAgICAgZW1wRGF0YU1vZGVsLmRpc3BsYXlOYW1lID0gZXZlbnQuZmVkRW1wbG95ZXJOYW1lO1xuICAgICAgICBlbXBEYXRhTW9kZWwubWFpbGluZ0FkZHJlc3NEaXNwbGF5ID1cbiAgICAgICAgZXZlbnQuYWRkcmVzc1snc3RyZWV0QWRkcmVzcyddICsgJyAnICsgZXZlbnQuYWRkcmVzc1snY2l0eSddICsgJy0nICsgKGV2ZW50LmFkZHJlc3NbJ3N0YXRlJ10gPyBldmVudC5hZGRyZXNzWydzdGF0ZSddLnRleHQgOiAnJykgKyAnLScgKyAoZXZlbnQuYWRkcmVzc1snY291bnRyeSddID8gZXZlbnQuYWRkcmVzc1snY291bnRyeSddLnZhbHVlIDogJycpO1xuICAgICAgfWVsc2Uge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcIkluc2lkZSBlbHNlIC0gbm8gYWRkcmVzcyBmb3IgdGhpcyBlbXBsb3llciB0eXBlXCIpO1xuICAgICAgfVxuICAgICAgZW1wRGF0YU1vZGVsLmVtcGxveWVyVHlwZSA9IGV2ZW50LmVtcGxveWVyVHlwZTtcbiAgICAgIGVtcERhdGFNb2RlbC5lbXBsb3llcklkPWV2ZW50LmVtcGxveWVySWQ7XG4gICAgICBlbXBEYXRhTW9kZWwubWFpbEFkZHJlc3NMaW5lMT1ldmVudC5hZGRyZXNzPy5zdHJlZXRBZGRyZXNzO1xuICAgICAgZW1wRGF0YU1vZGVsLm1haWxBZGRyZXNzTGluZTI9ZXZlbnQuYWRkcmVzcz8ub3B0aW9uYWxBZGRyZXNzO1xuICAgICAgaWYgKHRoaXMuaXNCYXNlUGVyaW9kRW1wbG95ZXIpIHtcbiAgICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsLmJwRW1wbG95ZXJGbGFnID0gJzEnO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsLmJwRW1wbG95ZXJGbGFnID0gJzAnO1xuICAgICAgfVxuICAgICAgdGhpcy5jbGFpbWRldGFpbE1vZGVsLmVtcGxveWVyRGF0YSA9IGVtcERhdGFNb2RlbDtcbiAgICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkuYnBFbXBMaXN0LnB1c2godGhpcy5jbGFpbWRldGFpbE1vZGVsKTtcbiAgICB9XG4gICAgdGhpcy5kaXNwbGF5ID0gZmFsc2U7XG4gICAgdGhpcy5pbmRleFRvRWRpdCA9IG51bGw7XG4gIH1cblxuICByZW1vdmVFbXBsb3ltZW50KHNlbGVjdGVkRW1wbG95ZXI6IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwsIGluZGV4KXtcbiAgICB0aGlzLmluZGV4VG9FZGl0ID0gaW5kZXg7XG4gICAgdGhpcy5zZWxlY3RlZEVtcGxveWVyID0gc2VsZWN0ZWRFbXBsb3llcjtcbiAgICB0aGlzLnNob3dDb25maXJtUG9wdXAgPSB0cnVlO1xuICB9XG5cbiAgcmVtb3ZlQmFzZVBlcmlvZEVtcGxveWVyKCl7XG4gICAgdGhpcy5kZWxldGVFbXBsb3llckJhc2VQZXJpb2QodGhpcy5pbmRleFRvRWRpdCk7XG4gICAgdGhpcy5zaG93Q29uZmlybVBvcHVwID0gZmFsc2U7XG4gICAgdGhpcy5zZWxlY3RlZEVtcGxveWVyID0gbnVsbDtcbiAgICB0aGlzLmluZGV4VG9FZGl0ID0gbnVsbDtcbiAgfVxuXG4gIHJlc3RvcmVFbXBsb3ltZW50KHNlbGVjdGVkRW1wbG95ZXI6IENsYWltQXBwRW1wbG95ZXJEZXRhaWxzTW9kZWwsIGluZGV4KXtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnRGVsZXRlIG1ldGhvZCBiYXNlIHBlcmlvZCBlbXBsb3llciBjYWxsZWQgZm9yID0gJywgaW5kZXgpO1xuICAgIGxldCBjdXJyZW50V29ya0ZsYWdWYWx1ZSA9IHRoaXMudmFsaWRhdGlvblNlcnZpY2UuYnBFbXBMc3RGcm1TZXJ2aWNlLmdldFZhbHVlKCkuYnBFbXBMaXN0W2luZGV4XS53b3JrRmxhZztcbiAgICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpLmJwRW1wTGlzdFtpbmRleF0ud29ya0ZsYWcgPSBjdXJyZW50V29ya0ZsYWdWYWx1ZSA/IChjdXJyZW50V29ya0ZsYWdWYWx1ZSA9PSBcIk5cIiA/IFwiWVwiIDogXCJOXCIpIDogbnVsbDtcbiAgICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmJwRW1wTHN0RnJtU2VydmljZS5nZXRWYWx1ZSgpLmJwRW1wTGlzdFtpbmRleF0uZW1wRGVsZXRlZCA9IFwiTlwiO1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdBZnRlciBkZWxldGUgYmFzZSBwZXJpb2QgZW1wbG95ZXIgbGlzdCBpcyA9ICcsIHRoaXMuY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2UpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5pbmRleFRvRWRpdCA9IG51bGw7XG4gICAgdGhpcy5zaG93Q29uZmlybVBvcHVwID0gZmFsc2U7XG4gICAgdGhpcy5zZWxlY3RlZEVtcGxveWVyID0gbnVsbDtcbiAgfVxuICBzZXRDaG9pc2VNb2RlbHMoZW1wOiBDbGFpbUFwcEVtcGxveWVyRGV0YWlsc01vZGVsKTogdm9pZCB7XG4gICAgbGV0IHNlcFJlYXNvbiA6IENob2ljZXNNb2RlbFtdID0gdGhpcy5lbXBsb3ltZW50U3RhdHVzT3B0aW9uc0FsbC5maWx0ZXIocyA9PiBzLnZhbHVlID09IGVtcC5yZWFzb25TZXBhcmF0aW9uPy52YWx1ZSk7XG4gICAgaWYoc2VwUmVhc29uLmxlbmd0aCA+IDApe1xuICAgICAgZW1wLnJlYXNvblNlcGFyYXRpb24gPSBzZXBSZWFzb25bMF07XG4gICAgfVxuICAgIGxldCBkaXNjaGFyZ2VSZWFzb24gOiBDaG9pY2VzTW9kZWxbXSA9IHRoaXMuZGlzY2hhcmdlUmVhc29uT3B0aW9uc0FsbC5maWx0ZXIocyA9PiBzLnZhbHVlID09IGVtcC5kaXNjaGFyZ2VEZXRhaWw/LnZhbHVlKTtcbiAgICBpZihkaXNjaGFyZ2VSZWFzb24ubGVuZ3RoID4gMCl7XG4gICAgICBlbXAuZGlzY2hhcmdlRGV0YWlsID0gZGlzY2hhcmdlUmVhc29uWzBdO1xuICAgIH1cbiAgICBsZXQgdm9sUXVpdCA6IENob2ljZXNNb2RlbFtdID0gdGhpcy52b2xRdWl0UmVhc29uT3B0aW9uc0FsbC5maWx0ZXIocyA9PiBzLnZhbHVlID09IGVtcC52b2xRdWl0RGV0YWlscz8udmFsdWUpO1xuICAgIGlmKHZvbFF1aXQubGVuZ3RoID4gMCl7XG4gICAgICBlbXAudm9sUXVpdERldGFpbHMgPSB2b2xRdWl0WzBdO1xuICAgIH1cbiAgICBsZXQgcGF5UmF0ZUZyZXF1ZW5jeSA6IENob2ljZXNNb2RlbFtdID0gdGhpcy5wYXlSYXRlT3B0aW9ucy5maWx0ZXIocyA9PiBzLnZhbHVlID09IGVtcC5wYXlSYXRlRnJlcXVlbmN5Py52YWx1ZSk7XG4gICAgaWYocGF5UmF0ZUZyZXF1ZW5jeS5sZW5ndGggPiAwKXtcbiAgICAgIGVtcC5wYXlSYXRlRnJlcXVlbmN5ID0gcGF5UmF0ZUZyZXF1ZW5jeVswXTtcbiAgICB9XG5cbiAgICBsZXQgY291bnRyeSA6IENob2ljZXNNb2RlbFtdID0gdGhpcy53b3JrQ291bnRyeU9wdGlvbnMuZmlsdGVyKHMgPT4gcy52YWx1ZSA9PSBlbXAuZmVkV29ya0NvdW50cnk/LnZhbHVlKTtcbiAgICBpZihjb3VudHJ5Lmxlbmd0aCA+IDApe1xuICAgICAgZW1wLmZlZFdvcmtDb3VudHJ5ID0gY291bnRyeVswXTtcbiAgICB9XG5cbiAgICBsZXQgc3RhdGUgOiBDaG9pY2VzTW9kZWxbXSA9IHRoaXMuc3RhdGVzT3B0aW9ucy5maWx0ZXIocyA9PiBzLnZhbHVlID09IGVtcC5mZWRXb3JrU3RhdGU/LnZhbHVlKTtcbiAgICBpZihzdGF0ZS5sZW5ndGggPiAwKXtcbiAgICAgIGVtcC5mZWRXb3JrU3RhdGUgPSBzdGF0ZVswXTtcbiAgICB9XG5cbiAgICBsZXQgc2VydmljZUJyYW5jaCA6IENob2ljZXNNb2RlbFtdID0gdGhpcy5taWxpdGFyeVNlcnZpY2VPcHRpb25zLmZpbHRlcihzID0+IHMudmFsdWUgPT0gZW1wLnNlcnZpY2VCcmFuY2g/LnZhbHVlKTtcbiAgICBpZihzZXJ2aWNlQnJhbmNoLmxlbmd0aCA+IDApe1xuICAgICAgZW1wLnNlcnZpY2VCcmFuY2ggPSBzZXJ2aWNlQnJhbmNoWzBdO1xuICAgIH1cblxuICAgIGxldCB3b3JrU3RhdGUgOiBDaG9pY2VzTW9kZWxbXSA9IHRoaXMuc3RhdGVzT3B0aW9ucy5maWx0ZXIocyA9PiBzLnZhbHVlID09IGVtcC53b3JrU3RhdGU/LnZhbHVlPy50cmltKCkpO1xuICAgIGVtcC53b3JrU3RhdGUgPSB3b3JrU3RhdGVbMF07XG5cbiAgfVxuXG4gIHN1Ym1pdCgpIHtcbiAgICB0aGlzLmNsYWltQXBwRW1wUmVzcG9uc2VNb2RlbEZyb21TZXJ2aWNlLmJwRW1wTGlzdC5mb3JFYWNoKGUgPT4ge1xuICAgICAgaWYgKCFlLmlzRW1wbG95ZXJFZGl0ZWQpIHtcbiAgICAgICAgZS5pc0VtcGxveWVyR3JpZFN1Ym1pdHRlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuY291bnQgPSB0aGlzLmNvdW50ICsgMTtcbiAgICAgICAgaWYgKHRoaXMuY291bnQgPD0gdGhpcy5jbGFpbUFwcEVtcFJlc3BvbnNlTW9kZWxGcm9tU2VydmljZS5icEVtcExpc3QubGVuZ3RoKSB7XG4gICAgICAgICAgY29uc3QgY3RybCA9IHRoaXMuZm9ybT8uZ2V0KCdwcmV2d29yaycpO1xuICAgICAgICAgIGlmICghY3RybCkgcmV0dXJuO1xuICAgICAgICAgIGNvbnN0IGhhc0Vycm9yID1cbiAgICAgICAgICAgICEhY3RybC5lcnJvcnM/LmJwRW1wbHJGbGFnICYmIChjdHJsLnRvdWNoZWQgfHwgY3RybC5kaXJ0eSk7XG5cbiAgICAgICAgICBpZiAoaGFzRXJyb3IpIHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmdyaWRUb3A/Lm5hdGl2ZUVsZW1lbnQ/LnNjcm9sbEludG9WaWV3KHtcbiAgICAgICAgICAgICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXG4gICAgICAgICAgICAgICAgYmxvY2s6ICdjZW50ZXInLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sIDEwMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSlcbiAgfVxufVxuXG5cbiIsIjxkaXYgW2Zvcm1Hcm91cF09XCJmb3JtXCIgc3R5bGU9XCJtYXJnaW4tbGVmdDogLTVweDtcIiAjZ3JpZFRvcD5cclxuPGlvbi1yb3c+XHJcbiAgPGlvbi1jb2w+ICAgIFxyXG4gICAgPGZhLWljb24gW2ljb25dPVwidXRpbC5pc1N0YXRlKCdNUycpID8gWydmYWwnLCAnZWRpdCddIDogWydmYWwnLCAnY2hlY2stY2lyY2xlJ11cIj48L2ZhLWljb24+XHJcbiAgICA8c3BhbiBbaW5uZXJIdG1sXT1cInV0aWwuaXNTdGF0ZSgnTVMnKSA/ICgnaW5kdWN0aW9uLmVtcGxveW1lbnQuc3ViaGVhZGVyLmNvbmZpcm0ubXMnIHwgdHJhbnNsYXRlIHwgdHJ1c3RIdG1sKSA6ICgnaW5kdWN0aW9uLmVtcGxveW1lbnQuc3ViaGVhZGVyLmNvbmZpcm0nIHwgdHJhbnNsYXRlIHwgdHJ1c3RIdG1sKVwiPjwvc3Bhbj4sJm5ic3A7XHJcbiAgICA8YnIgY2xhc3M9XCJtb2JpbGUtYWN0aW9uLXZpZXdcIj5cclxuICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ3RyYXNoLWFsdCddXCIgY2xhc3M9XCJhY3Rpb24taWNvbiBmb250LWJvbGRcIj48L2ZhLWljb24+XHJcbiAgICA8c3BhbiBbaW5uZXJIdG1sXT1cIidpbmR1Y3Rpb24uZW1wbG95bWVudC5zdWJoZWFkZXIuZGVsZXRlJyB8IHRyYW5zbGF0ZSB8IHRydXN0SHRtbFwiPjwvc3Bhbj4sJm5ic3A7XHJcbiAgICA8YnIgY2xhc3M9XCJtb2JpbGUtYWN0aW9uLXZpZXdcIj5cclxuICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ3BsdXMnXVwiIGNsYXNzPVwiYWN0aW9uLWljb24gZm9udC1ib2xkXCI+PC9mYS1pY29uPlxyXG4gICAgPHNwYW4gW2lubmVySHRtbF09XCInaW5kdWN0aW9uLmVtcGxveW1lbnQuc3ViaGVhZGVyLmFkZCcgfCB0cmFuc2xhdGUgfCB0cnVzdEh0bWxcIj48L3NwYW4+LCZuYnNwO1xyXG4gICAgPGJyIGNsYXNzPVwibW9iaWxlLWFjdGlvbi12aWV3XCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiIXV0aWwuaXNTdGF0ZSgnTVMnKVwiIHN0eWxlPVwiZGlzcGxheTogaW5saW5lLWJsb2NrO1wiPlxyXG4gICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAnZWRpdCddXCIgY2xhc3M9XCJhY3Rpb24taWNvbiBmb250LWJvbGRcIj48L2ZhLWljb24+XHJcbiAgICA8c3BhbiBbaW5uZXJIdG1sXT1cIidpbmR1Y3Rpb24uZW1wbG95bWVudC5zdWJoZWFkZXIuZWRpdCcgfCB0cmFuc2xhdGUgfCB0cnVzdEh0bWxcIj48L3NwYW4+LCZuYnNwO1xyXG4gICAgPC9kaXY+XHJcbiAgICA8YnIgKm5nSWY9XCIhdXRpbC5pc1N0YXRlKCdNUycpXCIgY2xhc3M9XCJtb2JpbGUtYWN0aW9uLXZpZXdcIj5cclxuICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ3RyYXNoLXJlc3RvcmUtYWx0J11cIiBjbGFzcz1cImFjdGlvbi1pY29uIGZvbnQtYm9sZFwiPjwvZmEtaWNvbj5cclxuICAgIDxzcGFuIFtpbm5lckh0bWxdPVwiJ2luZHVjdGlvbi5lbXBsb3ltZW50LnN1YmhlYWRlci5yZXN0b3JlJyB8IHRyYW5zbGF0ZSB8IHRydXN0SHRtbFwiPjwvc3Bhbj5cclxuICA8L2lvbi1jb2w+XHJcbjwvaW9uLXJvdz5cclxuXHJcbjxwLXRhYmxlICNkdCBbY29sdW1uc109XCJjb2xzXCIgW3ZhbHVlXT1cImNsYWltQXBwRW1wUmVzcG9uc2VNb2RlbEZyb21TZXJ2aWNlLmJwRW1wTGlzdFwiIFtsb2FkaW5nXT1cInNob3dQcm9ncmVzc0JhclwiXHJcbiBbcm93SG92ZXJdPVwidHJ1ZVwiICpuZ0lmPVwiY2xhaW1BcHBFbXBSZXNwb25zZU1vZGVsRnJvbVNlcnZpY2VcIiBzdHlsZUNsYXNzPVwicC1kYXRhdGFibGUtc3RyaXBlZCBhcHAtZGF0YXRhYmxlIGlvbi1wYWRkaW5nLXRvcFwiPlxyXG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIiBsZXQtY29sdW1ucz5cclxuICAgIDx0cj5cclxuICAgICAgPHRoIGNvbHNwYW49XCIyXCIgY2xhc3M9XCJkYXRhSGVhZGluZ3NcIiBzdHlsZT1cIndpZHRoOjIwJTtcIiA+XHJcbiAgICAgICAge3tcImluZHVjdGlvbi5lbXBsb3ltZW50LnRhYmxlLmVtcGxveWVyLm5hbWVcInx0cmFuc2xhdGV9fVxyXG4gICAgICA8L3RoPlxyXG4gICAgICA8dGg+XHJcbiAgICAgICA8L3RoPlxyXG4gICAgICA8dGg+XHJcbiAgICAgICAge3tcImluZHVjdGlvbi5lbXBsb3ltZW50LnRhYmxlLmpvYi50aXRsZVwifHRyYW5zbGF0ZX19XHJcbiAgICAgICA8L3RoPlxyXG4gICAgICAgPHRoPlxyXG4gICAgICAgIHt7XCJpbmR1Y3Rpb24uZW1wbG95bWVudC50YWJsZS5wYXlcInx0cmFuc2xhdGV9fVxyXG4gICAgICAgPC90aD5cclxuICAgICAgIDx0aD5cclxuICAgICAgICB7e1wiaW5kdWN0aW9uLmVtcGxveW1lbnQudGFibGUuZGF0ZXNcInx0cmFuc2xhdGV9fVxyXG4gICAgICAgPC90aD5cclxuICAgICAgIDx0aD5cclxuICAgICAgICB7e1wiaW5kdWN0aW9uLmVtcGxveW1lbnQudGFibGUuc2VwLnJlYXNvblwifHRyYW5zbGF0ZX19XHJcbiAgICAgICA8L3RoPlxyXG4gICAgICAgXHJcbiAgICA8L3RyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgXHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtZW1wbG95ZXIgbGV0LXJvd0luZGV4PVwicm93SW5kZXhcIj5cclxuICAgIDx0ciBjbGFzcz1cInVpLXNlbGVjdGFibGUtcm93XCIgW25nQ2xhc3NdPVwiZW1wbG95ZXIuZW1wRGVsZXRlZD09J1knID8gJ3N0cmlrZXRocm91Z2gnIDogbnVsbFwiICpuZ0lmPVwiZW1wbG95ZXIuZGlzcGxheVNlYXNvbmFsRW1wID09PSB0cnVlXCI+XHJcbiAgICAgIFxyXG4gICAgICA8dGQgW3N0eWxlLkNvbG9yXT1cIighZW1wbG95ZXIuaXNFbXBsb3llckVkaXRlZCAmJiBlbXBsb3llci5pc0VtcGxveWVyR3JpZFN1Ym1pdHRlZCkgPyAnI2ViNDQ1YSc6JydcIlxyXG4gICAgICAqbmdJZj1cImVtcGxveWVyLm9zYUJwRW1wbG95ZXJGbGFnID09PSAnMScgJiYgZW1wbG95ZXIuZW1wbG95ZXJUeXBlID09PSdSRUcnICYmIGVtcGxveWVyLmVtcGxveWVyRGF0YS5kaXNwbGF5U3RhdGUgIT0gbnVsbDsgZWxzZSB3b3JrU3RhdGVcIiAgY29sc3Bhbj1cIjJcIiBjbGFzcz1cImRhdGFIZWFkaW5nc1wiIHN0eWxlPVwid2lkdGg6MjAlO1wiID48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+RW1wbG95ZXI8L3NwYW4+PHNwYW4gY2xhc3M9XCJkaXNwbGF5TmFtZVwiPlxyXG4gICAgICAgIHt7ZW1wbG95ZXIuZW1wbG95ZXJEYXRhLmRpc3BsYXlOYW1lfX0gLSB7e2VtcGxveWVyLmVtcGxveWVyRGF0YS5kaXNwbGF5U3RhdGUudGV4dH19PGJyPlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjd29ya1N0YXRlPlxyXG4gICAgICAgIDx0ZCBbc3R5bGUuQ29sb3JdPVwiKCFlbXBsb3llci5pc0VtcGxveWVyRWRpdGVkICYmIGVtcGxveWVyLmlzRW1wbG95ZXJHcmlkU3VibWl0dGVkKSA/ICcjZWI0NDVhJzonJ1wiXHJcbiAgICAgICAgKm5nSWY9XCJlbXBsb3llci5vc2FCcEVtcGxveWVyRmxhZyA9PT0gJzEnICYmIGVtcGxveWVyLmVtcGxveWVyVHlwZSA9PT0nUkVHJyAmJiBlbXBsb3llci53b3JrU3RhdGUgIT0gbnVsbDsgZWxzZSBub3RPc2FCcEFuZFJlZ0VtcGxveWVyXCIgIGNvbHNwYW49XCIyXCIgY2xhc3M9XCJkYXRhSGVhZGluZ3NcIiBzdHlsZT1cIndpZHRoOjIwJTtcIiA+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPkVtcGxveWVyPC9zcGFuPjxzcGFuIGNsYXNzPVwiZGlzcGxheU5hbWVcIj5cclxuICAgICAgICAgIHt7ZW1wbG95ZXIuZW1wbG95ZXJEYXRhLmRpc3BsYXlOYW1lfX0gLSB7e2VtcGxveWVyLndvcmtTdGF0ZS50ZXh0fX08YnI+XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjbm90T3NhQnBBbmRSZWdFbXBsb3llcj5cclxuICAgICAgICA8dGQgW3N0eWxlLkNvbG9yXT1cIighZW1wbG95ZXIuaXNFbXBsb3llckVkaXRlZCAmJiBlbXBsb3llci5pc0VtcGxveWVyR3JpZFN1Ym1pdHRlZCkgPyAnI2ViNDQ1YSc6JydcIlxyXG4gICAgICAgICpuZ0lmPVwiZW1wbG95ZXIuZW1wbG95ZXJEYXRhLmRpc3BsYXlOYW1lICYmIGVtcGxveWVyLmVtcGxveWVyVHlwZSE9J01JTCdcIiAgY29sc3Bhbj1cIjJcIiBjbGFzcz1cImRhdGFIZWFkaW5nc1wiIHN0eWxlPVwid2lkdGg6MjAlO1wiID48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+RW1wbG95ZXI8L3NwYW4+PHNwYW4gY2xhc3M9XCJkaXNwbGF5TmFtZVwiPlxyXG4gICAgICAgICAge3tlbXBsb3llci5lbXBsb3llckRhdGEuZGlzcGxheU5hbWV9fSA8YnI+XHJcbiAgICAgICAgPC9zcGFuPjxkaXYgc3R5bGU9XCJmb250LXNpemU6IDEycHg7XCIgY2xhc3M9XCJkaXNwbGF5TmFtZVRleHRcIiBbaW5uZXJIdG1sXT1cImVtcGxveWVyLmVtcGxveWVyRGF0YS5tYWlsaW5nQWRkcmVzc0Rpc3BsYXkgfCB0cnVzdEh0bWxcIj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3RkPiAgICAgICAgIFxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIFxyXG4gICAgICA8dGQgW3N0eWxlLkNvbG9yXT1cIighZW1wbG95ZXIuaXNFbXBsb3llckVkaXRlZCAmJiBlbXBsb3llci5pc0VtcGxveWVyR3JpZFN1Ym1pdHRlZCkgPyAnI2ViNDQ1YSc6JydcIlxyXG4gICAgICAqbmdJZj1cIiFlbXBsb3llci5lbXBsb3llckRhdGEuZGlzcGxheU5hbWUgJiYgZW1wbG95ZXIuZW1wbG95ZXJUeXBlIT0nTUlMJ1wiICBjb2xzcGFuPVwiMlwiIGNsYXNzPVwiZGF0YUhlYWRpbmdzXCIgc3R5bGU9XCJ3aWR0aDoyMCU7XCIgPjxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj5FbXBsb3llcjwvc3Bhbj48c3Bhbj5cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICAgIDwvdGQ+XHJcblxyXG4gICAgICA8dGQgW3N0eWxlLkNvbG9yXT1cIighZW1wbG95ZXIuaXNFbXBsb3llckVkaXRlZCAmJiBlbXBsb3llci5pc0VtcGxveWVyR3JpZFN1Ym1pdHRlZCkgPyAnI2ViNDQ1YSc6JydcIlxyXG4gICAgICAqbmdJZj1cImVtcGxveWVyLmVtcGxveWVyVHlwZT09PSdNSUwnXCIgY29sc3Bhbj1cIjJcIiBjbGFzcz1cImRhdGFIZWFkaW5nc1wiIHN0eWxlPVwid2lkdGg6MjAlO1wiID48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+RW1wbG95ZXI8L3NwYW4+PHNwYW4+XHJcbiAgICAgICAgICB7e2VtcGxveWVyLnNlcnZpY2VCcmFuY2gudGV4dH19IDxicj5cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICAgIDx0ZCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj4gXHJcbiAgICAgICAgPGlvbi1idXR0b24gc2l6ZT1cInNtYWxsXCIgICpuZ0lmPVwiZW1wbG95ZXIuYnBFbXBsb3llckZsYWc9PT0nMScgJiYgZW1wbG95ZXIucGF5UmF0ZSAmJiBlbXBsb3llci5zdGFydERhdGUgJiYgZW1wbG95ZXIuZW1wRGVsZXRlZCE9J1knXCIgXHJcbiAgICAgICAgW2NvbG9yXT1cIighZW1wbG95ZXIuaXNFbXBsb3llckVkaXRlZCAmJiBlbXBsb3llci5pc0VtcGxveWVyR3JpZFN1Ym1pdHRlZCkgPyAnZGFuZ2VyJzonc3VjY2VzcydcIiBmaWxsPVwib3V0bGluZVwiIFxyXG4gICAgICAgICAgKGNsaWNrKT1cImVkaXRCYXNlUGVyaW9kRW1wbG95ZXIoZW1wbG95ZXIpO1wiIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiIGFyaWEtbGFiZWw9XCJBZGQgZW1wbG95ZXJcIj5cclxuICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ2VkaXQnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBzaXplPVwic21hbGxcIiAqbmdJZj1cImVtcGxveWVyLmJwRW1wbG95ZXJGbGFnPT09JzAnXCIgZmlsbD1cIm91dGxpbmVcIiBcclxuICAgICAgICBbY29sb3JdPVwiKCFlbXBsb3llci5pc0VtcGxveWVyRWRpdGVkICYmIGVtcGxveWVyLmlzRW1wbG95ZXJHcmlkU3VibWl0dGVkKSA/ICdkYW5nZXInOidzdWNjZXNzJ1wiXHJcbiAgICAgICAgICAoY2xpY2spPVwiZWRpdEVtcGxveWVyKGVtcGxveWVyKTtcIiBjbGFzcz1cImFjdGlvbi1idXR0b25cIiBhcmlhLWxhYmVsPVwiRWRpdCBlbXBsb3llclwiPlxyXG4gICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAnZWRpdCddXCIgY2xhc3M9XCJhY3Rpb24taWNvblwiPjwvZmEtaWNvbj5cclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcblxyXG4gICAgICAgIDxpb24tYnV0dG9uIFtpZF09XCInYnRuQ29uZmlybUVtcGxveWVyLScgKyByb3dJbmRleFwiIHNpemU9XCJzbWFsbFwiIFtjb2xvcl09XCIoIWVtcGxveWVyLmlzRW1wbG95ZXJFZGl0ZWQgJiYgZW1wbG95ZXIuaXNFbXBsb3llckdyaWRTdWJtaXR0ZWQpID8gJ2Rhbmdlcic6J3N1Y2Nlc3MnXCJcclxuICAgICAgICAgKm5nSWY9XCJlbXBsb3llci5icEVtcGxveWVyRmxhZz09PScxJyAmJiAhZW1wbG95ZXIucGF5UmF0ZSAmJiAhZW1wbG95ZXIuc3RhcnREYXRlICYmIGVtcGxveWVyLmVtcERlbGV0ZWQhPSdZJ1wiIGZpbGw9XCJvdXRsaW5lXCIgXHJcbiAgICAgICAgICAoY2xpY2spPVwiZmluaXNoKGVtcGxveWVyKTtcIiBjbGFzcz1cImFjdGlvbi1idXR0b25cIiBhcmlhLWxhYmVsPVwiQ29uZmlybSBlbXBsb3llclwiPlxyXG4gICAgICAgICAgPGZhLWljb24gW2ljb25dPVwidXRpbC5pc1N0YXRlKCdNUycpID8gWydmYWwnLCAnZWRpdCddIDogWydmYWwnLCAnY2hlY2stY2lyY2xlJ11cIiBjbGFzcz1cImFjdGlvbi1pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuXHJcbiAgICAgICAgPGlvbi1idXR0b24gW2lkXT1cIididG5EZWxldGVFbXBsb3llci0nICsgcm93SW5kZXhcIiBzaXplPVwic21hbGxcIiAqbmdJZj1cImVtcGxveWVyLmJwRW1wbG95ZXJGbGFnPT09JzAnXCIgY29sb3I9XCJzdWNjZXNzXCIgZmlsbD1cIm91dGxpbmVcIiBcclxuICAgICAgICAgIChjbGljayk9XCJkZWxldGVFbXBsb3llcihyb3dJbmRleCk7XCIgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCIgYXJpYS1sYWJlbD1cIlJlbW92ZSBlbXBsb3llclwiIHN0eWxlPVwicGFkZGluZy1sZWZ0OiA1cHg7XCI+XHJcbiAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJbJ2ZhbCcsICd0cmFzaC1hbHQnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBbaWRdPVwiJ2J0blJlbW92ZUVtcGxveWVyLScgKyByb3dJbmRleFwiIHNpemU9XCJzbWFsbFwiICpuZ0lmPVwiZW1wbG95ZXIuYnBFbXBsb3llckZsYWc9PT0nMScgJiYgZW1wbG95ZXIuZW1wRGVsZXRlZCE9J1knXCIgY29sb3I9XCJzdWNjZXNzXCIgZmlsbD1cIm91dGxpbmVcIiBcclxuICAgICAgICAgIChjbGljayk9XCJyZW1vdmVFbXBsb3ltZW50KGVtcGxveWVyLCByb3dJbmRleCk7XCIgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCIgYXJpYS1sYWJlbD1cIlJlbW92ZSBlbXBsb3llclwiIHN0eWxlPVwicGFkZGluZy1sZWZ0OiA1cHg7XCI+XHJcbiAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJbJ2ZhbCcsICd0cmFzaC1hbHQnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBzaXplPVwic21hbGxcIiAqbmdJZj1cImVtcGxveWVyLmJwRW1wbG95ZXJGbGFnPT09JzEnICYmIGVtcGxveWVyLmVtcERlbGV0ZWQ9PSdZJ1wiIGNvbG9yPVwic3VjY2Vzc1wiIGZpbGw9XCJvdXRsaW5lXCIgXHJcbiAgICAgICAgICAoY2xpY2spPVwicmVzdG9yZUVtcGxveW1lbnQoZW1wbG95ZXIsIHJvd0luZGV4KTtcIiBjbGFzcz1cImFjdGlvbi1idXR0b25cIiBhcmlhLWxhYmVsPVwiUmVzdG9yZVwiPlxyXG4gICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAndHJhc2gtcmVzdG9yZS1hbHQnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICA8L3RkPiAgICBcclxuICAgICAgPHRkICpuZ0lmPVwiZW1wbG95ZXIuam9iVGlsZU9yUG9zaXRpb24gJiYgIWVtcGxveWVyLmZlZEpvYlRpbGVPclBvc2l0aW9uXCI+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPkpvYiBUaXRsZTwvc3Bhbj57e2VtcGxveWVyLmpvYlRpbGVPclBvc2l0aW9ufX08L3RkPlxyXG5cclxuICAgICAgPHRkICpuZ0lmPVwiZW1wbG95ZXIuZmVkSm9iVGlsZU9yUG9zaXRpb24gJiYgIWVtcGxveWVyLmpvYlRpbGVPclBvc2l0aW9uXCI+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPkpvYiBUaXRsZTwvc3Bhbj57e2VtcGxveWVyLmZlZEpvYlRpbGVPclBvc2l0aW9ufX08L3RkPlxyXG5cclxuICAgICAgPHRkICpuZ0lmPVwiZW1wbG95ZXIuZW1wbG95ZXJUeXBlID09J01JTCdcIj48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+Sm9iIFRpdGxlPC9zcGFuPjwvdGQ+XHJcblxyXG4gICAgICAgICAgICBcclxuICAgICAgPHRkICpuZ0lmPVwiZW1wbG95ZXIuZW1wbG95ZXJUeXBlICE9J01JTCcgJiYgZW1wbG95ZXIucGF5UmF0ZSAmJiBlbXBsb3llci5wYXlSYXRlRnJlcXVlbmN5XCI+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPlBheTwvc3Bhbj57e2VtcGxveWVyLnBheVJhdGUgfCBjdXJyZW5jeX19L3t7ZW1wbG95ZXIucGF5UmF0ZUZyZXF1ZW5jeS50ZXh0fX08L3RkPlxyXG4gICAgICA8dGQgKm5nSWY9XCJlbXBsb3llci5lbXBsb3llclR5cGUgPT0nTUlMJ1wiPjxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj5QYXk8L3NwYW4+PC90ZD5cclxuXHJcbiAgICAgIFxyXG4gICAgICA8dGQgKm5nSWY9XCJlbXBsb3llci5lbXBsb3llclR5cGU9PT0nUkVHJyAmJiBlbXBsb3llci5zdGFydERhdGUgJiYgZW1wbG95ZXIuZW5kRGF0ZVwiPjxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj5TdGFydCBhbmQgRW5kPC9zcGFuPlxyXG4gICAgICAgIHt7ZW1wbG95ZXIuc3RhcnREYXRlIHwgZGF0ZTonTS9kL3l5eXknfX0gLSB7e2VtcGxveWVyLmVuZERhdGUgfCBkYXRlOidNL2QveXl5eSd9fVxyXG4gICAgICA8L3RkPlxyXG4gICAgICBcclxuICAgICAgPHRkICpuZ0lmPVwiZW1wbG95ZXIuZW1wbG95ZXJUeXBlPT09J0ZFRCcgJiYgZW1wbG95ZXIuc3RhcnREYXRlRmVkICYmIGVtcGxveWVyLmVuZERhdGVGZWRcIj48c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+U3RhcnQgYW5kIEVuZDwvc3Bhbj5cclxuICAgICAgICB7e2VtcGxveWVyLnN0YXJ0RGF0ZUZlZCB8IGRhdGU6J00vZC95eXl5J319IC0ge3tlbXBsb3llci5lbmREYXRlRmVkIHwgZGF0ZTonTS9kL3l5eXknfX1cclxuICAgICAgPC90ZD5cclxuXHJcbiAgICAgIDx0ZCAqbmdJZj1cImVtcGxveWVyLmVtcGxveWVyVHlwZT09PSdNSUwnICYmIGVtcGxveWVyLnN0YXJ0RGF0ZU1pbCAmJiBlbXBsb3llci5lbmREYXRlTWlsXCI+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPlN0YXJ0IGFuZCBFbmQ8L3NwYW4+XHJcbiAgICAgICAge3tlbXBsb3llci5zdGFydERhdGVNaWwgfCBkYXRlOidNL2QveXl5eSd9fSAtIHt7ZW1wbG95ZXIuZW5kRGF0ZU1pbCB8IGRhdGU6J00vZC95eXl5J319XHJcbiAgICAgIDwvdGQ+XHJcblxyXG5cclxuICAgICAgPHRkICpuZ0lmPVwiZW1wbG95ZXIuZW1wbG95ZXJUeXBlIT0nTUlMJyAmJiBlbXBsb3llci5yZWFzb25TZXBhcmF0aW9uXCI+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPlNlcGFyYXRpb24gUmVhc29uPC9zcGFuPnt7ZW1wbG95ZXIucmVhc29uU2VwYXJhdGlvbi50ZXh0fX1cclxuICAgICAgPC90ZD5cclxuXHJcbiAgICAgIDx0ZCAqbmdJZj1cImVtcGxveWVyLmVtcGxveWVyVHlwZT09PSdNSUwnXCI+PHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPlNlcGFyYXRpb24gUmVhc29uPC9zcGFuPlxyXG4gICAgICA8L3RkPlxyXG4gICAgICBcclxuICAgICAgPHRkIGNvbHNwYW49XCI0XCI+PC90ZD5cclxuXHJcbiAgICAgIFxyXG4gICAgICBcclxuICAgIDwvdHI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cInN1bW1hcnlcIiBsZXQtY29sdW1ucz5cclxuICAgIDx0YWJsZT5cclxuICAgICAgPHRyPlxyXG4gICAgICAgIDx0ZCBbYXR0ci5jb2xzcGFuXT1cIjJcIiBzdHlsZT1cIndpZHRoOiA0MCU7XCIgY2xhc3M9XCJhY3Rpb24tZm9vdGVyXCI+XHJcbiAgICAgICAgICA8ZGl2IFtpbm5lckh0bWxdPVwiJ2luZHVjdGlvbi5lbXBsb3ltZW50LmZvb3Rlci5sYWJlbCcgfCB0cmFuc2xhdGUgfCB0cnVzdEh0bWxcIj48L2Rpdj5cclxuICAgICAgICA8L3RkPlxyXG4gICAgICAgIDx0ZCBjbGFzcz1cImFkZC1lbXBsb3llclwiPlxyXG4gICAgICAgICAgPGlvbi1idXR0b24gZmlsbD1cIm91dGxpbmVcIiBzaXplPVwic21hbGxcIiBjbGFzcz1cImFjdGlvbi1idXR0b25cIiAoY2xpY2spPVwiYWRkTmV3RW1wRGV0YWlscygpXCIgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCIgYXJpYS1sYWJlbD1cIkFkZCBlbXBsb3llclwiIFtpZF09XCInYnRuQWRkRW1wbG95ZXInXCI+XHJcbiAgICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ3BsdXMnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgICA8dGQgY29sc3Bhbj1cIjRcIj4mbmJzcDs8L3RkPlxyXG4gICAgICA8L3RyPlxyXG4gICAgPC90YWJsZT5cclxuICA8L25nLXRlbXBsYXRlPlxyXG5cclxuPC9wLXRhYmxlPlxyXG4gIDxhcHAtYWRkLWVtcGxveWVyICpuZ0lmPVwiZGlzcGxheVwiIChzdWNjZXNzKT1cImFkZEVtcGxveWVyKCRldmVudClcIiAgW3JlY29yZEluZGV4VG9FZGl0XT1cImluZGV4VG9FZGl0XCIgXHJcbiAgICAoYmFzZVBlcmlvZEluZGV4KT1cImRlbGV0ZUJwRW1wbCgkZXZlbnQpXCIgW2lzQmFzZVBlcmlvZEVtcGxveWVyXT1cImlzQmFzZVBlcmlvZEVtcGxveWVyXCIgW2lzTmV3Q2xhaW1dPVwiaXNOZXdDbGFpbVwiIFxyXG4gICAgKG1vZGVsQ2FuY2VsKT1cIm9uTW9kZWxDYW5jZWwoJGV2ZW50KVwiIFtkb2JdPVwiY2xhaW1hbnREb2JcIj5cclxuICA8L2FwcC1hZGQtZW1wbG95ZXI+XHJcblxyXG4gIDxwLWRpYWxvZyBbdmlzaWJsZV09XCJzaG93Q29uZmlybVBvcHVwXCIgW21vZGFsXT1cInRydWVcIiBhcHBlbmRUbz1cImJvZHlcIiBwb3NpdGlvbj1cInRvcFwiIFticmVha3BvaW50c109XCJ7JzEyMDBweCc6ICc2NjBweCcsICc5OTJweCc6ICc2NjBweCcsICc3NjhweCc6ICc2NjBweCcsICc1NzZweCc6ICcxMDB2dyd9XCIgW3N0eWxlXT1cInt3aWR0aDogJzQ1dncnfVwiXHJcbiAgICBbYmFzZVpJbmRleF09XCI1MDAwXCIgW2RyYWdnYWJsZV09XCJmYWxzZVwiIFtyZXNpemFibGVdPVwiZmFsc2VcIiBhcHBlbmRUbz1cImJvZHlcIiBjbG9zZU9uRXNjYXBlPVwiZmFsc2VcIiAqbmdJZj1cInNlbGVjdGVkRW1wbG95ZXJcIj5cclxuICAgICAgICA8aDQgY2xhc3M9XCJoZWFkaW5nXCI+e3snaW5kdWN0aW9uLmVtcGxveW1lbnQuZ3JpZC5wb3B1cC5oZWFkaW5nJyB8IHRyYW5zbGF0ZX19PC9oND5cclxuICAgICAgICA8aW9uLWxhYmVsPlxyXG4gICAgICAgICAge3tzZWxlY3RlZEVtcGxveWVyLmVtcGxveWVyRGF0YS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRFbXBsb3llci5lbXBsb3llckRhdGEudHJhZGVOYW1lICE9IG51bGxcIj5cclxuICAgICAgICAgICAge3tcImluZHVjdGlvbi5jb25maXJtLmVtcGxveW1lbnQuZGJhXCJ8dHJhbnNsYXRlfX0ge3tzZWxlY3RlZEVtcGxveWVyLmVtcGxveWVyRGF0YS50cmFkZU5hbWV9fTwvZGl2PlxyXG4gICAgICAgICAgPGJyPlxyXG4gICAgICAgIDwvaW9uLWxhYmVsPlxyXG4gICAgICAgIDxpb24tbGFiZWw+PGRpdiBzdHlsZT1cImZvbnQtc2l6ZTogMTJweDtcIiBbaW5uZXJIdG1sXT1cInNlbGVjdGVkRW1wbG95ZXIuZW1wbG95ZXJEYXRhLm1haWxpbmdBZGRyZXNzRGlzcGxheSB8IHRydXN0SHRtbFwiPjwvZGl2PjwvaW9uLWxhYmVsPjxici8+XHJcbiAgICAgICAgPGlvbi1sYWJlbD5cclxuICAgICAgICAgIHt7J2luZHVjdGlvbi5lbXBsb3ltZW50LmdyaWQucG9wdXAuZmFpbHVyZS5sYWJlbCcgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgIDwvaW9uLWxhYmVsPjxici8+PGJyLz5cclxuICAgICAgICA8aW9uLWxhYmVsPlxyXG4gICAgICAgICAgPGRpdiBbaW5uZXJIdG1sXT1cIlsnaW5kdWN0aW9uLmVtcGxveW1lbnQuZ3JpZC5wb3B1cC5kaWRudC53b3JrLmxhYmVsJyB8IHRyYW5zbGF0ZV1cIj48L2Rpdj5cclxuICAgICAgICA8L2lvbi1sYWJlbD5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZm9vdGVyXCI+XHJcbiAgICAgICAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwicm91bmRcIiB0eXBlPVwic3VibWl0XCIgZmlsbD1cIm91dGxpbmVcIiAoY2xpY2spPVwiY2xvc2UoKVwiPlxyXG4gICAgICAgICAgICAgIHt7J2luZHVjdGlvbi5lbXBsb3ltZW50LmdyaWQucG9wdXAuY2FuY2VsJyB8IHRyYW5zbGF0ZX19XHJcbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICAgICAgPGlvbi1idXR0b24gc2hhcGU9XCJyb3VuZFwiIHR5cGU9XCJzdWJtaXRcIiBmaWxsPVwic29saWRcIiAoY2xpY2spPVwicmVtb3ZlQmFzZVBlcmlvZEVtcGxveWVyKClcIj5cclxuICAgICAgICAgICAgICB7eydpbmR1Y3Rpb24uZW1wbG95bWVudC5ncmlkLnBvcHVwLnJlbW92ZScgfCB0cmFuc2xhdGV9fVxyXG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvcC1kaWFsb2c+XHJcbjwvZGl2PiJdfQ==