@tuki-io/tuki-widgets 0.0.65 → 0.0.67

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 (233) hide show
  1. package/.editorconfig +16 -16
  2. package/.vscode/extensions.json +4 -4
  3. package/.vscode/launch.json +20 -20
  4. package/.vscode/tasks.json +42 -42
  5. package/README.md +25 -25
  6. package/package.json +1 -1
  7. package/projects/tuki/widgets/README.md +24 -24
  8. package/projects/tuki/widgets/di2mt/public-api.ts +3 -3
  9. package/projects/tuki/widgets/di2mt/widgets/site-upgrade/site-upgrade.module.ts +1 -1
  10. package/projects/tuki/widgets/karma.conf.js +44 -44
  11. package/projects/tuki/widgets/ng-package.json +10 -7
  12. package/projects/tuki/widgets/package.json +1 -1
  13. package/projects/tuki/widgets/src/lib/widgets.component.spec.ts +23 -23
  14. package/projects/tuki/widgets/src/lib/widgets.component.ts +20 -20
  15. package/projects/tuki/widgets/src/lib/widgets.module.ts +16 -16
  16. package/projects/tuki/widgets/src/lib/widgets.service.spec.ts +16 -16
  17. package/projects/tuki/widgets/src/lib/widgets.service.ts +9 -9
  18. package/projects/tuki/widgets/src/public-api.ts +7 -7
  19. package/projects/tuki/widgets/src/test.ts +27 -27
  20. package/projects/tuki/widgets/styles.scss +572 -572
  21. package/projects/tuki/widgets/tsconfig.lib.json +36 -36
  22. package/projects/tuki/widgets/tsconfig.lib.prod.json +10 -10
  23. package/projects/tuki/widgets/tsconfig.spec.json +17 -17
  24. package/projects/tuki/widgets/user-device-manage/ng-package.json +7 -7
  25. package/projects/tuki/widgets/user-device-manage/public-api.ts +8 -8
  26. package/projects/tuki/widgets/user-device-manage/src/app.constants.ts +96 -96
  27. package/projects/tuki/widgets/user-device-manage/src/assets/icons/arrow-left.svg +5 -5
  28. package/projects/tuki/widgets/user-device-manage/src/assets/icons/arrow-right.svg +5 -5
  29. package/projects/tuki/widgets/user-device-manage/src/assets/icons/close_icon_x.svg +3 -3
  30. package/projects/tuki/widgets/user-device-manage/src/assets/icons/delete_icon.svg +5 -5
  31. package/projects/tuki/widgets/user-device-manage/src/assets/icons/dragger-vertical-icon.svg +3 -3
  32. package/projects/tuki/widgets/user-device-manage/src/assets/icons/vartical_divider_icon.svg +3 -3
  33. package/projects/tuki/widgets/user-device-manage/src/classes/device.ts +292 -292
  34. package/projects/tuki/widgets/user-device-manage/src/classes/line-association-interface.ts +50 -50
  35. package/projects/tuki/widgets/user-device-manage/src/classes/line-association.ts +177 -177
  36. package/projects/tuki/widgets/user-device-manage/src/classes/line-call-info-display.ts +21 -21
  37. package/projects/tuki/widgets/user-device-manage/src/classes/line-directory.ts +41 -41
  38. package/projects/tuki/widgets/user-device-manage/src/classes/line.ts +144 -144
  39. package/projects/tuki/widgets/user-device-manage/src/classes/notification.ts +40 -40
  40. package/projects/tuki/widgets/user-device-manage/src/classes/recording-options.ts +6 -6
  41. package/projects/tuki/widgets/user-device-manage/src/classes/simplified-user.ts +169 -169
  42. package/projects/tuki/widgets/user-device-manage/src/classes/site-defaults.ts +167 -167
  43. package/projects/tuki/widgets/user-device-manage/src/classes/translation-pattern.ts +50 -50
  44. package/projects/tuki/widgets/user-device-manage/src/classes/types.ts +19 -19
  45. package/projects/tuki/widgets/user-device-manage/src/classes/user-interface.ts +225 -225
  46. package/projects/tuki/widgets/user-device-manage/src/classes/user.ts +8 -8
  47. package/projects/tuki/widgets/user-device-manage/src/common-functions.ts +16 -16
  48. package/projects/tuki/widgets/user-device-manage/src/confirm-dialog/info-dialog.component.html +14 -14
  49. package/projects/tuki/widgets/user-device-manage/src/confirm-dialog/info-dialog.component.scss +80 -80
  50. package/projects/tuki/widgets/user-device-manage/src/confirm-dialog/info-dialog.component.ts +35 -35
  51. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/associated-line-row/associated-line-row.component.html +21 -21
  52. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/associated-line-row/associated-line-row.component.scss +97 -97
  53. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/associated-line-row/associated-line-row.component.ts +28 -28
  54. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/device-associated-line-details-box/device-associated-line-details-box.component.html +5 -5
  55. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/device-associated-line-details-box/device-associated-line-details-box.component.scss +19 -19
  56. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/device-associated-line-details-box/device-associated-line-details-box.component.ts +13 -13
  57. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/device-associated-line-extension/device-associated-line-extension.component.html +6 -6
  58. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/device-associated-line-extension/device-associated-line-extension.component.scss +4 -4
  59. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/device-associated-line-extension/device-associated-line-extension.component.ts +63 -63
  60. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/device-associated-line.component.html +241 -241
  61. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/device-associated-line.component.scss +500 -500
  62. package/projects/tuki/widgets/user-device-manage/src/device-associated-line/device-associated-line.component.ts +194 -194
  63. package/projects/tuki/widgets/user-device-manage/src/device-list/device-list.component.html +27 -27
  64. package/projects/tuki/widgets/user-device-manage/src/device-list/device-list.component.scss +131 -131
  65. package/projects/tuki/widgets/user-device-manage/src/device-list/device-list.component.ts +25 -25
  66. package/projects/tuki/widgets/user-device-manage/src/device-manage-widget.component.html +209 -209
  67. package/projects/tuki/widgets/user-device-manage/src/device-manage-widget.component.scss +502 -502
  68. package/projects/tuki/widgets/user-device-manage/src/device-manage-widget.component.ts +354 -354
  69. package/projects/tuki/widgets/user-device-manage/src/environments/environment.prod.ts +9 -9
  70. package/projects/tuki/widgets/user-device-manage/src/environments/environment.ts +10 -10
  71. package/projects/tuki/widgets/user-device-manage/src/interseptors/auth.interceptor.ts +35 -35
  72. package/projects/tuki/widgets/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.html +50 -50
  73. package/projects/tuki/widgets/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.scss +8 -8
  74. package/projects/tuki/widgets/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.ts +81 -81
  75. package/projects/tuki/widgets/user-device-manage/src/material.module.ts +87 -87
  76. package/projects/tuki/widgets/user-device-manage/src/notifications/notification.component.html +33 -33
  77. package/projects/tuki/widgets/user-device-manage/src/notifications/notification.component.scss +84 -84
  78. package/projects/tuki/widgets/user-device-manage/src/notifications/notification.component.ts +46 -46
  79. package/projects/tuki/widgets/user-device-manage/src/removeKynFromIBM.service.ts +25 -25
  80. package/projects/tuki/widgets/user-device-manage/src/services/api.service.ts +87 -87
  81. package/projects/tuki/widgets/user-device-manage/src/services/common-functions.ts +17 -17
  82. package/projects/tuki/widgets/user-device-manage/src/services/device.service.ts +95 -95
  83. package/projects/tuki/widgets/user-device-manage/src/services/dns.service.ts +111 -111
  84. package/projects/tuki/widgets/user-device-manage/src/services/line.service.ts +89 -89
  85. package/projects/tuki/widgets/user-device-manage/src/services/notification.service.ts +68 -68
  86. package/projects/tuki/widgets/user-device-manage/src/services/removeKynFromIBM.service.ts +25 -25
  87. package/projects/tuki/widgets/user-device-manage/src/services/site-settings.service.ts +82 -82
  88. package/projects/tuki/widgets/user-device-manage/src/services/sorting-utils.service.ts +203 -203
  89. package/projects/tuki/widgets/user-device-manage/src/services/user.service.ts +283 -283
  90. package/projects/tuki/widgets/user-device-manage/src/services/utils.service.ts +87 -87
  91. package/projects/tuki/widgets/user-device-manage/src/services/validation.service.ts +829 -829
  92. package/projects/tuki/widgets/user-device-manage/src/styles/_variables.scss +90 -90
  93. package/projects/tuki/widgets/user-device-manage/src/styles/form.scss +231 -231
  94. package/projects/tuki/widgets/user-device-manage/src/styles/icons.scss +32 -32
  95. package/projects/tuki/widgets/user-device-manage/src/styles/styles.scss +110 -110
  96. package/projects/tuki/widgets/user-device-manage/src/styles/tables.scss +30 -30
  97. package/projects/tuki/widgets/user-device-manage/src/user-device-manage.module.ts +73 -73
  98. package/projects/tuki/widgets/user-device-manage/src/utils/app-loader/app-loader.component.html +6 -6
  99. package/projects/tuki/widgets/user-device-manage/src/utils/app-loader/app-loader.component.scss +11 -11
  100. package/projects/tuki/widgets/user-device-manage/src/utils/app-loader/app-loader.ts +13 -13
  101. package/projects/tuki/widgets/user-manage/ng-package.json +7 -7
  102. package/projects/tuki/widgets/user-manage/public-api.ts +6 -6
  103. package/projects/tuki/widgets/user-manage/src/app.constants.ts +50 -50
  104. package/projects/tuki/widgets/user-manage/src/assets/icons/arrow-left.svg +5 -5
  105. package/projects/tuki/widgets/user-manage/src/assets/icons/arrow-right.svg +5 -5
  106. package/projects/tuki/widgets/user-manage/src/assets/icons/delete_icon.svg +5 -5
  107. package/projects/tuki/widgets/user-manage/src/assets/icons/dragger-vertical-icon.svg +3 -3
  108. package/projects/tuki/widgets/user-manage/src/assets/icons/vartical_divider_icon.svg +3 -3
  109. package/projects/tuki/widgets/user-manage/src/classes/device.ts +232 -232
  110. package/projects/tuki/widgets/user-manage/src/classes/line-association-interface.ts +43 -43
  111. package/projects/tuki/widgets/user-manage/src/classes/line-association.ts +161 -161
  112. package/projects/tuki/widgets/user-manage/src/classes/line-call-info-display.ts +21 -21
  113. package/projects/tuki/widgets/user-manage/src/classes/line-directory.ts +42 -42
  114. package/projects/tuki/widgets/user-manage/src/classes/line.ts +144 -144
  115. package/projects/tuki/widgets/user-manage/src/classes/notification.ts +39 -39
  116. package/projects/tuki/widgets/user-manage/src/classes/pagination.ts +18 -18
  117. package/projects/tuki/widgets/user-manage/src/classes/recording-options.ts +6 -6
  118. package/projects/tuki/widgets/user-manage/src/classes/simplified-user.ts +165 -165
  119. package/projects/tuki/widgets/user-manage/src/classes/table-data.ts +6 -6
  120. package/projects/tuki/widgets/user-manage/src/classes/translation-pattern.ts +49 -49
  121. package/projects/tuki/widgets/user-manage/src/classes/user-interface.ts +225 -225
  122. package/projects/tuki/widgets/user-manage/src/classes/user-list.ts +42 -42
  123. package/projects/tuki/widgets/user-manage/src/classes/user.ts +8 -8
  124. package/projects/tuki/widgets/user-manage/src/common-functions.ts +16 -16
  125. package/projects/tuki/widgets/user-manage/src/device-list/device-list.component.html +27 -27
  126. package/projects/tuki/widgets/user-manage/src/device-list/device-list.component.scss +131 -131
  127. package/projects/tuki/widgets/user-manage/src/device-list/device-list.component.ts +25 -25
  128. package/projects/tuki/widgets/user-manage/src/environments/environment.prod.ts +9 -9
  129. package/projects/tuki/widgets/user-manage/src/environments/environment.ts +10 -10
  130. package/projects/tuki/widgets/user-manage/src/interseptors/auth.interceptor.ts +35 -35
  131. package/projects/tuki/widgets/user-manage/src/lazy-loading-select/lazy-loading-select.component.html +50 -50
  132. package/projects/tuki/widgets/user-manage/src/lazy-loading-select/lazy-loading-select.component.scss +8 -8
  133. package/projects/tuki/widgets/user-manage/src/lazy-loading-select/lazy-loading-select.component.ts +81 -81
  134. package/projects/tuki/widgets/user-manage/src/material.module.ts +85 -85
  135. package/projects/tuki/widgets/user-manage/src/notifications/notification.component.html +33 -33
  136. package/projects/tuki/widgets/user-manage/src/notifications/notification.component.scss +84 -84
  137. package/projects/tuki/widgets/user-manage/src/notifications/notification.component.ts +46 -46
  138. package/projects/tuki/widgets/user-manage/src/removeKynFromIBM.service.ts +25 -25
  139. package/projects/tuki/widgets/user-manage/src/services/api.service.ts +90 -90
  140. package/projects/tuki/widgets/user-manage/src/services/dns.service.ts +116 -116
  141. package/projects/tuki/widgets/user-manage/src/services/line.service.ts +31 -31
  142. package/projects/tuki/widgets/user-manage/src/services/notification.service.ts +68 -68
  143. package/projects/tuki/widgets/user-manage/src/services/removeKynFromIBM.service.ts +25 -25
  144. package/projects/tuki/widgets/user-manage/src/services/site-settings.service.ts +35 -35
  145. package/projects/tuki/widgets/user-manage/src/services/sorting-utils.service.ts +203 -203
  146. package/projects/tuki/widgets/user-manage/src/services/user.service.ts +242 -242
  147. package/projects/tuki/widgets/user-manage/src/services/users-search.service.ts +59 -59
  148. package/projects/tuki/widgets/user-manage/src/services/utils.service.ts +71 -71
  149. package/projects/tuki/widgets/user-manage/src/styles/_variables.scss +90 -90
  150. package/projects/tuki/widgets/user-manage/src/styles/form.scss +231 -231
  151. package/projects/tuki/widgets/user-manage/src/styles/icons.scss +32 -32
  152. package/projects/tuki/widgets/user-manage/src/styles/styles.scss +110 -110
  153. package/projects/tuki/widgets/user-manage/src/styles/tables.scss +30 -30
  154. package/projects/tuki/widgets/user-manage/src/user-calling/user-calling-extension/user-calling-extension.component.html +10 -10
  155. package/projects/tuki/widgets/user-manage/src/user-calling/user-calling-extension/user-calling-extension.component.scss +429 -429
  156. package/projects/tuki/widgets/user-manage/src/user-calling/user-calling-extension/user-calling-extension.component.ts +63 -63
  157. package/projects/tuki/widgets/user-manage/src/user-calling/user-calling.component.html +32 -32
  158. package/projects/tuki/widgets/user-manage/src/user-calling/user-calling.component.scss +444 -444
  159. package/projects/tuki/widgets/user-manage/src/user-calling/user-calling.component.ts +89 -89
  160. package/projects/tuki/widgets/user-manage/src/user-details/notification.service.ts +68 -68
  161. package/projects/tuki/widgets/user-manage/src/user-info/user-info.component.html +29 -29
  162. package/projects/tuki/widgets/user-manage/src/user-info/user-info.component.scss +64 -64
  163. package/projects/tuki/widgets/user-manage/src/user-info/user-info.component.ts +19 -19
  164. package/projects/tuki/widgets/user-manage/src/user-manage-widget.component.html +290 -290
  165. package/projects/tuki/widgets/user-manage/src/user-manage-widget.component.scss +463 -463
  166. package/projects/tuki/widgets/user-manage/src/user-manage-widget.component.ts +212 -212
  167. package/projects/tuki/widgets/user-manage/src/user-manage.module.ts +63 -63
  168. package/projects/tuki/widgets/user-manage/src/utils/app-loader/app-loader.component.html +6 -6
  169. package/projects/tuki/widgets/user-manage/src/utils/app-loader/app-loader.component.scss +11 -11
  170. package/projects/tuki/widgets/user-manage/src/utils/app-loader/app-loader.ts +13 -13
  171. package/projects/tuki/widgets/user-manage/src/utils/pagination/pagination.component.html +26 -26
  172. package/projects/tuki/widgets/user-manage/src/utils/pagination/pagination.component.scss +41 -41
  173. package/projects/tuki/widgets/user-manage/src/utils/pagination/pagination.component.ts +41 -41
  174. package/projects/tuki/widgets/users-list/ng-package.json +6 -6
  175. package/projects/tuki/widgets/users-list/public-api.ts +8 -8
  176. package/projects/tuki/widgets/users-list/src/app.constants.ts +54 -54
  177. package/projects/tuki/widgets/users-list/src/assets/icons/close_icon_modal.svg +3 -3
  178. package/projects/tuki/widgets/users-list/src/assets/icons/move_user_to_another_location.svg +14 -14
  179. package/projects/tuki/widgets/users-list/src/assets/icons/white-close-icon.svg +3 -3
  180. package/projects/tuki/widgets/users-list/src/classes/app-location.ts +36 -36
  181. package/projects/tuki/widgets/users-list/src/classes/device.ts +225 -225
  182. package/projects/tuki/widgets/users-list/src/classes/line.ts +144 -144
  183. package/projects/tuki/widgets/users-list/src/classes/move-user.ts +225 -225
  184. package/projects/tuki/widgets/users-list/src/classes/notification.ts +38 -38
  185. package/projects/tuki/widgets/users-list/src/classes/pagination.ts +18 -18
  186. package/projects/tuki/widgets/users-list/src/classes/simlified-user.ts +74 -74
  187. package/projects/tuki/widgets/users-list/src/classes/table-data.ts +6 -6
  188. package/projects/tuki/widgets/users-list/src/classes/user-interface.ts +225 -225
  189. package/projects/tuki/widgets/users-list/src/classes/user-list.ts +47 -47
  190. package/projects/tuki/widgets/users-list/src/classes/user.ts +8 -8
  191. package/projects/tuki/widgets/users-list/src/material.module.ts +94 -94
  192. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-stepper/device-move-user/device-move-user-wizard.component.html +37 -37
  193. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-stepper/device-move-user/device-move-user-wizard.component.scss +129 -129
  194. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-stepper/device-move-user/device-move-user-wizard.component.ts +46 -46
  195. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-stepper/device-move-user-tab/devices-move-user-wizard-tab.component.html +31 -31
  196. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-stepper/device-move-user-tab/devices-move-user-wizard-tab.component.scss +20 -20
  197. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-stepper/device-move-user-tab/devices-move-user-wizard-tab.component.ts +26 -26
  198. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-stepper/move-user-stepper.component.html +222 -222
  199. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-stepper/move-user-stepper.component.scss +239 -239
  200. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-stepper/move-user-stepper.component.ts +206 -206
  201. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-wizard.component.html +12 -12
  202. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-wizard.component.scss +41 -41
  203. package/projects/tuki/widgets/users-list/src/move-user-wizard/move-user-wizard.component.ts +36 -36
  204. package/projects/tuki/widgets/users-list/src/services/api-webex.service.ts +14 -14
  205. package/projects/tuki/widgets/users-list/src/services/api.service.ts +90 -90
  206. package/projects/tuki/widgets/users-list/src/services/dns.service.ts +128 -128
  207. package/projects/tuki/widgets/users-list/src/services/events-communication.service.ts +11 -11
  208. package/projects/tuki/widgets/users-list/src/services/move-user.service.ts +59 -59
  209. package/projects/tuki/widgets/users-list/src/services/notification.service.ts +68 -68
  210. package/projects/tuki/widgets/users-list/src/services/removeKynFromIBM.service.ts +25 -25
  211. package/projects/tuki/widgets/users-list/src/services/site-settings.service.ts +26 -26
  212. package/projects/tuki/widgets/users-list/src/services/user.service.ts +159 -159
  213. package/projects/tuki/widgets/users-list/src/services/users-search.service.ts +137 -137
  214. package/projects/tuki/widgets/users-list/src/styles/styles.scss +572 -572
  215. package/projects/tuki/widgets/users-list/src/user-list-confirm-dialog/user-list-confirm-dialog.component.html +15 -15
  216. package/projects/tuki/widgets/users-list/src/user-list-confirm-dialog/user-list-confirm-dialog.component.scss +103 -103
  217. package/projects/tuki/widgets/users-list/src/user-list-confirm-dialog/user-list-confirm-dialog.component.ts +35 -35
  218. package/projects/tuki/widgets/users-list/src/users-list.component.html +86 -86
  219. package/projects/tuki/widgets/users-list/src/users-list.component.scss +572 -572
  220. package/projects/tuki/widgets/users-list/src/users-list.component.ts +312 -312
  221. package/projects/tuki/widgets/users-list/src/users-list.module.ts +63 -63
  222. package/projects/tuki/widgets/users-list/src/utils/app-loader/app-loader.component.html +6 -6
  223. package/projects/tuki/widgets/users-list/src/utils/app-loader/app-loader.component.scss +11 -11
  224. package/projects/tuki/widgets/users-list/src/utils/app-loader/app-loader.ts +13 -13
  225. package/projects/tuki/widgets/users-list/src/utils/common-functions.ts +32 -32
  226. package/projects/tuki/widgets/users-list/src/utils/notifications/notification.component.html +33 -33
  227. package/projects/tuki/widgets/users-list/src/utils/notifications/notification.component.scss +84 -84
  228. package/projects/tuki/widgets/users-list/src/utils/notifications/notification.component.ts +46 -46
  229. package/projects/tuki/widgets/users-list/src/utils/pagination/pagination.component.html +26 -26
  230. package/projects/tuki/widgets/users-list/src/utils/pagination/pagination.component.scss +41 -41
  231. package/projects/tuki/widgets/users-list/src/utils/pagination/pagination.component.ts +41 -41
  232. package/projects/tuki/widgets/users-list/src/utils/utils.service.ts +71 -71
  233. package/tsconfig.json +46 -46
