@reusa/ngx-reusa-app-lib 0.0.1304 → 0.0.1305

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 +1296 -2414
  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 -21
  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 +171 -439
  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 +354 -717
  33. package/esm2022/lib/components/profile-redirect/profile-redirect.component.mjs +38 -108
  34. package/esm2022/lib/components/questionnaire/AppValidators.mjs +43 -289
  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 +1070 -849
  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 +233 -457
  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 +237 -613
  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 +31 -84
  107. package/esm2022/public-api.mjs +5 -47
  108. package/fesm2022/reusa-ngx-reusa-app-lib.mjs +26206 -44145
  109. package/fesm2022/reusa-ngx-reusa-app-lib.mjs.map +1 -1
  110. package/lib/components/add-employer/add-employer.component.d.ts +50 -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 -83
  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 -10
  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 -16
  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 +14 -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 -281
  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 -510
  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 -804
  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 -683
  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 -99
  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 -69
  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,281 +0,0 @@
1
- import { Component, Input, EventEmitter, Output } from '@angular/core';
2
- import { ComboOption } from '../../models/questionnaire/ComboModel';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../../services/address-validation-service/address-validation.service";
5
- import * as i2 from "@ionic/angular";
6
- import * as i3 from "@angular/common";
7
- import * as i4 from "primeng/api";
8
- import * as i5 from "@angular/forms";
9
- import * as i6 from "primeng/accordion";
10
- function AddressSuggestionComponent_p_accordion_0_ng_template_2_Template(rf, ctx) { if (rf & 1) {
11
- i0.ɵɵtext(0, " Address Validation ");
12
- } }
13
- function AddressSuggestionComponent_p_accordion_0_ng_template_3_div_0_Template(rf, ctx) { if (rf & 1) {
14
- i0.ɵɵelementStart(0, "div", 10);
15
- i0.ɵɵelement(1, "ion-icon", 11);
16
- i0.ɵɵelementStart(2, "span");
17
- i0.ɵɵtext(3);
18
- i0.ɵɵelementEnd()();
19
- } if (rf & 2) {
20
- const ctx_r4 = i0.ɵɵnextContext(3);
21
- i0.ɵɵadvance(3);
22
- i0.ɵɵtextInterpolate(ctx_r4.errorText);
23
- } }
24
- function AddressSuggestionComponent_p_accordion_0_ng_template_3_ion_item_17_Template(rf, ctx) { if (rf & 1) {
25
- i0.ɵɵelementStart(0, "ion-item")(1, "ion-label");
26
- i0.ɵɵtext(2);
27
- i0.ɵɵelement(3, "br");
28
- i0.ɵɵtext(4);
29
- i0.ɵɵelementEnd();
30
- i0.ɵɵelement(5, "ion-radio", 7);
31
- i0.ɵɵelementEnd();
32
- } if (rf & 2) {
33
- const c_r6 = ctx.$implicit;
34
- i0.ɵɵadvance(2);
35
- i0.ɵɵtextInterpolate2(" ", c_r6.deliveryLine1, " ", c_r6.deliveryLine2, "");
36
- i0.ɵɵadvance(2);
37
- i0.ɵɵtextInterpolate4(" ", c_r6.cityName, ", ", c_r6.stateAbbrevation, ", ", c_r6.zipCode, " ", c_r6.country, " ");
38
- i0.ɵɵadvance(1);
39
- i0.ɵɵproperty("value", c_r6);
40
- } }
41
- function AddressSuggestionComponent_p_accordion_0_ng_template_3_Template(rf, ctx) { if (rf & 1) {
42
- const _r8 = i0.ɵɵgetCurrentView();
43
- i0.ɵɵtemplate(0, AddressSuggestionComponent_p_accordion_0_ng_template_3_div_0_Template, 4, 1, "div", 1);
44
- i0.ɵɵelementStart(1, "p");
45
- i0.ɵɵtext(2, "The U.S. Postal Service has recommended changes to your address. Select the address you want to use:");
46
- i0.ɵɵelementEnd();
47
- i0.ɵɵelementStart(3, "ion-radio-group", 5);
48
- i0.ɵɵlistener("ngModelChange", function AddressSuggestionComponent_p_accordion_0_ng_template_3_Template_ion_radio_group_ngModelChange_3_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r7 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r7.picked = $event); })("ionChange", function AddressSuggestionComponent_p_accordion_0_ng_template_3_Template_ion_radio_group_ionChange_3_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r9 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r9.selectionChanged($event)); });
49
- i0.ɵɵelementStart(4, "div", 6);
50
- i0.ɵɵtext(5, "You Entered:");
51
- i0.ɵɵelementEnd();
52
- i0.ɵɵelementStart(6, "ion-item");
53
- i0.ɵɵelement(7, "ion-radio", 7);
54
- i0.ɵɵelementStart(8, "ion-label");
55
- i0.ɵɵtext(9);
56
- i0.ɵɵelement(10, "br");
57
- i0.ɵɵtext(11);
58
- i0.ɵɵelementEnd()();
59
- i0.ɵɵelementStart(12, "ion-item", 8)(13, "ion-label")(14, "strong", 6);
60
- i0.ɵɵtext(15, "USPS Recommendations:");
61
- i0.ɵɵelementEnd();
62
- i0.ɵɵelement(16, "br");
63
- i0.ɵɵelementEnd()();
64
- i0.ɵɵtemplate(17, AddressSuggestionComponent_p_accordion_0_ng_template_3_ion_item_17_Template, 6, 7, "ion-item", 9);
65
- i0.ɵɵelementEnd();
66
- } if (rf & 2) {
67
- const ctx_r3 = i0.ɵɵnextContext(2);
68
- i0.ɵɵproperty("ngIf", ctx_r3.showInlineError);
69
- i0.ɵɵadvance(3);
70
- i0.ɵɵproperty("ngModel", ctx_r3.picked);
71
- i0.ɵɵadvance(4);
72
- i0.ɵɵproperty("value", ctx_r3.original);
73
- i0.ɵɵadvance(2);
74
- i0.ɵɵtextInterpolate2(" ", ctx_r3.original.line1, ", ", ctx_r3.original.line2, "");
75
- i0.ɵɵadvance(2);
76
- i0.ɵɵtextInterpolate4(" ", ctx_r3.original.city, ", ", ctx_r3.original.state, ", ", ctx_r3.original.zipCode, " ", ctx_r3.original.country, " ");
77
- i0.ɵɵadvance(6);
78
- i0.ɵɵproperty("ngForOf", ctx_r3.choices);
79
- } }
80
- function AddressSuggestionComponent_p_accordion_0_Template(rf, ctx) { if (rf & 1) {
81
- const _r11 = i0.ɵɵgetCurrentView();
82
- i0.ɵɵelementStart(0, "p-accordion", 2);
83
- i0.ɵɵlistener("onOpen", function AddressSuggestionComponent_p_accordion_0_Template_p_accordion_onOpen_0_listener() { i0.ɵɵrestoreView(_r11); const ctx_r10 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r10.tabOpen()); })("onClose", function AddressSuggestionComponent_p_accordion_0_Template_p_accordion_onClose_0_listener() { i0.ɵɵrestoreView(_r11); const ctx_r12 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r12.tabClose()); });
84
- i0.ɵɵelementStart(1, "p-accordionTab");
85
- i0.ɵɵtemplate(2, AddressSuggestionComponent_p_accordion_0_ng_template_2_Template, 1, 0, "ng-template", 3)(3, AddressSuggestionComponent_p_accordion_0_ng_template_3_Template, 18, 10, "ng-template", 4);
86
- i0.ɵɵelementEnd()();
87
- } if (rf & 2) {
88
- const ctx_r0 = i0.ɵɵnextContext();
89
- i0.ɵɵproperty("activeIndex", ctx_r0.addressSelected);
90
- } }
91
- function AddressSuggestionComponent_div_1_Template(rf, ctx) { if (rf & 1) {
92
- i0.ɵɵelementStart(0, "div", 10);
93
- i0.ɵɵelement(1, "ion-icon", 11);
94
- i0.ɵɵelementStart(2, "span");
95
- i0.ɵɵtext(3);
96
- i0.ɵɵelementEnd()();
97
- } if (rf & 2) {
98
- const ctx_r1 = i0.ɵɵnextContext();
99
- i0.ɵɵadvance(3);
100
- i0.ɵɵtextInterpolate(ctx_r1.errorText);
101
- } }
102
- export class AddressSuggestionComponent {
103
- constructor(addrSvc) {
104
- this.addrSvc = addrSvc;
105
- this.choices = [];
106
- this.checkFormIsBlur = new EventEmitter();
107
- this.picked = null;
108
- this.showInlineError = false;
109
- this.msuaCount = 0;
110
- this.aunrCount = 0;
111
- }
112
- ngOnInit() {
113
- this.checkFormIsBlur.emit();
114
- if (this.formBlur && this.form.valid) {
115
- this.getValidateAddress(true);
116
- }
117
- }
118
- getValidateAddress(initialValidation) {
119
- let checkIfValidateCorrectAddress = (((this.formName === 'resAddress' || this.formName === 'resAdress') && this.diffMailAddressFlag === false) || (this.formName === 'mailAddress' && this.diffMailAddressFlag === true) || (this.standaloneAddressForm === true));
120
- if (!checkIfValidateCorrectAddress)
121
- return;
122
- if (!initialValidation && this.form.pristine === true)
123
- return;
124
- if (this.msuaCount >= 2) {
125
- this.setIsAddressValideController('0');
126
- return;
127
- }
128
- if (this.aunrCount >= 2) {
129
- this.setIsAddressValideController('0');
130
- return;
131
- }
132
- this.addrSvc.validateAddressProcess(null, this.form.value, this.form).then((res) => {
133
- this.errorText = res.errorText;
134
- this.showInlineError = res.showInlineError;
135
- this.setIsAddressValideController(res.isAddressValidated);
136
- if (this.isAddressValid === '1') {
137
- this.lastValidAddress = res.lastValidatedAddress;
138
- this.setIsAddressValideController('1');
139
- }
140
- else if (this.isAddressValid === '0') {
141
- this.setIsAddressValideController('0');
142
- }
143
- if (res.lastValidateResult === "MUSA") {
144
- this.msuaCount += 1;
145
- this.aunrCount = 0;
146
- this.setIsAddressValideController('0');
147
- }
148
- if (res.lastValidateResult === "AUNR") {
149
- this.aunrCount += 1;
150
- this.msuaCount = 0;
151
- this.setIsAddressValideController('0');
152
- }
153
- if (res.lastValidateResult === "NREC") {
154
- this.setIsAddressValideController('1');
155
- }
156
- if (res.showPopup === true) {
157
- this.setIsAddressValideController('1');
158
- this.addressSelected = 0;
159
- this.showAccordion = true;
160
- this.handleRecommendations(res.addressValidationResponse, res.addressValidationRequest, this.form);
161
- }
162
- else {
163
- this.showAccordion = false;
164
- }
165
- }).catch((err) => {
166
- this.showAccordion = false;
167
- });
168
- }
169
- tabOpen() {
170
- this.addressSelected = 0;
171
- }
172
- tabClose() {
173
- this.addressSelected = 1;
174
- }
175
- handleRecommendations(res, req, formCompnent) {
176
- const suggestions = Array.from(res.addressRecommendationModel ?? []);
177
- if (!suggestions.length)
178
- return;
179
- this.original = req;
180
- this.choices = suggestions;
181
- }
182
- selectionChanged(event) {
183
- let isOrigin = this.picked === this.original ? true : false;
184
- this.addressSelected = 1;
185
- this.patchFormWithSelectedAddress(this.picked, isOrigin, this.form);
186
- }
187
- // public patchFormWithSelectedAddress(sel: any,isOrigin: boolean, formCompnent: any) {
188
- // console.log("addres suggestion patch")
189
- // console.log(formCompnent)
190
- // formCompnent.patchValue(this.mapAddress(sel,isOrigin));
191
- // formCompnent.controls['country'].setValue('US')
192
- // }
193
- patchFormWithSelectedAddress(sel, isOrigin, form) {
194
- // form.markAsPristine();
195
- const isOrig = isOrigin;
196
- const countryCode = (sel.country ?? 'US').toUpperCase();
197
- const stateCode = (isOrig ? sel.state : sel.stateAbbrevation)?.toUpperCase();
198
- form.patchValue({
199
- streetAddress: isOrig ? sel.line1 : sel.deliveryLine1,
200
- optionalAddress: isOrig ? sel.line2 : sel.deliveryLine2,
201
- city: isOrig ? sel.city : sel.cityName,
202
- zip: sel.zipCode
203
- }, { emitEvent: false });
204
- const country = countryCode === 'CA'
205
- ? { value: 'CA', text: 'Canada' }
206
- : { value: 'US', text: 'United States' };
207
- form.get('country')?.patchValue(country, { emitEvent: true });
208
- const stateList = countryCode === 'CA' ? ComboOption.CA_STATES : ComboOption.US_STATES;
209
- const state = stateList.find(s => s.value === stateCode) ?? { value: stateCode, text: stateCode };
210
- form.get('state')?.patchValue(state, { emitEvent: true });
211
- }
212
- setIsAddressValideController(flag) {
213
- this.isAddressValid = flag;
214
- if (this.parentFormComponent && this.parentFormComponent === "add-participant") {
215
- this.questionaireForm.controls["hidIsAddressValidated"].setValue(this.isAddressValid);
216
- }
217
- else {
218
- if (this.questionaireForm?.form?.controls['hidIsAddressValidated']) {
219
- this.questionaireForm.form.controls['hidIsAddressValidated'].setValue(this.isAddressValid);
220
- }
221
- }
222
- }
223
- mapAddress(sel, isOrigin) {
224
- if (isOrigin) {
225
- // Original Address
226
- return {
227
- streetAddress: sel.line1,
228
- optionalAddress: sel.line2,
229
- city: sel.city,
230
- state: { value: sel.state, text: sel.state },
231
- zip: sel.zipCode,
232
- country: { value: sel.country, text: sel.country }
233
- };
234
- }
235
- else {
236
- // USPS Recommended Address
237
- return {
238
- streetAddress: sel.deliveryLine1,
239
- optionalAddress: sel.deliveryLine2,
240
- city: sel.cityName,
241
- state: { value: sel.stateAbbrevation, text: sel.stateAbbrevation },
242
- zip: sel.zipCode,
243
- country: { value: sel.country, text: sel.country }
244
- };
245
- }
246
- }
247
- static { this.ɵfac = function AddressSuggestionComponent_Factory(t) { return new (t || AddressSuggestionComponent)(i0.ɵɵdirectiveInject(i1.AddressValidationService)); }; }
248
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AddressSuggestionComponent, selectors: [["app-address-suggestion"]], inputs: { original: "original", choices: "choices", form: "form", formName: "formName", diffMailAddressFlag: "diffMailAddressFlag", formBlur: "formBlur", standaloneAddressForm: "standaloneAddressForm", questionaireForm: "questionaireForm", parentFormComponent: "parentFormComponent" }, outputs: { checkFormIsBlur: "checkFormIsBlur" }, decls: 2, vars: 2, consts: [["styleClass", "red-header", 3, "activeIndex", "onOpen", "onClose", 4, "ngIf"], ["class", "error-banner", 4, "ngIf"], ["styleClass", "red-header", 3, "activeIndex", "onOpen", "onClose"], ["pTemplate", "header"], ["pTemplate", "content"], [3, "ngModel", "ngModelChange", "ionChange"], [1, "label-heading"], ["slot", "start", 3, "value"], ["lines", "none"], [4, "ngFor", "ngForOf"], [1, "error-banner"], ["name", "alert-circle-outline", 2, "color", "var(--ion-color-danger)", "font-size", "18px", "margin-right", "8px"]], template: function AddressSuggestionComponent_Template(rf, ctx) { if (rf & 1) {
249
- i0.ɵɵtemplate(0, AddressSuggestionComponent_p_accordion_0_Template, 4, 1, "p-accordion", 0)(1, AddressSuggestionComponent_div_1_Template, 4, 1, "div", 1);
250
- } if (rf & 2) {
251
- i0.ɵɵproperty("ngIf", ctx.showAccordion && ctx.form.valid);
252
- i0.ɵɵadvance(1);
253
- i0.ɵɵproperty("ngIf", ctx.showInlineError && !ctx.showAccordion && ctx.msuaCount < 2 && ctx.aunrCount < 2);
254
- } }, dependencies: [i2.IonIcon, i2.IonItem, i2.IonLabel, i2.IonRadio, i2.IonRadioGroup, i2.RadioValueAccessor, i2.SelectValueAccessor, i3.NgForOf, i3.NgIf, i4.PrimeTemplate, i5.NgControlStatus, i5.NgModel, i6.Accordion, i6.AccordionTab], styles: ["[_nghost-%COMP%] .red-header .p-accordion-header-link{color:var(--ion-color-danger)}.error-banner[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:4px;padding:8px 12px;margin-bottom:10px;font-size:14px}.hide-element[_ngcontent-%COMP%]{visibility:hidden}"] }); }
255
- }
256
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AddressSuggestionComponent, [{
257
- type: Component,
258
- args: [{ selector: 'app-address-suggestion', template: "<p-accordion *ngIf=\"showAccordion && (form.valid)\" (onOpen)=\"tabOpen()\" (onClose)=\"tabClose()\" [activeIndex]=\"addressSelected\" styleClass=\"red-header\">\r\n <p-accordionTab >\r\n \r\n <ng-template pTemplate=\"header\" >\r\n Address Validation\r\n </ng-template>\r\n <ng-template pTemplate=\"content\">\r\n <div *ngIf=\"showInlineError\" class=\"error-banner\">\r\n <ion-icon name=\"alert-circle-outline\" style=\"color: var(--ion-color-danger); font-size: 18px; margin-right: 8px;\"></ion-icon>\r\n <span>{{ errorText }}</span>\r\n </div>\r\n <p>The U.S. Postal Service has recommended changes to your address. Select the address you want to use:</p>\r\n <ion-radio-group [(ngModel)]=\"picked\" (ionChange)=\"selectionChanged($event)\">\r\n <div class=\"label-heading\">You Entered:</div>\r\n <ion-item>\r\n <ion-radio slot=\"start\" [value]=\"original\"></ion-radio>\r\n <ion-label>\r\n {{ original.line1 }}, {{ original.line2 }}<br />\r\n {{ original.city }}, {{ original.state }}, {{ original.zipCode }} {{ original.country }}\r\n </ion-label>\r\n </ion-item>\r\n <ion-item lines=\"none\">\r\n <ion-label>\r\n <strong class=\"label-heading\">USPS Recommendations:</strong><br />\r\n </ion-label>\r\n </ion-item>\r\n <ion-item *ngFor=\"let c of choices\">\r\n <ion-label>\r\n {{ c.deliveryLine1 }} {{ c.deliveryLine2 }}<br />\r\n {{ c.cityName }}, {{ c.stateAbbrevation }}, {{ c.zipCode }} {{ c.country }}\r\n </ion-label>\r\n <ion-radio slot=\"start\" [value]=\"c\"></ion-radio>\r\n </ion-item>\r\n </ion-radio-group>\r\n </ng-template>\r\n </p-accordionTab>\r\n</p-accordion>\r\n<div *ngIf=\"showInlineError && !showAccordion && msuaCount < 2 && aunrCount < 2\" class=\"error-banner\">\r\n <ion-icon name=\"alert-circle-outline\" style=\"color: var(--ion-color-danger); font-size: 18px; margin-right: 8px;\"></ion-icon>\r\n <span>{{ errorText }}</span>\r\n</div>", styles: [":host ::ng-deep .red-header .p-accordion-header-link{color:var(--ion-color-danger)}.error-banner{display:flex;align-items:center;background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:4px;padding:8px 12px;margin-bottom:10px;font-size:14px}.hide-element{visibility:hidden}\n"] }]
259
- }], () => [{ type: i1.AddressValidationService }], { original: [{
260
- type: Input
261
- }], choices: [{
262
- type: Input
263
- }], form: [{
264
- type: Input
265
- }], formName: [{
266
- type: Input
267
- }], diffMailAddressFlag: [{
268
- type: Input
269
- }], formBlur: [{
270
- type: Input
271
- }], standaloneAddressForm: [{
272
- type: Input
273
- }], questionaireForm: [{
274
- type: Input
275
- }], parentFormComponent: [{
276
- type: Input
277
- }], checkFormIsBlur: [{
278
- type: Output
279
- }] }); })();
280
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AddressSuggestionComponent, { className: "AddressSuggestionComponent", filePath: "lib\\components\\address-suggestion\\address-suggestion.component.ts", lineNumber: 15 }); })();
281
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzcy1zdWdnZXN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9hZGRyZXNzLXN1Z2dlc3Rpb24vYWRkcmVzcy1zdWdnZXN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9hZGRyZXNzLXN1Z2dlc3Rpb24vYWRkcmVzcy1zdWdnZXN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPL0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7Ozs7Ozs7SUNIeEQsb0NBQ0o7OztJQUVJLCtCQUFrRDtJQUM5QywrQkFBNkg7SUFDN0gsNEJBQU07SUFBQSxZQUFlO0lBQUEsaUJBQU8sRUFBQTs7O0lBQXRCLGVBQWU7SUFBZixzQ0FBZTs7O0lBaUJyQixnQ0FBb0MsZ0JBQUE7SUFFeEIsWUFBMkM7SUFBQSxxQkFBTTtJQUNqRCxZQUNSO0lBQUEsaUJBQVk7SUFDWiwrQkFBZ0Q7SUFDcEQsaUJBQVc7OztJQUpDLGVBQTJDO0lBQTNDLDJFQUEyQztJQUMzQyxlQUNSO0lBRFEsa0hBQ1I7SUFDd0IsZUFBVztJQUFYLDRCQUFXOzs7O0lBeEIzQyx1R0FHTTtJQUNOLHlCQUFHO0lBQUEsb0hBQW9HO0lBQUEsaUJBQUk7SUFDM0csMENBQTZFO0lBQTVELHVRQUFvQix3TUFBYyxlQUFBLCtCQUF3QixDQUFBLElBQXRDO0lBQ2pDLDhCQUEyQjtJQUFBLDRCQUFZO0lBQUEsaUJBQU07SUFDN0MsZ0NBQVU7SUFDTiwrQkFBdUQ7SUFDdkQsaUNBQVc7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QUFlO2tCQURkLE1BQU07O2tGQWJJLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWRkcmVzc1JlY29tbWVuZGF0aW9uTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWRkcmVzc1ZhbGlkYXRpb24vQWRkcmVzc1JlY29tbWVuZGF0aW9uTW9kZWwnO1xyXG5pbXBvcnQgeyBBZGRyZXNzVmFsaWRhdGlvblJlcXVlc3RDb21wb25lbnRNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9hZGRyZXNzVmFsaWRhdGlvbi9BZGRyZXNzVmFsaWRhdGlvblJlcXVlc3RDb21wb25lbnRNb2RlbCc7XHJcbmltcG9ydCB7IEFkZHJlc3NWYWxpZGF0aW9uUmVzcG9uc2VDb21wb25lbnRNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9hZGRyZXNzVmFsaWRhdGlvbi9BZGRyZXNzVmFsaWRhdGlvblJlc3BvbnNlQ29tcG9uZW50TW9kZWwnO1xyXG5pbXBvcnQgeyBBZGRyZXNzUmVjb21tZW5kYXRpb25Nb2RlbCBhcyBBZGRyUmVjIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FkZHJlc3NWYWxpZGF0aW9uL0FkZHJlc3NSZWNvbW1lbmRhdGlvbk1vZGVsJztcclxuaW1wb3J0IHsgQWRkcmVzc1ZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYWRkcmVzcy12YWxpZGF0aW9uLXNlcnZpY2UvYWRkcmVzcy12YWxpZGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOZ0Zvcm0sIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvbWJvT3B0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3F1ZXN0aW9ubmFpcmUvQ29tYm9Nb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1hZGRyZXNzLXN1Z2dlc3Rpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGRyZXNzLXN1Z2dlc3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9hZGRyZXNzLXN1Z2dlc3Rpb24uY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkZHJlc3NTdWdnZXN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBzaG93QWRkcmVzc1N1Z2dlc3Rpb246IGJvb2xlYW47XHJcbiAgc2hvd0FjY29yZGlvbjpib29sZWFuO1xyXG4gIEBJbnB1dCgpIG9yaWdpbmFsOiBBZGRyZXNzVmFsaWRhdGlvblJlcXVlc3RDb21wb25lbnRNb2RlbDtcclxuICBASW5wdXQoKSBjaG9pY2VzOiBBZGRyZXNzUmVjb21tZW5kYXRpb25Nb2RlbFtdID0gW107XHJcbiAgQElucHV0KCkgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcclxuICBASW5wdXQoKSBmb3JtTmFtZTpzdHJpbmc7XHJcbiAgQElucHV0KCkgZGlmZk1haWxBZGRyZXNzRmxhZzpib29sZWFuO1xyXG4gIEBJbnB1dCgpIGZvcm1CbHVyOmJvb2xlYW47XHJcbiAgQElucHV0KCkgc3RhbmRhbG9uZUFkZHJlc3NGb3JtOmJvb2xlYW47XHJcbiAgQElucHV0KCkgcXVlc3Rpb25haXJlRm9ybTtcclxuICBASW5wdXQoKSBwYXJlbnRGb3JtQ29tcG9uZW50OiBzdHJpbmc7XHJcblxyXG4gIEBPdXRwdXQoKSBcclxuICBjaGVja0Zvcm1Jc0JsdXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIHBpY2tlZDogYW55ID0gbnVsbDtcclxuICBhZGRyZXNzU2VsZWN0ZWQ7XHJcbiAgZXJyb3JUZXh0OiBzdHJpbmc7XHJcbiAgc2hvd0lubGluZUVycm9yID0gZmFsc2U7XHJcbiAgbXN1YUNvdW50ID0gMDtcclxuICBhdW5yQ291bnQgPSAwO1xyXG4gIGlzQWRkcmVzc1ZhbGlkOiBzdHJpbmc7XHJcbiAgbGFzdFZhbGlkQWRkcmVzcztcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFkZHJTdmM6IEFkZHJlc3NWYWxpZGF0aW9uU2VydmljZSkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmNoZWNrRm9ybUlzQmx1ci5lbWl0KClcclxuICAgIGlmKHRoaXMuZm9ybUJsdXIgJiYgdGhpcy5mb3JtLnZhbGlkKXtcclxuICAgICAgdGhpcy5nZXRWYWxpZGF0ZUFkZHJlc3ModHJ1ZSk7XHJcbiAgICB9XHJcbiAgICBcclxuICB9XHJcblxyXG4gIGdldFZhbGlkYXRlQWRkcmVzcyhpbml0aWFsVmFsaWRhdGlvbjpib29sZWFuKSB7XHJcbiAgICBsZXQgY2hlY2tJZlZhbGlkYXRlQ29ycmVjdEFkZHJlc3MgPSAoKCh0aGlzLmZvcm1OYW1lPT09J3Jlc0FkZHJlc3MnIHx8IHRoaXMuZm9ybU5hbWU9PT0ncmVzQWRyZXNzJykgJiYgdGhpcy5kaWZmTWFpbEFkZHJlc3NGbGFnPT09IGZhbHNlKSB8fCAodGhpcy5mb3JtTmFtZT09PSdtYWlsQWRkcmVzcycgJiYgdGhpcy5kaWZmTWFpbEFkZHJlc3NGbGFnPT09IHRydWUpIHx8ICh0aGlzLnN0YW5kYWxvbmVBZGRyZXNzRm9ybSA9PT0gdHJ1ZSkpXHJcbiAgICBpZighY2hlY2tJZlZhbGlkYXRlQ29ycmVjdEFkZHJlc3MpcmV0dXJuO1xyXG4gICAgaWYoIWluaXRpYWxWYWxpZGF0aW9uICYmIHRoaXMuZm9ybS5wcmlzdGluZSA9PT0gdHJ1ZSlyZXR1cm47XHJcblxyXG4gICAgaWYodGhpcy5tc3VhQ291bnQgPj0gMil7XHJcbiAgICAgIHRoaXMuc2V0SXNBZGRyZXNzVmFsaWRlQ29udHJvbGxlcignMCcpXHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmKHRoaXMuYXVuckNvdW50ID49IDIpe1xyXG4gICAgICB0aGlzLnNldElzQWRkcmVzc1ZhbGlkZUNvbnRyb2xsZXIoJzAnKVxyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmFkZHJTdmMudmFsaWRhdGVBZGRyZXNzUHJvY2VzcyhudWxsLCB0aGlzLmZvcm0udmFsdWUsIHRoaXMuZm9ybSkudGhlbigocmVzKSA9PiB7XHJcbiAgICAgIHRoaXMuZXJyb3JUZXh0ID0gcmVzLmVycm9yVGV4dDtcclxuICAgICAgdGhpcy5zaG93SW5saW5lRXJyb3IgPSByZXMuc2hvd0lubGluZUVycm9yO1xyXG4gICAgICB0aGlzLnNldElzQWRkcmVzc1ZhbGlkZUNvbnRyb2xsZXIocmVzLmlzQWRkcmVzc1ZhbGlkYXRlZCk7XHJcbiAgICAgIGlmKHRoaXMuaXNBZGRyZXNzVmFsaWQgPT09ICcxJyl7XHJcbiAgICAgICAgdGhpcy5sYXN0VmFsaWRBZGRyZXNzID0gcmVzLmxhc3RWYWxpZGF0ZWRBZGRyZXNzO1xyXG4gICAgICAgIHRoaXMuc2V0SXNBZGRyZXNzVmFsaWRlQ29udHJvbGxlcignMScpO1xyXG4gICAgICB9ZWxzZSBpZih0aGlzLmlzQWRkcmVzc1ZhbGlkID09PSAnMCcpe1xyXG4gICAgICAgIHRoaXMuc2V0SXNBZGRyZXNzVmFsaWRlQ29udHJvbGxlcignMCcpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmKHJlcy5sYXN0VmFsaWRhdGVSZXN1bHQgPT09IFwiTVVTQVwiKXtcclxuICAgICAgICB0aGlzLm1zdWFDb3VudCArPTE7XHJcbiAgICAgICAgdGhpcy5hdW5yQ291bnQgPSAwO1xyXG4gICAgICAgIHRoaXMuc2V0SXNBZGRyZXNzVmFsaWRlQ29udHJvbGxlcignMCcpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmKHJlcy5sYXN0VmFsaWRhdGVSZXN1bHQgPT09IFwiQVVOUlwiKXtcclxuICAgICAgICB0aGlzLmF1bnJDb3VudCArPTE7XHJcbiAgICAgICAgdGhpcy5tc3VhQ291bnQgPTA7XHJcbiAgICAgICAgdGhpcy5zZXRJc0FkZHJlc3NWYWxpZGVDb250cm9sbGVyKCcwJyk7XHJcbiAgICAgIH1cclxuICAgICAgaWYocmVzLmxhc3RWYWxpZGF0ZVJlc3VsdD09PSBcIk5SRUNcIil7XHJcbiAgICAgICAgdGhpcy5zZXRJc0FkZHJlc3NWYWxpZGVDb250cm9sbGVyKCcxJyk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHJlcy5zaG93UG9wdXAgPT09IHRydWUpIHtcclxuICAgICAgICB0aGlzLnNldElzQWRkcmVzc1ZhbGlkZUNvbnRyb2xsZXIoJzEnKTtcclxuICAgICAgICB0aGlzLmFkZHJlc3NTZWxlY3RlZCA9IDBcclxuICAgICAgICB0aGlzLnNob3dBY2NvcmRpb24gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuaGFuZGxlUmVjb21tZW5kYXRpb25zKHJlcy5hZGRyZXNzVmFsaWRhdGlvblJlc3BvbnNlLCByZXMuYWRkcmVzc1ZhbGlkYXRpb25SZXF1ZXN0LCB0aGlzLmZvcm0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuc2hvd0FjY29yZGlvbiA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9KS5jYXRjaCgoZXJyKT0+e1xyXG4gICAgICB0aGlzLnNob3dBY2NvcmRpb24gPSBmYWxzZTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICB0YWJPcGVuKCl7XHJcbiAgICB0aGlzLmFkZHJlc3NTZWxlY3RlZCA9IDA7XHJcbiAgfVxyXG5cclxuICB0YWJDbG9zZSgpe1xyXG4gICAgdGhpcy5hZGRyZXNzU2VsZWN0ZWQgPSAxO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVJlY29tbWVuZGF0aW9ucyhyZXM6IEFkZHJlc3NWYWxpZGF0aW9uUmVzcG9uc2VDb21wb25lbnRNb2RlbCwgcmVxOiBBZGRyZXNzVmFsaWRhdGlvblJlcXVlc3RDb21wb25lbnRNb2RlbCwgZm9ybUNvbXBuZW50OiBhbnkpIHtcclxuICAgIGNvbnN0IHN1Z2dlc3Rpb25zOiBBZGRyUmVjW10gPSBBcnJheS5mcm9tKHJlcy5hZGRyZXNzUmVjb21tZW5kYXRpb25Nb2RlbCA/PyBbXSk7XHJcbiAgICBpZiAoIXN1Z2dlc3Rpb25zLmxlbmd0aCkgcmV0dXJuO1xyXG4gICAgdGhpcy5vcmlnaW5hbCA9IHJlcTtcclxuICAgIHRoaXMuY2hvaWNlcyA9IHN1Z2dlc3Rpb25zO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0aW9uQ2hhbmdlZChldmVudCkge1xyXG4gICAgbGV0IGlzT3JpZ2luID0gdGhpcy5waWNrZWQgPT09IHRoaXMub3JpZ2luYWw/IHRydWU6IGZhbHNlO1xyXG4gICAgdGhpcy5hZGRyZXNzU2VsZWN0ZWQgPSAxO1xyXG4gICAgdGhpcy5wYXRjaEZvcm1XaXRoU2VsZWN0ZWRBZGRyZXNzKHRoaXMucGlja2VkLGlzT3JpZ2luLCB0aGlzLmZvcm0pXHJcbiAgfVxyXG5cclxuICAvLyBwdWJsaWMgcGF0Y2hGb3JtV2l0aFNlbGVjdGVkQWRkcmVzcyhzZWw6IGFueSxpc09yaWdpbjogYm9vbGVhbiwgZm9ybUNvbXBuZW50OiBhbnkpIHtcclxuICAvLyAgIGNvbnNvbGUubG9nKFwiYWRkcmVzIHN1Z2dlc3Rpb24gcGF0Y2hcIilcclxuICAvLyAgIGNvbnNvbGUubG9nKGZvcm1Db21wbmVudClcclxuICAvLyAgIGZvcm1Db21wbmVudC5wYXRjaFZhbHVlKHRoaXMubWFwQWRkcmVzcyhzZWwsaXNPcmlnaW4pKTtcclxuICAvLyAgIGZvcm1Db21wbmVudC5jb250cm9sc1snY291bnRyeSddLnNldFZhbHVlKCdVUycpXHJcbiAgLy8gfVxyXG5cclxuICBwdWJsaWMgcGF0Y2hGb3JtV2l0aFNlbGVjdGVkQWRkcmVzcyhzZWw6IGFueSwgaXNPcmlnaW46IGJvb2xlYW4sIGZvcm06IFVudHlwZWRGb3JtR3JvdXApIHtcclxuICAgIC8vIGZvcm0ubWFya0FzUHJpc3RpbmUoKTtcclxuICAgIGNvbnN0IGlzT3JpZyA9IGlzT3JpZ2luO1xyXG4gICAgY29uc3QgY291bnRyeUNvZGUgPSAoKHNlbC5jb3VudHJ5ID8/ICdVUycpIGFzIHN0cmluZykudG9VcHBlckNhc2UoKTtcclxuICAgIGNvbnN0IHN0YXRlQ29kZSA9IChpc09yaWcgPyBzZWwuc3RhdGUgOiBzZWwuc3RhdGVBYmJyZXZhdGlvbik/LnRvVXBwZXJDYXNlKCk7XHJcbiAgICBcclxuICAgIGZvcm0ucGF0Y2hWYWx1ZShcclxuICAgICAge1xyXG4gICAgICAgIHN0cmVldEFkZHJlc3M6IGlzT3JpZyA/IHNlbC5saW5lMSA6IHNlbC5kZWxpdmVyeUxpbmUxLFxyXG4gICAgICAgIG9wdGlvbmFsQWRkcmVzczogaXNPcmlnID8gc2VsLmxpbmUyIDogc2VsLmRlbGl2ZXJ5TGluZTIsXHJcbiAgICAgICAgY2l0eTogaXNPcmlnID8gc2VsLmNpdHkgOiBzZWwuY2l0eU5hbWUsXHJcbiAgICAgICAgemlwOiBzZWwuemlwQ29kZVxyXG4gICAgICB9LFxyXG4gICAgICB7IGVtaXRFdmVudDogZmFsc2UgfVxyXG4gICAgKTtcclxuICBcclxuICAgIGNvbnN0IGNvdW50cnkgPSBjb3VudHJ5Q29kZSA9PT0gJ0NBJ1xyXG4gICAgICA/IHsgdmFsdWU6ICdDQScsIHRleHQ6ICdDYW5hZGEnIH1cclxuICAgICAgOiB7IHZhbHVlOiAnVVMnLCB0ZXh0OiAnVW5pdGVkIFN0YXRlcycgfTtcclxuICAgIGZvcm0uZ2V0KCdjb3VudHJ5Jyk/LnBhdGNoVmFsdWUoY291bnRyeSwgeyBlbWl0RXZlbnQ6IHRydWUgfSk7XHJcbiAgXHJcbiAgICBjb25zdCBzdGF0ZUxpc3QgPSBjb3VudHJ5Q29kZSA9PT0gJ0NBJyA/IENvbWJvT3B0aW9uLkNBX1NUQVRFUyA6IENvbWJvT3B0aW9uLlVTX1NUQVRFUztcclxuICAgIGNvbnN0IHN0YXRlID0gc3RhdGVMaXN0LmZpbmQocyA9PiBzLnZhbHVlID09PSBzdGF0ZUNvZGUpID8/IHsgdmFsdWU6IHN0YXRlQ29kZSwgdGV4dDogc3RhdGVDb2RlIH07XHJcbiAgICBmb3JtLmdldCgnc3RhdGUnKT8ucGF0Y2hWYWx1ZShzdGF0ZSwgeyBlbWl0RXZlbnQ6IHRydWUgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldElzQWRkcmVzc1ZhbGlkZUNvbnRyb2xsZXIoZmxhZzogc3RyaW5nKXtcclxuICAgIHRoaXMuaXNBZGRyZXNzVmFsaWQgPSBmbGFnO1xyXG4gICAgaWYodGhpcy5wYXJlbnRGb3JtQ29tcG9uZW50ICYmIHRoaXMucGFyZW50Rm9ybUNvbXBvbmVudD09PVwiYWRkLXBhcnRpY2lwYW50XCIpe1xyXG4gICAgICB0aGlzLnF1ZXN0aW9uYWlyZUZvcm0uY29udHJvbHNbXCJoaWRJc0FkZHJlc3NWYWxpZGF0ZWRcIl0uc2V0VmFsdWUodGhpcy5pc0FkZHJlc3NWYWxpZClcclxuICAgIH1lbHNle1xyXG4gICAgICBpZih0aGlzLnF1ZXN0aW9uYWlyZUZvcm0/LmZvcm0/LmNvbnRyb2xzWydoaWRJc0FkZHJlc3NWYWxpZGF0ZWQnXSl7XHJcbiAgICAgICAgdGhpcy5xdWVzdGlvbmFpcmVGb3JtLmZvcm0uY29udHJvbHNbJ2hpZElzQWRkcmVzc1ZhbGlkYXRlZCddLnNldFZhbHVlKHRoaXMuaXNBZGRyZXNzVmFsaWQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICB9XHJcbiAgcHJpdmF0ZSBtYXBBZGRyZXNzKHNlbDogYW55LCBpc09yaWdpbjpib29sZWFuKSB7XHJcbiAgICBpZiAoaXNPcmlnaW4pIHtcclxuICAgICAgLy8gT3JpZ2luYWwgQWRkcmVzc1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIHN0cmVldEFkZHJlc3M6IHNlbC5saW5lMSxcclxuICAgICAgICBvcHRpb25hbEFkZHJlc3M6IHNlbC5saW5lMixcclxuICAgICAgICBjaXR5OiBzZWwuY2l0eSxcclxuICAgICAgICBzdGF0ZTogeyB2YWx1ZTogc2VsLnN0YXRlLCB0ZXh0OiBzZWwuc3RhdGUgfSxcclxuICAgICAgICB6aXA6IHNlbC56aXBDb2RlLFxyXG4gICAgICAgIGNvdW50cnk6IHsgdmFsdWU6IHNlbC5jb3VudHJ5LCB0ZXh0OiBzZWwuY291bnRyeSB9ICBcclxuICAgICAgfTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIFVTUFMgUmVjb21tZW5kZWQgQWRkcmVzc1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIHN0cmVldEFkZHJlc3M6IHNlbC5kZWxpdmVyeUxpbmUxLFxyXG4gICAgICAgIG9wdGlvbmFsQWRkcmVzczogc2VsLmRlbGl2ZXJ5TGluZTIsXHJcbiAgICAgICAgY2l0eTogc2VsLmNpdHlOYW1lLFxyXG4gICAgICAgIHN0YXRlOiB7IHZhbHVlOiBzZWwuc3RhdGVBYmJyZXZhdGlvbiwgdGV4dDogc2VsLnN0YXRlQWJicmV2YXRpb24gfSxcclxuICAgICAgICB6aXA6IHNlbC56aXBDb2RlLFxyXG4gICAgICAgIGNvdW50cnk6IHsgdmFsdWU6IHNlbC5jb3VudHJ5LCB0ZXh0OiBzZWwuY291bnRyeSB9ICBcclxuICAgICAgfTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPHAtYWNjb3JkaW9uICpuZ0lmPVwic2hvd0FjY29yZGlvbiAmJiAoZm9ybS52YWxpZClcIiAob25PcGVuKT1cInRhYk9wZW4oKVwiIChvbkNsb3NlKT1cInRhYkNsb3NlKClcIiBbYWN0aXZlSW5kZXhdPVwiYWRkcmVzc1NlbGVjdGVkXCIgc3R5bGVDbGFzcz1cInJlZC1oZWFkZXJcIj5cclxuICAgIDxwLWFjY29yZGlvblRhYiA+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiID5cclxuICAgICAgICAgICAgQWRkcmVzcyBWYWxpZGF0aW9uXHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiY29udGVudFwiPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd0lubGluZUVycm9yXCIgY2xhc3M9XCJlcnJvci1iYW5uZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwiYWxlcnQtY2lyY2xlLW91dGxpbmVcIiBzdHlsZT1cImNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFuZ2VyKTsgZm9udC1zaXplOiAxOHB4OyBtYXJnaW4tcmlnaHQ6IDhweDtcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4+e3sgZXJyb3JUZXh0IH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPHA+VGhlIFUuUy4gUG9zdGFsIFNlcnZpY2UgaGFzIHJlY29tbWVuZGVkIGNoYW5nZXMgdG8geW91ciBhZGRyZXNzLiBTZWxlY3QgdGhlIGFkZHJlc3MgeW91IHdhbnQgdG8gdXNlOjwvcD5cclxuICAgICAgICAgICAgPGlvbi1yYWRpby1ncm91cCBbKG5nTW9kZWwpXT1cInBpY2tlZFwiIChpb25DaGFuZ2UpPVwic2VsZWN0aW9uQ2hhbmdlZCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWwtaGVhZGluZ1wiPllvdSBFbnRlcmVkOjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGlvbi1pdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpb24tcmFkaW8gc2xvdD1cInN0YXJ0XCIgW3ZhbHVlXT1cIm9yaWdpbmFsXCI+PC9pb24tcmFkaW8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlvbi1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IG9yaWdpbmFsLmxpbmUxIH19LCB7eyBvcmlnaW5hbC5saW5lMiB9fTxiciAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgb3JpZ2luYWwuY2l0eSB9fSwge3sgb3JpZ2luYWwuc3RhdGUgfX0sIHt7IG9yaWdpbmFsLnppcENvZGUgfX0ge3sgb3JpZ2luYWwuY291bnRyeSB9fVxyXG4gICAgICAgICAgICAgICAgICAgIDwvaW9uLWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgPC9pb24taXRlbT5cclxuICAgICAgICAgICAgICAgIDxpb24taXRlbSBsaW5lcz1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW9uLWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwibGFiZWwtaGVhZGluZ1wiPlVTUFMgUmVjb21tZW5kYXRpb25zOjwvc3Ryb25nPjxiciAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvaW9uLWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgPC9pb24taXRlbT5cclxuICAgICAgICAgICAgICAgIDxpb24taXRlbSAqbmdGb3I9XCJsZXQgYyBvZiBjaG9pY2VzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlvbi1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGMuZGVsaXZlcnlMaW5lMSB9fSB7eyBjLmRlbGl2ZXJ5TGluZTIgfX08YnIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGMuY2l0eU5hbWUgfX0sIHt7IGMuc3RhdGVBYmJyZXZhdGlvbiB9fSwge3sgYy56aXBDb2RlIH19IHt7IGMuY291bnRyeSB9fVxyXG4gICAgICAgICAgICAgICAgICAgIDwvaW9uLWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpb24tcmFkaW8gc2xvdD1cInN0YXJ0XCIgW3ZhbHVlXT1cImNcIj48L2lvbi1yYWRpbz5cclxuICAgICAgICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgICAgIDwvaW9uLXJhZGlvLWdyb3VwPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvcC1hY2NvcmRpb25UYWI+XHJcbjwvcC1hY2NvcmRpb24+XHJcbjxkaXYgKm5nSWY9XCJzaG93SW5saW5lRXJyb3IgJiYgIXNob3dBY2NvcmRpb24gJiYgbXN1YUNvdW50IDwgMiAmJiBhdW5yQ291bnQgPCAyXCIgY2xhc3M9XCJlcnJvci1iYW5uZXJcIj5cclxuICAgIDxpb24taWNvbiBuYW1lPVwiYWxlcnQtY2lyY2xlLW91dGxpbmVcIiBzdHlsZT1cImNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFuZ2VyKTsgZm9udC1zaXplOiAxOHB4OyBtYXJnaW4tcmlnaHQ6IDhweDtcIj48L2lvbi1pY29uPlxyXG4gICAgPHNwYW4+e3sgZXJyb3JUZXh0IH19PC9zcGFuPlxyXG48L2Rpdj4iXX0=
@@ -1,245 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/forms";
4
- import * as i2 from "@ionic/angular";
5
- import * as i3 from "@angular/common";
6
- import * as i4 from "primeng/dialog";
7
- import * as i5 from "primeng/calendar";
8
- import * as i6 from "@ngx-translate/core";
9
- function AppointmentSelfSchedulerComponent_section_14_Template(rf, ctx) { if (rf & 1) {
10
- i0.ɵɵelementStart(0, "section");
11
- i0.ɵɵelement(1, "br");
12
- i0.ɵɵelementEnd();
13
- } }
14
- function AppointmentSelfSchedulerComponent_div_15_ion_col_6_Template(rf, ctx) { if (rf & 1) {
15
- const _r5 = i0.ɵɵgetCurrentView();
16
- i0.ɵɵelementStart(0, "ion-col", 24)(1, "ion-button", 25);
17
- i0.ɵɵlistener("click", function AppointmentSelfSchedulerComponent_div_15_ion_col_6_Template_ion_button_click_1_listener() { const restoredCtx = i0.ɵɵrestoreView(_r5); const slot_r3 = restoredCtx.$implicit; const ctx_r4 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r4.onTimeSlotSelect(slot_r3)); });
18
- i0.ɵɵtext(2);
19
- i0.ɵɵelementEnd()();
20
- } if (rf & 2) {
21
- const slot_r3 = ctx.$implicit;
22
- const ctx_r2 = i0.ɵɵnextContext(2);
23
- i0.ɵɵadvance(1);
24
- i0.ɵɵproperty("fill", ctx_r2.selectedTimeSlot === slot_r3 ? "solid" : "outline");
25
- i0.ɵɵadvance(1);
26
- i0.ɵɵtextInterpolate1(" ", slot_r3, " ");
27
- } }
28
- function AppointmentSelfSchedulerComponent_div_15_Template(rf, ctx) { if (rf & 1) {
29
- const _r7 = i0.ɵɵgetCurrentView();
30
- i0.ɵɵelementStart(0, "div")(1, "h4", 5);
31
- i0.ɵɵtext(2);
32
- i0.ɵɵpipe(3, "translate");
33
- i0.ɵɵelementEnd();
34
- i0.ɵɵelementStart(4, "ion-grid")(5, "ion-row", 19);
35
- i0.ɵɵtemplate(6, AppointmentSelfSchedulerComponent_div_15_ion_col_6_Template, 3, 2, "ion-col", 20);
36
- i0.ɵɵelementEnd();
37
- i0.ɵɵelementStart(7, "ion-row", 21)(8, "ion-col", 22)(9, "ion-button", 18);
38
- i0.ɵɵlistener("click", function AppointmentSelfSchedulerComponent_div_15_Template_ion_button_click_9_listener() { i0.ɵɵrestoreView(_r7); const ctx_r6 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r6.close()); });
39
- i0.ɵɵtext(10, "Cancel");
40
- i0.ɵɵelementEnd()();
41
- i0.ɵɵelementStart(11, "ion-col", 22)(12, "ion-button", 23);
42
- i0.ɵɵlistener("click", function AppointmentSelfSchedulerComponent_div_15_Template_ion_button_click_12_listener() { i0.ɵɵrestoreView(_r7); const ctx_r8 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r8.confirm()); });
43
- i0.ɵɵtext(13, "Confirm");
44
- i0.ɵɵelementEnd()()()()();
45
- } if (rf & 2) {
46
- const ctx_r1 = i0.ɵɵnextContext();
47
- i0.ɵɵadvance(2);
48
- i0.ɵɵtextInterpolate1("2. ", i0.ɵɵpipeBind1(3, 2, "self.scheduler.time"), "");
49
- i0.ɵɵadvance(4);
50
- i0.ɵɵproperty("ngForOf", ctx_r1.timeSlots);
51
- } }
52
- const _c0 = () => ({ width: "37.5vw" });
53
- const _c1 = () => ({ "1200px": "660px", "992px": "660px", "768px": "660px", "576px": "100vw" });
54
- export class AppointmentSelfSchedulerComponent {
55
- constructor(fb) {
56
- this.fb = fb;
57
- this.success = new EventEmitter();
58
- this.error = new EventEmitter();
59
- this.onClose = new EventEmitter();
60
- this.availableDates = [];
61
- this.invalidDates = [];
62
- this.showTimeSlotPopup = false;
63
- this.selectedDate = null;
64
- this.timeSlots = [];
65
- this.selectedTimeSlot = null;
66
- }
67
- /** GET mapping call to /scheduler/available-slots/ - to give available dates to allow to display and disable rest in the p-calendar*/
68
- ngOnInit() {
69
- this.rescheduleDate =
70
- this.fb.group({
71
- newAppointmentDate: null,
72
- timeSlot: null
73
- });
74
- this.showSchedulerPopup = true;
75
- this.availableDates = [
76
- new Date(2025, 4, 5),
77
- new Date(2025, 4, 10),
78
- new Date(2025, 4, 20)
79
- ];
80
- //Disable all dates after retrieving available dates.
81
- this.generateInvalidDates();
82
- }
83
- //Dummy data for display purposes of initial look of component.
84
- generateTimeSlots(date) {
85
- this.timeSlots = [
86
- '9:00 – 10:00 AM',
87
- '10:30 – 11:30 AM',
88
- '12:00 – 1:00 PM'
89
- ];
90
- }
91
- /** Will iterate through dates fetched from GET mapping, and disable dates not available in p-calendar*/
92
- generateInvalidDates() {
93
- const start = new Date(2025, 4, 1); // May 1
94
- const end = new Date(2025, 4, 31); // May 31
95
- const invalids = [];
96
- for (let d = new Date(start); d <= end; d.setDate(d.getDate() + 1)) {
97
- if (!this.availableDates.some(date => date.getDate() === d.getDate())) {
98
- invalids.push(new Date(d));
99
- }
100
- }
101
- this.invalidDates = invalids;
102
- }
103
- /** Will set the time slots availale for a given date in p-calendar*/
104
- onDateSelect(date) {
105
- this.selectedDate = date;
106
- this.generateTimeSlots(date); // GET mapping call to /scheduler/available-time/
107
- this.showTimeSlotPopup = true;
108
- }
109
- /** Will update value for selected time slot*/
110
- onTimeSlotSelect(slot) {
111
- this.selectedTimeSlot = slot;
112
- this.rescheduleDate.get('timeSlot')?.setValue(slot);
113
- }
114
- close() {
115
- this.showSchedulerPopup = false;
116
- }
117
- closeConfirmationPopup() {
118
- this.showSchedulerConfirmationPopup = false;
119
- }
120
- confirm() {
121
- const selectedDate = this.rescheduleDate.get('newAppointmentDate')?.value;
122
- const selectedSlot = this.rescheduleDate.get('timeSlot')?.value;
123
- ;
124
- if (selectedDate && selectedSlot) {
125
- this.confirmedDate = selectedDate;
126
- this.selectedTimeSlot = selectedSlot;
127
- //TODO Call endpoint and if successful set popup false and confirmation popup to true
128
- /** POST /scheduler/reschedule - Model - pass and save in tables */
129
- this.showSchedulerPopup = false;
130
- this.showSchedulerConfirmationPopup = true;
131
- }
132
- else {
133
- alert('Please select a date first.');
134
- }
135
- }
136
- get newAppointmentDate() {
137
- return this.rescheduleDate.controls['newAppointmentDate'];
138
- }
139
- get timeSlot() {
140
- return this.rescheduleDate.controls['timeSlot'];
141
- }
142
- static { this.ɵfac = function AppointmentSelfSchedulerComponent_Factory(t) { return new (t || AppointmentSelfSchedulerComponent)(i0.ɵɵdirectiveInject(i1.UntypedFormBuilder)); }; }
143
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AppointmentSelfSchedulerComponent, selectors: [["app-appointment-self-scheduler"]], inputs: { showSchedulerPopup: "showSchedulerPopup", showSchedulerConfirmationPopup: "showSchedulerConfirmationPopup" }, outputs: { success: "success", error: "error", onClose: "onClose" }, decls: 44, vars: 40, consts: [["modal", "true", "appendTo", "body", "position", "top", 3, "visible", "showHeader", "breakpoints"], [1, "dialog-header"], [1, "title-text", 2, "font-weight", "500"], [1, "close-wrapper", 3, "click"], ["src", "https://logowik.com/content/uploads/images/close1437.jpg", "width", "20", "height", "20", "margin-top", "5px", 1, "clickable-img"], [1, "app-heading"], [2, "text-align", "center"], [3, "formGroup"], ["inputId", "newAppointmentDate", "formControlName", "newAppointmentDate", "yearRange", "1901:2050", "dateFormat", "MM dd, yy", "dataType", "string", 1, "custom-calendar", 3, "inline", "yearNavigator", "disabledDates", "onSelect"], [4, "ngIf"], ["header", "Selected Date", "modal", "true", "appendTo", "body", "position", "top", 3, "visible", "showHeader", "breakpoints", "visibleChange"], [1, "app-heading", 2, "font-weight", "600", "color", "#949494"], [1, "message-box"], [2, "font-weight", "500", "font-size", "18px"], [2, "margin-left", "50px"], [2, "margin-left", "45px"], [1, "ion-padding"], [2, "text-align", "-webkit-right"], ["shape", "block", "fill", "outline", "type", "reset", 2, "width", "fit-content", 3, "click"], ["justify-content-start", "", 1, "time-slot-row"], ["size", "6", "size-sm", "4", "size-md", "4", "size-lg", "4", "class", "time-slot-col", 4, "ngFor", "ngForOf"], [1, "ion-padding", "ion-justify-content-end"], ["size", "auto"], ["shape", "block", "fill", "solid", "type", "submit", 2, "width", "fit-content", 3, "click"], ["size", "6", "size-sm", "4", "size-md", "4", "size-lg", "4", 1, "time-slot-col"], ["expand", "block", 3, "fill", "click"]], template: function AppointmentSelfSchedulerComponent_Template(rf, ctx) { if (rf & 1) {
144
- i0.ɵɵelementStart(0, "p-dialog", 0);
145
- i0.ɵɵelement(1, "br");
146
- i0.ɵɵelementStart(2, "div", 1)(3, "span", 2);
147
- i0.ɵɵtext(4);
148
- i0.ɵɵpipe(5, "translate");
149
- i0.ɵɵelementEnd();
150
- i0.ɵɵelementStart(6, "span", 3);
151
- i0.ɵɵlistener("click", function AppointmentSelfSchedulerComponent_Template_span_click_6_listener() { return ctx.close(); });
152
- i0.ɵɵelement(7, "img", 4);
153
- i0.ɵɵelementEnd()();
154
- i0.ɵɵelementStart(8, "h4", 5);
155
- i0.ɵɵtext(9);
156
- i0.ɵɵpipe(10, "translate");
157
- i0.ɵɵelementEnd();
158
- i0.ɵɵelement(11, "div", 6);
159
- i0.ɵɵelementStart(12, "form", 7)(13, "p-calendar", 8);
160
- i0.ɵɵlistener("onSelect", function AppointmentSelfSchedulerComponent_Template_p_calendar_onSelect_13_listener($event) { return ctx.onDateSelect($event); });
161
- i0.ɵɵelementEnd();
162
- i0.ɵɵtemplate(14, AppointmentSelfSchedulerComponent_section_14_Template, 2, 0, "section", 9);
163
- i0.ɵɵelementEnd();
164
- i0.ɵɵtemplate(15, AppointmentSelfSchedulerComponent_div_15_Template, 14, 4, "div", 9);
165
- i0.ɵɵelementEnd();
166
- i0.ɵɵelementStart(16, "p-dialog", 10);
167
- i0.ɵɵlistener("visibleChange", function AppointmentSelfSchedulerComponent_Template_p_dialog_visibleChange_16_listener($event) { return ctx.showSchedulerConfirmationPopup = $event; });
168
- i0.ɵɵelement(17, "br");
169
- i0.ɵɵelementStart(18, "div", 1)(19, "span", 2);
170
- i0.ɵɵtext(20);
171
- i0.ɵɵpipe(21, "translate");
172
- i0.ɵɵelementEnd();
173
- i0.ɵɵelementStart(22, "span", 3);
174
- i0.ɵɵlistener("click", function AppointmentSelfSchedulerComponent_Template_span_click_22_listener() { return ctx.closeConfirmationPopup(); });
175
- i0.ɵɵelement(23, "img", 4);
176
- i0.ɵɵelementEnd()();
177
- i0.ɵɵelementStart(24, "h4", 11);
178
- i0.ɵɵtext(25);
179
- i0.ɵɵpipe(26, "translate");
180
- i0.ɵɵelementEnd();
181
- i0.ɵɵelementStart(27, "div", 12)(28, "h5", 13);
182
- i0.ɵɵtext(29);
183
- i0.ɵɵpipe(30, "translate");
184
- i0.ɵɵelementEnd();
185
- i0.ɵɵelementStart(31, "p");
186
- i0.ɵɵtext(32, "Date: ");
187
- i0.ɵɵelementStart(33, "span", 14);
188
- i0.ɵɵtext(34);
189
- i0.ɵɵpipe(35, "date");
190
- i0.ɵɵelementEnd()();
191
- i0.ɵɵelementStart(36, "p");
192
- i0.ɵɵtext(37, "Time: ");
193
- i0.ɵɵelementStart(38, "span", 15);
194
- i0.ɵɵtext(39);
195
- i0.ɵɵelementEnd()()();
196
- i0.ɵɵelementStart(40, "ion-row", 16)(41, "ion-col", 17)(42, "ion-button", 18);
197
- i0.ɵɵlistener("click", function AppointmentSelfSchedulerComponent_Template_ion_button_click_42_listener() { return ctx.closeConfirmationPopup(); });
198
- i0.ɵɵtext(43, "Home");
199
- i0.ɵɵelementEnd()()()();
200
- } if (rf & 2) {
201
- i0.ɵɵstyleMap(i0.ɵɵpureFunction0(36, _c0));
202
- i0.ɵɵproperty("visible", ctx.showSchedulerPopup)("showHeader", false)("breakpoints", i0.ɵɵpureFunction0(37, _c1));
203
- i0.ɵɵadvance(4);
204
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 23, "self.scheduler.reschedule"), "");
205
- i0.ɵɵadvance(5);
206
- i0.ɵɵtextInterpolate1("1. ", i0.ɵɵpipeBind1(10, 25, "self.scheduler.selectdate"), "");
207
- i0.ɵɵadvance(3);
208
- i0.ɵɵproperty("formGroup", ctx.rescheduleDate);
209
- i0.ɵɵadvance(1);
210
- i0.ɵɵproperty("inline", true)("yearNavigator", true)("disabledDates", ctx.invalidDates);
211
- i0.ɵɵadvance(1);
212
- i0.ɵɵproperty("ngIf", ctx.showSchedulerPopup);
213
- i0.ɵɵadvance(1);
214
- i0.ɵɵproperty("ngIf", ctx.timeSlots.length);
215
- i0.ɵɵadvance(1);
216
- i0.ɵɵstyleMap(i0.ɵɵpureFunction0(38, _c0));
217
- i0.ɵɵproperty("visible", ctx.showSchedulerConfirmationPopup)("showHeader", false)("breakpoints", i0.ɵɵpureFunction0(39, _c1));
218
- i0.ɵɵadvance(4);
219
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(21, 27, "self.scheduler.confirmation1"));
220
- i0.ɵɵadvance(5);
221
- i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(26, 29, "self.scheduler.confirmation2"), " ");
222
- i0.ɵɵadvance(4);
223
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(30, 31, "self.scheduler.details"));
224
- i0.ɵɵadvance(5);
225
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(35, 33, ctx.confirmedDate, "longDate"), "");
226
- i0.ɵɵadvance(5);
227
- i0.ɵɵtextInterpolate1(" ", ctx.selectedTimeSlot, "");
228
- } }, dependencies: [i2.IonButton, i2.IonCol, i2.IonGrid, i2.IonRow, i3.NgForOf, i3.NgIf, i1.ɵNgNoValidate, i1.NgControlStatus, i1.NgControlStatusGroup, i1.FormGroupDirective, i1.FormControlName, i4.Dialog, i5.Calendar, i3.DatePipe, i6.TranslatePipe], styles: [".app-heading[_ngcontent-%COMP%]{font-family:var(--app-font-light);font-size:15px;color:var(--ion-color-medium-gray);padding-top:10px;font-weight:500} .p-datepicker table td>span.p-highlight{background-color:#4478aa!important;color:#fff!important} .p-datepicker td span:not(.p-disabled){background-color:#fff!important;color:#22405d!important;font-weight:700} .custom-calendar .p-datepicker td span:not(.p-disabled):after{content:\"\";position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:6px;height:6px;background-color:#22405d;border-radius:50%} .custom-calendar .p-datepicker table td>span.p-highlight:after{background-color:#fff}.message-box[_ngcontent-%COMP%]{background-color:#f5f5f5;padding:16px;border-radius:8px;border:1px solid #ddd;color:#333}.clickable-img[_ngcontent-%COMP%]{cursor:pointer}.dialog-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}"] }); }
229
- }
230
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppointmentSelfSchedulerComponent, [{
231
- type: Component,
232
- args: [{ selector: 'app-appointment-self-scheduler', template: "<p-dialog [visible]=\"showSchedulerPopup\" modal=\"true\" appendTo=\"body\" position=\"top\" [showHeader]=\"false\"\r\n [breakpoints]=\"{'1200px': '660px', '992px': '660px', '768px': '660px', '576px': '100vw'}\" [style]=\"{width: '37.5vw'}\">\r\n <br>\r\n <div class=\"dialog-header\">\r\n <span class=\"title-text\" style=\"font-weight: 500;\"> {{\"self.scheduler.reschedule\"|translate}}</span>\r\n <span class=\"close-wrapper\" (click)=\"close()\"> <img src=\"https://logowik.com/content/uploads/images/close1437.jpg\" width=\"20\" height=\"20\" margin-top=\"5px\" class=\"clickable-img\"></span>\r\n </div>\r\n <h4 class=\"app-heading\">1. {{\"self.scheduler.selectdate\"|translate}}</h4>\r\n <div style=\"text-align: center;\">\r\n </div>\r\n <form [formGroup]=\"rescheduleDate\">\r\n <p-calendar class=\"custom-calendar\" [inline]=\"true\" inputId=\"newAppointmentDate\"\r\n formControlName=\"newAppointmentDate\" [yearNavigator]=\"true\"\r\n yearRange=\"1901:2050\" dateFormat=\"MM dd, yy\" \r\n dataType=\"string\" [disabledDates]=\"invalidDates\"\r\n (onSelect)=\"onDateSelect($event)\"\r\n >\r\n </p-calendar>\r\n <section *ngIf=showSchedulerPopup><br></section>\r\n\t\r\n</form>\r\n\r\n<div *ngIf=\"timeSlots.length\">\r\n <h4 class=\"app-heading\">2. {{\"self.scheduler.time\"|translate}}</h4>\r\n <ion-grid>\r\n <ion-row class=\"time-slot-row\" justify-content-start>\r\n <ion-col size=\"6\" size-sm=\"4\" size-md=\"4\" size-lg=\"4\"\r\n *ngFor=\"let slot of timeSlots\"\r\n class=\"time-slot-col\">\r\n <ion-button expand=\"block\" [fill]=\"selectedTimeSlot === slot ? 'solid' : 'outline'\"\r\n (click)=\"onTimeSlotSelect(slot)\">\r\n {{ slot }}\r\n </ion-button>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row class=\"ion-padding ion-justify-content-end\">\r\n <ion-col size=\"auto\">\r\n <ion-button shape=\"block\" style=\"width: fit-content;\" fill=\"outline\" type=\"reset\" (click)=\"close()\">Cancel</ion-button>\r\n </ion-col>\r\n <ion-col size=\"auto\">\r\n <ion-button shape=\"block\" style=\"width: fit-content;\" fill=\"solid\" type=\"submit\" (click)=\"confirm()\">Confirm</ion-button>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n</div>\r\n\r\n</p-dialog>\r\n\r\n<p-dialog header=\"Selected Date\" [(visible)]=\"showSchedulerConfirmationPopup\" modal=\"true\" appendTo=\"body\" position=\"top\" [showHeader]=\"false\"\r\n[breakpoints]=\"{'1200px': '660px', '992px': '660px', '768px': '660px', '576px': '100vw'}\" [style]=\"{width: '37.5vw'}\">\r\n<br>\r\n<div class=\"dialog-header\">\r\n <span class=\"title-text\" style=\"font-weight: 500;\">{{\"self.scheduler.confirmation1\"|translate}}</span>\r\n <span class=\"close-wrapper\" (click)=\"closeConfirmationPopup()\"> <img src=\"https://logowik.com/content/uploads/images/close1437.jpg\" width=\"20\" height=\"20\" margin-top=\"5px\" class=\"clickable-img\"></span>\r\n </div>\r\n <h4 class=\"app-heading\" style=\"font-weight: 600; color:#949494;\">{{\"self.scheduler.confirmation2\"|translate}} </h4>\r\n\r\n<div class=\"message-box\">\r\n <h5 style=\"font-weight: 500; font-size: 18px;\">{{\"self.scheduler.details\"|translate}}</h5>\r\n <p>Date: <span style=\"margin-left: 50px;\"> {{ confirmedDate | date: 'longDate' }}</span></p>\r\n <p>Time: <span style=\"margin-left: 45px;\"> {{selectedTimeSlot}}</span></p>\r\n\r\n</div>\r\n<ion-row class=\"ion-padding\">\r\n <ion-col style=\"text-align: -webkit-right;\">\r\n <ion-button shape=\"block\" style=\"width: fit-content;\" fill=\"outline\" type=\"reset\" (click)=\"closeConfirmationPopup()\">Home</ion-button>\r\n </ion-col>\r\n</ion-row>\r\n </p-dialog>", styles: [".app-heading{font-family:var(--app-font-light);font-size:15px;color:var(--ion-color-medium-gray);padding-top:10px;font-weight:500}::ng-deep .p-datepicker table td>span.p-highlight{background-color:#4478aa!important;color:#fff!important}::ng-deep .p-datepicker td span:not(.p-disabled){background-color:#fff!important;color:#22405d!important;font-weight:700}::ng-deep .custom-calendar .p-datepicker td span:not(.p-disabled):after{content:\"\";position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:6px;height:6px;background-color:#22405d;border-radius:50%}::ng-deep .custom-calendar .p-datepicker table td>span.p-highlight:after{background-color:#fff}.message-box{background-color:#f5f5f5;padding:16px;border-radius:8px;border:1px solid #ddd;color:#333}.clickable-img{cursor:pointer}.dialog-header{display:flex;justify-content:space-between;align-items:center}\n"] }]
233
- }], () => [{ type: i1.UntypedFormBuilder }], { success: [{
234
- type: Output
235
- }], error: [{
236
- type: Output
237
- }], onClose: [{
238
- type: Output
239
- }], showSchedulerPopup: [{
240
- type: Input
241
- }], showSchedulerConfirmationPopup: [{
242
- type: Input
243
- }] }); })();
244
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AppointmentSelfSchedulerComponent, { className: "AppointmentSelfSchedulerComponent", filePath: "lib\\components\\appointment-self-scheduler\\appointment-self-scheduler.component.ts", lineNumber: 9 }); })();
245
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwb2ludG1lbnQtc2VsZi1zY2hlZHVsZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9jb21wb25lbnRzL2FwcG9pbnRtZW50LXNlbGYtc2NoZWR1bGVyL2FwcG9pbnRtZW50LXNlbGYtc2NoZWR1bGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9hcHBvaW50bWVudC1zZWxmLXNjaGVkdWxlci9hcHBvaW50bWVudC1zZWxmLXNjaGVkdWxlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7SUNrQjdFLCtCQUFrQztJQUFBLHFCQUFJO0lBQUEsaUJBQVU7Ozs7SUFRNUMsbUNBRStCLHFCQUFBO0lBRTdCLHlQQUFTLGVBQUEsZ0NBQXNCLENBQUEsSUFBQztJQUM5QixZQUNGO0lBQUEsaUJBQWEsRUFBQTs7OztJQUhjLGVBQXdEO0lBQXhELGdGQUF3RDtJQUVqRixlQUNGO0lBREUsd0NBQ0Y7Ozs7SUFWUiwyQkFBOEIsWUFBQTtJQUNKLFlBQXNDOztJQUFBLGlCQUFLO0lBQ25FLGdDQUFVLGtCQUFBO0lBRU4sa0dBT1U7SUFDWixpQkFBVTtJQUNWLG1DQUFxRCxrQkFBQSxxQkFBQTtJQUUwQyxtTEFBUyxlQUFBLGNBQU8sQ0FBQSxJQUFDO0lBQUMsdUJBQU07SUFBQSxpQkFBYSxFQUFBO0lBRWxJLG9DQUFxQixzQkFBQTtJQUNzRSxvTEFBUyxlQUFBLGdCQUFTLENBQUEsSUFBQztJQUFDLHdCQUFPO0lBQUEsaUJBQWEsRUFBQSxFQUFBLEVBQUEsRUFBQTs7O0lBakIvRyxlQUFzQztJQUF0Qyw2RUFBc0M7SUFJaEMsZUFBWTtJQUFaLDBDQUFZOzs7O0FEbkI1QyxNQUFNLE9BQU8saUNBQWlDO0lBOEI5QyxZQUFvQixFQUFzQjtRQUF0QixPQUFFLEdBQUYsRUFBRSxDQUFvQjtRQTNCeEMsWUFBTyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBR2hELFVBQUssR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUc5QyxZQUFPLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFZbEQsbUJBQWMsR0FBVyxFQUFFLENBQUM7UUFDNUIsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFFMUIsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLGlCQUFZLEdBQWdCLElBQUksQ0FBQztRQUNqQyxjQUFTLEdBQWEsRUFBRSxDQUFDO1FBQ3pCLHFCQUFnQixHQUFrQixJQUFJLENBQUM7SUFJbkMsQ0FBQztJQUVILHNJQUFzSTtJQUN4SSxRQUFRO1FBQ0osSUFBSSxDQUFDLGNBQWM7WUFDbkIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7Z0JBQ1osa0JBQWtCLEVBQUUsSUFBSTtnQkFDeEIsUUFBUSxFQUFFLElBQUk7YUFDZixDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1FBRS9CLElBQUksQ0FBQyxjQUFjLEdBQUc7WUFDcEIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDcEIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDckIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7U0FDdEIsQ0FBQztRQUVGLHFEQUFxRDtRQUNyRCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsK0RBQStEO0lBQy9ELGlCQUFpQixDQUFDLElBQVU7UUFDMUIsSUFBSSxDQUFDLFNBQVMsR0FBRztZQUNmLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFDbEIsaUJBQWlCO1NBQ2xCLENBQUM7SUFDSixDQUFDO0lBRUgsd0dBQXdHO0lBRXhHLG9CQUFvQjtRQUNoQixNQUFNLEtBQUssR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUTtRQUM1QyxNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztRQUU1QyxNQUFNLFFBQVEsR0FBVyxFQUFFLENBQUM7UUFDNUIsS0FBSyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ2xFLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRTtnQkFDckUsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzVCO1NBQ0Y7UUFDRCxJQUFJLENBQUMsWUFBWSxHQUFHLFFBQVEsQ0FBQztJQUNqQyxDQUFDO0lBRUMscUVBQXFFO0lBQ3ZFLFlBQVksQ0FBQyxJQUFVO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGlEQUFpRDtRQUMvRSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFQyw4Q0FBOEM7SUFDaEQsZ0JBQWdCLENBQUMsSUFBWTtRQUMzQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7SUFDaEMsQ0FBQztJQUVILHNCQUFzQjtRQUNwQixJQUFJLENBQUMsOEJBQThCLEdBQUcsS0FBSyxDQUFDO0lBQzVDLENBQUM7SUFFSCxPQUFPO1FBRUwsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsRUFBRSxLQUFLLENBQUM7UUFDMUUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsS0FBSyxDQUFDO1FBQUEsQ0FBQztRQUVqRSxJQUFJLFlBQVksSUFBSSxZQUFZLEVBQUU7WUFDaEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxZQUFZLENBQUM7WUFDbEMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFlBQVksQ0FBQTtZQUVwQyxxRkFBcUY7WUFFcEYsb0VBQW9FO1lBRXJFLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7WUFDaEMsSUFBSSxDQUFDLDhCQUE4QixHQUFHLElBQUksQ0FBQztTQUc1QzthQUFNO1lBQ0wsS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7U0FDdEM7SUFFSCxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRWxELENBQUM7a0dBL0hZLGlDQUFpQztvRUFBakMsaUNBQWlDO1lDUjlDLG1DQUMwSDtZQUN0SCxxQkFBSTtZQUNKLDhCQUEyQixjQUFBO1lBQzZCLFlBQXlDOztZQUFBLGlCQUFPO1lBQ3BHLCtCQUE4QztZQUFsQiw0R0FBUyxXQUFPLElBQUM7WUFBRSx5QkFBa0k7WUFBQSxpQkFBTyxFQUFBO1lBRTVMLDZCQUF3QjtZQUFBLFlBQTRDOztZQUFBLGlCQUFLO1lBQ3pFLDBCQUNNO1lBQ04sZ0NBQW1DLHFCQUFBO1lBS2xDLCtIQUFZLHdCQUFvQixJQUFDO1lBRXBDLGlCQUFhO1lBQ2IsNEZBQWdEO1lBRWxELGlCQUFPO1lBRVAscUZBc0JNO1lBRU4saUJBQVc7WUFFWCxxQ0FDc0g7WUFEckYsc0xBQTRDO1lBRTdFLHNCQUFJO1lBQ0osK0JBQTJCLGVBQUE7WUFDNEIsYUFBNEM7O1lBQUEsaUJBQU87WUFDdEcsZ0NBQStEO1lBQW5DLDZHQUFTLDRCQUF3QixJQUFDO1lBQUUsMEJBQWtJO1lBQUEsaUJBQU8sRUFBQTtZQUUzTSwrQkFBaUU7WUFBQSxhQUE2Qzs7WUFBQSxpQkFBSztZQUVySCxnQ0FBeUIsY0FBQTtZQUMwQixhQUFzQzs7WUFBQSxpQkFBSztZQUMxRiwwQkFBRztZQUFBLHVCQUFNO1lBQUEsaUNBQWlDO1lBQUMsYUFBc0M7O1lBQUEsaUJBQU8sRUFBQTtZQUN4RiwwQkFBRztZQUFBLHVCQUFNO1lBQUEsaUNBQWlDO1lBQUMsYUFBb0I7WUFBQSxpQkFBTyxFQUFBLEVBQUE7WUFHMUUsb0NBQTZCLG1CQUFBLHNCQUFBO1lBRThELG1IQUFTLDRCQUF3QixJQUFDO1lBQUMscUJBQUk7WUFBQSxpQkFBYSxFQUFBLEVBQUEsRUFBQTs7WUFoRWpELDBDQUEyQjtZQUQvRyxnREFBOEIscUJBQUEsNENBQUE7WUFJb0IsZUFBeUM7WUFBekMsa0ZBQXlDO1lBR3pFLGVBQTRDO1lBQTVDLHFGQUE0QztZQUc5RCxlQUE0QjtZQUE1Qiw4Q0FBNEI7WUFDRyxlQUFlO1lBQWYsNkJBQWUsdUJBQUEsbUNBQUE7WUFPNUMsZUFBdUI7WUFBdkIsNkNBQXVCO1lBSTdCLGVBQXNCO1lBQXRCLDJDQUFzQjtZQTJCOEQsZUFBMkI7WUFBM0IsMENBQTJCO1lBRHBGLDREQUE0QyxxQkFBQSw0Q0FBQTtZQUl0QixlQUE0QztZQUE1Qyw0RUFBNEM7WUFHaEMsZUFBNkM7WUFBN0Msc0ZBQTZDO1lBRzdELGVBQXNDO1lBQXRDLHNFQUFzQztZQUMxQyxlQUFzQztZQUF0QyxxRkFBc0M7WUFDdEMsZUFBb0I7WUFBcEIsb0RBQW9COzs7aUZEcER0RCxpQ0FBaUM7Y0FMN0MsU0FBUzsyQkFDRSxnQ0FBZ0M7bURBTzFDLE9BQU87a0JBRFIsTUFBTTtZQUlMLEtBQUs7a0JBRE4sTUFBTTtZQUlMLE9BQU87a0JBRFIsTUFBTTtZQU1BLGtCQUFrQjtrQkFEeEIsS0FBSztZQUlDLDhCQUE4QjtrQkFEcEMsS0FBSzs7a0ZBaEJPLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1hcHBvaW50bWVudC1zZWxmLXNjaGVkdWxlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FwcG9pbnRtZW50LXNlbGYtc2NoZWR1bGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYXBwb2ludG1lbnQtc2VsZi1zY2hlZHVsZXIuY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcG9pbnRtZW50U2VsZlNjaGVkdWxlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG5AT3V0cHV0KCkgXHJcbiAgc3VjY2VzczogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgXHJcbkBPdXRwdXQoKSBcclxuICBlcnJvcjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgXHJcbkBPdXRwdXQoKSBcclxuICBvbkNsb3NlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbnB1YmxpYyByZXNjaGVkdWxlRGF0ZTogVW50eXBlZEZvcm1Hcm91cDtcclxuXHJcbkBJbnB1dCgpXHJcbnB1YmxpYyBzaG93U2NoZWR1bGVyUG9wdXA6IGJvb2xlYW47XHJcblxyXG5ASW5wdXQoKVxyXG5wdWJsaWMgc2hvd1NjaGVkdWxlckNvbmZpcm1hdGlvblBvcHVwOiBib29sZWFuO1xyXG5cclxucHVibGljIGNvbmZpcm1lZERhdGU6IGFueTtcclxuXHJcbmF2YWlsYWJsZURhdGVzOiBEYXRlW10gPSBbXTtcclxuaW52YWxpZERhdGVzOiBEYXRlW10gPSBbXTtcclxuXHJcbnNob3dUaW1lU2xvdFBvcHVwOiBib29sZWFuID0gZmFsc2U7XHJcbnNlbGVjdGVkRGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xyXG50aW1lU2xvdHM6IHN0cmluZ1tdID0gW107XHJcbnNlbGVjdGVkVGltZVNsb3Q6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG5cclxuXHJcbmNvbnN0cnVjdG9yKCBwdWJsaWMgZmI6IFVudHlwZWRGb3JtQnVpbGRlcil7XHJcbiAgICB9XHJcblxyXG4gIC8qKiBHRVQgbWFwcGluZyBjYWxsIHRvIC9zY2hlZHVsZXIvYXZhaWxhYmxlLXNsb3RzLyAtIHRvIGdpdmUgYXZhaWxhYmxlIGRhdGVzIHRvIGFsbG93IHRvIGRpc3BsYXkgYW5kIGRpc2FibGUgcmVzdCBpbiB0aGUgcC1jYWxlbmRhciovXHJcbm5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5yZXNjaGVkdWxlRGF0ZSA9XHJcbiAgICB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgbmV3QXBwb2ludG1lbnREYXRlOiBudWxsLFxyXG4gICAgICB0aW1lU2xvdDogbnVsbFxyXG4gICAgfSlcclxuICAgIHRoaXMuc2hvd1NjaGVkdWxlclBvcHVwID0gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLmF2YWlsYWJsZURhdGVzID0gW1xyXG4gICAgICBuZXcgRGF0ZSgyMDI1LCA0LCA1KSwgIFxyXG4gICAgICBuZXcgRGF0ZSgyMDI1LCA0LCAxMCksIFxyXG4gICAgICBuZXcgRGF0ZSgyMDI1LCA0LCAyMCkgIFxyXG4gICAgXTtcclxuXHJcbiAgICAvL0Rpc2FibGUgYWxsIGRhdGVzIGFmdGVyIHJldHJpZXZpbmcgYXZhaWxhYmxlIGRhdGVzLlxyXG4gICAgdGhpcy5nZW5lcmF0ZUludmFsaWREYXRlcygpO1xyXG4gIH1cclxuXHJcbiAgLy9EdW1teSBkYXRhIGZvciBkaXNwbGF5IHB1cnBvc2VzIG9mIGluaXRpYWwgbG9vayBvZiBjb21wb25lbnQuXHJcbiAgZ2VuZXJhdGVUaW1lU2xvdHMoZGF0ZTogRGF0ZSk6IHZvaWQge1xyXG4gICAgdGhpcy50aW1lU2xvdHMgPSBbXHJcbiAgICAgICc5OjAwIOKAkyAxMDowMCBBTScsXHJcbiAgICAgICcxMDozMCDigJMgMTE6MzAgQU0nLFxyXG4gICAgICAnMTI6MDAg4oCTIDE6MDAgUE0nXHJcbiAgICBdO1xyXG4gIH1cclxuXHJcbi8qKiBXaWxsIGl0ZXJhdGUgdGhyb3VnaCBkYXRlcyBmZXRjaGVkIGZyb20gR0VUIG1hcHBpbmcsIGFuZCBkaXNhYmxlIGRhdGVzIG5vdCBhdmFpbGFibGUgaW4gcC1jYWxlbmRhciovXHJcblxyXG5nZW5lcmF0ZUludmFsaWREYXRlcygpIHtcclxuICAgIGNvbnN0IHN0YXJ0ID0gbmV3IERhdGUoMjAyNSwgNCwgMSk7IC8vIE1heSAxXHJcbiAgICBjb25zdCBlbmQgPSBuZXcgRGF0ZSgyMDI1LCA0LCAzMSk7IC8vIE1heSAzMVxyXG5cclxuICAgIGNvbnN0IGludmFsaWRzOiBEYXRlW10gPSBbXTtcclxuICAgIGZvciAobGV0IGQgPSBuZXcgRGF0ZShzdGFydCk7IGQgPD0gZW5kOyBkLnNldERhdGUoZC5nZXREYXRlKCkgKyAxKSkge1xyXG4gICAgICBpZiAoIXRoaXMuYXZhaWxhYmxlRGF0ZXMuc29tZShkYXRlID0+IGRhdGUuZ2V0RGF0ZSgpID09PSBkLmdldERhdGUoKSkpIHtcclxuICAgICAgICBpbnZhbGlkcy5wdXNoKG5ldyBEYXRlKGQpKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5pbnZhbGlkRGF0ZXMgPSBpbnZhbGlkcztcclxufVxyXG5cclxuICAvKiogV2lsbCBzZXQgdGhlIHRpbWUgc2xvdHMgYXZhaWxhbGUgZm9yIGEgZ2l2ZW4gZGF0ZSBpbiBwLWNhbGVuZGFyKi9cclxub25EYXRlU2VsZWN0KGRhdGU6IERhdGUpIHtcclxuICB0aGlzLnNlbGVjdGVkRGF0ZSA9IGRhdGU7XHJcbiAgdGhpcy5nZW5lcmF0ZVRpbWVTbG90cyhkYXRlKTsgLy8gR0VUIG1hcHBpbmcgY2FsbCB0byAvc2NoZWR1bGVyL2F2YWlsYWJsZS10aW1lL1xyXG4gIHRoaXMuc2hvd1RpbWVTbG90UG9wdXAgPSB0cnVlO1xyXG59XHJcblxyXG4gIC8qKiBXaWxsIHVwZGF0ZSB2YWx1ZSBmb3Igc2VsZWN0ZWQgdGltZSBzbG90Ki9cclxub25UaW1lU2xvdFNlbGVjdChzbG90OiBzdHJpbmcpOiB2b2lkIHtcclxuICB0aGlzLnNlbGVjdGVkVGltZVNsb3QgPSBzbG90O1xyXG4gIHRoaXMucmVzY2hlZHVsZURhdGUuZ2V0KCd0aW1lU2xvdCcpPy5zZXRWYWx1ZShzbG90KTsgXHJcbn1cclxuXHJcbmNsb3NlKCl7XHJcbiAgdGhpcy5zaG93U2NoZWR1bGVyUG9wdXAgPSBmYWxzZTtcclxuICB9XHJcblxyXG5jbG9zZUNvbmZpcm1hdGlvblBvcHVwKCl7XHJcbiAgdGhpcy5zaG93U2NoZWR1bGVyQ29uZmlybWF0aW9uUG9wdXAgPSBmYWxzZTtcclxuICB9XHJcblxyXG5jb25maXJtKCl7XHJcbiAgXHJcbiAgY29uc3Qgc2VsZWN0ZWREYXRlID0gdGhpcy5yZXNjaGVkdWxlRGF0ZS5nZXQoJ25ld0FwcG9pbnRtZW50RGF0ZScpPy52YWx1ZTtcclxuICBjb25zdCBzZWxlY3RlZFNsb3QgPSB0aGlzLnJlc2NoZWR1bGVEYXRlLmdldCgndGltZVNsb3QnKT8udmFsdWU7O1xyXG5cclxuICBpZiAoc2VsZWN0ZWREYXRlICYmIHNlbGVjdGVkU2xvdCkge1xyXG4gICAgdGhpcy5jb25maXJtZWREYXRlID0gc2VsZWN0ZWREYXRlO1xyXG4gICAgdGhpcy5zZWxlY3RlZFRpbWVTbG90ID0gc2VsZWN0ZWRTbG90XHJcbiAgICBcclxuICAgIC8vVE9ETyBDYWxsIGVuZHBvaW50IGFuZCBpZiBzdWNjZXNzZnVsIHNldCBwb3B1cCBmYWxzZSBhbmQgY29uZmlybWF0aW9uIHBvcHVwIHRvIHRydWVcclxuXHJcbiAgICAgLyoqICBQT1NUIC9zY2hlZHVsZXIvcmVzY2hlZHVsZSAtIE1vZGVsIC0gcGFzcyBhbmQgc2F2ZSBpbiB0YWJsZXMgKi9cclxuXHJcbiAgICB0aGlzLnNob3dTY2hlZHVsZXJQb3B1cCA9IGZhbHNlO1xyXG4gICAgdGhpcy5zaG93U2NoZWR1bGVyQ29uZmlybWF0aW9uUG9wdXAgPSB0cnVlO1xyXG4gICBcclxuXHJcbiAgfSBlbHNlIHtcclxuICAgIGFsZXJ0KCdQbGVhc2Ugc2VsZWN0IGEgZGF0ZSBmaXJzdC4nKTtcclxuICB9XHJcblxyXG59IFxyXG5cclxuZ2V0IG5ld0FwcG9pbnRtZW50RGF0ZSgpe1xyXG4gIHJldHVybiB0aGlzLnJlc2NoZWR1bGVEYXRlLmNvbnRyb2xzWyduZXdBcHBvaW50bWVudERhdGUnXTtcclxufVxyXG5cclxuZ2V0IHRpbWVTbG90KCl7XHJcbiAgcmV0dXJuIHRoaXMucmVzY2hlZHVsZURhdGUuY29udHJvbHNbJ3RpbWVTbG90J107XHJcblxyXG59XHJcblxyXG59XHJcbiIsIjxwLWRpYWxvZyBbdmlzaWJsZV09XCJzaG93U2NoZWR1bGVyUG9wdXBcIiBtb2RhbD1cInRydWVcIiBhcHBlbmRUbz1cImJvZHlcIiBwb3NpdGlvbj1cInRvcFwiIFtzaG93SGVhZGVyXT1cImZhbHNlXCJcclxuICAgIFticmVha3BvaW50c109XCJ7JzEyMDBweCc6ICc2NjBweCcsICc5OTJweCc6ICc2NjBweCcsICc3NjhweCc6ICc2NjBweCcsICc1NzZweCc6ICcxMDB2dyd9XCIgW3N0eWxlXT1cInt3aWR0aDogJzM3LjV2dyd9XCI+XHJcbiAgICA8YnI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGlhbG9nLWhlYWRlclwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUtdGV4dFwiIHN0eWxlPVwiZm9udC13ZWlnaHQ6IDUwMDtcIj4ge3tcInNlbGYuc2NoZWR1bGVyLnJlc2NoZWR1bGVcInx0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImNsb3NlLXdyYXBwZXJcIiAoY2xpY2spPVwiY2xvc2UoKVwiPiA8aW1nIHNyYz1cImh0dHBzOi8vbG9nb3dpay5jb20vY29udGVudC91cGxvYWRzL2ltYWdlcy9jbG9zZTE0MzcuanBnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgbWFyZ2luLXRvcD1cIjVweFwiIGNsYXNzPVwiY2xpY2thYmxlLWltZ1wiPjwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8aDQgY2xhc3M9XCJhcHAtaGVhZGluZ1wiPjEuIHt7XCJzZWxmLnNjaGVkdWxlci5zZWxlY3RkYXRlXCJ8dHJhbnNsYXRlfX08L2g0PlxyXG4gICAgPGRpdiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJyZXNjaGVkdWxlRGF0ZVwiPlxyXG4gICAgPHAtY2FsZW5kYXIgIGNsYXNzPVwiY3VzdG9tLWNhbGVuZGFyXCIgW2lubGluZV09XCJ0cnVlXCIgaW5wdXRJZD1cIm5ld0FwcG9pbnRtZW50RGF0ZVwiXHJcbiAgICBmb3JtQ29udHJvbE5hbWU9XCJuZXdBcHBvaW50bWVudERhdGVcIiBbeWVhck5hdmlnYXRvcl09XCJ0cnVlXCJcclxuICAgIHllYXJSYW5nZT1cIjE5MDE6MjA1MFwiIGRhdGVGb3JtYXQ9XCJNTSBkZCwgeXlcIiBcclxuICAgICBkYXRhVHlwZT1cInN0cmluZ1wiICBbZGlzYWJsZWREYXRlc109XCJpbnZhbGlkRGF0ZXNcIlxyXG4gICAgIChvblNlbGVjdCk9XCJvbkRhdGVTZWxlY3QoJGV2ZW50KVwiXHJcbiAgICAgID5cclxuICA8L3AtY2FsZW5kYXI+XHJcbiAgPHNlY3Rpb24gKm5nSWY9c2hvd1NjaGVkdWxlclBvcHVwPjxicj48L3NlY3Rpb24+XHJcblx0XHJcbjwvZm9ybT5cclxuXHJcbjxkaXYgKm5nSWY9XCJ0aW1lU2xvdHMubGVuZ3RoXCI+XHJcbiAgPGg0IGNsYXNzPVwiYXBwLWhlYWRpbmdcIj4yLiB7e1wic2VsZi5zY2hlZHVsZXIudGltZVwifHRyYW5zbGF0ZX19PC9oND5cclxuICA8aW9uLWdyaWQ+XHJcbiAgICA8aW9uLXJvdyBjbGFzcz1cInRpbWUtc2xvdC1yb3dcIiBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQ+XHJcbiAgICAgIDxpb24tY29sIHNpemU9XCI2XCIgc2l6ZS1zbT1cIjRcIiBzaXplLW1kPVwiNFwiIHNpemUtbGc9XCI0XCJcclxuICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHNsb3Qgb2YgdGltZVNsb3RzXCJcclxuICAgICAgICAgICAgICAgY2xhc3M9XCJ0aW1lLXNsb3QtY29sXCI+XHJcbiAgICAgICAgPGlvbi1idXR0b24gZXhwYW5kPVwiYmxvY2tcIiBbZmlsbF09XCJzZWxlY3RlZFRpbWVTbG90ID09PSBzbG90ID8gJ3NvbGlkJyA6ICdvdXRsaW5lJ1wiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uVGltZVNsb3RTZWxlY3Qoc2xvdClcIj5cclxuICAgICAgICAgIHt7IHNsb3QgfX1cclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgIDwvaW9uLWNvbD5cclxuICAgIDwvaW9uLXJvdz5cclxuICAgIDxpb24tcm93IGNsYXNzPVwiaW9uLXBhZGRpbmcgaW9uLWp1c3RpZnktY29udGVudC1lbmRcIj5cclxuICAgICAgPGlvbi1jb2wgc2l6ZT1cImF1dG9cIj5cclxuICAgICAgICAgICAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwiYmxvY2tcIiBzdHlsZT1cIndpZHRoOiBmaXQtY29udGVudDtcIiBmaWxsPVwib3V0bGluZVwiICB0eXBlPVwicmVzZXRcIiAoY2xpY2spPVwiY2xvc2UoKVwiPkNhbmNlbDwvaW9uLWJ1dHRvbj5cclxuICAgICAgPC9pb24tY29sPlxyXG4gICAgICA8aW9uLWNvbCBzaXplPVwiYXV0b1wiPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1idXR0b24gc2hhcGU9XCJibG9ja1wiIHN0eWxlPVwid2lkdGg6IGZpdC1jb250ZW50O1wiIGZpbGw9XCJzb2xpZFwiIHR5cGU9XCJzdWJtaXRcIiAoY2xpY2spPVwiY29uZmlybSgpXCI+Q29uZmlybTwvaW9uLWJ1dHRvbj5cclxuICAgICAgPC9pb24tY29sPlxyXG4gICAgPC9pb24tcm93PlxyXG4gIDwvaW9uLWdyaWQ+XHJcbjwvZGl2PlxyXG5cclxuPC9wLWRpYWxvZz5cclxuXHJcbjxwLWRpYWxvZyBoZWFkZXI9XCJTZWxlY3RlZCBEYXRlXCIgWyh2aXNpYmxlKV09XCJzaG93U2NoZWR1bGVyQ29uZmlybWF0aW9uUG9wdXBcIiBtb2RhbD1cInRydWVcIiBhcHBlbmRUbz1cImJvZHlcIiBwb3NpdGlvbj1cInRvcFwiIFtzaG93SGVhZGVyXT1cImZhbHNlXCJcclxuW2JyZWFrcG9pbnRzXT1cInsnMTIwMHB4JzogJzY2MHB4JywgJzk5MnB4JzogJzY2MHB4JywgJzc2OHB4JzogJzY2MHB4JywgJzU3NnB4JzogJzEwMHZ3J31cIiBbc3R5bGVdPVwie3dpZHRoOiAnMzcuNXZ3J31cIj5cclxuPGJyPlxyXG48ZGl2IGNsYXNzPVwiZGlhbG9nLWhlYWRlclwiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS10ZXh0XCIgc3R5bGU9XCJmb250LXdlaWdodDogNTAwO1wiPnt7XCJzZWxmLnNjaGVkdWxlci5jb25maXJtYXRpb24xXCJ8dHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICA8c3BhbiBjbGFzcz1cImNsb3NlLXdyYXBwZXJcIiAoY2xpY2spPVwiY2xvc2VDb25maXJtYXRpb25Qb3B1cCgpXCI+IDxpbWcgc3JjPVwiaHR0cHM6Ly9sb2dvd2lrLmNvbS9jb250ZW50L3VwbG9hZHMvaW1hZ2VzL2Nsb3NlMTQzNy5qcGdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiBtYXJnaW4tdG9wPVwiNXB4XCIgY2xhc3M9XCJjbGlja2FibGUtaW1nXCI+PC9zcGFuPlxyXG4gIDwvZGl2PlxyXG4gIDxoNCBjbGFzcz1cImFwcC1oZWFkaW5nXCIgc3R5bGU9XCJmb250LXdlaWdodDogNjAwOyBjb2xvcjojOTQ5NDk0O1wiPnt7XCJzZWxmLnNjaGVkdWxlci5jb25maXJtYXRpb24yXCJ8dHJhbnNsYXRlfX0gPC9oND5cclxuXHJcbjxkaXYgY2xhc3M9XCJtZXNzYWdlLWJveFwiPlxyXG4gICAgPGg1IHN0eWxlPVwiZm9udC13ZWlnaHQ6IDUwMDsgZm9udC1zaXplOiAxOHB4O1wiPnt7XCJzZWxmLnNjaGVkdWxlci5kZXRhaWxzXCJ8dHJhbnNsYXRlfX08L2g1PlxyXG4gICAgPHA+RGF0ZTogPHNwYW4gc3R5bGU9XCJtYXJnaW4tbGVmdDogNTBweDtcIj4ge3sgY29uZmlybWVkRGF0ZSB8IGRhdGU6ICdsb25nRGF0ZScgfX08L3NwYW4+PC9wPlxyXG4gICAgPHA+VGltZTogPHNwYW4gc3R5bGU9XCJtYXJnaW4tbGVmdDogNDVweDtcIj4ge3tzZWxlY3RlZFRpbWVTbG90fX08L3NwYW4+PC9wPlxyXG5cclxuPC9kaXY+XHJcbjxpb24tcm93IGNsYXNzPVwiaW9uLXBhZGRpbmdcIj5cclxuICAgIDxpb24tY29sIHN0eWxlPVwidGV4dC1hbGlnbjogLXdlYmtpdC1yaWdodDtcIj5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cImJsb2NrXCIgc3R5bGU9XCJ3aWR0aDogZml0LWNvbnRlbnQ7XCIgZmlsbD1cIm91dGxpbmVcIiAgdHlwZT1cInJlc2V0XCIgKGNsaWNrKT1cImNsb3NlQ29uZmlybWF0aW9uUG9wdXAoKVwiPkhvbWU8L2lvbi1idXR0b24+XHJcbiAgICA8L2lvbi1jb2w+XHJcbjwvaW9uLXJvdz5cclxuICA8L3AtZGlhbG9nPiJdfQ==