@reusa/ngx-reusa-app-lib 0.0.1323 → 0.0.1324

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 (536) hide show
  1. package/esm2022/lib/components/add-employer/add-employer.component.mjs +1324 -2386
  2. package/esm2022/lib/components/add-participant/add-participant.component.mjs +105 -159
  3. package/esm2022/lib/components/add-payment/add-payment.component.mjs +53 -59
  4. package/esm2022/lib/components/address/address.component.mjs +150 -285
  5. package/esm2022/lib/components/bank-details/bank-details.component.mjs +219 -79
  6. package/esm2022/lib/components/contact-us/contact-us.component.mjs +43 -17
  7. package/esm2022/lib/components/correspondence-download/correspondence-download.component.mjs +9 -3
  8. package/esm2022/lib/components/dashboard-card/dashboard-card.component.mjs +4 -32
  9. package/esm2022/lib/components/dependent-grid/dependent-grid.component.mjs +15 -30
  10. package/esm2022/lib/components/disclosure/disclosure.component.mjs +1 -1
  11. package/esm2022/lib/components/dropdown/dropdown.component.mjs +4 -4
  12. package/esm2022/lib/components/dropdown/dropdown.interface.mjs +1 -1
  13. package/esm2022/lib/components/email-update/email-update.component.mjs +140 -63
  14. package/esm2022/lib/components/employer-grid/employer-grid.component.mjs +560 -363
  15. package/esm2022/lib/components/error/error.component.mjs +5 -22
  16. package/esm2022/lib/components/fav-menu/fav-menu.component.mjs +1 -1
  17. package/esm2022/lib/components/file-uploader/file-uploader.component.mjs +49 -178
  18. package/esm2022/lib/components/footer/footer.component.mjs +83 -94
  19. package/esm2022/lib/components/header/header.component.mjs +174 -440
  20. package/esm2022/lib/components/idle-detector/idle-detector.component.mjs +36 -25
  21. package/esm2022/lib/components/info/info.component.mjs +12 -4
  22. package/esm2022/lib/components/job-search-result-page/job-search-result-page.component.mjs +22 -16
  23. package/esm2022/lib/components/job-title/job-title.component.mjs +97 -92
  24. package/esm2022/lib/components/legal-disclaimar/legal-disclaimar.component.mjs +513 -143
  25. package/esm2022/lib/components/lexis-nexis/lexis-nexis.component.mjs +402 -0
  26. package/esm2022/lib/components/link/link.component.mjs +1 -1
  27. package/esm2022/lib/components/menu/menu.component.mjs +100 -69
  28. package/esm2022/lib/components/mfa/mfa.component.mjs +287 -158
  29. package/esm2022/lib/components/mfa-popup/mfa-popup.component.mjs +18 -11
  30. package/esm2022/lib/components/mfa2/mfa2.component.mjs +285 -0
  31. package/esm2022/lib/components/money-expect/money-expect.component.mjs +54 -158
  32. package/esm2022/lib/components/profile/profile.component.mjs +353 -717
  33. package/esm2022/lib/components/profile-redirect/profile-redirect.component.mjs +38 -108
  34. package/esm2022/lib/components/questionnaire/AppValidators.mjs +47 -296
  35. package/esm2022/lib/components/questionnaire/account-success/account-success.page.mjs +65 -110
  36. package/esm2022/lib/components/questionnaire/common-success/common-success.page.mjs +173 -377
  37. package/esm2022/lib/components/questionnaire/dynamic-form-panel.component.mjs +95 -76
  38. package/esm2022/lib/components/questionnaire/dynamic-form-question.component.mjs +1122 -855
  39. package/esm2022/lib/components/questionnaire/dynamic-form.component.mjs +667 -207
  40. package/esm2022/lib/components/questionnaire/form-builder/form-builder.page.mjs +22 -28
  41. package/esm2022/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.mjs +32 -116
  42. package/esm2022/lib/components/questionnaire/question-control.service.mjs +1 -2
  43. package/esm2022/lib/components/questionnaire/question.service.mjs +7 -5
  44. package/esm2022/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.mjs +29 -15
  45. package/esm2022/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.mjs +237 -491
  46. package/esm2022/lib/components/search-employer/search-employer.component.mjs +30 -155
  47. package/esm2022/lib/components/security-question/security-question.component.mjs +199 -0
  48. package/esm2022/lib/components/select/select.component.mjs +10 -5
  49. package/esm2022/lib/components/sign-ssn/sign-ssn.component.mjs +3 -3
  50. package/esm2022/lib/components/ssn-reverify/ssn-reverify.component.mjs +72 -52
  51. package/esm2022/lib/components/user-login/user-login.component.mjs +357 -139
  52. package/esm2022/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +273 -623
  53. package/esm2022/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.mjs +59 -114
  54. package/esm2022/lib/guards/auth.guard.mjs +2 -50
  55. package/esm2022/lib/guards/no-login/no-login.guard.mjs +1 -1
  56. package/esm2022/lib/interceptors/error-interceptor/http-error-interceptor.mjs +3 -51
  57. package/esm2022/lib/interceptors/header-interceptor/http-header.interceptor.mjs +1 -1
  58. package/esm2022/lib/models/EmployerDetailSearchResult.mjs +1 -1
  59. package/esm2022/lib/models/LexisNexisAccountCreationModel.mjs +2 -0
  60. package/esm2022/lib/models/LexisNexisAuthSelectionRequestModel.mjs +2 -0
  61. package/esm2022/lib/models/LexisNexisAuthSelectionResponseModel.mjs +2 -0
  62. package/esm2022/lib/models/LexisNexisEnabledResponseModel.mjs +2 -0
  63. package/esm2022/lib/models/LexisNexisResponseModel.mjs +3 -0
  64. package/esm2022/lib/models/LibConstants.mjs +6 -45
  65. package/esm2022/lib/models/PartialEmploymentModel.mjs +3 -0
  66. package/esm2022/lib/models/PaymentComponentModel.mjs +1 -1
  67. package/esm2022/lib/models/SecurityQuestionModel.mjs +3 -0
  68. package/esm2022/lib/models/dashboard-model.mjs +1 -1
  69. package/esm2022/lib/models/dependent.model.mjs +1 -1
  70. package/esm2022/lib/models/questionnaire/ClaimAppEmpResponseModel.mjs +1 -1
  71. package/esm2022/lib/models/questionnaire/ClaimAppEmployerDetailsModel.mjs +1 -2
  72. package/esm2022/lib/models/questionnaire/ClaimOnlyEmployerDataModel.mjs +1 -1
  73. package/esm2022/lib/models/questionnaire/ComboModel.mjs +653 -96
  74. package/esm2022/lib/models/questionnaire/ElementsModel.mjs +1 -1
  75. package/esm2022/lib/models/questionnaire/LegalDiscaimarModel.mjs +1 -1
  76. package/esm2022/lib/models/questionnaire/StatusModel.mjs +1 -1
  77. package/esm2022/lib/ngx-reusa-app-lib.module.mjs +23 -135
  78. package/esm2022/lib/pages/BasePage.mjs +23 -4
  79. package/esm2022/lib/pages/common/accessibility-policy/accessibility-policy.page.mjs +18 -22
  80. package/esm2022/lib/pages/common/change-password/change-password.page.mjs +124 -142
  81. package/esm2022/lib/pages/common/landing/landing.component.mjs +8 -7
  82. package/esm2022/lib/pages/common/landing2/landing2.component.mjs +4 -4
  83. package/esm2022/lib/pages/common/login/login.component.mjs +11 -7
  84. package/esm2022/lib/pages/common/privacy-disclaimer/privacy-disclaimer.page.mjs +14 -14
  85. package/esm2022/lib/pages/common/security-policy/security-policy.page.mjs +5 -5
  86. package/esm2022/lib/pages/popovers/language/language.page.mjs +2 -1
  87. package/esm2022/lib/pages/popovers/my-notifications/my-notifications.page.mjs +4 -4
  88. package/esm2022/lib/pages/popovers/my-profile/my-profile.page.mjs +2 -7
  89. package/esm2022/lib/pipes/translate/dynamic-translate.pipe.mjs +2 -2
  90. package/esm2022/lib/services/base-service.mjs +1 -4
  91. package/esm2022/lib/services/chatbot/chatbot.service.mjs +2 -1
  92. package/esm2022/lib/services/claimant-service/claimant-usps-redirect.service.mjs +36 -0
  93. package/esm2022/lib/services/claimant-service/claimant.service.mjs +13 -7
  94. package/esm2022/lib/services/claims/claims.service.mjs +14 -102
  95. package/esm2022/lib/services/help/help.service.mjs +1 -1
  96. package/esm2022/lib/services/lexis-nexis/lexis.nexis.service.mjs +60 -0
  97. package/esm2022/lib/services/logger/logger.service.mjs +1 -1
  98. package/esm2022/lib/services/login/login.service.mjs +11 -29
  99. package/esm2022/lib/services/ovp/ovp.service.mjs +43 -0
  100. package/esm2022/lib/services/questionnaire/questionnaire.service.mjs +1 -4
  101. package/esm2022/lib/services/questionnaire/validation.service.mjs +1 -4
  102. package/esm2022/lib/services/security-service/security.service.mjs +6 -23
  103. package/esm2022/lib/services/util/util.service.mjs +5 -61
  104. package/esm2022/lib/services/weekly-cert/weekly-cert-v2.service.mjs +14 -186
  105. package/esm2022/lib/validations/AppRegex.mjs +3 -1
  106. package/esm2022/lib/validations/AppValidators.mjs +62 -78
  107. package/esm2022/public-api.mjs +5 -47
  108. package/fesm2022/reusa-ngx-reusa-app-lib.mjs +26729 -44608
  109. package/fesm2022/reusa-ngx-reusa-app-lib.mjs.map +1 -1
  110. package/lib/components/add-employer/add-employer.component.d.ts +53 -137
  111. package/lib/components/add-employer/add-employer.component.d.ts.map +1 -1
  112. package/lib/components/add-participant/add-participant.component.d.ts +5 -11
  113. package/lib/components/add-participant/add-participant.component.d.ts.map +1 -1
  114. package/lib/components/add-payment/add-payment.component.d.ts +3 -9
  115. package/lib/components/add-payment/add-payment.component.d.ts.map +1 -1
  116. package/lib/components/address/address.component.d.ts +15 -42
  117. package/lib/components/address/address.component.d.ts.map +1 -1
  118. package/lib/components/bank-details/bank-details.component.d.ts +23 -1
  119. package/lib/components/bank-details/bank-details.component.d.ts.map +1 -1
  120. package/lib/components/contact-us/contact-us.component.d.ts +4 -1
  121. package/lib/components/contact-us/contact-us.component.d.ts.map +1 -1
  122. package/lib/components/correspondence-download/correspondence-download.component.d.ts.map +1 -1
  123. package/lib/components/dashboard-card/dashboard-card.component.d.ts.map +1 -1
  124. package/lib/components/email-update/email-update.component.d.ts +12 -1
  125. package/lib/components/email-update/email-update.component.d.ts.map +1 -1
  126. package/lib/components/employer-grid/employer-grid.component.d.ts +14 -21
  127. package/lib/components/employer-grid/employer-grid.component.d.ts.map +1 -1
  128. package/lib/components/error/error.component.d.ts +2 -3
  129. package/lib/components/error/error.component.d.ts.map +1 -1
  130. package/lib/components/file-uploader/file-uploader.component.d.ts +1 -5
  131. package/lib/components/file-uploader/file-uploader.component.d.ts.map +1 -1
  132. package/lib/components/footer/footer.component.d.ts.map +1 -1
  133. package/lib/components/header/header.component.d.ts +5 -17
  134. package/lib/components/header/header.component.d.ts.map +1 -1
  135. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts +3 -1
  136. package/lib/components/job-search-result-page/job-search-result-page.component.d.ts.map +1 -1
  137. package/lib/components/job-title/job-title.component.d.ts +23 -22
  138. package/lib/components/job-title/job-title.component.d.ts.map +1 -1
  139. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts +6 -5
  140. package/lib/components/legal-disclaimar/legal-disclaimar.component.d.ts.map +1 -1
  141. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts +59 -0
  142. package/lib/components/lexis-nexis/lexis-nexis.component.d.ts.map +1 -0
  143. package/lib/components/menu/menu.component.d.ts +12 -3
  144. package/lib/components/menu/menu.component.d.ts.map +1 -1
  145. package/lib/components/mfa/mfa.component.d.ts +19 -7
  146. package/lib/components/mfa/mfa.component.d.ts.map +1 -1
  147. package/lib/components/mfa-popup/mfa-popup.component.d.ts +8 -6
  148. package/lib/components/mfa-popup/mfa-popup.component.d.ts.map +1 -1
  149. package/lib/components/mfa2/mfa2.component.d.ts +48 -0
  150. package/lib/components/mfa2/mfa2.component.d.ts.map +1 -0
  151. package/lib/components/money-expect/money-expect.component.d.ts +4 -15
  152. package/lib/components/money-expect/money-expect.component.d.ts.map +1 -1
  153. package/lib/components/profile/profile.component.d.ts +49 -81
  154. package/lib/components/profile/profile.component.d.ts.map +1 -1
  155. package/lib/components/profile-redirect/profile-redirect.component.d.ts +2 -9
  156. package/lib/components/profile-redirect/profile-redirect.component.d.ts.map +1 -1
  157. package/lib/components/questionnaire/AppValidators.d.ts +0 -1
  158. package/lib/components/questionnaire/AppValidators.d.ts.map +1 -1
  159. package/lib/components/questionnaire/account-success/account-success.page.d.ts +10 -13
  160. package/lib/components/questionnaire/account-success/account-success.page.d.ts.map +1 -1
  161. package/lib/components/questionnaire/common-success/common-success.page.d.ts +1 -7
  162. package/lib/components/questionnaire/common-success/common-success.page.d.ts.map +1 -1
  163. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts +1 -3
  164. package/lib/components/questionnaire/dynamic-form-panel.component.d.ts.map +1 -1
  165. package/lib/components/questionnaire/dynamic-form-question.component.d.ts +33 -31
  166. package/lib/components/questionnaire/dynamic-form-question.component.d.ts.map +1 -1
  167. package/lib/components/questionnaire/dynamic-form.component.d.ts +34 -10
  168. package/lib/components/questionnaire/dynamic-form.component.d.ts.map +1 -1
  169. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts +7 -0
  170. package/lib/components/questionnaire/form-builder/form-builder.page.d.ts.map +1 -1
  171. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts +1 -7
  172. package/lib/components/questionnaire/multi-questionnaire/multi-questionnaire.component.d.ts.map +1 -1
  173. package/lib/components/questionnaire/question-control.service.d.ts.map +1 -1
  174. package/lib/components/questionnaire/question.service.d.ts +1 -0
  175. package/lib/components/questionnaire/question.service.d.ts.map +1 -1
  176. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts +7 -1
  177. package/lib/components/questionnaire/render-questionnaire/render-questionnaire.page.d.ts.map +1 -1
  178. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts +3 -11
  179. package/lib/components/requalify-lift-previous-issues/requalify-lift-previous-issues.component.d.ts.map +1 -1
  180. package/lib/components/search-employer/search-employer.component.d.ts +4 -5
  181. package/lib/components/search-employer/search-employer.component.d.ts.map +1 -1
  182. package/lib/components/security-question/security-question.component.d.ts +37 -0
  183. package/lib/components/security-question/security-question.component.d.ts.map +1 -0
  184. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts +5 -1
  185. package/lib/components/ssn-reverify/ssn-reverify.component.d.ts.map +1 -1
  186. package/lib/components/user-login/user-login.component.d.ts +38 -5
  187. package/lib/components/user-login/user-login.component.d.ts.map +1 -1
  188. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts +10 -27
  189. package/lib/components/weekly-cert-employer/weekly-cert-employer.component.d.ts.map +1 -1
  190. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts +3 -9
  191. package/lib/components/weekly-cert-employer-grid/weekly-cert-employer-grid.component.d.ts.map +1 -1
  192. package/lib/guards/auth.guard.d.ts.map +1 -1
  193. package/lib/interceptors/error-interceptor/http-error-interceptor.d.ts.map +1 -1
  194. package/lib/models/EmployerDetailSearchResult.d.ts +1 -4
  195. package/lib/models/EmployerDetailSearchResult.d.ts.map +1 -1
  196. package/lib/models/LexisNexisAccountCreationModel.d.ts +15 -0
  197. package/lib/models/LexisNexisAccountCreationModel.d.ts.map +1 -0
  198. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts +16 -0
  199. package/lib/models/LexisNexisAuthSelectionRequestModel.d.ts.map +1 -0
  200. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts +39 -0
  201. package/lib/models/LexisNexisAuthSelectionResponseModel.d.ts.map +1 -0
  202. package/lib/models/LexisNexisEnabledResponseModel.d.ts +5 -0
  203. package/lib/models/LexisNexisEnabledResponseModel.d.ts.map +1 -0
  204. package/lib/models/LexisNexisResponseModel.d.ts +7 -0
  205. package/lib/models/LexisNexisResponseModel.d.ts.map +1 -0
  206. package/lib/models/LibConstants.d.ts +1 -40
  207. package/lib/models/LibConstants.d.ts.map +1 -1
  208. package/lib/models/PartialEmploymentModel.d.ts +6 -0
  209. package/lib/models/PartialEmploymentModel.d.ts.map +1 -0
  210. package/lib/models/PaymentComponentModel.d.ts +1 -1
  211. package/lib/models/PaymentComponentModel.d.ts.map +1 -1
  212. package/lib/models/SecurityQuestionModel.d.ts +7 -0
  213. package/lib/models/SecurityQuestionModel.d.ts.map +1 -0
  214. package/lib/models/dashboard-model.d.ts +0 -22
  215. package/lib/models/dashboard-model.d.ts.map +1 -1
  216. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts +0 -3
  217. package/lib/models/questionnaire/ClaimAppEmpResponseModel.d.ts.map +1 -1
  218. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts +4 -13
  219. package/lib/models/questionnaire/ClaimAppEmployerDetailsModel.d.ts.map +1 -1
  220. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts +1 -4
  221. package/lib/models/questionnaire/ClaimOnlyEmployerDataModel.d.ts.map +1 -1
  222. package/lib/models/questionnaire/ComboModel.d.ts +82 -14
  223. package/lib/models/questionnaire/ComboModel.d.ts.map +1 -1
  224. package/lib/models/questionnaire/ElementsModel.d.ts +1 -0
  225. package/lib/models/questionnaire/ElementsModel.d.ts.map +1 -1
  226. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts +0 -2
  227. package/lib/models/questionnaire/LegalDiscaimarModel.d.ts.map +1 -1
  228. package/lib/models/questionnaire/StatusModel.d.ts +0 -1
  229. package/lib/models/questionnaire/StatusModel.d.ts.map +1 -1
  230. package/lib/ngx-reusa-app-lib.module.d.ts +86 -124
  231. package/lib/ngx-reusa-app-lib.module.d.ts.map +1 -1
  232. package/lib/pages/BasePage.d.ts +6 -3
  233. package/lib/pages/BasePage.d.ts.map +1 -1
  234. package/lib/pages/common/change-password/change-password.page.d.ts +0 -3
  235. package/lib/pages/common/change-password/change-password.page.d.ts.map +1 -1
  236. package/lib/pages/common/login/login.component.d.ts.map +1 -1
  237. package/lib/pages/popovers/language/language.page.d.ts.map +1 -1
  238. package/lib/pages/popovers/my-profile/my-profile.page.d.ts.map +1 -1
  239. package/lib/services/base-service.d.ts +0 -12
  240. package/lib/services/base-service.d.ts.map +1 -1
  241. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts +16 -0
  242. package/lib/services/claimant-service/claimant-usps-redirect.service.d.ts.map +1 -0
  243. package/lib/services/claimant-service/claimant.service.d.ts +6 -5
  244. package/lib/services/claimant-service/claimant.service.d.ts.map +1 -1
  245. package/lib/services/claims/claims.service.d.ts +5 -38
  246. package/lib/services/claims/claims.service.d.ts.map +1 -1
  247. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts +26 -0
  248. package/lib/services/lexis-nexis/lexis.nexis.service.d.ts.map +1 -0
  249. package/lib/services/login/login.service.d.ts +3 -5
  250. package/lib/services/login/login.service.d.ts.map +1 -1
  251. package/lib/services/ovp/ovp.service.d.ts +17 -0
  252. package/lib/services/ovp/ovp.service.d.ts.map +1 -0
  253. package/lib/services/questionnaire/questionnaire.service.d.ts +0 -1
  254. package/lib/services/questionnaire/questionnaire.service.d.ts.map +1 -1
  255. package/lib/services/questionnaire/validation.service.d.ts +0 -3
  256. package/lib/services/questionnaire/validation.service.d.ts.map +1 -1
  257. package/lib/services/security-service/security.service.d.ts +4 -12
  258. package/lib/services/security-service/security.service.d.ts.map +1 -1
  259. package/lib/services/util/util.service.d.ts +0 -6
  260. package/lib/services/util/util.service.d.ts.map +1 -1
  261. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts +5 -47
  262. package/lib/services/weekly-cert/weekly-cert-v2.service.d.ts.map +1 -1
  263. package/lib/validations/AppRegex.d.ts +2 -0
  264. package/lib/validations/AppRegex.d.ts.map +1 -1
  265. package/lib/validations/AppValidators.d.ts +24 -20
  266. package/lib/validations/AppValidators.d.ts.map +1 -1
  267. package/package.json +2 -2
  268. package/public-api.d.ts +4 -46
  269. package/public-api.d.ts.map +1 -1
  270. package/esm2022/lib/components/add-wage/add-wage.component.mjs +0 -161
  271. package/esm2022/lib/components/address-popup/address-popup.component.mjs +0 -97
  272. package/esm2022/lib/components/address-suggestion/address-suggestion.component.mjs +0 -289
  273. package/esm2022/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.mjs +0 -245
  274. package/esm2022/lib/components/associate-ssn/associate-ssn.component.mjs +0 -203
  275. package/esm2022/lib/components/claim-info/claim-info.component.mjs +0 -408
  276. package/esm2022/lib/components/dua-request-page/dua-request-page.component.mjs +0 -596
  277. package/esm2022/lib/components/dua-request-popup/dua-request-popup.component.mjs +0 -356
  278. package/esm2022/lib/components/employer-info/employer-info.component.mjs +0 -319
  279. package/esm2022/lib/components/employer-pay/employer-pay.component.mjs +0 -238
  280. package/esm2022/lib/components/employer-pay-grid/employer-pay-grid.component.mjs +0 -302
  281. package/esm2022/lib/components/farm-usage/farm-usage.component.mjs +0 -172
  282. package/esm2022/lib/components/gross-earnings/gross-earnings.component.mjs +0 -201
  283. package/esm2022/lib/components/history-page/history-page.component.mjs +0 -571
  284. package/esm2022/lib/components/idme/idme.component.mjs +0 -84
  285. package/esm2022/lib/components/offline-add-employer/offline-add-employer.component.mjs +0 -3661
  286. package/esm2022/lib/components/offline-bank-details/offline-bank-details.component.mjs +0 -258
  287. package/esm2022/lib/components/offline-employer-grid/offline-employer-grid.component.mjs +0 -853
  288. package/esm2022/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.mjs +0 -251
  289. package/esm2022/lib/components/proof-of-anything/proof-of-anything.component.mjs +0 -261
  290. package/esm2022/lib/components/proof-of-document-upload/proof-of-document-upload.component.mjs +0 -560
  291. package/esm2022/lib/components/scrollable-text/scrollable-text.component.mjs +0 -25
  292. package/esm2022/lib/components/sms/sms.component.mjs +0 -336
  293. package/esm2022/lib/components/wage-calculator/wage-calculator.component.mjs +0 -527
  294. package/esm2022/lib/components/wage-grid/wage-grid.component.mjs +0 -274
  295. package/esm2022/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.mjs +0 -147
  296. package/esm2022/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.mjs +0 -167
  297. package/esm2022/lib/components/weekly-certification/weekly-certification.component.mjs +0 -806
  298. package/esm2022/lib/components/weekly-confirmation/confirmation.component.mjs +0 -129
  299. package/esm2022/lib/components/weekly-interim-confirmation/interim-confirmation.component.mjs +0 -136
  300. package/esm2022/lib/components/weekly-summary-v2/summary.component-v2.mjs +0 -72
  301. package/esm2022/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.mjs +0 -50
  302. package/esm2022/lib/components/weekly-work-search-counter/work-search-counter.component.mjs +0 -92
  303. package/esm2022/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.mjs +0 -1190
  304. package/esm2022/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.mjs +0 -685
  305. package/esm2022/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.mjs +0 -524
  306. package/esm2022/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.mjs +0 -394
  307. package/esm2022/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.mjs +0 -640
  308. package/esm2022/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.mjs +0 -33
  309. package/esm2022/lib/enums/AddressValidationResponseEnum.mjs +0 -9
  310. package/esm2022/lib/enums/AddressValidationSourceFunctionEnum.mjs +0 -5
  311. package/esm2022/lib/models/ActiveClaimModel.mjs +0 -3
  312. package/esm2022/lib/models/CountyModel.mjs +0 -3
  313. package/esm2022/lib/models/DuaAppDataModel.mjs +0 -3
  314. package/esm2022/lib/models/DuaRequestModel.mjs +0 -3
  315. package/esm2022/lib/models/DuaRetroWeeksComponentModel.mjs +0 -6
  316. package/esm2022/lib/models/EmployerInfoComponentModel.mjs +0 -4
  317. package/esm2022/lib/models/EmployerPayInfoModel.mjs +0 -6
  318. package/esm2022/lib/models/FarmUsageComponentModel.mjs +0 -2
  319. package/esm2022/lib/models/GrossEarningsModel.mjs +0 -3
  320. package/esm2022/lib/models/HelpConstants.mjs +0 -5
  321. package/esm2022/lib/models/LexisNexisOtpDetailsResponseModel.mjs +0 -3
  322. package/esm2022/lib/models/ReasonSeparationRequestModel.mjs +0 -3
  323. package/esm2022/lib/models/RetroWeeksModel.mjs +0 -3
  324. package/esm2022/lib/models/SecurityQuestionAnswerModel.mjs +0 -3
  325. package/esm2022/lib/models/SendOtpRequestModel.mjs +0 -3
  326. package/esm2022/lib/models/VerifyOtpRequestModel.mjs +0 -3
  327. package/esm2022/lib/models/WageCalculatorModel.mjs +0 -3
  328. package/esm2022/lib/models/WageInfoModel.mjs +0 -4
  329. package/esm2022/lib/models/addressValidation/AddressRecommendationModel.mjs +0 -3
  330. package/esm2022/lib/models/addressValidation/AddressValidationRequestComponentModel.mjs +0 -3
  331. package/esm2022/lib/models/addressValidation/AddressValidationResponseComponentModel.mjs +0 -3
  332. package/esm2022/lib/models/addressValidation/AddressValidationReturnComponentModel.mjs +0 -3
  333. package/esm2022/lib/models/combo-model.mjs +0 -343
  334. package/esm2022/lib/models/fileupload/DocUploadModel.mjs +0 -7
  335. package/esm2022/lib/models/fileupload/EmployerDataModel.mjs +0 -3
  336. package/esm2022/lib/models/fileupload/FileObject.mjs +0 -3
  337. package/esm2022/lib/models/fileupload/FileObjectArray.mjs +0 -7
  338. package/esm2022/lib/models/questionnaire/AppealParticipantModel.mjs +0 -8
  339. package/esm2022/lib/models/questionnaire/ScrollableTextModel.mjs +0 -3
  340. package/esm2022/lib/models/questionnaire/WbaHelperTextModel.mjs +0 -3
  341. package/esm2022/lib/models/weekly-cert/WorkSearchWaiverModel.mjs +0 -3
  342. package/esm2022/lib/models/weekly-cert/address-detail-model.mjs +0 -2
  343. package/esm2022/lib/models/weekly-cert/admin-leave-details-model.mjs +0 -7
  344. package/esm2022/lib/models/weekly-cert/employer-info-v2-model.mjs +0 -7
  345. package/esm2022/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.mjs +0 -6
  346. package/esm2022/lib/models/weekly-cert/weekly-certification-v2-model.mjs +0 -34
  347. package/esm2022/lib/models/weekly-cert/work-search-record-v2-model.mjs +0 -15
  348. package/esm2022/lib/models/weekly-cert/work-search-v2-model.mjs +0 -11
  349. package/esm2022/lib/pipes/format-worksearch/format-worksearch.pipe.mjs +0 -101
  350. package/esm2022/lib/services/address-validation-service/address-validation.service.mjs +0 -151
  351. package/esm2022/lib/services/appeal/appeal.service.mjs +0 -37
  352. package/esm2022/lib/services/birt-service/birt.service.mjs +0 -57
  353. package/esm2022/lib/services/employer/employer-service.mjs +0 -35
  354. package/esm2022/lib/services/event-service/event-service.mjs +0 -44
  355. package/esm2022/lib/services/offline-claims/offline-claims.service.mjs +0 -327
  356. package/esm2022/lib/services/weekly-cert/review.service.mjs +0 -101
  357. package/esm2022/lib/services/weekly-cert/weekly-cert.service.mjs +0 -37
  358. package/esm2022/lib/services/weekly-cert/work-search.service.mjs +0 -58
  359. package/lib/components/add-wage/add-wage.component.d.ts +0 -30
  360. package/lib/components/add-wage/add-wage.component.d.ts.map +0 -1
  361. package/lib/components/address-popup/address-popup.component.d.ts +0 -16
  362. package/lib/components/address-popup/address-popup.component.d.ts.map +0 -1
  363. package/lib/components/address-suggestion/address-suggestion.component.d.ts +0 -43
  364. package/lib/components/address-suggestion/address-suggestion.component.d.ts.map +0 -1
  365. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts +0 -37
  366. package/lib/components/appointment-self-scheduler/appointment-self-scheduler.component.d.ts.map +0 -1
  367. package/lib/components/associate-ssn/associate-ssn.component.d.ts +0 -33
  368. package/lib/components/associate-ssn/associate-ssn.component.d.ts.map +0 -1
  369. package/lib/components/claim-info/claim-info.component.d.ts +0 -49
  370. package/lib/components/claim-info/claim-info.component.d.ts.map +0 -1
  371. package/lib/components/dua-request-page/dua-request-page.component.d.ts +0 -74
  372. package/lib/components/dua-request-page/dua-request-page.component.d.ts.map +0 -1
  373. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts +0 -61
  374. package/lib/components/dua-request-popup/dua-request-popup.component.d.ts.map +0 -1
  375. package/lib/components/employer-info/employer-info.component.d.ts +0 -50
  376. package/lib/components/employer-info/employer-info.component.d.ts.map +0 -1
  377. package/lib/components/employer-pay/employer-pay.component.d.ts +0 -51
  378. package/lib/components/employer-pay/employer-pay.component.d.ts.map +0 -1
  379. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts +0 -43
  380. package/lib/components/employer-pay-grid/employer-pay-grid.component.d.ts.map +0 -1
  381. package/lib/components/farm-usage/farm-usage.component.d.ts +0 -33
  382. package/lib/components/farm-usage/farm-usage.component.d.ts.map +0 -1
  383. package/lib/components/gross-earnings/gross-earnings.component.d.ts +0 -42
  384. package/lib/components/gross-earnings/gross-earnings.component.d.ts.map +0 -1
  385. package/lib/components/history-page/history-page.component.d.ts +0 -80
  386. package/lib/components/history-page/history-page.component.d.ts.map +0 -1
  387. package/lib/components/idme/idme.component.d.ts +0 -19
  388. package/lib/components/idme/idme.component.d.ts.map +0 -1
  389. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts +0 -311
  390. package/lib/components/offline-add-employer/offline-add-employer.component.d.ts.map +0 -1
  391. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts +0 -33
  392. package/lib/components/offline-bank-details/offline-bank-details.component.d.ts.map +0 -1
  393. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts +0 -97
  394. package/lib/components/offline-employer-grid/offline-employer-grid.component.d.ts.map +0 -1
  395. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts +0 -33
  396. package/lib/components/offline-legal-disclaimar/offline-legal-disclaimar.component.d.ts.map +0 -1
  397. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts +0 -54
  398. package/lib/components/proof-of-anything/proof-of-anything.component.d.ts.map +0 -1
  399. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts +0 -74
  400. package/lib/components/proof-of-document-upload/proof-of-document-upload.component.d.ts.map +0 -1
  401. package/lib/components/scrollable-text/scrollable-text.component.d.ts +0 -11
  402. package/lib/components/scrollable-text/scrollable-text.component.d.ts.map +0 -1
  403. package/lib/components/sms/sms.component.d.ts +0 -63
  404. package/lib/components/sms/sms.component.d.ts.map +0 -1
  405. package/lib/components/wage-calculator/wage-calculator.component.d.ts +0 -44
  406. package/lib/components/wage-calculator/wage-calculator.component.d.ts.map +0 -1
  407. package/lib/components/wage-grid/wage-grid.component.d.ts +0 -43
  408. package/lib/components/wage-grid/wage-grid.component.d.ts.map +0 -1
  409. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts +0 -28
  410. package/lib/components/weekly-acknowledgement-ms/acknowledgement-ms.component.d.ts.map +0 -1
  411. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts +0 -28
  412. package/lib/components/weekly-acknowledgement-v2/acknowledgement.component-v2.d.ts.map +0 -1
  413. package/lib/components/weekly-certification/weekly-certification.component.d.ts +0 -101
  414. package/lib/components/weekly-certification/weekly-certification.component.d.ts.map +0 -1
  415. package/lib/components/weekly-confirmation/confirmation.component.d.ts +0 -21
  416. package/lib/components/weekly-confirmation/confirmation.component.d.ts.map +0 -1
  417. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts +0 -34
  418. package/lib/components/weekly-interim-confirmation/interim-confirmation.component.d.ts.map +0 -1
  419. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts +0 -17
  420. package/lib/components/weekly-summary-v2/summary.component-v2.d.ts.map +0 -1
  421. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts +0 -10
  422. package/lib/components/weekly-work-performed-popup/weekly-work-performed-popup.component.d.ts.map +0 -1
  423. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts +0 -17
  424. package/lib/components/weekly-work-search-counter/work-search-counter.component.d.ts.map +0 -1
  425. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts +0 -105
  426. package/lib/components/weekly-work-search-employer-me/work-search-employer.component-me.d.ts.map +0 -1
  427. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts +0 -71
  428. package/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.d.ts.map +0 -1
  429. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts +0 -59
  430. package/lib/components/weekly-work-search-employer-v2/work-search-employer.component-v2.d.ts.map +0 -1
  431. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts +0 -47
  432. package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts.map +0 -1
  433. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts +0 -78
  434. package/lib/components/weekly-work-search-question-v2/work-search-question.component-v2.d.ts.map +0 -1
  435. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts +0 -8
  436. package/lib/directives/strip-invisible-characters/strip-invisible-characters.directive.d.ts.map +0 -1
  437. package/lib/enums/AddressValidationResponseEnum.d.ts +0 -8
  438. package/lib/enums/AddressValidationResponseEnum.d.ts.map +0 -1
  439. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts +0 -4
  440. package/lib/enums/AddressValidationSourceFunctionEnum.d.ts.map +0 -1
  441. package/lib/models/ActiveClaimModel.d.ts +0 -8
  442. package/lib/models/ActiveClaimModel.d.ts.map +0 -1
  443. package/lib/models/CountyModel.d.ts +0 -8
  444. package/lib/models/CountyModel.d.ts.map +0 -1
  445. package/lib/models/DuaAppDataModel.d.ts +0 -5
  446. package/lib/models/DuaAppDataModel.d.ts.map +0 -1
  447. package/lib/models/DuaRequestModel.d.ts +0 -10
  448. package/lib/models/DuaRequestModel.d.ts.map +0 -1
  449. package/lib/models/DuaRetroWeeksComponentModel.d.ts +0 -5
  450. package/lib/models/DuaRetroWeeksComponentModel.d.ts.map +0 -1
  451. package/lib/models/EmployerInfoComponentModel.d.ts +0 -9
  452. package/lib/models/EmployerInfoComponentModel.d.ts.map +0 -1
  453. package/lib/models/EmployerPayInfoModel.d.ts +0 -20
  454. package/lib/models/EmployerPayInfoModel.d.ts.map +0 -1
  455. package/lib/models/FarmUsageComponentModel.d.ts +0 -10
  456. package/lib/models/FarmUsageComponentModel.d.ts.map +0 -1
  457. package/lib/models/GrossEarningsModel.d.ts +0 -6
  458. package/lib/models/GrossEarningsModel.d.ts.map +0 -1
  459. package/lib/models/HelpConstants.d.ts +0 -5
  460. package/lib/models/HelpConstants.d.ts.map +0 -1
  461. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts +0 -7
  462. package/lib/models/LexisNexisOtpDetailsResponseModel.d.ts.map +0 -1
  463. package/lib/models/ReasonSeparationRequestModel.d.ts +0 -7
  464. package/lib/models/ReasonSeparationRequestModel.d.ts.map +0 -1
  465. package/lib/models/RetroWeeksModel.d.ts +0 -11
  466. package/lib/models/RetroWeeksModel.d.ts.map +0 -1
  467. package/lib/models/SecurityQuestionAnswerModel.d.ts +0 -7
  468. package/lib/models/SecurityQuestionAnswerModel.d.ts.map +0 -1
  469. package/lib/models/SendOtpRequestModel.d.ts +0 -12
  470. package/lib/models/SendOtpRequestModel.d.ts.map +0 -1
  471. package/lib/models/VerifyOtpRequestModel.d.ts +0 -8
  472. package/lib/models/VerifyOtpRequestModel.d.ts.map +0 -1
  473. package/lib/models/WageCalculatorModel.d.ts +0 -15
  474. package/lib/models/WageCalculatorModel.d.ts.map +0 -1
  475. package/lib/models/WageInfoModel.d.ts +0 -9
  476. package/lib/models/WageInfoModel.d.ts.map +0 -1
  477. package/lib/models/addressValidation/AddressRecommendationModel.d.ts +0 -12
  478. package/lib/models/addressValidation/AddressRecommendationModel.d.ts.map +0 -1
  479. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts +0 -11
  480. package/lib/models/addressValidation/AddressValidationRequestComponentModel.d.ts.map +0 -1
  481. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts +0 -6
  482. package/lib/models/addressValidation/AddressValidationResponseComponentModel.d.ts.map +0 -1
  483. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts +0 -16
  484. package/lib/models/addressValidation/AddressValidationReturnComponentModel.d.ts.map +0 -1
  485. package/lib/models/combo-model.d.ts +0 -42
  486. package/lib/models/combo-model.d.ts.map +0 -1
  487. package/lib/models/fileupload/DocUploadModel.d.ts +0 -22
  488. package/lib/models/fileupload/DocUploadModel.d.ts.map +0 -1
  489. package/lib/models/fileupload/EmployerDataModel.d.ts +0 -6
  490. package/lib/models/fileupload/EmployerDataModel.d.ts.map +0 -1
  491. package/lib/models/fileupload/FileObject.d.ts +0 -8
  492. package/lib/models/fileupload/FileObject.d.ts.map +0 -1
  493. package/lib/models/fileupload/FileObjectArray.d.ts +0 -8
  494. package/lib/models/fileupload/FileObjectArray.d.ts.map +0 -1
  495. package/lib/models/questionnaire/AppealParticipantModel.d.ts +0 -17
  496. package/lib/models/questionnaire/AppealParticipantModel.d.ts.map +0 -1
  497. package/lib/models/questionnaire/ScrollableTextModel.d.ts +0 -4
  498. package/lib/models/questionnaire/ScrollableTextModel.d.ts.map +0 -1
  499. package/lib/models/questionnaire/WbaHelperTextModel.d.ts +0 -4
  500. package/lib/models/questionnaire/WbaHelperTextModel.d.ts.map +0 -1
  501. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts +0 -9
  502. package/lib/models/weekly-cert/WorkSearchWaiverModel.d.ts.map +0 -1
  503. package/lib/models/weekly-cert/address-detail-model.d.ts +0 -14
  504. package/lib/models/weekly-cert/address-detail-model.d.ts.map +0 -1
  505. package/lib/models/weekly-cert/admin-leave-details-model.d.ts +0 -15
  506. package/lib/models/weekly-cert/admin-leave-details-model.d.ts.map +0 -1
  507. package/lib/models/weekly-cert/employer-info-v2-model.d.ts +0 -27
  508. package/lib/models/weekly-cert/employer-info-v2-model.d.ts.map +0 -1
  509. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts +0 -57
  510. package/lib/models/weekly-cert/weekly-cert-eligibility-v2-model.d.ts.map +0 -1
  511. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts +0 -59
  512. package/lib/models/weekly-cert/weekly-certification-v2-model.d.ts.map +0 -1
  513. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts +0 -66
  514. package/lib/models/weekly-cert/work-search-record-v2-model.d.ts.map +0 -1
  515. package/lib/models/weekly-cert/work-search-v2-model.d.ts +0 -18
  516. package/lib/models/weekly-cert/work-search-v2-model.d.ts.map +0 -1
  517. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts +0 -14
  518. package/lib/pipes/format-worksearch/format-worksearch.pipe.d.ts.map +0 -1
  519. package/lib/services/address-validation-service/address-validation.service.d.ts +0 -44
  520. package/lib/services/address-validation-service/address-validation.service.d.ts.map +0 -1
  521. package/lib/services/appeal/appeal.service.d.ts +0 -16
  522. package/lib/services/appeal/appeal.service.d.ts.map +0 -1
  523. package/lib/services/birt-service/birt.service.d.ts +0 -17
  524. package/lib/services/birt-service/birt.service.d.ts.map +0 -1
  525. package/lib/services/employer/employer-service.d.ts +0 -16
  526. package/lib/services/employer/employer-service.d.ts.map +0 -1
  527. package/lib/services/event-service/event-service.d.ts +0 -20
  528. package/lib/services/event-service/event-service.d.ts.map +0 -1
  529. package/lib/services/offline-claims/offline-claims.service.d.ts +0 -64
  530. package/lib/services/offline-claims/offline-claims.service.d.ts.map +0 -1
  531. package/lib/services/weekly-cert/review.service.d.ts +0 -23
  532. package/lib/services/weekly-cert/review.service.d.ts.map +0 -1
  533. package/lib/services/weekly-cert/weekly-cert.service.d.ts +0 -17
  534. package/lib/services/weekly-cert/weekly-cert.service.d.ts.map +0 -1
  535. package/lib/services/weekly-cert/work-search.service.d.ts +0 -26
  536. package/lib/services/weekly-cert/work-search.service.d.ts.map +0 -1
