@tuki-io/tuki-widgets 0.0.77 → 0.0.78

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 (319) hide show
  1. package/package.json +1 -1
  2. package/di2mt/api/api.endpoints.d.ts +0 -26
  3. package/di2mt/index.d.ts +0 -5
  4. package/di2mt/public-api.d.ts +0 -13
  5. package/di2mt/shared/components/card/card.component.d.ts +0 -6
  6. package/di2mt/shared/components/chart-card/chart-card.component.d.ts +0 -22
  7. package/di2mt/shared/components/stat-card/stat-card.component.d.ts +0 -14
  8. package/di2mt/shared/components/status-list-card/status-list-card.component.d.ts +0 -7
  9. package/di2mt/shared/components/summary-card/summary-card.component.d.ts +0 -9
  10. package/di2mt/shared/components/table-filters/table-filters.component.d.ts +0 -14
  11. package/di2mt/shared/constants/app.constants.d.ts +0 -74
  12. package/di2mt/shared/material.module.d.ts +0 -15
  13. package/di2mt/shared/services/api.service.d.ts +0 -20
  14. package/di2mt/shared/shared.module.d.ts +0 -16
  15. package/di2mt/shared/types/constants.d.ts +0 -8
  16. package/di2mt/shared/types/data-table.d.ts +0 -5
  17. package/di2mt/shared/types/table/filter.d.ts +0 -16
  18. package/di2mt/widgets/site-upgrade/progress-bar/progress-bar.component.d.ts +0 -13
  19. package/di2mt/widgets/site-upgrade/site-upgrade-data-table/site-upgrade-data-table.component.d.ts +0 -62
  20. package/di2mt/widgets/site-upgrade/site-upgrade.module.d.ts +0 -15
  21. package/di2mt/widgets/site-upgrade/site-upgrade.service.d.ts +0 -34
  22. package/di2mt/widgets/site-upgrade/types/user-upgrade.d.ts +0 -21
  23. package/di2mt/widgets/upgrade-overview/cards/already-upgraded-sites/already-upgraded-sites-card.component.d.ts +0 -19
  24. package/di2mt/widgets/upgrade-overview/cards/already-upgraded-users/already-upgraded-users-card.component.d.ts +0 -19
  25. package/di2mt/widgets/upgrade-overview/cards/preconditions-status-list/preconditions-status-list-card.component.d.ts +0 -18
  26. package/di2mt/widgets/upgrade-overview/cards/ready-to-upgrade-sites/ready-to-upgrade-sites-card.component.d.ts +0 -19
  27. package/di2mt/widgets/upgrade-overview/cards/ready-to-upgrade-users/ready-to-upgrade-users-card.component.d.ts +0 -19
  28. package/di2mt/widgets/upgrade-overview/cards/site-infrastructure-status-list/site-infrastructure-status-list-card.component.d.ts +0 -15
  29. package/di2mt/widgets/upgrade-overview/cards/upgrade-state-comparison-chart/upgrade-state-comparison-chart-card.component.d.ts +0 -18
  30. package/di2mt/widgets/upgrade-overview/types/upgrade-overview.d.ts +0 -56
  31. package/di2mt/widgets/upgrade-overview/upgrade-overview.module.d.ts +0 -15
  32. package/di2mt/widgets/upgrade-overview/upgrade-overview.service.d.ts +0 -17
  33. package/di2mt/widgets/user-upgrade/types/user-upgrade.d.ts +0 -17
  34. package/di2mt/widgets/user-upgrade/user-upgrade-data-table/user-upgrade-data-table.component.d.ts +0 -71
  35. package/di2mt/widgets/user-upgrade/user-upgrade.module.d.ts +0 -16
  36. package/di2mt/widgets/user-upgrade/user-upgrade.service.d.ts +0 -25
  37. package/esm2020/di2mt/api/api.endpoints.mjs +0 -27
  38. package/esm2020/di2mt/public-api.mjs +0 -24
  39. package/esm2020/di2mt/shared/components/card/card.component.mjs +0 -13
  40. package/esm2020/di2mt/shared/components/chart-card/chart-card.component.mjs +0 -62
  41. package/esm2020/di2mt/shared/components/stat-card/stat-card.component.mjs +0 -47
  42. package/esm2020/di2mt/shared/components/status-list-card/status-list-card.component.mjs +0 -17
  43. package/esm2020/di2mt/shared/components/summary-card/summary-card.component.mjs +0 -36
  44. package/esm2020/di2mt/shared/components/table-filters/table-filters.component.mjs +0 -37
  45. package/esm2020/di2mt/shared/constants/app.constants.mjs +0 -95
  46. package/esm2020/di2mt/shared/material.module.mjs +0 -76
  47. package/esm2020/di2mt/shared/services/api.service.mjs +0 -86
  48. package/esm2020/di2mt/shared/shared.module.mjs +0 -61
  49. package/esm2020/di2mt/shared/types/constants.mjs +0 -12
  50. package/esm2020/di2mt/shared/types/data-table.mjs +0 -2
  51. package/esm2020/di2mt/shared/types/table/filter.mjs +0 -2
  52. package/esm2020/di2mt/tuki-io-tuki-widgets-di2mt.mjs +0 -5
  53. package/esm2020/di2mt/widgets/site-upgrade/progress-bar/progress-bar.component.mjs +0 -44
  54. package/esm2020/di2mt/widgets/site-upgrade/site-upgrade-data-table/site-upgrade-data-table.component.mjs +0 -317
  55. package/esm2020/di2mt/widgets/site-upgrade/site-upgrade.module.mjs +0 -53
  56. package/esm2020/di2mt/widgets/site-upgrade/site-upgrade.service.mjs +0 -78
  57. package/esm2020/di2mt/widgets/site-upgrade/types/user-upgrade.mjs +0 -3
  58. package/esm2020/di2mt/widgets/upgrade-overview/cards/already-upgraded-sites/already-upgraded-sites-card.component.mjs +0 -64
  59. package/esm2020/di2mt/widgets/upgrade-overview/cards/already-upgraded-users/already-upgraded-users-card.component.mjs +0 -64
  60. package/esm2020/di2mt/widgets/upgrade-overview/cards/preconditions-status-list/preconditions-status-list-card.component.mjs +0 -68
  61. package/esm2020/di2mt/widgets/upgrade-overview/cards/ready-to-upgrade-sites/ready-to-upgrade-sites-card.component.mjs +0 -45
  62. package/esm2020/di2mt/widgets/upgrade-overview/cards/ready-to-upgrade-users/ready-to-upgrade-users-card.component.mjs +0 -45
  63. package/esm2020/di2mt/widgets/upgrade-overview/cards/site-infrastructure-status-list/site-infrastructure-status-list-card.component.mjs +0 -64
  64. package/esm2020/di2mt/widgets/upgrade-overview/cards/upgrade-state-comparison-chart/upgrade-state-comparison-chart-card.component.mjs +0 -74
  65. package/esm2020/di2mt/widgets/upgrade-overview/types/upgrade-overview.mjs +0 -2
  66. package/esm2020/di2mt/widgets/upgrade-overview/upgrade-overview.module.mjs +0 -59
  67. package/esm2020/di2mt/widgets/upgrade-overview/upgrade-overview.service.mjs +0 -82
  68. package/esm2020/di2mt/widgets/user-upgrade/types/user-upgrade.mjs +0 -3
  69. package/esm2020/di2mt/widgets/user-upgrade/user-upgrade-data-table/user-upgrade-data-table.component.mjs +0 -272
  70. package/esm2020/di2mt/widgets/user-upgrade/user-upgrade.module.mjs +0 -59
  71. package/esm2020/di2mt/widgets/user-upgrade/user-upgrade.service.mjs +0 -50
  72. package/esm2020/user-device-manage/public-api.mjs +0 -9
  73. package/esm2020/user-device-manage/src/app.constants.mjs +0 -95
  74. package/esm2020/user-device-manage/src/classes/device.mjs +0 -85
  75. package/esm2020/user-device-manage/src/classes/line-association-interface.mjs +0 -2
  76. package/esm2020/user-device-manage/src/classes/line-association.mjs +0 -121
  77. package/esm2020/user-device-manage/src/classes/line-call-info-display.mjs +0 -10
  78. package/esm2020/user-device-manage/src/classes/line-directory.mjs +0 -27
  79. package/esm2020/user-device-manage/src/classes/line.mjs +0 -18
  80. package/esm2020/user-device-manage/src/classes/notification.mjs +0 -32
  81. package/esm2020/user-device-manage/src/classes/recording-options.mjs +0 -7
  82. package/esm2020/user-device-manage/src/classes/simplified-user.mjs +0 -111
  83. package/esm2020/user-device-manage/src/classes/site-defaults.mjs +0 -21
  84. package/esm2020/user-device-manage/src/classes/translation-pattern.mjs +0 -32
  85. package/esm2020/user-device-manage/src/classes/types.mjs +0 -24
  86. package/esm2020/user-device-manage/src/common-functions.mjs +0 -19
  87. package/esm2020/user-device-manage/src/confirm-dialog/info-dialog.component.mjs +0 -34
  88. package/esm2020/user-device-manage/src/device-associated-line/associated-line-row/associated-line-row.component.mjs +0 -31
  89. package/esm2020/user-device-manage/src/device-associated-line/device-associated-line-details-box/device-associated-line-details-box.component.mjs +0 -16
  90. package/esm2020/user-device-manage/src/device-associated-line/device-associated-line-extension/device-associated-line-extension.component.mjs +0 -64
  91. package/esm2020/user-device-manage/src/device-associated-line/device-associated-line.component.mjs +0 -179
  92. package/esm2020/user-device-manage/src/device-list/device-list.component.mjs +0 -24
  93. package/esm2020/user-device-manage/src/device-manage-widget.component.mjs +0 -335
  94. package/esm2020/user-device-manage/src/environments/environment.mjs +0 -11
  95. package/esm2020/user-device-manage/src/interseptors/auth.interceptor.mjs +0 -36
  96. package/esm2020/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +0 -74
  97. package/esm2020/user-device-manage/src/material.module.mjs +0 -192
  98. package/esm2020/user-device-manage/src/notifications/notification.component.mjs +0 -35
  99. package/esm2020/user-device-manage/src/services/api.service.mjs +0 -79
  100. package/esm2020/user-device-manage/src/services/device.service.mjs +0 -83
  101. package/esm2020/user-device-manage/src/services/dns.service.mjs +0 -104
  102. package/esm2020/user-device-manage/src/services/line.service.mjs +0 -76
  103. package/esm2020/user-device-manage/src/services/notification.service.mjs +0 -62
  104. package/esm2020/user-device-manage/src/services/removeKynFromIBM.service.mjs +0 -25
  105. package/esm2020/user-device-manage/src/services/site-settings.service.mjs +0 -70
  106. package/esm2020/user-device-manage/src/services/sorting-utils.service.mjs +0 -197
  107. package/esm2020/user-device-manage/src/services/user.service.mjs +0 -243
  108. package/esm2020/user-device-manage/src/services/utils.service.mjs +0 -87
  109. package/esm2020/user-device-manage/src/services/validation.service.mjs +0 -760
  110. package/esm2020/user-device-manage/src/user-device-manage.module.mjs +0 -107
  111. package/esm2020/user-device-manage/src/utils/app-loader/app-loader.mjs +0 -14
  112. package/esm2020/user-device-manage/tuki-io-tuki-widgets-user-device-manage.mjs +0 -5
  113. package/esm2020/user-manage/public-api.mjs +0 -7
  114. package/esm2020/user-manage/src/app.constants.mjs +0 -50
  115. package/esm2020/user-manage/src/classes/device.mjs +0 -37
  116. package/esm2020/user-manage/src/classes/line-association-interface.mjs +0 -2
  117. package/esm2020/user-manage/src/classes/line-association.mjs +0 -110
  118. package/esm2020/user-manage/src/classes/line-call-info-display.mjs +0 -10
  119. package/esm2020/user-manage/src/classes/line-directory.mjs +0 -27
  120. package/esm2020/user-manage/src/classes/line.mjs +0 -18
  121. package/esm2020/user-manage/src/classes/notification.mjs +0 -32
  122. package/esm2020/user-manage/src/classes/pagination.mjs +0 -8
  123. package/esm2020/user-manage/src/classes/recording-options.mjs +0 -7
  124. package/esm2020/user-manage/src/classes/simplified-user.mjs +0 -109
  125. package/esm2020/user-manage/src/classes/table-data.mjs +0 -2
  126. package/esm2020/user-manage/src/classes/translation-pattern.mjs +0 -32
  127. package/esm2020/user-manage/src/classes/user-list.mjs +0 -10
  128. package/esm2020/user-manage/src/common-functions.mjs +0 -19
  129. package/esm2020/user-manage/src/device-list/device-list.component.mjs +0 -24
  130. package/esm2020/user-manage/src/environments/environment.mjs +0 -11
  131. package/esm2020/user-manage/src/interseptors/auth.interceptor.mjs +0 -36
  132. package/esm2020/user-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +0 -74
  133. package/esm2020/user-manage/src/material.module.mjs +0 -188
  134. package/esm2020/user-manage/src/notifications/notification.component.mjs +0 -35
  135. package/esm2020/user-manage/src/removeKynFromIBM.service.mjs +0 -25
  136. package/esm2020/user-manage/src/services/api.service.mjs +0 -79
  137. package/esm2020/user-manage/src/services/dns.service.mjs +0 -110
  138. package/esm2020/user-manage/src/services/line.service.mjs +0 -34
  139. package/esm2020/user-manage/src/services/notification.service.mjs +0 -62
  140. package/esm2020/user-manage/src/services/removeKynFromIBM.service.mjs +0 -25
  141. package/esm2020/user-manage/src/services/site-settings.service.mjs +0 -36
  142. package/esm2020/user-manage/src/services/sorting-utils.service.mjs +0 -197
  143. package/esm2020/user-manage/src/services/user.service.mjs +0 -207
  144. package/esm2020/user-manage/src/services/users-search.service.mjs +0 -50
  145. package/esm2020/user-manage/src/services/utils.service.mjs +0 -73
  146. package/esm2020/user-manage/src/user-calling/user-calling-extension/user-calling-extension.component.mjs +0 -65
  147. package/esm2020/user-manage/src/user-calling/user-calling.component.mjs +0 -78
  148. package/esm2020/user-manage/src/user-info/user-info.component.mjs +0 -20
  149. package/esm2020/user-manage/src/user-manage-widget.component.mjs +0 -208
  150. package/esm2020/user-manage/src/user-manage.module.mjs +0 -99
  151. package/esm2020/user-manage/src/utils/app-loader/app-loader.mjs +0 -14
  152. package/esm2020/user-manage/src/utils/pagination/pagination.component.mjs +0 -43
  153. package/esm2020/user-manage/tuki-io-tuki-widgets-user-manage.mjs +0 -5
  154. package/esm2020/users-list/public-api.mjs +0 -9
  155. package/esm2020/users-list/src/app.constants.mjs +0 -54
  156. package/esm2020/users-list/src/classes/app-location.mjs +0 -32
  157. package/esm2020/users-list/src/classes/device.mjs +0 -7
  158. package/esm2020/users-list/src/classes/line.mjs +0 -18
  159. package/esm2020/users-list/src/classes/move-user.mjs +0 -178
  160. package/esm2020/users-list/src/classes/notification.mjs +0 -31
  161. package/esm2020/users-list/src/classes/pagination.mjs +0 -8
  162. package/esm2020/users-list/src/classes/simlified-user.mjs +0 -50
  163. package/esm2020/users-list/src/classes/table-data.mjs +0 -2
  164. package/esm2020/users-list/src/classes/user-list.mjs +0 -14
  165. package/esm2020/users-list/src/material.module.mjs +0 -209
  166. package/esm2020/users-list/src/move-user-wizard/move-user-stepper/device-move-user/device-move-user-wizard.component.mjs +0 -38
  167. package/esm2020/users-list/src/move-user-wizard/move-user-stepper/device-move-user-tab/devices-move-user-wizard-tab.component.mjs +0 -23
  168. package/esm2020/users-list/src/move-user-wizard/move-user-stepper/move-user-stepper.component.mjs +0 -189
  169. package/esm2020/users-list/src/move-user-wizard/move-user-wizard.component.mjs +0 -38
  170. package/esm2020/users-list/src/services/api-webex.service.mjs +0 -18
  171. package/esm2020/users-list/src/services/api.service.mjs +0 -78
  172. package/esm2020/users-list/src/services/dns.service.mjs +0 -120
  173. package/esm2020/users-list/src/services/events-communication.service.mjs +0 -14
  174. package/esm2020/users-list/src/services/move-user.service.mjs +0 -53
  175. package/esm2020/users-list/src/services/notification.service.mjs +0 -62
  176. package/esm2020/users-list/src/services/removeKynFromIBM.service.mjs +0 -25
  177. package/esm2020/users-list/src/services/site-settings.service.mjs +0 -27
  178. package/esm2020/users-list/src/services/user.service.mjs +0 -142
  179. package/esm2020/users-list/src/services/users-search.service.mjs +0 -124
  180. package/esm2020/users-list/src/user-list-confirm-dialog/user-list-confirm-dialog.component.mjs +0 -34
  181. package/esm2020/users-list/src/users-list.component.mjs +0 -287
  182. package/esm2020/users-list/src/users-list.module.mjs +0 -92
  183. package/esm2020/users-list/src/utils/app-loader/app-loader.mjs +0 -14
  184. package/esm2020/users-list/src/utils/common-functions.mjs +0 -32
  185. package/esm2020/users-list/src/utils/pagination/pagination.component.mjs +0 -43
  186. package/esm2020/users-list/src/utils/utils.service.mjs +0 -73
  187. package/esm2020/users-list/tuki-io-tuki-widgets-users-list.mjs +0 -5
  188. package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs +0 -1874
  189. package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs.map +0 -1
  190. package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs +0 -3402
  191. package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs.map +0 -1
  192. package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs +0 -2124
  193. package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs.map +0 -1
  194. package/fesm2015/tuki-io-tuki-widgets-users-list.mjs +0 -1996
  195. package/fesm2015/tuki-io-tuki-widgets-users-list.mjs.map +0 -1
  196. package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs +0 -1865
  197. package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs.map +0 -1
  198. package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs +0 -3364
  199. package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs.map +0 -1
  200. package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs +0 -2107
  201. package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs.map +0 -1
  202. package/fesm2020/tuki-io-tuki-widgets-users-list.mjs +0 -1975
  203. package/fesm2020/tuki-io-tuki-widgets-users-list.mjs.map +0 -1
  204. package/user-device-manage/index.d.ts +0 -5
  205. package/user-device-manage/public-api.d.ts +0 -8
  206. package/user-device-manage/src/app.constants.d.ts +0 -74
  207. package/user-device-manage/src/classes/device.d.ts +0 -233
  208. package/user-device-manage/src/classes/line-association-interface.d.ts +0 -45
  209. package/user-device-manage/src/classes/line-association.d.ts +0 -62
  210. package/user-device-manage/src/classes/line-call-info-display.d.ts +0 -11
  211. package/user-device-manage/src/classes/line-directory.d.ts +0 -15
  212. package/user-device-manage/src/classes/line.d.ts +0 -140
  213. package/user-device-manage/src/classes/notification.d.ts +0 -18
  214. package/user-device-manage/src/classes/recording-options.d.ts +0 -5
  215. package/user-device-manage/src/classes/simplified-user.d.ts +0 -52
  216. package/user-device-manage/src/classes/site-defaults.d.ts +0 -146
  217. package/user-device-manage/src/classes/translation-pattern.d.ts +0 -19
  218. package/user-device-manage/src/classes/types.d.ts +0 -19
  219. package/user-device-manage/src/common-functions.d.ts +0 -1
  220. package/user-device-manage/src/confirm-dialog/info-dialog.component.d.ts +0 -20
  221. package/user-device-manage/src/device-associated-line/associated-line-row/associated-line-row.component.d.ts +0 -15
  222. package/user-device-manage/src/device-associated-line/device-associated-line-details-box/device-associated-line-details-box.component.d.ts +0 -7
  223. package/user-device-manage/src/device-associated-line/device-associated-line-extension/device-associated-line-extension.component.d.ts +0 -24
  224. package/user-device-manage/src/device-associated-line/device-associated-line.component.d.ts +0 -89
  225. package/user-device-manage/src/device-list/device-list.component.d.ts +0 -11
  226. package/user-device-manage/src/device-manage-widget.component.d.ts +0 -71
  227. package/user-device-manage/src/environments/environment.d.ts +0 -9
  228. package/user-device-manage/src/interseptors/auth.interceptor.d.ts +0 -9
  229. package/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.d.ts +0 -35
  230. package/user-device-manage/src/material.module.d.ts +0 -29
  231. package/user-device-manage/src/notifications/notification.component.d.ts +0 -19
  232. package/user-device-manage/src/services/api.service.d.ts +0 -20
  233. package/user-device-manage/src/services/device.service.d.ts +0 -21
  234. package/user-device-manage/src/services/dns.service.d.ts +0 -14
  235. package/user-device-manage/src/services/line.service.d.ts +0 -33
  236. package/user-device-manage/src/services/notification.service.d.ts +0 -18
  237. package/user-device-manage/src/services/removeKynFromIBM.service.d.ts +0 -8
  238. package/user-device-manage/src/services/site-settings.service.d.ts +0 -25
  239. package/user-device-manage/src/services/sorting-utils.service.d.ts +0 -26
  240. package/user-device-manage/src/services/user.service.d.ts +0 -51
  241. package/user-device-manage/src/services/utils.service.d.ts +0 -10
  242. package/user-device-manage/src/services/validation.service.d.ts +0 -165
  243. package/user-device-manage/src/user-device-manage.module.d.ts +0 -22
  244. package/user-device-manage/src/utils/app-loader/app-loader.d.ts +0 -6
  245. package/user-manage/index.d.ts +0 -5
  246. package/user-manage/public-api.d.ts +0 -6
  247. package/user-manage/src/app.constants.d.ts +0 -29
  248. package/user-manage/src/classes/device.d.ts +0 -203
  249. package/user-manage/src/classes/line-association-interface.d.ts +0 -40
  250. package/user-manage/src/classes/line-association.d.ts +0 -55
  251. package/user-manage/src/classes/line-call-info-display.d.ts +0 -11
  252. package/user-manage/src/classes/line-directory.d.ts +0 -16
  253. package/user-manage/src/classes/line.d.ts +0 -140
  254. package/user-manage/src/classes/notification.d.ts +0 -18
  255. package/user-manage/src/classes/pagination.d.ts +0 -13
  256. package/user-manage/src/classes/recording-options.d.ts +0 -5
  257. package/user-manage/src/classes/simplified-user.d.ts +0 -50
  258. package/user-manage/src/classes/table-data.d.ts +0 -5
  259. package/user-manage/src/classes/translation-pattern.d.ts +0 -18
  260. package/user-manage/src/classes/user-list.d.ts +0 -34
  261. package/user-manage/src/common-functions.d.ts +0 -1
  262. package/user-manage/src/device-list/device-list.component.d.ts +0 -11
  263. package/user-manage/src/environments/environment.d.ts +0 -9
  264. package/user-manage/src/interseptors/auth.interceptor.d.ts +0 -9
  265. package/user-manage/src/lazy-loading-select/lazy-loading-select.component.d.ts +0 -35
  266. package/user-manage/src/material.module.d.ts +0 -28
  267. package/user-manage/src/notifications/notification.component.d.ts +0 -19
  268. package/user-manage/src/removeKynFromIBM.service.d.ts +0 -8
  269. package/user-manage/src/services/api.service.d.ts +0 -21
  270. package/user-manage/src/services/dns.service.d.ts +0 -14
  271. package/user-manage/src/services/line.service.d.ts +0 -17
  272. package/user-manage/src/services/notification.service.d.ts +0 -18
  273. package/user-manage/src/services/removeKynFromIBM.service.d.ts +0 -8
  274. package/user-manage/src/services/site-settings.service.d.ts +0 -9
  275. package/user-manage/src/services/sorting-utils.service.d.ts +0 -26
  276. package/user-manage/src/services/user.service.d.ts +0 -43
  277. package/user-manage/src/services/users-search.service.d.ts +0 -25
  278. package/user-manage/src/services/utils.service.d.ts +0 -9
  279. package/user-manage/src/user-calling/user-calling-extension/user-calling-extension.component.d.ts +0 -24
  280. package/user-manage/src/user-calling/user-calling.component.d.ts +0 -30
  281. package/user-manage/src/user-info/user-info.component.d.ts +0 -9
  282. package/user-manage/src/user-manage-widget.component.d.ts +0 -44
  283. package/user-manage/src/user-manage.module.d.ts +0 -21
  284. package/user-manage/src/utils/app-loader/app-loader.d.ts +0 -6
  285. package/user-manage/src/utils/pagination/pagination.component.d.ts +0 -18
  286. package/users-list/index.d.ts +0 -5
  287. package/users-list/public-api.d.ts +0 -8
  288. package/users-list/src/app.constants.d.ts +0 -36
  289. package/users-list/src/classes/app-location.d.ts +0 -17
  290. package/users-list/src/classes/device.d.ts +0 -224
  291. package/users-list/src/classes/line.d.ts +0 -140
  292. package/users-list/src/classes/move-user.d.ts +0 -85
  293. package/users-list/src/classes/notification.d.ts +0 -18
  294. package/users-list/src/classes/pagination.d.ts +0 -13
  295. package/users-list/src/classes/simlified-user.d.ts +0 -25
  296. package/users-list/src/classes/table-data.d.ts +0 -5
  297. package/users-list/src/classes/user-list.d.ts +0 -36
  298. package/users-list/src/material.module.d.ts +0 -31
  299. package/users-list/src/move-user-wizard/move-user-stepper/device-move-user/device-move-user-wizard.component.d.ts +0 -21
  300. package/users-list/src/move-user-wizard/move-user-stepper/device-move-user-tab/devices-move-user-wizard-tab.component.d.ts +0 -12
  301. package/users-list/src/move-user-wizard/move-user-stepper/move-user-stepper.component.d.ts +0 -55
  302. package/users-list/src/move-user-wizard/move-user-wizard.component.d.ts +0 -17
  303. package/users-list/src/services/api-webex.service.d.ts +0 -8
  304. package/users-list/src/services/api.service.d.ts +0 -21
  305. package/users-list/src/services/dns.service.d.ts +0 -18
  306. package/users-list/src/services/events-communication.service.d.ts +0 -8
  307. package/users-list/src/services/move-user.service.d.ts +0 -17
  308. package/users-list/src/services/notification.service.d.ts +0 -18
  309. package/users-list/src/services/removeKynFromIBM.service.d.ts +0 -8
  310. package/users-list/src/services/site-settings.service.d.ts +0 -11
  311. package/users-list/src/services/user.service.d.ts +0 -35
  312. package/users-list/src/services/users-search.service.d.ts +0 -34
  313. package/users-list/src/user-list-confirm-dialog/user-list-confirm-dialog.component.d.ts +0 -20
  314. package/users-list/src/users-list.component.d.ts +0 -60
  315. package/users-list/src/users-list.module.d.ts +0 -18
  316. package/users-list/src/utils/app-loader/app-loader.d.ts +0 -6
  317. package/users-list/src/utils/common-functions.d.ts +0 -2
  318. package/users-list/src/utils/pagination/pagination.component.d.ts +0 -18
  319. package/users-list/src/utils/utils.service.d.ts +0 -9