@@ -1,74 +1,74 @@
1
- import { FormBuilder, FormGroup, Validators } from '@angular/forms';
2
- import { BehaviorSubject } from 'rxjs';
3
- import { getSavableData } from '../utils/common-functions';
4
- import { REGEX_PATTERN } from '../app.constants';
5
-
6
- export class SimplifiedUser {
7
- userid!: string;
8
- email!: string;
9
- firstName!: string;
10
- lastName!: string;
11
- token!: string;
12
- viewMode!: string;
13
- hasModifiedCache!: boolean;
14
- newUserId?: string;
15
- editMode!: boolean;
16
- form!: FormGroup;
17
-
18
- constructor(user?: any) {
19
- if (user) {
20
- this.userid = user.userid;
21
- this.email = user.email;
22
- this.firstName = user.firstName;
23
- this.lastName = user.lastName;
24
- this.token = user.token;
25
- }
26
- this.initForm()
27
- }
28
-
29
- initForm() {
30
- const formBuilder = new FormBuilder();
31
- const formSettings = {
32
- userid: [{value: this.userid || '', disabled: true}, [Validators.required, Validators.maxLength(128)]],
33
- email: [{value: this.email || '', disabled: true}, [
34
- Validators.pattern(REGEX_PATTERN.EMAIL),
35
- Validators.required
36
- ]],
37
- firstName: [{value: this.firstName || '', disabled: true}],
38
- lastName: [{value: this.lastName || '', disabled: true}, Validators.required],
39
- };
40
- this.form = formBuilder.group(formSettings);
41
- }
42
-
43
- toggleEditMode() {
44
- this.editMode = !this.editMode;
45
- ['userid', 'email', 'firstName', 'lastName'].forEach(token => {
46
- if (this.editMode) {
47
- this.form.get(token)?.enable();
48
- } else {
49
- this.form.get(token)?.disable();
50
- }
51
- })
52
- }
53
-
54
- getSavableData() {
55
- const excludedFields: string[] = ['form', 'editMode', 'viewMode', 'token', 'hasModifiedCache'];
56
- return getSavableData(this, excludedFields);
57
- }
58
-
59
- equal(userToCompare?: SimplifiedUser): boolean {
60
- if (!userToCompare) {
61
- return false;
62
- }
63
- return JSON.stringify(this.getSavableData()) === JSON.stringify(userToCompare.getSavableData());
64
- }
65
-
66
- }
67
-
68
- export interface SimplifiedUserInterface {
69
- userid: string;
70
- email: string;
71
- firstName: string;
72
- lastName: string;
73
- form?: FormGroup;
74
- }
1
+ import { FormBuilder, FormGroup, Validators } from '@angular/forms';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import { getSavableData } from '../utils/common-functions';
4
+ import { REGEX_PATTERN } from '../app.constants';
5
+
6
+ export class SimplifiedUser {
7
+ userid!: string;
8
+ email!: string;
9
+ firstName!: string;
10
+ lastName!: string;
11
+ token!: string;
12
+ viewMode!: string;
13
+ hasModifiedCache!: boolean;
14
+ newUserId?: string;
15
+ editMode!: boolean;
16
+ form!: FormGroup;
17
+
18
+ constructor(user?: any) {
19
+ if (user) {
20
+ this.userid = user.userid;
21
+ this.email = user.email;
22
+ this.firstName = user.firstName;
23
+ this.lastName = user.lastName;
24
+ this.token = user.token;
25
+ }
26
+ this.initForm()
27
+ }
28
+
29
+ initForm() {
30
+ const formBuilder = new FormBuilder();
31
+ const formSettings = {
32
+ userid: [{value: this.userid || '', disabled: true}, [Validators.required, Validators.maxLength(128)]],
33
+ email: [{value: this.email || '', disabled: true}, [
34
+ Validators.pattern(REGEX_PATTERN.EMAIL),
35
+ Validators.required
36
+ ]],
37
+ firstName: [{value: this.firstName || '', disabled: true}],
38
+ lastName: [{value: this.lastName || '', disabled: true}, Validators.required],
39
+ };
40
+ this.form = formBuilder.group(formSettings);
41
+ }
42
+
43
+ toggleEditMode() {
44
+ this.editMode = !this.editMode;
45
+ ['userid', 'email', 'firstName', 'lastName'].forEach(token => {
46
+ if (this.editMode) {
47
+ this.form.get(token)?.enable();
48
+ } else {
49
+ this.form.get(token)?.disable();
50
+ }
51
+ })
52
+ }
53
+
54
+ getSavableData() {
55
+ const excludedFields: string[] = ['form', 'editMode', 'viewMode', 'token', 'hasModifiedCache'];
56
+ return getSavableData(this, excludedFields);
57
+ }
58
+
59
+ equal(userToCompare?: SimplifiedUser): boolean {
60
+ if (!userToCompare) {
61
+ return false;
62
+ }
63
+ return JSON.stringify(this.getSavableData()) === JSON.stringify(userToCompare.getSavableData());
64
+ }
65
+
66
+ }
67
+
68
+ export interface SimplifiedUserInterface {
69
+ userid: string;
70
+ email: string;
71
+ firstName: string;
72
+ lastName: string;
73
+ form?: FormGroup;
74
+ }
@@ -1,6 +1,6 @@
1
-
2
- export interface TableDataInterface {
3
- total: number;
4
- pageData: Array<any>;
5
- systemSettings?: any;
6
- }
1
+
2
+ export interface TableDataInterface {
3
+ total: number;
4
+ pageData: Array<any>;
5
+ systemSettings?: any;
6
+ }
@@ -1,225 +1,225 @@
1
- /*
2
-
3
- export interface UserInterface {
4
- userid: string;
5
- firstName: string;
6
- lastName: string;
7
- middleName: string;
8
- email: string;
9
- department: string;
10
- telephoneNumber: string;
11
- homeNumber: string;
12
- mobileNumber: string;
13
- pagerNumber: string;
14
- displayName: string;
15
- features: string[];
16
- ldapIntegrated: boolean;
17
- sparkLicenses: any[];
18
- extensionMobility: ExtensionMobilityInterface;
19
- singleNumberReach?: SingleNumberReachInterface;
20
- primaryLineReference: LineDirectoryInterface;
21
- voicemail: VoicemailInterface;
22
- devices: DeviceInterface[];
23
- deviceProfiles: DeviceInterface[];
24
- lines: LineInterface[];
25
- subscribeCss: string;
26
- presenceGroup: string;
27
- allowDeviceControlFromCti: boolean;
28
- enableCrossClusterEm: boolean;
29
- ucServiceProfile: string;
30
- manager: string;
31
- title: string;
32
- associatedPc: string;
33
- userProfile: string;
34
- enableUserToHostConferenceNow: boolean;
35
- attendeesAccessCode: string;
36
- enableMobileVoiceAccess: boolean;
37
- mlppUserIdNumber: string;
38
- mlppPrecedencePattern: string;
39
- userLocale: string;
40
- siteId: number;
41
- siteName: string;
42
- location: string;
43
- lineAppearances: Array<LineAppearance>;
44
- meetMes: Array<MeetMeConferencing>;
45
- homeCluster: boolean;
46
- vmOnlyUser?: boolean;
47
- directoryUri:string;
48
- }
49
-
50
- export interface SingleNumberReachInterface {
51
- remoteDestinationProfileName: string;
52
- remoteDestinations?: RemoteDestinationInterface[];
53
- devicePool?: string;
54
- css?: string;
55
- rerouteCss?: string;
56
- }
57
-
58
- export interface VoicemailInterface {
59
- callHandlerObjectId?: string;
60
- extension: string;
61
- vmUserTemplate?: string;
62
- vmPassword?: VoicemailSettingsInterface;
63
- vmMailbox?: MailboxInterface;
64
- vmUnifiedMessagingAccount?: UnifiedMessagingAccount[];
65
- notificationDevices?: VoicemailNotifications[];
66
- alternateExtensions?: AlternateExtensions[];
67
- language?: LanguageMailbox;
68
- messageActions?: MessageActions;
69
- webAppPassword?: WebAppPassword;
70
- vmPasswordSettings?: VmPasswordSettings;
71
- pkid?: string;
72
- }
73
-
74
- export interface ExtensionMobilityInterface {
75
- deviceType: string;
76
- deviceProfileName: string;
77
- buttonTemplate: string;
78
- services: string[];
79
- protocol: string;
80
- userLocale: string;
81
- lineAssociations: LineAssociationInterface[];
82
- speedDials: SpeedDialInterface[];
83
- }
84
-
85
- export interface SpeedDialInterface {
86
- index: number;
87
- position: number;
88
- destination: string;
89
- label: string;
90
- editMode?: boolean;
91
- }
92
-
93
- export interface DeviceInterface {
94
- name: string;
95
- newName: string;
96
- pkid: string;
97
- entityChangeType: EntityChangeType;
98
- deviceType: string;
99
- protocol: string;
100
- description: string;
101
- buttonTemplate: string;
102
- softkeyTemplate: string;
103
- devicePoolName: string;
104
- location: string;
105
- userLocale: string;
106
- enabledExtensionMobility: boolean;
107
- callingSearchSpaceName: string;
108
- services: string[];
109
- networkLocale: string;
110
- securityProfile: string;
111
- lineAssociations: LineAssociationInterface[];
112
- speedDials: SpeedDialInterface[];
113
- sipProfile: string;
114
- subscribeCallingSearchSpaceName: string;
115
- commonPhoneConfigName: string;
116
- ctiRemoteDevice: boolean;
117
- firstExpansionModule: string;
118
- secondExpansionModule: string;
119
- thirdExpansionModule: string;
120
- builtInBridge: string;
121
- extraOptions?: DeviceExtraOptionsInterface;
122
- formDisabledControls?: string[];
123
- sharedUsers: string[];
124
- busyLampFields: BusyLampFieldsInterface[];
125
- meetMeEnabled: boolean;
126
- deviceKind;
127
- isCtiRoutePoint?: boolean;
128
- cucmId: string;
129
- plarDevice?: boolean;
130
- firmwareVersion;
131
- certificateOperation: string;
132
- authenticationMode: string;
133
- authenticationString?: string;
134
- rsaKeySize?: string;
135
- operationCompletesBy: string;
136
- certificateStatus: string;
137
- day?: string;
138
- month?: string;
139
- year?: string;
140
- hour?: string;
141
- securityProfileUuid?: string;
142
- excludeDeviceExtraOptions?: boolean;
143
- }
144
-
145
- export interface DeviceViewConfiguration {
146
- viewMode: any;
147
- editMode: boolean;
148
- }
149
-
150
- export enum DeviceViewType {
151
- details = 0,
152
- lines = 1,
153
- speedDials = 2,
154
- blf = 2,
155
- }
156
-
157
- export interface LineAssociationInterface {
158
- index: number;
159
- position?: number;
160
- e164Mask: string;
161
- textLabel: string;
162
- displayLabel: string;
163
- displayLabelAscii: string;
164
- directoryNumber: LineDirectoryInterface;
165
- didPattern: TranslationPatternInterface;
166
- mappedDids: Array<string>;
167
- linePkid: string;
168
- maxNumberOfCalls: number;
169
- busyTrigger: number;
170
- recordingOption: RecordingOptions;
171
- recordingProfile: string;
172
- recordingMediaSource: string;
173
- visualMWI: string;
174
- audibleMWI: string;
175
- ringSetting_idle: string;
176
- ringSetting_active: string;
177
- pickupAAS_idle: string;
178
- pickupAAS_active: string;
179
- monitorCSS: string;
180
- logMissedCall: string;
181
- callInfoDisplay: LineCallInfoDisplayInterface;
182
- lineLocalId: string;
183
- sharedUsers: string[];
184
- sharedDevices: string[];
185
- ownerUserId: Array<string>;
186
- associated: boolean;
187
- populateWithDid: boolean;
188
- }
189
-
190
- export interface LineCallInfoDisplayInterface {
191
- callerName: string;
192
- callerNumber: string;
193
- redirectedNumber: string;
194
- dialedNumber: string;
195
- }
196
-
197
- export interface LineDirectoryInterface {
198
- directoryNumber: string;
199
- routePartitionName: string;
200
- pkid: string;
201
- dnType: string;
202
- subType?: string;
203
- templateDirectoryNumber?: string;
204
- }
205
-
206
- export interface TranslationPatternInterface {
207
- pattern: string;
208
- calledPartyTransformationMask: string;
209
- description?: string;
210
- site?: SiteShortDataInterface;
211
- hasMultipleSites?: boolean;
212
- multipleSitesId?: string;
213
- }
214
-
215
- export interface SiteShortDataInterface {
216
- id: number;
217
- name: string;
218
- }
219
-
220
- export enum RecordingOptions {
221
- disabled = 'Call Recording Disabled',
222
- auto_enabled = 'Automatic Call Recording Enabled',
223
- selective_enabled = 'Selective Call Recording Enabled'
224
- }
225
- */
1
+ /*
2
+
3
+ export interface UserInterface {
4
+ userid: string;
5
+ firstName: string;
6
+ lastName: string;
7
+ middleName: string;
8
+ email: string;
9
+ department: string;
10
+ telephoneNumber: string;
11
+ homeNumber: string;
12
+ mobileNumber: string;
13
+ pagerNumber: string;
14
+ displayName: string;
15
+ features: string[];
16
+ ldapIntegrated: boolean;
17
+ sparkLicenses: any[];
18
+ extensionMobility: ExtensionMobilityInterface;
19
+ singleNumberReach?: SingleNumberReachInterface;
20
+ primaryLineReference: LineDirectoryInterface;
21
+ voicemail: VoicemailInterface;
22
+ devices: DeviceInterface[];
23
+ deviceProfiles: DeviceInterface[];
24
+ lines: LineInterface[];
25
+ subscribeCss: string;
26
+ presenceGroup: string;
27
+ allowDeviceControlFromCti: boolean;
28
+ enableCrossClusterEm: boolean;
29
+ ucServiceProfile: string;
30
+ manager: string;
31
+ title: string;
32
+ associatedPc: string;
33
+ userProfile: string;
34
+ enableUserToHostConferenceNow: boolean;
35
+ attendeesAccessCode: string;
36
+ enableMobileVoiceAccess: boolean;
37
+ mlppUserIdNumber: string;
38
+ mlppPrecedencePattern: string;
39
+ userLocale: string;
40
+ siteId: number;
41
+ siteName: string;
42
+ location: string;
43
+ lineAppearances: Array<LineAppearance>;
44
+ meetMes: Array<MeetMeConferencing>;
45
+ homeCluster: boolean;
46
+ vmOnlyUser?: boolean;
47
+ directoryUri:string;
48
+ }
49
+
50
+ export interface SingleNumberReachInterface {
51
+ remoteDestinationProfileName: string;
52
+ remoteDestinations?: RemoteDestinationInterface[];
53
+ devicePool?: string;
54
+ css?: string;
55
+ rerouteCss?: string;
56
+ }
57
+
58
+ export interface VoicemailInterface {
59
+ callHandlerObjectId?: string;
60
+ extension: string;
61
+ vmUserTemplate?: string;
62
+ vmPassword?: VoicemailSettingsInterface;
63
+ vmMailbox?: MailboxInterface;
64
+ vmUnifiedMessagingAccount?: UnifiedMessagingAccount[];
65
+ notificationDevices?: VoicemailNotifications[];
66
+ alternateExtensions?: AlternateExtensions[];
67
+ language?: LanguageMailbox;
68
+ messageActions?: MessageActions;
69
+ webAppPassword?: WebAppPassword;
70
+ vmPasswordSettings?: VmPasswordSettings;
71
+ pkid?: string;
72
+ }
73
+
74
+ export interface ExtensionMobilityInterface {
75
+ deviceType: string;
76
+ deviceProfileName: string;
77
+ buttonTemplate: string;
78
+ services: string[];
79
+ protocol: string;
80
+ userLocale: string;
81
+ lineAssociations: LineAssociationInterface[];
82
+ speedDials: SpeedDialInterface[];
83
+ }
84
+
85
+ export interface SpeedDialInterface {
86
+ index: number;
87
+ position: number;
88
+ destination: string;
89
+ label: string;
90
+ editMode?: boolean;
91
+ }
92
+
93
+ export interface DeviceInterface {
94
+ name: string;
95
+ newName: string;
96
+ pkid: string;
97
+ entityChangeType: EntityChangeType;
98
+ deviceType: string;
99
+ protocol: string;
100
+ description: string;
101
+ buttonTemplate: string;
102
+ softkeyTemplate: string;
103
+ devicePoolName: string;
104
+ location: string;
105
+ userLocale: string;
106
+ enabledExtensionMobility: boolean;
107
+ callingSearchSpaceName: string;
108
+ services: string[];
109
+ networkLocale: string;
110
+ securityProfile: string;
111
+ lineAssociations: LineAssociationInterface[];
112
+ speedDials: SpeedDialInterface[];
113
+ sipProfile: string;
114
+ subscribeCallingSearchSpaceName: string;
115
+ commonPhoneConfigName: string;
116
+ ctiRemoteDevice: boolean;
117
+ firstExpansionModule: string;
118
+ secondExpansionModule: string;
119
+ thirdExpansionModule: string;
120
+ builtInBridge: string;
121
+ extraOptions?: DeviceExtraOptionsInterface;
122
+ formDisabledControls?: string[];
123
+ sharedUsers: string[];
124
+ busyLampFields: BusyLampFieldsInterface[];
125
+ meetMeEnabled: boolean;
126
+ deviceKind;
127
+ isCtiRoutePoint?: boolean;
128
+ cucmId: string;
129
+ plarDevice?: boolean;
130
+ firmwareVersion;
131
+ certificateOperation: string;
132
+ authenticationMode: string;
133
+ authenticationString?: string;
134
+ rsaKeySize?: string;
135
+ operationCompletesBy: string;
136
+ certificateStatus: string;
137
+ day?: string;
138
+ month?: string;
139
+ year?: string;
140
+ hour?: string;
141
+ securityProfileUuid?: string;
142
+ excludeDeviceExtraOptions?: boolean;
143
+ }
144
+
145
+ export interface DeviceViewConfiguration {
146
+ viewMode: any;
147
+ editMode: boolean;
148
+ }
149
+
150
+ export enum DeviceViewType {
151
+ details = 0,
152
+ lines = 1,
153
+ speedDials = 2,
154
+ blf = 2,
155
+ }
156
+
157
+ export interface LineAssociationInterface {
158
+ index: number;
159
+ position?: number;
160
+ e164Mask: string;
161
+ textLabel: string;
162
+ displayLabel: string;
163
+ displayLabelAscii: string;
164
+ directoryNumber: LineDirectoryInterface;
165
+ didPattern: TranslationPatternInterface;
166
+ mappedDids: Array<string>;
167
+ linePkid: string;
168
+ maxNumberOfCalls: number;
169
+ busyTrigger: number;
170
+ recordingOption: RecordingOptions;
171
+ recordingProfile: string;
172
+ recordingMediaSource: string;
173
+ visualMWI: string;
174
+ audibleMWI: string;
175
+ ringSetting_idle: string;
176
+ ringSetting_active: string;
177
+ pickupAAS_idle: string;
178
+ pickupAAS_active: string;
179
+ monitorCSS: string;
180
+ logMissedCall: string;
181
+ callInfoDisplay: LineCallInfoDisplayInterface;
182
+ lineLocalId: string;
183
+ sharedUsers: string[];
184
+ sharedDevices: string[];
185
+ ownerUserId: Array<string>;
186
+ associated: boolean;
187
+ populateWithDid: boolean;
188
+ }
189
+
190
+ export interface LineCallInfoDisplayInterface {
191
+ callerName: string;
192
+ callerNumber: string;
193
+ redirectedNumber: string;
194
+ dialedNumber: string;
195
+ }
196
+
197
+ export interface LineDirectoryInterface {
198
+ directoryNumber: string;
199
+ routePartitionName: string;
200
+ pkid: string;
201
+ dnType: string;
202
+ subType?: string;
203
+ templateDirectoryNumber?: string;
204
+ }
205
+
206
+ export interface TranslationPatternInterface {
207
+ pattern: string;
208
+ calledPartyTransformationMask: string;
209
+ description?: string;
210
+ site?: SiteShortDataInterface;
211
+ hasMultipleSites?: boolean;
212
+ multipleSitesId?: string;
213
+ }
214
+
215
+ export interface SiteShortDataInterface {
216
+ id: number;
217
+ name: string;
218
+ }
219
+
220
+ export enum RecordingOptions {
221
+ disabled = 'Call Recording Disabled',
222
+ auto_enabled = 'Automatic Call Recording Enabled',
223
+ selective_enabled = 'Selective Call Recording Enabled'
224
+ }
225
+ */