@@ -1,806 +0,0 @@
1
- import { Component, ViewChild } from '@angular/core';
2
- import { LibConstants } from '../../models/LibConstants';
3
- import { BasePage } from '../../pages/BasePage';
4
- import { HelpConstants } from '../../models/HelpConstants';
5
- import { SummaryComponentV2 } from '../weekly-summary-v2/summary.component-v2';
6
- import { WorkSearchQuestionComponentV2 } from '../weekly-work-search-question-v2/work-search-question.component-v2';
7
- import { AcknowledgementMsComponent } from '../../components/weekly-acknowledgement-ms/acknowledgement-ms.component';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "../../services/weekly-cert/weekly-cert-v2.service";
10
- import * as i2 from "@angular/forms";
11
- import * as i3 from "../../services/util/util.service";
12
- import * as i4 from "@ionic/angular";
13
- import * as i5 from "@angular/platform-browser";
14
- import * as i6 from "../../services/help/help.service";
15
- import * as i7 from "../../services/login/login.service";
16
- import * as i8 from "../../services/claimant-context/claimant-context.service";
17
- import * as i9 from "@angular/common";
18
- import * as i10 from "@angular/router";
19
- import * as i11 from "primeng/divider";
20
- import * as i12 from "primeng/steps";
21
- import * as i13 from "../questionnaire/form-builder/form-builder.page";
22
- import * as i14 from "../questionnaire/multi-questionnaire/multi-questionnaire.component";
23
- import * as i15 from "../weekly-work-performed-popup/weekly-work-performed-popup.component";
24
- import * as i16 from "../weekly-work-search-question-v2/work-search-question.component-v2";
25
- import * as i17 from "../weekly-acknowledgement-ms/acknowledgement-ms.component";
26
- import * as i18 from "../weekly-acknowledgement-v2/acknowledgement.component-v2";
27
- import * as i19 from "../weekly-confirmation/confirmation.component";
28
- import * as i20 from "../weekly-interim-confirmation/interim-confirmation.component";
29
- import * as i21 from "@ngx-translate/core";
30
- const _c0 = ["weeklyQuestions"];
31
- function WeeklyCertificationComponent_app_dashboard_help_0_Template(rf, ctx) { if (rf & 1) {
32
- i0.ɵɵelement(0, "app-dashboard-help", 4);
33
- } if (rf & 2) {
34
- i0.ɵɵproperty("activeIndex", 4);
35
- } }
36
- function WeeklyCertificationComponent_div_1_Template(rf, ctx) { if (rf & 1) {
37
- i0.ɵɵelementStart(0, "div", 5);
38
- i0.ɵɵelement(1, "ion-spinner", 6);
39
- i0.ɵɵelementEnd();
40
- } }
41
- function WeeklyCertificationComponent_div_2_Template(rf, ctx) { if (rf & 1) {
42
- i0.ɵɵelementStart(0, "div", 7);
43
- i0.ɵɵelement(1, "ion-icon", 8)(2, "div", 9);
44
- i0.ɵɵelementEnd();
45
- } if (rf & 2) {
46
- const ctx_r2 = i0.ɵɵnextContext();
47
- i0.ɵɵadvance(2);
48
- i0.ɵɵproperty("innerHTML", ctx_r2.sanitizer.bypassSecurityTrustHtml(ctx_r2.errorMsg), i0.ɵɵsanitizeHtml);
49
- } }
50
- function WeeklyCertificationComponent_div_3_ion_col_3_Template(rf, ctx) { if (rf & 1) {
51
- i0.ɵɵelementStart(0, "ion-col", 14)(1, "h1", 15);
52
- i0.ɵɵtext(2);
53
- i0.ɵɵpipe(3, "translate");
54
- i0.ɵɵelementEnd()();
55
- } if (rf & 2) {
56
- const ctx_r4 = i0.ɵɵnextContext(2);
57
- i0.ɵɵadvance(2);
58
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(3, 1, "weeklies.v2.task.heading", ctx_r4.dynamicParam));
59
- } }
60
- function WeeklyCertificationComponent_div_3_ion_col_4_Template(rf, ctx) { if (rf & 1) {
61
- i0.ɵɵelementStart(0, "ion-col", 14)(1, "h1", 15);
62
- i0.ɵɵtext(2);
63
- i0.ɵɵpipe(3, "translate");
64
- i0.ɵɵelementEnd()();
65
- } if (rf & 2) {
66
- const ctx_r5 = i0.ɵɵnextContext(2);
67
- i0.ɵɵadvance(2);
68
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(3, 1, "weeklies.v2.task.multiple.weeks.heading", ctx_r5.dynamicParam));
69
- } }
70
- function WeeklyCertificationComponent_div_3_ion_col_5_Template(rf, ctx) { if (rf & 1) {
71
- i0.ɵɵelementStart(0, "ion-col", 14)(1, "h1", 15);
72
- i0.ɵɵtext(2);
73
- i0.ɵɵpipe(3, "translate");
74
- i0.ɵɵelementEnd()();
75
- } if (rf & 2) {
76
- const ctx_r6 = i0.ɵɵnextContext(2);
77
- i0.ɵɵadvance(2);
78
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(3, 1, "weeklies.v2.task.multiple.weeks.heading.continued", ctx_r6.dynamicParam));
79
- } }
80
- function WeeklyCertificationComponent_div_3_section_6_app_work_search_question_v2_4_Template(rf, ctx) { if (rf & 1) {
81
- const _r18 = i0.ɵɵgetCurrentView();
82
- i0.ɵɵelementStart(0, "app-work-search-question-v2", 21);
83
- i0.ɵɵlistener("success", function WeeklyCertificationComponent_div_3_section_6_app_work_search_question_v2_4_Template_app_work_search_question_v2_success_0_listener() { i0.ɵɵrestoreView(_r18); const ctx_r17 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r17.goToWeeklyCert()); })("hasHiredStatus", function WeeklyCertificationComponent_div_3_section_6_app_work_search_question_v2_4_Template_app_work_search_question_v2_hasHiredStatus_0_listener($event) { i0.ɵɵrestoreView(_r18); const ctx_r19 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r19.hasHiredStatus($event)); })("hasWorkedFullTimeOrStartedWorkingStatus", function WeeklyCertificationComponent_div_3_section_6_app_work_search_question_v2_4_Template_app_work_search_question_v2_hasWorkedFullTimeOrStartedWorkingStatus_0_listener($event) { i0.ɵɵrestoreView(_r18); const ctx_r20 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r20.hasWorkedFullTimeOrStartedWorkingStatus($event)); });
84
- i0.ɵɵelementEnd();
85
- } if (rf & 2) {
86
- i0.ɵɵproperty("showCounter", true);
87
- } }
88
- function WeeklyCertificationComponent_div_3_section_6_Template(rf, ctx) { if (rf & 1) {
89
- const _r22 = i0.ɵɵgetCurrentView();
90
- i0.ɵɵelementStart(0, "section")(1, "ion-grid")(2, "ion-row")(3, "ion-col", 16);
91
- i0.ɵɵtemplate(4, WeeklyCertificationComponent_div_3_section_6_app_work_search_question_v2_4_Template, 1, 1, "app-work-search-question-v2", 17);
92
- i0.ɵɵelementEnd();
93
- i0.ɵɵelementStart(5, "ion-col", 18)(6, "app-form-builder", 19, 20);
94
- i0.ɵɵlistener("onError", function WeeklyCertificationComponent_div_3_section_6_Template_app_form_builder_onError_6_listener($event) { i0.ɵɵrestoreView(_r22); const ctx_r21 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r21.handleError($event)); })("onComplete", function WeeklyCertificationComponent_div_3_section_6_Template_app_form_builder_onComplete_6_listener($event) { i0.ɵɵrestoreView(_r22); const ctx_r23 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r23.success($event)); })("onLoadComplete", function WeeklyCertificationComponent_div_3_section_6_Template_app_form_builder_onLoadComplete_6_listener($event) { i0.ɵɵrestoreView(_r22); const ctx_r24 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r24.loadComplete($event)); });
95
- i0.ɵɵelementEnd()()()()();
96
- } if (rf & 2) {
97
- const ctx_r7 = i0.ɵɵnextContext(2);
98
- i0.ɵɵadvance(4);
99
- i0.ɵɵproperty("ngIf", !ctx_r7.isLoading && !ctx_r7.errorMsg);
100
- i0.ɵɵadvance(2);
101
- i0.ɵɵproperty("flowKey", "weekly-cert")("autoSave", false)("showOnlyQuestion", true)("hideHeader", true)("hideFooter", true)("sizeXs", 12)("sizeSm", 12)("sizeMd", 12)("sizeLg", 12)("sizeXl", 12)("offsetXl", 0)("offsetLg", 0)("dynamicParam", ctx_r7.dynamicParam)("data", ctx_r7.dataToLoad)("multiMode", true)("readOnlyFields", ctx_r7.readOnlyFields);
102
- } }
103
- function WeeklyCertificationComponent_div_3_section_7_section_4_Template(rf, ctx) { if (rf & 1) {
104
- i0.ɵɵelementStart(0, "section")(1, "h1", 29)(2, "b");
105
- i0.ɵɵtext(3);
106
- i0.ɵɵelementEnd()()();
107
- } if (rf & 2) {
108
- const ctx_r25 = i0.ɵɵnextContext(3);
109
- i0.ɵɵadvance(3);
110
- i0.ɵɵtextInterpolate1(" ", ctx_r25.contents[ctx_r25.activeIndex], " ");
111
- } }
112
- function WeeklyCertificationComponent_div_3_section_7_section_5_Template(rf, ctx) { if (rf & 1) {
113
- i0.ɵɵelementStart(0, "section")(1, "h1", 30)(2, "b");
114
- i0.ɵɵtext(3);
115
- i0.ɵɵelementEnd()()();
116
- } if (rf & 2) {
117
- const ctx_r26 = i0.ɵɵnextContext(3);
118
- i0.ɵɵadvance(3);
119
- i0.ɵɵtextInterpolate1(" ", ctx_r26.contents[ctx_r26.activeIndex], " ");
120
- } }
121
- function WeeklyCertificationComponent_div_3_section_7_ion_grid_14_app_work_search_question_v2_3_Template(rf, ctx) { if (rf & 1) {
122
- const _r32 = i0.ɵɵgetCurrentView();
123
- i0.ɵɵelementStart(0, "app-work-search-question-v2", 33);
124
- i0.ɵɵlistener("success", function WeeklyCertificationComponent_div_3_section_7_ion_grid_14_app_work_search_question_v2_3_Template_app_work_search_question_v2_success_0_listener() { i0.ɵɵrestoreView(_r32); const ctx_r31 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r31.goToWeeklyCert()); })("hasHiredStatus", function WeeklyCertificationComponent_div_3_section_7_ion_grid_14_app_work_search_question_v2_3_Template_app_work_search_question_v2_hasHiredStatus_0_listener($event) { i0.ɵɵrestoreView(_r32); const ctx_r33 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r33.hasHiredStatus($event)); });
125
- i0.ɵɵelementEnd();
126
- } if (rf & 2) {
127
- i0.ɵɵproperty("showCounter", true);
128
- } }
129
- function WeeklyCertificationComponent_div_3_section_7_ion_grid_14_Template(rf, ctx) { if (rf & 1) {
130
- i0.ɵɵelementStart(0, "ion-grid")(1, "ion-row")(2, "ion-col", 31);
131
- i0.ɵɵtemplate(3, WeeklyCertificationComponent_div_3_section_7_ion_grid_14_app_work_search_question_v2_3_Template, 1, 1, "app-work-search-question-v2", 32);
132
- i0.ɵɵelementEnd()()();
133
- } if (rf & 2) {
134
- const ctx_r27 = i0.ɵɵnextContext(3);
135
- i0.ɵɵadvance(3);
136
- i0.ɵɵproperty("ngIf", !ctx_r27.isLoading && !ctx_r27.errorMsg);
137
- } }
138
- function WeeklyCertificationComponent_div_3_section_7_ion_grid_15_ion_row_5_Template(rf, ctx) { if (rf & 1) {
139
- i0.ɵɵelementStart(0, "ion-row");
140
- i0.ɵɵelement(1, "app-weekly-work-performed-popup", 35);
141
- i0.ɵɵelementEnd();
142
- } if (rf & 2) {
143
- i0.ɵɵadvance(1);
144
- i0.ɵɵproperty("showWeeklyWorkPerformedPopup", true);
145
- } }
146
- function WeeklyCertificationComponent_div_3_section_7_ion_grid_15_Template(rf, ctx) { if (rf & 1) {
147
- const _r37 = i0.ɵɵgetCurrentView();
148
- i0.ɵɵelementStart(0, "ion-grid")(1, "ion-row")(2, "ion-col", 34)(3, "app-form-builder", 19, 20);
149
- i0.ɵɵlistener("onError", function WeeklyCertificationComponent_div_3_section_7_ion_grid_15_Template_app_form_builder_onError_3_listener($event) { i0.ɵɵrestoreView(_r37); const ctx_r36 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r36.handleError($event)); })("onComplete", function WeeklyCertificationComponent_div_3_section_7_ion_grid_15_Template_app_form_builder_onComplete_3_listener($event) { i0.ɵɵrestoreView(_r37); const ctx_r38 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r38.success($event)); })("onLoadComplete", function WeeklyCertificationComponent_div_3_section_7_ion_grid_15_Template_app_form_builder_onLoadComplete_3_listener($event) { i0.ɵɵrestoreView(_r37); const ctx_r39 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r39.loadComplete($event)); });
150
- i0.ɵɵelementEnd()()();
151
- i0.ɵɵtemplate(5, WeeklyCertificationComponent_div_3_section_7_ion_grid_15_ion_row_5_Template, 2, 1, "ion-row", 3);
152
- i0.ɵɵelementEnd();
153
- } if (rf & 2) {
154
- const ctx_r28 = i0.ɵɵnextContext(3);
155
- i0.ɵɵadvance(3);
156
- i0.ɵɵproperty("flowKey", "weekly-cert")("autoSave", true)("showOnlyQuestion", true)("hideHeader", true)("hideFooter", true)("sizeXs", 12)("sizeSm", 12)("sizeMd", 12)("sizeLg", 12)("sizeXl", 12)("offsetXl", 0)("offsetLg", 0)("dynamicParam", ctx_r28.dynamicParam)("data", ctx_r28.dataToLoad)("multiMode", true)("readOnlyFields", ctx_r28.readOnlyFields);
157
- i0.ɵɵadvance(2);
158
- i0.ɵɵproperty("ngIf", ctx_r28.weeklyWorkPerformedPopupFlag);
159
- } }
160
- function WeeklyCertificationComponent_div_3_section_7_ion_grid_16_app_acknowledgement_ms_3_Template(rf, ctx) { if (rf & 1) {
161
- const _r42 = i0.ɵɵgetCurrentView();
162
- i0.ɵɵelementStart(0, "app-acknowledgement-ms", 38);
163
- i0.ɵɵlistener("success", function WeeklyCertificationComponent_div_3_section_7_ion_grid_16_app_acknowledgement_ms_3_Template_app_acknowledgement_ms_success_0_listener($event) { i0.ɵɵrestoreView(_r42); const ctx_r41 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r41.fileWeeklyCertDone($event)); })("onClose", function WeeklyCertificationComponent_div_3_section_7_ion_grid_16_app_acknowledgement_ms_3_Template_app_acknowledgement_ms_onClose_0_listener() { i0.ɵɵrestoreView(_r42); const ctx_r43 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r43.closeAck()); });
164
- i0.ɵɵelementEnd();
165
- } }
166
- function WeeklyCertificationComponent_div_3_section_7_ion_grid_16_Template(rf, ctx) { if (rf & 1) {
167
- i0.ɵɵelementStart(0, "ion-grid")(1, "ion-row")(2, "ion-col", 36);
168
- i0.ɵɵtemplate(3, WeeklyCertificationComponent_div_3_section_7_ion_grid_16_app_acknowledgement_ms_3_Template, 1, 0, "app-acknowledgement-ms", 37);
169
- i0.ɵɵelementEnd()()();
170
- } if (rf & 2) {
171
- const ctx_r29 = i0.ɵɵnextContext(3);
172
- i0.ɵɵadvance(3);
173
- i0.ɵɵproperty("ngIf", ctx_r29.showAck);
174
- } }
175
- const _c1 = () => ({ "--step-width": "50px", "--step-height": "50px" });
176
- function WeeklyCertificationComponent_div_3_section_7_Template(rf, ctx) { if (rf & 1) {
177
- i0.ɵɵelementStart(0, "section")(1, "ion-row")(2, "ion-col", 22)(3, "div", 23);
178
- i0.ɵɵtemplate(4, WeeklyCertificationComponent_div_3_section_7_section_4_Template, 4, 1, "section", 3)(5, WeeklyCertificationComponent_div_3_section_7_section_5_Template, 4, 1, "section", 3);
179
- i0.ɵɵelementEnd()();
180
- i0.ɵɵelement(6, "ion-col", 24);
181
- i0.ɵɵelementStart(7, "ion-col", 25)(8, "div", 23);
182
- i0.ɵɵelement(9, "p-steps", 26);
183
- i0.ɵɵelementEnd()();
184
- i0.ɵɵelement(10, "ion-col", 27);
185
- i0.ɵɵelementEnd();
186
- i0.ɵɵelementStart(11, "ion-row")(12, "ion-col", 28);
187
- i0.ɵɵelement(13, "p-divider");
188
- i0.ɵɵelementEnd()();
189
- i0.ɵɵtemplate(14, WeeklyCertificationComponent_div_3_section_7_ion_grid_14_Template, 4, 1, "ion-grid", 3)(15, WeeklyCertificationComponent_div_3_section_7_ion_grid_15_Template, 6, 17, "ion-grid", 3)(16, WeeklyCertificationComponent_div_3_section_7_ion_grid_16_Template, 4, 1, "ion-grid", 3);
190
- i0.ɵɵelementEnd();
191
- } if (rf & 2) {
192
- const ctx_r8 = i0.ɵɵnextContext(2);
193
- i0.ɵɵadvance(4);
194
- i0.ɵɵproperty("ngIf", ctx_r8.activeIndex == 0 || ctx_r8.activeIndex == 1);
195
- i0.ɵɵadvance(1);
196
- i0.ɵɵproperty("ngIf", ctx_r8.activeIndex == 2);
197
- i0.ɵɵadvance(4);
198
- i0.ɵɵproperty("model", ctx_r8.items)("activeIndex", ctx_r8.activeIndex)("styleClass", "completed-" + ctx_r8.activeIndex)("ngStyle", i0.ɵɵpureFunction0(9, _c1));
199
- i0.ɵɵadvance(5);
200
- i0.ɵɵproperty("ngIf", ctx_r8.activeIndex == 0);
201
- i0.ɵɵadvance(1);
202
- i0.ɵɵproperty("ngIf", ctx_r8.activeIndex == 1);
203
- i0.ɵɵadvance(1);
204
- i0.ɵɵproperty("ngIf", ctx_r8.activeIndex == 2);
205
- } }
206
- function WeeklyCertificationComponent_div_3_app_multi_questionnaire_8_Template(rf, ctx) { if (rf & 1) {
207
- const _r45 = i0.ɵɵgetCurrentView();
208
- i0.ɵɵelementStart(0, "app-multi-questionnaire", 39);
209
- i0.ɵɵlistener("onComplete", function WeeklyCertificationComponent_div_3_app_multi_questionnaire_8_Template_app_multi_questionnaire_onComplete_0_listener($event) { i0.ɵɵrestoreView(_r45); const ctx_r44 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r44.openSummaryPostQuestionnaires($event)); })("modelCancel", function WeeklyCertificationComponent_div_3_app_multi_questionnaire_8_Template_app_multi_questionnaire_modelCancel_0_listener() { i0.ɵɵrestoreView(_r45); const ctx_r46 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r46.onQeClose()); });
210
- i0.ɵɵpipe(1, "translate");
211
- i0.ɵɵelementEnd();
212
- } if (rf & 2) {
213
- const ctx_r9 = i0.ɵɵnextContext(2);
214
- i0.ɵɵproperty("qeQueryModels", ctx_r9.qeQueryModels)("header", i0.ɵɵpipeBind1(1, 3, "Follow-up Questions"))("showQuestionNumber", true);
215
- } }
216
- function WeeklyCertificationComponent_div_3_div_9_app_acknowledgement_v2_1_Template(rf, ctx) { if (rf & 1) {
217
- const _r49 = i0.ɵɵgetCurrentView();
218
- i0.ɵɵelementStart(0, "app-acknowledgement-v2", 38);
219
- i0.ɵɵlistener("success", function WeeklyCertificationComponent_div_3_div_9_app_acknowledgement_v2_1_Template_app_acknowledgement_v2_success_0_listener($event) { i0.ɵɵrestoreView(_r49); const ctx_r48 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r48.fileWeeklyCertDone($event)); })("onClose", function WeeklyCertificationComponent_div_3_div_9_app_acknowledgement_v2_1_Template_app_acknowledgement_v2_onClose_0_listener() { i0.ɵɵrestoreView(_r49); const ctx_r50 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r50.closeAck()); });
220
- i0.ɵɵelementEnd();
221
- } }
222
- function WeeklyCertificationComponent_div_3_div_9_Template(rf, ctx) { if (rf & 1) {
223
- i0.ɵɵelementStart(0, "div");
224
- i0.ɵɵtemplate(1, WeeklyCertificationComponent_div_3_div_9_app_acknowledgement_v2_1_Template, 1, 0, "app-acknowledgement-v2", 37);
225
- i0.ɵɵelementEnd();
226
- } if (rf & 2) {
227
- const ctx_r10 = i0.ɵɵnextContext(2);
228
- i0.ɵɵadvance(1);
229
- i0.ɵɵproperty("ngIf", ctx_r10.showAck);
230
- } }
231
- function WeeklyCertificationComponent_div_3_app_confirmation_10_Template(rf, ctx) { if (rf & 1) {
232
- const _r52 = i0.ɵɵgetCurrentView();
233
- i0.ɵɵelementStart(0, "app-confirmation", 40);
234
- i0.ɵɵlistener("onClose", function WeeklyCertificationComponent_div_3_app_confirmation_10_Template_app_confirmation_onClose_0_listener() { i0.ɵɵrestoreView(_r52); const ctx_r51 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r51.closeConfirmationPopup()); });
235
- i0.ɵɵelementEnd();
236
- } if (rf & 2) {
237
- const ctx_r11 = i0.ɵɵnextContext(2);
238
- i0.ɵɵproperty("data", ctx_r11.confirmationData)("dynamicParam", ctx_r11.dynamicParam);
239
- } }
240
- function WeeklyCertificationComponent_div_3_app_interim_confirmation_11_Template(rf, ctx) { if (rf & 1) {
241
- const _r54 = i0.ɵɵgetCurrentView();
242
- i0.ɵɵelementStart(0, "app-interim-confirmation", 41);
243
- i0.ɵɵlistener("onClose", function WeeklyCertificationComponent_div_3_app_interim_confirmation_11_Template_app_interim_confirmation_onClose_0_listener() { i0.ɵɵrestoreView(_r54); const ctx_r53 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r53.closeConfirmationPopup()); })("onNext", function WeeklyCertificationComponent_div_3_app_interim_confirmation_11_Template_app_interim_confirmation_onNext_0_listener($event) { i0.ɵɵrestoreView(_r54); const ctx_r55 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r55.navigateToWeeklies($event)); });
244
- i0.ɵɵelementEnd();
245
- } if (rf & 2) {
246
- const ctx_r12 = i0.ɵɵnextContext(2);
247
- i0.ɵɵproperty("data", ctx_r12.confirmationData)("dynamicParam", ctx_r12.dynamicParam);
248
- } }
249
- function WeeklyCertificationComponent_div_3_ion_footer_12_Template(rf, ctx) { if (rf & 1) {
250
- const _r57 = i0.ɵɵgetCurrentView();
251
- i0.ɵɵelementStart(0, "ion-footer")(1, "ion-row", 42)(2, "ion-col", 43)(3, "ion-button", 44);
252
- i0.ɵɵlistener("click", function WeeklyCertificationComponent_div_3_ion_footer_12_Template_ion_button_click_3_listener() { i0.ɵɵrestoreView(_r57); const ctx_r56 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r56.goHome()); });
253
- i0.ɵɵtext(4, "Close ");
254
- i0.ɵɵelementEnd()();
255
- i0.ɵɵelementStart(5, "ion-col", 45)(6, "ion-button", 46);
256
- i0.ɵɵlistener("click", function WeeklyCertificationComponent_div_3_ion_footer_12_Template_ion_button_click_6_listener() { i0.ɵɵrestoreView(_r57); const ctx_r58 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r58.openNextPage()); });
257
- i0.ɵɵtext(7, "Submit ");
258
- i0.ɵɵelementEnd()()()();
259
- } }
260
- function WeeklyCertificationComponent_div_3_section_13_ion_button_4_Template(rf, ctx) { if (rf & 1) {
261
- const _r64 = i0.ɵɵgetCurrentView();
262
- i0.ɵɵelementStart(0, "ion-button", 54);
263
- i0.ɵɵlistener("click", function WeeklyCertificationComponent_div_3_section_13_ion_button_4_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r64); const ctx_r63 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r63.goHome()); });
264
- i0.ɵɵtext(1, "Close ");
265
- i0.ɵɵelementEnd();
266
- } }
267
- function WeeklyCertificationComponent_div_3_section_13_ion_button_5_Template(rf, ctx) { if (rf & 1) {
268
- const _r66 = i0.ɵɵgetCurrentView();
269
- i0.ɵɵelementStart(0, "ion-button", 55);
270
- i0.ɵɵlistener("click", function WeeklyCertificationComponent_div_3_section_13_ion_button_5_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r66); const ctx_r65 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r65.activeIndex = ctx_r65.activeIndex - 1); });
271
- i0.ɵɵtext(1, " Back");
272
- i0.ɵɵelementEnd();
273
- } }
274
- function WeeklyCertificationComponent_div_3_section_13_ion_button_7_Template(rf, ctx) { if (rf & 1) {
275
- const _r68 = i0.ɵɵgetCurrentView();
276
- i0.ɵɵelementStart(0, "ion-button", 56);
277
- i0.ɵɵlistener("click", function WeeklyCertificationComponent_div_3_section_13_ion_button_7_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r68); const ctx_r67 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r67.openNextPage()); });
278
- i0.ɵɵtext(1, "Next ");
279
- i0.ɵɵelementEnd();
280
- } }
281
- function WeeklyCertificationComponent_div_3_section_13_ion_button_8_Template(rf, ctx) { if (rf & 1) {
282
- const _r70 = i0.ɵɵgetCurrentView();
283
- i0.ɵɵelementStart(0, "ion-button", 57);
284
- i0.ɵɵlistener("click", function WeeklyCertificationComponent_div_3_section_13_ion_button_8_Template_ion_button_click_0_listener() { i0.ɵɵrestoreView(_r70); const ctx_r69 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r69.showAcknowledgement()); });
285
- i0.ɵɵtext(1, " Submit");
286
- i0.ɵɵelementEnd();
287
- } }
288
- function WeeklyCertificationComponent_div_3_section_13_Template(rf, ctx) { if (rf & 1) {
289
- i0.ɵɵelementStart(0, "section")(1, "ion-row", 47);
290
- i0.ɵɵelement(2, "ion-col", 27);
291
- i0.ɵɵelementStart(3, "ion-col", 48);
292
- i0.ɵɵtemplate(4, WeeklyCertificationComponent_div_3_section_13_ion_button_4_Template, 2, 0, "ion-button", 49)(5, WeeklyCertificationComponent_div_3_section_13_ion_button_5_Template, 2, 0, "ion-button", 50);
293
- i0.ɵɵelementEnd();
294
- i0.ɵɵelementStart(6, "ion-col", 51);
295
- i0.ɵɵtemplate(7, WeeklyCertificationComponent_div_3_section_13_ion_button_7_Template, 2, 0, "ion-button", 52)(8, WeeklyCertificationComponent_div_3_section_13_ion_button_8_Template, 2, 0, "ion-button", 53);
296
- i0.ɵɵelementEnd();
297
- i0.ɵɵelement(9, "ion-col", 27);
298
- i0.ɵɵelementEnd()();
299
- } if (rf & 2) {
300
- const ctx_r14 = i0.ɵɵnextContext(2);
301
- i0.ɵɵadvance(4);
302
- i0.ɵɵproperty("ngIf", ctx_r14.activeIndex == 0);
303
- i0.ɵɵadvance(1);
304
- i0.ɵɵproperty("ngIf", ctx_r14.activeIndex != 0);
305
- i0.ɵɵadvance(2);
306
- i0.ɵɵproperty("ngIf", ctx_r14.activeIndex != 2);
307
- i0.ɵɵadvance(1);
308
- i0.ɵɵproperty("ngIf", ctx_r14.activeIndex == 2);
309
- } }
310
- function WeeklyCertificationComponent_div_3_Template(rf, ctx) { if (rf & 1) {
311
- i0.ɵɵelementStart(0, "div")(1, "ion-grid")(2, "ion-row");
312
- i0.ɵɵtemplate(3, WeeklyCertificationComponent_div_3_ion_col_3_Template, 4, 4, "ion-col", 10)(4, WeeklyCertificationComponent_div_3_ion_col_4_Template, 4, 4, "ion-col", 10)(5, WeeklyCertificationComponent_div_3_ion_col_5_Template, 4, 4, "ion-col", 10);
313
- i0.ɵɵelementEnd()();
314
- i0.ɵɵtemplate(6, WeeklyCertificationComponent_div_3_section_6_Template, 8, 17, "section", 3)(7, WeeklyCertificationComponent_div_3_section_7_Template, 17, 10, "section", 3)(8, WeeklyCertificationComponent_div_3_app_multi_questionnaire_8_Template, 2, 5, "app-multi-questionnaire", 11)(9, WeeklyCertificationComponent_div_3_div_9_Template, 2, 1, "div", 3)(10, WeeklyCertificationComponent_div_3_app_confirmation_10_Template, 1, 2, "app-confirmation", 12)(11, WeeklyCertificationComponent_div_3_app_interim_confirmation_11_Template, 1, 2, "app-interim-confirmation", 13)(12, WeeklyCertificationComponent_div_3_ion_footer_12_Template, 8, 0, "ion-footer", 3)(13, WeeklyCertificationComponent_div_3_section_13_Template, 10, 4, "section", 3);
315
- i0.ɵɵelementEnd();
316
- } if (rf & 2) {
317
- const ctx_r3 = i0.ɵɵnextContext();
318
- i0.ɵɵadvance(3);
319
- i0.ɵɵproperty("ngIf", !ctx_r3.isMS() || ctx_r3.isMS() && !ctx_r3.multipleWeeksDue && !ctx_r3.displayContinuedWeeksFiledHeading);
320
- i0.ɵɵadvance(1);
321
- i0.ɵɵproperty("ngIf", ctx_r3.isMS() && ctx_r3.multipleWeeksDue && !ctx_r3.displayContinuedWeeksFiledHeading);
322
- i0.ɵɵadvance(1);
323
- i0.ɵɵproperty("ngIf", ctx_r3.isMS() && ctx_r3.multipleWeeksDue && ctx_r3.displayContinuedWeeksFiledHeading);
324
- i0.ɵɵadvance(1);
325
- i0.ɵɵproperty("ngIf", !ctx_r3.isMS());
326
- i0.ɵɵadvance(1);
327
- i0.ɵɵproperty("ngIf", ctx_r3.isMS());
328
- i0.ɵɵadvance(1);
329
- i0.ɵɵproperty("ngIf", ctx_r3.isOpenQe);
330
- i0.ɵɵadvance(1);
331
- i0.ɵɵproperty("ngIf", !ctx_r3.isMS());
332
- i0.ɵɵadvance(1);
333
- i0.ɵɵproperty("ngIf", ctx_r3.showConfirmation);
334
- i0.ɵɵadvance(1);
335
- i0.ɵɵproperty("ngIf", ctx_r3.showInterimConfirmation);
336
- i0.ɵɵadvance(1);
337
- i0.ɵɵproperty("ngIf", !ctx_r3.isMS());
338
- i0.ɵɵadvance(1);
339
- i0.ɵɵproperty("ngIf", ctx_r3.isMS());
340
- } }
341
- export class WeeklyCertificationComponent extends BasePage {
342
- constructor(wcService, fb, util, nav, sanitizer, hs, ls, contextService, datepipe, router) {
343
- super();
344
- this.wcService = wcService;
345
- this.fb = fb;
346
- this.util = util;
347
- this.nav = nav;
348
- this.sanitizer = sanitizer;
349
- this.hs = hs;
350
- this.ls = ls;
351
- this.contextService = contextService;
352
- this.datepipe = datepipe;
353
- this.router = router;
354
- this.showAck = false;
355
- this.showConfirmation = false;
356
- this.activeIndex = 0;
357
- this.isLoading = false;
358
- this.isOpenQe = false;
359
- this.readOnlyFields = null;
360
- this.waiverReason = null;
361
- this.multipleWeeksDue = false;
362
- this.showInterimConfirmation = false;
363
- this.displayContinuedWeeksFiledHeading = false;
364
- this.weeklyWorkPerformedPopupFlag = false;
365
- this.count = 0;
366
- this.reemWorkSearchRecordCount = 0;
367
- }
368
- ngOnInit() {
369
- this.wcService.resetWeeklyCertData();
370
- this.isLoading = true;
371
- this.wcService.checkWeeklyEligibility()
372
- .subscribe(res => {
373
- this.processWeeklyCertEligibiltySuccess(res);
374
- }, err => {
375
- this.processWeeklyCertEligibilityError(err);
376
- });
377
- }
378
- onStepChange(index) {
379
- this.activeIndex = index;
380
- }
381
- processWeeklyCertEligibiltySuccess(res) {
382
- this.wcService.weeklyCertServerData = res;
383
- this.errorMsg = null;
384
- this.getLabelMaxRTWDate();
385
- this.dynamicParam = {
386
- 'saturday_date': this.wcService.getSaturdayDateAsString(),
387
- 'sunday_date': this.wcService.getSundayDateAsString(),
388
- 'min_rtw_date': this.wcService.weeklyCertServerData.minAllowedRtwDate,
389
- 'max_rtw_date': this.wcService.weeklyCertServerData.maxAllowedRtwDate,
390
- 'pension_employers': this.wcService.weeklyCertServerData.pensionEmployers,
391
- 'duaDeclaration': this.wcService.weeklyCertServerData.duaDeclaration,
392
- 'claimWeekEndDate': this.wcService.weeklyCertServerData.claimWeekEndDate,
393
- 'claimantId': this.wcService.weeklyCertServerData.claimantId,
394
- 'label_maxRtwDate': this.parsedMaxRTWDate,
395
- };
396
- // if the user is navigating to weeklies from interim confirmation to continue filing data will be stored
397
- const storedData = localStorage.getItem('interimConfirmationData');
398
- if (storedData) {
399
- const deencodedParams = atob((storedData));
400
- this.receivedData = JSON.parse(decodeURIComponent(deencodedParams));
401
- if (this.dynamicParam.claimantId != this.receivedData.claimantId) {
402
- this.receivedData = null;
403
- }
404
- }
405
- // checking data for flag to continue to file for multiple weeks
406
- if (this.receivedData && (this.dynamicParam.claimantId == this.receivedData.claimantId) &&
407
- this.receivedData.continueToFileForMultipleWeeks == true) {
408
- this.multipleWeeksDue = true;
409
- this.displayContinuedWeeksFiledHeading = true;
410
- this.dynamicParam.nextCertificationToFileCount = this.receivedData.currentNumberFiling;
411
- this.dynamicParam.totalToCertify = this.receivedData.total;
412
- // this.numberOfMultipleWeeksDue = this.receivedData.count;
413
- // if more weeks are due set the next sunday and saturday days
414
- if (this.wcService.weeklyCertServerData.weeksToBeCertified.length > 1) {
415
- this.dynamicParam.next_saturday = this.wcService.weeklyCertServerData.weeksToBeCertified[1];
416
- this.dynamicParam.next_sunday = this.getPreviousSunday(this.wcService.weeklyCertServerData.weeksToBeCertified[1]);
417
- this.dynamicParam.numberOfMultipleWeeksDue = this.receivedData.total;
418
- }
419
- }
420
- // if claimant filing and has multiple certifications due
421
- // will go through interim process until final latest week filed
422
- else if (this.wcService.weeklyCertServerData.weeksToBeCertified.length > 1) {
423
- this.numberOfMultipleWeeksDue = this.wcService.weeklyCertServerData.weeksToBeCertified.length;
424
- this.multipleWeeksDue = true;
425
- this.dynamicParam.numberOfMultipleWeeksDue = this.wcService.weeklyCertServerData.weeksToBeCertified.length;
426
- this.dynamicParam.next_saturday = this.wcService.weeklyCertServerData.weeksToBeCertified[1];
427
- this.dynamicParam.next_sunday = this.getPreviousSunday(this.wcService.weeklyCertServerData.weeksToBeCertified[1]);
428
- }
429
- if (LibConstants.legacyMenu == 'false') {
430
- this.hs.showDialogIfPreferenceAllow(HelpConstants.WEEKLY_HELP);
431
- }
432
- this.handleHiddenFields(res);
433
- this.initializeDataForWorkSearchForm();
434
- if (this.isMS()) {
435
- this.items = [
436
- { label: '', command: () => { this.onStepChange(0); } },
437
- { label: '', command: () => { this.onStepChange(1); } },
438
- { label: '', command: () => { this.onStepChange(2); } }
439
- ];
440
- }
441
- this.contents = [' Work Search Activities', ' Weekly Questions', ' Acknowledge & Certify'];
442
- }
443
- getLabelMaxRTWDate() {
444
- this.parsedMaxRTWDate = new Date(this.wcService.weeklyCertServerData.maxAllowedRtwDate);
445
- this.parsedMaxRTWDate.setDate(this.parsedMaxRTWDate.getDate() + 1);
446
- this.parsedMaxRTWDate = this.datepipe.transform(this.parsedMaxRTWDate, 'MM/dd/yyyy');
447
- }
448
- processWeeklyCertEligibilityError(err) {
449
- if (err.msg != null && err.msg[0] == 'No Weeks are pending to be filed.') {
450
- this.util.getState() === 'CT' ? this.nav.navigateRoot("weekly-not-eligible") : this.nav.navigateRoot("work-search-journal");
451
- }
452
- else {
453
- this.errorMsg = err.msg;
454
- }
455
- this.wcService.weeklyCertServerData = null;
456
- this.isLoading = false;
457
- }
458
- initializeDataForWorkSearchForm() {
459
- this.workSearchWaived = this.wcService.weeklyCertServerData.isWorkSearchWaived;
460
- this.waiverReason = this.wcService.weeklyCertServerData.waiverReason;
461
- //REEM ACTIVITY TYPE COUNT ASSIGNMENT
462
- this.reemWorkSearchRecordCount = Number(this.wcService.weeklyCertServerData?.hidReemWorkSearchRecordCount ?? 0);
463
- this.wcService.weeklyCertServerData.hidReemWorkSearchRecordCount = this.reemWorkSearchRecordCount;
464
- //
465
- this.wcService.getClaimantWorkSearchJournalRecords(this.wcService.getSaturdayDateAsString()).subscribe(res => {
466
- this.wcService.workSearchJournal = res;
467
- this.wcService.weeklyCertData.workSearchRecords = res.workSearchRecords;
468
- if (this.isME() && this.wcService.weeklyCertData.workSearchRecords) {
469
- const hasStartedWorking = (this.wcService.weeklyCertData.workSearchRecords ?? []).some(rec => rec?.searchResult === 'STWK');
470
- if (hasStartedWorking) {
471
- this.hasWorkedFullTimeOrStartedWorkingStatus(true);
472
- }
473
- }
474
- this.isLoading = false;
475
- }, err => {
476
- this.wcService.workSearchJournal = null;
477
- });
478
- if (this.isMS()) {
479
- this.activeIndex = 0;
480
- }
481
- }
482
- openNextPage() {
483
- if (this.workSearchComponent) {
484
- if (this.wcService.getDisplayWorkSearchScreen()) {
485
- this.workSearchComponent.submitForm();
486
- }
487
- else {
488
- this.goToWeeklyCert();
489
- }
490
- }
491
- else if (this.workSearchWaived) {
492
- this.goToWeeklyCert();
493
- }
494
- else {
495
- this.goToWeeklyCert();
496
- }
497
- }
498
- goToWeeklyCert() {
499
- if (this.isMS()) {
500
- if (this.activeIndex == 0) {
501
- this.activeIndex = 1;
502
- }
503
- else {
504
- if (this.weeklyQuestions) {
505
- this.count = this.count + 1;
506
- if (this.count > 1 && this.ls.isCsr()) {
507
- this.weeklyQuestions.questionnaire.questionnaire.questionnaireForm.form.controls['hidCsrFirstPass'].setValue('Y');
508
- }
509
- this.weeklyQuestions.submitQuestionnaire();
510
- }
511
- }
512
- }
513
- else {
514
- if (this.weeklyQuestions) {
515
- this.weeklyQuestions.submitQuestionnaire();
516
- }
517
- }
518
- }
519
- success(weeklyQuestionsResponse) {
520
- const formData = JSON.parse(weeklyQuestionsResponse.screenQuestionnaireData[0]);
521
- formData.workSearchRecords = this.wcService.getWorkSearchRecords();
522
- formData.workSearchData = this.wcService.getWorkSearchData();
523
- this.wcService.weeklyCertData = formData;
524
- this.wcService.weeklyCertData.claimWeekEndDate = this.wcService.weeklyCertServerData.weekToCertify;
525
- this.wcService.weeklyCertData.hidInApprovedTraining = this.wcService.weeklyCertServerData.hidInApprovedTraining;
526
- this.openFollowupQuestions();
527
- }
528
- openFollowupQuestions() {
529
- this.util.showLoader();
530
- this.wcService.weeklyCertData.showWorkSearchScreen = this.wcService.getDisplayWorkSearchScreen();
531
- if (this.wcService.getWorkSearchRecordsCount() > 0) {
532
- this.wcService.weeklyCertData.workSearchData.isWorkSearchPerformedFlag = '1';
533
- }
534
- else if (this.wcService.weeklyCertData.workSearchData != null) {
535
- this.wcService.weeklyCertData.workSearchData.isWorkSearchPerformedFlag = '0';
536
- }
537
- if (this.wcService.getEmployerRecordsCount() > 0) {
538
- this.wcService.weeklyCertData.workPerformed = 'Y';
539
- }
540
- else {
541
- this.wcService.weeklyCertData.workPerformed = 'N';
542
- }
543
- this.wcService.weeklyCertData.workPerformedSeapNotParttime = (this.wcService.getEmployerRecordsCount() > 0 && this.wcService.getHidIsSeapParticipant()) ? 'Y' : 'N';
544
- if (this.isMS() && this.wcService.weeklyCertServerData.hidIsSeapParticipant == 'Y') {
545
- //Done to handle new verbiage for workPerformed for Seap Participants.
546
- this.wcService.weeklyCertData.workPerformed = this.wcService.weeklyCertData.workPerformedSeapNotParttime;
547
- //Done to handle new verbiage for SEAP Participants for available question.
548
- this.wcService.weeklyCertData.available = (this.wcService.weeklyCertData.availableSeap);
549
- }
550
- this.wcService.determineQuestionniareToOpen().subscribe(res => {
551
- this.statusModel = res.statusModel;
552
- this.qeQueryModels = res.statusModel.qeQueryModels;
553
- this.wcService.weeklyCertData.potentialIssues = res.potentialIssueIds;
554
- this.wcService.weeklyCertData.pensionDeniedPotentialIssues = res.pensionDeniedPotentialIssues;
555
- this.wcService.weeklyCertData.bonusPayPotentialIssues = res.bonusPayPotentialIssues;
556
- this.wcService.weeklyCertData.otherPayPotentialIssues = res.otherPayPotentialIssues;
557
- if (this.statusModel.showQe) {
558
- this.isOpenQe = true;
559
- if (this.wcService.weeklyCertData.employerDetailsList != null
560
- && this.wcService.weeklyCertData.employerDetailsList.length > 0
561
- && res.tempEmployerSepPotentialIssueMap != null) {
562
- this.wcService.weeklyCertData.tempEmployerSepPotentialIssueMap = res.tempEmployerSepPotentialIssueMap;
563
- }
564
- }
565
- else {
566
- this.showAcknowledgement();
567
- }
568
- this.util.hideLoader();
569
- }, err => {
570
- this.util.showError(err.msg);
571
- this.util.hideLoader();
572
- });
573
- }
574
- openSummaryPostQuestionnaires(event) {
575
- if (event && event.size > 0) {
576
- if (event.has(9001)) {
577
- let workSearchReason = event.get(9001).reasonInadequateWorkSearch;
578
- if (this.isCT()) {
579
- this.wcService.weeklyCertData.workSearchData.reasonInadequateWorkSearch = workSearchReason;
580
- }
581
- if (this.wcService.weeklyCertData.workSearchData.isWorkSearchPerformedFlag == '1'
582
- && this.wcService.checkIfInadequateWorkSearchQuestionnaireShouldBeOpened()
583
- && this.isMS()) {
584
- this.wcService.weeklyCertData.workSearchData.reasonInadequateWorkSearch = workSearchReason;
585
- }
586
- else if (this.wcService.weeklyCertData.workSearchData.isWorkSearchPerformedFlag == '0') {
587
- this.wcService.weeklyCertData.workSearchData.explainWhyDidNotLookForWork = workSearchReason;
588
- }
589
- }
590
- if (event.has(179)) {
591
- this.wcService.weeklyCertData.adminLeaveDetails = event.get(179);
592
- }
593
- if (event.has(9002)) {
594
- this.wcService.weeklyCertData.adminLeaveDetails = event.get(9002);
595
- }
596
- }
597
- this.showAcknowledgement();
598
- this.isOpenQe = false;
599
- this.util.hideLoader();
600
- }
601
- onQeClose() {
602
- this.isOpenQe = false;
603
- this.util.hideLoader();
604
- }
605
- goToSummary() {
606
- this.activeIndex = 1;
607
- }
608
- closeAck() {
609
- this.showAck = false;
610
- }
611
- fileWeeklyCertDone(event) {
612
- this.showAck = false;
613
- this.confirmationData = event;
614
- if (this.isMS() && this.multipleWeeksDue == true && this.receivedData) {
615
- // if this is the last time filing weeklies through interim confirmation flow
616
- if (this.receivedData.currentNumberFiling == this.receivedData.total && this.wcService.weeklyCertServerData.weeksToBeCertified.length == 1) {
617
- this.showInterimConfirmation = false;
618
- this.showConfirmation = true;
619
- this.multipleWeeksDue = false;
620
- localStorage.removeItem('interimConfirmationData');
621
- }
622
- // if more weeks remain for weeklies through interim confirmation flow
623
- else if (this.receivedData.count <= this.receivedData.total && this.wcService.weeklyCertServerData.weeksToBeCertified.length > 1) {
624
- this.showInterimConfirmation = true;
625
- this.showConfirmation = false;
626
- }
627
- } // if first time filing weeklies through interim confirmation flow
628
- if (this.isMS() && this.multipleWeeksDue == true && !this.receivedData) {
629
- this.showInterimConfirmation = true;
630
- this.showConfirmation = false;
631
- }
632
- else if ((!this.isMS()) || (this.isMS() && this.multipleWeeksDue == false)) {
633
- this.showConfirmation = true;
634
- }
635
- }
636
- closeConfirmationPopup() {
637
- if (this.isMS() && this.multipleWeeksDue == true) {
638
- this.showInterimConfirmation = false;
639
- }
640
- else {
641
- this.showConfirmation = false;
642
- }
643
- this.wcService.resetWeeklyCertData();
644
- // This is added as the navigation was too quick for the confirmation to close in time, leaving confirmation open, even though the page was updated in backend
645
- setTimeout(() => this.goHome(), 100);
646
- }
647
- navigateToWeeklies(data) {
648
- if (this.isMS() && this.multipleWeeksDue == true) {
649
- this.showInterimConfirmation = false;
650
- localStorage.setItem('interimConfirmationData', data);
651
- }
652
- this.wcService.resetWeeklyCertData();
653
- window.location.reload();
654
- }
655
- goHome() {
656
- if (this.ls.isClaimant()) {
657
- this.router.navigateByUrl('welcome?wcDone=true');
658
- }
659
- else if (this.ls.isCsr()) {
660
- this.util.openPageByContextRootWithData(this.util.getSecurityAppContextRoot(), "search-ssn", this.contextService.getUnEncodedSsn(), this.nav);
661
- }
662
- else {
663
- this.router.navigateByUrl('/welcome');
664
- }
665
- this.util.hideLoader();
666
- }
667
- showAcknowledgement() {
668
- if (this.summaryComponent) {
669
- this.summaryComponent.submitForm();
670
- }
671
- else {
672
- if (this.isMS()) {
673
- this.activeIndex = 2;
674
- if (this.acknowledgementMsComponent) {
675
- this.acknowledgementMsComponent.submit();
676
- }
677
- }
678
- this.showAck = true;
679
- }
680
- }
681
- onQeSuccess() {
682
- this.showAck = true;
683
- }
684
- ionViewWillLeave() {
685
- this.hs.setHelpAvailability(false);
686
- }
687
- ionViewDidEnter() {
688
- this.wcService.resetWeeklyCertData();
689
- this.hs.setHelpAvailability(true);
690
- }
691
- handleError(err) {
692
- this.errorMsg = err.msg;
693
- }
694
- hasHiredStatus(status) {
695
- //TODO: Update this for return to work for hired cases
696
- if (!this.isME()) {
697
- this.readOnlyFields = status ? ['returningToWork'] : null;
698
- if (status) {
699
- this.readOnlyData = { returningToWork: "Y" };
700
- }
701
- }
702
- }
703
- hasWorkedFullTimeOrStartedWorkingStatus(status) {
704
- const form = this.weeklyQuestions?.questionnaire?.questionnaire?.questionnaireForm?.form;
705
- if (this.isME()) {
706
- if (status && form) {
707
- this.readOnlyFields = status ? ['workPerformed'] : null;
708
- this.readOnlyData = { workPerformed: "Y" };
709
- form.get('workPerformed')?.setValue('Y');
710
- }
711
- else {
712
- this.readOnlyFields = status ? ['workPerformed'] : null;
713
- this.readOnlyData = { workPerformed: null };
714
- if (form) {
715
- form.get('workPerformed').setValue(null);
716
- }
717
- }
718
- }
719
- }
720
- handleHiddenFields(res) {
721
- this.readOnlyFields = ['hidShowReturnToWorkQuestion', 'hidShowReturnedToWorkQuestion', 'hidShowNewPensionQuestion', 'hidShowPensionChangedQuestion', 'hidShowDismissalPayChangedQuestion', 'hidPartTimeEmployerAvailable', 'hidRemunerationIssueExists', 'hidIsEligibleForDua', 'claimantId', 'claimWeekEndDate', 'duaAppId', 'hidPartialClaimEmploymentFlag', 'hidWorkSearchAuditFlag'];
722
- this.readOnlyData = { hidShowReturnToWorkQuestion: res.hidShowReturnToWorkQuestion, hidShowReturnedToWorkQuestion: res.hidShowReturnedToWorkQuestion, hidShowNewPensionQuestion: res.hidShowNewPensionQuestion, hidShowPensionChangedQuestion: res.hidShowPensionChangedQuestion, hidShowDismissalPayChangedQuestion: res.hidShowDismissalPayChangedQuestion, hidPartTimeEmployerAvailable: res.hidPartTimeEmployerAvailable, hidRemunerationIssueExists: res.hidRemunerationIssueExists, hidIsEligibleForDua: res.hidIsEligibleForDua, claimantId: res.claimantId, claimWeekEndDate: res.claimWeekEndDate, duaAppId: res.duaAppId, hidPartialClaimEmploymentFlag: res.hidPartialClaimEmploymentFlag, hidWorkSearchAuditFlag: res.hidWorkSearchAuditFlag };
723
- }
724
- loadComplete(event) {
725
- /* For MS, the back button needs to load complete filled data along with eligibility data.
726
- For other states, everything is in popup, so on close, data still is there in model.
727
- Needs work */
728
- /* if (this.isMS() && this.activeIndex == 1 && this.wcService.weeklyCertData) {
729
-
730
- this.wcService.weeklyCertData.weeklycertEligibilityModelV2 = this.wcService.weeklyCertServerData;
731
- this.dataToLoad = this.wcService.weeklyCertData;
732
- this.handleHiddenFields(this.wcService.weeklyCertServerData);
733
- } else{
734
- this.dataToLoad = this.wcService.weeklyCertServerData;
735
- } */
736
- this.dataToLoad = this.wcService.weeklyCertServerData;
737
- /** NEW: For Loading the Pre-selected question in case of Started Working(STWK) for WS Records and setting the value Y for workPerformed */
738
- this.workSearchRecords = this.wcService.getWorkSearchRecords();
739
- if (this.isME() && this.workSearchRecords) {
740
- const hasStartedWorking = (this.workSearchRecords ?? []).some(rec => rec?.searchResult === 'STWK');
741
- if (hasStartedWorking) {
742
- this.dataToLoad.workPerformed = "Y";
743
- this.readOnlyFields = ['workPerformed'];
744
- this.readOnlyData = { workPerformed: "Y" };
745
- }
746
- }
747
- /** END */
748
- if (this.wcService.getWorkSearchRecordsCountWithHiredStatus() > 0) {
749
- this.hasHiredStatus(true);
750
- this.dataToLoad.returningToWork = "Y";
751
- }
752
- //Weekly Earnings reminder popup - shown every week except for waiting period week
753
- if (this.wcService.weeklyCertServerData.isWaitingWeekServed === true) {
754
- setTimeout(() => (this.weeklyWorkPerformedPopupFlag = true), 1000);
755
- }
756
- }
757
- getPreviousSunday(inputDate) {
758
- let utcDate = new Date(inputDate + "T00:00:00Z");
759
- utcDate.setUTCDate(utcDate.getUTCDate() - 6);
760
- let year = utcDate.getUTCFullYear();
761
- let month = String(utcDate.getUTCMonth() + 1).padStart(2, '0');
762
- let day = String(utcDate.getUTCDate()).padStart(2, '0');
763
- return `${year}-${month}-${day}`;
764
- }
765
- static { this.ɵfac = function WeeklyCertificationComponent_Factory(t) { return new (t || WeeklyCertificationComponent)(i0.ɵɵdirectiveInject(i1.WeeklyCertServiceV2), i0.ɵɵdirectiveInject(i2.FormBuilder), i0.ɵɵdirectiveInject(i3.UtilService), i0.ɵɵdirectiveInject(i4.NavController), i0.ɵɵdirectiveInject(i5.DomSanitizer), i0.ɵɵdirectiveInject(i6.HelpService), i0.ɵɵdirectiveInject(i7.LoginService), i0.ɵɵdirectiveInject(i8.ClaimantContextService), i0.ɵɵdirectiveInject(i9.DatePipe), i0.ɵɵdirectiveInject(i10.Router)); }; }
766
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WeeklyCertificationComponent, selectors: [["app-weekly-certification"]], viewQuery: function WeeklyCertificationComponent_Query(rf, ctx) { if (rf & 1) {
767
- i0.ɵɵviewQuery(WorkSearchQuestionComponentV2, 5);
768
- i0.ɵɵviewQuery(AcknowledgementMsComponent, 5);
769
- i0.ɵɵviewQuery(SummaryComponentV2, 5);
770
- i0.ɵɵviewQuery(_c0, 5);
771
- } if (rf & 2) {
772
- let _t;
773
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.workSearchComponent = _t.first);
774
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.acknowledgementMsComponent = _t.first);
775
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.summaryComponent = _t.first);
776
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.weeklyQuestions = _t.first);
777
- } }, features: [i0.ɵɵInheritDefinitionFeature], decls: 4, vars: 4, consts: [[3, "activeIndex", 4, "ngIf"], ["class", "ion-text-center", 4, "ngIf"], ["class", "ion-text-center ion-padding-top", "style", "padding-top: 50px;", 4, "ngIf"], [4, "ngIf"], [3, "activeIndex"], [1, "ion-text-center"], ["name", "dots"], [1, "ion-text-center", "ion-padding-top", 2, "padding-top", "50px"], ["name", "alert-circle-outline", 2, "font-size", "60px", "color", "var(--ion-color-danger)"], [1, "ion-text-center", "ion-padding", 2, "color", "var(--ion-color-danger)", "font-size", "larger", 3, "innerHTML"], ["size", "12", "offsetXl", "1", 4, "ngIf"], [3, "qeQueryModels", "header", "showQuestionNumber", "onComplete", "modelCancel", 4, "ngIf"], [3, "data", "dynamicParam", "onClose", 4, "ngIf"], [3, "data", "dynamicParam", "onClose", "onNext", 4, "ngIf"], ["size", "12", "offsetXl", "1"], [1, "app-heading"], ["size", "12", "sizeXl", "5", "offsetXl", "1", "sizeLg", "6"], [3, "showCounter", "success", "hasHiredStatus", "hasWorkedFullTimeOrStartedWorkingStatus", 4, "ngIf"], ["size", "12", "sizeXl", "5", "sizeLg", "6"], [3, "flowKey", "autoSave", "showOnlyQuestion", "hideHeader", "hideFooter", "sizeXs", "sizeSm", "sizeMd", "sizeLg", "sizeXl", "offsetXl", "offsetLg", "dynamicParam", "data", "multiMode", "readOnlyFields", "onError", "onComplete", "onLoadComplete"], ["weeklyQuestions", ""], [3, "showCounter", "success", "hasHiredStatus", "hasWorkedFullTimeOrStartedWorkingStatus"], ["size", "3", "offsetLg", "3", "offsetXl", "3"], [1, "p-fluid", "p-formgrid"], ["size", "2"], ["size", "1", 1, "weeklies-steps"], [3, "model", "activeIndex", "styleClass", "ngStyle"], ["size", "3"], ["size", "12", "sizeSm", "8", "sizeXs", "12", "sizeMd", "8", "sizeLg", "6", "sizeXl", "5", "offsetLg", "3", "offsetXl", "3", "offsetMd", "1", 2, "margin-top", "-35px"], [1, "heading-weeklies"], [1, "heading-weeklies-ack"], ["size", "12", "sizeSm", "8", "sizeXs", "12", "sizeMd", "8", "sizeLg", "6", "sizeXl", "5", "offsetLg", "3", "offsetXl", "3", "offsetMd", "1"], [3, "showCounter", "success", "hasHiredStatus", 4, "ngIf"], [3, "showCounter", "success", "hasHiredStatus"], ["size", "12", "sizeSm", "12", "sizeXs", "12", "sizeMd", "10", "sizeLg", "5.25", "sizeXl", "5.25", "offsetLg", "3", "offsetXl", "3", "offsetMd", "1"], [3, "showWeeklyWorkPerformedPopup"], ["size", "12", "sizeSm", "12", "sizeXs", "12", "sizeMd", "10", "sizeLg", "6", "sizeXl", "6", "offsetLg", "3", "offsetXl", "3", "offsetMd", "1"], [3, "success", "onClose", 4, "ngIf"], [3, "success", "onClose"], [3, "qeQueryModels", "header", "showQuestionNumber", "onComplete", "modelCancel"], [3, "data", "dynamicParam", "onClose"], [3, "data", "dynamicParam", "onClose", "onNext"], [1, "ion-padding"], ["ion-col", "", "size", "12", "sizeXl", "5", "offsetXl", "1", "sizeLg", "6", 1, "ion-text-left"], ["shape", "round", "fill", "outline", 3, "click"], ["size", "12", "sizeXl", "5", "sizeLg", "6", 1, "ion-text-right"], ["shape", "round", "fill", "solid", "type", "submit", 3, "click"], [1, "ion-padding", "buttons-row"], ["size", "3", 1, "weeklies-left-buttons"], ["id", "close", "shape", "round", "fill", "outline", 3, "click", 4, "ngIf"], ["id", "back", "shape", "round", "fill", "outline", 3, "click", 4, "ngIf"], ["size", "3", 1, "weeklies-right-buttons"], ["id", "next", "shape", "round", "fill", "solid", "type", "submit", 3, "click", 4, "ngIf"], ["id", "submit", "shape", "round", "fill", "solid", "type", "submit", 3, "click", 4, "ngIf"], ["id", "close", "shape", "round", "fill", "outline", 3, "click"], ["id", "back", "shape", "round", "fill", "outline", 3, "click"], ["id", "next", "shape", "round", "fill", "solid", "type", "submit", 3, "click"], ["id", "submit", "shape", "round", "fill", "solid", "type", "submit", 3, "click"]], template: function WeeklyCertificationComponent_Template(rf, ctx) { if (rf & 1) {
778
- i0.ɵɵtemplate(0, WeeklyCertificationComponent_app_dashboard_help_0_Template, 1, 1, "app-dashboard-help", 0)(1, WeeklyCertificationComponent_div_1_Template, 2, 0, "div", 1)(2, WeeklyCertificationComponent_div_2_Template, 3, 1, "div", 2)(3, WeeklyCertificationComponent_div_3_Template, 14, 11, "div", 3);
779
- } if (rf & 2) {
780
- i0.ɵɵproperty("ngIf", ctx.hs.isShowing());
781
- i0.ɵɵadvance(1);
782
- i0.ɵɵproperty("ngIf", ctx.isLoading);
783
- i0.ɵɵadvance(1);
784
- i0.ɵɵproperty("ngIf", !ctx.isLoading && ctx.errorMsg);
785
- i0.ɵɵadvance(1);
786
- i0.ɵɵproperty("ngIf", !ctx.isLoading && !ctx.errorMsg);
787
- } }, dependencies: [i4.IonButton, i4.IonCol, i4.IonFooter, i4.IonGrid, i4.IonIcon, i4.IonRow, i4.IonSpinner, i9.NgIf, i9.NgStyle, i11.Divider, i12.Steps, i13.FormBuilderPage, i14.MultiQuestionnaireComponent, i15.WeeklyWorkPerformedPopupComponent, i16.WorkSearchQuestionComponentV2, i17.AcknowledgementMsComponent, i18.AcknowledgementComponentV2, i19.ConfirmationComponent, i20.InterimConfirmationComponent, i21.TranslatePipe], styles: ["[_nghost-%COMP%] .p-steps-item{flex:0 0;text-align:center}[_nghost-%COMP%] .p-steps .p-steps-item.p-highlight .p-steps-number{background-color:var(--ion-color-primary)}[_nghost-%COMP%] .p-steps ul{justify-content:center}.app-heading[_ngcontent-%COMP%]{font-family:var(--app-font-light);font-size:36px;color:var(--ion-color-medium-gray)}.p-steps-item[_ngcontent-%COMP%] .p-steps[_ngcontent-%COMP%] .p-steps-number[_ngcontent-%COMP%]{width:var(--step-width)!important;height:var(--step-height)!important}.buttons-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:0 10px}.weeklies-left-buttons[_ngcontent-%COMP%], .weeklies-right-buttons[_ngcontent-%COMP%]{display:flex;gap:40px}ion-button[_ngcontent-%COMP%]{min-width:80px;flex-shrink:1}.weeklies-steps[_ngcontent-%COMP%]{margin-left:-135px!important}@media (max-width: 320px){.weeklies-left-buttons[_ngcontent-%COMP%], .weeklies-right-buttons[_ngcontent-%COMP%]{flex-direction:column;gap:6px}}@media (max-width: 360px){ion-button[_ngcontent-%COMP%]{font-size:14px}.buttons-row[_ngcontent-%COMP%]{padding:0 5px}}@media (min-width: 600px){.buttons-row[_ngcontent-%COMP%], .weeklies-left-buttons[_ngcontent-%COMP%], .weeklies-right-buttons[_ngcontent-%COMP%]{justify-content:center}ion-col.size-3[_ngcontent-%COMP%]{max-width:200px}ion-button[_ngcontent-%COMP%]{min-width:100px}}@media (min-width: 1280px){.buttons-row[_ngcontent-%COMP%]{justify-content:unset}.weeklies-left-buttons[_ngcontent-%COMP%]{text-align:left;padding-left:0;justify-content:unset}.weeklies-right-buttons[_ngcontent-%COMP%]{text-align:right;position:relative;padding-right:10px}}@media (min-width: 391px) and (max-width: 420px){.weeklies-steps[_ngcontent-%COMP%]{margin-left:95px!important}}@media (min-width: 320px) and (max-width: 350px){.heading-weeklies[_ngcontent-%COMP%]{font-family:var(--app-font-regular);font-size:15px;width:max-content}.heading-weeklies-ack[_ngcontent-%COMP%]{font-size:15px!important;width:max-content}.weeklies-steps[_ngcontent-%COMP%]{margin-left:100px!important}}@media (min-width: 351px) and (max-width: 470px){.heading-weeklies[_ngcontent-%COMP%]{font-family:var(--app-font-regular);font-size:17px;width:max-content}.heading-weeklies-ack[_ngcontent-%COMP%]{font-size:16px!important;width:max-content}.weeklies-steps[_ngcontent-%COMP%]{margin-left:110px!important}}@media (min-width: 470px) and (max-width: 680px){.heading-weeklies[_ngcontent-%COMP%]{font-size:18px;width:250px}.heading-weeklies-ack[_ngcontent-%COMP%]{font-size:18px!important;width:max-content}.weeklies-steps[_ngcontent-%COMP%]{margin-left:195px!important}}@media (min-width: 681px) and (max-width: 767px){.heading-weeklies[_ngcontent-%COMP%]{font-size:20px;width:250px;margin-top:50px}.weeklies-steps[_ngcontent-%COMP%]{margin-left:70px!important;margin-top:30px}}@media (min-width: 768px) and (max-width: 991px){.heading-weeklies[_ngcontent-%COMP%]{font-size:20px;width:250px;margin-top:50px;margin-left:65px}.weeklies-steps[_ngcontent-%COMP%]{margin-left:150px!important;margin-top:30px}}@media (min-width: 992px) and (max-width: 1020px){.heading-weeklies[_ngcontent-%COMP%]{font-size:20px;width:250px;margin-top:50px}.weeklies-steps[_ngcontent-%COMP%]{margin-left:-40px!important;margin-top:30px}}@media (min-width: 1021px) and (max-width: 1176px){.heading-weeklies[_ngcontent-%COMP%]{font-size:20px;margin-top:50px}.weeklies-steps[_ngcontent-%COMP%]{margin-left:-35px!important;margin-top:30px}}"] }); }
788
- }
789
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WeeklyCertificationComponent, [{
790
- type: Component,
791
- args: [{ selector: 'app-weekly-certification', template: "<app-dashboard-help *ngIf=\"hs.isShowing()\" [activeIndex]=\"4\"></app-dashboard-help>\r\n <div *ngIf=\"isLoading\" class=\"ion-text-center\">\r\n <ion-spinner name=\"dots\"></ion-spinner>\r\n </div>\r\n\r\n <div *ngIf=\"!isLoading && errorMsg\" class=\"ion-text-center ion-padding-top\" style=\"padding-top: 50px;\">\r\n <ion-icon name=\"alert-circle-outline\" style=\"font-size: 60px; color: var(--ion-color-danger);\"></ion-icon>\r\n <div [innerHTML]=\"sanitizer.bypassSecurityTrustHtml(errorMsg)\" style=\"color: var(--ion-color-danger); font-size: larger;\" class=\"ion-text-center ion-padding\"></div>\r\n </div>\r\n\r\n <div *ngIf=\"!isLoading && !errorMsg\">\r\n <ion-grid>\r\n <ion-row>\r\n <ion-col size=\"12\" offsetXl=\"1\" *ngIf=\"!isMS() || (isMS() && !multipleWeeksDue && !displayContinuedWeeksFiledHeading)\">\r\n <h1 class=\"app-heading\">{{'weeklies.v2.task.heading' | translate:dynamicParam }}</h1>\r\n </ion-col>\r\n\r\n <ion-col size=\"12\" offsetXl=\"1\" *ngIf=\"(isMS() && multipleWeeksDue && !displayContinuedWeeksFiledHeading)\">\r\n <h1 class=\"app-heading\">{{'weeklies.v2.task.multiple.weeks.heading' | translate:dynamicParam }}</h1>\r\n </ion-col>\r\n\r\n <ion-col size=\"12\" offsetXl=\"1\" *ngIf=\"(isMS() && multipleWeeksDue && displayContinuedWeeksFiledHeading)\">\r\n <h1 class=\"app-heading\">{{'weeklies.v2.task.multiple.weeks.heading.continued' | translate:dynamicParam }}</h1>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n\r\n <section *ngIf=\"!isMS()\">\r\n <ion-grid>\r\n <ion-row>\r\n <ion-col size=\"12\" sizeXl=\"5\" offsetXl=\"1\" sizeLg=\"6\">\r\n <app-work-search-question-v2 *ngIf=\"!isLoading && !errorMsg\" (success)=\"goToWeeklyCert()\" [showCounter]=\"true\" (hasHiredStatus)=\"hasHiredStatus($event)\"\r\n (hasWorkedFullTimeOrStartedWorkingStatus)=\"hasWorkedFullTimeOrStartedWorkingStatus($event)\"></app-work-search-question-v2>\r\n </ion-col>\r\n <ion-col size=\"12\" sizeXl=\"5\" sizeLg=\"6\"> \r\n <app-form-builder #weeklyQuestions [flowKey]=\"'weekly-cert'\" [autoSave]=\"false\" [showOnlyQuestion]=\"true\" [hideHeader]=\"true\"\r\n [hideFooter]=\"true\" [sizeXs]=\"12\" [sizeSm]=\"12\" [sizeMd]=\"12\" [sizeLg]=\"12\" [sizeXl]=\"12\" [offsetXl]=\"0\" [offsetLg]=\"0\" \r\n (onError)=\"handleError($event)\" (onComplete)=\"success($event)\" [dynamicParam]=\"dynamicParam\" [data]=\"dataToLoad\" \r\n [multiMode]=\"true\" [readOnlyFields]=\"readOnlyFields\" (onLoadComplete)=\"loadComplete($event)\">\r\n </app-form-builder> \r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n </section>\r\n\r\n <section *ngIf=\"isMS()\">\r\n <ion-row>\r\n <ion-col size=\"3\" offsetLg=\"3\" offsetXl=\"3\">\r\n <div class=\"p-fluid p-formgrid\">\r\n <section *ngIf=\"activeIndex == 0 || activeIndex == 1\">\r\n <h1 class=\"heading-weeklies\"><b> {{ contents[activeIndex] }} </b></h1>\r\n </section>\r\n <section *ngIf=\"activeIndex == 2\">\r\n <h1 class=\"heading-weeklies-ack\"><b> {{ contents[activeIndex] }} </b></h1>\r\n </section>\r\n </div>\r\n </ion-col>\r\n <ion-col size=\"2\"></ion-col>\r\n <ion-col class=\"weeklies-steps\" size=\"1\">\r\n <div class=\"p-fluid p-formgrid\" >\r\n <p-steps [model]=\"items\" [activeIndex]=\"activeIndex\" [styleClass]=\"'completed-'+activeIndex\" [ngStyle]=\"{'--step-width':'50px','--step-height':'50px'}\">\r\n </p-steps>\r\n </div>\r\n \r\n </ion-col>\r\n <ion-col size=\"3\">\r\n </ion-col>\r\n </ion-row>\r\n <ion-row>\r\n <ion-col style=\"margin-top: -35px;\"size=\"12\" sizeSm=\"8\" sizeXs=\"12\" sizeMd=\"8\" sizeLg=\"6\" sizeXl=\"5\" offsetLg=\"3\" offsetXl=\"3\" offsetMd=\"1\">\r\n <p-divider></p-divider>\r\n </ion-col> \r\n </ion-row>\r\n \r\n <ion-grid *ngIf=\"activeIndex == 0\">\r\n <ion-row>\r\n <ion-col size=\"12\" sizeSm=\"8\" sizeXs=\"12\" sizeMd=\"8\" sizeLg=\"6\" sizeXl=\"5\" offsetLg=\"3\" offsetXl=\"3\" offsetMd=\"1\">\r\n <app-work-search-question-v2 *ngIf=\"!isLoading && !errorMsg\" (success)=\"goToWeeklyCert()\" [showCounter]=\"true\" (hasHiredStatus)=\"hasHiredStatus($event)\"></app-work-search-question-v2>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n <ion-grid *ngIf=\"activeIndex == 1\">\r\n <ion-row>\r\n <ion-col size=\"12\" sizeSm=\"12\" sizeXs=\"12\" sizeMd=\"10\" sizeLg=\"5.25\" sizeXl=\"5.25\" offsetLg=\"3\" offsetXl=\"3\" offsetMd=\"1\"> \r\n <app-form-builder #weeklyQuestions [flowKey]=\"'weekly-cert'\" [autoSave]=\"true\" [showOnlyQuestion]=\"true\" [hideHeader]=\"true\"\r\n [hideFooter]=\"true\" [sizeXs]=\"12\" [sizeSm]=\"12\" [sizeMd]=\"12\" [sizeLg]=\"12\" [sizeXl]=\"12\" [offsetXl]=\"0\" [offsetLg]=\"0\" \r\n (onError)=\"handleError($event)\" (onComplete)=\"success($event)\" [dynamicParam]=\"dynamicParam\" [data]=\"dataToLoad\" \r\n [multiMode]=\"true\" [readOnlyFields]=\"readOnlyFields\" (onLoadComplete)=\"loadComplete($event)\">\r\n </app-form-builder> \r\n </ion-col>\r\n </ion-row>\r\n <!-- Weekly Earnings reminder popup - shown every week except for waiting period week -->\r\n <ion-row *ngIf=\"weeklyWorkPerformedPopupFlag\">\r\n <app-weekly-work-performed-popup [showWeeklyWorkPerformedPopup]=\"true\"></app-weekly-work-performed-popup>\r\n </ion-row>\r\n </ion-grid>\r\n <ion-grid *ngIf=\"activeIndex == 2\">\r\n <ion-row>\r\n <ion-col size=\"12\" sizeSm=\"12\" sizeXs=\"12\" sizeMd=\"10\" sizeLg=\"6\" sizeXl=\"6\" offsetLg=\"3\" offsetXl=\"3\" offsetMd=\"1\">\r\n <app-acknowledgement-ms *ngIf=\"showAck\" (success)=\"fileWeeklyCertDone($event)\" (onClose)=\"closeAck()\">\r\n </app-acknowledgement-ms> \r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n </section>\r\n\r\n <app-multi-questionnaire [qeQueryModels]=\"qeQueryModels\" *ngIf=\"isOpenQe\" \r\n (onComplete)=\"openSummaryPostQuestionnaires($event)\" (modelCancel)=\"onQeClose()\" \r\n [header]=\"'Follow-up Questions' | translate\" [showQuestionNumber]=\"true\"></app-multi-questionnaire>\r\n\r\n <div *ngIf=\"!isMS()\">\r\n <app-acknowledgement-v2 *ngIf=\"showAck\" (success)=\"fileWeeklyCertDone($event)\" (onClose)=\"closeAck()\">\r\n </app-acknowledgement-v2> \r\n </div>\r\n\r\n <app-confirmation *ngIf=\"showConfirmation\" (onClose)=\"closeConfirmationPopup()\" [data]=\"confirmationData\" [dynamicParam]=\"dynamicParam\"></app-confirmation>\r\n \r\n <app-interim-confirmation *ngIf=\"showInterimConfirmation\" (onClose)=\"closeConfirmationPopup()\" (onNext)=\"navigateToWeeklies($event)\" [data]=\"confirmationData\" [dynamicParam]=\"dynamicParam\"></app-interim-confirmation>\r\n\r\n <ion-footer *ngIf=\"!isMS()\">\r\n <ion-row class=\"ion-padding\">\r\n <ion-col class=\"ion-text-left\" ion-col size=\"12\" sizeXl=\"5\" offsetXl=\"1\" sizeLg=\"6\">\r\n <ion-button shape=\"round\" fill=\"outline\" (click)=\"goHome()\">Close\r\n </ion-button>\r\n </ion-col>\r\n <ion-col class=\"ion-text-right\" size=\"12\" sizeXl=\"5\" sizeLg=\"6\">\r\n <ion-button shape=\"round\" fill=\"solid\" type=\"submit\" (click)=\"openNextPage()\" >Submit\r\n </ion-button>\r\n </ion-col>\r\n </ion-row>\r\n </ion-footer>\r\n <section *ngIf=\"isMS()\">\r\n <ion-row class=\"ion-padding buttons-row\">\r\n <ion-col size=\"3\"></ion-col>\r\n <ion-col class=\"weeklies-left-buttons\" size=\"3\">\r\n <ion-button id=\"close\" shape=\"round\" fill=\"outline\" *ngIf=\"activeIndex == 0\" (click)=\"goHome()\">Close\r\n </ion-button>\r\n <ion-button id=\"back\" shape=\"round\" fill=\"outline\" *ngIf=\"activeIndex != 0\" (click)=\"activeIndex = activeIndex - 1\">\r\n Back</ion-button>\r\n </ion-col>\r\n <ion-col class=\"weeklies-right-buttons\" size=\"3\">\r\n <ion-button id=\"next\" shape=\"round\" fill=\"solid\" type=\"submit\" (click)=\"openNextPage()\" *ngIf=\"activeIndex != 2\">Next\r\n </ion-button>\r\n <ion-button id=\"submit\" shape=\"round\" fill=\"solid\" type=\"submit\" (click)=\"showAcknowledgement()\" *ngIf=\"activeIndex == 2\">\r\n Submit</ion-button>\r\n </ion-col>\r\n <ion-col size=\"3\"></ion-col>\r\n </ion-row>\r\n </section>\r\n </div>", styles: [":host ::ng-deep .p-steps-item{flex:0 0;text-align:center}:host ::ng-deep .p-steps .p-steps-item.p-highlight .p-steps-number{background-color:var(--ion-color-primary)}:host ::ng-deep .p-steps ul{justify-content:center}.app-heading{font-family:var(--app-font-light);font-size:36px;color:var(--ion-color-medium-gray)}.p-steps-item .p-steps .p-steps-number{width:var(--step-width)!important;height:var(--step-height)!important}.buttons-row{display:flex;justify-content:space-between;align-items:center;padding:0 10px}.weeklies-left-buttons,.weeklies-right-buttons{display:flex;gap:40px}ion-button{min-width:80px;flex-shrink:1}.weeklies-steps{margin-left:-135px!important}@media (max-width: 320px){.weeklies-left-buttons,.weeklies-right-buttons{flex-direction:column;gap:6px}}@media (max-width: 360px){ion-button{font-size:14px}.buttons-row{padding:0 5px}}@media (min-width: 600px){.buttons-row,.weeklies-left-buttons,.weeklies-right-buttons{justify-content:center}ion-col.size-3{max-width:200px}ion-button{min-width:100px}}@media (min-width: 1280px){.buttons-row{justify-content:unset}.weeklies-left-buttons{text-align:left;padding-left:0;justify-content:unset}.weeklies-right-buttons{text-align:right;position:relative;padding-right:10px}}@media (min-width: 391px) and (max-width: 420px){.weeklies-steps{margin-left:95px!important}}@media (min-width: 320px) and (max-width: 350px){.heading-weeklies{font-family:var(--app-font-regular);font-size:15px;width:max-content}.heading-weeklies-ack{font-size:15px!important;width:max-content}.weeklies-steps{margin-left:100px!important}}@media (min-width: 351px) and (max-width: 470px){.heading-weeklies{font-family:var(--app-font-regular);font-size:17px;width:max-content}.heading-weeklies-ack{font-size:16px!important;width:max-content}.weeklies-steps{margin-left:110px!important}}@media (min-width: 470px) and (max-width: 680px){.heading-weeklies{font-size:18px;width:250px}.heading-weeklies-ack{font-size:18px!important;width:max-content}.weeklies-steps{margin-left:195px!important}}@media (min-width: 681px) and (max-width: 767px){.heading-weeklies{font-size:20px;width:250px;margin-top:50px}.weeklies-steps{margin-left:70px!important;margin-top:30px}}@media (min-width: 768px) and (max-width: 991px){.heading-weeklies{font-size:20px;width:250px;margin-top:50px;margin-left:65px}.weeklies-steps{margin-left:150px!important;margin-top:30px}}@media (min-width: 992px) and (max-width: 1020px){.heading-weeklies{font-size:20px;width:250px;margin-top:50px}.weeklies-steps{margin-left:-40px!important;margin-top:30px}}@media (min-width: 1021px) and (max-width: 1176px){.heading-weeklies{font-size:20px;margin-top:50px}.weeklies-steps{margin-left:-35px!important;margin-top:30px}}\n"] }]
792
- }], () => [{ type: i1.WeeklyCertServiceV2 }, { type: i2.FormBuilder }, { type: i3.UtilService }, { type: i4.NavController }, { type: i5.DomSanitizer }, { type: i6.HelpService }, { type: i7.LoginService }, { type: i8.ClaimantContextService }, { type: i9.DatePipe }, { type: i10.Router }], { workSearchComponent: [{
793
- type: ViewChild,
794
- args: [WorkSearchQuestionComponentV2]
795
- }], acknowledgementMsComponent: [{
796
- type: ViewChild,
797
- args: [AcknowledgementMsComponent]
798
- }], summaryComponent: [{
799
- type: ViewChild,
800
- args: [SummaryComponentV2]
801
- }], weeklyQuestions: [{
802
- type: ViewChild,
803
- args: ['weeklyQuestions']
804
- }] }); })();
805
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WeeklyCertificationComponent, { className: "WeeklyCertificationComponent", filePath: "lib\\components\\weekly-certification\\weekly-certification.component.ts", lineNumber: 32 }); })();
806
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vla2x5LWNlcnRpZmljYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9jb21wb25lbnRzL3dlZWtseS1jZXJ0aWZpY2F0aW9uL3dlZWtseS1jZXJ0aWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy93ZWVrbHktY2VydGlmaWNhdGlvbi93ZWVrbHktY2VydGlmaWNhdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUs3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBTWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUlwSCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ3BCckgsd0NBQWtGOztJQUF2QywrQkFBaUI7OztJQUN4RCw4QkFBK0M7SUFDM0MsaUNBQXVDO0lBQzNDLGlCQUFNOzs7SUFFTiw4QkFBdUc7SUFDckcsOEJBQTBHLGFBQUE7SUFFNUcsaUJBQU07OztJQURDLGVBQXlEO0lBQXpELHdHQUF5RDs7O0lBTTFELG1DQUF1SCxhQUFBO0lBQzdGLFlBQXdEOztJQUFBLGlCQUFLLEVBQUE7OztJQUE3RCxlQUF3RDtJQUF4RCwyRkFB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QUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN4RCxPQUFPLEdBQUcsSUFBSSxJQUFJLEtBQUssSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNuQyxDQUFDOzZGQWpnQlUsNEJBQTRCO29FQUE1Qiw0QkFBNEI7MkJBRTlCLDZCQUE2QjsyQkFJM0IsMEJBQTBCOzJCQUcxQixrQkFBa0I7Ozs7Ozs7OztZQ3hDL0IsMkdBQWtGLGdFQUFBLGdFQUFBLGtFQUFBOztZQUE3RCx5Q0FBb0I7WUFDL0IsZUFBZTtZQUFmLG9DQUFlO1lBSWYsZUFBNEI7WUFBNUIscURBQTRCO1lBSzVCLGVBQTZCO1lBQTdCLHNEQUE2Qjs7O2lGRHFCMUIsNEJBQTRCO2NBTHhDLFNBQVM7MkJBQ0UsMEJBQTBCO3NTQU9wQyxtQkFBbUI7a0JBRHBCLFNBQVM7bUJBQUMsNkJBQTZCO1lBS3RDLDBCQUEwQjtrQkFEekIsU0FBUzttQkFBQywwQkFBMEI7WUFJckMsZ0JBQWdCO2tCQURmLFNBQVM7bUJBQUMsa0JBQWtCO1lBR0MsZUFBZTtrQkFBNUMsU0FBUzttQkFBQyxpQkFBaUI7O2tGQVpqQiw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgTmF2Q29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcclxuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91dGlsL3V0aWwuc2VydmljZSc7XHJcbmltcG9ydCB7IExpYkNvbnN0YW50cyB9IGZyb20gJy4uLy4uL21vZGVscy9MaWJDb25zdGFudHMnO1xyXG5pbXBvcnQgeyBCYXNlUGFnZSB9IGZyb20gJy4uLy4uL3BhZ2VzL0Jhc2VQYWdlJztcclxuaW1wb3J0IHsgQ2xhaW1hbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NsYWltYW50LWNvbnRleHQvY2xhaW1hbnQtY29udGV4dC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbG9naW4vbG9naW4uc2VydmljZSc7XHJcbmltcG9ydCB7IEhlbHBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaGVscC9oZWxwLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBRdWVzdGlvbm5haXJlUXVlcnlNb2RlbCB9IGZyb20gJy4uLy4uLy9tb2RlbHMvcXVlc3Rpb25uYWlyZS9RdWVzdGlvbm5haXJlUXVlcnlNb2RlbCc7XHJcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5pbXBvcnQgeyBIZWxwQ29uc3RhbnRzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0hlbHBDb25zdGFudHMnO1xyXG5pbXBvcnQgeyBXZWVrbHlDZXJ0U2VydmljZVYyIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvd2Vla2x5LWNlcnQvd2Vla2x5LWNlcnQtdjIuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1bW1hcnlDb21wb25lbnRWMiB9IGZyb20gJy4uL3dlZWtseS1zdW1tYXJ5LXYyL3N1bW1hcnkuY29tcG9uZW50LXYyJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXJQYWdlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9xdWVzdGlvbm5haXJlL2Zvcm0tYnVpbGRlci9mb3JtLWJ1aWxkZXIucGFnZSc7XHJcbmltcG9ydCB7IFdvcmtTZWFyY2hRdWVzdGlvbkNvbXBvbmVudFYyIH0gZnJvbSAnLi4vd2Vla2x5LXdvcmstc2VhcmNoLXF1ZXN0aW9uLXYyL3dvcmstc2VhcmNoLXF1ZXN0aW9uLmNvbXBvbmVudC12Mic7XHJcbmltcG9ydCB7IFdlZWtseUNlcnRpZmljYXRpb25Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy93ZWVrbHktY2VydC93ZWVrbHktY2VydGlmaWNhdGlvbi12Mi1tb2RlbCc7XHJcbmltcG9ydCB7IFdlZWtseUNlcnRFbGlnaWJpbGl0eU1vZGVsVjIgfSBmcm9tICcuLi8uLi9tb2RlbHMvd2Vla2x5LWNlcnQvd2Vla2x5LWNlcnQtZWxpZ2liaWxpdHktdjItbW9kZWwnO1xyXG5pbXBvcnQgeyBTdGF0dXNNb2RlbCB9IGZyb20gJy4uLy4uLy9tb2RlbHMvcXVlc3Rpb25uYWlyZS9TdGF0dXNNb2RlbCc7XHJcbmltcG9ydCB7IEFja25vd2xlZGdlbWVudE1zQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy93ZWVrbHktYWNrbm93bGVkZ2VtZW50LW1zL2Fja25vd2xlZGdlbWVudC1tcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBXb3JrU2VhcmNoTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvd2Vla2x5LWNlcnQvd29yay1zZWFyY2gtdjItbW9kZWwnO1xyXG5pbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFdvcmtTZWFyY2hSZWNvcmRNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy93ZWVrbHktY2VydC93b3JrLXNlYXJjaC1yZWNvcmQtdjItbW9kZWwnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtd2Vla2x5LWNlcnRpZmljYXRpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi93ZWVrbHktY2VydGlmaWNhdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3dlZWtseS1jZXJ0aWZpY2F0aW9uLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgV2Vla2x5Q2VydGlmaWNhdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VQYWdlIGltcGxlbWVudHMgT25Jbml0e1xyXG5cclxuQFZpZXdDaGlsZChXb3JrU2VhcmNoUXVlc3Rpb25Db21wb25lbnRWMilcclxuICB3b3JrU2VhcmNoQ29tcG9uZW50OiBXb3JrU2VhcmNoUXVlc3Rpb25Db21wb25lbnRWMjtcclxuXHJcbiAgLy9UcmlnZ2VyaW5nIFN1Ym1pdCBpbiB0aGUgY29tcG9uZW50XHJcbiAgQFZpZXdDaGlsZChBY2tub3dsZWRnZW1lbnRNc0NvbXBvbmVudClcclxuICBhY2tub3dsZWRnZW1lbnRNc0NvbXBvbmVudDogQWNrbm93bGVkZ2VtZW50TXNDb21wb25lbnQ7XHJcblxyXG4gIEBWaWV3Q2hpbGQoU3VtbWFyeUNvbXBvbmVudFYyKVxyXG4gIHN1bW1hcnlDb21wb25lbnQ6IFN1bW1hcnlDb21wb25lbnRWMjtcclxuXHJcbiAgQFZpZXdDaGlsZCgnd2Vla2x5UXVlc3Rpb25zJykgd2Vla2x5UXVlc3Rpb25zOiBGb3JtQnVpbGRlclBhZ2VcclxuXHJcbiAgcHVibGljIHNob3dBY2s6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd0NvbmZpcm1hdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBjb25maXJtYXRpb25EYXRhOiBhbnk7XHJcblxyXG4gIHB1YmxpYyBpdGVtczogTWVudUl0ZW1bXTtcclxuICBwdWJsaWMgY29udGVudHM6IHN0cmluZ1tdO1xyXG4gIHB1YmxpYyBhY3RpdmVJbmRleCA9IDA7XHJcbiAgcHVibGljIGVycm9yTXNnOiBzdHJpbmc7XHJcbiAgcHVibGljIGlzTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaG93V29ya1NlYXJjaDogYm9vbGVhbjtcclxuICBwdWJsaWMgZHluYW1pY1BhcmFtOiBhbnk7XHJcbiAgaXNPcGVuUWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBxZVF1ZXJ5TW9kZWxzOiBRdWVzdGlvbm5haXJlUXVlcnlNb2RlbFtdO1xyXG4gIHBvdGVudGlhbElzc3VlczogbnVtYmVyW107XHJcbiAgc3RhdHVzTW9kZWw6IFN0YXR1c01vZGVsO1xyXG4gIHJlYWRPbmx5RmllbGRzOiBzdHJpbmdbXSA9IG51bGw7XHJcbiAgcmVhZE9ubHlEYXRhOiBhbnk7XHJcbiAgZGF0YVRvTG9hZDogYW55O1xyXG4gIHB1YmxpYyB3b3JrU2VhcmNoV2FpdmVkOiBhbnk7XHJcbiAgcHVibGljIHdhaXZlclJlYXNvbjogU3RyaW5nID0gbnVsbDtcclxuICBwdWJsaWMgd29ya1NlYXJjaERhdGFNczogV29ya1NlYXJjaE1vZGVsO1xyXG5cclxuICBwdWJsaWMgbXVsdGlwbGVXZWVrc0R1ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaG93SW50ZXJpbUNvbmZpcm1hdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBudW1iZXJPZk11bHRpcGxlV2Vla3NEdWU6IG51bWJlcjtcclxuICByZWNlaXZlZERhdGE6IGFueTtcclxuICBwdWJsaWMgZGlzcGxheUNvbnRpbnVlZFdlZWtzRmlsZWRIZWFkaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcGFyc2VkTWF4UlRXRGF0ZTogYW55O1xyXG4gIHB1YmxpYyB3ZWVrbHlXb3JrUGVyZm9ybWVkUG9wdXBGbGFnOiBib29sZWFuID0gZmFsc2U7XHJcbiAgd29ya1NlYXJjaFJlY29yZHM6IFdvcmtTZWFyY2hSZWNvcmRNb2RlbFtdO1xyXG5cclxuICBjb3VudCA9IDA7XHJcbiAgcmVlbVdvcmtTZWFyY2hSZWNvcmRDb3VudCA9IDA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgd2NTZXJ2aWNlOiBXZWVrbHlDZXJ0U2VydmljZVYyLCBwdWJsaWMgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIHV0aWw6IFV0aWxTZXJ2aWNlLCBwcml2YXRlIG5hdjogTmF2Q29udHJvbGxlcixcclxuICAgIHB1YmxpYyBzYW5pdGl6ZXI6IERvbVNhbml0aXplciwgcHVibGljIGhzOiBIZWxwU2VydmljZSwgcHVibGljIGxzOiBMb2dpblNlcnZpY2UsIHByaXZhdGUgY29udGV4dFNlcnZpY2U6IENsYWltYW50Q29udGV4dFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRhdGVwaXBlOkRhdGVQaXBlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLndjU2VydmljZS5yZXNldFdlZWtseUNlcnREYXRhKCk7XHJcblxyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy53Y1NlcnZpY2UuY2hlY2tXZWVrbHlFbGlnaWJpbGl0eSgpXHJcbiAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgcmVzID0+IHtcclxuICAgICAgICAgIHRoaXMucHJvY2Vzc1dlZWtseUNlcnRFbGlnaWJpbHR5U3VjY2VzcyhyZXMpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyID0+IHtcclxuICAgICAgICAgIHRoaXMucHJvY2Vzc1dlZWtseUNlcnRFbGlnaWJpbGl0eUVycm9yKGVycik7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG5cclxuICB9XHJcblxyXG4gIG9uU3RlcENoYW5nZShpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmFjdGl2ZUluZGV4ID0gaW5kZXg7XHJcbiAgfVxyXG5cclxuICBwcm9jZXNzV2Vla2x5Q2VydEVsaWdpYmlsdHlTdWNjZXNzKHJlczogV2Vla2x5Q2VydEVsaWdpYmlsaXR5TW9kZWxWMikge1xyXG4gICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEgPSByZXM7XHJcbiAgICB0aGlzLmVycm9yTXNnID0gbnVsbDtcclxuICAgIHRoaXMuZ2V0TGFiZWxNYXhSVFdEYXRlKCk7XHJcbiAgICB0aGlzLmR5bmFtaWNQYXJhbSA9IHtcclxuICAgICAgJ3NhdHVyZGF5X2RhdGUnOiB0aGlzLndjU2VydmljZS5nZXRTYXR1cmRheURhdGVBc1N0cmluZygpLFxyXG4gICAgICAnc3VuZGF5X2RhdGUnOiB0aGlzLndjU2VydmljZS5nZXRTdW5kYXlEYXRlQXNTdHJpbmcoKSxcclxuICAgICAgJ21pbl9ydHdfZGF0ZSc6IHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhLm1pbkFsbG93ZWRSdHdEYXRlLFxyXG4gICAgICAnbWF4X3J0d19kYXRlJzogdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEubWF4QWxsb3dlZFJ0d0RhdGUsXHJcbiAgICAgICdwZW5zaW9uX2VtcGxveWVycyc6IHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhLnBlbnNpb25FbXBsb3llcnMsXHJcbiAgICAgICdkdWFEZWNsYXJhdGlvbic6IHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhLmR1YURlY2xhcmF0aW9uLFxyXG4gICAgICAnY2xhaW1XZWVrRW5kRGF0ZSc6IHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhLmNsYWltV2Vla0VuZERhdGUsXHJcbiAgICAgICdjbGFpbWFudElkJzogdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEuY2xhaW1hbnRJZCxcclxuICAgICAgJ2xhYmVsX21heFJ0d0RhdGUnOiB0aGlzLnBhcnNlZE1heFJUV0RhdGUsXHJcbiAgICB9O1xyXG5cclxuICAgIC8vIGlmIHRoZSB1c2VyIGlzIG5hdmlnYXRpbmcgdG8gd2Vla2xpZXMgZnJvbSBpbnRlcmltIGNvbmZpcm1hdGlvbiB0byBjb250aW51ZSBmaWxpbmcgZGF0YSB3aWxsIGJlIHN0b3JlZFxyXG4gICAgY29uc3Qgc3RvcmVkRGF0YSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdpbnRlcmltQ29uZmlybWF0aW9uRGF0YScpO1xyXG4gICAgaWYgKHN0b3JlZERhdGEpIHtcclxuICAgICAgY29uc3QgZGVlbmNvZGVkUGFyYW1zID0gYXRvYigoc3RvcmVkRGF0YSkpO1xyXG4gICAgICB0aGlzLnJlY2VpdmVkRGF0YSA9IEpTT04ucGFyc2UoZGVjb2RlVVJJQ29tcG9uZW50KGRlZW5jb2RlZFBhcmFtcykpO1xyXG4gICAgICBpZih0aGlzLmR5bmFtaWNQYXJhbS5jbGFpbWFudElkICE9IHRoaXMucmVjZWl2ZWREYXRhLmNsYWltYW50SWQpXHJcbiAgICAgIHtcclxuICAgICAgICB0aGlzLnJlY2VpdmVkRGF0YSA9IG51bGw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICAgLy8gY2hlY2tpbmcgZGF0YSBmb3IgZmxhZyB0byBjb250aW51ZSB0byBmaWxlIGZvciBtdWx0aXBsZSB3ZWVrc1xyXG4gICAgICBpZih0aGlzLnJlY2VpdmVkRGF0YSAmJiAodGhpcy5keW5hbWljUGFyYW0uY2xhaW1hbnRJZCA9PSB0aGlzLnJlY2VpdmVkRGF0YS5jbGFpbWFudElkKSAmJlxyXG4gICAgICAgIHRoaXMucmVjZWl2ZWREYXRhLmNvbnRpbnVlVG9GaWxlRm9yTXVsdGlwbGVXZWVrcyA9PSB0cnVlKVxyXG4gICAgICB7XHJcbiAgICAgICAgdGhpcy5tdWx0aXBsZVdlZWtzRHVlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmRpc3BsYXlDb250aW51ZWRXZWVrc0ZpbGVkSGVhZGluZyA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5keW5hbWljUGFyYW0ubmV4dENlcnRpZmljYXRpb25Ub0ZpbGVDb3VudCA9IHRoaXMucmVjZWl2ZWREYXRhLmN1cnJlbnROdW1iZXJGaWxpbmc7IFxyXG4gICAgICAgIHRoaXMuZHluYW1pY1BhcmFtLnRvdGFsVG9DZXJ0aWZ5ID0gdGhpcy5yZWNlaXZlZERhdGEudG90YWw7XHJcbiAgICAgICAgLy8gdGhpcy5udW1iZXJPZk11bHRpcGxlV2Vla3NEdWUgPSB0aGlzLnJlY2VpdmVkRGF0YS5jb3VudDtcclxuXHJcbiAgICAgICAgLy8gaWYgbW9yZSB3ZWVrcyBhcmUgZHVlIHNldCB0aGUgbmV4dCBzdW5kYXkgYW5kIHNhdHVyZGF5IGRheXNcclxuICAgICAgICBpZih0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0U2VydmVyRGF0YS53ZWVrc1RvQmVDZXJ0aWZpZWQubGVuZ3RoPjEpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgdGhpcy5keW5hbWljUGFyYW0ubmV4dF9zYXR1cmRheSA9IHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhLndlZWtzVG9CZUNlcnRpZmllZFsxXTtcclxuICAgICAgICAgIHRoaXMuZHluYW1pY1BhcmFtLm5leHRfc3VuZGF5ID0gdGhpcy5nZXRQcmV2aW91c1N1bmRheSh0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0U2VydmVyRGF0YS53ZWVrc1RvQmVDZXJ0aWZpZWRbMV0pXHJcbiAgICAgICAgICB0aGlzLmR5bmFtaWNQYXJhbS5udW1iZXJPZk11bHRpcGxlV2Vla3NEdWUgPSB0aGlzLnJlY2VpdmVkRGF0YS50b3RhbDtcclxuICAgICAgICB9XHJcbiAgICAgIH0gXHJcbiAgICAgIC8vIGlmIGNsYWltYW50IGZpbGluZyBhbmQgaGFzIG11bHRpcGxlIGNlcnRpZmljYXRpb25zIGR1ZVxyXG4gICAgICAvLyB3aWxsIGdvIHRocm91Z2ggaW50ZXJpbSBwcm9jZXNzIHVudGlsIGZpbmFsIGxhdGVzdCB3ZWVrIGZpbGVkXHJcbiAgICAgIGVsc2UgaWYodGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEud2Vla3NUb0JlQ2VydGlmaWVkLmxlbmd0aD4xKVxyXG4gICAgICB7XHJcbiAgICAgICAgdGhpcy5udW1iZXJPZk11bHRpcGxlV2Vla3NEdWUgPSB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0U2VydmVyRGF0YS53ZWVrc1RvQmVDZXJ0aWZpZWQubGVuZ3RoO1xyXG4gICAgICAgIHRoaXMubXVsdGlwbGVXZWVrc0R1ZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5keW5hbWljUGFyYW0ubnVtYmVyT2ZNdWx0aXBsZVdlZWtzRHVlID0gdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEud2Vla3NUb0JlQ2VydGlmaWVkLmxlbmd0aDtcclxuICAgICAgICB0aGlzLmR5bmFtaWNQYXJhbS5uZXh0X3NhdHVyZGF5ID0gdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEud2Vla3NUb0JlQ2VydGlmaWVkWzFdO1xyXG4gICAgICAgIHRoaXMuZHluYW1pY1BhcmFtLm5leHRfc3VuZGF5ID0gdGhpcy5nZXRQcmV2aW91c1N1bmRheSh0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0U2VydmVyRGF0YS53ZWVrc1RvQmVDZXJ0aWZpZWRbMV0pXHJcbiAgICAgIH1cclxuICAgIFxyXG4gICAgaWYgKExpYkNvbnN0YW50cy5sZWdhY3lNZW51ID09ICdmYWxzZScpIHtcclxuICAgICAgdGhpcy5ocy5zaG93RGlhbG9nSWZQcmVmZXJlbmNlQWxsb3coSGVscENvbnN0YW50cy5XRUVLTFlfSEVMUCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5oYW5kbGVIaWRkZW5GaWVsZHMocmVzKTtcclxuXHJcbiAgICB0aGlzLmluaXRpYWxpemVEYXRhRm9yV29ya1NlYXJjaEZvcm0oKTtcclxuICAgIGlmICh0aGlzLmlzTVMoKSkge1xyXG4gICAgICB0aGlzLml0ZW1zID0gW1xyXG4gICAgICAgIHsgbGFiZWw6ICcnLCBjb21tYW5kOiAoKSA9PiB7IHRoaXMub25TdGVwQ2hhbmdlKDApOyB9IH0sXHJcbiAgICAgICAgeyBsYWJlbDogJycsIGNvbW1hbmQ6ICgpID0+IHsgdGhpcy5vblN0ZXBDaGFuZ2UoMSk7IH0gfSxcclxuICAgICAgICB7IGxhYmVsOiAnJywgY29tbWFuZDogKCkgPT4geyB0aGlzLm9uU3RlcENoYW5nZSgyKTsgfSB9XHJcbiAgICAgIF07XHJcbiAgICB9IFxyXG5cclxuICAgIHRoaXMuY29udGVudHMgPSBbJyAgIFdvcmsgU2VhcmNoIEFjdGl2aXRpZXMnLCAnICAgV2Vla2x5IFF1ZXN0aW9ucycsICcgICBBY2tub3dsZWRnZSAmIENlcnRpZnknXTtcclxuICB9XHJcblxyXG4gIGdldExhYmVsTWF4UlRXRGF0ZSgpe1xyXG4gICAgdGhpcy5wYXJzZWRNYXhSVFdEYXRlID0gbmV3IERhdGUodGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEubWF4QWxsb3dlZFJ0d0RhdGUpO1xyXG4gICAgdGhpcy5wYXJzZWRNYXhSVFdEYXRlLnNldERhdGUodGhpcy5wYXJzZWRNYXhSVFdEYXRlLmdldERhdGUoKSArIDEpO1xyXG4gICAgdGhpcy5wYXJzZWRNYXhSVFdEYXRlPXRoaXMuZGF0ZXBpcGUudHJhbnNmb3JtKHRoaXMucGFyc2VkTWF4UlRXRGF0ZSwgJ01NL2RkL3l5eXknKTtcclxuICB9XHJcblxyXG4gIHByb2Nlc3NXZWVrbHlDZXJ0RWxpZ2liaWxpdHlFcnJvcihlcnI6IGFueSkge1xyXG4gICAgaWYgKGVyci5tc2cgIT0gbnVsbCAmJiBlcnIubXNnWzBdID09ICdObyBXZWVrcyBhcmUgcGVuZGluZyB0byBiZSBmaWxlZC4nKSB7XHJcbiAgICAgIHRoaXMudXRpbC5nZXRTdGF0ZSgpPT09J0NUJyA/IHRoaXMubmF2Lm5hdmlnYXRlUm9vdChcIndlZWtseS1ub3QtZWxpZ2libGVcIikgOiB0aGlzLm5hdi5uYXZpZ2F0ZVJvb3QoXCJ3b3JrLXNlYXJjaC1qb3VybmFsXCIpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5lcnJvck1zZyA9IGVyci5tc2c7XHJcbiAgICB9XHJcbiAgICB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0U2VydmVyRGF0YSA9IG51bGw7XHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgaW5pdGlhbGl6ZURhdGFGb3JXb3JrU2VhcmNoRm9ybSgpIHtcclxuICAgIHRoaXMud29ya1NlYXJjaFdhaXZlZCA9IHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhLmlzV29ya1NlYXJjaFdhaXZlZDtcclxuICAgIHRoaXMud2FpdmVyUmVhc29uID0gdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEud2FpdmVyUmVhc29uO1xyXG4gICAgLy9SRUVNIEFDVElWSVRZIFRZUEUgQ09VTlQgQVNTSUdOTUVOVFxyXG4gICAgdGhpcy5yZWVtV29ya1NlYXJjaFJlY29yZENvdW50ID0gTnVtYmVyKHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhPy5oaWRSZWVtV29ya1NlYXJjaFJlY29yZENvdW50ID8/IDApO1xyXG4gICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEuaGlkUmVlbVdvcmtTZWFyY2hSZWNvcmRDb3VudCA9IHRoaXMucmVlbVdvcmtTZWFyY2hSZWNvcmRDb3VudDtcclxuICAgIC8vXHJcbiAgICB0aGlzLndjU2VydmljZS5nZXRDbGFpbWFudFdvcmtTZWFyY2hKb3VybmFsUmVjb3Jkcyh0aGlzLndjU2VydmljZS5nZXRTYXR1cmRheURhdGVBc1N0cmluZygpKS5zdWJzY3JpYmUoXHJcbiAgICAgIHJlcyA9PiB7XHJcbiAgICAgICAgdGhpcy53Y1NlcnZpY2Uud29ya1NlYXJjaEpvdXJuYWwgPSByZXM7XHJcbiAgICAgICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEud29ya1NlYXJjaFJlY29yZHMgPSByZXMud29ya1NlYXJjaFJlY29yZHM7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNNRSgpICYmIHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnREYXRhLndvcmtTZWFyY2hSZWNvcmRzKSB7XHJcbiAgICAgICAgICBjb25zdCBoYXNTdGFydGVkV29ya2luZyA9ICh0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YS53b3JrU2VhcmNoUmVjb3JkcyA/PyBbXSkuc29tZShcclxuICAgICAgICAgICAgcmVjID0+IHJlYz8uc2VhcmNoUmVzdWx0ID09PSAnU1RXSydcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICBpZihoYXNTdGFydGVkV29ya2luZyl7XHJcbiAgICAgICAgICAgIHRoaXMuaGFzV29ya2VkRnVsbFRpbWVPclN0YXJ0ZWRXb3JraW5nU3RhdHVzKHRydWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnIgPT4ge1xyXG4gICAgICAgIHRoaXMud2NTZXJ2aWNlLndvcmtTZWFyY2hKb3VybmFsID0gbnVsbDtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICAgIFxyXG4gICAgaWYgKHRoaXMuaXNNUygpKSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlSW5kZXggPSAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb3Blbk5leHRQYWdlKCkge1xyXG4gICAgaWYgKHRoaXMud29ya1NlYXJjaENvbXBvbmVudCkge1xyXG4gICAgICBpZiAodGhpcy53Y1NlcnZpY2UuZ2V0RGlzcGxheVdvcmtTZWFyY2hTY3JlZW4oKSkge1xyXG4gICAgICAgIHRoaXMud29ya1NlYXJjaENvbXBvbmVudC5zdWJtaXRGb3JtKCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5nb1RvV2Vla2x5Q2VydCgpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMud29ya1NlYXJjaFdhaXZlZCkge1xyXG4gICAgICB0aGlzLmdvVG9XZWVrbHlDZXJ0KCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmdvVG9XZWVrbHlDZXJ0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnb1RvV2Vla2x5Q2VydCgpIHtcclxuICAgIGlmICh0aGlzLmlzTVMoKSkge1xyXG4gICAgICBpZiAodGhpcy5hY3RpdmVJbmRleCA9PSAwKSB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVJbmRleCA9IDE7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMud2Vla2x5UXVlc3Rpb25zKSB7XHJcbiAgICAgICAgICB0aGlzLmNvdW50ID0gdGhpcy5jb3VudCArIDE7XHJcbiAgICAgICAgICBpZih0aGlzLmNvdW50ID4gMSAmJiB0aGlzLmxzLmlzQ3NyKCkpe1xyXG4gICAgICAgICAgICB0aGlzLndlZWtseVF1ZXN0aW9ucy5xdWVzdGlvbm5haXJlLnF1ZXN0aW9ubmFpcmUucXVlc3Rpb25uYWlyZUZvcm0uZm9ybS5jb250cm9sc1snaGlkQ3NyRmlyc3RQYXNzJ10uc2V0VmFsdWUoJ1knKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMud2Vla2x5UXVlc3Rpb25zLnN1Ym1pdFF1ZXN0aW9ubmFpcmUoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLndlZWtseVF1ZXN0aW9ucykge1xyXG4gICAgICAgIHRoaXMud2Vla2x5UXVlc3Rpb25zLnN1Ym1pdFF1ZXN0aW9ubmFpcmUoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuIFxyXG4gIHN1Y2Nlc3Mod2Vla2x5UXVlc3Rpb25zUmVzcG9uc2UpIHtcclxuICAgIGNvbnN0IGZvcm1EYXRhOiBXZWVrbHlDZXJ0aWZpY2F0aW9uTW9kZWwgPVxyXG4gICAgICBKU09OLnBhcnNlKHdlZWtseVF1ZXN0aW9uc1Jlc3BvbnNlLnNjcmVlblF1ZXN0aW9ubmFpcmVEYXRhWzBdKTtcclxuICAgIGZvcm1EYXRhLndvcmtTZWFyY2hSZWNvcmRzID0gdGhpcy53Y1NlcnZpY2UuZ2V0V29ya1NlYXJjaFJlY29yZHMoKTtcclxuICAgIGZvcm1EYXRhLndvcmtTZWFyY2hEYXRhID0gdGhpcy53Y1NlcnZpY2UuZ2V0V29ya1NlYXJjaERhdGEoKTtcclxuICAgIHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnREYXRhID0gZm9ybURhdGE7XHJcbiAgICB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YS5jbGFpbVdlZWtFbmREYXRlID0gdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEud2Vla1RvQ2VydGlmeTtcclxuICAgIHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnREYXRhLmhpZEluQXBwcm92ZWRUcmFpbmluZyA9IHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhLmhpZEluQXBwcm92ZWRUcmFpbmluZztcclxuICAgIHRoaXMub3BlbkZvbGxvd3VwUXVlc3Rpb25zKCk7XHJcbiAgfVxyXG5cclxuICBvcGVuRm9sbG93dXBRdWVzdGlvbnMoKSB7XHJcbiAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpO1xyXG4gICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEuc2hvd1dvcmtTZWFyY2hTY3JlZW4gPSB0aGlzLndjU2VydmljZS5nZXREaXNwbGF5V29ya1NlYXJjaFNjcmVlbigpO1xyXG4gICAgaWYgKHRoaXMud2NTZXJ2aWNlLmdldFdvcmtTZWFyY2hSZWNvcmRzQ291bnQoKSA+IDApIHtcclxuICAgICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEud29ya1NlYXJjaERhdGEuaXNXb3JrU2VhcmNoUGVyZm9ybWVkRmxhZyA9ICcxJztcclxuICAgIH0gZWxzZSBpZiAodGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEud29ya1NlYXJjaERhdGEgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YS53b3JrU2VhcmNoRGF0YS5pc1dvcmtTZWFyY2hQZXJmb3JtZWRGbGFnID0gJzAnO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLndjU2VydmljZS5nZXRFbXBsb3llclJlY29yZHNDb3VudCgpID4gMCkge1xyXG4gICAgICB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YS53b3JrUGVyZm9ybWVkID0gJ1knO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEud29ya1BlcmZvcm1lZCA9ICdOJztcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YS53b3JrUGVyZm9ybWVkU2VhcE5vdFBhcnR0aW1lID0gKHRoaXMud2NTZXJ2aWNlLmdldEVtcGxveWVyUmVjb3Jkc0NvdW50KCkgPiAwICYmIHRoaXMud2NTZXJ2aWNlLmdldEhpZElzU2VhcFBhcnRpY2lwYW50KCkpID8gJ1knIDogJ04nO1xyXG5cclxuICAgIGlmKHRoaXMuaXNNUygpICYmIHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhLmhpZElzU2VhcFBhcnRpY2lwYW50PT0nWScpe1xyXG4gICAgICAvL0RvbmUgdG8gaGFuZGxlIG5ldyB2ZXJiaWFnZSBmb3Igd29ya1BlcmZvcm1lZCBmb3IgU2VhcCBQYXJ0aWNpcGFudHMuXHJcbiAgICB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YS53b3JrUGVyZm9ybWVkID0gdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEud29ya1BlcmZvcm1lZFNlYXBOb3RQYXJ0dGltZTtcclxuXHJcbiAgICAvL0RvbmUgdG8gaGFuZGxlIG5ldyB2ZXJiaWFnZSBmb3IgU0VBUCBQYXJ0aWNpcGFudHMgZm9yIGF2YWlsYWJsZSBxdWVzdGlvbi5cclxuICAgIHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnREYXRhLmF2YWlsYWJsZSA9ICh0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YS5hdmFpbGFibGVTZWFwKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLndjU2VydmljZS5kZXRlcm1pbmVRdWVzdGlvbm5pYXJlVG9PcGVuKCkuc3Vic2NyaWJlKFxyXG4gICAgICByZXMgPT4ge1xyXG4gICAgICAgIHRoaXMuc3RhdHVzTW9kZWwgPSByZXMuc3RhdHVzTW9kZWw7XHJcbiAgICAgICAgdGhpcy5xZVF1ZXJ5TW9kZWxzID0gcmVzLnN0YXR1c01vZGVsLnFlUXVlcnlNb2RlbHM7XHJcbiAgICAgICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEucG90ZW50aWFsSXNzdWVzID0gcmVzLnBvdGVudGlhbElzc3VlSWRzO1xyXG4gICAgICAgIHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnREYXRhLnBlbnNpb25EZW5pZWRQb3RlbnRpYWxJc3N1ZXMgPSByZXMucGVuc2lvbkRlbmllZFBvdGVudGlhbElzc3VlcztcclxuICAgICAgICB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YS5ib251c1BheVBvdGVudGlhbElzc3VlcyA9IHJlcy5ib251c1BheVBvdGVudGlhbElzc3VlcztcclxuICAgICAgICB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YS5vdGhlclBheVBvdGVudGlhbElzc3VlcyA9IHJlcy5vdGhlclBheVBvdGVudGlhbElzc3VlcztcclxuICAgICAgICBpZiAodGhpcy5zdGF0dXNNb2RlbC5zaG93UWUpIHtcclxuICAgICAgICAgIHRoaXMuaXNPcGVuUWUgPSB0cnVlO1xyXG4gICAgICAgICAgaWYgKHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnREYXRhLmVtcGxveWVyRGV0YWlsc0xpc3QgIT0gbnVsbFxyXG4gICAgICAgICAgICAmJiB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YS5lbXBsb3llckRldGFpbHNMaXN0Lmxlbmd0aCA+IDBcclxuICAgICAgICAgICAgJiYgcmVzLnRlbXBFbXBsb3llclNlcFBvdGVudGlhbElzc3VlTWFwICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEudGVtcEVtcGxveWVyU2VwUG90ZW50aWFsSXNzdWVNYXAgPSByZXMudGVtcEVtcGxveWVyU2VwUG90ZW50aWFsSXNzdWVNYXA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuc2hvd0Fja25vd2xlZGdlbWVudCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnV0aWwuaGlkZUxvYWRlcigpO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnIgPT4ge1xyXG4gICAgICAgIHRoaXMudXRpbC5zaG93RXJyb3IoZXJyLm1zZyk7XHJcbiAgICAgICAgdGhpcy51dGlsLmhpZGVMb2FkZXIoKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG9wZW5TdW1tYXJ5UG9zdFF1ZXN0aW9ubmFpcmVzKGV2ZW50OiBhbnkpIHtcclxuICAgIGlmIChldmVudCAmJiBldmVudC5zaXplID4gMCkge1xyXG4gICAgICBpZiAoZXZlbnQuaGFzKDkwMDEpKSB7XHJcbiAgICAgICAgbGV0IHdvcmtTZWFyY2hSZWFzb24gPSBldmVudC5nZXQoOTAwMSkucmVhc29uSW5hZGVxdWF0ZVdvcmtTZWFyY2g7XHJcbiAgICAgICAgaWYodGhpcy5pc0NUKCkpe1xyXG4gICAgICAgICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEud29ya1NlYXJjaERhdGEucmVhc29uSW5hZGVxdWF0ZVdvcmtTZWFyY2ggPSB3b3JrU2VhcmNoUmVhc29uO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEud29ya1NlYXJjaERhdGEuaXNXb3JrU2VhcmNoUGVyZm9ybWVkRmxhZyA9PSAnMSdcclxuICAgICAgICAgICYmIHRoaXMud2NTZXJ2aWNlLmNoZWNrSWZJbmFkZXF1YXRlV29ya1NlYXJjaFF1ZXN0aW9ubmFpcmVTaG91bGRCZU9wZW5lZCgpXHJcbiAgICAgICAgICAmJiB0aGlzLmlzTVMoKSkge1xyXG4gICAgICAgICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEud29ya1NlYXJjaERhdGEucmVhc29uSW5hZGVxdWF0ZVdvcmtTZWFyY2ggPSB3b3JrU2VhcmNoUmVhc29uO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEud29ya1NlYXJjaERhdGEuaXNXb3JrU2VhcmNoUGVyZm9ybWVkRmxhZyA9PSAnMCcpIHtcclxuICAgICAgICAgIHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnREYXRhLndvcmtTZWFyY2hEYXRhLmV4cGxhaW5XaHlEaWROb3RMb29rRm9yV29yayA9IHdvcmtTZWFyY2hSZWFzb247XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChldmVudC5oYXMoMTc5KSkge1xyXG4gICAgICAgIHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnREYXRhLmFkbWluTGVhdmVEZXRhaWxzID0gZXZlbnQuZ2V0KDE3OSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGV2ZW50Lmhhcyg5MDAyKSkge1xyXG4gICAgICAgIHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnREYXRhLmFkbWluTGVhdmVEZXRhaWxzID0gZXZlbnQuZ2V0KDkwMDIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zaG93QWNrbm93bGVkZ2VtZW50KCk7XHJcbiAgICB0aGlzLmlzT3BlblFlID0gZmFsc2U7XHJcbiAgICB0aGlzLnV0aWwuaGlkZUxvYWRlcigpO1xyXG4gIH1cclxuXHJcbiAgb25RZUNsb3NlKCkge1xyXG4gICAgdGhpcy5pc09wZW5RZSA9IGZhbHNlO1xyXG4gICAgdGhpcy51dGlsLmhpZGVMb2FkZXIoKTtcclxuICB9XHJcblxyXG4gIGdvVG9TdW1tYXJ5KCkge1xyXG4gICAgdGhpcy5hY3RpdmVJbmRleCA9IDE7XHJcbiAgfVxyXG5cclxuICBjbG9zZUFjaygpIHtcclxuICAgIHRoaXMuc2hvd0FjayA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZmlsZVdlZWtseUNlcnREb25lKGV2ZW50KSB7XHJcbiAgICB0aGlzLnNob3dBY2sgPSBmYWxzZTtcclxuICAgIHRoaXMuY29uZmlybWF0aW9uRGF0YSA9IGV2ZW50O1xyXG4gICAgaWYodGhpcy5pc01TKCkgJiYgdGhpcy5tdWx0aXBsZVdlZWtzRHVlID09IHRydWUgJiYgdGhpcy5yZWNlaXZlZERhdGEpXHJcbiAgICB7XHJcbiAgICAgIC8vIGlmIHRoaXMgaXMgdGhlIGxhc3QgdGltZSBmaWxpbmcgd2Vla2xpZXMgdGhyb3VnaCBpbnRlcmltIGNvbmZpcm1hdGlvbiBmbG93IFxyXG4gICAgICBpZih0aGlzLnJlY2VpdmVkRGF0YS5jdXJyZW50TnVtYmVyRmlsaW5nID09IHRoaXMucmVjZWl2ZWREYXRhLnRvdGFsICYmIHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhLndlZWtzVG9CZUNlcnRpZmllZC5sZW5ndGg9PTEpXHJcbiAgICAgIHtcclxuICAgICAgICB0aGlzLnNob3dJbnRlcmltQ29uZmlybWF0aW9uID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zaG93Q29uZmlybWF0aW9uID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLm11bHRpcGxlV2Vla3NEdWUgPSBmYWxzZTtcclxuICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgnaW50ZXJpbUNvbmZpcm1hdGlvbkRhdGEnKTtcclxuICAgICAgfVxyXG4gICAgICAvLyBpZiBtb3JlIHdlZWtzIHJlbWFpbiBmb3Igd2Vla2xpZXMgdGhyb3VnaCBpbnRlcmltIGNvbmZpcm1hdGlvbiBmbG93IFxyXG4gICAgICBlbHNlIGlmICh0aGlzLnJlY2VpdmVkRGF0YS5jb3VudCA8PSB0aGlzLnJlY2VpdmVkRGF0YS50b3RhbCAgJiYgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEud2Vla3NUb0JlQ2VydGlmaWVkLmxlbmd0aD4xKVxyXG4gICAgICB7XHJcbiAgICAgICAgdGhpcy5zaG93SW50ZXJpbUNvbmZpcm1hdGlvbiA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5zaG93Q29uZmlybWF0aW9uID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0gLy8gaWYgZmlyc3QgdGltZSBmaWxpbmcgd2Vla2xpZXMgdGhyb3VnaCBpbnRlcmltIGNvbmZpcm1hdGlvbiBmbG93XHJcbiAgICBpZih0aGlzLmlzTVMoKSAmJiB0aGlzLm11bHRpcGxlV2Vla3NEdWUgPT0gdHJ1ZSAmJiAhdGhpcy5yZWNlaXZlZERhdGEpXHJcbiAgICB7XHJcbiAgICAgIHRoaXMuc2hvd0ludGVyaW1Db25maXJtYXRpb24gPSB0cnVlO1xyXG4gICAgICB0aGlzLnNob3dDb25maXJtYXRpb24gPSBmYWxzZTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKCghdGhpcy5pc01TKCkpIHx8ICh0aGlzLmlzTVMoKSAmJiB0aGlzLm11bHRpcGxlV2Vla3NEdWUgPT0gZmFsc2UpKSB7XHJcbiAgICAgIHRoaXMuc2hvd0NvbmZpcm1hdGlvbiA9IHRydWU7XHJcbiAgICB9XHJcbiAgICBcclxuICB9XHJcblxyXG4gIGNsb3NlQ29uZmlybWF0aW9uUG9wdXAoKSB7XHJcbiAgICBpZih0aGlzLmlzTVMoKSAmJiB0aGlzLm11bHRpcGxlV2Vla3NEdWUgPT0gdHJ1ZSlcclxuICAgIHtcclxuICAgICAgdGhpcy5zaG93SW50ZXJpbUNvbmZpcm1hdGlvbiA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuc2hvd0NvbmZpcm1hdGlvbiA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgdGhpcy53Y1NlcnZpY2UucmVzZXRXZWVrbHlDZXJ0RGF0YSgpO1xyXG5cclxuICAgIC8vIFRoaXMgaXMgYWRkZWQgYXMgdGhlIG5hdmlnYXRpb24gd2FzIHRvbyBxdWljayBmb3IgdGhlIGNvbmZpcm1hdGlvbiB0byBjbG9zZSBpbiB0aW1lLCBsZWF2aW5nIGNvbmZpcm1hdGlvbiBvcGVuLCBldmVuIHRob3VnaCB0aGUgcGFnZSB3YXMgdXBkYXRlZCBpbiBiYWNrZW5kXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuZ29Ib21lKCksIDEwMCk7XHJcbiAgfVxyXG5cclxuICBuYXZpZ2F0ZVRvV2Vla2xpZXMoZGF0YTogYW55KSB7XHJcbiAgICBpZih0aGlzLmlzTVMoKSAmJiB0aGlzLm11bHRpcGxlV2Vla3NEdWUgPT0gdHJ1ZSlcclxuICAgIHtcclxuICAgICAgdGhpcy5zaG93SW50ZXJpbUNvbmZpcm1hdGlvbiA9IGZhbHNlO1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2ludGVyaW1Db25maXJtYXRpb25EYXRhJywgZGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy53Y1NlcnZpY2UucmVzZXRXZWVrbHlDZXJ0RGF0YSgpO1xyXG5cclxuICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgZ29Ib21lKCkge1xyXG4gICAgaWYgKHRoaXMubHMuaXNDbGFpbWFudCgpKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJ3dlbGNvbWU/d2NEb25lPXRydWUnKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5scy5pc0NzcigpKSB7XHJcbiAgICAgIHRoaXMudXRpbC5vcGVuUGFnZUJ5Q29udGV4dFJvb3RXaXRoRGF0YSh0aGlzLnV0aWwuZ2V0U2VjdXJpdHlBcHBDb250ZXh0Um9vdCgpLCBcInNlYXJjaC1zc25cIiwgdGhpcy5jb250ZXh0U2VydmljZS5nZXRVbkVuY29kZWRTc24oKSwgdGhpcy5uYXYpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCgnL3dlbGNvbWUnKTtcclxuICAgIH1cclxuICAgIHRoaXMudXRpbC5oaWRlTG9hZGVyKCk7XHJcbiAgfVxyXG5cclxuICBzaG93QWNrbm93bGVkZ2VtZW50KCkge1xyXG4gICAgaWYgKHRoaXMuc3VtbWFyeUNvbXBvbmVudCkge1xyXG4gICAgICB0aGlzLnN1bW1hcnlDb21wb25lbnQuc3VibWl0Rm9ybSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMuaXNNUygpKSB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVJbmRleCA9IDI7XHJcbiAgICAgICAgaWYgKHRoaXMuYWNrbm93bGVkZ2VtZW50TXNDb21wb25lbnQpIHtcclxuICAgICAgICAgIHRoaXMuYWNrbm93bGVkZ2VtZW50TXNDb21wb25lbnQuc3VibWl0KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2hvd0FjayA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvblFlU3VjY2VzcygpIHtcclxuICAgIHRoaXMuc2hvd0FjayA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBpb25WaWV3V2lsbExlYXZlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5ocy5zZXRIZWxwQXZhaWxhYmlsaXR5KGZhbHNlKTtcclxuICB9XHJcblxyXG4gIGlvblZpZXdEaWRFbnRlcigpIHtcclxuICAgIHRoaXMud2NTZXJ2aWNlLnJlc2V0V2Vla2x5Q2VydERhdGEoKTtcclxuICAgIHRoaXMuaHMuc2V0SGVscEF2YWlsYWJpbGl0eSh0cnVlKTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUVycm9yKGVycikge1xyXG4gICAgdGhpcy5lcnJvck1zZyA9IGVyci5tc2c7XHJcbiAgfVxyXG5cclxuICBoYXNIaXJlZFN0YXR1cyhzdGF0dXM6IGJvb2xlYW4pIHtcclxuICAgIC8vVE9ETzogVXBkYXRlIHRoaXMgZm9yIHJldHVybiB0byB3b3JrIGZvciBoaXJlZCBjYXNlc1xyXG4gICAgIGlmICghdGhpcy5pc01FKCkpIHtcclxuICAgICAgdGhpcy5yZWFkT25seUZpZWxkcyA9IHN0YXR1cyA/IFsncmV0dXJuaW5nVG9Xb3JrJ10gOiBudWxsO1xyXG4gICAgICBpZiAoc3RhdHVzKSB7XHJcbiAgICAgICAgdGhpcy5yZWFkT25seURhdGEgPSB7IHJldHVybmluZ1RvV29yazogXCJZXCJ9O1xyXG4gICAgICB9XHJcbiAgICB9IFxyXG4gIH1cclxuXHJcbiAgaGFzV29ya2VkRnVsbFRpbWVPclN0YXJ0ZWRXb3JraW5nU3RhdHVzKHN0YXR1czogYm9vbGVhbil7XHJcbiAgICBjb25zdCBmb3JtID0gdGhpcy53ZWVrbHlRdWVzdGlvbnM/LnF1ZXN0aW9ubmFpcmU/LnF1ZXN0aW9ubmFpcmU/LnF1ZXN0aW9ubmFpcmVGb3JtPy5mb3JtO1xyXG4gICAgaWYodGhpcy5pc01FKCkpe1xyXG4gICAgICBpZihzdGF0dXMgJiYgZm9ybSl7XHJcbiAgICAgICAgdGhpcy5yZWFkT25seUZpZWxkcyA9IHN0YXR1cyA/IFsnd29ya1BlcmZvcm1lZCddOiBudWxsO1xyXG4gICAgICAgIHRoaXMucmVhZE9ubHlEYXRhID0ge3dvcmtQZXJmb3JtZWQ6IFwiWVwifTtcclxuICAgICAgICBmb3JtLmdldCgnd29ya1BlcmZvcm1lZCcpPy5zZXRWYWx1ZSgnWScpO1xyXG4gICAgICB9IGVsc2V7XHJcbiAgICAgICAgdGhpcy5yZWFkT25seUZpZWxkcyA9IHN0YXR1cyA/IFsnd29ya1BlcmZvcm1lZCddOiBudWxsO1xyXG4gICAgICAgIHRoaXMucmVhZE9ubHlEYXRhID0ge3dvcmtQZXJmb3JtZWQ6IG51bGx9O1xyXG4gICAgICAgIGlmKGZvcm0pe1xyXG4gICAgICAgICAgZm9ybS5nZXQoJ3dvcmtQZXJmb3JtZWQnKS5zZXRWYWx1ZShudWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhhbmRsZUhpZGRlbkZpZWxkcyhyZXM6IFdlZWtseUNlcnRFbGlnaWJpbGl0eU1vZGVsVjIpIHtcclxuXHJcbiAgICB0aGlzLnJlYWRPbmx5RmllbGRzID0gWydoaWRTaG93UmV0dXJuVG9Xb3JrUXVlc3Rpb24nLCAnaGlkU2hvd1JldHVybmVkVG9Xb3JrUXVlc3Rpb24nLCAnaGlkU2hvd05ld1BlbnNpb25RdWVzdGlvbicsICdoaWRTaG93UGVuc2lvbkNoYW5nZWRRdWVzdGlvbicsICdoaWRTaG93RGlzbWlzc2FsUGF5Q2hhbmdlZFF1ZXN0aW9uJywgJ2hpZFBhcnRUaW1lRW1wbG95ZXJBdmFpbGFibGUnLCAnaGlkUmVtdW5lcmF0aW9uSXNzdWVFeGlzdHMnLCAnaGlkSXNFbGlnaWJsZUZvckR1YScsICdjbGFpbWFudElkJywgJ2NsYWltV2Vla0VuZERhdGUnLCdkdWFBcHBJZCcsJ2hpZFBhcnRpYWxDbGFpbUVtcGxveW1lbnRGbGFnJywnaGlkV29ya1NlYXJjaEF1ZGl0RmxhZyddO1xyXG4gICAgdGhpcy5yZWFkT25seURhdGEgPSB7IGhpZFNob3dSZXR1cm5Ub1dvcmtRdWVzdGlvbjogcmVzLmhpZFNob3dSZXR1cm5Ub1dvcmtRdWVzdGlvbiwgaGlkU2hvd1JldHVybmVkVG9Xb3JrUXVlc3Rpb246IHJlcy5oaWRTaG93UmV0dXJuZWRUb1dvcmtRdWVzdGlvbiwgaGlkU2hvd05ld1BlbnNpb25RdWVzdGlvbjogcmVzLmhpZFNob3dOZXdQZW5zaW9uUXVlc3Rpb24sIGhpZFNob3dQZW5zaW9uQ2hhbmdlZFF1ZXN0aW9uOiByZXMuaGlkU2hvd1BlbnNpb25DaGFuZ2VkUXVlc3Rpb24sIGhpZFNob3dEaXNtaXNzYWxQYXlDaGFuZ2VkUXVlc3Rpb246IHJlcy5oaWRTaG93RGlzbWlzc2FsUGF5Q2hhbmdlZFF1ZXN0aW9uLCBoaWRQYXJ0VGltZUVtcGxveWVyQXZhaWxhYmxlOiByZXMuaGlkUGFydFRpbWVFbXBsb3llckF2YWlsYWJsZSwgaGlkUmVtdW5lcmF0aW9uSXNzdWVFeGlzdHM6IHJlcy5oaWRSZW11bmVyYXRpb25Jc3N1ZUV4aXN0cywgaGlkSXNFbGlnaWJsZUZvckR1YTogcmVzLmhpZElzRWxpZ2libGVGb3JEdWEsIGNsYWltYW50SWQ6IHJlcy5jbGFpbWFudElkLCBjbGFpbVdlZWtFbmREYXRlOiByZXMuY2xhaW1XZWVrRW5kRGF0ZSwgZHVhQXBwSWQ6cmVzLmR1YUFwcElkLCBoaWRQYXJ0aWFsQ2xhaW1FbXBsb3ltZW50RmxhZzogcmVzLmhpZFBhcnRpYWxDbGFpbUVtcGxveW1lbnRGbGFnLCBoaWRXb3JrU2VhcmNoQXVkaXRGbGFnOiByZXMuaGlkV29ya1NlYXJjaEF1ZGl0RmxhZyB9O1xyXG5cclxuICB9XHJcblxyXG5cclxuXHJcbiAgbG9hZENvbXBsZXRlKGV2ZW50KSB7XHJcbiAgICAgLyogRm9yIE1TLCB0aGUgYmFjayBidXR0b24gbmVlZHMgdG8gbG9hZCBjb21wbGV0ZSBmaWxsZWQgZGF0YSBhbG9uZyB3aXRoIGVsaWdpYmlsaXR5IGRhdGEuXHJcbiAgICAgRm9yIG90aGVyIHN0YXRlcywgZXZlcnl0aGluZyBpcyBpbiBwb3B1cCwgc28gb24gY2xvc2UsIGRhdGEgc3RpbGwgaXMgdGhlcmUgaW4gbW9kZWwuXHJcbiAgICAgTmVlZHMgd29yayAqL1xyXG4gICAvKiAgaWYgKHRoaXMuaXNNUygpICYmIHRoaXMuYWN0aXZlSW5kZXggPT0gMSAmJiB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YSkge1xyXG4gICAgICBcclxuICAgICAgdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydERhdGEud2Vla2x5Y2VydEVsaWdpYmlsaXR5TW9kZWxWMiA9IHRoaXMud2NTZXJ2aWNlLndlZWtseUNlcnRTZXJ2ZXJEYXRhO1xyXG4gICAgICB0aGlzLmRhdGFUb0xvYWQgPSB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0RGF0YTtcclxuICAgICAgdGhpcy5oYW5kbGVIaWRkZW5GaWVsZHModGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGEpO1xyXG4gICAgfSBlbHNle1xyXG4gICAgICB0aGlzLmRhdGFUb0xvYWQgPSB0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0U2VydmVyRGF0YTtcclxuICAgIH0gKi9cclxuICAgICAgdGhpcy5kYXRhVG9Mb2FkID0gdGhpcy53Y1NlcnZpY2Uud2Vla2x5Q2VydFNlcnZlckRhdGE7XHJcbiAgICAvKiogTkVXOiBGb3IgTG9hZGluZyB0aGUgUHJlLXNlbGVjdGVkIHF1ZXN0aW9uIGluIGNhc2Ugb2YgU3RhcnRlZCBXb3JraW5nKFNUV0spIGZvciBXUyBSZWNvcmRzIGFuZCBzZXR0aW5nIHRoZSB2YWx1ZSBZIGZvciB3b3JrUGVyZm9ybWVkICovXHJcbiAgICAgIHRoaXMud29ya1NlYXJjaFJlY29yZHMgPSB0aGlzLndjU2VydmljZS5nZXRXb3JrU2VhcmNoUmVjb3JkcygpO1xyXG4gICAgaWYgKHRoaXMuaXNNRSgpICYmIHRoaXMud29ya1NlYXJjaFJlY29yZHMpIHtcclxuICAgICAgY29uc3QgaGFzU3RhcnRlZFdvcmtpbmcgPSAodGhpcy53b3JrU2VhcmNoUmVjb3JkcyA/PyBbXSkuc29tZShcclxuICAgICAgICByZWMgPT4gcmVjPy5zZWFyY2hSZXN1bHQgPT09ICdTVFdLJ1xyXG4gICAgICApO1xyXG4gICAgICBpZiAoaGFzU3RhcnRlZFdvcmtpbmcpIHtcclxuICAgICAgICB0aGlzLmRhdGFUb0xvYWQud29ya1BlcmZvcm1lZCA9IFwiWVwiO1xyXG4gICAgICAgIHRoaXMucmVhZE9ubHlGaWVsZHMgPSBbJ3dvcmtQZXJmb3JtZWQnXTtcclxuICAgICAgICB0aGlzLnJlYWRPbmx5RGF0YSA9IHsgd29ya1BlcmZvcm1lZDogXCJZXCIgfTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyoqIEVORCAqL1xyXG4gICAgICBpZiAodGhpcy53Y1NlcnZpY2UuZ2V0V29ya1NlYXJjaFJlY29yZHNDb3VudFdpdGhIaXJlZFN0YXR1cygpID4gMCkgeyAgICAgICAgXHJcbiAgICAgICAgdGhpcy5oYXNIaXJlZFN0YXR1cyh0cnVlKTtcclxuICAgICAgICB0aGlzLmRhdGFUb0xvYWQucmV0dXJuaW5nVG9Xb3JrID0gXCJZXCI7XHJcbiAgICAgIH1cclxuICAgICAgLy9XZWVrbHkgRWFybmluZ3MgcmVtaW5kZXIgcG9wdXAgLSBzaG93biBldmVyeSB3ZWVrIGV4Y2VwdCBmb3Igd2FpdGluZyBwZXJpb2Qgd2Vla1xyXG4gICAgICBpZih0aGlzLndjU2VydmljZS53ZWVrbHlDZXJ0U2VydmVyRGF0YS5pc1dhaXRpbmdXZWVrU2VydmVkID09PSB0cnVlKXtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+ICh0aGlzLndlZWtseVdvcmtQZXJmb3JtZWRQb3B1cEZsYWcgPSB0cnVlKSwgMTAwMCk7XHJcbiAgICAgIH1cclxuICB9XHJcblxyXG4gIGdldFByZXZpb3VzU3VuZGF5KGlucHV0RGF0ZSlcclxuICB7XHJcbiAgICBsZXQgdXRjRGF0ZSA9IG5ldyBEYXRlKGlucHV0RGF0ZSArIFwiVDAwOjAwOjAwWlwiKTtcclxuICAgIHV0Y0RhdGUuc2V0VVRDRGF0ZSh1dGNEYXRlLmdldFVUQ0RhdGUoKSAtIDYpO1xyXG4gICAgbGV0IHllYXIgPSB1dGNEYXRlLmdldFVUQ0Z1bGxZZWFyKCk7XHJcbiAgICBsZXQgbW9udGggPSBTdHJpbmcodXRjRGF0ZS5nZXRVVENNb250aCgpICsgMSkucGFkU3RhcnQoMiwgJzAnKTtcclxuICAgIGxldCBkYXkgPSBTdHJpbmcodXRjRGF0ZS5nZXRVVENEYXRlKCkpLnBhZFN0YXJ0KDIsICcwJyk7XHJcbiAgICByZXR1cm4gYCR7eWVhcn0tJHttb250aH0tJHtkYXl9YDtcclxuICB9XHJcblxyXG59XHJcbiIsIjxhcHAtZGFzaGJvYXJkLWhlbHAgKm5nSWY9XCJocy5pc1Nob3dpbmcoKVwiIFthY3RpdmVJbmRleF09XCI0XCI+PC9hcHAtZGFzaGJvYXJkLWhlbHA+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiaXNMb2FkaW5nXCIgY2xhc3M9XCJpb24tdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICA8aW9uLXNwaW5uZXIgbmFtZT1cImRvdHNcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiAqbmdJZj1cIiFpc0xvYWRpbmcgJiYgZXJyb3JNc2dcIiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlciBpb24tcGFkZGluZy10b3BcIiBzdHlsZT1cInBhZGRpbmctdG9wOiA1MHB4O1wiPlxyXG4gICAgICA8aW9uLWljb24gbmFtZT1cImFsZXJ0LWNpcmNsZS1vdXRsaW5lXCIgc3R5bGU9XCJmb250LXNpemU6IDYwcHg7IGNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFuZ2VyKTtcIj48L2lvbi1pY29uPlxyXG4gICAgICA8ZGl2IFtpbm5lckhUTUxdPVwic2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKGVycm9yTXNnKVwiIHN0eWxlPVwiY29sb3I6IHZhcigtLWlvbi1jb2xvci1kYW5nZXIpOyBmb250LXNpemU6IGxhcmdlcjtcIiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlciBpb24tcGFkZGluZ1wiPjwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiAqbmdJZj1cIiFpc0xvYWRpbmcgJiYgIWVycm9yTXNnXCI+XHJcbiAgICAgIDxpb24tZ3JpZD5cclxuICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiIG9mZnNldFhsPVwiMVwiICpuZ0lmPVwiIWlzTVMoKSB8fCAoaXNNUygpICYmICFtdWx0aXBsZVdlZWtzRHVlICYmICFkaXNwbGF5Q29udGludWVkV2Vla3NGaWxlZEhlYWRpbmcpXCI+XHJcbiAgICAgICAgICAgIDxoMSBjbGFzcz1cImFwcC1oZWFkaW5nXCI+e3snd2Vla2xpZXMudjIudGFzay5oZWFkaW5nJyB8IHRyYW5zbGF0ZTpkeW5hbWljUGFyYW0gfX08L2gxPlxyXG4gICAgICAgICAgPC9pb24tY29sPlxyXG5cclxuICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiIG9mZnNldFhsPVwiMVwiICpuZ0lmPVwiKGlzTVMoKSAmJiBtdWx0aXBsZVdlZWtzRHVlICYmICFkaXNwbGF5Q29udGludWVkV2Vla3NGaWxlZEhlYWRpbmcpXCI+XHJcbiAgICAgICAgICAgIDxoMSBjbGFzcz1cImFwcC1oZWFkaW5nXCI+e3snd2Vla2xpZXMudjIudGFzay5tdWx0aXBsZS53ZWVrcy5oZWFkaW5nJyB8IHRyYW5zbGF0ZTpkeW5hbWljUGFyYW0gfX08L2gxPlxyXG4gICAgICAgICAgPC9pb24tY29sPlxyXG5cclxuICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiIG9mZnNldFhsPVwiMVwiICpuZ0lmPVwiKGlzTVMoKSAmJiBtdWx0aXBsZVdlZWtzRHVlICYmIGRpc3BsYXlDb250aW51ZWRXZWVrc0ZpbGVkSGVhZGluZylcIj5cclxuICAgICAgICAgICAgPGgxIGNsYXNzPVwiYXBwLWhlYWRpbmdcIj57eyd3ZWVrbGllcy52Mi50YXNrLm11bHRpcGxlLndlZWtzLmhlYWRpbmcuY29udGludWVkJyB8IHRyYW5zbGF0ZTpkeW5hbWljUGFyYW0gfX08L2gxPlxyXG4gICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgPC9pb24tZ3JpZD5cclxuXHJcbiAgICAgIDxzZWN0aW9uICpuZ0lmPVwiIWlzTVMoKVwiPlxyXG4gICAgICAgIDxpb24tZ3JpZD5cclxuICAgICAgICAgIDxpb24tcm93PlxyXG4gICAgICAgICAgICA8aW9uLWNvbCBzaXplPVwiMTJcIiBzaXplWGw9XCI1XCIgb2Zmc2V0WGw9XCIxXCIgc2l6ZUxnPVwiNlwiPlxyXG4gICAgICAgICAgICAgIDxhcHAtd29yay1zZWFyY2gtcXVlc3Rpb24tdjIgICpuZ0lmPVwiIWlzTG9hZGluZyAmJiAhZXJyb3JNc2dcIiAoc3VjY2Vzcyk9XCJnb1RvV2Vla2x5Q2VydCgpXCIgW3Nob3dDb3VudGVyXT1cInRydWVcIiAoaGFzSGlyZWRTdGF0dXMpPVwiaGFzSGlyZWRTdGF0dXMoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKGhhc1dvcmtlZEZ1bGxUaW1lT3JTdGFydGVkV29ya2luZ1N0YXR1cyk9XCJoYXNXb3JrZWRGdWxsVGltZU9yU3RhcnRlZFdvcmtpbmdTdGF0dXMoJGV2ZW50KVwiPjwvYXBwLXdvcmstc2VhcmNoLXF1ZXN0aW9uLXYyPlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiIHNpemVYbD1cIjVcIiBzaXplTGc9XCI2XCI+ICAgXHJcbiAgICAgICAgICAgICAgPGFwcC1mb3JtLWJ1aWxkZXIgI3dlZWtseVF1ZXN0aW9ucyBbZmxvd0tleV09XCInd2Vla2x5LWNlcnQnXCIgW2F1dG9TYXZlXT1cImZhbHNlXCIgW3Nob3dPbmx5UXVlc3Rpb25dPVwidHJ1ZVwiIFtoaWRlSGVhZGVyXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIFtoaWRlRm9vdGVyXT1cInRydWVcIiBbc2l6ZVhzXT1cIjEyXCIgW3NpemVTbV09XCIxMlwiIFtzaXplTWRdPVwiMTJcIiBbc2l6ZUxnXT1cIjEyXCIgW3NpemVYbF09XCIxMlwiIFtvZmZzZXRYbF09XCIwXCIgW29mZnNldExnXT1cIjBcIiBcclxuICAgICAgICAgICAgICAgKG9uRXJyb3IpPVwiaGFuZGxlRXJyb3IoJGV2ZW50KVwiIChvbkNvbXBsZXRlKT1cInN1Y2Nlc3MoJGV2ZW50KVwiIFtkeW5hbWljUGFyYW1dPVwiZHluYW1pY1BhcmFtXCIgW2RhdGFdPVwiZGF0YVRvTG9hZFwiIFxyXG4gICAgICAgICAgICAgICBbbXVsdGlNb2RlXT1cInRydWVcIiBbcmVhZE9ubHlGaWVsZHNdPVwicmVhZE9ubHlGaWVsZHNcIiAob25Mb2FkQ29tcGxldGUpPVwibG9hZENvbXBsZXRlKCRldmVudClcIj5cclxuICAgICAgICAgICAgIDwvYXBwLWZvcm0tYnVpbGRlcj4gICAgICAgICBcclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgPC9pb24tcm93PlxyXG4gICAgICAgIDwvaW9uLWdyaWQ+XHJcbiAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgIDxzZWN0aW9uICpuZ0lmPVwiaXNNUygpXCI+XHJcbiAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICA8aW9uLWNvbCBzaXplPVwiM1wiIG9mZnNldExnPVwiM1wiIG9mZnNldFhsPVwiM1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1mbHVpZCBwLWZvcm1ncmlkXCI+XHJcbiAgICAgICAgICAgICAgPHNlY3Rpb24gKm5nSWY9XCJhY3RpdmVJbmRleCA9PSAwIHx8IGFjdGl2ZUluZGV4ID09IDFcIj5cclxuICAgICAgICAgICAgICAgIDxoMSBjbGFzcz1cImhlYWRpbmctd2Vla2xpZXNcIj48Yj4ge3sgY29udGVudHNbYWN0aXZlSW5kZXhdIH19IDwvYj48L2gxPlxyXG4gICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgICA8c2VjdGlvbiAqbmdJZj1cImFjdGl2ZUluZGV4ID09IDJcIj5cclxuICAgICAgICAgICAgICAgIDxoMSBjbGFzcz1cImhlYWRpbmctd2Vla2xpZXMtYWNrXCI+PGI+IHt7IGNvbnRlbnRzW2FjdGl2ZUluZGV4XSB9fSA8L2I+PC9oMT5cclxuICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDxpb24tY29sIHNpemU9XCIyXCI+PC9pb24tY29sPlxyXG4gICAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJ3ZWVrbGllcy1zdGVwc1wiIHNpemU9XCIxXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLWZsdWlkIHAtZm9ybWdyaWRcIiA+XHJcbiAgICAgICAgICAgICAgPHAtc3RlcHMgW21vZGVsXT1cIml0ZW1zXCIgW2FjdGl2ZUluZGV4XT1cImFjdGl2ZUluZGV4XCIgW3N0eWxlQ2xhc3NdPVwiJ2NvbXBsZXRlZC0nK2FjdGl2ZUluZGV4XCIgW25nU3R5bGVdPVwieyctLXN0ZXAtd2lkdGgnOic1MHB4JywnLS1zdGVwLWhlaWdodCc6JzUwcHgnfVwiPlxyXG4gICAgICAgICAgICAgIDwvcC1zdGVwcz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjNcIj5cclxuICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICA8aW9uLWNvbCBzdHlsZT1cIm1hcmdpbi10b3A6IC0zNXB4O1wic2l6ZT1cIjEyXCIgc2l6ZVNtPVwiOFwiIHNpemVYcz1cIjEyXCIgc2l6ZU1kPVwiOFwiIHNpemVMZz1cIjZcIiBzaXplWGw9XCI1XCIgb2Zmc2V0TGc9XCIzXCIgb2Zmc2V0WGw9XCIzXCIgb2Zmc2V0TWQ9XCIxXCI+XHJcbiAgICAgICAgICAgIDxwLWRpdmlkZXI+PC9wLWRpdmlkZXI+XHJcbiAgICAgICAgICA8L2lvbi1jb2w+ICAgICAgXHJcbiAgICAgICAgPC9pb24tcm93PlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxpb24tZ3JpZCAqbmdJZj1cImFjdGl2ZUluZGV4ID09IDBcIj5cclxuICAgICAgICAgIDxpb24tcm93PlxyXG4gICAgICAgICAgICA8aW9uLWNvbCBzaXplPVwiMTJcIiBzaXplU209XCI4XCIgc2l6ZVhzPVwiMTJcIiBzaXplTWQ9XCI4XCIgc2l6ZUxnPVwiNlwiIHNpemVYbD1cIjVcIiBvZmZzZXRMZz1cIjNcIiBvZmZzZXRYbD1cIjNcIiBvZmZzZXRNZD1cIjFcIj5cclxuICAgICAgICAgICAgICA8YXBwLXdvcmstc2VhcmNoLXF1ZXN0aW9uLXYyICAqbmdJZj1cIiFpc0xvYWRpbmcgJiYgIWVycm9yTXNnXCIgKHN1Y2Nlc3MpPVwiZ29Ub1dlZWtseUNlcnQoKVwiIFtzaG93Q291bnRlcl09XCJ0cnVlXCIgKGhhc0hpcmVkU3RhdHVzKT1cImhhc0hpcmVkU3RhdHVzKCRldmVudClcIj48L2FwcC13b3JrLXNlYXJjaC1xdWVzdGlvbi12Mj5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgPC9pb24tcm93PlxyXG4gICAgICAgIDwvaW9uLWdyaWQ+XHJcbiAgICAgICAgPGlvbi1ncmlkICpuZ0lmPVwiYWN0aXZlSW5kZXggPT0gMVwiPlxyXG4gICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiIHNpemVTbT1cIjEyXCIgc2l6ZVhzPVwiMTJcIiBzaXplTWQ9XCIxMFwiIHNpemVMZz1cIjUuMjVcIiBzaXplWGw9XCI1LjI1XCIgb2Zmc2V0TGc9XCIzXCIgb2Zmc2V0WGw9XCIzXCIgb2Zmc2V0TWQ9XCIxXCI+ICAgXHJcbiAgICAgICAgICAgICAgPGFwcC1mb3JtLWJ1aWxkZXIgI3dlZWtseVF1ZXN0aW9ucyBbZmxvd0tleV09XCInd2Vla2x5LWNlcnQnXCIgW2F1dG9TYXZlXT1cInRydWVcIiBbc2hvd09ubHlRdWVzdGlvbl09XCJ0cnVlXCIgW2hpZGVIZWFkZXJdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgW2hpZGVGb290ZXJdPVwidHJ1ZVwiIFtzaXplWHNdPVwiMTJcIiBbc2l6ZVNtXT1cIjEyXCIgW3NpemVNZF09XCIxMlwiIFtzaXplTGddPVwiMTJcIiBbc2l6ZVhsXT1cIjEyXCIgW29mZnNldFhsXT1cIjBcIiBbb2Zmc2V0TGddPVwiMFwiIFxyXG4gICAgICAgICAgICAgICAob25FcnJvcik9XCJoYW5kbGVFcnJvcigkZXZlbnQpXCIgKG9uQ29tcGxldGUpPVwic3VjY2VzcygkZXZlbnQpXCIgW2R5bmFtaWNQYXJhbV09XCJkeW5hbWljUGFyYW1cIiBbZGF0YV09XCJkYXRhVG9Mb2FkXCIgXHJcbiAgICAgICAgICAgICAgIFttdWx0aU1vZGVdPVwidHJ1ZVwiIFtyZWFkT25seUZpZWxkc109XCJyZWFkT25seUZpZWxkc1wiIChvbkxvYWRDb21wbGV0ZSk9XCJsb2FkQ29tcGxldGUoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgPC9hcHAtZm9ybS1idWlsZGVyPiAgICAgICAgIFxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgICAgICA8IS0tIFdlZWtseSBFYXJuaW5ncyByZW1pbmRlciBwb3B1cCAtIHNob3duIGV2ZXJ5IHdlZWsgZXhjZXB0IGZvciB3YWl0aW5nIHBlcmlvZCB3ZWVrIC0tPlxyXG4gICAgICAgICAgPGlvbi1yb3cgKm5nSWY9XCJ3ZWVrbHlXb3JrUGVyZm9ybWVkUG9wdXBGbGFnXCI+XHJcbiAgICAgICAgICAgIDxhcHAtd2Vla2x5LXdvcmstcGVyZm9ybWVkLXBvcHVwIFtzaG93V2Vla2x5V29ya1BlcmZvcm1lZFBvcHVwXT1cInRydWVcIj48L2FwcC13ZWVrbHktd29yay1wZXJmb3JtZWQtcG9wdXA+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgICAgPC9pb24tZ3JpZD5cclxuICAgICAgICA8aW9uLWdyaWQgKm5nSWY9XCJhY3RpdmVJbmRleCA9PSAyXCI+XHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCIgc2l6ZVNtPVwiMTJcIiBzaXplWHM9XCIxMlwiIHNpemVNZD1cIjEwXCIgc2l6ZUxnPVwiNlwiIHNpemVYbD1cIjZcIiBvZmZzZXRMZz1cIjNcIiBvZmZzZXRYbD1cIjNcIiBvZmZzZXRNZD1cIjFcIj5cclxuICAgICAgICAgICAgICA8YXBwLWFja25vd2xlZGdlbWVudC1tcyAqbmdJZj1cInNob3dBY2tcIiAoc3VjY2Vzcyk9XCJmaWxlV2Vla2x5Q2VydERvbmUoJGV2ZW50KVwiIChvbkNsb3NlKT1cImNsb3NlQWNrKClcIj5cclxuICAgICAgICAgICAgICA8L2FwcC1hY2tub3dsZWRnZW1lbnQtbXM+ICAgXHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgICA8L2lvbi1ncmlkPlxyXG4gICAgICA8L3NlY3Rpb24+XHJcblxyXG4gICAgICA8YXBwLW11bHRpLXF1ZXN0aW9ubmFpcmUgW3FlUXVlcnlNb2RlbHNdPVwicWVRdWVyeU1vZGVsc1wiICpuZ0lmPVwiaXNPcGVuUWVcIiBcclxuICAgIChvbkNvbXBsZXRlKT1cIm9wZW5TdW1tYXJ5UG9zdFF1ZXN0aW9ubmFpcmVzKCRldmVudClcIiAobW9kZWxDYW5jZWwpPVwib25RZUNsb3NlKClcIiBcclxuICAgIFtoZWFkZXJdPVwiJ0ZvbGxvdy11cCBRdWVzdGlvbnMnIHwgdHJhbnNsYXRlXCIgW3Nob3dRdWVzdGlvbk51bWJlcl09XCJ0cnVlXCI+PC9hcHAtbXVsdGktcXVlc3Rpb25uYWlyZT5cclxuXHJcbiAgICAgIDxkaXYgKm5nSWY9XCIhaXNNUygpXCI+XHJcbiAgICAgICAgPGFwcC1hY2tub3dsZWRnZW1lbnQtdjIgKm5nSWY9XCJzaG93QWNrXCIgKHN1Y2Nlc3MpPVwiZmlsZVdlZWtseUNlcnREb25lKCRldmVudClcIiAob25DbG9zZSk9XCJjbG9zZUFjaygpXCI+XHJcbiAgICAgICAgPC9hcHAtYWNrbm93bGVkZ2VtZW50LXYyPiBcclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8YXBwLWNvbmZpcm1hdGlvbiAqbmdJZj1cInNob3dDb25maXJtYXRpb25cIiAob25DbG9zZSk9XCJjbG9zZUNvbmZpcm1hdGlvblBvcHVwKClcIiBbZGF0YV09XCJjb25maXJtYXRpb25EYXRhXCIgW2R5bmFtaWNQYXJhbV09XCJkeW5hbWljUGFyYW1cIj48L2FwcC1jb25maXJtYXRpb24+XHJcbiAgICAgIFxyXG4gICAgICA8YXBwLWludGVyaW0tY29uZmlybWF0aW9uICpuZ0lmPVwic2hvd0ludGVyaW1Db25maXJtYXRpb25cIiAob25DbG9zZSk9XCJjbG9zZUNvbmZpcm1hdGlvblBvcHVwKClcIiAob25OZXh0KT1cIm5hdmlnYXRlVG9XZWVrbGllcygkZXZlbnQpXCIgW2RhdGFdPVwiY29uZmlybWF0aW9uRGF0YVwiIFtkeW5hbWljUGFyYW1dPVwiZHluYW1pY1BhcmFtXCI+PC9hcHAtaW50ZXJpbS1jb25maXJtYXRpb24+XHJcblxyXG4gICAgICA8aW9uLWZvb3RlciAqbmdJZj1cIiFpc01TKClcIj5cclxuICAgICAgICA8aW9uLXJvdyBjbGFzcz1cImlvbi1wYWRkaW5nXCI+XHJcbiAgICAgICAgICA8aW9uLWNvbCBjbGFzcz1cImlvbi10ZXh0LWxlZnRcIiBpb24tY29sIHNpemU9XCIxMlwiIHNpemVYbD1cIjVcIiBvZmZzZXRYbD1cIjFcIiBzaXplTGc9XCI2XCI+XHJcbiAgICAgICAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwicm91bmRcIiBmaWxsPVwib3V0bGluZVwiIChjbGljayk9XCJnb0hvbWUoKVwiPkNsb3NlXHJcbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDxpb24tY29sIGNsYXNzPVwiaW9uLXRleHQtcmlnaHRcIiBzaXplPVwiMTJcIiBzaXplWGw9XCI1XCIgc2l6ZUxnPVwiNlwiPlxyXG4gICAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgZmlsbD1cInNvbGlkXCIgdHlwZT1cInN1Ym1pdFwiIChjbGljayk9XCJvcGVuTmV4dFBhZ2UoKVwiID5TdWJtaXRcclxuICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgPC9pb24tZm9vdGVyPlxyXG4gICAgICA8c2VjdGlvbiAqbmdJZj1cImlzTVMoKVwiPlxyXG4gICAgICAgIDxpb24tcm93IGNsYXNzPVwiaW9uLXBhZGRpbmcgYnV0dG9ucy1yb3dcIj5cclxuICAgICAgICAgIDxpb24tY29sIHNpemU9XCIzXCI+PC9pb24tY29sPlxyXG4gICAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJ3ZWVrbGllcy1sZWZ0LWJ1dHRvbnNcIiBzaXplPVwiM1wiPlxyXG4gICAgICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImNsb3NlXCIgc2hhcGU9XCJyb3VuZFwiIGZpbGw9XCJvdXRsaW5lXCIgKm5nSWY9XCJhY3RpdmVJbmRleCA9PSAwXCIgKGNsaWNrKT1cImdvSG9tZSgpXCI+Q2xvc2VcclxuICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICA8aW9uLWJ1dHRvbiBpZD1cImJhY2tcIiBzaGFwZT1cInJvdW5kXCIgZmlsbD1cIm91dGxpbmVcIiAqbmdJZj1cImFjdGl2ZUluZGV4ICE9IDBcIiAoY2xpY2spPVwiYWN0aXZlSW5kZXggPSBhY3RpdmVJbmRleCAtIDFcIj5cclxuICAgICAgICAgICAgICBCYWNrPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJ3ZWVrbGllcy1yaWdodC1idXR0b25zXCIgc2l6ZT1cIjNcIj5cclxuICAgICAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJuZXh0XCIgc2hhcGU9XCJyb3VuZFwiIGZpbGw9XCJzb2xpZFwiIHR5cGU9XCJzdWJtaXRcIiAoY2xpY2spPVwib3Blbk5leHRQYWdlKClcIiAqbmdJZj1cImFjdGl2ZUluZGV4ICE9IDJcIj5OZXh0XHJcbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICAgICAgPGlvbi1idXR0b24gaWQ9XCJzdWJtaXRcIiBzaGFwZT1cInJvdW5kXCIgZmlsbD1cInNvbGlkXCIgdHlwZT1cInN1Ym1pdFwiIChjbGljayk9XCJzaG93QWNrbm93bGVkZ2VtZW50KClcIiAqbmdJZj1cImFjdGl2ZUluZGV4ID09IDJcIj5cclxuICAgICAgICAgICAgICBTdWJtaXQ8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8aW9uLWNvbCBzaXplPVwiM1wiPjwvaW9uLWNvbD5cclxuICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgIDwvc2VjdGlvbj5cclxuICAgIDwvZGl2PiJdfQ==