@@ -1,120 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { API } from '../app.constants';
3
- import { map } from 'rxjs/operators';
4
- import * as Big from 'big.js';
5
- import { Observable } from 'rxjs';
6
- import { DnRangeType } from '../classes/line';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "./api.service";
9
- import * as i2 from "../services/api-webex.service";
10
- export class DnsService {
11
- constructor(apiService, apiWebexService) {
12
- this.apiService = apiService;
13
- this.apiWebexService = apiWebexService;
14
- this.availableNumbers = {};
15
- this.phoneNumbers = [];
16
- }
17
- getNumberRange(siteId, routePartition, withdids, from, pageSize) {
18
- // @ts-ignore
19
- if (this.availableNumbers[routePartition]?.length) {
20
- return new Observable(observer => {
21
- // @ts-ignore
22
- observer.next(this.availableNumbers[routePartition]);
23
- });
24
- }
25
- this.availableDidPatternsMappedToDn = {};
26
- pageSize = pageSize ? pageSize : 20;
27
- const params = { dntype: DnRangeType.extension, routepartition: routePartition, size: pageSize, page: 0 };
28
- if (withdids) {
29
- // @ts-ignore
30
- params['withdids'] = 'true';
31
- }
32
- if (from) {
33
- // @ts-ignore
34
- params['from'] = from;
35
- }
36
- // @ts-ignore
37
- this.availableNumbers[routePartition] = this.availableNumbers[routePartition] || [];
38
- return this.apiService.fetch(API.AVAILABLE_DN_IN_RANGES.replace(':siteId', siteId), params)
39
- .pipe(map((res) => {
40
- res.availableNumberList.forEach((availableNumber) => {
41
- this.setAvailableDidMappedToDn(availableNumber);
42
- // @ts-ignore
43
- this.availableNumbers[routePartition] = [...this.availableNumbers[routePartition], ...this.getUnwrapNumberRange(availableNumber)];
44
- });
45
- }));
46
- // .pipe(this.handleError(true, false));
47
- }
48
- setAvailableDidMappedToDn(availableNumber) {
49
- if (availableNumber.unUsedNumbersWithDids && availableNumber.unUsedNumbersWithDids.length) {
50
- availableNumber.unUsedNumbersWithDids.forEach((numberWithDids) => {
51
- const dn = numberWithDids['unUsedNumber'];
52
- this.availableDidPatternsMappedToDn[dn] = [{}];
53
- if (numberWithDids['translationPatternList'] && numberWithDids['translationPatternList'].length > 0) {
54
- this.availableDidPatternsMappedToDn[dn] = numberWithDids['translationPatternList'];
55
- this.availableDidPatternsMappedToDn[dn][0]['mappedDids'] = [{}];
56
- if (numberWithDids['mappedDids'] && numberWithDids['mappedDids'].length > 0) {
57
- this.availableDidPatternsMappedToDn[dn][0]['mappedDids'] = numberWithDids['mappedDids'];
58
- }
59
- }
60
- this.availableDidPatternsMappedToDn[dn][0]['vm'] = numberWithDids['vm'];
61
- });
62
- }
63
- }
64
- getUnwrapNumberRange(availableNumber) {
65
- let unwrapNumberRange = this.unwrapNumberRange(availableNumber.phoneNumberRange.from, availableNumber.phoneNumberRange.to)
66
- .map((unwrappedNumber) => {
67
- const dn = availableNumber.phoneNumberRange.prefix + unwrappedNumber;
68
- let str = dn;
69
- if (this.availableDidPatternsMappedToDn[dn] && this.availableDidPatternsMappedToDn[dn].length > 0) {
70
- if (this.availableDidPatternsMappedToDn[dn][0]['mappedDids'] && this.availableDidPatternsMappedToDn[dn][0]['mappedDids'].length > 0) {
71
- str += ' DID: ' + (this.availableDidPatternsMappedToDn[dn][0]['mappedDids'].length > 1 ? 'multiple' :
72
- this.availableDidPatternsMappedToDn[dn][0]['mappedDids'][0]);
73
- }
74
- if (this.availableDidPatternsMappedToDn[dn][0]['vm']) {
75
- str += ' In Use - VM';
76
- }
77
- }
78
- return str;
79
- });
80
- unwrapNumberRange = unwrapNumberRange.filter((unwrappedNumber) => !availableNumber.usedNumbers.includes(unwrappedNumber));
81
- return unwrapNumberRange;
82
- }
83
- unwrapNumberRange(start, end) {
84
- const regExp = /(^0+)/;
85
- let leadingZeros = '';
86
- const matches = start.match(regExp);
87
- if (matches) {
88
- leadingZeros = matches[1];
89
- }
90
- const startNumeric = new Big(start);
91
- const endNumeric = new Big(end);
92
- // @ts-ignore
93
- return Array.from({ length: (endNumeric.minus(startNumeric).plus(new Big(1)).toFixed(0)) }, (v, k) => {
94
- const number = String(startNumeric.plus(new Big(k)).toFixed(0));
95
- if ((leadingZeros + number).length > start.length) {
96
- leadingZeros = leadingZeros.substr(1);
97
- }
98
- return leadingZeros + number;
99
- });
100
- }
101
- fetchPhoneNumbers(customerId, locationId) {
102
- const params = {
103
- available: true,
104
- numberType: 'NUMBER'
105
- };
106
- return this.apiWebexService.fetch(API.PHONE_NUMBERS.replace(':customerId', String(customerId)).replace(':locationId', locationId), params)
107
- .pipe(map((result) => {
108
- if (result?.length) {
109
- this.phoneNumbers = result.map((item) => item.phoneNumber);
110
- }
111
- return result;
112
- }));
113
- }
114
- }
115
- DnsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DnsService, deps: [{ token: i1.APIService }, { token: i2.ApiWebexService }], target: i0.ɵɵFactoryTarget.Injectable });
116
- DnsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DnsService });
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DnsService, decorators: [{
118
- type: Injectable
119
- }], ctorParameters: function () { return [{ type: i1.APIService }, { type: i2.ApiWebexService }]; } });
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG5zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlcnMtbGlzdC9zcmMvc2VydmljZXMvZG5zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFdkMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBQzlCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbEMsT0FBTyxFQUFzQyxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQUlsRixNQUFNLE9BQU8sVUFBVTtJQUtyQixZQUNVLFVBQXNCLEVBQ3RCLGVBQWdDO1FBRGhDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBTjFDLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUV0QixpQkFBWSxHQUFhLEVBQUUsQ0FBQztJQU81QixDQUFDO0lBQ00sY0FBYyxDQUFDLE1BQWMsRUFBRSxjQUFzQixFQUFFLFFBQWtCLEVBQUUsSUFBYSxFQUFFLFFBQWlCO1FBQ2hILGFBQWE7UUFDYixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsRUFBRSxNQUFNLEVBQUU7WUFDakQsT0FBTyxJQUFJLFVBQVUsQ0FBTSxRQUFRLENBQUMsRUFBRTtnQkFDcEMsYUFBYTtnQkFDYixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxJQUFJLENBQUMsOEJBQThCLEdBQUcsRUFB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QUFDLENBQUMsQ0FBQzthQUN2QztZQUNELE9BQU8sWUFBWSxHQUFHLE1BQU0sQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxVQUFrQixFQUFFLFVBQWtCO1FBQzdELE1BQU0sTUFBTSxHQUFHO1lBQ2IsU0FBUyxFQUFFLElBQUk7WUFDZixVQUFVLEVBQUUsUUFBUTtTQUNyQixDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUMsRUFBRSxNQUFNLENBQUM7YUFDdkksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQVcsRUFBRSxFQUFFO1lBQ3hCLElBQUksTUFBTSxFQUFFLE1BQU0sRUFBRTtnQkFDbEIsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDakU7WUFDRCxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQzs7d0dBbkhVLFVBQVU7NEdBQVYsVUFBVTs0RkFBVixVQUFVO2tCQUR0QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBUEkgfSBmcm9tICcuLi9hcHAuY29uc3RhbnRzJztcclxuaW1wb3J0IHsgQVBJU2VydmljZSB9IGZyb20gJy4vYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCAqIGFzIEJpZyBmcm9tICdiaWcuanMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEFwaVdlYmV4U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwaS13ZWJleC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXZhaWxhYmxlUGhvbmVOdW1iZXJSYW5nZUludGVyZmFjZSwgRG5SYW5nZVR5cGUgfSBmcm9tICcuLi9jbGFzc2VzL2xpbmUnO1xyXG5cclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIERuc1NlcnZpY2Uge1xyXG4gIGF2YWlsYWJsZU51bWJlcnMgPSB7fTtcclxuICBhdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG4hOiBhbnk7XHJcbiAgcGhvbmVOdW1iZXJzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgYXBpU2VydmljZTogQVBJU2VydmljZSxcclxuICAgIHByaXZhdGUgYXBpV2ViZXhTZXJ2aWNlOiBBcGlXZWJleFNlcnZpY2VcclxuICApIHtcclxuXHJcbiAgfVxyXG4gIHB1YmxpYyBnZXROdW1iZXJSYW5nZShzaXRlSWQ6IHN0cmluZywgcm91dGVQYXJ0aXRpb246IHN0cmluZywgd2l0aGRpZHM/OiBib29sZWFuLCBmcm9tPzogc3RyaW5nLCBwYWdlU2l6ZT86IG51bWJlcik6IGFueSB7XHJcbiAgICAvLyBAdHMtaWdub3JlXHJcbiAgICBpZiAodGhpcy5hdmFpbGFibGVOdW1iZXJzW3JvdXRlUGFydGl0aW9uXT8ubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxhbnk+KG9ic2VydmVyID0+IHtcclxuICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgb2JzZXJ2ZXIubmV4dCh0aGlzLmF2YWlsYWJsZU51bWJlcnNbcm91dGVQYXJ0aXRpb25dKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG4gPSB7fTtcclxuICAgIHBhZ2VTaXplID0gcGFnZVNpemUgPyBwYWdlU2l6ZSA6IDIwO1xyXG4gICAgY29uc3QgcGFyYW1zID0ge2RudHlwZTogRG5SYW5nZVR5cGUuZXh0ZW5zaW9uLCByb3V0ZXBhcnRpdGlvbjogcm91dGVQYXJ0aXRpb24sIHNpemU6IHBhZ2VTaXplLCBwYWdlOiAwfTtcclxuICAgIGlmICh3aXRoZGlkcykge1xyXG4gICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgIHBhcmFtc1snd2l0aGRpZHMnXSA9ICd0cnVlJztcclxuICAgIH1cclxuICAgIGlmIChmcm9tKSB7XHJcbiAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgcGFyYW1zWydmcm9tJ10gPSBmcm9tO1xyXG4gICAgfVxyXG4gICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgdGhpcy5hdmFpbGFibGVOdW1iZXJzW3JvdXRlUGFydGl0aW9uXSA9IHRoaXMuYXZhaWxhYmxlTnVtYmVyc1tyb3V0ZVBhcnRpdGlvbl0gfHwgW107XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuQVZBSUxBQkxFX0ROX0lOX1JBTkdFUy5yZXBsYWNlKCc6c2l0ZUlkJywgc2l0ZUlkKSwgcGFyYW1zKVxyXG4gICAgICAucGlwZShtYXAoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICByZXMuYXZhaWxhYmxlTnVtYmVyTGlzdC5mb3JFYWNoKChhdmFpbGFibGVOdW1iZXI6IEF2YWlsYWJsZVBob25lTnVtYmVyUmFuZ2VJbnRlcmZhY2UpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5zZXRBdmFpbGFibGVEaWRNYXBwZWRUb0RuKGF2YWlsYWJsZU51bWJlcik7XHJcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgdGhpcy5hdmFpbGFibGVOdW1iZXJzW3JvdXRlUGFydGl0aW9uXSA9IFsuLi50aGlzLmF2YWlsYWJsZU51bWJlcnNbcm91dGVQYXJ0aXRpb25dLCAuLi50aGlzLmdldFVud3JhcE51bWJlclJhbmdlKGF2YWlsYWJsZU51bWJlcildO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgKVxyXG4gICAgICAvLyAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIGZhbHNlKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0QXZhaWxhYmxlRGlkTWFwcGVkVG9EbihhdmFpbGFibGVOdW1iZXI6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKGF2YWlsYWJsZU51bWJlci51blVzZWROdW1iZXJzV2l0aERpZHMgJiYgYXZhaWxhYmxlTnVtYmVyLnVuVXNlZE51bWJlcnNXaXRoRGlkcy5sZW5ndGgpIHtcclxuXHJcbiAgICAgIGF2YWlsYWJsZU51bWJlci51blVzZWROdW1iZXJzV2l0aERpZHMuZm9yRWFjaCgobnVtYmVyV2l0aERpZHM6IGFueSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGRuID0gbnVtYmVyV2l0aERpZHNbJ3VuVXNlZE51bWJlciddO1xyXG4gICAgICAgIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXSA9IFt7fV07XHJcbiAgICAgICAgaWYgKG51bWJlcldpdGhEaWRzWyd0cmFuc2xhdGlvblBhdHRlcm5MaXN0J10gJiYgbnVtYmVyV2l0aERpZHNbJ3RyYW5zbGF0aW9uUGF0dGVybkxpc3QnXS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl0gPSBudW1iZXJXaXRoRGlkc1sndHJhbnNsYXRpb25QYXR0ZXJuTGlzdCddO1xyXG4gICAgICAgICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWydtYXBwZWREaWRzJ10gPSBbe31dO1xyXG4gICAgICAgICAgaWYgKG51bWJlcldpdGhEaWRzWydtYXBwZWREaWRzJ10gJiYgbnVtYmVyV2l0aERpZHNbJ21hcHBlZERpZHMnXS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddID0gbnVtYmVyV2l0aERpZHNbJ21hcHBlZERpZHMnXTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWyd2bSddID0gbnVtYmVyV2l0aERpZHNbJ3ZtJ107XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFVud3JhcE51bWJlclJhbmdlKGF2YWlsYWJsZU51bWJlcjogYW55KTogc3RyaW5nW10ge1xyXG4gICAgbGV0IHVud3JhcE51bWJlclJhbmdlID0gdGhpcy51bndyYXBOdW1iZXJSYW5nZShhdmFpbGFibGVOdW1iZXIucGhvbmVOdW1iZXJSYW5nZS5mcm9tLCBhdmFpbGFibGVOdW1iZXIucGhvbmVOdW1iZXJSYW5nZS50bylcclxuICAgICAgLm1hcCgodW53cmFwcGVkTnVtYmVyOiBzdHJpbmcpID0+IHtcclxuICAgICAgICBjb25zdCBkbiA9IGF2YWlsYWJsZU51bWJlci5waG9uZU51bWJlclJhbmdlLnByZWZpeCArIHVud3JhcHBlZE51bWJlcjtcclxuICAgICAgICBsZXQgc3RyID0gZG47XHJcbiAgICAgICAgaWYgKHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXSAmJiB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl0ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgaWYgKHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddICYmIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgc3RyICs9ICcgICAgICAgIERJRDogICcgKyAodGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWydtYXBwZWREaWRzJ10ubGVuZ3RoID4gMSA/ICdtdWx0aXBsZScgOlxyXG4gICAgICAgICAgICAgIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddWzBdKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl1bMF1bJ3ZtJ10pIHtcclxuICAgICAgICAgICAgc3RyICs9ICcgICAgICAgIEluIFVzZSAtIFZNJztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHN0cjtcclxuICAgICAgfSk7XHJcbiAgICB1bndyYXBOdW1iZXJSYW5nZSA9IHVud3JhcE51bWJlclJhbmdlLmZpbHRlcigodW53cmFwcGVkTnVtYmVyOiBzdHJpbmcpID0+ICFhdmFpbGFibGVOdW1iZXIudXNlZE51bWJlcnMuaW5jbHVkZXModW53cmFwcGVkTnVtYmVyKSk7XHJcbiAgICByZXR1cm4gdW53cmFwTnVtYmVyUmFuZ2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdW53cmFwTnVtYmVyUmFuZ2Uoc3RhcnQ6IHN0cmluZywgZW5kOiBzdHJpbmcpOiBzdHJpbmdbXSB7XHJcbiAgICBjb25zdCByZWdFeHAgPSAvKF4wKykvO1xyXG4gICAgbGV0IGxlYWRpbmdaZXJvcyA9ICcnO1xyXG4gICAgY29uc3QgbWF0Y2hlcyA9IHN0YXJ0Lm1hdGNoKHJlZ0V4cCk7XHJcbiAgICBpZiAobWF0Y2hlcykge1xyXG4gICAgICBsZWFkaW5nWmVyb3MgPSBtYXRjaGVzWzFdO1xyXG4gICAgfVxyXG4gICAgY29uc3Qgc3RhcnROdW1lcmljID0gbmV3IEJpZyhzdGFydCk7XHJcbiAgICBjb25zdCBlbmROdW1lcmljID0gbmV3IEJpZyhlbmQpO1xyXG4gICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgcmV0dXJuIEFycmF5LmZyb20oe2xlbmd0aDogKGVuZE51bWVyaWMubWludXMoc3RhcnROdW1lcmljKS5wbHVzKG5ldyBCaWcoMSkpLnRvRml4ZWQoMCkpfSwgKHYsIGspID0+IHtcclxuICAgICAgY29uc3QgbnVtYmVyID0gU3RyaW5nKHN0YXJ0TnVtZXJpYy5wbHVzKG5ldyBCaWcoaykpLnRvRml4ZWQoMCkpO1xyXG4gICAgICBpZiAoKGxlYWRpbmdaZXJvcyArIG51bWJlcikubGVuZ3RoID4gc3RhcnQubGVuZ3RoKSB7XHJcbiAgICAgICAgbGVhZGluZ1plcm9zID0gbGVhZGluZ1plcm9zLnN1YnN0cigxKTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbGVhZGluZ1plcm9zICsgbnVtYmVyO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZmV0Y2hQaG9uZU51bWJlcnMoY3VzdG9tZXJJZDogbnVtYmVyLCBsb2NhdGlvbklkOiBzdHJpbmcpOiBhbnkge1xyXG4gICAgY29uc3QgcGFyYW1zID0ge1xyXG4gICAgICBhdmFpbGFibGU6IHRydWUsXHJcbiAgICAgIG51bWJlclR5cGU6ICdOVU1CRVInXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpV2ViZXhTZXJ2aWNlLmZldGNoKEFQSS5QSE9ORV9OVU1CRVJTLnJlcGxhY2UoJzpjdXN0b21lcklkJywgU3RyaW5nKGN1c3RvbWVySWQpKS5yZXBsYWNlKCc6bG9jYXRpb25JZCcsIGxvY2F0aW9uSWQpLCBwYXJhbXMpXHJcbiAgICAgIC5waXBlKG1hcCgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0Py5sZW5ndGgpIHtcclxuICAgICAgICAgIHRoaXMucGhvbmVOdW1iZXJzID0gcmVzdWx0Lm1hcCgoaXRlbTogYW55KSA9PiBpdGVtLnBob25lTnVtYmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgICAgfSkpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,14 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- export class EventsCommunicationService {
5
- constructor() {
6
- this.onSuccessfulLoginEvent = new Subject();
7
- }
8
- }
9
- EventsCommunicationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EventsCommunicationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
10
- EventsCommunicationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EventsCommunicationService });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EventsCommunicationService, decorators: [{
12
- type: Injectable
13
- }], ctorParameters: function () { return []; } });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLWNvbW11bmljYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2Vycy1saXN0L3NyYy9zZXJ2aWNlcy9ldmVudHMtY29tbXVuaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHL0IsTUFBTSxPQUFPLDBCQUEwQjtJQUdyQztRQUZPLDJCQUFzQixHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFHOUMsQ0FBQzs7d0hBSlUsMEJBQTBCOzRIQUExQiwwQkFBMEI7NEZBQTFCLDBCQUEwQjtrQkFEdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRXZlbnRzQ29tbXVuaWNhdGlvblNlcnZpY2Uge1xyXG4gIHB1YmxpYyBvblN1Y2Nlc3NmdWxMb2dpbkV2ZW50ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -1,53 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { API } from '../app.constants';
3
- import { map } from 'rxjs/operators';
4
- import { PrepareMigrationData } from '../classes/move-user';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "./api.service";
7
- import * as i2 from "../services/api-webex.service";
8
- export class MoveUserService {
9
- constructor(apiService, apiWebexService) {
10
- this.apiService = apiService;
11
- this.apiWebexService = apiWebexService;
12
- }
13
- resetMigrationDataForNewLocation() {
14
- this.prepareMigrationData.newExtension = '';
15
- this.prepareMigrationData.newPhoneNumber = '';
16
- this.prepareMigrationData.newExtension = '';
17
- }
18
- setOriginPrepareMigrationData() {
19
- const data = JSON.parse(JSON.stringify(this.prepareMigrationData.getSavableData()));
20
- this.originPrepareMigrationData = new PrepareMigrationData(data);
21
- }
22
- fetchPrepareMigrationData(data) {
23
- return this.apiWebexService.post(API.PREPARE_PERSON_MIGRATION, data.getSavableData())
24
- .pipe(map((result) => {
25
- if (result) {
26
- this.prepareMigrationData = new PrepareMigrationData(result, this.originPrepareMigrationData);
27
- }
28
- return result;
29
- }));
30
- // .pipe(this.handleError(false, true));
31
- }
32
- startMigration(data) {
33
- /* return new Observable<boolean>(observer => {
34
- setTimeout(() => {
35
- observer.next(true);
36
-
37
- }, 2000);
38
- });*/
39
- return this.apiWebexService.post(API.START_MIGRATION, data.getSavableData())
40
- .pipe(map((result) => {
41
- if (data) {
42
- this.prepareMigrationData = new PrepareMigrationData(data);
43
- }
44
- }));
45
- // .pipe(this.handleError(false, true));
46
- }
47
- }
48
- MoveUserService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MoveUserService, deps: [{ token: i1.APIService }, { token: i2.ApiWebexService }], target: i0.ɵɵFactoryTarget.Injectable });
49
- MoveUserService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MoveUserService });
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MoveUserService, decorators: [{
51
- type: Injectable
52
- }], ctorParameters: function () { return [{ type: i1.APIService }, { type: i2.ApiWebexService }]; } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS11c2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlcnMtbGlzdC9zcmMvc2VydmljZXMvbW92ZS11c2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdkMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBdUMsb0JBQW9CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQUlqRyxNQUFNLE9BQU8sZUFBZTtJQUkxQixZQUNVLFVBQXNCLEVBQ3RCLGVBQWdDO1FBRGhDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsb0JBQWUsR0FBZixlQUFlLENBQWlCO0lBRzFDLENBQUM7SUFFRCxnQ0FBZ0M7UUFDOUIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7UUFDNUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7SUFFOUMsQ0FBQztJQUVELDZCQUE2QjtRQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsMEJBQTBCLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQseUJBQXlCLENBQUMsSUFBMEI7UUFDbEQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2FBQ2xGLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtZQUN4QixJQUFJLE1BQU0sRUFBRTtnQkFDVixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7YUFDL0Y7WUFDRCxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ04sd0NBQXdDO0lBQzFDLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBbUI7UUFDakM7Ozs7O2NBS007UUFDTCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2FBQ3pFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtZQUN4QixJQUFJLElBQUksRUFBRTtnQkFDUixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUM1RDtRQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDTix3Q0FBd0M7SUFDMUMsQ0FBQzs7NkdBaERVLGVBQWU7aUhBQWYsZUFBZTs0RkFBZixlQUFlO2tCQUQzQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBUElTZXJ2aWNlIH0gZnJvbSAnLi9hcGkuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwaVdlYmV4U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwaS13ZWJleC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQVBJIH0gZnJvbSAnLi4vYXBwLmNvbnN0YW50cyc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgTWlncmF0aW9uRGF0YSwgUHJlcGFyZU1pZ3JhdGlvbkJvZHksIFByZXBhcmVNaWdyYXRpb25EYXRhIH0gZnJvbSAnLi4vY2xhc3Nlcy9tb3ZlLXVzZXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBNb3ZlVXNlclNlcnZpY2Uge1xyXG4gIHByZXBhcmVNaWdyYXRpb25EYXRhITogUHJlcGFyZU1pZ3JhdGlvbkRhdGE7XHJcbiAgb3JpZ2luUHJlcGFyZU1pZ3JhdGlvbkRhdGEhOiBQcmVwYXJlTWlncmF0aW9uRGF0YTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGFwaVNlcnZpY2U6IEFQSVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFwaVdlYmV4U2VydmljZTogQXBpV2ViZXhTZXJ2aWNlXHJcbiAgKSB7XHJcblxyXG4gIH1cclxuXHJcbiAgcmVzZXRNaWdyYXRpb25EYXRhRm9yTmV3TG9jYXRpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLnByZXBhcmVNaWdyYXRpb25EYXRhLm5ld0V4dGVuc2lvbiA9ICcnO1xyXG4gICAgdGhpcy5wcmVwYXJlTWlncmF0aW9uRGF0YS5uZXdQaG9uZU51bWJlciA9ICcnO1xyXG4gICAgdGhpcy5wcmVwYXJlTWlncmF0aW9uRGF0YS5uZXdFeHRlbnNpb24gPSAnJztcclxuXHJcbiAgfVxyXG5cclxuICBzZXRPcmlnaW5QcmVwYXJlTWlncmF0aW9uRGF0YSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMucHJlcGFyZU1pZ3JhdGlvbkRhdGEuZ2V0U2F2YWJsZURhdGEoKSkpO1xyXG4gICAgdGhpcy5vcmlnaW5QcmVwYXJlTWlncmF0aW9uRGF0YSA9IG5ldyBQcmVwYXJlTWlncmF0aW9uRGF0YShkYXRhKTtcclxuICB9XHJcblxyXG4gIGZldGNoUHJlcGFyZU1pZ3JhdGlvbkRhdGEoZGF0YTogUHJlcGFyZU1pZ3JhdGlvbkJvZHkpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpV2ViZXhTZXJ2aWNlLnBvc3QoQVBJLlBSRVBBUkVfUEVSU09OX01JR1JBVElPTiwgZGF0YS5nZXRTYXZhYmxlRGF0YSgpKVxyXG4gICAgICAucGlwZShtYXAoKHJlc3VsdDogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgICAgdGhpcy5wcmVwYXJlTWlncmF0aW9uRGF0YSA9IG5ldyBQcmVwYXJlTWlncmF0aW9uRGF0YShyZXN1bHQsIHRoaXMub3JpZ2luUHJlcGFyZU1pZ3JhdGlvbkRhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICB9KSk7XHJcbiAgICAvLyAucGlwZSh0aGlzLmhhbmRsZUVycm9yKGZhbHNlLCB0cnVlKSk7XHJcbiAgfVxyXG5cclxuICBzdGFydE1pZ3JhdGlvbihkYXRhOiBNaWdyYXRpb25EYXRhKTogYW55IHtcclxuICAgLyogcmV0dXJuIG5ldyBPYnNlcnZhYmxlPGJvb2xlYW4+KG9ic2VydmVyID0+IHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgb2JzZXJ2ZXIubmV4dCh0cnVlKTtcclxuXHJcbiAgICAgIH0sIDIwMDApO1xyXG4gICAgfSk7Ki9cclxuICAgIHJldHVybiB0aGlzLmFwaVdlYmV4U2VydmljZS5wb3N0KEFQSS5TVEFSVF9NSUdSQVRJT04sIGRhdGEuZ2V0U2F2YWJsZURhdGEoKSlcclxuICAgICAgLnBpcGUobWFwKChyZXN1bHQ6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgICB0aGlzLnByZXBhcmVNaWdyYXRpb25EYXRhID0gbmV3IFByZXBhcmVNaWdyYXRpb25EYXRhKGRhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSkpO1xyXG4gICAgLy8gLnBpcGUodGhpcy5oYW5kbGVFcnJvcihmYWxzZSwgdHJ1ZSkpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,62 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { Notification } from '../classes/notification';
3
- import { Subject } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- const SUCCESS_TIME = 5000;
6
- const INACTIVE_SESSION_MESSAGE = 'Your session was lost due to inactivity. Please login again';
7
- const INACTIVE_SESSION = 'SESSION_INACTIVE';
8
- export class NotificationService {
9
- constructor() {
10
- this.listChange = new Subject();
11
- this.max = 0;
12
- this.list = [];
13
- }
14
- error(message, ttl) {
15
- this.notify('error', message, ttl);
16
- }
17
- success(message, ttl) {
18
- this.notify('success', message, (!ttl) ? SUCCESS_TIME : ttl);
19
- }
20
- warning(message, ttl) {
21
- this.notify('warning', message, ttl);
22
- }
23
- info(message, ttl) {
24
- this.notify('info', message, ttl);
25
- }
26
- notify(type, message, ttl) {
27
- const found = this.list.find((n) => n.message === message);
28
- if (found) {
29
- this.remove(found);
30
- }
31
- const notification = new Notification({
32
- id: ++this.max,
33
- type, message, ttl
34
- });
35
- if (notification.ttl > 0) {
36
- notification.timerId = setTimeout(() => this.remove(notification, true), notification.ttl);
37
- }
38
- this.list.push(notification);
39
- this.listChange.next(this.list);
40
- }
41
- remove(notification, auto) {
42
- if (!auto && notification.timerId) {
43
- // clear timeout in case of manual remove
44
- clearInterval(notification.timerId);
45
- }
46
- this.list = this.list.filter(n => n.id !== notification.id);
47
- this.listChange.next(this.list);
48
- }
49
- removeInactiveSessionError() {
50
- if (!this.list || !this.list.length) {
51
- return;
52
- }
53
- this.list = this.list.filter(n => n.message !== INACTIVE_SESSION_MESSAGE && n.message !== INACTIVE_SESSION);
54
- this.listChange.next(this.list);
55
- }
56
- }
57
- NotificationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NotificationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
58
- NotificationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NotificationService });
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NotificationService, decorators: [{
60
- type: Injectable
61
- }], ctorParameters: function () { return []; } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlcnMtbGlzdC9zcmMvc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFDL0IsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDO0FBQzFCLE1BQU0sd0JBQXdCLEdBQUcsNkRBQTZELENBQUM7QUFDL0YsTUFBTSxnQkFBZ0IsR0FBRyxrQkFBa0IsQ0FBQztBQUc1QyxNQUFNLE9BQU8sbUJBQW1CO0lBTzlCO1FBTE8sZUFBVSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFFMUIsUUFBRyxHQUFHLENBQUMsQ0FBQztRQUNSLFNBQUksR0FBbUIsRUFBRSxDQUFDO0lBSWxDLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBZSxFQUFFLEdBQVk7UUFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxPQUFPLENBQUMsT0FBZSxFQUFFLEdBQVk7UUFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQWUsRUFBRSxHQUFZO1FBQ25DLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBSSxDQUFDLE9BQWUsRUFBRSxHQUFZO1FBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBQ08sTUFBTSxDQUFDLElBQVksRUFBRSxPQUFlLEVBQUUsR0FBWTtRQUN4RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxPQUFPLENBQUMsQ0FBQztRQUN6RSxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDcEI7UUFDRCxNQUFNLFlBQVksR0FBRyxJQUFJLFlBQVksQ0FBQztZQUNwQyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNkLElBQUksRUFBRSxPQUFPLEVBQUUsR0FBRztTQUNuQixDQUFDLENBQUM7UUFDSCxJQUFJLFlBQVksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFO1lBQ3hCLFlBQVksQ0FBQyxPQUFPLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxFQUFFLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUM1RjtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQTBCLEVBQUUsSUFBYztRQUMvQyxJQUFJLENBQUMsSUFBSSxJQUFJLFlBQVksQ0FBQyxPQUFPLEVBQUU7WUFDakMseUNBQXlDO1lBQ3pDLGFBQWEsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDckM7UUFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTywwQkFBMEI7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNuQyxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyx3QkFBd0IsSUFBSSxDQUFDLENBQUMsT0FBTyxLQUFLLGdCQUFnQixDQUFDLENBQUM7UUFDNUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7O2lIQXpEVSxtQkFBbUI7cUhBQW5CLG1CQUFtQjs0RkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb24gfSBmcm9tICcuLi9jbGFzc2VzL25vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuY29uc3QgU1VDQ0VTU19USU1FID0gNTAwMDtcclxuY29uc3QgSU5BQ1RJVkVfU0VTU0lPTl9NRVNTQUdFID0gJ1lvdXIgc2Vzc2lvbiB3YXMgbG9zdCBkdWUgdG8gaW5hY3Rpdml0eS4gUGxlYXNlIGxvZ2luIGFnYWluJztcclxuY29uc3QgSU5BQ1RJVkVfU0VTU0lPTiA9ICdTRVNTSU9OX0lOQUNUSVZFJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvblNlcnZpY2Uge1xyXG5cclxuICBwdWJsaWMgbGlzdENoYW5nZSA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIHByaXZhdGUgbWF4ID0gMDtcclxuICBwcml2YXRlIGxpc3Q6IE5vdGlmaWNhdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgZXJyb3IobWVzc2FnZTogc3RyaW5nLCB0dGw/OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMubm90aWZ5KCdlcnJvcicsIG1lc3NhZ2UsIHR0bCk7XHJcbiAgfVxyXG5cclxuICBzdWNjZXNzKG1lc3NhZ2U6IHN0cmluZywgdHRsPzogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLm5vdGlmeSgnc3VjY2VzcycsIG1lc3NhZ2UsICghdHRsKSA/IFNVQ0NFU1NfVElNRSA6IHR0bCk7XHJcbiAgfVxyXG5cclxuICB3YXJuaW5nKG1lc3NhZ2U6IHN0cmluZywgdHRsPzogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLm5vdGlmeSgnd2FybmluZycsIG1lc3NhZ2UsIHR0bCk7XHJcbiAgfVxyXG5cclxuICBpbmZvKG1lc3NhZ2U6IHN0cmluZywgdHRsPzogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLm5vdGlmeSgnaW5mbycsIG1lc3NhZ2UsIHR0bCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgbm90aWZ5KHR5cGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nLCB0dGw/OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIGNvbnN0IGZvdW5kID0gdGhpcy5saXN0LmZpbmQoKG46IE5vdGlmaWNhdGlvbikgPT4gbi5tZXNzYWdlID09PSBtZXNzYWdlKTtcclxuICAgIGlmIChmb3VuZCkge1xyXG4gICAgICB0aGlzLnJlbW92ZShmb3VuZCk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBub3RpZmljYXRpb24gPSBuZXcgTm90aWZpY2F0aW9uKHtcclxuICAgICAgaWQ6ICsrdGhpcy5tYXgsXHJcbiAgICAgIHR5cGUsIG1lc3NhZ2UsIHR0bFxyXG4gICAgfSk7XHJcbiAgICBpZiAobm90aWZpY2F0aW9uLnR0bCA+IDApIHtcclxuICAgICAgbm90aWZpY2F0aW9uLnRpbWVySWQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVtb3ZlKG5vdGlmaWNhdGlvbiwgdHJ1ZSksIG5vdGlmaWNhdGlvbi50dGwpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5saXN0LnB1c2gobm90aWZpY2F0aW9uKTtcclxuICAgIHRoaXMubGlzdENoYW5nZS5uZXh0KHRoaXMubGlzdCk7XHJcbiAgfVxyXG5cclxuICByZW1vdmUobm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb24sIGF1dG8/OiBib29sZWFuKTogdm9pZCB7XHJcbiAgICBpZiAoIWF1dG8gJiYgbm90aWZpY2F0aW9uLnRpbWVySWQpIHtcclxuICAgICAgLy8gY2xlYXIgdGltZW91dCBpbiBjYXNlIG9mIG1hbnVhbCByZW1vdmVcclxuICAgICAgY2xlYXJJbnRlcnZhbChub3RpZmljYXRpb24udGltZXJJZCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmxpc3QgPSB0aGlzLmxpc3QuZmlsdGVyKG4gPT4gbi5pZCAhPT0gbm90aWZpY2F0aW9uLmlkKTtcclxuICAgIHRoaXMubGlzdENoYW5nZS5uZXh0KHRoaXMubGlzdCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlbW92ZUluYWN0aXZlU2Vzc2lvbkVycm9yKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmxpc3QgfHwgIXRoaXMubGlzdC5sZW5ndGgpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5saXN0ID0gdGhpcy5saXN0LmZpbHRlcihuID0+IG4ubWVzc2FnZSAhPT0gSU5BQ1RJVkVfU0VTU0lPTl9NRVNTQUdFICYmIG4ubWVzc2FnZSAhPT0gSU5BQ1RJVkVfU0VTU0lPTik7XHJcbiAgICB0aGlzLmxpc3RDaGFuZ2UubmV4dCh0aGlzLmxpc3QpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -1,25 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { CUCMS_TO_IGNORE, CUCS_TO_IGNORE } from '../app.constants';
3
- import * as i0 from "@angular/core";
4
- export class RemoveKynFromIBMService {
5
- constructor() {
6
- }
7
- removeCUCMS(date, customerId) {
8
- if (customerId === 8) {
9
- return date.filter((val) => !CUCMS_TO_IGNORE.includes(Math.round(val.cucmId)));
10
- }
11
- return date;
12
- }
13
- removeCUCS(date, customerId) {
14
- if (customerId === 8) {
15
- return date.filter((val) => !CUCS_TO_IGNORE.includes(Math.round(val.cucId)));
16
- }
17
- return date;
18
- }
19
- }
20
- RemoveKynFromIBMService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RemoveKynFromIBMService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
21
- RemoveKynFromIBMService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RemoveKynFromIBMService });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RemoveKynFromIBMService, decorators: [{
23
- type: Injectable
24
- }], ctorParameters: function () { return []; } });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlS3luRnJvbUlCTS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXJzLWxpc3Qvc3JjL3NlcnZpY2VzL3JlbW92ZUt5bkZyb21JQk0uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBR25FLE1BQU0sT0FBTyx1QkFBdUI7SUFDbEM7SUFDQSxDQUFDO0lBR0QsV0FBVyxDQUFDLElBQVMsRUFBRSxVQUFrQjtRQUN2QyxJQUFJLFVBQVUsS0FBSyxDQUFDLEVBQUU7WUFDcEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3JGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVMsRUFBRSxVQUFrQjtRQUN0QyxJQUFJLFVBQVUsS0FBSyxDQUFDLEVBQUU7WUFDcEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ25GO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOztxSEFqQlUsdUJBQXVCO3lIQUF2Qix1QkFBdUI7NEZBQXZCLHVCQUF1QjtrQkFEbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ1VDTVNfVE9fSUdOT1JFLCBDVUNTX1RPX0lHTk9SRSB9IGZyb20gJy4uL2FwcC5jb25zdGFudHMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgUmVtb3ZlS3luRnJvbUlCTVNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gIH1cclxuXHJcblxyXG4gIHJlbW92ZUNVQ01TKGRhdGU6IGFueSwgY3VzdG9tZXJJZDogbnVtYmVyKSB7XHJcbiAgICBpZiAoY3VzdG9tZXJJZCA9PT0gOCkge1xyXG4gICAgICByZXR1cm4gZGF0ZS5maWx0ZXIoKHZhbDogYW55KSA9PiAhQ1VDTVNfVE9fSUdOT1JFLmluY2x1ZGVzKE1hdGgucm91bmQodmFsLmN1Y21JZCkpKTtcclxuICAgIH1cclxuICAgIHJldHVybiBkYXRlO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlQ1VDUyhkYXRlOiBhbnksIGN1c3RvbWVySWQ6IG51bWJlcikge1xyXG4gICAgaWYgKGN1c3RvbWVySWQgPT09IDgpIHtcclxuICAgICAgcmV0dXJuIGRhdGUuZmlsdGVyKCh2YWw6IGFueSkgPT4gIUNVQ1NfVE9fSUdOT1JFLmluY2x1ZGVzKE1hdGgucm91bmQodmFsLmN1Y0lkKSkpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGRhdGU7XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIl19
@@ -1,27 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { API } from '../app.constants';
3
- import { map } from 'rxjs/operators';
4
- import { AppLocation } from '../classes/app-location';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../services/api-webex.service";
7
- export class SiteSettingsService {
8
- constructor(apiWebexService) {
9
- this.apiWebexService = apiWebexService;
10
- this.locations = [];
11
- }
12
- getLocations(customerId) {
13
- return this.apiWebexService.fetch(API.GET_LOCATIONS.replace(':customerId', String(customerId)), {})
14
- .pipe(map((result) => {
15
- if (result && result.length) {
16
- this.locations = result.map((location) => new AppLocation(location));
17
- }
18
- return result;
19
- }));
20
- }
21
- }
22
- SiteSettingsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SiteSettingsService, deps: [{ token: i1.ApiWebexService }], target: i0.ɵɵFactoryTarget.Injectable });
23
- SiteSettingsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SiteSettingsService });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SiteSettingsService, decorators: [{
25
- type: Injectable
26
- }], ctorParameters: function () { return [{ type: i1.ApiWebexService }]; } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l0ZS1zZXR0aW5ncy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXJzLWxpc3Qvc3JjL3NlcnZpY2VzL3NpdGUtc2V0dGluZ3Muc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7QUFJdEQsTUFBTSxPQUFPLG1CQUFtQjtJQUc5QixZQUNVLGVBQWdDO1FBQWhDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUgxQyxjQUFTLEdBQWtCLEVBQUUsQ0FBQztJQU05QixDQUFDO0lBRUQsWUFBWSxDQUFDLFVBQWtCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQzthQUNoRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUU7WUFDeEIsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRTtnQkFDM0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBYSxFQUFFLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFBO2FBQzFFO1lBQ0QsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNQLENBQUM7O2lIQWpCVSxtQkFBbUI7cUhBQW5CLG1CQUFtQjs0RkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBUEkgfSBmcm9tICcuLi9hcHAuY29uc3RhbnRzJztcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBcHBMb2NhdGlvbiB9IGZyb20gJy4uL2NsYXNzZXMvYXBwLWxvY2F0aW9uJztcclxuaW1wb3J0IHsgQXBpV2ViZXhTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXBpLXdlYmV4LnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU2l0ZVNldHRpbmdzU2VydmljZSB7XHJcbiAgbG9jYXRpb25zOiBBcHBMb2NhdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhcGlXZWJleFNlcnZpY2U6IEFwaVdlYmV4U2VydmljZVxyXG4gICkge1xyXG5cclxuICB9XHJcblxyXG4gIGdldExvY2F0aW9ucyhjdXN0b21lcklkOiBudW1iZXIpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpV2ViZXhTZXJ2aWNlLmZldGNoKEFQSS5HRVRfTE9DQVRJT05TLnJlcGxhY2UoJzpjdXN0b21lcklkJywgU3RyaW5nKGN1c3RvbWVySWQpKSwge30pXHJcbiAgICAgIC5waXBlKG1hcCgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0ICYmIHJlc3VsdC5sZW5ndGgpIHtcclxuICAgICAgICAgIHRoaXMubG9jYXRpb25zID0gcmVzdWx0Lm1hcCgobG9jYXRpb246IGFueSkgPT4gbmV3IEFwcExvY2F0aW9uKGxvY2F0aW9uKSlcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgICAgfSkpXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,142 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { of, forkJoin, Subject } from 'rxjs';
3
- import { SimplifiedUser } from '../classes/simlified-user';
4
- import { API } from '../app.constants';
5
- import { map } from 'rxjs/operators';
6
- import { UtilsService } from '../utils/utils.service';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "./api.service";
9
- import * as i2 from "./api-webex.service";
10
- export class UserService {
11
- constructor(apiService, apiWebexService) {
12
- this.apiService = apiService;
13
- this.apiWebexService = apiWebexService;
14
- this.siteId = -1;
15
- this.userId = '';
16
- this.userIdExistPending = false;
17
- this.hasExistedUserId = false;
18
- this.moveUserPending = false;
19
- this.userMoved$ = new Subject();
20
- }
21
- ngOnInit() {
22
- console.log(this.siteId);
23
- }
24
- fetchUserToken(siteId, userId) {
25
- this.siteId = siteId;
26
- this.userId = userId;
27
- return this.apiService.fetch(API.USER_TOKEN.replace(':siteId', String(this.siteId)).replace(':userId', encodeURIComponent(encodeURIComponent(userId))))
28
- .pipe(map((result) => {
29
- const token = Object.keys(result)[0];
30
- this.setSimplifiedUser(Object.values(result)[0], token);
31
- }));
32
- // .pipe(this.handleError(false, true));
33
- }
34
- updateUserFields(body) {
35
- if (!this.userId || !this.siteId || !this.user?.token) {
36
- return;
37
- }
38
- return this.apiService.post(API.UPDATE_USER_FIELDS.replace(':siteId', String(this.siteId)).replace(':token', this.user.token), body);
39
- // .pipe(this.handleError(false, true));
40
- }
41
- moveUserToMT(customerId, user) {
42
- // return new Observable<boolean>(observer => {
43
- // setTimeout(() => {
44
- // observer.next(true);
45
- //
46
- // }, 1000);
47
- // });
48
- return this.apiWebexService.post(API.MOVE_USER, this.getMoveUserBody(customerId, user));
49
- // .pipe(this.handleError(true, true));
50
- }
51
- moveUserToDI(customerId, user) {
52
- // return new Observable<boolean>(observer => {
53
- // setTimeout(() => {
54
- // observer.next(true);
55
- //
56
- // }, 1000);
57
- // });
58
- const URL = API.REVERT_WEBEX_USER.replace(':customerId', customerId).replace(':webexUUID', String(user.webexUUID));
59
- return this.apiWebexService.post(URL, this.getMoveUserBody(customerId, user));
60
- // .pipe(this.handleError(true, true));
61
- }
62
- getMoveUserBody(customerId, user) {
63
- return {
64
- customerId: customerId,
65
- entities: {
66
- PERSON: [{ cucmId: user.cucmId, entityId: user.userid }]
67
- }
68
- };
69
- }
70
- deleteUser(siteId, userId) {
71
- return this.apiService.delete(API.DELETE_USER.replace(':siteId', String(siteId)).replace(':userId', encodeURIComponent(encodeURIComponent(userId))));
72
- // .pipe(this.handleError(true, true));
73
- }
74
- fetchUserById(id) {
75
- this.userIdExistPending = true;
76
- return this.apiService.fetch(API.USER_BY_ID.replace(':siteId', String(this.siteId)).replace(':userId', encodeURIComponent(encodeURIComponent(id))))
77
- .pipe(map(result => {
78
- this.userIdExistPending = false;
79
- return result;
80
- }));
81
- }
82
- persistCacheChanges() {
83
- const params = {
84
- excludeDeviceExtraOptions: true
85
- };
86
- return this.processUserChangesToCache()
87
- .pipe(map((result) => {
88
- return this.apiService.post(API.PERSIST_USER_CACHE.replace(':siteId', String(this.siteId)).replace(':token', this.user.token), {}, params)
89
- .subscribe(() => {
90
- });
91
- // .pipe(map((user) => {
92
- // // this.setUser(user, false, this.user.token);
93
- // this.user.hasModifiedCache = false;
94
- // }))
95
- // .pipe(this.handleError(true, true));
96
- }));
97
- }
98
- processUserChangesToCache() {
99
- const calls = [];
100
- const body = UtilsService.diff(this.originUser.getSavableData(), this.user.getSavableData(), 'user');
101
- if (body) {
102
- calls.push(this.updateUserFields(body));
103
- }
104
- if (!calls?.length) {
105
- return of(this.user);
106
- }
107
- return forkJoin(calls)
108
- .pipe(map((responses) => {
109
- // ApiUserResponse
110
- this.handleSaveUserResponse(responses);
111
- }));
112
- // .pipe(this.handleError(false, true));
113
- }
114
- hasUnsavedChanges() {
115
- return !this.user.equal(this.originUser);
116
- }
117
- setSimplifiedUser(user, token) {
118
- this.user = new SimplifiedUser(user);
119
- const copiedUser = JSON.parse(JSON.stringify(user));
120
- this.originUser = new SimplifiedUser(copiedUser);
121
- this.user.token = this.user.token || token;
122
- this.originUser.token = this.originUser.token || token;
123
- }
124
- handleSaveUserResponse(responses) {
125
- if (!responses?.length) {
126
- return;
127
- }
128
- for (let len = responses.length, i = len - 1; i >= 0; i--) {
129
- if (responses[i] && responses[i].currentUpdatedUser) {
130
- // this.setUser(responses[i].currentUpdatedUser, false, this.user.token);
131
- this.user.hasModifiedCache = true;
132
- return;
133
- }
134
- }
135
- }
136
- }
137
- UserService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UserService, deps: [{ token: i1.APIService }, { token: i2.ApiWebexService }], target: i0.ɵɵFactoryTarget.Injectable });
138
- UserService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UserService });
139
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UserService, decorators: [{
140
- type: Injectable
141
- }], ctorParameters: function () { return [{ type: i1.APIService }, { type: i2.ApiWebexService }]; } });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXJzLWxpc3Qvc3JjL3NlcnZpY2VzL3VzZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBYyxFQUFFLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXZDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFLdEQsTUFBTSxPQUFPLFdBQVc7SUFVdEIsWUFDVSxVQUFzQixFQUN0QixlQUFnQztRQURoQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQVgxQyxXQUFNLEdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDcEIsV0FBTSxHQUFXLEVBQUUsQ0FBQztRQUNwQix1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFDM0IscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBR3pCLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBTyxDQUFDO0lBT2hDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDMUIsQ0FBQztJQUVNLGNBQWMsQ0FBQyxNQUFjLEVBQUUsTUFBYztRQUNsRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsTUFBTSxH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QUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUM7UUFDM0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDO0lBQ3pELENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxTQUFjO1FBQzNDLElBQUksQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFO1lBQ3RCLE9BQU87U0FDUjtRQUNELEtBQUssSUFBSSxHQUFHLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3pELElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsRUFBRTtnQkFDbkQseUVBQXlFO2dCQUN6RSxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQztnQkFDbEMsT0FBTzthQUNSO1NBQ0Y7SUFDSCxDQUFDOzt5R0FsSlUsV0FBVzs2R0FBWCxXQUFXOzRGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBmb3JrSm9pbiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBTaW1wbGlmaWVkVXNlciB9IGZyb20gJy4uL2NsYXNzZXMvc2ltbGlmaWVkLXVzZXInO1xyXG5pbXBvcnQgeyBBUEkgfSBmcm9tICcuLi9hcHAuY29uc3RhbnRzJztcclxuaW1wb3J0IHsgQVBJU2VydmljZSB9IGZyb20gJy4vYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFV0aWxzU2VydmljZSB9IGZyb20gJy4uL3V0aWxzL3V0aWxzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMaXN0VXNlciB9IGZyb20gJy4uL2NsYXNzZXMvdXNlci1saXN0JztcclxuaW1wb3J0IHsgQXBpV2ViZXhTZXJ2aWNlIH0gZnJvbSAnLi9hcGktd2ViZXguc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBVc2VyU2VydmljZSBpbXBsZW1lbnRzIE9uSW5pdHtcclxuICBzaXRlSWQ6IG51bWJlciA9IC0xO1xyXG4gIHVzZXJJZDogc3RyaW5nID0gJyc7XHJcbiAgdXNlcklkRXhpc3RQZW5kaW5nID0gZmFsc2U7XHJcbiAgaGFzRXhpc3RlZFVzZXJJZCA9IGZhbHNlO1xyXG4gIHVzZXIhOiBTaW1wbGlmaWVkVXNlcjtcclxuICBvcmlnaW5Vc2VyITogU2ltcGxpZmllZFVzZXI7XHJcbiAgbW92ZVVzZXJQZW5kaW5nID0gZmFsc2U7XHJcbiAgdXNlck1vdmVkJCA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGFwaVNlcnZpY2U6IEFQSVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFwaVdlYmV4U2VydmljZTogQXBpV2ViZXhTZXJ2aWNlXHJcbiAgKSB7XHJcblxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLnNpdGVJZClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBmZXRjaFVzZXJUb2tlbihzaXRlSWQ6IG51bWJlciwgdXNlcklkOiBzdHJpbmcpOiBhbnkge1xyXG4gICAgdGhpcy5zaXRlSWQgPSBzaXRlSWQ7XHJcbiAgICB0aGlzLnVzZXJJZCA9IHVzZXJJZDtcclxuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLlVTRVJfVE9LRU4ucmVwbGFjZSgnOnNpdGVJZCcsIFN0cmluZyh0aGlzLnNpdGVJZCkpLnJlcGxhY2UoJzp1c2VySWQnLCBlbmNvZGVVUklDb21wb25lbnQoZW5jb2RlVVJJQ29tcG9uZW50KHVzZXJJZCkpKSlcclxuICAgICAgLnBpcGUobWFwKChyZXN1bHQ6IGFueSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHRva2VuID0gT2JqZWN0LmtleXMocmVzdWx0KVswXTtcclxuICAgICAgICB0aGlzLnNldFNpbXBsaWZpZWRVc2VyKE9iamVjdC52YWx1ZXMocmVzdWx0KVswXSwgdG9rZW4pO1xyXG4gICAgICB9KSlcclxuICAgIC8vIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IoZmFsc2UsIHRydWUpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVVc2VyRmllbGRzKGJvZHk6IGFueSk6IGFueSB7XHJcbiAgICBpZiAoIXRoaXMudXNlcklkIHx8ICF0aGlzLnNpdGVJZCB8fCAhdGhpcy51c2VyPy50b2tlbikge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoQVBJLlVQREFURV9VU0VSX0ZJRUxEUy5yZXBsYWNlKCc6c2l0ZUlkJywgU3RyaW5nKHRoaXMuc2l0ZUlkKSkucmVwbGFjZSgnOnRva2VuJywgdGhpcy51c2VyLnRva2VuKSwgYm9keSlcclxuICAgICAgLy8gLnBpcGUodGhpcy5oYW5kbGVFcnJvcihmYWxzZSwgdHJ1ZSkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG1vdmVVc2VyVG9NVChjdXN0b21lcklkOiBhbnksIHVzZXI6IExpc3RVc2VyKTogYW55IHtcclxuICAgIC8vIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxib29sZWFuPihvYnNlcnZlciA9PiB7XHJcbiAgICAvLyAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgLy8gICAgIG9ic2VydmVyLm5leHQodHJ1ZSk7XHJcbiAgICAvL1xyXG4gICAgLy8gICB9LCAxMDAwKTtcclxuICAgIC8vIH0pO1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpV2ViZXhTZXJ2aWNlLnBvc3QoQVBJLk1PVkVfVVNFUiwgdGhpcy5nZXRNb3ZlVXNlckJvZHkoY3VzdG9tZXJJZCwgdXNlcikpXHJcbiAgICAvLyAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIHRydWUpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBtb3ZlVXNlclRvREkoY3VzdG9tZXJJZDogYW55LCB1c2VyOiBMaXN0VXNlcik6IGFueSB7XHJcbiAgICAvLyByZXR1cm4gbmV3IE9ic2VydmFibGU8Ym9vbGVhbj4ob2JzZXJ2ZXIgPT4ge1xyXG4gICAgLy8gICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgIC8vICAgICBvYnNlcnZlci5uZXh0KHRydWUpO1xyXG4gICAgLy9cclxuICAgIC8vICAgfSwgMTAwMCk7XHJcbiAgICAvLyB9KTtcclxuICAgIGNvbnN0IFVSTCA9IEFQSS5SRVZFUlRfV0VCRVhfVVNFUi5yZXBsYWNlKCc6Y3VzdG9tZXJJZCcsIGN1c3RvbWVySWQpLnJlcGxhY2UoJzp3ZWJleFVVSUQnLCBTdHJpbmcodXNlci53ZWJleFVVSUQpKTtcclxuICAgIHJldHVybiB0aGlzLmFwaVdlYmV4U2VydmljZS5wb3N0KFVSTCwgdGhpcy5nZXRNb3ZlVXNlckJvZHkoY3VzdG9tZXJJZCwgdXNlcikpXHJcbiAgICAvLyAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIHRydWUpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0TW92ZVVzZXJCb2R5KGN1c3RvbWVySWQ6IGFueSwgdXNlcjogTGlzdFVzZXIpOiBhbnkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgY3VzdG9tZXJJZDogY3VzdG9tZXJJZCxcclxuICAgICAgZW50aXRpZXM6IHtcclxuICAgICAgICBQRVJTT046IFt7Y3VjbUlkOiB1c2VyLmN1Y21JZCwgZW50aXR5SWQ6IHVzZXIudXNlcmlkfV1cclxuICAgICAgfVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkZWxldGVVc2VyKHNpdGVJZDogbnVtYmVyLCB1c2VySWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmRlbGV0ZShBUEkuREVMRVRFX1VTRVIucmVwbGFjZSgnOnNpdGVJZCcsIFN0cmluZyhzaXRlSWQpKS5yZXBsYWNlKCc6dXNlcklkJywgZW5jb2RlVVJJQ29tcG9uZW50KGVuY29kZVVSSUNvbXBvbmVudCh1c2VySWQpKSkpXHJcbiAgICAgIC8vIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IodHJ1ZSwgdHJ1ZSkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGZldGNoVXNlckJ5SWQoaWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy51c2VySWRFeGlzdFBlbmRpbmcgPSB0cnVlO1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuVVNFUl9CWV9JRC5yZXBsYWNlKCc6c2l0ZUlkJywgU3RyaW5nKHRoaXMuc2l0ZUlkKSkucmVwbGFjZSgnOnVzZXJJZCcsIGVuY29kZVVSSUNvbXBvbmVudChlbmNvZGVVUklDb21wb25lbnQoaWQpKSkpXHJcbiAgICAgIC5waXBlKG1hcChyZXN1bHQgPT4ge1xyXG4gICAgICAgIHRoaXMudXNlcklkRXhpc3RQZW5kaW5nID0gZmFsc2U7XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHBlcnNpc3RDYWNoZUNoYW5nZXMoKSB7XHJcbiAgICBjb25zdCBwYXJhbXMgPSB7XHJcbiAgICAgIGV4Y2x1ZGVEZXZpY2VFeHRyYU9wdGlvbnM6IHRydWVcclxuICAgIH07XHJcbiAgICByZXR1cm4gdGhpcy5wcm9jZXNzVXNlckNoYW5nZXNUb0NhY2hlKClcclxuICAgICAgLnBpcGUobWFwKChyZXN1bHQ6IGFueSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdChBUEkuUEVSU0lTVF9VU0VSX0NBQ0hFLnJlcGxhY2UoJzpzaXRlSWQnLCBTdHJpbmcodGhpcy5zaXRlSWQpKS5yZXBsYWNlKCc6dG9rZW4nLCB0aGlzLnVzZXIudG9rZW4pLCB7fSwgcGFyYW1zKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcblxyXG4gICAgICAgICAgfSlcclxuICAgICAgICAgIC8vIC5waXBlKG1hcCgodXNlcikgPT4ge1xyXG4gICAgICAgICAgLy8gICAvLyB0aGlzLnNldFVzZXIodXNlciwgZmFsc2UsIHRoaXMudXNlci50b2tlbik7XHJcbiAgICAgICAgICAvLyAgIHRoaXMudXNlci5oYXNNb2RpZmllZENhY2hlID0gZmFsc2U7XHJcbiAgICAgICAgICAvLyB9KSlcclxuICAgICAgICAgIC8vIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IodHJ1ZSwgdHJ1ZSkpO1xyXG4gICAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcHJvY2Vzc1VzZXJDaGFuZ2VzVG9DYWNoZSgpOiBhbnkge1xyXG4gICAgY29uc3QgY2FsbHMgPSBbXTtcclxuICAgIGNvbnN0IGJvZHkgPSBVdGlsc1NlcnZpY2UuZGlmZih0aGlzLm9yaWdpblVzZXIuZ2V0U2F2YWJsZURhdGEoKSwgdGhpcy51c2VyLmdldFNhdmFibGVEYXRhKCksICd1c2VyJyk7XHJcbiAgICBpZiAoYm9keSkge1xyXG4gICAgICBjYWxscy5wdXNoKHRoaXMudXBkYXRlVXNlckZpZWxkcyhib2R5KSk7XHJcbiAgICB9XHJcbiAgICBpZiAoIWNhbGxzPy5sZW5ndGgpIHtcclxuICAgICAgcmV0dXJuIG9mKHRoaXMudXNlcik7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZvcmtKb2luKGNhbGxzKVxyXG4gICAgICAucGlwZShtYXAoKHJlc3BvbnNlczogYW55KSA9PiB7XHJcbiAgICAgICAgLy8gQXBpVXNlclJlc3BvbnNlXHJcbiAgICAgICAgdGhpcy5oYW5kbGVTYXZlVXNlclJlc3BvbnNlKHJlc3BvbnNlcyk7XHJcbiAgICAgIH0pKVxyXG4gICAgICAvLyAucGlwZSh0aGlzLmhhbmRsZUVycm9yKGZhbHNlLCB0cnVlKSk7XHJcblxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhc1Vuc2F2ZWRDaGFuZ2VzKCkge1xyXG4gICAgcmV0dXJuICF0aGlzLnVzZXIuZXF1YWwodGhpcy5vcmlnaW5Vc2VyKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRTaW1wbGlmaWVkVXNlcih1c2VyOiBhbnksIHRva2VuPzogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnVzZXIgPSBuZXcgU2ltcGxpZmllZFVzZXIodXNlcik7XHJcbiAgICBjb25zdCBjb3BpZWRVc2VyID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh1c2VyKSk7XHJcbiAgICB0aGlzLm9yaWdpblVzZXIgPSBuZXcgU2ltcGxpZmllZFVzZXIoY29waWVkVXNlcik7XHJcbiAgICB0aGlzLnVzZXIudG9rZW4gPSB0aGlzLnVzZXIudG9rZW4gfHwgdG9rZW47XHJcbiAgICB0aGlzLm9yaWdpblVzZXIudG9rZW4gPSB0aGlzLm9yaWdpblVzZXIudG9rZW4gfHwgdG9rZW47XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZVNhdmVVc2VyUmVzcG9uc2UocmVzcG9uc2VzOiBhbnkpIHtcclxuICAgIGlmICghcmVzcG9uc2VzPy5sZW5ndGgpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgZm9yIChsZXQgbGVuID0gcmVzcG9uc2VzLmxlbmd0aCwgaSA9IGxlbiAtIDE7IGkgPj0gMDsgaS0tKSB7XHJcbiAgICAgIGlmIChyZXNwb25zZXNbaV0gJiYgcmVzcG9uc2VzW2ldLmN1cnJlbnRVcGRhdGVkVXNlcikge1xyXG4gICAgICAgIC8vIHRoaXMuc2V0VXNlcihyZXNwb25zZXNbaV0uY3VycmVudFVwZGF0ZWRVc2VyLCBmYWxzZSwgdGhpcy51c2VyLnRva2VuKTtcclxuICAgICAgICB0aGlzLnVzZXIuaGFzTW9kaWZpZWRDYWNoZSA9IHRydWU7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==